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

plugin

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


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

/* yoast-breadcrumbs */

.wp-block-template-part:has( > .yoast-breadcrumbs ) {
	background-color: var(--wp--preset--color--gray) !important;
    color: #fff;
    margin: 0 !important;
    padding: 7px 0;
}

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

.yoast-breadcrumbs a {
	color: #bebebe;
}

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

.yoast-breadcrumbs span span + span::before {
	font-family: 'Material Symbols Outlined';
	font-variation-settings:
		'FILL' 0,
		'wght' 300;
	content: '\e5cc';
	color: #999;
	width: 20px;
	font-size: 20px;
	line-height: 20px;
	text-align: center;
	position: absolute;
	top: calc( 50% - 9px );
	left: 0;
	transition: all .2s;
}

@media ( max-width: 750px ) {

	.yoast-breadcrumbs {
		font-size: var(--wp--preset--font-size--13);
	}

}

/* schema-faq-section */

.yoast-faq {
	margin-top: 4.6em;
}

.schema-faq-section {
	border: none;
	background-color: var(--wp--preset--color--light-gray);
	padding: 2em;
}

.has-light-gray-background-color .schema-faq-section {
	background-color: var(--wp--preset--color--base);
}

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

.schema-faq-section .schema-faq-question {
	display: block;
	padding: 11.2px 0 11.2px 65px;
	line-height: 1.6;
	font-size: var(--wp--preset--font-size--21);
	font-weight: 500;
	color: var(--wp--preset--color--contrast);
	position: relative;
}

.schema-faq-section .schema-faq-question::before {
	content: 'Q.';
	width: 48px;
	height: 48px;
	font-size: var(--wp--preset--font-size--32);
	color: var(--wp--preset--color--contrast);
	line-height: 48px;
	text-align: center;
	font-family: var(--wp--preset--font-family--poppins);
	font-weight: 400;
	border-radius: 50%;
	position: absolute;
	top: calc( 50% - 24px );
	left: 0;
}

.schema-faq-section .schema-faq-answer {
	padding: var(--wp--preset--spacing--40);
	margin: 15px 0 0;
	border: solid 1px var(--wp--preset--color--gray);
}

.schema-faq-section .schema-faq-answer strong {
	display: block;
	line-height: 1.6;
	font-size: var(--wp--preset--font-size--21);
	font-weight: 500;
	color: var(--wp--preset--color--primary);
	margin-bottom: var(--wp--preset--spacing--20);
}
@media screen and (max-width: 750px) {
	.schema-faq-section .schema-faq-answer strong {
		font-size: var(--wp--preset--font-size--14);
	}
	.schema-faq-section .schema-faq-answer strong span {
		font-size: var(--wp--preset--font-size--13) !important;
	}
}
.schema-faq-section .schema-faq-answer strong + br {
	display: none;
}

.ans-icon .schema-faq-section .schema-faq-answer {
	border: none;
	border-top: solid 1px var(--wp--preset--color--gray);
	font-size: var(--wp--preset--font-size--18);
	line-height: 1.9;
	letter-spacing: .04em;
	padding: 32px 0 6px 65px;
	margin-top: 2rem;
	position: relative;
}

.has-light-gray-background-color .ans-icon .schema-faq-section .schema-faq-answer {
	border-color: #f0f0f0;
}

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

.schema-faq.is-style-toggle-btn .schema-faq-question {
	display: block;
	padding-right: 50px;
	cursor: pointer;
	position: relative;
	letter-spacing: .07em;
}

.schema-faq.is-style-toggle-btn .schema-faq-question strong {
	font-weight: 500;
    color: var(--wp--preset--color--contrast);
}

.schema-faq.is-style-toggle-btn .schema-faq-question::after {
	content: "";
	width: 40px;
	height: 40px;
	background: var(--wp--preset--color--contrast) url(../img/page/2x/arrow-down-faq.png) center center / 19px no-repeat;
	border-radius: 50%;
	position: absolute;
	top: calc( 50% - 20px );
	right: 0;
	transition: .3s;
}

.schema-faq.is-style-toggle-btn .schema-faq-question.active::after {
	transform: rotate(180deg);
}

/* 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--poppins);
	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);
	}

}


@media ( max-width: 750px ) {

	.schema-faq-section .schema-faq-question {
		padding: 10px 0 10px 65px;
	}

	.schema-faq-section .schema-faq-question::before {
		font-size: 20px;
		width: 20px;
		height: 20px;
		line-height: 20px;
		top: calc( 50% - 10px );
	}

	.schema-faq.is-style-toggle-btn .schema-faq-question::after {
		width: 30px;
		height: 30px;
		top: calc( 50% - 15px );
		background-size: 12px;
	}

	.ans-icon .schema-faq-section .schema-faq-answer::before {
		font-size: 20px;
		width: 20px;
		height: 20px;
		line-height: 20px;
		top: calc( 50% - 10px );
	}

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

	.schema-faq-section .schema-faq-answer strong {
		margin-bottom: var(--wp--preset--spacing--10);
	}

	.schema-faq.is-style-toggle-btn .schema-faq-question {
		padding-right: var(--wp--preset--spacing--60);
	}

	.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;
	}

	.yoast-faq {
		margin-top: 1.5em;
	}

	.schema-faq-section {
		padding: .8em 1.2em;
	}

	.schema-faq-section .schema-faq-question {
		font-size: var(--wp--preset--font-size--15);
		padding: 5px 40px 5px 34px !important;
		line-height: 1.7;
	}

	.ans-icon .schema-faq-section .schema-faq-answer {
		font-size: var(--wp--preset--font-size--15);
		line-height: 1.7;
		letter-spacing: .07em;

		padding: 14px 0 0 34px;
		margin-top: .6rem;
	}

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


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

.share-wrap {
	margin-top: 4em;
	padding: 2em;
	gap: 2em;
	background-color: var(--wp--preset--color--secondary);
}

.addtoany_list a {
	padding: 0 !important;
	line-height: .5;
}

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

.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 + a {
		margin-left: 10px;
	}

}

/* hover */

@media ( min-width: 751px ) {

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

}



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

.lwptoc-light .lwptoc_i {
	width: 100%;
	background: var(--wp--preset--color--secondary);
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
	border-radius: 4px;
}

.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--24);
	font-weight: normal;
}

.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--16);
	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--poppins);
	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--poppins);
	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;
}

.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 1px var(--wp--preset--color--gray);
}

.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);
}

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

.linkcard .lkc-info .lkc-domain {
	font-size: var(--wp--preset--font-size--14);
}

.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--16);
	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: 100px 1fr;
		padding: 1em 2em 1em 1em;
		padding-bottom: var(--wp--preset--spacing--40);
	}

	.linkcard .lkc-content::after {
		font-size: 22px;
		right: .25em;
	}

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

	.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--poppins);
	font-weight: 500;
}

.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;
}

.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-no-link a {
	pointer-events: none;
}

.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% );
}

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

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

.wp-block-search__inside-wrapper::before {
	content: "";
	width: 20px;
	height: 20px;
	background: url(../img/page/item/2x/icon-search.png) center center / contain no-repeat;
	position: absolute;
	top: calc( 50% - 10px );
	right: 18px;
	z-index: 1;
}

::placeholder {
	color: #aaa;
}

.wp-block-search__input {
	width: 100%;
	font-size: 16px;
	line-height: 2;
	padding: 12px 40px 12px 1em;
	border: solid 2px #111;
	border-radius: 5px;
	outline: none;
	position: relative;
}

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

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


@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;
	}

}


@media ( max-width: 750px ) {

	body .linkcard {
		margin-top: var(--wp--preset--spacing--40) !important;
	}

	.share-wrap {
		flex-direction: column;
		gap: .5em;
		justify-content: center !important;
		font-size: var(--wp--preset--font-size--14);
		margin-top: var(--wp--preset--spacing--40);
	}

	.my-search-form {
		background-color: var(--wp--preset--color--secondary);
		padding: 1em var(--wp--preset--spacing--40);
	}

	.wp-block-search__input {
		padding: 9px 40px 9px 1em;
		border-width: 1px;
	}

	.wp-block-search__inside-wrapper::before {
		width: 18px;
		height: 18px;
		top: calc( 50% - 9px );
		right: 16px;
	}

}


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

.cat-menu {
	list-style: none;
	padding: 0;
	border-top: solid 1px var(--wp--preset--color--gray);
}

.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 18px 18px 0;
	position: relative;
}

.cat-menu > li > a::after {
	font-family: 'Material Symbols Outlined';
	font-variation-settings:
		'FILL' 0,
		'wght' 200;
	content: '\e5cc';
	color: #333;
	width: 20px;
	font-size: 24px;
	line-height: 20px;
	text-align: center;
	position: absolute;
	top: calc( 50% - 9px );
	right: -5px;
	transition: all .2s;
}

.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 36px;
	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: 18px;
}

@media ( min-width: 751px ) {

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

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

}


/* 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
---------------------------------------- */

.tel-block {
	gap: 0;
	align-items: center;
}

.is-style-tel-icon {
	font-family: var(--wp--preset--font-family--poppins);
	transition: all .2s;
	line-height: 1;
	font-weight: 500;
}
@media screen and (max-width: 1260px) {
	.is-style-tel-icon {
		font-size: 1.5rem !important;
	}
}

.is-style-tel-icon::before {
	content: "";
	display: inline-block;
	background: url(../img/page/2x/icon-phone-g.png) center center / contain no-repeat;
	width: 35px;
	height: 40px;
	vertical-align: middle;
	margin-right: .14em;
	transform: translateY( -17% );
	transition: all .2s;
}
.header .is-style-tel-icon::before {
	width: 30px;
    height: 30px;
}




.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;
}

.tel-bnr {
	height: 180px;
	justify-content: center;
	gap: 0;
	color: var(--wp--preset--color--contrast);
	flex-wrap: nowrap;
	background:  var(--wp--preset--color--base);
	padding: .5em 1em 1.2em 4em;
	transition: all .2s;
	
}

.tel-bnr .is-style-tel-icon {
	color: var(--wp--preset--color--contrast);
	font-family: var(--wp--preset--font-family--dm-sans);
	font-size: var(--wp--preset--font-size--40);
	line-height: 1.3;
	letter-spacing: .8px;
	margin-top: 2px;
	transform: translate(-6px, 4px);

}

.tel-bnr .is-style-notes {
	font-size: var(--wp--preset--font-size--16);
}

.tel-bnr.s-size {
	height: 120px;
	padding: 0 2em .4em;
}

.tel-bnr.s-size .is-style-tel-icon {
	font-size: var(--wp--preset--font-size--40);
}

.tel-bnr.s-size .is-style-tel-icon::before {
	width: 32px;
	height: 36px;
	transform: translateY( -18% );
}

@media ( max-width: 750px ) {
	
	.link-to-cover-and-group-blocks:has( .tel-bnr ) {
		width: 100%;
	}

	.tel-bnr.s-size {
		width: 100%;
		height: 90px;
	}

	.tel-bnr.s-size .is-style-tel-icon::before {
		width: 24px;
		height: 27px;
		transform: translateY( -14% );
	}

}

/* hover */

@media ( min-width: 751px ) {

	.tel-bnr:hover {
		filter: contrast(125%);
	}

}

.mail-bnr {
	margin-top: 0;
    height: 180px;
    flex-direction: column;
	justify-content: center;
	gap: 0;
	color: var(--wp--preset--color--base);
	background: var(--wp--preset--color--base);
	padding: 0px 20px 20px;
	transition: all .2s;
}

.mail-bnr p {
	margin-bottom: 0;
	line-height: 1;
	padding-bottom: 20px;
}

.mail-bnr p.is-style-arrow-right {
	background-color: var(--wp--preset--color--primary);
}

.btm-deco {
    transition: all .2s;
	width: 360px;
	margin: 0 auto !important;
}

.mail-bnr .btm-deco p.is-style-arrow-right::after {
	width: 11px;
	height: 10px;
	top: calc(50% - 5px);
}


/* hover */

@media ( min-width: 751px ) {

	.mail-bnr:hover .wp-block-button.is-style-arrow-right .wp-block-button__link::after {
		right: 10px;
	}

	.link-to-cover-and-group-blocks:hover p.is-style-arrow-right::after {
		right: -5px;
	}

}

@media ( max-width: 750px ) {

	.contact-block .has-global-padding {
		padding-right: 0;
        padding-left: 0;
	}

	.tel-bnr {
		height: auto;
		font-size: var(--wp--preset--font-size--14);
		padding: .5em;
		font-size: var(--wp--preset--font-size--16);
		gap: 4px;
		position: relative;
		border: solid 1px #5ca33b;
		padding: 15px;
		margin: 27px 20px 20px;
	}

	.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column.btn-set {
		background-color: #ffffff !important;
	}

	.tel-bnr::after {
		content: "";
		width: 16px;
		height: 11px;
		background-image: url(../img/page/2x/right-arrow-g.png);
		position: absolute;
		background-size: contain;
        background-repeat: no-repeat;
		top: calc( 50% - 9px );
		transform: rotate(270deg);
		right: 10px;
		transition: all .2s;
	}

	.tel-bnr .is-style-tel-icon {
		letter-spacing: .8px;
		font-size: 28px;
        transform: translate(1px, -2px);
        letter-spacing: .07em;
	}

	.is-style-tel-icon::before {
		width: 22px;
		height: 22px;
		transform: translateY( -16% );
	}

	.tel-bnr .is-style-notes {
		font-size: 12px !important;
	}

	.tel-bnr .has-primary-color {
		font-size: 14px !important;
	}

	.mail-bnr {
		height: auto;
		font-size: var(--wp--preset--font-size--14);
		font-size: var(--wp--preset--font-size--16);
		gap: 15px;
		position: relative;
		padding: 31px 20px 31px;
	}

	.mail-bnr .wp-block-button.is-style-arrow-right::before {
		content: "";
		display: block;
		width: 22px;
		height: 18px;
		background: url(../img/page/2x/icon-mail.png) center center / contain no-repeat;
		position: absolute;
        z-index: 2;
       	top: calc(50% - 9px);
        left: 45px;
	}
	.mail-bnr .btm-deco {
		width: 100%;
	}
	.mail-bnr .wp-block-button.is-style-arrow-right {
		width: 100%;
	}

}


/* 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: 140px;
	flex-shrink: 0;
	font-size: 3em;
	font-family: var(--wp--preset--font-family--poppins);
	text-align: left;
	line-height: 1;
	color: var(--wp--preset--color--primary);
	padding: 0;
}

.history .read {
	flex-basis: calc( 100% - 140px );
	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: 2px;
	background-color: var(--wp--preset--color--gray);
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
}

.history .cont:first-child .read::before {
	top: 50%;
}

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

@media ( max-width: 1000px ) {

	.history .date {
		font-size: 2em;
		flex-basis: 100px;
	}

	.history .read {
		flex-basis: calc( 100% - 100px );
	}

}

@media ( max-width: 750px ) {

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

	.history .date {
		font-size: 1.2em;
		flex-basis: 56px;
	}

	.history .read {
		flex-basis: calc( 100% - 56px );
		padding: .5em 0 .5em 15px;
		font-size: var(--wp--preset--font-size--14);
		letter-spacing: 0;
	}

	.history .read::after {
		width: 12px;
		height: 12px;
		border-width: 3px;
		left: -5px;
	}

}


/* 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::-webkit-scrollbar {
	width: 5px;
	height: 5px;
	background: var(--wp--preset--color--light-gray);
}

.sticky-table .scroll-wrap::-webkit-scrollbar-track {
	box-shadow: none;
}

.sticky-table .scroll-wrap::-webkit-scrollbar-thumb {
	background-color: var(--wp--preset--color--gray);
	box-shadow: none;
}

.sticky-table .scroll-wrap {
	width: 100%;
	max-height: 400px;
	overflow: scroll;
	border-bottom: solid 1px var(--wp--preset--color--gray);
	border-left: solid 1px var(--wp--preset--color--gray);
	position: relative;
}

.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;
}

@keyframes swipe {

	0% {
		transform: translateX( -15px );
		opacity: 0;
	}
	20% {
		opacity: 1;
	}
	40% {
		opacity: 1;
	}
	60% {
		transform: translateX( -45px );
		opacity: 0;
	}
	100% {
		transform: translateX( -45px );
		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: 1000px ) {

	.sticky-table {
		padding-top: 64px;
		position: relative;
	}

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

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

}

@media ( max-width: 750px ) {

	.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 {
	border-right: solid 1px var(--wp--preset--color--primary);
	border-bottom: solid 1px var(--wp--preset--color--primary);
	transform: translate( 5px, 5px );
	transition: all .2s;
}

.wp-block-button.is-style-arrow-right .wp-block-button__link {
	width: 325px;
	max-width: 100%;
    min-height: 62px;
	display: grid;
	place-content: center;
	letter-spacing: .16em;
	line-height: 1.5;
	padding-right: 2.2em;
	padding-left: 2.2em;
	position: relative;
	transform: translate( -5px, -5px );
	background-color: var(--wp--preset--color--primary);
}

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

@media ( max-width: 1000px ) {

	.wp-block-buttons {
		gap: 1em;
	}

	.wp-block-button.is-style-arrow-right .wp-block-button__link {
		width: 240px;
		min-height: 60px;
		font-size: var(--wp--preset--font-size--17);
		padding-bottom: .4em;
		letter-spacing: .1em;
	}

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

}

@media ( max-width: 1000px ) {

	.wp-block-button.is-style-arrow-right {
		transform: translate( 2px, 2px );
	}

	.wp-block-button.is-style-arrow-right .wp-block-button__link {
		min-height: 50px;
		transform: translate( -2px, -2px );
	}

	.wp-block-button.is-style-arrow-right .wp-block-button__link::after {
		width: 10px;
		height: 10px;
		top: calc( 50% - 5px );
	}

}

@media screen and (max-width: 750px) {
	.wp-block-button.is-style-arrow-right .wp-block-button__link {
		min-width: 201px;
        width: auto;
		font-size: 14px !important;
		min-height: 42px;
		transform: translate( 0px );
		padding-left: 20px;
        padding-right: 30px;
	}
	.mail-bnr .wp-block-button.is-style-arrow-right .wp-block-button__link {
		padding-left: 68px;
        padding-right: 49px;
	}
}
/* checkーitem
---------------------------------------- */
.is-style-check-item {
	position: relative;
	padding-left: 76px !important;
	margin-top: 20px;
	text-align: left;
	margin-left: 0 !important;
}

.is-style-check-item::before {
	content: "";
	position: absolute;
	top: calc(50% - 13px);
    left: 36px;
	background-image: url(../img/page/2x/check.png);
	width: 29px;
	height: 21px;
	background-repeat: no-repeat;	
	background-size: contain;
	z-index: 2;
}
.is-style-check-item::after {
	content: "";
	top: calc(50% - 15px);
	left: 30px;
	position: absolute;
	background-color: #ffffff;
	border: solid 1px #cccccc;
	width: 30px;
	height: 30px;
	background-repeat: no-repeat;	
	background-size: contain;
}

@media screen and (max-width: 750px) {
	.lead-item .lead-text-box:has(.is-style-check-item) {
		display: flex;
		flex-direction: column;
		gap: 1.4em;
		padding: 30px 20px;
	}
	.is-style-check-item {
		padding-left: 35px !important;
		margin-top: 0;
	}
	.is-style-check-item::after {
		left: 0px;
		width: 20px;
    	height: 20px;
		top: calc(50% - 10px);
	}
	.is-style-check-item::before {
		left: 6px;
		width: 20px;
    	height: 13px;
		top: calc(50% - 8px);
	}
}

/* hover */

@media ( min-width: 751px ) {

	.wp-block-buttons .wp-block-button__link:hover {
		background-color: var(--wp--preset--color--primary);
	}

	.wp-block-button.is-style-arrow-right:has( .wp-block-button__link:hover ) {
		border-color: var(--wp--preset--color--primary);
	}

	.wp-block-button.is-style-arrow-right .wp-block-button__link:hover::after {
		right: 15px;
	}

}


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

.wp-block-button.is-style-arrow-left .wp-block-button__link {
	padding: 1em 4em;
	position: relative;
}

.wp-block-button.is-style-arrow-left .wp-block-button__link::after {
	content: "";
	width: 20px;
	height: 20px;
	background: url(../img/page/2x/arrow-01.png) center center / contain no-repeat;
	position: absolute;
	top: calc( 50% - 10px );
	left: 20px;
	transform: rotate(180deg);
	transition: all .2s;
}

/* hover */

@media ( min-width: 751px ) {

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

	.wp-block-button.is-style-arrow-left .wp-block-button__link:hover::after {
		left: 15px;
	}

}


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

.is-style-view-more .wp-block-button__link {
	display: inline-block;
	font-family: var(--wp--preset--font-family--poppins);
	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 {
	background-color: var(--wp--preset--color--secondary);
	padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--40) !important;
	margin-block-start: 50px !important;
}

.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 {
	position: relative;
	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--16);
	line-height: 1.5;
	color: var(--wp--preset--color--primary);
	padding: 16px var(--wp--preset--spacing--20) 16px;
}

.wp-block-button.is-style-page-menu .wp-block-button__link::after {
	content: "";
    position: absolute;
    bottom: calc(50% - 7px);
    right: 20px;
    background-image: url(../img/page/2x/right-arrow-g.png);
    background-repeat: no-repeat;
    background-size: cover;
    width: 12px;
    height: 14px;
	transition: transform .3s;
}


@media ( max-width: 750px ) {

	.page-menu {
		padding: var(--wp--preset--spacing--40) !important;
		margin-block-start: 30px !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%;
		padding: 10px 20px 10px 10px;
	}
	.wp-block-button.is-style-page-menu .wp-block-button__link::after {
		width: 10px;
    	height: 12px;
	    right: 10px;
	}

}

/* hover */

@media ( min-width: 751px ) {

	.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;
	transition: opacity .5s;
}

.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( 1px );
	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 {
		opacity: .7;
	}

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

}

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

.sns-btn-set {
	line-height: .5;
}

.sns-btn-set a {
	display: inline-block !important;
	width: 32px;
	height: 32px;
	padding: 4px;
	background: #000;
	border-radius: 50%;
	transition: transform .2s;
}

.sns-btn-set .icon_instagram a {
	background: #ff0069;
}

.sns-btn-set .icon_facebook a {
	background: #1877F2;
}

.sns-btn-set .icon_youtube a {
	background: #FF0000;
}

/* hover */

@media ( min-width: 751px ) {

	.sns-btn-set a:hover {
		transform: scale( 1.15 );
	}

}


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

list

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


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

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

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

.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--poppins);
	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;
}


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

table

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


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

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

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

.is-style-table-01 thead th {
	font-weight: 500;
}

.is-style-table-01 th,
.is-style-table-01 td,
.is-style-table-01 .wp-element-caption {
	font-size: var(--wp--preset--font-size--18);
	border-color: var( --wp--preset--color--gray );
	border-style: solid;
	border-width: 0 1px 1px 0;
	padding: 1.15em .8em;
}

.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--primary );
	color: var( --wp--preset--color--base );
}

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

.is-style-table-02 tbody th,
.is-style-table-02 tbody td {
	border: none;
	padding: 24px 12px;
	border-bottom: solid 1px var( --wp--preset--color--gray );
}

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

.is-style-table-02 tbody tr:first-child > * {
	border-top: solid 1px var( --wp--preset--color--gray );
}

.is-style-table-02 thead + tbody tr:first-child > * {
	border-top: none;
}

.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: 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: 30%;
	}

}


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

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);
	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;
	border-bottom: solid 1px var(--wp--preset--color--gray);
	font-size: var(--wp--preset--font-size--20);
}

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

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

.is-style-heading-05::before {
	content: "";
	width: 20px;
	height: 2px;
	background: var(--wp--preset--color--primary);
	position: absolute;
	top: calc( 50% - 1px );
	left: 0;
}
@media screen and (max-width: 750px) {
	.is-style-heading-05::before {
		width: 14px;
    	height: 1px;
	}
}

.is-content-justification-center > .is-style-heading-05 {
    padding-right: 18px;
}

.is-content-justification-center > .is-style-heading-05::after {
	content: "";
	width: 12px;
	height: 2px;
	background: var(--wp--preset--color--primary);
	position: absolute;
	top: calc( 50% - 1px );
	right: 0;
}
@media screen and (max-width: 750px) {
	.is-style-heading-05 {
		padding-left: 20px;
	}
}

/* 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;
}

/*
@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;
	}

}
*/


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

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: 19px;
}

.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;
    line-height: 1.4;
	letter-spacing: .1em;
}
@media screen and (max-width: 750px) {
	.ttl-02 .wp-block-heading {
		line-height: 1.3;
		letter-spacing: .04em;
    	padding-top: 3px;
	}
	.img-txt:not(:first-child) .ttl-02 .wp-block-heading {
		padding-top: 0;
	}
	.ttl-02 {
		padding-bottom: 0;
	}
}

.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);
}

.ttl-02 p {
	margin-top: 0px;
    line-height: 2.3;
}

@media screen and (max-width: 750px) {
	.img-txt .txt p {
		line-height: 1.88 !important;
	}
}

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

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: 500px;
	max-height: 600px;
}

.img-txt .txt {
	padding: 0 75px;
}

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

.img-txt .img + .wp-block-column .txt-wrap {
	margin: -14px auto 0 0;
}
@media screen and (max-width: 750px) {
	.img-txt .img + .wp-block-column .txt-wrap {
		margin: 0 auto 0 0;
	}
}

.img-txt .img + .wp-block-column .txt-wrap p {
	margin-top: 0;
}
@media screen and (max-width: 750px) {
	.img-txt .img + .wp-block-column .txt-wrap p {
		margin-top: .8em;
	}
}

@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: 62vw;
	}

	.img-txt:not(:first-child) .txt p {
		margin-top: 1em !important;
		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;
	}

}



/* 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) 58px;
	font-weight: 500;
}

.step-column .wp-block-column {
	position: relative;
	font-size: var(--wp--preset--font-size--20);
	line-height: 1.5;
	counter-increment: item;
}

.step-column .wp-block-column .is-style-shadow {
	gap: .8em;
	position: relative;
}

.step-column .wp-block-column .icon {
	width: 180px;
	height: 180px;
	display: grid;
	place-content: center;
	border-radius: 50%;
	margin: 30px auto 0;
}

.step-column .step-arrow {
	margin: 0;
	padding: 13px 30px 30px;
	gap: 1.7rem;
	height: 100%;
}

.step-column .step-arrow::after {
	position: absolute;
    content: "0" counter(item);
    line-height: 1;
    font-size: 40px;
    font-family: var(--wp--preset--font-family--dm-sans);
    color: #111111;
    top: -15px;
    left: -15px;
}

.step-column .wp-block-image {
	position: relative;
	text-align: center;
}

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

.step-column .wp-block-column + .wp-block-column .step-arrow::before {
	content: "";
	width: 22px;
	height: 36px;
	background: url(../img/page/2x/arrow-step.png) center center / contain no-repeat;
	position: absolute;
	top: calc( 50% - 18px );
	left: -39px;
	transition: all .2s;
}

.step-column .step-arrow + p {
	margin-top: 1.2em;
	line-height: 1.8;
}

.step-column .txt p {
	margin-top: var(--wp--preset--spacing--20);
}
.flow-item-text {
	margin-top: 23px;
    line-height: 1.8;
}

@media screen and (max-width: 750px) {
	.flow-text-box {
		width: 63%;
	}
	.step-column .step-arrow {
		flex-direction: initial;
		padding: 18px 20px 17px;
        gap: 27px;
		align-items: center;
	}
	.step-column .is-style-heading-07.has-text-align-center::before {
		left: 2px;
		height: 1px;
		bottom: -6px;
	}
	.step-column .wp-block-image img {
		width: 40px !important;
	}
	.flow-item-text {
		margin-top: 18px;
        font-size: 12px !important;
        font-weight: 400;
        letter-spacing: .1em;
        line-height: 2;
	}
	.step-column .step-arrow::after {
		font-size: 30px;
		top: -13px;
    	left: -11px;
	}
}



.num-label,
.step-num-label {
	width: 48px;
	height: 48px;
	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--primary);
	color: var(--wp--preset--color--base);
	font-family: var(--wp--preset--font-family--poppins);
	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: 30px !important;
	}

	.step-column .wp-block-column + .wp-block-column .step-arrow::before {
		width: 14px;
		left: -21px;
	}

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

	.step-column .wp-block-column .is-style-shadow {
		height: 280px;
	}

	.step-column .wp-block-column {
		font-size: var(--wp--preset--font-size--16);
	}

	.step-column .wp-block-column .sp {
		display: block !important;
	}

	.step-column .wp-block-column .icon {
		width: 120px;
		height: 120px;
		border-width: 5px;
		padding: 17px;
	}

}


@media ( max-width: 750px ) {

	.num-label,
	.step-column .step-num-label {
		width: 40px;
		height: 40px;
		line-height: 1.1;
	}

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

	.step-column .wp-block-column + .wp-block-column .step-arrow::before {
		width: 12px;
        top: -38px;
        left: calc(50% - 6px);
		transform: rotate(90deg);
	}

	.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;
	}

	.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);
		line-height: 1.8;
	}

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

	.step-column .wp-block-column .is-style-shadow {
		height: auto;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		gap: 1.6em;
		padding: 1.4em .6em 1.4em 0;
	}

	.step-column .wp-block-column .icon {
		width: 88px;
		height: 88px;
		margin: 0;
	}

	.step-column .wp-block-column .txt {
		font-size: 16px !important;
		margin: 0px auto 10px 0 !important;
		width: 10em;
		letter-spacing: .1em;
		text-align: left;
	}
	.step-column .wp-block-column .sp {
		display: none !important;
	}

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

	.step-column .step-arrow + p {
		margin-top: .8em;
		line-height: 1.5;
		letter-spacing: 0;
	}

}


/* 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--80);
}

.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;
}

.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 .wp-block-button .wp-block-button__link {
	display: block;
	padding: 19px;
}

.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 .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column.txt {
		padding-left: 72px !important;
		flex-basis: 70% !important;
	}

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

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

	.step-list .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column.img {
		flex-basis: calc( 30% - 1rem ) !important;
	}

}


@media ( max-width: 750px ) {

	.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--16);
	}

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

	.step-list .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column.txt {
		padding-left: 64px !important;
		padding-bottom: 0 !important;
	}

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

	.step-list .img {
		margin: 0 0 30px 64px;
	}

	.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: 150px !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--16);
	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--poppins);
}

.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;
}

.post-list .thumb {
	border: none;
	box-shadow: 0 2px 10px rgba( 0, 0, 0, .1 );
	transition: all .2s;
	overflow: hidden;
}

.post-list img {
	transition: all .6s;
	height: auto;
}

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

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

.wp-block-read-more.txt-none .btn {
	display: none;
	text-indent: -9999px;
	overflow: hidden;
}

/* is-style-slider-posts */

.is-style-slider-posts {
	max-width: 100%;
	position: relative;
}

.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) .is-style-slider-posts {
	margin-right: calc( var(--wp--preset--spacing--30) * -1 );
	margin-left: calc( var(--wp--preset--spacing--30) * -1 );
}
@media screen and (max-width: 750px) {
	.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 1.9em;
}

.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: 750px ) {

	.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) .is-style-slider-posts {
		margin-right: -1.9em;
		margin-left: -1.9em;
	}

}

main .is-style-slider-works.slick-slider {
	width: 1000px;
    margin: 0 auto;
	z-index: 2;
}
@media screen and (max-width: 1000px) {
	main .is-style-slider-works.slick-slider {
		width: 100%;
	}
}
@media screen and (max-width: 750px) {
	main .is-style-slider-works.slick-slider {
		margin-top: 30px;
		width: 300px;
	}
}

.is-style-slider-works-nav {
	width: 1012px;
    padding: 0 125px 20px;
    margin-top: 20px;
    margin-bottom: 40px;
    margin-block-end: 38px !important;
    z-index: 2;
}
@media screen and (max-width: 1000px) {
	.is-style-slider-works-nav {
		width: 100%;
	}
}
@media screen and (max-width: 750px) {
	.is-style-slider-works-nav {
		padding: 0
	}
}
.is-style-slider-works-nav .slick-list {
	width: 100%;
}

main .is-style-slider-works-nav  .slick-track {
	gap: 12px;
}

.is-style-slider-works-nav .slick-slide {
	position: relative;
    cursor: pointer; 
	margin-top: 0;
	margin-block-start: 0;
}

.is-style-slider-works-nav .slick-slide::before {
    content: "";
	position: absolute !important;
	background-color: #000;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	opacity: 0.5;
	transition: opacity 0.3s;
}

.is-style-slider-works-nav .slick-current.slick-slide::before {
    opacity: 0;
}

/* 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 {
	gap: 3.7em 3em;
	border: none;
}

.post-list.is-layout-grid > * {
	flex: 1;
}

.post-list.is-layout-grid .post-item {
	border: none;
	margin: 0;
	text-align: center;
}

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

.post-list.is-layout-grid .post-item .post-meta {
	flex-direction: row !important;
}

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

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

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

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

.post-list.is-layout-grid .post-item .wp-block-post-title {
	font-size: var(--wp--preset--font-size--20);
	/*
	display: grid;
	place-content: center left;
	*/
}

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

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

	.post-list.is-layout-grid {
		gap: 3em var(--wp--preset--spacing--40);
	}

}


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

	.post-list.is-layout-grid .post-item {
		gap: .8em;
	}

}


/* 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--16);
	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 {
	gap: 6px;
	margin-top: 1.3em;
}

.post-list--thumb-meta .post-list .post-item .wp-block-post-excerpt__excerpt {
	margin-top: -5px;
    line-height: 2.2;
	font-size: var(--wp--preset--font-size--14);
	letter-spacing: .04em;
	text-align: left;
}

.home .post-list--thumb-meta .post-list .post-item .wp-block-post-excerpt__excerpt {
	color: #ffffff;
}

.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;
}

.post-list--thumb-meta .post-list.is-layout-grid .post-item .wp-block-post-title {
	position: relative;
	display: inline-block;
	font-size: var(--wp--preset--font-size--28);
	font-weight: normal;
	font-family: 'Noto Serif', serif;
	letter-spacing: .1em;
	background-color: #000000;
	color: #ffffff;
	margin-top: -33px;
	padding: 9px 20px;
	transform: translateY(-22px);
    z-index: 9;
}

@media screen and (max-width: 750px) {
	.post-list--thumb-meta .post-list.is-layout-grid .post-item .wp-block-post-title {
		max-width: 280px;
		padding: 9px 13px;
    	transform: translateY(-14px);
	}
	.post-type-archive-service .post-list--thumb-meta .post-list.is-layout-grid .post-item .wp-block-post-title {
		width: 240px;
		display: block;
		max-width: 100%;
		margin-top: -9px;
	}
}

.post-type-archive-works .post-list--thumb-meta .post-list.is-layout-grid .post-item .wp-block-post-title,
.tax-works-item-location .post-list--thumb-meta .post-list.is-layout-grid .post-item .wp-block-post-title,
.tax-construction .post-list--thumb-meta .post-list.is-layout-grid .post-item .wp-block-post-title,
.tax-works-construction .post-list--thumb-meta .post-list.is-layout-grid .post-item .wp-block-post-title {
	font-size: var(--wp--preset--font-size--18);
	background-color: transparent;
	color: #111111;
	padding: 0;
	margin-top: 5px;
	transform: translateY(0px);
	text-align: left;
}

.post-type-archive-works .case-list li,
.tax-works-item-location .case-list li,
.tax-construction .case-list li,
.tax-works-construction .case-list li {
	display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.works-sec .post-list--thumb-meta .post-list.is-layout-grid .post-item .wp-block-post-title {
	font-size: var(--wp--preset--font-size--20);
	border-bottom: solid 1px rgba(255, 255, 255, 0.2);
	background-color: transparent;
	max-width: 100%;
	margin-top: -10px;
	padding-right: 30px;
	padding-left: 0;
}

.works-sec .service-list-case .post-list--thumb-meta .post-list.is-layout-grid .post-item .wp-block-post-title {
    margin-top: 8px;
    text-align: left;
}

.works-sec .service-list-case  .wp-block-buttons {
	margin-top: 16px;
}

.works-sec .service-list-case .wp-block-button.is-style-arrow-right .wp-block-button__link {
	margin-top: 0;
}

.works-sec .post-list--thumb-meta .post-list.is-layout-grid .post-item .wp-block-post-title::before {
	content: "";
    width: 11px;
    height: 10px;
    background: url(../img/page/2x/arrow-01.png) center center / contain no-repeat;
    position: absolute;
    top: calc(50% - 5px);
    right: 0px;
    transition: all .2s;
}

@media screen and (max-width: 750px) {
	.works-sec .post-list--thumb-meta .post-list.is-layout-grid .post-item .wp-block-post-title {
		font-size: 12px !important;
	}
	.works-sec .post-list--thumb-meta .post-list.is-layout-grid .post-item .wp-block-post-title::before {
		width: 10px;
    	height: 8px;
	}
}

.works-sec .service-list-case {
	width: 100%;
    max-width: 100%;
    padding: 68px 0;
    margin-left: 0;
    margin-right: 0;
}
@media screen and (max-width: 1000px) {
	.works-sec .service-list-case {
		padding: 80px 20px;
	}
}

.works-sec .post-list.is-layout-grid {
	gap: 4.5em 2em;
}

.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;
}


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

1000

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

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

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

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

}

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

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);
	}

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

	.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.is-layout-grid .post-item .wp-block-post-title {
		font-size: var(--wp--preset--font-size--14);
	}

	.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;
	}

	.post-list--thumb-meta .post-list .post-item .post-title-meta {
		gap: 4px;
		margin-top: .5em;
	}

	.post-list--thumb-meta .post-list .post-item .wp-block-post-excerpt__excerpt {
		line-height: 2.1;
		letter-spacing: .08em;
		margin-top: 2px;
	}

}

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

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);
	}

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

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

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

	.wp-block-page-list .wp-block-pages-list__item__link:hover {
		color: var(--wp--preset--color--primary);
	}

	.wp-block-categories-list .cat-item::after {
		transform: right .3s;
	}

	.wp-block-categories-list .cat-item a:hover::after {
		right: -5px;
	}

	footer .wp-block-categories-list .cat-item {
		transition: color .5s;
	}

	footer .wp-block-categories-list .cat-item a:hover {
		background-color: transparent;
		color: var(--wp--preset--color--primary);
	}

	.area-list .wp-block-categories-list .cat-item a:hover {
		background-color: transparent;
		color: var(--wp--preset--color--primary);
	}
	.area-list .wp-block-categories-list .cat-item a:hover::before {
		color: var(--wp--preset--color--contrast);
	}

	.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 .post {
	margin: 0 var(--wp--preset--spacing--20);
	padding: 0 !important;
	border: solid 1px var(--wp--preset--color--gray);
}

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

.post-slider-box .post 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 {
	margin-top: 1.4em;
}

.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);
}

/* hover */

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

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

}


/* 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--poppins);
	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--poppins);
	font-size: var(--wp--preset--font-size--14);
	vertical-align: middle;
}


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

	.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--16);
	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--16);
}

.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: 10px 0;
}

.is-style-slider-thumbnail + .slider-nav .slick-track {
	display: flex;
	gap: 10px;
}

.is-style-slider-thumbnail + .slider-nav .slick-track::before,
.is-style-slider-thumbnail + .slider-nav .slick-track::after {
	display: none;
}

.is-style-slider-thumbnail + .slider-nav .thumb {
	flex: 1;
	cursor: pointer;
	position: relative;
}

.is-style-slider-thumbnail + .slider-nav .thumb::after {
	content: "";
	position: absolute;
	inset: 0;
	border: solid 2px transparent;
	transition: all .2s;
}

.is-style-slider-thumbnail + .slider-nav .thumb.slick-current::after {
	border: solid 2px var(--wp--preset--color--contrast);
}

.is-style-slider-thumbnail + .slider-nav .thumb img {
	aspect-ratio: 4 / 3;
}

.is-style-slider-thumbnail .slick-slide {
	margin: 0;
}

.is-style-slider-thumbnail .slick-prev {
	left: -24px;
}

.is-style-slider-thumbnail .slick-next {
	right: -24px;
}

/* hover */

@media ( min-width: 751px ) {

	.is-style-slider-thumbnail + .slider-nav .thumb:hover::after {
		border: solid 2px var(--wp--preset--color--primary);
	}

}

/* fade */

.is-style-slider-fade .slick-slide {
	margin: 0;
}


/* 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;
	}

}

/* fv top */
.fv-video-cover::after {
	content: "";
    position: absolute;
	width: 100%;
    max-width: 1480px;
    height: 780px;
    z-index: 2;
    background-repeat: no-repeat;
    background-position: center;
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMTMyMXB4IiBoZWlnaHQ9Ijc4MXB4Ij48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGZpbGw9InJnYigyNTUsIDI1NSwgMjU1KSIgZD0iTTEzMjAuMDgzLDQxMC4wNzYgTDEzMTkuNTgzLDQxMC45NDIgTDYyNi43NjIsMTAuOTQyIEw2MjcuMjYyLDEwLjA3NiBMMTMyMC4wODMsNDEwLjA3NiBaIi8+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBmaWxsPSJyZ2IoMjU1LCAyNTUsIDI1NSkiIGQ9Ik0xMzIwLjA4Myw0MDAuMDc2IEwxMzE5LjU4Myw0MDAuOTQyIEw2MjYuNzYyLDAuOTQyIEw2MjcuMjYyLDAuMDc2IEwxMzIwLjA4Myw0MDAuMDc2IFoiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGZpbGw9InJnYigyNTUsIDI1NSwgMjU1KSIgZD0iTTEzMTkuNTgzLDM3MC4wNTggTDEzMjAuMDgzLDM3MC45MjUgTDYyNy4yNjIsNzcwLjkyNSBMNjI2Ljc2Miw3NzAuMDU4IEwxMzE5LjU4MywzNzAuMDU4IFoiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGZpbGw9InJnYigyNTUsIDI1NSwgMjU1KSIgZD0iTTEzMTkuNTgzLDM4MC4wNTggTDEzMjAuMDgzLDM4MC45MjUgTDYyNy4yNjIsNzgwLjkyNCBMNjI2Ljc2Miw3ODAuMDU4IEwxMzE5LjU4MywzODAuMDU4IFoiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGZpbGw9InJnYigyNTUsIDI1NSwgMjU1KSIgZD0iTTEuNDE3LDQxMC45NDIgTDAuOTE3LDQxMC4wNzYgTDY5My43MzgsMTAuMDc2IEw2OTQuMjM4LDEwLjk0MiBMMS40MTcsNDEwLjk0MiBaIi8+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBmaWxsPSJyZ2IoMjU1LCAyNTUsIDI1NSkiIGQ9Ik0xLjQxNyw0MDAuOTQyIEwwLjkxNyw0MDAuMDc2IEw2OTMuNzM4LDAuMDc2IEw2OTQuMjM4LDAuOTQyIEwxLjQxNyw0MDAuOTQyIFoiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGZpbGw9InJnYigyNTUsIDI1NSwgMjU1KSIgZD0iTTAuOTE3LDM3MC45MjUgTDEuNDE3LDM3MC4wNTggTDY5NC4yMzgsNzcwLjA1OCBMNjkzLjczOCw3NzAuOTI1IEwwLjkxNywzNzAuOTI1IFoiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGZpbGw9InJnYigyNTUsIDI1NSwgMjU1KSIgZD0iTTAuOTE3LDM4MC45MjUgTDEuNDE3LDM4MC4wNTggTDY5NC4yMzgsNzgwLjA1OCBMNjkzLjczOCw3ODAuOTI0IEwwLjkxNywzODAuOTI1IFoiLz48L3N2Zz4=");
}
@media screen and (max-width: 750px) {
	.fv-video-cover::after {
		height: 64vh;
        transform: translateY(7px);
		background-size: cover;
	}
}

.fv-txt {
	transform: translateY(-8px);
}
@media screen and (max-width: 750px) {
	.fv-txt {
		transform: translateY(14px);
	}
}

.fv-text-en {
	position: relative;
    letter-spacing: .58em;
    z-index: 2;
    padding-bottom: 35px;
    transform: translatex(8px);
}

.fv-text-lead {
	position: relative;
    z-index: 2;
    margin-top: 78px;
    letter-spacing: 0.14em;
}

.fv-text-main {
	position: relative;
	margin-top: 38px;
    line-height: 1.3;
    letter-spacing: .07em;
}
@media screen and (max-width: 500px) {
	.fv-text-en {
		padding-bottom: 35px;
    	transform: translatex(3px);
	}
	.fv-text-lead {
		margin-top: 31px;
	}
	.fv-txt p {
		position: relative;
		font-size: 10px !important;
	}
	.fv-txt p.fv-text-main {
		font-size: 29px !important;
		margin-top: 0;
	}
}
.fv-text-main::before,
.fv-text-main::after {
	content: "";
	position: absolute;
	background-color: #ffffff;
	width: 100%;
	max-width: 70px;
	height: 1px;
	left: calc(50% - 35px);
}
.fv-text-main::before {
	bottom: -46px;
}

.fv-text-main::after {
	top: -35px;
}

@media screen and (max-width: 750px) {
	.fv-text-main::before,
	.fv-text-main::after {
		left: calc(50% - 16px);
		max-width: 32px;
	}
	.fv-text-main::before {
		bottom: -19px;
	}
	.fv-text-main::after {
		top: -18px;
	}
}

.fv-box .wp-block-cover.fv-video-cover::before {
    content: "scroll";
    font-family: var(--wp--preset--font-family--dm-sans) !important;
    color: #ffffff;
    position: absolute;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%);
    width: 100px;
    padding-bottom: 50px;
    font-size: 16px;
    text-align: center;
    text-transform: uppercase;
    z-index: 3;
    background-image: url(../img/page/2x/arrow-down.png);
    background-repeat: no-repeat;
    background-position: center calc(100% - 10px);
    background-size: 14px auto;
    animation: scrollArrowBg 1.8s infinite ease-in-out;
}

@media screen and (max-width: 750px) {
	.fv-box .wp-block-cover.fv-video-cover::before {
		bottom: 8px;
		font-size: 12px;
		padding-bottom: 38px;
		background-size: 8px auto;
	}
}

@keyframes scrollArrowBg {
    0% {
        background-position: center calc(100% - 10px);
        opacity: 1;
    }
    50% {
        background-position: center 100%;
        opacity: 0.4;
    }
    100% {
        background-position: center calc(100% - 10px);
        opacity: 1;
    }
}

.block-editor-block-list__layout.is-root-container > .alignfull {
	margin-top: 0;
	padding: 0;
}
