@charset "UTF-8";
/*============================================================================================
      Header
=============================================================================================*/
.w_Header{
	padding-left: 40px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100000;
	background-color: #fff;
	height: 60px;
}
.Header{
	height: 100%;
	z-index: 1000;
}
.Header_logo_grp{
	height: 100%;
}
.Header_logo_img{
	display: block;
}
@media (max-width: 896px){
	.Header{
		position: relative;
	}
}
@media (max-width: 576px){
	.w_Header{
		padding-left: 5.3vw;
		height: 16vw;
	}
	.Header_logo{
		width: 27vw;
	}
}

/*     Header Navigation
=====================================================*/
.w_HeadNav{
	margin: 0 0 0 auto;
}
.HeadNav_grp01{
}
.HeadNav_lst{
}
/* TOP */
.HeadNav_lst_grp:nth-of-type(1){
	order: 1;
}
/* 会社概要 */
.HeadNav_lst_grp:nth-of-type(2){
	order: 4;
}
/* 求人一覧 */
.HeadNav_lst_grp:nth-of-type(3){
	order: 3;
}
/* 転職をお考えの皆様へ, 企業人事の皆様へ */
.HeadNav_lst_grp:nth-of-type(4){
	order: 2;
}
/* お問い合わせ */
.HeadNav_lst_grp:nth-of-type(5){
	order: 5;
}
.HeadNav_lst_itm__en{
	display: none;
}
.HeadNav_lst_itm{
	font-size: 1.3rem;
	font-weight: bold;
	line-height: 1;
	margin-right: 28px;
	cursor: pointer;
	transition: color .2s;
	position: relative;
}
.HeadNav_lst_itm::after{
	width: 0;
	height: 3px;
	left: 0;
	bottom: 0;
	background-color: #04A5BA;
	transition: width .2s;
}
.HeadNav_lst_itm:hover{
	color: #04A5BA;
}
.HeadNav_lst_itm:hover::after{
	width: 100%;
}
.HeadNav_lst_itm a{
	padding: 23px 0;
	display: block;
}
.HeadNav_lst_itm.sp {
	display: none;
}
.HeadNav_acdLst {
	display: none;
}

.HeadNav_subLst{
	display: none;
}
.HeadNav_subLst_itm{
}
.HeadNav_subLst_itm a{
}
.HeadNav_lst_itm__sp{
	display: none;
}

/* btn common */
.HeadNav_grp_btn{
	font-size: 1.3rem;
	line-height: 1;
	margin-right: 0;
}
.HeadNav_grp_btn a{
	padding: 23px 17px;
	display: block;
}

/* btn unique 01 */
/* 初回暫定対応用　色を黒に戻す場合は以下コメントアウト */
@media (min-width: 1201px){
	.HeadNav_grp01_btn{
		color: #04A5BA;
	}
	.HeadNav_grp01_btn::before{
		background-color: #04A5BA;
	}
	.HeadNav_grp01_btn:hover{
		color: #222;
	}
	.HeadNav_grp01_btn:hover::after{
		background-color: #222;
	}
}
/* 初回暫定対応用　色を黒に戻す場合は上記コメントアウト */


/* btn unique 02 */
.HeadNav_grp02_lst{
	height: 100%;
}
.HeadNav_grp02{
}
.HeadNav_grp02_btn{
	color: #04A5BA;
	margin-left: 1px;
}
.HeadNav_grp02_btn::before{
	background-color: #04A5BA;
}
.HeadNav_grp02_btn:hover{
	color: #222;
}
.HeadNav_grp02_btn:hover::after{
	background-color: #222;
}


@media (min-width: 1201px){
	.js_acd {
		position: relative;
	}
	.HeadNav_acdLst {
		position: absolute;
		width: -webkit-max-content;
		width: -moz-max-content;
		width: max-content;
		padding-top: 15px;
		top: 60px;
		left: 50%;
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
		z-index: 1;
	}
	.HeadNav_acdLst::before {
		content: '';
		position: absolute;
		top: 7px;
		left: 0;
		right: 0;
		margin: auto;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 7px 8px 7px;
		border-color: transparent transparent #11A3B8 transparent;
	}
	.HeadNav_acdItm {
		padding: 20px 15px;
		background-color: #04A5BA;
		overflow: hidden;
	}
	.HeadNav_acdItm:first-child {
		border-radius: 5px 5px 0 0;
	}
	.HeadNav_acdItm:last-child {
		border-radius: 0 0 5px 5px;
	}
	.HeadNav_acdItm + .HeadNav_acdItm {
		padding-top: 0;
	}
	.HeadNav_acdItm a {
		display: inline-block;
		padding: 0;
		padding-bottom: 5px;
		position: relative;
		color: #fff;
		font-weight: bold;
	}
	.HeadNav_acdItm a::after{
		content: '';
		position: absolute;
		width: 0;
		height: 2px;
		left: 0;
		bottom: 0;
		background-color: #fff;
		transition: width .2s;
	}
	.HeadNav_acdItm:hover a::after{
		width: 100%;
	}
}

/* 1200px以下でハンバーガーメニューに切り替え */
@media (max-width: 1200px){
	.HeadNav_grp01{
		width: 100vw;
		height: 100vh;
		background-color: #fff;
		position: absolute;
		top: 60px;
		right: 0;
		overflow-y: scroll;
		z-index: 1000;
		display: none;
		padding-bottom: 200px;
	}
	.HeadNav_lst{
		width: 90vw;
		margin: 0 auto;
  justify-content: space-between;
		align-items: flex-start!important;
		padding-top: 60px;
	}
	.HeadNav_lst_grp{
		width: 47.5%;
		display: block;
		margin-top: 60px;
	}
	/* TOP */
	.HeadNav_lst_grp:nth-of-type(1){
		width: 100%;
		margin-top: 0;
	}
	/* 会社概要 */
	.HeadNav_lst_grp:nth-of-type(2){
		order: 2;
	}
	/* 求人一覧 */
	.HeadNav_lst_grp:nth-of-type(3){
		order: 3;
	}
	/* 転職をお考えの皆様へ, 企業人事の皆様へ */
	.HeadNav_lst_grp:nth-of-type(4){
		order: 4;
	}
	/* お問い合わせ */
	.HeadNav_lst_grp:nth-of-type(5){
		order: 5;
	}
	.HeadNav_lst_itm__en{
		display: block;
		margin-bottom: 25px;
		line-height: 0;
	}
	.HeadNav_lst_itm{
		font-size: 1.5rem;
		line-height: 1.6;
		margin-right: 0;
	}
	.HeadNav_lst_itm + .HeadNav_lst_itm{
		margin-top: 25px;
	}
	.HeadNav_subLst + .HeadNav_lst_itm{
		margin-top: 25px;
	}
	.HeadNav_lst_itm::after{
		display: none;
	}
	.HeadNav_lst_itm a{
		padding: 0;
	}
	.HeadNav_lst_itm.sp {
		display: block;
	}
	.HeadNav_subLst{
		display: block;
	}
	.HeadNav_subLst_itm{
		font-size: 1.3rem;
		font-weight: bold;
		line-height: 1.6;
		transition: color .2s;
	}
	.HeadNav_subLst_itm{
		margin-top: 25px;
	}
	.HeadNav_subLst_itm:hover{
		color: #04A5BA;
	}
	.HeadNav_subLst_itm::before{
		width: 10px;
		height: 8px;
		background-image: url(../img/common/ic_arrow.svg);
		top: 5px;
		left: 0;
	}
	.HeadNav_subLst_itm a{
		padding-left: 21px;
		display: block;
	}
	.HeadNav_lst_itm__sp{
		display: block;
	}
	.HeadNav_grp01_btn::before{
		display: none;
	}
	.HeadNav_grp02_btn{
		margin-left: 10px;
	}
}

@media (max-width: 896px){

}
@media (max-width: 576px){
	.HeadNav_grp01{
		top: 16vw;
	}
	.HeadNav_lst_grp{
		margin-top: 16vw;
	}
	.HeadNav_lst_itm{
		font-size: 4vw;
	}
	.HeadNav_subLst_itm{
		font-size: 3.46vw;
	}
	.HeadNav_subLst_itm::before{
		width: 2.666666667vw;
		height: 2.133333333vw;
		top: 1.3vw;
	}
	.HeadNav_subLst_itm a{
		padding-left: 5.6vw;
	}
	.HeadNav_grp02_btn a{
		font-size: 3.46vw;
		padding: 6.1333333vw 0;
	}
}
@media (max-width: 374px){
	.HeadNav_subLst_itm::before{
		top: 1.6vw;
	}
}

/*     Fixed Btn
=====================================================*/
.Btn_register{
	font-size: 1.2rem;
	line-height: 1;
	text-align: center;
	letter-spacing: 4px;
	width: 40px;
	height: 122px;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	background-color: #04A5BA;
	border-color: #04A5BA;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}
.Btn_register:hover{
	color: #04A5BA;
}
.Btn_register a{
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	padding: 0;
}

@media (max-width: 896px){
	.Btn_register{
		display: none;
	}
}

/*============================================================================================
      Footer
=============================================================================================*/
.w_Footer{
	padding: 160px 0 100px;
	position: relative;
}
.Footer{
}
.Footer_logo{
	width: 102px;
}
.Footer_box{
	margin-bottom: 135px;
}

.Footer_pmark{
	width: 60px;
	margin-left: auto;
}
.Footer_copy{
	display: block;
	/* width: 100%;
	text-align: center;
	position: absolute;
	right: 0;
	left: 0;
	margin: auto; */
}

@media (max-width:1040px){
	.Footer_corp{
		margin-bottom: 70px;
	}
}
@media (max-width: 896px){
	.Footer_box{
		margin-bottom: 100px;
	}
	/* .Footer_trademark{
		order: 3;
	}
	.Footer_copy{
		position: static;
		margin: 30px 0 20px;
		order: 2;
	}
	.Footer_pmark{
		order: 1;
	} */

}
@media (max-width: 576px){
	.w_Footer{
		padding: 100px 0 75px;
	}
}


/*     Footer Navigation
=====================================================*/
.FootNav{
	/* width: 580px; */
	margin: 0 0 0 auto;
}
.FootNav_lst{
}
.FootNav_lst_grp{
	margin-top: 55px;
}
.FootNav_lst_grp:nth-of-type(3n){
}
.FootNav_lst_subGrp + .FootNav_lst_subGrp{
	margin-top: 55px;
}
.FootNav_lst_itm__en{
	display: block;
	margin-bottom: 30px;
	line-height: 0;
}
.FootNav_lst_itm{
	width: 100%;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.6;
	display: block;
}
.FootNav_lst_itm + .FootNav_lst_itm{
	margin-top: 15px;
}
.FootNav_subLst + .FootNav_lst_itm{
	margin-top: 50px;
}

.FootNav_subLst{
	
}
.FootNav_subLst_itm{
	font-size: 1.3rem;
	font-weight: bold;
	line-height: 1.6;
	margin-top: 15px;
}
.FootNav_subLst_itm::before{
	width: 10px;
	height: 8px;
	background-image: url(../img/common/ic_arrow.svg);
	top: 5px;
	left: 0;
}
.FootNav_subLst_itm a{
	padding-left: 21px;
}
.FootNav_lst_itm_link{
	font-size: inherit;
	display: inline-block;
	position: relative;
	transition: color .2s;
}
.FootNav_lst_itm_link:hover{
	color: #04A5BA;
}
/* .FootNav_lst_itm_link::after{
	width: 0;
	height: 3px;
	left: 0;
	bottom: 0;
	background-color: #222;
	-webkit-transition: width .2s;
	transition: width .2s;
}
.FootNav_lst_itm_link:hover{
	color: #222;
}
.FootNav_lst_itm_link:hover::after{
	width: 100%;
} */
.FootNav_lst_itm_link a{
	display: block;
	/* padding-bottom: 0.3em; */
}
@media (max-width: 896px){
	.FootNav_lst_grp{
		width: 48%;
	}
}
@media (max-width: 576px){
	.FootNav_lst_grp{
		width: 100%;
	}
	.FootNav_lst_grp:nth-of-type(1){
		width: 100%;

	}
	.FootNav_lst_subGrp + .FootNav_lst_subGrp{
		margin-top: 0;
	}
	.FootNav_lst_subGrp{
		width: 43%;
	}
	.FootNav_lst_itm{
		font-size: 4vw;
	}
	.FootNav_subLst_itm{
		font-size: 3.46vw;
	}
	.FootNav_subLst_itm::before{
		width: 2.666666667vw;
		height: 2.133333333vw;
		top: 1.3vw;
	}
	.FootNav_subLst_itm a{
		padding-left: 5.6vw;
	}
}

@media (max-width: 374px){
	.FootNav_subLst_itm::before{
		top: 1.6vw;
	}
}


/*============================================================================================
      Contents
=============================================================================================*/
/*    TOP
=============================================================================================*/
/*    TOP - MV
=====================================================*/
.w_Mvisual{
	width: 100%;
	height: calc(100vh - 60px);
	min-height: 50vw;
	padding: 0 8.59vw 0 8.2vw;
	position: relative;
}
.Mvisual{
	width: 100%;
	height: 100%;
}
.Mvisual_txt{
  /* font-size: 4.5rem; */
	font-size: 3.5vw;
	font-weight: bold;
	letter-spacing: 4px;
	line-height: 2;
}
/* .Mvisual_txt span{
	opacity: 0;
} */
.Mvisual_slider{
	width: 36.875vw;
	/* -webkit-animation: fadeIn 2s ease 0s 1 normal;
	animation: fadeIn 2s ease 0s 1 normal; */
}
/* @-webkit-keyframes fadeIn{
	0% {opacity: 0}
	100% {opacity: 1}
}
@keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
} */

.Mvisual_img{
	width: 100%;
}
.Mvisual_bg{
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -10;
	overflow: hidden;
}
.Mvisual_bg video{
	/* width: 100%;
	height: auto;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	margin: auto; */
	width: 100%;
	height: 100vh;
	-o-object-fit: cover;
	object-fit: cover;
}
.Mvisual_animation {
	background-color:#ffffff;
	width:100%;
	height:100%;
	display:block;
	overflow: hidden;
	transform: translate3d(0,0,0);
	text-align: center;
	opacity: 1;
}

@media (max-width: 1280px){
	.w_Mvisual{
		min-height: 20vh;
	}

}
@media (max-width: 896px){
	.w_Mvisual{
		padding: 0;
		margin-top: 20px;
		height: 41.5vh;
	}
	.Mvisual_txt{
		font-size: 4.5rem;
		flex: 0 0 auto;
	}
	.Mvisual_slider{
		width: 100%;
		max-width: 472px;
	}
}

@media (max-width: 576px){
	.w_Mvisual{
		padding: 0;
		margin-top: 30px;
		height: calc(100% - 14vh);
		min-height: 40.7vh;
	}
	.Mvisual_txtbox{
		width: 100%;
	}
	.Mvisual_txt{
		font-size: 6.66vw;
	}
	.Mvisual_slider{
		max-width: 100%;
	}

	.Mvisual_bg video{
		/* height: 100vh;
    right: auto;
    left: 50%;
    bottom: auto;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%); */
	}
}

/*    TOP - Service
=====================================================*/
.w_IdxSrv::before{
	background-image: url(../img/common/ic_rashiku_lg.svg);
	width: 45.3125vw;
	/* max-width: 580px; */
	height: 91.40625vw;
	/* max-height: 1170px; */
	left: 0;
	bottom: 0;
	background-size: 300% auto;
	background-position: right 0 bottom -20.46875vw;
	z-index: -1;
}
.IdxSrv{
}
.IdxSrv_lst{
	margin-top: 160px;
}
.IdxSrv_lst_itm + .IdxSrv_lst_itm{
	margin-top: 100px;
	padding-top: 100px;
	border-top: 1px solid #EEE;
}
.IdxSrv_lst_txtBox{
	padding-left: 60px;
}

@media (max-width: 896px){
	.IdxSrv_lst{
		margin-bottom: 60px;
	}
	.IdxSrv_lst_itm + .IdxSrv_lst_itm{
		margin-top: 60px;
		margin-top: 60px;
	}
}

@media (max-width: 576px){
	.w_IdxSrv::before{
		width: 100%;
		height: 100%;
		background-size: 400% auto;
		background-position: right -65vw bottom -55vw;
	}
	.IdxSrv_lst_txtBox{
		padding-left: 0;
	}
}

/*    TOP - About Us
=====================================================*/
.w_IdxAbout{
	padding-top: 140px;
	margin-top: 140px;
}
.w_IdxAbout::before{
	width: 317px;
	height: 316px;
	background-image: url(../img/common/ic_rashiku.svg);
	top: 0;
	right: 0;
	left: 0;
	margin: auto;
}
.w_IdxAbout::after{
	width: 44.0625vw;
	height: 440px;
	background-image: url(../img/top/about_us.jpeg);
	background-position: right center;
	background-size: cover;
	top: 140px;
	bottom: 0;
	left: 0;
}
.IdxAbout{

}
.IdxAbout_box{
	width: 45vw;
	max-width: 510px;
	/* max-width: 490px; */
	margin: 0 0 0 auto;
}

@media (max-width: 896px){
	.w_IdxAbout{
		padding-top: 60px;
		margin-top: 60px;
	}
	.w_IdxAbout::before{
		width: 143px;
		height: 139px;
		top: 17px;
		left: 10.66vw;
		right: auto;
	}
	.w_IdxAbout::after{
		display: none;
	}
	.IdxAbout_box{
		width: 100%;
		max-width: 100%;
	}
}

@media (max-width: 576px){
	.w_IdxAbout{
		padding-top: 20px;
		margin-top: 20px;
	}
}

/*    Top - Job List
=====================================================*/
.w_IdxJob{}
.w_IdxJob::before{
	width: 25.390625vw;
	height: 640px;
	background-image: url(../img/top/jub_list.jpeg);
	background-size: cover;
	background-position: center left -250px;
	top: 140px;
	bottom: 0;
	right: 0;
}
.IdxJob{
}
.IdxJob_box{
	width: 57vw;
	max-width: 730px;
}
.IdxJob_box_btn {
	display: flex;
	gap: 2rem
}


@media (max-width: 896px){
	.w_IdxJob{
		margin-top: 100px;
		padding-top: 240px;
	}
	.w_IdxJob::before{
		width: 100%;
		max-width: 100%;
		height: 160px;
		background-size: 100% auto;
		background-position: top -100px center;
		top: 0;
		bottom: auto;
	}
	.IdxJob{
	}
	.IdxJob_box{
		width: 100%;
		max-width: 100%;
	}
	.IdxJob_box_btn {
		align-items: center;
		flex-direction: column;
	}
}
@media (max-width: 576px){
	.w_IdxJob::before{
		background-position: top -5vw center;
	}
}


/*    Job Index
=============================================================================================*/
.w_JobIdx{
	padding-top: 60px;
}
.JobIdx_lst{}
.JobIdx_lst_itm{
	padding: 50px 0;
}
.JobIdx_box{
	margin-top: 20px;
}

.JobIdx_box_hd{
	font-weight: bold;
	width: 80px;
	margin-right: 15px;
}
.JobIdx_box_bd{
	width: calc(100% - 95px);
}
.JobIdx_btnArea{
	margin-top: 35px;
}

@media (max-width: 896px){
}
@media (max-width: 576px){
	.JobIdx_lst_itm{
		padding: 30px 0;
	}
	.JobIdx_box_hd{
		width: 100%;
	}
	.JobIdx_box_bd{
		width: 100%;
	}
	.JobIdx_btnArea{
		margin-top: 20px;
	}	
}

/*    Job Index - search box
=====================================================*/
.w_Search_area{
	padding-top: 60px;
}
.Search_area{
	width: 100%;
	padding: 50px 65px;
	background-color: #eee;
}
/* ボタン - 条件で探す */
.Search_cond_btn{
	font-weight: bold;
	text-align: center;
	line-height: 1;
	border-radius: 1000px;
	padding: 22px 10px;
	margin: 0 auto;
	cursor: pointer;
	display: none;
	margin-bottom: 30px;
}
.Search_cond_btn_pull{
	position: relative;
	width: 13px;
	height: 13px;
	display: inline-block;
	margin-left: 10px;
}
.Search_cond_btn_pull::before,
.Search_cond_btn_pull::after{
	content: "";
	display: block;
	background-color: #fff;
	margin: auto;
	transition: all .3s linear;
	position: absolute;
	pointer-events: none;
}
.Search_cond_btn_pull::before{
	width: 100%;
	height: 3px;
	top: 0;
	bottom: 0;
	right: 0;
}
.Search_cond_btn_pull::after{
	width: 3px;
	height: 100%;
	top: 0;
	right: 0;
	left: 0;
}
/* .Search_cond_btn:hover .Search_cond_btn_pull::before,
.Search_cond_btn:hover .Search_cond_btn_pull::after{
	background-color: #04A5BA;
} */

/* hover無効化 */
.Search_cond_btn:hover{
	color: #fff;
	background-color: #04A5BA;
}
.js_open .Search_cond_btn .Search_cond_btn_pull::before{
	display: none;
}
.js_open .Search_cond_btn .Search_cond_btn_pull::after{
	transition: all .3s linear;
	-webkit-transform: rotate(90deg) translateY(0px);
	transform: rotate(90deg) translateY(0px);
}

/* セレクタエリア */
.Search_box{
}
.Search_selLst{
}
.Search_selLst_itm{
	width: 18.7%;
	font-weight: bold;
}
.Search_selLst_itm select{
	font-size: 1.4rem;
	border: none;
	min-height: 39px;
}
.Search_freekw{
	margin-top: 20px;
}
.Search_freekw::before {
	width: 1em;
	height: 1em;
	left: 10px;
	top: 0;
	bottom: 0;
	background-image: url(../img/common/ic_search.svg);
}
.Search_freekw input{
	/* font-size: 1.3rem; */
	padding-left: 40px;
	border: none;
}
.Search_popkw_box{
	margin-top: 20px;
}
.Search_popkw_lst{
}
.Search_popkw_lst_itm{
	color: #04A5BA;
	margin: 10px 20px 0 0;
	padding-right: 20px;
	border-right: 1px solid #222;
	line-height: 1.4;
}
.Search_popkw_lst_itm:hover{
	text-decoration: underline;
}
.Search_popkw_lst_itm .active{
	color: #222;
}

/* ボタン - 検索 */
.Search_btn{
	font-weight: bold;
	margin-top: 40px;
}
.Search_submit{
	border-radius: 1000px;
	padding: 15px 10px;

}
@media (max-width: 896px){
	.Search_area{
		max-width: 100%;
		padding: 40px 5vw 10px;
	}
	.Search_cond_btn{
		display: block;
	}
	.Search_box{
		display: none;
	}
	.Search_box form{
		padding-bottom: 30px;
	}
	.Search_selLst_itm{
		width: 48.5%;
		margin: 1px 3% 0 0;
	}
	.Search_selLst_itm:nth-of-type(2n){
		margin-right: 0;
	}
	.Search_selLst_itm select{
		font-size: 1.6rem;
		min-height: 56px;
	}
	.Search_freekw input{
		min-height: 56px;
		font-size: 1.6rem;
	}
	.Search_popkw_lst_itm{
		margin-top: 16px;
	}
}
@media (max-width: 576px){
	.Search_selLst_itm{
		width: 100%;
		margin: 1px 0 0;
	}
	.Search_btn{
		margin-top: 30px;
	}

	.Search_freekw::before {
		left: 2.6vw;
	}
	.Search_freekw input{
		padding-left: 9.3vw;
	}
}




/*    Job Detail
=============================================================================================*/
.JobDet_tag{
}
.JobDet_num{
	flex: 0 0 auto;
}
.JobDet_lst{
}
.JobDet_lst_itm{
	padding: 25px 0;
	border-top: 1px solid #eee;
}
.JobDet_lst_itm:last-of-type{
	border-bottom: 1px solid #eee;
}
.JobDet_lst_hd{
	font-size: 1.6rem;
	font-weight: bold;
	width: 160px;
	margin-right: 30px;
}
.JobDet_lst_bd{
	font-size: 1.4rem;
	width: calc(100% - 190px);
}

.JobDet_box{
}
.JobDet_box_hd{
	font-weight: bold;
	width: 3em;
	margin-right: 10px;
}
.JobDet_box_bd{
	width: calc(100% - (3em + 10px));
}
.JobDet_btn{
	margin-top: 80px;
}
@media (max-width: 896px){
	.JobDet_tag{
		width: 100%;
	}
	.JobDet_num{
		width: 100%;
		margin-top: 10px;
	}

	.JobDet_btn{
		margin-top: 40px;
	}
}
@media (max-width: 576px){
	.JobDet_lst_itm{
		padding: 15px 0;
	}
	.JobDet_lst_hd{
		width: 100%;
		margin-bottom: 0.5em;
	}
	.JobDet_lst_bd{
		width: 100%;
	}

}



/*    Change Job
=============================================================================================*/
.w_ChgJob_main{
	padding: 21vw 0 11.7vw;
}
.w_ChgJob_main::before{
	width: 48.4vw;
	height: 32vw;
	aspect-ratio: 62/41;
	background-image: url(../img/job_change/job_change_kv.jpg);
	background-position: top left;
	background-size: cover;
	top: 12.5vw;
	left: 0;
}
.ChgJob_main_box{
	width: 59%;
	margin: 0 0 0 auto;
	padding-left: 18vw;
}
.ChgJob_main_box::before{
	width: 17vw;
	height: 17vw;
	background-image: url(../img/common/ic_rashiku.svg);
	top: .78vw;
	left: 13vw;
	z-index: -1;
}
.ChgJob_main_head{
	font-size: 2.7vw;
	font-weight: bold;
	line-height: 1.7;
}

@media (max-width: 896px){
	/* .ChgJob_main_box{
		padding-left: 50px;
	} */
	.ChgJob_main_head{
		font-size: 3.1vw;
	}
	/* .w_ChgJob_main{
		padding-top: 200px;
		padding-bottom: 100px;
	} */
}
@media (max-width: 576px){
	.w_ChgJob_main{
		padding-top: 17.3vw;
		padding-bottom: 65.8vw;
	}
	.w_ChgJob_main::before{
		width: 100%;
		height: fit-content;
		top: auto;
		bottom: 0;
	}
	.ChgJob_main_box{
		width: 90vw;
		margin: 0 auto;
		padding: 0 0 10vw;
	}
	.ChgJob_main_box::before{
		width: 112px;
		height: 110px;
		top: 46px;
		left: 0
	}
	.ChgJob_main_head{
		font-size: 7.466666667vw;
		padding-left: 12vw;
	}
}




/*    Change Job - Voice
=====================================================*/
.ChgJob_vclst{
}
.ChgJob_vclst_itm{
	width: 32%;
	margin: 30px 2% 0 0;
}
.ChgJob_vclst_itm:nth-of-type(3n){
	margin-right: 0;
}
.ChgJob_vclst_itm:nth-of-type(1),
.ChgJob_vclst_itm:nth-of-type(2),
.ChgJob_vclst_itm:nth-of-type(3){
	margin-top: 0;
}
.ChgJob_vclst_img{
	margin-bottom: 25px;
	transition: opacity .2s;
}
.ChgJob_vclst_itm:hover .ChgJob_vclst_img{
	opacity: 0.7;
}
.ChgJob_vclst_txt{
	transition: color .2s;
}
.ChgJob_vclst_itm:hover .ChgJob_vclst_txt{
	color: #04A5BA;
}
.ChgJob_vclst_txt_cmt{
	font-size: 1.4rem;
}
.ChgJob_vclst_txt_job{
	font-size: 1.3rem;
	margin-top: 0.7em;
}
.ChgJob_vclst_txt_name{
	font-size: 1.3rem;
	margin-top: 0.7em;
}

@media (max-width: 896px){
	
}
@media (max-width: 576px){
	.ChgJob_vclst_itm,
	.ChgJob_vclst_itm:nth-of-type(3n),
	.ChgJob_vclst_itm:nth-of-type(3){
		width: 48.5%;
		margin: 30px 3% 0 0;
	}
	.ChgJob_vclst_itm:nth-of-type(1),
	.ChgJob_vclst_itm:nth-of-type(2){
		margin-top: 0;
	}
	.ChgJob_vclst_itm:nth-of-type(2n){
		margin-right: 0;
  }
	.ChgJob_vclst_txt_cmt{
		font-size: 1.3rem;
	}
	.ChgJob_vclst_txt_job{
		font-size: 1.1rem;
		margin-top: 0.7em;
	}
	.ChgJob_vclst_txt_name{
		font-size: 1.1rem;
		margin-top: 0.7em;
	}
}

/*    Change Job - User Voice
=====================================================*/
.Userv_inr{
}
.Userv_box{
	position: relative;
	padding-top: 30px;
}
.Userv_box_img{
	width: 53%;
	position: absolute;
	bottom: -80px;
}
.Userv_box_intro{
	width: 52%;
	margin: 0 30px 0 auto;
	background-color: #fff;
	padding: 65px 70px;
}
.Userv_box_intro::before{
	background-color: #EEE;
	width: calc(100% + 60px);
	height: calc(100% + 60px);
	top: -30px;
	left: -30px;
	z-index: -10;
}

.Userv_box_head{
	display: inline-block;
	margin-bottom: 35px;
}
.Userv_box_head_name{}
.Userv_box_head_pos{
	display: block;
}
.Userv_box_txt{
}
.Usev_sec{
	padding-top: 130px;
}

@media (max-width: 896px){
	.Userv_inr{
		width: 100%;
		max-width: 100%;
	}
	.Userv_box{
		width: 100%;
		padding-top: 0;
	}
	.Userv_box_img{
		width: 100%;
		max-width: 375px;
		margin: 0 auto;
		position: static;
	}
	.Userv_box_intro{
		width: 95vw;
		position: relative;
		margin: 0 0 0 auto;
		padding: 6vw 5vw 6vw 11.4vw;
		right: 0;
		left: auto;
	}
	.Userv_box_intro::before{
		width: 100vw;
		height: calc(100% + 10vw);
		top: auto;
		right: 0;
		left: auto;
		bottom: -5vw;
	}
	.Userv_box_head{
		margin-bottom: 20px;
	}
	.Userv_box_head::before{
		width: 67px;
		height: 67px;
		top: auto;
		bottom: -14px;
		left: -24px;
	}

}

@media (max-width: 576px){
	.Userv_box{
		padding-bottom: 5vw;/* 擬似要素分 */
	}
	.Userv_box_img{
		max-width: 100%;
	}
	.Userv_box_intro{
		margin-top: -5vw;
		padding: 5vw;
	}
	.Userv_box_head{
		margin-bottom: 5vw;
	}
	.Userv_box_head::before{
		width: 17.86666667vw;
		height: 17.86666667vw;
		bottom: -3.7vw;
		left: -6.4vw;
	}
	.Userv_box_head_pos{
		font-size: 1rem;
	}
	.Usev_sec{
		padding-top: 30px;
	}
}




/*    Flow - Commnon　（job change / human resources）
=============================================================================================*/
.Flow_lst{
}
.Flow_itm{
}
.Flow_itm_img{
	width: 35%;
	margin-right: 5%;
	padding-top: 50px;
}
.Flow_itm_box{
	width: 60%;
	padding-left: 45px;
	border-left: 1px solid #04A5BA;
	padding-top: 45px;
}
.Flow_itm:first-of-type .Flow_itm_img,
.Flow_itm:first-of-type .Flow_itm_box{
	padding-top: 0;
}
.Flow_itm_box::before{
	width: 15px;
	height: 15px;
	border-radius: 100%;
	background-color: #04A5BA;
	top: 52px;
	left: -8px;
}
.Flow_itm:first-of-type .Flow_itm_box::before{
	top: 7px;
}
.Flow_itm:first-of-type .Flow_itm_box::after{
	background-color: #fff;
	width: 15px;
	height: 15px;
	top: -8px;
	left: -8px;
}
.Flow_itm_ttlBox{
	margin-bottom: 0.5em;
	font-weight: bold;
}
.Flow_itm_ttl{
}
.Flow_itm_num{
	color: #04A5BA;
	font-size: 2.5rem;
	padding-right: 4px;
	line-height: 1.3;
}
.Flow_itm_txt{
	
}

@media (max-width: 576px){
	.Flow_itm + .Flow_itm{
		margin-top: 60px;
	}
	.Flow_itm_img,
	.Flow_itm:first-of-type .Flow_itm_img{
		width: 100%;
		height: 0;
		margin-right: 0;
		padding-top: calc(100% * 0.47);
		position: relative;
	}
	.Flow_itm_img img{
		width: 100%;
		top: 0;
		left: 0;
		height: 100%;
		-o-object-fit: cover;
		   object-fit: cover;
		position: absolute;
	}
	.Flow_itm_box{
		width: 100%;
		padding: 0;
		border-left: none;
		margin-top: 25px;
	}
	.Flow_itm_box::before,
	.Flow_itm_box::after{
		display: none;
	}
	.Flow_itm_num{
		font-size: 2.2rem;
		line-height: 1.5;
	}
	.Flow_itm_txt{
		
	}

}




/*    About
=============================================================================================*/
.Abt_pmark{
	width: 84px;
}
@media (max-width: 576px){
	.Abt_inrBox{
		width: 100%;
		max-width: 100%;
	}
}

/*    About -  Consultant
=====================================================*/
.Ctl_inr{
}
.Ctl_box{
	position: relative;
	padding-bottom: 60px;
}
.Ctl_box_img{
	width: 53%;
	position: absolute;
	left: 0;
	bottom: 0;
}
.Ctl_box_intro{
	width: 62.5%;
	/* position: absolute; */
	/* right: calc(30px - 5vw); */
	/* top: 30px; */
	background-color: #fff;
	padding: 100px 60px 80px 95px;
	margin: 0 -30px 0 auto;
	min-height: 42.5rem;
}
.Ctl_box_intro::before{
	background-color: #EEE;
	width: calc(100% + 60px);
	height: calc(100% + 60px);
	top: -30px;
	left: -30px;
	z-index: -10;
}

.Ctl_box_head{
	display: inline-block;
	margin-bottom: 45px;
	z-index: 1;
}
.Ctl_box_head::before{
	width: 150px;
	height: 150px;
	background-image: url(../img/common/ic_rashiku.svg);
	top: -40px;
	left: -35px;
	z-index: -1;
}
.Ctl_box_head_name{}
.Ctl_box_head_pos{
	display: block;
}
.Ctl_box_txt{
}

@media (max-width: 1280px){
	.Ctl_box_intro{
		margin-right: 0;
		right: 0;
	}
}
@media (max-width: 896px){
	.Ctl_inr{
		width: 100%;
		max-width: 100%;
	}
	.Ctl_box{
		width: 100%;
		padding-top: 0;
	}
	.Ctl_box_img{
		width: 100%;
		max-width: 375px;
		margin: 0 auto;
		position: static;
	}
	.Ctl_box_intro{
		width: 95vw;
		position: relative;
		margin: 0 0 0 auto;
		padding: 6vw 5vw 6vw 11.4vw;
		right: 0;
		left: auto;
		top: 0;
		min-height: auto;
	}
	.Ctl_box_intro::before{
		width: 100vw;
		height: calc(100% + 10vw);
		top: auto;
		right: 0;
		left: auto;
		bottom: -5vw;
	}
	.Ctl_box_head{
		margin-bottom: 20px;
	}
	.Ctl_box_head::before{
		width: 67px;
		height: 67px;
		top: auto;
		bottom: -14px;
		left: -24px;
	}
}

@media (max-width: 576px){
	.Ctl_box{
		padding-bottom: 5vw;/* 擬似要素分 */
	}
	.Ctl_box_img{
		max-width: 100%;
	}
	.Ctl_box_intro{
		margin-top: -5vw;
	}
	.Ctl_box_head{
		margin-bottom: 5.4vw;
	}
	.Ctl_box_head::before{
		width: 17.86666667vw;
		height: 17.86666667vw;
		bottom: -3.7vw;
		left: -6.4vw;
	}
	.Ctl_box_head_pos{
		font-size: 1rem;
	}
}

/*    Company -  Achievement
=====================================================*/
.Achv_lst{}
.Achv_lst_itm{
	border-bottom: 1px solid #eee;
	padding: 15px 0;
}
.Achv_lst_itm:nth-of-type(1),
.Achv_lst_itm:nth-of-type(2),
.Achv_lst_itm:nth-of-type(3){
	border-top: 1px solid #eee;
}
@media (max-width: 576px){
	.Achv_lst_itm:nth-of-type(2),
	.Achv_lst_itm:nth-of-type(3){
		border-top: none;
	}
}


/*    About -  Consultant
=====================================================*/
.Rsk_sec + .Rsk_sec{
	margin-top: 85px;
}
.Rsk_recruit_txt {
	margin-bottom: 60px;
}
.consultant_lst {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(auto-fit, minmax(16rem, 16rem));
	place-content: center;
	place-items: center;
}
.consultant_lst li {
	display: flex;
	width: 16rem;
}
.consultant_intro {
	display: flex;
	flex-wrap: nowrap;
	gap: 8rem;
}
.consultant_intro_img  {
	display: flex;
	flex-shrink: 0;
}
.consultant_intro_img img {
    height: 380px;
}
#consultant06 .consultant_intro_img  {
    align-items: flex-end;
}
@media (max-width: 896px){
	.Rsk_sec + .Rsk_sec{
		margin-top: 60px;
	}
	.consultant_intro {
		flex-direction: column;
		align-items: center;
		gap: 4rem;
	}
}


/*    Human Resources
=============================================================================================*/
.w_Cohr_main{
	padding: 21vw 0 11.7vw;
}
.w_Cohr_main::before{
	width: 48.4vw;
	height: 32vw;
	aspect-ratio: 62/41;
	background-image: url(../img/human_resources/human_resources_kv.jpg);
	background-position: top center;
	background-size: cover;
	top: 12.5vw;
	left: 0;
}
.Cohr_main_box{
	width: 59%;
	margin: 0 0 0 auto;
	padding-left: 18vw;
}
.Cohr_main_box::before{
	width: 17vw;
	height: 17vw;
	background-image: url(../img/common/ic_rashiku.svg);
	top: .78vw;
	left: 13vw;
	z-index: -1;
}
.Cohr_main_head{
	font-size: 2.7vw;
	font-weight: bold;
	line-height: 1.7;
}

@media (max-width: 896px){
	/* .Cohr_main_box{
		padding-left: 50px;
	} */
	/* .Cohr_main_head{
		font-size: 2.8rem;
	} */
}
@media (max-width: 576px){
	.w_Cohr_main{
		padding-top: 17.3vw;
		padding-bottom: 65.8vw;
	}
	.w_Cohr_main::before{
		width: 100%;
		height: fit-content;
		top: auto;
		bottom: 0;
	}
	.Cohr_main_box{
		width: 90vw;
		margin: 0 auto;
		padding: 0 0 10vw;
	}
	.Cohr_main_box::before{
		width: 112px;
		height: 110px;
		top: 46px;
		left: 0
	}
	.Cohr_main_head{
		font-size: 7.466666667vw;
		padding-left: 12vw;
	}
}

/*    Human Resources - Feature
=====================================================*/
.Feature_itm_img{
	width: 35%;
	margin-right: 5%;
}
.Feature_itm_box{
	width: 60%;
}
.Feature_itm{
	margin-bottom: 50px;
}
.Feature_itm:last-child{
	margin-bottom: 0px;
}
.Feature_itm_ttl{
	font-weight: bold;
	margin-bottom: 0.5em;
	display: block;
}
.Feature_itm_ttl_s{
	line-height: 1.4;
	display: block;
}
.Feature_itm_txt{
	margin-left: 15px;
}

@media (max-width: 576px){
	.Feature_itm_box{
		width: 100%;
		padding-top: 30px;
	}
	.Feature_itm_box:first-child{
		margin-bottom: 0px;
	}

	.Feature_itm + .Feature_itm{
		margin-top: 60px;
	}
	.Feature_itm_img,
	.Feature_itm:first-of-type .Feature_itm_img{
		width: 100%;
		height: 0;
		margin-right: 0;
		padding-top: calc(100% * 0.47);
		position: relative;
	}
	.Feature_itm_img img{
		width: 100%;
		top: 0;
		left: 0;
		height: 100%;
		-o-object-fit: cover;
		   object-fit: cover;
		position: absolute;
	}
	.Feature_itm_txt{
		margin-left: 0px;
	}
}

/*    job search
=====================================================*/

:root {
	--color-cover: #00000080;
	--color-white: #FFF
}

.search_job__sec_env {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
}
.search_job__head {
    width: 100%;
    padding-left: 0.8rem;
    text-align: left;
}
.search_job__head_ttl {
    font-size: 2.6rem;
    font-weight: 700;
    text-align: left;
    margin: 0;
    display: inline-block;
}
.search_job__sec_is {
	margin-top: 12rem !important;
}
.search_job__wrapper {
    max-width: 1110px;
    width: 90%;
    margin: 0 auto;
    margin-bottom: 12rem !important;
}
.search_job__head_ttl {
	font-size: 2.6rem;
	font-weight: 700;
}
.search_job__wrap {
    width: 100%;
}
.search_job__wrap_inr {
    display: grid;
    gap: 3rem;
    grid-template-columns: repeat(auto-fit, minmax(255px, 1fr));
    width: 100%;
}
.search_job__cv {
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.search_job__cv::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 16rem;
	background: var(--color-cover);
	z-index: 1;
}
.search_job__cv img {
	max-height: 16rem;
}
.search_job__ttl {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	display: flex;
	justify-content: center;
	text-align: center;
	font-size: 1.6rem;
	font-weight: 700;
	white-space: nowrap;
	color: var(--color-white);
	transform: translate(-50%, -50%);
	z-index: 2;
}
.search_zoom_img {
	overflow: hidden;
}
.search_zoom_img img {
	-o-object-fit: cover;
	object-fit: cover;
	transition: all 0.3s;
}
@media (any-hover: hover) {
	.search_zoom_img:hover img,
	a:has(.search_zoom_img):hover .search_zoom_img img {
		scale: 1;
		transform: scale(1.1);
	}
}
@media (max-width: 896px) {
    .search_job__head {
        padding-left: 0.5rem;
    }
}
@media (max-width: 576px) {
    .search_job__head {
        padding-left: 0;
    }
	.search_job__wrap_inr {
        grid-template-columns: 1fr;
    }
}


/*    Template
=============================================================================================*/
/*    Template
=====================================================*/
@media (max-width: 896px){
	
}
@media (max-width: 576px){

}





