@charset "utf-8";
/* CSS Document */
/* =======================================

	common.css

========================================== */
/*pc*/
@media screen and (min-width: 769px) {
	.sp {display:none!important;}
}

/*sp*/
@media screen and (max-width: 768px) {
	.pc {display:none!important;}
}


/* Link
========================================== */
a:link {color:#333;}
a:visited {color:#333;}
a:hover {
	color:#fb7c3d;
	text-decoration:underline;}

a:hover img.ImgOn {opacity: 0.7;}
a:focus{outline: none;}

/* Clear
========================================== */
.clear:after{
	content:".";
	display:block;
	clear:both;
	height:0px;
	visibility:hidden;
	font-size:0;
}

/* Margin
========================================== */
.mb_20 {
	margin-bottom:20px;}

.mb00{margin-bottom:0px!important;}
.mb10{margin-bottom:10px!important;}
.mb20{margin-bottom:20px!important;}
.mb30{margin-bottom:30px!important;}
.mb40{margin-bottom:40px!important;}
.mb50{margin-bottom:50px!important;}
.mb100{margin-bottom:100px!important;}


@media screen and (max-width: 768px) {
	.mb_20 {
		margin-bottom:0px;}
}

/* Padding
========================================== */


/* Text
========================================== */
.acenter{text-align:center;}
.aright{text-align:right;}
.txt_red {color:#ad0000;}

/* Font
========================================== */


/* Heading
========================================== */
.ttl_type01{
	line-height:1.6;
	position: relative;
	margin-bottom:20px;
	border-bottom: solid 2px #c1cad2;
	font-size:2.0rem;
	font-weight:normal;
	}
	
.ttl_type01:after {
	content: " ";
	position: absolute;
	bottom: -2px;
	display: block;
	width: 20%;
	border-bottom: solid 2px #fb7b3a;
	}
	
.ttl_type02 {
	margin-bottom: 20px;
	padding:10px 10px 8px;
	background: #f3f3f3;
	border-left: solid 4px #163b5f;
	font-weight:normal;
	color: #163b5f;
	}
	
.ttl_type03 {
	position:relative;
	margin-bottom: 20px;
	padding:5px 8px;
	border-left:4px solid #A7C9EB;
	font-size:100%;
	font-weight:normal;
	}

.ttl_type03::after {
	position: absolute;
	left: 0;
	bottom: 0;
	content: '';
	width: 100%;
	height: 0;
	border-bottom: 1px solid #ccc;
}

@media screen and (max-width:768px){
	.ttl_type01, .ttl_type02 {
		margin-bottom: 10px;
	}
}


/* Banner
========================================== */
.bnr_type01{}


/* List
========================================== */
.list_type01{margin-bottom:10px;}

.list_type01 li{
	margin-bottom:5px;
	padding-left:18px;
	position:relative;
	font-size:1.6rem;
}

.list_type01 li::after {
	content:"";
	position:absolute;
	width: 8px;
	height: 8px;
	border: 0px;
	border-top: solid 1px #163b5f;
	border-right: solid 1px #163b5f;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 25%;
	left: 0;
}

/* 横並び */
.list_type02{margin-bottom:10px;}

.list_type02 li{
	float:left;
	margin-right:20px;
	margin-bottom:10px;
	padding-left:18px;
	position:relative;
}

.list_type02 li::after {
	content:"";
	position:absolute;
	width: 8px;
	height: 8px;
	border: 0px;
	border-top: solid 1px #163b5f;
	border-right: solid 1px #163b5f;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 25%;
	left: 0;
}

/* 画像付きリスト */
.list_type03 {
	overflow:hidden;
	margin-bottom:30px;
	}
	
.list_type03 a {
	text-decoration:none;
	color:#fff;
	}
	
.list_type03 a:hover{
	text-decoration: underline;
	}
	
.list_type03 li {
	float:left;
	width:300px;
	font-size:1.6rem;
	margin-right: 30px;
	border: #163b5f 1px solid;
	box-sizing:border-box;
	}
	
.list_type03 li img {
	width:298px;
	}
	
.list_type03 li:last-child {
	margin-right:0;
	}
	
.list_type03 li a:hover img{
	opacity:0.7;
	}
	
.list_text_box {
	background-color:#163b5f;
	padding:15px;
	color:#FFFFFF;
	}
	
.list_job {
	font-size:1.4rem;
	}

/* clear */
.list_type02:after{
	content:".";
	display:block;
	clear:both;
	height:0px;
	visibility:hidden;
	font-size:0;
}

/*box*/
.list_type04{margin-bottom:10px;}

.list_type04 li{
	margin-bottom:5px;
	padding-left:15px;
	background:url(../images/arrow_01.png) 0 4px no-repeat;
}




/* number */
.list_number01{
	margin-bottom:30px;
	margin-left:30px;
}

.list_number01 li{
	margin-bottom:10px;
	list-style-type:decimal;
}

@media screen and (max-width: 768px) {
	.list_type03 li {
		width:32%;
		margin:0 8px 10px 0;
		}
	
	.list_type03 li img, .list_text_box {
		width:100%;
		margin:0 auto;
		display:block;
		}
}

@media screen and (max-width: 599px) {
	.list_type03 li {
		width:100%;
		}
	
	.list_type03 li img, .list_text_box {
		width:100%;
		}
}

/* Button
========================================== */
.btn_detail{
	margin-bottom:10px;
	padding-left:28px;
	min-height:25px;
	background:url(../images/arrow_02.png) 0 0 no-repeat;
}

.btn_detail a{color:#6B7B0F;}

.btn_detail a:hover{color:#A6BF70;}


/* Image
========================================== */
@media screen and (max-width: 768px) {
	.img100,
	.img100 img{
		width:100%;
	}

	.img90,
	.img90 img{
		margin:0 auto;
		width:90%;
	}
}


/* 画像とテキスト
========================================== */
.imageAndText{
	width: 100%;
	overflow:hidden;
	margin-bottom:15px;
	font-size: 1.6rem;
}

.imageAndText .imageBlockLeft{
	float:left;
	margin-right:10px;
}

.imageAndText .imageBlockRight{
	float:right;
	margin-left:10px;
}

.imageAndText .textBlock{
	overflow: hidden;
}

/* clear */
.imageAndText:after{
	content:".";
	display:block;
	clear:both;
	height:0px;
	visibility:hidden;
	font-size:0;
}

@media screen and (max-width: 768px) {
	.imageAndText .imageBlockLeft,
	.imageAndText .imageBlockRight{
		width:30%;
	}

	.imageAndText .imageBlockLeft img,
	.imageAndText .imageBlockRight img{
		width:100%;
	}
}

@media screen and (max-width: 599px) {
	.imageAndText .imageBlockLeft,
	.imageAndText .imageBlockRight{
		float:none;
		margin:0 0 10px 0;
		margin-bottom:10px;
		width:100%;
		text-align:center;
	}


	.imageAndText .imageBlockLeft img,
	.imageAndText .imageBlockRight img{
		width:100%;
	}
}

/* Block
========================================== */
.block_container{
	margin-bottom:20px;
	overflow:hidden;
	width:970px;
}

.block_container .block_col2{
	float:left;
	margin-right:10px;
	width:475px;
}

.block_container .block_col3{
	float:left;
	margin-right:10px;
	width:312px;
}

/* clear */
.block_container:after{
	content:".";
	display:block;
	clear:both;
	height:0px;
	visibility:hidden;
	font-size:0;
}

@media screen and (max-width: 768px) {
	.block_container{
		margin-bottom:20px;
		overflow:hidden;
		width:100%;
	}

	.block_container .block_col2,
	.block_container .block_col3{
		float:none;
		margin-right:0;
		width:100%;
	}

	.block_container .block_col2 img,
	.block_container .block_col3 img{
		width:100%;
	}
}


/* Table
========================================== */
.table_type01{
	width:100%;
	margin-bottom:10px;
	border-collapse: separate;
	border-spacing: 0 6px;
}

.table_type01 th,
.table_type01 td{
	text-align:left;
	vertical-align:middle;
	padding:10px 15px;
}

.table_type01 th{
	background-color:#163b5f;
	color:#fff;
	font-weight:normal;
	border-right: 5px solid #fff;
	width:25%;
}

.table_type01 td{background-color:#f3f3f3;}

.table_type02{
	width:100%;
	margin-bottom:10px;
}

.table_type02 th,
.table_type02 td{
	text-align:left;
	vertical-align:middle;
	padding:10px;
	border:1px solid #aeb4b9;
}

.table_type02 th{
	background-color:#d1deea;
	font-weight:normal;
}


@media screen and (max-width: 599px) {
	.table_type01,
	.table_type01 tbody,
	.table_type01 tr,
	.table_type01 th,
	.table_type01 td{
		display:block;
		width:100%;
	}

	.table_type02,
	.table_type02 tbody,
	.table_type02 tr,
	.table_type02 th,
	.table_type02 td{
		display:block;
		width:100%;
	}
	
	.table_type01 th{
		border-right:0;
	}

	.table_type02 th,
	.table_type02 td{
		border-bottom:none;
	}

	.table_type02{
		border-bottom:1px solid #b6b6b6;}
}


/* Box
========================================== */
.box_type01{}

