@charset "UTF-8";

/*
===== CONTENTS ==============================
	0:common
	1:#wrapper
	2:#branding
		#logo
	3:#globalNav
	4:#visual
	5:#contents
		#main_contents
		#sub_contents
			#localNav
	6:#site_info
		#asisstNav
=============================================
*/

/*
===== 0:common =====
*/
#wrapper,
#branding,
#site_info {
	margin: 0 auto;
}

.w30 {width: 30px;}
.w40 {width: 40px;}
.w90 {width: 90px;}
.w100 {width: 100px;}
.w130 {width: 130px;}
.w180 {width: 180px;}
.w300 {width: 300px;}
.w340 {width: 340px;}


/* error */
.errorMsg {
	background: url(../images/errorMsgbg_btm.gif) no-repeat left bottom;
	margin: 0 0 20px;
	padding: 0 0 10px;
}
.errorMsg p {
	background: url(../images/errorMsgbg_top.gif) no-repeat left top;
	color: #9a2f6a;
	font-size: 12px;
	margin: 0!important;
	padding: 10px 12px 0;
}
.errorMsg strong {
	font-weight: bold;
}
th.error {
	background-color: #ffe6f4!important;
}

/*
===== 1:#wrapper =====
*/
#wrapper {
	text-align: center;
	padding: 0 0 10px;
	width: 900px;
}


/*
===== 2:#branding =====
*/
#branding {
	height: 55px;
	position: relative;
	width: 900px;
}
	/* logo */
	#branding #logo {
		left: 0;
		top: 0;
		position: absolute;
	}
	#salon #branding #logo {
		top: 12px;
	}
	/* links */
	#branding #links {
		right: 0;
		top: 0;
		position: absolute;
	}
	/* information */
	#branding #information {
		right: 0;
		top: 33px;
		position: absolute;
	}
		#branding #information li {
			float: left;
			padding: 0 0 0 15px;
		}
		#salon #branding #information li {
			padding: 0 0 0 15px;
		}
			#branding #information li a {
				display:block;
			}


/*
===== 3:#globalNav =====
*/
#globalNav {
	overflow: hidden;
	position: relative;
	width: 900px;
}
	#globalNav li {
		height: 50px;
		float: left;
	}
	/* salon */
	#salon #globalNav li.lastchild {
		float: right;
	}
	/* salon */
	#globalNav.salon li.lastchild {
		float: right;
	}



/*
===== 4:#topicpath =====
*/
#topicpath {
	font-size: 10px;
	margin: 10px 0;
	width: 900px;
}


/*
===== 4:#visual =====
*/
#visual {
	margin: -25px 0 16px;
	width: 960px;
}


/*
===== 5:#contents =====
*/
#contents {
	margin: 0 0 30px;
	overflow: hidden;
	position: relative;
	width: 900px;
}
	#contents h1 {
		margin: 0 0 20px;
	}

	/* leadArea */
	#contents .leadArea {
		margin: 0 0 35px;
		overflow: hidden;
		position: relative;
		width: 900px;
	}
		#contents .leadArea p {
			float: left;
			margin: 0 0 15px;
			width: 520px;
		}
		#contents .leadArea ul {
			float: left;
			overflow: hidden;
			position: relative;
			width: 530px;
		}
		#contents .leadArea ul li {
			float: left;
			padding: 0 5px 0 0;
		}

	/* res */
	#contents .res {
		background: url(../images/resbg.gif) no-repeat left bottom;
		float: right;
		padding: 0 0 15px;
		width: 360px;
	}
		/* reservation */
		#contents .res #reservation {
			margin: 0 15px;
			position: relative;
			width: 330px;
		}
			#contents .res #reservation p {
				margin: 0;
				position: absolute;
				right: 4px;
				top: 11px;
				width: 97px;
			}
	#contents.course .res {
		background: url(../images/resbg2.gif) no-repeat left bottom;
		float: none;
		margin: 0 205px 40px;
		text-align: center;
		width: 490px;
	}
		#contents.course .res .tlt {
			margin: 0;
		}
		/* reservation */
		#contents.course .res #reservation {
			margin: 0 80px;
		}
			#contents.course #main_contents div .res #reservation p {
				margin: 0;
			}

	/* main_contents */
	#main_contents {
		overflow: hidden;
		position: relative;
		width: 900px;
	}
		/* idTabs */
		#main_contents ul.idTabs {
			background: url(../images/idTabsbg.gif) repeat-x left bottom;
			margin: 0 0 10px;
			padding: 0 0 2px;
			overflow: hidden;
			position: relative;
			width: 900px;
		}
			#main_contents ul.idTabs li {
				float: left;
			}
				#main_contents ul.idTabs li a {
					background-repeat: no-repeat;
					background-position: left top;
					cursor:pointer;
					display: block;
					left: 0;
					height: 25px;
					position: relative;
					top: 0;
					width: 148px;
				}
				#main_contents ul.idTabs li#lNav01 a {
					background-image: url(../images/idTab_lNav01.gif);
				}
				#main_contents ul.idTabs li#lNav02 a {
					background-image: url(../images/idTab_lNav02.gif);
				}
				#main_contents ul.idTabs li#lNav03 a {
					background-image: url(../images/idTab_lNav03.gif);
				}
				#main_contents ul.idTabs li#lNav04 a {
					background-image: url(../images/idTab_lNav04.gif);
				}
				#main_contents ul.idTabs li#lNav05 a {
					background-image: url(../images/idTab_lNav05.gif);
				}
				#main_contents ul.idTabs li#lNav06 a {
					background-image: url(../images/idTab_lNav06.gif);
					width: 160px;
				}
				#main_contents ul.idTabs li#lNav07 a {
					background-image: url(../images/idTab_lNav07.gif);
					width: 160px;
				}
					#main_contents ul.idTabs li a .hide {
						width: 0;
						height: 0;
						overflow: hidden;
						position: absolute;
					}
					body:first-of-type #main_contents ul.idTabs li a .hide {display:none;}/* safari3 */
				#main_contents ul.idTabs li a.selected:hover,
				#main_contents ul.idTabs li a.selected {
					background-position: left -50px;
				}
				#main_contents ul.idTabs li a:hover {
					background-position: left -25px;
				}
	
		/* efcontents */
		#main_contents div .efcontents {
			margin: 0 0 40px;
		}
			#main_contents div .efcontents .edate {
				padding: 5px 10px;
				_height: 2.1em;
				_line-height: 2.1em;
			}
				#main_contents div .efcontents .edate p {
					background-position: 340px center;
					background-repeat: no-repeat;
					color: #2a5073;
					font-size: 15px;
				}
				#main_contents div .efcontents .edate p.state01 {/* 予約可能 */
					background-image: url(../images/state01.gif);
				}
				#main_contents div .efcontents .edate p.state02 {/* 残りわずか */
					background-image: url(../images/state02.gif);
				}
				#main_contents div .efcontents .edate p.state03 {/* 要相談 */
					background-image: url(../images/state03.gif);
				}
				#main_contents div .efcontents .edate p.state04 {/* 予約不要 */
					background-image: url(../images/state04.gif);
				}
			#main_contents div .efcontents .efctlt {
				font-size: 16px;
				font-weight: bold;
				margin: 0 0 15px;
				padding: 10px 5px;
				_height: 2.1em;
				_line-height: 2.1em;
			}
			#main_contents div .efcontents table {
				width: 900px;
			}
				#main_contents div .efcontents table td {
					vertical-align: top;
				}
				#main_contents div .efcontents table td.imgArea {
					text-align: center;
					width: 256px;
				}
				#main_contents div .efcontents table td.txtArea {
					font-size: 12px;
					padding: 0 0 0 15px;
					width: 629px;
					_width: 644px;
				}
				#main_contents div .efcontents table td.txtArea strong {
					font-weight: bold;
				}
				#main_contents div .efcontents table td.txtArea em *,
				#main_contents div .efcontents table td.txtArea em {
					font-style: italic;
				}
				#main_contents div .efcontents table td.txtArea ol,
				#main_contents div .efcontents table td.txtArea ul {
					padding: 0 0 0 25px;
				}
				#main_contents div .efcontents table td.txtArea ol li {
					list-style-type: decimal;
				}
				#main_contents div .efcontents table td.txtArea ul li {
					list-style-type: disc;
				}
				#main_contents div .efcontents table td.btnArea {
					text-align: right;
					vertical-align: bottom;
				}
			/* schedule */
			#main_contents div .efcontents table.schedule {
				margin: 40px 0 10px;
			}
				#main_contents div .efcontents table.schedule td.imgArea {
					text-align: center;
					width: 224px;
				}
				#main_contents div .efcontents table.schedule td.txtArea {
					font-size: 12px;
					padding: 0 15px 0 0;
					width: 421px;
					_width: 436px;
				}
				#main_contents div .efcontents table.schedule td.btnArea {
					padding: 30px 0 0;
					text-align: center;
					vertical-align: bottom;
				}
			/* plan */
			#main_contents div .efcontents table.plan {
				display: block;
				margin: 20px 0 10px;
			}
				#main_contents div .efcontents table.plan td.imgArea {
					text-align: center;
					padding: 20px 0 0;
					width: 224px;
				}
				#main_contents div .efcontents table.plan td.txtArea {
					font-size: 12px;
					padding: 20px 15px 0 0;
					width: 421px;
					_width: 436px;
				}


		/* efdeatil */
		#main_contents .efdeatil {
			overflow: hidden;
			position: relative;
		}
			#main_contents .efdeatil .efcontents {
				float: left;
				margin: 0 0 40px;
				width: 660px;
			}
				#main_contents .efdeatil .efcontents table {
					width: 660px;
				}
		

		/* foruse */
		#main_contents div #foruse {
			border-top-style: solid;
			border-top-width: 1px;
			clear: both;
			padding: 20px 0 0;
			width: 900px;
		}
			#main_contents div #foruse h2 {
				font-size: 14px;
				font-weight: bold;
				margin: 0 0 15px;
			}
			#main_contents div #foruse ul {
				padding: 0 0 0 20px;
			}
				#main_contents div #foruse ul li {
					font-size: 12px;
					list-style-type: disc;
				}


		/* infoArea */
		#main_contents div .infoArea {
			background: url(../images/infoAreabg.gif) no-repeat left bottom;
			float: right;
			margin: 0 0 40px;
			padding: 0 0 10px;
			width: 221px;
		}
			#main_contents div .infoArea dl {
				margin: 5px 10px 0;
			}
				#main_contents div .infoArea dl dt {
					border-top: 1px dotted #dbb4c4;
					font-size: 12px;
					padding: 5px 10px 0;
				}
				#main_contents div .infoArea dl dt.firstchild {
					border-top: none;
				}
				#main_contents div .infoArea dl dd {
					font-size: 12px;
					margin: 0 0 5px;
					padding: 0 10px;
				}
			#main_contents div .infoArea ul {
				margin: 5px 10px 0;
			}
				#main_contents div .infoArea ul li {
					font-size: 12px;
					padding: 5px 10px;
				}
				#main_contents div .infoArea ul li.firstchild {
					border-top: none;
				}
	
	/* saloninfo */
	.saloninfo {
		background-color: #e8e8e8;
		clear: both;
		padding: 10px 0 5px;
	}
		.saloninfo h3 {
			font-size: 12px;
			font-weight: bold;
			margin: 0 auto 5px;
			text-align: center;
		}
			.saloninfo h3 .salonname {
				font-size: 16px;
			}
		.saloninfo p {
			font-size: 12px;
			margin: 0 auto 5px;
			text-align: center;
		}
		.saloninfo a {
			text-align: center;
		}
	
	/* salonspec */
	.salonspec {
		background: url(../images/salonspecbg.gif) no-repeat left top;
		clear: both;
		height: 120px;
		_height: 135px;
		padding: 10px 10px 5px;
		overflow: hidden;
		position: relative;
		width: 880px;
		_width: 900px;
	}
		.salonspec p {
			font-size: 12px;
			margin: 0 0 5px;
		}
		.salonspec .info {
			float: left;
			overflow: hidden;
			position: relative;
			width: 670px;
		}
			.salonspec .info .salonphoto {
				float: left;
				width: 169px;
			}
			.salonspec .info .txt {
				float: right;
				width: 490px;
			}
				.salonspec .info .txt h2 {
					font-size: 12px;
					font-weight: bold;
					margin: 0 0 5px;
				}
					.salonspec .info .txt h2 .salonname {
						font-size: 16px;
					}
		.salonspec .link {
			float: right;
			width: 189px;
		}
			.salonspec .link ul {
				margin: 9px 0 8px;
			}
			* html .salonspec .link ul {margin-top: 5px;}
			*+html .salonspec .link ul {margin-top: 5px;}
				.salonspec .link ul li {
					line-height: 1;
					margin: 0 0 5px;
				}
				* html .salonspec .link ul li {margin-bottom: 2px;}
				*+html .salonspec .link ul li {margin-bottom: 2px;}
				.salonspec .link ul li.none {
					height: 1px;
				}
					.salonspec .link ul li img {
						vertical-align: bottom;
					}
			.salonspec .link p {
				margin: 28px 0 0;
			}
	/* policy */
	#main_contents .policy {
		border: 1px solid #7f9db9;
		height: 204px;
		margin: 0 0 15px;
		overflow-y: scroll;
		padding: 18px 14px;
		width: 632px;
	}
	* html #main_contents .policy {height: 240px;width: 660px;}
		#main_contents .policy .section {
			margin: 0 0 30px;
		}
		#main_contents .policy h2 {
			background-color: #ecf1f5;
			border-bottom: none!important;
			color: #2a5073!important;
			font-size: 15px!important;
			font-weight: bold;
			margin: 0 0 15px!important;
			padding: 5px 10px;
			width: auto!important;
		}
		#main_contents .policy p {
			margin: 0 10px;
		}
		#main_contents .policy ol {
			margin: 0 10px;
			padding: 0 0 0 20px;
		}
			#main_contents .policy ol li {
				font-size: 12px;
				list-style-type: decimal;
			}
		#main_contents .policy dl {}
			#main_contents .policy dl dt {}
			#main_contents .policy dl dd {
				margin: -1.6em 0 0 2em;
			}

/*
===== 6:#site_info =====
*/
#site_info {
	width: 900px;
}
	#site_info ul li {
		color: #333;
		float:left;
		font-size: 12px;
	}
	/* directoryNav */
	#site_info #directoryNav {
		float: left;
		overflow: hidden;
		padding: 0 0 9px;
		position: relative;
	}
	/* pageTop */
	#site_info .pageTop {
		float: right;
		padding: 0 0 9px;
	}
	/* salonNav */
	#site_info #salonNav {
		border-bottom: 1px solid #406280;
		border-top: 1px solid #406280;
		clear: both;
		height: 63px;
		overflow: hidden;
		position: relative;
	}
		#site_info #salonNav li {
			padding: 0 16px 0 0;
			width: 112px;
			_width: 128px;
		}
		#site_info #salonNav li.firstchild,
		#site_info #salonNav li.lastchild {
			width: 114px;
			_width: 130px;
		}
	/* linksNav */
	#site_info #linksNav {
		overflow: hidden;
		padding: 0 10px;
		position: relative;
	}
		#site_info #linksNav li {
			height: 52px;
			line-height: 52px;
		}
		#site_info #linksNav li.hdlogo {
			float: right;
		}
			#site_info #linksNav li a {
				background: url(../images/blnk.gif) no-repeat left center;
				padding: 0 0 0 15px;
			}
			html>/**/body #site_info #linksNav li.mbc a {background-position/*\**/: left 4px\9;}
			#site_info #linksNav li.hdlogo a {
				background-image: none;
				padding: 0;
			}
	/* footer */
	#site_info #footer {
		background: url(../images/footerbg.gif) no-repeat left top;
		height: 30px;
		line-height: 30px;
		padding: 0 10px 0 5px;
		width: 885px;
		_width: 900px;
	}
		#site_info #footer address {
			color: #fff;
			font-size: 10px;
			float: right;
		}
		/* asisstNav */
		#site_info #footer #asisstNav {
			float:left;
		}
			#site_info #footer #asisstNav li {
				color: #fff;
				font-size: 10px;
				height: 30px;
				line-height: 30px;
			}
				#site_info #footer #asisstNav li a {
					color: #fff;
					padding: 0 5px;
				}
