@charset "utf-8";

/**
 * Visual
 * ---------------------------------------- */
.home_visual {
	position: absolute;
	overflow: hidden;
	width: 100%;
	height: 100svh;
}
.is-touch #home .pin-spacer,
.is-touch #home .home_visual {
	height: 100vh !important;
	max-height: 100vh !important;
}
.home_visual_container {
	display: grid;
	grid-template: 50% 50% / 50% 50%;
	width: inherit;
	height: inherit;
}
.visual_photo {
	z-index: -1;
	display: grid;
	position: relative;
	pointer-events: none;
	overflow: hidden;
}
.home_visual img,
.home_visual video {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.visual_photo > * {
	grid-area: 1 / 1;
}
.visual_photo::after {
	content: "";
	position: absolute;
	inset: 0;
	background: #3334;
}
.visual_photo .splide__track {
	height: 100%;
}
.visual_photo .photo img {
	scale: 1.125;
	transition: scale .2s 1s var(--easeIn);
	will-change: scale;
}
.visual_photo .splide.is-ready .photo.is-active img {
	scale: 1;
	transition-duration: 6s;
	transition-delay: 0s;
	transition-timing-function: cubic-bezier(0,.1,.5,.5);
}
@media print, (min-width: 768px) {
	.home_visual {
		margin-inline: var(--breakout);
	}
}
@media screen and (max-width: 767.98px) and (orientation: landscape) {
	.visual_photo > * {
		width: calc(var(--cw) * .5);
	}
}
@media screen and (max-width: 767.98px) and (orientation: portrait) {
	.visual_photo > * {
		height: 50svh;
	}
	.is-touch .visual_photo > * {
		height: 50vh;
	}
}
@media screen and (orientation: landscape) {
	.visual_photo { grid-row: 1 / 3; }
	.visual_photo:where(.-l) { grid-column: 1; }
	.visual_photo:where(.-r) { grid-column: 2; }
}
@media screen and (orientation: portrait) {
	.visual_photo { grid-column: 1 / 3; }
	.visual_photo:where(.-l) { grid-row: 1; }
	.visual_photo:where(.-r) { grid-row: 2; }
}

/**
 * Overlay (MainCopyとScroll)
 * ---------------------------------------- */
.visual_overlay {
	display: grid;
	align-items: end;
	position: relative;
	height: 100svh;
}
.visual_overlay > * {
	grid-area: 1 / 1;
}
.visual_overlay .maincopy {
	place-self: center;
}
.visual_overlay .visual_scroll {
	justify-self: start;
}

/* :::::: Scroll :::::: */
.visual_scroll {
	--size: 48px;
	display: grid;
	justify-items: center;
	position: relative;
	left: calc(var(--sidegap) * .5);
	bottom: 40px;
	width: var(--size);
	color: white;
	pointer-events: auto;
}
.visual_scroll > svg {
	order: 1;
	fill: currentcolor;
}
.visual_scroll::before {
	content: "";
	width: var(--size);
	height: var(--size);
	border-radius: var(--size);
	background: var(--themecolor);
}
.visual_scroll .arrow {
	z-index: 1;
	margin: calc(var(--size) * -.5) 0 8px;
}
.visual_scroll .arrow .stroke {
	height: var(--size);
	fill: none;
	stroke: currentcolor;
	stroke-width: var(--strokeWidth);
}
.visual_scroll .arrow .arr {
	display: block;
	width: 7px;
	height: 7px;
	margin: -4px 0 0;
	fill: currentcolor;
}
@media (hover) {
	.visual_scroll > svg,
	.visual_scroll::before,
	.visual_scroll .arrow,
	.visual_scroll .arrow .stroke {
		transition: transform .4s var(--easeOut);
	}
	.visual_scroll:hover > svg,
	.visual_scroll:hover::before,
	.visual_scroll:hover .arrow,
	.visual_scroll:hover .arrow .stroke {
		transition: transform .4s var(--easeOut);
		transition-duration: .2s;
	}
	.visual_scroll .arrow .stroke {
		transform-origin: center bottom;
	}
	.visual_scroll:hover::before {
		transform: scale(1.166);
	}
	.visual_scroll:hover > svg,
	.visual_scroll:hover .arrow {
		transform: translateY(-8px);
	}
	.visual_scroll:hover .arrow .stroke {
		transform: scaleY(.844);
	}
}
@media screen and (max-width: 767.98px) {
	.visual_scroll {
		--size: 32px;
		bottom: 24px;
		left: var(--sidegap);
	}
}

/* :::::: Lead :::::: */
.home_concept {
	--fontSize: min(var(--cw) * 24 / var(--aspect), 1.5rem);
	z-index: 1;
	display: grid;
	position: relative;
	width: min(100% - var(--sidegap) * 2, 1000px);
	margin: 0 auto;
	font-size: var(--fontSize);
}
.home_concept .lead {
	padding: 2.4em 0;
	font-weight: 700;
	line-height: 3.6;
	line-break: strict;
	letter-spacing: .1em;
	overflow-wrap: break-word;
	hanging-punctuation: last allow-end;
}
.home_concept .l {
	--mask: 100%;
	width: fit-content;
	clip-path: inset(-2px var(--mask) -2px 0);
}
.home_concept .lead_maincopy .l:first-child {
	padding-right: 2%;
}
.home_concept .lead_maincopy .l:last-child {
	padding-right: 4%;
}
.home_concept .lead_maincopy .l,
.home_concept .shadow .lead_maincopy svg {
	background: white;
}
.home_concept .intro,
.home_concept .outro {
	position: relative;
}
.home_concept .intro {
	color: white;
}
.home_concept .intro .shadow,
.home_concept .outro .shadow {
	position: absolute;
	inset: 0;
	color: #aaaa;
}
.home_concept .intro > .lead,
.home_concept .outro > .lead,
.home_concept .outro > .lead_maincopy {
	z-index: 1;
	position: relative;
}
.home_concept .lead:nth-of-type(3) {
	padding-bottom: 4.4em;
}
.home_concept .lead.-trigger,
.home_concept .outro .lead {
	padding-top: 4.8em;
}
.home_concept .lead_maincopy {
	display: grid;
	row-gap: min(var(--cw) * 32 / var(--aspect), 32px);
	margin-top: min(var(--cw) * 40 / var(--aspect), 40px);
}
.home_concept .lead_maincopy .l {
	line-height: 0;
}
.home_concept .lead_maincopy svg {
	overflow: visible;
	height: auto;
	fill: currentcolor;
	stroke: currentcolor;
}
.home_concept .shadow .lead_maincopy svg {
	fill: #cccc;
	stroke: #cccc;
}
@media print, (min-width: 768px) {
	.home_concept .lead_maincopy [width="320"] {
		width: min(var(--cw) * 320 / var(--aspect), 320px);
	}
	.home_concept .lead_maincopy [width="890"] {
		width: min(var(--cw) * 890 / var(--aspect), 890px);
	}
}
@media screen and (max-width: 767.98px) {
	.home_concept {
		--fontSize: calc(var(--cw) * 14 / var(--aspect));
	}
	.home_concept .lead_maincopy {
		row-gap: calc(var(--cw) * 12 / var(--aspect));
		margin-top: calc(var(--cw) * 16 / var(--aspect));
	}
	.home_concept .lead_maincopy [width="320"] {
		width: calc(var(--cw) * 144 / var(--aspect));
	}
	.home_concept .lead_maincopy [width="890"] {
		width: calc(var(--cw) * 327 / var(--aspect));
		max-width: none;
	}
}

/* :::::: Decorative :::::: */
.home_concept .decorative {
	--size: min(var(--cw) * 200 / var(--aspect), 200px);
	z-index: -1;
	display: grid;
	place-items: center;
	inset: auto;
	bottom: min(var(--cw) * 272 / var(--aspect), 256px);
	right: 8%;
}
.home_concept .decorative > * {
	grid-area: 1 / 1;
}
.home_concept .d-rect {
	right: 32%;
	top: 32%;
	width: var(--size);
	height: var(--size);
}
.home_concept .d-circle {
	position: relative;
	width: calc(var(--size) * 1.2);
	height: vacalc(var(--size) * 1.2);
}
.home_concept .d-yline.-A {
	bottom: 50%;
	left: calc(50% - .5px);
}
.home_concept .d-yline.-A .stroke {
	height: calc(var(--size) * .75);
}
.home_concept .d-yline.-B {
	top: 0;
	right: -.5px;
	rotate: 45deg;
	transform-origin: center top;
}
.home_concept .d-yline.-B .stroke {
	height: calc(var(--size) * 5);
}
.home_concept .d-yarrow {
	top: 50%;
	left: calc(50% - 3.5px);
	rotate: -45deg;
	transform-origin: center top;
}
.home_concept .d-yarrow {
	height: var(--size);
}
@media screen and (max-width: 767.98px) {
	.home_concept .decorative {
		--size: calc(var(--cw) * 80 / var(--aspect));
		right: 0;
		bottom: min(var(--cw) * 128 / var(--aspect));
	}
}
/* motion */
.home_concept .d-circle {
	rotate: -180deg;
	stroke-dasharray: var(--length) var(--length);
	stroke-dashoffset: calc(var(--length) * var(--p));
}
.home_concept .d-rect {
	opacity: calc(1 - var(--p));
	scale: calc(1 - var(--p) * .25);
}
.home_concept .d-yline.-dash2 {
	clip-path: inset(0 0 calc(100% * var(--p)));
}
.home_concept .d-yarrow .arrow.-start {
	translate: 0 calc(var(--size) * var(--p) * .5);
}
.home_concept .d-yarrow .arrow.-end {
	translate: 0 calc(var(--size) * var(--p) * -.5);
}

/**
 * Topics
 * ---------------------------------------- */
.visual_topics,
.topics_news {
	display: flex;
	align-items: center;
}
.visual_topics {
	z-index: 2;
	position: fixed;
	right: 0;
	bottom: 0;
	padding: 1em 2em;
	border-radius: var(--radius) 0 0 0;
	font-size: .8125rem;
	color: white;
	fill: currentcolor;
	background: var(--themecolor);
}
.topics_title {
	line-height: 0;
}
.topics_title svg {
	width: auto;
	height: .625em;
}
.topics_news .date {
	margin-bottom: -.2em;
	color: #fffa;
}
.topics_news .content {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
/* motion */
.visual_topics.is-hide {
	pointer-events: none;
	opacity: 0;
	transform: translateX(40px);
}
.visual_topics.is-motion {
	transition: opacity .4s, transform .4s var(--easeOut);
}
.visual_topics.is-motion.is-hide {
	transition-timing-function: ease, var(--easeInOut);
}
@media print, (min-width: 768px) {
	.visual_topics {
		grid-auto-flow: column;
		column-gap: 2em;
	}
	.topics_news {
		column-gap: .5em;
	}
	.topics_news .content {
		max-width: 22em;
	}
}
@media screen and (max-width: 767.98px) {
	.visual_topics,
	.topics_news {
		flex-direction: column;
		align-items: start;
	}
	.visual_topics {
		width: 75%;
		padding-bottom: .75em;
		--fontBasis: 10;
		--fontMin: .625rem;
		font-size: var(--fontSize);
	}
	.topics_news {
		width: 100%;
		margin-top: .5em;
	}
	.topics_news .content {
		width: 100%;
	}
}

/**
 * Component
 * ---------------------------------------- */
.home_chapter {
	position: relative;
	width: min(100% - var(--sidegap) * 2, 1200px);
	margin: min(var(--cw) * 200 / var(--aspect), 200px) auto 0;
}
.home_chapter::after {
	content: "";
	z-index: 2;
	pointer-events: none;
	position: absolute;
	inset: 0 auto;
	border-left: 12px solid transparent;
}
.home_about::after,
.home_people::after {
	bottom: max(var(--cw) * -120 / 1440, -120px);
	left: var(--breakout);
	border-color: var(--themecolor);
}
.home_projects::after,
.home_environment::after {
	right: var(--breakout);
	border-color: black;
}
.home_title {
	display: grid;
	gap: 1em;
	font-weight: 800;
	--fontBasis: 32;
	--fontMin: 1rem;
	font-size: var(--fontSize);
	line-height: 1;
}
.home_title .en {
	color: var(--themecolor);
	font-family: var(--fontEn);
	letter-spacing: .06em;
	text-transform: uppercase;
}
.home_subjects {
	display: grid;
}
.home_subjects .label {
	color: var(--themecolor);
	--fontBasis: 24;
	--fontMin: .8125rem;
	font: 700 var(--fontSize) / 1.2 var(--fontEn);
	letter-spacing: .06em;
	text-transform: uppercase;
}
@media screen and (max-width: 767.98px) {
	.home_chapter {
		margin-top: calc(var(--cw) * 80 / var(--aspect));
	}
	.home_chapter::after {
		border-left-width: 5px;
	}
	.home_title {
		--fontBasis: 24;
	}
	.home_subjects .label {
		--fontBasis: 14;
		--fontMin: .625rem;
	}
}

/**
 * 類とは
 * ---------------------------------------- */
.home_about .home_title {
	--bottomSplace: min(var(--cw) * 16 / var(--aspect), 16px);
	row-gap: 1.5em;
	margin-left: min(var(--cw) * 64 / 1440, 64px);
}
.home_about .home_title .ja {
	position: relative;
	width: min(var(--cw) * 343 / var(--aspect), 343px);
	padding-left: min(var(--cw) * 32 / var(--aspect), 32px);
}
.home_about .home_title .d-yarrow {
	top: 0;
	bottom: calc(var(--bottomSplace) * -1);
	left: 0;
}
.home_about .home_title .d-xline {
	top: calc(100% + var(--bottomSplace));
	right: -25vw;
	left: -25vw;
}
.home_about .home_title .decorative .size {
	top: calc(50% - 2.2em);
}
.home_about .subject {
	font-weight: 700;
	--fontBasis: 48;
	--fontMin: 1rem;
	font-size: var(--fontSize);
	letter-spacing: .1em;
}
.home_about .subject .num {
	position: relative;
	top: .025em;
}
.home_about .c-button {
	margin-top: 2em;
}
@media print, (min-width: 768px) {
	.home_about {
		margin-top: min(var(--cw) * 240 / var(--aspect), 240px);
	}
	.home_about .home_title {
		float: left;
	}
	.home_about .home_title .en {
		--fontBasis: 44;
		--fontMin: 1rem;
		font-size: var(--fontSize);
	}
}
@media screen and (max-width: 767.98px) {
	.home_about .home_title {
		--bottomSplace: calc(var(--cw) * 12 / var(--aspect));
		row-gap: calc(var(--cw) * 12 / var(--aspect));
	}
	.home_about .home_title .ja {
		width: calc(var(--cw) * 160 / 375);
		padding-left: calc(var(--cw) * 16 / var(--aspect));
	}
	.home_about .subject {
		--fontBasis: 24;
	}
	.home_about .c-button {
		margin-top: 1.5em;
	}
}

/* :::::: 次の50年をつくる先端企業を目指して。 :::::: */
.home_message {
	position: relative;
	margin-right: calc(var(--sidegap) * -1);
}
.home_message::before {
	content: "";
	z-index: -1;
	position: absolute;
	inset: -64px 0 32px 40px;
	border-radius: var(--radius) 0 0 0;
	background: var(--bgGrid);
}
.home_message .image {
	border-radius: var(--radius) 0 0 0;
}
.home_message .image .d-round {
	--size: min(var(--cw) * 400 / var(--aspect), 400px);
	top: calc(var(--size) * -.01 - 4px);
	left: calc(var(--size) * -.01 - 4px);
	clip-path: inset(-1px 50% 50% -1px);
}
.home_message .home_subjects,
.home_message .c-button {
	margin-left: min(var(--cw) * 120 / 1440, 120px);
}
.home_message .home_subjects {
	gap: .5em;
	margin-top: 1em;
	--fontBasis: 42;
	--fontMin: 1rem;
	font-size: var(--fontSize);
	line-height: 1.7;
}
.home_message .subject .num {
	font-size: 120%;
}
@media print, (min-width: 768px) {
	.home_message {
		float: right;
	}
	.home_message .image {
		width: min(var(--cw) * 720 / var(--aspect), 720px);
	}
}
@media screen and (max-width: 767.98px) {
	.home_message {
		margin-top: calc(var(--cw) * 48 / var(--aspect));
	}
	.home_message .image .d-round {
		--size: calc(var(--cw) * 140 / var(--aspect));
	}
	.home_message .home_subjects {
		gap: .25em;
		--fontBasis: 24;
		line-height: 1.5;
	}
}

/* :::::: 類が手がける5つの事業 :::::: */
.home_field {
	margin-top: min(var(--cw) * 200 / var(--aspect), 200px);
	margin-left: calc(var(--sidegap) * -1);
}
.home_field .image {
	border-radius: 0 var(--radius) 0 0;
}
.home_field .image .note {
	--color: #000a;
	color: white;
	text-shadow: 1px 1px 0 var(--color), 1px -1px 0 var(--color), -1px -1px 0 var(--color), -1px 1px 0 var(--color),
		-1px 0 0 var(--color), 1px 0 0 var(--color), -1px 0 var(--color), 0 1px 0 var(--color);
}
.home_field .home_subjects,
.home_field .c-button {
	position: relative;
	left: var(--sidegap);
}
.home_field .home_subjects {
	margin-top: min(var(--cw) * 40 / 1440, 40px);
}
.home_field .home_subjects > * {
	grid-area: 1 / 1;
	line-height: 1;
}
.home_field .home_subjects .label {
	align-self: center;
	position: relative;
	top: -.75em;
}
.home_field .subject .num {
	margin-right: -.025em;
	margin-left: -.05em;
	color: var(--themecolor);
	font-size: 300%;
}
@media print, (min-width: 768px) {
	.home_field {
		float: left;
	}
	.home_field .image {
		width: min(var(--cw) * 632 / var(--aspect), 632px);
	}
	.about_blank {
		clear: both;
	}
}
@media screen and (max-width: 767.98px) {
	.home_field {
		margin-top: calc(var(--cw) * 40 / var(--aspect));
	}
}

/* :::::: Blank :::::: */
.about_blank {
	pointer-events: none;
	position: relative;
}
.about_blank::after {
	content: "";
	display: block;
	clear: both;
}
.about_blank .image {
	float: right;
}
.about_blank .image.-i1 {
	margin-right: calc(var(--sidegap) * -1);
}
.about_blank .image.-i2 {
	float: left;
	border-radius: 0 var(--radius) 0 0;
}
.about_blank .image.-i3 {
	border-radius: var(--radius) 0 0 0;
}
/* DECO */
.about_blank .d-xarrow {
	top: 16%;
	right: min(var(--cw) * 468 / var(--aspect), 468px);
	left: min(var(--cw) * 458 / var(--aspect), 458px);
}
.about_blank .d-sun {
	position: absolute;
	top: max(var(--cw) * -240 / var(--aspect), -240px);
	right: max(var(--cw) * -24 / var(--aspect), -24px);
	width: min(var(--cw) * 120 / var(--aspect), 120px);
	height: auto;
}
/* motion */
.about_blank .d-sun {
	opacity: calc(1 - var(--p));
	scale: calc(1 - var(--p) * .25);
}
@media print, (min-width: 768px) {
	.about_blank .image {
		margin-top: min(var(--cw) * 120 / var(--aspect), 120px);
	}
	.about_blank .image.-i1 {
		width: min(var(--cw) * 701 / var(--aspect), 701px);
		margin-top: max(var(--cw) * -240 / var(--aspect), -240px);
	}
	.about_blank .image.-i2 {
		width: min(var(--cw) * 458 / var(--aspect), 458px);
	}
	.about_blank .image.-i3 {
		width: min(var(--cw) * 468 / var(--aspect), 468px);
	}
	.about_blank .d-yline {
		top: 8%;
	}
	.about_blank .d-yline.-A {
		left: min(var(--cw) * 458 / var(--aspect) - .5px, 458px - .5px);
		height: min(var(--cw) * 128 / var(--aspect), 128px);
	}
	.about_blank .d-yline.-B {
		right: min(var(--cw) * 468 / var(--aspect) - .5px, 468px - .5px);
		height: min(var(--cw) * 320 / var(--aspect), 320px);
	}
}
@media screen and (max-width: 767.98px) {
	.about_blank {
		margin-top: calc(var(--cw) * -16 / var(--aspect));
	}
	.about_blank .image.-i1 {
		width: 80%;
		margin-right: calc(var(--sidegap) * -1.5);
	}
	.about_blank .image.-i2 {
		width: calc(40% + var(--sidegap));
		margin-top: calc(var(--cw) * -80 / var(--aspect));
		margin-left: calc(var(--sidegap) * -1);
	}
	.about_blank .image.-i3 {
		width: 50%;
		margin-top: calc(var(--cw) * 24 / var(--aspect));
	}
	.about_blank .d-yline {
		height: 25%;
		left: calc(40% - .5px);
	}
	.about_blank .d-yline.-A {
		top: 12%;
	}
	.about_blank .d-yline.-B {
		top: 70%;
	}
	.about_blank .d-xarrow {
		top: 80%;
		right: 60%;
		left: calc(var(--sidegap) * -1);
	}
	.about_blank .d-sun {
		top: calc(var(--cw) * -16 / var(--aspect));
		right: calc(var(--cw) * -16 / var(--aspect));
		width: calc(var(--cw) * 48 / var(--aspect));
	}
}

/* :::::: 数字で見る :::::: */
.home_fact {
	display: grid;
	justify-items: center;
	margin-top: min(var(--cw) * 48 / var(--aspect), 48px);
}
.home_fact .home_subjects > * {
	grid-area: 1 / 1;
	line-height: 1;
}
.home_fact .home_subjects .label {
	align-self: center;
	position: relative;
	top: -.25em;
}
.home_fact .home_subjects .subject {
	position: relative;
}
.home_fact .home_subjects .d-arc {
	--size: 4em;
	bottom: 0;
	left: -2em;
}
.fact_item .label .stroke {
	position: absolute;
	bottom: -.25em;
	width: 10em;
	fill: none;
	stroke: currentcolor;
	stroke-width: var(--strokeWidth);
	stroke-linecap: round;
	stroke-dasharray: 0 0 .625 2.5;
}
.fact_item.-i1 .label .stroke {
	left: 0;
}
.fact_item.-i2 .label .stroke {
	right: 0;
}
.home_fact .subject .large {
	font-size: 300%;
	margin-bottom: -.1em;
}
.home_fact .c-button {
	z-index: 1;
	grid-area: 2 / 1;
	align-self: start;
	margin-top: 3em;
}
@media screen and (max-width: 767.98px) {
	.home_fact {
		margin-top: calc(var(--cw) * 32 / var(--aspect));
	}
	.home_fact .c-button {
		margin-top: 2em;
	}
}
/* digest */
.home_fact .fact_digest {
	grid-area: 2 / 1;
	display: grid;
	align-content: end;
	position: relative;
	width: 100%;
	margin-top: min(var(--cw) * 24 / var(--aspect), 24px);
	padding: min(var(--cw) * 40 / 1440, 40px) 0;
}
.home_fact .fact_digest::before,
.home_fact .fact_item::before {
	content: "";
	z-index: -1;
	position: absolute;
	background: var(--bgGrid);
}
.home_fact .fact_digest::before {
	top: 0;
	left: var(--breakout);
	right: 90%;
	height: 80%;
	border-radius: 0 0 var(--radius) 0;
}
.home_fact .fact_item {
	display: grid;
	gap: min(var(--cw) * 48 / 1440, 48px);
}
.home_fact .fact_item dt {
	position: relative;
	font-weight: 700;
	--fontBasis: 30;
	--fontMin: 1rem;
	font-size: var(--fontSize);
	letter-spacing: .2em;
}
.home_fact .fact_item .data {
	display: grid;
	grid-auto-flow: column;
	align-items: end;
	column-gap: .5em;
	color: var(--themecolor);
	font-weight: 700;
	--fontBasis: 50;
	--fontMin: 1rem;
	font-size: var(--fontSize);
	line-height: 1.2;
}
.home_fact .fact_item .data .num {
	position: relative;
	top: .07em;
	margin-top: -0.32em;
	color: #0000;
	font-weight: 600;
	font-family: var(--fontNum);
	line-height: 1;
	letter-spacing: .04em;
	text-shadow: -.025em -.025em 0 var(--themecolor);
	-webkit-text-stroke: 1px black;
	transform-origin: left bottom;
	scale: .86 1;
}
.home_fact .fact_item .data img[width="225"] {
	width: min(var(--cw) * 225 / var(--aspect), 225px);
}
.home_fact .fact_item .data img[width="268"] {
	width: min(var(--cw) * 268 / var(--aspect), 268px);
}
@media print, (min-width: 768px) {
	.home_fact .fact_digest {
		row-gap: calc(var(--cw) * 24 / 375);
		min-height: 400px;
	}
}
@media screen and (max-width: 767.98px) {
	.home_fact .fact_digest {
		row-gap: calc(var(--cw) * 40 / var(--aspect));
		margin-top: calc(var(--cw) * 16 / var(--aspect));
		padding-top: calc(var(--cw) * 64 / var(--aspect));
		padding-bottom: calc(var(--cw) * 16 / var(--aspect));
	}
	.home_fact .fact_item {
		gap: calc(var(--cw) * 24 / var(--aspect));
	}
	.home_fact .fact_item dt {
		--fontBasis: 16;
		--fontMin: .625rem;
	}
	.home_fact .fact_item .data {
		column-gap: .25em;
		--fontBasis: 24;
		--fontMin: .8125rem;
	}
	.home_fact .fact_item .data img[width="225"] {
		width: calc(var(--cw) * 112 / var(--aspect));
	}
	.home_fact .fact_item .data img[width="268"] {
		width: calc(var(--cw) * 134 / var(--aspect));
	}
}
/* 創業年数 */
.home_fact .fact_item.-i1 {
	justify-self: start;
}
.home_fact .fact_item.-i1::before {
	top: 5%;
	right: var(--breakout);
	width: calc(45% - var(--breakout));
	height: 20%;
	border-radius: 0 0 0 var(--radius);
}
.home_fact .fact_item.-i1 dt {
	grid-row: 1;
}
.home_fact .fact_item.-i1 .data {
	grid-row: 2;
	margin-top: -1.5em;
}
.home_fact .fact_item.-i1 .data .num {
	width: .74em;
	--fontBasis: 300;
	--fontMin: 1rem;
	font-size: var(--fontSize);
}
.home_fact .fact_item.-i1 .image {
	grid-area: 2 / 2;
	align-self: center;
	display: grid;
	position: relative;
}
.home_fact .fact_item.-i1 .image .d-building {
	grid-area: 1 / 1;
	position: relative;
	width: min(var(--cw) * 332 / var(--aspect), 332px);
}
.home_fact .fact_item.-i1 .image .d-building svg {
	width: 100%;
	height: auto;
}
.home_fact .fact_item.-i1 .image::before,
.home_fact .fact_item.-i1 .image::after {
	content: "";
	position: absolute;
	width: min(var(--cw) * 46 / var(--aspect), 46px);
	height: min(var(--cw) * 41 / var(--aspect), 41px);
	background: url(../img/plus.svg) center / cover no-repeat;
}
.home_fact .fact_item.-i1 .image::before {
	top: -9%;
	left: -9%;
}
.home_fact .fact_item.-i1 .image::after {
	right: 0;
	bottom: 16%;
}
@media print, (min-width: 768px) {
	.home_fact .fact_item.-i1 {
		padding-bottom: min(var(--cw) * 24 / var(--aspect), 24px);
	}
}
@media screen and (max-width: 767.98px) {
	.home_fact .fact_item.-i1 .data .num {
		--fontBasis: 144;
	}
	.home_fact .fact_item.-i1 .image::before,
	.home_fact .fact_item.-i1 .image::after {
		width: calc(var(--cw) * 23 / var(--aspect));
		height: calc(var(--cw) * 20 / var(--aspect));
	}
	.home_fact .fact_item.-i1 .image::before {
		left: -16%;
	}
	.home_fact .fact_item.-i1 .image::after {
		right: -4%;
	}
	.home_fact .fact_item.-i1 .image .d-building {
		width: calc(var(--cw) * 128 / var(--aspect));
	}
}
/* 従業員数 */
.home_fact .fact_item.-i2 {
	justify-self: end;
	align-items: end;
}
.home_fact .fact_item.-i2::before {
	right: var(--breakout);
	bottom: 0;
	width: calc(65% - var(--breakout));
	height: 50%;
	border-radius: var(--radius) 0 0 0;
}
.home_fact .fact_item.-i2 dt {
	grid-area: 1 / 2;
	justify-self: end;
}
.home_fact .fact_item.-i2 .data {
	grid-area: 3 / 1;
}
.home_fact .fact_item.-i2 .data .num {
	width: 1.12em;
	--fontBasis: 240;
	--fontMin: 1rem;
	font-size: var(--fontSize);
}
.home_fact .fact_item.-i2 .image {
	grid-area: 2 / 2 / 4 / 3;
	display: grid;
	grid-template-columns: repeat(3, auto);
	justify-items: center;
	align-items: end;
	gap: 24px;
}
.home_fact .fact_item.-i2 .image img {
	width: min(var(--cw) * var(--w) / var(--aspect), var(--w) * 1px);
}
.home_fact .fact_item.-i2 .image img[width="50"] { --w: 50; }
.home_fact .fact_item.-i2 .image img[width="57"] { --w: 57; }
.home_fact .fact_item.-i2 .image img[width="58"] { --w: 58; }
.home_fact .fact_item.-i2 .image img[width="59"] { --w: 59; }
.home_fact .fact_item.-i2 .image img[width="85"] { --w: 85; }
.home_fact .fact_item.-i2 .image img:nth-child(2) {
	margin-left: max(var(--cw) * -8 / var(--aspect), -12px);
}
.home_fact .fact_digest .d-yarrow {
	top: 25%;
	right: 30%;
	bottom: 50%;
}
.home_fact .fact_digest .d-xarrow {
	right: 65%;
	bottom: 30%;
	left: 10%;
}
@media print, (min-width: 768px) {
	.home_fact .fact_item.-i2 {
		margin-top: max(var(--cw) * -280 / var(--aspect), -280px);
	}
	.home_fact .fact_item.-i2 .image {
		padding-bottom: 8px;
	}
}
@media screen and (max-width: 767.98px) {
	.home_fact .fact_item.-i2 {
		grid-template-rows: 1fr auto;
		align-items: end;
	}
	.home_fact .fact_item.-i2 dt {
		grid-area: 1 / 2;
	}
	.home_fact .fact_item.-i2 .data {
		grid-area: 2 / 2 / 3 / 3;
		padding-bottom: calc(var(--cw) * 16 / var(--aspect));
	}
	.home_fact .fact_item.-i2 .data .num {
		--fontBasis: 112;
	}
	.home_fact .fact_item.-i2 .image {
		grid-area: 1 / 1 / 3 / 2;
		gap: calc(var(--cw) * 8 / 375);
	}
	.home_fact .fact_item.-i2 .image img {
		width: calc(var(--cw) * var(--w) * .4 / var(--aspect));
	}
	.home_fact .fact_item.-i2 .image img:nth-child(2) {
		margin-left: calc(var(--cw) * -4 / var(--aspect));
	}
	.home_fact .fact_digest .d-yarrow {
		right: 0;
	}
	.home_fact .fact_digest .d-xarrow {
		bottom: 43%;
	}
}

/**
 * 追求課題
 * ---------------------------------------- */
.home_projects {
	display: grid;
}
.home_projects .home_title .ja {
	position: relative;
	width: min(var(--cw) * 531 / var(--aspect), 531px);
}
@media print, (min-width: 768px) {
	.home_projects {
		grid-template-columns: 1fr 1fr;
		row-gap: min(var(--cw) * 120 / var(--aspect), 120px);
		column-gap: min(var(--cw) * 96 / var(--aspect), 96px);
	}
	.home_projects .home_title,
	.home_projects .home_project.-l {
		grid-column: span 2;
	}
	.home_projects .home_title .en {
		--fontBasis: 40;
		--fontMin: 1rem;
		font-size: var(--fontSize);
	}
	.home_project.-s:nth-of-type(2n) {
		margin-left: -20px;
	}
	.home_project.-s:nth-of-type(2n+1) {
		margin-right: -20px;
	}
}
@media screen and (max-width: 767.98px) {
	.home_projects .home_title {
		padding-left: 1em;
	}
	.home_projects .home_title .ja {
		width: calc(var(--cw) * 240 / var(--aspect));
	}
}
/* DECO */
.home_projects .home_title .ja .decorative {
	z-index: -1;
}
.home_projects .home_title .ja .decorative > * {
	position: absolute;
}
.home_projects .home_title .ja .d-xline {
	right: 50%;
	bottom: calc(-1em - .5px);
	width: calc(50% + 2.5em);
}
.home_projects .home_title .ja .d-yarrow {
	right: calc(100% + 1em);
	bottom: calc(-1em + 1px);
	height: calc(100% + 2em);
}
.home_projects .home_title .ja .d-rect {
	inset: -1em;
	left: auto;
	width: calc(50% + 1em);
	height: calc(100% + 2em);
	fill: var(--themecolor);
	stroke: var(--themecolor);
	box-shadow: 3px -3px 0 white, 4px -4px 0 black,
				7px -7px 0 white, 8px -8px 0 black,
				11px -11px 0 white, 12px -12px 0 black;
}
/* motion */
.home_projects .home_title .ja .d-xline {
	clip-path: inset(0 0 0 calc(100% * var(--p)));
}
@media screen and (max-width: 767.98px) {
	.home_projects .home_title .ja .d-yarrow {
		right: calc(100% + .75em);
	}
	.home_projects .home_title .ja .d-rect {
		box-shadow: 1.5px -1.5px 0 white, 2px -2px 0 black,
					3.5px -3.5px 0 white, 4px -4px 0 black,
					5.5px -5.5px 0 white, 6px -6px 0 black;
	}
}
.home_projects .image {
	border-radius: var(--radius) 0 0 0;
}
/* Section */
.home_project {
	--numWidth: min(var(--cw) * 46 / 1440, 46px);
	align-self: start;
	display: grid;
	position: relative;
}
/* Number */
.home_project .num {
	z-index: 1;
	position: relative;
	left: 4px;
	width: var(--numWidth);
	color: var(--themecolor);
	fill: currentcolor;
}
.home_project .num svg {
	width: 100%;
	height: auto;
}
.home_project.-l .image2 {
	z-index: -1;
}
@media print, (min-width: 768px) {
	.home_project.-l {
		grid-template-columns: 2fr 3fr;
	}
	.home_project.-l > * {
		grid-row: 1;
	}
	.home_project.-l .text {
		grid-column: 1;
	}
	.home_project.-l .image {
		grid-column: 2;
		width: min(var(--cw) * 860 / var(--aspect), 860px);
	}
	.home_project.-s .image {
		order: -1;
	}
	.home_project.-l .image2 {
		grid-area: 1 / 1;
		place-self: end;
	}
	.home_project.-s .num {
		position: absolute;
		left: 24px;
		top: calc(var(--numWidth) * -1);
	}
}
@media screen and (max-width: 767.98px) {
	.home_projects {
		gap: max(var(--cw) * 24 / var(--aspect), 48px);
	}
	.home_project {
		--numWidth: max(var(--cw) * 16 / 1440, 32px);
	}
	.home_project .num {
		z-index: 1;
		position: absolute;
		left: calc(var(--cw) * 8 / var(--aspect));
		top: calc(var(--numWidth) * -1);
	}
	.home_project.-l {
		margin-top: max(var(--cw) * 24 / var(--aspect), 48px);
	}
	.home_project.-l > * {
		grid-column: 1;
	}
	.home_project .image {
		grid-row: 1;
	}
	.home_project.-l .image {
		border-radius: 0;
	}
	.home_project.-l .image img {
		height: calc(var(--cw) * 320 / var(--aspect));
		object-fit: cover;
	}
	.home_project .text {
		grid-row: 2;
	}
	.home_project .image2 {
		grid-row: 2;
		justify-self: end;
		position: relative;
		top: calc(var(--cw) * 16 / var(--aspect));
		left: calc(var(--cw) * 16 / var(--aspect));
	}
}

/* :::::: Primary image :::::: */
.home_project.-l .image {
	margin-right: calc(var(--sidegap) * -1);
}
.home_project.-l .image * {
	border-radius: inherit;
}
.home_project img[width="622"] {
	width: min(var(--cw) * 311 / var(--aspect), 311px);
}
.home_project .splide .splide__track {
	height: 100%;
}
.home_project .splide .photo img {
	scale: 1.125;
	transition: scale .2s 1s var(--easeIn);
	will-change: scale;
}
.home_project .splide .photo.is-active img {
	scale: 1;
	transition-duration: 10s;
	transition-delay: 0s;
	transition-timing-function: cubic-bezier(0,.1,.5,.5);
}
/* Links */
.home_project .text .item {
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
	transition: opacity .6s, clip-path .6s var(--easeInOut);
	transition-delay: .2s;
}
.home_project .text .item:not(.is-active) {
	opacity: 0;
	clip-path: polygon(0 0%, 100% 0, 100% -20%, 0 0);
	transition-delay: 0s;
}
/* Progress */
.home_project.-l .image .splide__progress {
	--size: min(var(--cw) * 240 / var(--aspect), 240px);
	position: absolute;
	top: calc(var(--size) * -.5);
	right: var(--sidegap);
	width: var(--size);
	height: var(--size);
	border: 1px solid #989898;
	border-radius: var(--size);
	background: white;
}
.home_project.-l .image .splide__progress .bar {
	overflow: visible;
	width: inherit;
	height: inherit;
	margin: -1px 0 0 -1px;
	fill: none;
	stroke: black;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-dasharray: var(--length) var(--length);
	stroke-dashoffset: calc(var(--length) - var(--length) * var(--progress));
}
/* Counter */
.home_project.-l .image .splide__count {
	--size: min(var(--cw) * 40 / var(--aspect), 40px);
	display: grid;
	align-items: end;
	position: absolute;
	top: calc(50% - var(--size) * .5);
	left: calc(50% - var(--size) * .5);
	width: var(--size);
	height: var(--size);
	border-radius: 0;
	line-height: 1.2;
}
.home_project.-l .image .splide__count > * {
	grid-area: 1 / 1;
	display: block;
}
.home_project.-l .image .splide__count .current {
	justify-self: start;
	display: grid;
	place-items: center;
	width: calc(var(--size) * .5);
}
.home_project.-l .image .splide__count .current > * {
	grid-area: 1 / 1;
}
.home_project.-l .image .splide__count .total {
	justify-self: end;
	position: relative;
	right: -16%;
	width: calc(var(--size) * .25);
}
.home_project.-l .image .splide__count .total::before {
	content: "";
	position: absolute;
	bottom: 0;
	right: 144%;
	border-left: 1px solid currentcolor;
	height: 100%;
	rotate: 12deg;
}
.home_project.-l .image .splide__count .n {
	width: 100%;
	height: auto;
}
.home_project.-l .image .splide__count .current .n {
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
	transition: opacity .6s, clip-path .6s var(--easeInOut);
	transition-delay: .2s;
}
.home_project.-l .image .splide__count .current .n:not(.is-active) {
	opacity: 0;
	clip-path: polygon(0 0%, 100% 0, 100% -20%, 0 0);
	transition-delay: 0s;
}
/* Arrows */
.home_project.-l .image .splide__arrows {
	--size: min(var(--cw) * 16 / var(--aspect), 16px);
	pointer-events: none;
	position: absolute;
	inset: 0;
	color: inherit;
	border-radius: 0;
}
.home_project.-l .image .splide__arrow {
	pointer-events: auto;
	position: absolute;
	top: calc(50% - var(--size));
	width: var(--size);
	height: calc(var(--size) * 2);
}
.home_project.-l .image .splide__arrow--prev {
	left: calc(var(--size) * 2);
}
.home_project.-l .image .splide__arrow--next {
	right: calc(var(--size) * 2);
}
.home_project.-l .image .splide__arrows .arr {
	width: 100%;
	height: auto;
	fill: none;
	stroke: currentcolor;
}
@media (hover) {
	.home_project.-l .image .splide__arrow {
		cursor: pointer;
	}
}
@media screen and (max-width: 767.98px) {
	.home_project img[width="622"] {
		width: calc(var(--cw) * 144 / var(--aspect));
	}
	.home_project.-l .image {
		margin-left: calc(var(--sidegap) * -1);
	}
	.home_project.-l .image {
		border-radius: 0;
	}
	.home_project.-l .image .splide__progress {
		--size: min(var(--cw) * 120 / var(--aspect));
	}
	.home_project.-l .image .splide__progress .bar {
		stroke-width: 1;
	}
	.home_project.-l .image .splide__count {
		--size: min(var(--cw) * 24 / var(--aspect));
	}
	.home_project.-l .image .splide__arrows {
		--size: min(var(--cw) * 8 / var(--aspect));
	}
}

/* :::::: Secondary image :::::: */
.home_project.-comingsoon .image {
	position: relative;
}
.home_project.-comingsoon .image::after {
	content: "Coming soon";
	display: grid;
	place-items: center;
	position: absolute;
	inset: 0;
	color: white;
	--fontBasis: 32;
	--fontMin: 1rem;
	font: 400 var(--fontSize) / 1 var(--fontEn);
	letter-spacing: .05em;
	border-radius: inherit;
	background: #808080cc;
}

/* :::::: Text :::::: */
.home_project .text {
	align-self: start;
	display: grid;
}
.home_project .text .item {
	grid-area: 1 / 1;
	display: grid;
	align-content: start;
}
.home_project.-s .text {
	padding-left: min(var(--cw) * 56 / var(--aspect), 56px);
}
.home_project.-s .text::before {
	content: "";
	z-index: 1;
	position: absolute;
	left: min(var(--cw) * 24 / var(--aspect), 24px);
	bottom: 0;
	height: 50%;
	border-radius: 4px;
	width: min(var(--cw) * 12 / 1440, 12px);
	background: var(--themecolor);
}
.home_project .subject {
	display: grid;
	margin-top: .5em;
	--fontBasis: 36;
	--fontMin: 1rem;
	font-size: var(--fontSize);
	line-height: 1.5;
	font-family: var(--fontJa);
	white-space: nowrap;
}
.home_project.-l .subject {
	--fontBasis: 43;
	--fontMin: 1rem;
	font-size: var(--fontSize);
}
.home_project:not(.-l) .subject .u-dt {
	display: none;
}
.home_project.-s .subject .main {
	word-break: auto-phrase;
	margin-right: -.5em;
}
.home_project .subject .sub {
	margin-top: .5em;
	color: var(--themecolor);
	--fontBasis: 19;
	--fontMin: .625rem;
	font-size: var(--fontSize);
	line-height: 1.5;
}
.home_project.-l .subject .sub {
	--fontBasis: 24;
	--fontMin: .8125rem;
	font-size: var(--fontSize);
}
.home_project .subject .sub.-en {
	font-family: var(--fontEn);
}
/* Button */
.home_project .c-button {
	margin-top: 1em;
}
.home_project.-comingsoon .c-button {
	color: #fff8;
	background: #808080cc;
}
@media print, (min-width: 768px) {
	.home_project.-l .subject {
		margin-top: 1em;
	}
	.home_project .c-button {
		margin-top: 24px;
	}
	.home_project.-l .c-button {
		margin-top: 40px;
	}
}
@media screen and (max-width: 767.98px) {
	.home_project.-s .text {
		padding-left: calc(var(--cw) * 24 / var(--aspect));
	}
	.home_project.-s .text::before {
		left: calc(var(--cw) * 8 / 375);
		border-left-width: calc(var(--cw) * 4 / var(--aspect));
	}
	.home_project .subject {
		--fontBasis: 18;
		--fontMin: .8125rem;
	}
	.home_project.-l {
		margin-bottom: 1em;
	}
	.home_project.-l .subject {
		--fontBasis: 24;
	}
	.home_project .subject .sub {
		--fontBasis: 10;
		--fontMin: .625rem;
	}
	.home_project.-l .subject .sub {
		--fontBasis: 12;
		--fontMin: .625rem;
	}
}

/* :::::: Blank :::::: */
.project_blank {
	margin-right: calc(var(--sidegap) * -1);
}
@media screen and (max-width: 767.98px) {
	.project_blank {
		margin-left: calc(var(--sidegap) * -1);
	}
	.project_blank .image {
		border-radius: 0;
	}
	.project_blank .image img {
		height: calc(var(--cw) * 240 / var(--aspect));
		object-fit: cover;
	}
}

/**
 * 類の人
 * ---------------------------------------- */
.home_people {
	display: grid;
	grid-template-columns: 1fr 3fr;
}
.home_people .home_title {
	align-self: start;
	grid-auto-flow: column;
	justify-content: start;
	position: relative;
	width: fit-content;
}
.home_people .home_title::before {
	content: "";
	z-index: -1;
	position: absolute;
	bottom: max(var(--cw) * -24 / 1440, -24px);
	right: max(var(--cw) * -24 / 1440, -24px);
	left: var(--breakout);
	height: min(var(--cw) * 184 / 1440, 184px);
	border-radius: 0 var(--radius) 0 0;
	background: var(--themecolor);
}
.home_people .home_title .en {
	width: 1em;
	height: 1em;
	margin-top: -1em;
	rotate: 90deg;
	transform-origin: left bottom;
}
.home_people .home_title .ja {
	width: min(var(--cw) * 112 / var(--aspect), 112px);
}
.home_people .home_section {
	grid-column: span 2;
}
/* People blank */
.home_people .people_blank {
	--topSpace: min(var(--cw) * 112 / var(--aspect), 112px);
	margin-top: var(--topSpace);
}
.home_people .people_blank .d-xline {
	top: 100%;
	right: calc(var(--sidegap) * -1);
	width: 128%;
}
.home_people .people_blank .d-yarrow {
	left: max(var(--cw) * -32 / 1440, -32px);
	bottom: 0;
	height: calc(100% + var(--topSpace));
}
@media print, (min-width: 768px) {
	.home_people .home_title .en {
		--fontBasis: 44;
		--fontMin: 1rem;
		font-size: var(--fontSize);
	}
}
@media screen and (max-width: 767.98px) {
	.home_people .home_title {
		gap: .75em;
	}
	.home_people .home_title .ja {
		width: calc(var(--cw) * 56 / var(--aspect));
	}
	.home_people .people_blank {
		--topSpace: calc(var(--cw) * 56 / var(--aspect));
		justify-content: start;
		margin-right: calc(var(--sidegap) * -1);
		margin-left: calc(var(--cw) * 32 / var(--aspect));
		padding-left: calc(var(--cw) * 12 / var(--aspect));
	}
	.home_people .people_blank img {
		width: calc(var(--cw) * var(--w) * .5 / var(--aspect));
		margin-left: calc(var(--cw) * var(--shift) * .5 / var(--aspect));
	}
	.home_people .people_blank img:nth-child(n+5) {
		display: none;
	}
}

/* :::::: 職種紹介 (.home_projects.-lと同じ) :::::: */
.home_business {
	display: grid;
	margin-top: min(var(--cw) * 120 / 1440, 120px);
}
/* Image */
.home_business .image {
	margin-right: calc(var(--sidegap) * -1);
	border-radius: var(--radius) 0 0 0;
}
/* Text */
.home_business .text {
	display: grid;
	align-content: start;
}
.home_business .subject {
	--fontBasis: 54;
	--fontMin: 1rem;
	font-size: var(--fontSize);
}
.home_business .lead {
	margin-top: 1em;
	--fontBasis: 30;
	--fontMin: 1rem;
	font-size: var(--fontSize);
	word-break: auto-phrase;
}
.home_business .c-paragraph {
	margin-top: 1em;
}
.home_business .c-button {
	margin-top: 2em;
}
@media print, (min-width: 768px) {
	.home_business {
		grid-template-columns: 2fr 3fr;
		column-gap: min(var(--cw) * 32 / var(--aspect), 32px);
	}
	.home_business .image {
		grid-column: 2;
		width: min(var(--cw) * 860 / var(--aspect), 860px);
	}
}
@media screen and (max-width: 767.98px) {
	.home_business .image {
		order: -1;
	}
	.home_business .text {
		margin-top: 1em;
	}
	.home_business .subject {
		--fontBasis: 26;
	}
	.home_business .lead {
		margin-top: .25em;
		--fontBasis: 16;
		--fontMin: .625rem;
	}
	.home_business .c-paragraph {
		margin-top: .5em;
	}
}

/* :::::: 類人図鑑 :::::: */
.home_interview {
	margin-top: min(var(--cw) * 120 / var(--aspect), 120px);
}
.home_interview .home_subjects {
	justify-items: center;
	margin-bottom: max(var(--cw) * -24 / var(--aspect), -24px);
}
.home_interview .home_subjects .label {
	grid-area: 1 / 1;
}
.home_interview .home_subjects .subject,
.home_interview .home_subjects .book {
	grid-area: 2 / 1;
}
.home_interview .home_subjects .book {
	overflow: visible;
	height: auto;
	stroke-width: var(--strokeWidth);
}
/* 虫眼鏡 */
.home_interview .subject {
	position: relative;
	--fontBasis: 62;
	--fontMin: 1rem;
	font-size: var(--fontSize);
	letter-spacing: .15em;
}
.home_interview .subject.c-lupe {
	--lh: .75;
	--zoom: 250;
	--shift: 2.4em;
	--size: 2.4em;
	place-content: center;
}
.home_interview .subject .main {
	text-indent: .24em;
	letter-spacing: .24em;
}
.home_interview .subject .obj {
	scale: 2.5;
}
.home_interview .c-button {
	position: relative;
	margin: max(var(--cw) * -40 / var(--aspect), -32px) auto 0;
}
@media print, (min-width: 768px) {
	.home_interview .home_subjects .book {
		width: min(var(--cw) * 430 / var(--aspect), 430px);
	}
}
@media screen and (max-width: 767.98px) {
	.home_interview {
		margin-top: calc(var(--cw) * 40 / var(--aspect));
	}
	.home_interview .home_subjects {
		margin-bottom: calc(var(--cw) * -16 / var(--aspect));
	}
	.home_interview .home_subjects .book {
		width: calc(var(--cw) * 280 / var(--aspect));
	}
	.home_interview .subject {
		--fontBasis: 40;
	}
	.home_interview .people_lineup .people_item .lead {
		--fontBasis: 22;
		--fontMin: .75rem;
	}
	.home_interview .people_lineup .people_item .part,
	.home_interview .people_lineup .people_item .name {
		--fontBasis: 16;
		--fontMin: .625rem;
	}
	.home_interview .c-button {
		margin-top: max(var(--cw) * -24 / var(--aspect), -32px);
	}
}

/**
 * 働く環境
 * ---------------------------------------- */
.home_environment .home_title {
	position: relative;
	width: fit-content;
}
.home_environment .home_title .ja {
	width: min(var(--cw) * 514 / var(--aspect), 514px);
}
.home_environment .home_title .d-building {
	position: absolute;
	left: 0;
	bottom: -.75em;
	width: min(var(--cw) * 900 / 1440, 900px);
	height: auto;
}
.home_environment .home_title .d-building > * {
	width: 100%;
	height: auto;
}
.home_environment .home_title .pencil {
	position: absolute;
	bottom: -.5px;
	left: 100%;
	width: min(var(--cw) * 173 / var(--aspect), 173px);
}
@media screen and (max-width: 767.98px) {
	.home_environment {
		margin-top: min(var(--cw) * 96 / var(--aspect));
	}
	.home_environment .home_title {
		--fontBasis: 20;
		--fontMin: .75rem;
	}
	.home_environment .home_title .en {
		position: relative;
	}
	.home_environment .home_title .ja {
		width: calc(var(--cw) * 280 / var(--aspect));
	}
	.home_environment .home_title .d-building {
		bottom: -.25em;
		width: calc(var(--cw) * 248 / var(--aspect));
	}
	.home_environment .home_title .pencil {
		width: calc(var(--cw) * 64 / var(--aspect));
	}
}