@charset "UTF-8";

:root {
  --rate: 50rem / 390;
  --font-lp_base: "Inter","Noto Sans JP","ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN,HiraKakuProN-W3, 游ゴシック, "Yu Gothic", メイリオ, Meiryo, Verdana, Helvetica, Arial, sans-serif;
  --font-lp_eng: "the-seasons","Noto Serif JP", serif;
  --color-lp_font: #333;
  --color-lp_sub: #888;
  --color-lp_border: #BABABA;
  --color-lp_brown: #695A4E;
  --color-lp_green: #618F6E;
  --color-lp_yellow: #FAF5B7;
  --color-lp_pink: #ED89B3;
  --color-lp_gray: #F4F4F4;
  --color-lp_white: #fff;
  --color-lp_bg: #fff;
  --color-lp_bg_yellow: #FCFADF;
  --color-lp_bg_cream: #FFFFF7;
  --color-lp_bg_green: #EDF4EF;
  --color-lp_bg_beige: #F2ECE6;
  --color-lp_bg_ivoly: #FCFCF9;
  --color-lp_gradation: transparent linear-gradient(180deg, #FFFDDE 0%, #E2F8E4 100%) 0% 0% no-repeat padding-box;;
}


/*--------------------------------
            CSS Animation
 --------------------------------*/

/* zoom
==================================*/
#lp_contents .zoom {
  opacity: 0;
  -ms-filter: blur(30px);
  filter: blur(30px);
  transform: scale(1.2);
  transition: all 2s;
}

#lp_contents .zoom.is-show {
  opacity: 1;
  -ms-filter: blur(0);
  filter: blur(0);
  transform: scale(1);
}


/* blur
==================================*/
@keyframes blur {
   0% {
      -ms-filter: blur(30px);
      filter: blur(30px);
      transform: scale(1.08);
   }
   100% {
      -ms-filter: blur(0);
      filter: blur(0);
      transform: scale(1);
   }
}

#lp_contents .blur{
  opacity: 0;
  transition: all 2.5s;
}

#lp_contents .blur.is-show{
  opacity: 1;
  -webkit-animation: blur 2.5s 1;
  animation: blur 2.5s 1;
  animation-fill-mode: forwards;
}


/* Fade In
==================================*/
@keyframes fadeInDelay {
  0% {
    opacity: 0;
    transform: translateX(-2rem);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
#lp_contents .fadeInDelay li{
  opacity: 0;
}
#lp_contents .fadeInDelay li.is-show {
  animation-name: fadeInDelay;
  animation-duration: 1.5s;
  animation-fill-mode: forwards;
}

#lp_contents .fadeIn {
  opacity: 0;
  transition: 2s;
}
#lp_contents .fadeIn.is-show {
  opacity: 1;
}

#lp_contents .fadeInUp {
  opacity: 0;
  transform: translate(0, 5rem);
  transition: 2.5s;
}
#lp_contents .fadeInUp.is-show {
  transform: translate(0, 0);
  opacity: 1;
}

#lp_contents .delay1{
  transition-delay: 0.25s;
}
#lp_contents .delay2{
  transition-delay: 0.5s;
}
#lp_contents .delay3{
  transition-delay: 0.75s;
}
#lp_contents .delay4{
  transition-delay: 1s;
}


/* slider
==================================*/
#lp_contents .center_slider{
  width: calc(390 * (var(--rate)));
  overflow: hidden;
}

#lp_contents .slick-list{
  overflow: visible;
}

#lp_contents .slick-track {
  display: flex;
}

#lp_contents .slick-slide {
  height: auto !important;
}

#lp_contents .slick-dots{
  position: static;
  margin: auto;
  line-height: 0;
}

#lp_contents .slick-dots li{
  display: inline-block;
  margin: calc(20 * (var(--rate))) calc(7.5 * (var(--rate))) 0;
  width: calc(8 * (var(--rate)));
  height: calc(8 * (var(--rate)));
  border-radius: 100%;
  background-color: #000;
  line-height: 0;
  opacity: 0.1;
}

#lp_contents .slick-dots li:first-child:last-child{
  display: none;
}

#lp_contents .slick-dots li.slick-active{
  opacity: 1;
}

#lp_contents .slick-dots li button{
  display: none;
}

#lp_contents .slick-dotted.slick-slider{
  margin: 0;
}


/* modal
==================================*/
#lp_contents .modal{
  display: none;
  height: 100vh;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
}
#lp_contents .modal__bg{
  position: absolute;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(5px);
}
#lp_contents .modal__content{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 1001;
  background-color: var(--color-lp_white);
  border-radius: calc(20 * (var(--rate)));
}
#lp_contents .modal_inner{
  width: calc(370 * (var(--rate)));
  max-height: 90svh;
  overflow-y: scroll;
  padding: calc(30 * (var(--rate))) calc(25 * (var(--rate)));
}
#lp_contents .close-btn {
  position: fixed;
  height: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(50 * (var(--rate)));
  height: calc(50 * (var(--rate)));
  top: 0;
  right: 0;
  z-index: 5;
}
#lp_contents .close-btn span {
  position: absolute;
  display: block;
  width: calc(20 * (var(--rate)));
  aspect-ratio: 1 / 1;
  top: calc(13 * (var(--rate)));
  right: calc(13 * (var(--rate)));
}
#lp_contents .close-btn span:before,
#lp_contents .close-btn span:after{
  content: '';
  width: calc(25 * (var(--rate)));
  height: 1px;
  background-color: #000;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: calc(-2 * (var(--rate)));
  bottom: 0;
  margin: auto;
}
#lp_contents .close-btn span:after{
  transform: rotate(-45deg);
}


/* accordion
==================================*/
#lp_contents .accordion{
  transition: all 0.5s;
}

#lp_contents .accordion.is-hide{
  position: relative;
  overflow: hidden;
  height: calc(60 * (var(--rate)));
  mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0));
}

#lp_contents .trigger.is-show{
  display: flex;
}

#lp_contents .trigger .arrow{
  position: relative;
  display: inline-block;
  width: calc(10 * (var(--rate)));
  height: calc(10 * (var(--rate)));
}

#lp_contents .trigger .arrow:before,
#lp_contents .trigger .arrow:after{
  content: '';
  width: 100%;
  height: 1px;
  background-color: #000;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  transition: all 0.5s;
}

#lp_contents .trigger .arrow:after{
  transform: rotate(90deg);
}

#lp_contents .trigger.is-show .arrow:after{
  transform: rotate(0);
}


/* Tab
==================================*/
#lp_contents .js-switchingContents{
  display: none;
  height: 0;
  opacity: 0;
  transition: .3s;
  pointer-events:none;
  &.is-open {
    display: block;
    height: auto;
    display: block;
    opacity: 1;
    pointer-events: auto;
  }
}


/*--------------------------------
              Common
--------------------------------*/
main,#Wrap,.wrapBottom,.wrapTop{
  width: 100%;
  max-width: 100%;
}

#FooterWrap{
  position: relative;
  z-index: 100;
  background-color: #fff;
}

#header_txt_slider,
#header_img_slider {
  position: relative;
  z-index: 100;
}

#lp_contents *{
  box-sizing: border-box;
}

#lp_contents{
  font-family: var(--font-lp_base);
  /*font-feature-settings: "palt";*/
  font-size: calc(14 * (var(--rate)));
  letter-spacing: 0.05em;
  line-height: 2;
  text-align: center;

  display: flex;
  justify-content: center;

  color: var(--color-lp_font);
  position: relative;
}
#lp_contents:before{
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background-image: url(../img/260316/bg.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  pointer-events: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
}
#lp_contents .sp_only{display: none;}
#lp_contents img{width: 100%;display: block;height: auto; image-rendering: -webkit-optimize-contrast; -webkit-backface-visibility: hidden;}
#lp_contents a{display: block;width: 100%;cursor: pointer;transition: all 0.5s;color: inherit;}
#lp_contents a:hover{opacity: .8}
#lp_contents ul li,#lp_contents ol li{list-style: none;}
#lp_contents section{
  position: relative;
}
#lp_contents .lp_inner{
  position: relative;
  display: grid;
  gap: calc(60 * (var(--rate)));
  z-index: 3;
  width: 50rem;
  background-color: var(--color-lp_bg);
  box-shadow: 0 0 3rem rgba(0, 0, 0, 0.16);
  order: 2;
  padding-bottom: calc(60 * (var(--rate)));
  overflow: hidden;
}

/*------------ Text ------------*/
#lp_contents h1,#lp_contents h2,#lp_contents h3{padding: 0;float: none;font-weight: normal;}
#lp_contents p{
  display: block;
  margin: 0;
  font-size: calc(14 * (var(--rate)));
  line-height: 2;
}
#lp_contents sup{
  font-size: 50%;
  margin-top: -0.6rem;
}
#lp_contents .note{
  display: grid;
  gap: calc(6 * (var(--rate)));
  font-size: calc(11 * (var(--rate)));
  line-height: 1.5;
  color: var(--color-lp_sub);
}
#lp_contents p .note{
  margin-top: calc(6 * (var(--rate)));
}
#lp_contents .bold{
  font-weight: bold;
}
#lp_contents .lead{
  font-size: calc(15 * (var(--rate)));
  letter-spacing: 0.1em;
}
#lp_contents .txt_frame span{
  display: block;
  width: fit-content;
  margin: auto;
  padding: calc(10 * (var(--rate))) calc(15 * (var(--rate))) ;
  border-radius: calc(100 * (var(--rate)));
  font-size: calc(15 * (var(--rate)));
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.1em;
  background-color: var(--color-lp_yellow);
}
#lp_contents .txt_frame span + span{
  margin-top: calc(-10 * (var(--rate)));
  padding-bottom: calc(8 * (var(--rate)));
}

/*------------ title ------------*/
#lp_contents .main_eng_ttl{
  display: grid;
  gap: calc(10 * (var(--rate)));
  font-family: var(--font-lp_eng);
  font-size: calc(28 * (var(--rate)));
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.1em;
}

#lp_contents .main_eng_ttl .main_ttl_head{
  font-size: calc(18 * (var(--rate)));
  font-weight: 400;
  line-height: 1;
}

#lp_contents .main_eng_ttl .sub_ttl{
  font-family: var(--font-lp_base);
  font-size: calc(15 * (var(--rate)));
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
}

#lp_contents .main_eng_ttl .sub_ttl .small{
  font-size: calc(12 * (var(--rate)));
}

#lp_contents .main_jpn_ttl{
  display: grid;
  gap: calc(12 * (var(--rate)));
  font-size: calc(20 * (var(--rate)));
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.1em;
}

#lp_contents .main_jpn_ttl .sub_ttl{
  display: flex;
  justify-content: center;
  width: calc(160 * (var(--rate)));
  height: calc(30 * (var(--rate)));
  margin: auto;
  padding-top: calc(7 * (var(--rate)));
  font-size: calc(13 * (var(--rate)));
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
  background-image: url(../img/260316/sub_jpn_ttl.svg);
  background-repeat: no-repeat;
  background-size: 100%;
}

/*------------ Link ------------*/
#lp_contents .txt_link{
  width: fit-content;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: calc(6 * (var(--rate)));
  margin: auto;
  padding-bottom: calc(2 * (var(--rate)));
  font-size: calc(13 * (var(--rate)));
  line-height: 1;
  border-bottom: 1px solid var(--color-lp_pink);
}

#lp_contents .txt_link .plus{
  position: relative;
  display: block;
  width: calc(10 * (var(--rate)));
  height: calc(10 * (var(--rate)));
}

#lp_contents .txt_link .plus:before,
#lp_contents .txt_link .plus:after{
  content: '';
  width: 100%;
  height: 1px;
  background-color: var(--color-lp_sub);
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

#lp_contents .txt_link .plus:after{
  rotate: 90deg;
}

#lp_contents .cart_btn{
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(70 * (var(--rate)));
  height: calc(24 * (var(--rate)));
  font-family: var(--font-lp_eng);
  font-size: calc(13 * (var(--rate)));
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.1em;
  background-color: var(--color-lp_brown);
  color: var(--color-lp_white);
}

/*------------ item_credit ------------*/
#lp_contents .item_credit{
  display: grid;
  gap: calc(8 * (var(--rate)));
}

#lp_contents .item_credit .item_label{
  width: fit-content;
  margin: auto;
  padding: calc(3 * (var(--rate))) calc(6 * (var(--rate))) calc(2 * (var(--rate)));
  font-size: calc(12 * (var(--rate)));
  line-height: 1;
  color: var(--color-lp_sub);
  border: 1px solid var(--color-lp_border);
}

#lp_contents .item_credit .item_name{
  font-size: calc(15 * (var(--rate)));
  font-weight: 500;
  line-height: 1.75;
}

#lp_contents .item_credit .item_tag{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(6 * (var(--rate)));
}

#lp_contents .item_credit .item_tag span{
  padding: calc(5 * (var(--rate))) calc(15 * (var(--rate))) calc(4 * (var(--rate)));
  font-size: calc(13 * (var(--rate)));
  line-height: 1;
  background-color: var(--color-lp_yellow);
  border-radius: calc(100 * (var(--rate)));
}

#lp_contents .item_cart{
  display: flex;
  gap: calc(10 * (var(--rate)));
}

#lp_contents .item_cart .item_price{
  font-family: var(--font-lp_eng);
  font-size: calc(22 * (var(--rate)));
  line-height: 1;
}

#lp_contents .item_cart .item_price .tax{
  display: inline-block;
  margin-left: calc(5 * (var(--rate)));
  font-size: calc(11 * (var(--rate)));
}

/*------------ cart_list ------------*/
#lp_contents .cart_list{
  display: grid;
  gap: calc(9 * (var(--rate)));
}

#lp_contents .cart_list li{
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: calc(60 * (var(--rate)));
  padding: calc(5 * (var(--rate))) calc(10 * (var(--rate)));
  background-color: var(--color-lp_white);
  box-shadow: 0 0 calc(20 * (var(--rate))) #0000001A;
  border-radius: calc(5 * (var(--rate)));
}

#lp_contents .cart_list .item_detail{
  display: grid;
  gap: calc(4 * (var(--rate)));
  width: calc(140 * (var(--rate)));
}

#lp_contents .cart_list .item_value{
  position: relative;
  width: fit-content;
  margin: 0 auto calc(6 * (var(--rate)));
  padding-bottom: calc(2 * (var(--rate)));
  font-size: calc(11.5 * (var(--rate)));
  line-height: 1;
  letter-spacing: 0.025em;
  border-bottom: 1px solid var(--color-lp_pink);
}

#lp_contents .cart_list .item_value.none{
  margin-bottom: 0;
}

#lp_contents .cart_list .item_value:not(.none):after{
  content: '';
  position: absolute;
  display: block;
  width: calc(8 * (var(--rate)));
  height: calc(6 * (var(--rate)));
  margin: auto;
  background-image: url(../img/260316/arrow-pink.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  left: 0;
  right: 0;
  bottom: calc(-6 * (var(--rate)));
}

#lp_contents .cart_list .item_value .big{
  color: var(--color-lp_pink);
  font-size: calc(14 * (var(--rate)));
  font-weight: bold;
}

#lp_contents .cart_list .item_capa{
  font-feature-settings: "palt";
  font-size: calc(13 * (var(--rate)));
  line-height: 1;
}

#lp_contents .cart_list li.special{
  background-color: #FFFFF7;
}

#lp_contents .cart_list li.special .item_price{
  color: var(--color-lp_pink);
}

#lp_contents .cart_list li.special .cart_btn{
  background-color: #D35476;
}

/*------------ t_container ------------*/
#lp_contents .t_container{
  display: grid;
  gap: calc(12 * (var(--rate)));
  position: relative;
  padding: calc(20 * (var(--rate))) calc(15 * (var(--rate)));
  border: 1px solid var(--color-lp_border);
  border-radius: calc(5 * (var(--rate)));
}
#lp_contents .t_container_ttl{
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(8 * (var(--rate)));
  width: fit-content;
  margin: auto;
  padding: 0 calc(10 * (var(--rate)));
  font-size: calc(15 * (var(--rate)));
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.1em;
  top: 0;
  left: 0;
  right: 0;
  transform: translateY(calc(-50%));
  z-index: 2;
  background-color: var(--color-lp_white);
}
#lp_contents .t_container_ttl .eng{
  font-family: var(--font-lp_eng);
  font-size: calc(16 * (var(--rate)));
  font-style: italic;
  line-height: 1;
}
#lp_contents .t_container_ttl .jpn{
  position: relative;
  display: block;
  font-size: calc(15 * (var(--rate)));
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.1em;
}


/*--------------------------------
              contents
--------------------------------*/

/* sec_mv
==================================*/
#lp_contents .sec_mv{
  display: grid;
  gap: calc(30 * (var(--rate)));
}

#lp_contents .sec_mv .lead_wrap{
  display: grid;
  gap: calc(16 * (var(--rate)));
}

#lp_contents .sec_mv .about_wrap{
  display: grid;
  gap: calc(8 * (var(--rate)));
  width: calc(340 * (var(--rate)));
  margin: auto;
  padding: calc(20 * (var(--rate))) calc(15 * (var(--rate))) calc(15 * (var(--rate)));
  border-radius: calc(5 * (var(--rate)));
  border: 1px solid var(--color-lp_green);
}

#lp_contents .sec_mv .about_wrap .about_ttl{
  width: fit-content;
  margin: auto;
  padding-left: calc(25 * (var(--rate)));
  padding-bottom: calc(2 * (var(--rate)));
  background-image: url(../img/260316/check.svg);
  background-repeat: no-repeat;
  background-position: top left;
  background-size: calc(15 * (var(--rate))) calc(15 * (var(--rate)));
  font-size: calc(15 * (var(--rate)));
  line-height: 1;
  border-bottom: 1px  solid var(--color-lp_green);
  color: var(--color-lp_green);
}


/* sec_pick
==================================*/
#lp_contents .sec_pick{
  display: grid;
  gap: calc(40 * (var(--rate)));
  padding: calc(40 * (var(--rate))) calc(15 * (var(--rate)));
  background: transparent linear-gradient(206deg, #FFFCD0 0%, #FFFDE1 33%, #FFFFFF 44%, #EEFCE8 59%, #E1F9D5 100%) 0% 0% no-repeat padding-box;
}

#lp_contents .sec_pick .t_container_ttl{
  background-color: #E9FBE0;
}

#lp_contents .sec_pick .t_container_ttl .eng{
  color: var(--color-lp_pink);
}

/*------------ pick_wrap ------------*/
#lp_contents .sec_pick .pick_wrap{
  display: grid;
  gap: calc(20 * (var(--rate)));
}

#lp_contents .sec_pick .pick_wrap .item_blk{
  display: grid;
  align-items: center;
  gap: calc(20 * (var(--rate)));
  grid-template-columns: calc(130 * (var(--rate))) 1fr;
}

#lp_contents .sec_pick .pick_wrap .point_list{
  display: grid;
  gap: calc(10 * (var(--rate)));
}

#lp_contents .sec_pick .pick_wrap .point_list ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  flex-flow: wrap-reverse;
  gap: 0 calc(10 * (var(--rate)));
}

#lp_contents .sec_pick .pick_wrap .point_list li{
  width: calc(100 * (var(--rate)));
  height: calc(100 * (var(--rate)));
  border-radius: 100%;
  background: var(--color-lp_gradation);
  mix-blend-mode: multiply;
  padding-top: calc(18 * (var(--rate)));
  font-size: calc(13 * (var(--rate)));
  line-height: 1.5;
}

#lp_contents .sec_pick .pick_wrap .point_list li:nth-of-type(3){
  margin-bottom: calc(-10 * (var(--rate)));
}

#lp_contents .sec_pick .pick_wrap .point{
  margin-bottom: calc(2 * (var(--rate)));
  font-family: var(--font-lp_eng);
  font-size: calc(14 * (var(--rate)));
  line-height: 1;
}

#lp_contents .sec_pick .pick_wrap .point .num{
  margin-left: calc(5 * (var(--rate)));
  font-size: calc(24 * (var(--rate)));
}


/* sec_cmnt
==================================*/
#lp_contents .sec_cmnt{
  display: grid;
  gap: calc(30 * (var(--rate)));
  padding-inline: calc(15 * (var(--rate)));
}

#lp_contents .cmnt_area{
  position: relative;
  display: grid;
  gap: calc(20 * (var(--rate)));
  margin-top: calc(40 * (var(--rate)));
  padding: calc(80 * (var(--rate))) calc(15 * (var(--rate))) calc(30 * (var(--rate)));
  background-color: var(--color-lp_bg_yellow);
  border-radius: calc(10 * (var(--rate)));
}

#lp_contents .cmnt_area .cmnt_img{
  position: relative;
  width: calc(300 * (var(--rate)));
  margin: auto;
}

#lp_contents .cmnt_area .cmnt_img img{
  border-radius: calc(20 * (var(--rate)));
}

#lp_contents .cmnt_area .cmnt_img .txt_frame{
  position: absolute;
  top: calc(15 * (var(--rate)));
  right: calc(-15 * (var(--rate)));
  z-index: 2;
}

#lp_contents .cmnt_area .cmnt_img .txt_frame:before{
  content: '';
  position: absolute;
  width: calc(22 * (var(--rate)));
  height: calc(15 * (var(--rate)));
  background-image: url(../img/260316/arrow-white.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  left: 0;
  right: 0;
  bottom: calc(-10 * (var(--rate)));
  margin: auto;
}

#lp_contents .cmnt_area .cmnt_img .txt_frame span {
  padding: calc(8 * (var(--rate))) calc(10 * (var(--rate)));
  font-size: calc(13 * (var(--rate)));
  background-color: var(--color-lp_white);
  box-shadow: 0 0 calc(20 * (var(--rate))) #0000001A;
}

#lp_contents .cmnt_area .cmnt_img .txt_frame span + span{
  margin-top: calc(-10 * (var(--rate)));
  padding-bottom: calc(6 * (var(--rate)));
  box-shadow: none;
}

#lp_contents .cmnt_area .cmnt_txt{
  text-align: justify;
  letter-spacing: 0.025em;
}

#lp_contents .cmnt_area .accordion{
  height: calc(160 * (var(--rate)));
}

#lp_contents .prof_img{
  position: absolute;
  width: calc(120 * (var(--rate)));
  height: calc(120 * (var(--rate)));
  border: calc(10 * (var(--rate))) solid var(--color-lp_bg_yellow);
  border-radius: 100%;
  top: calc(-40 * (var(--rate)));
  left: 0;
  right: 0;
  margin: auto;
  z-index: 2;
  overflow: hidden;
}

#lp_contents .prof_name{
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: calc(4 * (var(--rate)));
  font-size: calc(15 * (var(--rate)));
  line-height: 1;
}

#lp_contents .prof_title{
  font-size: calc(12 * (var(--rate)));
}

#lp_contents .prof_txt{
  text-align: justify;
  font-size: calc(12 * (var(--rate)));
  letter-spacing: 0.025em;
}


/* sec_rcmd
==================================*/
#lp_contents .sec_rcmd .rcmd_wrap{
  display: grid;
  gap: calc(20 * (var(--rate)));
  padding: calc(50 * (var(--rate))) calc(10 * (var(--rate)));
  background-color: var(--color-lp_bg_green);
}

#lp_contents .sec_rcmd .c-switchingTabs{
  display: flex;
  justify-content: center;
  gap: calc(15 * (var(--rate)));
}

#lp_contents .sec_rcmd .c-switchingTabs li{
  position: relative;
  padding-bottom: calc(8 * (var(--rate)));
}

#lp_contents .sec_rcmd .c-switchingTabs li.is-current:after{
  content: '';
  width: calc(16 * (var(--rate)));
  height: calc(8 * (var(--rate)));
  background-image: url(../img/260316/arrow-green.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

#lp_contents .sec_rcmd .c-switchingTabs__tab{
  position: relative;
  display: grid;
  gap: calc(8 * (var(--rate)));
}

#lp_contents .sec_rcmd .c-switchingTabs__tab .small{
  position: relative;
  display: block;
  font-size: calc(12 * (var(--rate)));
  line-height: 1.5;
}

#lp_contents .sec_rcmd .is-current .c-switchingTabs__tab .small:before,
#lp_contents .sec_rcmd .is-current .c-switchingTabs__tab .small:after{
  content: '';
  width: 1px;
  height: calc(24 * (var(--rate)));
  background-color: var(--color-lp_pink);
  position: absolute;
  bottom: 0;
}

#lp_contents .sec_rcmd .is-current .c-switchingTabs__tab .small:before{
  left: calc(4 * (var(--rate)));
  rotate: -20deg;
}

#lp_contents .sec_rcmd .is-current .c-switchingTabs__tab .small:after{
  right: calc(4 * (var(--rate)));
  rotate: 20deg;
}

#lp_contents .sec_rcmd .c-switchingTabs__tab .tab_btn{
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(113 * (var(--rate)));
  height: calc(36 * (var(--rate)));
  font-size: calc(14 * (var(--rate)));
  font-weight: 500;
  letter-spacing: 0.05em;
  border-radius: calc(10 * (var(--rate)));
  background-color: var(--color-lp_white);
  box-shadow: 0 0 calc(20 * (var(--rate))) #0000001A;
  transition: all 0.5s;
}

#lp_contents .sec_rcmd .is-current .c-switchingTabs__tab .tab_btn{
  background-color: var(--color-lp_green);
  color: var(--color-lp_white);
}

#lp_contents .sec_rcmd .c-switchingContainer{
  padding: calc(30 * (var(--rate))) calc(15 * (var(--rate)));
  background: var(--color-lp_white);
  border-radius: calc(20 * (var(--rate)));
}

#lp_contents .sec_rcmd .c-switchingContainer__contents{
  display: grid;
  gap: calc(30 * (var(--rate)));
}

#lp_contents .sec_rcmd .rcmd_wrap .rcmd_ttl{
  font-size: calc(16 * (var(--rate)));
  font-weight: 600;
  line-height: 1.75;
  color: var(--color-lp_brown);
}

#lp_contents .sec_rcmd .rcmd_wrap .item_blk{
  display: grid;
  align-items: center;
  grid-template-columns: calc(140 * (var(--rate))) 1fr;
}

#lp_contents .sec_rcmd .rcmd_wrap .item_detail{
  width: calc(135 * (var(--rate)));
}

#lp_contents .sec_rcmd .c-switchingContainer__contents > .t_container{
  margin-top: calc(30 * (var(--rate)));
  padding-top: calc(40 * (var(--rate)));
}

#lp_contents .sec_rcmd .c-switchingContainer__contents > .t_container .t_container_ttl:before,
#lp_contents .sec_rcmd .c-switchingContainer__contents > .t_container .t_container_ttl:after{
  content: '';
  width: 1px;
  height: calc(24 * (var(--rate)));
  background-color: var(--color-lp_pink);
}
#lp_contents .sec_rcmd .c-switchingContainer__contents > .t_container .t_container_ttl:before{
  left: calc(4 * (var(--rate)));
  rotate: -20deg;
}
#lp_contents .sec_rcmd .c-switchingContainer__contents > .t_container .t_container_ttl:after{
  right: calc(4 * (var(--rate)));
  rotate: 20deg;
}

#lp_contents .sec_rcmd .cmpt_blk{
  display: grid;
  gap: calc(15 * (var(--rate)));
}

#lp_contents .sec_rcmd .cmpt_name{
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: calc(6 * (var(--rate)));
  padding-top: calc(3 * (var(--rate)));
  font-weight: 500;
  background-color: var(--color-lp_gray);
  border-radius: calc(5 * (var(--rate)));
}

#lp_contents .sec_rcmd .cmpt_name .small{
  font-size: calc(12 * (var(--rate)));
}

#lp_contents .sec_rcmd .cmpt_detail{
  display: grid;
  align-items: start;
  gap: calc(15 * (var(--rate)));
  grid-template-columns: calc(100 * (var(--rate))) 1fr;
}

#lp_contents .sec_rcmd .cmpt_detail figure{
  border-radius: calc(5 * (var(--rate)));
  overflow: hidden;
}

#lp_contents .sec_rcmd .cmpt_txt{
  text-align: justify;
  font-feature-settings: "palt";
  font-size: calc(13 * (var(--rate)));
  letter-spacing: 0.025em;
}

#lp_contents .sec_rcmd .cmnt_wrap{
  display: grid;
  gap: calc(20 * (var(--rate)));
  margin-top: calc(20 * (var(--rate)));
}

#lp_contents .sec_rcmd .cmnt_wrap .main_eng_ttl{
  font-size: calc(24 * (var(--rate)));
}

#lp_contents .sec_rcmd .btn_blk{
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: calc(340 * (var(--rate)));
  margin: auto;
}

#lp_contents .sec_rcmd .btn_blk:before,
#lp_contents .sec_rcmd .btn_blk:after{
  content: '';
  position: absolute;
  width: calc(12 * (var(--rate)));
  height: calc(24 * (var(--rate)));
  background-image: url(../img/260316/arrow-brown.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  top: 0;
  bottom: 0;
  margin: auto;
}

#lp_contents .sec_rcmd .btn_blk:before{
  transform: scale(-1, 1);
  left: 0;
}

#lp_contents .sec_rcmd .btn_blk:after{
  right: 0;
}

#lp_contents .sec_rcmd .c-btn{
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-inline: calc(28 * (var(--rate)));
  background: initial;
  border: none;
  cursor: pointer;
  transition: .3s;
  z-index: 2;
  &.is-current {
    display: none;
  }
}

#lp_contents .sec_rcmd .c-btn[data-switch-tab="type02"]{
  order:-1;
}

#lp_contents .sec_rcmd .is-current + .c-btn[data-switch-tab="type02"]{
  order:3;
}

#lp_contents .sec_rcmd .c-btn:hover .tab_btn{
  background-color: var(--color-lp_green);
  color: var(--color-lp_white);
}


/* sec_item
==================================*/
#lp_contents .sec_item{
  display: grid;
  gap: calc(30 * (var(--rate)));
}

#lp_contents .sec_item .item{
  display: grid;
  align-content: start;
  gap: calc(15 * (var(--rate)));
  width: calc(300 * (var(--rate)));
  margin: 0 calc(5 * (var(--rate)));
  padding: calc(20 * (var(--rate)));
  border-radius: calc(20 * (var(--rate)));
  background-color: #FAFAF7;
}

#lp_contents .sec_item .item_lead{
  font-size: calc(14 * (var(--rate)));
  font-weight: 600;
  line-height: 1.75;
  color: var(--color-lp_brown);
}

#lp_contents .sec_item .item_img{
  width: calc(180 * (var(--rate)));
  margin: auto;
}

#lp_contents .sec_item .item_name {
  font-size: calc(14 * (var(--rate)));
}

#lp_contents .sec_item .item_cart{
  justify-content: center;
}

#lp_contents .sec_item .item_price {
  font-size: calc(19 * (var(--rate)));
}

#lp_contents .sec_item .staff_detail{
  display: grid;
  gap: calc(10 * (var(--rate)));
  align-items: center;
  grid-template-columns: calc(40 * (var(--rate))) 1fr;
}

#lp_contents .sec_item .staff_img{
  border-radius: 100%;
  overflow: hidden;
}

#lp_contents .sec_item .staff_name{
  text-align: left;
  font-size: calc(12 * (var(--rate)));
  line-height: 1.5;
}

#lp_contents .sec_item .review_img{
  border-radius: calc(10 * (var(--rate)));
  overflow: hidden;
}

#lp_contents .sec_item .review_txt{
  text-align: justify;
  font-size: calc(13 * (var(--rate)));
  line-height: 1.75;
  letter-spacing: 0.025em;
}

#lp_contents .sec_item .accordion{
  height: calc(90 * (var(--rate)));
}


/* sec_about
==================================*/
#lp_contents .sec_about{
  background-color: var(--color-lp_bg_beige);
}

#lp_contents .sec_about .about_wrap{
  display: grid;
  gap: calc(12 * (var(--rate)));
  width: 100%;
  padding-block: calc(30 * (var(--rate))) calc(40 * (var(--rate)));
}

#lp_contents .sec_about .about_wrap .about_ttl{
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: calc(8 * (var(--rate)));
  font-family: var(--font-lp_eng);
  font-size: calc(16 * (var(--rate)));
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1;
  color: #907153;
}

#lp_contents .sec_about .about_wrap .about_ttl img{
  width: calc(120 * (var(--rate)));
}


/* sec_cmpn
==================================*/
#lp_contents .sec_cmpn{
  display: grid;
  gap: calc(30 * (var(--rate)));
  padding: calc(50 * (var(--rate))) calc(30 * (var(--rate)));
  background: var(--color-lp_gradation);
}

#lp_contents .sec_cmpn .cmpn_list{
  display: grid;
  gap: calc(20 * (var(--rate)));
}

#lp_contents .sec_cmpn .cmpn_list li{
  display: grid;
  gap: calc(16 * (var(--rate)));
  padding: calc(18 * (var(--rate))) calc(15 * (var(--rate))) calc(24 * (var(--rate)));
  background-color: var(--color-lp_white);
  border-radius: calc(20 * (var(--rate)));
}

#lp_contents .sec_cmpn .cmpn_eng_ttl{
  display: grid;
  gap: calc(4 * (var(--rate)));
  width: fit-content;
  margin: auto;
  padding-bottom: calc(5 * (var(--rate)));
  border-bottom: 1px solid var(--color-lp_pink);
}

#lp_contents .sec_cmpn .cmpn_jpn_ttl{
  display: grid;
  gap: calc(14 * (var(--rate)));
  width: fit-content;
  margin: auto;
  padding-bottom: calc(5 * (var(--rate)));
  border-bottom: 1px solid var(--color-lp_pink);
}

#lp_contents .sec_cmpn .cmpn_num{
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: calc(5 * (var(--rate)));
  font-family: var(--font-lp_eng);
  font-size: calc(18 * (var(--rate)));
  line-height: 1;
  letter-spacing: 0.1em;
}

#lp_contents .sec_cmpn .cmpn_num .big{
  font-size: calc(27 * (var(--rate)));
}

#lp_contents .sec_cmpn .cmpn_ttl{
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 500;
}

#lp_contents .sec_cmpn .cmpn_eng_ttl .cmpn_ttl{
  font-family: var(--font-lp_eng);
  font-size: calc(30 * (var(--rate)));
}

#lp_contents .sec_cmpn .cmpn_eng_ttl .cmpn_ttl .big{
  font-size: calc(40 * (var(--rate)));
}

#lp_contents .sec_cmpn .cmpn_jpn_ttl .cmpn_ttl{
  font-size: calc(18 * (var(--rate)));
}

#lp_contents .sec_cmpn .cmpn_img{
  width: calc(180 * (var(--rate)));
  margin: auto;
}


/* sec_btm
==================================*/
#lp_contents .sec_btm{
  display: grid;
  gap: calc(30 * (var(--rate)));
}

#lp_contents .sec_btm .all_btn{
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(330 * (var(--rate)));
  height: calc(80 * (var(--rate)));
  margin: auto;
  font-size: calc(15 * (var(--rate)));
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.1em;
  border: 1px solid var(--color-lp_sub);
}

#lp_contents .sec_btm .all_btn:before{
  content: '';
  position: absolute;
  width: calc(10 * (var(--rate)));
  height: calc(10 * (var(--rate)));
  border-top: 1px solid var(--color-lp_sub);
  border-right: 1px solid var(--color-lp_sub);
  rotate: 45deg;
  top: 0;
  right: calc(20 * (var(--rate)));
  bottom: 0;
  margin: auto;
  transition: all 0.5s;
}

#lp_contents .sec_btm .all_btn:hover:before{
  right: calc(15 * (var(--rate)));
}

#lp_contents .sec_btm .all_btn img{
  width: calc(100 * (var(--rate)));
  margin: 0 auto calc(10 * (var(--rate)));
}

#lp_contents .sec_btm .note{
  display: block;
  width: calc(330 * (var(--rate)));
  margin: auto;
  text-align: justify;
  line-height: 2;
  letter-spacing: 0.025em;
}


/* cmpt_list
==================================*/
#lp_contents .cmpt_list{
  display: grid;
  gap: calc(20 * (var(--rate)));
}

#lp_contents .cmpt_list .point{
  display: grid;
  gap: calc(16 * (var(--rate)));
}

#lp_contents .cmpt_list .point_ttl{
  display: grid;
  gap: calc(14 * (var(--rate)));
  width: fit-content;
  margin: auto;
  padding-bottom: calc(5 * (var(--rate)));
  border-bottom: 1px solid var(--color-lp_pink);
}

#lp_contents .cmpt_list .point_num{
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: calc(5 * (var(--rate)));
  font-family: var(--font-lp_eng);
  font-size: calc(18 * (var(--rate)));
  line-height: 1;
  letter-spacing: 0.1em;
}

#lp_contents .cmpt_list .point_num .big{
  font-size: calc(27 * (var(--rate)));
}

#lp_contents .cmpt_list .cmpt_name{
  font-size: calc(18 * (var(--rate)));
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 500;
}

#lp_contents .cmpt_list .cmpt_detail{
  display: flex;
  align-items: start;
  gap: calc(15 * (var(--rate)));
}

#lp_contents .cmpt_list .cmpt_img{
  width: calc(100 * (var(--rate)));
  border-radius: calc(4 * (var(--rate)));
  overflow: hidden;
}

#lp_contents .cmpt_list .cmpt_img + .cmpt_txt{
  width: calc(195 * (var(--rate)));
}

#lp_contents .cmpt_list .cmpt_txt{
  text-align: justify;
  font-size: calc(13 * (var(--rate)));
  letter-spacing: 0.025em;
}


/*--------------------------------
            Layout  PC
 --------------------------------*/
@media screen and (min-width: 768px){
  #lp_contents .full_area{
    position: sticky;
    top: 0;
    height: 100vh;

    width: calc(calc(100% - 50rem) / 2);
    max-width: 60rem;

    padding: 3rem;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  #lp_contents .left_area{
    left: 0;
    order: 1;
  }

  #lp_contents .left_area .ttl_img{
    display: grid;
    justify-content: center;
    gap: 3rem;
  }

  #lp_contents .left_area .title_img{
    width: min(400px, calc(400 * (100vw / 1400)));
    margin: auto;
  }

  #lp_contents .left_area .ttl_logo{
    width: min(120px, calc(120 * (100vw / 1400)));
    margin: auto;
  }

  #lp_contents .right_area{
    right: 0;
    order: 3;
  }

  #lp_contents .right_area .nav_list ul{
    display: grid;
    gap: 3rem;
    font-family: var(--font-lp_eng);
    font-size: 2.4rem;
    letter-spacing: 0.1em;
  }

  #lp_contents .right_area .nav_list a{
    line-height: 1;
  }
}


/*--------------------------------
            Responsive
 --------------------------------*/
@media screen and (max-width: 1400px){
  html {
    font-size: calc(10 * (100vw / 1400));
  }
}

@media (min-width: 768px) and (max-width: 1200px) {
  html {
    font-size: calc(10 * (100vw / 1200));
  }

  #lp_contents .left_area,
  #lp_contents .right_area{
    display: none;
  }
}

/*--------------------------------
            Layout  SP
 --------------------------------*/
@media (max-width: 767px) {
  html {
    font-size: calc(10 * (100vw / 500));
  }

  #share{
    z-index: 100 !important;
  }

  .share-txt {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .share-txt span {
    margin-top: calc(40 * (100vw / 750));
    margin-bottom: calc(40* (100vw / 750));
  }

  #FooterWrap {
    margin-top: -3rem;
  }

  #lp_contents{
  }
  #lp_contents .sp_only{display: block;}
  #lp_contents .pc_only{display: none;}

  #lp_contents a:hover{opacity: 1}

  #lp_contents .lp_inner{
    box-shadow: none;
  }

}