/* CSS Document */

/* 
// Zen Kaku Gothic New
font-family: "zen-kaku-gothic-new", sans-serif;
font-weight: 400; Regular
font-weight: 500; Medium
font-weight: 700; Bold
font-style: normal;

// Zen Maru Gothic
font-family: "zen-maru-gothic", sans-serif;
font-weight: 400; Regular
font-weight: 500; Medium
font-weight: 700; Bold
font-style: normal;

// Lato
font-family: "lato", sans-serif;
font-weight: 900; Black
font-style: normal;

// Quicksand
font-family: "quicksand", sans-serif;
font-weight: 400; Regular
font-weight: 500; Medium
font-weight: 700; Bold
font-style: normal;
*/


:root{
	--color: #2b2926;
	--color-rgb: 43, 41, 38;
	--color-theme: #00bd5b;
	--color-theme-rgb: 0, 189, 91;
	--color-bl: #072c68;
	--color-bl-rgb: 7,44,104,1;
	--color-yl: #eed851;
	--color-yl-rgb: 238,216,81,1;
	--color-hover: #a9d500;
	--color-bg: #f4ede9;
	--color-bg-rgb: 244,237,233;
	--color-border: #ccc;
	--font: "zen-kaku-gothic-new", 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', sans-serif;
	--font-en: "quicksand", sans-serif;
	--wrap-space: 24px;
	--wrap-fit: calc(min(100dvw, 100%) - 48px);
	--wrap-max: 1280px;
	--wrap: clamp(327px, calc(max(100dvw, 100%) - 48px), var(--wrap-max));
	--dummy: #f2f2f2 url('/common/images/logoType.svg') no-repeat center / 75%;
}

html{
	min-width: 375px;
	scroll-behavior: smooth;
	scroll-padding-top: 56px;
}

body{
	color: var(--color);
/*	font: 400 16px var(--font);*/
	font: 400 18px var(--font);
	line-height: 1.65;
	overflow-wrap: anywhere;
}
::selection{
	background: var(--color-theme);
	color: #fff;
}
::-moz-selection{
	background: var(--color-theme);
	color: #fff;
}
_::content, _:future, body:not(*:root) {
	/* Chromeのハック */
	/*フォント細いって言われたとき
	font-weight: 500;
	*/
}
_::-webkit-full-page-media, _:future, :root body{
	/* safariのハック */
}
@-moz-document url-prefix(){
	/* Firefoxのハック */
	.xxx{

	}
}

a{
	color: inherit;
	.done &{
		transition-property: color, text-decoration, background, background-color, background-size, border, border-color, box-shadow, filter, opacity;
		transition-duration: 0.2s;
		transition-timing-function: ease-out;
	}
	:focus-visible{
		outline: var(--color-theme) auto 2px;
		outline-offset: 2px;
	}
}

wbr{
	.translated-ltr &:not(:lang(ja)){
		display: none;
	}
}

main{
	& a{
		color: var(--color);
		text-decoration: underline;
		&:hover{
			color: var(--color-theme);
		}
	}
}

input,
textarea,
select{
	background-color: transparent;
	accent-color: var(--color-theme);
	caret-color: var(--color-theme);
}

input{
	&[type="checkbox"]:checked,
	&[type="radio"]:checked{
		background-color: var(--color-theme);
	}
}

button{
	display: grid;
	align-items: center;
	min-height: 48px;
	padding: 8px 24px;
	background: var(--color-theme);
	font-weight: 500;
	color: white;
	text-align: center;
	border-radius: 50px;
	&:focus-visible{
		outline: var(--color-theme) auto 2px;
		outline-offset: 2px;
	}
}

#wrapper{
	display: grid;
	grid-template-rows: auto 1fr;
	min-height: 100dvh;
	#header{
		grid-column: 1;
		grid-row: 1;
		position: sticky;
		top: 0;
		z-index: 110;
		@media (min-width: 992px) {
	  		align-items: center;
			align-self: start;
			margin: 0 auto;
			padding-top: 24px;
			width: var(--wrap);
		}
	}
	#nav{
		z-index: 120;
		@media (min-width: 992px) {
			grid-column: 1;
			grid-row: 1;
			justify-self: center;
			position: sticky;
			margin-top: 110px;
			top: 0;
		}
	}
	#pagePath,
	#pageTop{
		order: 10;
	}
	#footer{
		order: 11;
	}
	#navButton{
		grid-column: 1;
		grid-row: 1;
		justify-self: end;
		position: sticky;
		top: 0;
		z-index: 120;
	}
}

#header{
	display: flex;
	justify-content: space-between;
	align-items: center;
	min-height: 56px;
	@media (max-width: 991.98px) {
		padding: 0 72px 0 20px;
		background: #fff;
	}
	@media (min-width: 992px) {
		display: none;
	}
	.scrollTop &{
		@media (min-width: 992px) {
			display: flex;
		}
	}
}

#hNavInfo{
	& li{
		& a{
			display: grid;
			grid-template-columns: 32px auto;
			align-items: center;
			grid-gap: 16px;
			padding: 0 32px 0 8px;
			min-height: 48px;
			font-weight: 700;
			background: #fff;
			border: 1px solid #ddd;
			border-radius: 50px;
			&:before{
				all: unset;
				content: "";
				aspect-ratio: 1;
				width: 32px;
				border-radius: 100%;
			}
			&[href*="aboutus"]{
				&:before{
					background: var(--color-bl)
						url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960" fill="%23fff"><path d="M124.5-124.5V-182H204v-596q0-22.97 17.27-40.23 17.26-17.27 40.23-17.27h437q22.97 0 40.23 17.27Q756-800.97 756-778v596h79.5v57.5h-711Zm137-57.5h437v-596h-437v596Zm131.45-267.5q14.5 0 24.03-9.47 9.52-9.47 9.52-23.98 0-14.5-9.47-24.03-9.47-9.52-23.98-9.52-14.5 0-24.03 9.47-9.52 9.47-9.52 23.98 0 14.5 9.47 24.03 9.47 9.52 23.98 9.52ZM261.5-778v596-596Z" /></svg>') no-repeat center/ 75%;
				}
			}
			&[href*="recruit"]{
				&:before{
					background: var(--color-bl)
						url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960" fill="%23fff"><path d="M361-224ZM45.5-166.5v-91q0-34.62 17.46-62.39 17.46-27.77 49.32-41.56Q185-393 242.5-407q57.5-14 118.15-14 41.35 0 78.6 6 37.25 6 79.75 19.5-8.44 11.46-14.66 23.97-6.22 12.5-11.34 25.53-34.48-10.44-65.5-13.97-31.02-3.53-66.5-3.53-56.33 0-105.16 10.75Q207-342 135-310q-14 6.5-23 21.5t-9 31v33.59h382.94q3.34 15.23 9.7 29.82Q502-179.5 510-166.5H45.5Zm315.5-314q-65.24 0-106.12-40.88Q214-562.26 214-627.5q0-65.24 40.88-106.12Q295.76-774.5 361-774.5q65.24 0 106.12 40.88Q508-692.74 508-627.5q0 65.24-40.88 106.12Q426.24-480.5 361-480.5Zm351-147.31q0 64.84-40.88 105.82Q630.24-481 565-481q-10.5 0-23.18-1.34-12.68-1.35-23.32-5.21 24.02-24.27 36.26-59.87Q567-583.02 567-627.53q0-44.5-12.25-78.45T518.5-768q10-2.81 23-4.66 13-1.84 23.5-1.84 65.24 0 106.12 41.03Q712-692.45 712-627.81ZM360.94-538q39.06 0 64.31-25.19t25.25-64.25q0-39.06-25.19-64.31T361.06-717q-39.06 0-64.31 25.19t-25.25 64.25q0 39.06 25.19 64.31T360.94-538Zm.06-89.5Zm325.03 445q38.97 0 65.22-27T777.5-274q0-38.5-26.48-64.75T686.23-365q-38.73 0-64.98 26.1Q595-312.8 595-274.22q0 39.22 26.03 65.47t65 26.25Zm.47 57.5q-61.46 0-105.23-43.78-43.77-43.77-43.77-105.24 0-61.98 43.78-105.23 43.77-43.25 105.24-43.25 61.98 0 105.23 43.27Q835-335.97 835-274q0 24.04-6.75 44.77-6.75 20.73-18.75 38.66L910.5-90l-35 35.5-101-100q-19.09 14.5-40.89 22-21.81 7.5-47.11 7.5Z" /></svg>') no-repeat center/ 75%;
				}
			}
			&:hover{
				border: 1px solid var(--color-bl);
			}
		}
		&:nth-child(3){
			& a{
				background: var(--color-yl);
				border: 1px solid var(--color-yl);
				&:before{
					all: unset;
					content: "";
					aspect-ratio: 1;
					width: 32px;
					background: #fff
						url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960"><path d="M790.5-125Q677-125 558-180.5T338-338Q236-439 180.5-557.75T125-790.69q0-18.81 12.71-31.56Q150.43-835 169.5-835H306q14 0 23.75 9.75t13.75 24.75l26.93 123.64Q372-663.5 369.5-652t-10.23 19.23L261-533q26 44 54.69 81.66Q344.38-413.68 379-380q36.5 38 77.25 69.32Q497-279.35 542-255l95.54-98q9.46-10.5 21.36-14.25 11.9-3.75 23.6-1.75l117.36 25.44Q815-340 825-327.8t10 27.3v131q0 19.07-12.71 31.79Q809.57-125 790.5-125ZM232-585.5l81-82-23.5-110H183q1.5 41.5 13 88.25t36 103.75Zm364 358q40 19 88.17 31 48.16 12 93.33 14v-107l-102-21.5-79.5 83.5Zm-364-358Zm364 358Z" /></svg>') no-repeat center/ 75%;
					border-radius: 100%;
				}
			}
		}
	}
	@media (max-width: 991.98px) {
		& li{
			&:nth-child(1){
				display: none;
			}
			&:nth-child(2){
				display: none;
			}
			&:nth-child(3){
				& a{
					position: relative;
					aspect-ratio: 1;
					width: 48px;
					height: auto;
					font-size: 0;
					text-indent: -9999px;
					overflow: hidden;
					background: var(--color-yl);
					border-radius: 100%;
					&:before{
						content: "";
						position: absolute;
						top: 50%;
						left: 50%;
						transform: translateY(-50%) translateX(-50%);
						aspect-ratio: 1;
						width: 32px;
						background: var(--color);
						-webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960"><path d="M790.5-125Q677-125 558-180.5T338-338Q236-439 180.5-557.75T125-790.69q0-18.81 12.71-31.56Q150.43-835 169.5-835H306q14 0 23.75 9.75t13.75 24.75l26.93 123.64Q372-663.5 369.5-652t-10.23 19.23L261-533q26 44 54.69 81.66Q344.38-413.68 379-380q36.5 38 77.25 69.32Q497-279.35 542-255l95.54-98q9.46-10.5 21.36-14.25 11.9-3.75 23.6-1.75l117.36 25.44Q815-340 825-327.8t10 27.3v131q0 19.07-12.71 31.79Q809.57-125 790.5-125ZM232-585.5l81-82-23.5-110H183q1.5 41.5 13 88.25t36 103.75Zm364 358q40 19 88.17 31 48.16 12 93.33 14v-107l-102-21.5-79.5 83.5Zm-364-358Zm364 358Z"/></svg>');
						-webkit-mask-size: contain;
					}
				}
			}
		}
	}
	@media (min-width: 992px) {
		display: grid;
		justify-content: flex-end;
		grid-template-columns: repeat(3, auto);
		grid-column-gap: 24px;
		& li{
			&:nth-child(3){
				& a{
					font-size: 24px;
					font-family: "lato", sans-serif;
					font-weight: 900;
					pointer-events: none;
				}
			}
		}
	}
}

#siteName{
	& a{
		display: block;
		aspect-ratio: 300 / 71;
		background: url('/common/images/logoType.svg') no-repeat center / contain;
		font-size: 0;
		transition: none;
		@media (max-width: 991.98px) {
			height: 36px;
		}
		@media (min-width: 992px) {
			height: 64px;
		}
	}
	@media (min-width: 992px) {
		justify-self: center;
	}
}

#navButton{
	all: unset;
	box-sizing: border-box;
	display: grid;
	align-content: center;
	justify-items: center;
	grid-gap: 4px;
	width: 56px;
	aspect-ratio: 1;
	background: var(--color-theme);
	color: #fff;
	overflow: hidden;
	pointer-events: all;
	cursor: pointer;
	@media (min-width: 992px) {
		display: none;
	}
	.nav &{
		background: #fff;
		color: var(--color-theme);
	}
	& i{
		width: 50%;
		height: 2px;
		background: currentColor;
		border-radius: 1px;
		animation-duration: 0.75s;
		animation-fill-mode: forwards;
		transition: transform 0.75s;
	}
	&.on{
		& i:nth-of-type(1){
			animation-name: navButton-bar01_on;
		}
		& i:nth-of-type(2){
			animation-name: navButton-bar02_on;
		}
		& i:nth-of-type(3){
			animation-name: navButton-bar03_on;
		}
	}
	&.off{
		& i:nth-of-type(1){
			animation-name: navButton-bar01_off;
		}
		& i:nth-of-type(2){
			animation-name: navButton-bar02_off;
		}
		& i:nth-of-type(3){
			animation-name: navButton-bar03_off;
		}
	}
}
@keyframes navButton-bar01_on{
	0% {
		transform: translateY(0);
		}
	50% {
		transform: translateY(6px) rotate(0);
		}
	100% {
		transform: translateY(6px) rotate(45deg);
		}
	}
@keyframes navButton-bar01_off{
	0% {
		transform: translateY(6px) rotate(45deg);
		}
	50% {
		transform: translateY(6px) rotate(0);
		}
	100% {
		transform: translateY(0);
		}
	}
@keyframes navButton-bar02_on{
	0% {
		transform: scaleX(1);
		}
	50% {
		transform: scaleX(1);
		}
	51% {
		transform: scaleX(0);
		}
	100% {
		transform: scaleX(0);
		}
	}
@keyframes navButton-bar02_off{
	0% {
		transform: scaleX(0);
		}
	49% {
		transform: scaleX(0);
		}
	50% {
		transform: scaleX(1);
		}
	100% {
		transform: scaleX(1);
		}
	}
@keyframes navButton-bar03_on{
	0% {
		transform: translateY(0);
		}
	50% {
		transform: translateY(-6px) rotate(0);
		}
	100% {
		transform: translateY(-6px) rotate(-45deg);
		}
	}
@keyframes navButton-bar03_off{
	0% {
		transform: translateY(-6px) rotate(-45deg);
		}
	50% {
		transform: translateY(-6px) rotate(0);
		}
	100% {
		transform: translateY(0);
		}
	}

#nav{
	display: grid;
	& h2{
		display: none;
	}
	& ul{
		list-style: none;
	}
	& li{
		& a{
			display: block;
		}
	}
	@media (max-width: 991.98px) {
		position: fixed;
		top: 0;
		left: 100%;
		width: min(100%, 480px);
		height: 100%;
		padding: 56px 0;
		background: var(--color-theme);
		overflow-y: auto;
		overscroll-behavior: none;
		transform: translateX(0);
		transition: transform 0.2s ease-out;
		.nav &{
			transform: translateX(-100%);
		}
		& ul{
			display: grid;
			align-content: start;
			grid-gap: 24px 0;
		}
	}
	@media (min-width: 992px) {
		justify-self: center;
		width: var(--wrap);
		& h2+div{
			display: grid;
		}
		& ul{
			align-self: center;
		}
		& a{
			display: grid;
			color: #26221f;
		}
	}
}
#navGroup{
	display: grid;
	& li{
		& a{
			font-size: 18px;
			font-weight: 700;
			color: #fff;
			& span{
				display: block;
				margin-bottom: -2px;
				font-size: 12px;
			}
			&:hover{
				color: #ffe330;
			}
			&.onNav{
				color: #ffe330;
			}
		}
	}
	@media (max-width: 991.98px) {
		margin: auto 24px;
		& li{
			& a{
				position: relative;
				padding-left: 24px;
				line-height: 1.4;
				border-radius: 50px;
				display: grid;
				align-items: center;
				min-height: 48px;
				&:before{
					content: "";
					position: absolute;
					top: 50%;
					left: 0;
					transform: translateY(-50%);
					width: 14px;
					height: 2px;
					background: #fff;
					border-radius: 1px;
				}
			}
		}
	}
	@media (min-width: 992px) {
/*		grid-row: 2;*/
		grid-template-columns: repeat(5, 1fr);
		align-items: center;
		background: var(--color-theme);
		border-bottom-left-radius: 40px;
		border-top-right-radius: 40px;
		min-height: 64px;
		& li{
			position: relative;
			& a{
				line-height: 1.2;
				text-align: center;
			}
		}
		& li+li{
			&:before{
				content: "";
				position: absolute;
				top: 50%;
				left: -16px;
				transform: translateY(-50%) rotate(290deg);
				width: 32px;
				height: 2px;
				background: #fff;
				border-radius: 2px;
			}
		}
	}
}

#navInfo{
	display: grid;
	& li{
		& a{
			display: grid;
			grid-template-columns: 32px auto;
			align-items: center;
			grid-gap: 16px;
			padding: 0 32px 0 8px;
			min-height: 48px;
			font-weight: 700;
			background: #fff;
			border: 1px solid #ddd;
			border-radius: 50px;
			&:before{
				all: unset;
				content: "";
				aspect-ratio: 1;
				width: 32px;
				border-radius: 100%;
			}
			&[href*="aboutus"]{
				&:before{
					background: var(--color-bl)
						url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960" fill="%23fff"><path d="M124.5-124.5V-182H204v-596q0-22.97 17.27-40.23 17.26-17.27 40.23-17.27h437q22.97 0 40.23 17.27Q756-800.97 756-778v596h79.5v57.5h-711Zm137-57.5h437v-596h-437v596Zm131.45-267.5q14.5 0 24.03-9.47 9.52-9.47 9.52-23.98 0-14.5-9.47-24.03-9.47-9.52-23.98-9.52-14.5 0-24.03 9.47-9.52 9.47-9.52 23.98 0 14.5 9.47 24.03 9.47 9.52 23.98 9.52ZM261.5-778v596-596Z" /></svg>') no-repeat center/ 75%;
				}
			}
			&[href*="recruit"]{
				&:before{
					background: var(--color-bl)
						url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960" fill="%23fff"><path d="M361-224ZM45.5-166.5v-91q0-34.62 17.46-62.39 17.46-27.77 49.32-41.56Q185-393 242.5-407q57.5-14 118.15-14 41.35 0 78.6 6 37.25 6 79.75 19.5-8.44 11.46-14.66 23.97-6.22 12.5-11.34 25.53-34.48-10.44-65.5-13.97-31.02-3.53-66.5-3.53-56.33 0-105.16 10.75Q207-342 135-310q-14 6.5-23 21.5t-9 31v33.59h382.94q3.34 15.23 9.7 29.82Q502-179.5 510-166.5H45.5Zm315.5-314q-65.24 0-106.12-40.88Q214-562.26 214-627.5q0-65.24 40.88-106.12Q295.76-774.5 361-774.5q65.24 0 106.12 40.88Q508-692.74 508-627.5q0 65.24-40.88 106.12Q426.24-480.5 361-480.5Zm351-147.31q0 64.84-40.88 105.82Q630.24-481 565-481q-10.5 0-23.18-1.34-12.68-1.35-23.32-5.21 24.02-24.27 36.26-59.87Q567-583.02 567-627.53q0-44.5-12.25-78.45T518.5-768q10-2.81 23-4.66 13-1.84 23.5-1.84 65.24 0 106.12 41.03Q712-692.45 712-627.81ZM360.94-538q39.06 0 64.31-25.19t25.25-64.25q0-39.06-25.19-64.31T361.06-717q-39.06 0-64.31 25.19t-25.25 64.25q0 39.06 25.19 64.31T360.94-538Zm.06-89.5Zm325.03 445q38.97 0 65.22-27T777.5-274q0-38.5-26.48-64.75T686.23-365q-38.73 0-64.98 26.1Q595-312.8 595-274.22q0 39.22 26.03 65.47t65 26.25Zm.47 57.5q-61.46 0-105.23-43.78-43.77-43.77-43.77-105.24 0-61.98 43.78-105.23 43.77-43.25 105.24-43.25 61.98 0 105.23 43.27Q835-335.97 835-274q0 24.04-6.75 44.77-6.75 20.73-18.75 38.66L910.5-90l-35 35.5-101-100q-19.09 14.5-40.89 22-21.81 7.5-47.11 7.5Z" /></svg>') no-repeat center/ 75%;
				}
			}
			&:hover{
				border: 1px solid var(--color-bl);
			}
		}
		&:last-child a{
			background: var(--color-yl);
			border: 1px solid var(--color-yl);
			&:before{
				all: unset;
				content: "";
				aspect-ratio: 1;
				width: 32px;
				background: #fff
					url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960"><path d="M790.5-125Q677-125 558-180.5T338-338Q236-439 180.5-557.75T125-790.69q0-18.81 12.71-31.56Q150.43-835 169.5-835H306q14 0 23.75 9.75t13.75 24.75l26.93 123.64Q372-663.5 369.5-652t-10.23 19.23L261-533q26 44 54.69 81.66Q344.38-413.68 379-380q36.5 38 77.25 69.32Q497-279.35 542-255l95.54-98q9.46-10.5 21.36-14.25 11.9-3.75 23.6-1.75l117.36 25.44Q815-340 825-327.8t10 27.3v131q0 19.07-12.71 31.79Q809.57-125 790.5-125ZM232-585.5l81-82-23.5-110H183q1.5 41.5 13 88.25t36 103.75Zm364 358q40 19 88.17 31 48.16 12 93.33 14v-107l-102-21.5-79.5 83.5Zm-364-358Zm364 358Z" /></svg>') no-repeat center/ 75%;
				border-radius: 100%;
			}
		}
	}
	@media (max-width: 991.98px) {
		margin: 48px 24px;
		& li {
			&:last-child {
				display: none;
			}
		}
	}
	@media (min-width: 992px) {
		display: none;
	}
}

#main{
	& .subject{
		margin: 0;
		padding: 0;
		color: var(--color-theme);
		font-family: "zen-maru-gothic", sans-serif;
		font-size: clamp(32px, calc(48 / 1200 * 100vw), 48px);
		font-weight: 700;
		line-height: 1.4;
		text-align: center;
	}
	&:has(> article:first-child > header > figure){
		overflow: hidden;
		@media (min-width: 992px) {
			grid-column: 1;
			grid-row: 1 / 3;
		}
		&>article:first-child{
			margin: auto;
			& header{
				display: grid;
				grid-template-columns: 1fr var(--wrap) 1fr;
				padding-bottom: clamp(32px, calc(72 / 1200 * 100vw), 72px);
				&>.subject{
					grid-column: 2;
					grid-row: 1;
					justify-self: start;
					position: relative;
					display: grid;
					align-items: center;
					margin-top: clamp(130px, calc(500 / 1200 * 100vw), 500px);
					min-height: 80px;
					letter-spacing: 0.05em;
					text-align: left;
					color: #fff;
					z-index: 1;
					@media (max-width: 991.98px) {
						padding: 24px 32px 24px 16px;
					}
					@media (min-width: 992px) {
						padding: 48px clamp(48px, calc(104 / 1200 * 100vw), 104px) 48px 32px;
					}
					& span{
						font-size: clamp(16px, calc(24 / 1200 * 100vw), 24px);
						font-weight: 500;
					}
					&:before{
						content: "";
						position: absolute;
						top: 0;
						right: 0;
						width: 100vw;
						height: 100%;
						background: var(--color-theme);
						border-top-right-radius: clamp(40px, calc(80 / 1200 * 100vw), 80px);
						z-index: -1;
					}
				}
				&>figure{
					grid-column: 1 / 4;
					grid-row: 1;
					& img{
						width: 100%;
						height: clamp(150px, calc(640 / 1200 * 100vw), 640px);
						object-fit: cover;
					}
				}
				&>div{
					grid-column: 2;
					margin-top: clamp(32px, calc(56 / 1200 * 100vw), 56px);
					&>*+*{
						margin-top: clamp(16px, calc(32 / 1200 * 100vw), 32px);
					}
				}
			}
		}
	}
	&:not(:has(> article:first-child > header > figure)){
		& .subject{
			display: grid;
			justify-items: center;
			grid-row-gap: 8px;
			&:after{
				content: "";
				width: 24px;
				height: 4px;
				background: var(--color-theme);
				border-radius: 2px;
			}
		}
	}
}

#greeting{
	display: grid;
	grid-template-columns: minmax(110px, 30%) 1fr;
	grid-template-rows: auto 1fr auto; 
	grid-gap: clamp(24px, calc(32 / 1200 * 100vw), 32px) clamp(16px, calc(72 / 1200 * 100vw), 72px);
	margin: auto;
	padding: clamp(32px, calc(72 / 1200 * 100vw), 72px) clamp(16px, calc(48 / 1200 * 100vw), 48px);
	background: var(--color-bg);
	border-bottom-left-radius: clamp(40px, calc(80 / 1200 * 100vw), 80px);
	border-top-right-radius: clamp(40px, calc(80 / 1200 * 100vw), 80px);
	&>*{
		grid-column: 2;
	}
	.headline{
		all: unset;
		grid-column: 1 / 3;
		display: grid;
		font-family: "zen-maru-gothic", sans-serif;
		font-size: clamp(32px, calc(40 / 1200 * 100vw), 40px);
		font-weight: 700;
		line-height: 1.4;
		text-align: center;
		&:before{
			all: unset;
			content: attr(data-title);
			font-size: clamp(16px, calc(24 / 1200 * 100vw), 24px);
			color: var(--color-theme);
		}
	}
	& figure{
		grid-column: 1;
		grid-row: 2;
		overflow: hidden;
		& img{
			aspect-ratio: 4 / 6;
			width: 100%;
			object-fit: cover;
		}
	}
	& p{
		font-weight: 500;
		&.name{
			font-size: clamp(12px, calc(16 / 1200 * 100vw), 16px);
			font-weight: 400;
			text-align: right;
		}
	}
	&>div:last-of-type{
		grid-column: 1 / 3;
		grid-row: 3;
		justify-self: center;
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-column-gap: clamp(16px, calc(24 / 1200 * 100vw), 24px);
	}
	& a{
		display: grid;
		grid-template-columns: 32px auto;
		align-items: center;
		grid-gap: 16px;
		padding: 0 24px 0 16px;
		min-height: 56px;
		font-weight: 700;
		background: #fff;
		border: 1px solid #ddd;
		border-radius: 50px;
		text-decoration: none;
		&:before{
			content: "";
			aspect-ratio: 1;
			width: 32px;
			border-radius: 100%;
		}
		&[href*="aboutus"]{
			&:before{
				background: var(--color-bl)
					url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960" fill="%23fff"><path d="M124.5-124.5V-182H204v-596q0-22.97 17.27-40.23 17.26-17.27 40.23-17.27h437q22.97 0 40.23 17.27Q756-800.97 756-778v596h79.5v57.5h-711Zm137-57.5h437v-596h-437v596Zm131.45-267.5q14.5 0 24.03-9.47 9.52-9.47 9.52-23.98 0-14.5-9.47-24.03-9.47-9.52-23.98-9.52-14.5 0-24.03 9.47-9.52 9.47-9.52 23.98 0 14.5 9.47 24.03 9.47 9.52 23.98 9.52ZM261.5-778v596-596Z" /></svg>') no-repeat center/ 75%;
			}
		}
		&[href*="recruit"]{
			&:before{
				background: var(--color-bl)
					url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960" fill="%23fff"><path d="M361-224ZM45.5-166.5v-91q0-34.62 17.46-62.39 17.46-27.77 49.32-41.56Q185-393 242.5-407q57.5-14 118.15-14 41.35 0 78.6 6 37.25 6 79.75 19.5-8.44 11.46-14.66 23.97-6.22 12.5-11.34 25.53-34.48-10.44-65.5-13.97-31.02-3.53-66.5-3.53-56.33 0-105.16 10.75Q207-342 135-310q-14 6.5-23 21.5t-9 31v33.59h382.94q3.34 15.23 9.7 29.82Q502-179.5 510-166.5H45.5Zm315.5-314q-65.24 0-106.12-40.88Q214-562.26 214-627.5q0-65.24 40.88-106.12Q295.76-774.5 361-774.5q65.24 0 106.12 40.88Q508-692.74 508-627.5q0 65.24-40.88 106.12Q426.24-480.5 361-480.5Zm351-147.31q0 64.84-40.88 105.82Q630.24-481 565-481q-10.5 0-23.18-1.34-12.68-1.35-23.32-5.21 24.02-24.27 36.26-59.87Q567-583.02 567-627.53q0-44.5-12.25-78.45T518.5-768q10-2.81 23-4.66 13-1.84 23.5-1.84 65.24 0 106.12 41.03Q712-692.45 712-627.81ZM360.94-538q39.06 0 64.31-25.19t25.25-64.25q0-39.06-25.19-64.31T361.06-717q-39.06 0-64.31 25.19t-25.25 64.25q0 39.06 25.19 64.31T360.94-538Zm.06-89.5Zm325.03 445q38.97 0 65.22-27T777.5-274q0-38.5-26.48-64.75T686.23-365q-38.73 0-64.98 26.1Q595-312.8 595-274.22q0 39.22 26.03 65.47t65 26.25Zm.47 57.5q-61.46 0-105.23-43.78-43.77-43.77-43.77-105.24 0-61.98 43.78-105.23 43.77-43.25 105.24-43.25 61.98 0 105.23 43.27Q835-335.97 835-274q0 24.04-6.75 44.77-6.75 20.73-18.75 38.66L910.5-90l-35 35.5-101-100q-19.09 14.5-40.89 22-21.81 7.5-47.11 7.5Z" /></svg>') no-repeat center/ 75%;
			}
		}
		&:hover{
		  border: 1px solid var(--color-bl);
		}
	}
	@media (min-width: 992px) {
		grid-template-columns: 1.6fr 1fr;
		padding: 0;
		width: var(--wrap);
		&>*{
			grid-column: 1;
			padding-left: clamp(24px, calc(72 / 1200 * 100vw), 72px);
		}
		.headline{
			grid-column: 1;
			padding-left: clamp(24px, calc(72 / 1200 * 100vw), 72px);
			padding-top: clamp(24px, calc(72 / 1200 * 100vw), 72px);
			text-align: left;
		}
		& figure{
			grid-column: 2;
			grid-row: 1 / 4;
			padding: 0;
			border-top-right-radius: clamp(40px, calc(80 / 1200 * 100vw), 80px);
			& img{
				height: 100%;
			}
		}
		& p{
			font-size: clamp(18px, calc(24 / 1200 * 100vw), 24px);
			font-weight: 500;
			line-height: 1.8;
		}
		&>div:last-of-type{
			grid-column: 1;
			justify-self: start;
			padding-bottom: clamp(24px, calc(72 / 1200 * 100vw), 72px);
		}
		& a{
			&:hover{
				color: inherit;
			}
		}
	}
}

#pagePath{
	padding: 16px 0;
	overflow-y: auto;
	& ul{
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		grid-gap: 4px 16px;
		width: var(--wrap);
		margin: auto;
		color: var(--color-theme);
		font-size: 14px;
	}
	& li{
		white-space: nowrap;
		&:last-child{
			text-transform: uppercase;
		}
		&:has(a){
			display: contents;
			&:after{
				content: "";
				aspect-ratio: 1;
				width: 10px;
				-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14" style="fill: none; stroke: black; stroke-miterlimit: 10; stroke-width: 2px;"><polyline points="4 1 10 7 4 13"/></svg>') center no-repeat;
				-webkit-mask-size: contain;
				background: currentColor;
			}
		}
	}
	& a{
		display: block;
		white-space: nowrap;
/*		text-overflow: ellipsis;
		overflow: hidden;*/
		max-width: calc(100% - 26px);
		&:hover{
			text-decoration: underline;
		}
	}
}

#footer{
	background: var(--color-bg);
}

#fInfo{
	display: grid;
	margin: clamp(32px, calc(56 / 1200 * 100vw), 56px) auto;
	width: var(--wrap);
	@media (min-width: 992px) {
		grid-template-columns: auto 1fr;
	}
	& h3{
		padding: clamp(24px, calc(48 / 1200 * 100vw), 48px);
		font-size: clamp(20px, calc(22 / 1200 * 100vw), 22px);
		font-family: "zen-maru-gothic", sans-serif;
		font-weight: 700;
		text-align: center;
		line-height: 1.4;
		color: #fff;
		background: var(--color-theme);
		@media (max-width: 991.98px) {
			padding: 16px;
			line-height: 1.4;
			border-top-right-radius: 40px;
		}
		@media (min-width: 992px) {
			border-bottom-left-radius: 40px;
		}
	}
	& h3+div{
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
		justify-items: center;
		grid-gap: clamp(24px, calc(48 / 1200 * 100vw), 48px);
		padding: clamp(24px, calc(40 / 1200 * 100vw), 40px);
		background: #fff;
		@media (max-width: 991.98px) {
			border-bottom-left-radius: 40px;
		}
		@media (min-width: 992px) {
			border-top-right-radius: 40px;
		}
	}
	& dl{
		display: grid;
		grid-template-rows: auto 1fr auto;
		grid-gap: clamp(8px, calc(16 / 1200 * 100vw), 16px);
		& dt{
			font-size: clamp(18px, calc(24 / 1200 * 100vw), 24px);
			font-family: "zen-maru-gothic", sans-serif;
			font-weight: 700;
			line-height: 1.4;
		}
		& dt+dd{
			& p{
				font-size: 14px;
				color: #967842;
			}
			& p+ul{
				margin-top: 8px;
			}
			& li{
				font-size: 16px;
			}
		}
		& dd+dd{
			@media (max-width: 991.98px) {
				padding-top: 12px;
			}
			& a{
				display: grid;
				grid-template-columns: 32px auto;
				align-items: center;
				grid-gap: 16px;
				margin-bottom: 8px;
				padding: 0 24px 0 8px;
				min-width: 250px;
				min-height: 48px;
				font-size: 24px;
				font-family: "lato", sans-serif;
				font-weight: 900;
				text-decoration: none;
				border-radius: 50px;
				background: var(--color-yl);
				border: 1px solid var(--color-yl);
				&:before {
					all: unset;
					content: "";
					aspect-ratio: 1;
					width: 32px;
					background: #fff
						url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960"><path d="M790.5-125Q677-125 558-180.5T338-338Q236-439 180.5-557.75T125-790.69q0-18.81 12.71-31.56Q150.43-835 169.5-835H306q14 0 23.75 9.75t13.75 24.75l26.93 123.64Q372-663.5 369.5-652t-10.23 19.23L261-533q26 44 54.69 81.66Q344.38-413.68 379-380q36.5 38 77.25 69.32Q497-279.35 542-255l95.54-98q9.46-10.5 21.36-14.25 11.9-3.75 23.6-1.75l117.36 25.44Q815-340 825-327.8t10 27.3v131q0 19.07-12.71 31.79Q809.57-125 790.5-125ZM232-585.5l81-82-23.5-110H183q1.5 41.5 13 88.25t36 103.75Zm364 358q40 19 88.17 31 48.16 12 93.33 14v-107l-102-21.5-79.5 83.5Zm-364-358Zm364 358Z" /></svg>') no-repeat center/ 75%;
					border-radius: 100%;
				}
				@media (min-width: 992px) {
					pointer-events: none;
				}
			}
		}
	}
}

#fNav{
	display: grid;
	align-items: flex-start;
	margin: clamp(32px, calc(56 / 1200 * 100vw), 56px) auto;
	width: var(--wrap);
	@media (max-width: 991.98px) {
		& dl{
			&:nth-child(-n+2){
				display: none;
			}
			&:last-child{
				grid-template-columns: repeat(2, auto);
				grid-row-gap: 16px;
			}
		}
	}
	@media (min-width: 992px) {
		grid-template-columns: repeat(3, auto);
		max-width: 900px;
	}
	& dl{
		display: grid;
		grid-row-gap: 8px;
		&:last-child{
			& dt{
				display: none;
			}
		}
		& dt{
			font-weight: 700;
		}
	}
	& li{
		list-style: none;
	}
	& a{
		position: relative;
		display: grid;
		grid-template-columns: 12px auto;
		align-items: center;
		grid-gap: 4px;
		font-size: clamp(14px, calc(16 / 1200 * 100vw), 16px);
		& span {
			margin-bottom: -6px;
			font-size: 12px;
		}
		&:before{
			grid-column: 1;
			grid-row: 1 / 3;
			content: "";
			width: 8px;
			height: 2px;
			background: var(--color-theme);
			border-radius: 1px;
			transform: translateY(-2px);
		}
		&:hover{
			color: var(--color-theme);
			text-decoration: underline;
		}
	}
	& a[target="_blank"]{
		&:before{
			width: 12px;
			height: 12px;
			aspect-ratio: 1;
			background: var(--color-theme);
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960"><path d="M150.5-317q-37.72 0-64.61-26.16T59-408.5V-809q0-39.18 26.89-65.84 26.89-26.66 64.61-26.66H551q39.18 0 65.84 26.66Q643.5-848.18 643.5-809v65.25q0 16.66-12.46 29.2Q618.57-702 601.32-702q-17.82 0-30.07-12.55Q559-727.09 559-743.75V-817H143.5v415.5h72.75q17.08 0 29.92 12.71Q259-376.07 259-358.54 259-341 246.17-329q-12.84 12-29.92 12H150.5ZM408-60q-38.77 0-65.13-26.37-26.37-26.36-26.37-65.13V-552q0-39.18 26.37-65.84Q369.23-644.5 408-644.5h400.5q39.18 0 65.84 26.66Q901-591.18 901-552v400.5q0 38.77-26.66 65.13Q847.68-60 808.5-60H408Zm-7-84.5h415.5V-560H401v415.5ZM608.5-352Z"/></svg>') center no-repeat;
			-webkit-mask-size: contain;
			transform: rotate(-90deg);
		}
	}
}

#copyright{
	display: grid;
	grid-template-columns: auto var(--wrap) auto;
	place-items: center;
	height: 48px;
	box-sizing: content-box;
	& p{
		grid-column: 2;
		margin: 0;
		padding: 0;
		color: var(--color);
		font-size: clamp(12px, calc(14 / 1200 * 100vw), 14px);
		line-height: 1.2;
		text-align: center;
	}
}

#pageTop{
	position: sticky;
	bottom: 0;
	width: 100%;
	height: 48px;
	font-size: 0;
	cursor: pointer;
	opacity: 0;
	transition: opacity 0.2s ease-out 1s;
	z-index: 100;
	.done:not(.scrollTop) &{
		opacity: 1;
	}
	&:before,
	&:after{
		content: "";
		position: absolute;
		right: 0;
		bottom: 0;
		aspect-ratio: 1;
		width: 100%;
		height: 48px;
		transition-property: color, text-decoration, background, background-color, background-size, border, border-color, box-shadow, filter, opacity;
		transition-duration: 0.2s;
		transition-timing-function: ease-out;
	}
	&:before{
		background: var(--color-theme);
	}
	&:after{
		-webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M2.582 13.891c-0.272 0.268-0.709 0.268-0.979 0s-0.271-0.701 0-0.969l7.908-7.83c0.27-0.268 0.707-0.268 0.979 0l7.908 7.83c0.27 0.268 0.27 0.701 0 0.969s-0.709 0.268-0.978 0l-7.42-7.141-7.418 7.141z" /></svg>');
		-webkit-mask-repeat: no-repeat;
		-webkit-mask-position: center;
		-webkit-mask-size: 32px;
		background: #fff;
	}
	@media (min-width: 576px) {
		&:hover:before{
			background: var(--color-hover);
		}
	}
}

#pagenation{
	margin: 16px 0;
	overflow: hidden;
	& ul,
	& ol{
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		grid-gap: 8px;
		width: var(--wrap);
		margin: auto;
		list-style: none;
	}
	& ul{
		& li{
			display: contents;
			&:nth-child(n+2):before{
				content: "｜";
			}
		}
	}
	& a{
		display: grid;
		text-decoration: none;
		&:not([rel]){
			aspect-ratio: 1;
			width: 48px;
			place-items: center;
			background: var(--color-theme);
			color: #fff;
		}
		&[rel]{
			align-items: center;
			grid-gap: 4px;
			color: inherit;
			&:before{
				aspect-ratio: 1;
				-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M9.163 4.516c0.418 0.408 4.502 4.695 4.502 4.695 0.223 0.219 0.335 0.504 0.335 0.789s-0.112 0.57-0.335 0.787c0 0-4.084 4.289-4.502 4.695-0.418 0.408-1.17 0.436-1.615 0-0.446-0.434-0.481-1.041 0-1.574l3.747-3.908-3.747-3.908c-0.481-0.533-0.446-1.141 0-1.576s1.197-0.409 1.615 0z" /></svg>') no-repeat center / contain;
				background: currentColor;
			}
		}
		&[rel="prev"]{
			grid-template-columns: 16px auto;
			&:before{
				content: "";
				transform: scale(-1, 1);
			}
		}
		&[rel="next"]{
			grid-template-columns: auto 16px;
			&:before{
				content: "";
				order: 1;
			}
		}
		&.lsc-current-page{
			background: #ccc;
			color: #fff;
			pointer-events: none;
		}
	}
}

#topicsList{
	& p{
		padding: 10% 0;
		text-align: center;
		opacity: 0.5;
		}
	& dl{
		display: grid;
		grid-gap: 8px 16px;
		padding-bottom: clamp(32px, calc(48 / 1200 * 100vw), 48px);
		border-bottom: 1px dotted #ccc;
		@media (min-width: 992px) {
		grid-template-columns: min(30%, 10em) auto;
		}
	}
	& dl+dl{
		margin-top: clamp(32px, calc(48 / 1200 * 100vw), 48px);
	}
	& dt{
		display: grid;
		grid-template-columns: 2px 1fr;
		grid-column-gap: 16px;
		line-height: 1.4;
		&:before{
			content: "";
			width: 100%;
			height: 100%;
			background: var(--color-theme);
			}
		@media (min-width: 992px) {
			grid-column: 2;
		}
	}
	& dt+dd{
		grid-row: 1;
		@media (min-width: 992px) {
			grid-column: 1;
		}
	}
	& dd{
		& time{
			color: #666;
		}
	}
}

.wrap{
	width: var(--wrap);
	margin: 0 auto;
	}
/*
.subject{
	margin: 0;
	padding: 0;
	color: var(--color-theme);
	font-weight: bold;
	font-size: clamp(24px, 4.8vw, 32px);
	text-align: center;
	}
*/
.headline{
	display: grid;
	grid-template-columns: 24px 1fr;
	grid-column-gap: clamp(8px, calc(16 / 1200 * 100vw), 16px);
	font-size: clamp(28px, calc(40 / 1200 * 100vw), 40px);
	font-family: "zen-maru-gothic", sans-serif;
	font-weight: 700;
	line-height: 1.4;
	color: var(--color-theme);
	@media (min-width: 576px) {
		margin-bottom: -16px;
	}
	&:before{
		grid-row: 1 / 3;
		content: "";
		aspect-ratio: 1;
		width: clamp(20px, calc(24 / 1200 * 100vw), 24px);
		background: var(--color-theme);
		border-bottom-left-radius: 8px;
		border-top-right-radius: 8px;
		transform: translateY(clamp(10px, calc(18 / 1200 * 100vw), 18px));
	}
}

.title{
	margin: 0;
	padding: 0;
	font-family: "zen-maru-gothic", sans-serif;
	font-size: clamp(24px, calc(32 / 1200 * 100vw), 32px);
	font-weight: 700;
	line-height: 1.4;
	color: var(--color);
	letter-spacing: 0.05em;
}

.subTitle{
	padding: 0 0 16px;
	font-family: "zen-maru-gothic", sans-serif;
	font-size: clamp(20px, calc(24 / 1200 * 100vw), 24px);
	font-weight: 700;
	line-height: 1.4;
	color: var(--color);
	border-bottom: 1px solid var(--color);
}

.buttonSet{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	grid-gap: 16px;
	@media (max-width: 575.98px) {
		flex-direction: column;
		padding: 0 10%;
	}
}

.button{
	display: grid;
	grid-template-columns: 1fr 32px;
	align-items: center;
	grid-gap: 8px;
	min-height: 56px;
	margin: auto;
	padding: 8px 16px 8px 48px;
	width: min(100%, 340px);
	background: var(--color-theme);
	border: none;
	color: #fff;
	font-size:  18px;
	font-weight: 700;
	text-decoration: none;
	text-align: center;
	line-height: 1.5;
	border-radius: 50px;
	&:before{
		content: "";
		order: 1;
		aspect-ratio: 1;
		background: currentColor;
		-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960"><path d="M693.39-458.42H205.35q-9.8 0-16.04-5.89-6.23-5.9-6.23-15.7 0-9.8 6.23-16.03 6.24-6.23 16.04-6.23h488.04L464.62-730.65q-5.81-6.27-6.35-15.13-.54-8.87 6.54-15.78 6.38-6.55 15.19-6.55 8.81 0 15.88 6.38l261.7 261.7q4.03 4.72 6.48 9.33 2.44 4.61 2.44 10.75t-2.44 10.7q-2.45 4.56-6.48 8.59l-261.7 261.7q-6.69 6.69-15.61 6.88-8.92.19-15.46-6.88-7.08-6.54-7.08-15.27t7.08-14.92l228.58-229.27Z"/></svg>') center no-repeat;
		-webkit-mask-size: contain;
		}
	&:hover{
		background: var(--color-hover);
		color: #fff;
		}
	}

.list{
	display: grid;
	grid-gap: 8px;
	list-style: none;
	line-height: 1.5;
	}
	.list:where(.point, .count){}
		.list:where(.point,.count) > li{
			position: relative;
			padding-left: 1em;
			}
			.list:where(.point,.count) > li:before{
				position: absolute;
				top: 0;
				left: 0;
				}
	.list.point{}
		.list.point > li{}
			.list.point > li:before{
				content: "●";
				color: var(--color-theme);
				transform: scale(0.4);
				}
	.list.notes{}
		.list.notes > li{
			display: block;
			grid-column: 1 / 3;
			padding-left: 16px;
			text-indent: -16px;
			}
	.list.count{
		counter-reset: count;
		grid-column-gap: 0;
		}
		.list.count > li{
			padding-left: 1em;
			}
			.list.count > li:before{
				counter-increment: count;
				content: counter(count)".";
				}
			.list.count:has(li:nth-child(10)) > li{
				padding-left: 1.5em;
				}
				.list.count:has(li:nth-child(10)) > li:nth-child(-n+9):before{
					content: "0"counter(count)".";
					}
		.list.count .list.count{}
			.list.count .list.count > li{}
				.list.count .list.count > li:before{
					content: "（"counter(count)"）";
					}

.table{
	& :where(th, td, dt, dd){
		padding: clamp(8px, calc(16 / 1200 * 100vw), 16px);
		line-height: 1.6;
		}
	& :where(th,td){
		border: 1px solid #ccc;
		vertical-align: middle;
		}
	&:is(table){
		width: 100%;
		border-collapse: collapse;
		}
	& thead{
		background: rgba(0, 104, 182, 0.1);
		}
	& th{
		background: rgba(0, 0, 0, 0.05);
		}
	&>dt{
		font-weight: 500;
		background: rgba(var(--color-bg-rgb), 0.5);
		border-radius: 6px;
		}
	@media (max-width: 575.98px) {
		&>dd+dt{
			margin-top: 1px;
		}
		&>dd{
			margin-bottom: 8px;
		}
	}
	@media (min-width: 576px) {
		&:is(dl){
			display: grid;
			grid-template-columns: clamp(132px, 30%, 20em) auto;
			grid-gap: 4px 0;
		}
		&>dt{
			border-top-right-radius: 0;
			border-bottom-right-radius: 0;
			}
		&>dd{
			border-bottom: 1px dotted var(--color-border);
		}
	}
}

.googlemap{
	& iframe{
		aspect-ratio: 3 / 2;
		width: 100%;
		height: auto;
	}
}

.youtube{
	& iframe{
		aspect-ratio: 16 / 9;
		width: 100%;
		height: auto;
	}
}


.animation{
	opacity: 0;
	transition: .6s ease;
	&.fadeInUp{
		opacity: 0;
		transform: translateY(50px);
	}
	&.fadeInLeft{
		opacity: 0;
		transform: translateX(-40px);
	}
	&.fadeInRight{
		opacity: 0;
		transform: translateX(40px);
	}
	&.done{
		opacity: 1;
		transform: translate(0);
	}
}



