@charset "UTF-8";
/* フォームデザイン
-------------------------------------*/
@import url("./contact.css");

/* ▼▼▼ 採用情報
=====================================*/
/* 共通 */
.entry_btn{
	max-width: 500px;
	width: 100%;
	height: 120px;
	line-height: 120px;
	font-size: 32px;
	font-weight: bold;
	text-align: center;
	margin: 100px auto 0;
	box-shadow: 0px 2px 4px 2px rgba(0,0,0,0.2);
	}
	.entry_btn a{
		display: block;
		background: #FF9300;
		color: #fff;
		position: relative;
		text-indent: 30px;
		}
	.entry_btn a:before{
		content: "";
		background: url(../img/recruit/entry_icon.png) no-repeat center/contain;
		width: 68.93px;
		height: 57.92px;
		position: absolute;
		top: 50%;
		left: 40px;
		transform: translate(-0%,-50%);
		-webkit-transform: translate(-0%,-50%);
		}
	.entry_btn a:after{
		content: "";
		width: 10px;
		height: 10px;
		border-right: 2px solid #fff;
		border-top: 2px solid #fff;
		border-bottom: 0;
		border-left: 0;
		transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		position: absolute;
		top: 55px;
		right: 50px;
		}
	.entry_btn:hover{
		opacity: 0.6;
		}

/* TOPページ
-------------------------------------*/
/* タイトル */
#recruit.top #title_area{
	background: url(../img/recruit/top_title_bg.jpg) no-repeat center top/cover;
	padding: 200px 0 50px;
	margin-bottom: 80px;
	}
	#recruit.top #title_area .title_wrap{
		margin: 100px auto 100px;
		color: #fff;
		text-align: center;
		}
	#recruit.top #title_area .title_wrap .read_txt{
		display: inline-block;
		background: rgba(255, 255, 255, 0.5);
		padding: 0 10px;
		margin-top: 50px;
		text-align: center;
		font-size: 24px;
	}
	#recruit.top #title_area .title_wrap .read_txt span{
		display: inline-block;
		width: 10em;
	}
	#recruit.top #title_area ul{
		max-width: 890px;
		width: 100%;
		margin: 0 auto;
		overflow: hidden;
		}
	#recruit.top #title_area ul li{
		float: left;
		 max-width: 420px;
		 width: 50%;
		 text-align: center;
		}
	#recruit.top #title_area ul li:nth-child(2){
		margin-left: 5%;
		}
	#recruit.top #title_area ul li:hover{
		opacity: 0.6;
		}
	#recruit.top #title_area ul li a{
		display: block;
		border: 5px solid #E5012D;
		background: #fff;
		height: 120px;
		line-height: 120px;
		color: #E5012D;
		font-size: 25px;
		font-weight: bold;
		position: relative;
		padding-left: 20px;
		}
	#recruit.top #title_area ul li:nth-child(2) a{
		border: 5px solid #0091FF;
		color: #0068B7;
		padding-left: 30px;
		}
	#recruit.top #title_area ul li a:after{
		content: "";
		width: 10px;
		height: 10px;
		border-right: 2px solid #E5012D;
		border-top: 2px solid #E5012D;
		border-bottom: 0;
		border-left: 0;
		position: absolute;
		top: 55px;
		right: 30px;
		vertical-align: middle;
		transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		}
	#recruit.top #title_area ul li:nth-child(2) a:after{
		border-right: 2px solid #0068B7;
		border-top: 2px solid #0068B7;
		right: 18px;
		}
	#recruit.top #title_area ul li img{
		max-width: 42px;
		width: 100%;
		vertical-align: middle;
		position: absolute;
		top: 30px;
		left: 55px;
		}
	#recruit.top #title_area ul li:nth-child(2) img{
		left: 20px;
		}
.top h2{
	font-size: 36px;
	text-align: center;
	margin-bottom: 40px;
	}
	.top h2 span{
		color: #0068B7;
		}
.top .read{
	text-align: center;
	line-height: 1.8;
	margin-bottom: 100px;
	}

/* TOP_社長メッセージ */
#top_message{
	position: relative;
	overflow: hidden;
	}
	#top_message .bg{
	    float: left;
		padding: 113px 0 113px 110px;
		text-align: center;
		}
	#top_message .bg:before{
		content: "";
		background: #0068B7;
		width: 550px;
		height: 400px;
		position: absolute;
		top: 0;
		left: 0;
		z-index: -1;
		}
	#top_message .bg > div{
		display: inline-block;
		}
	#top_message .bg h3.title{
		font-size: 35px;
		margin-bottom: 45px;
		}
	#top_message .bg h3.title,
	#top_message .bg h3 span{
		color: #fff;
		text-align: left;
		}
	#top_message .more_btn a{
		border-color: #fff;
		color: #fff;
		}
	#top_message .more_btn a:after{
		border-color: #fff;
		}
	#top_message .img{
		float: right;
		}
	#top_message .img img{
		max-width: 550px;
		width: 100%;
		}

/* TOP_先輩社員の声 */
ul.voice_list{
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: center;
	}
	ul.voice_list li{
		background: #F2F2F2;
		width: 22%;
		margin-right: 2%;
		margin-bottom: 2%;
		}
	/* ul.voice_list li:not(:nth-child(3n)){
		margin-right: 2%;
		} */
	/* ul.voice_list li:not(:nth-child(-n + 3)){
		margin-top: 40px;
		} */
	ul.voice_list li a{
		display: block;
		color: #000;
		}
	ul.voice_list li a div{
		display: table;
		width: 100%;
		padding: 20px;
		position: relative;
		}
	ul.voice_list li a div:after{
		content: "";
		width: 10px;
		height: 10px;
		border-right: 2px solid #0068B7;
		border-top: 2px solid #0068B7;
		border-bottom: 0;
		border-left: 0;
		position: absolute;
		top: 45%;
		right: 20px;
		vertical-align: middle;
		transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		}
	ul.voice_list li a div:hover{
		opacity: 0.6;
		}
	ul.voice_list li a div p{
		display: table-cell;
		vertical-align: middle;
		font-size: 14px;
		}
	ul.voice_list li a div p span{
		display: block;
		font-size: 20px;
		font-weight: bold;
		}
		ul.voice_list li a div .year{
			font-size: 16px;
		}

/* TOP_よくあるご質問 */
.faq dl{
	margin-bottom: 20px;
	}
	.faq dt,
	.faq dd{
		padding: 25px 80px 25px 120px;
		}
	.faq dt{
		background: #E2F2FF;
		font-weight: bold;
		position: relative;
		cursor: pointer;
		}
	.faq dt span{
		float: left;
		color: #0068B7;
		width: 10%;
		position: absolute;
		top: 25px;
		left: 40px;
		}
	.faq dt span:after{
		content: "Q.";
		color: #0068B7;
		position: absolute;
		top: 0;
		left: 30px;
		}
	.faq dt:before,
	.faq dt:after{
		content: "";
		position: absolute;
		top: 45%;
		}
	.faq dt:before{
		background: #fff;
		width: 20px;
		height: 20px;
		border-radius: 50%;
		right: 40px;
		margin-top: -4px;
		}
	.faq dt:after{
		width: 7px;
		height: 7px;
		border-right: 1px solid #0068B7;
		border-bottom: 1px solid #0068B7;
		border-top: 0;
		border-left: 0;
		vertical-align: middle;
		transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		right: 46px;
		}
	.faq dt.open:after{
		width: 7px;
		height: 7px;
		border-right: 0;
		border-bottom: 0;
		border-top: 1px solid #0068B7;
		border-left: 1px solid #0068B7;
		margin-top: 4px;
		}
	.faq dd{
		display: none;
		background: #F5F5F5;
		position: relative;
		}
		.faq dd:before{
			content: "A.";
			color: #E5012D;
			font-weight: bold;
			position: absolute;
			top: 25px;
			left: 70px;
			}

/* 先輩の声
-------------------------------------*/
#recruit.voice section:not(#voice_area){
	margin-bottom: 0;
	}
#main_img{
	background: url(../img/recruit/voice/voice01_bg.png) no-repeat center bottom/100%;
	font-weight: bold;
	width: 100%;
	padding: 50% 0 0;
	margin: 0 auto 100px;
	position: relative;
	}
		#main_img.voice_02{
			background: url(../img/recruit/voice/voice02_bg.png) no-repeat center bottom/100%;
		}
		#main_img.voice_03{
			background: url(../img/recruit/voice/voice03_bg.png) no-repeat center bottom/100%;
		}
		#main_img.voice_04{
			background: url(../img/recruit/voice/voice04_bg.png) no-repeat center bottom/100%;
		}
		#main_img.voice_05{
			background: url(../img/recruit/voice/voice05_bg.png) no-repeat center bottom/100%;
		}
		#main_img.voice_06{
			background: url(../img/recruit/voice/voice06_bg.png) no-repeat center bottom/100%;
		}
		#main_img.voice_07{
			background: url(../img/recruit/voice/voice07_bg.png) no-repeat center bottom/100%;
		}
	#main_img div{
		position: absolute;
		top: 65%;
		left: 8%;
		}
	
	#main_img .team{
		color: #0068B7;
		font-size: 30px;
		}
	#main_img .name{
		font-size: 30px;
		position: relative;
		/* line-height: 30px;
		margin-top: 20px; */
		line-height: 1;
		font-weight: 500;
		}
	#main_img .year{
		font-size: 20px;
		margin-left: 20px;
	}
	#main_img img{
		max-width: 436px;
		float: right;
		}
	ul.txt{
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		margin-bottom: 60px;
		}
	ul.txt li{
			width: 47%;
			}
	ul.txt li:not(:last-child){
		margin: 0 auto 50px;
		}
	ul.txt li:nth-child(even){
		margin-left: 6%;
		}
	#recruit ul.txt li h2.title_Lline:nth-of-type(2){
		margin-top: 40px;
		}
	ul.txt li p:nth-child(2){
		margin-top: 20px;
		}
#recruit.voice section#schedule{
	background: #F2F2F2;
	padding: 50px 0 60px;;
	margin-bottom: 50px;
	}
	h3.icon{
		font-size: 32px;
		color: #0068B7;
		text-align: center;
		margin-bottom: 50px;
		}
	h3.icon:before{
			display: inline-block;
			content: "";
			background: url(../img/recruit/voice/schedule_icon.png) no-repeat center/contain;
			width: 48px;
			height: 48px;
			vertical-align: middle;
			margin-right: 20px;
			}
		#schedule > div{
			display: -webkit-box;
			display: -webkit-flex;
			display: -ms-flexbox;
			display: flex;
			-webkit-flex-wrap: wrap;
			-ms-flex-wrap: wrap;
			flex-wrap: wrap;
			width: 720px;
			margin: 0 auto;
			}
		#schedule > div > div{
			width: 63%;
			}
		p.comments{
			margin-top: 30px;
			width: 80%;
			}
		.schedule_list li{
			display: table;
			font-weight: bold;
			position: relative;
			}
		.schedule_list li:not(:last-child){
			margin-bottom: 37px;
			}
		.schedule_list li:not(:last-child):after{
			content: "";
			width: 0;
			height: 0;
			border-style: solid;
			border-width: 10px 10px 0 10px;
			border-color: #0269B7 transparent transparent transparent;
			position: absolute;
			top: 65px;
			left: 80px;
			}
		.schedule_list li p{
			display: table-cell;
			vertical-align: middle;
			}
		.schedule_list li span{
			display: block;
			background: #0068B7;
			border-radius: 50%;
			width: 50px;
			height: 50px;
			line-height: 50px;
			margin-right: 30px;
			color: #fff;
			text-align: center;
			}
		.schedule_list li:not(:last-child) span:after{
			content: "";
			background: #C7C7C7;
			width: 2px;
			height: 50px;
			position: absolute;
			left: 25px;
			top: 50px;
			}
		.photo_area{
			display: inline-block;
			}
		.photo_area li:not(:last-child){
			margin-bottom: 10px;
			}
		.photo_area img{
			max-width: 260px;
			width: 100%;
			}

#voice_area h3.icon:before{
		background: url(../img/recruit/voice/voice_icon.png) no-repeat center/contain;
		width: 59.5px;
		height: 48.5px;
		margin-right: 10px;
		}
	#voice_area ul.voice_list li{
		width: 23.5%;
		}
	#voice_area ul.voice_list li:not(:nth-child(3n)),
	#voice_area ul.voice_list li:not(:nth-child(-n + 3)){
		margin: 0;
		margin-bottom: 1.5%;
		}
	#voice_area ul.voice_list li:not(:last-child){
		margin-right: 1.5%;
		margin-bottom: 1.5%;
		}

/* 募集要項（キャリア採用・新卒採用）
-------------------------------------*/
/* キャリア採用 */
h2.title_adopt{
	color: #0068B7;
	font-size: 40px;
	text-align: center;
	margin: 0 auto 50px;
	}
	h2.title_adopt:before{
		display: inline-block;
		content: "";
		background: url(../img/recruit/career.png) no-repeat center/contain;
		width: 46.43px;
		height: 59.26px;
		vertical-align: top;
		margin-right: 15px;
		}
.desc{
	margin-bottom: 50px;
	}
h4.title_adopt{
	font-size: 34px;
	text-align: center;
	margin: 0 auto 50px;
	}
	h4.title_adopt:before{
		display: inline-block;
		content: "";
		background: url(../img/recruit/requirements.png) no-repeat center/contain;
		width: 39.57px;
		height: 49.99px;
		vertical-align: middle;
		margin-right: 15px;
		}
/* タブ */
	.tabs_list{
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		justify-content: center;
		font-size: 22px;
		font-weight: bold;
		}
		.tabs_list li{
			background: #0068B7;
			border-radius: 4px 4px 0 0;
			width: 192px;
			height: 80px;
			line-height: 80px;
			cursor: pointer;
			text-align: center;
			}
			.tabs_list li a{
				display: block;
				color: #fff;
			}
			.tabs_list li.checked{
				background:#F2F2F2;
				color:#000;
			}
			.tabs_list li:hover,
			.tabs_list li:hover a{
				background:#F2F2F2;
				border-radius: 4px 4px 0 0;
				color:#000;
			}
			.tabs_list li:not(:last-child){
				margin-right: 10px;
			}
.inner_area{
	background: #F2F2F2;
	padding: 50px 20px;
	margin-bottom: 80px;
	}
	#tabs_inner h5{
		font-size: 22px;
		text-align: center;
		margin-bottom: 30px;
		}
	#tabs_inner table{
        width: 100%;
		}
	#tabs_inner table th,
	#tabs_inner table td{
		padding: 20px 0;
		}
	#tabs_inner table th{
		border-bottom: 2px solid #0068B7;
		width: 20%;
		}
	#tabs_inner table td{
		border-bottom: 2px solid #C7C7C7;
		}
	#tabs_inner table tr:first-child th{
		border-top: 2px solid #0068B7;
		}
	#tabs_inner table tr:first-child td{
		border-top: 2px solid #C7C7C7;
		}
#sec_02{
	padding-top: 120px;
	margin-top: -120px;
}
#sec_03 p.desc:nth-of-type(2){
	margin-bottom: 20px;
	}
	#sec_03 ul.step{
		margin-bottom: 50px;
		}
	#sec_03 ul.step li{
		background: #E2F2FF;
		border-radius: 50%;
		width: 220px;
		height: 220px;
		color: #000;
		margin-right: 30px;
		}
	#sec_03 ul.step li:first-child{
		background: #fff;
		border: 1px solid #0068B7;
		}
	#sec_03 ul.step li:last-child{
		margin-right: 0px;
		background: #E5012D;
		color: #fff;
		}
		#sec_03 ul.step li:last-child div{
			font-size: 26px;
		}
		#sec_03 ul.step li:last-child small{
			margin-bottom: 25px;
		}
	#sec_03 ul.step li div{
		margin-top: 40px;
		font-size: 20px;
		text-align: center;
		line-height: 1.6;
		}
	#sec_03 ul.step li small{
		display: block;
		margin-bottom: 5px;
		color: #0068B7;
		font-size: 17px;
		text-align: center;
		}
	#sec_03 ul.step li:last-child small{
		color: #fff;
		}
	#sec_03 ul.step li:not(last-child):after{
		border-width: 11px 0 11px 10px;
		border-color: transparent transparent transparent #0068B7;
		top: 50%;
		right: -20px;
		transform: translate(-0%,-50%);
		-webkit-transform: translate(-0%,-50%);
	}
	#sec_03 ul.step li p:not(.list){
		text-align: center;
	}
	#sec_03 ul.step li p.list{
		display: inline-block;
		margin-top: 5px;
		font-size: 16px;
		font-weight: normal;
	}

/* キャリア採用 */
.career #sec_03 ul.step li:first-child small{
	margin-bottom: 25px;
}

/* 新卒採用 */
.newgrads .tabs_list li{
	background:#E5012D;
}
	.newgrads .tabs_list li.checked {
		background:#F2F2F2;
		color:#000;
		}
	.newgrads .tabs_list li:hover,
	.newgrads .tabs_list li:hover a{
		background:#F2F2F2;
		border-radius: 4px 4px 0 0;
		color:#000;
	}
.newgrads h2.title_adopt{
	color: #E5012D;
	}
	.newgrads h2.title_adopt:before{
		background: url(../img/recruit/newgrads.png) no-repeat center/contain;
		width: 45.5px;
		height: 59.26px;
		}
.newgrads #tabs_inner table th{
	border-bottom: 2px solid #E5012D;
	}
	.newgrads #tabs_inner table tr:first-child th{
		border-top: 2px solid #E5012D;
		}



/* エントリーフォーム
-------------------------------------*/
table.info td:not(.occupations) .check_list li{
    min-width: 175px;
	}

table.info td.occupations .check_list:nth-of-type(1){
	border-bottom: 1px solid #ccc;
    padding-bottom: 10px;
    margin-bottom: 10px;
	}
table.info td.occupations .check_list li label{
    width: 172px;
	padding: 10px 0;
	}
	table.info td.occupations .check_list li:last-child label{
		width: 100%;
		}
	table.info td .check_list li.icon{
		background: #F0F0F0;
		margin-right: 20px;
		color: #595757;
		font-size: 12px;
		font-weight: bold;
		width: 74px;
		height: 27px;
		line-height: 27px;
		text-align: center;
		vertical-align: middle;
		}

/* セレクトbox */
.birthdate div{
	display: inline-block;
	margin-right: 50px;
	position: relative;
	}
	.birthdate div label:after{
		content: "年";
		position: absolute;
		top: 50%;
		right: -25px;
		transform: translate(-0%,-50%);
		-webkit-transform: translate(-0%,-50%);
		cursor: default;
		}
	.birthdate div:nth-of-type(2) label:after{
		content: "月";
		}
	.birthdate div:nth-of-type(3) label:after{
		content: "日";
		}

	.birthdate .year select,
	.birthdate .year label{
		width: 120px;
		}
	.birthdate div select,
	.birthdate div label {
		display: block;
		width: 80px;
		font-size: 16px;
		cursor: pointer;
		}
	.birthdate div select {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		padding: 15px 25px 15px 15px;
		opacity: 0;
		-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
		background: none transparent;
		border: 0 none;
		}
	.birthdate div label {
		background: #FAFAFA;
		border: 1px solid #ccc;
		border-radius: 4px;
		padding: 15px 25px 15px 15px;
		position: relative;
		}
	.birthdate div label:before {
		width: 0;
		height: 0;
		padding: 0;
		content: '';
		border-left: 6px solid transparent;
		border-right: 6px solid transparent;
		border-top: 6px solid #000;
		pointer-events: none;
		position: absolute;
		top: 50%;
		right: 10px;
		transform: translate(-0%,-50%);
		-webkit-transform: translate(-0%,-50%);
		}

/* 768px以下
=====================================*/
@media screen and (max-width: 768px) {

/* 共通 */
.entry_btn{
	height: 80px;
	margin: 50px auto 0;
	line-height: 80px;
	font-size: 20px;
	}
	.entry_btn a{
		display: block;
		background: #FF9300;
		color: #fff;
		position: relative;
		text-indent: 0;
		}
	.entry_btn a:before{
		display: inline-block;
		width: 32.13px;
		height: 25px;
		vertical-align: middle;
		position: static;
		transform: inherit;
		-webkit-transform: inherit;
		margin-right: 10px;
		}
	.entry_btn a:after{
		display: inline-block;
		content: "";
		position: static;
		margin-left: 20px;
		}
	.entry_btn:hover{
		opacity: 0.6;
		}

/* TOPページ
-------------------------------------*/
/* タイトル */
#main_img div{
	position: absolute;
	top: 65%;
	left: 0;
	}
#recruit.top #title_area{
	background: url(../img/recruit/top_title_bg.jpg) no-repeat center top/cover;
	padding: 100px 0 30px;
	margin-bottom: 40px;
	}
	#recruit.top #title_area .title_wrap{
		margin: 50px auto 25px;
		}
	#recruit.top #title_area .title_wrap .read_txt{
		margin-top: 25px;
		font-size: 14px;
	}
	#recruit.top #title_area ul{
		padding: 0 20px;
		}
	#recruit.top #title_area ul li{
		float: none;
		max-width: 280px;
		width: 100%;
		margin: 0 auto;
		}
	#recruit.top #title_area ul li:nth-child(2){
		margin: 20px auto 0;
		}
	#recruit.top #title_area ul li:hover{
		opacity: 0.6;
		}
	#recruit.top #title_area ul li a{
		border: 3px solid #E5012D;
		height: 80px;
		line-height: 80px;
		font-size:18px;
		padding-left: 15px;
		}
	#recruit.top #title_area ul li:nth-child(2) a{
		border: 3px solid #0091FF;
		padding-left: 20px;
		font-size: 16px;
		}
	#recruit.top #title_area ul li a:after{
		top: 35px;
		right: 20px;
		}
	#recruit.top #title_area ul li img{
		max-width: 30px;
		position: absolute;
		top: 17px;
		left: 30px;
		}
	#recruit.top #title_area ul li:nth-child(2) img{
		left: 15px;
		}
.top h2{
	font-size: 23px;
	margin-bottom: 20px;
	}
.top .read{
	margin-bottom: 50px;
	text-align: left;
	}

/* 社長メッセージ */
#top_message{
	width: 101vw;
	margin-left: -6vw;
	}
	#top_message .bg{
		width: 50%;
		padding: 20px 0 20px 20px;
		margin-top: 20px;
		text-align: center;
		}
	#top_message .bg:before{
		content: "";
		background: #0068B7;
		width: 60%;
		height:180px;
		position: absolute;
		top: 20px;
		left: 0;
		z-index: -1;
		}
	#top_message .bg > div{
		display: inline-block;
		}
	#top_message .bg h3.title{
		font-size: 20px;
		margin-bottom: 20px;
		}
	#top_message .bg h3 span{
		font-size: 10px;
		}
	#top_message .bg h3.title,
	#top_message .bg h3 span{
		color: #fff;
		text-align: left;
		}
	#top_message .more_btn a{
		max-width: 140px;
		width: 100%;
		height: 40px;
		line-height: 40px;
		font-size: 11px;
		}
	#top_message .more_btn a:after{
		border-color: #fff;
		top: 16px;
		}
	#top_message .img{
		width: 50%;
		}
	#top_message .img img{
		max-width: 200px;
		width: 100%;
		}

/* TOP_先輩社員の声 */
ul.voice_list li{
	width: 48%;
	}
	ul.voice_list li:not(:nth-child(3n)){
		margin-right: 0;
		}
	ul.voice_list li:not(:nth-child(even)){
		margin-right: 4%;
		}
	ul.voice_list li:not(:nth-child(-n + 3)){
		margin-top: 0;
		}
	ul.voice_list li:not(:nth-child(-n + 2)){
		margin-top: 20px;
		}
	ul.voice_list li a div{
		display: table;
		width: 100%;
		padding: 10px 15px 10px 10px;
		}
	ul.voice_list li a div:after{
		content: "";
		width: 7px;
		height: 7px;
		border-right: 1px solid #0068B7;
		border-top: 1px solid #0068B7;
		top: 48%;
		right: 10px;
		}
	ul.voice_list li a div:hover{
		opacity: 0.6;
		}
	ul.voice_list li a div p{
		font-size: 12px;
		}
	ul.voice_list li a div p span{
		font-size: 16px;
		}

/* TOP_よくあるご質問 */
.faq dl{
	margin-bottom: 20px;
	}
	.faq dt{
		padding: 20px 30px 20px 60px;
		}
	.faq dd{
		padding: 20px 20px 20px 60px;
		}
	.faq dt span{
		top: 20px;
		left: 10px;
		}
	.faq dt span:after{
		content: "Q.";
		color: #0068B7;
		position: absolute;
		top: 0;
		left: 25px;
		}
	.faq dt:before{
		background: #fff;
		width: 18px;
		height: 18px;
		right: 10px;
		margin-top: -4px;
		}
	.faq dt:after{
		width: 5px;
		height: 5px;
		right: 16px;
		margin-top: 1px;
		}
	.faq dt.open:after{
		width: 5px;
		height: 5px;
		margin-top: 3px;
		}
	.faq dd{
		display: none;
		background: #F5F5F5;
		position: relative;
		}
		.faq dd:before{
			top: 20px;
			left: 35px;
			}

/* 先輩の声
-------------------------------------*/
#recruit.voice section:not(#voice_area){
	margin-bottom: 30px;
	}
#main_img{
	margin: 0 auto 50px;
	}
	#main_img .team{
		font-size: 22px;
		}
	#main_img .name{
		font-size: 24px;
		}
	#main_img .year{
		font-size: 16px;
		}
	#main_img img{
		max-width: 130px;
		}
	ul.txt{
		margin-bottom: 30px;
		}
	ul.txt li{
			width: 100%;
			}
	ul.txt li:nth-child(3){
		order: 4;
		}
	ul.txt li:nth-child(4){
		order: 3;
		}
	ul.txt li:nth-child(5){order: 5;}
	ul.txt li:nth-child(6){order: 6;}
	ul.txt li:not(:last-child){
		margin: 0 auto 30px;
		}
	ul.txt li:nth-child(even){
		margin-left: 0;
		}
	#recruit ul.txt li h2.title_Lline:nth-of-type(2){
		margin-top: 20px;
		}
	ul.txt li p:nth-child(2){
		margin-top: 20px;
		}
#recruit.voice section#schedule{
	background: #F2F2F2;
	padding: 30px 0 40px;
	}
	h3.icon{
		font-size: 20px;
		color: #0068B7;
		text-align: center;
		margin-bottom: 30px;
		}
	h3.icon:before{
			width: 30px;
			height: 30px;
			margin-right: 10px;
			}
		#schedule > div{
			width: 100%;
			padding: 0 20px;
			margin: 0 auto;
			}
		#schedule > div > div{
			width: 100%;
			margin-bottom: 30px;
			}
		p.comments{
			margin-top: 20px;
			width: 100%;
		}
		.schedule_list li:not(:last-child):after{
			top: 65px;
			left: 65px;
			}
		.schedule_list li span{
			display: block;
			background: #0068B7;
			margin-right: 15px;
			}
		.schedule_list li:not(:last-child) span:after{
			content: "";
			background: #C7C7C7;
			width: 2px;
			height: 80px;
			position: absolute;
			left: 25px;
			top: 50px;
			}
		.photo_area{
			display: inline-block;
			margin: 0 auto;
			}
		.photo_area li:not(:last-child){
			margin-bottom: 10px;
			}
		.photo_area img{
			max-width: 100%;
			}

#voice_area h3.icon:before{
		width: 39.5px;
		height: 28.5px;
		margin-right: 5px;
		}
	#voice_area ul.voice_list li{
		width: 48%;
		}
	#voice_area ul.voice_list li:not(:last-child){
		margin-right: 0;
		}
	#voice_area ul.voice_list li:nth-child(even){
		margin-left: 4%;
		}
	#voice_area ul.voice_list li:not(:nth-child(-n + 2)){
		margin-top: 20px;
		}

/* 募集要項（キャリア採用・新卒採用）
-------------------------------------*/
/* キャリア採用 */
h2.title_adopt{
	color: #0068B7;
	font-size: 24px;
	margin: 0 auto 30px;
	}
	h2.title_adopt:before{
		width: 36.43px;
		height: 49.26px;
		vertical-align: middle;
		margin-right: 10px;
		}
.desc{
	margin-bottom: 50px;
	}
h4.title_adopt{
	font-size: 22px;
	text-align: center;
	margin: 0 auto 30px;
	}
	h4.title_adopt:before{
		width: 25px;
		height: 35px;
		vertical-align: top;
		margin-right: 10px;
		}
/* タブ */
.tabs_list{
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: inherit;
	width: 90%;
	margin: 0 auto;
	font-size: 20px;
	}
	.tabs_list li{
		border-radius: 0;
		width: 49.65%;
		height: 70px;
		line-height: 70px;
		color: #fff;
		cursor: pointer;
		}
	.tabs_list li label{
		display: block;
		text-align: center;
		}
	.tabs_list li:not(:last-child){
		margin-right: 0;
		}
	.tabs_list li:nth-child(odd){
		margin-right: .7%;
		}
	.tabs_list li:not(:nth-last-of-type(-n + 2)){
		margin-bottom: .7%;
	}
	.tabs_list li:hover{
		opacity: 1;
		}
.inner_area{
	padding: 30px 0 50px;
	margin-bottom: 40px;
	}
	#tabs_inner h5{
		font-size: 20px;
		margin-bottom: 20px;
		}
	#tabs_inner table{
		display: block;
		}
	#tabs_inner table th,
	#tabs_inner table td{
		display: block;
		}
	#tabs_inner table th{
		border-bottom: 0 none;
		width: 100%;
		padding-bottom: 0;
		}
	#tabs_inner table td{
		position: relative;
		padding-top: 10px;
		}
	#tabs_inner table td:after{
		content: "";
		border-bottom: 2px solid #0068B7;
		width: 120px;
		height: 2px;
		position: absolute;
		bottom: -2px;
		left: 0;
		}
	#tabs_inner table tr:first-child th{
		border-top: 2px solid #C7C7C7;
		position: relative;
		}
	#tabs_inner table tr:first-child th:before{
		content: "";
		border-top: 2px solid #0068B7;
		width: 120px;
		height: 2px;
		position: absolute;
		top: -2px;
		left: 0;
		}
	#tabs_inner table tr:first-child td{
		border-top: 0 none;
		}
#sec_02{
	padding-top: 30px;
	margin-top: -30px;
}
#sec_03 p.desc:nth-of-type(2){
	margin-bottom: 20px;
	}
	#sec_03 ul.step{
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		justify-content: center;
		-webkit-justify-content: center;
		}
	#sec_03 ul.step li{
		margin: 0 0 30px;
		}
	#sec_03 ul.step li:last-child{
		margin: 0;
		}
	#sec_03 ul.step li:not(last-child):after{
		border-width: 10px 11px 0 11px;
		border-color: #0068B7 transparent transparent transparent;
		top: auto;
		bottom: -22px;
		left: 50%;
		right: auto;
		-webkit-transform: translate(-50%, -0%);
		transform: translate(-50%, -0%);
	}

/* 新卒採用 */
.newgrads h2.title_adopt:before{
	width: 35.5px;
	height: 49.26px;
	}
	.newgrads #tabs_inner table th{
		border-bottom: 0 none;
		width: 100%;
		}
	.newgrads #tabs_inner table td:after{
		border-bottom: 2px solid #E5012D;
		}
	.newgrads #tabs_inner table tr:first-child th{
		border-top: 2px solid #C7C7C7;
		}
	.newgrads #tabs_inner table tr:first-child th:before{
		border-top: 2px solid #E5012D;
		}
	.newgrads #tabs_inner table tr:first-child td{
		border-top: 0 none;
		}

/* エントリーフォーム
-------------------------------------*/
table.info td:not(.occupations) .check_list li{
    min-width: auto;
	}

table.info td.occupations .check_list:nth-of-type(1){
	border-bottom: 1px solid #ccc;
    padding-bottom: 10px;
    margin-bottom: 10px;
	}
table.info td.occupations .check_list li label{
    width: auto;
	padding: 0 10px;
	}
	table.info td.occupations .check_list li:last-child label{
		width: 100%;
		}
	table.info td .check_list li.icon{
		background: #F0F0F0;
		margin-right: 20px;
		color: #595757;
		font-size: 12px;
		width: 74px;
		height: 27px;
		line-height: 27px;
		text-align: center;
		vertical-align: middle;
		}

/* セレクトbox */
.birthdate .year{
	width: 100%;
	margin-bottom: 15px;
	}
}


/* 350px以下
=====================================*/
@media screen and (max-width: 350px) {
/* 社長メッセージ */
#top_message .bg{
	padding: 20px 0 20px 10px;
	}
}
