<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "utf-8";

:root {
	--vw: 1vw;
	--vh: 1vh;

	--main-font-color: var(--sumi80);
	--main-color: #d3884f;
	--sumi20: #F6F6F6;
	--sumi40: #E7E7E7;
	--sumi60: #C0C0C0;
	--sumi80: #4F4F4F;
	--sumi100: #333333;
	--primary-green: #3BBFBB;
	--pink: #F47D98;
	--blue: #5E7EBF;
	--transition: 0.4s;
	--hover-opacity: 0.6;

	--font-main: "Noto Sans JP", "メイリオ", "Meiryo", "Hiragino Kaku Gothic ProN",
		"ヒラギノ角ゴ ProN W3", Hiragino Sans, "Osaka", "MS PGothic", -apple-system,
		BlinkMacSystemFont, arial, helvetica, sans-serif;
	--font-min: YakuHanMPs;
	--font-maru: YakuHanRPs;
	--font-en: "Ysabeau Infant", serif;
	--font-mix: "Ysabeau Infant", "Noto Sans JP", "メイリオ", "Meiryo", "Hiragino Kaku Gothic ProN",
		"ヒラギノ角ゴ ProN W3", Hiragino Sans, "Osaka", "MS PGothic", -apple-system,
		BlinkMacSystemFont, arial, helvetica, sans-serif;
}



/*++++++++++++++++++++++++++++
l_header
++++++++++++++++++++++++++++*/

.l_header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	width: 100%;
	padding: 1.6rem;
	--h-btn-border: var(--primary-green);
	--bar-gap: 0.4rem;

}

.js_header_on .l_header {
	--h-btn-border: #fff;
	--bar-gap: 0rem;
}

.l_header_logo {
	width: 14.1rem;
	z-index: 10;
	display: block;
	position: relative;
}

.l_header_logo:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	-webkit-mask: url(../images/logo.svg) center / 100% no-repeat;
	mask: url(../images/logo.svg) center / 100% no-repeat;
	background: var(--primary-green);
	transition: var(--transition);

	opacity: 0;
	pointer-events: none;
}

.l_header_logo a {
	display: block;
}

.l_header_logo img {
	transition: var(--transition);
}

.js_header_move .l_header {
	background: #fff;
	box-shadow: 0px 0px 2.4rem -0.4rem rgba(0,0,0,0.13);
}

.js_header_move .l_header_logo:before {
	opacity: 1;
}

.js_header_move .l_header_logo img {
	opacity: 0;
}

/*++++++++++++++++++++++++++++
l_footer
++++++++++++++++++++++++++++*/
.l_footer {
	color: #fff;
	background: var(--primary-green);
	padding-top: 11.9rem;
	border-radius: 3.2rem 3.2rem 0 0;
	position: relative;
	margin-top: 9.6rem;
}

.l_footer_contact {
	background: #fff;
	box-shadow: 0px 0px 2.4rem -0.4rem rgba(0, 0, 0, 0.1);
	height: 11.8rem;
	width: 32rem;
	border-radius: 5.9rem;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--font-en);
	color: var(--primary-green);
	font-weight: 500;
	position: absolute;
	line-height: 1;
	top: 0;
	left: 50%;
	transform: translate(-50%,-50%);
	--icon-url: url(../images/icon_arrow03.svg);
	--icon-color: var(--primary-green);
	--icon-size: 3.2rem;
	text-decoration: none;
	font-size: 4rem;
}

.l_footer_contact:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 1.1rem;
	width: var(--icon-size);
	aspect-ratio: 1/1;
	-webkit-mask: var(--icon-url) center / 100% no-repeat;
	mask: var(--icon-url) center / 100% no-repeat;
	background: var(--icon-color);
	z-index: 1;
	transform: translateY(-50%);
}

.l_footer_inner {
	padding: 0 1.6rem 1.6rem;
}

.l_footer_head {}

.l_footer_logo {
	width: 27.7rem;
}

.l_footer_logo img {}

.l_footer_name {
	font-size: 1.6rem;
	line-height: 1.44;
	font-weight: 700;
	margin-top: 1.6rem;
}

.l_footer_address {
	font-size: 1.4rem;
	line-height: 1.44;
	font-weight: 500;
	margin-top: 0.4rem;
}

.l_footer_gmap {
	margin-top: 1.8rem;
}

.l_footer_gmap a {
	display: block;
	position: relative;
	width: fit-content;
	padding: 0 1.8rem 0.4rem 0;
	--icon-url: url(../images/icon_arrow02.svg);
	--icon-color: #fff;
	--icon-size: 1rem;
	font-size: 1.5rem;
	line-height: 1;
	font-family: var(--font-en);
	text-decoration: none;
}

.l_footer_gmap a:before {
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	z-index: 1;
	background: #fff;
}

.l_footer_gmap a:after {
	content: '';
	display: block;
	position: absolute;
	top: 0.3rem;
	right: 0;
	width: var(--icon-size);
	aspect-ratio: 1/1;
	-webkit-mask: var(--icon-url) center / 100% no-repeat;
	mask: var(--icon-url) center / 100% no-repeat;
	background: var(--icon-color);
	z-index: 1;
}


.l_footer_sns {
	display: flex;
	gap: 2rem;
	margin-top: 2rem;
}

.l_footer_sns a {}

.l_footer_sns a img {
	width: auto;
	height: 1.6rem;
}

.l_footer_body {
	margin-top: 3.6rem;
}

.l_footer_nav {}

.l_footer_nav_list {
	display: flex;
	flex-direction: column;
	gap: 1.1rem;
}

.l_footer_nav_list li {}

.l_footer_nav_list li a {
	position: relative;
	text-decoration: none;
	font-family: var(--font-en);
	color: #fff;
	font-size: 1.5rem;
	line-height: 1.34;
	padding: 0 0 0 1.2rem;
}

.l_footer_nav_list li a:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 0.6rem;
	aspect-ratio: 1/1;
	z-index: 1;
	box-shadow: 0px 0px 8px 2px rgba(255, 255, 255, 0.5);
	transform: translateY(-50%);
	background: #fff;
	border-radius: 50%;
}

.l_footer_bnrs {
	margin-top: 3.9rem;
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
}

.l_footer_bnr {}

.l_footer_bnr_ttl {
	font-size: 1.5rem;
	line-height: 1.48;
	color: #fff;
}

.l_footer_bnr a {
	text-decoration: none;
	width: 100%;
	border-radius: 1.6rem;
	height: 8.1rem;
	display: flex;
	align-items: center;
	padding: 0 0 0 1.6rem;
	position: relative;
	background: #fff;
	margin-top: 0.3rem;
}

.l_footer_bnr a:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 1.6rem;
	width: 1rem;
	aspect-ratio: 1/1;
	z-index: 1;
	background: url(../images/icon_arrow02.svg) center / 100% no-repeat;
	transform: translateY(-50%);
}

.l_footer_bnr a img {
	height: 2rem;
	width: auto;
}


.l_footer_bottom {
	background: #37B0AC;
	padding: 1.6rem;
}

.l_footer_bottom_inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
}

.l_footer_bottom_link {
	text-decoration: none;
	font-family: var(--font-en);
	font-size: 1.5rem;
	line-height: 1.34;
}

.l_footer_bottom small {
	font-size: 1.5rem;
	font-family: var(--font-en);
	line-height: 1.34;
}

/*++++++++++++++++++++++++++++
l_join
++++++++++++++++++++++++++++*/
.l_join {
	background: linear-gradient(180deg, #3BBFBB 0%, #329C99 100%);
	position: relative;
	isolation: isolate;
	overflow: hidden;
	border-radius: 3.5rem;
	padding: 3.3rem 3rem 3rem;
	z-index: 10;
}

.l_join:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	background: url(../images/join_bg.png) center / cover no-repeat;
	mix-blend-mode: darken;
}

.l_join_ttl {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	font-size: 6.2rem;
	font-weight: 500;
	font-family: var(--font-en);
	color: #fff;
	flex-wrap: wrap;
	line-height: 1.2;
}

.l_join_ttl span {
	border: 1px solid #fff;
	border-radius: 5rem;
	font-size: 3rem;
	padding: 0.6rem 2.1rem;
	margin: 0 0 0 1rem;
	line-height: 1.5;
	position: relative;
	top: 1rem;
}

.l_join_catch {
	color: #fff;
	font-size: 1.7rem;
	/* text-align: center; */
	margin-top: 2.9rem;
}

.m_col:has(.l_join_bnr) {
	margin-top: 3.8rem;
	--gap-row: 1.4rem;
}

.l_join_bnr {
	background: #fff;
	border-radius: 2.4rem;
	position: relative;
	--icon-url: url(../images/icon_arrow02.svg);
	--icon-color: var(--primary-green);
	--icon-size: 2.4rem;
	padding: 3rem;
	display: block;
	text-decoration: none;
}

.l_join_bnr:before {
	content: '';
	display: block;
	position: absolute;
	top: 1.6rem;
	right: 1.6rem;
	width: var(--icon-size);
	aspect-ratio: 1/1;
	-webkit-mask: var(--icon-url) center / 100% no-repeat;
	mask: var(--icon-url) center / 100% no-repeat;
	background: var(--icon-color);
	z-index: 1;

	display: none;
}

.l_join_bnr_head {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding-bottom: 2.3rem;
	border-bottom: 1px solid var(--sumi40);
}

.l_join_bnr_head span {
	font-size: 1.5rem;
	color: var(--pink);
	font-weight: 700;
}

.l_join_bnr_head img {
	height: 3rem;
	margin-top: 1.3rem;
}

.l_join_bnr_txt {
	font-size: 1.7rem;
	margin-top: 2.3rem;
}

.l_join_bnr_instagram .l_join_bnr_head span {
	color: var(--blue);
}

.l_join_bnr_txt {}

/*++++++++++++++++++++++++++++
l_archive
++++++++++++++++++++++++++++*/
.l_archive {
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.l_archive_item {
	text-decoration: none;
	background: #F1F9F8;
	border-radius: 1.2rem;
	padding: 1.5rem;
	display: flex;
	flex-direction: column;
	gap: 0.6rem;
}

.l_archive_item_head {
	display: flex;
	gap: 1.5rem;
	font-weight: 500;
	font-family: var(--font-en);
	font-size: 1.5rem;
	color: var(--primary-green);
}

.l_archive_item_head time {}

.l_archive_item_txt {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
	font-weight: 700;
	font-size: 1.5rem;
	line-height: 1.4;
}

/*++++++++++++++++++++++++++++
l_single
++++++++++++++++++++++++++++*/
.l_single {
	margin-top: 2rem;
	margin-bottom: 6rem;
}

.l_single_data {
	display: flex;
	gap: 1.4rem;
}

.l_single_data+.l_single_data {
	margin-top: 1rem;
}

.l_single_data dt {
	width: 8rem;
	border: 1px solid var(--primary-green);
	border-radius: 10rem;
	color: var(--primary-green);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--font-en);
	height: 2.5rem;
	font-size: 1.2rem;
}

.l_single_data dd {
	font-weight: 600;
	font-family: var(--font-en);
	color: var(--primary-green);
	flex: 1;
}

.l_single_back {
	box-shadow: 0px 0px 2.4rem -0.4rem rgba(0, 0, 0, 0.1);
	--height: 5rem;
	height: var(--height);
	border-radius: calc(var(--height) / 2);
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: center;
	--icon-url: url(../images/icon_arrow_back.svg);
	--icon-color: var(--primary-green);
	--icon-size: 1.3rem;
	position: relative;
	font-family: var(--font-en);
	color: var(--primary-green);
	width: 19rem;
	padding: 0 0.8rem 0 0;
	margin: 4rem auto 0;
}


.l_single_back:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 1.8rem;
	width: var(--icon-size);
	aspect-ratio: 1/1;
	-webkit-mask: var(--icon-url) center / 100% no-repeat;
	mask: var(--icon-url) center / 100% no-repeat;
	background: var(--icon-color);
	z-index: 1;
	transform: translateY(-50%);
}

.l_single_content {
	margin-top: 3rem;
}

.l_single_content *:first-child {
	margin-top: 0 !important;
}

.l_single_content :is(p, ul, ol, table, blockquote)+ :is(p, ul, ol, table, blockquote) {
	margin-top: 2rem;
}

.l_single_content h2 {
	font-weight: 700;
	margin-bottom: 1.6rem;
	font-size: 2.1rem;
	margin-top: 3rem;
}

.l_single_content h3 {
	font-weight: 700;
	border-top: 1px solid var(--sumi60);
	padding-top: 2rem;
	margin-bottom: 2rem;
	font-size: 1.8rem;
	margin-top: 3rem;
}

.l_single_content h4 {
	font-weight: 500;
	position: relative;
	margin-bottom: 2rem;
	font-size: 1.6rem;
	background: #F1F9F8;
	border-radius: 0.6rem;
	padding: 1.4rem 2rem 1.4rem 2.7rem;
	margin-top: 3rem;
}

.l_single_content h4:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 1.4rem;
	width: 3px;
	height: calc(100% - 3.4rem);
	z-index: 1;
	border-radius: 2px;
	background: var(--primary-green);
	transform: translateY(-50%);
}

.l_single_content p {
	line-height: 1.5;
	letter-spacing: 0.002em;
	font-size: 1.5rem;

}

.l_single_content img {
	border-radius: 0.8rem;
}

.l_single_content .table_ttl+table {
	margin-top: 1rem;
}

.l_single_content table {}

.l_single_content table :is(th, td) {
	font-size: 1.5rem;
	padding: 1rem;
	vertical-align: middle;
	line-height: 1.5;
}

.l_single_content table th {
	background: #F1F9F8;
	border-top: 1px solid #E0ECEB;
}

.l_single_content table td {
	border-top: 1px solid #F1F9F8;
}

.l_single_content table tr:last-of-type th {
	border-bottom: 1px solid #E0ECEB;
}

.l_single_content table tr:last-of-type td {
	border-bottom: 1px solid #E0ECEB;
}

.l_single_content table a {
	text-decoration: none;
	font-family: var(--font-en);
	padding: 0 1.7rem 0.3rem 0;
	--icon-url: url(../images/icon_arrow02.svg);
	--icon-color: var(--sumi80);
	--icon-size: 1rem;
	position: relative;
	display: block;
	width: fit-content;
	word-break: break-all;
}

.l_single_content table a:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	width: var(--icon-size);
	aspect-ratio: 1/1;
	-webkit-mask: var(--icon-url) center / 100% no-repeat;
	mask: var(--icon-url) center / 100% no-repeat;
	background: var(--icon-color);
	z-index: 1;
	transform: translateY(-50%);
}

.l_single_content table a:after {
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	z-index: 1;
	background: var(--sumi80);
}

.l_single_content cite,
.l_single_content .cite {
	text-align: right;
	display: block;
	margin-top: 0.3rem;
	font-size: 1.2rem;
}

.l_single_content blockquote {
	border-radius: 1.2rem;
	background: var(--sumi20);
	padding: 1.5rem;
	font-size: 1.5rem;
}

.l_single_content ul {}

.l_single_content ul li {
	position: relative;
	padding: 0 0 0 2rem;
	font-size: 1.5rem;
}

.l_single_content ul li:before {
	content: '';
	display: block;
	position: absolute;
	top: 0.8rem;
	left: 0.3rem;
	width: 0.6rem;
	aspect-ratio: 1/1;
	z-index: 1;
	border-radius: 50%;
	background: var(--primary-green);
}

.l_single_content ul li+li {
	margin-top: 1rem;
}

.l_single_content ol {
	counter-reset: ol-counter;
}

.l_single_content ol li {
	counter-increment: ol-counter;
	position: relative;
	padding: 0 0 0 2rem;
	font-size: 1.5rem;
}

.l_single_content ol li:before {
	content: '0'counter(ol-counter) '.';
	display: block;
	position: absolute;
	top: 0.3rem;
	left: 0rem;
	z-index: 1;
	color: var(--primary-green);
	font-weight: 700;
	font-family: var(--font-en);
	font-size: 1.2rem;
}

.l_single_content ol li:nth-of-type(n+10):before {
	content: counter(ol-counter) '.';
}

.l_single_content ol li+li {
	margin-top: 1rem;
}

.l_single_content .caption {
	margin-top: 0.5rem;
	text-align: right;
}
/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
module
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.m_col {
	display: grid;
	--gap-col: 3rem;
	--gap-row: 3rem;
	--col: 1;
	grid-template-columns: repeat(var(--col), 1fr);
	gap: var(--gap-row) var(--gap-col);
}

.m_col02_sp {
	--col: 2;
}

.m_col_img {
	flex-direction: column-reverse;
	--gap-row: 2rem;
}

.m_col:has(.u_knowledge) {
	--gap-col: 1.5rem;
	--gap-row: 1.5rem;
}



.m_external_link {
	text-decoration: none;
	font-family: var(--font-en);
	padding: 0 2.3rem 0.3rem 0;
	--icon-url: url(../images/icon_arrow02.svg);
	--icon-color: var(--sumi80);
	--icon-size: 1rem;
	position: relative;
	display: block;
	width: fit-content;
	word-break: break-all;
	line-height: 1.3;
}

.m_external_link:before {
	content: '';
	display: block;
	position: absolute;
	top: 47%;
	right: 0;
	width: var(--icon-size);
	aspect-ratio: 1/1;
	-webkit-mask: var(--icon-url) center / 100% no-repeat;
	mask: var(--icon-url) center / 100% no-repeat;
	background: var(--icon-color);
	z-index: 1;
	transform: translateY(-50%);
}

.m_external_link:after {
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	z-index: 1;
	background: var(--sumi80);
}

.m_btn {
	background: #fff;
	box-shadow: 0px 0px 2.4rem -0.4rem rgba(0, 0, 0, 0.1);
	min-width: 17.2rem;
	width: fit-content;
	color: var(--primary-green);
	--icon-url: url(../images/icon_arrow01.svg);
	--icon-color: var(--primary-green);
	--icon-size: 1.1rem;
	line-height: 1.3;
	padding: 1.6rem 3rem 1.6rem 2rem;
	border-radius: 2.6rem;
	text-decoration: none;
	position: relative;
}

.icon_template:before {

}

.m_btn:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 1.8rem;
	width: var(--icon-size);
	aspect-ratio: 1/1;
	-webkit-mask: var(--icon-url) center / 100% no-repeat;
	mask: var(--icon-url) center / 100% no-repeat;
	background: var(--icon-color);
	z-index: 1;
	transform: translateY(-50%);
	transition: var(--transition);
}

.m_btn_en {
	font-family: var(--font-en);
	line-height: 1.2;
}


.m_btn_back {
	box-shadow: 0px 0px 2.4rem -0.4rem rgba(0, 0, 0, 0.1);
	--height: 5rem;
	height: var(--height);
	border-radius: calc(var(--height) / 2);
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: center;
	--icon-url: url(../images/icon_arrow_back.svg);
	--icon-color: var(--primary-green);
	--icon-size: 1.3rem;
	position: relative;
	font-family: var(--font-en);
	color: var(--primary-green);
	width: 19rem;
	padding: 0 0.8rem 0 0;
	margin: 4rem auto 0;
}


.m_btn_back:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 1.8rem;
	width: var(--icon-size);
	aspect-ratio: 1/1;
	-webkit-mask: var(--icon-url) center / 100% no-repeat;
	mask: var(--icon-url) center / 100% no-repeat;
	background: var(--icon-color);
	z-index: 1;
	transform: translateY(-50%);
}


.m_icon_list {
	display: flex;
	flex-wrap: wrap;
	gap: 2rem;
}

.m_icon_list img {
	width: auto;
	height: 1.6rem;
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
top
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
.t_ttl01 {
	display: flex;
	flex-direction: column;
}

.t_ttl01 span {
	font-family: var(--font-en);
	color: var(--primary-green);
	font-weight: 500;
	font-size: 6.2rem;
	line-height: 1;
}

.t_ttl01 em {
	font-weight: 700;
	font-size: 1.7rem;
	margin-top: 1.1rem;
}

.t_mv {
	position: relative;
	isolation: isolate;
}

.t_mv:before {
    content: '';
    display: block;
    position: absolute;
    top: 35.5rem;
    left: 1.6rem;
    width: 41.1rem;
    aspect-ratio: 418 / 346;
    z-index: 1;
    background: url(../images/logo_mark.svg) center / 100% no-repeat;
    mix-blend-mode: multiply;
}

.t_mv_img {
	aspect-ratio: 780/1688;
	position: relative;
	z-index: -1;
}

.t_mv_catch {
	position: absolute;
	z-index: 5;
	top: 0;
	left: 2.4rem;
	margin-top: 35.8rem;
}

.t_mv_scroll {
	font-size: 1.9rem;
	font-family: var(--font-en);
	color: #fff;
	position: absolute;
	height: 6rem;
	padding-left: 7.7rem;
	display: flex;
	align-items: center;
	bottom: 2.4rem;
	left: 2.4rem;
	text-decoration: none;
	z-index: 5;
}

.t_mv_scroll:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 6.1rem;
	aspect-ratio: 1/1;
	border: 1px solid #fff;
	border-radius: 50%;
	z-index: 1;
	background: url(../images/top/mv_arrow.svg) center / 0.8rem no-repeat;
}

#main {
	padding-top: 2.3rem;
}

.t_map {
	position: relative;
	isolation: isolate;
	background: #E8F0EF;
	overflow: hidden;
	border-radius: 2.8rem;
	width: calc(100% - 3.2rem);
	margin: 0 auto;
	padding: 32.7rem 3.1rem 6.6rem;
	z-index: 9;
}

.t_map:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	background: url(../images/top/map_sp.png) left top / 33.4rem no-repeat;
}

.t_map:after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -2;
	background: url(../images/top/map_bg_sp.png) center / cover no-repeat;
	mix-blend-mode: soft-light;
	border-radius: 2.8rem;
}

.t_map_content {}

.t_map_ttl {
	font-size: 3.8rem;
	font-family: var(--font-en);
	color: var(--primary-green);
	line-height: 1.41;
	font-weight: 500;
}

.t_map_ttl span {
	border: 1px solid var(--primary-green);
	font-size: 2.3rem;
	border-radius: 5rem;
	padding: 0.2rem 2.3rem 0.4rem;
	line-height: 2.1;
	position: relative;
	left: 0.5rem;
	top: -0.4rem;
}

.t_map_txt {
	margin-top: 3.3rem;
	line-height: 2;
	font-weight: 700;
	font-size: 1.7rem;
}

.t_service {position: relative;z-index: 10;margin-top: -3.1rem;}

.t_service .inner {
	padding: 0px 3rem;
}

.t_service_head {
	padding: 0 0.9rem;
}

.t_service_ttl {

}

.t_service_copy {
	margin-top: 5.6rem;
	font-size: 1.7rem;
	font-weight: 500;
	letter-spacing: 0.002em;
}

.t_service_btn {
	margin-top: 6.4rem;
}

.t_service_slider {
	margin: 6rem -0.8rem 0;
}
.t_service_slider .slick-list {
	overflow: visible;
}
.t_service_slider .slick-track {
	display: flex;

}

.t_service_slider_arrow {
	display: none;
}
.t_service_item {
	height: auto;
	margin: 0 0.8rem;
}

:where(.t_service_item:nth-of-type(n+2)) {

}


.t_service_item_in {
	box-shadow: 0px 0px 2.4rem -0.4rem rgba(0, 0, 0, 0.1);
	border-radius: 1.6rem;
	text-decoration: none;
	display: block;
	padding: 3.2rem;
	height: 100%;
}

.t_service_item_ttl {
	display: flex;
	flex-direction: column;
}

.t_service_item_ttl .num {
	font-family: var(--font-en);
	color: var(--primary-green);
	line-height: 1;
	font-weight: 300;
	font-size: 2rem;
	transition: var(--transition);
}

.t_service_item_ttl .en {
	font-family: var(--font-en);
	color: var(--primary-green);
	line-height: 1.2;
	font-weight: 500;
	font-size: 3rem;
	margin-top: 0.7rem;
	transition: var(--transition);
}

.t_service_item_ttl .ja {
	line-height: 1.2;
	font-size: 2.3rem;
	font-weight: 700;
	margin-top: 1.7rem;
}

.t_service_item_txt {
	letter-spacing: 0.002em;
	margin-top: 3rem;
	font-size: 1.5rem;
}

.t_service_item_body {
	margin-top: 3.2rem;
}

.t_service_item_img {
	height: 24rem;
}

.t_service_item_img img {
	border-radius: 0.8rem;
}

.t_company {
	position: relative;
	isolation: isolate;
	margin-top: 12rem;
}

.t_company:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100% - 50rem);
	z-index: -1;
	background: #F1F9F8;
}

.t_company_ttl {
	position: relative;
	top: -4rem;
}

.t_company_txt {
	margin-top: 3.4rem;
	font-size: 1.7rem;
}

.t_company_btn {
	margin-top: 7.6rem;
}

.t_company_block {

margin-top: 6.1rem;
}

.t_company_item + .t_company_item {
	margin-top: 3rem;
}

.t_company_item_ttl {
	font-size: 3.8rem;
	line-height: 1.2;
	font-family: var(--font-en);
	color: var(--primary-green);
	font-weight: 500;
}

.t_company_item_img {
	margin-top: 1.6rem;
	display: block;
}

.t_company_item_img img {
	border-radius: 2.4rem;
}

.t_company_item_txt {
	margin-top: 1.6rem;
}

.t_company_item_hosoku {
	font-size: 1.3rem;
	margin-top: 0.7rem;
}

.t_company_item_data {
	margin-top: 2.3rem;
}

.t_company_item_data dt {
	font-family: var(--font-en);
	font-size: 2rem;
}

.t_company_item_data :is(p, ul) {
	margin-top: 2rem;
}

.t_join {
	margin-top: 7.7rem;
}

.t_news {

margin-top: 8rem;
}

.t_news_block {

}

.t_news_head {

}

.t_news_ttl {

}

.t_news_btn {
	margin-top: 7.2rem;
}

.t_news_body {
	margin-top: 4rem;
}

.t_news_list {

}

.t_news_item {
	text-decoration: none;
	border-radius: 2.4rem;
	background: #F1F9F8;
	display: block;
	padding: 2.9rem;
}

.t_news_item + .t_news_item  {
	margin-top: 2.4rem;
}

.t_news_item_head {
	display: flex;
	gap: 0.5rem 1.3rem;
	align-items: center;
	flex-wrap: wrap;
}

.t_news_item_head time {
	font-family: var(--font-en);
	font-weight: 500;
	font-size: 1.6rem;
	color: var(--primary-green);
}

.t_news_item_cat {

}

.t_news_item_cat li {
	font-size: 1.4rem;
	line-height: 1;
	min-width: 7.2rem;
	min-height: 2.3rem;
	border-radius: 1.2rem;
	font-family: var(--font-en);
	border: 1px solid var(--primary-green);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--primary-green);
	padding: 0.3rem 1rem;
}

.t_news_item_txt {
	margin-top: 1rem;
	line-height: 1.4;
	font-weight: 500;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
下層
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
/*++++++++++++++++++++++++++++
breadcrumbs
++++++++++++++++++++++++++++*/
.breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem 3rem;
	padding: 0.8rem 1.5rem;
	margin-top: 1.5rem;
	width: fit-content;
	border: 1px solid var(--sumi20);
	border-radius: 10rem;
}

.breadcrumbs&gt;span {
	position: relative;
}

.breadcrumbs&gt;span&gt; :is(a, span) {
	font-family: var(--font-mix);
	font-weight: 500;
	font-size: 1.5rem;
	text-decoration: none;
	display: block;
	line-height: 1.3;
}

.breadcrumbs&gt;span:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: -1.5rem;
	width: 0.6rem;
	aspect-ratio: 1/1;
	border-radius: 50%;
	z-index: 1;
	transform: translate(-50%, -50%);
	background: var(--sumi20);
}

.breadcrumbs&gt;span:first-of-type:before {
	display: none;
}

/*  */
.breadcrumbs&gt;span&gt;a {
	color: var(--sumi20);
}

/* current */
.breadcrumbs&gt;span&gt;span {
	color: var(--primary-green);
}


/*++++++++++++++++++++++++++++
u_head
++++++++++++++++++++++++++++*/
.u_head {
	position: relative;
	margin-bottom: 5rem;
}

.u_head:before {
	content: '';
	display: block;
	position: absolute;
	top: 14rem;
	right: 1rem;
	width: 12rem;
	aspect-ratio: 418/346;
	z-index: 10;
	background: url(../images/logo_mark.svg) center / 100% no-repeat;
	mix-blend-mode: multiply;
}

.u_head_img {
	position: relative;
	height: 50vw;
	z-index: 1;
}

.u_head_ttl {
	display: flex;
	flex-direction: column;
	margin-top: 2rem
}

.u_head_ttl span {
	font-weight: 500;
	font-family: var(--font-en);
	color: var(--primary-green);
	font-size: 4rem;
	line-height: 1.2;
}

.u_head_ttl em {
	line-height: 1.44;
	font-weight: 700;
	font-size: 2rem;
	margin-top: 0.5rem;
}


/*++++++++++++++++++++++++++++
u_content
++++++++++++++++++++++++++++*/
.u_content {}

.u_underline_section {
	position: relative;
	padding: 0 0 5rem;
	margin-bottom: 5rem;
}

.u_underline_section:before {
	content: '';
display: block;
position: absolute;
bottom: 0;
left: 50%;
width: calc(100% - 3.2rem);
height: 1px;
z-index: 1;
	transform: translateX(-50%);
	background: var(--sumi60);
}

.u_scroll_wrap &gt; section {
	padding: 6rem 0; 
}

.u_scroll_wrap &gt; section:first-of-type {
	padding-top: 0;
}

.u_scroll_wrap&gt;section:nth-of-type(2n) {
	background: #F7FDFC;
}

.u_scroll_wrap&gt;section:nth-of-type(2n):last-of-type {
	isolation: isolate;
	background: none;
	position: relative;
	z-index: 9;
}

.u_scroll_wrap&gt;section:nth-of-type(2n):last-of-type:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100% + 10rem);
	z-index: -1;
	background: #F7FDFC;
}


.u_scroll {
	margin-top: 5rem;
}

.u_scroll_nav {
	margin-bottom: 3.5rem;
}

.u_scroll_nav ul {
	display: flex;
	flex-wrap: wrap;
	padding: 0;
	position: relative;
	z-index: 10;
	justify-content: center;
	gap: 1rem;
}

.u_scroll_nav ul li a {
	--color: var(--primary-green);
	text-decoration: none;
	border: 1px solid var(--color);
	position: relative;
	height: 3.6rem;
	width: fit-content;
	display: flex;
	align-items: center;
	padding: 0.3rem 1rem;
	border-radius: 1.8rem;
	color: var(--color);
	font-family: var(--font-en);
}

.u_scroll_nav ul li a:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 1.4rem;
	width: 0.6rem;
	z-index: 1;
	aspect-ratio: 1/1;
	border-radius: 50%;
	background: var(--color);
	transform: translateY(-50%);
	transition: var(--transition);
	display: none;
}


.u_scroll_content {
	--section-gap: 10rem;
	margin-top: calc(-1 * var(--section-gap) / 2);
	position: relative;
	z-index: 9;
}

.u_scroll_content&gt;section {
	position: relative;
	padding-top: calc(var(--section-gap) / 2);
}

.u_scroll_content&gt;section:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 1px;
	z-index: 1;
	background: var(--sumi40);
	display: none;
}

.u_scroll_content&gt;section+section {
	margin-top: calc(var(--section-gap) / 2);
}

.u_scroll_content&gt;section+section:before {
	display: block;
}

.u_scroll_content&gt;section&gt;section {
	margin-top: 4.2rem;
}

.u_scroll_content .u_no_border_section {
	--section-gap: 5rem;
}

.u_scroll_content .u_no_border_section:before {
	display: none;
}

.u_scroll_content&gt;section&gt;section&gt;section {
	margin-top: 4rem;
}

.u_txt p {
	font-size: 1.5rem;
}

.u_txt :is(p, ul, ol)+ :is(p, ul, ol) {
	margin-top: 1rem;
}

.u_lv02_ttl {
	display: flex;
	flex-direction: column;
}

.u_lv02_ttl span {
	font-family: var(--font-en);
	color: var(--primary-green);
	font-size: 2.4rem;
	line-height: 1.2;
}

.u_lv02_ttl em {
	line-height: 1.4;
	font-weight: 700;
	font-size: 2rem;
	margin-top: 0.5rem;
}

.u_lv02_catch {
	font-weight: 700;
	line-height: 1.5;
	font-size: 1.6rem;
	margin-top: 1.5rem;
	letter-spacing: 0.002em;
}

.u_lv03_ttl {
	display: flex;
	flex-direction: column;
	margin-bottom: 1.5rem;
}

.u_lv03_ttl span {
	position: relative;
	font-family: var(--font-en);
	color: var(--primary-green);
	font-size: 1.5rem;
	line-height: 1.2;
	padding-left: 1.3rem;
}

.u_lv03_ttl span:before {
	content: '';
	display: block;
	position: absolute;
	top: 0.6rem;
	left: 0;
	width: 0.6rem;
	aspect-ratio: 1/1;
	z-index: 1;
	background: var(--primary-green);
	border-radius: 50%;
}

.u_lv03_ttl em {
	line-height: 1.4;
	font-weight: 700;
	font-size: 2rem;
	margin-top: 0.5rem;
}

.u_lv04_ttl {
	font-weight: 700;
	font-size: 1.6rem;
	margin-bottom: 1.5rem;
}

.u_lv05_ttl {
	font-weight: 700;
	font-size: 1.5rem;
	margin-bottom: 1.5rem;
}

.u_radius_img img {
	border-radius: 0.8rem;
}

.u_knowledge {
	padding: 1.5rem 0 1.3rem;
	background: #F1F9F8;
	border-radius: 0.8rem;
}

.u_knowledge_icon {
	width: 47%;
	aspect-ratio: 120/113;
	display: flex;
	align-items: center;
	margin-inline: auto;
}

.u_knowledge_ttl {
	margin-top: 1.2rem;
	text-align: center;
	font-weight: 700;
	font-size: 1.5rem;
}

.u_beta {
	border-radius: 0.8rem;
	background: #F1F9F8;
	padding: 1.5rem;
}

.u_beta_ttl {
	text-align: center;
	font-weight: 700;
	font-size: 1.6rem;
}

.u_beta02 {
	background: var(--sumi20);
	border-radius: 0.8rem;
	padding: 1.5rem;
}

.u_beta02 p {
	font-size: 1.5rem;
}

.u_point {}

.u_point li {
	padding: 1.2rem 0.5rem;
	text-align: center;
	font-weight: 700;
	font-size: 1.45rem;
	border-bottom: 1px solid #DCEDEB;
}

.u_btn_contact {
	--height: 10rem;
	box-shadow: 0px 0px 2.4rem -0.4rem rgba(0, 0, 0, 0.1);
	height: var(--height);
	border-radius: calc(var(--height) / 2);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	--icon-url: url(../images/icon_arrow03.svg);
	--icon-color: var(--primary-green);
	--icon-size: 3rem;
	position: relative;
	background: #fff;
}

.u_btn_contact:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 1.5rem;
	width: var(--icon-size);
	aspect-ratio: 1/1;
	-webkit-mask: var(--icon-url) center / 100% no-repeat;
	mask: var(--icon-url) center / 100% no-repeat;
	background: var(--icon-color);
	z-index: 1;
}

.u_btn_contact span {
	font-family: var(--font-en);
	color: var(--primary-green);
	font-size: 1.5rem;
}

.u_btn_contact em {
	margin-top: 0.2rem;
	font-weight: 700;
	font-size: 1.6rem;
}

.m_col:has(.u_feature) {
	counter-reset: feature-counter;
}

.u_feature {
	counter-increment: feature-counter;
}

.u_feature_ttl {
	padding-left: 2.5rem;
	position: relative;
	font-weight: 700;
	font-size: 1.6rem;
	margin-bottom: 1.5rem;
}

.u_feature_ttl:before {
	content: counter(feature-counter);
	position: absolute;
	top: 0.4rem;
	left: 0;
	width: 1.8rem;
	aspect-ratio: 1/1;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 1.5rem;
	font-family: var(--font-en);
	background: var(--primary-green);
	line-height: 1;
	font-weight: 400;
	border-radius: 50%;
}

.u_feature_body {
	display: grid;
	gap: 1.5rem 0;
}

.u_feature_img img {
	border-radius: 0.8rem;
}


.u_btn_school {
	box-shadow: 0px 0px 2.4rem -0.4rem rgba(0, 0, 0, 0.1);
	height: 10rem;
	border-radius: 1.6rem;
	text-decoration: none;
	--icon-url: url(../images/icon_arrow02.svg);
	--icon-color: var(--sumi80);
	--icon-size: 1.6rem;
	position: relative;
	color: var(--pink);
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 0 1.5rem;
	background: #fff;
}


.u_btn_school:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 1.5rem;
	width: var(--icon-size);
	aspect-ratio: 1/1;
	-webkit-mask: var(--icon-url) center / 100% no-repeat;
	mask: var(--icon-url) center / 100% no-repeat;
	background: var(--icon-color);
	z-index: 1;

}

.u_btn_school em {
	font-weight: 700;
	font-size: 1.4rem;
}

.u_btn_school span {
	margin-top: 0.7rem;
	height: 2.7rem;
}

.u_btn_school span img {
	width: auto;
	height: 100%;
}

.u_btn_school_instagram {
	color: var(--blue);
}

.m_col:has(.u_platform) {
	--gap-col: 1.5rem;
	--gap-row: 1.5rem;
}

.u_platform {}

.u_platform_ttl {
	margin-top: 0.5rem;
	font-size: 1.5rem;
}

.u_outline {
	border-radius: 1.6rem;
	box-shadow: 0px 0px 2.4rem -0.4rem rgba(0, 0, 0, 0.1);
	position: relative;
	--icon-url: url(../images/icon_arrow03.svg);
	--icon-color: var(--primary-green);
	--icon-size: 2.4rem;
	padding: 3rem 2.5rem 3.5rem;
	text-decoration: none;
}

.u_outline:before {
	content: '';
	display: block;
	position: absolute;
	bottom: 1rem;
	right: 1rem;
	width: var(--icon-size);
	aspect-ratio: 1/1;
	-webkit-mask: var(--icon-url) center / 100% no-repeat;
	mask: var(--icon-url) center / 100% no-repeat;
	background: var(--icon-color);
	z-index: 1;
}

.u_outline_ttl {
	display: flex;
	flex-direction: column;
}

.u_outline_ttl span {
	font-size: 2rem;
	line-height: 1.3;
	font-family: var(--font-en);
	color: var(--primary-green);
}

.u_outline_ttl em {
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.3;
	margin-top: 1.5rem;
}

.u_outline_txt {
	margin-top: 2rem;
	font-size: 1.5rem;
}

.u_guideline {
	counter-reset: guideline-counter;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.u_guideline li {
	counter-increment: guideline-counter;
	display: flex;
	flex-direction: column;
	justify-content: center;
	border-radius: 10rem;
	border: 1px solid var(--sumi20);
	padding: 4rem 3rem 2.4rem;
	position: relative;
}

.u_guideline li:before {
	content: '0'counter(guideline-counter);
	position: absolute;
	top: 1rem;
	left: 50%;
	width: 3rem;
	aspect-ratio: 1/1;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--primary-green);
	font-size: 2.1rem;
	font-family: var(--font-en);
	line-height: 1;
	transform: translateX(-50%);
}

.u_guideline li span {
	font-size: 1.7rem;
	font-weight: 500;
	line-height: 1.4;
	text-align: center;
}

.u_guideline li em {
	font-size: 1.5rem;
	margin-top: 0.4rem;
}

.u_catch01 {
	display: flex;
	flex-direction: column;
	gap: 0.6rem;
}

.u_catch01 span {
	color: var(--primary-green);
	font-weight: 800;
	font-family: var(--font-en);
	font-size: 2.7rem;
	line-height: 1.2;
}

.u_catch01 em {
	font-size: 2.3rem;
	font-weight: 700;
}

.u_ol {
	counter-reset: ol-counter;
}

.u_ol :is(ul, ol) {
	margin-top: 1rem;
}

.u_ol&gt;li {
	counter-increment: ol-counter;
	font-size: 1.5rem;
	position: relative;
	padding-left: 2.2rem;
}

.u_ol&gt;li+li {
	margin-top: 1rem;
}

.u_ol&gt;li:before {
	content: counter(ol-counter) '.';
	position: absolute;
	left: 0;
	top: 0rem;
}

.u_ol_brackets :is(ul, ol) {
	margin-top: 1rem;
}

.u_ol_brackets {
	counter-reset: ol-brackets-counter;
}

.u_ol_brackets&gt;li {
	counter-increment: ol-brackets-counter;
	font-size: 1.5rem;
	position: relative;
	padding-left: 2.2rem;
}

.u_ol_brackets&gt;li+li {
	margin-top: 1rem;
}

.u_ol_brackets&gt;li:before {
	content: '('counter(ol-brackets-counter) ')';
	position: absolute;
	left: 0;
	top: 0rem;
}

.u_ul {}

.u_ul li {
	position: relative;
	padding-left: 1.7rem;
}

.u_ul li:before {
	content: '';
	display: block;
	position: absolute;
	top: 1rem;
	left: 0.4rem;
	width: 0.4rem;
	aspect-ratio: 1/1;
	z-index: 1;
	border-radius: 50%;
	background: var(--sumi80);
}

.u_ul li+li {
	margin-top: 1rem;
}

.u_address {
	border: 1px solid var(--sumi40);
	padding: 1.7rem;
}

.u_address p {
	font-size: 1.5rem;
}

.u_address a {
	text-decoration: none;
}

.u_enactment {
	margin-top: 6rem;
	border-top: 1px solid var(--sumi40);
	text-align: right;
	padding-top: 3rem;
	font-size: 1.5rem;
}

/*++++++++++++++++++++++++++++
form
++++++++++++++++++++++++++++*/
.u_form {
	--font-size: max(16px, 1.6rem);
}

.u_form select,
.u_form textarea,
.u_form input[type="email"],
.u_form input[type="text"] {
	border: 1px solid var(--sumi60);
	font-size: var(--font-size);
	padding: 1rem;
	width: 100%;
	border-radius: 0.8rem;
}

.u_form select:focus,
.u_form textarea:focus,
.u_form input[type="email"]:focus,
.u_form input[type="text"]:focus {
	border-color: var(--sumi60);
}

.u_form textarea::placeholder,
.u_form input::placeholder {
	color: var(--sumi60);
}

.u_form textarea {
    resize: vertical;
}

.u_form_item {
	--color: var(--sumi60);
}

.u_form_item+.u_form_item {
	margin-top: 3.5rem;
}

.u_form_must {
	--color: var(--primary-green);
}

.u_form_item dt {
	display: flex;
	flex-direction: row;
	gap: 0.5rem 1rem;
	align-items: center;
	margin-bottom: 1rem;
}

.u_form_item dt span {
	background: var(--color);
	font-size: 1.2rem;
	font-weight: 700;
	color: #fff;
	height: 2.6rem;
	border-radius: 10rem;
	padding: 0.5rem 1.5rem;
	line-height: 1;
	display: flex;
	align-items: center;
}

.u_form_item dt em {
	font-size: 1.6rem;
	font-weight: 700;
	margin-top: 0;
}

.u_form_hosoku {
	font-weight: 500;
	margin-top: 0.5rem;
}

.u_form_confirm {
	width: fit-content;
	margin: 3rem auto 0;
	font-weight: 700;
}

.u_form_confirm span {
	font-weight: 700;
}

.u_form_confirm .error {
	margin-top: 0.5rem;
}

.u_form_privacy {}

.u_form_privacy a {
	text-decoration: none;
	--icon-url: url(../images/icon_arrow03.svg);
	--icon-color: var(--sumi80);
	--icon-size: 2.3rem;
	position: relative;
	padding: 0.4rem 2.2rem 0.4rem 0;
	font-weight: 500;
	font-size: 1.5rem;
	margin: 1rem auto 0;
	display: block;
	width: fit-content;
}

.u_form_privacy a:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: -0.5rem;
	width: var(--icon-size);
	aspect-ratio: 1/1;
	-webkit-mask: var(--icon-url) center / 100% no-repeat;
	mask: var(--icon-url) center / 100% no-repeat;
	background: var(--icon-color);
	z-index: 1;
	transform: translateY(-50%);
}

.u_form_privacy a:after {
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	z-index: 1;
	background: var(--sumi80);
}

.mwform-checkbox-field-text {
	position: relative;
	padding-left: 3rem;
}

.mwform-checkbox-field-text:before {
	content: '';
	display: block;
	position: absolute;
	top: 0.3rem;
	left: 0;
	width: 2rem;
	aspect-ratio: 1/1;
	z-index: 1;
	border-radius: 0.5rem;
	border: 1px solid var(--sumi60);
}

.mwform-checkbox-field-text:after {
	content: '';
	display: block;
	position: absolute;
	top: 0.4rem;
	left: 0.4rem;
	width: 2rem;
	aspect-ratio: 10/5;
	z-index: 2;
	rotate: -45deg;
	border-left: 3px solid var(--primary-green);
	border-bottom: 3px solid var(--primary-green);
	opacity: 0;
}

.mwform-checkbox-field label:has(input:checked) .mwform-checkbox-field-text:after {
	opacity: 1;
}

.u_form_btn_wrap {
	display: flex;
	justify-content: center;
	margin-top: 4rem;
	gap: 1rem;
}

.u_form_btn_wrap input {
	color: #fff;
	padding: 0.8rem 2.5rem 1rem 2.7rem;
	display: block;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.8rem;
	border-radius: 10rem;
	min-width: 14.6rem;
}

.u_form_btn_submit {
	background: var(--primary-green);
}

.u_form_btn_confirm {
	background: var(--primary-green);
}

.u_form_btn_back {
	background: var(--sumi60);
}

.u_form_btn:has(.u_form_btn_submit) {
	display: none;
}

.u_form_btn:empty {
	display: none;
}

.mw_wp_form_confirm .u_form_btn:has(.u_form_btn_submit) {
	display: block;
}

.mw_wp_form_confirm .u_form_hosoku {
	display: none;
}

.mw_wp_form_confirm .u_form_item dt {
	padding-top: 0;
}

.mw_wp_form_confirm .u_form_item  {
	padding: 3rem 0;
	border-top: 1px solid var(--sumi60);
}

.mw_wp_form_confirm .u_form_item + .u_form_item {
	margin-top: 0;
}

.mw_wp_form_confirm .u_form_item:last-of-type {
	border-bottom: 1px solid var(--sumi60);
}

.u_thanks_text p + p {
	margin-top: 1.3rem;
}

.u_tel {
	text-decoration: none;
	box-shadow: 0px 0px 1.2rem -0.4rem rgba(0, 0, 0, 0.2);
	display: flex;
	padding: 2rem 0;
	border-radius: 10rem;
	justify-content: center;
	font-family: var(--font-en);
	font-weight: 500;
	font-size: 2.3rem;
}

.u_contact_time {
	font-size: 1.5rem;
	width: fit-content;
	margin: 2rem auto;
}

.u_contact_time dl {
	display: flex;
	gap: 1rem 1.5rem;
}

.u_contact_time dl+dl {
	margin-top: 0.5rem;
}

.u_contact_time dt {
	font-weight: 700;
}

.u_contact_time dd {
	flex: 1;
}

.mw_wp_form .error {
	color: #eb6262 !important;
	font-weight: 400;
}

.u_table {}

.u_table :is(th, td) {
	font-size: 1.45rem;
	padding: 1.5rem 0;
	vertical-align: middle;
}

.u_table th {
	font-weight: 700;
	padding-right: 1rem;
	width: 12.4rem;
}

.u_table td {}

.u_table tr {
	border-top: 1px solid var(--sumi40);
}

.u_table tr:last-of-type {
	border-bottom: 1px solid var(--sumi40);
}

.u_data {
	margin-top: 2rem;
}

.u_data+.u_data {
	margin-top: 2rem;
}

.u_data dt {
	font-weight: 700;
	font-size: 1.5rem;
}

.u_data dd {
	font-size: 1.5rem;
}

.u_data dd p {}

.u_data dd p+p {
	margin-top: 1rem;
}</pre></body></html>