.section_foundation {
  letter-spacing: 0.05em;
  color: #1a1a1a;
}
.section_foundation h2, .section_foundation p {
  margin: 0;
}
.section_foundation img {
  display: block;
  width: 100%;
}
.section_foundation strong {
  font-weight: 700;
}
.section_foundation .fs80p {
  font-size: 80%;
}
@media screen and (max-width: 1023px) {
  .section_foundation .pc {
    display: none !important;
  }
}
@media screen and (min-width: 1024px) {
  .section_foundation .sp {
    display: none !important;
  }
}
@media screen and (min-width: 1024px) {
  .section_foundation {
    width: 100%;
    margin: 0 auto;
    margin-top: calc(clamp(0px, 4.8177083333vw, 85.5625px) * 1);
  }
}
@media screen and (max-width: 1023px) {
  .section_foundation {
    margin-block: calc(clamp(0px, 11.9111111111vw, 84.5688888886px) * 1);
  }
}
.section_foundation .foundation {
  width: 100%;
  position: relative;
}
@media screen and (min-width: 1024px) {
  .section_foundation .foundation {
    width: calc(clamp(0px, 85.5625vw, 1519.59px) * 1);
    margin-inline: auto;
  }
}
@media screen and (max-width: 1023px) {
  .section_foundation .foundation {
    padding-inline: calc(clamp(0px, 4.7644444444vw, 33.8275555554px) * 1);
  }
}
@media screen and (min-width: 1024px) {
  .section_foundation .foundation .foundation__bg {
    width: 100%;
  }
}
@media screen and (min-width: 1024px) {
  .section_foundation .foundation .foundation__content {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    padding-left: calc(clamp(0px, 5.05859375vw, 89.840625px) * 1);
    display: flex;
    align-items: center;
  }
}
@media screen and (max-width: 1023px) {
  .section_foundation .foundation .foundation__content {
    padding-top: calc(clamp(0px, 3.0968888889vw, 21.987911111px) * 1);
  }
}
.section_foundation .foundation .foundation__title {
  width: 100%;
}
@media screen and (min-width: 1024px) {
  .section_foundation .foundation .foundation__title {
    font-size: calc(clamp(0px, 2.3125vw, 41.07px) * 1);
    line-height: 1.3125;
  }
}
@media screen and (max-width: 1023px) {
  .section_foundation .foundation .foundation__title {
    font-size: calc(clamp(0px, 5.7173333333vw, 40.5930666665px) * 1);
    line-height: 1.3125;
  }
}
.section_foundation .foundation .foundation__subTitle {
  width: 100%;
}
@media screen and (min-width: 1024px) {
  .section_foundation .foundation .foundation__subTitle {
    font-size: calc(clamp(0px, 1.3489583333vw, 23.9575px) * 1);
    line-height: 1.7142857143;
    margin-top: calc(clamp(0px, 0.4817708333vw, 8.55625px) * 1);
  }
}
@media screen and (max-width: 1023px) {
  .section_foundation .foundation .foundation__subTitle {
    margin-top: calc(clamp(0px, 1.9057777778vw, 13.5310222222px) * 1);
    font-size: calc(clamp(0px, 3.5733333333vw, 25.3706666666px) * 1);
    line-height: 1.5;
  }
}
@media screen and (min-width: 1024px) {
  .section_foundation .foundation .foundation__lead {
    margin-top: calc(clamp(0px, 0.9635416667vw, 17.1125px) * 1);
    font-size: calc(clamp(0px, 1.01171875vw, 17.968125px) * 1);
    line-height: 1.7;
  }
}
@media screen and (max-width: 1023px) {
  .section_foundation .foundation .foundation__lead {
    margin-top: calc(clamp(0px, 2.144vw, 15.2223999999px) * 1);
    font-size: calc(clamp(0px, 3.0968888889vw, 21.987911111px) * 1);
    line-height: 1.7;
  }
}
@media screen and (min-width: 1024px) {
  .section_foundation .foundation .foundation__list {
    width: calc(clamp(0px, 24.0885416667vw, 427.8125px) * 1);
    display: flex;
    flex-flow: row wrap;
    margin-top: calc(clamp(0px, 1.30078125vw, 23.101875px) * 1);
    gap: calc(clamp(0px, 0.7708333333vw, 13.69px) * 1);
  }
}
@media screen and (max-width: 1023px) {
  .section_foundation .foundation .foundation__list {
    display: flex;
    flex-flow: row wrap;
    margin-top: calc(clamp(0px, 3.6924444444vw, 26.2163555555px) * 1);
    gap: calc(clamp(0px, 1.7866666667vw, 12.6853333333px) * 1);
  }
}
.section_foundation .foundation .foundation__list .foundation__item {
  border: 1px solid #1A1A1A;
}
@media screen and (min-width: 1024px) {
  .section_foundation .foundation .foundation__list .foundation__item {
    border-width: calc(clamp(0px, 0.0481770833vw, 0.855625px) * 1);
    padding-block: calc(clamp(0px, 0.0963541667vw, 1.71125px) * 1) calc(clamp(0px, 0.0481770833vw, 0.855625px) * 1);
    padding-inline: calc(clamp(0px, 0.4817708333vw, 8.55625px) * 1);
    font-size: calc(clamp(0px, 0.7708333333vw, 13.69px) * 1);
  }
}
@media screen and (max-width: 1023px) {
  .section_foundation .foundation .foundation__list .foundation__item {
    border-width: calc(clamp(0px, 0.2382222222vw, 1.6913777778px) * 1);
    font-size: calc(clamp(0px, 2.6204444444vw, 18.6051555555px) * 1);
    padding-block: calc(clamp(0px, 0.3573333333vw, 2.5370666667px) * 1) calc(clamp(0px, 0.1191111111vw, 0.8456888889px) * 1);
    padding-inline: calc(clamp(0px, 1.1911111111vw, 8.4568888889px) * 1);
    text-align: center;
    letter-spacing: 0.01em;
  }
}
@media screen and (min-width: 1024px) {
  .section_foundation .foundation .foundation__product-title {
    font-size: calc(clamp(0px, 1.01171875vw, 17.968125px) * 1);
    line-height: 1.7;
    margin-top: calc(clamp(0px, 1.15625vw, 20.535px) * 1);
  }
}
@media screen and (max-width: 1023px) {
  .section_foundation .foundation .foundation__product-title {
    font-size: calc(clamp(0px, 3.0968888889vw, 21.987911111px) * 1);
    line-height: 1.55;
    margin-top: calc(clamp(0px, 3.3351111111vw, 23.6792888888px) * 1);
    letter-spacing: 0.01em;
  }
}
.section_foundation .foundation .foundation__product-title--min {
  font-size: 80%;
}
.section_foundation .foundation .foundation__cta {
  color: #fff;
  background-color: #000;
}
@media screen and (min-width: 1024px) {
  .section_foundation .foundation .foundation__cta {
    margin-top: calc(clamp(0px, 1.2044270833vw, 21.390625px) * 1);
    width: calc(clamp(0px, 10.5989583333vw, 188.2375px) * 1);
    height: calc(clamp(0px, 2.16796875vw, 38.503125px) * 1);
  }
  .section_foundation .foundation .foundation__cta:hover {
    background-color: #262626;
  }
}
@media screen and (max-width: 1023px) {
  .section_foundation .foundation .foundation__cta {
    width: 100%;
    height: calc(clamp(0px, 10.72vw, 76.1119999997px) * 1);
    margin-top: calc(clamp(0px, 3.8115555555vw, 27.0620444443px) * 1);
  }
}
.section_foundation .foundation .foundation__cta a {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 1024px) {
  .section_foundation .foundation .foundation__cta a {
    font-size: calc(clamp(0px, 0.8190104167vw, 14.545625px) * 1);
  }
}
@media screen and (max-width: 1023px) {
  .section_foundation .foundation .foundation__cta a {
    font-size: calc(clamp(0px, 3.3351111111vw, 23.6792888888px) * 1);
  }
}