@charset "UTF-8";
/* ===============================================
# ブラウザ幅でフォントサイズを変える関数
=============================================== */
/* ===============================================
# remのclamp
=============================================== */
/* ===============================================
# 調整
=============================================== */
.l-features-intro__img {
  margin: 68px auto 0;
  width: 88.3333333333%;
}
@media (max-width: 767px) {
  .l-features-intro__img {
    margin: 50px auto 0;
    width: 100%;
  }
}
.l-features-intro__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1696/500;
}
@media (max-width: 767px) {
  .l-features-intro__img img {
    aspect-ratio: 375/250;
  }
}

.l-strong {
  counter-reset: number;
  position: relative;
  z-index: 0;
  padding: max(8.3333333333vw, 120px) 0;
}
@media (max-width: 767px) {
  .l-strong {
    padding: 50px 0 60px;
  }
}
.l-strong.--sns.--bgColor {
  padding-bottom: 0;
}
.l-strong.--sns::before {
  content: "";
  display: block;
  width: 100%;
  height: 550px;
  background: #fff;
  position: absolute;
  top: auto;
  bottom: 0;
  left: 0;
  right: 0;
}
@media (min-width: 768px) {
  .l-strong .c-sec-h2 {
    margin-bottom: 1.0416666667em;
  }
}
.l-strong .strong-box {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-top: 68px;
}
@media (max-width: 767px) {
  .l-strong .strong-box {
    margin-top: 40px;
  }
}
.l-strong .strong-box:not(:first-of-type) {
  margin-top: 60px;
}
@media (max-width: 767px) {
  .l-strong .strong-box:not(:first-of-type) {
    margin-top: 40px;
  }
}
@media (max-width: 767px) {
  .l-strong .strong-box .c-sec-h3 {
    margin-bottom: 1.0833333333em;
  }
}
.l-strong .strong-box__img {
  width: 31.25%;
}
@media (max-width: 767px) {
  .l-strong .strong-box__img {
    width: 100%;
  }
}
.l-strong .strong-box__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 350/250;
}
.l-strong .strong-box__text {
  width: 68.75%;
  padding-left: 3.125vw;
}
@media (max-width: 767px) {
  .l-strong .strong-box__text {
    width: 100%;
    padding-left: 0;
    margin-top: 30px;
  }
}
.l-strong .strong-box__text p:not(:first-of-type) {
  margin-top: 1em;
}

.l-thought {
  counter-reset: number2;
  margin-bottom: max(8.3333333333vw, 120px);
}
@media (max-width: 767px) {
  .l-thought {
    margin-bottom: 50px;
  }
}
@media (min-width: 768px) {
  .l-thought .c-sec-h2 {
    margin-bottom: 1.0416666667em;
  }
}
.l-thought__wrap {
  padding: max(6.25vw, 90px) 5% max(6.9791666667vw, 100px);
  background: #F2F4F8;
  margin: auto;
  width: 88.3333333333%;
}
@media (max-width: 767px) {
  .l-thought__wrap {
    padding: 40px 0 40px;
  }
}
.l-thought .thought-box {
  margin-top: max(5.7291666667vw, 90px);
}
@media (max-width: 767px) {
  .l-thought .thought-box {
    margin-top: 40px;
  }
}
.l-thought .thought-box__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.l-thought .thought-box__item:not(:first-of-type) {
  margin-top: max(4.1666666667vw, 60px);
}
@media (max-width: 767px) {
  .l-thought .thought-box__item:not(:first-of-type) {
    margin-top: 30px;
  }
}
.l-thought .thought-box__ttl {
  width: 32.6785714286%;
}
@media (max-width: 767px) {
  .l-thought .thought-box__ttl {
    width: 100%;
  }
}
.l-thought .thought-box__text {
  width: 67.3214285714%;
}
@media (max-width: 767px) {
  .l-thought .thought-box__text {
    width: 100%;
  }
}
.l-thought .thought-box__h3 {
  position: relative;
  font-size: clamp(2.4rem, 2.0497803807vw, 3.2rem);
  line-height: 1.5;
  font-weight: bold;
}
@media (max-width: 767px) {
  .l-thought .thought-box__h3 {
    margin-bottom: 0.9090909091em;
    font-size: 2.2rem;
  }
}
.l-thought .thought-box__h3::before {
  display: block;
  content: "0" counter(number2);
  counter-increment: number2;
  color: rgba(23, 140, 217, 0.5);
  font-family: "Heebo", sans-serif;
  font-weight: 400;
  font-size: 1.25em;
  letter-spacing: 0;
  line-height: 1;
  position: absolute;
  top: 0;
  left: -1.75em;
}
@media (max-width: 767px) {
  .l-thought .thought-box__h3::before {
    font-size: 1.5rem;
    letter-spacing: 0;
    line-height: 1;
    margin-bottom: 0.25em;
    position: static;
    font-weight: bold;
  }
}

.l-features-end {
  background: url(../img/features_bg001.webp) no-repeat center center/cover;
  padding: max(7.2916666667vw, 100px) 0 max(10.4166666667vw, 140px);
}
@media (max-width: 767px) {
  .l-features-end {
    background-image: url(../img/sp_features_bg001.webp);
    padding: 50px 0 60px;
  }
}
.l-features-end .c-sec-h2 {
  text-align: center;
  color: #fff;
}
@media (min-width: 768px) {
  .l-features-end .c-sec-h2 {
    margin-bottom: 1.1666666667em;
  }
}
@media (max-width: 767px) {
  .l-features-end .c-sec-h2 {
    font-size: 2.6rem;
  }
}
.l-features-end__p p {
  text-align: center;
  color: #fff;
}
@media (max-width: 767px) {
  .l-features-end__p p {
    text-align: left;
  }
}
.l-features-end__p p:not(:first-of-type) {
  margin-top: 2.6666666667em;
}/*# sourceMappingURL=page.css.map */