@charset "UTF-8";

.mv-recruit {
	background: var(--stone); text-align: center;
	padding: 52px 32px 40px;
}
.mv-recruit_en { font-size: .78rem; letter-spacing: .14em; color: var(--green-800); font-weight: 700; text-transform: uppercase; }
.mv-recruit_ttl { font-size: 1.6rem; margin: .4rem 0 1.8rem; }

.search-form {
	max-width: 900px; margin: 0 auto;
	background: #fff; border: 1px solid var(--line); border-radius: 12px;
	padding: 20px 24px; text-align: left;
}
.search-form_selects { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 14px; }
.search-form_select { flex: 1; min-width: 180px; }
.search-form_select select {
	width: 100%; padding: .6rem .8rem; border: 1px solid var(--line); border-radius: 6px;
	font-size: .85rem; background: #fff;
}
.search-form_row { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; }
.search-form_checks { display: flex; gap: 1.2rem; flex-wrap: wrap; font-size: .84rem; }
.search-form_checks label { display: flex; align-items: center; gap: .35rem; }
.search-form_submit {
	padding: .65rem 2rem; border: none; border-radius: 100px;
	background: var(--green-600); color: #fff; font-size: .85rem; font-weight: 700; cursor: pointer;
	transition: background .15s;
}
.search-form_submit:hover { background: var(--green-800); }

.recruit-results { max-width: 1080px; margin: 0 auto; padding: 48px 32px 72px; }
.recruit-company_ttl {
	font-size: 1.15rem; font-weight: 700; margin: 2.4rem 0 1.2rem;
	background: #fff; border: 1px solid var(--line); border-radius: 8px;
	padding: .8rem 1.2rem; display: inline-block;
}
.recruit-company_ttl:first-of-type { margin-top: 0; }

.recruit-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.recruit-card { list-style: none; }
.recruit-card.is-hidden { display: none; }
.recruit-card_link { display: block; background: #fff; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; transition: box-shadow .15s; }
.recruit-card_link:hover { box-shadow: 0 8px 20px rgba(20, 20, 20, .08); }
.recruit-card_pic { position: relative; aspect-ratio: 4 / 3; background: var(--stone); }
.recruit-card_pic img { width: 100%; height: 100%; object-fit: cover; }
.recruit-card_ribbon {
	position: absolute; top: 10px; right: -28px; width: 120px; text-align: center;
	background: #e6453c; color: #fff; font-size: .7rem; font-weight: 700;
	padding: 4px 0; transform: rotate(35deg); box-shadow: 0 2px 5px rgba(0, 0, 0, .2);
}
.recruit-card_body { padding: 14px 16px; }
.recruit-card_tag {
	display: inline-block; font-size: .7rem; font-weight: 700; color: var(--green-800);
	background: #EEF7F1; border-radius: 100px; padding: .2rem .7rem; margin-bottom: .5rem;
}
.recruit-card_title { font-size: .88rem; margin: 0; line-height: 1.6; }

.recruit-more {
	display: block; margin: 1.4rem auto 3rem; padding: .6rem 2rem;
	border: 1px solid var(--green-600); border-radius: 100px; background: #fff;
	color: var(--green-800); font-size: .84rem; font-weight: 700; cursor: pointer;
}
.recruit-more:hover { background: #EEF7F1; }

.recruit-empty { text-align: center; color: var(--ink-soft); padding: 2rem 0; }

@media (max-width: 900px) {
	.recruit-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
	.recruit-grid { grid-template-columns: 1fr; }
	.search-form_row { flex-direction: column; align-items: stretch; }
	.search-form_submit { width: 100%; }
}
