@charset "UTF-8";

:root {
	--rate: 50rem / 390;
	--color-lp_font: #000;
	--color-lp_bg: #F7F3E0;
	--color-sub_color: #13433C;
	--color-inner_bg: #FFFDF4;
	--color-sub_bg: #FFF;
	--font-lp_eng: "span-compressed", serif;	
}

/*--------------------------------
            CSS Animation
 --------------------------------*/

@keyframes bounce {
  0% , 100%{
      transform: scale(1.0);
  }
  50%{
      transform: scale(1.15);
  }
}

/* simplebar
==================================*/
#lp_contents .simple-bar_wrap *{
  /*スクロールバー非表示（IE・Edge）*/
  -ms-overflow-style: none;
  /*スクロールバー非表示（Firefox）*/
  scrollbar-width: none;
}

#lp_contents .simple-bar_wrap{
  overflow-x: scroll;
  padding-bottom: calc(25 * (var(--rate)));
  /*スクロールバー非表示（IE・Edge）*/
  -ms-overflow-style: none;
  /*スクロールバー非表示（Firefox）*/
  scrollbar-width: none;
  padding-left: calc(15 * (var(--rate)));
}

#lp_contents .simple-bar_wrap *::-webkit-scrollbar,
#lp_contents .simple-bar_wrap::-webkit-scrollbar{
  display:none;
}

#lp_contents .simple-bar_wrap ul{
  display: flex;
  width: fit-content;
  padding-right: calc(20 * (var(--rate)));
  gap: calc(10 * (var(--rate)));
}

#lp_contents .simplebar-track.simplebar-horizontal {
  height: calc(3 * (var(--rate)));
  width: calc(300 * (var(--rate)));
  background: rgb(190 184 171 / 40%);
  /* margin: auto; */
  border-radius: 100rem;
  margin: 0 auto;
}

#lp_contents .simplebar-track.simplebar-horizontal .simplebar-scrollbar{
  top: 0;
  height: calc(3 * (var(--rate)));
  border-radius: 100rem;
  background-color: #BEB8AB;
}

#lp_contents .simplebar-scrollbar:before{
  background: var(--color-main);
}

/* sweiper
==================================*/
#lp_contents .items-slider {
  position: relative;
  width: 100%;
  background: url(../img/display.png) no-repeat;
  background-size:  calc(290 * (var(--rate)));
  background-position: center top;
  padding-bottom: calc(32 * (var(--rate)));
}

#lp_contents .items-slider .swiper-slide img {
  display: block;
  width: 100%;
  max-width: 600px;
  height: auto;
}

#lp_contents .items-slider .swiper-pagination {
    bottom: 0 !important;
}

#lp_contents .items-slider .swiper-pagination-bullet-active {
    background: var(--color-lp_font);
}

#lp_contents .items-slider .swiper-pagination-bullet {
    width: calc(30 * (var(--rate)));
    border-radius: 0;
    height: calc(3 * (var(--rate)));
}
#lp_contents .items-slider .swiper-button-next, 
#lp_contents .items-slider .swiper-button-prev {
    font-size: 0;
    width: calc(15 * (var(--rate)));
    height: calc(15 * (var(--rate)));
    border: 0;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    transform: rotate(45deg);
    position: absolute;
    top: calc(-290 * (var(--rate)));
    right: calc(20 * (var(--rate)));
    bottom: 0;
    margin: auto;
}


#lp_contents .items-slider .swiper-button-next:after, 
#lp_contents .items-slider .swiper-button-prev:after {
    content: none;
}

#lp_contents .items-slider .swiper-button-prev {
    transform: rotate(-135deg);
    left: calc(20 * (var(--rate)));
    right: auto;
}

/* modal
==================================*/
#lp_contents .modal {
    position: fixed;
    inset: 0;
    z-index: 1000;

    display: flex;
    justify-content: center;
    align-items: center;

    opacity: 0;
    visibility: hidden;
    transition: .3s;
}

#lp_contents .modal.is-active {
    opacity: 1;
    visibility: visible;
}

#lp_contents .modal__overlay {
    position: absolute;
    inset: 0;
	background: rgb(255 253 244 / 95%);
}

#lp_contents .modal__content {
    position: relative;
    width: calc(310 * (var(--rate)));
    z-index: 1;
}

#lp_contents .modal__movie {
    position: relative;
    width: 100%;
    padding-top: 177.78%; /* 9:16縦動画 */
    background: #ccc;
}

#lp_contents .modal__movie iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

#lp_contents .modal__close {
    position: absolute;
    top: calc(0 * (var(--rate)));
    right: calc(0 * (var(--rate)));
    width: 40px;
    height: 40px;
    border: none;
    background: none;
    cursor: pointer;
    z-index: 10;
}

#lp_contents .modal__close::before,
#lp_contents .modal__close::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: calc(26 * (var(--rate)));
    height: 2px;
    background: #fff;
}

#lp_contents .modal__close::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

#lp_contents .modal__close::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}
body.modal-open .page-share-btn {
    display: none;
}
/*--------------------------------
                共 通
 --------------------------------*/

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(13 * (var(--rate)));
  letter-spacing: 0.1em;
  /* color: #222; */
  font-weight: 400;
  display: flex;
  justify-content: center;
  color: var(--color-lp_font);
  background-color: var(--color-lp_bg);
  position: relative;
  /* overflow: hidden; */
}
#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;
  /* padding: calc(50 * (var(--rate))) calc(15 * (var(--rate))); */
  /* padding-right: calc(25 * (var(--rate))); */
  /* padding-left: calc(25 * (var(--rate))); */
}
#lp_contents .lp_inner{
  position: relative;
  z-index: 3;
  width: 100%;
  background-color: var(--color-inner_bg);
  box-shadow: 0 0 .5rem hsl(0deg 0% 67% / 25%);
  order: 2;
  padding-bottom: calc(60 * (var(--rate)));
  /* display: grid; */
  /* gap: calc(60 * (var(--rate))); */
}
#share {
    bottom: calc(15 * (var(--rate)))  !important;
    left: calc(15 * (var(--rate))) !important;
    /* right: 2% !important; */
}

/*------------ Text ------------*/
#lp_contents h1,#lp_contents h2,#lp_contents h3{padding: 0;float: none;font-weight: normal;}
#lp_contents p {
  /* margin: calc(30 * (var(--rate))) auto; */
  letter-spacing: 0.1em;
  /* font-size: calc(15 * (var(--rate))); */
  /* line-height: 2; */
}
#lp_contents sup{
  font-size: 50%;
  margin-top: -0.6rem;
}
#lp_contents .note{
  /* margin-top: calc(10 * (var(--rate))); */
  font-size: calc(11 * (var(--rate))) !important;
  /* line-height: 1.5; */
  /* font-weight: 400; */
}
#lp_contents p .note{
  margin-top: 0;
}
#lp_contents .bold{
  font-weight: bold;
}
#lp_contents .small{
  font-size: calc(10 * (var(--rate)));
}

#lp_contents .en-txt {
    font-family: "span-compressed", serif;
    font-weight: 700;
    letter-spacing: 0.02em;
}
/* 追従メニュー */
.fixed-nav {
	display: none;
}
.fixed-nav.m_fixed {
	position: fixed;
	bottom: 0;
	left: 0;
	border-top: 1px solid var(--color-lp_font);
	border-bottom: 1px solid var(--color-lp_font);
	width: 100%;
	animation: fadein 1s ease-out forwards;
	display: block;
	z-index: 20;
	background: var(--color-inner_bg);
}

.fixed-nav.m_fixed .nav-list {
    display: flex;
    align-items: center;
    height: 5rem;
    background: #fff;
    color: #6CC4BE;
    /* font-family: "Marcellus", "Noto Sans JP", sans-serif; */
    justify-content: center;
    box-shadow: 0 0 6px #dddddd;
    /* padding: 0 6rem; */
}

.fixed-nav.m_fixed .nav-list li a {
    padding: 0 1.6rem;
    font-weight: 500;
    text-align: center;
    font-size: 1.2rem;
    line-height: 1.4;
    /* display: flex; */
    /* justify-content: center; */
    width: auto;
}

.fixed-nav a.active {
    opacity: 1 !important;
    font-weight: 600;
}

.fixed-nav.m_fixed .nav-menu {
    display: flex;
    /* width: 60rem; */
    align-items: center;
    /* flex-wrap: wrap; */
}

.fixed-nav.m_fixed .nav-menu li {
    width: calc(100% / 4);
    font-size: calc(12 * (var(--rate)));
    text-align: center;
    padding: calc(10 * (var(--rate))) 0 !important;
}

.fixed-nav.m_fixed .nav-menu li a {
    border-right: 1px solid;
}

.fixed-nav.m_fixed .nav-menu li:last-child a {
    border-right: none;
}
#lp_contents .nav-menu .right-nav {
    position: relative;
}

#lp_contents .nav-menu .right-nav::before {
    content: '';
    width: 0;
    height: 0;
    border-left: .5rem solid;
    border-top: .5rem solid transparent;
    border-bottom: .5rem solid transparent;
    position: absolute;
    left: 1.6rem;
    top: 50%;
    transform: translate(0, -50%);
    /* opacity: 0; */
}

#lp_contents .nav-menu .right-nav.is-active::before {
    opacity: 1;
}

#lp_contents .nav-menu .right-nav:hover::before {
    opacity: 1;
}

/*
#lp_contents .nav-wrapper {
    display: none;
}

#lp_contents .nav-wrapper.m_fixed {
    display: block;
}
*/

/* Contents エリア調整
==================================*/
#intro-section .lead_txt p {
    font-size: calc(15 * (var(--rate)));
    text-align: center;
    margin-top: calc(15 * (var(--rate)));
    /* letter-spacing: 0.1em; */
    line-height: 2;
}

#intro-section .lead_txt {
    text-align: center;
    margin: calc(40 * (var(--rate))) auto calc(50 * (var(--rate)));
    font-size: calc(15 * (var(--rate)));
    line-height: 2;
    font-weight: 500;
    letter-spacing: 0.08em;
}

#lp_contents .nav-menu a span {
    font-size: calc(14 * (var(--rate)));
    display: block;
}

#lp_contents .nav-menu li a {
    display: block;
    width: calc(112 * (var(--rate)));
    padding: calc(10 * (var(--rate))) 0 calc(22 * (var(--rate)));
    text-align: center;
    background: #F9F7EA;
    border: 1px solid;
    border-radius: calc(2 * (var(--rate)));
    /* box-shadow: 0px 4px 0px #D99004; */
    position: relative;
    line-height: 1.2;
    font-size: calc(13 * (var(--rate)));
    font-weight: 500;
}
#lp_contents .nav-menu li a:hover {
    /* box-shadow: unset; */
    /* transform: translateY(3px); */
    /* opacity: 1; */
}

#lp_contents .item-section .sec-ttl {
    font-size: calc(28 * (var(--rate)));
    font-weight: 600;
    margin-bottom: calc(24 * (var(--rate)));
    letter-spacing: .15em;
    text-align: center;
    /* line-height: 1.5; */
}

#lp_contents .lp_inner .sec-ttl span {
    font-size: calc(16 * (var(--rate)));
    width: fit-content;
    display: block;
    color: var(--color-font_red);
    position: relative;
    margin: 0 auto;
}


#lp_contents .menu_wrap .nav-menu li {
    position: relative;
    border-top: 1px dotted;
}

#lp_contents .menu-wrapper h3 {
    font-size: calc(18 * (var(--rate)));
    font-weight: 600;
    text-align: center;
    letter-spacing: 0.1em;
    margin-bottom: calc(15 * (var(--rate)));
}

#lp_contents .spacer {
    display: block;
    margin-top: calc(20 * (var(--rate)));
}
#lp_contents #intro-section .spacer:nth-child(1) {
    font-size: calc(18 * (var(--rate)));
}
#campaign-section {
    background: #FCF9EC;
    border: 1px solid;
    margin: 0 calc(20 * (var(--rate))) calc(50 * (var(--rate)));
    text-align: center;
    padding: calc(25 * (var(--rate))) 0;
}

#lp_contents .btn-detail a {
    border-radius: 10rem;
    color: #fff;
    background: var(--color-sub_color);
    text-align: center;
    padding: calc(5 * (var(--rate))) 0;
    display: block;
    font-size: calc(14 * (var(--rate)));
    width: calc(100 * (var(--rate)));
    line-height: 1.5;
    font-weight: 600;
    /* margin: calc(10 * (var(--rate))) auto 0; */
    font-family: var(--font-lp_eng);
}

#lp_contents .btn-detail a::after {
    content: '';
    position: absolute;
    right: calc(3 * (var(--rate)));
    top: 50%;
    transform: translate(0, -50%);
    width: 0;
    height: 0;
    border-left: calc(4 * (var(--rate))) solid;
    border-top: calc(4 * (var(--rate))) solid transparent;
    border-bottom: calc(4 * (var(--rate))) solid transparent;
}
#lp_contents .btn-all a {
    background: var(--color-sub_color);
    color: #fff;
    /* font-family: var(--font-lp_eng); */
    font-size: calc(15 * (var(--rate)));
    position: relative;
    width: calc(330 * (var(--rate)));
    display: block;
    margin: 0 auto;
    text-align: center;
    padding: calc(16 * (var(--rate))) 0;
    border-radius: calc(2 * (var(--rate)));
	font-weight: 600;
}
#lp_contents .btn-all a::after {
    content: '';
    width: calc(5 * (var(--rate)));
    height: calc(5 * (var(--rate)));
    border: 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    right: calc(18 * (var(--rate)));
    bottom: 0;
    margin: auto;
}

#lp_contents .left_area dt {
    font-family: var(--font-lp_eng);
    font-size: 4.5rem;
    letter-spacing: .1em;
	line-height: 1.2;
}

#lp_contents .left_area dd {
	text-align: center;
	font-size: 2rem;
	line-height: 1.75;
	padding-top: 2rem;
	font-weight: 600;
	letter-spacing: .1em;
}


body.is-fixed #HeaderWrap, body.is-fixed .page-share-btn, body.is-fixed #FooterWrap {
    display: none;
}


body.is-fixed {
    overflow: hidden;
}

#lp_contents .sp-nav .nav-menu .right-nav::before {
    content: none;
}

#lp_contents .sp-nav .all-btn a {
    width: calc(260 * (var(--rate)));
    font-size: calc(16 * (var(--rate)));
}
#lineup-section .item-wrap .item_price .small-txt {
    letter-spacing: .05em;
}

#lp_contents .lp_inner .sec-ttl span::before, #lp_contents .lp_inner .sec-ttl span::after {
    content: '';
    position: absolute;
    width: calc(8 * (var(--rate)));
    height: calc(1 * (var(--rate)));
    background-size: 100%;
    background-color: var(--color-font_red);
    top: 50%;
    transform: translate(0, -50%);
}

#lp_contents .lp_inner .sec-ttl span::before {
    left: calc(-15 * (var(--rate)));
}

#lp_contents .lp_inner .sec-ttl span::after {
    right: calc(-12 * (var(--rate)));
}
#lineup-section .item-wrap h3 span {
    font-weight: 600;
    font-size: calc(25 * (var(--rate)));
}

#lineup-section .item-wrap .price-wrap {
    display: flex;
    justify-content: center;
    gap: calc(10 * (var(--rate)));
    font-weight: 600;
    align-items: center;
    margin: calc(5 * (var(--rate))) auto calc(10 * (var(--rate)));
}

#lineup-section .item-wrap .price-wrap .off-txt {
    font-size: calc(13 * (var(--rate)));
    border: 1px solid;
    line-height: 1;
    padding: calc(2 * (var(--rate))) calc(8 * (var(--rate)));
}

#lineup-section .item-wrap .price-wrap .off-txt span {
    font-size: calc(18 * (var(--rate)));
}

#lineup-section .item-wrap .price-wrap .price-txt {
    font-size: calc(24 * (var(--rate)));
    letter-spacing: .05em;
}

#lineup-section .item-wrap .item_detail {
    margin: calc(15 * (var(--rate))) 0 calc(20 * (var(--rate)));
}

#lineup-section .item-wrap .btn-area {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: calc(10 * (var(--rate)));
}

#lineup-section .item-wrap .btn-area a {
    border: 1px solid var(--color-font_red);
    border-radius: 10rem;
    text-align: center;
    padding: calc(7 * (var(--rate))) 0 calc(6 * (var(--rate)));
    font-size: calc(13 * (var(--rate)));
    letter-spacing: 0.05em;
    color: var(--color-font_red);
    position: relative;
    box-shadow: 0px 4px 0px #9f0006;
    transition: .3s;
	width: calc(170 * (var(--rate)));
}

#lineup-section .item-wrap .detail-btn {
    color: var(--color-font_red);
    background: #fff;
    /* border: 1px solid; */
    /* box-shadow: 0px 4px 0px #9f0006; */
    /* transition: .3s; */
}

#lineup-section .menu-wrap li:nth-child(2) {
    color: var(--color-font_blue);
}


#lp_contents .nav-wrapper {
    position: fixed;
    z-index: 20;
    top: calc(58 * (var(--rate)));
    width: 100%;
    translate: 0 -100%;
    opacity: 0;
    transition: translate .3s ease,
        opacity .3s ease;
}

#lp_contents .nav-wrapper.m_fixed {
    translate: 0 0;
    opacity: 1;
}

#lp_contents .nav-wrapper .nav_list {
    background: var(--color-sub_color);
    display: flex;
    align-items: center;
    /* box-shadow: 0 0 5px #ddd; */
    color: #fff;
    height: calc(46 * (var(--rate)));
}

#lp_contents .nav-wrapper .nav_list li {
    width: calc(100% / 3);
    text-align: center;
    /* font-size: calc(12 * (var(--rate))); */
    /* line-height: 1.4; */
    position: relative;
    /* letter-spacing: 0.08em; */
}

#lp_contents .nav-wrapper .nav_list span {
    display: block;
    font-size: calc(15 * (var(--rate)));
    font-weight: 600;
}

#lp_contents .nav-wrapper .nav_list a {
    display: block;
    font-size: calc(12 * (var(--rate)));
    font-weight: 500;
    letter-spacing: 0.05em;
}

#lp_contents .nav-wrapper .nav_list li:nth-child(2) {
    color: var(--color-font_blue);
}

#lp_contents .nav-wrapper .nav_list li:nth-child(3) {
    color: var(--color-font_yellow);
}

#lp_contents .nav-wrapper .nav_list li::after {
    content: '';
    position: absolute;
    height: calc(46 * (var(--rate)));
    width: calc(1 * (var(--rate)));
    background: #fff;
    background-size: 100%;
    right: 0;
    top: 50%;
    transform: translate(0, -50%);
}

#lp_contents .nav-wrapper .nav_list li:last-child::after {
    content: none;
}

#lp_contents .nav-menu {
    display: flex;
    justify-content: space-between;
    gap: calc(7 * (var(--rate)));
}

#lp_contents .right_area .nav-menu a {
    padding-bottom: calc(10 * (var(--rate)));
}

#lp_contents .nav-menu a::after {
    content: '';
    position: absolute;
    bottom: calc(8 * (var(--rate)));
    left: 0;
    right: 0;
    margin: auto;
    width: calc(5 * (var(--rate)));
    height: calc(5 * (var(--rate)));
    border: 0;
    border-bottom: solid 2px #000;
    border-right: solid 2px #000;
    transform: rotate(45deg);
}

#lp_contents .item-wrap .item {
    width: calc(160 * (var(--rate)));
    background: #fff;
    box-shadow: 0 0 10px hsl(0deg 0% 0% / 5%);
}

#lp_contents .item-wrap .item_img {
    position: relative;
    border-bottom: 1px solid #EEEEEE;
}

#lp_contents .item-wrap .item_name {
    letter-spacing: .05em;
    font-size: calc(12 * (var(--rate)));
    margin-bottom: calc(7 * (var(--rate)));
}

#lp_contents .item-wrap .item_name span {
    font-weight: 600;
    display: block;
    padding-bottom: calc(2 * (var(--rate)));
}

#lp_contents .item-wrap .item_price {
    color: #F05858;
    font-size: calc(16 * (var(--rate)));
    font-weight: 600;
    letter-spacing: 0.05em;
    line-height: 1.2;
}

#lp_contents .item-wrap .tax {
    font-size: calc(10 * (var(--rate)));
    font-weight: 400;
}

#concept-section .menu-wrapper {
    background: #F7F3E1;
    padding: calc(45 * (var(--rate))) calc(20 * (var(--rate))) calc(50 * (var(--rate)));
    margin-top: calc(60 * (var(--rate)));
    border-bottom: calc(8 * (var(--rate))) solid #EFEBD9;
}

#campaign-section h2 {
    font-family: var(--font-lp_eng);
    font-weight: 700;
    font-size: calc(28 * (var(--rate)));
}

#campaign-section .day-txt {
    font-size: calc(18 * (var(--rate)));
    font-weight: 500;
    letter-spacing: 0.05em;
    border-top: 1px solid;
    border-bottom: 1px solid;
    margin: calc(12 * (var(--rate))) calc(40 * (var(--rate))) calc(20 * (var(--rate)));
    padding: calc(4 * (var(--rate))) 0;
}

#campaign-section h3 {
    font-size: calc(18 * (var(--rate)));
    font-weight: 600;
    margin-bottom: calc(12 * (var(--rate)));
}

#campaign-section h3 span {
    font-size: calc(15 * (var(--rate)));
    display: block;
}

#campaign-section .campaign-list li {
    background: #f9f4e4;
    margin: calc(10 * (var(--rate)))  calc(24 * (var(--rate))) 0;
    padding: calc(10 * (var(--rate)))  calc(18 * (var(--rate)))  calc(18 * (var(--rate)));
}

#campaign-section .campaign-list .ttl-txt dt {
    color: #AA8D31;
    font-family: var(--font-lp_eng);
    font-weight: 600;
    font-size: calc(14 * (var(--rate)));
}

#campaign-section .campaign-list .ttl-txt dt span {
    font-size: calc(16 * (var(--rate)));
}

#campaign-section .campaign-list .ttl-txt dd {
    color: #AA8D31;
    font-size: calc(20 * (var(--rate)));
    font-weight: 700;
    margin: calc(4 * (var(--rate)))  auto calc(8 * (var(--rate)));
}

#campaign-section .campaign-list .ttl-txt dd span {
    font-size: calc(26 * (var(--rate)));
}

#campaign-section .campaign-list .ico-txt {
    background: #fff;
    display: flex;
    align-items: center;
    gap: calc(10 * (var(--rate)));
    padding: calc(10 * (var(--rate))) calc(12 * (var(--rate)));
    font-size: calc(12 * (var(--rate)));
    text-align: left;
}

#campaign-section .campaign-list .ico-txt dd span {
    font-weight: 600;
}

#campaign-section .note {
    margin-top: calc(20 * (var(--rate)));
}

#lp_contents .ico-point {
    background: #F1F2D3;
}

#lp_contents .ico-price {
    background: #F3DED7;
}

#lp_contents .ico {
    font-size: calc(11 * (var(--rate)));
    font-weight: 500;
    padding: calc(4 * (var(--rate)))  calc(6 * (var(--rate)))  calc(3 * (var(--rate)));
    line-height: 1;
    border-radius: calc(2 * (var(--rate)));
    display: inline-block;
	letter-spacing: 0.05em
}

#campaign-section .ico {
    width: calc(100 * (var(--rate)));
    text-align: center;
    font-size: calc(12 * (var(--rate)));
    padding: calc(6 * (var(--rate)))  0  calc(5 * (var(--rate)));
}

#concept-section .shop-img {
    margin-bottom: calc(60 * (var(--rate)));
}

#lp_contents .sub-ttl {
    text-align: center;
    position: relative;
    /* letter-spacing: 0.05em; */
    margin: 0 auto calc(15 * (var(--rate)));
    padding: calc(5 * (var(--rate))) calc(16 * (var(--rate)));
    width: fit-content;
    max-width: 100%;
    font-size: calc(14 * (var(--rate)));
    font-weight: 600;
    border: solid 1px;
    border-radius: 10rem;
    display: block;
}

#lp_contents .sub-ttl::before {
    content: "";
    position: absolute;
    bottom: calc(-15 * (var(--rate)));
    left: 50%;
    margin-left: calc(-10 * (var(--rate)));
    border: calc(5 * (var(--rate))) solid transparent;
    border-top: calc(12 * (var(--rate))) solid  var(--color-inner_bg);
    z-index: 2;
}

#lp_contents .sub-ttl::after {
    content: "";
    position: absolute;
    bottom: calc(-17 * (var(--rate)));
    left: 50%;
    margin-left: calc(-10 * (var(--rate)));
    border: calc(5 * (var(--rate)))  solid transparent;
    border-top: calc(11 * (var(--rate))) solid;
    z-index: 1;
}

#concept-section h2 {
    font-weight: 600;
    font-size: calc(28 * (var(--rate)));
    text-align: center;
    letter-spacing: 0.1em;
}

#concept-section h2 span {
    display: block;
    font-weight: 400;
    line-height: 1;
}

#concept-section .lead_txt {
    text-align: center;
    font-size: calc(15 * (var(--rate)));
    line-height: 2;
    margin-bottom: calc(40 * (var(--rate)));
    margin-top: calc(30 * (var(--rate)));
}

#lp_contents .item-section {
    padding: calc(50 * (var(--rate))) 0;
    border-bottom: calc(8 * (var(--rate))) solid #EFEBD9;
}

#lp_contents .item-section .main-item h3 {
    text-align: center;
    font-weight: 600;
    font-size: calc(18 * (var(--rate)));
}

#lp_contents .item-section .main-item .item_img {
    width: calc(290 * (var(--rate)));
    margin: calc(20 * (var(--rate))) auto calc(25 * (var(--rate)));
}

#lp_contents .item-section .main-item .detail-blk {
    background: #DDD6B8;
    padding: calc(5 * (var(--rate)));
    position: relative;
    box-shadow: 0 0 2px #aaaaaa;
    margin: 0 calc(20 * (var(--rate)));
}

#lp_contents .item-section .main-item .detail-blk .inner {
    background: #fff;
    padding: calc(16 * (var(--rate))) calc(18 * (var(--rate))) calc(18 * (var(--rate)));
    position: relative;
}

#lp_contents .item-section .main-item .detail-blk::before, 
#lp_contents .item-section .main-item .detail-blk::after, 
#lp_contents .item-section .main-item .detail-blk .inner::before, 
#lp_contents .item-section .main-item .detail-blk .inner::after {
    content: '';
    position: absolute;
    width: calc(10 * (var(--rate)));
    height: calc(10 * (var(--rate)));
    background: #d8d0b0;
    z-index: 5;
}

#lp_contents .item-section .main-item .detail-blk::before {
    top: calc(5 * (var(--rate)));
    left: calc(5 * (var(--rate)));
    border-radius: 0 0 100% 0;
}

#lp_contents .item-section .main-item .detail-blk::after {
    top: calc(5 * (var(--rate)));
    right: calc(5 * (var(--rate)));
    border-radius: 0 0 0 100%;
}

#lp_contents .item-section .main-item .detail-blk .inner::before {
    bottom: 0;
    left: 0;
    border-radius: 0 100% 0 0;
}

#lp_contents .item-section .main-item .detail-blk .inner::after {
    bottom: 0;
    right: 0;
    border-radius: 100% 0 0 0;
}

#lp_contents .item-section .item-txt {
    line-height: 1.7;
    margin-bottom: calc(12 * (var(--rate)));
}

#lp_contents .item-section .item-name {
    font-size: calc(14 * (var(--rate)));
    font-weight: 500;
    margin: calc(6 * (var(--rate))) 0 calc(8 * (var(--rate)));
}

#lp_contents .item-section .item-price {
    font-size: calc(18 * (var(--rate)));
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1;
}

#lp_contents .item-section .tax {
    font-size: calc(11 * (var(--rate)));
}

#lp_contents .fl-blk {
    display: flex;
    /* justify-content: space-between; */
    /* align-items: flex-start; */
}

#lp_contents .item-section .comment-blk {
    background: #FBF9EA;
    margin: calc(45 * (var(--rate))) 0;
    padding-top: calc(45 * (var(--rate)));
    overflow: hidden;
}

#lp_contents .item-section .comment-txt {
    line-height: 1.7;
    position: relative;
    padding: calc(16 * (var(--rate)));
    border: 1px solid;
    border-radius: calc(6 * (var(--rate)));
    background-color: #FFFEF4;
    margin: 0 calc(20 * (var(--rate)));
}

#lp_contents .item-section .comment-txt::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: calc(120 * (var(--rate)));
    border-style: solid;
    border-width: calc(16 * (var(--rate))) calc(16 * (var(--rate))) 0 0;
    border-color: #FFFEF4 transparent transparent;
    translate: calc(-50% - 0.4px) 100%;
    transform: skew(-25deg);
    transform-origin: top;
}

#lp_contents .item-section .comment-txt::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: calc(120 * (var(--rate)));
    border-style: solid;
    border-width: calc(19 * (var(--rate))) calc(19 * (var(--rate))) 0 0;
    border-color: #000000 transparent transparent;
    translate: -50% 100%;
    transform: skew(-25deg);
    transform-origin: top;
}

#lp_contents .item-section .person-img {
    position: relative;
    height: calc(135 * (var(--rate)));
}

#lp_contents .item-section .person-img img {
    height: calc(150 * (var(--rate)));
    position: absolute;
    bottom: 0;
    left: calc(5 * (var(--rate)));
    width: auto;
}

#lp_contents .item-section .person-img p {
    position: absolute;
    bottom: calc(50 * (var(--rate)));
    left: calc(190 * (var(--rate)));
    font-size: calc(12 * (var(--rate)));
    font-weight: 600;
}

#lp_contents .item-section .person-img .name {
    font-size: calc(15 * (var(--rate)));
}

#lp_contents .item-section .person-img .en-txt {
    font-size: calc(18 * (var(--rate)));
}

#lp_contents .item-section .movie-blk h4 {
    text-align: center;
    font-size: calc(16 * (var(--rate)));
    font-weight: 700;
    position: relative;
    width: fit-content;
    margin: 0 auto;
    padding: 0 calc(20 * (var(--rate))) calc(20 * (var(--rate)));
}

#lp_contents .item-section .movie-blk h4::before, #lp_contents .item-section .movie-blk h4::after {
    content: '';
    position: absolute;
    width: calc(16 * (var(--rate)));
    height: calc(22 * (var(--rate)));
    /* background-size: 100%; */
    background: url(../img/ttl_deco.svg) no-repeat;
    background-size: 100%;
}

#lp_contents .item-section .movie-blk h4::before {
    left: 0;
}

#lp_contents .item-section .movie-blk h4::after {
    right: 0;
    transform: scale(-1, 1);
}

#lp_contents .item-section .movie-list {
    display: flex;
    gap: calc(10 * (var(--rate)));
    margin: 0 calc(20 * (var(--rate)));
}

#lp_contents .item-section .item-wrap h3 {
    position: relative;
    text-align: center;
    font-size: calc(18 * (var(--rate)));
    font-weight:  700;
    line-height: 1.4;
    border-bottom: 1px solid;
    margin: calc(62 * (var(--rate))) calc(15 * (var(--rate))) calc(25 * (var(--rate)));
    padding-bottom: calc(6 * (var(--rate)));
    letter-spacing: 0.15em;
}

#lp_contents .item-section .item-wrap h3 span {
    display: block;
    font-size: calc(13 * (var(--rate)));
    font-family: var(--font-lp_eng);
    letter-spacing: 0.05em;
}

#lp_contents .item-section .item-wrap h3::before {
    content: '';
    position: absolute;
    background: url(../img/ttl_arch.svg) no-repeat;
    background-size: 100%;
    width: 100%;
    height: calc(30 * (var(--rate)));
    left: 0;
    top: calc(-20 * (var(--rate)));
}
#lp_contents .items-slider .item-img {width: calc(250 * (var(--rate)));margin: 0 auto  calc(55* (var(--rate)));}

#lp_contents .items-slider .detail-blk {
    width:  calc(290 * (var(--rate)));
    margin: 0 auto;
}

#lp_contents .items-slider .cate-name {
    text-align: center;
    font-weight: 600;
    font-size:  calc(15 * (var(--rate)));
    margin-bottom:  calc(5 * (var(--rate)));
}
#lp_contents .item-section .main-item .fl-blk {
    align-items: flex-end;
    justify-content: space-between;
}

#lp_contents .items-slider .fl-blk {
    align-items: center;
	    justify-content: space-between;
}

#bottom-section {
    padding: calc(50 * (var(--rate))) 0 0;
}

#bottom-section .prof-blk {
    background: #FBF9EA;
    margin: calc(50 * (var(--rate))) calc(20 * (var(--rate))) 0;
    padding: calc(30 * (var(--rate))) calc(25 * (var(--rate))) calc(35 * (var(--rate)));
}

#bottom-section .prof-blk h3 {
    font-size: calc(16 * (var(--rate)));
    text-align: center;
	font-weight: 700;
}

#bottom-section .prof-blk .prof-img {
    width: calc(200 * (var(--rate)));
    margin: calc(15 * (var(--rate))) auto;
}

#bottom-section .prof-name {
    font-size: calc(16 * (var(--rate)));
    text-align: center;
	font-weight: 700;
}

#bottom-section .prof-name span {
    font-size: calc(12 * (var(--rate)));
}

#bottom-section .prof-txt h4 {
    font-family: var(--font-lp_eng);
    text-align: center;
    font-size: calc(15 * (var(--rate)));
    position: relative;
    margin-top: calc(-10 * (var(--rate)));
}

#bottom-section .prof-txt {
    margin-top: calc(15 * (var(--rate)));
    border: 1px solid;
}

#bottom-section .prof-txt p {
    font-size: calc(12 * (var(--rate)));
    line-height: 1.7;
    margin: calc(5 * (var(--rate))) calc(15 * (var(--rate))) calc(15 * (var(--rate)));
}

#bottom-section .prof-txt h4::after {
    content: '';
    position: absolute;
    background: #FBF9EA;
    background-size: 100%;
    width: 10rem;
    height: 1rem;
    top: calc(6 * (var(--rate)));
    left: 50%;
    transform: translate(-50%, 0);
}

#bottom-section .prof-txt h4 span {
    position: relative;
    z-index: 10;
}
#bottom-section .btn-all a {
    font-size: calc(18 * (var(--rate)));
}

#lp_contents #section01 .person-img img {
    left: calc(-20 * (var(--rate)));
}

#lp_contents #section01 .person-img p {
    left: calc(220 * (var(--rate)));
}

#lp_contents #section03 .comment-txt::before, #lp_contents #section03 .comment-txt::after {
    left: calc(140 * (var(--rate)));
}
#lp_contents .line {
    background: linear-gradient(transparent 60%, #EFE9D2 60%);
}
#lp_contents .item-section .brand-name {
    display: block;
}
#lp_contents .item-section .sale-price .item-price {
    color: var(--text-color-attention);
    margin-top: calc(6 * (var(--rate)));
}

#lp_contents .item-section .off-rate {
    background: var(--text-color-attention);
    color: #fff;
    font-size: calc(11 * (var(--rate)));
    line-height: 1;
    padding: calc(3 * (var(--rate))) calc(5 * (var(--rate))) calc(2 * (var(--rate)));
    letter-spacing: 0.05em;
}

#lp_contents .item-section .sale-price .fl-blk {
    align-items: center;
    gap: calc(6 * (var(--rate)));
}

#lp_contents .item-section .proper-price {
    font-size: calc(12 * (var(--rate)));
    letter-spacing: 0.05em;
    text-decoration: line-through;
    color: #666;
}
/*--------------------------------
            Layout  PC
 --------------------------------*/
@media screen and (min-width: 769px){
  #lp_contents .full_area{
    position: sticky;
    top: 0;
    height: 100vh;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  #lp_contents .left_area{
    left: 0;
    order: 1;
  }

  #lp_contents .right_area{
    right: 0;
    order: 3;
  }
	
.fixed-nav.m_fixed {
    display: none;
}
#lp_contents .right_area .nav-menu a::after {
    content: none;
    /* line-height: 1; */
    /* display: -webkit-box; */
    /* padding: 1.8rem  3rem; */
    /* margin: 1.5rem 0; */
    /* width: 25rem; */
}

#lp_contents .right_area .nav-menu a span {
    /* font-size: 2.4rem; */
    /* padding-right: 1rem; */
}
	
#lp_contents .left_area .logo {
    width: 20rem;
    margin: 0 auto;
}

#lp_contents .left_area .page-ttl {
    font-family: "vincente", serif;
    font-weight: 700;
    letter-spacing: 0.02em;
    font-size: 6.8rem;
    text-align: center;
    line-height: 1;
}

#lp_contents .left_area img {
    width: 15rem;
    margin: 2.5rem auto 0;
}

#lp_contents .left_area .page-ttl span {
    display: block;
    font-size: 2.4rem;
}

#lp_contents .nav-menu .right-nav.is-active {
    /* color: #fff; */
}

#lp_contents .right_area .nav-menu a:hover {
    /* color: var(--color-font_orange); */
}
#lp_contents .lp_bg {
    left: 50%;
    width: 50rem;
    transform: translate(-50%, 0);
}
	
#lp_contents .left_area .all-btn a {
    width: 28rem;
    font-size: 1.8rem;
    padding: 1.2rem 0;
}

#lp_contents .left_area .all-btn a::after {
    border-left: .6rem solid;
    border-top: .6rem solid transparent;
    border-bottom: .6rem solid transparent;
    right: 2.5rem;
}

#lp_contents .left_area .all-btn img {
    width: 16rem;
}	
#lp_contents .lp_inner{
	width: 50rem;
}
#lp_contents .nav-wrapper {
    display: none;
}
#lp_contents .right_area .btn-all a {
    width: 30rem;
    padding: 1.4rem;
    margin-top: 5rem;
}


}


/*--------------------------------
            Responsive
 --------------------------------*/

@media screen and (max-width: 1600px){
  html {
    font-size: calc(10 * (100vw / 1600));
  }
}


/*--------------------------------
            Layout  SP
 --------------------------------*/
@media (max-width: 768px) {

  html {
    font-size: calc(10 * (100vw / 500));
  }

  .page-share-btn{
    height: 0;
  }

  #share{
    z-index: 100 !important;
  }

  #FooterWrap {
    margin-top: -3rem;
  }

  #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;
  }
#lp_contents{
  overflow: hidden;
}
}