@charset "utf-8";

/* ==========================================================================
   1. Modern Reset
   ========================================================================== */

*,
*::before,
*::after {box-sizing: border-box;margin: 0;padding: 0}
html {
	font-size: calc(62.5% + 4 * (100vw - 375px) / 150);-webkit-text-size-adjust: 100%;
}
body {
	font-family: "Zen Kaku Gothic New", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Noto Sans JP", sans-serif;
	font-size: 1.8rem;line-height: 1.8;color: var(--color-text-black);
	letter-spacing: 0;
	font-feature-settings: "pkna" 1;
	font-kerning: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	background: var(--color-background-yellow);
}
ul,
ol {list-style: none}
a {color: inherit;text-decoration: none}
img {max-width: 100%;height: auto;vertical-align: bottom}
table {border-collapse: collapse}
::selection {
	background: #A0CCD1;
	color: #fff;
}

/* ==========================================================================
   2. Layout
   ========================================================================== */
:root {
	--color-primary: #E9A80A;
	--color-secondary: #0C8246;
	--color-tertiary: #E9D7C4;
	--color-gray: #6b7280;
	--color-accent: #C1D9E6;
	--color-gray-400: #D3C39E;
	--color-gray-200: #F7F0E0;
	--color-gray-100: #F6F3F0;
	--color-text-black: #120c05;
	--color-background-yellow: #FCF7F1;
	--color-background-white: #fff;
}

.wrap {
	width: 100%;
	max-width: 1300px;
	margin: 0 auto;
	padding: 0 20px;
}
main {
	width: 100%;overflow: clip;
	display: block;padding: 130px 0;position: relative;
}
main section {
	padding: 100px 0;
}
/* -- Site Parts -- */
.btn {text-align: left;}
.btn a {
	display: inline-block;
}
.btn a span {
	display: block;padding: 0 38px 0 0;position: relative;
	font-weight: 500;
}
.btn a span::after {
	content: "";width: 26px;height: 26px;position: absolute;top: calc(50% - 11px);right: 0;
	border-radius: 50%;transition: right .3s;pointer-events: none;
	background: var(--color-primary) url(../images/icon/arrow00.svg) no-repeat center / 45%;
}
.btn a:hover span::after {
	right: 4px;
}
.more {text-align: center;margin: 25px 0;}
.more a {
	display: inline-block;
}
.more a span {
	display: block;padding: 0 38px 0 0;position: relative;
	font-weight: 500;
}
.more a span::after {
	content: "";width: 26px;height: 26px;position: absolute;top: calc(50% - 13px);right: 0;
	border-radius: 50%;
	background: var(--color-primary) url(../images/icon/arrow00.svg) no-repeat center / 45%;
}

#scroll-top-btn {
	position: fixed;bottom: 40px;left: 20px;
	width: 45px;height: 45px;border-radius: 10px;
	background: var(--color-background-white) url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cpath%20d%3D%22M.616%209.522a2.234%202.234%200%201%200%203.237%203.08l3.588-3.77v8.933a2.234%202.234%200%201%200%204.469%200V8.833l3.587%203.77a2.233%202.233%200%201%200%203.238-3.08L9.675%200z%22%2F%3E%3C%2Fsvg%3E');
	background-size: 40%;background-repeat: no-repeat;background-position: center;
	border: solid 1px var(--color-text-black);cursor: pointer;
	line-height: 1;
	opacity: 0;visibility: hidden;
	transform: translateY(8px);
	transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease, background-size .1s ease;
	z-index: 9999;
}
#scroll-top-btn.is-visible {
	opacity: 1;visibility: visible;
	transform: translateY(0);
}
#scroll-top-btn:hover {
	background-size: 47%;background-color: #eaeaea;
}

h2 {
	color: var(--color-secondary);font-size: 4.8rem;
	font-weight: 900;line-height: 140%;margin: 0 0 24px;position: relative;
}
main.top h2 {
	font-size: 2.6rem;
}
main.post-13 section.company .wrap ,
main.jigyosho section#post-8 .wrap ,
main.top .wrap {position: relative;}
main.top .wrap::before ,
main.top .wrap::after ,
main.jigyosho section#post-8 .wrap::before ,
main.jigyosho section#post-8 .wrap::after ,
main.post-13 section.company .wrap::before ,
main.post-13 section.company .wrap::after {
	content: "";width: 100px;height: 77px;position: absolute;top: 880px;right: 50px;
	background: url(../images/icon/site_layer_1.svg) no-repeat center / 100%;z-index: 1;
}
main.jigyosho section#post-8 .wrap::after ,
main.post-13 section.company .wrap::after ,
main.top .wrap::after {
	width: 121px;height: 129px;top: 800px;right: -50px;
	background: url(../images/icon/site_layer_2.svg) no-repeat center / 100%;z-index: -1;
}
main.jigyosho section#post-8 .wrap::before {
	top: 100px;right: auto;left: -90px;
}
main.jigyosho section#post-8 .wrap::after {
	top: -90px;right: auto;left: 88px;z-index: 5;
}
main.post-13 section.company .wrap::before {
	width: 159px;height: 123px;
	top: 70px;right: -55px;z-index: -1;
}
main.post-13 section.company .wrap::after {
	width: 182px;height: 194px;
	top: -90px;right: auto;left: -50px;z-index: -1;
}
h2.decoration::before {
	content: "";width: 96px;height: 98px;position: absolute;top: calc(50% - 50px);left: -80px;
	background: url(../images/icon/mv01.svg) no-repeat center / 100%;transform: rotate(-72deg);
}

/* -- Site Header -- */
.site-header {
	padding: 0 20px;width: 100%;
	position: fixed;z-index: 1000;
	display: flex;align-items: center;justify-content: space-between;
}
.site-header .site-title {
	font-size: 1.1rem;font-weight: 700;line-height: 1.2;
	margin: 17px 0;
}
.site-header .site-title span {display: block}
.site-header .site-title span.hide {opacity: 0;display: none}
.site-header input {display: none}
.site-header label {
	position: fixed;top: 20px;right: 20px;
	display: block;width: 50px;height: 50px;z-index: 1100;cursor: pointer;
}
.site-header label svg .cl_pr {fill: #F0590B}
.site-header label svg .cl_wh {fill: var(--color-background-white)}
.site-title {
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.2;
	margin: 0;
}
.site-title a {
	color: #111
}
.main-navigation {
	position: fixed;top: 20px;right: 20px;z-index: 1050;
	transform-origin: calc(100% - 25px) 25px;
	transform: scale(0);
	opacity: 0;
	transition: transform 0.3s ease, opacity 0.1s ease;
}

header label.menu svg rect:nth-of-type(1) {transform: translateX(0) translateY(0)}
header label.menu svg rect:nth-of-type(2) {transform: translateX(0) translateY(0)}
header label.menu svg rect {
	transition: transform .3s,opacity .3s;
}
header input#menu:checked ~ label.menu svg rect:nth-of-type(1) {
	width: 21px;
	transform: translateX(-6px) translateY(24px) rotate(-45deg);
}
header input#menu:checked ~ label.menu svg rect:nth-of-type(2) {
	width: 21px;
	transform: translateX(22px) translateY(-11px) rotate(45deg);
}

/* ========================================
   チェックボックスON時：メニューを展開
======================================== */
#menu:checked ~ .main-navigation {
	transform: scale(1);
	opacity: 1;
}

/* メニューリストのスタイル例（適宜調整） */
.main-navigation ul {
	padding: 45px 20px 20px;border-radius: 25px;
	background: #F0590B;
	min-width: 220px;
	display: flex;flex-wrap: wrap;flex-direction: column;
	gap: .6em;
}
.main-navigation ul li a {
	display: block;padding: 5px 0;
	font-size: 1.6rem;font-weight: 500;color: var(--color-background-white);
}
.main-navigation ul span {
	display: block;line-height: 1;position: relative;
}
.main-navigation ul li.big {
	background-color: var(--color-background-white);
	color: var(--color-text-black);text-align: center;
	padding: 10px;border-radius: 20px;
}
.main-navigation ul li.big a {
	color: var(--color-text-black);
}
.main-navigation ul li.big span::after {
}

/* -- Site Footer -- */
.site-footer {
	background-color: var(--color-gray-200);padding: 55px 0;
	border-radius: 25px 25px 0 0;
	font-size: 1.4rem;
}
.site-footer .wrap {position: relative;}
.site-footer .recruit-btn {
	position: relative;left: 0;margin: 0 0 30px;border: solid 5px var(--color-background-white);
	width: 100%;height: 150px;border-radius: 13px;overflow: hidden;z-index: 10;
}
.site-footer .recruit-btn p {
	font-size: 2rem;font-weight: 700;color: var(--color-background-white);margin: -20px 0 0;
	text-shadow:0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000;
}
.site-footer .recruit-btn a {
	display: block;height: 150px;
	background: url(../images/back/recruit@2x.jpg) no-repeat bottom / cover;
	padding: 60px ;
}
.site-footer .recruit-btn span.btn {
	display: inline-block;padding: 13px 50px 15px 20px;position: absolute;bottom: 15px;right: 15px;
	font-size: 1.4rem;font-weight: 900;color: var(--color-background-white);line-height: 1;
	background: var(--color-primary);border: solid 2px var(--color-background-white);border-radius: 30px;
}
.site-footer .recruit-btn span.btn::after {
	content: "";width: 24px;height: 24px;position: absolute;top: calc(50% - 12px);right: 10px;
	border-radius: 50%;
	background: var(--color-background-white) url(../images/icon/arrow01.svg) no-repeat center / 45%;
}
.site-footer .wrap {display: block;overflow: visible;}
.site-footer .info .name {
	position: relative;padding: 0 0 0 47px;margin: 30px 0;
	font-weight: 700;
}
.site-footer .info .name::before {
	content: "";width: 37px;height: 36px;position: absolute;top: calc(50% - 13px);left: 0;
	background: url(../images/icon/icon.svg) no-repeat center / 100%;
}
.site-footer nav {margin: 40px 0 20px}
.site-footer nav ul.footer-nav {
	display: flex;gap: 40px 20px;justify-content: space-between;flex-wrap: wrap;
}
.site-footer nav ul.footer-nav li.footer-col:nth-of-type(1) {width: calc(50% - 10px);}
.site-footer nav ul.footer-nav li.footer-col:nth-of-type(2) {width: calc(50% - 10px);margin: 1em 0 0;}
.site-footer nav ul.footer-nav ul {
	display: flex;flex-direction: column;gap: 8px;
}
.site-footer nav ul.footer-nav ul a {
	line-height: 1.1;
}
.site-footer nav li.footer-flat a {font-weight: 500}
.site-footer nav ul.footer-nav h3 {font-size: 1.4rem;font-weight: 500;}
.site-footer .site-info {text-align: right;width: 100%;}

/* -- Main Area -- */

/* -- Animated Elements -- */
.fade-in {opacity: 0;animation: fade-in 1s ease-out forwards;animation-delay: var(--delay, 0ms);}
@keyframes fade-in {
	from {opacity: 0;transform: translateY(20px);}
	to {opacity: 1;transform: translateY(0);}
}



/* ==========================================================================
   3. Components — Lead Section (Front Page)
   ========================================================================== */

/* 回転アニメーションの定義 */
@keyframes rotateAnimation {
	from {transform: rotate(0deg)}
	to {transform: rotate(360deg)}
}
.mv__img {
	animation: rotateAnimation 180s linear infinite;
}
main section.mv {padding: 220px 0 100px;}
section.mv .mv__img {
	width: 340px;height: 345px;position: absolute;top: -75px;right: -130px;
}
section.mv .mv__img svg {
	transform: rotate(-32deg);
}
section.mv .textbox {}
section.mv .textbox p.title {
	font-size: 5rem;line-height: 1.2;font-weight: 700;
	margin: 0 0 20px;
}
section.mv .textbox p.title span {display: inline-block}
section.mv .textbox p.lead {
	font-size: 1.6rem;line-height: 1.4;font-weight: 700;
	width: 13em;
}
section.mv .textbox p.lead span.fade-in {opacity: 0;animation: fade-in .5s ease-out forwards;animation-delay: var(--delay, 0ms);}
section.mv .newsbox {
	margin: 120px 0 90px;width: 100%;position: relative;
}
section.mv .newsbox .btn {
	position: absolute;top: 0;right: 0;
}
section.mv .newsbox ul {
	display: flex;gap: 10px;flex-direction: column;font-weight: 500;
}
section.mv .newsbox li a {
	display: block;border-radius: 10px;padding: 15px 20px 12px;position: relative;
	background: var(--color-gray-200);display: flex;gap: 3px 15px;flex-wrap: wrap;
}
section.mv .newsbox li.pickup a::before {
	content: "";width: 24px;height: 24px;position: absolute;top: -9px;left: -9px;
	background: url(../images/icon/pin.svg) no-repeat center / 100%;
}
section.mv .newsbox li p {
	width: 100%;line-height: 1.4;
}
section.mv .newsbox li span {
	font-size: 1.4rem;color: var(--color-gray-400);line-height: 1;
}
section.mv .aboutbox {
	align-items: flex-start; 
	display: flex;flex-wrap: wrap;gap: 25px;flex-direction: column;
}
section.mv .aboutbox .text {
	width: 100%;order: 2;
}
section.mv .aboutbox p {
	font-size: 1.8rem;line-height: 2;
}
section.mv .aboutbox p.title {
	font-size: 2.8rem;line-height: 1.4;font-weight: 500;
	margin: 0 0 30px;
}
section.mv .aboutbox .img {
	width: calc(100% + 20px);border-radius: 30px 0 0 30px;overflow: hidden;
	order: 1;position: relative;right: 0;
}
section.mv .aboutbox .img::before {
	content: "";width: 100%;height: 100%;position: absolute;top: 0;left: 0;
	background: url(../images/logo2.svg) no-repeat center / 70%;
}
section.mv .aboutbox .img img {
	display: block;width: 100%;height: auto;
}
section.mv .jutaku-list {
	padding: 55px 0;position: relative;margin: 0 0 100px;
	display: flex;flex-wrap: wrap;gap: 20px;justify-content: center;
}
section.mv .jutaku-list::before {
	content: "";width: 100vw;height: 100%;background: #fff;
	position: absolute;top: 0;left: calc((100vw - 100%) / -2);z-index: -1;
}
section.mv .jutaku-list li {width: 100%}
section.mv .jutaku-list li a {
	display: block;border-radius: 10px;background: #FCF7F1;
	padding: 15px 0;
	text-align: center;
}
section.mv .jutaku-list li span {
	position: relative;display: inline-block;padding: 0 30px 0 0;
}
section.mv .jutaku-list li ruby {
	display: flex;flex-direction: column;text-align: justify;text-align-last: justify;line-height: 1.4;
}
section.mv .jutaku-list li ruby rt {font-size: 1.2rem}
section.mv .jutaku-list li span::after {
	content: "";width: 19px;height: 19px;position: absolute;top: calc(50% - 8px);right: 0;
	background-position: 57% 53%;
	background-size: 30%;
	background-repeat: no-repeat;
	background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%205%208%22%3E%3Cpath%20fill%3D%22%23f0590b%22%20d%3D%22m4.243%203.535-.708.707-2.828%202.83L0%206.363l2.828-2.829L0%20.707.707%200z%22%2F%3E%3C%2Fsvg%3E);
	border: solid 1px #dcdcdc;
	border-radius: 50%;
}
section.mv .jutaku-list h2 {
	width: 100%;position: relative;padding: 0;margin: 0 0 20px;
	font-size: 1.8rem;color: var(--color-text-black);text-align: center;font-weight: 700;
}
section.mv .jutaku-list h2 span {
	position: relative;z-index: 10;
	background: var(--color-background-white);display: inline-block;padding: 0 25px;
}
section.mv .jutaku-list h2::before {
	display: block;
	content: "";width: 100%;height: 1px;background: var(--color-text-black);
	position: absolute;top: 50%;left: 0;
}
section.jigyosho h2 {font-size: 2.4rem;padding: 0 0 0 37px;}
section.jigyosho p.lead {padding: 0 0 40px 37px;}
	.jigyosho-archive {
		display: flex;gap: 13px;width: 100%;
		flex-wrap: wrap;flex-direction: row;
	}
	.jigyosho-archive article {
		width: 100%;transition: opacity 0.2s;opacity: 0;
		background: var(--color-background-white);
		border-radius: 10px;overflow: hidden;
	}
	.jigyosho-archive article.is-hidden {
		opacity: 0;transition: opacity 0.2s;pointer-events: none;
	}
	.jigyosho-archive article a {
		display: flex;flex-wrap: wrap;gap: 18px;
	}
	.jigyosho-archive article .jigyosho-card__img {
		width: 93px;background: var(--color-gray-100);overflow: hidden;
	}
	.jigyosho-archive article .jigyosho-card__body {
		padding: 20px 20px 20px 0;width: calc(100% - 111px);
	}
	.jigyosho-archive article .jigyosho-card__address {
		font-size: 1.4rem;
		color: #8b8b8b;line-height: 1.2;margin: 5px 0;
	}
	.jigyosho-archive article .jigyosho-card__phone {
		background: var(--color-gray-100);padding: 7px 0 9px;
		font-weight: 500;line-height: 1;margin: 10px 0 0;text-align: center;
		border-radius: 20px;
	}
	.jigyosho-archive article ul.jigyosho-tags {
		display: flex;flex-wrap: wrap;gap: 5px 4px;
		margin: 0;font-size: 1.4rem;line-height: 1;
	}
	.jigyosho-archive article ul.jigyosho-tags li {
		background: var(--color-accent);padding: 5px 8px;border-radius: 5px;
		color: #62939F;
	}
	.jigyosho-archive article .jigyosho-card__title {
		font-size: 1.6rem;line-height: 1.2;
	}
	section.contentbox {
		position: relative;z-index: 5;
	}
	section.contentbox .wrap {
		justify-content: space-between;
	}
	section.contentbox .wrap .aside {
		width: 5%;
		flex-shrink: 0;
		margin: 0 3% 0 0;
	}
	section.contentbox .wrap .aside p.title {
		font-size: 1.4rem;font-weight: 700;display: none;
		margin: 0 0 50px;
	}
	section.contentbox .wrap .aside ol.outline {
		counter-reset: outline-counter;
		display: flex;flex-direction: column;gap: 12px;
	}
	section.contentbox .wrap .aside ol.outline li {
		counter-increment: outline-counter;position: relative;
		border-bottom: solid 1px var(--color-gray-100);padding: 0 0 12px;
	}
	section.contentbox .wrap .aside ol.outline li::before {
		content: '#' counter(outline-counter);pointer-events: none;
		font-size: 1.2rem;transition: left .3s;
		position: absolute;left: 0;top: calc(50% - 1rem - 6px);
	}
	section.contentbox .wrap .aside ol.outline li::after {
		content: '';width: 16px;height: 1px;background: #F0590B;
		font-size: 1.2rem;transition: left .3s;
		position: absolute;left: 0;bottom:0;
	}
	section.contentbox .wrap .aside ol.outline li a {
		display: block;padding: 10px 20px 10px 30px;transition: background .3s;border-radius: 10px;
		font-size: 1.6rem;font-weight: 400;line-height: 1.3;
	}
	section.contentbox .wrap .aside ol.outline li a span {
		display: none;
	}
	section.contentbox .wrap .aside ol.outline li.active a {background: var(--color-gray-200)}
	section.contentbox .wrap .aside ol.outline li.active::before {left: 15px}
	section.contentbox .wrap .aside ol.outline li.active::after {width: 32px}
	section.contentbox .wrap article.page {
		width: calc(95% - 40px);
	}

	.wrap section.list,
	main.entry section {
		flex: 1;
		min-width: 0;
	}
	.jigyosho-tag-filter {
		width: 100%;padding: 70px 20px 50px;border-radius: 30px;
		display: flex;gap: 8px;flex-wrap: wrap;margin: 0 0 40px;
		background: var(--color-background-white);
		text-align: center;position: relative;z-index: 5;
	}
	.jigyosho-tag-filter .jigyosho-filter-box {width: calc(50% - 4px)}
	.jigyosho-tag-filter .jigyosho-filter-box:nth-of-type(1) {width: 100%}
	.jigyosho-tag-filter button {
		width: 100%;
		background: var(--color-background-white);padding: 15px 0 13px;border-radius: 25px;
		font-size: 1.6rem;line-height: 1;color: var(--color-text-black);order: 1;
		transition: background 0.2s;cursor: pointer;border: solid 2px var(--color-gray-400);
	}
	.jigyosho-tag-filter .jigyosho-filter-box:nth-of-type(1) button {
		width: calc(50% - 4px);font-weight: 700;
		background: var(--color-gray-400);
	}
	.jigyosho-tag-filter button:hover {
		background: var(--color-gray-200);
	}

/* ==========================================================================
   3. Components — Aside (Categories Sidebar)
   ========================================================================== */

.aside {
	width: 25%;position: sticky;top: 100px;left: 0;z-index: 102;
	padding: 0 0 150px;
}

.aside ul.catelist {
	border-top: solid 1px #000;
}

.aside ul.catelist li {
	border-bottom: solid 1px #000;
}

.aside ul.catelist li a {
	font-size: 1.6rem;
	font-weight: 700;
	display: block;
	padding: 0.6em 2em 0.6em 0;
	position: relative;
	transition: opacity 0.2s;
}

.aside ul.catelist li a:hover {
	opacity: 0.6;
}

.aside ul.catelist li a::after {
	content: "";
	width: 11px;
	height: 11px;
	position: absolute;
	top: 50%;
	right: 0.3em;
	transform: translateY(-50%);
	/* Replace with your arrow icon */
	/* background: url(../images/icon/arrow01.svg) no-repeat center / 100%; */
	border-right: 2px solid #111;
	border-bottom: 2px solid #111;
	width: 8px;
	height: 8px;
	transform: translateY(-50%) rotate(-45deg);
}

/* ==========================================================================
   3. Components — Post List
   ========================================================================== */

.list .box {
	display: flex;flex-direction: column;gap: 20px;
	width: 800px;margin: 0 auto;
}

.list article a {
	display: block;background: var(--color-gray-200);border-radius: 10px;
	overflow: hidden;padding: 18px 90px 18px 30px;position: relative;
}
.list article a::after {
	content: "";width: 26px;height: 26px;position: absolute;top: calc(50% - 13px);right: 27px;
	border-radius: 50%;
	background: var(--color-primary) url(../images/icon/arrow00.svg) no-repeat center / 45%;
}
.list article span.date {
	display: block;
	font-size: 1.4rem;line-height: 1;color: var(--color-gray-400);font-weight: 500;
}
.list article p.title {
	font-size: 1.6rem;line-height: 1.4;font-weight: 500;
	margin: 3px 0 0;
}

/* -- "More" link -- */
.list .more {
	text-align: center;
	margin: 20px 0 0;
}

.list .more a {
	display: inline-block;
	font-size: 1.4rem;
	font-weight: 500;
	padding: 0.8em 3em;
	border: 1px solid #111;
	border-radius: 4px;
	transition: background 0.2s, color 0.2s;
}

.list .more a:hover {
	background: #111;
	color: #fff;
}

/* ==========================================================================
   3. Components — Breadcrumb
   ========================================================================== */

.breadcrumb {
	padding: 0 0 50px;
	font-size: 1.2rem;
	letter-spacing: 0;
	line-height: 1.4;
}
.breadcrumb ul {
	display: flex;flex-wrap: wrap;gap: 0;
	position: relative;padding: 0 0 0 24px;
}
.breadcrumb ul::before {
	content: "";width: 16px;height: 16px;position: absolute;top: 0;left: 0;
	background: url(../images/icon/home.svg) no-repeat center / 100%;
}
.breadcrumb ul li {
	padding: 0 0 0 2em;
	position: relative;
}
.breadcrumb ul li::before {
	content: ">";
	position: absolute;
	top: 0;
	left: 0.8em;
	color: #999;
}
.breadcrumb ul li:first-child::before {
	display: none;
}
.breadcrumb ul li:first-child {
	padding: 0;
}
/* ==========================================================================
   3. Components — Entry (Page Post)
   ========================================================================== */

main#index section.lead {
	padding: 0 0 80px;
}
.contentbox {
	background-color: var(--color-background-white);
	overflow: clip;
}
.contentbox .wrap {
	display: flex;flex-wrap: wrap;gap: 1%;position: relative;
	align-items: flex-start;justify-content: space-between;
}

main#index section.lead {
		padding: 0;
	}
	main#index section.lead .mv__img {
		width: 340px;height: 345px;position: absolute;top: -250px;right: -120px;z-index: -1;
	}
	main#index section.lead .mv__img svg {transform: rotate(-120deg);}
	main#index.post-8 section.lead .mv__img ,
	main#index.jigyosho section.lead .mv__img {
		width: 340px;height: 345px;top: -250px;right: -120px;
	}
	main#index.post-8 section.lead .mv__img svg ,
	main#index.jigyosho section.lead .mv__img svg {transform: rotate(180deg);}
	main#index section.lead .wrap {
		display: block;position: relative;
		padding: 0 20px 50px;
	}
	main#index section.lead .wrap::after {
		content: "";width: calc(100% - 40px);height: 1px;background: #d9d9d9;
		position: absolute;bottom: 0;left: 20px;
	}
	main#index.post-13 section.lead .wrap::after {display: none}
	main#index section.lead h1 {
		margin: 0 0 15px;
		color: var(--color-secondary);
		font-size: 3.6rem;font-weight: 900;line-height: 140%;
	}
	main#index section.lead p {
		margin: 0 0 2em;font-size: 1.8rem;line-height: 2;
	}
	main#index section.lead p:last-of-type {margin: 0}
	main#index section.lead a.link {
		text-decoration: underline;display: inline-block;
		margin: 20px 0 0;
	}
	main#index section.lead p.category {
		margin: 0 0 15px;
		color: var(--color-secondary);
		font-size: 3.6rem;font-weight: 900;line-height: 140%;
	}
	main#index section.lead p.description {
		width: 500px;
	}
	section.company ul.menu {
		display: flex;gap: 60px 105px;flex-wrap: wrap;
		margin: 0 0 140px;
	}
	section.company ul.menu li {
		width: 330px;
		background: var(--color-background-white);border-radius: 10px;
		font-size: 1.8rem;font-weight: 500;line-height: 1;text-align: center;
	}
	section.company ul.menu li a {display: block;padding: 65px 0 60px}
	section.company ul.menu li span {
		display: inline-block;position: relative;
		font-weight: 400;
	}
	section.company ul.menu li span::after {
		content: "";width: 19px;height: 19px;position: absolute;top: calc(50% - 8px);right: -30px;
		background-position: 57% 53%;background-size: 30%;background-repeat: no-repeat;
		background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%205%208%22%3E%3Cpath%20fill%3D%22%23f0590b%22%20d%3D%22m4.243%203.535-.708.707-2.828%202.83L0%206.363l2.828-2.829L0%20.707.707%200z%22%2F%3E%3C%2Fsvg%3E');
		border: solid 1px #dcdcdc;border-radius: 50%;
	}
	section.company .message {
		padding: 46px 20px 20px;position: relative;
		border-radius: 30px;background: #F7F0E0;
		display: flex;gap: 40px;flex-wrap: wrap;flex-direction: column;
	}
	section.company .message .text {width: 100%}
	section.company .message h2 {font-size: 1.8rem}
	section.company .message p.title {
		font-size: 2.2rem;line-height: 1.4;font-weight: 500;
		margin: 20px 0 35px;
	}
	section.company .message p {
		font-size: 1.8rem;line-height: 2;
		margin: 0 0 2em;
	}
	section.company .message p:last-of-type {margin: 0}
	section.company .message figure {width: 100px;position: absolute;top: -70px;right: 20px;}
	section.company .message figure img {border-radius: 5px;}
	section.company .message figure figcaption {font-size: 1.1rem;font-style: italic;}
	section.overview .wrap {display: block}
	section.overview h2 {
		font-size: 2.8rem;line-height: 1.4;
		margin: 0 0 50px;position: relative;padding: 0 0 0 37px;
	}
	section.overview dl {
		width: 100%;margin: 0 auto 50px;
		border-top: solid 1px #EFE9E1;
		display: flex;flex-wrap: wrap;
	}
	section.overview dl.detail dt {
		color: #7d7d7d;font-size: 1.3rem;
		padding: 20px 20px 20px 10px;width: 100px;
		border-bottom: solid 1px #EFE9E1;
	}
	section.overview dl.detail dd {
		padding: 20px 0;width: calc(100% - 100px);
		border-bottom: solid 1px #EFE9E1;
	}
	section.overview dl.detail dd h3 {
		font-weight: 400;font-size: 1.8rem;
	}
	section.overview dl.detail dd ul ul li::before {content: "・"}
	section.overview iframe {
		width: 100%;height: 340px;display: block;
		margin: 0 auto;
	}
	aside {padding: 0 0 300px;}
	aside ul.menu {
		width: 100%;margin: 0 auto;
		display: flex;gap: 10px;flex-wrap: wrap;
	}
	aside ul.menu li {
		width: calc(50% - 5px);
		background: var(--color-background-white);border-radius: 10px;
		font-size: 1.6rem;font-weight: 500;line-height: 1;text-align: center;
	}
	aside ul.menu li a {display: block;padding: 45px 0 60px}
	aside ul.menu li span {
		display: inline-block;position: relative;
		font-weight: 400;
	}
	aside ul.menu li span::after {
		content: "";width: 19px;height: 19px;position: absolute;top: 140%;right: calc(50% - 8px);
		background-position: 57% 53%;background-size: 30%;background-repeat: no-repeat;
		background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%205%208%22%3E%3Cpath%20fill%3D%22%23f0590b%22%20d%3D%22m4.243%203.535-.708.707-2.828%202.83L0%206.363l2.828-2.829L0%20.707.707%200z%22%2F%3E%3C%2Fsvg%3E');
		border: solid 1px #dcdcdc;border-radius: 50%;
	}
	body.page-id-15 aside ul.menu li:nth-of-type(1) span ,
	body.page-id-17 aside ul.menu li:nth-of-type(2) span ,
	body.page-id-19 aside ul.menu li:nth-of-type(3) span ,
	body.page-id-21 aside ul.menu li:nth-of-type(4) span ,
	body.page-id-23 aside ul.menu li:nth-of-type(5) span ,
	body.page-id-25 aside ul.menu li:nth-of-type(6) span {color: #b7b7b7}

	.list article .img {
		width: 240px;
		float: left;
		margin: 0 20px 0 0;
	}

	.list article .text {
		overflow: hidden;
	}

	main.entry .entry-title {
		font-size: 2.8rem;
	}


/* ==========================================================================
   3. Components — Entry (Single Post)
   ========================================================================== */
.entrybox {
		background: var(--color-background-white);
	}
.entrybox article {
	width: 100%;margin: 0 auto;
}
.entry-content {
	max-width: 100%;
	margin: 0 auto;
}
.entrybox article .entry-content {
	width: 100%;max-width: 100%;margin: 50px 0;
}
.entrybox article h1 {
	font-size: 2.8rem;font-weight: 500;line-height: 1.4;
	margin: 0 0 15px;
}

main.entry .entry-title {
	font-size: 2.8rem;
	font-weight: 900;
	line-height: 1.33;
	margin: 0 0 8px;
}

.entrybox article time {
	font-size: 1.4rem;font-weight: 500;line-height: 1;
	display: block;
	color: #6b6b6b;
}

.entrybox article .entry-thumbnail {
	margin: 0 0 30px;
}
.entrybox article .entry-thumbnail img {
	border-radius: 6px;
}
.entrybox article ul.category-links {
	display: flex;flex-direction: column;gap: 20px;
}
.entrybox article ul.category-links li a {
	font-size: 1.6rem;font-weight: 400;
	display: inline-block;padding: 0 0 0 33px;position: relative;
}
.entrybox article ul.category-links li a::before {
	content: "";width: 19px;height: 19px;border: solid 1px #dcdcdc;border-radius: 50%;
	background-position: 57% 51%;background-size: 30%;background-repeat: no-repeat;transform: rotate(180deg);
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%205%208%22%3E%3Cpath%20fill%3D%22%23f0590b%22%20d%3D%22m4.243%203.535-.708.707-2.828%202.83L0%206.363l2.828-2.829L0%20.707.707%200z%22%2F%3E%3C%2Fsvg%3E');
	position: absolute;top: calc(50% - 9px);left: 0;
}


/* ==========================================================================
   4. Entry Content (Post Body)
   ========================================================================== */

/* -- Column -- */
.entry-content .wp-block-columns {
	gap: 5.5%;
}
.entry-content .wp-block-columns .wp-block-column {
	margin: 0 0 50px;
}
.entry-content .wp-block-columns .wp-block-column * {
	margin: 0 0 11%;
}
.entry-content .wp-block-columns .wp-block-column *:last-of-type {
	margin: 0;
}


/* -- Headings -- */
.entry-content h2 {
	border-top: solid 1px #d9d9d9;
	font-size: 2rem;line-height: 1.3;font-weight: 700;
	color: var(--color-text-black);
	padding: 20px 0;position: relative;
	margin: 100px 0 50px;
}
.entry-content h2::after {
	content: "";width: 16px;height: 1px;position: absolute;	bottom: 0;left: 0;
	background: #F0590B;
}
.entry-content h2:nth-of-type(1) {margin: 0 0 50px}

.entry-content h3 {
	font-size: 2rem;
	line-height: 1.3;
	font-weight: 700;
	margin: 50px 0 20px;
}

.entry-content h4 {
	line-height: 1.3;
	font-weight: 700;
	margin: 40px 0 20px;
	padding: 0 0 0 12px;
	position: relative;
}

.entry-content h4::before {
	content: "";
	width: 2px;
	height: 100%;
	background: #111;
	position: absolute;
	top: 0;
	left: 0;
}

/* -- Paragraphs -- */
.entry-content p {
	font-weight: 400;line-height: 2;
	margin: 0 0 30px;
}

.entry-content strong {
	font-weight: 700;
}

.entry-content em {
	font-style: italic;
}

/* -- Links -- */
.entry-content a {
	color: #0070c9;position: relative;
	text-decoration:underline 1px;
	transition: color 0.2s;
}
.entry-content a[href$=".pdf"] ,
.entry-content a[href^="https://maps"] {
	color: var(--color-text-black);padding: 0 28px 0 0;line-height: 1.4;
}
.entry-content a[href$=".pdf"]::after ,
.entry-content a[href^="https://maps"]::after {
	content: "";width: 20px;height: 20px;position: absolute;bottom: calc(25% - 10px);right: 0;
	background: url(../images/icon/pdf.svg) no-repeat center / 100%;
}
.entry-content a[href^="https://maps"]::after {
	background: url(../images/icon/map.svg) no-repeat center / 100%;
}

.entry-content a:hover {
	color: #005999;
}

/* -- Marker -- */
.entry-content mark {
	background: linear-gradient(transparent 60%, #BAFFED 60%);
	padding: 0.05em 0.2em;
}

/* -- Images -- */
.entry-content figure.wp-block-image {
	margin: 0 0 30px;
}
.entry-content figure.wp-block-image img {
	border-radius: 10px;
}

.entry-content figure.wp-block-image figcaption {
	font-size: 1.2rem;
	padding: .4em 0;
	margin: 0;
}

/* -- Lists -- */
.entry-content ol,
.entry-content ul {
	list-style: none;
	margin: 0 0 50px;
	display: flex;flex-wrap: wrap;flex-direction: column;gap: 10px;
}

.entry-content ol ol,
.entry-content ul ul {
	margin: 12px 0;
}

.entry-content li {
	font-size: 1.8rem;
	line-height: 1.6;
	position: relative;
	padding: 0 0 0 1em;
}

.entry-content ul > li::before {
	content: "";width: 3px;height: 3px;
	border-radius: 50%;
	background: var(--color-text-black);
	position: absolute;left: 0;top: 0.8em;
}

.entry-content ol {
	counter-reset: ol-counter;
}

.entry-content ol > li::before {
	text-align: center;
	line-height: 1;
	letter-spacing: 0;
	font-size: 1em;
	color: var(--color-text-black);
	position: absolute;
	top: 0.2em;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	counter-increment: ol-counter;
	content: counter(ol-counter)'.';
}
.entry-content .wp-block-lazyblock-definition-list {
	margin: 0 0 50px;
}
.entry-content .wp-block-lazyblock-definition-list dl {
	display: flex;flex-wrap: wrap;gap: 20px;flex-direction: column;
}
.entry-content .wp-block-lazyblock-definition-list dl dt {
	font-size: 1.4rem;color: #7d7d7d;padding: .3rem 0;
	margin: 0 0 -15px;
}

/* -- iframe -- */
.entry-content iframe {
	max-width: 100%;overflow: hidden;border-radius: 10px;
	margin: 0 0 50px;
}

/* -- Table -- */
.entry-content figure.wp-block-table {
	margin: 0 0 30px;
}
.entry-content table {
	border: none;
	width: 100%;
	line-height: 1.4;
	font-size: 1.4rem;
	border-collapse: collapse;
	vertical-align: middle;
}
.entry-content table td,
.entry-content table th {
	border: solid 4px #fff;
	padding: 16px;
	background: #F7F7F7;
	font-weight: 500;
}
.entry-content figure.wp-block-table table {margin: 0}
.entry-content figure.wp-block-table table tr td:nth-of-type(1),
.entry-content figure.wp-block-table table th {
	background: #F0F0E9;
	font-weight: 700;text-align: left;
}
.entry-content figure.wp-block-table table thead + tbody tr td:nth-of-type(1) {
	background: #F7F7F7;
	font-weight: 500;
}
.wp-block-table {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch; /* iOS慣性スクロール */
}
.wp-block-table table {
	min-width: 700px; /* 固定幅700px */
}

/* -- Link Button -- */
.entry-content .linkBtn {
	margin: 0 0 30px;text-align: right;
}
.entry-content .linkBtn a {
	display: inline-block;position: relative;
	border-radius: 30px;padding: 16px 70px 16px 30px;min-width: 240px;
	font-size: 1.8rem;line-height: 1.2;color: var(--color-primary);text-align: center;
	text-decoration: none;font-weight: 700;
	border: solid 2px var(--color-primary);
	transition: opacity 0.2s;
}
.entry-content .linkBtn a:hover {opacity: 0.8}

.entry-content .linkBtn a::after {
	content: "";width: 26px;height: 26px;border-radius: 50%;
	background: var(--color-primary) url(../images/icon/arrow00.svg) no-repeat center / 42%;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
}

/* -- Post List -- */
.entry-content .btn.news {
	position: absolute;top: 15px;right: 20px;
}
	.entry-content .btn.news a {color: var(--color-text-black);text-decoration: none}
	.entry-content .btn.news a span {font-size: 1.6rem}
.entry-content .post-list {
	display: flex;flex-direction: column;gap: 10px;
	margin: 0 0 50px;
}
.entry-content .post-list a {
	display: block;text-decoration: none;
	border-radius: 10px;padding: 15px 73px 12px 20px;position: relative;
	background: var(--color-gray-200);
	color: var(--color-text-black);
}
.entry-content .post-list a::after {
	content: "";width: 26px;height: 26px;position: absolute;top: calc(50% - 13px);right: 27px;
	border-radius: 50%;
	background: var(--color-primary) url(../images/icon/arrow00.svg) no-repeat center / 45%;
}
.entry-content .post-list li {padding: 0;}
.entry-content .post-list li::before {display: none}
.entry-content .post-list time {
	font-size: 1.4rem;color: var(--color-gray-400);line-height: 1;
}
.entry-content .post-list p {
	margin: 0;line-height: 1.4;font-size: 1.6;font-weight: 500;
}

/* ==========================================================================
   3. Components — Search
   ========================================================================== */

.search-form {
	display: flex;
	gap: 8px;
	max-width: 480px;
}

.search-form label {
	flex: 1;
}

.search-form .search-field {
	width: 100%;
	padding: 10px 16px;
	font-size: 1.4rem;
	border: 1px solid #ddd;
	border-radius: 4px;
	outline: none;
	transition: border-color 0.2s;
}

.search-form .search-field:focus {
	border-color: #111;
}

.search-form .search-submit {
	padding: 10px 20px;
	font-size: 1.4rem;
	font-weight: 600;
	background: #111;
	color: #fff;
	border: none;
	border-radius: 4px;
	cursor: pointer;
	transition: opacity 0.2s;
}

.search-form .search-submit:hover {
	opacity: 0.8;
}

.search-form-container {
	padding: 40px 20px;
	text-align: center;
}

.search-form-container .search-form {
	margin: 0 auto;
}

/* ==========================================================================
   3. Components — Pagination
   ========================================================================== */

.pagination,
.nav-links {
	display: flex;
	justify-content: center;
	gap: 4px;
	margin: 40px 0;
	font-size: 1.8rem;
}

.pagination .page-numbers,
.nav-links .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
	height: 36px;
	padding: 0 8px;
	border: 1px solid #ddd;
	border-radius: 4px;
	transition: background 0.2s, color 0.2s, opacity 0.2s;
}

.pagination .page-numbers.current,
.nav-links .page-numbers.current {
	background: var(--color-gray-400);
	color: #fff;
	border-color: var(--color-gray-400);
}
.pagination .page-numbers.next,
.nav-links .page-numbers.next,
.pagination .page-numbers.prev,
.nav-links .page-numbers.prev {
	background: var(--color-primary);position: relative;
	color: #fff;
	border-color: var(--color-primary);
}
.pagination .page-numbers.next::after,
.nav-links .page-numbers.next::after,
.pagination .page-numbers.prev::after,
.nav-links .page-numbers.prev::after {
	content: "";width: 8px;height: 8px;position: absolute;top: 50%;right: 30%;
	border-top: solid 1px var(--color-background-white);border-left: solid 1px var(--color-background-white);transform: translate3d(-50%, -50%, 0) rotate(135deg);
}
.pagination .page-numbers.prev::after,
.nav-links .page-numbers.prev::after {
	transform: translate3d(-25%, -50%, 0) rotate(-45deg);
}

.pagination .page-numbers:hover:not(.current),
.nav-links .page-numbers:hover:not(.current) {
	opacity: 0.8;
}

/* ==========================================================================
   3. Components — 404 / Not Found
   ========================================================================== */

.notfound {
	text-align: center;
	padding: 100px 0;
}
.notfound .wrap {
	flex-direction: column;gap: 40px;
}

.notfound .page-title {
	font-size: 3rem;
	font-weight: 900;
	margin: 0 0 20px;
}

.notfound .page-content p {
	font-size: 1.6rem;
	line-height: 1.8;
	color: #666;
}

/* ==========================================================================
   3. Components — Contact Form
   ========================================================================== */
.sr-only {
	position: absolute;width: 1px;height: 1px;margin: -1px;
	overflow: hidden;clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
section.contentbox form {
	max-width: 100%;padding: 40px 0;gap: 20px;display: flex;flex-direction: column;
}
section.contentbox form fieldset {
	border: none;
	display: flex;flex-wrap: wrap;gap: 40px;flex-direction: column;
}
section.contentbox form .input-box {
	display: flex;flex-wrap: wrap;position: relative;flex-direction: column;gap: 5px;
}
section.contentbox form .input-box label {
	width: 100%;display: block;box-sizing: border-box;
	font-size: 1.6rem;line-height: 1;font-weight: 700;color: var(--color-gray);
	padding: 0 0 7px;
}
section.contentbox form .input-box label span {display: block;font-size: 1.3rem;margin: 5px 0 0;}
section.contentbox form .input-box input[type="text"] ,
section.contentbox form .input-box input[type="email"] ,
section.contentbox form .input-box input[type="tel"] ,
section.contentbox form .input-box textarea {
	background: var(--color-background-white);
	width: 100%;border: solid 1px var(--color-gray);outline: none;box-sizing: border-box;
	padding: 10px 10px;border-radius: 10px;
	font-size: 1.6rem;line-height: 1.4;
}
section.contentbox form .input-box textarea {
	line-height: 2;min-height: 270px;resize: vertical;
}
section.contentbox form .input-box textarea::placeholder {color: #afd3e2}
.input-box .wpcf7-radio {
	display: flex;width: 100%;flex-direction: column;
	gap: 12px;
}
.input-box .wpcf7-list-item {margin: 0;flex: 1}
section.contentbox .input-box .wpcf7-list-item label {
	display: flex;align-items: center;
	padding: 18px 24px;width: 240px;
	border: 1.5px solid #ececec; /* テーマのCSS変数がない場合は #ccc など */
	border-radius: 8px;
	cursor: pointer;
	transition: border-color 0.15s, background 0.15s;
	user-select: none;
}
section.contentbox .input-box .wpcf7-list-item label span {margin: 0}
.input-box .wpcf7-list-item input[type="radio"] {
	position: absolute;opacity: 0;width: 0;height: 0;
	pointer-events: none;
}
section.contentbox form #submit {
	text-align: center;
}
section.contentbox form #submit input {
	background: var(--color-background-white);color: var(--color-text-black);display: block;
	font-size: 2rem;line-height: 1;font-family: "MFW-PA1GothicStd-Medium",'A P-OTF A1ゴシック Std M';
	border: solid 1px var(--color-text-black);width: 100%;padding: 28px 0;border-radius: 15px;cursor: pointer;
	transition: opacity .3s;
}
section.contentbox form .input-box .wpcf7-not-valid-tip {
	position: absolute;bottom: -20px;
	font-size: 1.2rem;
}
.wpcf7-spinner {display: none}
section.contentbox form .privacy {margin: 0 0 30px}
section.contentbox form .privacy .wpcf7-list-item {margin: 0;}
section.contentbox form .privacy span.wpcf7-list-item-label {
	font-weight: 700;font-size: 1.4rem;position: relative;padding: 0 0 0 26px;
}
section.contentbox form .privacy input {display: none;}
section.contentbox form .privacy span.wpcf7-list-item-label a {text-decoration: underline}
section.contentbox form .privacy span.wpcf7-list-item-label::before {
	content: "";width: 20px;height: 20px;border-radius: 3px;border: 1px solid #EEE;background: #FFF;
	position: absolute;top: 0;left: 0;
}
section.contentbox form .privacy .wpcf7-list-item:has(input[type="checkbox"]:checked) span.wpcf7-list-item-label::after {
	content: "";width: 10px;height: 20px;border: 3px solid var(--color-secondary);
	position: absolute;top: -4px;left: 7px;border-top: none;border-left: none;transform: rotate(50deg);
}

/* ==========================================================================
   3. Utilities
   ========================================================================== */

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}

/* ==========================================================================
   5. Responsive — sp (768px+)
   ========================================================================== */

@media (max-width: 768px) {
}

/* ==========================================================================
   5. Responsive — Desktop (768px+)
   ========================================================================== */

@media (min-width: 768px) {
	html {font-size: 62.5%;}
	/* style.css に追加 */
	#scroll-top-btn {
		bottom: 50px;right: 50px;left: auto;
	}
	.breadcrumb {
		padding: 0 0 140px;
		font-size: 1.2rem;
		letter-spacing: 0;
		line-height: 1.4;
	}
	h2 {
		color: var(--color-secondary);font-size: 4.8rem;
		font-weight: 900;line-height: 140%;margin: 0 0 24px;position: relative;
	}
	main.top h2 {
		font-size: 2.6rem;
	}
	main.top .wrap::before ,
	main.top .wrap::after ,
	main.jigyosho section#post-8 .wrap::before ,
	main.jigyosho section#post-8 .wrap::after ,
	main.post-13 section.company .wrap::before ,
	main.post-13 section.company .wrap::after {
		width: 100px;height: 77px;top: 680px;right: 195px;z-index: 0;
	}
	main.jigyosho section#post-8 .wrap::after ,
	main.post-13 section.company .wrap::after ,
	main.top .wrap::after {
		width: 121px;height: 129px;top: 500px;right: -50px;
	}
	main.top .wrap::before ,
	main.top .wrap::after ,
	main.jigyosho section#post-8 .wrap::before ,
	main.jigyosho section#post-8 .wrap::after {
		width: 159px;height: 123px;top: 1170px;right: 195px;
	}
	main.jigyosho section#post-8 .wrap::after ,
	main.top .wrap::after {
		width: 182px;height: 194px;top: 500px;right: -50px;
	}
	main.jigyosho section#post-8 .wrap::before {
		top: 260px;right: auto;left: -55px;
	}
	main.jigyosho section#post-8 .wrap::after {
		width: 121px;height: 129px;
		top: -90px;right: auto;left: 88px;z-index: 5;
	}
	h2.decoration::before {
		width: 388px;height: 394px;top: calc(50% - 180px);left: -410px;
	}
	header.site-header {
		padding: 0 0 0 40px;width: 100%;
		position: fixed;z-index: 1000;
		display: flex;align-items: center;justify-content: space-between;
	}
	.site-header label {display: none}
	.site-header nav {display: block;top: 0;right: 0;}
	.main-navigation {opacity: 1;transform: scale(1);}
	.site-header nav ul {
		gap: 30px;
	}
	.main-navigation ul {
		padding: 0;
		background: none;
		min-width: auto;
		flex-direction: row;
	}
	.site-header nav li {
		padding: 35px 0;
	}
	.site-header nav li a {
		padding: 0;color: var(--color-text-black);
	}
	.site-header nav ul span {
		display: block;line-height: 1;position: relative;
	}
	.site-header nav ul li.big {
		background-color: var(--color-primary);
		border-radius: 0 0 0 30px;padding: 0;margin: 0 0 0 10px;
	}
	.site-header nav ul li.big span::after {
		content: "";width: 16px;height: 16px;position: absolute;bottom: 0;right: -31px;
		background: url(../images/icon/blank.svg) no-repeat center / 100%;
	}
	.site-header nav ul li.big a {
		padding: 35px 80px 35px 60px;
	}
	.site-footer {
		background-color: var(--color-gray-200);padding: 55px 0 80px;
		border-radius: 100px 100px 0 0;
		font-size: 1.4rem;
	}
	.site-footer .wrap {position: relative;}
	.site-footer .recruit-btn {
		position: absolute;top: -165px;left: 0;margin: 0 0 0 380px;border: solid 5px var(--color-background-white);
		width: calc(100% - 500px);height: 300px;border-radius: 26px;overflow: hidden;z-index: 10;
	}
	.site-footer .recruit-btn p {
		margin: 20px 0 0 180px;
		font-size: 3.2rem;font-weight: 700;color: var(--color-background-white);
		text-shadow:0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000,0 0 2px #000;
	}
	.site-footer .recruit-btn a {
		display: block;height: 300px;
		background: url(../images/back/recruit@2x.jpg) no-repeat bottom / cover;
		padding: 60px ;
	}
	.site-footer .recruit-btn span.btn {
		display: inline-block;padding: 18px 60px 20px 40px;position: absolute;bottom: 55px;right: 60px;
		font-size: 1.8rem;font-weight: 900;color: var(--color-background-white);line-height: 1;
		background: var(--color-primary);border: solid 2px var(--color-background-white);border-radius: 30px;
	}
	.site-footer .recruit-btn span.btn::after {
	content: "";width: 26px;height: 26px;position: absolute;top: calc(50% - 13px);right: 17px;
	border-radius: 50%;
	background: var(--color-background-white) url(../images/icon/arrow01.svg) no-repeat center / 45%;
}
	.site-footer .wrap {display: block;overflow: visible;}
	.site-footer .info .name {
		position: relative;padding: 0 0 0 47px;margin: 30px 0;
		font-weight: 700;
	}
	.site-footer .info .name::before {
		content: "";width: 37px;height: 36px;position: absolute;top: calc(50% - 18px);left: 0;
		background: url(../images/icon/icon.svg) no-repeat center / 100%;
	}
	.site-footer nav {margin: 40px 0 20px}
	.site-footer nav ul.footer-nav {
		display: flex;gap: 40px;justify-content: space-between;
	}
	.site-footer nav ul.footer-nav li.footer-col:nth-of-type(1) {flex: 4}
	.site-footer nav ul.footer-nav li.footer-col:nth-of-type(2) {flex: 3}
	.site-footer nav ul.footer-nav ul {
		display: flex;flex-direction: column;gap: 8px;
	}
	.site-footer nav li.footer-flat a {
		font-weight: 500;
	}
	.site-footer nav ul.footer-nav h3 {font-size: 1.4rem;font-weight: 500;}
	.site-footer .site-info {text-align: right;width: 100%;}
	.wrap {
		padding: 0 50px;min-width: 1050px;
		display: flex;flex-wrap: wrap;
	}
	main section {
		padding: 100px 0;
	}
	main section.mv {padding: 100px 0;}
	section.mv .mv__img {
		width: 617px;height: 626px;top: -215px;right: -160px;
	}
	section.mv .textbox {
		max-width: 480px;
	}
	section.mv .textbox p.title {
		font-size: 6rem;line-height: 1.4;
	}
	section.mv .textbox p.lead {width: 100%}
	section.mv .newsbox {
		margin: 80px 0 90px;width: 480px;
	}
	section.mv .newsbox li a {padding: 15px 73px 12px 20px}
	section.mv .newsbox li a::after {
		content: "";width: 26px;height: 26px;position: absolute;top: calc(50% - 13px);right: 25px;
		border-radius: 50%;transition: right .3s;
		background: var(--color-primary) url(../images/icon/arrow00.svg) no-repeat center / 45%;
	}
	section.mv .newsbox li a:hover::after {
		right: 28px;
	}
	section.mv .aboutbox {
		padding: 50px;border-radius: 50px;align-items: flex-start; 
		background: var(--color-gray-200);
		display: flex;flex-wrap: wrap;gap: 5%;flex-direction: row;
	}
	section.mv .aboutbox .text {
		width: 45%;
	}
	section.mv .aboutbox p {
		font-size: 1.8rem;line-height: 2;
	}
	section.mv .aboutbox p.title {
		font-size: 3.6rem;line-height: 1.4;font-weight: 500;
		margin: 0 0 45px;
	}
	section.mv .aboutbox .img {
		width: 50%;border-radius: 30px;overflow: hidden;order: 2;
		right: auto;
	}
	section.mv .aboutbox .img::before {
		background: url(../images/logo2.svg) no-repeat center / 46%;
	}
	section.mv .aboutbox .img img {
		display: block;width: 100%;height: auto;
	}
	section.mv .jutaku-list {gap: 45px}
	section.mv .jutaku-list li {width: 370px}
	section.mv .jutaku-list li a {padding: 40px 0}
	section.mv .jutaku-list li.mini a {padding: 40px 0 25px}
	section.mv .jutaku-list h2 {width: 370px;padding: 43px 0 0;margin: 0;}
	section.jigyosho p.lead {
		width: 500px;margin: 0 0 55px;
	}
	section.jigyosho h2 {font-size: 2.8rem;padding: 0;}
	section.jigyosho p.lead {padding: 0;}
	.jigyosho-archive {
		display: flex;gap: 13px;width: 100%;
		flex-wrap: wrap;flex-direction: row;
	}
	.jigyosho-archive article {
		width: 290px;transition: opacity 0.2s;opacity: 0;
		background: var(--color-background-white);
		border-radius: 10px;overflow: hidden;
	}
	.jigyosho-archive article a {display: block}
	.jigyosho-archive article.is-hidden {
		opacity: 0;transition: opacity 0.2s;pointer-events: none;
	}
	.jigyosho-archive article:nth-of-type(1) {border-radius: 30px 10px 10px 10px}
	.jigyosho-archive article:nth-of-type(4) {border-radius: 10px 30px 10px 10px}
	.jigyosho-archive article:nth-of-type(9) {border-radius: 10px 10px 30px 10px}
	.jigyosho-archive article:nth-of-type(12) {border-radius: 10px 10px 10px 30px}
	.jigyosho-archive article .jigyosho-card__img {
		width: 100%;
		height: 193px;background: var(--color-gray-100);overflow: hidden;
	}
	.jigyosho-archive article .jigyosho-card__body {
		padding: 20px 30px;width: 100%;
	}
	.jigyosho-archive article .jigyosho-card__address {
		color: #8b8b8b;line-height: 1.2;margin: 10px 0;
	}
	.jigyosho-archive article .jigyosho-card__phone {
		background: var(--color-gray-100);padding: 7px 0 9px;
		font-weight: 500;line-height: 1;margin: 10px 0;text-align: center;
		border-radius: 20px;
	}
	.jigyosho-archive article ul.jigyosho-tags {
		display: flex;flex-wrap: wrap;gap: 5px 4px;
		margin: 10px 0 0;font-size: 1.4rem;line-height: 1;
	}
	.jigyosho-archive article ul.jigyosho-tags li {
		background: var(--color-accent);padding: 5px 8px;border-radius: 5px;
		color: #62939F;
	}
	.jigyosho-archive article .jigyosho-card__title {
		font-size: 1.8rem;line-height: 1.2;
	}
	section.contentbox {
		position: relative;z-index: 5;
	}
	section.contentbox .wrap {
		justify-content: space-between;gap: 8%;
	}
	section.contentbox .wrap .aside {
		width: 25%;
		flex-shrink: 0;
		margin: 0 3% 0 0;
	}
	section.contentbox .wrap .aside p.title {
		font-size: 1.4rem;font-weight: 700;display: block;
		margin: 0 0 50px;
	}
	section.contentbox .wrap .aside ol.outline {
		counter-reset: outline-counter;
		display: flex;flex-direction: column;gap: 12px;
	}
	section.contentbox .wrap .aside ol.outline li {
		counter-increment: outline-counter;position: relative;
		border-bottom: solid 1px var(--color-gray-100);padding: 0 0 12px;
	}
	section.contentbox .wrap .aside ol.outline li::before {
		content: '#' counter(outline-counter);
		font-size: 1.2rem;transition: left .3s;
		position: absolute;left: 0;top: calc(50% - 1rem - 6px);
	}
	section.contentbox .wrap .aside ol.outline li::after {
		content: '';width: 16px;height: 1px;background: #F0590B;
		font-size: 1.2rem;transition: left .3s;
		position: absolute;left: 0;bottom:0;
	}
	section.contentbox .wrap .aside ol.outline li a {
		display: block;padding: 10px 30px 10px 50px;transition: background .3s;border-radius: 10px;
		font-size: 1.6rem;font-weight: 400;line-height: 1.3;
	}
	section.contentbox .wrap .aside ol.outline li a span {display: block}
	section.contentbox .wrap .aside ol.outline li.active a {background: var(--color-gray-200)}
	section.contentbox .wrap .aside ol.outline li.active::before {left: 20px}
	section.contentbox .wrap .aside ol.outline li.active::after {width: 32px}
	section.contentbox .wrap article.page {
		width: calc(61% - 40px);
	}

	.wrap section.list,
	main.entry section {
		flex: 1;
		min-width: 0;
	}
	.jigyosho-tag-filter {
		width: 100%;padding: 70px 60px;border-radius: 30px;
		display: flex;gap: 20px;flex-wrap: wrap;margin: 0 0 100px;
		background: var(--color-background-white);
		text-align: center;position: relative;z-index: 5;
	}
	.jigyosho-tag-filter .jigyosho-filter-box {width: calc(20% - 16px)}
	.jigyosho-tag-filter .jigyosho-filter-box:nth-of-type(1) {width: 100%}
	.jigyosho-tag-filter button {
		width: 100%;
		background: var(--color-background-white);padding: 15px 0 13px;border-radius: 25px;
		font-size: 1.6rem;line-height: 1;color: var(--color-text-black);order: 1;
		transition: background 0.2s;cursor: pointer;border: solid 2px var(--color-gray-400);
	}
	.jigyosho-tag-filter .jigyosho-filter-box:nth-of-type(1) button {
		width: calc(20% - 16px);font-weight: 700;
		background: var(--color-gray-400);
	}
	.jigyosho-tag-filter button:hover {
		background: var(--color-gray-200);
	}

	/* ==========================================================================
	3. Components — Entry (Page Post)
	========================================================================== */
	main#index section.lead {
		padding: 0;
	}
	main#index section.lead .mv__img {
		width: 617px;height: 626px;position: absolute;top: 180px;right: 50px;
	}
	main#index section.lead .mv__img svg {transform: rotate(-120deg);}
	main#index.post section.lead .mv__img ,
	main#index.post-8 section.lead .mv__img ,
	main#index.jigyosho section.lead .mv__img {
		width: 855px;height: 868px;top: -50px;right: -270px;
	}
	main#index.post-8 section.lead .mv__img svg ,
	main#index.jigyosho section.lead .mv__img svg {transform: rotate(180deg);}
	main#index section.lead .wrap {
		display: block;position: relative;
		padding: 0 50px 115px;min-height: 420px;
	}
	main#index section.lead .wrap::after {
		content: "";width: calc(100% - 100px);height: 1px;background: #d9d9d9;
		position: absolute;bottom: 0;left: 50px;
	}
	main#index.post-13 section.lead .wrap::after {display: none}
	main#index section.lead h1 {
		margin: 0 0 15px;
		color: var(--color-secondary);
		font-size: 4.8rem;font-weight: 900;line-height: 140%;
	}
	main#index section.lead p {
		width: 500px;margin: 0 0 2em;font-size: 1.8rem;line-height: 2;
	}
	main#index section.lead p:last-of-type {
		margin: 0;
	}
	main#index section.lead p.category {
		margin: 0 0 15px;
		color: var(--color-secondary);
		font-size: 4.8rem;font-weight: 900;line-height: 140%;
	}
	main#index section.lead p.description {
		width: 500px;
	}
	section.company ul.menu {
		display: flex;gap: 60px 105px;flex-wrap: wrap;
		margin: 0 0 140px;
	}
	section.company ul.menu li {
		width: 330px;
		background: var(--color-background-white);border-radius: 10px;
		font-size: 1.8rem;font-weight: 500;line-height: 1;text-align: center;
	}
	section.company ul.menu li a {display: block;padding: 65px 0 60px}
	section.company ul.menu li span {
		display: inline-block;position: relative;
		font-weight: 400;
	}
	section.company ul.menu li span::after {
		content: "";width: 19px;height: 19px;position: absolute;top: calc(50% - 8px);right: -30px;
		background-position: 57% 53%;background-size: 30%;background-repeat: no-repeat;
		background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%205%208%22%3E%3Cpath%20fill%3D%22%23f0590b%22%20d%3D%22m4.243%203.535-.708.707-2.828%202.83L0%206.363l2.828-2.829L0%20.707.707%200z%22%2F%3E%3C%2Fsvg%3E');
		border: solid 1px #dcdcdc;border-radius: 50%;
	}
	section.company .message {
		padding: 50px 50px 50px 60px;
		border-radius: 50px;background: #F7F0E0;
		display: flex;gap: 40px;flex-wrap: wrap;flex-direction: row;
	}
	section.company .message .text {width: 500px;order: 1;}
	section.company .message h2 {font-size: 2.8rem}
	section.company .message p.title {
		font-size: 3.6rem;line-height: 1.4;font-weight: 500;
		margin: 20px 0 35px;
	}
	section.company .message p {
		font-size: 1.8rem;line-height: 2;
		margin: 0 0 2em;
	}
	section.company .message p:last-of-type {margin: 0}
	section.company .message figure {width: 550px;order: 2;position: static;}
	section.company .message figure img {border-radius: 30px;}
	section.company .message figure figcaption {font-size: 1.8rem;}
	section.overview .wrap {display: block}
	section.overview h2 {
		font-size: 2.8rem;line-height: 1.4;
		margin: 0 0 50px;position: relative;
	}
	section.overview dl {
		width: 800px;margin: 0 auto 50px;
		border-top: solid 1px #EFE9E1;
		display: flex;flex-wrap: wrap;
	}
	section.overview dl.detail dt {
		color: #7d7d7d;font-size: 1.4rem;
		padding: 24px 25px 24px 50px;width: 150px;
		border-bottom: solid 1px #EFE9E1;
	}
	section.overview dl.detail dd {
		padding: 20px 0;width: calc(100% - 150px);
		border-bottom: solid 1px #EFE9E1;
	}
	section.overview dl.detail dd h3 {
		font-weight: 400;font-size: 1.8rem;
	}
	section.overview dl.detail dd ul ul li::before {content: "・"}
	section.overview iframe {
		width: 800px;height: 340px;display: block;
		margin: 0 auto;
	}
	aside {padding: 0 0 300px;}
	aside ul.menu {
		width: 900px;margin: 0 auto;
		display: flex;gap: 100px;flex-wrap: wrap;
	}
	aside ul.menu li {
		width: calc(50% - 50px);
		background: var(--color-background-white);border-radius: 10px;
		font-size: 1.8rem;font-weight: 500;line-height: 1;text-align: center;
	}
	aside ul.menu li a {display: block;padding: 65px 0 60px}
	aside ul.menu li span {
		display: inline-block;position: relative;
		font-weight: 400;
	}
	aside ul.menu li span::after {
		content: "";width: 19px;height: 19px;position: absolute;top: calc(50% - 8px);right: -30px;
		background-position: 57% 53%;background-size: 30%;background-repeat: no-repeat;
		background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%205%208%22%3E%3Cpath%20fill%3D%22%23f0590b%22%20d%3D%22m4.243%203.535-.708.707-2.828%202.83L0%206.363l2.828-2.829L0%20.707.707%200z%22%2F%3E%3C%2Fsvg%3E');
		border: solid 1px #dcdcdc;border-radius: 50%;
	}
	body.page-id-15 aside ul.menu li:nth-of-type(1) span ,
	body.page-id-17 aside ul.menu li:nth-of-type(2) span ,
	body.page-id-19 aside ul.menu li:nth-of-type(3) span ,
	body.page-id-21 aside ul.menu li:nth-of-type(4) span ,
	body.page-id-23 aside ul.menu li:nth-of-type(5) span ,
	body.page-id-25 aside ul.menu li:nth-of-type(6) span {color: #b7b7b7}

	.list article .img {
		width: 240px;
		float: left;
		margin: 0 20px 0 0;
	}

	.list article .text {
		overflow: hidden;
	}

	main.entry .entry-title {
		font-size: 3.2rem;
	}

	/* ==========================================================================
	 3. Components — Entry (Single Post)
	 ========================================================================== */

	.entrybox article {
		width: 800px;margin: 0 auto;
	}
	.entry-content {
		max-width: 700px;
		margin: 0 auto;
	}
	.entrybox article .entry-content {
		width: 800px;max-width: 800px;margin: 100px 0;
	}
	.entrybox article h1 {
		font-size: 3.2rem;font-weight: 500;line-height: 1.4;
		margin: 0 0 15px;
	}

	main.entry .entry-title {
		font-size: 2.8rem;
		font-weight: 900;
		line-height: 1.33;
		margin: 0 0 8px;
	}

	.entrybox article time {
		font-size: 1.4rem;font-weight: 500;line-height: 1;
		display: block;
		color: #6b6b6b;
	}

	.entrybox article .entry-thumbnail {
		margin: 0 0 30px;
	}
	.entrybox article .entry-thumbnail img {
		border-radius: 6px;
	}
	.entrybox article ul.category-links {
		display: flex;flex-direction: column;gap: 20px;
	}
	.entrybox article ul.category-links li a {
		font-size: 1.6rem;font-weight: 400;
		display: inline-block;padding: 0 0 0 33px;position: relative;
	}
	.entrybox article ul.category-links li a::before {
		content: "";width: 19px;height: 19px;border: solid 1px #dcdcdc;border-radius: 50%;
		background-position: 57% 51%;background-size: 30%;background-repeat: no-repeat;transform: rotate(180deg);
		background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%205%208%22%3E%3Cpath%20fill%3D%22%23f0590b%22%20d%3D%22m4.243%203.535-.708.707-2.828%202.83L0%206.363l2.828-2.829L0%20.707.707%200z%22%2F%3E%3C%2Fsvg%3E');
		position: absolute;top: calc(50% - 9px);left: 0;
	}
	/* ==========================================================================
   4. Entry Content (Post Body)
   ========================================================================== */

	/* -- Column -- */
	.entry-content .wp-block-columns {
		gap: 5.5%;
	}
	.entry-content .wp-block-columns .wp-block-column {
		margin: 0 0 50px;
	}
	.entry-content .wp-block-columns .wp-block-column * {
		margin: 0 0 11%;
	}
	.entry-content .wp-block-columns .wp-block-column *:last-of-type {
		margin: 0;
	}

	/* -- Headings -- */
	.entry-content h2 {
		font-size: 2.6rem;
		padding: 20px 0;
		margin: 150px 0 50px;
	}

	.entry-content h3 {
		font-size: 2rem;
		line-height: 1.3;
		font-weight: 700;
		margin: 50px 0 20px;
	}

	.entry-content h4 {
		line-height: 1.3;
		font-weight: 700;
		margin: 40px 0 20px;
		padding: 0 0 0 12px;
		position: relative;
	}

	.entry-content h4::before {
		content: "";
		width: 2px;
		height: 100%;
		background: #111;
		position: absolute;
		top: 0;
		left: 0;
	}

	/* -- Paragraphs -- */
	.entry-content p {
		font-weight: 400;line-height: 2;
		margin: 0 0 30px;
	}

	.entry-content strong {
		font-weight: 700;
	}

	.entry-content em {
		font-style: italic;
	}

	/* -- Links -- */
	.entry-content a {
		color: #0070c9;position: relative;
		text-decoration:underline 1px;
		transition: color 0.2s;
	}
	.entry-content a[href$=".pdf"] ,
	.entry-content a[href^="https://maps"] {
		color: var(--color-text-black);padding: 0 28px 0 0;
	}
	.entry-content a[href$=".pdf"]::after ,
	.entry-content a[href^="https://maps"]::after {
		content: "";width: 20px;height: 20px;position: absolute;top: calc(50% - 10px);right: 0;
		background: url(../images/icon/pdf.svg) no-repeat center / 100%;
	}
	.entry-content a[href^="https://maps"]::after {
		background: url(../images/icon/map.svg) no-repeat center / 100%;
	}

	.entry-content a:hover {
		color: #005999;
	}

	/* -- Marker -- */
	.entry-content mark {
		background: linear-gradient(transparent 60%, #BAFFED 60%);
		padding: 0.05em 0.2em;
	}

	/* -- Images -- */
	.entry-content figure.wp-block-image {
		margin: 0 0 30px;
	}
	.entry-content figure.wp-block-image img {
		border-radius: 10px;
	}

	.entry-content figure.wp-block-image figcaption {
		font-size: 1.2rem;
		padding: .4em 0;
		margin: 0;
	}

	/* -- Lists -- */
	.entry-content ol,
	.entry-content ul {
		list-style: none;
		margin: 0 0 50px;
		display: flex;flex-wrap: wrap;flex-direction: column;gap: 10px;
	}

	.entry-content ol ol,
	.entry-content ul ul {
		margin: 12px 0;
	}

	.entry-content li {
		font-size: 1.8rem;
		line-height: 1.6;
		position: relative;
		padding: 0 0 0 1em;
	}

	.entry-content ul > li::before {
		content: "";width: 3px;height: 3px;
		border-radius: 50%;
		background: var(--color-text-black);
		position: absolute;left: 0;top: 0.8em;
	}

	.entry-content ol {
		counter-reset: ol-counter;
	}

	.entry-content ol > li::before {
		text-align: center;
		line-height: 1;
		letter-spacing: 0;
		font-size: 1em;
		color: var(--color-text-black);
		position: absolute;
		top: 0.2em;
		left: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		counter-increment: ol-counter;
		content: counter(ol-counter)'.';
	}
	.entry-content .wp-block-lazyblock-definition-list {
		margin: 0 0 50px;
	}
	.entry-content .wp-block-lazyblock-definition-list dl {
		display: flex;flex-wrap: wrap;gap: 40px 20px;flex-direction: row;
	}
	.entry-content .wp-block-lazyblock-definition-list dl dt {
		width: 80px;
		font-size: 1.4rem;color: #7d7d7d;padding: .3rem 0;
	}
	.entry-content .wp-block-lazyblock-definition-list dl dd {
		width: calc(100% - 100px);
	}

	/* -- iframe -- */
	.entry-content iframe {
		max-width: 100%;overflow: hidden;border-radius: 10px;
		margin: 0 0 50px;
	}

	/* -- Table -- */
	.entry-content figure.wp-block-table {
		margin: 0 0 30px;
	}
	.entry-content table {
		border: none;
		width: 100%;
		line-height: 1.4;
		font-size: 1.4rem;
		border-collapse: collapse;
		vertical-align: middle;
	}
	.entry-content table td,
	.entry-content table th {
		border: solid 4px #fff;
		padding: 16px;
		background: #F7F7F7;
		font-weight: 500;
	}
	.entry-content figure.wp-block-table table {margin: 0}
	.entry-content figure.wp-block-table table tr td:nth-of-type(1),
	.entry-content figure.wp-block-table table th {
		background: #F0F0E9;
		font-weight: 700;
	}
	.entry-content figure.wp-block-table table thead + tbody tr td:nth-of-type(1) {
		background: #F7F7F7;
		font-weight: 500;
	}
	.wp-block-table {
		overflow-x: auto;
		-webkit-overflow-scrolling: none;
	}
	.wp-block-table table {min-width: auto}

	/* -- Link Button -- */
	.entry-content .linkBtn {
		margin: 0 0 30px;text-align: right;
	}
	.entry-content .linkBtn a {
		display: inline-block;position: relative;
		border-radius: 30px;padding: 16px 70px 16px 30px;min-width: 240px;
		font-size: 1.8rem;line-height: 1.2;color: var(--color-primary);text-align: center;
		text-decoration: none;font-weight: 700;
		border: solid 2px var(--color-primary);
		transition: opacity 0.2s;
	}
	.entry-content .linkBtn a:hover {opacity: 0.8}

	.entry-content .linkBtn a::after {
		content: "";width: 26px;height: 26px;border-radius: 50%;
		background: var(--color-primary) url(../images/icon/arrow00.svg) no-repeat center / 42%;
		position: absolute;
		right: 20px;
		top: 50%;
		transform: translateY(-50%);
	}

	/* -- Post List -- */
	.entry-content .btn.news {
		position: absolute;top: 15px;right: 50px;
	}
	.entry-content .btn.news a {color: var(--color-text-black);text-decoration: none}
	.entry-content .btn.news a span {font-size: 1.6rem}
	.entry-content .post-list {
		display: flex;flex-direction: column;gap: 10px;
		margin: 0 0 50px;
	}
	.entry-content .post-list a {
		display: block;text-decoration: none;
		border-radius: 10px;padding: 15px 73px 15px 20px;position: relative;
		background: var(--color-gray-200);
		color: var(--color-text-black);
	}
	.entry-content .post-list a::after {
		content: "";width: 26px;height: 26px;position: absolute;top: calc(50% - 13px);right: 27px;
		border-radius: 50%;
		background: var(--color-primary) url(../images/icon/arrow00.svg) no-repeat center / 45%;
	}
	.entry-content .post-list li {padding: 0;}
	.entry-content .post-list li::before {display: none}
	.entry-content .post-list time {
		font-size: 1.4rem;color: var(--color-gray-400);line-height: 1;
	}
	.entry-content .post-list p {
		margin: 0;line-height: 1.4;font-size: 1.6;font-weight: 500;
	}
}
