@charset "UTF-8";

html {
  scroll-behavior: smooth;
}

/*----------------------------------------
general
----------------------------------------*/
body {
  box-sizing: border-box;
  overflow-x: hidden;
  font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic, Meiryo, sans-serif;
}

#wrapper {
  max-width: 750px;margin: 0 auto;
  background-color: #fff;
}

#wrapper * {
  box-sizing: border-box;
}
#wrapper img {
  width: 100%;
  margin: 0;
  padding: 0;
  height: auto;
  display: block;
  font-size: 0;
  line-height: 0;
  vertical-align: bottom;
}
#wrapper a {
  display: block;
}
#wrapper a img,
#wrapper .btn-offer,
#wrapper .btn-line {
  transition: all ease 0.3s;
}
#wrapper a img:hover,
#wrapper .btn-offer:hover,
#wrapper .btn-line:hover {
  filter: brightness(1.1);
}
#wrapper h1,
#wrapper h2,
#wrapper h3,
#wrapper h4,
#wrapper p {
  font-size: 0;
  line-height: 0;
  margin: 0;
  padding: 0;
}
#wrapper ul,
#wrapper ol,
#wrapper dl {
  list-style: none;
  margin: 0;
  padding: 0;
}
#wrapper ul li,
#wrapper ol li,
#wrapper dl dt,
#wrapper dl dd {
  line-height: 0;
  font-size: 0;
}

#wrapper .p-box {
  position: relative;
}


/*============================
.btn-offer / .btn-line (LINE 仮審査ボタン共通)
============================*/
#wrapper .btn-offer,
#wrapper .btn-line {
  text-align: center;
  position: absolute;
  width: calc(670/750*100%);
  left: 50%;
  transform: translateX(-50%);
}

/* sec_01 FV：sec01_02 の下部に重ねる */
#wrapper .sec_01 .p-box .btn-offer {
  top: calc(457/726*100%);
}


/* sec_06 流れ：sec06_08 の下部に重ねる */
#wrapper .sec_06 .p-box .btn-line {
  position: relative;
  margin-bottom: calc(105/750*100%);
}

/* sec_09 CV：sec09_02 の下部に重ねる */
#wrapper .sec_09 .p-box .btn-offer {
  top: calc(285/500*100%);
}


/*============================
sec_02 slider (Swiper)
============================*/
#wrapper .sec_02 {
  background-color: #E4EAFA;
  padding-bottom: min(calc(38/750*100vw), 38px);
}
#wrapper .sec_02 .slider-wrap {
  position: relative;
  padding: 0 calc(40/750*100%);
}
#wrapper .sec_02 .slider-swiper {
  overflow: hidden;
}
#wrapper .sec_02 .slider-swiper .swiper-slide {
  width: 100%;
}
#wrapper .sec_02 .slide-prev,
#wrapper .sec_02 .slide-next {
  position: absolute;
  top: 52.5%;
  transform: translateY(-50%);
  width: calc(35/750*100%);
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  z-index: 2;
}
#wrapper .sec_02 .slide-prev { left: calc(20/750*100%); }
#wrapper .sec_02 .slide-next { right: calc(20/750*100%); }
#wrapper .sec_02 .slide-prev img,
#wrapper .sec_02 .slide-next img { width: 100%; }

#wrapper .sec_02 .caution {
  text-align: center;
  width: calc(339/750*100%);
  margin: calc(20/750*100%) auto;
}


#wrapper .sec_02 > .btn-line {
  position: relative;
  left: auto;
  transform: none;
  margin: calc(53/750*100%) auto calc(30/750*100%);
}


/*============================
sec_11 FAQ (アコーディオン)
============================*/

#wrapper .faq-list dt,
#wrapper .faq-list dd {
  width: calc(670/750*100%);
  margin: 0 auto;
}
#wrapper .faq-list .js-faq-q {
  margin-top: calc(58/750*100%);
  cursor: pointer;
  position: relative;
}
#wrapper .faq-list .js-faq-q:first-of-type {
  margin-top: 0;
}
#wrapper .faq-list .js-faq-q::before,
#wrapper .faq-list .js-faq-q::after {
  content: "";
  position: absolute;
  top: 50%;
  right: calc(40/670*100%);
  width: calc(37/670*100%);
  aspect-ratio: 37 / 4;
  background: url("../img/icon_faq.png") center/contain no-repeat;
  transition: transform 0.25s ease;
}
#wrapper .faq-list .js-faq-q::before {
  transform: translateY(-50%);
}
#wrapper .faq-list .js-faq-q::after {
  transform: translateY(-50%) rotate(90deg);
}
#wrapper .faq-list .js-faq-q.is-open::after {
  transform: translateY(-50%) rotate(0deg);
}
#wrapper .faq-list .js-faq-a {
  display: none;
}


/*============================
sec_10 取扱店
============================*/

/*============================
sec_12 会社概要 / プライバシーポリシー
============================*/
#wrapper .sec_12  {
  margin-bottom: calc(100/750*100%);
}


/*============================
footer
============================*/
#wrapper .footer {
  background-color: #072992;
  color: #fff;
  text-align: center;
  padding: calc(30/750*100%) 0;
}
#wrapper .footer-copy {
  font-size: min(calc(18 / 750 * 100vw), 18px);
  line-height: 1;
  color: #fff;
}

/* ---------------------------------------------
 追従ボタン
--------------------------------------------- */
.bl_floatArea {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 999;
  visibility: hidden;
  opacity: 0;
  transition: visibility .4s, opacity .4s;
  box-sizing: border-box;
}
.bl_floatArea.is_show {
  visibility: visible;
  opacity: 1;
}
.bl_floatArea_inner {
  max-width: 670px;
  margin: auto;
  box-sizing: border-box;
  padding-bottom: min(calc(10/750*100%),10px);
}

/* ボタン */
.bl_floatArea_btn {
  display: block;
}
.bl_floatArea_btn img {
  width: 100%;
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

/* 背景色付き ver */
.bl_floatArea.bl_floatArea__bg {
  background-color: rgba(255, 255, 255, .5);
}
/* パディングなし ver */
.bl_floatArea.bl_floatArea__p0 .bl_floatArea_inner {
  padding: 0;
}