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


html, body {
	color: #ccc2be;
	font-size: 13px;
	line-height: 1.6;
	letter-spacing: .05em;
	font-feature-settings: "palt";
	overflow-x: hidden;
	font-family: "a-otf-ryumin-pr6n", serif;
	font-weight: 300;
	font-style: normal;
}

a{
	transition: opacity .4s ease;
}

a:hover{
	opacity: .6;
}


@media (max-width: 1400px) {

	html, body{
		font-size: 1vw;
	}
}

.sp{display: none!important;}


#wrap{
    background: #003934;	
}


.bg-color{
	position: relative;
	z-index: 1;	
}

.bg-color.popup{
	z-index: 999;	
}

.bg-color::after{
	opacity: 0;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	transition: .8s ease-out 0s;
	z-index: -1;
}

.bg-color.view::after{
	opacity: 1;
}

#color1::after{
	background-image: linear-gradient(#2f2d2c, #d0c7c0);
}

#color1 {
	background: #003934;/* prev end */
}

.up #color1.pass {
	background: #8d937c;/* next top */	
}


#color2::after{
	background-image: linear-gradient(#8d937c, #cfd0c6);
}

#color2 {
	background: #d0c7c0;/* prev end */
}

.up #color2.pass {
	background: #0b0a0b;/* next top */	
}


#color3::after{
	background-image: linear-gradient(#0b0a0b, #005348);
}

#color3 {
	background: #d0c7c0;/* prev end */
}

.up #color3.pass {
	background: #005449;/* next top */	
}

#color4::after{
	background-image: linear-gradient(#9e8e82, #dbd4cf);
}

#color4 {
	background: #005348;/* prev end */
}

.up #color4.pass {
	background: #003934;/* next top */	
}


#color5::after{
	background-image: linear-gradient(#003934, #003934);
}

#color5 {
	background: #dbd4cf;/* prev end */
}

.up #color5.pass {
	background: #8d937c;/* next top */	
}

#color6::after{
	background-image: linear-gradient(#8d937c, #cfd0c6);
}

#color6 {
	background: #003934;/* prev end */
}

.up #color6.pass {
	background: #005449;/* next top */	
}

#color7::after{
	background-image: linear-gradient(#005449, #0b0b0b);
}

#color7 {
	background: #dbd4cf;/* prev end */
}

.up #color7.pass {
	background: #005449;/* next top */	
}

#color8::after{
	background-image: linear-gradient(#005449, #0b0b0b);
}

#color8 {
	background: #0b0b0b;/* prev end */
}

.up #color8.pass {
	background: #abaf9e;/* next top */	
}

#color9::after{
	background: #abaf9e;
}

#color9 {
	background: #0b0b0b;/* prev end */
}

.up #color9.pass {
	background: #003934;/* next top */	
}

#color10::after{
	background: #003934;
}

#color10 {
	background: #abaf9e;/* prev end */
}

.up #color10.pass {
	background: #003934;/* next top */	
}

#color11::after{
	background: #003934;
}

#color11 {
	background: #003934;/* prev end */
}

.up #color11.pass {
	background: #abaf9e;/* next top */	
}

#color12::after{
	background: #abaf9e;
}

#color12 {
	background: #003934;/* prev end */
}

.up #color12.pass {
	background: #0b0b0b;/* next top */	
}


.en,.num{
	font-family: "optima-lt-pro", sans-serif;
	font-weight: 400;
	font-style: normal;
}

.fgo{
	font-family: "source-han-sans-japanese", sans-serif;
	font-weight: 500;
	font-style: normal;	
}


header{
	width: 100vw;
	position: fixed;
	top: 0;
	left: 0;
	padding: 4em 0 0;
	z-index: 100;
	transition: .4s ease , width 0s;
}

header .logo{
	display: block;
	width: 20vw;
	max-width: 200px;
	min-width: 160px;
	margin: 0 auto;
	transition: .4s ease;
}

.fixed header{
	padding: 1.5em 0;
	background: rgba(0, 57, 52, 0.6);
    backdrop-filter: blur(10px);
}

.fixed header .logo{
	transform: scale(0.8);
}

.l-title {
	text-align: center;
}

.l-title .jp{
	display: block;
	font-size: 1.5em;
	letter-spacing: .1em;
	position: relative;
	padding-bottom: 2.5em;
	margin-bottom: -1em;
}

.l-title .jp::before{
	content: "";
	display: block;
	width: 100vw;
	height: 0.3px;
	background: #ccc2be;
	position: absolute;
	bottom: 1.5em;
	left: calc(50% - 50vw);
}

.l-title .jp::after{
	content: "";
	display: block;
	width: 100vw;
	height: 1px;
	background: #ccc2be;
	position: absolute;
	bottom: calc(1.5em - 0.5px);
	left: calc(50% - 50vw);
	transform: scale(0, 1);
	transition: transform 1s ease;
	transform-origin: right top;
}

.linein .l-title .jp::after{
	transform: scale(1, 1);
	transform-origin: left top;
}

.l-title.gr .jp::before,
.l-title.gr .jp::after{
	background: #003934;
}

.l-title .en{
	font-size: 3.6em;
	letter-spacing: 0em;
	line-height: 1.4em;
}

.title-read-wrap{
	width: 90%;
	text-align: center;
	padding-top: 3em;	
	margin:0 auto 7em;
}

.title-read-wrap .title{
	font-size: 1.6em;
	letter-spacing: .1em;
	margin-bottom: 2em;
}

.title-read-wrap .text{
	line-height: 2.5;
	font-size: 1.1em;
}

.fixed-btn{
	position: fixed;
	bottom: 3em;
	right: 2%;
	display: flex;
	flex-flow: column;
	gap:1.2em;
	z-index: 100;
}

.fixed-btn a{
	display: flex;
	flex-flow: column;
	align-items: center;
	gap:1em;
	padding: 1em 2.2em;
	line-height: 1;
	color: #003934;
	background: #FFF;
	position: relative;
	z-index: 2;
}

.fixed-btn a:hover{
	opacity: 1;
}

.fixed-btn a::before{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: #eae995;
	position: absolute;
	top: 0;
	left: 0;
	transition: opacity .4s ease;
	z-index: -1;
}

.fixed-btn a:hover::before{
	opacity: .5;
}

.fixed-btn a .en{
	font-size: 2.1em;
}

.fixed-btn a .jp{
	font-size: 1.5em;
	letter-spacing: .1em;
}


/*
lp-icatch
--------------------
*/

.lp-icatch-wrap{
	background: url(img/icatch_630_pc.png) no-repeat center top;
	background-size: contain;
	text-align: center;
	line-height: 1;
}

@media (max-width: 2000px) {
.lp-icatch-wrap{
	font-size: .65vw;
}
}

.lp-icatch-wrap .inner{
	display: flex;
	align-items: center;
	justify-content: center;
	padding-right: 50%;
}

.lp-icatch-wrap .inner .text-wrap{
	padding: 20em 0 15em;
	
}

.lp-icatch-wrap .inner .text-wrap .read{
	color: #e8e797;
}

.lp-icatch-wrap .inner .text-wrap .read span:nth-of-type(1){
	display: block;
	font-size: 2.1em;
	letter-spacing: .1em;
	margin-bottom: 1.6em;
}

.lp-icatch-wrap .inner .text-wrap .read span:nth-of-type(2){
	display: block;
	font-size: 5.0em;
	letter-spacing: .2em;
	padding-bottom: .5em;
	border-bottom: .2px solid #e8e797;
	margin-bottom: 1.2em;
	position: relative;
}
.text-wrap .read span {
}

.lp-icatch-wrap .inner .text-wrap .read span:nth-of-type(2)::after{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #e8e797;
	position: absolute;
	left: 0;
	bottom: -0.5px;
	transition: transform 1s ease;
	transform: scale(0, 1);
	transform-origin: right top;
}

.lp-icatch-wrap .inner.linein .text-wrap .read span:nth-of-type(2)::after{
	transform: scale(1, 1);
	transform-origin: left top;
}

.lp-icatch-wrap .inner .text-wrap .products-name span:nth-of-type(1){
	display: block;
	font-size: 11.5em;
	letter-spacing: .1em;
	margin-bottom: .15em;
}

.lp-icatch-wrap .inner .text-wrap .products-name span:nth-of-type(2){
	display: block;
	font-size: 3.5em;
	letter-spacing: .1em;
	margin-bottom: 1.7em;	
}

.lp-icatch-wrap .inner .text-wrap .text{
	font-size: 3.3em;
	line-height: 1.8;
	letter-spacing: .1em;	
}

.lp-icatch-wrap .count-contents-wrap{
	color: #e8e797;
}

.lp-icatch-wrap .count-contents-wrap .count-contents{
	position: relative;
	padding-bottom: 2.3em;
	margin-bottom: 3em;
	display: flex;
	justify-content: center;
}

.lp-icatch-wrap .count-contents-wrap .count-contents .count-inner{
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	gap:2.6em;
	letter-spacing: .1em;
}

.lp-icatch-wrap .count-contents-wrap .count-contents .count-inner::before{
	content: "";
	display: block;
	width: 10.8em;
	height: 1.5px;
	background: #e8e797;
	position: absolute;
	left: -13.5em;
	top: 50%;
	transform: translateY(-50%);
}

.lp-icatch-wrap .count-contents-wrap .count-contents .count-inner::after{
	content: "";
	display: block;
	width: 10.8em;
	height: 1.5px;
	background: #e8e797;
	position: absolute;
	right: -13.5em;
	top: 50%;
	transform: translateY(-50%);
}

.lp-icatch-wrap .count-contents-wrap .count-contents::before{
	content: "";
	display: block;
	width: 100vw;
	height: .3px;
	background: #e8e797;
	position: absolute;
	bottom: 0;
	left: calc(50% - 50vw);
}

.lp-icatch-wrap .count-contents-wrap .count-contents::after{
	content: "";
	display: block;
	width: 100vw;
	height: .3px;
	background: #e8e797;
	position: absolute;
	bottom: 6px;
	left: calc(50% - 50vw);
}

.lp-icatch-wrap .count-contents-wrap .line-wrap{
	position: relative;
}

.lp-icatch-wrap .count-contents-wrap .line-wrap::before{
	content: "";
	display: block;
	width: 100vw;
	height: 1px;
	background: #e8e797;
	position: absolute;
	bottom: -0.5px;
	left: calc(50% - 50vw);
	transform: scale(0, 1);
	transition: transform 1s ease;
	transform-origin: right top;
}

.lp-icatch-wrap .count-contents-wrap .line-wrap::after{
	content: "";
	display: block;
	width: 100vw;
	height: 1px;
	background: #e8e797;
	position: absolute;
	bottom: 5.5px;
	left: calc(50% - 50vw);
	transform: scale(0, 1);
	transition: transform 1s ease;
	transform-origin: right top;
}

.lp-icatch-wrap .count-contents-wrap.linein .line-wrap::before,
.lp-icatch-wrap .count-contents-wrap.linein .line-wrap::after{
	transform: scale(1, 1);
	transform-origin: left top;
}

.lp-icatch-wrap .count-contents-wrap .count-contents span:nth-of-type(1){
	font-size: 2.9em;
	line-height: 1.5;
}

.lp-icatch-wrap .count-contents-wrap .count-contents span:nth-of-type(2){
	font-size: 11.9em;
	position: relative;
	padding-right: .2em;
}

.lp-icatch-wrap .count-contents-wrap .count-contents span:nth-of-type(2)::after{
	content: "cases";
	font-size: .29em;
	position: absolute;
	width: 0;
	right: 0;
	top: 0;
	transform: rotate(90deg);
}


.lp-icatch-wrap .count-contents-wrap .count-contents span:nth-of-type(3){
	font-size: 5em;
}

.lp-icatch-wrap .count-contents-wrap .count-read{
	width: 90%;
	max-width: 910px;
	display: flex;
	flex-flow: column;
	gap:1.6em;
	margin: 0 auto;
	margin-bottom: 15em;
}

.lp-icatch-wrap .count-contents-wrap .count-read span{
	display: block;
	font-size: 2.5em;
	color: #223c37;
	background: #e8e797;
	padding: .5em;
	letter-spacing: .2em;
}



/*
lp-read
--------------------
*/


.lp-read-wrap{
	text-align: center;
	color: #ccc2be;
}

.lp-read-wrap .sub{
	color: #eae999;
	font-size: 3.2em;
	line-height: 1;
	margin-bottom: .8em;
	letter-spacing: .15em;
}

.lp-read-wrap .sub .is-small{
  font-size: 0.55em; 
}

.lp-read-wrap .read-title{
	font-size: 4em;
	line-height: 1;
	letter-spacing: .1em;
	position: relative;
	display: table;
	padding:0 .2em .6em;
}

.lp-read-wrap .read-title::before{
	content: "";
	display: block;
	width: 100%;;
	height: .3px;
	background: #e8e797;
	position: absolute;
	bottom: 0;
	left: 0;
}

.lp-read-wrap .read-title::after{
	content: "";
	display: block;
	width: 100%;
	height: .31px;
	background: #e8e797;
	position: absolute;
	bottom: 6px;
	left: 0;
}

.lp-read-wrap .line-wrap{
	position: relative;
	display: table;
	margin: 0 auto 1.3em;
}

.lp-read-wrap .line-wrap::before{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #e8e797;
	position: absolute;
	bottom: -0.5px;
	left: 0;
	transform: scale(0, 1);
	transition: transform 1s ease;
	transform-origin: right top;
}

.lp-read-wrap .line-wrap::after{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #e8e797;
	position: absolute;
	bottom: 5.5px;
	left: 0;
	transform: scale(0, 1);
	transition: transform 1s ease;
	transform-origin: right top;
}

.lp-read-wrap .linein .line-wrap::before,
.lp-read-wrap .linein .line-wrap::after{
	transform: scale(1, 1);
	transform-origin: left top;
}

.lp-read-wrap .read-title span{
	color: #eae999;
	font-size: 1.0em;
}

.lp-read-wrap .read{
	font-size: 1.9em;
	line-height: 2;
	margin-bottom: 4em;
	margin-top: 1.5em;
	letter-spacing: .15em;
}

.lp-read-wrap .parts-contents-wrap .parts-nav{
	width: 90%;
	max-width: 1880px;
	display: flex;
	gap:6.4em;
	position: relative;
	padding-bottom: 20em;
	margin: 0 auto -10em;
}

.lp-read-wrap .parts-contents-wrap .parts-nav::after{
	content: "";
	display: block;
	width: 7.2em;
	height: 11.4em;
	background: url(img/arrow_by2.svg) no-repeat;
	background-size: contain;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}

.lp-read-wrap .parts-contents-wrap .parts-nav .parts{
	background: #eae995;
	position: relative;
}

.lp-read-wrap .parts-contents-wrap .parts-nav .parts::after{
	content: "";
	display: block;
	width: 2.7em;
	height: 2.7em;
	background: url(img/icon_plus.svg) no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(calc(100% + 1.85em) , -50%);
}

.lp-read-wrap .parts-contents-wrap .parts-nav .parts:last-of-type::after{
	display: none;
}

.lp-read-wrap .parts-contents-wrap .parts-nav .parts .thumb-wrap{
	padding: 4px;
}

.lp-read-wrap .parts-contents-wrap .parts-nav .parts .text-wrap{
	color: #003934;
	padding: 1.2em 1.2em 1.5em;
}

.lp-read-wrap .parts-contents-wrap .parts-nav .parts .text-wrap .title{
	font-size: 2em;
}

.lp-read-wrap .parts-contents-wrap .parts-nav .parts .text-wrap span{
	font-size: 1.2em;
}


.lp-read-wrap .parts-contents-wrap .parts-thumb-wrap{
	width: 100%;
	height: 75em;
	background: url(img/allinone_630_pc.png) no-repeat center center;
	background-size: contain;
}

.lp-read-wrap .parts-contents-wrap .parts-price-wrap{
	width: 90%;
	max-width: 1480px;
	text-align: left;
	padding-bottom: 5em;
	margin: 0 auto;	
	display: flex;
	gap: 1.5em;
	justify-content: space-between;
	align-items: center;
}

.lp-read-wrap .parts-contents-wrap .parts-price-wrap .text-wrap{
	width: 55%;
}

.lp-read-wrap .parts-contents-wrap .parts-price-wrap .text-wrap .title{
	font-size: 2.1em;
	line-height: 2.0;
	margin-bottom: 1.8em;
	position: relative;
	padding-bottom: 1.5em;
}

.lp-read-wrap .parts-contents-wrap .parts-price-wrap .text-wrap .title::before{
	content: "";
	display: block;
	width: 5.6em;
	height: .3px;
	background: #e8e797;
	position: absolute;
	bottom: 0;
	left: 0;
}

.lp-read-wrap .parts-contents-wrap .parts-price-wrap .text-wrap .title::after{
	content: "";
	display: block;
	width: 5.6em;
	height: .3px;
	background: #e8e797;
	position: absolute;
	bottom: 6px;
	left: 0;
}

.lp-read-wrap .parts-contents-wrap .parts-price-wrap .text-wrap .title span::before{
	content: "";
	display: block;
	width: 5.6em;
	height: 1px;
	background: #e8e797;
	position: absolute;
	bottom: -0.5px;
	left: 0;
	transition: transform 1s ease;
	transform: scale(0, 1);
	transform-origin: right top;
}

.lp-read-wrap .parts-contents-wrap .parts-price-wrap .text-wrap .title span::after{
	content: "";
	display: block;
	width: 5.6em;
	height: 1px;
	background: #e8e797;
	position: absolute;
	bottom: 5.5px;
	left: 0;
	transition: transform 1s ease;
	transform: scale(0, 1);
	transform-origin: right top;
}

.lp-read-wrap .parts-contents-wrap .parts-price-wrap.linein .text-wrap .title span::before,
.lp-read-wrap .parts-contents-wrap .parts-price-wrap.linein .text-wrap .title span::after{
	transform: scale(1, 1);
	transform-origin: left top;
}


.lp-read-wrap .parts-contents-wrap .parts-price-wrap .text-wrap .text{
	font-size: 1.5em;
	line-height: 2.5;
}

.lp-read-wrap .parts-contents-wrap .parts-price-wrap .price-wrap{
	border: 2px solid #e8e797;
	border-radius: 2em;
	padding: 2em 4em 4em;
	max-width: 57.5%;
}

.lp-price{
	white-space: nowrap;
	display: flex;
	align-items: center;
	gap: 1.0em;
	letter-spacing: .1em;
	justify-content: center;
}

.lp-price span:nth-of-type(1){
	font-size: 2em;
	background: #e8e797;
	color: #223c37;
	padding: .2em 1em;
}

.parts-price-wrap .lp-price span:nth-of-type(1){
	font-size: 1.8em;
}


.lp-price span:nth-of-type(2){
	font-size: 6.5em;
	color: #e8e797;
}

.lp-price span:nth-of-type(3){
	font-size: 2.2em;
	color: #e8e797;
	writing-mode: vertical-rl;
	margin-left: -.5em;
}

.lp-read-wrap .parts-contents-wrap .parts-price-wrap .price-wrap .title{
	text-align: center;
	font-size: 1.75em;
	background: #e8e797;
	color: #223c37;
	margin-bottom: .8em;
	margin-top: -.5em;
	padding: .5em;
}

.lp-read-wrap .parts-contents-wrap .parts-price-wrap .price-wrap .text{
	font-size: 1.0em;
	line-height: 2.0;
}


.lp-read-wrap .parts-contents-wrap .parts-price-wrap .text-wrap .title.no-line{
  color:#d9d39a;        
  font-size:3.5em;     
  letter-spacing:.08em;
  margin-bottom: -.5em;
  line-height: 1.5em
}


@media (max-width: 1500px){
.parts-contents-wrap .parts-nav {
    font-size: .8vw;
}

.lp-read-wrap .parts-contents-wrap .parts-nav .parts .text-wrap .title {
    font-size: 1.8em;
}

}


/*
lp-case
--------------------
*/

.lp-case-wrap{
	padding: 1em 0 13em;
}

.lp-case-wrap .case-contents-wrap{
	padding-top: 5em;
	margin-bottom: 4em;
}

.lp-case-wrap .case-contents-wrap .case-contents{
	text-align: center;
	padding: 0 1.5em;
}

.lp-case-wrap .case-contents-wrap .case-contents .title{
	font-size: 1.4em;
	line-height: 2;
	padding-top: 1.5em;
}


.lp-case-wrap .count-read span{
	display: block;
	font-size: 1.8em;
	color: #223c37;
	background: #e8e797;
	padding: .75em;
	line-height: 1.5em;
	text-align: center;
	letter-spacing: .15em;
}


/*
lp-media
--------------------
*/

.lp-media-wrap{
	padding: 10em 0;
}

.lp-media-wrap .media-slider-wrap {
    background: #FFF;
    padding: 6em 0;
    margin: 5em 0;
    display: flex;
    flex-flow: column;
    gap: 4.6em;
}

.lp-media-wrap .media-slider-wrap .media-slider-1{
	width: 100%;
    height: auto;
    aspect-ratio: 5072/131;
    background: url(img/media_list01.webp) repeat-x 0 0;
    background-size: auto 100%;
    animation: media-slider 80s linear infinite;
}

.lp-media-wrap .media-slider-wrap .media-slider-2{
    width: 100%;
    height: auto;
    aspect-ratio: 5072/120;
    background: url(img/media_list02.webp) repeat-x 0 0;
    background-size: auto 100%;
    animation: media-slider 75s linear infinite;
}

@keyframes media-slider {

	0% {
	    background-position: 0 0;
	}
	
	100% {
	    background-position: -5072px 0;
	}
}


/*
lp-movie
--------------------
*/

.lp-read-movie-wrap{
	width: 100%;
	height: 100vh;
	background: #000;
	position: relative;
}

.lp-read-movie-wrap img,
.lp-read-movie-wrap video{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50% , -50%);
	width: 100%;
	height: 100%;
	object-fit:cover;
	font-family: 'object-fit: cover;'
}


/*
lp-free
--------------------
*/

.lp-free-wrap{
	padding-top: 13em;
	padding-left: 10vw;
	padding-bottom: 9em;
	display:flex;
	justify-content: space-between;
	align-items: center;
}

.lp-free-wrap .thumb-wrap{
	width: 60%;
}

.lp-free-wrap .text-wrap{
	width: 30%;
}

.lp-free-wrap .text-wrap .title{
	margin-bottom: 8em;
}

.lp-free-wrap .text-wrap .read{
	font-size: 2em;
	line-height: 2.3;
	letter-spacing: .1em;
	margin-bottom: 4em;
}

.lp-free-wrap .text-wrap .text{
    line-height: 1;
}


/*
lp-alo
--------------------
*/


.lp-alo-wrap{
	padding: 9em 0;
}

.products-detail-wrap{
	 padding-right: 60%;
	 padding-left: 10vw;
	 min-height: 130vh;
	 display: flex;
	 align-items: center;
 }

.lp-alo-wrap .products-detail-wrap{
	background: url(img/products_01_630.png) no-repeat center 40%;
	background-size: contain;
	margin-top: 2em;
}

.detail-list-wrap .detail-list{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding-bottom: 4em;
	position: relative;
}

.detail-list-wrap .detail-list::before{
	content: "";
	display: block;
	background: #d0c2be;
	width: 100%;
	height: .3px;
	position: absolute;
	left: 0;
	bottom: 2em;
	transition: 1s ease;
}

.detail-list-wrap .detail-list::after{
	content: "";
	display: block;
	background: #d0c2be;
	width: 100%;
	height: 1px;
	position: absolute;
	left: 0;
	bottom: calc(2em - 0.5px);
	transition: transform 1s ease;
	transform: scale(0, 1);
	transform-origin: right top;
}

.detail-list-wrap .detail-list.linein::after{
	transform: scale(1, 1);
	transform-origin: left top;
}


.detail-list-wrap .thumb-wrap{
	width: 45%;
}

.detail-list-wrap .text-wrap{
	width: 45%;
}

.detail-list-wrap .text-wrap .title-wrap{
	display: flex;
	justify-content: flex-end;
	position: relative;
	line-height: 1;
	margin-bottom: 1.5em;
}

.detail-list-wrap .text-wrap .title-wrap .num{
	font-size: 4em;
	transform: translateY(-0.2em);
	position: absolute;
	left: 0;
}

.detail-list-wrap .text-wrap .title-wrap .title{
	text-align: right;
}

.detail-list-wrap .text-wrap .title-wrap .title .jp{
	display: block;
	font-size: 1.3em;
	margin-bottom: .6em;
}

.detail-list-wrap .text-wrap .title-wrap .title .en{
	font-size: 1.5em;
	letter-spacing: .1em;
}

.detail-list-wrap .text-wrap .text{
	font-size: 1.0em;
	line-height: 1.8;
}


/*
lp-ex
--------------------
*/


.lp-ex-wrap{
	padding: 9em 0 0;
	color: #003934;
}

.lp-ex-wrap .products-detail-wrap{
	margin-top: 12em;
	background: url(img/products_02.png) no-repeat center 40%;
	background-size: contain;
}

.lp-ex-wrap .products-detail-wrap{
	padding-right: 10vw;
	padding-left: 60%;
}

.lp-ex-wrap .detail-list-wrap .detail-list::before,
.lp-ex-wrap .detail-list-wrap .detail-list::after{
	background: #003934;
}


/*
lp-two
--------------------
*/

.lp-two-wrap{
	color: #003934;
	padding: 16em 0 13em;
}

.lp-two-wrap .l-title .jp::before,
.lp-two-wrap .l-title .jp::after{
	background: #003934;
}

.view .lp-two-wrap .l-title .jp::before,
.view .lp-two-wrap .l-title .jp::after{
	background: #ccc2be;
}

.lp-two-wrap .title-read-wrap{
    padding-top: 6em;
    margin-bottom: 7em;
}

.two-products-wrap{
	width: 90%;
	max-width: 1880px;
	margin: 0 auto;
	text-align: center;
}

.two-products-wrap .icatch-wrap{
	display: flex;
	margin-bottom: 7em;
}

.two-products-wrap .icatch-wrap .icatch{
	position: relative;
}

.two-products-wrap .icatch-wrap .icatch .title{
	font-size: 2.0em;
	letter-spacing: .18em;
	position: absolute;
	top: 1.5em;
	left: 50%;
	transform: translateX(-50%);
	color: #003934;
}

.two-products-detail-contents .title{
	font-size: 2.1em;
	letter-spacing: .18em;
	background: #003934;
	color: #d0c2be;
	border-radius: .3em;
	padding: .2em;
}

.two-products-detail-contents .inner{
	display: flex;
	padding: 6em 0;
	margin-bottom: 2.8em;
	position: relative;
}

.two-products-detail-contents .inner::after{
	content: "";
	display: block;
	width: 1px;
	height: 100%;
	background: #003934;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}

.two-products-detail-contents .contents{
	width: 50%;
	padding: 0 10vw;
}

.two-products-detail-contents .contents p{
	font-size: 1.6em;
	line-height: 3;
}

.two-products-detail-contents .contents .icatch-contents{
	margin-bottom: 10em;
}

.two-products-detail-contents .contents .icatch-contents .stitle{
	font-size: 2.1em;
	line-height: 1;
	margin: 1.5em 0;
}

.two-products-detail-contents .contents .icatch-contents .stitle .num{
	font-size: 3.9em;
	letter-spacing: 0;
}

.two-products-detail-contents .contents .icatch-contents p{
	text-align: left;
	line-height: 2.2;
}


.two-products-detail-contents .contents .thumb-contents{
	margin-bottom: 5.3em;
}

.two-products-detail-contents .contents .thumb-contents:last-of-type{
	margin-bottom: 0;
}

.two-products-detail-contents .contents .thumb-contents .stitle{
	font-size: 1.6em;
	line-height: 2.2;
	margin-top: 1em;
}

.two-products-common-wrap{
	position: relative;
	background: #abaf9e;
	padding: 5.3em 10vw 0;
}

.two-products-common-wrap .ctitle{
	font-size: 3.6em;
	letter-spacing: .1em;
	padding-bottom: 1.6em;
	margin-bottom: 1.5em;
	position: relative;
}

.two-products-common-wrap .ctitle::after{
	content: "";
	display: block;
	width: calc(100% + 0.4em);
	height: .3px;
	background: #003934;
	position: absolute;
	bottom: 0;
	left: -0.2em;
}

.two-products-common-wrap .ctitle::before{
	content: "";
	display: block;
	width: calc(100% + 0.4em);
	height: 1px;
	background: #003934;
	position: absolute;
	bottom: -0.5px;
	left: -0.2em;
	transition: transform 1s ease;
	transform: scale(0, 1);
	transform-origin: right top;
}

.two-products-common-wrap.linein .ctitle::before{
	transform: scale(1, 1);
	transform-origin: left top;
}
.two-products-common-contents-wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.two-products-common-contents-wrap::after{
	content: "";
	display: block;
	width: 29%;
}

.two-products-common-contents-wrap .two-products-common-contents{
	width: 29%;
	margin-bottom: 7em;
}

.two-products-common-contents-wrap .two-products-common-contents .text{
	font-size: 1.6em;
	line-height: 2.2;
	margin-top: 1em;
}

/*
lp-system
--------------------
*/

.lp-system-wrap{
	padding: 9em 0;
	color: #003934;
	transition: color .3s ease;
}

.lp-system-wrap .l-title .jp::before,
.lp-system-wrap .l-title .jp::after{
	background: #003934;
}

.view .lp-system-wrap{
	color: #ccc2be;
}

.view .lp-system-wrap .l-title .jp::before,
.view .lp-system-wrap .l-title .jp::after{
	background: #ccc2be;
}

.duo-movie-wrap{
	max-width: 1000px;
	margin: 0 auto;
	margin-bottom: 6em;
}

.duo-movie-wrap video{
	width: 50%;
}

.duo-movie-wrap .text{
	font-size: 1.1em;
	 line-height: 3em;
	 margin-top: 2em;
}
.products-2clm-contents-wrap{
	width: 90%;
	max-width: 1880px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	gap: 17%;
}

.products-2clm-contents-wrap .products-2clm-contents{
	width: calc((100% - 34%) / 3);
}

.products-2clm-contents-wrap .products-2clm-contents .text-wrap{
	padding-top: 3em;
}

.products-2clm-contents-wrap .products-2clm-contents .text-wrap .num{
	font-size: 6em;
	line-height: 1;
}

.products-2clm-contents-wrap .products-2clm-contents .text-wrap .text .title{
    padding-bottom: 1.2em;
    margin-bottom: 2.6em;
	letter-spacing: .1em;
	position: relative;
	display: flex;
	align-items: center;
	gap:2em;
}

.products-2clm-contents-wrap .products-2clm-contents .text-wrap .text .title font{
	font-size: 1.7em;
    letter-spacing: .1em;
}

.products-2clm-contents-wrap .products-2clm-contents .text-wrap .text .title::after{
	content: "";
	display: block;
	width: 100%;
	height: .3px;
	background: #ccc2be;
	position: absolute;
	bottom: 0;
	left: 0;
}

.products-2clm-contents-wrap .products-2clm-contents .text-wrap .text .title::before{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #ccc2be;
	position: absolute;
	bottom: -0.5px;
	left: 0;
	transition: transform 1s ease;
	transform: scale(0, 1);
	transform-origin: right top;
}

.products-2clm-contents-wrap .products-2clm-contents.linein .text-wrap .text .title::before{
	transform: scale(1, 1);
	transform-origin: left top;
}

.products-2clm-contents-wrap .products-2clm-contents .text-wrap .text p{
	font-size: 1.1em;
	line-height: 2;
}


/*
lp-commit
--------------------
*/

.lp-commit-wrap{
	padding:13em 0 6em;
	color: #ccc2be;
	transition: color .3s ease;
}

.lp-commit-wrap .l-title .jp::before,
.lp-commit-wrap .l-title .jp::after{
	background: #ccc2be;
}

.view .lp-commit-wrap{
	color: #003934;
}

.view .lp-commit-wrap .l-title .jp::before,
.view .lp-commit-wrap .l-title .jp::after{
	background: #003934;
}

.commit-contents-wrap{
	width: 90%;
	max-width: 1880px;
	margin: 0 auto;
	padding-left: 5vw;
	padding-top: 7em;
}

.commit-contents{
	display: flex;
	flex-flow: row-reverse;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 9em;
}

.commit-contents .text-wrap{
	width: 30%;
}

.commit-contents .wide{
	width: 38%;
}

.commit-contents .text-wrap .num{
	display: flex;
	justify-content: center;
	align-items: baseline;
	line-height: 1;
	letter-spacing: .1em;
	margin-bottom: 2em;
}

.commit-contents .text-wrap .num font:nth-of-type(1){
	font-size: 5.3em;
}

.commit-contents .text-wrap .num font:nth-of-type(2){
	font-size: 1.5em;
}

.commit-contents .text-wrap .title{
	font-size: 2.1em;
	letter-spacing: .1em;
	margin-bottom: 2em;
	border-bottom: .3px solid #003934;
	padding-bottom: .5em;
	position: relative;
	text-align: center;
	line-height: 2;
}

.commit-contents .text-wrap .title::after{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #003934;
	position: absolute;
	left: 0;
	bottom: -0.5px;
	transition: transform 1s ease;
	transform: scale(0, 1);
	transform-origin: right top;
}

.commit-contents.linein .text-wrap .title::after{
	transform: scale(1, 1);
	transform-origin: left top;
}

.commit-contents .text-wrap .text{
	font-size: 1.1em;
	line-height: 2;
}

.commit-contents .thumb-wrap{
	width: 60%;
}


/*
lp-training
--------------------
*/


.lp-training-wrap{
	padding: 9em 0 13em;
	color: #003934;
	transition: color .3s ease;
}

.lp-training-wrap .l-title .jp::before,
.lp-training-wrap .l-title .jp::after{
	background: #003934;
}

.view .lp-training-wrap{
	color: #ccc2be;
}

.view .lp-training-wrap .l-title .jp::before,
.view .lp-training-wrap .l-title .jp::after{
	background: #ccc2be;
}

.lp-training-wrap .title-read-wrap{
    padding-top: 2em;
    margin-bottom: 8.5em;
}

.training-contents-wrap{
	background: #141414;
	width: 90%;
	max-width: 1900px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	position: relative;
	padding: 12em 12em 2em;
}

.training-contents-wrap::after{
	content: "";
	display: block;
	width: 32%;
}

.training-contents-wrap .training-title{
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50% , -38%);
	text-align: center;
}

.training-contents-wrap .training-title .en{
	font-size: 5.8em;
	display: block;
	margin-bottom: .2em;
}

.training-contents-wrap .training-title .jp{
	font-size: 1.38em;
}

.training-contents-wrap .training-contents{
	width: 32%;
	margin-bottom: 7em;
}

.training-contents-wrap .training-contents .title{
	font-size: 1.2em;
	margin-top: 1em;
}


/*
lp-products-movie
--------------------
*/


.lp-products-movie-wrap{
	padding: 10em 0 9em;
}

.lp-products-movie-wrap .movie-contents-wrap{
	padding-top: 8em;
	width: 90%;
	max-width: 1880px;
	margin: 0 auto;
}

.lp-products-movie-wrap.dt .movie-contents-wrap{
	max-width: 880px;
}

.lp-products-movie-wrap .movie-contents-wrap video{
	width: 100%;
}

.lp-products-movie-wrap .movie-contents-wrap .note{
	font-size: 1.9em;
	letter-spacing: .1em;
	margin-top: 1.4em;
}

.lp-products-movie-wrap.movie1 .movie-contents-wrap{
	padding-top: 6em;
}

.lp-products-movie-wrap.movie1 .l-title .jp{
	color: #eae995;
}

.lp-products-movie-wrap.movie1 .l-title .jp::before,
.lp-products-movie-wrap.movie1 .l-title .jp::after{
	background: #eae995;
}

.lp-products-movie-wrap.movie1 .l-title .en font:nth-of-type(1){
	font-size: 1.5em;
	line-height: 1;
	letter-spacing: .1em;
	display: block;
	margin-bottom: .2em;
}

.lp-products-movie-wrap.movie1 .l-title .en font:nth-of-type(2){
	font-size: .5em;
	letter-spacing: .1em;
	display: block;
}

.lp-products-movie-wrap.movie1 .sub-title{
	text-align: center;
	font-size: 1.46em;
	letter-spacing: .1em;
	margin-top: 2em;
}

.lp-movie-wrap .movie-wrap{
	width: 100vw;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	padding: 3vw 15vw;
	display: none;
	z-index: 999;
}

.lp-movie-wrap .movie-wrap .movie-bg{
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	position: fixed;
	background: rgba(128,128,128,1);
}

.lp-movie-wrap .movie-wrap #ytmovie-wrap,
.lp-movie-wrap .movie-wrap iframe{
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 2;
}

.lp-movie-thumb-wrap{
	position: relative;
	overflow: hidden;
	line-height: 0;
	background: #000;
}

.lp-movie-thumb-wrap img{
	width: 100%;
}

.lp-movie-thumb-wrap img.bghover{
	transition:transform 3s cubic-bezier(.22,1,.36,1),opacity .7s cubic-bezier(.22,1,.36,1);
	display: block;
}

.lp-movie-thumb-wrap:hover img.bghover{
	transform: scale(1.05);
	opacity: .7;
}

.lp-movie-thumb-wrap::after{
	display: block;
	content: "";
	width: 6.8em;
	height: 8em;
	background: url(img/icon_play.svg) no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50% , -50%);
}

.lp-movie-thumb-wrap::before{
	content: "View";
	font-family: "optima-lt-pro", sans-serif;
	font-weight: 400;
	font-style: normal;
	color: #d0c2be;
	font-size: 1.6em;
	letter-spacing: .1em;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50% , 3.5em);
}

.lp-movie-thumb-wrap .circle{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50% , -50%);
}

.lp-movie-thumb-wrap .circle span{
	display: block;
	animation:3s ease-in-out infinite rotation;
}

@keyframes rotation{
  0%{ transform:rotate(0);}
  100%{ transform:rotate(360deg); }
}


svg .svg-elem-1 {
  fill: none;
  stroke: #d0c2be;
  stroke-width: 1;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 707.1307983398438px;
  animation: circle-draw-erase 2s ease-out infinite;
}

@keyframes circle-draw-erase {
  0% {
    stroke-dashoffset: 707.1307983398438px;
  }

  40% {
    stroke-dashoffset: 0;
  }

  60% {
    stroke-dashoffset: 0;
  }


  100% {
    stroke-dashoffset: -707.1307983398438px;
  }
}



/*
lp-warranty
--------------------
*/


.lp-warranty-wrap{
	padding: 9em 0;
	color: #ccc2be;
	transition: color .3s ease;
}

.lp-warranty-wrap .l-title .jp::before,
.lp-warranty-wrap .l-title .jp::after{
	background: #ccc2be;
}

.view .lp-warranty-wrap{
	color: #003934;
}

.view .lp-warranty-wrap .l-title .jp::before,
.view .lp-warranty-wrap .l-title .jp::after{
	background: #003934;
}

.warranty-read-wrap{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-left: 5vw;
	padding-top: 8em;
	margin-bottom: 14em;
}

.warranty-read-wrap .thumb-wrap{
	width: 55%;
}

.warranty-read-wrap .text-wrap{
	width: 45%;
	text-align: center;
}

.warranty-read-wrap .text-wrap .title{
	display: table;
	line-height: 1;
    padding: 0.1em 5em 3.8em;
	margin:0 auto 8em;
	background: url(img/3year.png) no-repeat;
	background-size: contain;
}

.warranty-read-wrap .text-wrap .title .jp {
	display: flex;
	flex-flow: column;
	justify-content: center;	
}

.warranty-read-wrap .text-wrap .title .jp span:nth-of-type(1){
	font-size: 2.7em;
	letter-spacing: .1em;
	margin-bottom: 1.2em;
}

.warranty-read-wrap .text-wrap .title .jp span:nth-of-type(2){
	font-size: 4.6em;
	letter-spacing: .1em;
	margin-bottom: .3em;
}

.warranty-read-wrap .text-wrap .title .jp span:nth-of-type(3){
	font-size: 1.3em;
	letter-spacing: .1em;
	margin-bottom: 2.3em;
}

.warranty-read-wrap .text-wrap .title .en{
	font-size: 2em;
	letter-spacing: 0;
}

.warranty-read-wrap .text-wrap .read{
	font-size: 1.6em;
	letter-spacing: .1em;
	border-bottom: 0.3px solid #ccc2be;
	padding-bottom: .75em;
	display: table;
	margin: 0 auto 1.5em;
	position: relative;
}

.warranty-read-wrap .text-wrap .read::after{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #ccc2be;
	position: absolute;
	left: 0;
	bottom: -0.5px;
	transition: transform 1s ease;
	transform: scale(0, 1);
	transform-origin: right top;
}

.warranty-read-wrap .text-wrap.linein .read::after{
	transform: scale(1, 1);
	transform-origin: left top;
}


.warranty-read-wrap .text-wrap .text{
	font-size: 1.2em;
	line-height: 3;
}

.detail-data-wrap{
	width: 90%;
	max-width: 1000px;
	margin: 0 auto;
}

.detail-data-wrap dl{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.detail-data-wrap dl dt{
	width: 22%;
	font-size: 1.3em;
	letter-spacing: .1em;
	border-top: .3px solid #003934;
	padding-top: 1.4rem;
	padding-bottom: 5rem;
	position: relative;
}

.detail-data-wrap dl dt:after{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #003934;
	position: absolute;
	left: 0;
	top: -0.5px;
	transition: transform 1s ease;
	transform: scale(0, 1);
	transform-origin: right top;
}

.detail-data-wrap dl dd{
	width: 76%;
	font-size: 1.2em;
	border-top: .3px solid #003934;
	padding-top: 1.4rem;
	padding-bottom: 5rem;
	position: relative;
}

.detail-data-wrap dl dd:after{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #003934;
	position: absolute;
	left: 0;
	top: -0.5px;
	transition: transform 1s ease;
	transform: scale(0, 1);
	transform-origin: right top;
}

.detail-data-wrap dl.linein dt:after,
.detail-data-wrap dl.linein dd:after{
	transform: scale(1, 1);
	transform-origin: left top;
}



/*
lp-spec
--------------------
*/


.lp-spec-wrap{
	padding: 9em 0;
	color: #003934;
}

.lp-spec-wrap .icatch-wrap{
	display: flex;
	justify-content: center;
	padding: 7em 6vw;
	background: #013a33;
	margin: 7em 0 7em;
}

.lp-spec-wrap .dl-btn{
	text-align: center;
	display: block;
	font-size: 1.9em;
	letter-spacing: .1em;
	background: #003934;
	color: #ccc2be;
	padding: 1em;
	margin-top: 2.4em;
}



/*
lp-setup
--------------------
*/


.lp-setup-wrap{
	padding: 9em 0 18em;
	color: #003934;
}

.lp-setup-wrap .icatch-wrap{
	width: 90%;
	max-width: 1880px;
	margin: 0 auto;
	display: flex;
	gap:2.2em;
	margin-top: 10em;
}


/*
lp-package
--------------------
*/

.lp-package-wrap{
	padding: 9em 0;
	color: #003934;
	transition: color .3s ease;
}

.lp-package-wrap .l-title .jp::before,
.lp-package-wrap .l-title .jp::after{
	background: #003934;
}

.view .lp-package-wrap{
	color: #ccc2be;
}

.view .lp-package-wrap .l-title .jp::before,
.view .lp-package-wrap .l-title .jp::after{
	background: #ccc2be;
}

.package-contents-wrap{
	margin: 0 auto;
	padding-top: 9em;
}

.package-contents-wrap .ptitle{
	width: 90%;
	max-width: 1880px;
	font-size: 5.7em;
	line-height: 1;
	color: #eae995;
	padding-bottom: .7em;
	border-bottom: .3px solid #eae995;
	position: relative;
	margin:0 auto 2.2rem;
}

.package-contents-wrap .ptitle::after{
	content: "";
	display: block;
	width: 100%;
	height: .3px;
	background: #eae995;
	position: absolute;
	left: 0;
	bottom: .6rem;
}

.package-contents-wrap .ptitle span::after{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #eae995;
	position: absolute;
	left: 0;
	bottom: .55rem;
	transition: transform 1s ease;
	transform: scale(0, 1);
	transform-origin: right top;
}

.package-contents-wrap .ptitle span::before{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #eae995;
	position: absolute;
	left: 0;
	bottom: -0.5px;
	transition: transform 1s ease;
	transform: scale(0, 1);
	transform-origin: right top;
}

.package-contents-wrap.linein .ptitle span::before,
.package-contents-wrap.linein .ptitle span::after{
	transform: scale(1, 1);
	transform-origin: left top;
}

.package-contents-wrap .read-wrap{
	width: 90%;
	max-width: 1880px;
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 1;
	margin: -5em auto 5em;
}

.package-contents-wrap .read-wrap .name-wrap{
	color: #eae995;
	display: flex;
	align-items: center;
	gap:2em;
}

.package-contents-wrap .read-wrap .name-wrap .name{
	display: flex;
	flex-flow: column;
	gap:1.2em;
}

.package-contents-wrap .read-wrap .name-wrap .num{
	font-size: 13em;
}

.package-contents-wrap .read-wrap .name-wrap .en{
	font-size: 3.8em;
}

.package-contents-wrap .read-wrap .name-wrap .jp{
	font-size: 4em;
	letter-spacing: .1em;
}

.package-contents-wrap .read-wrap .list-wrap{
	display: flex;
	flex-flow: column;
	gap:1em;
	max-width: 1000px;
}

.package-contents-wrap .read-wrap .list-wrap .list{
	font-size: 1.6em;
	letter-spacing: .1em;
	text-align: center;
	background: #eae995;
	color: #003934;
	padding: .8em;
	display: block;
	
}

.package-contents-wrap .icatch-wrap{
	margin-bottom: 7.6em;
	position: relative;
}

.package-contents-wrap .icatch-wrap::after{
	content: "";
	display: block;
	width: 5em;
	height: 5em;
	background: url(img/icon_plus.svg) no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50% , -50%);
}

.package1 .package-contents-wrap .icatch-wrap{
	background: url("img/package_icatch_01_630_pc.png") no-repeat top;
	background-size: contain;
	background-position: center 9em;
}

.package2 .package-contents-wrap .icatch-wrap{
	background: url(img/package_icatch_01_630.png) no-repeat center;
	background-size: contain;
}

.package-contents-wrap .icatch-wrap .thumb-contents-wrap{
	width: 90%;
	max-width: 1880px;
	margin: 0 auto;
	padding-left: 56%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.package-contents-wrap .icatch-wrap .thumb-contents-wrap .thumb-contents{
	width: 46%;
	margin-top: 1vw;
	text-align: center;
}

.package-contents-wrap .icatch-wrap .thumb-contents-wrap .thumb-contents .title{
	font-size: 1.15em;
	line-height: 2;
	letter-spacing: .1em;
	padding-top: .6vw;
}

.package-contents-wrap .add-contents-wrap{
	width: 90%;
	max-width: 1880px;
	display: flex;
	justify-content: center;
	gap:4.3em;
	margin: 0 auto 17em;
	padding-top: 14em;
	position: relative;	
}

.package-contents-wrap .add-contents-wrap::before{
	content: "";
	display: block;
	width: 5em;
	height: 5em;
	background: url(img/icon_plus.svg) no-repeat;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}

.package-contents-wrap .add-contents-wrap .add-contents{
	text-align: center;
}

.package-contents-wrap .add-contents-wrap .add-contents .title{
	font-size: 1.15em;
	line-height: 2;
	letter-spacing: .1em;
	padding-top: 1.5em;
}

.package-contents-wrap .price-b-wrap{
	display: flex;
	justify-content: center;
	width: 90%;
	max-width: 1880px;
	position: relative;
	padding-bottom: 4em;
	margin: 0 auto 0em;
}

.package-contents-wrap .price-b-wrap::after{
	content: "";
	display: block;
	width: 4.2em;
	height: 4.0em;
	background: url(img/arrow_by2.svg) no-repeat;
	background-size: contain;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}


.package-contents-wrap .price-b-wrap  .lp-price span:nth-of-type(1) {
    background: #ccc2be;
    color: #003934;
}

.package-contents-wrap .price-b-wrap .lp-price span:nth-of-type(2),
.package-contents-wrap .price-b-wrap .lp-price span:nth-of-type(3){
	color: #ccc2be;
}

.package-contents-wrap .lp-price span:nth-of-type(2){
	font-size: 5.5em;
}

.package-contents-wrap .lp-price span:nth-of-type(3){
	font-size: 2em;
}


.package-contents-wrap .price-a-wrap{
	display: flex;
	justify-content: center;
	width: 90%;
	max-width: 1880px;
	margin: 0 auto;
}

.package-contents-wrap .price-a-wrap .atitle{
	text-align: center;
	font-size: 5em;
	letter-spacing: 0;
	color: #eae995;
	border-bottom: 7px solid #eae995;
	padding: 0 .3em;
}

.package-contents-wrap .price-a-wrap .read{
	display: flex;
	align-items: center;
	justify-content: center;
	gap:1.5em;
	color: #003934;
	background: #eae995;
	padding: 1em;
	line-height: 1;
	margin-bottom: 1.8em;
}


.package-contents-wrap .price-a-wrap .read .en{
	font-size: 4.5em;
	letter-spacing: .1em;
}

.package-contents-wrap .price-a-wrap .read .jp{
	font-size: 2.3em;
	letter-spacing: .1em;
}

.package-contents-wrap .price-a-wrap .note{
	font-size: 1.15em;
}

.lp-package-wrap.package2{
	padding: 9em 0;
	color: #ccc2be;
}

.lp-package-wrap.package2 .l-title .jp::before,
.lp-package-wrap.package2 .l-title .jp::after{
	background: #ccc2be;
}


.package-contents-wrap .read-wrap .list-wrap .list{
	font-size: 2.0em;
	letter-spacing: .1em;
	text-align: center;
	background: none;
	color: #eae995;
	padding: .6em;
	display: block;
	line-height: 2.0em;
}


.machine-caption{
    text-align: center;
    margin: 0;
    color: #ccc2be;
    letter-spacing: .14em;
    white-space: nowrap;
    position: absolute;
    font-size: 1.4em;
    line-height: 2;
	top: 47em;
    bottom: 0;
    left: 0;
    width: 56%;
}


@media (min-width: 2200px) {

.package1 .package-contents-wrap .icatch-wrap,
.package2 .package-contents-wrap .icatch-wrap{
	background-position: 25%;
}

.package-contents-wrap .icatch-wrap .thumb-contents-wrap{
	padding-left: 50%;
}

}



/*
lp-option
--------------------
*/


.lp-option-wrap{
	padding: 9em 0;
	color: #ccc2be;
	transition: color .3s ease;
}

.lp-option-wrap .l-title .jp::before,
.lp-option-wrap .l-title .jp::after{
	background: #ccc2be;
}

.view .lp-option-wrap{
	color: #003934;
}

.view .lp-option-wrap .l-title .jp::before,
.view .lp-option-wrap .l-title .jp::after{
	background: #003934;
}

.lp-option-wrap .l-title{
	margin-bottom: 13em;
}

.option-title{
	font-size: 1.8em;
	line-height: 2;
	letter-spacing: .1em;
}

.option-title.bl{
	text-align: center;
	display: table;
	padding: 0 2em 1em;
	border-bottom: .3px solid #003934;
	margin: 0 auto 2.6em;
	position: relative;
}

.option-title.bl::after{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #003934;
	position: absolute;
	left: 0;
	bottom: -0.5px;
	transition: transform 1s ease;
	transform: scale(0, 1);
	transform-origin: right top;
}

.inner.linein .option-title.bl::after{
	transform: scale(1, 1);
	transform-origin: left top;
}

.option-slider-wrap{
	margin-bottom: 6em;
}

.option-slider-wrap .slide{
	padding: 0 .75em;
}

.option-read-wrap{
	text-align: center;
	margin-bottom: 20em;
}

.option-read-wrap .text{
	font-size: 1.15em;
	line-height: 2.5;
	margin-top: 3.3em;
}

.option-tab-contents-wrap{
	padding-left: 10vw;
}

.option-tab-contents-wrap .tab-contents-wrap{
	margin-bottom: 16em;
	position: relative;
}

.option-tab-contents-wrap .tab-title,
.option-tab-contents-wrap .tab-contents{
	display: flex;
	justify-content: space-between;
}

.option-tab-contents-wrap .tab-title{
	margin-bottom: 2.7em;
	align-items: flex-end;
}

.option-tab-contents-wrap .tab-title .tab-nav{
	width: 55%;
	display: flex;
	border-bottom: .5px solid #003934;
	position: relative;
}

.option-tab-contents-wrap .tab-title .tab-nav::after{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #003934;
	position: absolute;
	left: 0;
	bottom: -0.5px;
	transition: transform 1s ease;
	transform: scale(0, 1);
	transform-origin: right top;
}

.option-tab-contents-wrap.linein .tab-title .tab-nav::after{
	transform: scale(1, 1);
	transform-origin: left top;
}

.option-tab-contents-wrap .tab-title .tab-nav li{
	font-size: 2.1em;
	padding-bottom: 2.4rem;
	letter-spacing: .1em;
	width: 50%;
	text-align: center;
	position: relative;
	cursor: pointer;
}

.option-tab-contents-wrap .tab-title .tab-nav li::after{
	content: "";
	display: block;
	width: 100%;
	height: 6px;
	background: #003934;
	position: absolute;
	bottom: 0;
	left: 0;
	opacity: 0;
	transform: translateY(50%);
	transition: opacity .4s ease;
}

.option-tab-contents-wrap .tab-title .tab-nav li.current::after{
	opacity: 1;
}

.option-tab-contents-wrap .tab-title .title{
	width: 41%;
	font-size: 2.1em;
	padding-right: 10vw;
	padding-bottom: 2.4rem;
	letter-spacing: .1em;
	border-bottom: .3px solid #003934;
	position: relative;
}

.option-tab-contents-wrap .tab-title .title::after{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #003934;
	position: absolute;
	left: 0;
	bottom: -0.5px;
	transition: transform 1s ease;
	transform: scale(0, 1);
	transform-origin: right top;
}

.option-tab-contents-wrap.linein .tab-title .title::after{
	transform: scale(1, 1);
	transform-origin: left top;
}

.option-tab-contents-wrap .tab-contents .tab-thumb-wrap{
	width: 55%;
}

.option-tab-contents-wrap .tab-contents .tab-thumb{
	display: none;
}

.option-tab-contents-wrap .tab-contents .tab-thumb.current{
	display: block;
}

.option-tab-contents-wrap .tab-contents .tab-thumb img{
	width: 100%;
}

.option-tab-contents-wrap .tab-contents .text-wrap{
	width: 41%;
}

.option-tab-contents-wrap .tab-contents .text-wrap .text{
	font-size: 1.2em;
	line-height: 2.5;
	padding-right: 10vw;
}

.tab-contents-wrap.no-nav .tab-title::before,
.tab-contents-wrap.no-nav .tab-contents::before{
	content: "";
	display: block;
	width: 55%;
}

.tab-contents-wrap.no-nav .tab-contents .tab-thumb-wrap{
	position: absolute;
	top: 0;
	left: 0;
	height: 0;
	padding-top: 31%;
}

.tab-contents-wrap.no-nav .tab-contents .tab-thumb-wrap img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50% , -50%);
	width: 100%;
	height: 100%;
	object-fit:cover;
	font-family: 'object-fit: cover;'
}

.option-thumb-wrap{
	width: 90%;
	max-width: 1278px;
	margin: 20em auto 10em;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.option-thumb-wrap .thumb-wrap{
	width: 47%;
}

.option-thumb-wrap .text-wrap{
	width: 35%;
}

.option-thumb-wrap .text-wrap .text{
	font-size: 1.15em;
	line-height: 2.5;
	margin: 3.3em 0 4em;
}

.option-thumb-wrap .text-wrap .btn{
	display: block;
	text-align: center;
	font-size: 1.5em;
	letter-spacing: .1em;
	background: #003934;
	color: #ccc2be;
	border-radius: .75em;
	padding: .9em;
	padding-left: 1.5em;
	position: relative;
}

.option-thumb-wrap .text-wrap .btn::before{
	content: "";
	display: block;
	width: 1.15em;
	height: 1.35em;
	background: url(img/arrow.svg) no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	left: 1.5em;
	transform: translateY(-50%);
}


/*
lp-commit commit2
--------------------
*/


.lp-commit-wrap.commit2{
	padding: 18em 0;
	color: #003934;
	transition: color .3s ease;
}

.lp-commit-wrap.commit2 .l-title .jp::before,
.lp-commit-wrap.commit2 .l-title .jp::after{
	background: #003934;
}

.view .lp-commit-wrap.commit2{
	color: #ccc2be;
}

.view .lp-commit-wrap.commit2 .l-title .jp::before,
.view .lp-commit-wrap.commit2 .l-title .jp::after{
	background: #ccc2be;
}

.lp-commit-wrap.commit2 .commit-contents-wrap{
	padding-top: 13em;
}

.lp-commit-wrap.commit2 .commit-contents{
	flex-flow: inherit;
	padding-right: 7em;
}

.lp-commit-wrap.commit2 .commit-contents .thumb-wrap{
	width: 53%;
}

.lp-commit-wrap.commit2 .commit-contents .text-wrap .title{
	text-align: center;
	border-bottom-color: #d0c2be;
	font-size: 3em;
	margin-bottom: .7em;
}

.lp-commit-wrap.commit2 .commit-contents.linein .text-wrap .title::after{
	background: #d0c2be;
}

.lp-commit-wrap.commit2 .commit-contents .text-wrap .sub-title{
	text-align: center;
	font-size: 1.8em;
	line-height: 1.8;
	letter-spacing: 0.16em;
	margin-bottom: 1.0em;
}


/*
lp-movie voice
--------------------
*/


.lp-products-movie-wrap.voice{
	padding: 9em 0;
}

.lp-products-movie-wrap.voice .movie-contents-wrap{
	max-width: 1420px;
	padding-top: 9em;
}

.lp-products-movie-wrap.voice .movie-contents-wrap .cap{
	display: flex;
	justify-content: space-between;
	font-size: 2em;
	padding-top: 1em;
}


/*
lp-difference
--------------------
*/


.lp-difference-wrap{
	padding: 9em 0;
	width: 90%;
	margin: 0 auto;
	border-radius: 4em;
}

.difference-inner{
	max-width: 1800px;
	margin: 0 auto;
	padding: 0 10vw;
}

.lp-difference-wrap .l-title .jp::before{
	width: 100%;
	left: 0;
	transform: none;
}

.lp-difference-wrap .l-title .jp::after{
	width: 100%;
	left: 0;
	transform: none;
}

.difference-contents-wrap{
	padding-top: 12em;
	text-align: center;
}

.difference-contents-wrap .title-wrap{
	display: flex;
	justify-content: space-between;
	margin-bottom: 5em;
}

.difference-contents-wrap .title-wrap span{
	width: 32%;
	font-size: 2em;
	letter-spacing: .1em;
	border: 1px solid #ccc2be;
	color: #FFF;
	border-radius: .3em;
	padding: .2em;
}

.difference-contents-wrap .title-wrap span:nth-of-type(1){
	background: #eae995;
	border-color: #eae995;
	color: #003934;
	position: relative;
}

.difference-contents-wrap .title-wrap span:nth-of-type(1)::before{
	content: "";
	display: block;
	width: 9.5rem;
	height: 5.9rem;
	background: url(img/logo_m.svg) no-repeat;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50% , -150%);
}

.difference-contents{
	margin-bottom: 5.3em;
}

.difference-contents:last-of-type{
	margin-bottom: 0;
}

.difference-contents .title{
	font-size: 2em;
	letter-spacing: .1em;
	background: #ccc2be;
	color: #003934;
	border-radius: .3em;
	padding: .2em;
	margin-bottom: 2em;
}

.difference-contents .inner{
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.difference-contents .inner span{
	width: calc(100% / 3);
	font-size: 1.7em;
	border-right: 1px solid #ccc2be;
}

.difference-contents .inner span:last-of-type{
	border: none;
}

.difference-contents .inner span:nth-of-type(1){
	font-size: 2em;
	color: #eae995;
}

.difference-contents.price .inner span{
	font-size: 3em;
}

.difference-contents.price .inner span:nth-of-type(1){
	font-size: 3.3em;
	color: #eae995;
}


/*
lp-faq
--------------------
*/


.lp-faq-wrap{
	padding: 9em 0 18em;
}

.faq-contents-wrap{
	padding-top: 9em;
	width: 90%;
	max-width: 1880px;
	margin: 0 auto;
}

.faq-contents-wrap .faq-contents{
	border-bottom: .3px solid #ccc2be;
	position: relative;
}

.faq-contents-wrap .faq-contents::after{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #ccc2be;
	position: absolute;
	left: 0;
	bottom: -0.5px;
	transition: transform 1s ease;
	transform: scale(0, 1);
	transform-origin: right top;
}

.faq-contents-wrap .faq-contents.linein::after{
	transform: scale(1, 1);
	transform-origin: left top;
}

.faq-contents-wrap .faq-contents dt{
	font-size: 1.6em;
	line-height: 2;
	letter-spacing: .1em;
	padding: 2.2em 10em;
	position: relative;
	cursor: pointer;
}

.faq-contents-wrap .faq-contents dt span{
	display: block;
	width: 3.8rem;
	height: 3.8rem;
	border: 1px solid #ccc2be;
	border-radius: .4em;
	position: absolute;
	right: 0;
	top: 3rem;
}

.faq-contents-wrap .faq-contents dt span::before{
	content: "";
	display: block;
	width: 60%;
	height: 2px;
	background: #ccc2be;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50% , -50%);
}

.faq-contents-wrap .faq-contents dt span::after{
	content: "";
	display: block;
	width: 2px;
	height: 60%;
	background: #ccc2be;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50% , -50%);
	transition: .3s ease;
}

.faq-contents-wrap .faq-contents.active dt span::after{
	height: 0;
}

.faq-contents-wrap .faq-contents dt::before{
	content: "Q";
	font-family: "optima-lt-pro", sans-serif;
	font-weight: 400;
	font-style: normal;
	position: absolute;
	left: 0;
	top: 2.2rem;
	font-size: 4.9rem;
	line-height: 1;
}

.faq-contents-wrap .faq-contents dd{
	font-size: 1.3em;
	line-height: 2;
	letter-spacing: .1em;
	padding: 1em 12em 4em;
	position: relative;
	display: none;
}

.faq-contents-wrap .faq-contents dd::before{
	content: "A";
	font-family: "optima-lt-pro", sans-serif;
	font-weight: 400;
	font-style: normal;
	position: absolute;
	left: 0;
	font-size: 4.9rem;
	line-height: 1;
}

.faq-contents-wrap .faq-contents.active dd{
	top: 1.2rem;
}


/*
lp-showroom
--------------------
*/


.lp-showroom-wrap{
	padding: 9em 0;
	color: #ccc2be;
	transition: color .3s ease;
}

.lp-showroom-wrap .l-title .jp::before,
.lp-showroom-wrap .l-title .jp::after{
	background: #ccc2be;
}

.view .lp-showroom-wrap{
	color: #003934;
}

.view .lp-showroom-wrap .l-title .jp::before,
.view .lp-showroom-wrap .l-title .jp::after{
	background: #003934;
}

.showroom-contents-wrap{
	width: 90%;
	max-width: 1880px;
	margin: 0 auto;
}

.showroom-contents-wrap .showroom-contents{
	display: flex;
	justify-content: space-between;
	padding: 10em 0;
	position: relative;
}

.showroom-contents-wrap .showroom-contents::before{
    content: "";
    display: block;
    width: 100vw;
    height: 0.5px;
    background: #003934;
    position: absolute;
    bottom: 0;
    left: calc(50% - 50vw);
}

.showroom-contents-wrap .showroom-contents::after{
    content: "";
    display: block;
	width: 100vw;
    height: 1px;
    background: #003934;
    position: absolute;
    bottom: -0.5px;
    left: calc(50% - 50vw);
	transition: transform 1s ease;
	transform: scale(0, 1);
	transform-origin: right top;
}

.showroom-contents-wrap .showroom-contents.linein::after{
	transform: scale(1, 1);
	transform-origin: left top;
}

.showroom-contents-wrap .showroom-contents .showroom-slider-wrap{
	width: 51%;
}

.showroom-contents-wrap .showroom-contents .showroom-slider-wrap .slider-nav {
	margin: 3px -3px 0;
}

.showroom-contents-wrap .showroom-contents .showroom-slider-wrap .slider-nav .slide{
	padding: 0 3px;
}

.slider-nav .slick-track {
	margin: 0;
}

.showroom-contents-wrap .showroom-contents .text-wrap{
	width: 43%;
}

.showroom-contents-wrap .showroom-contents .text-wrap .title{
	display: flex;
	align-items: baseline;
	gap: 2em;
	border-bottom: 0.3px solid #003934;
	margin-bottom: 2em;
	position: relative;
}

.showroom-contents-wrap .showroom-contents .text-wrap .title::before{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #003934;
	position: absolute;
	left: 0;
	bottom: -0.5px;
	transition: transform 1s ease;
	transform: scale(0, 1);
	transform-origin: right top;
}

.showroom-contents-wrap .showroom-contents.linein .text-wrap .title::before{
	transform: scale(1, 1);
	transform-origin: left top;
}

.showroom-contents-wrap .showroom-contents .text-wrap .atitle{
	font-size: 2.0em;
	letter-spacing: .1em;
	margin-bottom: 1.4em;
}

.showroom-contents-wrap .showroom-contents .text-wrap .title span:nth-of-type(1){
	font-size: 5em;
	letter-spacing: .05em;
}

.showroom-contents-wrap .showroom-contents .text-wrap .title span:nth-of-type(2){
	font-size: 2.0em;
	letter-spacing: .07em;
}

.showroom-contents-wrap .showroom-contents .text-wrap .address{
	margin-bottom: 2em;
}

.showroom-contents-wrap .showroom-contents .text-wrap .address .jp{
	font-size: 1.5em;
	line-height: 1.6;
	letter-spacing: .1em;
}

.showroom-contents-wrap .showroom-contents .text-wrap .address .en{
	font-size: 1.5em;
	line-height: 2;
	letter-spacing: 0;
}

.showroom-contents-wrap .showroom-contents .text-wrap .tel{
	font-size: 1.9em;
	letter-spacing: .1em;
	margin-bottom: .15em;
}

.showroom-contents-wrap .showroom-contents .text-wrap .time{
	font-size: 1.9em;
	letter-spacing: .1em;

}

.showroom-contents-wrap .showroom-contents .text-wrap .text{
	font-size: 1.6em;
	line-height: 2;
	letter-spacing: 0;
	padding-top: 1.2em;
	margin-top: 1.2em;
	border-top: 0.5px solid #003934;
	position: relative;
}

.showroom-contents-wrap .showroom-contents .text-wrap .text::before{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #003934;
	position: absolute;
	left: 0;
	top: -0.5px;
	transition: transform 1s ease;
	transform: scale(0, 1);
	transform-origin: right top;
}

.showroom-contents-wrap .showroom-contents.linein .text-wrap .text::before{
	transform: scale(1, 1);
	transform-origin: left top;
}


footer{
	padding: 3em 0 10em;
}

footer .foot-btn-wrap{
	width: 65%;
	max-width: 1418px;
	margin: 0 auto;
	display: flex;
	flex-flow: column;
	gap: 2.3em;
}

footer .foot-btn-wrap .btn{
	display: flex;
	flex-flow: column;
	gap: .6em;
	line-height: 1;
	background: #e8e797;
	color: #003934;
	border-radius: 1em;
	padding: 2.0em 10em;
	text-align: center;
	position: relative;
}

footer .foot-btn-wrap .btn::after{
	content: "";
	display: block;
	width: 5.2em;
	height: 5.0em;
	background: url(img/icon_arrow.svg) no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	right: 4em;
	transform: translateY(-50%);
}

footer .foot-btn-wrap .btn::before{
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 4em;
	transform: translateY(-50%);
}

footer .foot-btn-wrap .btn.product::before{
	width: 7em;
	height: 4.0em;
	background: url(img/icon_logo.svg) no-repeat;
	background-size: contain;
}

footer .foot-btn-wrap .btn.line::before{
	width: 6.5em;
	height: 6em;
	background: url(img/icon_line.svg) no-repeat;
	background-size: contain;
}

footer .foot-btn-wrap .btn.instagram::before{
	width: 7em;
	height: 5.5em;
	left: 4.8em;
	background: url(img/icon_in.svg) no-repeat;
	background-size: contain;
}

footer .foot-btn-wrap .btn.youtube::before{
	width: 8.7em;
	height: 4.5em;
	left: 4.5em;
	background: url(img/icon_yt.svg) no-repeat;
	background-size: contain;
}


footer .foot-btn-wrap .btn .en{
	font-size: 3.0em;
}

footer .foot-btn-wrap .btn .jp{
	font-size: 1.6em;
	letter-spacing: .2em;
}




/*
OPEN MENU
--------------------
*/


.open-menu::after{
	content: "";
	display: block;
	width: 100vw;
	height: 100vh;
	background: rgba(0,0,0,0.5);
	position: fixed;
	top: 0;
	left: 0;
	opacity: 0;
	pointer-events: none;
    transition: .6s ease 0s;
}

.open-menu.open::after{
	opacity: 1;
}

.open-menu-btn-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    width: 5.8em;
    height: .8em;
    top: 50%;
    right: 3%;
    transform: translateX(-50%);
    cursor: pointer;
    z-index: 999;
    transition: 1s ease 0s;
}

.open-menu-btn {
	display: block;
	border: none;
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1;
}

.open-menu-btn .toggle {
	width: 100%;
	height: 1px;
	display: block;
	position: absolute;
	left: 0;
}

.open-menu-btn .toggle::after {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #ccc2be;
	position: absolute;
	top: 0;
	left: 0;
}

.open-menu-btn .toggle:nth-child(1) {
	top: 0;
	transition: 0s ease .3s;
}

.open-menu-btn .toggle:nth-child(2) {
	bottom: 0;
	transition: 0s ease .5s;
}

.open .open-menu-btn .toggle:nth-child(1){
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
}

.open .open-menu-btn .toggle:nth-child(2){
	bottom: 50%;
	transform: translateY(50%) rotate(-45deg);
}

.open-menu-btn.replay .toggle:nth-child(1)::after {
  animation: twidth 1s ease forwards 0s;
}

.open-menu-btn.replay .toggle:nth-child(2)::after {
    animation: twidth2 1s ease forwards .2s;
}


@keyframes twidth {


0% {
	width: 100%;
}

10% {
	width: 0%;
}

50% {
	width: 0%;
}

90% {
	width: 100%;
}

100% {
	width: 100%;
}

}

@keyframes twidth2 {


0% {
	width: 100%;
}

10% {
	width: 0%;
}

50% {
	width: 0%;
}

90% {
	width: 100%;
}
100% {
	width: 100%;
}

}

.open-menu-bg {
	position: fixed;
    top: 0;
    right: 0;
    left: auto;
    width: 0%;
    height: 0%;
    pointer-events: none;
    opacity: 0;
    transform: translateX(100%);
    z-index: 998;
    background: #003934;
    transition: .6s ease 0s;
}

.open .open-menu-bg {
	width: 36vw;
	height: 100vh;
	opacity: 1;
    transform: translateX(0);
    transition: transform .6s ease 0s , width 0s ease;
}

.open-menu-wrap {
	width: 0;
	height: 100vh;
	position: fixed;
	top: 0;
	right: 0;
	padding: 10em 5vw;
	overflow-y: scroll;
	overflow-x: hidden;
	color: #ccc2be;
	z-index: 998;
	-ms-overflow-style: none;
	scrollbar-width: none;
	pointer-events: none;
	opacity: 0;
    transform: translateX(100%);
    transition: transform .6s ease 0s , width 0s ease;
}

.open .open-menu-wrap {
	width: 36vw;
	opacity: 1;
    transform: translateX(0);
	pointer-events: visible;
}

.open-nav{
	margin-bottom: 9em;
}

.open-nav li{
	font-size: 1.8em;
	letter-spacing: .1em;
	margin-bottom: 1em;
	cursor: pointer;
	display: block;
}

.open-nav li p{
	position: relative;
	border-bottom: 2px solid #ccc2be;
	padding-bottom: .4rem;
}

.open-nav li.parent span.icon{
	width: .6em;
	height: .6em;
	cursor: pointer;
	position: absolute;
	right: 0;
	top: calc(50% - .5rem);
	transform: translateY(-50%);
}

.open-nav li.parent span.icon::before{
	content: "";
	display: block;
	width: 2px;
	height: 100%;
	background: #ccc2be;
	position: absolute;
	top: 0;
	right: 50%;
	transform: translateX(50%);
	transition: .4s ease-in-out;
}

.open-nav li.parent.active span.icon::before{
	opacity: 0;
	transform: rotate(180deg);
}

.open-nav li.parent span.icon::after{
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	background: #ccc2be;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	transition: .4s ease-in-out;
}

.open-nav li.parent.active span.icon::after{
	transform: rotate(180deg);
}

.open-nav li .child{
	padding: 1em 0 2em;
	display: none;
}

.open-nav li .child li.products{
	font-size: .86em;
	display: flex;
	align-items: center;
	letter-spacing: .1em;
	margin-bottom: 1.15rem;
}

.open-nav li .child li.products .name {
	white-space: nowrap;
}

.open-nav li .child li.products .spec{
	font-size: .65em;
	position: relative;
	padding-left: 6em;
}

.open-nav li .child li.products .spec::after{
	content: "";
	display: block;
	width: 3.7em;
	height: 1px;
	background: #ccc2be;
	position: absolute;
	top: 50%;
	left: .8em;
	transform: translateY(-50%);
}

.open-nav li .child li.line{
	font-size: .86em;
	letter-spacing: .1em;
	margin-bottom: .6em;
}

.open-nav li .child li.line span{
	border-bottom: .25px solid #ccc2be;
}

.open-nav li .parent-sub{
	position: relative;
	padding-right: 1.2em;
}

.open-nav li .parent-sub font.icon{
	width: .6em;
	height: .6em;
	cursor: pointer;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-60%);
}

.open-nav li .parent-sub font.icon::before{
	content: "";
	display: block;
	width: 2px;
	height: 100%;
	background: #ccc2be;
	position: absolute;
	top: 0;
	right: 50%;
	transform: translateX(50%);
	transition: .4s ease-in-out;
}

.open-nav li .parent-sub.active font.icon::before{
	opacity: 0;
	transform: rotate(180deg);
}

.open-nav li .parent-sub font.icon::after{
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	background: #ccc2be;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	transition: .4s ease-in-out;
}

.open-nav li .parent-sub.active font.icon::after{
	transform: rotate(180deg);
}

.open-nav li .child-sub{
	padding: 1em 0;
	display: none;
}

.open-menu .sns-nav{
	padding: 2.2em 0 .5em;
	border-top: 0px solid #ccc2be;
	border-bottom: 2px solid #ccc2be;
}

.open-menu .sns-nav li{
	font-size: 1.5em;
	margin-bottom: .5em;
}

.open-menu .copyright-wrap{
	display: flex;
	align-items: center;
	gap:2.2em;
	letter-spacing: .1em;
	font-size: .9em;
	padding-top: 1.2em;
}





.lp-read-wrap .parts-contents-wrap .parts-price-wrap .text-wrap .title.no-line::before,
.lp-read-wrap .parts-contents-wrap .parts-price-wrap .text-wrap .title.no-line::after,
.lp-read-wrap .parts-contents-wrap .parts-price-wrap .text-wrap .title.no-line span::before,
.lp-read-wrap .parts-contents-wrap .parts-price-wrap .text-wrap .title.no-line span::after{
  content: none !important;
  display: none !important;
}



.open-nav .open-contact {
  position: relative;
  border-bottom: 2px solid #ccc2be;
  padding-bottom: .4rem;
}




/* 製品仕様（JP）＋横線 → イエロー */
.lp-spec-wrap .l-title .jp{
  color: #eae995;
}

.lp-spec-wrap .l-title .jp::before,
.lp-spec-wrap .l-title .jp::after{
  background: #eae995;
}

/* SPEC（EN） → ベージュ */
.lp-spec-wrap .l-title .en{
  color: #ccc2be;
}