@charset "utf-8";
/* =========================================================
   common style
   =======================================================*/

body {
	font-family:'Lucida Grande','Hiragino Kaku Gothic ProN','メイリオ',Meiryo,'ＭＳ ゴシック',Osaka,sans-serif;
	line-height: 0;
	min-width: 960px;
	-webkit-text-size-adjust: 100%;
}

@media screen and ( max-width:670px ) {
	body {
		min-width: 100%
	}
}

img {
	border: 0;
}

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td {
	margin:0;
	padding:0;
	box-sizing: border-box;
}

ul {
	list-style: none;
}

table,
th,
td {
	border-collapse: collapse;
	border-spacing:0;
}

.clearfix:after {
	content: ".";
	visibility: hidden;
	clear: both;
	display: block;
	height: 0;
}

.clearfix {
 zoom: 1;
 margin-bottom: 0;
}

.pc {
	display: inline-block;
}

.sp {
	display: none;
}

@media screen and ( max-width:670px ) {
	.pc {
		display: none;
	}

	.sp {
		display: inline-block;;
	}
}

/* -------------------------------------------------------
   outline
   -------------------------------------------------------*/
#container {
	width: 100%;
	background: #ffffe8;
	text-align: center;
}

#header-wrap {
	width: 100%;
	background: url(../images/header/bg.jpg) center top;
}

#navi-wrap {
	width: 100%;
	background: url(../images/navi/bg.jpg) center top;
}

#footer-wrap {
	width: 100%;
	background: url(../images/footer/bg.jpg) center top;
}

#header,
#navi {
	margin: 0 auto;
	width: 960px;
}

#content {
	margin: 0 auto;
	padding: 30px 24px;
	width: 960px;
	border-width: 0 1px;
	border-style: solid;
	border-color: #ffffdd;
	background: #ffffff;
	text-align: left;
}

#footer {
	margin: 0 auto;
	padding: 30px 25px;
	max-width: 960px;
	width: auto;
	_width: 960px;
}

@media screen and ( max-width:670px ) {
	#header,
	#navi {
		margin: 0 auto;
		width: 100%;
	}
	
	#content {
		padding: 30px 15px;
		width: 100%;
		border: 0;
	}

}

/* -------------------------------------------------------
   header
   -------------------------------------------------------*/
#header {
	position: relative;
	color: #ffffff;
	height: 80px;
}

#header:after {
	content: ".";
	visibility: hidden;
	clear: both;
	display: block;
	height: 0;
}

#header {
 zoom: 1;
 margin-bottom: 0;
}

#header a,
#header a:visited {
	color: #ffffff;
	text-decoration: none;
}

#header a:hover {
	color: #ff0000;
	text-decoration: underline;
}

h1 {
	float: right;
	padding: 10px 10px 0 0;
	width: 50%;
	height: 31px;
	font-size: 12px;
	font-weight: normal;
	line-height: 1.2;
	text-align: right;
}

#logo {
	float: left;
	background: url(../images/header/logo.png) no-repeat;
	width: 290px;
	height: 80px;
}

#logo a {
	display: inline-block;
	width: 100%;
	height: 100%;
}

#infomation {
	float: right;
	margin: 0 10px 0 0;
	width: 50%;
	text-align: right;
	font-size: 14px;
	line-height: 1.3;
}

#infomation span.hour {
	margin-right: 1.5em; 
}

#infomation span.holiday:after {
	content: "\A" ; white-space: pre ;
}

#infomation span.tel {
}

#infomation span.number {
	font-size: 20px;
	font-weight: bold;
}

#infomation br {
	display: none;
	_display: inline;
}

#header p.open {
	position: absolute;
	top: 0;
	left: 326px;
	background: url(../images/header/open.png) no-repeat;
	width: 259px;
	height: 80px;
}

@media screen and ( max-width:670px ) {
	#header {
		height: auto;
		min-height: 120px;
	}

	h1 {
		min-width: 250px;
		font-size: 14px;
	}

	#logo {
		width: 232px;
		height: 64px;
		background-size: 232px;
	}
	
	#infomation {
		min-width: 250px;
		font-size: 20px;
	}
	
	#infomation span.hour {
		margin-right: 0; 
	}

	#infomation span.hour:after,
	#infomation span.holiday:after,
	#infomation span.tel:after,
	#infomation span.tel:after {
		content: "\A" ; white-space: pre;
	}

	#infomation span.tel {
		margin-right: 0;
	}

	#infomation span.number {
		font-size: 26px;
	}

	#header p.open {
		position: relative;
		top: 0;
		left: 0;
		float: left;
		margin: 2px 0 0 30px;
		background-size: 181px;
		width: 181px;
		height: 56px;
	}
	
}

/* -------------------------------------------------------
   key
   -------------------------------------------------------*/
#key-top {
	margin: 0 auto;
	background: url(../images/header/key.jpg) no-repeat 0 -290px;
	width: 960px;
	height: 300px;
}

#key-sub {
	margin: 0 auto;
	background: url(../images/header/key_03.jpg) no-repeat 0 -160px;
	width: 960px;
	height: 200px;
}

@media screen and ( max-width:670px ) {
	#key-top {
		margin: 0 auto;
		background-position:  0 -110px;
		background-size: 670px;
		width: 100%;
		height: 300px;
	}

	#key-sub {
		margin: 0 auto;
		background-position: -10px -80px;
		background-size: 670px;
		width: 100%;
		height: 200px;
	}

}

/* -------------------------------------------------------
   navi
   -------------------------------------------------------*/
#navi {
	max-width: 960px;
	width: auto;
	_width: 960px;
	text-align: left;
}

#navi li {
	display: inline-block;
	_display: inline;
	margin: 0 1px;
	width: 190px;
	height: 50px;
}

#navi li a {
	display: inline-block;
	width: 100%;
	height: 100%;
}

#navi li.toppage { background: url(../images/navi/toppage.png) no-repeat center top; }
#navi li.consept { background: url(../images/navi/consept.png) no-repeat center top; }
#navi li.staff { background: url(../images/navi/staff.png) no-repeat center top; }
#navi li.menu { background: url(../images/navi/menu.png) no-repeat center top; }
#navi li.access { background: url(../images/navi/access.png) no-repeat center top; }

@media screen and ( max-width:670px ) {
	#navi {
		max-width: 640px;
		width: auto;
		_width: 640px;
	}
	
	#navi li {
		display: inline-block;
		margin: 0 1px 2px 1px;
		width: 211px;
		height: 50px;
	}

}

/* -------------------------------------------------------
   content
   -------------------------------------------------------*/

#content {
	color: #3a2001;
}

#content:after {
	content: ".";
	visibility: hidden;
	clear: both;
	display: block;
	height: 0;
}

#content {
 zoom: 1;
 margin-bottom: 0;
}

#content a,
#content a:visited {
	color: #007bd9;
	text-decoration: none;
}

#content a:hover {
	color: #ff0000;
	text-decoration: underline;
}

#content h2 {
	margin: 0 0 25px 0;
	border-bottom: 2px solid #3a2001;
	background: rgba(255,255,255,0.01);
	width: 100%;
	max-height: 100%;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.3;
	
}

@media screen and ( max-width:670px ) {
	#content h2 {
		font-size: 32px;
	}
}

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

#footer {
	color: #ffffff;
}

#footer:after {
	content: ".";
	visibility: hidden;
	clear: both;
	display: block;
	height: 0;
}

#footer {
 zoom: 1;
 margin-bottom: 0;
}

#footer a,
#footer a:visited {
	color: #ffffff;
	text-decoration: none;
}

#footer a:hover {
	color: #ff0000;
	text-decoration: underline;
}

#footer-navi {
	margin: 0 auto 30px auto;
	background: rgba(0,0,0,0.01);
	max-height: 100%;
	font-size: 16px;
	line-height: 1.2;
}

#shop-data {
	text-align: left;
	font-size: 14px;
	line-height: 1.4;
}

#shop-data p {
	background: rgba(0,0,0,0.01);
	max-height: 100%;
}

#copyright {
	background: rgba(0,0,0,0.01);
	max-height: 100%;
	margin-top: 30px;
	text-align: left;
	font-size: 12px;
	line-height: 1.4;
}

@media screen and ( max-width:670px ) {
	#footer-navi {
		font-size: 24px;
	}
	
	#shop-data {
		font-size: 18px;
	}
	
	#copyright {
		font-size: 14px;
	}

}
