
@charset "UTF-8";
/* CSS Document */
/*----------------------------------------------------
	header
----------------------------------------------------*/
#header{
	display:table;
	width:100%;
	height:180px;
	margin:0 auto;
	padding:0;
	z-index:9998;
}
.mv{
	position:relative;
	display:table-cell;
	vertical-align: middle;
	text-align:center;
	width:85%;
	height:180px;
	max-width:1600px;
	background:url("/image/recruit/careers/engineer_front/main_bk.png") center/cover no-repeat;
	margin:0 auto;
	padding:0;
}
.mv h1{
	font-size:32px;
	font-weight:500;
	line-height:1.2em;
	color:#fff;
	margin:0 auto;
	padding:0;
}
.mv h1 span.min{
	display:table;
	font-size:18px;
	font-weight:400;
	margin:0 auto;
	padding:0;
}

.navigation{
	display:table-cell;
	position:relative;
	width:15%;
	min-width:200px;
	max-width:320px;
	margin:0 auto;
	padding:0 auto;
	z-index:6666;
}
.navigation a#logo{
	display:block;
	width:100%;
	margin:0 auto;
	padding:0;
	background:#001e55;
	-webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    -ms-transition: all .2s ease-out;
    transition: all .2s ease-out;
}
.navigation a#logo img{
	width:60%;
	margin:0 16% 0 24%;
	padding:20% 0;
	}
.navigation a#logo:hover{
	opacity:0.7;
	-ms-filter: "alpha(opacity=70)";
	}

.sec .dis_table,
.sec .contents{
	position:relative;
	width:100%;
	max-width:1920px;
	margin:0 auto;
	padding:0;
	overflow:hidden;
}
.sec .dis_table{display:table;}

.sec .left_wap{
	display:table-cell;
	position:relative;
	vertical-align: top;
	width:15%;
	min-width:200px;
	max-width:320px;
	margin:0 auto;
	padding:0 auto;
}
.sec .right_wap{
	position:relative;
	display:table-cell;
	width:85%;
	max-width:1600px;
	margin:0 auto;
	padding:3% 5%;
	background:#f1f4f3;
	box-sizing:border-box;
}

.sec .right_wap ul.pan{
	width:100%;
	margin:0 auto 40px;
	padding:0;
}
.sec .right_wap ul.pan li{
	position:relative;
	display:inline-block;
	padding:0 30px 0 0;
}
.sec .right_wap ul.pan li:after{
	position:absolute;
	top:0;
	right:0;
	display:inline-block;
	content:"〉";
	color:#b2bbcc;
}
.sec .right_wap ul.pan li:last-child{padding-right:0;}
.sec .right_wap ul.pan li:last-child:after{display:none;}

.sec .right_wap ul.pan li a,
.sec .right_wap ul.pan li span{
	font-size:14px;
	color:#b2bbcc;
	text-decoration:none;
}
.sec .right_wap ul.pan li span{color:#001e55;}
.sec .right_wap ul.pan li a:hover{text-decoration:underline;}
.box{
	width:86%;
	padding:6% 7%;
	margin:0 auto;
	background:#fff;
}
.box.gry{background:#e6ebe9;}
.box h2{
	color:#001e55;
	font-size:28px;
	font-weight:600;
	letter-spacing: 1.4pt;
	margin:0 auto;
	padding:0;
}
.box h3,h4.more{
	color:#001e55;
	font-size:20px;
	margin:60px auto 20px;
	padding:0;
}

.box p{
	color:#667899;
	font-size:14px;
	line-height:1.4em;
	margin:0 auto;
	padding:0;
}
.box ul.list,ul.link_ul{
	width:auto;
	margin:0 auto;
	padding:0;
}
.box ul.list li,
ul.link_ul li{
	font-size:14px;
	line-height:1.4em;
	position:relative;
	color:#667899;
	margin:0 auto 10px;
	padding:0 0 0 20px;
}
.box ul.list li:before,
ul.link_ul li:before{
	position:absolute;
	content:"・";
	left:0;
	top:0;
}
ul.link_ul li a{
	color:#667899;
	text-decoration:none;
}
ul.link_ul li a:hover{text-decoration:underline;}

.box ul.six_list{
	width:100%;
	margin:0 auto -40px;
	padding:0;
	overflow:hidden;
}
.box ul.six_list li{
	float:left;
	width:32%;
	margin:0 2% 40px 0;
	padding:0;
}
.box ul.six_list li p{font-size:14px;}
.box ul.six_list li:nth-child(3n){margin-right:0;}

.box ul.six_list li h4{
	position:relative;
	font-size:16px;
	font-weight:400;
	line-height:1.1em;
	color:#001e55;
	padding:0 0 15px;
	margin:0 auto 15px;
}
.box ul.six_list li h4:after{
	position:absolute;
	display:inline-block;
	content:"";
	width:40px;
	height:1px;
	background:#001e55;
	left:0;
	bottom:0;
}

.box ul.six_list.single li{
	float:none;
	width:100%;
	margin:0 auto 40px;
}
.box ul.six_list.single li ol{
	margin:0;
	padding:0;
}
.box ul.six_list.single li ol li{
	position:relative;
	margin:0 0 10px;
	padding:0 0 0 15px;
	color:#667899;
	font-size:14px;
	line-height:1.8em;
}
.box ul.six_list.single li ol li:before{
	position:absolute;
	content:"・";
	display:inline-block;
	left:0;
	top:0;
}

img.f_img{
	display:block;
	width:100%;
	margin:0 auto;
	padding:0;
}

ul.more_ul{
	width:100%;
	padding:0 0 5px;
	margin:0.5% auto 0;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: center;
	-webkit-justify-content: center;
}
ul.more_ul li{
	width:49.5%;
	height:110px;
	max-height:110px;
	margin:0 1% 0 0;
	padding:0;
	position: relative;
        overflow: hidden;
	border-radius:6px;
	box-sizing:border-box;
	box-shadow:2px 2px 4px rgba(0,0,0,0.2);
}
ul.more_ul li.more_entry{margin-right:0;}
ul.more_ul li.more_job:before{
    content: "";
    display: block;
    padding-top: 100%;
}
ul.more_ul li a {
	color:#fff;
	font-weight:400;
	line-height:1.2em;
	text-align:center;
	text-decoration:none;
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	z-index:3;
	padding:30px 0 0;
	overflow:hidden;
	box-sizing:border-box;
}
ul.more_ul li a::before {
    content: '';
    width: 6px;
    height: 6px;
    border: 0px;
    border-top-color: currentcolor;
    border-top-style: none;
    border-top-width: 0px;
    border-right-color: currentcolor;
    border-right-style: none;
    border-right-width: 0px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -4px;
}

ul.more_ul li.more_job a .eg{
	display:table;
	font-size:26px;
	line-height:1.2em;
	font-weight:600;
	margin:0 auto;
	padding:0;
}

ul.more_ul li.more_job:after{
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
	z-index:1;
	background:url("/image/recruit/careers/engineer_front/job_bk.jpg");
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -ms-background-size: cover;
    background-size: cover;
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-out;
}
ul.more_ul li.more_job:hover:after {
    opacity:0.8;
    -moz-transform: scale(1.1);
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}
ul.more_ul li.more_entry a{
	padding:40px 0 0;
	font-size:26px;
	background:url("/image/recruit/careers/engineer_front/entry_bk.png") center/cover no-repeat,#001e55;
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-out;
}
ul.more_ul li.more_entry a:hover{
	opacity:0.6;
	-ms-filter:"alpha(opacity=60)";
}

.contents ul.entry_ul{
	width:99%;
	padding:0;
	margin:0.5% auto 0;
	overflow:hidden;
}
.contents ul.entry_ul li{
	position:relative;
	float:left;
	width:49.8%;
	margin:0 0.4% 0 0;
	box-shadow:2px 2px 4px rgba(0,0,0,0.2);
	border-radius:6px;
	padding:0;
	overflow:hidden;
}
.contents ul.entry_ul li::before {
    content: '';
    width: 6px;
    height: 6px;
    border: 0px;
	border-top-color: currentcolor;
	border-top-style: none;
	border-top-width: 0px;
	border-right-color: currentcolor;
	border-right-style: none;
	border-right-width: 0px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -4px;
	z-index:333;
}
.contents ul.entry_ul li:first-child::before{border-color:#001e55;}
.contents ul.entry_ul li:first-child a{background:url("/image/recruit/entry_bk.png") center center/cover no-repeat,#fc0;}
.contents ul.entry_ul li:last-child{margin-right:0;}
.contents ul.entry_ul li:last-child a{background:url("/image/recruit/entry_bk_2.png") center center/cover no-repeat,#001e55;}
.contents ul.entry_ul li a{
	display:block;
	color:#001e55;
	text-align:center;
	font-size:24px;
	font-weight:500;
	text-decoration:none;
	width:100%;
	padding:40px 0;
	margin:0 auto;
	-webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-out;
}
.contents ul.entry_ul li a span.eg{
	display:table;
	font-size:16px;
	margin:0 auto;
}
.contents ul.entry_ul li:last-child a{color:#fff;}

.contents ul.entry_ul li a:hover{
	opacity:0.6;
	-ms-filter:"alpha(opacity=60)";
}
/*応募エントリー*/
dl.form_dl{
	display:table;
	width:100%;
	margin:40px auto 0;
	padding:0;
}
dl.form_dl dt{
	display:table-cell;
	width:28%;
	margin:0;
	padding:8px 2% 0 0;
	color:#001e55;
	font-size:16px;
	line-height:1em;
	vertical-align: top;
}
dl.form_dl dt .must,dl.form_dl dt .any{
	float:right;
	font-size:12px;
	line-height:1em;
	padding:4px;
	color:#f7004e;
	border:1px solid #f7004e;
	border-radius:4px;
}
dl.form_dl dt .any{
	color:#001e55;
	border-color:#001e55;
}
dl.form_dl dd{
	display:table-cell;
	width:70%;
	margin:0;
	padding:0;
	vertical-align: top;
}

dl.form_dl dd select{
	display: block;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0;
	padding:4px 8px;
	height:40px;
	vertical-align: middle;
	border: none;
	font-size:14px;
	border: 1px solid #ccc;
	color: inherit;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	color: #444;
	width:100%;
	border-radius:4px;
	transition:0.2s;
	background:#f1f4f3;
}
dl.form_dl dd select option{
  background-color: #fff;
  color: #333;
}
dl.form_dl dd select::-ms-expand {
  display: none;
}
dl.form_dl dd select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000;
}
dl.form_dl dd .select_wrap {
	position:relative;
	display:inline-block;
	width:100%;
	margin:0;
	padding:0;
}
dl.form_dl dd .select_wrap:before{
    position:absolute;
    display:inline-block;
    content:"";
    right:15px;
    top:50%;
    margin-top:-3px;
    box-sizing: border-box;
    width: 6px;
    height: 6px;
    border-bottom: 6px solid transparent;
    border-right: 6px solid transparent;
    border-left: 6px solid transparent;
    border-top: 6px solid #333;
}

dl.form_dl dd input[type="text"],
dl.form_dl dd input[type="tel"],
dl.form_dl dd input[type="email"],
dl.form_dl dd textarea{
	display: block;
	font-size:14px;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0;
	padding:4px 8px;
	height:40px;
	vertical-align: middle;
	border: none;
	border: 1px solid #ccc;
	color: inherit;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	color: #444;
	width:100%;
	background:#f1f4f3;
	border-radius:4px;
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	transition: all 0.2s linear;
	-webkit-transform: translateZ(0);
}
dl.form_dl dd textarea{height:200px;}
dl.form_dl dd input[type="text"]:focus,
dl.form_dl dd input[type="tel"]:focus,
dl.form_dl dd input[type="email"]:focus{border-color:#001e55;}

dl.form_dl dd .auto [type="text"],
dl.form_dl dd .select_wrap.auto{
	min-width:40%;
	width:auto;
}
dl.form_dl dd .select_wrap.auto select{background:#fff;}
dl.form_dl dd ul{
	width:100%;
	margin:0;
	padding:0;
}
dl.form_dl dd ul li{
	margin:0;
	padding:0;
}
dl.form_dl dd input[type="radio"] {
    display: none;
    margin: 0;
}
dl.form_dl dd input[type="radio"] + span{
	position: relative;
	display: inline-block;
	margin: 0px;
	line-height: 30px;
	cursor: pointer;
}
dl.form_dl dd input[type="radio"] {
	display: none;
	margin: 0;
}
dl.form_dl dd input[type="radio"] + span,
dl.form_dl dd input[type=hidden] + span{
	font-size: 14px;
	color:#001e55;
	font-weight: 400;
	padding: 0 0 0 30px;
	margin: 0 30px 0 0;
}
dl.form_dl dd input[type="radio"] + span::before,
dl.form_dl dd input[type=hidden] + span::before{
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
	width: 20px;
	height: 20px;
	margin-top: -10px;
	background: #fff;
}
dl.form_dl dd input[type="radio"] + span::before,
dl.form_dl dd input[type=hidden] + span::before{
	border: 1px solid #a1a1a1;
	border-radius: 30px;
}
dl.form_dl dd input[type="radio"]:checked + span::before{background:#a1a1a1;}
dl.form_dl dd input[type="radio"]:checked + span::after {
	content: "";
	position: absolute;
	top: 50%;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
	background:#a1a1a1;
}
dl.form_dl dd input[type="radio"]:checked + span::after {
	left: 7px;
	width: 6px;
	height: 6px;
	margin-top: -3px;
	background: #fff;
	border-radius: 22px;
}

.box p.top_border{
	color:#001e55;
	padding:40px 0 0;
	margin:40px auto;
	border-top:1px solid #ccc;
}
.box p.top_border a{color:#001e55;}
.box p.top_border a:hover{text-decoration:none;}

.policy_box{
	position:relative;
	width:90%;
	padding:3% 5%;
	background:#f0f0f0;
	margin:20px auto;
}
.policy_box p{
	padding:3% 5% 3% 3%;
	margin:0 auto 20px;
	background:#fff;
	color:#001e55;
	font-size:14px;
	height:45px;
	overflow-y:scroll;
}
.policy_box span.doui{
	display:table;
	position:relative;
	text-align:center;
	margin:0 auto;
}
.policy_box input[type=checkbox] + label {
	position: relative;
	width: auto;
	display: inline-block;
	margin: 0px;
	font-size: 14px;
	cursor: pointer;
	padding: 0;
}
.policy_box input[type=checkbox] {
	display: none;
	margin: 0;
}
.policy_box input[type=checkbox] + span {
	position: relative;
	display: inline-block;
	font-size:14px;
	line-height:1.4em;
	color:#001e55;
	padding: 0px 0 7px 25px;
	margin: 0 30px 0 0;
}
.policy_box input[type=checkbox] + span::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	width: 20px;
	height: 20px;
	margin-top: -12px;
	background: #FFF;
	border-radius:4px;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.policy_box input[type=checkbox] + span::before {border: 1px solid #ccc;}
.policy_box input[type=checkbox]:checked + span::after {
	content: "";
	position: absolute;
	top: 50%;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
}
.policy_box input[type=checkbox]:checked + span::after {
	left: 6px;
	width: 10px;
	height: 5px;
	margin-top: -6px;
	border-left: 2px solid #001e55;
	border-bottom: 2px solid #001e55;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.box button[type="submit"] {
    position: relative;
    display: block;
    width: 100%;
    max-width: 420px;
    margin: 0 auto 20px;
    padding: 28px 0;
    text-align: center;
    color: #fff;
    text-decoration: none;
    font-size: 24px;
    background:url("/image/recruit/entry_bk_2.png") center center/cover no-repeat,#001e55;
	border:none;
 	-webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    -ms-transition: all .2s ease-out;
    transition: all .2s ease-out;
}
.box button[type="submit"]:hover{
	opacity:0.7;
	-ms-filter:"alpha(opacity=70)";
	transform: translateY(0.2em);
}

.box .nvy{color:#001e55;}
.box .center{text-align:center;}

.box .mt_0{margin-top:0;}
.sp{display:none;}

.policy_box ul.filled,
dl.form_dl dd ul.filled{
	width:auto;
	margin:0;
	padding:0;
	position:absolute;
}
.policy_box ul.filled{margin-top:-10px;}
.policy_box ul.filled li,
dl.form_dl dd ul.filled li{
	margin:5px 0 0;
	padding:4px 6px;
	font-size:12px;
	letter-spacing: 0.4pt;
	line-height:1em;
	color:#f00;
	background:#fcc;
}
.hidden {
    display: none;
    visibility: hidden;
}
.bs-callout-warning{
	background:#fcc;
	border:1px solid #f00;
	padding:2%;
	margin:0 auto 20px;
}
.bs-callout-warning p{
	color:#f00;
	padding:0;
	margin:0 auto;
	}

@media screen and (max-width:1024px) {
.navigation{
	position:fixed;
	display:table;
	width:100%;
	min-width:100%;
	max-width:100%;
	height:60px;
	background:#001e55;
	-webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    -ms-transition: all .2s ease-out;
    transition: all .2s ease-out;
}
body.fixed .navigation {background:#fff;}

.navigation a#logo{
	display:block;
	width:220px;
	height:23px;
	margin:18px 0 0 15px;
	padding:0;
	background:url("/image/recruit/logo_sp.png") center center/100% no-repeat;
}
body.fixed a#logo{background:url("/image/recruit/logo_sp_open.png") center center/100% no-repeat;}
.navigation a#logo span.sp_only{display:none;}
.mv{
	display:block;
	width:100%;
	max-width:100%;
	max-height:180px;
	background:url("/image/recruit/careers/engineer_front/main_bk.png") center/cover no-repeat;
	margin:60px auto 0;
	padding:65px 0 0;
	box-sizing:border-box;
}
.mv.pt_35{padding-top:50px;}
.sec .dis_table{display:block;}
.sec .left_wap{display:none;}
.sec .right_wap{
	display:block;
	width:100%;
}

dl.form_dl dt{width:33%;}
dl.form_dl dd{
	display:table-cell;
	width:65%;
	margin:0;
	padding:0;
	vertical-align: top;
}


}

@media screen and (max-width:768px) {
/*.sec .right_wap{padding:5%;}*/
.sec .right_wap ul.pan{margin:0 auto 20px;}
.sec .right_wap ul.pan li{padding-right:20px;}
.sec .right_wap ul.pan li:after{right:-5px;}

.mv{
	max-height:150px;
	padding:50px 0 0;
}
.mv.pt_35{padding-top:35px;}
.mv h1{font-size:28px;}
.mv h1 span.min{
	margin-top:5px;
	font-size:14px;
	line-height:1.4em;
	}

.box{
	width:100%;
	padding:30px 25px;
	box-sizing:border-box;
}
.box h2{font-size:24px;}
.box h3,h4.more{
	font-size:16px;
	line-height:1em;
	margin:30px auto 20px;
	}
.box p{
    font-size:14px;
    line-height: 1.8em
}
.box ul.list li,
ul.link_ul li{padding:0 0 0 15px;}

.box ul.six_list{margin-bottom:-30px;}
.box ul.six_list li{
	float:none;
	width:100%;
	margin:0 auto 30px;
}
.box ul.six_list li p {
	font-size: 14px;
	line-height:1.8em;
	}
.box ul.six_list li h4 {
    font-size: 15px;
    font-weight: 600;
    padding: 0 0 12px;
    margin: 0 auto 8px;
}
.box ul.six_list li h4:after{width:20px;}
.box ul.six_list.single{margin-bottom:-30px;}
.box ul.six_list.single li{margin-bottom:30px;}
.box ul.six_list.single li ol{margin:0 auto -5px;}
.box ul.six_list.single li ol li{
	font-size:14px;
	line-height:1.6em;
	margin-bottom:5px;
	box-sizing:border-box;
	}
ul.more_ul li{
	width:100%;
	height:90px;
	max-height:90px;
	margin:10px auto 0;
}
ul.more_ul li:last-child{margin-bottom:0;}
ul.more_ul li a {padding:20px 0 0;}
ul.more_ul li:first-child a .eg{font-size:24px;}
ul.more_ul li:last-child a{
	padding:30px 0 0;
	font-size:24px;
}

ul.more_ul li a::before,
.contents ul.entry_ul li::before{right: 15px;}
.contents ul.entry_ul li a{
	font-size:18px;
	padding:25px 0;
}
.contents ul.entry_ul li a span.eg{
	font-size:14px;
	line-height:1.2em;
	}

/*応募エントリー*/
dl.form_dl{
	display:block;
	margin-top:30px;
	}
dl.form_dl.mt_10{margin-top:10px;}
dl.form_dl dt{
	display:block;
	width:100%;
	padding:0;
}
dl.form_dl dd{
	display:block;
	width:100%;
	margin:10px auto 0;
}
dl.form_dl dt .must,dl.form_dl dt .any{
	display:inline-block;
	float:none;
	}
dl.form_dl dd .auto [type="text"],
dl.form_dl dd .select_wrap.auto{
	min-width:100%;
	width:100%;
}
.box p.top_border{
	padding:30px 0 0;
	margin:40px auto;
}

.policy_box{
	width:94%;
	padding:3%;
}
.policy_box p{
	font-size:12px;
	line-height:1.6em;
	height:60px;
	margin:0 auto 10px;
	}
.box button[type="submit"] {
    padding: 20px 0;
    font-size: 20px;
	margin:0 auto;
}
.policy_box input[type=checkbox] + span{
	font-size:12px;
	letter-spacing: 0.2pt;
	}
.box .center{text-align:left;}
.sp{display:inline;}
}
@media screen and (max-width:480px) {
#header{height:100%;}

.mv{
	height:500px;
	}


}
ul.success_story_job.list {
    padding: 2em;
    margin: 2em 0;
}


