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

/* ===============================================================
 sustinability_actions
===============================================================*/
@media screen and (max-width: 447px) {
  .under-fv__ttl--ja {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
  }
}

.c-ssa__ttl {
  font-size: var(--f42);
}
@media screen and (max-width: 834px) {
  .c-ssa__ttl {
    width: 115%;
    font-size: clamp(2.5rem, 2.6vw, 4.2rem);
  }
}

.ssa-intro__cont {
  max-width: 60rem;
  margin: 0 0 0 auto;
}
.ssa-intro__cont .txt {
  margin: 3rem 0 5rem;
}
@media screen and (max-width: 834px) {
  .ssa-intro__cont .txt {
    margin: 2rem 0 3rem;
  }
}

.c-under__fv {
  margin-top: 9rem;
}
@media screen and (max-width: 834px) {
  .c-under__fv {
    margin-top: 5rem;
  }
}
.c-under__fv-bg {
  background-image: url(../img/ssa/para-bg.webp);
}
@media screen and (min-width: 835px) {
  .c-under__fv-bg {
    top: 0;
    background-size: 100%;
  }
}

.ssa-main {
  margin-top: 15rem;
}
@media screen and (max-width: 834px) {
  .ssa-main {
    margin-top: 5rem;
  }
}
.ssa-main .inner--1500 {
  padding-top: 15rem;
  border-top: 1px solid rgba(0, 0, 0, 0.4);
}
@media screen and (max-width: 834px) {
  .ssa-main .inner--1500 {
    padding-top: 5rem;
  }
}
.ssa-main__flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 3rem;
}
@media screen and (max-width: 834px) {
  .ssa-main__flex {
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2rem;
  }
}
.ssa-main__flex .sec__ttl--square {
  min-width: fit-content;
}
.ssa-main__cont {
  max-width: 98rem;
}
.ssa-main__cont .c-ssa__ttl {
  margin-bottom: 5rem;
}
@media screen and (max-width: 834px) {
  .ssa-main__cont .c-ssa__ttl {
    margin-bottom: 2rem;
  }
}
.ssa-main__img {
  display: block;
  margin-top: 6rem;
}
@media screen and (max-width: 834px) {
  .ssa-main__img {
    margin-top: 3rem;
  }
}
.ssa-main__list {
  margin-top: 9rem;
}
@media screen and (max-width: 834px) {
  .ssa-main__list {
    margin-top: 5rem;
  }
}
.ssa-main__item {
  padding-top: 4rem;
  border-top: 1px solid #ececec;
}
@media screen and (max-width: 834px) {
  .ssa-main__item {
    padding-top: 2rem;
  }
}
.ssa-main__item:first-of-type .ssa-main__hg-txt {
  background-color: #1ab4c2;
}
.ssa-main__item:nth-of-type(2) .ssa-main__hg-txt {
  background-color: #e87c41;
}
.ssa-main__item:last-of-type .ssa-main__hg-txt {
  background-color: #2ba972;
}
.ssa-main__item:not(:first-of-type) {
  margin-top: 9rem;
}
@media screen and (max-width: 834px) {
  .ssa-main__item:not(:first-of-type) {
    margin-top: 5rem;
  }
}
.ssa-main__hg {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1rem;
}
.ssa-main__hg-txt {
  width: 5.3rem;
  line-height: 2.8rem;
  font-size: var(--f14);
  color: #fff;
  text-align: center;
  font-weight: 500;
  border-radius: 100vmax;
  -webkit-border-radius: 100vmax;
}
.ssa-main__hg-ttl {
  font-size: var(--f42);
  font-weight: 500;
  font-family: "Albert Sans", sans-serif;
}
.ssa-main__fig {
  margin-top: 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 3rem;
}
@media screen and (max-width: 600px) {
  .ssa-main__fig {
    margin-top: 2rem;
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2rem;
  }
}
.ssa-main__fig-img {
  display: block;
  max-width: 60rem;
}
.ssa-main__fig .txt {
  max-width: 30rem;
}
@media screen and (max-width: 600px) {
  .ssa-main__fig .txt {
    max-width: 100%;
  }
}
.ssa-main__dl {
  margin-top: 6rem;
  padding-top: 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 3rem;
  border-top: 1px dashed #dedede;
}
@media screen and (max-width: 600px) {
  .ssa-main__dl {
    padding-top: 2rem;
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2rem;
  }
}
@media screen and (max-width: 834px) {
  .ssa-main__dl {
    margin-top: 3rem;
  }
}
.ssa-main__dt {
  min-width: fit-content;
  font-size: var(--f24);
  font-weight: 500;
}
.ssa-main__dd {
  max-width: 60rem;
  width: 100%;
}
.ssa-main__dtl {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 17%;
}
@media screen and (max-width: 834px) {
  .ssa-main__dtl {
    gap: 3rem;
  }
}
@media screen and (max-width: 450px) {
  .ssa-main__dtl {
    gap: 2rem;
  }
}
.ssa-main__dtl:not(:first-child) {
  margin-top: 3rem;
  padding-top: 3rem;
  border-top: 1px solid #ececec;
}
@media screen and (max-width: 600px) {
  .ssa-main__dtl:not(:first-child) {
    margin-top: 2rem;
    padding-top: 2rem;
  }
}
.ssa-main__dtl-dt {
  min-width: 8em;
  color: #004fa4;
  font-weight: 500;
  font-size: var(--f16);
}
.ssa-main__dtl-dd:has(img) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.4rem;
}
@media screen and (max-width: 450px) {
  .ssa-main__dtl-dd:has(img) {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.ssa-main__dtl-dd img {
  width: 6rem;
}