@charset "utf-8";

/*------------------------------------------------

		recruit_caption

------------------------------------------------*/
.recruit_caption {
	padding: 0 4%;
	text-align: center;
}
.recruit_caption_inner {
	max-width: 1620px;
	margin: 50px auto 75px;
}
.recruit_caption .recruit_caption_ttl {
	color: #382857;
	font-size: 5.8rem;
	font-weight: 900;
	line-height: 1.48;
	margin-bottom: 30px;
}
.tour_point + .recruit_caption .recruit_caption_ttl,
.under_kv + .recruit_caption .recruit_caption_ttl{
	font-size: 4.2rem;
	margin-top: 90px;
}
.recruit_caption .recruit_caption_ttl span {
	font-size: 4.2rem;
}
.recruit_caption p strong {
	background: #ffffab;
	padding: 0 3px;
}
@media (max-width: 959px) {
	.recruit_caption {
		text-align: justify;
	}
	.recruit_caption_inner {
		margin: 30px auto 50px;
	}
	.recruit_caption .recruit_caption_ttl {
		font-size: 4rem;
		margin-bottom: 20px;
		text-align: center;
	}
	.recruit_caption .recruit_caption_ttl span {
		font-size: 3rem;
	}
}
@media (max-width: 767px) {
	.recruit_caption_inner {
		margin: 35px auto 25px;
	}
	.recruit_caption .recruit_caption_ttl {
		font-size: 2.15rem;
		letter-spacing: 0.025em;
		margin-bottom: 20px;
	}
	.tour_point + .recruit_caption .recruit_caption_ttl,
	.under_kv + .recruit_caption .recruit_caption_ttl{
		font-size: 2.15rem;
		margin-top: 50px;
	}
	.recruit_caption .recruit_caption_ttl span {
		font-size: 1.5rem;
	}
}

/*------------------------------------------------

		recruit_policy

------------------------------------------------*/
.recruit_policy {
	padding: 0 4%;
}
.recruit_policy_inner {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 1620px;
	margin: 80px auto 65px;
}
.recruit_policy .recruit_policy_image {
	width: 50%;
}
.recruit_policy .recruit_policy_image figure {
	clip-path: polygon(0 0,100% 0,100% calc(100% - 90px),calc(100% - 90px) 100%, 0 100%);
	width: 100%;
	height: 0;
	padding-top: 70%;
	position: relative;
	overflow: hidden;
}
.recruit_policy .recruit_policy_image figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}
.recruit_policy .recruit_policy_text {
	width: 44.4444%;
	padding-bottom: 60px;
}
.recruit_policy .recruit_policy_text .recruit_policy_text_ttl {
	color: #15224d;
	font-size: 2.6rem;
	font-weight: 900;
	line-height: 1.84;
}
.recruit_policy .recruit_policy_text p + p {
	margin-top: 2em;
}
.recruit_policy .recruit_policy_text p strong {
	background: #ffffab;
	padding: 0 3px;
}
@media (max-width: 959px) {
	.recruit_policy_inner {
		align-items: flex-start;
		margin: 60px auto 40px;
	}
	.recruit_policy .recruit_policy_image {
		width: 50%;
	}
	.recruit_policy .recruit_policy_image figure {
		clip-path: polygon(0 0,100% 0,100% calc(100% - 60px),calc(100% - 60px) 100%, 0 100%);
		padding-top: 100%;
	}
	.recruit_policy .recruit_policy_text {
		padding-bottom: 0;
	}
	.recruit_policy .recruit_policy_text .recruit_policy_text_ttl {
		font-size: 1.8rem;
	}
	.recruit_policy .recruit_policy_text p + p {
		margin-top: 1em;
	}
}
@media (max-width: 767px) {
	.recruit_policy_inner {
		margin: 25px auto 30px;
	}
	.recruit_policy .recruit_policy_image {
		width: 100%;
	}
	.recruit_policy .recruit_policy_image figure {
		clip-path: polygon(0 0,100% 0,100% calc(100% - 45px),calc(100% - 45px) 100%, 0 100%);
		padding-top: 70%;
	}
	.recruit_policy .recruit_policy_text {
		width: 100%;
		margin-top: 20px;
	}
	.recruit_policy .recruit_policy_text .recruit_policy_text_ttl {
		font-size: 1.5rem;
	}
}

/*------------------------------------------------

		reruit_catch

------------------------------------------------*/
.reruit_catch {
	/*background: #a50707;*/
	background: linear-gradient(90deg, #382857 0%, #180b33 100%);
	color: #fff;
	margin: 60px auto 55px;
	padding: 25px 4%;
}
.reruit_catch_inner {
	max-width: 1620px;
	margin: 0 auto;
	text-align: center;
}
.reruit_catch p strong {
	font-size: 3.4rem;
	font-weight: 900;
}

.reruit_catch + .inquiry_form_btn {
	margin-bottom: 55px;
} 

@media (max-width: 959px) {
	.reruit_catch {
		margin: 30px auto 35px;
		padding: 15px 4%;
	}
	.reruit_catch p strong {
		font-size: 2rem;
	}
	.reruit_catch + .inquiry_form_btn {
		margin-bottom: 35px;
	} 
}
@media (max-width: 767px) {
	.reruit_catch_inner {
		text-align: justify;
	}
	.reruit_catch p strong {
		font-size: 1.5rem;
	}
}



/*------------------------------------------------

		recruit_voice

------------------------------------------------*/
.recruit_voice {
	background: linear-gradient(90deg, #382857 0%, #180b33 100%);
	color: #fff;
	padding: 0 4%;
}
.recruit_voice_inner {
	max-width: 1620px;
	margin: 0 auto;
	padding: 70px 0 90px;
}
.recruit_voice .common_ttl {
	color: #fff;
	margin-bottom: 30px;
}
.recruit_voice .common_ttl::before {
	background: #fff;
}
.recruit_voice .recruit_voice_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.recruit_voice .recruit_voice_list .recruit_voice_list_item {
	width: 25%;
}
.recruit_voice .recruit_voice_list .recruit_voice_list_item a {
	clip-path: polygon(0 0,100% 0,100% calc(100% - 45px),calc(100% - 45px) 100%, 0 100%);
	color: #20123c;
	display: block;
	height: 100%;
	min-height: 500px;
	position: relative;
}
.recruit_voice .recruit_voice_list .recruit_voice_list_item a:hover {
	color: #fff;
}
.recruit_voice .recruit_voice_list .recruit_voice_list_item a .recruit_voice_list_item_image {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: relative;
}
.recruit_voice .recruit_voice_list .recruit_voice_list_item a .recruit_voice_list_item_image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}
.recruit_voice .recruit_voice_list .recruit_voice_list_item a .recruit_voice_list_item_text {
	background: rgba(255,255,255,0.85);
	font-size: 1.8rem;
	font-weight: 700;
	width: 100%;
	line-height: 1.77;
	padding: 12px 20px;
	text-align: center;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 1;
}
.recruit_voice .recruit_voice_list .recruit_voice_list_item a:hover .recruit_voice_list_item_text {
	background: #372755;
	transition: background-color 0s cubic-bezier(0, 0, 0.25, 1) 0.5s;
}
.recruit_voice .recruit_voice_list .recruit_voice_list_item a .recruit_voice_list_item_text::before {
	background: #372755;
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	transform: scaleX(0);
	transform-origin: right center;
	transition: transform 0.5s cubic-bezier(0, 0, 0.25, 1) 0s;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 0;
}
.recruit_voice .recruit_voice_list .recruit_voice_list_item a:hover .recruit_voice_list_item_text::before {
	transform: scaleX(1);
	transform-origin: left center;
}
.recruit_voice .recruit_voice_list .recruit_voice_list_item a .recruit_voice_list_item_text p {
	position: relative;
	z-index: 1;
}
.recruit_voice .recruit_voice_list .recruit_voice_list_item a .recruit_voice_list_item_text i {
	display: block;
	margin-top: -6px;
	padding-right: 7px;
	overflow: hidden;
	position: absolute;
	top: 50%;
	left: 20px;
}
.recruit_voice .recruit_voice_list .recruit_voice_list_item a .recruit_voice_list_item_text i::before {
	background: url(../img/icn_arrow_right.svg) right top / contain no-repeat;
	content: "";
	display: block;
	width: 38px;
	height: 12px;
}
.recruit_voice .recruit_voice_list .recruit_voice_list_item a:hover .recruit_voice_list_item_text i::before {
	background: url(../img/icn_arrow_right_white.svg) right top / contain no-repeat;
	animation: arrowAnime 0.5s cubic-bezier(.445, .05, .65, .85) 0s forwards normal;
}
@media (max-width: 959px) {
	.recruit_voice_inner {
		padding: 50px 0 60px;
	}
	.recruit_voice .common_ttl {
		margin-bottom: 20px;
	}
	.recruit_voice .recruit_voice_list .recruit_voice_list_item {
		width: 50%;
	}
	.recruit_voice .recruit_voice_list .recruit_voice_list_item a {
		clip-path: polygon(0 0,100% 0,100% calc(100% - 30px),calc(100% - 30px) 100%, 0 100%);
		min-height: 350px;
	}
	.recruit_voice .recruit_voice_list .recruit_voice_list_item a .recruit_voice_list_item_text {
		font-size: 1.4rem;
		padding: 10px 15px;
	}
	.recruit_voice .recruit_voice_list .recruit_voice_list_item a .recruit_voice_list_item_text i {
		margin-top: -4.5px;
		left: 15px;
	}
	.recruit_voice .recruit_voice_list .recruit_voice_list_item a .recruit_voice_list_item_text i::before {
		width: 28.5px;
		height: 9px;
	}
}
@media (max-width: 767px) {
	.recruit_voice {
		padding: 0;
	}
	.recruit_voice_inner {
		padding: 35px 0 40px;
	}
	.recruit_voice .common_ttl {
		padding: 0 4% 0 calc(30px + 4%);
	}
	.recruit_voice .common_ttl::before {
		left: 4%;
	}
	.recruit_voice .recruit_voice_list .recruit_voice_list_item:nth-of-type(n+3) {
		margin-top: 35px;
	}
	.recruit_voice .recruit_voice_list .recruit_voice_list_item a {
		clip-path: polygon(0 0,100% 0,100% calc(100% - 20px),calc(100% - 20px) 100%, 0 100%);
		min-height: 230px;
	}
	.recruit_voice .recruit_voice_list .recruit_voice_list_item a .recruit_voice_list_item_text {
		font-size: 1rem;
		padding: 5px 15px;
	}
	.recruit_voice .recruit_voice_list .recruit_voice_list_item a .recruit_voice_list_item_text i {
		margin-top: -3px;
		padding-right: 3.5px;
		left: 10px;
	}
	.recruit_voice .recruit_voice_list .recruit_voice_list_item a .recruit_voice_list_item_text i::before {
		width: 19px;
		height: 6px;
	}
}

/*------------------------------------------------

		recruit_voice_modal

------------------------------------------------*/
.recruit_voice_modal {
	width: 95%;
	max-width: 1620px;
	margin: auto;
	overflow: visible;
	position: relative;
}
.recruit_voice_modal_bg {
	background: #fff;
	clip-path: polygon(0 0,100% 0,100% calc(100% - 90px),calc(100% - 90px) 100%, 0 100%);
}
.recruit_voice_modal .mfp-close {
	display: none;
}
.recruit_voice_modal .modal_close {
	align-content: center;
	cursor: pointer;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 50px;
	height: 50px;
	transition: all 0.5s cubic-bezier(0, 0, 0.25, 1) 0s;
	position: absolute;
	top: -50px;
	right: 0;
	z-index: 10;
}
.recruit_voice_modal .modal_close:hover {
	transform: rotate(90deg);
}
.recruit_voice_modal .modal_close::before,
.recruit_voice_modal .modal_close::after {
	background: #fff;
	content: '';
	display: block;
	width: 44px;
	height: 3px;
	margin: 0 auto;
	position: absolute;
	top: 50%;
	left: 0;
}
.recruit_voice_modal .modal_close::before {
	transform: rotate(-45deg);
}
.recruit_voice_modal .modal_close::after {
	transform: rotate(45deg);
}
.recruit_voice_modal .modal_close span {
	display: none;
}
.recruit_voice_modal .recruit_voice_modal_ttl {
	background: linear-gradient(#382857 0%, #180b33 100%);
	color: #fff;
	padding: 30px 7.5%;
}
.recruit_voice_modal .recruit_voice_modal_ttl p {
	font-size: 2.4rem;
	font-weight: 700;
	width: 66%;
	margin-left: auto;
}
.recruit_voice_modal .recruit_voice_modal_inner {
	align-items: flex-start;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 30px 7.5% 50px;
}
.recruit_voice_modal .recruit_voice_modal_inner .recruit_voice_modal_ttl {
	display: none;
}
.recruit_voice_modal .recruit_voice_modal_image {
	width: 29.3%;
	margin-top: -100px;
}
.recruit_voice_modal .recruit_voice_modal_image figure {
	clip-path: polygon(0 0,100% 0,100% calc(100% - 45px),calc(100% - 45px) 100%, 0 100%);
	width: 100%;
	height: 0;
	padding-top: 123%;
	overflow: hidden;
	position: relative;
}
.recruit_voice_modal .recruit_voice_modal_image figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}
.recruit_voice_modal .recruit_voice_modal_text {
	width: 66%;
	text-align: justify;
}
.recruit_voice_modal .recruit_voice_modal_text p + p {
	margin-top: 1em;
}
@media (max-width: 959px) {
	.recruit_voice_modal_bg {
		clip-path: polygon(0 0,100% 0,100% calc(100% - 60px),calc(100% - 60px) 100%, 0 100%);
	}
	.recruit_voice_modal .modal_close {
		width: 40px;
		height: 40px;
		top: -40px;
	}
	.recruit_voice_modal .modal_close::before,
	.recruit_voice_modal .modal_close::after {
		width: 34px;
		height: 2px;
	}
	.recruit_voice_modal .recruit_voice_modal_ttl {
		padding: 20px 4%;
	}
	.recruit_voice_modal .recruit_voice_modal_ttl p {
		font-size: 1.8rem;
		width: 66%;
	}
	.recruit_voice_modal .recruit_voice_modal_inner {
		padding: 20px 4% 35px;
	}
	.recruit_voice_modal .recruit_voice_modal_image {
		margin-top: -55px;
	}
	.recruit_voice_modal .recruit_voice_modal_image figure {
		clip-path: polygon(0 0,100% 0,100% calc(100% - 30px),calc(100% - 30px) 100%, 0 100%);
	}
}
@media (max-width: 767px) {
	.recruit_voice_modal_bg {
		clip-path: polygon(0 0,100% 0,100% calc(100% - 45px),calc(100% - 45px) 100%, 0 100%);
	}
	.recruit_voice_modal .modal_close {
		justify-content: flex-end;
		width: 130px;
		height: 34px;
		text-align: right;
		top: unset;
		bottom: -40px;
	}
	.recruit_voice_modal .modal_close:hover {
		transform: rotate(0);
	}
	.recruit_voice_modal .modal_close::before,
	.recruit_voice_modal .modal_close::after {
		width: 30px;
	}
	.recruit_voice_modal .modal_close span {
		color: #fff;
		display: block;
		font-size: 1.5rem;
		font-weight: 400;
	}
	.recruit_voice_modal .recruit_voice_modal_bg > .recruit_voice_modal_ttl {
		display: none;
	}
	.recruit_voice_modal .recruit_voice_modal_inner {
		padding: 25px 0 25px;
	}
	.recruit_voice_modal .recruit_voice_modal_inner .recruit_voice_modal_ttl {
		display: block;
		width: 100%;
		padding: 40px 4% 20px;
	}
	.recruit_voice_modal .recruit_voice_modal_ttl p {
		font-size: 1.5rem;
		width: 100%;
		text-align: center;
	}
	.recruit_voice_modal .recruit_voice_modal_image {
		width: 100%;
		max-width: 150px;
		margin: 0 auto -30px;
	}
	.recruit_voice_modal .recruit_voice_modal_image figure {
		clip-path: polygon(0 0,100% 0,100% calc(100% - 20px),calc(100% - 20px) 100%, 0 100%);
	}
	.recruit_voice_modal .recruit_voice_modal_text {
		line-height: 1.75;
		width: 100%;
		padding: 15px 4% 0;
	}
}

/*------------------------------------------------

		recruit_qualification

------------------------------------------------*/
.recruit_qualification {
	background: linear-gradient(90deg, #f2efe4 0%, #d5c5a9 100%);
	padding: 80px 4% 90px;
}
.recruit_qualification_inner {
	align-items: flex-start;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 1620px;
	margin: 0 auto;
}
.recruit_qualification .recruit_qualification_text {
	width: 50%;
}
.recruit_qualification .recruit_qualification_text .common_ttl {
	margin-bottom: 45px;
}
.recruit_qualification .recruit_qualification_text .common_ttl span {
	color: #a50707;
	font-size: 2.6rem;
	letter-spacing: 0.05em;
	margin-left: 0.5em;
}
.recruit_qualification .recruit_qualification_text .common_ttl + p {
	font-size: 2rem;
	font-weight: 700;
}
.recruit_qualification .recruit_qualification_image {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	width: 44.4444%;
}
.recruit_qualification .recruit_qualification_image li {
	width: 140px;
	max-width: calc(25% - 20px);
}
.recruit_qualification .recruit_qualification_image li:not(:first-of-type) {
	margin-left: 20px;
}
.recruit_qualification .recruit_qualification_list {
	align-items: flex-start;
	background: #fff;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	width: 100%;
	margin-top: 50px;
	padding: 40px 5%;
}
.recruit_qualification .recruit_qualification_list .rectangle_list {
	width: 33%;
}
.recruit_qualification .recruit_qualification_list .rectangle_list .rectangle_list_item {
	font-size: 1.8rem;
}
.recruit_qualification .recruit_qualification_list .rectangle_list .rectangle_list_item:not(:first-of-type) {
	margin-top: 0.5em;
}
@media (max-width: 959px) {
	.recruit_qualification {
		padding: 50px 4% 60px;
	}
	.recruit_qualification .recruit_qualification_text {
		width: 100%;
	}
	.recruit_qualification .recruit_qualification_text .common_ttl {
		margin-bottom: 20px;
	}
	.recruit_qualification .recruit_qualification_text .common_ttl span {
		font-size: 2rem;
	}
	.recruit_qualification .recruit_qualification_text .common_ttl + p {
		font-size: 1.6rem;
	}
	.recruit_qualification .recruit_qualification_image {
		justify-content: center;
		width: 100%;
		margin-top: 30px;
	}
	.recruit_qualification .recruit_qualification_image li {
		width: 100px;
		max-width: calc(25% - 20px);
	}
	.recruit_qualification .recruit_qualification_list {
		justify-content: space-between;
		margin-top: 35px;
		padding: 20px 4%;
	}
	.recruit_qualification .recruit_qualification_list .rectangle_list .rectangle_list_item {
		font-size: 1.3rem;
	}
}
@media (max-width: 767px) {
	.recruit_qualification {
		padding: 35px 4%;
	}
	.recruit_qualification .recruit_qualification_text .common_ttl {
		margin-bottom: 15px;
	}
	.recruit_qualification .recruit_qualification_text .common_ttl span {
		font-size: 1.5rem;
		letter-spacing: 0;
	}
	.recruit_qualification .recruit_qualification_text .common_ttl + p {
		font-size: 1.3rem;
		font-weight: 500;
		letter-spacing: 0.05em;
		text-align: justify;
	}
	.recruit_qualification .recruit_qualification_text .common_ttl + p br {
		display: none;
	}
	.recruit_qualification .recruit_qualification_image {
		margin-top: 25px;
	}
	.recruit_qualification .recruit_qualification_image li {
		width: 70px;
		max-width: calc(25% - 10px);
	}
	.recruit_qualification .recruit_qualification_image li:not(:first-of-type) {
		margin-left: 10px;
	}
	.recruit_qualification .recruit_qualification_list {
		padding: 20px 12%;
	}
	.recruit_qualification .recruit_qualification_list .rectangle_list {
		width: 100%;
		margin-top: 0.25em;
	}
	.recruit_qualification .recruit_qualification_list .rectangle_list .rectangle_list_item {
		font-size: 1.2rem;
	}
	.recruit_qualification .recruit_qualification_list .rectangle_list .rectangle_list_item:not(:first-of-type) {
		margin-top: 0.25em;
	}
}

/*------------------------------------------------

		recruit_requirements

------------------------------------------------*/

.inquiry_form_wrap + .recruit_requirements {
	margin-top: -140px;
	margin-bottom: 190px;
}
main + .recruit_requirements {
	margin-bottom: 190px;
}
.recruit_requirements + .recruit_requirements {
	margin-bottom: 190px;
}
.recruit_requirements {
	padding: 0 4%;
}
.inquiry_tel + .recruit_requirements .recruit_requirements_inner {
	margin: 40px auto 0;
}
.recruit_requirements_inner {
	max-width: 1620px;
	margin: 90px auto 0;
}
.recruit_requirements .recruit_requirements_point {
	margin: 50px auto 40px;
}
.recruit_requirements .recruit_requirements_point .recruit_requirements_point_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.recruit_requirements .recruit_requirements_point .recruit_requirements_point_list .recruit_requirements_point_list_item {
	align-items: center;
	color: #2a449a;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	font-size: 2.2rem;
	font-weight: 700;
	letter-spacing: 0;
	justify-content: flex-end;
	width: 300px;
	max-width: calc(25% - 40px);
	margin: 0;
}
.recruit_requirements .recruit_requirements_point .recruit_requirements_point_list .recruit_requirements_point_list_item p + p {
	margin-top: 15px;
}
.recruit_requirements .exsample_indent {
	padding-left: 5.53em;
	text-indent: -5.53em;
}
.recruit_requirements .recruit_requirements_message {
	background: #382857;
	clip-path: polygon(0 0,100% 0,100% calc(100% - 40px),calc(100% - 40px) 100%, 0 100%);
}
.recruit_requirements .recruit_requirements_message .recruit_requirements_message_bg {
	background: #fff;
	clip-path: polygon(3px 3px,calc(100% - 3px) 3px,calc(100% - 3px) calc(100% - 42px),calc(100% - 42px) calc(100% - 3px), 3px calc(100% - 3px));
	padding: 60px 4%;
}
.recruit_requirements .recruit_requirements_message .recruit_requirements_message_inner {
	max-width: 1120px;
	margin: 0 auto;
}
.recruit_requirements .recruit_requirements_message .recruit_requirements_message_inner.officer {
	max-width: 100%;
	margin: 0 450px 0 40px;
}
.recruit_requirements .recruit_requirements_message .recruit_officer_image {
	position: absolute;
	right: 100px;
	width: 340px;
	clip-path: polygon(0 0,100% 0,100% calc(100% - 45px),calc(100% - 45px) 100%, 0 100%);
}
.recruit_requirements .recruit_requirements_message .recruit_requirements_message_ttl {
	font-size: 2rem;
	font-weight: 700;
	margin-bottom: 1em;
}
.recruit_requirements .recruit_requirements_message p:last-of-type {
	margin-top: 1em;
}
.recruit_requirements .recruit_requirements_message p:last-of-type a {
	color: #2a449a;
	display: inline-flex;
	padding: 1px 0;
	position: relative;
}
.recruit_requirements .recruit_requirements_message p:last-of-type a::before {
	background: #2a449a;
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	transform: scaleX(1);
	transform-origin: left center;
	transition: transform 0.5s cubic-bezier(0, 0, 0.25, 1) 0s;
	position: absolute;
	bottom: 0;
	left: 0;
}
.recruit_requirements .recruit_requirements_message p:last-of-type a:hover::before {
	transform: scaleX(0);
	transform-origin: right center;
}
.recruit_requirements .definition_list .definition_list_item > dd p strong ,
.recruit_requirements .definition_list .definition_list_item > dd li strong {
    background: #ffffab;
    padding: 0 3px;
}
.recruit_requirements .recruit_requirements_entry {
	width: 90%;
	max-width: 400px;
	margin: 60px auto 130px;
}
.recruit_requirements .recruit_requirements_entry a {
	align-items: center;
	background: #a50707;
	color: #fff;
	clip-path: polygon(0 0,100% 0,100% calc(100% - 30px),calc(100% - 30px) 100%, 0 100%);
	display: flex;
	font-size: 2rem;
	font-weight: 700;
	flex-wrap: wrap;
	justify-content: center;
	padding: 20px;
	position: relative;
}
.recruit_requirements .recruit_requirements_entry a::before {
	background: #f00;
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	transform: scaleX(0);
	transform-origin: right center;
	transition: transform 0.5s cubic-bezier(0, 0, 0.25, 1) 0s;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 0;
}
.recruit_requirements .recruit_requirements_entry a:hover::before {
	transform: scaleX(1);
	transform-origin: left center;
}
.recruit_requirements .recruit_requirements_entry a span {
	margin: 0 15px;
	position: relative;
	z-index: 1;
}
.recruit_requirements .recruit_requirements_entry a i {
	display: block;
	padding-right: 7px;
	overflow: hidden;
}
.recruit_requirements .recruit_requirements_entry a i::before {
	background: url(../img/icn_arrow_right_white.svg) right top / contain no-repeat;
	content: "";
	display: block;
	width: 38px;
	height: 12px;
}
.recruit_requirements .recruit_requirements_entry a:hover i::before {
	animation: arrowAnime 0.5s cubic-bezier(.445, .05, .65, .85) 0s forwards normal;
}
@media (max-width: 959px) {
	.recruit_requirements_inner {
		margin: 60px auto 90px;
	}
	.recruit_requirements .recruit_requirements_point {
		margin: 25px auto;
	}
	.recruit_requirements .recruit_requirements_point .recruit_requirements_point_list .recruit_requirements_point_list_item {
		font-size: 1.4rem;
		width: 150px;
		max-width: calc(25% - 30px);
		margin: 0 15px;
	}
	.recruit_requirements .recruit_requirements_point .recruit_requirements_point_list .recruit_requirements_point_list_item img {
		display: block;
		zoom: 0.75;
	}
	.recruit_requirements .recruit_requirements_point .recruit_requirements_point_list .recruit_requirements_point_list_item p + p {
		margin-top: 10px;
	}
	.recruit_requirements .recruit_requirements_point .recruit_requirements_point_list .recruit_requirements_point_list_item p + p span {
		display: block;
	}
	.recruit_requirements .recruit_requirements_message {
		background: #382857;
		clip-path: polygon(0 0,100% 0,100% calc(100% - 30px),calc(100% - 30px) 100%, 0 100%);
	}
	.recruit_requirements .recruit_requirements_message .recruit_requirements_message_bg {
		background: #fff;
		clip-path: polygon(3px 3px,calc(100% - 3px) 3px,calc(100% - 3px) calc(100% - 32px),calc(100% - 32px) calc(100% - 3px), 3px calc(100% - 3px));
		padding: 40px 8%;
	}
	.recruit_requirements .recruit_requirements_message .recruit_requirements_message_inner.officer {
		max-width: 100%;
		margin: 0 auto;
	}
	.recruit_requirements .recruit_requirements_message .recruit_officer_image {
		position:static;
		max-width: 150px;
		margin: 0 auto 10px;
		clip-path: polygon(0 0,100% 0,100% calc(100% - 20px),calc(100% - 20px) 100%, 0 100%);
	}
	.recruit_requirements .recruit_requirements_message .recruit_requirements_message_ttl {
		font-size: 1.6rem;
		margin-bottom: 15px;
	}
	.recruit_requirements .recruit_requirements_entry {
		margin: 40px auto 0;
	}
	.recruit_requirements .recruit_requirements_entry a {
		font-size: 1.6rem;
		padding: 15px;
	}
}
@media (max-width: 767px) {
	.inquiry_form_wrap + .recruit_requirements {
		margin-top: -20px;
		margin-bottom: 50px;
	}
	main + .recruit_requirements {
		margin-bottom: 50px;
	}
	.recruit_requirements + .recruit_requirements {
		margin-bottom: 50px;
	}
	.recruit_requirements_inner {
		margin: 35px auto 50px;
	}
	.inquiry_tel + .recruit_requirements .recruit_requirements_inner {
		margin: 0 auto 0;
	}
	.recruit_requirements .recruit_requirements_point {
		margin-top: 30px;
	}
	.recruit_requirements .recruit_requirements_point .recruit_requirements_point_list .recruit_requirements_point_list_item {
		font-size: 1.2rem;
		width: 35%;
		max-width: unset;
		margin: 15px 10px 0;
	}
	.recruit_requirements .recruit_requirements_point .recruit_requirements_point_list .recruit_requirements_point_list_item img {
		zoom: 0.5;
	}
	.recruit_requirements .recruit_requirements_message {
		background: #382857;
		clip-path: polygon(0 0,100% 0,100% calc(100% - 20px),calc(100% - 20px) 100%, 0 100%);
	}
	.recruit_requirements .recruit_requirements_message .recruit_requirements_message_bg {
		clip-path: polygon(2px 2px,calc(100% - 2px) 2px,calc(100% - 2px) calc(100% - 21px),calc(100% - 21px) calc(100% - 2px), 2px calc(100% - 2px));
		padding: 20px 5%;
	}
	.recruit_requirements .recruit_requirements_message .recruit_requirements_message_ttl {
		font-size: 1.3rem;
	}
	.recruit_requirements .recruit_requirements_message p:last-of-type {
		margin-top: 0.5em;
	}
	.recruit_requirements .recruit_requirements_entry {
		max-width: 68%;
		margin: 35px auto 0;
	}
	.recruit_requirements .recruit_requirements_entry a {
		clip-path: polygon(0 0,100% 0,100% calc(100% - 15px),calc(100% - 15px) 100%, 0 100%);
		font-size: 1.2rem;
		padding: 15px;
	}
	.recruit_requirements .recruit_requirements_entry a span {
		margin: 0 5px;
	}
	.recruit_requirements .recruit_requirements_entry a i::before {
		width: 19px;
		height: 6px;
	}
}
/*------------------------------------------------

		recruit_movie

------------------------------------------------*/
.recruit_movie {
	padding: 50px 4% 80px;
	text-align: center;
	position: relative;
	z-index: 1;
}

.recruit_movie .recruit_movie_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 2.08333333vw 2.75%;
}
.recruit_movie .recruit_movie_list li {
	width: 45%;
	position: relative;
}
.recruit_movie .recruit_movie_list li:not(:first-of-type) {
	margin-left: 0;
}
.recruit_movie .recruit_movie_list li iframe {
	width: 100%;
	height: 100%;
	aspect-ratio: 16 / 9;
}
@media (max-width: 959px) {
	.flow_list {
		margin-bottom: 150px;
	}
	.flow_list::before {
		width: 35px;
	}
	.recruit_movie {
		padding: 0px 4% 20px;
	}
	.recruit_movie:last-of-type {
		padding: 40px 4%;
	}
	.recruit_movie:not(:first-of-type) {
		margin-top: 60px;
	}
	.recruit_movie h3 {
		font-size: 2.6rem;
	}
	.recruit_movie p {
		font-size: 1.4rem;
		letter-spacing: 0;
	}
	.recruit_movie h3 + p {
		margin-top: 15px;
	}
	.recruit_movie .recruit_movie_list {
		margin-top: 45px;
	}
}
@media (max-width: 767px) {
	.recruit_movie {
		padding: 0 4% 20px;
	}
	.recruit_movie:last-of-type {
		padding: 0 4%;
	}
	.recruit_movie:not(:first-of-type) {
		margin-top: 0;
	}
	.recruit_movie .recruit_movie_list {
		margin-top: 15px;
		gap: 15px;
	}
	.recruit_movie .recruit_movie_list li {
		width: 100%;
		margin-top: 0;
	}
	.recruit_movie .recruit_movie_list li:not(:first-of-type) {
		margin-left: 0;
	}
}


/*------------------------------------------------

		recruit_menu

------------------------------------------------*/
.recruit_menu {
	padding: 0 4%;
}
.recruit_menu_inner {
	max-width: 1620px;
	margin: 110px auto 70px;
}
.recruit_menu .recruit_menu_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.recruit_menu .recruit_menu_list .recruit_menu_list_item {
	width: 31.48%;
}

.recruit_menu .recruit_menu_list .recruit_menu_list_item:nth-of-type(4n) ,
.recruit_menu .recruit_menu_list .recruit_menu_list_item:nth-of-type(5n) ,
.recruit_menu .recruit_menu_list .recruit_menu_list_item:nth-of-type(6n) ,
.recruit_menu .recruit_menu_list .recruit_menu_list_item:nth-of-type(7n) {
	margin-top: 35px;
}

.recruit_menu .recruit_menu_list .recruit_menu_list_item a {
	background: #f1eee3;
	clip-path: polygon(0 0,100% 0,100% calc(100% - 40px),calc(100% - 40px) 100%, 0 100%);
	display: block;
	height: 100%;
	position: relative;
}
.recruit_menu .recruit_menu_list .recruit_menu_list_item a:hover {
	color: #fff;
}
.recruit_menu .recruit_menu_list .recruit_menu_list_item a::before {
	background: #382857;
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	transform: scaleX(0);
	transform-origin: right center;
	transition: transform 0.5s cubic-bezier(0, 0, 0.25, 1) 0s;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 0;
}
.recruit_menu .recruit_menu_list .recruit_menu_list_item a:hover::before {
	transform: scaleX(1);
	transform-origin: left center;
}
.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_slider {
	background: #fff url(../img/ajax-loader.gif) center / auto no-repeat;
	clip-path: polygon(0 0,100% 0,100% calc(100% - 40px),calc(100% - 40px) 100%, 0 100%);
}
.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_slider.slick-initialized {
	background: #fff;
}
.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_slider li:not(:first-of-type) {
	display: none;
}
.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_slider.slick-initialized li:not(:first-of-type) {
	display: block;
}
.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_slider figure {
	width: 100%;
	height: 0;
	padding-top: 70%;
	position: relative;
	overflow: hidden;
}
.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_slider figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}
.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_text {
	padding: 30px 40px 70px;
}
.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_text .common_ttl {
	font-size: 3rem;
	margin-bottom: 15px;
	transition: all 0.5s cubic-bezier(0, 0, 0.25, 1) 0s;
}
.recruit_menu .recruit_menu_list .recruit_menu_list_item a:hover .recruit_menu_list_item_text .common_ttl {
	color: #fff;
}
.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_text .common_ttl::before {
	transition: all 0.5s cubic-bezier(0, 0, 0.25, 1) 0s;
}
.recruit_menu .recruit_menu_list .recruit_menu_list_item a:hover .recruit_menu_list_item_text .common_ttl::before {
	background: #fff;
}
.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_text .common_ttl + p {
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.8;
	text-align: justify;
	position: relative;
	z-index: 1;
}
.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_text .recruit_menu_list_item_arrow i {
	display: block;
	padding-right: 7px;
	overflow: hidden;
	position: absolute;
	bottom: 30px;
	right: 90px;
}
.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_text .recruit_menu_list_item_arrow i::before {
	background: url(../img/icn_arrow_right.svg) right top / contain no-repeat;
	content: "";
	display: block;
	width: 60px;
	height: 19px;
}
.recruit_menu .recruit_menu_list .recruit_menu_list_item a:hover .recruit_menu_list_item_text .recruit_menu_list_item_arrow i::before {
	animation: arrowAnime 0.5s cubic-bezier(.445, .05, .65, .85) 0.3s forwards normal;
	background: url(../img/icn_arrow_right_white.svg) right top / contain no-repeat;
}
@media (max-width: 959px) {
	.recruit_menu_inner {
		margin: 60px auto 40px;
	}
	.recruit_menu .recruit_menu_list .recruit_menu_list_item:nth-of-type(4n) ,
	.recruit_menu .recruit_menu_list .recruit_menu_list_item:nth-of-type(5n) ,
	.recruit_menu .recruit_menu_list .recruit_menu_list_item:nth-of-type(6n) {
		margin-top: 35px;
	}
	.recruit_menu .recruit_menu_list .recruit_menu_list_item a {
		clip-path: polygon(0 0,100% 0,100% calc(100% - 30px),calc(100% - 30px) 100%, 0 100%);
	}
	.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_slider {
		clip-path: polygon(0 0,100% 0,100% calc(100% - 30px),calc(100% - 30px) 100%, 0 100%);
	}
	.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_text {
		padding: 20px 20px 50px;
	}
	.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_text .common_ttl {
		font-size: 2rem;
		margin-bottom: 10px;
	}
	.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_text .common_ttl + p {
		font-size: 1.3rem;
	}
	.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_text .recruit_menu_list_item_arrow i {
		bottom: 5%;
		right: 15%;
	}
	.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_text .recruit_menu_list_item_arrow i::before {
		width: 38px;
		height: 12px;
	}
}
@media (max-width: 767px) {
	.recruit_menu_inner {
		margin: 35px auto;
	}
	.recruit_menu .recruit_menu_list .recruit_menu_list_item {
		width: 100%;
	}
	.recruit_menu .recruit_menu_list .recruit_menu_list_item:not(:first-of-type) {
		margin-top: 35px;
	}
	.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_slider {
		background-size: 16px;
	}
	.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_text {
		padding: 20px 8% 55px;
	}
	.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_text .common_ttl {
		font-size: 1.8rem;
	}
	.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_text .common_ttl + p {
		font-size: 1.2rem;
	}
	.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_text .recruit_menu_list_item_arrow i {
		right: 10%;
	}
	.recruit_menu .recruit_menu_list .recruit_menu_list_item .recruit_menu_list_item_text .recruit_menu_list_item_arrow i::before {
		width: 30px;
		height: 10px;
	}
}
/*------------------------------------------------

		recruit_tour

------------------------------------------------*/
.tour_point .tour_point_list .tour_point_list_item {
	color: #fff;
	padding: 90px 4% 100px;
}
.tour_point .tour_point_list .tour_point_list_item.is_01 {
	background: linear-gradient(90deg, #382857 0%, #180b33 100%);
}
.tour_point .tour_point_list .tour_point_list_item.is_02 {
	background: linear-gradient(90deg, #2a449a 0%, #15224d 100%);
}
.tour_point .tour_point_list .tour_point_list_item.is_03 {
	background: linear-gradient(90deg, #4181c4 0%, #214162 100%);
}
.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_inner {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 1620px;
	margin: 0 auto;
}
.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_slider {
	background: #fff url(../img/ajax-loader.gif) center / auto no-repeat;
	clip-path: polygon(0 0,100% 0,100% calc(100% - 90px),calc(100% - 90px) 100%, 0 100%);
	width: 50%;
}
.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_slider.slick-initialized {
	background: #fff;
}
.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_slider li:not(:first-of-type) {
	display: none;
}
.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_slider.slick-initialized li:not(:first-of-type) {
	display: block;
}
.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_slider figure {
	width: 100%;
	height: 0;
	padding-top: 70%;
	position: relative;
	overflow: hidden;
}
.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_slider figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}
.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_text {
	width: 44.4444%;
	text-align: justify;
}
.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_text h3 {
	font-size: 3.4rem;
	font-weight: 900;
	margin-bottom: 25px;
}
.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_text h3::before {
	content: '◆';
	display: inline-block;
	margin-right: 0.5em;
}
.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_text p + p {
	margin-top: 45px;
}
@media (max-width: 959px) {
	.tour_point .tour_point_list .tour_point_list_item {
		padding: 60px 4% 75px;
	}
	.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_inner {
		align-items: flex-start;
	}
	.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_slider {
		clip-path: polygon(0 0,100% 0,100% calc(100% - 60px),calc(100% - 60px) 100%, 0 100%);
	}
	.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_text {
		font-size: 1.4rem;
	}
	.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_text h3 {
		font-size: 2rem;
		margin-bottom: 10px;
	}
	.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_text p + p {
		margin-top: 30px;
	}
}
@media (max-width: 767px) {
	.tour_point .tour_point_list .tour_point_list_item {
		padding: 30px 4% 35px;
	}
	.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_inner {
		align-items: flex-start;
		flex-direction: column-reverse;
	}
	.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_slider {
		clip-path: polygon(0 0,100% 0,100% calc(100% - 45px),calc(100% - 45px) 100%, 0 100%);
		width: 100%;
		margin-top: 30px;
	}
	.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_text {
		font-size: 1.2rem;
		width: 100%;
	}
	.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_text h3 {
		font-size: 1.8rem;
		margin-bottom: 10px;
	}
	.tour_point .tour_point_list .tour_point_list_item .tour_point_list_item_text p + p {
		max-width: 210px;
		margin: 20px auto 0;
	}
}




