/* ESSENTIAL
------------------------------------------------------------------*/
html	{
	height: 100%;
	}

body	{
	margin: 0;
	padding: 0;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", Osaka, sans-serif;
	font-size: 12px;
	line-height: 1.6;
	color: #666;
	background: transparent url(../images/bg.gif) repeat-x left top;
	}

p,h1,h2,h3,h4,h5,h6,li,td,dt,dd {
	font-size: 12px;
	font-weight: normal;
	}

p,ul,ol,dl,blockquote,pre {
	margin-bottom: 1.0em;
	}

hr	{
	clear: both;
	display: none;
	visibility: hidden;
	}

a:link		{
	color: #0545e8;
	text-decoration: none;
	}
a:visited	{
	color: #0545e8;
	text-decoration: none;
	}
a:hover		{
	color: #396;
	text-decoration: underline;
	}
a:active		{
	color: #396;
	text-decoration: underline;
	}

img	{
	border: none;
	}



/* CONSTRUCTION
------------------------------------------------------------------*/
#wrap	{
	margin: 0 auto;
	padding: 15px;
	text-align: center;
	width: 900px;
	}
#container	{
	margin: 0 auto;
	padding: 0;
	width: 900px;
	text-align: left;
	border-top: 1px solid #aaa;
	border-bottom: 4px solid #1A5BAD;
	border-left: 1px solid #aaa;
	border-right: 1px solid #aaa;
	background: #fff;
	}
	#home #container	{
	border-top: 4px solid #1A5BAD;
	}

#headSub	{
	margin: 0;
	padding: 0;
	border-bottom: 4px solid #1A5BAD;
	}
#main	{
	margin: 0;
	padding: 0;
	}
#main #left	{
	margin: 0;
	padding: 40px;
	float: left;
	width: 540px;
	}
#main #right	{
	margin: 0;
	padding: 40px 0 0 0;
	float: right;
	width: 280px;
	}

#footer	{
	clear: both;
	margin: 0;
	padding: 5px 5px 0 0;
	text-align: right;
	}





/* ESSENTIAL
------------------------------------------------------------------*/
h4	{
	margin: 0;
	padding: 0;
	}
h5	{
	margin: 0;
	padding: 0 0 0 3px;
	color: #369;
	font-weight: bold;
	clear: both;
	border-bottom: 1px solid #ccc;
	}

#logoSub	{
	margin: 20px 15px 0;
	padding: 0;
	float: right;
	width: 117px;
	}
	#main #right ul.subsection_tabs	{
	margin: 20px 0 0;
	padding: 0;
	list-style-type: none;
	}
	#main #right ul.subsection_tabs li	{
	margin: 0;
	padding: 0;
	width: 196px;
	height: 50px;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
	}
	#main #right ul.subsection_tabs li#last	{
	border-bottom: 1px solid #ccc;
	}
	#main #right p	{
	margin: 0;
	padding: 30px 40px 15px 8px;
	display: block;
	line-height: 1.8;
	}
	#main #right p.sml	{
	margin: 0;
	padding: 30px 40px 0 8px;
	display: block;
	line-height: 1.8;
	font-size: 10px;
	}
	#main #right ul.att	{
	margin: 0;
	padding: 30px 40px 15px 8px;
	list-style-type: none;
	}
	#main #right ul.att li	{
	margin: 0;
	padding: 0 0 0 15px;
	background: transparent url(../images/mark_sqare.gif) no-repeat left 8px;
	line-height: 2.0;
	}



/* HOME
------------------------------------------------------------------*/
#home #topFlash	{
	margin: 0;
	padding: 15px;
	}
#home #logo	{
	margin: 50px 0 30px;
	padding: 0;
	text-align: center;
	clear: both;
	}
#home #topExp	{
	margin: 20px 0 0;
	padding: 0;
	text-align: center;
	}



/* PHOTO
------------------------------------------------------------------*/
#photo #main #left #photoArea	{
	margin: 0;
	padding: 0 0 5px;
	}
#photo #main #left #photoArea .photoBig	{
	margin: 0;
	padding: 0;
	height: 562px;
	text-align: center;
	}
#photo #main #left #photoArea ul	{
	margin: 0;
	padding: 0;
	list-style-type: none;
	}
#photo #main #left #photoArea li	{
	margin: 0 15px 15px 0;
	padding: 0;
	float: left;
	}



/* PRICE
------------------------------------------------------------------*/
#price #main #left table	{
	margin: 0;
	padding: 0;
	background: #ccc;
	width: 540px;
	}
#price #main #left table th	{
	margin: 0;
	padding: 5px;
	background: #fff;
	white-space: nowrap;
	font-weight: normal;
	vertical-align: top;
	}
#price #main #left table td	{
	margin: 0;
	padding: 5px;
	background: #fff;
	}
#price #main #left table td ul	{
	margin: 10px 10px 10px 30px;
	padding: 0;
	}
#price #main #left table td li	{
	margin: 0;
	padding: 0;
	line-height: 1.8;
	}
#price #main #left table td p	{
	margin: 5px 10px 10px 20px;
	padding: 0;
	display: block;
	}
	#price #main #left table td p span	{
	color: #369;
	}


/* SPECIAL
------------------------------------------------------------------*/
#special .box	{
	margin: 10px 20px 20px 20px;
	padding: 0;
	}
#special .box ul#lst	{
	margin: 0 0 0 15px;
	padding: 0;
	list-style-type: none;
	}
	#special .box ul#lst li	{
	margin: 0;
	padding: 0 0 0 17px;
	background: transparent url(../images/mark_dot.gif) no-repeat left 4px;
	}
#special .box ul#pht	{
	margin: 0 0 0 15px;
	padding: 0;
	list-style-type: none;
	}
	#special .box ul#pht li	{
	margin: 0 10px 10px 0;
	padding: 0;
	text-align: center;
	}
	#special .box ul#pht li	img{
	margin: 0;
	padding: 5px;
	border: 1px solid #ccc;
	}
#special .box p	{
	margin: 0 0 0 15px;
	padding: 0;
	line-height: 2.0;
	}
#special .box p strong	{
	color: #369;
	}
#special #main #left table	{
	margin: 5px 0 5px 15px;
	padding: 0;
	background: #ccc;
	width: 440px;
	}
#special #main #left table th	{
	margin: 0;
	padding: 5px;
	background: #fff;
	white-space: nowrap;
	font-weight: normal;
	vertical-align: top;
	}
#special #main #left table td	{
	margin: 0;
	padding: 5px;
	background: #fff;
	}


/* INFO
------------------------------------------------------------------*/
#info .box	{
	margin: 10px 20px 20px 20px;
	padding: 0;
	}
#info .box ul	{
	margin: 0 0 0 15px;
	padding: 0;
	list-style-type: none;
	}
#info .box li	{
	margin: 0;
	padding: 0 0 0 17px;
	background: transparent url(../images/mark_dot.gif) no-repeat left 4px;
	}
#info .box p	{
	margin: 0 0 0 15px;
	padding: 0;
	line-height: 2.0;
	}
#info .box p strong	{
	color: #369;
	font-weight: normal;
	}



/* RESERVATION
------------------------------------------------------------------*/
#reservation table.tbl	{
	margin: 0 0 10px 0;
	padding: 0;
	width: 540px;
	}
#reservation table.tbl th	{
	margin: 0;
	padding: 6px;
	width: 35%;
	background: #F3F6F6;
	border-bottom: 1px solid #E2E2E2;
	white-space: nowrap;
	font-weight: normal;
	}
#reservation table.tbl td	{
	margin: 0;
	padding: 6px;
	border-bottom: 1px solid #E2E2E2;
	}
#reservation table.tbl td textarea	{
	width: 320px;
	height: 100px;
	}
#reservation table.tbl th span	{
	color: #c30;
	}
#reservation input.add	{
	width: 400px;
	}
#reservation input.num	{
	width: 20px;
	}
#reservation input.button	{
	margin: 0 0 20px 220px;
	padding: 0;
	display: block;
	width: 100px;
	}
#reservation input.buttonContact	{
	margin: 0 0 0 220px;
	padding: 0;
	width: 100px;
	}
#reservation input.sendButton	{
	margin: 0;
	padding: 0;
	width: 100px;
	}
#reservation #confButton	{
	margin: 0 0 0 220px;
	padding: 0;
	}



/* CONTACT
------------------------------------------------------------------*/
#contact table.tbl	{
	margin: 0 0 10px 0;
	padding: 0;
	width: 540px;
	}
#contact table.tbl th	{
	margin: 0;
	padding: 6px;
	width: 20%;
	background: #F3F6F6;
	border-bottom: 1px solid #E2E2E2;
	white-space: nowrap;
	font-weight: normal;
	}
#contact table.tbl th span	{
	color: #c30;
	}
#contact table.tbl td	{
	margin: 0;
	padding: 6px;
	border-bottom: 1px solid #E2E2E2;
	}
#contact table.tbl td textarea	{
	width: 320px;
	height: 100px;
	}
#contact input.button	{
	margin: 0 0 0 190px;
	padding: 0;
	width: 100px;
	}




/* LINK
------------------------------------------------------------------*/
#link #left ul	{
	margin: 10px 0 20px 20px;
	padding: 0;
	list-style-type: none;
	}
#link #left li	{
	margin: 0;
	padding: 0 0 0 17px;
	background: transparent url(../images/mark_dot.gif) no-repeat left 9px;
	line-height: 30px;
	}
#link h5	{
	margin: 0;
	padding: 0;
	color: #666;
	}



/* ENGLISH
------------------------------------------------------------------*/
#english .box	{
	margin: 10px 20px 20px 20px;
	padding: 0;
	}
#english .box ul	{
	margin: 0 0 0 15px;
	padding: 0;
	list-style-type: none;
	clear: both;
	}
#english .box li	{
	margin: 0;
	padding: 0 0 0 17px;
	background: transparent url(../images/mark_dot.gif) no-repeat left 4px;
	}
#english .box p	{
	margin: 0 0 0 15px;
	padding: 0;
	line-height: 2.0;
	}
#english .box p strong	{
	color: #369;
	font-weight: normal;
	}
#english #main #left table	{
	margin: 0 0 25px;
	padding: 0;
	background: #ccc;
	width: 490px;
	float: right;
	}
#english #main #left table th	{
	margin: 0;
	padding: 5px;
	background: #fff;
	white-space: nowrap;
	font-weight: normal;
	vertical-align: top;
	}
#english #main #left table td	{
	margin: 0;
	padding: 5px;
	background: #fff;
	}




/* NAVIGATION
------------------------------------------------------------------*/
ul#mainNav	{
	margin: 0 auto;
	padding: 0;
	list-style-type: none;
	width: 710px;
	height: 94px;
	}
ul#mainNav li	{
	margin: 0;
	padding: 0;
	float: left;
	}


ul#subNav	{
	margin: 10px 0 8px 10px;
	padding: 0;
	list-style-type: none;
	width: 576px;
	height: 32px;
	float: left;
	}
ul#subNav li	{
	margin: 0;
	padding: 0;
	float: left;
	}


ul#footNav	{
	margin: 25px 0 10px 5px;
	padding: 0;
	list-style-type: none;
	}
ul#footNav li	{
	margin: 0;
	padding: 0 10px;
	float: left;
	border-right: 1px solid #ccc;
	line-height: 1em;
	}
	ul#footNav li.last	{
	border-right: none;
	}
	ul#footNav li a:link		{
	color: #666;
	text-decoration: none;
	}
	ul#footNav li a:visited	{
	color: #666;
	text-decoration: none;
	}
	ul#footNav li a:hover		{
	color: #666;
	text-decoration: underline;
	}
	ul#footNav li a:active		{
	color: #666;
	text-decoration: underline;
	}



/* Clear fix -----------------------------------------------------*/
.clfix:after {
	clear: both;
	content: ".";
	display: block;
	height: 0;
	visibility: hidden;
	}
*:first-child+html .clfix {
	display: inline-block;
	min-height: 1%;
	}
/* Hides from IE6/IE Mac \*/
* html .clfix {
	height: 1%;
	}
.clfix {
	display: block;
	}
/* End hide from IE6/IE Mac */