@charset "utf-8";

/* CSS Hacks
--------------------------------------------------*/

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

.clearfix,
dl,dt {display: inline-block;}

/* Hides from IE-mac \*/
* html .clearfix,
* html dl,
* html dt {height: 1%;}

.clearfix,
dl,
dt {display: block;}
/* End hide from IE-mac */

.hide {
	height: 0;
	width: 0;
	overflow: hidden;
	padding: 0;
	margin: 0;
	position: absolute; /* for benefit of IE5 Mac */
}

/* qTranslate Override
--------------------------------------------------*/

#sub-content ul.qtrans_language_chooser {
	position: absolute;
	display: block;
	top:-1px;
	right:0px;
	padding: 0 0 0 0;
	margin: 0;
	list-style-type:none;
	z-index: 10;

}


.qtrans_widget_end {
	display: none;
}
#sub-content ul.qtrans_language_chooser li {
	display: inline;
	margin: 0 10px 0 5px;
	padding: 6px 0 0 0;
	font-size: 82.5%;
	line-height: 1.2;
	position: relative;

	float:left;
}


#sub-content ul.qtrans_language_chooser li a {
	margin: 0px 0 0 0;
	padding:0 0 0 18px;
	background-repeat: no-repeat;
	display: inline-block;
}

#sub-content ul.qtrans_language_chooser li a.qtrans_flag_ja {
	background-image: url(../images/flag_ja.gif) !important;
	background-position: 0px -13px;
	
}

#sub-content ul.qtrans_language_chooser li a.qtrans_flag_en {
	background-image: url(../images/flag_en.gif) !important;
	background-position: 0px -13px;
}
#sub-content ul.qtrans_language_chooser li.active {
	background-image: url(../images/qtrans_active_bg.gif);
	background-repeat: no-repeat;
	background-position: 1px 0px;
	z-index: 100;

}



#sub-content ul.qtrans_language_chooser li a {
	color:#7d7a6a;
}

#sub-content ul.qtrans_language_chooser li a:hover {
	color:#530a11;
	text-decoration: none;
}

#sub-content ul.qtrans_language_chooser li.active a {
	background-position: 0px 0px;
}

#sub-content ul.qtrans_language_chooser li.active a span {
	color: #810519;
}

#sub-content ul.qtrans_language_chooser li.active a:hover {
	text-decoration: none;
	cursor: default;
}



/* Common Tags
--------------------------------------------------*/

html {
	height: 100%;
}

body {
	background-color: #e4e1c1;
	background-image: url(../images/body_bg.gif);
	background-position: top left;
	background-repeat: repeat-x;
	background-attachment: fixed;
	margin: 0 0 0 0;
	height: 95%;
	padding: 0;
	font-family: "ヒラギノ明朝 Pro W3","Hiragino Mincho Pro",Osaka,"メイリオ",Meiryo,"ＭＳ Ｐ明朝", serif;
	color: #433f27;
	font-size: 16px;
	line-height: 1.6;
}

* html body { /* ie6 */
	font-size: medium;
	font-family: "ＭＳ Ｐ明朝", serif;	
}

img {
	border:0;
}

/* img,
div,
a {
	behavior: url(iepngfix.htc);
} iepngfix */



hr {
	display: none;
}

a {
	color: #08568c;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

a.more-link + img  {

	width: 0px;
	height: 16px;
	background-image: url(../images/ajax-loader.gif);
	background-position: left top;
	background-repeat: no-repeat;
	clip: rect(16px, 16px, 0, 0);
	padding-left: 16px;
	overflow: hidden;
	vertical-align: middle;
}


/* Common Classes
--------------------------------------------------*/
img.left {
	float:left;
	margin:3px 10px 10px 0;
}

img.right {
	float:right;
	margin:3px 0 10px 15px;
}

img.right.wide {
	float:right;
	margin:3px 15px 5px 25px;
}


.imgs {
	display: block;
}

.imgs.left {
	float: left;
	margin:3px 10px 10px 0;
}

.imgs.right {
	float: right;
	margin:3px 0 10px 10px;
}

.imgs img {
	display:block;
}

img.center {
	display: block;
	margin: 0 auto;
}

div.center {
	text-align: center;
}

h4 span.en,
dt span.en {
	font-size: smaller;
	margin-left: 0.5em;
}

h4 span.en {
	color: #6c5554;	
}

dt span.en {
	color: #807c64;	
}

/* Begin Images */
p img {
	padding: 0;
	max-width: 100%;
	}

/*	Using 'class="alignright"' on an image will (who would've
	thought?!) align the image to the right. And using 'class="centered',
	will of course center the image. This is much better than using
	align="center", being much more futureproof (and valid) */

img.centered {
	display: block;
	margin-left: auto;
	margin-right: auto;
	}

img.alignright {
	padding: 4px;
	margin: 0 0 2px 7px;
	display: inline;
	}

img.alignleft {
	padding: 4px;
	margin: 0 7px 2px 0;
	display: inline;
	}

.alignright {
	float: right;
	}

.alignleft {
	float: left
	}
/* End Images */

/* Layout
--------------------------------------------------*/

#wrapper {
	width:980px;
	margin: 0 auto 0 auto;
	overflow: hidden;
}

#header {
	border: solid 1px #d3d0b2;
	border-width: 1px 0;
	position: relative;
	margin-top: 1.5em;
	padding: 13px 0 13px 0;
	zoom: 1;
	
}

#header h1 {
	margin: -51px 0 0 0;
	padding: 0;
	position: absolute;
	top:50%;
	left:0px;
	z-index: 6;
}

#header h1 a {
	display: block;
	top:0;
	left:0;
	width: 263px;
	height: 88px;
	background-image: url(../images/h1_flare.png);
	background-repeat: no-repeat;
	background-position: 0 0;
}

.home #header h1 a {
	cursor: default;
}

/*
#header h1 a:hover img {
	display: none;
}*/


#gnav ul,
#snav ul {
	display: block;
	position: relative;
	padding: 0 5px 0 0;
	margin: 0;
	list-style-type: none;
	text-align: right;

}

#gnav ul {
	margin:0 0 0 auto;
	padding-right: 7px;
	
	font-weight: bold;
	font-size: 81.25%;
	line-height: 1;
	letter-spacing: 1px;
	word-spacing: 0px;
	text-transform: uppercase;
	position: relative;
	z-index: 5;
}

#wrapper.en #gnav ul {
	font-family: "Times New Roman", serif;
}

.en #gnav ul {
	letter-spacing: 0;
}

#snav {
	margin: 0 3px 0 auto;
	position: absolute;
	font-size: 62.5%;
	line-height: 1;
	letter-spacing: 0;
	word-spacing: 0px;
	text-transform: uppercase;
	top:-1.7em;
	right:0;	
}


#snav ul {
	float:right;
}

#snav.search ul {
	margin-right:155px;
}

* html #snav.search ul {
	margin-right:0;
	right:155px;
}

#gnav ul li a,
#snav ul li a {
	text-decoration: none;
	white-space:nowrap; 
}

#gnav ul li {
	display: inline;
	margin: 0 0 0 2em;
	padding: 0;	
}

#snav ul li {
	display: inline;
	margin-left: 1.75em;	
	
}



#gnav ul li a,
#snav ul li a {
	color:#958a4b;
	
}

#gnav ul li a:hover,
#snav ul li a:hover {
	color:#530a11
}

#gnav ul li.current_page_item a,
#gnav ul li.current_page_item a:hover,
#gnav ul li.current_page_ancestor a,
#gnav ul li.current_page_ancestor a:hover,
#snav ul li.current_page_item a,
#snav ul li.current_page_item a:hover,
#snav ul li.current_page_ancestor a,
#snav ul li.current_page_ancestor a:hover {
	color: #810519;
	font-weight: bold;
	cursor: default;
}


form#header-searchform {
	display: inline;
}

form#header-searchform label {
	color:#958a4b;
	cursor: pointer;
}

form#header-searchform label:hover {
	color:#530a11
}

#header-searchform-content {
	display: none;
	position: absolute;
	top:-5px;
	right:0;
	zoom:1;
}


#snav.search #header-searchform-content {
	display: block;
	right:-155px;
}

* html #snav.search #header-searchform-content {
	right:-155px;

}

form#header-searchform #s {
	position: relative;
	z-index: 1;
	display: inline;
	border: solid 1px #d3d0b2;
	line-height: 1;
	margin: 0 -1px 0 0;
	padding: 1px;
	width: 115px;
	height: 14px;
	font-size: 11px;
	overflow: hidden;
	vertical-align: middle;
}

form#header-searchform #header-searchform-submit {
	position: relative;
	z-index: 0;
	display: inline;
	padding: 1px 4px;
	margin: 0;
	border: solid 1px #d3d0b2;
	text-transform: uppercase;
	text-indent: -9999px;
	color: #e6d6d6;
	font-size: 11px;
	line-height: 1;
	height: 18px;
	width: 30px;
	overflow: hidden;
	background-color: #f8f7ed;
	cursor: pointer;
	background-image: url(../images/header-search-submit.gif);
	background-position:center center;
	vertical-align: middle;
}




#content {
	position: relative;
	margin: 18px 0 10px 0;
	
	/*background-image: url(../images/content_bg.gif);
	background-repeat: repeat-y;
	background-position: left top;*/
}

#main {
	width: 100%; /*725px;*/
	background-color: white;
}


#sub h2 {
	margin: 5px;
	font-size: 75%;
	color: #c1bb89;
}

#main {
	min-height: 484px;
	height: 100%;
}

* html #main {
	height: 500px;
}

/* Footer
--------------------------------------------------*/

#footer {
	clear: both;
	border-top:solid 1px #c1bb89;
	padding-top: 8px;
	padding-bottom: 5px;
	margin: 0;
	font-size: 62.5%;
	line-height: 1;
	position: relative;
}

#footer ul#fnav {
	position: relative;
	float:left;
	display: block;
	margin: 0 0 0 0;
	padding: 0 0 0 5px;
	list-style-type: none;
}

#footer ul#fnav li {
	margin: 0 1em 0 0;
	padding: 0 1em 0 0;
	border-right: solid 1px #c1bb89;
	display: inline;
}

#footer address {
	position: relative;
	float:left;
	margin: 0 0 0 0;
	padding: 0;
	font-style: normal;
}

#footer a {
	text-decoration: none;
	color: #433f27;
	margin: 0;
	padding: 0;
}

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

/* Path
--------------------------------------------------*/

#path {
	border-top-color: #eed;
	border-top-width: 1px;
	border-top-style: solid;
}
#path p.breadcrumb {
	float:left;
	font-size: 68.75%;
	line-height: 1.6;
	padding: 7px 10px;
	margin: 0;
	width:70%;
	color: #7D7A6A;
}

#path p.breadcrumb a {
	color:#08568c;
	text-decoration: none;
	
}

#path p.breadcrumb a:hover {
	color:#08568c;
	text-decoration: underline;
}

#path p.backtotop {
	padding: 7px 10px;
	font-size: 68.75%;
	line-height: 1.6;
	margin: 0;
	float:right;
	width: 20%;
	text-align: right;
}

#path p.backtotop a {
	color: #08568c;
	text-decoration: none;
	padding-right: 8px;
	background-image: url(../images/backtotop.gif);
	background-position: right center;
	background-repeat: no-repeat;
}

#path p.backtotop a:hover {
	text-decoration: underline;
}





