#page_head {
		position: relative;
		padding-inline: var(--side_margin);
		--inner:1000px;
		padding-block: 80px 40px;
}
@media screen and (min-width: 768px) {
		#page_head {
				padding-block: 90px 40px;
		}
}
@media screen and (min-width: 992px) {
		#page_head {
				padding-block: 120px 40px;
		}
}
#page_head:before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 130%;
		z-index: -1;
		background-color: #FCE2DF;
}
@media screen and (min-width: 992px) {
		#page_head:before {
				min-height: 600px;
		}
}
#page_head .section_title_group + * {
		-webkit-margin-before: 20px;
		        margin-block-start: 20px;
}

.page_head_catch {
		text-align: center;
		font-size: 1.7rem;
		font-weight: 500;
		color: #714E2C;
}
@media screen and (min-width: 768px) {
		.page_head_catch br {
				display: none;
		}
}
.page_head_catch + .page_head_text {
		-webkit-margin-before: 20px;
		        margin-block-start: 20px;
}
@media screen and (min-width: 768px) {
		.page_head_catch + .page_head_text {
				-webkit-margin-before: 10px;
				        margin-block-start: 10px;
		}
}

.page_head_text {
		text-align: center;
		color: #714E2C;
		font-size: 1.4rem;
		font-weight: 500;
		line-height: 1.8;
}

@-webkit-keyframes scroll-hint-appear {
		0% {
				-webkit-transform: translateX(40px);
				        transform: translateX(40px);
				opacity: 0;
		}
		10% {
				opacity: 1;
		}
		50%, 100% {
				-webkit-transform: translateX(-40px);
				        transform: translateX(-40px);
				opacity: 0;
		}
}

@keyframes scroll-hint-appear {
		0% {
				-webkit-transform: translateX(40px);
				        transform: translateX(40px);
				opacity: 0;
		}
		10% {
				opacity: 1;
		}
		50%, 100% {
				-webkit-transform: translateX(-40px);
				        transform: translateX(-40px);
				opacity: 0;
		}
}
.scroll-hint-icon {
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		width: 120px;
		height: auto;
		border-radius: 5px;
		-webkit-transition: opacity 0.3s;
		transition: opacity 0.3s;
		opacity: 0;
		background: rgba(0, 0, 0, 0.7);
		text-align: center;
		padding: 20px 10px 10px 10px;
		translate: -50% -50%;
}

.scroll-hint-icon-wrap {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		max-height: 100%;
		pointer-events: none;
		text-align: center;
}

.scroll-hint-text {
		font-size: 10px;
		color: #FFF;
		text-align: center;
		margin-top: 5px;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
		opacity: 0.8;
}

.scroll-hint-icon:before {
		display: inline-block;
		width: 40px;
		height: 40px;
		color: #FFF;
		vertical-align: middle;
		text-align: center;
		content: "";
		background-size: contain;
		background-position: center center;
		background-repeat: no-repeat;
		background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDM8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIiBmaWxsPSIjZmZmIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon:after {
		content: "";
		width: 34px;
		height: 14px;
		display: block;
		position: absolute;
		top: 10px;
		left: 50%;
		margin-left: -20px;
		background-repeat: no-repeat;
		background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDE8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIgZmlsbD0iI2ZmZiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiIGZpbGw9IiNmZmYiLz48L2c+PC9nPjwvc3ZnPg==);
		opacity: 0;
		-webkit-transition-delay: 2.4s;
		        transition-delay: 2.4s;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:after {
		opacity: 1;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
		-webkit-animation: scroll-hint-appear 1.2s linear;
		        animation: scroll-hint-appear 1.2s linear;
		-webkit-animation-iteration-count: 2;
		        animation-iteration-count: 2;
}

.scroll-hint-icon-white {
		background-color: #FFF;
		-webkit-box-shadow: 0 4px 5px rgba(0, 0, 0, 0.4);
		        box-shadow: 0 4px 5px rgba(0, 0, 0, 0.4);
}

.scroll-hint-icon-white:before {
		background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDQ8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon-white:after {
		background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDI8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiLz48L2c+PC9nPjwvc3ZnPg==);
}

.scroll-hint-icon-white .scroll-hint-text {
		color: #000;
		text-align: center;
}

.scroll-hint-shadow-wrap {
		position: relative;
}

.scroll-hint-shadow-wrap::after {
		content: "";
		width: 20px;
		height: 100%;
		background: linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
		position: absolute;
		top: 0;
		right: 0;
		pointer-events: none;
		z-index: 1;
		opacity: 0;
		visibility: hidden;
}

.scroll-hint-shadow-wrap::before {
		content: "";
		width: 20px;
		height: 100%;
		background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
		position: absolute;
		top: 0;
		left: 0;
		pointer-events: none;
		z-index: 1;
		opacity: 0;
		visibility: hidden;
}

.scroll-hint-shadow-wrap:has(.scroll-hint.is-right-scrollable)::after,
.scroll-hint-shadow-wrap.is-right-scrollable::after {
		opacity: 1;
		visibility: visible;
}

.scroll-hint-shadow-wrap:has(.scroll-hint.is-left-scrollable)::before,
.scroll-hint-shadow-wrap.is-left-scrollable::before {
		opacity: 1;
		visibility: visible;
}

#page_head {
		-webkit-padding-after: 0;
		        padding-block-end: 0;
}
#page_head:before {
		height: 100%;
}

.service_tab_group {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-margin-before: 40px;
		        margin-block-start: 40px;
}

.service_tab {
		position: relative;
		-webkit-box-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
		text-align: center;
		--bg-color:#EDA68C;
		--text-color:#ffffff;
		background-color: var(--bg-color);
		padding-block: 15px;
		line-height: 1.4;
		place-content: center;
		-webkit-transition: background-color 0.3s;
		transition: background-color 0.3s;
}
@media screen and (min-width: 768px) {
		.service_tab {
				padding-block: 20px;
		}
}
@media screen and (min-width: 992px) {
		.service_tab {
				padding-block: 30px;
		}
}
.service_tab:is(a) {
		--bg-color:#ffffff;
		--text-color:#EDA68C;
}
@media (hover: hover) and (pointer: fine) {
		.service_tab:is(a):hover {
				background-color: #EDA68C;
		}
		.service_tab:is(a):hover::before {
				background-color: #ffffff;
		}
		.service_tab:is(a):hover span {
				color: #ffffff;
		}
}
.service_tab:nth-child(1) {
		border-top-left-radius: 20px;
}
.service_tab:nth-child(1):is(a)::before {
		content: "";
		position: absolute;
		top: 50%;
		right: 0;
		width: 2px;
		height: 70%;
		background-color: #ffffff;
		translate: 0 -50%;
}
.service_tab:nth-child(2):is(a)::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		width: 2px;
		height: 70%;
		background-color: #ffffff;
		translate: 0 -50%;
}
.service_tab:nth-child(3) {
		border-top-right-radius: 20px;
}
.service_tab:nth-child(3):is(a)::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		width: 2px;
		height: 70%;
		background-color: #ffffff;
		translate: 0 -50%;
}
.service_tab span {
		font-size: 1.4rem;
		font-weight: 700;
		line-height: 1.1;
		color: var(--text-color);
		-webkit-transition: color 0.3s;
		transition: color 0.3s;
}
@media screen and (min-width: 768px) {
		.service_tab span {
				font-size: 1.6rem;
		}
		.service_tab span br {
				display: none;
		}
}
@media screen and (min-width: 992px) {
		.service_tab span {
				font-size: 2rem;
		}
}

.block_title {
		position: relative;
		font-size: 2rem;
		font-weight: 700;
		line-height: 1.3;
		color: #714E2C;
		-webkit-padding-start: 20px;
		        padding-inline-start: 20px;
}
@media screen and (min-width: 768px) {
		.block_title {
				font-size: 2.5rem;
		}
}
.block_title::before {
		content: "";
		position: absolute;
		top: 0.7em;
		left: 0;
		width: 16px;
		height: 16px;
		border-radius: 50%;
		translate: 0 -50%;
		background-image: url(../img/common/bloome.svg);
}

#individual {
		-webkit-padding-after: 80px;
		        padding-block-end: 80px;
}

.service_contents {
		padding-block: 80px;
		padding-inline: var(--side_margin);
		background-color: #ffffff;
		border-bottom-right-radius: 60px;
}
@media screen and (min-width: 768px) {
		.service_contents {
				border-bottom-right-radius: 0;
		}
}

.service_title p {
		font-size: 1.7rem;
		font-weight: 500;
		color: #714E2C;
}
@media screen and (min-width: 992px) {
		.service_title p {
				font-size: 2rem;
		}
}
.service_title h2 {
		font-size: 2.8rem;
		font-weight: 700;
		color: #714E2C;
		line-height: 1.5;
}
@media screen and (min-width: 992px) {
		.service_title h2 {
				font-size: 4rem;
		}
}

.service_description {
		-webkit-margin-before: 10px;
		        margin-block-start: 10px;
		font-size: 1.7rem;
		line-height: 2;
		font-weight: 500;
		letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
		.service_description {
				-webkit-margin-before: 30px;
				        margin-block-start: 30px;
		}
}

.service_contents_block {
		-webkit-margin-before: 20px;
		        margin-block-start: 20px;
		-webkit-padding-before: 20px;
		        padding-block-start: 20px;
		border-top: solid 1px #E0D6CC;
}
@media screen and (min-width: 768px) {
		.service_contents_block {
				-webkit-margin-before: 40px;
				        margin-block-start: 40px;
				-webkit-padding-before: 40px;
				        padding-block-start: 40px;
		}
}
@media screen and (min-width: 992px) {
		.service_contents_block {
				-webkit-margin-before: 50px;
				        margin-block-start: 50px;
				-webkit-padding-before: 50px;
				        padding-block-start: 50px;
		}
}

.service_contents_text {
		font-size: 1.7rem;
		line-height: 2;
		font-weight: 500;
		letter-spacing: 0.06em;
		-webkit-margin-before: 20px;
		        margin-block-start: 20px;
}

.strong_point_head {
		-webkit-margin-before: 20px;
		        margin-block-start: 20px;
		border-radius: 20px;
		background-color: #E7B8A7;
		text-align: center;
		font-size: 2rem;
		font-weight: 700;
		line-height: 1.5;
		color: #ffffff;
		padding: 10px 30px;
}
@media screen and (min-width: 768px) {
		.strong_point_head {
				-webkit-margin-before: 35px;
				        margin-block-start: 35px;
				font-size: 2.5rem;
				border-radius: 100vmax;
		}
		.strong_point_head br {
				display: none;
		}
}
@media screen and (min-width: 992px) {
		.strong_point_head {
				-webkit-margin-before: 50px;
				        margin-block-start: 50px;
		}
}

.service_strong_pointblock {
		-webkit-margin-before: 10px;
		        margin-block-start: 10px;
		border-radius: 20px;
		border: solid 2px #E7B8A7;
		padding: 20px;
		background-color: #FDF8F0;
}
@media screen and (min-width: 768px) {
		.service_strong_pointblock {
				padding: 30px 50px;
		}
}
@media screen and (min-width: 992px) {
		.service_strong_pointblock {
				padding: 50px 90px;
		}
}

.service_point_grid {
		display: -ms-grid;
		display: grid;
		gap: 10px;
}
@media screen and (min-width: 768px) {
		.service_point_grid {
				grid-auto-rows: -webkit-min-content;
				grid-auto-rows: min-content;
				place-content: center;
				gap: 20px;
				-ms-grid-columns: minmax(160px, 260px) 20px minmax(160px, 260px) 20px minmax(160px, 260px);
				grid-template-columns: repeat(3, minmax(160px, 260px));
		}
}

.service_strong_point {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		container-type: inline-size;
		width: 100%;
}

.service_strong_point_head {
		background-color: #FCE2DF;
		border-radius: 20px 20px 0 0;
		padding: 5px 30px 20px;
}
@media screen and (min-width: 768px) {
		.service_strong_point_head {
				padding: 5px 10px 15px;
		}
}

.strong_point_number {
		text-align: center;
		font-size: 1.4rem;
		font-weight: 700;
		line-height: 1;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		gap: 4px;
		color: #714E2C;
}
@media screen and (min-width: 768px) {
		.strong_point_number {
				font-size: max(6.3636363636cqi, 12px);
		}
}
.strong_point_number .number {
		line-height: 1.5;
		font-size: 3rem;
}
@media screen and (min-width: 768px) {
		.strong_point_number .number {
				font-size: max(13.6363636364cqi, 20px);
		}
}

.strong_point_title {
		font-size: 1.8rem;
		color: #714E2C;
		font-weight: 700;
		line-height: 1.4;
		text-align: center;
}
@media screen and (min-width: 768px) {
		.strong_point_title {
				min-height: 2lh;
				place-content: center;
				font-size: clamp(1.4rem, 8.5714285714cqi, 1.8rem);
		}
}

.service_strong_point_body {
		background-color: #ffffff;
		border-radius: 0 0 20px 20px;
		padding: 15px 20px;
		height: -webkit-min-content;
		height: -moz-min-content;
		height: min-content;
		-webkit-box-flex: 1;
		    -ms-flex-positive: 1;
		        flex-grow: 1;
}

.service_strong_point_text {
		font-size: 1.4rem;
		line-height: 1.8;
		color: #714E2C;
		font-weight: 500;
}

.service_note {
		-webkit-margin-before: 20px;
		        margin-block-start: 20px;
		font-size: 1.4rem;
		font-weight: 500;
		line-height: 1.9;
		letter-spacing: 0.06em;
}

.service_reason_block {
		position: relative;
		-webkit-margin-before: 80px;
		        margin-block-start: 80px;
		padding-inline: var(--side_margin);
		padding-block: 80px;
		z-index: 2;
}
.service_reason_block::before {
		content: "";
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		background-color: #ffffff;
		border-radius: 0 60px 60px 0;
		z-index: -1;
}
@media screen and (min-width: 1200px) {
		.service_reason_block::before {
				width: calc(1080px + (100vw - 1000px) / 2);
		}
}

.reason_title {
		font-size: 2.4rem;
		color: #714E2C;
		line-height: 1.5;
		font-weight: 700;
		letter-spacing: 0.06em;
}
@media screen and (min-width: 768px) {
		.reason_title {
				font-size: 3rem;
		}
}
@media screen and (min-width: 992px) {
		.reason_title {
				font-size: 4rem;
		}
}

.service_flex_box {
		-webkit-margin-before: 50px;
		        margin-block-start: 50px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		gap: 20px;
}
@media screen and (min-width: 992px) {
		.service_flex_box {
				-webkit-box-orient: horizontal;
				-webkit-box-direction: normal;
				    -ms-flex-direction: row;
				        flex-direction: row;
				gap: 30px;
		}
}

@media screen and (min-width: 768px) {
		.service_flex_img {
				width: 40%;
				max-width: 495px;
		}
}

.service_flex_contents {
		-webkit-box-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
}

.section_title {
		position: relative;
		font-size: 2.5rem;
		font-weight: 700;
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
		margin-inline: auto;
		color: #714E2C;
		padding-inline: 30px;
}
@media screen and (min-width: 768px) {
		.section_title {
				font-size: 3.5rem;
				padding-inline: 46px;
		}
}
@media screen and (min-width: 992px) {
		.section_title {
				font-size: 4rem;
		}
}
.section_title::before, .section_title::after {
		content: "";
		position: absolute;
		top: 50%;
		translate: 0% -50%;
		width: 16px;
		height: 16px;
		background-image: url(../img/common/bloome.svg);
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center;
}
.section_title::before {
		left: 0;
}
.section_title::after {
		right: 0;
}

#plan {
		padding-inline: var(--side_margin);
		padding-block: 80px;
		background-color: #ffffff;
}

.contents_title {
		-webkit-margin-before: 30px;
		        margin-block-start: 30px;
		border-radius: 20px;
		background-color: var(--title-color, #714E2C);
		padding: 10px 30px;
		text-align: center;
		font-size: 2rem;
		color: var(--text-color, #ffffff);
		line-height: 1.4;
		font-weight: 700;
		min-height: 74px;
		place-content: center;
}
@media screen and (min-width: 768px) {
		.contents_title {
				padding: 30px;
				font-size: 2.5rem;
				border-radius: 100vmax;
		}
		.contents_title br {
				display: none;
		}
}
.contents_title._option {
		-webkit-margin-before: 50px;
		        margin-block-start: 50px;
		--title-color:#E7B8A7;
}
.contents_title._plan {
		-webkit-margin-before: 50px;
		        margin-block-start: 50px;
		--title-color:#E0D6CC;
		--text-color:#714E2C;
}
@media screen and (min-width: 768px) {
		.contents_title._plan {
				-webkit-margin-before: 80px;
				        margin-block-start: 80px;
		}
}

.plan_box {
		padding: 30px 20px;
		background-color: var(--bg-color);
		border-radius: 20px;
}
@media screen and (min-width: 768px) {
		.plan_box {
				padding: 40px 50px 40px 70px;
		}
}
@media screen and (min-width: 992px) {
		.plan_box {
				padding: 40px 90px 40px 110px;
		}
}
@media screen and (min-width: 768px) {
		.plan_box .block_title {
				-webkit-padding-start: 0;
				        padding-inline-start: 0;
		}
		.plan_box .block_title::before {
				translate: calc(-100% - 10px) -50%;
		}
}
.plan_box._type01 {
		--bg-color:#FCE2DF;
		--box-color: #FFF8F7;
}
.plan_box._type01 .block_title::before {
		background-image: url(../img/common/bloome_w.svg);
}
.plan_box._type02 {
		--bg-color:#FDF8F0;
		--box-color: #EFE8D9;
}

.plan_head_text {
		font-size: 1.4rem;
		line-height: 1.9;
		color: #714E2C;
		font-weight: 700;
}

.plan_about_text {
		-webkit-margin-before: 10px;
		        margin-block-start: 10px;
		font-size: 1.7rem;
		font-weight: 700;
		color: #714E2C;
		line-height: 1.5;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: 5px;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
}
@media screen and (min-width: 768px) {
		.plan_about_text {
				-webkit-box-orient: horizontal;
				-webkit-box-direction: normal;
				    -ms-flex-direction: row;
				        flex-direction: row;
				-webkit-margin-before: 20px;
				        margin-block-start: 20px;
				gap: 10px;
				-webkit-box-align: start;
				    -ms-flex-align: start;
				        align-items: flex-start;
		}
}
.plan_about_text .text {
		-webkit-box-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
}
.plan_about_text small {
		font-weight: 500;
}

.recommend {
		background-color: #714E2C;
		color: #ffffff;
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
		border-radius: 100vmax;
		font-size: 1.2rem;
		font-weight: 700;
		line-height: 1.6;
		padding: 2px 10px;
}

.plan_price_text {
		color: #714E2C;
		font-weight: 700;
		text-align: left;
}
@media screen and (min-width: 768px) {
		.plan_price_text {
				font-size: 2rem;
		}
}
.plan_price_text .yen {
		font-size: 2.8rem;
}
@media screen and (min-width: 768px) {
		.plan_price_text .yen {
				font-size: 3.1rem;
		}
}
.plan_price_text .price {
		font-size: 4rem;
}
@media screen and (min-width: 768px) {
		.plan_price_text .price {
				font-size: 5.4rem;
		}
}
.plan_price_text .unit {
		font-size: 1.4rem;
}
@media screen and (min-width: 768px) {
		.plan_price_text .unit {
				font-size: 2.5rem;
		}
}
.plan_price_text small {
		display: block;
		font-weight: 500;
}
@media screen and (min-width: 768px) {
		.plan_price_text small {
				display: inline;
				font-size: 1.4rem;
		}
}
.plan_price_text + small {
		color: #714E2C;
		font-weight: 500;
}

.plan_detail_box {
		-webkit-margin-before: 20px;
		        margin-block-start: 20px;
		border-radius: 10px;
		padding: 20px;
		background-color: var(--box-color, #F2F0ED);
}
@media screen and (min-width: 768px) {
		.plan_detail_box {
				-webkit-margin-before: 10px;
				        margin-block-start: 10px;
		}
}

.detail_text {
		font-size: 1.4rem;
		line-height: 1.9;
		font-weight: 500;
		letter-spacing: 0.06em;
}

.option_block {
		-webkit-margin-before: 10px;
		        margin-block-start: 10px;
		display: -ms-grid;
		display: grid;
		gap: 10px;
}
@media screen and (min-width: 768px) {
		.option_block {
				-ms-grid-columns: 1fr 20px 1fr 20px 1fr;
				grid-template-columns: 1fr 1fr 1fr;
				gap: 20px;
				-webkit-margin-before: 20px;
				        margin-block-start: 20px;
		}
}

.option_item {
		border-radius: 20px;
		background-color: #FFF8F7;
		padding: 20px;
		width: 100%;
		container-type: inline-size;
}

.option_name {
		font-size: 2rem;
		color: #714E2C;
		font-weight: 700;
		line-height: 1.5;
}
@media screen and (min-width: 768px) {
		.option_name {
				font-size: 7.1428571429cqi;
		}
}

.option_price {
		color: #714E2C;
		font-weight: 700;
		line-height: 1.5;
		font-size: 1.4rem;
}
@media screen and (min-width: 768px) {
		.option_price {
				font-size: 5cqi;
		}
}
.option_price .yen {
		font-size: 2.5rem;
}
@media screen and (min-width: 768px) {
		.option_price .yen {
				font-size: 8.9285714286cqi;
		}
}
.option_price .price {
		font-size: 4.6rem;
}
@media screen and (min-width: 768px) {
		.option_price .price {
				font-size: 16.4285714286cqi;
		}
}

.option_text {
		-webkit-margin-before: 15px;
		        margin-block-start: 15px;
		font-size: 1.4rem;
		font-weight: 500;
		line-height: 1.8;
}
.option_text small {
		font-size: 1.2rem;
		color: #707070;
}

.table_wrapper {
		-webkit-margin-before: 10px;
		        margin-block-start: 10px;
		overflow-x: auto;
}
@media screen and (min-width: 768px) {
		.table_wrapper {
				-webkit-margin-before: 20px;
				        margin-block-start: 20px;
		}
}

table {
		border-collapse: collapse;
		width: -webkit-max-content;
		width: -moz-max-content;
		width: max-content;
}
@media screen and (min-width: 575px) {
		table {
				width: 100%;
		}
}
table tbody tr._option_head td {
		background-color: #E7B8A7;
}
@media screen and (min-width: 768px) {
		table tbody tr._option_head td {
				font-size: 1.7rem;
		}
}
table tbody tr._option_head {
		color: #ffffff;
}
table tbody tr:nth-child(-n+7) {
		--table-head-color: #FDF1DD;
		--table-body-color: #FDF8F0;
}
table tbody tr:nth-child(n+9) {
		--table-head-color: #FCE2DF;
		--table-body-color: #FFF8F7;
}
table th {
		background-color: #714E2C;
		color: #ffffff;
		font-size: 1.4rem;
		font-weight: 700;
		border: solid 1px #ffffff;
		width: 102px;
		padding: 10px 8px;
		text-align: center;
}
@media screen and (min-width: 575px) {
		table th {
				width: 20%;
		}
}
@media screen and (min-width: 768px) {
		table th {
				font-size: 1.7rem;
		}
		table th br {
				display: none;
		}
}
table td {
		padding: 12px 10px;
		text-align: center;
		font-size: 1.4rem;
		font-weight: 700;
		line-height: 1.4;
		border: solid 1px #ffffff;
		background-color: var(--table-body-color);
}
@media screen and (min-width: 768px) {
		table td {
				place-content: center;
				place-items: center;
		}
}
table td:first-child {
		position: sticky;
		left: 0;
		background-color: var(--table-head-color);
}
table td:first-child::before {
		content: "";
		position: absolute;
		top: 0;
		right: 0;
		width: 1px;
		height: 100%;
		background-color: #ffffff;
}
@media screen and (min-width: 768px) {
		table td:first-child::before {
				display: none;
		}
}
table td:not(:first-child) {
		background-color: var(--table-body-color);
}
@media screen and (min-width: 768px) {
		table td:not(:first-child) {
				line-height: 1;
		}
}
@media screen and (min-width: 768px) {
		table td .sp {
				display: none;
		}
}
table td small {
		font-size: 1.2rem;
}
table td .sticky {
		position: sticky;
		left: 120px;
		display: block;
		width: -webkit-fit-content;
		width: -moz-fit-content;
		width: fit-content;
}
table td .circle {
		display: block;
		width: 14px;
		height: 14px;
		border: 3px solid #000;
		border-radius: 50%;
		margin-inline: auto;
}
@media screen and (min-width: 768px) {
		table td .circle {
				display: inline-block;
				vertical-align: -2px;
		}
}
table td .closs {
		text-shadow: 1px 0px #454545, 0px 1px #454545, -1px 0px #454545, 0px 1px #454545, 0px -1px #454545;
}

#service {
		padding-inline: var(--side_margin);
		padding-block: 80px;
}

.service_box {
		position: relative;
		background-color: #ffffff;
		border-radius: 20px;
		-webkit-margin-before: 30px;
		        margin-block-start: 30px;
}
@media screen and (min-width: 768px) {
		.service_box {
				border-radius: 50px 50px 20px 20px;
		}
}
.service_box dt {
		background-color: #E7B8A7;
		border-radius: 20px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: 10px;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		font-size: 2rem;
		color: #ffffff;
		font-weight: 700;
		line-height: 1.4;
		padding: 10px;
		min-height: 78px;
}
@media screen and (min-width: 768px) {
		.service_box dt {
				min-height: unset;
				font-size: 2.5rem;
				padding: 15px;
				border-radius: 100vmax;
		}
		.service_box dt br {
				display: none;
		}
}
.service_box dt .text {
		border-left: solid 1px #ffffff;
		-webkit-padding-start: 10px;
		        padding-inline-start: 10px;
}
.service_box:nth-of-type(2) dt {
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
}
@media screen and (min-width: 768px) {
		.service_box:nth-of-type(2) dt {
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
		}
}
.service_box:is(dl) {
		position: relative;
}
.service_box:is(dl)::before {
		content: "";
		position: absolute;
		width: 27px;
		height: 16px;
		clip-path: polygon(0 0, 100% 0, 50% 100%);
		background-color: #EDA68C;
		bottom: -55px;
		left: 50%;
		translate: -50% -100%;
}
.service_box dd {
		padding: 20px;
}
@media screen and (min-width: 768px) {
		.service_box dd {
				padding: 30px;
		}
}
.service_box:is(div) {
		border: solid 2px #EDA68C;
		border-radius: 20px;
		text-align: center;
		padding: 25px 20px;
		background-image: repeating-linear-gradient(110deg, transparent, transparent 10px, rgb(252, 226, 223) 10px, rgb(252, 226, 223) 11px);
}
@media screen and (min-width: 768px) {
		.service_box:is(div) {
				padding: 40px;
		}
}
.service_box + .service_box {
		-webkit-margin-before: 55px;
		        margin-block-start: 55px;
}

.service_text {
		max-width: 794px;
		margin-inline: auto;
		font-size: 1.4rem;
		font-weight: 500;
		line-height: 1.9;
}

.service_start {
		text-align: center;
		font-size: 1.7rem;
		font-weight: 700;
		color: #714E2C;
}
@media screen and (min-width: 768px) {
		.service_start {
				font-size: 2.5rem;
		}
}

#cancel {
		padding-inline: var(--side_margin);
		padding-block: 80px;
		background-color: #ffffff;
}
@media screen and (min-width: 768px) {
		#cancel {
				padding-block: 80px 110px;
		}
}

.cancel_box {
		-webkit-margin-before: 40px;
		        margin-block-start: 40px;
		background-color: #F2F0ED;
		padding: 30px 20px;
		border-radius: 20px;
}
@media screen and (min-width: 768px) {
		.cancel_box {
				padding: 40px 60px;
		}
}
@media screen and (min-width: 992px) {
		.cancel_box {
				padding: 50px 90px;
		}
}

.cancel_list li {
		counter-increment: list;
		font-size: 1.4rem;
		line-height: 1.9;
		font-weight: 500;
}
@media screen and (min-width: 768px) {
		.cancel_list li {
				-webkit-padding-start: 35px;
				        padding-inline-start: 35px;
		}
}
.cancel_list li .first_line {
		position: relative;
		font-size: 1.7rem;
		color: #714E2C;
		font-weight: 700;
		line-height: 2;
}
.cancel_list li .first_line::before {
		content: counter(list);
		background-color: #ffffff;
		border-radius: 50%;
		width: 24px;
		height: 24px;
		font-size: 1.4rem;
		font-weight: 700;
		line-height: 24px;
		text-align: center;
		display: inline-block;
		-webkit-margin-end: 5px;
		        margin-inline-end: 5px;
		color: #714E2C;
}
@media screen and (min-width: 768px) {
		.cancel_list li .first_line::before {
				position: absolute;
				top: 0;
				left: -5px;
				translate: -100% 0;
		}
}
.cancel_list li + li {
		-webkit-margin-before: 20px;
		        margin-block-start: 20px;
		-webkit-padding-before: 20px;
		        padding-block-start: 20px;
		border-top: solid 1px #E0D6CC;
}
@media screen and (min-width: 768px) {
		.cancel_list li + li {
				-webkit-margin-before: 30px;
				        margin-block-start: 30px;
				-webkit-padding-before: 30px;
				        padding-block-start: 30px;
		}
}
/*# sourceMappingURL=mirai.css.map */