/*--------------------------------------------------------
a
--------------------------------------------------------*/

a { 
	text-decoration: none;
	color: #3333ff;
}

a:hover {
	text-decoration: underline;
}

/*--------------------------------------------------------
img
--------------------------------------------------------*/

img {
	border: none;
}

/*--------------------------------------------------------
p
--------------------------------------------------------*/

p {
	margin: 1em;
}

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

body {
	margin: 0;
	padding: 0;
	color: #333333;
}

/*--------------------------------------------------------
header_line
--------------------------------------------------------*/

#header_line {
	height: 10px;
	margin: 0;
	background: #0055a6 url('images/bg_header_line.gif') 0 0 repeat-x;
}

/*--------------------------------------------------------
header
--------------------------------------------------------*/

#header {
	width: 800px;
	height: 70px;
	margin: 0 auto;
}

#header_logo {
	width: 323px;
	height: 70px;
	float: left;
	margin: 0;
}

#header h1 {
	float: left;
	font-size: 12px;
	font-weight: normal;
	text-align: left;
	margin: 36px 20px 0;
	padding: 0;
}

/*--------------------------------------------------------
global_navi
--------------------------------------------------------*/

#global_navi {
	height: 40px;
	margin: 0 auto;
	background: #c7cee1 url('images/bg_global_navi.gif') repeat-x;
	clear: both;
}

#global_navi_contents {
	width: 800px;
	height: 40px;
	margin: 0 auto;
	padding: 0;
	font-size: 13px;
}

#global_navi_contents ul {
	margin: 0;
	padding: 0;
	width: 800px;
	height: 40px;
	overflow: hidden;
	background: #c7cee1 url('images/bg_global_navi_contents.gif');
}

#global_navi_contents li {
	list-style: none;
	width: 133px;
	float: left;
}

#global_navi_contents li a {
	display: block;
	line-height: 40px;
	text-align: center;
	font-weight: bold;
	color: #000000;
}

#global_navi_contents li.global_navi_contents_sta a:hover {
	background: #eeeeee url('images/bg_global_navi_contents_sta.gif');
}

#global_navi_contents li.global_navi_contents_mid a:hover {
	background: #eeeeee url('images/bg_global_navi_contents_mid.gif');
}

#global_navi_contents li.global_navi_contents_fin a:hover {
	background: #eeeeee url('images/bg_global_navi_contents_fin.gif');
}

/*--------------------------------------------------------
header banner
--------------------------------------------------------*/

#header_banner{
	clear: both;
	margin: 10px auto;
	width: 800px;
	height: 300px;
}

/*--------------------------------------------------------
topic_pass
--------------------------------------------------------*/

#topic_pass {
	line-height: 20px;
	margin: 4px auto;
	font-size: 12px;
	width: 800px;
}

/*--------------------------------------------------------
container
--------------------------------------------------------*/

#container {
	width: 800px;
	margin: 0 auto;
	background: #ffffff url('images/bg_container.gif') 0 0 repeat-y;
}

/*--------------------------------------------------------
main
--------------------------------------------------------*/

#main {
	float: left;
	width: 546px;
	margin: 0;
	font-size: 90%;
}

#main h2 {
	margin: 0;
	padding: 0;
}

#contents {
	margin: 0;
	padding: 10px;
}

#contents h3 {
	margin: 0 0 10px;
	padding: 13px 0 11px 20px;
	clear: both;
	background: #ffffff url('images/bg_h3.gif') no-repeat;
}

.r_link {
	float: right;
	margin: 0 0 30px 0;
	padding: 0 0 0 20px;
	font-weight: bold;
}

.r_link a {
	margin: 0 10px 0 0;
	padding: 0 0 0 20px;
	background: url('images/arrow_a.gif') no-repeat left 0;
}

.l_link {
	float: left;
	margin: 0 0 10px 0;
	padding: 0 0 0 20px;
	font-weight: bold;
}

.l_link a {
	margin: 0 10px 0 0;
	padding: 0 0 0 20px;
	background: url('images/arrow_a.gif') no-repeat left 0;
}

.deco1 {
	margin: 0 20px 20px 30px;
}

.deco2 {
	margin: 0 20px 20px 0;
}

.a_link {
	font-weight: bold;
}

.a_link a {
	margin: 0 10px 0 0;
	padding: 0 0 0 20px;
	background: url('images/arrow_a.gif') no-repeat left 0;
}

.youtube {
	margin: 10px 10px 30px;
	padding: 0;
	float: left;
}

.sougo_link {
	margin: 10px 20px 20px;
	line-height: 1.2em;
}

.sougo_link_title {
	font-weight: bold;
	font-size: 130%;
}

.sougo_link_management {
	text-align: right;
}

.sougo_link_management a {
	font-size: 70%;
	color: #bbbbbb;
}

/*--ul li--*/

ul.main {
	width: 556px;
	margin: 0 0 30px;
	padding: 0;
	list-style: none;
}

.main li {
	float: left;
	margin: 0;
	padding: 0 0 0 20px;
	width: 240px;
	background: url('images/arrow_a.gif') no-repeat left 3px;
	line-height: 1.6em;
}

ul.address {
	margin: 0 20px 30px;
	padding: 0;
	list-style: none;
}

.address li {
	float: left;
	margin: 0;
	padding: 0 10px;
	border-left: 1px solid #333333;
	line-height: 1.2em;
}

/*--table--*/

.top_table {
	margin: 0 0 10px;
	padding: 0;
	font-size: 13px;
}

.list_date {
    margin: 0;
	padding: 0 0 20px;
}

.list_date table {
    width: 261px;
}

.list_date th {
	padding: 0 0 0 20px;
    text-align: left;
    line-height: 1.6em;
    background: url('images/arrow_a.gif') no-repeat left 2px;
}

#review {
	margin-bottom: 30px;
}

#review table {
	margin: 10px 10px 0;
	border-bottom: 1px dotted #cccccc;
}

#review table th,
#review table td {
	font-size: 13px;
	line-height: 1.2em;
}

#review table th.review_image {
	padding: 10px;
	text-align: center;
}

#review table th.review_site {
	text-align: left;
	font-weight: normal;
	padding: 10px 0 0 0;
	color: #a7a7a7;
}

#review table th.review_text {
	text-align: left;
	font-weight: normal;
	padding: 10px 10px 0 0;
}

#review table td {
	text-align: right;
	padding: 0 10px 10px 0;
}

#info {
	margin: 0 0 30px 30px;
}

#info dl {
	line-height: 20px;
}

#info dt {
	font-weight: bold;
}


/*--------------------------------------------------------
back_pagetop
--------------------------------------------------------*/

#back_pagetop {
	float: right;
	margin: 0 10px 60px 30px;
	overflow: hidden;
	font-size: 12px;
}

/*--------------------------------------------------------
side
--------------------------------------------------------*/

#side {
	float: right;
	width: 244px;
	margin: 0 0 0 10px;
	background: #eeeeee url('images/bg_side.gif') repeat-y;
}

#side ul {
	width: 244px;
	margin: 0;
	padding: 0;
	list-style: none;
}

#side li {
	margin: 0 auto 5px;
	padding: 0;
	display: block;
}

#side_navi {
	width: 234px;
	margin: 10px auto 5px;
	padding: 0;
}

#side_navi dl {
	margin: 0;
	padding: 10px;
	overflow: auto;
	width: 212px;
	height: 184px;
	border: 1px solid #dddddd;
	background-color: #ffffff;
}

#side_navi dt {
	margin: 0 0 10px 0;
	padding: 0;
	font-weight: bold;
	border-bottom: 1px solid #000000;
}

#side_navi dd {
	margin: 0 5px 5px;
	padding: 0;
	font-size: 90%;
}

#side_navi ul {
	width: 234px;
	margin: 0 auto;
	padding: 0;
	list-style: none;
}

#side_navi ul li {
	margin: 0 auto 5px;
	padding: 0 0 0 20px;
	display: block;
	background: #ffffff url('images/bg_side_navi.gif');
	line-height: 38px;
	font-size: 90%;
	font-weight: bold;
}

#side_navi ul li a {
	color: #000000;
}

#side_navi ul.menu_guide {
	width: 214px;
	margin: 10px auto;
	padding: 5px 10px;
	background-color: #ffffff;
}

#side_navi ul.menu_guide li {
	margin: 5px 0;
	padding: 0;
	background: #c5dcf8;
	font-size: 90%;
	border: 1px solid #dddddd;
}

#side_navi ul.menu_guide li a {
	margin: 0;
	padding: 0 10px 0 20px;
	background: #ecf3fd url('images/arrow_b.gif') no-repeat left 10px;
	display: block;
	font-weight: normal;
}

#side_navi ul.menu_guide li a:hover {
	margin: 0;
	padding: 0 10px 0 20px;
	background: #f8f8f8 url('images/arrow_b.gif') no-repeat left 10px;
}

.side_block {
	width: 234px;
	margin: 10px auto 5px;
	padding: 0;
}

#tag_cloud {
	margin: 10px auto;
	padding: 10px;
	font-size: 12px;
	background-color: #ffffff;
	border: 1px solid #dddddd;
}

.right { text-align: right; }

/*--------------------------------------------------------
footer
--------------------------------------------------------*/

#footer {
	margin: 30px auto 10px;
	border-top: 3px double #004484;
	clear: both;
}

#footer_contents {
	width: 800px;
	margin: 0 auto;
}

#footer_navi {
	margin: 20px 0;
}

#footer ul {
	margin: 0 0 0 5px;
	padding: 0;
	list-style: none;
}

#footer li {
	float: left;
	margin: 0;
	padding: 0 16px 0 18px;
	background: url('images/arrow_b.gif') no-repeat left 2px;
	line-height: 1.6em;
	font-size: 80%;
}

#footer li a {
	color: #000000;
}

#footer_copyright {
	clear: both;
	margin: 20px 0 20px 5px;
}

/*------------------------------------------------------------
hr
-------------------------------------------------------------*/

hr {
	margin: 0;
	padding: 0;
	clear: both;
}

hr.contents_sta {
	margin-bottom: 5px;
	height: 5px;
    background: #b8890a url('images/bg_hr_contents_sta.gif') repeat-x;
    border: 0px none;
}

hr.contents_mid {
	height: 3px;
    background: #c6a733 url('images/bg_hr_contents_mid.gif') repeat-x;
    border: 0px none;
}

hr.contents_mid2 {
    border: 1px dotted #dddddd;
}

hr.main_contents_fin {
	margin-top: 200px;
	height: 5px;
    background: #b8890a url('images/bg_hr_contents_fin.gif') repeat-x;
    border: 0px none;
}

hr.side_contents_fin {
	height: 5px;
    background: #b8890a url('images/bg_hr_contents_fin.gif') repeat-x;
    border: 0px none;
}

/*------------------------------------------------------------
clear
-------------------------------------------------------------*/

.clear {
	clear: both;
}

.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: left;
	visibility: hidden;
}
.clearfix {
	min-height: 1px;
}
