/* 口コミカルーセル */
/* 共通ボタン */
.swiper-button-prev,
.swiper-button-next {
  width: 48px;
  height: 48px;
  background: #fff;
  border-radius: 50%;
  color: #9f9f9f;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

/* デフォルト矢印サイズ調整 */
.swiper-button-prev::after,
.swiper-button-next::after {
  font-size: 18px;
  font-weight: bold;
}

.swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  background: #aaa;
  opacity: 1; /* デフォルトは薄いので */
}

.swiper-pagination-bullet-active {
  background: #fff;
}

.tabs{
  display: flex;
  margin:30px auto;
  justify-content: center;
}

.tab {
  width: 25%;
  height:auto;
  background: #ccc;
  text-align: center;
  line-height: 40px;
  display: inline-block;
  margin: 5px;
}

.tab.active {
}

.faceon {
  display: none;
  width: 100%;
  height: auto;
}

.faceoff {
  display: block;
  width: 100%;
  height: auto;
}

.active .faceon {
  display: block;
}

.active .faceoff {
  display: none;
}

.user_voice_inner{
  display: block;
  width: 100%;
}
.user_voice_inner img{
  width:100%;
}

/* 口コミカルーセルここまで */

.off20_banner{
  width: 650px;
  max-width: 86.6666vw;
  margin: auto;
  margin-top:30px;
  margin-bottom: 30px;
}

/* graph video*/
.graph_video {
  position: relative;
  width: 100%;
}

.graph-video {
  position: relative;
  width: 100%;
}

/* before after */
.bfList li{
  list-style: none;
}

/* sec02 */
img.img_sec02_01{
  top: 74.5%;
}

#section_03{
  margin-top:0;
  padding-bottom: 90px;
}

.img_sec03_03{
  top:7.0%;
}

.img_sec03_04{
  top:20.5%;
}

.img_sec03_05{
  top:40.0%;
}

.img_sec03_06{
  top:60.0%;
}

.img_sec03_07{
  top:80.5%;
}

/* point02 */

.point02{
  background-color: #f4f4f4;
  color:#000;
}

.point02 .images img{
  width: 90%;
  margin: auto;
  padding-bottom: 50px;
}

.point02 .sub_title{
  width: 100%;
  text-align: center;
  font-size: 20px;

    font-weight: 600;
   letter-spacing: 0px;
   padding-top: 40px;
}
.point02 .title{
  width: 100%;
  text-align: center;
  font-size: 32px;
  font-weight: 900;
  letter-spacing: 0px;
border-bottom:1px solid #bba171;
}

.point02 .txt_container{
  width: 90%;
  margin: 0 auto;
  margin-top: 20px;
  margin-bottom: 40px;
}

section .inner{
  width: 90%;
}

.graph{
  margin-bottom:0px;
}

#how{
  margin-top: 0px;
}

#how h2 img{
  width: 90%;
  margin: auto;
}

#how .img_how02{
  width:90%;
  padding-top: 20px;
}

#how .bg2 video{
  width: 90%;
  margin: auto;
}

#how .bg2 .relative>img{
  width: 90%;
  margin: auto;
}

.img_how02{
  width: 90%;
  margin: auto;
}

#how .inner .caption{
  font-size:14px;
}

#how .pc_flex .text{
  width: 90%;
  padding: 20px;
}

#how {
  border-top: 16px solid #b40000;
  border-bottom: 16px solid #b40000;
}

.font_14_pc{
  text-align: left;
}

.img_sec05_01{
  top:40%;
}

.img_sec05_02{
  top:70%;
}


.img_sec06_01{
  top:60%;
}

.img_sec06_02{
  top:80%;
}

.achievements .achievements_slide{
 width: 90%;
}

#how .inner .caption{
  width: 90%;
}

#how_ .section_title{
  display: block;
  position: relative;
  width: 100%;
  margin:0;
  margin-top: 0px;

  padding:15px 0;
  padding-top: 80px;
  border: unset;

  background-color: #000;
  font-size: 42px;
  color: #bba171;
}

#section_03 .section_title{
  display: block;
  position: relative;
  width: 100%;
  margin:0;
  margin-top: 50px;
  padding:30px 0;
  border: unset;
  font-weight: 500;
  background-color: #000;
  font-size: 42px;
  color: #bba171;
}

#section_03 .section_title .is_strong{
  font-weight: 900;
  font-size: 42px;
}

.achievements_title img{
  margin:auto;
}

.section_05_ttl{
  top:11%;
}

#section_05{
  padding-bottom: 10vw;
}

.faq .box .aBox{
  padding-left:10%;
}
#how .bg2 .relative{
  margin-bottom:100px;
}

.pc-right-inner-box{
  margin-bottom:40px;
}

.anchor-adjust {
  padding-top: 50px;
  margin-top: -50px;
}

#hige_nayami{
  background-color: #f4f4f4;
}

.hn_black_container{
  display: block;
  position: relative;
  width: 100%;
  background-color: #000;
  margin-bottom: 60px;
}

.hn_black_container:after{
  content: "";
  width: 0;
  height: 0;
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-top: 25px solid #000;
  display: block;
  margin: 20px auto 0;
  position: absolute;
  bottom: -25px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}

.hn_h2_lead{
  margin:30px auto;
  padding-top: 30px;
  width: 60%;
}

.hn_lead2_img_sp{
  width: 100%;
  margin: auto;
}

.hn_images_flex{
  display: flex;
  justify-content: center;
  gap:20px;
  padding-bottom: 60px;
}
.hn_images_flex img {
  flex: 1;
  height: auto;
  max-width: 26%;
}

#hige_nayami img {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.8s ease, transform 0.8s ease;
}

#hige_nayami img.is-show {
  opacity: 1;
  transform: translateY(0);
}

.cta_spacer1{
  height: 160px;
}

@media screen and (max-width: 767px){

  .cta_spacer1{
    height: 100px;
  }

  .graph{
    background-color: #000;
  }

  #how .bg2 .relative{
   margin-bottom:40px;
  }

  #section_05{
   padding-bottom: 16vw;
  }

  .achievements_title img{
    width: 100%;
  }

  .achievements_slide img{
    width: 100%;
  }

  .achievements_note img{
    width: 100%;
  }

  #lp008d-3 img{
    width: 100%;
  }

  #how_ .section_title{
    margin-top: 0px;
    font-size:36px;
  }

  #yaglazer{
    display: block;
    width: 100%;
  }

  #how{
    background-color: #000;
  }

  #how .img_how02{
    width:90%;
  }
  #how .inner .caption{
    font-size:12px;
    padding: 30px 0px;
    margin:auto;
  }

  #how h2 img{
    padding:20px;
    border-bottom:1px solid #bba171;
    margin-bottom:20px;
  }

  #how .pc_flex .circle{
    width: 240px;
    height: 240px;
    margin: auto;
  }

  #how .pc_flex .text{
    width:100%;
  }

  #how .obi{
    height: 80px;
    padding: 10px 35px;
    text-align: left;
  }

  #how .bg2 .font_127_sp{
    font-size: 70px;
  }
  #how .bg2 .midashi{
    justify-content: center;
  }

  .bfSec .captionList li.current p{
    font-size: 14px;
  }
  .bfSec .captionList li p{
    font-size: 14px; 
  }

  #section_03 .section_title{
    font-size: 8.6vw;
  }
  #section_03 .section_title .is_strong{
    font-size: 8.6vw;
  }

  .point02 .sub_title{
    font-size:16px;
  }

  .point02 .title{
    font-size:7vw;
  }
}

img {
  width: 100%;
}