@charset "UTF-8";
@import"https://fonts.googleapis.com/css2?family=Barlow:wght@400&family=Noto+Sans+JP:wght@400;700;900&display=swap";
*, *::before, *::after{
  box-sizing:border-box;
  margin:0;
}
:where(html) {
  font-family: sans-serif;
  line-height: 1.25;
  overflow-wrap: break-word;
  -moz-tab-size: 2;
  -o-tab-size: 2;
  tab-size: 2;
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
/* ==============================================================================================
tengspeed202312
================================================================================================= */
.nw{
  display:inline-block;
}
#tengspeed202312{
  font-family:"Noto Sans JP","Hiragino Sans","Hiragino Kaku Gothic ProN",meiryo,sans-serif;
  font-size:1.4rem;
  font-weight:bold;
  /*-- デザインの1920pxでの見た目の確認用　消すとメインビジュアルと特典と各背景がウィンドウ幅いっぱい --*/
  /* max-width:1920px;
  /*-- デザインの1920pxでの見た目の確認用　消すとメインビジュアルと特典が各背景ウィンドウ幅いっぱい --*/
  margin:0 auto;
}
@media screen and (max-width:768px){
  #tengspeed202312 .pc{
    display:none;
  }
}
#tengspeed202312 .sect-block.-prekv {
  padding:1em;
  background-color:#1e2088;
  color:#f2eb3b;
  font-size:1.566rem;
  font-weight:bold;
}
#tengspeed202312 .sect-block.-prekv a {
  color:inherit;
}
@media screen and (min-width:769px){
  #tengspeed202312 .sect-block.-prekv {
    font-size:2rem;
  }
}
#tengspeed202312 #mv img{
  width:100%;
  vertical-align:bottom;
  margin:-1px 0;
}
#tengspeed202312 #mv_caution{
  margin:0;
  padding-top:1px;
  padding-bottom:7rem;
  list-style:none;
  background:linear-gradient(#009ffd, #007aff);
}
#tengspeed202312 #mv_caution p{
  width:1128px;
  max-width:67.60416%;
  margin:0 auto;
  line-height:1.4;
  font-size:1.4rem;
  font-weight:normal;
  color:#fff;
  padding:0 1.6rem 2rem;
}
/*--[ 2024/02 ]--*/
#tengspeed202312 #mv_caution p:last-child,
#tengspeed202312 #appeal #tab1 .val p.emphasize{
/*--[ 2024/02 ]--*/
  color:#FF2020;
  border:2px solid #f00;
  background-color:#fff;
  padding:1rem 1.6rem;
}
#tengspeed202312 #price_caution{
  color:#fff;
  line-height:2.142857;
  text-align:center;
  background-color:#3F4150;
}










/*--[ 2024/02 ]--*/
#tengspeed202312 #fix_navi{
  position:fixed;
  top:240px;
  right:-6px;
  margin:0;
  padding:5px 6px;
  z-index:110;
  border-radius:20px 0 0 20px;
  background:#FFE001;
  transition:.2s;
  box-shadow:-6px 5px 0 rgba(0, 0, 0, 30%);
}
#tengspeed202312 #fix_navi.hide{
  opacity:0;
}
#tengspeed202312 #fix_navi .btn_c{
  display:flex;
  align-items: center;
  width:66px;
  max-width:66px;
  min-width:auto;
  padding:25px 11px 50px 9px;
  color:#002EC2;
  font-size:2rem;
  line-height:1.14;
  font-weight:900;
  text-decoration:none;
  border-radius:20px 0 0 20px;
  border:3px solid #fff;
  border-right:none;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  letter-spacing:0.15em;
  background:#FFE001;
}
#tengspeed202312 #fix_navi .btn_c::after{
  content:'';
  position:absolute;
  top:auto;
  left:0;
  right:0;
  bottom:19px;
  display:block;
  width:0.8em;
  height:0.8em;
  margin:0 auto;
  border-top:3px solid #002EC2;
  border-right:3px solid #002EC2;
  -webkit-transform:rotate(135deg);
  transform:rotate(135deg);
}
#tengspeed202312 #appeal{
  background:url(../img/appeal_bg.png) center top no-repeat;
  background-size:cover;
  padding:80px 0;
}
@media screen and (max-width:768px){
  #tengspeed202312 .pc2{
    display:none;
  }
}
@media screen and (min-width:769px){
  #tengspeed202312 .sp{
    display:none;
  }
}
/*--[ tab change ]--*/
#tengspeed202312 #appeal .tab1_off,
#tengspeed202312 #appeal .tab2_on,
#tengspeed202312 #appeal.change .tab1_on,
#tengspeed202312 #appeal.change .tab2_off{
  display:none;
}
#tengspeed202312 #appeal.change .tab1_off,
#tengspeed202312 #appeal.change .tab2_on{
  display:block;
}
#tengspeed202312 #appeal.change #tab1{
  display:none;
}
#tengspeed202312 #appeal.change #tab2{
  display:block;
}
/*--[ tab index ]--*/
#tengspeed202312 #appeal .tab_index{
  max-width:1200px;
  margin:0 auto;
  padding:0 33px;
  display:flex;
}
#tengspeed202312 #appeal .tab_index div:nth-child(1),
#tengspeed202312 #appeal .tab_index div:nth-child(2){
  margin-right:10px;
}
/*--[ tab 1 ]--*/
#tengspeed202312 #appeal #tab1 .val{
  max-width:1200px;
  margin:0 auto;
  padding:0 30px 60px;
  background:linear-gradient(to right bottom, #0074ee, #01c0fa);
}
#tengspeed202312 #appeal #tab1 .val p{
  color:#fff;
  font-size:1.8rem;
  line-height:1.4;
  font-weight:normal;
}
#tengspeed202312 #appeal #tab1 .val p.emphasize{
  font-size:1.4rem;
}
#tengspeed202312 #appeal #tab1 .val p a{
  color:#fff;
}
#tengspeed202312 #appeal #tab1 .val .flex{
  background:none;
  margin-bottom:40px;
}
#tengspeed202312 #appeal #tab1 .val .flex .problem{
  flex:0 1 310px;
  margin-right:105px;
}
#tengspeed202312 #appeal #tab1 .val .flex .problem:last-child{
  margin-right:0;
}
#tengspeed202312 #appeal #tab1 .val .flex .problem p{
  font-size:2rem;
}
#tengspeed202312 #appeal #tab1 .val .flex .problem p sup{
  top:0.15em;/* for main.css 73*/
  font-size:0.75em;
  line-height:1;
}
#tengspeed202312 #appeal #tab1 .val p.emphasize.type2{
  margin-top:40px;
}
#tengspeed202312 #appeal #tab1 .val p.nobottom{
  margin-bottom:0;
}
/*--[ tab 2 ]--*/
#tengspeed202312 #appeal #tab2{
  display:none;
  position:relative;
}
#tengspeed202312 #appeal #tab2 .title{
  max-width:100%;
  margin:0 auto;
  display:flex;
  justify-content:center;
  z-index:10;
  position:absolute;
  top:30px;
  left:0;
  right:0;
}
#tengspeed202312 #appeal #tab2 .title::before,
#tengspeed202312 #appeal #tab2 .title::after{
  content:'';
  display:block;
  flex:1 1 100%;
}
#tengspeed202312 #appeal #tab2 .title::before{
  background:url(../img/appeal_tab2_title_l.png) right bottom no-repeat;
}
#tengspeed202312 #appeal #tab2 .title::after{
  background:url(../img/appeal_tab2_title_r.png) left bottom no-repeat;
}
#tengspeed202312 #appeal #tab2 .val{
  max-width:1200px;
  margin:0 auto;
  background:url(../img/appeal_tab2_bg.png) center top no-repeat;
  background-size:cover;
  padding:190px 4px 28px 44px;
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  box-shadow:6px 0 8px 0 rgba(0, 0, 0, 25%);
  list-style-type:none;
}
#tengspeed202312 #appeal #tab2 .val li{
  flex:0 1 33.333333%;
  position:relative;
  padding:0 23px 0 0;
  margin:0 0 20px 0;
}
#tengspeed202312 #appeal #tab2 .val li .content p{
  position:absolute;
  top:228px;
  font-size:1.8rem;
  line-height:1.45;
  font-weight:normal;
  padding:12px 32px 12px 12px;
}
/*--[ PC 2 ]--*/
@media screen and (max-width:1330px){
  #tengspeed202312 #appeal{
    padding:6.015037vw 0;
  }
/*--[ tab index ]--*/
  #tengspeed202312 #appeal .tab_index{
    padding:0 2.481203vw;
    margin:0 4.887218vw;
  }
  #tengspeed202312 #appeal .tab_index div:nth-child(1),
  #tengspeed202312 #appeal .tab_index div:nth-child(2){
    margin-right:0.751879vw;
  }
/*--[ tab 1 & 2]--*/
  #tengspeed202312 #appeal .tab{
    padding:0 4.887218vw;
  }
/*--[ tab 1 ]--*/
  #tengspeed202312 #appeal #tab1 .val{
    padding:0 2.255639vw 4.511278vw;
  }
  #tengspeed202312 #appeal #tab1 .val p{
    font-size:1.353383vw;
  }
  #tengspeed202312 #appeal #tab1 .val .flex{
    margin-bottom:3.007518vw;
  }
  #tengspeed202312 #appeal #tab1 .val .flex .problem{
    margin-right:7.894736vw;
  }
  #tengspeed202312 #appeal #tab1 .val .flex .problem p{
    font-size:1.503759vw;
  }
  #tengspeed202312 #appeal #tab1 .val p.emphasize.type2{
    margin-top:3.007518vw;
  }
/*--[ tab 2 ]--*/
  #tengspeed202312 #appeal #tab2 .title{
    top:2.255639vw;
  }
  #tengspeed202312 #appeal #tab2 .val{
    padding:14.285714vw 0.300751vw 2.105263vw 3.30827vw;
  }
  #tengspeed202312 #appeal #tab2 .val li{
    padding:0 1.729323vw 0 0;
    margin:0 0 1.503759vw 0;
  }
  #tengspeed202312 #appeal #tab2 .val li .content p{
    top:17.142857vw;
    font-size:1.353383vw;
    padding:0.902255vw 2.406015vw 0.902255vw 0.902255vw;
  }
}
@media screen and (max-width:768px){
  #tengspeed202312 #fix_navi{
    top:220px;
    right:-4px;
    padding:4px;
    border-radius:4px 0 0 4px;
    box-shadow:-4px 3px 0 rgba(0, 0, 0, 30%);
  }
  #tengspeed202312 #fix_navi .btn_c{
    width:3.3em;
    max-width:3.3em;
    padding:13px 6px 30px 0;
    font-size:2.4rem;
    font-weight:bold;
    border-radius:4px 0 0 4px;
    border:2px solid #fff;
    border-right:none;
    letter-spacing:0.1em;
  }
  #tengspeed202312 #fix_navi .btn_c::after{
    right:4px;
    bottom:10px;
    width:0.55em;
    height:0.55em;
    border-top:2px solid #002EC2;
    border-right:2px solid #002EC2;
  }
  #tengspeed202312 #appeal{
    background:url(../img/appeal_bg_sp.png) center top no-repeat;
  }
  #tengspeed202312 #appeal img{
    width:100%;
  }
/*--[ tab index ]--*/
  #tengspeed202312 #appeal .tab_index{
    padding:0 5.733333vw;
    margin:0;
  }
  #tengspeed202312 #appeal .tab_index div{
    flex:1 1 50%;
  }
  #tengspeed202312 #appeal .tab_index div:nth-child(1),
  #tengspeed202312 #appeal .tab_index div:nth-child(2){
    margin-right:2px;
  }
/*--[ tab 1 & 2]--*/
  #tengspeed202312 #appeal .tab{
    padding:0 4vw;
  }
/*--[ tab 1 ]--*/
  #tengspeed202312 #appeal #tab1 .val{
    padding:0 2.266666vw 6.666666vw;
  }
  #tengspeed202312 #appeal #tab1 .val .flex{
    display:block;
  }
  #tengspeed202312 #appeal #tab1 .val .flex .problem{
    margin-right:0;
    margin-bottom:6.666666vw;
  }
  #tengspeed202312 #appeal #tab1 .val p,
  #tengspeed202312 #appeal #tab1 .val .flex .problem p{
    font-size:3.2vw;
  }
  #tengspeed202312 #appeal #tab1 .val p.emphasize{
    font-size:3.46666vw;
  }
  #tengspeed202312 #appeal #tab1 .val .flex .problem p{
    margin-left:36.533333vw;
    margin-top:-24.266666vw;
    padding-right:4vw;
  }
/*--[ tab 2 ]--*/
  #tengspeed202312 #appeal #tab2 .title{
    top:7.2vw;
  }
  #tengspeed202312 #appeal #tab2 .title::before,
  #tengspeed202312 #appeal #tab2 .title::after{
    display:none;
  }
  #tengspeed202312 #appeal #tab2 .val{
    display:block;
    background:url(../img/appeal_tab2_bg_sp.png) center top no-repeat;
    background-size:cover;
    padding:30.666666vw 0 5.2vw;
  }
  #tengspeed202312 #appeal #tab2 .val li{
    padding:0 1.733333vw 0 2.666666vw;
    margin:0 0 5.333333vw 0;
  }
  #tengspeed202312 #appeal #tab2 .val li .content p{
    top:auto;
    bottom:0;
    font-size:3.466666vw;
    padding:5.6vw 7vw 4vw 6.666666vw;
    text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
                -1px 1px 0 #FFF, 1px -1px 0 #FFF,
                0px 1px 0 #FFF,  0-1px 0 #FFF,
                -1px 0 0 #FFF, 1px 0 0 #FFF;
  }
  #tengspeed202312 #appeal #tab2 .val li .content p{
  }
}
@media screen and (max-width:639px){
  #tengspeed202312 #fix_navi{
    right:-2px;
    padding:2px;
  }
  #tengspeed202312 #fix_navi .btn_c{
    padding:10px 5px 20px 0;
    font-size:1.333333rem;
  }
}
/*--[ 2024/02 ]--*/










#tengspeed202312 #choice{
  background:url(../img/choice_bg.png) center top no-repeat;
  background-size:cover;
}
#tengspeed202312 #choice picture img{
  display:block;
  margin:0 auto;
}
#tengspeed202312 #choice form{
  width:1042px;
  max-width:67.60416%;
  max-width:94.79166%;
  margin:0 auto;
}
#tengspeed202312 .feature-form > .conditions{
  padding:0 10px;
}
#tengspeed202312 .feature-form > .conditions > .condition .title{
  padding:.25em .5em;
  text-align:left;
}
#tengspeed202312 .feature-form > .conditions > .condition .item{
  position:relative;
  display:block;
  padding:20px 26px;
  margin:2px 0;
  background-color:#fff;
  font-size:2.238rem;
}
@media screen and (max-width:768px){
  #tengspeed202312 #mv_caution{
    line-height:1.5;
    padding-bottom:8vw;
    background:linear-gradient(#0085ff 5%, #0063ff 30%);
  }
  #tengspeed202312 #mv_caution p{
    max-width:94.79166%;
    font-size:3.46666vw;
    padding:0 1rem 1rem;
  }
  #tengspeed202312 #mv_caution p:last-child,
  #tengspeed202312 #appeal #tab1 .val p.emphasize{
    padding:0.5rem;
  }
}
@media screen and (min-width:769px){
  #tengspeed202312 .feature-form > .conditions > .condition .item{
    padding:18px 12px;
    margin:0;
    font-size:2rem;
  }
}
@media screen and (max-width:768.98px){
  #tengspeed202312 .feature-form > .conditions > .condition .item i{
    display:block;
    float:left;
    width:10px;
    height:1px;
    transition:all .4s;
  }
  #tengspeed202312 .feature-form > .conditions >.condition .item i::before{
    position:absolute;
    top:0;
    left:0;
    display:block;
    width:100%;
    height:100%;
    content:"";
    background-color:rgba(0,0,0,0);
    transition:all.4s;
  }
  #tengspeed202312 .feature-form > .conditions > .condition .item input:checked+i{
    width:0;
  }
  #tengspeed202312 .feature-form > .conditions > .condition .item input:checked+i::before{
    background-color:#9dd8fa;
  }
}
@media screen and (min-width:769px){
  #tengspeed202312 .feature-form > .conditions > .condition{
    display:flex;
  }
  #tengspeed202312 .feature-form > .conditions > .condition > .title{
    display:flex;
    flex:0 0 320px;
    align-items:center;
    margin:2.5px;
  }
  #tengspeed202312 .feature-form > .conditions > .condition .content{
    display:flex;
    flex:1 0 300px;
    flex-wrap:wrap;
    margin:2.5px;
    background-color:#fff;
  }
}
#tengspeed202312 .title.-type3{
  font-size:2rem;
  color:#fff;
  background-color:#0085FF;
}
#tengspeed202312 .check-unit > [type=checkbox],
#tengspeed202312 .check-unit > [type=radio]{
  display:none;
}
#tengspeed202312 .check-unit > span{
  position:relative;
  display:flex;
  gap:0 .5em;
  align-items:center;
}
#tengspeed202312 .check-unit > span::before{
  width:26px;
  height:26px;
  content:"";
  border:2px solid #bbb;
  transition:all .4s;
}
#tengspeed202312 .check-unit > span::after{
  position:absolute;
  content:"";
  transition:all .4s;
}
#tengspeed202312 .check-unit > span::before{
  background-color:#fff;
  border-radius:20%;
}
#tengspeed202312 .check-unit > span::after{
  top:calc(50% - 10.8333333333px);
  left:8.125px;
  width:10.4px;
  height:15.6px;
  border:solid rgba(0,0,0,0);
  border-width:0 4px 4px 0;
  transform:rotate(45deg);
}
#tengspeed202312 .check-unit > :checked~span::before{
  border-color:#1a3e89;
}
#tengspeed202312 .check-unit > :checked~span::before{
  background-color:#1a3e89;
}
#tengspeed202312 .check-unit > :checked~span::after{
  border-color:#fff
}
#tengspeed202312 .check-unit span{
  line-height:1;
}
#tengspeed202312 .check-unit span em{
  font-style:normal;
  font-weight:normal;
  line-height:1;
  transform:translateY(-1px);
}
#tengspeed202312 .feature-form > .hitCount{
  margin:7vw auto 1vw;
  text-align:center;
  font-size:5.333333vw;
}
@media screen and (min-width:769px){
  #tengspeed202312 .feature-form > .hitCount{
    margin:40px auto 10px;
    font-size:4.8rem;
  }
}
#tengspeed202312 .feature-form > .hitCount > .count{
  display:inline-block;
  font-weight:bold;
  color:#fff;
  text-shadow:0px 4px 4px rgba(0,0,0,0.25);
}
#tengspeed202312 .feature-form > .hitCount > .count span{
  font-size:4.533333vw;
  text-shadow:none;
}
@media screen and (min-width:769px){
  #tengspeed202312 .feature-form > .hitCount > .count span{
    font-size:2.6rem;
  }
}
#tengspeed202312 .feature-form > .hitCount > .count strong{
  color:#FFF100;
  font-size:9.333333vw;
  line-height:1;
}
@media screen and (min-width:769px){
  #tengspeed202312 .feature-form > .hitCount > .count strong{
    font-size:8rem;
  }
}
#tengspeed202312 .button-unit{
  position:relative;
  display:block;
  width:88%;
  padding:0.75em;
  margin:0 auto;
  font-size:4.533333vw;
  font-weight:bold;
  color:#fff;
  text-align:center;
  text-decoration:none;
  background:none;
  background-color:#FF9330;
  border:none;
  border-radius:13.33333vw;
  box-shadow:0 0.266666vw 1.33333vw 0 rgba(0,0,0,0.4);
}
#tengspeed202312 .button-unit.-search{
  box-shadow:0 0.53333vw 0.53333vw 0 rgba(0,0,0,0.25);
}
#tengspeed202312 .button-unit.-search::after{
  position:absolute;
  top:50%;
  right:4.53333vw;
  display:block;
  width:5.06666vw;
  height:5.2vw;
  content:"";
  background-image:url(../img/icon_search.png);
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  transform:translateY(-50%);
}
#tengspeed202312 .button-unit.-detail{
  padding:0.25em;
  font-size:4vw;
  background-color:#FF5D00;
  border:0.8vw solid #fff;
}
@media screen and (min-width:769px){
  #tengspeed202312 .button-unit{
    display:block;
    padding:1em;
    font-size:3rem;
    width:100%;
    max-width:763px;
    border:5px solid #fff;
  }
  #tengspeed202312 .button-unit{
    border-radius:100px;
    box-shadow:0 2px 10px 0px rgba(0,0,0,0.4);
  }
  #tengspeed202312 .button-unit.-search{
    box-shadow:0 4px 4px 0px rgba(0,0,0,0.25);
  }
  #tengspeed202312 .button-unit.-search::after{
    right:34px;
    width:38px;
    height:39px;
  }
  #tengspeed202312 .button-unit.-detail{
    font-size:2.4rem;
    max-width:462px;
    border:6px solid #fff;
  }
}
#tengspeed202312 .link{
  text-align:center;
  padding:4vw 0 5.333333vw;
}
#tengspeed202312 .link a{
  color:#fff;
  font-size:3.466666vw;
  font-weight:normal;
}
#tengspeed202312 #choice p{
  color:#fff;
  line-height:1.4;
  font-size:3.46666vw;
  font-weight:normal;
  padding:0 1.8rem 5rem;
  margin:0;
}
#tengspeed202312 #choice p a{
  color:#fff;
}
@media screen and (min-width:769px){
  #tengspeed202312 .link{
    padding:2.4rem 0 4rem;
  }
  #tengspeed202312 .link a{
    font-size:2.2rem;
  }
  #tengspeed202312 #choice p{
    font-size:1.4rem;
  }
}
#tengspeed202312 #search_result_wrapper{
  background:url(../img/search_result_bg.png) center top no-repeat;
  background-size:cover;
}
#tengspeed202312 .search-result{
  max-width:94.79166%;
  margin:0 auto 40px;
  padding-top:12vw;
}
#tengspeed202312 .result-item{
  margin-bottom:4vw;
}
#tengspeed202312 .result-item .area{
  padding:1.6vw;
  background-color:#fff;
  border-radius:1.06666vw;
}
@media screen and (min-width:769px){
  #tengspeed202312 .search-result{
    width:100%;
    max-width:1256px;
    display:flex;
    flex-wrap:wrap;
    margin:0 auto 40px;
    padding:100px 28px 0;
  }
  #tengspeed202312 .result-item{
    flex:0 0 calc(50% - 14px);
  }
  #tengspeed202312 .result-item .area{
    padding:10px;
    border-radius:8px;
  }
  #tengspeed202312 .result-item:nth-child(odd){
    margin:0 14px 28px 0;
  }
  #tengspeed202312 .result-item:nth-child(even){
    margin:0 0 28px 14px;
  }
}
#tengspeed202312 .flex{
  display:flex;
  background-color:#DAEDFF;
  margin-bottom:10px;
}
#tengspeed202312 .flex.title.-type3{
  align-items:center;
  padding:0.933333vw 1.333333vw 0.933333vw 0.533333vw;
  border-radius:0.8vw 0.8vw 0 0;
}
#tengspeed202312 .flex h4{
  flex:1 1 365px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:4.2vw;
  line-height:1.2;
  text-align:center;
  padding-right:0.533333vw;
}
#tengspeed202312 .flex h4 small{
  font-size:3.55384vw;
}
#tengspeed202312 .flex h4 .long small{
  font-size:2.93333vw;
}
#tengspeed202312 .flex .logo{
  flex:1 1 321px;
}
#tengspeed202312 .flex .logo img{
  width:100%;
}
@media screen and (min-width:769px){
  #tengspeed202312 .flex.title.-type3{
    padding:7px 10px 7px 4px;
    border-radius:5px 5px 0 0;
  }
  #tengspeed202312 .flex h4{
    flex:1 1 325px;
    font-size:2.6rem;
    padding-right:4px;
  }
  #tengspeed202312 .flex h4 small{
    font-size:2.2rem;
  }
  #tengspeed202312 .flex h4 .long small{
    font-size:2rem;
  }
  #tengspeed202312 .flex .logo{
    flex:1 1 241px;
  }
}
#tengspeed202312 .flex > .title.-type3{
  display:flex;
  flex-direction:column;
  flex:0 0 12.666666vw;
  align-items:center;
  justify-content:center;
  text-align:center;
  line-height:1;
  font-size:4vw;
}
#tengspeed202312 .flex > .content{
  flex:1 1 591px;
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  line-height:1.1;
  text-align:center;
}
@media screen and (min-width:769px){
  #tengspeed202312 .flex > .title.-type3{
    flex:0 0 78px;
    font-size:2rem;
  }
  #tengspeed202312 .flex > .content{
    flex:1 1 488px;
  }
}
#tengspeed202312 .monthly-price > .content .regPrice{
  flex:1 1 251px;
  font-size:4vw;
  font-weight:normal;
}
/* デザインにサンプル無し */
#tengspeed202312 .monthly-price > .content .regPrice:last-child{
  padding:4.6vw 0;
  font-size:4.6vw;
}
#tengspeed202312 .monthly-price > .content .regPrice small{
  display:inline-block;
  font-size:3.37333vw;
}
/* デザインにサンプル無し */
@media screen and (min-width:769px){
  #tengspeed202312 .monthly-price > .content .regPrice{
    flex:1 1 209px;
    font-size:2.2rem;
  }
/* デザインにサンプル無し */
  #tengspeed202312 .monthly-price > .content .regPrice:last-child{
    min-height:90px;
    padding:1rem 0;
    font-size:3rem;
    display:flex;
    align-items:center;
    justify-content:center;
  }
  #tengspeed202312 .monthly-price > .content .regPrice small{
    font-size:2.2rem;
  }
/* デザインにサンプル無し */
}
#tengspeed202312 .monthly-price > .content .spPrice_box{
  flex:1 1 336px;
  height:100%;
  color:#FF5D00;
  padding-bottom:5px;
  padding-left:30px;
  background:url(../img/spPrice_box_bg.png) left center no-repeat #fff;
  background-size:auto 100%;
}
#tengspeed202312 .monthly-price > .content .spPrice{
  font-size:5.33333vw;
  background:linear-gradient(#fff 60%, #FFE000 60%, #FFE000 95%, #fff 95%);
}
#tengspeed202312 .monthly-price > .content .spPrice b{
  font-size:12vw;
}
#tengspeed202312 .monthly-price > .content .spPrice b small{
  font-size:0.82em;
}
@media screen and (min-width:1191px){
  #tengspeed202312 .monthly-price > .content .spPrice{
    font-size:3rem;
  }
  #tengspeed202312 .monthly-price > .content .spPrice b{
    font-size:7rem;
  }
}
@media screen and (min-width:769px) and (max-width:1190px){
  #tengspeed202312 .monthly-price > .content .spPrice{
    font-size:2.5210vw;
  }
  #tengspeed202312 .monthly-price > .content .spPrice b{
    font-size:5.88235vw;
  }
}
@media screen and (min-width:769px){
  #tengspeed202312 .monthly-price > .content .spPrice_box{
    flex:1 1 279px;
  }
}
#tengspeed202312 .discount .flex{
  width:100%;
  align-items:center;
  justify-content:center;
  margin-bottom:0;
}
#tengspeed202312 .discount .point{
  line-height:1.3;
  padding:0 2.66666vw 2.66666vw;
}
#tengspeed202312 .discount .point .price_box{
  text-align:center;
  margin-bottom:5px;
}
#tengspeed202312 .discount .point .flex{
  align-items:center;
  justify-content:center;
}
#tengspeed202312 .discount .point .price{
  font-size:5.33333vw;
  color:#FF5D00;
  background:linear-gradient(transparent 60%, #FFE000 60%, #FFE000 95%, transparent 95%);
}
#tengspeed202312 .discount .point .price b{
  font-size:9.86666vw;
}
/* デザインにサンプル無し */
#tengspeed202312 .discount .point .price small{
  font-size:4.3228vw;
}
/* デザインにサンプル無し */
#tengspeed202312 .discount .point p{
  font-size:3.46666vw;
  font-weight:normal;
  margin:0;
}
#tengspeed202312 .discount .point p:first-child{
  padding-top:2.66666vw;
}
/*デザインにサンプル無し*/
#tengspeed202312 .discount .point p.sml{
  font-size:3.2vw;
}
/*デザインにサンプル無し*/
@media screen and (min-width:769px){
  #tengspeed202312 .discount .point{
    padding:30px 16px;
  }
  #tengspeed202312 .discount .point .price_box{
    margin-bottom:10px;
  }
  #tengspeed202312 .discount .point .price{
    font-size:3.4rem;
  }
  #tengspeed202312 .discount .point .price b{
    font-size:5.6rem;
  }
  #tengspeed202312 .discount .point .price small{
    font-size:2.8rem;
  }
  #tengspeed202312 .discount .point p{
    font-size:2.2rem;
  }
  #tengspeed202312 .discount .point p.sml{
    font-size:2rem;
  }
}
#tengspeed202312 .feature-list{
  display:flex;
  width:100%;
  padding:4px 2.66666vw;
  border-radius:4px;
  list-style-type:none;
  margin:0;
}
@media screen and (min-width:769px){
  #tengspeed202312 .feature-list{
    padding:4px 20px;
  }
}
#tengspeed202312 .feature-list .item{
  flex:1 1 20%;
  padding-top:20%;
  position:relative;
  margin:0;
}
#tengspeed202312 .feature-list .item::before{
  position:absolute;
  top:5%;
  left:5%;
  display:block;
  width:90%;
  height:90%;
  content:"";
  background-color:#c0bfbf;
  background-repeat:no-repeat;
  background-position:center;
  background-size:85%;
  border-radius:50%;
}
#tengspeed202312 .feature-list .item.-initialCost::before{
  background-image:url(/10g_speed/assets/img/icon_initialCost.png);
}
#tengspeed202312 .feature-list .item.-discount::before{
  background-image:url(/10g_speed/assets/img/icon_discount.png);
}
#tengspeed202312 .feature-list .item.-cashback::before{
  background-image:url(/10g_speed/assets/img/icon_cashback.png);
}
#tengspeed202312 .feature-list .item.-point::before{
  background-image:url(/10g_speed/assets/img/icon_point.png);
}
#tengspeed202312 .feature-list .item.-period::before{
  background-image:url(/10g_speed/assets/img/icon_period.png);
}
#tengspeed202312 .feature-list .item.-is-on.-initialCost::before{
  background-color:#5fb7e6;
}
#tengspeed202312 .feature-list .item.-is-on.-discount::before{
  background-color:#ea538f;
}
#tengspeed202312 .feature-list .item.-is-on.-cashback::before{
  background-color:#90c43f;
}
#tengspeed202312 .feature-list .item.-is-on.-point::before{
  background-color:#9f73cd;
}
#tengspeed202312 .feature-list .item.-is-on.-period::before{
  background-color:#f7a900;
}
#tengspeed202312 .feature-list > .item > span{
  position:absolute !important;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(1px, 1px, 1px, 1px);
}
#tengspeed202312 .description{
  font-size:3.46666vw;
  font-weight:normal;
  line-height:1.3;
}
#tengspeed202312 .description p{
  margin:0;
}
#tengspeed202312 .description .caution{
  margin:6vw 0 3.6vw;
}
#tengspeed202312 .description .caution a::after{
  display:inline-block;
  width:.9em;
  height:.9em;
  margin-left:.5em;
  content:"";
  background-image: url(/10g_speed/assets/img/icon_extlink.png);
  background-position:center;
  background-size:contain;
  transform:translateY(0.125em)
}
@media screen and (min-width:769px){
  #tengspeed202312 .description{
    font-size:2.2rem;
  }
  #tengspeed202312 .description .caution{
    margin:10px 0 15px;
  }
}
#tengspeed202312 .goDetail:last-child{
  padding-bottom:6.66666vw;
}
@media screen and (min-width:769px){
  #tengspeed202312 .goDetail:last-child{
    padding-bottom:35px;
  }
}
#tengspeed202312 .additional {
  font-size:3.2vw;
  line-height:1.2;
  font-weight:normal;
  text-align:center;
  margin-top:0.6vw;
}
@media screen and (min-width: 769px) {
  #tengspeed202312 .additional {
    margin-top:10px;
    font-size:2rem;
  }
}
#tengspeed202312 .sect-block > .content{
  padding:0 10px;
  max-width:94.79166%;
  margin-right:auto;
  margin-left:auto;
}
@media screen and (min-width:769px){
  #tengspeed202312 .sect-block > .content{
    padding:0 40px;
    width:100%;
    max-width:1042px;
    margin-right:auto;
    margin-left:auto;
  }
}
#tengspeed202312 .splmnt-link{
  display:block;
  padding:.5em 1em;
  font-size:3.733333vw;
  font-weight:bold;
  line-height:1.25;
  text-align:center;
  background-color:#fff;
  border:solid 3px currentcolor;
  text-decoration:none;
}
#tengspeed202312 .splmnt-link.-cross{
  color:#f39702;
}
#tengspeed202312 .splmnt-link.-others{
  color:#53ae38;
  margin-top:27px;
  margin-bottom:40px;
}
@media screen and (min-width:769px){
  #tengspeed202312 .splmnt-link{
    max-width:initial;
    padding:1em;
    font-size:2.2rem
  }
  #tengspeed202312 .splmnt-link.-others{
    margin-top:40px;
    margin-bottom:40px;
  }
}
.modal-wrapper{
  position:fixed;
  top:0;
  right:0;
  bottom:0;
  left:0;
  z-index:999;
  display:flex;
  align-items:center;
  justify-content:center;
}
.modal-wrapper:not(:target){
  visibility:hidden;
  opacity:0;
  transition:opacity .3s, visibility .3s;
}
.modal-wrapper:target{
  visibility:visible;
  opacity:1;
  transition:opacity .4s, visibility .4s;
}
.modal-wrapper .modal-window{
  position:relative;
  z-index:20;
  max-width:600px;
  padding:60px 20px;
  margin:40px;
  background:#fff;
  border:solid 8px #d1e5f3;
}
@media screen and (min-width: 769px){
  .modal-wrapper .modal-window{
    max-width:1200px;
    padding:60px clamp(60px, -154.11px + 27.84vw, 180px)
  }
}
.modal-wrapper .modal-window .modal-content > .title, .modal-wrapper .modal-window .modal-content .content{
  color: #d71618;
}
.modal-wrapper .modal-close{
  position:absolute;
  top:.5em;
  right:.5em;
  z-index:20;
  color:#000;
  text-decoration:none;
  font-size:1.455rem;
}
.modal-overlay{
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  left:0;
  z-index:10;
  background:rgba(0, 0, 0, .8);
}
.sticky-area{
  position:sticky;
  bottom:0;
  left:0;
  padding:.5em;
  color:#fff;
  text-align:center;
  background-color:rgba(71,71,71,.85);
  font-size:clamp(1.1rem,.14rem + 3vw,1.4rem);
}

#threestep {
  text-align: center;
  background-image: url(../img/threestep_bg.jpg);
  background-position: center center;
  background-size: cover;
}
#threestep .image img {
  max-height: 100vw;
  width: auto;
  max-width: initial;
}
#threestep .txt {
  margin: auto;
  color: #fff;
  padding: 1em 1em 3em;
  text-align: left;
  max-width: 1260px;
}
#threestep .txt p {
  font-size: 3.2vw;
  font-weight: normal;
  line-height: 1.4;
}
@media screen and (min-width: 769px) {
  #threestep .txt p {
    font-size: 1.6rem;
  }
	#threestep .txt {
		padding: 2em 1em 5em;
	}
}

.scroll-hint-text {
  font-size: 1.4rem;
}

.scroll-hint-icon {
  top: calc(50% - 50px);
  left: calc(50% - 100px);
  width: 200px;
  height: auto;
  border-radius: 10px;
  padding: 60px 20px 20px;
}
.scroll-hint-icon::before {
  width: 80px;
  height: 80px;
}
.scroll-hint-icon::after {
  width: 80px;
  height: 30px;
  top: 20px;
  left: 50%;
  background-size: contain;
  margin-left: -40px;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
  animation: scroll-hint-appear 1.2s linear;
  animation-iteration-count: infinite;
}
