@charset "UTF-8";

.map {
  width: 100%;
  max-width: 1500px;
}

.map h2 {
	color: #043D71;
	font-size: 64px;
	line-height: 1;
}
.map * + h2 {
	padding-top: 200px;
}

.map h2 .ja {
	display: block;
	font-size: 43.75%;
	margin-top: 0.5em;
}
.map * + h2 .ja {
	margin-top: 0;
}

.map > figure.salonMap {
	max-width: 1000px;
	margin-inline: auto;
}

.salonInfo {
	margin-top: 50px;
	text-align: center;
}
.salonInfo__copy {
	font-size: 28px;
	letter-spacing: 0.1em;
	line-height: 1.6;
}
.salonAddress {
	max-width: 740px;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
	margin-top: 10px;
	margin-inline: auto;
	padding-block: 10px 5px;
}
.salonAddress__title {
	font-size: 20px;
	line-height: 1.5;
	letter-spacing: 0.1em;
}
.salonAddress__address {
	font-size: 38px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0.1em;
}
.salonInfo__copy02 {
	font-size: 24px;
	letter-spacing: 0.1em;
	line-height: 1.5;
	margin-top: 10px;
}
.salonInfo__copy02 .small {
	display: block;
	font-size: 78.5714%;
	letter-spacing: 0.1em;
}

.mapBtnBox {
	column-gap: 5%;
	margin-top: 100px;
}

.map__btn {
	max-width: 400px;
	margin-inline: auto;
}
.mapBtnBox .map__btn {
	margin-inline: 0;
}

@media screen and (max-width: 1500px) {
  .map > figure figcaption {
    padding-right: 1em;
  }
}

@media screen and (max-width: 768px) {
	.map {
		padding-top: 100px;
	}

	.map h2 {
		font-size: 40px;
	}
	.map * + h2 {
		padding-top: 40px;
	}

	.map > figure.salonMap {
		max-width: 560px;
	}

	.salonInfo {
		margin-top: 30px;
	}
	.salonInfo__copy {
		font-size: 16px;
	}
	.salonAddress {
		max-width: 400px;
	}
	.salonAddress__title {
		font-size: 14px;
	}
	.salonAddress__address {
		font-size: 24px;
	}
	.salonInfo__copy02 {
		font-size: 14px;
	}
	.salonInfo__copy02 .small {
		font-size: 71.438%;
		margin-top: 5px;
	}

	.mapBtnBox {
		row-gap: 20px;
		margin-top: 40px;
	}

	.map__btn {
		max-width: 300px;
		height: 60px;
	}
	.map__btn .en {
		font-size: 24px;
	}
}