@charset "UTF-8";

/* ***********************************************************************
    INIT
*********************************************************************** */
* {
margin: 0;
padding: 0;
}

body {
margin: 0;
padding: 0;
font-family: 'Hiragino Kaku Gothic Pro', Meiryo, Arial,sans-serif;
background:#fff;
font-size: 62.5%;
color:#555;
}

div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
margin: 0; padding: 0;
}

table {
border-collapse: collapse;
border-spacing: 0;
}

fieldset, img {
border: 0;
}

ul, li {margin:0; padding:0; list-style-type:none}


/* ***********************************************************************
    COMMON
*********************************************************************** */
a:link {color: #555;text-decoration: none;}
a:visited {color: #555;text-decoration: none;}
a:hover {color: #CC0000;text-decoration: underline;}
a:active {color: #CC0000;text-decoration: none;}
a:focus {outline:none;}

.link-red{
color:#CC3300;
text-decoration:underline;
}

.text-red{
color:#CC3300;
}

.text-green{
color:#99cc33;
}

.text-orange{
color:#ff9900;
}

.more{
background:url(image/icon-more.jpg) no-repeat right center;
padding-right:15px;
}

.link-pdf{
background:url(image/pdf_icon.gif) no-repeat left center;
padding:10px 0 10px 20px;
}

.t30{
margin-top:30px;
}

.image-left{
float:left;
margin:0 20px 0 0;
}

.nowrap{
white-space: nowrap;
}

.hissu{
margin-bottom: -0.1em;
margin-left: 0.25em;
margin-right: 0.25em;
vertical-align: baseline;
}

hr {
border-width: 1px 0px 0px 0px; 
border-style: solid;
border-color: #ccc;
height: 1px;
margin:10px 0 10px 0; 
}

.txtIndent{
padding-left:0.8em;
padding-right:0.8em;
text-indent:-0.8em;
}

.outline h2{
font-size:1.1em;
padding:0 10px 0 10px;
margin-left:10px;
border-left:solid 10px #CC3300;
}

q.outline h3{
font-size:1.0em;
padding:0 10px 0 10px;
}

/* BASE BOX
------------------------------------------------------------ */
div#wrapper-top{
float:left;
background:url(image/base-bg-top.jpg) repeat-x;
width:100%;
}

div#wrapper-staff{
float:left;
background:url(image/base-bg-staff.jpg) repeat-x;
width:100%;
}

div#wrapper-cliants{
float:left;
background:url(image/base-bg-cliants.jpg) repeat-x;
width:100%;
}

div#wrapper-service{
float:left;
background:url(image/base-bg-service.jpg) repeat-x;
width:100%;
}

div#container{
width: 800px;
margin: 0 auto;
}

div#content{
float:left;
width:800px;
background:url(image/content-bg.jpg) repeat-y right;
margin:0;
padding:0;
}

div#box-right{
width: 190px;
float: right;
padding:5px;
}

div#box-left{
width: 600px;
float: left;
font-size:1.2em;
}

/* ***********************************************************************
    TITLE BG
*********************************************************************** */

/* CATEGORY NAME */
.title-staff-bg{
background:url(image/title-staff-bg.jpg) no-repeat;
padding:35px 0 0 10px;
font-size:1.4em;
margin-top:0;
height:65px;
z-index:10;
}

.title-clients-bg{
background:url(image/title-clients-bg.jpg) no-repeat;
padding:35px 0 0 10px;
font-size:1.4em;
margin-top:0;
height:65px;
z-index:10;
}

.title-service-bg{
background:url(image/title-service-bg.jpg) no-repeat;
padding:35px 0 0 10px;
font-size:1.4em;
margin-top:0;
height:65px;
z-index:10;
}

.title-company-bg{
background:url(image/title-company-bg.jpg) no-repeat;
padding:35px 0 0 10px;
font-size:1.4em;
margin-top:0;
height:65px;
z-index:10;
}

.title-news-bg{
background:url(image/title-news-bg.jpg) no-repeat;
padding:35px 0 0 10px;
font-size:1.4em;
margin-top:0;
height:65px;
z-index:10;
}

.title-system-bg{
background:url(image/title-system-bg.jpg) no-repeat;
padding:35px 0 0 10px;
font-size:1.4em;
margin-top:0;
height:65px;
z-index:10;
}

/* H1 TITLE */
.entry-title{
background:url(image/category-name-point.gif) no-repeat left center;
padding:5px 20px 0 15px;
margin-left:10px;
color:#fff;
font-size:1.2em;
line-height:100%;
height:20px;
}

/* H2 TITLE */
.main-title-red{
clear:both;
background:url(image/title-bg-580-red.jpg) no-repeat;
font-size:1.2em;
line-height:100%;
padding:9px 0 0 25px;
height:27px;
margin:0 0 10px 0;
}

.main-title-orange{
clear:both;
background:url(image/title-bg-580-orange.jpg) no-repeat;
font-size:1.2em;
line-height:100%;
padding:9px 0 0 25px;
height:27px;
margin:0 0 10px 0;
}

.main-title-green{
clear:both;
background:url(image/title-bg-580-green.jpg) no-repeat;
font-size:1.2em;
line-height:100%;
padding:9px 0 0 25px;
height:27px;
margin:0 0 10px 0;
}

/* H3 TITLE */
.sub-title-red{
clear:both;
background:#fafafa;
border-top:solid 1px #cc3300;
border-bottom:solid 1px #cc3300;
font-weight:100;
color:#cc3300;
padding-left:10px;
margin:15px 0 15px 0;
font-size:1.0em;
}

.sub-title-orange{
clear:both;
background:#fafafa;
border-top:solid 1px #ff9900;
border-bottom:solid 1px #ff9900;
font-weight:100;
color:#ff9900;
padding-left:10px;
margin:15px 0 15px 0;
font-size:1.0em;
}

.sub-title-green{
clear:both;
background:#fafafa;
border-top:solid 1px #99cc33;
border-bottom:solid 1px #99cc33;
font-weight:100;
color:#99cc33;
padding-left:10px;
margin:15px 0 15px 0;
font-size:1.0em;
}

/* ***********************************************************************
    HEADER
*********************************************************************** */
div#header{
position:relative;
height:100px;
}

/* SITE LOGO */
.site-logo{
position:absolute;
top:35px;
}

/* GLOBAL NAVIGATION */
#g-navi{
width:300px;
height:100px;
}

ul#g-navi{
position:absolute;
background:url(image/g-navi.jpg) no-repeat;
width:300px;
height:100px;
left:200px;
}

ul#g-navi li{
padding:0;
margin:0;
display:block;
text-indent:-9999px;
float:left;
}

ul#g-navi li a {
border:0;
display:block;
text-decoration:none;
width: 100px;
height: 100px;
background: transparent url(image/g-navi.jpg) no-repeat;
}

li#staff   a:link, li#staff   a:visited { background-position:   0px   0px; }
li#staff  a:hover,li#staff   a:focus   { background-position:  0px -100px; }
li#clients   a:link, li#clients   a:visited { background-position: -100px   0px; }
li#clients   a:hover,li#clients   a:focus   { background-position: -100px -100px; }
li#service  a:link, li#service  a:visited { background-position: -200px   0px; }
li#service  a:hover,li#service  a:focus   { background-position: -200px -100px; }

body#staff ul#g-navi li#staff a { background-position: 0px -200px; }
body#clients ul#g-navi li#clients a { background-position:-100px -200px; }
body#service ul#g-navi li#service a { background-position:-200px -200px; }


/* SITE DESCRIPTION */
.description{
position:absolute;
top:45px;
right:0;
text-align:right;
}

/* ***********************************************************************
    HOME
*********************************************************************** */
.promotion{
background:url(image/promo-bg.jpg) no-repeat;
width:600px;
height:138px;
margin-bottom:20px;
}

.p-box{
width:192px;
float:left;
margin:35px 0 0 0;
line-height:150%;
padding-left:8px;
}

.top-ad{
float:left;
margin:20px 0 20px 0;
}

.top-ad img{
margin:0 5px 5px 0;
}

/* SLIDE ILLUST */
.slide{
margin:0;
padding:0;
width:600px;
z-index:100;
}

.slide img{
border:0;
}

.sm {
list-style:none;
width:600px;
height:200px;
display:block;
overflow:hidden
}
.sm li {
float:left;
display:inline;
overflow:hidden
}

/* ***********************************************************************
    FOOTER
*********************************************************************** */
div#footer-wrap{
float:left;
width:100%;
border-top:solid 1px #CCCCCC;
background:url(image/footer-bg.jpg) repeat-x bottom;
}

.footer{
width:800px;
position:relative;
margin: 0 auto;
}

.page-top{
position:absolute;
top:0;
right:0;
}

.shiten{
float:left;
width:800px;
margin-top:30px;
}

.shiten ul{
margin-top:15px;
}

.shiten li{
background:url(image/arrow-red-s.gif) no-repeat left center;
float:left;
padding-left:10px;
margin-right:20px;
font-weight:bold;
font-size:1.2em;
}

.group{
float:left;
width:800px;
margin-top:30px;
margin-bottom:10px;
}

.group p{
font-size:8pt;
}

.group-box{
float:left;
width:200px;
padding-right:6px;
margin:10px 0 20px 0;
line-height:140%;
}

.group-box li a{
color:#999;
font-size:6.5pt;
}

.group-box li a:hover{
text-decoration:none;
}

.group-box-last{
float:left;
width:182px;
margin:10px 0 20px 0;
line-height:140%;
}

.group-box-last li a{
color:#999;
font-size:6.5pt;
}

.group-box-last li a:hover{
text-decoration:none;
}

.footer-box{
clear:both;
position:relative;
border-top:solid 1px #CCCCCC;
width:800px;
padding:20px 0 40px 0;
}

.footer-nav{
position:absolute;
top:10px;
left:0;
}
.copyright{
position:absolute;
top:10px;
right:0;
}

/* ***********************************************************************
    RIGHT SIDE
*********************************************************************** */

/* ACCORDION MENU */
#accordion_menu {
width: 178px;
letter-spacing: 1px;
margin: 5px 0 10px 0;
padding:5px;
background:#fff;
border:solid 1px #CCC;
}

.menutitle{
padding:5px;
font-size: 12px;
font-weight: bold;
text-align:center;
color: #fff;
}

.red{
background:#cc0000;
}

.orange{
background:#ff9900;
}

.green{
background:#99cc00;
}

#accordion_menu .menuheader {
background:#ccc;
margin-bottom: 1px;
text-decoration: none;
line-height:100%;
font-size: 12px;
font-weight: bold;
text-indent: 1.7em;
color: #fff;
cursor: hand;
cursor: pointer;
display: block;
position: relative;
height:22px;
padding-top:10px;
}

#accordion_menu .openheader {
background:#ededed;
color: #555;
}

#accordion_menu div.categoryitems ul {
list-style-type: none;
margin: 0;
padding: 0;
}

#accordion_menu div.menuheader .statusicon {
position: absolute;
top: 10px;
left: 5px;
border: none;
}

#accordion_menu div.categoryitems ul li {
color: #000;
}

.categoryitems p{
padding:5px;
font-size:11px;
}

#accordion_menu div.categoryitems ul li a {
color: #666;
background: url(image/arrow.gif) no-repeat 5px center;
display: block;
padding: 5px 5px 5px 20px;
text-decoration: none;
border-bottom: 1px solid #dadada;
font-size: 11px;
}

#accordion_menu div.categoryitems ul li a: visited {
color: #000;
}

#accordion_menu div.categoryitems li a: hover {
color: #000;
font-size: 12px;
}

/* ***********************************************************************
    CLEAR FIX
*********************************************************************** */
.clearFix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearFix { display: inline-block; }

/* Hides from IE-mac \*/
* html .clearFix { height: 1%; }
.clearFix { display: block; }
/* End hides from IE-mac \*/

/* ***********************************************************************
	TABLE DESIGN
*********************************************************************** */
table {
width: 100%;
border: 1px #ccc solid;
border-collapse: collapse;
border-spacing: 0;
margin:5px 0 20px 0;
}

caption{
text-align:left;
font-size:1.0em;
}

th {
padding: 5px;
border: #ccc solid;
border-width: 0 0 1px 1px;
background: #F5F5F5;
font-weight:100;
text-align: left;
white-space: nowrap;
font-size:1.0em;
}

td {
padding: 5px;
border: 1px #ccc solid;
border-width: 0 0 1px 1px;
font-size:1.0em;
text-align: left;
}

/* ***********************************************************************
    CONTENT
*********************************************************************** */
.content-body{
float:left;
margin:20px 0 40px 0;
color:#666;
line-height:190%;
width:590px;
}

.content-body p{
margin:0 0 10px 0;
}

.content-box-full{
width:580px;
margin:0 10px 0 10px;
}

.content-box-full ol li{
list-style:decimal;
margin:0 10px 0 30px;
}

.content-box-full ol ol li{
list-style:lower-alpha;
margin:0 10px 0 30px;
}

.content-box-full ol ul li{
list-style:square;
}

.content-box-right{
width:380px;
float:right;
margin-bottom:15px;
}

.content-box-left{
width:180px;
padding:0 20px 0 10px;
float:left;
}

.outline{
border:solid 1px #CCCCCC;
padding:10px;
background:#fff;
}

.outline p{
padding:10px 10px 0 10px;
}

.outline h3{
font-size:1em;
padding:0 10px;
}

.outline ul li{
list-style:disc;
margin:0 20px 0 20px;
}

.inline-box{
border:solid 1px #CCCCCC;
padding:10px;
margin:0 0 10px 0;
}

.inline-box ol li{
list-style:decimal;
margin:0 0 0 20px;
}

.inline-box ul li{
list-style:disc;
margin:0 20px 0 20px;
}

.inline-box2{
clear:both;
border:solid 2px #CC3300;
background:#fff;
padding:10px;
margin:0 0 10px 0;
}

.kyoten{
padding:14px 5px 15px 5px;
}

.flow-box{
float:left;
width:380px;
margin-bottom:15px;
}

.flow-illust{
float:left;
width:138px;
}

.flow-caption{
float:right;
width:242px;
}

/* WHAT'S NEW */
.info-top{
width:590px;
}

.not-found{
width:590px;
margin-top:50px;
}

.info-top-box{
float:left;
background:url(image/dot-line.gif) repeat-x bottom;
margin:5px 5px 0 0;
padding:0 0 5px 10px;
width:575px;
}

.info{
width:380px;
background:#FFFF00;
background:url(image/dot-line.gif) repeat-x bottom;
padding-bottom:10px;
margin-bottom:10px;
line-height:160%;
}

.info li{
background:url(image/dot-line.gif) repeat-x bottom;
margin:5px 0 5px 0;
padding:0 0 10px 0;
line-height:160%;
}

.info p{
margin-bottom:20px;
}

.info-date{
float:left;
width:90px;
line-height:160%;
}

.info-shiten{
float:left;
background:#cc3300;
color:#fff;
font-size:0.9em;
text-align:center;
width:70px;
line-height:100%;
padding:2px 0 2px 0;
_padding:4px 0 2px 0;
margin-top:2px;
}

.info-title{
float:left;
width:380px;
margin-left:30px;
line-height:160%;
}

.info-title2{
width:380px;
line-height:160%;
padding-top:5px;
}

.info-meta{
margin-top:10px;
color:#000;
}

/* FAQ */
.question{
background:url(image/title-question-bg.jpg) no-repeat left center;
padding:12px 0 10px 46px;
color:#cc3300;
font-size:1.2em;
height:36px;
}

.answer{
background:url(image/title-answer-bg.jpg) no-repeat;
border-bottom:solid 1px #ccc;
padding:0 0 20px 50px;
margin:5px 0 20px 0;
}

/* INTERVIEW */
div.interview{
margin-bottom:10px;
}

div.interview p.image{ 
text-align:center;
}

div.interview h2{
font-size:1.0em;
}

.interview-question{
background:url(image/title-question-bg.jpg) no-repeat left center;
padding:12px 0 0 46px;
color:#cc3300;
font-size:1.2em;
height:36px;
}

.interview-answer{
background:url(image/title-interview-answer-bg.jpg) no-repeat;
border-bottom:solid 1px #ccc;
padding:0 0 20px 50px;
margin:5px 0 20px 0;
}

/* COLUMN LAYOUT */
.column-title{
border-bottom:solid 2px #CCC;
font-weight:bold;
margin-bottom:10px;
padding-left:5px;
}

.column{
margin-bottom:20px;
}

.column li{
background: url(image/list-square.gif) no-repeat 5px center;
padding-left:15px;
}

.two-column-title{
border-bottom:solid 2px #CCC;
font-weight:bold;
}

.two-column{
float:left;
margin-bottom:20px;
}

.two-column li{
background: url(image/list-square.gif) no-repeat 5px center;
float:left;
padding-left:15px;
width:175px;
}

/* ***********************************************************************
    JOB SEARCH
*********************************************************************** */
.search-box{
margin:10px 0 20px 0;
width:580px;
background:url(image/search-bg.jpg) no-repeat bottom;
}

.searchCont{
margin:0;
padding:10px;
}

.search{
margin:0;
padding:0;
border:none;
}

.searchCont td{
margin:0;
padding:0;
border:none;
}

.btn{
text-align:center;
margin-top:15px;
}

.searchCont select {
border: #ccc solid 1px;
padding: 0.2em;
font-weight: bold;
color: #090;
height: 202px;
width:182px;
}

option {
border-bottom: 1px solid #ccc;
margin: -1px 0 0;
padding:2px;
font-weight: normal;
line-height: 1em;
color: #000;
}

.search-result{
width:100%;
}

.search-result caption{
background:#cc3300;
color:#fff;
padding:5px;
}

.search-result-top{
position:relative;
background:url(image/search-result-top-bg.jpg) no-repeat;
width:100%;
height:41px;
}

.research{
position:absolute;
top:15px;
right:10px;
}

.entry-td{
position:relative;
background:#f5f5f5;
height:40px;
}

.entry-box-add-btn{
position:absolute;
top:14px;
left:20px;
}

.entry-box-check-btn{
position:absolute;
top:15px;
left:20px;
}

.entry-job-btn{
position:absolute;
top:4px;
right:10px;
}

/* ***********************************************************************
    ENTRY BOX
*********************************************************************** */
.entry-box{
width:100%;
}

.entry-box th{
text-align:center;
}

.entry-box-num{
width:60px;
}

.entry-box-kyoten{
width:60px;
}

.entry-box-job{
width:240px;
}

.entry-box-del{
width:20px;
}


.entry-box-name{
border:solid 1px #ccc;
padding:4px;
width:150px;
margin-right:10px;
}

.entry-box-tel{
border:solid 1px #ccc;
padding:4px;
width:320px;
margin-right:10px;
}

.entry-box-email{
border:solid 1px #ccc;
padding:4px;
width:98%;
}

.entry-box-code{
border:solid 1px #ccc;
padding:4px;
width:98%;
}

/* ***********************************************************************
    ONLINE ENTRY
*********************************************************************** */
.online-entry input,textrea,select{
margin:2px;
}

.online-entry th{
background:#fff;
}

.require{
border-left:solid 2px #CC0000;
color:#CC0000;
}


/* ***********************************************************************
    CONTACT FORM
*********************************************************************** */
.readonly{
width:568px;
_width:545px;
height:500px;
font-size:1.0em;
padding:5px;
margin:0;
border:solid 1px #CCCCCC;
}

.radio{
margin:0 2px 0 0;
position:relative;
top:0;
}

.name{
width:98%;
border:solid 1px #ccc;
padding:4px;
}

.num{
width:98%;
border:solid 1px #ccc;
padding:4px;
font-size:1.1em;
}

.email{
width:98%;
border:solid 1px #ccc;
padding:4px;
}

.comment{
width:98%;
border:solid 1px #ccc;
padding:4px;
font-size:1.1em;
height:150px;
}

.contact-form{
margin:0;
padding:0;
}

.contact-from table{
margin:0;
padding:0;
}

.contact-form th{
width:180px;
}

.contact-form li{
float:left;
width:205px;
margin:0;
padding:0;
}

/* ***********************************************************************
    SITEMAP
*********************************************************************** */

.sitemap-box-staff{
float:left;
border-top:solid 1px #ccc;
border-right:solid 1px #ccc;
border-bottom:solid 1px #ccc;
border-left:solid 5px #cc3300;
padding:10px;
margin-bottom:5px;
width:550px;
}

.sitemap-box-staff h2{
font-size:1.1em;
color:#cc3300;
}

.sitemap-box-staff h3{
clear:both;
font-size:1.0em;
}

.sitemap-box-staff ul{
float:left;
background:#f7f7f7;
border:solid 1px #ededed;
padding:5px;
width:535px;
}

.sitemap-box-staff li{
float:left;
background: url(image/arrow.gif) no-repeat 5px center;
padding-left:20px;
width:158px;
}

.sitemap-box-cliants{
float:left;
border-top:solid 1px #ccc;
border-right:solid 1px #ccc;
border-bottom:solid 1px #ccc;
border-left:solid 5px #ff9900;
padding:10px;
margin-bottom:5px;
width:550px;
}

.sitemap-box-cliants h2{
font-size:1.1em;
color:#ff9900;
}

.sitemap-box-cliants h3{
clear:both;
font-size:1.0em;
}

.sitemap-box-cliants ul{
float:left;
background:#f7f7f7;
border:solid 1px #ededed;
padding:5px;
width:535px;
}

.sitemap-box-cliants li{
float:left;
background: url(image/arrow.gif) no-repeat 5px center;
padding-left:20px;
width:158px;
}

.sitemap-box-service{
float:left;
border-top:solid 1px #ccc;
border-right:solid 1px #ccc;
border-bottom:solid 1px #ccc;
border-left:solid 5px #99cc33;
padding:10px;
margin-bottom:5px;
width:550px;
}

.sitemap-box-service h2{
font-size:1.1em;
color:#99cc33;
}

.sitemap-box-service h3{
clear:both;
font-size:1.0em;
}

.sitemap-box-service ul{
float:left;
background:#f7f7f7;
border:solid 1px #ededed;
padding:5px;
width:535px;
}

.sitemap-box-service li{
float:left;
background: url(image/arrow.gif) no-repeat 5px center;
padding-left:20px;
width:158px;
}

/* ***********************************************************************
    SHITEN PAGE
*********************************************************************** */
.map{
float:left;
width:260px;
font-size:0.9em;
}

.access{
float:right;
width:320px;
}

.timetable{
width:100%;
}

.timetable th{
text-align:center;
}

.timetable td{
text-align:center;
}

.line-red{
border-bottom:solid 2px #cc3300;
margin:15px 0 10px 0;
color:#cc3300;
font-size:1.2em;
}

