@charset "utf-8";
/* CSS Document */
/* top.css */


@media screen and (min-width:750px){
  #fv {
    margin: 0 auto 70px;
  }
}

/* -------------------------------------------------- */
/* cta  */
/* -------------------------------------------------- */

.cta {
  display: block;
  margin: 0 auto;
  max-width: 1000px;
}
.cta.cta--m0 {
  margin: 0 auto;
} 
.cta .cta__box {
  position: relative;
  display: block;
}
.cta .cta__btn {
  position: absolute;
  bottom: calc(84 / 680 * 100%);
  left: 0;
  width: 100%;
  box-sizing: border-box;
  padding: 0 calc((750 - 658) / 750 * 100% * 0.5);
}
.cta .cta__text {
  box-sizing: border-box;
  background-image: url(img/cta_timer_sp.png), url(img/cta_timer_bg_sp.png);
  background-repeat: no-repeat , repeat;
  -webkit-background-size: 100% auto;
  background-size: 100% auto;
  background-position: bottom left , top left;
  color: #111111;
  text-align: center;
  font-size: calc(36 / 26 * 1em);
  font-weight: 700;
  padding: calc(40 / 750 * 100%) calc(10 / 750 * 100%) calc(320 / 750 * 100%);
  letter-spacing: 0;
  position: relative;
  margin-top: -1px;
}
.cta .cta__timer {
  display: inline-block;
  margin-bottom: .5em;
  color: #e60000;
  font-size: calc(58 / 36 * 1em);
}
.cta .cta__timer span {
  font-size: calc(48 / 58 * 1em);
}
.cta p {
  margin: 0 auto;
}




@media screen and (min-width:750px){
  .cta {
    margin: clamp(0px,calc(100 / 750 * 100%),100px) auto  clamp(0px,calc(70 / 750 * 100%),70px);
  }
.cta .cta__btn {
  position: absolute;
  bottom: calc(50 / 480 * 100%);
  left: 0;
  width: 100%;
  box-sizing: border-box;
  padding: 0 calc((1000 - 916) / 1000 * 100% * 0.5);
}
.cta .cta__text {
  box-sizing: border-box;
  background-image: url(img/cta_timer_pc.png), url(img/cta_timer_bg_pc.png);
  background-repeat: no-repeat , repeat;
  -webkit-background-size: 100% auto;
  background-size: 100% auto;
  background-position: bottom left , top left;
  font-size: calc(30 / 16 * 1em);
  padding: 24px 10px calc(300 / 1000 * 100%);
  letter-spacing: 0.06em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -ms-align-items: baseline;
  align-items: baseline;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: center;
  word-break: break-all;
  white-space: nowrap;
  text-align: center;
  line-height: 1.3em;
  }
.cta .cta__timer {
  font-size: calc(46 / 30 * 1em);
  line-height: 1.3em;
  margin: 0 .5em 0 0;
}
.cta .cta__timer span {
  font-size: calc(36 / 46 * 1em);
}

.cta p {
  margin: 0 ;
}

}
/*---------*/
.no1 {
  margin: 0 auto 0;
}

@media screen and (min-width:750px){
  .no1 {
    background: url(img/no1_pc_bg.png) repeat-x top center;
  }
  .zenkoku {
    margin: 0 auto 80px;
    max-width: 1200px;
  }
  .trouble, .service , means {
    max-width: 1000px;
    margin: 0 auto;
  }
}

/*---------*/
/* tyousa */
.tyousa__box {
  display: block;
  box-sizing: border-box;
  margin: 0 auto;
  max-width: 1200px;
}
.tyousa__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -ms-align-items: stretch;
  align-items: stretch;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: center;
  flex-direction: column;
}
.tyousa__list .tyousa__item {
  display: block;
  position: relative;
  margin: 0;
}
.tyousa__list .tyousa__text {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  box-sizing: border-box;
  padding: calc(430 / 750 * 100%) calc(80 / 750 * 100%) calc(60 / 750 * 100%);
  color: #111111;
  text-align: left;
  line-height: calc(70 / 28 * 1em);
  font-size: clamp(14px,calc(28 / 750 * 100vw),28px);
  font-weight: 500;
  letter-spacing: 0;
}
.tyousa__list span {
 color: #e60000; 
}

@media screen and (min-width:750px){
  .flow {
    background: url(img/grid_bg.png) repeat-x bottom center;
    margin: 0 auto 50px;
  }
  
.tyousa {
  width: 100%;
  }
 .tyousa__box{
  width: 100%;
  }
.tyousa__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-align-items: stretch;
  align-items: stretch;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: center;
  flex-direction: row;
  width: 100%;
}
.tyousa__list .tyousa__item {
  display: block;
  position: relative;
  margin: 0;
  width: 50%;
}
.tyousa__list .tyousa__text {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  box-sizing: border-box;
  padding: calc(238 / 600 * 100%) calc(240 / 600 * 100%) calc(30 / 600 * 100%) calc(32 / 600 * 100%);
  color: #111111;
  text-align: left;
  line-height: calc(40 / 18 * 1em);
  font-size: clamp(9px,calc(18 / 1200 * 100vw),18px);
  font-weight: 500;
  letter-spacing: 0;
}
  .tyousa__list .tyousa__item:nth-child(odd) .tyousa__text {
    padding: calc(238 / 600 * 100%) calc(32 / 600 * 100%) calc(30 / 600 * 100%) calc(240 / 600 * 100%);
  }
  .free {
    margin: 50px auto;
  }
}
/* -------- */

.reason {
  position: relative;
  background: #e9f2ff;
}

.reason__item {
  max-width: 1200px;
  margin: 0 auto;
}
.reason__text {
  background-image: url(img/reason_sp_02.png);
  background-repeat: repeat-y;
  -webkit-background-size: 100% auto;
  background-size: 100% auto;
  background-position: 0 0;
  box-sizing: border-box;
  padding: calc(5 / 750 * 100%) calc(80 / 750 * 100%) calc(0 / 750 * 100%);
  color: #111111;
  text-align: left;
  line-height: calc(50 / 28 * 1em);
  font-size: clamp(14px,calc(28 / 750 * 100vw),28px);
  font-weight: 500;
  letter-spacing: 0.06em;
}
.reason__text span {
  color: #e60000;
  background: #FDFF45;
  background: -webkit-linear-gradient(0deg, rgba(253, 255, 69, 1) 0%, rgba(253, 255, 69, 1) 60%, rgba(253, 255, 69, 0) 61%, rgba(253, 255, 69, 0) 100%);
  background: -moz-linear-gradient(0deg, rgba(253, 255, 69, 1) 0%, rgba(253, 255, 69, 1) 60%, rgba(253, 255, 69, 0) 61%, rgba(253, 255, 69, 0) 100%);
  background: linear-gradient(0deg, rgba(253, 255, 69, 1) 0%, rgba(253, 255, 69, 1) 60%, rgba(253, 255, 69, 0) 61%, rgba(253, 255, 69, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FDFF45", endColorstr="#FDFF45", GradientType=0);
}
.reason__item--01 .reason__text {
  background-image: url(img/reason_sp_02.png);
}
.reason__item--02 .reason__text {
  background-image: url(img/reason_sp_05.png);
  padding-bottom: 0;
}
.reason__item--03 .reason__text {
  background-image: url(img/reason_sp_08.png);
}


.guarantee {
  display: block;
  position: relative;
  margin: 0 auto;
}
.guarantee__text {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  box-sizing: border-box;
  padding: calc(806 / 750 * 100%) calc(80 / 750 * 100%) calc(50 / 750 * 100%);
  color: #111111;
  text-align: left;
  line-height: calc(50 / 28 * 1em);
  font-size: clamp(14px,calc(28 / 750 * 100vw),28px);
  font-weight: 500;
  letter-spacing: 0.06em;
}
.guarantee__text span {
  color: #e60000;
  background: #FDFF45;
  background: -webkit-linear-gradient(0deg, rgba(253, 255, 69, 1) 0%, rgba(253, 255, 69, 1) 60%, rgba(253, 255, 69, 0) 61%, rgba(253, 255, 69, 0) 100%);
  background: -moz-linear-gradient(0deg, rgba(253, 255, 69, 1) 0%, rgba(253, 255, 69, 1) 60%, rgba(253, 255, 69, 0) 61%, rgba(253, 255, 69, 0) 100%);
  background: linear-gradient(0deg, rgba(253, 255, 69, 1) 0%, rgba(253, 255, 69, 1) 60%, rgba(253, 255, 69, 0) 61%, rgba(253, 255, 69, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FDFF45", endColorstr="#FDFF45", GradientType=0);
}


@media screen and (min-width:750px){
  .reason:before {
    content: "";
    display: block;
    width: 100%;
    height: 145px;
    background: #fff;
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
  }
  .reason__ttl {
    position: relative;
    z-index: 3;
  }
  
  .reason__text {
    background-image: url(img/reason_pc_02.png);
    background-repeat: repeat-y;
    -webkit-background-size: 100% 100%;
    background-size: 100% 100%;
    background-position: 0 0;
    box-sizing: border-box;
    padding: calc(5 / 1200 * 100%) calc(220 / 1200 * 100%) calc(20 / 1200 * 100%);
    color: #111111;
    text-align: left;
    line-height: calc(40 / 18 * 1em);
    font-size: clamp(9px,calc(18 / 1200 * 100vw),18px);
    font-weight: 500;
    letter-spacing: 0.06em;
    font-feature-settings: 'palt' 1;
  }
  .reason__item--01 .reason__text {
    background-image: url(img/reason_pc_02.png);
  }
  .reason__item--02 .reason__text {
    background-image: url(img/reason_pc_05.png);
    padding-bottom: 0;
  }
  .reason__item--03 .reason__text {
    background-image: url(img/reason_pc_08.png);
  }
  .guarantee {
    display: block;
    position: relative;
    margin: 80px auto;
    max-width: 1000px;
  }
  .guarantee__text {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    box-sizing: border-box;
    padding: calc(320 / 1000 * 100%) calc(90 / 1000 * 100%) calc(100 / 1000 * 100%) calc(490 / 1000 * 100%);
    color: #111111;
    text-align: left;
    line-height: calc(36 / 18 * 1em);
    font-size: clamp(9px,calc(18 / 1000 * 100vw),18px);
    font-weight: 500;
    letter-spacing: 0.06em;
    font-feature-settings: 'palt' 1;
  }
}

/* -------- */
.faq {
  background: #f9efe3;
  box-sizing: border-box;
  margin: 0 auto;
  padding:0 0 calc(60 / 750 * 100%);
}
.faq .faq__ttl {
  display: block;
  margin: 0 auto calc(40 / 750 * 100%);
}
.faq .faq__item {
  margin: calc(40 / 750 * 100%) auto;
  width: calc(690 / 750 * 100%);
  overflow: hidden;
  border-radius: clamp(15px,calc(30 / 750 * 100vw),30px);
}
.faq .faq__q {
  display: block;
  cursor: pointer;
  margin: 0 auto;
  background: #2a3db4 url(img/faq_q.svg) no-repeat;
  background-position: calc(30 / 690 * 100%) 50%;
  -webkit-background-size: calc(49 / 690 * 100%) auto;
  background-size: calc(49 / 690 * 100%) auto;
  min-height: clamp(0px,calc(144 / 750 * 100vw),144px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -ms-align-items: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: flex-start;
  box-sizing: border-box;
  padding: calc(10 / 750 * 100%) calc(90 / 750 * 100%) calc(20 / 750 * 100%) calc(130 / 750 * 100%);
  position: relative;
}
.faq .faq__qtext {
  font-size: clamp(17px,calc(34 / 750 * 100vw),34px);
  line-height: calc(52 / 34 * 1em);
  font-weight: 700;
  font-feature-settings: 'palt' 1;
  color: #fff;
}
.faq .faq__q:before {
  content: "";
  display: block;
  width: calc(50 / 690 * 100%);
  height: 2px;
  background: #fff;
  position: absolute;
  top: calc(50% - 1px);
  right: calc(30 / 690 * 100%);
  transition: all .5s ease;
  transform: rotate(0deg);
}
.faq .faq__q:after{
  content: "";
  display: block;
  width: calc(50 / 690 * 100%);
  height: 2px;
  background: #fff;
  position: absolute;
  top: calc(50% - 1px);
  right: calc(30 / 690 * 100%);
  transition: all .5s ease;
  transform: rotate(90deg);
}
.faq .faq__q.faq--open:before {
  content: "";
  transform: rotate(180deg);
}
.faq .faq__q.faq--open:after{
  content: "";
  transform: rotate(180deg);
}
.faq .faq__a {
  position: relative;
  margin: 0 auto;
  padding: 0;
}
.faq .faq__atext {
  background-color: #fff;
  position: relative;
  width: 100%;
  margin: 0;
  box-sizing: border-box;
  padding: calc(20 / 690 * 100%) calc(30 / 690 * 100%) calc(30 / 690 * 100%) calc(30 / 690 * 100%);
  font-size: clamp(14px,calc(28 / 750 * 100vw),28px);
  line-height: calc(50 / 28 * 1em);
  font-weight: 500;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.12em;
}
.faq__atext p span {
  font-weight: bold;
  color: #e60000;
}
.faq__att {
  font-size: calc(24 / 28 * 1em);
  font-weight: 300;
}


/* --------- */
.quotation {
  margin: 0 auto;
}
.quotation .quotation__area {
  display: block;
  margin: 0 auto;
}
.quotation .quotation__box {
  position: relative;
}
.quotation .quotation__textbox {
  position: relative;
  display: block;
  width: 100%;
}
.quotation__text {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  box-sizing: border-box;
  display: block;
  padding: calc(320 / 750 * 100%) calc(80 / 750 * 100%) calc(20 / 750 * 100%);
}



/* ---------------------------------------------------- */

@media screen and (min-width:750px){

  /* -------- */
  .faq {
    padding: 0px 0 10px;
    background: #f9efe3;
    position: relative;
  }
  .faq .faq__ttl {
    margin: 0 auto 90px;
    position: relative;
    z-index: 2;
  }
  .faq .faq__box {
    box-sizing: border-box;
    max-width: 900px;
    margin: 80px auto;
    width: calc(730 / 750 * 100%);
  }
  .faq .faq__item {
    margin: clamp(20px,calc(40 / 1000 * 100%),40px) auto;
    width: 100%;
    border-radius: 20px;
  }
  .faq .faq__q {
    background: #2a3db4 url(img/faq_q.svg) no-repeat;
    background-position: calc(40 / 900 * 100%) 50%;
    -webkit-background-size: calc(33 / 900 * 100%) auto;
    background-size: calc(33 / 900 * 100%) auto;
    min-height: 80px;
    padding: calc(20 / 900 * 100%) calc(100 / 900 * 100%) calc(20 / 900 * 100%) calc(100 / 900 * 100%);
  }
  .faq .faq__qtext {
    font-size: clamp(11px,calc(22 / 900 * 100vw),22px);
    line-height: calc(50 / 22 * 1em);
    font-weight: 700;
  }
  .faq .faq__q:before {
    content: "";
    display: block;
    width: calc(40 / 900 * 100%);
    height: 4px;
    background: #fff;
    position: absolute;
    top: calc(50% - 1px);
    right: calc(40 / 900 * 100%);
    transition: all .5s ease;
    transform: rotate(0deg);
  }
  .faq .faq__q:after{
    content: "";
    display: block;
    width: calc(40 / 900 * 100%);
    height: 4px;
    background: #fff;
    position: absolute;
    top: calc(50% - 1px);
    right: calc(40 / 900 * 100%);
    transition: all .5s ease;
    transform: rotate(90deg);
  }
  .faq .faq__q.faq--open:before {
    content: "";
    transform: rotate(180deg);
  }
  .faq .faq__q.faq--open:after{
    content: "";
    transform: rotate(180deg);
  }
  .faq .faq__a {
    position: relative;
    margin: 0 auto;
    padding: 0;
  }
  .faq .faq__atext {
    background-color: #fff;
    position: relative;
    width: 100%;
    margin: 0;
    box-sizing: border-box;
    padding: calc(20 / 900 * 100%) calc(40 / 900 * 100%) calc(30 / 900 * 100%) calc(40 / 900 * 100%);
    font-size: clamp(9px,calc(18 / 900 * 100vw),18px);
    line-height: calc(36 / 18 * 1em);
    font-weight: 500;
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.06em;
  }
  .faq__att {
    font-size: calc(14 / 18 * 1em);
    line-height: 1.75em;
  }
  
  
  /* --------- */
  .quotation {
    margin: 110px auto 50px;
    position: relative;
    
  }
  .quotation:before {
    content: "";
    display: block;
    width: 50%;
    height: 130px;
    background: #0b10a2;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
  }
  .quotation:after {
    content: "";
    display: block;
    width: 50%;
    height: 130px;
    background: #2436b1;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
  }
  .quotation .quotation__ttl {
    display: block;
    margin: 0 auto 50px;
    max-width: 1100px;
    position: relative;
    z-index: 3;
  }
  .quotation .quotation__box {
    position: relative;
  }
  .quotation .quotation__textbox {
    position: relative;
    display: block;
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    box-sizing: border-box;
  }
  .quotation__text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    display: block;
    padding: calc(30 / 1100 * 100%) calc(190 / 1100 * 100%) calc(30 / 1100 * 100%) calc(490 / 1100 * 100%);
    font-size: clamp(9px,calc(18 / 900 * 100vw),18px);
    line-height: calc(36 / 18 * 1em);
    font-weight: 500;
    font-feature-settings: 'palt' 1;
    letter-spacing: 0.06em;
  }
  .coupon {
    display: block;
    margin: 50px auto;
  }


}

@media screen and (min-width:1000px){
  .faq {
    padding: 0px 0 10px;
    background: #f9efe3 url(img/faq_ttl_pc_bg.png) repeat-x top center;
    position: relative;
  }
  .faq:before {
    content: "";
    display: block;
    width: 50%;
    top: 0;
    right: 0;
    position: absolute;
    height: 212px;
    background: url(img/faq_ttl_pc_bg2.png) repeat-x top right;
    z-index: 1;
  }
}


