@charset "utf-8";
/* CSS Document */

.c-recruit-mv {
	background: linear-gradient(to bottom, #F1F9FC 90%, #FFF);
	padding-block: 10rem 20vw;
	margin-block: 0px;
	@media (max-width: 980px) {
		padding-block: 5rem 10rem;
	}
	@media (max-width: 768px) {
		padding-block: 5rem 30vw;
	}
}


.c-recruit-mv__inner {
	display: grid;
	gap: 3rem;
	@media (max-width: 768px) {
		margin-inline: auto;
	}
}

.c-recruit-mv__title {
	margin-bottom: 5rem;
}

.c-recruit-mv__desc {
	z-index: 1;
	position: relative;
	p {
		text-align: justify;
		font-size: clamp(1.4rem,1.6vw,1.8rem);
		line-height: var(--line-height-base);
		max-width: 844px;
		width: 50vw;
		@media (max-width: 768px) {
			width: 100%;
		}
	}
}

.c-recruit-mv__image {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	z-index: 0;
	max-width: 680px;
	width: 42vw;
	top: 20rem;
	right: 0px;
	position: absolute;
	@media (max-width: 1360px) {
		top: 25rem;
	}
	@media (max-width: 768px) {
		width: 100%;
		position: relative;
		top: 5rem;
	}
	span {
		display: block;
		width: 100%;
		aspect-ratio: 1/1;
	}
	.c-recruit-mv__image_01 {
		position: relative;
		max-width: 322px;
		width: 20vw;
		@media (max-width: 768px) {
			top: -8vw;
			width: 26vw;
		}
	}
	.c-recruit-mv__image_02 {
		max-width: 322px;
		width: 20vw;
		top: 12vw;
		margin-left: auto;
		position: relative;
		@media (max-width: 768px) {
			margin-left: 0px;
			top: 0px;
			width: 26vw;
		}
	}
	.c-recruit-mv__image_03 {
		top: 2vw;
		position: relative;
		max-width: 322px;
		width: 20vw;
		@media (max-width: 768px) {
			top: -10vw;
			width: 26vw;
		}
	}
}



.p-environment {
	padding-block: 10rem;
	color: #FFF;
	position: relative;
	@media (max-width: 767.98px) {
		padding-block: 6rem;
	}
	&::before {
		content: '';
		background-repeat: no-repeat !important;
		background-size: cover !important;
		display: inline-block;
		width: 100%;
		height: 100%;
		top: 0px;
		left: 0px;
		position: absolute;
		z-index: -2;
	}
	&::after {
		content: '';
		background: var(--back-base-color);
		mix-blend-mode: multiply;
		display: inline-block;
		width: 100%;
		height: 100%;
		top: 0px;
		left: 0px;
		position: absolute;
		z-index: -1;
	}
}

.p-environment#office::before {
	background-image: url("../img/invironment/environment-office_back.jpg");
}

.p-environment#tagawa::before {
	background-image: url("../img/invironment/environment-tagawa_back.jpg");
}

.p-environment#kanda::before {
	background-image: url("../img/invironment/environment-kanda_back.jpg");
}


.p-environment__title {
	font-size: clamp(2.5rem,4vw,5rem);
	font-weight: bold;
	margin-bottom: 6rem;
	@media (max-width: 767.98px) {
		margin-bottom: 3rem;
	}
}

.p-environment__desc {
	padding-block: 6rem;
	font-size: var(--font-size-18px);
	font-weight: 500;
	@media (max-width: 767.98px) {
		padding-block: 2rem;
	}
}

.p-environment__intro {
	display: flex;
	align-items: stretch;
	@media (max-width: 767.98px) {
		flex-wrap: wrap;
	}
	dt {
		background: rgba(255,255,255,0.3);
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		min-width: 223px;
		width: 20%;
		font-size: clamp(1.6rem,2.4vw,2.4rem);
		font-weight: bold;
		@media (max-width: 767.98px) {
			max-width: 100%;
			width: 100%;
			padding: 1rem;
		}
	}
	dd {
		padding: 1rem 3rem;
		@media (max-width: 767.98px) {
			width: 100%;
			padding: 2rem 1rem;
		}
	}
}

.p-environment__intro_title {
	font-size: clamp(1.6rem,2.4vw,2.4rem);
	font-weight: bold;
}

.p-environment__intro_desc {
	font-size: clamp(1.4rem,1.6vw,1.8rem);
	line-height: 200%;
	text-align: justify;
	margin-top: 1rem;
}

.p-environment__box {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 5rem 4rem;
	margin-top: 6rem;
	@media (max-width: 767.98px) {
		grid-template-columns: repeat(1,1fr);
		margin-top: 3rem;
	}
}

.p-environment__box_title {
	font-size: clamp(1.6rem,2.4vw,2.4rem);
	font-weight: bold;
	margin-block: 2rem 1rem;
}

.p-environment__box_desc {
	font-size: clamp(1.4rem,1.8vw,1.8rem);
	text-align: justify;
	line-height: 180%;
}

.environment-photo {
	width: 100%;
}



.p-welfare {
	padding-block: 10rem;
	background: #F8F8F3;
	position: relative;
	@media (max-width: 767.98px) {
		padding-block: 2rem;
	}
}

.p-welfare__title {
	font-size: clamp(2.5rem,4vw,5rem);
	font-weight: bold;
	color: var(--font-base-color);
}

.p-welfare__desc {
	padding-block: 4rem;
	font-size: clamp(1.4rem,1.6vw,1.8rem);
	@media (max-width: 767.98px) {
		padding-block: 2rem;
	}
}

.p-welfare__box {
	margin-block: 3rem 10rem;
	@media (max-width: 767.98px) {
		margin-block: 3rem 6rem;
	}
}

.p-welfare__box_title_wrap {
	display: flex;
	align-items: center;
	column-gap: 2rem;
	picture {
		width: 86px;
		@media (max-width: 767.98px) {
			width: 60px;
		}
		img {
			width: 100%;
			height: 100%;
			object-fit: contain;
		}
	}
}

.p-welfare__box_title_wrap_inner {
	span {
		font-size: clamp(1.4rem,1.8vw,1.8rem);
		font-weight: 500;
		display: flex;
		line-height: 1.3;
	}
	.p-welfare__box_title {
		font-size: clamp(2.4rem,4vw,4rem);
		font-weight: bold;
		color: var(--font-base-color);
	}
}

.p-welfare__box_inner {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	align-items: stretch;
	gap: 4rem;
	margin-block: 3rem 6rem;
	@media (max-width: 980px) {
			grid-template-columns: repeat(2,1fr);
			gap: 4rem 2rem;
	}
	@media (max-width: 599.98px) {
			grid-template-columns: repeat(1,1fr);
	}
	dl {
		overflow: hidden;
		border-radius: 20px;
		display: flex;
		flex-direction: column;
		* {
			padding-inline: 2rem;
			@media (max-width: 767.98px) {
				padding-inline: 2rem;
			}
		}
		dt {
			background: #66B1DC;
			color: #FFF;
			font-size: clamp(2.2rem,2.4vw,3rem);
			font-weight: bold;
			padding-block: 1rem;
			text-align: center;
		}
		dd {
			font-size: clamp(1.3rem,1.4vw,1.6rem);
			letter-spacing: -0.05em;
			background: #FFF;
			padding-block: 2rem 3rem;
			flex-grow: 1;
			text-align: justify;
		}
	}
}


.relo_club {
	a {
		overflow: hidden;
		border-radius: 20px;
		padding-inline: 0px;
		&:hover {
			opacity: 0.6;
			transition: 0.6s;
		}
		dt {
			background: #FFF;
			max-height: 100px;
			height: auto;
			img {
				height: 100%;
			}
		}
		dd {
			background: #1460A9;
			color: #FFF;
			display: flex;
			align-items: center;
			text-align: left;
			position: relative;
			padding-inline: 2rem;
			column-gap: 1rem;
			&::after {
				content: '';
				background: url("../img/invironment/icon-arrow.svg");
				background-repeat: no-repeat;
				background-size: contain;
				display: inline-block;
				width: 49px;
				height: 49px;
				position: relative;
				margin-left: auto;
				@media (max-width: 767.98px) {
					height: 29px;
				}
			}
		}
	}
}



.p-connections {
	padding-block: 10rem;
	background: var(--back-base-color);
	color: #FFF;
	position: relative;
	@media (max-width: 767.98px) {
		padding-block: 6rem;
	}
}

.p-connections__title {
	font-size: clamp(2.5rem,4vw,5rem);
	font-weight: bold;
}

.p-connections__desc {
	padding-block: 4rem;
	font-size: var(--font-size-18px);
	font-weight: 500;
	@media (max-width: 767.98px) {
		padding-block: 2rem;
	}
}

.p-connections__box {
	display: grid;
	grid-template-columns: repeat(3,1fr);
	gap: 3rem 4rem;
	@media (max-width: 767.98px) {
		grid-template-columns: repeat(1,1fr);
	}
}

.p-connections__box_inner {
	picture {
	position: relative;
		.connections_category {
			top: 0px;
			left: 0px;
			position: absolute;
			background: #FFF;
			color: var(--font-base-color);
			display: flex;
			padding: 1rem 2rem;
			font-size: clamp(1.6rem,2.4vw,2.4rem);
			font-weight: bold;
			@media (max-width: 767.98px) {
				padding: 0.5rem 2rem;
			}
		}
	}
}

.p-connections__box_title {
	font-size: clamp(1.6rem,2.4vw,2.4rem);
	font-weight: bold;
	margin-block: 2rem 1rem;
	text-align: center;
}

.p-connections__box_desc {
	font-size: clamp(1.4rem,1.6vw,1.6rem);
	text-align: center;
	line-height: 200%;
}
