@font-face {
  font-family: "ZenKaku";
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  src: url("/media/files/fonts/pine/ZenKakuGothicNew-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "ZenKaku";
  font-weight: 500;
  font-style: normal;
  font-display: swap;
  src: url("/media/files/fonts/pine/ZenKakuGothicNew-Medium.woff2") format("woff2");
}
@font-face {
  font-family: "ZenKaku";
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  src: url("/media/files/fonts/pine/ZenKakuGothicNew-Bold.woff2") format("woff2");
}
@font-face {
  font-family: "NotoSansJp";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/media/files/fonts/pine/NotoSansJP-Regular.otf") format("opentype");
}
@font-face {
  font-family: "NotoSansJp";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/media/files/fonts/pine/NotoSansJP-Medium.otf") format("opentype");
}
@font-face {
  font-family: "NotoSansJp";
  font-style: normal;
  font-weight: bold;
  font-display: swap;
  src: url("/media/files/fonts/pine/NotoSansJP-Bold.otf") format("opentype");
}
@font-face {
  font-family: "NotoSansJp";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("/media/files/fonts/pine/NotoSansJP-Black.otf") format("opentype");
}
@font-face {
  font-family: "Figtree";
  font-style: normal;
  font-weight: bold;
  font-display: swap;
  src: url("/media/files/fonts/pine/Figtree-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "FigtreeItalic";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/media/files/fonts/pine/Figtree-MediumItalic.ttf") format("truetype");
}
@font-face {
  font-family: "FigtreeBoldItalic";
  font-style: normal;
  font-weight: bold;
  font-display: swap;
  src: url("/media/files/fonts/pine/Figtree-BoldItalic.ttf") format("truetype");
}
@font-face {
  font-family: "Jost";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/media/files/fonts/pine/Jost-Medium.ttf") format("truetype");
}
@font-face {
  font-family: "Jost";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/media/files/fonts/pine/Jost-SemiBoldItalic.ttf") format("truetype");
  font-style: italic;
}
body {
  color: #444;
}

.c-lower__kv {
  background-image: url("/media/images/pine/about/p-about__bg.jpg.webp");
}

.p-about__head {
  margin-bottom: 3.9285714286vw;
}
@media only screen and (max-width: 1023px) {
  .p-about__head {
    margin-bottom: 3.2552083333vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-about__head {
    margin-bottom: 6.25vw;
  }
}
.p-about__frame {
  border-radius: 0.3571428571vw;
  background-color: #fff;
  padding: 3.2142857143vw;
}
@media only screen and (max-width: 1023px) {
  .p-about__frame {
    padding: 2.6041666667vw;
    border-radius: 0.6510416667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-about__frame {
    padding: 5vw;
    border-radius: 1.25vw;
  }
}
.p-about__frame + .p-about__frame {
  margin-top: 8px;
}
.p-about__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 2.5714285714vw;
}
@media only screen and (max-width: 767px) {
  .p-about__content {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2.5vw;
  }
}
.p-about__img {
  max-width: 36.4285714286vw;
  min-width: 36.4285714286vw;
}
@media only screen and (max-width: 767px) {
  .p-about__img {
    max-width: none;
    min-width: auto;
  }
}
.p-about__frame-head {
  color: #3B5808;
  font-size: 1.4285714286vw;
  line-height: 1.6;
  margin-bottom: 1.0714285714vw;
}
@media only screen and (max-width: 1023px) {
  .p-about__frame-head {
    font-size: 2.6041666667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-about__frame-head {
    font-size: 5vw;
  }
}
.p-about__text {
  font-size: 1.1428571429vw;
  line-height: 1.75;
  letter-spacing: 0.05em;
  font-weight: 400;
  display: inline-block;
}
@media only screen and (max-width: 1023px) {
  .p-about__text {
    font-size: 2.0833333333vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-about__text {
    font-size: 4vw;
  }
}
.p-about__text + .p-about__text {
  margin-top: 1.4285714286vw;
}
@media only screen and (max-width: 767px) {
  .p-about__text + .p-about__text {
    margin-top: 3.75vw;
  }
}
.p-about__text .--indent {
  text-indent: -1em;
  padding-left: 1em;
  display: inline-block;
}
@media only screen and (max-width: 1023px) {
  .p-about__text .--indent {
    letter-spacing: 0.025em;
  }
}
.p-about__text .--indent a {
  padding-left: 1em;
}
@media only screen and (max-width: 767px) {
  .p-about__text .--indent a {
    padding: 0;
  }
}

.--mt {
  margin-top: 2.8571428571vw;
}
@media only screen and (max-width: 1023px) {
  .--mt {
    margin-top: 2.6041666667vw;
  }
}
@media only screen and (max-width: 767px) {
  .--mt {
    margin-top: 5vw;
  }
}

.p-important__frame {
  border-radius: 0.3571428571vw;
  background-color: #fff;
  padding: 3.3571428571vw 3.2142857143vw 4.2857142857vw;
}
@media only screen and (max-width: 1023px) {
  .p-important__frame {
    padding: 2.6041666667vw;
    border-radius: 0.6510416667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-important__frame {
    padding: 5vw;
    border-radius: 1.25vw;
  }
}
.p-important__frame + .p-important__frame {
  margin-top: 0.7142857143vw;
}
@media only screen and (max-width: 1023px) {
  .p-important__frame + .p-important__frame {
    margin-top: 1.3020833333vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-important__frame + .p-important__frame {
    margin-top: 2.5vw;
  }
}
.p-important__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 2.9285714286vw;
}
@media only screen and (max-width: 1023px) {
  .p-important__content {
    gap: 2.6041666667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-important__content {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 5vw;
  }
}
.p-important__img {
  max-width: 36.0714285714vw;
  min-width: 36.0714285714vw;
  border-radius: 0.3571428571vw;
}
@media only screen and (max-width: 1023px) {
  .p-important__img {
    max-width: 39.0625vw;
    min-width: 39.0625vw;
    border-radius: 0.6510416667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-important__img {
    max-width: none;
    min-width: auto;
    border-radius: 1.25vw;
  }
}
.p-important__text-wrap {
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
}
@media only screen and (max-width: 767px) {
  .p-important__text-wrap {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
.p-important .--palt {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
.p-important__frame-head {
  font-size: 1.4285714286vw;
  line-height: 1.6;
  margin-bottom: 1.0714285714vw;
}
@media only screen and (max-width: 1023px) {
  .p-important__frame-head {
    font-size: 2.6041666667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-important__frame-head {
    font-size: 5vw;
  }
}
.p-important__frame-subhead {
  color: #3B5808;
  font-size: 1.1428571429vw;
  margin-top: 1.0714285714vw;
  line-height: 2;
}
@media only screen and (max-width: 1023px) {
  .p-important__frame-subhead {
    font-size: 2.0833333333vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-important__frame-subhead {
    font-size: 4vw;
    margin-top: 2.5vw;
  }
}
.p-important__frame-subhead span {
  display: inline-block;
}
.p-important__text {
  font-size: 1.1428571429vw;
  line-height: 1.75;
  letter-spacing: 0.05em;
  font-weight: 400;
  display: inline-block;
}
@media only screen and (max-width: 1023px) {
  .p-important__text {
    font-size: 2.0833333333vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-important__text {
    font-size: 4vw;
  }
}
.p-important__text + .p-important__text {
  margin-top: 1.4285714286vw;
}
@media only screen and (max-width: 767px) {
  .p-important__text + .p-important__text {
    margin-top: 3.75vw;
  }
}

.p-about-section {
  margin-top: 5.7142857143vw;
}
@media only screen and (max-width: 1023px) {
  .p-about-section {
    margin-top: 6.5104166667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-about-section {
    margin-top: 15vw;
  }
}
.p-about-section__head {
  font-size: 2vw;
  line-height: 1.143;
}
@media only screen and (max-width: 1023px) {
  .p-about-section__head {
    font-size: 2.6041666667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-about-section__head {
    font-size: 5.5vw;
    line-height: 1.5;
  }
}
.p-about-section__text {
  font-size: 1.1428571429vw;
  line-height: 1.75;
  letter-spacing: 0.05em;
  margin-top: 1.4285714286vw;
  font-weight: 400;
}
@media only screen and (max-width: 1023px) {
  .p-about-section__text {
    font-size: 2.0833333333vw;
    margin-top: 2.6041666667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-about-section__text {
    font-size: 4vw;
    margin-top: 5vw;
  }
}