@charset "UTF-8";
/* CSS Document */

/*------------------------------------------------------------------------ */
/* --- resetter section --------------------------------------------------- */
* {
	margin: 0px;
	padding: 0px;
}
html {
	overflow-y: scroll;
}

html, body {
	margin: 0px;
	padding: 0px;
}

h1, h2, h3, h4, h5, h6, body, html, p, li, dt, dd, pre, form, fieldset {
	font-family: "メイリオ", "ＭＳ Ｐゴシック", Osaka, sans-serif;
	font-weight: normal;
	margin: 0px;
	padding: 0px;
	color: #333;
	font-style: normal;
	font-size: 14px;
	line-height: 1.6;
}

ul, ol, dl, img {
	margin: 0px;
	padding: 0px;
}
ul, ol {
	list-style-type: none;
}
table {
	border-collapse: collapse;
	border: 0px;
	table-layout: fixed;
}

img {
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	font-size: 0%;
	line-height: 0%;
	vertical-align: bottom;
}
a {
	text-decoration: underline;
}
a:link {
	color: #508fbc;
}
a:active {
	color: #508fbc;
}
a:visited {
	color: #508fbc;
}
a:hover {
	color: #96c3e2;
	text-decoration: none;
}
/*-- リンクの点線を消去 --*/
body div a:active, body div a:focus {
	outline: none;
}

/*ClearFix*/
.clearfix:after {
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
	content: ".";
	zoom: 1;
}

/*------------------------------------------------------------------------ */
/* --- structure section -------------------------------------------------- */

#header #h_box, #header #h_top div.h_top_box, #gnav ul.topmenu, #main_visual, #topicPath, #main, .page_up, #footer #footer_box, .box{
	clear: both;
	width: 1000px;
	margin: 0px auto;
}

#wrapper {
	min-height: 100%;
	margin: 0px auto;
	position: relative;
}
#header {
	/*full width*/
}

#gnav {
	margin: 0px auto;
}

#main {
	/* with in #content & #snav */
	margin: 0px auto 100px auto;
}
#content {
	/* as main content */
	width: 720px;
	float: left;
	position: relative;
}
#snav {
	/* right or left nav space*/
	width: 250px;
	float: right;
}
#footer {
	/* full width*/
}

/*------------------------------------------------------------------------ */
/* --- common design section ------------------------------------------ */
/* ------header------- */
#header {
	margin-bottom:30px;
}

#h_top {
	color: #fff;
	width: 100%;
	height: 20px;
	margin-bottom:10px;
}
#h_top h1 {
	color: #000000;
	font-size: 10px;
	text-align: left;
	padding-top: 2px;
}

#header #h_box{
}

#h_left {
	width: 40%;
	float: left;
}

#logo {
	padding-top:12px;
	margin: 0px 0px 0px 0px;
}
#logo .logo_txt{
	margin-left:18px;
}
#h_right {
	text-align: right;
	float: right;
	width: 50%;
}

#tel_h {
	padding: 0px 20px 0px 0px;
}

#contact {
	padding: 0px 0px 0px 0px;
}

/*------dropdown_nav------*/
#gnav {
	border-bottom:#5096c8 solid 5px;
	background:#005aa0;
}

#gnav ul.topmenu {
	display: block;
	border-left:#5096c8 solid 1px;
	position: relative;
}

#gnav ul.topmenu li {
	float: left;
	border-right:#5096c8 solid 1px;
	position: relative;
}

#gnav ul.topmenu a{
	color:#fff;
	font-size:16px;
	font-weight:bold;
	text-decoration:none;
	display:block;
	padding:15px 44px;
}
#gnav ul.topmenu li:first-child a{
	padding:15px 45px;
}
#gnav ul.topmenu li:hover{
	background: #5096C8;
}


/*------main_visual_box------*/

#main_visual_box {
	background: url(../common_img/bg_main_visual.jpg) no-repeat center bottom;
}
#main_visual_box p{
	color:#fff;
	font-size:12px;
	font-weight:bold;
	padding:10px 0;
	background: #003264;
}
#main_visual {
	position: relative;
	height: 200px;
}
#main_visual_box.main_works{
	background-image: url(../works/images/bg_title_work.jpg);
}
#main_visual_box.main_recruit{
	background-image: url(../recruit/images/bg_title_recruit.jpg);
}
#main_visual_box.main_contact{
	background-image: url(../contact/images/bg_title_contact.jpg);
}
#main_visual_box.main_news{
	background-image: url(../news/images/bg_title_news.jpg);
}
#main_visual_box.main_flow{
	background-image: url(../flow/images/bg_title_flow.jpg);
}
#main_visual_box.main_point{
	background-image: url(../point/images/bg_title_point.jpg);
}
#main_visual_box.main_company{
	background-image: url(../company/images/bg_title_company.jpg);
}
.title_main{
	text-align: center;
	font-size: 30px;
	color: #FFF;
	font-weight: bold;
	padding-top: 70px;
	line-height: 1.2;
	-webkit-font-smoothing: antialiased;
	text-shadow: 0px 0px 15px rgba(0, 0, 0, 1);
}
.title_main span{
	display: block;
	color: #19b4b0;
	font-size: 15px;
	font-weight: bold;
}


/*------topicPath------*/
#topicPath {
	clear: both;
	display: block;
	padding: 10px 0px;
}
#topicPath li {
	font-size: 11px;
	list-style-type: none;
	display: inline;
	padding-top: 3px;
}
#topicPath li.home {
	padding-left: 20px;
	background: url(../common_img/topicpath_home.gif) no-repeat left center;
}
#topicPath li a {
	padding-right: 10px;
	background: url(../common_img/topicpath_arrow.gif) no-repeat right center;
}

ul#topicPath li a:hover {
	/* arrange me */
}

/* ------ main ------- */
#main {
}
/* titles  Use  large -> small  */
.title_sub {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 20px;
	background: url(../common_img/bg_title_sub.gif) no-repeat left;
	line-height: 40px;
	color: #FFF;
	padding-left: 30px;
}
.title_section {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 15px;
	padding-bottom: 5px;
	border-bottom: double 4px #a4c7df;
}
.title_item {
	font-size: 14px;
	font-weight: bold;
	background: url(../common_img/bg_title_item.png) no-repeat left center;
	padding-left: 20px;
	margin-bottom: 10px;
}
.title_page{
	font-size: 18px;
	font-weight: bold;
	display:block;
	margin-bottom: 10px;
}
.title_images{ margin-bottom: 15px;}
/* ------snav left (or right) tool box----- */
#snav li{
	margin-bottom: 15px;
}

/* ------footer------- */
.page_up {
	text-align: right;
}
#scrollUp {
	width: 60px;
	height: 60px;
  bottom: 5%;
  right: 5%;
	background:url(../common_img/pagetop.gif) no-repeat right bottom;
}

#footer {
}
#footer #footer_box {
	padding:42px 0;
}

/*------ f_sitmap ------*/
#footer .f_sitmap{
	text-align:center;
	padding:19px 0;
	background:#005aa0;
}
#footer .f_sitmap li{
	color:#fff;
	display:inline-block;
}
#footer .f_sitmap a{
	color:#fff;
	font-size:14px;
	font-weight:bold;
	text-decoration:none;
	padding:0 15px;
}
#footer .f_sitmap a:hover{
	color: #5096C8;
}
#footer_box .title_f_address{
	color:#00467d;
	font-size:18px;
	font-weight:bold;
	display:block;
	margin-bottom:5px;
}
#footer_box p{
	color:#1e1e1e;
	font-size:14px;
}

.footer_link {
	float: left;
	width: 200px;
	height: 80px;
	padding-left: 15px;
	margin-right: 20px;
}





/* --- utility section ----------------------------------------------------------------------------- */

/* text align */
.txt_c{
	text-align:center !important;
}
.txt_l{
	text-align:left !important;
}
.txt_r{
	text-align:right !important;
}

/* if needs instant arrange */
.sec_p p { margin-bottom: 15px; }

.space_l{
	margin-left:15px;
}
.space_r{
	margin-right:15px;
}
.space_b{
	display:block;
	margin-bottom:15px;
}

#wrapper .mb_clear {
	margin-bottom: 0px;
}
#wrapper .mb10 {
	margin-bottom: 10px;
}
#wrapper .mb15 {
	margin-bottom: 15px;
}
#wrapper .mb20 {
	margin-bottom: 20px;
}
#wrapper .mb30 {
	margin-bottom: 30px;
}
#wrapper .mb40 {
	margin-bottom: 40px;
}
#wrapper .mb50 {
	margin-bottom: 50px;
}

/*-------container------- */
.container {
	margin-bottom: 40px;
}
.container .msg {
	width:470px;
	word-break: break-all;
}
.container .img {
	width:220px;
}
.pic_l .img, .pic_r .msg {
	float: left;
}
.pic_l .msg, .pic_r .img {
	float: right;
}

.flow_picl .img{ float:left; margin-right: 15px; margin-bottom: 5px;}
.flow_picr .img{ float:right; margin-left: 15px; margin-bottom: 5px;}

/* more botton right */
.more{
	margin-top: 10px;
	text-align: right;
}

/* highlight & line_box box */
.highlight{
	padding:15px;
	margin-bottom:40px;
	border: 1px solid #e5e5e5;
	background-color: #f4f4f4;
}
.line_box{
	padding:15px;
	border: 3px solid #E6EEF4;
}

/* table style */
.tb_style{
	width:100%;
	table-layout: auto;
	border-collapse: collapse;
}
.tb_style th,
.tb_style td{
	text-align:left;
	padding:10px;
	border-bottom:#ccc dotted 1px;

}
.tb_style th{
	background:#f4f4f4;
	border-bottom:#e5e5e5 solid 1px;
}

/*------ list_dot ------*/
.list_dot{
	list-style:disc;
	margin:0 0 15px 17px;
}
.list_dot li{ margin-bottom: 5px;}


/* control_area */
.control_area{
	text-align:center;
}
.control_area .btn_left{
	float:left;
}
.control_area .btn_right{
	float:right;
}
.control_area .btn_center{
	display:inline-block;
}
.control_txt a{
	color: #FFF;
	display: block;
	padding:5px 25px;
	background: #005AA0;
	font-weight: bold;
	margin-bottom:15px;
	text-decoration: none;
}
.control_txt a:hover{	background: #099C96; }

/* ------ colum style ------- */
.col2_box, .col3_box, .col4_box{
	margin-bottom:30px;
	position:relative;
}
.col2_box .col2, .col3_box .col3, .col4_box .col4{
	float:left;
}

/* ------2colum------- */
.col2_box {
}
.col2_box .col2 {
}

/* ------3colum------- */
.col3_box {
}
.col3_box .col3 {
}

/* ------4colum------- */
.col4_box {
}
.col4_box .col4 {
}

.txt_b{
	font-weight:bold;
}
.txt_orange{
	color:#ff6900;
}
.txt_red {
	color:#E75942;
}
.txt_red02 {
	color:#ff0202 !important;
}



.menu_col3 li{
	float:left;
	width:230px;
	margin:0 0 10px 15px;
}
.menu_col3 li:nth-child(3n+1) {
	margin-left:0;
}
.menu_col3 a{
	text-align:center;
	display:block;
	padding:10px 0;
	background: #1697b4;
	color: #fff;
	text-decoration: none;
}
.menu_col3 a:hover{
	background:#8eb4bd;
}


.column{
	padding:0 10px;
}
.column .img{
	width:220px;
}
.column .msg{
	width:460px;
}



.title_num{
	font-size:14px;
	font-weight:bold;
	margin-bottom:15px;
}
.title_num img{
	vertical-align:middle;
	margin-right:5px;
}

