@charset "utf-8";


* {
	margin: 0;
	padding: 0;
	font-family: "メイリオ", sans-serif;
	font-size: 13px;
}



/*** Common Settings *************************************************/

body {
	background-image: url("../image/common/bg.png");
	background-repeat: repeat-x;
	color: #222;
}

p {

}

a {
	color: #27f;
	text-decoration: none;
	font-size: inherit;
}

a:hover {
	color: #f00;
	text-decoration: underline;
}

img {
	vertical-align: bottom; /* avoid bottom spasing of the image */
	border: none;
}

strong {
	font-weight: bold;
	font-size: inherit;
	color: #d32;
}

dd {
	text-indent: 1em;
}

table {
	border-collapse: collapse;
}


/*** Seneral Settings ***********************************************/

.center {
	text-align: center !important;
	color: red !important;
}

.smaller {
	font-size: 80% !important;
}


/*** ID: CONTAINER ***********************************************/

#CONTAINER {
	margin: 0 auto;
	width: 900px;
	background-color: #fff;
	border-left: solid 1px #ccc;
	border-right: solid 1px #ccc;

}


/*** ID: HEADER ***************************/

#HEADER {
	position:relative;
	height: 170px;

	background: url("../image/header/headerbg02.png");
	background-position: right;
	background-repeat: no-repeat;
}

#HEADER h1 {
	position: absolute;
	top: 26px;

}
#HEADER h1 a{

}
#HEADER h1 a:hover{

}
#HEADER h2 {
	display: block;
	position: absolute;
	top: 3px;
	left: 1px;
	color: #fff;
	font-size: 12px;
	font-weight: normal;
	text-shadow: 0px -1px 0px #d71;
	z-index: 2;
}



/*** ID: TOP_INDEX *************************************************/

#TOP_INDEX {
	display:block;
	position:relative;
	width:100%;
	height:24px;
	border-bottom: solid 1px #d81;
	background:#f93;
	color:#fff;

}

#TOP_INDEX li {
	display: block;
	list-style: none;
	float:left;
	padding-top:0.1em;
	padding-left:0.0em;
	padding-right:1em;
}


#TOP_INDEX li a{
	color:#fff;
	text-shadow:0px -1px 0px #d71;

}
#TOP_INDEX li a:hover{
	color :#fff;
	text-shadow: 0px -1px 0px #b60;
	text-decoration: none;
}
#TOP_INDEX li:first-child{
	margin-left: 500px;
}


/*** ID: TOP_SEARCH *************************************************/

#TOP_SEARCH{
	position: absolute;
	top: 2px;
	right: 3px;
	height: 22px;
	width: 205px;
	height: 22px;
}
#top_search_text{
	display: block;
	position: relative;
	float: left;
	background: #fff;
	width: 160px;
	height: 18px;
	font-size: 12px;
	border-top: solid 1px #d96;
	border-right: solid 1px #fc8;
	border-left:solid 1px #d96;
	border-bottom:solid 1px #fc8;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;

}
#top_search_submit{
	display: block;
	position: relative;
	float: left;
	margin-left: 3px;
	background: #eee;
	width: 36px;
	height: 20px;
	text-align: center;
	font-size: 12px;
	border-top: solid 1px #eee;
	border-left: solid 1px #eee;
	border-right: solid 1px #aaa;
	border-bottom: solid 1px #aaa;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}

/*** ID: TOP_SHORTCUT *************************************************/

#TOP_SHORTCUT{
	clear: left;
	list-style: none;
	width:290px;
	position: absolute;
	right: 10px;
	top: 36px;


}
#TOP_SHORTCUT li{
	float: left;

}
#TOP_SHORTCUT li a{
	display: block;
	width: 121px;
	height: 26px;
	font-size: 12px;
	padding-top: 8px;
	padding-left: 18px;
	background: url("../image/header/scbg0.png");
	background-positon: top;
	margin:2px;
	border-radius: 5px;
	-moz-border-radius:5px;
	color:#fff;
	text-shadow: 0px -1px 0px #666;

}
#TOP_SHORTCUT li a:hover{
	text-decoration: none;
	background-position: bottom;
}



/*** ID: MAIN_MENU *************************************************/

#MAIN_MENU {
	position: absolute;
	bottom: 0px;
	left: 0px;
}

#MAIN_MENU li {
	display: block;
	float: left;
	list-style: none;
}

#MAIN_MENU li a {
	display: block;
	width: 100px;
	height: 20px;
	padding: 10px 0;
	text-align: center;
	text-decoration: none;
	font-size: 12px;
	font-weight: normal;
	color: #555;
	background-image: url("../image/header/mnbg.png");
	background-repeat: no-repeat;
	background-position: bottom;
	border: 0;
	border-top: solid 1px #eee;
}

#MAIN_MENU li a:hover {
	color: #f00;
	background-position: top;
}

/*** ID: CONTENT *************************************************/

#CONTENT {
}

/*** ID: NAVIGATION *************************************************/

#NAVIGATION {
	clear: both;
	overflow: hidden;
	background-color: #eee;
	border-top: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
}

#NAVIGATION p {
	display: block;
	margin: 0;
	padding: 3px 16px;
}

#HIERARCHY {
	float: left;
}

#SETTING {
	float: right;
	text-align: right;
}

/*** ID: MAIN *************************************************/

#MAIN {
	float: left;
	width: 660px;
	padding: 0 10px 10px;
	background-color: #fff;
}

#MAIN h1 {
	display: block;
	width: 650px;
	height: 34px;
	margin: 16px 0 12px;
	padding: 3px 5px 7px;
	text-indent: 24px;
	font-size: 28px;
	font-weight: bold;
	background-image: url("../image/common/h1.png");
	background-repeat: no-repeat;
}

#MAIN h2 {
	display: block;
	width: 650px;
	height: 20px;
	margin: 24px 0 16px;
	padding: 2px 5px 8px;
	text-indent: 20px;
	font-size: 18px;
	font-weight: bold;
	background-image: url("../image/common/h2.png");
	background-repeat: no-repeat;
}

#MAIN h2.important {
	background-image: url("../image/common/h2_imp.png") !important;
}

#MAIN h3 {
	margin: 14px 0 10px;
	padding: 1px 0;
	text-indent: 10px;
	font-size: 14px;
	font-weight: bold;
	border-left: solid 10px #c33;
	border-bottom: solid 1px #c33;
}

#MAIN p {
	margin: 0.5em 5px;
	text-indent: 1em;
	line-height: 1.5em;
/* for CSS-3
	text-align: justify;
	text-justify: auto;
*/
}

#MAIN p.image {
	margin: 4px 0;
	text-indent: 0;
}

#MAIN ul {
	padding-left: 10px;
}

#MAIN ul li {
	margin: 8px 10px 8px 25px;
	list-style: circle url("../image/common/ul_li.png");
}

#MAIN ul li ul li {
	margin-left: 10px;
	list-style: circle url("../image/common/ul_li_small.png");
}

#MAIN ul li ol li {
	margin: 5px 10px 5px 10px;
	list-style: decimal;
}

#MAIN ol {
	padding-left: 10px;
}

#MAIN ol li {
	margin: 8px 10px 8px 30px;
	list-style: decimal;
}

#MAIN ol li ul li {
	margin-left: 10px; 
	list-style: circle url("../image/common/ul_li_small.png");
}

#MAIN ol li ol li {
	margin-left: 10px;
	list-style: lower-roman;
}

#MAIN ol li ol li ul li {
	margin-left: 10px;
	list-style: circle url("../image/common/ul_li_small.png");
}

#MAIN ol li ol li ul li ol li{
	margin-left: 10px;
	list-style: lower-alpha;
}

#MAIN table {
	width: 100%;
	margin: 6px auto;
	border-collapse: collapse;
}

#MAIN table.vertical {
}

#MAIN table.horizontal {
	border-top: solid 1px #e85;
	border-bottom: solid 1px silver;
}

#MAIN th {
	text-align: center;
	background: seashell;
	color: #e73;
	font-weight: bold;
}

#MAIN table.vertical th {
	padding-top: 3px;
	padding-bottom: 2px;
	padding-left: 0.8em;
	border: none;
	border-top: solid 1px #e85;
	border-bottom: dashed 1px silver;
	text-align: left;
}

#MAIN table.horizontal th {
	padding-top: 1px;
	padding-bottom: 1px;
	padding-right: 1em;
	border: none;
	border-right: solid 1px silver;
	border-bottom: dashed 1px silver;
	text-align: right;
}

#MAIN table.grid th.top {
	padding-top: 3px;
	padding-bottom: 2px;
	border: solid 1px silver;
	text-align: center;
}

#MAIN table.grid th.left {
	padding-top: 1px;
	padding-bottom: 1px;
	padding-right: 1em;
	border: solid 1px silver;
	text-align: right;
}

#MAIN table.grid th.lefttop {
	background: transparent;
	border: none;
}

#MAIN td {
	padding: 5px 4px;
	text-align: left;
}

#MAIN table.vertical td {
	border: dashed 1px silver;
	border-left: none;
	border-right: none;
}

#MAIN table.horizontal td {
	padding-left: 1em;
	border-bottom: dashed 1px silver;
}	

#MAIN table.grid td {
	border: solid 1px silver;
	text-align: center;
}

#MAIN a.bar {
	display: block;
	width: 440px;
	height: 45px;
	margin: 2px 0 2px;
	padding: 5px 5px 0px;
	text-indent: 40px;
	text-decoration: none;
	font-size: 24px;
	font-weight: bold;
	color: #000;
	background-image: url("../image/common/link_bar.png");
	background-repeat: no-repeat;
}

/*** ID: AD_SPACE *************************************************/

#AD_SPACE {
	height: 140px;
	margin: 16px 0;
	background: #fff url('../image/ad/loader.gif') no-repeat center center;
}

/*** ID: SIDE_MENU *************************************************/

#SIDE_MENU {
	float: left;
	width: 200px;
	padding: 10px;
	background-color: #fff;
}

#SIDE_MENU h3{
	background-image: url("../image/side/side_h2.png");
	background-repeat: repeat-y;
	padding-left: 11px;
	color: #333;
	margin-top: 14px;
	margin-bottom: 5px;

}

#SIDE_MENU ul {
	padding-left: 10px;
}

#SIDE_MENU ul li {
	margin: 10px;
	list-style: circle url("../image/common/ul_li.png") inside;
}

#SIDE_MENU ul li ul li {
	margin: 10px;
	list-style: circle url("../image/common/ul_li_small.png") inside;
}

#SIDE_MENU img {
	margin: 2px 0;
}

#SIDE_MENU a:hover>img {
	filter: alpha(opacity=85);
	opacity: 0.85;
}


/*** Calender (ID: SIDE_MENU) *************************************************/

#SIDE_MENU .calendar p {
	padding: 0;
	margin: 0;
	width: 100%;
	text-align: center;
}
#SIDE_MENU .calendar table {
	margin: auto;
	width: 100%;
	border-collapse: collapse;

}
#SIDE_MENU .calendar table tr {

}
#SIDE_MENU .calendar table th {
	width: 40px;
	padding: 0;
	line-height: 1.5em;
	background: #444;
	color: #fff;
	border: solid 1px #777;
	font-weight: normal;
	text-align: center;
}
#SIDE_MENU .calendar table td {
	width:auto;
	padding: 0;
	line-height: 2em;
	background: #fff;
	border:solid 1px #999;
	font-weight: normal;
	text-align: center;
}
#SIDE_MENU .calendar .holiday {
	background: #fde;
}
#SIDE_MENU .calendar .saturday {
	background: #def;
}
#SIDE_MENU .calendar .today {
	background: #f70;
	color: #fff;
	font-weight: bold;
}
#SIDE_MENU .calendar .today a {
	color: #fff!important;
}
#SIDE_MENU .calendar .disabled {
	color: #aaa;
}
#SIDE_MENU .calendar a {
	display: block;
	color: inherit;
	text-decoration: none;
	color: #000;
}
#SIDE_MENU .calendar a:hover {
	text-decoration: underline;
}

/*** ID: FOOTER *************************************************/

#FOOTER {
	clear: both;
	width: 880px;
	overflow: hidden;
	padding: 20px 10px;
	background-color: #eee;
	border-top: solid 1px #ccc;
}

#FOOTER p {
	margin: 10px 0;
	color: #888;
}


#FOOTER p.logo {
	display: inline;
	float: left;
	width: 123px;
	margin-right: 20px;
}

#FOOTER div.txt {
	display: inline;
	float: left;
}

#FOOTER div.txt .english {
	margin-bottom: 20px;
}