@charset "UTF-8";

/* @group reset */
/* @group Reset CSS */

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,legend,input,textarea,p,blockquote,th,td { 
	margin:0;
	padding:0;
}
section, nav, article, aside, hgroup, header, footer, figure, figcaption, summary {
	display: block;
	margin:0;
	padding:0;}
table {
	border-collapse:collapse;
	border-spacing:0;
	empty-cells: show;
}
fieldset,img { 
	border:0;
}

address,caption,cite,code,dfn,em,strong,th,var {
	font-style:normal;
	font-weight:normal;
}
ol,ul {
	list-style:none;
}
caption,th {
	text-align:left;
}
h1,h2,h3,h4,h5,h6 {
	font-size:100%;
	font-weight:normal;
}
q:before,q:after {
	content:'';
}
abbr,acronym {
	border:0;
}

/* @end */


/* @group common */

* {
	font-family: PT Sans Caption,Josefin Sans,"メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro, "ＭＳ Ｐゴシック", sans-serif;
}

html {
	overflow-y: scroll;
	-webkit-text-size-adjust: none;
}

body {
	text-align: center;
	margin: 0 auto;
	color: #333333;
}

img {
	vertical-align: bottom;
}

a img {
	border: none;
	text-decoration: none;
}

h1, h2, h3, h4 ,h5 ,h6 ,p, dl, ul, ol, table {
	line-height: 1.6;
}

legend { 
	color: #333333;
}

/* @end */


/* @group ClearFix */

.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {
	display: inline-block;
}
/* Hides from IE-mac \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/* End hide from IE-mac */

/* @end */

/* @end */


/* @group layout */

html{
	height: 100%;
}

body{
	background: #e6e6e6;
}

a{
	color: #ff09b5;
	text-decoration: none;
}

a:hover{
	opacity: 0.8;
	color: #ff09b5;
}


h1#logo{
	margin-top: 60px;
	margin-bottom: 30px;
}

h1#logo a{
	display: block;
	line-height: 1.2;
	padding: 5px;
}

section#nav_cont{
	width: 240px;
	background-color: rgba(0,0,0,0.8);
	box-sizing:border-box;
	padding: 40px 10px;
	position: absolute;
	right: 95px;
	z-index: 1;
}

section#nav_cont iframe{
	margin: 20px 0;
}

#container{
	padding-top: 465px;
	z-index: 2;
}

section img{
	max-width: 100%;
}

h1.title{
	height: 80px;
	font-size: 26px;
	text-align: left;
	color: #fff;
	padding: 20px 10px;
	box-sizing:border-box;
	text-shadow: 0px 1px 1px #000;  
}

h1.title span{
	font-size: 14px;
	margin-left: 10px;
	font-family: "HelveticaNeue-Thin", "Helvetica Neue Thin", "Helvetica Neue", ".HiraKakuInterface-W1";
	font-weight: 100;
}

.titleinner{
	max-width: 1024px;
	margin: 0 auto;
}

#container #main{
	background: #e6e6e6;
}

#container #main .content{
	max-width: 1024px;
	text-align: left;
	margin: 0 auto;
	padding: 50px 10px;
}

#container #main .content section{
	margin-bottom: 40px;
}

#container h2{
	font-size: 20px;
	margin-bottom: 10px;
	background: #ccc;
	padding: 5px 15px 3px;
	line-height: 1.6;
	box-sizing: border-box;
}

#container h2.h2_s {
	background: none;
	padding: 0;
	font-size: 18px;
	border-bottom: solid 1px #999;
}

#container h3{
	font-size: 18px;
	margin-bottom: 10px;
	border-bottom: dotted 1px #999;
	border-left: solid 5px #999;
	padding-left: 10px;
}

#container p{
	margin-bottom: 20px;
}

#container p.name{
	text-align: right;
}

#container ol{
	margin-bottom: 20px;
	list-style: decimal;
	margin-left: 30px;
}

#footer{
	background: rgba(0,0,0,0.8);
}

#footer div{
	margin-bottom: 20px;
}

div#footerinner{
	padding: 50px 10px 20px;
	max-width: 1024px;
	text-align: left;
	color: #fff;
	font-size: 14px;
	margin: 0 auto;
}


#footer #infomation.right div{
	margin-bottom: 60px;
}

#footer #access.left div.jp,
#footer #access.left div.en{
	margin-bottom: 30px;
}

#footer h2{
	font-size: 20px;
	margin-bottom: 40px;
}

#footer h3{
	margin-bottom: 10px;
	background: rgba(255,255,255,0.3);
	padding:3px 10px;
}

#footer p{
	margin-bottom: 20px;
	font-size: 12px;
}

#footer p strong{
	display: block;
	margin-bottom: 5px;
}

#footer ul{
	
}

#footer ul li{
	font-size: 12px;
	margin-left: 20px;
	text-indent: -20px;
	line-height: 1.2;
}

#footer ul li:before{
	content: "！";
	font-weight: bold;
	font-size: 18px;
}

#footer .note{
	font-size: 12px;
	line-height: 1;
}

#footer a{
	display: block;
	padding: 10px;
	text-align: center;
	color: #fff;
	margin-bottom: 20px;
	position: relative;
	border-radius: 5px;
}

#footer a:hover{
	opacity: 0.8;
	color: #fff;
}

#footer a:after{
	content: "";
	width: 15px;
	height: 15px;
	display: block;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	transform: rotate(45deg);
	position: absolute;
	top: 13px;
	right: 20px;
}


#footer #map{
	max-width: 500px;
}


#links a{
	background: rgba(0,0,0,0.3);
	display: block;
	height: 50px;
	box-sizing: border-box;
	padding: 10px;
	color: #fff;
	border-top: solid 1px rgba(255,255,255,0.3);
	border-bottom: solid 1px rgba(255,255,255,0.3);
}

#links a:hover{
	background: rgba(0,0,0,0.0);
	opacity: 0.9;
}

#links a i{
	font-size: 23px;
	display: inline-block;
	line-height: 1;
}


p#address{
	color: #999;
	margin: 0 auto;
	padding: 10px 10px 30px;
	text-align: right;
	background: rgba(0,0,0,0.8);
}

p#address small{
	display: block;
	max-width: 1024px;
	margin: 0 auto;
}

/* @group nav */

nav#menu ul{
	margin: 30px auto 30px;
}

nav#menu ul li{
	width: 20%;
	float: right;
	height: 210px;
	text-align: center;
}

nav#menu ul li a{
	display: block;
	height: 210px;
}

nav#menu ul li#nav_about a:hover,
nav#menu ul li#nav_about.stay a{
	background: rgba(255,9,181,0.5);
}

nav#menu ul li#nav_news a:hover,
nav#menu ul li#nav_news.stay a{
	background: rgba(34,236,240,0.5);
}

nav#menu ul li#nav_lunch_dinner a:hover,
nav#menu ul li#nav_lunch_dinner.stay a{
	background: rgba(255,239,0,0.5);
}

nav#menu ul li#nav_reserv a:hover,
nav#menu ul li#nav_reserv.stay a{
	background: rgba(99,235,87,0.5);
}

nav#menu ul li#nav_access a:hover,
nav#menu ul li#nav_access.stay a{
	background: rgba(191,104,255,0.5);
}

nav#menu ul li img{
	display: block;
	margin: 0 auto;
	padding: 10px;
}

/* @end */

/* @end */

/* @group top */


body#top{
	background: #000;
	background-size: cover;
	height: 100%;
}

#top #wrapper{
	width: 100%;
	height: 100%;
	position: relative;
}

#top #theTarget{
	position: fixed;
	
}


#top section#nav_cont{
	
}

/* @group nav_cont */

#nav_cont a{
	color: #ccc;
}

#nav_cont p{
	font-size: 12px;
	color: #999;
	padding: 5px 10px;
}

#nav_cont h3{
	font-size: 12px;
	color: #eee;
	text-align: left;
	margin-bottom: 5px;
}

/* @group news */

#top #nav_cont #news ul{
	font-size: 12px;
	text-align: left;
	margin-bottom: 20px;
	border-top: dotted 1px #fff;
}

#top #nav_cont #news ul li{
	border-bottom: dotted 1px #fff;
	color: #fff;
	padding: 5px;
}

#top #nav_cont #news ul li a{
	display: block;
	padding: 3px;
}

/* @end */

/* @end */

#top #footer a{
	margin-left: 5px;
}

/* @end */

/* @group about */

body#about{
	background: url(../images/101_bg_1.jpg) no-repeat center center fixed #000;
	background-size: cover;
}

#about h1.title{
	background: rgba(255,9,181,0.5);
}

#about #footer a{
	background: rgba(255,9,181,0.5);
}

#about .img{
	text-align: right;
}

#about .right img{
	margin-bottom: 30px;
}


/* @end */


/* @group news */

body#news{
	background: url(../images/101_bg_4.jpg) no-repeat center center fixed #000;
	background-size: cover;
}

#news h1.title{
	background: rgba(34,236,240,0.5);
}

#news #footer a{
	background: rgba(34,236,240,0.5);
}

/* @end */

/* @group lunch_dinner */

body#lunch_dinner{
	background: url(../images/lunch.jpg) no-repeat center center fixed #000;
	background-size: cover;
}

#lunch_dinner h1.title{
	background: rgba(255,239,0,0.5);
}

#lunch_dinner #footer a{
	background: rgba(255,239,0,0.5);
}

#lunch_dinner .content section{
	padding: 20px;
	text-align: left;
	box-sizing:border-box;
	box-shadow:1px 1px 5px rgba(0,0,0,0.4);
	width: 100%;
	margin: 0 auto;
	background: #fff;
}

#lunch_dinner .content section h2{
	background: rgba(255,239,0,0.7);
	line-height: 1.2;
	font-size: 24px;
	text-align: center;
	padding: 10px;
	margin-bottom: 20px;
}

#lunch_dinner .content section h2 span{
	font-size: 12px;
	display: block;
}

#lunch_dinner .content section h3{
	background: none;
	line-height: 1.2;
	border: none;
	padding: 0;
	font-size: 30px;
	background: rgba(255,239,0,0.5);
	padding: 10px;
	margin: 0;
}

#lunch_dinner .content section h3 span{
	display: block;
	font-size: 18px;
	margin-top: 5px;
	
}

#lunch_dinner .content section h3 strong{
	font-size: 25px;
	text-align: right;
	display: block;
	margin-top: 10px;
}

#lunch_dinner .content section h4{
	font-weight: bold;
	margin-bottom: 10px;
}

#lunch_dinner .content section img{
	margin: 0 auto;
	display: block;
}

#lunch_dinner .content section hr{
	border: none;
	border-top: dashed 1px #ccc;
	margin: 30px;
}

#lunch_dinner .content section .flex{
	margin: 30px 0;
}

#lunch_dinner .content section .flex div{
	box-sizing: border-box;
	margin-bottom: 30px;
	position: relative;
}

#lunch_dinner .content section p{
	text-align: left;
	font-size: 16px;
	margin-bottom: 10px;
}

#lunch_dinner .content section p.note{
	padding: 10px;
	background: #eee;
}

#lunch_dinner .content section ul.menulist li{
	margin-left: 21px;
	text-indent: -21px;
	margin-bottom: 3px;
	border-bottom: dotted 1px #ccd;
	padding: 10px 0 30px;
	position: relative;
}

#lunch_dinner .content section ul.menulist li:before{
	content: "●";
	color: rgba(255,239,0,0.8);
	margin-right: 5px;
}

#lunch_dinner .content section ul.menulist li span{
	display: block;
	font-size: 14px;
	color: #888;
	margin-left: 5px;
	text-indent: 0;
}

#lunch_dinner .content section ul.menulist li strong{
	margin-left: 15px;
	display: inline-block;
	background: rgba(255,239,0,0.5);
	text-indent: 0;
	padding: 2px 10px;
	position: absolute;
	right: 0;
	bottom: 5px;
}

#lunch_dinner .content section ul.imglist{
	display: flex;
	flex-wrap: wrap;
}

#lunch_dinner .content section ul.imglist li{
	width: 33%;
}

#lunch_dinner .content section ul.imglist li img{
	width: 100%;
}

#lunch_dinner .content section p.btn a{
	background: rgba(255,239,0,1);
	color: #000;
	text-align: center;
	display: block;
	width: 300px;
	margin: 0 auto;
	padding: 15px;
	box-sizing: border-box;
	border-radius: 30px;
	position: relative;
	font-size: 20px;
}

#lunch_dinner .content section p.btn a:hover{
	opacity: 0.7;
}

#lunch_dinner .content section p.btn a:after{
	content: "";
	width: 15px;
	height: 15px;
	border-top: solid 1px #000;
	border-right: solid 1px #000;
	transform: rotate(45deg);
	display: block;
	position: absolute;
	top: 23px;
	right: 40px;
}


/* @end */

/* @group reservation */

body#reservation{
	background: url(../images/101_bg_5.jpg) no-repeat center center fixed #000;
	background-size: cover;
}

#reservation h1.title{
	background: rgba(99,235,87,0.5);
}

#reservation #footer a{
	background: rgba(99,235,87,0.5);
}

#reservation .tab_wrap iframe{
	height: 2400px;
}

.tab_wrap{width:auto; margin:0 auto;}
input[type="radio"]{display:none;}
.tab_area{font-size:0; margin:0 10px;}
.tab_area label{width:48%; margin:0 1%; display:inline-block; padding:12px 0; color:#fff; background:#000; text-align:center; font-size:18px; cursor:pointer; transition:ease 0.2s opacity; box-sizing: border-box;}
.tab_area label:hover{opacity:0.5;}
.panel_area{background:#fff; box-sizing: border-box; padding: 20px;}
.tab_panel{width:100%; padding:0; display:none;}
.tab_panel p{font-size:14px; letter-spacing:1px; text-align:center;}

#tab1:checked ~ .tab_area .tab1_label{background:#fff; color:#000;}
#tab1:checked ~ .panel_area #panel1{display:block;}
#tab2:checked ~ .tab_area .tab2_label{background:#fff; color:#000;}
#tab2:checked ~ .panel_area #panel2{display:block;}


/* @end */


/* @group access */

body#access{
	background: url(../images/101_bg_10.jpg) no-repeat center center fixed #000;
	background-size: cover;
}

#access h1.title{
	background: rgba(191,104,255,0.5);
}

#access #footer a{
	background: rgba(191,104,255,0.5);
}

#access section .accessmap{
	text-align: center;
}

#access section .accessmap img{
	margin: 0 auto 30px;
}

#access section .movie .video{
	width:100%;
	padding-bottom: 56.25%;
	height:0px;
	position: relative;
}

#access section .movie .video iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#access section .movie ul.flex li{
	margin-bottom: 10px;
}



/* @end */


/* @group links */

body#related_link{
	background: url(../images/101_bg_04.jpg) no-repeat center center fixed #000;
	background-size: cover;
}

#related_link h1.title{
	background: rgba(59,101,255,0.5);
}

#related_link #footer a{
	background: rgba(59,101,255,0.5);
}

/* @end */


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

body#about{
	background-size: 250% auto;
	background-position: top center;
}

body#news{
	background-size: 250% auto;
	background-position: top center;
}

body#lunch_dinner{
	background-size: 250% auto;
	background-position: top center;
}

body#reservation{
	background-size: 250% auto;
	background-position: top center;
}

body#access{
	background-size: 250% auto;
	background-position: top center;
}

}

/* @group タブレット */

@media print, screen and (min-width:768px){

#lunch_dinner .content section .flex{
	display: flex;
	justify-content:space-between;
	margin: 10px 0 40px;
}

#lunch_dinner .content section .flex div{
	width: 48%;
	box-sizing: border-box;
	margin-bottom: 0;
}


#lunch_dinner .content section{
	min-width: 100%;
	background: #fff;
}

#lunch_dinner .content section .flex h3{
	padding: 20px;
	position: absolute;
	bottom: 40px;
	right: -20px;
	margin: 0 auto;
	min-width: 60%;
}


#access section .movie ul.flex{
	display: flex;
}

#access section .movie ul.flex li{
	width: 50%;
	padding: 10px;
	margin-bottom: 10px;
}

#footer #infomation.right{
	float: right;
	width: 49%;
	box-sizing:border-box;
}

#footer #access.left{
	float: left;
	width: 49%;
	box-sizing:border-box;
}


}

/* @end */


/* @group PC */

@media only screen and (min-width:1024px){


.left{
	float: left;
}

.right{
	float: right;
}

#about .left{
	width: 70%;
	box-sizing: border-box;
}

#about .right{
	width: 30%;
	box-sizing: border-box;
	padding-left: 20px;
}

#about .right img{
	max-width: 100%;
}


#reservation .tab_wrap iframe{
	height: 2100px;
}

#footer #infomation.right div{
	width: 48%;
	box-sizing:border-box;
}

#footer #access.left div.jp,
#footer #access.left div.en{
	width: 48%;
	box-sizing:border-box;
}




}

/* @end */

@media print {
body {
width: 1024px;
}
/* 印刷時に画面と変更するスタイルを定義 */

.page main section ul.list li{
	width: 30%;
	margin-right: 3%;
	padding: 0;
}

#footer ul#infomation li{
	width: 30%;
	float: left;
	margin-left: 1.3%;
	margin-right: 1%;
}

}