@charset "utf-8";

/* Keyvisual
-----------------------------------*/
#keyvisual{
	background-color: #ccc;
	background-position: center top;
	-webkit-background-size: cover;
	     -o-background-size: cover;
	        background-size: cover;
	font-family:  Hiragino Sans, "ヒラギノ角ゴシック", Hiragino Kaku Gothic ProN, "ヒラギノ角ゴ ProN W3", Roboto, "Droid Sans", YuGothic, "游ゴシック", Meiryo, "メイリオ", Verdana, "ＭＳ Ｐゴシック", sans-serif;
	/*height: 400px;*/
	height: 100vh;
	position: relative;
	overflow: hidden;
}
#keyvisual .txt{
	position: absolute;
	top: 10px;
	left: 10px;
	color: #fff;
	font-size: 11px;
}
#keyvisual .images{
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	   -moz-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	     -o-transform: translateX(-50%);
	        transform: translateX(-50%);
}
#keyvisual .ico{
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%,-50%);
	   -moz-transform: translate(-50%,-50%);
	    -ms-transform: translate(-50%,-50%);
	     -o-transform: translate(-50%,-50%);
	        transform: translate(-50%,-50%);
}

/* News
-----------------------------------*/
#top_news{
	padding: 80px 0;
}
#top_news h2{
	font-size: 42px;
	text-align: center;
	margin-bottom: 25px;
}
#top_news .top_news_bloc01{
	padding: 30px 40px;
	background: #FDF4E9;
}
#top_news .top_news_bloc01 h3{
	font-size: 32px;
	text-align: center;
	color: #F08307;
	margin-bottom: 20px;
}
#top_news .top_news_bloc01_left{
	float: left;
	width: 360px;
	padding: 20px 30px;
	background: #fff;
}
#top_news .top_news_bloc01_left h4{
	font-size: 20px;
	text-align: center;
	margin-bottom: 40px;
	position: relative;
	color: #F08307;
}
#top_news .top_news_bloc01_left h4:after{
	content: "";
	position: absolute;
	width: 30px;
	height: 5px;
	background: #F08307;
	left: 50%;
	bottom: -10px;
	margin-left: -15px;
}
#top_news .top_news_bloc01_left li{
	margin-bottom: 20px;
	font-size: 16px;
}
#top_news .top_news_bloc01_left li a{
	color: #000;
	display: block;
	border-bottom: 1px solid  #ccc;
	text-decoration: none;
	-webkit-transition: 0.2s;
	   -moz-transition: 0.2s;
	    -ms-transition: 0.2s;
	     -o-transition: 0.2s;
	        transition: 0.2s;
}
#top_news .top_news_bloc01_left li a:hover{
	color: #F08307;
}
#top_news .top_news_bloc01_left li a .date{
	padding-right: 20px;
}
#top_news .top_news_bloc01_left li a .name{
	padding-right: 15px;
}
#top_news .top_news_bloc01_right{
	float: right;
	width: 360px;
	padding: 20px 30px;
	background: #eeeeee;
}
#top_news .top_news_bloc01_right h4{
	font-size: 20px;
	text-align: center;
	margin-bottom: 40px;
	position: relative;
	color: #666;
}
#top_news .top_news_bloc01_right h4:after{
	content: "";
	position: absolute;
	width: 30px;
	height: 5px;
	background: #666;
	left: 50%;
	bottom: -10px;
	margin-left: -15px;
}
#top_news .top_news_bloc01_right li{
	margin-bottom: 20px;
	font-size: 16px;
}
#top_news .top_news_bloc01_right li a{
	color: #000;
	display: block;
	border-bottom: 1px solid  #ccc;
	text-decoration: none;
	-webkit-transition: 0.2s;
	   -moz-transition: 0.2s;
	    -ms-transition: 0.2s;
	     -o-transition: 0.2s;
	        transition: 0.2s;
}
#top_news .top_news_bloc01_right li a:hover{
	color: #F08307;
}
#top_news .top_news_bloc01_right li a .date{
	padding-right: 20px;
}
#top_news .top_news_bloc01_right li a .name{
	padding-right: 15px;
}

/* Vision
-----------------------------------*/
#top_vision{
	padding: 100px 0;
}
#top_vision .top_vision_box{
	display: table;
	width: 100%;
}
#top_vision h2{
	vertical-align: middle;
	display: table-cell;
	font-size: 26px;
	margin-bottom: 0;
	padding-right: 30px;
	font-weight: 500;
	border-right: 1px dotted  #333;
	width: 285px;
}
#top_vision .txt{
	vertical-align: middle;
	padding-left: 30px;
	display: table-cell;
	line-height: 180%;
	font-size: 15px;
}
.swiper-container .swiper-slide{
	text-align: center;
}

/* Job List
-----------------------------------*/
#top_joblist{
	padding: 100px 0;
	background: #F5F5F5;
}
#top_joblist h2{
	text-align: center;
	font-size: 17px;
	font-weight: 500;
	margin-bottom: 40px;
}
#top_joblist h2 span{
	color: #247395;
	display: block;
	font-family: 'Poppins', sans-serif;
	font-size: 65px;
}
#top_joblist ul{
	font-size: 0;
	text-align: center;
	margin-bottom: 80px;
}
#top_joblist ul li{
	width: 260px;
	background: #fff;
	font-size: 12px;
	display: inline-block;
	margin: 0 15px;
	text-align: left;
}
#top_joblist ul li:first-child{
	margin-left: 0;
}
#top_joblist ul li:last-child{
	margin-right: 0;
}
#top_joblist ul li a{
	display: block;
	text-decoration: none;
}
#top_joblist ul li .txt{
	padding: 20px 25px 10px 25px;
}
#top_joblist ul li .txt .info{
	margin-bottom: 10px;
}
#top_joblist ul li .txt h3{
	font-size: 17px;
	padding-bottom: 20px;
	border-bottom: 1px dotted  #333;
	margin-bottom: 20px;
}
#top_joblist ul li .txt .salary{
	color: #247395;
	font-weight: bold;
	text-align: center;
	margin-bottom: 25px;
}
#top_joblist ul li .txt .salary span{
	font-size: 20px;
	margin: 0 3px;
}
#top_joblist ul li .txt .ico{
	max-width: 26%;
	margin: 0 auto;
	text-align: center;
}
#top_joblist .btn{
	max-width: 210px;
	margin: 0 auto;
	text-align: center;
}

/* Staff List
-----------------------------------*/
#top_stafflist{
	padding: 100px 0;
}
#top_stafflist h2{
	text-align: center;
	font-size: 17px;
	font-weight: 500;
	margin-bottom: 40px;
}
#top_stafflist h2 span{
	color: #247395;
	display: block;
	font-family: 'Poppins', sans-serif;
	font-size: 65px;
}
#top_stafflist ul{
	font-size: 0;
	text-align: center;
	margin-bottom: 80px;
}
#top_stafflist ul li{
	width: 260px;
	background: #fff;
	font-size: 12px;
	display: inline-block;
	margin: 0 15px;
	text-align: left;
}
#top_stafflist ul li:first-child{
	margin-left: 0;
}
#top_stafflist ul li:last-child{
	margin-right: 0;
}
#top_stafflist ul li a{
	display: block;
	text-decoration: none;
}
#top_stafflist ul li .txt{
	padding: 20px 25px 10px 25px;
}
#top_stafflist ul li .txt .pos{
	text-align: center;
	margin-bottom: 5px;
}
#top_stafflist ul li .txt h3{
	font-size: 20px;
	margin-bottom: 15px;
	text-align: center;
	color: #247395;
}
#top_stafflist ul li .txt .ico{
	max-width: 26%;
	margin: 0 auto;
	text-align: center;
}
#top_stafflist .btn{
	max-width: 210px;
	margin: 0 auto;
	text-align: center;
}

/* Company
-----------------------------------*/
#top_company{
	padding: 100px 0;
	background: #F5F5F5;
}
#top_company h2{
	text-align: center;
	font-size: 17px;
	font-weight: 500;
	margin-bottom: 40px;
}
#top_company h2 span{
	color: #247395;
	display: block;
	font-family: 'Poppins', sans-serif;
	font-size: 65px;
}
#top_company table{
	width: 405px;
	border-top: 1px dotted  #444;
}
#top_company table:nth-of-type(1){
	float: left;
}
#top_company table:nth-of-type(2){
	float: right;
}
#top_company table th,
#top_company table td{
	font-size: 15px;
	padding: 20px 10px;
	vertical-align: top;
	border-bottom: 1px dotted  #444;
}
#top_company table th{
	width: 60px;
	text-align: left;
	padding-left: 40px;
}


/* 768px以下の場合 */
@media screen and (max-width: 750px) {
/* Keyvisual
-----------------------------------*/
	#keyvisual{
		font-family:  Hiragino Sans, "ヒラギノ角ゴシック", Hiragino Kaku Gothic ProN, "ヒラギノ角ゴ ProN W3", Roboto, "Droid Sans", YuGothic, "游ゴシック", Meiryo, "メイリオ", Verdana, "ＭＳ Ｐゴシック", sans-serif;
		height: auto;
	}
	#keyvisual .ico{
		width: 30%;
	}

	/* News
	-----------------------------------*/
	#top_news h2{
		font-size: 28px;
	}
	#top_news .top_news_bloc01{
		padding: 6%;
	}

	#top_news .top_news_bloc01 h3{
		font-size: 26px;
	}
	#top_news .top_news_bloc01_left{
		float: none;
		width: auto;
		margin-bottom: 20px;
		padding: 5%;
	}
	#top_news .top_news_bloc01_left li{
		font-size: 14px;
	}
	#top_news .top_news_bloc01_left li a .date{
		padding-right: 10px;
	}
	#top_news .top_news_bloc01_left li a .name{
		padding-right: 5px;
	}
	#top_news .top_news_bloc01_right{
		float: none;
		width: auto;
		padding: 5%;
	}
	#top_news .top_news_bloc01_right li{
		font-size: 14px;
	}
	#top_news .top_news_bloc01_right li a .date{
		padding-right: 10px;
	}
	#top_news .top_news_bloc01_right li a .name{
		padding-right: 5px;
	}

	/* Search
	-----------------------------------*/
	#top_search h2{
		font-size: 28px;
	}
	#top_search .top_search_bloc01,
	#top_search .top_search_bloc02{
		padding: 30px 3%;
	}
	#top_search .top_search_bloc01 h3,
	#top_search .top_search_bloc02 h3{
		margin-bottom: 20px;
	}
	#top_search .top_search_bloc01 li{
		width: 47%;
		font-size: 14px;
		padding: 0;
		margin-right: 3%;
		margin-bottom: 20px;
	}
	#top_search .top_search_bloc01 li:nth-child(3n){
		margin-right: 3%;
	}
	#top_search .top_search_bloc01 li:nth-child(even){
		margin-right: 0;
	}
	#top_search .top_search_bloc01 li a{
		padding: 15px 0;
	}
	#top_search .top_search_bloc02 ul li{
		width: auto;
		width: 50%;
		/*float: none;*/
		margin-right: 0;
		margin-bottom: 10px;
		font-size: 12px;
	}
	#top_search .top_search_bloc02 ul li label{
		padding: 0 20px 0 30px;
	}
	#top_search .top_search_bloc02 ul li label:after {
		margin-top: -13px;
		width: 20px;
		height: 20px;
	}
	#top_search .top_search_bloc02 ul li label:before {
		width: 14px;
		height: 14px;
		margin-top: -8px;
	}
	#top_search .top_search_bloc02 .buttons input[type="text"]{
		max-width: 100%;
		width: 73%;
		font-size: 14px;
	}
	#top_search .top_search_bloc02 .buttons input[type="submit"]{
		font-size: 14px;
		width: 25%;
	}
	#top_search .btn01 a{
		padding: 15px 0;
		-webkit-border-radius: 10px;
		        border-radius: 10px;
		font-size: 20px;
	}
	#top_search .btn01 a:after{
		right: 20px;
	}

	/* Vision
	-----------------------------------*/
	#top_vision{
		padding: 60px 0;
	}
	#top_vision .top_vision_box{
		display: block;
	}
	#top_vision h2{
		font-size: 22px;
		display: block;
		padding-right: 0;
		padding-bottom: 15px;
		margin-bottom: 20px;
		border-right: none;
		border-bottom: 1px dotted  #333;
		width: auto;
	}
	#top_vision .txt{
		font-size: 14px;
		padding-left: 0;
		display: block;
	}

	/* Company
	-----------------------------------*/
	#top_company{
		padding: 60px 0;
	}
	#top_company h2{
		font-size: 14px;
	}
	#top_company h2 span{
		font-size: 45px;
	}
	#top_company table{
		width: 100%;
	}
	#top_company table:nth-of-type(1){
		float: none;
	}
	#top_company table:nth-of-type(2){
		float: none;
		margin-top: -1px;
	}
	#top_company table th,
	#top_company table td{
		font-size: 14px;
		padding: 20px 10px;
		vertical-align: top;
		border-bottom: 1px dotted  #444;
	}
	#top_company table th{
		width: 80px;
		text-align: left;
	}

	/* Job List
	-----------------------------------*/
	#top_joblist{
		padding: 60px 0;
		background: #F5F5F5;
	}
	#top_joblist h2{
		font-size: 14px;
	}
	#top_joblist h2 span{
		font-size: 45px;
	}
	#top_joblist ul{
		margin-bottom: 0;
	}
	#top_joblist ul li{
		width: 100%;
		margin: 0 0 40px 0;
	}
	#top_joblist ul li .thumb img{
		width: 100%;
	}
#top_joblist ul li .txt{
	padding: 20px 25px 10px 25px;
}
#top_joblist ul li .txt h3{
	font-size: 17px;
	padding-bottom: 20px;
	border-bottom: 1px dotted  #333;
	margin-bottom: 20px;
}
#top_joblist ul li .txt .salary{
	color: #247395;
	font-weight: bold;
	text-align: center;
	margin-bottom: 25px;
}
#top_joblist ul li .txt .salary span{
	font-size: 20px;
	margin: 0 3px;
}
	#top_joblist .btn{
		max-width: 160px;
	}

	/* Staff List
	-----------------------------------*/
	#top_stafflist{
		padding: 60px 0;
	}
	#top_stafflist h2{
		font-size: 14px;
	}
	#top_stafflist h2 span{
		font-size: 45px;
	}
	#top_stafflist ul{
		margin-bottom: 0;
	}
	#top_stafflist ul li{
		width: 100%;
		margin: 0 0 40px 0;
	}
	#top_stafflist ul li .thumb img{
		width: 100%;
	}
#top_stafflist ul li a{
	display: block;
	text-decoration: none;
}
#top_stafflist ul li .txt{
	padding: 20px 25px 10px 25px;
}
#top_stafflist ul li .txt .pos{
	text-align: center;
	margin-bottom: 5px;
}
#top_stafflist ul li .txt h3{
	font-size: 20px;
	margin-bottom: 15px;
	text-align: center;
	color: #247395;
}
#top_stafflist ul li .txt .ico{
	max-width: 26%;
	margin: 0 auto;
	text-align: center;
}
	#top_stafflist .btn{
		max-width: 160px;
	}

}