@charset "utf-8";

/*=========================================*/
/* エントリー */
/*=========================================*/

@media screen and (min-width: 1201px), print{

.content_entry:nth-of-type(odd){
	position: relative;
	padding: 50px 0 75px 0;
	background: #f8f8f8 url(/recruit/career/index/images/entry_texture_stripe.png) repeat 0 0 / auto auto;
}

.content_entry:nth-of-type(even){
	position: relative;
	padding: 50px 0 75px 0;
	background: #ffffff none;
}

.entry_title{
	position: absolute;
	top: -48px;
	left: 50%;
	-ms-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	display: inline-block;
	margin: 0px auto 0 auto;
	padding: 0 0 12px 0;
	border-bottom: solid 6px #af1144;
}

.entry_title span{
	font-size: 225%;
	font-weight: 700;
	white-space: nowrap;
}

.entry_text{
	text-align: center;
	font-size: 100%;
	line-height: 120%;
}

.entry_text .entry_comment_required{
	color: #ff0000;
}

/*-- ナビゲーション --*/

.content_entry_navi{
	position: relative;
	padding: 0 0 75px 0;
	background: #ffffff none;
}

.entry_navi{
	list-style: none;
	display: inline-block;
	margin: -52px auto 24px auto;
}

.entry_navi::after{
	content: "";
	display: block;
	clear: both;
}

.entry_navi li{
	float: left;
	text-align: center;
}

.entry_navi li .navi_icon{
	position: relative;
	width: 12px;
	height: 12px;
	margin: 0 auto 0 auto;
	border-radius: 50%;
	background-color: #aaaaaa;
}

.entry_navi li .navi_caption{
	visibility: hidden;
	width: 100%;
	margin: 32px 0 0 0;
	text-align: center;
	font-size: 90%;
	font-weight: bold;
}

.entry_navi li.navi_current .navi_icon::after{
	position: absolute;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	width: 12px;
	height: 12px;
	border: solid 24px #eeeeee;
	border-radius: 50%;
	background-color: #af1144;
	content: "";
}

.entry_navi li.navi_current .navi_caption{
	visibility: visible;
	width: 100%;
	margin: 32px 0 0 0;
	text-align: center;
	font-size: 90%;
	font-weight: bold;
	color: #000000;
}

.entry_navi li:not(:first-child) .navi_list_wrap{
	padding: 0 0 0 168px;
}

.entry_navi li:not(:first-child)::before{
	float: left;
	position: relative;
	display: block;
	width: 160px;
	height: 3px;
	margin: 4px 0 4px 4px;
	background-color: #aaaaaa;
	content: "";
	z-index: 2;
}

.entry_navi li:not(:first-child)::after{
	content: "";
	display: block;
	clear: both;
}

/*-- 見出し --*/

.content_entry .entry_categoryhead{
	position: absolute;
	top: -36px;
	left: 50%;
	-ms-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	display: inline-block;
	margin: 0px auto 0 auto;
	padding: 0 0 12px 0;
	border-bottom: solid 6px #af1144;
}

.content_entry .entry_categoryhead span{
	font-size: 150%;
	font-weight: 700;
}

/*-- ボタン --*/

.content_button{
	margin: 24px auto 0 auto;
}

.entry_buttons{
	display: inline-block;
	margin: 24px auto 0 auto;
}

.entry_buttons .entry_button_back{
	display: inline-block;
	width: 240px;
	height: 32px;
	margin: 0 12px 0 12px;
	background-color: rgba(128, 128, 128, .75);
	text-decoration: none;
	font-size: 100%;
	color: #ffffff;
	transition: all 0.2s ease-in 0s;
}

.entry_buttons .entry_button_back:hover,
.entry_buttons .entry_button_back:active{
	display: inline-block;
	width: 240px;
	height: 32px;
	margin: 0 12px 0 12px;
	background-color: rgba(192, 192, 192, .75);
	text-decoration: none;
	font-size: 100%;
	color: #ffffff;
	transition: all 0.2s ease-in 0s;
}

.entry_buttons .entry_button_next{
	display: inline-block;
	width: 240px;
	height: 32px;
	margin: 0 12px 0 12px;
	background-color: rgba(0, 0, 0, .75);
	text-decoration: none;
	font-size: 100%;
	color: #ffffff;
	transition: all 0.2s ease-in 0s;
}

.entry_buttons .entry_button_next:hover,
.entry_buttons .entry_button_next:active{
	display: inline-block;
	width: 240px;
	height: 32px;
	margin: 0 12px 0 12px;
	background-color: rgba(128, 128, 128, .75);
	text-decoration: none;
	font-size: 100%;
	color: #ffffff;
	transition: all 0.2s ease-in 0s;
}

/*-- 項目リスト --*/

.content_entry dl{
	width: 92%;
	margin: 0 auto 0 auto;
	border-bottom: 1px solid #dcdcdc;
	overflow: hidden;
}

.content_entry dl::after{
	content: "";
	display: block;
	clear: both;
}

.content_entry dl dt{
	clear: both;
	float: left;
	width: 25%;
	border-top: 1px solid #dcdcdc;
	text-align: left;
	font-size: 115%;
	font-weight: 700;
	color: #000000;
	line-height: 130%;
}

.content_entry dl dt .dt_inner{
	position: relative;
	min-height: 23px;
	margin: 16px 8px 16px 120px;
}

.content_entry dl dt.entry_required .dt_inner::before{
	position: absolute;
	top: 0;
	left: -12px;
	font-size: 90%;
	color: #ff0000;
	content: "*";
}

.content_entry dl dd{
	margin-left: 25%;
	border-top: 1px solid #dcdcdc;
	text-align: left;
	font-size: 100%;
	line-height: 150%;
}

.content_entry dl dd .dd_inner{
	min-height: 23px;
	padding: 16px 120px 16px 8px;
}

/*-- エントリー同意画面 --*/

.content_entry_concent{
	position: relative;
	padding: 50px 0 75px 0;
	background: #ffffff none;
}

.entry_concent_agreement{
	margin: 24px 0 24px 0;
}

.entry_concent_agreement textarea{
	width: 960px;
	height: 320px;
	margin: 0 auto 0 auto;
	padding: 8px 8px 8px 8px;
	border: solid 1px #888888;
	background-color: #eeeeee;
	font-size: 16px;
	line-height: 150%;
}

/*-- エントリー入力 --*/

.entry_input_guide{
	display: inline-block;
	margin: 0 auto 24px 0;
	text-align: left;
	line-height: 120%;
	font-size: 100%;
}

.entry_input_text{
	text-align: left;
	font-size: 100%;
}

span.entry_input_text{
	display: inline-block;
	margin: 0 4px 0 0;
	font-size: 100%;
}

.entry_input_text_name{
	display: inline-block;
	width: 32px;
	margin: 0 4px 0 0;
	text-align: right;
	font-size: 100%;
}

.entry_input_text_tips{
	text-align: left;
	font-size: 90%;
}

.entry_input_text_notion{
	text-align: left;
	color: #ff0000;
}

.entry_filename{
	margin: 0 0 12px 0;
	text-align: left;
	font-size: 90%;
	line-height: 120%;
}

.entry_filename label{
	margin: 0 24px 0 0;
	vertical-align: middle;
}

.entry_examplelink{
	display: inline-block;
	margin: 10px 10px 10px 0px;
	text-align: left;
	font-size: 90%;
	line-height: 120%;
}

.entry_examplelink::before{
	font-family: "Font Awesome 5 Free";
  content: '\f35d';
  font-weight: 900;
}

.content_entry input[type=text]{
	margin: 0 4px 8px 0;
	padding: 8px 8px 8px 8px;
	border: solid 1px #888888;
	background-color: #eeeeee;
	font-size: 16px;
}

.content_entry input[type=text].input_text_short{
	width: 48px;
}

.content_entry input[type=text].input_text_medium{
	width: 128px;
}

.content_entry input[type=text].input_text_long{
	width: 70%;
}

.content_entry textarea{
	padding: 8px 8px 8px 8px;
	border: solid 1px #888888;
	background-color: #eeeeee;
	font-size: 16px;
}

.content_entry textarea.textarea_small{
	width: 70%;
	height: 16px;
	margin: 0 4px 8px 24px;
}

.content_entry textarea.textarea_large{
	width: 90%;
	height: 128px;
}

.content_entry select{
	outline:none;
	text-indent: 0.01px;
	text-overflow: '';
	background: none transparent;
	vertical-align: middle;
	font-size: inherit;
	color: inherit;
	-webkit-appearance: button;
	-moz-appearance: button;
	appearance: button;
	margin: 0 0 4px 0;
	padding: 5px 8px 5px 8px;
	background-color: #eeeeee;
	font-size: 16px;
	color: #000000;
}

.content_entry select:-moz-focusring { 
	color: transparent; 
	text-shadow: 0 0 0 #828c9a;
}

.content_entry .select_wrap{
	position: relative;
	display: inline-block;
}

.content_entry input[type=radio]{
	display: none;
}

.content_entry input[type=radio] + span {
	position: relative;
	display: inline-block;
	margin: 0 4px 0 0;
	padding: 0 0 0 20px;
	cursor: pointer;
}

.content_entry input[type=radio] + span::before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	display: block;
	width: 16px;
	height: 16px;
	border: 1px solid #888888;
	border-radius: 50%;
	background-color: #eeeeee;
	content: "";
}

.content_entry input[type=radio] + span::after {
	position: absolute;
	top: 50%;
	left: 4px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	display: block;
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background-color: #000000;
	content: "";
	opacity: 0;
}

.content_entry input[type=radio]:checked + span::after {
	opacity: 1;
}

.content_entry input[type=checkbox]{
	display: none;
}

.content_entry input[type=checkbox] + span {
	position: relative;
	display: inline-block;
	margin: 0 4px 0 0;
	padding: 0 0 0 24px;
	cursor: pointer;
}

.content_entry input[type=checkbox] + span::before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	display: block;
	width: 16px;
	height: 16px;
	border: 1px solid #888888;
	background-color: #eeeeee;
	content: "";
}

.content_entry input[type=checkbox] + span::after {
	
	position: absolute;
	top: 22%;
	left: 0;
	-ms-transform: translateY(-50%) rotate(-45deg);
	-moz-transform: translateY(-50%) rotate(-45deg);
	-webkit-transform: translateY(-50%) rotate(-45deg);
	transform: translateY(-50%) rotate(-45deg);
	transition: all 0.3s ease 0s;
	display: block;
	border-bottom: 3px solid #000000;
	border-left: 3px solid #000000;
	width: 16px;
	height: 10px;
	content: "";
	opacity: 0;
}

.content_entry input[type=checkbox]:checked + span::after {
	opacity: 1;
}

/*-- エントリーエラー --*/

.entry_error{
	border: solid 3px #ff0000;
	width: 115%;
	max-width: 1200px;
	margin: 20px auto 0 auto;
	padding: 40px 0 40px 0;
}

.entry_error .entry_error_text{
	padding: 0 40px 0 40px;
	text-align: center;
	font-size: 100%;
	font-weight: 500;
	color: #ff0000;
	line-height: 120%;
}

.entry_error .entry_error_bold{
	padding: 0 40px 0px 40px;
	text-align: center;
	font-size: 100%;
	font-weight: 700;
	color: #ff0000;
	line-height: 120%;
}

}

@media screen and (max-width: 1200px){

.content_entry:nth-of-type(odd){
	position: relative;
	padding: 32px 0 75px 0;
	background: #f8f8f8 url(/recruit/career/index/images/entry_texture_stripe.png) repeat 0 0 / auto auto;
}

.content_entry:nth-of-type(even){
	position: relative;
	padding: 32px 0 75px 0;
	background: #ffffff none;
}

.entry_title{
	position: absolute;
	top: -44px;
	left: 50%;
	-ms-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	display: inline-block;
	margin: 0px auto 0 auto;
	padding: 0 0 12px 0;
	border-bottom: solid 6px #af1144;
}

.entry_title span{
	font-size: 200%;
	font-weight: 700;
	white-space: nowrap;
}

.entry_text{
	text-align: center;
	font-size: 96%;
	line-height: 120%;
}

.entry_text .entry_comment_required{
	color: #ff0000;
}

/*-- ナビゲーション --*/

.content_entry_navi{
	position: relative;
	padding: 0 0 75px 0;
	background: #ffffff none;
}

.entry_navi{
	list-style: none;
	display: inline-block;
	margin: 8px auto 20px auto;
}

.entry_navi::after{
	content: "";
	display: block;
	clear: both;
}

.entry_navi li{
	float: left;
	text-align: center;
}

.entry_navi li .navi_icon{
	position: relative;
	width: 12px;
	height: 12px;
	margin: 0 auto 0 auto;
	border-radius: 50%;
	background-color: #aaaaaa;
}

.entry_navi li .navi_caption{
	visibility: hidden;
	width: 100%;
	margin: 32px 0 0 0;
	text-align: center;
	font-size: 85%;
	font-weight: bold;
	color: #000000;
}

.entry_navi li.navi_current .navi_icon::after{
	position: absolute;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	width: 12px;
	height: 12px;
	border: solid 24px #eeeeee;
	border-radius: 50%;
	background-color: #af1144;
	content: "";
}

.entry_navi li.navi_current .navi_caption{
	visibility: visible;
	width: 100%;
	margin: 32px 0 0 0;
	text-align: center;
	font-size: 85%;
	font-weight: bold;
	color: #000000;
}

.entry_navi li:not(:first-child) .navi_list_wrap{
	padding: 0 0 0 168px;
}

.entry_navi li:not(:first-child)::before{
	float: left;
	position: relative;
	display: block;
	width: 160px;
	height: 3px;
	margin: 4px 0 4px 4px;
	background-color: #aaaaaa;
	content: "";
	z-index: 2;
}

.entry_navi li:not(:first-child)::after{
	content: "";
	display: block;
	clear: both;
}

/*-- 見出し --*/

.content_entry .entry_categoryhead{
	position: absolute;
	top: -32px;
	left: 50%;
	-ms-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	display: inline-block;
	margin: 0px auto 0 auto;
	padding: 0 0 12px 0;
	border-bottom: solid 6px #af1144;
}

.content_entry .entry_categoryhead span{
	font-size: 125%;
	font-weight: 700;
}

/*-- ボタン --*/

.content_button{
	margin: 24px auto 0 auto;
}

.entry_buttons{
	display: inline-block;
	margin: 24px auto 0 auto;
}

.entry_buttons .entry_button_back{
	display: inline-block;
	width: 240px;
	height: 32px;
	margin: 0 12px 0 12px;
	background-color: rgba(128, 128, 128, .75);
	text-decoration: none;
	font-size: 95%;
	color: #ffffff;
	transition: all 0.2s ease-in 0s;
}

.entry_buttons .entry_button_back:hover,
.entry_buttons .entry_button_back:active{
	display: inline-block;
	width: 240px;
	height: 32px;
	margin: 0 12px 0 12px;
	background-color: rgba(192, 192, 192, .75);
	text-decoration: none;
	font-size: 95%;
	color: #ffffff;
	transition: all 0.2s ease-in 0s;
}

.entry_buttons .entry_button_next{
	display: inline-block;
	width: 240px;
	height: 32px;
	margin: 0 12px 0 12px;
	background-color: rgba(0, 0, 0, .75);
	text-decoration: none;
	font-size: 95%;
	color: #ffffff;
	transition: all 0.2s ease-in 0s;
}

.entry_buttons .entry_button_next:hover,
.entry_buttons .entry_button_next:active{
	display: inline-block;
	width: 240px;
	height: 32px;
	margin: 0 12px 0 12px;
	background-color: rgba(128, 128, 128, .75);
	text-decoration: none;
	font-size: 95%;
	color: #ffffff;
	transition: all 0.2s ease-in 0s;
}

/*-- 項目リスト --*/

.content_entry dl{
	width: 100%;
	margin: 0 auto 0 auto;
	border-bottom: 1px solid #dcdcdc;
	overflow: hidden;
}

.content_entry dl::after{
	content: "";
	display: block;
	clear: both;
}

.content_entry dl dt{
	clear: both;
	float: left;
	width: 30%;
	border-top: 1px solid #dcdcdc;
	text-align: left;
	font-size: 110%;
	font-weight: 700;
	color: #000000;
	line-height: 130%;
}

.content_entry dl dt .dt_inner{
	position: relative;
	min-height: 22px;
	margin: 12px 8px 12px 20%;
}

.content_entry dl dt.entry_required .dt_inner::before{
	position: absolute;
	top: 0;
	left: -12px;
	font-size: 90%;
	color: #ff0000;
	content: "*";
}

.content_entry dl dd{
	margin-left: 30%;
	border-top: 1px solid #dcdcdc;
	text-align: left;
	font-size: 95%;
	line-height: 150%;
}

.content_entry dl dd .dd_inner{
	min-height: 22px;
	padding: 12px 32px 12px 8px;
}

/*-- エントリー同意画面 --*/

.content_entry_concent{
	position: relative;
	padding: 40px 0 75px 0;
	background: #ffffff none;
}

.entry_concent_agreement{
	margin: 20px 0 20px 0;
}

.entry_concent_agreement textarea{
	width: 90%;
	max-width: 900px;
	height: 300px;
	margin: 0 auto 0 auto;
	padding: 8px 8px 8px 8px;
	border: solid 1px #888888;
	background-color: #eeeeee;
	font-size: 15px;
	line-height: 150%;
}

/*-- エントリー入力 --*/

.entry_input_guide{
	display: inline-block;
	margin: 0 auto 24px auto;
	text-align: left;
	line-height: 120%;
	font-size: 95%;
}

.entry_input_link{
	display: block;
	margin: 0 0 24px 0;
	text-align: center;
	line-height: 120%;
	font-size: 95%;
}

.entry_input_text{
	text-align: left;
	font-size: 100%;
}

span.entry_input_text{
	display: inline-block;
	margin: 0 4px 0 0;
	font-size: 100%;
}

.entry_input_text_name{
	display: inline-block;
	width: 32px;
	margin: 0 4px 0 0;
	text-align: right;
	font-size: 100%;
}

.entry_input_text_tips{
	text-align: left;
	font-size: 90%;
}

.entry_input_text_notion{
	text-align: left;
	color: #ff0000;
}

.entry_filename{
	margin: 0 0 12px 0;
	text-align: left;
	font-size: 95%;
	line-height: 120%;
}

.entry_filename label{
	margin: 0 24px 0 0;
	vertical-align: middle;
}

.entry_examplelink{
	display: block;
	margin: 12px 0 0 0;
	text-align: left;
	font-size: 95%;
	line-height: 120%;
}

.entry_examplelink::before{
	font-family: "Font Awesome 5 Free";
  content: '\f35d';
  font-weight: 900;
}

.content_entry input[type=text]{
	margin: 0 4px 8px 0;
	padding: 8px 8px 8px 8px;
	border: solid 1px #888888;
	background-color: #eeeeee;
	font-size: 15px;
}

.content_entry input[type=text].input_text_short{
	width: 45px;
}

.content_entry input[type=text].input_text_medium{
	width: 120px;
}

.content_entry input[type=text].input_text_long{
	width: 70%;
}

.content_entry textarea{
	padding: 8px 8px 8px 8px;
	border: solid 1px #888888;
	background-color: #eeeeee;
	font-size: 15px;
}

.content_entry textarea.textarea_small{
	width: 70%;
	height:15px;
	margin: 0 4px 8px 24px;
}

.content_entry textarea.textarea_large{
	width: 90%;
	height: 120px;
}

.content_entry select{
	outline:none;
	text-indent: 0.01px;
	text-overflow: '';
	background: none transparent;
	vertical-align: middle;
	font-size: inherit;
	color: inherit;
	-webkit-appearance: button;
	-moz-appearance: button;
	appearance: button;
	margin: 0 0 4px 0;
	padding: 5px 8px 5px 8px;
	background-color: #eeeeee;
	font-size: 15px;
	color: #000000;
}

.content_entry select:-moz-focusring { 
	color: transparent; 
	text-shadow: 0 0 0 #828c9a;
}

.content_entry .select_wrap{
	position: relative;
	display: inline-block;
}

.content_entry input[type=radio]{
	display: none;
}

.content_entry input[type=radio] + span {
	position: relative;
	display: inline-block;
	margin: 0 4px 0 0;
	padding: 0 0 0 20px;
	cursor: pointer;
}

.content_entry input[type=radio] + span::before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	display: block;
	width: 15px;
	height: 15px;
	border: 1px solid #888888;
	border-radius: 50%;
	background-color: #eeeeee;
	content: "";
}

.content_entry input[type=radio] + span::after {
	position: absolute;
	top: 50%;
	left: 4px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	display: block;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background-color: #000000;
	content: "";
	opacity: 0;
}

.content_entry input[type=radio]:checked + span::after {
	opacity: 1;
}

.content_entry input[type=checkbox]{
	display: none;
}

.content_entry input[type=checkbox] + span {
	position: relative;
	display: inline-block;
	margin: 0 4px 0 0;
	padding: 0 0 0 24px;
	cursor: pointer;
}

.content_entry input[type=checkbox] + span::before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	display: block;
	width: 15px;
	height: 15px;
	border: 1px solid #888888;
	background-color: #eeeeee;
	content: "";
}

.content_entry input[type=checkbox] + span::after {
	position: absolute;
	top: 22%;
	left: 0;
	-ms-transform: translateY(-50%) rotate(-45deg);
	-moz-transform: translateY(-50%) rotate(-45deg);
	-webkit-transform: translateY(-50%) rotate(-45deg);
	transform: translateY(-50%) rotate(-45deg);
	transition: all 0.3s ease 0s;
	display: block;
	border-bottom: 3px solid #000000;
	border-left: 3px solid #000000;
	width: 15px;
	height: 9px;
	content: "";
	opacity: 0;
}

.content_entry input[type=checkbox]:checked + span::after {
	opacity: 1;
}

/*-- エントリーエラー --*/

.entry_error{
	border: solid 3px #ff0000;
	width: 90%;
	margin: 20px auto 0 auto;
	padding: 30px 0 30px 0;
}

.entry_error .entry_error_text{
	padding: 0 30px 0 30px;
	text-align: center;
	font-size: 95%;
	font-weight: 500;
	color: #ff0000;
	line-height: 120%;
}

.entry_error .entry_error_bold{
	padding: 0 30px 16px 30px;
	text-align: center;
	font-size: 95%;
	font-weight: 700;
	color: #ff0000;
	line-height: 120%;
}

}

@media screen and (max-width: 640px){

.content_entry:nth-of-type(odd){
	position: relative;
	padding: 24px 0 64px 0;
	background: #f8f8f8 url(/recruit/career/index/images/entry_texture_stripe.png) repeat 0 0 / auto auto;
}

.content_entry:nth-of-type(even){
	position: relative;
	padding: 50px 0 75px 0;
	background: #ffffff none;
}

.entry_title{
	position: absolute;
	top: -36px;
	left: 50%;
	-ms-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	display: inline-block;
	margin: 0px auto 0 auto;
	padding: 0 0 12px 0;
	border-bottom: solid 6px #af1144;
}

.entry_title span{
	font-size: 150%;
	font-weight: 700;
	white-space: nowrap;
}

.entry_text{
	text-align: center;
	font-size: 90%;
	line-height: 120%;
}

.entry_text .entry_comment_required{
	color: #ff0000;
}

/*-- ナビゲーション --*/

.content_entry_navi{
	position: relative;
	padding: 0 0 75px 0;
	background: #ffffff none;
}

.entry_navi{
	list-style: none;
	display: inline-block;
	margin: 0 auto 16px auto;
}

.entry_navi::after{
	content: "";
	display: block;
	clear: both;
}

.entry_navi li{
	float: left;
	text-align: center;
}

.entry_navi li .navi_icon{
	position: relative;
	width: 12px;
	height: 12px;
	margin: 0 auto 0 auto;
	border-radius: 50%;
	background-color: #aaaaaa;
}

.entry_navi li .navi_caption{
	visibility: hidden;
	width: 100%;
	margin: 26px 0 0 0;
	text-align: center;
	font-size: 80%;
	font-weight: bold;
}

.entry_navi li.navi_current .navi_icon::after{
	position: absolute;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	width: 12px;
	height: 12px;
	border: solid 18px #eeeeee;
	border-radius: 50%;
	background-color: #af1144;
	content: "";
}

.entry_navi li.navi_current .navi_caption{
	visibility: visible;
	width: 100%;
	margin: 26px 0 0 0;
	text-align: center;
	font-size: 80%;
	font-weight: bold;
	color: #000000;
}

.entry_navi li:not(:first-child) .navi_list_wrap{
	padding: 0 0 0 78px;
}

.entry_navi li:not(:first-child)::before{
	float: left;
	position: relative;
	display: block;
	width: 70px;
	height: 3px;
	margin: 4px 0 4px 4px;
	background-color: #aaaaaa;
	content: "";
	z-index: 2;
}

.entry_navi li:not(:first-child)::after{
	content: "";
	display: block;
	clear: both;
}

/*-- 見出し --*/

.content_entry .entry_categoryhead{
	position: absolute;
	top: -30px;
	left: 50%;
	-ms-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	display: inline-block;
	margin: 0px auto 0 auto;
	padding: 0 0 12px 0;
	border-bottom: solid 6px #af1144;
}

.content_entry .entry_categoryhead span{
	font-size: 115%;
	font-weight: 700;
}

/*-- ボタン --*/

.content_button{
	margin: 24px auto 0 auto;
}

.entry_buttons{
	display: block;
	width: 90%;
	margin: 24px auto 0 auto;
	text-align: center;
}

.entry_buttons .entry_button_back{
	display: inline-block;
	width: 100%;
	height: 32px;
	margin: 0 0 12px 0;
	background-color: rgba(128, 128, 128, .75);
	text-decoration: none;
	font-size: 90%;
	color: #ffffff;
	transition: all 0.2s ease-in 0s;
}

.entry_buttons .entry_button_back:hover,
.entry_buttons .entry_button_back:active{
	display: inline-block;
	width: 100%;
	height: 32px;
	margin: 0 0 12px 0;
	background-color: rgba(192, 192, 192, .75);
	text-decoration: none;
	font-size: 90%;
	color: #ffffff;
	transition: all 0.2s ease-in 0s;
}

.entry_buttons .entry_button_next{
	display: inline-block;
	width: 100%;
	height: 32px;
	margin: 0 0 12px 0;
	background-color: rgba(0, 0, 0, .75);
	text-decoration: none;
	font-size: 90%;
	color: #ffffff;
	transition: all 0.2s ease-in 0s;
}

.entry_buttons .entry_button_next:hover,
.entry_buttons .entry_button_next:active{
	display: inline-block;
	width: 100%;
	height: 32px;
	margin: 0 0 12px 0;
	background-color: rgba(128, 128, 128, .75);
	text-decoration: none;
	font-size: 90%;
	color: #ffffff;
	transition: all 0.2s ease-in 0s;
}

/*-- 項目リスト --*/

.content_entry dl{
	width: 100%;
	margin: 0 auto 0 auto;
	border-top: 1px solid #dcdcdc;
	border-bottom: none;
	overflow: visible;
}

.content_entry dl::after{
	content: none
}

.content_entry dl dt{
	clear: none;
	float: none;
	width: 100%;
	border-top: none;
	margin: 0 0 0 0;
	text-align: left;
	font-size: 100%;
	font-weight: 700;
	color: #000000;
	line-height: 130%;
}

.content_entry dl dt .dt_inner{
	position: relative;
	margin: 20px 0 8px 0;
	padding: 0 0 0 16px;
	border-left: 4px solid #dcdcdc;
}
.content_entry dl dt.entry_required .dt_inner::before{
	content: none;
}

.content_entry dl dt.entry_required .dt_inner::after{
	position: relative;
	top: -4px;
	font-size: 90%;
	color: #ff0000;
	content: "*";
}

.content_entry dl dd{
	margin: 0;
	border-top: none;
	border-bottom: 1px solid #dcdcdc;
	text-align: left;
	font-size: 90%;
	line-height: 150%;
}

.content_entry dl dd .dd_inner{
	padding: 12px 24px 12px 24px;
}

/*-- エントリー同意画面 --*/

.content_entry_concent{
	position: relative;
	padding: 32px 0 75px 0;
	background: #ffffff none;
}

.entry_concent_agreement{
	margin: 24px 0 24px 0;
}

.entry_concent_agreement textarea{
	width: 90%;
	max-width: 840px;
	height: 280px;
	margin: 0 auto 0 auto;
	padding: 8px 8px 8px 8px;
	border: solid 1px #888888;
	background-color: #eeeeee;
	font-size: 14px;
	line-height: 150%;
}

/*-- エントリー入力 --*/

.entry_input_guide{
	display: inline-block;
	margin: 0 auto 20px 0;
	text-align: left;
	line-height: 120%;
	font-size: 90%;
}

.entry_input_link{
	display: block;
	margin: 0 0 20px 0;
	text-align: center;
	line-height: 120%;
	font-size: 90%;
}

.entry_input_text{
	text-align: left;
	font-size: 100%;
}

span.entry_input_text{
	display: inline-block;
	margin: 0 4px 0 0;
	font-size: 100%;
}

.entry_input_text_name{
	display: inline-block;
	width: 30px;
	margin: 0 4px 0 0;
	text-align: right;
	font-size: 100%;
}

.entry_input_text_tips{
	text-align: left;
	font-size: 90%;
}

.entry_input_text_notion{
	text-align: left;
	color: #ff0000;
}

.entry_filename{
	margin: 0 0 16px 0;
	text-align: left;
	font-size: 100%;
	line-height: 120%;
}

.entry_filename label{
	margin: 0 20px 0 0;
	vertical-align: middle;
}

.entry_examplelink{
	display: block;
	margin: 16px 0 0 0;
	text-align: left;
	font-size: 100%;
	line-height: 120%;
}

.entry_examplelink::before{
	font-family: "Font Awesome 5 Free";
  content: '\f35d';
  font-weight: 900;
}

.content_entry input[type=text]{
	margin: 0 4px 8px 0;
	padding: 8px 8px 8px 8px;
	border: solid 1px #888888;
	background-color: #eeeeee;
	font-size: 14px;
}

.content_entry input[type=text].input_text_short{
	width: 42px;
}

.content_entry input[type=text].input_text_medium{
	width: 80px;
}

.content_entry input[type=text].input_text_long{
	width: 70%;
}

.content_entry textarea{
	padding: 8px 8px 8px 8px;
	border: solid 1px #888888;
	background-color: #eeeeee;
	font-size: 14px;
}

.content_entry textarea.textarea_small{
	width: 70%;
	height: 14px;
	margin: 0 4px 8px 24px;
}

.content_entry textarea.textarea_large{
	width: 90%;
	height: 112px;
}

.content_entry select{
	outline:none;
	text-indent: 0.01px;
	text-overflow: '';
	background: none transparent;
	vertical-align: middle;
	font-size: inherit;
	color: inherit;
	-webkit-appearance: button;
	-moz-appearance: button;
	appearance: button;
	margin: 0 0 4px 0;
	padding: 5px 8px 5px 8px;
	background-color: #eeeeee;
	font-size: 14px;
	color: #000000;
}

.content_entry select:-moz-focusring { 
	color: transparent; 
	text-shadow: 0 0 0 #828c9a;
}

.content_entry .select_wrap{
	position: relative;
	display: inline-block;
}

.content_entry input[type=radio]{
	display: none;
}

.content_entry input[type=radio] + span {
	position: relative;
	display: inline-block;
	margin: 0 4px 0 0;
	padding: 0 0 0 20px;
	cursor: pointer;
}

.content_entry input[type=radio] + span::before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	display: block;
	width: 14px;
	height: 14px;
	border: 1px solid #888888;
	border-radius: 50%;
	background-color: #eeeeee;
	content: "";
}

.content_entry input[type=radio] + span::after {
	position: absolute;
	top: 50%;
	left: 3px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	display: block;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background-color: #000000;
	content: "";
	opacity: 0;
}

.content_entry input[type=radio]:checked + span::after {
	opacity: 1;
}

.content_entry input[type=checkbox]{
	display: none;
}

.content_entry input[type=checkbox] + span {
	position: relative;
	display: inline-block;
	margin: 0 4px 0 0;
	padding: 0 0 0 20px;
	cursor: pointer;
}

.content_entry input[type=checkbox] + span::before {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	display: block;
	width: 14px;
	height: 14px;
	border: 1px solid #888888;
	background-color: #eeeeee;
	content: "";
}

.content_entry input[type=checkbox] + span::after {
	position: absolute;
	top: 22%;
	left: 0;
	-ms-transform: translateY(-50%) rotate(-45deg);
	-moz-transform: translateY(-50%) rotate(-45deg);
	-webkit-transform: translateY(-50%) rotate(-45deg);
	transform: translateY(-50%) rotate(-45deg);
	transition: all 0.3s ease 0s;
	display: block;
	border-bottom: 3px solid #000000;
	border-left: 3px solid #000000;
	width: 17px;
	height: 8px;
	content: "";
	opacity: 0;
}

.content_entry input[type=checkbox]:checked + span::after {
	opacity: 1;
}

/*-- エントリーエラー --*/

.entry_error{
	border: solid 3px #ff0000;
	width: 100%;
	margin: 20px auto 0 auto;
	padding: 20px 0 20px 0;
}

.entry_error .entry_error_text{
	padding: 0 20px 0 20px;
	text-align: center;
	font-size: 90%;
	font-weight: 500;
	color: #ff0000;
	line-height: 120%;
}

.entry_error .entry_error_bold{
	padding: 0 20px 16px 20px;
	text-align: center;
	font-size: 90%;
	font-weight: 700;
	color: #ff0000;
	line-height: 120%;
}

}

/*-- subpage head --*/

@media screen and (min-width: 1201px), print{

#subpageHead{
	background: url(/recruit/career/index/entry/images/subpage_bg_entry.jpg) no-repeat center 25% / 100% auto;
}

#subpageHead .subHeadTitle{
	color: #ffffff;
}

}

@media screen and (max-width: 1200px){

#subpageHead{
	background: url(/recruit/career/index/entry/images/subpage_bg_entry.jpg) no-repeat center 25% / 100% auto;
}

#subpageHead .subHeadTitle{
	color: #ffffff;
}

}

@media screen and (max-width: 640px){

#subpageHead{
	background: url(/recruit/career/index/entry/images/subpage_bg_entry.jpg) no-repeat center 25% / 100% auto;
}

#subpageHead .subHeadTitle{
	color: #ffffff;
}

}

/*-- contents --*/

@media screen and (min-width: 1201px), print{

#contents{
	padding: 100px 0 72px 0;
}

.content{
	position: relative;
}

}

@media screen and (max-width: 1200px){

#contents{
	padding: 72px 0 64px 0;
}

.content{
	position: relative;
}

}

@media screen and (max-width: 640px){

#contents{
	padding: 64px 0 48px 0;
}

.content{
	position: relative;
}

}

/*-- footer --*/

@media screen and (min-width: 1201px), print{

footer .footerHead .footerCompany{
	float: none;
	/* width: 362px; */
	width: 708px;
	margin: 0 auto 0 auto;
}

footer .footerHead .footerCompany::after{
	content: "";
	display: block;
	clear: both;
}

footer .footerHead .footerCompany .footerCatch{
	float: left;
	margin: 0 24px 0 0;
	text-align: left;
	font-size: 225%;
	font-weight: 700;
	font-style: normal;
	color: #af1144;
}

footer .footerHead .footerCompany .footerName{
	height: 80px;
}

footer .footerHead .footerCompany .footerName::after{
	content: "";
	display: block;
	clear: both;
}

footer .footerHead .footerCompany .footerName .footerNameName{
	float: left;
	margin: 26px 0 26px 0;
	font-size: 105%;
	line-height: 28px;
}

footer .footerHead .footerCompany .footerName .footerNameType{
	float: right;
	margin: 26px 0 26px 0;
	padding: 8px 36px 8px 36px;
	background-color: #000000;
	vertical-align: middle;
	font-size: 75%;
	font-weight: 700;
	font-style: normal;
	color: #ffffff;
}

footer .footerHead .footerEntry{
	display: none;
}

}

@media screen and (max-width: 1200px){

footer .footerHead .footerCompany{
	float: none;
	margin: 0 auto 36px auto;
}

footer .footerHead .footerEntry{
	display: none;
}

footer .footerLink{
	margin: 0 -1px 0 auto;
}

}

@media screen and (max-width: 960px){

footer .footerHead{
  margin: 32px auto 0 auto;
}

footer .footerHead .footerEntry{
	display: none;
}

footer .footerHead .footerEntry{
	display: none;
}

}

@media screen and (max-width: 640px){

footer .footerHead{
  margin: 24px auto 0 auto;
}

footer .footerHead .footerEntry{
	display: none;
}

}