.containerbox {
	margin: 0 auto;
}

/* 상세 이미지(GIF 포함)가 flex에서 공간을 받고 정상 표시되도록 */
.shop-detail-img-wrap {
	width: 100%;
	min-width: 0;
}

.shop-detail-img-wrap img,
.shop-detail-img-wrap video,
.shop-detail-media {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	vertical-align: top;
}

.carousel-inner {
	background-image: url('../imgs/home/Union.png');
	background-repeat: no-repeat;
	background-position: center;
}

.carousel-caption {
	position: absolute;
	bottom: -10px;
}

.carousel-indicators {
	position: absolute;
	bottom: -20px;
}

.product-layout {
	display: flex;
	width: 100%;
	padding: 0 20px;
	flex-direction: column;
	align-items: flex-start;
	margin-top: 40px;
	border-bottom: 4px solid #EF4044;
}

.fixed-button {
	width: 90%;
	position: fixed;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
	box-sizing: content-box;
}

.next-btn {
	width: 100%;
	height: 56px;
	background-color: var(--brand);
	color: white;
	font-size: 16px;
	border: 0;
	border-radius: 8px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 2px;
	line-height: 1.1;
}

.next-btn .cta-title {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.1;
}

.next-btn .cta-subtext {
	font-size: 12px;
	font-weight: 600;
	opacity: 0.92;
	line-height: 1.1;
}

@media (min-width: 768px) {
	.containerbox {
		max-width: 572px;
		box-sizing: content-box;
	}
	.fixed-button {
		max-width: 532px;
	}
}
