@charset "utf-8";
/* CSS Document */

/*******************

 LP style

********************/
html , body {
  box-sizing: border-box;
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

/* content
--------------------------------------------------*/
.lpbox , #lpfooter {
  font-size: 14px;
  font-size: 3.7333vw;
  font-family: 'Noto Sans JP','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ','Mayryo','ＭＳ Ｐゴシック','MS PGothic',sans-serif;
  color:#473805;
  line-height:1.5em;
  overflow: hidden;
}
@media screen and (min-width:750px){
.lpbox , #lpfooter {
    font-size: 28px;
    max-width: 750px;
    margin: 0 auto;
  }
}
.lpbox a , #lpfooter a{
  color: inherit;
  text-decoration: none;
  font-size: inherit;
  font-weight: inherit;
}
.lpbox a:hover, #lpfooter a:hover{
  text-decoration: underline;
}
.lpbox span, #lpfooter span {
  font-size: inherit;
  font-weight: inherit;
}
.lpbox img ,
#lpfooter img {
  width: 100%;
  height: auto;
  display: block;
  margin-left: auto;
  margin-right: auto;
  vertical-align: bottom;
}
.lpbox img.img-t ,
#lpfooter img.img-t {
  vertical-align: top;
}
/* cart css reset */

.lpbox header ,
.lpbox h1 ,
.lpbox h2 ,
.lpbox h3 ,
.lpbox p ,
.lpbox dl ,
.lpbox dt ,
.lpbox dd ,
.lpbox div ,
.lpbox section ,
.lpbox span {
  border: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  background: none;
  box-sizing: border-box;
  padding: 0;
  margin: 0 auto;
}
#lpfooter footer ,
#lpfooter div,
#lpfooter p {
  border: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  background: none;
  box-sizing: border-box;
  padding: 0;
  margin: 0 auto;
}
#lpfooter ul,
#lpfooter li {
  border: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  background: none;
  box-sizing: border-box;
  padding: 0;
  margin: 0 auto;
  list-style: none;
}
/*----------------------------------------*/
.lpbox .fv__cta {
  position: relative;
}
.lpbox .btn {
  margin: 0 auto;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  box-sizing: border-box;
  background: transparent;
}
.lpbox .btn a {
  box-sizing: border-box;
  display: block;
  padding: 0 6.67%;
  width: 100%;
}
.lpbox .component {
  margin-top: 0;
}
/* video_01.gif：--component-video-top の数値で上下位置を調整できます */
.lpbox .component__mov {
  --component-video-width: 100%;
  --component-video-top: 0%;
  --component-video-left: 0%;
  position: relative;
}
.lpbox .component__movitem {
  display: block;
  position: relative;
  z-index: 2;
  width: 100%;
  pointer-events: none;
}
.lpbox .component__movsize {
  position: absolute;
  top: var(--component-video-top);
  left: var(--component-video-left);
  z-index: 1;
  width: var(--component-video-width);
  overflow: hidden;
}
.lpbox .component__movsize img {
  display: block;
  width: 100%;
  height: auto;
}
/* 3set_02.png上の3ボタン：下記4変数で位置と横幅を調整できます */
.lpbox .three-set__comparison {
  --three-set-buttons-top: 75.5172%;
  --three-set-buttons-left: 22.5333%;
  --three-set-buttons-width: 73.4667%;
  --three-set-buttons-gap: 5.0817%;
  position: relative;
}
.lpbox .three-set__buttons {
  display: grid;
  grid-template-columns: 201fr 147fr 147fr;
  column-gap: var(--three-set-buttons-gap);
  position: absolute;
  top: var(--three-set-buttons-top);
  left: var(--three-set-buttons-left);
  z-index: 2;
  width: var(--three-set-buttons-width);
}
.lpbox .three-set__buttons a {
  display: block;
}
/* video_02.gif：下記3変数でサイズと位置を調整できます */
.lpbox .recipe__mov {
  --recipe-video-width: 86.6667%;
  --recipe-video-top: 0%;
  --recipe-video-left: 6.6667%;
  position: relative;
}
.lpbox .recipe__movsize {
  position: absolute;
  top: var(--recipe-video-top);
  left: var(--recipe-video-left);
  z-index: 2;
  width: var(--recipe-video-width);
  overflow: hidden;
}
.lpbox .recipe__movsize img {
  display: block;
  width: 100%;
  height: auto;
}

/* .cta */
.lpbox .cta__box {
  margin: 0 auto;
  position: relative;
  width: 100%;
}
.lpbox .cta__btn {
  box-sizing: border-box;
  padding: 0 6.67% 5%;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}
.lpbox .cta3__btn {
  box-sizing: border-box;
  padding: 0 6.67% 11%;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}
.lpbox .cta__btn.single {
  padding: 0 6.67% 11%;
}
.lpbox .cta__caution-box {
  background: #fff;
  padding: 0 6.67%;
}
.lpbox .cta__caution-box .caution__text {
  overflow: hidden;
}
.lpbox .cta__caution-box .caution__text p{
  padding: 3% 0;
  font-size: .8em;
  color: #2c2e35;
  line-height: 1.7;
}
.lpbox .cta__caution-box .caution__btn{
  position: relative;
  display: block;
  margin: 0 auto;
  cursor: pointer;
}
.lpbox .caution__btn:before {
  content: "";
  display: block;
  background: url(../img/webp/arrow.webp) no-repeat 50% 50%;
  -webkit-background-size: 100% auto;
  background-size: 100% auto;
  position: absolute;
  top: calc(50% - 0.4em);
  right: 5%;
  height: .8em;
  width: .8em;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: all .4s ease;
  -o-transition: all .4s ease;
  transition: all .4s ease; 
}
.lpbox .caution__btn.acd__btn--open:before{
  content: "";
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}

/* .faq */
.lpbox .faq {
  margin: 0 auto 10%;
}
.lpbox .faq__body {
  background: #dcdde1 url("../img/faq_bg.png") no-repeat center top;
  -webkit-background-size: 100% auto;
  background-size: 100% auto;
  padding-bottom: 6%;
}
.lpbox .faq__item {
  box-sizing: border-box;
  display: block;
  margin: 0 auto 3%;
  padding: 0 2.66% 0 2.66%;
}

.lpbox .faq__q {
  position: relative;
  display: block;
  margin: 0 auto;
  cursor: pointer;
}
.lpbox .faq__q:before {
  content: "";
  background: url(../img/webp/faq_bar.webp) no-repeat 50% 50%;
  -webkit-background-size: 100% auto;
  background-size: 100% auto;
  display: block;
  position: absolute;
  height: 1.2em;
  width: 1.2em;
  top: calc(50% - 0.5em);
  right: 3%;
}
.lpbox .faq__q:after{
  content: "";
  background: url(../img/webp/faq_bar.webp) no-repeat 50% 50%;
  -webkit-background-size: 100% auto;
  background-size: 100% auto;
  display: block;
  position: absolute;
  height: 1.2em;
  width: 1.2em;
  top: calc(50% - 0.5em);
  right: 3%;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transition: all .5s ease;
  -o-transition: all .5s ease;
  transition: all .5s ease;
  opacity: 1;
}
.lpbox .faq__q.acd__btn--open:after{
  content: "";
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  opacity: 0;
}

.lpbox section,
.lpbox header,
.lpbox picture,
.lpbox h1,
.lpbox h2,
.lpbox p,
.lpbox .recipe {
  display: block;
  line-height: 0;
}

.lpbox .cta__caution-box,
.lpbox .faq__item {
  line-height: 1.5;
}

/*-------------------------------------------
 form
-----------------------------------------------*/
#formarea {
  box-sizing: border-box;
  width: 100%;
  margin: 2em auto;
  padding: 0;
}
.form-placeholder {
  text-align: center;
  padding: 3em 0;
  background: #ccc;
}


/*-------------------------------------------
 footer
-----------------------------------------------*/
#lpfooter .footer__box {
  background-color: #0da0a9;
  text-align: center;
  padding: 10% 5% 5%;
}
#lpfooter .footer__logo {
  display: block;
  width: 68%;
  margin: 0 auto 8%;
}
#lpfooter .footer__link {
  padding: 2em 0;
}
#lpfooter .footer__link li{
  font-size: 1em;
  margin-bottom: 1em;
  display: flex;
  align-items: center;
}
#lpfooter .footer__link li::before{
  content: "";
  height: 1px;
  width: 5%;
  background-color:#0da0a9;
  margin-right: 2%;
}
#lpfooter #copy {
  font-size: .75em;
  color: #fff;
  box-sizing: border-box;
}


/* expand */
.expand {
  -webkit-animation-name: expand;
  -moz-animation-name: expand;
  -o-animation-name: expand;
  animation-name: expand;
  -webkit-animation-duration: 1.2s;
  -moz-animation-duration: 1.2s;
  -o-animation-duration: 1.2s;
  animation-duration: 1.2s;
  -webkit-animation-timing-function: ease-in-out;
  -moz-animation-timing-function: ease-in-out;
  -o-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: infinite;
  -o-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}
@-webkit-keyframes expand {
  from, 0% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.06);
    -ms-transform: scale(1.06);
    -o-transform: scale(1.06);
    transform: scale(1.06);
  }
  to, 100% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes expand {
  from, 0% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.06);
    -ms-transform: scale(1.06);
    -o-transform: scale(1.06);
    transform: scale(1.06);
  }
  to, 100% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}
