@charset "utf-8";
html{
	width:100%;
	font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "游明朝" , "Yu Mincho" , YuMincho , "MS P明朝", "MS PMincho", serif;
}
body{
	width:100%;
	color:#222;
}
.sp{display:block;}
.pc{display:none;}
a{
	color:#222;
	text-decoration:underline;
}
img {
	border:0;
	vertical-align:top;
	max-width: 100%;
	height: auto;
	width /***/:auto;　
}
em{
	font-style:normal;
	font-weight:bold;
}
.bold{
	font-weight:bold;
}
.fNo{
	font-weight:normal;
}
.img100{
	width:100%;
}
.w1200{
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
}
.w1150{
	max-width:1150px;
	margin-left:auto;
	margin-right:auto;
}
.w1000{
	max-width:1000px;
	margin-left:auto;
	margin-right:auto;
}
.w900{
	max-width:900px;
	margin-left:auto;
	margin-right:auto;
}
.w750{
	max-width:750px;
	margin-left:auto;
	margin-right:auto;
}
.w750{
	max-width:750px;
	margin-left:auto;
	margin-right:auto;
}
.w80{
	width:80%;
	margin-left:auto;
	margin-right:auto;
}
.w90{
	width:90%;
	margin-left:auto;
	margin-right:auto;
}
.w96{
	width:96%;
	margin-left:auto;
	margin-right:auto;
}
.fGo{
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
}
.fPalt{
	font-feature-settings: "palt";
}
@media (min-width:768px) {
	.sp{display:none;}
	.pc{display:block;}
	a{
		transition:0.3s;
	}
	a:hover{
		opacity: 0.7;
	}
	a[href^="tel:"] {
	    pointer-events: none;
	}
}
/* base */


/*ヘッダー*/
.anchor{
	display:block;
}
main{
	overflow: hidden;
}
@media (min-width:768px) {
	.anchor{
		display:block;
	}
	main{
	}
}

/*ハンバーガーボタン*/	
#hBtnMenu{
	position:fixed;
	bottom:5px;
	right:10px;
	width:60px;
	height:60px;
	padding-top:0;
	text-align:center;
	z-index:10010;
	cursor: pointer;
}
#hBtnMenu span {
	position: absolute;
	top: 0;
	left: 10px;
	display: block;
	width: 40px; /* 横幅 */
	height: 2px; /* 1本辺りの高さ */
	background: #222; /* 線の色 */
	transition: all 0.3s ease-out;
}
#hBtnMenu p {
	position: absolute;
	top: 5px;
	left:0;
	width:60px;
	text-align: center;
	display:block;
	font-size:clamp(1.2rem,2vw,2rem);
}
#hBtnMenu .hbBar01 { top: 25px; }
#hBtnMenu .hbBar02 { top: 35px; }
#hBtnMenu .hbBar03 { top: 45px; }

#hBtnMenu.open span{background: #222; /* 線の色 */	}
#hBtnMenu.open .hbBar01 {
  top: 30px; /* 上から2番目の線の位置に変更 */
  transform: rotate(30deg);
}
#hBtnMenu.open .hbBar02 {
  opacity: 0; /* 不透明度を下げて線を消す */
}
#hBtnMenu.open .hbBar03 {
  top: 30px; /* 上から2番目の線の位置に変更 */
  transform: rotate(150deg);
}

@media (min-width:768px) {
	#hBtnMenu{
		width:120px;
		height:120px;
		top:0;
		right:0;
	}
	#hBtnMenu span {
			left: 30px;
		height: 4px; /* 1本辺りの高さ */
		width: 60px; /* 横幅 */
	}
	#hBtnMenu p {
		top:10px;
		width:120px;
	}
	#hBtnMenu .hbBar01 { top: 55px; }
	#hBtnMenu .hbBar02 { top: 70px; }
	#hBtnMenu .hbBar03 { top: 85px; }
	#hBtnMenu.open .hbBar01,
	#hBtnMenu.open .hbBar03 {
	  top: 70px; /* 上から2番目の線の位置に変更 */
	}
}

/*ナビゲーション*/
#gNav{
	display:none;
	width:100%;
	height:calc(100vh - 70px);
	position:fixed;
	top:0;
	left:0;
	background-color:#f0ede8;
	background-image: url(../images/gnav_bg.png);
	background-size: 90%;
	background-position: bottom right;
	background-repeat: no-repeat;
	z-index: 10000;
}
#gNav #gNavWrap{
	width:100%;
	height:95%;
	display: flex;
	justify-content:flex-start ;
	align-items: center;
	flex-direction: column;
}
#gNav h2{
	color: #886d3d;
	font-size:max(1.5rem, min(3vw, 3rem) );
	letter-spacing: 0.1em;
	margin-bottom: 1em;
  font-family: "Cinzel", serif;
  font-weight: 400;
  border-bottom:1px solid #886d3d;
  width:auto;
  display:inline-block;
  margin:0 auto 40px;
}
#gNav01{
	width: 90%;
	max-width: 1000px;
	text-align: left;
	margin: 0 auto;
	padding:30px 0;
}
#gNav01 li{
	display: block;
	width: 100%;
}
#gNav01 a{
	font-size:max(2rem, min(3vw, 3rem) );
	padding:10px 0;
	text-decoration: none;
	display: block;
	color: #222;
	letter-spacing: 0.05em;
  font-family: "Cinzel", serif;
  font-weight: 400;
}
#gNav01 a::after{
	content:"";
	margin-left:1em;
	margin-bottom: 0.1em;
	display: inline-block;
	width:0.5em;
	height: 0.5em;
	border-top:1px solid #000;
	border-right:1px solid #000;
	transform: rotate(45deg);

}
@media (min-width:768px) {
	#gNav{
		top:0;
		height:100vh;
		background-size: 60%;
	}
	#gNav #gNavWrap{
		justify-content: center;
	}
}






/*footer*/
footer{
	width: 100%;
	margin-top:20px;
	padding: 80px 0 0;
	background-color: #f1efeb;
}
.fConUnit01{
	width:90%;
	max-width:1200px;
	margin:0 auto 40px;
	border-top:1px solid rgba(0,0,0,0.5);
	border-bottom:1px solid rgba(0,0,0,0.5);
	padding:60px 0;
}
.fConLogo01{
	width:60%;
	max-width:315px;
	margin:0 auto 20px;
}
.fConUnit01 .tel01{
	font-size: clamp(3rem,6vw,6rem);
}
.fConUnit01 .tel01 a{
	text-decoration: none;
}
.fConUnit01 .tel01 small{
	font-size:50%;
}
.fConLogo04{
	width:50%;
	margin:0 auto 40px;
	max-width: 257px;
}
#copyright{
	font-size:max(1rem, min(1.4vw, 1.4rem) );
	line-height: 40px;
	background-color:#000;
	color:#fff;
	margin-bottom: 70px;
}
@media screen and (min-width:768px) {
	.fConUnit02{
		max-width: 257px;
	}
	#copyright{
		line-height: 60px;
		margin-bottom: 0;
	}
}
/*ページトップ*/
.pageTop{
	display: block;
	position: fixed;
	right: 0;
	bottom: 70px;
	width: 40px;
	height: 40px;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
}
.active{
  opacity: 1;
  visibility: visible;
}
.pageTop a{
	display: block;
	width: 40px;
	height: 40px;
	background-color: #1d876f;
	position: relative;
}
.pageTop a::before{
	content: "";
	position: absolute;
	display: block;
	width: 10px;
	height: 10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	left: calc(50% - 5px);
	top: calc(50% - 3px);
	transform: rotate(-45deg);
}
@media (min-width:768px) {
	.pageTop{
		width: 60px;
		height: 60px;
	}
	.pageTop a{
		width: 60px;
		height: 60px;
	}
	.pageTop a::before{
		width: 20px;
		height: 20px;
		border-top: 3px solid #fff;
		border-right: 3px solid #fff;
		left: calc(50% - 10px);
		top: calc(50% - 5px);
	}
}

/*スマホ下オビ*/
.spBtnWrap{
	background-image: url(../images/fbtn_bg.jpg);
	background-size: cover;
	display: block;
	position: fixed;
	left:0;
	bottom:0;
	height:70px;
	width:100%;
	z-index: 10000;
}
.spBtnWrap .wrap01{
	width:calc(100% - 40px);
	height:50px;
	margin-top:10px;
	display: flex;
	justify-content: flex-start;
}
.spBtnWrap .wrap01 .txt01{
	width:calc(100% - 40px);
	border-right:1px solid #494436;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size:min(4vw,1.6rem);
	line-height:1.5 ;
	text-decoration: none;
}
.spBtnWrap .wrap01 .txt01::before,
.spBtnWrap .wrap01 .txt01::after{
	content:"";
	position: absolute;
	margin-left:1em;
	margin-bottom: 0.1em;
	width:10px;
	height:10px;
	border-top:1px solid #000;
	border-right:1px solid #000;
	transform: rotate(45deg);
}
.spBtnWrap .wrap01 .txt01::before{
	right:95px;
	top:calc(50% - 4px);
}
.spBtnWrap .wrap01 .txt01::after{
	right:100px;
	top:calc(50% - 4px);
}
@media (min-width:480px) {
	.spBtnWrap .wrap01 .txt01 br{
		display: none;
	}
}
@media (min-width:768px) {
	.spBtnWrap{
		display: none;
	}
}





/*title*/
.pageTtl01{
	width: 100%;
	min-height: 200px;
	height: 30vw;
	background-size: cover;
	background-position: center center;
	display: flex;
	justify-content: center;
	align-items: center;
}
.pageTtl01 h2{
	color: #c76819;
	font-size:clamp(2.7rem, 3.5vw, 3.5rem);
	text-align: center;
	letter-spacing: 0.3em;
	font-family: "Times New Roman" , "Times" , serif;
	font-weight: normal;
/*	text-shadow: 0px 0px 20px rgba(255,255,255,1),
	 0px 0px 20px rgba(255,255,255,1),
	 0px 0px 20px rgba(255,255,255,1),
	 0px 0px 20px rgba(255,255,255,1)
	 ;*/
}
.cTtl01{
	font-size:clamp(2.5rem, 4vw, 4rem);
	border-bottom:1px solid #333;
	padding-bottom:0.25em;
	margin-bottom:40px;
	font-weight: normal;
	letter-spacing: 0.1em;
}
.cTxt01{
	font-size:clamp(1.4rem, 2vw, 2rem) !important;
}

/*text*/
.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;}
.txt16r{font-size:clamp(1.3rem, 1.6vw, 1.6rem);}
.txt20r{font-size:clamp(1.4rem, 2vw, 2rem);}
.txt25r{font-size:clamp(1.8rem, 2.5vw, 2.5rem);}
.txt30r{font-size:clamp(2.2rem, 3vw, 3rem);}
.txt37r{font-size:clamp(2.4rem, 3.7vw, 3.7rem);}
.txt45r{font-size:clamp(3rem, 4.5vw, 4.5rem);}
.cGold01{color:#a2843a;}
.cGold02{color:#e7ca82;}

/*section responsive*/
.sec80r{
	padding-top: clamp(50px,8vw,80px);
	padding-bottom: clamp(50px,8vw,80px);
}
.sec80rt{
	padding-top: clamp(50px,8vw,80px);
}
.sec80rb{
	padding-bottom: clamp(50px,8vw,80px);
}
.sec60r{
	padding-top: clamp(40px,6vw,60px);
	padding-bottom: clamp(40px,6vw,60px);
}
.sec60rt{
	padding-top: clamp(40px,6vw,60px);
}
.sec60rb{
	padding-bottom: clamp(40px,6vw,60px);
}
.sec40r{
	padding-top: clamp(30px,4vw,40px);
	padding-bottom: clamp(30px,4vw,40px);
}

/*background*/
.cBg01{
	background-color: #fef5e6;
}
.cBg02{
	background-color: #f8f2e7;
}
.cBg03{
	background-color: #f0ede8;
}