/* =====================================================
* Base
* ================================================== */

/*! normalize.css v3.0.0 | MIT License | git.io/normalize */

html {
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	font-family: sans-serif;
}

body {
	margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

h1 {
	margin: 0.67em 0;
	font-size: 2em;
}

mark {
	background: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	position: relative;
	font-size: 75%;
	line-height: 0;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	margin: 0;
	color: inherit;
	font: inherit;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
	cursor: pointer;
	-webkit-appearance: button;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	padding: 0;
	border: 0;
}

input {
	line-height: normal;
}

input[type=checkbox],
input[type=radio] {
	box-sizing: border-box;
	padding: 0;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
	height: auto;
}

input[type=search] {
	box-sizing: content-box;
	-webkit-appearance: textfield;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
	border: 1px solid #c0c0c0;
}

legend {
	padding: 0;
	border: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

/* -----------------------------------------------------
 * Init
 * -------------------------------------------------- */

*,
*:before,
*:after {
	box-sizing: border-box;
}

/* normalize overwrite */

html {
	position: relative;
	min-height: 100%;
	font-family: 'Roboto', 'Noto Sans JP', serif;
	font-size: 62.5%;
}

body {
	height: 100%;
	margin: 0;
	padding: 0;
	background: #f8f8f2;
	color: #061826;
	font-size: 1.6rem;
	line-height: 2;
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: unset;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0;
}

ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

figure {
	margin: 0;
}

a {
	color: inherit;
	text-decoration: none;
}

p {
	margin: 0;
	font-weight: 500;
	letter-spacing: 0.05em;
}

address {
	font-style: inherit;
}

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

button {
	padding: 0;
	border-style: none;
}

/* =====================================================
* State
* ================================================== */

/* =====================================================
 * Module
 * ================================================== */

/* -----------------------------------------------------
 * Display
 * -------------------------------------------------- */

.u-show-br-sp {
	display: none;
}

.u-show-br-pc {
	display: none;
}

/* -----------------------------------------------------
 * Text
 * -------------------------------------------------- */

/* font-family
---------------------------------------- */

.u-font-en {
	font-family: 'DM Sans', serif !important;
}

.u-font-ja {
	font-family: 'Roboto', 'Noto Sans JP', serif !important;
}

/* text-align
---------------------------------------- */

.u-al-left {
	text-align: left !important;
}

.u-al-center {
	text-align: center !important;
}

.u-al-right {
	text-align: right !important;
}

/* writing-mode
---------------------------------------- */

.u-wm-rl {
	-ms-writing-mode: tb-rl !important;
	-webkit-writing-mode: vertical-rl !important;
	writing-mode: vertical-rl !important;
}

/* -----------------------------------------------------
 * c-careerplan
 * -------------------------------------------------- */

.c-careerplan .c-careerplan-heading span {
	color: #e60016;
	font-family: 'DM Sans', serif;
	font-size: 3rem;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}

.c-careerplan .c-careerplan-heading h2 {
	font-size: 4rem;
	font-weight: 900;
	line-height: 1.475;
	letter-spacing: -0.03em;
}

.c-careerplan .c-careerplan-content {
	margin: 40px 0 0;
}

.c-careerplan .c-careerplan-content ul {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.c-careerplan .c-careerplan-content ul li .c-careerplan-img {
	width: 100%;
}

.c-careerplan .c-careerplan-content ul li .c-careerplan-img img {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 0.8333333333vw;
}

/* -----------------------------------------------------
 * c-cta-button
-------------------------------------------------- */

.p-floating-cta {
	position: fixed;
	z-index: 50;
	right: 120px;
	bottom: 10%;
	-webkit-animation: floatingCta 3.2s ease-in-out infinite;
	animation: floatingCta 3.2s ease-in-out infinite;
}

.p-floating-cta:hover {
	-webkit-animation-play-state: paused;
	animation-play-state: paused;
}

.p-floating-cta__link {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 200px;
	height: 200px;
	border-radius: 50%;
	background: #00111c;
	color: #fff;
	font-weight: 700;
	line-height: 1.6;
	text-align: center;
	text-decoration: none;
	letter-spacing: 0.08em;
	transition: opacity 0.1s ease, -webkit-transform 0.1s ease;
	transition: transform 0.1s ease, opacity 0.1s ease;
	transition: transform 0.1s ease, opacity 0.1s ease, -webkit-transform 0.1s ease;
}

.p-floating-cta__link:hover {
	opacity: 0.9;
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
}

.p-floating-cta__text {
	margin-bottom: 10px;
	padding-top: 10px;
	font-size: 1.8rem;
	font-weight: 900;
	line-height: 1.3;
}

@-webkit-keyframes floatingCta {
	0% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}

	50% {
		-webkit-transform: translateY(-20px);
		transform: translateY(-20px);
	}

	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

@keyframes floatingCta {
	0% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}

	50% {
		-webkit-transform: translateY(-20px);
		transform: translateY(-20px);
	}

	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

/* -----------------------------------------------------
 * c-cta-environment
-------------------------------------------------- */

.c-cta-environment {
	padding: 120px 0 200px;
	background-color: #fff;
}

.c-cta-environment .c-cta-environment-head {
	display: flex;
	justify-content: space-between;
}

.c-cta-environment .c-cta-environment-head .c-cta-environment-heading span {
	font-family: 'DM Sans', serif;
	font-size: 2rem;
	font-weight: 900;
	line-height: 1.7;
	text-transform: uppercase;
}

.c-cta-environment .c-cta-environment-head .c-cta-environment-heading h2 {
	font-size: 5.6rem;
	font-weight: 900;
	line-height: 1.0535714286;
	letter-spacing: -0.03em;
}

.c-cta-environment .c-cta-environment-head p {
	font-weight: 500;
	letter-spacing: 0.05em;
}

.c-cta-environment .c-cta-environment-list {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 80px 0 0;
}

.c-cta-environment .c-cta-environment-list .c-cta-environment-item {
	flex: 0 0 46.6666666667%;
}

.c-cta-environment .c-cta-environment-list .c-cta-environment-item a {
	display: flex;
	flex-direction: column-reverse;
	gap: 24px;
}

.c-cta-environment .c-cta-environment-list .c-cta-environment-item a:focus .c-ut-arrow-btn,
.c-cta-environment .c-cta-environment-list .c-cta-environment-item a:hover .c-ut-arrow-btn {
	background-color: #061826;
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
}

.c-cta-environment .c-cta-environment-list .c-cta-environment-item a:focus .c-cta-environment-bg::before,
.c-cta-environment .c-cta-environment-list .c-cta-environment-item a:hover .c-cta-environment-bg::before {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}

.c-cta-environment .c-cta-environment-list .c-cta-environment-item a .c-cta-environment-type {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.c-cta-environment .c-cta-environment-list .c-cta-environment-item a .c-cta-environment-type .ja {
	display: block;
	font-size: 3.4rem;
	font-weight: 900;
	line-height: 1.45;
	letter-spacing: -0.03em;
}

.c-cta-environment .c-cta-environment-list .c-cta-environment-item a .c-cta-environment-bg {
	position: relative;
	overflow: hidden;
	height: 440px;
	border-radius: 0.8333333333vw;
}

.c-cta-environment .c-cta-environment-list .c-cta-environment-item a .c-cta-environment-bg::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	transition: -webkit-transform 0.2s ease 0s;
	transition: transform 0.2s ease 0s;
	transition: transform 0.2s ease 0s, -webkit-transform 0.2s ease 0s;
}

.c-cta-environment .c-cta-environment-list .c-cta-environment-item a .bg01::before {
	background-image: url(/recruit/img/common/img_environment_01.webp);
}

.c-cta-environment .c-cta-environment-list .c-cta-environment-item a .bg02::before {
	background-image: url(/recruit/img/common/img_environment_02.webp);
}

/* -----------------------------------------------------
 * c-cta
-------------------------------------------------- */

.c-cta {
	position: relative;
	padding: 210px 0 0;
	background-color: #fff;
}

.c-cta::after {
	content: '';
	position: absolute;
	top: 6px;
	left: 50%;
	width: 100%;
	height: 206px;
	background-color: transparent;
	background-image: url(/recruit/img/common/txt_catchcopy_pc.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.c-cta .c-cta-list {
	display: flex;
	justify-content: center;
	align-items: center;
}

.c-cta .c-cta-list .c-cta-item {
	width: 50%;
}

.c-cta .c-cta-list .c-cta-item:not(:last-child) {
	border-right: 1px solid rgba(6, 24, 38, 0.12);
}

.c-cta .c-cta-list .c-cta-item a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	max-height: 315px;
	padding: 104px 120px;
	background-color: #f8f8f2;
	transition: background-color 0.2s ease-in-out;
}

.c-cta .c-cta-list .c-cta-item a:focus,
.c-cta .c-cta-list .c-cta-item a:hover {
	background-color: #e60016;
}

.c-cta .c-cta-list .c-cta-item a:focus .c-ut-arrow-btn,
.c-cta .c-cta-list .c-cta-item a:hover .c-ut-arrow-btn {
	background-color: #061826;
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
}

.c-cta .c-cta-list .c-cta-item a:focus .c-cta-tit .en,
.c-cta .c-cta-list .c-cta-item a:focus .c-cta-tit .ja,
.c-cta .c-cta-list .c-cta-item a:hover .c-cta-tit .en,
.c-cta .c-cta-list .c-cta-item a:hover .c-cta-tit .ja {
	color: #fff;
}

.c-cta .c-cta-list .c-cta-item a .c-cta-tit {
	display: flex;
	flex-direction: column;
}

.c-cta .c-cta-list .c-cta-item a .en {
	font-family: 'DM Sans', serif;
	font-size: 2rem;
	font-weight: 900;
	line-height: 1.7;
	text-transform: uppercase;
}

.c-cta .c-cta-list .c-cta-item a .ja {
	font-size: 5.6rem;
	font-weight: 900;
	line-height: 1.0535714286;
}

.c-cta .c-cta-list .c-cta-item a .en,
.c-cta .c-cta-list .c-cta-item a .ja {
	transition: color 0.2s ease-in-out;
}

/* -----------------------------------------------------
 * c-ut-btn
 * -------------------------------------------------- */

.c-fixed-btn {
	display: grid;
	visibility: hidden;
	position: fixed;
	z-index: 20;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 2rem 1rem 1.5rem;
	background-color: rgba(255, 255, 255, 0.8);
	opacity: 0;
	transition: 0.2s ease;
	pointer-events: none;
	place-content: center;
}

.c-fixed-btn .c-ut-btn {
	height: 50px;
	padding: 26px 0;
}

.c-fixed-btn .c-ut-btn:first-child {
	margin-bottom: 0.8rem;
}

.c-fixed-btn.visible {
	visibility: visible;
	opacity: 1;
	pointer-events: all;
}

/* -----------------------------------------------------
 * c-heading-col
 * -------------------------------------------------- */

.c-heading-col {
	display: flex;
	flex-direction: row-reverse;
	gap: 56px;
}

.c-heading-col h2 {
	color: #e60016;
	font-size: 4rem;
	font-weight: 900;
	line-height: 1.05;
	-ms-writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
}

.c-heading-col span {
	color: #e60016;
	font-family: 'DM Sans', serif;
	font-size: 15rem;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}

/* -----------------------------------------------------
 * c-heading
-------------------------------------------------- */

.c-heading span {
	color: #e60016;
	font-family: 'DM Sans', serif;
	font-size: 15rem;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}

.c-heading h2 {
	color: #e60016;
	font-size: 4rem;
	font-weight: 900;
	line-height: 1.45;
	letter-spacing: -0.03em;
}

/* -----------------------------------------------------
 * c-jobtype
 * -------------------------------------------------- */

.c-jobtype ul {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.c-jobtype ul li a {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}

.c-jobtype ul li a:focus .c-ut-arrow-btn,
.c-jobtype ul li a:hover .c-ut-arrow-btn {
	background-color: #061826;
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
}

.c-jobtype ul li a:focus .c-jobtype-bg::before,
.c-jobtype ul li a:hover .c-jobtype-bg::before {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}

.c-jobtype ul li a .c-jobtype-body {
	display: flex;
	position: relative;
	justify-content: center;
	align-items: center;
	padding: 24px 40px;
	background-color: #fff;
	grid-column: 2/3;
	grid-row: 1/2;
}

.c-jobtype ul li a .c-jobtype-body .en {
	position: absolute;
	top: 24px;
	left: 2.7777777778vw;
	color: #b3b9bd;
	font-family: 'DM Sans', serif;
	font-size: 2.4rem;
	font-weight: 900;
	line-height: 1.2916666667;
	text-transform: uppercase;
}

.c-jobtype ul li a .c-jobtype-body .c-jobtype-type {
	transition: all 0.2s ease-in-out;
}

.c-jobtype ul li a .c-jobtype-body .c-jobtype-type .ja {
	font-size: 5.6rem;
	font-weight: 900;
	line-height: 1.4464285714;
	letter-spacing: -0.03em;
}

.c-jobtype ul li a .c-jobtype-body .c-jobtype-type span {
	color: #e60016;
	font-size: 1.8rem;
	font-weight: 900;
	line-height: 1.6666666667;
	letter-spacing: 0.05em;
}

.c-jobtype ul li a .c-jobtype-body .c-jobtype-type .c-jobtype-note {
	font-weight: 900;
}

.c-jobtype ul li a .c-jobtype-body .c-jobtype-btn {
	position: absolute;
	right: 2.7777777778vw;
	bottom: 24px;
}

.c-jobtype ul li a .c-jobtype-bg {
	position: relative;
	overflow: hidden;
	height: 360px;
	grid-column: 1/2;
	grid-row: 1/2;
}

.c-jobtype ul li a .c-jobtype-bg::before,
.c-jobtype ul li a .c-jobtype-bg::after {
	position: absolute;
	left: 0;
}

.c-jobtype ul li a .c-jobtype-bg::before {
	content: '';
	top: 0;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	transition: -webkit-transform 0.2s ease 0s;
	transition: transform 0.2s ease 0s;
	transition: transform 0.2s ease 0s, -webkit-transform 0.2s ease 0s;
}

.c-jobtype ul li a .c-jobtype-bg::after {
	top: -30px;
	color: #f8f8f2;
	font-family: 'Roboto Mono', serif;
	font-size: 12rem;
	font-weight: 700;
	line-height: 1.325;
}

.c-jobtype ul li a .bg01::before {
	background-image: url(/recruit/img/common/img_job_01.webp);
}

.c-jobtype ul li a .bg01::after {
	content: '01';
}

.c-jobtype ul li a .bg02::before {
	background-image: url(/recruit/img/common/img_job_02.webp);
}

.c-jobtype ul li a .bg02::after {
	content: '02';
}

.c-jobtype ul li a .bg03::before {
	background-image: url(/recruit/img/common/img_job_03.webp);
}

.c-jobtype ul li a .bg03::after {
	content: '03';
}

.c-jobtype ul li.is-disabled .c-jobtype-type .ja {
	color: #b3b9bd !important;
}

.c-jobtype ul li.is-disabled .c-jobtype-type span {
	color: #b3b9bd !important;
}

/* -----------------------------------------------------
 * c-lower-header
 * -------------------------------------------------- */

.c-lower-header {
	margin: 100px 0 0;
	background-color: #fff;
}

.c-lower-header .heading span {
	display: flex;
	overflow: hidden;
	color: #e60016;
	font-family: 'DM Sans', serif;
	font-size: 7.2rem;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}

.c-lower-header .heading h1 {
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.2727272727;
}

.c-lower-header .heading .txt-anim {
	-webkit-transform: translateY(2em);
	transform: translateY(2em);
	-webkit-animation: textanimation 0.2s forwards;
	animation: textanimation 0.2s forwards;
}

.c-lower-header .heading .txt-anim:nth-child(1) {
	-webkit-animation-delay: 0.1s;
	animation-delay: 0.1s;
}

.c-lower-header .heading .txt-anim:nth-child(2) {
	-webkit-animation-delay: 0.2s;
	animation-delay: 0.2s;
}

.c-lower-header .heading .txt-anim:nth-child(3) {
	-webkit-animation-delay: 0.3s;
	animation-delay: 0.3s;
}

.c-lower-header .heading .txt-anim:nth-child(4) {
	-webkit-animation-delay: 0.4s;
	animation-delay: 0.4s;
}

.c-lower-header .heading .txt-anim:nth-child(5) {
	-webkit-animation-delay: 0.5s;
	animation-delay: 0.5s;
}

.c-lower-header .heading .txt-anim:nth-child(6) {
	-webkit-animation-delay: 0.6s;
	animation-delay: 0.6s;
}

.c-lower-header .heading .txt-anim:nth-child(7) {
	-webkit-animation-delay: 0.7s;
	animation-delay: 0.7s;
}

.c-lower-header .heading .txt-anim:nth-child(8) {
	-webkit-animation-delay: 0.8s;
	animation-delay: 0.8s;
}

.c-lower-header .heading .txt-anim:nth-child(9) {
	-webkit-animation-delay: 0.9s;
	animation-delay: 0.9s;
}

.c-lower-header .heading .txt-anim:nth-child(10) {
	-webkit-animation-delay: 1s;
	animation-delay: 1s;
}

.c-lower-header .heading .txt-anim:nth-child(11) {
	-webkit-animation-delay: 1.1s;
	animation-delay: 1.1s;
}

.c-lower-header .heading .txt-anim:nth-child(12) {
	-webkit-animation-delay: 1.2s;
	animation-delay: 1.2s;
}

.c-lower-header .heading .txt-anim:nth-child(13) {
	-webkit-animation-delay: 1.3s;
	animation-delay: 1.3s;
}

.c-lower-header .heading .txt-anim:nth-child(14) {
	-webkit-animation-delay: 1.4s;
	animation-delay: 1.4s;
}

.c-lower-header .heading .txt-anim:nth-child(15) {
	-webkit-animation-delay: 1.5s;
	animation-delay: 1.5s;
}

.c-lower-header .heading .txt-anim:nth-child(16) {
	-webkit-animation-delay: 1.6s;
	animation-delay: 1.6s;
}

.c-lower-header .heading .txt-anim:nth-child(17) {
	-webkit-animation-delay: 1.7s;
	animation-delay: 1.7s;
}

.c-lower-header .heading .txt-anim:nth-child(18) {
	-webkit-animation-delay: 1.8s;
	animation-delay: 1.8s;
}

.c-lower-header .heading .txt-anim:nth-child(19) {
	-webkit-animation-delay: 1.9s;
	animation-delay: 1.9s;
}

.c-lower-header .heading .txt-anim:nth-child(20) {
	-webkit-animation-delay: 2s;
	animation-delay: 2s;
}

@-webkit-keyframes textanimation {
	0% {
		-webkit-transform: translateY(2em);
		transform: translateY(2em);
	}

	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

@keyframes textanimation {
	0% {
		-webkit-transform: translateY(2em);
		transform: translateY(2em);
	}

	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

.c-lower-header picture {
	display: inline-block;
	width: 100%;
	margin: 30px 0 0;
}

.c-lower-header picture img {
	width: 100%;
	height: 100%;
	border-radius: 1.6666666667vw;
}

.c-lower-header nav {
	margin: 20px 0 0;
}

.c-lower-header nav ul {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
}

.c-lower-header nav ul li a {
	display: flex;
	align-items: center;
	padding: 8px 0;
	font-weight: 700;
	line-height: 1.5;
	transition: color 0.2s ease-in-out;
	gap: 10px;
}

.c-lower-header nav ul li a span {
	display: inline-block;
	box-sizing: border-box;
	width: 0.5em;
	height: 0.5em;
	border: 2px solid currentColor;
	border-bottom: 0;
	border-left: 0;
	color: #061826;
	line-height: 1;
	vertical-align: middle;
	transition: -webkit-transform 0.2s ease-in-out;
	transition: transform 0.2s ease-in-out;
	transition: transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
	-webkit-transform: translateY(-25%) rotate(135deg);
	transform: translateY(-25%) rotate(135deg);
}

.c-lower-header nav ul li a:focus,
.c-lower-header nav ul li a:hover {
	color: #e60016;
}

.c-lower-header nav ul li a:focus span,
.c-lower-header nav ul li a:hover span {
	color: #e60016;
	-webkit-transform: translateY(0) rotate(135deg);
	transform: translateY(0) rotate(135deg);
}

/* -----------------------------------------------------
 * c-tagline
 * -------------------------------------------------- */

.c-tagline-wrap {
	position: relative;
	margin: 125px 0 0;
}

.c-tagline {
	display: flex;
	position: absolute;
	top: -170px;
	overflow: hidden;
}

.c-tagline ul {
	display: flex;
	-webkit-animation: loop-slide 90s infinite linear 1s both;
	animation: loop-slide 90s infinite linear 1s both;
}

.c-tagline ul li {
	width: 1100px;
	color: #e60016;
	font-family: 'DM Sans', serif;
	font-size: 150px;
	font-weight: 700;
	line-height: normal;
	text-transform: uppercase;
}

@-webkit-keyframes loop-slide {
	from {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}

	to {
		-webkit-transform: translateX(-100%);
		transform: translateX(-100%);
	}
}

@keyframes loop-slide {
	from {
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}

	to {
		-webkit-transform: translateX(-100%);
		transform: translateX(-100%);
	}
}

.c-tagline-page {
	position: static;
	padding: 90px 0 0;
	background-color: #fff;
}

.c-tagline-page ul li {
	width: 2100px;
	color: rgba(230, 7, 22, 0.08);
	font-size: 175px;
	line-height: 0.75;
	text-transform: none;
}

/* -----------------------------------------------------
 * c-ut-arrow-btn
 * -------------------------------------------------- */

.c-ut-arrow-btn {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 56px;
	height: 56px;
	border-radius: 0.8333333333vw;
	background-color: #e60016;
	transition: background-color 0.2s, -webkit-transform 0.2s ease-in-out;
	transition: background-color 0.2s, transform 0.2s ease-in-out;
	transition: background-color 0.2s, transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
}

.c-ut-arrow-btn span {
	display: inline-block;
	position: relative;
	width: 0.8em;
	height: 0.1em;
	background: currentColor;
	color: #fff;
	line-height: 1;
	vertical-align: middle;
}

.c-ut-arrow-btn span::before {
	content: '';
	position: absolute;
	top: 50%;
	right: -0.05em;
	width: 0.65em;
	height: 0.65em;
	border: 0.15em solid currentColor;
	border-bottom: 0;
	border-left: 0;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transform-origin: top right;
	transform-origin: top right;
}

/* -----------------------------------------------------
 * c-ut-btn
 * -------------------------------------------------- */

.c-ut-btn {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 645px;
	height: 140px;
	padding: 34px 0;
	border-radius: 69.375vw;
	background-color: #e60016;
	color: #fff;
	transition: background-color 0.2s ease-in-out;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none;
	gap: 5px;
	margin-inline: auto;
}

.c-ut-btn:focus,
.c-ut-btn:hover {
	background-color: #061826;
}

.c-ut-btn .en {
	font-family: 'DM Sans', serif;
	font-size: 2.4rem;
	font-weight: 900;
	line-height: 1.0833333333;
	text-transform: uppercase;
}

.c-ut-btn .ja {
	font-size: 2.8rem;
	font-weight: 700;
	line-height: 1.4285714286;
	text-align: center;
}

.c-ut-btn.is-disabled {
	background-color: #b3b9bd !important;
	color: #efefef !important;
	pointer-events: none;
}

/* -----------------------------------------------------
 * p-entry
-------------------------------------------------- */

.p-entry {
	padding: 0 0 40px;
	background-color: #fff;
}

.p-entry .p-entry-inner p {
	padding: 40px 0 0;
	text-align: center;
}

.p-entry .p-entry-inner #zf_div_C_v5_zkRmFemvhjjfXXHlIL94Woz5Y9POMgvrQzIS6k {
	text-align: center;
}

/* -----------------------------------------------------
 * p-header
 * -------------------------------------------------- */

.p-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 22px 0 0;
}

.p-header .p-header-logo {
	pointer-events: auto;
}

.p-header .p-header-logo a {
	display: block;
	overflow: hidden;
	width: 204px;
	height: 0;
	margin: auto;
	padding: 53px 0 0;
	background: transparent url('/recruit/img/common/logo_header_white.svg') no-repeat 0 50%/contain;
	transition: opacity 0.2s, background-image 0.2s ease-in-out;
}

.p-header .p-header-logo a.is-color {
	background-image: url('/recruit/img/common/logo_header.svg');
}

.p-header .p-header-logo a.page-color {
	background-image: url('/recruit/img/common/logo_header.svg');
	transition: none;
}

.p-header .p-header-logo a:focus,
.p-header .p-header-logo a:hover {
	opacity: 0.7;
}

.p-header .p-header-menu {
	display: flex;
	align-items: center;
	gap: 0 24px;
}

.p-header .p-header-menu ul {
	display: flex;
	align-items: center;
	font-size: 1.4rem;
	font-weight: 700;
}

.p-header .p-header-menu ul li {
	margin: 0 32px 0 0;
	padding: 14px 0 14px 14px;
}

.p-header .p-header-menu ul li:last-child {
	margin: 0;
	padding: 0;
}

.p-header .p-header-menu ul .btn .c-btn a {
	width: 156px;
	height: 56px;
	color: #fff;
	text-transform: uppercase;
}

.p-header .p-header-menu ul .btn .c-btn a:focus,
.p-header .p-header-menu ul .btn .c-btn a:hover {
	color: #fff;
}

.p-header .p-header-menu ul a {
	color: #fff;
	transition: color 0.2s ease-in-out;
}

.p-header .p-header-menu ul a:focus,
.p-header .p-header-menu ul a:hover {
	color: #e60016;
}

.p-header .p-header-menu ul a.is-color {
	color: #061826;
}

.p-header .p-header-menu ul a.is-color:focus,
.p-header .p-header-menu ul a.is-color:hover {
	color: #e60016;
}

.p-header .p-header-menu ul a.page-color {
	color: #061826;
	transition: color 0.2s ease-in-out;
}

.p-header .p-header-menu ul a.page-color:hover,
.p-header .p-header-menu ul a.page-color:focus {
	color: #e60016;
}

.p-header .p-header-menu .p-header-btn {
	display: flex;
	z-index: 21;
	justify-content: center;
	align-items: center;
	width: 56px;
	height: 56px;
	border-radius: 0.8333333333vw;
	background-color: #e60016;
	transition: background-color 0.2s ease-in-out;
	pointer-events: auto;
}

.p-header .p-header-menu .p-header-btn:hover {
	background-color: #061826;
}

.is-menu-open .p-header .p-header-menu .p-header-btn {
	background-color: #061826;
}

.p-header .p-header-menu .p-header-btn .p-header-toggle {
	position: relative;
	z-index: 100;
	padding: 0;
	border-width: 0;
	transition: all 0.2s ease-in-out;
	-webkit-appearance: none;
	appearance: none;
}

.p-header .p-header-menu .p-header-btn .p-header-toggle:before {
	content: '';
	position: absolute;
	top: -30px;
	right: -32px;
	bottom: -30px;
	left: -30px;
}

.p-header .p-header-menu .p-header-btn .p-header-toggle .p-toggle-btn {
	position: absolute;
	top: 0;
	left: 50%;
	width: 18px;
	height: 2px;
	background-color: #fff;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.is-menu-open .p-header .p-header-menu .p-header-btn .p-header-toggle .p-toggle-btn {
	background-color: transparent;
}

.p-header .p-header-menu .p-header-btn .p-header-toggle .p-toggle-btn::before,
.p-header .p-header-menu .p-header-btn .p-header-toggle .p-toggle-btn::after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 18px;
	height: 2px;
	background-color: #fff;
	transition: all 0.2s ease-in-out;
}

.p-header .p-header-menu .p-header-btn .p-header-toggle .p-toggle-btn::before {
	-webkit-transform: translate(4px, -7px);
	transform: translate(4px, -7px);
}

.is-menu-open .p-header .p-header-menu .p-header-btn .p-header-toggle .p-toggle-btn::before {
	-webkit-transform: translateY(0) rotate(45deg);
	transform: translateY(0) rotate(45deg);
}

.p-header .p-header-menu .p-header-btn .p-header-toggle .p-toggle-btn::after {
	-webkit-transform: translate(-4px, 7px);
	transform: translate(-4px, 7px);
}

.is-menu-open .p-header .p-header-menu .p-header-btn .p-header-toggle .p-toggle-btn::after {
	-webkit-transform: translateY(0) rotate(-45deg);
	transform: translateY(0) rotate(-45deg);
}

.p-header-nav-wrap {
	display: flex;
	position: fixed;
	z-index: 20;
	top: 0;
	right: 0;
	overflow: auto;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100vh;
	padding: 0 20px;
	background-color: #e60016;
	transition: all 0.3s ease;
	scrollbar-width: none;
}

.p-header-nav-wrap::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100px;
	background-color: #fff;
}

.p-header-nav-wrap .p-header-nav-logo {
	position: absolute;
	top: 22px;
	left: 40px;
}

.p-header-nav-wrap .p-header-nav-logo a {
	display: block;
	overflow: hidden;
	width: 204px;
	height: 0;
	margin: auto;
	padding: 53px 0 0;
	background: transparent url('/recruit/img/common/logo_header.svg') no-repeat 0 50%/contain;
}

.p-header-nav-wrap .p-header-nav {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	pointer-events: auto;
	gap: 30px;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-group {
	padding: 0 0 50px;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-list {
	display: grid;
	grid-template-columns: repeat(2, auto);
	gap: 30px;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-list .p-header-nav-item:nth-of-type(1) {
	grid-column: 1/2;
	grid-row: 1/2;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-list .p-header-nav-item:nth-of-type(2) {
	grid-column: 1/2;
	grid-row: 2/3;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-list .p-header-nav-item:nth-of-type(3) {
	grid-column: 1/2;
	grid-row: 3/4;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-list .p-header-nav-item:nth-of-type(4) {
	grid-column: 2/3;
	grid-row: 1/2;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-list .p-header-nav-item:nth-of-type(5) {
	grid-column: 2/3;
	grid-row: 2/3;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-list .p-header-nav-item:nth-of-type(6) {
	grid-column: 2/3;
	grid-row: 3/4;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-list .p-header-nav-item .item-link {
	color: #fff;
	font-size: 2rem;
	font-weight: 700;
	transition: opacity 0.2s ease-in-out;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-list .p-header-nav-item .item-link:focus,
.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-list .p-header-nav-item .item-link:hover {
	opacity: 0.7;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-sub {
	margin: 5px 0 0;
	font-size: 1.6rem;
	font-weight: 400;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-sub li {
	padding: 0 0 0 1.5em;
	text-indent: -0.5em;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-sub li a {
	color: #fff;
	transition: opacity 0.2s ease-in-out;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-sub li a:focus,
.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-sub li a:hover {
	opacity: 0.7;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-sub > li::before {
	content: '';
	display: inline-block;
	width: 15px;
	height: 1px;
	margin: 0 12px 0 0;
	background: #fff;
	vertical-align: middle;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-cta {
	margin-inline: auto;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-cta .c-btn {
	text-align: center;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-cta .c-btn a {
	width: 340px;
	height: 45px;
	background-color: #fff;
	color: #e60016;
	font-family: 'Roboto', 'Noto Sans JP', serif;
	font-size: 1.4rem;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-cta .c-btn a:focus,
.p-header-nav-wrap .p-header-nav .p-header-nav-cta .c-btn a:hover {
	background-color: #061826;
	color: #fff;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-cta .c-btn a:focus span,
.p-header-nav-wrap .p-header-nav .p-header-nav-cta .c-btn a:hover span {
	color: #fff;
}

.p-header-nav-wrap .p-header-nav .p-header-nav-cta .c-btn a span {
	color: #e60016;
}

/* -----------------------------------------------------
 * p-home-job
 * -------------------------------------------------- */

.p-home-job {
	margin: 120px 0;
}

.p-home-job .p-home-job-head {
	margin: 0 0 20px;
}

.p-home-job .p-home-job-head .p-home-job-inner {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	gap: 85px;
}

.p-home-job .p-home-job-head .p-home-job-inner p {
	font-weight: 500;
	letter-spacing: 0.05em;
}

/* -----------------------------------------------------
 * p-home-ourmessage
 * -------------------------------------------------- */

.p-home-ourmessage {
	position: relative;
	padding: 180px 0 105px;
	background: linear-gradient(to top, #f8f8f2, #fff);
}

.p-home-ourmessage .bg {
	position: absolute;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	transition: -webkit-transform 0.1s ease-out;
	transition: transform 0.1s ease-out;
	transition: transform 0.1s ease-out, -webkit-transform 0.1s ease-out;
	will-change: transform;
}

.p-home-ourmessage .bg01 {
	top: 250px;
	right: calc(50% + 445px);
	width: 450px;
	height: 450px;
	background-image: url(/recruit/img/top/img_ourmessage_01.webp);
}

.p-home-ourmessage .bg02 {
	top: 180px;
	left: calc(50% + 250px);
	width: 470px;
	height: 470px;
	background-image: url(/recruit/img/top/img_ourmessage_02.webp);
}

.p-home-ourmessage .bg03 {
	top: 800px;
	left: calc(50% + 320px);
	width: 258px;
	height: 258px;
	background-image: url(/recruit/img/top/img_ourmessage_03.webp);
}

.p-home-ourmessage .p-home-ourmessage-inner {
	display: flex;
	justify-content: center;
}

.p-home-ourmessage .p-home-ourmessage-inner .p-home-ourmessage-content {
	position: relative;
}

.p-home-ourmessage .p-home-ourmessage-inner .p-home-ourmessage-content h2 {
	position: absolute;
	top: -35px;
	left: -60px;
	color: #e60016;
	font-family: 'DM Sans', serif;
	font-size: 1.3rem;
	font-weight: 900;
	-ms-writing-mode: tb-rl;
	text-transform: uppercase;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
}

.p-home-ourmessage .p-home-ourmessage-inner .p-home-ourmessage-content .p-home-ourmessage-lead {
	font-size: 6.4rem;
	font-weight: 900;
	line-height: 1.203125;
	letter-spacing: -0.03em;
}

.p-home-ourmessage .p-home-ourmessage-inner .p-home-ourmessage-content p {
	display: flex;
	flex-direction: column;
	margin: 60px 0 0;
	font-weight: 700;
	letter-spacing: 0.05em;
	gap: 1em;
}

.p-home-ourmessage .p-home-ourmessage-inner .p-home-ourmessage-content p span {
	display: inline-block;
}

/* -----------------------------------------------------
 * p-interview
-------------------------------------------------- */

.p-interview {
	padding: 120px 0;
	background-color: #e60016;
}

.p-interview .p-interview-wrap .p-interview-head .p-interview-heading {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	align-items: center;
}

.p-interview .p-interview-wrap .p-interview-head .p-interview-heading h2 {
	color: #f8f8f2;
	font-size: 4rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: -0.03em;
}

.p-interview .p-interview-wrap .p-interview-head .p-interview-heading span {
	color: #f8f8f2;
	font-family: 'DM Sans', serif;
	font-size: 15rem;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}

.p-interview .p-interview-wrap .p-interview-head p {
	color: #f8f8f2;
}

.p-interview .p-interview-wrap .p-interview-parts {
	margin: 160px 0 0;
}

.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns {
	display: flex;
	position: relative;
	justify-content: space-between;
}

.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .btn-next,
.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .btn-prev {
	display: flex;
	align-items: center;
	gap: 16px;
}

.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .btn-prev {
	flex-direction: row-reverse;
}

.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .next,
.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .prev {
	display: inline-block;
	color: #f8f8f2;
	font-size: 1.8rem;
	font-weight: 900;
	line-height: 1.4444444444;
	letter-spacing: 0.05em;
}

.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-next,
.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-prev {
	top: auto;
	margin-top: 0;
}

.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-prev,
.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-rtl .swiper-button-next {
	right: auto;
	left: 0;
	-webkit-transform: scale(-1, 1);
	transform: scale(-1, 1);
}

.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-prev:hover,
.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-rtl .swiper-button-next:hover {
	-webkit-transform: scale(-1.2, 1.2);
	transform: scale(-1.2, 1.2);
}

.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-next,
.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-rtl .swiper-button-prev {
	right: 0;
	left: auto;
}

.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-next:hover,
.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-rtl .swiper-button-prev:hover {
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
}

.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-next,
.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-prev {
	cursor: pointer;
	display: flex;
	position: relative;
	z-index: 10;
	top: auto;
	justify-content: center;
	align-items: center;
	width: 56px;
	height: 56px;
	border-radius: 0.8333333333vw;
	color: transparent;
	transition: all 0.2s ease-in-out;
	pointer-events: auto;
}

.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-next:hover,
.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-prev:hover {
	border-radius: 0.8333333333vw;
	background-color: #061826;
}

.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-next:hover:after,
.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-next:hover:after,
.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-prev:hover:after,
.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-prev:hover:after {
	border-color: #061826;
}

.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-next .c-ut-arrow-btn,
.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-prev .c-ut-arrow-btn {
	position: absolute;
	background-color: transparent;
}

.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-next .c-ut-arrow-btn span,
.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-prev .c-ut-arrow-btn span {
	display: inline-block;
	position: relative;
	width: 0.8em;
	height: 0.1em;
	background: currentColor;
	color: #fff;
	line-height: 1;
	vertical-align: middle;
}

.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-next .c-ut-arrow-btn span::before,
.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-prev .c-ut-arrow-btn span::before {
	content: '';
	position: absolute;
	top: 50%;
	right: -0.05em;
	width: 0.65em;
	height: 0.65em;
	border: 0.15em solid currentColor;
	border-bottom: 0;
	border-left: 0;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transform-origin: top right;
	transform-origin: top right;
}

.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-next:after,
.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-prev:after {
	content: '';
	width: 56px;
	height: 56px;
	border: 1px solid #fff;
	border-radius: 0.8333333333vw;
	background-color: currentColor;
	background-size: 56px 56px;
	font-family: 'Roboto', 'Noto Sans JP', serif;
	font-size: none;
	font-variant: initial;
	line-height: 1;
	letter-spacing: 0;
	text-transform: none !important;
}

.p-interview .p-interview-wrap .p-interview-container {
	overflow: hidden;
	margin: -280px 0 0;
	padding: 400px 0 0;
}

.p-interview .p-interview-wrap .p-interview-container .c-slider {
	overflow: visible;
	width: 1440px;
	max-width: 100%;
	height: 560px;
	margin: 0 auto;
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul {
	display: flex;
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul .swiper-slide-active {
	z-index: 1;
	-webkit-transform: scale(1.13);
	transform: scale(1.13);
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul .swiper-slide-active .p-interview-catch {
	visibility: visible;
	opacity: 1;
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li {
	position: relative;
	flex: 0 0 auto;
	width: 320px;
	transition: 0.7s;
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li a {
	display: flex;
	position: relative;
	flex-direction: column-reverse;
	gap: 16px;
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li a:hover .p-interview-body .p-interview-btn .c-ut-arrow-btn {
	background-color: #e60016;
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li a:hover .p-interview-body .p-interview-btn .c-ut-arrow-btn span {
	color: #fff;
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li a:hover figure > img {
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li a .p-interview-category {
	position: absolute;
	top: 0;
	right: -22px;
	color: #f8f8f2;
	font-family: 'DM Sans', serif;
	font-size: 1.4rem;
	font-weight: 900;
	line-height: 1.2857142857;
	white-space: nowrap;
	-ms-writing-mode: tb-rl;
	text-transform: uppercase;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li a .p-interview-body {
	position: relative;
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li a .p-interview-body .p-interview-type {
	text-align: center;
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li a .p-interview-body .p-interview-type .name {
	color: #f8f8f2;
	font-size: 3.2rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.05em;
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li a .p-interview-body .p-interview-type .name .san {
	font-size: 1.4rem;
	font-weight: 500;
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li a .p-interview-body .p-interview-type .txt {
	margin: 8px 0 0;
	color: #f8f8f2;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.4444444444;
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li a .p-interview-body .p-interview-btn {
	position: absolute;
	z-index: 1;
	right: 24px;
	bottom: 120px;
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li a .p-interview-body .p-interview-btn .c-ut-arrow-btn {
	background-color: #fff;
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li a .p-interview-body .p-interview-btn .c-ut-arrow-btn span {
	color: #e60016;
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li a figure {
	display: flex;
	overflow: hidden;
	align-items: center;
	height: 400px;
	border-radius: 0.8333333333vw;
	text-align: center;
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li a figure img {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 0.8333333333vw;
	transition: all 0.2s ease-in-out;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li .p-interview-catch {
	visibility: hidden;
	position: absolute;
	top: -215px;
	left: auto;
	width: 680px;
	max-width: 680px;
	opacity: 0;
	transition: opacity 0.5s, visibility 0.5s;
	-webkit-transform: translateX(-25%);
	transform: translateX(-25%);
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li .p-interview-catch .fukidashi {
	position: relative;
	width: 680px;
	max-width: 680px;
	padding: 24px 45px;
	border-radius: 6.875vw;
	background-color: #f8f8f2;
	-webkit-transform: rotate(-4deg);
	transform: rotate(-4deg);
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li .p-interview-catch .fukidashi::before {
	content: '';
	position: absolute;
	top: -60px;
	right: -70px;
	width: 136px;
	height: 56px;
	background-color: transparent;
	background-image: url(/recruit/img/common/txt_interview.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	animation: floating-y 0.8s ease-in-out infinite alternate-reverse;
}

@-webkit-keyframes floating-y {
	0% {
		-webkit-transform: translateY(-10%) rotate(24deg);
		transform: translateY(-10%) rotate(24deg);
	}

	100% {
		-webkit-transform: translateY(10%) rotate(24deg);
		transform: translateY(10%) rotate(24deg);
	}
}

@keyframes floating-y {
	0% {
		-webkit-transform: translateY(-10%) rotate(24deg);
		transform: translateY(-10%) rotate(24deg);
	}

	100% {
		-webkit-transform: translateY(10%) rotate(24deg);
		transform: translateY(10%) rotate(24deg);
	}
}

@-webkit-keyframes floating-y-sp {
	0% {
		-webkit-transform: translateY(-10%) rotate(-8deg);
		transform: translateY(-10%) rotate(-8deg);
	}

	100% {
		-webkit-transform: translateY(10%) rotate(-8deg);
		transform: translateY(10%) rotate(-8deg);
	}
}

@keyframes floating-y-sp {
	0% {
		-webkit-transform: translateY(-10%) rotate(-8deg);
		transform: translateY(-10%) rotate(-8deg);
	}

	100% {
		-webkit-transform: translateY(10%) rotate(-8deg);
		transform: translateY(10%) rotate(-8deg);
	}
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li .p-interview-catch .fukidashi::after {
	content: '';
	position: absolute;
	bottom: -45px;
	left: 50%;
	width: 24px;
	height: 58px;
	border-radius: 6.875vw;
	background-color: #f8f8f2;
	-webkit-transform: translateX(-50%) rotate(4deg);
	transform: translateX(-50%) rotate(4deg);
}

.p-interview .p-interview-wrap .p-interview-container .c-slider ul li .p-interview-catch .fukidashi .comment {
	position: relative;
	z-index: 1;
	color: #e60016;
	font-size: 3.2rem;
	font-weight: 900;
	line-height: 1.5;
	text-align: center;
}

/* -----------------------------------------------------
 * p-kv
 * -------------------------------------------------- */

.p-kv {
	position: relative;
	overflow: hidden;
}

.p-kv .p-kv-container {
	position: relative;
}

.p-kv .p-kv-container::before,
.p-kv .p-kv-container::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.p-kv .p-kv-container::before {
	z-index: 2;
	width: 100%;
	height: 366px;
	background: linear-gradient(to top, rgb(255, 255, 255) 0%, rgba(255, 255, 255, 0) 100%);
}

.p-kv .p-kv-container::after {
	z-index: 2;
	width: 1200px;
	height: 225px;
	background-color: transparent;
	background-image: url(/recruit/img/top/txt_kv_pc.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

.p-kv .p-kv-container .c-slider .c-slider-inner {
	position: relative;
	width: 100%;
	height: 836px;
	margin-inline: auto;
}

.p-kv .p-kv-container .c-slider .swiper-wrapper {
	width: 100%;
}

.p-kv .p-kv-container .c-slider .c-slider-list {
	height: 100%;
}

.p-kv .p-kv-container .c-slider .c-slider-list .swiper-slide {
	position: relative;
}

.p-kv .p-kv-container .c-slider .c-slider-list .slide_img {
	display: block;
	width: 100vw;
	height: 836px;
}

.p-kv .p-kv-container .c-slider .c-slider-list .slide_img img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
}

@-webkit-keyframes zoomUp {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}

	100% {
		-webkit-transform: scale(1.15);
		transform: scale(1.15);
	}
}

@keyframes zoomUp {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}

	100% {
		-webkit-transform: scale(1.15);
		transform: scale(1.15);
	}
}

.p-kv .p-kv-container .c-slider .c-slider-list .swiper-slide-active .slide_img,
.p-kv .p-kv-container .c-slider .c-slider-list .swiper-slide-duplicate-active .slide_img,
.p-kv .p-kv-container .c-slider .c-slider-list .swiper-slide-prev .slide_img {
	-webkit-animation: zoomUp 10s linear 0s normal both;
	animation: zoomUp 10s linear 0s normal both;
}

.p-kv .p-kv-container .swiper-pagination-vertical.swiper-pagination-bullets,
.p-kv .p-kv-container .swiper-vertical > .swiper-pagination-bullets {
	top: 50%;
	right: 4.1666666667vw;
	left: auto;
	-webkit-transform: translate3d(0px, 0, 0);
	transform: translate3d(0px, 0, 0);
}

.p-kv .p-kv-container .swiper-pagination-bullet {
	width: 8px;
	height: 8px;
	background-color: rgba(255, 255, 255, 0.5);
	opacity: 1;
}

.p-kv .p-kv-container .swiper-pagination-bullet:focus {
	outline: none;
}

.p-kv .p-kv-container .swiper-pagination-bullet-active {
	background-color: #fff;
}

.p-kv .p-kv-scroll {
	position: absolute;
	z-index: 3;
	right: 4.1666666667vw;
	bottom: 120px;
}

.p-kv .p-kv-scroll span {
	margin: 0 0 14px;
	color: #e60016;
	font-family: 'DM Sans', serif;
	font-size: 1rem;
	font-weight: 900;
	-ms-writing-mode: tb-rl;
	text-transform: uppercase;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
}

.p-kv .p-kv-scroll::before {
	content: '';
	position: absolute;
	right: 0;
	bottom: -120px;
	left: 0;
	width: 1px;
	height: 120px;
	margin: auto;
	background-color: #e60016;
	-webkit-animation: scroll 2s infinite;
	animation: scroll 2s infinite;
}

@-webkit-keyframes scroll {
	0% {
		-webkit-transform: scale(1, 0);
		transform: scale(1, 0);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
	}

	50% {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
	}

	51% {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: 0 100%;
		transform-origin: 0 100%;
	}

	100% {
		-webkit-transform: scale(1, 0);
		transform: scale(1, 0);
		-webkit-transform-origin: 0 100%;
		transform-origin: 0 100%;
	}
}

@keyframes scroll {
	0% {
		-webkit-transform: scale(1, 0);
		transform: scale(1, 0);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
	}

	50% {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: 0 0;
		transform-origin: 0 0;
	}

	51% {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1);
		-webkit-transform-origin: 0 100%;
		transform-origin: 0 100%;
	}

	100% {
		-webkit-transform: scale(1, 0);
		transform: scale(1, 0);
		-webkit-transform-origin: 0 100%;
		transform-origin: 0 100%;
	}
}

/* -----------------------------------------------------
 * p-page-benefit
-------------------------------------------------- */

.p-page-benefit {
	padding: 24px 0 30px;
	background: linear-gradient(180deg, #fff 0, #fff 25%, #f8f8f2 25%, #f8f8f2 100%);
}

.p-page-benefit .p-page-benefit-head {
	display: grid;
	padding: 0 80px 65px;
	border-radius: 0.8333333333vw;
	background-color: #fff;
	grid-template-rows: repeat(1fr auto);
}

.p-page-benefit .p-page-benefit-head .c-heading-col {
	position: relative;
	z-index: 1;
	grid-column: 1/2;
	grid-row: 1/3;
}

.p-page-benefit .p-page-benefit-head .p-page-benefit-wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	grid-column: 1/2;
	grid-row: 2/5;
}

.p-page-benefit .p-page-benefit-head .p-page-benefit-wrap .p-page-benefit-body h3 {
	font-size: 4rem;
	font-weight: 900;
	line-height: 1.325;
	letter-spacing: 0.05em;
}

.p-page-benefit .p-page-benefit-head .p-page-benefit-wrap .p-page-benefit-body p {
	margin: 30px 0 0;
	letter-spacing: 0.075em;
}

.p-page-benefit .p-page-benefit-head .p-page-benefit-wrap figure {
	display: block;
	flex: 0 0 56.6666666667%;
	margin: 0 60px 0 0;
}

.p-page-benefit .p-page-benefit-head .p-page-benefit-wrap figure img {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 0.8333333333vw;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
}

.p-page-benefit .u-skew {
	overflow: hidden;
	-webkit-transform: skewY(-7deg);
	transform: skewY(-7deg);
}

.p-page-benefit .p-page-benefit-content {
	max-width: 1020px;
	margin: auto;
}

.p-page-benefit .p-page-benefit-content .p-page-benefit-list {
	display: grid;
	padding: 80px 0;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: repeat(2, 1fr);
	gap: 60px;
}

.p-page-benefit .p-page-benefit-content .p-page-benefit-list .p-page-benefit-item {
	overflow: hidden;
	max-width: 480px;
	border: 2px solid #e60016;
	border-radius: 0.8333333333vw;
	background-color: #e60016;
	-webkit-transform: skewY(7deg);
	transform: skewY(7deg);
}

.p-page-benefit .p-page-benefit-content .p-page-benefit-list .p-page-benefit-item .icon {
	display: flex;
	justify-content: center;
	align-items: center;
	width: auto;
	height: 230px;
	background-color: #fff;
	text-align: center;
}

.p-page-benefit .p-page-benefit-content .p-page-benefit-list .p-page-benefit-item .icon::after {
	content: '';
	margin: 0 0 35px;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

.p-page-benefit .p-page-benefit-content .p-page-benefit-list .p-page-benefit-item:nth-of-type(1) .icon::after {
	width: 144px;
	height: 115px;
	background-image: url(/recruit/img/environment/ico_benefit_01.webp);
}

.p-page-benefit .p-page-benefit-content .p-page-benefit-list .p-page-benefit-item:nth-of-type(2) .icon::after {
	width: 160px;
	height: 135px;
	background-image: url(/recruit/img/environment/ico_benefit_02.webp);
}

.p-page-benefit .p-page-benefit-content .p-page-benefit-list .p-page-benefit-item:nth-of-type(3) .icon::after {
	width: 120px;
	height: 115px;
	background-image: url(/recruit/img/environment/ico_benefit_03.webp);
}

.p-page-benefit .p-page-benefit-content .p-page-benefit-list .p-page-benefit-item:nth-of-type(4) .icon::after {
	width: 130px;
	height: 120px;
	background-image: url(/recruit/img/environment/ico_benefit_04.webp);
}

.p-page-benefit .p-page-benefit-content .p-page-benefit-list .p-page-benefit-item .exp {
	width: 100%;
	margin: -30px 0 0;
	background-color: #e60016;
	color: #fff;
	line-height: 1.625;
	text-align: center;
}

.p-page-benefit .p-page-benefit-content .p-page-benefit-list .p-page-benefit-item .exp .u-skew-inner {
	padding: 35px 35px 20px;
	-webkit-transform: skewY(7deg);
	transform: skewY(7deg);
}

.p-page-benefit .p-page-benefit-content .p-page-benefit-list .p-page-benefit-item .exp .u-skew-inner h4 {
	padding: 0 0 20px;
	border-bottom: 1px solid #fff;
	font-size: 2.6rem;
	font-weight: 700;
	line-height: 1.5384615385;
}

.p-page-benefit .p-page-benefit-content .p-page-benefit-list .p-page-benefit-item .exp .u-skew-inner ul {
	padding: 20px 0 0;
}

.p-page-benefit .p-page-benefit-content .p-page-benefit-list .p-page-benefit-item .exp .u-skew-inner ul li {
	font-weight: 500;
}

.p-page-benefit .p-page-benefit-content .p-page-benefit-list .p-page-benefit-item .exp .u-skew-inner p {
	padding: 20px 0 0;
	font-weight: 500;
}

/* -----------------------------------------------------
 * p-page-education
 * -------------------------------------------------- */

.p-page-education {
	background: linear-gradient(180deg, #f8f8f2 0, #f8f8f2 2%, #fff 2%, #fff 100%);
}

.p-page-education .p-page-education-inner .p-page-skillup {
	margin: 60px 0 100px;
	background-color: #fff;
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-heading span {
	color: #e60016;
	font-family: 'DM Sans', serif;
	font-size: 3rem;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-heading h2 {
	font-size: 4rem;
	font-weight: 900;
	line-height: 1.475;
	letter-spacing: -0.03em;
}

.p-page-education .p-page-education-inner .p-page-skillup p {
	margin: 40px 0 0;
	line-height: 1.875;
	letter-spacing: 0.075em;
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table {
	margin: 70px 0 0;
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table {
	table-layout: fixed;
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
	min-width: 1200px;
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr:first-child td {
	height: 35px;
	border-bottom: none;
	background-color: #ebebeb;
	-webkit-clip-path: polygon(50% 0, 100% 100%, 0 100%);
	clip-path: polygon(50% 0, 100% 100%, 0 100%);
	aspect-ratio: 2;
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr:first-child .null {
	height: 35px;
	background-color: transparent;
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr:nth-child(2) td {
	border-top: none;
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr:nth-child(2) .position {
	background-color: #000;
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr:nth-child(3) td {
	background-color: rgba(235, 235, 235, 0.8);
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr:nth-child(3) .position {
	background-color: rgba(0, 0, 0, 0.8);
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr:nth-child(4) td {
	background-color: rgba(235, 235, 235, 0.6);
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr:nth-child(4) .position {
	background-color: rgba(0, 0, 0, 0.6);
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr:nth-child(5) td {
	background-color: rgba(235, 235, 235, 0.4);
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr:nth-child(5) .position {
	background-color: rgba(0, 0, 0, 0.4);
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr th,
.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr td {
	height: 96px;
	padding: 10px;
	border: 1px solid #fff;
	font-size: 2rem;
	text-align: center;
	vertical-align: middle;
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr th {
	font-weight: 700;
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr td {
	width: 340px;
	background-color: #ebebeb;
	font-weight: 500;
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr .position {
	width: 170px;
	min-width: 170px;
	max-width: 170px;
	color: #fff;
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr .type {
	background-color: #e60016;
	color: #fff;
}

.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr .null {
	background-color: transparent;
}

.p-page-education .p-page-careerplan {
	padding: 80px 0;
	background-color: #f8f8f2;
}

.p-page-education .p-page-skill {
	padding: 0 0 120px;
	background: linear-gradient(180deg, #fff 0, #fff 8%, #e60016 8%, #e60016 100%);
}

.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}

.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-head .p-page-skill-body {
	flex: 0 0 44.5833333333%;
}

.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-head .p-page-skill-body .p-page-skill-heading {
	color: #fff;
}

.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-head .p-page-skill-body .p-page-skill-heading span {
	font-family: 'DM Sans', serif;
	font-size: 3rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-head .p-page-skill-body .p-page-skill-heading h2 {
	font-size: 4rem;
	font-weight: 900;
	line-height: 1.475;
	letter-spacing: -0.03em;
}

.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-head .p-page-skill-body p {
	margin: 40px 0 0;
	color: #fff;
	letter-spacing: 0.1em;
}

.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-head .p-page-skill-wrap {
	flex: 0 0 45.8333333333vw;
	margin: 0 calc(50% - 50vw) 0 0;
}

.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-head .p-page-skill-wrap figure {
	overflow: hidden;
	height: 100%;
	max-height: 480px;
	border-radius: 0.8333333333vw 0 0 0.8333333333vw;
}

.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-head .p-page-skill-wrap figure img {
	display: block;
	width: 100%;
	border-radius: 0.8333333333vw 0 0 0.8333333333vw;
}

.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-list {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	margin: 64px 0 0;
	gap: 40px;
}

.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-list li {
	display: flex;
	flex: 0 0 40%;
	flex-direction: column-reverse;
	max-width: 480px;
	color: #fff;
	gap: 24px;
}

.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-list li .body h3 {
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1;
	text-align: center;
}

.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-list li .body h3 span {
	font-size: 1.8rem;
}

.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-list li .body p {
	margin: 24px 0 0;
	line-height: 1.625;
}

.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-list li figure img {
	display: block;
	border-radius: 0.8333333333vw;
}

.p-page-education .p-page-educationplan {
	padding: 0 0 120px;
	background: linear-gradient(180deg, #e60016 0, #e60016 8%, #fff 8%, #fff 100%);
}

.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-head {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	align-items: flex-end;
}

.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-head .p-page-educationplan-body {
	flex: 0 0 44.5833333333%;
}

.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-head .p-page-educationplan-body .p-page-educationplan-heading span {
	color: #e60016;
	font-family: 'DM Sans', serif;
	font-size: 3rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-head .p-page-educationplan-body .p-page-educationplan-heading h2 {
	font-size: 4rem;
	font-weight: 900;
	line-height: 1.475;
	letter-spacing: -0.03em;
}

.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-head .p-page-educationplan-body .p-page-educationplan-heading h2 span {
	display: block;
	color: #061826;
	font-family: 'Roboto', 'Noto Sans JP', serif;
}

.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-head .p-page-educationplan-body p {
	margin: 40px 0 0;
	letter-spacing: 0.1em;
}

.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-head .p-page-educationplan-wrap {
	flex: 0 0 45.8333333333vw;
	margin: 0 0 0 calc(50% - 50vw);
}

.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-head .p-page-educationplan-wrap figure {
	overflow: hidden;
	height: 100%;
	max-height: 480px;
	border-radius: 0 0.8333333333vw 0.8333333333vw 0;
}

.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-head .p-page-educationplan-wrap figure img {
	display: block;
	width: 100%;
	border-radius: 0 0.8333333333vw 0.8333333333vw 0;
}

.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-list {
	display: grid;
	margin: 64px 0 0;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-list li {
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: repeat(3, auto);
	gap: 24px;
}

.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-list li h3 {
	color: #e60016;
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	grid-column: 1/2;
	grid-row: 2/3;
}

.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-list li h3 span {
	font-size: 1.8rem;
}

.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-list li p {
	line-height: 1.625;
	grid-column: 1/2;
	grid-row: 3/4;
}

.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-list li figure {
	grid-column: 1/2;
	grid-row: 1/2;
}

.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-list li figure img {
	display: block;
	border-radius: 0.8333333333vw;
}

/* -----------------------------------------------------
 * p-page-interview
 * -------------------------------------------------- */

.p-page-interview {
	padding: 120px 0 0;
	background-color: #fff;
}

.p-page-interview .p-page-interview-inner .p-page-interview-head-wrap {
	margin: 0 calc(50% - 50vw) 0 calc(50% - 50vw);
	padding: 0 calc(50vw - 50%) 65px calc(50vw - 50%);
	background: linear-gradient(180deg, #fff 0, #fff 30%, #f8f8f2 30%, #f8f8f2 100%);
}

.p-page-interview .p-page-interview-inner .p-page-interview-head-wrap .p-page-interview-head {
	display: grid;
	grid-template-rows: auto 1fr;
}

.p-page-interview .p-page-interview-inner .p-page-interview-head-wrap .p-page-interview-head .p-page-interview-heading {
	display: flex;
	position: relative;
	z-index: 1;
	flex-direction: column;
	max-width: 1000px;
	padding: 60px 65px;
	border-radius: 0.8333333333vw;
	background-color: #fff;
	grid-column: 1/2;
	grid-row: 4/6;
	gap: 30px;
}

.p-page-interview .p-page-interview-inner .p-page-interview-head-wrap .p-page-interview-head .p-page-interview-heading h3 {
	color: #e60016;
	font-size: 5rem;
	font-weight: 900;
	line-height: 1.5;
}

.p-page-interview .p-page-interview-inner .p-page-interview-head-wrap .p-page-interview-head .p-page-interview-heading .profile {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.4444444444;
}

.p-page-interview .p-page-interview-inner .p-page-interview-head-wrap .p-page-interview-head .p-page-interview-heading .profile span {
	display: inline-block;
	margin: 0 1.33em;
	padding: 0 1.33em;
	border-right: 1px solid #061826;
	border-left: 1px solid #061826;
}

.p-page-interview .p-page-interview-inner .p-page-interview-head-wrap .p-page-interview-head figure {
	grid-column: 1/2;
	grid-row: 1/5;
}

.p-page-interview .p-page-interview-inner .p-page-interview-head-wrap .p-page-interview-head figure img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 200px;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: top center;
	object-position: top center;
}

.p-page-interview .p-page-interview-inner .p-page-interview-mov {
	position: relative;
	margin: 110px 0 0;
	text-align: center;
	-o-object-fit: cover;
	object-fit: cover;
}

.p-page-interview .p-page-interview-inner .p-page-interview-mov::after {
	content: '';
	position: absolute;
	z-index: 2;
	top: 0;
	left: 50%;
	width: 716px;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.6);
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.p-page-interview .p-page-interview-inner .p-page-interview-mov.is-active::after {
	display: none;
}

.p-page-interview .p-page-interview-inner .p-page-interview-mov .p-page-interview-video {
	cursor: pointer;
	display: block;
	z-index: 1;
	width: 716px;
	margin: 0 auto;
	box-shadow: 20px 20px 0 #e60016;
	aspect-ratio: 16/9;
	-o-object-fit: cover;
	object-fit: cover;
}

.p-page-interview .p-page-interview-inner .p-page-interview-mov .p-page-interview-play {
	cursor: pointer;
	display: block;
	position: absolute;
	z-index: 3;
	top: 45%;
	left: 50%;
	width: 540px;
	height: 62px;
	transition: opacity 0.2s ease-in-out;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.p-page-interview .p-page-interview-inner .p-page-interview-mov .p-page-interview-play:focus,
.p-page-interview .p-page-interview-inner .p-page-interview-mov .p-page-interview-play:hover {
	opacity: 0.7;
}

.p-page-interview .p-page-interview-inner .p-page-interview-mov .p-page-interview-play.is-active {
	display: none;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content {
	margin: 110px 0 0;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box:not(:first-child) {
	margin: 150px 0 0;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box .p-page-interview-catch {
	position: relative;
	z-index: 1;
	font-size: 4.2rem;
	font-weight: 900;
	line-height: 1.7857142857;
	letter-spacing: 0.075em;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box .p-page-interview-catch .c-marker {
	display: inline-block;
	padding: 0 0.5em;
	background: linear-gradient(transparent 0%, rgb(230, 0, 22) 0%);
	background-repeat: no-repeat;
	background-size: 0 100%;
	transition: background-size 0.5s;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box .p-page-interview-catch .c-marker:not(:first-child) {
	margin: 10px 0 0;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box .p-page-interview-catch .c-marker.on {
	background-size: 100% 100%;
	color: #fff;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box .p-page-interview-body {
	margin: 50px 0 0;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box .p-page-interview-body ul {
	display: flex;
	flex-direction: column;
	gap: 48px;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box .p-page-interview-body ul li {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box .p-page-interview-body ul li .question {
	position: relative;
	padding: 0 0 0 2em;
	color: #e60016;
	font-weight: 700;
	letter-spacing: 0.075em;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box .p-page-interview-body ul li .question::before {
	content: 'Q';
	position: absolute;
	top: 0;
	left: 0;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.3333333333;
	letter-spacing: 0.075em;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box .p-page-interview-body ul li .answer {
	padding: 0 0 0 2em;
	letter-spacing: 0.075em;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box .p-page-interview-body .p-page-interview-wrap figure img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 200px;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: top center;
	object-position: top center;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content .box-01 .p-page-interview-body,
.p-page-interview .p-page-interview-inner .p-page-interview-content .box-02 .p-page-interview-body {
	display: flex;
	justify-content: space-between;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content .box-01 .p-page-interview-body ul,
.p-page-interview .p-page-interview-inner .p-page-interview-content .box-02 .p-page-interview-body ul {
	flex: 0 0 50%;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content .box-01 .p-page-interview-body .p-page-interview-wrap,
.p-page-interview .p-page-interview-inner .p-page-interview-content .box-02 .p-page-interview-body .p-page-interview-wrap {
	flex: 0 0 45.8333333333vw;
	margin: 0 calc(50% - 50vw) 0 0;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content .box-01 .p-page-interview-body .p-page-interview-wrap figure,
.p-page-interview .p-page-interview-inner .p-page-interview-content .box-02 .p-page-interview-body .p-page-interview-wrap figure {
	overflow: hidden;
	height: 100%;
	max-height: 400px;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content .box-01 .p-page-interview-body .p-page-interview-wrap figure img,
.p-page-interview .p-page-interview-inner .p-page-interview-content .box-02 .p-page-interview-body .p-page-interview-wrap figure img {
	display: block;
	width: 100%;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content .box-02 .p-page-interview-wrap {
	display: flex;
	flex-direction: column;
	gap: 48px;
}

.p-page-interview .p-page-interview-inner .p-page-interview-content .box-03 .p-page-interview-body {
	display: flex;
	flex-direction: column;
}

/* -----------------------------------------------------
 * p-page-jobfair
-------------------------------------------------- */

.p-page-jobfair {
	position: relative;
	width: 100%;
	margin: 220px 0 0;
	background-color: rgba(248, 248, 242, 0.88);
	background-image: url(/recruit/img/recruit/img_jobfair_pc.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	background-blend-mode: lighten;
}

.p-page-jobfair .p-page-jobfair-heading {
	position: absolute;
	top: -90px;
	left: 50%;
	width: 100%;
	color: #e60016;
	font-family: 'DM Sans', serif;
	font-size: 19rem;
	font-weight: 900;
	line-height: 1;
	text-align: center;
	text-transform: uppercase;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.p-page-jobfair .p-page-jobfair-content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 150px 0;
}

.p-page-jobfair .p-page-jobfair-content h2 {
	font-size: 4rem;
	font-weight: 900;
	line-height: 1.1;
	letter-spacing: 0.05em;
}

.p-page-jobfair .p-page-jobfair-content p {
	margin: 30px 0 0;
	font-size: 1.8rem;
	line-height: 2.1111111111;
	text-align: center;
}

.p-page-jobfair .p-page-jobfair-content .p-page-jobfair-btn {
	margin: 65px 0 0;
}

.p-page-jobfair .c-cta {
	background-color: transparent;
}

/* -----------------------------------------------------
 * p-page-jobtype
-------------------------------------------------- */

.p-page-jobtype {
	padding: 80px 0 0;
	background: linear-gradient(180deg, #fff 0, #fff 25%, #f8f8f2 25%, #f8f8f2 100%);
}

.p-page-jobtype .p-page-jobtype-inner {
	margin: 0 auto 40px;
}

.p-page-jobtype .p-page-jobtype-inner p {
	margin: 0 0 80px;
	font-size: 2rem;
	line-height: 2.1;
}

/* -----------------------------------------------------
 * p-page-numbers
-------------------------------------------------- */

.p-page-numbers {
	padding: 24px 0 120px;
	background-color: #fff;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 5px;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-head p {
	white-space: nowrap;
	letter-spacing: 0.075em;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content {
	display: flex;
	flex-direction: column;
	margin: 60px 0 0;
	gap: 20px;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid:nth-of-type(1) {
	grid-template-rows: 1fr 1fr;
	gap: 10px 20px;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid:nth-of-type(2) {
	gap: 20px;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 {
	overflow: hidden;
	width: 100%;
	grid-column: 1/3;
	grid-row: 1/3;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group::after {
	top: 24px;
	right: 24px;
	width: 162px;
	height: 142px;
	background-image: url(/recruit/img/numbers/fig_numbers_01.webp);
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box {
	position: relative;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box p {
	text-align: center;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap {
	margin: 65px 0 0 75px;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration {
	position: relative;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration::before,
.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration::after {
	content: '';
	position: absolute;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration::before {
	top: -40px;
	left: 55%;
	width: 390px;
	height: 120px;
	background-image: url(/recruit/img/numbers/graph_numbers_01_02.webp);
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration::after {
	bottom: 75px;
	left: -75px;
	width: 56px;
	height: 277px;
	background-image: url(/recruit/img/numbers/graph_numbers_01_01.webp);
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph {
	display: flex;
	position: relative;
	justify-content: center;
	align-items: flex-end;
	gap: 0 23px;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph::before,
.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph::after {
	content: '';
	position: absolute;
	background-color: #ddd;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph::before {
	bottom: 75px;
	left: 0;
	width: 3px;
	height: 260px;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph::after {
	bottom: 75px;
	left: 0;
	width: 100%;
	height: 3px;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el .p-page-numbers-number {
	color: #061826;
	font-size: clamp(1px, 2.4305555556vw, 35px);
	font-weight: 700;
	line-height: 2;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el .label {
	position: relative;
	min-width: 2em;
	font-family: 'Roboto Mono', serif;
	font-size: clamp(1px, 2.6388888889vw, 38px);
	font-weight: 700;
	letter-spacing: -0.08em;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el .label span {
	font-family: 'Roboto', 'Noto Sans JP', serif;
	font-size: clamp(1px, 1.3888888889vw, 20px);
	font-weight: 700;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .bar {
	overflow: hidden;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .bar span {
	display: block;
	width: clamp(1px, 5.5555555556vw, 80px);
	border-radius: 0.5555555556vw 0.5555555556vw 0 0;
	background-color: #ddd;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .bar .graph-in-y {
	opacity: 0;
	transition-duration: 0.8s;
	transition-property: opacity, -webkit-transform;
	transition-property: opacity, transform;
	transition-property: opacity, transform, -webkit-transform;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .bar .fade-graph-y {
	-webkit-transform: translateY(100%);
	transform: translateY(100%);
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .bar .scroll-graph-y {
	opacity: 1;
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el-01 .bar span {
	height: 3.8888888889vw;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el-02 .bar span {
	height: 3.6805555556vw;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el-03 .bar span {
	height: 6.9444444444vw;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el-04 .p-page-numbers-number {
	color: #e60016;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el-04 .bar span {
	height: 10.4166666667vw;
	background-color: #e60016;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el-04 .label {
	color: #e60016;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el-05 .p-page-numbers-number {
	color: #e60016;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el-05 .bar span {
	height: 15.7638888889vw;
	background-color: #e60016;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el-05 .label {
	color: #e60016;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .results {
	display: flex;
	position: absolute;
	top: -40px;
	left: 50%;
	align-items: flex-end;
	color: #e60016;
	font-family: 'Roboto Mono', serif;
	font-size: clamp(1px, 4.5138888889vw, 65px);
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.08em;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	gap: 5px;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .results .unit {
	margin: 0 0 5px 0;
	color: #e60016;
	font-family: 'Roboto', 'Noto Sans JP', serif;
	font-size: 2.5rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: normal;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-02 {
	grid-column: 3/4;
	grid-row: 1/2;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-02 .p-page-numbers-group::after {
	top: 52px;
	right: 44px;
	width: 88px;
	height: 106px;
	background-image: url(/recruit/img/numbers/fig_numbers_02.webp);
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-03 {
	grid-column: 3/4;
	grid-row: 2/3;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-03 .p-page-numbers-group::after {
	bottom: 30px;
	left: 30px;
	width: 112px;
	height: 133px;
	background-image: url(/recruit/img/numbers/fig_numbers_03.webp);
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-04 .p-page-numbers-group::after {
	right: 20px;
	bottom: 30px;
	width: 117px;
	height: 128px;
	background-image: url(/recruit/img/numbers/fig_numbers_04.webp);
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-05 .p-page-numbers-group::after {
	right: 30px;
	bottom: 40px;
	width: 157px;
	height: 88px;
	background-image: url(/recruit/img/numbers/fig_numbers_05.webp);
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-06 .p-page-numbers-group::after {
	right: 30px;
	bottom: 20px;
	width: 115px;
	height: 137px;
	background-image: url(/recruit/img/numbers/fig_numbers_06.webp);
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .p-page-numbers-item {
	display: flex;
	position: relative;
	justify-content: center;
	align-items: center;
	min-height: 300px;
	padding: 26px 0 45px;
	background-color: #f8f8f2;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .p-page-numbers-item::before,
.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .p-page-numbers-item::after {
	content: '';
	position: absolute;
	z-index: 2;
	width: 51px;
	height: 49px;
	background-color: transparent;
	background-image: url(/recruit/img/common/bg_numbers.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .p-page-numbers-item::before {
	top: 0;
	left: 0;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .p-page-numbers-item::after {
	right: 0;
	bottom: 0;
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .p-page-numbers-item .p-page-numbers-group::after {
	content: '';
	position: absolute;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .p-page-numbers-item .p-page-numbers-group .p-page-numbers-box {
	display: flex;
	position: relative;
	z-index: 1;
	flex-direction: column;
	align-items: center;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .p-page-numbers-item .p-page-numbers-group .p-page-numbers-box .p-page-numbers-title {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .p-page-numbers-item .p-page-numbers-group .p-page-numbers-box .p-page-numbers-title span {
	color: #e60016;
	font-family: 'DM Sans', serif;
	font-size: 1.8rem;
	font-weight: 900;
	line-height: 1.3333333333;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .p-page-numbers-item .p-page-numbers-group .p-page-numbers-box .p-page-numbers-title h3 {
	font-size: 2.6rem;
	font-weight: 900;
	line-height: 2.1538461538;
	letter-spacing: 0.05em;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .p-page-numbers-item .p-page-numbers-group .p-page-numbers-box p {
	font-size: 1.4rem;
	line-height: 1.4285714286;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .p-page-numbers-item .p-page-numbers-group .p-page-numbers-box .p-page-numbers-number {
	display: flex;
	align-items: flex-end;
	color: #e60016;
	font-family: 'Roboto Mono', serif;
	font-size: 12rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.08em;
	gap: 5px;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .p-page-numbers-item .p-page-numbers-group .p-page-numbers-box .p-page-numbers-number .small {
	font-size: 7rem;
	line-height: 1.3142857143;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .p-page-numbers-item .p-page-numbers-group .p-page-numbers-box .p-page-numbers-number .unit {
	margin: 0 0 0 8px;
	color: #061826;
	font-family: 'Roboto', 'Noto Sans JP', serif;
	font-size: 3.6rem;
	font-weight: 700;
	line-height: 1.5555555556;
	letter-spacing: normal;
}

.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-note {
	text-align: right;
	letter-spacing: 0.05em;
}

/* -----------------------------------------------------
 * p-page-philosophy
 * -------------------------------------------------- */

.p-page-philosophy {
	padding: 80px 0 110px;
}

.p-page-philosophy .p-page-philosophy-wrap .p-page-philosophy-bg {
	margin: 0 calc(50% - 50vw) 0 0;
	padding: 0 calc(50vw - 50%) 0 0;
	border-radius: 0.8333333333vw 0 0 0.8333333333vw;
	background-color: #fff;
}

.p-page-philosophy .p-page-philosophy-wrap .p-page-philosophy-bg .p-page-philosophy-content {
	display: flex;
	justify-content: space-between;
	margin: 110px 0 0;
	padding: 0 0 70px 80px;
}

.p-page-philosophy .p-page-philosophy-wrap .p-page-philosophy-bg .p-page-philosophy-content .p-page-philosophy-list {
	display: flex;
	flex: 0 0 54.0540540541%;
	flex-direction: column;
	margin: -70px 0 0;
	gap: 80px;
}

.p-page-philosophy .p-page-philosophy-wrap .p-page-philosophy-bg .p-page-philosophy-content .p-page-philosophy-list .p-page-philosophy-item .p-page-philosophy-heading span {
	color: #e60016;
	font-family: 'DM Sans', serif;
	font-size: 3rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.p-page-philosophy .p-page-philosophy-wrap .p-page-philosophy-bg .p-page-philosophy-content .p-page-philosophy-list .p-page-philosophy-item .p-page-philosophy-heading h3 {
	font-size: 4rem;
	font-weight: 900;
	line-height: 1.475;
}

.p-page-philosophy .p-page-philosophy-wrap .p-page-philosophy-bg .p-page-philosophy-content .p-page-philosophy-list .p-page-philosophy-item p {
	margin: 40px 0 0;
	font-size: 1.8rem;
	line-height: 2;
	letter-spacing: 0.1em;
}

.p-page-philosophy .p-page-philosophy-wrap .p-page-philosophy-bg .p-page-philosophy-content .p-page-philosophy-img {
	flex: 0 0 42.8828828829%;
	margin: -70px 0 0;
}

.p-page-philosophy .p-page-philosophy-wrap .p-page-philosophy-bg .p-page-philosophy-content .p-page-philosophy-img img {
	width: 100%;
	height: 100%;
	border-radius: 0.8333333333vw;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
}

/* -----------------------------------------------------
 * p-page-recruit
-------------------------------------------------- */

.p-page-recruit {
	padding: 40px 0 240px;
	background: linear-gradient(180deg, #fff 0%, #fff 5%, #f8f8f2 5%, #f8f8f2 95%, #fff 95%, #fff 100%);
}

.p-page-recruit .p-page-recruit-inner .p-page-recruit-table {
	margin: 40px 0 0;
}

.p-page-recruit .p-page-recruit-inner .p-page-recruit-table table {
	table-layout: fixed;
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
}

.p-page-recruit .p-page-recruit-inner .p-page-recruit-table table tbody tr th,
.p-page-recruit .p-page-recruit-inner .p-page-recruit-table table tbody tr td {
	border: 1px solid #efefef;
	font-size: 1.8rem;
	vertical-align: middle;
}

.p-page-recruit .p-page-recruit-inner .p-page-recruit-table table tbody tr th {
	width: 290px;
	padding: 24px;
	border-left: none;
	background-color: #061826;
	color: #fff;
	font-weight: 700;
	text-align: center;
}

.p-page-recruit .p-page-recruit-inner .p-page-recruit-table table tbody tr td {
	padding: 24px 54px;
	border-right: none;
	background-color: #fff;
	font-weight: 500;
	line-height: 1.625;
	text-align-last: left;
}

.p-page-recruit .p-page-recruit-inner .p-page-recruit-btn {
	margin: 80px 0 0;
}

/* -----------------------------------------------------
 * p-page-works
 * -------------------------------------------------- */

.p-page-works {
	padding: 40px 0 0;
	background-color: #fff;
}

.p-page-works .p-page-works-head nav ul {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

.p-page-works .p-page-works-head nav ul li a {
	display: inline-block;
	width: 250px;
	height: 60px;
	border-radius: 6.875vw;
	background-color: #061826;
	transition: all 0.2s ease-in-out;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.p-page-works .p-page-works-head nav ul li a span {
	display: flex;
	position: relative;
	justify-content: center;
	align-items: center;
	padding: 16px 10px 16px 0;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.5555555556;
}

.p-page-works .p-page-works-head nav ul li a span::before,
.p-page-works .p-page-works-head nav ul li a span::after {
	content: '';
	position: absolute;
}

.p-page-works .p-page-works-head nav ul li a span::before {
	top: 50%;
	right: 12px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: #fff;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.p-page-works .p-page-works-head nav ul li a span::after {
	display: inline-block;
	top: 42%;
	right: 27px;
	width: 0.5em;
	height: 0.5em;
	border: 2px solid currentColor;
	border-bottom: 0;
	border-left: 0;
	color: #061826;
	line-height: 1;
	vertical-align: middle;
	transition: color 0.2s ease-in-out;
	-webkit-transform: translateX(-25%) rotate(45deg);
	transform: translateX(-25%) rotate(45deg);
}

.p-page-works .p-page-works-head nav ul li a:focus,
.p-page-works .p-page-works-head nav ul li a:hover {
	background-color: #e60016;
}

.p-page-works .p-page-works-head nav ul li a:focus span::after,
.p-page-works .p-page-works-head nav ul li a:hover span::after {
	color: #e60016;
}

.p-page-works .p-page-works-head nav ul li a.selected {
	background-color: #e60016;
}

.p-page-works .p-page-works-head nav ul li a.selected span::after {
	color: #e60016;
}

.p-page-works .p-page-works-head .p-page-works-desc {
	width: 100%;
	height: 600px;
	max-height: 600px;
	margin: 45px 0 0;
	padding: 60px 0 70px;
	background-color: transparent;
	background-image: url(/recruit/img/works/bg_works_pc.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap {
	display: flex;
	justify-content: space-between;
	gap: 15px;
}

.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body {
	width: 46.25%;
}

.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-heading span {
	color: #fff;
	font-family: 'DM Sans', serif;
	font-size: 15rem;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}

.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-heading h2 {
	color: #fff;
	font-size: 4rem;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: 0.05em;
}

.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body p {
	margin: 25px 0 0;
	color: #fff;
	font-weight: 700;
	letter-spacing: 0.075em;
}

.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-btn {
	margin: 70px 0 0;
}

.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-btn a {
	display: inline-block;
	width: 260px;
	height: 52px;
	border: 2px solid #e60016;
	border-radius: 6.875vw;
	background-color: #fff;
	transition: all 0.2s ease-in-out;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-btn a span {
	display: flex;
	position: relative;
	justify-content: space-between;
	align-items: center;
	padding: 12px 0 12px 25px;
	color: #e60016;
	font-weight: 700;
	line-height: 1.75;
	transition: color 0.2s ease-in-out;
}

.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-btn a span::before,
.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-btn a span::after {
	content: '';
	position: absolute;
}

.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-btn a span::before {
	top: 50%;
	right: 12px;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background-color: #e60016;
	transition: background-color 0.2s ease-in-out;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-btn a span::after {
	display: inline-block;
	top: 42%;
	right: 24px;
	box-sizing: border-box;
	width: 0.5em;
	height: 0.5em;
	border: 2px solid currentColor;
	border-bottom: 0;
	border-left: 0;
	color: #fff;
	line-height: 1;
	vertical-align: middle;
	transition: color 0.2s ease-in-out;
	-webkit-transform: translateY(-25%) rotate(135deg);
	transform: translateY(-25%) rotate(135deg);
}

.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-btn a:focus,
.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-btn a:hover {
	border-color: #061826;
	background-color: #061826;
}

.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-btn a:focus span,
.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-btn a:hover span {
	color: #fff;
}

.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-btn a:focus span::before,
.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-btn a:hover span::before {
	background-color: #fff;
}

.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-btn a:focus span::after,
.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-btn a:hover span::after {
	color: #061826;
}

.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-img {
	position: relative;
	width: 33.3333333333%;
}

.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-img span {
	position: absolute;
	top: 0;
	left: -2em;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	text-decoration: underline;
	letter-spacing: 0.1em;
	-ms-writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	text-underline-offset: 4px;
	text-decoration-thickness: 3px;
}

.p-page-works .p-page-oneday {
	margin: 230px 0 0;
	padding: 0 0 80px;
}

.p-page-works .p-page-oneday .p-page-group {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 20px;
}

.p-page-works .p-page-oneday .p-page-group .p-page-heading {
	display: flex;
	position: relative;
	flex-direction: column;
	align-items: flex-end;
}

.p-page-works .p-page-oneday .p-page-group .p-page-heading::before {
	content: '';
	position: absolute;
	bottom: 15px;
	left: 0;
	width: 76.5957446809%;
	height: 3px;
	background-color: #e60016;
}

.p-page-works .p-page-oneday .p-page-group .p-page-heading h2 {
	font-size: 5.6rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.05em;
}

.p-page-works .p-page-oneday .p-page-group .p-page-heading span {
	color: #e60016;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.4166666667;
	text-transform: uppercase;
}

.p-page-works .p-page-oneday .p-page-group p {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 2.2222222222;
}

.p-page-works .p-page-oneday .time-table {
	margin: 60px calc(50% - 50vw) 0 0;
	padding: 0 calc(50vw - 50%) 0 0;
	border-radius: 0.8333333333vw 0 0 0.8333333333vw;
	background-color: #f8f8f2;
}

.p-page-works .p-page-oneday .time-table .time-table-wrap {
	padding: 55px 0 44px 74px;
}

.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box {
	position: relative;
	padding: 0 0 0 20px;
}

.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box:before {
	content: '';
	display: block;
	position: absolute;
	top: clamp(1px, 8.6805555556vw, 125px);
	bottom: 0;
	left: 7px;
	width: 1px;
	background-color: #aaa;
}

.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-title-type {
	display: flex;
	align-items: flex-end;
	margin: 0 0 40px;
	gap: 20px;
}

.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-title-type .en {
	font-family: 'DM Sans', serif;
	font-size: 6.4rem;
	font-weight: 900;
	line-height: 1;
}

.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-title-type .ja {
	margin: 0 0 10px;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.0625;
}

.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-item {
	display: grid;
	position: relative;
	grid-template-columns: 155px 39.1111111111% 1fr;
	gap: 40px;
}

.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-item:not(:last-child) {
	margin: 0 0 30px;
}

.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-item::before {
	content: '';
	display: block;
	position: absolute;
	z-index: 1;
	top: clamp(1px, 1.3888888889vw, 20px);
	left: -20px;
	width: 16px;
	height: 16px;
	border: 2px solid #fff;
	border-radius: 50%;
	background-color: #e60016;
}

.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-item:last-of-type::after {
	content: '';
	display: block;
	position: absolute;
	top: clamp(1px, 2.5vw, 36px);
	bottom: 0;
	left: -13px;
	width: 3px;
	background-color: #f8f8f2;
}

.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-item .time {
	color: #e60016;
	font-family: 'Roboto Mono', serif;
	font-size: clamp(1px, 3.4722222222vw, 50px);
	font-weight: 700;
	line-height: 1;
	text-align: right;
	letter-spacing: -0.08em;
}

.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-item .exp h4 {
	color: #e60016;
	font-size: clamp(16px, 1.5277777778vw, 22px);
	font-weight: 700;
	line-height: 1.8181818182;
}

.p-page-works .p-page-careerplan {
	margin: 80px 0 0;
	padding: 80px 0;
	background-color: #f8f8f2;
}

/* -----------------------------------------------------
 * p-tab-numbers
 * -------------------------------------------------- */

.p-tab-numbers-bg {
	background: linear-gradient(180deg, #e60016 0, #e60016 90%, #fff 90%, #fff 100%);
}

.p-tab-numbers-page-bg {
	padding: 90px 0 0;
	background-color: #fff;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap {
	position: relative;
	margin: 0 0 0 calc(50% - 50vw);
	padding: 120px 120px 120px calc(50vw - 50%);
	border-radius: 0 0.8333333333vw 0.8333333333vw 0;
	background-color: #f8f8f2;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap::after {
	content: 'numbers';
	position: absolute;
	bottom: -30px;
	left: 40px;
	color: #fff;
	font-family: 'DM Sans', serif;
	font-size: 19rem;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content {
	display: flex;
	position: relative;
	z-index: 1;
	justify-content: space-between;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-more-btn a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 190px;
	height: 56px;
	padding: 0 24px;
	border-radius: 0.8333333333vw;
	background-color: #e60016;
	color: #fff;
	font-family: 'DM Sans', serif;
	font-size: 1.4rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	transition: background-color 0.2s, -webkit-transform 0.2s ease-in-out;
	transition: background-color 0.2s, transform 0.2s ease-in-out;
	transition: background-color 0.2s, transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-more-btn a:hover {
	background-color: #061826;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-more-btn a span {
	display: inline-block;
	position: relative;
	width: 0.8em;
	height: 0.1em;
	background: currentColor;
	color: #fff;
	line-height: 1;
	vertical-align: middle;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-more-btn a span::before {
	content: '';
	position: absolute;
	top: 50%;
	right: -0.05em;
	width: 0.65em;
	height: 0.65em;
	border: 0.2em solid currentColor;
	border-bottom: 0;
	border-left: 0;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transform-origin: top right;
	transform-origin: top right;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-head {
	display: flex;
	flex: 0 0 36.1111111111%;
	flex-direction: column;
	gap: 72px;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-head h2 {
	font-size: 7.9rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: -0.03em;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-head h2 span {
	display: block;
	font-size: 4rem;
	font-weight: 900;
	line-height: 1.475;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body {
	flex: 0 0 51.8518518519%;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents {
	position: relative;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents::before,
.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents::after {
	content: '';
	position: absolute;
	z-index: 2;
	width: 51px;
	height: 49px;
	background-color: transparent;
	background-image: url(/recruit/img/common/bg_numbers.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents::before {
	top: 0;
	left: 0;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents::after {
	right: 0;
	bottom: 0;
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item {
	display: none;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item.is-show {
	display: block;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item .tab-contents-group {
	position: relative;
	padding: 48px 0 40px;
	background-color: #fff;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item .tab-contents-group::after {
	content: '';
	position: absolute;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item .tab-contents-group .tab-contents-box {
	display: flex;
	position: relative;
	z-index: 1;
	flex-direction: column;
	align-items: center;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item .tab-contents-group .tab-contents-box .tab-contents-title {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item .tab-contents-group .tab-contents-box .tab-contents-title span {
	color: #e60016;
	font-family: 'DM Sans', serif;
	font-size: 1.8rem;
	font-weight: 900;
	line-height: 1.3333333333;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item .tab-contents-group .tab-contents-box .tab-contents-title h3 {
	font-size: 2.6rem;
	font-weight: 900;
	line-height: 2.1538461538;
	letter-spacing: 0.05em;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item .tab-contents-group .tab-contents-box .tab-contents-number {
	display: flex;
	align-items: flex-end;
	color: #e60016;
	font-family: 'Roboto Mono', serif;
	font-size: 12rem;
	font-weight: 700;
	line-height: 1.325;
	letter-spacing: -0.08em;
	gap: 5px;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item .tab-contents-group .tab-contents-box .tab-contents-number .small {
	font-size: 7rem;
	line-height: 1.3142857143;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item .tab-contents-group .tab-contents-box .tab-contents-number .unit {
	margin: 0 0 20px 8px;
	color: #061826;
	font-family: 'Roboto', 'Noto Sans JP', serif;
	font-size: 3.6rem;
	font-weight: 700;
	line-height: 1.5555555556;
	letter-spacing: normal;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item:nth-of-type(1) .tab-contents-group::after {
	top: 52px;
	right: 44px;
	width: 88px;
	height: 106px;
	background-image: url(/recruit/img/numbers/fig_numbers_02.webp);
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item:nth-of-type(2) .tab-contents-group::after {
	bottom: 30px;
	left: 30px;
	width: 112px;
	height: 133px;
	background-image: url(/recruit/img/numbers/fig_numbers_03.webp);
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item:nth-of-type(3) .tab-contents-group::after {
	right: 30px;
	bottom: 40px;
	width: 157px;
	height: 88px;
	background-image: url(/recruit/img/numbers/fig_numbers_05.webp);
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item:nth-of-type(4) .tab-contents-group::after {
	right: 30px;
	bottom: 20px;
	width: 115px;
	height: 137px;
	background-image: url(/recruit/img/numbers/fig_numbers_06.webp);
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .p-tab-numbers-note {
	margin: 10px 0 0;
	text-align: right;
	letter-spacing: 0.05em;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-menu {
	display: grid;
	margin: 40px 0 0;
	grid-template-columns: repeat(2, 1fr);
	gap: 24px;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-menu li {
	display: flex;
	justify-content: center;
	align-items: center;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-menu li .tab-btn {
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 268px;
	height: 64px;
	padding: 12px 15px 12px 20px;
	border: 1px solid transparent;
	border-radius: 0.8333333333vw;
	background-color: #e60016;
	color: #fff;
	font-size: 2rem;
	font-weight: 900;
	line-height: 1.8;
	letter-spacing: 0.05em;
	transition: all 0.2s ease-in-out;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-menu li .tab-btn::after {
	content: '';
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	transition: background-image 0.2s ease-in-out;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-menu li .tab-btn.is-active,
.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-menu li .tab-btn:focus,
.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-menu li .tab-btn:hover {
	border-color: #e60016;
	background-color: #fff;
	color: #e60016;
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-menu li:nth-of-type(1) .tab-btn::after {
	width: 71px;
	height: 40px;
	background-image: url(/recruit/img/common/ico_numbers_01.webp);
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-menu li:nth-of-type(2) .tab-btn::after {
	width: 34px;
	height: 40px;
	background-image: url(/recruit/img/common/ico_numbers_02.webp);
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-menu li:nth-of-type(3) .tab-btn::after {
	width: 71px;
	height: 40px;
	background-image: url(/recruit/img/common/ico_numbers_03.webp);
}

.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-menu li:nth-of-type(4) .tab-btn::after {
	width: 34px;
	height: 40px;
	background-image: url(/recruit/img/common/ico_numbers_04.webp);
}

/* -----------------------------------------------------
 * p-thanks
-------------------------------------------------- */

.p-thanks {
	padding: 40px 0 120px;
	background-color: #fff;
}

.p-thanks .p-thanks-inner .p-thanks-txt {
	text-align: center;
}

.p-thanks .p-thanks-inner .p-thanks-flow {
	margin: 40px 0 0;
}

.p-thanks .p-thanks-inner .p-thanks-flow .p-thanks-content {
	width: 80.8333333333%;
	max-width: 100%;
	padding: 70px 0;
	background-color: #f8f8f2;
	margin-inline: auto;
}

.p-thanks .p-thanks-inner .p-thanks-flow .p-thanks-content .p-thanks-heading {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 5px;
}

.p-thanks .p-thanks-inner .p-thanks-flow .p-thanks-content .p-thanks-heading span {
	color: #e60016;
	font-family: 'DM Sans', serif;
	font-size: 3rem;
	font-weight: 900;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.p-thanks .p-thanks-inner .p-thanks-flow .p-thanks-content .p-thanks-heading h2 {
	font-size: 4rem;
	font-weight: 900;
	line-height: 1.475;
	letter-spacing: -0.03em;
}

.p-thanks .p-thanks-inner .p-thanks-flow .p-thanks-content p {
	margin: 40px 0 0;
	font-size: 1.8rem;
	line-height: 2.1111111111;
	text-align: center;
}

.p-thanks .p-thanks-inner .p-thanks-flow .p-thanks-content .p-thanks-btn {
	margin: 60px 0 0;
}

/* -----------------------------------------------------
 * p-topmessage
 * -------------------------------------------------- */

.p-topmessage-wrap {
	padding: 24px 0 0;
	background: linear-gradient(180deg, #fff 0, #fff 10%, #f8f8f2 10%, #f8f8f2 100%);
}

.p-topmessage-wrap .p-topmessage-heading {
	width: 1260px;
	max-width: 100%;
	color: #e60016;
	font-family: 'DM Sans', serif;
	font-size: 15rem;
	font-weight: 900;
	line-height: 1;
	text-transform: uppercase;
	padding-inline: 30px;
	margin-inline: auto;
}

.p-topmessage h2 {
	color: #e60016;
	font-size: 4rem;
	font-weight: 900;
	text-transform: uppercase;
}

.p-topmessage .p-topmessage-group .p-topmessage-bg {
	margin: 0 0 0 calc(50% - 50vw);
	padding: 0 0 0 calc(50vw - 50%);
	border-radius: 0 0.8333333333vw 0.8333333333vw 0;
	background-color: #fff;
}

.p-topmessage .p-topmessage-group .p-topmessage-bg .p-topmessage-content {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	margin: 110px 0 0;
	padding: 0 90px 70px 0;
}

.p-topmessage .p-topmessage-group .p-topmessage-bg .p-topmessage-content .p-topmessage-body {
	flex: 0 0 45.9459459459%;
	margin: -70px 0 0;
}

.p-topmessage .p-topmessage-group .p-topmessage-bg .p-topmessage-content .p-topmessage-body .p-topmessage-lead {
	font-size: 5.6rem;
	font-weight: 900;
	line-height: 1.2142857143;
	letter-spacing: -0.03em;
}

.p-topmessage .p-topmessage-group .p-topmessage-bg .p-topmessage-content .p-topmessage-body .p-topmessage-txt {
	margin: 56px 0 0;
}

.p-topmessage .p-topmessage-group .p-topmessage-bg .p-topmessage-content .p-topmessage-body .p-topmessage-txt p {
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.p-topmessage .p-topmessage-group .p-topmessage-bg .p-topmessage-content .p-topmessage-body .p-topmessage-txt p:last-child {
	margin: 60px 0 0;
	text-align: right;
}

.p-topmessage .p-topmessage-group .p-topmessage-bg .p-topmessage-content .p-topmessage-body .p-topmessage-txt p span {
	display: inline-block;
}

.p-topmessage .p-topmessage-group .p-topmessage-bg .p-topmessage-content .p-topmessage-img {
	flex: 0 0 42.8828828829%;
	margin: -70px 0 0;
}

.p-topmessage .p-topmessage-group .p-topmessage-bg .p-topmessage-content .p-topmessage-img img {
	width: 100%;
	height: 100%;
	border-radius: 0.8333333333vw;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
}

/* =====================================================
 * Layout
 * ================================================== */

/* -----------------------------------------------------
 * footer
 * -------------------------------------------------- */

.l-footer {
	width: 100%;
	padding: 100px 0 0;
	background-color: #e60016;
	color: #fff;
}

.l-footer .l-footer-inner {
	display: flex;
	justify-content: space-between;
}

.l-footer .l-footer-inner .l-footer-logo {
	display: block;
}

.l-footer .l-footer-inner .l-footer-logo a {
	display: block;
	overflow: hidden;
	width: 204px;
	height: 0;
	padding: 42px 0 0;
	background-color: transparent;
	background-image: url(/recruit/img/common/logo_footer.svg);
	background-repeat: no-repeat;
	background-position: 0 50%;
	background-size: contain;
	white-space: nowrap;
	transition: opacity 0.2s ease-in-out;
}

.l-footer .l-footer-inner .l-footer-logo a:hover {
	opacity: 0.7;
}

.l-footer .l-footer-inner .l-footer-nav a {
	color: #fff;
	transition: opacity 0.3s ease-in-out;
}

.l-footer .l-footer-inner .l-footer-nav a:hover {
	opacity: 0.7;
}

.l-footer .l-footer-inner .l-footer-nav .l-footer-upper {
	margin: 0 0 70px;
}

.l-footer .l-footer-inner .l-footer-nav .l-footer-list {
	display: flex;
}

.l-footer .l-footer-inner .l-footer-nav .l-footer-list .l-footer-item:first-child {
	flex: none;
	width: clamp(260px, 23.9583333333vw, 345px);
}

.l-footer .l-footer-inner .l-footer-nav .l-footer-list .l-footer-item > a {
	display: block;
	margin: 0 0 16px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 700;
	transition: opacity 0.3s ease-in-out;
}

.l-footer .l-footer-inner .l-footer-nav .l-footer-list .l-footer-item > a:hover {
	opacity: 0.7;
}

.l-footer .l-footer-inner .l-footer-nav .l-footer-sub {
	color: #fff;
	font-size: 1.4rem;
	font-weight: 500;
}

.l-footer .l-footer-inner .l-footer-nav .l-footer-sub li {
	padding: 0 0 0 1.5em;
	text-indent: -1.5em;
}

.l-footer .l-footer-inner .l-footer-nav .l-footer-sub li::before {
	content: '';
	display: inline-block;
	width: 8px;
	height: 1px;
	margin: 0 0.7em 0 0;
	background-color: transparent;
	vertical-align: middle;
}

.l-footer .l-footer-inner .l-footer-nav .l-footer-sub li:last-child {
	margin-bottom: 0;
}

.l-footer .l-footer-copyright {
	padding: 120px 0 30px;
	color: #fff;
	font-size: 1.4rem;
	text-align: center;
}

/* -----------------------------------------------------
 * header
 * -------------------------------------------------- */

.l-header {
	position: fixed;
	z-index: 20;
	top: 0;
	width: 100%;
	height: 100px;
	background-color: transparent;
	transition: background-color 0.2s;
}

.l-header.is-color {
	background-color: #fff;
}

.l-header.page-color {
	background-color: #fff;
	transition: none;
}

.l-header .l-header-inner {
	width: 1390px;
	max-width: 100%;
	padding-inline: 15px;
	margin-inline: auto;
}

.l-header .l-header-inner .c-btn a {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 24px;
	border-radius: 0.8333333333vw;
	background-color: #e60016;
	color: #fff;
	font-family: 'DM Sans', serif;
	font-size: 1.4rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	transition: background-color 0.2s, -webkit-transform 0.2s ease-in-out;
	transition: background-color 0.2s, transform 0.2s ease-in-out;
	transition: background-color 0.2s, transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
}

.l-header .l-header-inner .c-btn a:hover {
	background-color: #061826;
}

.l-header .l-header-inner .c-btn a span {
	display: inline-block;
	position: relative;
	width: 0.8em;
	height: 0.1em;
	background: currentColor;
	color: #fff;
	line-height: 1;
	vertical-align: middle;
}

.l-header .l-header-inner .c-btn a span::before {
	content: '';
	position: absolute;
	top: 50%;
	right: -0.05em;
	width: 0.65em;
	height: 0.65em;
	border: 0.2em solid currentColor;
	border-bottom: 0;
	border-left: 0;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transform-origin: top right;
	transform-origin: top right;
}

/* -----------------------------------------------------
 * layout
 * -------------------------------------------------- */

body {
	display: flex;
	flex-direction: column;
}

.l-wrapper {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

.l-main {
	overflow: hidden;
	flex-grow: 1;
	min-width: 320px;
	background-color: #f8f8f2;
}

.l-section-inner {
	width: 1260px;
	max-width: 100%;
	padding-inline: 30px;
	margin-inline: auto;
}

.l-section-page-inner {
	width: 1390px;
	max-width: 100%;
	padding-inline: 15px;
	margin-inline: auto;
}

.l-section-page-inner.p-0 {
	padding-inline: 0;
}

/* =====================================================
 * Page
 * ================================================== */

/* -----------------------------------------------------
 * home
 * -------------------------------------------------- */

@media screen and (min-width: 1280px) {
	.u-hide-pc {
		display: none !important;
	}

	.u-show-pc {
		display: block !important;
	}

	.u-show-br-pc {
		display: inline-block !important;
	}

	.c-fixed-btn {
		display: none;
	}

	.p-kv .p-kv-container .swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
  .p-kv .p-kv-container .swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
		margin: var(--swiper-pagination-bullet-vertical-gap, 9px) 0;
	}

	.p-topmessage .p-topmessage-group .p-topmessage-bg .p-topmessage-content {
		align-items: center;
	}
}

@media screen and (max-width: 1279px) {
	.c-cta-environment {
		padding: clamp(80px, 1.2rem, 120px) 0 clamp(80px, 2rem, 200px);
	}

	.c-cta-environment .c-cta-environment-list .c-cta-environment-item a .c-cta-environment-type .ja {
		font-size: clamp(24px, 0.34rem, 34px);
	}

	.c-cta .c-cta-list .c-cta-item a .ja {
		font-size: clamp(32px, 0.56rem, 56px);
	}

	.p-interview {
		padding: clamp(80px, 1.2rem, 120px) 0 clamp(60px, 1.2rem, 120px);
	}

	.p-interview .p-interview-wrap {
		display: grid;
		grid-template-columns: 1fr;
		grid-template-rows: repeat(3, auto);
	}

	.p-interview .p-interview-wrap .p-interview-head {
		grid-column: 1/2;
		grid-row: 1/2;
	}

	.p-interview .p-interview-wrap .p-interview-head p {
		margin: 40px 0 0;
	}

	.p-interview .p-interview-wrap .p-interview-parts {
		margin: 0;
		grid-column: 1/2;
		grid-row: 3/4;
	}

	.p-page-benefit .p-page-benefit-head {
		padding: 0 clamp(15px, 0.8rem, 80px) clamp(40px, 0.65rem, 65px);
		border-radius: 12px;
	}

	.p-page-benefit .p-page-benefit-head .p-page-benefit-wrap {
		flex-direction: column-reverse;
	}

	.p-page-benefit .p-page-benefit-head .p-page-benefit-wrap .p-page-benefit-body {
		margin: 40px 0 0;
	}

	.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-head {
		flex-direction: column-reverse;
		gap: 24px;
	}

	.p-page-education .p-page-educationplan {
		padding: 0 0 clamp(80px, 1.2rem, 120px);
	}

	.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-head {
		flex-direction: column-reverse;
		gap: 24px;
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-head-wrap .p-page-interview-head .p-page-interview-heading h3 {
		font-size: clamp(28px, 0.5rem, 50px);
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-mov::after {
		width: 100%;
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-mov .p-page-interview-video {
		width: 100%;
		height: auto;
		box-shadow: 10px 10px 0 #e60016;
	}

	.p-page-jobfair {
		margin: clamp(120px, 2.2rem, 220px) 0 0;
	}

	.p-page-jobtype {
		padding: clamp(30px, 0.8rem, 80px) 0 0;
		background: linear-gradient(180deg, #fff 0, #fff 28%, #f8f8f2 28%, #f8f8f2 100%);
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-head p {
		white-space: wrap;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .p-page-numbers-item {
		padding: clamp(40px, 0.48rem, 48px) 0 clamp(40px, 4.4rem, 44px);
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .p-page-numbers-item .p-page-numbers-group .p-page-numbers-box .p-page-numbers-number {
		font-size: clamp(100px, 1.2rem, 120px);
	}

	.p-page-philosophy {
		padding: clamp(80px, 1.1rem, 110px) 0 clamp(46px, 1.1rem, 110px);
	}

	.p-page-works .p-page-oneday .time-table .time-table-wrap {
		padding: clamp(40px, 0.55rem, 55px) 0 44px clamp(30px, 0.74rem, 74px);
	}

	.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-item .time {
		font-size: 36px;
		text-align: left;
	}

	.p-tab-numbers-page-bg {
		padding: clamp(65px, 0.9rem, 90px) 0 0;
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-head h2 {
		font-size: clamp(40px, 0.79rem, 79px);
		text-align: center;
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-head h2 span {
		font-size: clamp(20px, 0.4rem, 40px);
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item .tab-contents-group {
		padding: clamp(40px, 0.48rem, 48px) 0 clamp(40px, 4.4rem, 44px);
	}

	.p-thanks .p-thanks-inner .p-thanks-flow .p-thanks-content {
		width: 100%;
		padding: clamp(40px, 0.7rem, 70px) 15px;
	}

	.l-section-inner {
		width: 100%;
	}

	.l-section-page-inner {
		width: 100%;
	}
}

@media screen and (max-width: 1200px) {
	.p-header .p-header-menu ul li:not(.btn) {
		display: none;
	}

	.p-header .p-header-menu ul {
		padding: 0;
	}
}

@media screen and (max-width: 767px) {
	p {
		font-size: clamp(14px, 0.16rem, 16px);
	}

	.u-hide-sp {
		display: none !important;
	}

	.u-show-sp {
		display: block !important;
	}

	.u-show-br-sp {
		display: inline-block !important;
	}

	.c-careerplan .c-careerplan-heading span {
		font-size: clamp(18px, 0.3rem, 30px);
	}

	.c-careerplan .c-careerplan-heading h2 {
		font-size: clamp(30px, 0.4rem, 40px);
	}

	.c-careerplan .c-careerplan-content {
		margin: clamp(30px, 0.4rem, 40px) 0 0;
	}

	.c-careerplan .c-careerplan-content ul {
		gap: clamp(24px, 0.4rem, 40px);
	}

	.c-careerplan .c-careerplan-content ul li .c-careerplan-img {
		width: 186.6666666667vw;
	}

	.c-careerplan .c-careerplan-content ul li .c-careerplan-img img {
		border-radius: 12px;
	}

	.p-floating-cta {
		right: 20px;
		bottom: 24%;
	}

	.p-floating-cta__text {
		margin-bottom: 0;
		padding-top: 20px;
		font-size: 1.2rem;
	}

	.p-floating-cta__link {
		width: 120px;
		height: 120px;
	}

	.c-cta-environment .c-cta-environment-head {
		flex-direction: column;
		gap: 40px;
	}

	.c-cta-environment .c-cta-environment-head .c-cta-environment-heading h2 {
		font-size: clamp(32px, 0.56rem, 56px);
	}

	.c-cta-environment .c-cta-environment-head p {
		font-size: clamp(14px, 0.16rem, 16px);
	}

	.c-cta-environment .c-cta-environment-list {
		flex-direction: column;
		margin: clamp(40px, 0.8rem, 80px) 0 0;
		gap: 40px;
	}

	.c-cta-environment .c-cta-environment-list .c-cta-environment-item {
		width: 100%;
	}

	.c-cta-environment .c-cta-environment-list .c-cta-environment-item a {
		gap: clamp(16px, 0.24rem, 24px);
	}

	.c-cta-environment .c-cta-environment-list .c-cta-environment-item a .c-cta-environment-bg {
		height: clamp(245px, 4.4rem, 440px);
		border-radius: 12px;
	}

	.c-cta {
		padding: clamp(70px, 2.1rem, 210px) 0 0;
	}

	.c-cta::after {
		top: 0;
		height: clamp(67px, 2.06rem, 206px);
		background-image: url(/recruit/img/common/txt_catchcopy_sp.webp);
	}

	.c-cta .c-cta-list {
		flex-direction: column;
	}

	.c-cta .c-cta-list .c-cta-item {
		width: 100%;
		border-right: none;
	}

	.c-cta .c-cta-list .c-cta-item:not(:last-child) {
		border-bottom: 1px solid rgba(6, 24, 38, 0.12);
	}

	.c-cta .c-cta-list .c-cta-item a {
		height: clamp(160px, 3.15rem, 315px);
		padding: clamp(40px, 1.04rem, 104px) clamp(30px, 1.2rem, 120px);
	}

	.c-heading-col {
		gap: clamp(24px, 0.56rem, 56px);
	}

	.c-heading-col h2 {
		font-size: 1.6rem;
	}

	.c-heading-col span {
		font-size: clamp(56px, 1.5rem, 150px);
	}

	.c-heading span {
		font-size: clamp(70px, 1.5rem, 150px);
	}

	.c-heading h2 {
		font-size: clamp(18px, 0.4rem, 40px);
	}

	.c-jobtype ul {
		gap: clamp(16px, 3.2rem, 32px);
	}

	.c-jobtype ul li a {
		grid-template-columns: 1fr;
		grid-template-rows: 190px auto;
	}

	.c-jobtype ul li a .c-jobtype-body {
		padding: clamp(24px, 5.6rem, 56px) clamp(30px, 0.4rem, 40px);
		grid-column: 1/2;
		grid-row: 1/2;
	}

	.c-jobtype ul li a .c-jobtype-body .en {
		top: clamp(16px, 0.24rem, 24px);
		left: 8vw;
		font-size: 1.4rem;
	}

	.c-jobtype ul li a .c-jobtype-body .c-jobtype-type .ja {
		font-size: clamp(32px, 0.56rem, 56px);
	}

	.c-jobtype ul li a .c-jobtype-body .c-jobtype-type span {
		font-size: clamp(14px, 0.18rem, 18px);
	}

	.c-jobtype ul li a .c-jobtype-body .c-jobtype-btn {
		right: 8vw;
		bottom: clamp(16px, 0.24rem, 24px);
	}

	.c-jobtype ul li a .c-jobtype-bg {
		height: clamp(190px, 3.6rem, 360px);
		grid-column: 1/2;
		grid-row: 2/3;
	}

	.c-jobtype ul li a .c-jobtype-bg::after {
		top: -10px;
		font-size: clamp(56px, 1.2rem, 120px);
	}

	.c-lower-header {
		margin: clamp(78px, 1rem, 100px) 0 0;
	}

	.c-lower-header .heading span {
		font-size: clamp(48px, 0.72rem, 72px);
	}

	.c-lower-header .heading h1 {
		font-size: clamp(18px, 0.22rem, 22px);
	}

	.c-lower-header picture img {
		border-radius: 12px;
	}

	.c-lower-header nav {
		margin: clamp(10px, 0.2rem, 20px) 0 0;
	}

	.c-lower-header nav ul {
		gap: 10px 20px;
	}

	.c-tagline-wrap {
		margin: 50px 0 0;
	}

	.c-tagline {
		top: -70px;
	}

	.c-tagline ul {
		gap: clamp(50px, 1rem, 100px);
	}

	.c-tagline ul li {
		width: clamp(380px, 11rem, 1100px);
		font-size: clamp(56px, 1.5rem, 150px);
	}

	.c-tagline-page {
		padding: clamp(50px, 0.6rem, 60px) 0 0;
	}

	.c-tagline-page ul li {
		width: clamp(1500px, 21rem, 2100px);
		font-size: clamp(130px, 1.75rem, 175px);
	}

	.c-ut-arrow-btn {
		width: clamp(40px, 0.56rem, 56px);
		height: clamp(40px, 0.56rem, 56px);
		border-radius: 12px;
	}

	.c-ut-btn {
		width: clamp(315px, 6.45rem, 645px);
		height: clamp(70px, 1.4rem, 140px);
		border-radius: 26.4vw;
	}

	.c-ut-btn .en {
		font-size: clamp(12px, 0.24rem, 24px);
	}

	.c-ut-btn .ja {
		font-size: clamp(16px, 0.28rem, 28px);
	}

	.p-entry .p-entry-inner p {
		padding: clamp(30px, 0.4rem, 40px) 15px 0;
		text-align: left;
	}

	.p-header {
		padding: 12px 0 0;
	}

	.p-header .p-header-menu ul {
		display: none;
	}

	.p-header .p-header-menu .p-header-btn {
		border-radius: 12px;
	}

	.p-header-nav-wrap {
		flex-direction: column;
		justify-content: flex-start;
		align-items: flex-start;
		padding: 100px 20px 30px;
	}

	.p-header-nav-wrap::before {
		height: 78px;
	}

	.p-header-nav-wrap .p-header-nav-logo {
		top: 12px;
	}

	.p-header-nav-wrap .p-header-nav {
		align-items: flex-start;
		gap: 20px;
	}

	.p-header-nav-wrap .p-header-nav .p-header-nav-group {
		width: 100%;
		padding: 20px 0;
	}

	.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-list {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-list .p-header-nav-item:nth-of-type(1) {
		grid-column: 1/3;
		grid-row: 1/2;
	}

	.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-list .p-header-nav-item:nth-of-type(2) {
		grid-column: 1/3;
		grid-row: 3/4;
	}

	.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-list .p-header-nav-item:nth-of-type(3) {
		grid-column: 1/3;
		grid-row: 5/6;
	}

	.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-list .p-header-nav-item:nth-of-type(4) {
		grid-column: 1/3;
		grid-row: 2/3;
	}

	.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-list .p-header-nav-item:nth-of-type(5) {
		grid-column: 1/3;
		grid-row: 4/5;
	}

	.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-list .p-header-nav-item:nth-of-type(6) {
		grid-column: 1/3;
		grid-row: 6/7;
	}

	.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-sub {
		margin: 0;
	}

	.p-header-nav-wrap .p-header-nav .p-header-nav-group .p-header-nav-sub > li::before {
		width: 8px;
		margin: 0 10px 0 0;
	}

	.p-header-nav-wrap .p-header-nav .p-header-nav-cta .c-btn a {
		width: 280px;
		border-radius: 12px;
	}

	.p-home-job {
		margin: clamp(80px, 1.2rem, 120px) 0;
	}

	.p-home-job .p-home-job-head .p-home-job-inner {
		flex-direction: column;
		gap: 0;
	}

	.p-home-ourmessage {
		padding: clamp(90px, 1.8rem, 180px) 0 clamp(105px, 39rem, 390px);
	}

	.p-home-ourmessage .bg01 {
		top: 820px;
		right: calc(50% + 70px);
		width: 61.9047619048%;
		height: 195px;
	}

	.p-home-ourmessage .bg02 {
		top: 765px;
		left: calc(50% - 15px);
		width: 63.4920634921%;
		height: 200px;
	}

	.p-home-ourmessage .bg03 {
		top: 1010px;
		left: calc(50% + 30px);
		width: 38.0952380952%;
		height: 120px;
	}

	.p-home-ourmessage .p-home-ourmessage-inner {
		padding-inline: 30px;
	}

	.p-home-ourmessage .p-home-ourmessage-inner .p-home-ourmessage-content {
		width: 315px;
	}

	.p-home-ourmessage .p-home-ourmessage-inner .p-home-ourmessage-content h2 {
		top: clamp(-35px, -1.5rem, -15px);
		left: -25px;
	}

	.p-home-ourmessage .p-home-ourmessage-inner .p-home-ourmessage-content .p-home-ourmessage-lead {
		font-size: clamp(40px, 0.64rem, 64px);
	}

	.p-home-ourmessage .p-home-ourmessage-inner .p-home-ourmessage-content p {
		margin: clamp(40px, 0.6rem, 60px) 0 0;
		font-size: clamp(14px, 0.16rem, 16px);
	}

	.p-interview .p-interview-wrap .p-interview-head .p-interview-heading {
		flex-direction: column-reverse;
		align-items: flex-start;
	}

	.p-interview .p-interview-wrap .p-interview-head .p-interview-heading h2 {
		font-size: clamp(16px, 0.4rem, 40px);
	}

	.p-interview .p-interview-wrap .p-interview-head .p-interview-heading span {
		font-size: clamp(56px, 1.5rem, 150px);
	}

	.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .btn-next,
  .p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .btn-prev {
		gap: clamp(8px, 0.16rem, 16px);
	}

	.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .next,
  .p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .prev {
		font-size: clamp(14px, 0.18rem, 18px);
	}

	.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-next,
  .p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-prev {
		width: clamp(40px, 0.56rem, 56px);
		height: clamp(40px, 0.56rem, 56px);
		border-radius: 12px;
	}

	.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-next:hover,
  .p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-prev:hover {
		border-radius: 12px;
	}

	.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-next:after,
  .p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .swiper-button-prev:after {
		width: clamp(40px, 0.56rem, 56px);
		height: clamp(40px, 0.56rem, 56px);
		border-radius: 12px;
		background-size: clamp(40px, 0.56rem, 56px) clamp(40px, 0.56rem, 56px);
	}

	.p-interview .p-interview-wrap .p-interview-container {
		margin: 0;
		padding: 300px 0 0;
		grid-column: 1/2;
		grid-row: 2/3;
	}

	.p-interview .p-interview-wrap .p-interview-container .c-slider {
		height: clamp(390px, 5.6rem, 560px);
	}

	.p-interview .p-interview-wrap .p-interview-container .c-slider ul li {
		width: 200px;
	}

	.p-interview .p-interview-wrap .p-interview-container .c-slider ul li a .p-interview-body .p-interview-type .name {
		font-size: clamp(20px, 0.32rem, 32px);
	}

	.p-interview .p-interview-wrap .p-interview-container .c-slider ul li a .p-interview-body .p-interview-type .txt {
		font-size: clamp(12px, 0.18rem, 18px);
	}

	.p-interview .p-interview-wrap .p-interview-container .c-slider ul li a figure {
		height: clamp(250px, 4rem, 400px);
		border-radius: 12px;
	}

	.p-interview .p-interview-wrap .p-interview-container .c-slider ul li a figure img {
		border-radius: 12px;
	}

	.p-interview .p-interview-wrap .p-interview-container .c-slider ul li .p-interview-catch {
		top: -160px;
		width: clamp(310px, 6.8rem, 680px);
		max-width: clamp(310px, 6.8rem, 680px);
		-webkit-transform: translateX(-20%);
		transform: translateX(-20%);
	}

	.p-interview .p-interview-wrap .p-interview-container .c-slider ul li .p-interview-catch .fukidashi {
		width: clamp(310px, 6.8rem, 680px);
		max-width: clamp(310px, 6.8rem, 680px);
		padding: 24px clamp(15px, 0.45rem, 45px);
		border-radius: 26.4vw;
	}

	.p-interview .p-interview-wrap .p-interview-container .c-slider ul li .p-interview-catch .fukidashi::before {
		top: -70px;
		right: auto;
		left: 30px;
		width: clamp(128px, 1.36rem, 136px);
		animation: floating-y-sp 0.8s ease-in-out infinite alternate-reverse;
	}

	.p-interview .p-interview-wrap .p-interview-container .c-slider ul li .p-interview-catch .fukidashi::after {
		bottom: -25px;
		border-radius: 26.4vw;
	}

	.p-interview .p-interview-wrap .p-interview-container .c-slider ul li .p-interview-catch .fukidashi .comment {
		font-size: clamp(18px, 0.32rem, 32px);
	}

	.p-kv .p-kv-container::before {
		height: 53.3333333333vw;
	}

	.p-kv .p-kv-container::after {
		width: 80vw;
		height: 54.6666666667vw;
		background-image: url(/recruit/img/top/txt_kv_sp.svg);
	}

	.p-kv .p-kv-container .c-slider .c-slider-inner {
		height: 144vw;
	}

	.p-kv .p-kv-container .c-slider .c-slider-list .slide_img {
		height: 144vw;
	}

	.p-kv .p-kv-container .c-slider .c-slider-list .slide_img img {
		-o-object-position: top center;
		object-position: top center;
	}

	.p-kv .p-kv-container .swiper-pagination-vertical.swiper-pagination-bullets,
  .p-kv .p-kv-container .swiper-vertical > .swiper-pagination-bullets {
		top: 40%;
	}

	.p-kv .p-kv-container .swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
  .p-kv .p-kv-container .swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
		margin: var(--swiper-pagination-bullet-vertical-gap, 7px) 0;
	}

	.p-page-benefit {
		padding: clamp(24px, 4rem, 40px) 0 0;
		background: linear-gradient(180deg, #fff 0, #fff 12%, #f8f8f2 12%, #f8f8f2 100%);
	}

	.p-page-benefit .p-page-benefit-head .p-page-benefit-wrap .p-page-benefit-body h3 {
		font-size: clamp(24px, 0.4rem, 40px);
	}

	.p-page-benefit .p-page-benefit-head .p-page-benefit-wrap .p-page-benefit-body p {
		margin: clamp(24px, 0.3rem, 30px) 0 0;
		letter-spacing: 0.02em;
	}

	.p-page-benefit .p-page-benefit-head .p-page-benefit-wrap figure {
		flex: auto;
		margin: 0;
	}

	.p-page-benefit .p-page-benefit-head .p-page-benefit-wrap figure img {
		border-radius: 12px;
	}

	.p-page-benefit .p-page-benefit-content .p-page-benefit-list {
		padding: clamp(40px, 0.8rem, 80px) 0;
		grid-template-columns: 1fr;
		justify-items: center;
		gap: clamp(10px, 0.6rem, 60px);
	}

	.p-page-benefit .p-page-benefit-content .p-page-benefit-list .p-page-benefit-item {
		width: 100%;
		margin: 0 0 20px;
		border-radius: 12px;
	}

	.p-page-education {
		background: linear-gradient(180deg, #f8f8f2 0, #f8f8f2 1%, #fff 1%, #fff 100%);
	}

	.p-page-education .p-page-education-inner {
		padding: 0 15px;
	}

	.p-page-education .p-page-education-inner .c-heading span {
		font-size: clamp(59px, 1.5rem, 150px);
	}

	.p-page-education .p-page-education-inner .p-page-skillup {
		margin: clamp(40px, 0.6rem, 60px) 0;
	}

	.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-heading span {
		font-size: clamp(18px, 0.3rem, 30px);
	}

	.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-heading h2 {
		font-size: clamp(30px, 0.4rem, 40px);
	}

	.p-page-education .p-page-education-inner .p-page-skillup p {
		margin: clamp(30px, 0.4rem, 40px) 0 0;
		letter-spacing: 0.02em;
	}

	.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table {
		margin: clamp(30px, 0.7rem, 70px) 0 0;
	}

	.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table {
		min-width: clamp(715px, 12rem, 1200px);
	}

	.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr:first-child td {
		height: clamp(20px, 0.35rem, 35px);
	}

	.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr:first-child .null {
		height: clamp(20px, 0.35rem, 35px);
	}

	.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr th,
  .p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr td {
		height: clamp(56px, 0.96rem, 96px);
		font-size: clamp(14px, 0.2rem, 20px);
	}

	.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr td {
		width: clamp(195px, 3.4rem, 340px);
	}

	.p-page-education .p-page-education-inner .p-page-skillup .p-page-skillup-table table tbody tr .position {
		width: clamp(120px, 1.7rem, 170px);
	}

	.p-page-education .p-page-careerplan {
		padding: clamp(40px, 0.8rem, 80px) 0;
	}

	.p-page-education .p-page-skill {
		padding: 40px 0 clamp(80px, 1.2rem, 120px);
	}

	.p-page-education .p-page-skill .p-page-skill-inner {
		padding: 0 15px;
	}

	.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-head .p-page-skill-body .p-page-skill-heading span {
		font-size: clamp(18px, 0.3rem, 30px);
	}

	.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-head .p-page-skill-body .p-page-skill-heading h2 {
		font-size: clamp(30px, 0.4rem, 40px);
	}

	.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-head .p-page-skill-body p {
		margin: clamp(14px, 0.4rem, 40px) 0 0;
	}

	.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-head .p-page-skill-wrap figure {
		max-height: 100%;
	}

	.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-head .p-page-skill-wrap figure img {
		border-radius: 12px 0 0 12px;
	}

	.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-list {
		flex-direction: column;
		align-items: center;
		margin: clamp(40px, 0.64rem, 64px) 0 0;
	}

	.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-list li {
		width: 100%;
		max-width: 100%;
		gap: clamp(16px, 0.24rem, 24px);
	}

	.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-list li .body h3 {
		font-size: clamp(18px, 0.22rem, 22px);
	}

	.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-list li .body h3 span {
		display: block;
		margin: 5px 0 0;
		font-size: clamp(16px, 0.18rem, 18px);
	}

	.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-list li .body p {
		margin: clamp(16px, 0.24rem, 24px) 0 0;
	}

	.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-list li figure img {
		border-radius: 12px;
	}

	.p-page-education .p-page-educationplan .p-page-educationplan-inner {
		padding: 0 15px;
	}

	.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-head .p-page-educationplan-body .p-page-educationplan-heading span {
		font-size: clamp(18px, 0.3rem, 30px);
	}

	.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-head .p-page-educationplan-body .p-page-educationplan-heading h2 {
		font-size: clamp(30px, 0.4rem, 40px);
	}

	.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-head .p-page-educationplan-body p {
		margin: clamp(14px, 0.4rem, 40px) 0 0;
	}

	.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-head .p-page-educationplan-wrap figure {
		max-height: 100%;
	}

	.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-head .p-page-educationplan-wrap figure img {
		border-radius: 0 12px 12px 0;
	}

	.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-list {
		margin: clamp(40px, 0.64rem, 64px) 0 0;
		grid-template-columns: 1fr;
		gap: clamp(24px, 4rem, 40px);
	}

	.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-list li {
		gap: clamp(16px, 0.24rem, 24px);
	}

	.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-list li h3 {
		font-size: clamp(18px, 0.22rem, 22px);
	}

	.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-list li h3 span {
		display: block;
		margin: 5px 0 0;
		font-size: clamp(16px, 0.18rem, 18px);
	}

	.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-list li figure img {
		border-radius: 12px;
	}

	.p-page-interview {
		padding: clamp(60px, 1.2rem, 120px) 0 0;
	}

	.p-page-interview .p-page-interview-inner {
		padding-inline: 15px;
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-head-wrap {
		padding: 0 calc(50vw - 50%) clamp(50px, 0.65rem, 65px) calc(50vw - 50%);
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-head-wrap .p-page-interview-head .p-page-interview-heading {
		padding: clamp(30px, 0.6rem, 60px) clamp(18px, 0.65rem, 65px);
		border-radius: 12px;
		grid-row: 4/8;
		margin-inline: 15px;
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-head-wrap .p-page-interview-head .p-page-interview-heading .profile {
		font-size: clamp(14px, 0.18rem, 18px);
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-mov {
		margin: clamp(40px, 1.1rem, 110px) 0 0;
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-mov .p-page-interview-play {
		width: clamp(248px, 5.4rem, 540px);
		height: clamp(57px, 0.62rem, 62px);
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-content {
		margin: clamp(40px, 1.1rem, 110px) 0 0;
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box:not(:first-child) {
		margin: clamp(40px, 1.5rem, 150px) 0 0;
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box {
		position: relative;
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box .p-page-interview-catch {
		position: absolute;
		top: 50.6666666667vw;
		left: 15px;
		font-size: clamp(22px, 0.42rem, 42px);
		letter-spacing: normal;
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box .p-page-interview-body {
		margin: 0;
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box .p-page-interview-body ul {
		gap: clamp(30px, 0.48rem, 48px);
		margin-inline: 15px;
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box .p-page-interview-body ul li .question {
		letter-spacing: 0.04em;
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-content .box-01 .p-page-interview-body,
  .p-page-interview .p-page-interview-inner .p-page-interview-content .box-02 .p-page-interview-body {
		flex-direction: column-reverse;
		gap: 140px;
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-content .box-01 .p-page-interview-body .p-page-interview-wrap,
  .p-page-interview .p-page-interview-inner .p-page-interview-content .box-02 .p-page-interview-body .p-page-interview-wrap {
		margin: 0;
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-content .box-01 .p-page-interview-body .p-page-interview-wrap figure,
  .p-page-interview .p-page-interview-inner .p-page-interview-content .box-02 .p-page-interview-body .p-page-interview-wrap figure {
		max-height: 100%;
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-content .box-03 .p-page-interview-body {
		flex-direction: column-reverse;
		gap: 140px;
	}

	.p-page-jobfair .p-page-jobfair-heading {
		top: clamp(-90px, -4rem, -40px);
		font-size: clamp(60px, 1.9rem, 190px);
	}

	.p-page-jobfair .p-page-jobfair-content {
		padding: clamp(70px, 1.5rem, 150px) 0 clamp(65px, 1.5rem, 150px);
	}

	.p-page-jobfair .p-page-jobfair-content h2 {
		font-size: clamp(28px, 0.4rem, 40px);
		text-align: center;
	}

	.p-page-jobfair .p-page-jobfair-content p {
		margin: clamp(25px, 0.3rem, 30px) 0 0;
		font-size: clamp(16px, 0.18rem, 18px);
		padding-inline: 15px;
	}

	.p-page-jobfair .p-page-jobfair-content .p-page-jobfair-btn {
		margin: clamp(40px, 0.65rem, 65px) 0 0;
	}

	.p-page-jobtype .p-page-jobtype-inner {
		margin: 0 auto clamp(20px, 0.4rem, 40px);
		padding-inline: 15px;
	}

	.p-page-jobtype .p-page-jobtype-inner p {
		margin: 0 0 clamp(50px, 0.8rem, 80px);
		font-size: clamp(16px, 0.2rem, 20px);
		line-height: 2;
	}

	.p-page-numbers {
		padding: 24px 0 clamp(80px, 1.2rem, 120px);
	}

	.p-page-numbers .p-page-numbers-inner {
		padding: 0 15px;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-head {
		flex-direction: column;
		align-items: flex-start;
		gap: clamp(5px, 2rem, 20px);
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content {
		margin: clamp(40px, 0.6rem, 60px) 0 0;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid {
		grid-template-columns: 1fr;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid:nth-of-type(1) {
		gap: 20px;
		grid-template-rows: auto 1fr 1fr;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 {
		max-width: 767px;
		max-height: clamp(800px, 6.1rem, 610px);
		padding: clamp(40px, 0.48rem, 48px) 20px clamp(40px, 4.4rem, 44px);
		grid-column: 1/2;
		grid-row: 1/2;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group::after {
		top: clamp(24px, 22rem, 220px);
		right: auto;
		left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box p {
		line-height: 2.1428571429;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap {
		width: 315px;
		min-width: 315px;
		margin: clamp(65px, 20rem, 200px) 0 0 100px;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration::before {
		width: clamp(325px, 3.9rem, 390px);
		height: clamp(100px, 1.2rem, 120px);
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration::after {
		bottom: clamp(60px, 0.75rem, 75px);
		left: -55px;
		width: clamp(44px, 0.56rem, 56px);
		height: clamp(230px, 2.77rem, 277px);
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph {
		width: 570px;
		gap: 0 clamp(15px, 0.23rem, 23px);
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph::before {
		bottom: clamp(60px, 0.75rem, 75px);
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph::after {
		bottom: clamp(60px, 0.75rem, 75px);
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el .p-page-numbers-number {
		font-size: clamp(28px, 0.35rem, 35px);
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el .label {
		min-width: 3em;
		font-size: clamp(30px, 0.38rem, 38px);
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el .label span {
		font-size: clamp(16px, 0.2rem, 20px);
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .bar span {
		width: 66px;
		border-radius: 8px 8px 0 0;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el-01 .bar span {
		height: 14.9333333333vw;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el-02 .bar span {
		height: 14.1333333333vw;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el-03 .bar span {
		height: 26.6666666667vw;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el-04 .bar span {
		height: 40vw;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph .el-05 .bar span {
		height: 60.5333333333vw;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .results {
		width: 210px;
		font-size: clamp(53px, 0.65rem, 65px);
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .results .unit {
		font-size: clamp(20px, 0.25rem, 250px);
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-02 {
		max-height: 300px;
		grid-column: 1/2;
		grid-row: 2/3;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-02 .p-page-numbers-group::after {
		top: clamp(52px, 11.4rem, 114px);
		right: clamp(25px, 0.44rem, 44px);
		width: clamp(79px, 0.88rem, 88px);
		height: clamp(96px, 1.06rem, 106px);
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-03 {
		max-height: 300px;
		grid-column: 1/2;
		grid-row: 3/4;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-03 .p-page-numbers-group::after {
		bottom: clamp(25px, 0.3rem, 30px);
		left: clamp(25px, 0.3rem, 30px);
		width: clamp(94px, 1.12rem, 112px);
		height: clamp(111px, 1.33rem, 133px);
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-05 .p-page-numbers-group::after {
		bottom: clamp(20px, 0.4rem, 40px);
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-06 .p-page-numbers-group::after {
		width: clamp(103px, 1.15rem, 115px);
		height: clamp(123px, 1.37rem, 137px);
	}

	.p-page-philosophy .p-page-philosophy-wrap {
		position: relative;
	}

	.p-page-philosophy .p-page-philosophy-wrap .p-page-philosophy-bg {
		width: 101.5873015873%;
		margin: 0 calc(50% - 50vw) 0 auto;
		border-radius: 12px 0 0 12px;
	}

	.p-page-philosophy .p-page-philosophy-wrap .p-page-philosophy-bg .p-page-philosophy-content {
		position: relative;
		flex-direction: column-reverse;
		margin: 0;
		padding: 74.6666666667vw 0 55px 15px;
	}

	.p-page-philosophy .p-page-philosophy-wrap .p-page-philosophy-bg .p-page-philosophy-content .p-page-philosophy-list {
		margin: 30px 0 0;
	}

	.p-page-philosophy .p-page-philosophy-wrap .p-page-philosophy-bg .p-page-philosophy-content .p-page-philosophy-list .p-page-philosophy-item .p-page-philosophy-heading span {
		font-size: clamp(18px, 0.3rem, 30px);
	}

	.p-page-philosophy .p-page-philosophy-wrap .p-page-philosophy-bg .p-page-philosophy-content .p-page-philosophy-list .p-page-philosophy-item .p-page-philosophy-heading h3 {
		font-size: clamp(32px, 0.4rem, 40px);
	}

	.p-page-philosophy .p-page-philosophy-wrap .p-page-philosophy-bg .p-page-philosophy-content .p-page-philosophy-list .p-page-philosophy-item p {
		margin: clamp(30px, 0.4rem, 40px) 0 0;
		font-size: 1.6rem;
		line-height: 1.5714285714;
	}

	.p-page-philosophy .p-page-philosophy-wrap .p-page-philosophy-bg .p-page-philosophy-content .p-page-philosophy-img img {
		border-radius: 12px;
	}

	.p-page-philosophy .p-page-philosophy-wrap .p-page-philosophy-img {
		position: absolute;
		top: -40px;
		border-radius: 12px;
	}

	.p-page-philosophy .p-page-philosophy-wrap .p-page-philosophy-img img {
		width: 83.4666666667vw;
		height: 83.4666666667vw;
		border-radius: 12px;
	}

	.p-page-recruit {
		padding: 40px 0 clamp(100px, 2.4rem, 240px);
		background: linear-gradient(180deg, #fff 0%, #fff 3%, #f8f8f2 3%, #f8f8f2 97%, #fff 97%, #fff 100%);
	}

	.p-page-recruit .p-page-recruit-inner {
		padding: 0 15px;
	}

	.p-page-recruit .p-page-recruit-inner .p-page-recruit-table {
		margin: clamp(24px, 0.4rem, 40px) 0 0;
	}

	.p-page-recruit .p-page-recruit-inner .p-page-recruit-table table tbody tr {
		display: block;
	}

	.p-page-recruit .p-page-recruit-inner .p-page-recruit-table table tbody tr th,
  .p-page-recruit .p-page-recruit-inner .p-page-recruit-table table tbody tr td {
		display: block;
		border: none;
	}

	.p-page-recruit .p-page-recruit-inner .p-page-recruit-table table tbody tr th {
		width: auto;
		padding: clamp(12px, 0.24rem, 24px);
	}

	.p-page-recruit .p-page-recruit-inner .p-page-recruit-table table tbody tr td {
		padding: clamp(15px, 0.24rem, 24px) clamp(10px, 0.54rem, 54px);
		font-size: clamp(14px, 0.18rem, 18px);
	}

	.p-page-recruit .p-page-recruit-inner .p-page-recruit-btn {
		margin: clamp(40px, 0.8rem, 80px) 0 0;
	}

	.p-page-works {
		padding: clamp(35px, 0.4rem, 40px) 0 0;
	}

	.p-page-works .p-page-works-head nav ul {
		flex-direction: column;
		align-items: center;
		gap: clamp(15px, 0.3rem, 30px);
	}

	.p-page-works .p-page-works-head nav ul li a {
		width: clamp(305px, 2.8rem, 280px);
		border-radius: 26.4vw;
	}

	.p-page-works .p-page-works-head .p-page-works-desc {
		position: relative;
		height: clamp(600px, 87rem, 870px);
		max-height: clamp(600px, 87rem, 870px);
		margin: 200px 0 0;
		background-image: url(/recruit/img/works/bg_works_sp.webp);
	}

	.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap {
		position: absolute;
		top: -170px;
		left: 50%;
		flex-direction: column-reverse;
		width: 92%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		gap: 100px;
	}

	.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body {
		width: 100%;
	}

	.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-heading span {
		font-size: clamp(80px, 1.5rem, 150px);
	}

	.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-btn {
		margin: clamp(40px, 0.7rem, 70px) 0 0;
	}

	.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-img {
		width: 80%;
		max-width: 300px;
		margin-inline: auto;
	}

	.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-img span {
		top: auto;
		bottom: -50px;
		left: 50%;
		white-space: nowrap;
		-ms-writing-mode: lr-tb;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		-webkit-writing-mode: horizontal-tb;
		writing-mode: horizontal-tb;
	}

	.p-page-works .p-page-oneday {
		margin: clamp(70px, 2rem, 200px) 0 0;
		padding: 0 0 clamp(52px, 0.8rem, 80px);
	}

	.p-page-works .p-page-oneday .p-page-group {
		flex-direction: column;
		align-items: flex-start;
	}

	.p-page-works .p-page-oneday .p-page-group .p-page-heading::before {
		width: 62.9139072848%;
	}

	.p-page-works .p-page-oneday .p-page-group .p-page-heading h2 {
		font-size: clamp(36px, 0.56rem, 56px);
	}

	.p-page-works .p-page-oneday .p-page-group p {
		font-size: clamp(16px, 0.18rem, 18px);
		line-height: 1.5625;
	}

	.p-page-works .p-page-oneday .time-table {
		margin: clamp(50px, 0.6rem, 60px) calc(50% - 50vw) 0 0;
		border-radius: 12px 0 0 12px;
	}

	.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box:before {
		top: 125px;
	}

	.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-title-type {
		flex-direction: column;
		align-items: flex-start;
		margin: 0 0 clamp(20px, 0.4rem, 40px);
		gap: 0;
	}

	.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-title-type .en {
		font-size: clamp(45px, 0.64rem, 64px);
	}

	.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-item:not(:last-child) {
		margin: 36px 0 clamp(30px, 4rem, 40px);
	}

	.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-item {
		display: block;
		padding: 0 0 0 15px;
	}

	.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-item::before {
		top: clamp(1px, 3.2vw, 12px);
	}

	.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-item:last-of-type::after {
		top: 20px;
	}

	.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-item .exp {
		margin: 0 0 20px;
	}

	.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-item .exp h4 {
		font-size: 20px;
	}

	.p-page-works .p-page-careerplan {
		margin: clamp(52px, 0.8rem, 80px) 0 0;
		padding: clamp(52px, 0.8rem, 80px) 0;
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap {
		padding: clamp(48px, 1.2rem, 120px) clamp(30px, 1.2rem, 120px) clamp(64px, 1.2rem, 120px) calc(50vw - 50%);
		border-radius: 0 12px 12px 0;
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap::after {
		bottom: clamp(-12px, -3rem, -30px);
		left: clamp(8px, 0.4rem, 40px);
		font-size: clamp(70px, 1.9rem, 190px);
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content {
		flex-direction: column;
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-more-btn {
		margin: 40px auto 0;
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-more-btn a {
		border-radius: 12px;
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-head {
		gap: clamp(40px, 0.72rem, 72px);
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body {
		margin: 24px 0 0;
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item .tab-contents-group .tab-contents-box .tab-contents-number {
		font-size: clamp(100px, 1.2rem, 120px);
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item:nth-of-type(1) .tab-contents-group::after {
		top: clamp(52px, 11.4rem, 114px);
		right: clamp(25px, 0.44rem, 44px);
		width: clamp(79px, 0.88rem, 88px);
		height: clamp(96px, 1.06rem, 106px);
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item:nth-of-type(2) .tab-contents-group::after {
		bottom: clamp(25px, 0.3rem, 30px);
		left: clamp(25px, 0.3rem, 30px);
		width: clamp(94px, 1.12rem, 112px);
		height: clamp(111px, 1.33rem, 133px);
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item:nth-of-type(3) .tab-contents-group::after {
		bottom: clamp(20px, 0.4rem, 40px);
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-contents .tab-contents-item:nth-of-type(4) .tab-contents-group::after {
		width: clamp(103px, 1.15rem, 115px);
		height: clamp(123px, 1.37rem, 137px);
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-menu {
		margin: clamp(24px, 0.4rem, 40px) 0 0;
		grid-template-columns: 1fr;
		gap: clamp(16px, 0.24rem, 24px);
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-menu li .tab-btn {
		border-radius: 12px;
	}

	.p-thanks {
		padding: 40px 0 clamp(80px, 1.2rem, 120px);
	}

	.p-thanks .p-thanks-inner {
		padding: 0 15px;
	}

	.p-thanks .p-thanks-inner .p-thanks-txt {
		font-size: 1.6rem;
		text-align: left;
	}

	.p-thanks .p-thanks-inner .p-thanks-flow .p-thanks-content .p-thanks-heading {
		gap: 0;
	}

	.p-thanks .p-thanks-inner .p-thanks-flow .p-thanks-content .p-thanks-heading span {
		font-size: clamp(18px, 0.3rem, 30px);
	}

	.p-thanks .p-thanks-inner .p-thanks-flow .p-thanks-content .p-thanks-heading h2 {
		font-size: clamp(24px, 0.4rem, 40px);
	}

	.p-thanks .p-thanks-inner .p-thanks-flow .p-thanks-content p {
		margin: clamp(30px, 0.4rem, 40px) 0 0;
		text-align: left;
	}

	.p-thanks .p-thanks-inner .p-thanks-flow .p-thanks-content .p-thanks-btn {
		margin: clamp(40px, 0.6rem, 60px) 0 0;
	}

	.p-topmessage-wrap {
		padding: clamp(14px, 0.24rem, 24px) 0 0;
		background: linear-gradient(180deg, #fff 0, #fff 8%, #f8f8f2 8%, #f8f8f2 100%);
	}

	.p-topmessage-wrap .p-topmessage-heading {
		font-size: clamp(56px, 1.5rem, 150px);
	}

	.p-topmessage h2 {
		margin: 0 0 60px;
		font-size: clamp(16px, 0.4rem, 40px);
	}

	.p-topmessage .p-topmessage-group {
		position: relative;
	}

	.p-topmessage .p-topmessage-group .p-topmessage-bg {
		width: 101.5873015873%;
		border-radius: 0 12px 12px 0;
	}

	.p-topmessage .p-topmessage-group .p-topmessage-bg .p-topmessage-content {
		position: relative;
		flex-direction: column-reverse;
		margin: 0;
		padding: 74.6666666667vw 15px 55px 0;
	}

	.p-topmessage .p-topmessage-group .p-topmessage-bg .p-topmessage-content .p-topmessage-body {
		margin: 30px 0 0;
	}

	.p-topmessage .p-topmessage-group .p-topmessage-bg .p-topmessage-content .p-topmessage-body .p-topmessage-lead {
		font-size: clamp(32px, 0.56rem, 56px);
	}

	.p-topmessage .p-topmessage-group .p-topmessage-bg .p-topmessage-content .p-topmessage-body .p-topmessage-txt {
		margin: clamp(40px, 0.56rem, 56px) 0 0;
	}

	.p-topmessage .p-topmessage-group .p-topmessage-bg .p-topmessage-content .p-topmessage-body .p-topmessage-txt p {
		font-size: clamp(14px, 0.16rem, 16px);
	}

	.p-topmessage .p-topmessage-group .p-topmessage-bg .p-topmessage-content .p-topmessage-body .p-topmessage-txt p:last-child {
		margin: clamp(38px, 0.6rem, 60px) 0 0;
	}

	.p-topmessage .p-topmessage-group .p-topmessage-bg .p-topmessage-content .p-topmessage-img img {
		border-radius: 12px;
	}

	.p-topmessage .p-topmessage-group .p-topmessage-img {
		position: absolute;
		top: -40px;
		border-radius: 12px;
	}

	.p-topmessage .p-topmessage-group .p-topmessage-img img {
		width: 83.4666666667vw;
		height: 83.4666666667vw;
		border-radius: 12px;
	}

	.l-footer {
		padding: clamp(80px, 1rem, 100px) 0 0;
	}

	.l-footer .l-footer-inner {
		flex-direction: column;
	}

	.l-footer .l-footer-inner .l-footer-nav {
		margin: 80px 0 0;
	}

	.l-footer .l-footer-inner .l-footer-nav .l-footer-upper {
		margin: 0 0 clamp(28px, 0.7rem, 70px);
	}

	.l-footer .l-footer-inner .l-footer-nav .l-footer-list {
		gap: 0 26px;
	}

	.l-footer .l-footer-inner .l-footer-nav .l-footer-list .l-footer-item:first-child {
		flex: 1;
		width: auto;
	}

	.l-footer .l-footer-inner .l-footer-nav .l-footer-list .l-footer-item {
		flex: 1;
		width: 50%;
	}

	.l-footer .l-footer-inner .l-footer-nav .l-footer-list .l-footer-item > a {
		margin: 0 0 10px;
		font-size: clamp(15px, 0.18rem, 18px);
	}

	.l-footer .l-footer-inner .l-footer-nav .l-footer-sub {
		font-size: clamp(13px, 0.14rem, 14px);
	}

	.l-footer .l-footer-inner .l-footer-nav .l-footer-sub li {
		padding: 0;
		text-indent: -1em;
	}

	.l-footer .l-footer-copyright {
		padding: clamp(82px, 1.2rem, 120px) 30px 30px;
	}

	.l-header {
		height: 78px;
	}
}

@media screen and (min-width: 768px) and (max-width: 1279px) {
	.u-hide-md {
		display: none !important;
	}

	.c-cta-environment .c-cta-environment-head p {
		flex: 0 0 44.56606724%;
	}

	.c-cta-environment .c-cta-environment-list {
		margin: clamp(40px, 0.8rem, 80px) 0 0;
	}

	.c-cta .c-cta-list .c-cta-item a {
		height: 315px;
		padding: clamp(40px, 1.04rem, 104px) clamp(30px, 1.2rem, 120px);
	}

	.c-heading span {
		font-size: 10.4166666667vw;
	}

	.c-heading h2 {
		font-size: 2.7777777778vw;
	}

	.c-jobtype ul li a .c-jobtype-body .c-jobtype-type .ja {
		font-size: clamp(40px, 0.56rem, 56px);
	}

	.p-interview .p-interview-wrap .p-interview-head .p-interview-heading h2 {
		font-size: 2.7777777778vw;
	}

	.p-interview .p-interview-wrap .p-interview-head .p-interview-heading span {
		font-size: 10.4166666667vw;
	}

	.p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .next,
  .p-interview .p-interview-wrap .p-interview-parts .p-interview-btns .prev {
		font-size: 1.25vw;
	}

	.p-interview .p-interview-wrap .p-interview-container {
		margin: 0;
		padding: 370px 0 0;
		grid-column: 1/2;
		grid-row: 2/3;
	}

	.p-interview .p-interview-wrap .p-interview-container .c-slider ul li .p-interview-catch {
		top: -165px;
		left: 25%;
		width: clamp(500px, 6.8rem, 680px);
		max-width: clamp(500px, 6.8rem, 680px);
	}

	.p-interview .p-interview-wrap .p-interview-container .c-slider ul li .p-interview-catch .fukidashi {
		width: clamp(500px, 6.8rem, 680px);
		max-width: clamp(500px, 6.8rem, 680px);
	}

	.p-interview .p-interview-wrap .p-interview-container .c-slider ul li .p-interview-catch .fukidashi .comment {
		font-size: 1.6666666667vw;
	}

	.p-kv .p-kv-container::after {
		width: 83.3333333333vw;
		height: 15.625vw;
	}

	.p-page-benefit {
		padding: 24px 0 0;
	}

	.p-page-benefit .p-page-benefit-head .c-heading-col h2 {
		font-size: 2.7777777778vw;
	}

	.p-page-benefit .p-page-benefit-head .c-heading-col span {
		font-size: 10.4166666667vw;
	}

	.p-page-benefit .p-page-benefit-head .p-page-benefit-wrap {
		align-items: flex-start;
	}

	.p-page-benefit .p-page-benefit-head .p-page-benefit-wrap figure {
		flex: auto;
		margin: 0 4.1666666667vw 0 0;
	}

	.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-head .p-page-skill-body p {
		margin: 2.7777777778vw 0 0;
	}

	.p-page-education .p-page-skill .p-page-skill-inner .p-page-skill-head .p-page-skill-wrap {
		flex: auto;
	}

	.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-head .p-page-educationplan-body .p-page-educationplan-heading h2 span {
		display: inline-block;
	}

	.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-head .p-page-educationplan-body p {
		margin: 2.7777777778vw 0 0;
	}

	.p-page-education .p-page-educationplan .p-page-educationplan-inner .p-page-educationplan-head .p-page-educationplan-wrap {
		flex: auto;
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-head-wrap .p-page-interview-head .p-page-interview-heading {
		max-width: 700px;
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box:not(:first-child) {
		margin: clamp(80px, 1.5rem, 150px) 0 0;
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-content .p-page-interview-box .p-page-interview-catch {
		font-size: clamp(26px, 0.42rem, 42px);
	}

	.p-page-interview .p-page-interview-inner .p-page-interview-content .box-01 .p-page-interview-body .p-page-interview-wrap figure,
  .p-page-interview .p-page-interview-inner .p-page-interview-content .box-02 .p-page-interview-body .p-page-interview-wrap figure {
		max-height: 300px;
	}

	.p-page-jobfair .p-page-jobfair-heading {
		top: -6.25vw;
		font-size: 13.1944444444vw;
	}

	.p-page-jobfair .p-page-jobfair-content {
		padding: 17.3611111111vw 0 6.9444444444vw;
	}

	.p-page-jobfair .p-page-jobfair-content p {
		padding-inline: 30px;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group::after {
		top: 1.6666666667vw;
		right: 1.6666666667vw;
		width: 11.25vw;
		height: 9.8611111111vw;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration::before {
		top: -2.7777777778vw;
		width: 27.0833333333vw;
		height: 8.3333333333vw;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration::after {
		bottom: 5.2083333333vw;
		width: 3.8888888889vw;
		height: 19.2361111111vw;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph {
		gap: 0 1.5972222222vw;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph::before {
		bottom: 5.2083333333vw;
		height: 18.0555555556vw;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .graph::after {
		bottom: 5.2083333333vw;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .results {
		top: -2.7777777778vw;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .item-01 .p-page-numbers-group .p-page-numbers-box .graph-wrap .decoration .results .unit {
		font-size: 1.7361111111vw;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .p-page-numbers-item .p-page-numbers-group .p-page-numbers-box .p-page-numbers-title span {
		font-size: 1.25vw;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .p-page-numbers-item .p-page-numbers-group .p-page-numbers-box .p-page-numbers-title h3 {
		font-size: 1.8055555556vw;
	}

	.p-page-numbers .p-page-numbers-inner .p-page-numbers-content .p-page-numbers-grid .p-page-numbers-item .p-page-numbers-group .p-page-numbers-box .p-page-numbers-number .unit {
		font-size: 2.5vw;
	}

	.p-page-philosophy .p-page-philosophy-wrap .p-page-philosophy-bg .p-page-philosophy-content {
		justify-content: center;
		gap: 20px;
	}

	.p-page-philosophy .p-page-philosophy-wrap .p-page-philosophy-bg .p-page-philosophy-content .p-page-philosophy-list .p-page-philosophy-item p {
		font-size: 1.6rem;
	}

	.p-page-recruit {
		padding: 40px 0 clamp(170px, 2.4rem, 240px);
	}

	.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-body .p-page-works-heading span {
		font-size: 10.4166666667vw;
	}

	.p-page-works .p-page-works-head .p-page-works-desc .p-page-works-wrap .p-page-works-img span {
		left: -3em;
	}

	.p-page-works .p-page-oneday {
		margin: 17.3611111111vw 0 0;
	}

	.p-page-works .p-page-oneday .p-page-group {
		align-items: center;
	}

	.p-page-works .p-page-oneday .p-page-group .p-page-heading::before {
		width: 59.2%;
	}

	.p-page-works .p-page-oneday .p-page-group .p-page-heading h2 {
		font-size: 3.8888888889vw;
	}

	.p-page-works .p-page-oneday .p-page-group p {
		flex: 0 0 55%;
	}

	.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box:before {
		top: 145px;
	}

	.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-item {
		margin: 32px 0 0;
		grid-template-columns: 70px 39.1111111111% 1fr;
	}

	.p-page-works .p-page-oneday .time-table .time-table-wrap .time-table-box .time-table-item::before {
		top: 13px;
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap::after {
		font-size: 13.1944444444vw;
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content {
		gap: 15px;
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-head h2 {
		text-align: left;
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-menu {
		gap: clamp(16px, 0.24rem, 24px);
	}

	.p-tab-numbers .p-tab-numbers-inner .p-tab-numbers-wrap .p-tab-numbers-content .p-tab-numbers-body .tab-menu li .tab-btn {
		width: 228px;
		min-width: 228px;
		max-width: 268px;
		font-size: clamp(16px, 0.2rem, 20px);
	}

	.p-topmessage-wrap {
		background: linear-gradient(180deg, #fff 0, #fff 7%, #f8f8f2 7%, #f8f8f2 100%);
	}

	.p-topmessage-wrap .p-topmessage-heading {
		font-size: 10.4166666667vw;
	}

	.p-topmessage .p-topmessage-group .p-topmessage-bg .p-topmessage-content {
		justify-content: center;
		padding: 0 clamp(20px, 0.9rem, 90px) 70px 0;
		gap: 20px;
	}

	.p-topmessage .p-topmessage-group .p-topmessage-bg .p-topmessage-content .p-topmessage-body .p-topmessage-lead {
		font-size: 3.8888888889vw;
	}
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
	body {
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
}