@charset "utf-8";

/*--------------------------------------------------------------------
共通
 -------------------------------------------------------------------*/
* {
	margin : 0px;
	padding : 0px;
	list-style:none;
}
img {
	border-style : none;
	border-width : 0px;
	vertical-align:top;
}
body {
	width:100%;
	color:#666;
	font-size : 12px;
	font-family :'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',Osaka,sans-serif;
	text-decoration: none;
	background-color: #F6F6F6;
	line-height:20px;
}
#top {
	background-image: url(../img/top_mainbg.jpg);
	background-repeat: no-repeat;
	background-position: center 100px;
}
#header {
	height:100px;
	background-image: url(../img/bg_head.gif);
	background-repeat: repeat-x;
}
#hd_wrap {width: 960px; margin:0 auto;}
#hd_wrap .headleft {float:left;}
#hd_wrap .headleft h1 { font-size:11px; font-weight:normal; color:#60b5f5; padding:3px 0 10px 0;}
#hd_wrap #nav_box {	float:right; width:582px;}

#hd_wrap #nav_box p {text-align:right;}
#hd_wrap #nav_box .gnav {}
#hd_wrap #nav_box .gnav li {float:left;}

#copy {
	height:152px;
	padding-top:100px;
	text-align:center;
	background-image: url(../img/bg_copy.png);
	background-repeat: repeat-x;
}
#breadcrumb {
	height:22px;
	background-image: url(../img/bg_breadcrumb.gif);
	background-repeat: repeat-x;
}
#breadcrumb .box {
	width:940px;
	margin-left:auto;
	margin-right:auto;
	font-size:10px;
	padding-left: 20px;
}
/*--------------------------------------------------------------------
コンテンツ
 -------------------------------------------------------------------*/
#container {width:966px; margin:0 auto 40px;}
#container h2 { height:70px; font-size:30px; color:#0e91d5; background: url("../img/bg_title.jpg") no-repeat scroll; padding: 50px 0 0 30px;}

#container #service {
	padding:0 30px;
	background-image: url(../img/contents_y.gif);
	background-repeat: repeat-y;
	background-position: center top;
}
#container #service dl { float:left; padding-top:10px;}
#container #service dd { width:204px; padding:10px 10px 0 10px;}

#container #contents_top {
	height:60px;
	padding:50px 30px 0 30px;
	background-image: url(../img/contents_top.gif);
	background-repeat: no-repeat;
	background-position: center top;
}
#container #contents,  #flow {
	padding:0 30px 30px 30px;
	background-image: url(../img/contents_y.gif);
	background-repeat: repeat-y;
	background-position: center top;
}
#container #contents_btm {
	height:10px;
	background-image: url(../img/contents_btm.gif);
	background-repeat: no-repeat;
	background-position: center top;
}
#top_contents {
	margin-top:10px;
}
#top_contents .main {
	float:left;
	padding:30px;
	width:644px;
	height:465px;
	background-image: url(../img/bg_topmain.gif);
	background-repeat: no-repeat;
	background-position: left top;
}


#flow dl { float:left;}
#flow dd { width:140px; padding:10px 5px;}

#update {
	height:60px;
	padding:50px 30px 0 30px;
	background-image: url(../img/contents_top.gif);
	background-repeat: no-repeat;
	background-position: center top;
	position:relative;
}
#update .more a {
	position: absolute;
	right: 30px;
	top: 42px;
}

#contents #newslist li {
	border-bottom:1px dotted #dadada;
	padding:8px 0;
}
#contents #newslist li:last-child {
	border-bottom:none;
}
#contents #newslist li a {
	text-decoration:none;
	color:#0099cc;
}

#contents #news_list li {
	border-bottom:1px dotted #dadada;
	padding:5px 0;
}
#contents #news_list li:last-child {
	border-bottom:none;
}
#contents #news_list li .news_List_Ymd {
	width:120px;
	display:inline-block;
	color:#999;
}
#contents #news_list li a {
	text-decoration:none;
	color:#0099cc;
}

.company { position:relative;}
.company .ceo { position:absolute; top:10px; right:45px;}

h3 {
	font-size:30px;
	font-weight:bold;
	padding-bottom:15px;
	border-bottom:solid 1px #DADADA;
}
.maintop { padding:0; border:none;}


#contents #map {
	margin-top:25px;
	margin-left:auto;
	margin-right:auto;
	width:864px;
	height:300px;
	border:solid 1px #DADADA;
}
#contents .list {
	padding:0 20px;
	width:866px;
}
#contents .list dt{
	clear:both;
	float:left;
	width:200px;
	padding:25px 0 25px 20px;
	font-weight: bold;
}
#contents .list dd{
	border-bottom: 1px dotted #DADADA;
	padding:25px 20px 25px 20px;
}
#contents .list .service01{
	height:280px;
	background-image: url(../img/bg_service01.gif);
	background-repeat: no-repeat;
	background-position: right bottom;
}
#contents .list .service02{
	background-image: url(../img/bg_service02.gif);
	background-repeat: no-repeat;
	background-position: right bottom;
}
#contents .list .service03{
	height:230px;
	background-image: url(../img/bg_service03.gif);
	background-repeat: no-repeat;
	background-position: right bottom;
}
#contents .list .submit {
	text-align:center;
	padding-top:30px;
}
#cap_service {
	height:188px;
	padding-left:50px;
	background-image: url(../img/bg_service.gif);
	background-repeat: no-repeat;
}
#cap_recruit {
	height:188px;
	padding-left:50px;
	background-image: url(../img/bg_recruit.gif);
	background-repeat: no-repeat;
}
#contents .list dd #flow {
	width: 530px;
}
#contents .list dd #flow h4 {
}
#contents .list dd #flow h5 {
	font-size:14px;
	color:#0099cc;
}
#contents .list dd #flow .flowbox {
	margin-top:10px;
	padding: 10px;
	border-top-width: 1px;
	border-right-width: 1px;
	border-left-width: 1px;
	border-top-style: solid;
	border-right-style: solid;
	border-left-style: solid;
	border-top-color: #DADADA;
	border-right-color: #DADADA;
	border-left-color: #DADADA;
}
#contents .list dd #flow .btmline {
	border-bottom:solid 1px #DADADA;
}
#contents .list dd #flow .flowbtm {
	background-image:url(../img/btm_flowbox.gif);
	height:9px;
}

.formtable {
    width: 100%;
}
.formtable th {
    border-bottom: 1px dotted #dadada;
    padding: 25px 0 25px 20px;
    text-align: left;
    width: 220px;
}
.formtable td {
    border-bottom: 1px dotted #dadada;
    padding: 25px 20px;
}
.submit {
    padding-top: 30px;
    text-align: center;
}
input[type="text"], input[type="url"], input[type="email"], input[type="tel"], input[type="password"], input[type="number"], textarea {
    padding: 5px;
}

ol {
    counter-reset: li;
    margin-left: 0;
    padding-left: 0;
}
ol > li {
    list-style: outside none none;
    margin: 0 0 10px 224px;
    position: relative;
}
ol > li::before {
    content: counter(li, decimal);
    counter-increment: li;
    left: -2em;
    padding: 4px;
    position: absolute;
    top: -4px;
    width: 2em;
}

/*--------------------------------------------------------------------
フッター
 -------------------------------------------------------------------*/
#footer {
	border-top: solid 1px #DADADA;
	background-image: url(../img/bg_footer.gif);
	background-repeat: repeat-x;
	background-position: left top;
	height: 134px;
}
#ft_wrap {width: 960px; margin:0 auto;position:relative;}
.fnav {padding-top:10px;}
.fnav a {color:#666;}
.pagetop { position:absolute; right:0; top:0;}
#ft_data {width: 960px; margin:0 auto; padding-top:25px;}
.copy { float:right; padding:50px 5px 0 0;}

/*--------------------------------------------------------------------
OOCSS
 -------------------------------------------------------------------*/
.bold {font-weight:bold;}
.tright {text-align:right;}
.small {font-size:80%;}
.center {text-align:center;}
.lead {margin-bottom:15px;}
.red { color:#F00;}
.f18 {font-size:18px; line-height:24px}
.m_t5 {margin-top:5px;}
.m_t10 {margin-top:10px;}
.m_t15 {margin-top:15px;}
.m_t20 {margin-top:20px;}
.m_t30 {margin-top:30px;}
.m_t40 {margin-top:40px;}
.m_t50 {margin-top:50px;}
.m_b5 {margin-bottom:5px;}
.m_b10 {margin-bottom:10px;}
.m_b15 {margin-bottom:15px;}
.m_b20 {margin-bottom:20px;}
.m_l5 {margin-left:5px;}
.m_l10 {margin-left:10px;}
.m_l15 {margin-left:15px;}
.m_l20 {margin-left:20px;}
.m_r11 {margin-right:11px;}
.p_t5 {padding-top:5px;}
.p_t10 {padding-top:10px;}
.p_t15 {padding-top:15px;}
.p_t20 {padding-top:20px;}
.p_t30 {padding-top:30px;}
.p_b5 {padding-bottom:5px;}
.p_b10 {padding-bottom:10px;}
.p_b15 {padding-bottom:15px;}
.p_b20 {padding-bottom:20px;}
.p_l20 {padding-left:20px;}
.box {padding:0 10px;}

.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {
	display: inline-table;
	min-height: 1%;
}
/* Hides from IE-mac */
* html .clearfix {
	height: 1%;
}
.clearfix {
	display: block;
}
/* End hide from IE-mac */

.left {
	float:left;
}
.right {
	float:right;
}
.clear {
	clear: both;
	font-size: 0px;
	line-height: 0px;
}
