@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/services/p-services__bg.jpg.webp");
}
@media only screen and (max-width: 767px) {
  .c-lower__kv {
    background-image: url("/media/images/pine/services/p-services__bg_sp.jpg.webp");
  }
}

.pankuzu a[href$="services/"] {
  pointer-events: none;
  text-decoration: none;
  color: #999999;
}

.p-services__head {
  margin-bottom: 3.9285714286vw;
}
@media only screen and (max-width: 1023px) {
  .p-services__head {
    margin-bottom: 3.2552083333vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-services__head {
    margin-bottom: 6.25vw;
  }
}
.p-services__frame {
  border-radius: 0.3571428571vw;
  background-color: #fff;
  padding: 3.2142857143vw;
}
@media only screen and (max-width: 1023px) {
  .p-services__frame {
    padding: 2.6041666667vw;
    border-radius: 0.6510416667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-services__frame {
    padding: 5vw 5vw 5.75vw;
    border-radius: 1.25vw;
  }
}
.p-services__frame.--mt {
  margin-top: 2.1428571429vw;
}
@media only screen and (max-width: 1023px) {
  .p-services__frame.--mt {
    margin-top: 1.953125vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-services__frame.--mt {
    margin-top: 3.75vw;
  }
}
.p-services__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.7142857143vw;
}
@media only screen and (max-width: 767px) {
  .p-services__content {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2.5vw;
  }
}
.p-services__content-head {
  margin-top: 1.7142857143vw;
  font-size: 1.4285714286vw;
  line-height: 1.6;
}
@media only screen and (max-width: 1023px) {
  .p-services__content-head {
    margin-top: 3.125vw;
    font-size: 2.6041666667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-services__content-head {
    margin-top: 6vw;
    font-size: 5vw;
  }
}
.p-services__content-list {
  margin-top: 0.7142857143vw;
}
@media only screen and (max-width: 1023px) {
  .p-services__content-list {
    margin-top: 1.3020833333vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-services__content-list {
    margin-top: 2.5vw;
  }
}
.p-services__content-item {
  position: relative;
  font-weight: 400;
  line-height: 1.75;
  padding-left: 1.2142857143vw;
  font-size: 1.1428571429vw;
}
@media only screen and (max-width: 1023px) {
  .p-services__content-item {
    font-size: 2.0833333333vw;
    padding-left: 2.2135416667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-services__content-item {
    font-size: 4vw;
    padding-left: 4.25vw;
  }
}
.p-services__content-item::before {
  content: "";
  width: 0.7142857143vw;
  height: 0.7142857143vw;
  top: 0.7142857143vw;
  left: 0;
  background-color: #7DA33B;
  position: absolute;
  border-radius: 50%;
}
@media only screen and (max-width: 1023px) {
  .p-services__content-item::before {
    width: 1.3020833333vw;
    height: 1.3020833333vw;
    top: 1.3020833333vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-services__content-item::before {
    width: 2.5vw;
    height: 2.5vw;
    top: 2.5vw;
  }
}
.p-services__img {
  max-width: 36.4285714286vw;
  min-width: 36.4285714286vw;
}
@media only screen and (max-width: 767px) {
  .p-services__img {
    max-width: none;
    min-width: auto;
  }
}
.p-services__frame-head {
  color: #3B5808;
  font-size: 1.4285714286vw;
  line-height: 1.6;
  margin-bottom: 1.0714285714vw;
}
@media only screen and (max-width: 1023px) {
  .p-services__frame-head {
    font-size: 2.6041666667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-services__frame-head {
    font-size: 5vw;
  }
}
.p-services__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-services__text {
    font-size: 2.0833333333vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-services__text {
    font-size: 4vw;
  }
}
.p-services__text + .p-services__text {
  margin-top: 1.4285714286vw;
}
@media only screen and (max-width: 767px) {
  .p-services__text + .p-services__text {
    margin-top: 3.75vw;
  }
}
.p-services__text .--indent {
  text-indent: -1em;
  padding-left: 1em;
  display: inline-block;
}
@media only screen and (max-width: 1023px) {
  .p-services__text .--indent {
    letter-spacing: 0.025em;
  }
}
.p-services__text .--indent a {
  padding-left: 1em;
}
@media only screen and (max-width: 767px) {
  .p-services__text .--indent a {
    padding: 0;
  }
}
.p-services__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2.8571428571vw;
}
@media only screen and (max-width: 767px) {
  .p-services__list {
    gap: 10vw;
  }
}
.p-services__item {
  width: calc(50% - 1.4285714286vw);
}
@media only screen and (max-width: 767px) {
  .p-services__item {
    width: 100%;
  }
}
.p-services__item-head {
  font-size: 1.4285714286vw;
  line-height: 1.6;
  margin-top: 1.0714285714vw;
}
@media only screen and (max-width: 1023px) {
  .p-services__item-head {
    font-size: 2.34375vw;
    margin-top: 1.953125vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-services__item-head {
    font-size: 4.5vw;
    margin-top: 3.75vw;
  }
}
.p-services__item-head .--bold {
  font-weight: bold;
}
.p-services__item-subhead {
  font-weight: bold;
  font-size: 1.1428571429vw;
  margin-top: 1.0714285714vw;
}
@media only screen and (max-width: 1023px) {
  .p-services__item-subhead {
    font-size: 2.0833333333vw;
    margin-top: 1.953125vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-services__item-subhead {
    font-size: 4vw;
    margin-top: 3.75vw;
  }
}
.p-services__item-subhead + .p-services__item-text {
  margin-top: 0;
}
@media only screen and (max-width: 1023px) {
  .p-services__item-subhead + .p-services__item-text {
    margin-top: 0;
  }
}
@media only screen and (max-width: 767px) {
  .p-services__item-subhead + .p-services__item-text {
    margin-top: 0;
  }
}
.p-services__item-text {
  font-size: 1.1428571429vw;
  line-height: 1.75;
  font-weight: 400;
  margin-top: 0.7142857143vw;
}
@media only screen and (max-width: 1023px) {
  .p-services__item-text {
    font-size: 2.0833333333vw;
    margin-top: 1.3020833333vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-services__item-text {
    font-size: 4vw;
    margin-top: 2.5vw;
  }
}

.p-services-section {
  margin-top: 4.2857142857vw;
}
@media only screen and (max-width: 1023px) {
  .p-services-section {
    margin-top: 6.5104166667vw;
  }
}
@media only screen and (max-width: 767px) {
  .p-services-section {
    margin-top: 15vw;
  }
}