@charset "UTF-8";
/*
Theme Name: チューリング株式会社_リクルート
Version: 1.0.0
*/

html {
	scroll-behavior: smooth;
}

* {
	--font-size: calc((var(--fs) / 16) * 1rem);
	font-size: var(--font-size);
}

::after,
::before,
:where(b, strong, span, i, em) {
	--font-size: calc((var(--fs) / 16) * 1rem);
	font-size: inherit;
}

body {
	color: var(--color-body-1);
	font-family: var(--gothic);
	font-weight: var(--fw);
}

img {
	max-width: 100%;
	height: auto;
}

:where(a, button) {
	transition: var(--ts);
}

a {
	color: var(--color-body-1);
	text-decoration: none;
}

a:where(:not([href]), [href=""]) {
	pointer-events: none;
}

@media (min-width: 768px) {
	a[href^="tel:"] {
		pointer-events: none;
	}
}

hr {
	border-top: 1px solid var(--color-gray-2);
	margin-block: 60px;
	opacity: 1;
}

main {
	overflow: clip;
	@media (min-width: 992px) {
		padding-block: 40px 120px;
		padding-right: var(--padding);
	}
	@media (max-width: 991px) {
		padding-bottom: 100px;
		padding-inline: var(--padding);
	}
}

.container {
	padding-inline: 0;
	max-width: var(--container);
}

.container-small {
	--container: 810px;
}

.stack {
	padding-top: var(--stack);
	padding-bottom: var(--stack);
}

.header {
	@media (min-width: 992px) {
		display: grid;
		gap: 24px;
		padding-block: 40px;
		padding-inline: var(--padding) calc(var(--padding) + 20px);
		position: sticky;
		top: 0;
	}
}

.header-title {
	display: contents;
}

.header-logo {
	display: inline-grid;
	line-height: 1;
	@media (min-width: 992px) {
		gap: 14px;
		place-items: center;
		place-content: center;
	}
	@media (max-width: 991px) {
		gap: 8px;
		margin: 24px 0 15px 18px;
		width: 143px;
	}
	a:hover {
		opacity: var(--op);
	}
}

.header-logo-text {
	--fs: 18;
	color: var(--color-theme-1);
	font-size: var(--font-size);
	font-weight: 700;
	@media (max-width: 992px) {
		--fs: 16;
	}
}

.header-nav {
	display: contents;
}

.header-menu {
	list-style: none;
	margin: 0;
	background: var(--color-gray-1);
	border-radius: 6px;
	padding: 8px 20px;
	width: 220px;
	box-shadow: 1px 1px 0px rgba(0, 0, 0, 0.12);
}

.header-item {
	align-items: center;
	display: flex;
	font-weight: 500;
	gap: 12px;
	padding-block: 16px;
	&:is(li + li *) {
		border-top: 1px solid var(--color-gray-2);
	}
	&.active {
		color: var(--color-theme-1);
		font-weight: 700;
	}
	&:hover {
		color: var(--color-theme-1);
	}
}

.header-item-icon {
	margin-left: auto;
	width: 6px;
	&::before {
		--icon: url(./img/icon-arrow-sm.svg);
		aspect-ratio: 6/9;
		transition: transform var(--ts);
	}
	&:where(.header-item:hover *)::before {
		transform: translateX(100%);
	}
}

.header-cta {
	display: grid;
	gap: 12px;
	.cta-button-outline,
	.cta-button {
		padding-inline: 30px;
		width: 100%;
	}
	.cta-button {
		--icon: url(img/icon-arrow-sm-2.svg);
		&:hover {
			--color: var(--color-theme-1);
			--icon: url(img/icon-arrow-sm-3.svg);
		}
	}
	.cta-button-outline {
		--icon: url(img/icon-arrow-sm-3.svg);
	}
	.cta-button-icon {
		right: 23px;
		width: 6px;
		&::before {
			aspect-ratio: 6/9;
		}
	}
}

.cta-button-icon {
	&::before {
		transition: transform var(--ts);
	}
	&:where(.cta-button:hover *)::before {
		transform: translateX(100%);
	}
}

.footer {
	background: var(--color-gray-1);
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 16px 0;
	overflow: hidden;
	padding: 64px 60px 16px;
}

.footer-logo {
	line-height: 1px;
	transition: var(--ts);
	&:hover {
		opacity: var(--op);
	}
}

.footer-address {
	line-height: var(--lh);
	margin-top: 14px;
}

.footer-nav {
	display: flex;
	gap: 40px;
}

.footer-menu {
	list-style: none;
	margin: 0;
	padding: 0;
	align-content: start;
	display: grid;
	gap: 14px;
}

.footer-item {
	align-items: center;
	display: inline-flex;
	font-weight: 500;
	gap: 14px;
	line-height: var(--lh);
}

a:where(.page-body p *),
:where(.footer-item-text, .subpage-item-title-text, .cta-link-text) {
	background: linear-gradient(to top, var(--color-theme-1) 2px, transparent 2px) no-repeat left 100%/ 0 2px;
	display: inline;
	transition: var(--ts);
	&:where(a:hover *, .page-body p *:hover) {
		color: var(--color-theme-1);
		background-size: 100% 2px;
	}
}

.footer-copyright {
	--fs: 12;
	color: var(--color-gray-3);
	grid-column: 1/-1;
	padding: 10px;
	margin: 0;
}

@media (min-width: 992px) {
	.header-drawer,
	.js-drawer {
		display: contents;
	}
	.header-drawer .header-logo,
	.header-drawer-toggle {
		display: none;
	}
	.footer-item-icon {
		display: none;
	}
	.page-layout {
		display: grid;
		grid-template-columns: auto 1fr;
		align-items: start;
		margin-inline: auto;
		max-width: 1440px;
	}
}

@media (max-width: 991px) {
	body.noscroll {
		overflow: hidden;
		touch-action: pinch-zoom;
	}
	.header-drawer-toggle {
		align-items: center;
		border: 0;
		border-radius: 6px;
		color: var(--color-body-1);
		display: inline-flex;
		font-family: var(--en);
		gap: 10px;
		padding: 8px 0 8px 10px;
		position: fixed;
		right: 10px;
		top: 20px;
		z-index: 11;
		min-width: 104px;
		&[aria-expanded="false"] .header-drawer-toggle-close,
		&[aria-expanded="true"] .header-drawer-toggle-open {
			display: none;
		}
		&::before {
			background: var(--color-gray-1);
			border-radius: 6px;
			box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.12);
			bottom: 0;
			content: "";
			left: 0;
			position: absolute;
			right: 0;
			top: 0;
			z-index: 0;
		}
		&[aria-expanded="true"]::after {
			background: #000;
			bottom: 0;
			content: "";
			opacity: 0.5;
			left: 0;
			position: fixed;
			right: 0;
			top: 0;
			z-index: -1;
		}
	}
	.header-drawer-toggle-icon {
		display: block;
		height: 8px;
		width: 18px;
		position: relative;
		z-index: 0;
		&::after,
		&::before {
			content: "";
			display: block;
			height: 2px;
			width: 18px;
			left: calc(50% - 9px);
			position: absolute;
			transition: top var(--ts) var(--ts), transform var(--ts);
		}
		&::before {
			background: var(--color-gray-4);
			top: calc(100% - 2px);
		}
		&::after {
			background: var(--color-theme-1);
			top: 0;
		}
		&:where([aria-expanded="true"] *) {
			&::after,
			&::before {
				top: calc(50% - 1px);
				transition: top var(--ts), transform var(--ts) var(--ts);
			}
			&::before {
				transform: rotate(-45deg);
			}
			&::after {
				transform: rotate(45deg);
			}
		}
	}
	.header-drawer-toggle-text {
		font-weight: 500;
		position: relative;
		z-index: 0;
	}
	.header-drawer {
		background: #fff;
		bottom: 0;
		left: 0;
		overflow: auto;
		position: fixed;
		top: 0;
		transition: transform 0.6s;
		width: 220px;
		z-index: 15;
		&:is(body:not(.noscroll) *) {
			transform: translateX(-220px);
			transition: 0s;
		}
	}
	.header-menu {
		padding: 8px 20px;
	}
	.header-cta {
		padding: 24px 20px;
	}
	.footer {
		padding: 0 0 10px;
		grid-template-columns: unset;
		gap: 0;
	}
	.footer-nav {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 0;
		margin-right: -1px;
		margin-bottom: 72px;
		padding-top: 1px;
		order: -1;
	}
	.footer-menu {
		grid-template-columns: subgrid;
		grid-template-rows: subgrid;
		grid-row: span 10;
		gap: 0;
		li {
			display: contents;
		}
	}
	.footer-item {
		border: 1px solid var(--color-gray-2);
		gap: 20px;
		justify-content: space-between;
		line-height: 1.2;
		margin-top: -1px;
		margin-left: -1px;
		padding: 16px;
	}
	.footer-item-icon {
		--icon: url(./img/icon-arrow-sm.svg);
		width: 6px;
		&::before {
			aspect-ratio: 6/9;
		}
	}
	.footer-info {
		text-align: center;
	}
	.footer-address {
		line-height: unset;
		margin-top: 24px;
	}
	.footer-copyright {
		padding: 0;
		text-align: center;
	}
}

@media (min-width: 992px) {
	h2:where(body.home .wp-block-heading) {
		--fs: 28;
	}
}

.top-mv {
	display: grid;
	min-height: 410px;
	margin-bottom: 50px;
	> * {
		grid-area: 1/-1;
	}
}

.top-mv-bg {
	img {
		border-radius: 6px;
		object-fit: cover;
		object-position: center;
		height: 100%;
		width: 100%;
	}
}

.top-mv-content {
	place-self: end start;
	display: grid;
	gap: 20px;
	margin: 30px 40px;
}

.top-mv-catch {
	--fs: 36;
	font-size: var(--font-size);
	font-weight: 700;
	margin-bottom: 0;
}

.top-mv-cta {
	display: flex;
	gap: 10px;
}

@media (min-width: 992px) {
	.top-mv-content {
		grid-template-columns: auto 1fr;
		place-self: end auto;
		align-items: end;
		margin: 0;
	}
	.top-mv-catch {
		--fs: 32;
	}
	.top-mv-catch-text {
		background: #fff;
		border-radius: 0 6px 0 0;
		-webkit-box-decoration-break: clone;
		box-decoration-break: clone;
		display: inline;
		line-height: calc(65 / 36);
		padding: 8px 16px;
	}
	.top-mv-cta {
		align-items: end;
		justify-content: end;
		flex-wrap: wrap;
		margin: 20px;
	}
}

.position-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(344px, 100%), 1fr));
	gap: 14px 24px;
	container-type: inline-size;
	li {
		display: contents;
	}
}

.position-item {
	align-items: center;
	background: var(--color-gray-1);
	border-radius: 6px;
	box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.12);
	display: flex;
	font-weight: 500;
	gap: 1em;
	justify-content: space-between;
	padding: 20px;
	position: relative;
	&:hover {
		color: var(--color-theme-1);
	}
	@media (min-width: 1440px) {
		&.is-long {
			grid-column: span 2;
		}
	}
}

.position-item-icon {
	&::before {
		transition: transform var(--ts);
	}
	&:where(.position-item:hover *,.cover-menu-item:hover *)::before {
		transform: translateX(100%);
	}
}

.top-business-catch {
	--fs: 18;
	border-left: 1px dashed #d0c6b7;
	border-bottom: 1px dashed #d0c6b7;
	font-weight: 500;
	padding: 3px 0 8px 10px;
}

.subpage-list {
	list-style: none;
	margin-block: 40px;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(252px, 100%), 1fr));
	gap: 20px 24px;
	li {
		display: contents;
	}
}

.subpage-item {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 2;
	gap: 13px 0;
	line-height: 1.2;
}

.page-item-icon {
	&::before {
		transition: transform var(--ts);
	}
	&:where(.page-item:hover *)::before {
		transform: translateX(100%);
	}
}


.subpage-item-img {
	grid-column: 1/-1;
	border-radius: 6px;
	overflow: hidden;
	img {
		aspect-ratio: 252/140;
		object-fit: cover;
		width: 100%;
		transition: transform var(--ts);
		&:is(.subpage-item:hover *) {
			transform: scale(1.1);
		}
	}
}

.subpage-item-title {
	--fs: 18;
	align-items: baseline;
	display: flex;
	gap: 1em;
	justify-content: space-between;
	font-weight: 500;
}

.page-list {
	background: #f3f1ee;
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(320px, 100%), 1fr));
	gap: 24px 20px;
	padding: 40px;
	li {
		display: grid;
		gap: 10px;
		> * {
			margin-bottom: 0;
		}
		p {
			line-height: 1.2;
		}
	}
}

.page-item {
	--fs: 18;
	align-items: center;
	background: #fff;
	border-right: 1px solid var(--color-theme-1);
	border-bottom: 1px solid var(--color-theme-1);
	border-radius: 6px;
	display: flex;
	font-weight: 700;
	gap: 12px;
	min-height: 86px;
	padding: 20px;
	&:hover {
		color: var(--color-theme-1);
	}
}

.page-item-icon {
	margin-left: auto;
}

.top-gallery {
	&:is(:not(hr) + *) {
		margin-top: 80px;
	}
}

.gallery-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(252px, 100%), 1fr));
	gap: 24px;
	img {
		aspect-ratio: 1;
		border-radius: 6px;
		object-fit: cover;
		width: 100%;
	}
}

@media (max-width: 991px) {
	.position-list {
		gap: 8px;
	}
	.top-business-catch {
		--fs: 16;
		padding: 1px 0 5px 13px;
	}
	.subpage-list {
		grid-template-columns: 1fr 1fr;
		gap: 20px 14px;
	}
	.subpage-item {
		gap: 12px;
	}
	.subpage-item-title {
		--fs: 16;
	}
	.page-list {
		gap: 20px;
		padding: 30px 12px;
	}
	.gallery-list {
		grid-template-columns: 1fr 1fr;
		gap: 14px;
	}
	.top-mv-content {
		background: #fff;
		border-radius: 6px;
		gap: 12px;
		justify-self: center;
		margin: 0 auto 16px;
		padding: 15px 20px;
	}
	.top-mv-catch {
		--fs: 20;
		line-height: 1.5;
	}
	.top-mv-cta {
		.cta-button {
			padding-block: 10px;
			min-width: 142px;
		}
	}
}

@media (max-width: 575px) {
	.page-item {
		min-height: 43px;
		padding-block: 0;
	}
}

.cta {
	display: grid;
	> * {
		grid-area: 1/-1;
	}
}

.cta-bg {
	img {
		border-radius: 12px;
		height: 100%;
		object-fit: cover;
		width: 100%;
	}
}

.cta-content {
	align-items: center;
	color: #fff;
	display: grid;
	gap: 44px 60px;
	padding: 60px 65px;
	@media (min-width: 1200px) {
		grid-template-columns: 2fr 1fr;
	}
}

.cta-title {
	--fs: 52;
	align-items: center;
	display: flex;
	font-size: var(--font-size);
	font-family: var(--en);
	font-weight: 500;
	gap: 17px;
	margin-bottom: 12px;
	margin-left: -65px;
	&::before {
		background: var(--color-theme-1);
		content: "";
		clip-path: polygon(0 0, 100% 0, calc(100% - var(--tri, 10px)) 50%, 100% 100%, 0 100%);
		display: inline-block;
		height: 40px;
		width: 48px;
	}
}

.cta-text {
	--fs: 28;
	font-weight: 700;
	margin-bottom: 28px;
	line-height: 1.2;
	width: min(532px, 100%);
}

.cta-link {
	--fs: 18;
	align-items: center;
	color: #fff;
	display: inline-flex;
	font-weight: 500;
	gap: 14px;
}

.cta-link-icon {
	--icon: url(./img/icon-arrow-2.svg);
}

.cta-buttons {
	display: grid;
	gap: 12px;
	.cta-button {
		--fs: 20;
		font-weight: 500;
		padding-block: 27px;
		width: 100%;
	}
}

@media (max-width: 991px) {
	.cta-content {
		padding: 40px;
	}
	.cta-title {
		--fs: 40;
		margin-left: -40px;
		&::before {
			--tri: 6.5px;
			height: 26px;
			width: 30px;
		}
	}
	.cta-text {
		--fs: 20;
	}
}

@media (max-width: 575px) {
	.cta-buttons .cta-button {
		padding-block: 6px;
	}
}

.breadcrumbs {
	align-items: baseline;
	display: flex;
	gap: 0 8px;
	margin-bottom: 65px;
	> span {
		--fs: 12;
		font-size: var(--font-size);
		a {
			text-decoration: underline;
		}
		&:last-child {
			color: var(--color-theme-1);
			font-weight: 700;
			flex: 1 0 0%;
			overflow: hidden;
			text-overflow: ellipsis;
			max-width: 240px;
			max-inline-size: max-content;
			white-space: nowrap;
		}
	}
	@media (max-width: 991px) {
		justify-content: flex-end;
		margin-bottom: 24px;
	}
}

.page-header {
	border-bottom: 1px solid var(--color-theme-1);
	padding-bottom: 44px;
	margin-bottom: 50px;
	&:has(.page-header-info) {
		display: flex;
		flex-direction: column;
		gap: 10px;
		padding-bottom: 30px;
		margin-bottom: 45px;
	}
}

.page-header-title {
	display: flex;
	align-items: flex-start;
	gap: 22px;
	--fs: 44;
	font-size: var(--font-size);
	font-weight: 700;
	margin-bottom: 0;
	&.company::before,
	&.work::before,
	&.interview::before,
	&.positions::before,
	&.about::before,
	&.business::before,
	&.workplace::before,
	&.selection::before {
		content: "";
		display: inline-block;
		width: 52px;
		min-width: 52px;
		aspect-ratio: 1 / 1;
	}
	&.company::before {
		background: url(./img/icon-company.svg) center / cover;
	}
	&.work::before {
		background: url(./img/icon-bag.svg) center / cover;
	}
	&.interview::before {
		background: url(./img/icon-people.svg) center / cover;
	}
	&.positions::before {
		background: url(./img/icon-positions.svg) center / cover;
	}
	&.about::before {
		background: url(./img/icon-text.svg) center / cover;
	}
	&.business::before {
		background: url(./img/icon-car.svg) center / cover;
	}
	&.workplace::before {
		background: url(./img/icon-marker.svg) center / cover;
	}
	&.selection::before {
		background: url(./img/icon-clipboard.svg) center / cover;
	}
}

.page-header-info {
	display: flex;
	align-items: center;
	gap: 0 16px;
	.interview-category {
		display: block;
		--fs: 20;
		font-size: var(--font-size);
		font-weight: 500;
		color: var(--color-theme-1);
	}
	.interview-join {
		display: block;
		--fs: 16;
		font-size: var(--font-size);
		color: var(--color-gray-7);
	}
}

@media (max-width: 991px) {
	.page-header {
		padding-bottom: 16px;
		margin-bottom: 40px;
		&:has(.page-header-info) {
			flex-direction: row;
			flex-wrap: wrap;
			justify-content: space-between;
			align-items: baseline;
			padding-bottom: 8px;
			margin-bottom: 36px;
		}
	}
	.page-header-title {
		--fs: 28;
		gap: 16px;
		&.company::before,
		&.work::before,
		&.interview::before,
		&.positions::before {
			width: 36px;
			min-width: 36px;
		}
	}
	.page-header-info {
		flex-direction: column;
		align-items: flex-end;
		.interview-category {
			--fs: 18;
		}
		.interview-join {
			--fs: 14;
		}
	}
}

p:where(.page-body *) {
	line-height: 1.8;
}

@media(min-width: 992px) {
	p:where(.page-body *) {
		--fs: 18;
	}
}

/*		社員を知る 一覧		*/
.jobs-category {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 20px 50px;
	background: var(--color-gray-5);
	border-radius: 12px;
	padding: 30px;
	margin-bottom: 90px;
	p {
		--fs: 22;
		font-size: var(--font-size);
		font-weight: 700;
		line-height: normal;
		color: var(--color-theme-1);
		margin-bottom: 0;
	}
}

.jobs-category-list {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 8px;
	list-style: none;
	padding: 0;
	margin-bottom: 0;
	a,
	button {
		display: block;
		--fs: 14;
		font-size: var(--font-size);
		font-weight: 500;
		background: #fff;
		border: none;
		border-radius: 50px;
		padding: 7px 20px;
		box-shadow: 0 1px 0 rgba(0, 0, 0, 0.12);
		&.active {
			pointer-events: none;
			color: #fff;
			background: var(--color-theme-1);
		}
		&:not(.active):hover {
			color: var(--color-theme-1);
		}
	}
}

.interview-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0 24px;
	list-style: none;
	padding-left: 0;
	margin-bottom: 80px;
	li {
		display: contents;
	}
}

.interview-item {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 4;
	gap: 0;
	background: var(--color-gray-5);
	border-radius: 6px;
	padding-bottom: 16px;
	margin-bottom: 40px;
	&:hover img {
		transform: scale(1.1);
	}
}

.interview-item-image {
	border-radius: 6px 6px 0 0;
	position: relative;
	overflow: hidden;
	img {
		width: 100%;
		aspect-ratio: 344 / 280;
		object-fit: cover;
	}
}

.interview-item-content {
	display: contents;
	background: var(--color-gray-5);
	border-radius: 0 0 6px 6px;
	padding: 16px 20px;
	> * {
		padding-right: 20px;
		padding-left: 20px;
	}
}

.interview-item-image {
	position: relative;
	overflow: hidden;
	margin-bottom: 16px;
	img {
		transition: var(--ts);
	}
}


.interview-item-category {
	display: block;
	--fs: 16;
	font-size: var(--font-size);
	font-weight: 500;
	color: var(--color-theme-1);
	line-height: calc(19 / 16);
	margin-bottom: 4px;
}

.interview-item-join {
	display: block;
	--fs: 14;
	font-size: var(--font-size);
	color: var(--color-gray-7);
	line-height: calc(17 / 14);
	margin-bottom: 4px;
}

.interview-item-title {
	--fs: 18;
	line-height: calc(22 / 18);
	font-weight: 500;
	margin-bottom: 8px;
}

.interview-item-catchcopy {
	--fs: 16;
	font-size: var(--font-size);
	line-height: 1.25;
	margin-bottom: 0;
}

.interview-work {
	border-top: 1px solid var(--color-gray-2);
	padding-top: 60px;
}

.work-list {
	display: grid;
	gap: 14px;
	list-style: none;
	padding: 0;
	margin: 0;
	li {
		display: contents;
	}
}

.work-item {
	align-items: center;
	background: var(--color-gray-1);
	border-radius: 6px;
	box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.12);
	display: flex;
	font-weight: 500;
	gap: 1em;
	justify-content: space-between;
	padding: 20px;
	position: relative;
	&:hover {
		color: var(--color-theme-1);
	}
	.item-icon {
		&::before {
			transition: transform var(--ts);
		}
		&:where(.work-item:hover *)::before {
			transform: translateX(100%);
		}
	}
}

@media (max-width: 991px) {
	.jobs-category {
		grid-template-columns: 1fr;
		padding: 20px 12px;
		margin-bottom: 70px;
		p {
			--fs: 20;
		}
	}
	.interview-list {
		grid-template-columns: repeat(2, 1fr);
		gap: 0 14px;
		margin-bottom: calc(100px - 24px);
	}
	.interview-item {
		margin-bottom: 24px;
	}
	.interview-item-content {
		padding: 12px 12px 20px 12px;
	}
	.work-list {
		gap: 7px;
	}
	.work-item {
		line-height: 1.2;
		padding-top: 21px;
		padding-bottom: 21px;
	}
}

/*		社員を知る詳細		*/

.single-interview .interview {
	--container: 810px;
}

.interview-share-info {
	margin-top: 80px;
}

.interview-share-info:not(:last-child) {
	margin-bottom: 80px;
}

.share-info-list {
	list-style: none;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(344px, 100%), 1fr));
	gap: 24px;
	margin-bottom: 0;
}

.share-info-item {
	display: grid;
	gap: 13px;
	> * {
		margin-bottom: 0;
	}
	&:hover {
		p span {
			color: var(--color-theme-1);
			background-size: 100% 2px;
		}
		.share-info-item-media img {
			transform: scale(1.1);
		}
	}
}

.share-info-item-media {
	aspect-ratio: 344/195;
	border-radius: 6px;
	overflow: hidden;
	img {
		aspect-ratio: 344/195;
		object-fit: cover;
		width: 100%;
		transition: transform var(--ts);
	}
}

.share-info-item-title {
	line-height: 1.25;
	span {
		background: linear-gradient(to top, var(--color-theme-1) 2px, transparent 2px) no-repeat left 100% / 0 2px;
		display: inline;
		transition: var(--ts);
	}
}

.interview-work-link {
	background: var(--color-gray-5);
	border-radius: 12px;
	padding: 54px 40px;
	margin-block: 80px;
	&:last-child {
		margin-bottom: 0;
	}
	.work-item {
		background: #fff;
	}
}

.interview-member {
	.interview-item-catchcopy {
		display: none;
	}
	.interview-item-title {
		margin-bottom: 0;
	}
}

@media (max-width: 991px) {
	.interview-share-info {
		margin-top: 60px;
	}
	.interview-share-info:not(:last-child) {
		margin-bottom: 60px;
	}
	.interview-work-link {
		padding: 54px 12px;
		margin-block: 60px;
	}
}

@media (max-width: 575px) {
	.interview-member {
		.interview-list {
			grid-template-columns: 1fr;
		}
		.interview-item-content {
			padding: 20px 16px;
		}
	}
}

/*		募集要項		*/
@media (min-width: 992px) {
	h2:where(body.page-id-62 .wp-block-heading) {
		--fs: 22;
	}
}

.positions-content {
	border-bottom: 1px solid var(--color-gray-2);
	padding-bottom: 120px;
	margin-bottom: 80px;
	.tab-pane:focus-visible {
		outline: none;
	}
}

.jobs-list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 24px;
	list-style: none;
	padding: 0;
	&:last-child {
		margin-bottom: 0;
	}
	li {
		display: contents;
	}
}

.jobs-item {
	display: grid;
	align-content: start;
	background: var(--color-gray-1);
	border-radius: 6px;
	padding: 26px 30px 30px 30px;
	.item-icon {
		&::before {
			transition: transform var(--ts);
		}
		&:where(.jobs-item:hover *)::before {
			transform: translateX(100%);
		}
	}
}

.jobs-item-title {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 1em;
	--fs: 20;
	font-size: var(--font-size);
	font-weight: 500;
	color: var(--color-theme-1);
	border-bottom: 1px dashed var(--color-gray-8);
	padding-bottom: 16px;
	margin-bottom: 16px;
}

.jobs-item-text {
	line-height: 1.5;
	margin-bottom: 0;
}

.jobs-item-text {
	overflow: hidden;
	display: -webkit-box;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

@media (max-width: 991px) {
	.positions-content {
		padding-bottom: 96px;
	}
	.jobs-list {
		grid-template-columns: 1fr;
		gap: 16px;
		margin-bottom: 60px;
	}
	.jobs-item {
		padding: 20px 12px 24px 12px;
	}
	.jobs-item-title {
		--fs: 18;
	}
}

/*		ページテンプレート		*/
.work-member {
	margin-block: 80px;
	&:last-child {
		margin-bottom: 0;
	}
	.interview-item-catchcopy {
		display: none;
	}
	.interview-item-title {
		margin-bottom: 0;
	}
}

.page-template-work-page,
.page-template-business-page {
	.positions-content {
		border-bottom: 0;
		padding: 0;
		margin-block: 80px;
		&:last-child {
			margin-bottom: 0;
		}
	}
	.cta {
		margin-block: 80px;
		&:last-child {
			margin-bottom: 0;
		}
	}
	.business-more {
		margin-block: 80px;
		&:last-child {
			margin-bottom: 0;
		}
	}
}

@media (max-width: 991px) {
	.work-member {
		margin-block: 60px;
	}
	.page-template-work-page,
	.page-template-business-page {
		.positions-content {
			margin-block: 60px;
		}
		.cta {
			margin-block: 60px;
		}
		.business-more {
			margin-block: 60px;
		}
	}
}

@media (max-width: 575px) {
	.work-member {
		.interview-list {
			grid-template-columns: 1fr;
		}
		.interview-item-content {
			padding: 20px 16px;
		}
	}
}
