@import url('https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400..700;1,400..700&display=swap');

#recruit{
	line-height: 1.7;
	color:#333;
	letter-spacing: 0.03em;
}

.inview1{
	opacity: 0;
	transform: translateY(20px);
	transition: 0.6s;
	transition-delay: 0.1s;
}

.inview1.show1{
	opacity: 1;
	transform: translateY(0px);	
}

.inview2{
	opacity: 0;
	transform: translateY(20px) translateX(-50%)!important;
	transition: 0.6s;
	transition-delay: 0.3s;
}

.inview2.show2{
	opacity: 1;
	transform: translateY(0px) translateX(-50%)!important;	
}

.inview3{
	opacity: 0;
	transition: 0.6s;
	transition-delay: 0.3s;
}

.inview3.show3{
	opacity: 1;
}

.add-animation{
	animation: fadezoom 10s linear 0s normal both;
}
@keyframes fadezoom {
0% {
	transform: scale(1);
}
100% {
	transform: scale(1.15);
}
}

.plus__wrapper {
	width: 90%;
	display: block;
	margin:0 auto;
	box-sizing: border-box;
}

.plus__wrapper2{
	width: 90%;
	display: block;
	margin:0 auto;
	box-sizing: border-box;
	padding:0 85px;
}

.lora{
	font-family: "Lora", serif;
}

.recruit__header{
	width: 100%;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 99;
	padding:20px 0;
	border-bottom: 1px solid #ACACAC;
	/* background: #f5f2ed; */
	background-image: url('../images/recruit/main-deco.jpg');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	height: auto!important;
}

.recruit__header .plus__wrapper{
	display: flex;
	align-items: center;
}

.recruit__header .plus__wrapper .header__left{
	width: 50%;
	line-height: 1;
}

.recruit__header .plus__wrapper .header__left h1{
	position: relative;
		width: 375px;
	max-width: 100%;
}

.recruit__header .plus__wrapper .header__left h1 a.link1{
	position: absolute;
	left: 0;
	top: 0;
	width: 50%;
	height: 100%;
	cursor: pointer;
}

.recruit__header .plus__wrapper .header__left h1 a.link2{
	position: absolute;
	left: 50%;
	top: 0;
	width: 50%;
	height: 100%;
	cursor: pointer;
}

.recruit__header .plus__wrapper .header__left h1 img{
	width: 100%;
}

.recruit__header .plus__wrapper .header__left h1 a{
	transition: 0.4s;
}

.recruit__header .plus__wrapper .header__left h1 a:hover{
	opacity: 0.7;
}

.recruit__header .plus__wrapper .header__right{
	width: 50%;
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

.recruit__header .plus__wrapper .header__right a#menu__button{
	width: 72px;
	cursor: pointer;
	transition: 0.4s;
	position: relative;
	top: 3px;
}

.recruit__header .plus__wrapper .header__right a#menu__button:hover{
	opacity: 0.7;
}

.recruit__header .plus__wrapper .header__right a#menu__button img{
	width: 100%;
}

.recruit__header .plus__wrapper .header__right .entry{
	width: 144px;
	display: block;
	text-align: center;
	text-decoration: none;
	font-size: 22px;
	color:white;
	height: 59px;
	line-height: 57px;
	box-sizing: border-box;
	border:2px solid #0F9460;
	transition: 0.4s;
	background: #0F9460;
	border-radius: 5px;
	margin-left: 15px;
}

.recruit__header .plus__wrapper .header__right .entry:hover{
	background: white;
	color: #0F9460;
}

.recruit__section1{
	padding-left: 5%;
	margin-top: 100px;
	height: 52vw;
	position: relative;
	overflow: hidden;
	background-image: url('../images/recruit/main-deco.jpg');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

/* .recruit__section1:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100% + 40px);
	background-image: url('../images/recruit/main-deco.jpg');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	z-index: 1;
} */

.slider__area{
	width: 80%;
	box-sizing: border-box;
	padding-right: calc(5% + 40px);
	position: absolute!important;
	right: 0;
	bottom: 40px;
	z-index: 2;
	line-height: 1;
}

.slider__area .slick-slide img {
	width: 100%;
	height: auto;
}

.slider__area picture{
	width: 100%;
}

.slider__area .slick-dots{
	position: absolute;
	right:calc(5% + 10px);
	bottom: 11vw;
	list-style: none;
}

.slider__area .slick-dots li{
	width: 6px;
	height: 6px;
	margin-bottom: 12px;
	border-radius: 50%;
	background:#ACACAC;
	transition: 0.4s;
	cursor: pointer;
}

.slider__area .slick-dots li.slick-active{
	background: #0F9460;
}

.slider__area .slick-dots li button{
	display: none;
}

.thm__area{
	position: absolute!important;
	right: -8px;
	bottom: 40px;
	width: 30%;
	padding:10px 10px 0;
	box-sizing: border-box;
	z-index: 2;
	background: #f5f2ed;
}

.thm__area img{
	width: 100%;
	height: auto;
}

.thm__area picture{
	width: 100%;
	height: auto;
	margin-right: 8px;
}

.thm__area .slick-list{
	/* margin-right: 50%; */
}

.rs1__textarea{
	position: absolute;
	left: 5%;
	z-index: 3;
	bottom:40px;
}

.rs1__textarea img{
	width: 173px;
	position: relative;
	top: 15px;
	z-index: 3;
}

.rs1__textarea h2{
	margin: 0;
	font-size: 5.46vw;
	color:#333333;
	line-height: 1.1;
	
}

.rs1__textarea h2 span{
	display: block;
	padding:10px;
	padding-right: 0;
	letter-spacing: 0.08em;
	background: #F9A825;
}

.rs1__textarea h2 span.width1{
	width:34.5vw;
	white-space: nowrap;
}

.rs1__textarea h2 span.width2{
	width:40vw;
	white-space: nowrap;
}

.rs1__textarea h2 .lora{
	font-size: 2.36vw;
	padding:10px;
	padding-right: 20px;
	position: relative;
	width: 24.5vw;
	white-space: nowrap;
}

.recruit__section2{
	background: #0F9460;
	padding:100px 0;
	color:white;
	position: relative;
}

.rs2__left{
	width: 50%;
	position: relative;
}

.rs2__left h3{
	position: relative;
}

.deco2{
	position: absolute;
	right: 0;
	bottom: -15px;
	width: 125px;
}

.rs2__right{
	width: 50%;
	box-sizing: border-box;
	padding-left: 84px;
}

.rs2__right .message1{
	width: 100%;
	display: block;
	margin-bottom: 50px;
	border-radius: 5px;
}

.rs2r__flex{
	display: flex;
	align-items: end;
}

.rs2r__flex img{
	width: 150px;
	margin-bottom: 0;
	border-radius: 5px;
}

.rs2r__flex p{
	font-size: 15px;
	margin: 0;
	font-weight: bold;
	padding-left: 15px;
}

.rs2r__flex p span{
	display: block;
	margin-top: 8px;
}

.rs2__left h2{
	font-size:7.81vw;
	line-height: 1;
	margin:20px 0 0;
	font-weight: 400;
}

.title-sub1{
	width: 50%;
	min-width: 244px;
	display: block;
	margin: 5px 0 60px;
}

.rs2__left h3{
	font-size:4.29vw;
	margin: 0;
	line-height: 1.3;
}

.rs2__left h3 span{
	position: relative;
	color:#F9A825;
	left: -2.5vw;
}

.rs2__left h3 span.color2{
	margin-right: -2.5vw;
}

.rs2__left .rs2__text{
	font-size: 15px;
	font-weight: bold;
	margin:20px 0 0;
}

.recruit__section2 .plus__wrapper2{
	display: flex;
}

.recruit__section3{
	padding:150px 0;
	position: relative;
	background: #f5f2ed;
}

.rs3__box{
	padding:100px 0;
	position: relative;
	background: #f5f2ed;
}

.rs3__box:before{
		content: '';
		display: block;
		width: 100%;
		height: 100%;
		box-sizing: border-box;
		position: absolute;
		top: 0;
		left: 0;
		border: 8px solid #333;
		z-index: 1;
		pointer-events: none;
}

.rs3__box:after{
	content: '';
	display: block;
	width: calc(100% - 6px);
	height: calc(100% - 6px);
	position: absolute;
	top: 3px;
	left: 3px;
	border: 3px solid #F9A825;
	z-index: 1;
	pointer-events: none;
}

.deco3{
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	width: 118px;
	top: -87px;
	z-index: 2;
}

.rs3__box h2{
	text-align: center;
	font-size: 7.81vw;
	line-height: 1;
	margin: 0;
	font-weight: 400;
}

.title-sub2{
	width: 30%;
	min-width: 244px;
	display: block;
	margin:15px auto 40px;
}

.rs3__box h3{
	text-align: center;
	font-size: 4.2vw;
	margin: 0 0 30px;
	line-height: 1.3;
}

.rs3__box h3 span{
	color:#0F9460;
}

.rs3__text{
	font-size: 15px;
	text-align: center;
	margin: 0;
	font-weight: bold;
}

.job__flex{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding:0 80px;
	margin-top: 50px;
}

.job__flex .job__col{
	width: 31%;
	position: relative;
}

.job__flex .job__col::before{
	content: '';
	position: absolute;
	left: -18px;
	top: -18px;
	width: 36px;
	height: 36px;
	background-image: url('../images/recruit/circle.png');
	background-size: cover;
}

.job__flex .job__col::after{
	content: '';
	position: absolute;
	right: -18px;
	top: -18px;
	width: 36px;
	height: 36px;
	background-image: url('../images/recruit/circle.png');
	background-size: cover;
}

.job__text:before{
	content: '';
	position: absolute;
	left: -18px;
	bottom: -18px;
	width: 36px;
	height: 36px;
	background-image: url('../images/recruit/circle.png');
	background-size: cover;	
}

.job__text:after{
	content: '';
	position: absolute;
	right: -18px;
	bottom: -18px;
	width: 36px;
	height: 36px;
	background-image: url('../images/recruit/circle.png');
	background-size: cover;	
}

.job__flex .job__col img{
	width: 100%;
}

.job__flex .job__col:nth-child(2){
	margin:0 3%;
}

.job__flex .job__col:nth-child(4){
	margin-right: 1.5%;
	margin-top: 35px;
}

.job__flex .job__col:nth-child(5){
	margin-left: 1.5%;
	margin-top: 35px;
}

.job__text{
	background:#0F9460;
	position: relative;
	padding:30px 15px 20px;
	margin-top: -10px;
}

.job__text .job__title{
	background: #F9A825;
	font-size: 20px;
	margin: 0;
	font-weight: bold;
	padding:0px 15px;
	position: absolute;
	line-height: 1.65;
	left: 15px;
	top: -15px;
}

.job__text .job__text__p{
	font-size: 15px;
	color:white;
	margin:0;
	font-weight: bold;
	line-height: 1.8;
}

.section__border{
	position: relative;
	border-top: 1px solid #333;
	margin: 190px auto 0;
	padding-top: 80px;
	width: calc(100% - 160px);
}

.title-sub3{
	width: 30%;
	min-width: 244px;
	display: block;
	margin: 15px auto 40px;
}

.wp__flex{
	display: flex;
}

.wp__left{
	width: 63%;
}

.wp__left h3{
	text-align: left;
}

.wp__right{
	width: 37%;
	box-sizing: border-box;
	padding-left: 30px;
}

.wp__right img{
	width: 100%;
	border-radius: 5px;
}

.wp__left p{
	font-size: 15px;
	font-weight: bold;
}

.wp__flex2{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 55px;
}

.wp__flex2 .wpf__col{
	width: 32%;
	background: white;
	text-align: center;
	box-sizing: border-box;
	padding:35px 10px;
	margin-bottom: 20px;
	border-radius: 5px;
	box-shadow: 4px 4px 10px 0 #CCC;
}

.wp__flex2 .wpf__col h3{
	font-size: 26px;
	font-weight: bold;
	color:#0F9460;
	margin:0 0 32px;	
	position: relative;
}

.wp__flex2 .wpf__col h3:before{
	content: '';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: -15px;
	width: 213px;
	max-width: 70%;
	height: 2px;
	background: #0F9460;
}

.wp__flex2 .wpf__col p{
	font-size: 15px;
	margin: 0;
	font-weight: bold;
}

.wp__flex2 .wpf__col img.icon1{
	width: 104px;
}

.wp__flex2 .wpf__col img.icon2{
	width: 65px;
}

.wp__flex2 .wpf__col img.icon3{
	width: 100px;
}

.wp__flex2 .wpf__col img.icon4{
	width: 80px;
}

.wp__flex2 .wpf__col img.icon5{
	width: 80px;
}

.wp__flex2 .wpf__col img.icon6{
	width: 71px;
}

.wp__flex2 .wpf__col img.icon7{
	width: 81px;
}

.wp__flex2 .wpf__col img.icon8{
	width:75px;
}

.wp__flex2 .wpf__col img.icon9{
	width:119px;
}

.wpf__img{
	height: 120px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 10px;
}

.box__width{
	width: calc(100% - 16px);
	margin: 100px auto 0;
	
}

.box__width img{
	width: 100%;
	height: 22.5vw;
	object-fit: cover;
	border-radius: 5px;
	display: block;
}

.box__width img.contain{
	object-fit: contain;
}

.box__width picture{
	width: 100%;
	margin-right: 55px;
}

.rs4__text{
	font-size: 15px;
	margin: 0;
	font-weight: bold;
	text-align: center;
	line-height: 1.7;
}

.wp__flex3{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 55px;
}

.wp__flex3 .wpf__col2{
	width: 32%;
	background: white;
	text-align: center;
	box-sizing: border-box;
	padding:24px 10px;
	margin-bottom: 20px;
	border-radius: 5px;
	box-shadow: 4px 4px 10px 0 #CCC;
}

.wp__flex3 .wpf__col2 .wpf__title{
	background: #333;
	color:white;
	font-size: 15px;
	margin:0 auto;
	width: 205px;
	padding:4px 0;
	max-width: 100%;
	border-radius: 5px;
	font-weight: bold;
}

.wp__flex3 .wpf__col2 .wpf__title.size2{
	width: 274px;
}

.recruit__section4{
	padding:130px 0 ;
	background-image: url('../images/recruit/sec4-bg.png');
	background-size: cover;
	background-position: top;
	position: relative;
}

.voice__flex{
	display: flex;
	justify-content: space-between;
	margin-top: 55px;
	padding:0 80px;
}

.voice__flex a{
	display: block;
	width: 32%;
	cursor: pointer;
	transition: 0.4s;
	border-radius: 5px;
	overflow: hidden;
}

.voice__flex a:hover{
	opacity: 0.6;
}

.voice__flex a img{
	width: 100%;
}

.voice__flex a .voice__text{
	background: #F9A825;
	position: relative;
	padding:34px 10px 25px;
	margin-top: -10px;
}

.voice__flex a .voice__text .voice__text1{
	position: absolute;
	font-size: 20px;
	font-weight: bold;
	top: -63px;
	left: 38px;

}

.voice__flex a .voice__text .voice__text1 span{
	background: white;
	padding:2px 10px;
	padding-right: 0;
	display: inline-block;
	margin:3px 0;
}

.voice__flex a .voice__text .voice__text1 span.pr__plus{
	padding-right: 10px;
}

.voice__flex a .voice__text .voice__text2{
	font-size: 20px;
	text-align: center;
	margin: 0 0 2px;
	font-weight: bold;
}

.voice__flex a .voice__text .voice__text3{
	font-size: 15px;
	text-align: center;
	margin: 0;
	font-weight: bold;
}

.recruit__section5{
	background: #F9A825;
	padding:160px 0;
	position: relative;
}

.faq__area{
	padding:0 130px;
	margin-top: 100px;
}

.faq__box{
	margin-bottom: 36px;
	box-shadow: 4px 4px 10px 0 #CCC;
}

.faq__box__title{
	background: white;
	position: relative;
	border-radius: 5px;
	padding:10px 65px;
	cursor: pointer;
}

.faq__box__title:before{
	content: '';
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translateY(-50%);
	width: 25px;
	height: 2px;
	background: #795548;
}

.faq__box__title:after{
	content: '';
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translateY(-50%) rotate(90deg);
	width: 25px;
	height: 2px;
	background: #795548;
	transition: 0.4s;
}

.faq-title-open.faq__box__title:after{
	transform: translateY(-50%) rotate(0deg);
}

.faq__box__content{
	background: #795548;
	position: relative;
	border-radius: 5px;
	padding:27px 65px 22px;
	margin-top: -5px;
	z-index: -1;
}

.faq__box__title p{
	font-size: 24px;
	margin: 0;
	font-weight: bold;
	position: relative;
}

.faq__box__title p span{
	position: absolute;
	left: -36px;
	top: 0;
}

.faq__box__content p{
	font-size: 16px;
	color:white;
	margin: 0;
	font-weight: bold;
	position: relative;	
}

.faq__box__content p span{
	font-size: 24px;
	margin: 0;	
	position: absolute;
	left: -36px;
	top: -8px;
}

.faq__box__content{
	display: none;
}

.recruit__footer{
	background: #0F9460;
	padding:62px 0;
	border-bottom: 1px solid #FFF;
}

.rf__flex{
	display: flex;
	position: relative;
	justify-content: space-between;
	padding:90px 130px;
	box-sizing: border-box;
	width: 1300px;
	margin: 0 auto;
	max-width: 100%;
}

.rf__flex:before{
	content: '';
	position: absolute;
	left: 50%;
	top: 0%;
	transform: translateX(-50%);
	width: 1px;
	height: 100%;
	background: white;
}

.rf__flex a{
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 45px;
	color:white;
	font-weight: bold;
	text-decoration: none;
	transition: 0.4s;
}

.rf__flex div{
	width: 50%;
}

.rf__flex a img{
	width: 68px;
	display: block;
	margin-left: 40px;
	position: relative;
	right: 0;
	transition: 0.4s;
}

.rf__flex a:hover img{
	position: relative;
	right: -10px;
}

.recruit__section3.job__page{
	padding-top: 0;
	margin-top: 230px;
}

.button__flex{
	display: flex;
	justify-content: center;
	margin-bottom: 50px;
}

.button__flex a{
	width: 320px;
	height: 69px;
	line-height: 65px;
	text-align: center;
	background: #0F9460;
	border:2px solid #0F9460;
	color:white;
	font-size: 24px;
	font-weight: bold;
	transition: 0.4s;
	margin:0 10px;
	cursor: pointer;
	border-radius: 5px;
	box-shadow: 4px 4px 10px 0 #CCC;
}

.button__flex a#tab2{
	background: #795548;
	border-color: #795548;
}

.button__flex a:hover{
	background: white;
	color: #0F9460;
}

.button__flex a#tab2:hover{
	background: white;
	color: #795548;
}

.job__page .rs3__box{
	padding:100px 130px;
}

.job__box{
	margin-bottom: 30px;
	box-shadow: 4px 4px 10px 0 #CCC;
}

.job__box .job__title{
	background: white;
	padding:18px 20px;
	padding-right: 60px;
	border-radius: 5px;
	position: relative;
	cursor: pointer;
}

.job__box .job__title:before{
	content: '';
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	width: 25px;
	height: 2px;
	background: #0F9460;
	transition: 0.4s;
}

.job__box .job__title:after{
	content: '';
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	width: 25px;
	height: 2px;
	background: #0F9460;
	transition: 0.4s;
	transform: translateY(-50%) rotate(90deg);
}

.job__box .job__title.job-title-open:after{
	transform: translateY(-50%) rotate(0deg);
}

.job__box .job__title p{
	font-size: 20px;
	font-weight: bold;
	margin: 0;
}

.job__box .job__content{
	box-sizing: border-box;
	padding:30px;
	background:#0F9460;
}

.job__box .job__content .job__table{
	display: flex;
	flex-wrap: wrap;
	line-height: 1.6;
}

.job__box .job__content .job__table .job__left{
	width: 173px;
	box-sizing: border-box;
	background: #F5F2ED;
	padding:16px;
	display: flex;
	align-items: center;
	border-bottom: 2px solid #F5F2ED;
}

.job__box .job__content .job__table .job__left p{
	font-size: 15px;
	margin: 0;
	font-weight: bold;
}

.job__box .job__content .job__table .job__right{
	width: calc(100% - 173px);
	box-sizing: border-box;
	background: white;
	padding:16px;
	border-bottom: 2px solid #F5F2ED;
}

.job__box .job__content .job__table .job__right p{
	font-size: 15px;
	margin: 0;
	font-weight: 400;
}

.job__box .job__content .job__button{
	display: block;
	width: 375px;
	max-width: 100%;
	text-align: center;
	font-size: 25px;
	text-decoration: none;
	background: #F5F2ED;
	color:#333;
	padding:10px 0;
	margin:30px auto 0;
	font-weight: bold;
	transition: 0.4s;
}

.job__box .job__content .job__button:hover{
	opacity: 0.7;
}

.job__content{
	display:none;
}

.rs3__box h3.job__title2{
	margin: 140px 0 30px;
	padding-left: 100px;
	position: relative;
	font-size: 24px;
	font-weight: bold;
	text-align: left;
}

.job__title2:before{
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 77px;
	height: 2px;
	background: #333;
}

.job__box.color2 .job__title:before , .job__box.color2 .job__title:after{
	background: #795548;
}

.job__box.color2 .job__content{
	background: #795548;
}

.join__form{
	margin-top: 70px;
}

.join__form input , .join__form textarea{
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	border: none;
	outline: none;
	background: transparent;
	padding: 0;
	margin: 0;
	font-family: inherit;
	font-size: inherit;
	color: inherit;
	box-sizing: border-box;
	background: white;
	box-sizing: border-box;
	font-size: 16px;
	font-weight: 500;
	border:1px solid #858585;
	color:#333;
	padding: 12px 10px;
	width: 100%;
	letter-spacing: 0.04em;
	line-height: 1.6;
	font-family: 'Noto Serif JP', serif;
	border-radius: 5px;
}

.join__form textarea{
	resize: none;
	height: 240px;
}

.contact__flex{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.contact__flex .contact__col{
	width: 48%;
	margin-bottom: 55px;
}

.contact__flex .contact__col p{
	font-size: 16px;
	margin:0 0 15px;
	font-weight: bold;
}

.contact__flex .contact__col p span.must{
	display: inline-block;
	color:white;
	background:#E45730;
	font-size: 10px;
	font-weight: bold;
	padding:3px 8px;
	margin-left: 10px;
}

.contact__flex .contact__col.w100{
	width: 100%;
}

.privacy__text{
	font-size: 16px;
	font-weight: 500;
	margin: 0 0 45px;
	text-align: center;
}

.privacy__text a{
	color:#0F9460;
	border-bottom: 1px solid #0F9460;
	padding-bottom: 3px;
	transition: 0.4s;
}

.privacy__text a:hover{
	opacity: 0.7;
}

.join__form .submit input{
	width: 100%;
	border:2px solid #0F9460;
	background: #0F9460;
	color:white;
	font-size: 14px;
	font-weight: bold;
	display: block;
	margin:0 auto;
	padding:20px 10px;
	cursor: pointer;
	transition: 0.4s;
}

.join__form .submit input:hover{
	opacity: 0.7;
}

.join__form .submit p{
	width: 330px;
	max-width: 100%;
	margin:0 auto;
	position: relative;
}

.join__form .submit p:after{
	content: '';
	position: absolute;
	right: 15px;
	top: 28px;
	width: 11px;
	height: 11px;
	background-image: url('../images/recruit/arrow2.png');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	transition: 0.4s;
	pointer-events: none;
	z-index: 3;
}

.data__text{
	text-align: right;
	font-size: 12px;
	font-weight: bold;
	width: 100%;
}

.wp__flex3 .wpf__col2 img{
	max-width: 100%;
	display: block;
	margin:0 auto;
}

.wp__flex3 .wpf__col2 img.data3{
	width: 209px;
	margin-top: 15px;
}

.wp__flex3 .wpf__col2 img.data4{
	width: 267px;
	margin: 25px auto;
}

.wp__flex3 .wpf__col2 img.data5{
	width: 209px;
	margin-top: 15px;
}

.wp__flex3 .wpf__col2 img.data6{
	width: 237px;
	margin-top: 40px;
}

.wp__flex3 .wpf__col2 img.data6 , .wp__flex3 .wpf__col2 img.data9{
	width: 237px;
	margin-top: 40px;
}

.wp__flex3 .wpf__col2 img.data6{
	margin-top: 25px;
}

.wp__flex3 .wpf__col2 img.data9{
	width: 200px;
	margin-top: 35px;
}

.wp__flex3 .wpf__col2 img.data8{
	width: 283px;
	margin-top: 10px;
}

.wp__flex3 .wpf__col2 img.data7{
	width: 275px;
	margin-top: 10px;
}

.wpf__text1{
	font-size: 110px;
	line-height: 1;
	color:#0F9460;
	font-weight: bold;
	margin:10px 0;
	text-align: center;
}

.wpf__text2{
	font-size: 55px;
	line-height: 1;
	color:#0F9460;
	font-weight: bold;
	margin:10px 0 15px;
	text-align: center;
}

.wpf__text3{
	font-size: 15px;
	margin:12px 0 0;
	text-align: center;
	font-weight: bold;
}


.popup1 , .popup2 , .popup3{
  display: none;
  height: 100vh;
  width: 100%;
  background:rgba(51,51,51,0.7);
  opacity:1;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999999999999;
  
}

.outside1 , .outside{
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 999;
  cursor: pointer;
}

.pop .content{
  line-height: 1.7;
  position: fixed;
  z-index: 99999;
  top: 50%;
  left: 50%;
  width:800px;
/*  min-height: 680px;*/
  box-sizing: border-box;
  margin:0;  
  max-width: 92%;
  max-height: 95vh;
  overflow-y:auto;
	background: white;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    display:block;
		border-radius: 5px;
}


.pop .content__wrap{
	padding:58px;
}

.pop .pop__flex{
	display: flex;
	align-items: center;
	margin-bottom: 40px;
}

.pop .pop__left{
	width: 50%;
	box-sizing: border-box;
	padding-right: 20px;
}

.pop .pop__left img{
	width: 100%;
	border-radius: 5px;
}

.pop .pop__right{
	width: 50%;
	box-sizing: border-box;
	padding-left: 20px;
}

.pop .pop__right p.pop__text1{
	font-size: 35px;
	font-weight: 500;
	margin:0 0 5px;
}

.pop .pop__right p.pop__text2{
	font-size: 15px;
	font-weight: bold;
	margin:0 0 20px;
}

.pop .pop__right p.pop__text3{
	font-size: 26px;
	margin: 0;
	font-weight: bold;
}

.pop .pop__right p.pop__text3 span{
	display: inline-block;
	background: #F9A825;
	padding:0 10px;
	padding-right: 0;
	margin:5px 0;
}

.pop .pop__right p.pop__text3 span.pr__plus{
	padding-right: 10px;
}


.pop__text4{
	font-size: 25px;
	font-weight: 500;
	margin:0 0 18px;
	padding-left: 32px;
	position: relative;
}

.pop__text4:before{
	content: '';
	position: absolute;
	width: 28px;
	height: 1px;
	background: #F9A825;
	left: 0;
	top:22px;
}

.pop__text5{
	font-size: 15px;
	font-weight: bold;
	line-height: 1.7;
	margin:0 0 26px;
}

.close__button{
	position: absolute;
	right: 25px;
	top: 25px;
	width: 33px;

}

.close__button img{
	width: 100%;
	cursor: pointer;
}

.thm__area .slick-list .slick-track{
		margin-left: -50%;
}

.rs2__left .rs2__text{
	position: relative;
	z-index: 2;
}

#recruit-nav{
	position: fixed;
  overflow-y: auto;
  min-height: 100vh;
  max-height: 120vh;
	height: 100%;
  width: 100%;
	padding:28px 0 100px;
  top: 0;
	background: rgba(15,148,96,0.9);
	transition: 0.4s;
	box-sizing: border-box;
	opacity: 0;
	pointer-events: none;
	z-index: -1;
}

#recruit-nav.in{
	opacity: 1;
	pointer-events: auto;
	z-index: 999;
}

.nav__area{
	width: 100%;
	min-height: 100%;
	box-sizing: border-box;
	/* overflow-y: auto; */
	
}

#nav__close{
	display: block;
	width: 69px;
	margin:0 auto;
	transition: 0.4s;
	cursor: pointer;
}

#nav__close:hover{
	opacity: 0.7;
}


#nav__close img{
	width: 100%;
}

.nav__list{
	margin:75px 0 0;
	box-sizing: border-box;
	padding:0 100px;
	list-style: none;
	padding: 0;
	display: flex;
}

.nav__list div{
	width: 50%;
}

.nav__list div li{
	text-align: center;
	margin-bottom: 40px;
}

.nav__list div li a{
	font-size: 20px;
	text-align: center;
	display: inline-block;
	color:white;
	text-decoration: none;
	font-weight: bold;
	transition: 0.3s;
}

.nav__list div li a span{
	display: inline-block;
	position: relative;
	font-size: 3.9vw;
	font-weight: 400;
	transition: 0.3s;
	margin-bottom: 10px;
}

.nav__list div li a span:before{
	content: '';
	position: absolute;
	left: -60px;
	top: 50%;
	transform: translateY(-50%) translateX(100%);
	width: 45px;
	height: 45px;
	background-image: url('../images/recruit/nav-arrow.png');
	background-size: cover;
	opacity:0;
	transition: 0.3s;
}

.nav__list div li a:hover span:before{
	opacity:1;
	transform: translateY(-50%) translateX(0%);
}

.nav__list div li a:hover span{
	transform: translateX(20px);
}

.link__position{
	display: block;
	position: relative;
	top: -200px;
}

.link__position2{
	display: block;
	position: relative;
	top: -320px;
}

.rs3__box h3.job__title2.mt__half{
	margin-top: 70px;
}



















/* 全体の余白調整 */
@media screen and (max-width: 1500px){

	.plus__wrapper{
		width: 100%;
		padding:0 50px;
		box-sizing: border-box;
	}

	.recruit__footer .plus__wrapper2{
		padding:0 50px;
	}

	.recruit__header .plus__wrapper{
		padding-right: 20px;
	}

	.recruit__section1{
		padding-left: 50px;
		padding-right: 80px;
		width: 100%;
		box-sizing: border-box;
	}

	.rs1__textarea{
		left: 50px;
	}

	.slider__area{
		/* width: 100%; */
		padding-right: 20px;
		right: 60px;
	}

	.slider__area .slick-dots{
		right: -10px;
	}

	.recruit__section1{
		min-height: 640px;
	}

	.plus__wrapper2{
		width: 100%;
	}

	.rf__flex{
		padding:90px 0;
	}

	.job__page .rs3__box{
		padding:100px 50px;
	}
}

#recruit .sp{
	display: none!important;
}

/* SPレイアウトに変更 */
@media screen and (max-width: 640px){

	/* もっと見るボタンで隠す項目 */
	.wpf__col--hidden,
	.wpf__col2--hidden {
		display: none!important;
	}

	.job__box{
		margin-bottom: 15px;
	}

	.job__flex .job__col img{
		height: 40vw;
		object-fit: cover;
	}

	#nav__close{
		margin-left: auto;
		margin-right: 15px;
	}
	
	.wpf__col--hidden.wpf__col--show,
	.wpf__col2--hidden.wpf__col--show {
		display:flex!important;
	}

	.wp__flex3 .wpf__col2.wpf__col2--hidden.wpf__col--show{
		display:block!important;
	}

	#recruit .pc{
		display: none!important;
	}

	#recruit .sp{
		display: block!important;
	}

	.wpf__more-link{
		display: block;
		background-image: url('../images/recruit/more-btn.png');
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
		width: 100%;
		font-size: 16px;
		font-weight: bold;
		color: white;
		text-align: center;
		padding: 2vw 0;
		cursor: pointer;
		transition: 0.3s;
	}

	.wpf__more-btn{
		width: 100%;
	}

	.data__text{
		width:100%;
		text-align: right;
		margin-bottom: 20px;

	}





	.link__position{
		display: block;
		position: relative;
		top: -130px;
	}
	
	.link__position2{
		display: block;
		position: relative;
		top: -230px;
	}
	

	.nav__list div li a span:before{
		/* display: none; */
	}

	.nav__list div li a span{
		transform: translateX(0)!important;
	}

	.nav__list div li a span:before{
		width: 25px;
		height: 25px;
		left: -35px;
	}

	#nav__close{
		width: 56px;
	}

	.nav__list{
		margin-top: -15px;
		display: block;
	}

	.nav__list div li a{
		font-size:14px;
	}


	.nav__list div li a span{
		font-size: 30px;
		margin-bottom: 7px;
	}


	.nav__list div li{
		margin-bottom: 30px;
	}


	.nav__list div{
		width: 100%;
	}

	.recruit__header{
		margin-top: 0;
		padding:15px 0;
	}

	.plus__wrapper ,.plus__wrapper2{
		padding: 0 10px;
	}
		.recruit__header .plus__wrapper{
			padding-right: 10px;
		}


	.recruit__header .plus__wrapper .header__left{
		width: 55%;
		
	}
		.recruit__header .plus__wrapper .header__left h1{
			display: flex;
			flex-direction: column;
		}

	.recruit__header .plus__wrapper .header__right{
		width: 45%;
		box-sizing: border-box;
		padding-left: 15px;
	}



	.recruit__header .plus__wrapper .header__right a#menu__button{
		width: 45px;
	}

	.recruit__header .plus__wrapper .header__right .entry{
		width: 60px;
		height: 40px;
		font-size: 12px;
		margin-left: 10px;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.recruit__header .plus__wrapper{
		align-items: center;
	}

	.recruit__section1{
		min-height:auto;
		padding-left: 15px;
		padding-right: 30px;
		height: 145vw;
		margin-top: 70px;
		padding-bottom: 110px;
		overflow: visible;
	}

	.recruit__section1 .slider__area img{
		height: 106vw;
		object-fit: cover;
	}

	.rs1__textarea{
		bottom: 8vw;
	}

	.rs1__textarea h2 .lora{
		top: 0;
		font-size: 16px;
	}

	.rs1__textarea h2{
		font-size: 30px;
	}

	.rs1__textarea h2 span{
		padding:5px;
	}

	.rs1__textarea h2 .lora{
		font-size:16px;
		padding:10px;
		top: -8px;
		width: 165px;
	}

	.slider__area{
		width: 100%;
		padding:0;
		right: 0;
		bottom: inherit;
		top: 0;
		overflow: hidden;
	}

	.rs1__textarea{
		width: 100%;
	}

	.slider__area .slick-dots{
		display: none!important;
	}

	.rs1__textarea img{
		position: absolute;
		right: 15px;
		top: 32%;
		width: 90px;
	}

	.rs1__textarea{
		left: 0;
	}

	.rs1__textarea h2 span.width1{
		width: 195px;
	}

	.rs1__textarea h2 span.width2{
		width: 225px;
	}

	.recruit__section2 .plus__wrapper2{
		display: block;
	}

	.rs2__left{
		width: 100%;
	}

	.rs2__right{
		width: 100%;
		padding: 0;
		margin-top: 40px;
	}

	.rs2__left h2 , .rs3__box h2{
		font-size: 50px;
		text-align: center;
	}

	.rs2__left h2{
		margin-top: 0;
	}

	.rs2__left h3{
		font-size: 32px;
		line-height: 1.5;
	}

	.rs3__box h3{
		font-size: 28px;
		line-height: 1.5;
	}

	.rs3__text{
		font-size: 14px;
	}

	.wp__left h3{
		text-align: center;
	}

	.title-sub2 , .title-sub3{
		min-width: 180px;
		margin: 10px auto 30px;
	}

	.title-sub1{
		min-width: auto;
		width: 150px;
		margin:15px auto 40px;
	}

	.recruit__section2{
		padding:50px 0;
	}

	.rs2__left .rs2__text{
		font-size: 14px;
		line-height: 1.8;
	}

	.rs2__right .message1{
		margin-bottom: 35px;
	}

	.rs2r__flex p{
		font-size: 14px;
	}

	.rs2r__flex p span{
		margin-top: 5px;
	}

	.deco3{
		width: 70px;
		top: -50px;
	}

	.recruit__section3{
		padding:100px 0;
	}

	.rs3__box{
		padding:75px 15px;
	}

	.job__flex{
		display: block;
		padding:0;
	}

	.job__flex .job__col{
		width: 100%;
		margin:0 20px!important;
		pointer-events: none;
		position: relative;
		z-index: 3;
	}

	.slider-4 .prev.slick-arrow{
		position: absolute;
		left: 38px;
		top: 45%;
		transform: translateY(-50%);
		width: 25px;
		height:auto;
		z-index: 2;
	}

	.slider-4 .next.slick-arrow{
		position: absolute;
		right: 38px;
		top: 45%;
		transform: translateY(-50%);
		width: 25px;
		height:auto;
		z-index: 2;
	}

	.job__flex{
		width: calc(100% + 20px);
		position: relative;
		left: -10px;
	}

	.rs3__box:before{
		border-width: 4px;
	}

	.rs3__box:after{
		width: calc(100% - 4px);
    height: calc(100% - 4px);
    position: absolute;
    top: 2px;
    left: 2px;
    border: 2px solid #F9A825;
	}

	.job__text:before{
		width: 28px;
		height: 28px;
		left: -14px;
		bottom: -14px;
	}

	.job__text:after{
		width: 28px;
		height: 28px;
		right: -14px;
		bottom: -14px;
	}

	.job__flex .job__col::before{
		width: 28px;
		height: 28px;
		left: -14px;
		top: -14px;
	}

	.job__flex .job__col::after{
		width: 28px;
		height: 28px;
		right: -14px;
		top: -14px;
	}

	.job__text .job__text__p{
		font-size: 14px;
	}

	.job__text .job__title{
		font-size: 18px;
		top: -13px;
	}

	.section__border{
		width: 100%;
	}

	.wp__flex{
		display: block;
	}

	.wp__left{
		width: 100%;
	}

	.wp__right{
		width: 100%;
		padding: 0;
		margin-top: 35px;
	}

	.wp__left p{
		font-size: 14px;
		text-align: center;
	}

	.wp__flex2 .wpf__col{
		width: 100%;
		display: flex;
		align-items: center;
		padding:15px;
	}

	.wpf__img{
		height: auto;
		width: 30%;
		box-sizing: border-box;
		padding:0 10px;
		margin-bottom: 0;
	}

	.wpf__img img{
		max-width: 100%;
	}

	.wp__flex2 .wpf__col h3{
		text-align: left;
	}

	.wp__flex2 .wpf__col h3:before{
		width: 100%;
	}

	.wp__flex2 .wpf__col p{
		text-align: left;
	}


	.wp__flex2 .wpf__col .wpf__text{
		width: 70%;
		box-sizing: border-box;
		padding-left: 15px;
	}

	.wp__flex2 .wpf__col h3{
		font-size: 16px;
		margin-bottom: 20px;
	}

	.wp__flex2 .wpf__col img.icon2{
		width: 50px;
	}

	.wp__flex2 .wpf__col img.icon4 , .wp__flex2 .wpf__col img.icon5 , .wp__flex2 .wpf__col img.icon6 ,
	.wp__flex2 .wpf__col img.icon7 , .wp__flex2 .wpf__col img.icon8 , .wp__flex2 .wpf__col img.icon9{
		width: 55px;
	}

	.wp__flex2 .wpf__col h3 span{
		display: block;
	}

	.wp__flex2 .wpf__col p br{
		display: none;
	}

	.wp__flex2 .wpf__col h3:before{
		width: 100%;
		max-width: 100%;
		height: 1px;
		bottom: -10px;
	}

	.wp__flex2 .wpf__col p{
		font-size: 12px;
	}

	.box__width img{
		height: 46vw;
		
	}

	.box__width picture{
		margin-right: 30px;
	}

	.box__width {
		width: calc(100% + 20px);
		position: relative;
		left: -10px;
		margin-top: 60px;
	}

	.section__border{
		margin-top: 120px;
		padding-top: 65px;
	}

	.wp__flex2{
		margin-top: 30px;
	}

	.rs4__text{
		font-size: 12px;
		text-align: center;
		line-height: 1.8;
	}

	.wp__flex3 .wpf__col2{
		width: 49%;
		padding:20px 10px ;
	}

	.wp__flex3 .wpf__col2 .wpf__title{
		font-size: 13px;
		line-height: 1.4;
		padding:6px 0;
	}

	.recruit__section4{
		padding:80px 0;
		background-image:url(../images/recruit/sec4-bg-sp.jpg);
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
		}

		.voice__flex{
			display: block;
			padding: 0;
		}

		.voice__flex a{
			width: 100%;
			margin:0 0 15px;
		}

		.voice__flex a:last-child{
			margin-bottom: 0;
		}

		.voice__flex a .voice__text .voice__text1{
			left: 15px;
		}

		.recruit__section5{
			padding:100px 0;
		}

		.faq__area{
			padding: 0;
			margin: 0;
		}

		.faq__box__title{
			padding:10px 40px;
		}

		.faq__box__title p{
			font-size: 17px;
		}

		.faq__box__title p span{
			left: -28px;
			top: -1px;
		}

		.faq__box__title:after , .faq__box__title:before{
			right: 10px;
			width: 15px;
		}

		.faq__box{
			margin-bottom: 20px;
		}

		.faq__box__content{
			padding: 25px 40px 20px;
		}

		.faq__box__content p{
			font-size: 14px;
		}

		.faq__box__content p span{
			font-size: 18px;
			left: -28px;
			top: -5px;
		}


		.rs3__box .faq__box:last-child{
			margin-bottom: 0;
		}

		.recruit__footer{
			display: block;
		}

		.rf__flex{
			padding:0;
			display: block;
		}

		.rf__flex a{
			justify-content: center;
		}

		.rf__flex:before{
			width: 100%;
			height: 1px;
		}

		.rf__flex a{
			font-size: 28px;
			margin:30px 0;
		}

		.rf__flex a img{
			width: 44px;
			margin-left: 30px;
		}

		.rf__flex:before{
			top: 50%;
			transform: translateY(-50%) translateX(-50%);
		}

		.recruit__footer{
			padding:40px 0;
		}

		.thm__area{
			display: none!important;
		}

		.wpf__text1{
			font-size: 56px;
		}

		.wpf__text2{
			font-size: 30px;
		}

		.wpf__text3{
			font-size: 12px;
			text-align: left;
		}

		.pop .content__wrap{
			padding:40px 30px;
		}

		.pop .content:before{
			content: '';
			position:absolute;
			left: 0;
			top: 0;
			width: 100%;
			height: 60px;
			background: #F9A825;
			border-bottom-left-radius: 5px;
			border-bottom-right-radius: 5px;
			z-index: -1;
		}

		.pop .pop__flex{
			display: block;
		}

		.pop .pop__left{
			width: 70%;
			margin:0 auto;
			padding: 0;
		}

		.pop .pop__right{
			width: 100%;
			padding: 0;
		}

		.pop .sp__flex{
			display: flex;
			justify-content: center;
			align-items: center;
			margin:8px 0 20px;
		}

		.pop .pop__right p.pop__text1{
			font-size: 17px;
			margin: 0;
			margin-right: 10px;
		}

		.pop .pop__right p.pop__text3 span{
			margin: 0;
		}

		.pop .pop__right p.pop__text2{
			font-size: 12px;
			margin: 0;
		}

		.pop .pop__right p.pop__text3{
			font-size: 22px;
		}

		.pop .pop__flex{
			margin-bottom: 20px;
		}

		.pop__text4{
			font-size: 19px;
			margin-bottom: 14px;
		}

		.pop__text5{
			font-size: 14px;
		}

		.close__button{
			right: 20px;
    top: 18px;
    width: 25px;
		}

		.pop__text4:before{
			width: 22px;
			top: 15px;
		}

		.deco2{
			bottom: 0;
			right: 5vw;
			width: 60px;
		}

		.rs2r__flex img{
			width: 100px;
		}

		.recruit__section2 .plus__wrapper2{
			padding:0 30px;
		}

		.recruit__section3.job__page{
			margin-top: 160px;
		}

		.job__page .rs3__box{
			padding:65px 20px;
		}

		.button__flex a{
			width: 150px;
			height: 50px;
			font-size: 18px;
			line-height: 46px;
		}

		.job__box .job__title p{
			font-size: 16px;
		}

		.job__box .job__title:before , .job__box .job__title:after{
			width: 15px;
			height: 1px;
			right: 10px;
		}

		.job__box .job__title{
			padding-right: 40px;
		}

		.rs3__box h3.job__title2{
			margin:100px 0 20px;
			padding-left: 50px;
			font-size: 18px;
		}

		.job__title2:before{
			width: 35px;
			height: 1px;
		}

		.job__box .job__content{
			padding: 10px 10px 30px;
		}

		.job__box .job__content .job__table{
			display: block;
		}

		.job__box .job__content .job__table .job__left{
			width: 100%;
			padding:12px ;
		}

		.job__box .job__content .job__table .job__right{
			width: 100%;
			padding:12px ;
		}

		.job__box .job__content .job__table .job__left{
			font-size: 15px;
		}

		.job__box .job__content .job__table .job__right p{
			font-size: 14px;
		}

		.job__box .job__content .job__button{
			width: 240px;
			font-size: 20px;
		}

		.contact__flex{
			display: block;
		}

		.contact__flex .contact__col{
			width: 100%;
			margin-bottom: 30px;
		}

		.join__form textarea{
			height: 200px;
		}

		.join__form input, .join__form textarea{
			font-size: 14px;
		}

		.privacy__text a{
			padding-bottom: 0;
		}

		.privacy__text{
			font-size: 13px;
			line-height: 1.7;
		}

		.recruit__footer .plus__wrapper2{
			padding:0 45px;
		}

		.rf__flex a{
			justify-content: space-between;
			letter-spacing: 0.1em;
		}

		.voice__flex a{
			display: flex;
			align-items: stretch;
			border-radius: 5px;
			overflow: hidden;
		}

		.voice__flex a picture{
			width: 50%;
			line-height: 1;
		}

		.voice__flex a img{
			width: 100%;
			height: 100%;
			object-fit: cover;
			border-radius: 0;
		}

		.rf__flex div{
			width: 100%;
		}

		.voice__flex a .voice__text{
			margin: 0;
			width: 50%;
			padding: 35px 15px;
		}

		.voice__flex a .voice__text .voice__text1{
			position: relative;
			top: 0;
			left: 0;
			font-size: 12px;
		}

		.voice__flex a .voice__text .voice__text2{
			text-align: left;
			font-size: 12px;
			margin-top: 10px;
		}

		.voice__flex a .voice__text .voice__text3{
			font-size:10px;
			text-align: left;
		}

		.voice__flex a .voice__text .voice__text1 span{
			padding-left: 5px;
			letter-spacing: -0.02em;
			white-space: nowrap;
		}





}










