@charset "UTF-8";
/*drawerMenu.css */

/* Toggle(Button) */
#header .navToggle {
	display: none;
	top: 0; right: 0; position:absolute;
	width: 60px; height: 60px; padding: 18px 15px;
	cursor:pointer;
	z-index: 8;
	background-color: rgba(241,241,241,0.6);
	box-sizing: border-box;
}

/* Toggle(Button) */
#header .navToggle { display: block;}
/* Click Toggle(Button) */
#header .openNav .navToggle span:nth-child(1) {
	top: 11px;
	-webkit-transform:rotate(-45deg);
	-moz-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
#header .openNav .navToggle span:nth-child(2) {
	top: 11px;
	-webkit-transform:rotate(45deg);
	-moz-transform:rotate(45deg);
	transform:rotate(45deg);
}
#header .openNav .navToggle span:nth-child(3) {
	display: none;
}

#header .navToggle div { position:relative;}
#header .navToggle span {
	display:block;
	position:absolute;
	width:100%;
	border-bottom:solid 2px #000;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
}

#header .navToggle span:nth-child(1) { top:0;}
#header .navToggle span:nth-child(2) { top:11px;}
#header .navToggle span:nth-child(3) { top:22px;}


/* close */
#header .navToggle2 { display: none;}

@media screen and (max-width: 768px){
	#header .navToggle2 { display: block; padding: 50px 0 0; text-align: center;}
}
@media screen and (max-width: 320px){
	#header .navToggle2 { padding: 25px 0 0;}
}


/* Gnav */
#gnav {
	top: 0; right: 0; position: fixed; z-index: 5;
	margin: 0; padding: 0; width: 100%; max-width: 100%;
}

#gnav nav {
	position:absolute; z-index: 5;
	-webkit-transition:.5s ease-in-out;
	-moz-transition:.5s ease-in-out;
	-o-transition:.5s ease-in-out;
	transition:.5s ease-in-out;
	text-align:left;
	background-color: rgba(241,241,241,0.9);
 }
#gnav nav ul {
	position: absolute; top: 0;right: 0px;
	padding-top: 0; width: 100%; list-style: none;
}
#gnav ul li { width: 100%; border-bottom: 1px solid #fff;}
#gnav ul li a {
	display: block; color: #000;
	background: url(../images/icon_r.png) no-repeat 20px center;
	background-size: auto 20px;
	transition-property: all;
	transition: 0.5s linear;
	box-sizing: border-box;
}
#gnav ul li a:hover { background-color: rgba(255,255,255,1);}
#gnav ul li::after  { content: '';}
#gnav ul li:last-child { border-bottom: none;}

#gnav ul #gnav_reserve { border-bottom: none;}
#gnav ul #gnav_reserve a {
	background-image: url(../images/icon_w.png);
	background-color: rgba(125,66,64,0.8); color: #fff;
}
#gnav ul #gnav_reserve .ver_sp { display: none;}


/* reservation */
#reservation {
	position: absolute; z-index: 3;
	height: 60px; box-sizing: border-box;
	background-color: rgba(125,66,64,0.8);
}
#reservation a {
	display: block; padding: 0 0 0 70px; height: 60px;
	color: #fff; font-size: 16px; line-height: 60px;
	background: url(../images/icon_w.png) no-repeat 20px center;
	background-size: auto 20px;
}
#reservation:hover { opacity: 0.75;}


/* スクロール後 */
#header_wrap.fix #gnav nav { width: 350px !important;}
#header_wrap.fix #gnav nav ul{ padding-top: 60px;}
#header_wrap.fix #reservation{
	top: 0; right: 60px; left: auto; bottom: auto; position: fixed;
	z-index: 10; width: 290px;
}


/* Media-queries */
@media screen and (min-width: 769px){
	#gnav nav { top:-2001px; right:0;height: 2000px;}
	.openNav nav {
		-moz-transform: translateY(2001px);
		-webkit-transform: translateY(2001px);
		transform: translateY(2001px);
	}
	#gnav nav ul li a { padding: 18px 0 18px 70px;}
	#gnav nav, #reservation{ width: 33%;}
	#reservation  { bottom: 0; right: 0;}
}
@media screen and (min-width: 1001px){
	#gnav nav, #reservation  { width: 28%; }
}
@media screen and (max-width: 768px){
	#gnav.openNav{ height: 100vh; overflow: auto;}
	#gnav nav { top:-901px; right:0; width:100%; min-height: 0; height:900px;}
	#gnav.openNav nav { top: 0; min-height: 100vh; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0);}
	#gnav nav ul li a { padding: 22px 0 22px 70px;}

	#gnav ul #gnav_reserve { padding: 15px 10px;}
	#gnav ul #gnav_reserve .ver_pc { display: none;}
	#gnav ul #gnav_reserve .ver_sp {
		display: block; padding: 18px 10px;
		background-image: none; text-align: center;
	}

	#reservation  { bottom: 0; left: 0; width: 100%;}
}
@media screen and (max-width: 320px){
	#gnav nav ul li a { padding: 18px 0 18px 70px;}
}

/****************************　　lang　　****************************/

#lang { top: 17px; right: 80px; position: fixed; z-index: 4; width: 120px;}

/* スクロール後 */
#header_wrap.fix #lang{
	right: 390px; left: auto; bottom: auto;
	-webkit-transition: all .5s;
	transition: all .5s;
}

.menu > li {
	float: left;
	width: 100%;
	background: rgba(0, 0, 0 ,.3);
	font-size: 0.6em;
	line-height: 1.0em;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.menu > li a {
	display: block;
	color: #fff;
	text-align: center;
	padding: 8px 0;
}

.menu > li a:hover {
	color: #999;
}

ul.menu_second-level {
	visibility: hidden;
	opacity: 0;
	z-index: 1;
}

.menu > li:hover {
	background: rgba(0, 0, 0 ,0.5);
	-webkit-transition: all .5s;
	transition: all .5s;
}
.menu_second-level li {
	border-top: 1px solid rgba(0, 0, 0 ,0.6);
}
.menu_second-level li a:hover {
	background: rgba(0, 0, 0 ,0.5);
}


/* 下矢印 */
.init-bottom:before {
	content: '';
	display: inline-block;
	width: 5px;
	height: 5px;
	margin: 0 15px 2px 0;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

/* floatクリア */
.menu:before,
.menu:after {
	content: " ";
	display: table;
}

.menu:after {
	clear: both;
}

.menu {
	*zoom: 1;
}
.menu {
	position: relative;
	width: 100%;
	height: 30px;
	max-width: 1000px;
	margin: 0 auto;
	padding: 0;
	list-style: none;
}

.menu > li.menu_single {
	position: relative;
}

li.menu_single ul.menu_second-level {
	position: absolute;
	top: 0px;
	width: 100%;
	background: rgba(0, 0, 0 ,.5);
	-webkit-transition: all .2s ease;
	transition: all .2s ease;
	list-style: none;
	padding: 0;
}

li.menu_single:hover ul.menu_second-level {
	top: 26px;
	visibility: visible;
	opacity: 1;
}