@charset "utf-8";


/* 입력 form */
html.firefox fieldset {display:table-cell !important;}
fieldset{ border: none;}
button, input[type='button'], input[type='reset'], input[type='submit'] {overflow:visible;} /* ie6 ~ ie7 버튼 길어짐 해결 css */
button:hover, input[type='button']:hover, input[type='reset']:hover, input[type='submit']:hover {text-decoration:none;}
button:hover span {text-decoration:none;}
input, select, textarea, input[type='number']{width:100%; color:#a4a9aa; border:none; background-color: #ffffff; -webkit-border-radius: 0px; -moz-border-radius: 0px; -o-border-radius: 0px; border-radius: 0px; -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
input{text-align:left; padding:15px 5px 14px 15px; font-size: 13px}
select{padding:8px 5px 7px 5px; background-image: url("http://appdata.hungryapp.co.kr/images/mobitalk/sub/select_arrow_gray02.png"); background-repeat: no-repeat; background-size:18px; background-position: right center; -webkit-appearance: none; -moz-appearance: none; -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
textarea{height:130px; padding:8px; border: 1px solid #dcdcdc;}
input[type='number']{padding:9px 5px 8px 5px; text-align:right;}
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {color : #747474; font-weight:400;}
label{color:#747474; }
input::placeholder {color: #dadbd6; opacity: 1; /* Firefox */}
input:-ms-input-placeholder { /* Internet Explorer 10-11 */ color: #727272;}
input::-ms-input-placeholder { /* Microsoft Edge */ color: #727272;}
:after, :before {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}
/* 푸터로 스크롤 시 슬라이더 기능 해제 */
.slider-container.normal-scroll {
    overflow-y: auto;
    scroll-behavior: smooth; /* 부드러운 스크롤 추가 */
}

.slider-wrapper.normal-scroll {
    transform: none !important;
    transition: none !important;
}
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

a{
    text-decoration: none;
    color: #fff;
}

img{
    max-width: 100%;
    display: block;   
}

li{
    list-style: none; 
}

button{
    border: none;
    cursor: pointer;
    background: none;
}
img.PC{
    display: block;
}
img.Mobile{
    display: none;
}

html, body{ /*251229 추가*/
  height: 100%;
  overflow: hidden;
}
body { /*251229 수정*/
    margin: 0;
    font-family:"Malgun Gothic", "맑은 고딕", helvetica, "Apple SD Gothic Neo", sans-serif;
    font-size: clamp(14px, 1vw + 0.5rem, 18px);
}



.slider-container::-webkit-scrollbar {
    width: 0px;
    background: transparent;
}

.slider-container { /*251229*/
    width: 100vw;
    height: calc(var(--vh, 1vh) * 100);
    overflow-y: hidden;
    position: relative;
    overscroll-behavior: none;
    
}
.slider-wrapper { 
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    transition: transform 0.8s ease-in-out;
}

.slide { /*251229*/
    min-height: calc(var(--vh, 1vh) * 100);
  height: calc(var(--vh, 1vh) * 100);
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: #fff;
    font-size: 1rem;
    box-sizing: border-box;
}

.area{
   width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    box-sizing: border-box;
}

.story > div {
    position: relative;
    z-index: 1; 
}

.title {
    position: relative;
    z-index: 1;
}

.title .tit_pc img {
    width: 100%;      
    max-width: 980px;
    height: auto;
}

.tit_pc img{
    margin: 0 auto;
    display: block;
}

.tit_m img{
    margin: 0 auto;
    display: none;
}


/* header */
header {

    width: 200px; 
    height: 100vh; 
    position: fixed;
    top: 0;
    left: 0px;
    display: flex;
    flex-direction: column; 
    justify-content: center; 
    z-index: 10;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    align-items: center;
}

header.scroll {
    padding: 5px;
}

header.scroll h1 img {
    width: 80%;
}


header h1 img {
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    width: 80%;
    margin: 0 auto;
}

header nav ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 50px 0;
}

header nav ul li {
      font-size: 16px;
      color: #fff;
      padding: 5px 0;
      
}

header nav ul li a {
    padding: 6px 30px;
    color: #fff;
}

header nav ul li a:hover {
      color: #feeabf;
      text-shadow: 0px 0px 10px #ff8f21;
}

header .out-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: right;
    -ms-flex-pack: right;
    justify-content: right;
}

header .out-btn li {
    width: 40px; 
    height: 40px; 
}

header .out-btn li a {
    display: block;
    width: 100%;
    height: 100%;
    background-size: contain; 
    background-repeat: no-repeat;
    background-position: center;
    transition: background-image 0.2s ease;
}

header .out-btn li a.btn-naver {
    background-image: url('https://appdata.hungryapp.co.kr/images/Events/chosunc1/naver.png');
}

header .out-btn li a.btn-naver:hover {
    background-image: url('https://appdata.hungryapp.co.kr/images/Events/chosunc1/naver_on.png');
}

header .out-btn li a.btn-hungry {
    background-image: url('https://appdata.hungryapp.co.kr/images/Events/chosunc1/hungry.png');
}

header .out-btn li a.btn-hungry:hover {
    background-image: url('https://appdata.hungryapp.co.kr/images/Events/chosunc1/hungry_on.png');
}
header .out-btn li:first-child {
    margin-right: 10px;
}

header .hamburger {
    display: none;
}

/* 백그라운드 */
.main_wrap{
    position: relative;
}

.re_wrap{
    background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/bg_02.jpg)no-repeat;
    background-position: center top;
    position: relative;
    background-size: cover;
}

.event_wrap1{
    background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/bg_03.jpg)no-repeat;
    background-position: center top;
    position: relative;
    background-size: cover;
}

.event_wrap2{
    background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/bg_04.jpg) no-repeat;
    background-position: center top;
    position: relative;
    background-size: cover;
}

.story_wrap {
    position: relative; 
    overflow: hidden; 
    
}
.story_wrap::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('https://appdata.hungryapp.co.kr/images/Events/chosunc1/bg_slide_03.jpg');
    background-size: cover; 
    background-position: center;
    transition: transform 8s ease-in-out; 
    z-index: -1; 
}

.story_wrap.active::before {
    transform: scale(1.2); 
}

.character_wrap{
    background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/bg_05.jpg)no-repeat;
    background-position: center top;
    position: relative;
    background-size: cover;
}

.feature_wrap{
    background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/bg_06.jpg)no-repeat;
    background-position: center top;
    position: relative;
    background-size: cover;
}
.media_wrap{
    background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/bg_07.jpg)no-repeat;
    background-position: center top;
    position: relative;
    background-size: cover;
    min-height: calc(var(--vh, 1vh) * 100);
    height: auto;
    overflow: hidden;
}

.slider-wrapper > :last-child {
    margin-top: auto;
}


video.con1_vid{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    min-height: 100%;
    min-width: 100%;
    height: auto;
    width: auto;
}
.bg_cover{
    background: rgb(0,0,0,0.5);
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 2;
    overflow: hidden;
}
.h_video{
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
}


#ch_int_video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%; /* 부모의 크기를 꽉 채움 */
    height: 100%; /* 부모의 크기를 꽉 채움 */
    z-index: 2;
}

.test{
    position: absolute;
    z-index: 3;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.main_play{
    margin-bottom: 10px;
}
.main_play img{
    margin: 0 auto;
    width: 100px;
}


.main_txt img{
    margin: 0 auto;
}
.main_btn{
    margin: 10px 0 30px;
    display: block;
    width: 100%;
    height: 100%;
    background-size: contain; 
    background-repeat: no-repeat;
    background-position: center;
    transition: background-image 0.2s ease;
}

.main_btn .btn-main {
    display: block;
    width: 100%;
    height: 110px;
    background: url('https://appdata.hungryapp.co.kr/images/Events/chosunc1/main_btn.png') no-repeat center center;
    background-size: contain;
    text-indent: -9999px;
}
.main_btn .btn-main:hover {
    background-image: url('https://appdata.hungryapp.co.kr/images/Events/chosunc1/main_btn_hover.png'); 
}

.store_btn{
    display: flex;
    justify-content: center;
}
.store_btn ul{
    display: flex;
    justify-content: center;
    
    margin: 0 auto;
    text-align: center;
}

.store_btn ul li{
    padding: 0 4px;
    width: 24%;;
}


/* 사전예약 */
.re_bg_char{
   position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: min(1100px, 90vw);   
    height: 100%;
    pointer-events: none;      
    z-index: 0;
}

.re_c_left,
.re_c_right{
    position: absolute;
    top: 25%;
    transform: translateY(-50%);
    width: 60%;         
    max-width: none;
}
.re_c_left{
    left: -17%;         
}
.re_c_right{
    right: -21%;
}

/* 왼쪽에서 나타나는 애니메이션 정의 */
@keyframes slideInLeft {
    from {
        transform: translateX(-100%); 
        opacity: 0;
    }
    to {
        transform: translateX(0); 
        opacity: 1;
    }
}

/* 오른쪽에서 나타나는 애니메이션 정의 */
@keyframes slideInRight {
    from {
        transform: translateX(100%); /* 시작 위치: 오른쪽 100% 밖 */
        opacity: 0;
    }
    to {
        transform: translateX(0); /* 끝 위치: 원래 위치 */
        opacity: 1;
    }
}

/* re_c_left와 re_c_right의 초기 상태 */
.re_wrap .re_c_left,
.re_wrap .re_c_right {
    opacity: 0; /* 애니메이션 시작 전에는 숨기기 */
}

/* 슬라이드가 활성화(active)되면 애니메이션 실행 */
.re_wrap.active .re_c_left {
    animation: slideInLeft 1.5s ease-out forwards;
}
.re_wrap.active .re_c_right {
    animation: slideInRight 1.5s ease-out forwards; 
}

.pre-item{
    margin: 0 auto;
    padding: 30px 0 10px;
    max-width: 685px;
    width: 100%;
    box-sizing: border-box;
}

.re_con{
    position: relative;
    padding: 0 !important;
}

.preorder_wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 1200px; 
    width: 100%;     
    margin: 0 auto;   
    padding: 0 20px; 
}

.form_wrap{
    background: rgba(15,15,15,0.8);
    border: 1px solid #7e6f5d;
    color: #fff;
    padding: 20px; 
    width: 100%;  
    box-sizing: border-box;
    max-width: 685px;
    margin: 0 auto;
}

.radio_txt{
    font-size: 17px;
    color: #e7d89d;
}

.radio ul{
    display: flex;
    justify-content: flex-start;
    margin-bottom: 10px;
}

.radio ul li {
    margin-right: 20px;
    color: #fff;
    display: flex;
    align-items: center;
    position: relative;
    cursor: pointer;
}

.radio_label {
    display: flex;
    align-items: center;
    color: #fff;
    cursor: pointer;
    position: relative;
    padding-left: 30px;
}

.radio_label:before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #fff;
    transition: all 0.3s ease;
}

.radio_input:checked + .radio_label:after {
    content: '';
    position: absolute;
    left: 4px;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background-color: #503d20;
    transition: all 0.3s ease;
}

.radio_txt {
    margin-left: 5px;
}

.radio_label:hover:before {
    border-color: #fff;
}

/* form_box */
.form_box{  
    display: flex;
    justify-content: space-between;
    width: 100%;     
    margin-bottom: 10px;
}
.fbox_1 input,
.fbox_2 input{
    width:calc(100% - 150px); 
    float: left; 
    color:#838383; 
    background-color: transparent ! important;
    height: 50px;      
    margin-right: 5px;
    border-bottom: 2px solid #d2b26b;
    outline: none ! important;

}

button.input_btn_style{
    background-color: #503d20;
    color: #fff;
    padding: 0 20px;
    width: 140px; 
    font-size: 14px;
}

.checkbox1{
    display: flex;
    justify-content: space-between;
}

.checkbox1 input{
    overflow: hidden;
    position: absolute;
    clip: rect(0 0 0 0);
    width: 1px;
    height: 1px;
    margin: -1px;
}

.checkbox2{
    display: flex;
    justify-content: space-between;
}

.checkbox2 input{
    overflow: hidden;
    position: absolute;
    clip: rect(0 0 0 0);
    width: 1px;
    height: 1px;
    margin: -1px;
}

span.chk_img{
    position: relative;
    width: 32px;
    height: 32px;
}

span.chk_img:before{
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 14px;
    height: 14px;
    margin: -7px 0 0 -7px;
    background-color: #fff;
    transform: rotate(45deg);
}

span.chk_img:after{
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 14px;
    height: 14px;
    margin: -7px 0 0 -7px;
    border: none;
    background-color: #500000;
    transform: rotate(45deg) scale(.5);
    opacity: 0;
    transition: opacity .3s;
}

.checkbox1 input:checked+.chk_img:after{
	opacity:1;
}

.checkbox2 input:checked+.chk_img:after{
	opacity:1;
}

label.chk_agree{
    display: flex;
    align-items: center;
    cursor: pointer;
    font-weight: 300;
    font-size: 16px;
    letter-spacing: -.54px;
    color: #fff;
}

button.chk_more{
    background: none;
    color: #cbba96;
    font-weight: 300;
}

.re_button img{
    width:300px;
    margin: 0 auto;
    
}

/* 레벨 달성 이벤트 */

.evt_wrap1{
    width: 100%;  
    box-sizing: border-box;
    max-width: 685px;
    margin: 0 auto;
    z-index: 2;
    position: relative;
}

.evt_wrap1 img{
    margin: 0 auto;
}
.naver_btn img{
    width: 300px;
    margin: 0 auto;
}

.evt1_bg_char {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: min(1200px, 90vw);
    height: 100%;
    pointer-events: none;
    z-index: 0;
}

.evt1_c_left1 {
    left: -12%;         
}

.evt1_c_right1 {
    right: -17%;        
}

.evt1_c_left1,
.evt1_c_right1 {
    position: absolute;
    top: 15%;
    transform: translateY(-50%);
    width: 60%;        
    max-width: none;
}


/* 사전예약 공유 이벤트 */
.event_wrap2 .evt_bg_char {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: min(1100px, 90vw); 
    height: 100%;
    overflow: visible;        
    pointer-events: none;
    z-index: 0;
}

.event_wrap2 .evt_c_left,
.event_wrap2 .evt_c_right {
    position: absolute;
    top: 20%;                 
    transform: translateY(-50%);
    width:60%;           
    max-width: none;
}

.event_wrap2 .evt_c_left {
    left: -24%;              
}
.event_wrap2 .evt_c_right {
    right: -24%;
}

.event_wrap2 .evt_c_left, .event_wrap2 .evt_c_right{
    opacity: 0;
}

.event_wrap2.active .evt_c_left{
    animation: slideInLeft 1.5s ease-out forwards;
}
.event_wrap2.active .evt_c_right{
    animation: slideInRight 1.5s ease-out forwards; 
    
}

.event_wrap1 .evt1_c_left1, .event_wrap1 .evt1_c_right1{
    opacity: 0;
}

.event_wrap1.active .evt1_c_left1{
    animation: slideInLeft 1.5s ease-out forwards;
}
.event_wrap1.active .evt1_c_right1{
    animation: slideInRight 1.5s ease-out forwards; 
    
}
.evt_wrap{
    position: relative;
    z-index: 2;
    max-width: 685px;
    margin: 0 auto;
}


.evt_box{
    display: flex;
    flex-direction: column;
    background-color: rgb(15,15,15,0.8);
    border: 1px solid #7e6f5d;
    align-items: center; 
    width:100%;            /* 기존 690px → 화면 비율로 */
    max-width: 685px;      /* 최대 너비 제한 */
    padding: 20px;         /* 패딩 조금 줄임 */
}

.evt_info {
    font-size: 16px;
    color: #928d89;
    margin-bottom: 20px;
}

.evt_step{
    margin: 0 auto;
}
.evt_link{
    margin: 0 auto;
}

.link{
    display: flex;
    justify-content: center;
    margin-bottom: 15px;
    width: 100%;
}

input.link_input{
    width: calc(100% - 150px);
    float: left;
    color: #838383;
    background-color: transparent ! important;
    height: 40px;
    margin-right: 5px;
    border-bottom: 2px solid #d3c4a3;
    outline: none ! important;
}

button.link_btn{
    background-color: #6c522c;/* 251218 */
    color: #dac9af; /* 251218 */
    padding: 0 15px;
    width: 100%;
    font-size: 16px;
    height: 47px; /* 251218 */
    display: flex; /* 251218 */
    justify-content: center; /* 251218 */
    align-items: center; /* 251218 */
    
}
span.copy_icon{ /* 251218 추가*/
    width: 19px;
    height: 21px;
    background: url('https://appdata.hungryapp.co.kr/images/Events/chosunc1/copy_icon.png') no-repeat center center;
    display: block;
    margin-right: 10px;
}
.sns_btn ul{
    display: flex;
    justify-content: space-between;
    margin: 18px 0px 5px;
}

.sns_btn ul li{
    width: 24.5%; /* 251218 */
    overflow: hidden;
}

.sns_btn ul li img{
    width: 60%;
    margin: 0 auto;
}

li.facebook{
    background-color: #3b589e;
}
li.kakao{
    background-color: #fbe300;
}
li.instagram{
    background-color: #fe1a4a;
}
li.naver{ /* 251218 */
    background-color: #00c73c;
}



/* 세계관 */
.story{
     display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center; 
    gap: 20vh;
    height: 100vh;

    
}
.story_bottom {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    z-index: 1;
    position: relative;
}
.story_txt{
    color: #dfd5c5;
    font-size: 16px;
    line-height: 22px;
    width: 80vw;
    max-width: 700px;
    height: 300px; /* 251219 수정 */
    overflow: hidden;
    position: relative; 
    font-weight: 300;
    
}

.story_txt p{
    position: absolute;
    width: 100%;
    top: 100%;
    animation: scrollUp 5s linear forwards;
    text-shadow: 0 2px 2px #000;
}

.story_txt p span{ /* 251219 추가 */
    color: #d9b270;
    font-size: 18px;
    font-weight: bold;
    display: inline-block;
    padding: 10px 0;
    
}

@keyframes scrollUp {
  0% {
    transform: translateY(0); /* 시작 위치 */
  }
  100% {
    transform: translateY(-100%); /* 위로 올라가서 사라지게 */
  }
}

.pagination_wrap{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-top: 20px; 
}

.pagination{
    align-items: center;
    -moz-column-gap: 0;
    column-gap: 0;
    display: flex;
}

.pagination_bullet {
    height: 30px;
    margin: 3px -4px 0;
    width: 30px;
    cursor: pointer;
    position: relative;
}

.pagination_bullet .bullet-shape{
    background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/img_pagination.png) 0 -408px no-repeat;
    display: block;
    height: 100%;
    width: 100%;
}
    
.pagination_bullet .bullet-shape:after {
    background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/img_pagination.png) 0 0 no-repeat;
    content: "";
    height: 80px;
    left: 50%;
    margin: -41px 0 0 -40px;
    opacity: 0;
    position: absolute;
    top: 50%;
    transition: opacity .3s ease;
    width: 80px;
    z-index: 5;
}

.pagination:nth-child(2) .bullet-shape:after {
  background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/img_pagination.png) 0 -81px no-repeat;
}
.pagination:nth-child(2):hover .bullet-shape:after {
  opacity: 1;
}

.pagination:nth-child(3) .bullet-shape:after {
  background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/img_pagination.png) 0 -162px no-repeat;
}
.pagination:nth-child(3):hover .bullet-shape:after {
  opacity: 1;
}

.pagination:nth-child(4) .bullet-shape:after {
  background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/img_pagination.png) 0 -243px no-repeat;
}
.pagination:nth-child(4):hover .bullet-shape:after {
  opacity: 1;
}

.pagination:nth-child(5) .bullet-shape:after {
  background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/img_pagination.png) 0 -325px no-repeat;
}
.pagination:nth-child(5):hover .bullet-shape:after {
  opacity: 1;
}

.pagination_bullet .bullet-text{
    font-size: 18px;
    left: 50%;
    padding-top: 55px;
    position: absolute;
    top: 0;
    transform: translate(-50%);
    transition: color .3s ease;
    white-space: nowrap;
    color: #625b49;
}
.pagination_bullet:hover .bullet-text {
  color: #d9b270;
  font-weight: bold;
}

.pagination_bullet:hover .bullet-shape:after {
  opacity: 1;
}

.pagination_bullet.is-hovered .bullet-shape:after {
  opacity: 1;
}

.pagination-line{
    background-color: #625b49;
    height: 1px;
    position: relative;
    width: 270px;
}

.pagination_bullet.is-hovered .bullet-text {
  color: #d9b270; 
  font-weight: bold;
}

/* 캐릭터 */
.character {
    position: relative;
    width: 100%;
    box-sizing: border-box;
    padding: 50px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.class_cont {
    display: flex; 
    flex-direction: column;
    align-items: flex-start;
    position: relative;
    max-width: 1200px;
    width: 100%;
}

.fade_area {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    width: 100%;
    margin-top: 20px;
    padding: 0 0 0px 0;
    position: relative;
    z-index: 2;
    gap: 0;
}

.name, .skill, .ch_video {
    width: 100%;
    max-width: 500px;
    text-align: left;
    margin-bottom: 20px;
}

.class_cont .char_list {
    display: flex;
    justify-content: flex-start;
    width: 100%;
    max-width: 500px;
    margin-top: 20px;
    position: relative;
    z-index: 1;
}

/* ====== 타입 이미지 (오른쪽 배경) ====== */
.type_img {
   position: absolute;
    right: -100px;
    bottom: 0;
    top: 0;
    width: 80%;
    max-width: 768px;
    height: 100%;
    background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/ch_img_01.png) no-repeat center;
    background-size: contain;
    z-index: 0;
}
.video-responsive {
    position: relative; 
    width: 100%;     
    padding-bottom: 56.25%;
    height: 0;       
    overflow: hidden;
    }

.video-responsive iframe {
    position: absolute;
    top: 0;          
    left: 0;         
    width: 100%;      
    height: 100%;     
}

/* 게임특징 */
.feat_wrap{
    width: 100%;        
    max-width: 1200px; 
    margin: 0 auto;
    position: relative;
    overflow: hidden;
}
.arrow{
    position: absolute; 
    top: 50%; 
    left: 0; 
    right: 0;
    transform: translateY(-50%); 
    display: flex;
    justify-content: space-between; 
    padding: 0 10px; 
}

.feat_img{
     width: 100%;          
    max-width: 980px;     
    margin: 0 auto;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.8);
    position: relative;
}

.feat_img img{
    width: 100%;          
    height: auto;
    display: block;
    margin: 0 auto;
}


ul.feat_list{
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    width: 100%;         
    max-width: 980px;
    padding-top: 15px;
}
ul.feat_list li{
    padding: 0 3px;
}
ul.feat_list li img{
    width: 100%;        
    height: auto;
    display: block;
}

li.store_img {
    position: relative;
}


li.store_img::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7); 
    z-index: 1; 
}

li.store_img.selected::after {
    display: none;
}


li.store_img:hover::after {
    display: none;
}

button.next{
    background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/next.png) no-repeat;
    width: 100px;
    height: 139px;
    border: none;
    cursor: pointer;
    
}

button.prev{
    background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/prev.png) no-repeat;
    width: 100px;
    height: 139px;
    border: none;
    cursor: pointer;
    
}

/* 미디어 */
.m_video1 {
  position: relative; 
  width: 100%; 
  padding-bottom: 56.25%; 
  height: 0; 
  overflow: hidden; 
}

.m_video1 iframe {
  position: absolute; 
  top: 0;
  left: 0;
  width: 100%; 
  height: 100%; 
}

.media_video{
    display: flex;
    justify-content: center;
}

.ir {
    width: 0;
    height: 0;
    overflow: hidden;
    font-size: 0;
    line-height: 0;
    position: absolute;
    left: 0;
    top: 0;
}
.m_video_wrap{
    display: flex;
    justify-content: center;
}

.m_video_wrap li{
    margin: 0 8px;
}

.m_video_wrap li div{
    position: relative
}
.m_video_wrap li div img{
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
}

.m_video_wrap li div a{
    display: block;
    width: 100%;
    height: 100%;
    background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/play_btn2.png) no-repeat center;
    background-size: 108px auto;
    position: absolute;
    top: 0;
    left: 0;
}

p.media_name{
    margin-top: 20px;
}

p.media_name img{
    margin: 0 auto;
    width: 45%;
}

/* 비디오 팝업 관련 CSS */
.modal-hidden {
    display: none;
}
.modal-visible {
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed; /* 화면에 고정 */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 9999;
}

.modal-content {
    position: relative;
    width: 90%;
    max-width: 800px;
    height: auto;
}

.video-container {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%; 
    height: 0;
}

.video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.close-button {
    position: absolute;
    top: -30px;
    right: 0;
    color: #fff;
    font-size: 40px;
    font-weight: bold;
    cursor: pointer;
    z-index: 10000;
}

/* footer */
.footer{
   width: 100%;
    background: #000;
    color: #fff;
    padding: 20px 0;
    position: relative;
    z-index: 2;
    margin-top: 0; 
}

.footer_wrap{
    margin: 0 auto;
    padding: 20px 0;
    line-height: 25px;
    text-align: center
}

p.footer_bold{
    font-size: 19px;
    margin-bottom: 10px;
    font-weight: 500;
    color: #d7d7d7;
}
.footer_txt1{
    font-size: 15px;
    color: #d7d7d7;
}
.footer_txt2{
    color: #999999;
    margin-top: 20px;
    font-size: 13px;
    line-height: 20px;
    text-align: center;
}
p.copyright{
    margin-top: 20px;
}


/* responsive */

/* ========== 모바일 ========== */

@media screen and (max-width: 767px) and (max-height: 1400px) {
    img.PC{
        display: none;
    }
    img.Mobile{
        display: block;
    }
    .slider-container {
        height: 100vh;
        overflow: hidden;
    }

    .slider-wrapper {
        display: flex;
        flex-direction: column;
        height: 100%;
        transition: transform 0.8s ease;
    }

    .slide {
        width: 100%;
        height: 100vh;
        min-height: 100vh;
        flex-shrink: 0;
        position: relative;
        overflow-y: auto;
    }

    .main_con{
        min-height: 100dvh;
    }

    .title .tit_m img {
        width: 90vw;  
        height: auto;
    }
    .modal-content {
        width: 95%;
    }
    .close-button {
        top: -40px;
        right: 0;
    }
    .area{
        padding: 60px 10px; 
        width: 95%;
}

    body {
        margin: 0;
        padding: 0;
        overflow-x: hidden; 
        overflow-y: auto; 
        font-family: "Malgun Gothic", "맑은 고딕", helvetica, "Apple SD Gothic Neo", sans-serif;
        color: #fff; 
        line-height: 1.6; 
        font-size: 16px; 
        min-height: 100vh;
        box-sizing: border-box;
}

    
 /*header*/
    header {
        width: 100% !important;
        height: 60px !important;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 1000;
        background: rgba(0, 0, 0, 0.9);
        padding: 0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
    }
    header.scroll {
        padding: 6px 20px;
    }
    header.scroll h1 img {
        width: 140px;
    }
    header.scroll .hamburger {
        top: 33px;
    }
    header nav ul{
        margin: 0;
    }
    header nav ul li {
        font-size: 1rem;
        color: #fff;
    }
    header h1 {
        margin: 0 auto 0 0;
        padding: 0;
    }
    header h1 img {
        height: 50px;
        width: auto;
        display: block;
        margin-left: 15px;
    }
    header nav {
        margin: 10px 0;
        display: none;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
        width: 100%;
    }
    header nav.open {
        display: block;
    }
    header nav.open ul {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        background: rgba(0, 0, 0, 0.9);
    }
    header nav.open ul li {
        width: 100%;
        text-align: center;
    }
    header .out-btn {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-right: 0;
        position: fixed;
        bottom: 70px;
        right: 10px;
        width: 50px;
    }
    header .out-btn li:first-child {
        margin-right: 0;
        margin-bottom: 10px;
    }
    header .hamburger {
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
        cursor: pointer;
        display: block;
        position: absolute;
        right: 20px;
        top: 14px;
        width: 40px;
        height: 40px;
        text-align: right;
    }
    header .hamburger span {
        display: block;
        width: 40px;
        height: 2px;
        background: #fff;
        position: absolute;
        right: 0;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
    }
    header .hamburger span:nth-child(1) {
        top: 0;
    }
    header .hamburger span:nth-child(2) {
        top: 13px;
    }
    header .hamburger span:nth-child(3) {
        top: 26px;
    }
    header .hamburger.open span:nth-child(1) {
        opacity: 0;
    }
    header .hamburger.open span:nth-child(2) {
        -webkit-transform: rotate(-40deg);
        transform: rotate(-40deg);
    }
    header .hamburger.open span:nth-child(3) {
        -webkit-transform: rotate(40deg);
        transform: rotate(40deg);
        top: 16px;
    }

    /* 백그라운드 */
    
    .re_wrap{
        background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/bg_m_02.jpg)no-repeat;
        background-size: cover;
        background-position: center top;
    }
    .event_wrap1{
        background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/bg_m_03.jpg)no-repeat;
        background-position: center top;
        background-size: cover;
    }
   .event_wrap2{
        background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/bg_m_04.jpg)no-repeat;
        background-position: center top;
        background-size: cover;
    
    }
    .story_wrap {
        background-image: url('https://appdata.hungryapp.co.kr/images/Events/chosunc1/bg_slide_05.jpg'); 
        background-repeat: no-repeat;
        background-size:cover;
        background-position: center top;
    }

    .character_wrap{
        background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/bg_m_05.jpg)no-repeat;
        background-size: cover;
        background-position: center top;
    }

    .feature_wrap{
        background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/bg_m_06.jpg)no-repeat;
        background-size: cover;
        background-position: center top;
    }
    .media_wrap{
        background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/bg_m_07.jpg)no-repeat;
        background-position: center top;
        background-size: cover;
    }
   
    
    .test {
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        width: 90%;
    }
    .main_btn{
        margin: 0px 0 10px;
    }
    .main_btn .btn-main {
        text-align: center;
        margin: 0 auto;
        padding-bottom: 20%;
        display: block;
        width: 60%;
        height: 0;
    }

    .main_play img {
        width: 15%;
    }
   

    /* 사전예약 */
    .re_bg_char{
        display: none;
    }

    .preorder_wrap {
        display: flex;
        flex-direction: column;
        justify-content: center;
        margin: 0 auto;
        gap: 0px;
        width: 100% !important;
    }

    button.input_btn_style{
        font-size: 0.9rem;
   
    }

    input{
        font-size: 0.7rem;
    }
    .radio_txt {
        font-size: 0.9rem;
    }

    label.chk_agree {
        font-size: 0.7rem;
    }
    
    button.chk_more {
        font-size: 0.7rem;
    }
    .fbox_1 input, .fbox_2 input {
        height: 40px;
    
    }
    .form_box{
        width: 100%;
    }

    .pre-item{
        margin: 0 auto;
        padding-bottom: 10px;
    }

    .pre-item img {
        width: 100%;
        height: auto;
        display: block;
        object-fit: contain;
    }
    .form_wrap{   
       flex: 1; 
        background: rgba(15,15,15,0.8);
         border: 1px solid #7e6f5d;
        color: #fff;
        padding: 20px;
        width: 100%;          
        margin: 0 auto;      
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .re_button img{
        width: 40vw;
    }
    .naver_btn img{
        width: 40vw;
    }

    

    /* 세계관 */
    .story_txt{
        width: 100%;
        font-size: 14px;
        line-height: 20px;
        margin-bottom: 20px;
        /* height: 100px;  251222 삭제 */
    }

    .story_txt p span{ /* 251219 추가 */
        font-size:16px;
    }
    .story{
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 40px; /* 251222 수정 */
        padding-top: 5rem; 
        padding-bottom: 5rem;
        height: calc(100vh - (5rem + 5rem)); 
    }

     .story_bottom {
        margin-top: auto;
    }
    .pagination_bullet .bullet-text{
        font-size: 0.8rem;
    }

    .pagination_wrap {
        width: 90%;
    }
    
    .pagination {
        display: flex;
        flex-grow: 1;
        align-items: center;
    }

    
    .pagination:last-child {
        flex-grow: 0;
      }
    
     .pagination-line {
        flex-grow: 1;
        width: auto; 
    }
    
    /* 게임특징 */
    .feat_wrap {
        width: 100%;
    }
    .feat_img {
        width: 100%;
        margin: 0 auto;
        box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.8);
    }

    .arrow button.next,
    .arrow button.prev {
        width: 50px;  
        height: 70px; 
        background-size: contain; 
    }

    /* 미디어 */
   .m_video_wrap li div a{
        display: block;
        width: 100%;
        height: 100%;
        background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/play_btn2.png) no-repeat center;
        background-size: 10vw;
        position: absolute;
        top: 0;
        left: 0;
    }

    .m_video_wrap {
        display: flex;
        flex-direction: column;
        width: 80%;
        align-items: center;
        margin: 0 auto;
    }
    
    .m_video_wrap li{
        margin: 15px 0;
    }
    
    p.media_name img{
        width: 70%;
    }

    /* 캐릭터 */
    .character {
        display: flex;
        flex-direction: column; 
        align-items: center;        
        justify-content: center;    
        min-height: 100vh;         
        padding: 150px 16px 100px;
        box-sizing: border-box;
        max-height: none;
    
}
    #art4.character_wrap.slide {
        min-height: auto;
        height: auto;
    }
    .class_cont {
        display: flex;
        flex-direction: column; 
        align-items: center;    
        justify-content: flex-start; 
        width: 90%;
        height: auto;
        padding: 0;
        margin: 0;
        position: relative;
        gap: 0;
    }

    .char_detail {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start; 
        width: 100%;
        flex-grow: 0; 
        margin: 0;
    }

    .class_cont .char_list {
        position: relative; 
        width: 90%;
        max-width: 400px;
        margin-top: 10px;
        justify-content: center; 
    }

    .fade_area {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-end;
        width: 100%;
        margin-top: -60%; 
        padding:0 ;
        position: relative;
        z-index: 2; 
        margin-left: 0;
    }
    .name, .skill, .ch_video {
        width: 80%;
        margin-bottom: 0px;
    }
    .type_img {
        position: relative;
        width: 90%;         
        max-width: 400px;  
        right: 0; 
        height: auto;        
        aspect-ratio: 1/1;  
        margin: 0 auto;     
        z-index: 1;
    }

    .name, .ch_video {
        position: relative; 
        width: 90%;
        max-width: 400px;
        margin: 5px auto;
        text-align: center;
    }
    .skill{
        width: 90%;
        margin-top: 5px;
    }
    .name img {
        width: 100%;
        margin: 0 auto;
        display: block;
    }

   /* 이벤트 */ 
    .evt_bg_char {
        display: none;
    }
    .evt1_bg_char {
        display: none;
    }

    .evt_step{
        margin: 1% 0;

    }
    .evt_link{
       margin: 1% 0;
    }
    
    .evt_info {
        font-size: 0.9rem;
    }

    .evt_wrap {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 100%;
    }
    
    .evt_box {
        padding: 25px;
        width: 100%;
    }
    input.link_input {
        width: calc(100% - 150px);
        height: 40px;
    }
    
    button.link_btn {
        font-size: 1.1rem;
    }
    
    .sns_btn ul li img{
        width: 60%;
    }
    div.naver img{
        width: 30%;
        
    }

    /* footer */
    .footer{
        padding: 0%;
    }
    .footer_wrap{
        width: 100%;
        padding: 5% 0;
    }

    p.footer_bold{
        font-size: 1.9vw;
        margin-bottom: 2%;
    }
    .footer_txt1{
        font-size: 1.5vw;
        line-height: 2.5vw;
    }
    .footer_txt2{
        margin-top: 3%;
        font-size: 1.2vw;
        line-height: 1.9vw;
    }
    p.copyright{
        margin-top: 3%;
    }
} 

@media screen and (max-width: 599px) { 

    .tit_pc img{
        margin: 0 auto;
        display: none;
    }

    .tit_m img{
        margin: 0 auto;
        display: block;
    }

    /* 사전예약 */
    label.radio_img {
        float:left; 
        width:15px; 
        height:15px; 
        background:url('https://appdata.hungryapp.co.kr/images/Events/chosunc1/radio_off.png') no-repeat; 
        background-size:15px 15px;
    }
    
    input[type="radio"]:checked.radio_img + label.radio_img {
        background:url('https://appdata.hungryapp.co.kr/images/Events/chosunc1/radio_on.png') no-repeat; 
        background-size:15px 15px;
    }
    span.chk_img{
        width: 20px;
        height: 20px;
    }

    span.chk_img:before{
        width: 10px;
        height: 10px;
    }

    span.chk_img:after{
        width: 10px;
        height: 10px;
    }
    
    .link{
        margin-bottom: 1%;;
    }

     .store_btn ul {
        display: flex;
        flex-wrap: wrap;            
        justify-content: center;     
        margin: 0 auto;
        text-align: center;
        width: 100%;                
    }

    .store_btn ul li {
        width: 50%;                 
        padding: 4px;               
        box-sizing: border-box; 
    }
    .form_box{
        margin-bottom: 5px;
    }
    .fbox_1 input,
    .fbox_2 input {
        width: calc(100% - 100px);
        height: 30px;
    }

    .radio_label {
        padding-left: 15px;
    }


    .radio_label:before {
        width: 15px;
        height: 15px;
    }

    .radio_input:checked + .radio_label:after {
        left: 2.5px;
        width: 10px;
        height: 10px;
    }

    button.input_btn_style{
        padding: 0;
        font-size: 0.6rem;
        width: 100px;
    }
    input{
        font-size: 0.6rem;
    }
    .radio_txt {
        font-size: 0.8rem;
    }

    label.chk_agree {
        font-size: 0.6rem;
    }
    
    button.chk_more {
        font-size: 0.6rem;
    }
    
    input.link_input {
        width: calc(100% - 100px);
        height: 30px;
        margin-right: 5px;
        float: left;
        color: #838383;
        background-color: transparent ! important;
        border-bottom: 2px solid #d3c4a3;
        outline: none ! important;
    }

    button.link_btn {
        font-size: 0.6rem !important;
        /*width: 100px;; 251218 삭제 */
        height: 30px !important;
    }

    span.copy_icon{ /* 251218 추가*/
        width: 19px;
        height: 21px;
        background: url('https://appdata.hungryapp.co.kr/images/Events/chosunc1/copy_icon.png') no-repeat center center;
        background-size: 60%;
        margin-right: 3px;
    }

    .story_txt{
        font-size: 0.8rem;
        line-height: 20px;
    }

    .story_txt p span{ /* 251219 추가 */
        font-size: 0.9rem;
    }
    .pagination_wrap{
        width: 90%;
    }
    .pagination_bullet .bullet-text{
        font-size: 0.8rem;
    }
    .evt_info {
        font-size: 0.6rem;
        margin-bottom: 0px;
    }
    .evt_box {
        padding: 10px;
    }

}

/* ========== 태블릿 ========== */
@media screen and (min-width: 768px) and (max-width: 1439px) {
    
    /* footer */
    .footer{
        padding: 0%;
    }
    .footer_wrap{
        padding: 3% 0;
    }

    p.footer_bold{
        font-size: 1.8vw;
        margin-bottom: 1%;
    }
    .footer_txt1{
        font-size: 1.2vw;
        line-height: 2.2vw;
    }
    .footer_txt2{
        margin-top: 2%;
        font-size: 1.1vw;
        line-height: 1.8vw;
    }
   .test{
    width: 80vw;
   }
    .area {
        max-width: 960px;
    } 

    .evt_wrap1{ /*251229*/
        width: 70%;
    }
    .evt_wrap{
        width: 70%;
    }
    .naver_btn img{
        width: 30vw;
    }

    .slider-container {
        width: 100%;
        height: 100vh;
        overflow-y: hidden;
    }
    .slider-wrapper {
        display: flex;
        flex-direction: column;
        height: fit-content;
        transition: transform 0.8s ease-in-out;
    }
    .slide {
        min-height: calc(var(--vh) * 100);
        height: 100%;
    }
     header {
        height: 70px; 
        padding: 0;
        display: flex;
        align-items: center;
        justify-content: space-between;
        background: rgba(0,0,0,0.8);
        position: fixed;
        width: 100%;
        z-index: 10;
        left: 0;
    }
    header h1 {
        margin: 0 auto 0 0;
    }

    header h1 img {
        width: 100px;
        height: auto;
        margin-left: 15px;
    }

    header .out-btn li img {
        width: 40px;
        height: auto;
    }

    header .hamburger {
        display: block;
        position: absolute;
        right: 20px;
        top: 20px;
        width: 40px;
        height: 40px;
        cursor: pointer;
        z-index: 20;
    }


    header .hamburger span {
        display: block;
        width: 40px;
        height: 2px;
        background: #fff;
        position: absolute;
        right: 0;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
    }
    header .hamburger span:nth-child(1) {
        top: 0;
    }
    header .hamburger span:nth-child(2) {
        top: 13px;
    }
    header .hamburger span:nth-child(3) {
        top: 26px;
    }
    header .hamburger.open span:nth-child(1) {
        opacity: 0;
    }
    header .hamburger.open span:nth-child(2) {
        -webkit-transform: rotate(-40deg);
        transform: rotate(-40deg);
    }
    header .hamburger.open span:nth-child(3) {
        -webkit-transform: rotate(40deg);
        transform: rotate(40deg);
        top: 16px;
    }
      
    header nav {
        display: none; 
        position: absolute;
        top: 70px;
        left: 0;
        width: 100%;
        background: rgba(0,0,0,0.8);
        z-index: 999;
    }

    header nav.open {
        display: block;
    }

    header nav ul {
        display: flex;
        flex-direction: column;
        align-items: center;
        margin: 0;
        padding: 0;
        list-style: none;
    }

    header nav ul li {
        width: 100%;
        text-align: center;
        font-size: 16px;
    }

    header nav ul li a {
        display: block;
        padding: 12px 0;
        color: #fff;
        text-decoration: none;
    }

    header .out-btn {
        position: fixed;
        bottom: 70px;
        right: 10px;
        width: 50px;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        z-index: 9999;
        margin-right: 15px;
    }

    header .out-btn li:first-child {
        margin-right: 0;
        margin-bottom: 10px;
    }

    .main_play img {
        width: 10%;
    }

    .fbox_1 input, .fbox_2 input {
        width: calc(100% - 120px);
        float: left;
        color: #838383;
        background-color: #fff;
        height: 40px;
        margin-right: 5px;
}
    button.input_btn_style{
        width: 120px;
        padding: 0;
    }

    /* 사전예약 */
    label.radio_img {
        float:left; 
        width:18px; 
        height:18px; 
        background:url('https://appdata.hungryapp.co.kr/images/Events/chosunc1/radio_off.png') no-repeat; 
        background-size:18px 18px;
    }
    
    input[type="radio"]:checked.radio_img + label.radio_img {
        background:url('https://appdata.hungryapp.co.kr/images/Events/chosunc1/radio_on.png') no-repeat; 
        background-size:15px 15px;
    }
    span.chk_img{
        width: 20px;
        height: 20px;
    }

    span.chk_img:before{
        width: 10px;
        height: 10px;
    }

    span.chk_img:after{
        width: 10px;
        height: 10px;
    }
    button.chk_more{
        font-size: 10px;
    }
    label.chk_agree{
        font-size: 13px;
    }

    .link{
        margin-bottom: 1%;;
    }
    .pagination_wrap {
        width: 90%;
    }
    
    .pagination {
        display: flex;
        flex-grow: 1; 
        align-items: center;
    }


    .pagination:last-child {
        flex-grow: 0;
      }
    
     .pagination-line {
        flex-grow: 1; 
        width: auto;
    }
    .arrow button.next,
    .arrow button.prev {
        width: 50px;   
        height: 70px;  
        background-size: contain; 
    }

    .character {
        position: relative;
        width: 100%;
        min-height: 100vh;
        box-sizing: border-box;
        padding: 50px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        overflow: hidden;
    }

    .class_cont {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        position: relative;
        max-width: 1200px;
        width: 100%;
    }

    .fade_area {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        width: 90%;
        margin-top: 20px;
        padding: 0 0 0px 0;
        position: relative;
        z-index: 2;
        gap: 0;
    }

    .name, .skill, .ch_video {
        width: 80%;
        max-width: 500px;
        text-align: left;
        margin-bottom: 20px;
    }


    .class_cont .char_list {
        display: flex;
        justify-content: flex-start;
        width: 100%; 
        max-width: 450px;
        margin-top: 20px;
        position: relative;
        z-index: 1;
    }


    input.link_input {
        width: calc(100% - 150px);
        float: left;
        color: #838383;
        background-color: transparent ! important;
        height: 40px;
        margin-right: 5px;
        border-bottom: 2px solid #d3c4a3;
        outline: none ! important;
}

    .m_video_wrap li div a{
        background-size:7vw;
    }

    button.link_btn {
        font-size: 16px;
        height: 40px;
    }

    .evt_info{
        font-size: 13px;
    }
    .preorder_wrap{
        width: 70%;

    }
    .evt1_c_left1,
    .evt1_c_right1 {
        width: 65% !important; 
        top: 20% !important;       
    }

    .evt1_c_left1 {
        left: -20% !important;         
    }

    .evt1_c_right1 {
        right: -25% !important;        
    }

}
/* 갤럭시 폴드 5, 6, 7 펼친 화면 (메인 디스플레이) 타겟팅 */ /* 251229 추가 */
@media screen and (min-width: 600px) and (max-width: 800px) {

    /* 여기에 폴드 전용 스타일 작성 */
    .re_con {
        width: 60vw !important; /* 가로가 좁으므로 콘텐츠 폭을 넓힘 */
        max-width: 70% !important;
    }
        .form_box {
        margin-bottom: 3px;
}
    .fbox_1 input, .fbox_2 input {
        height: 30px;
    }
    button.input_btn_style {
        font-size: 0.8rem;
    }
    .pre-item {
        padding: 10px 0 10px;
    }
    .radio_label {
        padding-left: 20px;
    }

    .event1  {
        width: 60vw !important; /* 가로가 좁으므로 콘텐츠 폭을 넓힘 */
        max-width: 70% !important;
    }

    .event2  {
        width: 60vw !important; /* 가로가 좁으므로 콘텐츠 폭을 넓힘 */
        max-width: 70% !important;
    }

    .feature{
        width: 70vw !important; /* 가로가 좁으므로 콘텐츠 폭을 넓힘 */
        max-width: 70% !important;
    }
    .story{
        width: 60vw !important; /* 가로가 좁으므로 콘텐츠 폭을 넓힘 */
        max-width: 70% !important;
    }
    .evt_info{
        font-size: 0.7rem;
    }
    .media{
        width: 90vw !important; 
        max-width: 90% !important;
    }
    .main_btn .btn-main {
        width: 40%;
    }
    .re_button img{
        width: 30vw;
    }
    .naver_btn img {
        width: 30vw;
    }
    .evt_box {
        padding: 10px;
    }
    .character{
        width: 80vw !important; 
        max-width: 80% !important;
        padding: 100px 16px 100px
    }

    .class_cont {
        display: flex;
        flex-direction: column;
        align-items: flex-start !important;
        position: relative;
        max-width: 80%;
        width: 80%;
    }
    .fade_area {
        display: flex;
        flex-direction: column;
        align-items: flex-start ; 
        justify-content: flex-start;
        width: 40vw;
        margin-top: 0px;
        padding: 0 0 0px 0;
        position: relative;
        z-index: 2;
        gap: 0;
    }

    .char_detail {
        width: auto;
    }

    .type_img {
        position: absolute;
        right: -100px;
        bottom: 0;
        top: 0;
        width: 80%;
        max-width: 768px;
        height: 100%;
        background: url(https://appdata.hungryapp.co.kr/images/Events/chosunc1/ch_img_01.png) no-repeat center;
        background-size: contain;
        z-index: 0;
}

    .name, .skill, .ch_video {
        width: 100%;
        max-width: 500px;
        text-align: left !important;
        margin-bottom: 0px;
    }

    .m_video_wrap{
        display: flex;
        flex-direction: inherit;
        justify-content: center;
    }
    .m_video_wrap li {
        margin: 0 5px;
    }

    button.link_btn {
        font-size: 0.8rem;
        height: 30px;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    span.copy_icon {
        background-size: 55%;
        margin-right: 3px;
    }
    .link{
        margin-bottom: 5px;
    }

    .sns_btn ul {
        display: flex;
        justify-content: space-between;
        margin: 5px 0px 0px;
    }
    .evt_info{
        margin-bottom: 5px;
    }

}

/* ========== PC 공통 ========== */
@media screen and (min-width: 1024px) {
    .slider-container {
        height: 100vh;
        height: calc(var(--vh, 1vh) * 100);
    }
    
    .media_wrap {
        min-height: 100vh;
        min-height: calc(var(--vh, 1vh) * 100);
        height: auto;
    }
   /* 캐릭터 섹션 전체 높이 & 가운데 정렬 */
  .character {
        min-height: 100vh;
        max-height: 100vh;
        padding: 80px 0;
        box-sizing: border-box;
        margin: 0 auto;
    }

  /* 왼쪽 컨텐츠 영역: 오른쪽에 캐릭터 들어갈 자리만 비워두기 */
  .character .class_cont {
        max-width: 900px;
        width: 100%;
        margin: 0 auto;
        padding-right: 0px; /*251229*/
        position: relative;
    }

  .character .fade_area,
  .character .class_cont .char_list {
        max-width: none;
        width: 100%;
    }
  .character .class_cont .char_list {
        display: flex;
        gap: 1px;    
        width: 420px;
        margin-top: 0;
  }

  .character .class_cont .char_list li {
      flex: 0 0 auto;
  }
.character .class_cont .char_list img {
        width: 90px;   
        height: auto;
}

  .character .type_img {
        position: absolute;
        top: 50%;
        right:-13%;
        margin-left: 0;                
        width: 80%;  
        max-width: 600px;
        transform: translateY(-50%); 
        z-index: 0;
  }
    .feat_img {
        max-width: 800px;  
    }

    .arrow button {
        width: 60px;      
        height: 80px;    
        background-size: contain;
    }

    ul.feat_list {
        max-width: 800px; 
        gap: 10px;        
        padding-top: 20px;
    }

}

/* ========== 노트북 / 맥북 ========== */
@media screen and (min-width: 1440px) and (max-width: 1919px) {

    .area{
        max-width: 1140px;
        padding: 60px 0 !important;
    }

    .title .tit_pc img {
        width: 50vw;  /* 화면 너비의 90% */
        height: auto;
    }

}

/* ========== 데스크탑 ========== */
@media screen and (min-width: 1921px) {
    header{
        width: 350px;
    }
    header nav ul li {
        font-size:1.2rem;
}
    header .out-btn li{
        width: 50px;
        height: 50px;
    }
    .pre-item{
        max-width: 40vw; 
    }
    .pre-item img{
        width: 100%;
    }
    .form_wrap{
        max-width: 40vw;
    }
    .evt_wrap1 {
        max-width: 40vw;
    }
    .evt_wrap{
        max-width: 40vw;
    }
        
    .evt_box{
        max-width: 40vw;
    }
  .area {
        width: 70vw !important;
        max-width: 1440px !important; /* 너무 넓지 않게 */
        padding: 60px 0 !important;
  }
  .evt_bg_char {
        position: absolute;
        top: 0;
        left: 50%;
        width: 90vw;
        transform: translateX(-50%);
        height: 100vh;
        overflow: hidden;
        display: block;
        z-index: 0;
}
    .event_wrap2 .evt_bg_char {
        width: min(1440px, 90vw); 
}
    .evt1_bg_char {
        width: min(1300px, 90vw);
}
    .re_bg_char {
        width: min(1550px, 90vw);
}
    .character .class_cont {
        padding-right: 0px;
    }

    .re_c_left, .re_c_right {
        width: 55%;
    }

}
/* ========== 초대형 해상도 대응 (예: 4K 모니터) ========== */
@media screen and (min-width: 2100px) and (max-width: 2200px) and (min-height: 1500px) and (max-height: 1600px) {

    .slider-container {
        height: 100vh;
        overflow-y: hidden;
    }
    .slider-wrapper {
        display: flex;
        transition: transform 0.8s ease-in-out;
    }
    .slide {
        min-height: calc(var(--vh) * 100);
        height: 100%;
    }

}



/* 울트라 와이드 모니터 대응 (3840px 포함) */ /*251229 수정*/
@media screen and (min-width: 2560px) {

    .area {
        max-width: 800px !important; /* 화면에 맞춰 적절히 조절 */
        width: 80vw !important;
    }
    .character{
        max-width: 1000px !important; /* 화면에 맞춰 적절히 조절 */
        width: 80vw !important;
    }
    .media{
        max-width: 1000px !important; /* 화면에 맞춰 적절히 조절 */
        width: 80vw !important;
    }


}