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

/* RECRUIT */

/*------------------------------*/
/* ================================

メッセージ

================================ */
@media (min-width: 960px) {
	.message__inner {
		display: grid;
		grid-template-areas:
		"headline	photo"
		"text		photo";
		grid-template-rows: auto 1fr ;
		grid-template-columns: minmax(330px, 0.6fr) minmax(550px, 1fr);
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
		gap: 0 var(--gutter-var-2xl);
	}
	.message__headline {
		grid-area: headline;
	}
	.message__photo {
		grid-area: photo;
		max-width: calc(880rem / 16);
	}
	.message__txt-wrapper {
		grid-area: text;
	}
}
@supports (container-type: inline-size) {
	#message {
		container-type: inline-size;
		container-name: message-size;
	}
	@container message-size (max-width: 969px) {
		.message__inner {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
			-webkit-box-orient: vertical;
			-webkit-box-direction: normal;
			    -ms-flex-direction: column;
			        flex-direction: column;
		}
		.message__photo {
			-webkit-box-flex: 1;
			    -ms-flex-positive: 1;
			        flex-grow: 1;
			margin-top: calc(6.25em - var(--gutter-common));
		}
		.message__txt-wrapper {
			-webkit-box-flex: 1;
			    -ms-flex-positive: 1;
			        flex-grow: 1;
			width: 100%;
			padding-right: var(--gutter-var-xl);
		}
	}
}
@media (max-width: 959px) {
	.message__inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
	}
	.message__photo {
		-webkit-box-flex: 1;
		    -ms-flex-positive: 1;
		        flex-grow: 1;
		margin-top: calc(6.25em - var(--gutter-common));
	}
	.message__txt-wrapper {
		-webkit-box-flex: 1;
		    -ms-flex-positive: 1;
		        flex-grow: 1;
		width: 100%;
		padding-right: var(--gutter-var-xl);
	}
}
@media (max-width: 559px) {
	.message__photo {
		margin-top: calc(4.25em - var(--gutter-common));
	}
}
/* --------------
画像 */
.message__photo {
	margin-right: var(--gutter-common);
	width: calc(100% - var(--gutter-common));
	padding-bottom: var(--gutter-common);
	position: relative;
}
.message__photo-inner {
	width: 100%;
	height: -webkit-fit-content;
	height: -moz-fit-content;
	height: fit-content;
	aspect-ratio: 3 / 2;
}
.message__photo img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
}
@supports not (aspect-ratio: 3 / 2) {
	.message__photo-inner {
		position: relative;
	}
	.message__photo-inner::before {
		content: "";
		display: inline-block;
		padding-top: 66.666%;
	}
	.message__photo img {
		position: absolute;
		top: 0;
		left: 0;
	}
}
/* シャドー */
.message__photo::after {
	content: "";
	display: inline-block;
	width: 100%;
	height: calc(100% - var(--gutter-common));
	background-color: var(--color-sub-soft);

	position: absolute;
	top: var(--gutter-common);
	right: calc(0px - calc(var(--gutter-common) * 2));
	z-index: -1;
}
/* --------------
テキスト */
.message__txt-wrapper {
	margin-top: 5.25em;
}
.message__txt {
	margin-top: 3.125em;
}
@media (max-width: 559px) {
	.message__txt-wrapper {
		margin-top: 4.25em;
	}
	.message__txt {
		margin-top: 2.125em;
	}
}
/* 改行位置 */
@supports (container-type: inline-size) {
	.message__txt-wrapper {
		container-type: inline-size;
		container-name: message-size;
	}
	@container message-size (max-width: 427px) {
		.message__txt .blake {
			display: none;
		}
	}
}



/* ================================

募集要項

================================ */
.job__table-wrapper {
	width: 100%;
	padding: 3.1em var(--gutter-var-xl);
	background-color: var(--color-base);

	margin-top: var(--gutter-md);

	display: -webkit-box;

	display: -ms-flexbox;

	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}
/* ----------
テーブル */
.job__table {
	width: 100%;
}
.job__table tr {
	width: 100%;

	display: -webkit-box;

	display: -ms-flexbox;

	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
.job__table tr:not(:last-child) {
	border-bottom: 1px solid var(--color-sub-line);
}
.job__table th,
.job__table td {
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;

	font-size: var(--txt-reg);
	font-weight: 400;
	padding-top: 0.7em;
	padding-bottom: 0.7em;
}
.job__table th {
	width: min(12em, 220px);
	max-width: 100%;
}
.job__table td {
	width: max(
		calc(100% - min(12em, 220px)),
		330px
	);
	max-width: 100%;
}
@supports (container-type: inline-size) {
	.job__table-wrapper {
		container-type: inline-size;
		container-name: table-size;
	}
	@container table-size (max-width: 518px) {
		.job__table th {
			padding-top: 1em;
			padding-bottom: 0;

			font-weight: 600;
		}
		.job__table td {
			padding-bottom: 1em;
		}
	}
}
@media (max-width: 787px) {
	.job__table-wrapper {
		padding: 2.1em var(--gutter-var-xl);
	}
	.job__table th {
		padding-top: 1em;
		padding-bottom: 0;

		font-weight: 600;
	}
	.job__table td {
		padding-bottom: 1em;
	}
}
@media (max-width: 559px) {
	#job .content__after-bg-inner {
		max-width: 75%;
	}
}
/* ----------
ボタン */
.entry-button {
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;

	width: 100%;
	padding-right: calc(var(--button-gup) + var(--button-arrow-size));
	padding-left: calc(var(--button-gup) + var(--button-arrow-size));
	position: relative;

	margin-top: 2em;
}
.entry-button .arrow {
	position: absolute;
	right: var(--button-gup);
}
@media (max-width: 787px) {
	.entry-button {
		margin-top: 1em;
	}
}