/* TOPページ 店舗一覧導線セクション */

.locations {
	padding: 238px 0 144px;
	background-color: #F5CA00;
	position: relative;
}
.locations::before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	background-image: url(../img/dot_back.webp);
	background-size: 100%;
	background-position: top center;
	top: 0;
	left: 0;
	mix-blend-mode: luminosity;
}
@media (max-width: 480px) {
	.locations {
		padding: 72px 0 64px;
	}
}

.locations__wrapper {
	max-width: 1324px;
	width: 95%;
	margin: 0 auto;
	position: relative;
}

.locations__head {
	max-width: 900px;
	width: 95%;
	margin: 0 auto 71px;
}
.locations__head::before {
    content: "OUR LOCATIONS";
    display: block;
    position: absolute;
    width: fit-content;
    margin: 0 auto;
    font-size: clamp(95px, 4.927rem + 1.94vw, 116px);
    font-weight: 900;
    color: #FF8C00;
    opacity: 0.5;
    left: 0;
    right: 0;
    top: -1.1em;
}
@media (max-width: 834px) {
	.locations__head::before {
		font-size: 11vw;
	}
}
@media (max-width: 480px) {
  .locations__head {
    margin-bottom: 27px;
  }
}
.locations__head h2 {
	width: 100%;
	background-color: #00516D;
	border-radius: 50px;
	padding: 0.3em 0;
	font-size: 40px;
	font-weight: bold;
	text-align: center;
	color: #FFF;
	position: relative;
}
.locations__head h2::before {
		content: "";
		display: block;
		position: absolute;
		width: 72px;
		height: 31px;
		margin: 0 auto;
		background-color: #00516D;
		clip-path: polygon(0 0, 100% 0, 50% 100%);
		right: 0;
		left: 0;
		bottom: -30px;
}
@media (max-width: 480px) {
	.locations__head h2 {
		padding: 8px 0;
		font-size: 24px;
	}

	.locations__head h2::before {
		width: 44px;
		height: 17px;
		bottom: -16px;
	}
}

.locations__container {
	width: 100%;
	background-color: #FFFDDC;
	border: 3px solid #297842;
	border-radius: 46px;
	padding: 48px 0;
}

.locations__container .flex-box {
	max-width: 1037px;
	width: 95%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
@media (max-width: 834px)  {
	.locations__container .flex-box {
		flex-direction: column;
	}
}

.locations__image {
	max-width: 334px;
	width: 40%;
}
.locations__image.sp {
	display: none;
	max-width: 334px;
	width: 60%;
	margin: 20px auto;
}
@media (max-width: 834px) {
	.locations__image {
		display: none;
	}
	.locations__image.sp {
		display: block;
	}
}

.locations__image img {
	width: 100%;
	height: auto;
}

.locations__container .text-box {
	text-align: center;
	width: 60%;
}
@media (max-width: 834px) {
	.locations__container .text-box {
		width: 100%;
	}
}

.locations__container .text-box h3 {
	font-size: 40px;
	font-weight: bold;
	color: #297842;
	margin: 0 0 5px;
}
@media (max-width: 480px) {
	.locations__container .text-box h3 {
		font-size: 24px;
	}
}

.locations__container .text-box p {
	font-size: 24px;
	font-weight: 500;
	line-height: 1.5;
	color: #3E3F3F;
	margin: 0;
}
@media (max-width: 480px) {
	.locations__container .text-box p {
		font-size: 13px;
	}
}

.locations__btn {
	max-width: 512px;
	width: 95%;
	margin: 18px auto 0;
}
@media (max-width: 480px) {
	.locations__btn {
		width: 70%;
	}
}

.locations__btn a {
	display: block;
	width: 100%;
	background-color: #FF8C00;
	border-radius: 50px;
	padding: 0.8em 0;
	font-size: 24px;
	font-weight: 500;
	text-align: center;
	color: #FFF;
}
@media (max-width: 480px) {
	.locations__btn a {
		font-size: 14px;
	}
}