

/* common */
/* -------------------------------------------------------- */
* {
	margin: 0;
	padding: 0;
}

body {
	margin: 0;
	padding: 0;
	text-align: center;
	color: #333333;
	font-size: 80%;
	background: #ffffff url(../img/bg.gif) repeat-y center top;
}
h1, h2, h3, h4, h5, h6, h7 {
	font-size: 100%;
	line-height: 120%;
}
p, ul, ol, dl ,table {
	font-size: 100%;
	line-height: 160%;
}
ul {
	list-style-type: none;
}
img {
	border: 0;
	display: block;
}


/* parts */

span.red {
	color: #cc0000;
	background: #ffffff;
}
span.blu {
	color: #0000cc;
	background: #ffffff;
}
.b {
	font-weight: bold;
}


/* link */

a {
	text-decoration: none;
}
a:link,
a:visited,
a:active  {
	color: #334455;
	text-decoration: none;
}
a:hover {
	color: #3377bb;
	text-decoration: underline;
}


/* clear */

.cl {
	clear: both;
}
.pkg:after {
	content: " ";
	display: block;
	visibility: hidden;
	clear: both;
	height: 0.1px;
	font-size: 0.1em;
	line-height: 0;
}
.pkg { display: inline-block; }
/* no ie mac \*/
* html .pkg { height: 1%; }
.pkg { display: block; }
/* */



/* header */
/* -------------------------------------------------------- */
#header {
	width: 645px;
	text-align: left;
	margin: 0 auto;
}
h1 {
	font-weight: normal;
	color: #334455;
	line-height: 110%;
	text-align: left;
	margin: 0;
	padding: 1px 0;
	background: #ffffff;
	border-bottom: dotted 1px #999999;
}

#logo {
	margin: 5px 0 0 0;
	float: left;
}
#header form {
	text-align: right;
	padding: 10px 0 0 0;
	float: right;
	display:none;
}
#header input {
	vertical-align: middle;
}
#header input.box {
	width: 150px;
	margin: 0 5px 0 0;
	border-top: solid 1px #999999;
	border-left: solid 1px #999999;
	border-bottom: solid 1px #cccccc;
	border-right: solid 1px #cccccc;
}


/* navi */
/* -------------------------------------------------------- */
#navi {
	width: 645px;
	text-align: left;
	margin: 0 auto;
	padding: 2px 0 0 0;
	background: url(../img/bg_navi_01.gif) no-repeat left top;
}

#navi ul {
	font-size: 85%;
	line-height: 130%;
	font-weight: bold;
	padding-left: 2px;
	padding-bottom: 4px;
	background: url(../img/bg_navi_02.gif) no-repeat left bottom;
}
#navi li {
	width: 159px;
	text-align: center;
	margin: 0;
	padding: 0;
	overflow: hidden;
	float: left;
}
#navi a {
	display: block;
	padding: 6px 0 4px 0;
}
#navi ul li a:link,
#navi ul li a:visited,
#navi ul li a:active {
	color: #ffffff;
	background: #113355 url(../img/navi.gif) no-repeat 0 0;
}
#navi ul li a:hover,
#navi ul li.over a {
	color: #ffffff;
	background: #113355 url(../img/navi.gif) no-repeat 0 -140px;
	text-decoration: none;
}


/* panlist */
/* -------------------------------------------------------- */
#panlist {
	width: 645px;
	text-align: left;
	margin: 0 auto 5px auto;
}
#panlist ol {
	list-style-type: none;
	font-size: 85%;
	float: right;
}
#panlist li {
	padding-right: 3px;
	float: left;
}
#panlist a:link,
#panlist a:visited,
#panlist a:active {
	color: #334455;
	background: #ffffff;
}
#panlist a:hover {
	color: #3377bb;
	background: #ffffff;
}


/* footer */
/* -------------------------------------------------------- */
#footer {
	width: 645px;
	margin: 0 auto;
	padding: 50px 0 0 0;
}

#footer img {
	display: inline;
	margin: 0 auto;
	text-align: center;
}
#footer p {
	text-align: right;
	margin: 30px 0 0 0;
	padding: 0;
	border-bottom: solid 1px #cccccc;
}
#footer ul {
	text-align: center;
	margin: 15px 0 0 0;
	display:none;
}
#footer li {
	display: inline;
}
#footer .w3c {
	margin-top: 20px;
}
#footer address {
	font-style: normal;
	text-align: right;
	color: #666666;
	padding: 15px 0;
	background: #ffffff;
}
#footer address a:link,
#footer address a:visited,
#footer address a:active {
	color: #666666;
	background: #ffffff;
}
#footer address a:hover {
	color: #3377bb;
	background: #ffffff;
}
#footer .address {
	text-align:center;
	margin:20px 0 0 0;
}
#footer .address strong {
	font-size:120%;
}


/* contents */
/* -------------------------------------------------------- */
#contents {
	width: 580px;
	text-align: left;
	margin: 0 auto;
}

#contents h2 {
	font-size: 130%;
	color: #334455;
	margin: 10px 0 0 0;
	padding: 15px 0 5px 40px;
	background: #ffffff url(../img/bg_h2.gif) no-repeat left top;
}
#contents h2.top {
	font-size: 100%;
	font-weight: bold;
	color: #ffffff;
	margin: 20px 0 0 0;
	padding: 4px 0 2px 18px;
	background: #113355 url(../img/bg_h3_01.gif) repeat-y left top;
}
#contents h3 {
	font-weight: bold;
	color: #ffffff;
	margin: 20px 0 0 0;
	padding: 4px 0 2px 18px;
	background: #113355 url(../img/bg_h3_01.gif) repeat-y left top;
}
#contents h3 a:link,
#contents h3 a:visited,
#contents h3 a:active {
	color: #ffffff;
	background: transparent;
}
#contents h3 a:hover {
	color: #bbccee;
	background: transparent;
	text-decoration: none;
}
#contents h3.column {
	font-weight: bold;
	color: #334455;
	margin: 5px 0 0 0;
	padding: 1px 0 2px 18px;
	background: #ffffff url(../img/bg_h5.gif) no-repeat left top;
}
#contents h3.column a:link,
#contents h3.column a:visited,
#contents h3.column a:active {
	color: #334455;
	background: transparent;
}
#contents h3.column a:hover {
	color: #3377bb;
	text-decoration: underline;
	background: transparent;
}
#contents h4 {
	color: #334455;
	margin: 25px 0 0 0;
	padding: 0 0 4px 5px;
	background: #ffffff url(../img/bg_h4.gif) no-repeat left bottom;
}
#contents h4.type1 {
	color: #334455;
	margin: 15px 0 0 0;
	padding: 5px 15px 4px 15px;
	background: transparent url(../img/bg_02_01.gif) no-repeat left top;
}
#contents h4.type2 {
	color: #334455;
	margin: 20px 5px 0 0;
	padding: 10px 10px 0 10px;
	background: transparent url(../img/spacer.gif) no-repeat left top;
	border: solid 1px #bbccdd;
	border-bottom: 0;
}

#contents p {
	margin: 0 0 0 0;
	padding: 12px 5px 0 5px;
}
#contents p#type1 {
	padding: 6px 5px 20px 260px;
	background: url(../img/image_01.jpg) no-repeat 1px 8px;
}
#contents p#type2 {
	padding: 6px 5px 20px 140px;
	background: url(../img/image_02.jpg) no-repeat 1px 8px;
}
#contents p#type2 span {
	font-weight: bold;
}
#contents p.type1 {
	margin: 0;
	padding: 0 15px 50px 15px;
	background: url(../img/bg_02_02.gif) no-repeat bottom left;
}
#contents p.type1a {
	margin: 0;
	padding: 0 15px 10px 15px;
	background: url(../img/bg_02_03.gif) no-repeat bottom left;
}
#contents p.type2 {
	margin: 20px 0 0 0;
	padding: 0;
}
#contents p.type3 {
	margin: 10px 5px 0 0;
	padding: 5px 10px;
	border: solid 1px #bbccdd;
}
#contents p.type3 span {
	font-weight: bold;
}
#contents p.type4 {
	font-weight: bold;
	margin: 10px 0 0 0;
	padding: 0 0 0 15px;
	background: url(../img/icon_01.gif) no-repeat 0 3px;
}
#contents p.type5 {
	text-align: center;
	font-weight: bold;
	margin: 10px 5px 0 0;
	padding: 5px 10px;
	border: dotted 1px #334455;
}
#contents p.type6 {
	margin: 5px 0 0 0;
	padding: 0 0 0 15px;
	background: url(../img/icon_01.gif) no-repeat 0 3px;
}

#contents ul#sub {
	margin: 0;
	padding: 0;
}
#contents ul#sub li {
	display: inline;
	margin: 0 15px 0 0;
	padding: 0 0 0 12px;
	background: url(../img/icon_01.gif) no-repeat left top;
}
#contents ul.type1 {
	list-style-type: disc;
	margin: 0 5px 0 0;
	padding: 0 10px 10px 30px;
	border: solid 1px #bbccdd;
	border-top: 0;
}
#contents ul.type1 li {
	margin: 0;
	padding: 5px 0 0 0;
}
#contents ul.disc {
	list-style-type: disc;
	margin-left: 22px;
	padding-top: 10px;
}

#contents dl#hyoki {
	margin: 0 15px 0 10px;
}
#contents dl#hyoki dt {
	font-weight: bold;
	color: #334455;
	margin: 20px 0 0 0;
	padding: 0 0 2px 6px;
	border-bottom: dotted 1px #bbbbdd;
	background: #ffffff;
}
#contents dl#hyoki dd {
	margin: 5px 0 0 15px;
}

#contents dl#kiyaku {
	margin: 0 15px 0 10px;
}
#contents dl#kiyaku dt {
	font-weight: bold;
	color: #334455;
	margin: 20px 0 0 0;
	padding: 0 0 2px 6px;
	border-bottom: dotted 1px #bbbbdd;
	background: #ffffff;
}
#contents dl#kiyaku dd {
	margin: 5px 0 0 15px;
}
#contents dl#kiyaku dd ul {
	list-style-type: disc;
	font-size: 100%;
	margin: 0;
	padding: 0 0 0 20px;
}
#contents dl#kiyaku dd li {
	margin: 0;
	padding: 3px 0 0 0;
}
#contents dl#kiyaku span {
	font-weight: bold;
}

#contents dl.type1 {
	color: #334455;
	background: transparent;
	margin: 0;
	padding: 0;
}
#contents dl.type1 dt {
	font-weight: bold;
	margin: 15px 0 0 0;
	padding: 5px 15px 4px 15px;
	background: url(../img/bg_02_01.gif) no-repeat left top;
}
#contents dl.type1 dd {
	margin: 0;
	padding: 0 15px 10px 15px;
	background: url(../img/bg_02_03.gif) no-repeat bottom left;
}
#contents dl.type1 dd p {
	font-size: 100%;
	text-align: right;
	margin: 0;
	padding: 0;
}

#contents img.type1 {
	display: inline;
	margin: 20px 0 0 15px;
}
#contents img.type2 {
	text-align: center;
	margin: 0 auto;
}
#contents img.type3 {
	text-align: center;
	margin: 20px auto 0 auto;
}

#contents table#formbox1 {
	width: 575px;
	border-collapse: collapse;
	border-spacing: 0;
	empty-cells: show;
	margin: 20px 0 0 0;
	border-bottom: solid 1px #bbccdd;
}
#contents table#formbox1 th {
	width: 170px;
	color: #334455;
	text-align: left;
	vertical-align: top;
	background: #eeeeff;
	padding: 10px 0 10px 10px;
	border-top: solid 1px #bbccdd;
}
#contents table#formbox1 td {
	width: 385px;
	padding: 10px 0 10px 10px;
	border-top: solid 1px #bbccdd;
}
#contents table#formbox1 span {
	font-size: 85%;
	line-height: 120%;
}
#contents table#formbox1 input {
	vertical-align: middle;
}
#contents table#formbox1 select {
	width: 250px;
}
#contents table#formbox1 textarea {
	width: 360px;
}

#contents div#formbox2 {
	margin: 20px 0 0 0;
	padding: 0 0 20px 0;
}
#contents div#formbox2 p {
	text-align: right;
	margin: 20px 0 0 0;
	padding: 5px 10px;
	border: solid 1px #bbccdd;
}
#contents div#formbox2 p input {
	font-weight: bold;
	text-align: right;
	border: 0;
}

#contents table.formbox3 {
	width: 575px;
	border-collapse: collapse;
	border-spacing: 0;
	empty-cells: show;
	margin: 10px 0 0 0;
	border-bottom: solid 1px #cccccc;
}
#contents table.formbox3 th {
	width: 170px;
	color: #334455;
	text-align: left;
	vertical-align: top;
	background: #eeeeee;
	padding: 10px 0 10px 10px;
	border-top: solid 1px #cccccc;
}
#contents table.formbox3 td {
	width: 385px;
	padding: 10px 0 10px 10px;
	border-top: solid 1px #cccccc;
}
#contents table.formbox3 span {
	font-size: 85%;
	line-height: 120%;
}
#contents table.formbox3 input {
	vertical-align: middle;
}
#contents table.formbox3 select {
	width: 250px;
}
#contents table.formbox3 textarea {
	width: 360px;
}
#contents table.formbox3 .attac {
	display: block;
	width: 320px;
	margin: 0 0 5px 0;
}


#sitemap {
	margin: 0 10px;
}
#sitemap ul li {
	margin: 10px 0 0 0;
	padding: 0 0 0 18px;
	background: url(../img/icon_03.gif) no-repeat 0 2px;
}
#sitemap ul li ul {
	font-size: 100%;
	margin: 0 0 0 5px;
}
#sitemap ul li li {
	margin: 2px 0 0 0;
	padding: 0 0 0 10px;
	background: url(../img/icon_02.gif) no-repeat 0 0;
}
#sitemap ul li span {
	font-weight: bold;
}

#news {
	padding: 0 15px 10px 10px;
	background: url(../img/bg_news.gif) no-repeat left bottom;
}
#news li {
	padding: 3px 0 0 0;
	border-bottom: dotted 1px #999999;
}


/* contents box */
/* -------------------------------------------------------- */
#contents div.box1 {
	margin: 0;
	padding: 5px 0 20px 0;
	background: url(../img/bg_h3_02.gif) no-repeat left top;
}

#contents div.box2 {
	margin: 10px 0 0 0;
	padding: 0;
	background: url(../img/bg_01_01.gif) no-repeat left top;
}
#contents div.box2 p {
	margin: 0;
	padding: 0 15px 15px 15px;
	background: transparent url(../img/bg_01_02.gif) no-repeat left bottom;
}
#contents div.box2 p strong {
	color: #990000;
}

#contents div.box3 {
	margin: 0;
	padding: 5px 0 0 0;
	background: url(../img/bg_h3_02.gif) no-repeat left top;
}

#contents div.box4 {
	margin: 0;
	padding: 5px 0 0 0;
	background: url(../img/bg_h3_02.gif) no-repeat left top;
}
#contents div.box4 h3 {
	color: #334455;
	margin: 25px 0 0 0;
	padding: 0 0 4px 5px;
	background: #ffffff url(../img/bg_h4.gif) no-repeat left bottom;
}
#contents div.box4 h4 {
	font-weight: bold;
	color: #334455;
	margin: 10px 0 0 0;
	padding: 1px 0 2px 18px;
	background: #ffffff url(../img/bg_h5.gif) no-repeat left top;
}
#contents div.box4 h3 a:link,
#contents div.box4 h3 a:visited,
#contents div.box4 h3 a:active {
	color: #334455;
}
#contents div.box4 h3 a:hover {
	color: #3377bb;
}

#contents div.box5 {
	color: #333333;
	margin: 4px 0 0 0;
	padding: 5px;
	background: #eeeeee;
	border: solid 1px #cccccc;
}

#contents div.box6 {
	padding-top: 15px;
}

#contents div.block-1 {
	color: #333333;
	margin: 4px 0 0 0;
	padding: 5px;
	background: #eeeeff;
	border: solid 1px #bbccdd;
}
textarea.code-block {
	width: 560px;
	padding: 5px;
	background: #eeeeee;
	border: solid 1px #cccccc;
}


#contents fieldset {
	margin: 0;
	padding: 0;
	border: 0;
}
#contents fieldset legend {
	font-weight: bold;
}




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

#navi ul:after, #panlist:after, #panlist ol:after {
	content: " ";
	display: block;
	visibility: hidden;
	clear: both;
	height: 0.1px;
	font-size: 0.1em;
	line-height: 0;
}
#navi ul, #panlist, #panlist ol { display: inline-block; }
/* no ie mac \*/
* html #navi ul, * html #panlist, * html #panlist ol { height: 1%; }
#navi ul, #panlist, #panlist ol { display: block; }
/* */