body {
    height: 100%;
    margin: 0;
    font-feature-settings: 'palt';
	-webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	font-family: sans-serif;
	color: #5b4942;
}

a{
	color: #000;
	text-decoration: none;
}
img{
	width: 100%;
	display: block;
	padding: 0;
	margin: 0;
	line-height: 0;
}
.mv-video{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.load-video{
	opacity: 0;
	transition: opacity 1s ease;
}

/* 
font-family: "itc-avant-garde-gothic-pro", sans-serif;
font-weight: 700;
font-style: normal;
 */

/* font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif; */


/* 

font-family: "kumlien-pro", serif;
font-weight: 400;
font-style: normal;

font-family: "kumlien-pro", serif;
font-weight: 500;
font-style: normal;

font-family: "hiragino-mincho-pron", sans-serif;
font-weight: 300;
font-style: normal;

font-family: "baskerville-urw", serif;
font-weight: 400;
font-style: normal;

font-family: "baskerville-display-pt", serif;
font-weight: 400;
font-style: normal;

font-family: "baskerville-poster-pt", serif;
font-weight: 400;
font-style: italic;

font-family: garamond-premier-pro, serif;
font-weight: 400;

font-family: "garamond-premier-pro-display", serif;
font-weight: 300;
font-style: normal;

font-family: "garamond-premier-pro-display", serif;
font-weight: 300;
font-style: italic;

Didot LT Pro Headline
font-family: "linotype-didot-headline", serif;
font-weight: 400;
font-style: normal;

font-family: "tangier", sans-serif;
font-weight: 500;
font-style: normal;

Leander Script Pro Regular
font-family: "leander-script-pro", sans-serif;
font-weight: 400;
font-style: normal;

Yu Gothic Pr6N R
font-family: "yu-gothic-pr6n", sans-serif;
font-weight: 400;
font-style: normal;

font-family: "source-han-sans-cjk-ja", sans-serif;
font-weight: 200;
font-style: normal;

font-family: "source-han-sans-cjk-ja", sans-serif;
font-weight: 400;
font-style: normal;

font-family: "source-han-sans-cjk-ja", sans-serif;
font-weight: 500;
font-style: normal;

font-family: "source-han-sans-cjk-ja", sans-serif;
font-weight: 700;
font-style: normal;

font-family: "avenir-lt-pro", sans-serif;
font-weight: 200;
font-style: normal;

DIN Condensed Regular
font-family: "din-condensed", sans-serif;
font-weight: 400;
font-style: normal;

font-family: "futura-pt", sans-serif;
font-weight: 400;
font-style: normal;

Snell Roundhand LT Std Scr
font-family: "snell-roundhand-lt-std", sans-serif;
font-weight: 400;
font-style: normal;

*/

/* PC ------------------------------------------------------*/
@media screen and (min-width: 1281px) {
	.sp-on{
		display: none !important;
	}

	/* bg scroll layer ------------------------------------------ */
	#bg-wrapper {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: -1;
	}
	.bg-layer {
		position: absolute;
		inset: 0;
		opacity: 0;
		transition: opacity 1.8s ease;
		background-size: cover;
		background-position: center;
	}
	#bg-white {
		background: #ffffff;
		opacity: 1;
	}
	#bg-mv {
		background-image: url('../img/mv.jpg');
		background-position:  top center;
	}
	#bg-read {
		background-image: url('../img/read.jpg');
	}
	#bg-door {
		background-image: url('../img/door.jpg');
	}

	header{
		width: 100%;
		height: 100vh;
		overflow: hidden;
		position: relative;
		background: transparent;
	}
	.mv-logo{
		width: 5%;
		position: fixed;
		top: 2%;
		right: 2%;
		z-index: 99;
		opacity: 1;
		transition: opacity 0.7s ease;
	}
	.mv-logo.is-hidden{
		animation: none;
		opacity: 0;
		pointer-events: none;
	}
	.mv-title-box{
		width: 35%;
		position: fixed;
		top: 53%;
		left: 11%;
		transform: translateY(-53%);
		opacity: 1;
		transition: opacity 0.7s ease;
	}
	.mv-title-box.is-hidden{
		opacity: 0;
		pointer-events: none;
	}
	.mv-title01{
		width: 100%;
		margin: 0 0 18% 0;
	}
	.mv-title01 li:nth-child(1){
		width: 100%;
		position: relative;
		line-height: 0;
		margin: 0 0 3% 0;
	}
	.mv-title01 li:nth-child(2){
		width: 100%;
		position: relative;
		line-height: 0;
	}
	.mv-title02{
		width: 100%;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.mv-title02 li:nth-child(1){
		width: 20%;
		height: 1px;
		background: #008497;
		position: relative;
		line-height: 0;
	}
	.mv-title02 li:nth-child(2){
		width: 76%;
		position: relative;
		line-height: 0;
	}
	
	/* read */
	.read{
		width: 100%;
		height: 100vh;
		margin: 0 auto;
		position: relative;
		background: transparent;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.read .txt span.tl{
		display: block;
		opacity: 0;
		filter: blur(10px);
		transition: opacity 1s ease, filter 1s ease;
	}
	.read .txt span.tl.active{
		opacity: 1;
		filter: blur(0);
	}
	.read .txt{
		font-size: min(16px + 0.4vw, 24px);
		line-height: 4em;
		letter-spacing: .4em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		text-align: center;
		color: #008497;
	}
	.read .logo{
		width: 15%;
		position: absolute;
		right: 5%;
		bottom: 10%;
	}

	/* door */
	.door{
		width: 100%;
		margin: 0 auto;
		position: relative;
		background: transparent;
	}
	.door-in{
		width: 100%;
		/* position: absolute;
		top: 50%;
		left: 50%; 
		transform: translate(-50%, -50%);   */
		padding: 10% 0;
	}
	.door-txt{
		width: 70%;
		margin: 0 auto 5% auto;
		display: flex;
		justify-content: space-between;
	}
	.door-txt li:nth-child(1){
		width: 40%;
	}
	.door-txt li:nth-child(2){
		width: 50%;
		padding: 1% 0 0 0;
	}
	.door-txt li .title{
		font-size: min(30px + 0.4vw, 40px);
		line-height: 2em;
		letter-spacing: .4em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		color: #d8d8d8;
		position: relative;
		white-space: nowrap;
	}
	.door-txt li .title span{
		color: #231815;
		position: absolute;
		top: 0;
		left: 0;
		white-space: nowrap;
	}
	.door-txt li .txt{
		font-size: clamp(18px, 1.2vw, 24px);
		line-height: 2.8em;
		letter-spacing: .4em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		color: #d8d8d8;
		position: relative;
		white-space: nowrap;
	}
	.door-txt li .txt span{
		color: #231815;
		position: absolute;
		top: 0;
		left: 0;
	}
	.door-txt li .en{
		font-size: 90px;
		line-height: 1;
		letter-spacing: .1em;
		font-family: "garamond-premier-pro-display", serif;
		font-weight: 300;
		font-style: normal;
		white-space: nowrap;
		margin: 15% 0 0 0;
		color: #d8d8d8;
		position: relative;
	}
	.door-txt li .en .en01{
		color: #c07db7;
		position: absolute;
		top: 0;
		left: 0;
	}
	.door-txt li .en .en02{
		color: #008497;
		position: absolute;
		top: 0;
		left: 0;
	}
	.slick-box{
		width: 100%;
		overflow: hidden;
	}
	.slick-img{
		display: block;
		border-radius: 20px;
		overflow: hidden;
	}
	.slick-img img{
		transform: scale(1);
		transition: .3s;
	}
	.slick-img:hover img{
		transform: scale(1.05);
		transition: .3s;
	}
	.slick-box .slick-slide{
		padding: 0 5px;
		box-sizing: border-box;
	}

	/* wrap */
	.wrap{
		width: 100%;
		position: relative;
	}
	.bg01{
		position: absolute;
		top: 7%;
		right: 0;
		width: 90%;
		z-index: -1;
		overflow: hidden;
		opacity: .05;
	}
	.bg01::before,
	.bg01::after{
		content: '';
		position: absolute;
		left: 0;
		width: 100%;
		height: 30%;
		z-index: 1;
		pointer-events: none;
	}
	.bg01::before{
		top: 0;
		background: linear-gradient(to bottom, #fff, transparent);
	}
	.bg01 video{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.bg02{
		position: absolute;
		bottom: 10%;
		left: 0;
		width: 100%;
		z-index: -1;
		overflow: hidden;
		opacity: .1;
	}
	.bg02::before,
	.bg02::after{
		content: '';
		position: absolute;
		left: 0;
		width: 100%;
		height: 15%;
		z-index: 1;
		pointer-events: none;
	}
	.bg02::before{
		top: 0;
		background: linear-gradient(to bottom, #fff, transparent);
	}
	.bg02::after{
		bottom: 0;
		background: linear-gradient(to top, #fff, transparent);
	}
	.bg02 video{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.bg03{
		position: absolute;
		top: 7%;
		right: 0;
		width: 90%;
		z-index: -1;
		overflow: hidden;
		opacity: .1;
	}
	.bg03::before,
	.bg03::after{
		content: '';
		position: absolute;
		left: 0;
		width: 100%;
		height: 15%;
		z-index: 1;
		pointer-events: none;
	}
	.bg03::before{
		top: 0;
		background: linear-gradient(to bottom, #fff, transparent);
	}
	.bg03 video{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.bg04{
		position: absolute;
		bottom: 10%;
		left: 0;
		width: 100%;
		z-index: -1;
		overflow: hidden;
		opacity: .1;
	}
	.bg04::before,
	.bg04::after{
		content: '';
		position: absolute;
		left: 0;
		width: 100%;
		height: 15%;
		z-index: 1;
		pointer-events: none;
	}
	.bg04::before{
		top: 0;
		background: linear-gradient(to bottom, #fff, transparent);
	}
	.bg04::after{
		bottom: 0;
		background: linear-gradient(to top, #fff, transparent);
	}
	.bg04 video{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	/* item */
	.rever{
		flex-direction: row-reverse;
	}
	.item{
		width: 100%;
		margin: 0 auto 7% auto;
		overflow: hidden;
		display: flex;
		justify-content: flex-start;
	}
	.item-n{
		width: 85% !important;
	}
	.item .img{
		width: 50%;
		overflow: hidden;
		opacity: 0;
		transform: translateY(40px);
		transition: opacity 0.9s ease, transform 0.9s ease;
	}
	.item .img.active{
		opacity: 1;
		transform: translateY(0);
	}
	.item .data{
		width: 50%;
		overflow: hidden;
	}
	.item .data01{
		box-sizing: border-box;
		padding: 0 10% 0 7%;
	}
	.item .data-n{
		box-sizing: border-box;
		padding: 0 7% 0 7%;
	}
	.item .data .num{
		width: max-content;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		margin: 0 0 5% 0;
	}
	.item .data .num li:nth-child(1){
		width: 150px;
		position: relative;
	}
	.item .data .num li:nth-child(1) span{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.item .data .num li:nth-child(2){
		font-size: 26px;
		line-height: 2em;
		letter-spacing: .2em;
		font-family: "snell-roundhand-lt-std", sans-serif;
		font-weight: 400;
		font-style: normal;
		position: relative;
		top: 12px;
		left: -10%;
	}
	.item .data .title{
		font-size: clamp(16px, 1.67vw, 30px);
		line-height: 2em;
		letter-spacing: .3em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		white-space: nowrap;
		margin: 0 0 7% 0;
	}
	.item .data .txt{
		font-size: clamp(10px, 1.2vw, 18px);
		line-height: 2.5em;
		letter-spacing: .2em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		margin: 0 0 10% 0;
	}
	.item .data .link-box{
		width: 80%;
	}
	.item .data .link-box02{
		width: 90% !important;
	}

	/* staff */
	.staff > img {
		width: 100%;
		display: block;
		will-change: transform;
	}
	.staff{
		width: 100%;
		overflow: hidden;
		margin: 0 auto 7% auto;
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.staff-box{
		width: 60%;
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin: 0 auto;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.staff-box .logo{
		width: 30%;
	}
	.staff-box .staff-list{
		width: 45%;
		font-family: "garamond-premier-pro-display", serif;
        font-weight: 300;
        font-style: normal;
	}
	.staff-box .staff-list li{
		width: max-content;
		display: flex;
		justify-content: space-between;
		margin: 0 0 5% 0;
	}
	.staff-box .staff-list li:last-child{
		margin: 0 0 0 0;
	}
	.staff-box .staff-list li .position{
		color: #fff;
		width: 100px;
		font-size: clamp(10px, 1.2vw, 16px);
		line-height: 1;
		letter-spacing: .1em;
	}
	.staff-box .staff-list li .name{
		color: #fff;
		font-size: clamp(10px, 1.2vw, 16px);
		line-height: 1;
		letter-spacing: .1em;
	}

	/* cart-btn */
	.l-icon::before{
        content: url("../img/l-size.svg");
        width: 15px;
        height: 15px;
        display: inline-block;
        background-size: 13px 13px;
        position: relative;
        top: 0px;
		margin: 0 10px 0 0;
		line-height: 0;
		border: 1px solid #000;
		border-radius: 3px;
    }
    .s-icon::before{
        content: url("../img/s-size.svg");
        width: 15px;
        height: 15px;
        display: inline-block;
        background-size: 13px 13px;
        position: relative;
        top: 0px;
		margin: 0 10px 0 0;
		line-height: 0;
		border: 1px solid #000;
		border-radius: 3px;
    }

	.cart-btn {
		width: 100%;
		text-decoration: none;
		color: #000;
		transition: 0.3s;
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin: 0 0 1% 0;
		font-family: "yu-mincho-pr6n", sans-serif;
		position: relative;
	}
	.cart-title {
		width: max-content;
		font-size: .9em;
		letter-spacing: .1em;
		position: absolute;
		line-height: 1.5em;
		white-space: nowrap;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
	}
	.cart-yen {
		font-size: 16px;
		letter-spacing: 0;
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: flex-end;
		white-space: nowrap;
		font-family: "yu-mincho-pr6n", sans-serif;
		padding: 0 10px 0 0;
	}
	.cart-yen .yen-icon {
		margin: 0 2px 0 0;
	}
	.cart-yen .tax {
		font-size: 11px;
		letter-spacing: 0;
		margin: 0 0 0 5px;
		position: relative;
		top: 1px;
	}
	.link-line01 {
		width: 100%;
		height: 1px;
		background: #5b4942;
		margin: 20px 0;
		opacity: .5;
	}
	.cart-btn .btn {
		width: 120px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		padding: 7px 0;
		position: relative;
		overflow: hidden;
	}
	.cart-btn .btn span {
		font-size: .8em;
		line-height: 1;
		letter-spacing: .05em;
		text-align: center;
		font-family: "futura-pt", sans-serif;
		font-weight: 400;
		font-style: normal;
		position: relative;
		z-index: 10;
		transition: .5s;
	}
	.cart-btn:hover .btn span {
		color: #fff;
	}
	.cart-btn .btn .btn-bg {
		width: 150%;
		height: 100%;
		position: absolute;
		display: block;
		top: 0;
		left: -140%;
		clip-path: polygon(0 0, 100% 0, calc(100% - 30px) 100%, 0 100%);
		transition: .5s;
	}
	.cart-btn:hover .btn .btn-bg {
		left: 0%;
	}

	/* 00 */
	.cart-btn .btn00 {
		background: #fff;
		border: 1px solid #969696;
		color: #969696;
	}
	.btn_bg-color00{
		background: #969696;
	}
	.cart-btn:hover .btn .btn-color00 {
		color: #fff !important;
	}

	/* 01 */
	.cart-btn .btn01 {
		background: #cfc1ab;
		border: 1px solid #cfc1ab;
		color: #fff;
	}
	.btn_bg-color01{
		background: #fff;
	}
	.cart-btn:hover .btn .btn-color01 {
		color: #cfc1ab !important;
	}

	/* 02 */
	.cart-btn .btn02 {
		background: #cfc1ab;
		border: 1px solid #cfc1ab;
		color: #fff;
	}
	.btn_bg-color02{
		background: #fff;
	}
	.cart-btn:hover .btn .btn-color02 {
		color: #cfc1ab !important;
	}

	/*f-banner*/
	.f-banner{
		width: 100%;
		max-width: 600px;
		margin: 0 auto 3% auto;
	}
	.f-banner-list{
		width: 100%;
		margin: 0 auto;
	}
	.f-banner-list li{
		width: 100%;
		background: #fff;
		border: 1px solid #b4b5b6;
		margin: 0 0 3% 0;
	}
	.f-banner-list li a{
		width: 100%;
		display: block;
		transition: .3s;
	}
	.f-banner-list li a:hover{
		transition: .3s;
	}
	.f-banner-list li .txt{
		width: 100%;
		font-size: 12px;
		letter-spacing: 2px;
		line-height: 2em;
		text-align: center;
		margin: 2% 0 0 0;
	}
	
	/*f-banner02*/
	.f-banner02{
		width: 100%;
		max-width: 1200px;
		margin: 0 auto 5% auto;
		padding: 0 0 0 0;
	}
	.f-banner02-list{
		width: 100%;
		max-width: 600px;
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
	}
	.f-banner02-list li{
		width: 47%;
		background: #fff;
		border: 1px solid #b4b5b6;
	}
	.f-banner02-list li a{
		width: 100%;
		display: block;
		transition: .3s;
	}
	.f-banner02-list li a:hover{
		transition: .3s;
	}

	/*footer*/
	.footer {
		color: #000;
		letter-spacing: 0.3em;
		padding: 0 0 2% 0;
		position: relative;
		text-align: center;
	}
	.footer .insta{
		display: block;
		width: 450px;
		border: 1px solid #eee;
		margin: 0 auto 3% auto;
		transition: .3s;
	}
	.footer .insta:hover{
		border: 1px solid #000;
		transition: .3s;
	}
	.footer_sns {
		margin: 26px 0 0;
	}
	.footer_snsNode {
		display: inline-block;
		margin: 0 10px;
		width: 30px;
	}
	.f-ow{
		width: 120px;
		margin: 25px auto 0 auto;
	}
	.footer_copyright {
		font-family: "Helvetica",serif;
		font-size: 10px;
		letter-spacing: 0.02em;
		margin: 34px 0 0;
	}
	.in-btn{
		width: 40px;
		margin: 0 auto 1% auto;
		display: block;
		opacity: 1;
	}

	#pagetop{
		position: fixed;
		right: 15px;
		bottom: 15px;
		width: 50px;
		height: 50px;
		display: block;
		z-index: 99;
	}
	#pagetop .btn-loading {
		display: inline-flex;
		text-decoration: none;
		font-weight: 700;
		color: #111;
		width: 100%;
		height: 100%;
		position: relative;
		opacity: 1 !important;
		transition: all 0.3s;
		background-color: #CCC;
		border-radius: 100%;
		transition: color 0.2s;
		overflow: hidden;
	}
	#pagetop .btn-loading01:before,
	#pagetop .btn-loading01:after {
		content: "";
		display: block;
		position: absolute;
		width: 50%;
		height: 0;
		background-color: #af9f8e;
		pointer-events: none;
	}
	#pagetop .btn-loading:before {
		bottom: 0;
		left: 0;
	}
	#pagetop .btn-loading:after {
		top: 0;
		right: 0;
	}
	#pagetop:hover .btn-loading {
		color: #65A04D;
	}
	#pagetop:hover .btn-loading:before,
	#pagetop:hover .btn-loading:after {
		height: 100%;
	}
	#pagetop:hover .btn-loading:before {
		transition: height 0.1s 0.1s linear;
	}
	#pagetop:hover .btn-loading:after {
		transition: height 0.1s linear;
	}
	#pagetop .btn-loading span {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: calc(100% - 1px);
		height: calc(100% - 1px);
		background-color: #FFF;
		border-radius: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		z-index: 99;
	}
	#pagetop .btn-loading span img{
		width: 15px;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	@keyframes pagetop-slide {
		0%   { transform: translate(-50%, -50%); }
		35%  { transform: translate(-50%, -200%); }
		36%  { transform: translate(-50%,  200%); }
		100% { transform: translate(-50%, -50%); }
	}
	#pagetop:hover .btn-loading span img {
		animation: pagetop-slide 0.6s ease forwards;
	}

	/* animation auto start */
	.fade0, .fade01-1, .fade01-2, .fade01-3, .fade01-4, .fade01-5,
	.fade02-1, .fade02-2, .fade02-3, .fade02-4, .fade02-5, .fade02-6{
		-webkit-animation-play-state: running;
		animation-play-state: running;
	}

}
/* ノート ------------------------------------------------------*/
@media screen and (min-width: 1025px) and (max-width: 1280px) {
	.sp-on{
		display: none !important;
	}

	/* bg scroll layer */
	#bg-wrapper{
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: -1;
	}
	.bg-layer{
		position: absolute;
		inset: 0;
		opacity: 0;
		transition: opacity 1.8s ease;
		background-size: cover;
		background-position: center;
	}
	#bg-white{
		background: #ffffff;
		opacity: 1;
	}
	#bg-mv{
		background-image: url('../img/mv.jpg');
		background-position: top center;
	}
	#bg-read{
		background-image: url('../img/read.jpg');
	}
	#bg-door{
		background-image: url('../img/door.jpg');
	}

	header{
		width: 100%;
		height: 100vh;
		overflow: hidden;
		position: relative;
		background: transparent;
	}
	.mv-logo{
		width: 5%;
		position: fixed;
		top: 2%;
		right: 2%;
		z-index: 99;
		opacity: 1;
		transition: opacity 0.7s ease;
	}
	.mv-logo.is-hidden{
		animation: none;
		opacity: 0;
		pointer-events: none;
	}
	.mv-title-box{
		width: 35%;
		position: fixed;
		top: 56%;
		left: 11%;
		transform: translateY(-56%);
		opacity: 1;
		transition: opacity 0.7s ease;
	}
	.mv-title-box.is-hidden{
		opacity: 0;
		pointer-events: none;
	}
	.mv-title01{
		width: 100%;
		margin: 0 0 18% 0;
	}
	.mv-title01 li:nth-child(1){
		width: 100%;
		position: relative;
		line-height: 0;
		margin: 0 0 3% 0;
	}
	.mv-title01 li:nth-child(2){
		width: 100%;
		position: relative;
		line-height: 0;
	}
	.mv-title02{
		width: 100%;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.mv-title02 li:nth-child(1){
		width: 20%;
		height: 1px;
		background: #008497;
		position: relative;
		line-height: 0;
	}
	.mv-title02 li:nth-child(2){
		width: 76%;
		position: relative;
		line-height: 0;
	}

	/* read */
	.read{
		width: 100%;
		height: 100vh;
		margin: 0 auto;
		position: relative;
		background: transparent;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.read .txt span.tl{
		display: block;
		opacity: 0;
		filter: blur(10px);
		transition: opacity 1s ease, filter 1s ease;
	}
	.read .txt span.tl.active{
		opacity: 1;
		filter: blur(0);
	}
	.read .txt{
		font-size: min(13px + 0.4vw, 20px);
		line-height: 4em;
		letter-spacing: .4em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		text-align: center;
		color: #008497;
	}
	.read .logo{
		width: 15%;
		position: absolute;
		right: 5%;
		bottom: 10%;
	}

	/* door */
	.door{
		width: 100%;
		margin: 0 auto;
		position: relative;
		background: transparent;
	}
	.door-in{
		width: 100%;
		padding: 10% 0;
	}
	.door-txt{
		width: 70%;
		margin: 0 auto 5% auto;
		display: flex;
		justify-content: space-between;
	}
	.door-txt li:nth-child(1){
		width: 40%;
	}
	.door-txt li:nth-child(2){
		width: 50%;
		padding: 1% 0 0 0;
	}
	.door-txt li .title{
		font-size: 2em;
		line-height: 2em;
		letter-spacing: .4em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		color: #d8d8d8;
		position: relative;
		white-space: nowrap;
	}
	.door-txt li .title span{
		color: #231815;
		position: absolute;
		top: 0;
		left: 0;
		white-space: nowrap;
	}
	.door-txt li .txt{
		font-size: 1em;
		line-height: 2.8em;
		letter-spacing: .4em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		color: #d8d8d8;
		position: relative;
		white-space: nowrap;
	}
	.door-txt li .txt span{
		color: #231815;
		position: absolute;
		top: 0;
		left: 0;
	}
	.door-txt li .en{
		font-size: 72px;
		line-height: 1;
		letter-spacing: .1em;
		font-family: "garamond-premier-pro-display", serif;
		font-weight: 300;
		font-style: normal;
		white-space: nowrap;
		margin: 15% 0 0 0;
		color: #d8d8d8;
		position: relative;
	}
	.door-txt li .en .en01{
		color: #c07db7;
		position: absolute;
		top: 0;
		left: 0;
	}
	.door-txt li .en .en02{
		color: #008497;
		position: absolute;
		top: 0;
		left: 0;
	}
	.slick-box{
		width: 100%;
		overflow: hidden;
	}
	.slick-img{
		display: block;
		border-radius: 20px;
		overflow: hidden;
	}
	.slick-img img{
		transform: scale(1);
		transition: .3s;
	}
	.slick-img:hover img{
		transform: scale(1.05);
		transition: .3s;
	}
	.slick-box .slick-slide{
		padding: 0 5px;
		box-sizing: border-box;
	}

	/* wrap */
	.wrap{
		width: 100%;
		position: relative;
	}
	.bg01{
		position: absolute;
		top: 7%;
		right: 0;
		width: 90%;
		z-index: -1;
		overflow: hidden;
		opacity: .05;
	}
	.bg01::before,
	.bg01::after{
		content: '';
		position: absolute;
		left: 0;
		width: 100%;
		height: 30%;
		z-index: 1;
		pointer-events: none;
	}
	.bg01::before{
		top: 0;
		background: linear-gradient(to bottom, #fff, transparent);
	}
	.bg01 video{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.bg02{
		position: absolute;
		bottom: 10%;
		left: 0;
		width: 100%;
		z-index: -1;
		overflow: hidden;
		opacity: .1;
	}
	.bg02::before,
	.bg02::after{
		content: '';
		position: absolute;
		left: 0;
		width: 100%;
		height: 15%;
		z-index: 1;
		pointer-events: none;
	}
	.bg02::before{
		top: 0;
		background: linear-gradient(to bottom, #fff, transparent);
	}
	.bg02::after{
		bottom: 0;
		background: linear-gradient(to top, #fff, transparent);
	}
	.bg02 video{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.bg03{
		position: absolute;
		top: 7%;
		right: 0;
		width: 90%;
		z-index: -1;
		overflow: hidden;
		opacity: .1;
	}
	.bg03::before,
	.bg03::after{
		content: '';
		position: absolute;
		left: 0;
		width: 100%;
		height: 15%;
		z-index: 1;
		pointer-events: none;
	}
	.bg03::before{
		top: 0;
		background: linear-gradient(to bottom, #fff, transparent);
	}
	.bg03 video{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.bg04{
		position: absolute;
		bottom: 10%;
		left: 0;
		width: 100%;
		z-index: -1;
		overflow: hidden;
		opacity: .1;
	}
	.bg04::before,
	.bg04::after{
		content: '';
		position: absolute;
		left: 0;
		width: 100%;
		height: 15%;
		z-index: 1;
		pointer-events: none;
	}
	.bg04::before{
		top: 0;
		background: linear-gradient(to bottom, #fff, transparent);
	}
	.bg04::after{
		bottom: 0;
		background: linear-gradient(to top, #fff, transparent);
	}
	.bg04 video{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	/* item */
	.rever{
		flex-direction: row-reverse;
	}
	.item{
		width: 100%;
		margin: 0 auto 7% auto;
		overflow: hidden;
		display: flex;
		justify-content: flex-start;
	}
	.item-n{
		width: 85% !important;
	}
	.item .img{
		width: 50%;
		overflow: hidden;
		opacity: 0;
		transform: translateY(40px);
		transition: opacity 0.9s ease, transform 0.9s ease;
	}
	.item .img.active{
		opacity: 1;
		transform: translateY(0);
	}
	.item .data{
		width: 50%;
		overflow: hidden;
	}
	.item .data01{
		box-sizing: border-box;
		padding: 0 7% 0 7%;
	}
	.item .data-n{
		box-sizing: border-box;
		padding: 0 5% 0 5%;
	}
	.item .data .num{
		width: max-content;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		margin: 0 0 5% 0;
	}
	.item .data .num li:nth-child(1){
		width: 125px;
		position: relative;
	}
	.item .data .num li:nth-child(1) span{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.item .data .num li:nth-child(2){
		font-size: 22px;
		line-height: 2em;
		letter-spacing: .2em;
		font-family: "snell-roundhand-lt-std", sans-serif;
		font-weight: 400;
		font-style: normal;
		position: relative;
		top: 12px;
		left: -10%;
	}
	.item .data .title{
		font-size: 1.5em;
		line-height: 2em;
		letter-spacing: .2em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		white-space: nowrap;
		margin: 0 0 7% 0;
	}
	.item .data .txt{
		font-size: .9em;
		line-height: 2.5em;
		letter-spacing: .2em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		margin: 0 0 10% 0;
	}
	.item .data .link-box{
		width: 80%;
	}
	.item .data .link-box02{
		width: 90% !important;
	}

	/* staff */
	.staff > img{
		width: 100%;
		display: block;
		will-change: transform;
	}
	.staff{
		width: 100%;
		overflow: hidden;
		margin: 0 auto 7% auto;
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.staff-box{
		width: 60%;
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin: 0 auto;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.staff-box .logo{
		width: 30%;
	}
	.staff-box .staff-list{
		width: 45%;
		font-family: "garamond-premier-pro-display", serif;
		font-weight: 300;
		font-style: normal;
	}
	.staff-box .staff-list li{
		width: max-content;
		display: flex;
		justify-content: space-between;
		margin: 0 0 5% 0;
	}
	.staff-box .staff-list li:last-child{
		margin: 0;
	}
	.staff-box .staff-list li .position{
		color: #fff;
		width: 100px;
		font-size: clamp(9px, 1vw, 13px);
		line-height: 1;
		letter-spacing: .1em;
	}
	.staff-box .staff-list li .name{
		color: #fff;
		font-size: clamp(9px, 1vw, 13px);
		line-height: 1;
		letter-spacing: .1em;
	}

	/* pagetop */
	#pagetop{
		position: fixed;
		right: 15px;
		bottom: 15px;
		width: 50px;
		height: 50px;
		display: block;
		z-index: 99;
	}
	#pagetop .btn-loading{
		display: inline-flex;
		font-weight: 700;
		color: #111;
		width: 100%;
		height: 100%;
		position: relative;
		opacity: 1 !important;
		background-color: #CCC;
		border-radius: 100%;
		transition: color 0.2s;
		overflow: hidden;
	}
	#pagetop .btn-loading01:before,
	#pagetop .btn-loading01:after{
		content: "";
		display: block;
		position: absolute;
		width: 50%;
		height: 0;
		background-color: #af9f8e;
		pointer-events: none;
	}
	#pagetop .btn-loading:before{
		bottom: 0;
		left: 0;
	}
	#pagetop .btn-loading:after{
		top: 0;
		right: 0;
	}
	#pagetop:hover .btn-loading:before,
	#pagetop:hover .btn-loading:after{
		height: 100%;
	}
	#pagetop:hover .btn-loading:before{
		transition: height 0.1s 0.1s linear;
	}
	#pagetop:hover .btn-loading:after{
		transition: height 0.1s linear;
	}
	#pagetop .btn-loading span{
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: calc(100% - 1px);
		height: calc(100% - 1px);
		background-color: #FFF;
		border-radius: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		z-index: 99;
	}
	#pagetop .btn-loading span img{
		width: 15px;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	@keyframes pagetop-slide{
		0%   { transform: translate(-50%, -50%); }
		35%  { transform: translate(-50%, -200%); }
		36%  { transform: translate(-50%,  200%); }
		100% { transform: translate(-50%, -50%); }
	}
	#pagetop:hover .btn-loading span img{
		animation: pagetop-slide 0.6s ease forwards;
	}

	/* cart-btn */
	.l-icon::before{
		content: url("../img/l-size.svg");
		width: 15px;
		height: 15px;
		display: inline-block;
		background-size: 13px 13px;
		position: relative;
		top: 0px;
		margin: 0 10px 0 0;
		line-height: 0;
		border: 1px solid #000;
		border-radius: 3px;
	}
	.s-icon::before{
		content: url("../img/s-size.svg");
		width: 15px;
		height: 15px;
		display: inline-block;
		background-size: 13px 13px;
		position: relative;
		top: 0px;
		margin: 0 10px 0 0;
		line-height: 0;
		border: 1px solid #000;
		border-radius: 3px;
	}
	.cart-btn {
		width: 100%;
		text-decoration: none;
		color: #000;
		transition: 0.3s;
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin: 0 0 1% 0;
		font-family: "yu-mincho-pr6n", sans-serif;
		position: relative;
	}
	.cart-title {
		width: max-content;
		font-size: .9em;
		letter-spacing: .1em;
		position: absolute;
		line-height: 1.5em;
		white-space: nowrap;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
	}
	.cart-yen {
		font-size: 16px;
		letter-spacing: 0;
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: flex-end;
		white-space: nowrap;
		font-family: "yu-mincho-pr6n", sans-serif;
		padding: 0 10px 0 0;
	}
	.cart-yen .yen-icon {
		margin: 0 2px 0 0;
	}
	.cart-yen .tax {
		font-size: 11px;
		letter-spacing: 0;
		margin: 0 0 0 5px;
		position: relative;
		top: 1px;
	}
	.link-line01 {
		width: 100%;
		height: 1px;
		background: #5b4942;
		margin: 20px 0;
		opacity: .5;
	}
	.cart-btn .btn {
		width: 120px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		padding: 7px 0;
		position: relative;
		overflow: hidden;
	}
	.cart-btn .btn span {
		font-size: .8em;
		line-height: 1;
		letter-spacing: .05em;
		text-align: center;
		font-family: "futura-pt", sans-serif;
		font-weight: 400;
		font-style: normal;
		position: relative;
		z-index: 10;
		transition: .5s;
	}
	.cart-btn:hover .btn span {
		color: #fff;
	}
	.cart-btn .btn .btn-bg {
		width: 150%;
		height: 100%;
		position: absolute;
		display: block;
		top: 0;
		left: -140%;
		clip-path: polygon(0 0, 100% 0, calc(100% - 30px) 100%, 0 100%);
		transition: .5s;
	}
	.cart-btn:hover .btn .btn-bg {
		left: 0%;
	}

	/* 00 */
	.cart-btn .btn00 {
		background: #fff;
		border: 1px solid #969696;
		color: #969696;
	}
	.btn_bg-color00{
		background: #969696;
	}
	.cart-btn:hover .btn .btn-color00 {
		color: #fff !important;
	}

	/* 01 */
	.cart-btn .btn01 {
		background: #cfc1ab;
		border: 1px solid #cfc1ab;
		color: #fff;
	}
	.btn_bg-color01{
		background: #fff;
	}
	.cart-btn:hover .btn .btn-color01 {
		color: #cfc1ab !important;
	}

	/* 02 */
	.cart-btn .btn02 {
		background: #cfc1ab;
		border: 1px solid #cfc1ab;
		color: #fff;
	}
	.btn_bg-color02{
		background: #fff;
	}
	.cart-btn:hover .btn .btn-color02 {
		color: #cfc1ab !important;
	}

	/*f-banner*/
	.f-banner{
		width: 40%;
		margin: 0 auto 3% auto;
	}
	.f-banner-list{
		width: 100%;
		margin: 0 auto;
	}
	.f-banner-list li{
		width: 100%;
		background: #fff;
		border: 1px solid #b4b5b6;
		margin: 0 0 3% 0;
	}
	.f-banner-list li a{
		width: 100%;
		display: block;
		transition: .3s;
	}
	.f-banner-list li a:hover{
		transition: .3s;
	}
	.f-banner-list li .txt{
		width: 100%;
		font-size: 12px;
		letter-spacing: 2px;
		line-height: 2em;
		text-align: center;
		margin: 2% 0 0 0;
	}
	
	/*f-banner02*/
	.f-banner02{
		width: 40%;
		margin: 0 auto 5% auto;
		padding: 0 0 0 0;
	}
	.f-banner02-list{
		width: 100%;
		max-width: 600px;
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
	}
	.f-banner02-list li{
		width: 47%;
		background: #fff;
		border: 1px solid #b4b5b6;
	}
	.f-banner02-list li a{
		width: 100%;
		display: block;
		transition: .3s;
	}
	.f-banner02-list li a:hover{
		transition: .3s;
	}

	/*footer*/
	.footer {
		color: #000;
		letter-spacing: 0.3em;
		padding: 0 0 2% 0;
		position: relative;
		text-align: center;
	}
	.footer .insta{
		display: block;
		width: 450px;
		border: 1px solid #eee;
		margin: 0 auto 3% auto;
		transition: .3s;
	}
	.footer .insta:hover{
		border: 1px solid #000;
		transition: .3s;
	}
	.footer_sns {
		margin: 26px 0 0;
	}
	.footer_snsNode {
		display: inline-block;
		margin: 0 10px;
		width: 30px;
	}
	.f-ow{
		width: 120px;
		margin: 25px auto 0 auto;
	}
	.footer_copyright {
		font-family: "Helvetica",serif;
		font-size: 10px;
		letter-spacing: 0.02em;
		margin: 34px 0 0;
	}
	.in-btn{
		width: 40px;
		margin: 0 auto 1% auto;
		display: block;
		opacity: 1;
	}

	/* animation auto start */
	.fade0, .fade01-1, .fade01-2, .fade01-3, .fade01-4, .fade01-5,
	.fade02-1, .fade02-2, .fade02-3, .fade02-4, .fade02-5, .fade02-6{
		-webkit-animation-play-state: running;
		animation-play-state: running;
	}

}
/* タブレット ------------------------------------------------------*/
@media screen and (min-width: 768px)  and (max-width: 1024px) {
	.sp-on{
		display: none !important;
	}

	/* bg scroll layer */
	#bg-wrapper{
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: -1;
	}
	.bg-layer{
		position: absolute;
		inset: 0;
		opacity: 0;
		transition: opacity 1.8s ease;
		background-size: cover;
		background-position: center;
	}
	#bg-white{
		background: #ffffff;
		opacity: 1;
	}
	#bg-mv{
		background-image: url('../img/mv.jpg');
		background-position: top 0px right 33%;
	}
	#bg-read{
		background-image: url('../img/read.jpg');
	}
	#bg-door{
		background-image: url('../img/door.jpg');
	}

	header{
		width: 100%;
		height: 100vh;
		overflow: hidden;
		position: relative;
		background: transparent;
	}
	.mv-logo{
		width: 10%;
		position: fixed;
		top: 2%;
		right: 2%;
		z-index: 99;
		opacity: 1;
		transition: opacity 0.7s ease;
	}
	.mv-logo.is-hidden{
		animation: none;
		opacity: 0;
		pointer-events: none;
	}
	.mv-title-box{
		width: 35%;
		position: fixed;
		top: 55%;
		left: 5%;
		transform: translateY(-55%);
		opacity: 1;
		transition: opacity 0.7s ease;
	}
	.mv-title-box.is-hidden{
		opacity: 0;
		pointer-events: none;
	}
	.mv-title01{
		width: 100%;
		margin: 0 0 20% 0;
	}
	.mv-title01 li:nth-child(1){
		width: 100%;
		position: relative;
		line-height: 0;
	}
	.mv-title01 li:nth-child(2){
		width: 100%;
		position: relative;
		line-height: 0;
	}
	.mv-title02{
		width: 100%;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.mv-title02 li:nth-child(1){
		width: 20%;
		height: 1px;
		background: #008497;
		position: relative;
		line-height: 0;
	}
	.mv-title02 li:nth-child(2){
		width: 76%;
		position: relative;
		line-height: 0;
	}

	/* read */
	.read{
		width: 100%;
		height: 100vh;
		margin: 0 auto;
		position: relative;
		background: transparent;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.read .txt span.tl{
		display: block;
		opacity: 0;
		filter: blur(10px);
		transition: opacity 1s ease, filter 1s ease;
	}
	.read .txt span.tl.active{
		opacity: 1;
		filter: blur(0);
	}
	.read .txt{
		font-size: 1.4em;
		line-height: 3em;
		letter-spacing: .3em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		text-align: center;
		color: #008497;
	}
	.read .logo{
		width: 25%;
		position: absolute;
		right: 5%;
		bottom: 10%;
	}

	/* door */
	.door{
		width: 100%;
		margin: 0 auto;
		position: relative;
		background: transparent;
	}
	.door-in{
		width: 100%;
		padding: 10% 0;
	}
	.door-txt{
		width: 85%;
		margin: 0 auto 5% auto;
		display: flex;
		justify-content: space-between;
	}
	.door-txt li:nth-child(1){
		width: 40%;
	}
	.door-txt li:nth-child(2){
		width: 50%;
		padding: 1% 0 0 0;
	}
	.door-txt li .title{
		font-size: 2em;
		line-height: 2em;
		letter-spacing: .3em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		color: #d8d8d8;
		position: relative;
		white-space: nowrap;
	}
	.door-txt li .title span{
		color: #231815;
		position: absolute;
		top: 0;
		left: 0;
		white-space: nowrap;
	}
	.door-txt li .txt{
		font-size: 1em;
		line-height: 2em;
		letter-spacing: .3em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		color: #d8d8d8;
		position: relative;
		white-space: nowrap;
	}
	.door-txt li .txt span{
		color: #231815;
		position: absolute;
		top: 0;
		left: 0;
	}
	.door-txt li .en{
		font-size: 4em;
		line-height: 1;
		letter-spacing: .1em;
		font-family: "garamond-premier-pro-display", serif;
		font-weight: 300;
		font-style: normal;
		white-space: nowrap;
		margin: 15% 0 0 0;
		color: #d8d8d8;
		position: relative;
	}
	.door-txt li .en .en01{
		color: #c07db7;
		position: absolute;
		top: 0;
		left: 0;
	}
	.door-txt li .en .en02{
		color: #008497;
		position: absolute;
		top: 0;
		left: 0;
	}
	.slick-box{
		width: 100%;
		overflow: hidden;
	}
	.slick-img{
		display: block;
		border-radius: 20px;
		overflow: hidden;
	}
	.slick-img img{
		transform: scale(1);
		transition: .3s;
	}
	.slick-img:hover img{
		transform: scale(1.05);
		transition: .3s;
	}
	.slick-box .slick-slide{
		padding: 0 5px;
		box-sizing: border-box;
	}

	/* wrap */
	.wrap{
		width: 100%;
		position: relative;
	}
	.bg01{
		position: absolute;
		top: 7%;
		right: 0;
		width: 90%;
		z-index: -1;
		overflow: hidden;
		opacity: .1;
	}
	.bg01::before,
	.bg01::after{
		content: '';
		position: absolute;
		left: 0;
		width: 100%;
		height: 60%;
		z-index: 1;
		pointer-events: none;
	}
	.bg01::before{
		top: 0;
		background: linear-gradient(to bottom, #fff, transparent);
	}
	.bg01 video{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.bg02{
		position: absolute;
		bottom: 10%;
		left: 0;
		width: 100%;
		z-index: -1;
		overflow: hidden;
		opacity: .1;
	}
	.bg02::before,
	.bg02::after{
		content: '';
		position: absolute;
		left: 0;
		width: 100%;
		height: 15%;
		z-index: 1;
		pointer-events: none;
	}
	.bg02::before{
		top: 0;
		background: linear-gradient(to bottom, #fff, transparent);
	}
	.bg02::after{
		bottom: 0;
		background: linear-gradient(to top, #fff, transparent);
	}
	.bg02 video{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.bg03{
		position: absolute;
		top: 7%;
		right: 0;
		width: 90%;
		z-index: -1;
		overflow: hidden;
		opacity: .1;
	}
	.bg03::before,
	.bg03::after{
		content: '';
		position: absolute;
		left: 0;
		width: 100%;
		height: 15%;
		z-index: 1;
		pointer-events: none;
	}
	.bg03::before{
		top: 0;
		background: linear-gradient(to bottom, #fff, transparent);
	}
	.bg03 video{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.bg04{
		position: absolute;
		bottom: 10%;
		left: 0;
		width: 100%;
		z-index: -1;
		overflow: hidden;
		opacity: .1;
	}
	.bg04::before,
	.bg04::after{
		content: '';
		position: absolute;
		left: 0;
		width: 100%;
		height: 15%;
		z-index: 1;
		pointer-events: none;
	}
	.bg04::before{
		top: 0;
		background: linear-gradient(to bottom, #fff, transparent);
	}
	.bg04::after{
		bottom: 0;
		background: linear-gradient(to top, #fff, transparent);
	}
	.bg04 video{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	/* item */
	.rever{
		flex-direction: row-reverse;
	}
	.item{
		width: 100%;
		margin: 0 auto 7% auto;
		overflow: hidden;
		display: flex;
		justify-content: flex-start;
	}
	.item-n{
		width: 100% !important;
	}
	.item .img{
		width: 50%;
		overflow: hidden;
		opacity: 0;
		transform: translateY(40px);
		transition: opacity 0.9s ease, transform 0.9s ease;
	}
	.item .img.active{
		opacity: 1;
		transform: translateY(0);
	}
	.item .data{
		width: 50%;
		overflow: hidden;
	}
	.item .data01{
		box-sizing: border-box;
		padding: 0 5% 0 5%;
	}
	.item .data-n{
		box-sizing: border-box;
		padding: 0 5% 0 5%;
	}
	.item .data .num{
		width: max-content;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		margin: 0 0 5% 0;
	}
	.item .data .num li:nth-child(1){
		width: 120px;
		position: relative;
	}
	.item .data .num li:nth-child(1) span{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.item .data .num li:nth-child(2){
		font-size: 22px;
		line-height: 2em;
		letter-spacing: .2em;
		font-family: "snell-roundhand-lt-std", sans-serif;
		font-weight: 400;
		font-style: normal;
		position: relative;
		top: 12px;
		left: -10%;
	}
	.item .data .title{
		font-size: 1.4em;
		line-height: 2em;
		letter-spacing: .2em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		white-space: nowrap;
		margin: 0 0 4% 0;
	}
	.item .data .txt{
		font-size: .9em;
		line-height: 2.5em;
		letter-spacing: .2em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		margin: 0 0 10% 0;
		text-align: justify;
	}
	.item .data .txt br{
		display: none;
	}
	.item .data .link-box{
		width: 100%;
	}
	.item .data .link-box02{
		width: 100% !important;
	}

	/* staff */
	.staff > img{
		width: 100%;
		display: block;
		will-change: transform;
	}
	.staff{
		width: 100%;
		overflow: hidden;
		margin: 0 auto 7% auto;
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.staff-box{
		width: 80%;
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin: 0 auto;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.staff-box .logo{
		width: 30%;
	}
	.staff-box .staff-list{
		width: 45%;
		font-family: "garamond-premier-pro-display", serif;
		font-weight: 300;
		font-style: normal;
	}
	.staff-box .staff-list li{
		width: max-content;
		display: flex;
		justify-content: space-between;
		margin: 0 0 5% 0;
	}
	.staff-box .staff-list li:last-child{
		margin: 0;
	}
	.staff-box .staff-list li .position{
		color: #fff;
		width: 100px;
		font-size: clamp(9px, 1vw, 13px);
		line-height: 1;
		letter-spacing: .1em;
	}
	.staff-box .staff-list li .name{
		color: #fff;
		font-size: clamp(9px, 1vw, 13px);
		line-height: 1;
		letter-spacing: .1em;
	}

	/* pagetop */
	#pagetop{
		position: fixed;
		right: 15px;
		bottom: 15px;
		width: 50px;
		height: 50px;
		display: block;
		z-index: 99;
	}
	#pagetop .btn-loading{
		display: inline-flex;
		font-weight: 700;
		color: #111;
		width: 100%;
		height: 100%;
		position: relative;
		opacity: 1 !important;
		background-color: #CCC;
		border-radius: 100%;
		transition: color 0.2s;
		overflow: hidden;
	}
	#pagetop .btn-loading01:before,
	#pagetop .btn-loading01:after{
		content: "";
		display: block;
		position: absolute;
		width: 50%;
		height: 0;
		background-color: #af9f8e;
		pointer-events: none;
	}
	#pagetop .btn-loading:before{
		bottom: 0;
		left: 0;
	}
	#pagetop .btn-loading:after{
		top: 0;
		right: 0;
	}
	#pagetop:hover .btn-loading:before,
	#pagetop:hover .btn-loading:after{
		height: 100%;
	}
	#pagetop:hover .btn-loading:before{
		transition: height 0.1s 0.1s linear;
	}
	#pagetop:hover .btn-loading:after{
		transition: height 0.1s linear;
	}
	#pagetop .btn-loading span{
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: calc(100% - 1px);
		height: calc(100% - 1px);
		background-color: #FFF;
		border-radius: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		z-index: 99;
	}
	#pagetop .btn-loading span img{
		width: 15px;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	@keyframes pagetop-slide{
		0%   { transform: translate(-50%, -50%); }
		35%  { transform: translate(-50%, -200%); }
		36%  { transform: translate(-50%,  200%); }
		100% { transform: translate(-50%, -50%); }
	}
	#pagetop:hover .btn-loading span img{
		animation: pagetop-slide 0.6s ease forwards;
	}






	/* cart-btn */
	.l-icon::before{
		content: url("../img/l-size.svg");
		width: 13px;
		height: 13px;
		display: inline-block;
		background-size: 11px 11px;
		position: relative;
		top: 0px;
		margin: 0 8px 0 0;
		line-height: 0;
		border: 1px solid #000;
		border-radius: 3px;
	}
	.s-icon::before{
		content: url("../img/s-size.svg");
		width: 13px;
		height: 13px;
		display: inline-block;
		background-size: 11px 11px;
		position: relative;
		top: 0px;
		margin: 0 8px 0 0;
		line-height: 0;
		border: 1px solid #000;
		border-radius: 3px;
	}
	.cart-btn {
		width: 100%;
		text-decoration: none;
		color: #000;
		transition: 0.3s;
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin: 0 0 1% 0;
		font-family: "yu-mincho-pr6n", sans-serif;
		position: relative;
	}
	.cart-title {
		width: max-content;
		font-size: .8em;
		letter-spacing: .1em;
		position: absolute;
		line-height: 1.5em;
		white-space: nowrap;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
	}
	.cart-yen {
		font-size: 16px;
		letter-spacing: 0;
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: flex-end;
		white-space: nowrap;
		font-family: "yu-mincho-pr6n", sans-serif;
		padding: 0 10px 0 0;
	}
	.cart-yen .yen-icon {
		margin: 0 2px 0 0;
	}
	.cart-yen .tax {
		font-size: 11px;
		letter-spacing: 0;
		margin: 0 0 0 5px;
		position: relative;
		top: 1px;
	}
	.link-line01 {
		width: 100%;
		height: 1px;
		background: #5b4942;
		margin: 15px 0;
		opacity: .5;
	}
	.cart-btn .btn {
		width: 120px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		padding: 7px 0;
		position: relative;
		overflow: hidden;
	}
	.cart-btn .btn span {
		font-size: .8em;
		line-height: 1;
		letter-spacing: .05em;
		text-align: center;
		font-family: "futura-pt", sans-serif;
		font-weight: 400;
		font-style: normal;
		position: relative;
		z-index: 10;
		transition: .5s;
	}
	.cart-btn:hover .btn span {
		color: #fff;
	}
	.cart-btn .btn .btn-bg {
		width: 150%;
		height: 100%;
		position: absolute;
		display: block;
		top: 0;
		left: -140%;
		clip-path: polygon(0 0, 100% 0, calc(100% - 30px) 100%, 0 100%);
		transition: .5s;
	}
	.cart-btn:hover .btn .btn-bg {
		left: 0%;
	}

	/* 00 */
	.cart-btn .btn00 {
		background: #fff;
		border: 1px solid #969696;
		color: #969696;
	}
	.btn_bg-color00{
		background: #969696;
	}
	.cart-btn:hover .btn .btn-color00 {
		color: #fff !important;
	}

	/* 01 */
	.cart-btn .btn01 {
		background: #cfc1ab;
		border: 1px solid #cfc1ab;
		color: #fff;
	}
	.btn_bg-color01{
		background: #fff;
	}
	.cart-btn:hover .btn .btn-color01 {
		color: #cfc1ab !important;
	}

	/* 02 */
	.cart-btn .btn02 {
		background: #cfc1ab;
		border: 1px solid #cfc1ab;
		color: #fff;
	}
	.btn_bg-color02{
		background: #fff;
	}
	.cart-btn:hover .btn .btn-color02 {
		color: #cfc1ab !important;
	}

	/*f-banner*/
	.f-banner{
		width: 100%;
		max-width: 600px;
		margin: 0 auto 5% auto;
	}
	.f-banner-list{
		width: 100%;
		margin: 0 auto;
	}
	.f-banner-list li{
		width: 100%;
		background: #fff;
		margin: 0 0 3% 0;
		border: 1px solid #b4b5b6;
	}
	.f-banner-list li a{
		width: 100%;
		display: block;
		transition: .3s;
	}
	.f-banner-list li a:hover{
		transition: .3s;
	}
	.f-banner-list li .txt{
		width: 100%;
		font-size: 12px;
		letter-spacing: 2px;
		line-height: 2em;
		text-align: center;
		margin: 2% 0 0 0;
	}
	
	/*f-banner02*/
	.f-banner02{
		width: 100%;
		max-width: 1200px;
		margin: 0 auto 5% auto;
		padding: 0 0 0 0;
	}
	.f-banner02-list{
		width: 100%;
		max-width: 600px;
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
	}
	.f-banner02-list li{
		width: 47%;
		background: #fff;
		border: 1px solid #b4b5b6;
	}
	.f-banner02-list li a{
		width: 100%;
		display: block;
		transition: .3s;
	}
	.f-banner02-list li a:hover{
		transition: .3s;
	}

	/*footer*/
	.footer {
		color: #000;
		letter-spacing: 0.3em;
		padding: 0 0 2% 0;
		position: relative;
		text-align: center;
	}
	.footer .insta{
		display: block;
		width: 450px;
		border: 1px solid #eee;
		margin: 0 auto 3% auto;
		transition: .3s;
	}
	.footer .insta:hover{
		border: 1px solid #000;
		transition: .3s;
	}
	.footer_sns {
		margin: 26px 0 0;
	}
	.footer_snsNode {
		display: inline-block;
		margin: 0 10px;
		width: 30px;
	}
	.f-ow{
		width: 120px;
		margin: 25px auto 0 auto;
	}
	.footer_copyright {
		font-family: "Helvetica",serif;
		font-size: 10px;
		letter-spacing: 0.02em;
		margin: 34px 0 0;
	}
	.in-btn{
		width: 40px;
		margin: 0 auto 1% auto;
		display: block;
		opacity: 1;
	}

	/* animation auto start */
	.fade0, .fade01-1, .fade01-2, .fade01-3, .fade01-4, .fade01-5,
	.fade02-1, .fade02-2, .fade02-3, .fade02-4, .fade02-5, .fade02-6{
		-webkit-animation-play-state: running;
		animation-play-state: running;
	}

}
/* スマホ ------------------------------------------------------*/
@media screen and (max-width: 767px) {
	.pc-on{
		display: none !important;
	}

	/* loading */
	.load{
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		background: url(../img/load-sp.jpg) no-repeat center center;
		background-size: cover;
		z-index: 9999;
		opacity: 1;
	}
	@keyframes load-logo-in{
		0%{
			opacity: 0;
			filter: blur(20px);
			transform: translate(-50%, -50%) scale(1.05);
		}
		60%{
			opacity: 1;
			filter: blur(2px);
			transform: translate(-50%, -50%) scale(1.02);
		}
		100%{
			opacity: 1;
			filter: blur(0);
			transform: translate(-50%, -50%) scale(1);
		}
	}
	.load .logo{
		width: 70%;
		margin: 0 auto;
		position: absolute;
		top: 47%;
		left: 50%;
		transform: translate(-47%, -50%);
		opacity: 0;
		animation: load-logo-in 2s ease forwards;
		animation-delay: 0.3s;
	}

	/* hamburger */
	#hamburger{
		position: fixed;
		top: 20px;
		right: 10px;
		width: 38px;
		height: 7px;
		background: none;
		border: none;
		cursor: pointer;
		z-index: 1000;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		padding: 0;
	}
	#hamburger span{
		display: block;
		width: 100%;
		height: 1px;
		background: #aca082;
		transition: transform 0.3s ease;
		transform-origin: center;
	}
	#hamburger.open span:nth-child(1){
		transform: translateY(3px) rotate(45deg);
		top: 5px;
		position: relative;
	}
	#hamburger.open span:nth-child(2){
		transform: translateY(-3px) rotate(-45deg);
		top: 5px;
		position: relative;
	}

	/* nav overlay */
	.nav{
		display: none;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: url(../img/sp-bg.jpg);
		background-size: cover;
		z-index: 999;
	}
	.sp-nav-box{
		width: 85%;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.sp-nav-list01{
		margin: 0 0 15% 0;
	}
	.sp-nav-list{
		width: 100%;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.sp-nav-list li:first-child{
		width: 100%;
		margin: 0 0 5% 0;
	}
	.sp-nav-list li{
		width: 23%;
		margin: 0 0 5% 0;
	}
	.sp-nav-list li a{
		overflow: hidden;
		border-radius: 10px;
		display: block;
	}
	.color01{
		color: #c07db7;
		font-size: 30px;
		letter-spacing: 0.1em;
		font-family: "garamond-premier-pro-display", serif;
		font-weight: 300;
		font-style: normal;
		text-decoration: none;
	}
	.color02{
		color: #008497;
		font-size: 30px;
		letter-spacing: 0.1em;
		font-family: "garamond-premier-pro-display", serif;
		font-weight: 300;
		font-style: normal;
		text-decoration: none;
	}

	/* bg scroll layer */
	#bg-wrapper{
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: -1;
	}
	.bg-layer{
		position: absolute;
		inset: 0;
		opacity: 0;
		transition: opacity 1.8s ease;
		background-size: cover;
		background-position: center;
	}
	#bg-white{
		background: #ffffff;
		opacity: 1;
	}
	#bg-mv{
		background-image: url('../img/mv-sp.jpg');
		background-position: top center;
	}
	#bg-read{
		background-image: url('../img/read.jpg');
	}
	#bg-door{
		background-image: url('../img/door.jpg');
	}

	header{
		width: 100%;
		height: 100vh;
		overflow: hidden;
		position: relative;
		background: transparent;
	}
	.mv-logo{
		width: 17%;
		position: fixed;
		top: 2%;
		right: 2%;
		z-index: 99;
		opacity: 1;
		transition: opacity 0.7s ease;
	}
	.mv-logo.is-hidden{
		animation: none;
		opacity: 0;
		pointer-events: none;
	}
	.mv-title-box{
		width: 73%;
		position: fixed;
		bottom: 15%;
		left: 0;
		right: 0;
		margin: 0 auto;
		opacity: 1;
		transition: opacity 0.7s ease;
	}
	.mv-title-box.is-hidden{
		opacity: 0;
		pointer-events: none;
	}
	.mv-title01{
		width: 100%;
		margin: 0 0 7% 0;
	}
	.mv-title01 li:nth-child(1){
		width: 100%;
		position: relative;
		line-height: 0;
	}
	.mv-title01 li:nth-child(2){
		width: 100%;
		position: relative;
		line-height: 0;
	}
	.mv-title02{
		width: 100%;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.mv-title02 li:nth-child(1){
		width: 20%;
		height: 1px;
		background: #008497;
		position: relative;
		line-height: 0;
	}
	.mv-title02 li:nth-child(2){
		width: 100%;
		position: relative;
		line-height: 0;
	}

	/* read */
	.read{
		width: 100%;
		height: 100vh;
		margin: 0 auto;
		position: relative;
		background: transparent;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.read .txt span.tl{
		display: block;
		opacity: 0;
		filter: blur(10px);
		transition: opacity 1s ease, filter 1s ease;
	}
	.read .txt span.tl.active{
		opacity: 1;
		filter: blur(0);
	}
	.read .txt{
		font-size: 1em;
		line-height: 3.5em;
		letter-spacing: .3em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		text-align: center;
		color: #008497;
	}
	.read .logo{
		width: 25%;
		position: absolute;
		right: 5%;
		bottom: 10%;
	}

	/* door */
	.door{
		width: 100%;
		margin: 0 auto 5% auto;
		position: relative;
		background: transparent;
	}
	.door-in{
		width: 100%;
		padding: 10% 0;
	}
	.door-txt{
		width: 85%;
		margin: 0 auto 7% auto;
	}
	.door-txt li:nth-child(1){
		width: 100%;
		margin: 0 0 5% 0;
	}
	.door-txt li:nth-child(2){
		width: 100%;
	}
	.door-txt li .title{
		font-size: 1.5em;
		line-height: 1.8em;
		letter-spacing: .25em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		color: #d8d8d8;
		position: relative;
		white-space: nowrap;
	}
	.door-txt li .title span{
		color: #231815;
		position: absolute;
		top: 0;
		left: 0;
		white-space: nowrap;
	}
	.door-txt li .txt{
		font-size: .9em;
		line-height: 2em;
		letter-spacing: .25em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		color: #d8d8d8;
		position: relative;
		white-space: nowrap;
	}
	.door-txt li .txt span{
		color: #231815;
		position: absolute;
		top: 0;
		left: 0;
	}
	.door-txt li .en{
		font-size: 3em;
		line-height: 1;
		letter-spacing: .1em;
		font-family: "garamond-premier-pro-display", serif;
		font-weight: 300;
		font-style: normal;
		white-space: nowrap;
		margin: 7% 0 0 0;
		color: #d8d8d8;
		position: relative;
	}
	.door-txt li .en .en01{
		color: #c07db7;
		position: absolute;
		top: 0;
		left: 0;
	}
	.door-txt li .en .en02{
		color: #008497;
		position: absolute;
		top: 0;
		left: 0;
	}
	.slick-box{
		width: 100%;
		overflow: hidden;
	}
	.slick-img{
		display: block;
		border-radius: 10px;
		overflow: hidden;
	}
	.slick-img img{
		transform: scale(1);
		transition: .3s;
	}
	.slick-img:hover img{
		transform: scale(1.05);
		transition: .3s;
	}
	.slick-box .slick-slide{
		padding: 0 5px;
		box-sizing: border-box;
	}

	/* wrap */
	.wrap{
		width: 100%;
		overflow: hidden;
		position: relative;
	}
	.bg01{
		position: absolute;
		top: 13%;
        right: 0;
        width: 160%;
		z-index: -1;
		overflow: hidden;
		opacity: .1;
	}
	.bg01::before,
	.bg01::after{
		content: '';
		position: absolute;
		left: 0;
		width: 100%;
		height: 60%;
		z-index: 1;
		pointer-events: none;
	}
	.bg01::before{
		top: 0;
		background: linear-gradient(to bottom, #fff, transparent);
	}
	.bg01 video{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.bg02{
		position: absolute;
        bottom: 16%;
        right: 0;
        width: 130%;
		z-index: -1;
		overflow: hidden;
		opacity: .1;
	}
	.bg02::before,
	.bg02::after{
		content: '';
		position: absolute;
		left: 0;
		width: 100%;
		height: 15%;
		z-index: 1;
		pointer-events: none;
	}
	.bg02::before{
		top: 0;
		background: linear-gradient(to bottom, #fff, transparent);
	}
	.bg02::after{
		bottom: 0;
		background: linear-gradient(to top, #fff, transparent);
	}
	.bg02 video{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.bg03{
		position: absolute;
		top: 22%;
        right: 0;
        width: 130%;
		z-index: -1;
		overflow: hidden;
		opacity: .1;
	}
	.bg03::before,
	.bg03::after{
		content: '';
		position: absolute;
		left: 0;
		width: 100%;
		height: 15%;
		z-index: 1;
		pointer-events: none;
	}
	.bg03::before{
		top: 0;
		background: linear-gradient(to bottom, #fff, transparent);
	}
	.bg03 video{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.bg04{
		position: absolute;
		bottom: 24%;
        right: 0;
        width: 130%;
		z-index: -1;
		overflow: hidden;
		opacity: .1;
	}
	.bg04::before,
	.bg04::after{
		content: '';
		position: absolute;
		left: 0;
		width: 100%;
		height: 15%;
		z-index: 1;
		pointer-events: none;
	}
	.bg04::before{
		top: 0;
		background: linear-gradient(to bottom, #fff, transparent);
	}
	.bg04::after{
		bottom: 0;
		background: linear-gradient(to top, #fff, transparent);
	}
	.bg04 video{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	/* item */
	.rever{
		flex-direction: row-reverse;
	}
	.item{
		width: 100%;
		margin: 0 auto 15% auto;
		overflow: hidden;
	}
	.item .img{
		width: 100%;
		overflow: hidden;
		opacity: 0;
		transform: translateY(40px);
		transition: opacity 0.9s ease, transform 0.9s ease;
		margin: 0 0 5% 0;
	}
	.item .img.active{
		opacity: 1;
		transform: translateY(0);
	}
	.item .data{
		width: 85%;
		margin: 0 auto;
	}
	.item .data .num{
		width: max-content;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		margin: 0 0 5% 0;
	}
	.item .data .num li:nth-child(1){
		width: 100px;
		position: relative;
	}
	.item .data .num li:nth-child(1) span{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.item .data .num li:nth-child(2){
		font-size: 20px;
        line-height: 2em;
        letter-spacing: .2em;
        font-family: "snell-roundhand-lt-std", sans-serif;
        font-weight: 400;
        font-style: normal;
        position: relative;
        top: 8px;
        left: -10%;
	}
	.item .data .title{
		font-size: 1.2em;
		line-height: 2em;
		letter-spacing: .3em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		white-space: nowrap;
		margin: 0 0 4% 0;
	}
	.item .data .txt{
		font-size: .85em;
		line-height: 2.2em;
		letter-spacing: .1em;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
		margin: 0 0 7% 0;
		text-align: justify;
		white-space: nowrap;
	}
	.item .data .link-box{
		width: 100%;
	}
	.item .data .link-box02{
		width: 100% !important;
	}

	/* staff */
	.staff > img{
		width: 100%;
		display: block;
		will-change: transform;
	}
	.staff{
		width: 100%;
		overflow: hidden;
		margin: 0 auto 7% auto;
		position: relative;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.staff-box{
		width: 85%;
		margin: 0 auto;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.staff-box .logo{
		width: 80%;
		margin: 0 auto 15% auto;
	}
	.staff-box .staff-list{
		width: max-content;
		font-family: "garamond-premier-pro-display", serif;
		font-weight: 300;
		font-style: normal;
		margin: 0 auto;
	}
	.staff-box .staff-list li{
		width: max-content;
		display: flex;
		justify-content: space-between;
		margin: 0 0 5% 0;
	}
	.staff-box .staff-list li:last-child{
		margin: 0;
	}
	.staff-box .staff-list li .position{
		color: #fff;
		width: 70px;
		font-size: .8em;
		line-height: 1;
		letter-spacing: .1em;
	}
	.staff-box .staff-list li .name{
		color: #fff;
		font-size: .8em;
		line-height: 1;
		letter-spacing: .05em;
	}

	/* pagetop */
	#pagetop{
		position: fixed;
		right: 10px;
		bottom: 10px;
		width: 40px;
		height: 40px;
		display: block;
		z-index: 99;
	}
	#pagetop .btn-loading{
		display: inline-flex;
		font-weight: 700;
		color: #111;
		width: 100%;
		height: 100%;
		position: relative;
		opacity: 1 !important;
		background-color: #CCC;
		border-radius: 100%;
		transition: color 0.2s;
		overflow: hidden;
	}
	#pagetop .btn-loading01:before,
	#pagetop .btn-loading01:after{
		content: "";
		display: block;
		position: absolute;
		width: 50%;
		height: 0;
		background-color: #af9f8e;
		pointer-events: none;
	}
	#pagetop .btn-loading:before{
		bottom: 0;
		left: 0;
	}
	#pagetop .btn-loading:after{
		top: 0;
		right: 0;
	}
	#pagetop:hover .btn-loading:before,
	#pagetop:hover .btn-loading:after{
		height: 100%;
	}
	#pagetop:hover .btn-loading:before{
		transition: height 0.1s 0.1s linear;
	}
	#pagetop:hover .btn-loading:after{
		transition: height 0.1s linear;
	}
	#pagetop .btn-loading span{
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: calc(100% - 1px);
		height: calc(100% - 1px);
		background-color: #FFF;
		border-radius: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		z-index: 99;
	}
	#pagetop .btn-loading span img{
		width: 10px;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	@keyframes pagetop-slide{
		0%   { transform: translate(-50%, -50%); }
		35%  { transform: translate(-50%, -200%); }
		36%  { transform: translate(-50%,  200%); }
		100% { transform: translate(-50%, -50%); }
	}
	#pagetop:hover .btn-loading span img{
		animation: pagetop-slide 0.6s ease forwards;
	}



	/* cart-btn */
	.l-icon::before{
		content: url("../img/l-size.svg");
		width: 13px;
        height: 13px;
        display: inline-block;
        background-size: 13px 13px;
        position: relative;
        top: 0px;
        margin: 0 10px 0 0;
        line-height: 0;
        border: 1px solid #000;
        border-radius: 3px;
	}
	.s-icon::before{
		content: url("../img/s-size.svg");
		width: 13px;
        height: 13px;
        display: inline-block;
        background-size: 13px 13px;
        position: relative;
        top: 0px;
        margin: 0 10px 0 0;
        line-height: 0;
        border: 1px solid #000;
        border-radius: 3px;
	}
	.cart-btn {
		width: 100%;
		text-decoration: none;
		color: #000;
		transition: 0.3s;
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin: 0 0 2% 0;
		font-family: "yu-mincho-pr6n", sans-serif;
		position: relative;
	}
	.cart-title {
		width: max-content;
		font-size: 14px;
		letter-spacing: 0px;
		position: absolute;
		line-height: 1.5em;
		white-space: nowrap;
		font-family: "hiragino-mincho-pron", sans-serif;
		font-weight: 300;
		font-style: normal;
	}
	.cart-yen {
		font-size: 16px;
		letter-spacing: 0px;
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: flex-end;
		white-space: nowrap;
		font-family: "yu-mincho-pr6n", sans-serif;
		padding: 0 6px 0 0;
	}
	.cart-yen .yen-icon {
		margin: 0 2px 0 0;
	}
	.cart-yen .tax {
		font-size: 11px;
		letter-spacing: 0;
		margin: 0 0 0 3px;
		position: relative;
		top: 1px;
	}
	.link-line01 {
		width: 100%;
		height: 1px;
		background: #5b4942;
		margin: 12px 0;
		opacity: .5;
	}
	.cart-btn .btn {
		width: 100px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		padding: 6px 0;
		position: relative;
		overflow: hidden;
	}
	.cart-btn .btn span {
		font-size: .7em;
		line-height: 1;
		letter-spacing: .05em;
		text-align: center;
		font-family: "futura-pt", sans-serif;
		font-weight: 400;
		font-style: normal;
		position: relative;
		z-index: 10;
		transition: .5s;
	}
	.cart-btn:hover .btn span {
		color: #fff;
	}
	.cart-btn .btn .btn-bg {
		width: 150%;
		height: 100%;
		position: absolute;
		display: block;
		top: 0;
		left: -140%;
		clip-path: polygon(0 0, 100% 0, calc(100% - 20px) 100%, 0 100%);
		transition: .5s;
	}
	.cart-btn:hover .btn .btn-bg {
		left: 0%;
	}
	/* 00 */
	.cart-btn .btn00 {
		background: #fff;
		border: 1px solid #969696;
		color: #969696;
	}
	.btn_bg-color00{
		background: #969696;
	}
	.cart-btn:hover .btn .btn-color00 {
		color: #fff !important;
	}

	/* 01 */
	.cart-btn .btn01 {
		background: #cfc1ab;
		border: 1px solid #cfc1ab;
		color: #fff;
	}
	.btn_bg-color01{
		background: #fff;
	}
	.cart-btn:hover .btn .btn-color01 {
		color: #cfc1ab !important;
	}

	/* 02 */
	.cart-btn .btn02 {
		background: #cfc1ab;
		border: 1px solid #cfc1ab;
		color: #fff;
	}
	.btn_bg-color02{
		background: #fff;
	}
	.cart-btn:hover .btn .btn-color02 {
		color: #cfc1ab !important;
	}


	/*f-banner*/
	.f-banner{
		width: 80%;
		margin: 15% auto 10% auto;
	}
	.f-banner-m{
		width: 80%;
		margin: 0 auto 15% auto !important;
	}
	.f-banner-list{
		width: 100%;
		margin: 0 auto;
	}
	.f-banner-list li{
		width: 100%;
		margin: 0 0 3% 0;
		background: #fff;
		border: 1px solid #b4b5b6;
	}
	.f-banner-list li a{
		width: 100%;
		display: block;
		transition: .3s;
	}
	.f-banner-list li a:hover{
		transition: .3s;
	}
	.f-banner-list li .txt{
		width: 100%;
		font-size: 12px;
		letter-spacing: 2px;
		line-height: 2em;
		text-align: center;
		margin: 2% 0 0 0;
	}

	/*f-banner02*/
	.f-banner02{
		width: 100%;
		margin: 0 auto 5% auto;
	}
	.f-banner02-list{
		width: 80%;
		display: flex;
		justify-content: space-between;
		margin: 0 auto;
	}
	.f-banner02-list li{
		width: 47%;
		background: #fff;
		margin: 0 0 5% 0 !important;
		border: 1px solid #b4b5b6;
	}
	.f-banner02-list li a{
		width: 100%;
		display: block;
		transition: .3s;
	}
	.f-banner02-list li a:hover{
		transition: .3s;
	}

	/*footer*/
	.footer {
		color: #000;
		letter-spacing: 0.3em;
		padding: 0 0 20% 0;
		position: relative;
		text-align: center;
	}
	.footer .insta{
		display: block;
		width: 450px;
		border: 1px solid #ea6da4;
		margin: 0 auto 3% auto;
		transition: .3s;
	}
	.footer .insta:hover{
		border: 1px solid #fff;
		transition: .3s;
	}
	.footer_sns {
		margin: 0 0 0 0;
	}
	.footer_snsNode {
		display: inline-block;
		margin: 0 10px;
		width: 30px;
	}
	.f-ow{
		width: 120px;
		margin: 25px auto 0 auto;
	}
	.footer_copyright {
		font-family: "Helvetica",serif;
		font-size: 0.5em;
		letter-spacing: 0.02em;
		margin: 34px 0 0;
		color: #000000;
	}

	.in-btn{
		width: 35px;
		margin: 0 auto 1% auto;
		display: block;
		opacity: 1;
	}

	.foot_fix_btn {
		position: fixed;
		z-index: 99;
		bottom: 0;
		left: 0;
		width: 100%;
		-webkit-transition: all 0.5s;
		transition: all 0.5s;
		backdrop-filter: blur(10px);
		-ms-backdrop-filter: blur(10px);
		-webkit-backdrop-filter: blur(10px);
		background: rgba(255, 255, 255, .5);
		border-radius: 15px 15px 0 0;
	}
	.foot_fix_btn.js_hide {
		transform: translateY(100%);
	}
	.foot_fix_btn ul {
		width: 100%;
		display: flex;
		justify-content: flex-start;
		flex-wrap: wrap;
		text-align: center;
		font-size: 0;
	}
	.foot_fix_btn ul li:nth-child(1) {
		width: 50%;
		box-sizing: border-box;
		border-right: 1px solid #eee;
	}
	.foot_fix_btn ul li:nth-child(2) {
		width: 50%;
		box-sizing: border-box;
	}
	.foot_fix_btn ul li a {
		display: block;
		padding: 5px 0;
	}

}