/* ---------------------
  common
--------------------- */
.fwsb {
  font-weight: 600;
}

.lh-1_75 {
  line-height: 1.75;
}

.f30 {
  font-size: 3rem;
}
@media screen and (max-width: 600px) {
  .f30 {
    font-size: 6vw;
  }
}

.fc-blue {
  color: #01184d;
}

/* ---------------------
  sustainbility
--------------------- */
.sus-intro .inner {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-column-gap: 6rem;
  grid-row-gap: 3rem;
}
@media screen and (max-width: 1200px) {
  .sus-intro .inner {
    grid-column-gap: 3rem;
  }
}
@media screen and (max-width: 834px) {
  .sus-intro .inner {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 500px) {
  .sus-intro .inner {
    grid-template-columns: repeat(1, 1fr);
  }
}

.sus-link {
  display: block;
}
.sus-link span {
  display: block;
}
.sus-link .f32 {
  margin: 2rem 0 1rem;
}
@media screen and (max-width: 834px) {
  .sus-link .f32 {
    margin: 1rem 0;
  }
}
@media screen and (max-width: 450px) {
  .sus-link .f32 {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 450px) {
  .sus-link__img {
    width: 100%;
    aspect-ratio: 4/3;
  }
  .sus-link__img img {
    width: 100%;
    aspect-ratio: 4/3;
    object-fit: cover;
    object-position: center center;
  }
}