.l-loading-bg {
  align-items: center;
  background-color: #fff;
  display: flex;
  height: 100dvh;
  justify-content: center;
  left: 0;
  opacity: 1; /* 初期から表示 */
  position: fixed;
  top: 0;
  width: 100vw;
  z-index: 300;
}

/* ローディングアイコンは初期状態で非表示 */
.l-loading {
  opacity: 0; /* 初期は透明 */
  text-align: center;
  transition: opacity var(--loading-duration) var(--loading-easing);
  width: 40%;
}
@media screen and (max-width: 767.9px) {
  .l-loading {
    width: 80%;
  }
}

.l-loading.is-visible {
  opacity: 1; /* フェードイン */
}

/* ロード完了時（フェードアウト） */
.l-loading.is-loaded {
  opacity: 0; /* フェードアウト */
}

/* 2回目以降訪問時のスタイル */
body.is-visit .l-loading-bg {
  display: none; /* 初回以外は非表示 */
}
.p-home-fv {
  padding-bottom: clamp(0.5625rem, -0.0785661218rem + 1.3372956909vw, 1.125rem);
  position: relative;
}

.p-home-fv__hero {
  animation-duration: var(--fv-image-duration);
  animation-name: blur-fv-img;
}
@media screen and (max-width: 767.9px) {
  .p-home-fv__hero {
    height: 100vh;
    height: 100svh;
    overflow: hidden;
  }
}
@media screen and (max-width: 767.9px) {
  .p-home-fv__hero img {
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

@keyframes blur-fv-img {
  0% {
    opacity: 0;
  }
  80% {
    filter: blur(10px);
    opacity: 0;
  }
  100% {
    filter: blur(0);
    opacity: 1;
  }
}
body.is-visit .p-home-fv__hero,
body.is-visit .p-home-fv__lead--ja,
body.is-visit .p-home-fv__lead--en {
  animation-name: none;
}

.p-home-fv__main {
  height: 100%;
  left: 50%;
  position: absolute;
  top: 104px;
  translate: -50% 0;
  width: 100%;
  z-index: 2;
}

.p-home-fv__main-inner {
  height: 100%;
  position: relative;
  width: 100%;
}

.p-home-fv__lead--ja {
  animation-duration: var(--fv-lead-ja-duration);
  animation-name: blur-fv-lead-ja;
  line-height: 0.9;
  position: absolute;
  right: 0;
  top: clamp(5.25rem, -0.804513373rem + 12.6300148588vw, 10.5625rem);
  writing-mode: vertical-rl;
  z-index: 2;
}
@media screen and (max-width: 767.9px) {
  .p-home-fv__lead--ja {
    top: 155px;
  }
}
.p-home-fv__lead--ja span {
  background-color: #fff;
  color: var(--text-color-second);
  display: block;
  font-family: shippori-mincho, sans-serif;
  font-size: clamp(1.125rem, -0.0859026746rem + 2.5260029718vw, 2.1875rem);
  font-size: clamp(1.125rem, -0.0859026746rem + 2.5260029718vw, 1.8rem);
  font-weight: 400;
  height: -moz-fit-content;
  height: fit-content;
  letter-spacing: 0.11em;
  line-height: 1;
  padding-inline: clamp(0.75rem, 0.0377043091rem + 1.485884101vw, 1.375rem);
  padding-left: clamp(0.25rem, -0.1061478455rem + 0.7429420505vw, 0.5625rem);
  padding-right: clamp(0.375rem, -0.1948365527rem + 1.1887072808vw, 0.875rem);
  white-space: nowrap;
}
@media screen and (max-width: 767.9px) {
  .p-home-fv__lead--ja span {
    font-size: clamp(1rem, 0.0433673469rem + 4.0816326531vw, 2rem);
  }
}

@keyframes blur-fv-lead-ja {
  0% {
    opacity: 0;
  }
  80% {
    filter: blur(10px);
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    filter: blur(0);
    opacity: 1;
    transform: translateY(0);
  }
}
.p-home-fv__lead--en {
  background: linear-gradient(98deg, #e1c981 -0.89%, #9c811e 41.91%, #d3b143 89.21%);
  background-clip: text;
  font-family: europa, sans-serif;
  font-family: shippori-mincho, sans-serif;
  font-size: clamp(2.1875rem, -0.3055349183rem + 5.2005943536vw, 4.375rem);
  font-weight: 300;
  left: 0;
  line-height: 1.5;
  position: absolute;
  top: clamp(1.75rem, -0.2444279346rem + 4.1604754829vw, 3.5rem);
  z-index: 2;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation-duration: var(--fv-lead-en-duration);
  animation-name: blur-fv-lead-en;
}
@media screen and (max-width: 767.9px) {
  .p-home-fv__lead--en {
    font-size: clamp(1.75rem, 0.434630102rem + 5.612244898vw, 3.125rem);
  }
}

@keyframes blur-fv-lead-en {
  0% {
    opacity: 0;
  }
  80% {
    filter: blur(10px);
    opacity: 0;
    transform: translateX(20px);
  }
  100% {
    filter: blur(0);
    opacity: 1;
    transform: translateX(0);
  }
}
.p-home-fv__bottom {
  background: url(../img/fv-bottom-white.svg) no-repeat top center/cover;
  bottom: -1px;
  height: 26vw;
  position: absolute;
  width: 100%;
  z-index: 0;
}
@media screen and (max-width: 767.9px) {
  .p-home-fv__bottom {
    height: clamp(6.25rem, -0.924744898rem + 30.612244898vw, 13.75rem);
  }
}

.fv-wave {
  clip-path: inset(0 0 0 100%); /* 右から左へ表示 */
  height: auto;
  opacity: 0;
  position: absolute;
  width: 100%;
}

.fv-wave--to-left {
  animation: reveal-right 1.5s ease-out forwards;
}

.fv-wave--to-right {
  animation: reveal-left 1.5s ease-out forwards;
}

/* fv-waveアニメーション */
@keyframes reveal-right {
  0% {
    clip-path: inset(0 0 0 100%); /* 右側から表示開始 */
    opacity: 0;
  }
  100% {
    clip-path: inset(0 0% 0 0);
    opacity: 1;
  }
}
@keyframes reveal-left {
  0% {
    clip-path: inset(0 100% 0 0);
    opacity: 0;
  }
  100% {
    clip-path: inset(0 0% 0 0);
    opacity: 1;
  }
}
.fv-wave--01 {
  animation-delay: var(--fv-wave01-duration);
  top: clamp(0.5rem, -0.0698365527rem + 1.1887072808vw, 1rem);
}

.fv-wave--02 {
  animation-delay: var(--fv-wave02-duration);
  top: clamp(0.9375rem, -0.0597139673rem + 2.0802377415vw, 1.8125rem);
}

.fv-wave--03 {
  animation-delay: var(--fv-wave03-duration);
  top: clamp(2rem, -0.279346211rem + 4.7548291233vw, 4rem);
}

body.is-visit .fv-wave {
  clip-path: none;
  opacity: 1;
}

body.is-visit .fv-wave--01,
body.is-visit .fv-wave--02,
body.is-visit .fv-wave--03 {
  animation-name: none;
}

.p-home-vision {
  animation-duration: var(--vision-duration);
  animation-name: blur-vision;
  background-color: #fff;
  margin-top: calc(clamp(1.8125rem, -0.2531575037rem + 4.309063893vw, 3.625rem) * -1);
  overflow: hidden;
  padding-top: clamp(2.6875rem, -0.375371471rem + 6.3893016345vw, 5.375rem);
}
@media screen and (max-width: 767.9px) {
  .p-home-vision {
    margin-top: calc(clamp(1.8125rem, 0.0786033163rem + 7.3979591837vw, 3.625rem) * -1);
    padding-top: clamp(6.25rem, 0.2710459184rem + 25.5102040816vw, 12.5rem);
  }
}

@keyframes blur-vision {
  0% {
    opacity: 0;
  }
  80% {
    filter: blur(10px);
    opacity: 0;
  }
  100% {
    filter: blur(0);
    opacity: 1;
  }
}
body.is-visit .p-home-vision {
  animation-name: none;
}

.p-home-vision__container {
  padding-bottom: clamp(17.5rem, 9.8072065379rem + 16.0475482912vw, 24.25rem);
  padding-top: clamp(10.4375rem, -1.5290676077rem + 24.9628528975vw, 20.9375rem);
  position: relative;
}
@media screen and (max-width: 767.9px) {
  .p-home-vision__container {
    padding-bottom: 227px;
  }
}

.p-home-vision__title-wrap {
  position: relative;
  z-index: 1;
}

.p-home-vision__title--en {
  color: var(--text-color-third);
  font-family: sheila, sans-serif;
  font-size: clamp(3.75rem, -0.5237741456rem + 8.9153046062vw, 7.5rem);
  text-transform: capitalize;
}

.p-home-vision__title--ja {
  color: #000;
  font-family: shippori-mincho, sans-serif;
  font-size: clamp(0.625rem, 0.1976225854rem + 0.8915304606vw, 1rem);
  font-weight: 500;
  margin-top: calc(clamp(1.125rem, -0.1571322437rem + 2.6745913819vw, 2.25rem) * -1);
  position: relative;
}
.p-home-vision__title--ja::after {
  background-color: var(--text-color-primary);
  bottom: -18%;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  width: 34.5px;
}

.p-home-vision__text-wrap {
  margin-top: clamp(1.5rem, -0.2095096582rem + 3.5661218425vw, 3rem);
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767.9px) {
  .p-home-vision__text-wrap {
    max-width: 360px;
  }
}

.p-home-vision__label {
  color: var(--text-color-primary);
  font-family: shippori-mincho, sans-serif;
  font-size: clamp(1rem, 0.0027860327rem + 2.0802377415vw, 1.875rem);
  letter-spacing: 0.03em;
  line-height: 2;
}

.p-home-vision__text {
  color: var(--text-color-primary);
  font-family: shippori-mincho, sans-serif;
  font-size: clamp(0.625rem, 0.1976225854rem + 0.8915304606vw, 1rem);
  letter-spacing: 0.03em;
  line-height: 2.5;
}

.p-home-vision__text {
  margin-top: clamp(1.75rem, -0.1019687964rem + 3.8632986627vw, 3.375rem);
}

.p-home-vision__text + .p-home-vision__text {
  margin-top: clamp(1.25rem, -0.1745913819rem + 2.9717682021vw, 2.5rem);
}

.p-home-vision__deco {
  height: 100%;
  left: 50%;
  position: absolute;
  top: 0;
  translate: -50% 0;
  width: 100%;
  z-index: 0;
}

.p-home-vision__deco-inner {
  position: relative;
}
@media screen and (max-width: 767.9px) {
  .p-home-vision__deco-inner {
    padding-bottom: 100px;
  }
}

.p-home-vision__deco-circle {
  height: clamp(46.25rem, 15.9062035661rem + 63.2986627043vw, 72.875rem);
  left: calc(clamp(5rem, -7.2514858841rem + 25.5572065379vw, 15.75rem) * -1);
  left: -260px;
  position: absolute;
  top: 10.5%;
  width: clamp(46.25rem, 15.9062035661rem + 63.2986627043vw, 72.875rem);
  z-index: -1;
}
@media screen and (max-width: 767.9px) {
  .p-home-vision__deco-circle {
    height: clamp(46.25rem, 46.25rem + 0vw, 46.25rem);
    left: auto;
    right: 0;
    top: 10%;
    width: clamp(46.25rem, 46.25rem + 0vw, 46.25rem);
  }
}
.p-home-vision__deco-circle::before {
  background: url(../img/bg_yellow-circle--vision.svg) no-repeat center center/cover;
  content: "";
  height: 665px;
  position: absolute;
  right: -50%;
  top: 0;
  width: 631px;
  z-index: -9;
}
@media screen and (max-width: 767.9px) {
  .p-home-vision__deco-circle::before {
    bottom: 0;
    top: auto;
  }
}

.p-home-vision__deco-text {
  bottom: clamp(-0.8125rem, -3.5904531947rem + 5.7949479941vw, 1.625rem);
  color: rgba(225, 201, 129, 0.2);
  font-family: sheila, sans-serif;
  font-size: clamp(4.375rem, -4.8848439822rem + 19.3164933135vw, 12.5rem);
  letter-spacing: 0.03em;
  line-height: 2;
  position: absolute;
  right: calc(clamp(-8.75rem, -27.4121471025rem + 38.9301634473vw, 7.625rem) * -1);
  text-transform: capitalize;
}

.p-home-vision__img {
  overflow: hidden;
  position: relative;
}

.p-home-vision__img01 {
  border-top-right-radius: clamp(1.875rem, -0.2618870728rem + 4.4576523031vw, 3.75rem);
  margin-top: calc(clamp(2.625rem, -0.437871471rem + 6.3893016345vw, 5.3125rem) * -1);
  position: relative;
  width: clamp(16.875rem, -2.2857540862rem + 39.970282318vw, 33.6875rem);
  z-index: 1;
  z-index: 11;
}

.p-home-vision__img02 {
  border-top-left-radius: clamp(1.875rem, -0.2618870728rem + 4.4576523031vw, 3.75rem);
  margin-left: auto;
  margin-right: calc(clamp(-2.5rem, -11.7598439822rem + 19.3164933135vw, 5.625rem) * -1);
  margin-top: calc(clamp(-1.25rem, -15.4959138187rem + 29.7176820208vw, 11.25rem) * -1);
  position: relative;
  width: clamp(16.25rem, -2.3409175334rem + 38.7815750371vw, 32.5625rem);
  z-index: 1;
}
@media screen and (max-width: 767.9px) {
  .p-home-vision__img02 {
    margin-top: clamp(31.25rem, 1.3552295918rem + 127.5510204082vw, 62.5rem);
    margin-top: 500px;
    margin-top: 474px;
  }
}

.p-home-vision__img03 {
  border-top-left-radius: clamp(1.875rem, -0.2618870728rem + 4.4576523031vw, 3.75rem);
  margin-left: auto;
  margin-right: calc(clamp(-2.5rem, -11.7598439822rem + 19.3164933135vw, 5.625rem) * -1);
  margin-top: clamp(5.625rem, -0.7856612184rem + 13.3729569094vw, 11.25rem);
  position: relative;
  width: clamp(13.9375rem, -1.9466939079rem + 33.1352154532vw, 27.875rem);
  z-index: 1;
}

.p-home-vision__img04 {
  border-top-right-radius: clamp(1.875rem, -0.2618870728rem + 4.4576523031vw, 3.75rem);
  margin-left: clamp(7.9375rem, -1.1086552749rem + 18.8707280832vw, 15.875rem);
  margin-top: clamp(7.5rem, -1.0475482912rem + 17.8306092125vw, 15rem);
  width: clamp(13.375rem, -1.7968982169rem + 31.6493313522vw, 26.6875rem);
}

.p-home-vision__button {
  margin-top: clamp(2.8125rem, -0.3928306092rem + 6.6864784547vw, 5.625rem);
}
.p-home-vision__button .c-button-link {
  margin-inline: auto;
}

.p-home-service {
  overflow: hidden;
  padding-bottom: clamp(5.625rem, -2.4951708767rem + 16.9390787519vw, 12.75rem);
  padding-top: clamp(6.25rem, -1.3003343239rem + 15.750371471vw, 12.875rem);
}
@media screen and (max-width: 767.9px) {
  .p-home-service {
    padding-top: 80px;
  }
}

.p-home-service__title-wrap {
  align-items: center;
  display: flex;
  gap: 34px;
}

.p-home-service__title--en {
  color: var(--text-color-third);
  font-family: sheila, sans-serif;
  font-size: clamp(3.75rem, -0.5237741456rem + 8.9153046062vw, 7.5rem);
  line-height: 1;
  text-transform: capitalize;
}

.p-home-service__title--ja {
  color: #000;
  font-family: shippori-mincho, sans-serif;
  font-size: clamp(0.625rem, 0.1976225854rem + 0.8915304606vw, 1rem);
  font-weight: 500;
}

.p-home-service__upper {
  margin-top: clamp(0.625rem, -0.0872956909rem + 1.485884101vw, 1.25rem);
}

.p-home-service__text-wrap {
  padding-bottom: clamp(0rem, -11.5391901932rem + 24.0713224368vw, 10.125rem);
}
@media screen and (max-width: 767.9px) {
  .p-home-service__text-wrap {
    padding-bottom: clamp(12.75rem, 6.6514668367rem + 26.0204081633vw, 19.125rem);
    position: relative;
  }
}

.p-home-service__label {
  color: var(--text-color-second);
  font-family: shippori-mincho, sans-serif;
  font-size: clamp(1rem, 0.0027860327rem + 2.0802377415vw, 1.875rem);
  letter-spacing: 0.03em;
  line-height: 2;
}

.p-home-service__blur {
  position: relative;
}
.p-home-service__blur::after {
  background: url(../img/bg_blur-circle.svg) no-repeat center center/cover;
  content: "";
  height: clamp(31.25rem, -4.3647845468rem + 74.294205052vw, 62.5rem);
  left: -10%;
  position: absolute;
  top: calc(clamp(0rem, -14.2459138187rem + 29.7176820208vw, 12.5rem) * -1);
  width: clamp(31.25rem, -4.3647845468rem + 74.294205052vw, 62.5rem);
  z-index: -9;
}
@media screen and (max-width: 767.9px) {
  .p-home-service__blur::after {
    height: clamp(15.625rem, 0.6776147959rem + 63.7755102041vw, 31.25rem);
    left: -30%;
    top: auto;
    top: 0;
    width: clamp(15.625rem, 0.6776147959rem + 63.7755102041vw, 31.25rem);
  }
}

.p-home-service__triangle {
  position: relative;
  width: 100%;
}
@media screen and (max-width: 767.9px) {
  .p-home-service__triangle {
    bottom: 0;
    height: clamp(12.75rem, 6.6514668367rem + 26.0204081633vw, 19.125rem);
    left: 50%;
    position: absolute;
    translate: -50% 0;
    width: clamp(12.5rem, 6.5210459184rem + 25.5102040816vw, 18.75rem);
  }
}
.p-home-service__triangle::before {
  background: url(../img/img_service-triangle@2x.png) no-repeat center center/cover;
  content: "";
  height: clamp(21.875rem, -4.8360884101rem + 55.720653789vw, 45.3125rem);
  left: clamp(21.25rem, 10.565564636rem + 22.2882615156vw, 30.625rem);
  position: absolute;
  top: 22px;
  width: clamp(21.875rem, -4.0525631501rem + 54.0861812779vw, 44.625rem);
  z-index: 0;
}
@media screen and (max-width: 767.9px) {
  .p-home-service__triangle::before {
    height: clamp(12.75rem, 6.6514668367rem + 26.0204081633vw, 19.125rem);
    left: 50%;
    translate: -50% 0;
    width: clamp(12.5rem, 6.5210459184rem + 25.5102040816vw, 18.75rem);
  }
}

.p-home-service__description {
  margin-top: clamp(2.25rem, 0.5404903418rem + 3.5661218425vw, 3.75rem);
  position: relative;
  width: clamp(20rem, 9.315564636rem + 22.2882615156vw, 29.375rem);
}
@media screen and (max-width: 767.9px) {
  .p-home-service__description {
    margin-top: 24px;
    width: 100%;
  }
}
.p-home-service__description p {
  color: var(--text-color-primary);
  font-family: shippori-mincho, sans-serif;
  font-size: clamp(0.625rem, 0.1976225854rem + 0.8915304606vw, 1rem);
  letter-spacing: 0.03em;
  line-height: 2.5;
}
.p-home-service__description p + p {
  margin-top: clamp(1.875rem, 1.0202451709rem + 1.7830609212vw, 2.625rem);
}
@media screen and (max-width: 767.9px) {
  .p-home-service__description p + p {
    margin-top: 16px;
  }
}

.p-home-service__img-wrap {
  width: clamp(22.25rem, -3.2501857355rem + 53.1946508172vw, 44.625rem);
}

.p-home-service__deco-text {
  margin-inline: auto;
  max-width: 1440px;
  position: relative;
  width: 100%;
  z-index: 11;
}
.p-home-service__deco-text::before {
  background: url(../img/text_service@2x.png) no-repeat center center/cover;
  content: "";
  height: clamp(17.5rem, -2.4442793462rem + 41.6047548291vw, 35rem);
  position: absolute;
  right: 0;
  top: 0;
  width: clamp(6.75rem, -0.9427934621rem + 16.0475482912vw, 13.5rem);
  z-index: 11;
}
@media screen and (max-width: 767.9px) {
  .p-home-service__deco-text::before {
    display: none;
  }
}

.p-home-division__item-wrap {
  align-items: end;
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 1;
  -moz-column-gap: 20px;
       column-gap: 20px;
}
@media screen and (max-width: 767.9px) {
  .p-home-division__item-wrap {
    flex-wrap: wrap;
  }
}

.p-home-service__item:nth-child(odd) .p-home-division__item-wrap {
  flex-direction: row-reverse;
}

.p-home-service__item:nth-child(1) .p-home-division__item-wrap {
  margin-top: calc(clamp(4.375rem, -0.6110698366rem + 10.4011887073vw, 8.75rem) * -1);
}
@media screen and (max-width: 767.9px) {
  .p-home-service__item:nth-child(1) .p-home-division__item-wrap {
    margin-top: calc(clamp(2.125rem, -0.0274234694rem + 9.1836734694vw, 4.375rem) * -1);
  }
}

.p-home-service__item:nth-child(2) .p-home-division__item-wrap {
  margin-top: clamp(1.5rem, -0.2095096582rem + 3.5661218425vw, 3rem);
}
@media screen and (max-width: 767.9px) {
  .p-home-service__item:nth-child(2) .p-home-division__item-wrap {
    margin-top: calc(clamp(0.75rem, 0.0325255102rem + 3.0612244898vw, 1.5rem) * -1);
    margin-top: 20px;
  }
}

.p-home-service__item:nth-child(3) .p-home-division__item-wrap {
  margin-top: calc(clamp(1.3125rem, -0.183320951rem + 3.1203566122vw, 2.625rem) * -1);
}
@media screen and (max-width: 767.9px) {
  .p-home-service__item:nth-child(3) .p-home-division__item-wrap {
    margin-top: 0;
  }
}

.p-home-service__wave {
  overflow: hidden;
  position: relative;
  z-index: 2;
}
.p-home-service__wave img {
  width: 100%;
}

.p-home-service__wave01 {
  margin-top: clamp(1.4375rem, -0.2007800892rem + 3.4175334324vw, 2.875rem);
}
.p-home-service__wave01 img {
  height: clamp(11.5rem, -1.6062407132rem + 27.3402674591vw, 23rem);
}
@media screen and (max-width: 767.9px) {
  .p-home-service__wave01 img {
    height: clamp(5.75rem, 0.2493622449rem + 23.4693877551vw, 11.5rem);
  }
}

.p-home-service__wave02 {
  margin-top: calc(clamp(3.4375rem, -0.4801263001rem + 8.1723625557vw, 6.875rem) * -1);
}
@media screen and (max-width: 767.9px) {
  .p-home-service__wave02 {
    margin-top: 0;
  }
}
.p-home-service__wave02 img {
  height: clamp(6.25rem, -1.0866456166rem + 15.3046062407vw, 12.6875rem);
}
@media screen and (max-width: 767.9px) {
  .p-home-service__wave02 img {
    height: clamp(3.125rem, 0.1355229592rem + 12.7551020408vw, 6.25rem);
  }
}

.p-home-service__wave03 {
  margin-top: calc(clamp(3.75rem, -1.9483655275rem + 11.8870728083vw, 8.75rem) * -1);
}
@media screen and (max-width: 767.9px) {
  .p-home-service__wave03 {
    margin-top: calc(clamp(0rem, -4.1852678571rem + 17.8571428571vw, 4.375rem) * -1);
  }
}
.p-home-service__wave03 img {
  height: clamp(11.1875rem, -1.5625928678rem + 26.5973254086vw, 22.375rem);
}
@media screen and (max-width: 767.9px) {
  .p-home-service__wave03 img {
    height: clamp(5.5625rem, 0.2412308673rem + 22.7040816327vw, 11.125rem);
  }
}

.p-home-service__wave04 {
  margin-top: calc(clamp(5.625rem, -0.7856612184rem + 13.3729569094vw, 11.25rem) * -1);
}
@media screen and (max-width: 767.9px) {
  .p-home-service__wave04 {
    margin-top: 0;
    margin-top: calc(clamp(0rem, -5.3810586735rem + 22.9591836735vw, 5.625rem) * -1);
  }
}
.p-home-service__wave04 img {
  height: clamp(9.9375rem, -1.3880014859rem + 23.6255572065vw, 19.875rem);
}
@media screen and (max-width: 767.9px) {
  .p-home-service__wave04 img {
    height: clamp(5rem, 0.2766262755rem + 20.1530612245vw, 9.9375rem);
  }
}

.p-home-division__text-wrap {
  margin-bottom: clamp(4.375rem, -0.6110698366rem + 10.4011887073vw, 8.75rem);
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767.9px) {
  .p-home-division__text-wrap {
    margin-bottom: 0;
  }
}
.p-home-division__text-wrap::before {
  background: url(../img/bg_blur-circle.svg) no-repeat center center/cover;
  content: "";
  height: clamp(31.25rem, -4.3647845468rem + 74.294205052vw, 62.5rem);
  position: absolute;
  right: calc(clamp(-3.125rem, -21.6446879643rem + 38.632986627vw, 13.125rem) * -1);
  width: clamp(26.875rem, -3.9674034175rem + 64.338781575vw, 53.9375rem);
  z-index: -19;
}

.p-home-service__item:nth-child(1) .p-home-division__text-wrap::before {
  top: -130%;
}
@media screen and (max-width: 767.9px) {
  .p-home-service__item:nth-child(1) .p-home-division__text-wrap::before {
    left: auto;
    right: -50%;
    top: -40%;
    translate: 0 0;
  }
}

.p-home-service__item:nth-child(2) .p-home-division__text-wrap::before {
  top: -90%;
}
@media screen and (max-width: 767.9px) {
  .p-home-service__item:nth-child(2) .p-home-division__text-wrap::before {
    left: -50%;
    translate: 0 0;
  }
}

.p-home-service__item:nth-child(3) .p-home-division__text-wrap::before {
  top: -75%;
}
@media screen and (max-width: 767.9px) {
  .p-home-service__item:nth-child(3) .p-home-division__text-wrap::before {
    left: auto;
    right: -50%;
    top: -45%;
    translate: 0 0;
  }
}

.p-home-division__label--en {
  color: rgba(156, 129, 30, 0.5);
  font-family: shippori-mincho, sans-serif;
  font-size: clamp(0.625rem, -0.0872956909rem + 1.485884101vw, 1.25rem);
  line-height: 1.5;
  position: relative;
  text-align: center;
  z-index: 1;
}

.p-home-division__label--ja {
  color: var(--text-color-second);
  font-family: shippori-mincho, sans-serif;
  font-size: clamp(1rem, 0.0027860327rem + 2.0802377415vw, 1.875rem);
  font-weight: 700;
  margin-top: clamp(0.5rem, -0.0698365527rem + 1.1887072808vw, 1rem);
  padding-bottom: clamp(0.75rem, 0.1089338782rem + 1.3372956909vw, 1.3125rem);
  position: relative;
  position: relative;
  text-align: center;
  text-align: center;
  z-index: 1;
}
.p-home-division__label--ja::after {
  background: url(../img/img_division_label.svg) no-repeat center center/cover;
  bottom: 0;
  content: "";
  height: clamp(0.6875rem, -0.0247956909rem + 1.485884101vw, 1.3125rem);
  left: 50%;
  position: absolute;
  translate: -50% 0;
  width: clamp(7.5rem, -1.0475482912rem + 17.8306092125vw, 15rem);
}

.p-home-division__description {
  color: var(--text-color-primary);
  font-family: shippori-mincho, sans-serif;
  font-size: clamp(0.625rem, 0.1976225854rem + 0.8915304606vw, 1rem);
  font-weight: 500;
  line-height: 2.5;
  margin-top: clamp(1.5rem, -0.3519687964rem + 3.8632986627vw, 3.125rem);
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767.9px) {
  .p-home-division__description {
    margin-top: 16px;
  }
}

.p-home-division__img {
  flex-shrink: 0;
  overflow: hidden;
  padding: 20px;
  position: relative;
  width: clamp(22.125rem, -5.7969910847rem + 58.2466567608vw, 46.625rem);
  z-index: 6;
}
@media screen and (max-width: 767.9px) {
  .p-home-division__img {
    max-width: 354px;
    width: 100%;
  }
}

.p-home-division__img-inner {
  border-bottom-right-radius: clamp(1.875rem, -0.2618870728rem + 4.4576523031vw, 3.75rem);
  border-top-left-radius: clamp(1.875rem, -0.2618870728rem + 4.4576523031vw, 3.75rem);
  box-shadow: 0px 0px 20px 0px rgba(90, 88, 79, 0.1);
  overflow: hidden;
  transform: translateZ(0);
}

.p-home-service__item:nth-child(odd) .p-home-division__img-inner {
  margin-left: calc(clamp(0rem, -1.2821322437rem + 2.6745913819vw, 1.125rem) * -1);
}

.p-home-service__item:nth-child(even) .p-home-division__img-inner {
  margin-left: clamp(0rem, -1.4245913819rem + 2.9717682021vw, 1.25rem);
}

.p-home-service__item:nth-child(3) {
  position: relative;
}
.p-home-service__item:nth-child(3)::before {
  background: url(../img/bg_blur-circle.svg) no-repeat center center/cover;
  content: "";
  height: 500px;
  left: -5%;
  position: absolute;
  top: 50%;
  width: 500px;
  z-index: -19;
}
@media screen and (max-width: 767.9px) {
  .p-home-service__item:nth-child(3)::before {
    display: none;
  }
}

.p-home-service__button .c-button-link {
  margin-inline: auto;
}

