@charset "UTF-8";

body {
	background-color: var(--bg-color--white);
}

@media (max-width: 767px) {
	.pc-br {
		display: none;
	}
}

#recruit_interview,
#recruit_talk,
#recruit_date,
#recruit_jobs {
	scroll-margin-top: 140px;
}

.recruit_section-container {
	display: block;
	max-width: 1360px;
	margin: 0 auto;
}

.recruit_section-title {
	padding: 0 clamp(0.625rem, -0.821rem + 3.01vw, 1.875rem) clamp(0rem, -0.361rem + 0.75vw, 0.313rem);
	border-bottom: clamp(0.125rem, 0.053rem + 0.15vw, 0.188rem) solid #006252;
	font-weight: bold;
	font-size: clamp(1.375rem, 0.797rem + 1.2vw, 1.875rem);
	letter-spacing: 0.05em;

	-webkit-text-stroke: 2px white;
	paint-order: stroke;
}

.recruit_section-title::first-letter {
	color: #006252;
	font-size: clamp(1.875rem, 0.429rem + 3.01vw, 3.125rem);

	-webkit-text-stroke: 2px white;
}

.recruit_section-text {
	padding: 0 clamp(0.625rem, -0.821rem + 3.01vw, 1.875rem);
	font-size: clamp(0.938rem, 0.648rem + 0.6vw, 1.188rem);
	line-height: clamp(1.5rem, 0.56rem + 1.96vw, 2.313rem);
	text-align: justify;
}

.recruit_main_container {
	background-repeat: no-repeat;
	background-position: center top;
}

@media screen and (min-width: 768px) {
	.recruit_section-container {
		width: 95%;
	}

	.recruit_section-title {
		letter-spacing: 0.05em;
	}

	.recruit_main_container {
		position: relative;
		overflow: hidden;
		padding-top: 65px;
		padding-bottom: 100px;
		background-image: url(../images/recruit/recruit_main-bgpc.webp);
		background-size: 3190px 5530px;
	}

	.recruit_main_container::before {
		position: absolute;
		top: 0;
		left: 50%;
		z-index: 0;
		transform: translateX(-50%);
		width: 100%;
		height: 100%;
		background-color: rgba(255, 255, 255, 0.15);
		content: "";

		backdrop-filter: blur(30px) brightness(115%);
	}

	.recruit_main_container::after {
		display: block;
		position: absolute;
		top: 0;
		left: 50%;
		z-index: 0;
		transform: translateX(-50%);
		width: 3190px;
		background-image: url(../images/recruit/recruit_main-bgpc1.webp);
		background-repeat: no-repeat;
		background-position: center top;
		background-size: 3190px 5312px;
		content: "";

		aspect-ratio: 1595/2656;
	}

	.recruit_main_container > * {
		position: relative;
		z-index: 3;
	}
}

@media screen and (max-width: 767px) {
	.recruit_section-container {
		width: calc(100% - 40px);
	}

	#recruit_interview,
	#recruit_talk,
	#recruit_date,
	#recruit_jobs {
		scroll-margin-top: 88px;
	}

	.recruit_main_container {
		position: relative;
		padding-top: 90px;
		padding-bottom: 70px;
	}

	.recruit_main_container::before {
		position: absolute;
		top: 0;
		left: 50%;
		z-index: -1;
		transform: translateX(-50%);
		min-width: 445px;
		width: 118.6667%;
		height: 100%;
		background-image: url(../images/recruit/recruit_main-bgpmb.webp);
		background-repeat: no-repeat;
		background-position: center top;
		background-size: 100%;
		content: "";
	}
}

/*******************************************************************************
	キービジュアル
 *******************************************************************************/
.recruit_visual-container {
	display: block;
	position: relative;
	overflow: hidden;
	width: 100%;
	max-height: 1080px;
	min-height: 505px;
}

.recruit_visual-movie {
	display: block;
	position: relative;
	z-index: 0;
	width: 100%;
	min-height: 505px;
	height: 100%;
}

.recruit_visual-movie video {
	width: 100%;
	height: 100%;

	object-fit: cover;
	object-position: center;
}

.recruit_visual-hide {
	visibility: hidden;
	position: absolute;
	opacity: 0;
}

.recruit_visual-title {
	display: flex;
	position: absolute;
	top: 62.5%;
	left: 50%;
	z-index: 3;
	transform: translate(-50%, -62.5%);
	max-width: 990px;
	width: 95%;
	padding: 85px 0 50px;
	border: 2px solid #ffffff;
	flex-direction: column;
}

.recruit_visual-theme {
	display: flex;
	width: 100%;
	flex-direction: column;
	align-items: center;

	row-gap: 20px;
}

.recruit_visual-theme img {
	display: flex;
	width: 100%;
	flex-direction: column;
	align-items: center;
	filter: drop-shadow(0px 0px 20px rgba(0, 151, 235, 0.5));
}

.recruit_visual-theme dt , .recruit_visual-theme dd {
	display: flex;
	width: 100%;
	flex-direction: column;
	align-items: center;
}

.recruit_visual-theme dt {
	row-gap: 20px;
}

.recruit_visual-theme dt img:nth-of-type(1) {
	max-width: 306px;
	min-width: 168px;
	width: 52%;
}

.recruit_visual-theme dt img:nth-of-type(2) {
	max-width: 498px;
	min-width: 274px;
	width: 70%;
}

.recruit_visual-theme dd img {
	display: block;
	max-width: 704px;
	min-width: 242px;
	width: 75%;
}

.recruit_visual-decorate {
	position: absolute;
	z-index: 2;
}

@media screen and (min-width: 768px) {
	.recruit_visual-container {
		height: 100svh;
	}

	@media screen and (min-width: 783px) {
		.admin-bar .recruit_visual-container {
			max-height: calc(1080px - 32px);
		}
	}

	@media screen and (max-width: 782px) {
		.admin-bar .recruit_visual-container {
			max-height: calc(1080px - 46px);
		}
	}

	.recruit_visual-container::before {
		position: absolute;
		top: 0;
		left: 50%;
		z-index: 1;
		transform: translateX(-50%);
		width: 100%;
		height: 100%;
		background-color: #000000;
		opacity: 0.2;
		content: "";
	}

	.recruit_visual-title {
		top: 62.5%;
		left: 50%;
		transform: translate(-50%, -62.5%);
		width: 95%;
		padding: 85px 0 50px;
	}

	.recruit_visual-theme dt {
		row-gap: 20px;
	}

	.recruit_visual-decorate {
		bottom: 0;
		left: 0;
		max-width: 280px;
		width: 200%;

		aspect-ratio: 140/139;
	}
}

@media screen and (max-width: 767px) {
	.recruit_visual-container {
		aspect-ratio: 16/9;
	}

	.recruit_visual-title {
		top: 62.5%;
		left: 50%;
		transform: translate(-50%, -62.5%);
		min-width: 295px;
		width: calc(100% - 80px);
		padding: 100px 0 110px;
	}

	.recruit_visual-theme dt {
		row-gap: 10px;
	}

	.recruit_visual-decorate {
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		max-width: 445px;
		width: 118.6667%;

		aspect-ratio: 89/111;
	}
}

/*******************************************************************************
	未来を描く
 *******************************************************************************/
.recruit_canvas-container {
	display: flex;
	max-width: 1295px;
	margin: 0 auto;

	row-gap: 10px;
}

.recruit_canvas-img {
	overflow: hidden;
	max-width: 665px;
	border-radius: 20px;
}

.recruit_canvas-img img {
	width: 100%;
	height: auto;
}

.recruit_canvas-content {
	display: flex;
	flex-direction: column;
}

.recruit_canvas-title {
	font-weight: 800;
	font-size: clamp(1.875rem, -0.783rem + 5.54vw, 3.938rem);
	line-height: clamp(2.75rem, -1.116rem + 8.05vw, 5.75rem);
	word-break: auto-phrase;
}

.recruit_canvas-text {
	display: flex;
	font-size: clamp(0.875rem, 0.472rem + 0.84vw, 1.188rem);
	line-height: clamp(1.438rem, 0.31rem + 2.35vw, 2.313rem);
	text-align: justify;
	flex-direction: column;
}

@media screen and (min-width: 768px) {
	.recruit_canvas-container {
		width: 95%;
		margin-bottom: 25px;
	}

	#recruit_interview .recruit_section-text {
		margin-bottom: 45px;
	}

	.recruit_canvas-img {
		width: 51.3513%;
		margin-top: auto;
	}

	.recruit_canvas-content {
		margin-right: -1.5444%;
		padding-bottom: 7.336%;

		row-gap: 30px;
	}

	.recruit_canvas-title {
		max-width: 650px;
	}

	.recruit_canvas-text {
		padding-right: 30px;

		row-gap: 20px;
	}
}

@media screen and (max-width: 767px) {
	.recruit_canvas-container {
		width: calc(100% - 40px);
		margin-bottom: 50px;
		flex-direction: column;
	}

	.recruit_canvas-img {
		width: 100%;
	}

	.recruit_canvas-content {
		row-gap: 10px;
	}

	.recruit_canvas-title br {
		display: none;
	}

	.recruit_canvas-text {
		padding-right: 10px;
		word-break: auto-phrase;

		row-gap: 10px;
	}
}

/*******************************************************************************
	人をしる
 *******************************************************************************/
.recruit_interview-nav {
	display: block;
	max-width: 1150px;
	width: 100%;
	margin: 0 auto;
}

.recruit_interview-list {
	display: flex;
	flex-wrap: wrap;
}

.recruit_interview-item {
	overflow: hidden;
	max-width: 365px;
	border-radius: 20px;
}

.recruit_interview-item a {
	display: block;
	position: relative;
}

.recruit_interview-item a:hover img {
	transform: scale(1.1);
}

.recruit_interview-img {
	display: block;
	width: 100%;
}

.recruit_interview-img img {
	width: 100%;
	height: 100%;
	transition: all 0.4s;

	object-position: center;
	object-fit: cover;
}

#interview-718 .recruit_interview-img img {
	object-position: 60%;
}

.recruit_interview-content {
	display: flex;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	flex-direction: column;
}

.recruit_interview-division {
	display: flex;
	max-width: 170px;
	width: clamp(8.438rem, 5.907rem + 5.27vw, 10.625rem);
	margin-left: clamp(0.625rem, 0.264rem + 0.75vw, 0.938rem);
	padding: clamp(0.125rem, -0.092rem + 0.45vw, 0.313rem) 10px;
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
	background-color: #000000;
	color: #ffffff;
	font-weight: bold;
	font-size: 14px;
	justify-content: center;
	align-items: center;
}


.recruit_interview-item:nth-of-type(odd) .recruit_interview-division {
	background-color: #ffa500;
}

.recruit_interview-item:nth-of-type(even) .recruit_interview-division {
	background-color: #0082e2;
}

.recruit_interview-theme {
	width: 100%;
	color: #2b1e1d;
	font-size: clamp(0.875rem, 0.73rem + 0.3vw, 1rem);
}

@media screen and (min-width: 768px) {
	#recruit_interview {
		margin-bottom: 125px;
	}

	#recruit_interview .recruit_section-title {
		margin-bottom: 20px;
	}

	.recruit_interview-list {
		display: grid;
		grid-template-columns: repeat(6, auto);

		gap: 25px;
	}

	.recruit_interview-item {
		max-width: none;
		width: 100%;
	}
	.recruit_interview-list {
		gap: 25px;
	}

	@media screen and (min-width: 1001px) {
		.recruit_interview-list {
			display: grid;
			grid-template-columns: repeat(6, auto);
		}
		/* 上2つ */
		.recruit_interview-item:nth-child(1) {
			grid-column: 2 / span 2;
		}

		.recruit_interview-item:nth-child(2) {
			grid-column: 4 / span 2;
		}

		/* 下3つ */
		.recruit_interview-item:nth-child(3) , .recruit_interview-item:nth-child(4) , .recruit_interview-item:nth-child(5) {
			grid-column: span 2;
		}
	}
	@media screen and (max-width: 950px) {
		.recruit_interview-list {
			display: flex;
			max-width: 790px;
			margin: 0 auto;
			flex-wrap: wrap;
		}.recruit_interview-item {
			width: calc(50% - 17.5px);
		}
	}

	.recruit_interview-img {
		min-height: 350px;

		aspect-ratio: 73/84;
	}

	.recruit_interview-content {
		padding: 0 clamp(0.625rem, -0.098rem + 1.51vw, 1.25rem) clamp(0.938rem, 0.576rem + 0.75vw, 1.25rem);
	}

	.recruit_interview-theme {
		display: flex;
		font-weight: 900;
		flex-direction: column;

		row-gap: 5px;
	}
	@media screen and (max-width: 1060px) {
		.recruit_interview-theme {
			font-size: 13px;
		}
	}

	.recruit_interview-theme span {
		display: inline-flex;
		width: fit-content;
		padding: 5.5px 10px;
		border-radius: 5px;
		background-color: #ffffff;
	}
}

@media screen and (max-width: 767px) {
	#recruit_interview {
		margin-bottom: 50px;
	}

	#recruit_interview .recruit_section-title {
		margin-bottom: 10px;
	}

	#recruit_interview .recruit_section-text {
		margin-bottom: 15px;
	}

	.recruit_interview-list {
		display: flex;
		column-gap: 10px;
		flex-wrap: wrap;

		row-gap: 15px;
	}

	.recruit_interview-item {
		width: calc(50% - 5px);
		box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
	}

	.recruit_interview-img {
		min-height: 250px;

		aspect-ratio: 13/20;
	}

	.recruit_interview-img img {
		object-position: center bottom;
	}

	.recruit_interview-theme {
		padding: 7px 10px 18px;
		border-bottom-right-radius: 20px;
		border-bottom-left-radius: 20px;
		background-color: #ffffff;
		font-weight: bold;
		line-height: 20px;
	}
}

@media screen and (max-width: 500px) {
	.recruit_interview-img img {
		height: 70%;
	}
}

/*******************************************************************************
	JAにしうわってどんなとこ？
 *******************************************************************************/
.recruit_talk-container {
	display: block;
	max-width: 1655px;
	width: 100%;
	margin: 0 auto;
	border-radius: clamp(0rem, -1.933rem + 4.03vw, 2.188rem);
	background-image: url(../images/recruit/recruit_talk-bg.webp);
	background-repeat: repeat;
	background-position: center;
	background-size: 1655px 790px;
}

.recruit_talk-inner {
	display: flex;
	max-width: 1555px;
	margin: 0 auto;
	column-gap: clamp(1.25rem, -1.512rem + 5.75vw, 4.375rem);
}

.recruit_talk-img {
	position: relative;
	max-width: 875px;
	width: 100%;

	aspect-ratio: 175/129;
}

.recruit_talk-img img:not(.recruit_talk-move) {
	max-width: 520px;
	width: 59.4286%;
	height: auto;
	border-radius: 25px;
}

.recruit_talk-img img.recruit_talk-move {
	position: absolute;
	height: auto;
	border-radius: 30px;
}

.recruit_talk-img img.recruit_talk-bottom {
	bottom: 0;
	left: clamp(2.188rem, -5.269rem + 15.54vw, 10.625rem);
	max-width: 475px;
	min-width: 210px;
	width: 54.2858%;
}

.recruit_talk-img img.recruit_talk-right {
	right: 0;
	bottom: clamp(2.813rem, -0.225rem + 6.33vw, 6.25rem);
	max-width: 320px;
	width: 36.5715%;
}

.recruit_talk-content {
	display: flex;
	width: 100%;
	margin-bottom: clamp(0rem, -2.209rem + 4.6vw, 2.5rem);
	flex-direction: column;
}

.recruit_talk-theme {
	max-width: 520px;
	width: 100%;
	margin-bottom: 40px !important;
}

.recruit_talk-theme img {
	width: 100%;
}

.recruit_talk-title {
	margin-bottom: 10px;
	font-weight: bold;
	font-size: clamp(1.125rem, 0.462rem + 1.38vw, 1.875rem);
}

.recruit_talk-text {
	margin-bottom: clamp(0.938rem, -2.1rem + 6.33vw, 4.375rem);
	font-size: clamp(0.938rem, 0.717rem + 0.46vw, 1.188rem);
	line-height: clamp(1.5rem, 0.782rem + 1.5vw, 2.313rem);
	text-align: justify;
}

.recruit_talk-content a {
	display: flex;
	position: relative;
	max-width: 200px;
	width: 100%;
	padding: 11px 0;
	border: 2px solid #006252;
	background-color: #006252;
	color: #ffffff;
	font-weight: bold;
	font-size: 16px;
	column-gap: 10px;
	justify-content: center;
	align-items: center;
	transition: all 0.4s;
}

.recruit_talk-content a .icon-icon_arrow {
	position: absolute;
	right: 20px;
}

.recruit_talk-content a:hover {
	background-color: #ffffff;
	color: #006252;
	cursor: pointer;
}

@media screen and (min-width: 835px) {
	.display_mb {
		display: none;
	}

	.recruit_talk-inner {
		justify-content: flex-end;
		align-items: flex-end;
	}

	.recruit_talk-img {
		min-height: 360px;
	}

	.recruit_talk-content {
		max-width: 570px;
	}

	.recruit_talk-text {
		max-width: 490px;
	}
}

@media screen and (max-width: 834px) {
	.display_pc {
		display: none;
	}

	.recruit_talk-inner {
		flex-direction: column;
	}

	.recruit_talk-theme {
		margin: 0 auto;
	}

	.recruit_talk-img {
		margin-bottom: 30px;
	}
}

@media screen and (min-width: 768px) {
	.recruit_talk-container {
		margin-bottom: 120px;
		padding: 72.5px 0;
	}

	.recruit_talk-inner {
		width: 95%;
	}

	.recruit_talk-img {
		aspect-ratio: 175/129;
	}

	.recruit_talk-img img:not(.recruit_talk-move) {
		aspect-ratio: 26/23;
		object-fit: cover;
	}

	.recruit_talk-bottom {
		aspect-ratio: 95/62;
		object-fit: cover;
	}

	.recruit_talk-right {
		aspect-ratio: 64/91 object-fit: cover;
	}

	.recruit_talk-title {
		margin-bottom: 10px;
	}
}

@media screen and (max-width: 767px) {
	.recruit_talk-container {
		margin-bottom: 65px;
		padding: 50px 20px 35px;
	}

	.recruit_talk-inner {
		width: 100%;
	}

	.recruit_talk-img {
		aspect-ratio: 67/62;
	}

	.recruit_talk-img img {
		object-fit: cover;
		object-position: center;
	}

	.recruit_talk-img img:not(.recruit_talk-move) {
		aspect-ratio: 40/41;
	}

	.recruit_talk-img img.recruit_talk-bottom {
		aspect-ratio: 14/9;
	}

	.recruit_talk-img img.recruit_talk-right {
		aspect-ratio: 24/41;
	}

	.recruit_talk-title {
		margin-bottom: 5px;
	}
}



/*******************************************************************************
	数値
 *******************************************************************************/
.recruit_date-list {
	display: flex;
	width: 100%;
	column-gap: 1.8382%;
	flex-wrap: wrap;
	justify-content: space-between;
}

.recruit_date-item {
	position: relative;
	z-index: 1;
	overflow: hidden;
	width: 100%;
	padding: 0 10px;
	border-radius: clamp(0.625rem, -0.098rem + 1.51vw, 1.25rem);
	box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
	background-color: #ffffff;
	background-repeat: no-repeat;
	background-position: right bottom;
	background-size: 100%;
	color: #006252;
}

.recruit_date-item::before {
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: right bottom;
	background-size: 100%;
	content: "";
}

@media screen and (min-width: 561px) {
	.recruit_date-narrow {
		max-width: 435px;
	}
}

.recruit_date-wide {
	max-width: 900px;
}




.recruit_date-title {
	display: flex;
	width: calc(100% - clamp(0rem, -4.337rem + 9.04vw, 3.75rem));
	margin: 0 auto;
	padding: 8px 10px;
	background-color: #f8f0c5;
	color: #2b1e1d;
	font-weight: bold;
	font-size: clamp(0.875rem, 0.08rem + 1.66vw, 1.563rem);
	line-height: clamp(1.25rem, 0.021rem + 2.56vw, 2.313rem);
	text-align: center;
	justify-content: center;
	align-items: center;
}

.recruit_date-result {
	display: flex;
	font-weight: 900;
	font-size: clamp(2.438rem, 1.642rem + 1.66vw, 3.125rem);
	flex-wrap: wrap;
	justify-content: center;
	align-items: baseline;
}

.recruit_date-result strong {
	font-size: clamp(4.938rem, 3.275rem + 3.46vw, 6.375rem);
}

#femalemanagementratio .recruit_date-result {
	font-size: clamp(1.875rem, 0.429rem + 3.01vw, 3.125rem);
}

#femalemanagementratio .recruit_date-result strong {
	font-size: clamp(3.813rem, 0.849rem + 6.17vw, 6.375rem);
}

#femalemanagementratio p {
	display: flex;
	width: 100%;
	color: #707070;
	font-weight: 500;
	font-size: clamp(0.875rem, 0.441rem + 0.9vw, 1.25rem);
	line-height: clamp(1.375rem, 0.508rem + 1.81vw, 2.125rem);
	text-align: center;
	word-break: auto-phrase;
	flex-direction: column;
}

.recruit_date-table {
	max-width: 810px;
	width: 100%;
	margin: 0 auto;
	border-collapse: collapse;
	border-spacing: 0;
}

.recruit_date-table th {
	font-weight: bold;
	font-size: clamp(0.875rem, -0.282rem + 2.41vw, 1.875rem);
}

.recruit_date-table tbody tr:not(:nth-last-of-type(1)) {
	border-bottom: clamp(0.063rem, -0.01rem + 0.15vw, 0.125rem) solid #006252;
}

.recruit_date-table thead th {
	text-align: center !important;
}

.recruit_date-table thead th:nth-of-type(1) {
	max-width: 140px;
	width: 17.2839%;
}

.recruit_date-table thead th:nth-of-type(2) , .recruit_date-table thead th:nth-of-type(3) {
	max-width: 205px;
	width: 25.3086%;
}

.recruit_date-table thead th:nth-of-type(4) , .recruit_date-table tbody td:nth-of-type(3) {
	max-width: 260px;
	padding-right: clamp(0.625rem, -2.628rem + 6.78vw, 3.438rem);
}


.recruit_date-table tbody th {
	color: #707070;
	text-align: right;
}

.recruit_date-table tbody td {
	font-weight: 900;
	font-size: clamp(1rem, -0.229rem + 2.56vw, 2.063rem);
	line-height: 1.25;
	text-align: center;
}

.recruit_date-table tbody td strong {
	font-size: clamp(2rem, -0.602rem + 5.42vw, 4.25rem);
}

.recruit_date-donut {
	display: flex;
	max-width: 360px;
	width: 100%;
	margin: 0 auto;
	column-gap: 10px;
	justify-content: space-between;
}

.recruit_date-donut li {
	max-width: 160px;
	width: calc(50% - 5px);
}

.recruit_date-donut dl {
	display: flex;
	flex-direction: column;
	align-items: center;

	row-gap: 10px;
}

.recruit_date-donut dt {
	display: flex;
	font-weight: bold;
	font-size: clamp(1rem, -0.012rem + 2.11vw, 1.875rem);
	column-gap: 10px;
	justify-content: center;
	align-items: baseline;
}

.recruit_date-donut dt i {
	font-size: clamp(1.5rem, -0.958rem + 5.12vw, 3.625rem);
}

.recruit_date-donut dd {
	width: 100%;
}

.recruit_date-graph {
	display: flex;
	position: relative;
	width: 100%;
	justify-content: center;
	align-items: center;

	aspect-ratio: 1/1;
}

.recruit_date-graph::before , .recruit_date-graph::after {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";

	mask-image: url(../images/recruit/circle_graph.png);
	mask-position: center;
	mask-size: 100%;
	mask-repeat: no-repeat;
}

.recruit_date-graph::before , .recruit_date-graph::after {
	background-color: #7dbcb2;
}

.recruit_date-graph::after {
	background-image: conic-gradient(#006252 var(--percent), transparent var(--percent) 100%);
}

.recruit_date-graph span {
	display: inline-flex;
	font-size: clamp(0.813rem, 0.09rem + 1.51vw, 1.438rem);
	align-items: baseline;
}

.recruit_date-graph strong {
	font-size: clamp(1.625rem, 0.179rem + 3.01vw, 2.875rem);
}

.recruit_date-caution {
	color: #707070;
	font-weight: 500;
	font-size: clamp(0.875rem, 0.441rem + 0.9vw, 1.25rem);
}


@media screen and (min-width: 768px) {
	#tenure::before {
		background-image: url(../images/recruit/tenure_bg.webp);
	}

	#overtime::before {
		background-image: url(../images/recruit/overtime_bg.webp);
	}

	#paidleave::before {
		background-image: url(../images/recruit/paidleave_bg.webp);
	}

	#parentalleavecount::before {
		background-image: url(../images/recruit/parentalleavecount_bg.webp);
	}

	#parentalleaverate::before {
		background-image: url(../images/recruit/parentalleaverate_bg.webp);
	}

	#femalemanagementratio::before {
		background-image: url(../images/recruit/femalemanagementratio_bg.webp);
	}

	#gradhire::before {
		background-image: url(../images/recruit/gradhire_bg.webp);
	}

	#gradstats::before {
		background-image: url(../images/recruit/gradstats_bg.webp);
	}


	#recruit_date {
		margin-bottom: 85px;
	}

	#recruit_date .recruit_section-title {
		margin-bottom: 15px;
	}

	#recruit_date .recruit_section-text {
		margin-bottom: 40px;
	}

	.recruit_date-list {
		margin-bottom: 15px;

		row-gap: 25px;
	}

	.recruit_date-item {
		padding-top: 25px;
	}

	.recruit_date-narrow {
		width: 31.9853%;
	}

	.recruit_date-wide {
		width: 66.1765%;
	}


	#tenure .recruit_date-title {
		margin-bottom: clamp(2.813rem, 1.728rem + 2.26vw, 3.75rem);
	}

	#overtime .recruit_date-title , #paidleave .recruit_date-title {
		margin-bottom: 25px;
	}

	#gradstats {
		padding-bottom: 35px;
	}

	#femalemanagementratio {
		padding-bottom: 25px;
	}

	#overtime , #paidleave {
		padding-bottom: 50px;
	}

	#parentalleaverate {
		padding-bottom: 45px;
	}


	#parentalleaverate .recruit_date-title , #femalemanagementratio .recruit_date-title {
		margin-bottom: 40px;
	}

	#parentalleavecount .recruit_date-title {
		margin-bottom: 45px;
	}

	#gradhire .recruit_date-title {
		margin-bottom: 30px;
	}

	#gradstats .recruit_date-title {
		margin-bottom: 20px;
	}

	#parentalleavecount thead th , #parentalleavecount tbody tr:nth-of-type(1) td {
		padding-bottom: 15px;
	}

	#femalemanagementratio p {
		margin-top: -5px;

		row-gap: 15px;
	}
}

@media screen and (max-width: 767px) {
	.recruit_date-item::before {
		max-width: 335px;
	}

	#tenure::before {
		background-image: url(../images/recruit/tenure_bg-mb.webp);
	}

	#overtime::before {
		background-image: url(../images/recruit/overtime_bg-mb.webp);
	}

	#paidleave::before {
		background-image: url(../images/recruit/paidleave_bg-mb.webp);
	}

	#parentalleavecount::before {
		background-image: url(../images/recruit/parentalleavecount_bg-mb.webp);
	}

	#parentalleaverate::before {
		background-image: url(../images/recruit/parentalleaverate_bg-mb.webp);
	}

	#femalemanagementratio::before {
		background-image: url(../images/recruit/femalemanagementratio_bg-mb.webp);
	}

	#gradhire::before {
		background-image: url(../images/recruit/gradhire_bg-mb.webp);
	}

	#gradstats::before {
		background-image: url(../images/recruit/gradstats_bg-mb.webp);
	}

	#recruit_date {
		margin-bottom: 60px;
	}

	#recruit_date .recruit_section-title {
		margin-bottom: 10px;
	}

	#recruit_date .recruit_section-text {
		margin-bottom: 5px;
	}

	.recruit_date-list {
		margin-bottom: 10px;
		column-gap: 15px;

		row-gap: 5px;
	}

	.recruit_date-item {
		padding-top: 20px;
		padding-bottom: 15px;
	}

	.recruit_date-title {
		word-break: auto-phrase;
	}

	.recruit_date-title br {
		display: none;
	}

	@media screen and (min-width: 561px) {
		.recruit_date-narrow {
			width: calc(33% - 7.5px);
		}

		.recruit_date-wide {
			width: calc(67% - 7.5px);
		}

		#tenure , #overtime , #parentalleaverate , #femalemanagementratio {
			width: calc(50% - 7.5px);
		}

		#tenure .recruit_date-title {
			margin-bottom: 20px;
		}
	}

	@media screen and (max-width: 560px) {
		.recruit_date-list {
			flex-direction: column;
		}

		.recruit_date-item {
			width: 100%;
		}
	}

	.recruit_date-wide .recruit_date-title , #parentalleaverate .recruit_date-title {
		margin-bottom: 10px;
	}

	#gradhire , #gradstats {
		width: 100%;
	}

	#parentalleavecount thead th , #parentalleavecount tbody tr:nth-of-type(1) td {
		padding-bottom: 10px;
	}

	#femalemanagementratio p {
		margin-top: -10px;

		row-gap: 5px;
	}
}



/*******************************************************************************
	職種別紹介
 *******************************************************************************/
.recruit_job-point {
	display: flex;
	max-width: 1030px;
	width: 100%;
	margin: 0 auto;
	flex-direction: column;
}

.recruit_job-point h3 {
	display: flex;
	color: #006252;
	font-weight: 900;
	font-size: clamp(1.063rem, -0.672rem + 3.61vw, 2.563rem);
	column-gap: clamp(0.313rem, -0.049rem + 0.75vw, 0.625rem);
	justify-content: center;
	align-items: center;
}

.recruit_job-point h3 i {
	font-size: clamp(2.188rem, -0.704rem + 6.02vw, 4.688rem);
}

.recruit_job-point dl {
	display: flex;
	width: 100%;
	column-gap: 10px;
	flex-wrap: wrap;
}

.recruit_job-point dt {
	display: flex;
	max-width: 135px;
	min-width: 115px;
	width: clamp(7.188rem, 5.742rem + 3.01vw, 8.438rem);
	padding: 5px 0;
	background-color: #006252;
	color: #ffffff;
	font-weight: 500;
	font-size: clamp(0.875rem, 0.658rem + 0.45vw, 1.063rem);
	justify-content: center;
	align-items: center;
}

.recruit_job-point dd {
	font-size: clamp(0.875rem, 0.658rem + 0.45vw, 1.063rem);
	line-height: clamp(1.438rem, 0.57rem + 1.81vw, 2.188rem);
}

.recruit_job-point dd p {
	display: flex;
	position: relative;
	width: 100%;
	border: 2px solid #006252;
	background-color: #ffffff;
	align-items: center;
}

.recruit_jobs-list {
	display: flex;
	width: 100%;
	margin: 0 auto;
	column-gap: 20px;
	flex-wrap: wrap;

	row-gap: 20px;
}

.recruit_jobs-item {
	display: flex;
	max-width: 670px;
	box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
	flex-direction: column;
}

.recruit_jobs-item h3 , .recruit_jobs-case {
	margin: 0 auto;
}

.recruit_jobs-item h3 {
	padding-bottom: 5px;
	border-bottom: 2px dashed #006252;
	color: #006252;
	font-weight: bold;
	font-size: clamp(0.938rem, 0.576rem + 0.75vw, 1.25rem);
}

.recruit_jobs-item h3 span {
	font-size: clamp(1.313rem, 0.806rem + 1.05vw, 1.75rem);
}

.recruit_jobs-case {
	display: flex;
	font-size: clamp(0.875rem, 0.586rem + 0.6vw, 1.125rem);
	flex-direction: column;
}

.recruit_jobs-case li {
	display: flex;
	line-height: clamp(1.313rem, 0.3rem + 2.11vw, 2.188rem);
	column-gap: 5px;
	align-items: baseline;
}

.recruit_jobs-case li .icon-icon_arrow_right {
	font-size: 13px;
}

/* .recruit_jobs-case li::before {
	font-size: 13px;
	content: "a";
} */
@media screen and (min-width: 768px) {
	#recruit_jobs .recruit_section-title {
		margin-bottom: 15px;
	}

	#recruit_jobs .recruit_section-text {
		margin-bottom: 45px;
	}

	.recruit_job-point {
		margin-bottom: 50px;

		row-gap: 20px;
	}

	.recruit_job-point dl {
		align-items: center;

		row-gap: 15px;
	}

	.recruit_job-point dd {
		width: calc(100% - clamp(7.188rem, 5.742rem + 3.01vw, 8.438rem) - 10px);
		padding-left: 20px;
	}

	.recruit_job-point dd p {
		padding: 13px clamp(0.625rem, -0.821rem + 3.01vw, 1.875rem);
	}

	.recruit_job-point dd p::before , .recruit_job-point dd p::after {
		position: absolute;
		top: 50%;
		right: 100%;
		transform: translateY(-50%);
		min-width: 22px;
		width: 20px;
		width: 22px;
		content: "";

		aspect-ratio: 11/8;
		mask-position: center;
		mask-size: 100%;
		mask-repeat: no-repeat;
	}

	.recruit_job-point dd p::before {
		background-color: #006252;

		mask-image: url(../images/recruit/recruit_job-bubble1.webp);
	}

	.recruit_job-point dd p::after {
		background-color: #ffffff;

		mask-image: url(../images/recruit/recruit_job-bubble2.webp);
	}

	.recruit_jobs-list {
		width: 100%;
	}

	.recruit_jobs-item {
		width: calc(50% - 10px);
		padding: 50px 0 40px;

		row-gap: 15px;
	}

	.recruit_jobs-item h3 , .recruit_jobs-case {
		max-width: 590px;
		width: 95%;
		padding: 0 10px;
	}
}

@media screen and (max-width: 767px) {
	#recruit_jobs {
		width: 100%;
	}


	#recruit_jobs .recruit_section-title , #recruit_jobs .recruit_section-text {
		width: calc(100% - 40px);
		margin: 0 auto;
	}

	#recruit_jobs .recruit_section-title {
		margin-bottom: 10px;
	}

	#recruit_jobs .recruit_section-text {
		margin-bottom: 30px;
	}

	.recruit_job-point {
		margin-bottom: 20px;
		padding: 25px 20px;
		background-color: #f5f5f5;

		row-gap: 10px;
	}

	.recruit_job-point dl {
		flex-direction: column;
	}

	.recruit_job-point dt {
		position: relative;
		z-index: 1;
		margin-bottom: -12px;
		margin-left: 10px;
	}

	.recruit_job-point dt:not(:nth-of-type(1)) {
		margin-top: 10px;
	}

	.recruit_job-point dd p {
		padding: calc(10px + 10px) clamp(0.625rem, -0.821rem + 3.01vw, 1.875rem) 15px;
	}

	.recruit_jobs-list {
		width: calc(100% - 40px);
		flex-direction: column;
	}

	.recruit_jobs-item {
		width: 100%;
		padding: 15px 10px 40px;

		row-gap: 10px;
	}

	.recruit_jobs-item h3 , .recruit_jobs-case {
		width: 100%;
	}

	.recruit_jobs-case {
		padding: 0 5px;

		row-gap: 5px;
	}
}



/*******************************************************************************
	募集要項
 *******************************************************************************/
.recruit_requirements-container {
	display: flex;
	position: relative;
	width: 100%;
	padding: 40px 0;
	background-color: #006252;
	justify-content: center;
	align-items: center;
}

.recruit_requirements-container::before {
	display: block;
	position: absolute;
	bottom: 40px;
	left: 50%;
	z-index: 1;
	transform: translateX(-50%);
	width: 1920px;
	height: 249px;
	background-image: url(../images/recruit/recruit_requirements-bg.webp);
	background-repeat: no-repeat;
	background-size: 100%;
	opacity: 0.2;
	content: "";
}

.recruit_requirements-inner {
	display: flex;
	max-width: 815px;
	width: 95%;
	margin: 0 auto;
	padding: 37px 0;
	border-radius: 20px;
	background-color: #ffffff;
	flex-direction: column;
	align-items: center;

	row-gap: 20px;
}

.recruit_requirements-inner p {
	display: block;
	font-weight: 500;
	font-size: clamp(0.938rem, 0.264rem + 1.4vw, 1.188rem);
	line-height: clamp(1.688rem, -0.165rem + 3.86vw, 2.375rem);
	text-align: center;
}

.recruit_requirements-inner p span:not(.recruit_requirements-hide) {
	position: relative;
	z-index: 1;
}

.recruit_requirements-inner p span:not(.recruit_requirements-hide)::before {
	display: block;
	position: absolute;
	bottom: calc(0px - clamp(0rem, -0.842rem + 1.75vw, 0.313rem));
	left: 0;
	z-index: -1;
	width: calc(100%);
	height: 20px;
	background-color: #ffeb00;
	content: "";
}

.recruit_requirements-link {
	display: flex;
	position: relative;
	z-index: 1;
	max-width: 525px;
	min-width: 275px;
	width: 82.5%;
	padding: 30.5px 0;
	border: 5px solid #ff9300;
	border-radius: 10px;
	box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
	background-color: #ff9300;
	color: #ffffff;
	font-weight: bold;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	transition: all 0.4s;
}

.recruit_requirements-link:hover {
	background-color: #ffffff;
	color: #ff9300;
}

.icon-Icon_bg:before {
	transition: all 0.4s;
}

.recruit_requirements-link:hover .icon-Icon_bg:before {
	color: #ff9300;
}

.recruit_requirements-link dt {
	display: flex;
	font-size: clamp(1.625rem, -0.059rem + 3.51vw, 2.25rem);
	letter-spacing: 0.2em;
	column-gap: clamp(0.938rem, 0.095rem + 1.75vw, 1.25rem);
	align-items: center;
}

.recruit_requirements-link dt i {
	font-size: clamp(1.5rem, -1.363rem + 5.96vw, 2.563rem);
}

.recruit_requirements-link dd {
	font-weight: bold;
	font-size: 19px;
	text-align: center;
	letter-spacing: 0.1em;
}

@media screen and (min-width: 768px) {
	.recruit_requirements-container {
		padding: 40px 0;
	}

	.recruit_requirements-inner {
		width: 95%;
		padding: 37px 0;

		row-gap: 20px;
	}

	.recruit_requirements-hide {
		display: none;
	}
}

@media screen and (max-width: 767px) {
	.recruit_requirements-container {
		padding: 25px 0;
	}

	.recruit_requirements-inner {
		width: calc(100% - 40px);
		padding: 25.5px 0;

		row-gap: 10px;
	}

	.recruit_requirements-inner p {
		max-width: 255px;
	}

	.recruit_requirements-link dd {
		display: none;
	}

	.recruit_requirements-link {
		position: relative;
		overflow: hidden;
		background-color: rgba(255, 98, 0, 0.85);
	}

	.recruit_requirements-link::before , .recruit_requirements-link::after {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		align-self: 0;
		content: "";
	}

	.recruit_requirements-link:hover::before {
		transform: scale(1.1);
	}

	.recruit_requirements-link::before {
		background-image: url(../images/recruit/recruit_requirements-link.webp);
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;
		transition: all 0.4s;
	}

	.recruit_requirements-link::after {
		background-color: rgba(255, 98, 0, 0.85);
	}

	.recruit_requirements-link dl {
		position: relative;
		z-index: 1;
	}
}
