@charset "utf-8";
.mt10 {
  margin-top: min(1.5625vw, 10px) !important;
}
.mt12 {
  margin-top: min(1.875vw, 12px) !important;
}
.mt13 {
  margin-top: min(2.03125vw, 13px) !important;
}
.mt14 {
  margin-top: min(2.1875vw, 14px) !important;
}
.mt15 {
  margin-top: min(2.34375vw, 15px) !important;
}
.mt20 {
  margin-top: min(3.125vw, 20px) !important;
}
.mt24 {
  margin-top: min(3.75vw, 24px) !important;
}
.mt25 {
  margin-top: min(3.90625vw, 25px) !important;
}
.mt26 {
  margin-top: min(4.0625vw, 26px) !important;
}
.mt28 {
  margin-top: min(4.375vw, 28px) !important;
}
.mt30 {
  margin-top: min(4.6875vw, 30px) !important;
}
.mtmb32 {
  margin-top: min(5vw, 32px);
  margin-bottom: min(5vw, 32px);
}
.mb50 {
  margin-bottom: min(7.8125vw, 50px);
}
img {
  max-width: 100%;
  vertical-align: bottom;
  /*画像に隙間ができるのを防ぐための指定*/
}

li {
  list-style: none;
}

.spDisplay {
  margin: 0 auto;
  max-width: 640px;
}

.sp_heder {
  display: flex;
  justify-content: space-between;
  padding: 0.5% 2%;

}
.sp_heder .heading-lv1,
.sp_heder .heading-lv2 h2 {
  margin: 0;
  padding: 0;
}
.sp_heder .heading-lv1 {
  width: 167px;
  padding: 10px;
}
.sp_heder .heading-lv2 {
  width: min(45.3125vw, 290px);
}
.spDisplay h2 {
  margin: 0;
  padding: 0;
}
.visual {
  max-width: min(100vw, 640px);
}

.container_sp {
  max-width: min(90.625vw, 580px);
  margin: 0 auto;
}
.entry_wrapper .entry_list {
  text-align: center;
}

.entry_wrapper .entry_list li:not(:first-child) {
  margin-top: min(3.4482758620689653vw, 20px);
}
.entry_wrapper .entry_list li:last-child {
  margin-top: min(2.34375vw, 15px);
}

.text_link {
  font-size: min(3.4482758620689653vw, 20px);
  text-align: right;
}
.text_link a {
  color: #1886ff;
}
.text_link a::before {
  content: "";
  display: inline-block;
  margin-right: 9px;
  width: min(2.0689655172413794vw, 12px);
  height: min(2.413793103448276vw, 14px);
  background-image: url(../img/sp/text_link_arr.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
}

.time_text {
  margin-top: min(2.1875vw, 14px);
  font-size: min(3.2758620689655173vw, 19px);
  letter-spacing: -0.02em;
}
/*お電話での資料請求・ご相談*/
@media (min-width: 641px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

.price_wrapper {
  margin-top: min(3.4375000000000004vw, 22px);
}

.tab-change {
  display: flex;
  width: 100%;
  height: min(7.8125vw, 50px);
  margin: auto;
  cursor: pointer;
}
.tab-change .tab01 {
  width: 50%;
  background-image: url(../img/sp/tab01_off.png);
  background-repeat: no-repeat;
  background-size: contain;
}
.tab-change .tab01.select {
  background-image: url(../img/sp/tab01_on.png);
  background-repeat: no-repeat;
}
.tab-change .tab02 {
  width: 50%;
  background-image: url(../img/sp/tab02_off.png);
  background-repeat: no-repeat;
  background-size: contain;
}
.tab-change .tab02.select {
  background-image: url(../img/sp/tab02_on.png);
  background-repeat: no-repeat;
}
.hide {
  display: none;
}

.design_inner {
  position: relative;
}

.design_inner img {
  width: 100%;
}

.design_inner .sim_box {
  position: absolute;
  left: 5.5%;
  bottom: 0;
  width: min(81.25vw, 520px);
}

.detail_wrap {
  margin-top: min(2.5vw, 16px);
}
.recommend_wrapper {
  margin-top: min(5.3125vw, 34px);
}

.faq_list {
  text-align: center;
}

.notice_sp {
  background-color: #efefef;
  padding: min(6.875000000000001vw, 44px) min(4.0625vw, 26px) min(4.375vw, 28px);
  color: #535353;
  font-size: min(3.125vw, 20px);
  line-height: calc(28 / 20);
  border-bottom: 1px solid #00216e;
}
.notice_sp li {
  padding-left: 1em;
  text-indent: -1em;
}
.foot_sp {
  margin-top: min(7.34375vw, 47px);
}
.foot_sp ul {
  display: flex;
  justify-content: center;
  margin: min(2.03125vw, 13px) 0 0 min(6.25vw, 40px);
  color: #555;
}
.foot_sp li {
  padding: 0 1em;
  font-size: min(3.4375000000000004vw, 22px);
  list-style: none;
  border-right: 1px solid #a9a9a9;
}
.foot_sp li:not(:first-child) {
  border-right: none;
}
.foot_sp .copyright_text {
  text-align: center;
  margin-top: min(2.96875vw, 19px);
  font-size: min(2.65625vw, 17px);
  color: #616161;
}
.foot_sp div.code {
  margin-top: min(1.875vw, 12px);
  padding-right: min(3.90625vw, 25px);
  padding-bottom: min(9.375vw, 60px);
  text-align: right;
  color: #333333;
  font-size: min(2.8125vw, 18px);
}
.link_box_sp {
  position: relative;
}
.link_box_sp .modal {
  position: absolute;
  top: 10.125vw;
  right: 6vw;
  display: block;
  font-size: 9px;
}
.link_box_sp a.modal {
  color: #46a0e7;
}

/* #floatFooter */
#floatFooter {
  width: 100%;
  position: fixed;
  bottom: 0;
  z-index: 3;
  background: #edf2f6;
  display: none;
}

#floatFooter .inner {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}

#floatFooter a img {
  width: 100%;
}
@media (min-width: 641px) {
  #floatFooter .sp {
    display: none;
  }

  #floatFooter .pc {
    display: block;
  }

  #floatFooter .inner {
    width: 930px;
    padding: 15px 0;
  }

  #floatFooter .footerLink_hoverImgChange {
    width: 31.5%;
    height: 75px;
    overflow: hidden;
  }

  #floatFooter .footerLink_hoverImgChange:hover img {
    transform: translateY(-50%);
  }

  #floatFooter p.txtLink {
    width: 100%;
    font-size: 13px;
    text-align: right;
    margin-top: 1%;
    margin-right: 7%;
  }
}
@media (min-width: 641px) and (max-width: 940px) {
  #floatFooter .inner {
    width: 98%;
    padding: 2% 1%;
  }
  #floatFooter .footerLink_hoverImgChange {
    width: 30%;
    height: 7.5vw;
  }
}
@media (max-width: 640px) {
  #floatFooter .sp {
    display: block;
  }

  #floatFooter .pc {
    display: none;
  }

  #floatFooter .inner {
    background: #efefef;
  }

  #floatFooter a {
    display: block;
    width: 25%;
  }
}
/* /#floatFooter */
.fv_modal_title {
  font-size: 3.4vw !important;
}
.fv_modal_text {
  font-size: 3.1vw !important;
}