@charset "shift_jis";

/* ----- Copyright (C) smart-insight Corporation. ----- */


/* =========================================================
Reset of Default Style
========================================================= */
* {
	margin: 0;
	padding: 0;
} 

h1, h2, h3, h4, h5, h6, p, address,
ul, ol, li, dl, dt, dd,
table, th, td, img, form {
	margin: 0;
	padding: 0;
	border: none;
	list-style-type: none;
	font-style: normal;
	font-weight: normal;
	font-size: 100%;
	text-align: left;
	border-collapse: collapse;
}
img { 
	vertical-align: text-bottom;
}

/* =========================================================
Text Link
========================================================= */
a:link    { color: #0000FF; text-decoration: underline; }
a:visited { color: #660099; text-decoration: underline; }

.link_list {
	padding-left: 15px;
	background: url(../images/link_list.gif) no-repeat center left;
}
.link_blank {
	padding-left: 15px;
	background: url(../images/link_blank.gif) no-repeat center left;
}
.link_mail {
	padding-left: 15px;
	background: url(../images/link_mail.gif) no-repeat center left;
}

/* =========================================================
Clearfix
========================================================= */

html, body, #wrap {
	height: 100%;
}

body > #wrap {
	height: auto;
}

#main {
	padding-bottom: 160px;
}

#footer {
	position: relative;
	margin-top: -160px;
	height: 160px;
	clear:both;
}

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

html, body {
	margin: 0 auto;
	text-align: center;
	color: #666666;
	font-size: 14px;
	*font-size: small;
	*font: x-small;
	line-height: 1.3;
	letter-spacing: 1px;
	background-color: #FFFFFF;
}
#wrap, #main {
	margin: 0 auto;
	text-align: left;
	background-color: #F2F2F2;
}

/*===================================================
Header
===================================================*/
div#header {
	margin: 0 auto;
	text-align: center;
	background: #FFFFFF url(../images/bg_header.gif) repeat-x bottom left;
}
div#header_inner {
	position: relative;
	width: 760px;
	height: 100px;
	margin: 0 auto;
	text-align: left;
}

/* H1 */
h1 {
	position: absolute;
	top: 5px;
	left: 0;
	width: 260px;
	height: 90px;
	background: url(../images/logo.gif) no-repeat 0 0;
	text-indent: -9999px;
	font-size: 0;
}
h1 a {
	display: block;
	height: 95px;
}

/* Fontsize */
p#fontsize {
	position: absolute;
	top: 10px;
	left: 280px;
	width: 460px;
	height: 25px;
}

/* Japanese */
p#japanese {
	position: absolute;
	top: 10px;
	left: 670px;
	width: 110px;
	height: 24px;
}

/* Sitemap */
p#sitemap {
	position: absolute;
	top: 10px;
	left: 670px;
	width: 110px;
	height: 24px;
}

p#sitemapIndex {
	position: absolute;
	top: 10px;
	left: 570px;
	width: 110px;
	height: 24px;
}


/* Search */
form#search {
	position: absolute;
	top: 40px;
	left: 280px;
	width: 460px;
	height: 25px;
	padding-left: 20px;
	background: url(../images/bg_search.gif) no-repeat center left;
}

/* Navi */
ul#navi {
	position: absolute;
	top: 70px;
	left: 280px;
	width: 460px;
	height: 30px;
	display: inline;
}
ul#navi li {
	float: left;
	margin: 0;
	text-align: left;
}
ul#navi li a {
	padding: 0 15px;
	text-decoration: none;
	background: url(../images/link_list.gif) no-repeat center left;
}
ul#navi li a:hover {
	text-decoration: underline;
}

/* Subnavi */
div#subnavi {
	margin: 0 auto;
	text-align: center;
	height: 35px;
	background: url(../images/bg_subnavi.gif) repeat-x 0 0;
}
div#subnavi_inner {
	position: relative;
	width: 760px;
	height: 35px;
	margin: 0 auto;
	text-align: left;
}

p#subnavi_submenu {
	position: absolute;
	top: 6px;
	left: 410px;
	width: 110px;
	height: 24px;
}
p#subnavi_menu {
	position: absolute;
	top: 6px;
	left: 530px;
	width: 110px;
	height: 24px;
}
p#subnavi_top {
	position: absolute;
	top: 6px;
	left: 650px;
	width: 110px;
	height: 24px;
}

/*===================================================
Contents
===================================================*/
div#contents {
	margin: 0 auto;
	text-align: center;
}
div#contents_inner {
	width: 760px;
	margin: 0 auto;
}

/* H2 */
div#contents_inner h2 {
	width: 720px;
	margin: 10px 0 0 0;
	padding: 8px 20px 8px 16px;
	font-size: 120%;
	font-weight: bold;
	background: #FFFFFF url(../images/bg_h2.jpg) repeat-x bottom left;
	border-left: 4px solid #d06da6;
}
div#contents_inner h2 span {
	color: #CC0000;
}

/* H3 H4 */
div#contents_inner h3.subttl {
	font-size: 110%;
	font-weight: bold;
	margin-bottom:20px;
}

div#contents_inner h4.ttl {
	font-weight: bold;
	margin:20px 0 5px 0;
}

/* Topicpass */
ul#topicpass {
	width: 720px;
	margin: 10px 0 0 0;
	display: inline;
}
ul#topicpass li {
	float: left;
	margin: 10px 0 0 0;
	padding: 5px 30px 5px 16px;
	font-size: 110%;
	font-weight: bold;
	background: #FFFFFF url(../images/bg_topicpass.gif) no-repeat center right;
	border-left: 4px solid #d06da6;
}
ul#topicpass li a {
	text-decoration: none;
}
ul#topicpass li a:hover {
	text-decoration: underline;
}
ul#topicpass li span {
	color: #CC0000;
}

/* Pagetop */
p.pagetop {
	width: 720px;
	margin: 10px 0 0 0;
	text-align: right;
}

/*===================================================
Contents_top
===================================================*/
div#contents_top {
	position: relative;
	width: 760px;
	height: 435px;
	margin: 10px 0 0 0;
	padding: 0;
	text-align: left;
	background: url(../images/bg_toppage.jpg) no-repeat 0 0;
}

div#contents_top p#topmenu_menu {
	position: absolute;
	top: 0;
	left: 0;
	width: 145px;
	height: 145px;
	text-indent: -9999px;
	font-size: 0;
	background: url(../images/topmenu_menu.gif) no-repeat 0 0;
}
div#contents_top p#topmenu_menu a {
	display: block;
	height: 145px;
}
div#contents_top p#topmenu_menu a:hover {
	background: url(../images/topmenu_menu_hover.gif) no-repeat 0 0;
}

div#contents_top p#topmenu_opening {
	position: absolute;
	top: 0;
	left: 145px;
	width: 145px;
	height: 145px;
	text-indent: -9999px;
	font-size: 0;
	background: url(../images/topmenu_opening.gif) no-repeat 0 0;
}
div#contents_top p#topmenu_opening a {
	display: block;
	height: 145px;
}
div#contents_top p#topmenu_opening a:hover {
	background: url(../images/topmenu_opening_hover.gif) no-repeat 0 0;
}

div#contents_top p#topmenu_use {
	position: absolute;
	top: 145px;
	left: 145px;
	width: 145px;
	height: 145px;
	text-indent: -9999px;
	font-size: 0;
	background: url(../images/topmenu_use.gif) no-repeat 0 0;
}
div#contents_top p#topmenu_use a {
	display: block;
	height: 145px;
}
div#contents_top p#topmenu_use a:hover {
	background: url(../images/topmenu_use_hover.gif) no-repeat 0 0;
}

div#contents_top p#topmenu_collabo {
	position: absolute;
	top: 290px;
	left: 145px;
	width: 145px;
	height: 145px;
	text-indent: -9999px;
	font-size: 0;
	background: url(../images/topmenu_collabo.gif) no-repeat 0 0;
}
div#contents_top p#topmenu_collabo a {
	display: block;
	height: 145px;
}
div#contents_top p#topmenu_collabo a:hover {
	background: url(../images/topmenu_collabo_hover.gif) no-repeat 0 0;
}

/*===================================================
Contents_full
===================================================*/
div#contents_full {
	width: 720px;
	margin: 10px 0 0 0;
	padding: 20px;
	text-align: left;
	background-color: #FFFFFF;
}

/* Menu */
ul.menuleft {
	float: left;
	width: 340px;
}
ul.menuright {
	float: right;
	width: 340px;
}
ul.menuforoku {
	float: left;
	width: 340px;
	margin: 20px 0 0 0;
}
ul.menuleft li, ul.menuright li, ul.menuforoku li {
	margin: 1px 0;
}
ul.menuleft li a, ul.menuright li a, ul.menuforoku li a {
	width: 300px;
	padding: 2px 19px;
	border: 1px solid #F2F2F2;
	text-decoration: none;
	display: block;
}
ul.menuleft li a:hover, ul.menuright li a:hover, ul.menuforoku li a:hover {
	background-color: #F2F2F2;
	text-decoration: underline;
}
ul.menuleft li span, ul.menuright li span {
	color: #CC0000;
}

/* Menu Comment */
.menu_comment {
	clear: both;
	margin: 20px 0 0 0;
	padding: 0 20px;
	font-size: 90%;
}
.menu_comment span {
	color: #CC0000;
}

/* Menu of Core */
ul.menucore {
	width: 720px;
}
ul.menucore li {
	margin: 1px 0;
}
ul.menucore li a {
	width: 680px;
	padding: 2px 19px;
	border: 1px solid #F2F2F2;
	text-decoration: none;
	display: block;
}
ul.menucore li a.star {
	background: #FFFFFF url(../images/bg_star.gif) no-repeat center left; 
}
ul.menucore li a.starblue {
	background: #FFFFFF url(../images/bg_star_blue.gif) no-repeat center left; 
}
ul.menucore li a.reference {
	width: 644px;
	padding: 2px 19px 2px 55px;
	background: #FFFFFF url(../images/bg_reference.gif) no-repeat center left; 
}
ul.menucore li a:hover {
	background-color: #F2F2F2;
	text-decoration: underline;
}

dl.dl_menucore {
	width: 720px;
}
dl.dl_menucore dt {
	width: 720px;
	width: 680px;
	padding: 2px 19px;
	border: 1px solid #F2F2F2;
	text-decoration: none;
	display: block;
}
dl.dl_menucore dt.star {
	background: #FFFFFF url(../images/bg_star.gif) no-repeat center left; 
}

/* opening */
div#opening {
	padding: 0 20px 20px 20px;
}
div#opening p {
	margin: 10px 0 0 0;
}
div#opening ul {
	margin: 0;
}
div#opening ul li {
	margin: 10px 0 0 0;
}
div#opening dl {
	margin: 0;
}
div#opening dl dt {
	margin: 40px 0 0 0;
	padding: 0 0 0 5px;
	font-weight: bold;
	border-left: 5px solid #DDDDDD; 
}
div#opening dl dd {
	margin: 5px 0 0 40px;
}

/* use */
div#use {
	padding: 20px;
}
div#use p {
	margin: 10px 0 0 0;
}
div#use ul {
	margin: 0;
}
div#use ul li {
	margin: 10px 0 0 0;
}

p.signature {
	padding: 20px 0;
	text-align: right;
}

/* index */
table.tb_index {
	margin: 20px 0 0 0;
	width: 720px;
	border-bottom: 1px dotted #DDDDDD;
}
table.tb_index th {
	padding: 5px 0;
	font-size: 110%;
	font-weight: bold;
}
table.tb_index td {
	padding: 5px 0 5px 20px;
}
table.tb_index dl dt {
	padding: 5px 0;
	font-weight: bold;
}
table.tb_index dl dd {
	padding: 0 0 0 20px;
}
table.tb_index ul li a {
	margin-left: 40px;
	padding: 5px 0 5px 15px;
	text-decoration: none;
	background: url(../images/link_list.gif) no-repeat center left;
}
table.tb_index ul li a:hover {
	text-decoration: underline;
}

/* Sitemap */
h3.h3_sitemap {
	margin: 20px 0 0 0;
}
h3.h3_sitemap a {
	font-weight: bold;
		width: 680px;
	padding: 2px 20px;
	background: #A5A5A5 url(../images/bg_sitemap.gif) no-repeat center left;
	color: #FFFFFF;
	text-decoration: none;
	display: block;
}
h3.h3_sitemap a:hover {
	background: #F2F2F2 url(../images/bg_sitemap_hover.gif) no-repeat center left;
	color: #0000FF;
	text-decoration: underline;
}
h3.h3_sitemap span {
	color: #CC0000;
}

p.visible {
	margin: 0;
	text-align: right;
}
p.visible img {
	padding: 5px;
}

/* collaborator */
div#collaborator {
	padding: 20px;
}
div#collaborator p {
	margin: 0;
	text-align: center;
}
div#collaborator table {
	margin: 20px 0 0 0;
	width: 680px;
	border-top: 1px dotted #DDDDDD;
}
div#collaborator table th {
	padding: 15px 5px 0 5px;
	font-weight: lighter;
	vertical-align: top;
}
div#collaborator table td {
	padding: 15px 5px 0 20px;
	vertical-align: top;
}

/* characteristic */
ul#characteristic {
	padding: 10px 20px 20px 20px;
}
ul#characteristic li {
	margin: 10px 0 0 20px;
	list-style-type: disc;
}
ul#characteristic li span {
	color: #CC0000;
}

/*===================================================
Contents_left
===================================================*/
div#contents_left {
	float: left;
	width: 560px;
	margin: 10px 0 0 0;
	padding: 10px 20px;
	text-align: left;
	background-color: #FFFFFF;
}

div#contents_left p {
	margin: 10px 0 0 0;
}
div#contents_left p span {
	color: #CC0000;
}
.linkzoom {
	padding-left: 15px;
	color: #999999;
	font-size: 90%;
	background: url(../images/link_zoom.gif) no-repeat center left;
}

/*===================================================
Contents_right
===================================================*/
div#contents_right {
	float: right;
	width: 120px;
	margin: 10px 0 0 0;
	padding: 0 10px 10px 10px;
	text-align: left;
	background-color: #FFFFFF;
}

ul#guide {
	width: 100px;
	margin: 10px 0 0 0;
	padding: 8px 9px;
	background-color: #F2F2F2;
	border: 1px solid #DDDDDD;
}
ul#guide li {
	padding: 1px 0;
}

ul#photo_index {
	width: 120px;
}
ul#photo_index li {
	margin: 10px 0 0 0;
}

/*===================================================
Footer
===================================================*/
div#footer {
	margin: -160px auto 0 auto;
	text-align: center;
}
div#footer_inner {
	position: relative;
	width: 760px;
	height: 160px;
	margin: 0 auto;
	text-align: left;
}

p#footerinfo {
	position: absolute;
	top: 10px;
	left: 0;
	width: 720px;
	height: 90px;
	padding: 10px 20px;
	text-align: left;
	background-color: #FFFFFF;
	border-top: 1px solid #DDDDDD;
	border-bottom: 1px solid #DDDDDD;
}
p#copyright {
	position: absolute;
	top: 120px;
	left: 0;
	width: 760px;
	height: 20px;
	padding: 10px 0;
	text-align: right;
	font-size: 90%;
}

/* =========================================================
Clear of Float
========================================================= */
.clearboth {
	clear: both;
}