@charset "UTF-8";

/** -------------------------
base
 ------------------------- */
html {
	overflow-y: scroll;
}
body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 			14px;
	line-height: 		1.8;
	color: 				#333;
	background-color: 	#d9d9d9; 
	
	margin:	0;	
}

img {
	border: 	none;
}

h1,h2,h3,h4,h5,h6,
ul,ol,li, dl,dt,dd,
a,hr,img
{
	margin:		0;
	padding:	0 ;
}
ul,ol,li {
	list-style:		none;
}
a, 
a:link,
a:visited {
	color: 				#004C20;
	text-decoration: 	none;
}
a:hover {
	color: 				#D65901;
	text-decoration: 	underline;
}
.bold {
	font-weight:	bold !important;
}
p {
	padding:		0;
	margin:			0 0 18px;
}
.center {
	text-align:		center;
}
.cl {
}
	.cl:after {	
		display:	block;
		width:		1px;
		height:		1px;
		overflow:	hidden;	
		content:	'.';
		clear:		both;
	}
/** --------------------------------
 layout
 ----------------------------------- */
#viewport {
	margin:		0 auto;	
}
	#header {
		position:		fixed;
		left:			0;
		top:			0;
		width:			100%;
		
		z-index:		100;
	}
		#header .inner {
			width: 			800px;
			margin:			0 auto ;
			
			background: 	#FFF;
			border: 		1px solid #830000;
			border-top:		none !important;
		}
	#container {
		width: 			800px;
		margin:			0 auto ;
		padding:		115px 0 36px; /* (103 + 12) 0 36 */
		
		background: 	#FFF;
		border-left: 	1px solid #830000; 
		border-right: 	1px solid #830000; 
	}
		#main {
			margin:		0 0 12px;
		}
/** --------------------------------
 header
 ----------------------------------- */
#header .title {
	background:		#999;
	height:			36px;
	padding:		12px;
	
	font-size:		18px;
	font-weight:	bold;
	line-height:	1.3em;
	color:			#fff;
	
	position:		relative;
}		
	#header .title h1 {
		position:	absolute;
		right:		12px;
		bottom:		6px;
		
		font-size:		18px;
		font-weight:	bold;
		line-height:	18px;
		color:			#fff;
	}
	#header .title .logo {
		position:	absolute;
		left:		12px;
		bottom:		6px;
		
		font-size:		32px;
		font-weight:	bold;
		line-height:	32px;
		color:			#fff;
		letter-spacing:		0.4em;
	}
#gnav {
	margin:				0;
	height: 			50px;
	background-color: 	#eee;
	
	border-top:			12px solid #830000;
}
	#gnav ul {
	}
		#gnav li {
			float:			left;
			margin:			0;
			
			width:			133px; /* (800 / 6) */
			height:			50px;
			vertical-align:	middle;
		}
			#gnav li:last-child {
				width:		135px;
			}
			#gnav li a {
				display:		block;	
				height:			42px;
				padding:		8px 0 0;
				
				font-family: "ヒラギノ角ゴ ProN","Hiragino Kaku Gothic ProN",  "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
				font-size:			16px;
				font-weight:		normal;
				line-height:		1.3em;
				text-decoration:	none;
				color: 				#000;
				text-shadow:		1px 1px 2px #ccc;
				text-align:			center;
				
				background: -moz-linear-gradient(top center, #fff 0%, #ddd 100%);
				background: -webkit-gradient(linear, center top, center bottom, from(#fff), to(#ddd));
				background: linear-gradient(top center, #fff 0%, #ddd 100%);
				
				border-right: 		1px solid #830000;
			}
				#gnav li.home a {
					height:			37px;
					padding:		13px 0 0;
				}

				#gnav li a .sub {
					display:		block;
					font-size:		12px;
					line-height:	1.3em;
				}
				#gnav li:last-child a {
					border-right:		none !important;
				}
				#gnav li a:hover ,
				#gnav li.active a {
					background: 		#830000;
					color:				#fff;
					text-shadow:		1px 1px 2px rgba(0,0,0,0.3);
				}

/** --------------------------------
 main
 ----------------------------------- */

#main {
	min-height:			2000px;
	padding:			24px 24px 0;
}

.main_image {
	margin:			-24px -24px 0;
	height:			400px;
	background:		url(../images/main_image03.jpg) center center no-repeat;
	background-size:	cover;
}
	.main_image .text {	
		height:			376px; /* 400 - 24 */
		padding:		24px 0 0 24px;
/*		background:		rgba(255,255,255, 0.1); */
		
		font-size:		24px;
		font-weight:	bold;
		line-height:	1.4em;
		color:			#830000;
		text-shadow:	1px 1px 2px #fff;
		text-align:		left;
	}

.section {
	border:		1px solid #bbb;
	box-shadow:	1px 1px 3px rgba(0,0,0,0.3);
	
	padding:	8px 12px;
	margin:		0 0 30px;
}

.contact {
	color:			#830000;
}
	.contact dt {
		float:		left;
	}
	.contact dd {
		margin:		0 0 0 30px;
	}
	.contact dd:before {
		content:	'：';
	}

#access_map {
}
	#access_map .tel {
		margin:		18px 0 18px;
		
		font-size:		32px;
		font-weight:	bold;
		line-height:	1.5em;
		color:			#830000;
		/*
		text-shadow:	2px 2px 3px rgba(0,0,0,0.3); */
	}
	#access_map .text {
		margin:	0 0 18px;
		
		font-size: 16px;
		line-height: 1.8em;
	}
	#access_map .map {
		margin:	0 0 18px;
	}
table.table {
	border-collapse:		collapse;
	border:		1px solid #bbb;
	box-shadow:	1px 1px 3px rgba(0,0,0,0.3);
	
	width:		100%;
	margin:		0 0 30px;
}
	table.table tr th , 
	table.table tr td {
		border:		1px solid #ccc;
		padding:	5px 10px;
		text-align:		left;
	}
	table.table tr:last-child th , 
	table.table tr:last-child td {
		border-bottom:		none !important;
	}

.table_company {
}
	.table_company th {
		width:		130px;
		background:		#f7f7f7;
	}
.table_recruit {
}
	.table_recruit th {
		width:		130px;
		background:		#f7f7f7;
	}
	.table_recruit .note {
		font-size:	12px;
	}
	.table_recruit .sub_title {
		font-size:	14px;
		font-weight:	bold;
	}

.recruit_message {
	font-size:	15px;
	line-height:	1.3em;
	color:		#a00;
	
	margin:		20px 0;
}

.work_steps {
	margin:			16px 0 32px;
}
	.work_steps dl {
		margin:		0 0 16px;
		min-height:	42px;
		position:	relative;
	}
		.work_steps dl:after {
			display:	block;
			width:		1px;
			height:		1px;
			overflow:	hidden;
			content:	'';
			clear:		both;
		}
	.work_steps dt {
		position:	absolute;
		left:		0;
		top:		8px;
		bottom:		0;
		
		width:		80px;
		height:		auto;
		
		padding:		0;
		text-align:		center;
		
		/* border:			1px solid #ddd;
		background:		#fff;
		box-shadow:		1px 1px 2px rgba(0,0,0,0.3); */
		background:		url(../images/flowstep_middle.png) left top repeat-y;
	}
		.work_steps dt:last-child {
			position:		relative !important;
			padding:		8px 0 0;
		} 
		.work_steps dt:before {
			position:		absolute;
			left:			0;
			right:			0;
			top:			-8px;
			
			display:		block;
			width:			80px;
			height:			8px;
			overflow:		hidden;
			content:		'';
			background:		url(../images/flowstep_top.png) left top repeat-y;
		}
		.work_steps dt:after {
			position:		absolute;
			left:			0;
			right:			0;
			bottom:			-24px;
			
			display:		block;
			width:			80px;
			height:			24px;
			overflow:		hidden;
			content:		'';
			background:		url(../images/flowstep_bottom.png) left top no-repeat;
			background-size:	100% 100%;
		}
			.work_steps dl.last dt:after {
				background:		url(../images/flowstep_bottom2.png) left top no-repeat;
				background-size:	auto;
			}
	.work_steps dd {
		padding:		8px 0;
		margin:			0 0 0 100px;
	}

/** --------------------------------
 footer
 ----------------------------------- */
#footer {
	position:		fixed;
	left:			0;
	bottom:			0;
	right:			0;
	width:			100%;
		
		z-index:		100;

}
	#footer .inner {
		width:		800px;
		margin:		0 auto;
		
		border:		1px solid #830000;	
		background: 	#830000;
		padding:		3px 0;
		
		font-size: 		12px;
		font-weight: 	bold;
		line-height: 	1.3;
		color: 			#FFF;
		
		text-align: 	center;
	}
/*
.header{
	background-color: #B98888;
	height: 160px;
	padding-bottom: 12px;
	margin-bottom: 12px;
}

*/
/*
.footer_content {
	width: 800px;
	color: #FFF;
	background-color: #666;
	text-align: center;
	font-size: 10px;
	line-height: 1.8em;
	padding-top: 3px;
	padding-right: 6px;
	padding-bottom: 3px;
	padding-left: 6px;
} 

#menu {
	width: 200px;
	float: left;
	margin-top: 15px;
	margin-left: 15px;
} */

/*
table.main{
	border-collapse:collapse;
	cellspacing:0;
	cellpadding:0;
	border-spacing:0;
	empty-cells:show;
	vertical-align: top;
}
.main th{
	color:#585858;
	background-color:#F6F5EC;
	padding:0.3em;
	text-align:left;
	font-size: 15px;
	font-weight: bold;
	vertical-align: top;
}

table.sub{ 
border-collapse: collapse;
border: 1px #888888 solid;
} 

.sub td {
	border: 1px #888888 solid;
	padding-left: 0.5em;
	padding-right: 0.5em;
	vertical-align: top;
} 

.sub th{
	text-align:center;
	background-color:#F6F5EC;
}
*/

.construction {
	font-size: 		16px;
	line-height: 	20px;
	color: #FFF;
	margin-bottom: 10px;
	font-weight: bold;
	background-color: #9C64A6;
	text-align: right;
	padding-right: 8px;
	margin-top: 20px;
}
