@charset "utf-8";

/* ---------------------------------------------------
 * base
/* ---------------------------------------------------*/

html {
  font-size: 62.5%; /*適宜変更お願いします*/
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  text-align: center;
  font-size: 10px;
  font-family: "Noto Sans JP", YuGothic, "Yu Gothic", "ヒラギノ角ゴシック",
    "Hiragino Sans", sans-serif;
  color: #000000;
  line-height: 1.75;
  width: 100%;
  background-color: #fff;
  font-weight: 400; /*適宜変更お願いします*/
  font-feature-settings: "palt" 1; /*自動カーニング*/
}

video {
  max-width: 750px;
}

img {
  max-width: 100%;
  height: auto;
}

.lp05_05 .elm01_01 {
    inset: auto 0 0;
    overflow: hidden;
    z-index: 5;
}

section img {
  display: block;
  margin-bottom: -1px;
}

picture {
  display: block;
}

a {
  color: #fff;
}

a:hover {
  /*opacity: 0.8;*/
  text-decoration: none;
}

p {
  text-align: justify;
  hanging-punctuation: allow-end; /*文字のぶら下げ*/
}

.btn_box {
  position: absolute;
  z-index: 9999;
  top: 8%;
  right: 0;
  left: 0;
  margin: 0;
}

.btn_box img {
  width: 600px;
}

.wc-static-ctn {
  z-index: 99999 !important;
}

.reflection img {
  width: 100%;
  max-width: 750px; /* お好みで調整 */
  height: auto;
  display: block;
  margin: 0 auto;
}

/*   光るボタン1    */
.reflection {
  display: inline-block;
  position: relative;
  overflow: hidden;
  border-radius: 8px;
}

.reflection {
  display: inline-block;
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  padding: 0; /* ← 余白がないように */
  margin: 0 auto;
  width: fit-content; /* 画像に合わせる */
}

.reflection img {
  display: block;
  max-width: 100%;
  height: auto;
}

.reflection::after {
  content: "";
  position: absolute;
  top: -50%;
  left: -30%;
  width: 60px;
  height: 200%;
  background: linear-gradient(
    to right,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.6) 50%,
    rgba(255, 255, 255, 0) 100%
  );
  transform: rotate(45deg);
  filter: blur(8px);
  animation: reflection 2.3s infinite ease-in-out;
  pointer-events: none;
}

@keyframes reflection {
  0% {
    left: -30%;
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  29% {
    left: 130%;
    opacity: 0;
  }
  100% {
    left: 130%;
    opacity: 0;
  }
}

@keyframes tenmetsu {
  0% {
    opacity: 100%;
  }
  50% {
    opacity: 0%;
  }
  100% {
    opacity: 100%;
  }
}

/*   ポップアップ   */

#section-10 .modal-link {
  top: 7%;
  display: flex;
  align-items: center;
  justify-content: center;
  left: 0;
  right: 0;
}

#section-10 .modal-link img {
  height: 48px;
}

/*   ポップアップ ここまで  */

/*   video   */
video {
  width: 100%;
  object-fit: contain;
  overflow-clip-margin: content-box;
  overflow: clip;
}

.lp03_06 .elm01_01 {
  width: 91.5%;
  inset: auto 0 2.1%;
  margin: auto;
  border-radius: 3.5555555556vw;
  overflow: hidden;
  font-size: 0;
}

.lp03_03 .elm01_01 {
  width: 53%;
  inset: 68.8% 0 auto 9.8%;
  border-radius: 1.1111111111vw;
  overflow: hidden;
  font-size: 0;
}

.lp03_07 .elm01_01 {
  width: 53.2%;
  inset: 66.4% 0 auto 38.1%;
  border-radius: 1.1111111111vw;
  overflow: hidden;
  font-size: 0;
}

.lp03_09 .elm01_01 {
  inset: 0 0 auto;
  z-index: 5;
}

.lp03_09 .elm02_01 {
  width: 100%;
  inset: auto 0 -1% 0;
  margin: auto;
  overflow: hidden;
}

.lp03_10 .elm01_01 {
  width: 91.5%;
  inset: 40.9% 0 auto;
  margin: auto;
  border-radius: 3.5555555556vw;
  overflow: hidden;
  font-size: 0;
}

.lp05_05 .elm02_01 {
  width: 100%;
  inset: auto 0 -4.2%;
  margin: auto;
  overflow: hidden;
  font-size: 0;
}

.lp05_09 .elm01_01 {
  width: 100%;
  inset: 26% 0 auto;
  margin: auto;
  overflow: hidden;
}

.lp07_02 .elm01_01 {
  width: 100%;
  inset: 15% 0 auto;
  margin: auto;
  overflow: hidden;
  z-index: -1;
}

.lp07_04 .elm01_01 {
  width: 113.4%;
  inset: -7.3% 0 auto -6.7%;
  margin: auto;
  border-radius: 0 0 3.1111111111vw 3.1111111111vw;
  overflow: hidden;
  font-size: 0;
}

.lp07_05 .elm01_01 {
  width: 60.5%;
  inset: 35% 0 auto 31.5%;
  margin: auto;
  border-radius: 1.1111111111vw;
  overflow: hidden;
  font-size: 0;
}

.lp07_06 .elm01_01 {
  width: 113.4%;
  inset: -0.8% 0 auto -6.7%;
  margin: auto;
  border-radius: 0 0 3.1111111111vw 3.1111111111vw;
  overflow: hidden;
}

.lp07_03 .elm01_01 {
  width: 60.6%;
  inset: 28.5% auto auto 5.2%;
  border-radius: 1.1111111111vw;
  overflow: hidden;
  font-size: 0;
}

.lp10_02 {
  overflow: hidden;
}
.lp10_02 .faqContents {
  overflow: hidden;
}
/*   video ここまで  */

/*   Q＆A  */
.lp10_02 .faqItem {
  width: 92.1%;
  margin: 0 auto 4.92%;
  cursor: pointer;
}

.lp10_02 .faqBtn::before {
  transition: 0.3s all;
  transform: rotate(90deg);
}
.lp10_02 .faqBtn::before,
.lp10_02 .faqBtn::after {
  position: absolute;
  content: "";
  display: block;
  background: #fff;
  width: 5.8%;
  height: 1px;
  border-radius: 0.5px;
  inset: 0 3.7% 0 auto;
  margin: auto;
}
.lp10_02 .faqBtn::before,
.lp10_02 .faqBtn::after {
  position: absolute;
  content: "";
  display: block;
  background: #fff;
  width: 5.8%;
  height: 1px;
  border-radius: 0.5px;
  inset: 0 3.7% 0 auto;
  margin: auto;
}
/*   Q＆A ここまで  */

.llw img {
  display: block;
  width: 100%;
  height: auto;
  z-index: 9999;
}

.lp03_02 .elm01_01,
.lp03_02 .elm02_01,
.lp03_02 .elm03_01,
.lp03_02 .elm04_01 {
  width: 29.4%;
}

.lp03_02 .elm01_01 {
  inset: 67% auto auto 0%;
}

.lp03_02 .elm02_01 {
  inset: 71.5% auto auto 23.9%;
}

.lp03_02 .elm03_01 {
  inset: 71.5% auto auto 47.9%;
}

.lp03_02 .elm04_01 {
  inset: 67% auto auto 71.8%;
}

.lp03_02 .elm05_01-01,
.lp03_02 .elm05_01-02,
.lp03_02 .elm05_01-03,
.lp03_02 .elm05_01-04 {
  width: 80%;
  mix-blend-mode: screen;
  inset: -9.1% auto auto -30%;
}

.lp03_02 .elm05_01-01 {
  animation: tenmetsu 2s 0s infinite forwards;
}

.lp03_02 .elm05_01-02 {
  animation: tenmetsu 1.8s 0.1s infinite forwards;
}

.lp03_02 .elm05_01-03 {
  animation: tenmetsu 2.1s 0.3s infinite forwards;
}

.lp03_02 .elm05_01-04 {
  animation: tenmetsu 1.9s 0.2s infinite forwards;
}

.posAbs {
  position: absolute;
}

.posRel {
  position: relative;
}

div {
  display: block;
  unicode-bidi: isolate;
}

.footer {
  width: 100%;
  background: #fff;
  margin: 0 auto;
  overflow: hidden;
  max-width: 750px;
}

.footer01_01,
.footer01_02 {
  position: relative;
}

.footer01_01 img,
.footer01_02 img {
  display: block;
  width: 100%;
  height: auto;
}

.btn01_01 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
}
user agent stylesheet
fo

/* ---------------------------------------------------
 * common（PC　min-width: 1023px）
/* ---------------------------------------------------*/
.wrap {
  width: 2000px;
  max-width: 100%;
}

.container {
  position: relative;
  max-width: 750px;
  margin-left: auto;
  margin-right: auto;
  line-height: 0;
  overflow: hidden;
}

/*背景画像を指定*/
/* section#section-01 {
	background:url(../img_pc/section_01.webp)no-repeat top center; 
}
section#section-02 {
	background:url(../img_pc/section_02.webp)no-repeat top center; 
}
section#section-03 {
	background:url(../img_pc/section_03.webp)no-repeat top center; 
}
section#section-04 {
	background:url(../img_pc/section_04.webp)no-repeat top center; 
}
section#section-05 {
	background:url(../img_pc/section_05.webp)no-repeat top center; 
}
section#section-06 {
	background:url(../img_pc/section_06.webp)no-repeat top center; 
}
section#section-07 {
	background:url(../img_pc/section_07.webp)no-repeat top center; 
}
section#section-08 {
	background:url(../img_pc/section_08.webp)no-repeat top center; 
}
section#section-09 {
	background:url(../img_pc/section_09.webp)no-repeat top center; 
}
section#section-10 {
	background:url(../img_pc/section_10.webp)no-repeat top center; 
} */

/*背景画像を指定*/
/* section#section-11 {
	background:url(../img_pc/section_11.webp)no-repeat top center; 
}
section#section-12 {
	background:url(../img_pc/section_12.webp)no-repeat top center; 
}
section#section-13 {
	background:url(../img_pc/section_13.webp)no-repeat top center; 
}
section#section-14 {
	background:url(../img_pc/section_14.webp)no-repeat top center; 
}
section#section-15 {
	background:url(../img_pc/section_15.webp)no-repeat top center; 
}
section#section-16 {
	background:url(../img_pc/section_16.webp)no-repeat top center; 
}
section#section-17 {
	background:url(../img_pc/section_17.webp)no-repeat top center; 
}
section#section-18 {
	background:url(../img_pc/section_18.webp)no-repeat top center; 
}
section#section-19 {
	background:url(../img_pc/section_19.webp)no-repeat top center; 
}
section#section-20 {
	background:url(../img_pc/section_20.webp)no-repeat top center; 
} */

/*背景画像を指定*/
/* section#section-21 {
	background:url(../img_pc/section_21.webp)no-repeat top center; 
}
section#section-22 {
	background:url(../img_pc/section_22.webp)no-repeat top center; 
}
section#section-23 {
	background:url(../img_pc/section_23.webp)no-repeat top center; 
}
section#section-24 {
	background:url(../img_pc/section_24.webp)no-repeat top center; 
}
section#section-25 {
	background:url(../img_pc/section_25.webp)no-repeat top center; 
}
section#section-26 {
	background:url(../img_pc/section_26.webp)no-repeat top center; 
}
section#section-27 {
	background:url(../img_pc/section_27.webp)no-repeat top center; 
}
section#section-28 {
	background:url(../img_pc/section_28.webp)no-repeat top center; 
}
section#section-29 {
	background:url(../img_pc/section_29.webp)no-repeat top center; 
}
section#section-30 {
	background:url(../img_pc/section_30.webp)no-repeat top center; 
} */

/*背景画像を指定*/
/* section#section-21 {
	background:url(../img_pc/section_21.webp)no-repeat top center; 
}
section#section-22 {
	background:url(../img_pc/section_22.webp)no-repeat top center; 
}
section#section-23 {
	background:url(../img_pc/section_23.webp)no-repeat top center; 
}
section#section-24 {
	background:url(../img_pc/section_24.webp)no-repeat top center; 
}
section#section-25 {
	background:url(../img_pc/section_25.webp)no-repeat top center; 
}
section#section-26 {
	background:url(../img_pc/section_26.webp)no-repeat top center; 
}
section#section-27 {
	background:url(../img_pc/section_27.webp)no-repeat top center; 
}
section#section-28 {
	background:url(../img_pc/section_28.webp)no-repeat top center; 
}
section#section-29 {
	background:url(../img_pc/section_29.webp)no-repeat top center; 
}
section#section-30 {
	background:url(../img_pc/section_30.webp)no-repeat top center; 
} */

/*背景画像を指定*/
/* section#section-31 {
	background:url(../img_pc/section_31.webp)no-repeat top center; 
} */

element.style {
  translate: none;
  rotate: none;
  scale: none;
  transform: translate3d(0px, -3.0888px, 0px);
}

.lp04_05 .elm01_01 {
  width: 45.1%;
  inset: -0.1% 0 auto 58.1%;
  margin: auto;
  border-radius: 3.5555555556vw;
  overflow: hidden;
}

translate: none;
transform: translate3d(0px, -1.9784px, 0px);

/* section#section-32 {
	background:url(../img_pc/section_32.webp)no-repeat top center; 
}
section#section-33 {
	background:url(../img_pc/section_33.webp)no-repeat top center; 
}
section#section-34 {
	background:url(../img_pc/section_34.webp)no-repeat top center; 
}
section#section-35 {
	background:url(../img_pc/section_35.webp)no-repeat top center; 
}*/

section#section-36 {
	background:url(../img_pc/section_36.webp)no-repeat top center; 
} 

#section-37 {
  .lp04_11 .elm01_01,
  .lp04_11 .elm02_01,
  .lp04_11 .elm03_01,
  .lp04_11 .elm04_01 {
    width: 29.4%;
  }

  .lp04_11 .elm01_01 {
    inset: 58.5% auto auto -0.5%;
  }

  .lp04_11 .elm02_01 {
    inset: 61.8% auto auto 23.4%;
  }

  .lp04_11 .elm03_01 {
    inset: 61.9% auto auto 47.4%;
  }

  .lp04_11 .elm04_01 {
    inset: 58.5% auto auto 71.3%;
  }

  .lp04_11 .elm05_01-01,
  .lp04_11 .elm05_01-02,
  .lp04_11 .elm05_01-03,
  .lp04_11 .elm05_01-04 {
    width: 80%;
    mix-blend-mode: screen;
    inset: -9.1% auto auto -30%;
  }

  .lp04_11 .elm05_01-01 {
    animation: tenmetsu 2s 0s infinite forwards;
  }
  .lp04_11 .elm05_01-02 {
    animation: tenmetsu 1.8s 0.1s infinite forwards;
  }
  .lp04_11 .elm05_01-03 {
    animation: tenmetsu 2.1s 0.3s infinite forwards;
  }
  .lp04_11 .elm05_01-04 {
    animation: tenmetsu 1.9s 0.2s infinite forwards;
  }
}

/*section#section-37 {
	background:url(../img_pc/section_37.webp)no-repeat top center; 
}
/*section#section-38 {
	background:url(../img_pc/section_38.webp)no-repeat top center; 
}
section#section-39 {
	background:url(../img_pc/section_39.webp)no-repeat top center; 
}
section#section-40 {
	background:url(../img_pc/section_40.webp)no-repeat top center; 
} */

/*背景画像を指定*/
/* section#section-41 {
	background:url(../img_pc/section_41.webp)no-repeat top center; 
}
section#section-42 {
	background:url(../img_pc/section_42.webp)no-repeat top center; 
}
section#section-43 {
	background:url(../img_pc/section_43.webp)no-repeat top center; 
}

section#section-44 {
	background:url(../img_pc/section_44.webp)no-repeat top center; 
}
section#section-45 {
	background:url(../img_pc/section_45.webp)no-repeat top center; 
}
section#section-46 {
	background:url(../img_pc/section_46.webp)no-repeat top center; 
}
section#section-47 {
	background:url(../img_pc/section_47.webp)no-repeat top center; 
}
section#section-48 {
	background:url(../img_pc/section_48.webp)no-repeat top center; 
}
section#section-49 {
	background:url(../img_pc/section_49.webp)no-repeat top center; 
}
section#section-50 {
	background:url(../img_pc/section_50.webp)no-repeat top center; 
} */

/*背景画像を指定*/
/* section#section-61 {
	background:url(../img_pc/section_41.webp)no-repeat top center; 
} */

#section-62 {
  .lp07_13 .elm01_01,
  .lp07_13 .elm02_01,
  .lp07_13 .elm03_01,
  .lp07_13 .elm04_01 {
    width: 29.4%;
  }

  element.style {
    translate: none;
    rotate: none;
    scale: none;
    transform: translate3d(0px, -3.9777px, 0px);
  }

  .lp07_13 .elm01_01 {
    inset: 69.6% auto auto 0%;
  }

  .lp07_13 .elm02_01 {
    inset: 72.1% auto auto 23.8%;
  }

  .lp07_13 .elm03_01 {
    inset: 72.1% auto auto 47.9%;
  }

  .lp07_13 .elm04_01 {
    inset: 69.6% auto auto 71.8%;
  }

  .lp07_13 .elm05_01-01,
  .lp07_13 .elm05_01-02,
  .lp07_13 .elm05_01-03,
  .lp07_13 .elm05_01-04 {
    width: 80%;
    mix-blend-mode: screen;
    inset: -9.1% auto auto -30%;
  }

  .lp07_13 .elm05_01-01 {
    animation: tenmetsu 2s 0s infinite forwards;
  }
  .lp07_13 .elm05_01-02 {
    animation: tenmetsu 1.8s 0.1s infinite forwards;
  }
  .lp07_13 .elm05_01-03 {
    animation: tenmetsu 2.1s 0.3s infinite forwards;
  }
  .lp07_13 .elm05_01-04 {
    animation: tenmetsu 1.9s 0.2s infinite forwards;
  }

  element.style {
    translate: none;
    rotate: none;
    scale: none;
    transform: translate3d(0px, 2.6821px, 0px);
  }

  element.style {
    translate: none;
    rotate: none;
    scale: none;
    transform: translate3d(0px, -4.9983px, 0px);
  }
}
/* section#section-63 {
	background:url(../img_pc/section_43.webp)no-repeat top center; 
}
section#section-64 {
	background:url(../img_pc/section_44.webp)no-repeat top center; 
}
section#section-65 {
	background:url(../img_pc/section_45.webp)no-repeat top center; 
}
section#section-66 {
	background:url(../img_pc/section_46.webp)no-repeat top center; 
}
section#section-67 {
	background:url(../img_pc/section_47.webp)no-repeat top center; 
}
section#section-68 {
	background:url(../img_pc/section_48.webp)no-repeat top center; 
}
section#section-69 {
	background:url(../img_pc/section_49.webp)no-repeat top center; 
}
section#section-70 {
	background:url(../img_pc/section_50.webp)no-repeat top center; 
}

section#section-71 {
	background:url(../img_pc/section_50.webp)no-repeat top center; 
}

section#section-72 {
	background:url(../img_pc/section_50.webp)no-repeat top center; 
}

section#section-73 {
	background:url(../img_pc/section_50.webp)no-repeat top center; 
} */

#section-74 {
  .lp08_12 .elm01_01,
  .lp08_12 .elm02_01,
  .lp08_12 .elm03_01,
  .lp08_12 .elm04_01 {
    width: 29.4%;
  }

  element.style {
    translate: none;
    rotate: none;
    scale: none;
    transform: translate3d(0px, -3.9777px, 0px);
  }

  .lp08_12 .elm01_01 {
    inset: 72.2% auto auto 0%;
  }

  .lp08_12 .elm02_01 {
    inset: 76.5% auto auto 23.8%;
  }

  .lp08_12 .elm03_01 {
    inset: 76.5% auto auto 47.9%;
  }

  .lp08_12 .elm04_01 {
    inset: 72.3% auto auto 71.8%;
  }

  .lp08_12 .elm05_01-01,
  .lp08_12 .elm05_01-02,
  .lp08_12 .elm05_01-03,
  .lp08_12 .elm05_01-04 {
    width: 80%;
    mix-blend-mode: screen;
    inset: -9.1% auto auto -30%;
  }

  .lp08_12 .elm05_01-01 {
    animation: tenmetsu 2s 0s infinite forwards;
  }
  .lp08_12 .elm05_01-02 {
    animation: tenmetsu 1.8s 0.1s infinite forwards;
  }
  .lp08_12 .elm05_01-03 {
    animation: tenmetsu 2.1s 0.3s infinite forwards;
  }
  .lp08_12 .elm05_01-04 {
    animation: tenmetsu 1.9s 0.2s infinite forwards;
  }

  element.style {
    translate: none;
    rotate: none;
    scale: none;
    transform: translate3d(0px, 2.6821px, 0px);
  }

  element.style {
    translate: none;
    rotate: none;
    scale: none;
    transform: translate3d(0px, -4.9983px, 0px);
  }
}

.-pc {
  display: block;
}

.-sp {
  display: none;
}

*,
*::before,
*::after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit; /*親要素のbox-sizingを継承*/
}

/*-----------------タブレットサイズ-----------------------*
@media (min-width: 600px) and (max-width: 1023px) {
    body {
        font-size: 3.2rem;
    }
    .-pc {
        display: none;
    }
    .-sp {
        display: block;
    }
    .wrap {
        max-width: 100%;
        width: 100%;
    }

    .reflection img {
    display: block;
    max-width: 85%;
    height: auto;
    margin: 0 auto;
    }
}
----------------------------------------*/

/*-----------------スマホサイズ-----------------------*/

@media screen and (max-width: 600px) {
  .-pc {
    display: none;
  }
  .-sp {
    display: block;
  }
  body {
    font-size: 4.2vw;
  }
  .wrap {
    max-width: 100%;
    width: 100%;
  }

  .reflection img {
    display: block;
    max-width: 85%;
    height: auto;
    margin: 0 auto;
  }

  .btn_box {
    position: absolute;
    z-index: 9999;
    top: 8%;
    right: 0;
    left: 0;
    margin: 0;
  }

  .reflection img {
    width: 80%;
  }

  /*   ポップアップ   */

  #section-10 .modal-link {
    top: 7%;
    display: flex;
    align-items: flex-start;
    justify-content: center;
  }

  #section-10 .modal-link img {
    width: auto;
    height: 32px;
  }

  /*   ポップアップ ここまで  */

  #footer {
    text-align: center;
    font-size: 0.8em;
    padding: 1em;
    margin-bottom: 150px;
  }
  #footer a {
    color: #000000;
  }
  section#section-01,
  section#section-02,
  section#section-03,
  section#section-04,
  section#section-05,
  section#section-06,
  section#section-07,
  section#section-08,
  section#section-09,
  section#section-10,
  section#section-11,
  section#section-12,
  section#section-13,
  section#section-14,
  section#section-15,
  section#section-16,
  section#section-17,
  section#section-18,
  section#section-19,
  section#section-20,
  section#section-21,
  section#section-22,
  section#section-23,
  section#section-24,
  section#section-25,
  section#section-26,
  section#section-27,
  section#section-28,
  section#section-29,
  section#section-30,
  section#section-31,
  section#section-32,
  section#section-33,
  section#section-34,
  section#section-35,
  section#section-36,
  section#section-37,
  section#section-38,
  section#section-39,
  section#section-40,
  section#section-41,
  section#section-42,
  section#section-43,
  section#section-44,
  section#section-45,
  section#section-46,
  section#section-47,
  section#section-48,
  section#section-49,
  section#section-50 {
    background: none !important;
  }
}
/*----------------------------------------*/
