@charset "utf-8";

body {
	margin: 0;
	padding: 0;
	background: #eee url(../images/common/background.gif) repeat-x 0 0;
	color: #000;
	font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", sans-serif;
	font-size: .9em;
	line-height: 1.4;
}

a { color: #060; }
a:hover { text-decoration: none; }

img {
	border-width: 0;
	vertical-align: top;
}
ol,
ul { margin-left: 0; }
ol { padding-left: 2em; }
ul { padding-left: 1.5em; }

/*
 * structure
 */
#container {
	width: 820px;
	margin: 0 auto;
	background: transparent url(../images/common/container.gif) repeat-y 0 0;
}
#container-top {
	width: 820px;
	background: transparent url(../images/common/container_top.gif) no-repeat 0 0;
}
#container-bottom {
	padding: 0 10px 20px;
	background: transparent url(../images/common/container_bottom.gif) no-repeat 0 100%;
}

#header {
	position: relative;
	height: 50px;
}
#logo {
	position: absolute;
	top: 20px;
	left: 30px;
	height: 20px;
	margin: 0;
}

#main-menu {
	height: 35px;
	margin: 0;
	padding: 0 20px;
	background-color: #eee;
}
#main-menu li {
	list-style-type: none;
	float: left;
	width: 140px;
	height: 35px;
	background: transparent url(../images/menu/tab.gif) no-repeat 0 0;
	text-align: center;
}
#main-menu li span,
#main-menu li a {
	display: block;
	margin: 5px 2px 0;
}

#content { margin: 20px 20px 10px; }

#main-column {
	float: left;
	width: 500px;
}
#sub-column {
	float: right;
	width: 240px;
}
.left-column {
	float: left;
	width: 370px;
}
.right-column {
	float: right;
	width: 370px;
}

#sub-menu {
	margin: 0 20px;
	padding-bottom: .5em;
	border-bottom: 1px solid #ccc;
	font-size: .9em;
	text-align: center;
}
#sub-menu a { color: #000; }

#copyright {
	margin: 0;
	text-align: center;
}

/*
 * general
 */
.clearfix { display: inline-block; }
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
/* Hides from IE-mac \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/* End hide from IE-mac */

.invisible { display: none; }

.heading1 {
	margin: 0 0 1em;
	padding-left: 30px;
	border-bottom: 1px solid #ccc;
	background: transparent url(../images/common/heading1_icon.gif) no-repeat 5px 50%;
	color: #030;
	font-size: 1.2em;
}
.heading2 {
	margin: 0 0 .5em;
	padding-left: 25px;
	border-bottom: 1px solid #ccc;
	background: /*#98ca66*/#c3e5a1 url(../images/common/heading2_icon.gif) no-repeat 5px 50%;
	font-size: 1em;
	font-weight: normal;
}

.to-top {
	margin: .5em 0;
	height: 20px;
	background: transparent url(../images/common/gray_border.gif) repeat-x 0 100%;
	text-align: right;
}

.rcolumn-ltop {
	margin-bottom: 10px;
	background: transparent url(../images/common/rcolumn_ltop.gif) no-repeat 0 0;
}
.rcolumn-rtop { background: transparent url(../images/common/rcolumn_rtop.gif) no-repeat 100% 0; }
.rcolumn-lbottom { background: transparent url(../images/common/rcolumn_lbottom.gif) no-repeat 0 100%; }
.rcolumn-rbottom { 
	padding: 5px 0;
	background: transparent url(../images/common/rcolumn_rbottom.gif) no-repeat 100% 100%;
}
.rcolumn {
	padding: 5px 10px;
	border-right: 1px solid #ccc;
	border-left: 1px solid #ccc;
	background-color: #eee;
}
.rcolumn p,
.rcolumn ol,
.rcolumn ul { margin: .5em 0 0; }

.list li {
	padding-bottom: .5em;
	line-height: 1.2;
}
ul.list li { list-style-type: square; }

hr.separator {
	height: 1px;
	border-width: 0;
	background-color: #ccc;
}

.right { text-align: right; }
.center { text-align: center; }
.left { text-align: left; }

.small { font-size: .9em; }
.large { font-size: 1.2em; }
.pad { padding: 10px; }
.bold { font-weight: bold; }
.red { color: #f00; }

