@charset "UTF-8";
/* ========== ========== ==========
個別部
========== ========== ========== */
.serviceSingle {
  margin-bottom: clamp(53.33px, calc(160 / var(--base-width-pc) * 100vw), 160px);
}
.serviceSingle .sectionWrap {
  display: flex;
  justify-content: space-between;
  gap: 20px clamp(25px, calc(50 / var(--base-width-pc) * 100vw), 50px);
}
@media screen and (max-width: 768px) {
  .serviceSingle .sectionWrap {
    flex-direction: column;
  }
}
.serviceSingle .sectionTitle {
  margin-bottom: clamp(20px, calc(40 / var(--base-width-pc) * 100vw), 40px);
  color: #AAA;
  font-size: 16px;
  font-family: var(--font-sub1);
  font-weight: 400;
}
.serviceSingle .sectionTitle_en {
  color: black;
  font-family: var(--font-main);
  font-weight: bold;
}
.serviceSingle_text1 {
  font-size: clamp(20px, calc(28 / var(--base-width-pc) * 100vw), 28px);
  font-weight: bold;
  line-height: 1.5714285714;
  margin-bottom: 16px;
}
.serviceSingle_text2 {
  font-size: 16px;
  line-height: 2;
}
.serviceSingle_image {
  width: clamp(280px, calc(560 / var(--base-width-pc) * 100vw), 560px);
  -o-object-fit: contain;
     object-fit: contain;
  flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  .serviceSingle_image {
    display: block;
    margin-inline: auto;
  }
}

.service {
  margin-bottom: 0;
  position: relative;
}
.service_li_title {
  font-size: clamp(20px, calc(28 / var(--base-width-pc) * 100vw), 28px);
}
.service_li_titleWrap {
  margin-bottom: 20px;
}
.service_li_titleWrap::before {
  margin-top: clamp(1px, calc(2 / var(--base-width-pc) * 100vw), 2px);
}
.service_li_image {
  aspect-ratio: 530/330;
}
.service_li_texts {
  padding-inline: clamp(15px, calc(30 / var(--base-width-pc) * 100vw), 30px) clamp(60px, calc(120 / var(--base-width-pc) * 100vw), 120px);
  min-height: clamp(262px, calc(393 / var(--base-width-pc) * 100vw), 393px);
  padding-top: clamp(20px, calc(100 / var(--base-width-pc) * 100vw), 100px);
}
@media screen and (max-width: 768px) {
  .service_li_texts {
    padding-inline: 20px;
    min-height: initial;
  }
}
@media screen and (min-width: 769px) {
  .service_li:nth-of-type(2n-1) .service_li_texts {
    padding-inline: clamp(60px, calc(120 / var(--base-width-pc) * 100vw), 120px) clamp(15px, calc(30 / var(--base-width-pc) * 100vw), 30px);
  }
}
.service_li_text2 {
  margin-bottom: 0;
}
.service_back {
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-9%, -14%);
  width: clamp(245.5px, calc(491 / var(--base-width-pc) * 100vw), 491px);
  height: clamp(285.5px, calc(571 / var(--base-width-pc) * 100vw), 571px);
}
.service_back path {
  fill: #EEE;
}
.service_text1 {
  margin-top: clamp(30px, calc(90 / var(--base-width-pc) * 100vw), 90px);
  text-align: center;
  font-weight: bold;
  font-size: clamp(18px, calc(24 / var(--base-width-pc) * 100vw), 24px);
  line-height: 1.8333333333;
}

.others {
  padding-block: var(--margin-bottom1);
  background-color: #EEE;
  margin-bottom: var(--margin-bottom1);
  border-bottom: solid 1px #AAA;
}
.others .sectionTitle {
  justify-content: center;
  margin-bottom: clamp(30px, calc(90 / var(--base-width-pc) * 100vw), 90px);
}
.others .service_li_title {
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .others .service_li_title {
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .others .service_li_title_en {
    display: block;
  }
}
.others_li {
  display: flex;
  align-items: center;
}
.others_li:not(:last-of-type) {
  margin-bottom: 64px;
}
@media screen and (max-width: 768px) {
  .others_li:not(:last-of-type) {
    margin-bottom: calc(64 / var(--base-width-sp) * 100vw);
  }
}
@media screen and (max-width: 768px) {
  .others_li {
    flex-direction: column-reverse;
  }
}
.others_li_image {
  width: 48.1818181818%;
  flex-shrink: 0;
  align-self: stretch;
}
@media screen and (max-width: 768px) {
  .others_li_image {
    width: 100%;
  }
}
.others_li_texts {
  align-self: stretch;
  background-color: white;
  padding: min(calc(60 / var(--base-width-pc) * 100vw), 60px);
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media screen and (min-width: 769px) {
  .others_li .btns {
    justify-content: flex-start;
  }
}

/* 個別部ここまで
---------- ---------- */