@charset "UTF-8";

@media screen and (max-width: 820px) {
html, body {
  overflow-x: hidden;
  padding-top: 30px !important;
}

body {
  padding-bottom: 63px;
}

.spBr{
  display: block;
}



/*header*/

body > header > div > div > a > img{
  height: 30px;
}

.btn-line,
.btn-trial{
  display: none !important;
}

.d-flex.gNav{
  display: none !important;
}

/*hero*/

#hero,.video-background {
  height: 65vh;
}


.hero-badge{
  width: 90%;
}

.hero-badge-list img{
  max-width: 100px;
}

.hero-campaign{
  width: 80%;
  bottom: 60px;
}

.hero-badge{
    top: 50px;
    left: 0;
    width: 100%;
    text-align: center;
  }

#topCatch{
  font-size: 20px;
}

  #side-badge{
    top: 120px;
    left: 0;
    right: auto;
    width: 100%;
  }


  #side-badge ul{
    display: flex;
    -webkit-justify-content: center;
            justify-content: center;
         flex-wrap: wrap;
    gap:20px;
  }
  #side-badge ul li{
width: 100px;
height: 100px;
}
.hero-badge-list img{
  max-width: 60px;
}

#bottom-catch ul li{
  font-size: 14px;
  margin-bottom: 5px;
}

#bottomCatch{
  font-size: 20px;
}

#bottom-catch ul{
  gap:5px;
}

#bottom-catch ul li{
  height: 15px;
}

ul.logo-list{
  padding-top: 0 !important;
}

/* キャンペーン */
.excerpt{
  display: none;
}

.campaign-item{
  list-style-type: none;
  margin: 0;
  margin-bottom: 30px;
}

.campaign-card{
  display: none;
}

.campaign-list .title{
  display: none;
}

.list-item .date{
  display: block;
}

/* feature */
.featureList li{
  font-size: 0.8rem;
}

.featureList li i{
  font-size: 1.4rem;
}

/* google 口コミ */

.gmb-reviews-slider{
  padding: 0;
  padding: 10px;
}

.gmb-reviews-slider .gmb-review{
  margin: 0;
}

/* インストラクター */
/*.staff-card-wrap{
  width: 100%;
  padding: 20px;
}*/
/*.staff-card {
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
}*/

.score-badge .score-num{
  font-size: 2rem;
  line-height: 1;
}

.score-badge{
  padding: 0;
  left: 5px;
}

.score-badge .score-label{
  font-size: 0.5rem;
  white-space: nowrap;
}


/* stiky */

.sticky-btn.btn–tel{
  display: none !important;
}

.sticky-cta{
  padding: 0;
}

.sticky-cta .sticky-btn{
  margin: 0;
  -webkit-border-radius: 0;
          border-radius: 0;
}

.sticky-cta-sp{
  display: block;
  position: fixed;
  bottom: 80px;
  right: 20px;
  z-index: 9999;
}

/* ボタン共通 */
.sticky-cta-sp a {
  display: block;
  background: #001F6E;
  width: 60px;
  height: 60px;
  text-align: center;
  line-height: 60px;
  border-radius: 50%;
  border: 2px solid #fff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2); 
}

.sticky-cta-sp a span{
  display: block;
  font-size: 0.7rem;
  font-weight: bold;
  line-height: 1;
  color: #FFF;
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%) translateY(0%);
}

.sticky-cta-sp a i{
  color: #FFF;
  line-height: 1;
  position: absolute;
  top: 40%;
  left: 50%;
  font-size: 1.4rem;
  transform: translateX(-50%) translateY(-50%);
  
}


.visitor-table th,
.visitor-table td{
  display: block;
  width: 100% !important;
}

.table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.table-scroll table {
  min-width: 600px; /* 必要に応じて調整 */
  width: 120%;
}

.plan-item{
  margin-bottom: 20px;
}

/* lesson */

.pgaTtl{
  padding-bottom: 40px;
}

.pgaWrap{
  display: block;
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
}

#reasonSlider,
  #voice-slider,
  #staff-card-slider,
  #flow-slider{
    width: 85%;
    margin: 0 auto;
  }

  .slick-arrow img{
    width: 20px;
    height: 20px;
  }

  .slick-next{
    right: -15px !important;
  }

  .slick-prev{
    left: -15px !important;
  }

  .voice-card,
  .flow-card{
    margin: 0;
  }

  #flow-slider > div.prevBtn.slick-arrow > button{
    left: -30px !important;
  }

  #flow-slider > div.nextBtn.slick-arrow > button{
    right: -27px !important;
  }

  .addVideo{
    width: calc(80%);
  }

  .flow-card{
    width: calc(80%);
    margin: 0 auto;
  }
  .flow-img{
    height: auto;
  }

  .comparison-table,.pricing-table{
    width: 120%;
  }

  .comparison-table-wrap{
    position: relative;
  }

  .swipe-hint,
  .swipe-hint02{
    position: absolute;
    display: block;
    top: 200px;
    left: 60px;
    z-index: 10;
    background: rgba(0,0,0,.6);
    color: #FFF;
    padding: 20px;
    font-weight: bold;
    -webkit-border-radius: 5px;
            border-radius: 5px;
    text-align: center;
    opacity: 1;
  transition: opacity 0.5s ease;
  pointer-events: none; 
  }

  .swipe-hint,
  .swipe-hint02{
    font-size: 1rem;
    font-weight: bold;
    text-align: center;
  }

  .swipe-hint img,
  .swipe-hint02 img{
    width: 120px;
    display: block;
    margin: 0 auto;
    margin-bottom: 20px;
    }

    .table-scroll{
      position: relative;
      overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  position: relative;
    }

    .cat-list{
      justify-content:center;
    }

    .cat-item{
      width: 80%;
    }

    #bread{
      padding-top: 0 !important;
    }

    .voice-photo{
      float: none;
      margin: 0 auto;
    }

    span.info{
      font-size: 12px;
    }

}