@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@600&display=swap');
:root {
	--font-serif: "Noto Serif JP", serif;
	--section-block-margin: calc(var(--spacer-unit) * 9.5);
}
body.page-kyoritsu {
	--key-color: #37af32;
}
body.page-josai {
	--key-color: #ff931e;
}
body.page-riha {
	--key-color: #3fa9f5;
}
body.page-touseki {
	--key-color: #6e6ec8;
}
body.page-about {
	--key-color: #bea573;
	--key-color-dark: #8c8250;
}
body.page-nursing-care {
	--key-color: #00b4aa;
}
body.page-requirements {
	--key-color: #808080;
}
/* ============================== */
/*  右TOC(PC) */
/* ============================== */
nav.toc {
	display: none;
}
@media (1730px <=width) {
	nav.toc {
		display: block;
		position: fixed;
		inset-inline-end: calc(calc(100% - 1250px) / 2 - 200px - 25px);
		border: var(--base-border-width) solid var(--key-color);
		border-radius: 18px;
		font-size: calc(14 / 16 * 1rem);
		line-height: 1.28571429;
		padding: 1.5em calc(1em - 2px);
		font-weight: var(--font-medium);
		inline-size: calc(200 / 14 * 1em);
		z-index: 10;
		background-color: rgb(255 255 255 / 0.8);
		-webkit-backdrop-filter: blur(10px);
		backdrop-filter: blur(10px);
		& ul {
			display: flex;
			flex-direction: column;
			gap: 0;
		}
		& li {
			color: var(--key-color);
		}
		& a {
			color: inherit;
			text-decoration: none;
			display: block;
			padding: calc(5 / 14 * 1em) 0.5em;
			padding-inline-start: 1.75em;
			border-radius: 0.3em;
			position: relative;
			&::before {
				content: "▶︎";
				font-size: 0.5em;
				position: absolute;
				inset-block-start: 1.4em;
				inset-inline-start: 0.75em;
			}
		}
	}
}
@media(hover:hover) {
	nav.toc a:hover {
		background-color: color-mix(in oklab, var(--key-color) 10%, white);
	}
}
.page-heading {
	font-size: calc(28 / 16 * 1rem);
	background-size: calc(250 / 16 * 1rem * 0.8); 
	padding: calc(138 / 16 * 1rem * 0.8) 0 0;
	line-height: 1;
	background-repeat: no-repeat;
	background-position: top center;
	text-align: center;
	color: var(--gray80);
	font-weight: var(--font-medium);
	margin-block: var(--global-header-height) 0;
	&:is(body.page-kyoritsu *) {
		background-image: url("../images/kyoritsu/ill_header.svg");
	}
	&:is(body.page-josai *) {
		background-image: url("../images/josai/ill_header.svg");
	}
	&:is(body.page-riha *) {
		background-image: url("../images/riha/ill_header.svg");
	}
	&:is(body.page-touseki *) {
		background-image: url("../images/touseki/ill_header.svg");
	}
	&:is(body.page-about *) {
		background-image: url("../images/about/ill_header.svg");
	}
	&:is(body.page-nursing-care *) {
		background-image: url("../images/nursing-care/ill_header.svg");
	}
	&:is(body.page-requirements *) {
		background-image: url("../images/requirements/ill_header.svg");
	}
	&:is(body.page-inquiry *) {
		background-image: url("../images/inquiry/ill_header.svg");
		&::first-letter{
			color:var(--orange);
		}
	}
	& .shoulder, & .shoulder2, & .area {
		font-size: calc(14 / 16 * 1rem);
		display: block;
		color: var(--text-color);
		font-weight: var(--font-regular);
	}
	& .shoulder {
		margin-block-end: 1em;
	}
	& .shoulder2 {
		margin-block: 4em 1.4em;
	}
	.area {
		margin-block-start: 0.6em;
	}
}
@media (768px <=width), print {
	.page-heading {
		font-size: calc(45 / 16 * 1rem);
		background-size: calc(250 / 60 * 1em);
		padding: calc(138 / 60 * 1em) 0 0;
		& .shoulder, & .shoulder2, & .area {
			font-size: calc(17 / 16 * 1rem);
		}
	}
}
@media (1024px <=width), print {
	.page-heading {
		font-size: calc(50 / 16 * 1rem);
		background-size: calc(250 / 60 * 1em);
		padding: calc(138 / 60 * 1em) 0 0;
		& .shoulder, & .shoulder2, & .area {
			font-size: calc(18 / 16 * 1rem);
		}
	}
}
@media (1280px <=width), print {
	.page-heading {
		font-size: calc(60 / 16 * 1rem);
		& .shoulder, & .shoulder2, & .area {
			font-size: calc(21 / 16 * 1rem);
		}
	}
}
.chapter-section {
	margin: var(--section-block-margin) var(--base-inline-margin);
	&:is(.section-heading.sh2 + *) {
		margin-block-start: calc(var(--spacer-unit) * 7);
	}
}
.section-heading.sh1 {
	--_icon-bottom-margin: 0.5em;
	font-size: calc(28 * var(--font-scale-m));
	background-repeat: no-repeat;
	background-position: top center;
	text-align: center;
	line-height: 1.5;
	font-weight: var(--font-medium);
	color: var(--gray66);
	padding-block-start: calc(var(--_icon-height) / 28 * 1em + var(--_icon-bottom-margin));
	background-size: auto calc(var(--_icon-height) / 28 * 1em);
	& + :where(*) {
		margin-block-start: calc(var(--spacer-unit) * 4.8);
	}
	&.feature {
		--_icon-height: 65;
	}
	&.overview {
		--_icon-height: 65;
	}
	&.schedule {
		--_icon-height: 83;
	}
	&.stat {
		--_icon-height: 63;
	}
	&.education {
		--_icon-height: 134;
	}
	&.interview, &.voice {
		--_icon-height: 51;
	}
	&.childcare {
		--_icon-height: 78;
	}
	&.career-path {
		--_icon-height: 72;
	}
	&.apply {
		--_icon-height: 62;
	}
	&.career {
		--_icon-height: 88;
	}
	&.support {
		--_icon-height: 90;
	}
	&.other-benefits {
		--_icon-height: 112;
	}
}
body.page-kyoritsu .section-heading.sh1 {
	&.feature {
		background-image: url("../images/kyoritsu/hdi_feature.svg");
	}
	&.overview {
		background-image: url("../images/kyoritsu/hdi_overview.svg");
	}
	&.schedule {
		background-image: url("../images/kyoritsu/hdi_schedule.svg");
	}
	&.stat {
		background-image: url("../images/kyoritsu/hdi_stats.svg");
	}
	&.education {
		background-image: url("../images/kyoritsu/hdi_education.svg");
	}
	&.interview {
		background-image: url("../images/kyoritsu/hdi_interview.svg");
	}
	&.childcare {
		background-image: url("../images/kyoritsu/hdi_childcare.svg");
	}
}
body.page-josai .section-heading.sh1 {
	&.feature {
		background-image: url("../images/josai/hdi_feature.svg");
	}
	&.overview {
		background-image: url("../images/josai/hdi_overview.svg");
	}
	&.schedule {
		background-image: url("../images/josai/hdi_schedule.svg");
	}
	&.stat {
		background-image: url("../images/josai/hdi_stats.svg");
	}
	&.education {
		background-image: url("../images/josai/hdi_education.svg");
	}
	&.interview {
		background-image: url("../images/josai/hdi_interview.svg");
	}
	&.childcare {
		background-image: url("../images/josai/hdi_childcare.svg");
	}
}
body.page-riha .section-heading.sh1 {
	&.feature {
		background-image: url("../images/riha/hdi_feature.svg");
	}
	&.overview {
		background-image: url("../images/riha/hdi_overview.svg");
	}
	&.schedule {
		background-image: url("../images/riha/hdi_schedule.svg");
	}
	&.stat {
		background-image: url("../images/riha/hdi_stats.svg");
	}
	&.education {
		background-image: url("../images/riha/hdi_education.svg");
	}
	&.interview {
		background-image: url("../images/riha/hdi_interview.svg");
	}
	&.childcare {
		background-image: url("../images/riha/hdi_childcare.svg");
	}
}
body.page-touseki .section-heading.sh1 {
	&.feature {
		background-image: url("../images/touseki/hdi_feature.svg");
	}
	&.overview {
		background-image: url("../images/touseki/hdi_overview.svg");
	}
	&.schedule {
		background-image: url("../images/touseki/hdi_schedule.svg");
	}
	&.stat {
		background-image: url("../images/touseki/hdi_stats.svg");
	}
	&.education {
		background-image: url("../images/touseki/hdi_education.svg");
	}
	&.interview {
		background-image: url("../images/touseki/hdi_interview.svg");
	}
	&.childcare {
		background-image: url("../images/touseki/hdi_childcare.svg");
	}
}
body.page-about .section-heading.sh1 {
	&.stat {
		background-image: url("../images/about/hdi_stats.svg");
	}
	&.career {
		background-image: url("../images/about/hdi_career.svg");
	}
	&.support {
		background-image: url("../images/about/hdi_support.svg");
	}
	&.other-benefits {
		background-image: url("../images/about/hdi_other-benefits.svg");
	}
}
body.page-nursing-care .section-heading.sh1 {
	&.feature {
		background-image: url("../images/nursing-care/hdi_feature.svg");
	}
	&.career-path {
		background-image: url("../images/nursing-care/hdi_career-path.svg");
	}
	&.schedule {
		background-image: url("../images/nursing-care/hdi_schedule.svg");
	}
	&.voice {
		background-image: url("../images/nursing-care/hdi_voice.svg");
	}
	&.apply {
		background-image: url("../images/nursing-care/hdi_apply.svg");
	}
}
.sub-heading {
	font-size: calc(21 * var(--font-scale-s));
	font-weight: var(--font-bold);
	line-height: 1.5;
	margin-block-end: 0.4em;
	color: var(--key-color);
}
.lead-copy {
	font-size: calc(21 * var(--font-scale-s));
	line-height: 1.75;
	font-weight: var(--font-regular);
	text-align: center;
	margin-block-end: calc(var(--spacer-unit) * 4.8);
	&:is(.section-heading + *) {
		margin-block-start: calc(var(--spacer-unit) * 1.25)
	}
}
.fig-container.scroll-x {
	margin-inline: calc(var(--base-inline-margin) * -1);
	overflow-x: scroll;
	& img {
		inline-size: 740px;
		block-size: auto;
		padding: 0 var(--base-inline-margin) 20px;
	}
}
@media (740px <=width), print {
	.fig-container.scroll-x {
		margin-inline: 0;
		overflow-x: auto;
		& img {
			inline-size: 100%;
			padding: 0;
		}
	}
}
/* ============================== */
/*  メッセージ */
/* ============================== */
.message-heading {
	font-size: calc(28 * var(--font-scale-m));
	inline-size: calc(231 / 28 * 1em);
	margin: 0 auto calc(var(--spacer-unit) * 3.8);
}
.message_about-heading {
	font-size: calc(28 * var(--font-scale-m));
	inline-size: calc(330 / 28 * 1em);
	margin: 0 auto calc(var(--spacer-unit) * 3.8);
}
.message-body {
	display: flex;
	flex-direction: column;
	gap: calc(var(--spacer-unit) * 5);
	& .image {
		& img {
			border-radius: var(--border-radius-s);
		}
	}
}
@media (768px <=width), print {
	.message-body {
		flex-direction: row;
		gap: calc(var(--spacer-unit) * 5);
		& .image {
			inline-size: calc(480 / 1250 * 100%);
			flex: none;
		}
	}
}
section.message .sub-heading {
	font-size: calc(24 * var(--font-scale-s));
	font-weight: var(--font-semibold);
	line-height: 1.5;
	margin-block-end: 1.25em;
	color: var(--key-color);
}
section.message h4 {
	font-size: calc(18 / 16 * 1em);
	line-height: 1.5;
	margin-block: 0.2em;
	color: var(--key-color);
}
section.message .body-copy {
	line-height: 1.75;
	text-align: justify;
}
section.message .message-signature {
	margin-block-start: 2em;
	& .role {
		display: block;
	}
	& .name {
		font-size: calc(21 / 16 * 1em);
		display: block;
	}
}
/* ============================== */
/*  病院で働く */
/* ============================== */
section.feature .feature-body {
	container-type: inline-size;
}
.feature-grid {
	--_gap: calc(var(--spacer-unit) * 2.5);
	display: flex;
	flex-direction: column;
	gap: var(--_gap);
}
@media (768px <=width), print {
	.feature-grid {
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
	}
}
.feature-card {
	border: var(--base-border-width) solid var(--key-color);
	position: relative;
	padding: 1em 1.4em 1em 3.9em;
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-block-size: calc(150 / 16 * 1em);
	border-radius: var(--border-radius-m);
	& .num {
		font-size: 1em;
		position: absolute;
		inset-block-start: calc(50% - calc(35 / 16 * 1em / 2));
		inset-inline-start: 0;
		line-height: calc(35 / 16 * 1em);
		min-inline-size: calc(35 / 16 * 1em);
		text-align: center;
		color: var(--white);
		background-color: var(--key-color);
	}
	& .title {
		font-size: calc(35 * var(--font-scale-m));
		font-weight: var(--font-semibold);
		color: var(--key-color);
		line-height: 1.2;
		margin-block-end: 0.2em;
	}
	& .body-copy {
		line-height: 1.75;
		text-align: justify;
	}
}
@media (768px <=width), print {
	.feature-card {
		inline-size: calc(calc(100% - var(--_gap) * 1) / 2);
	}
}
@media (1024px <=width), print {
	.feature-card {
		inline-size: calc(calc(100% - var(--_gap) * 2) / 3);
		min-block-size: calc(200 / 16 * 1em);
	}
}
.feature-card.compact {
	padding-block: 1.75em;
	& .title {
		font-size: calc(29 * var(--font-scale-m));
		margin-block-end: 0.4em;
	}
}
body.page-kyoritsu .feature-card:nth-child(5) {
	@media (768px <=width), print {
		inline-size: calc(calc(100% - var(--_gap) * 1) / 2 + 10%);
	}
	@media (1024px <=width), print {
		inline-size: calc(calc(100% - var(--_gap) * 2) / 3 + 13%);
	}
}
.link-button.feature {
	--_border-width: 1px;
	--_bg-shift: 2px 4px;
	margin: calc(var(--spacer-unit) * 8.3) 0 0;
	font-size: 1rem;
	line-height: 1.5;
	font-weight: var(--font-semibold);
	position: relative;
	& a {
		min-block-size: 3.5em;
		color: inherit;
		text-decoration: none;
		display: block;
		padding: 0.1em 1.5em;
		border-radius: calc(infinity * 1px);
		border: var(--_border-width) solid;
		position: relative;
		color: var(--key-color);
		text-align: center;
		display: flex;
		align-items: center;
		justify-content: center;
		inline-size: fit-content;
		margin-inline: auto;
		&::after {
			content: "▶︎";
			font-size: 0.52em;
			margin-inline-start: 0.8em;
		}
		&::before {
			content: "";
			position: absolute;
			inset-block-start: calc(var(--_border-width) * -1);
			inset-inline-start: calc(var(--_border-width) * -1);
			inline-size: calc(100% + var(--_border-width) * 2);
			block-size: calc(100% + var(--_border-width) * 2);
			translate: var(--_bg-shift);
			border-radius: calc(infinity * 1px);
			background-color: var(--grayF2);
			z-index: -1;
		}
		&:is(body.page-riha *)::before {
			background-color: color-mix(in oklab, #fdd000 20%, transparent);
		}
	}
	& .text1 {
		position: absolute;
		inset-block-start: -2em;
		inset-inline-start: 0;
		inline-size: 100%;
		text-align: center;
	}
	& .icon {
		display: block;
		inline-size: calc(96 / 38 * 1em);
		aspect-ratio: 96 / 79;
		margin-inline: 0 calc(15 / 38 * 1em);
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		&:is(body.page-kyoritsu *) {
			background-image: url("../images/kyoritsu/ico_stats.svg");
		}
		&:is(body.page-riha *) {
			background-image: url("../images/riha/ico_stats.svg");
		}
		&:is(body.page-josai *) {
			background-image: url("../images/josai/ico_stats.svg");
		}
	}
}
@media (768px <=width), print {
	.link-button.feature {
		--_border-width: 2px;
		--_bg-shift: 3px 6px;
		font-size: calc(20 / 16 * 1rem);
		& a {
			padding: 0.1em 2.5em;
			min-block-size: calc(120 / 38 * 1em);
			min-inline-size: 26em;
		}
		& .text1 {
			position: static;
			display: inline;
			text-align: start;
			inline-size: auto;
		}
		& .icon {
			margin-inline: calc(25 / 38 * 1em);
		}
	}
}
@media (1024px <=width), print {
	.link-button.feature {
		font-size: calc(28 / 16 * 1rem);
		& a {
			padding: 0.1em 2.5em;
		}
		& .icon {
			margin-inline: calc(45 / 38 * 1em);
		}
	}
}
@media (1280px <=width), print {
	.link-button.feature {
		--_border-width: 3px;
		font-size: calc(38 / 16 * 1rem);
		& .icon {
			margin-inline: calc(45 / 38 * 1em);
		}
	}
}
@media(hover:hover) {
	.link-button.feature {
		& a::before {
			transition: translate 500ms, background-color 500ms;
		}
	}
	.link-button.feature {
		& a:hover::before {
			translate: 0px 0px;
			background-color: color-mix(in oklab, var(--key-color) 10%, white);
		}
	}
}
/* ============================== */
/*  施設概要 */
/* ============================== */
.overview-body {
	display: flex;
	gap: calc(var(--spacer-unit) * 5);
	flex-direction: column;
	& .image {
		& img {
			border-radius: var(--border-radius-m);
		}
	}
}
@media (768px <=width), print {
	.overview-body {
		display: flex;
		gap: calc(var(--spacer-unit) * 5);
		flex-direction: row-reverse;
		& .image {
			inline-size: calc(600 / 1250 * 100%);
			flex: none;
		}
	}
}
.overview-table {
	--_dt-width: 7em;
	--_border: 1px solid #999999;
	line-height: 1.5;
	display: flex;
	flex-wrap: wrap;
	border-block-end: var(--_border);
	& dt, & dd {
		border-block-start: var(--_border);
		font-feature-settings: normal;
		font-weight: var(--font-regular);
		padding-block: 0.71875em;
	}
	& dt {
		inline-size: var(--_dt-width);
		padding-inline: 0.5em 1em;
	}
	& dd {
		inline-size: calc(100% - var(--_dt-width));
	}
}
@media (1024px <=width), print {
	.overview-table {
		--_dt-width: 11em;
	}
}
.link-button.overview {
	margin-block-start: calc(var(--spacer-unit) * 4);
	font-size: calc(17 / 16 * 1em);
	font-weight: var(--font-medium);
	line-height: 1.5;
	& a {
		color: inherit;
	}
	& p {
		color: var(--key-color);
		&::after {
			content: "▶︎";
			font-size: calc(18 / 21 * 1em);
			margin-inline-start: 1em;
		}
	}
	& p + p {
		margin-block-start: 0.4em;
	}
}
@media (768px <=width), print {
	.link-button.overview {
		font-size: calc(21 * var(--font-scale-s));
	}
}

/* ============================== */
/*  部署紹介（スライダー） */
/* ============================== */
section.department {
	margin-inline: 0;
	container-type: inline-size;
}
& .department-headnote {
	text-align: center;
	line-height: 1.5;
	margin-block-end: 1.75em;
	&::after {
		content: "▼";
		color: var(--key-color);
		display: block;
		margin: 0.3em auto 0;
	}
}
.department-slider {
	font-size: 1em;
	margin-block: -4lh -1lh;
	& .slide {
		line-height: 1.75;
		padding: 4lh 0 2lh;
		transition: scale 200ms;
	}
	& .caption {
		text-align: center;
		line-height: 1.75;
		translate: 0 -2cqi;
		block-size: 2lh;
		transition: translate .3s;
	}
	& .slide img {
		transform: scale(.75);
		transition: transform .3s;
	}
	& .slick-center {
		& img {
			transform: scale(1.1);
		}
		& .caption {
			translate: 0 1.7cqi;
		}
	}
	& .slick-arrow {
		inline-size: 30px;
		block-size: 30px;
		z-index: 115;
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center;
		position: absolute;
		&::before {
			display: none;
		}
	}
	& .slick-prev {
		inset-inline-start: 19cqi;
		background-image: url("../images/common/arr_sl-l.svg");
	}
	& .slick-next {
		inset-inline-end: 19cqi;
		background-image: url("../images/common/arr_sl-r.svg");
	}
}
@media (768px <=width), print {
	.department-slider {
		& .slick-prev {
			inset-inline-start: 31cqi;
		}
		& .slick-next {
			inset-inline-end: 31cqi;
		}
	}
}
@media (1280px <=width), print {
	.department-slider {
		& .slick-arrow {
			inline-size: 40px;
			block-size: 40px;
		}
	}
}
@media (1400px <=width), print {
	.department-slider {
		& .slick-prev {
			inset-inline-start: 33cqi;
		}
		& .slick-next {
			inset-inline-end: 33cqi;
		}
	}
}
/* ============================== */
/*  一日の流れ */
/* ============================== */
section.schedule {
	margin-inline: 0;
	& .schedule-layout {
		margin-inline: var(--base-inline-margin);
	}
}
section.schedule .sub-heading {
	font-size: calc(28 * var(--font-scale-m));
}
.schedule-figure {
	margin-block-start: calc(var(--spacer-unit) * 2.5);
}
/* ============================== */
/*  写真スライダー（一日の流れ下） */
/* ============================== */
.photo-gallery-section {
	margin-block-start: calc(var(--spacer-unit) * 10);
	& .slide {
		padding-inline: 12px;
		& img {
			border-radius: var(--border-radius-s);
		}
	}
}
@media (1024px <=width), print {
	.photo-gallery-section {
		& .slide {
		padding-inline: 17px;
		}
	}
}
@media (1280px <=width), print {
	.photo-gallery-section {
		& .slide {
		padding-inline: 22px;
		}
	}
}
/* ============================== */
/*  数字で見る */
/* ============================== */
.stats-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: calc(var(--spacer-unit) * 10) calc(var(--spacer-unit) * 4);
}
@media (640px <=width), print {
	.stats-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}
.stat-card {
	border-block-start: var(--base-border-width) solid var(--key-color);
	line-height: 1.33333333;
	position: relative;
	container-type: inline-size;
}
.stat-card .title {
	margin-block: calc(16 / 605 * 100cqi) calc(5 / 605 * 100cqi);
	font-size: calc(42 / 605 * 100cqi);
	font-weight: var(--font-regular);
	color: var(--gray66);
	margin-inline-start: calc(170 / 605 * 100cqi);
	line-height: 1.25;
	block-size: 2lh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	& .icon {
		inline-size: calc(164 / 605 * 100cqi);
		position: absolute;
		inset-block-start: calc(14 / 605 * 100cqi);
		inset-inline-start: 0;
	}
	& .shoulder {
		display: block;
		font-size: calc(18 / 605 * 100cqi);
		margin-block-end: calc(5 / 605 * 100cqi)
	}
}
.stat-card .card-body {
	min-block-size: calc(318 / 605 * 100cqi);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	&.tall {
		min-block-size: calc(364 / 605 * 100cqi);
	}
}
.stat-card .value {
	font-size: calc(178 / 605 * 100cqi);
	line-height: 0.9;
	display: flex;
	justify-content: center;
	align-items: flex-end;
	color: var(--key-color);
	font-weight: var(--font-semibold);
	& .num {
		font-family: var(--font-serif);
		font-feature-settings: 'palt';
		position: relative;
		inset-block-start: -0.06em;
	}
	& .slash {
		font-size: 0.86em;
		font-family: var(--font-sans);
		font-weight: 100;
		position: relative;
		inset-block-start: -0.1em;
	}
	& .label, & .unit {
		font-size: calc(32 / 605 * 100cqi);
		position: relative;
		inset-block-start: -0.25em;
		line-height: 1.33333333;
	}
	& .label {
		margin-inline-end: 0.4em;
	}
	& .word {
		font-size: calc(74 / 605 * 100cqi);
		line-height: 1.33333333;
		color: var(--gray66);
		font-weight: var(--font-semibold);
		margin-inline-start: 0.5em;
		position: relative;
		inset-block-start: 0.1em;
	}
	& .unit.large {
		font-size: calc(78 / 605 * 100cqi);
		font-family: var(--font-serif);
		font-weight: var(--font-bold);
		position: relative;
		inset-block-start: 0.01em;
	}
}
.stat-card .value.small1 {
	& .num {
		font-size: calc(140 / 605 * 100cqi);
	}
	& .unit {
		inset-block-start: -0.2em;
	}
	& + .value.small1 {
		margin-block-start: calc(28 / 605 * 100cqi);
	}
}
.stat-card .value.small2 {
	& .num {
		font-size: calc(148 / 605 * 100cqi);
	}
	& .unit {
		inset-block-start: -0.2em;
	}
	& + .value.small2 {
		margin-block-start: 0.5em;
	}
}
.stat-card .value.small3 {
	& .num {
		font-size: calc(125 / 605 * 100cqi);
	}
	& .unit {
		inset-block-start: -0.2em;
	}
	& + .value.small3 {
		margin-block-start: 1em;
	}
}
.stat-card .value.large {
	& .num {
		font-size: calc(360 / 605 * 100cqi);
	}
	& .label, & .unit {
		font-size: calc(42 / 605 * 100cqi);
		inset-block-start: -0.45em;
	}
}
.stat-card .figure {
	inline-size: calc(532 / 605 * 100cqi);
	margin: 0 auto;
}
.stat-card .footnote, .stat-card .caption {
	font-size: max(calc(21 / 605 * 100cqi), 14px);
	text-align: center;
	font-weight: var(--font-medium);
	margin-block-start: 1em;
	&.align-left {
		text-align: start;
	}
}
.stat-card .caption {
	margin-block-start: 0.75em;
}
.stat-card .footnote {
	margin-block-start: 1em;
}
.values.align-right {
	& .value {
		justify-content: flex-end;
	}
}
.stat-card.maternity {
	& .label {
		inline-size: 6.1em;
		align-self: center;
		text-align: center;
		color: var(--text-color);
		font-size: calc(21 / 605 * 100cqi);
		margin-inline-end: 0.9em;
		inset-block-start: 0.3em;
	}
	& .value {
		padding-inline-end: calc(calc(21 / 605 * 100cqi) * 7 - calc(32 / 605 * 100cqi));
	}
	& .footnote {
		margin-block-start: 0.15em;
	}
}
.stat-card.nursery {
	& .value .label {
		color: var(--text-color);
		font-size: calc(21 / 605 * 100cqi);
		line-height: 1.33333333;
		position: relative;
		inset-block-start: -1em;
		text-align: center;
		margin-inline-end: calc(62 / 605 * 100cqi);
		& .icon {
			display: block;
			position: absolute;
			inset-block-start: calc(132 / 605 * -100cqi);
			inset-inline-start: calc(13 / 605 * -100cqi);
			inline-size: calc(113 / 605 * 100cqi);
			aspect-ratio: 113 / 116;
		}
	}
}
.stat-card.long-vacation {
	& .word {
		display: block;
		font-size: calc(51 / 605 * 100cqi);
		text-align: center;
		color: var(--gray66);
		line-height: 0.9;
		&:is(body.page-josai *), &:is(body.page-kyoritsu *) {
			padding-inline-start: 1em;
		}
	}
	& .value.large .unit {
		padding-inline-start: 0.4em;
	}
}

/* ============================== */
/*  教育体制 */
/* ============================== */
.education-figure1 {
	margin-block-start: 5px;
	& img {
		display: block;
	}
}
.education-figure2 {
	margin-block-start: calc(var(--spacer-unit) * 8.5);
	& img {
		display: block;
	}
}
section.education h4 {
	text-align: center;
	font-weight: var(--font-medium);
	color: var(--gray66);
	font-size: calc(28 * var(--font-scale-s));
	line-height: 1.5;
	margin-block-end: 0.5em;
}
.link-button.education {
	font-size: calc(21 * var(--font-scale-s));
	font-weight: var(--font-medium);
	line-height: 1.5;
	text-align: center;
	margin-block-start: calc(var(--spacer-unit) * 9);
	& a {
		color:var(--key-color);
		border: 1px solid;
		text-decoration: none;
		padding: 0.25em 1em;
		border-radius: calc(10 / 21 * 1em);
		display: inline-flex;
		align-items: center;
		&::before {
			content: "●";
			margin-inline-end: 0.5em;
		}
		&::after {
			content: ">>";
			font-size: calc(16 / 21 * 1em);
			margin-inline-start: 0.5em;
		}
	}
}
@media (768px <=width), print {
	.link-button.education {
		& a {
			padding: 0.25em 2em;
		}
	}
}
@media(hover:hover) {
	.link-button.education {
		& a:hover {
			background-color: var(--key-color);
			color: var(--white);
		}
	}
}
/* ============================== */
/*  インタビュー */
/* ============================== */
.interview-grid {
	display: grid;
	gap: calc(var(--spacer-unit) * 5) calc(var(--spacer-unit) * 6.6);
	grid-template-columns: 1fr;
}
@media (768px <=width), print {
	.interview-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.interview-grid:has(> *:only-child) {
		grid-template-columns: 1fr;
		padding-inline: calc(calc(50% + calc(var(--spacer-unit) * 6.6)) / 2);
	}
}
.interview-card {
	& .body-copy {
		line-height: 1.75;
		text-align: justify;
	}
	& .image {
		margin-block-end: calc(var(--spacer-unit) * 4);
		& img {
			border-radius: var(--border-radius-m);
		}
	}
	& .meta-info {
		margin-block-end: 0.5em;
		font-size: 16px;
	}
	& .sub-heading {
		line-height: 1.75;
		margin-block-end: 0.65em;
		font-feature-settings: normal;
	}
}
/* ============================== */
/*  子育て支援 */
/* ============================== */
.childcare-card {
	& .image {
		margin-block-start: calc(var(--spacer-unit) * 2.5);
		& img {
			border-radius: var(--border-radius-m);
		}
	}
	& .body-copy {
		text-align: justify;
	}
	& .childcare-table {
		margin-block-start: calc(var(--spacer-unit) * 5);
	}
}
@media (768px <=width), print {
	.childcare-card {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 0 calc(var(--spacer-unit) * 7);
		& .sub-heading {
			grid-column: 1 / -1;
			margin-block-end: calc(16 / 21 * 1em);
		}
		.childcare-table {
			margin-block-start: 0;
		}
	}
}
.childcare-table {
	--_dt-width: 9.5em;
	--_border: 1px solid var(--gray97);
	--_cell-padding-block: 0.71875em;
	--_cell-padding-inline: 1em;
	line-height: 1.5;
	display: flex;
	flex-wrap: wrap;
	border-block-end: var(--_border);
	border-inline-end: var(--_border);
	& dt, & dd {
		border-block-start: var(--_border);
		font-feature-settings: normal;
		padding-block: var(--_cell-padding-block);
		color: var(--gray33);
		border-inline-start: var(--_border);
		padding-inline: 1em 1em;
	}
	& dt {
		font-weight: var(--font-bold);
		inline-size: var(--_dt-width);
		background-color: var(--beige);
	}
	& dd {
		inline-size: calc(100% - var(--_dt-width));
		&:has(.line) {
			padding: 0;
		}
		& .line {
			display: block;
			padding: var(--_cell-padding-block) var(--_cell-padding-inline);
			& + .line {
				border-block-start: var(--_border);
			}
		}
	}
}
.skillup-table {
	--_font-size: 1rem;
	line-height: 1.75;
	font-weight: var(--font-medium);
	margin-block-start: calc(var(--spacer-unit) * 6.4);
	& .training {
		inline-size: calc(var(--_font-size) * 5);
	}
	& thead th {
		background-color: #646478;
		color: #fff;
		text-align: center;
		font-size: calc(18 * var(--font-scale-ss));
		padding: 0.25em;
	}
	& tbody th, & tbody td {
		background-color: var(--grayF2);
		vertical-align: middle;
		padding: 1em;
		padding: 0.5em;
	}
	& tbody .training {
		font-weight: var(--font-semibold);
		text-align: center;
		position: relative;
	}
	& tbody > tr + tr > * {
		border-block-start: 25px solid var(--white);
	}
	& tbody > tr + tr > .training::before {
		--shape-triangle-bottom: polygon(0 0, 100% 0, 50% 100%);
		--size: 25px;
		content: "";
		position: absolute;
		inset-block-start: calc(var(--size) * -1);
		inset-inline-start: calc(50% - var(--size) / 2);
		line-height: 1;
		display: block;
		inline-size: var(--size);
		block-size: calc(var(--size) / 2 * tan(60deg));
		clip-path: var(--shape-triangle-bottom);
		background-color: var(--gray66);
	}
	& .ladder1 .purpose {
		background-color: #fceb7f;
	}
	& .ladder2 .purpose {
		background-color: #efcbed;
	}
	& .ladder3 .purpose {
		background-color: #bde1e5;
	}
	& .ladder4 .purpose {
		background-color: #9fd4fa;
	}
}
@media (768px <=width), print {
	.skillup-table {
		& .training {
			inline-size: calc(var(--_font-size) * 8);
		}
		& .purpose {
			inline-size: calc(var(--_font-size) * 15);
		}
		& thead th {
			padding: 0.25em;
		}
		& tbody th, & tbody td {
			padding: 1em;
		}
	}
}
@media (1024px <=width), print {
	.skillup-table {
		--_font-size: calc(21 / 16 * 1rem);
		margin-block-start: calc(var(--spacer-unit) * 6.4);
		& .training {
			inline-size: calc(var(--_font-size) * 10);
		}
		& .purpose {
			inline-size: calc(var(--_font-size) * 17);
		}
		& thead th {
			font-size: calc(18 / 16 * 1rem);
			padding: 0.25em;
		}
		& tbody th, & tbody td {
			padding: 1em;
		}
		& tbody > tr + tr > * {
			border-block-start: 25px solid var(--white);
		}
		& tbody > tr + tr > .training::before {
			--size: 25px;
		}
		& tbody .outline {
			font-size: calc(16 / 16 * 1rem);
		}
	}
}
ul.skillup-list {
	& li {
		padding-inline-start: 1em;
		text-indent: -1em;
	}
	& li::before {
		content: "・";
		text-indent: 0;
	}
}
.skillup-table-foot {
	--_heading-font-size: 15.5px;
	--_arrow-scale: 0.6;
	--_split-arrow-aspect-ratio: 70 / 56;
	--_split-arrow-width: calc(70 / 16 * 1em);
	--_split-arrow-height: calc(56 / 16 * 1em);
	--_split-arrow-spacing: 10px;
	--_side-margin: 0;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-areas:
		"carreer carreer"
		"professional management";
	justify-content: space-between;
	margin-block-start: calc(var(--spacer-unit) * 2.5);
	& * {
		font-weight: var(--font-medium);
	}
	& .career {
		grid-area: carreer;
		& dt {
			color: var(--key-color);
			border: var(--base-border-width) solid var(--key-color);
			font-size: calc(17px / 16 * 1rem);
			inline-size: fit-content;
			padding: 0.25em 2em;
			block-size: 2.8em;
			margin: 0 auto -1.4em;
			display: flex;
			justify-content: center;
			align-items: center;
			border-radius: calc(infinity * 1px);
			z-index: 1;
			position: relative;
			background-color: var(--white);
		}
		& dd {
			inline-size: 100%;
			line-height: 1.5;
			padding: 2.75em 1em 1.5em;
			background-color: color-mix(in oklab, #6374cb 30%, white);
			display: flex;
			justify-content: center;
			align-items: center;
			line-height: 1.5;
			border-radius: calc(infinity * 1px);
		}
		&::before {
			content: "";
			display: block;
			aspect-ratio: 23/ 41;
			inline-size: calc(23 / 16 * 1em * var(--_arrow-scale));
			background: url("../images/touseki/arr_ed-b.svg") no-repeat center / contain;
			margin: 0 auto 0.25em;
		}
	}
	& .professional, & .management {
		border: var(--base-border-width) solid var(--key-color);
		border-radius: calc(infinity * 1px);
		display: flex;
		justify-content: center;
		align-items: center;
		block-size: calc(200 / 16 * 1em);
		block-size: 5em;
		padding: 1em;
		block-size: auto;
		inline-size: max(calc(var(--_heading-font-size) * 11), 90%);
		flex-direction: column;
		margin-block-start: calc(var(--_split-arrow-height) * var(--_arrow-scale) + var(--_split-arrow-spacing));
		position: relative;
		& dt {
			font-size: 28px;
			font-size: var(--_heading-font-size);
			line-height: 1.5;
			color: var(--key-color);
		}
		& dd {
			color: var(--text-color);
			margin-block-start: 0.66666666em;
			margin-block-start: 0;
		}
		&::before {
			content: "";
			inline-size: calc(var(--_split-arrow-width) * var(--_arrow-scale));
			inset-block-start: calc(var(--_split-arrow-height) * var(--_arrow-scale) * -1 - var(--_split-arrow-spacing));
			display: block;
			aspect-ratio: var(--_split-arrow-aspect-ratio);
			background-repeat: no-repeat;
			background-position: center;
			background-size: contain;
			margin: 0;
			position: absolute;
		}
	}
	& .professional {
		grid-area: professional;
		margin-inline-start: var(--_side-margin);
		&::before {
			background-image: url("../images/touseki/arr_ed-l.svg");
			inset-inline-start: 55%;
		}
	}
	& .management {
		grid-area: management;
		margin-inline-end: var(--_side-margin);
		margin-inline-start: auto;
		&::before {
			background-image: url("../images/touseki/arr_ed-r.svg");
			inset-inline-end: 55%;
		}
	}
}
@media (768px <=width), print {
	.skillup-table-foot {
		--_heading-font-size: 22px;
		--_arrow-scale: 0.7;
		& .career {
			& dt {
				font-size: var(--_heading-font-size);
				padding-inline: 3em;
			}
			& dd {
				padding: 3.5em 1em 2.5em;
			}
			&::before {
				inline-size: calc(23 / 16 * 1em * var(--_arrow-scale));
			}
		}
		& .professional, & .management {
			--_side-margin: 1.5em;
			inline-size: calc(438 / var(--_heading-font-size) * 1em));
			padding: 2em 1em;
		}
		& .professional {
			margin-inline-start: 1.5em;
			&::before {
				inset-inline-start: 55%;
			}
		}
		& .management {
			margin-inline-end: 1.5em;
			&::before {
				inset-inline-end: 55%;
			}
		}
	}
}
@media (1024px <=width), print {
	.skillup-table-foot {
		--_heading-font-size: 23px;
		--_arrow-scale: 0.9;
		--_split-arrow-spacing: 16px;
		font-size: 16px;
		& .career {
			& dt {
				padding: 1.6em 3em;
			}
			& dd {
				padding: 4.38888889em 1em 3em;
			}
			&::before {
				inline-size: calc(23 / 16 * 1em * var(--_arrow-scale));
			}
		}
		& .professional, & .management {
			inline-size: calc(var(--_heading-font-size) * 15.64285714);
			aspect-ratio: 438 / 200;
			padding: 1em;
			& dd {
				margin-block-start: 0.4em;
			}
		}
		& .professional {
			&::before {
				inset-inline-start: 65%;
			}
		}
		& .management {
			&::before {
				inset-inline-end: 65%;
			}
		}
	}
}
@media (1280px <=width), print {
	.skillup-table-foot {
		--_heading-font-size: 28px;
		--_arrow-scale: 1;
		--_split-arrow-spacing: 18px;
		font-size: 18px;
	}
}
.childcare_touseki-grid {
	display: flex;
	flex-direction: column;
	gap: calc(var(--spacer-unit) * 4) calc(var(--spacer-unit) * 6.6);
}
@media (768px <=width), print {
	.childcare_touseki-grid {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		align-items: start;
	}
}
.childcare_touseki-card {
	& .childcare-table {
		margin-block-start: 1.25em;
	}
}
@media (768px <=width), print {
	.childcare_touseki-card {
		display: grid;
		grid-template-rows: subgrid;
		grid-row: span 3;
		align-items: start;
		gap: 0;
	}
}
.education_touseki-grid {
	display: flex;
	flex-direction: column;
	gap: calc(var(--spacer-unit) * 3);
	&::after {
		content: "";
		display: block;
		margin-block-start: calc(var(--spacer-unit) * -7);
		background: url("../images/touseki/ill_education.png") no-repeat center bottom / auto 100%;
		aspect-ratio: 718 / 538;
		inline-size: 70%;
		margin-inline: auto;
	}
}
@media (768px <=width), print {
	.education_touseki-grid {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: calc(var(--spacer-unit) * 4.6) calc(var(--spacer-unit) * 5);
		position: relative;
		&::after {
			position: absolute;
			block-size: calc(calc(100% + calc(var(--spacer-unit) * 4.6)) / 2 + var(--spacer-unit) * 3);
			inline-size: auto;
			inset-block-end: 0;
			inset-inline-start: calc(75% + calc(var(--spacer-unit) * 2.5));
			translate: -50% 0;
		}
	}
}
@media (1024px <=width), print {
	.education_touseki-grid {
		&::after {
			inset-inline-end: 3%;
		}
	}
}
.education_touseki-card {
	border: var(--base-border-width) solid var(--key-color);
	padding: 2em 1.5em;
	padding: 1.5em 1.5em 2em;
	border-radius: var(--border-radius-m);
	& .title {
		font-size: calc(32 * var(--font-scale-m));
		text-align: center;
		color: var(--key-color);
		line-height: 1.5;
		margin-block-end: 0.2em;
		font-weight: var(--font-semibold);
	}
	& .body-copy {
		line-height: 1.75;
		text-align: justify;
	}
}
@media (1024px <=width), print {
	.education_touseki-card {
		border: var(--base-border-width) solid var(--key-color);
		padding: 2.23em 3em;
		& .title {
			font-size: calc(36 * var(--font-scale-m));
		}
	}
}
/* ============================== */
/*  6つの強み */
/* ============================== */
section.strength .section-heading {
	font-weight: var(--font-medium);
	text-align: center;
	font-size: 34px;
	line-height: 1.5;
	color: var(--gray66);
	& .shoulder {
		font-size: calc(24 / 34 * 1em);
		display: block;
	}
}
section.strength .lead-copy {
	font-size: 16px;
	margin-block-end: calc(var(--spacer-unit) * 3);
}
.strength-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-columns: repeat(auto-fill, minmax(min(282px, 100%), 1fr));
	gap: calc(var(--spacer-unit) * 5) calc(var(--spacer-unit) * 6);
	margin-block-start: calc(var(--spacer-unit) * 3);
}
.strength-card {
	& .icon {
		inline-size: 140px;
		aspect-ratio: 1;
		background-color: color-mix(in oklab, #29abe2 20%, white);
		border-radius: 50%;
		margin: 0 auto;
	}
	& .title {
		font-size: calc(28 * var(--font-scale-s));
		text-align: center;
		color: var(--gray66);
		font-weight: var(--font-semibold);
		line-height: 1.5;
		margin-block: 0.75em 0.33333333em;
	}
	& .body-copy {
		text-align: justify;
	}
}
.link-button.strength {
	margin: 40px 0 0;
	font-size: calc(18 / 16 * 1rem);
	line-height: 1.5;
	font-weight: var(--font-semibold);
	& a {
		text-decoration: none;
		display: block;
		padding: 0.1em 2.5em;
		border-radius: calc(infinity * 1px);
		border: var(--base-border-width) solid var(--key-color);
		position: relative;
		color: var(--key-color);
		text-align: center;
		display: flex;
		align-items: center;
		justify-content: center;
		inline-size: min(100%, calc(500 / 24 * 1em));
		min-block-size: calc(60 / 24 * 1em);
		margin-inline: auto;
		&::after {
			content: "▶︎";
			font-size: 0.6em;
			margin-inline-start: 0.6em;
		}
	}
}
@media (768px <=width), print {
	.link-button.strength {
		font-size: calc(24 * var(--font-scale-s));
	}
}
@media(hover:hover) {
	@media (768px <=width), print {
		.link-button.strength {
			& a:hover {
				background-color: var(--key-color);
				color: var(--white);
			}
		}
	}
}
.feature_touseki-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-columns: repeat(auto-fill, minmax(min(300px, 100%), 1fr));
	gap: calc(var(--spacer-unit) * 5) calc(var(--spacer-unit) * 5.5);
}
.feature_touseki-card {
	& .image {
		margin-block-end: 1.5em;
	}
	& .title {
		font-size: calc(28 * var(--font-scale-s));
		line-height: 1.3;
		margin-block-end: 0.4em;
		font-weight: var(--font-semibold);
		color: var(--key-color);
	}
	& .body-copy {
		text-align: justify;
	}
}
/* ============================== */
/*  マップ（透析ページ） */
/* ============================== */
section.facility {
	margin-inline: 0;
	& .section-heading {
		margin-inline: var(--base-inline-margin);
	}
	& .lead-copy {
		font-size: 1rem;
	}
}
.facility-search-nav {
	margin: 10px var(--base-inline-margin) 0;
}
.facility-search-nav > div + div {
	margin-block-start: 20px;
}
.facility-search-nav .button-heading {
	line-height: 1.5;
	margin: 0 0 0.5em;
	color: var(--key-color);
	font-weight: var(--font-medium);
}
.facility-search-nav .button {
	font-size: calc(18 / 16 * 1rem);
	line-height: 1.5;
	text-align: center;
	font-weight: var(--font-regular);
	& a {
		border: var(--base-border-width) solid var(--key-color);
		border-radius: calc(infinity * 1px);
		color: var(--key-color);
		text-decoration: none;
		display: block;
		padding: 0.43333333em 0.5em;
		position: relative;
	}
}
.facility-search-nav .button a:hover {
	background-color: var(--key-color);
	color: var(--white);
}
.facility-search-nav .button br {
	display: none;
}
.facility-search-nav .from-map::after {
	content: "↓";
	padding-inline-start: 1em;
}
.facility-search-nav .from-list::after {
	content: "→";
	padding-inline-start: 1em;
}
.facility-search-nav .footnote {
	margin-block-start: 0.75em;
}
@media (768px <=width), print {
	.facility-search-nav {
		display: flex;
		justify-content: space-between;
		margin-block-end: 40px;
	}
	.map-body-text {
		font-size: calc(20 / 16 * 1rem);
	}
	.facility-search-nav > div {
		inline-size: 47.5%;
	}
	.facility-search-nav > div:only-child {
		inline-size: 100%;
	}
	.facility-search-nav > div + div {
		margin-block-start: 0;
	}
}
@media (1032px <=width), print {
	.facility-search-nav {
		margin-block-start: 20px;
		margin-block-end: 20px;
	}
	.map-body-text {
		font-size: calc(26 / 16 * 1rem);
	}
	.facility-search-nav .button-heading {
		font-size: calc(21 / 16 * 1rem);
	}
	.facility-search-nav .button {
		font-size: calc(30 / 16 * 1rem);
	}
}
.facility-map-container {
	overflow-x: scroll;
}
.facility-map-scroll {
	inline-size: 100%;
	min-inline-size: 650px;
	overflow-x: hidden;
}
.facility-map {
	margin-inline-start: -53%;
	margin-inline-end: -47%;
	inline-size: 206%;
	min-block-size: 350px;
	position: relative;
}
.facility-map a {
	position: absolute;
	line-height: 1.4;
	margin-block-start: calc(-0.7em - 0.25em);
	font-size: 12.5px;
	display: block;
	padding: 0.25em 0.25em;
	color: inherit;
	font-feature-settings: "palt";
}
@media (650px <=width), print {
	.facility-map-container {
		overflow-x: hidden;
	}
	.facility-map-scroll {
		inline-size: auto;
		overflow-x: visible;
	}
}
@media (900px <=width), print {
	.facility-map {
		margin-inline-start: -33.333333333333333%;
		margin-inline-end: -33.333333333333333%;
		inline-size: 166.66666666%;
	}
	.facility-map a {
		font-size: calc(14 / 16 * 1rem);
	}
}
@media (1200px <=width), print {
	.facility-map {
		margin-inline-start: calc(calc(100% - 2000px) / 2);
		margin-inline-end: calc(calc(100% - 2000px) / 2);
		inline-size: 2000px;
	}
	.facility-map a {
		font-size: calc(17 / 16 * 1rem);
	}
}
.sec-facility-map .map-notice {
	font-size: 14px;
	line-height: 1.5;
	padding: 20px var(--x-margin) 10px;
}
@media (768px <=width), print {
	.sec-facility-map .map-notice {
		display: none;
	}
}
/* 愛知 */
.f-aichi01 a {
	inset-block-start: 44.1%;
	inset-inline-end: 64%;
	text-align: end;
}
.f-aichi02 a {
	inset-block-start: 47.39%;
	inset-inline-start: 42.24%;
	text-align: start;
}
.f-aichi03 a {
	inset-block-start: 51.98%;
	inset-inline-start: 40.61%;
	text-align: start;
}
.f-aichi04 a {
	inset-block-start: 57%;
	inset-inline-start: 40.17%;
	text-align: start;
}
.f-aichi05 a {
	inset-block-start: 61.729818181818182%;
	inset-inline-start: 44.327%;
	text-align: start;
}
.f-aichi06 a {
	inset-block-start: 66.181818181818182%;
	inset-inline-start: 44.327%;
	text-align: start;
}
.f-aichi07 a {
	inset-block-start: 70.403636363636364%;
	inset-inline-start: 43.5%;
	text-align: start;
}
.f-aichi08 a {
	inset-block-start: 85.454545454545455%;
	inset-inline-start: 41.71%;
	text-align: start;
	margin-inline-start: -0.75em;
	margin-block-start: 0;
}
.f-aichi09 a {
	inset-block-start: 81.934545454545455%;
	inset-inline-end: 61.75%;
	text-align: end;
}
/* 静岡 */
.f-shizuoka01 a {
	inset-block-start: 50.1%;
	inset-inline-start: 58.35%;
	text-align: start;
}
.f-shizuoka02 a {
	inset-block-start: 57.23%;
	inset-inline-start: 58.49%;
	text-align: start;
}
.f-shizuoka03 a {
	inset-block-start: 68.92%;
	inset-inline-start: 53.83%;
	text-align: start;
	margin-inline-start: -0.75em;
	margin-block-start: -1.5em;
}
.f-shizuoka04 a {
	inset-block-start: 81.420181818181818%;
	inset-inline-start: 51.75%;
	text-align: start;
	margin-inline-start: -0.75em;
	margin-block-start: 0;
}
.f-shizuoka05 a {
	inset-block-start: 86.618181818181818%;
	inset-inline-start: 51.14%;
	text-align: start;
	margin-inline-start: -0.75em;
	margin-block-start: 0;
}
/* 岐阜 */
.f-gifu01 a {
	inset-block-start: 24%;
	inset-inline-end: 55.7%;
	text-align: end;
}
/* 三重 */
.f-mie01 a {
	inset-block-start: 56.28%;
	inset-inline-end: 64.98%;
	text-align: end;
}
/* 長野 */
.f-nagano01 a {
	inset-block-start: 18.45%;
	inset-inline-start: 52.83%;
	text-align: start;
}
/* 埼玉 */
.f-saitama01 a {
	inset-block-start: 11.054545454545455%;
	inset-inline-end: 28.375%;
	text-align: end;
}
/* オレンジ */
.f-other01 a {
	inset-block-start: 35.818181818181818%;
	inset-inline-end: 62.25%;
	text-align: end;
}
.f-other02 a {
	inset-block-start: 42.363636363636364%;
	inset-inline-start: 41.45%;
}
.f-other03 a {
	inset-block-start: 65.454545454545455%;
	inset-inline-end: calc(68.7% - 6.9em);
	text-align: start;
}
.f-other04 a {
	inset-block-start: 20.181818181818182%;
	inset-inline-end: 28.65%;
	text-align: end;
}
.facility-map a:hover {
	background-color: rgba(255, 255, 255, 0.7);
	color: var(--blue);
	text-decoration: none;
}
.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
	block-size: 5px;
}
.simplebar-scrollbar.simplebar-visible::before {
	opacity: .25;
}
section.schedule_touseki {
	margin-inline: 0;
	padding: 0 var(--base-inline-margin) calc(var(--spacer-unit) * 6);
	position: relative;
	&::before {
		content: "";
		inline-size: 100%;
		block-size: min(46vw, 550px);
		background-color: #ddeefa;
		position: absolute;
		inset-block-end: 0;
		inset-inline-start: 0;
		z-index: -1;
	}
}
@media (768px <=width), print {
	section.schedule_touseki {
		padding-block-end: calc(var(--spacer-unit) * 9.3);
	}
}
.video-container {
	inline-size: min(95%, 1000px);
	margin: calc(var(--spacer-unit) * 10) auto;
	block-size: auto;
	aspect-ratio: 16 / 9;
	& iframe {
		inline-size: 100%;
		block-size: 100%;
	}
}
section.schedule_touseki {
	margin-block:calc(var(--spacer-unit) * 3.5) 0;
}
/* ============================== */
/*  訪問看護 */
/* ============================== */
section.part-section + section.part-section {
	margin-block-start: calc(var(--spacer-unit) * 16);
}
.sh3 {
	font-size: calc(22 / 16 * 1rem);
	color: var(--gray66);
	text-align: center;
	line-height: 1.5;
	font-weight: var(--font-regular);
	margin: 1.2em 0 1em;
	font-feature-settings: 'palt';
	padding: 0;
}
@media (768px <=width), print {
	.sh3 {
		font-size: calc(28 / 16 * 1rem);
	}
}
@media (1024px <=width), print {
	.sh3 {
		font-size: calc(35 / 16 * 1rem);
	}
}
@media (1280px <=width), print {
	.sh3 {
		font-size: calc(42 / 16 * 1rem);
	}
}
.section-body.career-path {
	& .sub-heading {
		font-size: calc(17 / 16 * 1rem);
		font-weight: var(--font-semibold);
		margin-block-end: 1em;
		& br {
			display: none;
		}
	}
	& .body-copy {
		text-align: justify;
	}
	& .career-path-list {
		margin-block-start: calc(var(--spacer-unit) * 5);
		& ul {
			display: flex;
			flex-direction: column;
			gap: 1em;
			line-height: 1.5;
		}
		& li {
			padding: 0.5625em 0.75em;
			border: var(--base-border-width) solid var(--key-color);
			border-radius: calc(7 / 16 * 1em);
			&::before {
				content: "・";
			}
		}
	}
	& .image {
		margin-block-start: calc(var(--spacer-unit) * 5);
		& img {
			border-radius: var(--border-radius-m);
		}
	}
}
@media (768px <=width), print {
	.section-body.career-path {
		display: grid;
		grid-template-columns: 1fr calc(590 / 1250 * 100%);
		grid-template-rows: auto 1fr;
		gap: 0 calc(var(--spacer-unit) * 5);
		grid-template-areas:
			"heading  image"
			"body-copy image"
			"list list";
		& .sub-heading {
			grid-area: heading;
			font-size: calc(24 * var(--font-scale-s));
			& br {
				display: block;
			}
		}
		& .body-copy {
			grid-area: body-copy;
			text-align: justify;
		}
		& .career-path-list {
			grid-area: list;
		}
		& .image {
			grid-area: image;
			margin-block-start: 0;
		}
		& .content {
			display: contents;
		}
	}
}
@media (1024px <=width), print {
	.section-body.career-path {
		display: grid;
		grid-template-rows: auto 1fr;
		grid-template-columns: 1fr 1fr calc(480 / 1250 * 100%);
		gap: 0 calc(var(--spacer-unit) * 4);
		grid-template-areas:
			"heading heading image"
			"body-copy list image";
		& .career-path-list {
			margin-block-start: 0;
		}
		& .image {
			margin-inline-start: calc(var(--spacer-unit) * 1);
		}
	}
}
.section-nav {
	margin-block-start: calc(var(--spacer-unit) * 7);
	& ul {
		display: grid;
		grid-template-columns: 1fr;
		gap: 10px;
	}
	& a {
		border: 1px solid var(--key-color);
		block-size: calc(90 / 21 * 1em);
		padding: 0.5em;
		display: flex;
		align-items: center;
		justify-content: center;
		color: var(--gray80);
		gap: 0.75em;
		border-radius: var(--border-radius-m);
		font-weight: var(--font-medium);
		line-height: 1.2;
		text-decoration: none;
		&::before {
			content: "";
			display: block;
			aspect-ratio: 1;
			block-size: calc(56 / 21 * 1em);
			background-size: contain;
			background-repeat: no-repeat;
		}
		&[href="#visiting"]::before {
			background-image: url("../images/nursing-care/ico_ancnav1.svg");
			aspect-ratio: 58 / 56;
		}
		&[href="#elderly"]::before, &[href="#group-home"]::before {
			background-image: url("../images/nursing-care/ico_ancnav2.svg");
			aspect-ratio: 48 / 56;
		}
	}
}
@media (768px <=width), print {
	.section-nav {
		font-size: calc(21 * var(--font-scale-s));
		& ul {
			display: grid;
			grid-template-columns: repeat(3, 1fr);
		}
		& a {
			block-size: calc(100 / 21 * 1em);
		}
	}
}
@media (1024px <=width), print {
	.section-nav {
		& ul {
			gap: calc(var(--spacer-unit) * 3.5) calc(var(--spacer-unit) * 4.6);
		}
	}
}
@media(hover:hover) {
	.section-nav {
		& a:hover {
			background-color: color-mix(in oklab, var(--key-color) 10%, white);
		}
	}
}
.section-heading.sh2 {
	font-size: calc(26 / 16 * 1rem);
	line-height: 1.4;
	font-weight: var(--font-medium);
	color: var(--gray80);
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.6em;
}
@media (768px <=width), print {
	.section-heading.sh2 {
		font-size: calc(38 / 16 * 1rem);
		& br {
			display: none;
		}
	}
}
@media (1024px <=width), print {
	.section-heading.sh2 {
		font-size: calc(48 / 16 * 1rem);
	}
}
@media (1280px <=width), print {
	.section-heading.sh2 {
		font-size: calc(60 / 16 * 1rem);
	}
}
.section-heading.sh2.visiting::before {
	content: "";
	inline-size: calc(128 / 60 * 1em);
	aspect-ratio: 128 / 89;
	background: url("../images/nursing-care/hdi_visiting.svg") no-repeat center / contain;
}
.section-heading.sh2.elderly::before, .section-heading.sh2.group-home::before {
	content: "";
	inline-size: calc(107 / 60 * 1em);
	aspect-ratio: 107 / 129;
	background: url("../images/nursing-care/hdi_elderly-care.svg") no-repeat center / contain;
}
.job-highlights-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: calc(var(--spacer-unit) * 2.5);
	;
}
@media (768px <=width), print {
	.job-highlights-grid {
		grid-template-columns: repeat(3, 1fr);
	}
}
.job-highlights-card {
	background-color: color-mix(in oklab, #c7b299 15%, white);
	border-radius: var(--border-radius-m);
	padding: 1.75em 2em;
	& dt {
		font-size: calc(24 * var(--font-scale-s));
		line-height: 1.33333333;
		font-weight: var(--font-semibold);
		color: var(--key-color);
		margin-block-end: 0.7em;
	}
	& dd {
		line-height: 1.5;
		text-align: justify;
	}
}
.column-can-do {
	border: 1px solid var(--key-color);
	padding: 1.25em 1.5em 2em;
	border-radius: var(--border-radius-m);
	& .heading {
		font-size: calc(32 * var(--font-scale-m));
		color: var(--gray66);
		line-height: 1.5;
		text-align: center;
		margin-block-end: 0.7em;
		font-weight: var(--font-regular);
		& .shoulder {
			font-size: 17px;
			color: var(--key-color);
			font-weight: var(--font-semibold);
			display: flex;
			align-items: center;
			justify-content: center;
			gap: 0.25em;
			margin-block-end: 1.1em;
			&::before {
				content: "";
				inline-size: calc(39 / 24 * 1em);
				aspect-ratio: 39 / 57;
				background: url("../images/nursing-care/ico_ stethoscope.svg") no-repeat center / contain;
			}
		}
	}
	& .heading.small {
		font-size: calc(28 * var(--font-scale-s));
		line-height: 1.2;
		margin-block-start: -0.3em;
		& .shoulder {
			margin-block-end: 0.6em;
		}
	}
	& .body-copy {
		line-height: 1.5;
		text-align: justify;
		font-weight: var(--font-regular);
		color: var(--text-color);
	}
}
@media (768px <=width), print {
	.column-can-do {
		padding: 1.75em 2.42em 2em;
		& .heading {
			font-size: calc(32 * var(--font-scale-m));
			& .shoulder {
				font-size: calc(24 * var(--font-scale-m));
			}
		}
	}
}
.section-body.introduction {
	& .content {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		gap: 20px;
	}
	& .image {
		margin-block-start: calc(var(--spacer-unit) * 5);
		& img {
			border-radius: var(--border-radius-m);
		}
	}
}
@media (768px <=width), print {
	.section-body.introduction {
		display: grid;
		grid-template-columns: 1fr calc(480 / 1250 * 100%);
		gap: 0 calc(50 / 1250 * 100%);
		justify-content: space-between;
		& .content {
			display: flex;
			flex-direction: column;
			justify-content: space-between;
			gap: 20px;
		}
		& .image {
			margin-block-start: 0;
			& img {
				border-radius: var(--border-radius-m);
			}
		}
	}
}
.section-body.introduction.visiting-introduction {
	& .job-highlights {
		margin-block-start: calc(var(--spacer-unit) * 4.8);
		grid-column: span 2;
	}
}
.part-section.visiting section.schedule {
	margin-inline: var(--base-inline-margin);
}
.schedule-list {
	--_gap: calc(48 / 24 * 1em);
	--_font-size: calc(17 / 16 * 1rem);
	font-size: var(--_font-size);
	display: flex;
	flex-direction: column;
	gap: var(--_gap);
	& li {
		border: var(--base-border-width) solid var(--key-color);
		padding: 1em 0.5em;
		border-radius: var(--border-radius-m);
		display: flex;
		align-items: flex-start;
		position: relative;
	}
	& li:not(:first-child)::before {
		content: "";
		inline-size: calc(0.5em + 4em + 0.5em + 2px);
		border-inline-end: 4px dotted var(--key-color);
		block-size: var(--_gap);
		display: block;
		position: absolute;
		inset-block-start: calc(var(--_gap) * -1);
		inset-inline-start: 0;
	}
	& .time {
		font-weight: var(--font-semibold);
		inline-size: 4em;
		text-align: end;
		padding-inline-end: 1em;
		flex: none;
	}
	& dl {
		flex: auto;
	}
	& dt {
		font-weight: var(--font-semibold);
		color: var(--key-color);
		&::before {
			content: "●";
			margin-inline-end: 1em;
		}
	}
	& dd {
		font-size: calc(14 / 16 * 1rem);
		line-height: 1.3;
		margin-block-start: 0.25em;
		margin-inline-start: calc(var(--_font-size) * 2);
	}
}
@media (768px <=width), print {
	.schedule-list {
		gap: var(--_gap);
		& li {
			padding: 1.25em 1em;
			align-items: center;
		}
		& li:not(:first-child)::before {
			inline-size: calc(1em + 4em + 0.5em + 2px);
		}
		& dl {
			display: flex;
			align-items: center;
			gap: 1em;
		}
		& dt {
			flex: none;
		}
		& dd {
			font-size: calc(15 / 16 * 1rem);
			margin: 0;
		}
	}
}
@media (1024px <=width), print {
	.schedule-list {
		font-size: calc(24 * var(--font-scale-s));
		& dd {
			font-size: calc(16 / 16 * 1rem);
		}
	}
}
.section-body.elderly-introduction {
	& .content {
		display: flex;
		flex-direction: column;
		gap: calc(var(--spacer-unit) * 3.5);
		& > .body-copy {
			max-width: 45em;
		}
	}
	& .job-highlights {
		margin-block-start: calc(var(--spacer-unit) * 7.5);
	}
}
.gallery-2ph {
	margin-block: calc(var(--spacer-unit) * 6.2) 0;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: calc(var(--spacer-unit) * 7);
	& img {
		border-radius: var(--border-radius-m);
	}
}
.section-body.group-home-introduction {
	& .column-can-do .heading {
		font-size: calc(28 * var(--font-scale-m));
	}
}
section.facility-info {
	--_dt-width: 6.5em;
	--_border: 1px solid var(--gray97);
	--_cell-padding-block: 0.71875em;
	--_cell-padding-inline: 1em;
	margin-block-start: calc(var(--spacer-unit) * 8.5);
	& .facility-grid {
		display: flex;
		flex-direction: column;
		gap: calc(var(--spacer-unit) * 5);
		0;
	}
	& .facility-card .title {
		font-size: calc(28 * var(--font-scale-m));
		line-height: 1.5;
		margin-block-end: 0.4em;
		font-weight: var(--font-medium);
		color: var(--gray66);
	}
	& .facility-card .details {
		line-height: 1.5;
		display: flex;
		flex-wrap: wrap;
		border-block-end: var(--_border);
		& dt, & dd {
			border-block-start: var(--_border);
			font-feature-settings: normal;
			padding-block: var(--_cell-padding-block);
			color: var(--gray33);
			padding-inline: 1em 1em;
		}
		& dt {
			font-weight: var(--font-bold);
			inline-size: var(--_dt-width);
		}
		& dd {
			inline-size: calc(100% - var(--_dt-width));
			&:has(.line) {
				padding: 0;
			}
			& .line {
				display: block;
				padding: var(--_cell-padding-block) var(--_cell-padding-inline);
				& + .line {
					border-block-start: var(--_border);
				}
			}
		}
	}
}
@media (768px <=width), print {
	section.facility-info {
		--_dt-width: 6.5em;
		& .facility-grid {
			display: grid;
			grid-template-columns: repeat(2, 1fr);
			gap: calc(var(--spacer-unit) * 5);
		}
		& .facility-card .title {
			line-height: 1.5;
			margin-block-end: 0.4em;
		}
		& .facility-card .details {
			line-height: 1.5;
		}
	}
}
.voice-item {
	display: flex;
	flex-direction: column;
	gap: calc(var(--spacer-unit) * 7);
	& .meta-info {
		margin-block-end: 1lh;
	}
	& .image img {
		border-radius: var(--border-radius-m);
	}
}
@media (768px <=width), print {
	.voice-item {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: calc(var(--spacer-unit) * 7);
	}
}
.apply-step-list {
	--_font-size-l: calc(18 / 16 * 1rem);
	--_font-size-s: calc(14 / 16 * 1rem);
	font-size: var(--_font-size-l);
	display: flex;
	flex-direction: column;
	gap: calc(var(--spacer-unit) * 5);
	& li {
		display: flex;
		background-color: #fbffec;
		border: var(--base-border-width) solid var(--key-color);
		border-radius: 15px;
		line-height: 1.5;
		padding: 0.5em 1em;
		gap: 1.5em;
		position: relative;
	}
	& li:not(:first-child)::before {
		content: "";
		inline-size: calc(var(--_font-size-l) * 4);
		block-size: calc(var(--spacer-unit) * 5);
		position: absolute;
		inset-block-start: calc(calc(var(--spacer-unit) * -5) - var(--base-border-width));
		inset-inline-start: calc(var(--_font-size-l) * 1);
		background: url("../images/nursing-care/arr_aply-step.svg") no-repeat center / auto 100%;
		display: block;
	}
	& .num {
		color: var(--key-color);
		font-size: var(--_font-size-l);
		inline-size: 4em;
		text-align: center;
		flex: none;
		font-weight: var(--font-semibold);
	}
	& dl {
		flex: auto;
	}
	& dt {
		color: var(--gray66);
		font-size: var(--_font-size-l);
		font-weight: var(--font-semibold);
	}
	& dd {
		font-size: var(--_font-size-s);
		margin-block-start: 0.155em;
	}
}
@media (768px <=width), print {
	.apply-step-list {
		--_font-size-l: calc(20 / 16 * 1rem);
		--_font-size-s: calc(15 / 16 * 1rem);
		& li {
			padding: 0.78125em 1.5em;
			gap: 1.5em;
			& dl {
				display: flex;
				align-items: center;
				gap: 1.5em;
			}
		}
		& li:not(:first-child)::before {
			inset-inline-start: calc(var(--_font-size-l) * 1.5);
		}
		.num {
			color: var(--key-color);
			font-size: var(--_font-size-l);
			font-weight: var(--font-semibold);
			inline-size: 4em;
			text-align: center;
		}
		dt {
			color: var(--gray66);
			font-size: var(--_font-size-l);
			font-weight: var(--font-semibold);
		}
		dd {
			flex: auto;
			margin-block-start: 0;
		}
	}
}
@media (1024px <=width), print {
	.apply-step-list {
		--_font-size-l: calc(27 / 16 * 1rem);
		--_font-size-s: calc(15 / 16 * 1rem);
	}
}
@media (1280px <=width), print {
	.apply-step-list {
		--_font-size-l: calc(32 / 16 * 1rem);
		--_font-size-s: calc(16 / 16 * 1rem);
	}
}

/* ============================== */
/*  偕行会について */
/* ============================== */
section.message_about {
	& .sub-heading {
		--_font-scale: 0.6;
		font-size: calc(38 / 16 * 1rem * var(--_font-scale));
		@media (768px <=width), print {
			--_font-scale: 0.72;
		}
		@media (1024px <=width), print {
			--_font-scale: 0.82;
		}
		@media (1280px <=width), print {
			--_font-scale: 1;
		}
		font-family: var(--font-serif);
		font-weight: var(--font-semibold);
		color: var(--key-color-dark);
		margin-block-end: 0.8em;
	}
	& .body-copy {
		line-height: 1.75;
		text-align: justify;
	}
}
@media (768px <=width), print {
	section.message_about {
		& .body-copy {
			line-height: 2.4375;
		}
	}
}
section.message_about .message_about-figure {
	margin-block-start: calc(var(--spacer-unit) * 4);
}
div.photo-imagery-5ph {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: calc(var(--spacer-unit) * 2);
	& img {
		display: block;
	}
	& .large {
		block-size: 100%;
		object-fit: cover;
		grid-column: 1 / span 2;
		grid-row: 1 / span 2;
	}
}
/* ============================== */
/*  キャリアの選択肢 */
/* ============================== */
section.career .lead-copy {
	font-size:calc(21 * var(--font-scale-s));
	margin-block-end: calc(var(--spacer-unit) * 4.5);
	font-weight: var(--font-medium);
	text-align: center;
}

.career-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(510px, 100%), 1fr));
	gap: calc(var(--spacer-unit) * 4) calc(var(--spacer-unit) * 5);
}
.career-card {
	border: 1px solid var(--key-color-dark);
	border-radius: var(--border-radius-m);
	padding: calc(var(--spacer-unit) * 3.5) calc(var(--spacer-unit) * 3.5);
	& .image {
		inline-size: min(58%, 220px);
		margin: 0 auto calc(var(--spacer-unit) * 3.5);
		position: relative;
		& img {
			border-radius: 50%;
			aspect-ratio: 1;
		}
		&::after {
			content: "";
			inline-size: 100%;
			aspect-ratio: 1;
			border-radius: 50%;
			position: absolute;
			inset-block-start: 50%;
			inset-inline-start: 0;
			display: block;
			box-shadow: 0 0 15px 0 rgb(0 0 0 / 0.3) inset;
			z-index: 1;
			translate: 0 -50%;
		}
	}
	& .title {
		font-size: calc(25 * var(--font-scale-s));
		line-height: 1.4;
		color: var(--key-color-dark);
		margin-block-end: 0.4em;
		font-weight: var(--font-semibold);
	}
	& .body-copy {
		line-height: 1.75;
		text-align: justify;
	}
}
@media (768px <=width), print {
	.career-card {
		display: grid;
		grid-template-columns: min(31%, 170px) 1fr;
		gap: 0 calc(var(--spacer-unit) * 3.8);
		& .image {
			inline-size: auto;
			margin: 0;
			display: grid;
			place-items: center;
		}
	}
}
@media (1280px <=width), print {
	.career-card {
		& .title {
		font-size: calc(28 * var(--font-scale-s));
		}
	}
}
/* ============================== */
/*  キャリアアップができる充実のサポート体制 */
/* ============================== */
section.support .support-item {
	margin-block-start: calc(var(--spacer-unit) * 5);
	& .sub-heading {
		font-size: calc(28 * var(--font-scale-m));
		color: var(--key-color-dark);
		line-height: 1.4;
		font-weight: var(--font-semibold);
		margin-block-end: 0;
	}
}
.support-table {
	--_dt-width: 7.5em;
	--_border: 1px solid var(--gray97);
	--_cell-padding-block: 0.71875em;
	--_cell-padding-inline: 1em;
	display: flex;
	flex-wrap: wrap;
	border-block-end: var(--_border);
	border-inline-end: var(--_border);
	margin-block-start: 0.75em;
	line-height: 1.5;
	& dt, & dd {
		border-block-start: var(--_border);
		font-feature-settings: normal;
		padding-block: var(--_cell-padding-block);
		color: var(--gray33);
		border-inline-start: var(--_border);
		padding-inline: 1em 1em;
	}
	& dt {
		font-weight: var(--font-bold);
		inline-size: var(--_dt-width);
		background-color: #e6e1c8;
	}
	& dd {
		inline-size: calc(100% - var(--_dt-width));
		&:has(.line) {
			padding: 0;
		}
		& .line {
			display: block;
			padding: var(--_cell-padding-block) var(--_cell-padding-inline);
			& + .line {
				border-block-start: var(--_border);
			}
		}
	}
}
@media (768px <=width), print {
	.support-table {
		--_dt-width: 9.5em;
	}
}

/* ============================== */
/*  その他の福利厚生 */
/* ============================== */
.link-button.other-benefits {
	--_height: calc(120 / 28 * 1em);
	
	font-size: calc(18 / 16 * 1rem);
	
	block-size: calc(var(--_height) * 0.75);
	inline-size: min(96%, 996px);
	margin: 0 auto;
	& a {
		color: var(--gray66);
		border: 1px solid #979797;
		text-decoration: none;
		block-size: 100%;
		border-radius: calc(infinity * 1px);
		display: flex;
		align-items: center;
		justify-content: center;
		position: relative;
		font-weight: var(--font-medium);
		&::after {
			content: "▶︎";
			font-size: 0.71428571em;
			margin-inline-start: 0.7em;
			color: #ff7bac;
		}
		&::before {
			content: "";
			display: block;
			position: absolute;
			inset-block-start: 0;
			inset-inline-start: 0;
			inline-size: 100%;
			block-size: 100%;
			border-radius: calc(infinity * 1px);
			background-color: #f2f2f2;
			translate: 4px 7px;
			z-index: -1;
		}
	}
}
@media (768px <=width), print {
	.link-button.other-benefits {
	font-size: calc(20 / 16 * 1rem);
		block-size: var(--_height);
		inline-size: min(80%, 996px);
	}
}
@media (1024px <=width), print {
	.link-button.other-benefits {
	font-size: calc(23 / 16 * 1rem);
	}
}
@media (1280px <=width), print {
	.link-button.other-benefits {
	font-size: calc(28 / 16 * 1rem);
	}
}
@media(hover:hover) {
	.link-button.other-benefits {
		& a::before {
			transition: translate 500ms, background-color 500ms;
		}
	}
	.link-button.other-benefits {
		& a:hover::before {
			translate: 0 0;
			background-color: color-mix(in oklab, var(--key-color) 10%, white);
		}
	}
}
section.other-benefits .foot-copy {
	font-size: calc(17 / 16 * 1rem);
	line-height: 1.6;
	color: var(--gray66);
	text-align: center;
	font-weight: var(--font-medium);
	margin-block-start: calc(var(--spacer-unit) * 7);
}
@media (768px <=width), print {
	section.other-benefits .foot-copy {
		font-size: calc(26 / 16 * 1rem);
	}
}
@media (1024px <=width), print {
	section.other-benefits .foot-copy {
		font-size: calc(32 / 16 * 1rem);
		margin-block-start: calc(var(--spacer-unit) * 12);
	}
}
@media (1280px <=width), print {
	section.other-benefits .foot-copy {
		font-size: calc(38 / 16 * 1rem);
	}
}
.dep_slide .slick-slide img {
	block-size: auto;
	transform: scale(0.8);
	transition: 0.5s;
	inline-size: 100%;
}
.dep_slide .is-active-next img, .dep_slide .slick-slide.slick-center img {
	transform: scale(1.125);
}
.dep_slide .slick-slide:not(.slick-center) h3, .dep_slide .slick-slide:not(.slick-center) p {
	display: none;
}
/* ============================== */
/*  募集要項 */
/* ============================== */
.requirements-link-grid {
	display: grid;
	gap: 110px calc(40 / 1250 * 100%);
	grid-template-columns: repeat(auto-fill, minmax(min(341px, 100%), 1fr));
}
.requirements-link-card {
	& .image img {
		border-radius: var(--border-radius-m);
	}
	& .title {
		font-size: calc(24 * var(--font-scale-s));
		font-weight: var(--font-medium);
		line-height: 1.5;
		margin-block: 0.4em 0.3em;
		padding-block-start: calc(16 / 24 * 1em * 1.5);
		&:has(.shoulder) {
			padding-block-start: 0;
		}
		& .shoulder {
			font-size: calc(16 / 24 * 1em);
			display: block;
		}
	}
	& .links {
		display: flex;
		gap: 10px;
	}
	& .link {
		font-size: calc(24 * var(--font-scale-s));
		text-align: center;
		flex: 1;
		font-weight: var(--font-medium);
		& a {
			block-size: 3.58333333em;
			display: flex;
			justify-content: center;
			align-items: center;
			text-decoration: none;
		}
		&.requirement a {
			border: 1px solid #7ac943;
			color: #7ac943;
		}
		&.inquiry a {
			border: 1px solid #3fa9f5;
			color: #3fa9f5;
		}
	}
}
@media(hover:hover) {
	.link.requirement a:hover {
		background-color: #7ac943;
		color: #fff;
	}
	.link.inquiry a:hover {
		background-color: #3fa9f5;
		color: #fff;
	}
}
.head-anchor-nav {
	margin-inline: var(--base-inline-margin);
	font-size: calc(21 * var(--font-scale-s));
	& ul {
		display: flex;
		justify-content: center;
		line-height: 1.75;
		gap: calc(var(--spacer-unit) * 1.6);
		margin-block: calc(var(--spacer-unit) * 8.4) calc(var(--spacer-unit) * 5.5);
	}
	& li {
		inline-size: min(100%, 16.66666667em);
	}
	& a {
		display: flex;
		justify-content: center;
		align-items: center;
		color: var(--white);
		background: #3ee;
		padding: 0.79166667em 0.5em;
		text-decoration: none;
		font-weight: var(--font-semibold);
		&::after {
			content: "▶︎";
			font-size: 0.76190476em;
			margin-inline-start: 1.2em;
		}
	}
	& li.new-graduate a {
		background-color: var(--green);
	}
	& li.experienced a {
		background-color: var(--blue);
	}
}
.section-heading.requirement {
	font-size: calc(36 * var(--font-scale-m));
	border: 1px solid;
	line-height: 1.5;
	padding: 0.61111111em 1em;
	font-weight: var(--font-medium);
	margin-block-end: 30px;
	&.new-graduate {
		color: var(--green);
	}
	&.experienced {
		color: var(--blue);
	}
}
.job-description-list {
	& > dt {
		font-size: 1em;
		font-weight: var(--font-semibold);
		border-block-end: 1px solid #cccccc;
		margin-block-end: 0.45em;
		&:not(:first-child) {
			margin-block-start: calc(var(--spacer-unit) * 3);
		}
		&:is(section.new-graduate *) {
			color: var(--green);
		}
		&:is(section.experienced *) {
			color: var(--blue);
		}
	}
	& > dd {
		font-size: calc(15.5 / 16 * 1rem);
		line-height: 1.75;
		padding-inline-start: 1em;
		& strong {
			color: #c1272d;
			font-weight: inherit;
		}
	}
}
@media (768px <=width), print {
	.job-description-list {
		& > dd {
			font-size: calc(21 * var(--font-scale-s));
			padding-inline-start: 2em;
		}
	}
}
table.requirement-table {
	line-height: 1.5;
	margin-block: 0.75em;
	& caption {
		font-size: calc(24 / 21 * 1em);
		padding: 0.39583333em 0.65em;
		font-weight: var(--font-bold);
		color: var(--white);
		text-align: start;
		background-color: var(--gray80);
	}
	& th, & td {
		font-weight: var(--font-regular);
		padding: 0.55952381em 0.65em;
		border: 1px solid #cccccc;
	}
	& tbody tr:first-child > th {
		text-align: center;
		background-color: #f2f2f2;
	}
}
.job-sub-list {
	display: flex;
	flex-wrap: wrap;
	& dt {
		inline-size: 6em;
		flex: none;
		font-weight: inherit;
	}
	& dd {
		flex: auto;
	}
}
.entry-link {
	--_bg-shift: 3px 6px;
	font-size: calc(64 * var(--font-scale-m));
	line-height: 1.33333333;
	font-weight: var(--font-bold);
	align-items: center;
	margin: calc(var(--spacer-unit) * 7) 0 0;
	& a {
		display: flex;
		align-items: center;
		justify-content: center;
		position: relative;
		text-decoration: none;
		color: var(--orange);
		inline-size: fit-content;
		padding: calc(var(--spacer-unit) * 1.2) 1em;
		border-radius: 10px;
		margin-inline: auto;
		&::after {
			content: "▶︎";
			font-size: calc(20 / 64 * 1em);
			margin-inline-start: 1.1em;
			line-height: 1;
			position: relative;
		}
	}
	& .icon {
		inline-size: calc(152 / 64 * 1em);
		aspect-ratio: 1;
		display: block;
		position: relative;
		margin-inline-end: 0.5em;
		&::before {
			content: "";
			display: block;
			position: absolute;
			inset-block-start: 0;
			inset-inline-start: 0;
			translate: var(--_bg-shift);
			border-radius: 50%;
			inline-size: 100%;
			block-size: 100%;
			background-color: var(--grayF2);
			z-index: 1;
		}
		&::after {
			content: "";
			display: block;
			position: absolute;
			inset-block-start: 0;
			inset-inline-start: 0;
			border-radius: 50%;
			inline-size: 100%;
			block-size: 100%;
			border: 1px solid var(--gray66);
			z-index: 2;
			background-position: center;
			background-size: 100%;
			background-repeat: no-repeat;
			background-image: url("../images/common/ico_entry.png");
		}
	}
}
@media (768px <=width), print {
	.entry-link {
		& a {
			padding-inline: 2em;
		}
	}
}
@media(hover:hover) {
	.entry-link a:hover {
		background-color: color-mix(in oklab, #fffac8 70%, white);
	}
}