@charset "UTF-8";

/* ----------------------------------------
Global
---------------------------------------- */
html,body{
	height:100%;
}

body{
	color:#202020;
}

body.fontsize_small{
	font-size:0.520833333em;
}

body.fontsize_medium{
	font-size:0.625em;
}

body.fontsize_large{
	font-size:0.729166667em;
}

a{
	color:#7f0019;
}

a:hover{
	color:#b41232;
}

/* ----------------------------------------
Container
---------------------------------------- */
#container{
	width:100%;
	min-width:960px;
	height:auto;
	_height:100%;
	min-height:100%;
	background:#fff url(../common/body_bg.png) repeat-y center 412px;
	
}

#container-inner{
	height:auto;
	min-width:960px;
	_height:100%;
	min-height:100%;
	background:url(../common/container_bg.png) no-repeat center top;
}

/* ----------------------------------------
Header
---------------------------------------- */
#header{
	margin:0 auto;
	padding-top:9px;
	position:relative;
	width:960px;
	overflow:hidden;
	height:114px;
}

#header .logo{
	margin-bottom:10px;
}

#header .sitedesc{
	position:absolute;
	top:10px;
	right:225px;
	color:#927E6C;
	font-size:10px;
	text-align:right;
}

#header .gnav{
	clear:both;
	overflow:hidden;
	zoom:1;
}

#header .gnav li{
	float:left;
}

#header .subnav{
	padding-right:13px;
	position:absolute;
	top:9px;
	right:0;
	overflow:hidden;
	height:15px;
	text-align:right;
	background:url(../common/header_bg02.png) no-repeat right top;
}

#header .subnav li{
	margin-left:13px;
	padding-left:14px;
	display:inline-block;
	*display:inline;
	zoom:1;
	vertical-align:top;
	background:url(../common/header_bg02.png) no-repeat left top;
}

#header .utilities{
	position:absolute;
	top:40px;
	right:0;
	text-align:right;
}

#header .utilities *{
	display:inline-block;
	*display:inline;
	zoom:1;
	vertical-align:top;	
}

#header .utilities .fontsize{
	margin-right:12px;
	overflow:hidden;
	height:23px;
}

#header .utilities .fontsize li,
#header .utilities .fontsize p{
	margin-left:2px;
}

.nojs #header .utilities .fontsize{
	display:none;
}

#header .utilities .fontsize dd li{
	background-repeat:no-repeat;
}

#header .utilities .fontsize dd li.fontsize_small{
	background-image:url(../common/header_fontsize_btn01_on.png);
}

#header .utilities .fontsize dd li.fontsize_medium{
	background-image:url(../common/header_fontsize_btn02_on.png);
}

#header .utilities .fontsize dd li.fontsize_large{
	background-image:url(../common/header_fontsize_btn03_on.png);
}

.fontsize_small #header .utilities .fontsize dd li.fontsize_small img,
.fontsize_medium #header .utilities .fontsize dd li.fontsize_medium img,
.fontsize_large #header .utilities .fontsize dd li.fontsize_large img{
	visibility:hidden;
}

#header .utilities .fontsize dd li img{
	cursor:pointer;
}

#header .utilities .search{
	background:url(../common/header_search_bg.png) no-repeat left top;
}

#header .utilities .search input{
	vertical-align:top;
}

#header .utilities .search .find_to{
	margin:0 3px 0 0;
	padding:4px 4px 0 4px;
	border:none;
	outline:none;
	width:179px;
	max-height:18px;
	line-height:12px;
	*line-height:normal;
	vertical-align:top;
	font-size:12px;
	background-color:transparent;
}

#header .utilities .search .is_placeholder{
	color:#999;
}

/* ----------------------------------------
Content
---------------------------------------- */
#content{
	margin:0 auto;
	padding-bottom:175px;
	position:relative;
	width:960px;
}

.one_column #content{
	background-color:#fff;
}

/* ----------------------------------------
Main
---------------------------------------- */
#main{
	padding-bottom:65px;
	position:relative;
	float:left;
	width:715px;
	line-height:1.7;
}

.one_column #main{
	margin:0 auto;
	width:840px;
	float:none;
}

/* ----------------------------------------
Breadcrumbs
---------------------------------------- */
#breadcrumbs{
	padding:11px 0 5px;
	overflow:hidden;
	background-color:#fff;
}

.one_column #breadcrumbs{
	margin:0 -60px;
	position:relative;
}

#breadcrumbs ol{
	padding:4px 0;
	overflow:hidden;
	zoom:1;
}

#breadcrumbs ol li{
	margin-left:7px;
	padding-left:13px;
	float:left;
	line-height:1.55;
	background:url(../common/breadcrumbs_arrow.png) no-repeat left center;
	font-size:1.1em;
}

#breadcrumbs ol li.home{
	margin:0 -20px 0 0;
	padding-left:0;
	position:relative;
	width:76px;
	height:1.545em;
	min-height:17px;
	text-indent:-8000em;
	overflow:hidden;
	background:#fff url(../common/breadcrumbs_home.png) no-repeat left center;
}

#breadcrumbs ol li.home a{
	display:block;
	height:1.545em;	
}

#breadcrumbs ol li a{
	color:#468d0c;
	text-decoration:none;
}

#breadcrumbs ol li a:hover{
	text-decoration:underline;	
}

/* ----------------------------------------
Aside
---------------------------------------- */
#aside{
	padding-bottom:11px;
	border-top:6px solid #fff;
	float:right;
	width:220px;
}

#aside .framebox{
	margin-bottom:12px;
	background:url(../common/aside_frame_bg01.png) repeat-y left top;
	zoom:1;
}

#aside .framebox:last-child{
	margin-bottom:0;
}

#aside .framebox .inner{
	padding:0 20px 9px;
	background:url(../common/aside_frame_bg02.png) no-repeat left bottom;
	zoom:1;
}

#aside .roundedbox{
	margin:0 7px 16px;
	padding-bottom:5px;
	background:#fff url(../common/aside_rounded_bg01.png) no-repeat left bottom;
}

#aside .roundedbox:last-child{
	margin-bottom:0;
}

#aside .banner_list{
	text-align:center;
}

#aside .banner_list li{
	margin-bottom:7px;
}

#aside .banner_list li.far{
	margin-bottom:15px;
}

#aside .banner_list li:last-child{
	margin-bottom:0;
}

#aside .banner_list li a img{
	background-color:#fff;
}

#aside .local_nav{
	margin-bottom:16px;
	line-height:1.5;
}

#aside .local_nav h2{
	padding-top:27px;
	background:url(../common/aside_lnav_bg.png) no-repeat center top;
}

#aside .local_nav .inner{
	padding:0 10px 6px;
}

#aside .local_nav ul *{
	zoom:1;
}

#aside .local_nav ul li{
	border-bottom:1px solid #e7dab2;
	background-color:#fcf7e3;
	font-size:1.4em;
	font-weight:bold;
}

#aside .local_nav ul li:last-child{
	border-bottom:none;
}

#aside .local_nav ul li a{
	display:block;
}

#aside .local_nav ul li.single{
	background:url(../common/aside_lnav_lv1_bg.png) repeat-x left center;	
}

#aside .local_nav ul li.single a{
	padding:6px 8px 5px 31px;
	background:url(../common/aside_lnav_lv1_icn.png) no-repeat 13px 0.25em;
	text-decoration:none;
}

#aside .local_nav ul li.single a:hover{
	color:#f1490e;
	text-decoration:underline;
}

#aside .local_nav ul li.current a{
	padding:6px 8px 5px 31px;
	color:#212121;
	background:#ffeea2 url(../common/aside_lnav_lv1_icn_current.png) no-repeat 13px 0.25em;
	text-decoration:none;
}

#aside .local_nav ul li.parent-current{
	background:#ffeea2;
}

#aside .local_nav ul li .parent_ttl{
	background:url(../common/aside_lnav_lv1_bg.png) repeat-x left center;
	zoom:1;	
}

#aside .local_nav ul li .parent_ttl a{
	padding:6px 8px 5px 31px;
	color:#7f0019;
	background:url(../common/aside_lnav_lv1_icn.png) no-repeat 13px 0.25em;
	text-decoration:none;
}

#aside .local_nav ul li .parent_ttl a:hover{
	color:#f1490e;
	text-decoration:underline;
}

.fontsize_small #aside .local_nav ul li .parent_ttl a{
	background-position:13px 0.24em;
}

.fontsize_large #aside .local_nav ul li .parent_ttl a{
	background-position:13px 0.4em;
}

#aside .local_nav ul li.parent-current .parent_ttl{
	background-image:none;
}

#aside .local_nav ul li.parent-current .parent_ttl a{
	background-image:url(../common/aside_lnav_lv1_icn_parent_current.png);
}

#aside .local_nav ul li.parent-current .current a{
	color:#212121;
	text-decoration:none;
}

#aside .local_nav ul li .group_ttl{
	border-top:2px solid #fff;
	border-bottom:2px solid #fcf7e3;
	padding:4px 8px 3px 31px;
	background:#fdfaee url(../common/aside_lnav_lv1_icn_unlink.png) no-repeat 16px 0.37em;
	zoom:1;
}

#aside .local_nav ul li.parent-current ul,
#aside .local_nav ul li.parent ul{
	margin-left:6px;
	border-top:1px solid #e7dab2;
	border-left:1px solid #e7dab2;
}

#aside .local_nav ul li.parent-current ul li,
#aside .local_nav ul li.parent ul li{
	padding-bottom:1px;
	border-bottom:none;
	background:#fff url(../common/parts/dotline01.png) repeat-x left bottom;
	font-size:0.857em;
	font-weight:normal;
}

#aside .local_nav ul li.parent-current ul li:last-child,
#aside .local_nav ul li.parent ul li:last-child{
	background-image:none;
}

#aside .local_nav ul li.parent-current ul li a,
#aside .local_nav ul li.parent ul li a{
	padding:6px 8px 5px 24px;
	color:#7F0019;
	background:url(../common/aside_lnav_lv2_icn.png) no-repeat 10px 0.45em;
	text-decoration:underline;
}

#aside .local_nav ul li.parent-current ul li.current a,
#aside .local_nav ul li.parent ul li.current a,
#aside .local_nav ul li.parent-current ul li a:hover,
#aside .local_nav ul li.parent ul li a:hover{
	background-color:#ffffc3;
	background-image:url(../common/aside_lnav_lv2_icn_current.png);
}

#aside .local_nav ul li.parent-current ul li.current a,
#aside .local_nav ul li.parent ul li.current a{
	color:#212121;
	text-decoration:none;	
}


/* ----------------------------------------
Footer
---------------------------------------- */
#footer{
	margin-top:-175px;
	padding-top:44px;
	position:relative;
	max-width:100%;
	min-width:960px;
	height:131px;
	background:url(../common/footer_bg01.png) no-repeat center top;
}

#footer .inner{
	margin:0 auto;
	position:relative;
	width:960px;
}

#footer .return_top{
	position:absolute;
	left:588px;
	top:-63px;
}

.one_column #footer .return_top{
	left:773px;
}

#footer .banner_list{
	margin-bottom:12px;
	width:100%;
	overflow:hidden;	
}

#footer .banner_list ul{
	margin-right:-26px;
	overflow:hidden;
	zoom:1;
	background:url(../common/footer_bg02.png) no-repeat left bottom;
}

#footer .banner_list li{
	padding:0 26px 21px 0;
	float:left;
	width:220px;
}

#footer .copyright{
	float:left;
	color:#6b594a;
	font-size:1em;
}

#footer .subnav{
	border-right:1px solid #d3d4d9;
	float:right;
}

#footer .subnav li{
	padding:0 11px 0 24px;
	border-left:1px solid #d3d4d9;
	display:inline-block;
	*display:inline;
	line-height:16px;
	zoom:1;
	font-size:1em;
	background:url(../common/footer_bg03.png) no-repeat 13px center;
}