/* ============================================
   Pretendard 폰트 임포트 (전체 통일)
   ============================================ */
@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable.css');

@charset "utf-8";

html, body {
  font-family: 'Pretendard', -apple-system, BlinkMacSystemFont, system-ui, sans-serif;
  font-weight: 400; /* ← 400 느낌 */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color:#383838;
}


@font-face {
    font-family: 'OMP';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2105_2@1.0/ONE-Mobile-POP.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

/* 폰트 */
.jal {font-family:'Pretendard';}
.wemake {font-family:'Pretendard';}
.nb { font-family: 'Pretendard', sans-serif;transform:skew(-0.001deg);}
.ga { font-family: 'Pretendard', sans-serif; }
.noto {font-family: 'Pretendard', sans-serif;}
.mg {font-family:'Pretendard', dotum, sans-serif;}
.OMP { font-family: 'OMP';font-size:0.9em;font-weight:500}

.bold {font-weight:700;}
.f_normal  {font-weight:400;}
.f0_8m {font-size:0.8em}
.f0_9m {font-size:0.9em}
.f1m   {font-size:1em}
.f1_2m {font-size:1.2em}
.f1_3m {font-size:1.3em}
.f1_4m {font-size:1.4em}
.f1_6m {font-size:1.6em}
.f1_8m {font-size:1.8em}
.f2m {font-size:2em}

.fc_3 {color:#333333}
.fc_9 {color:#999999}
.fc_g {color:#009933}
.fc_b {color:#493dc2}
.fc_n {color:#233874}
.fc_lb {color:#4a82ff}
.fc_r {color:#ef7575}

h7 {font-size:0.9em;color:#233874;font-weight:bold;font-family:'Pretendard','dotum',sans-serif;letter-spacing:-1px;}

.btn-play{padding:3px 8px;color:#212529;background-color:#ffc107;border-color:#ffc107}
.btn-play:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}
.btn-play.focus,.btn-play:focus{color:#212529;background-color:#e0a800;border-color:#d39e00;box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}
.btn-play.disabled,.btn-play:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}
.btn-play:not(:disabled):not(.disabled).active,.btn-play:not(:disabled):not(.disabled):active,.show>.btn-play.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}
.btn-play:not(:disabled):not(.disabled).active:focus,.btn-play:not(:disabled):not(.disabled):active:focus,.show>.btn-play.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}

/* 색깔 추가 */
.g_color {color:#009933}
/* 여백 */
.pd10 {padding:10px}
.pd20 {padding:20px}
.pdl10 {padding:0 10px}
.pdl20 {padding:0 20px}
.mg_l5 {margin-left:5px}
.mg_l10 {margin-left:10px}

.pt-2, .py-2 {padding-top: .5rem!important;}
.border-bottom {border-bottom: 1px solid #dee2e6!important;}
.border-right {border-right: 1px solid #dee2e6!important;}
.d-block {display: block!important;font-size:0.8em;}
.tooltip-c {position: absolute;display:none;text-align:left;color:#666666;font-size:0.9em;padding:10px;background-color: #fff;border:2px solid #ddd}

.gtooltip {cursor: pointer;color:#33aa66}

/* 내강의실 */
#lec_list {font-family: 'Pretendard', sans-serif;}
#lec_list_category {width:100%;margin-top:10px;padding:10px 0 30px 0;}
#lec_list_category li {float:left;font-size:1.1em}
#lec_list_div {border-bottom:1px solid #ccc;padding:20px;}
#lec_list_category li a {font-weight:300;color:#233874;padding:0 20px;border-right:1px solid #999;}
#lec_list_category li:last-child a {border-right:none;}
#lec_list_category li a:hover, #lec_list_category a:focus {color:#4a82ff;}
#lec_list_category .cateon {color:#233874;font-weight:500}
.lec_cate_title {margin-top:20px;padding:20px;border:1px solid #ccc;background:#f5f5f5;}
.lec_back {padding:5px 10px;}
.lec_list_divi {display:inline-block;width:100%;padding:20px;border-bottom:1px solid #ccc;}
[id^="lec_list_div"] { display: inline-block; width: 100%; padding: 20px 30px; border-bottom: 1px solid #ccc; } 
#lec_list_div0 { border-top: 1px solid #ccc; }

.btn_lec {margin:40px 0 0 0;}
@media (max-width: 760px){
  #lec_list_category {width:100%;border-bottom: 1px soild #ddd;padding:10px;margin:0}
  #lec_list_category li {font-size:0.8em}
  #lec_list_div {border-bottom:1px solid #ccc;padding:5px;}
  #lec_list_category a {font-weight:700;color:#333;padding:0 5px;border-right:1px solid #999;}
  #lec_list_category a:hover, #lec_list_category a:focus {color:#009933;font-weight:700}
  #lec_list_category .cateon {color:#009933;font-weight:700}
  .lec_cate_title {width:100%;margin:0;padding:5px;border:1px solid #ccc;background:#f5f5f5;display:inline-block;}
  .lec_back {float:right;font-size:0.8em;padding:5px 10px;}
  .lec_list_divi {display:inline-block;width:100%;padding:10px 5px;border-bottom:1px solid #ccc;}
  .btn_lec {margin:10px 0 0 0;}
}

/* 주문결제/배송조회 */
#order_view_list {font-family: 'Pretendard', sans-serif;}
#order_view_list_category {float:right;margin:0 0 0 0;height:70px;}
#order_view_list_category li {float:left;font-size:0.9em;}
#order_view_tbl table {width:100%;margin:20px 0;}
#order_view_tbl thead {background:#f5f5f5;border-top:1px solid #333;border-bottom:1px solid #ddd;}
#order_view_tbl thead th {text-align:center;font-size:1.2em;padding:10px;}
#order_view_tbl tbody tr {border-bottom:1px solid #ddd;padding:20px;}
#order_view_tbl tbody td {padding:20px;}
#order_view_tbl .h20 {padding:5px;font-size:0.8em;height:20px;}
/* 장바구니 */
#basket {width:100%;}
#basket_top {margin-top:20px;}
#basket_list {width:100%;margin:20px 0;}
#basket_list thead {background:#f5f5f5;border-bottom:1px solid #ddd;}
#basket_list thead th {text-align:center;font-size:1em;padding:15px;}
#basket_list tbody tr {border-bottom:1px solid #ddd;padding:20px;}
#basket_list tbody td {padding:20px;}
#basket_bottom {margin-top:50px;font-size:1em;text-align:center;}
#basket_bottom_div {width:95%;border:1px solid #ddd;padding:30px;text-align:left;margin:0 auto;}
@media (max-width: 710px) {
#basket_bottom {margin-top:40px;font-size:0.9em;text-align:center;}
#basket_bottom_div {width:95%;border:1px solid #ddd;padding:20px;text-align:left;margin:0 auto;}

}
.all_money {text-align:right;font-weight:700;font-size:1.2em;}

/* 주문페이지 */
#order {width:100%;}
#order_top {margin-top:20px;}
#order_list {width:100%;margin:20px 0;}
#order_list table {width:100%}
#order_list thead {background:#f5f5f5;border-bottom:1px solid #ddd;}
#order_list thead th {text-align:center;font-size:1em;padding:15px;}
#order_list tbody tr {border-bottom:1px solid #ddd;padding:20px;}
#order_list tbody td {padding:20px;}
#order_bottom {margin-top:50px;text-align:center;}
.all_money {text-align:right;font-weight:700;background-color:#ffffff;font-size:1.2em}
@media (max-width: 710px) {
#order_list thead th {text-align:center;font-size:1em;padding:15px;}
#order_list tbody tr {border-bottom:1px solid #ddd;padding:20px;}
#order_list tbody td {padding:10px;text-align:center;}
}
.clsright { padding-right:10px; text-align:right; }
.clsleft { padding-left:10px; text-align:left; }

/* 메인페이지 배너 */
.top_banner {width:100%;min-width:1440px;padding:5px;background:#007d34;text-align:center;}
.tb_close {position:absolute;top:40px;left:50%;margin-left:600px;z-index:1;}

.floating_left {position:absolute;top:185px;left:50%;margin-left:-690px;z-index:11;}
.floating_left li {margin-top:5px;}

.floating_right {position:absolute;top:178px;left:50%;margin-left:460px;z-index:11;}
.floating_right li {margin-top:2px;}

.floating_quick {position:fixed;top:200px;right:0px;width:72px;border-right:1px solid #ddd;z-index:1;}
.floating_quick li {border:1px solid #cccccc;margin-top:-1px;}

.main_update {min-width:1440px;background:#eef5ee;height:310px;border-top:1px solid #dddddd;}
.main_update_wrapper {height:310px;margin:20px 0 0 70px;}
.update_layer {width:1140px;position:relative;margin:0 auto;}
.update_div {float:left;background:#fff;width:540px;height:260px;margin-left:30px;border-top:1px solid #dddddd;}
.update_title {float:left;background:#ddd;width:150px;padding:10px;height:100%;color:#333333;}
.update_more {margin:100px 0 0 50px;padding:10px;width:60%;height:50px;background:#558ed5;border:1px solid #385d8a;}
.update_text {float:left;padding:15px 10px 15px 15px;font-size:0.9em}
.update_text li {list-style:none;line-height:2;}
.update_text li .new_icon {display:inline-block;line-height:16px;width:16px;font-size:0.833em;color:#45c565;background:#b9ffda;text-align:center;margin-right:3px;border-radius:2px;vertical-align:baseline}
.update_text li .best_icon {display:inline-block;width:16px;line-height:16px;font-size:0.833em;color:#ffffff;background:#ffb9da;text-align:center;border-radius:2px;margin-left:2px;font-weight:bold;vertical-align:middle}
.update_text a {text-decoration:none;color:#666;}
.update_text a:hover {list-style:none;text-decoration:none;color:#009933;font-weight:500;}

.main_teacher {background:#fff;border-top:1px solid #dddddd;display:block;}
.t_wrapper {min-width:1440px;height:1020px;display:block;margin-left:50px;}
.t_layer {width:1100px;position:relative;margin:0 auto;list-style:none}
.t_box {list-style:none;width:190px;height:150px;float:left;margin:20px 0 0 25px;vertical-align:middle;text-align:center;}
.t_box a, a:hover {text-decoration:none;}
.t_box p {font-size:1.2em;color:#3da24d;}
.img-circle.profile_img{width:50%;background:#fff;margin-left:15%;z-index:1000;position:inherit;margin-top:20px;border:1px solid rgba(52,73,94,0.44);padding:4px}
.img-circle.profile_img{width:50%;margin:10px 0 0}

.out_login {position:absolute;right:0;margin-right:230px;top:80px}

/* 슬라이드 이미지 영역 스타일 */
#main_visual { overflow:hidden; position:relative; height:350px; background-color:#f7f7f7; }
#main_visual .main_slider { height:350px }
#main_visual .main_slider .swiper-slide { position:relative; height:350px }
#main_visual .main_slider .swiper-slide a { display:block; position:absolute; top:0; left:50%; margin-left:-525px }
#main_visual .main_slider_nav { position:absolute; bottom:0; left:0; z-index:10; width:100%; }
#main_visual .main_slider_nav .inner { position:relative; width:1050px; height:45px; margin:0 auto }
#main_visual .main_slider_nav .inner:after { display:block; clear:both; content:'' }
#main_visual .main_slider_nav .title_wrap { float:left; max-width:904px }
#main_visual .main_slider_nav .list { margin:0; padding:0 }
#main_visual .main_slider_nav .list li { width:181px !important; box-sizing:border-box; padding-top:3px; padding-left:1px }
#main_visual .main_slider_nav .list li:first-child { padding-left:0 }
#main_visual .main_slider_nav .list li span { display:block; position:relative; height:42px; box-sizing:border-box; font-weight:500; font-size:13px; line-height:42px; color:#111; text-align:center; letter-spacing:-0.025em; background-color:rgba(255,255,255,0.85); cursor:pointer; transition:0.35s }
#main_visual .main_slider_nav .list li span:before { display:block; position:absolute; top:-3px; left:0; width:0; height:3px; background-color:#fff; content:'' }
#main_visual .main_slider_nav .list li.swiper-slide-thumb-active span { position:relative; font-weight:600; font-size:14px; color:#000; }
#main_visual .main_slider_nav .list li.swiper-slide-thumb-active span:before { width:100%; left:0; transition:3s }
#main_visual .main_slider_nav .list li:hover span { color:#009933;font-weight:bold;background-color:rgba(255,255,255,0.8) }
#main_visual .main_slider_nav .inner .btn_more { float:left; position:relative; width:46px; height:45px; margin-left:1px; border:0 none; font-size:0; background-color:rgba(255,255,255,0.1); transition:0.2s }
#main_visual .main_slider_nav .inner .btn_more:before { display:block; position:absolute; top:18px; left:18px; width:10px; height:10px; background:url(/images/main2020/visual_more.png) 0 0 no-repeat; content:'' }
#main_visual .main_slider_nav .inner .btn_more:hover { background-color:rgba(255,255,255,0.2) }
#main_visual .main_slider_nav .swiper_control { overflow:hidden; position:absolute; bottom:0px; right:45px; z-index:10; width:128px; height:45px; font-size:0; text-align:center; }
#main_visual .main_slider_nav .swiper_control:before { display:inline-block; width:0; height:100%; vertical-align:middle; content:'' }
#main_visual .main_slider_nav .swiper-pagination-fraction { display:inline-block; position:static; width:auto; font-weight:400; font-size:14px; line-height:17px; color:#ccc; vertical-align:middle }
#main_visual .main_slider_nav .swiper-pagination-current { font-weight:700; font-size:14px; line-height:18px; color:#ccc; }
#main_visual .main_slider_nav .swiper-pagination-total { margin-right:5px; font-weight:700; font-size:14px; line-height:18px; color:#666 }
#main_visual .main_slider_nav .swiper-stop { display:inline-block; width:18px; height:18px; border:1px solid rgba(0,0,0,0.7); border-radius:50%; background:url(../img/gsr/swiper_stop.png) 50% 50% no-repeat; cursor:pointer; vertical-align:middle }
#main_visual .main_slider_nav .swiper-stop.play { border-color:#fff; background:url(../img/gsr/swiper_start.png) 55% 50% no-repeat }
#main_visual .swiper-button-prev,
#main_visual .swiper-button-next { top:147px; width:30px; height:60px; margin:0; outline:0 none; transition:0.2s }
#main_visual .swiper-button-prev { left:50%; margin-left:-740px }
#main_visual .swiper-button-next { right:50%; margin-right:-655px }
#main_visual .swiper-button-prev:before,
#main_visual .swiper-button-prev:after,
#main_visual .swiper-button-next:before,
#main_visual .swiper-button-next:after { display:block; position:absolute; left:-5px; width:40px; height:2px; background-color:rgba(255,255,255,0.7); content:''; box-shadow:0 5px 7px rgba(0,0,0,0.2); transition:0.2s }
#main_visual .swiper-button-prev:before { top:14px; transform:rotate(-45deg) }
#main_visual .swiper-button-prev:after { top:42px; transform:rotate(45deg) }
#main_visual .swiper-button-next:before { top:14px; transform:rotate(45deg) }
#main_visual .swiper-button-next:after { top:42px; transform:rotate(-45deg) }
#main_visual .swiper-button-prev:hover:before,
#main_visual .swiper-button-prev:hover:after,
#main_visual .swiper-button-next:hover:before,
#main_visual .swiper-button-next:hover:after { background-color:#fff }
/* ============================================
   고시로 홈페이지 전체 색상 변경
   녹색 → 파란색/남색 테마
   ============================================ */

/* ===== 1. 전체 배경색 하얗게 변경 ===== */
body {
    font-weight: 300 !important;
    background: #ffffff !important;
}

#wrapper {
    background: #ffffff !important;
}

#container_wr {
    background: #ffffff !important;
    width: 100% !important;
    max-width: 1160px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

#container {
    background: #ffffff !important;
    width: 1120px !important;
    padding: 0 30px;
}

#bo_list,
.bo_list {
    background: #ffffff !important;
}

#lec_list {
    width: 100% !important;
}

#container_wr {
    background: #ffffff !important;
    width: 100% !important;
    max-width: 1160px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}
/* ===== 2. 컨테이너 타이틀 색상 변경 ===== */
#container_title {
    font-size: 1.5em !important;
    margin: 0 auto 0px auto; !important;
    font-weight: bold !important;
    border-left: none !important;
    padding-left: 0 !important;
    color: #233874 !important;
}

#container_title span {
    margin: 0 auto 10px !important;
    display: block !important;
    line-height: 30px !important;
}

/* 탭메뉴 상위 div - 인라인 스타일 강제 덮어쓰기 */
#container_title + div[style] {
    width: 100% !important;
    max-width: 1060px !important;
    margin: 0 auto 30px auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
}

/* ===== 3. 상단 메뉴바 (#topmenu_cate) 반응형 설정 ===== */
/* 기본 컨테이너 설정 */
#topmenu_cate {
    clear: both !important;
    position: relative !important;
    margin: 10px 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    width: 100% !important;
    max-width: 1060px !important;
    font-size: 0.9em !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0 !important;
}

/* 기존 after 가상요소 제거 (flex 사용으로 불필요) */
#topmenu_cate:after {
    display: none !important;
}

/* 모바일: */
@media (max-width: 768px) {
    #container {
    background: #ffffff !important;
    width: 100% !important;
    padding:0; 
    }
    #container_title + div[style] {
        margin: 0 auto 20px auto !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding: 0 10px !important;
    }
    
    #topmenu_cate {
        margin: 10px 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    
    #topmenu_cate li {
        position: relative !important;
        float: none !important;
        width: 50% !important;
        height: 40px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 1px solid #f5f5f5 !important;
        box-sizing: border-box !important;
    }
    
    #topmenu_cate li:first-child {
        border: 1px solid #f5f5f5 !important;
    }
    
    #topmenu_cate a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: 100% !important;
        font-size: 1em !important;
        background: #f7f7f7 !important;
        color: #233874 !important;
        font-weight: 300 !important;
        text-align: center !important;
        text-decoration: none !important;
        transition: all 0.2s ease !important;
        box-sizing: border-box !important;
        padding: 0 5px !important;
        line-height: 1.2 !important;
    }
}

/* PC/태블릿: 5개씩 배치 (769px 이상) */
@media (min-width: 769px) {
    #container_title + div[style] {
        margin: 0 auto 30px auto !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding: 0 !important;
    }
    
    #topmenu_cate {
        margin: 10px 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    
    #topmenu_cate li {
        position: relative !important;
        float: none !important;
        width: 20% !important;
        height: 40px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 1px solid #f5f5f5 !important;
        box-sizing: border-box !important;
    }
    
    #topmenu_cate li:first-child {
        border: 1px solid #f5f5f5 !important;
    }
    
    #topmenu_cate a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: 100% !important;
        font-size: 1em !important;
        background: #f7f7f7 !important;
        color: #233874 !important;
        font-weight: 300 !important;
        text-align: center !important;
        text-decoration: none !important;
        transition: all 0.2s ease !important;
        box-sizing: border-box !important;
        padding: 0 10px !important;
        line-height: 1.2 !important;
    }
}

/* 호버 효과 - 모든 화면 공통 */
#topmenu_cate a:focus,
#topmenu_cate a:hover {
    background: #4a82ff !important;
    color: #fff !important;
}

/* 활성 탭 - 모든 화면 공통 */
#topmenu_cate {
    z-index: 2 !important;
}

#topmenu_cate a#bo_cate_on {
    z-index: 2 !important;
    background: #233874 !important;
    color: #ffffff !important;
    font-weight: 700 !important;
}

#topmenu_cate a#bo_cate_on:hover,
#topmenu_cate a#bo_cate_on:focus {
    background: #233874 !important;
    color: #ffffff !important;
}

/* ===== 4. 버튼 스타일 수정 ===== */
a.btn_sm {
    display: inline-block !important;
    font-size: 0.9em !important;
    padding: 4px !important;
    color: #4a82ff !important;
    border: 1px solid #4a82ff !important;
    text-decoration: none !important;
    vertical-align: middle !important;
}

a.btn_sm:focus,
a.btn_sm:hover {
    text-decoration: none !important;
    font-size: 0.9em !important;
    background: #4a82ff !important;
    color: #fff !important;
    border-color: #4a82ff !important;
}

a.btn_smb {
    display: inline-block !important;
    font-size: 0.9em !important;
    padding: 4px !important;
    background: #4a82ff !important;
    color: #fff !important;
    border: 1px solid #4a82ff !important;
    text-decoration: none !important;
    vertical-align: middle !important;
}

a.btn_smb:focus,
a.btn_smb:hover {
    display: inline-block !important;
    font-size: 0.9em !important;
    padding: 4px !important;
    background: #233874 !important;
    color: #fff !important;
    border: 1px solid #4a82ff !important;
    text-decoration: none !important;
    vertical-align: middle !important;
}

button.btn13 {
    display: inline-block !important;
    margin: 0 !important;
    padding: 5px !important;
    border: 1px solid #4a82ff !important;
    background: #4a82ff !important;
    color: #fff !important;
    text-decoration: none !important;
}

.btn_submit {
    border: 0 !important;
    background: #4a82ff !important;
    color: #fff !important;
    cursor: pointer !important;
    border-radius: 3px !important;
}

.btn_submit:hover {
    background: #4a82ff !important;
}

a.btn_b02,
.btn_b02 {
    display: inline-block !important;
    background: #4a82ff !important;
    padding: 0 10px !important;
    color: #fff !important;
    text-decoration: none !important;
    border: 0 !important;
    vertical-align: middle !important;
}

a.btn_b02:hover,
.btn_b02:hover {
    background: #4a82ff !important;
}

/* ===== 5. 페이지네이션 색상 수정 ===== */
.pg_current {
    display: inline-block !important;
    background: #4a82ff !important;
    border: 1px solid #4a82ff !important;
    color: #fff !important;
    font-weight: bold !important;
    height: 30px !important;
    line-height: 30px !important;
    padding: 0 10px !important;
    min-width: 30px !important;
    border-radius: 3px !important;
}

.pg_page:hover {
    background-color: #edf3fc !important;
    border-color: #4a82ff !important;
    color: #4a82ff !important;
}

/* ===== 6. Top 버튼 색상 수정 ===== */
#top_btn {
    position: fixed !important;
    bottom: 20px !important;
    right: 20px !important;
    width: 50px !important;
    height: 50px !important;
    line-height: 46px !important;
    border: 2px solid #4a82ff !important;
    color: #4a82ff !important;
    text-align: center !important;
    font-size: 15px !important;
    z-index: 90 !important;
    background: rgba(255,255,255,0.5) !important;
}

#top_btn:hover,
#top_btn:focus {
    border-color: #4a82ff !important;
    background: #4a82ff !important;
    color: #fff !important;
}

/* ===== 7. 네비게이션 메뉴 색상 수정 ===== */
.main-nav a:hover,
.main-nav .active > a,
.main-nav li:hover > a {
    color: #4a82ff !important;
    text-decoration: none !important;
}

/* 메인 네비게이션 드롭다운 호버 효과 */
.main-nav .drop-down:hover > ul {
    opacity: 1 !important;
    top: 100% !important;
    visibility: visible !important;
    background: #fff !important;
}

/* 드롭다운 메뉴 배경색 */
.main-nav .drop-down ul {
    background: #fff !important;
    border: 1px solid #cdcdcd !important;
}

/* 드롭다운 링크 호버 효과 */
.main-nav .drop-down ul a:hover,
.main-nav .drop-down ul .active > a,
.main-nav .drop-down ul li:hover > a {
    color: #4a82ff !important;
    font-weight: bold !important;
    background: #edf3fc !important;
}

/* ===== 8. 게시판 테이블 색상 수정 ===== */
.tbl_head01 table {
    border-top: 2px solid #233874 !important;
}

.tbl_head01 thead th {
    background-color: #f7f7f7 !important;
    color: #383838 !important;
    font-weight: 600 !important;
    border-bottom: 1px solid #c4c4c4 !important;
}

.tbl_head01 tbody td {
    font-weight: 300 !important;
    color: #444444 !important;
}

/* ===== 9. 링크 색상 수정 ===== */
.td_subject .bo_tit a {
    color: #383838 !important;
    font-weight: 500 !important;
}

.td_subject .bo_tit a:hover {
    color: #4a82ff !important;
}

/* ===== 10. 다운로드 아이콘 색상 ===== */
.td_subject .fa-download {
    color: #4a82ff !important;
}

/* ===== 11. 검색 버튼 색상 ===== */
.btn_bo_sch {
    background-color: #4a82ff !important;
    border-color: #4a82ff !important;
}

.btn_bo_sch:hover {
    background-color: #4a82ff !important;
    border-color: #4a82ff !important;
}

.sch_btn {
    background-color: #4a82ff !important;
    border-color: #4a82ff !important;
}

.sch_btn:hover {
    background-color: #4a82ff !important;
    border-color: #4a82ff !important;
}

/* ===== 12. 총 게시물 수 표시 색상 ===== */
#bo_list_total span {
    color: #4a82ff !important;
    font-weight: 600 !important;
}

/* ===== 13. Best 아이콘 색상 ===== */
.best_icon {
    background-color: #ef7575 !important;
    color: white !important;
}

/* ===== 14. 모든 녹색 강제 제거 ===== */
*[style*="color:#28a745"],
*[style*="color:green"],
*[style*="color:#009933"],
*[style*="color:#00a651"],
*[style*="background:#28a745"],
*[style*="background:green"],
*[style*="background:#009933"],
*[style*="background:#00a651"] {
    color: #4a82ff !important;
    background-color: transparent !important;
}

*[style*="border-color:#28a745"],
*[style*="border-color:green"],
*[style*="border-color:#009933"],
*[style*="border-color:#00a651"] {
    border-color: #4a82ff !important;
}

.text-success,
.bg-success,
.border-success {
    color: #4a82ff !important;
    background-color: transparent !important;
    border-color: #4a82ff !important;
}

/* ===== 15. 로고변경 레이어 숨김 ===== */
#logo_change {
    display: none !important;
}

/* ===== 16. 중등 1차 D-Day 버튼 위치 및 스타일 ===== */
.imyong_day {
    position: absolute !important;
    top: 95px !important;
    left: 50% !important;
    margin-left: -550px !important;
    z-index: 100 !important;
}

.imyong_day button {
    display: inline-block !important;
    padding: 6px 15px !important;
    border: 1px solid #233874 !important;
    color: #ffffff !important;
    font-size: 0.7em !important;
    border-radius: 5px !important;
    cursor: default !important;
    transition: all 0.3s ease !important;
    background: linear-gradient(#4a82ff, #233874);
}

.imyong_day button span {
    color: #ffff00 !important;
    font-weight: 700 !important;
}

/* ===== 17. 하단 로고 크기 60% 축소 ===== */
#ft_logo img {
    width: 60% !important;
    height: auto !important;
}
    width: 100% !important;
}

/* 탭메뉴 상위 div - 인라인 스타일 강제 덮어쓰기 */
/* div 스타일 완전 제거 + margin-bottom만 */
#container_title + div[style] {
    margin: 0 !important;
    margin-bottom: 30px !important;
    padding: 0 !important;
}

/* ===== 3. 상단 메뉴바 (#topmenu_cate) 반응형 설정 ===== */
/* 기본 컨테이너 설정 */
#topmenu_cate {
    clear: both !important;
    position: relative !important;
    margin: 10px 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    width: 100% !important;
    max-width: 1160px !important;
    font-size: 0.9em !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0 !important;
}

/* 기존 after 가상요소 제거 (flex 사용으로 불필요) */
#topmenu_cate:after {
    display: none !important;
}

/* 모바일: 2개씩 배치 (768px 이하) */
@media (max-width: 768px) {
    #container_title + div[style] {
        margin: 0 auto 20px auto !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding: 0 10px !important;
    }
    
    #topmenu_cate {
        margin: 10px 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    
    #topmenu_cate li {
        position: relative !important;
        float: none !important;
        width: 50% !important;
        height: 40px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 1px solid #f5f5f5 !important;
        box-sizing: border-box !important;
    }
    
    #topmenu_cate li:first-child {
        border: 1px solid #f5f5f5 !important;
    }
    
    #topmenu_cate a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: 100% !important;
        font-size: 1em !important;
        background: #f7f7f7 !important;
        color: #233874 !important;
        font-weight: 300 !important;
        text-align: center !important;
        text-decoration: none !important;
        transition: all 0.2s ease !important;
        box-sizing: border-box !important;
        padding: 0 5px !important;
        line-height: 1.2 !important;
    }
}

/* PC/태블릿: 5개씩 배치 (769px 이상) */
@media (min-width: 769px) {
    #container_title + div[style] {
        margin: 0 auto 30px auto !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding: 0 !important;
    }
    
    #topmenu_cate {
        margin: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    
    #topmenu_cate li {
        position: relative !important;
        float: none !important;
        width: 20% !important;
        height: 40px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 1px solid #f5f5f5 !important;
        box-sizing: border-box !important;
    }
    
    #topmenu_cate li:first-child {
        border: 1px solid #f5f5f5 !important;
    }
    
    #topmenu_cate a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: 100% !important;
        font-size: 1em !important;
        background: #f7f7f7 !important;
        color: #233874 !important;
        font-weight: 300 !important;
        text-align: center !important;
        text-decoration: none !important;
        transition: all 0.2s ease !important;
        box-sizing: border-box !important;
        padding: 0 10px !important;
        line-height: 1.2 !important;
    }
}

/* 호버 효과 - 모든 화면 공통 */
#topmenu_cate a:focus,
#topmenu_cate a:hover {
    background: #4a82ff !important;
    color: #fff !important;
}

/* 활성 탭 - 모든 화면 공통 */
#topmenu_cate {
    z-index: 2 !important;
}

#topmenu_cate a#bo_cate_on {
    z-index: 2 !important;
    background: #233874 !important;
    color: #ffffff !important;
    font-weight: 700 !important;
}

#topmenu_cate a#bo_cate_on:hover,
#topmenu_cate a#bo_cate_on:focus {
    background: #233874 !important;
    color: #ffffff !important;
}

/* ===== 4. 버튼 스타일 수정 ===== */
a.btn_sm {
    display: inline-block !important;
    font-size: 0.9em !important;
    padding: 4px !important;
    color: #4a82ff !important;
    border: 1px solid #4a82ff !important;
    text-decoration: none !important;
    vertical-align: middle !important;
}

a.btn_sm:focus,
a.btn_sm:hover {
    text-decoration: none !important;
    font-size: 0.9em !important;
    background: #4a82ff !important;
    color: #fff !important;
    border-color: #4a82ff !important;
}

a.btn_smb {
    display: inline-block !important;
    font-size: 0.9em !important;
    padding: 4px !important;
    background: #4a82ff !important;
    color: #fff !important;
    border: 1px solid #4a82ff !important;
    text-decoration: none !important;
    vertical-align: middle !important;
}

a.btn_smb:focus,
a.btn_smb:hover {
    display: inline-block !important;
    font-size: 0.9em !important;
    padding: 4px !important;
    background: #233874 !important;
    color: #fff !important;
    border: 1px solid #4a82ff !important;
    text-decoration: none !important;
    vertical-align: middle !important;
}

button.btn13 {
    display: inline-block !important;
    margin: 0 !important;
    padding: 5px !important;
    border: 1px solid #4a82ff !important;
    background: #4a82ff !important;
    color: #fff !important;
    text-decoration: none !important;
}

.btn_submit {
    border: 0 !important;
    background: #4a82ff !important;
    color: #fff !important;
    cursor: pointer !important;
    border-radius: 3px !important;
}

.btn_submit:hover {
    background: #4a82ff !important;
}

a.btn_b02,
.btn_b02 {
    display: inline-block !important;
    background: #4a82ff !important;
    padding: 0 10px !important;
    color: #fff !important;
    text-decoration: none !important;
    border: 0 !important;
    vertical-align: middle !important;
}

a.btn_b02:hover,
.btn_b02:hover {
    background: #4a82ff !important;
}

/* ===== 5. 페이지네이션 색상 수정 ===== */
.pg_current {
    display: inline-block !important;
    background: #4a82ff !important;
    border: 1px solid #4a82ff !important;
    color: #fff !important;
    font-weight: bold !important;
    height: 30px !important;
    line-height: 30px !important;
    padding: 0 10px !important;
    min-width: 30px !important;
    border-radius: 3px !important;
}

.pg_page:hover {
    background-color: #edf3fc !important;
    border-color: #4a82ff !important;
    color: #4a82ff !important;
}

/* ===== 6. Top 버튼 색상 수정 ===== */
#top_btn {
    position: fixed !important;
    bottom: 20px !important;
    right: 20px !important;
    width: 50px !important;
    height: 50px !important;
    line-height: 46px !important;
    border: 2px solid #4a82ff !important;
    color: #4a82ff !important;
    text-align: center !important;
    font-size: 15px !important;
    z-index: 90 !important;
    background: rgba(255,255,255,0.5) !important;
}

#top_btn:hover,
#top_btn:focus {
    border-color: #4a82ff !important;
    background: #4a82ff !important;
    color: #fff !important;
}

/* ===== 7. 네비게이션 메뉴 색상 수정 ===== */
.main-nav a:hover,
.main-nav .active > a,
.main-nav li:hover > a {
    color: #4a82ff !important;
    text-decoration: none !important;
}

/* 메인 네비게이션 드롭다운 호버 효과 */
.main-nav .drop-down:hover > ul {
    opacity: 1 !important;
    top: 100% !important;
    visibility: visible !important;
    background: #fff !important;
}

/* 드롭다운 메뉴 배경색 */
.main-nav .drop-down ul {
    background: #fff !important;
    border: 1px solid #cdcdcd !important;
}

/* 드롭다운 링크 호버 효과 */
.main-nav .drop-down ul a:hover,
.main-nav .drop-down ul .active > a,
.main-nav .drop-down ul li:hover > a {
    color: #4a82ff !important;
    font-weight: bold !important;
    background: #edf3fc !important;
}

/* ===== 8. 게시판 테이블 색상 수정 ===== */
#bo_list { margin-top:30px;}
.tbl_head01 table {
    border-top: 1px solid #c4c4c4 !important;
}

#bo_list .tbl_head01 a {
    color: #383838 !important;
}

.tbl_head01 thead th {
    background-color: #fff !important;
    color: #383838 !important;
    font-weight: 600 !important;
    border-bottom: 1px solid #c4c4c4 !important;
}

.tbl_head01 tbody td {
    font-weight: 300 !important;
    color: #444444 !important;

}


#bo_list tbody .even td {
    background-color: #edf3fc !important;    
}

.bo_notice td {
    background-color: #edf3fc !important;    
}

.bo_notice .notice_icon {
    color:#ef7575;
}

.bo_notice {
    background-color: #edf3fc !important;
}
#bo_list .bo_tit .fa-download { background-color:#fff;border:1px solid #eee}
#bo_list .bo_tit .fa-link { background-color:#fff;border:1px solid #eee}

/* 기본 게시판 카테고리 */
#bo_cate {margin:30px 0 28px 0;font-size:0.9em;}
#bo_cate h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_cate ul {zoom:1}
#bo_cate ul:after {display:block;visibility:hidden;clear:both;content:""}
#bo_cate li {display:inline-block;padding:2px;font-weight:400;}
#bo_cate a {display:block;line-height:28px;padding:5px 15px;border-radius:5px;color:#233874;border:0px;background-color:#f7f7f7}
#bo_cate a:focus, #bo_cate a:hover, #bo_cate a:active {text-decoration:none;background:#4a82ff;color:#fff}
#bo_cate #bo_cate_on {z-index:2;background:#233874;color:#fff;font-weight:bold;}

/* ===== 9. 링크 색상 수정 ===== */
.td_subject .bo_tit a {
    color: #383838 !important;
    font-weight: 500 !important;
}

.td_subject .bo_tit a:hover {
    color: #4a82ff !important;
}

/* ===== 10. 다운로드 아이콘 색상 ===== */
.td_subject .fa-download {
    color: #4a82ff !important;
}

/* ===== 11. 검색 버튼 색상 ===== */
.btn_bo_sch {
    background-color: #4a82ff !important;
    border-color: #4a82ff !important;
}

.btn_bo_sch:hover {
    background-color: #4a82ff !important;
    border-color: #4a82ff !important;
}

.sch_btn {
    background-color: #4a82ff !important;
    border-color: #4a82ff !important;
}

.sch_btn:hover {
    background-color: #4a82ff !important;
    border-color: #4a82ff !important;
}

/* ===== 12. 총 게시물 수 표시 색상 ===== */
#bo_list_total span {
    color: #4a82ff !important;
    font-weight: 600 !important;
}

/* ===== 13. Best 아이콘 색상 ===== */
.best_icon {
    background-color: #ef7575 !important;
    color: white !important;
}

/* ===== 14. 모든 녹색 강제 제거 ===== */
*[style*="color:#28a745"],
*[style*="color:green"],
*[style*="color:#009933"],
*[style*="color:#00a651"],
*[style*="background:#28a745"],
*[style*="background:green"],
*[style*="background:#009933"],
*[style*="background:#00a651"] {
    color: #4a82ff !important;
    background-color: transparent !important;
}

*[style*="border-color:#28a745"],
*[style*="border-color:green"],
*[style*="border-color:#009933"],
*[style*="border-color:#00a651"] {
    border-color: #4a82ff !important;
}

.text-success,
.bg-success,
.border-success {
    color: #4a82ff !important;
    background-color: transparent !important;
    border-color: #4a82ff !important;
}

/* ===== 15. 로고변경 레이어 숨김 ===== */
#logo_change {
    display: none !important;
}

/* ===== 16. 중등 1차 D-Day 버튼 위치 및 스타일 ===== */
.imyong_day {
    position: absolute !important;
    top: 90px !important;
    left: 50% !important;
    margin-left: -684px !important;
    z-index: 100 !important;
}

.imyong_day button {
    display: inline-block !important;
    padding: 10px 20px !important;
	background: linear-gradient(to right, #4a82ff, #233874);    
	border: 1px solid #4a82ff;
    border-radius: 5px !important;
    cursor: default !important;
}

.imyong_day button span {
    color: #ffffff !important;
    font-weight: 600 !important;
    font-size: 1.3em !important;    
}

/* ===== 17. 하단 로고 크기 60% 축소 ===== */
#ft_logo img {
    width: 60% !important;
    height: auto !important;
}

/* PC 제외 모두 숨김 */
@media (max-width: 1000px) {
    #container_title {
        display: none !important;
    }
}
/* ============================================
   부트스트랩 버튼 font-weight 오버라이드
   ============================================ */
.btn, .btn-sm, .btn-info, .btn-primary, .btn-success, .btn-warning, .btn-danger {
    font-weight: 300 !important;
}
#lec_list_category li a {font-weight:500;color:#233874;padding:0 20px;border-right:1px solid #999;}
#lec_list_category li:last-child a {border-right:none;}
#lec_list_category li a:hover, #lec_list_category a:focus {color:#4a82ff;font-weight:700}
#lec_list_category .cateon {color:#233874;font-weight:700}

/* ===== 1. 상단 메뉴 가운데 정렬 ===== */
#navi_wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
}

.main-nav {
    display: flex;
    justify-content: center;
    padding-left: 0 !important;  /* 기존 padding-left:100px 제거 */
}

.main-nav > ul {
    display: flex;
    justify-content: center;
    margin: 0 auto;
}

/* ===== 2. 메뉴 호버시 파란 배경 제거 ===== */
.main-nav a:hover,
.main-nav .active > a,
.main-nav li:hover > a {
    background: transparent !important;
    color: #4a82ff !important;
    text-decoration: none !important;
}

.main-nav .drop-down ul a:hover,
.main-nav .drop-down ul .active > a,
.main-nav .drop-down ul li:hover > a {
    color: #4a82ff !important;
    font-weight: bold !important;
    background: transparent !important;
}

/* ===============
수정하면서 추가 
================*/
#container_title {
    font-size: 1.5em !important;
    margin: 0 auto 25px auto; !important;
    font-weight: bold !important;
    border-left: none !important;
    padding-left: 0 !important;
    color: #233874 !important;
}

/* 흰색 배경 버튼  */
.btn-outline-blue {
    display: inline-block;
    width: 200px;
    padding: 15px 20px;
    background: #fff;
    color: #4a82ff;
    border: 1px solid #4a82ff;
    border-radius: 8px;
    font-weight: 700;
    font-size: 1em;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn-outline-blue:hover {
    background: #62c4ff;
    color: #fff;
}

/* 파란색 배경 버튼  */
.btn-filled-blue {
    display: inline-block;
    width: 200px;
    padding: 15px 20px;
    background: #4a82ff;
    color: #fff;
    border: 1px solid #4a82ff;
    border-radius: 8px;
    font-weight: 700;
    font-size: 1em;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn-filled-blue:hover {
    background: #3a6edf;
    border-color: #3a6edf;
}

#mode_switch {
    position: absolute;
    top: 50px;
    left: 50%;
    margin-left:525px;
    z-index: 100;
}

/* 직강, 고시로 바로가기 버튼 css*/
.mode-btn {
    display: inline-block;
    padding: 3px 10px;
    background: #f7f7f7;
    color: #777;
    border: 1px solid #ddd;
    border-radius: 10px;
    font-size: 0.7em;
    font-weight: 400;
    text-decoration: none;
    transition: all 0.2s ease;
}

.mode-btn:hover {
    background: #4a82ff;
    color: #fff;
    border-color: #4a82ff;
}

/* 모바일 하단이미지 기본 스타일 (핸드폰용) */
.mobile-banner-img {
    width: 300px !important;
    height: auto !important;
    display: block !important;
    margin: 0 auto !important;
}

/* 태블릿에서 최대 너비 제한 (768px 이상) */
@media (min-width: 768px) {
    .mobile-banner-img {
        max-width: 500px !important;
        width: 100% !important;
    }
}

/* 더 큰 화면에서도 동일하게 적용 */
@media (min-width: 1024px) {
    .mobile-banner-img {
        max-width: 600px !important;
        width: 100% !important;
    }
}