@charset "utf-8";

/*==================================================

	reset CSS

===================================================*/

body,div,dl,dt,dd,ul,ol,li,
h1,h2,h3,h4,h5,h6,
pre,code,form,fieldset,legend,
p,blockquote,table,th,td{ margin: 0; padding: 0;}

html,body{ background: #FFF; color: #000;}

body{ font:110.01% "メイリオ","Meiryo","ＭＳ Ｐゴシック","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3",sans-serif;}

img{ border: 0; vertical-align: top;}

h1,h2,h3,h4,h5,h6{ clear: both; font-size: 100%; font-weight: normal;}

ul,dl,ol{ text-indent: 0;}
li{ list-style: none;}

address,caption,cite,code,dfn,em,strong,th,var{ font-style: normal; font-weight: normal;}

sup{ vertical-align: text-top;}
sub{ vertical-align: text-bottom;}

input,textarea,select{ font-family: inherit; font-size: inherit; font-weight:inherit;}
* html input,* html textarea,* html select{ font-size: 100%;}
*:first-child+html+input,*:first-child html+textarea,*:first-child+html select{ font-size: 100%;}

table{ border-collapse: collapse; border-spacing: 0; font-size: inherit;}
th,td{ text-align: left; vertical-align: top;}
caption{ text-align: left;}

pre,code,kbd,samp,tt{ font-family: monospace;}
* html pre,* html code,* html kbd,* html samp,* html tt{ font-size: 100%; line-height: 100%;}
*:first-child+html pre,*:first-child html+code,*:first-child html+kbd,*:first-child+html+samp,*:first-child+html tt{ font-size: 108%; line-height: 100%;}

input,select,textarea{ font-size: 100%; font-family: Verdana, Helvetica, sans-serif;}

hr{	display:none; }

fieldset{ border:none;}

/*-------------------------------------------------
	body,link
---------------------------------------------------*/

html,body{ height: 100%;}	

body{ color:#333; }

a{ color: #7F2244; text-decoration:underline; }

a:visited{ color: #7F2244; text-decoration:underline; }

a:hover{ color:#E07E07; text-decoration:none; }

.pagetop a:hover img,#bnrList a:hover img{ filter:alpha(opacity=80); -moz-opacity:0.80; opacity:0.80; }

a:active{ color: #066; text-decoration:none; }

/*-------------------------------------------------
	container
---------------------------------------------------*/

#container{ font-size: 81.25%; }

#wrp{ width: 940px; padding: 0 10px; margin: 0 auto; }

/*.sec #container{ background-position:left 110px; border-top: 5px #333 solid; }*/

/*==================================================

	header CSS

===================================================*/

/*-------------------------------------------------
	base header
---------------------------------------------------*/

#header{ position: relative; padding-top: 25px; zoom: 1; height: 410px; width: 940px; }

#siteTitle{ position: absolute; left: 0; top: 90px; zoom: 1; width: 160px; }

#companyLogo{ float: left; display: inline; width: 231px; }

#logo88th{ float: right; display: inline; width: 63px; }

#sideEntry{ text-align: center; width: 160px; margin-top: -180px; }

.sec #sideEntry{ text-align: center; width: 160px; margin-top: 49px; }

#sideEntry dt{ padding-bottom: 15px; }

#sideEntry dd{ padding-bottom: 10px; background: url(../img/common/mynavi_side_bg.png) no-repeat bottom center; }

/*==================================================

	navigation CSS

===================================================*/

/*-------------------------------------------------
	global navigation
---------------------------------------------------*/

#globalNav{ margin-bottom: 30px; }

#globalNav li{ padding-bottom: 9px; background: url(../img/common/globalnav_bg.png) no-repeat bottom left; }

#utilNav li{ border-bottom: 1px dotted #FF9900; padding-bottom: 5px; margin-bottom: 10px; }

#utilNav a{ padding: 5px 0 3px 18px; background: url(../img/common/arrow.png) no-repeat 5px 10px; }

/*-------------------------------------------------
	sidebar
---------------------------------------------------*/

/* local navigation */

/*-------------------------------------------------
	topicPath
---------------------------------------------------*/

#mainContents #topicPath{ color: #F29326; margin: 28px 0 0; font-size: 80%; padding-top: 5px; border-top: 1px solid #F29326; text-align: right; }

#mainContents #topicPath ol{ margin: 0; }

#mainContents #topicPath ol li{ display: inline; margin-left: 0; }

#topicPath a{ color: #F29326; text-decoration: none; }

#topicPath a:hover{ text-decoration: underline; }

#topicPath strong{ color: #244A9E; font-weight: bold; }


/*==================================================

	contents CSS

===================================================*/

/*-------------------------------------------------
	base contents
---------------------------------------------------*/

#contents{ width: 940px; }

#mainContents{ width: 720px; float: right; display: inline; }

.sec #mainContents{ margin-top: -212px; z-index: 10000; position: relative; }

#subContents{ width: 160px; float: left; display: inline; margin-top: -150px; z-index: 10000; position: relative; }
				
/*-------------------------------------------------
	toppage contents
---------------------------------------------------*/


/*-------------------------------------------------
	2nd contents
---------------------------------------------------*/
 
.sec h2{ margin: 17px 0 0 220px; position: relative; width: 720px; height: 133px; }

.sec #lastText{ margin: 30px 0 0; text-align: center; }

/* for index_page */

/* for contents_page */

.sec #mainContents .contArea{ margin: 0 0 10px 10px; }

.sec #mainContents .contArea .h4Inner{ margin-left: 10px; }

.sec #mainContents .contArea .h4Inner dt{ border-bottom: 3px solid #E3EFFD; padding: 5px 0 3px 5px; margin-bottom: 10px; font-weight: bold; }

.sec #mainContents .contArea .h4InnerBox{ margin: 0 0 10px 10px; }

.sec #mainContents .contArea .h4InnerBox li{ list-style-type: disc; margin-left:20px; }

.sec #mainContents .contArea .h4InnerBox p{ padding-bottom: 10px; margin-bottom: 0; }

/*-------------------------------------------------
	common settings
---------------------------------------------------*/

#mainContents table, #mainContents p, #mainContents ul, #mainContents dl{ margin:0 0 20px 0; line-height: 1.5; }

#mainContents .noBmargin{ margin-bottom: 0px; }

#mainContents .doublemargin{ margin-bottom: 30px; }


/*==================================================

	footer CSS

===================================================*/

#footer{ margin-top: 60px; }

#pageTop a{ padding: 15px 0 10px; text-align: center; background: #FBD220; display: block; }

#pageTop a:hover{ background: #FFDF62; }

#footerInner{ background: url(../img/common/footerbg.png) repeat-x left top; }

#footerNav{ position: relative; overflow: hidden; clear: both; background: }

#footerNavList{ position: relative; left: 50%; float: left; padding: 50px 0 10px; }

#footerNavList li{ position: relative; left: -50%; float: left; padding-left: 10px; }

#footerNav .firstChild{ margin-left: -10px; }

#footerNav li{ color: #FC0; }

#footerNav li a{ color: #FFF; }

#copyright{ text-align: center; padding: 30px 0 60px; font-size: 90%; }

#copyright a{ color: #FFF; text-decoration: none; }

#copyright a:hover{ text-decoration: underline; }

/*==================================================

	module CSS
	
===================================================*/

/* margin / padding control */


/* block control */

.alignleft{ text-align: left; }

.alignright{ text-align: right; }

.aligncenter{ text-align: center; }


/* text control */

.textBold, .textBold strong, .current{ font-weight: bold; }

.textTrans{ text-transform: uppercase; }

.indent{ text-indent: -1em; padding-left: 1em; }

/* float control */

.left{ float: left; display: inline; }

.right{ float: right; display: inline; }

/* pageTop */

#mainContents .pageTopLink{ text-align: right; margin-bottom: 20px; }

/* pageNavi */


/* googleMap */

.mapArea{ width: 300px; height: 200px; float: right; background: #CCC; margin: 0 0 10px 10px; }

.mapArea #content{ font-size: 81.25%; }

.mapArea #content p{ margin-bottom: 0; }

.mapArea div{ width: auto; height: auto; }

/* Table control  */

#mainContents .baseTable{ border-width:1px 0pt 0pt 1px; border-color:#bebebe; border-style:solid; border-collapse:separate; empty-cells: show; line-height:150%; border-spacing: 0; width: 100%; }

* html #mainContents .baseTable{ border-collapse: collapse; }

*:first-child+html #mainContents .baseTable{ border-collapse: collapse; }

#mainContents .baseTable th{ padding:8px; border-width:0 1px 1px 0; border-color:#bebebe; border-top: 1px solid #FFF; border-style:solid; background-color: #F2F2F2; font-weight:bold; text-align:left; }

#mainContents .baseTable .addInfo, #mainContents .baseTable .sprAboutTable{ width: 100px; }

#mainContents .baseTable .nowrap{ white-space: nowrap; }

#mainContents .baseTable td{ padding:8px; border-width:0 1px 1px 0; border-color:#bebebe; border-style:solid; background-color:#ffffff; font-weight:normal; text-align:left; }

#mainContents .baseTable td ul, #mainContents .baseTable td ol{ margin-bottom: 0; }

#mainContents .timeTable th,#mainContents .timeTable td{ text-align: center; }

/* List Control */

#mainContents .imgList li{ float: left; display: inline; padding-right: 20px; text-align: center; }

#mainContents .imgList .nopadding{ padding-right: 0px; }

#mainContents .imgList img{ display: block; }

#mainContents .lineList li{ border-bottom: 1px dotted #9ab9e8; padding-bottom: 2px; margin-bottom: 5px; }

#mainContents ol{ margin:0 10px 15px; line-height: 1.5; }

#mainContents ol li{ list-style-type: decimal; margin-left:25px; }

#mainContents .listmark{ line-height: 1.5; }

#mainContents .listmark li{ list-style-type: disc; margin-left:20px; }

/* Image control */

#mainContents .imgRight{ float: right; display: inline; margin: 0 0 10px 15px; }

#mainContents .imgLeft{ float: left; display: inline; margin: 0 15px 10px 0; }

#mainContents .imgRight img, #mainContents .imgLeft img, #mainContents .imgBox img, #mainContents .imgList img{ padding: 2px; border: 1px solid #CCC; }

#mainContents .noborder img{ padding: 0; border: none; }


/*==================================================

	blog control

===================================================*/


/*==================================================

	page CSS

===================================================*/

/*-------------------------------------------------
	top
---------------------------------------------------*/

#top #leadTxt{ width: 450px; padding-top: 25px; margin-bottom: 25px; float: left; display: inline; }

#top #leadTxt #leadTitle{ margin-bottom: 15px; }

#top #leadTxt .halfmargin{ margin-bottom: 10px; }

#top #newsArea{ width: 250px; float: right; display: inline; background: url(../img/top/news_bg_t.png) no-repeat left top; zoom: 1; position: relative; margin-right: 2px; }

#top #newsArea p{ margin-top: -76px; margin-left: 6px; zoom: 1; position: relative; }

#top #newsArea dl{ padding: 0 30px 50px; background: url(../img/top/news_bg_b.png) no-repeat center bottom; zoom: 1; position: relative; }

#top #newsArea dt{ font-weight: bold; color: #FF5A26; padding-bottom: 5px; }

#top #newsArea dd{ background: url(../img/top/news_bg_line.png) no-repeat bottom center; padding-bottom: 5px; margin-bottom: 10px; color: #794546; }

#top #presidentMsg{ clear: both; position: relative; zoom: 1; background: #FBD220; }

#top #presidentTxt{ width: 468px; position: relative; z-index: 10000; margin-bottom: 0; }

#top #presidentTxt dt{  }

#top #presidentTxt dd{ background: url(../img/top/president_bg_b.png) no-repeat left bottom; padding: 10px 20px 20px; }

#top #presidentImg{ position: absolute; top: -38px; right: 0; }

#top #mainVis{ margin: 17px 0 0 220px; padding-top: 17px; position: relative;	width: 720px; height: 345px; }

#top #mainVis img{ position: absolute; top: 0; left: 0; }

#mainMynaviLink{ margin-top: 40px; text-align: center; }

#mainMynaviLink #mainMynaviList li{ float: left; display: inline; padding-right: 18px; }

#mainMynaviLink #mainMynaviList #lastChild{ padding-right: 0; }


/*-------------------------------------------------
	need
---------------------------------------------------*/

#need #mainLead{ margin: -40px 0 20px -3px; zoom: 1; position: relative; line-height: 1.0; }

#need #mainMsgList li{ text-align: center; }

#need .mainTxt{ width: 404px; margin: 0 auto 30px; }

#need .mainTxt p{ margin-bottom: 5px; }

#need #mainTxtArea01{ background: url(../img/need/line.gif) no-repeat bottom center; padding-bottom: 30px; }

/*-------------------------------------------------
	detail
---------------------------------------------------*/

#detail #infoTable{ width: 700px; margin: 15px auto 0; }

#detail .tableTitle{ padding: 10px 0; text-align: center; font-weight: bold; color: #FFF; background: url(../img/detail/h3_bg.png) left top repeat-y; }

#detail td{ padding: 10px; }

#detail .yellowCell, #detail .pinkCell{ width: 290px; }

#detail .yellowCell{ background: #FEF1B4; margin-bottom: 10px; padding: 20px; }

#detail .pinkCell{ background: #FFECEC; margin-bottom: 10px; padding: 20px; }


/*-------------------------------------------------
	voice
---------------------------------------------------*/

#voice .infoArea{ width: 700px; margin: 30px auto 0; padding-bottom: 10px; background: url(../img/voice/infoarea_shadow.png) no-repeat bottom right; }

#voice .wrapDD{ background: url(../img/voice/infoarea_bg.png) repeat-y right top; }

#voice .innerBox{ margin-bottom: 0; }

#voice .innerBox dt{ margin-bottom: 20px; }

#voice #infoArea01 .left{ width: 202px; float: left; display: inline; margin-left: 70px; }

#voice #infoArea01 .right{ width: 360px; float: right; display: inline; margin: 0 40px 40px 0; }

#voice #infoArea02 .left{ width: 202px; float: right; display: inline; margin: 0 40px 40px 0; }

#voice #infoArea02 .right{ width: 360px; float: left; display: inline; margin: 0 0 40px 70px; }


/*==================================================

	clearFix

===================================================*/

/*-------------------------------------------------
	for class="clearFix"
---------------------------------------------------*/

.clearFix{ zoom: 1; }

.clearFix:after{  content: "."; display: block; height: 0; clear: both; visibility: hidden; font-size: 0; }

/*-------------------------------------------------
	base clearFix
---------------------------------------------------*/

#wrp,#contents,#header,#globalNav,#footer{ zoom: 1; }

#wrp:after,#contents:after,#header:after,#globalNav:after,#footer:after{ content: "."; display: block; height: 0; clear: both; visibility: hidden; font-size: 0; }

/*-------------------------------------------------
	parts clearFix
---------------------------------------------------*/

#footerNav,#topicPathList,.cont,.imgList,#utilNav,.contArea,#headerBox{ zoom: 1; }

#footerNav:after,#topicPathList:after,.cont:after,.imgList:after,#utilNav:after,.contArea:after,#headerBox:after{ content: "."; display: block; height: 0; clear: both; visibility: hidden; font-size: 0; }

/*-------------------------------------------------
	page clearFix
---------------------------------------------------*/

#presidentMsg{ zoom: 1; }

#presidentMsg:after{ content: "."; display: block; height: 0; clear: both; visibility: hidden; font-size: 0; }



/*-------------------------------------------------
	150701～add
---------------------------------------------------*/
#top #mainBlock{
	padding-top: 0px;
	position: relative;
	width: 720px;
	height: 336px;
	background-image: url(../img/top/bg_main.png);
	background-repeat: repeat-x;
	overflow: hidden;
	margin-top: 16px;
	margin-right: 0;
	margin-left: 220px;
}
#top #mainBlock .img01{
	float:left;
}
#top #mainBlock .img02{
	float:right;
}
#top #mainBlock .img03{
	position: absolute;
	left: 180px;
	top: 140px;	
}
#top_txt{
	text-align:center;
	padding-top:30px;
	margin-bottom:60px;
}
#recruitArea{
	border: 4px solid #E79230;
	margin-bottom: 80px;
	padding-top: 40px;
	padding-bottom: 5px;
	position: relative;
}
#recruitArea .title01{
	position: absolute;
	left: -4px;
	top: -22px;
}
#recruitArea .list{
	width: 684px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 0px;
}
#recruitArea .list li{
	margin-bottom: 10px;
	background-image: url(../img/top/bg_list.png);
	background-repeat: no-repeat;
	height: 62px;
	width: 684px;
	  padding-top: 2px;
}
#recruitArea .list li a{
	background-image: url(../img/top/icon_rec.png);
	background-repeat: no-repeat;
	font-size: 16px;
	font-weight: bold;
	display: block;
	height: 38px;
	width: 653px;
	padding-top: 20px;
	padding-left: 25px;
	color: #4B4B4B;
	text-decoration: none;
	margin-left: 2px;
	background-position: 98% center;
}
#recruitArea .list li a .txt{
	color: #ED8001;
}
#recruitArea .list li a .txt02{
	color: #003380;
}
#recruitArea .list li a:hover{
	color: #4B4B4B;
	background-color: #F6F0C7;
}

.detail_title01{
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	line-height: 87px;
	color: #003380;
	background-image: url(../img/detail/bg_detail_title_01.jpg);
	background-repeat: no-repeat;
}
.detail_title02{
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	line-height: 87px;
	color: #7A4546;
	background-image: url(../img/detail/bg_detail_title_02.jpg);
	background-repeat: no-repeat;
}
#detail .blueCell{
	margin-bottom: 10px;
	padding: 20px;
	background-color: #E0EEF4;
}

#voice #infoArea03 .left{ width: 202px; float: right; display: inline; margin: 0 40px 40px 0; }

#voice #infoArea03 .right{ width: 360px; float: left; display: inline; margin: 0 0 40px 70px; }

#voice #infoArea03.infoArea{ width: 700px; margin: 30px auto 0; padding-bottom: 10px; background: url(../img/voice/infoarea_shadow_02.png) no-repeat bottom right; }

#voice #infoArea03 .wrapDD{ background: url(../img/voice/infoarea_bg_02.png) repeat-y right top; }
#need #mainLead02{ margin: 0px 0 20px -3px; zoom: 1; position: relative; line-height: 1.0; }