/*
----------------------------------------

plugin

----------------------------------------
*/


/* yoast
---------------------------------------- */

/* yoast-breadcrumbs */

.wp-block-template-part:has( > .yoast-breadcrumbs ) {
	margin: 0;
}

.wp-block-group:has( > .yoast-breadcrumbs ) {
	margin-top: 0 !important;
	padding-top: 1em;
	padding-bottom: 1em;
}

.yoast-breadcrumbs {
	font-size: var(--wp--preset--font-size--14);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.yoast-breadcrumbs span span + span {
	padding-left: 24px;
	position: relative;
}

.yoast-breadcrumbs span span + span::before {
	font-family: 'Material Symbols Outlined';
	content: '\e5cc';
	width: 20px;
	line-height: 14px;
	text-align: center;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-42%);
	transition: all .2s;
}

/* schema-faq-section */

.schema-faq {
	margin-top: 3.4em;
	margin-bottom: 3.8em;
}

.schema-faq-section {
	border: none;
	padding: 28px 3.6em;
	background-color: var(--wp--preset--color--base);
	border-radius: 1em;
}

.schema-faq-section + .schema-faq-section {
	margin-top: 2.25em;
}

.schema-faq-section .schema-faq-question {
	display: block;
	padding: 15px 1.8em;
	line-height: 1.5;
	font-size: var(--wp--preset--font-size--28);
	color: var(--wp--preset--color--contrast);
	position: relative;
}

.schema-faq-section .schema-faq-question::before {
	content: 'Q.';
	font-size: var(--wp--preset--font-size--34);
	font-family: var(--wp--preset--font-family--geist);
	position: absolute;
	top: 50%;
	left: 5px;
	transform: translateY(-48%);
}

.schema-faq-section .schema-faq-answer {
	color: var(--wp--preset--color--contrast);
	background: url(../img/page/bg-line.png) center top 3px / 1px repeat-x;
	padding: 20px 5px 16px;
	margin: 7px 0 0;
	position: relative;
}

.schema-faq-section .schema-faq-answer::before,
.schema-faq-section .schema-faq-answer::after {
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background-color: var(--wp--preset--color--gray);
	position: absolute;
	top: 0;
}

.schema-faq-section .schema-faq-answer::before {
	left: 0;
}

.schema-faq-section .schema-faq-answer::after {
	right: 0;
}

.schema-faq-section .schema-faq-answer strong {
	display: block;
	font-size: var(--wp--preset--font-size--24);
	line-height: 1.5;
	color: var(--wp--preset--color--primary);
	padding-left: 1.8em;
	margin-bottom: .6em;
	position: relative;
}

.schema-faq-section .schema-faq-answer strong::before {
	content: 'A.';
	font-size: var(--wp--preset--font-size--30);
	font-family: var(--wp--preset--font-family--geist);
	position: absolute;
	top: 50%;
	left: 5px;
	transform: translateY(-48%);
}

.schema-faq-section .schema-faq-answer strong + br {
	display: none;
}

.ans-icon .schema-faq-section .schema-faq-answer {
	border: none;
	padding: 10px 0 10px 64px;
	margin-top: 1rem;
	position: relative;
}

.ans-icon .schema-faq-section .schema-faq-answer::before {
	content: 'A';
	width: 48px;
	height: 48px;
	font-size: var(--wp--preset--font-size--20);
	line-height: 48px;
	text-align: center;
	font-family: var(--wp--preset--font-family--geist);
	background: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
	border-radius: 50%;
	position: absolute;
	top: 0;
	left: 0;
}

.schema-faq.is-style-toggle-btn .schema-faq-question {
	display: block;
	padding-right: 2.2em;
	cursor: pointer;
	position: relative;
}

.schema-faq.is-style-toggle-btn .schema-faq-question::after {
	display: grid;
	place-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background-color: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--base);
	font-family: "Material Symbols Outlined";
	font-variation-settings:
		'FILL' 1,
		'wght' 400;
	font-size: var(--wp--preset--font-size--30);
	content: '\e145';
	position: absolute;
	top: calc( 50% - 24px );
	right: 5px;
	transition: background .2s;
}

.schema-faq.is-style-toggle-btn .schema-faq-question.active::after {
	content: '\e15b';
}

/* how-to */

.schema-how-to .schema-how-to-total-time {
	display: inline-block;
	font-size: var(--wp--preset--font-size--14);
	line-height: 1.5;
	background: var(--wp--preset--color--light-gray);
	padding: 5.5px 12px;
	border-radius: 4px;
	margin: 0;
}

.schema-how-to .schema-how-to-description {
	margin: 1em 0 0;
}

.schema-how-to .schema-how-to-steps {
	counter-reset: custom-counter;
	list-style: none;
	padding: 0;
	margin: 2em 0 0;
}

.schema-how-to .schema-how-to-step {
	position: relative;
	border: none;
	padding: 0 0 3em;
}

.schema-how-to .schema-how-to-step::after {
	content: '';
	display: inline-block;
	width: 2px;
	height: 100%;
	background: var(--wp--preset--color--gray);
	font-size: var(--wp--preset--font-size--20);
	position: absolute;
	top: 24px;
	left: calc( 24px - 1px );
	z-index: 1;
}

.schema-how-to .schema-how-to-step:last-of-type::after {
	display: none;
}

.schema-how-to .schema-how-to-step:has( .schema-how-to-step-name:empty )::after {
	content: none;
}

.schema-how-to .schema-how-to-step-name {
	counter-increment: custom-counter;
	display: flex;
	align-items: center;
	gap: 15px;
	font-size: var(--wp--preset--font-size--24);
	line-height: 1.5;
	color: var(--wp--preset--color--contrast);
}

.schema-how-to .schema-how-to-step-name::before {
	content: counter(custom-counter, decimal-leading-zero);
	display: grid;
	place-content: center;
	flex-shrink: 0;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
	font-family: var(--wp--preset--font-family--geist);
	font-size: var(--wp--preset--font-size--20);
	font-weight: 600;
	z-index: 2;
}

.schema-how-to .schema-how-to-step-name:empty::before {
	content: none;
}

.schema-how-to .schema-how-to-step-text {
	margin: 1em 0 0;
	padding-left: calc( 48px + 15px );
	overflow: hidden;
}

.schema-how-to .schema-how-to-step-text img {
	width: 30%;
	float: right;
	margin-left: var(--wp--preset--spacing--30);
}

.schema-how-to-step-number {
	display: none;
}


@media ( max-width: 1000px ) {

	.schema-faq-section .schema-faq-answer {
		padding: var(--wp--preset--spacing--30);
	}

}


/* addtoany
---------------------------------------- */

.addtoany_list a {
	padding: 0 !important;
	margin-left: 16px;
	line-height: .5;
}

.addtoany_list a:not(.addtoany_special_service)>span {
	padding: 3px !important;
	border-radius: 50% !important;
}

.a2a_kit a span {
	opacity: 1!important;
	transition: all .2s;
}


@media ( max-width: 750px ) {

	.addtoany_list a {
		margin: 0;
	}

	.addtoany_list a + a {
		margin-left: 10px;
	}

}

/* hover */

@media ( min-width: 751px ) {

	.a2a_kit a:hover span {
		transform: scale( 1.15 );
	}

	.schema-faq.is-style-toggle-btn .schema-faq-question:hover::after {
		background-color: var(--wp--preset--color--primary);
	}

}



/* lwptoc
------------------------------------------------------- */

.lwptoc-light .lwptoc_i {
	width: 100%;
	margin-top: 2em;
	background-color: var(--wp--preset--color--custom-ivory);
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
	border-radius: 1em;
}

.lwptoc_header {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 0;
	color: var(--wp--preset--color--contrast);
}

.lwptoc_title {
	font-size: var(--wp--preset--font-size--20);
	font-weight: 600;
}

.lwptoc_title::before {
	font-variation-settings:
		'FILL' 1,
		'wght' 400;
	font-family: "Material Symbols Outlined";
	content: '\e896';
	vertical-align: middle;
	font-size: 1.5em;
	color: var(--wp--preset--color--primary);
	margin-right: 8px;
	position: relative;
	top: -.04em;
}

.lwptoc_toggle {
	font-size: var(--wp--preset--font-size--12);
	margin-left: 0;
}

.lwptoc-baseItems .lwptoc_items {
	font-size: var(--wp--preset--font-size--17);
	margin-top: var(--wp--preset--spacing--10);
}

.lwptoc-light .lwptoc_i A {
	color: var(--wp--preset--color--contrast) !important;
}

.main .lwptoc-notInherit .lwptoc_i DIV A {
	border: none !important
}

.lwptoc_item {
	margin-top: 0;
}

.lwptoc_itemWrap .lwptoc_itemWrap {
	margin: 0 0 0 1.5em;
}

.lwptoc_item .lwptoc_item .lwptoc_itemWrap {
	margin: 0;
}

.lwptoc_item_number {
	color: var(--wp--preset--color--primary);
	font-family: var(--wp--preset--font-family--geist);
	font-weight: 600;
}

.lwptoc_item_number::after {
	content: '.';
}

@media ( min-width: 751px ) {

	.main .lwptoc-notInherit .lwptoc_i DIV A:hover {
		color: var(--wp--preset--color--primary) !important;
	}

}


/* ez-toc
---------------------------------------- */

#ez-toc-container {
	background: var(--wp--preset--color--light-gray);
	padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--30) var(--wp--preset--spacing--30);
}

#ez-toc-container a {
	text-decoration: none;
}

#ez-toc-container .ez-toc-title {
	font-size: var(--wp--preset--font-size--24);
	line-height: 1.5;
	margin: 0;
}

#ez-toc-container .ez-toc-title::before {
	font-family: 'Material Symbols Outlined';
	content: '\e896';
	vertical-align: middle;
	font-size: 1.5em;
	color: var(--wp--preset--color--primary);
	margin-right: 8px;
	position: relative;
	top: -.04em;
}

#ez-toc-container ul {
	list-style: none;
	counter-reset: list;
	padding-left: var(--wp--preset--spacing--20);
	margin: 0;
}

#ez-toc-container li {
	padding: 0;
}

#ez-toc-container li::before {
	display: none;
}

#ez-toc-container a::before {
	display: inline-block;
	content: counters( list, '.' ) '. ';
	counter-increment: list;
	color: var(--wp--preset--color--primary);
	font-family: var(--wp--preset--font-family--geist);
	font-weight: normal;
	font-size: 1.25em;
	vertical-align: middle;
	margin-right: 4px;
	transform: translateY( -10% );
}

#ez-toc-container a {
	color: var(--wp--preset--color--contrast);
}


@media ( max-width: 1000px ) {

	#ez-toc-container {
		padding: var(--wp--preset--spacing--20);
	}

	#ez-toc-container ul {
		padding-left: var(--wp--preset--spacing--10);
	}

}


/* link
---------------------------------------- */

/* hover */

@media ( min-width: 751px ) {

	.link-block {
		overflow: hidden;
	}

	.link-block .wp-block-cover__image-background {
		transition: all .6s;
	}

	.link-block:hover .wp-block-cover__image-background {
		transform: scale( 1.15 );
	}

	.link-block .wp-block-cover__background {
		transition: all .6s;
	}

	.link-block:hover .wp-block-cover__background {
		opacity: .2;
	}

}

/* linkcard
---------------------------------------- */

body .linkcard {
	margin: 2em auto 0 !important;
	overflow: hidden;
	min-width: 0;
}

.linkcard > div {
	width: 100%;
	max-width: 100%;
	background: transparent;
}

.linkcard a.lkc-link {
	display: block;
	width: 100%;
	color: var(--wp--preset--color--contrast);
	border: solid 4px var(--wp--preset--color--light-gray);
	border-radius: 1em;
	overflow: hidden;
	transition: border .2s;
}

.linkcard .lkc-card {
	margin: 0;
}

.linkcard .lkc-info {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--10);
	padding: var(--wp--preset--spacing--10) var(--wp--preset--spacing--20);
	background: var(--wp--preset--color--light-gray);
	overflow: hidden;
	min-width: 0;
}

.linkcard .lkc-date {
	font-family: var(--wp--preset--font-family--geist);
}

.linkcard .lkc-info .lkc-favicon {
	flex-shrink: 0;
}

.linkcard .lkc-info .lkc-domain {
	display: block !important;
	flex: 1;
	font-size: var(--wp--preset--font-size--14);
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 0 !important;
}

.linkcard .lkc-content {
	display: grid;
	grid-template-columns: 180px 1fr;
	grid-template-rows: auto auto auto;
	row-gap: 10px;
	height: auto;
	padding: var(--wp--preset--spacing--30);
	padding-right: 60px;
	margin: 0;
	position: relative;
}

.linkcard .lkc-content::after {
	display: inline-block;
	font-family: "Material Symbols Outlined";
	font-size: 24px;
	font-weight: 300;
	color: var(--wp--preset--color--primary);
	content: '\e9ba';
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY( -50% );
}

.linkcard .lkc-external-wrap .lkc-content::after {
	content: '\e89e';
}

.linkcard .lkc-thumbnail {
	float: none;
	width: 100%;
	height: 120px;
	margin: auto;
	padding-right: var(--wp--preset--spacing--30);
	grid-column: 1 / 2;
	grid-row: 1 / 4;
}

.linkcard .lkc-thumbnail-img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
}

.linkcard .lkc-title {
	place-content: flex-end;
}

.linkcard .lkc-title-text {
	font-size: var(--wp--preset--font-size--17);
	line-height: 1.6;
	text-decoration: none;
}

.linkcard .lkc-url {
	font-size: var(--wp--preset--font-size--14);
	color: var( --wp--preset--color--primary );
	line-height: 1.6;
}

.linkcard .lkc-excerpt {
	font-size: var(--wp--preset--font-size--14);
	line-height: 1.6;
}


@media ( max-width: 1000px ) {

	.linkcard .lkc-content {
		padding: var(--wp--preset--spacing--20);
		padding-right: 60px;
	}

	.linkcard .lkc-thumbnail {
		padding-right: var(--wp--preset--spacing--20);
	}

}


@media ( max-width: 750px ) {

	.linkcard .lkc-content {
		grid-template-columns: 120px 1fr;
		padding-right: 40px;
		row-gap: 5px;
	}

	.linkcard .lkc-content::after {
		right: 5px;
	}

	.linkcard .lkc-thumbnail {
		grid-row: 1 / 3;
		height: 70px;
	}

	.linkcard .lkc-excerpt {
		grid-column: 1 / 3;
	}

}

/* hover */

@media ( min-width: 751px ) {

	.linkcard a.lkc-link:hover {
		border-color: var(--wp--preset--color--primary);
	}

}


/*
----------------------------------------

common

----------------------------------------
*/

.wp-site-blocks {
	padding-top: 0;
}

.wp-block-image,
.wp-block-table,
.wp-block-embed,
.linkcard,
.wp-block-shortcode {
	margin-block-start: 2em;
	margin-block-end: 0;
}

:where(body .is-layout-constrained) > * {
	margin-block-start: 2em;
}

main.wp-block-group {
	margin-block-start: 0 !important;
}

.is-style-en {
	font-family: var(--wp--preset--font-family--geist);
}

.is-style-en-02 {
	font-family: var(--wp--preset--font-family--rock-salt);
}

.is-style-img-center {
	text-align: center;
}

.is-style-img-center * {
	margin-right: auto;
	margin-left: auto;
}

.is-style-img-right {
	text-align: right;
}

.is-style-img-right * {
	margin-left: auto;
}

.is-style-group-center {
	text-align: center;
}

.wp-block-media-text.is-style-img-l {
	grid-template-columns: 460px 1fr !important;
	gap: 2.2em;
}

.wp-block-media-text.is-style-img-l.has-media-on-the-right {
	grid-template-columns: 1fr 460px !important;
}

.wp-block-media-text.is-style-img-l .wp-block-media-text__content > * {
	margin-top: 0;
}

.wp-block-media-text.is-style-img-l .wp-block-media-text__content > * + * {
	margin-top: 1em;
}

.is-style-img-l .wp-block-media-text__media {
	text-align: center;
}

.is-style-img-l .wp-block-media-text__media img {
	width: 50%;
	aspect-ratio: 256 / 341;
	border: solid 2px var(--wp--preset--color--base);
	transform: scale(2) translateY(.5%);
}

.is-style-group-center ul,
.is-style-group-center ol {
	display: inline-block;
}

.is-style-group-center li {
	text-align: left;
}

.is-style-group-right {
	text-align: right;
}

.is-style-inline-block {
	display: inline-block !important;
}

.is-style-bg-mountain {
	background-image:
		url(../img/page/bg-02-top.png),
		url(../img/page/bg-02-bottom.png);
	background-position:
		top center,
		bottom center;
	background-size: 100% 250px;
	background-repeat: no-repeat;
	color: var(--wp--preset--color--base);
	padding-top: 180px;
	padding-bottom: 244px;
	margin-top: 0;
}

.is-style-bg-mountain::after {
	content: "";
	position: absolute;
	top: 249px;
	right: 0;
	bottom: 249px;
	left: 0;
	background-color: var(--wp--preset--color--secondary);
	z-index: 1;
}

.is-style-bg-mountain > * {
	position: relative;
	z-index: 2;
}

.is-style-bg-mountain.bottom-line {
	margin-top: 4em;
	padding-bottom: 6em;
}

.is-style-bg-mountain.bottom-line::after {
	bottom: 0;
}

.is-style-bg-mountain a {
	color: var(--wp--preset--color--base) !important;
}

.is-style-bg-mountain .pagination .wp-block-query-pagination-numbers a.page-numbers {
	background-color: var(--wp--preset--color--contrast);
}

.is-style-bg-gr {
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
	padding-right: var(--wp--style--root--padding-right);
	padding-left: var(--wp--style--root--padding-left);
}

.is-style-bg-gr .title-01 .is-style-en {
	color: var(--wp--preset--color--base);
}

.is-style-bg-wh {
	background-color: var(--wp--preset--color--base);
	color: var(--wp--preset--color--contrast);
	padding:  4.4em 4.7em 4.8em;
	border-radius: 20px;
	position: relative;
}

.is-style-bg-wh.p-s {
	padding-top: 3.4em;
	padding-bottom: 3.8em;
}

.is-style-bg-wh a {
	color: var(--wp--preset--color--contrast);
}

.is-style-no-link a {
	pointer-events: none;
}

.is-style-no-link-txt a {
	pointer-events: none;
	background-color: transparent;
	color: var(--wp--preset--color--contrast) !important;
	font-size: var(--wp--preset--font-size--17);
	padding: 0;
}

.is-style-quote-01 {
	position: relative;
	border: none;
	background: var(--wp--preset--color--light-gray);
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
	margin-top: 3.2em !important;
}

.is-style-quote-01::before {
	content: '“';
	width: 48px;
	height: 48px;
	position: absolute;
	top: 0;
	left: var(--wp--preset--spacing--10);
	color: var(--wp--preset--color--primary);
	font-size: 96px;
	line-height: 1;
	text-align: center;
	font-family: serif;
	transform: translateY( -50% );
}

.is-style-h-border {
	border: solid 1px var(--wp--preset--color--primary);
	border-radius: .6em;
	padding: 1em;
	gap: .5em;
	position: relative;
}

.is-style-h-border .ttl {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	text-align: center;
	transform: translateY(-50%);
}

.is-style-h-border .ttl .wp-block-heading {
	display: inline-block;
	background-color: var(--wp--preset--color--base);
	padding: .2em .8em;
	font-size: var(--wp--preset--font-size--18);
}

.is-style-bg-circle {
	display: grid;
	place-content: center;
	width: 100%;
	aspect-ratio: 1 / 1;
	background: url(../img/page/bg-circle.png) center center / 304px no-repeat;
	margin: 0 auto !important;
}

.is-style-bg-circle.bg-02 {
	background: url(../img/page/bg-circle-02.png) center center / 298px no-repeat;
}

.is-style-bg-circle.bg-03 {
	background: url(../img/page/bg-circle-03.png) center center / 318px no-repeat;
}

.is-style-bg-green-ph {
	background: url(../img/page/bg-photo-01.png) center bottom / 100vw no-repeat;
	padding-bottom: 39vw;
	margin-bottom: -28.2vw;
}

.is-style-bg-green-ph-half {
	background: url(../img/page/bg-photo-03.png) center bottom / 100vw no-repeat;
	padding-bottom: 8vw !important;

}

.is-style-bg-border {
	background-color: var(--wp--preset--color--base);
	color: var(--wp--preset--color--contrast);
	padding: 4.5em 2em 5em;
	border: solid 4px var(--wp--preset--color--custom-light-green);
	border-radius: 1em;
	position: relative;
}

.is-style-bg-car {
	background: url(../img/page/bg-03.png) center top / 100% no-repeat;
	color: var(--wp--preset--color--base);
	padding-top: 22cqw;
	padding-bottom: 7em;
	margin-top: -45px;
	position: relative;
	z-index: 1;
}

.is-style-bg-car::after {
	content: "";
	background-color: var(--wp--preset--color--primary);
	position: absolute;
	top: 16cqw;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
}

.is-style-bg-car > * {
	position: relative;
	z-index: 2;
}

.is-style-bg-car .title-01 .is-style-en {
	color: var(--wp--preset--color--base);
}

.is-style-bg-car .wp-block-button.is-style-arrow-right .wp-block-button__link {
	background-color: var(--wp--preset--color--secondary);
}

.is-style-bg-tree {
	background: url(../img/page/bg-04.png) center top 550px / 100% no-repeat;
	padding-bottom: 190px;
	position: relative;
}

.is-style-bg-tree::before {
	content: "";
	background: url(../img/page/bg-tree.png) center bottom / 305.5px repeat-x;
	position: absolute;
	inset: 0;
	pointer-events: none;
	z-index: 2;
}

.is-style-bg-tree::after {
	content: "";
	background-color: var(--wp--preset--color--secondary);
	position: absolute;
	top: 1000px;
	right: 0;
	bottom: 0;
	left: 0;
	pointer-events: none;
	z-index: 1;
}

.is-style-bg-tree.bg-l {
	background-position: center top 300px;
}

.is-style-bg-tree.bg-l::after {
	top: 750px;
}

.editor-styles-wrapper .is-style-bg-tree::after {
	z-index: 1;
}

.is-style-bg-tree > * {
	position: relative;
	z-index: 2;
}

.is-style-bg-car-ph {
	background: url(../img/page/bg-photo-02.png) center bottom / cover no-repeat;
	padding-top: 80px;
	padding-bottom: 372px;
}

.is-style-bg-ivory {
	background-color: var(--wp--preset--color--custom-ivory);
	padding: 2.85em 4.7em;
	border-radius: 20px;
	position: relative;
}

.is-style-bg-light-gray {
	background-color: var(--wp--preset--color--light-gray);
	padding: 2.85em 4.7em;
	border-radius: 20px;
	position: relative;
}

.wp-block-embed {
	max-width: 640px;
}

.wp-block-search__inside-wrapper {
	position: relative;
}

.wp-block-search__inside-wrapper::before {
	font-family: "Material Symbols Outlined";
	font-size: 24px;
	font-weight: 300;
	line-height: 24px;
	color: var(--wp--preset--color--primary);
	content: '\e8b6';
	position: absolute;
	top: calc( 50% - 12px );
	left: 10px;
	z-index: 1;
}

.wp-block-search__input {
	width: 100%;
	font-size: var(--wp--preset--font-size--17);
	padding: .8em .8em .8em 40px;
	background-color: var(--wp--preset--color--base);
	border: none;
	border-radius: .5em;
	outline: none;
	position: relative;
}

.link-to-cover-and-group-blocks {
	display: block;
	color: var(--wp--preset--color--contrast) !important;
}

.radar-chart {
	max-width: 100%;
	width: 640px;
}

@media ( max-width: 1200px ) {

	.is-style-bg-wh,
	.is-style-bg-ivory {
		padding: 2em 2em 3em;
	}

	.is-style-bg-mountain {
		background-size: 100% 150px;
	}

	.is-style-bg-mountain::after {
		top: 149px;
		bottom: 149px;
	}

	.is-style-bg-circle {
		background-size: 100% !important;
	}

	.schema-faq-section {
		padding: 23px 2em;
	}

}

@media ( max-width: 1000px ) {

	.share-wrap {
		padding: var(--wp--preset--spacing--20) !important;
	}

	.is-style-quote-01::before {
		width: 40px;
		height: 40px;
		font-size: 80px;
	}

	.wp-block-media-text.is-style-img-l {
		grid-template-columns: 35% 1fr !important;
		gap: 2em;
	}

	.wp-block-media-text.is-style-img-l.has-media-on-the-right {
		grid-template-columns: 1fr 35% !important;
	}

	.is-style-bg-mountain {
		background-size: 100% 12vw;
		padding-right: var(--wp--style--root--padding-right);
		padding-left: var(--wp--style--root--padding-left);
		padding-top: 160px;
		padding-bottom: 160px;
	}

	.is-style-bg-mountain::after {
		top: 11.9vw;
		bottom: 11.9vw;
	}

	.is-style-bg-green-ph {
		margin-top: 0;
	}

	.is-style-bg-border {
		padding: 2em 2em 5em;
	}

	.is-style-bg-car {
		margin-top: 1em;
		padding-right: var(--wp--style--root--padding-right);
		padding-left: var(--wp--style--root--padding-left);
	}

	.schema-faq-section {
		padding: 23px 1.5em;
	}

	.is-style-bg-tree {
		padding-bottom: 120px;
	}

	.is-style-bg-tree::after {
		top: 100vw;
	}

	.bnr-block .bnr {
		gap: 1em;
		background-size: 20px;
		flex-wrap: nowrap !important;
		background-position: right 1em bottom 1em;
	}

	.bnr-block .bnr .img {
		flex: 0 0 125px !important;
	}

	.bnr-block .bnr .txt {
		padding-bottom: 1.5em;
	}

	.bnr-block .is-style-en {
		font-size: var(--wp--preset--font-size--17);
	}

	.bnr-block .wp-block-heading {
		font-size: var(--wp--preset--font-size--20);
	}

	.is-style-bg-car-ph {
		padding: 3em var(--wp--style--root--padding-right) 40vw var(--wp--style--root--padding-left);
	}

	.section:has(.post-slider-box) {
		padding-right: var(--wp--style--root--padding-right);
		padding-left: var(--wp--style--root--padding-left);
	}

	.section .post-slider-box {
		margin-right: calc(var(--wp--style--root--padding-right) * -1) !important;
		margin-left: calc(var(--wp--style--root--padding-left) * -1) !important;
	}

}


@media ( max-width: 750px ) {

	.share-wrap {
		flex-direction: column;
		justify-content: center !important;
		gap: .2em;
		margin-top: .5em;
	}

	.is-style-bg-wh,
	.is-style-bg-ivory {
		padding: 1.5em var(--wp--style--root--padding-right) 1.5em var(--wp--style--root--padding-left);
	}

	.is-style-bg-wh.p-s {
		padding-top: 1.5em;
		padding-bottom: 2em;
	}

	.wp-block-media-text.is-style-img-l {
		display: flex;
		flex-direction: column-reverse;
		gap: 1em;
	}

	.wp-block-media-text.is-style-img-l.has-media-on-the-right {
		flex-direction: column;
	}

	.deco-01::before {
		width: 150px;
		height: 130px;
		top: 10px;
		left: 10px;
	}

	.deco-01.deco-right::before {
		right: 10px;
	}

	.is-style-img-l .wp-block-media-text__media img {
		max-width: 420px !important;
		transform: scale(1.4);
		transform-origin: top center;
	}

	.section:has( .is-style-img-l ) {
		padding-bottom: 14vw;
	}

	.is-style-bg-mountain {
		padding-top: 110px;
		padding-bottom: 70px;
	}

	.is-style-bg-mountain > .section:last-child {
		padding-bottom: 0;
	}

	.is-style-bg-circle {
		width: 240px;
		padding-bottom: 1em;
	}

	.num-list .num-cont .num {
		top: 8px;
	}

	.is-style-bg-border {
		padding: 1.5em var(--wp--style--root--padding-right) 1.5em var(--wp--style--root--padding-left);
	}

	.is-style-bg-car {
		background-size: 750px;
		background-position: top right 60%;
		padding-top: 140px;
		padding-bottom: 3em;
		margin-top: 0;
	}

	.is-style-bg-car::after {
		top: 145px;
	}

	.schema-faq {
		margin-top: 2em;
		margin-bottom: 2em;
	}

	.schema-faq-section {
		padding: 1em var(--wp--style--root--padding-right) 1.5em var(--wp--style--root--padding-left);
	}

	.schema-faq-section .schema-faq-question {
		font-size: var(--wp--preset--font-size--20);
		letter-spacing: .02em;
		padding: .5em 0 .5em 2em;
	}

	.schema-faq-section .schema-faq-question::before {
		left: 0;
	}

	.schema-faq-section .schema-faq-answer {
		padding: .5em 0 0;
		margin-top: var(--wp--preset--spacing--10);
	}

	.schema-faq-section .schema-faq-answer strong {
		font-size: var(--wp--preset--font-size--18);
		letter-spacing: .02em;
		padding: .5em 0 .5em 2em;
		margin-bottom: 0;
	}

	.schema-faq-section .schema-faq-answer strong::before {
		left: 0;
	}

	.schema-faq.is-style-toggle-btn .schema-faq-question {
		padding-right: 50px;
	}

	.schema-faq.is-style-toggle-btn .schema-faq-question::after {
		width: 40px;
		height: 40px;
		top: calc( 50% - 20px );
		right: 0;
	}

	.schema-faq-section + .schema-faq-section {
		margin-top: 1.5em;
	}

	.schema-how-to .schema-how-to-step-name {
		font-size: var(--wp--preset--font-size--20);
	}

	.schema-how-to .schema-how-to-step {
		padding: 0 0 2em;
	}

	.schema-how-to .schema-how-to-step-text img {
		float: none;
		width: 100%;
		margin: 0;
	}

	.is-style-bg-tree {
		background-position: center top 480px;
		padding-bottom: 80px;
	}

	.is-style-bg-tree::before {
		background-size: 160px;
	}

	.is-style-bg-tree::after {
		top: 560px;
	}

	.is-style-bg-tree.bg-l {
		background-position:
			center bottom,
			center top 200px;
	}

	.is-style-bg-tree.bg-l::after {
		top: 350px;
	}

	.bnr-wrap {
		grid-template-columns: repeat(1, 1fr);
		gap: 1.5em;
	}

	.bnr-block {
		padding: 3em 0 0;
	}

	.bnr-block .bnr {
		margin-bottom: 0;
	}

	.is-style-bg-car-ph {
		background-color: #bad1eb;
		background-size: 720px;
		padding-top: 2.5em;
		padding-bottom: 44vw;
	}

	.is-style-bg-mountain.bottom-line {
		padding-bottom: 3em;
		margin-top: initial;
	}

}


/* cat-menu
---------------------------------------- */

.cat-menu {
	list-style: none;
	padding: 0 1em;
	background-color: var(--wp--preset--color--base);
	border-radius: 1em;
}

.cat-menu > li + li {
	border-top: solid 1px var(--wp--preset--color--gray);
}

.cat-menu > li > a {
	display: block;
	color: var(--wp--preset--color--contrast);
	padding: 18px 24px 18px 0;
	position: relative;
	letter-spacing:.02em;
}

.cat-menu > li > a::after {
	font-family: 'Material Symbols Outlined';
	content: '\e5cc';
	line-height: 20px;
	color: var(--wp--preset--color--primary);
	position: absolute;
	top: calc( 50% - 10px );
	right: 0;
	transition: all .2s;
	transform: scale(1.5);
}

.cat-menu li ul {
	list-style: none;
	padding: 0;
}

.cat-menu li ul li {
	width: 100%;
	border-top: solid 1px var(--wp--preset--color--gray);
}

.cat-menu li ul a {
	display: block;
	color: var(--wp--preset--color--contrast);
	padding: 18px 0 18px 40px;
	position: relative;
}

.cat-menu li ul a::before {
	content: '';
	width: 12px;
	height: 2px;
	background: var(--wp--preset--color--primary);
	position: absolute;
	top: calc( 50% - 1px );
	left: 20px;
}

@media ( min-width: 751px ) {

	.cat-menu a:hover {
		color: var(--wp--preset--color--primary);
	}

	.cat-menu > li > a:hover::after {
		right: -4px;
	}

}


/* bnr
---------------------------------------- */

.bnr a {
	transition: all .4s;
}

/* hover */

@media ( min-width: 751px ) {

	.bnr:hover a {
		transform: scale( 1.05 );
		box-shadow: 0 10px 10px rgba( 0, 0, 0, .05 );
	}

}


/* contact
---------------------------------------- */

.is-style-tel-icon {
	font-family: var(--wp--preset--font-family--geist);
	font-size: var(--wp--preset--font-size--30);
	font-weight: 600;
	letter-spacing: .01em;
	line-height: 1.2;
	transition: all .2s;
}

.is-style-tel-icon::before {
	content: "";
	display: inline-block;
	width: 25px;
	height: 25px;
	background: url(../img/page/icon-tel.png) center center / contain no-repeat;
	margin-right: 8px;
	transform: translateY( 6% );
	transition: all .2s;
}

.is-style-mail-icon::before {
	display: inline-block;
	font-variation-settings:
		'FILL' 0,
		'wght' 300;
	font-family: "Material Symbols Outlined";
	font-weight: 200;
	line-height: 1.2;
	color: var(--wp--preset--color--primary);
	content: '\e158';
	margin-right: 8px;
	transform: translateY( 12% );
	transition: all .2s;
}

.is-style-note {
	font-size: var(--wp--preset--font-size--14);
}

.tel-bnr {
	color: var(--wp--preset--color--contrast);
	background: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--20);
	border: solid 1px var(--wp--preset--color--primary);
	transition: all .2s;
}

/* hover */

@media ( min-width: 751px ) {

	.tel-bnr:hover {
		border-color: var(--wp--preset--color--secondary);
	}

	.tel-bnr:hover .is-style-tel-icon,
	.tel-bnr:hover .is-style-tel-icon::before {
		color: var(--wp--preset--color--secondary) !important;
	}

}

.mail-bnr {
	color: var(--wp--preset--color--base);
	background: var(--wp--preset--color--primary);
	padding: var(--wp--preset--spacing--20);
	border: solid 1px var(--wp--preset--color--primary);
	transition: all .2s;
}

.mail-bnr .is-style-mail-icon::before {
	color: var(--wp--preset--color--base);
	transition: all .2s;
}

/* hover */

@media ( min-width: 751px ) {

	.mail-bnr:hover {
		color: var(--wp--preset--color--primary);
		background: var(--wp--preset--color--light-gray);
	}

	.mail-bnr:hover .is-style-mail-icon::before {
		color: var(--wp--preset--color--primary);
	}

}


/* tab-menu
---------------------------------------- */

.editor-styles-wrapper .tab-menu .tab-cont .cont {
	opacity: 1 !important;
	visibility: visible !important;
	position: relative !important;
}

.tab-menu .tab-btn  {
	padding: 0 var(--wp--preset--spacing--10) !important;
	gap: var(--wp--preset--spacing--10);
}

.tab-menu .tab-btn .tab {
	width: auto !important;
	flex-basis: auto !important;
	cursor: pointer;
	transition: all .2s;
}

.tab-menu .tab-btn .tab.active {
	background: var(--wp--preset--color--primary) !important;
	color: var(--wp--preset--color--base);
}

.tab-menu .tab-cont {
	flex-direction: column;
	position: relative;
}

.tab-menu .tab-cont .cont {
	opacity: 0;
	visibility: hidden;
	position: absolute;
}

.tab-menu .tab-cont .cont.active {
	opacity: 1;
	visibility: visible;
	position: relative;
}

@media ( max-width: 750px ) {

	.tab-menu .tab-cont {
		padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--20) !important;
	}

	.tab-menu .wp-block-heading {
		margin-top: 0 !important;
	}

}

/* hover */

@media ( min-width: 751px ) {

	.tab-menu .tab:hover {
		background: var(--wp--preset--color--gray) !important;
	}

}


/* modal
------------------------------------------------------- */

body.modal-open {
	overflow: hidden;
}

.modal-contents {
	display: grid;
	place-content: center;
	position: fixed;
	inset: 0;
	background: rgba( 0, 0, 0, .8 );
	padding: var(--wp--preset--spacing--30);
	opacity: 0;
	visibility: hidden;
	z-index: -1;
	transition: all .4s;
}

.modal-contents.is-active,
.editor-styles-wrapper .modal-contents {
	opacity: 1;
	visibility: visible;
	z-index: 9999;
}

.modal-contents .cont-wrap {
	position: relative;
}

.modal-contents .cont {
	background: var(--wp--preset--color--base);
	max-width: 800px;
	max-height: 80vh;
	overflow: auto;
	padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--60);
	border-radius: 20px;
}

.modal-contents .close-btn a {
	width: 64px;
	height: 64px;
	position: absolute;
	top: 0;
	right: 0;
	text-indent: -9999px;
	overflow: hidden;
	z-index: 9999;
	transform: translateY( -100% );
	cursor: pointer;
}

.modal-contents .close-btn a::before,
.modal-contents .close-btn a::after {
	content: '';
	display: block;
	position: absolute;
	left: 16px;
	right: 16px;
	height: 2px;
	background: var(--wp--preset--color--base);
	transition: all .2s;
	pointer-events: none;
}

.modal-contents .close-btn a::before {
	top: calc( 50% - 8px );
	-webkit-transform: translateY( 7px ) rotate( -45deg );
	transform: translateY( 7px ) rotate( -45deg );
}

.modal-contents .close-btn a::after {
	top: calc( 50% + 6px );
	-webkit-transform: translateY( -7px ) rotate( 45deg );
	transform: translateY( -7px ) rotate( 45deg );
}


/* comment
---------------------------------------- */

.is-style-comment .image {
	flex-basis: 96px !important;
}

.is-style-comment .balloon {
	flex-basis: calc( 100% - var(--wp--preset--spacing--40) - 96px ) !important;
}

.is-style-comment .balloon .txt {
	display: grid;
	place-items: center start;
	min-height: 96px;
	position: relative;
}

.is-style-comment .balloon .txt::after {
	content: '';
	border-style: solid;
	border-width: 10px 20px;
	border-color: transparent;
	border-left-color: var(--wp--preset--color--light-gray);
	position: absolute;
	top: 38px;
	right: 0;
	transform: translateX( 100% );
}

.is-style-comment .image + .balloon .txt::after {
	border-right-color: var(--wp--preset--color--light-gray);
	border-left-color: transparent;
	right: auto;
	left: 0;
	transform: translateX( -100% );
}

@media ( max-width: 781px ) {

	.is-style-comment {
		gap: 2em !important;
	}

	.is-style-comment.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column.balloon {
		flex-basis: calc( 100% - 2em - 64px ) !important;
	}

	.is-style-comment.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column.image {
		flex-basis: 64px !important;
	}

	.is-style-comment .balloon .txt {
		min-height: 64px;
		padding: .5em 1em !important;
		line-height: 1.8;
	}

	.is-style-comment .balloon .txt::after {
		border-width: 8px 16px;
		top: 24px;
	}

}


/* sp-accordion
---------------------------------------- */

.sp-accordion {
	position: relative;
}

.sp-accordion .more-btn {
	display: none;
	text-transform: capitalize;
	text-align: center;
	margin-top: 1em;
}

.editor-styles-wrapper .sp-accordion .more-btn {
	display: block;
}

.sp-accordion .more-btn .wp-block-button {
	min-width: 180px;
	white-space: nowrap;
}

@media ( max-width: 750px ) {

	.sp-accordion .cont {
		max-height: 6em;
		overflow: hidden;
		position: relative;
	}

	.sp-accordion .cont::after {
		content: '';
		height: 3em;
		background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff);
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		pointer-events: none;
		transition: all .2s;
	}

	.sp-accordion .cont.open::after {
		opacity: 0;
		visibility: hidden;
	}

	.sp-accordion .more-btn {
		display: block;
	}

}


/* history
---------------------------------------- */

.history {
	position: relative;
}

.history::before,
.history::after {
	content: '';
	height: 20px;
	position: absolute;
	right: 0;
	left: 0;
	z-index: 99;
}

.history::before {
	background: linear-gradient(to top, rgba(255, 255, 255, 0), #fff);
	top: 0;
}

.history::after {
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff);
	bottom: 0;
}

.history .cont {
	margin: 0;
	gap: 0;
}

.history .date {
	flex-basis: 100px;
	flex-shrink: 0;
	font-size: 2em;
	font-family: var(--wp--preset--font-family--geist);
	text-align: left;
	line-height: 1;
	color: var(--wp--preset--color--primary);
	padding: 0;
}

.history .read {
	flex-basis: calc( 100% - 100px );
	flex-shrink: 0;
	min-height: 80px;
	display: grid;
	place-content: center start;
	line-height: 1.8;
	padding: 20px 0 20px 30px;
	position: relative;
}

.history .read::before {
	content: '';
	width: 1px;
	background-color: var(--wp--preset--color--gray);
	position: absolute;
	top: 0;
	bottom: 0;
	left: 3px;
}

.history .read::after {
	content: '';
	width: 7px;
	height: 7px;
	background-color: var(--wp--preset--color--primary);
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY( -50% );
}

@media ( max-width: 750px ) {

	.history::before,
	.history::after {
		height: 10px;
	}

	.history .date {
		flex-basis: 80px;
		font-size: 1.75em;
	}

	.history .read {
		flex-basis: calc( 100% - 80px );
		padding: 10px 0 10px 30px;
	}

}


/* data-list
---------------------------------------- */

.data-list {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2em;
}

.data-list .data {
	width: 100%;
	margin: 0;
	padding: 2em;
	text-align: center;
	gap: 4px;
	border: solid 1px var(--wp--preset--color--gray);
}

.data-list .ttl {
	gap: 4px;
}

.data-list .ttl .wp-block-heading {
	display: grid;
	place-content: center;
}

.data-list .ttl .is-style-en {
	color: var(--wp--preset--color--primary);
}

.data-list .data-point {
	justify-content: center;
	font-size: var(--wp--preset--font-size--24);
	font-weight: 600;
	gap: 2px;
	align-items: baseline;
	margin-top: 0;
	color: var(--wp--preset--color--primary);
}

.data-list .data-point .num {
	font-size: 2em;
	line-height: 65px;
}

.data-list .data-point .ja {
	font-size: 1.5em;
}

.data-list .note,
.data-list .sub {
	margin-top: 4px;
}

.data-list .note p,
.data-list .sub p {
	font-size: var(--wp--preset--font-size--14);
	line-height: 1.8;
}

.data-list .note p {
	display: inline-block;
	text-align: left;
	padding-left: 1em;
	text-indent: -1em;
}

.data-list .img {
	margin: 1em 0;
}

@media ( max-width: 750px ) {

	.data-list {
		grid-template-columns: 1fr;
		gap: var(--wp--preset--spacing--20);
	}

	.data-list .data {
		padding: var(--wp--preset--spacing--20);
	}

	.data-list .data-point .num {
		line-height: 1.2;
	}

	.data-list .img {
		margin: var(--wp--preset--spacing--20) 0;
	}

}


/* block-table
---------------------------------------- */

.block-table {
	width: 100%;
	border-top: solid 1px var(--wp--preset--color--gray);
	border-left: solid 1px var(--wp--preset--color--gray);
}

.block-table .thead,
.block-table .tbody {
	width: 100%;
	padding: 0 !important;
}

.block-table .tr {
	align-items: stretch !important;
	width: 100%;
}

.block-table .th,
.block-table .td {
	display: grid;
	place-items: center;
	text-align: center;
	line-height: 1.5;
	padding: 1.2em;
	width: 100%;
	border-right: solid 1px var(--wp--preset--color--gray);
	border-bottom: solid 1px var(--wp--preset--color--gray);
}

.block-table .thead .th,
.block-table .thead .td {
	background: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
}

.block-table .tbody .th {
	text-align: center;
	background: var(--wp--preset--color--light-gray);
}

/* left-header */

.block-table.left-header {
	border-top: none;
	border-left: none;
}

.block-table.left-header .tr > *:first-of-type {
	width: 25%;
}

.block-table.left-header .tr > * {
	width: 75%;
}

.block-table.left-header .th {
	border-right: none;
	border-bottom: solid 1px var(--wp--preset--color--primary);
}

.block-table.left-header .td {
	border-right: none;
	justify-content: start;
	text-align: left;
}

.block-table.left-header .tr:first-of-type .th {
	border-top: solid 1px var(--wp--preset--color--primary);
}

.block-table.left-header .tr:first-of-type .td {
	border-top: solid 1px var(--wp--preset--color--gray);
}

.block-table.left-header .thead .th,
.block-table.left-header .thead .td {
	border: none !important;
}

/* sticky-table */

.sticky-table .scroll-wrap {
	width: 100%;
	overflow: scroll;
	position: relative;
}

.sticky-table .scroll-wrap .wp-block-table table {
	min-width: 480px;
}

.sticky-table .block-table {
	border-left: none;
	background: var(--wp--preset--color--base);
}

.sticky-table .block-table .tr {
	display: grid;
	grid-template-columns: repeat( auto-fit, minmax(80px, 1fr));
}

.sticky-table .block-table .th,
.sticky-table .block-table .td {
	border-bottom: none;
}

.sticky-table .block-table .thead {
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	z-index: 2;
}

.sticky-table .block-table .thead .th:first-child {
	z-index: 3;
}

.sticky-table .block-table .tbody .th,
.sticky-table .block-table .tbody .td {
	background: var(--wp--preset--color--base);
}

.sticky-table .block-table .tbody .tr:nth-of-type( 2n ) .th,
.sticky-table .block-table .tbody .tr:nth-of-type( 2n ) .td {
	background: var(--wp--preset--color--light-gray);
}

.sticky-table .block-table .th:first-child {
	position: -webkit-sticky;
	position: sticky;
	left: 0;
	z-index: 1;
}

.sticky-table + .is-style-note {
	margin-top: 1em;
}

@keyframes swipe {

	0% {
		opacity: 0;
	}
	20% {
		opacity: 1;
	}
	40% {
		opacity: 1;
	}
	60% {
		transform: translateX( -30px );
		opacity: 0;
	}
	100% {
		transform: translateX( -30px );
		opacity: 0;
	}

}

.sticky-table::before {
	display: none;
	font-family: 'Material Symbols Outlined';
	content: '\eb59';
	font-size: 56px;
	line-height: 1;
	color: var(--wp--preset--color--primary);
	position: absolute;
	top: 0;
	right: 0;
	opacity: 0;
	animation: swipe 3s linear 1s infinite normal;
	z-index: 4;
}

@media ( max-width: 480px ) {

	.sticky-table {
		padding-top: 64px;
		margin-top: 1.5em;
		/*
		margin-right: calc(var(--wp--style--root--padding-right) * -1);
		margin-left: calc(var(--wp--style--root--padding-left) * -1);
		*/
		font-size: var(--wp--preset--font-size--15);
		position: relative;
	}

	.sticky-table::before {
		display: block;
	}

	.sticky-table .wp-block-table {
		padding-bottom: 1em;
	}

	.sticky-table .block-table {
		min-width: 1000px;
	}

	.block-table .th,
	.block-table .td {
		padding: .8em;
	}

	.block-table.left-header .th {
		width: 30%;
	}

	.block-table.left-header .tr > *:first-of-type {
		width: 35%;
	}

	.block-table.left-header .tr > * {
		width: 65%;
	}

	.block-table.left-header .td {
		text-align: left;
	}

}


/*
----------------------------------------

buttons

----------------------------------------
*/

.wp-element-button,
.wp-block-button__link {
	transition: all .2s;
}

@media ( max-width: 750px ) {

	.wp-element-button,
	.wp-block-button__link  {
		display: block;
		width: 100%;
		text-align: center;
	}

}


/* arrow-right
---------------------------------------- */

.wp-block-button.is-style-arrow-right .wp-block-button__link {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 325px;
	height: 68px;
	max-width: 100%;
	font-size: var(--wp--preset--font-size--20);
	font-weight: 600;
	position: relative;
	transition: filter .2s, box-shadow .2s, transform .2s;
}

.wp-block-button.is-style-arrow-right .wp-block-button__link::after {
	content: "";
	width: 18px;
	height: 18px;
	background: url(../img/page/arrow-01-base.png) center center / contain no-repeat;
	position: absolute;
	top: calc( 50% - 9px );
	right: 25px;
	transition: all .2s;
}

.wp-block-button.is-style-arrow-right.scroll-btn .wp-block-button__link::after {
	transform: rotate(90deg);
}

.wp-block-button.is-style-arrow-right.outline .wp-block-button__link {
	border: solid 2px var(--wp--preset--color--primary);
	color: var(--wp--preset--color--primary) !important;
	background-color: var(--wp--preset--color--base);
}

.wp-block-button.is-style-arrow-right.outline .wp-block-button__link::after {
	background-image: url(../img/page/arrow-01-primary.png);
}

.wp-block-button.is-style-arrow-right.s-size .wp-block-button__link {
	width: 228px;
	height: 54px;
	font-size: var(--wp--preset--font-size--17);
	padding: 0 2.5em 0 1em;
}

.wp-block-button.is-style-arrow-right.s-size .wp-block-button__link::after {
	right: 20px;
}

.wp-block-button.is-style-arrow-right.shadow .wp-block-button__link {
	box-shadow: 0 2px 0 var(--wp--preset--color--secondary);
}

@media ( max-width: 750px ) {

	.wp-block-button.is-style-arrow-right,
	.wp-block-button.is-style-arrow-right .wp-block-button__link {
		width: 100%;
	}

	.wp-block-button.is-style-arrow-right .wp-block-button__link {
		height: 60px;
	}

}

@media ( min-width: 751px ) {

	.wp-block-button.is-style-arrow-right.shadow .wp-block-button__link:hover {
		box-shadow: 0 0 0 var(--wp--preset--color--secondary);
		transform: translateY(2px);
	}

}


/* arrow-left
---------------------------------------- */

.wp-block-button.is-style-arrow-left .wp-block-button__link {
	font-weight: 600;
	border: solid 2px var(--wp--preset--color--primary);
	padding: .5em 2.5em;
	position: relative;
}

.wp-block-button.is-style-arrow-left .wp-block-button__link::after {
	font-family: 'Material Symbols Outlined';
	content: '\e5cb';
	font-variation-settings:
		'FILL' 0,
		'wght' 300;
	line-height: 20px;
	position: absolute;
	top: calc( 50% - 10px );
	left: 10px;
	transition: all .2s;
	transform: scale(1.5);
}

/* hover */

@media ( min-width: 751px ) {

	.wp-block-button.is-style-arrow-left .wp-block-button__link:hover {
		background: var(--wp--preset--color--base);
		color: var(--wp--preset--color--primary);
	}

	.wp-block-button.is-style-arrow-left .wp-block-button__link:hover::after {
		left: 6px;
		color: var(--wp--preset--color--primary);
	}

}


/* view-more
---------------------------------------- */

.is-style-view-more .wp-block-button__link {
	display: inline-block;
	font-family: var(--wp--preset--font-family--geist);
	text-transform: capitalize;
	padding: 6px 32px 6px 6px;
	border: none;
	border-bottom: solid 1px var(--wp--preset--color--primary);
	color: var(--wp--preset--color--primary);
	background: transparent;
	position: relative;
}

.is-style-view-more .wp-block-button__link::after {
	font-family: 'Material Symbols Outlined';
	content: '\e5cc';
	line-height: 20px;
	position: absolute;
	top: calc( 50% - 10px );
	right: 6px;
	transition: all .2s;
}

/* hover */

@media ( min-width: 751px ) {

	.is-style-view-more .wp-block-button__link:hover::after {
		right: 0;
	}

}


/* page-menu
---------------------------------------- */

.page-menu {
	padding: var(--wp--preset--spacing--30);
	background-color: var(--wp--preset--color--light-gray);
}

.page-menu .wp-block-buttons {
	gap: var(--wp--preset--spacing--20);
}

.wp-block-buttons:has( .is-style-page-menu ) {
	width: 100%;
}

.wp-block-button.is-style-page-menu {
	flex: 1;
}

.wp-block-button.is-style-page-menu .wp-block-button__link {
	display: block;
	width: 100%;
	background: var( --wp--preset--color--base );
	color: var( --wp--preset--color--contrast );
	border: solid 1px var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--17);
	white-space: nowrap;
	color: var(--wp--preset--color--primary);
	padding-right: var(--wp--preset--spacing--10);
	padding-left: var(--wp--preset--spacing--10);
}

.wp-block-button.is-style-page-menu .wp-block-button__link::after {
	font-family: 'Material Symbols Outlined';
	content: '\e5cf';
	display: block;
	text-align: center;
	line-height: 20px;
	transition: all .2s;
}


@media ( max-width: 750px ) {

	.page-menu {
		padding: var(--wp--preset--spacing--20) !important;
	}

	.page-menu .is-layout-flex {
		gap: var(--wp--preset--spacing--20) 0;
	}

	.page-menu .wp-block-button {
		flex: auto;
		width: calc( ( 100% - var(--wp--preset--spacing--20) ) / 2 );
	}

	.page-menu .wp-block-button:nth-child( even ) {
		margin-left: var(--wp--preset--spacing--20);
	}

	.wp-block-button.is-style-page-menu .wp-block-button__link {
		width: 100%;
	}

}

/* hover */

@media ( min-width: 751px ) {

	.wp-block-button.is-style-page-menu .wp-block-button__link:hover {
		background: var( --wp--preset--color--primary );
		color: var( --wp--preset--color--base );
	}

	.wp-block-button.is-style-page-menu .wp-block-button__link:hover::after {
		transform: translateY( 5px );
		color: var( --wp--preset--color--base );
	}

}


/* mail-btn / tel-btn
---------------------------------------- */

.is-style-mail-btn .wp-element-button,
.is-style-tel-btn .wp-element-button {
	padding: var(--wp--preset--spacing--10) var(--wp--preset--spacing--30);
	transition-property: color, background-color, border;
	transition-duration: .2s;
}

.is-style-mail-btn .wp-element-button::before,
.is-style-tel-btn .wp-element-button::before {
	display: inline-block;
	font-variation-settings:
		'FILL' 0,
		'wght' 300;
	font-family: "Material Symbols Outlined";
	font-size: 1.2em;
	font-weight: 200;
	line-height: 1.2;
	color: var(--wp--preset--color--base);
	content: '';
	margin-right: 8px;
	transform: translateY( 5px );
	transition: color .2s;
}

.is-style-mail-btn .wp-element-button::before {
	content: '\e158';
}

.is-style-tel-btn .wp-element-button::before {
	content: '\e61d';
}

/* hover */

@media ( min-width: 751px ) {

	.is-style-mail-btn .wp-element-button:hover,
	.is-style-tel-btn .wp-element-button:hover {
		background: var(--wp--preset--color--base);
		color: var(--wp--preset--color--primary);
	}

	.is-style-mail-btn .wp-element-button:hover::before,
	.is-style-tel-btn .wp-element-button:hover::before {
		color: var(--wp--preset--color--primary);
	}

}

/* map-btn
---------------------------------------- */

.wp-block-button.is-style-map-btn .wp-block-button__link {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: .5em;
	width: 228px;
	height: 54px;
	max-width: 100%;
	font-size: var(--wp--preset--font-size--17);
	font-weight: 600;
	padding: 0 1em;
	position: relative;
	transition: filter .2s, box-shadow .2s, transform .2s;
}

.wp-block-button.is-style-map-btn .wp-block-button__link::before {
	content: '\e0c8';
	display: inline-block;
	font-variation-settings:
		'FILL' 0,
		'wght' 400;
	font-family: "Material Symbols Outlined";
	font-size: 1.5em;
	font-weight: 200;
	color: var(--wp--preset--color--base);
	transition: color .2s;
}

@media ( max-width: 750px ) {

	.wp-block-button.is-style-map-btn,
	.wp-block-button.is-style-map-btn .wp-block-button__link {
		width: 100%;
	}

	.wp-block-button.is-style-map-btn .wp-block-button__link {
		height: 60px;
	}

}

@media ( min-width: 751px ) {

	.wp-block-button.is-style-map-btn.shadow .wp-block-button__link:hover {
		box-shadow: 0 0 0 var(--wp--preset--color--secondary);
		transform: translateY(2px);
	}

}

/* external-btn
---------------------------------------- */

.wp-block-button.is-style-external-btn .wp-block-button__link {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: .5em;
	height: 54px;
	max-width: 100%;
	font-size: var(--wp--preset--font-size--15);
	font-weight: 600;
	color: var(--wp--preset--color--base);
	padding: 0 1em 2px 1.5em;
	position: relative;
	transition: filter .2s, box-shadow .2s, transform .2s;
}

.wp-block-button.is-style-external-btn .wp-block-button__link::after {
	content: '\e89e';
	display: inline-block;
	font-variation-settings:
		'FILL' 0,
		'wght' 400;
	font-family: "Material Symbols Outlined";
	font-size: 1.5em;
	font-weight: 200;
	color: var(--wp--preset--color--base);
	transition: color .2s;
	transform: translateY(1px);
}

@media ( max-width: 750px ) {

	.wp-block-button.is-style-external-btn,
	.wp-block-button.is-style-external-btn .wp-block-button__link {
		width: 100%;
	}

	.wp-block-button.is-style-external-btn {
		width: 100%;
	}

}

@media ( min-width: 751px ) {

	.wp-block-button.is-style-external-btn.shadow .wp-block-button__link:hover {
		box-shadow: 0 0 0 var(--wp--preset--color--secondary);
		transform: translateY(2px);
	}

}


/*
----------------------------------------

list

----------------------------------------
*/


/* ul-list / ol-list
---------------------------------------- */

.is-style-ul-list,
.is-style-ol-list {
	list-style: none;
	padding: 0;
}

.is-style-ul-list li,
.is-style-ol-list li {
	padding-left: 1.4em;
	position: relative;
	line-height: 1.6;
	text-align: left;
}

.is-style-ul-list li + li,
.is-style-ol-list li + li {
	margin-top: var(--wp--preset--spacing--10);
}

.is-style-ul-list li::before {
	content: '';
	width: 6px;
	height: 6px;
	background: var(--wp--preset--color--primary);
	border-radius: 50%;
	position: absolute;
	top: .6em;
	left: .4em;
}

.is-style-ol-list {
	counter-reset: ol;
}

.is-style-ol-list li::before {
	content: counters( ol, '.') '. ';
	counter-increment: ol;
	display: inline-block;
	min-width: 1em;
	color: var(--wp--preset--color--primary);
	font-family: var(--wp--preset--font-family--geist);
	font-size:  1.1em;
	position: absolute;
	top: -.05em;
	left: .2em;
}


/* check-list
---------------------------------------- */

.is-style-check-list {
	padding-left: 0;
	margin: 0 auto;
	list-style: none;
}

.is-style-check-list li {
	position: relative;
	padding-left: 1.8em;
	line-height: 1.8;
	text-align: left;
}

.is-style-check-list li::before {
	font-family: "Material Symbols Outlined";
	font-size: 1.5em;
	font-weight: 300;
	line-height: 1.2;
	color: var(--wp--preset--color--primary);
	content: '\f1fe';
	position: absolute;
	top: 0;
	left: 0;
}

.is-style-check-list li + li {
	margin-top: var(--wp--preset--spacing--10);
}

/* annotation-list
---------------------------------------- */

.is-style-annotation-list {
	padding-left: 0;
	margin: 0 auto;
	list-style: none;
}

.is-style-annotation-list li {
	position: relative;
	padding-left: 1em;
	font-size: var(--wp--preset--font-size--14);
	line-height: 1.8;
	text-align: left;
	text-indent: -1em;
}

.is-style-annotation-list li > * {
	display: inline;
}

.is-style-annotation-list li::before {
	content: '※';
	display: inline;
}

.is-style-annotation-list li + li {
	margin-top: .4em;
}

/* label-list
---------------------------------------- */

.is-style-label-list {
	list-style: none;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: .8em;
}

.is-style-label-list li {
	display: grid;
	place-content: center;
	height: 48px;
	border-radius: 24px;
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
}

.is-style-label-list li.none {
	background-color: var(--wp--preset--color--light-gray);
	color: var(--wp--preset--color--dark-gray);
}

/*
----------------------------------------

table

----------------------------------------
*/

.wp-block-table th {
	font-weight: 600;
}

.wp-block-table .price {
	color: var(--wp--preset--color--primary);
	padding: 0 1em;
	line-height: 1.2;
	white-space: nowrap;
}

.wp-block-table .price em {
	font-style: normal;
	font-size: 1.5em;
	margin-left: .2em;
}

.wp-block-table td > em {
	font-style: normal;
	font-size: var(--wp--preset--font-size--14);
}

.first-bg tbody td:first-child {
	background-color: var(--wp--preset--color--custom-ivory);
	color: var(--wp--preset--color--primary);
	font-weight: 600;
}

/* table-01
---------------------------------------- */

.is-style-table-01 table {
	border-collapse: collapse;
	border-spacing: 0;
	border-top: solid 1px var( --wp--preset--color--primary );
	border-left: solid 1px var( --wp--preset--color--primary );
	line-height: 1.5;
}

.is-style-table-01 thead {
	background: var( --wp--preset--color--secondary );
	color: #fff;
	border: none;
}

.is-style-table-01 th,
.is-style-table-01 td,
.is-style-table-01 .wp-element-caption {
	border-color: var( --wp--preset--color--primary );
	border-style: solid;
	border-width: 0 1px 1px 0;
	padding: 1em;
	text-align: center;
}

.is-style-table-01 tfoot {
	border-top: none;
	background: var(--wp--preset--color--light-gray);
}

.is-style-table-01 .wp-element-caption {
	border: none;
}


/* table-02
---------------------------------------- */

.is-style-table-02 table {
	border: none;
}

.is-style-table-02 thead {
	background: var( --wp--preset--color--secondary );
	color: var( --wp--preset--color--base );
	border: none;
}

.is-style-table-02 thead th,
.is-style-table-02 thead td {
	border: none;
	padding: 12px;
	text-align: center;
}

.is-style-table-02 tbody tr:nth-child(odd) {
	background-color: var(--wp--preset--color--custom-ivory);
}

.is-style-table-02 tbody th,
.is-style-table-02 tbody td {
	border: none;
	padding: 1em;
	text-align: center;
	line-height: 1.5;
}

.is-style-table-02 tbody tr > *:first-child {
	width: 30%;
	color: var(--wp--preset--color--primary);
	font-weight: 600;
}

.is-style-table-02 .wp-element-caption {
	border: none;
}

.is-style-table-02 tfoot {
	border: none;
	color: var( --wp--preset--color--dark-gray );
}

@media ( max-width: 1000px ) {

	.is-style-label-list {
		grid-template-columns: repeat(3, 1fr);
	}

}

@media ( max-width: 750px ) {

	.is-style-table-02 tbody th,
	.is-style-table-02 tbody td {
		padding: 16px 8px;
	}

	.is-style-table-02 tbody tr > *:first-child {
		width: 33%;
	}

	.is-style-label-list {
		display: flex;
		flex-wrap: wrap;
		gap: .4em;
	}

	.is-style-label-list li {
		height: 32px;
		padding: .2em 1em .4em;
	}

	.wp-block-table .has-fixed-layout {
		table-layout: auto;
	}

	.is-style-table-01 th,
	.is-style-table-01 td,
	.is-style-table-01 .wp-element-caption {
		padding: 1em .5em;
	}

	.wp-block-table .price {
		padding: 0;
	}

	.wp-block-table .price em {
		font-size: 1.25em;
	}

}


/*
----------------------------------------

heading

----------------------------------------
*/

.is-style-heading-01,
.is-style-heading-02,
.is-style-heading-03,
.is-style-heading-04,
.is-style-heading-05 {
	font-family: var(--wp--preset--font-family--noto-sans-jp);
}

* + .is-style-heading-01,
* + .is-style-heading-02,
* + .is-style-heading-03,
* + .is-style-heading-04,
* + .is-style-heading-05 {
	margin-block-start: 2em;
}

/* heading-01
---------------------------------------- */

.is-style-heading-01 {
	border-top: solid 2px var(--wp--preset--color--primary);
	border-bottom: solid 2px var(--wp--preset--color--primary);
	padding: .8em 0;
	font-size: var(--wp--preset--font-size--24);
	text-align: center;
}

/* heading-02
---------------------------------------- */

.is-style-heading-02 {
	background: var(--wp--preset--color--light-gray);
	padding: .6em .8em;
	font-size: var(--wp--preset--font-size--24);
}

/* heading-03
---------------------------------------- */

.is-style-heading-03 {
	border-left: solid 4px var(--wp--preset--color--primary);
	padding: .4em .8em;
	font-size: var(--wp--preset--font-size--20);
}

/* heading-04
---------------------------------------- */

.is-style-heading-04 {
	padding-bottom: .6em;
	margin-bottom: .6em;
	border-bottom: solid 1px var(--wp--preset--color--gray);
	font-size: var(--wp--preset--font-size--34);
	line-height: 1.4;
	position: relative;
}

.is-style-heading-04::before,
.is-style-heading-04::after {
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background-color: var(--wp--preset--color--gray);
	position: absolute;
	bottom: -4px;
}

.is-style-heading-04::before {
	left: -1px;
}

.is-style-heading-04::after {
	right: -1px;
}

/* heading-05
---------------------------------------- */

.is-style-heading-05 {
	padding-left: 24px;
	position: relative;
	font-size: var(--wp--preset--font-size--20);
}

.is-style-heading-05::before {
	content: '';
	width: 16px;
	height: 3px;
	background: var(--wp--preset--color--primary);
	position: absolute;
	top: .8em;
	left: 0;
}

/* heading-06
---------------------------------------- */

.is-style-heading-06 {
	font-size: var(--wp--preset--font-size--20);
	padding-bottom: var(--wp--preset--spacing--10);
	border-bottom: double 3px var(--wp--preset--color--primary);
}

/* heading-07
---------------------------------------- */

.is-style-heading-07 {
	position: relative;
	padding-bottom: var(--wp--preset--spacing--20);
	background: transparent;
}

.is-style-heading-07::before {
	content: '';
	width: 40px;
	height: 2px;
	background: var( --wp--preset--color--primary );
	position: absolute;
	bottom: 0;
	left: 0;
}

.is-style-heading-07.has-text-align-center::before {
	left: calc( 50% - 20px );
}

.is-style-heading-07.has-text-align-right::before {
	right: 0;
	left: auto;
}

.wp-block-cover .is-style-heading-07::before {
	background: #fff;
}

/* heading-08
---------------------------------------- */

.is-style-heading-08 {
	background: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
	border-radius: .5em;
	text-align: center;
	padding: .6em .8em;
	font-size: var(--wp--preset--font-size--24);
}

/* heading-09
--------------------------------------- */

.is-style-heading-09 {
	font-size: var(--wp--preset--font-size--28);
	padding-bottom: .5em;
	background: url(../img/page/dot-border.png) left bottom / auto 3px repeat-x;
}

/*
@media ( max-width: 1000px ) {

	.is-style-heading-01,
	.is-style-heading-02,
	.is-style-heading-03,
	.is-style-heading-04,
	.is-style-heading-05 {
		margin-block-start: 1.5em !important;
	}

}
*/

@media ( max-width: 1000px ) {

	.is-style-heading-04 {
		font-size: var(--wp--preset--font-size--24);
	}

	.is-style-heading-08 {
		font-size: var(--wp--preset--font-size--20);
	}

}

@media ( max-width: 750px ) {

	.is-style-heading-04 {
		text-align: center;
	}

}

/*
----------------------------------------

title

----------------------------------------
*/


/* ttl-01
---------------------------------------- */


.ttl-01 {
	position: relative;
	padding-bottom: var(--wp--preset--spacing--40);
	margin-top: var(--wp--preset--spacing--60);
	text-align: center;
}

.ttl-01::before {
	content: '';
	width: 2px;
	height: var(--wp--preset--spacing--40);
	background: var( --wp--preset--color--primary );
	position: absolute;
	bottom: 0;
	left: calc( 50% - 1px );
}

.ttl-01 .is-style-en {
	font-size: var(--wp--preset--font-size--64);
	font-weight: 400;
	line-height: 1;
	text-align: center;
}

.ttl-01 .wp-block-heading {
	margin-top: var(--wp--preset--spacing--20);
	margin-bottom: var(--wp--preset--spacing--20);
	font-weight: 400;
	line-height: 1.2;
}


/* ttl-02
---------------------------------------- */

.ttl-02 {
	position: relative;
	padding-bottom: 5px;
}

.ttl-02::before {
	content: '';
	width: 40px;
	height: 2px;
	background: var( --wp--preset--color--primary );
	position: absolute;
	bottom: 0;
	left: 0;
}

.ttl-02.is-content-justification-center::before {
	left: calc( 50% - 20px );
}

.ttl-02.is-content-justification-right::before {
	right: 0;
	left: auto;
}

.ttl-02.is-content-justification-center > * {
	text-align: center;
}

.ttl-02.is-content-justification-right > * {
	text-align: right;
}

.ttl-02 .wp-block-heading {
	font-size: var(--wp--preset--font-size--18);
	font-weight: 400;
}

.ttl-02 .is-style-en {
	font-size: var(--wp--preset--font-size--32);
	line-height: 1.5;
	margin: var(--wp--preset--spacing--10) 0 var(--wp--preset--spacing--30);
}


/*
----------------------------------------

layout

----------------------------------------
*/

/* img-txt
---------------------------------------- */

.img-txt {
	margin-top: var(--wp--preset--spacing--80);
	gap: var(--wp--preset--spacing--30) 0px;
}

.img-txt .img img {
	width: 100%;
	min-height: 400px;
	max-height: 600px;
}

.img-txt .txt {
	padding: 0 var(--wp--preset--spacing--40);
}

.img-txt .txt-wrap {
	width: calc( 550px - var(--wp--preset--spacing--40) );
	max-width: 100%;
	margin: 0 0 0 auto;
}

.img-txt .img + .wp-block-column .txt-wrap {
	margin: 0 auto 0 0;
}


@media ( max-width: 1000px ) {

	.img-txt .img {
		flex-basis: 45% !important;
	}

	.img-txt .txt {
		padding: 0 var(--wp--preset--spacing--30);
	}

	:where(.img-txt .is-layout-constrained) > * {
		margin-block-start: 1.5em;
	}

}


@media ( max-width: 1000px ) {

	.img-txt .img img {
		min-height: 40vw;
	}

	.img-txt .txt p {
		margin-top: 1.5em;
		line-height: 1.8;
	}

	.img-txt .txt .wp-block-buttons {
		margin-top: 1.5em;
	}

}


@media ( max-width: 750px ) {

	.img-txt {
		gap: var(--wp--preset--spacing--40) 0 !important;
	}

	.img-txt .img {
		order: 1;
	}

	.img-txt .txt {
		order: 2;
	}

	.img-txt .txt-wrap {
		width: 100%;
	}

	.img-txt .wp-block-buttons {
		justify-content: center;
	}

	.has-text-align-center.is-style-sp-left {
		text-align: left;
		letter-spacing: .02em;
	}

}



/* column-list
---------------------------------------- */

.column-list {
	margin-top: var(--wp--preset--spacing--80);
}

.column-list .wp-block-heading {
	margin-top: var(--wp--preset--spacing--10);
}

.column-list .cont-wrap {
	gap: var(--wp--preset--spacing--20);
}


/* step-column
---------------------------------------- */

.step-column {
	counter-reset: step-column;
	position: relative;
	margin-top: var(--wp--preset--spacing--80);
	gap: var(--wp--preset--spacing--40) 48px;
}

.step-column .wp-block-column {
	position: relative;
}

.step-column .step-arrow {
	margin: 0;
}

.step-column .wp-block-image {
	position: relative;
	text-align: center;
	aspect-ratio: 1 / 1;
	background-color: var(--wp--preset--color--base);
	border: solid 4px var(--wp--preset--color--custom-ivory);
	border-radius: 50%;
	padding: 36px;
}

.step-column .wp-block-image * {
	display: inline-block !important;
}

.step-column .wp-block-column + .wp-block-column .step-arrow::before {
	font-family: 'Material Symbols Outlined';
	color: var(--wp--preset--color--primary);
	content: '\e5cc';
	width: 40px;
	height: 40px;
	display: grid;
	place-content: center;
	font-size: 32px;
	line-height: 40px;
	position: absolute;
	top: calc( 50% - 20px );
	left: calc( -24px - 20px );
	transition: all .2s;
}

.step-column .step-arrow + p {
	margin-top: var(--wp--preset--spacing--30);
}

.step-column .txt {
	margin: var(--wp--preset--spacing--30) 0 0;
}

.step-column .txt p {
	margin-top: var(--wp--preset--spacing--20);
}

.num-label,
.step-num-label {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding-top: 2px;
	font-size: var(--wp--preset--font-size--20);
	text-align: center;
	background: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--base);
	font-family: var(--wp--preset--font-family--geist);
	font-weight: 600;
	position: absolute !important;
	top: 0;
	left: 0;
	z-index: 1;
}

.step-num-label {
	width: 72px;
	height: 72px;
	line-height: 1.2;
	text-transform: uppercase;
	font-size: var(--wp--preset--font-size--14);
}

.step-num-label strong {
	color: var( --wp--preset--color--base );
	font-size: var(--wp--preset--font-size--20);
}

.step-column .step-num-label {
	width: 64px;
	height: 64px;
}

@media ( max-width: 1000px ) {

	.step-column {
		gap: var(--wp--preset--spacing--30) 36px !important;
	}

	.step-column .wp-block-column + .wp-block-column .step-arrow::before {
		left: -34px;
	}

	.step-column .step-num-label {
		width: 48px;
		height: 48px;
		font-size: var(--wp--preset--font-size--12);
	}

}


@media ( max-width: 750px ) {

	.step-box {
		padding-bottom: 0;
	}

	.step-column {
		gap: 40px !important;
	}

	.step-column img {
		aspect-ratio: 16 / 9 !important;
	}

	.step-column .wp-block-column + .wp-block-column {
		margin-top: 0;
	}

	.step-column .wp-block-column + .wp-block-column .step-arrow::before {
		content: '\e5cf';
		top: -40px;
		left: calc( 50% - 20px );
	}

	.step-column .wp-block-column.icon {
		display: flex;
		align-items: center;
	}

	.step-column .wp-block-column.icon .step-arrow {
		width: 140px;
	}

	.step-column .wp-block-column.icon .wp-block-image {
		margin: 0 !important;
		padding: 24px;
	}

	.step-column .wp-block-column.icon img {
		aspect-ratio: 1 / 1 !important;
	}

	.step-column .wp-block-column.icon .txt {
		width: calc( 100% - 140px );
		margin: 0 !important;
		font-size: var(--wp--preset--font-size--14);
		letter-spacing: .02em;
		line-height: 1.8;
	}

	.step-column .wp-block-column.icon .txt h3 {
		text-align: left;
	}

	.step-column .txt p {
		margin-top: .2em;
	}

}


/* column
---------------------------------------- */

@media ( max-width: 1000px ) {

	.wp-block-columns.column {
		gap: var(--wp--preset--spacing--20) !important;
	}

}


@media ( max-width: 750px ) {

	.wp-block-columns.column {
		gap: var(--wp--preset--spacing--60) !important;
	}

	.wp-block-columns.column img {
		aspect-ratio: 16 / 9 !important;
	}

}


/* step-column
---------------------------------------- */

.step-list {
	margin-top: var(--wp--preset--spacing--60);
}

.step-list .wp-block-columns {
	position: relative;
	margin: 0;
}

.step-list .wp-block-columns::before {
	content: '';
	width: 2px;
	height: 100%;
	background: var(--wp--preset--color--gray);
	position: absolute;
	top: 0;
	left: 35px;
}

.step-list > div:last-of-type::before {
	display: none;
}

.step-list .col  {
	padding: 0 0 var(--wp--preset--spacing--40) 90px;
	gap: 1.5em;
}

.step-list .col .txt {
	position: static;
}

.step-list .col .txt > * + * {
	margin-top: 1em;
}

.step-list .col .txt .ttl {
	font-size: var(--wp--preset--font-size--24);
	font-weight: 600;
	margin-top: .75em;
}

.step-list .col .txt .wp-block-heading {
	color: var(--wp--preset--color--primary);
}

.step-list .col .img {
	flex: 0 0 320px !important;
}

.step-list .col .img img {
	border-radius: 1em;
}

.step-list .wp-block-template-part:has( .btn-set ) {
	margin-block-start: 1.5rem;
}

.step-list .btn-set {
	gap: var(--wp--preset--spacing--20);
	padding: 0 !important;
}

.step-list .btn-set > * {
	flex: 1;
}

.step-list .wp-block-button {
	width: 100%;
}

.step-list .link-to-cover-and-group-blocks:has( .tel-link ) {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 72px;
	padding-bottom: 5px;
	border: solid 1px var(--wp--preset--color--gray);
	transition: all .2s;
}


@media ( max-width: 1000px ) {

	.step-num-label {
		width: 56px;
		height: 56px;
	}

	.step-list .wp-block-columns {
		gap: 1rem;
	}

	.step-list .wp-block-columns::before {
		left: 27px;
	}

	.step-list .col {
		padding-left: 72px !important;
		flex-basis: 70% !important;
	}

	.step-list .txt .wp-block-heading {
		margin: .5em 0 !important;
	}

	.step-list .col .txt > * + * {
		margin-top: .5em;
	}

	.step-list .txt p {
		margin-block-start: 0;
		letter-spacing: 0;
	}

	.step-list .col .img {
		flex: 0 0 240px !important;
	}

}


@media ( max-width: 750px ) {

	.step-list {
		margin-top: var(--wp--preset--spacing--40);
	}

	.step-list .col .txt {
		font-size: var(--wp--preset--font-size--15);
		line-height: 1.8;
	}

	.step-num-label {
		width: 48px;
		height: 48px;
		font-size: var(--wp--preset--font-size--12);
		line-height: 1.1;
	}

	.step-num-label strong {
		font-size: var(--wp--preset--font-size--17);
	}

	.step-list .wp-block-columns::before {
		left: 23px;
	}

	.step-list .col {
		padding-left: 60px !important;
		padding-bottom: 0 !important;
	}

	.step-list .col .img {
		flex: 1 !important;
		margin-bottom: 1.5em;
	}

	.step-list .btn-set {
		flex-direction: column;
	}

	.step-list .btn-set > * {
		flex: auto;
		width: 100%;
	}

	.step-list .wp-block-template-part:has( .btn-set ) {
		margin-block-start: 1rem;
	}

}

/* hover */

@media screen and ( min-width: 751px ) {

	.step-list .link-to-cover-and-group-blocks:has( .tel-link ):hover {
		border-color: var(--wp--preset--color--primary);
	}

}


/* border-block
---------------------------------------- */

@media ( max-width: 750px ) {

	.border-block {
		padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--20) !important;
	}

}


/* bg-block
---------------------------------------- */

@media ( max-width: 750px ) {

	.bg-block {
		padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--20) !important;
	}

}


/* txt-bnr-m
---------------------------------------- */

@media ( max-width: 750px ) {

	.txt-bnr-m .wp-block-cover {
		min-height: 160px !important;
	}

}


/* contact-block
---------------------------------------- */

@media ( max-width: 750px ) {

	.contact-block {
		padding: var(--wp--preset--spacing--50) var(--wp--preset--spacing--20) !important;
	}

	.contact-block .txt {
		margin-top: var(--wp--preset--spacing--20) !important;
		text-align: left !important;
	}

	.contact-block .btn {
		margin-top: var(--wp--preset--spacing--20) !important;
	}

}


/* info-list
---------------------------------------- */

.info-list {
	gap: var(--wp--preset--spacing--10);
}

.info-list .row {
	gap: var(--wp--preset--spacing--10) var(--wp--preset--spacing--30);
}

.info-list .info-item {
	gap: 0;
}

.info-list .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column.ttl {
	flex-basis: 8em !important;
	flex-shrink: 0 !important;
}

.info-list .ttl > * {
	font-size: var(--wp--preset--font-size--17);
	font-weight: normal;
	text-align: center;
	background-color: var(--wp--preset--color--light-gray);
	padding: 2px;
	border-radius: 16px;
	line-height: 1.8;
}

.info-list .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column.txt {
	flex-basis: calc( 100% - 8em ) !important;
	padding: 2px 0 2px var(--wp--preset--spacing--20);
	line-height: 1.8;
}

@media ( max-width: 750px ) {

	.info-list .row {
		width: 100%;
		flex-direction: column;
		align-items: flex-start;
	}

	.info-list .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column.ttl {
		flex-basis: 7em !important;
	}

	.info-list .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column.txt {
		flex-basis: calc( 100% - 7em ) !important;
	}

}


/*
----------------------------------------

FAQ

----------------------------------------
*/

.faq-list {
	margin-top: var(--wp--preset--spacing--80);
}

.faq-list p {
	margin-top: var(--wp--preset--spacing--20);
}

.faq-list .q-icon {
	width: 48px;
	height: 48px;
	line-height: 48px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
	padding-top: 4px;
	margin: 0 !important;
	background: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
	font-family: var(--wp--preset--font-family--geist);
}

.faq-list .q-icon + .wp-block-heading {
	flex: 1;
}


@media ( max-width: 1000px ) {

	.faq-list .a {
		padding: var(--wp--preset--spacing--30) !important;
	}

}


@media ( max-width: 750px ) {

	.faq-list .q-icon {
		width: 40px;
		height: 40px;
		line-height: 40px;
	}

	.faq-list .a {
		padding: var(--wp--preset--spacing--20) !important;
	}

	.faq-list p {
		margin-top: var(--wp--preset--spacing--10);
	}

}

/*
----------------------------------------

query

----------------------------------------
*/

/* query
------------------------------------------------------- */

.wp-block-query .post-list {
	list-style: none;
	padding: 0;
}

.wp-block-query .post-list .wp-block-post {
	transform-origin: bottom center;
	transition: all .5s;
}

.wp-block-query .post-list .thumb {
	transition: all .2s;
	overflow: hidden;
}

.wp-block-query .post-list img {
	transition: all .6s;
}

.wp-block-query .wp-block-post:has( .wp-block-read-more ) {
	position: relative;
}

.editor-styles-wrapper .wp-block-query .wp-block-post:has( .wp-block-read-more ) {
	pointer-events: none;
}

.wp-block-query .wp-block-read-more.txt-none {
	padding: 0 !important;
}

.wp-block-query .wp-block-read-more.txt-none .btn {
	display: none;
}

/* is-style-slider-posts */

.is-style-slider-posts {
	position: relative
}

/*
.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) .is-style-slider-posts {
	margin-right: calc( var(--wp--preset--spacing--10) * -1 );
	margin-left: calc( var(--wp--preset--spacing--10) * -1 );
}
*/

.is-style-slider-posts .post-list {
	display: flex !important;
	justify-content: center;
	text-align: left;
	padding-bottom: var(--wp--preset--spacing--10);
	transition: all .2s;
}

.is-style-slider-posts .post-list.post-list.slick-slider {
	visibility: hidden;
	opacity: 0;
}

.editor-styles-wrapper .is-style-slider-posts .post-list.slick-slider,
.is-style-slider-posts .post-list.slick-slider.slick-initialized {
	visibility: visible;
	opacity: 1;
}

.is-style-slider-posts .slick-slide {
	margin: 0 .8em;
}

.is-style-slider-posts .post .wp-block-read-more {
	padding: 0;
	text-indent: -9999px;
	overflow: hidden;
	background-color: transparent !important;
}

@media screen and ( max-width: 1200px ) {

	.wp-block-query .post-list {
		gap: var(--wp--preset--spacing--40);
	}

}

@media screen and ( max-width: 750px ) {

	/*
	.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) .is-style-slider-posts {
		margin-right: calc( var(--wp--preset--spacing--20) * -1 );
		margin-left: calc( var(--wp--preset--spacing--20) * -1 );
	}
	*/

}

/* is-style-full-slider-posts */

.is-style-full-slider-posts .post-list {
	display: flex !important;
	justify-content: center;
	padding-bottom: var(--wp--preset--spacing--10);
	transition: all .2s;
}

.is-style-full-slider-posts .post-list.slick-slider {
	visibility: hidden;
	opacity: 0;
}

.editor-styles-wrapper .is-style-full-slider-posts .post-list,
.is-style-full-slider-posts .post-list.slick-initialized {
	visibility: visible;
	opacity: 1;
}

.is-style-full-slider-posts .slick-slide {
	margin: 0 var(--wp--preset--spacing--10);
}

.is-style-full-slider-posts .post .wp-block-read-more {
	padding: 0;
	text-indent: -9999px;
	overflow: hidden;
	background-color: transparent !important;
}

/* is-layout-grid */

.post-list.is-layout-grid {
	border: none;
}

.post-list.is-layout-grid .post-item {
	flex-direction: column;
	flex-wrap: nowrap !important;
	padding: 0;
	border: none;
	gap: 0;
	margin: 0;
	height: 100%;
}

.post-list.is-layout-grid .post-title-meta {
	gap: 1em;
}

.post-list.is-layout-grid .post-item .post-meta {
	width: inherit !important;
	line-height: .5;
}

.post-list.is-layout-grid .post-item .term .wp-block-post-terms__separator {
	display: none;
}

.post-list.is-layout-grid .post-item .term a {
	display: none;
}

.post-list.is-layout-grid .post-item .term a:first-child {
	display: inline-block;
}

.post-list.is-layout-grid .wp-block-post-excerpt {
	font-size: var(--wp--preset--font-size--14);
}

/* post-list--
------------------------------------------------------- */

.post-list--simple .post-list {
	border-top: solid 1px var(--wp--preset--color--gray);
}

.post-list--simple .post {
	padding: 0 !important;
	margin-top: 0 !important;
}

.post-list--simple .post-item {
	gap: var(--wp--preset--spacing--10);
	padding: var(--wp--preset--spacing--20) 60px var(--wp--preset--spacing--20) 30px;
	border-bottom: solid 1px var(--wp--preset--color--gray);
	transition: all .2s;
}

.post-list--simple .post-item::after {
	font-family: 'Material Symbols Outlined';
	content: '\e5cc';
	line-height: 20px;
	position: absolute;
	top: calc( 50% - 10px );
	right: 20px;
	color: var(--wp--preset--color--primary);
	transition: all .2s;
}

.post-list--simple .wp-block-post-date {
	flex-basis: 5em;
	font-size: var(--wp--preset--font-size--14);
}

.post-list--simple .post-item .wp-block-post-title {
	font-size: var(--wp--preset--font-size--17);
	flex: 1;
	font-weight: normal;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.post-list--meta .post-list {
	border-top: solid 1px var(--wp--preset--color--gray);
}

.post-list--meta .post-item {
	padding-top: var(--wp--preset--spacing--20);
	padding-bottom: var(--wp--preset--spacing--20);
}

.post-list--meta .post-title-meta {
	gap: var(--wp--preset--spacing--10);
}

.post-list--meta .post-item .wp-block-post-title {
	font-size: var(--wp--preset--font-size--18);
}

.post-list--thumb-meta .post-list .post-item .post-title-meta {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 8px;
	position: static;
	height: 100%;
}

.post-list--thumb-meta .post-list .post-item .taxonomy-blog_category {
	margin-top: var(--wp--preset--spacing--10);
}

.post-list--thumb-meta .post-list .post-item .taxonomy-blog_category a {
	pointer-events: none;
}

.popular-posts,
.related-posts {
	margin-top: var(--wp--preset--spacing--70);
}


/* animation-block
------------------------------------------------------- */

.animation-block {
	margin-top: var(--wp--preset--spacing--80);
}

/* shape */

.is-style-animation-shape .wp-block-heading .label,
.is-style-animation-shape .wp-block-image,
.is-style-animation-shape .wp-block-media-text__media {
	position: relative;
	overflow: hidden;
}

.is-style-animation-shape .wp-block-heading .label{
	display: inline-block;
	line-height: 1.5;
}

.is-style-animation-shape .shape {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: block;
	background-color: var(--wp--preset--color--contrast);
	transform: translateX( -101% );
}

/* scramble */

.is-style-animation-scramble .wp-block-heading {
	display: inline-block;
	max-width: 100%;
	overflow-wrap: break-word;
	word-break: break-word;
	white-space: normal;
}


/*
-------------------------------------------------------

1200

-------------------------------------------------------
*/

@media screen and ( max-width: 1200px ) {

	.post-list.is-layout-grid {
		gap: 2em 1.5em;
	}

}


/*
-------------------------------------------------------

1000

-------------------------------------------------------
*/

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

	.side-column {
		flex-basis: 200px !important;
	}

}

/*
-------------------------------------------------------

750

-------------------------------------------------------
*/

@media screen and ( max-width: 750px ) {

	.post-header {
		padding-top: var(--wp--preset--spacing--spacing-50);
		padding-bottom: var(--wp--preset--spacing--spacing-50);
	}

	.post-nav-block .post-nav {
		flex-direction: column;
	}

	.post-nav-block .post-nav .post-navigation-link-previous,
	.post-nav-block .post-nav .post-navigation-link-next {
		width: 100%;
	}

	.post-nav-block .back-btn {
		width: 100%;
		order: 3;
		justify-content: center;
		padding: 10px 0;
	}

	.main-contents .is-layout-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.post-item .wp-block-post-title {
		font-size: var(--wp--preset--font-size--18);
	}

	.sidebar .wp-block-heading {
		margin-bottom: 0;
	}

	.sidebar * + .wp-block-heading {
		margin-top: 1.2em;
	}

	.sidebar .rank-list,
	.sidebar .cat-menu {
		margin-top: .8em;
	}

	.wp-block-categories-list .cat-item-none {
		padding: .9em 0 .9em 1em;
	}

	.wp-block-categories-list .cat-item a,
	.wp-block-page-list .wp-block-pages-list__item__link {
		display: block;
		padding: .8em 0;
	}

	.wp-block-categories-list .children .cat-item::before,
	.wp-block-page-list .wp-block-navigation__submenu-container .wp-block-pages-list__item::before {
		top: 1.4em;
	}

	.post-list--simple .post-item {
		padding: var(--wp--preset--spacing--20) 25px var(--wp--preset--spacing--20) 5px;
	}

	.post-list--simple .post-item::after {
		right: 5px;
	}

}

/*
-------------------------------------------------------

hover

-------------------------------------------------------
*/

@media screen and ( min-width: 751px ) {

	.post-nav-block .post-nav .post-navigation-link-previous a:hover,
	.post-nav-block .post-nav .post-navigation-link-next a:hover {
		color: var(--wp--preset--color--primary);
	}

	.post-nav-block .post-nav .post-navigation-link-previous a:hover::before {
		left: 0;
		color: var(--wp--preset--color--primary);
	}

	.post-nav-block .post-nav .post-navigation-link-next a:hover::before {
		right: 0;
		color: var(--wp--preset--color--primary);
	}

	.wp-block-query .post-list .wp-block-post:has( a:hover ) .thumb {
		background-color: var(--wp--preset--color--contrast);
	}

	.wp-block-query .post-list .wp-block-post:has( a:hover ) img {
		transform: scale( 1.1 );
	}

	.post-item:has( a:hover ) .wp-block-post-title a {
		color: var(--wp--preset--color--primary);
	}

	.wp-block-categories-list .cat-item a:hover,
	.wp-block-page-list .wp-block-pages-list__item__link:hover {
		color: var(--wp--preset--color--primary);
	}

	.wp-block-categories-list.is-style-arrow-link .cat-item a:hover::after,
	.wp-block-page-list.is-style-arrow-link .wp-block-pages-list__item__link:hover::after {
		right: 0;
	}

	.post-list--simple .wp-block-post:has( a:hover ) .post-item {
		background-color: var(--wp--preset--color--light-gray);
	}

	.post-list--simple .wp-block-post:has( a:hover ) .post-item::after {
		right: 16px;
	}

}


/*
----------------------------------------

shortcode

----------------------------------------
*/

.score-wrap {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--10);
}

.score-wrap .star-wrap {
	width: 180px;
	height: 36px;
	line-height: .5;
	background: url( ../img/common/star-bg.png ) center center / contain no-repeat;
}

.score-wrap .star {
	overflow: hidden;
}

.score-wrap .star img {
	max-width: 180px !important;
}

/* post-slider-box
---------------------------------------- */

.post-slider-box {
	margin-top: 2em !important;
}

.post-slider-box .wp-block-post {
	margin: 0 1.4em;
	max-width: 400px;
	padding: 0 !important;
}

.post-slider-box .post:not( .slick-slide ) {
	max-width: 320px;
}

.post-slider-box .powp-block-st a {
	display: block;
	transition: all .2s;
	border: none;
}

.post-slider-box .img {
	margin: 0;
	line-height: .5;
}

.post-slider-box img {
	aspect-ratio: 4 / 3;
}

.post-slider-box .txt {
	padding: var(--wp--preset--spacing--20);
}

.post-slider-box .txt .meta {
	margin-top: 0;
}

.post-slider-box .wp-block-button {
	text-align: center;
}

.post-slider-box .wp-block-button {
	margin-top: var(--wp--preset--spacing--40);
	padding: 0 var(--wp--preset--spacing--20);
}

/* news-list-box
---------------------------------------- */

.news-list-box {
	padding: var(--wp--preset--spacing--40) 0;
}

.news-list-box .cont-wrap {
	display: flex;
	align-items: center;
}

.news-list-box .ttl-wrap {
	width: 30%;
	border: solid 1px var(--wp--preset--color--gray);
	padding: var(--wp--preset--spacing--20);
}

.news-list-box .ttl {
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	height: 100%;
}

.news-list-box .ttl .en {
	font-family: var(--wp--preset--font-family--geist);
	font-size: var(--wp--preset--font-size--40);
	line-height: 1.5;
	color: var(--wp--preset--color--primary);
}

.news-list-box .ttl .jp {
	font-weight: normal;
	font-size: var(--wp--preset--font-size--20);
	margin: 0;
}

.news-list-box .ttl .wp-block-button {
	margin: var(--wp--preset--spacing--20) 0 0;
}

.news-list-box .cont {
	width: 70%;
	padding-left: var(--wp--preset--spacing--30);
	margin-top: 0;
}

.news-list-box .news-list {
	border-top: solid 1px var(--wp--preset--color--gray);
}

.news-list-box .news-list .news {
	border-bottom: solid 1px var(--wp--preset--color--gray);
}

.news-list-box .news-list a {
	display: block;
	color: #333;
	padding: var(--wp--preset--spacing--30) 60px var(--wp--preset--spacing--30) 30px;
	text-decoration: none;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	position: relative;
	transition: all .2s;
}

.news-list-box .news-list a::after {
	font-family: 'Material Symbols Outlined';
	content: '\e5cc';
	line-height: 20px;
	position: absolute;
	top: calc( 50% - 10px );
	right: 20px;
	color: var(--wp--preset--color--primary);
	transition: all .2s;
}

.news-list-box .news-list time {
	display: inline-block;
	min-width: 80px;
	font-family: var(--wp--preset--font-family--geist);
	font-size: var(--wp--preset--font-size--14);
	vertical-align: middle;
}

@media screen and ( max-width: 1400px ) {

	.post-slider-box .wp-block-post {
		margin: 0 .8em;
	}

}

@media screen and ( max-width: 1200px ) {

	.post-slider-box .wp-block-post {
		margin: 0 .8em;
	}

}

@media screen and ( max-width: 750px ) {

	.post-slider-box .wp-block-post {
		max-width: initial;
	}

	.news-list-box {
		padding: 0;
	}

	.news-list-box .cont-wrap {
		flex-direction: column;
	}

	.news-list-box .ttl-wrap {
		width: 100%;
		border: none;
	}

	.news-list-box .cont {
		width: 100%;
		padding: 0;
	}

	.news-list-box .news-list a {
		padding: var(--wp--preset--spacing--30) 40px var(--wp--preset--spacing--30) 0;
	}

	.news-list-box .wp-block-buttons.sp,
	.news-list-box .wp-block-button.sp {
		display: block !important;
		width: 100%;
		margin-top: var(--wp--preset--spacing--30);
	}

	.news-list-box .wp-block-buttons.sp .wp-block-button {
		width: 100%;
	}

}

/* hover */

@media screen and ( min-width: 751px ) {

	.news-list-box .news-list a:hover {
		background: var(--wp--preset--color--light-gray);
	}

	.news-list-box .news-list a:hover::after {
		right: 16px;
	}

}


/* news-single-box
---------------------------------------- */

.news-single-box {
	height: 60px;
	border: solid 1px var(--wp--preset--color--gray);
	border-radius: 30px;
	overflow: hidden;
	gap: 0;
}

.news-single-box .wp-block-column.ttl {
	flex-basis: 160px !important;
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
	text-align: center;
	padding: 14px;
}

.news-single-box .wp-block-column.cont {
	flex-basis: calc( 100% - 160px - 120px ) !important;
}

.news-single-box .post {
	padding: 0 !important;
}

.news-single-box .cont {
	padding: 10px 2em;
	gap: 1em;
}

.news-single-box .wp-block-column.link {
	flex-basis: 120px !important;
}

.news-single-box .wp-block-post-date {
	color: var(--wp--preset--color--dark-gray);
	white-space: nowrap;
}

.news-single-box .wp-block-post-title {
	font-weight: normal;
	font-size: var(--wp--preset--font-size--17);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	border-top: solid 1px transparent;
	border-bottom: solid 1px transparent;
	transition: all .2s;
}

.news-single-box .link a {
	position: relative;
	padding-right: 25px;
}

.news-single-box .link a::after {
	font-family: 'Material Symbols Outlined';
	content: '\e5cc';
	line-height: 20px;
	position: absolute;
	top: calc( 50% - 10px );
	right: 4px;
	color: var(--wp--preset--color--primary);
	transition: all .2s;
}


@media ( max-width: 750px ) {

	.news-single-box {
		height: inherit;
		flex-direction: column;
		border-radius: 10px;
	}

	.news-single-box .wp-block-column.ttl,
	.news-single-box .wp-block-column.cont,
	.news-single-box .wp-block-column.link {
		flex-basis: 0 !important;
	}

	.news-single-box .wp-block-column.ttl {
		padding: 6px;
	}

	.news-single-box .cont {
		padding: 10px var(--wp--preset--spacing--20) 5px;
		justify-content: center;
	}

	.news-single-box .wp-block-column.link {
		padding: 0 10px 10px;
		text-align: center;
	}

}


/* hover */

@media ( min-width: 751px ) {

	.news-single-box .cont:has( a:hover ) .wp-block-post-title {
		border-bottom-color: var(--wp--preset--color--primary);
	}

	.news-single-box .link a:hover::after {
		right: 0;
	}

}



/* post-single-box
---------------------------------------- */

.post-single-box .post-item {
	position: static;
}

.post-single-box .post {
	display: flex;
	align-items: center;
	position: relative;
	padding: var(--wp--preset--spacing--40);
	border: solid 1px var(--wp--preset--color--gray);
}

.post-single-box .thumb {
	width: 40%;
	flex-basis: 40% !important;
	margin: 0;
}

.post-single-box .txt {
	width: 60%;
	flex-basis: 60% !important;
	padding-left: var(--wp--preset--spacing--40);
	padding-bottom: var(--wp--preset--spacing--50);
}

.post-single-box .meta {
	width: 100%;
	gap: 0;
}

.post-single-box .meta .cat-list {
	margin-right: 15px;
	flex-wrap: wrap;
	line-height: 1;
}

.post-single-box .meta .date {
	font-size: var(--wp--preset--font-size--17);
}

.post-single-box .ttl {
	width: 100%;
	font-size: var(--wp--preset--font-size--24);
	margin: var(--wp--preset--spacing--10) 0;
}


@media ( max-width: 1000px ) {

	.post-single-box .post {
		padding:  var(--wp--preset--spacing--30) !important;
	}

}


@media ( max-width: 750px ) {

	.post-single-box .post {
		padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--20) 80px !important;
		flex-direction: column;
		gap: var(--wp--preset--spacing--10);
	}

	.post-single-box .thumb {
		width: 100%;
	}

	.post-single-box .thumb img {
		aspect-ratio: 16 / 9;
	}

	.post-single-box .txt {
		width: 100%;
		padding: 0;
	}

}

/* hover */

@media ( min-width: 751px ) {

	.post-single-box .post:hover {
		background: var(--wp--preset--color--light-gray);
	}

}


/* slider-block
---------------------------------------- */

.slider-block .slick-slide {
	margin: 0 .5em;
}

.slider-block .slick-slide.wp-block-image > img {
	width: 100%;
}

/* thumbnail */

.is-style-slider-thumbnail + .slider-nav {
	margin: 1em 0 0;
}

.is-style-slider-thumbnail + .slider-nav .thumb {
	flex: 1;
	border: solid 2px var(--wp--preset--color--base);
	margin: 0 2px;
	transition: border .2s;
	cursor: pointer;
	margin: 0;
}

.is-style-slider-thumbnail .slick-slide.wp-block-image > img {
	aspect-ratio: 4 / 3;
}

.is-style-slider-thumbnail + .slider-nav .thumb img {
	aspect-ratio:  4 / 3;
}

.is-style-slider-thumbnail + .slider-nav .thumb:hover,
.is-style-slider-thumbnail + .slider-nav .thumb.slick-current {
	border-color: var(--wp--preset--color--primary);
}

.is-style-slider-thumbnail .slick-slide {
	margin: 0;
}

.is-style-slider-thumbnail.cp .slick-slide {
	margin: 0 8px;
}

.is-style-slider-thumbnail.cp .slick-slide img {
	border: solid 5px var(--wp--preset--color--base);
}

.is-style-slider-thumbnail .slick-prev {
	left: -24px;
}

.is-style-slider-thumbnail .slick-next {
	right: -24px;
}

/* fade */

.is-style-slider-fade .slick-slide {
	margin: 0;
}

@media ( max-width: 750px ) {

	.is-style-slider-thumbnail .slick-prev {
		left: -30px;
	}

	.is-style-slider-thumbnail .slick-next {
		right: -30px;
	}

	.is-style-slider-thumbnail.cp .slick-slide img {
		border: none;
	}

	.is-style-slider-thumbnail + .slider-nav .thumb {
		margin: 0 1px;
	}

}


/* fv-01
---------------------------------------- */

.fv-01 {
	position: relative !important;
	z-index: 1;
}

.fv-01 .fv-txt {
	height: 64vh;
	z-index: 99;
}

.is-content-justification-right + .fv-img {
	padding: 0 10vw 0 0 !important;
}

.is-content-justification-center {
	text-align: center;
}

.is-content-justification-center .txt-wrap {
	margin: 0 !important;
}

.is-content-justification-center + .fv-img {
	padding: 0 !important;
}

.fv-01 .fv-img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin-block-start: 0 !important;
	z-index: -1;
}

.fv-01 .fv-img .wp-block-image,
.fv-01 .fv-img .wp-block-image * {
	width: 100% !important;
	height: 100% !important;
	overflow: hidden;
}

.fv-01 .fv-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}


@media ( max-width: 1000px ) {

	.fv-01 .fv-txt {
		min-height: initial !important;
		height: 56vw;
	}

}

@media ( max-width: 750px ) {

	.fv-01 .fv-txt {
		min-height: initial !important;
		height: 64vh;
	}

}


/* fv-02
---------------------------------------- */

.fv-02 {
	height: 64vh;
}

@media ( max-width: 1000px ) {

	.fv-02 {
		min-height: initial !important;
		height: 56vw;
	}

}

@media ( max-width: 750px ) {

	.fv-02 {
		min-height: initial !important;
		height: 64vh;
	}

}


/* fv-03
---------------------------------------- */

.editor-styles-wrapper .fv-03 .slide {
	flex: 1;
}

.fv-03 .slide {
	text-align: center;
	margin: 0 1vw;
}

.fv-03 .slide .wp-block-image,
.fv-03 .slide .wp-block-image img {
	width: 100%;
	aspect-ratio: 2 / 1;
}

.fv-03 .slide .wp-block-image a {
	display: block;
}

@media ( max-width: 750px ) {

	.fv-03 {
		padding-top: var(--wp--preset--spacing--10);
	}

	.fv-03 .slide .wp-block-image,
	.fv-03 .slide .wp-block-image img {
		aspect-ratio: 4 / 3;
	}

}


/* fv-04
---------------------------------------- */

.editor-styles-wrapper .fv-04 {
	max-width: 100%;
	overflow: auto;
}

.fv-04 .slide {
	text-align: center;
	margin: 0 1vw;
}

.fv-04 .slide .wp-block-cover {
	width: 100%;
	aspect-ratio: 2 / 1;
	overflow: hidden;
}

.fv-04 .wp-block-cover__inner-container {
	position: relative;
	z-index: 1;
}

@media ( max-width: 750px ) {

	.fv-04 .slide .wp-block-cover {
		min-height: initial;
		aspect-ratio: 1 / 1;
	}

	.fv-04 .slide .wp-block-cover br {
		display: none;
	}

}


/* fv-05
---------------------------------------- */

.fv-05 {
	height: 64vh;
	position: relative;
}

.fv-05::after {
	content: '';
	background: var(--wp--preset--color--primary);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;	
	z-index: 2;
	opacity: .8;
}

.fv-05 #ytPlayerWrap {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
}

.fv-05 * {
	position: relative;
	z-index: 3;
}

@media ( max-width: 1000px ) {

	.fv-05 {
		min-height: initial !important;
		height: 56vw;
	}

}

@media ( max-width: 750px ) {

	.fv-05 {
		min-height: initial !important;
		height: 64vh;
	}

}
