@charset "UTF-8";

html {
  scroll-behavior: smooth
}

/*----------------------------------------
general
----------------------------------------*/

@import url("//fonts.googleapis.com/css?family=Noto+Sans+JP:400&display=swap");
@import url("//fonts.googleapis.com/css?family=Noto+Sans+JP:500&display=swap");
@import url("//fonts.googleapis.com/css?family=Noto+Sans+JP:600&display=swap");
@import url("//fonts.googleapis.com/css?family=Noto+Sans+JP:700&display=swap");

html{
  font-family:  "Noto Sans JP", univia-pro, -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 62.5%;
  line-height: 1.6;
  color: #181d20;
  scroll-behavior: smooth;
}

body {
	background: #fff;
}




.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 ul,
.wrapper dl,
.wrapper ol{
  list-style: none;
}
.wrapper ul li,
.wrapper dl dt,
.wrapper dl dd,
.wrapper ol li{
	line-height: 0;
	font-size: 0;
}

.wrapper {
  max-width: 750px;
  margin: 0 auto;
  text-align: center;
  overflow: hidden;
}
.wrapper *{
  position: relative;
  box-sizing: border-box;
}

/*============================
#fv
============================*/
.wrapper #fv {
}

/*============================
#intro
============================*/
.wrapper #intro ul{
  display: flex;
  
}
.wrapper #intro ul li{
  width: 50%;
}

/*============================
#feeling
============================*/
.wrapper #feeling {
}
.wrapper #feeling .feeling-caution {
  font-size: min(calc(16/750*100vw),16px);
  margin: min(calc(35/750*100%),35px) auto min(calc(60/750*100%),60px);
  padding-left: min(calc(30/750*100%),30px);
  text-align: left;
}
.wrapper #feeling .feeling-caution.bottom {
  margin: min(calc(15/750*100%),15px) auto min(calc(40/750*100%),40px);
  padding:0 min(calc(30/750*100%),30px) 0 0;
  text-align: right;
}

/*============================
offer
============================*/
.wrapper .offer {
  background-image: url(https://lp.andhabit.com/ec_force/oriction/fc/img/offer-bg.jpg);
  background-size: cover;
  padding-bottom: min(calc(70/750*100%),70px);
}
.wrapper .offer .offer-img {
  position: absolute;
  top:10%;
  left:5%;
  width: calc(330/750*100%);
  z-index:2;
}
.wrapper .offer .campaign-text-box {
  background-color: #19fafa;
  margin: 17% auto 10%;
  transform: rotate(-8deg);
  width: 120%;
  left:-10%;
  padding:6% 0 4%;
}

.wrapper .offer .campaign-text-box h2 {
  color: #4c4e51;
  font-size: min(calc(50/750*100vw),50px);
  font-style: italic;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: min(calc(4/750*100vw),4px);
}


.wrapper .offer .campaign-code-box .btn-coupon {
  background-color: #FFF;
  width: calc(630/750*100%);
  border-radius: 10px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%);
  line-height: 1;
  padding: min(calc(20/750*100%),20px) 0 min(calc(20/750*100%),20px);
  cursor: pointer;
}
.wrapper .offer .campaign-code-box .btn-coupon .campaign-code-head {
  font-size: min(calc(30/750*100vw),30px);
  font-weight: 500;
}
.wrapper .offer .campaign-code-box .btn-coupon .campaign-code-text {
  font-size: min(calc(60/750*100vw),60px);
  margin-top: 0.3em;
  font-weight: 600;
}
.wrapper .offer .price-list {
}
.wrapper .offer .price-list li{
  display: flex;
  align-items: center;
  margin-bottom: 3%;
}
.wrapper .offer .price-list .discount-amount-box {
  width: calc(210/750*100%);

}

.wrapper .offer .price-list .discount-amount-box .discount-amount {
  position: absolute;
  color: #4c4e51;
  font-size: min(calc(45/750*100vw),45px);
  text-align: center;
  line-height: 1.1;
  width: calc(631/750*100%);
  top: 2%;
  left: 14%;

  font-weight: 600;
  
}

.wrapper .offer .price-list .discount-amount-box .discount-amount .amount-large{
  font-size: min(calc(65/750*100vw),65px);
}

.wrapper .offer .price-list .discount-amount-box .discount-amount .amount-persent{
  font-size: min(calc(40/750*100vw),40px);
}

.wrapper .offer .price-list {
  margin-bottom: 4%;
}
.wrapper .offer .price-list  .price-upper-text {
  font-size: min(calc(145/750*100vw),145px);  
  color: #19fafa;
  line-height: 1;
  font-weight: 600;
  margin-left: 1%;
}
.wrapper .offer .price-list  .price-upper-text span{
  font-size: min(calc(60/750*100vw),60px); 
}
.wrapper .offer .price-list  .yen-upper-img {
  width: calc(68/750*100%);
  padding-top: 4.5%;
  margin-left: 1%;
}
.wrapper .offer .price-list  .split-head {
  width: calc(210/750*100%);
}
.wrapper .offer .price-list  .month-head {
  width: calc(34/750*100%);
  padding-top: 6%;
}
.wrapper .offer .price-list  .price-lower-text {
  font-size: min(calc(145/750*100vw),145px);  
  color: #19fafa;
  line-height: 1;
  font-weight: 600;
  margin-left: 0;
}
.wrapper .offer .price-list  .price-lower-text span{
  font-size: min(calc(60/750*100vw),60px); 
}
.wrapper .offer .price-list  .yen-lower-img {
  width: calc(123/750*100%);
  padding-top: 4%;
}
.wrapper .offer .offer-caution {
  width: calc(690/750*100%);
  margin: 5% auto;
  color: #FFF;
  text-align: left;
}

.wrapper .offer .offer-caution li {
  line-height: calc(24/16);
  font-size: min(calc(16/750*100vw),16px);  
  padding-left: 1em;
  text-indent: -1em;
}
.wrapper .offer .btn-offer{
  width: calc(726/750*100%);
  margin: 0 auto 2%;
  transition: filter ease 0.3s;
}
.wrapper .offer .btn-offer:hover{
  filter: brightness(1.1);
}
.wrapper .offer .btn-offer a{
  text-decoration: none;
}
.wrapper .offer .btn-offer .campaign-date-text {
  position: absolute;
  top: 13%;
  left: 50%;
  transform: translateX(-50%);
  display: inline-block;
  border-radius: 40px;
  background-color: #4c4e51;
  color: #FFF;
  font-size: min(calc(30/750*100vw),30px);  
  padding: 0.3em 1em 0.5em;
  line-height: 1;
  white-space: nowrap;
  font-weight: 600;
}
.wrapper .offer .btn-offer  .campaign-main-text {
  color: #4c4e51;
  font-size: min(calc(45/750*100vw),45px);
  position: absolute;
  display: inline-block;
  top: 38%;
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
  font-weight: 600;
  line-height: calc(56/42);
}
.wrapper .offer .btn-offer  .campaign-main-text span{
  font-size: min(calc(40/750*100vw),40px);
}

/*============================
#faq
============================*/
.wrapper #faq {

}
.wrapper #faq .accordion {
  width: calc(690/750*100%);
  margin: 0 auto 6%;
}
.wrapper #faq .accordion:last-of-type{
  margin-bottom: min(calc(100/750*100%),100px);
}
.wrapper #faq .accordion dt{
  cursor: pointer;
}
.wrapper #faq .accordion dt:before,
.wrapper #faq .accordion dt:after{
  content:"";
  display: block;
  background-image: url(https://lp.andhabit.com/ec_force/oriction/fc/img/acc-icon.png);
  background-size: cover;
  background-repeat: no-repeat;
  z-index:2;
  width: calc(30/750*100%);
  padding-top: calc(4/750*100%);
  position: absolute;
  right:6.3%;
  top:49%;
  transition: all ease 0.3s;
}
.wrapper #faq .accordion dt:before{
  transform: rotate(90deg);
}
.wrapper #faq .accordion dt.selected:before{
  transform: rotate(0deg);
}
.wrapper #faq .accordion dd{
  display: none;
}
/*============================
#close
============================*/
.wrapper #close {
  background-color: #e2e7eb;
  padding-bottom: min(calc(66/750*100%),66px);
}
.wrapper #close .btn-detail {
  width: calc(205/750*100%);
  margin-left: calc(39/750*100%);
}

/*============================
#opening-modal
============================*/

/*============================
#opening-modal
============================*/
/* モーダルの背景 */
.opening-modal {
  display: none; /* 最初は非表示 */
  position: fixed; /* 固定位置 */
  z-index: 1000; /* コンテンツより前面に */
  left: 0;
  top: 0;
  width: 100%; /* 全幅 */
  height: 100%; /* 全高 */
  background-color: rgba(0,0,0,0.5); /* 半透明背景 */
  overflow: hidden;
}

/* モーダルの内容 */
.modal-content {
  background-color: #fefefe;
  margin: 10% auto; /* 中央に配置 */
  padding: 0;
  max-height: 88vh; 
  overflow-y: scroll; /* 縦スクロール */
  max-width: 650px;
  width: 100%;
  line-height: 0;
  font-size: 0;
  position: relative;
}
.modal-content-outer{
  max-width: 650px;
  width: min(calc(690/750*100%),690px);

  margin: 3% auto;
  position: relative;
}
.modal-content img{
  width: 100%;
}
/* 閉じるボタン */
.close {
  color: #aaa;
  float: right;
  width: 40px;
  position: absolute;
  right:0;
  top:-50px;
}

.close:hover,
.close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}
@media (max-width:750px){
  .modal-content-outer {
    margin: 10% auto; 
  }
  .close{
    top:-6%;
    width: calc(40/750*100%);
  }
}

.wrapper #opening-modal .modal-content-outer .modal-date-text {
  font-size: min(calc(60/750*100vw),60px);
  letter-spacing: min(calc(4/750*100vw),4px);
  line-height: 1;
  position: absolute;
  top: 5.5%;
  left: 50%;
  transform: translateX(-50%);
  color: #4c4e51;
  white-space: nowrap;
  font-weight: 600;
}
.wrapper #opening-modal .modal-content-outer .modal-main-text {
  font-size: min(calc(50/750*100vw),50px);
  letter-spacing: min(calc(4/750*100vw),4px);
  line-height: calc(50/50);
  position: absolute;
  top: 16%;
  left: 50%;
  transform: translateX(-50%);
  color: #4c4e51;
  white-space: nowrap;
  font-weight: 600;
}

.wrapper #opening-modal .modal-content-outer .modal-price-text {
  font-size: min(calc(185/750*100vw),185px);
  line-height: calc(90/65);
  position: absolute;
  top: 54%;
  left: 50%;
  transform: translateX(-50%);
  color: #4c4e51;
  white-space: nowrap;
  font-weight: 600;
  font-style: italic;
  background-image: url(https://lp.andhabit.com/ec_force/oriction/fc/img/modal-maker.png);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: contain;
  line-height: 1.1;
  padding-right: 0.1em;
}
.wrapper #opening-modal .modal-content-outer .modal-price-text span{
  font-size: min(calc(120/750*100vw),120px);
}


.wrapper #opening-modal .modal-content-outer .btn-coupon {
  background-image: url(https://lp.andhabit.com/ec_force/oriction/fc/img/modal-btn-bg.png);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  width: calc(570/750*100%);
  top: 77%;
  left: 50%;
  transform: translateX(-50%);
  padding:4% 0 7%;
  cursor: pointer;
}
.wrapper #opening-modal .btn-coupon .campaign-code-head {
  font-size: min(calc(26/750*100vw),26px);
  line-height: 1;
}
.wrapper #opening-modal .btn-coupon .campaign-code-text {
  font-size: min(calc(70/750*100vw),70px);
  line-height: 1;
  margin-top: 0.1em;
  font-weight: 600;
}

/* ---------------------------------------------
 追従ボタン
--------------------------------------------- */

/* ---------------------------------------------
 追従ボタン
--------------------------------------------- */
.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: 750px;
  margin: auto;
  padding: 0;
  box-sizing: border-box;
  padding: 0 ;
}

/* ボタン */
.bl_floatArea_btn {
  display: block;
  width: calc(712/750*100%);
  margin: 0 auto;
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}


.wrapper .bl_floatArea.js_floatArea .bl_floatArea_inner.p-box .bl_floatArea_btn .fixed-head {
  position: absolute;
  display: inline-block;
  top: -18%;
  left: 50%;
  transform: translateX(-50%);
  font-size: min(calc(30/750*100vw),30px);
  color: #4c4e51;
  white-space: nowrap;
  background-color: #FFF;
  font-weight: 600;
  padding:0.4em 0.8em;
  line-height: 1;
  border-radius: 10px;
  z-index:4;
  filter: drop-shadow(0 min(calc(6/750*100vw),6px) min(calc(5/750*100vw),5px) rgba(0,0,0,0.2));
}
.wrapper .bl_floatArea.js_floatArea .bl_floatArea_inner.p-box .bl_floatArea_btn .fixed-head:after{
  content:"";
  display: block;
  border-style: solid;
  border-right: min(calc(8/750*100vw),8px) solid transparent;
  border-left: min(calc(8/750*100vw),8px) solid transparent;
  border-top: min(calc(10/750*100vw),10px) solid #FFF;
  border-bottom: 0;
  position: absolute;
  bottom:max(calc(-7/750*100vw),-7px);
  left: 50%;
  transform: translateX(-50%);
  z-index:1;

}
.wrapper .bl_floatArea.js_floatArea .bl_floatArea_inner.p-box .bl_floatArea_btn .fixed-discount-amount {
  position: absolute;
  top: 32%;
  left: 7.5%;
   font-size: min(calc(55/750*100vw),55px);
   color: #84ff00;
   line-height:0.7;
   font-weight: 700;
   text-align: center;
}
.wrapper .bl_floatArea.js_floatArea .bl_floatArea_inner.p-box .bl_floatArea_btn .fixed-discount-amount span{
  font-size: min(calc(40/750*100vw),40px);
  font-weight: 500;
}

.wrapper .bl_floatArea.js_floatArea .bl_floatArea_inner.p-box .bl_floatArea_btn .fixed-discount-amount span.price-percent{
  font-size: min(calc(30/750*100vw),30px);
}

