#main {
	overflow: hidden;
}
#main section:last-of-type {
	margin-bottom: 48px;
}
/* main banner */
.sect-banner {
	position: relative;
	aspect-ratio: 358 / 588;
	margin: 24px 16px;
	border-radius: 24px;
}
.sect-banner:before {
	content: '';
	position: absolute;
	bottom: -64px;
	right: 0;
	width: 101px;
	height: 99px;
	background: url('https://vgzol4tn11543.edge.naverncp.com/toxnfill/images/main/deco-rw.png') center / cover no-repeat;
}
.sect-banner .mainBannerVideoWrap {
	position: relative;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	border-radius: 24px;
}

/* branch */
.sect-branch {
	display: flex;
	flex-direction: column;
	gap: 40px;
	background: #070707;
	border-radius: 24px;
	padding: 40px 24px;
	margin: 80px 16px 0;
}
.sect-branch .branch-group {
	display: flex;
	justify-content: space-between;
	gap: 16px;
}

/* sect-promo-banner */
.sect-promo-banner {
	position: relative;
	margin: 80px auto;
}
.sect-promo-banner:before {
	content: '';
	position: absolute;
	top: -44px;
	left: 0;
	width: 80px;
	height: 81px;
	background: url('https://vgzol4tn11543.edge.naverncp.com/toxnfill/images/main/deco-rb.png') center / cover no-repeat;
}
.sect-promo-banner .promo-banner .promo-banner-swiper-wrap {
	margin: 0 auto;
}
@media screen and (min-width: 640px) {
	.sect-promo-banner {
		display: none;
	}
}

/* event */
.sect-event {
	position: relative;
	margin-top: 80px;
}
.main-event-swiper {
	position: relative;
	overflow: hidden;
	width: 100%;
	padding: 0 16px;
}
.main-event-swiper .swiper-slide {
	width: 320px !important;
	flex-shrink: 0;
	border-radius: 24px;
	overflow: hidden;
}
.main-event-swiper .swiper-slide a {
	display: block;
	width: 100%;
	transition: all 0.1s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
	.main-event-swiper .swiper-slide a:hover .img-thumb {
		filter: brightness(1.1);
	}
}
.main-event-swiper .img-thumb {
	position: relative;
	height: 320px;
}
.main-event-swiper .detail-info {
	height: 100%;
	background: #fff;
	padding: 24px;
}
.main-event-swiper .detail-info .title {
	height: 2.8em;
	font-size: 1.25rem;
	font-weight: 800;
	line-height: 1.4;
	overflow-wrap: anywhere;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical; 
}
.main-event-swiper .detail-info .date {
	font-family: 'Lato';
	font-size: 0.75rem;
	font-weight: 900;
	color: var(--secondary);
	letter-spacing: normal;
	line-height: 1.167;
	margin-top: 16px;
}
/* signature */
.sect-signature {
	margin-top: 80px;
} 
.main-signature-swiper {
	position: relative;
	overflow: hidden;
	width: 100%;
}
.main-signature-swiper .swiper-slide {
	width: 265px !important;
	flex-shrink: 0;
	border-radius: 24px;
	overflow: hidden;
}
.main-signature-swiper .swiper-slide a {
	display: block;
	width: 100%;
}
.main-signature-swiper .img-thumb {
	position: relative;
	height: 180px;
	transition: all 0.1s ease-in-out;
}
.main-signature-swiper .detail-info {
	height: 100%;
	background: #272727;
	color: #fff;
	padding: 24px;
	text-align: center;
	transition: all 0.1s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
	.main-signature-swiper .swiper-slide a:hover .img-thumb {
		filter: brightness(0.9);
	}
	.main-signature-swiper .swiper-slide a:hover .detail-info {
		background: #3f3f3f;
	}
}
.main-signature-swiper .detail-info .title {
	font-size: 1.25rem;
	font-weight: 800;
	line-height: 1.4;
}
.main-signature-swiper .detail-info .desc {
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.25;
	margin-top: 8px;
}
/* before & after */
.sect-before-after {
	margin: 80px 0;
}
.sect-before-after .sect-content {
	margin: 0 16px;
	border-radius: 24px;
	overflow: hidden;
}
.sect-before-after .img-thumb {
	position: relative;
	aspect-ratio: 179 / 91;
	transition: all 0.1s ease-in-out;
}
.sect-before-after .img-thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
} 
.sect-before-after .detail-info {
	background: #272727;
	color: #fff;
	padding: 24px 16px;
	text-align: center;
	transition: all 0.1s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
	.sect-before-after .sect-content a:hover .img-thumb {
		filter: brightness(0.9);
	}
	.sect-before-after .sect-content a:hover .detail-info {
		background: #3f3f3f;
	}
}
.sect-before-after .detail-info .title {
	font-size: 1.25rem;
	font-weight: 800;
	line-height: 1.4;
}
.sect-before-after .detail-info .desc {
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.429;
	margin-top: 8px;
}
/* 맞춤 추천 */
.sect-recommend {
	padding-top: 40px;
	margin-top: 80px;
	background: #000;
}
/* 이번주 BEST TOP10 */
.sect-best-event {
	padding-top: 48px;
	background: #000;
}
/* 지점별 인기 이벤트 */
.sect-popular-event {
	padding: 80px 16px 48px;
	background: #000;
}
/* 브랜드 소개 */
.sect-value .brand-info {
	color: #fff;
	padding: 120px 40px 80px;
	background: var(--primary-dark);
	text-align: center;
}
.brand-info .title-wrap .sect-title {
	font-size: 1.25rem;
	font-weight: 800;
	line-height: 1.4;
}
.brand-info .title-wrap .logo {
	display: inline-block;
	width: 150px;
	margin-top: 24px;
}
.brand-info .title-wrap .logo img {
	display: block;
	width: 100%;
}
.brand-info .symbol-wrap {
	font-size: 1.25rem;
	font-weight: 800;
	color: var(--secondary);
	line-height: 1.4;
	margin-top: 80px;
}
.brand-info .symbol-wrap .img-wrap {
	position: relative;
	width: 142px;
	margin: 0 auto 40px;
}
.brand-info .symbol-wrap .img-wrap:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 24px;
	height: 48px;
	-webkit-mask: url('https://vgzol4tn11543.edge.naverncp.com/toxnfill/images/common/icon-key.svg') center / contain no-repeat;
	mask: url('https://vgzol4tn11543.edge.naverncp.com/toxnfill/images/common/icon-key.svg') center / contain no-repeat;
	background: var(--secondary);
}
.brand-info .symbol-wrap .img-wrap img {
	animation: symbol-ani 8s linear infinite;
}
@keyframes symbol-ani {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}
.brand-info .desc-wrap {
	display: flex;
	flex-direction: column;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.5;
	margin-top: 80px;
	gap: 24px;
}
.brand-data {
	padding: 120px 32px 80px;
	background: #171717;
}
.brand-data .value-list {
	display: grid;
	grid-template-columns: repeat(2, 140px);
	grid-gap: 40px 35px;
	justify-content: center;
}
.brand-data .value-list li {
	position: relative;
	color: var(--secondary);
}
.brand-data .value-list .title {
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.429;
	padding-bottom: 8px;
	border-bottom: 1px solid var(--secondary);
}
.brand-data .value-list .count-wrap {
	display: flex;
	align-items: baseline;
	gap: 4px;
	margin-top: 12px;
}
.brand-data .value-list .count-wrap strong {
	position: relative;
	display: block;
}
.brand-data .value-list .count-wrap strong span {
	display: block;
	font-family: 'Lato';
	font-size: 2rem;
	font-weight: 800;
	color: var(--secondary);
	line-height: 1.25;
}
.brand-data .value-list .count-wrap strong span#count03:after {
	content: "K+";
	font-size: 1.25rem;
}
.brand-data .value-list .count-wrap span {
	display: block;
	font-size: 0.813rem;
	font-weight: 700;
	color: var(--secondary);
	line-height: 1.385;
}
.brand-map {
	padding: 80px 30px 100px;
	background: #000;
}
.brand-spot-map {
	position: relative;
	padding: 0 16px;
}
.brand-spot-map .brand-spot-box {
	position: relative;
	max-width: 310px;
	margin: 0 auto;
}
.brand-spot-map .brand-spot-map-img {
	display: block;
	max-width: 100%;
	margin: 0 auto;
}
.brand-spot-map .brand-spot {
	position: absolute;
}
.brand-spot-map .brand-spot .brand-spot-sign {
	position: absolute;
	top: 100%;
	left: 100%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 35px;
	font-size: 0.813rem;
	font-weight: 700;
	line-height: normal;
	color: #171717;
	background: var(--secondary);
	white-space: nowrap; 
	border-radius: 12px;
	padding: 0 12px;
	opacity: 1;
	pointer-events: none;
}
.brand-spot-map .brand-spot.brand-spot-a {
	z-index: 1;
	top: 26.53%;
	left: 44.51%;
}
.brand-spot-map .brand-spot.brand-spot-b {
	top: 16.46%;
	left: -6.77%;
}
.brand-spot-map .brand-spot.brand-spot-c {
	top: 28.01%;
	left: -0.64%;
}
.brand-spot-map .brand-spot.brand-spot-d {
	top: 39.55%;
	left: 3.22%;
}
.brand-spot-map .brand-spot.brand-spot-e {
	top: 58.96%;
	left: -0.64%;
}
.brand-spot-map .brand-spot.brand-spot-f {
	top: 14.74%;
	left: 64.83%;
}
.brand-spot-map .brand-spot.brand-spot-g {
	top: 48%;
	left: 74.19%;
}
.brand-spot-map .brand-spot.brand-spot-h {
	top: 89.92%;
	left: -14.51%;
}
.brand-spot-map .brand-spot .brand-spot-sign span {
	display: inline-block;
	font-family: 'Lato';
	font-size: 1.125rem;
	font-weight: 700;
	line-height: normal;
	margin-left: 4px;
	margin-right: 1px;
}
.brand-history {
	display: flex;
	justify-content: center;
	padding: 80px 16px;
}
.brand-history ul {
	display: flex;
	flex-direction: column;
	gap: 40px;
}
.brand-history li {
	position: relative;
	font-size: 1rem;
	font-weight: 700;
	color: #fff;
	line-height: 1.5;
	padding-left: 38px;
}
.brand-history li:before {
	content: '';
	position: absolute;
	left: 0;
	top: 4px;
	width: 14px;
	height: 28px;
	-webkit-mask: url('https://vgzol4tn11543.edge.naverncp.com/toxnfill/images/common/icon-key.svg') center / contain no-repeat;
	mask: url('https://vgzol4tn11543.edge.naverncp.com/toxnfill/images/common/icon-key.svg') center / contain no-repeat;
	background-color: var(--secondary);
}
/* samjung */
.sect-samjung .samjung01 {
	background: #ECE9DF;
	padding: 0 16px 80px;
}
.sect-samjung .samjung01 .txt-wrap {
	font-size: 1.25rem;
	font-weight: 800;
	line-height: 1.4;
	text-align: center;
}
.sect-samjung .samjung01 .txt-wrap .flip-text {
	display: inline-block;
	background: #171717;
	color: #fff;
	padding: 1px 6px;
}
.sect-samjung .samjung01 .txt-wrap .flip-text em {
	display: inline-block;
	width: 40px;
	height: 28px;
	font-style: normal;
}
.sect-samjung .samjung01 .txt-wrap .flip-text em:before {
	content: '';
	display: inline-block;
	animation: flip-text 3s ease infinite;
}
@keyframes flip-text {
	0% {
		content: '정품'; 
	}
	33.33% {
		content: '정량';
	}
	66.66% {
		content: '정성';
	}
	100% {
		content: '정품';
	}
}
.sect-samjung .samjung02 .video-box .samjung-video {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.sect-samjung .samjung02 img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.sect-samjung .samjung03 {
	padding: 80px 16px;
	background: #D5D4D0;
}
.sect-samjung .samjung03 .title-wrap {
	font-size: 1.25rem;
	font-weight: 800;
	line-height: 1.4;
	text-align: center;
	margin-bottom: 24px;
}
.sect-samjung .samjung-swiper {
	position: relative;
	padding-bottom: 40px;
}
.sect-samjung .samjung-swiper .slide-inner {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.sect-samjung .samjung-swiper .branch-name {
	display: block;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
}
.sect-samjung .samjung-swiper .swiper-slide {
	width: 294px !important;
	flex-shrink: 0;
}
.sect-samjung .samjung-swiper .img-wrap {
	border-radius: 24px;
	overflow: hidden;
}
.sect-samjung .samjung-swiper .swiper-pagination {
	position: absolute;
	top: auto;
	bottom: 0;
	left: 0;
	right: 0;
	width: 262px;
	height: 4px;
	border-radius: 4px;
	background: #929292;
	margin: 0 auto;
	overflow: hidden;
}
.sect-samjung .samjung-swiper .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
	height: 100%;
	background: #272727;
}

/* business */
.sect-business {
	display: flex;
	flex-direction: column;
	padding: 0 16px;
	margin: 80px 0;
	gap: 24px;
}
.sect-business .business-item {
	display: flex;
	align-items: center;
	width: 100%;
	border-radius: 24px;
	background: url('https://vgzol4tn11543.edge.naverncp.com/toxnfill/images/main/brand-business-img.jpg') 62% center/cover no-repeat;
	aspect-ratio: 358 / 240;
	overflow: hidden;
	transition: filter 0.3s ease-in-out;
}
.sect-business .business-item .item-inner {
	padding-left: 40px;
}
.sect-business .business-item .img-wrap img {
	margin: 0;
}
.sect-business .business-item .txt-wrap {
	font-size: 0.875rem;
	font-weight: 500;
	color: #000;
	line-height: 1.429;
	margin-top: 16px;
}

/* 채널 BEST */
.sect-channel {
	padding: 0 16px;
	margin: 80px 0;
}
.sect-channel .title-wrap {
	padding: 0;
	margin-bottom: 40px;
}
.sect-channel .video-wrap {
	position: relative;
	border-radius: 16px;
	overflow: hidden;
	aspect-ratio: 16 / 9;
	margin-bottom: 24px;
}
.sect-channel .video-wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.sect-channel .channel-list li ~ li {
	margin-top: 8px;
}
.sect-channel .channel-list .btn-channel-more {
	display: block;
	width: 100%;
	height: 48px;
	background: #272727;
	font-size: 0.813rem;
	font-weight: 700;
	color: #fff;
	letter-spacing: -0.26px;
	text-align: center;
	border-radius: 24px;
	padding: 16px;
	margin-top: 8px;
	overflow: hidden;
}
.sect-channel .channel-list .channel-item {
	display: flex;
	align-items: center;
	padding: 16px;
	border-radius: 24px;
	background: #272727;
	border: 1px solid #272727;
	gap: 16px;
	overflow: hidden;
	cursor: pointer;
}
.sect-channel .channel-list .channel-item.active {
	background: #000;
	border-color: #4A4A4A;
}
.sect-channel .channel-item .video-thumb {
	position: relative;
	flex-shrink: 0;
	width: 152px;
	height: 86px;
	background-color: #171717;
	border-radius: 16px;
	overflow: hidden;
}
.sect-channel .channel-item.active .video-thumb:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.70);
}
.sect-channel .channel-item.active .video-thumb:after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 32px;
	height: 32px;
	background: url('https://vgzol4tn11543.edge.naverncp.com/toxnfill/images/common/icon-play.png') center / contain no-repeat;
}
.sect-channel .channel-item .video-thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.sect-channel .channel-item .video-info .badge-wrap {
	gap: 4px;
	margin-bottom: 8px;
}
.sect-channel .channel-item .video-info .badge-wrap .badge-item {
	background: var(--primary);
	font-size: 0.563rem;
	height: 18px;
	line-height: 18px;
	padding-top: 2px;
}
.sect-channel .channel-item .video-info .video-title {
	font-size: 0.875rem;
	font-weight: 500;
	color: #fff;
	line-height: 1.429;
	letter-spacing: -0.28px;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical; 
	overflow: hidden;
}
.sect-channel .channel-item .video-info .video-branch {
	font-size: 0.75rem;
	font-weight: 500;
	color: #929292;
	line-height: 1.333;
	letter-spacing: -0.24px;
	margin-top: 4px;
}

/* 인스타그램 */
.sect-sns {
	margin: 80px 0 48px;
}
.sect-sns .title-wrap {
	padding: 0 16px;
	margin-bottom: 40px;
}
.main-sns-swiper {
	position: relative;
	overflow: hidden;
	width: 100%;
	clip-path: inset(0 0 0 8px);
}
.main-sns-swiper .swiper-slide {
	width: 240px !important;
	aspect-ratio: 3 / 4;
	flex-shrink: 0;
	border-radius: 16px;
	overflow: hidden;
}
.main-sns-swiper .swiper-slide a {
	display: block;
	width: 100%;
	height: 100%;
}
.main-sns-swiper .swiper-slide img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* 메인 팝업 */
.brand-popup {
	visibility: hidden;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 990;
	overflow: hidden;
	background-color: rgba(0, 0, 0, 0.4);
}
.brand-popup.on {
	visibility: visible;
	overflow-x: hidden;
	overflow-y: auto;
	z-index: 100;
}
.brandP-wrap {
	display: none;
	position: fixed;
	max-width: 310px;
	width: 100%;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	border-radius: 24px;
	overflow: hidden;
	z-index: 100;
}
.brand-popup.on .brandP-wrap {
	display: block;
}
.brandP-wrap > .swiper-container {
	width: calc(100% + 1px);
    max-width: 100%;
}
.brandP-wrap > .swiper-container > .swiper-wrapper > .swiper-slide {
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}
.brandP-wrap .brandP-img {
	position: relative;
	overflow: hidden;
	width: 100%;
	aspect-ratio: 310 / 424;
	background: #f5f5f5;
}
@media screen and (min-width: 1440px) {
	.brandP-wrap {
		max-width: 440px;
	}
}
.brandP-wrap .brandP-img a {
	display: block;
	width: 100%;
	height: 100%;
}
.brandP-wrap .brandP-img img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border: 0;
}
.brandP-wrap .brandP-btn {
	display: flex;
	justify-content: center;
	align-items: center;
	max-width: 100%;
	height: 56px;
	background-color: #171717;
}
.brandP-wrap .brandP-btn button {
	position: relative;
	display: block;
	flex-shrink: 0;
	height: 100%;
	font-size: 0.875rem;
	font-weight: 500;
	color: #fff;
	padding: 0 40px;

}
.brandP-wrap .brandP-btn .btn-pop-close:before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 1px;
	height: 16px;
	background: #272727;
	transform: translateY(-50%);
}
.brand-popup .swiper-pagination {
	bottom: 12px;
	line-height: 0;
}
@media screen and (min-width: 1440px) {
	.brand-popup .swiper-pagination {
		bottom: 16px;
	}
}
.brand-popup .swiper-pagination-bullet {
	background: #fff;
	opacity: 0.4;
	border-radius: 999px;
	-webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
    box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
	transition: all 0.3s ease-out;
}
.brand-popup .swiper-pagination-bullet-active {
	width: 24px;
	opacity: 1;
}
.brandP-img .crn-video {
	position: absolute;
	bottom: 0;
	left: 10px;
	right: 10px;
}
.brandP-img .crn-video iframe {
	display: block;
	width: 100%;
	height: 180px;
}
.brandP-wrap .brandP-video {
	position: relative;
}
.brandP-wrap .brandP-video a {
	display: block;
	user-select: none;
    -webkit-user-drag: none;
}
.brandP-wrap .brandP-video video {
	display: block;
	width: 100%;
	aspect-ratio: 310 / 424;
	object-fit: cover;
}

@media screen and (min-width: 640px) {
	.sect-business .business-item {
		aspect-ratio: 608 / 240;
		background-position: center;
	}
}
