body {
  scroll-behavior: smooth; /* 부드러운 스크롤 적용 */
}

/* fixed 야이콘 */
.fixed-icon {
    position: fixed;
    z-index: 99;
    display: flex;
    flex-direction: column;
    gap: 20px;
    bottom: 70px;
    right: 40px;
}
.fixed-icon a:last-child { 
    display: none; 
}

@media all and (max-width:768px) {
.fixed-icon {
  bottom: 20px;
  right: 10px;
  gap: 10px;
}
.fixed-icon a {
  width: 80px;
  height: 80px;
}
.fixed-icon a:last-child { 
  display: inline-block; 
}
}

/* 공통 */

.section { position: relative; width:100%; height:100%; margin: 0 auto; min-height: 100vh;}

.container {
  width: 1280px;
}

section.section h2 {
    text-align: center; 
    font-size: 48px; 
    font-weight: 900;
    text-align: center;
    margin-bottom: 60px;
    color: #242424;
}
section.section h2 span {
    display: block;
    margin-bottom: 10px;
    font-style: italic;
    font-size: 24px;
    color: #ea0a2a;
    font-weight: 800;
}

.alert_message {
    display: flex;
    align-items: center;
    font-size: 16px;
    color: #dc2525;
    justify-content: center;
  }
  
  .alert_icon {
    display: inline-block;
    width: 22px;
    height: 22px;
    background-color: #dc2525;
    color: white;
    border-radius: 50%;
    font-size: 16px;
    text-align: center;
    line-height: 20px;
    margin-right: 5px;
    font-weight: 900;
  }
  
.alert_text {
    line-height: 1.4;
    text-align: center;
  }

.pc{ display: block;}
.mo{ display: none; }
  
  
@media all and (max-width:768px) {
      .pc{ display: none; }
      .mo{ display: block;}
  }  

@media screen and (min-width:2000px) {
	/*.section .con {padding-top: 0px;}*/
}

@media all and (max-width:1500px) {
    .section {
        min-height: 960px;
    }
    .sec03 .box {
        width: 100% !important;
        display: flex;
    }
}

@media all and (max-width:768px) {
    .section {
        min-height: auto;
    }
    .container{
      width: auto;
    }
    section.section .container {
      width: 100%;
      padding: 0 20px;
  }
  .section.section h2 {
      font-size: 28px;
      margin-bottom: 40px !important;
  }
  .section.section h2 span {
      font-size: 18px;
      margin-bottom: 10px;
  }
    .alert_message {
        display: flex;
        font-size: 14px;
        flex-wrap: wrap;
        gap: 10px;
      }
      
      .alert_icon {
        width: 18px;
        height: 18px;
        font-size: 16px;
        line-height: 18px;
      }
      
    .alert_text {
        line-height: 1.4;
      }
}

/* header */
#gnb_layout {
    position: fixed;
    top: 0;
    width: 100%;
    min-width: 1920px;
    background-color: #fff;
    border-bottom: 1px solid #ddd;
    z-index: 99;
  }
  #gnb_layout .container {
    width: auto;
    height: 80px;
    padding: 0 80px;
  }
  #gnb_layout .logo {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 99;
    font-size: 0;
    margin: 0;
    padding-left: 0;
  }
  #gnb_layout .logo img {
    height: 60px;
    width: auto;
  }
  
  
  /* GNB 메뉴 스타일 */
  #gnb_layout .gnb {
    position: relative;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
  }
  #gnb_layout ul{
    text-align: center;
  }

  #gnb_layout .gnb .dept1 {
    display: inline-block;
    position: relative;
  }
  #gnb_layout .gnb .dept1 a {
    display: inline-block;
    padding: 0 30px;
    line-height: 84px;
    font-size: 18px;
    font-weight: 700;
    color: #333;
  }
  #gnb_layout .gnb .dept1 a:hover,
  #gnb_layout .gnb .dept1 a.active,
  #gnb_layout .gnb .dept1.on > a {
    color: #dc2525;
    font-weight: 800;
  }
  #gnb_layout .gnb .dept2 {
    display: none;
    position: absolute;
    top: 84px;
    left: 50%;
    margin-left: -100px;
    width: 200px;
    padding: 10px 0;
    background-color: #fff;
    box-shadow: 0 5px 10px 0 rgb(0 0 0 / 10%);
  }
  #gnb_layout .gnb .dept2 a {
    display: block;
    font-size: 15px;
    line-height: 40px;
    color: #999;
    font-weight: 300;
  }
  #gnb_layout .gnb .dept2 a:hover {
    color: #ff3f75;
    font-weight: 500;
  }
  #gnb_layout .gnb span {
    font-weight: 600;
  }
  
  /* GNB 우측 유틸 영역 */
  #gnb_layout .utill {
    position: absolute;
    top: 0;
    right: 40px;
    display: inline-grid;
    grid-template-columns: repeat(3, auto);
    grid-gap: 20px;
  }
  #gnb_layout .utill img {
    margin-top: 20px;
  }
  #gnb_layout .utill:after {
    content: '';
    display: block;
    clear: both;
  }
  #gnb_layout .utill a {
    float: left;
  }
  #gnb_layout .utill .en_btn {
    font-size: 15px;
    font-weight: 500;
    color: #222;
    line-height: 84px;
    letter-spacing: 0;
    display: block;
  }
  #gnb_layout .utill .all_menu {
    width: 30px;
    height: 21px;
    margin-top: 32px;
    background: url('/img/renewal/all-menu.png') center no-repeat;
  }
  
  /* GNB 우측 버튼 (채팅/스폰서) */
  
  #gnb_layout .gnb-btn {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(0%, -50%);
    display: flex;
    gap: 30px;
    z-index: 99;
    font-size: 18px;
    font-weight: 700;
    color: #333;
  }

  #gnb_layout .gnb-btn a:hover{
    color: #dc2525; /* 강조 컬러 */
    font-weight: 800;
  }

  .gnb-spon a::before {
    content: "";
    display: inline-block;
    width: 40px;
    height: 40px;
    background-image: url("/img/btn_spon.png");
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 8px;
    vertical-align: middle;
  }
  
  .gnb-chat a::before {
    content: "";
    display: inline-block;
    width: 40px;
    height: 40px;
    background-image: url("/img/btn_chat.png");
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 8px;
    vertical-align: middle;
  }
  
  /* 사이드 메뉴 (모바일 등) */
  #gnb_layout .side-menu {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    min-width: 360px;
    height: 100%;
    background-color: rgba(255, 255, 255, 1);
    z-index: 99999;
  }
  #gnb_layout .side-close {
    text-align: right;
  }
  #gnb_layout .side-close button {
    padding: 40px 65px 0 0;
  }
  #gnb_layout .side-menu > ul {
    width: 1600px;
    height: 480px;
    margin: 160px auto;
  }
  #gnb_layout .side-menu > ul > li {
    float: left;
    width: calc(100% / 7);
    height: 410px;
    padding-top: 65px;
    text-align: center;
    display: block;
    border-right: 1px solid #efefef;
  }
  #gnb_layout .side-menu > ul > li:last-child {
    border-right: none;
  }
  #gnb_layout .side-menu > ul > li > a {
    font-size: 22px;
    font-weight: 700;
    color: #222;
  }
  #gnb_layout .side-menu > ul > li > .sub {
    margin-top: 30px;
  }
  #gnb_layout .side-menu > ul > li > .sub > li > a {
    font-size: 18px;
    line-height: 48px;
    color: #999;
  }
  #gnb_layout .side-menu > ul > li > .sub > li > a:hover {
    color: #ff3f75;
    font-weight: 500;
  }


/* 1850px 이하: 최소 너비 해제 */
@media all and (max-width: 1850px) {
  #gnb_layout {
    min-width: auto;
  }
}

/* 1720px 이하: gnb 패딩 조정 */
@media all and (max-width: 1720px) {
  #gnb_layout .gnb {
    /* padding-left: 76px; */
  }
}

/* 1500px 이하: gnb 패딩 제거 */
@media all and (max-width: 1500px) {
  #gnb_layout .gnb {
    padding-left: 0;
  }
    #gnb_layout .gnb .btn-chat {
        right: 20px;
    }
    #gnb_layout .gnb .dept1 a {
        padding: 0 15px;
    }
}

/* 1280px 이하: 데스크탑 > 태블릿 대응 */
@media all and (max-width: 1280px) {
  #gnb_layout .container {
    padding: 0 20px;
  }

  #gnb_layout .mobile.nav .top .logo {
    transform: none;
  }

  #gnb_layout .mobile.nav .top .logo img {
    margin-top: 18px;
  }

  #gnb_layout .utill {
    grid-gap: 0;
  }

  #gnb_layout .utill img,
  #gnb_layout .utill .all_menu {
    display: none;
  }

  #gnb_layout .utill .en_btn {
    color: #ff3f75;
    margin-right: 40px;
  }

  #gnb_layout .gnb .dept1 a {
    padding: 0 15px;
    font-size: 16px;
}
  #gnb_layout .gnb-btn{
    font-size: 16px;
    font-weight: 600;
}
  #gnb_layout .gnb-chat a::before{
    width: 30px;
    height: 30px;
}
  #gnb_layout .gnb-spon a::before{
    width: 30px;
    height: 30px;
}

}

/* 768px 이하: 모바일 대응 */
@media all and (max-width: 768px) {
  nav.gnb {
    display: none;
  }

  #open-sitemap {
    background: url(/img/all_menu.png);
  }

  #gnb_layout .mobile.nav .top .logo {
    width: auto;
  }

  #gnb_layout .logo img {
    height: 50px;
  }

  #gnb_layout .mobile.nav .top .logo img {
    margin-top: 15px;
  }

  #gnb_layout .mobile.nav.on {
    background: #ffffff;
  }

  #gnb_layout .mobile.nav > ul > li > a {
    color: #222222;
  }

  #gnb_layout .mobile.nav > ul > li > a > img {
    vertical-align: top;
    margin-top: 5px;
    margin-bottom: 10px;
  }
  #gnb_layout .gnb-btn {
    position: static;
    transform: none;
    align-self: flex-start;
    margin-bottom: 8px;
    flex-wrap: wrap; 
  }

  #gnb_layout .gnb-btn a img {
    height: 28px;
  }
  
}

/* 섹션01 메인비주얼 */
.section.sec01 {
    position: relative;
    min-height: auto;
    display: block;
    height: 1154px;
    background: url(/img/main/visual_pc.png) no-repeat center bottom;
    background-size: cover;
    
}
.main_title{
    height: 100%;
    position: relative;
    text-align: center;
}
.main_visual_title{
    position: absolute;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.section.sec01 .dday{
    margin-top: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.section.sec01 .dday .dday_line {
    display: flex;
    gap: 15px;
    background: #ffd54b;
    border: 1px solid #fff;
    border-radius: 10px;
    padding: 10px 30px; 
    box-shadow: 8px 8px 0 #e0e0e0;
}
.section.sec01 .dday p,
.section.sec01 .dday span {
  font-size: 48px;
  color: #231815;
  font-weight: 900;
  text-shadow: 
  -1px -1px 0 #fff,
   1px -1px 0 #fff,
  -1px  1px 0 #fff,
   1px  1px 0 #fff;
}
.section.sec01 .dday p {
  letter-spacing: 2px;
}
.section.sec01 .dday span {
  letter-spacing: 3px;
}

@media (max-width: 1920px) {
    .section.sec01 .btn_wrap {
        bottom: 100px;
    }
}
@media (max-width: 1600px) {
    .section.sec01 .btn_wrap {
        bottom: 100px;
    }
}

@media all and (max-width:768px) {
    .section.sec01 {
        background: url(/img/main/visual_mo.png) no-repeat center;
        height: 600px;
        background-size: cover;
    }
    .main_visual_title {
        position: absolute;
        width: 340px;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
}
    .section.sec01 .dday{
        margin-top: 15px;
    }
    .section.sec01 .dday .dday_line {
        display: flex;
        gap: 10px;
        border: 1px solid #fff;
        border-radius: 10px;
        padding: 5px 25px;
        box-shadow: 3px 3px 0 #e0e0e0;
    }
    .section.sec01 .dday p {
        font-size: 28px;
        letter-spacing: -1px;
    }
    .section.sec01 .dday span {
        font-size: 28px;
        letter-spacing: -1px;
    }
    .section.sec01 .btn_wrap {
        bottom: 100px;
        gap: 10px;
    }
    .section.sec01 .btn_wrap a {
        font-size: 16px;
        padding: 12px 45px;
    }
}

/* 섹션02 인트로 */ 

.section.sec02 {
    position: relative;
    width: 100%;
    background: url('/img/sub/sec02_bg.png') no-repeat center top;
    background-size: cover;
    display: flex;
    align-items: center;
    min-height: 60vh;
}
section.sec02 .container {
    width: 100%;
}
.section.sec02 .con-txt .txt p {
    font-size: 32px;
    font-weight: 600;
    color: #393939;
}
.section.sec02 .con-txt .txt .tit_top{
    font-size: 20px;
    font-weight: 400;
    color: #6b6b6b;
}
.section.sec02 .con-txt .txt p b {
    font-size: 30px;
    font-weight: normal;
}
.section.sec02 .con-txt .txt h6 {
    font-size: 36px;
    color: #fff;
    margin-bottom: 10px;
    font-weight: 900;
}
.section.sec02 .con-txt .txt h6 b {
    position: relative;
    font-size: 48px;
    font-weight: 900;
    color: transparent;
    background: linear-gradient(90deg, #ea0a2a, #0059a3);
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.section.sec02 .con-txt {
    display: flex;
    padding: 0px 120px;
    gap: 50px;
    align-items: center;
    justify-content: center;
    padding: 50px 0;
}
.section.sec02 .btn_wrap {
    display: flex;
    font-size: 22px;
    margin-top: 30px;
    color: #dc2525;
    gap: 30px;
}
.section.sec02 .btn_wrap a {
    display: inline-block;
    padding: 10px 70px;
    background: #ea0a2a;
    color: #fff;
    border: 1px solid #ea0a2a;
    border-radius: 10px;
    box-shadow: 4px 4px 0 #e0e0e0;
    font-weight: 700;
}
.section.sec02 .btn_wrap a:nth-child(2) {
    background: #fff;
    color: #ea0a2a;
    border: 1px solid #ea0a2a;
}

@media (max-width: 1600px) {
    .section.sec02 .con-txt .txt .tit_top {
        font-size: 16px
    }
    .section.sec02 .con-txt .txt p{
        font-size: 20px;
    }
    .section.sec02 .con-txt .txt h6 b {
        position: relative;
        font-size: 30px;
    }
    .section.sec02 .btn_wrap {
         font-size: 18px;
}

}
@media all and (max-width:768px) {
    .section.sec02 {
      position: relative;
      width: 100%;
      height: auto;
      background: url('/img/sub/sec02_bg_mo.png') no-repeat center top;
      background-size: cover;
      display: flex;
      align-items: center;
    }
  
    .section.sec02 .con-txt {
      flex-direction: column;
      gap: 50px;
      padding: 70px 0;
      text-align: center;
    }
  
    .section.sec02 .spon_wrap {
      flex-direction: column;
      padding: 20px 30px;
      gap: 10px;
    }
  
    .section.sec02 .spon_wrap h4 {
      font-size: 18px;
    }
  
    .section.sec02 .spon_wrap .bx-controls.bx-has-controls-direction {
      display: none;
    }
  
    .sec02 .tit h3 {
      font-size: 26px;
    }
  
    .sec02 .tit h3 b {
      font-size: 34px;
    }
  
    .sec02 .tit h3 b:before {
      display: none;
    }
  
    .sec02 .tit p {
      font-size: 14px;
    }
  
    .section.sec02 .con-txt .txt {
      text-align: center;
    }
  
    .section.sec02 .con-txt .txt .tit_top {
      font-size: 14px;
    }
  
    .section.sec02 .con-txt .txt p,
    .section.sec02 .con-txt .txt p b,
    .section.sec02 .con-txt .txt h6 {
      font-size: 20px;
    }
  
    .section.sec02 .con-txt .txt h6 b {
      font-size: 28px;
    }
  
    .section.sec02 .con-txt img {
      width: 85%;
    }
  
    .section.sec02 .btn_wrap {
      display: grid;
      justify-content: center;
      gap: 15px;
    }
  
    .section.sec02 .btn_wrap a {
      clip-path: none;
      padding: 10px 60px;
      font-size: 18px;
    }
  
    .section.sec02 .btn_wrap a:nth-child(2) {
      padding: 12px 80px;
      font-size: 20px;
    }
}


/* 스폰서 섹션 */

.section.sec-spon{
    min-height: 0 !important;
    border-top: 1px solid #e9e9e9;
}

.section.sec-spon .spon_wrap {
    display: flex;
    gap: 30px;
    background: #fff;
    padding: 25px 10px;
    align-items: center;
}
.section.sec-spon .spon_wrap h4 {
    font-size: 24px;
    font-weight: 900;
}

/* 이전/다음 버튼 커스터마이징 */
.section.sec-spon .spon_wrap .bx-controls.bx-has-controls-direction {
    position: absolute;
    right: 40px;
    top: 50%;
}
.section.sec-spon .spon_wrap .bx-controls-direction {
    position: absolute;
    display: flex;
    right: -100px;
}
.section.sec-spon .spon_wrap  .bx-wrapper .bx-controls-direction a {
    position: static;
}
.section.sec-spon .spon_wrap .bx-prev {
    background: url('/img/sub/spon-prev.png') no-repeat center; 
    width: 30px;
    height: 30px;
}
.section.sec-spon .spon_wrap .bx-next {
    background: url('/img/sub/spon-next.png') no-repeat center; 
    width: 30px;
    height: 30px;
}

@media all and (max-width:1280px) {
    .bx-wrapper img{
        max-width: 90% !important;
    }
}
@media all and (max-width:768px) {
  .section.sec-spon .spon_wrap {
    flex-direction: column;
    padding: 20px 10px;
    gap: 15px;
}

.section.sec-spon .spon_wrap h4 {
    font-size: 18px;
}

.section.sec-spon .spon_wrap .bx-controls.bx-has-controls-direction {
    display: none;
}
}


/* 섹션03 인포 */
.section.sec03 {
    background-color: #ffffff;
    padding: 120px 0;
} 
.section.sec03 .info-txt {
    margin: 60px auto 0;
    width: 900px;
}
.section.sec03 .info-txt .list {
    display: flex;
    gap: 30px;
    align-items: flex-start;
    margin-bottom: 30px;
}
.section.sec03 .info-txt .list.award {
    align-items: flex-start;
}
.section.sec03 .info-txt .min_tit {
    width: 170px;
    color: #ffffff;
    font-size: 24px;
    text-align: center;
    background: #ea0a2a;
    border-radius: 50px;
}
.section.sec03 .info-txt .min_tit span {
    display: inline-block;
    padding: 5px 10px;
    font-weight: 700;
}
.section.sec03 .info-txt .txt {
    font-size: 24px;
    color: #353535;
}
.section.sec03 .info-txt .spon {
    display: flex;
    gap: 30px;
    align-items: center;
}
.section.sec03 .info-txt .spon a > img{
    margin-top: 8px;
}
.section.sec03 .info-txt .souvenir_wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}
.section.sec03 .info-txt .mc_wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}
.sec03_character{
    width: 435px;
    height: 367px;
    position: absolute;
    top: 65%;
    left: 80%;
    transform: translate(-50%,-50%);
}

.sec03 .image-display {
    text-align: center;
    margin: 30px ;
}

.sec03 .image-display img {
    max-width: 100%; /* 이미지 크기 */
    height: auto;
    border-radius: 10px; /* 모서리 둥글게 */
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2); /* 그림자 효과 */
}


@media all and (max-width:768px) {
    .section.sec03 .info-txt {
        width: 100%;
        margin: 30px auto 0;
    }
    .section.sec03 .info-txt .min_tit {
        font-size: 16px;
        width: 130px;
    }
    .section.sec03 .info-txt .txt {
        font-size: 14px;
        text-align: center;
    }
    .section.sec03 .info-txt .list {
        gap: 10px;
        flex-direction: column;
        align-items: center;

    }
}

/* 포인트 섹션 */

.section.sec_point {
    height: 100vh;
    background: url(/img/sub/sec_point_bg.png) no-repeat center bottom;
    background-size: cover;
    position: relative;
    padding: 120px 0;
    height: 130vh;
}

.sec_point_title{
    width: auto;
    position: absolute;
    top: 35%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.sec_point_title img{
    width: 100%;
    height: 100%;
}

.sec_point_character{
    width: auto;
    position: absolute;
    top: 80%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.sec_point_character img{
    width: 100%;
    height: 100%;
}

.pc-title { display: block;}
.mo-title { display: none; }



@media all and (max-width:768px) {
    .section.sec_point {
        max-height: 80vh;
        padding: 80px 0;
    }
    .sec_point_character{
        width: 100%;
        position: absolute;
        top: 80%;
        left: 50%;
        transform: translate(-50%, -50%);
        padding: 0 20px;
    }
    .sec_point_character img{
    }

    .sec_point_title {
        width: 100%;
        padding: 0px 20px;
    }
}


/* 섹션05 타임테이블 */
.section.sec05 {
    padding: 120px 0;
    background: url(/img/sub/sec05_bg.png) no-repeat center center;
    background-size: cover;
}

.section.sec05 table::before{
    position: absolute;
    bottom: 10%;
    right: 4%;
    content: '';
    background-image: url(/img/sub/nick-img.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 210px;
    height: 216px;
    z-index: 1;
}

.section.sec05 table thead {

}
.section.sec05 table thead th {
    font-size: 24px;
    color: #0059a3;
    text-align: center;
    border-right: 1px solid #0059a3;
    background: #fff;
    padding: 12px 16px;
    font-weight: 700;
}
.section.sec05 table thead th:last-child{
    border-right: none;
}

.section.sec05 table tbody tr {

}
.section.sec05 table tbody td {
    font-size: 20px;
    color: #ffffff;
    text-align: center;
    border-right: 1px solid #ffffff;
    background-color: #0000001c;
    padding: 20px 0px;
    line-height: 2;
}

.section.sec05 table tbody tr td span {
    font-size: 18px;
}

.section.sec05 table tbody td:last-child {
    border-right: 0;
}
.section.sec05 table tbody tr.black td {
    color: #fff;
    border-right: 1px solid #fff;
    background: #0d3b70;
}
.section.sec05 table tbody tr.black td:last-child{
    border-right: none;
}
.section.sec05 table tbody tr.black .img_wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
}
.section.sec05 table tbody tr.black .img_wrap.two {
    line-height: 2;
    padding: 20px;
}

.section.sec05 .alert_message{
    max-width: 680px;
    margin: 0 auto;
    text-align: center;
    padding: 12px 20px;
    color: #ffffff;
    font-weight: bold;
    background-color: #ffffff52;
    border-radius: 50px;
    gap: 8px;
    margin-top: 40px;
}

/* @media all and (max-width:768px) {
    .section {
        min-height: auto;
    }
} */

@media all and (max-width:1024px)  {
  .section.sec05 table::before {
      display: none;
  }
}

@media all and (max-width:768px){
  .section.sec05 {
  padding: 80px 0;
  }
  .section.sec05 table thead th {
  font-size: 14px;
  }
  .section.sec05 table tbody td {
  font-size: 14px;
  line-height: 1.6;
  padding: 10px 5px;
  font-family: 'Noto Sans KR';
  font-weight: 600;
  }
  .section.sec05 table tbody tr.black .img_wrap.two {
  flex-direction: column;
  }
  .section.sec05 table tbody tr td span{
  font-size: 14px;
  }
  .section.sec05 .alert_message {
    max-width: 600px;
    display: flex;
    font-size: 14px;
    flex-wrap: wrap;
    gap: 10px;
    border-radius: 10px;
  }
  
.section.sec05 .alert_icon {
    width: 18px;
    height: 18px;
    font-size: 16px;
    line-height: 18px;
  }
  
.section.sec05 .alert_text {
    line-height: 1.4;
  }
}

/* 섹션06 기념품 */
.section.sec06 {
    padding: 120px 0;
    background: url(/img/sub/sec06_bg.png) no-repeat center;
    background-size: cover;
}
.gift_ready {
    width: 100%;
    height: auto;
    display: block;
    max-width: 100%;
}

.gift-tit h6 {
    font-size: 30px;
    font-weight: 700;
    margin-bottom: 20px;
    text-align: center;
    font-weight: 700;
}

.gift_sec01 .gift-tit h6::before {
    content: "";
    display: inline-block;
    width: 60px;
    height: 60px;
    background-image: url("/img/sub/gift-tit-con1.png");
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 8px;
    vertical-align: middle;
}

.gift_sec01 .size-table .gift-tit h6::before {
    display: none;
}

  .sub-txt {
    text-align: center;
    color: #444;
    font-size: 20px;
    line-height: 1.6;
    margin-bottom: 30px;
  }
  
  /* 이미지 섹션 */
  .gift-img-01,
  .gift-img {
    text-align: center;
    margin-bottom: 20px;
  }
  
  .gift-img img,
  .gift-img-01 img {
    max-width: 100%;
    height: auto;
  }

  .size-table {
    margin: 60px auto;
    max-width: 100%;
    overflow-x: auto;
  }
  
  .size-table .gift-tit {
    text-align: center;
  }
  
  .size-table table {
    width: 100%;
    border-collapse: collapse;
    font-size: 18px;
    margin-top: 10px;
  }
  .size-table th{
    background-color: #22b4c0;
    color: #fff;
    font-weight: 600;
  }
  
  .size-table td:first-child{
    color: #22b4c0;
    font-weight: 600;
  }
  
  .size-table th,
  .size-table td {
    border-bottom: 1px solid #eee;
    padding: 15px;
    text-align: center;
  }

  .size-table th,
  .size-table td:last-child {
    border-right: none;
}


.gift_sec02 {
    padding: 40px 20px;
    text-align: center;
  }

  
.gift_sec02 .gift-tit h6::before {
    content: "";
    display: inline-block;
    width: 60px;
    height: 60px;
    background-image: url("/img/sub/gift-tit-con2.png");
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 8px;
    vertical-align: middle;
}
  
  .gift-items {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    justify-content: center;
  }
  
  .gift {
    flex: 0 1 280px;
    text-align: center;
  }
  
  .gift-img img {
    width: 100%;
    border-radius: 12px;
    display: block;
  }
  
  .gift-name {
    font-size: 28px;
    font-weight: bold;
    margin-top: 20px;
  }
  
  .gift-desc {
    font-size: 16px;
    color: #666;
    margin-top: 8px;
  }
  .green{
    color: #22b4c0;
  }

  .gift-red{
    color: #ea0a2a;
    font-weight: 700;
  }

  .gift-notic {
    background-color: #f8f8f8;
    padding: 25px 30px;
    font-family: 'Noto Sans KR', sans-serif;
    font-size: 16px;
    color: #333;
    line-height: 1.7;
    width: 100%;
    box-sizing: border-box;
    margin-top: 30px;
}

.gift-notic .notic-tit {
    font-weight: bold;
    margin-top: 15px;
    margin-bottom: 10px;
}

.gift-notic .notic-tit p {
    margin: 0;
    color: #22b4c0;
    font-weight: 600;
}

.gift-notic ul {
    margin: 0;
    padding-left: 20px;
    list-style: none;
}

.gift-notic ul li {
    position: relative;
    padding-left: 10px;
    margin-bottom: 4px;
}

.gift-notic ul li::before {
    content: "-";
    position: absolute;
    left: 0;
}

/* 반응형 미디어쿼리 */
@media screen and (max-width: 1024px) {
    .gift-items {
      gap: 24px;
    }

  }
  
  @media screen and (max-width: 768px) {
    .section.sec06 {
      padding: 80px 0;
  }
    .gift-tit h6 {
      font-size: 18px;
    }
  
    .sub-txt {
      font-size: 14px;
    }
  
    .gift-items {
      flex-direction: column;
      align-items: center;
    }
  
    .gift-min {
      max-width: 80%;
    }
  
    .size-table table {
      font-size: 14px;
    }
    .gift_sec01 .gift-tit h6::before {
        width: 40px;
        height: 40px;
        margin-right: 5px;
    }
    .gift_sec02 .gift-tit h6::before {
        width: 40px;
        height: 40px;
        margin-right: 5px;
    }
    .gift-name {
        font-size: 16px;
     }    
     .gift-desc {
        font-size: 14px;
    }
    .gift-notic {
      padding: 15px 20px;
      font-size: 13px;
  }

  .gift-notic .notic-tit {
      margin-top: 10px;
      margin-bottom: 8px;
  }

  .gift-notic ul li {
      margin-bottom: 6px;
  }
  .gift {
    flex: 0 1 90%;
  }
}

/* 섹션07 타임테이블 */

.section.sec07 {
    padding: 120px 0;
    background: url(/img/sub/sec07_bg.png) no-repeat center bottom;
    background-size: cover;
}

.tab_con_wrap{
    position: relative;
}

.tab_con_wrap::after{
    position: absolute;
    bottom: -10%;
    left: 2%;
    content: '';
    background-image: url(/img/sub/chip-img.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 163px;
    height: 170px;
    z-index: 1;
}
.tab_con_wrap::before{
    position: absolute;
    bottom: -10%;
    right: -2%;
    content: '';
    background-image: url(/img/sub/dale-img.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 163px;
    height: 169px;
    z-index: 1;
}
.section.sec07 {
    padding: 120px 0;
    background-color: #f9f9f9;
}

.section.sec07 .tab_wrap {
    display: flex;
    gap: 20px;
    justify-content: center;
    margin-bottom: 50px;
}
.section.sec07 .tab_wrap .tab_btn {
    display: inline-block;
    font-size: 24px;
    font-weight: 700;
    padding: 15px 70px;
    color: #ea0a2a;
    border: 2px solid #ea0a2a;
    border-radius: 10px;
    background-color: #ffffff;
    box-shadow: 4px 4px 0 #1515152e;
    cursor: pointer;
  }

  .section.sec07 .tab_wrap .tab_btn:nth-child(2) {
    color: #dc2525;
    border-color: #dc2525;
  }
  
  .section.sec07 .tab_wrap .tab_btn.on {
    background-color: #ea0a2a;
    border-color: #ea0a2a;
    color: #ffffff;
  }

  .section.sec07 .tab_wrap .tab_btn:nth-child(2).on {
    background-color: #ea0a2a;
    border-color: #ea0a2a;
    color: #ffffff;
  }
  
  .section.sec07 .tab_con_wrap {
    display: flex;
    justify-content: center;
  }
  .section.sec07 .tab_con {
    display: none;
}
   .section.sec07 .tab_con.on {
    display: block;
}

@media all and (max-width:1024px)  {
  .tab_con_wrap::after {
      display: none;
  }
  .tab_con_wrap::before {
      display: none;
  }
}

@media all and (max-width:768px){
.section.sec07 {
  padding: 80px 0;
}
.section.sec07 .tab_wrap {
  gap: 10px;
  margin-bottom: 20px;
}
.section.sec07 .tab_wrap .tab_btn {
  font-size: 16px;
  padding: 12px 30px;
}

.section.sec07 .tab_wrap .tab_btn {
  font-size: 16px;
  padding: 12px 40px;
}

.section.sec07 .tab_wrap .tab_btn:nth-child(2) {
  font-size: 16px;
  padding: 12px 40px;
}

.section.sec07 .tab_wrap .tab_btn.on {
  background: #dc2525;
  border-color: #dc2525;
  color: #ffffff;
}

.section.sec07 .tab_wrap .tab_btn:nth-child(2).on {
  background: #dc2525;
  border-color: #dc2525;
  color: #ffffff;
}
}

/* 섹션08 코스안내 */
.section.sec08 {
    position: relative;
    overflow: hidden;
    padding: 120px 0;
    background: #0059a3;
}
.section.sec08 h2 {
    color: #fff;
    margin-bottom: 80px;
}
.section.sec08 h2 > span {
    color: #fff;
}
.section.sec08 ul {
    position: relative;
    z-index: 2;
    display: flex;
    gap: 60px;
    justify-content: center;
    margin-top: 30px;
}

.section.sec08 .apply_10k{
    filter: drop-shadow(5px 5px 5px #000c359e);
    transition: all 0.3s ease;
}

.section.sec08 .apply_10k:hover {
    scale: 1.02;
}

.section.sec08 .apply_3k{
    filter: drop-shadow(5px 5px 5px #000c359e) ;
    transition: all 0.3s cubic-bezier(.25,.8,.25,1);
}

.section.sec08 .apply_3k:hover {
    scale: 1.02;
}

.section.sec08 .btn_wrap {
    display: flex;
    gap: 30px;
    justify-content: center;
    margin-top: 60px;
}
.section.sec08 .btn_wrap a {
    width: 250px;
    display: inline-block;
    font-size: 24px;
    padding: 15px 20px;
    border: 1px solid #fff;
    border-radius: 10px;
    text-align: center;
    transition: all 0.2s;
    background: #003866;
    color: #fff;
    border-radius: 10px;
    box-shadow: 4px 4px 0 #1515152e;
    font-weight: 700;
}
.section.sec08 .btn_wrap a:nth-child(2) {
    background: #fff;
    color: #003866;
}
.section.sec08 .btn_wrap a:hover {
    filter: brightness(90%);
}

.ani_text {
    position: absolute;
    top: 40%;
    transform: translateX(-50%);
    white-space: nowrap;
    font-size: 200px;
    text-shadow: 
  -1px -1px 0 #ffffff83,
   1px -1px 0 #ffffff83,
  -1px  1px 0 #ffffff83,
   1px  1px 0 #ffffff83;
    color: #0059a3;
    animation: flow 200s linear infinite;
    font-weight: 900;
}

@keyframes flow {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-150%);
    }
}

.section.sec08 .apply_box {
    margin: 0 auto;
    text-align: center;
}
.section.sec08 .list {
    display: flex;
    gap: 30px;
    margin-bottom: 30px;
    justify-content: center;  
    align-items: center;
}
.section.sec08 .list .min_tit {
    width: 130px;
    color: #0059a3;
    font-size: 20px;
    text-align: center;
    background: #ffffff;
    border-radius: 50px;
}
.section.sec08 .list .min_tit span {
    display: inline-block;
    padding: 5px 10px;
    font-weight: 700;
}
.section.sec08 .list .txt {
    font-size: 18px;
    color: #ffffff;
}

.section.sec08 .alert_message{
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
    padding: 12px 20px;
    color: #ffffff;
    font-weight: bold;
    background-color: #ffffff52;
    border-radius: 50px;
    gap: 8px;
    margin-top: 40px;
}

    
@media all and (max-width:768px) {
        .section {
            min-height: auto;
        }
        .section.sec08 {
          padding: 0 0 80px 0;
        }
        .section.sec08 .alert_message {
            max-width: 600px;
            display: flex;
            font-size: 14px;
            flex-wrap: wrap;
            gap: 10px;
            border-radius: 10px;
          }
        .section.sec08 .alert_icon {
            width: 18px;
            height: 18px;
            font-size: 16px;
            line-height: 18px;
          }
          
        .section.sec08 .alert_text {
            line-height: 1.4;
          }
          .section.sec08 .list{
            flex-direction: column;
            align-items: center;
          }
          .section.sec08 .list .txt {
            line-height: 1.5em;
            font-size: 14px;
        }
        .section.sec08 .list .min_tit {
            font-size: 16px;
        }
        .section.sec08 .list{
            gap: 15px;
        }
        .section.sec08 ul {
            align-items: center;
        }
      .section.sec08 ul {
          gap: 30px;
          flex-direction: column;
      }
      .section.sec08 .btn_wrap {
          display: grid;
          gap: 10px;
          margin-top: 30px;
      }
      .section.sec08 .btn_wrap a {
          font-size: 16px;
          padding: 12px 20px;
          max-width: 300px;
      }
      .section.sec08 .ani_text {
          display: none;
      }

}

/* 섹션 09 자주 묻는 질문 */
.section.sec10 {
    position: relative;
    padding: 120px 0;
    background-color: #efefef;
    min-height: auto;
    height: auto;
}
.section.sec10 .con .sch_box {
    display: none;
}
.section.sec10 .con .board_paging {
    display: none;
}
.section.sec10 .con .new_board_2021 .board_wrap .board_faq_con .list_table li {
    background: #fff;
    border-radius: 10px;
    margin-bottom: 20px;
}
.section.sec10 .con .new_board_2021 .board_wrap .board_faq_con .list_table .n_tbody .n_tr {
    border-bottom: 0;
}
.section.sec10 .con .new_board_2021 .board_wrap .board_faq_con .list_table .n_tbody .n_tr .n_td.title {
    color: #323232;
    font-size: 22px;
}
.section.sec10 .con .new_board_2021 .board_wrap .board_faq_con .list_table .n_tbody .n_tr .n_td.title span {
    font-weight: bold;
}
.section.sec10 .con  .new_board_2021 .board_wrap .board_faq_con .list_table {
    border-top: 0;
}
.section.sec10 .con .new_board_2021 .board_wrap .board_faq_con .list_table .n_tbody .content .n_tr {
    border-bottom: 0;
    background: none;
    border-top: 1px solid #e1e1e1;
}
.section.sec10 .con .new_board_2021 .board_wrap .board_faq_con .list_table .n_tbody .content .n_tr .n_td.txt {
    color: #818181;
    line-height: 1.6;
    font-size: 18px;
}
.section.sec10 .con .new_board_2021 .board_wrap .board_faq_con .list_table .n_tbody .n_tr .n_td.arrow .arrow_icon {
    width: 26px;
    height: 15px;
    background: url(/img/sub/board-arrow.png);
}

@media all and (max-width:768px) {
  .section.sec10 {
      padding: 80px 0;
  }
  .section.sec10 .con .new_board_2021 .board_wrap .board_faq_con .list_table .n_tbody .n_tr .n_td.arrow .arrow_icon {
      width: 20px;
      background-size: contain;
      background-repeat: no-repeat;
  }
  .section.sec10 .con .new_board_2021 .board_wrap .board_faq_con .list_table .n_tbody .n_tr .n_td.title {
      font-size: 14px;
  }
  .section.sec10 .con .new_board_2021 .board_wrap .board_faq_con .list_table .n_tbody .content .n_tr .n_td.txt {
      font-size: 14px;
  }
  
  
}

/* 섹션 11 찾아오시는길 */
.section.sec11 {
    padding: 120px 0;
    background: url('/img/sub/sec11-bg.png') center/cover no-repeat;
}
.section.sec11 .con {
    display: flex;
    gap: 40px;
}
.section.sec11 .con .map #daumRoughmapContainer1737522187121  {
    border-radius: 20px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}
.section.sec11 .con .txt h6 {
    display: inline-block;
    background: #ea0a2a;
    padding: 15px 20px;
    border-radius: 5px;
    color: #fff;
    font-size: 16px;
}
.section.sec11 .con .txt h6 b {
    font-size: 20px;
}

.section.sec11 .con .txt h6 span {
    font-size: 18px;
    margin-left: 10px;
}

.section.sec11 .con .txt h6 img {
    padding-right: 10px;
}
.section.sec11 .con .txt .min-tit {
    font-size: 20px;
    font-weight: bold;
    line-height: 2.2em;
}
.section.sec11 .con .txt1 {
    margin: 20px 0;
}
.section.sec11 .con .txt1 p {
    font-size: 18px;
    line-height: 2;
}
.section.sec11 .con .txt1 .num {
    color: #fff;
    background: #764798;
    border-radius: 50px;
    padding: 0px 8px;
    font-weight: bold;
    margin-right: 5px;
}
.section.sec11 .con .txt1 .num.two {
    background: #a49e88;
}
.section.sec11 .con .txt2 .min-tit {
    margin-bottom: 5px;
}
.section.sec11 .con .txt2 p {
    font-size: 18px;
    margin-bottom: 20px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
}
.section.sec11 .con .txt2 p span {
    color: #fff;
    background: #0064ff;
    border-radius: 3px;
    padding: 0 5px;
}
.section.sec11 .con .txt2 p span.green {background: #00c24e;}
.section.sec11 .con .txt2 p span.red {background: #ff0000;}
.section.sec11 .con .txt2 p span.gray {background: #626262;}
.section.sec11 .ani_text {
    position: absolute;
    bottom: -60px;
    transform: translateX(-50%);
    white-space: nowrap;
    font-size: 150px;
    font-family: 'Vitro_core';
    color: #f9f9f9;
    animation: flow 100s linear infinite;
    font-style: oblique 15deg;
}

section .section_address.lst{
    display: none;
}

@media all and (max-width:768px) {
    /* section10 */
    .section.sec11 {
        padding: 80px 0;
    }
    .section.sec11 .con {
        flex-direction: column;
    }
    .section.sec11 .con .txt h6 {
        display: block;
        text-align: center;
        line-height: 1.5em;
    }
    .section.sec11 .con .txt h6 b {
        font-size: 16px;
    }
    .section.sec11 .con .txt1 p {
        font-size: 14px;
    }
    .section.sec11 .con .txt h6 span {
        font-size: 14px;
    }
    .section.sec11 .con .txt1 .num {
        padding: 0 6px;
    }
    .section.sec11 .con .txt2 p {
        font-size: 14px;
    }
    .section.sec11 .con .map #daumRoughmapContainer1737522187121 {
        width: 100% !important;
    }
    .section.sec11 .con .map #daumRoughmapContainer1737522187121 .wrap_map {
        height: 200px !important;
    }
    .section.sec11 .ani_text {
        display: none;
    }
    .map{
        display: flex;
    }
}

/* 섹션 09 - 공지사항 */
.section.sec09 {
    padding: 120px 0;
}
.section.sec09 .con {
    display: flex;
    align-items: center;
    gap: 70px;
}
.section.sec09 .board {
    width: 600px;
} 
.section.sec09 .board .btn-more {
    text-align: right;
    margin-bottom: 15px;
} 
.section.sec09 .board .btn-more a {
    font-size: 19px;
    color: #1b1b1b;
} 
.section.sec09 .board ul {
    border-top: 2px solid #1b1b1b;
    width: 100%;
}
.section.sec09 .board ul li a {
    position: relative;
    display: flex;
    justify-content: flex-start;
    gap: 25px;
    align-items: center;
    border-bottom: 1px solid #1b1b1b;
    padding: 15px 30px;
    color: #1b1b1b;
}
.section.sec09 .board ul li .tag {
    padding: 8px 20px;
    border-radius: 8px;
    color: #fff;
    background: #dc2525;
    font-size: 14px;
    font-weight: bold;
}
.section.sec09 .board ul li p {
    font-size: 19px;
    margin: 0;
    width: 60%; 
    white-space: nowrap; 
    overflow: hidden; 
    text-overflow: ellipsis; 
}
.section.sec09 .board ul li .date {
    position: absolute;
    right: 30px;
    font-size: 16px;
}

@media all and (max-width:768px) {
  .section.sec09 {
      padding: 80px 0;
  }
  .section.sec09 .con {
      flex-direction: column;
      gap: 20px;
  }
  .section.sec09 .con .img  {
      display: none;
  }
  .section.sec09 .con .img img {
      width: 60%;
  }
  .section.sec09 .board {
      width: 100%;
  }
  .section.sec09 .board ul li a {
      padding: 10px;
      gap: 10px;
  }
  .section.sec09 .board ul li .tag {
      padding: 5px 10px;
      font-size: 12px;
  }
  .section.sec09 .board ul li p {
      font-size: 14px;
      width: 50%;
  }
  .section.sec09 .board ul li .date {
      font-size: 12px;
      right: 10px;
  }
  .section.sec09 .board .btn-more a {
      font-size: 14px;
  }
}

/* footer */

.footer .copy {
    background: #2e2e2e;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    width: 100%; 
    height: auto;
    padding: 48px 0
}
.footer .copy .top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
}
.footer .copy .top .ft_logo {
    color: #ededed;
    font-size: 28px;
    font-weight: 900;
}
.footer {/* height: 150px; min-height: 250px; */ height: auto; min-height: auto;}
.footer .sponsor {width: 100%; /* height: 100px; */  background-color: #fff; border-top:1px solid #ddd;}
.footer .sponsor .wrap {width: 1200px; margin: 0 auto; height: 100px;}
.footer .sponsor .wrap:after {clear: both; content: ''; display: block;}
.footer .sponsor h5 {font-size: 22px; font-weight: 700; line-height: 100px; float: left; margin: 0px;}
.footer .sponsor .spon_slide {margin: 0 auto;}
.footer .sponsor .spon_slide > a {line-height: 100px;}
.footer .sponsor .slide_wrap {width: 1200px; padding: 26px 0; position: relative;}
.footer .sponsor .slide_wrap .bx-wrapper {max-width: 920px !important; position: static; padding-left: 15px;}
.footer .sponsor .slide_wrap .bx-wrapper .bx-controls-direction a {right: 0; border: 1px solid #ddd; width: 45px; height: 45px; top: 43%; z-index: 0;}
.footer .sponsor .slide_wrap .bx-wrapper .bx-controls-direction .bx-prev {right: 44px; left: auto; background: url('/img/renewal/spon-prev.png') center no-repeat;}
.footer .sponsor .slide_wrap .bx-wrapper .bx-controls-direction .bx-next {background: url('/img/renewal/spon-next.png') center no-repeat;}

.footer .copy .wrap {margin: 0 auto; position: relative;}
.footer .copy p {font-size: 16px; font-weight: 300; color: #999; line-height: 1.6;}
.footer .copy p span {display: inline-block; width: 10px;}
.footer .copy p a {color: #999;}
.footer .copy .human {position: absolute; bottom: 0; right: 0; font-size: 16px; font-weight: 300; color: #999;}

@media all and (max-width:768px) {
    .footer .copy {
        height: auto;
        padding: 48px 20px;
    }
    .footer .copy .wrap {
        width: 100%;
        
        text-align: center;
    }
    .footer .copy p {
        font-size: 14px;
    }
    .footer .copy .human {
        position: static;
        font-size: 14px;
    }
    .footer .copy .top {
      flex-direction: column;
      gap: 10px;
  }
     .footer .copy .top .ft_logo {
      font-size: 22px !important;
  }
}


/* ?? */
@media all and (max-width:768px) {
    /* .loop_cont {
        width: auto;
        overflow: hidden;
    } */
    .banner_list {
        width: calc(500% + 10px);
      }
}
