@charset "utf-8";
html{
	width:100%;
	font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	background-color: #faf8f0;
}

body{
	width:100%;
	color:#3c3228;
}
em{
	font-style:normal;
	font-weight:bold;
}
.sp{display:block;}
.pc{display:none;}
a:link,
a:visited{
	color:#3c3228;
	text-decoration:underline;
	}
a:active,
a:hover{
	color:#3c3228;
	text-decoration:underline;
	}
img {
	border:0;
	vertical-align:top;
	max-width: 100%;
	height: auto;
	width :auto;　
}
.w600{
	max-width:600px;
	margin-left:auto;
	margin-right:auto;
}
.w1000{
	max-width:1000px;
	margin-left:auto;
	margin-right:auto;
}
.w1200{
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
}
.w90{
	width:90%;
	margin-left:auto;
	margin-right:auto;
}
.w100{
	width:90%;
}
.fEn{
  font-family : Cormorant Garamond , serif;
}
@media screen and (min-width:768px) {
	.sp{display:none;}
	.pc{display:block;}
	a{
		transition-duration:0.3s;
		}
	a:hover{
		opacity: 0.7;
		}
}/* base */



.flex{
	display: flex;
	justify-content: flex-start;
	align-items: center;
}



/*header
----------------------------------------------------------- */
header{
	width:100%;
	height:60px;
	background-color:#faf8f0;
	z-index:200;
	left:0;
	top:0;
	transition: all 0.3s ease-out;
	position:fixed;
	border-bottom:1px solid rgba(0,0,0,0.15);
}
main{
	padding-top:60px;
}
.anchor{
	display:block;
	margin-top:-60px;
	padding-top:60px;
}
#hWrap{
	margin:0 auto;
	width:calc(100% - 30px);
}
@media (min-width:1000px) {
	#hWrap{
		display:flex;
		justify-content: space-between;
		align-items: center;
		height: 60px;
	}
}
#hLogo{
	width:150px;
	margin: 10px 0;
	text-align:left;
	display:flex;
	justify-content: flex-start;
	align-items: center;
	font-weight: normal;
}
#hLogo .link01{
	display:flex;
	justify-content: flex-start;
	align-items: center;
	text-decoration: none;
}
#hLogo .img01{
	height:40px;
}
#hLogo #clock{
	display: none;
}

@media (min-width:1000px) {
	#hBtnMenu{
		display:none;
	}
}
@media (min-width:1200px) {
	#hLogo{
		width:320px;
		margin:0;
	}
	#hLogo #clock{
		display: block;
		font-size:1.2rem;
	  font-weight: 300;
	  margin-left:20px;
	}
}
/*gnav*/
#gNav{
	position:absolute;
	display:none;
	top:50px;
	left:0;
	z-index:100;
	text-align:center;
	width:100%;
	height:100vh;
	background-color:#faf8f0;
	}
#gNav ul{
	width:90%;
	margin:0 auto;
}
#gNav li{
	height:40px;
}
#gNav .nav01{
	display:flex;
	justify-content: center;
	align-items: center;
}
#gNav .nav01 a,
#gNav .nav01 p{
	width:100%;
	display:flex;
	justify-content: center;
	align-items: center;
	text-decoration:none;
	color: #3c3228;
	font-size: 1.4rem;
  font-family:Cormorant Garamond , serif;
  cursor: pointer;
}
#gNav .nav02 a{
	width:100%;
	border-radius:20px;
	padding:0 1.5em;
	height:40px;
	display:flex;
	justify-content: center;
	align-items: center;
	text-decoration:none;
	background-color:#3c3228;
	color: #fff;
	font-size: 1.4rem;
}
#gNav .material-symbols-outlined{
	font-size:1.4rem;
	margin-right:2px;
}
@media (min-width:1000px) {
	#gNav{
		width:calc(100% - 150px);
		position:static;
		display:block !important;
		height:auto;
		padding: 0;
		}
	#gNav ul{
		width:100%;
		margin:0;
		display:flex;
		justify-content: flex-end;
		flex-wrap:wrap;
	}
	#gNav li{
		width:auto;
		height:auto;
		display:block;
		margin-right:20px;
	}
	#gNav li:last-of-type{
		margin-right:0;
	}
}
@media (min-width:1200px) {
	#gNav{
		width:calc(100% - 320px);
		}
}
/*ハンバーガーボタン*/	
#hBtnMenu{
	position:fixed;
	top:0;
	right:0;
	width:50px;
	height:50px;
	padding-top:10px;
	text-align:center;
	z-index:10;
	cursor: pointer;
}
#hBtnMenu span {
	position: absolute;
	top: 0;
	left: 13px;
	display: block;
	width: 24px; /* 横幅 */
	height: 2px; /* 1本辺りの高さ */
	background: #3c3228; /* 線の色 */
	transition: all 0.3s ease-out;
  }
#hBtnMenu .hbBar01 { top: 19px; }
#hBtnMenu .hbBar02 { top: 29px; }
#hBtnMenu .hbBar03 { top: 39px; }
#hBtnMenu.open span{
	background: #3c3228; /* 線の色 */
	}
/* 最上部の線のスタイル ---------------------- */
#hBtnMenu.open .hbBar01 {
  top: 29px; /* 上から2番目の線の位置に変更 */
  transform: rotate(45deg);
}
/* 上から2番目の線のスタイル ---------------------- */
#hBtnMenu.open .hbBar02 {
  opacity: 0; /* 不透明度を下げて線を消す */
}
/* 最下部の線のスタイル ---------------------- */
#hBtnMenu.open .hbBar03 {
  top: 29px; /* 上から2番目の線の位置に変更 */
  transform: rotate(135deg);
}

/*翻訳ボタン*/
#langBtnSp{
	position: fixed;
	right:60px;
	top:12px;
	cursor: pointer;
}
#langBtnSp p{
	margin:0;
	font-size:10px;
	line-height: 1;
	margin-top:-3px;
}
#langSp{
	display: none;
	position: fixed;
	right:15px;
	top:60px;
	z-index:110;
}
header .langWrap{
	display: block;
	border-left:1px solid rgba(0,0,0,0.15);
	border-right:1px solid rgba(0,0,0,0.15);
	border-bottom:1px solid rgba(0,0,0,0.15);
	padding:5px 15px;
	background-color: #faf8f0;
}
.langWrap .langNav{
	display: block;
	font-size:12px;
	width:100%;
	margin:0;
	padding:5px 15px 5px 5px;
	border:0;
	text-align: left;
	text-decoration: none !important;
	position:relative;
}
#gNav #langPc{display: none;}
#gNav #langBtnPc{display: none;}
@media (min-width:1000px) {
	#gNav #langPc{
		display: none;
		position: fixed;
		right:10px;
		top:60px;
	}
	#gNav #langBtnPc{
		display: block;
	}
	#langBtnSp{display: none;}
	#langSp{display: none;}
}
.langWrap a[data-stt-changelang] {}
.langWrap a[data-stt-active] {
	font-weight:bold;
}
.langWrap a[data-stt-active]::after {
	content:"●";
	position:absolute;
	right:0;
	top:25%;
	font-size:80%;
}
/*Google Chrome翻訳機能によって抑止されている言語切り替えバーのスタイル*/
[data-stt-disabled] * {
	opacity:0.4;
	cursor: auto;
}

/*footer
----------------------------------------------------------- */

/*MV*/

footer{
	width:100%;
	height:800px;
	overflow:hidden;
	position: relative;
	z-index: 1;
}
footer .fBgWrap{
	width:100%;
	height:800px;
	z-index: 1;
	clip-path: inset(0 0 0 0);
	position: relative;
}
footer .fBgImg{
	display:block;
	width:100%;
	height:100%;
	left:0;
	top:0;
	position:fixed;
	background-image: url(../images/common/fotter_bg.jpg);
	background-size: cover;
	background-position: center center;
	background-repeat:no-repeat;
	z-index:3;
}
footer .fBody{
	z-index:4;
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
	color:#fff;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	flex-direction: column;
	padding-bottom:40px;
}
footer .fBody .wrap01{}
footer .fBody .wrap02{
	margin-bottom:20px;
}
footer .fBody .fLogo{
	width:260px;
	height:60px;
	margin:0 auto 20px;
}
footer .fBody .cBtnRsv{
	background-color:#fff;
	color: #3c3228 !important;
	margin:20px auto 0;
}
footer .fBody .wrap03{
	width:210px;
	margin:0 auto;
}
footer .fBody .wrap03 a{
	text-decoration: none;
	color:#fff !important;
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
footer .fBody .wrap03 a .en{
	font-size:16px;
  font-family : Cormorant Garamond , serif;
  width:60%;
  text-align: left;
}
footer .fBody .wrap03 a .jp{
	font-size:11px;
  width:40%;
  text-align: left;
}
footer .fBody .insta{
	display: inline-block;
	width:24px;
	margin:20px auto;
}
footer .fBody .wrap04{}
footer .fBody .wrap04 a{
	display: inline-block;
	text-decoration: none;
	color:#fff !important;
	font-size:11px;
}
footer .fBody .wrap04 a::after{
	content:"|";
	margin-left:1em;
	margin-right:1em;
}
footer .fBody .wrap04 a:last-of-type::after{
	content:none;
	margin-left:0;
	margin-right:0;
}

@media (min-width:768px) {
	footer .fBody .wrap01{
		display: flex;
		justify-content: center;
		align-items: center;
	}
	footer .fBody .wrap02{
		margin-right:50px;
		margin-bottom:0;
	}
	footer .fBody .wrap03{}
}



/*section
----------------------------------------------------------- */
.sec4{padding-top:4rem;padding-bottom:4rem;}
.sec4t{padding-top:4rem;}
.sec4b{padding-bottom:4rem;}
.sec6{padding-top:6rem;padding-bottom:6rem;}
.sec6t{padding-top:6rem;}
.sec6b{padding-bottom:6rem;}
.sec8{padding-top:8rem;padding-bottom:8rem;}
.sec8t{padding-top:8rem;}
.sec8b{padding-bottom:8rem;}
.sec10{padding-top:10rem;padding-bottom:10rem;}
.sec10t{padding-top:10rem;}
.sec10b{padding-bottom:10rem;}
.sec12{padding-top:12rem;padding-bottom:12rem;}
.sec12t{padding-top:12rem;}
.sec12b{padding-bottom:12rem;}

/**/

/*text*/
.fs50{font-size: 50%;}
.fs75{font-size: 75%;}
.fs110{font-size: 110%;}
.fs120{font-size: 120%;}
.fs130{font-size: 130%;}
.fs140{font-size: 140%;}
.fs150{font-size: 150%;}
.fs160{font-size: 160%;}
.lh1{line-height:1;}
.lh15{line-height:1.5;}
.lh2{line-height:2;}
.lh25{line-height:2.5;}
.ls005{letter-spacing:0.05em;}
.ls01{letter-spacing:0.1em;}
.ls02{letter-spacing:0.2em;}
.cCopy01{font-size:clamp(2rem, 4vw, 4rem);font-weight: normal;}
.cCopy02{font-size:clamp(3rem, 4.8vw, 4.8rem);font-weight: normal;}
.txt14r{font-size:1.4rem;font-size:clamp(1.2rem, 1.4vw, 1.4rem);}
.txt15r{font-size:1.5rem;font-size:clamp(1.3rem, 1.5vw, 1.5rem);}
.txt16r{font-size:1.6rem;font-size:clamp(1.4rem, 1.6vw, 1.6rem);}
.txt18r{font-size:1.8rem;font-size:clamp(1.6rem, 1.8vw, 1.8rem);}
.txt20r{font-size:2.0rem;font-size:clamp(1.8rem, 2.0vw, 2.0rem);}
.txt30r{font-size:3rem;font-size:clamp(2.5rem, 3vw, 3rem);}
.txt40r{font-size:4rem;font-size:clamp(2.8rem, 4vw, 4rem);}
.txt50r{font-size:5rem;font-size:clamp(3.5rem, 5vw, 5rem);}


/*title
----------------------------------------------------------- */
.pageTtl01{
	padding-top:min(10vw,100px);
	padding-bottom:min(11vw,110px);
}
.pageTtl01 h2{
	font-size:3rem;
	font-size:clamp(2rem, 3vw, 3rem);
	font-weight: 300;
  font-family : Cormorant Garamond , serif;
  letter-spacing: 0.1em;
  position: relative;
}
.pageTtl01 h2::before{
	content: "";
	display: block;
	width:40px;
	height:1px;
	opacity:0.5;
	background-color: #3c3228;
	position: absolute;
	bottom:-10px;
	left:calc(50% - 20px);
}
@media (min-width:768px) {
	.pageTtl01{
	}
}
/**/
.cTtl01{
	font-size:5rem;
	font-size:clamp(3.5rem, 5vw, 5rem);
	font-weight: 300;
  font-family : Cormorant Garamond , serif;
  letter-spacing: 0.1em;
}

.cTtl02{
	margin-bottom:10px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	font-weight: normal;
	flex-wrap: wrap;
}
.cTtl02 .en{
	font-family : Cormorant Garamond , serif;
	font-size:36px;
	font-size:clamp(2.8rem, 3.6vw, 3.6rem);
	margin-right:0.5em;
}
.cTtl02 .jp{
	font-size:14px;
	margin-top:0.5em;
}

.cTtl03{
	font-size:2rem;
	font-weight: normal;
	text-align: left;
}
/**/


/*bg
----------------------------------------------------------- */
.cBg01{
	background-color: #faf8f0;
}
.cBgWh{
	background-color: #fff;
}

/*btn
----------------------------------------------------------- */

.cBtn01{
	display: inline-block;
	width:100px;
	height:30px;
	text-align: left;
	font-size:1.6rem;
  font-family : Cormorant Garamond , serif;
	position:relative;
	text-decoration: none !important;
}
.cBtn01::before{
	content:"";
	position: absolute;
	display: block;
	width:100px;
	height:1px;
	border-bottom:1px solid #3c3228;
	bottom: 0;
	right:0;
}
.cBtn01::after{
	content:"";
	position: absolute;
	display: block;
	width:10px;
	height:1px;
	border-bottom:1px solid #3c3228;
	right:-1px;
	bottom:3px;
	transform: rotate(45deg);
}
.cBtn02{
	width:120px;
	border-radius:20px;
	padding:0 1.5em;
	height:40px;
	display:flex;
	justify-content: center;
	align-items: center;
	text-decoration:none !important;
	border: 1px solid #3c3228;
	font-size: 1.4rem;
}
.cBtnRsv{
	width:120px;
	border-radius:20px;
	padding:0 1.5em;
	height:40px;
	display:flex;
	justify-content: center;
	align-items: center;
	text-decoration:none !important;
	background-color:#3c3228;
	color: #fff !important;
	font-size: 1.4rem;
}
.cBtnRsv .material-symbols-outlined{
	font-size:1.4rem;
	margin-right:2px;
}

/*list
----------------------------------------------------------- */
.cList01{
	width:100%;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
	font-size:14px;
	border-top:1px solid rgba(60,50,40,0.3);
	text-align: left;
}
.cList01 dt{
	padding:1em;
	border-bottom:1px solid rgba(60,50,40,0.3);
}
.cList01 dd{
	padding:1em;
	border-bottom:1px solid rgba(60,50,40,0.3);
}
@media (min-width:768px) {
	.cList01{
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		flex-wrap: wrap;
	}
	.cList01 dt{
		width:20%;
		padding:1em;
		border-bottom:1px solid rgba(60,50,40,0.3);
	}
	.cList01 dd{
		width:80%;
		padding:1em;
		border-bottom:1px solid rgba(60,50,40,0.3);
	}
}



/*プレオープン時　メニュー非表示*/
body.preopen #gNav ul li:nth-of-type(3),
body.preopen #gNav ul li:nth-of-type(4),
body.preopen #gNav ul li:nth-of-type(5),
body.preopen #gNav ul li:nth-of-type(8),
body.preopen .fBody .wrap02 .cBtnRsv,
body.preopen .fBody .wrap02 a:nth-of-type(3),
body.preopen .fBody .wrap03 a:nth-of-type(3),
body.preopen .fBody .wrap03 a:nth-of-type(4),
body.preopen .fBody .wrap03 a:nth-of-type(5),
body.preopen .fBody .wrap04 a:nth-of-type(2){
	display:none;
}














