/* key */
#head-key {
	position: relative;
	height: 530px;
}

#key-box {
	padding-top: 0;
}

.key__info {
	padding-left: 23px;
	width: 430px;
	position: relative;
	z-index: 2;
	padding-top: 16px;
}

.key__info .txt__shadow {
	font-size: 17px;
	font-weight: 600;
	text-shadow: 0 3px 6px white;
	padding-left: 16px;
}

.key__img {
	position: absolute !important;
	top: 0;
	left: 0;
	right: 0;
	height: 100%;
}

.key__logo {
	align-items: center;
	padding-top: 16px;
	padding-bottom: 25px;
}

.key__logo p {
	width: 297px;
}

.key__logo p+p {
	width: 91px;
	margin-left: 18px;
}

.key__note {
	background: rgba(255, 255, 255, 0.9);
	font-weight: 600;
	color: #000000;
	font-size: 16px;
	margin-bottom: 20px;
	padding: 9px 5px;
	letter-spacing: 2px;
}

.key__note span {
	color: #D53000;
	font-size: 23px;
}

.key__note small {
	font-size: 16px;
	padding-left: 0;
}

.key__catch {
	background: rgba(255, 255, 255, 0.8);

	font-size: 13px;
	margin-left: 5px;
	padding: 14px 22px 14px 31px;
	margin-right: 21px;
}

.key__check {
	font-size: 14px;
	font-weight: 500;
	position: relative;
	padding-left: 36px;
	letter-spacing: 2px;
	margin-bottom: 9px;
}

.key__check::before {
	content: "";
	background: url(../img/shared/icon_check_g.webp) no-repeat;
	background-size: 100% auto;
	width: 21px;
	height: 16px;
	position: absolute;
	top: 50%;
	left: 5px;
	transform: translateY(-50%);
}

.key__check span {
	font-size: 17px;
	font-weight: 600;
	color: #004267;
}

.key__tag {
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 3px;
	margin-bottom: 14px;
}

.key__tag span,
.key__tag a {
	border-radius: 5px;
	border: 1px solid #004267;
	display: inline-block;
	font-size: 13px;
	color: #000000;
	padding: 2px 9px;
	line-height: 25px;
	background: #fff;
	letter-spacing: 0px;
}

.key__tag a:hover {
	opacity: .6;
}

.key__tag a:last-child {
	border: none;
	background: none;
}

@media only screen and (max-width: 560px) {
	
	#head-key {
		height: 110.71vw!important;
	}
    #head-key .bnr__web {
        width: 66.07vw !important;
        max-width: 83.93vw;
    }	
	#head-key .bnr__web a {
		padding: 1.79vw 0;
		line-height: 1.8;
	}
	.key__tag {
		gap: 0.54vw;
		margin-bottom: 2.5vw;
	}
	
	.key__tag span,
	.key__tag a {
		font-size: 3.21vw;
		padding: 0.36vw 1.61vw;
		line-height: 1.7;
		border-radius: 0.89vw;
		border: 0.18vw solid #004267;
	}
}

@media only screen and (max-width: 560px) {
	footer {
		padding: 12.5vw 0 35vw;
	}

	#key-box {
		padding-top: 15.89vw;
		height: 91.07vw;
	}

	.key__info {
		padding-left: 0;
		width: auto;
		padding-top: 0;
	}

	.key__info .txt__shadow {
		font-size: 3.21vw;
		width: 36.07vw;
		line-height: 6.79vw;
		margin-bottom: 2.86vw;
		padding-left: 2.86vw;
	}

	.key__img {
		height: 99.46vw;
	}

	.key__img img {
        -o-object-position: 0% 10%;
        object-position: 0% 10%;
	}

	.key__logo {
		align-items: center;
		padding-top: 3.57vw;
		padding-bottom: 5.18vw;
		display: block !important;
	}

	.key__logo p {
		width: 64.29vw;
	}

	.key__logo p+p {
		width: 18.39vw;
		position: absolute;
		top: -3.93vw;
		left: 36.43vw;
	}

	.key__note {
		font-size: 3.04vw;
		margin-bottom: 3.57vw;
		padding: 0.89vw 3.57vw;
		text-align: center;
		letter-spacing: 0.36vw;
	}

	.key__note span {
		font-size: 4.46vw;
	}

	.key__note small {
		font-size: 3.21vw;
	}

	.key__catch {
		padding: 3.57vw 3.57vw;
		font-size: 2.32vw;
		margin-right: 0;
		margin-left: 0;
	}

	.key__check {
		font-size: 3.57vw;
		padding-left: 7.14vw;
	}

	.key__check::before {
		width: 3.75vw;
		height: 2.32vw;
	}

	.key__check span {
		font-size: 3.93vw;
	}

	.key__tag {
		gap: 1.07vw;
	}
}

/* END key */
/* logo */
.logo-partner {
	height: 68px;
	margin: 71px 0 66px;
	overflow: hidden;
}



.logo-partner li {
	width: 170px;
	margin: 0 25px;
}

.logo-partner ul {

}

@media only screen and (max-width: 560px) {
	.logo-partner {
		margin: 16.07vw 0 8.93vw;
	}

	.logo-partner li {
		width: 28.57vw;
		margin: 0 3.57vw;
	}
}

/* END logo */
/* feature */
#feature {
	background: #DDEAF1;
	padding: 79px 0 69px;
}

.feature__row {
	gap: 17px;
	margin: 0 21px;
}

.feature__col {
	background: #fff;
	padding: 33px 31px 13px;
	width: 334px;
	box-sizing: border-box;
}

.feature__item .ob-img {
	height: 180px;
}

.feature__item dl {
	padding: 20px 0 0;
}

.feature__item dl dt {
	color: #004267;
	font-size: 16px;
	font-weight: 600;
	margin-bottom: 20px;
}

.feature__item dl dd {
	font-size: 14px;
	line-height: 20px;
}

@media only screen and (max-width: 560px) {
	#feature {
		padding: 14.29vw 0;
	}

	.feature__row {
		gap: 5.36vw;
		margin: 0;
	}

	.feature__col {
		padding: 5.36vw;
		width: 100%;
	}

	.feature__item dl {}

	.feature__item dl dt {
		font-size: 3.93vw;
	}

	.feature__item dl dd {
		font-size: 3.57vw;
		line-height: 1.6;
	}
}

/* END feature */
/* Search for Jobs */
#search-jobs {
	padding: 79px 0 0;
}

#search-jobs button.slick-arrow {
	top: 50%;
}

.search-jobs__slider {
	padding-top: 24px;
	padding-bottom: 31px;
}

@media only screen and (max-width: 560px) {
	#search-jobs {
		padding: 14.29vw 0 0;
	}

	#search-jobs button.slick-arrow {
		top: 50%;
	}

	.search-jobs__slider {
		padding-top: 3.57vw;
	}

	#search-jobs .slick-slide {
		margin: 0;
	}

}

.search-jobs__wrap {
	padding-top: 0;
	padding-bottom: 50px;
}

.search-jobs__tablink {
	text-transform: uppercase;
	align-items: center;
	gap: 21px;
	justify-content: center;
}

.search-jobs__tablink li {
	width: 30%;
	height: 100px;
	line-height: 100px;
	text-align: center;
	background: #F6F6F6;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	overflow: hidden;
	font-size: 17px;
}

.search-jobs__tablink li span {
	padding-left: 77px;
	position: relative;
	font-weight: 600;
}

.search-jobs__tablink li span::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 11px;
	transform: translateY(-50%);
}

.search-jobs__tablink .icon__lug span::before {
	background: url(../img/shared/icon_bag.webp) no-repeat;
	background-size: 100% auto;
	width: 40px;
	height: 40px;
}

.search-jobs__tablink .icon__book span::before {
	background: url(../img/shared/icon_book.webp) no-repeat;
	background-size: 100% auto;
	width: 48px;
	height: 36px;
}

.search-jobs__tablink .icon__note span::before {
	background: url(../img/shared/icon_note.webp) no-repeat;
	background-size: 100% auto;
	width: 35px;
	height: 46px;
}

.search-jobs__tablink li.active {
	color: #fff;
	background: #0F1339;
}

.search-jobs__tablink li.active span::before {
	-webkit-filter: brightness(0) invert(1);
	filter: brightness(0) invert(1);
}

.search-jobs__tabcontent {

}

.search-jobs__tabcontent ul {
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	gap: 21px;
	border: 2px solid #0E163C;
	padding: 29px 50px;
}

.search-jobs__tabcontent ul li {
  font-size: 16px;
  text-align: center;
  box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.16);
  border: 1px solid #E3E3E3;
}
.search-jobs__tabcontent ul li a {
  display: block;
  padding: 13px 26px;
}

/* END Search for Jobs */

#search-simple {
	padding-top: 0;
}

#search-pickup {
	padding-bottom: 60px;
}

@media only screen and (max-width: 560px) {
	#search-pickup {
		padding-bottom: 14.29vw;
	}
}

#search-tab {
	padding-top: 60px;
	padding-bottom: 60px;
}

@media only screen and (max-width: 560px) {
	#search-tab {
		padding-top: 14.29vw;
		padding-bottom: 14.29vw;
	}
}

/* hiring */
#hiring {
	background: url(../img/index/img05.webp) no-repeat center;
	background-size: cover;
	color: #fff;
	padding: 46px 0 41px;
}

.hiring-info {
	text-align: center;
}

.hiring-info dl {
	width: 70%;
	margin: 0 auto 35px;
}

.hiring-info dl dt {
	font-weight: 600;
	margin-bottom: 35px;
	font-size: 25px;
	letter-spacing: 0px;
}

.hiring-info dl dd {
	line-height: 24px;
}

@media only screen and (max-width: 560px) {
	#hiring {
		background: url(../img/index/img05_sp.webp) no-repeat center;
		background-size: cover;
		padding: 14.29vw 0;
	}

	.hiring-info dl {
		margin-bottom: 7.14vw;
		width: auto;
	}

	.hiring-info dl dt {
		margin-bottom: 3.57vw;
	}

	.hiring-info dl dd {
		text-align: left;
		line-height: 1.6;
	}
}

/* END hiring */
/* feature-jobs */
#feature-jobs {
	padding-top: 63px;
	padding-bottom: 69px;
}

@media only screen and (max-width: 560px) {
	#feature-jobs {
		padding-top: 5.36vw;
	}
}

/* END feature-jobs */
/* company-interview */
#company-interview {
	padding: 80px 0 71px;
	background: #DDEAF1;
}

.company-interview__slider--s {
	margin-bottom: 19px;
}


@media only screen and (max-width: 560px) {
	#company-interview {}

	.company-interview__slider--s {
		margin-bottom: 5.54vw;
	}

	.company-interview__box {}

	.company-interview__box__info {}

	.company-interview__title {}
}

/* end company-interview */
/* useful-information */
#useful-information {
	background: #DDEAF1;
	padding: 78px 0 73px;
}

/* END useful-information */
#consultants-feature {
	background: #DDEAF1;
	padding: 69px 0 71px;
}

.consultants-feature__box {
	flex-direction: row-reverse;
	align-items: center;
}

.consultants-feature__box feature {
	width: 50%;
	border-radius: 10px;
	overflow: hidden;
	margin-right: 28px;
}

.consultants-feature__info {
	width: 37.5%;
	padding-left: 8px;
}

.consultants-feature__info dl {
	margin-bottom: 49px;
}

.consultants-feature__info dl dt {
	font-size: 24px;
	font-weight: 600;
	margin-bottom: 31px;
}

.consultants-feature__info dl dd {}

@media only screen and (max-width: 560px) {
	#consultants-feature {}

	.consultants-feature__box {
		flex-direction: inherit;
		align-items: normal;
		display: block;
	}

	.consultants-feature__box feature {
		width: 100%;
		margin-right: 0;
	}

	.consultants-feature__info {
		width: 100%;
		padding-top: 7.14vw;
	}

	.consultants-feature__info dl {}

	.consultants-feature__info dl dt {
		font-size: 5.54vw;
		margin-bottom: 3.57vw;
	}
}

#consultant {
	padding: 80px 0 70px;
}

.consultant-row {
	margin-bottom: 15px;
}

.consultant-row__item {
	/*	width: 227px;*/
	width: auto;
	padding: 27px 20px;
	margin: 0 10px 10px 10px;
	display: block;
}

.consultant-row__item dl {
	padding: 19px 20px 0;
}

.consultant-row__item dl dt {
	text-align: center;
	font-weight: 600;
	/* font-size: 16px; */
	margin-bottom: 15px;
}

.consultant-row__item dl dd {
	font-size: 14px;
	line-height: 20px;
}

.consultant__photo {
	width: 180px;
	height: 180px;
	margin: 0 auto;
	overflow: hidden;
	border-radius: 50%;
}

.consultant__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media only screen and (max-width: 560px) {

	.consultant-row {
		gap: 5.36vw;
		margin-bottom: 5.54vw;
	}

	.consultant-row__item {
		width: auto;
		padding: 5.36vw 5.89vw;
		margin: 1.79vw;
	}

	#consultant .slick-dots {}

	.consultant-row__item dl {
		padding-top: 3.57vw;
	}

	.consultant-row__item dl dt {
		margin-bottom: 1.79vw;
	}

	.consultant__photo {
		width: 40.18vw;
		height: 40.18vw;
	}

	.consultant-row__item dl dd {
		font-size: 3.57vw;
		line-height: 1.6;
	}
}

#experience-story {
	background: #DDEAF1;
	padding: 80px 0 68px;
	margin-bottom: -1px;
}

.experience-story__slider--s {
	margin-bottom: 28px;
}

.experience-story__slider--s .button.slick-arrow {
	top: 50%;
}

.experience-story__slider--s .slick-dots {
	padding-top: 20px;
}

#experience-service {
	padding-bottom: 70px;
	background: #DDEAF1;
}

.experience-service__box {
	gap: 29px;
	margin: 0 0px 42px 11px;
}

.experience-service__item {
	width: 48.5%;
	letter-spacing: 0;
}

.experience-service__item a {
	display: flex;
	position: relative;
	padding: 40px 28px 29px;
}

.experience-service__item a::after {
	content: "";
	background: url(../img/shared/icon_arrow.webp) no-repeat;
	background-size: 100% auto;
	width: 25px;
	height: 25px;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
}

.experience-service__item dl {
	padding-top: 26px;
}

.experience-service__item dl dt {
	/* font-size: 16px; */
	font-weight: 600;
	margin-bottom: 6px;
}

.experience-service__item dl dd {
	font-size: 14px;
	line-height: 20px;
}

.photo__rounded {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	overflow: hidden;
	margin-right: 45px;
}

.experience-service__bio {
	font-size: 13px;
	position: absolute;
	top: 106px;
	left: 0;
	width: 22%;
	text-align: center;
}

.experience-service__star {
	width: 120px;
	position: absolute;
	top: 29px;
	left: 125px;
	font-weight: 700;
	color: #FFAA00;
	letter-spacing: 0.4em;
}

@media only screen and (max-width: 560px) {
	#experience-story {}

	#experience-story button.slick-arrow {
		top: 43%;
	}

	.experience-story__slider--s {
		margin-bottom: 5.54vw;
	}

	.experience-story__slider--s .slick-slide {
		margin: 0;
	}

	.experience-story__slider--s .button.slick-arrow {
		top: 50%;
	}

	.experience-story__slider--s .slick-dots {
		padding-top: 2.68vw;
	}

	#experience-service {
		padding-bottom: 10.71vw;
	}

	.experience-service__box {
		gap: 3.57vw;
		margin: 0 3.57vw 5.36vw;
	}

	.experience-service__item {
		width: 100%;
	}

	.experience-service__item a {
		padding: 7.14vw 7.14vw 10.71vw;
		display: block;
	}

	.experience-service__item a::after {
		top: auto;
		right: 7.14vw;
		bottom: 3.57vw;
		transform: translateY(0%);
	}

	.experience-service__item a::before {
		content: "";
		position: absolute;
		bottom: 3.75vw;
		right: 13.39vw;
		background: url(../img/index/txt_jp.webp) no-repeat;
		background-size: 100% auto;
		width: 7.86vw;
		height: 5.18vw;
	}

	.experience-service__item dl {
		padding-top: 3.57vw;
	}

	.experience-service__item dl dt {
		margin-bottom: 1.79vw;
	}

	.experience-service__item dl dd {
		line-height: 1.8;
		font-size: 3.57vw;
	}

	.photo__rounded {
		width: 10.71vw;
		height: 10.71vw;
		border-radius: 50%;
		overflow: hidden;
	}

	.experience-service__bio {
		font-size: 3.21vw;
		position: absolute;
		top: 7.14vw;
		left: 25.18vw;
		width: 40%;
		text-align: left;
	}

	.experience-service__star {
		width: 21.43vw;
		position: absolute;
		top: 11.96vw;
		left: 24.82vw;
		font-weight: 700;
		color: #FFAA00;
		letter-spacing: 0.4em;
		}
}


.search-jobs__tab__sp {
	margin: 0 -5.5%;
}

.search-jobs__tab__sp .toggle {
	position: relative;
}

.search-jobs__tab__sp .toggle .toggle-link::before,
.search-jobs__tab__sp .toggle .toggle-link::after {
	content: "";
	height: 3px;
	background: #fff;
	position: absolute;
	top: 50%;
	right: 30px;
	transform: translateY(-50%);
	width: 25px;
	border-radius: 5px;
}

.search-jobs__tab__sp .toggle .toggle-link::before {
	width: 3px;
	height: 25px;
	right: 40px;
}

.search-jobs__tab__sp .toggle.active .toggle-link::before {
	display: none;
}

.search-jobs__tab__sp .toggle-link {
	background: #0F1339;
	line-height: 74px;
	color: #fff;
	font-size: 25px;
}

.search-jobs__tab__sp .toggle-link span {
	position: relative;
	padding-left: 81px;
}

.search-jobs__tab__sp .toggle-link span::before {
	content: "";
	-webkit-filter: brightness(0) invert(1);
	filter: brightness(0) invert(1);
	position: absolute;
	top: 50%;
	left: 20px;
	transform: translateY(-50%);
}

.search-jobs__tab__sp .toggle-link span.icon__lug::before {
	background: url(../img/shared/icon_bag.webp) no-repeat center;
	background-size: cover;
	width: 38px;
	height: 38px;
}

.search-jobs__tab__sp .toggle-link span.icon__book::before {
	background: url(../img/shared/icon_book.webp) no-repeat center;
	background-size: cover;
	width: 43px;
	height: 32px;
}

.search-jobs__tab__sp .toggle-link span.icon__note::before {
	background: url(../img/shared/icon_note.webp) no-repeat center;
	background-size: cover;
	width: 31px;
	height: 40px;
}

.search-jobs__tab__in .toggle-link,
.search-jobs__tab__in a {
	display: block;
	background: #E1E7EB;
	line-height: 60px;
	font-size: 18px;
	padding: 0 20px;
	margin-top: 1px;
	position: relative;
	color: #000;
}

.search-jobs__tab__in .toggle-link::after,
.search-jobs__tab__in a::after {
	content: "";
	background: url(../img/shared/icon_arrow02.webp) no-repeat !important;
	width: 10px !important;
	height: 18px !important;
	background-size: 100% auto !important;
	transform: translateY(-50%) rotate(0deg) !important;
	display: block;
	position: absolute;
	top: 50%;
	right: 34px !important;
	border-radius: 0 !important;
}

.search-jobs__tab__in .toggle-link {
	margin-top: 0;
}

.search-jobs__tab__in .toggle-link::after {
	transform: translateY(-50%) rotate(90deg) !important;
}

.search-jobs__tab__in .toggle-link::before {
	display: none !important;
}

.search-jobs__tab__in .toggle__child.active .toggle-link {
	margin-top: 0;
}

.search-jobs__tab__in .toggle__child.active .toggle-link::after {
	transform: translateY(-50%) rotate(-90deg) !important;
}

.search-jobs__tab__in .toggle-main.toggle-main__child a {
	background: #fff;
}






@media only screen and (max-width: 560px) {

	.search-jobs__tab__in .toggle-link,
	.search-jobs__tab__in a {
		font-size: 4.46vw;
		line-height: 2.8;
	}
	.search-jobs__tab__sp .toggle-link {
		font-size: 5.36vw;
	}
	.key__img {
        height: 111.25vw;
        top: 15.18vw;
	}

	.search-jobs__slider__item .ob-img,
	.feature__item .ob-img {
		height: 60vw;
	}

}
.feature-jobs__item feature img {
	width: 130px;
	height: 80px;
}