@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 {
/*--[ 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 ]--*/
@media screen and (max-width:768px){
  #tengspeed202312 .pc2{
    display:none;
  }
}
@media screen and (min-width:769px){
  #tengspeed202312 .sp{
    display:none;
  }
}
@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 {
    padding:0.5rem;
  }
}
#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;
  }
}

.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;
}

.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);
}
