@charset "utf-8";

/* ==========================================================================
   1. Modern Reset
   ========================================================================== */

*,
*::before,
*::after {box-sizing: border-box;margin: 0;padding: 0}
html {
	font-size: calc(62.5% + 4 * (100vw - 375px) / 150);-webkit-text-size-adjust: 100%;
}
body {
	font-family: "Zen Kaku Gothic Antique", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Noto Sans JP", sans-serif;
	font-size: 1.6rem;line-height: 1.8;color: var(--color-text-black);
	letter-spacing: 0;
	font-feature-settings: "pkna" 1;
	font-kerning: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	background: var(--color-background-yellow);
}
ul,
ol {list-style: none}
a {color: inherit;text-decoration: none}
img {max-width: 100%;height: auto;vertical-align: bottom}
table {border-collapse: collapse}
::selection {
	background: #A0CCD1;
	color: #fff;
}
*.pc {display: none}
*.sp {display: block}

/* ==========================================================================
   2. Layout
   ========================================================================== */
:root {
	--color-primary: #61A745;
	--color-secondary: #0F8CC8;
	--color-gray: #6b7280;
	--color-accent: #C1D9E6;
	--color-gray-400: #D3C39E;
	--color-gray-200: #F7F0E0;
	--color-gray-100: #F6F3F0;
	--color-text-black: #120c05;
	--color-background-yellow: #FCF7F1;
	--color-background-white: #fff;
}

.wrap {
	width: 100%;
	max-width: 1300px;
	margin: 0 auto;
	padding: 0 20px;
}

main {
	width: 100%;overflow: clip;
	display: block;padding: 130px 0;position: relative;
}

@keyframes rotateAnimation {
		from {transform: rotate(0deg)}
		to {transform: rotate(360deg)}
	}
/* -- Site Parts -- */
.btn {text-align: left;}
.btn a {
	display: inline-block;
}
.btn a span {
	display: block;padding: 0 38px 0 0;position: relative;
	font-weight: 500;
}
.btn a span::after {
	content: "";width: 26px;height: 26px;position: absolute;top: calc(50% - 13px);right: 0;
	border-radius: 50%;
	background: var(--color-primary) url(../images/icon/arrow00.svg) no-repeat center / 45%;
}
.more {text-align: center;margin: 25px 0;}
.more a {
	display: inline-block;
}
.more a span {
	display: block;padding: 12px 40px 12px 20px;position: relative;
	font-weight: 500;color: var(--color-text-black);line-height: 1.3;
	border-radius: 23px;border: 1px solid var(--color-text-black);
	background: var(--color-background-white);
}
.more a span::after {
	content: "";width: 14px;height: 14px;position: absolute;top: calc(50% - 7px);right: 15px;
	border-radius: 50%;
	background: var(--color-secondary) url(../images/icon/arrow00.svg) no-repeat center / 45%;
}
.more.target a span::after {
	border-radius: 0;
	background:url(../images/icon/blank.svg) no-repeat center / 100%;
}

/* -- Site Header -- */
.careers-header {
	padding: 0 0 0 40px;width: 100%;
	position: fixed;z-index: 1000;
	display: flex;align-items: center;justify-content: space-between;
}
.careers-header a {
	pointer-events: auto;
}
.careers-header .careers-title {
	margin: 18px 0 0;width: 200px;
	font-size: 1.3rem;font-weight: 700;line-height: 1.2;
}
.careers-header .careers-title svg {
	width: 200px;
}
.careers-header .careers-title span {
	display: inline-block;position: relative;top: -3px;
	background: #FFDA22;padding: 3px 8px;
}
.careers-header .careers-title span.hide {opacity: 0;display: none}
.careers-header input {display: none}
.careers-header label {
	display: block;
	width: 40px;
}
.careers-header label svg .cl_pr {fill: var(--color-primary)}
.careers-header label svg .cl_wh {fill: var(--color-background-white)}
.main-navigation ul {
	display: flex;
	flex-wrap: wrap;
	gap: 0 2em;
}
.main-navigation ul span {
	display: block;line-height: 1;position: relative;
}
.main-navigation ul ul span {
	display: block;line-height: 1;position: relative;
}
.main-navigation a {
	display: block;
	font-size: 1.4rem;font-weight: 500;
}

/* -- Site Footer -- */
.site-footer {
}

/* -- Main Area -- */

/* -- Animated Elements -- */
.animated {opacity: 0;}
.animated.children-animated {opacity: 1}
.fade-in {opacity: 0;animation: fade-in 1s ease-out forwards;animation-delay: var(--delay, 0ms);}
@keyframes fade-in {
	from {opacity: 0;transform: translateY(20px);}
	to {opacity: 1;transform: translateY(0);}
}



/* ==========================================================================
   3. Components — Lead Section (Front Page)
   ========================================================================== */

/* 回転アニメーションの定義 */
@keyframes rotateAnimation {
	from {transform: rotate(0deg)}
	to {transform: rotate(360deg)}
}
.mv__img {
	animation: rotateAnimation 180s linear infinite;
}

/* ==========================================================================
   3. Components — Aside (Categories Sidebar)
   ========================================================================== */

.aside {
	width: 25%;position: sticky;top: 100px;left: 0;z-index: 102;
	padding: 0 0 150px;
}

.aside ul.catelist {
	border-top: solid 1px #000;
}

.aside ul.catelist li {
	border-bottom: solid 1px #000;
}

.aside ul.catelist li a {
	font-size: 1.6rem;
	font-weight: 700;
	display: block;
	padding: 0.6em 2em 0.6em 0;
	position: relative;
	transition: opacity 0.2s;
}

.aside ul.catelist li a:hover {
	opacity: 0.6;
}

.aside ul.catelist li a::after {
	content: "";
	width: 11px;
	height: 11px;
	position: absolute;
	top: 50%;
	right: 0.3em;
	transform: translateY(-50%);
	/* Replace with your arrow icon */
	/* background: url(../images/icon/arrow01.svg) no-repeat center / 100%; */
	border-right: 2px solid #111;
	border-bottom: 2px solid #111;
	width: 8px;
	height: 8px;
	transform: translateY(-50%) rotate(-45deg);
}

/* ==========================================================================
   3. Components — Post List
   ========================================================================== */

.list .box {
	display: flex;flex-direction: column;gap: 20px;
	width: 800px;margin: 0 auto;
}

.list article a {
	display: block;background: var(--color-gray-200);border-radius: 10px;
	overflow: hidden;padding: 18px 90px 18px 30px;position: relative;
}
.list article a::after {
	content: "";width: 26px;height: 26px;position: absolute;top: calc(50% - 13px);right: 27px;
	border-radius: 50%;
	background: var(--color-primary) url(../images/icon/arrow00.svg) no-repeat center / 45%;
}
.list article span.date {
	display: block;
	font-size: 1.4rem;line-height: 1;color: var(--color-gray-400);font-weight: 500;
}
.list article p.title {
	font-size: 1.6rem;line-height: 1.4;font-weight: 500;
	margin: 3px 0 0;
}

/* -- "More" link -- */
.list .more {
	text-align: center;
	margin: 20px 0 0;
}

.list .more a {
	display: inline-block;
	font-size: 1.4rem;
	font-weight: 500;
	padding: 0.8em 3em;
	border: 1px solid #111;
	border-radius: 4px;
	transition: background 0.2s, color 0.2s;
}

.list .more a:hover {
	background: #111;
	color: #fff;
}

/* ==========================================================================
   3. Components — Breadcrumb
   ========================================================================== */

.breadcrumb {
	padding: 0 0 140px;
	font-size: 1.2rem;
	letter-spacing: 0;
	line-height: 1.4;
}

.breadcrumb ul {
	display: flex;flex-wrap: wrap;gap: 0;
	position: relative;padding: 0;
}
.breadcrumb ul::before {display: none}

.breadcrumb ul li {
	color: var(--color-background-white);
	padding: 0 0 0 2em;
	position: relative;
}

.breadcrumb ul li::before {
	content: ">";
	position: absolute;
	top: 0;
	left: 0.8em;
	color: var(--color-background-white);
}

.breadcrumb ul li:first-child::before {
	display: none;
}

.breadcrumb ul li:first-child {
	padding: 0;
}
/* ==========================================================================
   3. Components — Entry (Page Post)
   ========================================================================== */

main#index section.lead {
	padding: 0 0 80px;
}
.contentbox {
	background-color: var(--color-background-white);
	overflow: clip;
}
.contentbox .wrap {
	display: flex;flex-wrap: wrap;gap: 8%;position: relative;
	align-items: flex-start;justify-content: space-between;
}


/* ==========================================================================
   3. Components — Entry (Single Post)
   ========================================================================== */

.entrybox article {
	width: 800px;margin: 0 auto;
}
.entry-content {
	max-width: 700px;
	margin: 0 auto;
}
.entrybox article .entry-content {
	width: 800px;max-width: 800px;margin: 100px 0;
}
.entrybox article h1 {
	font-size: 3.2rem;font-weight: 500;line-height: 1.4;
	margin: 0 0 15px;
}

main.entry .entry-title {
	font-size: 2.8rem;
	font-weight: 900;
	line-height: 1.33;
	margin: 0 0 8px;
}

.entrybox article time {
	font-size: 1.4rem;font-weight: 500;line-height: 1;
	display: block;
	color: #6b6b6b;
}

.entrybox article .entry-thumbnail {
	margin: 0 0 30px;
}
.entrybox article .entry-thumbnail img {
	border-radius: 6px;
}
.entrybox article ul.category-links {
	display: flex;flex-direction: column;gap: 20px;
}
.entrybox article ul.category-links li a {
	font-size: 1.6rem;font-weight: 400;
	display: inline-block;padding: 0 0 0 33px;position: relative;
}
.entrybox article ul.category-links li a::before {
	content: "";width: 19px;height: 19px;border: solid 1px #dcdcdc;border-radius: 50%;
	background-position: 57% 51%;background-size: 30%;background-repeat: no-repeat;transform: rotate(180deg);
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%205%208%22%3E%3Cpath%20fill%3D%22%23f0590b%22%20d%3D%22m4.243%203.535-.708.707-2.828%202.83L0%206.363l2.828-2.829L0%20.707.707%200z%22%2F%3E%3C%2Fsvg%3E');
	position: absolute;top: calc(50% - 9px);left: 0;
}


/* ==========================================================================
   4. Entry Content (Post Body)
   ========================================================================== */

/* -- Column -- */
.entry-content .wp-block-columns {
	gap: 5.5%;
}
.entry-content .wp-block-columns .wp-block-column {
	margin: 0 0 50px;
}
.entry-content .wp-block-columns .wp-block-column * {
	margin: 0 0 11%;
}
.entry-content .wp-block-columns .wp-block-column *:last-of-type {
	margin: 0;
}


/* -- Headings -- */
.entry-content h2 {
	border-top: solid 1px #d9d9d9;
	font-size: 1.2rem;line-height: 1.3;font-weight: 700;
	color: var(--color-text-black);
	padding: 20px 0 50px;position: relative;
	margin: 100px 0 50px;
}
.entry-content h2::after {
	content: "";width: 16px;height: 1px;position: absolute;	bottom: 0;left: 0;
	background: #F0590B;
}
.entry-content h2:nth-of-type(1) {
	margin: 0 0 50px;
}

.entry-content h3 {
	font-size: 2rem;
	line-height: 1.3;
	font-weight: 700;
	margin: 50px 0 20px;
}

.entry-content h4 {
	line-height: 1.3;
	font-weight: 700;
	margin: 40px 0 20px;
	padding: 0 0 0 12px;
	position: relative;
}

.entry-content h4::before {
	content: "";
	width: 2px;
	height: 100%;
	background: #111;
	position: absolute;
	top: 0;
	left: 0;
}

/* -- Paragraphs -- */
.entry-content p {
	font-weight: 400;line-height: 2;
	margin: 0 0 30px;
}

.entry-content strong {
	font-weight: 700;
}

.entry-content em {
	font-style: italic;
}

/* -- Links -- */
.entry-content a {
	color: #0070c9;position: relative;
	text-decoration:underline 1px;
	transition: color 0.2s;
}
.entry-content a[href$=".pdf"] ,
.entry-content a[href^="https://maps"] {
	color: var(--color-text-black);padding: 0 28px 0 0;
}
.entry-content a[href$=".pdf"]::after ,
.entry-content a[href^="https://maps"]::after {
	content: "";width: 20px;height: 20px;position: absolute;top: calc(50% - 10px);right: 0;
	background: url(../images/icon/pdf.svg) no-repeat center / 100%;
}
.entry-content a[href^="https://maps"]::after {
	background: url(../images/icon/map.svg) no-repeat center / 100%;
}

.entry-content a:hover {
	color: #005999;
}

/* -- Marker -- */
.entry-content mark {
	background: linear-gradient(transparent 60%, #BAFFED 60%);
	padding: 0.05em 0.2em;
}

/* -- Images -- */
.entry-content figure.wp-block-image {
	margin: 0 0 30px;
}
.entry-content figure.wp-block-image img {
	border-radius: 10px;
}

.entry-content figure.wp-block-image figcaption {
	font-size: 1.2rem;
	padding: .4em 0;
	margin: 0;
}

/* -- Lists -- */
.entry-content ol,
.entry-content ul {
	list-style: none;
	margin: 0 0 50px;
	display: flex;flex-wrap: wrap;flex-direction: column;gap: 10px;
}

.entry-content ol ol,
.entry-content ul ul {
	margin: 12px 0;
}

.entry-content li {
	font-size: 1.8rem;
	line-height: 1.6;
	position: relative;
	padding: 0 0 0 1em;
}

.entry-content ul > li::before {
	content: "";width: 3px;height: 3px;
	border-radius: 50%;
	background: var(--color-text-black);
	position: absolute;left: 0;top: 0.8em;
}

.entry-content ol {
	counter-reset: ol-counter;
}

.entry-content ol > li::before {
	text-align: center;
	line-height: 1;
	letter-spacing: 0;
	font-size: 1em;
	color: var(--color-text-black);
	position: absolute;
	top: 0.2em;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	counter-increment: ol-counter;
	content: counter(ol-counter)'.';
}
.entry-content .wp-block-lazyblock-definition-list {
	margin: 0 0 50px;
}
.entry-content .wp-block-lazyblock-definition-list dl {
	display: flex;flex-wrap: wrap;gap: 40px 20px;
}
.entry-content .wp-block-lazyblock-definition-list dl dt {
	width: 80px;
	font-size: 1.4rem;color: #7d7d7d;padding: .3rem 0;
}
.entry-content .wp-block-lazyblock-definition-list dl dd {
	width: calc(100% - 100px);
}

/* -- iframe -- */
.entry-content iframe {
	max-width: 100%;overflow: hidden;border-radius: 10px;
	margin: 0 0 50px;
}

/* -- Table -- */
.entry-content figure.wp-block-table {
	margin: 0 0 30px;
}

.entry-content table {
	border: none;
	width: 100%;
	line-height: 1.4;
	font-size: 1.4rem;
	border-collapse: collapse;
	vertical-align: middle;
}

.entry-content table td,
.entry-content table th {
	border: solid 4px #fff;
	padding: 16px;
	background: #F7F7F7;
	font-weight: 500;
}

.entry-content figure.wp-block-table table {
	margin: 0;
}

.entry-content figure.wp-block-table table tr td:nth-of-type(1),
.entry-content figure.wp-block-table table th {
	background: #F0F0E9;
	font-weight: 700;
}

.entry-content figure.wp-block-table table thead + tbody tr td:nth-of-type(1) {
	background: #F7F7F7;
	font-weight: 500;
}

/* -- Link Button -- */
.entry-content .linkBtn {
	margin: 0 0 30px;text-align: right;
}
.entry-content .linkBtn a {
	display: inline-block;position: relative;
	border-radius: 30px;padding: 16px 70px 16px 30px;min-width: 240px;
	font-size: 1.8rem;line-height: 1.2;color: var(--color-primary);text-align: center;
	text-decoration: none;font-weight: 700;
	border: solid 2px var(--color-primary);
	transition: opacity 0.2s;
}
.entry-content .linkBtn a:hover {opacity: 0.8}

.entry-content .linkBtn a::after {
	content: "";width: 26px;height: 26px;border-radius: 50%;
	background: var(--color-primary) url(../images/icon/arrow00.svg) no-repeat center / 42%;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
}

/* -- Post List -- */
.entry-content .post-list {
	display: flex;flex-direction: column;gap: 10px;
	margin: 0 0 50px;
}
.entry-content .post-list a {
	display: block;text-decoration: none;
	border-radius: 10px;padding: 15px 73px 12px 20px;position: relative;
	background: var(--color-gray-200);
	color: var(--color-text-black);
}
.entry-content .post-list a::after {
	content: "";width: 26px;height: 26px;position: absolute;top: calc(50% - 13px);right: 27px;
	border-radius: 50%;
	background: var(--color-primary) url(../images/icon/arrow00.svg) no-repeat center / 45%;
}
.entry-content .post-list li {padding: 0;}
.entry-content .post-list li::before {display: none}
.entry-content .post-list time {
	font-size: 1.4rem;color: var(--color-gray-400);line-height: 1;
}
.entry-content .post-list p {
	margin: 0;line-height: 1.4;font-size: 1.6;font-weight: 500;
}

/* ==========================================================================
   3. Components — Search
   ========================================================================== */

.search-form {
	display: flex;
	gap: 8px;
	max-width: 480px;
}

.search-form label {
	flex: 1;
}

.search-form .search-field {
	width: 100%;
	padding: 10px 16px;
	font-size: 1.4rem;
	border: 1px solid #ddd;
	border-radius: 4px;
	outline: none;
	transition: border-color 0.2s;
}

.search-form .search-field:focus {
	border-color: #111;
}

.search-form .search-submit {
	padding: 10px 20px;
	font-size: 1.4rem;
	font-weight: 600;
	background: #111;
	color: #fff;
	border: none;
	border-radius: 4px;
	cursor: pointer;
	transition: opacity 0.2s;
}

.search-form .search-submit:hover {
	opacity: 0.8;
}

.search-form-container {
	padding: 40px 20px;
	text-align: center;
}

.search-form-container .search-form {
	margin: 0 auto;
}

/* ==========================================================================
   3. Components — Pagination
   ========================================================================== */

.pagination,
.nav-links {
	display: flex;
	justify-content: center;
	gap: 4px;
	margin: 40px 0;
	font-size: 1.8rem;
}

.pagination .page-numbers,
.nav-links .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
	height: 36px;
	padding: 0 8px;
	border: 1px solid #ddd;
	border-radius: 4px;
	transition: background 0.2s, color 0.2s, opacity 0.2s;
}

.pagination .page-numbers.current,
.nav-links .page-numbers.current {
	background: var(--color-gray-400);
	color: #fff;
	border-color: var(--color-gray-400);
}
.pagination .page-numbers.next,
.nav-links .page-numbers.next {
	background: var(--color-primary);
	color: #fff;
	border-color: var(--color-primary);
}

.pagination .page-numbers:hover:not(.current),
.nav-links .page-numbers:hover:not(.current) {
	opacity: 0.8;
}

/* ==========================================================================
   3. Components — 404 / Not Found
   ========================================================================== */

.notfound {
	text-align: center;
	padding: 100px 0;
}
.notfound .wrap {
	flex-direction: column;gap: 40px;
}

.notfound .page-title {
	font-size: 3rem;
	font-weight: 900;
	margin: 0 0 20px;
}

.notfound .page-content p {
	font-size: 1.6rem;
	line-height: 1.8;
	color: #666;
}

/* ==========================================================================
   3. Utilities
   ========================================================================== */

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}




main.careers {
		padding: 0;
	}
	header.careers-header {
		padding: 0 20px;
	}
	header.careers-header .logo {
		width: calc(100% - 60px);
	}
	.careers-header label {
		position: fixed;top: 20px;right: 20px;
		display: block;width: 50px;height: 50px;z-index: 1100;cursor: pointer;
	}
	.careers-header label svg .cl_pr {fill: var(--color-background-white)}
	.careers-header label svg .cl_wh {fill: var(--color-text-black)}
	.main-navigation ul {
		padding: 45px 20px 40px;border-radius: 25px;
		background: var(--color-background-white);
		min-width: 220px;
		display: flex;flex-wrap: wrap;flex-direction: column;
		gap: .6em;
	}
	.main-navigation ul li a {
		display: block;padding: 5px 0;
		font-size: 1.6rem;font-weight: 500;color: var(--color-background-white);
	}
	.main-navigation ul span {
		display: block;line-height: 1;position: relative;
	}
	.main-navigation ul li.big {
		background-color: var(--color-background-white);
		color: var(--color-text-black);text-align: center;
		padding: 10px;border-radius: 20px;
	}
	.main-navigation ul li.big a {
		color: var(--color-text-black);
	}
	.careers-header nav {
		padding: 50px 0;
	}
	.careers-header nav ul {
		gap: 18px;
	}
	.careers-header nav li {}
	.careers-header nav ul span {
		display: block;line-height: 1;position: relative;
		color: var(--color-text-black);
	}
	.careers-header nav ul ul {
		gap: 0;margin: 15px 0 0;padding: 0;flex-direction: row;
	}
	.careers-header nav ul ul li {
	}
	.careers-header nav ul ul span {
		font-size: 1.6rem;
		padding: 10px 20px;border: solid 1px var(--color-text-black);
		background: var(--color-background-white);color: var(--color-text-black);
	}
	.careers-header nav ul ul li:nth-of-type(1) span {
		border-right: none;border-radius: 20px 0 0 20px;
		padding: 10px 30px;
	}
	.careers-header nav ul ul li:nth-of-type(2) span {
		border-radius: 0 20px 20px 0;
		padding: 10px 20px;
	}
	.careers-footer {
		border-top: solid 2px var(--color-text-black);border-bottom: solid 2px var(--color-text-black);
		background-color: var(--color-secondary);padding: 55px 0 80px;
		font-size: 1.4rem;color: var(--color-background-white);font-weight: 500;overflow: hidden;
	}
	.careers-footer .wrap {position: relative;justify-content: space-between;}
	.careers-footer .wrap::before {
		content: "";width: 255px;height: 258px;position: absolute;top: calc(50% - 260px);left: -130px;
		background: url(../images/icon/mv01.svg) no-repeat center / 100%;
		animation: rotateAnimation 180s linear infinite;
	}
	.careers-footer .more {margin: 16px 0 0}
	.careers-footer .more a span {padding: ;}
	.careers-footer .info {
		width: 100%;padding: 0 0 80px 120px;box-sizing: content-box;box-sizing: border-box;
	}
	.careers-footer .logo span {
		font-size: 1.6rem;font-weight: 700;line-height: 1.2;color: var(--color-text-black);
		padding: 8px 10px;background: #FFDA22;margin: 3px 0 0;display: inline-block;
	}
	.careers-footer .info svg {
		width: 210px;height: 20px;
		filter: invert(1);
	}
	.careers-footer nav {display: flex;flex-wrap: wrap;gap: 80px;}
	.careers-footer nav ul.footer-nav {
		display: flex;gap: 12px;justify-content: flex-start;
		flex-direction: column;
	}
	.careers-footer nav ul.footer-nav ul {
		display: flex;flex-direction: column;gap: 8px;
	}
	.careers-footer nav li.footer-flat a {
		font-weight: 500;
	}

	.wrap {
		padding: 0 20px;min-width: 100%;
		display: flex;flex-wrap: wrap;
	}
	main section {
		padding: 100px 0;
	}
	
	section.careers-mv {
		width: 100%;position: relative;z-index: 10;
		min-height: 80svh;padding: 0;display: table;
		background: var(--color-secondary);
	}
	section.careers-mv .wrap {
		display: table-cell;vertical-align: middle;position: static;
		text-align: center;
	}
	section.careers-mv picture {
		width: 100%;height: 100%;min-width: 100%;
		position: absolute;bottom: 0;left: 0;
	}
	section.careers-mv picture img {
		width: 110%;height: auto;min-width: 110%;
		position: absolute;bottom: -2px;left: -5%;
	}
	section.careers-mv p.title {
		color: var(--color-background-white);text-align: center;position: relative;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;opacity: 0;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;
		font-size: 3.2rem;font-weight: 900;line-height: 1.2;
	}
	section.careers-mv p.title span.ruby {
		font-size: 1.4rem;position: absolute;bottom: -1.5em;right: 8.6rem;
		-webkit-text-stroke-width: 0;
		-webkit-text-stroke-color: none;
	}
	main.careers section.careers-lead {
		background: var(--color-primary);z-index: 12;padding: 50px 0 100px;
	}
	section.careers-lead::after {
		content: "";width: 100vw;height: 4.7vw;position: absolute;bottom: -4.5vw;left: 0;pointer-events: none;z-index: 12;background-repeat: no-repeat;background-size: 100%;background-position: center bottom;
		background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%2361a745%22%20viewBox%3D%220%200%201414%2067%22%3E%3Cpath%20d%3D%22M1413.5%2058.877c-132.48-26.627-391.36-44.711-689.028-44.711C397.425%2014.166%20117.204%2035.995%200%2067V0h1413.5z%22%2F%3E%3C%2Fsvg%3E');
	}
	section.careers-lead::before {
		content: "";width: 70px;height: 39px;position: absolute;bottom: -2vw;right: 20%;pointer-events: none;z-index: 15;background-repeat: no-repeat;background-size: 100%;background-position: center bottom;
		background-image: url(../images/icon/popo.svg);
		/* アニメーションを1つにまとめる */
		animation: birdMove 17s linear infinite;
		will-change: transform;
		transform-origin: center bottom;
	}
	@keyframes birdMove {

		0%    { transform: translateX(0)    translateY(0)      scaleY(1);    }
		1.5%  { transform: translateX(-10px) translateY(-14px) scaleY(1);    }
		3%    { transform: translateX(-20px) translateY(0)     scaleY(0.88); }
		4%    { transform: translateX(-20px) translateY(0)     scaleY(1);    }

		4.5%  { transform: translateX(-30px) translateY(-14px) scaleY(1);    }
		6%    { transform: translateX(-40px) translateY(0)     scaleY(0.88); }
		7%    { transform: translateX(-40px) translateY(0)     scaleY(1);    }

		29%   { transform: translateX(-40px) translateY(0)     scaleY(1);    }

		30.5% { transform: translateX(-30px) translateY(-14px) scaleY(1);    }
		32%   { transform: translateX(-20px) translateY(0)     scaleY(0.88); }
		33%   { transform: translateX(-20px) translateY(0)     scaleY(1);    }

		44%   { transform: translateX(-20px) translateY(0)     scaleY(1);    }

		45.5% { transform: translateX(-10px) translateY(-14px) scaleY(1);    }
		47%   { transform: translateX(0)     translateY(0)     scaleY(0.88); }
		48%   { transform: translateX(0)     translateY(0)     scaleY(1);    }

		100%  { transform: translateX(0)     translateY(0)     scaleY(1);    }
	}
	section.careers-lead .text {
		max-width: 360px;margin: 0 auto;position: relative;z-index: 11;
		display: flex;flex-direction: column;gap: 3rem;
	}
	section.careers-lead .text p {
		font-weight: 500;line-height: 1.6;color: var(--color-background-white);
	}
	section.careers-message {
		background: url(../images/careers/message-back.jpg) no-repeat center / cover;
	}
	section.careers-message h2 {
		font-size: 1.6rem;line-height: 1.3;font-weight: 500;text-align: center;
		width: 100%;color: var(--color-text-black);
		padding: 20px 0 50px;position: relative;
		margin: 100px 0 50px;
	}
	section.careers-message h2::before {
		content:attr(data-en);position: absolute;top:-45px;left:50%;
		transform:translatex(-50%);
		font-size: 40px;color: var(--color-background-white);font-weight: 900;letter-spacing: .3em;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;
	}
	section.careers-message ol {
		display: flex;flex-direction: column;gap: 150px;
	}
	section.careers-message ol li {
		font-weight: 500;padding: 0 0 0 50px;box-sizing: border-box;
		position: relative;margin: 0 0 0 10px;
	}
	section.careers-message ol li::before {
		content: "ひとつめ";
		position: absolute;left: 50px;top: -18px;
	}
	section.careers-message ol li::after {
		content: "";width: 60px;height: 150px;position: absolute;left: -20px;top: -18px;
		background: url(../images/careers/message-icon01@2x.png) no-repeat center / 59px 149px;
	}
	section.careers-message ol li:nth-of-type(2) {margin: 0 10px 0 0;padding: 0 50px 0 0 }
	section.careers-message ol li:nth-of-type(2)::before {content: "ふたつめ";left: 0;}
	section.careers-message ol li:nth-of-type(3)::before {content: "みっつめ"}
	section.careers-message ol li:nth-of-type(2)::after {
		left: auto;right: -20px;
		background: url(../images/careers/message-icon02@2x.png) no-repeat center / 43px 130px;
	}
	section.careers-message ol li:nth-of-type(3)::after {
		background: url(../images/careers/message-icon03@2x.png) no-repeat center / 40px 127px;
	}
	section.careers-message h3 {
		font-size: 22px;color: var(--color-background-white);font-weight: 900;letter-spacing: 0;line-height: 1.6;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;
		margin: 0 0 20px;
	}
	section.careers-message p {
		width: auto;
	}
	section.careers-menu h2 {
		font-size: 1.6rem;line-height: 1.3;font-weight: 500;text-align: center;
		width: 100%;color: var(--color-text-black);
		padding: 20px 0 0;position: relative;
		margin: 100px 0 0;color: rgba(0, 0, 0, 0);
	}
	section.careers-menu h2::before {
		content:attr(data-en);position: absolute;top:-70px;left:50%;
		transform:translatex(-50%);
		font-size: 40px;color: var(--color-background-white);font-weight: 900;letter-spacing: .2em;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;
	}
	section.careers-menu {
		background: linear-gradient(180deg, #3380C7 0%, #4DADD0 100%);
		padding: 100px 0 360px;
	}
	section.careers-menu::after {
		content: "";width: 100%;height: 100%;position: absolute;bottom: -1px;left: 0;pointer-events: none;
		background-image: url(../images/careers/contents-back@2x.png);z-index: 0;
		background-repeat: no-repeat;background-position: bottom center;background-size: 100% auto;
	}
	section.careers-menu ul {
		padding: 20px 20px;width: auto;display: flex;flex-direction: column;
		margin: 0 auto;
		border-radius: 25px;background: rgba(255, 255, 255, 0.77);position: relative;z-index: 10;
	}
	section.careers-menu ul li {border-bottom: solid 1px var(--color-text-black)}
	section.careers-menu ul li:last-of-type {border-bottom: none}
	section.careers-menu ul a {
		padding: 20px 10px;position: relative;
		display: flex;flex-wrap: wrap;justify-items: center;
	}
	section.careers-menu ul a::after {
		content: "";width: 20px;height: 20px;position: absolute;top: 30px;right: 20px;
		background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20fill%3D%22%23000%22%20d%3D%22M10.478.94a2.234%202.234%200%201%200-3.08%203.238l3.77%203.588H2.234a2.234%202.234%200%201%200%200%204.468h8.934l-3.77%203.588a2.234%202.234%200%201%200%203.08%203.237L20%2010z%22%2F%3E%3C%2Fsvg%3E')
	}
	section.careers-menu h3 {
		font-size: 24px;color: var(--color-background-white);font-weight: 900;letter-spacing: 0;line-height: 1.6;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;margin: 0 0 5px;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;
	}
	section.careers-menu p {
		font-size: 1.6rem;font-weight: 500;line-height: 1.6;
	}
	section.careers-foot {
		background-color: #80B438;padding: 100px 0;
	}
	section.careers-foot img.grass-item {opacity: .5}
	section.careers-foot .wrap {flex-direction: column}
	section.careers-foot p.title {
		margin: 0 auto;
		font-size: 28px;color: var(--color-background-white);font-weight: 900;text-align: center;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;
	}
	section.careers-foot p {
		width: 100%;margin: 30px auto 50px;
		font-size: 1.6rem;line-height: 2;text-align: center;font-weight: 500;
	}
	section.careers-foot ul {
		width: 100%;margin: 0 auto;display: flex;padding: 15px 0;position: relative;
		font-size: 1.6rem;line-height: 2;text-align: center;font-weight: 500;
		border-radius: 20px;border: 1px solid #000;background: #FFF;
	}
	section.careers-foot ul::after {
		content: "";width: 1px;height: calc(100% - 30px);position: absolute;top: 15px;left: 50%;
		background: var(--color-text-black);
	}
	section.careers-foot ul li {
		flex: 1;
	}
	section.careers-foot ul a {
		display: block;text-align: center;
	}
	section.careers-foot ul span {
		font-size: 1.6rem;display: inline-block;padding: 8px;
	}

	main.careers > * {z-index: 11;position: relative;}
	main.about {background: #9FCDD2}
	main.careers.environment {background: #80B438}
	main.careers.qanda {background: #416829}
	main.careers.recruitment ,
	main.careers.interview {background: var(--color-primary);border-bottom: solid 2px var(--color-text-black);}
	main.careers.environment img.grass-item {
		opacity: .5;z-index: 0;
	}
	main.about section.careers-main::before {
		content: "";width: 100%;height: 150%;
		position: absolute;bottom: -1px;left: 0;z-index: 0;
		background: url(../images/careers/cloud@2x.png) no-repeat center bottom / 100%;
	}
	main.about section.careers-main::after {
		content: "";width: 100%;height: 22vw;
		position: absolute;bottom: -1px;left: 0;z-index: 1;
		background: #9FCDD2;background: linear-gradient(180deg,rgba(159, 205, 210, 0) 0%, rgba(159, 205, 210, 1) 100%);
	}
	main.about .sky {
		width: 100%;height: calc(110vh + 300px);
		position: absolute;top: 0;left: 0;z-index: 0;
		background: linear-gradient(180deg, #3380C7 0%, #4DADD0 100%);
	}
	main.environment::before {
		content: "";width: 100%;height: 100%;position: absolute;top: 0;left: 0;
		background: url(../images/careers/environment@2x.jpg) no-repeat center top / 100%;
	}
	main.qanda::before {
		content: "";width: 100%;height: 100%;position: absolute;top: 0;left: 0;
		background: url(../images/careers/qanda@2x.jpg) no-repeat center top / 100%;
	}
	main.interview::before {
		content: "";width: 100%;height: 100%;position: absolute;top: 0;left: 0;
		background: url(../images/careers/interview@2x.jpg) no-repeat center top / 100%;
	}
	main.recruitment::before {
		content: "";width: 100%;height: 100%;position: absolute;top: 0;left: 0;
		background: url(../images/careers/recruitment@2x.jpg) no-repeat center top / 101%;
	}
	section.careers-main {padding: 90px 0 0}
	main.recruitment section.careers-main {
		padding: 90px 0 0;
	}
	section.careers-main .wrap {
		flex-direction: column;
	}
	section.careers-main .wrap .animated {
		position: relative;z-index: 11;
	}
	section.careers-main h1 {
		font-size: 32px;color: var(--color-background-white);
		font-weight: 900;text-align: center;line-height: 1.6;letter-spacing: .2em;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;margin: 30px 0 85px;
	}
	section.careers-main p.lead {
		font-size: 1.6rem;color: var(--color-background-white);font-weight: 900;text-align: center;line-height: 1.6;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;position: relative;z-index: 11;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;margin: 0 0 50px;
	}
	section.careers-main p {
		font-size: 1.6rem;text-align: center;line-height: 1.6;
		text-align: center;font-weight: 500;margin: 0 0 3rem;
		position: relative;z-index: 5;
	}
	main.form section.careers-main p {
		margin: -80px auto 50px;
		color: var(--color-background-white);line-height: 2;
	}
	main.interview section.careers-main .imgbox {
		width: 100%;margin: 0 auto 150px;
		position: relative;border-radius: 25px 25px 0 0;
	}
	main.interview section.careers-main .imgbox picture {
		overflow: hidden;display: block;width: 100%;height: auto;border-radius: 25px 25px 0 0;
		border: solid 2px var(--color-text-black);border-bottom: none;
	}
	main.interview section.careers-main .imgbox .text {
		position: absolute;z-index: 1;top: calc(100% - 4rem);left: 0;z-index: 10;
		width: 100%;
	}
	main.interview section.careers-main .imgbox h2 {
		font-size: 2.4rem;color: var(--color-background-white);font-weight: 900;text-align: center;line-height: 1.2;
		-webkit-text-stroke-width: 2px;display: inline-block;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;margin: 0 0 0 10px;
	}
	main.interview section.careers-main .imgbox p.title {
		font-size: 1.6rem;font-weight: 900;color: var(--color-background-white);line-height: 1.3;text-align: left;
		padding: 7px 11px;margin: 8px 0 0;
		background: var(--color-text-black);
	}
	main.interview section.careers-main .imgbox p.head {
		font-size: 1.4rem;font-weight: 900;color: var(--color-background-white);line-height: 1.3;
		padding: 2px 5px;display: inline-block;margin: 6px 0 0;
		background: var(--color-text-black);
	}
	section.careers-about {
		background: #9FCDD2;
	}
	section.careers-about:nth-of-type(2) {
		padding: 0 0;
	}
	section.careers-contents {
		padding: 0;
	}
	section.careers-contents .text {
		width: 100%;
		max-width: auto;margin: 0 auto;padding: 90px 20px;
		border-bottom: solid 1px #000;
		display: flex;flex-direction: column;gap: 30px;
	}
	section.careers-contents.careers-form .text ,
	section.careers-contents.careers-recruitment .text {
		border-radius: 50px;
		max-width: 900px;padding: 0 0 90px;gap: 75px;
	}
	section.careers-contents.wide .text {
		padding: 90px 0;
	}
	section.careers-contents:last-of-type .text {
		border-bottom: none;
	}
	section.careers-contents .text h2 {
		font-size: 2.4rem;color: var(--color-background-white);font-weight: 900;text-align: left;line-height: 1.4;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;margin: 0;
	}
	section.careers-contents .text h2.center {text-align: center}
	section.careers-contents .text h3.tt {
		margin: 40px 0 -10px;
	}
	section.careers-contents .text h3.tt span {
		font-size: 2.4rem;font-weight: 900;line-height: 1.3;
		background: var(--color-background-white);
		display: inline-block;padding: 6px 20px;
	}
	section.careers-contents .text h4.tt {
		font-size: 2.4rem;color: var(--color-background-white);
		font-weight: 900;line-height: 1.6;letter-spacing: .2em;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;margin: 20px 0 -25px;
	}
	section.careers-contents .text p {
		font-weight: 500;line-height: 1.8;
	}
	section.careers-contents .text dl.detail div {
		display: flex;font-weight: 500;margin: 0 0 1.2em;flex-direction: column;
	}
	section.careers-contents .text dl.detail dt {width: 100%}
	section.careers-contents .text dl.detail dt::after {content: "："}
	section.careers-contents .text dl.detail dd {width: 100%;padding: 0 0 0 1em}
	section.careers-contents .text dl.ability div {
		display: flex;font-weight: 500;margin: 0 0 40px;
	}
	section.careers-contents .text dl.ability dt {width: 55px;font-weight: 900;}
	section.careers-contents .text dl.ability dd {width: calc(100% - 55px);padding: 0 0 0 1em}
	section.careers-contents .text dl.ability dd ul li {
		position: relative;padding: 0 0 0 1.3em;font-weight: 400;
	}
	section.careers-contents .text dl.ability dd ul li::before {
		content: "・";position: absolute;top: 0;left: 0;
	}
	section.careers-contents .jigyosho-archive {
		flex-direction: column;gap: 30px;
	}
	section.careers-contents .jigyosho-archive li {
		border-radius: 10px;background: var(--color-background-white);
		opacity: 0;
	}
	section.careers-contents .jigyosho-archive li a {
		padding: 24px 30px;display: flex;flex-wrap: wrap;
	}
	section.careers-contents .jigyosho-archive li .jigyosho-card__body {
		width: 100%;
	}
	section.careers-contents .jigyosho-archive li .jigyosho-card__body p ,
	section.careers-contents .jigyosho-archive li .jigyosho-card__body h3 {line-height: 1.3;margin: 0 0 5px;}
	section.careers-contents .jigyosho-archive li ul.jigyosho-tags {
		width: 100%;font-size: 1.4rem;display: flex;flex-wrap: wrap;gap: 5px;align-items: start;
	}
	section.careers-contents .jigyosho-archive li ul.jigyosho-tags li {
		background: #3686C9;padding: 5px 8px 6px;border-radius: 5px;
		color: var(--color-background-white);line-height: 1;opacity: 1;
	}
	section.careers-contents ul.big-menu {
		display: flex;flex-wrap: wrap;gap: 5px;
	}
	section.careers-contents ul.big-menu li {
		width: calc(50vw - 43px);height: calc(50vw - 43px);display: flex;justify-content: center;align-items: center;flex-direction: column;
		border-radius: 30px;border: 2px solid #000;
		background: rgba(255, 255, 255, 0.75);text-align: center;
	}
	section.careers-contents ul.big-menu h3 {
		font-size: 1.4rem;text-align: center;font-weight: 400;line-height: 1.3;
	}
	section.careers-contents ul.big-menu p {font-weight: 400}
	section.careers-contents ul.big-menu p span {
		font-size: 36px;font-weight: 400;
	}
	section.careers-contents ul.big-menu p span.mini {
		font-size: 24px;
	}
	section.careers-contents ul.big-menu em {
		display: block;margin: -1rem 0 0;
		font-size: 1.2rem;font-weight: 400;font-style: normal;
	}
	section.careers-contents .back {
		padding: 40px 50px 15px;
		border-radius: 20px;background: rgba(255, 255, 255, 0.20);
	}
	section.careers-contents .back dt {
		font-weight: 900;
	}
	section.careers-contents .back dd {
		margin: 0 0 25px;
	}
	section.careers-introduction {
		border-bottom: solid 2px var(--color-text-black);
		padding: 0 0 190px;
	}
	.careers-environment .imgbox {
		overflow: hidden;z-index: 11;position: relative;
	}
	.careers-environment .imgbox .slider-track {
		display: inline-flex;gap: 20px;
		animation: slider-loop 60s linear infinite;
	}
		@media (prefers-reduced-motion: reduce) {
			animation-play-state: paused;
	}
	.careers-environment .imgbox .img {
		flex-shrink: 0;width: 180px;overflow: hidden;
		border-radius: 15px;border: 1px solid #000;
	}
	.careers-environment .imgbox .img img {
		display: block;width: 100%;height: 120px;
		object-fit: cover;
	}
	@keyframes slider-loop {
		0%   { transform: translateX(0); }
		100% { transform: translateX(-50%); }
	}
	section.careers-qanda dl.qanda {
		margin: -100px 0 25px;
	}
	section.careers-qanda dl.qanda div {
		border-top: solid 1px var(--color-text-black);
		padding: 30px 0;display: flex;flex-direction: column;gap: 20px;
	}
	section.careers-qanda dl.qanda dt h2::before {content: "Q. "}
	section.careers-qanda dl.qanda dt h2 {font-size: 2.6rem;line-height: 1.3}
	section.careers-qanda dl.qanda dd p {color: var(--color-background-white);font-size: 1.8rem;line-height: 1.6;}
	section.careers-qanda dl.qanda dd p::before {content: "A. "}
	section.careers-interview {
		margin: 120px 0 0;
	}
	section.careers-interview.careers-interview-in {
		margin: 0;
	}
	section.careers-interview ul.member-menu {
		display: flex;flex-wrap: wrap;gap: 80px 10px;
		padding: 60px 0 0;
	}
	section.careers-interview ul.member-menu li {
		width: calc(50% - 10px);text-align: center;
	}
	section.careers-interview ul.member-menu picture {
		border-radius: 50%;overflow: hidden;display: block;
		width: 100%;height: auto;margin: 0 auto 5px;
		border: solid 2px var(--color-text-black);
	}
	section.careers-interview ul.member-menu picture img {display: block}
	section.careers-interview ul.member-menu span.head {
		font-size: 1.4rem;color: var(--color-background-white);line-height: 1.2;
		display: inline-block;
	}
	section.careers-interview ul.member-menu h3 {
		font-size: 2rem;color: var(--color-background-white);
		font-weight: 900;line-height: 1.3;
		-webkit-text-stroke-width: 2px;display: block;z-index: 11;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;margin: 0 auto 10px;
	}
	section.careers-interview ul.member-menu p {
		background: var(--color-text-black);display: inline-block;padding: 7px 10px;
		color: var(--color-background-white);font-size: 1.4rem;text-align: left;line-height: 1.4;
	}
	section.careers-contents.careers-recruitment .text .wp-block-lazyblock-careers-list {
		border-radius: 25px;border: 2px solid var(--color-text-black);background: var(--color-background-white);
		max-width: 900px;padding: 50px 20px 30px;gap: 30px;
	}
	section.careers-recruitment .careers-list__item dt {
		color: #a3a3a3;font-size: 1.3rem;
	}
	section.careers-recruitment .careers-list__item dd {
		margin: 3px 0 50px;
	}
	section.careers-recruitment .wp-block-lazyblock-careers-list a.btn {
		display: block;padding: 25px;border-radius: 20px;border: 1px solid var(--color-text-black);background: var(--color-background-white);
		text-align: center;font-size: 2rem;font-weight: 500;
	}
	section.careers-interview .inbox {
		width: 100%;margin: 0 auto 120px;position: relative;z-index: 11;
		display: flex;gap: 40px;flex-wrap: wrap;flex-direction: column;
	}
	section.careers-interview .inbox .imgbox {
		width: 100%;border-radius: 10px;border: 5px solid var(--color-background-white);
	}
	section.careers-interview .inbox .textbox {
		width: 100%;display: flex;flex-direction: column;gap: 26px;
	}
	section.careers-interview .inbox.sec .imgbox {
		order: 2;margin: 0 -150px 0 0;
	}
	section.careers-interview .inbox h2 {
		font-size: 2.2rem;line-height: 1;color: var(--color-background-white);
		margin: 0;position: relative;
	}
	section.careers-interview .inbox h2::before {
		content: "";width: 100%;height: 1px;position: absolute;top: 50%;left: 0;
		background-color: var(--color-background-white);z-index: 0;
	}
	section.careers-interview .inbox h2 span {
		background: var(--color-primary);padding-right: 1.2em;
		position: relative;z-index: 1;
	}
	section.careers-interview .inbox p {
		color: var(--color-background-white);font-weight: 500;
		line-height: 2;
	}
	section.careers-interview .flow {
		width: 900px;margin: 0 auto 120px;position: relative;z-index: 11;
	}
	section.careers-interview .flow h2 {
		font-size: 2.4rem;line-height: 1;color: var(--color-background-white);
		margin: 0;position: relative;
	}
	section.careers-interview .flow h2::before {
		content: "";width: 100%;height: 1px;position: absolute;top: 50%;left: 0;
		background-color: var(--color-background-white);z-index: 0;
	}
	section.careers-interview .flow h2 span {
		background: var(--color-primary);padding-right: 1.2em;
		position: relative;z-index: 1;
	}
	section.careers-interview .flow dl {
		color: var(--color-background-white);
		margin: 40px 0 0;
		flex-direction: column;display: flex;gap: 20px;
	}
	section.careers-interview .flow dl div {
		display: flex;gap: 40px;
	}
	section.careers-interview .flow dl dt {
		width: 35px;
	}
	section.careers-interview .flow dl dd {
		width: calc(100% - 75px);
	}
	section.member {
		border-top: solid 2px var(--color-text-black);
	}
	section.member ul {
		display: flex;flex-wrap: wrap;gap: 6%;
		margin: 0 20px;
	}
	section.member ul li {
		overflow: hidden;width: 29%;position: relative;margin: 0 0 20px;
		border-radius: 50%;border: solid 2px var(--color-text-black);
	}
	section.member ul li a {
		display: block;width: 100%;height: 100%;
	}
	section.member ul li::before {
		content: "";width: 100%;height: 100%;position: absolute;top: 0;left: 0;
		border-radius: 50%;background: rgba(0, 0, 0, 0);pointer-events: none;
	}
	body.page-id-216 section.member ul li:nth-of-type(1):before ,
	body.page-id-214 section.member ul li:nth-of-type(2):before ,
	body.page-id-218 section.member ul li:nth-of-type(3):before ,
	body.page-id-220 section.member ul li:nth-of-type(4):before ,
	body.page-id-222 section.member ul li:nth-of-type(5):before {
		background: rgba(0, 0, 0, .6);
	}
	body.page-id-216 section.member ul li:nth-of-type(1):after ,
	body.page-id-214 section.member ul li:nth-of-type(2):after ,
	body.page-id-218 section.member ul li:nth-of-type(3):after ,
	body.page-id-220 section.member ul li:nth-of-type(4):after ,
	body.page-id-222 section.member ul li:nth-of-type(5):after {
		content: "表示中";position: absolute;z-index: 11;top: calc(50% - .5em);left: calc(50% - 1.5em);
		font-size: 18px;font-weight: 700;color: var(--color-background-white);line-height: 1;
		pointer-events: none;
	}

	.sr-only {position: absolute;
		width: 1px;height: 1px;margin: -1px;
		overflow: hidden;clip: rect(0, 0, 0, 0);
		white-space: nowrap;
		border: 0;
	}
	section.careers-form form {
		border-radius: 25px;border: 2px solid var(--color-text-black);background: var(--color-background-white);
		max-width: 100%;padding: 40px 20px;gap: 0;display: flex;flex-direction: column;
	}
	section.careers-form form a.external {
		display: block;text-align: center;line-height: 1.3;margin: 0 0 30px;
		background: var(--color-secondary);color: var(--color-background-white);padding: 15px 20px;border-radius: 25px;
	}
	section.careers-form form a.external span {
		display: inline-block;padding: 0 35px 0 0;position: relative;
		font-weight: 500;
	}
	section.careers-form form a.external span::after {
		content: "";width: 16px;height: 16px;position: absolute;top: 50%;right: 0;transform: translateY(-50%);
		background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23fff%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cpath%20d%3D%22M8.382.752a1.787%201.787%200%201%200-2.464%202.59l3.016%202.87H1.788a1.787%201.787%200%201%200%200%203.575h7.146l-3.016%202.87a1.787%201.787%200%201%200%202.464%202.59L16%208z%22%2F%3E%3C%2Fsvg%3E')
	}
	section.careers-form form fieldset {
		border: none;
		display: flex;flex-wrap: wrap;gap: 10px;flex-direction: column;
	}
	section.careers-form form fieldset:nth-of-type(2) {
		margin: 0 0 50px;
	}
	section.careers-form form .input-box {
		display: flex;flex-wrap: wrap;position: relative;flex-direction: column;gap: 5px;
	}
	section.careers-form form .input-box label {
		width: 100%;display: block;box-sizing: border-box;
		font-size: 1.4rem;line-height: 1;font-weight: 700;
		padding: 12px 0;
	}
	section.careers-form form .input-box label span {display: block;font-size: 1.3rem;margin: 5px 0 0;}
	section.careers-form form .input-box span.wpcf7-form-control-wrap {
	}
	section.careers-form form .input-box input[type="text"] ,
	section.careers-form form .input-box input[type="email"] ,
	section.careers-form form .input-box input[type="tel"] ,
	section.careers-form form .input-box textarea {
		background: #fff;border: solid 1px #eee;
		width: 100%;outline: none;box-sizing: border-box;
		padding: 10px 10px;border-radius: 3px;
		font-size: 1.6rem;line-height: 1.4;
	}
	section.careers-form form .input-box textarea {
		line-height: 2;min-height: 270px;resize: vertical;
	}
	section.careers-form form .input-box textarea::placeholder {color: #afd3e2}
	.input-box .wpcf7-radio {
		display: flex;width: 100%;flex-direction: column;
		gap: 12px;
	}

	.input-box .wpcf7-list-item {
		margin: 0;flex: 1;position: relative;
	}
	.input-box .wpcf7-list-item::before {
		content: "";width: 20px;height: 20px;position: absolute;top: 50%;left: 0;
		transform: translateY(-50%);border-radius: 50%;
		border: solid 1px #eee;background: #fff;
	}
	.input-box .wpcf7-list-item::after {
		content: "";width: 8px;height: 8px;position: absolute;top: 50%;left: 10px;
		transform: translateY(-50%) translateX(-50%);border-radius: 50%;
		background: #fff;transition: background 0.15s;
	}

	section.careers-form .input-box .wpcf7-list-item label {
		display: flex;align-items: center;
		padding: 18px 20px 18px 35px;width: 100%;
		border-radius: 8px;
		cursor: pointer;
		user-select: none;
	}
	section.careers-form .input-box .wpcf7-list-item label span {
		margin: 0;font-weight: 500;
	}
	section.careers-form form .privacy {
		margin: 30px 0;
	}
	section.careers-form form .privacy .wpcf7-list-item {margin: 0;}
	section.careers-form form .privacy span.wpcf7-list-item-label {
		font-weight: 700;font-size: 1.4rem;position: relative;padding: 0 0 0 26px;
	}
	section.careers-form form .privacy input {display: none;}
	section.careers-form form .privacy span.wpcf7-list-item-label a {text-decoration: underline}
	section.careers-form form .privacy span.wpcf7-list-item-label::before {
		content: "";width: 20px;height: 20px;border-radius: 3px;border: 1px solid #EEE;background: #FFF;
		position: absolute;top: 0;left: 0;
	}
	section.careers-form form .privacy .wpcf7-list-item:has(input[type="checkbox"]:checked) span.wpcf7-list-item-label::after {
		content: "";width: 10px;height: 20px;border: 3px solid var(--color-secondary);
		position: absolute;top: -4px;left: 7px;border-top: none;border-left: none;transform: rotate(50deg);
	}

	/* デフォルトのラジオボタンを非表示 */
	.input-box .wpcf7-list-item input[type="radio"] {
		position: absolute;
		opacity: 0;
		width: 0;height: 0;
		pointer-events: none;
	}
	/* 選択状態: :has() で親要素にスタイルを適用 */
	.input-box .wpcf7-list-item:has(input[type="radio"]:checked)::after {
		background: var(--color-secondary);transition: background 0.15s;
	}
	section.careers-form form #submit {
		text-align: left;position: relative;display: inline-block;
	}
	section.careers-form form #submit::after {
		content: "";width: 16px;height: 16px;position: absolute;top: 50%;left: 18rem;transform: translateY(-50%);
		background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%23fff%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cpath%20d%3D%22M8.382.752a1.787%201.787%200%201%200-2.464%202.59l3.016%202.87H1.788a1.787%201.787%200%201%200%200%203.575h7.146l-3.016%202.87a1.787%201.787%200%201%200%202.464%202.59L16%208z%22%2F%3E%3C%2Fsvg%3E')
	}
	section.careers-form form #submit input {
		background: var(--color-background-white);color: var(--color-text-black);display: block;text-align: left;
		font-size: 1.6rem;line-height: 1;font-family: "MFW-PA1GothicStd-Medium",'A P-OTF A1ゴシック Std M';color: var(--color-background-white);
		border: none;padding: 13px 52px 12px 20px;border-radius: 20px;cursor: pointer;background: #0F8CC8;
		transition: opacity .3s;
	}
	section.careers-form form .input-box .wpcf7-not-valid-tip {
		position: absolute;bottom: -20px;
		font-size: 1.2rem;
	}
	.wpcf7-spinner {display: none}

	/* ==========================================================================
	3. Components — Entry (Page Post)
	========================================================================== */
	main#index section.lead {
		padding: 0;
	}
	

	/* ==========================================================================
	 3. Components — Entry (Single Post)
	 ========================================================================== */

	.entrybox {
		background: var(--color-background-white);
	}



/* ==========================================================================
   5. Responsive — sp (768px+)
   ========================================================================== */

@media (max-width: 768px) {
}

/* ==========================================================================
   5. Responsive — Desktop (768px+)
   ========================================================================== */

@media (min-width: 768px) {
	html {font-size: 62.5%;}
	*.pc {display: block}
	*.sp {display: none}
	.more a span {
		padding: 13px 50px 13px 24px;
		border-radius: 23px;
	}
	.more a span::after {
		width: 20px;height: 20px;position: absolute;top: calc(50% - 10px);right: 20px;
	}
	main.careers {
		padding: 0;
	}
	header.careers-header {
		padding: 0 60px;pointer-events: none;
	}
	header.careers-header .logo {
		width: auto;
	}
	.careers-header .careers-title {width: auto;font-size: 1.6rem;}
	.careers-header .careers-title svg {width: auto}
	.careers-header .careers-title span {
		top: -6px;
		padding: 7px 10px;margin: 0 10px 0 0;
	}
	.careers-header label {display: none}
	.careers-header nav {
		padding: 50px 0;position: static;
	}
	.careers-header nav ul {
		gap: 30px;
	}
	.main-navigation ul {
		padding: 0;border-radius: 0;
		background:none;min-width: auto;
		flex-direction: row;
	}
	.main-navigation ul li a {
		display: block;padding: 5px 0;
		font-size: 1.6rem;font-weight: 500;color: var(--color-background-white);
	}
	.main-navigation ul span {
		display: block;line-height: 1;position: relative;
	}
	.main-navigation ul li.big {
		background-color: var(--color-background-white);
		color: var(--color-text-black);text-align: center;
		padding: 10px;border-radius: 20px;
	}
	.main-navigation ul li.big a {
		color: var(--color-text-black);
	}
	.careers-header nav li {}
	.careers-header nav ul span {
		display: block;line-height: 1;position: relative;
		color: var(--color-text-black);
	}
	.careers-header nav ul ul {
		gap: 0;margin: -13px 0;
	}
	.careers-header nav ul ul li {
	}
	.careers-header nav ul ul span {
		font-size: 1.6rem;
		padding: 10px 20px;border: solid 1px var(--color-text-black);
		background: var(--color-background-white);color: var(--color-text-black);
	}
	.careers-header nav ul ul li:nth-of-type(1) span {
		border-right: none;border-radius: 20px 0 0 20px;
		padding: 10px 30px;
	}
	.careers-header nav ul ul li:nth-of-type(2) span {
		border-radius: 0 20px 20px 0;
		padding: 10px 20px;
	}
	.careers-footer {
		border-top: solid 2px var(--color-text-black);border-bottom: solid 2px var(--color-text-black);
		background-color: var(--color-secondary);padding: 55px 0 80px;
		font-size: 1.4rem;color: var(--color-background-white);font-weight: 500;overflow: hidden;
	}
	.careers-footer .wrap {position: relative;justify-content: space-between;}
	.careers-footer .wrap::before {
		content: "";width: 392px;height: 396px;position: absolute;top: calc(50% - 180px);left: -210px;
		background: url(../images/icon/mv01.svg) no-repeat center / 100%;
		animation: rotateAnimation 180s linear infinite;
	}
	.careers-footer .more {
		margin: 16px 0 0;
	}
	.careers-footer .info {
		width: 265px;padding: 0 0 0 180px;box-sizing: content-box;
	}
	.careers-footer .logo span {
		font-size: 1.6rem;font-weight: 700;line-height: 1.2;color: var(--color-text-black);
		padding: 8px 10px;background: #FFDA22;margin: 3px 0 0;display: inline-block;
	}
	.careers-footer .info svg {width: auto;height: auto;}
	.careers-footer nav {display: flex;flex-wrap: wrap;gap: 80px;}
	.careers-footer nav ul.footer-nav {
		display: flex;gap: 5px;justify-content: flex-start;
		flex-direction: column;
	}
	.careers-footer nav ul.footer-nav ul {
		display: flex;flex-direction: column;gap: 8px;
	}
	.careers-footer nav li.footer-flat a {
		font-weight: 500;
	}

	.wrap {
		padding: 0 50px;min-width: 1050px;
		display: flex;flex-wrap: wrap;
	}
	main section {
		padding: 100px 0;
	}
	
	section.careers-mv {
		width: 100%;position: relative;z-index: 10;
		min-height: 800px;padding: 0;display: table;
		background: var(--color-secondary);
	}
	section.careers-mv .wrap {
		display: table-cell;vertical-align: middle;position: static;
		text-align: center;
	}
	section.careers-mv picture {
		width: 100%;height: 100%;min-width: 1300px;
		position: absolute;bottom: 0;left: 0;
	}
	section.careers-mv picture img {
		width: 100%;height: auto;min-width: 1300px;
		position: absolute;bottom: -2px;left: 0;
	}
	section.careers-mv p.title {
		color: var(--color-background-white);text-align: center;position: relative;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;opacity: 0;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;
		font-size: 3.2rem;font-weight: 900;line-height: 1.2;
	}
	section.careers-mv p.title span.ruby {
		font-size: 1.4rem;position: absolute;bottom: -1.5em;right: 8.6rem;
		-webkit-text-stroke-width: 0;
		-webkit-text-stroke-color: none;
	}
	main.careers section.careers-lead {
		background: var(--color-primary);z-index: 12;
	}
	section.careers-lead::after {
		content: "";width: 100vw;height: 4.7vw;position: absolute;bottom: -4.5vw;left: 0;pointer-events: none;z-index: 12;background-repeat: no-repeat;background-size: 100%;background-position: center bottom;
		background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%2361a745%22%20viewBox%3D%220%200%201414%2067%22%3E%3Cpath%20d%3D%22M1413.5%2058.877c-132.48-26.627-391.36-44.711-689.028-44.711C397.425%2014.166%20117.204%2035.995%200%2067V0h1413.5z%22%2F%3E%3C%2Fsvg%3E');
	}
	section.careers-lead::before {
		content: "";width: 70px;height: 39px;position: absolute;bottom: -2vw;right: 20%;pointer-events: none;z-index: 15;background-repeat: no-repeat;background-size: 100%;background-position: center bottom;
		background-image: url(../images/icon/popo.svg);
		/* アニメーションを1つにまとめる */
		animation: birdMove 17s linear infinite;
		will-change: transform;
		transform-origin: center bottom;
	}
	@keyframes birdMove {

		0%    { transform: translateX(0)    translateY(0)      scaleY(1);    }
		1.5%  { transform: translateX(-10px) translateY(-14px) scaleY(1);    }
		3%    { transform: translateX(-20px) translateY(0)     scaleY(0.88); }
		4%    { transform: translateX(-20px) translateY(0)     scaleY(1);    }

		4.5%  { transform: translateX(-30px) translateY(-14px) scaleY(1);    }
		6%    { transform: translateX(-40px) translateY(0)     scaleY(0.88); }
		7%    { transform: translateX(-40px) translateY(0)     scaleY(1);    }

		29%   { transform: translateX(-40px) translateY(0)     scaleY(1);    }

		30.5% { transform: translateX(-30px) translateY(-14px) scaleY(1);    }
		32%   { transform: translateX(-20px) translateY(0)     scaleY(0.88); }
		33%   { transform: translateX(-20px) translateY(0)     scaleY(1);    }

		44%   { transform: translateX(-20px) translateY(0)     scaleY(1);    }

		45.5% { transform: translateX(-10px) translateY(-14px) scaleY(1);    }
		47%   { transform: translateX(0)     translateY(0)     scaleY(0.88); }
		48%   { transform: translateX(0)     translateY(0)     scaleY(1);    }

		100%  { transform: translateX(0)     translateY(0)     scaleY(1);    }
	}
	section.careers-lead .text {
		max-width: 360px;margin: 0 auto;position: relative;z-index: 11;
		display: flex;flex-direction: column;gap: 3rem;
	}
	section.careers-lead .text p {
		font-weight: 500;line-height: 1.6;color: var(--color-background-white);
	}
	section.careers-message {
		background: url(../images/careers/message-back.jpg) no-repeat center / cover;
	}
	section.careers-message h2 {
		font-size: 1.6rem;line-height: 1.3;font-weight: 500;text-align: center;
		width: 100%;color: var(--color-text-black);
		padding: 20px 0 50px;position: relative;
		margin: 100px 0 50px;
	}
	section.careers-message h2::before {
		content:attr(data-en);position: absolute;top:-70px;left:50%;
		transform:translatex(-50%);
		font-size: 64px;color: var(--color-background-white);font-weight: 900;letter-spacing: .3em;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;
	}
	section.careers-message ol {
		display: flex;flex-direction: column;gap: 150px;position: relative;z-index: 11;
	}
	section.careers-message ol li {
		font-weight: 500;padding: 0 0 0 80px;
		position: relative;margin: 0 0 0 330px;
	}
	section.careers-message ol li::before {
		content: "ひとつめ";
		position: absolute;left: 80px;top: -18px;
	}
	section.careers-message ol li::after {
		content: "";width: 60px;height: 150px;position: absolute;left: 0;top: -18px;
		background: url(../images/careers/message-icon01@2x.png) no-repeat center / 59px 149px;
	}
	section.careers-message ol li:nth-of-type(2) {margin-left: 75px;}
	section.careers-message ol li:nth-of-type(3) {margin-left: 600px;}
	section.careers-message ol li:nth-of-type(2)::before {content: "ふたつめ"}
	section.careers-message ol li:nth-of-type(3)::before {content: "みっつめ"}
	section.careers-message ol li:nth-of-type(2)::after {
		right: auto;left: -60px;top: -40px;
		background: url(../images/careers/message-icon02@2x.png) no-repeat center / 43px 130px;
	}
	section.careers-message ol li:nth-of-type(3)::after {
		background: url(../images/careers/message-icon03@2x.png) no-repeat center / 40px 127px;
	}
	section.careers-message h3 {
		font-size: 36px;color: var(--color-background-white);font-weight: 900;letter-spacing: 0;line-height: 1.6;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;
		margin: 0 0 20px;
	}
	section.careers-message p {
		width: 360px;
	}
	section.careers-menu h2 {
		font-size: 1.6rem;line-height: 1.3;font-weight: 500;text-align: center;
		width: 100%;color: var(--color-text-black);
		padding: 20px 0 50px;position: relative;
		margin: 100px 0 50px;color: rgba(0, 0, 0, 0);
	}
	section.careers-menu h2::before {
		content:attr(data-en);position: absolute;top:-70px;left:50%;
		transform:translatex(-50%);
		font-size: 64px;color: var(--color-background-white);font-weight: 900;letter-spacing: .3em;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;
	}
	section.careers-menu {
		background: linear-gradient(180deg, #3380C7 0%, #4DADD0 100%);
		padding: 270px 0 360px;
	}
	section.careers-menu ul {
		padding: 30px 50px;width: 1000px;display: flex;flex-direction: column;
		margin: 0 auto;
		border-radius: 50px;background: rgba(255, 255, 255, 0.77);position: relative;z-index: 10;
	}
	section.careers-menu ul::after {
		content: "";width: 100%;height: 120%;position: absolute;top: -10%;left: 0;pointer-events: none;
		background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%201005%20538%22%3E%3Cpath%20stroke%3D%22%23000%22%20stroke-linecap%3D%22round%22%20stroke-width%3D%222%22%20d%3D%22M47.766%20508.784c-3.78-.498-12.094-3.265-18.771-8.395-3.198-2.457-9.176-22.759-18.052-55.29-3.97-14.552-5.187-25.695-6.889-69.259S.63%20256.484%201.07%20210.547c.44-45.936%203.095-59.722%206.112-71.289C12.615%20118.431%2024%2095.664%2035.83%2073.176%2046.24%2053.38%2060.025%2044.993%2071.422%2039.036c6.843-3.575%2016.367-6.86%20146.008-13.816S596.678%208.094%20733.051%203.756C869.425-.582%20885.002%201.218%20893.876%202.36c16.015%202.06%2041.779%2012.366%2059.707%2020.822%2011.343%205.35%2016.956%2018.453%2026.614%2042.678%203.239%208.126%204.919%2018.338%208.421%2040.624%203.503%2022.287%208.122%2056.644%2011.263%20104.044%203.139%2047.4%204.669%20106.802%203.939%20146.326-1.05%2057.52-8.493%2081.525-11.92%2092.355-3.025%209.564-12.219%2023.357-23.271%2039.31-16.293%2023.52-50.7%2038.859-64.873%2044.859-7.149%203.027-14.588%204.771-144.248%202.761-129.661-2.01-381.414-8.145-518.78-12.44s-152.714-6.565-162.616-8.155c-13.892-2.433-20.485-3.789-25.223-4.706-2.255-.43-4.21-.787-8.759-2.409%22%2F%3E%3C%2Fsvg%3E');background-repeat: no-repeat;
	}
	section.careers-menu ul li {border-bottom: solid 1px var(--color-text-black)}
	section.careers-menu ul li:last-of-type {border-bottom: none}
	section.careers-menu ul a {
		padding: 40px 50px;position: relative;
		display: flex;flex-wrap: wrap;justify-items: center;
	}
	section.careers-menu ul a::after {
		content: "";width: 20px;height: 20px;position: absolute;top: calc(50% - 10px);right: 50px;
		background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20fill%3D%22%23000%22%20d%3D%22M10.478.94a2.234%202.234%200%201%200-3.08%203.238l3.77%203.588H2.234a2.234%202.234%200%201%200%200%204.468h8.934l-3.77%203.588a2.234%202.234%200%201%200%203.08%203.237L20%2010z%22%2F%3E%3C%2Fsvg%3E')
	}
	section.careers-menu h3 {
		font-size: 28px;color: var(--color-background-white);font-weight: 900;letter-spacing: 0;line-height: 1.6;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;margin: 0;
		-webkit-text-stroke-color: var(--color-text-black);width: 320px;paint-order: stroke;
	}
	section.careers-menu p {
		font-size: 1.6rem;font-weight: 500;line-height: 1.6;
	}
	section.careers-foot {
		background-color: #80B438;padding: 100px 0;
	}
	section.careers-foot img.grass-item {opacity: .5}
	section.careers-foot .wrap {flex-direction: column}
	section.careers-foot p.title {
		margin: 0 auto;
		font-size: 28px;color: var(--color-background-white);font-weight: 900;text-align: center;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;
	}
	section.careers-foot p {
		width: 600px;margin: 30px auto 50px;
		font-size: 1.6rem;line-height: 2;text-align: center;font-weight: 500;
	}
	section.careers-foot ul {
		width: 600px;margin: 0 auto;display: flex;padding: 15px 0;position: relative;
		font-size: 1.6rem;line-height: 2;text-align: center;font-weight: 500;
		border-radius: 20px;border: 1px solid #000;background: #FFF;
	}
	section.careers-foot ul::after {
		content: "";width: 1px;height: calc(100% - 30px);position: absolute;top: 15px;left: 50%;
		background: var(--color-text-black);
	}
	section.careers-foot ul li {
		flex: 1;
	}
	section.careers-foot ul a {
		display: block;text-align: center;
	}
	section.careers-foot ul span {
		font-size: 2.8rem;display: inline-block;padding: 12px;
	}

	main.careers > * {z-index: 11;position: relative;}
	main.about {background: #9FCDD2}
	main.careers.environment {background: #80B438}
	main.careers.qanda {background: #416829}
	main.careers.recruitment ,
	main.careers.interview {background: var(--color-primary);border-bottom: solid 2px var(--color-text-black);}
	main.careers.environment img.grass-item {
		opacity: .5;z-index: 0;
	}
	main.about section.careers-main::before {
		content: "";width: 100%;height: 150%;
		position: absolute;bottom: -251px;left: 0;z-index: 0;
		background: url(../images/careers/cloud@2x.png) no-repeat center bottom / 100%;
	}
	main.about section.careers-main::after {
		content: "";width: 100%;height: 22vw;
		position: absolute;bottom: -251px;left: 0;z-index: 1;
		background: #9FCDD2;background: linear-gradient(180deg,rgba(159, 205, 210, 0) 0%, rgba(159, 205, 210, 1) 100%);
	}
	main.about .sky {
		width: 100%;height: calc(110vh + 300px);
		position: absolute;top: 0;left: 0;z-index: 0;
		background: linear-gradient(180deg, #3380C7 0%, #4DADD0 100%);
	}
	main.environment::before {
		content: "";width: 100%;height: 100%;position: absolute;top: 0;left: 0;
		background: url(../images/careers/environment@2x.jpg) no-repeat center top / 100%;
	}
	main.qanda::before {
		content: "";width: 100%;height: 100%;position: absolute;top: 0;left: 0;
		background: url(../images/careers/qanda@2x.jpg) no-repeat center top / 100%;
	}
	main.interview::before {
		content: "";width: 100%;height: 100%;position: absolute;top: 0;left: 0;
		background: url(../images/careers/interview@2x.jpg) no-repeat center top / 100%;
	}
	main.recruitment::before {
		content: "";width: 100%;height: 100%;position: absolute;top: 0;left: 0;
		background: url(../images/careers/recruitment@2x.jpg) no-repeat center top / 101%;
	}
	section.careers-main {padding: 130px 0 200px}
	main.recruitment section.careers-main {
		padding: 130px 0 0;
	}
	section.careers-main .wrap {
		flex-direction: column;
	}
	section.careers-main h1 {
		font-size: 64px;color: var(--color-background-white);
		font-weight: 900;text-align: center;line-height: 1.6;letter-spacing: .2em;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;margin: 30px 0 85px;
	}
	section.careers-main p.lead {
		font-size: 24px;color: var(--color-background-white);font-weight: 900;text-align: center;line-height: 1.6;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;margin: 0 0 50px;
	}
	section.careers-main p {
		font-size: 1.6rem;text-align: center;line-height: 1.6;
		text-align: center;font-weight: 500;margin: 0 0 3rem;
		position: relative;z-index: 5;
	}
	main.form section.careers-main p {
		margin: -80px auto 50px;
		color: var(--color-background-white);line-height: 2;
	}
	main.interview section.careers-main .imgbox {
		width: 900px;overflow: hidden;margin: 0 auto;
		position: relative;border: solid 2px var(--color-text-black);border-radius: 50px;
	}
	main.interview section.careers-main .imgbox picture {
		border: none;
	}
	main.interview section.careers-main .imgbox .text {
		position: absolute;z-index: 1;bottom: 20px;left: 50px;top: auto;
		display: flex;flex-direction: column;align-items: flex-start;
	}
	main.interview section.careers-main .imgbox h2 {
		font-size: 36px;color: var(--color-background-white);font-weight: 900;text-align: center;line-height: 1.2;
		-webkit-text-stroke-width: 2px;display: inline-block;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;margin: 0;
	}
	main.interview section.careers-main .imgbox p.title {
		font-size: 2.4rem;font-weight: 900;color: var(--color-background-white);line-height: 1.3;
		padding: 7px 11px;margin: 8px 0 0;display: inline-block;
		background: var(--color-text-black);
	}
	main.interview section.careers-main .imgbox p.head {
		font-size: 1.6rem;font-weight: 900;color: var(--color-background-white);line-height: 1.3;
		padding: 2px 5px;display: inline-block;margin: 6px 0 0;
		background: var(--color-text-black);
	}
	section.careers-about {
		background: #9FCDD2;
	}
	section.careers-about:nth-of-type(2) {
		background: none;padding: 120px 0 0;
	}
	section.careers-contents {
		padding: 0;
	}
	section.careers-contents .text {
		width: 100%;
		max-width: 800px;margin: 0 auto;padding: 90px 50px;
		border-bottom: solid 1px #000;
		display: flex;flex-direction: column;gap: 30px;
	}
	section.careers-contents.careers-form .text ,
	section.careers-contents.careers-recruitment .text {
		border-radius: 50px;
		max-width: 900px;padding: 0 0 90px;gap: 75px;
	}
	section.careers-contents.wide .text {
		padding: 90px 0;
	}
	section.careers-contents:last-of-type .text {
		border-bottom: none;
	}
	section.careers-contents .text h2 {
		font-size: 36px;color: var(--color-background-white);font-weight: 900;text-align: left;line-height: 1.6;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;margin: 0;
	}
	section.careers-contents .text h2.center {text-align: center}
	section.careers-contents .text h3.tt {
		margin: 40px 0 -10px;
	}
	section.careers-contents .text h3.tt span {
		font-size: 2.4rem;font-weight: 900;
		background: var(--color-background-white);
		display: inline-block;padding: 4px 20px;
	}
	section.careers-contents .text h4.tt {
		font-size: 2.4rem;color: var(--color-background-white);
		font-weight: 900;line-height: 1.6;letter-spacing: .2em;
		-webkit-text-stroke-width: 2px;display: inline-block;z-index: 11;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;margin: 20px 0 -25px;
	}
	section.careers-contents .text p {
		font-weight: 500;line-height: 2;
	}
	section.careers-contents .text dl.detail div {
		display: flex;font-weight: 500;margin: 0 0 .2em;flex-direction: row;
	}
	section.careers-contents .text dl.detail dt {width: 7em}
	section.careers-contents .text dl.detail dt::after {content: "："}
	section.careers-contents .text dl.detail dd {width: calc(100% - 7em);padding: 0 0 0 1em}
	section.careers-contents .text dl.ability div {
		display: flex;font-weight: 500;margin: 0 0 40px;
	}
	section.careers-contents .text dl.ability dt {width: 55px;font-weight: 900;}
	section.careers-contents .text dl.ability dd {width: calc(100% - 55px);padding: 0 0 0 1em}
	section.careers-contents .text dl.ability dd ul li {
		position: relative;padding: 0 0 0 1.3em;font-weight: 400;
	}
	section.careers-contents .text dl.ability dd ul li::before {
		content: "・";position: absolute;top: 0;left: 0;
	}
	section.careers-contents .jigyosho-archive {
		flex-direction: column;gap: 30px;
	}
	section.careers-contents .jigyosho-archive li {
		border-radius: 10px;background: var(--color-background-white);
		opacity: 0;
	}
	section.careers-contents .jigyosho-archive li a {
		padding: 24px 30px;display: flex;flex-wrap: wrap;
	}
	section.careers-contents .jigyosho-archive li .jigyosho-card__body {
		width: 440px;
	}
	section.careers-contents .jigyosho-archive li h3 {
		margin: 0 0 5px;
	}
	section.careers-contents .jigyosho-archive li ul.jigyosho-tags {
		width: 200px;font-size: 1.4rem;display: flex;flex-wrap: wrap;gap: 5px;align-items: start;
	}
	section.careers-contents .jigyosho-archive li ul.jigyosho-tags li {
		background: #3686C9;padding: 5px 8px 6px;border-radius: 5px;
		color: var(--color-background-white);line-height: 1;opacity: 1;
	}
	section.careers-contents ul.big-menu {
		display: flex;flex-wrap: wrap;gap: 5px;
	}
	section.careers-contents ul.big-menu li {
		width: 230px;height: 230px;padding: 50px 20px;
		border-radius: 30px;border: 2px solid #000;
		background: rgba(255, 255, 255, 0.75);text-align: center;
	}
	section.careers-contents ul.big-menu h3 {
		font-size: 2rem;text-align: center;font-weight: 400;
	}
	section.careers-contents ul.big-menu p {
		font-size: 20px;margin: 10px 0 0;font-weight: 400;
	}
	section.careers-contents ul.big-menu p span {
		font-size: 48px;font-weight: 400;line-height: 1.8;
	}
	section.careers-contents ul.big-menu p span.mini {
		font-size: 30px;margin: 25px 0 0;display: inline-block;
	}
	section.careers-contents ul.big-menu em {
		display: block;margin: -1.5rem 0 0;
		font-size: 1.2rem;font-weight: 400;font-style: normal;
	}
	section.careers-contents .back {
		padding: 40px 50px 15px;
		border-radius: 20px;background: rgba(255, 255, 255, 0.20);
	}
	section.careers-contents .back dt {
		font-weight: 900;
	}
	section.careers-contents .back dd {
		margin: 0 0 25px;
	}
	section.careers-introduction {
		border-bottom: solid 2px var(--color-text-black);
		padding: 0 0 190px;
	}
	.careers-environment .imgbox {
		overflow: hidden;z-index: 11;position: relative;
	}
	.careers-environment .imgbox .slider-track {
		display: inline-flex;gap: 20px;
		animation: slider-loop 60s linear infinite;
	}
		@media (prefers-reduced-motion: reduce) {
			animation-play-state: paused;
	}
	.careers-environment .imgbox .img {
		flex-shrink: 0;width: 360px;overflow: hidden;
		border-radius: 30px;border: 2px solid #000;
	}
	.careers-environment .imgbox .img img {
		display: block;width: 100%;height: 240px;
		object-fit: cover;
	}
	@keyframes slider-loop {
		0%   { transform: translateX(0); }
		100% { transform: translateX(-50%); }
	}
	section.careers-qanda dl.qanda {
		margin: -230px 0 25px;
	}
	section.careers-qanda dl.qanda div {
		border-top: solid 1px var(--color-text-black);
		padding: 30px 0;display: flex;flex-direction: column;gap: 20px;
	}
	section.careers-qanda dl.qanda dt h2::before {content: "Q. "}
	section.careers-qanda dl.qanda dt h2 {font-size: 2.6rem;line-height: 1.3}
	section.careers-qanda dl.qanda dd p {color: var(--color-background-white);font-size: 1.8rem;line-height: 1.6;}
	section.careers-qanda dl.qanda div:nth-of-type(1) dd p ,
	section.careers-qanda dl.qanda div:nth-of-type(2) dd p {color: var(--color-text-black)}
	section.careers-qanda dl.qanda dd p::before {content: "A. "}
	section.careers-interview {
		margin: 250px 0 0;
	}
	section.careers-interview.careers-interview-in {
		margin: 0;
	}
	section.careers-interview ul.member-menu {
		display: flex;flex-wrap: wrap;gap: 150px 0;
		padding: 60px 0 0;
	}
	section.careers-interview ul.member-menu li {
		width: 50%;text-align: center;
	}
	
	section.careers-interview ul.member-menu picture {
		border-radius: 50%;overflow: hidden;display: block;
		width: 240px;height: 240px;margin: 0 auto 5px;
		border: solid 2px var(--color-text-black);
	}
	section.careers-interview ul.member-menu picture img {display: block}
	section.careers-interview ul.member-menu span.head {
		font-size: 1.4rem;color: var(--color-background-white);line-height: 1.2;
	}
	section.careers-interview ul.member-menu h3 {
		font-size: 2rem;color: var(--color-background-white);
		font-weight: 900;line-height: 1.3;
		-webkit-text-stroke-width: 2px;display: block;z-index: 11;
		-webkit-text-stroke-color: var(--color-text-black);paint-order: stroke;margin: 0 auto 10px;
	}
	section.careers-interview ul.member-menu p {
		background: var(--color-text-black);display: inline-block;padding: 5px 10px 4px;
		color: var(--color-background-white);font-size: 1.4rem;text-align: center;
	}
	section.careers-contents.careers-recruitment .text .wp-block-lazyblock-careers-list {
		border-radius: 50px;border: 2px solid var(--color-text-black);background: var(--color-background-white);
		max-width: 900px;padding: 120px 100px 70px;gap: 30px;
	}
	section.careers-recruitment .careers-list__item dt {
		color: #a3a3a3;font-size: 1.3rem;
	}
	section.careers-recruitment .careers-list__item dd {
		margin: 3px 0 80px;
	}
	section.careers-recruitment .wp-block-lazyblock-careers-list a.btn {
		display: block;padding: 25px;border-radius: 20px;border: 1px solid var(--color-text-black);background: var(--color-background-white);
		text-align: center;font-size: 2.8rem;font-weight: 500;
	}
	section.careers-interview .inbox {
		width: 900px;margin: 0 auto 120px;position: relative;z-index: 11;
		display: flex;gap: 70px;flex-wrap: wrap;flex-direction: row;
	}
	section.careers-interview .inbox .imgbox {
		width: 480px;border-radius: 10px;border: 5px solid var(--color-background-white);
		margin: 0 0 0 -150px;
	}
	section.careers-interview .inbox .textbox {
		width: 500px;display: flex;flex-direction: column;gap: 26px;
	}
	section.careers-interview .inbox.sec .imgbox {
		order: 2;margin: 0 -150px 0 0;
	}
	section.careers-interview .inbox h2 {
		font-size: 2.4rem;line-height: 1;color: var(--color-background-white);
		margin: 0;position: relative;
	}
	section.careers-interview .inbox h2::before {
		content: "";width: 100%;height: 1px;position: absolute;top: 50%;left: 0;
		background-color: var(--color-background-white);z-index: 0;
	}
	section.careers-interview .inbox h2 span {
		background: var(--color-primary);padding-right: 1.2em;
		position: relative;z-index: 1;
	}
	section.careers-interview .inbox p {
		color: var(--color-background-white);font-weight: 500;
		line-height: 2;
	}
	section.careers-interview .flow {
		width: 900px;margin: 0 auto 120px;position: relative;z-index: 11;
	}
	section.careers-interview .flow h2 {
		font-size: 2.4rem;line-height: 1;color: var(--color-background-white);
		margin: 0;position: relative;
	}
	section.careers-interview .flow h2::before {
		content: "";width: 100%;height: 1px;position: absolute;top: 50%;left: 0;
		background-color: var(--color-background-white);z-index: 0;
	}
	section.careers-interview .flow h2 span {
		background: var(--color-primary);padding-right: 1.2em;
		position: relative;z-index: 1;
	}
	section.careers-interview .flow dl {
		color: var(--color-background-white);
		margin: 40px 0 0;
		flex-direction: column;display: flex;gap: 20px;
	}
	section.careers-interview .flow dl div {
		display: flex;gap: 40px;
	}
	section.careers-interview .flow dl dt {
		width: 35px;
	}
	section.careers-interview .flow dl dd {
		width: calc(100% - 75px);
	}
	section.member {
		border-top: solid 2px var(--color-text-black);
	}
	section.member ul {
		display: flex;flex-wrap: wrap;gap: 5%;
		margin: 0 20px;
	}
	section.member ul li {
		overflow: hidden;width: 16%;position: relative;margin: 0;
		border-radius: 50%;border: solid 2px var(--color-text-black);
	}
	section.member ul li a {
		display: block;width: 100%;height: 100%;
	}
	section.member ul li::before {
		content: "";width: 100%;height: 100%;position: absolute;top: 0;left: 0;
		border-radius: 50%;background: rgba(0, 0, 0, 0);pointer-events: none;
	}
	body.page-id-216 section.member ul li:nth-of-type(1):before ,
	body.page-id-214 section.member ul li:nth-of-type(2):before ,
	body.page-id-218 section.member ul li:nth-of-type(3):before ,
	body.page-id-220 section.member ul li:nth-of-type(4):before ,
	body.page-id-222 section.member ul li:nth-of-type(5):before {
		background: rgba(0, 0, 0, .6);
	}
	body.page-id-216 section.member ul li:nth-of-type(1):after ,
	body.page-id-214 section.member ul li:nth-of-type(2):after ,
	body.page-id-218 section.member ul li:nth-of-type(3):after ,
	body.page-id-220 section.member ul li:nth-of-type(4):after ,
	body.page-id-222 section.member ul li:nth-of-type(5):after {
		content: "表示中";position: absolute;z-index: 11;top: calc(50% - .5em);left: calc(50% - 1.5em);
		font-size: 20px;font-weight: 700;color: var(--color-background-white);line-height: 1;
		pointer-events: none;
	}


	.sr-only {position: absolute;
		width: 1px;height: 1px;margin: -1px;
		overflow: hidden;clip: rect(0, 0, 0, 0);
		white-space: nowrap;
		border: 0;
	}
	section.careers-form form {
		border-radius: 50px;border: 2px solid var(--color-text-black);background: var(--color-background-white);
		max-width: 900px;padding: 80px 148px;gap: 0;display: flex;flex-direction: column;
	}
	section.careers-form form fieldset {
		border: none;
		display: flex;flex-wrap: wrap;gap: 30px;flex-direction: column;
	}
	section.careers-form form .input-box {
		display: flex;flex-wrap: wrap;position: relative;flex-direction: row;gap: 0;
	}
	section.careers-form form .input-box label {
		width: 25%;display: block;box-sizing: border-box;
		padding: 12px 0;display: flex;justify-content: left;align-items: center;
	}
	section.careers-form form .input-box label span {display: block;font-size: 1.3rem;margin: 5px 0 0;}
	section.careers-form form .input-box span.wpcf7-form-control-wrap {
		width: 75%;
	}
	section.careers-form form .input-box input[type="text"] ,
	section.careers-form form .input-box input[type="email"] ,
	section.careers-form form .input-box input[type="tel"] ,
	section.careers-form form .input-box textarea {
		padding: 24px 18px;
		font-size: 1.8rem;line-height: 1.4;
	}
	section.careers-form form .input-box textarea {
		line-height: 2;min-height: 270px;resize: vertical;
	}
	section.careers-form form .input-box textarea::placeholder {color: #afd3e2}
	.input-box .wpcf7-radio {
		display: flex;width: 100%;flex-direction: row;
		gap: 12px;
	}

	.input-box .wpcf7-list-item {
		margin: 0;flex: 1;
	}
	section.careers-form .input-box .wpcf7-list-item label {
		display: flex;align-items: center;
		border-radius: 8px;
		cursor: pointer;
		user-select: none;
	}
	section.careers-form form .privacy {margin: 0 0 30px}
	section.careers-form form #submit input {
		display: block;
		font-size: 1.6rem;line-height: 1;font-family: "MFW-PA1GothicStd-Medium",'A P-OTF A1ゴシック Std M';
		border: solid 1px var(--color-text-black);border-radius: 25px;cursor: pointer;padding: 16px 62px 15px 20px;
		transition: opacity .3s;
	}
	.wpcf7-spinner {display: none}

	/* ==========================================================================
	3. Components — Entry (Page Post)
	========================================================================== */
	main#index section.lead {
		padding: 0;
	}
	

	/* ==========================================================================
	 3. Components — Entry (Single Post)
	 ========================================================================== */

	.entrybox {
		background: var(--color-background-white);
	}
}
