@charset "utf-8";
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable.min.css");

body,
html {-webkit-text-size-adjust: none;}
body {font-family: "Pretendard Variable", "Malgun Gothic", "맑은 고딕", sans-serif;}
footer {margin-top:0;}

/* ========== global  ========== */
.joinEvent {position:relative; min-width:320px;}
.joinEvent * {box-sizing:border-box;}
.joinEvent section {position:relative; -webkit-text-size-adjust:none;}
.joinEvent .evt_area {position:relative; width:100%;}
.joinEvent .evt_inner {position:relative; padding:0 5.26vw; margin:0 auto;}
.joinEvent .tit_wrap,
.joinEvent .img_wrap {position:relative; text-align:center; margin:0 auto;}
.joinEvent .img_wrap img {display:block; max-width:100%;}
.joinEvent .btn_inner {padding:0 7.63vw;}

/* text */
.sr-only {position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;}

.nt_txt {margin-top:2.63vw; line-height:1; font-size:2.89vw; font-weight:500; color:#222; text-align:center;}

/* PC version */
.pc-more_btn {padding:1.3rem 1rem; background-color:#fff; text-align:center;}
.pc-more_btn a {display:block; padding:1rem 0; font-weight:bold; background:#f5f5f5;}
.pc-more_btn .btn_box1 {overflow:hidden; display:inline-block; background-color:#fff; min-width:6.1rem;
    padding:0.5rem 0.8rem 0.4rem; border: 0.1rem solid #696e7a; color: #3f3f3f; text-align:center;  vertical-align:middle;}


/* ========== contents  ========== */
/* main title  */
.main_title .group_gravity {position:absolute; left:0; right:0; bottom:max(calc(320px * 0.325), 32.50vw); text-align:center;}
.main_title .list_period {display:inline-grid; grid-template-columns:20.39vw max-content; column-gap:1.97vw; row-gap:2.37vw; align-items:start; text-align:left;}
.main_title .list_period dt,
.main_title .list_period dd {font-size:26px; font-size:3.421vw; color:#222; font-weight:600; vertical-align:middle;}
.main_title .list_period dt {width:20.39vw; padding:0.263vw 0; color:#fff; text-align:center; letter-spacing:-0.125vw; background:#015E50; border-radius:2.895vw;}
.main_title .list_period dd strong {font-weight:700;}
.main_title .list_period + .list_period {margin-top:17px; margin-top:2.237vw;}

.main_title .btn_join {position:absolute; left:0; right:0; bottom:13.95vw; width:84.86%; margin:0 auto;}

/* event done */
.pageDone {position:absolute; top:38%; left:60%; z-index:1; width:23%;}


/* cont1 */
#cont1 .nt_txt{position:absolute; left:0; right:0; bottom:max(calc(320px * 0.1053), 10.53vw);}

.randomBox {position:absolute; top:30.50%; left:0; right:0;}
.randomBox_btn {position:absolute; left:0; right:0; bottom:max(calc(320px * 0.1711), 17.11vw); width:53.94%; margin:0 auto;}
.event_section {position:relative; width:100%; height:91.97vw;}
.event_section .img_box {position:absolute; animation:sway 1.2s ease-in-out infinite alternate; transform-origin:center top; cursor:pointer;}
.event_section .img_box img {position:absolute; top:0; left:0;}
.event_section .img_box .hover {opacity:0;}
.event_section .img_box:hover .hover {opacity:1;}
.event_section .img_box:hover .default {opacity:0;}

.event_section .img_box.gift1 {top:17%; left:25%; width:17.89vw; height:17.76vw;}
.event_section .img_box.gift2 {top:17%; left:54%; animation-duration:1.4s; width:18.82vw; height:19.34vw;}
.event_section .img_box.gift3 {top:35%; left:38%; animation-duration:1.6s; width:13.68vw; height:21.97vw;}
.event_section .img_box.gift4 {top:37%; left:62%; animation-duration:1.3s; width:18.16vw; height:18.82vw;}
.event_section .img_box.gift5 {top:47%; left:17%; animation-duration:1.4s; width:15.66vw; height:19.21vw;}
.event_section .img_box.gift6 {top:63%; left:44%; animation-duration:1.2s; width:18.16vw; height:24.21vw;}
.event_section .img_box.gift7 {top:57%; left:69%; animation-duration:1.3s; width:16.71vw; height:21.32vw;}
.event_section .img_box.gift8 {top:75%; left:19%; animation-duration:1.5s; width:18.03vw; height:21.71vw;}
.event_section .img_box.gift9 {top:80%; left:60%; animation-duration:1.4s; width:15.79vw; height:18.03vw;}

.event_section .img_box:hover {animation:sway-hover 0.6s ease-in-out infinite alternate;}

/* 이미지 모션 */
@keyframes sway {
    0% {transform: rotate(4deg);}
    50% {transform: rotate(-6deg);}
    100% {transform: rotate(4deg);}
}

@keyframes sway-hover {
    0% { transform: rotate(0deg); }
    25% { transform: rotate(-4deg); }
    50% { transform: rotate(4deg); }
    75% { transform: rotate(-2deg); }
    100% { transform: rotate(0deg); }
}


/* cont2 */
#cont2 {text-align:center;}
#cont2 .gift_wrap {position:absolute; top:max(calc(320px * 0.6658), 66.58vw); left:0; right:0; margin:0 auto;}
#cont2 .gift_area {display:inline-block; position:relative;}
#cont2 .gift_area img {width:47.89vw; height:auto;}
#cont2 .gift_area .num_box {display:flex; justify-content:center; align-items:center; position:absolute; top:-4.61vw; right:-4.61vw; width:69px; height:69px; font-size:16px; font-weight:700; letter-spacing:-0.8px; color:#002876; text-align:center; background:#FCFF21; border-radius:100%;}
#cont2 .txt_area .logo_mega {margin-top:10px;}
#cont2 .txt_area h4 {margin-top:20px; line-height:1; font-size:40px; font-weight:600; color:#fff;}
#cont2 .txt_area h4 em {color:#00eac6;}
#cont2 .txt_area .nt_txt {margin-top:30px; color:#a5b2b5;}

#cont2 .evt_sp_wrap {position:absolute; top:max(calc(320px * 1.2132), 121.32vw); left:0; right:0; padding:0 7.63vw;}
#cont2 .evt_info_wrap {text-align:center;}
#cont2 .info_input {display:flex; flex-direction:column;}
#cont2 .info_input dt {margin-bottom:1.97vw; line-height:1; font-size:3.95vw; font-weight:600; color:#fff;}
#cont2 .info_input dd {margin-bottom:5.00vw;;}
#cont2 .info_input dd:last-child {margin-bottom:0;}
#cont2 .info_input input {width:75%; height:8.55vw; font-size:3.16vw; text-align:center; background:#fff; border:none; border-radius:5px;}

#cont2 .evt_check_wrap {display:inline-block; padding-left:3.68vw; margin-top:7.37vw; text-align:left;}
#cont2 .evt_check_wrap * {line-height:3.68vw; font-size:2.89vw; font-weight:500; color:#fff;}
#cont2 .evt_check_wrap input[type=checkbox] {width:2.24vw; height:2.24vw; min-width:12px; min-height:12px; margin-right:1.05vw; margin-left:-3.95vw; vertical-align:middle; border:1px solid #222; border-radius:0;}
#cont2 .evt_check_wrap .chk_label {display:block; font-weight:700;}
#cont2 .evt_check_wrap .agree_list {margin-top:5px;}
#cont2 .evt_check_wrap .agree_list li {margin-left:1.97vw; text-indent:-1.97vw;}
#cont2 .evt_check_wrap .agree_list li .udl {text-decoration:underline;}
#cont2 .evt_check_wrap .evt_comm {margin:1.97vw 0 2.63vw;}

#cont2 .evt_btn_wrap {position:absolute; left:0; right:0; bottom:max(calc(320px * 0.1053), 10.53vw); display:flex; flex-direction:column; gap:2.63vw; justify-content:center;}

/* cont3 */
#cont3 {padding-bottom:10.53vw; background:#EC2940;}
#cont3 .bnr_wrap li {margin-top:3.95vw;}
#cont3 .bnr_wrap li:first-child {margin-top:0;}


/* cont4 */
#cont4 {padding-bottom:7.89vw; background:#21825D;}

/* noticeWrap */
.noticeWrap {width:auto; margin-top:57px; margin-top:7.5%;}
.noticeWrap_title {display:block; margin:0 auto; padding:0.8rem 0 0.7rem; background:rgba(0, 0, 0, 0.3); font-size:4.2vw; font-weight:normal; text-align:center; cursor:pointer;}
.noticeWrap_title.sub {margin-bottom:0.5rem; padding:0; background:none; font-weight:bold; font-size:3.6vw; color:#3f3f3f; text-align:left;}
.noticeWrap_list + .noticeWrap_title {margin-top:5vw;}
.noticeWrap_txt {display:inline-block; position:relative; padding:0 1rem 0 0; font-weight:bold; color: #fff;}
.noticeWrap_txt:before {position:absolute; right:-2vw; top:50%; z-index:3; font-size:calc(100% - 1vw); content:"▼"; transform: translateY(-50%);}
.noticeWrap.on .noticeWrap_txt:before {content: "▲";}
.noticeWrap_inner {display:none; margin: 0; padding: 1rem; background: #fff;}
.noticeWrap_item {margin-top:2.63vw;}
.noticeWrap_item:first-child {margin-top:0;}
.noticeWrap_list {position: relative;}
.notice_item {position: relative; padding: 0 0 0 0.7rem; margin-bottom: 0.2rem; font-size:3.2vw; line-height: 1.4; letter-spacing: -0.5px; color: #3f3f3f; word-break: keep-all; word-wrap: break-word;}
.notice_item:before {position: absolute; left: 0; top: 0; z-index: 3; content: "-";}
.notice_link {display: inline-block; font-weight:bold; font-size:inherit; color:#802C24; text-decoration:underline;}


/* ========== popup  ========== */
/* winner-popup-overlay */
.winner-popup-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1000;
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s 0.5s, opacity 0.5s ease-out;
}
.winner-popup-overlay.active {
    visibility: visible;
    opacity: 1;
    transition: visibility 0s, opacity 0.5s ease-out;
}
.winner-popup-mszie {
    width: 100%;
    max-width: 375px;
    margin: 0 auto;
}
.winner-popup-content {
    min-width: 80%;
    max-width: 90%;
    margin: 0 auto;
    padding: 2rem 0 0;
    background: #fff;
    border-radius: 25px;
    text-align: center;
    transform: scale(0.8);
    transition: transform 0.3s ease-out;
}
.winner-popup-overlay.active .winner-popup-content {
    transform: scale(1);
}
.winner-popup-content h2 {
    padding: 0 0 2rem;
    border-bottom: 1px dashed #598bf4;
}
.winner-popup-content h2 > img {
    width: 64%;
    margin: 0 auto;
}
.winner-popup-content .winning-prize h3 {
    margin: 1.5rem 0;
    font-weight: bold;
    font-size: 15px;
    letter-spacing: -0.5px;
    color: #333;
    text-align: center;
}
.winner-popup-content .item-img {
    display: flex;
    margin: 0 0 2rem;
    align-items: center;
    justify-content: center;
}
.winner-popup-content .item-img > img {
    display: block;
    width: auto;
    height: auto;
    max-width: 150px;
    max-height: 150px;
}
.close-popup-button {
    display: block;
    width: 100%;
    padding: 1.5rem 0;
    background: #307ef9;
    border-radius: 0 0 25px 25px;
    font-weight: bold;
    font-size: 15px;
    color: #fff;
    text-align: center;
    cursor: pointer;
}
@media screen and (orientation: landscape) {
    .winner-popup-overlay {
        position: absolute;
    }
}