@charset "Shift_JIS";



/* -----------------------------------------------

                top level structure

   ----------------------------------------------- */





/* =========== primitive blocks =========== */



html,

body {

	margin: 0;

	padding: 0;

}



body {

	background-image: url(../img/bg_body_001.png);

	background-repeat: repeat-x;

	background-position: top left;

}







/* =========== accessibility issue =========== */



#aside-area h2,

#footer-area h2 {

	position: absolute;

	left: 0;

	top: 0;

	overflow: hidden;

	width: 0;

	height: 0;

	font-size: 0;

	color: white;

	background: white;

}





/* =========== structure blocks =========== */



div.structure {

	display: block;

	margin: 0;

	padding: 0;

	text-align: left;

	line-height: 1;

}







/* =========== header area =========== */



#header-area {

	overflow: hidden;

	/* position: relative; */

	height: 164px;

	border-bottom: 1px solid #808080;

	background-color: transparent;

	background-image: url(../img/bg_header-area_001.png);

	background-repeat: no-repeat;

	background-position: top left;

}



#header-area h1 {

	position: relative;

	z-index: 2;

	margin: 0;

	padding: 44px 0 7px 16px;

	line-height: 1;

}



#header-area h1 img {

	vertical-align: top;

}



#header-area h1 a:link,

#header-area h1 a:visited,

#header-area h1 a:hover,

#header-area h1 a:active {

	background: none;

}



#header-area div.pseudo-after {

	position: absolute;

	top: 0;

	right: 0;

	width: 244px;

	height: 165px;

	background-image: url(../img/bg_header-area_002.png);

	background-repeat: no-repeat;

	background-position: top right;

}







/* =========== aside area =========== */



#aside-area {

	float: left;

	width: 158px;

	min-height: 325px;   /* workaround to Safari */

	padding: 14px;

	_width: 187px;       /* ~WinIE6 */

	_height: 184px;      /* ~WinIE6 */

	border-right: 1px solid #808080;

	background-image: url(../img/bg_header-area_001.png);

	background-repeat: no-repeat;

	background-position: 0px -165px;

}





/* ----- site navigation ----- */



#site-navigation,

#site-navigation ul,

#site-navigation li {

	display: block;

	list-style: none;

	margin: 0;

	padding: 0;

	line-height: 1;

}



#site-navigation {

}



#site-navigation ul {

	padding-top: 1px;

	background-image: url(../img/line_site-navigation_001.png);

	background-position: top left;

	background-repeat: repeat-y;

}



#site-navigation ul li {

	margin-top: 1em;

	padding-left: 21px;

	background-image: url(../img/line_site-navigation_002.png);

	background-position: 0 0.4em;

	background-repeat: no-repeat;

}



/* #site-navigation ul li:last-child */

#site-navigation ul li.pseudo-last-child {

	background-image: url(../img/line_site-navigation_003.png);

}



#site-navigation a {

	padding: 2px;

}



#site-navigation a:link {

	color: #ffffff;

	background: #3366cc;

	text-decoration: none;

}



#site-navigation a:visited {

	color: #ffffff;

	background: #667799;

	text-decoration: none;

}



#site-navigation a:hover {

	color: #ffffff;

	background: #000000;

	text-decoration: none;

}



#site-navigation a:focus,

#site-navigation a:active {

	color: #ffff00;

	background: #000000;

	text-decoration: none;

}



#site-navigation em {

	padding: 2px;

}



#site-navigation a em {

	padding: 0;

}







/* =========== content area =========== */



#content-area {

	*position: relative; /* ~WinIE7 */

	*left: -1px;         /*  WinIE7 */

	_left: -4px;         /* ~WinIE6 */

	*margin-right: -1px; /*  WinIE7 */

	_margin-right: -4px; /* ~WinIE6 */

	_zoom: 1;            /* ~WinIE6 */

	margin-left: 186px;

	border-left: 1px solid #808080;

	background-color: white;

}





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



#content-title {

	margin-bottom: 1.5em;

	background-image: url(../img/bg_content-area_001.png);

	background-repeat: repeat-x;

	background-position: 0 0;

}



#content-title h1,

#content-title div.category-indicate {

	min-height: 97px;

	_height: 210px;      /* ~WinIE6 */

	margin: 0;

	padding: 113px 0 0;

	background-image: url(../img/bg_content-area_002.jpg);

	background-repeat: no-repeat;

	background-position: 0 0;

}



#content-title h1 img,

#content-title div.category-indicate img {

	position: relative;

	z-index: 2;

	display: block;

	margin: 0;

	padding: 0;

	border: none;

	vertical-align: top;

}



body.terminus-page #content-title {

	margin-bottom: 1em;

	background-image: url(../img/bg_content-area_003.png);

}



body.terminus-page #content-title div.category-indicate {

	min-height: 47px;

	_height: 65px;      /* ~WinIE6 */

	margin-bottom: 3em;

	padding-top: 18px;

	background-image: url(../img/bg_content-area_004.jpg);

}



body.terminus-page #content-title h1 {

	_width: 100%;      /* ~WinIE6 */

	height: auto;

	min-height: 0;

	margin: 0 40px;

	padding: 0 0 0.25em;

	border-bottom: 3px solid #808080;

	color: black;

	background: none;

	font-size: 171%;

	line-height: 1.25;

}



body.terminus-page #content-title h1 span.sub {

	display: block;

	line-height: 1;

	font-size: 58%;

	font-weight: normal;

}





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



#content-body {

	padding-left: 40px;

	padding-right: 40px;

	padding-bottom: 4em;

}







/* =========== footer area =========== */



#footer-area {

	*zoom: 1;     /* ~WinIE7 */

	clear: both;

	border-top: 1px solid #808080;

	border-bottom: 1px solid #808080;

	padding: 0.5em 1em;

}





/* ----- credit ----- */



#footer-area address {

	margin: 0;

}



#footer-area ul,

#footer-area ul li {

	display: block;

	list-style: none;

	margin: 0;

	padding: 0;

	

}

	
