@charset "utf-8";

/*++++++++++++++++++++++++++++
l_mv
++++++++++++++++++++++++++++*/
.l_mv {
	position: relative;
	isolation: isolate;
	z-index: 1;
	padding-bottom: 4rem;
	padding-top: 6.5rem;
	background: url(../images/top/mv_bg_sp.jpg) center / cover no-repeat;
}

.l_mv:before {
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 36.5rem;
	z-index: -1;
	background: var(--dark_gray_02);
}

.l_mv_slider_item {
	position: relative;
	z-index: 1;
}

.l_mv_slider02 {
	/* margin-top: 6.5rem; */
}

.l_mv_catch {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 24rem;
	padding-left: 2rem;

	.txt01 {
		font-family: var(--font-min);
		color: var(--main-color);
		font-size: 1.5rem;
		letter-spacing: 0.12em;
		line-height: 1.8;
		font-weight: 500;
		color: var(--green_03);
		display: block;
	}

	.txt02 {
		font-family: var(--font-min);
		font-size: 2.4rem;
		letter-spacing: 0.12em;
		line-height: 1.8;
		font-weight: 500;
		display: block;
	}

	.txt03 {
		font-family: var(--font-en);
		color: var(--green_03);
		font-size: 1.4rem;
		letter-spacing: 0.12em;
		line-height: 1.8;
		font-weight: 700;
		display: block;
		margin-top: 1rem;
	}
}

.l_mv_img_slider_wrap {
	padding-left: 1rem;
	position: relative;
}

.l_mv_img {
	width: 100%;
	height: 24rem;
	margin-left: auto;
	aspect-ratio: auto;
	z-index: 1;
}

.l_mv_budges {
	position: absolute;
	z-index: 10;
	width: 21rem;
	height: 11rem;
	right: 1rem;
	bottom: 0;
}

.l_mv_budge {
	width: 11rem;
	z-index: 10;
	position: absolute;
	top: 0;
	left: 0;
}

.l_mv_budge02 {
	z-index: 9;
	left: auto;
	right: 0;
}

.l_mv .swiper-pagination {
	--progress: 1;
	--gap: 2rem;
	position: relative;
	display: flex;
	gap: var(--gap);
	margin: 2rem 0 0;
	width: fit-content;
	inset: auto;
	align-items: center;
	min-height: 0.8rem;
}

.l_mv .swiper-pagination span {
	width: 0.4rem;
	aspect-ratio: 1/1;
	height: auto;
	position: relative;
	transition: 0.5s;
	margin: 0 !important;
	background: none;
	opacity: 1;
	background: #fff;
	display: block;
}

.l_mv .swiper-pagination .swiper-pagination-bullet-active {
	width: 0.8rem;
}

.l_mv .swiper-pagination .swiper-pagination-bullet-active:before {
	content: '';
	display: block;
	position: absolute;
	top: 0.3rem;
	left: 100%;
	width: calc((1 - var(--progress)) * var(--gap));
	height: 1px;
	z-index: 1;
	background: #fff;
}

.l_mv_slider03 {
	margin-top: 4.5rem;
}

.l_mv_points {}

.l_mv_points {
	padding: 0 1rem 0 0;
	display: grid;
	gap: 0.5rem;

	li {
		position: relative;
		background: #fff;

		&:before {
			content: '';
			display: block;
			position: absolute;
			top: 50%;
			transform: translateY(-50%);
			left: 1rem;
			width: 5rem;
			height: 4.2rem;
			z-index: 1;
			background: var(--url) center / cover no-repeat;
		}
	}

	a {
		--icon-url: url(../images/icon_arrow.svg);
		--icon-color: var(--green_03);
		--icon-size: 1.2rem;
		--circle-size: 2rem;
		--circle-color: var(--lightgrey_01);
		display: flex;
		padding: 1rem 4.2rem 1rem 7.2rem;
		min-height: 7rem;
		font-family: var(--font-min);
		color: var(--green_03);
		font-size: 1.4rem;
		letter-spacing: 0.12em;
		line-height: 1.8;
		font-weight: 500;
		text-decoration: none;
		align-items: center;

		&:before {
			content: '';
			display: block;
			position: absolute;
			top: 50%;
			transform: translateY(-50%);
			right: 1.4rem;
			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: 2;
		}

		&:after {
			content: '';
			display: block;
			position: absolute;
			top: 50%;
			transform: translateY(-50%);
			right: 1rem;
			width: var(--circle-size);
			aspect-ratio: 1/1;
			z-index: 1;
			border-radius: 50%;
			background: var(--circle-color);
		}
	}
}

/*++++++++++++++++++++++++++++
t_reason
++++++++++++++++++++++++++++*/
.t_reason {
	position: relative;
	z-index: 10;
	background: var(--lightgrey_01);
	isolation: isolate;
}

.t_reason:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 20rem;
	z-index: -1;
	background: var(--dark_gray_02);
}

.t_reason:after {
	content: '';
	display: block;
	position: absolute;
	top: 20rem;
	left: 0;
	width: 100%;
	aspect-ratio: 750/1050;
	z-index: -1;
	background: url(../images/top/reason_bg01_sp.png) center / cover no-repeat;
}

.t_reason .inner {
	padding: 0 1rem;
}

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

.t_reason_en {
	position: absolute;
	width: 41.9rem;
	left: -2.4rem;
	z-index: -1;
	top: 0.4rem;
}

.t_reason_ttl {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	padding-right: 2.6rem;
}

.t_reason_ttl span {
	font-family: var(--font-min);
	font-size: 1.6rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
	color: #fff;
}

.t_reason_ttl picture {
	width: 17.8rem;
	margin-top: -1rem;
}

.t_reason_body {
	margin-top: 3.9rem;
}

.m_reason {}

.m_reason+.m_reason {
	margin-top: 4rem;
}

.m_reason_head {}

.m_reason_img {
	height: 14rem;
}

.m_reason_body {
	padding: 3rem 2rem;
	background: #fff;
	overflow: hidden;
}

.m_reason_num {}

.m_reason_num span {}

.m_reason_num em {}

.m_reason_ttl {
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid var(--main-font-color);
	border-bottom: 1px solid var(--main-font-color);
}

.m_reason_ttl .num {
	border-right: 1px solid var(--black_logo);
	width: 8.3rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 1.4rem 0 1rem 0.4rem;
}

.m_reason_ttl .num span {
	padding-left: 0.4rem;
	font-family: var(--font-en);
	color: var(--green_03);
	font-size: 1.2rem;
	line-height: 1;
	font-weight: 500;
	letter-spacing: 0.12em;
}

.m_reason_ttl .num em {
	font-family: var(--font-num);
	color: var(--green_03);
	font-size: 6.5rem;
	line-height: 1;
	letter-spacing: 0.04em;
	margin-top: -0.2em;
}

.m_reason_ttl .en {
	width: calc(100% - 8.3rem);
	display: flex;
	align-items: center;
	font-family: var(--font-en);
	color: var(--dark_gray_00);
	font-size: 1.3rem;
	line-height: 1.8;
	font-weight: 500;
	letter-spacing: 0.12em;
	padding-left: 1.5rem;
}

.m_reason_ttl .ja {
	width: 100%;
	border-top: 1px solid var(--black_logo);
	padding: 2rem 0 1.8rem;
	font-family: var(--font-min);
	color: var(--dark_gray_02);
	font-size: 1.8rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
}

.m_reason_ttl .ja span {
	color: var(--green_03);
}

.m_reason_content {
	margin-top: 3rem;
}

.m_reason_slider {
	overflow: visible;
	width: 26rem;
	margin: 0;
}

.swiper-wrapper {}

.m_reason .swiper-slide {
	height: auto;
}

.m_reason .swiper-pagination {
	position: relative;
	left: 0;
	bottom: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 1rem;
	--swiper-pagination-bullet-horizontal-gap: 0px;
	--swiper-pagination-bullet-vertical-gap: 0px;
	--swiper-pagination-bullet-size: 0.6rem;
	margin-top: 3rem;
}

.m_reason .swiper-pagination-bullet {
	aspect-ratio: 1/1;
	background: var(--green_03);
	opacity: 0.2 !important;
	transition: var(--default-transition);
}

.m_reason .swiper-pagination-bullet-active {
	opacity: 1 !important;
}

.m_reason_item {
	padding-bottom: 7.2rem;
	position: relative;
	text-decoration: none;
	display: block;
	height: 100%;
}

.m_reason_item_img {
	position: relative;
	height: 12rem;
	z-index: 1;
}

.m_reason_item_img .oft {
	z-index: 1;
}

.m_reason_item_budge {
	position: absolute;
	top: -2rem;
	right: 1rem;
	width: 10rem;
	z-index: 10;
}

.m_reason_item_txt {
	font-family: var(--font-min);
	font-size: 1.4rem;
	line-height: 1.8;
	font-weight: 500;
	margin-top: 1rem;
}

.m_reason_item_hosoku {
	font-family: var(--font-min);
	font-size: 1.2rem;
	line-height: 1.8;
	font-weight: 500;
	margin-top: 1rem;
	color: var(--green_03);
}

.m_reason_btn {}

.m_reason_btn {
	--icon-url: url(../images/icon_arrow.svg);
	--icon-color: var(--black_logo);
	--icon-size: 1rem;
	--circle-size: 1.8rem;
	--circle-color: transparent;
	--icon-right: 1.2rem;
	position: absolute;
	bottom: 0;
	left: 0;
	display: flex;
	align-items: center;
	text-align: left;
	text-decoration: none;
	width: 100%;
	color: var(--main-font-color);
	background: var(--lightgrey_01);
	font-size: 1.4rem;
	padding: 1.2rem 5rem 1.2rem 1.2rem;
	min-height: 5.2rem;
}

.m_reason_btn:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: calc(0.4rem + var(--icon-right));
	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: 2;
	transform: translateY(-50%);
}

.m_reason_btn:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: var(--icon-right);
	width: var(--circle-size);
	aspect-ratio: 1/1;
	z-index: 1;
	border-radius: 50%;
	background: var(--circle-color);
	transform: translateY(-50%);
	opacity: 0.3;
	border: 1px solid var(--main-font-color);
}

/*++++++++++++++++++++++++++++
t_wrap_txt
++++++++++++++++++++++++++++*/
.t_wrap_txt {
	overflow: hidden;
	width: 100%;
	white-space: nowrap;
	display: flex;
	position: relative;
	z-index: 5;
	margin-top: 2rem;
	padding-bottom: 1.9rem;
}

.t_wrap_txt ul:first-child {
	animation: flowing 550s -275s linear infinite;
}

.t_wrap_txt ul {
	animation: flowing2 550s linear infinite;
	margin: 0;
	padding: 0;
}

.t_wrap_txt ul li {
	font-size: 8rem;
	line-height: 1;
	font-family: var(--font-en);
	color: rgba(110, 113, 128, 0.3);
	display: inline-block;
	padding: 0 3rem;
	letter-spacing: 0.15em;
	font-weight: 500;
}

@keyframes flowing {
	0% {
		transform: translateX(100%);
	}

	to {
		transform: translateX(-100%);
	}
}

@keyframes flowing2 {
	0% {
		transform: translateX(0);
	}

	to {
		transform: translateX(-200%);
	}
}

/*++++++++++++++++++++++++++++
t_news
++++++++++++++++++++++++++++*/
.t_news {
	position: relative;
	isolation: isolate;
	padding: 5rem 0;
}

.t_news:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 9rem;
	height: 100%;
	z-index: 1;
	background: #DDDDE2;
}

.t_news_block {}

.t_news_ttl {
	display: flex;
	align-items: center;
	gap: 1.3rem;
}

.t_news_ttl span {
	font-family: var(--font-min);
	font-size: 2.2rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
}

.t_news_ttl em {
	font-family: var(--font-en);
	color: var(--green_03);
	font-size: 1.5rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 700;
}

.t_news_list {
	margin-top: 3rem;
}

.m_news {
	background: #fff;
	padding: 0 1.5rem;
}

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

.m_news_head {
	position: relative;
}

.m_news_head:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	width: 2.4rem;
	aspect-ratio: 1/1;
	z-index: 1;
	background: var(--lightgreen_00);
	border-radius: 50%;
	transform: translateY(-50%);
}

.m_news_ttl {
	padding: 1.5rem 4.2rem 1.5rem 0;
	font-family: var(--font-min);
	font-size: 1.5rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
	transition: var(--default-transition);
}

.m_news_ttl:before,
.m_news_ttl:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 0.6rem;
	width: 1.2rem;
	height: 1px;
	z-index: 2;
	background: var(--green_03);
	transition: var(--default-transition);
}

.m_news_ttl:after {
	transform: rotate(90deg);
}

.m_news.on {
	.m_news_ttl {
		color: var(--green_03);
	}

	.m_news_ttl:after {
		transform: rotate(0deg);
	}
}

.m_news_body {
	border-top: 1px solid var(--lightgrey_02);
	padding: 2rem 0;
	display: none;
}

.m_news_body p {
	font-size: 1.4rem;
}

.m_news_body p + p {
	margin-top: 2em;
}

/*++++++++++++++++++++++++++++
t_clinic
++++++++++++++++++++++++++++*/
.t_clinic {
	padding: 4rem 0 0;
}

.t_clinic .inner {}

.t_clinic_ttl {
	font-family: var(--font-en);
	color: var(--dark_gray_00);
	font-size: 1.7rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
}

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

.t_clinic_block:before {
	content: '';
	display: block;
	position: absolute;
	top: 2.8rem;
	left: 16.7rem;
	width: 85rem;
	height: 30rem;
	z-index: -1;
	box-shadow: 0.8rem 0px 1.4rem 0px rgba(208, 208, 214, 0.5) inset;
	filter: drop-shadow(-0.4rem -0.8rem 3.4rem rgba(255, 255, 255, 0.25));
	border-radius: 30rem;
}

.t_clinic_body {}

.t_clinic_body_top {}

.l_clinic_data {}

.l_clinic_data_table {}

.l_clinic_data_table {
	display: block;
	margin-top: 2rem;
}

.l_clinic_data_table :is(tbody, tr, th, td) {
	display: block;
}

.l_clinic_data_table tbody {
	display: grid;
	gap: 1.5rem;
}

.l_clinic_data_table th {
	font-family: var(--font-en);
	color: var(--green_03);
	font-size: 1.4rem;
	line-height: 1.8;
	font-weight: 500;
}

.l_clinic_data_table td {
	font-family: var(--font-min);
	font-size: 1.4rem;
	line-height: 1.6;
	font-weight: 500;
}

.l_clinic_data_table .m_map_link {
	--icon-color: var(--green_03);
	color: var(--green_03);
}

.l_clinic_time {
	padding: 1.5rem;
	background: #fff;
	margin: 2.6rem -1.5rem 0;
}

.l_clinic_time .m_timetable {
	--col-size: 9.9%;
	--tr-color: var(--green_03);
	--table-font-color: var(--green_03);
}

.l_clinic_time .m_timetable_hosoku {
	color: var(--green_03);
}

.t_clinic_body_bottom {}

.t_clinic_body_bottom_ttl {}

.t_clinic_body_bottom_ttl {
	position: relative;
	font-family: var(--font-min);
	color: var(--green_03);
	font-size: 1.5rem;
	line-height: 1.8;
	font-weight: 500;
	padding-left: 2rem;
	margin-bottom: 1.5rem;
}

.t_clinic_body_bottom_ttl:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 1rem;
	aspect-ratio: 1/1;
	z-index: 1;
	transform: translateY(-50%);
	border: 1px solid var(--green_03);
	border-radius: 50%;
}

.t_clinic_body_bottom {
	margin: 4rem -1.5rem 0;
}

.t_clinic_body_bottom_table {
	background: var(--lightgrey_02);
	padding: 1.5rem;
}

.t_clinic_body_bottom_hosoku {}

.t_clinic .m_table_scroll {
	overflow-x: auto;
	margin-left: 0;
	margin-right: 0;
	padding-bottom: 1.8rem;
}

.t_clinic .m_table_scroll:before {
	left: 0;
	line-height: 1.6;
	display: block;
	margin-bottom: 1.5rem;
}

.t_clinic .m_table_scroll .m_part_table {
	width: 111vw;
	border: 1px solid var(--dark_gray_01);
}

.t_clinic .m_table_scroll .m_part_table thead {
	background: var(--dark_gray_01);
}

.m_part_table {
	--col-size: 10.6%;
	background: #fff;
}

.t_clinic_body_bottom_hosoku {
	margin-top: 1.5rem;
}

.t_clinic_body_bottom_hosoku .m_part_table_hosoku {
	margin-top: 0;
}

.m_part_table_hosoku {
	margin-top: 1.5rem;
}

.t_clinic_img {
	width: 33.5rem;
	margin-top: 4rem;
	margin-left: -2.5rem;
	overflow: hidden;
	border-radius: 0 16rem 0 0;
}

.t_clinic_img .oft {
	height: 16rem;
}

/*++++++++++++++++++++++++++++
t_notes
++++++++++++++++++++++++++++*/
.t_notes {
	position: relative;
	isolation: isolate;
	padding: 5rem 0;
}

.t_notes:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 20rem;
	z-index: -1;
	background: url(../images/top/note_bg_sp.jpg) center / 100% no-repeat;
}

.t_notes_head {}

.t_notes_ttl {
	display: flex;
	align-items: center;
	gap: 0.9rem;
	color: #fff;
}

.t_notes_ttl span {
	font-family: var(--font-min);
	font-size: 2.2rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
}

.t_notes_ttl em {
	font-family: var(--font-en);
	font-size: 1.5rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 700;
}

.t_note_first {
	background: var(--dark_gray_01);
	text-decoration: none;
	margin-top: 3rem;
	display: block;
}

.t_note_first_head {
	position: relative;
}

.t_note_first_head figure {
	height: 10rem;
}

.t_note_first_head .off {
	position: relative;
	z-index: 10;
	transition: var(--default-transition);
}

.t_note_first_head .on {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	z-index: 1;
	opacity: 0;
	transition: var(--default-transition);
}

.t_note_first_body {
	padding: 1.5rem;
	background: var(--dark_gray_01);
}

.t_note_first_ttl {
	display: flex;
	flex-direction: column;
	color: #fff;
}

.t_note_first_ttl span {
	font-family: var(--font-min);
	font-size: 1.7rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
}

.t_note_first_ttl em {
	font-family: var(--font-en);
	font-size: 1.5rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 700;
}

.t_note_first_more {
	--icon-url: url(../images/icon_arrow.svg);
	--icon-color: #fff;
	--icon-size: 1rem;
	--circle-size: 2.6rem;
	--circle-color: rgba(255, 255, 255, 0.15);
	font-weight: 500;
	position: relative;
	display: block;
	text-decoration: none;
	width: fit-content;
	color: #fff;
	font-size: 1.4rem;
	line-height: 1.8;
	letter-spacing: 0.12em;
	padding-left: 3.4rem;
	margin-left: auto;
	font-family: var(--font-num);
}

.t_note_first_more:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 0.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: 2;
	transform: translateY(-50%);
}

.t_note_first_more:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: var(--circle-size);
	aspect-ratio: 1/1;
	z-index: 1;
	border-radius: 50%;
	background: var(--circle-color);
	transform: translateY(-50%);
}

.t_notes_body {
	margin-top: 3rem;
}

.m_note {
	background: #fff;
	padding: 0 1.5rem;
}

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

.m_note_head {
	position: relative;
}

.m_note_head:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	width: 2.4rem;
	aspect-ratio: 1/1;
	z-index: 1;
	background: var(--lightgreen_00);
	border-radius: 50%;
	transform: translateY(-50%);
}

.m_note_ttl {
	padding: 1rem 4.4rem 0.9rem 0;
	font-family: var(--font-min);
	font-size: 1.5rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
	transition: var(--default-transition);
}

.m_note_ttl:before,
.m_note_ttl:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 0.6rem;
	width: 1.2rem;
	height: 1px;
	z-index: 2;
	background: var(--green_03);
	transition: var(--default-transition);
}

.m_note_ttl:after {
	transform: rotate(90deg);
}

.m_note.on {
	.m_note_ttl {
		color: var(--green_03);
	}

	.m_note_ttl:after {
		transform: rotate(0deg);
	}
}

.m_note_body {
	border-top: 1px solid var(--lightgrey_02);
	padding: 2rem 0;
	display: none;
}

.m_note_box+.m_note_box {
	margin: 3rem 0 0;
}

.m_note_box p {
	font-size: 1.4rem;
}

.m_note_box_ttl {
	font-family: var(--font-min);
	font-size: 1.5rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
	color: #fff;
	padding: 0.3rem 1rem;
	background: var(--green_03);
	border-radius: 0.4rem;
	margin-bottom: 1.5rem;
	width: fit-content;
}

.m_note_col {
	display: grid;
	gap: 2rem;
	margin-top: 2rem;
}

.m_note_col_box {
	padding: 2rem;
	background: var(--lightgreen_00);
}

.m_note_box .m_note_col_box p {
	color: var(--green_03);
	line-height: 1.8;
}

.m_note_box .m_note_col_box .en {
	letter-spacing: 0.04em;
}

/*++++++++++++++++++++++++++++
t_menu
++++++++++++++++++++++++++++*/
.t_menu {}

.t_menu_mv {
	height: 20rem;
}

.t_menu_head {
	position: relative;
	padding-top: 5rem;
	isolation: isolate;
	height: 18.7rem;
	z-index: 10;
}

.t_menu_head:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 9rem;
	height: 100%;
	z-index: -1;
	background: url(../images/top/menu_bg02_sp.jpg) center / cover no-repeat;
}

.t_menu_ttl {
	position: relative;
	z-index: 10;
	display: flex;
	text-align: center;
	align-items: center;
	flex-direction: column;
	padding-bottom: 2rem;
}

.t_menu_ttl span {
	font-family: var(--font-min);
	font-size: 2.2rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
}

.t_menu_ttl em {
	font-family: var(--font-en);
	color: var(--green_03);
	font-size: 1.5rem;
	line-height: 1.8;
	font-weight: 500;
	letter-spacing: 0.12em;
	margin-top: 1rem;
}

.t_menu_ttl:before {
	content: '';
	display: block;
	position: absolute;
	top: 100%;
	left: 50%;
	width: 1px;
	height: 8rem;
	z-index: 1;
	background: var(--green_03);
}

.t_scope {
	background: var(--dark_gray_02);
	position: relative;
	isolation: isolate;
	z-index: 9;
	overflow: hidden;
}

.t_scope:before {
	content: '';
	display: block;
	position: absolute;
	top: -24rem;
	left: -13rem;
	width: 30rem;
	height: 50rem;
	z-index: -1;
	box-shadow: 0px -0.8rem 1.4rem 0px rgba(19, 20, 27, 0.25) inset;
	border-radius: 30rem;
}

.t_scope:after {
	content: '';
	display: block;
	position: absolute;
	top: 6rem;
	left: 22.5rem;
	width: 15rem;
	aspect-ratio: 300/960;
	z-index: -1;
	background: url(../images/top/menu_bg03_sp.png) center / 100% no-repeat;
	border-radius: 30rem 0 0 0;
}

.t_scope_head {
	padding-top: 5rem;
}

.t_scope_ttl {
	position: relative;
	z-index: 10;
	display: flex;
	text-align: center;
	align-items: flex-start;
	flex-direction: column;
	padding-bottom: 2rem;
}

.t_scope_ttl span {
	font-family: var(--font-min);
	font-size: 2.4rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
	color: #fff;
}

.t_scope_ttl em {
	font-family: var(--font-min);
	font-size: 1.4rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
	color: #fff;
	padding: 0.2rem 1rem;
	border-radius: 0.5rem;
	background: var(--dark_gray_00);
	margin-top: 1rem;
}

.t_scope_txt {
	font-size: 1.4rem;
	margin-top: 1rem;
	color: #fff;
}

.t_scope_body {
	margin-top: 5rem;
	padding-bottom: 5rem;
}

.t_scope_body .inner {
	padding: 0 1rem;
}

.t_scope_item {
	padding: 2rem;
	position: relative;
	isolation: isolate;
}

.t_scope_item:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	height: 100%;
	z-index: -1;
	background: #fff;
}

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

.t_scope_item_ttl {
	position: relative;
	padding-top: 9.4rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	isolation: isolate;
}

.t_scope_item_ttl:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 50%;
	width: 8.4rem;
	aspect-ratio: 1/1;
	z-index: -2;
	transform: translateX(-50%);
	background: var(--lightgrey_01);
}

.t_scope_item_ttl:after {
	content: '';
	display: block;
	position: absolute;
	top: 1.5rem;
	left: 50%;
	width: 5.4rem;
	aspect-ratio: 1/1;
	z-index: -1;
	transform: translateX(-50%);
	-webkit-mask: var(--url) center / 100% no-repeat;
	mask: var(--url) center / 100% no-repeat;
	background: var(--green_03);
}

.t_scope_item_ttl span {
	font-family: var(--font-min);
	font-size: 2rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
}

.t_scope_item_ttl em {
	font-family: var(--font-en);
	color: var(--green_03);
	font-size: 1.5rem;
	line-height: 1.8;
	font-weight: 500;
	letter-spacing: 0.12em;
}

.t_scope_item_list {
	margin-top: 2rem;
}

.t_scope_item_list a {}

.t_scope_item_list a {
	--icon-url: url(../images/icon_arrow.svg);
	--icon-color: var(--main-font-color);
	--icon-size: 1rem;
	--circle-size: 1.8rem;
	text-decoration: none;
	position: relative;
	display: block;
	border-bottom: 1px solid rgba(49, 49, 55, 0.3);
	text-decoration: none;
	width: 100%;
	font-size: 1.4rem;
	padding: 1.1rem 3.8rem 1.2rem 0;
}

.t_scope_item_list a:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 0.4rem;
	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: 2;
	transform: translateY(-50%);
}

.t_scope_item_list a:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	width: var(--circle-size);
	aspect-ratio: 1/1;
	z-index: 1;
	border-radius: 50%;
	border: 1px solid var(--main-font-color);
	transform: translateY(-50%);
}

.t_scope_item_menus {
	position: relative;
	margin-top: 4rem;
	display: grid;
	gap: 1rem;

	.item {
		position: relative;
		isolation: isolate;
		--icon-url: url(../images/icon_arrow.svg);
		--icon-color: #fff;
		--icon-size: 1rem;
		--circle-size: 1.8rem;
		background: #14151B;
		min-height: 10rem;
		text-decoration: none;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		overflow: hidden;

		&:before {
			content: '';
			display: block;
			position: absolute;
			bottom: 1.4rem;
			right: 1.4rem;
			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: 2;
		}

		&:after {
			content: '';
			display: block;
			position: absolute;
			bottom: 1rem;
			right: 1rem;
			width: var(--circle-size);
			aspect-ratio: 1/1;
			z-index: 1;
			border-radius: 50%;
			background: rgba(255, 255, 255, 0.2);
		}
	}

	.img {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		z-index: -1;
		height: 100%;
		width: 101%;
		transition: var(--default-transition);
		opacity: 0.6;

		img {
			top: 50%;
			left: 50%;
			transform: translate(-50%, -50%);
		}
	}

	.ttl {
		filter: drop-shadow(0px 0px 3rem rgba(0, 0, 0, 0.6));
		font-family: var(--font-min);
		font-size: 1.5rem;
		letter-spacing: 0.12em;
		line-height: 1.8;
		font-weight: 500;
		color: #fff;
	}
}

.t_scope_item_eirl {
	background: #E8F4F5 url(../images/top/colon_eirl01_sp.jpg) center top / 100% no-repeat;
	padding: 12.2rem 2rem 2rem;
	position: relative;
	margin-top: 4rem;
	border: 1px solid var(--green_03);

	.budge {
		content: '';
		display: block;
		position: absolute;
		top: -1.8rem;
		right: 1.2rem;
		width: 10rem;
		z-index: 1;
	}

	.txt01 {
		font-family: var(--font-min);
		color: var(--green_03);
		font-size: 1.7rem;
		letter-spacing: 0.12em;
		line-height: 1.8;
		font-weight: 500;
	}

	.txt02 {
		font-size: 1.4rem;
		margin-top: 1rem;
	}

	.btn {
		--icon-url: url(../images/icon_arrow.svg);
		--icon-color: #fff;
		--icon-size: 1rem;
		--circle-size: 1.8rem;
		--circle-color: rgba(255, 255, 255, 0.15);
		--icon-right: 1.3rem;
		position: relative;
		display: flex;
		align-items: center;
		text-align: left;
		justify-content: flex-start;
		text-decoration: none;
		width: 100%;
		color: #fff;
		background: var(--green_03);
		font-size: 1.4rem;
		padding: 1.3rem 5.1rem 1.3rem 1.3rem;
		min-height: 5.4rem;
		margin: 2rem 0 0;
		border-radius: 0.5rem;
	}

	.btn:before {
		content: '';
		display: block;
		position: absolute;
		top: 50%;
		right: calc(0.4rem + var(--icon-right));
		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: 2;
		transform: translateY(-50%);
	}

	.btn:after {
		content: '';
		display: block;
		position: absolute;
		top: 50%;
		right: var(--icon-right);
		width: var(--circle-size);
		aspect-ratio: 1/1;
		z-index: 1;
		border-radius: 50%;
		background: var(--circle-color);
		transform: translateY(-50%);
		border: 1px solid #fff;
	}
}

/*++++++++++++++++++++++++++++
t_treatment
++++++++++++++++++++++++++++*/
.t_treatment {
	position: relative;
	padding: 5rem 0;
	isolation: isolate;
	overflow: hidden;
	margin-top: 0;
}

.t_treatment:before {
    content: '';
    display: block;
    position: absolute;
    top: -24rem;
    left: -13rem;
    width: 30rem;
    height: 50rem;
    z-index: -1;
    box-shadow: 0px -0.8rem 1.4rem 0px rgba(208, 208, 214, 0.5) inset;
    filter: drop-shadow(-0.4rem 0.8rem 3.4rem rgba(255, 255, 255, 0.25));
    border-radius: 30rem;
}

.t_treatment:after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 9rem;
	height: 100%;
	z-index: -1;
	background: url(../images/top/treatment_bg01_sp.jpg) center / 100% no-repeat;
}

.t_treatment .inner {
	position: static;
}

.t_treatment .inner:before {
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 9rem;
	aspect-ratio: 180/488;
	z-index: -1;
	background: url(../images/top/treatment_bg02_sp.jpg) center / 100% no-repeat;
}

.t_treatment_item {}

.t_treatment_item+.t_treatment_item {
	margin-top: 8rem;
}

.t_treatment_item_head {}

.t_treatment_item_img {
	position: relative;
	--img-gap: 1.5rem;

	&:before {
		content: '';
		display: block;
		position: absolute;
		top: var(--img-gap);
		left: var(--img-gap);
		width: 100%;
		height: 100%;
		z-index: 1;
		background: rgba(80, 83, 98, 0.08);
	}

	img {
		position: relative;
		display: block;
		z-index: 10;
	}

	.t_treatment_item:nth-of-type(2n) &:before {
		right: var(--img-gap);
		left: auto;
	}
}

.t_treatment_item_body {
	margin-top: 4rem;
}

.t_treatment_item_ttl {
	font-family: var(--font-min);
	font-size: 2.4rem;
	line-height: 1.8;
	font-weight: 500;
}

.t_treatment_item_txt {
	margin-top: 2rem;
	font-size: 1.4rem;
}

.t_treatment_item_btns {
	display: grid;
	margin-top: 3rem;
	gap: 0.5rem;
}

.t_treatment_item_btn {
	position: relative;
	--gap: 0.6rem;
	background: #fff;
}

.t_treatment_item_btn:before,
.t_treatment_item_btn:after,
.t_treatment_item_btn p:before,
.t_treatment_item_btn p:after {
	content: '';
	display: block;
	position: absolute;
	width: 1.4rem;
	aspect-ratio: 1/1;
	border-top: 1px solid var(--lightgrey_02);
	border-left: 1px solid var(--lightgrey_02);
	z-index: 1;
}

.t_treatment_item_btn:before {
	top: var(--gap);
	left: var(--gap);
}

.t_treatment_item_btn:after {
	left: var(--gap);
	bottom: var(--gap);
	rotate: -90deg;
}

.t_treatment_item_btn p:before {
	right: var(--gap);
	top: var(--gap);
	rotate: 90deg;
}

.t_treatment_item_btn p:after {
	right: var(--gap);
	bottom: var(--gap);
	rotate: 180deg;
}

.t_treatment_item_btn a {
	--icon-url: url(../images/icon_arrow.svg);
	--icon-color: var(--green_03);
	--icon-size: 1rem;
	--circle-size: 1.8rem;
	--circle-color: var(--lightgrey_01);
	--icon-right: 2rem;
	text-decoration: none;
	display: flex;
	align-items: center;
	padding: 0.7rem 5.3rem 0.7rem 7.1rem;
	min-height: 7rem;
	font-family: var(--font-min);
	color: var(--green_03);
	font-size: 1.8rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
}

.t_treatment_item_btn a:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: calc(0.4rem + var(--icon-right));
	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: 2;
	transform: translateY(-50%);
}

.t_treatment_item_btn a:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: var(--icon-right);
	width: var(--circle-size);
	aspect-ratio: 1/1;
	z-index: 1;
	border-radius: 50%;
	background: var(--circle-color);
	transform: translateY(-50%);
}

.t_treatment_item_btn a em {
	font-size: 1.3rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
}

.t_treatment_item_btn a span {
	display: flex;
	flex-direction: column;
}

.t_treatment_item_btn a span:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 2rem;
	width: 3.6rem;
	aspect-ratio: 1/1;
	-webkit-mask: var(--url) center / 100% no-repeat;
	mask: var(--url) center / 100% no-repeat;
	background: var(--green_03);
	z-index: 1;
	transform: translateY(-50%);
}

/*++++++++++++++++++++++++++++
t_trouble
++++++++++++++++++++++++++++*/
.t_trouble {
	background: url(../images/top/trouble_bg_sp.jpg) center top / cover no-repeat;
	padding: 5rem 0 4.2rem;
}

.t_trouble .inner {
	padding: 0 0.7rem;
}

.t_trouble_ttl {
	display: flex;
	flex-direction: column;
	align-items: center;
	color: #fff;
}

.t_trouble_ttl span {
	font-family: var(--font-min);
	font-size: 2.2rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
}

.t_trouble_ttl em {
	font-family: var(--font-num);
	font-size: 1.5rem;
	line-height: 1.8;
	font-weight: 700;
	letter-spacing: 0.12em;
	margin-top: 1rem;
}

.t_trouble_block {
	border: 0.8rem solid rgba(255, 255, 255, 0.3);
	padding: 2.4rem 1.5rem 2rem;
	margin-top: 2.2rem;
}

.t_trouble_tabs_btns {
	display: flex;
	justify-content: center;
	position: relative;
	align-items: flex-end;
}

.t_trouble_tabs_btns:after,
.t_trouble_tabs_btns:before {
	content: '';
	display: block;
	width: 1rem;
	height: 2px;
	z-index: 1;
	background: #fff;
}

.t_trouble_tabs_btn {
	transition: var(--default-transition);
	border-radius: 1rem 1rem 0 0;
	border-top: 0.8rem solid transparent;
	border-bottom: 2px solid #fff;
	flex: 1;
	padding: 0.2rem 0 1rem;
	font-family: var(--font-min);
	color: #fff;
	font-size: 1.5rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
	text-align: center;
	position: relative;
	z-index: 10;

	&:before,
	&:after {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		width: 1px;
		height: calc(100% + 2px);
		z-index: 1;
		transition: var(--default-transition);
		background: transparent;
	}

	&:before {
		left: 0;
	}

	&:after {
		right: 0;
	}

	&.on {
		border-color: #fff;
		border-bottom-color: transparent;

		&:before,
		&:after {
			background: #fff;
		}
	}
}

.t_trouble_body {
	margin-top: 3rem;
}

.js_tabs_item {
	display: none !important;
}

.js_tabs_item.on {
	display: block !important;
}

.t_trouble_list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0.5rem;
}

.t_trouble_list a {
	--icon-url: url(../images/icon_arrow.svg);
	--icon-color: var(--green_03);
	--icon-size: 1rem;
	--circle-size: 1.8rem;
	--circle-color: var(--green_03);
	--icon-right: 1rem;
	text-decoration: none;
	color: var(--green_03);
	font-size: 1.4rem;
	line-height: 1.8;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 6rem;
	background: #fff;
	position: relative;
	padding-right: 2.1rem;
}

.t_trouble_list a:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: calc(0.4rem + var(--icon-right));
	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: 2;
	transform: translateY(-50%);
}

.t_trouble_list a:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: var(--icon-right);
	width: var(--circle-size);
	aspect-ratio: 1/1;
	z-index: 1;
	border-radius: 50%;
	border: 1px solid var(--circle-color);
	transform: translateY(-50%);
}

/*++++++++++++++++++++++++++++
t_slider
++++++++++++++++++++++++++++*/
.t_slider {
	display: flex;
	width: calc(100% + 5rem);
	overflow: hidden;
	position: relative;
	z-index: 10;
	margin: 0;
	--speed: 110s;
	--gap: 0rem;
	margin-left: -2.5rem;
}

.t_slider_item:first-child {
	-webkit-animation: loop var(--speed) calc(-1 * var(--speed) / 2) linear infinite;
	animation: loop var(--speed) calc(-1 * var(--speed) / 2) linear infinite;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	will-change: transform;
}

.t_slider_item {
	-webkit-animation: loop2 var(--speed) linear infinite;
	animation: loop2 var(--speed) linear infinite;
	display: flex;
	width: auto;
	gap: var(--gap);
	padding: 0 calc(var(--gap) / 2);
	height: 100%;
}

.t_slider_item figure {
	width: 30rem;
	overflow: hidden;
	aspect-ratio: 300/200;
}

.t_slider_item figure img {
	display: block;
	width: auto;
	height: 100%;
}

/*++++++++++++++++++++++++++++
t_greeting
++++++++++++++++++++++++++++*/
.t_greeting {
	padding: 5rem 0 0;
	position: relative;
	isolation: isolate;
	overflow: hidden;
}

.t_greeting:before {
	content: '';
	display: block;
	position: absolute;
	top: -24rem;
	left: -12rem;
	width: 30rem;
	height: 50rem;
	z-index: -1;
	box-shadow: 0.8rem 0px 1.4rem 0px rgba(208, 208, 214, 0.5) inset;
	filter: drop-shadow(-0.4rem -0.8rem 3.4rem rgba(255, 255, 255, 0.25));
	border-radius: 30rem;
	background: var(--lightgrey_01);
}

.t_greeting:after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 10rem;
	height: 100%;
	z-index: -1;
	background: url(../images/top/greeting_bg01_sp.jpg) center / cover no-repeat;
}

.t_greeting .inner {}

.t_greeting_block {
	position: relative;
}

.t_greeting_ttl {
	position: absolute;
	right: 0;
	top: 0.9rem;
	display: flex;
	flex-direction: row-reverse;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 0.3rem;
}

.t_greeting_ttl span {
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-family: var(--font-en);
	color: var(--green_03);
	font-size: 1.5rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
	border-left: 1px solid var(--green_03);
}

.t_greeting_ttl em {
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-family: var(--font-en);
	color: var(--green_03);
	font-size: 2.2rem;
	letter-spacing: 0.44em;
	line-height: 1.8;
	font-weight: 500;
}

.t_greeting_head {
	padding: 8rem 0 0 3.3rem;
}

.t_greeting_img {
	width: 20rem;
	display: block;
	position: relative;
}

.t_greeting_img:before {
	content: '';
	display: block;
	position: absolute;
	top: 3rem;
	right: 3rem;
	width: 100%;
	height: 100%;
	z-index: 1;
	background: rgba(80, 83, 98, 0.08);
}

.t_greeting_img img {
	position: relative;
	z-index: 10;
}

.t_greeting_name {
	display: flex;
	flex-direction: column;
	padding-left: 2rem;
	border-left: 1px solid var(--green_03);
	margin-top: 2rem;
}

.t_greeting_name .pos {
	font-family: var(--font-min);
	color: var(--green_03);
	font-size: 1.4rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
}

.t_greeting_name .ja {
	font-family: var(--font-min);
	color: var(--green_03);
	font-size: 2.2rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
}

.t_greeting_name .en {
	font-family: var(--font-en);
	color: var(--green_03);
	font-size: 1.4rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 700;
}

.t_greeting_btn.sp_none {}

.t_greeting_body {}

.t_greeting_catch {
	margin-top: 4rem;
	position: relative;
	padding: 1.5rem 2.5rem;
	font-family: var(--font-min);
	color: var(--green_03);
	font-size: 2rem;
	line-height: 1.8;
	font-weight: 500;
}

.t_greeting_catch:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 4rem;
	aspect-ratio: 1/1;
	z-index: 1;
	background: url(../images/top/greeting_bracket_sp.svg) center / 100% no-repeat;
}

.t_greeting_catch:after {
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	right: 0;
	width: 4rem;
	aspect-ratio: 1/1;
	z-index: 1;
	background: url(../images/top/greeting_bracket_sp.svg) center / 100% no-repeat;
	rotate: 180deg;
}

.t_greeting_content {
	position: relative;
	isolation: isolate;
	z-index: 10;
	margin-top: 3rem;
	padding: 5rem 0 5rem 1.5rem;
}

.t_greeting_content:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: -2.5rem;
	width: calc(100% + 5rem);
	height: 100%;
	z-index: -1;
	background: #fff;
	border-radius: 12rem 0 0 0;
}

.t_greeting_txt {
	font-size: 1.4rem;
}

.t_greeting_btn {
	margin-top: 1rem;
}

/*++++++++++++++++++++++++++++
t_recruit
++++++++++++++++++++++++++++*/
.t_recruit {
	background: url(../images/top/recruit_bg01_sp.jpg) center / cover no-repeat;
	padding: 5rem 0;
}

.t_recruit .inner {}

.t_recruit_block {}

.t_recruit_ttl {
	font-family: var(--font-en);
	color: #fff;
	font-size: 6rem;
	letter-spacing: 0.3em;
	line-height: 1;
	width: 100vw;
	margin-left: -1.8rem;
	text-align: center;
	white-space: nowrap;
}

.t_recruit_catch {
	color: #fff;
	font-family: var(--font-min);
	font-size: 2rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
	margin-top: 1.5rem;
}

.t_recruit_imgs {
	display: flex;
	justify-content: center;
	margin-top: 2.5rem;
	gap: 1.1rem;
	align-items: flex-start;
}

.t_recruit_img {
	box-shadow: 0px 0px 1.4rem 0px rgba(0, 0, 0, 0.15);
	width: 14rem;
}

.t_recruit_img:nth-of-type(2) {
	margin-top: 2rem;
}

.t_recruit_txt {
	background: rgba(255, 255, 255, 0.9);
	padding: 2.5rem;
	font-size: 1.4rem;
	color: var(--green_03);
	margin-top: 2.5rem;
	margin: 2.5rem -1.5rem 0;
}

.t_recruit_btn {
	--bg-gutter: 0.5rem;
	position: relative;
	width: 32.5rem;
	margin: 2.1rem auto 0;
	isolation: isolate;
}

.t_recruit_btn:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	border: 1px solid #fff;
}

.t_recruit_btn:after {
	content: '';
	display: block;
	position: absolute;
	top: var(--bg-gutter);
	left: var(--bg-gutter);
	width: calc(100% - var(--bg-gutter) * 2);
	height: calc(100% - var(--bg-gutter) * 2);
	z-index: -1;
	background: #fff;
}

.t_recruit_btn a {
	--icon-url: url(../images/icon_arrow.svg);
	--icon-color: var(--green_03);
	--icon-size: 1.2rem;
	--circle-size: 2rem;
	--circle-color: var(--lightgrey_01);
	--icon-right: 2rem;
	text-decoration: none;
	display: flex;
	padding: 0 6rem 0 2rem;
	min-height: 6.4rem;
	align-items: center;
	font-family: var(--font-min);
	color: var(--green_03);
	font-size: 1.5rem;
	letter-spacing: 0.12em;
	line-height: 1.5;
	font-weight: 600;
}

.t_recruit_btn a:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: calc(0.4rem + var(--icon-right));
	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;
	z-index: 2;
	transform: translateY(-50%);
	background: var(--icon-color);
}

.t_recruit_btn a:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: var(--icon-right);
	width: var(--circle-size);
	aspect-ratio: 1/1;
	z-index: 1;
	border-radius: 50%;
	transform: translateY(-50%);
	background: var(--circle-color);
}

.t_recruit_btn a span {
	display: none;
}

/*++++++++++++++++++++++++++++
t_parallax01
++++++++++++++++++++++++++++*/
.t_parallax01 {
	-webkit-clip-path: inset(0);
	clip-path: inset(0);
	height: 20rem;
}

.t_parallax01 .oft {
	content: '';
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100lvh;
	z-index: -1;
}

/*++++++++++++++++++++++++++++
t_news02
++++++++++++++++++++++++++++*/
.t_news02 {
	position: relative;
	isolation: isolate;
	padding: 5rem 0;
}

.t_news02:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 9rem;
	height: 100%;
	z-index: 1;
	background: #DDDDE2;
}


.t_news02_block {
    outline:1px solid var(--lightgrey_02);
    outline-offset: -1rem;
    padding: 3rem;
    background: #fff;
    overflow: hidden;
}

.t_news02_head {
	position: relative;
	/* padding: 4rem 0; */
}

.t_news02_head_list {
	display: flex;
	flex-direction: column;
	gap: 3rem;
}

.t_news02_head_item {
	text-decoration: none;
	border-radius: 0;
	padding: 0;
	position: relative;
}

.t_news02_head_item_ttl {
	color: var(--green_03);
	font-family: var(--font-min);
	font-size: 1.5rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
	background: var(--lightgrey_01);
	padding: 0.8rem;
	text-align: center;
	margin-bottom: 1.5rem;
}

.t_news02_head_item_txt {

font-size: 1.4rem;
}

.t_news02_body {
	position: relative;
	padding: 0;
	margin-top: 3rem;
}

.t_news02_body_col {
	display: flex;
	flex-direction: column;
	gap: 4rem;
}

.t_news02_body_item {
	text-decoration: none;
}

.t_news02_body_item_ttl {
	font-family: var(--font-min);
	color: var(--green_03);
	font-size: 1.5rem;
	letter-spacing: 0.12em;
	line-height: 1.8;
	font-weight: 500;
	padding: 0.8rem;
	border-top: 1px solid var(--green_03);
	border-bottom: 1px solid var(--green_03);
	margin-bottom: 2rem;
	text-align: center;
}

.t_news02_body_item_list {
	display: grid;
	gap: 1rem;
}

.t_news02_body_item_list li {
	position: relative;
	padding-left: 2.2rem;
	padding: 0 0 1rem 2.5rem;
	border-bottom: 1px solid var(--lightgrey_02);
	font-size: 1.4rem;
}

.t_news02_body_item_list li:before {
	content: "";
	display: block;
	position: absolute;
	top: 1.15rem;
	left: 1rem;
	width: 0.5rem;
	aspect-ratio: 1/1;
	z-index: 1;
	border-radius: 50%;
	background: var(--green_03);
}

.t_news02_body_item_table :is(td, th) {
	font-size: 1.4rem;
	padding: 1rem 0;
	vertical-align: top;
}

.t_news02_body_item_table tr {
	border-top: 1px solid var(--lightgrey_02);
}

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

.t_news02_body_item_table th {
	width: 7rem;
	padding-right: 1rem;
	color: var(--green_03);
}