@charset "utf-8";

/* ------------------------------------------
	- COMMON SETTING
	- HEADER
		-- NAV MENU
	- MAIN
		--
		--
	- FOOTER
------------------------------------------ */

/* ==============================================================
	COMMON SETTING
============================================================== */
body{
	width:100%;
	box-sizing: border-box;
	text-align: center;
}
@media screen and (min-width:750px){
	body{
		min-width:1200px;
	}
}
a{
	text-decoration: none;
	color: inherit;
}
a:hover{
	opacity: 0.75;
}
a.tel{
	pointer-events: none;
}
img {  max-width: 100%;  height: auto;}
.sp{ display: none;}
.pc{ display: block;}

@media screen and (max-width:750px){
	a.tel{
		pointer-events: auto;
	}
	.sp{ display: block;}
	.pc{ display: none;}
}

/*	FONTS
------------------------------------------------ */
h1,h2,h3,h4,h5,h6,p,a,ul,li,th,td{
	font-family: 'ヒラギノ明朝 ProN','Hiragino Mincho ProN',sans-serif;
}
h1.heading{
	font-size: 32px;
	line-height: 0.8;
	letter-spacing: 0.24em;
	font-weight: 600;
}
h1.heading span{
	font-size: 14px;
	line-height: 1.8;
}
@media screen and (max-width:750px){
	h1.heading{
		font-size: 26px;
	}
	h1.heading span{
		font-size: 12px;
		line-height: 1.8;
	}
}
h2.heading{
	font-size: 32px;
	line-height: 0.8;
	letter-spacing: 0.24em;
	font-weight: 600;
	margin-bottom:30px;
}
h2.heading span{
	font-size: 14px;
}
@media screen and (max-width:750px){
	h2.heading{
		font-size: 26px;
		margin-bottom:15px;
	}
	h2.heading span{
		font-size: 12px;
	}
}
p,a,li,th,td{
	font-size: 14px;
	line-height: 2;
	letter-spacing: 0.1em;
}
@media screen and (max-width:750px){
	p,a,li,th,td{
		font-size: 12px;
	}
}
p.commentary{
	font-size: 18px;
	font-weight: 600;
}
@media screen and (max-width:750px){
	p.commentary{
		display: none;
	}
}

/*	AREA SIZE
------------------------------------------------ */
@media screen and (min-width:750px){
	.w830{
		width:830px;
		margin: 0 auto;
	}
	.w840{
		width:840px;
		margin: 0 auto;
	}
	.w920{
		width:920px;
		margin: 0 auto;
	}
	.w950{
		width:950px;
		margin: 0 auto;
	}
	.w1000{
		width:1000px;
		margin: 0 auto;
	}
	.w1100{
		width:1100px;
		margin: 0 auto;
	}
	.w1120{
		width:1120px;
		margin: 0 auto;
	}
	.w1150{
		width:1150px;
		margin:0 auto;
	}
}

@media screen and (max-width:750px){
	.w90{
		width:90%;
		margin: 0 auto;
	}
}


/*	BUTTON
------------------------------------------------ */
.btn{
	width:200px;
	margin: 0 auto;
	border-radius: 50px;
}
.btn a{
	font-size: 16px;
	line-height: 1.5;
	letter-spacing: 0.2em;
	padding: 15px 0;
	display: block;
	font-weight: 600;
}
@media screen and (max-width:750px){
	.btn a{
		font-size: 14px;
	}
}


/* ==============================================================
	HEADER
============================================================== */
header{
	position: relative;
}
header .logo {
	position: absolute;
	top:20px;
	left:50px;
	z-index: 10000;
}
header .sns_btn {
	position: absolute;
	top:20px;
	right:50px;
	z-index: 10000;
	color: #fff;
	display: flex;
}
header .sns_btn p{
	margin:0 8px;
}
header .sns_btn p .fab{
	font-size: 30px;
}
#headerArea {
  background: rgba(0,0,0,0.7);
	width: 100%;
	z-index: 9999;
	position: absolute;
	bottom:0;
}
@media screen and (max-width: 750px) {
	header .logo {
		left:5%;
		top:15px;
		position: fixed;
	}
	header .sns_btn{
		display: none;
	}
	#headerArea {
		top:0;
		background: #000;
		position: fixed;
		height: 60px;
	}
}
/*	NAV MENU
------------------------------------------------ */
.nav-wrap{
	height:100%;
}
.nav{
	display: flex;
	justify-content: center;
	align-items: center;
	width:100%;
	height:100%;
}
.nav li {
	width:16.66%;
	line-height: 1.41;
	width:100%;
	padding: 26px 0;
}
.nav li:hover,.nav li.selected{
	background: rgba(206,197,185,0.7);
	opacity: 1;
}
.nav li a{
	color: #a6937c;
	letter-spacing: 0.24em;
	line-height: 1.41;
	display: block;
}
.nav li:hover a,.nav li.selected a{
	color: #fff;
	opacity: 1;
}
.nav li a span{
	color: #fff;
	font-size: 9px;
	letter-spacing: 0.24em;
}

.nav-wrap.open {  display: block;}
.nav-wrap.close {  display: none;}
@media screen and (min-width: 750px) {
  .nav-wrap {  display: block !important;}
}
@media screen and (max-width: 750px) {
  .nav-wrap {
    position: fixed;
    left: 0;
    top: 0;
    display: none;
    z-index: 10;
    background-color: rgba(0, 0, 0, 0.85);
    width: 100%;
    height: 100%;
  }
  .nav-wrap .nav {
    height: 100%;
    position: relative;
    overflow-x: hidden;
    overflow-y: auto;
		padding-top: 60px;
		display: block;
  }
  .nav-wrap li {  display: block;  padding:15px 0;}
  .nav-wrap li a { font-size: 18px;}
}

/* ----- メニューボタン ----- */
.nav-button {  display: none;}
@media screen and (max-width: 750px) {
	.nav-button {  display: block;  cursor: pointer;}
  .nav-button,.nav-button span {
    display: inline-block;
    transition: all 0.4s;
    box-sizing: border-box;
  }
  .nav-button {
    z-index: 20;
		display: block;
    position: absolute;
    width: 60px;
    height: 60px;
		background: #333333;
		right:0;
		top:0;
  }
}
	/* ----- トグルボタン ----- */
@media screen and (max-width: 750px) {
  .nav-button span {
    position: absolute;
    left: 0;
		right:0;
		margin: auto;
    width: 60%;
    height: 4px;
    background-color: #fff;
    border-radius: 4px;
  }
  .nav-button span:nth-of-type(1) {  top: 14px;}
  .nav-button span:nth-of-type(2) {  top: 27px;}
  .nav-button span:nth-of-type(3) {  top: 40px;}
  .nav-button.active span:nth-of-type(1) {
    -webkit-transform: translateY(13px) rotate(-45deg);
    transform: translateY(13px) rotate(-45deg);
  }
  .nav-button.active span:nth-of-type(2) {  opacity: 0;}
  .nav-button.active span:nth-of-type(3) {
    -webkit-transform: translateY(-13px) rotate(45deg);
    transform: translateY(-13px) rotate(45deg);
  }
}

/*	上部固定メニュー
------------------------------------------------ */
#headerArea.fixed {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height:90px;
	display: flex;
	align-items: center;
}
header .logo.fixed,header .sns_btn.fixed{
	position: fixed;
	top: 30px;
}
#headerArea.fixed .nav-wrap{
	width:820px;
	margin:0 auto;
}

/* ==============================================================
	MAIN AREA
============================================================== */
.mainArea{
	position: relative;
	width:100%;
	display: block;
	overflow-y: hidden;
}
@media screen and (max-width:750px){
	.mainArea{
		margin-top:60px;
	}
}
.mainArea .layer{
	background: url(../img/layer.png) repeat;
	position: absolute;
	width:100%;
	height:99.8%;
	z-index: 10;
}
.mainArea .main_img img{
	width:100%;
	height:100%;
}
.mainArea .main_title{
	position: absolute;
	top:18%;
	left:0;
	right:0;
	z-index: 11;
}
@media screen and (max-width:750px){
	.mainArea .main_title{
		top:15%;
	}
	.mainArea .main_title img{
		width:30%;
	}
}


/* ==============================================================
	FOOTER
============================================================== */

/*	RESERVE
------------------------------------------------ */
.reserve .startArea{
	position: relative;
}
.reserve .startArea img{
	width:100%;
}
.reserve .startArea .titleArea{
	position: absolute;
	bottom: 0;
	width:100%;
	padding-bottom:50px;
	color: #fff;
}
@media screen and (max-width:750px){
	.reserve .startArea .titleArea{
		padding-bottom:0;
	}
}


/* ----- METHOD ----- */
.reserve .method{
	display: flex;
}
@media screen and (max-width:750px){
	.reserve .method{
		display: block;
	}
}
.reserve .method .method_item{
	width:50%;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
	padding: 70px;
	margin-top:-3px;
}
@media screen and (max-width:750px){
	.reserve .method .method_item{
		width:90%;
		padding: 40px 5%;
	}
}
.reserve .method .method_item h3{
	font-size: 24px;
	line-height: 1.11;
	letter-spacing: 0.1em;
	display: flex;
	align-items: center;
	border-radius: 50px;
	margin-bottom:55px;
	font-weight: 600;
}
@media screen and (max-width:750px){
	.reserve .method .method_item h3{
		font-size: 18px;
		margin-bottom:30px;
	}
}
/* TEL */
.reserve .method .tel_box{
	background: #1b1b1b;
	color: #fff;
}
.reserve .method .tel_box h3{
	background: #b7a78f;
	border:4px solid #fff;
	padding: 15px 50px;
}
.reserve .method .tel_box p{
	font-size: 18px;
	line-height: 1.33;
}
@media screen and (max-width:750px){
	.reserve .method .tel_box p{
		font-size: 14px;
	}
}
.reserve .method .tel_box p.tel_nam{
	font-size: 22px;
	line-height: 0.9;
	/*padding-bottom: 35px;*/
}
@media screen and (max-width:750px){
	.reserve .method .tel_box p.tel_nam{
		font-size: 16px;
		/*padding-bottom: 15px;*/
	}
}
.reserve .method .tel_box p.tel_nam a{
	font-size: 45px;
}
@media screen and (max-width:750px){
	.reserve .method .tel_box p.tel_nam a{
		font-size: 28px;
	}
}
.reserve .method .tel_box p.note {
	font-size: 14px;
	padding-bottom: 35px;
	line-height: 3;
}
@media screen and (max-width:750px){
	.reserve .method .tel_box p.note {
		font-size: 12px;
		padding-bottom: 15px;
	}
}


/* LINE */

.reserve .method .line_box{
	background: #e5e5e5;
}
.reserve .method .line_box h3{
	background: #fff;
	border: 4px solid #53b535;
	padding: 15px 30px;
}
@media screen and (max-width:750px){
	.reserve .method .line_box h3 img{
		width:65px;
	}
}
.reserve .method .line_box .item_inner{
	display: flex;
	justify-content: center;
}
@media screen and (max-width:750px){
	.reserve .method .line_box .item_inner{
		display: flex;
		flex-direction: column;
		flex-flow: column-reverse;
	}
}
.reserve .method .line_box .item_inner .img{
	width:140px;
	margin-right:30px;
}
@media screen and (max-width:750px){
	.reserve .method .line_box .item_inner .img{
		width:100%;
		margin-right:0;
		text-align: center;
		margin-top:20px;
	}
}
.reserve .method .line_box .item_inner .img p{
	font-size: 22px;
	font-weight: 600;
}
.reserve .method .line_box .item_inner .text{
	width:290px;
	text-align: left;
}
@media screen and (max-width:750px){
	.reserve .method .line_box .item_inner .text{
		width:90%;
		margin:0 auto;
	}
}
.reserve .method .line_box .item_inner .text p{
	font-size: 15px;
	line-height: 1.7;
}
.reserve .method .line_box .item_inner .text p span{
	font-size: 13px;
	letter-spacing: normal;
}
.reserve .method .line_box .item_inner .text p.sub_title{
	font-size: 22px;
	letter-spacing: 0.2em;
	font-weight: 600;
	margin-bottom:10px;
}
@media screen and (max-width:750px){
	.reserve .method .line_box .item_inner .text p.sub_title{
		font-size: 20px;
		margin-bottom:5px;
	}
}

/*	INFO
------------------------------------------------ */
.info{
	background: url(../img/info_bg.jpg) no-repeat;
	background-size: cover;
	background-position: center;
	display: flex;
	justify-content: center;
	padding: 70px 0;
}
@media screen and (max-width:750px){
	.info{
		display: block;
		padding: 40px 0;
	}
}
.info .fbArea{
	width:500px;
	margin-right:90px;
}
@media screen and (max-width:750px){
	.info .fbArea{
		width:100%;
		margin-right:0;
	}
}
.info .text{
	width:380px;
	text-align: left;
}
@media screen and (max-width:750px){
	.info .text{
		width:100%;
		text-align: center;
	}
}
.info .text p{
	font-size: 14px;
	line-height: 2.29;
}
.info .text p.sub_title{
	font-size: 22px;
	letter-spacing: 0.2em;
	display: flex;
	align-items: center;
	font-weight: 600;
}
@media screen and (max-width:750px){
	.info .text p.sub_title{
		font-size: 18px;
		justify-content: center;
		margin-top: 30px;
	}
}
.info .text p.sub_title span{
	font-size: 12px;
	line-height: 2;
	padding-left:10px;
}
.info .text img{
	margin-top: 40px;
}


@media screen and (max-width:750px){

}


/*	GOOGLE MAP
------------------------------------------------ */
.gMap iframe{
	width:100%;
	height:410px;
}
@media screen and (max-width:750px){
	.gMap iframe{
		height:250px;
	}
}

/*　PAGETOP BUTTON
------------------------------------------------ */
p.gotop{
	position: fixed;
	right: 5%;
	bottom: 100px;
}
p.gotop a{
	width: 80px;
	height: 80px;
	display: block;
}
@media screen and (max-width:750px){
	p.gotop,p.gotop img{
		display: none;
	}
}


/*　FOOTER NAVI AREA
------------------------------------------------ */
.footer_navArea{
	background: #1b1b1b;
	margin-top:-2px;
	padding: 30px 0;
}
@media screen and (max-width:750px){
	.footer_navArea{
		padding: 0 0 20px 0;
	}
}
.footer_navArea ul{
	color: #71655b;
	display: flex;
	justify-content: space-around;
	align-items: center;
	margin-bottom:50px;
}
@media screen and (max-width:750px){
	.footer_navArea ul{
		flex-wrap: wrap;
	}
	.footer_navArea li{
		width:49.8%;
		padding:15px 0;
		border-right:solid 1px #71655b;
		border-bottom: solid 1px #71655b;
	}
	.footer_navArea li:nth-child(2n){
		border-right:none;
	}
}
.footer_navArea p{
	color: #fff;
}
.footer_navArea p.address{
	font-size: 12px;
	line-height: 1.4;
	margin-top:15px;
}
.footer_navArea .sns_btn{
	display: flex;
	justify-content: center;
	margin:30px auto;
}
.footer_navArea .sns_btn p{
	margin:0 10px;
}
.footer_navArea .sns_btn p .fab{
	font-size: 30px;
}
.footer_navArea p.copyright{
	font-size: 10px;
}

@media screen and (max-width:750px){

}


/*
------------------------------------------------ */



@media screen and (max-width:750px){

}
