@charset "utf-8";
body{
	font-family : -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;

}
a{
	text-decoration : none;
}
li{
	list-style : none;
}
/**/
.c_wrap{
	position : relative;
	width : 1090px;
	height : auto;
	margin : 0 auto;
}
.contents01,
.contents02,
.contents03,
.contents04,
.contents05,
.contents06,
.contents07{
	position : relative;
	width : 100%;
	height : auto;
	padding : 100px 0;
}
.contents02,
.contents04,
.contents06{
	background : #1E5B8D;
}
.contents05,
.contents07{
	background : #E6EEF4;
}
.contents02 h2,
.contents03 h2,
.contents04 h2,
.contents05 h2,
.contents06 h2,
.contents07 h2{
	position : relative;
	display : inline-block;
	border : 1px solid #fff;
	color : #fff;
	font-size : 20px;
	letter-spacing : 0.5em;
	text-indent : 0.5em;
	padding : 5px 20px;
	margin : 0 0 30px 0;
}
.contents03 h2,
.contents05 h2,
.contents07 h2{
	border : 1px solid #545454;
	color : #545454;
}
/* header */
header{
	position : relative;
	width : 100%;
	height : 220px;
	padding : 30px 0;
	background : url("../images/img_main.jpg")no-repeat;
}
header .header_wrap{
	position : relative;
	width : 1090px;
	height : auto;
	margin : 0 auto;
	color : #fff;
}
header .header_wrap h1{
	font-size : 22px;
	font-weight : normal;
}
header .header_wrap h1 span{
	position : relative;
	display : block;
	font-size : 16px;
	margin-top : -5px;
}
header .header_wrap p{
	font-size : 25px;
	margin-top : 34px;
}
header nav{
	position : relative;
	width : 1090px;
	margin : 0 auto;
	padding-top : 37px;
}
header nav ul{
	display : flex;
	display : -ms-flexbox; /* IE10 */
	display : -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display : -webkit-flex; /* Safari6.1以降 */
	-webkit-justify-content : flex-end;/* Safari etc. */
	-ms-justify-content : flex-end;/* IE10 */
	justify-content : flex-end;
}
header nav ul li{
	margin-left : 10px;
	color : #fff;
}
header nav ul li a{
	color : #fff;
	margin-right : 10px;
}
header nav ul li:first-child a{
	margin-left : 10px;
}
header nav ul li a:hover{
	color : #15f4ff;
}
/* contents01 */
.contents01{
	padding : 100px 0 0;
}
.contents01 .staff{
	position : relative;
	width : 100%;
	height : 330px;
}
.contents01 .staff h2{
	position : relative;
	float : left;
	color : #fff;
	font-size : 22px;
	font-weight : normal;
	background : #1B63CC;
	width : 320px;
	height : 190px;
	text-align : center;
	padding : 80px 0;
	z-index : 10;
}
.contents01 .staff .prof_box{
	position : absolute;
	top : 30px;
	left : 30px;
	width : 1055px;
	height : 300px;
	background : #fff;
	box-shadow : 2px 2px 5px 1px rgba(0,0,0,0.4);
	display : flex;
	display : -ms-flexbox; /* IE10 */
	display : -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display : -webkit-flex; /* Safari6.1以降 */
	-webkit-justify-content : flex-end;/* Safari etc. */
	-ms-justify-content : flex-end;/* IE10 */
	justify-content : flex-end;
}

.contents01 .staff .prof_box .prof_inner{
	position : relative;
	width : 420px;

}
.contents01 .staff .prof_box h3{
	font-size : 25px;
	font-weight : normal;
	padding-top : 30px;
	margin-bottom : 70px;
}
.contents01 .staff .prof_box h3 span{
	display : block;
	font-weight : bold;
	border-top : 1px solid #000;
	margin-top : 5px;
	padding-top : 5px;
}
.contents01 .staff .prof_box h3 span.name_bar,
.contents01 .staff .prof_box h3 span.prof_name{
	display : inline;
	border : none;
	font-weight : normal;
}
.contents01 .staff .prof_box h3 span.name_bar{
	margin : 0 5px;
}
.contents01 .staff .prof_box .staff_info span{
	display : block;
	margin-left : 3em;
	border-bottom : 1px solid #000;
	padding-bottom : 5px;
	margin-bottom : 10px;
}
.contents01 .staff_info ul{
	position : relative;
	margin-left : 3em;
	display : flex;
	display : -ms-flexbox; /* IE10 */
	display : -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display : -webkit-flex; /* Safari6.1以降 */
	flex-wrap : wrap;
	-ms-flex-wrap : wrap; /* IE10 */
	-webkit-flex-wrap : wrap; /* Safari6.1以降 */
}
.contents01 .staff_info ul li{
	width : 50%;
}
.contents01 .staff .staff_image{
	position : relative;
	display : block;
	width : 300px;
	height : 300px;
	overflow : hidden;
}
.contents01 .staff .staff_image img{
	width : 100%;
}
.contents01 .staff_info_sp{
	display : none;
}
/* contents02 */
.contents02{
	top : -50px;
	z-index : -1;
	background : url("../images/img_back.jpg")repeat-y;
}
.contents02 p{
	color : #fff;
	line-height : 1.8;
	text-align : justify;
}
/* contents03 */
.contents03{
	padding : 50px 0 100px;
}
.contents03 ul{
	margin-bottom : 50px;
}
.contents03 ul.c03_list02{
	display : flex;
	display : -ms-flexbox; /* IE10 */
	display : -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display : -webkit-flex; /* Safari6.1以降 */
}
.contents03 ul.c03_list02 li{
	margin-right : 20px;
}
.c03_image{
	display : flex;
	display : -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display : -webkit-flex; /* Safari6.1以降 */
	display : -ms-flexbox; /* IE10 */
	flex-wrap : wrap;
	-webkit-flex-wrap : wrap; /* Safari6.1以降 */
	-ms-flex-wrap : wrap; /* IE10 */
	justify-content : space-between;
	-webkit-box-pack : justify;
	-ms-flex-pack: justify;
	margin-bottom : 50px;
}
.c03_image span{
	display : block;
	width : 24%;
	margin-bottom : 10px;
}
.c03_image span img{
	width : 100%;
}
/* contents04 */
.contents04{

}
.contents04 p{
	color : #fff;
	margin-bottom : 30px;
}
.contents04 dl{
	position : relative;
	width : 100%;
	overflow : hidden;
	color : #fff;
}
.contents04 dl dt{
	float : left;
	width : 15%;
	margin-bottom : 10px;
}
.contents04 dl dd{
	float : left;
	width : 80%;
	margin-bottom : 10px;
}
/*  */
.contents05 p,
.contents06 p,
.contents07 p{
	line-height : 1.8;
}
.contents06 p{
	color : #fff;
}
/* footer */
footer{
	padding : 20px 0 0 0;
	background : #222230;
}
footer ul{
	text-align : center;
	margin-bottom : 30px;
}
footer ul li{
	display : inline-block;
	color : #fff;
}
footer ul li a{
	color : #fff;
	padding : 0 10px;
}
footer ul li a:hover{
	color : #15f4ff;
}
.footer_box{
	position : relative;
	width : 600px;
	margin : 0 auto 30px;
}
.footer_box p{
	color : #fff;
}
.footer_box p a{
	color : #fff;
}
.copy{
	padding : 10px 0;
	background : #0D3E60;
	text-align : center;
	color : #fff;
}
/*__________________________________________*/
@media screen and (max-width : 1089px){
header{
	padding : 15px 0;
}
header .header_wrap{
	width : 100%;
	padding : 0 10px;
}
header nav{
	width : 100%;
	padding : 51px 10px 0;
}
.c_wrap{
	width : 100%;
	padding : 0 10px;
}
.contents01 .staff{
	height : auto;
}
.contents01 .staff h2{
	float : none;
	width : 100%;
	height : auto;
	padding  : 10px 0;
}
.contents01 .staff .prof_box{
	position : relative;
	top : 0;
	left : 0;
	width : 100%;
	padding-left : 10px;
	box-shadow : none;
}
}


@media screen and (max-width : 860px){
.contents04 dl dt,
.contents04 dl dd{
	float : none;
	width : 100%;
}
.contents04 dl dt{
	margin-bottom : 5px;
}
.contents04 dl dd{
	margin-bottom : 20px;
}
}


@media screen and (max-width : 770px){
.contents01 .staff .prof_box{
	padding-left : 0;
}
.contents01 .staff .prof_box .prof_inner{
	width : 55%;
}
.contents01 .staff .staff_image{
	width : 45%;
}
.contents01 .staff .prof_box .staff_info span{
	margin-left : 0;
}
.contents01 .staff_info ul{
	margin-left : 0;
}
}


@media screen and (max-width : 600px){
header nav{
	padding : 51px 0 0;
}
header nav ul{
	-webkit-justify-content : flex-start;/* Safari etc. */
	-ms-justify-content : flex-start;/* IE10 */
	justify-content : flex-start;
}
header nav ul li{
	margin-left : 0;
}
.footer_box{
	width : 100%;
	padding : 0 10px;
}
.footer_box p{
	margin-bottom : 20px;
}
.footer_box span{
	display : block;
}
footer ul{
	text-align : left;
}
}


@media screen and (max-width : 500px){
.contents01 .staff .prof_box h3{
	font-size : 18px;
}
.contents01 .staff .prof_box h3 span{
	fon-size : 16px;
}
.staff_info{
	display : none;
}
.contents01 .staff_info_sp{
	clear : both;
	display : block;
	padding : 0 10px 10px;
}
.contents01 .staff_info_sp span{
	display : block;
	border-bottom : 1px solid #000;
	padding-bottom : 5px;
	margin-bottom : 10px;
}
.contents01 .staff_info_sp ul{
	position : relative;
	display : flex;
	display : -ms-flexbox; /* IE10 */
	display : -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display : -webkit-flex; /* Safari6.1以降 */
	flex-wrap : wrap;
	-ms-flex-wrap : wrap; /* IE10 */
	-webkit-flex-wrap : wrap; /* Safari6.1以降 */
}
.contents01 .staff_info_sp ul li{
	width : 50%;
}
.contents01 .staff .prof_box{
	display : block;
	width : 100%;
	height : auto;
	overflow : hidden;
}
.contents01 .staff .prof_box .prof_inner{
	float : left;
	width : 55%;
}
.contents01 .staff .staff_image{
	display : block;
	width : 45%;
	height : auto;
}
}


@media screen and (max-width : 480px){
.contents02 h2,
.contents03 h2,
.contents04 h2,
.contents05 h2,
.contents06 h2,
.contents07 h2{
	display : block;
	text-align : center;
}
}