@charset "UTF-8";
/* CSS Document */

/*HEAD  VISUAL*/
.recruit_contents .sect_title:after{
	content: "Recruit";
}
.entry_contents .sect_title:after{
	content: "Entry Form";
}
.sub_visual .sect_title{
	background-image: url( "../images/main_bg03.jpg");
}
/*MAIN CONTENTS
--------------------------------------------------*/
/*RECRUIT_BTN*/
.recruit_wrap nav{
    text-align: center;
	margin-bottom: 0;
	border-bottom: 1px #e84653 solid;
}
.recruit_wrap nav ul li{
	text-align: center;
	display: inline-block;
	font-weight: 500;
	color: #fff;
	border-radius: 12px 12px 0 0;
	background: #e84653;
	border: 1px #e84653 solid;
	border-bottom: none;
	box-sizing: border-box;
	cursor: pointer;
}
.recruit_wrap nav ul li p:after{
	display: block;
	font-weight: 400;
}
.recruit_wrap nav ul #tokyo p:after{
	content: "TOKYO";
}
.recruit_wrap nav ul #nagoya p:after{
	content: "NAGOYA";
}
.recruit_wrap nav ul #fukuoka p:after{
	content: "FUKUOKA";
}
.recruit_wrap nav ul #osaka p:after{
	content: "OSAKA";
}
/*BTN 切り替え*/
.recruit_wrap.tokyo nav ul li:nth-child(1),
.recruit_wrap.nagoya nav ul li:nth-child(2),
.recruit_wrap.fukuoka nav ul li:nth-child(3),
.recruit_wrap.osaka nav ul li:nth-child(4){
	color: #e84653;
	background: #fff;
}
/*REC_BTN-----------------------------------------*/
/*BTN 切り替え*/
.recruit_wrap.tokyo .tyubu_rec,
.recruit_wrap.tokyo .seibu_rec,
.recruit_wrap.tokyo .osaka_rec{
	display: none;
}
.recruit_wrap.nagoya .tokyo_rec,
.recruit_wrap.nagoya .seibu_rec,
.recruit_wrap.nagoya .osaka_rec{
	display: none;
}
.recruit_wrap.fukuoka .tyubu_rec,
.recruit_wrap.fukuoka .tokyo_rec,
.recruit_wrap.fukuoka .osaka_rec{
	display: none;
}
.recruit_wrap.osaka .tyubu_rec,
.recruit_wrap.osaka .seibu_rec,
.recruit_wrap.osaka .tokyo_rec{
	display: none;
}
/*REC_BTN-----------------------------------------*/
/*REC_FLOW*/
.no_entry .rec_flow .rec_entory ol,
.com_entry .rec_flow .rec_entory ul,
.no_entry .rec_point{
	display: none;
}
.rec_flow h3,
.rec_point h3{
	display: inline-block;
	border-bottom: 2px #f29600 solid;
}
.rec_flow .rec_entory{
	width: 100%;
	background: #d4d4d4;
}
.rec_flow .rec_entory ol,
.rec_flow .rec_entory ul{
	text-align: center;
}
.rec_flow .rec_entory ol li,
.rec_flow .rec_entory ul li{
	position: relative;
	display: inline-block;
	background: #fff;
	font-weight: 500;
	width: 60%;
	border-radius: 4px;
}
.rec_flow .rec_entory ol li:after{
	position: absolute;
	top: 104%;
	left: 50%;
	transform: translate(-50%,0);
	content: "▼";
	color: #e7e7e7;
}
.rec_flow .rec_entory ol li p span,
.rec_flow .rec_entory ul li p span{
	display: block;
	font-size: 0.85em;
	font-weight: 400;
}
.rec_flow .rec_entory ol li:nth-last-child(1)::after{
	display: none;
}
/*REC_POINT*/
.rec_point table{
	display: block;
	border-spacing: 0;
	width: 100%;
}
.rec_point table th{
	font-weight: 500;
	color: #f29600;
	text-align: left;
	vertical-align: middle;
	border-collapse: collapse;
	border-top: 1px #ccc solid;
	width: 30%;
	padding: 20px 10px;
}
.rec_point table td{
	text-align: left;
	border-top: 1px #ccc solid;
	width: 70%;
	padding: 20px 10px;
}
.rec_point table td p span{
	display: block;
	margin-top: 1em;
}
.rec_point table tr:last-child th,
.rec_point table tr:last-child td{
	border-bottom: 1px #ccc solid;
}
/*ENTRY*/
.form_list div p{
	width: 100%;
}
.form_list div p:nth-child(1){
	color: #333;
	font-weight: 500;
	margin-bottom: 10px;
	letter-spacing: 1px;
}
.form_list div p:nth-child(1):after{
	content: "\0274a";
	color: red;
	font-size: 0.85em;
	vertical-align: top;
}
.form_list div:last-child p:nth-child(1):after{
	display: none;
}
.form_list div .flexbox span{
	display: inline-block;
	color: #888;
	box-sizing: border-box;
	padding-right: 5px;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:-o-flex;
	display:flex;
	align-items: center;
}
.form_list div:nth-child(3) .flexbox span:nth-child(2),
.form_list div:nth-child(3) .flexbox span:nth-child(4),
.form_list div:nth-child(3) .flexbox span:nth-child(6){
	padding-right: 15px;
	padding-left: 5px;
}
.form_list div:nth-child(4) .flexbox{
	margin-bottom: 10px;
}
.select_form{
	display: inline-block;
	position: relative;
	width: 100%;
}
.select_form:after{
	display: inline-block;
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	width: 4px;
	height: 4px;
	border-bottom: 1px #ccc solid;
	border-right: 1px #ccc solid;
	transform: rotate(45deg) translate(0,-50%);
	pointer-events: none;
}
.form_list div p input,
.form_list div p select,
.form_list div p textarea{
	outline: none;
}
.form_list div p input[type="text"],
.form_list div p select,
.form_list div p textarea{
	-moz-appearance: none;
	-webkit-appearance: none;
	display: block;
	border: 1px #ccc solid;
	border-radius: 0;
	color: #404040;
	font-size: 1rem;
	padding: 7px;
	width: 100%;
	box-sizing: border-box;
	background: #fff;
}
.form_list div .flexbox input[type="text"],
.form_list div:nth-child(3) .flexbox span:nth-child(3),
.form_list div:nth-child(3) .flexbox span:nth-child(5){
	width: 28%;
}
/*FORM BTN*/
form .btn{
	text-align: center;
}
form .btn input[type="reset"],
form .btn input[type="submit"]{
	-moz-appearance: none;
	-webkit-appearance: none;
	display: inline-block;
	box-sizing: border-box;
	color: #fff;
	font-weight: 500;
	border: 1px solid;
	cursor: pointer;
	-webkit-transition:all 0.2s ease-in;
	-moz-transition:all 0.2s ease-in;
	-ms-transition:all 0.2s ease-in;
	-o-transition:all 0.2s ease-in;
	transition:all 0.2s ease-in;
}
form .btn input[type="reset"]{
	border-color: #404040;
	background: #404040;
}
form .btn input[type="submit"]{
	border-color: #e84653;
	background: #e84653;
}
form .btn input[type="reset"]:hover{
	color: #404040;
	background: #fff;
}
form .btn input[type="submit"]:hover{
	color: #e84653;
	background: #fff;
}
/*MEDIA QUERIES
--------------------------------------------------*/
/*smartphone*/
@media (max-width: 640px) {
    /*RECRUIT*/
	.recruit_wrap nav{
		border: none;
	}
    .recruit_wrap nav ul{
        margin-top: 25px;
        margin-bottom: 0;
	}
    .recruit_wrap nav ul li{
		display: block;
		border-radius: 0;
		border: 1px #f29600 solid;
		padding: 4px 0;
		margin: 8px 0;
	}
	.recruit_wrap nav ul li p span{
        font-size: 16px;
	}
	.recruit_wrap nav ul li p:after{
        font-size: 10px;
	}
    /*REC_FLOW*/
    .rec_flow h3,
    .rec_point h3{
        width: 80%;
        font-size: 18px;
        margin: 15px 0 25px 0;
        padding-bottom: 3px;
    }
	.rec_point h3{
		margin-top: 25px;
	}
	.no_entry .rec_flow .rec_entory{
		margin-bottom: 20px;
	}
	.rec_flow .rec_entory ol
	.rec_flow .rec_entory li{
		text-align: center;
	}
	.rec_flow .rec_entory ol li:nth-child(1){
		margin-top: 25px;
	}
	.rec_flow .rec_entory ol li:last-child{
		margin-bottom: 25px;
	}
	.rec_flow .rec_entory ol li,
	.rec_flow .rec_entory ul li{
		display: inline-block;
		width: 100%;
		padding: 8px 0;
        font-size: 15px;
	}
	.rec_flow .rec_entory ol li{
        margin: 0 0 15px 0;
	}
	.rec_flow .rec_entory ul li{
        margin: 25px 0 25px 0;
	}
	.rec_flow .rec_entory ol li:after{
		font-size: 12px;
		top: 100%;
	}
	/*REC POINT*/
    .rec_point table{
		margin: 0 0 35px 0;
	}
    /*ENTRY*/
	.entry_contents .wrapper{
		padding: 0 15px;
	}
    .form_list{
        padding: 15px 0 10px 0;
    }
    .form_list div{
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .form_list div:nth-child(4) .flexbox input[type="text"]{
        width: 40%;
    }
    /*FORM BTN*/
    form .btn input[type="reset"],
    form .btn input[type="submit"]{
        width: calc(50% - 20px);
        padding: 10px;
		margin: 5px;
        margin-bottom: 35px;
		font-size: 14px;
    }
}
/*tablet*/
@media (min-width: 641px) and (max-width: 893px) {
    /*RECRUIT*/
    .recruit_wrap nav ul{
        margin-top: 35px;
        margin-bottom: 0;
	}
    .recruit_wrap nav ul li{
		padding: 10px 25px;
		margin: 0 15px;
	}
	.recruit_wrap nav ul li p span{
        font-size: 18px;
	}
	.recruit_wrap nav ul li p span:after{
        font-size: 14px;
	}
    /*REC_FLOW*/
    .rec_flow h3,
    .rec_point h3{
        width: 420px;
        font-size: 18px;
        margin: 25px 0 35px 0;
        padding-bottom: 4px;
    }
	.no_entry .rec_flow .rec_entory{
		margin-bottom: 35px;
	}
	.rec_flow .rec_entory ol li:nth-child(1){
		margin-top: 25px;
	}
	.rec_flow .rec_entory ol li:last-child{
		margin-bottom: 30px;
	}
	.rec_flow .rec_entory ol li,
	.rec_flow .rec_entory ul li{
        padding: 20px;
        font-size: 16px;
	}
	.rec_flow .rec_entory ol li{
        margin: 20px 0;
	}
	.rec_flow .rec_entory ul li{
        margin: 25px 0 30px 0;
	}
	.rec_flow .rec_entory ol li:after{
		font-size: 18px;
		top: 109%;
	}
	/*REC POINT*/
    .rec_point table{
		margin: 0 0 50px 0;
	}
    /*ENTRY*/
	.entry_contents .wrapper{
		padding: 0 30px;
	}
    .form_list{
        padding: 30px 0 25px 0;
    }
    .form_list div{
        padding-top: 10px;
        padding-bottom: 10px;
    }
    /*FORM BTN*/
    form .btn input[type="reset"],
    form .btn input[type="submit"]{
        width: 240px;
        padding: 10px;
        margin: 0 30px;
        margin-bottom: 35px;
		font-size: 15px;
    }
}
/*PC*/
@media (min-width: 894px) {
    /*RECRUIT*/
    .recruit_wrap nav ul{
        margin-top: 45px;
        margin-bottom: 0;
	}
    .recruit_wrap nav ul li{
		padding: 15px 45px;
		margin: 0 15px;
	}
	.recruit_wrap nav ul li p span{
        font-size: 20px;
	}
	.recruit_wrap nav ul li p span:after{
        font-size: 18px;
	}
    /*REC_FLOW*/
    .rec_flow h3,
    .rec_point h3{
        width: 280px;
        font-size: 20px;
        margin: 35px 0 30px 0;
        padding-bottom: 8px;
    }
	.no_entry .rec_flow .rec_entory{
		margin-bottom: 50px;
	}
	.rec_flow .rec_entory ol li:nth-child(1){
		margin-top: 25px;
	}
	.rec_flow .rec_entory ol li:last-child{
		margin-bottom: 30px;
	}
	.rec_flow .rec_entory ol li,
	.rec_flow .rec_entory ul li{
        padding: 20px;
        font-size: 16px;
	}
	.rec_flow .rec_entory ol li{
        margin: 20px 0;
	}
	.rec_flow .rec_entory ul li{
        margin: 25px 0 30px 0;
	}
	.rec_flow .rec_entory ol li:after{
		font-size: 18px;
		top: 109%;
	}
	/*REC POINT*/
    .rec_point table{
		margin: 0 0 70px 0;
		font-size: 15px;
	}
	.rec_point table th{
		width: 330px;
		padding-left: 15px;
		padding-right: 0;
	}
	.rec_point table td{
		width: 870px;
	}
    /*ENTRY*/
    .form_list{
        padding: 35px 0;
    }
    .form_list div{
        padding-top: 10px;
        padding-bottom: 10px;
        padding-left: 15px;
    }
    /*FORM BTN*/
    form .btn input[type="reset"],
    form .btn input[type="submit"]{
        width: 240px;
        padding: 10px;
        margin: 0 35px;
        margin-bottom: 70px;
		font-size: 15px;
    }
}