@charset "utf-8";

.haccp-promotion {background: #000;}

.tooltip {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	border-radius: 50%;
	font-size: 20px;
	text-align: center;
	cursor: pointer;
	color:var(--blueC-mm);
	z-index: 999;
}
.tooltip > span {vertical-align: middle;}
.tooltip > span img {max-width: 14px;}
.tooltip:hover > span {
	opacity: 0.7;
}
.tooltip:hover div.tooltip-text {display: block;}
.tooltip div.tooltip-text {
	display: none;
	position: absolute;
	width: 300px;
	bottom: calc(100% - 15px);
	padding-bottom: 20px;
}
.tooltip.bottom div.tooltip-text {
	bottom: auto;
	top: calc(100% - 15px);
	padding-bottom: 0;
	padding-top: 20px;
}
.tooltip div.tooltip-text em {
	display: block;
	font-family: 'SEBANG-Gothic';
	font-weight: 700;
	color: #061E55;
	font-size: 14px;
	margin-bottom: 10px;
}
.tooltip div.tooltip-text em img {
	display: inline;
	max-width: 18px;
	vertical-align: middle;
	margin-right: 5px;
}
.tooltip div.tooltip-text p {
	background: #DCE4F5;
	color: #000;
	padding: 15px;
	border-radius: 10px;
	text-align: left;
	font-size: 12px;
	line-height: 1.2;
}

/*top-rolling*/
.haccp-promotion .top-rolling {
	width: 100%;
	max-width: 1940px;
	margin: 0 auto;
	padding: 15px 0 13px;
	display: flex;
	flex: 0 0 auto;
	white-space: nowrap;
	overflow: hidden;
	font-size: 20px;
	font-weight: 400;
	color: #000000;
	background: #C6FF55;
	font-family: 'Gmarket Sans TTF';
}
.haccp-promotion .top-rolling .track {
	animation: rolling 20s linear infinite;
}
.haccp-promotion .top-rolling .track span {margin: 0 20px;}

@keyframes rolling {
	0% {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
	100% {
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
	}
}

@media (max-width: 1520px) {
	.haccp-promotion .top-rolling {font-size: 16px; padding: 10px 0 8px;}
	.haccp-promotion .top-rolling .track span {margin: 0 10px;}
}
@media (max-width: 560px) {
	.haccp-promotion .top-rolling {
		font-family: 'SUIT Variable';
		font-weight: 600;
		font-size: 14px;
		padding: 8px 0 6px;
	}
	.haccp-promotion .top-rolling .track span {margin: 0 5px;}
}


/*promo common*/
.promo-part-wrap {
	width: 100%;
	max-width: 1940px;
	height: auto;
	font-family: 'Gmarket Sans TTF';
	padding: 0;
	margin: 0 auto;
}
.promo-part-wrap .promo-part {
	position: relative;
	width: 100%;
	overflow: visible;
}
.promo-part-wrap .promo-part::before,
.promo-part-wrap .promo-part::after {z-index: 1;}
.promo-part-wrap .promo-part .container {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	max-width: 1520px;
	padding-left: 60px;
	padding-right: 60px;
}
.promo-part-wrap img {display: block; height: auto;}

@media (min-width:1939px) {
	.promo-part-wrap {
		border-left: 1px solid #ddd;
		border-right: 1px solid #ddd;
	}
}
@media (max-width: 860px) {
	.promo-part-wrap .promo-part .container {
		padding-left: 30px;
		padding-right: 30px;
	}
}
@media (max-width: 560px) {
	.promo-part-wrap .promo-part .container {
		padding-left: 20px;
		padding-right: 20px;
	}

}
@keyframes blink {
  0% { opacity: 1; }
  50% { opacity: 0; }
  100% { opacity: 1; }
}
.blink {
  animation: blink 0.8s infinite;
}

/*part01*/
.part01 {
	position: relative;
	background: #000 url(/web_2025/res/images/promotion/part01_bg_ver3.png) no-repeat center / cover;
	/* padding-top: 100px;
	padding-bottom: 150px; */
	transition: all 0.5s;
}
/* .part01 .part01-after {
	position: absolute;
	left: 0;
	top: calc(100% - 1px);
	width: 100%;
	height: auto;
	z-index: 1;
} */
.part01 .part01-title-wrap {position: relative; max-width: 72.45%; margin-top: 11.45%;}
.part01 .part01-title-wrap .part01-title {max-width: 100%;}
.part01 .part01-title-wrap .part01-title-side {
	position: absolute;
	right: -12%;
	top: 19%;
	max-width: 18%;
}
.part01 .part01-btn-wrap {
	display: flex;
	align-items: stretch;
	gap: 20px;
	max-width: 670px;
	width: 100%;
	margin-top: 6.45%;
}
.part01 .part01-btn-wrap a {
	position: relative;
	display: flex;
	align-items:center;
	justify-content: center;
	gap: 30px;
	width: 50%;
	padding: 20px 0;
	color: #fff;
	font-weight: bold;
	font-size: 36px;
	border-radius: 10px;
}
.part01 .part01-btn-wrap a.part01-btn01 {
	background: #7044EE;
	box-shadow: 0 10px 10px 0 #2F0F8C;
}
.part01 .part01-btn-wrap a.part01-btn02 {
	background: #E81C83;
	box-shadow: 0 10px 10px 0 #80174C;
}
.part01 .part01-btn-wrap a.part01-btn01 img {max-width: 20%;}
.part01 .part01-btn-wrap a.part01-btn02 img {max-width: 23.5%;}
.part01 .part01-btn-wrap a span {padding-top: 1.7%;}
.part01 .part01-btn-wrap a.part01-btn01:hover {background: #5012FF;}
.part01 .part01-btn-wrap a.part01-btn02:hover {background: #FF0081;}
.part01 .part01-date {
	font-weight: 300;
	color: #fff;
	font-size: 28px;
	margin-top: 4.3%;
}
.part01 .part01-desc-b {max-width: 72.9%; margin-top: 6.1%;}
.part01 .part01-desc-p {max-width: 60.3%; margin-top: 2.2%;}
.part01 .part01-mockup {max-width: 57.9%; margin-top: 3%; margin-bottom: 32%;}
/* 
.part01 .part01-event-desc {max-width: 62.6%; margin-top: 11.3%;}
.part01 .part01-event-wrap {
	display: flex;
	align-items: flex-start;
	gap: 5%;
	margin-top: 7.9%;
	margin-bottom: 10.72%;	
}
.part01 .part01-event-wrap > div {position: relative; width: 33.33%;transition: all 0.8s;}
.part01 .part01-event-wrap > div:hover {width: 35%;}
.part01 .part01-event-wrap > div.part01-event01 a {
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	gap:0.85em;
	color: #fff;
	font-size: 30px;
	width: 100%;
	height: 13%;
	left: 0;
	bottom: 0;
	padding-top: 1.7%;
}
.part01 .part01-event-wrap > div.part01-event01 a img {max-width: 2.7%; margin-top: -1.5%;}
.part01 .part01-event-wrap > div.part01-event01 a:hover {
	color: #fff640;
} */
.part01-2 {
	position: relative;
	background: url(/web_2025/res/images/promotion/part01_bg_point.png) no-repeat center top 15vw / 100% auto;
	margin-top: -250px;
}
.part01-2 .container {position: relative; padding-bottom: 42%;}
.part01-2 .part01-after {
	position: absolute;
	left: 0;
	top: calc(100% - 1px);
	width: 100%;
	height: auto;
	z-index: 1;
}
.part01-2 .part01-event-desc {max-width: 62.6%;}
.part01-2 .part01-event-wrap {
	position: absolute;
	display: flex;
	align-items: center;
	gap: 5%;
	top: 25%;
	left: 60px;
	width: calc(100% - 120px);
}
.part01-2 .part01-event-wrap > div {position: relative; width: 33.33%;transition: all 0.8s; cursor: pointer;}
.part01-2 .part01-event-wrap > div:hover {width: 36%;}
.part01-2 .part01-event-wrap > div.part01-event01 a {
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	gap:0.85em;
	color: #fff;
	font-size: 30px;
	width: 100%;
	height: 13%;
	left: 0;
	bottom: 0;
	padding-top: 1.7%;
}
.part01-2 .part01-event-wrap > div.part01-event01 a img {max-width: 2.7%; margin-top: -1.5%;}
.part01-2 .part01-event-wrap > div.part01-event01 a:hover {
	color: #fff640;
}

@media (max-width: 1520px) {
	.part01 .part01-btn-wrap a {
		font-size: 30px;
		padding: 15px 0;
	}
	.part01 .part01-btn-wrap a.part01-btn01 img {max-width: 16%;}
	.part01 .part01-btn-wrap a.part01-btn02 img {max-width: 17.5%;}

	.part01 .part01-date {font-size: 2.4vw;}
	
	.part01-2 {margin-top: -18%;}
	.part01-2 .part01-event-wrap > div.part01-event01 a {font-size: 1.8vw;}
}
@media (max-width: 860px) {
	.part01 .part01-btn-wrap {max-width: 70%; gap: 10px;}
	.part01 .part01-btn-wrap a {font-size: 22px; padding: 10px 0; gap: 15px;}
	.part01 .part01-btn-wrap a.part01-btn01 {box-shadow: 0 5px 10px 0 #2F0F8C;}
	.part01 .part01-btn-wrap a.part01-btn02 {box-shadow: 0 5px 10px 0 #80174C;}
	.part01 .part01-btn-wrap a.part01-btn01 img {max-width: 16%;}
	.part01 .part01-btn-wrap a.part01-btn02 img {max-width: 17.5%;}

	.part01-2 .container {padding-bottom: 45%;}
	.part01-2 .part01-event-wrap {
		left: 30px;
		width: calc(100% - 60px);
	}
}
@media (max-width: 560px) {
	.part01 .part01-btn-wrap {max-width: 80%;}
	.part01 .part01-btn-wrap a {font-size: 4vw; gap: 10px; border-radius: 5px;}
	.part01 .part01-date {font-size: 3vw;}
	.part01-2 .container {padding-bottom: 48%;}
	.part01-2 .part01-event-wrap {
		gap: 2%;
		left: 20px;
		width: calc(100% - 40px);
	}
	
}
/*part02*/
.part02 {
	background: url(/web_2025/res/images/promotion/part02_bg.png) no-repeat center / cover;
	/*padding-top: 315px;
	padding-bottom: 330px;*/
}
.part02-title {max-width: 40%; margin-top: 22.5%;}
.part02-desc-wrap {
	position: relative;
	max-width: 57.2%;
	margin-top: 4.3%;
}
.part02-desc-wrap .part02-desc-side {
	position: absolute;
	max-width: 20%;
	top: -34%;
	left: -11%;
}
.part02-img {max-width: 58.1%; margin-top: 2.9%;}
.part02-text {max-width: 39.1%; margin-top: 6%; margin-bottom: 23.6%;}

@media (max-width: 560px) {
	.part02-text {max-width: 49.1%;}
}

/*part03*/
.part03 {
	position: relative;
	background: #041831 url(/web_2025/res/images/promotion/part03_bg_ver3.png) no-repeat center top 75% / cover;
	z-index: 1;
	/*padding-top: 110px;
	padding-bottom: 90px;*/
	padding-top: 5%;
	padding-bottom: 5%;
}
.part03 .part03-small-title {max-width: 8.25%; margin-bottom: 2.7%;}
.part03 .part03-title-wrap {position: relative; max-width: 47.25%;}
.part03 .part03-title-wrap img {position: relative; z-index: 1;}
.part03 .part03-title-wrap img:first-child {
	animation: blink 1s infinite;
}
.part03 .part03-title-wrap img:last-child {
	position: absolute; left: 0; top: 0; z-index: 0;
}
.part03 .part03-desc {max-width: 59%; margin-top: 4.29%;}
.part03 .part03-img {max-width: 30vw; margin-top: 3.5vw;}
.part03 .part03-img-desc {max-width: 57.5%; margin-top: -12%;}
.part03 .part03-text {max-width: 43.6%; margin-top: 6.45%;}

.part03 .part03-before {
	position: absolute;
	left: 0;
	bottom: calc(100% - 1px);
	width: 100%;
	height: auto;
	z-index: 1;
}
.part03 .part03-after {
	position: absolute;
	left: 0;
	top: calc(100% - 1px);
	width: 100%;
	height: auto;
	z-index: 1;
}
@media (max-width: 560px) {
	.part03 .part03-text {max-width: 53.6%;}
}

/*part04*/
.part04 {
	background: url(/web_2025/res/images/promotion/part04_bg.png) no-repeat top center / cover;
	/*padding-top: 290px;
	padding-bottom: 370px;*/
}
.part04 .part04-title-wrap {
	position: relative;
	max-width: 65.45%;
	margin-top: 20.75%;
}
.part04 .part04-title-wrap .part04-title-side {
	position: absolute;
	top: -20%;
	right: -11%;
	max-width: 25.9%;
}
.part04 .part04-desc {max-width: 40.75%; margin-top: 3.6%;}
.part04 .part04-img {max-width: 55.9%; margin-left: -5%; margin-top: 2.5%;}

.part04 .part04-text {max-width: 50%; margin-top: 2.2%; margin-bottom: 26.45%;}

@media (max-width: 560px) {
	.part04 .part04-text {max-width: 60%;}
}

/*part05*/
.part05 {
	position: relative;
	background: url(/web_2025/res/images/promotion/part05_bg.png) no-repeat top center / 100% 100%;/**/
	/*padding-top: 330px;
	padding-bottom: 310px;*/
	margin-top: -15%;
	z-index: 1;
}
.part05 .container {
	position: relative;
	z-index: 2;
}
.part05 .part05-bg {
	position: absolute;
}
.part05 .part05-title {max-width: 41.9%; margin-top: 23.6%;}
.part05 .part05-haccp {max-width: 22.2%; margin-top: 2.9%;}
.part05 .part05-btn {
	max-width: 440px;
	margin-top: 2.2%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	padding: 1.45% 3.6%;
	border-radius: 60px;
	border: 2px solid #FFF;
	box-shadow: 0 10px 10px 0 #2F0F8C;
	color: #FFF;
	font-size: 30px;
}
.part05 .part05-btn span {padding-top: 1.7%;}
.part05 .part05-btn span b {font-weight: 700;}
.part05 .part05-btn img {max-width: 9.8%;}
.part05 .part05-btn:hover {border: 2px solid #9EF0FF;}

.part05 .part05-price-wrap {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 1%;
	margin-top: 7.2%;
}
.part05 .part05-price-wrap li {
	position: relative;
	width: 20%;
	transition: width 0.5s;
	cursor: pointer;
}
.part05 .part05-price-wrap li:hover {
	width: 21%;
}
.part05 .part05-price-wrap li a {
	position: absolute;
	display: block;
	left: 50%;
	transform:translateX(-50%);
	bottom: 20px;
	width: 80%;
	padding: 15px 5px 12px;
	border-radius: 5px;
	background: #566C9D;
	text-align: center;
	color:#fff;
	font-size: 1rem;
}
.part05 .part05-price-wrap li a.color {background: #1937CE;}
.part05 .part05-price-wrap li a:hover {background: #305CBA;}
.part05 .part05-price-wrap li a.color:hover {background: #3253FE;}

.part05 .part05-price-wrap li:first-child .tooltip {
	position: absolute;
	left: 56%;
	top:17%;
	z-index: 1;
}

.part05 .part05-text {max-width: 37.2%; margin-top: 6.45%; margin-bottom: 22.9%;}

@media (max-width: 1520px) {
	.part05 .part05-btn {font-size: 2vw;}
	.part05 .part05-price-wrap li a {padding: 10px 5px 7px; bottom: 10px; font-size: 0.9rem;}
}
@media (max-width: 860px) {
	.part05 .part05-btn {box-shadow:0 5px 10px 0 #2F0F8C;}
	.part05 .part05-btn {font-size: 2.5vw;}
	.part05 .part05-price-wrap li a {padding: 5px 5px 3px; bottom: 10px; font-size: 1.5vw;}

	.part05 .part05-price-wrap li:first-child .tooltip {display: none;}
}
@media (max-width:560px) {
	.part05 .part05-title {max-width: 61%;}
	.part05 .part05-haccp {max-width: 32.2%;}
	.part05 .part05-btn {width: 70%; font-size: 3.5vw; margin-top: 4%;}
	.part05 .part05-btn span {padding-top: 1.5%;}
	.part05 .part05-text {max-width: 47.2%;}
	.part05 .part05-price-wrap li a {width: 85%; bottom: 5px; font-size: 1.8vw;}
}

/*part06*/
.part06 {
	background: #fff;
	/*padding-top: 260px;
	padding-bottom: 300px;*/
	margin-top: -9.5%;
}
.part06 .part06-title {max-width: 47.9%; margin-top: 18.6%;}
.part06 .part06-desc {max-width: 59.3%; margin-top: 4.3%;}
.part06 .part06-list-wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 1.4em;
	width: 100%;
	margin-top: 3.25%;
	margin-bottom: 21.45%;
}
.part06 .part06-list-wrap > li {
	width: calc(33.33% - 1.4em);
	padding: 1.95em;
	background: #fff;
	border-radius: 16px;
	border: 1px solid #E9E9E9;
	box-shadow: 0 2px 8px 0 rgba(99, 99, 99, 0.20);
}
.part06 .part06-list-wrap > li b {
	display: block;
	color: #000;
	font-size: 32px;
	font-weight: 700;
}
.part06 .part06-list-wrap > li img {
	max-height: 10vw;
	margin: 30px auto;
}
.part06 .part06-list-wrap > li p {
	color: #333;
	font-size: 28px;
	line-height: 1.4;
	text-align: center;
	letter-spacing: -0.05em;
	-ms-word-break: keep-all;
	word-break: keep-all;
}

@media (max-width: 1520px) {
	.part06 .part06-list-wrap > li b {font-size: 2.2vw;}
	.part06 .part06-list-wrap > li p {font-size: 1.9vw;}
}
@media (max-width: 1024px) {
	.part06 .part06-list-wrap {gap: 10px;}
	.part06 .part06-list-wrap > li {
		width: calc(50% - 5px);
	}
	.part06 .part06-list-wrap > li img {max-height: 20vw;}
}
@media (max-width: 860px) {
	.part06 .part06-list-wrap > li {padding: 20px;}
	.part06 .part06-list-wrap > li b {font-size: 2.6vw;}
	.part06 .part06-list-wrap > li p {font-size: 2.3vw;}
	.part06 .part06-list-wrap > li img {margin: 20px auto;}
}
@media (max-width: 560px) {
	.part06 .part06-title {max-width: 67%;}
	.part06 .part06-desc {max-width: 69.3%;}
	.part06 .part06-list-wrap > li {border-radius: 10px; padding: 15px;}
	.part06 .part06-list-wrap > li b {font-size: 3vw;}
	.part06 .part06-list-wrap > li p {font-size: 2.7vw;}
	.part06 .part06-list-wrap > li img {margin: 10px auto;}
}

/*part07*/
.part07 {
	position: relative;
	background: #000;
	/*padding-top: 190px;
	padding-bottom: 220px;*/
}
.part07 .part07-after {
	position: absolute;
	left: 0;
	top: calc(100% - 1px);
	width: 100%;
	height: auto;
	z-index: 1;
}
.part07 .part07-before {
	position: absolute;
	left: 0;
	bottom: calc(100% - 1px);
	width: 100%;
	height: auto;
	z-index: 1;
}
.part07 .part07-title-wrap {
	position: relative;
	max-width: 54.3%;
	margin-top: 13.6%;
	z-index: 1;
}
.part07 .part07-title-wrap .part07-title {position: relative; z-index: 1;}
.part07 .part07-title-wrap .part07-title-side {
	position: absolute;
	max-width: 42%;
	top: -215%;
	left: -24%;
	z-index: 2;
}
.part07 .part07-title-wrap .part07-title-bg {
	position: absolute;
	right: 51%;
	top: -367%;
	z-index: 0;
}
.part07 .part07-desc {max-width: 58.3%; margin-top: 2.9%;}
.part07 .part07-img {margin-top: 7.2%;}
.part07 .part07-result-wrap {position: relative; max-width: 59%; margin-top: 2.5%; margin-bottom: 15.75%;}
.part07 .part07-result-wrap img {position: relative; z-index: 1;}
.part07 .part07-result-wrap::before {
	position: absolute;
	left: 67.5%;
	top: 24%;
	content: '';
	display: block;
	background: #6F3CFF;
	height: 18%;
	width: 0;
	animation: before07 4s infinite;
}
@keyframes before07 {
	0%   { width: 0; }
	20%  { width: 33%; }
	40%  { width: 33%; }
	60%  { width: 33%; }
	80%  { width: 0; }
	100% { width: 0; }
}
.part07 .part07-result-wrap::after {
	position: absolute;
	left: 54.5%;
	bottom: 8%;
	content: '';
	display: block;
	background: #6F3CFF;
	height: 18%;
	width: 0;
	animation: after07 4s infinite;
	animation-delay: 0.7s;
}
@keyframes after07 {
	0%   { width: 0; }
	20%  { width: 40%; }
	40%  { width: 40%; }
	60%  { width: 0; }
	80%  { width: 0; }
	100% { width: 0; }
}


/*part09*/
.part09 {
	background: #1d1d1d url(/web_2025/res/images/promotion/part09_bg_ver4.png) no-repeat right bottom / 60% auto;
	/*padding-top: 430px;
	padding-bottom: 320px;*/
}
.promo-part-wrap .promo-part.part09 .container {
	align-items: flex-start;
}
.part09 .part09-title {
	max-width: 72.7%;
	margin-top: 20%;
}
.part09 .mock-wrap {
	display: flex;
	gap:20px;
	align-items: flex-start;
	justify-content: space-between;
	margin-bottom: 10%;
	margin-top: 5.8%;
}
.part09 .part09-btn-wrap {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 20px;
	width: 100%;
}
.part09 .part09-btn-wrap a {
	position: relative;
	display: flex;
	align-items:center;
	justify-content: center;
	gap: 30px;
	width: 100%;
	max-width: 480px;
	padding: 20px 0;
	color: #fff;
	font-weight: bold;
	font-size: 30px;
	border-radius: 50px;
	border: 2px solid rgba(255, 255, 255, 0.30);
	box-shadow: 0 10px 10px 0 #28282F;
}
.part09 .part09-btn-wrap a.part09-btn01 img {max-width: 14%;}
.part09 .part09-btn-wrap a.part09-btn02 img {max-width: 11%;}
.part09 .part09-btn-wrap a span {padding-top: 1.7%;}
.part09 .part09-btn-wrap a:hover {
	border: 2px solid #9EF0FF;
	box-shadow: 0 10px 10px 0 #00064b;
}

@media (max-width: 1520px) {
	.part09 .mock-wrap .part09-mockup {max-width: 55%;}
	.part09 .part09-btn-wrap a {font-size: 26px; gap: 20px;}
}
@media (max-width: 860px) {
	.part09 .mock-wrap {
		flex-direction: column;
		align-items: end;
	}
	.part09 .part09-btn-wrap a {
		box-shadow: 0 5px 10px 0 #00064b;
		max-width: 400px;
		font-size: 24px;
	}
	.part09 .part09-btn-wrap a.part09-btn01 img {max-width: 11%;}
	.part09 .part09-btn-wrap a.part09-btn02 img {max-width: 9%;}
}
@media (max-width: 560px) {
	.part09 .part09-btn-wrap {gap: 10px;}
	.part09 .part09-btn-wrap a {
		max-width: 100%;
		font-size: 4vw;
		padding: 10px;
		gap: 15px;
	}
	.part09 .part09-btn-wrap a.part09-btn01 img {max-width: 9%;}
	.part09 .part09-btn-wrap a.part09-btn02 img {max-width: 7%;}
	.part09 .mock-wrap .part09-mockup {margin-right: 0; margin-top: 0;}
}
