@charset "UTF-8";
@media screen and (max-width: 768px) {
  .is-pc {
    display: none;
  }
}

.is-sp {
  display: none;
}


/*PCで無効*/
.pc_hid{
    display: block;
}

/*スマートフォンで有効*/
@media screen and (max-width:768px) {
    .pc_hid{
        display: none;
    }
}

@media screen and (max-width: 768px) {
  .is-sp {
    display: block;
  }
}

.sdgs {
  margin-top: 50px;
  margin-top: 3.125rem;
}

.sdgs__wrapper {
  background-color: #fff;
  border-radius: 15px;
  padding: 100px 139px 100px 150px;
  padding: 6.25rem 8.6875rem 6.25rem 9.375rem;
}

@media screen and (max-width: 1024px) {
  .sdgs__wrapper {
    padding: 1.5rem;
  }
}

.sdgs-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media screen and (max-width: 768px) {
  .sdgs-head {
    display: block;
  }
}

.sdgs-head__img {
  max-width: 474px;
  max-width: 29.625rem;
  margin-right: 2em;
}

@media screen and (max-width: 768px) {
  .sdgs-head__img {
    margin-left: auto;
    margin-right: auto;
  }
}

.sdgs-head__lead {
  font-size: 40px;
  font-size: 2.5rem;
  font-weight: bold;
  letter-spacing: 0.01em;
  color: #152560;
}

@media screen and (max-width: 768px) {
  .sdgs-head__lead {
    font-size: 1.75rem;
  }
}

@media screen and (max-width: 375px) {
  .sdgs-head__lead {
    font-size: 1.5rem;
  }
}

.sdgs-head__text {
  font-size: 18px;
  font-size: 1.125rem;
  letter-spacing: 0.05em;
  line-height: 1.7;
  margin-top: 30px;
  margin-top: 1.875rem;
}

@media screen and (max-width: 768px) {
  .sdgs-head__text {
    margin-top: 0.75rem;
  }
}

.sdgs-content {
  margin-top: 90px;
  margin-top: 5.625rem;
}

@media screen and (max-width: 768px) {
  .sdgs-content {
    margin-top: 3.75rem;
  }
}

@media screen and (max-width: 375px) {
  .sdgs-content {
    margin-top: 2.5rem;
  }
}

.sdgs-content__title {
  font-size: 1.875rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: #152560;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .sdgs-content__title {
    font-size: 1.5rem;
  }
}

@media screen and (max-width: 375px) {
  .sdgs-content__title {
    font-size: 1.25rem;
  }
}

.sdgs-content__lists {
  margin-top: 55px;
  margin-top: 3.4375rem;
}

@media screen and (max-width: 768px) {
  .sdgs-content__lists {
    margin-top: 1.25rem;
  }
}

.sdgs-content__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-color: rgb(243 255 249 / 60%);
  justify-content: space-around;

}

@media screen and (max-width: 768px) {
  .sdgs-content__list {
    display: block;
  }
}

.sdgs-content__list:not(:first-child) {
  margin-top: 20px;
  margin-top: 3.45rem;
}

.sdgs-content__img {
  width: 130px;
  width: 8.125rem;
  height: 130px;
  height: 8.125rem;
  position: relative;
  margin-right: 40px;
  margin-right: 2.5rem;
  min-width: 100px;
  min-width: 6.25rem;
}

@media screen and (max-width: 375px) {
  .sdgs-content__img {
    margin-right: auto;
  }
}

.sdgs-content__img img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  -o-object-position: center;
     object-position: center;
  -o-object-fit: cover;
     object-fit: cover;
}

.sdgs-content__texts {
  max-width: 520px;
  max-width: 59.5rem;
  width: 100%;
  padding: 30px;
}

.sdgs_aa{
  display:flex;
  justify-content: center;
  gap: 30px;
}


@media screen and (max-width: 768px) {
  .sdgs-content__texts {
    max-width: 95%;
    margin-top: 0.625rem;
    padding: 20px;
  }
 .sdgs_aa{
    display:inline-block;
  }
}

.sdgs-content__lead {
  font-size: 1.4rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: #152560;
  padding-top: 30px;
  padding-bottom:15px;
}

.sdgs-content__text {
  font-size: 0.95rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
  padding-left: 1.75rem;
  position: relative;
}

.sdgs-content__text::before {
  content: "";
  display: inline-block;
  width: 13px;
  width: 0.8125rem;
  height: 13px;
  height: 0.8125rem;
  background-color: #333;
  position: absolute;
  top: 3px;
  left: 0;
}

.sdgs-content__text--7:before {
  /*background-color: #FABD00;*/
  background-color: #c9c9c9;
}

.sdgs-content__text--8::before {
  /*background-color: #970A31;*/
  background-color: #c9c9c9;

}

.sdgs-content__text--11::before {
  /*background-color: #F5A20B;*/
  background-color: #c9c9c9;
}

.sdgs-content__text--12::before {
  background-color: #D39206;
}

.sdgs-content__text:first-child {
  margin-top: 15px;
  margin-top: 0.9375rem;
}

.sdgs-content__text:not(:first-child) {
  margin-top: 13px;
  margin-top: 0.8125rem;
}

.sec-title {
  color: #152560;
  font-weight: bold;
  position: relative;
  display: inline-block;
  letter-spacing: 0.05em;
}

/*
.sec-title::before {
  position: absolute;
  left: 13%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  color: #D54A52;
  font-weight: bold;
  font-family: "EB Garamond", serif;
  letter-spacing: 0.05em;
  display: block;
}
*/

.sec-title2 {
  color: #152560;
  font-weight: bold;
  position: relative;
  display: inline-block;
  letter-spacing: 0.05em;
}

/*
.sec-title2::before {
  position: absolute;
  left: 36%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  color: #D54A52;
  font-weight: bold;
  font-family: "EB Garamond", serif;
  letter-spacing: 0.05em;
  display: block;
}
*/
@media screen and (max-width: 768px) {
 .sec-title2 {
  color: #152560;
  font-weight: bold;
  position: relative;
  display: inline-block;
  letter-spacing: 0.05em;
 }

/*
.sec-title2::before {
  position: absolute;
  left: 80%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  color: #D54A52;
  font-weight: bold;
  font-family: "EB Garamond", serif;
  letter-spacing: 0.05em;
  display: block;
  }
*/
	.sec-title2 {
	    font-size: 2.375rem;
	}


}

.hamburger {
  width: 60px;
  width: 4.75rem;
  height: 50px;
  height: 2.125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.hamburger-line {
  width: 100%;
  height: 4px;
  height: 0.25rem;
  background-color: #152560;
  position: relative;
}

.hamburger-line::before,
.hamburger-line::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background-color: #152560;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  left: 0;
}

.hamburger-line::before {
  -webkit-transform: translateY(-14px);
          transform: translateY(-14px);
}

.hamburger-line::after {
  -webkit-transform: translateY(14px);
          transform: translateY(14px);
}

.hamburger-line.open {
  background-color: transparent;
}

.hamburger-line.open:before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.hamburger-line.open::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.sp-nav {
  position: fixed;
  width: 100%;
  height: 100vh;
  background-color: rgba(255, 255, 255, .8);
  left: 100%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  z-index: 50;
}

.sp-nav.open {
  left: 0;
}

.sp-nav__lists {
  padding-top: 30%;
  text-align: center;
}

.sp-nav__list:not(:first-child) {
  margin-top: 30px;
  margin-top: 1.875rem;
}

.sp-nav__link {
  font-size: 28px;
  font-size: 1.75rem;
  font-weight: bold;
  color: #152560;
  display: block;
}

.qualityMainTitle {
	margin: 0 0 20px;
	font-size: 21px;
	font-weight: 600;
	line-height: 1.6;
}

.qualitySubSection {
	margin-top: 26px;
}

.qualitySubTitle {
	display: flex;
	align-items: center;
	gap: 12px;

	margin: 0 0 12px;
	padding-bottom: 8px;

	border-bottom: 1px solid #d9dfe8;

	font-size: 17px;
	font-weight: 600;
	line-height: 1.6;
}

.qualitySubTitle__num {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	color: #1e4e91;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
}

.qualitySubSection p {
	margin: 0 0 8px;
	line-height: 1.9;
}


/* 具体的な対策 */
.qualityMeasures {
	margin-top: 18px;
	padding: 16px 20px;

	background: #f6f8fb;
	border-left: 3px solid #1e4e91;
}

.qualityMeasures__title {
	margin: 0 0 8px !important;
	color: #1e4e91;
	font-weight: 600;
}

.qualityMeasures ul {
	margin: 0;
	padding-left: 1.5em;
	list-style: disc;
}

.qualityMeasures li {
	padding-left: .2em;
	line-height: 1.9;
	margin-bottom: 5px
}

.qualityMeasures li::marker {
	color: #1e4e91;
	font-size: .75em;
}
.qualityMeasures li:last-child {
	margin-bottom: 0;
}