@charset "utf-8";
/* CSS Document */

/*******************

 LP style

********************/
html , body {
  box-sizing: border-box;
  margin: 0 auto;
  padding: 0;
  width: 100%;
}
blockquote:empty {
  display: none;
}

/* content
--------------------------------------------------*/
.lpbox , #lpfooter {
  font-size: clamp(14px,calc(28 / 750 * 100vw),28px);
  font-family: "Zen Kaku Gothic New",'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ','Mayryo','ＭＳ Ｐゴシック','MS PGothic',sans-serif;
  color:#101010;
  line-height:calc(48 / 24 * 1em);
  font-weight: 500;
  --font-serif : "Zen Old Mincho", serif;
}
.lpbox .font--serif,
#lpfooter .font--serif {
  font-family: "Zen Old Mincho", serif;
}

@media screen and (min-width:750px){
.lpbox , #lpfooter {
    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 .box {
  margin: 0 auto;
  position: relative;
  width: 100%;
}
.lpbox sup {
  font-size: 0.6em;
}
.lpbox .index__text--01 {
  position: absolute;
  top: calc(170 / 1000 * 100%);
  left: calc(170 / 750 * 100%);
  width: calc(405 / 750 * 100%);
}
.lpbox .index__text--02 {
  position: absolute;
  top: calc(50 / 280 * 100%);
  left: calc(60 / 750 * 100%);
  width: calc(637 / 750 * 100%);
}
/*****************************/

/* =================================
   インデックスリンク全体
================================= */
.lpbox .index__link { 
  display: block;
  box-sizing: border-box;
  padding: calc(50 / 750 * 100%);
  margin: 0 auto;
}

/* =================================
   各ボタン外枠
================================= */
.lpbox .index__itemwrap {
  border: 1px solid #101010;
  margin-bottom: calc(20 / 750 * 100%);
  overflow: hidden;
  background-color: #fff;
  box-shadow: 0 2px 4px rgba(0,0,0,0.05);
  transition: transform 0.6s ease-out;
  will-change: transform;
  transform-origin: center;
}
.lpbox .index__itemwrap:last-child {
  margin-bottom: 0;
}
.lpbox .index__itemwrap.scaleup {
  transform: scale(1.15);
}

/* =================================
   ボタン本体
================================= */
.index__item {
  display: block;
  position: relative;
  box-sizing: border-box;
  font-weight: 500;
  font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif !important;
  padding: 1em 2.5em 1em 1em; /* 左余白と右アイコン分確保 */
  background: url(https://ce-parfait.jp/wls/lp/assets/images/contents/webp/index_ic_w.webp)
              no-repeat calc(100% - 1em) center / 1em auto;
}
.lpbox .index__item + .index__item {
  border-top: 1px solid;
}
.index__item span {
  color: #a53b07;
}

/* =================================
   スマホ用（背景アイコンをvw基準に）
================================= */
@media (max-width: 750px) {
  .index__item {
    background-size: 8vw auto !important;
    background-position: calc(100% - 4vw) center !important;
  }
}


/***************************************/
.lpbox .cv {
  position: relative;
  overflow: hidden;
  margin: 0 auto;
  background: #e0d7ce;
}
.lpbox .cta__btn {
  box-sizing: border-box;
  padding: 0 calc((100% - (570 / 750 * 100%)) * 0.5);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.lpbox .cv__notice {
  display: block;
  box-sizing: border-box;
  padding: 0 calc(50 / 750 * 100%) calc(60 / 750 * 100%);
  font-size: calc(18 / 28 * 1em);
  line-height: calc(30 / 18 * 1em);
  letter-spacing: 0.04em;
  text-align: justify;
  font-feature-settings: 'palt' 1;
}

/*---------------------------*/

.lpbox .message__text--01 {
  background: #f0ebe3;
  box-sizing: border-box;
  display: block;
  padding: 0 calc(50 / 750 * 100%) calc(30 / 750 * 100%);
  font-weight: 500;
  line-height: calc(48 / 24 * 1em);
  letter-spacing: 0.04em;
  font-size: calc(24 / 28 * 1em);
}
.lpbox .message__text--02 {
  background: #101010;
  box-sizing: border-box;
  color: #fff;
  display: block;
  padding: 0 calc(50 / 750 * 100%) calc(30 / 750 * 100%);
  position: relative;
}

.lpbox .message__textbox {
  font-weight: 500;
  line-height: calc(48 / 24 * 1em);
  letter-spacing: 0.04em;
  font-size: calc(24 / 28 * 1em);
  font-family: var(--font-serif);
  letter-spacing: 0.04em;
  text-align: justify;
}
.lpbox .message__textbox span {
  color: #fff3b1;
}
.lpbox .message__textbox p + p {
  margin-top: 1.5em;
}
.lpbox #message__more p {
  margin-top: 1.5em;
}
.lpbox .acd__bg {
  background: url(https://ce-parfait.jp/wls/lp/assets/images/contents/webp/message_bg.webp) no-repeat 0 0;
  -webkit-background-size: 100% 100%;
  background-size: 100% 100%;
  display: block;
  width: 100%;
  height: 0;
  z-index: 2;
  padding-bottom: calc(229 / 750 * 100%);
  position: absolute;
  bottom: 0;
  left: 0;
}
.lpbox .acd__btnitem {
  display: block;
  width: calc(430 / 750 * 100%);
  position: absolute;
  bottom: 0;
  left: 50%;
  z-index: 3;
  transform: translate3d(-50%,-100%,0);
  cursor: pointer;
}
.lpbox #message__more .message__textbox {
  padding-bottom: calc(150 / 750 * 100%);
  box-sizing: border-box;
  
}
.lpbox .acd__btn--open .acd__bg {
  display: none;
}
.lpbox .acd__btn--op {
  display: block;
}
.lpbox .acd__btn--cl {
  display: none;
}
.lpbox .acd__btn--open .acd__btn--op {
  display: none;
}
.lpbox .acd__btn--open .acd__btn--cl {
  display: block;
}
/*---------------------------*/
.lpbox .waterless__ttl {
  display: block;
  position: absolute;
  width: calc( 310 / 750 * 100%);
  left: 50%;
  top: calc( 120 / 812 * 100%);
  transform: translate3d(-50%,0,0);
}
.lpbox .features {
  background: #f0ebe3;
}
.lpbox .features__textbox {
  font-feature-settings: 'palt' 1;
  font-size: 1em;
  letter-spacing: 0.04em;
  line-height: calc(48 / 28 * 1em);
  font-weight: 500;
  word-break: break-all;
}
.lpbox .features__text--01 {
  position: absolute;
  width: calc( 443 / 750 * 100%);
  top: calc(120 / 780 * 100%);
  left: 50%;
  transform: translate3d(-50%,0,0);
}
.lpbox .features__textbox span {
  color: #a53b07;
}

.lpbox .features__textbox--01 {
  width: calc(340 / 750 * 100%);
  position: absolute;
  top: calc(160 / 840 * 100%);
  left: calc(40 / 750 * 100%);
  z-index: 2;
}
.lpbox .features__textbox--02 {
  width: calc(296 / 750 * 100%);
  position: absolute;
  top: calc(180 / 840 * 100%);
  right: calc(40 / 750 * 100%);
  z-index: 2;
}
.lpbox .features__text--02 {
  position: absolute;
  width: calc( 551 / 750 * 100%);
  top: calc(120 / 660 * 100%);
  left: 50%;
  transform: translate3d(-50%,0,0);
}

.lpbox .story__textbox {
  background: #d4dbe1 url(https://ce-parfait.jp/wls/lp/assets/images/contents/webp/story_02.webp) no-repeat top left;
  -webkit-background-size: 100% auto;
  background-size:100% auto;
  display: block;
  box-sizing: border-box;
  padding: calc(25 / 750 * 100%) calc(50 / 750 * 100%);
  font-family: var(--font-serif);
  line-height: calc(50 / 28 * 1em);
}
.lpbox .story__textbox p + p {
  margin-top: 1.5em;
}
.lpbox .story__textbox span {
  color: #a53b07;
}

.lpbox .notes {
  box-sizing: border-box;
  border: 1px solid #101010;
  font-size: calc(18 / 28 * 1em);
  line-height: calc(30 / 18 * 1em);
  letter-spacing: 0.04em;
  display: block;
  padding: calc(30 / 750 * 100%);
  width: calc(670 / 750 * 100%);
  margin: calc(60 / 750 * 100%) auto;
  text-align: justify;
}

/*---------------------------*/


.lpbox .product {
  display: block;
  margin: calc(60 / 750 * 100%) auto;
  position: relative;
  width: calc(670 / 750 * 100%);
}
.lpbox .product__data {
  
}
.lpbox .product__data + .product__data  {
  border-top: 1px solid #101010;
}
.lpbox .product__data dt {
  position: relative;
  display: block;
  box-sizing: border-box;
  padding: calc(30 / 670 * 100%) calc(20 / 670 * 100%);
  cursor: pointer;
}

.lpbox .product__data dt:before {
  content: "";
  display: block;
  width: calc(20 / 28 * 1em);
  height: 2px;
  background: #101010;
  position: absolute;
  top: 50%;
  right: calc(20 / 670 * 100%);
  transform: rotate(0deg);
  transition: all .5s ease;
}
.lpbox .product__data dt:after {
  content: "";
  display: block;
  width: calc(20 / 28 * 1em);
  height: 2px;
  background: #101010;
  position: absolute;
  top: 50%;
  right: calc(20 / 670 * 100%);
  transform: rotate(90deg);
  transition: all .5s ease;
  opacity: 1;
}

.lpbox .product__data dt.acd__btn--open:before {
  content: "";
  transform: rotate(180deg);
}
.lpbox .product__data dt.acd__btn--open:after {
  content: "";
  transform: rotate(270deg);
  opacity: 0;
}
.lpbox .product__data dd div {
  position: relative;
  display: block;
  box-sizing: border-box;
  padding: 0 calc(20 / 670 * 100%) calc(40 / 670 * 100%);
  font-size: calc(22 / 28 * 1em);
  line-height: calc(40 / 22 * 1em);
  letter-spacing: 0.04em;
  text-align: justify;
}

.lpbox .product__notes {
  font-size: calc(18 / 22 * 1em);
  line-height: calc(30 / 18 * 1em);
  margin-top: .5em;
}


/*-------------------------------------------
 footer
-----------------------------------------------*/

#lpfooter {
  background: #e0d7ce;
  box-sizing: border-box;
  display: block;
  padding: clamp(20px,calc(40 / 750 * 100%),40px);
}
#lpfooter .footer__link {
  text-align: left;
  font-size: calc(22 / 28 * 1em);
  line-height: calc(40 / 22 * 1em);
}
#lpfooter .footer__link li{
  margin: 1.5em auto;
}
#lpfooter #copy {
  text-align: center;
  font-size: calc(18 / 28 * 1em);
  line-height: calc(30 / 18 * 1em);
  box-sizing: border-box;
  border-top: 1px solid #fff;
  padding-top: calc(50 / 670 * 100%);
  margin-top: calc(80 / 750 * 100%);
}

/*-------------------------------------------
 animation
-----------------------------------------------*/
.lpbox .fadein {
  display: block;
  opacity: 1;
  -webkit-transform:translate3d(0,0,0);
  -ms-transform: translate3d(0,0,0);
  -o-transform: translate3d(0,0,0);
  transform: translate3d(0,0,0);
  -webkit-filter: blur(0);
  -o-filter: blur(0);
  filter: blur(0);
  -webkit-transition-duration: 1.2s;
  -o-transition-duration: 1.2s;
  transition-duration: 1.2s;
  -webkit-transition-property: all;
  -o-transition-property: all;
  transition-property: all;
  -webkit-transition-timing-function: ease;
  -o-transition-timing-function: ease;
  transition-timing-function: ease;
}
.lpbox .animhide .fadein {
  display: block;
  opacity: 0;
  -webkit-transform:translate3d(0,1em,0);
  -ms-transform: translate3d(0,1em,0);
  -o-transform: translate3d(0,1em,0);
  transform: translate3d(0,1em,0);
  -webkit-filter: blur(0.5em);
  -o-filter: blur(0.5em);
  filter: blur(0.5em);
}



/* expand */
.lpbox .expand {
  display: block;
  -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.08);
    -ms-transform: scale(1.08);
    -o-transform: scale(1.08);
    transform: scale(1.08);
  }
  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.08);
    -ms-transform: scale(1.08);
    -o-transform: scale(1.08);
    transform: scale(1.08);
  }
  to, 100% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}


