/* 20250806 各salonページ */
.anchor.faq {
	margin: 80px auto;
}

.anchor.faq ul {
	width: 990px;
	max-width: 100%;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 24px;
}

.anchor.faq a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 60px;
	border: solid 2px #02143a;
	border-radius: 30px;
	background: #fff;
	color: #02143a;
	letter-spacing: 0.64px;
	font-weight: bold;
	font-size: 16px;
	-webkit-transition: 0.3s;
	transition: 0.3s;
	text-decoration: none;
}

.anchor.faq a:after {
	position: absolute;
	top: calc(50% - 6.25px);
	right: 21px;
	display: block;
	width: 8.5px;
	height: 8.5px;
	border-right: solid 2px #02143a;
	border-bottom: solid 2px #02143a;
	content: '';
	transition: 0.3s;
	transform: rotate(45deg);
}

.anchor.faq a:hover {
	background: #02143a;
	color: #fff;
}

.anchor.faq a:hover:after {
	border-color: #fff;
}

.faq_title {
	margin: 0 auto 40px;
	padding: 0 0 24px;
	text-align: center;
	font-size: 28px;
	color: #02143a;
	position: relative;
}

.faq_title::after {
	content: '';
	width: 80px;
	height: 1px;
	margin: auto;
	background: #786523;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}

.faq_list {
	width: 1095px;
	max-width: 100%;
	margin: 0 auto 80px;
}

.faq_list_item {
	margin: 0 auto 24px;
}

.faq_list_item_que {
	padding: 24px 32px;
	background: #f2f2f2;
	display: flex;
	align-items: center;
	gap: 24px;
	transition: 0.2s;
	cursor: pointer;
}

.faq_list_item_que:hover {
	background: #e2e2e2;
}

.faq_list_item_que::before {
	content: 'Q';
	font-size: 32px;
	font-weight: bold;
	font-family: 'Oswald', serif;
	color: #02143a;
	display: block;
}

.faq_list_item_que_ico {
	width: 32px;
	height: 32px;
	margin-left: auto;
	color: #02143a;
	display: block;
	position: relative;
}

.faq_list_item_que_ico:before,
.faq_list_item_que_ico:after {
	content: '';
	width: 18px;
	height: 3px;
	margin: auto;
	background-color: currentColor;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

.faq_list_item_que_ico:after {
	background-color: currentColor;
	transform: rotate(90deg);
	transition: 0.3s;
}

.faq_list_item_ans {
	max-height: 0;
	margin-left: 32px;
	padding: 0 24px;
	box-sizing: content-box;
	display: none;
	align-items: center;
	gap: 24px;
	overflow: hidden;
	transition: 0.5s;
}

.faq_list_item_ans::before {
	content: 'A';
	font-size: 32px;
	font-weight: bold;
	font-family: 'Oswald', serif;
	color: #786523;
	display: block;
}

.faq_list_item_ans a {
	color: #1571da;
}

.faq_list_item.open .faq_list_item_que_ico:after {
	transform: rotate(0deg);
}

.faq_list_item.open .faq_list_item_ans {
	padding: 24px;
}

.single-salon-btn {
	margin: 20px 0;
	background: #02143a;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 344px;
	height: 50px;
	border-radius: 50px;
	font-weight: bold;
	font-size: 16px;
}

.single-salon-btn::after {
	position: absolute;
	top: calc(50% - 4.25px);
	right: 21px;
	display: block;
	width: 8.5px;
	height: 8.5px;
	border-right: solid 2px #fff;
	border-bottom: solid 2px #fff;
	content: '';
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

@media screen and (max-width: 767px) {
	.anchor.faq {
		margin: 32px auto 48px;
	}

	.faq_sec {
		padding: 0 20px;
	}

	.anchor.faq ul {
		padding: 0 20px;
		grid-template-columns: repeat(1, 1fr);
		gap: 16px;
	}

	.faq_title {
		margin: 0 auto 32px;
		font-size: 24px;
	}

	.faq_list {
		margin: 0 auto 48px;
	}

	.faq_list_item {
		margin: 0 auto 16px;
	}

	.faq_list_item_que {
		padding: 16px;
		gap: 16px;
	}

	.faq_list_item_que::before {
		font-size: 24px;
	}

	.faq_list_item_que_ico {
		width: 24px;
		min-width: 24px;
		height: 24px;
	}

	.faq_list_item_que_ico:before,
	.faq_list_item_que_ico:after {
		width: 14px;
		height: 2px;
	}

	.faq_list_item_ans {
		margin-left: 0;
		padding: 0 16px;
	}

	.faq_list_item.open .faq_list_item_ans {
		padding: 16px;
	}
}

.faq.c-btn_wrap-col2 {
	gap: 64px;
}

.faq.c-btn_wrap-col2 .c-btn-large {
	position: relative;
	width: 400px;
	height: 70px;
	border-radius: 50px;
	font-size: 20px;
	font-weight: 500;
}

.faq.c-btn_wrap-col2 .c-btn-green {
	background-color: #498503;
}

.faq.c-btn_wrap-col2 .c-btn-large::after {
	position: absolute;
	top: calc(50% - 5px);
	right: 21px;
	display: block;
	width: 10px;
	height: 10px;
	border-right: solid 2px #fff;
	border-bottom: solid 2px #fff;
	content: '';
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

@media print, screen and (max-width: 767px) {
	.faq.c-btn_wrap-col2 {
		gap: 30px;
	}

	.faq.c-btn_wrap-col2 .c-btn-large {
		max-width: 350px;
		height: 60px;
		font-size: 16px;
	}
}

.route_sec {
	padding-top: 120px;
	margin-bottom: 100px;
}

.route_steps {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 16px 32px;
	width: fit-content;
	margin-inline: auto;
}

.route_step {
	width: 240px;
}

.route_step_title {
	font-size: 20px;
	line-height: 1.3;
	font-weight: 900;
	color: #365190;
	text-align: center;
}

.route_step_img {
	display: block;
	margin-top: 8px;
}

.route_step_text {
	margin-top: 16px;
}

.route_step_text p {
	font-size: 16px;
	line-height: 1.7;
	color: #242424;
}

.stylist-container.--route {
	margin-bottom: 20px;
}

@media print, screen and (max-width: 767px) {
	.route_sec {
		margin-bottom: 60px;
	}

	.route_steps {
		display: block;
		width: fit-content;
		margin-inline: auto;
	}

	.route_step {
		width: 100%;
	}

	.route_step:nth-child(n + 2) {
		margin-top: 24px;
	}
}

/**
 * add 202509 salon page
*/
.footer_reservearea.show {
	display: none;
}

.salon_detail .s03,
.salon_detail .s04 {
	position: relative;
}

.salon_detail .s03 .c_ttl_1,
.salon_detail .s04 .c_ttl_1 {
	margin-bottom: 20px;
}

.salon_detail .s03 .c_ttl_1 .c_ttl_1-ja,
.salon_detail .s04 .c_ttl_1 .c_ttl_1-ja {
	margin: 0;
}

@media screen and (max-width: 768px) {
	.salon_detail .s04 .l-inner.have-line {
		padding: 70px 20px 40px;
	}
}

.salon_detail .c_ttl_1.bg01 {
	position: relative;
}

.salon_detail .c_ttl_1.bg01:before {
	content: '';
	width: 177px;
	height: 47px;
	background: url('../img/menu/no-01.png') no-repeat left center;
	position: absolute;
	left: 235px;
}

@media screen and (max-width: 768px) {
	.salon_detail .c_ttl_1.bg01:before {
		width: 128px;
		height: 38px;
		background: url('../img/menu/sp/no-01.png') no-repeat left center;
		left: -20px;
		top: -70px;
	}
}

.salon_detail .list01 {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-bottom: 70px;
}

@media screen and (max-width: 768px) {
	.salon_detail .list01 {
		display: inherit;
		margin-bottom: 50px;
	}
}

.salon_detail .list01 .item {
	max-width: 390px;
	width: 100%;
	margin: 0 0 20px;
	background: url('../img/menu/icon_01.svg') no-repeat right 20px center;
}

@media screen and (max-width: 768px) {
	.salon_detail .list01 .item {
		max-width: 100%;
		margin: 0 0 10px;
	}
}

.salon_detail .list01 .item:nth-child(2) {
	margin: 0 15px 15px;
}

@media screen and (max-width: 768px) {
	.salon_detail .list01 .item:nth-child(2) {
		margin: 0 0 10px;
	}
}

.salon_detail .list01 .item:nth-child(4) {
	margin: 0;
}

@media screen and (max-width: 768px) {
	.salon_detail .list01 .item:nth-child(4) {
		margin: 0 0 10px;
	}
}

.salon_detail .list01 .item:nth-child(5) {
	margin: 0 0 0 15px;
}

@media screen and (max-width: 768px) {
	.salon_detail .list01 .item:nth-child(5) {
		margin: 0;
	}
}

.salon_detail .list01 .item a {
	text-decoration: none;
}

.salon_detail .list01 .item .block01 {
	display: flex;
	align-items: center;
	border: 2px solid #02143a;
	border-radius: 50px;
	width: 100%;
	height: 60px;
}

@media screen and (max-width: 768px) {
	.salon_detail .list01 .item .block01 {
		height: auto;
		padding: 13px 0;
	}
}

.salon_detail .list01 .item .block01 p {
	font-size: 16px;
	color: #02143a;
	text-align: center;
	text-decoration: none;
	line-height: 20px;
	width: 100%;
}

.salon_detail .l-inner.have-line {
	background: #f2f2f2;
	padding: 40px 60px 55px;
	border-top: 5px solid #02143a;
	margin-bottom: 60px;
	max-width: 1200px;
}

@media screen and (max-width: 768px) {
	.salon_detail .l-inner.have-line {
		padding: 40px 20px;
	}
}

.salon_detail .menu_box01 {
	display: flex;
	justify-content: space-between;
	margin: 45px 0;
}

@media screen and (max-width: 768px) {
	.salon_detail .menu_box01 {
		display: inherit;
		margin: 25px 0;
	}
}

.salon_detail .menu_box01 .left {
	max-width: 525px;
	width: 100%;
}

@media screen and (max-width: 768px) {
	.salon_detail .menu_box01 .left {
		max-width: 100%;
		margin-bottom: 25px;
	}
}

.salon_detail .menu_box01 .right {
	max-width: 535px;
	width: 100%;
}

.salon_detail .menu_box01 .right .ttl01 {
	margin-bottom: 15px;
}

.salon_detail .menu_box01 .link01 {
	color: #1571da;
	font-size: 14px;
	text-align: right;
	width: 100%;
	display: block;
}

.salon_detail .tb01 {
	border: 1px solid #194689;
	margin-bottom: 10px;
}

.salon_detail .tb01 .item {
	display: flex;
}

@media screen and (max-width: 768px) {
	.salon_detail .tb01 .item {
		display: inherit;
	}
}

.salon_detail .tb01 .item .bottom,
.salon_detail .tb01 .item .top {
	padding: 10px;
}

.salon_detail .tb01 .item .top {
	background: #194689;
	border-bottom: 1px solid #fff;
	width: 252px;
}

@media screen and (max-width: 768px) {
	.salon_detail .tb01 .item .top {
		width: 100%;
		border: none;
	}
}

.salon_detail .tb01 .item .top p {
	color: #fff;
	font-size: 14px;
}

@media screen and (max-width: 768px) {
	.salon_detail .tb01 .item .top p {
		font-size: 13px;
	}
}

.salon_detail .tb01 .item .bottom {
	border-bottom: 1px solid #999999;
	background: #fff;
	width: 291px;
}

@media screen and (max-width: 768px) {
	.salon_detail .tb01 .item .bottom {
		width: 100%;
		border: none;
	}
}

.salon_detail .tb01 .item .bottom p {
	text-align: right;
	font-size: 14px;
	color: #333;
}

@media screen and (max-width: 768px) {
	.salon_detail .tb01 .item .bottom p {
		text-align: left;
	}
}

.salon_detail .tb01 .item .bottom .red {
	font-size: 18px;
	color: #c71d1d;
	font-weight: bold;
}

.salon_detail .tb01 .item .bottom .small {
	font-size: 14px;
}

.salon_detail .tb01 .item:last-child .bottom,
.salon_detail .tb01 .item:last-child .top {
	border: none;
}

.salon_detail .menu_box02 {
	padding: 30px;
	background: #fff;
	margin-top: 20px;
	margin-bottom: 40px;
}

@media screen and (max-width: 768px) {
	.salon_detail .menu_box02 {
		padding: 25px;
		margin-bottom: 30px;
	}
}

.salon_detail .menu_box02 .ttl01 {
	margin-bottom: 15px;
}

.salon_detail .pd01 {
	padding: 0 20px;
}

.salon_detail .menu_box03 {
	display: flex;
	justify-content: space-between;
}

@media screen and (max-width: 768px) {
	.salon_detail .menu_box03 {
		display: inherit;
	}
}

.salon_detail .menu_box03 .left,
.salon_detail .menu_box03 .right {
	max-width: 525px;
	width: 100%;
	padding: 35px;
	background: #fff;
}

@media screen and (max-width: 768px) {
	.salon_detail .menu_box03 .left,
	.salon_detail .menu_box03 .right {
		max-width: 100%;
		padding: 20px 15px;
	}
}

.salon_detail .menu_box03 .left .ttl01,
.salon_detail .menu_box03 .right .ttl01 {
	text-align: center;
	margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
	.salon_detail .menu_box03 .left .ttl01,
	.salon_detail .menu_box03 .right .ttl01 {
		margin-bottom: 20px;
	}
}

.salon_detail .menu_box03 .left .tb01,
.salon_detail .menu_box03 .right .tb01 {
	margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
	.salon_detail .menu_box03 .left {
		margin-bottom: 30px;
	}
}

.salon_detail .ttl01 {
	color: #333;
	font-size: 22px;
	font-weight: bold;
}

@media screen and (max-width: 768px) {
	.salon_detail .ttl01 {
		font-size: 20px;
	}
}

.salon_detail .menu_box04 {
	border: 2px solid #02143a;
	padding: 40px;
	display: flex;
	align-items: center;
	margin-bottom: 70px;
}

@media screen and (max-width: 768px) {
	.salon_detail .menu_box04 {
		display: inherit;
		margin-bottom: 40px;
		padding: 20px 10px;
	}
}

.salon_detail .menu_box04 .left {
	border-right: 1px solid #707070;
	padding: 5px 50px 5px 0;
	margin: 0 35px 0 0;
	width: 243px;
}

@media screen and (max-width: 768px) {
	.salon_detail .menu_box04 .left {
		border-right: 0;
		border-bottom: 1px solid #707070;
		padding: 0 0 20px;
		margin: 0 0 15px;
		width: 100%;
	}
}

.salon_detail .menu_box04 .left .ttl01 {
	background: url('../img/menu/icon_02.svg') no-repeat left center;
	padding-left: 30px;
}

@media screen and (max-width: 768px) {
	.salon_detail .menu_box04 .left .ttl01 {
		text-align: center;
		display: table;
		margin: 0 auto;
	}
}

@media screen and (max-width: 768px) {
	.salon_detail .menu_box04 .right .t02 {
		margin-bottom: 15px;
	}
}

.salon_detail .menu_box04 .right .t03 {
	font-size: 14px;
	padding-left: 15px;
	text-indent: -15px;
}

.salon_detail .link02 {
	color: #1571da;
}

/* 202404 */
.salon_detail .price_change {
	margin: 0 0 70px;
}
.salon_detail .price_change .emphasis {
	color: #c71d1d;
}
.salon_detail .price_change .bold {
	font-weight: bold;
}
.salon_detail .price_change .mt_15_30 {
	margin: 30px 0 0;
}
@media screen and (max-width: 768px) {
	.salon_detail .price_change {
		margin: 0 0 50px;
	}
	.salon_detail .price_change .mt_15_30 {
		margin: 15px 0 0;
	}
}

.kessai {
	width: 80%;
	margin: 0 auto 50px;
}
.kessai-txt {
	text-align: center;
}
.kessai-img-sp {
	display: none;
}

@media screen and (max-width: 768px) {
	.kessai {
		width: 90%;
	}
	.kessai-img {
		display: none;
	}
	.kessai-img-sp {
		display: block;
	}
	._blue {
		margin-top: 15px;
	}
}

.p-mv_ttl {
	color: #02143a;
	font-weight: 700;
	letter-spacing: 1px;
}
@media screen and (min-width: 768px) {
	.p-mv_ttl .p-mv_ttl-jp {
		font-size: 48px;
	}
	.p-mv_ttl .p-mv_ttl-en {
		font-size: 24px;
	}
}

.sp-only {
	display: block;
}
@media screen and (min-width: 768px) {
	.sp-only {
		display: none;
	}
}

.pc-only {
	display: none;
}
@media screen and (min-width: 768px) {
	.pc-only {
		display: block;
	}
}

.salon_detail {
	font-family: 'Noto Sans JP';
}
.salon_detail .p-bg-gray {
	background-color: #f2f2f2;
}
.salon_detail .pd01 {
	padding: 0;
}
@media screen and (min-width: 768px) {
	.salon_detail .section {
		padding-bottom: 35px;
	}
}
.salon_detail .c_txt_1 {
	font-size: 14px;
	line-height: 1.5;
	letter-spacing: 0.1px;
}
@media screen and (min-width: 768px) {
	.salon_detail .c_txt_1 {
		font-size: 16px;
	}
}
.salon_detail .l-menu-section {
	padding-block: 20px;
	margin-block: 40px;
}
@media screen and (min-width: 768px) {
	.salon_detail .l-menu-section {
		padding-block: 40px;
		margin-block: 80px;
	}
}
.salon_detail .l-menu-section .c_ttl_menu_h2 {
	color: #000;
	padding: 9px 0 5px 16px;
	font-size: 18px;
	margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
	.salon_detail .l-menu-section .c_ttl_menu_h2 {
		font-size: 1.5em;
		margin-bottom: 30px;
	}
}
.salon_detail .l-menu-section .u_ta_left {
	text-align: left;
}
@media screen and (min-width: 768px) {
	.salon_detail .l-menu-section .u_ta_left {
		text-align: center;
	}
}
.salon_detail .l-menu-section .ttl01 {
	font-size: 16px;
}
@media screen and (min-width: 768px) {
	.salon_detail .l-menu-section .ttl01 {
		font-size: 18px;
	}
}
.salon_detail .l-menu-section .menu_box02 {
	padding: 4px 10px;
}
@media screen and (min-width: 768px) {
	.salon_detail .l-menu-section .menu_box02 {
		padding: 10px 20px;
		font-weight: 500;
	}
}
.salon_detail .l-menu-section .menu_box02 .ttl01 {
	line-height: 200%;
	margin-bottom: 0;
}
.salon_detail .l-menu-section .menu_box02 .t02 {
	font-size: 14px;
}
@media screen and (min-width: 768px) {
	.salon_detail .l-menu-section .menu_box02 .t02 {
		font-size: 16px;
	}
}
@media screen and (min-width: 768px) {
	.salon_detail .l-menu-section .t02 {
		font-weight: 500;
	}
}
.salon_detail .l-menu-section .menu_box03 {
	margin-top: 30px;
}
@media screen and (min-width: 768px) {
	.salon_detail .l-menu-section .menu_box03 {
		margin-top: 64px;
	}
}
.salon_detail .l-menu-section .menu_box03:has(.p-menu_banner01) {
	margin-top: 0;
}
@media screen and (min-width: 768px) {
	.salon_detail .l-menu-section .p-reserve__card {
		margin-top: 30px;
	}
}
@media screen and (min-width: 768px) {
	.salon_detail .s05 {
		margin-bottom: 48px;
	}
}
.salon_detail .list01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 14px;
}
@media screen and (min-width: 768px) {
	.salon_detail .list01 {
		margin-bottom: 55px;
	}
}
.salon_detail .list01 .item {
	max-width: 320px;
	margin-bottom: 14px;
}
.salon_detail .list01 .item .block01 {
	padding: 10px 0;
}
@media screen and (min-width: 768px) {
	.salon_detail .list01 .item .block01 {
		height: auto;
	}
}
.salon_detail .list01 .item .block01 p {
	font-size: 14px;
}
@media screen and (min-width: 768px) {
	.salon_detail .list01 .item .block01 p {
		font-size: 16px;
	}
}
.salon_detail .list01 .item .block01 .u_p_r {
	padding-right: 30px;
}
@media screen and (min-width: 768px) {
	.salon_detail .list01 .item .block01 .u_p_r {
		font-size: 14px;
	}
}
.salon_detail .l-menu-inner {
	margin: 0 auto;
	padding-inline: 15px;
	max-width: 570px;
	width: 100%;
}
@media screen and (min-width: 768px) {
	.salon_detail .l-menu-inner {
		max-width: 1070px;
		padding-inline: 35px;
		width: 100%;
	}
}
@media screen and (min-width: 768px) {
	.salon_detail .l-menu-inner .kessai-txt {
		font-size: 18px;
		font-weight: 500;
	}
}
@media screen and (min-width: 768px) {
	.salon_detail .l-menu-inner .s06 {
		margin-top: 56px;
	}
}
.salon_detail .l-flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 33px;
}
.salon_detail .l-flex--column {
	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: 768px) {
	.salon_detail .l-flex--column {
		gap: 24px;
	}
}
.salon_detail .l-flex--start {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
}
.salon_detail .c_ttl_menu_h2 {
	padding-left: 20px;
	margin-bottom: 24px;
	border-bottom: 2px solid #02143a;
	border-left: 6px solid #02143a;
}
.salon_detail .no1 {
	background: #b39118;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	padding: 0px 10px;
	margin-left: 8px;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 3px;
	color: #fff;
	font-family: 'Noto Sans JP';
	font-weight: 500;
	line-height: 150%; /* 33px */
	font-size: 18px;
}
.salon_detail .no1 img {
	width: 20px;
	height: auto;
}
@media screen and (min-width: 768px) {
	.salon_detail .no1 {
		font-size: 22px;
		margin-left: 8px;
		padding: 0 20px;
	}
	.salon_detail .no1 img {
		width: 24px;
	}
}
.salon_detail .l-menu-wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 20px;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}
@media screen and (min-width: 768px) {
	.salon_detail .l-menu-wrapper {
		display: grid;
		grid-template-columns: 440px 100%;
	}
}
.salon_detail .menu_box01 {
	margin: 12px 0 0;
}
@media screen and (min-width: 768px) {
	.salon_detail .menu_box01 {
		margin: 22px 0 0;
	}
}
.salon_detail .menu_box01 .left {
	margin: 0;
}
.salon_detail .menu_box02 {
	grid-column: span 2 / span 2;
	grid-row-start: 3;
	margin: 0;
}
@media screen and (min-width: 768px) {
	.salon_detail .menu_box02 + .l-menu-wrapper {
		margin-top: 58px;
	}
}
.salon_detail .p-menu-img {
	width: 100%;
	height: auto;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	overflow: hidden;
	aspect-ratio: 305/185;
}
.salon_detail .p-menu-img img {
	width: 100%;
	height: auto;
	-o-object-fit: cover;
	object-fit: cover;
}
@media screen and (min-width: 768px) {
	.salon_detail .p-menu-img img {
		height: 100%;
	}
}

.salon_detail .p-menu_banner01 {
	aspect-ratio: 500/181;
}
@media screen and (min-width: 768px) {
	.salon_detail .p-menu_banner01 {
		margin-top: 21px;
	}
}
.salon_detail .l-menu-container {
	border: 1px solid #d9d9d9;
	width: 100%;
}
.salon_detail .p-menu-item.item {
	display: grid;
	grid-template-columns: 66% 34%;
	border-top: 1px solid #d9d9d9;
}
@media screen and (min-width: 768px) {
	.salon_detail .p-menu-item.item {
		grid-template-columns: 59.26% 40.74%;
	}
}
.salon_detail .p-menu-item.item:first-child {
	border-top: none;
}
.salon_detail .p-menu-item--small.item {
	display: grid;
	border-top: 1px solid #d9d9d9;
}
@media screen and (min-width: 768px) {
	.salon_detail .p-menu-item--small.item {
		grid-template-columns: 68% 32%;
		height: 50px;
	}
}
.salon_detail .p-menu-item--small.item:first-child {
	border-top: none;
}
.salon_detail .p-menu-top {
	background: #fff;
	color: #000;
	padding: 2px 9px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	line-height: 150%;
	font-size: 14px;
	letter-spacing: -0.1px;
}
.salon_detail .p-menu-top._small {
	font-size: 13px;
}
.salon_detail .p-menu-top span {
	font-size: 12px;
}
.salon_detail .p-menu-top span._small {
	font-size: 11px;
}

@media screen and (min-width: 768px) {
	.salon_detail .p-menu-top {
		text-align: left;
		padding: 12px 0 12px 10px;
		font-size: 16px;
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
	}
	.salon_detail .p-menu-top._small {
		font-size: 16px;
	}
	.salon_detail .p-menu-top span {
		font-size: 14px;
	}
	.salon_detail .p-menu-top span._small {
		font-size: 14px;
	}
}

.salon_detail .p-menu-bottom {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	background: #999;
	color: #fff;
	border-left: 1px solid #d9d9d9;
}
@media screen and (min-width: 768px) {
	.salon_detail .p-menu-bottom {
		padding-left: 10px;
	}
}
.salon_detail .p-menu-bottom:has(.p-menu-bottom__text--small) {
	padding: 6.5px 6px;
}
.salon_detail .p-menu-bottom__text {
	font-size: 16px;
	text-align: center;
	font-weight: 500;
	line-height: 150%; /* 36px */
}
@media screen and (min-width: 768px) {
	.salon_detail .p-menu-bottom__text {
		font-size: 24px;
	}
}
.salon_detail .p-menu-bottom__text .small {
	font-size: 9px;
	font-weight: 500;
	line-height: 150%;
}
.salon_detail .p-menu-bottom__text--small {
	font-size: 9px;
	letter-spacing: -0.3px;
	text-align: center;
}
@media screen and (min-width: 768px) {
	.salon_detail .p-menu-bottom__text--small {
		font-size: 12px;
	}
}
.salon_detail .p-menu-bottom__text--money {
	display: inline-block;
	font-size: 12px;
}
@media screen and (min-width: 768px) {
	.salon_detail .p-menu-bottom__text--money {
		display: inline;
		font-size: 16px;
	}
}
.salon_detail .p-menu-bottom__text--s-tax {
	font-size: 6px;
}
.salon_detail .c_link_2 {
	height: auto;
	padding: 9px;
}
.salon_detail .c_link_2._blue {
	margin-top: 0;
}
.salon_detail .l-menu_link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	margin-top: -10px;
}
.salon_detail .menu_link-01 {
	grid-column: span 2 / span 2;
	color: #000;
	text-decoration: none;
}
.salon_detail .l-menu_btns {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 14px;
	font-size: 14px;
}
@media screen and (min-width: 768px) {
	.salon_detail .l-menu_btns {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		gap: 32px;
		margin-top: 30px;
		font-size: 16px;
	}
}
.salon_detail .l-card-top .ttl01 {
	background: #000;
	font-size: 16px;
	color: #fff;
	text-align: center;
	padding: 3px 10px;
}
@media screen and (min-width: 768px) {
	.salon_detail .l-card-top .ttl01 {
		font-size: 18px;
	}
}
.salon_detail .l-card-top .p-menu-bottom__text {
	font-size: 16px;
}
@media screen and (min-width: 768px) {
	.salon_detail .l-card-top .p-menu-item--small:nth-of-type(3) {
		height: 80px;
	}
}
.salon_detail .l-card-top .card-img {
	height: auto;
}
.salon_detail .l-card-top .card-img img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
@media screen and (min-width: 768px) {
	.salon_detail .l-card-top {
		margin-bottom: 0;
	}
}
.salon_detail .p-card__tb {
	height: 100%;
	border: 1px solid #d9d9d9;
}
@media screen and (min-width: 768px) {
	.salon_detail .p-menu__option-wrapper .ttl01 {
		color: #fff;
		font-family: 'Noto Sans JP';
		font-size: 18px;
		font-style: normal;
		font-weight: 500;
		line-height: 150%; /* 27px */
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		height: 40px;
		padding: 0px 10px;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		gap: 10px;
		-ms-flex-item-align: stretch;
		align-self: stretch;
		background-color: #000;
	}
}
@media screen and (min-width: 768px) {
	.salon_detail .p-menu__option-wrapper {
		width: 54%;
	}
}
.salon_detail .p-menu__option-wrapper .p-card__tb {
	height: 100%;
}
@media screen and (min-width: 768px) {
	.salon_detail .p-menu__option-wrapper .p-card__tb {
		height: auto;
	}
}
.salon_detail .p-caution__container {
	display: grid;
	border: 2px solid #02143a;
	padding: 10px 9px;
	font-size: 14px;
	margin-bottom: 18px;
}
@media screen and (min-width: 768px) {
	.salon_detail .p-caution__container {
		padding: 16px;
		grid-template-columns: 194px auto;
		gap: 23px;
		margin-bottom: 30px;
		margin-top: 87px;
	}
}
.salon_detail .p-caution__container .right {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}
@media screen and (min-width: 768px) {
	.salon_detail .p-caution__container .right {
		padding-right: 20px;
	}
}
@media screen and (min-width: 768px) {
	.salon_detail .p-caution__container .t02 {
		font-size: 16px;
	}
}
.salon_detail .p-caution__text {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	border-bottom: 1px solid #000;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
	.salon_detail .p-caution__text {
		gap: 23px;
		border-right: 1px solid #000;
		border-bottom: none;
		padding-bottom: 0;
		margin-bottom: 0;
	}
}
.salon_detail .p-caution__text p {
	font-size: 18px;
	font-weight: bold;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 3px;
}
.salon_detail .p-menu__checklist {
	font-family: 'Noto Sans JP';
}
.salon_detail .p-menu__checklist .ttl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 10px;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 10px;
	-ms-flex-item-align: stretch;
	align-self: stretch;
	background: #02143a;
	color: #fff;
	font-family: Inter;
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}
@media screen and (min-width: 768px) {
	.salon_detail .p-menu__checklist .ttl {
		font-size: 20px;
	}
}
.salon_detail .p-menu__checklist .box {
	padding: 30px 10px 50px;
	border: 1px solid #02143a;
	background: #fff;
}
@media screen and (min-width: 768px) {
	.salon_detail .p-menu__checklist .box {
		padding-top: 27px;
		padding-bottom: 30px;
	}
}
.salon_detail .p-menu__checklist .lists {
	margin-bottom: 29px;
}
@media screen and (min-width: 768px) {
	.salon_detail .p-menu__checklist .lists {
		margin-bottom: 58px;
	}
}
.salon_detail .p-menu__checklist .list {
	max-width: 814px;
	margin-inline: auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 10px;
}
@media screen and (min-width: 768px) {
	.salon_detail .p-menu__checklist .list {
		gap: 17px 43px;
	}
}
.salon_detail .p-menu__checklist .item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 8px;
	font-size: 14px;
}
@media screen and (min-width: 768px) {
	.salon_detail .p-menu__checklist .item {
		font-size: 18px;
	}
}
.salon_detail .p-menu__checklist .txt {
	font-size: 14px;
}
@media screen and (min-width: 768px) {
	.salon_detail .p-menu__checklist .txt {
		font-size: 18px;
		line-height: 120%;
		text-align: center;
	}
}
.salon_detail .p-menu__checklist .txt + .txt {
	margin-top: 8px;
}
@media screen and (min-width: 768px) {
	.salon_detail .p-menu__checklist .txt + .txt {
		margin-top: 31px;
	}
	.salon_detail .p-menu__checklist .txt + .txt:last-of-type {
		margin-top: 6px;
	}
}

.salon_detail .c_link_2._white {
	background: #fff;
	color: #02143a;
	border: solid 2px #02143a;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.salon_detail .c_link_2._blue {
	background: #02143a;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.salon_detail .c_link_2._white._arrow:after {
	border-top: 2px solid #02143a;
	border-right: 2px solid #02143a;
}

.salon_detail strong {
	font-weight: 600;
}

.block01.u_color-gold {
	border: none !important;
	background: linear-gradient(109deg, #c9af5b 36.88%, #ece097 54.32%, #c9af5b 70.7%);
}
.salon_detail .flow-container {
	margin-block: 100px;
}
.salon_detail .step_list {
	margin: 0 0 70px;
}
.salon_detail .step_list > .item {
	position: relative;
	margin: 60px 0 0;
	padding: 0 0 60px;
	border-top: 5px solid #02143a;
	background: #f2f2f2;
}
.salon_detail .step_list > .item:nth-child(n + 2) {
	margin: 75px 0 0;
}
.salon_detail .step_list > .item:not(:last-child):after {
	position: absolute;
	bottom: -58px;
	left: calc(50% - 50px);
	width: 100px;
	height: 77px;
	background: url(../img/flow/arrow-2.png) no-repeat center/cover;
	content: '';
}
.salon_detail .step_list .box .txt {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding: 0;
}
.salon_detail .step_list .box .txt .txt_2 {
	margin: 0;
	line-height: 28.8px;
}
.salon_detail .marker {
	background-image: linear-gradient(to top, #fcdb00, #fcdb00 5px, transparent 5px, transparent);
	background-position: bottom;
	background-repeat: no-repeat;
	display: inline;
	z-index: auto;
}

@media screen and (max-width: 767px) {
	.salon_detail .step_list {
		margin: 0 0 40px;
	}

	.salon_detail .step_list > .item {
		margin: 50px 0 0;
		padding: 0 0 50px;
	}

	.salon_detail .step_list > .item:nth-child(n + 2) {
		margin: 58px 0 0;
	}

	.salon_detail .step_list > .item:not(:last-child):after {
		bottom: -47px;
		left: calc(50% - 40px);
		width: 80px;
		height: 61.6px;
	}

	.salon_detail .step_list .box {
		padding: 20px 18px 0;
	}

	.salon_detail .step_list .box .txt .txt_1 {
		margin: 27px 0 15px;
		letter-spacing: 0.8px;
		font-size: 20px;
		line-height: 32px;
	}

	.salon_detail .step_list .box .txt .txt_2 {
		font-size: 16px;
		line-height: 28.8px;
	}
}

.salon_detail .concept-container {
	margin-block: 100px;
}
.salon_detail .concept_content {
	border-top: 1px solid #587289;
	border-bottom: 1px solid #587289;
	padding: 80px 48px;
	display: flex;
	justify-content: space-between;
	gap: 20px;
}
.salon_detail .concept_title {
	font-size: 24px;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 0;
	color: #02143a;
	position: relative;
	padding-top: 80px;
}
.salon_detail .concept_title::before {
	content: 'CONCEPT';
	white-space: nowrap;
	position: absolute;
	top: -4px;
	left: 0;
	font-family: 'Oswald', sans-serif;
	font-size: 100px;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 0;
	color: #587289;
	z-index: -1;
	opacity: 0.15;
}
.salon_detail .concept_main {
	max-width: 624px;
}
.salon_detail .concept_lead {
	font-size: 28px;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0;
	color: #fff;
	display: inline-block;
}
.salon_detail .concept_lead-bg {
	display: block;
	width: fit-content;
	padding: 4px 8px;
	background: #02143a;
}
.salon_detail .concept_lead-bg:nth-child(2) {
	margin-top: 16px;
}
.salon_detail .concept_text {
	font-size: 16px;
	font-weight: 400;
	line-height: 2;
	letter-spacing: 0;
	color: #121212;
}
.salon_detail .concept_lead-bg.--pc {
	display: block;
}
.salon_detail .concept_lead-bg.--sp {
	display: none;
}
.salon_detail .concept_lead + .concept_text {
	margin-top: 32px;
}
.salon_detail .concept_text + .concept_text {
	margin-top: 40px;
}

@media screen and (max-width: 767px) {
	.salon_detail .concept-container {
		margin-block: 80px;
	}
	.salon_detail .concept_content {
		border-top: 1px solid #587289;
		border-bottom: 1px solid #587289;
		padding: 48px 0;
		display: block;
	}
	.salon_detail .concept_title {
		font-size: 20px;
		position: relative;
		padding-top: 64px;
	}
	.salon_detail .concept_title::before {
		font-size: 84px;
	}
	.salon_detail .concept_main {
		max-width: none;
		margin-top: 40px;
	}
	.salon_detail .concept_lead {
		font-size: 24px;
	}
	.salon_detail .concept_lead-bg:nth-child(2) {
		margin-top: 0;
	}
	.salon_detail .concept_lead-bg:nth-child(3) {
		margin-top: 16px;
	}
	.salon_detail .concept_lead-bg.--pc {
		display: none;
	}
	.salon_detail .concept_lead-bg.--sp {
		display: block;
	}
	.salon_detail .concept_text {
		font-size: 15px;
	}
}

.salon_detail .manager-container {
	margin-block: 100px;
}
.salon_detail .manager_content {
	padding: 64px 72px;
	background-color: #eee;
}
.salon_detail .manager_media {
	display: flex;
	justify-content: space-between;
	gap: 48px;
}
.salon_detail .manager_media-img {
	max-width: 310px;
	width: 100%;
}
.salon_detail .manager_media-body {
	max-width: 698px;
}
.salon_detail .manager_media-text {
	font-size: 16px;
	font-weight: 400;
	line-height: 2;
	letter-spacing: 0;
	color: #242424;
}
.salon_detail .manager_media-info {
	margin-top: 16px;
	width: fit-content;
	margin-left: auto;
}
.salon_detail .manager_media-info-name {
	display: block;
	font-size: 16px;
	font-weight: 400;
	line-height: 2;
	letter-spacing: 0;
	color: #242424;
}

@media screen and (max-width: 767px) {
	.salon_detail .manager-container {
		margin-block: 80px;
	}
	.salon_detail .manager_content {
		padding: 40px 20px;
	}
	.salon_detail .manager_media {
		display: block;
	}
	.salon_detail .manager_media-img {
		max-width: none;
		width: 100%;
	}
	.salon_detail .manager_media-body {
		max-width: none;
		margin-top: 32px;
	}
}
.salon_detail section.comparison {
	padding-bottom: 80px;
}

.salon_detail .nearby_sec {
	margin-block: 100px;
}
.salon_detail .nearby-tabs {
	display: flex;
	gap: 0.5rem;
	margin: 1rem 0;
	flex-wrap: wrap;
	border-bottom: 1px solid #bbb8ab;
}
.salon_detail .nearby-tab {
	padding: 0.4rem 0.8rem;
	border: 1px solid #ddd;
	background: #fff;
	font-size: 16px;
	cursor: pointer;
	border-radius: 6px 6px 0 0;
}
.salon_detail .nearby-tab.is-active {
	background-color: #02143a;
	color: #fff;
	font-weight: 700;
	box-shadow: 0 1px 0 rgba(0, 0, 0, 0.04) inset;
	position: relative;
}
.salon_detail .nearby-tab.is-active:after {
	content: '';
	display: inline-block;
	background-color: #02143a;
	width: 24px;
	height: 12px;
	-webkit-clip-path: polygon(0 0, 100% 0%, 50% 100%);
	clip-path: polygon(0 0, 100% 0%, 50% 100%);
	position: absolute;
	top: 100%;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.salon_detail .nearby-item {
	padding-top: 30px;
}

@media screen and (max-width: 767px) {
	.salon_detail .nearby-tabs {
		display: flex;
		gap: 0;
		margin: 0.5rem 0;
		flex-wrap: nowrap;
	}
	.salon_detail .nearby-tab {
		padding: 0.3rem 0.35rem;
		font-size: 13px;
		letter-spacing: -0.01em;
	}
	.salon_detail .nearby-item .information-container {
		margin-bottom: 0px;
	}
}
.salon_detail .container.reason-container {
	margin-top: 140px;
}
@media screen and (max-width: 767px) {
	.salon_detail .container.reason-container {
		margin-top: 100px;
	}
}
