/* CSS Document */

.rec_mainpic{
	position: relative;
	z-index: 2;
}
.rec_mainpic .bg{
	position: relative;
	z-index: -1;
	display: flex;
	justify-content: center;
	align-items: center;
}
.rec_mainpic .bg img{
	padding: 0 min(calc(1vw * 28 / 16),28px);
}
.rec_mainpic .pos_center{
	position: absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.rec_mainpic .photo{
	position: relative;
	overflow: hidden;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
}
.rec_mainpic .photo.p1{
	width: calc(1% * 369 / 16);
	padding-top: calc(1% * 415 / 16);
	margin-left: calc(-29% - 440px);
	margin-top: calc(-12% - 183px);
}
.rec_mainpic .photo.p2{
	width: calc(1% * 256 / 16);
	padding-top: calc(1% * 196 / 16);
	margin-top: calc(-19% - 183px);
}
.rec_mainpic .photo.p3{
	width: calc(1% * 430 / 16);
	padding-top: calc(1% * 290 / 16);
	margin-top: calc(-21% - 183px);
	margin-right: calc(-24% - 440px);
}
.rec_mainpic .photo.p4{
	width: calc(1% * 400 / 16);
	padding-top: calc(1% * 250 / 16);
	margin-bottom: calc(-21% - 183px);
	margin-left: calc(2% - 440px);
}
.rec_mainpic .photo.p5{
	width: calc(1% * 328 / 16);
	padding-top: calc(1% * 325 / 16);
	margin-bottom: calc(-8% - 183px);
	margin-right: calc(-23% - 440px);
}
.rec_mainpic .photo img{
	position: absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	object-fit: cover;
}
.rec_mainpic h1{
	width:100%;
	max-width: 440px;
}
.rec_mainpic h1 img[src*="logo"]{
	width:auto;
	height:35px;
}
.rec_mainpic h1 > div{line-height: 1em;}
.rec_mainpic h1 > div:nth-child(1){padding-bottom: 16px;}
.rec_mainpic h1 > div:nth-child(2){
	font-size: 21px;
	padding: 16px 0;
	border-top: solid 2px #2bc573;
}
.rec_mainpic h1 > div:nth-child(3){
	font-size: 55px;
	letter-spacing: 0.3em;
	padding-left: 0.3em;
	padding-bottom: 20px;
	border-bottom: solid 2px #2bc573;
}
@media screen and (max-width: 999px) {
	.rec_mainpic .bg img{
		padding: 0 calc(1vw * 5 / 3.75);
	}
	.rec_mainpic .photo{
		border-radius: 10px;
		-webkit-border-radius: 10px;
		-moz-border-radius: 10px;
	}
	.rec_mainpic .photo.p1{
		width: calc(1% * 140 / 3.75);
		padding-top: calc(1% * 128 / 3.75);
		margin-top: calc(-36% - 82px);
		margin-left: calc(-46%);
	}
	.rec_mainpic .photo.p2{
		width: calc(1% * 85 / 3.75);
		padding-top: calc(1% * 57 / 3.75);
		margin-top: calc(-11% - 82px);
		margin-right: calc(-55%);
	}
	.rec_mainpic .photo.p3{
		width: calc(1% * 145 / 3.75);
		padding-top: calc(1% * 88 / 3.75);
		margin-top: calc(-53% - 82px);
		margin-right: calc(-43%);
	}
	.rec_mainpic .photo.p4{
		width: calc(1% * 153 / 3.75);
		padding-top: calc(1% * 110 / 3.75);
		margin-bottom: calc(-50% - 82px);
		margin-left: calc(-40%);
	}
	.rec_mainpic .photo.p5{
		width: calc(1% * 100 / 3.75);
		padding-top: calc(1% * 90 / 3.75);
		margin-bottom: calc(-48% - 82px);
		margin-right: calc(-40%);
	}
	.rec_mainpic h1{
		max-width: 210px;
		margin-top: 10%;
	}
	.rec_mainpic h1 > div:nth-child(1){display: none;}
	.rec_mainpic h1 > div:nth-child(2){
		font-size: 15px;
		padding: 10px 0;
	}
	.rec_mainpic h1 > div:nth-child(3){
		font-size: 33px;
		padding-bottom: 10px;
	}
}

.rec_submenu,
.rec_submenu .c_box,
.rec_submenu .Wbase{height:70px;}
.rec_submenu{margin-top: 70px;}
.rec_submenu .c_box{background-color: #FFF;}
.rec_submenu.fixed .c_box{
	position: fixed;
	top:128px;
	left:0;
	width:100%;
	z-index: 999;
}
.rec_submenu .Wbase{display: flex;}
.rec_submenu a{
	flex-grow: 1;
	width:10%;
	font-size: 18px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.rec_submenu a:hover{background-color: #FFECD3;}
.rec_submenu a div{
	width:14px;
	margin-top: 10px;
}
@media screen and (max-width: 999px) {
	.rec_submenu,
	.rec_submenu .c_box,
	.rec_submenu .Wbase{height:60px;}
	.rec_submenu{margin-top: 60px;}
	.rec_submenu .c_box{padding: 0;}
	.rec_submenu.fixed .c_box{top:88px;}
	.rec_submenu a{font-size: 12px;}
	.rec_submenu a span{
		line-height: 1.1em;
		min-height:30px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.rec_submenu a span > span[style]{display: none;}
	.rec_submenu a div{
		width:7px;
		margin-top: 5px;
	}
}

.rec_01{margin-top: 230px;}
*[class*="rec_"] h2{font-size:30px;}
.rec_01 h2{margin-bottom: 230px;}
.rec_01 .text1{
	font-size:19px;
	line-height: 200%;
}
.rec_01 .photo1{
	margin: 160px auto;
	width:100%;
	display: flex;
	justify-content: space-between;
}
.rec_01 img{object-fit: cover;}
.rec_01 .photo1 img{max-width: calc(100% * 44 / 90);}
.rec_01 .photo2{
	margin-top: 160px;
	width:100%;
	background-image:url(../recruit/img/top/p1-2-bg.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	display: flex;
	flex-direction: column;
}
.rec_01 .photo2 img{
	width:31%;
	width:calc(100% * 284 / 900);
}
.rec_01 .photo2 img:nth-child(n+2){margin-top: -11.39%;}
.rec_01 .photo2 img:nth-child(4n+1){margin-right: auto;}
.rec_01 .photo2 img:nth-child(2n){
	margin-left: auto;
	margin-right: auto;
}
.rec_01 .photo2 img:nth-child(4n+3){margin-left: auto;}
.rec_01 .photo3{
	margin-top: 175px;
	margin-bottom: 160px;
}
.rec_01 .photo3 img{width:100%;}
.rec_01 + .photo4{
	margin-top: 140px;
	margin-bottom: 175px;
	display: flex;
}
.rec_01 + .photo4 img{
	flex-grow: 1;
	width: 100%;
	max-height: 250px;
	object-fit: cover;
}
@media screen and (min-width: 1000px) {
	.rec_01 + .photo4 img:nth-child(n+2){margin-left: 8px;}
}
@media screen and (max-width: 999px) {
	.rec_01{margin-top: 130px;}
	*[class*="rec_"] h2{font-size:22px;}
	.rec_01 h2{margin-bottom: 60px;}
	.rec_01 .text1{font-size:14px;}
	.rec_01 .photo1{margin: 50px 0;}
	.rec_01 .photo2{margin-top: 60px;}
	.rec_01 .photo3{margin: 85px 0;}
	.rec_01 + .photo4{
		flex-wrap: wrap;
		margin-top: 90px;
		margin-bottom: 100px;
	}
	.rec_01 + .photo4 img{width:40%;}
	.rec_01 + .photo4 img:nth-child(2n){margin-left: 3px;}
	.rec_01 + .photo4 img:nth-child(n+3){margin-top: 3px;}
}

.top_sec1.ver_rec{
	margin-top: 0;
	margin-bottom: 175px;
	padding-top: 0;
}
.top_sec1.ver_rec .frame{margin-top: 0;}
@media screen and (max-width: 999px) {
	.top_sec1.ver_rec{margin-bottom: 100px;}
}

.rec_bg .bg{opacity: 0.3;}
.rec_02{}
.rec_02 h2{
	line-height: 1em;
	padding-top: 85px;
	padding-bottom: 70px;
}
.rec_02 .list{
	padding-bottom: 110px;
	display: flex;
	flex-direction: column;
}
.rec_02 .list li{
	background-color: #FFF;
	width:100%;
	max-width: 670px;
	padding: 35px;
	border-radius: 40px;
	-webkit-border-radius: 40px;
	-moz-border-radius: 40px;
	display: flex;
}
.rec_02 .list li:nth-child(n+2){margin-top: 60px;}
.rec_02 .list li .t{
	text-align: justify;
	flex-grow: 1;
	padding-right: 40px;
}
.rec_02 .list li .t > *{
	display: flex;
	justify-content: flex-start;
	align-items: baseline;
}
.rec_02 .list li .t > * > *:nth-child(1){
	min-width: 1em;
	margin-right: 1em;
}
.rec_02 .list li .t .a{margin-top: 1em;}
.rec_02 .list li .t .font_zenmaru{
	font-size: 18px;
	font-weight: bold;
}
.rec_02 .list li .p{
	width:240px;
	min-width: 240px;
}
.rec_02 .list li .p img{object-fit: cover;}
@media screen and (min-width: 1000px) {
	.rec_02 .list li:nth-child(2n+1){margin-right:auto;}
	.rec_02 .list li:nth-child(2n+2){margin-left:auto;}
	/* .rec_02 .list li .p img:not([src*="-pc"]){height:274px;} */
	.rec_02 .list li .p img[src*="-pc"] + img{display: none;}
}
@media screen and (max-width: 999px) {
	.rec_02 h2{
		padding-top: 40px;
		padding-bottom: 35px;
	}
	.rec_02 .list{
		align-items: center;
		padding-bottom: 75px;
	}
	.rec_02 .list li{
		padding: 40px 20px;
		border-radius: 30px;
		-webkit-border-radius: 30px;
		-moz-border-radius: 30px;
		flex-direction: column;
	}
	.rec_02 .list li:nth-child(n+2){margin-top: 35px;}
	.rec_02 .list li .t{padding-right: 0;}
	.rec_02 .list li .t > * > *:nth-child(1){margin-right: 0.25em;}
	.rec_02 .list li .p{
		width:100%;
		margin-top: 35px;
	}
	.rec_02 .list li .p img{margin: auto;}
	.rec_02 .list li .p img[src*="-pc"]{display: none;}
}

.rec_03{margin-top: 160px;}
.rec_03 > .Wbase{max-width: 1210px;}
.rec_03 .text1{
	font-size: 19px;
	margin-top: 50px;
}
.rec_03 .list{margin-top: 80px;}
.rec_03 .list li{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.rec_03 .list li:nth-child(n+2){margin-top: 20px;}
.rec_03 .list li > *{
	width:594px;
	max-width: 49.5%;
	order: 1;
}
.rec_03 .list li a.p img{transition: opacity 0.6s ease;}
.rec_03 .list li a.p:hover img{opacity: 0.7;}
.rec_03 .list li .t{display: flex;}
.rec_03 .list li .t > *{
	display: flex;
	flex-direction: column;
	text-align: justify;
	align-items: flex-start;
}

.rec_03 .list li .t > * > *:nth-child(1){
	font-size:25px;
	font-weight: bold;
	line-height: 175%;
}
.rec_03 .list li .t > * > *:nth-child(2){
	line-height: 175%;
	margin: 1em 0 1.5em;
}
@media screen and (min-width: 1000px) {
	.rec_03 .list li:nth-child(2n+1) .p,
	.rec_03 .list li:nth-child(2n+2) .t{order: 2;}
	.rec_03 .list li:nth-child(2n+1) .t > *{margin-left: auto;}
	.rec_03 .list li:nth-child(2n+2) .t > *{margin-right: auto;}
}
@media screen and (max-width: 999px) {
	.rec_03{margin-top: 55px;}
	.rec_03 .text1{
		font-size: 14px;
		margin-top: 30px;
	}
	.rec_03 .list{margin-top: 30px;}
	.rec_03 .list li{flex-direction: column;}
	.rec_03 .list li:nth-child(n+2){margin-top: 50px;}
	.rec_03 .list li > *{max-width:100%;}
	.rec_03 .list li .t{
		justify-content: center;
		margin-top: 15px;
	}
	.rec_03 .list li .t > * > *:nth-child(1){
		font-size: 20px;
		line-height: 150%;
	}
}

.rec_04{
	margin-top: 175px;
	margin-bottom: 0;
	padding-bottom: 100px;
}
@media screen and (max-width: 999px) {
	.rec_04{margin-top: 120px;}
}

.rec_05{padding: 55px 0;}
.rec_05 h2{margin-bottom: 36px;}
.rec_05 h2 + *{font-size: 22px;}
.rec_05 h2 + * + *{
	margin-top: 2em;
	font-size: 18px;
	line-height: 175%;
}
.rec_btn_entry{
	margin-top: 110px;
	margin-bottom: 200px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.rec_btn_entry .oubo,
.rec_btn_entry .oubo > .t{
	position: relative;
	z-index: 2;
	display: flex;
	justify-content: center;
	align-items: center;
}
.rec_btn_entry .oubo *,
.rec_btn_entry .oubo::after{transition: all 0.6s ease-in-out;}
.rec_btn_entry .oubo{
	width:100%;
	max-width: 330px;
	height:60px;
	font-size: 22px;
	line-height: 1em;
	letter-spacing: 0.1em;
}
.rec_btn_entry .oubo::after{
	content: '';
	background-color: #FFF;
	position: absolute;
	top:0;
	width:0;
	height:100%;
}
.rec_btn_entry .oubo:not(:hover)::after{
	right:0;
	width:0;
}
.rec_btn_entry .oubo:hover::after{
	left:0;
	width:100%;
}
.rec_btn_entry .oubo > .t{
	width:100%;
	height:100%;
	border:solid 2px #FF9E24;
}
.rec_btn_entry .oubo svg{
	width: auto;
	height: 0.8em;
	margin-top: 0.2em;
	margin-left: 0.4em;
}
.rec_btn_entry .oubo svg > *{
	fill: none;
	stroke: #fff;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.rec_btn_entry .oubo:hover > .t{color:#FF9E24;}
.rec_btn_entry .oubo:hover svg > *{stroke: #FF9E24;}
@media screen and (max-width: 999px) {
	.rec_05 h2 + *{
		font-size: 18px;
		display: block;
		max-width: 17em;
	}
	.rec_btn_entry{margin: 105px 0;}
}