/*
 * 個別アニメーション
 */

[data-sa=fadeInUp] {
	--sa-fadeInUp-translate-default: var(--sa-fadeInUp-translate-override, 0 100px);
	opacity: var(--sa-fadeInUp-opacity, 0);
	translate: var(--sa-fadeInUp-translate, var(--sa-fadeInUp-translate-default));
	transition-property: opacity, translate;
	transition-duration: var(--sa-fadeInUp-duration-override, var(--sec));
}

[data-sa=fadeInUp].is-show {
	--sa-fadeInUp-opacity: 1;
	--sa-fadeInUp-translate: none;
}

/*
 * グループ
 */

[data-sa-trigger*=fadeInUp].is-show {
	--sa-fadeInUp-group-opacity: 1;
	--sa-fadeInUp-group-translate: none;
}

[data-sa-group*=fadeInUp] {
	--sa-fadeInUp-group-translate-default: var(--sa-fadeInUp-group-translate-override, 0 100px);
	opacity: var(--sa-fadeInUp-group-opacity, 0);
	translate: var(--sa-fadeInUp-group-translate, var(--sa-fadeInUp-group-translate-default));
	transition-property: opacity, translate;
	transition-duration: var(--sa-fadeInUp-group-duration-override, var(--sec));
}

/*
 * 共通keyframes
 */

.l-container {
	min-width: var(--min-device-width);
}

.l-inner {
	max-width: var(--site-width);
	margin-inline: auto;
	padding-inline: var(--space-inline);
}

.l-inner._fluid {
	max-width: none;
}

.l-inner._max {
	max-width: 1600px;
}

.l-inner._wide {
	max-width: var(--site-width-wide);
}

.l-inner._no-padding {
	padding-inline: 0;
}

.l-inner__expand {
	margin-inline: calc(var(--site-gap) * -1);
}

.l-inner__expand._wide {
	margin-inline: calc(var(--site-gap-wide) * -1);
}

.l-section {
	--l-section-gap-default: 80px;
	--l-section-gap: var(--l-section-gap-override, var(--l-section-gap-default));
	display: flex;
	flex-direction: column;
	row-gap: var(--l-section-gap);
}

.l-padding:where(._top) {
	-webkit-padding-before: var(--space-block);
	padding-block-start: var(--space-block);
}

.l-padding:where(._bottom) {
	-webkit-padding-after: var(--space-block);
	padding-block-end: var(--space-block);
}

.l-media { 
	--l-media-gap-default: 20px 40px;
	--l-media-image-position-default: 0px;
	--l-media-gap: var(--l-media-gap-override, var(--l-media-gap-default));
	--l-media-image-position: var(--l-media-image-position-override, var(--l-media-image-position-default));
	gap: var(--l-media-gap);
}

.l-media__image {
	grid-area: l-media-image;
}

.l-media__detail {
	grid-area: l-media-detail;
}

.l-media__img {
	width: 100%;
}

.l-separate {
	--l-separate-main-default: 58%;
	--l-separate-main: var(--l-separate-main-override, var(--l-separate-main-default));
	display: grid;
	grid-template-columns: 1fr var(--l-separate-main);
	-moz-column-gap: 10px;
	column-gap: 10px;
}

.l-separate__head {
	grid-area: 1/1/2/2;
}

.l-separate__body {
	grid-area: 1/2/2/3;
}

.l-broken { 
	display: grid;
	--l-broken-distance-default: -70px;
	--l-broken-column-gap-default: 35px;
	--l-broken-row-gap-default: 40px;
	--l-broken-image-hight-default: 600px;
	--l-broken-distance: var(--l-broken-distance-override, var(--l-broken-distance-default));
	--l-broken-column-gap: var(--l-broken-column-gap-override, var(--l-broken-column-gap-default));
	--l-broken-row-gap: var(--l-broken-row-gap-override, var(--l-broken-row-gap-default));
	--l-broken-image-hight: var(--l-broken-image-hight-override, var(--l-broken-image-hight-default));
}

.mw_wp_form.mw_wp_form_confirm .mw_confirm-hidden {
	display: none;
}

.mw_wp_form:not(.mw_wp_form_confirm) .mw_confirm-show {
	display: none;
}

/* pagenavi */

.wp-pagenavi {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 15px 45px;
}

.wp-pagenavi a,
.wp-pagenavi span {
	position: relative;
	isolation: isolate;
	display: block;
	-webkit-padding-start: 0.08em;
	padding-inline-start: 0.08em;
	-webkit-border-after: 2px solid transparent;
	border-block-end: 2px solid transparent;
	font-weight: 500;
	font-size: 1.875rem;
	line-height: 1;
	--letter-spacing: 0.08em;
	text-decoration: none;
	transition: color var(--sec);
}

.wp-pagenavi a::before,
.wp-pagenavi span::before {
	content: "";
	position: absolute;
	z-index: -10;
	inset: -10px;
}

.wp-pagenavi .page:focus-visible {
	color: var(--color-accent2);
}

.wp-pagenavi .current {
	color: var(--color-accent2);
	border-color: var(--color-accent2);
}

.wp-pagenavi .extend {
	border: 0;
	translate: 0 calc(-50% + 0.1666666667em);
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
	width: 38px;
	aspect-ratio: 1/1;
	border-radius: 9999px;
	color: transparent;
	font-size: 0;
	background-color: var(--color-dark);
	background-repeat: no-repeat;
	background-position: 45% center;
	background-image: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="11.175" height="11.175" viewBox="0 0 11.175 11.175"><path d="M7.4,7.4H0V0" transform="translate(5.234 10.821) rotate(-135)" fill="none" stroke="%23fff" stroke-width="1"/></svg>');
}

.wp-pagenavi .previouspostslink {
	scale: -1 1;
}

:where(.wp-block-post-content,
.wp-gutenberg) {
	font-size: 1rem;
	line-height: 2;
	--wp--preset--font-size--small: rem(14);
	--wp--preset--font-size--medium: rem(16);
	--wp--preset--font-size--large: rem(18);
	--wp--preset--font-size--x-large: rem(20);
}

:where(.wp-block-post-content,
.wp-gutenberg) a:not([class]) {
	text-decoration: underline;
}

:where(.wp-block-post-content,
.wp-gutenberg) a:not([class]):focus-visible {
	text-decoration: none;
}

:where(.wp-block-post-content,
.wp-gutenberg) :where(p,
ol,
ul,
table,
[class*="wp-block"]):not(:last-child) {
	margin-bottom: 40px;
}

.wp-block-heading {
	margin-bottom: 40px;
	border-bottom: 2px solid;
	font-weight: 700;
}

h2.wp-block-heading {
	font-size: 1.5rem;
}

h3.wp-block-heading {
	font-size: 1.375rem;
}

h4.wp-block-heading {
	font-size: 1.25rem;
}

h5.wp-block-heading {
	font-size: 1.125rem;
}

h6.wp-block-heading {
	font-size: 1rem;
}

:where(.wp-gutenberg :is(ul,
ol):not([class])),
.wp-block-list {
	padding-left: 1.4em;
}

:where(.wp-gutenberg ul:not([class])),
ul.wp-block-list {
	list-style-type: disc;
}

:where(.wp-gutenberg ol:not([class])),
ol.wp-block-list {
	list-style-type: decimal;
}

:where(.wp-gutenberg li:not([class])),
.wp-block-list-item {
	list-style-type: inherit;
}

:where(.wp-block-post-content,
.wp-gutenberg) :is(th,
td) {
	padding: 5px;
	border: 1px solid;
	text-align: left;
}

.c-arrow {
	flex-shrink: 0;
	width: 50px;
	aspect-ratio: 1/1;
	display: grid;
	place-content: center;
	border: 1px solid var(--color-light);
	border-radius: 9999px;
}

.c-arrow__icon {
	display: inline-grid;
	padding-inline: 5px;
	overflow: hidden;
}

.c-arrow__icon::before,
.c-arrow__icon::after {
	content: "";
	display: block;
	grid-area: 1/1/2/2;
	width: 25px;
	aspect-ratio: var(--icon-arrow-aspect);
	-webkit-animation-duration: var(--sec);
	animation-duration: var(--sec);
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	background-repeat: no-repeat;
	background-position: center center;
	background-image: var(--icon-arrow);
	background-size: 100% 100%;
}

.c-arrow__icon::before {
	-webkit-animation-name: c-arrow-before1;
	animation-name: c-arrow-before1;
}

.c-arrow__icon::after {
	-webkit-animation-name: c-arrow-after1;
	animation-name: c-arrow-after1;
}

.c-arrow._dark {
	filter: invert(1);
}

.c-arrow._large {
	width: 80px;
}

.c-arrow._large .c-arrow__icon::before,
.c-arrow._large .c-arrow__icon::after {
	width: 42px;
	aspect-ratio: var(--icon-arrow-large-aspect);
	background-image: var(--icon-arrow-large);
}

.c-arrow._small {
	width: 38px;
}

.c-arrow._small .c-arrow__icon::before,
.c-arrow._small .c-arrow__icon::after {
	width: 19px;
}

.c-arrow_wrapper:focus-visible .c-arrow__icon::before {
	-webkit-animation-name: c-arrow-before2;
	animation-name: c-arrow-before2;
}

.c-arrow_wrapper:focus-visible .c-arrow__icon::after {
	-webkit-animation-name: c-arrow-after2;
	animation-name: c-arrow-after2;
}

.c-bg {
	position: relative;
	isolation: isolate;
}

.c-bg._base {
	background-color: var(--color-base);
}

.c-bg._base-light {
	background-color: var(--color-base-light);
}

.c-bg._outline {
	background-color: var(--color-outline);
}

.c-bg._primary {
	background-color: var(--color-primary);
}

.c-bg._primary-grad1 {
	background-color: var(--color-primary-grad1);
}

.c-bg._primary-grad2 {
	background-color: var(--color-primary-grad2);
}

.c-bg._accent {
	background-color: var(--color-accent);
}

.c-bg._accent2 {
	background-color: var(--color-accent2);
}

.c-bg._attention {
	background-color: var(--color-attention);
}

.c-bg._light {
	background-color: var(--color-light);
}

.c-bg._dark {
	background-color: var(--color-dark);
}

.c-bg._dark2 {
	background-color: var(--color-dark2);
}

.c-bg._bg-base {
	background-color: var(--color-bg-base);
}

.c-bg._bg-dark {
	background-color: var(--color-bg-dark);
}

.c-bg._bg-dark2 {
	background-color: var(--color-bg-dark2);
}

.c-bg._bg-dark3 {
	background-color: var(--color-bg-dark3);
}

.c-bg._bg-dark4 {
	background-color: var(--color-bg-dark4);
}

.c-bg._bg {
	background-color: var(--color-bg);
}

.c-bg._bg2 {
	background-color: var(--color-bg2);
}

.c-bg._border {
	background-color: var(--color-border);
}

.c-bg._border2 {
	background-color: var(--color-border2);
}

.c-bg._text_light {
	color: var(--color-light);
}

.c-bg__img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	z-index: -10;
	pointer-events: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}



.c-bread {
	position: relative;
	padding-block: 40px var(--space-block);
	line-height: var(--line-height-normal);
	z-index: 500;
}

.c-bread:first-child {
	--c-bread-padding: 40px;
	-webkit-padding-before: calc(var(--header-size) + var(--c-bread-padding));
	padding-block-start: calc(var(--header-size) + var(--c-bread-padding));
}

.c-bread__list {
	display: flex;
	flex-wrap: wrap;
	gap: 5px 10px;
	word-break: break-all;
}

.c-bread__list > li {
	display: inline-flex;
	-moz-column-gap: 10px;
	column-gap: 10px;
}

.c-bread__list > li + li:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 1px;
	background-color: currentColor;
	translate: 0 0.75rem;
}

.c-bread__list a {
	color: var(--color-base-light);
	text-decoration: underline;
}

.c-bread__list a:focus-visible {
	text-decoration: none;
}

.c-button {
	position: relative;
	isolation: isolate;
	display: inline-grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	-moz-column-gap: 5px;
	column-gap: 5px;
	padding: 10px 32px;
	color: var(--color-light);
	font-weight: 600;
	text-decoration: none;
	line-height: var(--line-height-normal);
	overflow: hidden;
}

.c-button_wrapper {
	display: flex;
	flex-wrap: wrap;
	gap: 20px 40px;
}

.c-button_wrapper._mt {
	-webkit-margin-before: 40px;
	margin-block-start: 40px;
}

.c-button_wrapper._center {
	justify-content: center;
}

.c-button::before {
	content: "";
}

.c-button::after {
	justify-self: end;
}

.c-button._wide {
	padding-inline: 23px;
}

.c-button._w_fluid {
	width: 100%;
}

.c-button._w_regular {
	width: 320px;
}

.c-button._h_regular {
	height: 90px;
}

.c-button._c_primary-grad {
	--c-button-before-bg-color: linear-gradient(
  	-155deg,
  	var(--color-dark) 0%,
  	var(--color-dark2) 120%
  );
	--c-button-after-bg-color: linear-gradient(
  	-155deg,
  	var(--color-primary-grad1) 0%,
  	var(--color-primary-grad2) 100%
  );
}

.c-button._arrow_next::after {
	content: "";
	display: block;
	width: 26.286px;
	aspect-ratio: var(--icon-arrow-aspect);
	translate: 0 -2px;
	background-repeat: no-repeat;
	background-position: center center;
	background-image: var(--icon-arrow);
	background-size: 100% 100%;
}

.c-button__title {
	-webkit-padding-end: 10px;
	padding-inline-end: 10px;
}

.c-button__title::before,
.c-button__title::after {
	content: "";
	position: absolute;
	z-index: -10;
	inset: 0;
	transition-property: translate;
	transition-duration: var(--sec);
}

.c-button__title::before {
	background: var(--c-button-before-bg-color, #000);
	translate: var(--c-button-before-bg-position, 0 0);
}

.c-button__title::after {
	background: var(--c-button-after-bg-color, #000);
	translate: var(--c-button-after-bg-position, -100% 0);
}

.c-button:focus-visible {
	--c-button-before-bg-position: 100% 0;
	--c-button-after-bg-position: 0 0;
}

.c-button2 {
	display: inline-flex;
	align-items: center;
	-moz-column-gap: 20px;
	column-gap: 20px;
}

.c-button2_wrapper._mt {
	-webkit-margin-before: 30px;
	margin-block-start: 30px;
}

.c-button2_wrapper._center {
	text-align: center;
}

.c-button2__text {
	font-size: 1.125rem;
}

.c-category {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	font-size: 1rem;
	line-height: var(--line-height-normal);
	--c-category-color: var(--color-base);
	--c-category-border-color: var(--color-base-light);
	--c-category-bg-color: transparent;
}

.c-category._type_new {
	--c-category-color: var(--color-light);
	--c-category-border-color: var(--color-primary);
	--c-category-bg-color: var(--color-primary);
}

.c-category._type_mid {
	--c-category-color: var(--color-primary);
	--c-category-border-color: var(--color-primary);
	--c-category-bg-color: var(--color-light);
}

.c-category._type_part {
	--c-category-color: var(--color-light);
	--c-category-border-color: var(--color-base);
	--c-category-bg-color: var(--color-base);
}

.c-category > li {
	padding: 1px 12px;
	border: 1px solid var(--c-category-border-color);
	border-radius: 9999px;
	color: var(--c-category-color);
	background-color: var(--c-category-bg-color);
}

.c-color._base {
	color: var(--color-base);
}

.c-color._base-light {
	color: var(--color-base-light);
}

.c-color._outline {
	color: var(--color-outline);
}

.c-color._primary {
	color: var(--color-primary);
}

.c-color._primary-grad1 {
	color: var(--color-primary-grad1);
}

.c-color._primary-grad2 {
	color: var(--color-primary-grad2);
}

.c-color._accent {
	color: var(--color-accent);
}

.c-color._accent2 {
	color: var(--color-accent2);
}

.c-color._attention {
	color: var(--color-attention);
}

.c-color._light {
	color: var(--color-light);
}

.c-color._dark {
	color: var(--color-dark);
}

.c-color._dark2 {
	color: var(--color-dark2);
}

.c-color._bg-base {
	color: var(--color-bg-base);
}

.c-color._bg-dark {
	color: var(--color-bg-dark);
}

.c-color._bg-dark2 {
	color: var(--color-bg-dark2);
}

.c-color._bg-dark3 {
	color: var(--color-bg-dark3);
}

.c-color._bg-dark4 {
	color: var(--color-bg-dark4);
}

.c-color._bg {
	color: var(--color-bg);
}

.c-color._bg2 {
	color: var(--color-bg2);
}

.c-color._border {
	color: var(--color-border);
}

.c-color._border2 {
	color: var(--color-border2);
}

.c-copy {
	position: relative;
	z-index: -10;
	white-space: nowrap;
	font-size: 13.125rem;
	line-height: 1;
	pointer-events: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.c-copy._vertical {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

.c-copy-border {
	position: relative;
	-webkit-margin-after: 28px;
	margin-block-end: 28px;
	-webkit-padding-start: 22px;
	padding-inline-start: 22px;
	font-weight: 500;
	font-size: 1.5rem;
	line-height: 1.75;
	--letter-spacing: 0.08em;
}

.c-copy-border::before {
	content: "";
	position: absolute;
	top: 0.4375rem;
	bottom: 0.3125rem;
	left: 0;
	width: 2px;
	background-color: currentColor;
}

.c-copy-edge {
	color: transparent;
	font-size: 7.5rem;
	line-height: 1;
	-webkit-text-stroke: 1px var(--c-copy-edge-color, var(--color-base));
	text-stroke: 1px var(--c-copy-edge-color, var(--color-base));
	white-space: nowrap;
}

.c-copy-edge._mb {
	-webkit-margin-after: 115px;
	margin-block-end: 115px;
}

.c-heading {
	display: flex;
	flex-direction: column;
	-webkit-margin-after: 35px;
	margin-block-end: 35px;
	font-size: 1rem;
}

.c-heading__sub {
	order: -10;
	display: flex;
	align-items: center;
	-moz-column-gap: 14px;
	column-gap: 14px;
	-webkit-margin-after: 10px;
	margin-block-end: 10px;
	font-weight: 500;
}

.c-heading__sub::after {
	content: "";
	display: block;
	width: 28px;
	height: 1px;
	background-color: currentColor;
}

.c-heading__title {
	font-size: 2em;
	line-height: 1.5625;
	--letter-spacing: 0.08em;
}

.c-heading2 {
	position: relative;
	-webkit-margin-after: 35px;
	margin-block-end: 35px;
	-webkit-padding-start: 20px;
	padding-inline-start: 20px;
	font-weight: 500;
	font-size: 1.5rem;
	line-height: 1.75;
	--letter-spacing: 0.08em;
}

.c-heading2::before {
	content: "";
	position: absolute;
	top: 0.4375rem;
	bottom: 0.3125rem;
	left: 0;
	width: 2px;
	background-color: currentColor;
}

.c-heading3 {
	-webkit-margin-after: 40px;
	margin-block-end: 40px;
	padding: 10px;
	color: var(--color-base);
	font-weight: 600;
	font-size: 1.375rem;
	line-height: 1.9090909091;
	text-align: center;
	--letter-spacing: 0.08em;
	background-color: var(--color-bg2);
}

.c-heading4 {
	-webkit-margin-after: 40px;
	margin-block-end: 40px;
	padding: 15px 30px;
	color: var(--color-light);
	font-weight: 600;
	font-size: 1.375rem;
	background-color: var(--color-bg-dark2);
}

.c-hover {
	position: relative;
}

.c-hover._dark::after {
	opacity: 0;
	content: "";
	position: absolute;
	inset: 0;
	background-color: rgba(var(--color-dark-rgb), 0.5);
	transition-property: opacity;
	transition-duration: var(--sec);
}

.c-hover._dark:focus-visible::after {
	opacity: 1;
}

.c-hover._toggle {
	position: relative;
	isolation: isolate;
}

.c-hover._toggle::before,
.c-hover._toggle::after {
	content: "";
	position: absolute;
	z-index: -10;
	inset: 0;
	transition-property: opacity;
	transition-duration: var(--sec);
}

.c-hover._toggle::after {
	opacity: 0;
}

.c-hover._toggle.is-open::before {
	opacity: 0;
}

.c-hover._toggle.is-open::after {
	opacity: 1;
}

.c-hover._toggle:focus-visible::before {
	opacity: 0;
}

.c-hover._toggle:focus-visible::after {
	opacity: 1;
}

.c-input input[type=text],
.c-input input[type=tel],
.c-input input[type=email],
.c-input select,
.c-input textarea {
	display: block;
	width: 100%;
	padding: 12px 20px 13px;
	border: 1px solid var(--color-border);
	border-radius: 4px;
	color: inherit;
	font-family: inherit;
	font-size: 1rem;
	background-color: var(--color-light);
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.c-input select {
	-webkit-padding-end: 50px;
	padding-inline-end: 50px;
}

.c-input textarea {
	min-height: 400px;
	resize: vertical;
}

.c-input._w1 {
	max-width: 500px;
}

.c-input._w2 {
	max-width: 350px;
}

.c-input._w3 {
	max-width: 200px;
}

.c-input._w4 {
	max-width: 270px;
}

.c-input:is(._radio,
._checkbox) {
	display: flex;
	flex-wrap: wrap;
	gap: 18px 50px;
}

.c-input:is(._radio,
._checkbox) label {
	display: inline-flex;
	align-items: center;
	-moz-column-gap: 5px;
	column-gap: 5px;
	cursor: pointer;
}

.c-input._select {
	position: relative;
}

.c-input._select::before {
	content: "";
	display: block;
	width: 16px;
	height: 10px;
	background-color: currentColor;
	-webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	position: absolute;
	top: 0;
	bottom: 0;
	right: 15px;
	margin-block: auto;
	pointer-events: none;
}

.c-input._textarea {
	line-height: 2.25;
}



.c-list {
	display: table;
	counter-reset: c-list;
}

.c-list > li {
	display: table-row;
	counter-increment: c-list;
}

.c-list > li::before {
	display: table-cell;
}

.c-list._point > li::before {
	content: "・";
}

.c-list._disc > li::before {
	content: "●";
}

.c-list._square > li::before {
	content: "■";
}

.c-list._decimal > li::before {
	content: counter(c-list) ".";
}

.c-list._decimal-zero > li::before {
	content: counter(c-list, decimal-leading-zero) ".";
}

.c-list._upper-roman > li::before {
	content: counter(c-list, upper-roman) ".";
}

.c-list._lower-roman > li::before {
	content: counter(c-list, lower-roman) ".";
}

.c-list._upper-alpha > li::before {
	content: counter(c-list, upper-alpha) ".";
}

.c-list._lower-alpha > li::before {
	content: counter(c-list, lower-alpha) ".";
}

.c-list._hiragana > li::before {
	content: counter(c-list, hiragana) ".";
}

.c-list._katakana > li::before {
	content: counter(c-list, katakana) ".";
}

.c-list._hiragana-iroha > li::before {
	content: counter(c-list, hiragana-iroha) ".";
}

.c-list._katakana-iroha > li::before {
	content: counter(c-list, katakana-iroha) ".";
}

.c-list._kanji > li::before {
	content: counter(c-list, trad-chinese-informal) ".";
}

.c-list._custom > li::before {
	content: attr(data-list);
}

.c-mark {
	background: linear-gradient(transparent 78%, var(--color-accent) 78%);
}

.c-ofi {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.c-ofi_wrapper {
	position: relative;
	isolation: isolate;
}

.c-ofi._bg {
	z-index: -10;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	pointer-events: none;
}

.c-order {
	--c-order-row-gap-default: 0px;
	--c-order-first: -100;
	--c-order-second: -90;
	display: flex;
	flex-direction: column;
	row-gap: var(--c-order-row-gap, var(--c-order-row-gap-default));
}

.c-order__item._first {
	order: var(--c-order-first);
}

.c-order__item._second {
	order: var(--c-order-second);
}

.c-post {
	display: flex;
	flex-direction: column;
	row-gap: 18px;
	text-decoration: none;
}

.c-post_wrapper {
	display: grid;
	grid-template-columns: repeat(3, 31%);
	justify-content: space-between;
	row-gap: 40px;
}

.c-post__image {
	order: -10;
	position: relative;
	aspect-ratio: 310/194;
	overflow: hidden;
}

.c-post__image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	opacity: 1;
	transition-property: scale;
	transition-duration: var(--sec);
	scale: var(--c-post-scale, 1);
}

.c-post__detail {
	display: flex;
	flex-direction: column;
}

.c-post__label {
	order: -10;
	-webkit-margin-after: 10px;
	margin-block-end: 10px;
}

.c-post__title {
	color: var(--c-post-title-color, var(--color-base));
	font-weight: 500;
	font-size: 1.25rem;
	line-height: 1.5;
	--letter-spacing: 0.08em;
}

.c-post__arrow {
	-webkit-margin-before: 13px;
	margin-block-start: 13px;
}

.c-post:focus-visible {
	--c-post-scale: var(--zoom);
	--c-post-title-color: var(--color-primary);
}

.c-search-requirements {
	display: flex;
	align-items: start;
	gap: 5px 14px;
	line-height: var(--line-height-normal);
}

.c-search-requirements._mb {
	-webkit-margin-after: 40px;
	margin-block-end: 40px;
}

.c-search-requirements__title {
	flex-shrink: 0;
	padding: 3px 19px;
	color: var(--color-light);
	font-weight: 500;
	font-size: 1.5rem;
	--letter-spacing: 0.08em;
	background-color: var(--color-bg-dark4);
}

.c-search-requirements__desc {
	-webkit-padding-before: 8px;
	padding-block-start: 8px;
}

.c-search__input {
	width: 100%;
	padding-inline: 30px;
	border: 1px solid var(--color-border2);
	border-radius: 9999px;
	font: inherit;
	font-size: 1rem;
	line-height: 60px;
}

.c-stepbar {
	display: flex;
	justify-content: center;
	align-items: center;
	-moz-column-gap: 10px;
	column-gap: 10px;
}

.c-stepbar__item {
	display: flex;
	align-items: center;
	-moz-column-gap: 10px;
	column-gap: 10px;
}

.c-stepbar__item:not(:first-child)::before {
	content: "";
	display: block;
	height: 1px;
	width: 100px;
	background-color: var(--color-border2);
}

.c-stepbar__item[aria-current=step] {
	color: var(--color-light);
}

.c-stepbar__item[aria-current=step] .c-stepbar__text {
	background-color: var(--color-base);
}

.c-stepbar__text {
	display: grid;
	place-content: center;
	width: 80px;
	aspect-ratio: 1/1;
	border: 1px solid var(--color-border2);
	font-size: 1.125rem;
}

.c-table {
	width: 100%;
	line-height: 1.875;
}

.c-table th,
.c-table td {
	padding: 19px 22px;
	border: 1px solid var(--color-border);
}

.c-table th {
	background-color: var(--color-bg);
}

.c-terms {
	display: grid;
	gap: 10px 45px;
}

.c-terms__item {
	display: flex;
	align-items: center;
	cursor: pointer;
}

.c-terms__title {
	line-height: 1.25;
}

.c-text :is(p,
ol,
ul,
table,
dl,
.c-text__item):not(:last-child) {
	-webkit-margin-after: var(--c-text-gap, 10px);
	margin-block-end: var(--c-text-gap, 10px);
}

.c-text._mb {
	-webkit-margin-after: 30px;
	margin-block-end: 30px;
}

.c-text._center {
	text-align: center;
}

.c-text._type2 {
	font-size: 1.5rem;
	line-height: 1.75;
}

.c-text._type3 {
	line-height: 1.875;
}

.c-textlink {
	text-decoration: underline;
}

.c-textlink:focus-visible {
	text-decoration: none;
}

.c-textlink._has_icon {
	display: inline-flex;
	align-items: center;
	-moz-column-gap: 6px;
	column-gap: 6px;
}

.c-toggle {
	display: grid;
}

.c-toggle__item {
	grid-column: 1/2;
	grid-row: 1/2;
	transition-property: opacity, vislbility;
	transition-duration: var(--sec);
}

.c-toggle__item._after {
	visibility: hidden;
	opacity: 0;
}

.c-toggle.is-open .c-toggle__item._before {
	opacity: 0;
	visibility: hidden;
}

.c-toggle.is-open .c-toggle__item._after {
	opacity: 1;
	visibility: visible;
}

.c-toggle._hover:focus-visible .c-toggle__item._before {
	opacity: 0;
	visibility: hidden;
}

.c-toggle._hover:focus-visible .c-toggle__item._after {
	opacity: 1;
	visibility: visible;
}

.p-archive {
	-webkit-padding-after: 180px;
	padding-block-end: 180px;
}

.p-archive__head {
	-webkit-margin-after: 100px;
	margin-block-end: 100px;
}

.p-archive__foot {
	-webkit-margin-before: 120px;
	margin-block-start: 120px;
}

.p-area {
	display: flex;
	flex-direction: column;
	row-gap: 6px;
}

.p-area__item {
	border: 1px solid var(--color-border2);
	background-color: var(--color-bg);
}

.p-area__title {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: 12px 30px;
	font-weight: 500;
	font-size: 1.125rem;
	line-height: 1.5555555556;
	cursor: pointer;
}

.p-area__title:not(.is-open) svg {
	scale: 1 -1;
}

.p-area__panel {
	display: none;
}

.p-area__detail {
	padding: 10px 30px 13px;
}

.p-banner {
	color: var(--color-light);
}

.p-banner._pt {
	-webkit-padding-before: 180px;
	padding-block-start: 180px;
}

.p-banner._pb {
	-webkit-padding-after: 180px;
	padding-block-end: 180px;
}

.p-banner__item {
	position: relative;
	isolation: isolate;
	display: flex;
	flex-direction: column;
	justify-content: end;
	min-height: 620px;
	padding: 60px;
	text-decoration: none;
	overflow: hidden;
}

.p-banner__item:nth-child(2n+1) {
	-webkit-padding-start: var(--site-gap2);
	padding-inline-start: var(--site-gap2);
}

.p-banner__item:nth-child(2n) {
	-webkit-padding-end: var(--site-gap2);
	padding-inline-end: var(--site-gap2);
}

.p-banner__item::before {
	content: "";
	position: absolute;
	z-index: -10;
	inset: 0;
	background-color: var(--color-dark);
	opacity: var(--q-banner-opacity, 0.4);
	transition-property: opacity;
	transition-duration: var(--sec);
}

.p-banner__item:focus-visible {
	--q-banner-scale: var(--zoom);
	--q-banner-opacity: 0;
}

.p-banner__img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	z-index: -20;
	opacity: 1;
	scale: var(--q-banner-scale, 1);
	transition-property: scale;
	transition-duration: var(--sec);
}

.p-banner__head {
	-webkit-margin-after: 20px;
	margin-block-end: 20px;
	line-height: var(--line-height-normal);
}

.p-banner__title-sub {
	font-family: var(--ff-cormorant);
	font-size: 2.25rem;
	font-weight: 500;
}

.p-banner__body {
	-webkit-margin-after: 40px;
	margin-block-end: 40px;
}

.p-cta {
	position: relative;
	isolation: isolate;
	font-size: 1rem;
	background: linear-gradient(to bottom, transparent 50%, var(--color-bg-dark) 50%, var(--color-bg-dark) 100%);
}

.p-cta__button {
	position: relative;
	isolation: isolate;
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	-moz-column-gap: 55px;
	column-gap: 55px;
	min-height: 240px;
	padding: 10px 32px;
	color: var(--color-light);
	line-height: 1.3;
	text-decoration: none;
	background-color: var(--color-primary);
	overflow: hidden;
}

.p-cta__button::before,
.p-cta__button::after {
	content: "";
	position: absolute;
	z-index: -10;
	inset: 0;
	transition-property: opacity;
	transition-duration: var(--sec);
}

.p-cta__button::before {
	background: linear-gradient(155deg, var(--color-primary-grad1) 30%, var(--color-primary-grad2) 70%);
}

.p-cta__button::after {
	opacity: 0;
	background: linear-gradient(335deg, var(--color-primary-grad1) 30%, var(--color-primary-grad2) 70%);
}

.p-cta__button:focus-visible::before {
	opacity: 0;
}

.p-cta__button:focus-visible::after {
	opacity: 1;
}

.p-cta__border {
	width: 72px;
	height: 1px;
	background-color: currentColor;
	translate: 0 5px;
}

.p-cta__title {
	font-weight: 600;
	font-size: 1.5em;
}

.p-cta__title-sub {
	font-weight: 500;
	font-size: 3.25em;
}

.p-filter {
	border: 1px solid var(--color-border);
	border-radius: 6px;
	overflow: hidden;
}

.p-filter .c-heading2 {
	-webkit-margin-after: 15px;
	margin-block-end: 15px;
}

.p-filter__title {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: 15px 35px;
	font-weight: 500;
	font-size: 1.5rem;
	background-color: var(--color-bg);
}

.p-filter__title:not(.is-open) svg {
	scale: 1 -1;
}

.p-filter__panel {
	display: none;
}

.p-filter__detail {
	display: flex;
	flex-direction: column;
	row-gap: 36px;
	border-top: 1px solid var(--color-border);
	padding: 20px 35px 80px;
}

.p-filter__submit {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 20px 12px;
	-webkit-margin-before: 15px;
	margin-block-start: 15px;
}

.p-filter__button {
	position: relative;
	isolation: isolate;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 330px;
	min-height: 66px;
	max-width: 100%;
	border: 1px solid var(--color-dark);
	border-radius: 9999px;
	color: var(--color-base);
	font-family: inherit;
	font-size: 1rem;
	font-weight: inherit;
	text-align: center;
	text-decoration: none;
	background-color: var(--color-light);
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	overflow: hidden;
	cursor: pointer;
}

.p-filter__button._search {
	color: var(--color-light);
	background: linear-gradient(-168deg, var(--color-dark) 0%, #545454 110%);
}

.p-filter__button._search::after {
	content: "";
	position: absolute;
	z-index: -10;
	inset: 0;
	background: linear-gradient(-168deg, #545454 0%, var(--color-dark) 110%);
	opacity: 0;
	transition-property: opacity;
	transition-duration: var(--sec);
}

.p-filter__button:focus-visible::after {
	opacity: 1;
}

.p-form {
	-webkit-padding-after: 180px;
	padding-block-end: 180px;
	line-height: var(--line-height-normal);
}

.p-form__head {
	-webkit-margin-after: 180px;
	margin-block-end: 180px;
}

.p-form__body {
	display: flex;
	flex-direction: column;
	row-gap: 80px;
	-webkit-padding-after: 80px;
	padding-block-end: 80px;
}

.p-form__label {
	display: contents;
}

.p-form__label-in {
	position: relative;
	display: flex;
	flex-direction: column;
	row-gap: 5px;
	-webkit-padding-start: 18px;
	padding-inline-start: 18px;
}

.p-form__label-in::before {
	content: "";
	width: 10px;
	aspect-ratio: 1/1;
	position: absolute;
	top: 0.625rem;
	left: 0;
	border-radius: 9999px;
	background-color: currentColor;
}

.p-form__badge {
	display: block;
	font-size: 1rem;
}

.p-form__badge._require {
	color: var(--color-attention);
}

.p-form__badge._optional {
	color: var(--color-base-light);
}

.p-form__title {
	display: block;
	font-size: 1.125rem;
	font-weight: 500;
}

.p-form__exp {
	-webkit-margin-after: 10px;
	margin-block-end: 10px;
}

.p-form__group-item:not(:last-child) {
	-webkit-margin-after: 18px;
	margin-block-end: 18px;
}

.p-form__group-title {
	display: block;
	-webkit-margin-after: 8px;
	margin-block-end: 8px;
	line-height: 1.8;
}

.p-form .mwform-radio-field label {
	display: flex;
	-moz-column-gap: 2px;
	column-gap: 2px;
	align-items: center;
}

:where(.p-form .mwform-file-delete) {
	visibility: hidden;
}

.p-form__sending {
	display: flex;
	flex-direction: column;
}

.p-form__sending .mwform-radio-field:nth-child(1) {
	order: -40;
}

.p-form__file {
	order: -30;
}

.p-form__sending .mwform-radio-field:nth-child(2) {
	order: -20;
}

.p-form__destination {
	order: -10;
}

.p-form__sending .mwform-radio-field {
	display: block;
	-webkit-margin-after: 18px;
	margin-block-end: 18px;
}

.p-form__file {
	display: flex;
	flex-wrap: wrap;
	gap: 18px 14px;
	-webkit-margin-after: 30px;
	margin-block-end: 30px;
	-webkit-padding-start: 23px;
	padding-inline-start: 23px;
}

.p-form__file-head {
	display: flex;
	-moz-column-gap: 10px;
	column-gap: 10px;
	-webkit-margin-after: 10px;
	margin-block-end: 10px;
}

.p-form__destination {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	-webkit-margin-start: 26px;
	margin-inline-start: 26px;
	padding: 16px 20px;
	border: 1px solid var(--color-border2);
	line-height: 1.8;
}

.p-form__agree {
	text-align: center;
}

.p-form__agree a {
	text-decoration: underline;
}

.p-form__agree a:focus-visible {
	text-decoration: none;
}

.p-form__submit {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	-webkit-margin-before: 50px;
	margin-block-start: 50px;
	gap: 20px 60px;
}

.p-form__submit-button {
	position: relative;
	isolation: isolate;
	display: flex;
	align-items: center;
	justify-content: center;
	-moz-column-gap: 27px;
	column-gap: 27px;
	width: 526px;
	min-height: 90px;
	max-width: 100%;
	border: 1px solid var(--color-dark);
	color: var(--color-base);
	font-family: inherit;
	font-size: 1.125rem;
	font-weight: inherit;
	text-align: center;
	text-decoration: none;
	background-color: var(--color-light);
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	cursor: pointer;
}

.p-form__submit-button._back::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 32px;
	width: 25px;
	aspect-ratio: var(--icon-arrow-aspect);
	margin-block: auto;
	filter: invert(1);
	scale: -1 1;
	background-repeat: no-repeat;
	background-position: center center;
	background-image: var(--icon-arrow);
	background-size: 100% 100%;
}

.p-form__submit-button._confirm,
.p-form__submit-button._submit {
	color: var(--color-light);
	background: linear-gradient(-168deg, var(--color-dark) 0%, #545454 110%);
}

.p-form__submit-button._confirm::after,
.p-form__submit-button._submit::after {
	content: "";
	position: absolute;
	z-index: -10;
	inset: 0;
	background: linear-gradient(-168deg, #545454 0%, var(--color-dark) 110%);
	opacity: 0;
	transition-property: opacity;
	transition-duration: var(--sec);
}

.p-form__submit-button:focus-visible::after {
	opacity: 1;
}

.mw_wp_form.mw_wp_form_confirm .c-input._select::before {
	content: none;
}

.mw_wp_form.mw_wp_form_confirm .p-form__group-item {
	-webkit-margin-after: 0;
	margin-block-end: 0;
	display: inline;
}

.mw_wp_form.mw_wp_form_confirm .p-form__group-item .c-input {
	display: inline;
}

.mw_wp_form.mw_wp_form_confirm .p-form__group-item:nth-child(1) {
	display: block;
}

.mw_wp_form.mw_wp_form_confirm .p-form__sending {
	display: block;
}

.mw_wp_form.mw_wp_form_confirm .p-form__file {
	-webkit-margin-before: 10px;
	margin-block-start: 10px;
	-webkit-padding-start: 0;
	padding-inline-start: 0;
}

.p-navi__list {
	display: flex;
	flex-wrap: wrap;
	gap: 25px 48px;
	padding-inline: 25px;
}

.p-navi__link {
	display: flex;
	align-items: center;
	-moz-column-gap: 10px;
	column-gap: 10px;
	font-size: 1.125rem;
	text-decoration: none;
	--letter-spacing: 0.08em;
}

.p-navi__icon {
	display: grid;
	place-content: center;
	width: 28px;
	aspect-ratio: 1/1;
	border-radius: 9999px;
	background-color: var(--color-dark);
	transition-property: translate;
	transition-duration: var(--sec-fast);
}

.p-navi__icon svg {
	color: var(--color-light);
	width: 11px;
	rotate: 90deg;
}

.p-navi__link:focus-visible .p-navi__icon {
	translate: 0 5px;
}

.p-pagetitle {
	position: relative;
	z-index: 500;
	font-size: 1.5rem;
	line-height: var(--line-height-normal);
}

.p-pagetitle__head {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	min-height: 406px;
	--p-pagetitle-padding-top: 40px;
	--p-pagetitle-padding-bottom: 20px;
	padding-block: calc(var(--header-size) + var(--p-pagetitle-padding-top)) var(--p-pagetitle-padding-bottom);
	padding-inline: var(--space-inline);
	text-align: center;
}

.p-pagetitle__title-sub {
	order: -10;
	-webkit-margin-after: 20px;
	margin-block-end: 20px;
	font-family: var(--ff-cormorant);
	font-weight: 600;
	font-size: 3.8333333333em;
	line-height: 1;
	--letter-spacing: 0.02em;
}

.p-pagetitle__mv {
	position: relative;
	height: 600px;
}

.p-pagetitle__mv-img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.p-recruit {
	display: grid;
	-webkit-padding-after: 180px;
	padding-block-end: 180px;
}

.p-recruit__content,
.p-recruit__mv {
	grid-area: 1/1/2/2;
}

.p-recruit__mv {
	position: relative;
	isolation: isolate;
	min-height: 703px;
	-webkit-margin-start: max(calc(50% - 154px), 20vw);
	margin-inline-start: max(calc(50% - 154px), 20vw);
}

.p-recruit__mv img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	z-index: -10;
	-o-object-position: center 20%;
	object-position: center 20%;
	height: calc(100% - 67px);
	pointer-events: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.p-recruit__content {
	position: relative;
	z-index: 10;
	align-self: end;
	-webkit-padding-before: 100px;
	padding-block-start: 100px;
}

.p-recruit__title {
	-webkit-margin-after: 50px;
	margin-block-end: 50px;
}

.p-recruit__heading {
	font-weight: 600;
	font-size: 1.5rem;
}

.p-recruit__heading-sub {
	-webkit-margin-before: 17px;
	margin-block-start: 17px;
	font-weight: 500;
	font-size: 7.5rem;
	line-height: 1;
}

.p-recruit__desc {
	max-width: 500px;
	font-size: 1.5rem;
}

.p-recruit__link {
	margin-top: 80px;
}

.p-require__slider {
	-webkit-margin-after: var(--space-block);
	margin-block-end: var(--space-block);
}

.p-require__slider .swiper-container {
	width: 100%;
	overflow: hidden;
}

.p-require__slider .swiper-container .swiper-slide img {
	height: auto;
	width: 100%;
}

.p-require__slider .swiper-container.slider .swiper-slide {
	max-height: 540px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.p-require__slider .swiper-container.slider-thumbnail .swiper-wrapper {
	-webkit-margin-before: 12px;
	margin-block-start: 12px;
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 2px;
}

.p-require__slider .swiper-container.slider-thumbnail .swiper-wrapper .swiper-slide {
	-webkit-padding-end: 10px;
	padding-inline-end: 10px;
	box-sizing: border-box;
	opacity: 0.6;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-height: 102px;
	overflow: hidden;
}

.p-require__slider .swiper-container.slider-thumbnail .swiper-wrapper .swiper-slide:last-of-type {
	-webkit-margin-end: -10px;
	margin-inline-end: -10px;
}

.p-require__slider .swiper-container.slider-thumbnail .swiper-wrapper .swiper-slide.swiper-slide-thumb-active {
	opacity: 1;
}

.p-require {
	-webkit-padding-after: 180px;
	padding-block-end: 180px;
	line-height: var(--line-height-normal);
}

.p-require__head {
	display: flex;
	flex-direction: column;
	-webkit-margin-after: 110px;
	margin-block-end: 110px;
}

.p-require__category {
	order: -10;
	display: flex;
	flex-direction: column;
	row-gap: 10px;
	-webkit-margin-after: 37px;
	margin-block-end: 37px;
}

.p-require__title {
	font-size: 2rem;
	line-height: 1.5625;
	--letter-spacing: 0.08em;
}

.p-require__table :where(th) {
	width: 237px;
}

.p-thanks {
	max-width: 690px;
	margin-inline: auto;
	line-height: var(--line-height-normal);
}

.p-thanks__title {
	-webkit-margin-after: 30px;
	margin-block-end: 30px;
	text-align: center;
}

.p-thanks__desc {
	line-height: 2.25;
}

.p-thanks__foot {
	-webkit-margin-before: 40px;
	margin-block-start: 40px;
	text-align: center;
}

.p-thanks__button {
	position: relative;
	isolation: isolate;
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	width: 320px;
	min-height: 90px;
	max-width: 100%;
	padding: 10px 32px 10px 60px;
	color: var(--color-light);
	font-family: inherit;
	font-size: 1rem;
	font-weight: inherit;
	text-align: center;
	text-decoration: none;
	background-color: var(--color-light);
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	cursor: pointer;
	background: linear-gradient(-168deg, var(--color-dark) 0%, #545454 110%);
}

.p-thanks__button::before {
	content: "";
	position: absolute;
	z-index: -10;
	inset: 0;
	background: linear-gradient(-168deg, #545454 0%, var(--color-dark) 110%);
	opacity: 0;
	transition-property: opacity;
	transition-duration: var(--sec);
}

.p-thanks__button::after {
	content: "";
	display: block;
	width: 25px;
	aspect-ratio: var(--icon-arrow-aspect);
	margin-block: auto;
	background-repeat: no-repeat;
	background-position: center center;
	background-image: var(--icon-arrow);
	background-size: 100% 100%;
}

.p-thanks__button:focus-visible::before {
	opacity: 1;
}

[data-tel] a {
	color: inherit;
	text-decoration: underline;
}

[data-type-select]:not(:first-child) {
	display: none;
}

.mw_wp_form.mw_wp_form_confirm [data-type-select] {
	display: block;
}

html.noscroll {
	overflow: hidden;
}

html.is-top-page {
	--g-header-color: var(--color-light);
	--g-header-background: transparent;
}

html.is-mega-open,
html.is-scrolled {
	--g-header-color: var(--color-dark);
	--g-header-background: rgba(var(--color-light-rgb), 0.9);
}

html.is-menu-open {
	--g-header-color: var(--color-light);
	--g-header-background: rgba(var(--color-light-rgb), 0.9);
}

/*全画面*/

.g-wrapper {
	min-height: 100vh;
	min-height: 100svh;
	display: flex;
	flex-direction: column;
	background-color: var(--color-bg-base);
}

/*ヘッダー*/

.g-header {
	position: fixed;
	z-index: var(--header-z-index);
	top: 0;
	left: 0;
	width: 100%;
	color: var(--g-header-color, var(--color-base));
	background-color: var(--g-header-background, rgba(var(--color-light-rgb), 0.9));
	transition-property: color, background-color;
	transition-duration: var(--sec);
}

.g-header .inner {
	display: flex;
	justify-content: space-between;
	height: var(--header-size);
	transition: height var(--sec);
}

.g-header .logo {
	font-size: 1rem;
}

.g-header .logo__link {
	display: flex;
	align-items: center;
	-moz-column-gap: 20px;
	column-gap: 20px;
	line-height: 1.4;
	text-decoration: none;
}

.g-header .logo__image {
	display: grid;
	place-content: center;
	width: 105px;
	height: var(--header-size);
	transition: height width var(--sec);
	border-bottom-left-radius: 6px;
	border-bottom-right-radius: 6px;
	background-color: var(--color-light);
}

.g-header .logo__image img {
	opacity: 1;
	transition: width var(--sec);
}

.g-header .logo__title {
	display: block;
	font-weight: 700;
}

.g-header .logo__title._1 {
	transition: font-size var(--sec);
}

.g-header .logo__title._2 {
	font-size: 1.875em;
	transition: font-size var(--sec);
}

.g-header .navi {
	display: flex;
	align-items: center;
	-moz-column-gap: 24px;
	column-gap: 24px;
}

.g-header .navi summary::-webkit-details-marker { /* Safariで表示されるデフォルトの三角形アイコンを消します */
	display: none;
}

.g-header .navi__list {
	display: flex;
}

.g-header .navi__button {
	position: relative;
	isolation: isolate;
	display: flex;
	align-items: center;
	justify-content: center;
	-moz-column-gap: 3px;
	column-gap: 3px;
	height: var(--header-size);
	padding: 10px 15px;
	border: none;
	color: inherit;
	font-family: inherit;
	font-weight: inherit;
	font-size: inherit;
	text-decoration: none;
	cursor: pointer;
	background-color: transparent;
	-webkit-appearance: none;
	-moz-appearance: none;
}

.g-header .navi__button svg {
	translate: 0 4%;
}

.g-header .navi__button::before {
	content: "";
	top: 0;
	display: inline-block;
	left: 0;
	width: 100%;
	height: 4px;
	transition: all 0.3s;
	transform: scale(0, 1);
	transform-origin: center top;
	position: absolute;
	transition-duration: var(--sec);
	background: var(--grad-primary-bottom);
}

.g-header .navi__button:focus-visible::before {
	transform: scale(1, 1);
}

.g-header .navi__details.is-open .navi__button::before {
	transform: scale(1, 1);
}

.g-header .navi__details.is-open .navi__icon::after {
	opacity: 0;
}

.g-header .navi__icon {
	position: relative;
	width: 14px;
	height: 1px;
	background-color: currentColor;
}

.g-header .navi__icon::after {
	content: "";
	position: absolute;
	inset: 0;
	background-color: inherit;
	rotate: 90deg;
}

.g-header .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	max-width: 100%;
	width: 150px;
	min-height: 50px;
	-webkit-padding-after: 5px;
	padding-block-end: 5px;
	border-radius: 9999px;
	color: var(--color-light);
	font-size: 1.25rem;
	font-weight: 700;
	text-decoration: none;
	background-color: var(--color-primary);
}

.g-header .button::before,
.g-header .button::after {
	border-radius: 9999px;
}

.g-header .button::before {
	background: var(--grad-primary-bottom);
}

.g-header .button::after {
	background: var(--grad-primary-top);
}

.g-header .mega {
	--q-mega-size: 115px;
	color: var(--color-light);
	display: grid;
	grid-template-columns: auto 1fr;
	-moz-column-gap: 30px;
	column-gap: 30px;
	font-weight: 500;
	line-height: var(--line-height-normal);
}

.g-header .mega_wrapper {
	position: fixed;
	z-index: var(--header-z-index);
	top: var(--header-size);
	left: 0;
	width: 100%;
}

.g-header .mega::before {
	content: "";
	position: absolute;
	z-index: -10;
	inset: 0;
	opacity: 0.8;
	background: var(--grad-primary-bottom);
}

.g-header .mega__head {
	position: relative;
	display: grid;
	place-content: center;
	width: 310px;
	padding: 10px;
}

.g-header .mega__head::after {
	content: "";
	position: absolute;
	top: 18px;
	bottom: 18px;
	right: 0;
	width: 1px;
	background-color: var(--color-light);
	opacity: 0.4;
}

.g-header .mega__heading {
	font-size: 1.875rem;
}

.g-header .mega__list {
	display: flex;
	flex-wrap: wrap;
}

.g-header .mega__link {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: var(--q-mega-size);
	padding: 10px 30px;
	text-decoration: none;
}

.g-header .mega__title {
	font-weight: 700;
	font-size: 1.25rem;
	transition-property: opacity;
	transition-duration: var(--sec);
}

.g-header .mega__title-sub {
	-webkit-margin-before: 5px;
	margin-block-start: 5px;
	font-size: 1rem;
	opacity: 0.6;
	transition-property: opacity;
	transition-duration: var(--sec);
}

.g-header .mega__link:focus-visible .mega__title {
	opacity: 0.4;
}

.g-header .mega__link:focus-visible .mega__title-sub {
	opacity: 0.3;
}

.g-header .menu-button {
	align-self: center;
	position: relative;
	width: 41px;
	aspect-ratio: 1/1;
	border: 1px solid var(--color-bg-dark);
	border-radius: 9999px;
	background-color: var(--color-bg-dark);
	transition-property: background-color, border-color;
	transition-duration: var(--sec-fast);
}

.g-header .menu-button::before,
.g-header .menu-button::after {
	content: "";
	display: block;
	width: 12px;
	height: 1px;
	background-color: var(--color-light);
	position: absolute;
	inset: 0;
	margin: auto;
	transition-property: translate, rotate;
	transition-duration: var(--sec-fast);
}

.g-header .menu-button::before {
	translate: 0 -4px;
}

.g-header .menu-button::after {
	translate: 0 4px;
}

.g-header .menu-button.is-open {
	border-color: var(--color-light);
	background-color: transparent;
}

.g-header .menu-button.is-open::before,
.g-header .menu-button.is-open::after {
	translate: 0 0;
}

.g-header .menu-button.is-open::before {
	rotate: -45deg;
}

.g-header .menu-button.is-open::after {
	rotate: 45deg;
}

/*フッター*/

.g-footer {
	position: relative;
	padding-block: 140px 82px;
	color: var(--color-light);
	background-color: var(--color-bg-dark);
}

.g-footer .pagetop {
	position: absolute;
	top: 130px;
	right: var(--space-inline);
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	display: flex;
	align-items: center;
	-moz-column-gap: 6px;
	column-gap: 6px;
	text-decoration: none;
	transition-property: opacity;
	transition-duration: var(--sec);
}

.g-footer .pagetop:focus-visible {
	opacity: var(--opacity);
}

.g-footer .pagetop::before {
	content: "";
	display: block;
	block-size: 1px;
	inline-size: 40px;
	-webkit-margin-before: 3px;
	margin-block-start: 3px;
	background-color: var(--color-light);
}

.g-footer .container {
	display: flex;
	justify-content: space-between;
}

.g-footer .logo {
	-webkit-margin-after: 40px;
	margin-block-end: 40px;
	font-size: 1rem;
}

.g-footer .logo__link {
	display: flex;
	align-items: center;
	-moz-column-gap: 25px;
	column-gap: 25px;
	line-height: 1.4;
	text-decoration: none;
}

.g-footer .logo__image {
	display: grid;
	place-content: center;
	width: 106px;
	aspect-ratio: 1/1;
	border-radius: 4px;
	background-color: var(--color-light);
}

.g-footer .logo__image img {
	opacity: 1;
}

.g-footer .logo__title {
	display: block;
	font-weight: 700;
}

.g-footer .logo__title._2 {
	font-size: 1.875em;
}

.g-footer .desc {
	font-size: 0.875rem;
	line-height: 1.9285714286;
}

.g-footer .link {
	-webkit-margin-before: 20px;
	margin-block-start: 20px;
	font-size: 0.875rem;
}

.g-footer .navi__list {
	display: grid;
	grid-template-columns: repeat(2, auto);
	gap: 40px 60px;
}

.g-footer .copyright {
	-webkit-margin-before: 133px;
	margin-block-start: 133px;
	font-size: 0.875rem;
	text-align: center;
}

/*メイン*/

.g-main {
	display: block;
	flex-grow: 1;
}

.g-main:after {
	content: " ";
	display: block;
	clear: both;
}

/*メニュー*/

.g-menu {
	position: fixed;
	z-index: calc(var(--header-z-index) - 10);
	inset: 0;
	width: 100vw;
	height: 100dvh;
	color: var(--color-light);
	background-color: var(--color-bg-dark);
	opacity: 0;
	visibility: hidden;
	transition-property: opacity, visibility;
	transition-duration: var(--sec);
	overflow-y: scroll;
}

.g-menu::before {
	content: "";
	position: fixed;
	z-index: 10;
	top: 0;
	left: 0;
	right: 0;
	height: var(--header-size);
	background-color: var(--color-bg-dark);
}

.g-menu.is-open {
	opacity: 1;
	visibility: visible;
}

.g-menu .inner {
	-webkit-padding-before: calc(var(--header-size) + 20px);
	padding-block-start: calc(var(--header-size) + 20px);
	-webkit-padding-after: var(--space-block);
	padding-block-end: var(--space-block);
}

.g-menu .arrow {
	width: 12px;
}

.g-menu .navi summary::-webkit-details-marker { /* Safariで表示されるデフォルトの三角形アイコンを消します */
	display: none;
}

.g-menu .navi__list {
	-webkit-border-before: 1px solid rgba(var(--color-light-rgb), 0.5);
	border-block-start: 1px solid rgba(var(--color-light-rgb), 0.5);
}

.g-menu .navi__button {
	display: flex;
	justify-content: space-between;
	align-items: center;
	min-height: 58px;
	width: 100%;
	padding: 10px var(--space-inline);
	border: none;
	-webkit-border-after: 1px solid rgba(var(--color-light-rgb), 0.5);
	border-block-end: 1px solid rgba(var(--color-light-rgb), 0.5);
	color: inherit;
	font-weight: inherit;
	font-size: inherit;
	text-decoration: none;
	background-color: transparent;
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
}

.g-menu .navi__button:not([aria-label]) {
	font-family: inherit;
}

.g-menu .navi__button[aria-label] {
	font-family: "メイリオ", Meiryo, sans-serif;
}

.g-menu .navi__button._dark {
	background: var(--color-bg-dark3);
}

.g-menu .navi__plus {
	position: relative;
	width: 12px;
	height: 1px;
	background-color: currentColor;
}

.g-menu .navi__plus::after {
	content: "";
	position: absolute;
	inset: 0;
	background-color: inherit;
	rotate: 90deg;
}

.g-menu .navi__details.is-open .navi__plus::after {
	display: none;
}

.g-menu .entry {
	-webkit-margin-before: 60px;
	margin-block-start: 60px;
	text-align: center;
}

.g-menu .entry a {
	display: inline-grid;
	place-content: center;
	max-width: 100%;
	width: 335px;
	min-height: 70px;
	border-radius: 9999px;
	color: var(--color-light);
	font-weight: 700;
	font-size: 0.8125rem;
	background: var(--grad-primary-top);
}

.q-about-movie {
	position: relative;
	isolation: isolate;
}

.q-about-movie::before {
	content: "";
	position: absolute;
	z-index: -10;
	inset: -200px 0 120px;
	background-color: var(--color-bg);
}

.q-about-movie .inner {
	max-width: 800px;
}

.q-about-movie .movie {
	-webkit-margin-before: 30px;
	margin-block-start: 30px;
}

.q-about-movie .movie iframe {
	width: 100%;
	display: block;
}

.q-about-navi {
	padding-block: 174px 74px;
}

.q-about-top-message {
	display: flex;
	flex-direction: column;
	row-gap: 80px;
	-webkit-padding-after: 180px;
	padding-block-end: 180px;
	overflow: hidden;
	overflow: clip;
}

.q-about-top-message .head__detail {
	position: relative;
	z-index: 10;
	-webkit-margin-before: -62px;
	margin-block-start: -62px;
}

.q-about-top-message .head__copy {
	-webkit-margin-after: 40px;
	margin-block-end: 40px;
	color: var(--color-bg);
	font-size: 5.75rem;
	line-height: 1;
}

.q-about-top-message .mv {
	position: relative;
	isolation: isolate;
}

.q-about-top-message .mv__desc {
	padding-block: 160px 170px;
	color: var(--color-light);
}

.q-about-top-message .mv__copy {
	font-weight: 600;
	font-size: 1.75rem;
	line-height: 1.7142857143;
	--letter-spacing: 0.08em;
}

.q-about-top-message .mv__image {
	position: relative;
	z-index: -10;
}

.q-about-top-message .mv__image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center 20%;
	object-position: center 20%;
}

.q-about-top-message .mv__sign {
	-webkit-margin-before: 30px;
	margin-block-start: 30px;
}

.q-about-top-message .desc._end {
	-webkit-margin-start: auto;
	margin-inline-start: auto;
}

.q-about-top-message .content__desc {
	-webkit-margin-before: 40px;
	margin-block-start: 40px;
}

.q-about-philosophy {
	overflow: hidden;
	overflow: clip;
	--l-separate-main-override: 70%;
}

.q-about-philosophy .padding {
	position: relative;
	isolation: isolate;
	padding-block: 180px 40px;
}

.q-about-philosophy .bg {
	position: absolute;
	z-index: -10;
	inset-block: 0;
	left: var(--space-inline);
	right: -10000px;
	background-color: var(--color-bg);
}

.q-about-philosophy .mv {
	position: relative;
	isolation: isolate;
	-webkit-padding-end: var(--site-gap-wide2);
	padding-inline-end: var(--site-gap-wide2);
}

.q-about-philosophy .mv::before {
	content: "";
	position: absolute;
	z-index: -10;
	inset: 0;
	left: var(--site-gap-wide2);
	background-color: var(--color-bg);
}

.q-about-philosophy .mv::after {
	content: "";
	position: absolute;
	z-index: -10;
	inset: auto 0 0;
	height: 84px;
	background-color: var(--color-bg-dark);
}

.q-about-philosophy .mv__image {
	position: relative;
	isolation: isolate;
	height: 580px;
}

.q-about-philosophy .mv__image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center 20%;
	object-position: center 20%;
}

.q-about-business {
	-webkit-padding-after: 100px;
	padding-block-end: 100px;
	overflow: hidden;
	overflow: clip;
	--c-copy-edge-color: rgba(var(--color-light-rgb), 0.5);
}

.q-about-business .head {
	padding-block: 180px 124px;
}

.q-about-business .edge {
	-webkit-padding-before: 25px;
	padding-block-start: 25px;
}

.q-about-business .brands__inner1 {
	position: relative;
	isolation: isolate;
	-webkit-padding-after: 80px;
	padding-block-end: 80px;
}

.q-about-business .brands__inner1::before {
	content: "";
	position: absolute;
	z-index: -10;
	inset: 57px -10000px 0 var(--space-inline);
	background-color: var(--color-bg-dark4);
}

.q-about-business .mv {
	-webkit-margin-after: 60px;
	margin-block-end: 60px;
}

.q-about-business .mv img {
	width: 100%;
}

.q-about-business .media {
	display: flex;
	flex-direction: column;
	line-height: var(--line-height-normal);
}

.q-about-business .media_wrapper {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 40px 8px;
	-webkit-margin-after: 100px;
	margin-block-end: 100px;
}

.q-about-business .media__image {
	order: -10;
}

.q-about-business .media__logo {
	display: grid;
	place-content: center;
	min-height: 214px;
	padding: 10px;
	background-color: var(--color-light);
}

.q-about-business .media__pic {
	position: relative;
	aspect-ratio: 992/664;
}

.q-about-business .media__pic img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.q-about-business .media__detail {
	-webkit-padding-before: 21px;
	padding-block-start: 21px;
}

.q-about-business .media__title {
	-webkit-margin-after: 7px;
	margin-block-end: 7px;
	font-weight: 600;
	font-size: 1.2rem;
	text-align: center;
}

.q-about-business .media__desc {
	max-width: 410px;
	margin-inline: auto;
}

.q-about-business .media2__image {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.q-about-business .media2__pic img {
	width: 100%;
}

.q-about-business .media2__title {
	display: flex;
	align-items: flex-start;
	-moz-column-gap: 10px;
	column-gap: 10px;
	-webkit-margin-after: 28px;
	margin-block-end: 28px;
	font-weight: 500;
	font-size: 1.125rem;
	line-height: var(--line-height-normal);
	--letter-spacing: 0.08em;
}

.q-about-business .media2__title::before {
	content: "";
	width: 10px;
	aspect-ratio: 1/1;
	border-radius: 9999px;
	background-color: currentColor;
	translate: 0 0.625rem;
}

.q-about-business .media3 {
	display: grid;
	grid-template-columns: 130px 1fr;
	-moz-column-gap: 16px;
	column-gap: 16px;
	padding: 30px;
	border: 1px solid var(--color-border);
	line-height: var(--line-height-normal);
}

.q-about-business .media3._mt {
	-webkit-margin-before: 23px;
	margin-block-start: 23px;
}

.q-about-business .media3__detail {
	grid-area: 1/2/2/3;
}

.q-about-business .media3__image {
	grid-area: 1/1/2/2;
}

.q-about-business .media3__title {
	-webkit-margin-after: 5px;
	margin-block-end: 5px;
	color: var(--color-bg2);
	font-weight: 500;
	font-size: 1.125rem;
	--letter-spacing: 0.08em;
}

.q-about-business .mediahead {
    margin-block-end: 40px;
}

.q-about-business .mediahead__title {
    display: flex;
    align-items: flex-start;
    column-gap: 10px;
    margin-block-end: 28px;
    font-weight: 500;
    font-size: 1.375rem;
    line-height: var(--line-height-normal);
    --letter-spacing: 0.08em;
	border-bottom: 1px var(--color-light) solid;
}

/* .q-about-business .mediahead__title::before {
    content: "";
    width: 10px;
    aspect-ratio: 1 / 1;
    background-color: currentcolor;
    translate: 0px 0.625rem;
    border-radius: 9999px;
} */

.q-data-company {
	position: relative;
	isolation: isolate;
	-webkit-padding-after: 180px;
	padding-block-end: 180px;
}

.q-data-company::before {
	content: "";
	position: absolute;
	z-index: -10;
	inset: -200px 0 0;
	background-color: var(--color-bg);
}

.q-data-company .company {
	display: flex;
	flex-direction: column;
	padding: 32px 20px 25px;
	background-color: var(--color-light);
}

.q-data-company .company_wrapper {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 5px;
	-webkit-padding-before: 45px;
	padding-block-start: 45px;
}

.q-data-company .company._span2 {
	grid-column: span 2;
}

.q-data-company .company__title {
	-webkit-margin-after: 16px;
	margin-block-end: 16px;
	font-weight: 700;
	font-size: 1.5rem;
	line-height: 1.4166666667;
	text-align: center;
	--letter-spacing: 0.08em;
}

.q-data-company .company__title::after {
	content: "";
	display: block;
	width: 42px;
	height: 2px;
	margin: 14px auto 0;
	background-color: var(--color-dark);
}

.q-data-company .company__illust {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.q-data-what {
	padding-block: 180px;
}

.q-data-what .heading {
	position: relative;
	-webkit-padding-start: 140px;
	padding-inline-start: 140px;
}

.q-data-what .heading__balloon {
	position: absolute;
	top: -20px;
	left: 0;
}

.q-data-what .what {
	display: flex;
	flex-direction: column;
	width: 27%;
	padding: 40px 30px 42px;
	border: 1px solid var(--color-border2);
}

.q-data-what .what_wrapper {
	display: flex;
	flex-wrap: wrap;
	gap: 5px 0.5%;
}

.q-data-what .what__title {
	-webkit-margin-after: 20px;
	margin-block-end: 20px;
	color: var(--color-primary);
	font-weight: 700;
	font-size: 1.125rem;
	line-height: 1.5555555556;
	--letter-spacing: 0.08em;
}

.q-data-what .what__desc {
	-webkit-margin-after: 20px;
	margin-block-end: 20px;
	line-height: 1.625;
}

.q-data-what .what__illust {
	flex-grow: 1;
	display: flex;
	justify-content: center;
	align-items: end;
	text-align: center;
}

.q-data-appeal {
	position: relative;
	isolation: isolate;
	padding-block: 180px;
	overflow: hidden; /* 横スクロールセクション */
}

.q-data-appeal::before {
	content: "";
	position: absolute;
	z-index: -10;
	inset: 0 calc(var(--site-gap2) + 160px) 0 -10000px;
	background-color: var(--color-bg);
}

.q-data-appeal .l-inner {
	position: relative;
}

.q-data-appeal .side-scroll {
	display: flex;
	justify-content: center;
	align-items: center;
}

.q-data-appeal .side-scroll-list-wrapper {
	position: relative;
	width: 100%;
	height: 430px;
}

.q-data-appeal .side-scroll-list {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	gap: 0 12px;
}

.q-data-appeal .side-scroll-item {
	width: 790px;
}

.q-data-appeal .card {
	display: flex;
	height: 430px;
	background-color: #917641;
}

.q-data-appeal .card._bg2 {
	background-color: var(--color-primary);
}

.q-data-appeal .card__image {
	order: -10;
	flex-shrink: 0;
	position: relative;
	width: 290px;
}

.q-data-appeal .card__image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.q-data-appeal .card__detail {
	padding: 57px 40px 30px;
	color: var(--color-light);
}

.q-data-appeal .card__heading {
	display: flex;
	align-items: center;
	-moz-column-gap: 18px;
	column-gap: 18px;
	-webkit-margin-after: 25px;
	margin-block-end: 25px;
}

.q-data-appeal .card__num {
	color: transparent;
	-webkit-text-stroke: 1px var(--color-light);
	text-stroke: 1px var(--color-light);
	font-weight: 500;
	font-size: 3.25rem;
	line-height: 1;
}

.q-data-appeal .card__title {
	font-weight: 500;
	font-size: 1.375rem;
	line-height: 1.5454545455;
	--letter-spacing: 0.08em;
}

.q-data-appeal .card__desc {
	line-height: 1.875;
}

.q-data-special {
	padding-block: 180px;
}

.q-data-special .profile {
	-webkit-margin-after: 80px;
	margin-block-end: 80px;
	display: flex;
	justify-content: space-between;
	padding-inline: 40px 105px;
}

.q-data-special .profile__image {
	order: -10;
	width: 31.5789473684%;
}

.q-data-special .profile__image img {
	width: 100%;
}

.q-data-special .profile__detail {
	position: relative;
	width: 67.2514619883%;
	-webkit-padding-start: 63px;
	padding-inline-start: 63px;
	-webkit-padding-before: 32px;
	padding-block-start: 32px;
}

.q-data-special .profile__title {
	position: absolute;
	top: 33px;
	left: 5px;
}

.q-data-special .profile__heading {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	display: flex;
	align-items: center;
	-moz-column-gap: 10px;
	column-gap: 10px;
	color: var(--color-primary);
	font-weight: 500;
	line-height: 1;
}

.q-data-special .profile__heading::before {
	content: "";
	display: block;
	inline-size: 40px;
	block-size: 1px;
	background-color: currentColor;
}

.q-data-special .profile__table {
	width: 100%;
	line-height: var(--line-height-normal);
}

.q-data-special .profile__table th,
.q-data-special .profile__table td {
	padding-block: 20px 21px;
	border-block: 1px solid var(--color-border2);
}

.q-data-special .profile__table th {
	width: 170px;
	color: var(--color-primary);
	font-weight: 500;
	font-size: 1.125rem;
	line-height: 1.5555555556;
	--letter-spacing: 0.08em;
}

.q-data-special .profile__table td {
	line-height: 1.625;
}

.q-data-special .profile__th {
	display: flex;
	-moz-column-gap: 10px;
	column-gap: 10px;
	align-items: baseline;
}

.q-data-special .profile__th::before {
	flex-shrink: 0;
	content: "";
	display: block;
	width: 10px;
	aspect-ratio: 1/1;
	border-radius: 9999px;
	background-color: currentColor;
	translate: 0 -2px;
}

.q-data-special .impression {
	position: relative;
	display: grid;
	align-items: end;
	-moz-column-gap: 62px;
	column-gap: 62px;
}

.q-data-special .impression_wrapper {
	--l-section-gap-override: 33px;
}

.q-data-special .impression__image {
	grid-area: image;
}

.q-data-special .impression__detail {
	grid-area: detail;
}

.q-data-special .impression__detail {
	position: relative;
	padding: 40px;
	background-color: var(--color-bg);
}

.q-data-special .impression__detail::before {
	content: "";
	display: block;
	width: 50px;
	aspect-ratio: 50/60;
	position: absolute;
	bottom: 40px;
	background-color: var(--color-bg);
}

.q-data-special .impression__title {
	-webkit-margin-after: 5px;
	margin-block-end: 5px;
	color: var(--color-primary);
	font-weight: 500;
	font-size: 1.125rem;
	--letter-spacing: 0.08em;
}

.q-data-special .impression__image {
	width: 286px;
	text-align: center;
}

.q-data-special .impression__count {
	position: absolute;
	top: 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	color: var(--color-primary);
	font-weight: 500;
	line-height: 1;
}

.q-interview-detail-head {
	-webkit-padding-before: var(--header-size);
	padding-block-start: var(--header-size);
	-webkit-padding-after: 35px;
	padding-block-end: 35px;
	overflow: hidden;
	overflow: clip;
}

.q-interview-detail-head .inner {
	display: flex;
	flex-direction: column;
}

.q-interview-detail-head .mv {
	order: -10;
}

.q-interview-detail-head .mv img {
	width: 100%;
}

.q-interview-detail-head .detail {
	display: flex;
	flex-direction: column;
	align-items: center;
	-webkit-margin-before: -54px;
	margin-block-start: -54px;
	text-align: center;
}

.q-interview-detail-head .count {
	order: -20;
	-webkit-margin-after: 60px;
	margin-block-end: 60px;
	font-weight: 600;
	font-size: 3.75rem;
	line-height: 1;
	--letter-spacing: 0.02em;
}

.q-interview-detail-head .count__num {
	display: inline-block;
	-webkit-margin-start: 10px;
	margin-inline-start: 10px;
	font-size: 1.3em;
	translate: 0 0.375rem;
}

.q-interview-detail-head .copy {
	order: -10;
	-webkit-margin-after: 30px;
	margin-block-end: 30px;
	font-weight: 700;
	font-size: 2.125rem;
	line-height: 1.5882352941;
}

.q-interview-detail-head .heading {
	-webkit-margin-after: 30px;
	margin-block-end: 30px;
	font-weight: 500;
	font-size: 1.75rem;
	line-height: 1.1666666667;
}

.q-interview-detail-head .data {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	line-height: var(--line-height-normal);
	gap: 5px 20px;
}

.q-interview-detail-head .info {
	color: var(--color-primary);
}

.q-interview-detail-question01 {
	--l-broken-distance-override: -40px;
	--l-broken-column-gap-override: 40px;
	--l-broken-row-gap-override: 40px;
	--l-broken-image-hight-override: 660px;
	overflow: hidden;
	overflow: clip;
}

.q-interview-detail-question01 .mv {
	position: relative;
	height: 400px;
}

.q-interview-detail-question01 .mv img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.q-interview-detail-question02 {
	padding-block: 80px;
	overflow: hidden;
	overflow: clip;
	padding-bottom: 60px;
}

.q-interview-detail-question02 .container {
	display: grid;
}

.q-interview-detail-question02 .detail {
	grid-area: detail;
}

.q-interview-detail-question02 .pic {
	grid-area: pic;
}

.q-interview-detail-question02 .pic2 {
	grid-area: pic2;
}

.q-interview-detail-schedule {
	position: relative;
	isolation: isolate;
	--q-padding-block: 100px 85px;
	overflow: hidden;
	overflow: clip;
}

.q-interview-detail-schedule::before {
	content: "";
	position: absolute;
	z-index: -10;
	inset-block: var(--q-padding-block);
	inset-inline: 0 var(--site-gap-wide2);
	background-color: var(--color-bg);
}

.q-interview-detail-schedule .container {
	display: grid;
	align-items: center;
}

.q-interview-detail-schedule .schedule,
.q-interview-detail-schedule .image,
.q-interview-detail-schedule .copy {
	grid-area: 1/1/2/2;
}

.q-interview-detail-schedule .image {
	display: flex;
	flex-direction: column;
	row-gap: 20px;
	-webkit-margin-start: calc(50% - 40px);
	margin-inline-start: calc(50% - 40px);
	-webkit-margin-end: calc(var(--site-gap-wide2) + 92px);
	margin-inline-end: calc(var(--site-gap-wide2) + 92px);
}

.q-interview-detail-schedule .image img {
	width: 100%;
}

.q-interview-detail-schedule .schedule {
	position: relative;
	z-index: 10;
	-webkit-margin-start: var(--site-gap2);
	margin-inline-start: var(--site-gap2);
	-webkit-margin-end: calc(50% + 40px + 20px);
	margin-inline-end: calc(50% + 40px + 20px);
	margin-block: 40px;
	padding-block: var(--q-padding-block);
	line-height: 1.875;
}

.q-interview-detail-schedule .schedule__heading {
	-webkit-margin-after: 30px;
	margin-block-end: 30px;
	font-size: 2rem;
	--letter-spacing: 0.08em;
}

.q-interview-detail-schedule .schedule__item {
	display: grid;
	grid-template-columns: 93px 1fr;
	-moz-column-gap: 35px;
	column-gap: 35px;
	overflow: hidden;
}

.q-interview-detail-schedule .schedule__time {
	position: relative;
	border-right: 1px solid var(--color-dark);
	font-weight: 500;
	font-size: 1.125rem;
	--letter-spacing: 0.08em;
}

.q-interview-detail-schedule .schedule__time::before,
.q-interview-detail-schedule .schedule__time::after {
	position: absolute;
	right: -5px;
}

.q-interview-detail-schedule .schedule__time::before {
	content: "";
	width: 10px;
	aspect-ratio: 1/1;
	border-radius: 9999px;
	background-color: var(--color-dark);
	top: 13px;
	z-index: 10;
}

.q-interview-detail-schedule .schedule__time::after {
	width: 10px;
	height: 10000px;
	background-color: var(--color-bg);
}

.q-interview-detail-schedule .schedule__item:not(:last-child) .schedule__time,
.q-interview-detail-schedule .schedule__item:not(:last-child) .schedule__desc {
	-webkit-padding-after: 45px;
	padding-block-end: 45px;
}

.q-interview-detail-schedule .schedule__item:first-child .schedule__time::after {
	content: "";
	bottom: calc(100% - 20px);
}

.q-interview-detail-schedule .schedule__item:last-child .schedule__time::after {
	content: "";
	top: 20px;
}

.q-interview-detail-schedule .copy {
	-webkit-margin-start: var(--site-gap-wide2);
	margin-inline-start: var(--site-gap-wide2);
	margin-block: 40px;
	padding-block: var(--q-padding-block);
	pointer-events: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.q-interview-detail-schedule .copy__text {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	color: var(--color-light);
	font-size: 5.75rem;
	line-height: 1;
}

.q-interview-detail-mv2 {
	position: relative;
	-webkit-margin-end: var(--site-gap-wide2);
	margin-inline-end: var(--site-gap-wide2);
	-webkit-margin-after: 40px;
	margin-block-end: 40px;
	height: 660px;
	overflow: hidden;
	overflow: clip;
}

.q-interview-detail-mv2 img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.q-interview-detail-question03 {
	--l-separate-main-override: 57%;
	padding: 0px 80px 80px;
	/* padding-block: 180px 80px; */
	overflow: hidden;
	overflow: clip;
}

.q-interview-detail-question04 {
	--l-separate-main-override: 50%;
	-webkit-padding-after: 180px;
	padding-block-end: 180px;
	overflow: hidden;
	overflow: clip;
}

.q-interview-detail-other {
	position: relative;
	isolation: isolate;
	-webkit-margin-after: -85px;
	margin-block-end: -85px;
	padding-block: 120px 270px;
	line-height: var(--line-height-normal);
	overflow: hidden;
	overflow: clip;
}

.q-interview-detail-other .swiper-slide {
	translate: -20px 0;
}

.q-interview-detail-other .swiper-control {
	display: flex;
	position: absolute;
	z-index: 100;
	top: 90px;
	right: 0;
}

.q-interview-detail-other .swiper-button-custom {
	display: grid;
	place-content: center;
	width: 100px;
	aspect-ratio: 150/170;
	border: 1px solid var(--color-border);
	background-color: var(--color-dark);
}

.q-interview-detail-other .swiper-button-next-custom svg {
	scale: -1 1;
}

.q-interview-detail-other::before {
	content: "";
	position: absolute;
	z-index: -10;
	inset: 40px 0 0 0;
	background-color: var(--color-bg-dark);
}

.q-interview-detail-other .heading {
	-webkit-margin-after: 50px;
	margin-block-end: 50px;
	color: var(--color-base-light);
	font-size: 2.25rem;
	text-align: center;
}

.q-interview-detail-other .interview {
	line-height: var(--line-height-normal);
	text-decoration: none;
}

.q-interview-detail-other .interview__count {
	display: flex;
	align-items: center;
	-moz-column-gap: 8px;
	column-gap: 8px;
	-webkit-margin-after: 25px;
	margin-block-end: 25px;
	font-weight: 600;
	line-height: 1;
}

.q-interview-detail-other .interview__num {
	translate: 0 -0.125rem;
	font-size: 1.625em;
}

.q-interview-detail-other .interview__copy {
	-webkit-margin-after: 20px;
	margin-block-end: 20px;
	margin-inline: -3px;
	font-weight: 700;
	font-size: 1.875rem;
	line-height: 2;
}

.q-interview-detail-other .interview__title {
	-webkit-margin-after: 12px;
	margin-block-end: 12px;
	font-weight: 500;
	font-size: 1.75rem;
}

.q-interview-detail-other .interview__title-sub {
	-webkit-margin-after: 21px;
	margin-block-end: 21px;
}

.q-interview-detail-other .interview__info {
	color: var(--color-primary);
}

.q-interview-detail-other .interview__arrow {
	-webkit-margin-before: 30px;
	margin-block-start: 30px;
}

.q-interview {
	-webkit-padding-after: 180px;
	padding-block-end: 180px;
}

.q-interview .interview {
	line-height: var(--line-height-normal);
	text-decoration: none;
}

.q-interview .interview_wrapper {
	display: flex;
	flex-direction: column;
	row-gap: 180px;
}

.q-interview .interview__count {
	display: flex;
	align-items: center;
	-moz-column-gap: 8px;
	column-gap: 8px;
	-webkit-margin-after: 45px;
	margin-block-end: 45px;
	font-weight: 600;
	line-height: 1;
}

.q-interview .interview__num {
	translate: 0 -0.125rem;
	font-size: 1.625em;
}

.q-interview .interview__copy {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	-webkit-margin-after: 20px;
	margin-block-end: 20px;
	margin-inline: -3px;
	font-weight: 700;
	font-size: 1.875rem;
	line-height: 2;
}

.q-interview .interview__title {
	-webkit-margin-after: 12px;
	margin-block-end: 12px;
	font-weight: 500;
	font-size: 1.75rem;
}

.q-interview .interview__title-sub {
	-webkit-margin-after: 21px;
	margin-block-end: 21px;
}

.q-interview .interview__info {
	color: var(--color-primary);
}

.q-interview .interview__arrow {
	-webkit-margin-before: 30px;
	margin-block-start: 30px;
}

.q-privacy {
	-webkit-padding-after: 180px;
	padding-block-end: 180px;
}

.q-regular-figure {
	--l-section-gap-override: 26px;
	--l-separate-main-override: 69.5%;
	position: relative;
	isolation: isolate;
	-webkit-padding-after: 180px;
	padding-block-end: 180px;
}

.q-regular-figure::before {
	content: "";
	position: absolute;
	z-index: -10;
	inset: -200px 0 0 var(--site-gap-wide);
	background-color: var(--color-bg);
}

.q-regular-figure .heading {
	display: flex;
	-moz-column-gap: 15px;
	column-gap: 15px;
	align-items: end;
	-webkit-margin-after: 5px;
	margin-block-end: 5px;
	line-height: var(--line-height-normal);
}

.q-regular-figure .heading__icon {
	flex-shrink: 0;
}

.q-regular-figure .heading__title {
	-webkit-padding-after: 5px;
	padding-block-end: 5px;
	font-weight: 500;
	font-size: 1.5rem;
	--letter-spacing: 0.08em;
}

.q-regular-list {
	padding-block: 180px;
}

.q-regular-list .text {
	-webkit-margin-after: 40px;
	margin-block-end: 40px;
}

.q-regular-list .part {
	-webkit-margin-before: 120px;
	margin-block-start: 120px;
}

.q-regular-flow {
	--q-overflow-end: 120px;
	overflow: hidden;
	-webkit-margin-after: calc(var(--q-overflow-end) * -1);
	margin-block-end: calc(var(--q-overflow-end) * -1);
}

.q-regular-flow .inner {
	position: relative;
	isolation: isolate;
	padding-block: 180px calc(180px + var(--q-overflow-end));
}

.q-regular-flow .inner::before {
	content: "";
	position: absolute;
	z-index: -10;
	inset: 0 160px 0 -10000px;
	background-color: var(--color-bg);
}

.q-regular-flow .flow {
	display: flex;
	flex-direction: column;
	row-gap: 40px;
}

.q-regular-flow .flow__item {
	position: relative;
	display: grid;
	grid-template-columns: 96px 1fr;
	-moz-column-gap: 30px;
	column-gap: 30px;
	padding: 20px 30px 20px 0;
	border: 1px solid var(--color-border);
	background-color: var(--color-light);
	--q-hr-color: var(--color-border);
}

.q-regular-flow .flow__item._offer {
	color: var(--color-light);
	border-color: var(--color-accent2);
	background-color: var(--color-accent2);
	--q-hr-color: var(--color-light);
}

.q-regular-flow .flow__item:not(:first-child)::before {
	content: "";
	position: absolute;
	top: -30px;
	left: 30px;
	display: block;
	width: 42px;
	aspect-ratio: 42/20;
	background-color: var(--color-bg-dark2);
	-webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
	clip-path: polygon(0 0, 100% 0, 50% 100%);
}

.q-regular-flow .flow__step {
	position: relative;
	line-height: 1;
	text-align: center;
}

.q-regular-flow .flow__step::after {
	content: "";
	position: absolute;
	inset: 0 0 -3px auto;
	width: 1px;
	background-color: var(--q-hr-color);
}

.q-regular-flow .flow__num {
	display: block;
	-webkit-margin-before: 6px;
	margin-block-start: 6px;
	font-weight: 500;
	font-size: 1.625rem;
}

.q-regular-flow .flow__desc {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	-moz-column-gap: 25px;
	column-gap: 25px;
	-webkit-padding-before: 0.3125rem;
	padding-block-start: 0.3125rem;
}

.q-regular-flow .flow__title {
	flex-shrink: 0;
	font-weight: 700;
	font-size: 1.125rem;
	--letter-spacing: 0.08em;
}

.q-regular-flow .point {
	display: flex;
	gap: 30px;
	-webkit-padding-before: 20px;
	padding-block-start: 20px;
}

.q-regular-flow .point__image {
	order: -10;
	flex-shrink: 0;
	max-width: 36.8171021378%;
}

.q-regular-flow .point__em {
	-webkit-margin-after: 5px;
	margin-block-end: 5px;
}

.q-regular-flow .point__em img {
	display: block;
}

.q-regular-flow .point__title {
	-webkit-margin-after: 10px;
	margin-block-end: 10px;
	font-weight: 700;
}

.q-top-mv {
	--q-space: var(--space-inline);
	position: relative;
}

.q-top-mv .mv {
	position: relative;
	isolation: isolate;
	color: var(--color-light);
	height: 100svh;
	min-height: 650px;
	background-color: var(--color-bg-dark);
}

.q-top-mv .mv::before {
	content: "";
	position: absolute;
	z-index: -10;
	inset: 0;
	background-color: rgba(var(--color-dark-rgb), 0.25);
}

.q-top-mv .mv__copy {
	position: absolute;
	bottom: 170px;
	left: 0;
	padding-inline: var(--q-space);
}

.q-top-mv .copy__main {
	-webkit-padding-start: 5px;
	padding-inline-start: 5px;
}

.q-top-mv .copy__sub {
	-webkit-margin-before: 35px;
	margin-block-start: 35px;
	-webkit-padding-start: 10px;
	padding-inline-start: 10px;
	font-size: 1.5rem;
	font-weight: 500;
}

.q-top-mv .slide {
	position: absolute;
	z-index: -20;
	inset: 0;
}

.q-top-mv .slide__item {
	opacity: 0;
}

.q-top-mv .slide__img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	pointer-events: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.q-top-mv .banner {
	position: absolute;
	bottom: var(--q-space);
	right: var(--q-space);
	display: flex;
	flex-direction: column;
	row-gap: 10px;
	width: 400px;
}

.q-top-mv .banner img {
	width: 100%;
}

.q-top-message {
	padding-block: 185px 88px;
}

.q-top-about {
	overflow: hidden;
	--q-mv-space: 160px;
	--q-position: 20px;
}

.q-top-about .mv {
	position: relative;
	z-index: 10;
	max-height: 490px;
	-webkit-margin-end: var(--site-gap-wide2);
	margin-inline-end: var(--site-gap-wide2);
}

.q-top-about .mv::after {
	content: "";
	display: block;
	-webkit-padding-after: 33.7931034483%;
	padding-block-end: 33.7931034483%;
}

.q-top-about .mv__img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center 30%;
	object-position: center 30%;
}

.q-top-about .mv__copy {
	position: absolute;
	z-index: 10;
	bottom: -111px;
	right: 133px;
}

.q-top-about .bg {
	position: relative;
	height: var(--q-mv-space);
}

.q-top-about .bg::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	height: 450px;
	width: 10000px;
	background-color: var(--color-bg);
}

.q-top-about .container {
	position: relative;
	isolation: isolate;
}

.q-top-about .inner {
	height: 100%;
}

.q-top-about .detail {
	position: relative;
	padding-block: 50px;
}

.q-top-about .pic {
	overflow: hidden;
}

.q-top-about .pic_wrapper {
	position: relative;
	height: 100%;
	-webkit-margin-start: calc(50% - var(--q-position));
	margin-inline-start: calc(50% - var(--q-position));
}

.q-top-about .pic__group {
	position: absolute;
	width: 49.2537313433%;
	-webkit-animation-duration: 30s;
	animation-duration: 30s;
	-webkit-animation-timing-function: linear;
	animation-timing-function: linear;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
	--q-slide1-end: 0 -50%;
	--q-slide2-end: 0 50%;
}

.q-top-about .pic__group._1 {
	top: 0;
	left: 0;
	-webkit-animation-name: about-slide-1;
	animation-name: about-slide-1;
}

.q-top-about .pic__group._2 {
	bottom: 0;
	right: 0;
	-webkit-animation-name: about-slide-2;
	animation-name: about-slide-2;
}

.q-top-about .pic__item {
	padding-block: 5px;
}

.q-top-about .pic__item img {
	width: 100%;
}

.q-top-about .copy {
	position: absolute;
	z-index: -10;
	top: calc(var(--q-mv-space) * -1 - 30px);
	left: 42px;
}

.q-top-environment {
	position: relative;
	isolation: isolate;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.q-top-environment .copy {
	order: -10;
	display: flex;
	justify-content: center;
	text-align: center;
	line-height: 0.6;
	padding-bottom: 50px;
}

.q-top-interview {
	position: relative;
	isolation: isolate;
	display: flex;
	flex-direction: column;
	-webkit-padding-after: 180px;
	padding-block-end: 180px;
	overflow: hidden;
}

.q-top-interview .copy {
	order: -10;
	display: flex;
	justify-content: center;
	text-align: center;
	line-height: 0.6;
	padding-bottom: 50px;
}

.q-top-interview .head {
	-webkit-margin-after: 40px;
	margin-block-end: 40px;
}

.q-top-interview .interview {
	position: relative;
}

.q-top-interview .interview img {
	opacity: 1;
	transition-property: translate, opacity;
	transition-duration: var(--sec), var(--sec-fast);
	will-change: translate;
}

.q-top-interview .interview__item {
	text-decoration: none;
}

.q-top-interview .interview__thumb {
	position: relative;
	z-index: 10;
	overflow: hidden;
}

.q-top-interview .interview__mv img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center 20%;
	object-position: center 20%;
}

.q-top-interview .interview__detail {
	line-height: var(--line-height-normal);
	transition-property: opacity, visibility;
	transition-duration: var(--sec);
}

.q-top-interview .interview__label {
	display: flex;
	align-items: end;
	-moz-column-gap: 1em;
	column-gap: 1em;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
	-webkit-margin-after: 10px;
	margin-block-end: 10px;
	padding: 1px 10px;
	color: var(--color-light);
	background-color: var(--color-dark);
}

.q-top-interview .interview__title {
	font-size: 0.9375rem;
}

.q-top-interview .interview__title-sub {
	-webkit-padding-after: 2px;
	padding-block-end: 2px;
	font-size: 0.75rem;
}

.q-top-interview .interview__copy {
	max-width: 650px;
	font-weight: 700;
	font-size: 2.125rem;
	line-height: 1.5882352941;
}

.q-top-interview .interview__info {
	-webkit-margin-before: 15px;
	margin-block-start: 15px;
	color: var(--color-primary);
	font-size: 0.75rem;
}

.q-top-interview .interview:focus-visible .interview__thumb img {
	translate: 100% 0;
}

.q-top-interview .interview:focus-visible .interview__mv img {
	translate: 0 0;
}

.q-top-interview .interview__item:focus-visible .interview__detail {
	opacity: 1;
	visibility: visible;
}

.q-work-navi {
	-webkit-padding-after: 80px;
	padding-block-end: 80px;
}

.q-work-navi .p-navi__list {
	padding-inline: 0;
}

.q-work-occupation {
	-webkit-padding-after: 180px;
	padding-block-end: 180px;
	overflow: clip;
}

.q-work-occupation .occupation {
	position: relative;
}

.q-work-occupation .occupation_wrapper {
	display: flex;
	flex-direction: column;
	row-gap: 120px;
}

.q-work-occupation .occupation__heading {
	position: relative;
	-webkit-margin-after: 28px;
	margin-block-end: 28px;
	-webkit-padding-start: 20px;
	padding-inline-start: 20px;
	font-weight: 500;
	font-size: 1.5rem;
	line-height: 1.75;
	--letter-spacing: 0.08em;
}

.q-work-occupation .occupation__heading::before {
	content: "";
	position: absolute;
	top: 0.375rem;
	bottom: 0.5rem;
	left: 0;
	width: 2px;
	background-color: var(--color-dark);
}

.q-work-occupation .occupation__copy {
	--c-copy-edge-color: var(--color-base-light);
}

.q-work-system {
	overflow: hidden;
}

.q-work-system .inner {
	position: relative;
	isolation: isolate;
	padding-block: 180px;
}

.q-work-system .inner::before {
	content: "";
	position: absolute;
	z-index: -10;
	inset: 0 -10000px 0 160px;
	background-color: var(--color-bg);
}

.q-work-system .head {
	-webkit-margin-after: var(--space-block);
	margin-block-end: var(--space-block);
}

.q-work-system .text {
	max-width: 725px;
}

.q-work-system .table {
	-webkit-margin-before: 35px;
	margin-block-start: 35px;
}

.q-work-system .system_wrapper {
	--l-section-gap-override: 40px;
}

.q-work-communication {
	padding-block: 180px;
}

.q-work-communication .communication {
	display: flex;
	flex-direction: column;
}

.q-work-communication .communication__mv {
	order: -10;
	position: relative;
	height: 580px;
}

.q-work-communication .communication__mv img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center 15%;
	object-position: center 15%;
}

.q-work-communication .communication__content {
	position: relative;
	z-index: 10;
	-webkit-margin-before: -82px;
	margin-block-start: -82px;
	padding: 50px 50px 0;
	background-color: var(--color-light);
}

.q-work-communication .communication__content2 {
	max-width: 500px;
}

.q-work-communication .communication:not(._reverse) .communication__mv {
	-webkit-margin-end: var(--site-gap-wide2);
	margin-inline-end: var(--site-gap-wide2);
}

.q-work-communication .communication:not(._reverse) .communication__content {
	-webkit-margin-start: calc(50% - 50px);
	margin-inline-start: calc(50% - 50px);
	-webkit-padding-end: var(--site-gap-wide2);
	padding-inline-end: var(--site-gap-wide2);
}

.q-work-communication .communication._reverse .communication__mv {
	-webkit-margin-start: var(--site-gap-wide2);
	margin-inline-start: var(--site-gap-wide2);
}

.q-work-communication .communication._reverse .communication__content {
	-webkit-margin-end: calc(50% - 50px);
	margin-inline-end: calc(50% - 50px);
	-webkit-padding-start: var(--site-gap-wide2);
	padding-inline-start: var(--site-gap-wide2);
}

.q-work-communication .communication._reverse .communication__content2 {
	-webkit-margin-start: auto;
	margin-inline-start: auto;
}

.q-work-benefit {
	position: relative;
	isolation: isolate;
	padding-block: 180px;
	overflow: hidden;
}

.q-work-benefit::before {
	content: "";
	position: absolute;
	z-index: -10;
	inset: 0 calc(var(--site-gap2) + 160px) 0 -10000px;
	background-color: var(--color-bg);
}

.q-work-benefit .mv {
	position: relative;
	height: 750px;
	-webkit-margin-after: 40px;
	margin-block-end: 40px;
}

.q-work-benefit .list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 8px;
}

.q-work-benefit .list__item {
	padding: 30px 30px 25px;
	border: 1px solid var(--color-border2);
	background-color: var(--color-light);
}

.q-work-benefit .list__title {
	display: flex;
	align-items: center;
	-moz-column-gap: 10px;
	column-gap: 10px;
	-webkit-margin-after: 17px;
	margin-block-end: 17px;
	font-size: 1.125rem;
	line-height: var(--line-height-normal);
}

.q-work-benefit .list__title::before {
	content: "";
	display: block;
	width: 10px;
	aspect-ratio: 1/1;
	border-radius: 9999px;
	background-color: var(--color-dark);
	translate: 0 0.0625rem;
}

.q-work-culture {
	padding-block: 180px;
}

.q-work-culture .content {
	--l-separate-main-override: 56%;
}

.q-work-culture .content__mv {
	-webkit-margin-after: 40px;
	margin-block-end: 40px;
}

@media (hover: hover) and (pointer: fine) {

.wp-pagenavi .page:hover {
	color: var(--color-accent2);
}

:where(.wp-block-post-content,
.wp-gutenberg) a:not([class]):hover {
	text-decoration: none;
}

.c-arrow_wrapper:hover .c-arrow__icon::before {
	-webkit-animation-name: c-arrow-before2;
	animation-name: c-arrow-before2;
}

.c-arrow_wrapper:hover .c-arrow__icon::after {
	-webkit-animation-name: c-arrow-after2;
	animation-name: c-arrow-after2;
}

.c-bread__list a:hover {
	text-decoration: none;
}

.c-button:hover {
	--c-button-before-bg-position: 100% 0;
	--c-button-after-bg-position: 0 0;
}

.c-hover._dark:hover::after {
	opacity: 1;
}

.c-hover._toggle:hover::before {
	opacity: 0;
}

.c-hover._toggle:hover::after {
	opacity: 1;
}

.c-post:hover {
	--c-post-scale: var(--zoom);
	--c-post-title-color: var(--color-primary);
}

.c-textlink:hover {
	text-decoration: none;
}

.c-toggle._hover:hover .c-toggle__item._before {
	opacity: 0;
	visibility: hidden;
}

.c-toggle._hover:hover .c-toggle__item._after {
	opacity: 1;
	visibility: visible;
}

.p-banner__item:hover {
	--q-banner-scale: var(--zoom);
	--q-banner-opacity: 0;
}

.p-cta__button:hover::before {
	opacity: 0;
}

.p-cta__button:hover::after {
	opacity: 1;
}

.p-filter__button:hover::after {
	opacity: 1;
}

.p-form__agree a:hover {
	text-decoration: none;
}

.p-form__submit-button:hover::after {
	opacity: 1;
}

.p-navi__link:hover .p-navi__icon {
	translate: 0 5px;
}

.p-thanks__button:hover::before {
	opacity: 1;
}

.g-header .navi__button:hover::before {
	transform: scale(1, 1);
}

.g-header .mega__link:hover .mega__title {
	opacity: 0.4;
}

.g-header .mega__link:hover .mega__title-sub {
	opacity: 0.3;
}

.g-footer .pagetop:hover {
	opacity: var(--opacity);
}

.q-top-interview .interview:hover .interview__thumb img {
	translate: 100% 0;
}

.q-top-interview .interview:hover .interview__mv img {
	translate: 0 0;
}

.q-top-interview .interview__item:hover .interview__detail {
	opacity: 1;
	visibility: visible;
}

}

@media (min-width: 720.02px) {

.q-data-special .impression:not(._reverse) {
	grid-template: "detail image" auto/1fr auto;
	-webkit-padding-start: 42px;
	padding-inline-start: 42px;
	-webkit-padding-end: 30px;
	padding-inline-end: 30px;
}

.q-data-special .impression:not(._reverse) .impression__detail::before {
	left: 100%;
	-webkit-clip-path: polygon(0 0, 100% 50%, 0 100%);
	clip-path: polygon(0 0, 100% 50%, 0 100%);
}

.q-data-special .impression:not(._reverse) .impression__count {
	left: 0;
}

.q-data-special .impression._reverse {
	grid-template: "image detail" auto/auto 1fr;
	-webkit-padding-start: 40px;
	padding-inline-start: 40px;
	-webkit-padding-end: 32px;
	padding-inline-end: 32px;
}

.q-data-special .impression._reverse .impression__detail::before {
	right: 100%;
	-webkit-clip-path: polygon(100% 0, 0 50%, 100% 100%);
	clip-path: polygon(100% 0, 0 50%, 100% 100%);
}

.q-data-special .impression._reverse .impression__count {
	right: 0;
}

}

@media (min-width: 720.02px) and (max-width: 1000px) {

.q-data-special .impression:not(._reverse) {
	-webkit-padding-end: 0;
	padding-inline-end: 0;
}

.q-data-special .impression._reverse {
	-webkit-padding-start: 0;
	padding-inline-start: 0;
}

}

@media (min-width: 768.02px) {

.l-inner {
	box-sizing: content-box;
}

.l-media {
	display: grid;
	grid-template: "l-media-image l-media-detail" auto/calc(50% + var(--l-media-image-position)) 1fr;
}

.l-media._reverse {
	grid-template: "l-media-detail l-media-image" auto/1fr calc(50% + var(--l-media-image-position));
}

.c-copy._vertical_pc {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

.c-order__item._pc_first {
	order: var(--c-order-first);
}

.c-order__item._sp_second {
	order: var(--c-order-second);
}

.c-text._pc_center {
	text-align: center;
}

.p-form__item {
	display: grid;
	grid-template-columns: 290px 1fr;
	-moz-column-gap: 10px;
	column-gap: 10px;
}

.q-about-top-message .mv {
	display: grid;
}

.q-about-top-message .mv__desc,
.q-about-top-message .mv__image {
	grid-area: 1/1/2/2;
}

.q-about-top-message .mv__image {
	pointer-events: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.q-data-company .company__illust {
	min-height: 230px;
}

.q-interview-detail-question02 .container {
	grid-template: "detail pic" 1fr "pic2   pic2" auto/1fr auto;
	gap: 70px 80px;
}

.q-interview-detail-question02 .detail {
	-webkit-margin-start: var(--site-gap2);
	margin-inline-start: var(--site-gap2);
	-webkit-padding-before: 74px;
	padding-block-start: 74px;
}

.q-interview-detail-question02 .pic {
	-webkit-margin-end: var(--site-gap-wide2);
	margin-inline-end: var(--site-gap-wide2);
	width: 300px;
}

.q-interview-detail-question02 .pic img {
	width: 100%;
}

.q-interview-detail-question02 .pic2 {
	position: relative;
	-webkit-margin-start: var(--site-gap-wide2);
	margin-inline-start: var(--site-gap-wide2);
	height: 500px;
}

.q-interview-detail-question02 .pic2 img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.q-interview-detail-other .interview {
	position: relative;
	isolation: isolate;
	display: grid;
	padding: 0 50px 37px 20px;
}

.q-interview-detail-other .interview::before {
	content: "";
	position: absolute;
	inset: 37px 0 0;
	background-color: var(--color-light);
}

.q-interview-detail-other .interview__mv-sp {
	display: none;
}

.q-interview-detail-other .interview__content,
.q-interview-detail-other .interview__mv {
	grid-area: 1/1/2/2;
	position: relative;
	pointer-events: auto;
}

.q-interview-detail-other .interview__content {
	z-index: 10;
}

.q-interview-detail-other .interview__detail {
	display: flex;
	flex-direction: column;
	justify-content: end;
	height: 100%;
}

.q-interview-detail-other .interview__mv {
	min-height: 490px;
}

.q-interview-detail-other .interview__mv img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	opacity: 1;
}

.q-interview-detail-other .interview__detail {
	align-items: end;
	-webkit-padding-end: 10px;
	padding-inline-end: 10px;
}

.q-interview-detail-other .interview__desc {
	display: flex;
	flex-direction: column;
	align-items: end;
	width: 100%;
}

.q-interview-detail-other .interview__copy {
	flex-shrink: 0;
}

.q-interview-detail-other .interview__mv {
	-webkit-margin-end: max(calc(50% - 290px), 270px);
	margin-inline-end: max(calc(50% - 290px), 270px);
}

.q-interview-detail-other .interview__copy span {
	padding: 3px 5px;
	background-color: #fff;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
}

.q-interview .interview {
	display: grid;
	pointer-events: none;
}

.q-interview .interview__mv-sp {
	display: none;
}

.q-interview .interview__content,
.q-interview .interview__mv {
	grid-area: 1/1/2/2;
	position: relative;
	pointer-events: auto;
}

.q-interview .interview__content {
	z-index: 10;
}

.q-interview .interview__detail {
	display: flex;
	flex-direction: column;
	justify-content: end;
	height: 100%;
	-webkit-padding-before: var(--space-block);
	padding-block-start: var(--space-block);
}

.q-interview .interview__mv {
	min-height: 590px;
}

.q-interview .interview__mv img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	opacity: 1;
}

.q-interview .interview:not(._reverse) .interview__content {
	-webkit-margin-start: var(--site-gap2);
	margin-inline-start: var(--site-gap2);
	-webkit-margin-end: calc(50% - 200px);
	margin-inline-end: calc(50% - 200px);
}

.q-interview .interview:not(._reverse) .interview__detail {
	-webkit-padding-start: 10px;
	padding-inline-start: 10px;
}

.q-interview .interview:not(._reverse) .interview__mv {
	-webkit-margin-start: max(calc(50% - 214px), 270px);
	margin-inline-start: max(calc(50% - 214px), 270px);
	-webkit-margin-end: var(--site-gap-wide2);
	margin-inline-end: var(--site-gap-wide2);
}

.q-interview .interview._reverse .interview__content {
	-webkit-margin-start: calc(50% - 200px);
	margin-inline-start: calc(50% - 200px);
	-webkit-margin-end: var(--site-gap2);
	margin-inline-end: var(--site-gap2);
}

.q-interview .interview._reverse .interview__detail {
	align-items: end;
	-webkit-padding-end: 10px;
	padding-inline-end: 10px;
}

.q-interview .interview._reverse .interview__desc {
	display: flex;
	flex-direction: column;
	align-items: end;
}

.q-interview .interview._reverse .interview__mv {
	-webkit-margin-start: var(--site-gap-wide2);
	margin-inline-start: var(--site-gap-wide2);
	-webkit-margin-end: max(calc(50% - 214px), 270px);
	margin-inline-end: max(calc(50% - 214px), 270px);
}

.q-interview .interview__copy span {
	padding: 3px 5px;
	background-color: #fff;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
}

.q-work-system .system {
	display: grid;
	grid-template-columns: 59% 1fr;
	grid-template-rows: auto 1fr;
	-moz-column-gap: 30px;
	column-gap: 30px;
}

.q-work-system .system__heading {
	grid-area: 1/2/2/3;
}

.q-work-system .system__image {
	grid-area: 1/1/3/2;
}

.q-work-system .system__detail {
	grid-area: 2/2/3/3;
}

}

@media (min-width: 768px) {

html.is-scrolled {
	--header-size: 70px;
}

html.is-scrolled .logo__title {
	font-size: 0.875rem;
}

html.is-scrolled .logo__title._2 {
	font-size: 1.625rem;
}

html.is-scrolled .logo__image {
	width: 70px;
}

html.is-scrolled .logo__image img {
	width: 50px;
}

}

@media (min-width: 768.02px) and (max-width: 1000px) {

.q-interview-detail-question02 .container {
	gap: 40px 40px;
}

.q-interview-detail-question02 .detail {
	-webkit-padding-before: 0;
	padding-block-start: 0;
}

.q-interview-detail-question02 .pic2 {
	height: auto;
}

.q-interview-detail-question02 .pic2 img {
	position: static;
	width: 100%;
	aspect-ratio: 2900/1000;
}

}

@media (min-width: 880.02px) {

.q-top-about .container {
	display: grid;
	align-items: center;
	min-height: 813px;
}

.q-top-about .container__item {
	grid-area: 1/1/2/2;
}

.q-top-about .container__item._center {
	align-self: center;
}

.q-top-about .container__item._max {
	height: 100%;
}

.q-top-about .detail {
	-webkit-margin-end: calc(50% + var(--q-position) + 10px);
	margin-inline-end: calc(50% + var(--q-position) + 10px);
}

.q-top-about .pic {
	position: absolute;
	inset: 0;
}

}

@media (min-width: 1000.02px) {

.l-broken__content,
.l-broken__image {
	grid-area: 1/1/2/2;
}

.l-broken:not(.l-broken._reverse) .l-broken__detail {
	margin-inline: 0 calc( 							50% 							+ var(--l-broken-distance) 							+ var(--l-broken-column-gap) 						);
}

.l-broken:not(.l-broken._reverse) .l-broken__image {
	margin-inline: calc(50% - var(--l-broken-distance)) 0;
}

.l-broken._reverse .l-broken__detail {
	margin-inline: calc( 							50% 							+ var(--l-broken-distance) 							+ var(--l-broken-column-gap) 						) 0;
}

.l-broken._reverse .l-broken__image {
	margin-inline: 0 calc(50% - var(--l-broken-distance));
}

.l-broken__image {
	position: relative;
	min-height: var(--l-broken-image-hight);
}

.l-broken__image._sp_first {
	order: -10;
}

.l-broken__img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.l-broken__img._bg {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	pointer-events: none;
}

.l-broken_wrapper._turn .l-broken:nth-child(2n+1) .l-broken__detail {
	margin-inline: 0 calc( 							50% 							+ var(--l-broken-distance) 							+ var(--l-broken-column-gap) 						);
}

.l-broken_wrapper._turn .l-broken:nth-child(2n+1) .l-broken__image {
	margin-inline: calc(50% - var(--l-broken-distance)) 0;
}

.l-broken_wrapper._turn .l-broken:nth-child(2n) .l-broken__detail {
	margin-inline: calc( 							50% 							+ var(--l-broken-distance) 							+ var(--l-broken-column-gap) 						) 0;
}

.l-broken_wrapper._turn .l-broken:nth-child(2n) .l-broken__image {
	margin-inline: 0 calc(50% - var(--l-broken-distance));
}

.l-broken_wrapper._turn2 .l-broken:nth-child(2n+1) .l-broken__detail {
	margin-inline: calc( 							50% 							+ var(--l-broken-distance) 							+ var(--l-broken-column-gap) 						) 0;
}

.l-broken_wrapper._turn2 .l-broken:nth-child(2n+1) .l-broken__image {
	margin-inline: 0 calc(50% - var(--l-broken-distance));
}

.l-broken_wrapper._turn2 .l-broken:nth-child(2n) .l-broken__detail {
	margin-inline: 0 calc( 							50% 							+ var(--l-broken-distance) 							+ var(--l-broken-column-gap) 						);
}

.l-broken_wrapper._turn2 .l-broken:nth-child(2n) .l-broken__image {
	margin-inline: calc(50% - var(--l-broken-distance)) 0;
}

.c-terms {
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
}

.c-terms._3n {
	grid-template-columns: repeat(3, auto);
}

.c-terms._4n {
	grid-template-columns: repeat(4, auto);
}

.p-banner {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}

.p-banner__item._small {
	min-height: 430px;
}

.g-header .menu-button {
	display: none;
}

.q-about-top-message .desc {
	max-width: 700px;
}

.q-about-business .image {
	-webkit-margin-before: 80px;
	margin-block-start: 80px;
}

.q-about-business .media2 {
	display: grid;
	grid-template-columns: repeat(2, 48%);
	justify-content: space-between;
}

.q-about-business .media2__detail {
	grid-area: 1/2/2/3;
}

.q-about-business .media2__image {
	grid-area: 1/1/2/2;
}

.q-data-company .company__illust._1 {
	-webkit-padding-after: 50px;
	padding-block-end: 50px;
}

.q-data-what .what._w2 {
	width: 45%;
}

.q-data-what .what._w3 {
	width: 49.7%;
}

.q-data-what .what__title._large {
	font-size: 1.375rem;
	line-height: 1.4545454545;
}

.q-data-what .what__illust._4 {
	-webkit-padding-end: 23px;
	padding-inline-end: 23px;
	-webkit-padding-start: 18px;
	padding-inline-start: 18px;
	align-items: start;
}

.q-data-what .what__illust._5 {
	-webkit-margin-end: -5px;
	margin-inline-end: -5px;
	-webkit-padding-before: 10px;
	padding-block-start: 10px;
	align-items: center;
}

.q-data-what .what__illust._9 {
	align-items: start;
}

.q-data-what .what__illust._10 {
	align-items: center;
}

.q-data-what .what._layout2 {
	display: grid;
	grid-template-columns: 1fr auto;
	grid-template-rows: auto 1fr;
	-moz-column-gap: 5px;
	column-gap: 5px;
	-webkit-padding-after: 25px;
	padding-block-end: 25px;
}

.q-data-what .what._layout2 .what__title {
	grid-area: 1/1/2/2;
}

.q-data-what .what._layout2 .what__desc {
	grid-area: 2/1/3/2;
}

.q-data-what .what._layout2 .what__illust {
	grid-area: 1/2/3/3;
}

.q-data-what .what._layout3 {
	display: grid;
	grid-template-columns: 1fr auto;
	grid-template-rows: auto 1fr;
	-moz-column-gap: 5px;
	column-gap: 5px;
	-webkit-padding-after: 25px;
	padding-block-end: 25px;
}

.q-data-what .what._layout3 .what__title {
	grid-area: 1/1/2/3;
}

.q-data-what .what._layout3 .what__desc {
	grid-area: 2/1/3/2;
}

.q-data-what .what._layout3 .what__illust {
	grid-area: 2/2/3/3;
}

.q-interview-detail-question01 .content {
	-webkit-padding-before: 30px;
	padding-block-start: 30px;
}

.q-regular-figure .body {
	-webkit-padding-before: 10px;
	padding-block-start: 10px;
}

.q-top-interview .interview {
	pointer-events: none;
}

.q-top-interview .wrapper.is-show .interview__item {
	pointer-events: auto;
	-webkit-animation-name: interview;
	animation-name: interview;
	-webkit-animation-duration: 1.5s;
	animation-duration: 1.5s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}

.q-top-interview .interview {
	display: grid;
	grid-template-columns: repeat(5, 19.2307692308%);
	align-items: start;
	justify-content: space-between;
}

.q-top-interview .interview__item {
	display: grid;
}

.q-top-interview .interview__item:nth-child(2n) {
	-webkit-margin-before: 12%;
	margin-block-start: 12%;
}

.q-top-interview .interview__thumb,
.q-top-interview .interview__mv {
	grid-area: 1/1/2/2;
}

.q-top-interview .interview__mv {
	-webkit-clip-path: inset(0);
	clip-path: inset(0);
}

.q-top-interview .interview__mv img {
	translate: -19.2307692308% 0;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.q-top-interview .interview__mv img.is-current {
	opacity: 1;
}

.q-top-interview .interview__mv img.is-not-current {
	opacity: 0;
}

.q-top-interview .interview__detail {
	pointer-events: none;
	opacity: 0;
	visibility: hidden;
	position: absolute;
	z-index: 100;
	left: -10000px;
	right: -10000px;
	width: calc(var(--vw) * 100);
	margin-inline: auto;
	padding-inline: var(--space-inline);
	bottom: 10px;
}

.q-work-occupation .occupation_wrapper {
	-webkit-padding-before: 62px;
	padding-block-start: 62px;
}

.q-work-occupation .occupation {
	display: grid;
}

.q-work-occupation .occupation__mv-sp {
	display: none;
}

.q-work-occupation .occupation__content,
.q-work-occupation .occupation__mv {
	grid-area: 1/1/2/2;
	position: relative;
}

.q-work-occupation .occupation__content {
	z-index: 10;
}

.q-work-occupation .occupation__detail {
	display: flex;
	flex-direction: column;
	justify-content: end;
	height: 100%;
	-webkit-padding-before: var(--space-block);
	padding-block-start: var(--space-block);
}

.q-work-occupation .occupation__mv {
	min-height: 650px;
}

.q-work-occupation .occupation__mv img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.q-work-occupation .occupation__copy._sp {
	display: none;
}

.q-work-occupation .occupation:not(._reverse) .occupation__content {
	-webkit-margin-start: var(--site-gap2);
	margin-inline-start: var(--site-gap2);
	-webkit-margin-end: calc(50% + 140px);
	margin-inline-end: calc(50% + 140px);
}

.q-work-occupation .occupation:not(._reverse) .occupation__detail {
	-webkit-padding-start: 10px;
	padding-inline-start: 10px;
}

.q-work-occupation .occupation:not(._reverse) .occupation__mv {
	-webkit-margin-start: calc(50% - 100px);
	margin-inline-start: calc(50% - 100px);
	-webkit-margin-end: var(--site-gap-wide2);
	margin-inline-end: var(--site-gap-wide2);
}

.q-work-occupation .occupation:not(._reverse) .occupation__copy {
	position: absolute;
	top: -60px;
	left: calc(var(--site-gap2) + 10px);
}

.q-work-occupation .occupation._reverse .occupation__content {
	-webkit-margin-start: calc(50% + 140px);
	margin-inline-start: calc(50% + 140px);
	-webkit-margin-end: var(--site-gap2);
	margin-inline-end: var(--site-gap2);
}

.q-work-occupation .occupation._reverse .occupation__detail {
	align-items: end;
	-webkit-padding-end: 10px;
	padding-inline-end: 10px;
}

.q-work-occupation .occupation._reverse .occupation__desc {
	display: flex;
	flex-direction: column;
	align-items: end;
}

.q-work-occupation .occupation._reverse .occupation__mv {
	-webkit-margin-start: var(--site-gap-wide2);
	margin-inline-start: var(--site-gap-wide2);
	-webkit-margin-end: calc(50% - 100px);
	margin-inline-end: calc(50% - 100px);
}

.q-work-occupation .occupation._reverse .occupation__copy {
	position: absolute;
	top: -60px;
	right: var(--site-gap2);
}

.q-work-occupation .occupation__content {
	-webkit-padding-before: 115px;
	padding-block-start: 115px;
}

.q-work-occupation .occupation__copy {
	font-size: 5rem;
}

.q-work-benefit .mv img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

}

@media (max-width: 1000px) and (min-width: 768.02px) {

.g-footer .info {
	display: grid;
	grid-template-columns: auto 1fr;
	grid-template-rows: auto 1fr;
	-moz-column-gap: 50px;
	column-gap: 50px;
	justify-content: space-between;
}

.g-footer .logo {
	grid-area: 1/1/3/2;
}

.g-footer .desc {
	grid-area: 1/2/2/3;
}

.g-footer .link {
	grid-area: 2/2/3/3;
}

}

@media (max-width: 1500px) {

.q-top-about .copy {
	display: none;
}

}

@media (max-width: 1440px) {

.g-footer {
	padding-block: var(--space-block) 60px;
	-webkit-padding-end: 60px;
	padding-inline-end: 60px;
}

.g-footer .copyright {
	-webkit-margin-end: -60px;
	margin-inline-end: -60px;
}

}

@media (max-width: 1300px) {

.c-copy {
	font-size: 14.6153846154vw;
}

.c-heading {
	font-size: 0.875rem;
}

.p-cta {
	font-size: 0.875rem;
}

.p-cta__button {
	min-height: 180px;
}

.p-recruit {
	-webkit-padding-after: var(--space-block);
	padding-block-end: var(--space-block);
}

.p-recruit__heading-sub {
	font-size: 6.25rem;
}

.g-header .logo {
	font-size: 0.8125rem;
}

.g-header .logo__link {
	-moz-column-gap: 15px;
	column-gap: 15px;
}

.g-header .logo__image {
	width: 90px;
	padding-inline: 15px;
}

.g-header .navi {
	-moz-column-gap: 15px;
	column-gap: 15px;
}

.g-header .navi__button {
	padding-inline: 12px;
	font-size: 0.875rem;
}

.g-header .navi__button svg {
	translate: 0 5%;
}

.g-header .navi__icon {
	width: 12px;
}

.g-header .button {
	width: 120px;
	min-height: 40px;
	font-size: 1rem;
	-webkit-padding-after: 2px;
	padding-block-end: 2px;
}

.g-header .mega {
	--q-mega-size: 90px;
}

.g-header .mega {
	-moz-column-gap: 20px;
	column-gap: 20px;
}

.g-header .mega__head {
	width: 220px;
}

.g-header .mega__heading {
	font-size: 1.375rem;
}

.g-header .mega__link {
	padding-inline: 20px;
}

.g-header .mega__title {
	font-size: 1rem;
}

.g-header .mega__title-sub {
	font-size: 0.8125rem;
}

.g-footer .pagetop {
	top: var(--space-block);
}

.g-footer .logo {
	-webkit-margin-after: 30px;
	margin-block-end: 30px;
	font-size: 0.8125rem;
}

.g-footer .logo__link {
	-moz-column-gap: 15px;
	column-gap: 15px;
}

.g-footer .logo__image {
	width: 90px;
	padding-inline: 15px;
}

.g-footer .navi__list {
	gap: 30px 40px;
}

.g-footer .copyright {
	-webkit-margin-before: var(--space-block);
	margin-block-start: var(--space-block);
}

.q-top-mv .mv__copy {
	bottom: 230px;
}

.q-top-mv .copy__main img {
	width: 440px;
}

.q-top-mv .copy__sub {
	font-size: 1.25rem;
}

.q-top-mv .banner {
	width: 340px;
}

.q-top-message {
	padding-block: var(--space-block);
}

.q-top-about {
	--q-mv-space: 100px;
}

.q-top-about .mv__copy {
	bottom: -50px;
	right: var(--space-inline);
}

.q-top-interview {
	-webkit-padding-after: var(--space-block);
	padding-block-end: var(--space-block);
}

}

@media (max-width: 1000px) {

.l-separate._bp1_vertical {
	display: block;
}

.l-broken {
	display: flex;
	flex-direction: column;
	row-gap: var(--l-broken-row-gap);
}

.l-broken__image._vertical_first {
	order: -10;
}

.wp-pagenavi {
	-moz-column-gap: 30px;
	column-gap: 30px;
}

.wp-pagenavi a,
.wp-pagenavi span {
	font-size: 1.5rem;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
	width: 30px;
}

.c-copy-edge {
	font-size: 5rem;
}

.c-copy-edge._mb {
	-webkit-margin-after: 60px;
	margin-block-end: 60px;
}

.c-heading__title {
	font-size: 1.875em;
}

.c-input textarea {
	min-height: 240px;
}

.c-post_wrapper {
	grid-template-columns: repeat(2, 49%);
}

.c-search-requirements__title {
	font-size: 1.375rem;
}

.c-search__input {
	padding-inline: 20px;
	line-height: 56px;
}

.c-stepbar__item:not(:first-child)::before {
	width: 80px;
}

.c-terms {
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	-moz-column-gap: 20px;
	column-gap: 20px;
}

.p-archive {
	-webkit-padding-after: var(--space-block);
	padding-block-end: var(--space-block);
}

.p-archive__head {
	-webkit-margin-after: var(--space-block);
	margin-block-end: var(--space-block);
}

.p-archive__foot {
	-webkit-margin-before: var(--space-block);
	margin-block-start: var(--space-block);
}

.p-area__title {
	padding-inline: 15px;
}

.p-area__detail {
	padding-inline: 15px;
}

.p-banner._pt {
	-webkit-padding-before: var(--space-block);
	padding-block-start: var(--space-block);
}

.p-banner._pb {
	-webkit-padding-after: var(--space-block);
	padding-block-end: var(--space-block);
}

.p-banner__item {
	min-height: 0;
	padding: var(--space-block) var(--space-inline) 30px;
}

.p-filter__title {
	padding-inline: 15px;
	font-size: 1.25rem;
}

.p-filter__detail {
	padding-inline: 15px;
}

.p-filter__button {
	width: 280px;
	min-height: 66px;
}

.p-form {
	-webkit-padding-after: var(--space-block);
	padding-block-end: var(--space-block);
}

.p-form__head {
	-webkit-margin-after: var(--space-block);
	margin-block-end: var(--space-block);
}

.p-form__item {
	grid-template-columns: 180px 1fr;
}

.p-form__exp {
	font-size: 0.875rem;
}

.p-form__submit-button {
	width: 320px;
	min-height: 80px;
}

.p-pagetitle {
	font-size: 1.25rem;
}

.p-pagetitle {
	font-size: 1rem;
}

.p-pagetitle__head {
	--p-pagetitle-padding-top: 20px;
}

.p-pagetitle__head {
	min-height: 260px;
}

.p-pagetitle__mv {
	height: 400px;
}

.p-recruit__mv {
	min-height: 0;
}

.p-recruit__heading-sub {
	font-size: 5rem;
}

.p-recruit__desc {
	font-size: 1.25rem;
}

.p-require {
	-webkit-padding-after: var(--space-block);
	padding-block-end: var(--space-block);
}

.p-require__head {
	-webkit-margin-after: var(--space-block);
	margin-block-end: var(--space-block);
}

.p-require__title {
	font-size: 1.75rem;
}

html.is-menu-open {
	--g-header-background: transparent;
}

.g-header .inner {
	padding-inline: 10px;
}

.g-header .logo__link {
	-moz-column-gap: 10px;
	column-gap: 10px;
}

.g-header .navi {
	display: none;
}

.g-footer .container {
	display: block;
}

.g-footer .logo {
	font-size: 0.6875rem;
}

.g-footer .link {
	-webkit-margin-before: 0;
	margin-block-start: 0;
}

.g-footer .navi__list {
	grid-template-columns: repeat(3, auto);
	gap: 20px 20px;
	font-size: 0.9375rem;
}

.q-about-navi {
	padding-block: var(--space-block);
}

.q-about-top-message {
	-webkit-padding-after: var(--space-block);
	padding-block-end: var(--space-block);
}

.q-about-philosophy .padding {
	-webkit-padding-before: var(--space-block);
	padding-block-start: var(--space-block);
}

.q-about-philosophy .mv__image {
	height: 400px;
}

.q-about-business {
	-webkit-padding-after: var(--space-block);
	padding-block-end: var(--space-block);
}

.q-about-business .head {
	padding-block: var(--space-block);
}

.q-about-business .edge {
	-webkit-padding-before: 0;
	padding-block-start: 0;
}

.q-about-business .image {
	position: relative;
	height: 360px;
}

.q-about-business .image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center 65%;
	object-position: center 65%;
}

.q-about-business .brands__inner1 {
	-webkit-padding-after: var(--space-block);
	padding-block-end: var(--space-block);
}

.q-about-business .brands__inner1::before {
	top: 45px;
}

.q-about-business .media2 {
	display: flex;
	flex-direction: column;
	row-gap: 40px;
}

.q-about-business .media2__image {
	order: -10;
	flex-direction: row;
	gap: 8px;
}

.q-about-business .media3 {
	padding: 20px;
}

.q-data-company {
	-webkit-padding-after: var(--space-block);
	padding-block-end: var(--space-block);
}

.q-data-company .company__title {
	font-size: 1.25rem;
}

.q-data-what {
	padding-block: var(--space-block);
}

.q-data-what .what_wrapper {
	row-gap: 3px;
}

.q-data-what .what {
	padding: 30px 20px;
	width: 49.75%;
}

.q-data-appeal {
	padding-block: var(--space-block);
}

.q-data-appeal::before {
	right: calc(var(--space-inline) * 2);
}

.q-data-appeal .side-scroll-item {
	width: 500px;
}

.q-data-appeal .card__image {
	width: 180px;
}

.q-data-appeal .card__detail {
	padding: 30px 20px 30px;
}

.q-data-appeal .card__heading {
	-moz-column-gap: 10px;
	column-gap: 10px;
	-webkit-margin-after: 10px;
	margin-block-end: 10px;
}

.q-data-appeal .card__num {
	font-size: 2.25rem;
}

.q-data-appeal .card__title {
	font-size: 1.125rem;
}

.q-data-special {
	padding-block: var(--space-block);
}

.q-data-special .profile {
	padding-inline: 0;
}

.q-data-special .impression {
	-moz-column-gap: 40px;
	column-gap: 40px;
}

.q-data-special .impression__detail {
	padding: 30px;
}

.q-data-special .impression__detail::before {
	width: 34px;
}

.q-data-special .impression__image {
	width: 240px;
}

.q-interview-detail-head .detail {
	-webkit-margin-before: -45px;
	margin-block-start: -45px;
}

.q-interview-detail-head .count {
	-webkit-margin-after: 50px;
	margin-block-end: 50px;
	font-size: 3.125rem;
}

.q-interview-detail-head .copy {
	font-size: 1.875rem;
}

.q-interview-detail-question02 {
	padding-block: var(--space-block);
}

.q-interview-detail-schedule {
	--q-padding-block: 40px;
}

.q-interview-detail-schedule::before {
	right: var(--space-inline);
}

.q-interview-detail-schedule .image {
	align-self: start;
	-webkit-margin-start: calc(50% + 40px);
	margin-inline-start: calc(50% + 40px);
	-webkit-margin-end: calc(var(--site-gap-wide2) * 2);
	margin-inline-end: calc(var(--site-gap-wide2) * 2);
}

.q-interview-detail-schedule .schedule {
	-webkit-margin-end: calc(50% - 40px + 20px);
	margin-inline-end: calc(50% - 40px + 20px);
}

.q-interview-detail-schedule .schedule__heading {
	font-size: 1.75rem;
	line-height: var(--line-height-normal);
}

.q-interview-detail-schedule .schedule__item {
	grid-template-columns: 60px 1fr;
	-moz-column-gap: 15px;
	column-gap: 15px;
}

.q-interview-detail-schedule .schedule__time {
	font-size: 1rem;
}

.q-interview-detail-schedule .schedule__time::before {
	top: 10px;
}

.q-interview-detail-schedule .schedule__item:not(:last-child) .schedule__time,
.q-interview-detail-schedule .schedule__item:not(:last-child) .schedule__desc {
	-webkit-padding-after: 25px;
	padding-block-end: 25px;
}

.q-interview-detail-mv2 {
	height: 400px;
}

.q-interview-detail-question03 {
	padding: 0;
	padding-block: var(--space-block);
	padding-top: 0px;
}

.q-interview-detail-question04 {
	-webkit-padding-after: var(--space-block);
	padding-block-end: var(--space-block);
}

.q-interview-detail-other {
	-webkit-margin-after: -40px;
	margin-block-end: -40px;
	padding-block: var(--space-block) calc(var(--space-block) + 40px);
}

.q-interview-detail-other .swiper-button-custom {
	width: 80px;
}

.q-interview-detail-other .interview__copy {
	font-size: 1.625rem;
}

.q-interview {
	-webkit-padding-after: var(--space-block);
	padding-block-end: var(--space-block);
}

.q-interview .interview_wrapper {
	row-gap: var(--space-block);
}

.q-privacy {
	-webkit-padding-after: var(--space-block);
	padding-block-end: var(--space-block);
}

.q-regular-figure {
	-webkit-padding-after: var(--space-block);
	padding-block-end: var(--space-block);
}

.q-regular-list {
	padding-block: var(--space-block);
}

.q-regular-list .part {
	-webkit-margin-before: var(--space-block);
	margin-block-start: var(--space-block);
}

.q-regular-flow {
	--q-overflow-end: 90px;
}

.q-regular-flow .inner {
	padding-block: var(--space-block) calc(var(--space-block) + var(--q-overflow-end));
}

.q-regular-flow .inner::before {
	right: calc(var(--space-inline) * 2);
}

.q-regular-flow .flow__item {
	grid-template-columns: 80px 1fr;
}

.q-regular-flow .flow__num {
	font-size: 1.5rem;
}

.q-regular-flow .point {
	-moz-column-gap: 20px;
	column-gap: 20px;
}

.q-top-about .bg::before {
	height: auto;
	width: calc(100% + var(--space-inline));
	aspect-ratio: 2900/980;
}

.q-top-about .pic__item {
	padding-block: 3px;
}

.q-top-interview .interview__item {
	display: flex;
	flex-direction: column;
}

.q-top-interview .interview__item:not(:last-child) {
	-webkit-margin-after: calc(var(--space-block) / 2);
	margin-block-end: calc(var(--space-block) / 2);
}

.q-top-interview .interview__item:nth-child(2n+1) .interview__mv {
	-webkit-margin-start: calc(var(--space-inline) * -1);
	margin-inline-start: calc(var(--space-inline) * -1);
}

.q-top-interview .interview__item:nth-child(2n) .interview__mv {
	-webkit-margin-end: calc(var(--space-inline) * -1);
	margin-inline-end: calc(var(--space-inline) * -1);
}

.q-top-interview .interview__thumb {
	display: none;
}

.q-top-interview .interview__mv {
	order: -10;
	position: relative;
	min-height: 150px;
}

.q-top-interview .interview__mv::before {
	content: "";
	display: block;
	-webkit-padding-after: 30%;
	padding-block-end: 30%;
}

.q-top-interview .interview__mv img {
	display: none;
}

.q-top-interview .interview__mv img.is-self {
	display: block;
}

.q-top-interview .interview__detail {
	position: relative;
	z-index: 100;
	-webkit-margin-before: -35px;
	margin-block-start: -35px;
}

.q-top-interview .interview__copy {
	font-size: 1.375rem;
}

.q-work-navi {
	-webkit-padding-after: var(--space-block);
	padding-block-end: var(--space-block);
}

.q-work-occupation {
	-webkit-padding-after: var(--space-block);
	padding-block-end: var(--space-block);
}

.q-work-occupation .occupation_wrapper {
	row-gap: var(--space-block);
}

.q-work-occupation .occupation {
	display: block;
	padding-inline: var(--space-inline);
}

.q-work-occupation .occupation__mv {
	display: none;
}

.q-work-occupation .occupation__mv-sp {
	position: relative;
	aspect-ratio: 100/45;
}

.q-work-occupation .occupation__mv-sp img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center 6%;
	object-position: center 6%;
	opacity: 1;
}

.q-work-occupation .occupation__copy {
	position: absolute;
	bottom: 50px;
}

.q-work-occupation .occupation__copy._pc {
	display: none;
}

.q-work-occupation .occupation:not(._reverse) .occupation__mv-sp {
	-webkit-margin-end: calc(var(--space-inline) * -1);
	margin-inline-end: calc(var(--space-inline) * -1);
}

.q-work-occupation .occupation:not(._reverse) .occupation__copy {
	right: var(--space-inline);
}

.q-work-occupation .occupation._reverse .occupation__mv-sp {
	-webkit-margin-start: calc(var(--space-inline) * -1);
	margin-inline-start: calc(var(--space-inline) * -1);
}

.q-work-occupation .occupation._reverse .occupation__copy {
	left: var(--space-inline);
}

.q-work-occupation .occupation__detail {
	padding-inline: var(--space-inline);
}

.q-work-occupation .occupation__desc {
	position: relative;
	z-index: 10;
	-webkit-margin-before: -42px;
	margin-block-start: -42px;
	padding: 13px 10px 0;
	background-color: var(--color-light);
}

.q-work-occupation .occupation__copy {
	--c-copy-edge-color: var(--color-border2);
	font-size: 8vw;
}

.q-work-system .inner {
	padding-block: var(--space-block);
}

.q-work-system .inner::before {
	left: calc(var(--space-inline) * 2);
}

.q-work-communication {
	padding-block: var(--space-block);
}

.q-work-communication .communication__mv {
	height: 400px;
}

.q-work-communication .communication__content {
	-webkit-margin-before: -40px;
	margin-block-start: -40px;
	padding: 20px 20px 0;
}

.q-work-communication .communication:not(._reverse) .communication__content {
	-webkit-margin-start: var(--space-inline);
	margin-inline-start: var(--space-inline);
}

.q-work-communication .communication._reverse .communication__content {
	-webkit-margin-end: var(--space-inline);
	margin-inline-end: var(--space-inline);
}

.q-work-benefit {
	padding-block: var(--space-block);
}

.q-work-benefit::before {
	right: calc(var(--space-inline) * 2);
}

.q-work-benefit .mv {
	height: auto;
}

.q-work-benefit .mv img {
	width: 100%;
}

.q-work-benefit .list__item {
	padding: 20px;
}

.q-work-culture {
	padding-block: var(--space-block);
}

}

@media (max-width: 880px) {

.q-top-about .pic_wrapper {
	height: auto;
	margin-inline: calc(var(--space-inline) * -1);
}

.q-top-about .pic {
	display: flex;
	row-gap: 8px;
	flex-direction: column;
}

.q-top-about .pic__group {
	position: static;
	display: flex;
	width: auto;
	-webkit-animation-duration: 20s;
	animation-duration: 20s;
	--q-slide1-end: -50% 0;
	--q-slide2-end: 50% 0;
}

.q-top-about .pic__group._1 {
	align-self: start;
}

.q-top-about .pic__group._2 {
	align-self: end;
}

.q-top-about .pic__item {
	flex-shrink: 0;
	width: 200px;
	padding: 0 5px;
}

}

@media (max-width: 768px) {

.l-inner._sp_wide {
	padding-inline: 0;
}

.l-section {
	--l-section-gap-default: var(--space-block);
}

.l-media {
	display: flex;
	flex-direction: column;
}

.l-media__image._vertical_first {
	order: -10;
}

.l-separate {
	display: block;
}

.c-arrow._large {
	width: 50px;
}

.c-arrow._large .c-arrow__icon::before,
.c-arrow._large .c-arrow__icon::after {
	width: 24px;
	background-image: var(--icon-arrow-large-sp);
}

.c-button {
	padding-inline: 15px;
}

.c-button._wide {
	padding-inline: 15px;
}

.c-button._w_regular {
	width: 240px;
}

.c-button._h_regular {
	height: 70px;
}

.c-button._arrow_next::after {
	width: 20px;
	translate: 0 -1px;
}

.c-copy._vertical_sp {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

.c-copy-border {
	-webkit-padding-start: 12px;
	padding-inline-start: 12px;
	font-size: 1.25rem;
}

.c-copy-edge {
	font-size: 3.75rem;
}

.c-copy-edge._mb {
	-webkit-margin-after: 45px;
	margin-block-end: 45px;
}

.c-heading4 {
	padding: 10px 20px;
	font-size: 1.25rem;
}

.c-input textarea {
	min-height: 200px;
}

.c-order__item._sp_first {
	order: var(--c-order-first);
}

.c-order__item._sp_second {
	order: var(--c-order-second);
}

.c-search-requirements {
	flex-direction: column;
}

.c-search-requirements__title {
	font-size: 1.125rem;
}

.c-search__input {
	line-height: 45px;
	font-size: 1rem;
}

.c-stepbar__item:not(:first-child)::before {
	width: 40px;
}

.c-stepbar__text {
	width: 60px;
	font-size: 1rem;
}

.c-table {
	font-size: 0.875rem;
}

.c-table th,
.c-table td {
	padding: 12px 10px;
}

.p-area__title {
	font-size: 1rem;
}

.p-area__title {
	padding-block: 10px;
}

.p-cta {
	font-size: 0.75rem;
}

.p-cta__button {
	min-height: 130px;
	-moz-column-gap: 30px;
	column-gap: 30px;
}

.p-cta__border {
	width: 30px;
}

.p-filter .c-heading2 {
	font-size: 1.125rem;
}

.p-filter__title {
	padding-block: 10px;
	font-size: 1.125rem;
}

.p-filter__detail {
	-webkit-padding-after: 50px;
	padding-block-end: 50px;
	row-gap: 30px;
}

.p-filter__submit {
	flex-direction: column;
	-webkit-margin-before: 0;
	margin-block-start: 0;
}

.p-filter__button {
	width: 260px;
	min-height: 56px;
}

.p-form__body {
	row-gap: 60px;
	-webkit-padding-after: 60px;
	padding-block-end: 60px;
}

.p-form__label-in {
	flex-direction: row;
	-moz-column-gap: 10px;
	column-gap: 10px;
	align-items: center;
}

.p-form__label-in {
	-webkit-margin-after: 15px;
	margin-block-end: 15px;
}

.p-form__submit {
	flex-direction: column-reverse;
}

.p-form__submit-button {
	width: 280px;
	min-height: 66px;
}

.p-navi__list {
	padding-inline: 0;
	line-height: var(--line-height-normal);
}

.p-navi__link {
	font-size: 1.125rem;
}

.p-pagetitle__head {
	min-height: 220px;
}

.p-pagetitle__title-sub {
	-webkit-margin-after: 10px;
	margin-block-end: 10px;
	font-size: 3em;
}

.p-pagetitle__mv {
	height: 300px;
}

.p-recruit__mv {
	height: 270px;
	-webkit-margin-start: 0;
	margin-inline-start: 0;
	-webkit-margin-before: 150px;
	margin-block-start: 150px;
}

.p-recruit__mv img {
	height: calc(100% - 40px);
}

.p-recruit__content {
	-webkit-padding-before: 0px;
	padding-block-start: 0px;
}

.p-recruit__title {
	-webkit-margin-after: 290px;
	margin-block-end: 290px;
}

.p-recruit__heading-sub {
	font-size: 4rem;
	-webkit-margin-before: 0px;
	margin-block-start: 0px;
}

.p-recruit__title,
.p-recruit__desc {
	text-shadow: 1px 1px 2px var(--color-light);
}

.p-recruit__desc {
	font-size: 1rem;
}

.p-recruit__link {
	margin-top: 30px;
}

.p-require__slider {
	--space-block: 60px;
}

.p-require__slider .swiper-container.slider .swiper-slide {
	max-height: 200px;
}

.p-require__slider .swiper-container.slider-thumbnail .swiper-wrapper .swiper-slide {
	max-height: 30px;
}

.p-require__head {
	--space-block: 60px;
}

.p-require__title {
	font-size: 1.5rem;
}

.p-require__table :where(th) {
	width: 140px;
}

.g-header .logo__image {
	width: 59px;
	padding-inline: 0;
	border-bottom-left-radius: 3px;
	border-bottom-right-radius: 3px;
}

.g-header .logo__image img {
	width: 45px;
}

.g-header .logo__title._1 {
	font-size: 0.53125rem;
}

.g-header .logo__title._2 {
	font-size: 1.03125rem;
}

.g-footer .navi {
	-webkit-margin-before: 40px;
	margin-block-start: 40px;
}

.g-footer .navi__list {
	font-size: 0.8125rem;
}

.q-about-top-message .head__detail {
	-webkit-margin-before: 40px;
	margin-block-start: 40px;
}

.q-about-top-message .head__copy {
	margin-inline: -100px;
	font-size: max(10.15625vw, 2.375rem);
	text-align: center;
}

.q-about-top-message .mv__desc {
	padding-block: 0 40px;
	color: var(--color-base);
}

.q-about-top-message .mv__image {
	height: 310px;
}

.q-about-top-message .content__mv {
	position: relative;
	height: 200px;
}

.q-about-top-message .content__mv img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.q-about-philosophy .bg {
	left: 0;
}

.q-about-philosophy .inner1 {
	-webkit-padding-start: 0;
	padding-inline-start: 0;
}

.q-about-philosophy .inner2 {
	-webkit-padding-end: 0;
	padding-inline-end: 0;
}

.q-about-philosophy .mv__image {
	height: 290px;
}

.q-about-business .brands__inner1 {
	-webkit-padding-start: 0;
	padding-inline-start: 0;
}

.q-about-business .brands__inner1::before {
	top: 30px;
	left: 0;
}

.q-about-business .brands__inner2 {
	-webkit-padding-end: 0;
	padding-inline-end: 0;
}

.q-about-business .media_wrapper {
	grid-template-columns: 1fr;
	row-gap: 60px;
}

.q-about-business .media__logo {
	min-height: 0;
	padding: 10% var(--space-inline);
}

.q-data-company .company_wrapper {
	grid-template-columns: repeat(2, 1fr);
}

.q-data-company .company {
	-webkit-padding-after: 30px;
	padding-block-end: 30px;
}

.q-data-special .profile__detail {
	-webkit-padding-start: 40px;
	padding-inline-start: 40px;
}

.q-data-special .profile__table th {
	width: 140px;
	font-size: 1rem;
}

.q-data-special .profile__table td {
	font-size: 0.875rem;
}

.q-data-special .impression__detail::before {
	aspect-ratio: 60/50;
}

.q-interview-detail-head .detail {
	-webkit-margin-before: -30px;
	margin-block-start: -30px;
}

.q-interview-detail-head .count {
	-webkit-margin-after: 36px;
	margin-block-end: 36px;
	font-size: 2.25rem;
}

.q-interview-detail-head .copy {
	font-size: 1.3125rem;
}

.q-interview-detail-head .heading {
	font-size: 1.25rem;
	-webkit-margin-after: 20px;
	margin-block-end: 20px;
}

.q-interview-detail-question01 .mv {
	height: 250px;
}

.q-interview-detail-question02 .container {
	grid-template: "detail detail" 1fr "pic    pic2" auto/25% 1fr;
	gap: 40px 2%;
}

.q-interview-detail-question02 .detail {
	padding-inline: var(--space-inline);
}

.q-interview-detail-question02 .pic,
.q-interview-detail-question02 .pic2 {
	position: relative;
}

.q-interview-detail-question02 .pic img,
.q-interview-detail-question02 .pic2 img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.q-interview-detail-question02 .pic {
	aspect-ratio: 600/900;
}

.q-interview-detail-schedule {
	--q-padding-block: var(--space-block);
}

.q-interview-detail-schedule::before {
	top: 0;
}

.q-interview-detail-schedule .container {
	align-items: start;
}

.q-interview-detail-schedule .image {
	grid-area: 2/1/3/2;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2%;
	-webkit-margin-start: var(--site-gap2);
	margin-inline-start: var(--site-gap2);
	-webkit-margin-end: 0;
	margin-inline-end: 0;
}

.q-interview-detail-schedule .schedule {
	-webkit-margin-end: var(--space-inline);
	margin-inline-end: var(--space-inline);
}

.q-interview-detail-schedule .schedule {
	margin-block: 0;
}

.q-interview-detail-schedule .copy {
	-webkit-margin-start: auto;
	margin-inline-start: auto;
	-webkit-margin-end: var(--space-inline);
	margin-inline-end: var(--space-inline);
}

.q-interview-detail-schedule .copy__text {
	font-size: max(10.4166666667vw, 3.75rem);
}

.q-interview-detail-mv2 {
	height: 250px;
}

.q-interview-detail-other {
	-webkit-margin-after: 80px;
	margin-block-end: 80px;
	-webkit-padding-after: 70px;
	padding-block-end: 70px;
}

.q-interview-detail-other .swiper-control {
	top: -25px;
}

.q-interview-detail-other .swiper-button-custom {
	width: 50px;
}

.q-interview-detail-other .swiper-button-custom svg {
	width: 10px;
}

.q-interview-detail-other .heading {
	-webkit-margin-after: 60px;
	margin-block-end: 60px;
}

.q-interview-detail-other .interview_wrapper {
	position: relative;
}

.q-interview-detail-other .interview {
	display: block;
}

.q-interview-detail-other .interview__mv {
	display: none;
}

.q-interview-detail-other .interview__mv-sp {
	position: relative;
	aspect-ratio: 706/482;
}

.q-interview-detail-other .interview__mv-sp img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center 15%;
	object-position: center 15%;
	opacity: 1;
}

.q-interview-detail-other .interview__mv-sp {
	margin-inline: calc(var(--space-inline) * -1);
}

.q-interview-detail-other .interview__detail {
	padding-inline: var(--space-inline);
}

.q-interview-detail-other .interview__desc {
	position: relative;
	z-index: 10;
	-webkit-margin-before: -42px;
	margin-block-start: -42px;
	margin-inline: calc(var(--space-inline) * -1);
	padding: 13px var(--space-inline) 0;
	background-color: var(--color-light);
}

.q-interview-detail-other .interview {
	padding-block: 20px;
	background-color: var(--color-light);
}

.q-interview-detail-other .interview__count {
	-webkit-margin-after: 15px;
	margin-block-end: 15px;
	-webkit-padding-start: 10px;
	padding-inline-start: 10px;
}

.q-interview-detail-other .interview__copy {
	font-size: 1.5rem;
	line-height: 1.6666666667;
}

.q-interview-detail-other .interview__title {
	font-size: 1.25rem;
	-webkit-margin-after: 6px;
	margin-block-end: 6px;
}

.q-interview .interview {
	display: block;
}

.q-interview .interview__mv {
	display: none;
}

.q-interview .interview__mv-sp {
	position: relative;
	aspect-ratio: 706/482;
}

.q-interview .interview__mv-sp img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center 15%;
	object-position: center 15%;
	opacity: 1;
}

.q-interview .interview:not(._reverse) .interview__mv-sp {
	-webkit-margin-end: calc(var(--space-inline) * -1);
	margin-inline-end: calc(var(--space-inline) * -1);
}

.q-interview .interview._reverse .interview__mv-sp {
	-webkit-margin-start: calc(var(--space-inline) * -1);
	margin-inline-start: calc(var(--space-inline) * -1);
}

.q-interview .interview__detail {
	padding-inline: var(--space-inline);
}

.q-interview .interview__desc {
	position: relative;
	z-index: 10;
	-webkit-margin-before: -42px;
	margin-block-start: -42px;
	padding: 13px 10px 0;
	background-color: var(--color-light);
}

.q-interview .interview__count {
	-webkit-margin-after: 15px;
	margin-block-end: 15px;
	-webkit-padding-start: 10px;
	padding-inline-start: 10px;
}

.q-interview .interview__copy {
	font-size: 1.5rem;
	line-height: 1.6666666667;
}

.q-interview .interview__title {
	font-size: 1.25rem;
	-webkit-margin-after: 6px;
	margin-block-end: 6px;
}

.q-interview .interview__arrow {
	-webkit-margin-before: 20px;
	margin-block-start: 20px;
}

.q-regular-figure .heading__icon {
	width: 80px;
}

.q-regular-figure .heading__title {
	font-size: 1.25rem;
}

.q-regular-flow .flow__item {
	display: block;
	padding: 20px;
}

.q-regular-flow .flow__item:not(:first-child)::before {
	left: 0;
	right: 0;
	margin-inline: auto;
}

.q-regular-flow .flow__step {
	font-size: 0.8125rem;
	-webkit-padding-end: 10px;
	padding-inline-end: 10px;
}

.q-regular-flow .flow__num {
	-webkit-margin-before: 2px;
	margin-block-start: 2px;
	font-size: 1.125rem;
}

.q-regular-flow .flow__desc {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	-moz-column-gap: 10px;
	column-gap: 10px;
	-webkit-padding-before: 0;
	padding-block-start: 0;
}

.q-regular-flow .flow__text {
	grid-column: span 2;
	-webkit-margin-before: 10px;
	margin-block-start: 10px;
	line-height: 1.8;
}

.q-regular-flow .point {
	flex-direction: column;
}

.q-regular-flow .point__image {
	order: 10;
	max-width: none;
}

.q-top-mv .copy__sub {
	-webkit-margin-before: 10px;
	margin-block-start: 10px;
	font-size: 1rem;
}

.q-top-mv .banner {
	position: relative;
	z-index: 200;
	inset: auto;
	flex-direction: row;
	-moz-column-gap: 10px;
	column-gap: 10px;
	width: auto;
	-webkit-margin-before: -6.6666666667%;
	margin-block-start: -6.6666666667%;
	padding-inline: var(--space-inline);
}

.q-top-about .mv__copy {
	width: 300px;
}

.q-work-occupation .occupation__heading {
	font-size: 1.25rem;
}

.q-work-system .system__image {
	-webkit-margin-after: 20px;
	margin-block-end: 20px;
}

.q-work-system .system__image img {
	width: 100%;
}

.q-work-communication .communication__mv {
	height: 300px;
}

.q-work-benefit .list {
	grid-template-columns: 1fr;
}

}

@media (max-width: 720px) {

.q-data-special .impression__count {
	-ms-writing-mode: lr-tb;
	writing-mode: horizontal-tb;
}

.q-data-special .impression {
	grid-template-columns: 1fr;
}

.q-data-special .impression__detail {
	grid-area: 2/1/3/2;
}

.q-data-special .impression__count {
	grid-area: 1/1/2/2;
}

.q-data-special .impression__image {
	grid-area: 1/1/2/2;
}

.q-data-special .impression__detail::before {
	bottom: calc(100% - 1px);
	-webkit-clip-path: polygon(50% 0, 100% 100%, 0 100%);
	clip-path: polygon(50% 0, 100% 100%, 0 100%);
}

.q-data-special .impression__count {
	position: static;
	align-self: end;
	-webkit-padding-after: 10px;
	padding-block-end: 10px;
	padding-inline: 10px;
}

.q-data-special .impression:not(._reverse) .impression__detail::before {
	right: 200px;
}

.q-data-special .impression:not(._reverse) .impression__image {
	-webkit-margin-start: auto;
	margin-inline-start: auto;
}

.q-data-special .impression._reverse .impression__detail::before {
	left: 200px;
}

.q-data-special .impression._reverse .impression__count {
	text-align: right;
}

}

@media (max-width: 720px) and (max-width: 640px) {

.q-data-special .impression:not(._reverse) .impression__detail::before {
	right: 140px;
}

.q-data-special .impression:not(._reverse) .impression__image {
	-webkit-margin-end: calc(var(--space-inline) * -1);
	margin-inline-end: calc(var(--space-inline) * -1);
}

.q-data-special .impression._reverse .impression__detail::before {
	left: 140px;
}

.q-data-special .impression._reverse .impression__image {
	-webkit-margin-start: calc(var(--space-inline) * -1);
	margin-inline-start: calc(var(--space-inline) * -1);
}

}

@media (max-width: 640px) {

.c-post_wrapper {
	grid-template-columns: 1fr;
}

.c-stepbar__item:not(:first-child)::before {
	width: 30px;
}

.c-table,
.c-table > tbody,
.c-table tr,
.c-table th,
.c-table td {
	display: block;
	width: auto;
}

.c-table td {
	-webkit-border-before: 0;
	border-block-start: 0;
}

.c-table tr:not(:last-child) {
	-webkit-margin-after: 10px;
	margin-block-end: 10px;
}

.c-terms {
	display: flex;
	flex-wrap: wrap;
	row-gap: 10px;
}

.p-navi__icon {
	width: 24px;
}

.g-footer .navi__list {
	grid-template-columns: repeat(2, 1fr);
	-webkit-margin-end: -60px;
	margin-inline-end: -60px;
	font-size: 0.8125rem;
	line-height: var(--line-height-normal);
}

.q-about-business .media__logo img {
	width: 193px;
}

.q-about-business .media2__image {
	flex-direction: column;
}

.q-about-business .media3 {
	grid-template-columns: 80px 1fr;
	padding: 12px;
}

.q-about-business .media3__desc {
	font-size: 0.875rem;
}

.q-data-company .company_wrapper {
	grid-template-columns: 1fr;
}

.q-data-company .company._span2 {
	grid-column: span 1;
}

.q-data-what .what_wrapper {
	row-gap: 5px;
}

.q-data-what .what {
	width: 100%;
}

.q-data-special .profile {
	flex-direction: column;
}

.q-data-special .profile__image {
	margin-inline: auto;
}

.q-data-special .profile__detail {
	-webkit-padding-start: 0;
	padding-inline-start: 0;
	width: auto;
}

.q-data-special .profile__title {
	position: static;
	-webkit-margin-after: 15px;
	margin-block-end: 15px;
}

.q-data-special .profile__heading {
	-ms-writing-mode: lr-tb;
	writing-mode: horizontal-tb;
}

.q-data-special .profile__heading::before {
	order: 10;
}

.q-data-special .profile__table {
	-webkit-border-after: 1px solid var(--color-border2);
	border-block-end: 1px solid var(--color-border2);
}

.q-data-special .profile__table,
.q-data-special .profile__table > tbody,
.q-data-special .profile__table tr,
.q-data-special .profile__table th,
.q-data-special .profile__table td {
	display: block;
}

.q-data-special .profile__table th {
	width: auto;
	-webkit-padding-after: 0;
	padding-block-end: 0;
	-webkit-border-after: 0;
	border-block-end: 0;
}

.q-data-special .profile__table td {
	-webkit-padding-before: 5px;
	padding-block-start: 5px;
	border-block: 0;
}

.q-data-special .profile__th::before {
	translate: 0 -1px;
}

.q-data-special .impression__detail {
	padding: 20px 15px;
}

.q-data-special .impression__title {
	font-size: 1.0625rem;
	line-height: 1.8;
}

.q-data-special .impression__desc {
	font-size: 0.875rem;
}

.q-data-special .impression__image {
	width: 180px;
}

.q-interview-detail-other .interview__copy {
	font-size: 1.25rem;
}

.q-interview .interview__copy {
	font-size: 1.25rem;
}

.q-regular-figure .heading {
	display: block;
	text-align: center;
}

.q-regular-figure .heading__icon {
	margin-inline: auto;
}

.q-top-mv .banner {
	flex-direction: column;
	row-gap: 8px;
	-webkit-margin-before: -13.3333333333%;
	margin-block-start: -13.3333333333%;
}

.q-top-about {
	--q-mv-space: 70px;
}

.q-top-about .mv__copy {
	bottom: -40px;
	width: 230px;
}

}

@-webkit-keyframes fadeIn {

0% {
	opacity: 0;
}

100% {
	opacity: 1;
}

}

@keyframes fadeIn {

0% {
	opacity: 0;
}

100% {
	opacity: 1;
}

}

@-webkit-keyframes c-arrow-before1 {

0% {
	opacity: 0;
	translate: calc(-100% - 5px) 0;
}

100% {
	opacity: 1;
	translate: 0 0;
}

}

@keyframes c-arrow-before1 {

0% {
	opacity: 0;
	translate: calc(-100% - 5px) 0;
}

100% {
	opacity: 1;
	translate: 0 0;
}

}

@-webkit-keyframes c-arrow-after1 {

0% {
	opacity: 1;
	translate: 0 0;
}

100% {
	opacity: 0;
	translate: calc(100% + 5px) 0;
}

}

@keyframes c-arrow-after1 {

0% {
	opacity: 1;
	translate: 0 0;
}

100% {
	opacity: 0;
	translate: calc(100% + 5px) 0;
}

}

@-webkit-keyframes c-arrow-before2 {

0% {
	opacity: 0;
	translate: calc(-100% - 5px) 0;
}

100% {
	opacity: 1;
	translate: 0 0;
}

}

@keyframes c-arrow-before2 {

0% {
	opacity: 0;
	translate: calc(-100% - 5px) 0;
}

100% {
	opacity: 1;
	translate: 0 0;
}

}

@-webkit-keyframes c-arrow-after2 {

0% {
	opacity: 1;
	translate: 0 0;
}

100% {
	opacity: 0;
	translate: calc(100% + 5px) 0;
}

}

@keyframes c-arrow-after2 {

0% {
	opacity: 1;
	translate: 0 0;
}

100% {
	opacity: 0;
	translate: calc(100% + 5px) 0;
}

}

@-webkit-keyframes about-slide-1 {

0% {
	translate: 0 0;
}

100% {
	translate: var(--q-slide1-end);
}

}

@keyframes about-slide-1 {

0% {
	translate: 0 0;
}

100% {
	translate: var(--q-slide1-end);
}

}

@-webkit-keyframes about-slide-2 {

0% {
	translate: 0 0;
}

100% {
	translate: var(--q-slide2-end);
}

}

@keyframes about-slide-2 {

0% {
	translate: 0 0;
}

100% {
	translate: var(--q-slide2-end);
}

}

@-webkit-keyframes interview {

0% {
	pointer-events: none;
}

98% {
	pointer-events: none;
}

99% {
	pointer-events: auto;
}

100% {
	pointer-events: auto;
}

}

@keyframes interview {

0% {
	pointer-events: none;
}

98% {
	pointer-events: none;
}

99% {
	pointer-events: auto;
}

100% {
	pointer-events: auto;
}

}

