/* 採用ボタン */
#Recruitment_btn{
	display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    right: 70px;
    bottom: 60px;
    width: 150px;
    height: 150px;
    line-height: 1.4;
    background-color: #153677;
    border-radius: 50%;
    color: #fff !important;
    text-align: center;
    font-weight: bold;
    border: 5px solid #fff;
    font-size: 1.2rem;
    box-shadow: 2px 2px 4px gray;
    z-index: 999;
}
#Recruitment_btn:hover {
    opacity: 0.7;
}cruit_content {
	overflow: hidden;
}
.rec_main_txt{
	font-size: 4.2rem;
	line-height: 1.4;
	color: #fff;
	text-shadow: 0 0 10px rgba(0,0,0,0.5);
	width: 100%;
	position: absolute;
	bottom: 10%;
	left: 0;
}

.rec_pagenav{
	padding: 40px 0 30px;
}

.rec_pagenav_ul{
	display: flex;
}

.rec_pagenav_ul li{
	list-style: none;
	font-weight: bold;
	font-size: 1.2rem;
	margin-right: 60px;
}

.rec_pagenav_ul li:hover{
	color: #28568E;
	transition: 0.3s;
}

.rec_pagenav_ul li::after{
    content: '';
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 2px 10px;
    width: 15px;
    height: 9px;
    background: #d2232a;
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
}

.rec01{
	padding: 120px 0;
}
.rec_ttl_wrap{
	padding: 0 20px;
	overflow: hidden;
}
.rec_sub{
	font-size: 1.2rem;
}
.rec_copy_wrap{
	position: relative;
	padding-bottom: 90px;
}
.rec_ttl_en{
	font-size: 10.5rem;
	line-height: 1;
	color: #fbefef;
	position: absolute;
	bottom: 0;
	left: 5%;
	width: 1800px;
}
.rec_copy{
	font-size: 2.9rem;
	line-height: 1.4;
	position: relative;
	z-index: 2;
}
.rec01_wrap{
	padding: 100px 3vw 100px 6vw;
	position: relative;
	gap: 90px 5%;
	color: #fff;
}
.rec01_wrap::after{
	content: "";
	display: block;
	width: calc(100% - 10vw);
	height: 100%;
	border-radius: 0 20px 20px 0;
	background: #d2232a;
	position: absolute;
	left: 0;
	top: 0;
}
.rec01_box_a{
	position: relative;
	z-index: 10;
	width: 30%;
	line-height: 2.2;
}
.rec01_box_b{
	position: relative;
	z-index: 10;
	width: 65%;
}
.rec01_img{
	position: relative;
}
.rec_sign01{
	position: absolute;
	bottom: -70px;
	left: 10%;
	max-width: 70%;
}

.rec02{
	padding: 80px 0 120px;
	background: #fbefef;
}
.rec_ttl_en02{
	color: #f6dbdb;
}
.rec02_wrap{
	padding-top: 80px;
	flex-wrap: wrap;
	gap: 3px;
	color: #fff;
	position: relative;
}
.rec02_box{
	width: calc((100% - 9px) / 4);
	position: relative;
}
.rec02_box::after{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: rgba(40,87,145,0.35);
	position: absolute;
	left: 0;
	top: 0;
	transition: 0.3s ease-in-out;
}
.rec02_num{
	position: absolute;
	left: 10px;
	top: 10px;
	z-index: 10;
	font-size: 6rem;
	line-height: 1;
}
.rec02_ttl{
	position: absolute;
	right: 10px;
	bottom: 5px;
	z-index: 10;
	font-size: 1.5rem;
}
.rec02_img {
	overflow: hidden;
}
.rec02_img img{
	transition: 0.3s ease-in-out;
}
.rec_sign02{
	position: absolute;
	left: 10%;
	top: 0;
	z-index: 15;
}
.rec02_txt_wrap{
	padding: 40px 10% 0;
}
a.rec_link_btn{
	background: #d2232a;
	padding: 15px 100px 15px 30px;
}
.rec_link_btn::after {
    content: url(../images/recruit/rec_btn_arrow_w.png);
    position: absolute;
    right: 20px;
    top: 14px;
}

.rec03{
	padding: 120px 0;
}
.rec03_container{
	padding-left: 8vw;
}
.rec03_inner{
	background: #d2232a;
	border-radius: 20px 0 0 20px;
	padding: 100px 8vw 100px 8vw;
	position: relative;
}
.rec03_wrap{
	flex-wrap: wrap;
	gap: 40px 20px;
}
.rec03_box{
	width: calc(50% - 10px);

}
.rec03_img{
	display: block;
	position: relative;
	overflow: hidden;
}
.rec03_img img{
	transition: 0.3s ease-in-out;
}
.rec03_name_wrap{
	background: #fae9e9;
	padding: 15px 30px;
	width: 270px;
	position: absolute;
	right: 0;
	bottom: 0;
	transition: 0.3s ease-in-out;
}
.rec03_name_wrap::after{
	content: url(../images/recruit/rec_btn_arrow_r.png);
    position: absolute;
    right: 20px;
    top: calc(50% - 10px);
}
.rec03_job{
	font-size: 0.8rem;
	line-height: 1.3;
}
.rec03_name{
	font-size: 1.5rem;
	line-height: 1.4;
}
.rec03_txt{
	color: #fff;
	font-size: 1.25rem;
	margin-top: 10px;
}
.rec_sign03{
	position: absolute;
	right: 8vw;
	top: 40px;
}
.rec03_btn_wrap{
	margin-top: 50px;
}
a.rec03_link_btn{
	color: #d2232a;
	background: #fff;
	padding: 15px 100px 15px 30px;
}
.rec03_link_btn::after {
    content: url(../images/recruit/rec_btn_arrow_r.png);
    position: absolute;
    right: 20px;
    top: 14px;
}
.rec03_movie_container{
	margin-top: 80px;
}
.rec_sign04{
	margin-left: -40px;
}
.rec03_movie_wrap{
	margin-top: 10px;
	gap: 20px;
	flex-wrap: wrap;
	justify-content: start;
}
.rec04{
	gap: 40px;
	padding-bottom: 200px;
}
.rec04_box{
	width:calc(50% - 20px);
}
.rec04_box_a{
	background: #fae9e9;
	padding: 90px 0 50px 0;
	border-radius: 0 20px 20px 0;
}
.rec04_box_b{
	background: #d2232a;
	color: #fff;
	padding: 90px 0 50px 0;
	border-radius: 20px 0 0 20px;
	transform: translateY(90px);
}
.rec04_box_inner{
	overflow: hidden;
}
.rec04_box_a .rec04_box_inner{
	padding-right: 40px;
}
.rec04_box_b .rec04_box_inner{
	padding-left: 40px;
}
.rec04_copy_wrap{
	padding-bottom: 200px;
}
.rec04_copy_wrap_b{
	padding-bottom: 285px;
}
.rec04_box_a .rec04_copy_wrap ,
.rec04_box_a .rec_sub{
	padding-left: 20px;
}
.rec04_copy_wrap .rec_ttl_en{
	font-size: 6rem;
}
.rec04_box_b .rec_copy{
	color: #313131;
}
.rec04_img{
	margin-top: 80px;
	position: relative;
}
.rec04_img_a{
	padding-right: 50px;
}
.rec04_img_b{
	padding-left: 50px;
}
.rec_img03{
	margin: 0 0 0 auto;
}
.rec_sign05{
	position: absolute;
	top: -30px;
	left: 10%;
	max-width: 70%;
}
.rec_sign06{
	position: absolute;
	top: -30px;
	right: 10%;
	max-width: 70%;
}
.rec04_txt_a{
	padding: 40px 0 0 50px;
}
.rec04_txt_b{
	font-size: 1.5rem;
	padding: 40px 40px 0;
}
.rec04_btn_wrap{
	margin-top: 30px;
}
.rec04_box_a .rec04_btn_wrap{
	padding-left: 40px;
}

.rec05{
	padding: 120px 20px 0px;
	overflow: hidden;
}
.rec_news_container{
	margin-top: 60px;
}
.rec_news_inner{
	padding: 0 20px;
}

.rec06{
	background: #fae9e9;
	padding: 120px 20px;
}
.rec06_ttl_en{
	position: static;
	color: #d2232a;
	width: 100%;
}
.rec06_wrap{
	margin-top: 40px;
	gap: 40px;
	justify-content: center;
	flex-wrap: wrap;
}
a.rec06_btn{
	color: #d2232a;
	max-width: 400px;
	width: calc((100% - 80px) / 3);
	height: 120px;
	border: solid 4px #d2232a;
	border-radius: 20px;
	font-size: 2.3rem;
	line-height: 1.2;
	flex-flow: column;
	transition: 0.3s ease-in-out;
}
a.rec06_btn_b{
	background: #d2232a;
	color: #fff;
}
.rec06_btn span{
	line-height: 1.4;
}
.rec06_btn .modal_btn_arrow{
	font-size: 0.9rem;
}

@media only screen and (min-width:1025px) {
	.rec02_box:hover::after{
		background: rgba(40,87,145,0.5);
	}
	.rec02_box:hover .rec02_img img,
	.rec03_img:hover img{
		transform: scale(1.05);
	}
	.rec03_img:hover .rec03_name_wrap{
		opacity: 0.8;
	}
	a.rec06_btn:hover{
		background: #d2232a;
		color: #fff;
	}
	a.rec06_btn_b:hover{
		background: #fff;
		color: #d2232a;
	}
}

@media only screen and (max-width:1024px) {
	#Recruitment_btn{
		display: none;
	}
	.rec_main_txt{
		font-size: 1.8rem;
		bottom: 45%;
	}

	.rec01{
		padding: 0;
	}
	.rec_copy_wrap{
		padding-bottom: 55px;
	}
	.rec_sub{
		font-size: 0.9rem;
	}
	.rec_copy{
		font-size: 1.3rem;
	}
	.rec_ttl_en {
		font-size: 5rem;
	}
	.rec01_wrap{
		flex-wrap: wrap;
		padding: 30px 0 50px 20px;
		gap: 40px;
	}
	.rec01_box_a{
		width: 100%;
		font-size: 0.9rem;
		line-height: 1.8;
		padding-right: 30px;
	}
	.rec01_box_b{
		width: calc(100% - 10px);
	}
	.rec_sign01{
		bottom: -15px;
	}
	.rec01_wrap::after{
		width: calc(100% - 20px);
	}
	.rec01_btn_wrap {
		position: relative;
		z-index: 1;
		width: 100%;
		padding-right: 40px;
	}

	.rec02{
		padding: 50px 0 80px;
	}
	.rec02_wrap{
		gap: 1px;
		padding-top: 50px;
	}
	.rec02_box{
		width: calc((100% - 1px) / 2);
	}
	.rec02_num {
		font-size: 3rem;
	}
	.rec02_ttl{
		font-size: 1rem;
	}
	.rec_sign02{
		left: 20px;
		width: 180px;
	}
	.rec02_txt_wrap{
		padding: 20px 20px 0;
		flex-wrap: wrap;
		gap: 30px;
	}
	.rec02_btn_wrap{
		width: 100%;
		text-align: center;
	}
	.rec02_txt{
		font-size: 0.9rem;
	}

	.rec03{
		padding: 50px 0 80px;
	}
	.rec03_container{
		padding-left: 20px;
	}
	.rec03_inner{
		padding: 80px 20px;
	}
	.rec03_wrap{
		justify-content: center;
	}
	.rec03_box{
		width: 100%;
		max-width: 595px;
	}
	.rec03_name_wrap{
		width: 180px;
		padding: 10px 30px 10px 10px;
	}
	.rec03_job{
		font-size: 0.6rem;
	}
	.rec03_name{
		font-size: 1rem;
	}
	.rec03_txt{
		font-size: 1rem;
	}
	.rec_sign03{
		right: 1vw;
		max-width: 60%;
		top: 20px;
	}
	.rec03_btn_wrap{
		text-align: center;
	}
	.rec03_movie_container{
		margin-top: 50px;
		padding: 0 20px;
	}
	.rec_sign04{
		margin: 0;
		width: 200px;
	}
	.rec03_movie_wrap{
		flex-wrap: wrap;
		justify-content: center;
		margin: 0;
	}
	.rec03_movie_box_a{
		padding-left: 10%;
	}
	.rec03_movie_box_b{
		padding-right: 10%;
	}

	.rec04{
		flex-wrap: wrap;
		justify-content: center;
		overflow: hidden;
		padding-bottom: 50px;
	}
	.rec04_box{
		width: calc(100% - 40px);
	}
	.rec04_box_a,.rec04_box_b{
		padding: 50px 0;
		border-radius: 20px;
	}
	.rec04_box_b{
		transform: translateY(0);
	}
	.rec04_box_a .rec04_box_inner,
	.rec04_box_b .rec04_box_inner{
		padding: 0 20px;
	}
	.rec04_copy_wrap{
		padding-bottom: 130px;
	}
	.rec04_copy_wrap_b{
		padding-bottom: 150px;
	}
	.rec04_copy_wrap .rec_ttl_en{
		font-size: 4rem;
		left: 0;
	}
	.rec04_copy_wrap_b .rec_ttl_en{
		font-size: 3rem;
	}
	.rec04_img{
		margin-top: 50px;
	}
	.rec04_img_a{
		padding-right: 20px;
		margin-left: -40px;
	}
	.rec04_img_b{
		padding-left: 20px;
		margin-right: -40px;
	}
	.rec04_txt_a{
		padding: 30px 0 0;
	}
	.rec04_txt_b{
		padding: 30px 0 0;
		font-size: 1rem;
	}
	.rec04_box_a .rec04_btn_wrap,.rec04_btn_wrap{
		padding: 0;
		text-align: center;
	}

	.rec05{
		padding: 50px 0 80px;
		overflow: hidden;
	}
	.rec_news_container{
		margin-top: 20px;
	}

	.rec06{
		padding: 50px 20px 80px;
	}
	.rec06_ttl_en{
		width: 100%;
		font-size: 4rem;
	}
	.rec06_wrap{
		gap: 20px;
		margin-top: 20px;
	}
	a.rec06_btn{
		width: calc((100% - 20px) / 2);
		height: auto;
		font-size: 1.2rem;
		padding: 15px 0;
	}
	a.rec06_btn_big{
		width: 100%;
		max-width: 100%;
	}
	.rec06_btn .modal_btn_arrow{
		font-size: 0.7rem;
	}
}

/* 会社を知る */
.rec_top{
	padding: 150px 20px 0;
	overflow: hidden;
}
.rec_com01_content{
	padding: 50px 0;
	background: #d2232a;
}
.rec_com01_wrap{
	padding: 50px 20px;
	background-image: url(../images/recruit_company/rec_com_img01.jpg);
	background-size: cover;
	background-position: top right 27%;
	height: 721px;
}
.exp_wrap{
	background-image: url(../images/recruit_company/rec_com_img02.jpg);	
}
.rec_com01_box{
	width: 60%;
	max-width: 550px;
}
.rec_h2_wrap{
	position: relative;
	/* padding-top: 100px; */
}

.rec_h2_wrap::after{
	content: "";
	display: block;
	width: 7px;
	height: 270px;
	background: #d2232a;
	position: absolute;
	left: -40px;
	top: 0;
}

.rec_h2_en{
	/* position: absolute;
	top: 0; */
	font-size: 5.6rem;
	line-height: 1.1;
	color: rgba(3210,35,42,0.1);
}
.rec_h2{
	font-size: 2.5rem;
	line-height: 1.4;
}
.rec_com01_copy{
	font-size: 1.25rem;
	margin-top: 30px;
}
.rec_com01_p{
	margin-top: 30px;
	font-size: 0.88rem;
	line-height: 2.2;
	background: rgb(255, 255, 255, 0.6);
}
.rec_com01_img_sp{
	display: none;
}

.rec_com02{
	padding: 100px 20px 120px;
}
.rec_com02_wrap{
	margin-top: 80px;
	flex-wrap: wrap;
	gap: 50px;
}
.rec_com02_box{
	border-left: 10px solid #0068b7;
}
.rec_com02_box_a,.rec_com02_box_b{
	padding: 50px 80px;
	width: calc((100% - 50px) / 2);
	border-top: 10px solid #0068b7;
}
.rec_com02_box_c{
	padding: 10px;
	width: calc((100% - 100px) / 3);
}
.rec_com02_num_box{
	position: relative;
}
.rec_com02_box_a .rec_com02_num_box{
	padding-bottom: 30px;
	border-bottom: 3px solid #000;
}
.rec_com02_box_b .rec_com02_num_box{
	padding-bottom: 30px;
	border-bottom: 3px solid #000;
	padding-top: 140px;
}
.rec_com02_box_c .rec_com02_num_box{
	padding-top: 140px;
}
.rec_com_num01{
	position: absolute;
	right: 0;
	top: -89px;
}
.rec_com_num02{
	position: absolute;
	left: -110px;
	top: 0;
	max-width: unset;
}
.rec_com_num03{
	position: absolute;
	left: -50px;
	top: 0;
	max-width: unset;
}
.rec_com02_txt_box{
	margin-top: 30px;
	line-height: 2.2;
}

.rec_com03{
	padding: 0 20px 120px;
	margin-top: 50px;
}

section#profile {
    margin-top: -80px;
    padding-top: 130px;
}

.rec_com04{
	padding: 100px 20px;
	background: #fae9e9;
}
.rec_com04_ttl{
	margin-top: 30px;
}

@media only screen and (max-width:1024px) {
	.rec_top{
		padding: 50px 20px 0;
	}
	.rec_com01{
		padding: 0 20px 50px 0;
	}
	.rec_com01_content{
		padding: 50px 0 ;
		border-radius: 0 20px 20px 0;
		color: #fff;
	}
	.rec_com01_wrap{
		background-image: none;
		padding: 0;
		height: auto;
	}
	.rec_com01_box{
		padding: 0 20px 20px 30px;
		width: 100%;
	}

	.rec_pagenav{
		padding: 0 20px;
	}

	.rec_pagenav_ul{
		display: block;
	}

	.rec_pagenav_ul li{
		font-size: 1.3rem;
		margin-right: 0px;
	}

	.rec_pagenav_ul li::after{
		margin: 0 0 2px 10px;
		width: 15px;
		height: 9px;
	}

	.rec_h2_wrap{
		/* padding-top: 50px; */
	}
	.rec_h2_wrap::after{
		left: -15px;
		width: 4px;
	}
	.rec_com01_box .rec_h2_wrap::after{
		background: #fff;
	}
	.rec_h2_en{
		font-size: 3rem;
	}
	.rec_com01_box .rec_h2_en{
		color: rgba(256,256,256,0.2);
	}
	.rec_h2{
		font-size: 1.3rem;
		position: relative;
		z-index: 10;
	}
	.rec_com01_copy{
		font-size: 1.1rem;
		margin-top: 10px;
	}
	.rec_com01_p{
		margin-top: 30px;
		background: none;
	}
	.rec_com01_img_sp{
		display: block;
	}

	.rec_com02{
		padding: 0 20px 80px 30px;
		margin-top: 0px;
        padding-top: 50px;
	}
	.rec_com02 .rec_h2_wrap{

	}
	.rec_com02_wrap{
		gap: 50px 20px;
	}
	.rec_com02_box_a, .rec_com02_box_b{
		width: 100%;
		max-width: 500px;
		padding: 20px;
	}
	.rec_com02_box_c{
		width: calc((100% - 20px) / 2);
	}
	.rec_com02_box_a .rec_com02_num_box{
		padding-top: 30px;
	}
	.rec_com02_box_b .rec_com02_num_box{
		padding-top: 100px;
	}
	.rec_com02_box_c .rec_com02_num_box{
		padding-top: 70px;
	}
	.rec_com_num01{
		width: 80px;
		top: -47px;
	}
	.rec_com_num02{
		width: 320px;
		left: -48px;
	}
	.rec_com_num03{
		width: 150px;
		left: -32px;
	}
	.rec_com_txt01{
		max-width: 60%;
	}

	.rec_com03{
		padding: 0 20px 80px 30px;
		margin-top: 0px;
        padding-top: 50px;
	}

	.rec_com04{
		padding: 50px 20px 100px 30px;
	}
}

/* シゴトを知る */
.job01{
	padding: 80px 20px;
	background: #fae9e9;
	margin-top: 50px;
}
.job01_wrap{
	position: relative;
	justify-content: start;
	gap: 50px;
}
.job01_box01{
	writing-mode: vertical-rl;
	padding: 0 80px;
	font-size: 2.4rem;
}
.job01_box02{
	width: 380px;
}
.job_list{
	flex-flow: column;
	gap: 40px;
}
.job_list_item a{
	gap: 20px;
	justify-content: start;
	transition: 0.3s ease-in-out;
}
.job_list_num{
	font-size: 5rem;
	line-height: 1.2;
}
.job_list_num span{
	line-height: 1.2;
}
.job_list_name{
	font-size: 2.1rem;
	line-height: 1.3;
}
.job_list_arrow{
	margin-top: 10px;
}
.job_sign01{
	position: absolute;
	left: 0;
	bottom: 0;
	width: 250px;
}

.job_sec{
	padding-bottom: 60px;
}
.job_sec01{
	margin-top: -50px;
}
.job_img_wrap{
	position: relative;
	padding-top: 200px;
}
.job_img_wrap::after{
	content: "";
	display: block;
	width: calc(100vw - 5vw);
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	background-image: url(../images/job/job_img_bk.png);
	background-repeat: no-repeat;
	background-position: top right;
	background-size: cover;
}
.job_img{
	margin-top: -50px;
	position: relative;
	z-index: 10;
}
.job_container{
	padding: 150px 100px 100px 200px;
	position: relative;
	z-index: 10;
}
.management_container{
	padding: 50px 100px 90px 200px;
}
.job_ttl{
	position: absolute;
	left: 0;
	top: -70px;
	padding-bottom: 330px;
	z-index: 20;
}
.job_ttl::after{
	content: "";
	display: block;
	width: 6px;
	height: 300px;
	position: absolute;
	bottom: 0;
	left: calc(50% - 3px);
	background: #d2232a;
}
.job_num{
	font-size: 9rem;
	line-height: 1.1;
}
.job_num span{
	line-height: 1.1;
}
.job_name{
	font-size: 2.4rem;
	line-height: 1.4;
}
.job_txt_p{
	line-height: 2.2;
	font-size: 1.4rem;
}
.job_btn_wrap{
	margin-top: 60px;
}
a.job_btn{
	max-width: 640px;
	display: block;
	width: 100%;
	border-radius: 10px;
	border: solid 5px #d2232a;
	padding: 20px 60px;
	font-size: 1.5rem;
	position: relative;
	transition: 0.3s ease-in-out;
}
.job_btn_arrow{
	position: absolute;
	right: 30px;
	top: 26px;
	padding-right: 40px;
	color: #d2232a;
	font-size: 1rem;
	background-image: url(../images/recruit/rec_btn_arrow_r.png);
	background-repeat: no-repeat;
	background-position: right top 8px;
	transition: 0.3s ease-in-out;
}
.job_btn+.job_btn{
	margin-top: 30px;
}
.job_en{
	font-size: 3rem;
    font-weight: bold;
	color: rgba(0,0,0,0.3);
	writing-mode: vertical-rl;
	position: absolute;
	right: 0;
	bottom: 0;
	line-height: 1.1;
}
.management_container .job_en{
	bottom: 50px;
}
.job_en span{
	line-height: 1.1;
	display: inline-block;
}
.job_sec_b .job_img_wrap{
	padding-top: 170px;
}
.job_sec_b .job_img_wrap::after{
	right: unset;
	left: 0;
}
.job_sec_b .job_ttl{
	left: unset;
	right: -15px;
	top: -180px;
}
.job_sec_b .job_en{
	right: unset;
	left: 0;
}
.job_txt_box_inner {
	gap: 20px;
}
.job_txt_box_inner .job_txt_p{
	flex: 1;
}
.job_img03_b{
	max-width: 360px;
	width: 100%;
}
.job_radius_btn{
	display: flex;
    justify-content: center;
    align-items: center;
	position: fixed;
    right: 70px;
	bottom: 60px;
	width: 150px;
	height: 150px;
	line-height: 1.4;
	background-color: #153677;
	border-radius: 50%;
	color: #fff!important;
	text-align: center;
	font-weight: bold;
	border: 5px solid #fff;
	font-size: 1.2rem;
	box-shadow: 2px 2px 4px gray;
	z-index: 999;
}

.job_radius_btn:hover{
	opacity: 0.7;
}


@media only screen and (min-width:1025px) {
	.job_list_item a:hover{
		color: #d2232a;
	}
	a.job_btn:hover{
		background: #d2232a;
		color: #fff;
	}
	a.job_btn:hover .job_btn_arrow{
		color: #fff;
		background-image: url(../images/recruit/rec_btn_arrow_w.png);
	}
}

@media only screen and (max-width:1024px) {
	.job_top .rec_ttl_en{
		font-size: 4rem;
	}
	.job01{
		margin-top: 20px;
		padding: 50px 20px 80px;
	}
	.job01_wrap{
		flex-wrap: wrap;
		gap: 30px 10px;
	}
	.job01_box01{
		width: 100%;
		writing-mode: horizontal-tb;
		font-size: 1.8rem;
		text-align: center;
		padding: 0;
	}
	.job01_box02{
		width: calc(50% - 5px);
	}
	.job_list_item a{
		gap: 5px;
	}
	.job_list_num{
		font-size: 1.9rem;
		width: 50px;
	}
	.job_list_name{
		font-size: 1.1rem;
		flex:1;
	}
	.job_sign01{
		bottom: -100px;
		width: 200px;
	}

	.job_sec{
		padding-bottom: 60px;
	}
	.safe_sec{
		padding-bottom: 110px;
	}
	.job_sec01{
		margin-top: 10px;
	}
	.job_img_wrap,
	.job_sec_b .job_img_wrap{
		padding-top: 20vw;
	}
	.job_img_wrap::after{
		width: 100%;
	}
	.job_container{
		padding: 140px 20px 50px 90px;
	}
	.job_num{
		font-size: 4rem;
	}
	.job_name {
		font-size: 1.2rem;
	}
	.job_ttl{
		top: -40px;
		padding-bottom: 150px;
	}
	.job_ttl::after{
		height: 140px;
	}
	.job_txt_p{
		line-height: 1.7;
		font-size: 0.9rem;
	}
	.job_btn_wrap{
		margin-top: 40px;
	}
	a.job_btn{
		padding: 10px 20px 40px;
		font-size: 1.2rem;
		line-height: 1.4;
	}
	.job_btn_arrow{
		top: unset;
		bottom: 5px;
		right: 10px;
	}
	.job_en{
		right: unset;
		left: 8px;
		font-size: 2rem;
	}
	.job_sec_b .job_container{
		padding: 20px 90px 50px 20px;
	}
	.job_sec_b .job_ttl{
		top: -100px;
	}
	.job_sec_b .job_en{
		left: unset;
		right: 8px;
	}
	.safe_container .job_en{
		bottom: -110px;
	}
	.job_txt_box_inner {
		flex-wrap: wrap;
	}
	.job_txt_box_inner .job_txt_p{
		flex: none;
		width: 100%;
	}
}

/* 資格取得制度 */
.qua01{
	padding: 150px 20px 100px;
}
.qua01 .rec_ttl_en{
	font-size: 5.5rem;
}
.qua_img01{
	margin-top: 50px;
}
.qua01_txt{
	font-size: 1.5rem;
	margin-top: 30px;
}
.qua02,.qua04{
	padding: 100px 20px;
	background: #d2232a;
}
.qua02 .rec_h2_wrap::after{
	background: #fff;
}
.qua02 .rec_h2{
	color: #fff;
}
.qua02 .rec_h2_en{
	color: rgba(256,256,256,0.2);
}
.qua02_container{
	background: #fff;
	padding: 60px;
	border-radius: 20px;
	margin-top: 60px;
}
.qua02_tab_box{
	margin-top: 50px;
}
.qua02_list{
	flex-wrap: wrap;
	gap: 20px 30px;
	width: 50%;
	font-size: 1.25rem;
	padding-left: 30px;
}
.qua02_li{
	width: calc(50% - 15px);
	list-style: disc;
}
.qua02_ttl{
	font-size: 1.8rem;
	margin-top: 80px;
}
.qua02_txt{
	margin-top: 20px;
	font-size: 1.25rem;
}
/* タブ切り替え */
.qua02_tab_box input[type="radio"]{
  display: none;
}

.qua02_tab_box input[type=radio]:checked + label {
   color: #050100;
   background: #fff;
   padding-bottom: 5px;
   line-height: 52px;
}
.tab{
  width: calc(100% / 6 - 0.5%);
  height: 47px;
  line-height: 47px;
  font-size: 1.4rem;
  text-align: center;
  color: #fff;
  display: block;
  float: left;
  text-align: center;
  transition: all 0.2s ease;
  border-radius: 10px 10px 0 0;
  background-color: rgba(255, 255, 255, 0.5);
  margin: 5px .5% 0 0;
}
.tab:last-child{
	margin-right: 0;
}

.tab_con{
  display: none;
  padding: 1.75rem;
  clear: both;
  overflow: hidden;
  background: #f3f3f3;
}

.tab_con h2{
  font-size: 1.4rem;
  margin: 0 0 .5rem 0;
  padding: 0 0 .5rem 0;
  color: #388dd1;
  border-bottom: 1px solid #ddd;
}

.tab_con p{
  font-size: .9rem;
  margin: 0;
}

#radio1:checked ~ #tb1,
#radio2:checked ~ #tb2,
#radio3:checked ~ #tb3,
#radio4:checked ~ #tb4,
#radio5:checked ~ #tb5,
#radio6:checked ~ #tb6{
  display: block;
}

@media (max-width: 1024px) {
	input[type=radio]:checked + label {
    	width: 75px;
		height: 40px;
        font-size: 0.9rem;
		line-height: 44px;
		margin-top: 0;
	}
	.tab_box {
		transform: scale(0.9);
	}
	.tab{
		font-weight: normal;
        height: 35px;
		line-height: 39px;
        font-size: .7rem;
		border-radius: 5px 5px 0 0;
	}
}

/*アニメーション*/
.tab {
  transition: 0.15s ease-in;
}



.qua03{
	padding: 150px 20px 100px;
}

.qua04 .qua01_txt{
	color: #fff;
}
.qua04_list{
	font-size: 1.25rem;
	padding-left: 30px;
}
.qua04_li{
	list-style: disc;
}

.qua05{
	padding: 100px 20px 150px;
}
.qua05_wrap{
	padding-left: 60px;
	position: relative;
	margin-top: 80px;
}
.qua05_wrap::after{
	content: "";
	display: block;
	width: 3px;
	height: 350px;
	background: #d2232a;
	position: absolute;
	left: 0;
	top: 0;
}
.qua05_ttl{
	font-size: 1.8rem;
	line-height: 1.4;
}
.qua05_txt{
	font-size: 1.25rem;
	margin-top: 60px;
}
.qua05_box{
	margin-top: 50px;
}
.qua05_list_ttl{
	font-size: 1.5rem;
}
.qua05_list{
	margin-top: 20px;
	padding-left: 50px;
	justify-content: start;
	gap: 40px;
	font-size: 1.25rem;
}
.qua05_li{
	list-style: disc;
}
a.qua05_btn{
	position: absolute;
	right: 0;
	bottom: 0;
	background-color: #d2232a;
	background-image: url(../images/qualification/icon_pdf.png);
	background-position: right 10px top 8px;
	background-repeat: no-repeat;
	color: #fff;
	padding: 10px 80px 10px 30px;
	font-size: 1.25rem;
	transition: 0.3s ease-in-out;
}


@media only screen and (min-width:1025px) {
	a.qua05_btn:hover{
		background-color: #0068b7;
	}
}

@media only screen and (max-width:1024px) {
	.qua01{
		padding: 50px 20px;
	}
	.qua01 .rec_ttl_en{
		font-size: 2.5rem;
		min-width: 500px;
	}
	.qua_img01{
		margin-top: 30px;
	}
	.qua01_txt{
		font-size: 1.2rem;
	}

	.qua02{
		padding: 50px 20px;
	}
	.qua02_container{
		padding: 30px 20px;
		margin-top: 20px;
	}
	.qua02_wrap {
		flex-wrap: wrap;
		gap: 30px;
		justify-content: center;
	}
	.qua02_list{
		width: 100%;
		font-size: 1rem;
		gap: 10px 20px;
		justify-content: start;
	}
	.qua02_li{
		width: 100%;
		max-width: 200px;
	}
	.qua02_ttl{
		font-size: 1.5rem;
		margin-top: 50px;
	}
	.qua02_txt{
		font-size: 1rem;
	}
	.qua03{
		padding: 50px 20px;
	}
	.qua04_list{
		font-size: 1rem;
	}

	.qua05{
		padding: 50px 20px;
	}
	.qua05_wrap{
		padding-left: 20px;
		padding-bottom: 80px;
	}
	.qua05_ttl{
		font-size: 1.5rem;
	}
	.qua05_txt{
		font-size: 1rem;
		margin-top: 30px;
	}
	.qua05_list_ttl{
		font-size: 1.2rem;
	}
	.qua05_list{
		flex-wrap: wrap;
		gap: 10px 30px;
		justify-content: start;
		font-size: 1rem;
		padding-left: 30px;
	}
	a.qua05_btn{
		right: unset;
		left: 50%;
		transform: translateX(-50%);
		width: 300px;
	}
}

/* 採用情報 */
.rec_info01{
	padding: 0 0 100px;
}
.rec_info01_img{
	margin-top: 60px;
}
.rec_info01_inner{
	padding: 0 20px;
}
.rec_info01_copy{
	font-size: 4.2rem;
	line-height: 1.4;
	margin-top: 20px;
	color: #0068b7;
}
.rec_info01_copy span{
	line-height: 1.4;
}
.rec_info01_txt{
	font-size: 2.5rem;
	line-height: 1.4;
	margin-top: 10px;
}

.rec_info02_container{
	margin-top: 50px;
	background: #fff;
	padding: 70px 50px;
	border-radius: 20px;
}
.rec_info02_wrap{
	margin-top: 60px;
	gap: 20px;
}
.rec_info02_btn_wrap{
	margin-top: 30px;
}
.rec_info02_box_ttl{
	font-size: 1.8rem;
}
a.rec_info02_btn{
	background: #d2232a;
	color: #fff;
	font-size: 1.1rem;
	padding: 10px 80px 10px 20px;
	background-image: url(../images/recruit/rec_btn_arrow_w.png);
	background-position: right 20px top 20px;
	background-repeat: no-repeat;
	transition: 0.3s ease-in-out;
}

.rec_info03{
	padding: 120px 20px 100px;
}
.rec_info03_txt{
	margin-top: 30px;
}
.flow_container{
	padding: 50px 40px;
}
.last{
	padding: 50px 40px 75px;
}
.flow_ttl{
	font-size: 1.25rem;
}
.flow_step{
	font-size: 1.8rem;
	margin-right: 20px;
}
.flow_flex{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.flow_txt{
	margin-top: 20px;
	width: 70%;
}
.flow_img{
	width: 20%;
	display: block;
}

.flow_img img{
	height: 100px;
	margin: 0 auto;
}   
.flow_btn_wrap{
	margin-top: 30px;
	gap: 20px;
	justify-content: center;
}
.exp_flow_btn_wrap{
	margin-top: 0;
}
a.flow_btn{
	color: #fff;
	font-size: 1.6rem;
	line-height: 1.4;
	background-image: url(../images/recruit_info/mail_bk.png);
	background-repeat: no-repeat;
	background-position: left 25% bottom -35px;
	border-radius: 10px;
	width: calc(50% - 10px);
	padding: 30px 20px 20px;
	transition: 0.3s ease-in-out;
}
a.flow_form_btn{
	padding: 40px 20px 10px;
}
a.flow_btn_position{
	display: flex;
    align-items: center;
    justify-content: center;
}
.flow_btn_a{
	background-color: #0068b7;
}
.flow_btn_b{
	background-color: #d2232a;
}

a.entry_btn{
	display: block;
	color: #fff;
	font-size: 1.6rem;
	line-height: 1.4;
	background-image: url(../images/new/entry_bk03.png);
	background-repeat: no-repeat;
	border-radius: 10px;
	width: 100%;
	height: 190px;
	padding: 45px 20px 20px;
	transition: 0.3s ease-in-out;
}

.entry_btn_wrap{
	padding-top: 80px;
}

.sp_entry_btn_wrap{
	display: none;
}

.flow_tel_wrap{
	font-size: 1.6rem;
	line-height: 1.4;
	border: solid 5px #d2232a;
	border-radius: 10px;
	padding: 30px 20px 10px;
	background-image: url(../images/recruit_info/tel_bk.png);
	background-repeat: no-repeat;
	background-position: left 40% bottom -35px;
	margin-top: 20px;
}
.flow_add{
	background: #eeeeee;
	padding: 20px 40px;
	gap: 50px;
	margin-top: 40px;
}
.flow_add_ttl{
	right: 80px;
}
.flow_add_content{
	flex: 1;
}

.rec_info04{
	background: #eeeeee;
	padding: 100px 20px 150px;
}
.rec_info04 .rec_h2_en{
	color: #d2232a;
}
.rec_flex {
    display: flex;
    justify-content: space-between;
}
.sche_container{
	width: 580px;
    margin-top: 50px;
    padding: 40px 0px;
	background: #fff;
	border-radius: 20px;
}
.sche_ttl{
	font-size: 2.2rem;
	line-height: 1.3;
}
.sche_ttl_sub{
	font-size: 1.5rem;
	line-height: 1.3;
}
.sche_year{
	margin-top: 40px;
	color: #0068b7;
	font-size: 1.25rem;
	padding: 0 40px 15px;
	border-bottom: 1px solid #0068b7;
	position: relative;
	background-image: url(../images/recruit_info/sche_year_bk.png);
	background-repeat: no-repeat;
	background-position: bottom left;
}
.sche_flow{
	padding: 50px 40px 0 20px;
	position: relative;
}
.sche_flow::after{
	content: "";
	display: block;
	width: 15px;
	height: 100%;
	background: #eee;
	position: absolute;
	left: 43px;
	top: 0;
}
.sche_flow_wrap{
	position: relative;
	z-index: 1;
	gap: 30px;
}
.sche_flow_wrap+.sche_flow_wrap{
	margin-top: 60px;
}
.sche_flow_time{
	width: 60px;
}
.sche_flow_time div{
	width: 60px;
	height: 60px;
	border: solid 1px #0068b7 ;
	color: #0068b7;
	border-radius: 50%;
	background: #fff;
}
.sche_flow_content{
	flex: 1;
	gap: 40px;
}
.sche_flow_txt{
	flex: 1;
}
.sche_flow_txt_a{
	font-size: 1.25rem;
	line-height: 1.4;
}
.sche_flow_txt_b{
	margin-top: 10px;
}
.sche_flow_img{
	width: 260px;
	position: relative;
}
.sche_flow_omake{
	margin-top: 60px;
	background: #e5f0f8;
	padding: 30px 350px 30px 100px;
	position: relative;
}
.sche_flow_omake_ttl{
	font-size: 1.25rem;
	color: #0068b7;
}
.req_img03_e{
	position: absolute;
	bottom: 0;
	right: 8%;
}
.req_img05_c{
	position: absolute;
	bottom: 0;
	left: 0;
	max-width: unset;
}

@media only screen and (min-width:1025px) {
	a.rec_info02_btn:hover{
		background-color: #0068b7;
	}
	a.flow_btn_a:hover{
		background-color: rgba(0,104,183,0.7);
	}
	a.flow_btn_b:hover{
		background-color: rgba(210,35,42,0.7);
	}
	a.entry_btn:hover{
		opacity: 0.7;
	}
}

@media only screen and (max-width:1024px) {
	.rec_info01{
		padding: 0 0 50px;
	}
	.rec_info01_img{
		margin-top: 20px;
	}
	.rec_info01_copy{
		font-size: 1.2rem;
	}
	.rec_info01_txt{
		font-size: 1.5rem;
	}

	.rec_info02_container{
		margin-top: 30px;
		padding: 30px 20px;
	}
	.rec_info02_wrap{
		margin-top: 20px;
		flex-wrap: wrap;
		justify-content: center;
		gap: 40px 20px;
	}
	.rec_info02_btn_wrap{
		flex-wrap: wrap;
		gap: 5px 10px;
	}
	.rec_info02_box_ttl{
		font-size: 1.2rem;
	}

	.rec_info03{
		padding: 50px 20px;
	}

	.flow_container{
		padding: 30px 10px;
	}
	.entry_btn_upwrap{
		padding: 50px 20px 0px;
	}
	.sp_entry_btn_wrap{
		display: flex;
		justify-content: center
	}
	.sptop_entry_btn_wrap{
		padding: 50px 20px 0;
	}
	a.entry_btn{
		display: block;
		width: 100%;
		height: 127px;
		max-width: 540px;
		padding: 30px;
		font-size: 1.1rem;background-size: 120px;
		background-image: url(../images/new/entrysp_bk03.png);
		background-position: right 15% bottom -25px;	
		background-color:#0074BC;
	}
	.flow_btn_wrap{
		flex-wrap: wrap;
	}
	a.flow_btn{
		width: 100%;
		height: 127px;
		max-width: 540px;
		padding: 20px 20px 10px;
		font-size: 1.1rem;background-size: 120px;
		background-position: left 15% bottom -25px;
	}
	a.flow_form_btn{
		padding: 30px 20px 0px;
	}
	.flow_tel_wrap{
		margin-top: 20px;
		padding: 20px 10px 10px;background-size: 100px;
		background-position: left 14% bottom -20px;
	}
	.flow_add{
		padding: 20px;
		margin-top: 20px;
		gap: 10px;
		flex-wrap: wrap;
		justify-content: start;
	}
	.flow_add_content{
		flex: unset;
		width: 100%;
		max-width: 550px;
	}
	.flow_flex{
		flex-direction: column;
	}

	.rec_info04{
		padding: 50px 20px;
	}

	.rec_flex{
		justify-content: unset;
    	flex-direction: column;
	}
	.flow_txt{
		width: 100%;
	}
	.flow_img {
		width: 100%;
		margin-top: 20px;
	}

	.job_radius_btn{
		right: 50px;
		width: 120px;
		height: 120px;
		line-height: 1.2;
		font-size: 1rem;
	}

	.sche_container{
		padding: 30px 20px;
		width: 100%;
	}
	.sche_ttl{
		font-size: 1.6rem;
	}
	.sche_ttl_sub{
		font-size: 1.2rem;
	}
	.sche_year{
		background-size: 200px;
		padding: 0 10px 15px;
	}
	.sche_flow{
		padding: 30px 0 0;
	}
	.sche_flow::after{
		left: 18px;
	}
	.sche_flow_wrap{
		gap: 20px;
	}
	.sche_flow_time{
		width: 50px;
	}
	.sche_flow_time div{
		width: 50px;
		height: 50px;
	}
	.sche_flow_content{
		flex-wrap: wrap;
		gap: 20px;
	}
	.sche_flow_txt{
		min-width: 200px;
	}
	.sche_flow_txt_a{
		font-size: 1rem;
	}
	.sche_flow_txt_b{
		font-size: 0.9rem;
	}
	.sche_flow_img{
		max-width: 260px;
		width: 100%;
	}
	.sche_flow_omake{
		padding: 20px 20px 170px;
	}
	.sche_flow_omake_ttl{
		font-size: 1rem;
	}
	.req_img03_e{
		width: 200px;
		right: 10px;
	}
	.req_img05_c{
		position: static;
		max-width: 100%;
	}
}

/* 新入社員研修 */
.edu01{
	padding: 0 20px 100px;
	overflow: hidden;
}
.edu01 .rec_ttl_en{
	font-size: 8rem;
}
.edu01_ttl{
	font-size: 2.2rem;
	margin-top: 80px;
}
.edu_flow{
	margin-top: 20px;
}
.edu_flow_box{
	height: 151px;
	padding: 20px 70px;
}
.edu_flow_box01{
	width: 340px;
	background: url(../images/education/edu_bk01.png);
}
.edu_flow_box02{
	width: 490px;
	background: url(../images/education/edu_bk02.png);
}
.edu_flow_box03{
	width: 340px;
	background: url(../images/education/edu_bk03.png);
}
.edu_flow_month{
	font-size: 1.8rem;
	line-height: 1.3;
	border-bottom: 1px solid #0068b7;;
}
.e_month{
	font-size: 3.2rem;
	line-height: 1.1;
	color: #0068b7;
}
.edu_flow_txt{
	font-size: 1.55rem;
	margin-top: 10px;
}

.edu02{
	background: #fae9e9;
	padding: 100px 20px;
}
.edu_step{
	gap: 20px 50px;
}
.edu_step+.edu_step{
	margin-top: 100px;
}
.edu_step_img{
	width: 420px;
}
.edu_step_content{
	flex: 1;
}
.edu_ul{
	margin-top: 30px;
	padding-left: 30px;
	gap: 10px 70px;
	justify-content: start;
	flex-wrap: wrap;
}
.edu_li{
	list-style: disc;
	min-width: 100px;
}

@media only screen and (max-width:1024px) {
	.edu01{
		padding-bottom: 50px;
	}
	.edu01_ttl{
		margin-top: 50px;
		font-size: 1.5rem;
	}
	.edu_flow{
		flex-wrap: wrap;
		gap: 20px;
	}
	.edu_flow_box{
		background-image: none;
		width: 100%;
		height: auto;
		padding: 20px 30px;
	}
	.edu_flow_box01{
		background-color: #E5F0F8;
	}
	.edu_flow_box02{
		background-color: #AFD7F6;
	}
	.edu_flow_box03{
		background-color: #66A4D4;
	}
	.edu_flow_month{
		font-size: 1.3rem;
	}
	.e_month{
		font-size: 2rem;
	}
	.edu_flow_txt{
		font-size: 1.1rem;
	}

	.edu02{
		padding: 50px 20px 80px;
	}
	.edu_step{
		flex-wrap: wrap;
		justify-content: center;
	}
	.edu_step_content{
		flex: none;
		width: 100%;
		max-width: 500px;
	}
}

/* 新卒採用 */
.req_container{
	background: #fff;
	padding: 80px;
	border-radius: 0px 20px 20px 20px;
	margin-top: 60px;
}
.req_box {
	border: solid 1px #050100;
	border-bottom:0;
}
.req_box:last-child {
	border-bottom: solid 1px #050100;
}
.req_ttl{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 190px;
	padding: 20px;
	color: #fff;
	background: #939393;
	border-right: solid 1px #050100;
}
.req_txt{
	flex: 1;
	padding: 20px 40px;
}
.req_Applytxt{
	flex: 1;
	padding: 0;
}
.req_sm_box{
	border-bottom: solid 1px #050100;
}
.req_sm_box:last-child {
	border-bottom: none;
}
.req_sm_ttl{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 190px;
	color: #050100;
	background: #C8C8C8;
	border-right: solid 1px #050100;
}
.req_sm_txt{
	flex: 1;
	padding: 20px 40px;
}
.req_red{
	display: inline-block;
	border: solid 1px #d2232a;
	color: #d2232a;
	padding: 2px 30px;
}
.req_ul{
	list-style: disc;
	padding-left: 30px;
}
dl {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
dt {
  width: 30%;
}
.ex_req_txt dt{
	width: 25%;
}
dd {
  width: 70%;
}

.new02{
	padding: 80px 20px 150px;
}
.new02_table{
	margin-top: 80px;
}

.new03{
	padding: 80px 20px 150px;
}
.new02_th{
	width: 120px;
	padding: 80px 20px;
	border-bottom: 1px solid #fff;
}
.new02_th_a{
	background: #fae9e9;
}
.new02_th_b{
	background: #e5f0f8;
}
.new02_th_c{
	background: #e5e5e5;
}
.new02_td_wrap{
	flex: 1;
}
.new02_td_a{
	background: #fafafa;
}
.new02_td01{
	width: 180px;
	padding: 20px 10px;
}
.new02_td02{
	flex: 1;
	padding: 80px 20px;
	font-size: 0.9rem;
}
.new02_btn_wrap{
	margin-top: 120px;
	padding: 0 50px;
}
.new02_btn{
	display: block;
	border: solid 5px #d2232a;
	position: relative;
	padding: 40px;
	border-radius: 20px;
	overflow: hidden;
	transition: 0.3s ease-in-out;
}
.new02_btn .rec_h2_en{
	width: 100%;
	text-align: center;
	top: 18%;
	left: 0;
	font-size: 8.5rem;
}
.new02_btn_txt01{
	font-size: 1.7rem;
}
.new02_btn_txt02{
	margin-top: 10px;
}
.new_ul{
	padding-left: 1.5em;
	list-style-type: none;
}
.new_ul li::before{
	content: "■ ";
	margin-left: -1em;
}

.new03_ttl{
	font-size: 1.7rem;
	margin-top: 80px;
}
.mynavi_bnr_wrap{
	margin-top: 20px;
}
.mynavi_bnr{
	display: inline-block;
	transition: 0.3s ease-in-out;
}
.new03_btn_wrap{
	margin-top: 20px;
}
a.flow_btn_tel{
	background-image: url(../images/new/tel_bk02.png);
}

.experienced .rec_copy_wrap{
	padding-bottom: 200px;
}
a.exp_btn{
	display: block;
	color: #d2232a;
	background-image: none;
	padding: 30px 20px;
	transition: 0.3s ease-in-out;
}
.contact_btn{
	font-size: 1.3em;
}

@media only screen and (min-width:1025px) {
	.new02_btn:hover{
		background: #fae9e9;
	}
	.mynavi_bnr:hover{
		opacity: 0.7;
	}
	a.exp_btn:hover{
		background: #fae9e9;
	}
}

@media only screen and (max-width:1024px) {
	.req_container{
		padding: 30px 20px;
	}
	.req_box {
		flex-wrap: wrap;

	}

	.req_ttl{
		width: 100%;
		padding: 0px;
		border-bottom: solid 1px #050100;
		border-right: none;
	}
	.req_txt{
		flex: none;
		width: 100%;
		padding: 10px;
		font-size: 14px;
		line-height: 1.1rem;
	}
	.req_ul {
		padding-left: 20px;
	}
	.req_red{
		padding: 5px 10px;
	}
	.req_sm_ttl{
		width: 95px;
		line-height: 1.3em;
        font-size: 14px;
	}
	.req_sm_txt{
		padding: 10px;
		font-size: 0.85rem;
		line-height: 1.1rem;
	}
	.req_sm_txt li{
		line-height: 1.1rem;
	}
	.req_sm_txt li:nth-child(3){
		margin-bottom: 10px;
	}
	
	dl {
		flex-direction: column;
	}
	dt {
		width: 100%;
	}
	.ex_req_txt dt{
		width: 100%;
	}
	dd {
		width: 100%;
		line-height: 1.1rem;
		margin-bottom: 15px;
	}
	.new02{
		padding: 50px 20px;
	}
	.new02_table{
		margin-top: 50px;
	}
	.new02_th{
		writing-mode: vertical-lr;text-align: left;
		width: 40px;
		padding: 40px 5px;
	}
	.new02_td {
		flex-wrap: wrap;
		padding: 50px 10px;
	}
	.new02_td01{
		width: 100%;
		padding: 0 0 10px 0;
		justify-content: start;
		text-align: left;
		border-bottom: 1px solid #e5e5e5;
	}
	.new02_td01 span{
		line-height: 1.3;
	}
	.new02_td02{
		padding: 10px 0 0 0 ;
		flex: none;
		width: 100%;
	}
	.new02_btn_wrap{
		margin-top: 50px;
		padding: 0;
	}
	.new02_btn{
		padding: 20px;
	}
	.new02_btn .rec_h2_en{
		font-size: 4rem;
	}

	.new03{
		padding: 50px 20px 80px;
	}
	.new03_ttl{
		margin-top: 50px;
		font-size: 1.2rem;
	}
	.mynavi_bnr_wrap{
		max-width: 540px;
		margin: 20px auto 0;
	}
	a.flow_btn_tel{
		background-size: 100px;
	}

	.experienced .rec_copy_wrap{
		padding-bottom: 55px;
	}
	.exp_btn_wrap  {
		max-width: 540px;
		margin: auto;
	}
	a.exp_btn{
		font-size: 1.1rem;
		padding: 30px 10px;
	}
	.contact_btn{
		font-size: 1.5em;
	}
}

/* 働く人を知る */
.worker_index{
	padding: 100px 0 200px;
	overflow: hidden;
}
.worker_index_wrap{
	justify-content: start;
	gap: 10px;
	position: relative;
	z-index: 10;
}
.worker_index_wrap02{
	justify-content: end;
	margin-top: 100px;
}
.worker_index_inner{
	position: relative;
}
.worker_index_inner::after{
	content: "";
	display: block;
	width: 100vw;
	height: 38vw;
	background-image: url(../images/job/job_img_bk.png);
	background-size: cover;
	background-position: right top;
	background-repeat: no-repeat;
	position: absolute;
	left: 0;
	bottom: -150px;
}
.worker_index_inner02::after{
	left: unset;
	right: 0;
	background-position: left top;
}
.worker_index_box{
	position: relative;
	z-index: 1;
}
.worker_index_box:nth-child(1){
	margin-top: 72px;
}
.worker_index_box:nth-child(2){
	margin-top: 48px;
}
.worker_index_box:nth-child(3){
	margin-top: 24px;
}
.worker_index_img{
	height: 320px;
	display: flex;
	align-items: end;
}
.worker_index_info{
	writing-mode: vertical-rl;
	margin: 20px auto 0;
	color: #fff;
}
.worker_index_job{
	line-height: 1.4;
}
.worker_index_name{
	font-size: 2.1rem;
	line-height: 1.4;
}

.worker01{
	padding-top: 150px;
	position: relative;
	overflow: hidden;
}
.worker01_main_img{
	width: calc(50% + 200px) ;
}
.worker01_ttl_wrap{
	flex: 1;
}
.worker01_ttl_box{
	max-width: 400px;
	width: 100%;
	height: 100%;
	position: relative;
	padding-top: 150px;
}
.worker01_ttl{
	writing-mode: vertical-rl;
    margin: 0 auto ;
	border-top: 5px solid #d2232a;
	padding-top: 20px;
	position: relative;
}
.worker01_ttl::after{
	content: "";
	display: block;
	width: 1px;
	height: 1500px;
	background: #d2232a;
	position: absolute;
	bottom: -1520px;
	left: 50%;
}
.worker01_content{
	position: relative;
	z-index: 10;
	padding: 0 20px;
}
.worker01_ttl_copy{
	background: rgba(256,256,256,0.9);
	padding: 15px 20px;
	width: 510px;
	position: absolute;
	bottom: 40px;
	right: 0;
	font-size: 1.8rem;
	line-height: 1.4;
}
.worker01_name_en{
	font-size: 0.8rem;
	line-height: 1.4;
}
.worker01_content{
	margin-top: 100px;
}
.worker01_inner{
	gap: 90px;
}
.worker01_inner+.worker01_inner{
	margin-top: 50px;
}
.worker01_txt_wrap{
	flex: 1;
	background: #fff;
}
.worker01_img_wrap{
	width: 480px;
}
.worker01_txt_copy{
	display: inline-block;
	font-size: 1.5rem;
	line-height: 1.4;
	position: relative;
	padding: 15px 20px;
}
.worker01_txt_copy::before,
.worker01_txt_copy::after{
	content: "";
	display: block;
	width: 20px;
	height: 20px;
	position: absolute;
}
.worker01_txt_copy::before{
	left: 0;
	top: 0;
	border-top: 1px solid #363737;
	border-left: 1px solid #363737;
}
.worker01_txt_copy::after{
	right: 0;
	bottom: 0;
	border-right: 1px solid #363737;
	border-bottom: 1px solid #363737;
}
.worker01_txt_p{
	margin: 30px 0 0;
}
.worker01_img+.worker01_img{
	margin-top: 20px;
}
.worker02 .worker01_main_img{
	order: 2;
}
.worker02 .worker01_ttl_wrap{
	order: 1;
}
.worker02 .worker01_ttl_box{
	margin: 0 0 0 auto;
}
.worker02 .worker01_ttl_copy{
	right: unset;
	left: 0;
}
.worker_q_txt{
	padding-left: 80px;
}
.worker_q_txt::before,
.worker_q_txt::after{
	display: none;
}
.worker_q{
	position: absolute;
	left: 0;
	top: 0;
	font-size: 4.5rem;
    line-height: 1.2;
}
.worker07{
	padding-bottom: 150px;
}

@media only screen and (max-width:1024px) {
	.worker_index{
		padding: 30px 0 0;
	}
	.worker_index_wrap {
		background: #d2232a;
		padding: 30px 20px;
		margin-top: 0;
	}
	.worker_index_inner::after{
		display: none;
	}
	.worker_index_img{
		height: auto;
	}
	.worker_index_name{
		font-size: 1.5rem;
	}

	.worker01{
		padding-top: 100px;
	}
	.worker01_main{
		flex-wrap: wrap;
		gap: 30px;
		position: relative;
	}
	.worker01_main_img{
		width: 100%;
		height: 500px;
	}
	.worker01_main_img img{
		object-fit: cover;
		height: 100%;
		width: 100%;
	}
	.worker01_ttl_wrap{
		flex: none;
		width: 100%;
		padding: 0 20px;
		position: absolute;
		bottom: 10px;
	}
	.worker01_ttl_box{
		max-width: 100%;
		margin-top: 0;
		padding: 20px;
		background: rgba(256,256,256,0.9);
	}
	.worker01_ttl{
		writing-mode: horizontal-tb;
		padding-top: 5px;
		padding-left: 10px;
		border-left: 5px solid #d2232a;
		border-top: none;
	}
	.worker01_ttl_copy{
		position: static;
		width: 100%;
		padding: 10px 0 0 20px;
		font-size: 1.3rem;
		background-color: unset;
	}
	.worker01_ttl::after{
		display: none;
	}
	.worker01_content{
		margin-top: 50px;
	}
	.worker01_inner{
		gap: 50px 20px;
		flex-wrap: wrap;
	}
	.worker01_txt_copy{
		padding: 10px;
		font-size: 1.2rem;
	}
	.worker01_txt_wrap{
		order: 1;
		flex: none;
		width: 100%;
	}
	.worker01_img_wrap{
		order: 2;
		width: 100%;
	}
	.worker01_img img{
		margin: auto;
	}

	.worker02 .worker01_main_img{
		order: 1;
	}
	.worker02 .worker01_ttl_wrap{
		order: 2;
	}
	.worker_q_txt{
		padding-left: 50px;
	}
	.worker_q {
		font-size: 3rem;
	}
}

/* FAQ */
.faq_com03{
	padding-bottom: 0;
}
.rec_inner{
	line-height: 0;
}
.rec_qa {
    border: solid 1px #050100;
    border-radius: 10px;
    background-color: #fbefef;
	position: relative;
	line-height: 0;
    margin-bottom: 15px;
}

.rec_qa summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1em 2em 1em 3.2em;
    color: #050100;
    cursor: pointer;
	font-size: 1.2rem;
    font-weight: bold;
}

.rec_qa summary::before,
.rec_qa .content::before {
    position: absolute;
    left: 0.9em;
    font-size: 1.5em;
}

.rec_qa summary::before {
    color: #e60012;
	font-weight: 600;
    content: "Q";
}
.rec_qa::before {
    content: "";
    width: 20px;
    height: 2px;
    background: #939393;
    position: absolute;
    top: 35px;
	top:50%;
    right: 20px;
    margin-top: -0.5px;
}

.rec_qa:after {
    content: "";
    width: 2px;
    height: 20px;
    background: #939393;
    position: absolute;
    top: 35px;
	top:50%;
    right: 29px;
    margin-top: -10px;
}

.rec_qa summary::after{
	background: transparent;
} 
.rec_qa[open]::before {
    display: none;
}
.rec_qa[open]::after {
    display: none;
}
.rec_qa[open] summary::after {
    content: "";
    width: 20px;
    height: 2px;
    background: #939393;
    position: absolute;
    top: 35px;
	top:50%;
    right: 20px;
    margin-top: -0.5px;
}

.rec_qa .content {
    position: relative;
    opacity: 0;
	padding: 1.5em 3em 1.5em 3.5em;
    margin: 0;
	border-radius: 0 0 10px 10px;
	background:#fff;
    color: #333;
	font-size: 1.1rem;
	transition: opacity 0.5s ease;

}

.rec_qa[open] .content {
    opacity: 1;

}

.rec_qa .content::before {
    color: #e60012;
    line-height: 1.2;
	font-weight: 600;
    content: "A";
	left: 1.0em;
	font-size: 1.6em;
}

.rec_btn_wrap{
	margin-top: 50px;
}

details {
  /* --------アコーディオンの中身のスタイル-------- */
  &::details-content {
    transition:
      height 0.4s,
      opacity 0.4s,
      content-visibility 0.4s allow-discrete;
    height: 0;
    opacity: 0;
    overflow: clip;
  }

  /* --------アコーディオンの中身のスタイル（開いている時）-------- */
  &[open]::details-content{
    opacity: 1;
  }

  /* アコーディオンが開いた時のスタイル */
  &[open] .icon {
    transform: rotate(180deg);
  }
}

@supports (interpolate-size: allow-keywords) {
  :root {
    interpolate-size: allow-keywords; /* height:0（数値型） → auto（文字型） のアニメーションを可能にするための指定 */
  }
  details[open]::details-content {
    height: auto;
  }
}

/* height:0→autoへのアニメーションが対応していない場合は、固定値にアニメーションさせる */
@supports not (interpolate-size: allow-keywords) {
  details[open]::details-content {
    height: auto;
    overflow-y: scroll;
  }
}
@media only screen and (max-width:1024px) {
	.rec_qa summary {
    padding: 1em 3em 1em 3em;
	font-size: 1rem;
}
	.faq_com03{
		padding: 0 20px 80px 20px;
	}
	.rec_qa .content {
		padding: 1.5em 2em 1.5em 2.9em;
		font-size: 1rem;
	}
	
    .rec_qa .content::before{
		left: 1em;
		font-size: 1.5em;
	}
}