@charset "utf-8";

/* universal-serector reset */
* { margin: 0; padding: 0; }
body, ul, ol, li { margin: 0; padding: 0;}

/* common */
html { overflow-y: scroll; }
dl:after { content: ""; display: block; height: 1px; clear: both; visibility: hidden; }
dl { display: inline-block; min-height: 1%; }

/* No MAC IE \*/
* html dl { height: 1%; }
dl { display: block; }

div { zoom: 1; }
div:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }

body { font: 77%/154% "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif; color: #333; text-align: center; text-align: justify; text-justify: inter-ideograph; background: url(../images/common/bg.jpg) left top repeat-x; }
* html body { font-size: small; } /* IE6 */
*:first-child+html body { font-size: small; } /* IE7 */

#wrapper { width: 920px; text-align: left; margin: 0 auto; }

/* header */
#header { background: url(../images/common/header-bg.jpg) no-repeat; overflow: hidden; padding: 0 0 0 113px; height: 150px; }
h1 { font-size: 0.76em; font-weight: normal; line-height: 15px; padding: 38px 0 0; color: #666; }
#logo { width: 380px; float: left; }

/* navigation */
#globalnavi { width: 240px; float: left; background: url(../images/common/navi/navi-bg.jpg) left top repeat-y; border-top: 4px solid #399; }
.gn { padding: 10px; }
.hr { padding: 12px 0; }
#globalnavi ul { list-style-type: none; margin: 0; padding: 0; }
#globalnavi li { margin: 0; padding: 0; }

/* pagebody */
#pagebody { width: 660px; float: right;}
#main { margin: 0 0 10px; }
#main ul { margin: 0; }
#main ol { margin: 0; }
#main li { margin: 0 0 0 2em; }
#main p { line-height: 1.75em; }

#headnavi { width: 420px; float: right; line-height: 1.0em; }
#headnavi ul { list-style: none; padding: 85px 0 0;}
#headnavi li a { display: block; text-decoration: none; }
#headnavi li { float: left; height: 30px; }
#headnavi1 { width: 93px; }
#headnavi2 { width: 81px; }
#headnavi3 { width: 70px; }
#headnavi4 { width: 175px; }

/* footer */
#textlink { width: 920px; margin: 0 auto; clear: both; font-size: 0.76em; color: #fff; padding: 16px 0;}
#textlink a { color: #fff; }
#textlink a:link, #textlink a:visited { text-decoration: none; }
#textlink a:hover { text-decoration: underline; }
#textlink a:active { text-decoration: none; }
#pagetop { text-align: right; padding: 24px 0 5px; }
#footer { background: #399; padding: 0 0 35px; }
address { width: 920px; margin: 0 auto; }

/* index */
.indeximg { margin: 0 0 40px; }
.mainimg { margin: 0 0 15px; }
#appeal ul { margin: 0; list-style-type: none; }
#appeal li { margin: 0; padding: 0 0 0 2em; background: url(../images/common/listicon01.jpg) 8px 4px no-repeat; }

.wn {}
.wn-tb { width: 660px; }
.wn-th { border-width: 2px 2px 0 0; border-style: solid; border-color: #fff; background: url(../images/date.jpg) left center no-repeat; width: 6em; padding: 4px 6px 4px 18px; }
.wn-td { border-width: 2px 0 0; border-style: solid; border-color: #fff; background: #ccc;  padding: 4px 6px; }

/* inside - navigation */
.subnavi { width: 680px; height: 68px; line-height: 1.2em; margin: 0 0 15px; }
.subnavi ul { list-style: none; }
.subnavi li a { display: block; text-decoration: none; }
.subnavi li { float: left; width: 167px; height: 68px; }

/* access */
.map { width: 400px; float: left; display: inline; }
.access { width: 250px; float: right; display: inline; }

/* faq */
.faq-tb { width: 660px; margin: 0 0 15px; }
.faq-th-q { padding: 6px; width: 3.5em; background: url(../images/solution-q.jpg); text-align: center; }
.faq-th-a { padding: 6px; width: 3.5em; background: url(../images/solution-a.jpg); text-align: center; color: #fff; }
.faq-td-q { padding: 6px; color: #f60; font-weight: bold; }
.faq-td-a { padding: 6px; }
.questions_box h3 { }

/* cl01 */
.clbox { border: 1px solid #399; width: 660px; margin: 0 0 10px;}
.clb-th { text-align: left; background: #399; padding: 4px; color: #fff; font-size: 1.2em; }
.clb-td {  }
.gotourl { border: 1px solid #399; width: 5.5em; float: right; }
.gotourl img { vertical-align: middle; }
.gotourl a:link, .gotourl a:visited { border: 1px solid #fff; display: block; padding: 2px; background: #def; text-align: center; text-decoration: none; }
.gotourl a:hover { border: 1px solid #fff; display: block; padding: 2px; background: #9cf; text-align: center; text-decoration: none; }
.gotourl a:active { border: 1px solid #fff; display: block; padding: 2px; background: #def; text-align: center; text-decoration: none; }
.newmark { border: 1px solid #036; padding: 3px; background: #fff; }

/* company */
.rsl-tb { margin: 0 0 15px; }
.rsl-th { text-align: center; vertical-align: top; color: #fff;background: #369;padding: 5px 10px; }
.rsl-td { vertical-align: top; background: #def; padding: 5px; }
.rsl-td1 { vertical-align: top; background: #def; padding: 0 10px 0 11px; }
.rsl-td2 { background: #369; }

/* company */
.prf-tb { width: 100%; margin: 0 0 15px; border-width: 1px; border-style: solid; border-color: #ccc #efefef #efefef #ccc; }
.prf-th { width: 6.5em; padding: 4px 8px; text-align: left; vertical-align: top; background: #efefef; border-width: 1px; border-style: solid; border-color: #efefef #ccc #ccc #efefef; }
.prf-td { padding: 4px 8px; border-width: 1px; border-style: solid; border-color: #efefef #ccc #ccc #efefef; }

/* sitemap */
#sitemap h2 { margin: 0 0 10px; }
#sitemap h3 { margin: 0 0 10px; }

/* contact - form */
.frm-tb { width: 660px; margin: 0 0 15px; border-width: 1px; border-style: solid; border-color: #ccc #efefef #efefef #ccc; }
.frm-th { padding: 4px 8px; text-align: left; vertical-align: top; background: #efefef; border-width: 1px; border-style: solid; border-color: #efefef #ccc #ccc #efefef; }
.frm-td { width: 480px; padding: 4px; border-width: 1px; border-style: solid; border-color: #efefef #ccc #ccc #efefef; }
.form-ss { width: 40px; border: 1px solid #ccc; padding: 2px; }
.form-s { width: 100px; border: 1px solid #ccc; padding: 2px; }
.form-m { width: 200px; border: 1px solid #ccc; padding: 2px; }
.form-l { width: 400px; border: 1px solid #ccc; padding: 2px; }
textarea { width: 480px; border: 1px solid #ccc; padding: 2px; }
#contbtn { padding: 5px; text-align: center; }

.ppolicy { height: 150px; overflow-x: none; overflow-y: scroll; margin: 0 0 10px; border-width: 0 1px 1px 1px; border-style: solid; border-color: #ccc; padding: 9px; }

input[type="checkbox"], input[type="radio"] { vertical-align: middle; }
input, textarea { line-height: 1.4em; padding: 0; vertical-align: middle; }

/* link */
a { outline: none; }
a:link { color: #06c; text-decoration: underline; } 
a:visited { color: #06c; text-decoration: underline; } 
a:hover, a:active { color: #06c; text-decoration: none; } 

/* general-purpose */
h2 { font-size: 1.5em; } /* 18px */
h3 { font-size: 1.2em; } /* 16px */
h4 { font-size: 1.0em; }

.title01 { border-bottom: 2px solid #399; color: #399; padding: 0 0 2px; margin: 0 0 10px; }
 
p { zoom: 1; }
p:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }

img { border: none; vertical-align: middle; }

.clr { clear: both; }
.pg-brk { page-break-before: always; }

.paging { border-width: 1px 0; border-style: dotted; border-color: #ccc; margin: 10px 0; padding: 4px 0; text-align: center; background: #efefef; }
.paging img { vertical-align: middle; }

th, td, li { font: 1.0em/1.5em; }

/*
.tb1 { width: 100%; border-width: 1px 0 0 1px; border-style: solid; border-color: #ccc; margin: 0 0 10px;}
.th1 { background: #efefef; border-width: 1px; border-style: solid; border-color: #fff #ccc #ccc #fff; padding: 4px 8px; text-align: left; }
.td1 { border-width: 1px; border-style: solid; border-color: #fff #ccc #ccc #fff; padding: 4px 8px; }
*/

/* align */
.tar { text-align: right }
.tac { text-align: center }
.tal { text-align: left }

/* float */
.fl { float: left; display: inline; }
.fr { float: right; display: inline; }

.imgl { float: left; display: inline; border-width: 0 10px 10px 0; border-style: solid; border-color: #fff;}
.imgr { float: right; display: inline; }


.l200 { width: 200px; float: left; display: inline; }
.r200 { width: 200px; float: right; display: inline; }

/* decoration */
.red { color: #c00; }
.blue { color: #06c; }
.green { color: #090; }
.yellow { color: #ffc; }
.cyan { color: #0cc; }
.orange { color: #f60; }

.strong { font-weight: bold; }

/* margin padding */
.mb02 { margin: 0 0 2px; }
.mb05 { margin: 0 0 5px; }
.mb10 { margin: 0 0 10px; }
.mb15 { margin: 0 0 15px; }
.mb20 { margin: 0 0 20px; }
.mb35 { margin: 0 0 35px; }
