/*
Theme Name: celebrationlife
Theme URI: 
Author: 
Author URI: 
Description: 
Requires at least: 6.0
Tested up to: 6.4.2
Requires PHP: 5.7
Version: 2.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: sigma
Tags: 
*/

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

common

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

html, body {
	height: 100svh;
	overscroll-behavior-y: none;
}

.wp-block-heading,
.wp-block-post-title {
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
}

body .en,
body .is-style-en,
body .is-style-mincho {
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
}

.is-acf-field br + br {
	display: none !important;
}

.contents-wrap {
	margin-top: 0;
}

.vertical-txt {
	writing-mode: vertical-rl;
}

.col-03 {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr);
}

.dl-01 {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: .5em 0;
	align-items: center;
	margin: 0;
	line-height: 1.5;
}

.dl-01 dt {
	font-size: .9em;
	border: solid 1px var(--wp--preset--color--custom-purple);
	color: var(--wp--preset--color--custom-purple);
	padding: .2em .8em;
	text-align: center;
}

.dl-01 dd {
	margin: 0;
	padding: 0 .8em;
}


/* is-style-left-line
----------------------------------------*/

.is-style-left-line {
	font-size: var(--wp--preset--font-size--28);
	border-left: solid 3px var(--wp--preset--color--custom-purple);
	padding-left: .6em;
}

/* is-style-lr-line
----------------------------------------*/

.is-style-lr-line {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 1em;
	width: 100%;
	font-size: var(--wp--preset--font-size--24);
	color: var(--wp--preset--color--custom-purple);
}

/*
.is-style-lr-line::before,
.is-style-lr-line::after {
	content: "";
	height: 3px;
	flex: 1;
	border-top: solid 1px #aaa;
	border-bottom: solid 1px #aaa;
}
*/

/* full-slider
----------------------------------------*/

.full-slider .post-list {
	display: flex;
	justify-content: center;
}

.slider .wp-block-post {
	width: 400px;
	max-width: 100%;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	border-radius: 5px;
	padding: var(--wp--preset--spacing--30) !important;
	margin-top: var(--wp--preset--spacing--20);
	margin-bottom: var(--wp--preset--spacing--20);
}

.full-slider .post-list .img {
	text-align: center;
}

.full-slider .wp-block-post-terms,
.post-list.is-layout-grid .wp-block-post-terms {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 99;
}

.full-slider .wp-block-post-terms a,
.post-list.is-layout-grid .wp-block-post-terms a {
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
}

.full-slider .wp-block-post .txt,
.post-list.is-layout-grid .wp-block-post .txt {
	gap: .2em;
	margin-top: 1em;
}

.full-slider .wp-block-post-date,
.post-list.is-layout-grid .wp-block-post-date {
	font-size: var(--wp--preset--font-size--14);
	color: var(--wp--preset--color--dark-gray);
}

.full-slider .wp-block-post .txt .wp-block-post-title,
.post-list.is-layout-grid .wp-block-post .txt .wp-block-post-title {
	margin: 0 0 .25em;
}

.full-slider .wp-block-post-terms .cremation,
.post-list.is-layout-grid .wp-block-post-terms .cremation {
	background-color: var(--wp--preset--color--custom-color-01);
	border-color: var(--wp--preset--color--custom-color-01);
}

.full-slider .wp-block-post-terms .funeral,
.post-list.is-layout-grid .wp-block-post-terms .funeral {
	background-color: var(--wp--preset--color--custom-color-02);
	border-color: var(--wp--preset--color--custom-color-02);
}

.full-slider .wp-block-post-terms .family,
.post-list.is-layout-grid .wp-block-post-terms .family {
	background-color: var(--wp--preset--color--custom-color-03);
	border-color: var(--wp--preset--color--custom-color-03);
}

.full-slider .wp-block-post-terms .public,
.post-list.is-layout-grid .wp-block-post-terms .public {
	background-color: var(--wp--preset--color--custom-color-04);
	border-color: var(--wp--preset--color--custom-color-04);
}

.full-slider .wp-block-post-terms .joint,
.post-list.is-layout-grid .wp-block-post-terms .joint {
	background-color: var(--wp--preset--color--custom-color-05);
	border-color: var(--wp--preset--color--custom-color-05);
}

main .full-slider .slick-prev {
	left: calc( 15% - 24px );
}

main .full-slider .slick-next {
	right: calc( 15% - 24px );
}

/* funeral
----------------------------------------*/

.funeral-ttl {
	margin-bottom: 2.5em;
}

.funeral-ttl .free-calls {
	padding-top: .2em;
}

.funeral-list .copy {
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
	font-size: var(--wp--preset--font-size--18);
	width: 100%;
	text-align: center;
}

.funeral-list .copy .value {
	text-align: left;
	background-color: var(--wp--preset--color--light-gray);
	border-radius: 5px;
	padding: .4em 1em .6em;
}


/* funeral-list-slider
----------------------------------------*/

.funeral-list-slider {
	display: block;
	width: 100%;
}

.funeral-list-slider .funeral-list {
	display: flex;
	width: 100%;
	margin-right: 0;
	margin-left: 0;
}

.funeral-list-slider:has( > .funeral-list.funeral-list--1 ) {
	width: 25%;
	margin-right: auto;
	margin-left: auto;
}

.funeral-list-slider:has( > .funeral-list.funeral-list--2 ) {
	width: 50%;
	margin-right: auto;
	margin-left: auto;
}

.funeral-list-slider:has( > .funeral-list.funeral-list--3 ) {
	width: 75%;
	margin-right: auto;
	margin-left: auto;
}

.funeral-list-slider .funeral-list .funeral {
	padding: 0 !important;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	margin-top: var(--wp--preset--spacing--20);
	margin-bottom: var(--wp--preset--spacing--20);
}

.funeral-list-slider .wp-block-post .img:has( > .default-image ) {
	border: none;
	border-bottom: solid 1px var(--wp--preset--color--gray);
}

.funeral-list-slider .wp-block-post-title {
	font-size: var(--wp--preset--font-size--22);
	margin: 0;
	gap: .5em;
}

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

.funeral-list-slider .is-style-no-link a {
	padding: .2em .6em;
}

.funeral-list-slider .address {
	font-size: var(--wp--preset--font-size--14);
}

/* .wp-block-post
----------------------------------------*/

.wp-block-post {
	margin: 0 1em;
	position: relative;
	background-color: var(--wp--preset--color--base);
	padding: 1em 1em 1.5em;
}

.wp-block-post .img {
	overflow: hidden;
	line-height: .5;
	transition: all .4s;
}

.wp-block-post .img:has( > .default-image ) {
	border: solid 1px var(--wp--preset--color--gray);
}

.wp-block-post .img img {
	transition: all .4s;
/*	aspect-ratio: 4 / 3; */
	width: 100% !important;
	height: auto !important;
}

.wp-block-post .more-link {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 99;
	margin: 0;
	overflow: hidden;
}

.wp-block-post .more-link .btn {
	color: transparent;
	opacity: 0;
	visibility: hidden;
	text-indent: -9999px;
	overflow: hidden;
	z-index: -1;
}

.wp-block-post .more-link.btn-txt .btn {
	opacity: 1;
	visibility: visible;
	z-index: 1;
	position: absolute;
	right: 1em;
	bottom: 1em;
}

.editor-styles-wrapper .wp-block-post .more-link {
	position: relative;
}

.editor-styles-wrapper .wp-block-post .more-link .btn {
	opacity: 1;
	visibility: visible;
	z-index: inherit;
}

.wp-block-post .txt {
	display: flex;
	flex-direction: column;
	gap: 1em;
	flex-wrap: nowrap;
	margin-top: var(--wp--preset--spacing--20);
	line-height: 1.5;
}

.wp-block-post-excerpt__more-text {
	display: none !important;
}

.wp-block-post .meta {
	gap: 0 1em;
}

.material-icon .value {
	white-space: nowrap;
	font-size: var(--wp--preset--font-size--14);
}

.material-icon .value::before {
	display: inline-block;
	width: 25px;
	text-align: center;
	font-family: 'Material Symbols Outlined';
	font-variation-settings:
		'FILL' 1;
	color: var(--wp--preset--color--primary);
	font-size: 1.5em;
	line-height: 25px;
	vertical-align: middle;
	transform: translateY(-.05em);
}

.material-icon.user .value::before {
	content: '\e7fd';
}

.material-icon.map .value::before {
	content: '\e0c8';
	font-size: 1.3em;
}

/* price
----------------------------------------*/

.price {
	line-height: 1.3;
}

.price strong,
.price .num {
	font-family: "Roboto", sans-serif;
	font-weight: 500 !important;
	font-size: 1.375em;
	color: var(--wp--preset--color--secondary);
	display: inline-block;
	transform: translateY( 2% );
}

.price-num-black strong,
.price-num-black .num {
	color: #000;
}

.price .tax {
	font-size: var(--wp--preset--font-size--14);
}

/* title
----------------------------------------*/

.title-01 {
	gap: .2em;
	letter-spacing: .05em;
}

.title-01 .wp-block-heading,
.title-01 .wp-block-post-title {
	font-size: var(--wp--preset--font-size--40);
	line-height: 1.5;
}

.title-01:not(:has(.ttl)) .wp-block-heading,
.title-01:not(:has(.ttl)) .wp-block-post-title,
.title-01 .ttl {
	position: relative;
	z-index: 99;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: .7em;
}

.title-01:not(:has(.ttl)) .wp-block-heading::before,
.title-01:not(:has(.ttl)) .wp-block-heading::after,
.title-01:not(:has(.ttl)) .wp-block-post-title::before,
.title-01:not(:has(.ttl)) .wp-block-post-title::after,
.title-01 .ttl::before,
.title-01 .ttl::after {
	content: '';
	display: inline-block;
	width: 100px;
	height: 5px;
	border-top: solid 1px #aaa;
	border-bottom: solid 1px #aaa;
	margin-top: 5px;
}

.title-01 strong {
	font-size: 1.5em;
	line-height: 1;
	transform: translateY( -.1em);
	color: var(--wp--preset--color--contrast);
	margin-right: .1em;
}

.title-01 em {
	font-size: .75em;
	font-style: normal;
}

.title-01 .sub {
	font-size: var(--wp--preset--font-size--18);
	text-transform: capitalize;
	color: var(--wp--preset--color--custom-purple);
	letter-spacing: .2em;
}

.title-01 .note {
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
	font-size: var(--wp--preset--font-size--24);
	line-height: 1.5;	
}

.title-02 {
	gap: .15em;
	letter-spacing: .2em;
}

.title-02 .wp-block-heading,
.title-02 .wp-block-post-title {
	font-size: var(--wp--preset--font-size--48);
	line-height: 1.5;
	letter-spacing: .03em;
	position: relative;
	z-index: 99;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: .5em;
}

.title-02 .sub {
	font-size: var(--wp--preset--font-size--18);
	text-transform: capitalize;
	line-height: 1.5;
	color: var(--wp--preset--color--custom-purple);
}

/* bg-01
----------------------------------------*/

.is-style-bg-01 {
	background: var(--wp--preset--color--light-gray) url( ./assets/img/page/common/2x/bg-01.png ) center top / 100% no-repeat !important;
	margin-top: 0 !important;
	padding-top: 90px;
	padding-bottom: 64px;
	position: relative;
}

.is-style-bg-01::before {
	content: "";
	width: 1px;
	height: 75px;
	background-color: var(--wp--preset--color--custom-purple);
	position: absolute;
	top: -30px;
	left: 50%;
}

/* bg-02
----------------------------------------*/

.is-style-bg-02 {
	background: linear-gradient(to bottom, #fff 80%, var(--wp--preset--color--light-gray) 100%);
}

/* wp-block-post-terms
----------------------------------------*/

.wp-block-post-terms a {
	padding: .4em .8em;
	background-color: var(--wp--preset--color--base);
	transition: all .2s;
}

/* reason-list
----------------------------------------*/

.reason-list {
	counter-reset: reason;
	margin-top: var(--wp--preset--spacing--60);
	gap: var(--wp--preset--spacing--80) var(--wp--preset--spacing--40) !important;
}

.reason-list .reason {
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--30);
	gap: var(--wp--preset--spacing--20);
	counter-increment: reason;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	border-radius: 10px;
	position: relative;
}

.reason-list .reason::before,
.reason-list .reason::after {
	display: inline-block;
	width: 60px;
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
	text-align: center;
	font-size: var(--wp--preset--font-size--14);
	line-height: 1.5;
	text-transform: capitalize;
	color: var(--wp--preset--color--custom-purple);
	position: absolute;
	top: -10px;
	left: -15px;
}

.reason-list .reason::before {
	content: "reason";
	transform: translateY(-100%);
}

.reason-list .reason::after {
	content: counter(reason, decimal-leading-zero);
	font-size: var(--wp--preset--font-size--40);
	line-height: 1;
}

.reason-list .wp-block-image {
	position: relative;
}

.reason-list .wp-block-image::before {
	content: "";
	width: 80px;
	height: 1px;
	background-color: var(--wp--preset--color--custom-purple);
	position: absolute;
	top: 10px;
	left: -30px;
	transform: rotate( -45deg );
}

.reason-list .txt {
	gap: var(--wp--preset--spacing--20);
}

.reason-list .wp-block-heading {
	font-size: var(--wp--preset--font-size--16);
}

.reason-list .wp-block-heading strong {
	font-size: 1.25em;
}

/* facility-list
----------------------------------------*/

.facility-list {
	counter-reset: facility;
	margin-top: var(--wp--preset--spacing--60);
	gap: var(--wp--preset--spacing--80) var(--wp--preset--spacing--40) !important;
}

.facility-list .facility {
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--30);
	gap: var(--wp--preset--spacing--20);
	counter-increment: facility;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	border-radius: 10px;
	position: relative;
}

.facility-list .facility::before,
.facility-list .facility::after {
	display: inline-block;
	width: 60px;
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
	text-align: center;
	font-size: var(--wp--preset--font-size--14);
	line-height: 1.5;
	text-transform: capitalize;
	color: var(--wp--preset--color--custom-purple);
	position: absolute;
	top: -10px;
	left: -15px;
}

.facility-list .facility::before {
	transform: translateY(-100%);
}

.facility-list .facility::after {
	font-size: var(--wp--preset--font-size--40);
	line-height: 1;
}

.facility-list .wp-block-image {
	position: relative;
}

.facility-list .wp-block-image::before {
	width: 80px;
	height: 1px;
	background-color: var(--wp--preset--color--custom-purple);
	position: absolute;
	top: 10px;
	left: -30px;
	transform: rotate( -45deg );
}

.facility-list .txt {
	gap: var(--wp--preset--spacing--20);
}

.facility-list .wp-block-heading {
	font-size: var(--wp--preset--font-size--16);
}

.facility-list .wp-block-heading strong {
	font-size: 1.25em;
}
/*
----------------------------------------

top

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

.fv-box {
	overflow: hidden;
	position: relative;
}

.home .fv-box::after {
	content: '';
	width: 41.176471vw;
	height: 41.176471vw;
	max-width: 700px;
	max-height: 700px;
	border: solid 2px var(--wp--preset--color--custom-purple);
	border-radius: 50%;
	position: absolute;
	top: 3.4vw;
	left: 2.4vw;
	z-index: -1;
	opacity: .1;
}

.fv-box .fv-block {
	padding: 0 0 70px;
	min-height: initial !important;
}

.fv-box .wp-block-cover__image-background {
	object-position: center bottom !important;
	height: 100%;
	z-index: -2;
}

.fv-box .fv-cont {
	gap: 0;
}

.fv-box .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column.ttl {
	/* flex-basis: 35.647059% !important; */
	flex-basis: 36% !important;
}

.fv-box .txt-wrap {
	padding-top: 3.4vw;
	padding-left: 10.4vw;
	gap: 1.6em;
}

.fv-box .txt-wrap img {
	transition: width .2s;
}

.fv-box .ttl .en-txt {
	font-size: var(--wp--preset--font-size--12);
	color: var(--wp--preset--color--custom-purple);
	letter-spacing: .18em;
}

.fv-box .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column.cont {
	/* flex-basis: 44.352941% !important; */
	flex-basis: 40% !important;
	position: relative;
	/* padding-bottom: var(--wp--preset--spacing--20); */
	padding-bottom: 2em;
}

.fv-box .cont .fv-img {
	text-align: right;
	overflow: hidden;
}

.fv-box .cont .fv-img > img {
	transform: translateY(-32px);
}

.fv-box .fv-feature-list {
	gap: 1em;
	margin: 0 1em 0 4.2em;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 99;
}

.fv-feature-list .feature {
	width: 234px;
	height: 234px;
	justify-content: center;
	align-items: center;
	gap: 0;
	background: url( ./assets/img/common/2x/feature-bg.png ) center center / contain no-repeat;
	padding-bottom: .2em;
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--22);
	line-height: 1.63636364;
	transition: all .2s;
}

.fv-feature-list .feature .num {
	font-size: var(--wp--preset--font-size--18);
	color: var(--wp--preset--color--base);
	line-height: 1;
}

.fv-feature-list .feature .num strong {
	font-size: var(--wp--preset--font-size--32);
	font-weight: 500;
	color: var(--wp--preset--color--base);
}

.fv-feature-list .feature .sub {
	display: inline-block;
	font-size: var(--wp--preset--font-size--18);
	border-bottom: solid 1px var(--wp--preset--color--base);
	margin-bottom: .5em;
}

.fv-box .fv-bg-txt {
	font-size: var(--wp--preset--font-size--120);
	color: var(--wp--preset--color--base);
	white-space: nowrap;
	line-height: 1;
	letter-spacing: -.005em;
	margin-top: 0;
	padding-bottom: .2em;
}

body.home .wp-block-template-part:has( > .yoast-breadcrumbs ) {
	display: none;
}


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

block

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

.sec-box {
	margin-top: 0 !important;
	padding-top: var(--wp--preset--spacing--60);
	padding-bottom: var(--wp--preset--spacing--80);
}

.trouble-block {
	background: #038941 url( ./assets/img/common/2x/trouble-bg.png ) right top / 316px no-repeat;
	color: var(--wp--preset--color--base);
	padding: 2em 3.6em 2.2em;
	position: relative;
}

.balloon-wrap {
	display: flex;
	justify-content: center;
	position: absolute;
	top: -30px;
	right: 0;
	left: 0;
	text-align: center;
	letter-spacing: .18em;
}

.balloon-wrap .balloon {
	display: grid;
	place-content: center;
	height: 50px;
	border-radius: 25px;
	padding: 0 var(--wp--preset--spacing--30) !important;
	background-color: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--base);
	font-size: var(--wp--preset--font-size--24);
	box-shadow: 0 4px 10px rgba( 0, 0, 0, .1 );
	position: relative;
}

.balloon-wrap .balloon strong {
	color: var(--wp--preset--color--base);
	font-size: 1.273em;
	line-height: 1;
}

.balloon-wrap .balloon::after {
	content: "";
	width: 0;
	height: 0;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	border-top: 10px solid var(--wp--preset--color--secondary);
	position: absolute;
	bottom: -10px;
	left: calc( 50% - 10px );
}

.trouble-block .cont {
	margin: 0;
	gap: var(--wp--preset--spacing--20) 0;
}

.trouble-block .txt {
	flex-basis: 50% !important;
}

.trouble-block .ttl {
	font-size: var(--wp--preset--font-size--36);
	letter-spacing: .08em;
}

.trouble-block .read {
	font-size: var(--wp--preset--font-size--16);
	margin-block-start: 1em;
	line-height: 1.8;
	letter-spacing: .09em;
}

.trouble-block .trouble {
	flex-basis: 50% !important;
	padding: 10px 36px 0;
}

.trouble-block .trouble .icon-wrap {
	gap: 1em;
}

.trouble-block .trouble .icon {
	display: grid;
	place-content: center;
	width: 160px;
	height: 160px;
	flex-shrink: 0;
	border-radius: 50%;
	background: #fcd34d url(./assets/img/common/2x/trouble-icon.png) center center / 18px no-repeat;
	padding-top: .2em;
	font-size: var(--wp--preset--font-size--24);
	text-align: center;
	line-height: 1.41666667;
	transition: all .2s;
}

.trouble-block .trouble-img {
	position: absolute;
	right: 0;
	bottom: 0;
	margin: 0;
}

.trouble-block .trouble-img img {
	transition: whdth .2s;
}

.btn-set {
	gap: 0 !important;
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
}

.btn-hurry {
	background: var(--wp--preset--color--secondary) url( ./assets/img/common/2x/arrow-01.png) right .8em center / 13px no-repeat;
	color: var(--wp--preset--color--base);
	gap: .6em;
	text-align: left;
	line-height: 1.412;
	letter-spacing: .1em;
	white-space: nowrap;
	height: 100px;
	padding: 0 2.4em 0 .8em;
	transition: background .2s,  filter .2s;
}

.btn-order .wp-block-button__link {
	display: grid;
	place-content: end center;
	border: 0px;
	width: 170px;
	height: 100px;
	padding: .6em;
	font-size: var(--wp--preset--font-size--14);
	background:#02215e url( ./assets/img/common/2x/icon-flower.png ) center top 1.3em / 46px no-repeat;
	transition: filter .2s;
}

.btn-order-sub {
	background:#02215e url( ./assets/img/common/2x/arrow-01.png) right .8em center / 13px no-repeat;
	color: #ffffff;
	font-size: var(--wp--preset--font-size--16);
	height: 80px;
	gap: .6em;
	text-align: left;
	line-height: 1.412;
	letter-spacing: .1em;
	white-space: nowrap;
	padding: 0 2.4em 0 .8em;
	transition: background .2s,  filter .2s;
}

.btn-contact .wp-block-button__link {
	display: grid;
	place-content: end center;
	width: 120px;
	height: 100px;
	padding: .6em;
	font-size: var(--wp--preset--font-size--14);
	background: var(--wp--preset--color--primary) url( ./assets/img/common/2x/icon-mail.png ) center top 1.5em / 46px no-repeat;
	transition: filter .2s;
}

/* comparison
----------------------------------------*/

.scroll-wrap {
	overflow: auto;
}

.comparison-block {
	margin-top: 3em;
	position: relative
}

.comparison-block .swipe {
	display: none;
}

.comparison-table {
	background-color: var(--wp--preset--color--base);
	text-align: center;
	min-width: 690px;
}

.comparison-table .wp-block-columns {
	gap: 0;
}

.comparison-table .plan-head {
	background-color: var(--wp--preset--color--dark-gray);
	color: var(--wp--preset--color--base);
	height: 60px;
}

.comparison-table .wp-block-columns {
	flex-wrap: nowrap !important;
}

.comparison-table .plan-name {
	flex: 1 !important;
}

.comparison-table .plan-price {
	flex: .51 !important;
}

.comparison-table .plan-num {
	flex: .28 !important;
}

.comparison-table .plan-flow {
	flex: .55 !important;
}
/* plan-flow列の中では絶対に切れないようにする */
.comparison-table .plan-body > .plan-flow {
  place-content: center;        /* そのままでOK */
  padding: 0;                    /* 必要なら */
}

.comparison-table .plan-body .plan-flow img{
  width: 271px !important;       /* 既存のwidthに合わせる */
  height: auto !important;
  max-height: 100% !important;   /* ←これが効く */
  display: block;
  object-fit: contain;
}

.comparison-table .link-to-cover-and-group-blocks {
	color: var(--wp--preset--color--contrast) !important;
	transition: background .2s;
}

.comparison-table .link-to-cover-and-group-blocks:has( > .plan-body ) {
	display: block;
	transition: background .2s;
}

.comparison-table .plan-body {
	height: 121px;
	border-bottom: solid 1px var(--wp--preset--color--gray);
	margin: 0;
}

.comparison-table .plan-body > .wp-block-column {
	width: 100%;
	height: 100%;
	display: grid;
	place-content: center;
}

.comparison-table .plan-body > .wp-block-column + .wp-block-column {
	border-left: solid 1px var(--wp--preset--color--gray);
}

.comparison-table .plan-body .plan-name {
	font-size: var(--wp--preset--font-size--26);
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
	color: var(--wp--preset--color--custom-color-01);
	background-color: var(--wp--preset--color--custom-bg-color-01);
	border-left: solid 5px var(--wp--preset--color--custom-color-01);
	display: block;
}

.comparison-table .plan-body.plan-02 .plan-name {
	color: var(--wp--preset--color--custom-color-02);
	background-color: var(--wp--preset--color--custom-bg-color-02);
	border-left: solid 5px var(--wp--preset--color--custom-color-02);
}

.comparison-table .plan-body.plan-03 .plan-name {
	color: var(--wp--preset--color--custom-color-03);
	background-color: var(--wp--preset--color--custom-bg-color-03);
	border-left: solid 5px var(--wp--preset--color--custom-color-03);
}

.comparison-table .plan-body.plan-04 .plan-name {
	color: var(--wp--preset--color--custom-color-04);
	background-color: var(--wp--preset--color--custom-bg-color-04);
	border-left: solid 5px var(--wp--preset--color--custom-color-04);
}

.comparison-table .plan-body.plan-05 .plan-name {
	color: var(--wp--preset--color--custom-color-05);
	background-color: var(--wp--preset--color--custom-bg-color-05);
	border-left: solid 5px var(--wp--preset--color--custom-color-05);
}

.comparison-table .plan-body .name-wrap {
	gap: 0;
}

.comparison-table .plan-body .name-wrap .wp-block-image {
	width: 120px;
}

.comparison-table .plan-body .name-wrap > p {
	width: calc( 100% - 120px );
}

/* search-map-box
----------------------------------------*/

.search-map-box .info {
	margin-bottom: 3.2em;
}

.search-map-block {
	width: 870px;
	max-width: 100%;
	margin: var(--wp--preset--spacing--40) auto;
	position: relative;
	overflow: hidden;
}

.search-map-block .wp-block-buttons {
	gap: 0;
}

.search-map-block .wp-block-buttons .wp-block-button__link {
	width: 160px;
	height: 60px;
	display: grid;
	place-content: center;
	padding: 0;
	background: var(--wp--preset--color--base) url( ./assets/img/page/common/2x/arrow-ext.png ) right 17px center / 15px no-repeat;
	color: var(--wp--preset--color--contrast);
	font-size: var(--wp--preset--font-size--20);
	font-weight: bold;
	border: solid 3px var(--wp--preset--color--base);
	border-radius: 30px;
	box-shadow: 0 4px 20px rgba( 0, 0, 0, .1 );
	position: absolute;
	z-index: 9;
}

.search-map-block #area-tokyo .wp-block-button__link {
	top: 38%;
	left: 27.8%;
}

.search-map-block #area-kanagawa .wp-block-button__link {
	top: 60%;
	left: 19.5%;
}

.search-map-block #area-chiba .wp-block-button__link {
	top: 51.2%;
	left: 61.2%;
}

.search-map-block #area-saitama .wp-block-button__link {
	top: 15.6%;
	left: 21.8%;
}

.search-map {
	margin: 0;
}

.search-map .wp-block-image {
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
	opacity: 0;
	visibility: hidden;
	z-index: -1;
	transition: all .2s;
}

.search-map .wp-block-image.base-map,
.search-map-block:has( #tokyo-modal.is-open ) .wp-block-image.tokyo-map,
.search-map-block:has( #kanagawa-modal.is-open ) .wp-block-image.kanagawa-map,
.search-map-block:has( #chiba-modal.is-open ) .wp-block-image.chiba-map,
.search-map-block:has( #saitama-modal.is-open ) .wp-block-image.saitama-map {
	position: relative;
	opacity: 1;
	visibility: visible;
	z-index: 1;
}

.search-map-block:has( .is-open ) .wp-block-image.base-map {
	position: absolute;
	z-index: -1;
}

.search-map-block:has( #tokyo-modal.is-open ) #area-tokyo .wp-block-button__link,
.search-map-block:has( #kanagawa-modal.is-open ) #area-kanagawa .wp-block-button__link,
.search-map-block:has( #chiba-modal.is-open ) #area-chiba .wp-block-button__link,
.search-map-block:has( #saitama-modal.is-open ) #area-saitama .wp-block-button__link {
	background-color: #954da2;
	color: var(--wp--preset--color--base);
	background-image: url( ./assets/img/page/common/2x/arrow-ext-wh.png );
	box-shadow: 0 4px 20px rgba( 0, 0, 0, .15 );
	filter: none;
}

/* support-list
----------------------------------------*/

.support-list {
	margin-top: 4em;
}

.support-list .support {
	background-color: var(--wp--preset--color--base);
	gap: 0;
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
	font-size: var(--wp--preset--font-size--24);
	text-align: center;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	border-radius: 5px;
	overflow: hidden;
}

.support-list .support p {
	padding: .65em 1em .85em;
	position: relative;
}

.support-list .support p::before {
	content: "";
	width: 40px;
	height: 2px;
	background-color: var(--wp--preset--color--custom-purple);
	position: absolute;
	top: 0;
	left: calc( 50% - 20px );
}

/* plan-box
----------------------------------------*/

.plan-box {
	background-color: var(--wp--preset--color--base);
}

.plan-box .cont-wrap {
	margin-top: var(--wp--preset--spacing--50);
}

.plan-list .wp-block-post {
	padding: 0 !important;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	border-radius: 10px;
	overflow: hidden;
	transition: background .2s;
}

.plan-list .wp-block-post .img:has( > .default-image ) {
	padding: 0;
	border: none;
	border-bottom: solid 1px var(--wp--preset--color--gray);
}

.plan-list .wp-block-post .txt {
	margin: 0;
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
}

.plan-list .wp-block-post-title {
	font-size: var(--wp--preset--font-size--28);
}

.plan-list .wp-block-post.cremation .wp-block-post-title,
.plan-list .wp-block-post.cremation .wp-block-post-terms a {
	color: var(--wp--preset--color--custom-color-01);
}

.plan-list .wp-block-post.funeral .wp-block-post-title,
.plan-list .wp-block-post.funeral .wp-block-post-terms a {
	color: var(--wp--preset--color--custom-color-02);
}

.plan-list .wp-block-post.family .wp-block-post-title,
.plan-list .wp-block-post.family .wp-block-post-terms a {
	color: var(--wp--preset--color--custom-color-03);
}

.plan-list .wp-block-post.public .wp-block-post-title,
.plan-list .wp-block-post.public .wp-block-post-terms a {
	color: var(--wp--preset--color--custom-color-04);
}

.plan-list .wp-block-post.joint .wp-block-post-title,
.plan-list .wp-block-post.joint .wp-block-post-terms a {
	color: var(--wp--preset--color--custom-color-05);
}

.plan-list .wp-block-post-terms a {
	border-color: var(--wp--preset--color--gray);
}

.plan-list .price .num {
	display: inline-block;
	transform: translateY( -.08em );
}

.post-type-archive-plan .comparison-box > .wp-block-buttons {
	display: none;
}

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

.modal-block {
	display: grid;
	place-content: center;
	background-color: #fcf7fc;
	margin: 0;
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--30) var(--wp--preset--spacing--70);
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	opacity: 0;
	visibility: hidden;
	z-index: -1;
	transition: all .2s;
}

.modal-block:has( .is-open ),
.editor-styles-wrapper .modal-block {
	opacity: 1;
	visibility: visible;
	z-index: 9999;
}

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

.modal-block .modal-cont {
	width: 1200px;
	max-width: 90vw;
	max-height: 65vh;
	overflow: auto;
	background-color: var(--wp--preset--color--base);
	padding: 2.4em var(--wp--preset--spacing--40);
	border-radius: 10px;
	box-shadow: 0 8px 20px rgba( 0, 0, 0, .06 );
}

.modal-block .modal {
	margin-top: 0;
}

.modal-block .modal .ttl {
	text-align: center;
	font-size: var(--wp--preset--font-size--40);
	margin-bottom: 1em;
}

.modal-block .modal .parent-link {
	font-size: var(--wp--preset--font-size--24);
	font-weight: bold;
	line-height: 1.2;
	border-left: solid 6px var(--wp--preset--color--custom-purple);
	padding-left: 15px;
}

.modal-block .modal table {
	width: 100%;
	margin-top: 1.4em;
	border-collapse: collapse;
}

.modal-block .modal th {
	width: 15.2em;
	vertical-align: top;
	text-align: left;
	font-size: var(--wp--preset--font-size--18);
	padding: var(--wp--preset--font-size--20) 1em var(--wp--preset--font-size--20) 0;
	border-top: solid 1px #e5e5e5;
}

.modal-block .modal td {
	font-size: var(--wp--preset--font-size--16);
	padding: 1.6em 0;
	border-top: solid 1px #e5e5e5;
}

.modal-block .modal a {
	color: var(--wp--preset--color--contrast);
}

.modal-block .modal .area-list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: .5em;
	margin: 0;
	padding: 0;
	list-style: none;
}

.modal-block .modal .area-list a {
	color: var(--wp--preset--color--custom-purple);
	border-bottom: solid 1px var(--wp--preset--color--custom-purple);
	line-height: 1.1;
}

.modal-block .close-btn {
	position: absolute;
	top: -15px;
	right: -15px;
	margin: 0;
	cursor: pointer;
}

.modal-block .close-btn a {
	width: 50px;
	height: 50px;
	transition: all .2s;
}

/* area
----------------------------------------*/

.area-box {
	background-color: var(--wp--preset--color--base);
}

.area-block .tab {
	padding: var(--wp--preset--spacing--20);
	border-radius: 10px 10px 0 0;
}

.area-block .cont {
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	border-radius: 10px;
	overflow: hidden;	
	background-color: var(--wp--preset--color--base);
}

.area-block .tab-cont .cont {
	padding: var(--wp--preset--spacing--20) 0;
}

.area-block .is-style-heading-08 {
	border-radius: 0;
	padding: 10px 1em 12px;
}

.area-block .cont-wrap:has( .term-group ) {
	padding: var(--wp--preset--spacing--10) var(--wp--preset--spacing--60);
	margin: 0;
	gap: 0;
}

.area-block .term-group {
	display: flex;
	align-items: center;
	padding: 1em 0;
}

.area-block .term-group + .term-group  {
	border-top: solid 1px var(--wp--preset--color--gray);
}

.area-block .term-group .wp-block-heading {
	font-size: inherit;
	width: 10em;
}

.area-block .term-group .wp-block-heading a {
	color: var(--wp--preset--color--contrast);
}

.area-block .term-group .level-2 {
	flex: 1;
}

.area-block .tab-cont .wp-block-heading a {
	color: var(--wp--preset--color--contrast);
}

.area-block .term-list {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	width: 100%;
	gap: .5em;
	margin: 0;
	padding: 0;
	list-style: none;
}

.area-block .term-list a {
	display: inline-block;
	padding-left: 1.2em;
	color: var(--wp--preset--color--contrast);
	position: relative;
}

.area-block .term-list a::after {
	font-family: 'Material Symbols Outlined';
	content: '\e5cc';
	line-height: 20px;
	color: var(--wp--preset--color--custom-purple);
	position: absolute;
	top: calc( 50% - 10px );
	left: 0;
	transition: all .2s;
}

/* tax-area */

.tax-area .funeral-list-box {
	display: none;
}

.tax-area .funeral-list-box:has( .funeral-list ) {
	display: block;
}

.tax-area .funeral-list-block .funeral-list .funeral {
	margin: 0;
}

.tax-area .funeral-list-block .funeral-list > .funeral {
	padding: var(--wp--preset--spacing--40);
	gap: var(--wp--preset--spacing--30);
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	border-radius: 10px;
	transition: all .2s;
}

.tax-area .funeral-list-block .funeral + .funeral {
	margin-top: var(--wp--preset--spacing--40);
}

.tax-area .funeral-list-block .funeral .ttl {
	flex: 1;
}

.tax-area .funeral-list-block .funeral .img {
	margin-top: var(--wp--preset--spacing--30);
}

.tax-area .funeral-list-block .funeral .txt {
	flex: 1.5;
	align-self: stretch;
	margin: 0;
}

.tax-area .funeral-list-block .funeral .txt-wrap {
	height: 100%;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--30);
}

.tax-area .funeral-list-block .column-table {
	width: 100%;
}

.tax-area .funeral-list-block .column-table .th {
	flex: 1 !important;
	padding: .4em 1em;
	min-height: 64px;
}

.tax-area .funeral-list-block .column-table .th > * {
	place-content: center;
}

.tax-area .funeral-list-block .column-table .td {
	flex: 3 !important;
	padding: .4em 1em;
}

.tax-area .funeral-list-block .taxonomy-facility {
	margin-top: .5em;
}

.tax-area .funeral-list-block .more-txt {
	width: 100%;
	margin-top: auto;
	text-align: right;
}

.tax-area .funeral-list-block .more-txt .label {
	display: inline-block;
	padding: .5em 2em .5em 1em;
	position: relative;
	color: var(--wp--preset--color--base);
	background-color: var(--wp--preset--color--custom-purple);
	font-family: var(--wp--preset--font-family--shippori-mincho);
	border-radius: 5px;
}

.tax-area .funeral-list-block .more-txt .label::after {
	font-family: 'Material Symbols Outlined';
	content: '\e5cc';
	font-variation-settings:
		'FILL' 0,
		'wght' 200;
	line-height: 20px;
	position: absolute;
	top: calc( 50% - 10px );
	right: .5em;
	transform: scale( 1.5 );
	transition: all .2s;
}

.tax-area .plan-box {
	background-color: var(--wp--preset--color--light-gray);
}

.tax-area .faq-box {
	background-color: var(--wp--preset--color--light-gray);
}

.tax-area .faq-box .yoast-faq {
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--40);
}

.area-term-bottom .area-box {
	display: none;
}

.tax-area .area-menu {
	display: none;
}

.tax-area.term-top-tokyo .area-menu.tokyo-menu {
	display: block;
}

.tax-area.term-top-kanagawa .area-menu.other-menu,
.tax-area.term-top-chiba .area-menu.other-menu,
.tax-area.term-top-saitama .area-menu.other-menu {
	display: block;
}

/* search-map-box
----------------------------------------*/

.search-map-box {
	background-color: var(--wp--preset--color--base);
}

/* near-box
----------------------------------------*/

.near-box {
	display: none;
	background-color: var(--wp--preset--color--base);
}

.near-box:has( .funeral-list-slider ),
.editor-styles-wrapper .near-box {
	display: block;
}

/* contact-bnr-box
----------------------------------------*/

.contact-bnr-box {
	margin-top: 0;
	padding-top: var(--wp--preset--spacing--40);
	padding-bottom: var(--wp--preset--spacing--80);
}

.link-to-cover-and-group-blocks:has( > .contact-bnr-block ) {
	width: 820px;
	max-width: 100%;
	transition: all .4s;
}

.contact-bnr-block {
	width: 820px;
	max-width: 100%;
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base) !important;
	position: relative;
}

.contact-bnr-block::after {
	content: "";
	height: 50px;
	background-color: #1e4943;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
}

.contact-bnr-block .cont {
	display: block;
}

.contact-bnr-block .img {
	position: absolute;
	bottom: 0;
	left: 1.8em;
	z-index: 2;
	width: auto !important;
}

.contact-bnr-block .cont-wrap {
	padding: 40px 2.8em 0;
	margin: 0;
}

.contact-bnr-block .txt {
	margin-left: 205px;
	position: relative;
	z-index: 9;
	width: auto !important;
}

.contact-bnr-block .balloon-wrap .balloon {
	font-size: var(--wp--preset--font-size--22);
	letter-spacing: .04em;
	padding: 0 1.4em !important;
}

.contact-bnr-block .txt-wrap {
	gap: 1.2em;
	margin: 0;
}

.contact-bnr-block .txt-wrap .ttl {
	font-size: var(--wp--preset--font-size--28);
	font-family: "Noto Sans JP", sans-serif;
	letter-spacing: .08em;
	border: solid 1px rgba( 255, 255, 255, .6 );
	padding: 7px var(--wp--preset--spacing--20) 9px;
}

.contact-bnr-block .txt .note {
	font-size: var(--wp--preset--font-size--18);
	line-height: 50px;
	letter-spacing: .1em;
	margin-top: 1.6em;
	white-space: nowrap;
}

/* faq-box
----------------------------------------*/

.faq-box {
	background-color: var(--wp--preset--color--base);
}

/* fv-box
----------------------------------------*/

body:not(.home) .fv-box::before {
	content: "";
	height: 16em;
	background: linear-gradient(to bottom, rgba(246, 245, 244, 0) 0%, #f6f5f4 100%);;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
}

.tax-area .fv-box .txt-wrap {
	padding-top: 0;
}

.tax-area .fv-box .title-02 {
	padding-top: 0;
	text-shadow: 
		0 0 20px #fff,
		0 0 40px #fff,
		0 0 60px #fff,
		0 0 80px #fff;
}

.tax-area .fv-box .title-02 .wp-block-heading {
	display: block;
}

.tax-area .fv-box .title-02 .wp-block-heading strong {
	color: var(--wp--preset--color--contrast);
}

.tax-area .fv-box .title-02 .copy {
	width: 100%;
	font-size: var(--wp--preset--font-size--28);
	letter-spacing: .06em;
	margin-top: 1em;
	padding-top: 1em;
	padding-bottom: 1em;
	border-top: solid 1px #dbdbdb;
	border-bottom: solid 1px #dbdbdb;
}

/*
.tax-area .fv-box .fv-img {
	padding-left: var(--wp--preset--spacing--40);
}

.tax-area .fv-box .fv-img img {
	width: 100%;
	height: 1000px;
	object-fit: cover;
	object-position: left bottom;
	border-radius: 0 0 0 120px;
}
*/

/* area-contents-box
----------------------------------------*/

.area-contents-box {
	background-color: var(--wp--preset--color--base);
}

.area-contents-box .cont > *:first-child {
	margin-top: 0 !important;
}

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

.column-table {
	background-color: var(--wp--preset--color--base);
}

.column-table .tr {
	gap: 0;
	margin: 0;
	line-height: 1.5;
}

.column-table .th {
	padding: var(--wp--preset--spacing--20);
	border-bottom: solid 1px var(--wp--preset--color--primary);
	background-color: var(--wp--preset--color--light-gray);
}

.column-table .td {
	padding: var(--wp--preset--spacing--20);
	border-bottom: solid 1px var(--wp--preset--color--light-gray);
}

.column-table .tr:first-child .th {
	border-top: solid 1px var(--wp--preset--color--primary);
}

.column-table .tr:first-child .td {
	border-top: solid 1px var(--wp--preset--color--light-gray);
}

.column-table .th > *,
.column-table .td > * {
	display: grid;
	place-content: center start;
	height: 100%;	
}

/* single-funeral
----------------------------------------*/

.single-funeral .main-box {
	padding-top: 3.2em;
}

.single-funeral .main-box::before {
	display: none;
}

.single-funeral .main-box .ttl {
	font-size: var(--wp--preset--font-size--48);
}

.single-funeral .slider-nav {
	margin-bottom: 0 !important;
	opacity: 0;
	visibility: hidden;
	height: 0;
}

.single-funeral .slider-nav.slick-slider {
	opacity: 1;
	visibility: visible;
	height: auto;
}

.tel-box {
	background-color: var(--wp--preset--color--base);
}

.tel-block .tel-wrap {
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--60) var(--wp--preset--spacing--40);
	gap: var(--wp--preset--spacing--20);
	border: solid 1px var(--wp--preset--color--custom-purple);
	border-radius: 10px;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
}

.tel-block .ttl {
	font-size: var(--wp--preset--font-size--24);
	border-color: var(--wp--preset--color--custom-purple);
	letter-spacing: .1em;
}

.tel-block .free-calls {
	flex-direction: row !important;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
}

.free-calls {
	gap: .5em;
	letter-spacing: .04em;
}

.free-calls .num {
	font-size: var(--wp--preset--font-size--40);
	font-family: var(--wp--preset--font-family--roboto);
	font-weight: 500 !important;
	line-height: 1;
}

.free-calls .tag-wrap {
	gap: 5px;
}

.free-calls .tag {
	font-size: 14px;
	line-height: 30px;
	letter-spacing: 0;
	white-space: nowrap;
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
	padding: 0 .9em;
}

.free-calls .tag.date {
	background-color: var(--wp--preset--color--custom-gold);
}

/* overview
----------------------------------------*/

.overview-box {
	background-color: var(--wp--preset--color--base);
}

.overview-block {
	margin-top: var(--wp--preset--spacing--50);
	background-color: var(--wp--preset--color--base);
}

.overview-block .overview {
	gap: 0;
}

.overview-block .overview .ttl,
.overview-block .overview .cont.wp-block-column {
	height: 80px;
	padding: .5em 1.5em;
	line-height: 1.5;
	align-self: stretch;
}

.overview-block .overview .ttl > *,
.overview-block .overview .cont > * {
	display: flex;
	align-items: center;
	height: 100%;
}

.overview-block .overview .ttl.wp-block-column {
	flex-basis: 20% !important;
	flex-shrink: 0 !important;
	border-bottom: solid 1px var(--wp--preset--color--custom-purple);
	background-color: var(--wp--preset--color--light-gray);
	padding-left: 4.2em;
	position: relative;
}

.overview-block .overview .ttl p {
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
	position: static;
}

.overview-block .overview .ttl p::before {
	display: inline-block;
	font-family: 'Material Symbols Outlined';
	font-variation-settings:
		'FILL' 0,
		'wght' 200;
	color: var(--wp--preset--color--custom-purple);
	font-size: 2.8em;
	line-height: 48px;
	position: absolute;
	top: calc( 50% - 24px );
	left: 15px;
}

.overview-block .overview .ttl p.address::before {
	content: "\e0c8";
}

.overview-block .overview .ttl p.phone::before {
	content: "\e61d";
}

.overview-block .overview .ttl p.parking::before {
	content: "\f289";
}

.overview-block .overview .ttl p.facility::before {
	content: "\e8d1";
}

.overview-block .overview .ttl p.people::before {
	content: "\f233";
}

.overview-block .overview .ttl p.cremation::before {
	content: "\ea43";
}

.overview-block .overview .ttl p.morgue::before {
	content: "\e632";
}

.overview-block .overview .ttl p.rental::before {
	content: "\e4eb";
}

.overview-block .overview .ttl p.room::before {
	content: "\efe2";
}

.overview-block .overview .ttl p.bath::before {
	content: "\f061";
}

.overview-block .overview .ttl p.nap::before {
	content: "\e631";
}

.overview-block .overview .ttl p.private::before {
	content: "\f1d0";
}

.overview-block .overview .ttl p.barrierfree::before {
	content: "\e914";
}

.overview-block .overview .ttl p.station::before {
	content: "\e570";
}

.overview-block .overview .cont.wp-block-column {
	flex-basis: 30% !important;
	flex-shrink: 0 !important;
	border-bottom: solid 1px var(--wp--preset--color--gray);
}

.overview-block .overview:first-child .ttl {
	border-top: solid 1px var(--wp--preset--color--custom-purple);
}

.overview-block .overview:first-child .cont {
	border-top: solid 1px var(--wp--preset--color--gray);
}

.overview-block .material-symbols-outlined {
	color: var(--wp--preset--color--custom-purple);
	font-size: 2em;
}

/* feature-block
----------------------------------------*/

.feature-block {
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--40);
	gap: var(--wp--preset--spacing--60);
	border-radius: 10px;
}

.feature-box .feature-block .img.wp-block-column {
	flex: 1 !important;
	padding: 0 var(--wp--preset--spacing--60);
	border-right: solid 1px var(--wp--preset--color--gray);
}

.feature-box .feature-block .img-wrap {
	gap: 1em;
}

.feature-box .feature-block .name {
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
	font-size: var(--wp--preset--font-size--14);
	color: var(--wp--preset--color--custom-purple);
}

.feature-box .feature-block .name strong {
	font-size: var(--wp--preset--font-size--18);
	color: var(--wp--preset--color--contrast);
}

.feature-box .feature-block .img img {
	border-radius: 50%;
	border: solid 2px var(--wp--preset--color--light-gray);
}

.feature-box .feature-block .txt.wp-block-column {
	flex: 4 !important;
}

/* access-box
----------------------------------------*/

.map-box {
	background-color: var(--wp--preset--color--base);
}

.map-box .map-wrap iframe {
	max-width: 100%;
	aspect-ratio: auto;
	height: 480px;
}

/* single-funeral
----------------------------------------*/

.single-funeral .contact-bnr-box {
	background-color: var(--wp--preset--color--base);
}

.single-funeral .support-box + .contact-bnr-box {
	padding-top: var(--wp--preset--spacing--80);
}

.single-funeral .voice-box,
.single-funeral .area-box {
	background-color: transparent;
}

.single-funeral .tab-menu .tab-btn .tab {
	mix-blend-mode: multiply;
}

.single-funeral .reason-box,
.single-funeral .support-box + .contact-bnr-box {
	background-color: var(--wp--preset--color--base);
}

.single-funeral .faq-box {
	background-color: var(--wp--preset--color--light-gray);
}

.single-funeral .faq-box .yoast-faq {
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--40);
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	border-radius: 10px;
}

/* plan
----------------------------------------*/

.post-type-archive-plan .contents-wrap {
	padding-top: var(--wp--preset--spacing--70);
}

.plan-info-block {
	background-color: var(--wp--preset--color--base);
	padding-top: var(--wp--preset--spacing--80);
	padding-bottom: var(--wp--preset--spacing--80);
}

.plan-info-block .cont {
	align-items: flex-start !important;
}

.plan-info-block .txt-wrap {
	gap: var(--wp--preset--spacing--20);
}

.plan-info-block .price {
	justify-content: flex-start;
}

.plan-info-block .img {
	aspect-ratio: 4 / 3;
	line-height: .5;
}

.plan-info-block .img img {
	width: 100%;
	height: 100%;
}

.single-plan .wp-block-post-title {
	font-size: var(--wp--preset--font-size--40);
}

.single-plan .price {
	gap: var(--wp--preset--spacing--20);
}

.single-plan .price .label {
	font-size: var(--wp--preset--font-size--16);
	padding: .4em .8em;
	background-color: var(--wp--preset--color--light-gray);
	color: var(--wp--preset--color--contrast);
	border-radius: 5px;
	transform: translateY( .2em );
}

.single-plan .price-num {
	font-size: var(--wp--preset--font-size--18);
}

.single-plan .plan-box {
	background-color: transparent;
}

.plan-block {
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--40);
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	border-radius: 10px;
}

.plan-block .ttl {
	gap: var(--wp--preset--spacing--10);
}

.plan-block .ttl .sub {
	display: flex;
	gap: 1em;
	align-items: center;
	font-size: var(--wp--preset--font-size--18);
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
}

.plan-block .ttl p::after {
	content: "";
	flex: 1;
	height: 3px;
	border-top: solid 1px var(--wp--preset--color--custom-purple);
	border-bottom: solid 1px var(--wp--preset--color--custom-purple);
}

.plan-block .ttl .wp-block-heading {
	font-size: var(--wp--preset--font-size--28);
	line-height: 1.5;
	letter-spacing: .1em;
	border-bottom: double 3px var(--wp--preset--color--custom-purple);
	padding-bottom: var(--wp--preset--spacing--20);
}

.plan-block .img .wp-block-list {
	margin-top: 1em;
}

.plan-block .price-wrap {
	gap: var(--wp--preset--spacing--30);
}

.plan-block .price .value {
	transform: translateY( -.25em );
	line-height: 1;
}

.plan-block .plan-price {
	padding: var(--wp--preset--spacing--30);
	gap: var(--wp--preset--spacing--20);
	border: solid 1px var(--wp--preset--color--light-gray);
}

.plan-block .plan-price.vip {
	border: double 3px var(--wp--preset--color--secondary);
}

.plan-block .plan-price .price {
	justify-content: center;
}

.plan-block .plan-price .items {
	gap: var(--wp--preset--spacing--20);
	background-color: var(--wp--preset--color--light-gray);
	padding: var(--wp--preset--spacing--20);
	border-radius: 10px;
}

.plan-block .plan-price .items .ttl {
	font-size: var(--wp--preset--font-size--16);
	width: 6em;
	flex-shrink: 0;
	align-self: stretch;
	display: flex;
	justify-content: center;
	align-items: center;
	border-right: solid 1px var(--wp--preset--color--contrast);
	padding-right: var(--wp--preset--spacing--20);
}

.plan-block .plan-price .items .cont {
	flex: 1;
}

.plan-block .plan-price .items .item-price {
	justify-content: space-between;
	gap: var(--wp--preset--spacing--20);
}

.plan-block .plan-price .items .item-price .label {
	flex: 1;
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
}

.plan-block .plan-price .items .item-price .label::after {
	content: "";
	flex: 1;
	border-top: dotted 1px var(--wp--preset--color--contrast);
}

.plan-block .plan-price .items .price-num {
	font-size: var(--wp--preset--font-size--13);
	line-height: 1;
}

.plan-block .plan-price.vip .price .label {
	background-color: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--base);
	text-align: center;
}

.plan-block .txt {
	align-self: stretch;
	display: flex;
	flex-direction: column;
}

.plan-block .about-vip {
	margin-top: auto;
}

.detail-wrap {
	background-color: var(--wp--preset--color--light-gray);
	padding: var(--wp--preset--spacing--40);
	margin-top: var(--wp--preset--spacing--60);
	margin-bottom: var(--wp--preset--spacing--40);
}

.detail-wrap .wp-block-heading {
	color: var(--wp--preset--color--contrast);
	margin-bottom: var(--wp--preset--spacing--40);
}

.detail-list.is-layout-grid {
	gap: var(--wp--preset--spacing--20) !important;
	margin-top: var(--wp--preset--spacing--20);
}

.detail-list .detail {
	gap: 0;
	align-items: center;
	text-align: left;
	background-color: var(--wp--preset--color--base);
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	border-radius: 5px;
	overflow: hidden;
}

.detail-list .detail .img {
	width: 80px;
	flex-shrink: 0;
}

.detail-list .detail .txt {
	flex: 1;
	align-self: center;
	padding-left: var(--wp--preset--spacing--20);
	line-height: 1.5;
}

.detail-list .detail .txt .note {
	font-size: var(--wp--preset--font-size--12);
	margin-top: .5em;
}

.plan-block .contact-bnr-box {
	padding-bottom: var(--wp--preset--spacing--20);
}

.schedule {
	gap: 0;
	background-color: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--base);
	text-align: center;
	border-radius: 5px;
}

.schedule > p {
	flex: 2.5;
	padding: 8px;
	overflow: hidden;
	position: relative;
}

.schedule > p::after {
	content: "";
	width: 40px;
	height: 40px;
	border-right: solid 1px var(--wp--preset--color--base);
	border-bottom: solid 1px var(--wp--preset--color--base);
	position: absolute;
	top: calc( 50% - 20px );
	right: 10px;
	transform: rotate( -45deg );
}

.schedule > p:last-child:after {
	display: none;
}

.schedule > .schedule-03 {
	flex: 3;
}

.schedule-list {
	gap: var(--wp--preset--spacing--20);
	position: relative;
	margin-top: var(--wp--preset--spacing--30);
}

.schedule-list::after {
	content: "";
	height: 2px;
	background-color: var(--wp--preset--color--primary);
	position: absolute;
	top: calc( 50% - 1px );
	right: 10px;
	left: 10px;
	z-index: 1;
}

.schedule-list > p {
	flex: 1;
	padding: 8px;
	background-color: var(--wp--preset--color--base);
	border: solid 1px var(--wp--preset--color--gray);
	border-radius: 5px;
	position: relative;
	z-index: 2;
}

.flow-cont {
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--40);
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	border-radius: 10px;
	position: relative;
}

.flow-cont::after {
	content: "";
	width: 0;
	height: 0;
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
	border-top: 20px solid var(--wp--preset--color--custom-purple);
	position: absolute;
	bottom: -20px;
	left: calc( 50% - 20px );
}

.flow-cont-list > div:last-child::after {
	display: none;
}

.flow-cont .cont > .txt {
	flex: 2 !important;
}

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

.bg-block > * {
	background-color: var(--wp--preset--color--light-gray);
	padding: 1em 1.5em !important;
	text-align: left;
	border-radius: 5px;
}

.flow-cont .bg-block .free-calls {
	flex-direction: row;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
}

.flow-cont .cont > .img {
	flex: 1 !important;
}

.flow-cont .detail-list {
	background-color: var(--wp--preset--color--light-gray);
	padding: 1.5em;
}

.toggle-block {
	gap: 0;
}

.toggle-block .toggle-ttl .wp-block-heading {
	display: inline-block;
	position: relative;
	padding-right: 2em;
	cursor: pointer;
	transition: color .2s;
}

.toggle-block .toggle-ttl .wp-block-heading::after {
	font-family: "Material Symbols Outlined";
	font-variation-settings:
		'FILL' 1,
		'wght' 300;
	font-size: var(--wp--preset--font-size--28);
	width: 28px;
	line-height: 28px;
	text-align: center;
	content: '\e145';
	color: var(--wp--preset--color--base);
	background-color: var(--wp--preset--color--custom-purple);
	position: absolute;
	top: calc( 50% - 14px );
	right: 0;
	border-radius: 50%;
}

.toggle-block .toggle-ttl.active .wp-block-heading::after {
	content: '\e15b';
}

.flow-cont .note {
	font-size: var(--wp--preset--font-size--14);
}

.flow-cont .flow-mes {
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
	letter-spacing: .1em;
	font-size: var(--wp--preset--font-size--24);
	line-height: 1.5;
}

.flow-cont .flow-mes strong {
	color: var(--wp--preset--color--custom-purple);
}

/* voice
----------------------------------------*/

.voice-box {
	background-color: var(--wp--preset--color--base);
}

.plan-search-block {
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--40);
	margin: 0;
	border-radius: 10px;
	gap: var(--wp--preset--spacing--30);
}

.plan-search-block .wp-block-heading strong {
	font-size: var(--wp--preset--font-size--24);
	letter-spacing: .1em;
	color: var(--wp--preset--color--contrast);
	display: inline-block;
	padding-left: 2em;
	position: relative;
}

.plan-search-block .wp-block-heading strong::before {
	content: '\f800';
	display: inline-block;
	text-align: center;
	font-family: 'Material Symbols Outlined';
	font-variation-settings:
		'FILL' 0,
		'wght' 200;
	font-size: 2em;
	line-height: 50px;
	color: var(--wp--preset--color--custom-purple);
	position: absolute;
	top: calc( 50% - 25px );
	left: 0;
}

.plan-search-block .search-wrap {
	background-color: var(--wp--preset--color--light-gray);
	padding: var(--wp--preset--spacing--40);
	border-radius: 10px;
}

.voice-plan-list {
	list-style: none;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	width: 100%;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
}

.voice-plan-list .cat-item {
	text-align: center;
	align-self: stretch;
}

.voice-plan-list .cat-item a {
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
	display: grid;
	place-content: center;
	height: 100%;
	padding: .6em var(--wp--preset--spacing--10) .8em;
	color: var(--wp--preset--color--custom-purple);
	background-color: var(--wp--preset--color--base);
	border: solid 1px var(--wp--preset--color--custom-purple);
	border-radius: 5px;
	transition: all .2s;
}

.voice-plan-list .cat-item.cremation a {
	color: var(--wp--preset--color--custom-color-01);
	border-color: var(--wp--preset--color--custom-color-01);
}

.voice-plan-list .cat-item.funeral a {
	color: var(--wp--preset--color--custom-color-02);
	border-color: var(--wp--preset--color--custom-color-02);
}

.voice-plan-list .cat-item.family a {
	color: var(--wp--preset--color--custom-color-03);
	border-color: var(--wp--preset--color--custom-color-03);
}

.voice-plan-list .cat-item.public a {
	color: var(--wp--preset--color--custom-color-04);
	border-color: var(--wp--preset--color--custom-color-04);
}

.voice-plan-list .cat-item.joint a {
	color: var(--wp--preset--color--custom-color-05);
	border-color: var(--wp--preset--color--custom-color-05);
}

.voice-info-box {
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--40);
}

.voice-info-box .cont {
	margin-top: var(--wp--preset--spacing--60);
	gap: var(--wp--preset--spacing--40);
}

.voice-info-box .is-style-slider-thumbnail + .slider-nav,
.voice-info-box .is-style-slider-thumbnail-3d + .slider-nav {
	margin: var(--wp--preset--spacing--10) -4px 0;
	padding: 0;
}

.voice-info-box .thumb {
	margin: 0;
}

.voice-info-box .note {
	font-size: var(--wp--preset--font-size--14);
	margin-top: var(--wp--preset--spacing--20);
}

.voice-box {
	display: none;
}

.voice-box:has( .voice-list-block ),
.editor-styles-wrapper .voice-box {
	display: block;
}

.voice-box .cont-wrap {
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--40);
	border-radius: 10px;
}

.voice-box .customer-block {
	border: solid 4px var(--wp--preset--color--light-gray);
	border-radius: 10px;
	padding: var(--wp--preset--spacing--40);
}

.voice-box .customer-block p + p {
	margin-top: 1em !important;
}

.post-type-archive-voice .voice-list .voice {
	padding: var(--wp--preset--spacing--30) !important;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	border-radius: 10px;
}

.post-type-archive-voice .reason-box {
	background-color: var(--wp--preset--color--base);
}

.wp-block-group:has( > .pagination ) {
	margin-top: var(--wp--preset--spacing--60) !important;
}

main .voice-info-box .slick-prev,
main .voice-info-box .slick-next {
	width: 40px;
	height: 80px;
	background-color: var(--wp--preset--color--contrast) !important;
}

main .voice-info-box .slick-prev {
	left: 0 !important;
	border-radius: 0 5px 5px 0;
}

main .voice-info-box .slick-next {
	right: 0 !important;
	border-radius: 5px 0 0 5px;
}

main .voice-info-box .slick-prev:before,
main .voice-info-box .slick-next:before {
	width: 16px;
	height: 30px;
}

main .voice-info-box .slick-prev:before {
	background-image: url(./assets/img/page/hall/2x/arrow-prev-sp.png);
}

main .voice-info-box .slick-next:before {
	background-image: url(./assets/img/page/hall/2x/arrow-next-sp.png);
}

.voice-plan-box {
	background-color: var(--wp--preset--color--base);
}

.voice-plan-box .slider .wp-block-post,
.voice-area-box .slider .wp-block-post {
	border-radius: 10px;
}

.single-voice .reason-box {
	background-color: var(--wp--preset--color--base);	
}

.single-voice .is-style-table-02 tbody tr > *:first-child {
	background-color: var(--wp--preset--color--light-gray);
	text-align: center;
	width: 35%;
}

.voice-cont-box .cont-wrap {
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--40);
	border-radius: 10px;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
}

.customer-block {
	border-left: solid 3px var(--wp--preset--color--custom-purple);
	padding-left: calc( var(--wp--preset--spacing--40) - 3px );
}

.planner-block {
	background-color: var(--wp--preset--color--light-gray);
	padding: var(--wp--preset--spacing--40);
	border-radius: 10px;
}

.customer-block > * + * {
	margin-top: 1em;
}

.planner-block .cont {
	flex-wrap: nowrap !important;
}

.planner-block .cont .txt.wp-block-column {
	width: calc( 100% - 200px ) !important;
	flex: auto !important;
}

.planner-block .txt .txt-wrap {
	gap: var(--wp--preset--spacing--20);
}

.planner-block .wp-block-heading {
	font-size: var(--wp--preset--font-size--24);
}

.planner-block .cont .img.wp-block-column {
	width: 200px !important;
	flex: auto !important;
}

.planner-block .img .img-wrap {
	gap: var(--wp--preset--spacing--10);
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
	font-size: var(--wp--preset--font-size--18);
}

.planner-block .img img {
	border-radius: 50%;
	border: solid 2px var(--wp--preset--color--custom-purple);
	background-color: var(--wp--preset--color--base);
}

/* about
----------------------------------------*/

.about-info-box {
	background-color: var(--wp--preset--color--base);
}

.info-txt {
	gap: var(--wp--preset--spacing--20);
}

body:has( .vip-box ) .contact-bnr-box {
	background-color: var(--wp--preset--color--base);
	padding-top: var(--wp--preset--spacing--80);
	padding-bottom: var(--wp--preset--spacing--60);
}

.point-list {
	counter-reset: point;
	position: relative;
}

.point-list .point {
	background-color: var(--wp--preset--color--base);
	padding: 3em;
	margin-top: 3em;
	counter-increment: point;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	border-radius: 10px;
	position: relative;
}

.point-list .point::before,
.point-list .point::after {
	display: inline-block;
	width: 50px;
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
	text-align: center;
	font-size: var(--wp--preset--font-size--14);
	line-height: 1.5;
	text-transform: capitalize;
	color: var(--wp--preset--color--custom-purple);
	position: absolute;
	top: 0;
	left: -15px;
}

.point-list .point::before {
	content: "point";
	transform: translateY(-100%);
}

.point-list .point::after {
	content: counter(point, decimal-leading-zero);
	font-size: var(--wp--preset--font-size--40);
	line-height: 1;
}

.point-list .point .txt {
	flex: 1.5;
	position: static;
}

.point-list .point .txt::before {
	content: "";
	width: 80px;
	height: 1px;
	background-color: var(--wp--preset--color--custom-purple);
	position: absolute;
	top: 40px;
	left: 0;
	transform: rotate( -45deg );
}

.point-list .point .txt .is-style-view-more .wp-block-button__link {
	background-color: var(--wp--preset--color--custom-purple);
}

.point-list .point .img {
	flex: 1;
	align-self: center;
}

.point-list .point .txt-wrap {
	gap: 1em;
	margin: 0;
}

.point-list .point .txt-wrap .ttl {
	gap: .2em;
}

.point-list .point .txt-wrap .sub {
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
	font-size: var(--wp--preset--font-size--14);
	text-transform: capitalize;
	color: var(--wp--preset--color--custom-purple);
	letter-spacing: .2em;
}

.point-list .point .wp-block-heading {
	font-size: var(--wp--preset--font-size--28);
	letter-spacing: .1em;
}

.reserve-list {
	gap: var(--wp--preset--spacing--40);
}

.reserve-list .reserve {
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--20);
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	border-radius: 10px;
	position: relative;
}

.reserve-list .reserve::after {
	font-family: 'Material Symbols Outlined';
	font-variation-settings:
		'FILL' 0,
		'wght' 200;
	content: '\e5ca';
	display: grid;
	place-content: center;
	width: 48px;
	height: 48px;
	line-height: 48px;
	background-color: var(--wp--preset--color--custom-purple);
	font-size: var(--wp--preset--font-size--40);
	color: var(--wp--preset--color--base);
	position: absolute;
	top: 0;
	left: 0;
}

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

.reserve-list .reserve .cont-wrap .txt {
	gap: var(--wp--preset--spacing--10);
}

.reserve-list .reserve .is-style-lr-line {
	font-size: var(--wp--preset--font-size--20);
}

.todo-box {
	background-color: var(--wp--preset--color--base);
}

.flow-block + .wp-block-buttons {
	padding-right: 0 !important;
	padding-left: 0 !important;
}

.flow-list {
	gap: 30px;
	margin-top: var(--wp--preset--spacing--60);
	margin-bottom: var(--wp--preset--spacing--60) !important;
	counter-reset: step-counter;
}

.flow-list .flow {
	flex-wrap: nowrap;
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--20);
	gap: .8em;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	border-radius: 5px;
	position: relative;
}

.flow-list .flow::before {
	content: "";
	width: 80px;
	height: 1px;
	background-color: var(--wp--preset--color--custom-purple);
	position: absolute;
	top: 20px;
	left: -20px;
	transform: rotate( -45deg );
}

.flow-list .flow::after {
	counter-increment: step-counter;
	content: counter(step-counter, decimal-leading-zero);
	display: grid;
	place-content: center;
	font-size: var(--wp--preset--font-size--28);
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
	line-height: 1;
	color: var(--wp--preset--color--custom-purple);
	position: absolute;
	top: -.5em;
	left: -.5em;
}

.flow-list .flow .wp-block-heading::after {
	content: "";
	width: 0;
	height: 0;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-left: 10px solid var(--wp--preset--color--custom-purple);
	position: absolute;
	top: calc( 50% - 10px );
	right: -20px;
}

.flow-list .flow:last-child .wp-block-heading::after {
	display: none;
}

.vip-box.is-style-bg-01::before {
	background-color: var(--wp--preset--color--secondary);
}

.vip-box .title-01 .sub {
	color: var(--wp--preset--color--secondary);
}

.system-block {
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--60) var(--wp--preset--spacing--30);
	border: double 3px var(--wp--preset--color--secondary);
	gap: var(--wp--preset--spacing--30);
	position: relative;
}

.system-block .title-02 .wp-block-heading {
	font-size: var(--wp--preset--font-size--32);
}

.system-block .title-02 .sub {
	color: var(--wp--preset--color--secondary);
}

.system-block strong {
	color: var(--wp--preset--color--secondary);
}

.system-block .wp-block-list {
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
	font-size: var(--wp--preset--font-size--20);
	padding: 1em 0;
}

.system-block .is-style-check-list li::before {
	color: var(--wp--preset--color--secondary);
}

.system-block .note {
	font-size: var(--wp--preset--font-size--14);
	text-align: right;
	margin-top: var(--wp--preset--spacing--10);
}

.benefits-block {
	counter-reset: benefits-counter;
}

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

.benefits-block .benefits {
	gap: 1em;
	background-color: var(--wp--preset--color--base);
	border: double 3px var(--wp--preset--color--secondary);
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	flex-wrap: nowrap;
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--20);
	position: relative;
}

.benefits-block .benefits::before {
	counter-increment: benefits-counter;
	content: counter(benefits-counter, decimal-leading-zero);
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
	font-size: var(--wp--preset--font-size--20);
	line-height: 1;
	width: 48px;
	height: 48px;
	display: grid;
	place-content: center;
	color: var(--wp--preset--color--base);
	background-color: var(--wp--preset--color--secondary);
	position: absolute;
	top: -4px;
	left: -4px;
	z-index: 99;
}

.benefits-block .benefits .img {
	text-align: center;
}

.benefits-block .benefits .wp-block-image {
	width: 200px;
	max-width: 100%;
	margin: 0 auto;
}

.benefits-block .benefits .wp-block-image img {
	border-radius: 50%;
}

.benefits-block .benefits .txt {
	gap: 1em;
}

.benefits-block .is-style-heading-07::before {
	background-color: var(--wp--preset--color--secondary);
}

.benefits-block .benefits strong {
	color: var(--wp--preset--color--secondary);
}

.benefits-block .benefits em {
	font-style: normal;
	font-size: .8em;
}

.benefits-block .wp-block-buttons {
	padding: 0 !important;
}

:root :where(.benefits-block .wp-element-button, .benefits-block .wp-block-button__link) {
	background-color: var(--wp--preset--color--secondary);
}

/* hurry
----------------------------------------*/

.page-fv-box {
	padding-top: 0;
	padding-bottom: 0;
}

.page-fv-box::before {
	display: none;
}

.hurry-block {
	background: url(./assets/img/page/urgency/2x/hurry-img.png) bottom left / auto 88.5% no-repeat;
	padding-top: 3em;
	padding-bottom: 3.7em;
}

.hurry-cont .txt-wrap {
	gap: 1.6em;
	padding-left: 30%;
}

.hurry-cont .free-calls {
	flex-direction: row;
	justify-content: center;
	align-items: center;
	letter-spacing: .06em;
	gap: 1em;
	padding-top: 1.5em;
	padding-bottom: 1.5em;
	border-top: solid 1px #dbdbdb;
	border-bottom: solid 1px #dbdbdb;
}

.hurry-cont .free-calls .is-style-tel-icon::before {
	width: 41px;
	height: 41px;
}

.hurry-cont .free-calls .num {
	font-size: var(--wp--preset--font-size--56);
}

.hurry-block .free-calls {
	flex-direction: row !important;
}

.hurry-block .free-calls .tag-wrap {
	gap: 13px;
}

.hurry-cont .free-calls .tag {
	background-color: transparent;
	color: var(--wp--preset--color--primary);
	border: solid 1px var(--wp--preset--color--primary);
	font-size: var(--wp--preset--font-size--18);
	padding: 6px 15px;
}

.hurry-cont .free-calls .tag.date {
	color: var(--wp--preset--color--custom-gold);
	border-color: var(--wp--preset--color--custom-gold);
	font-size: var(--wp--preset--font-size--18);
}

.hurry-cont .cont-wrap {
	background-color: rgba( 255, 255, 255, .8 );
	padding: 0 1.5em 1.4em;
	border: solid 4px var(--wp--preset--color--secondary);
	box-shadow: 0 8px 20px rgba( 0, 0, 0, .06 );
	margin-top: .8em;
	position: relative;
}

.hurry-cont .cont-wrap .icon {
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
	width: 3.75em;
	height: 3.75em;
	background-color: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--base);
	border-radius: 50%;
	display: grid;
	place-content: center;
	font-size: var(--wp--preset--font-size--24);
	line-height: 1.2;
	position: absolute;
	top: -1.2em;
	left: -1.2em;
}

.hurry-cont .cont {
	gap: 0;
	margin-top: -22px;
}

.hurry-cont .cont-ttl {
	gap: 1.6em;
	padding-left: 1.25em;
	padding: 6% 2% 0% 9%;
	font-size: var(--wp--preset--font-size--17);
}

.hurry-cont .cont-ttl .ttl {
	gap: 0;
	letter-spacing: .1em;
	padding: 1.4em 0;
}

.hurry-cont .cont-ttl .ttl .wp-block-heading {
	font-size: var(--wp--preset--font-size--24);
	font-family: "Noto Sans JP", sans-serif;
	color: var(--wp--preset--color--secondary);
}

.hurry-cont .check {
	background-color: var(--wp--preset--color--light-gray);
	padding: 1.8em 1.4em;
	border-radius: 5px;
	font-size: var(--wp--preset--font-size--16);
}

.hurry-cont .check .is-style-ul-list li::before {
	background-color: var(--wp--preset--color--secondary);
}

.hurry-cont .note {
	font-size: var(--wp--preset--font-size--14);
	letter-spacing: .1em;
	margin-top: 1.3em;
}

.page-fv-box.sp {
	margin-top: 0;
}

.page-fv-box.sp .is-style-bg-01 {
	margin: 0;
	padding-top: var(--wp--preset--spacing--30);
}

.page-fv-box.sp .is-style-bg-01::before {
	display: none;
}

.page-fv-box.sp .ttl-wrap {
	background: url(./assets/img/page/urgency/2x/sp-ttl-bg.png) center center / cover no-repeat;
	padding: 2.7em 2.2em 3.5em;
}

.page-fv-box.sp .title-02 {
	gap: .5em;
}

.page-fv-box.sp .title-02 .sub {
	font-size: 12px;
}

.page-fv-box.sp .title-02 .wp-block-heading {
	font-size: var(--wp--preset--font-size--36);
	line-height: 1.25;
}

.page-fv-box.sp .cont-wrap {
	padding: var(--wp--preset--spacing--60) var(--wp--preset--spacing--40);
}

.page-fv-box.sp .hurry-cont {
	width: 400px;
	max-width: 100%;
	margin-right: auto;
	margin-left: auto;
	gap: var(--wp--preset--spacing--30);
}

.page-fv-box.sp .hurry-cont .ttl {
	gap: var(--wp--preset--spacing--10);
}

.page-fv-box.sp .hurry-cont .ttl .is-style-heading-07 {
	font-size: var(--wp--preset--font-size--24);
}

.page-fv-box.sp .hurry-cont .ttl .is-style-heading-07::before {
	background-color: var(--wp--preset--color--custom-purple);
}


.page-fv-box.sp .hurry-cont p {
	color: var(--wp--preset--color--custom-purple);
}

.page-fv-box.sp .hurry-cont .em {
	display: inline-block;
	padding: 0 2em;
	position: relative;
}

.page-fv-box.sp .hurry-cont .em::before,
.page-fv-box.sp .hurry-cont .em::after {
	content: "";
	width: 1px;
	height: 1.6em;
	background-color: var(--wp--preset--color--custom-purple);
	position: absolute;
	top: calc( 50% - .7em );
}

.page-fv-box.sp .hurry-cont .em::before {
	left: 1em;
	transform: rotate( -30deg );
}

.page-fv-box.sp .hurry-cont .em::after {
	right: 1em;
	transform: rotate( 30deg );
}

.page-fv-box.sp .hurry-cont .is-style-lr-line {
	color: var(--wp--preset--color--contrast);
}

.page-fv-box.sp .hurry-cont .tel-btn {
	background-color: rgba( 255, 255, 255, .8 );
	border: solid 2px var(--wp--preset--color--secondary);
	padding: var(--wp--preset--spacing--40);
	gap: var(--wp--preset--spacing--20);
}

.page-fv-box.sp .hurry-cont .tel-btn .wp-block-button {
	width: 100%;
}

.page-fv-box.sp .hurry-cont .tel-btn .wp-block-button__link {
	border: none;
	border-radius: 25px;
	text-align: left;
	line-height: 50px;
	padding: 0 1em 0 3.4em;
	box-shadow: 0 2px 0 #dbdbdb;
}

.page-fv-box.sp .hurry-cont .tel-btn .funeral-btn .wp-block-button__link {
	background-color: var(--wp--preset--color--custom-purple);
}

.page-fv-box.sp .hurry-cont .tel-btn .price-btn .wp-block-button__link {
	background-color: var(--wp--preset--color--secondary);
}

.page-fv-box.sp .hurry-cont .check {
	background-color: var(--wp--preset--color--base);
}

.page-fv-box + .flow-box {
	background-color: var(--wp--preset--color--base);
}

.page .overview .title-01 {
	position: relative;
	z-index: 99;
}

.page .overview {
	margin-top: -50px;
	padding: 80px var(--wp--preset--spacing--40) var(--wp--preset--spacing--40);
	background-color: var(--wp--preset--color--base);
}

.access-block {
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--40);
	border-radius: 10px;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
}

.access-block .ttl-wrap {
	gap: var(--wp--preset--spacing--40);
}

.access-block .ttl-wrap .info {
	gap: var(--wp--preset--spacing--30);
	line-height: 1.5;
}

.access-block .ttl-wrap .phone {
	gap: 0;
	align-items: flex-end;
	font-size: var(--wp--preset--font-size--20);
	font-family: "Roboto", sans-serif;
	letter-spacing: 0;
	font-weight: 500 !important;
	line-height: 1.6;
	padding-left: var(--wp--preset--spacing--30);
	border-left: solid 1px var(--wp--preset--color--gray);
}

.access-block .ttl-wrap .phone a {
	color: var(--wp--preset--color--contrast);
}

.access-block .is-style-tel-icon::before {
	width: 24px;
	height: 20px;
	transform: translateY(2px);
	margin-right: 5px !important;
}

.access-block .ttl-wrap .is-style-mail-icon::before {
	display: inline-block;
	width: 24px;
	line-height: 20px;
	font-size: 1.2em;
	text-align: center;
	content: '\ead8';
	font-variation-settings:
		'FILL' 0,
		'wght' 200;
	margin-right: 5px;
	color: var(--wp--preset--color--custom-purple);
	transform: translateY(4px);
}

.access-block .access {
	gap: var(--wp--preset--spacing--40);
	margin-top: var(--wp--preset--spacing--40);
}

.access-block .img img {
	/* aspect-ratio: 4 / 3; */
}

.access-block .map iframe {
	aspect-ratio: 4 / 3;
}

.thanks-block,
.not-found-block {
	background-color: var(--wp--preset--color--base);
	border-radius: 10px;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--40) var(--wp--preset--spacing--60);
	gap: var(--wp--preset--spacing--30);
}

.thanks-block .wp-block-button,
.not-found-block .wp-block-button {
	margin-top: var(--wp--preset--spacing--20);
}

.not-found-block .wp-block-heading {
	font-size: var(--wp--preset--font-size--24);
}

.not-found-block .bg-block {
	display: inline-block;
	margin: 0 auto;
	background-color: var(--wp--preset--color--light-gray);
	border-radius: 5px;
}

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

.celebration-box .wp-block-post {
	padding: 0 !important;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	border-radius: 10px;
	overflow: hidden;
}

.celebration-box .wp-block-post .img:has( > .default-image ) {
	border: none;
	border-bottom: solid 1px var(--wp--preset--color--gray);
}

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

:root :where(.wp-block-post-terms a:where(:not(.wp-element-button))) {
	color: var(--wp--preset--color--custom-purple);
	border-color: var(--wp--preset--color--custom-purple);
}

.greeting-box::before {
	display: none;
}

.greeting-block {
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--40) var(--wp--preset--spacing--60);
	border-radius: 10px;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
}

.greeting-box .cont {
	gap: var(--wp--preset--spacing--40);
}

.greeting-box .txt {
	flex: 1.25 !important;
}

.greeting-box .read {
	gap: 1em;
}

.greeting-box .img {
	flex: 1 !important;
}

.company-box {
	background-color: var(--wp--preset--color--base);
}

.company-block {
	background-color: var(--wp--preset--color--base);
	padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--40) var(--wp--preset--spacing--60);
	border-radius: 10px;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	line-height: 1.5;
}

.company-block .is-style-table-02 tbody tr > *:first-child {
	width: 25%;
	background-color: var(--wp--preset--color--light-gray);
	text-align: center;
}

.company-block .is-style-table-02 tbody th,
.company-block .is-style-table-02 tbody td {
	padding-right: 1.5em;
	padding-left: 1.5em;
}

.single-post .post-contents {
	background-color: var(--wp--preset--color--base);
	border-radius: 10px;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
}

.main-contents .wp-block-post {
	margin: 0;
	padding: 0;
	border-radius: 10px;
	box-shadow: 0 4px 12px rgba( 0, 0, 0, .05 );
	overflow: hidden;
}

.main-contents .wp-block-post + .wp-block-post {
	margin-top: var(--wp--preset--spacing--40);
}

.main-contents .wp-block-post .img {
	border: solid 1px var(--wp--preset--color--gray);
}

.main-contents .post-contents {
	gap: var(--wp--preset--spacing--40);
}

.main-contents .wp-block-post .txt {
	margin-top: 0;
	padding-bottom: 3em;
	line-height: 2;
}

.main-contents .is-style-heading-03 {
	font-family: var(--wp--preset--font-family--shippori-mincho);
	font-weight: 500 !important;
}

.sitemap .menu-list {
	width: 100%;
	align-items: stretch;
	gap: 0;
}

.sitemap .menu-list > p {
	border-bottom: solid 1px var(--wp--preset--color--gray);
	padding: .5em 0;
}

.sitemap .menu-list > p a {
	display: block;
	padding: 1em 2em 1em 0;
	color: var(--wp--preset--color--contrast);
	position: relative;
}

.sitemap .menu-list > p a::after {
	font-family: 'Material Symbols Outlined';
	content: '\e5cc';
	font-variation-settings:
		'FILL' 0,
		'wght' 200;
	font-size: 2em;
	line-height: 40px;
	position: absolute;
	top: calc( 50% - 20px );
	right: 0;
	opacity: .5;
	transition: all .2s;
}

.sitemap {
	gap: 0 var(--wp--preset--spacing--40);
}

.sitemap:has( .sub-menu ) {
	gap: 1em var(--wp--preset--spacing--40);
}

.sitemap .menu-list .sub-menu {
	list-style: none;
	margin-top: 1.2em;
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
	background-color: var(--wp--preset--color--light-gray);
	border-radius: 10px;
}

.sitemap .menu-list .sub-menu li {
	padding-left: 20px;
	position: relative;
}

.sitemap .menu-list .sub-menu li + li {
	margin-top: .5em;
}

.sitemap .menu-list .sub-menu li::before {
	content: "";
	width: 10px;
	height: 2px;
	background-color: var(--wp--preset--color--primary);
	position: absolute;
	top: calc( 50% - 1px );
	left: 0;
}

.sitemap .menu-list .sub-menu a {
	color: var(--wp--preset--color--contrast);
}

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

1500

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

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

	.fv-box .txt-wrap {
		padding-left: 6.4vw;
	}

}

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

1400

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

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

	.fv-box .fv-feature-list {
		margin: 0 1em 0 2em;
		gap: .5em;
	}

	.fv-box .cont .fv-img > img {
		transform: none;
	}

	.fv-box .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column.cont {
		padding-bottom: 6vw;
	}

	.fv-feature-list .feature {
		width: 16vw;
		height: 16vw;
		font-size: 1.6vw;
		letter-spacing: .02em;
	}

	.fv-feature-list .feature .num {
		font-size: .9em;
	}

	.fv-feature-list .feature .num strong {
		font-size: 1.6em;
	}

	.fv-feature-list .feature .sub {
		font-size: .9em;
	}

	.home .fv-box::after {
		top: 2.4vw;
	}

	.trouble-block {
		padding-right: 2.4rem;
		padding-left: 2.4rem;
	}

	.trouble-block .trouble {
		padding: 10px 1.5rem 0;
	}

	.hurry-block {
		background-position: bottom right -120px;
		background-position: left bottom !important;
        background-size: auto 80% !important;
	}

	.hurry-cont .cont-wrap .icon {
		left: -.6em;
	}

	.hurry-cont .cont-ttl {
		padding-left: 2em;
		padding: 6% 2% 0% 9%;
	}

	.near-box {
		padding-right: 0;
		padding-left: 0;
	}

	.near-box .funeral-list-slider {
		max-width: 100% !important;
	}

	.single-funeral .main-box {
		padding-right: 0;
		padding-left: 0;
	}

	.single-funeral .main-box .slider-block {
		max-width: 100%;
	}

}


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

1200

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

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

	.balloon-wrap .balloon {
		font-size: var(--wp--preset--font-size--20);
	}

	.trouble-block .ttl {
		font-size: var(--wp--preset--font-size--28);
		letter-spacing: .02em;
	}

	.trouble-block .trouble .icon {
		width: 14vw;
		height: 14vw;
		background-size: 1.8vw;
		font-size: 2vw;
	}

	.trouble-block .trouble-img img {
		width: 14vw !important;
	}

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

	.reason-list .wp-block-heading br.sp {
		display: block !important;
	}
	.facility-list {
		padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--20);
	}

	.facility-list-list .wp-block-heading br.sp {
		display: block !important;
	}

	main .full-slider .slick-prev,
	main .funeral-list-slider .slick-prev {
		left: calc( 5% - 24px );
	}

	main .full-slider .slick-next,
	main .funeral-list-slider .slick-next {
		right: calc( 5% - 24px );
	}

	.near-box:has( .funeral-list-slider ), .editor-styles-wrapper .near-box {
		padding-right: 0;
		padding-left: 0;
	}

	.comparison-block {
		font-size: var(--wp--preset--font-size--14);
	}

	.comparison-table .plan-body {
		height: 91px;
	}

	.comparison-table .plan-name {
		flex: .8 !important;
	}

	.comparison-table .plan-body .plan-name {
		font-size: var(--wp--preset--font-size--20);
	}

	.comparison-table .plan-body .name-wrap .wp-block-image {
		width: 90px;
	}

	.comparison-table .plan-body .name-wrap > p {
		width: calc( 100% - 90px );
	}

	.support-list .support {
		font-size: var(--wp--preset--font-size--20);
	}

	.title-02 .wp-block-heading,
	.title-02 .wp-block-post-title {
		font-size: var(--wp--preset--font-size--40);
	}

	.search-map-block {
		max-width: 80%;
	}

	.tax-area .fv-box .txt-wrap {
		padding-left: var(--wp--preset--spacing--40);
	}

	.overview-block .overview .ttl.wp-block-column {
		flex-basis: 22% !important;
		padding-left: 3.6em;
	}

	.overview-block .overview .ttl p::before {
		font-size: 2.4em;
		left: 12px;
	}

	.overview-block .overview .cont.wp-block-column {
		flex-basis: 28% !important;
	}

	.wp-block-post {
		margin-right: .5em;
		margin-left: .5em;
	}

	.plan-block .ttl .wp-block-heading {
		letter-spacing: .02em;
	}

	.plan-block .ttl .wp-block-heading br.sp {
		display: block !important;
	}

	.plan-block .plan-price .items .ttl {
		width: 5em;
	}

	.detail-list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.plan-block .contact-bnr-box {
		margin-top: var(--wp--preset--spacing--80);
		padding: 0;
	}

	.schedule-list{
		justify-content: space-between;
	}

	.schedule-list > p {
		padding: 4px;
	}

	.flow-cont .cont {
		gap: var(--wp--preset--spacing--40);
	}

	.flow-cont .cont > .txt {
		flex:  1.25 !important;
	}

	 .free-calls {
		flex-direction: column !important;
	}

	.flow-cont br.sp {
		display: block !important;
	}

	.single-voice .is-style-table-02 tbody th,
	.single-voice .is-style-table-02 tbody td {
		padding: 1em .8em;
		line-height: 1.5;
	}

	.info-txt p {
		text-align: left;
	}

	.system-block .ttl {
		flex: 1 !important;
	}

	.system-block .txt {
		flex: 1.5 !important;
	}

	.system-block .wp-block-list {
		font-size: var(--wp--preset--font-size--18);
	}

	.system-block .title-02 .wp-block-heading {
		font-size: var(--wp--preset--font-size--24);
	}

	.benefits-block .benefits .txt .wp-block-heading {
		font-size: var(--wp--preset--font-size--18);
	}

	.hurry-block {
		padding-top: 2em;
		padding-bottom: 2em;
	}

	.hurry-cont .txt-wrap {
		gap: 1em;
		padding-left: 29%;
	}

	.hurry-block .free-calls {
		padding-top: 1em;
		padding-bottom: 1em;
	}

	.hurry-cont .free-calls .num {
		font-size: var(--wp--preset--font-size--48);
	}

	.hurry-cont .free-calls .is-style-tel-icon::before {
		width: 32px;
		height: 32px;
		transform: translateY( 2px );
	}

	.hurry-cont .free-calls .tag,
	.hurry-cont .free-calls .tag.date {
		font-size: var(--wp--preset--font-size--15);
		padding: 0 10px;
	}

	.hurry-cont .cont-wrap .icon {
		font-size: var(--wp--preset--font-size--18);
	}

	.hurry-cont .cont-ttl {
		gap: 1em;
		padding-left: 1.5em;
		padding: 5% 2% 0% 7%;
	}

	.hurry-cont .cont-ttl .ttl {
		font-size: var(--wp--preset--font-size--15);
	}

	.hurry-cont .cont-ttl .ttl .wp-block-heading {
		font-size: var(--wp--preset--font-size--18);
	}

	.hurry-cont .check {
		font-size: var(--wp--preset--font-size--15);
		padding: 1em;
	}

	.greeting-box .read {
		font-size: var(--wp--preset--font-size--15);
		line-height: 1.8;
		letter-spacing: .02em;
	}

	.main-contents .wp-block-post .txt {
		font-size: var(--wp--preset--font-size--15);
	}

	.post .wp-block-read-more .btn {
		font-size: var(--wp--preset--font-size--15);
	}

}


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

1000

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

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

	.fv-box .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column.cont {
		flex-basis: 50%;
		padding-bottom: 8vw;
	}

	.fv-box .fv-feature-list {
		margin: 0 1em 0 0;
	}

	.fv-feature-list .feature {
		width: 18vw;
		height: 18vw;
		font-size: 1.8vw;
		letter-spacing: 0;
	}

	.fv-box .txt-wrap {
		padding-left: 0;
	}

	.fv-box .txt-wrap img {
		width: 20vw !important;
		max-width: 100% !important;
	}

	.fv-box .fv-bg-txt {
		font-size: 8vw;
	}

	.trouble-block {
		padding-right: var(--wp--preset--spacing--30);
		padding-left: var(--wp--preset--spacing--30);
	}

	.trouble-block .trouble {
		padding: 0 var(--wp--preset--spacing--20);
		align-self: flex-start;
	}

	.trouble-block .ttl {
		font-size: var(--wp--preset--font-size--24);
	}

	.trouble-block .read {
		font-size: var(--wp--preset--font-size--14);
		letter-spacing: .02em;
	}

	.trouble-block .trouble .icon-wrap {
		gap: var(--wp--preset--spacing--20);
	}

	.trouble-block .trouble .icon {
		width: 16vw;
		height: 16vw;
		background-size: 2vw;
		font-size: 2.4vw;
	}

	.trouble-block .trouble-img img {
		width: 16vw !important;
	}

	.fv-box .fv-feature-list {
		gap: 1vw;
	}

	.reason-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 3em 2em !important;
	}

	.facility-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 3em 2em !important;
	}

	.funeral-ttl {
		padding-right: var(--wp--preset--spacing--30);
		padding-left: var(--wp--preset--spacing--30);
	}

	.comparison-block {
		font-size: var(--wp--preset--font-size--13);
	}

	.comparison-block br.sp {
		display: block !important;
	}

	.comparison-table .plan-name {
		flex: 1 !important;
	}

    .comparison-table .plan-body .plan-name {
		font-size: var(--wp--preset--font-size--18);
		letter-spacing: 0;
		display: flex;
	}

	.comparison-table .plan-price {
		flex: .65 !important;
	}

	.price strong, .price .num {
		font-size: 1.6666em;
		letter-spacing: .02em;
	}

	.comparison-table .plan-num {
		flex: .25 !important;
	}

	.comparison-table .plan-flow {
		flex: .85 !important;
	}

	.comparison-table .plan-flow .wp-block-image {
		padding: 0 1em;
	}

	.modal-block .modal th {
		width: 12em;
	}

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

	.plan-list .wp-block-post-title {
		font-size: var(--wp--preset--font-size--20);
	}

	.wp-block-post-terms a {
		font-size: var(--wp--preset--font-size--13);
	}

	.title-01:not(:has(.ttl)) .wp-block-heading::before,
	.title-01:not(:has(.ttl)) .wp-block-heading::after,
	.title-01:not(:has(.ttl)) .wp-block-post-title::before,
	.title-01:not(:has(.ttl)) .wp-block-post-title::after,
	.title-01 .ttl::before,
	.title-01 .ttl::after {
		width: 80px;
	}

	.title-01 .note {
		font-size: var(--wp--preset--font-size--18);
	}

	.search-map-block .wp-block-buttons .wp-block-button__link {
		width: 120px;
		height: 50px;
		font-size: var(--wp--preset--font-size--16);
		background-position: right 10px center;
	}

	.funeral-list-box {
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	.tax-area .fv-box .title-02 .copy {
		font-size: var(--wp--preset--font-size--20);
	}

	.tax-area .funeral-list-box {
		margin-right: var(--wp--preset--spacing--40) !important;
		margin-left: var(--wp--preset--spacing--40) !important;
	}

	.overview-block .overview .ttl.wp-block-column {
		flex-basis: 20% !important;
	}

	.overview-block .overview .cont.wp-block-column {
		flex-basis: 30% !important;
	}

	.overview-block .overview br.sp {
		display: block !important;
	}

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

	.single-funeral .area-block {
		margin-top: 0;
	}

	.plan-block .cont {
		gap: var(--wp--preset--spacing--40);
	}

	.single-plan .price .label {
		font-size: var(--wp--preset--font-size--13);
	}

	.single-plan .price .label br.sp {
		display: block !important;
	}

	.single-plan .price-num {
		font-size: var(--wp--preset--font-size--16);
	}

	.plan-info-block .cont {
		gap: var(--wp--preset--spacing--40);
	}

	.plan-info-block .txt-wrap {
		letter-spacing: .02em;
	}

	.plan-block .plan-price .items {
		flex-direction: column;
	}

	.plan-block .plan-price .items .ttl {
		width: 100%;
		padding: 0 0 .5em;
		border: none;
		border-bottom: solid 1px var(--wp--preset--color--contrast);
	}

	.plan-block .plan-price .items .cont {
		width: 100%;
		gap: 0;
	}

	.plan-block .about-vip {
		margin-top: var(--wp--preset--spacing--40);
	}

	.contact-bnr-block .txt .note {
		font-size: var(--wp--preset--font-size--16);
	}

	.detail-list .detail .img {
		width: 50px;
	}

	.detail-list .detail .txt .note {
		margin-top: 0;
	}

	.voice-plan-list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.voice-plan-list .cat-item {
		height: 4.5em;
	}

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

	.single-voice .wp-block-heading br.sp {
		display: block !important;
	}

	.cost-info-box .title-01:not(:has(.ttl)) .wp-block-heading br.sp {
		display: block !important;
	}

	.point-list .point {
		padding: var(--wp--preset--spacing--40);
	}

	.point-list .point .txt {
		padding-left: 3.5em;
		line-height: 1.8;
	}

	.flow-list {
		display: grid !important;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		padding-right: var(--wp--preset--spacing--20);
		padding-left: var(--wp--preset--spacing--20);
	}

	.flow-list .flow:nth-child( 3n ) .wp-block-heading::after {
		display: none;
	}

	.system-block {
		flex-direction: column;
	}

	.system-block .title-02 {
		align-items: center;
	}

	.system-block .title-02 .wp-block-heading {
		text-align: center;
	}

	.vip-box .title-01 .wp-block-heading br.sp {
		display: block !important;
	}

	.col-03 {
		grid-template-columns: repeat(2, 1fr);
	}

    .hurry-block {
        background-position: -70px bottom !important;
        background-size: auto 75% !important;
	}
	.hurry-cont .txt-wrap {
		padding-left: 28%;
	}

	.hurry-cont .free-calls .num {
		font-size: var(--wp--preset--font-size--40);
	}

    .hurry-cont .free-calls .is-style-tel-icon::before {
		width: 24px;
		height: 24px;
		transform: none;
	}

	.hurry-cont .cont-wrap {
		padding: 0 1em 1em;
	}

	.hurry-cont .cont {
		margin-top: -8px;
	}

	.hurry-cont .cont-ttl .ttl {
		padding: 1em 0;
	}

	.hurry-cont .cont-ttl .ttl br.sp {
		display: block !important;
	}

	.greeting-box .cont {
		flex-direction: column-reverse;
		align-items: center !important;
	}

	.greeting-box .img {
		width:  100%;
		max-width: 360px;
	}

	.greeting-box .img .sign {
		width: 180px;
		margin-top: 1em;
	}

	.access-block .wp-block-heading br.sp {
		display: block !important;
	}

	.main-contents .wp-block-post .txt {
		font-size: var(--wp--preset--font-size--14);
		line-height: 1.8;
	}

	.post .wp-block-read-more .btn {
		font-size: var(--wp--preset--font-size--14);
	}

	.area-box .area-menu {
		padding-right: 0;
		padding-left: 0;
	}

	.area-block .term-group .level-2 {
		grid-template-columns: repeat(3, 1fr);
	}

}

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

850

----------------------------------------
*/
@media screen and (max-width: 850px) {
    .hurry-block {
        background-position: -90px bottom !important;
        background-size: auto 63% !important;
    }
}
/*
----------------------------------------

750

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

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

	.title-01 {
		gap: .3em;
	}

	.title-01 .sub {
		font-size: 12px;
		line-height: 1.1;
	}

	.title-01 .wp-block-heading,
	.title-01 .wp-block-post-title {
		font-size: var(--wp--preset--font-size--36);
		letter-spacing: .02em;
		line-height: 1.4;
	}

	.title-01:not(:has(.ttl)) .wp-block-heading,
	.title-01:not(:has(.ttl)) .wp-block-post-title,
	.title-01 .ttl {
		gap: .5em;
	}

	.title-01:not(:has(.ttl)) .wp-block-heading::before,
	.title-01:not(:has(.ttl)) .wp-block-heading::after,
	.title-01:not(:has(.ttl)) .wp-block-post-title::before,
	.title-01:not(:has(.ttl)) .wp-block-post-title::after,
	.title-01 .ttl::before,
	.title-01 .ttl::after {
		/* width: 50px; */
		width: 36px;
		height: 3px;
		margin-top: 2px;
	}

	.btn-hurry {
		font-size: var(--wp--preset--font-size--16);
		height: 80px;
	}

	.btn-hurry br.sp {
		display: none !important;
	}

	.btn-hurry .wp-block-image img {
		width: 40px !important;
	}

    .hurry-block {
        /* 750px以下用の元の指定に戻す、または新しい指定 */
        background: url(./assets/img/page/urgency/2x/hurry-img.png) bottom left / auto 111.5% no-repeat;
	}

	.btn-contact .wp-block-button__link {
		height: 80px;
		background-size: 36px;
		background-position: center top 1em;
	}
	
	.fv-box .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column.cont {
		padding-bottom: 0;
		position: static;
	}

	.fv-box .fv-block {
		padding-bottom: 2em;
	}

	.fv-box .fv-cont {
		flex-direction: column;
	}

	.fv-box .txt-wrap {
		padding: 6vw 65% 0 6vw;
		gap: var(--wp--preset--spacing--20);
	}

	.fv-box .txt-wrap img {
		width: 28vw !important;
	}

	.fv-box .ttl .en-txt {
		display: none;
		/*
		font-size: var(--wp--preset--font-size--10);
		letter-spacing: .02em;
		*/
	}

	.fv-box .cont .fv-img {
		position: absolute;
		top: -10px;
		right: -20%;
		left: 40%;
		z-index: -1;
	}

	.fv-box .fv-feature-list {
		padding-top: var(--wp--preset--spacing--30);
		position: relative;
	}

	.fv-box .fv-feature-list {
		margin: 0;
	}

	.fv-feature-list .feature {
		width: 30vw;
		height: 30vw;
		font-size: 3vw;
	}

	.tax-area .fv-box .txt-wrap {
		padding: 5vw 45% 5vw 5vw;
		background-position: right -140% bottom;
	}

	.tax-area .title-02 .sub {
		font-size: 12px;
	}

	.tax-area .fv-box .title-02 .wp-block-heading {
		font-size: 5.6vw;
		text-shadow:
			0 0 2px rgba(246, 245, 244, 1),
			0 0 4px rgba(246, 245, 244, 1),
			0 0 6px rgba(246, 245, 244, 1),
			0 0 8px rgba(246, 245, 244, 1),
			0 0 10px rgba(246, 245, 244, 1),
			0 0 12px rgba(246, 245, 244, 1),
			0 0 14px rgba(246, 245, 244, 1),
			0 0 16px rgba(246, 245, 244, 1),
			0 0 18px rgba(246, 245, 244, 1),
			0 0 20px rgba(246, 245, 244, 1);
	}

	.tax-area .fv-box .title-02 .copy {
		font-size: 3vw;
		letter-spacing: .1em;
	}

	.balloon-wrap .balloon {
		font-size: var(--wp--preset--font-size--18);
	}

	.trouble-block {
		background-size: 160px;
		padding-bottom: 0;
		width: 380px;
		max-width: 100%;
		margin: 0 auto;
	}

	.trouble-block .cont {
		flex-direction: column;
		padding-bottom: var(--wp--preset--spacing--40);
	}

	.trouble-block .ttl {
		text-align: center;
	}

	.trouble-block .trouble {
		padding: 0;
	}

	.trouble-block .trouble .icon {
		width: 100px;
		height: 100px;
		background-size: 12px;
		font-size: var(--wp--preset--font-size--16);
		letter-spacing: .02em;
	}

	.trouble-block .trouble-img img {
		width: 105px !important;
	}

	.slider-wrap {
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	.funeral-list-slider {
		width: 100% !important;
	}

	.funeral-list-slider .funeral-list.funeral-list--2,
	.funeral-list-slider .funeral-list.funeral-list--3 {
		width: 100%;
	}

	main .full-slider .slick-prev,
	main .funeral-list-slider .slick-prev {
		left: 20px;
	}

	main .full-slider .slick-next,
	main .funeral-list-slider .slick-next {
		right: 20px;
	}

	.full-slider .wp-block-post {
		border-radius: 10px;
		margin: var(--wp--preset--spacing--20) .5em;
	}

	.funeral-list-slider .funeral-list .funeral {
		margin: var(--wp--preset--spacing--20) .5em;
	}

	.funeral-ttl {
		flex-direction: column;
		gap: var(--wp--preset--spacing--40);
	}

	.is-style-left-line {
		text-align: center;
		align-self: center;
		letter-spacing: .02em;
		border: none;
		padding: 0 0 .6em;
		position: relative;
	}

	.is-style-left-line::after {
		content: "";
		width: 40px;
		height: 2px;
		background-color: var(--wp--preset--color--custom-purple);
		position: absolute;
		bottom: 0;
		left: calc( 50% - 20px );
	}

	.free-calls {
		width: 100%;
		align-items: stretch;
		gap: 1em;
	}

	.funeral-ttl .free-calls {
		gap: 1.2em;
	}

	.free-calls .link-to-cover-and-group-blocks {
		display: grid;
		place-content: center;
		width: 100%;
		height: 60px;
		border-radius: 30px;
		box-shadow: 0 2px 0 #dbdbdb;
		background-color: var(--wp--preset--color--base);
		font-size: 28px;
		text-align: center;
		letter-spacing: .04em;
		padding-right: 10px;
		margin: 0 auto;
	}

	.free-calls .tag-wrap {
		justify-content: center;
	}

	.tel-block .free-calls {
		flex-direction: column !important;
	}

	.is-style-bg-01 {
		padding-top: 45px;
		background-image: url( ./assets/img/page/common/2x/bg-01-sp.png ) !important;
	}

	.is-style-bg-01::before {
		height: 38px;
		top: -16px;
	}

	.comparison-table .plan-head {
		height: 50px;
		font-size: var(--wp--preset--font-size--15);
	}

	.comparison-table .plan-body {
		height: 76px;
	}

	.comparison-table .plan-body .name-wrap .wp-block-image {
		display: none;
	}

	.comparison-table .plan-body .name-wrap > p {
		width: 100%;
		text-align: left;
		padding: 0 .9em;
		letter-spacing: .2em;
	}

	.comparison-table .plan-price {
		flex: 0.84 !important;
	}

	.comparison-table .plan-num {
		flex: 0.38 !important;
	}

	.comparison-table .plan-flow {
		flex: 1 !important;
	}
	
	.search-map-box .info {
		text-align: left;
		line-height: 1.8;
		margin-top: 1.6em;
		margin-bottom: .6em;
	}

	.search-map-block {
		max-width: 100%;
		margin: 0 !important;
	}

	.search-map-block .wp-block-buttons .wp-block-button__link {
		width: 96px;
		height: 38px;
		border: 19px;
		font-size: var(--wp--preset--font-size--13);
		background-position: right 12px center;
		background-size: 9px;
		transform: translateX( -50% );
	}

	.search-map-block #area-saitama .wp-block-button__link {
		top: 17%;
		left: 30.4%;
	}

	.search-map-block #area-tokyo .wp-block-button__link {
		top: 40%;
		left: 36.8%;
	}

	.search-map-block #area-kanagawa .wp-block-button__link {
		top: 63%;
		left: 27.4%;
	}

	.search-map-block #area-chiba .wp-block-button__link {
		top: 53%;
		left: 72.2%;
	}

	.modal-block .modal .ttl {
		font-size: var(--wp--preset--font-size--36);
		margin-top: 95px;
	}

	.modal-block .close-btn {
		top: -10px;
		right: -10px
	}

	.modal-block .close-btn a {
		width: 36px;
		height: 36px;
	}

	.modal-block .modal table {
		margin-top: 1.2em;
	}

	.modal-block .modal-cont {
		padding: 1.4em;
	}

	.modal-block .modal .parent-link {
		font-size: var(--wp--preset--font-size--17);
		border-width: 3px;
		padding: 3px 0 3px 12px;
	}

	.modal-block .modal tr {
		display: flex;
		flex-direction: column;
		gap: 0;
	}

	.modal-block .modal th {
		width: 100%;
		font-size: var(--wp--preset--font-size--15);
		padding: 1.2em 0 0;
		font-weight: normal;
	}

	.modal-block .modal td {
		font-size: var(--wp--preset--font-size--15);
		padding: .6em 0 1.2em;
		border: none;
	}

	.modal-block .modal .area-list {
		padding-left: 1.5em;
		grid-template-columns: repeat(2, 1fr);
		gap: .8em 1.6em;
	}

	.support-box .title-01 {
		gap: .6em;
	}

	.support-box .title-01:not(:has(.ttl)) .wp-block-heading::before,
	.support-box .title-01:not(:has(.ttl)) .wp-block-heading::after {
		display: none;
	}

	.support-box .info-txt {
		margin-top: 1.2em;
		line-height: 1.8;
	}

	.support-box .info-txt p {
		text-align: left;
		letter-spacing: .08em;
	}

	.support-list {
		grid-template-columns: repeat(2, 1fr);
		gap: 1em .8em !important;
	}

	.support-list .support {
		font-size: var(--wp--preset--font-size--15);
	}

	.contact-bnr-block .img {
		bottom: 50px;
	}

	.contact-bnr-block .txt {
		position: static;
		padding-bottom: 80px;
	}

	.contact-bnr-block .cont-wrap {
		position: relative;
	}

	.contact-bnr-block .note {
		font-size: var(--wp--preset--font-size--13);
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 9;
	}

	.single-funeral .main-box .funeral-ttl {
		gap: 1.7em;
		padding: 0 var(--wp--preset--spacing--40);
		margin-bottom: 2em;
	}

	.single-funeral .main-box .ttl {
		font-size: var(--wp--preset--font-size--36);
	}

	.plan-list .wp-block-post-title {
		font-size: var(--wp--preset--font-size--24);
	}

	.full-slider + .wp-block-buttons {
		margin-top: 4.5em;
	}

	.single-funeral .main-box {
		padding-bottom: var(--wp--preset--spacing--50)
	}

	.overview-block .overview .ttl.wp-block-column {
		flex-basis: 40% !important;
		padding-right: .5em;
	}

	.overview-block .overview .ttl p::before {
		left: 10px;
	}

	.overview-block .material-symbols-outlined {
		font-size: 1.75em;
	}

	.overview-block .overview .cont.wp-block-column {
		flex-basis: 60% !important;
	}

	.overview-block .overview .ttl,
	.overview-block .overview .cont.wp-block-column {
		height: auto;
		min-height: 60px;
		padding: .5em 1em;
		letter-spacing: 0;
	}

	.overview-block .overview:first-child .ttl,
	.overview-block .overview:first-child .cont {
		border-top: none;
	}

	.overview-block .overview:first-child > div:first-child {
		border-top: solid 1px var(--wp--preset--color--custom-purple);
	}

	.overview-block .overview:first-child > div:nth-child( 2 ) {
		border-top: solid 1px var(--wp--preset--color--gray);
	}

	.feature-block {
		flex-direction: column;
		gap: var(--wp--preset--spacing--20);
	}

	.feature-box .feature-block .img.wp-block-column {
		border: none;
	}

	.feature-box .feature-block .img img {
		width: 160px;
	}

	.map-box {
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	.map-box .map-wrap iframe {
		height: 75vw;
	}

	.single-funeral .area-block {
		margin-top: var(--wp--preset--spacing--50);
	}

	.plan-info-block {
		padding-top: var(--wp--preset--spacing--40);
		padding-bottom: var(--wp--preset--spacing--60);
	}

	.plan-info-block .txt-wrap {
		gap: var(--wp--preset--spacing--30);
	}

	.plan-info-block .img {
		margin-top: var(--wp--preset--spacing--20);
	}

	.plan-block .cont {
		flex-direction: column;
	}

	.plan-block .ttl + .wp-block-image {
		margin-top: var(--wp--preset--spacing--40);
	}

	.plan-block .plan-price {
		padding: var(--wp--preset--spacing--40);
	}

	.single-plan .price-num {
		font-size: var(--wp--preset--font-size--15);
	}

	.detail-list {
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}

	.plan-block .detail-wrap {
		padding: 0;
		background-color: transparent;
	}

	.detail-list.grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: var(--wp--preset--spacing--20) !important;
	}

	.detail-list.grid .detail {
		flex-direction: column;
	}

	.detail-list.grid .detail .img {
		width: 100%;
	}

	.detail-list.grid .detail .img img {
		aspect-ratio: 3 / 2 !important;
	}

	.img-position-top img{
		object-fit: cover !important;
        object-position: top !important;

	}

	.detail-list.grid .detail .txt {
		padding: .6em .2em;
		font-size: var(--wp--preset--font-size--14);
		letter-spacing: 0;
		text-align: center;
	}

	.detail-list.grid .detail .txt .note {
		font-size: var(--wp--preset--font-size--10);
	}

	.schedule-list > p {
		writing-mode: vertical-rl;
		text-orientation: upright;
		font-feature-settings: normal;
		height: 6em;
		padding: 0 .25em 0 0;
		flex: 0 0 38px; 
	}

	.flow-cont .cont {
		flex-direction: column-reverse;
	}

	.flow-cont .txt-wrap {
		line-height: 1.8;
	}

	.free-calls .link-to-cover-and-group-blocks {
		width: 100%;
		padding: 0;
	}

	.flow-cont .bg-block {
		background-color: var(--wp--preset--color--light-gray);
		padding: 1em 1.5em !important;
		display: flex;
		justify-content: center;
	}

	.bg-block > * {
		padding: 0 !important;
		background-color: transparent;
	}

	.toggle-block {
		text-align: center;
	}

	.flow-cont .flow-mes {
		font-size: var(--wp--preset--font-size--20);
	}

	.voice-info-box .cont {
		margin-top: var(--wp--preset--spacing--40);
	}

	.voice-plan-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.voice-info-box .cont {
		flex-direction: column;
	}

	.voice-info-box .cont > .img {
		width: 100vw !important;
		margin-right: calc( var(--wp--preset--spacing--40) * -1 );
		margin-left: calc( var(--wp--preset--spacing--40) * -1 );
	}

	.voice-cont-box .cont-wrap {
		line-height: 1.8;
		margin-top: var(--wp--preset--spacing--40);
	}

	.customer-block {
		border: none;
		padding: 0;
	}

	.planner-block .cont {
		flex-direction: column-reverse;
		gap: var(--wp--preset--spacing--30);
	}

	.planner-block .cont .txt.wp-block-column {
		width: 100% !important;
	}

	.planner-block .cont .img.wp-block-column {
		width: 100% !important;
	}

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

	.planner-block .img .img-wrap {
		align-items: center;
		line-height: 1.5;
		margin-top: var(--wp--preset--spacing--30);
		gap: var(--wp--preset--spacing--20);
	}

	.planner-block .img .wp-block-image {
		width: 160px;
	}

	.voice-plan-box .title-01 .wp-block-heading,
	.voice-area-box .title-01 .wp-block-heading {
		font-size: var(--wp--preset--font-size--24);
	}

	.voice-plan-box .title-01:not(:has(.ttl)) .wp-block-heading::before,
	.voice-plan-box .title-01:not(:has(.ttl)) .wp-block-heading::after,
	.voice-area-box .title-01:not(:has(.ttl)) .wp-block-heading::before,
	.voice-area-box .title-01:not(:has(.ttl)) .wp-block-heading::after,
	.voice-area-box .ttl::before,
	.voice-area-box .ttl::after {
		display: none;
	}

	.col-03 {
		grid-template-columns: repeat(1, 1fr);
	}

	.point-list .point {
		flex-direction: column;
		gap: var(--wp--preset--spacing--20);
		padding: var(--wp--preset--spacing--50) var(--wp--preset--spacing--40);
	}

	.point-list .point .txt {
		padding-left: 0;
	}

	.point-list .point .txt::before {
		top: 35px;
		left: -5px;
	}

	.point-list .point .txt-wrap .ttl {
		text-align: center;
		align-items: center;
	}

	.point-list .is-style-heading-09::before,
	.point-list .is-style-heading-09::after {
		display: none;
	}

	.reserve-list {
		flex-direction: column;
	}

	.reserve-list .reserve::after {
		width: 40px;
		height: 40px;
		line-height: 40px;
	}

	.reserve-list .reserve {
		padding: var(--wp--preset--spacing--40);
	}

	.flow-list {
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}
	
	.flow-list .flow {
		display: grid;
		grid-template-columns: 40% 1fr;
		align-items: center;
		gap: 0 1em;
		padding: var(--wp--preset--spacing--30);
	}

	.flow-list .flow::before {
		width: 60px;
		top: 15px;
		left: -15px;
	}

	.flow-list .flow figure {
		grid-column: 1;
		grid-row: 1 / span 2;
		margin: 0;
	}

	.flow-list .flow .wp-block-heading {
		grid-column: 2;
		grid-row: 1;
		font-size: var(--wp--preset--font-size--18);
		text-align: left;
	}

	.flow-list .flow .wp-block-heading::after {
		top: auto;
		right: calc( 50% - 10px );
		bottom: -25px;
		transform: rotate( 90deg );
	}

	.flow-list .flow p {
		grid-column: 2;
		grid-row: 2;
		font-size: var(--wp--preset--font-size--14);
		text-align: left;
		margin: 0;
		line-height: 1.6;
	}

	.flow-list .flow img {
		width: 100%;
		height: auto;
		display: block;
	}

	.tel-block .ttl {
		width: 100%;
		padding-bottom: .4em;
	}

	.tel-block .tel-wrap {
		width: 100%;
		padding: 1em 1.5em !important;
		background-color: var(--wp--preset--color--light-gray);
	}

	.system-block {
		padding: var(--wp--preset--spacing--40);
	}

	.system-block .bg-block {
		background-color: var(--wp--preset--color--light-gray);
	}

	.benefits-block .benefits {
		flex-direction: row;
		align-items: center;
		gap: 0;
		padding: 1.5em 1em;
	}

	.benefits-block .benefits .img {
		width: 30%;
	}

	.benefits-block .benefits .txt {
		width: 70%;
		padding-left: 1em;
		line-height: 1.5;
		gap: .5em;
	}

	.benefits-block .benefits .txt .wp-block-heading {
		text-align: left;
		padding-bottom: 0;
		font-size: var(--wp--preset--font-size--17);
		letter-spacing: .02em;
	}

	.benefits-block .is-style-heading-07::before {
		display: none;
	}

	.benefits-block p {
		text-align: left !important;
		letter-spacing: .02em;
	}

	.benefits-block .benefits::before {
		width: 36px;
		height: 36px;
		top: -12px;
		left: -12px;
	}

	.not-found-block .read {
		text-align: left;
	}

	.greeting-box .img {
		max-width: 240px;
	}

	.greeting-box .img .sign {
		width: 120px;
	}

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

	.company-block .is-style-table-02 {
		font-size: var(--wp--preset--font-size--15);
	}

	.company-block .is-style-table-02 tbody th,
	.company-block .is-style-table-02 tbody td {
		padding-right: .5em;
		padding-left: .5em;
	}

	.company-block .is-style-table-02 tbody * + th,
	.company-block .is-style-table-02 tbody * + td {
		padding-left: 1em;
		padding-right: 0;
	}

	.dl-01:not( .tel ) {
		grid-template-columns: 1fr;
		justify-items: start;
	}

	.dl-01:not( .tel ) dd {
		padding: 0;
	}

	.access-block .ttl-wrap {
		flex-direction: column;
		gap: 1em;
		align-items: stretch;
	}

	.access-block .wp-block-heading br.sp {
		display: none !important;
	}

	.access-block .ttl-wrap .info {
		flex-direction: column;
		gap: .5em;
		align-items: stretch;
	}

	.access-block .ttl-wrap .phone {
		border: none;
		padding-left: 0;
		flex-direction: row;
		gap: .5em;
	}

	.access-block .is-style-tel-icon::before {
		width: 18px;
		height: 18px;
	}

	.access-block .ttl-wrap .is-style-mail-icon::before {
		font-size: 1.3em;
		margin-right: 3px;
	}

	.access-block .access {
		flex-direction: column;
		margin-top: var(--wp--preset--spacing--30);
	}

	.main-contents .post-contents {
		flex-direction: column !important;
		gap: var(--wp--preset--spacing--30);
	}

	.main-contents .wp-block-post .txt {
		font-size: var(--wp--preset--font-size--15);
	}

	.post .wp-block-read-more .btn {
		font-size: var(--wp--preset--font-size--15);
	}

	.sitemap .menu-list > p a {
		padding: .5em 2em .5em 0;
	}

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

}


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

690

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

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

	.comparison-block {
		margin-right: calc( var(--wp--preset--spacing--40) * -1 ) !important;
		margin-left: calc( var(--wp--preset--spacing--40) * -1 ) !important;
	}

	.comparison-block .scroll-wrap {
		padding: 1.2em 0;
	}

	.comparison-block .swipe {
		display: block;
		position: absolute;
		top: -17px;
		right: 0;
		margin: 0;
		opacity: 0;
		animation: swipe 3s linear 1s infinite normal;
	}

}

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

640

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

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

	:root :where(.is-layout-constrained) > * {
		margin-block-start: var(--wp--preset--spacing--40);
	}

	.is-style-lr-line {
		gap: .5em;
	}

	.reason-list {
		grid-template-columns: repeat(1, minmax(0, 1fr));
		padding: var(--wp--preset--spacing--30) 0;
	}

	.reason-list .reason::before,
	.reason-list .reason::after {
		top: 0;
		left: -10px;
	}

	.reason-list .wp-block-image::before {
		top: 20px;
		left: -20px;
	}

	.facility-list {
		grid-template-columns: repeat(1, minmax(0, 1fr));
		padding: var(--wp--preset--spacing--30) 0;
	}

	.facility-list .facility::before,
	.facility-list .facility::after {
		top: 0;
		left: -10px;
	}

	.facility-list .wp-block-image::before {
		top: 20px;
		left: -20px;
	}

	.area-block .cont-wrap:has( .term-group ) {
		padding: var(--wp--preset--spacing--10) var(--wp--preset--spacing--30);
	}

	.area-block .term-list {
		grid-template-columns: repeat(2, 1fr) !important;
	}

	.tax-area .funeral-list-block .funeral-list > .funeral {
		padding: var(--wp--preset--spacing--30);
	}

	.tax-area .funeral-list-block .funeral-list .funeral {
		gap: var(--wp--preset--spacing--30);
		flex-direction: column;
	}

	.tax-area .funeral-list-block .column-table .th {
		min-height: 56px;
	}

	.tax-area .funeral-list-block .more-txt {
		text-align: center;
	}

	.tax-area .funeral-list-block .more-txt .label {
		display: block;
		padding: .8em 2em 1em;
		text-align: center;
	}

	.contact-bnr-box {
		padding-right: 0 !important;
		padding-left: 0 !important;
	}

	.contact-bnr-block::after {
		height: 25px;
	}

	.contact-bnr-block .cont-wrap {
		padding: 25px 2.3em 0;
	}

	.contact-bnr-block .img {
		width: 26.2vw !important;
		left: 1.6em;
		bottom: 25px;
	}

	.contact-bnr-block .txt {
		margin-left: 25vw;
	}

	.contact-bnr-block .txt-wrap {
		gap: .4em;
	}

	.contact-bnr-block .txt-wrap .ttl {
		font-size: var(--wp--preset--font-size--15);
		padding-top: 2px;
		padding-bottom: 4px;
	}

	.contact-bnr-block .balloon-wrap .balloon {
		font-size: 12px;
		height: 30px;
		
	}

	.contact-bnr-block .balloon-wrap {
		top: -20px;
	}
	
	.contact-bnr-block .balloon-wrap .balloon strong {
		font-size: 1.286em;
	}

    .contact-bnr-block .txt {
		padding-bottom: 42px;
	}

	.contact-bnr-block .txt-wrap .wp-block-image {
		padding-right: .3em;
	}

	.contact-bnr-block .txt .note {
		font-size: var(--wp--preset--font-size--13);
		line-height: 25px;
	}

	.area-block .term-group.level-1 {
		flex-direction: column;
	}

	.area-block .term-group .wp-block-heading,
	.area-block .term-group .level-2 {
		width: 100%;
	}

	.area-block .term-group .wp-block-heading {
		display: flex;
		justify-content: center;
		align-items: center;
		gap: .5em;
		width: 100%;
		font-size: var(--wp--preset--font-size--24);
		color: var(--wp--preset--color--custom-purple);
	}

	.area-block .term-group .wp-block-heading::before,
	.area-block .term-group .wp-block-heading::after {
		content: "";
		height: 3px;
		flex: 1;
		border-top: solid 1px #aaa;
		border-bottom: solid 1px #aaa;
	}

}
	

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

hover

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

@media ( min-width: 751px ) {

	a:not( .wp-block-button__link ):hover {
		color: var(--wp--preset--color--custom-purple);
	}	

	.modal-block .close-btn a:hover {
		filter: saturate(150%);
	}

	.wp-block-post:has( .more-link:hover ) .img {
		background-color: var(--wp--preset--color--contrast);
	}

	.wp-block-post:has( .more-link:hover ) .img img {
		transform: scale( 1.1 );
		opacity: .8;
	}

	.tax-area .funeral-list-block .wp-block-post:has( .more-link:hover ) {
		box-shadow: 0 0 20px rgba(0, 0, 0, .1);
	}

	.tax-area .funeral-list-block .wp-block-post:has( .more-link:hover ) .more-txt .label {
		filter: saturate(150%);
	}

	.tax-area .funeral-list-block .wp-block-post:has( .more-link:hover ) .more-txt .label::after {
		right: .3em;
	}

	.area-block .term-list a:hover {
		color: var(--wp--preset--color--primary);
	}

	.toggle-block .toggle-ttl .wp-block-heading:hover {
		color: var(--wp--preset--color--custom-purple);

	}

	.voice-plan-list .cat-item a:hover {
		background-color: var(--wp--preset--color--custom-purple);
		color: var(--wp--preset--color--base) !important;
	}

	.voice-plan-list .cat-item.cremation a:hover {
		background-color: var(--wp--preset--color--custom-color-01);
	}

	.voice-plan-list .cat-item.funeral a:hover {
		background-color: var(--wp--preset--color--custom-color-02);
	}

	.voice-plan-list .cat-item.family a:hover {
		background-color: var(--wp--preset--color--custom-color-03);
	}

	.voice-plan-list .cat-item.public a:hover {
		background-color: var(--wp--preset--color--custom-color-04);
	}

	.voice-plan-list .cat-item.joint a:hover {
		background-color: var(--wp--preset--color--custom-color-05);
	}

	.link-to-cover-and-group-blocks .btn-hurry:hover {
		filter: saturate(125%);
		background-position: right .6em center;
	}

	.link-to-cover-and-group-blocks .btn-order-sub:hover {
		filter: saturate(125%);
		background-position: right .6em center;
	}	

	.comparison-table .link-to-cover-and-group-blocks:has( > .plan-01 ):hover {
		background-color: #fbfef9;
	}

	.comparison-table .link-to-cover-and-group-blocks:has( > .plan-02 ):hover {
		background-color: #f2fcfc;
	}

	.comparison-table .link-to-cover-and-group-blocks:has( > .plan-03 ):hover {
		background-color: #fbfbfe;
	}

	.comparison-table .link-to-cover-and-group-blocks:has( > .plan-04 ):hover {
		background-color: #fcf7fc;
	}

	.comparison-table .link-to-cover-and-group-blocks:has( > .plan-05 ):hover {
		background-color: #fcfaed;
	}

	.search-map-block .wp-block-buttons .wp-block-button__link:hover {
		background-color: #954da2;
		color: var(--wp--preset--color--base);
		background-image: url( ./assets/img/page/common/2x/arrow-ext-wh.png );
		box-shadow: 0 4px 20px rgba( 0, 0, 0, .15 );
		filter: none;
	}

	.search-map-block:has( .wp-block-button__link:hover ) .wp-block-image.base-map {
		position: absolute;
	}

	.search-map-block:has( .wp-block-button__link[href="#tokyo-modal"]:hover ) .wp-block-image.tokyo-map,
	.search-map-block:has( .wp-block-button__link[href="#kanagawa-modal"]:hover ) .wp-block-image.kanagawa-map,
	.search-map-block:has( .wp-block-button__link[href="#chiba-modal"]:hover ) .wp-block-image.chiba-map,
	.search-map-block:has( .wp-block-button__link[href="#saitama-modal"]:hover ) .wp-block-image.saitama-map {
		position: relative;
		z-index: 2;
		opacity: 1;
		visibility: visible;
	}

	.plan-list .wp-block-post.cremation:has( .more-link:hover ) {
		background-color: var(--wp--preset--color--custom-bg-color-01);
	}

	.plan-list .wp-block-post.funeral:has( .more-link:hover ) {
		background-color: var(--wp--preset--color--custom-bg-color-02);
	}

	.plan-list .wp-block-post.family:has( .more-link:hover ) {
		background-color: var(--wp--preset--color--custom-bg-color-03);
	}

	.plan-list .wp-block-post.public:has( .more-link:hover ) {
		background-color: var(--wp--preset--color--custom-bg-color-04);
	}

	.plan-list .wp-block-post.joint:has( .more-link:hover ) {
		background-color: var(--wp--preset--color--custom-bg-color-05);
	}

	.link-to-cover-and-group-blocks:has( > .contact-bnr-block ):hover {
		transform: scale( 1.02 );
		box-shadow: 0 8px 24px rgba( 0, 0, 0, .2 );
	}

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

	.sitemap .menu-list a:hover::after {
		transform: translateX( 5px );
	}

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

}
/*2026.01.11追加*/
.sp-only {
    display: none !important;
}
@media screen and (max-width: 750px) {
    .pc-only {
        display: none !important;
    }
	.sp-only {
    display: inline !important;
}
}
.nav-open .g-nav .hide-on-nav-open {
    display: none !important;
    visibility: hidden !important;
}
.nav-open .g-nav .show-on-nav-open {
    display: block !important;
    visibility: visible !important;
}
/*2026.02.12追加*/
.wp-block-post-excerpt__excerpt .custom-highlight {
  color: #962725;
  font-weight: 700;
}
@media (min-width: 769px) {
  .wp-block-post-excerpt__excerpt .custom-highlight {
    font-size: 18px;
  }
}
@media (max-width: 768px) {
  .wp-block-post-excerpt__excerpt .custom-highlight {
    font-size: 15px;
  }
}
/*2026.02.16追加*/
.img-hover-effect {
    transition: all .4s;
}
.img-hover-effect:hover {
    transform: scale(1.02);
}
/* 改行を禁止する */
.no-wrap-element {
  white-space: nowrap; 
}

/* FV内の新しい画像をレスポンシブ対応 */
.fv-cont .wp-block-image.size-large img {
    width: 70%;
    height: auto;
    max-width: 1024px; /* 元の画像幅に合わせて調整 */
    display: block;
	text-align: center;
}
/* 小さいPC向け：画面高さに応じて画像を縮小 */
@media (max-height: 800px) {
    .fv-cont .wp-block-image.size-large img {
        max-width: 60%;
        margin: 0 auto;
    }
}
@media (max-height: 700px) {
    .fv-cont .wp-block-image.size-large img {
        max-width: 45%;
    }
}

/* ===== FVモーダル ===== */
#fv-modal-overlay {
    display: none;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background: rgba(0,0,0,0.6);
    z-index: 99999;
    justify-content: center;
    align-items: center;
    padding: 12px;
    box-sizing: border-box;
}
#fv-modal-overlay.is-open {
    display: flex;
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
}
.wp-container-core-post-content-is-layout-45e09b9b > #fv-modal-overlay {
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
}
#fv-modal {
    background: #fff;
    border-radius: 8px;
    width: 100%;
    max-width: 1100px;
    max-height: 90vh;
    overflow: visible;
    position: relative;
    font-family: sans-serif;
    display: flex;
    flex-direction: column;
}
#fv-modal-close {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #555;
    color: #fff;
    border: none;
    font-size: 18px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    z-index: 10;
}
#fv-modal-body {
    overflow-y: auto;
    max-height: 90vh;
    padding: 48px 40px 28px;
    box-sizing: border-box;
    border-radius: 8px;
}
.fv-modal-inner {
    display: flex;
    gap: 32px;
    align-items: flex-start;
}
.fv-modal-left {
    flex: 1;
    min-width: 0;
}
.fv-modal-right {
    flex: 1;
    min-width: 0;
}

/* 左カラム */
.fv-modal-plan-title {
    background: #2d7a75;
    color: #fff;
    text-align: center;
    padding: 14px 12px;
    border-radius: 4px;
    font-weight: bold;
    font-size: 22px;
    margin-bottom: 20px;
    letter-spacing: 0.05em;
}
.fv-modal-price {
    font-size: 26px;
    font-weight: bold;
}
.fv-modal-price-unit {
    font-size: 16px;
}
.fv-modal-lead {
    text-align: center;
    margin-bottom: 20px;
    line-height: 1.6;
}
.fv-modal-lead p {
    margin: 0;
    font-size: 15px;
}
.fv-modal-lead-sub {
    display: none;
}
.fv-modal-lead-main {
    color: #e53e3e;
    font-size: 20px !important;
    font-weight: bold;
    margin-top: 4px !important;
}
.fv-modal-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 8px;
    table-layout: fixed;
}
.fv-modal-table th,
.fv-modal-table td {
    border: 1px solid #ddd;
    text-align: center;
    padding: 10px 6px;
    font-size: 13px;
    word-break: break-word;
}
.fv-modal-table thead tr {
    background: #f0f0f0;
}
.fv-modal-table thead th:first-child {
    width: 30%;
}
.fv-modal-table thead th:not(:first-child) {
    width: 17.5%;
}
.fv-modal-table tbody th {
    background: #f5f0e8;
    font-weight: bold;
    font-size: 13px;
    line-height: 1.5;
}
.fv-modal-table-price {
    font-size: 16px;
    font-weight: bold;
}
.fv-modal-x {
    color: #c0392b;
    font-size: 22px;
    font-weight: bold;
}
.fv-modal-table-note {
    font-size: 11px;
    color: #666;
    margin: 4px 0 16px;
}

/* おすすめしませんボックス：黄色背景＋赤ボーダー */
.fv-modal-not-recommend {
    background: #ffee00;
    border: 3px solid #e53e3e;
    border-radius: 6px;
    padding: 16px 20px;
}
.fv-modal-not-recommend-title {
    font-weight: bold;
    font-size: 20px;
    margin-top: 10px;
    margin-bottom: 10px;
    text-align: center;
    color: #e53e3e;
}
.fv-modal-not-recommend-text {
    font-size: 14px;
    line-height: 1.7;
    margin: 0;
    color: #333;
}
.fv-modal-not-recommend-text mark {
    background: transparent;
    color: #333;
    padding: 0;
}
.fv-modal-red {
    color: #333;
}

/* 右カラム */
.fv-modal-average-title {
    font-size: 14px;
    text-align: center;
    border-top: 2px solid #aaa;
    border-bottom: 2px solid #aaa;
    padding: 8px 0;
    margin-bottom: 12px;
    letter-spacing: 0.03em;
}
.fv-modal-average-price {
    text-align: center;
    font-size: 52px;
    font-weight: bold;
    color: #333;
    line-height: 1.1;
    margin-bottom: 16px;
}
.fv-modal-average-unit {
    font-size: 22px;
}
.fv-modal-average-table {
    width: 100%;
    border-collapse: collapse;
}
.fv-modal-average-table th,
.fv-modal-average-table td {
    border: 1px solid #ddd;
    padding: 10px 8px;
    vertical-align: top;
    font-size: 13px;
}
.fv-modal-average-table thead tr {
    background: #f0f0f0;
    text-align: center;
}
.fv-modal-average-table tbody th {
    background: #f9f9f9;
    text-align: center;
    font-weight: bold;
    white-space: nowrap;
    font-size: 13px;
}
.fv-modal-center {
    text-align: center;
    font-weight: bold;
    white-space: nowrap;
    font-size: 13px;
}
.fv-modal-small {
    font-size: 11px;
    display: block;
    font-weight: normal;
}

/* 下部共通 */
.fv-modal-caution {
    border: 2px dashed #e8a020;
    background: #fffbf0;
    color: #e53e3e;
    padding: 14px 20px;
    border-radius: 4px;
    font-size: 14px;
    margin-top: 24px;
    text-align: center;
    font-weight: bold;
}
.fv-modal-caution-em {
    font-weight: bold;
}
.fv-modal-link-wrap {
    text-align: center;
    margin: 20px 0 10px;
}
.fv-modal-link {
    display: inline-block;
    background: #2d7a75;
    color: #fff;
    padding: 14px 48px;
    border-radius: 30px;
    font-size: 15px;
    text-decoration: none;
    transition: 0.2s;
    font-weight: bold;
}
.fv-modal-link:hover {
    background: #235f5b;
    color: #fff;
}
.fv-modal-source {
    font-size: 11px;
    color: #999;
    text-align: center;
    margin: 10px 0 0;
}
.fv-modal-close-text-wrap {
    text-align: center;
    margin-top: 14px;
}
.fv-modal-close-text {
    background: none;
    border: none;
    color: #2d7a75;
    font-size: 14px;
    cursor: pointer;
    text-decoration: underline;
}
#fv-plan-banner img {
    cursor: pointer;
    transition: opacity 0.2s;
}
#fv-plan-banner img:hover {
    opacity: 0.85;
}

/* ===== SP対応 ===== */
@media (max-width: 768px) {
    #fv-modal-overlay {
        padding: 0;
        align-items: flex-end;
    }
    #fv-modal {
        max-height: 92vh;
        border-radius: 12px 12px 0 0;
        width: 100%;
    }
    #fv-modal-close {
        top: 10px;
        right: 10px;
        width: 30px;
        height: 30px;
        font-size: 16px;
    }
    #fv-modal-body {
        padding: 40px 16px 20px;
        max-height: 92vh;
    }
    .fv-modal-inner {
        flex-direction: column;
        gap: 20px;
    }
    .fv-modal-plan-title {
        font-size: 18px;
        padding: 12px;
    }
    .fv-modal-lead-main {
        font-size: 17px !important;
    }
    .fv-modal-not-recommend-title {
        font-size: 17px;
    }
    .fv-modal-not-recommend-text {
        font-size: 13px;
    }
    .fv-modal-average-price {
        font-size: 40px;
    }
    .fv-modal-average-table th,
    .fv-modal-average-table td {
        font-size: 12px;
        padding: 7px 5px;
    }
    .fv-modal-average-table tbody th {
        white-space: normal;
        min-width: 52px;
    }
    .fv-modal-caution {
        font-size: 13px;
    }
    .fv-modal-link {
        padding: 12px 32px;
        font-size: 14px;
    }
}