@charset "UTF-8";
/*--------------------------------------------------
**************************************************
  service_box
**************************************************
--------------------------------------------------*/
.service_box {
	margin-top: 32px;
}

.service_box .catch {
	text-align: center;
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1.6;
}

.service_box .step_section {
	margin-top: 57px;
	border: #DEDEDE 1px solid;
}

.service_box .step_item {
	padding: 24px 17px 32px;
	border-top: var(--color-light) 1px solid;
}

.step_section .step_list .step_item + .step_item {
	margin-top: 0;
}

.service_box .step_section .step_list .step_item .step_item_body {
	width: 100%;
	padding: 0;
}

.service_box .step_item_body h3 {
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.6;
	color: var(--color-accent-3);
}

.service_box .step_item_body h3 span {
	font-size: 1.4rem;
}

.service_box .step_item_body .text_1 {
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.88;
	color: var(--color-accent-3);
}

.service_box .step_item_body .text_2 {
	font-size: 1.4rem;
	line-height: 1.88;
}

.service_box .step_item_body .price {
	margin-top: 8px;
	padding-left: 20px;
	background: url(../imgs/other/triangle_1.svg) no-repeat left center / 10px;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1.6;
	color: var(--color-light);
}

.service_box .step_item_body .link_box {
	display: flex;
	gap: 16px;
	margin-top: 16px;
}

/* SP */
@media (max-width: 767px) {
	.service_box .catch {
		font-size: 1.8rem;
	}

	.service_box .step_section {
		margin-top: 32px;
	}

	.service_box .step_section_heading {
		font-size: 2.8rem;
	}

	.step_section .step_list {
		margin-top: 32px;
	}

	.service_box .step_item {
		padding-inline: 0;
	}

	.service_box .step_item_body h3 {
		font-size: 1.8rem;
	}

	.service_box .step_item_body .link_box {
		flex-direction: column;
		gap: 26px;
		margin-top: 20px;
	}
}


/*--------------------------------------------------
**************************************************
  ACCESS & CONTACT
**************************************************
--------------------------------------------------*/
.access_contact {
	margin-top: 120px;
	padding-top: 120px;
	border-top: var(--color-light) 1px solid;
}

.access_contact h2.en {
	text-align: center;
	font-family: "Inter", sans-serif;
	font-size: 4.5rem;
	font-weight: 800;
	line-height: 1;
}

.access_contact h2.ja {
	margin-top: 24px;
	text-align: center;
	font-size: 3.4rem;
	font-weight: 600;
	line-height: 1.4;
}

.access_contact .shop_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 30px;
	margin-top: 48px;
}

.access_contact .shop_list > li {
	width: min(100%, 545px);
	/* width: min(100%, 520px); */
	padding: 16px 24px;
	background: #FFFFFA;
	border: #DEDEDE 1px solid;
	border-radius: 8px;
}

.access_contact .shop_list .shop_name {
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.6;
	color: var(--color-accent-3);
}

.access_contact .shop_list .shop_address {
	margin-top: 5px;
	font-size: 1.4rem;
	line-height: 1.88;
	color: var(--color-accent-1);
}

.access_contact .shop_list .shop_access_notice {
	font-size: 1.2rem;
	line-height: 1.6;
}

.access_contact .shop_list .gmap {
	aspect-ratio: 497 / 290;
	width: 100%;
	margin-top: 16px;
}

.access_contact .shop_list .gmap iframe {
	width: 100%;
	height: 100%;
	border: 0;
}

.access_contact .shop_list .contact_list {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-top: 24px;
}

/* SP */
@media (max-width: 767px) {
	.access_contact {
		margin-top: 70px;
		padding-top: 70px;
	}

	.access_contact h2.ja {
		font-size: 3.0rem;
	}

	.access_contact .shop_list .gmap {
		aspect-ratio: 296 / 172;
	}

	.access_contact .shop_list .contact_list {
		flex-direction: column;
		align-items: stretch;
		gap: 8px;
		margin-top: 24px;
	}
}
