@charset "utf-8";
@import url(reset.css);

@font-face {
    font-family: 'SabonRom';
    src: local('SabonRom'),
    	url('../../font/SabonRom.woff') format('woff'),
    	url('../../font/SabonRom.woff2') format('woff'),
    	url('../../font/SabonRom.ttf') format('truetype')
}

@font-face {
    font-family: 'SabonIta';
    src: local('SabonIta'),
    	url('../../font/SabonIta.woff') format('woff'),
    	url('../../font/SabonIta.woff2') format('woff'),
    	url('../../font/SabonIta.ttf') format('truetype')
}

a{ color: #251e1c; text-decoration: none;}
a:hover{ color: #251e1c;}

body{
	background: #f8f8f8;
}

.top{
	display: block;
	position: fixed;
	z-index: 9999;
	
	bottom: 124px;
	left: 70px;
}

.btn_collection{
	display: none;
	position: fixed;
	z-index: 9999;
	
	right: 300px;
	top: 140px;
	font-family: 'SabonRom';
	font-size: 30pt;
}
.btn_collection a{
	display: block;
	position: relative;
	margin-bottom: 30px;
}
.btn_collection a.btn_topimg{
	display: none
}

.title{
	width: 90px;
	margin-bottom: 24px;
}

.menu a{
	position: relative;
	display: block;
	font-family: 'SabonRom';
	font-size: 18pt;
	margin-bottom: 15px;
}

hr.current{
	position: absolute;
	width: 70px;
	top: 13px;
	left: 0;
	border:solid #251e1c;
	border-width:1px 0 0 0;
}
.btn_stockist hr.current{
	width: 81px;
}
.btn_wrapping hr.current{
	width: 104px;
	top: 18px;
}
@media print, screen and (max-width: 640px) {
	.btn_wrapping hr.current{
		width: 140px;
	}
}

hr.collection_current{
	position: absolute;
	width: 0;
	top: 25px;
	left: 0;
	border:solid #251e1c;
	border-width:1px 0 0 0;
}

.menu a.btn_inst{
	width: 15px;
	margin-top: 21px;
}

.bk{
	display: none;
	width: 100%;
	height: 100%;
	position: fixed;
	background: #f8f8f8;
	opacity: 0.9;
	z-index: 999;
}

.bk_pc{
	display: none;
	width: 100%;
	height: 100%;
	position: fixed;
	background: #f8f8f8;
	opacity: 0.5;
	z-index: 999;
}

/*
body.about .bk{
	opacity: inherit;
}
*/

.title img,
.btn_inst img{
	width: 100%;
}


.contents{
	display: block;
	position: relative;
	width: 100%;
}
.contents .firstView{
	width: 100%;
	height: 95vh;
}
.contents .firstView img{
	display: block;
	position: absolute;
	width: 35.25%;
	
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}
.contents .2019ss .firstView img{
	width: 100%;
}

.contents .cell{
	width: 50%;
	float: left;
}
.contents .wide{
	width: 100%;
}
.contents .css2021aw .cell{
	width: 100%;
	float: none;
}

body.about{
/*
	background: #f8f8f8 url(../img/back_kirinuki.png) no-repeat;
	background-size: contain;
*/
}

body.about .contents{
	height: 100vh;
}

.contents .auto_video{
	width: 100%;
	height: 100vh;
	overflow: hidden;
	position: relative;
}
.contents .auto_video video{
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%)
}

.contents .top_video{
	width: 100%;
	padding: 50px 0;
}
.contents .top_video video{
	display: block;
	position: relative;
	width: 50%;
	padding: 50px 0;
	margin: 0 auto;
}
.contents .top_video video:focus{
	outline: none;
}

.contents .bottom_video{
	width: 100%;
	padding: 50px 0;
}
.contents .bottom_video video{
	display: block;
	position: relative;
	width: 50%;
	padding: 100px 0 50px;
	margin: 0 auto;
}
.contents .bottom_video video:focus{
	outline: none;
}
@media print, screen and (max-width: 640px) {
	.contents .top_video video,
	.contents .bottom_video video{
		width: 80%
	}
}

/*
.gif{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}
*/
.about__wrap{
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding:0 5% 0 380px;
}
.about__wrap-inner{
	display: flex;
	align-items: flex-end;
	gap:80px;
	max-width: 1100px;
	margin: auto;
}
.about__wrap-text{
	font-weight: normal;
	font-family: serif;
	font-size: 14px;
	line-height: 1.7em;
	color: #251e1c;
}
.about__wrap-text span{
	margin-top: 16px;
	display: block;
	font-size: 12px;
}
.about__wrap-img {
	width: 100%;
	min-width: 360px;
}
.about__wrap-img img{
	width: 100%
}
@media print, screen and (max-width: 1000px) {
	.about__wrap-inner{
		flex-direction: column-reverse;
		align-items: center;
		gap:60px;
	}
	.about__wrap-img {
		width: 70%;
	}
}

@media print, screen and (max-width: 640px) {
	.about__wrap{
		height: auto;
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 100px 0 0;
		width: 70%;
		margin: auto;
	}
	.about__wrap-inner{
		flex-direction: column-reverse;
		gap:80px;
		width: 100%;
	}
	.about__wrap-text{
		font-size: 12px;
		line-height: 1.8em;
	}
	.about__wrap-text span{
		font-size: 10px;
	}
	.about__wrap-img {
		width: 100%;
		min-width: inherit;
	}
}


.about_text{
	position: absolute;
	left: 60px;
	bottom: 520px;
}

.text_bk{
	display: inline-block;
	background: #251e1c;
	padding: 5px 8px;
	margin-bottom: 7px;
}
.text_bk a{
	font-family: 'SabonRom';
	font-size: 18px;
	color: #fff;
}

.text_it{
	font-family: 'SabonIta';
	font-size: 12px;
	padding: 0 4px;
	margin-top: 30px;
}

.contents.stockist{
	padding: 15% 0 0 50%;
	width: 50%;
}
.contents.stockist .text_country{
	font-size: 32px;
	font-family: 'SabonIta';
	font-style: italic;
}
.contents.stockist dl{
	display: flex;
	flex-wrap: wrap;
	width: 80%;
	margin: 30px 0 35px;
}
.contents.stockist dl dt{
	font-family: 'SabonIta';
	font-style: italic;
	width: 20%;
	font-size: 12px;
	line-height: 21px;
}
.contents.stockist dl dd{
	font-family: 'SabonRom';
	width: 80%;
	font-size: 13px;
	line-height: 21px;
	margin-bottom: 20px;
}
.contents.stockist dl dd a{
	transition: 0.3s all ease;
	border-bottom: 1px solid rgba(0,0,0,0);
}
.contents.stockist dl dd a:hover{
	border-bottom: 1px solid rgba(0,0,0,1);
}
.contents.stockist dl dd a.no-link{
	pointer-events: none;
}
.pc{ display: inline-block !important;}
.sp{ display: none !important;}


@media print, screen and (max-width: 640px) {
	.pc{ display: none !important;}
	.sp{ display: block !important;}
	
	.contents .firstView img{
		width: 75%;
	}
	.contents .cell{
		width: 100%;
	}
	
	.top{
		top: 0;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 100px;
	}
	.title{
		position: absolute;
		left: 0;
		right: 0;
		margin: 16px auto;
	}
	
	.btn_menu{
		width: 47px;
		height: 47px;
		display: block;
		position: absolute;
		top: 0;
		right: 0;
	}
	.btn_menu img{
		width: 100%;
	}
	
	.menu{
		display: none;
		margin: 95px 0 0 35px;
	}
	.menu a{
		font-size: 24pt;
	}
	.menu a.btn_store{
		margin-top: 80%;
	}
	.menu a.btn_about{
		margin-top: 5%;
	}
	
	.menu a.btn_inst{
		width: 22.5px;
		margin-top: 30px;
	}
	
	.btn_collection{
		right: inherit;
		left: 40px;
		top: 160px;
		font-size: 16pt;
	}
	.btn_collection a{
		margin-bottom: 24px;
		display: inline-block;
		margin-right: 50px;
	}
	
	body.about{
		background: #f8f8f8
	}
	
	.about_text{
		position: relative;
		left: inherit;
		bottom: inherit;
		width: 85%;
		margin: 125px auto 0;
	}
	.text{
		font-family: 'SabonRom';
		font-size: 16px;
		margin: 0 16px 40px 0;
		text-align: right;
	}
	.text_bk a{
		font-size: 20px;
	}
	
	body.about .contents{
		height: auto;
	}
	
	hr.current{
		width: 104px;
		top: 17px;
	}
	.btn_stockist hr.current{
		width: 128px;
	}
	hr.collection_current{
		width: 0;
		top: 16px;
	}
	.contents.stockist{
		padding: 90px 5% 0;
		width: 90%;
	}
	.contents.stockist .text_country{
		font-size: 26px;
	}
	.contents.stockist dl dt{
		font-size: 12px;
	}
	.contents.stockist dl dd{
		font-size: 12px;
	}

}