@charset "utf-8";
@import url('font.css');


@keyframes shake {
    0% {transform: rotate(0) scale(1);}
    25% {transform: rotate(-15deg) translateY(15px) scale(0.98);}
    50% {transform: rotate(-5deg) translateY(20px) scale(0.95);}
    75% {transform: rotate(5deg) translateY(15px) scale(0.98);}
    100% {transform: translate(0) scale(1);}

}
.edu_card .wrapper .pic {overflow: hidden;}
.edu_card:hover .ecard_img{animation: shake 0.7s alternate infinite;}
.edu_card:hover .wrapper .txt ul li {border:1px solid #ccc;}
.edu_card .wrapper .txt ul li {border: 1px solid #fff;}
.inner{
    width: 100%;
    max-width: 1300px;
    margin: 0 auto;
}

.search_box {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 20px;
}
.search_box .search_form {
    max-width: 100%;
}

    .only_mo,
    .only_tab{ display: none !important;}
    .only_web{ display: block !important; }
    /* mian layout */
    .main_section {
        display: flex;
        flex-direction: column;
        gap: clamp(60px, 10.9vw, 140px);
        padding: 0 20px;
        width: 100%;
        max-width: 1340px;
        margin: 0 auto;
    }
    

      
    

    /* fab 바로가기 */
    .fab_content {
        position: fixed;
        top: 294px;
        right: calc(50% - 850px);
        z-index: 99;
        display: flex !important; 
        flex-direction: column;
        gap: 20px;
        width: 180px;
    }
    .fab_menu {
        overflow: hidden;
        display: flex;
        flex-direction: column;
        background-color: #1b68bd;
        box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.1);
        border-radius: 24px;
        border: 1px solid #b7b6ba;
    }
    .fab_menu h6 {
        padding: 12px 0 8px;
        text-align:center;
        font-size: 18px;
        font-weight: 500;
        color: #fff;
    }   
    .fab_menu_list {
        display: flex;
        flex-direction: column;
        gap: 24px;
        border-radius: 20px;
        background-color: #fff;
        padding:8px 16px 40px;
    }
    .fab_menu_list ul {
        display: flex;
        flex-direction: column; 
    }
    .fab_menu_list ul li {
        border-bottom: 1px solid #b7b6ba;
    }
    .fab_menu_list ul li a {
        display: flex;
        align-items: center;
        gap: 8px;
        width: 100%;
        height: 56px;
        padding: 8px 0;
        font-size: 12px;
        font-weight: 500;
        color: #000;
    }
    .fab_menu_list ul li a span {
        flex: 1;
        text-align: center;
        font-size: 16px;
        color: #333;
        letter-spacing: -0.04em;
        & > em {
            display: block;
            font-size: 14px;
            font-style: normal;
        }
    }
    .fab_menu_list ul li a img {
        transform: scale(0.8);
    }
    .fab--cs {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 4px;
        color: #5c5b5d;
        letter-spacing: -0.02em;
    }
    .fab-cs--tit {
        font-size: 16px;
    } 
    .fab-cs--sub {
        font-size: 22px;
        font-weight: 500;
    }
    .fab-cs--num {
        font-size: 26px;
        font-weight: 700;
        color: #4a494b;
    }
    .fab-util {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        gap: 8px;
    }
    .fab-util--item {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 48px;
        height: 48px;
        border-radius: 50%;
        background-color: #1b68bd;
        cursor: pointer;
        pointer-events: auto;
        outline: none;
        border: none;
        img {
            width: 30px;
            height: 30px;
            object-fit: cover;
            object-position: center;
        }
    }

    /* 카운피아만의 특성화 교육 */
    
    /* 카운피아 new,best */
    .counpia_new {position: relative; width: 100%;padding-bottom: 70px;}
    .counpia_new .inner{width: 100%;}
    .counpia_new .tit_box{display: flex; align-items: center; width: 100%; gap: 4px;padding-bottom: 12px;}
    .counpia_new .new_tit{font-size: 36px; font-weight: 800; color: #1b68bd;letter-spacing: -0.02em;}
    .counpia_new .new_sub{font-size: 24px;}
    .counpia_new .new_sub span{font-weight: 800;}
    .counpia_new .btn--more {flex: none;margin-left: auto; display: flex; align-items: center; gap: 4px; padding: 4px 12px;border:1px solid #a7a7a7;font-size:16px;font-weight: 500;letter-spacing: -0.02em;}

    .counpia_new .new_con{
        display:grid;
        grid-template-columns:repeat(4, minmax(0,1fr));
        gap: clamp(16px, 2.6vw, 35px);
        align-items:stretch; /* 같은 행에서 카드 높이 동일 */
    }
    .counpia_new .new_con .content{position: relative; display: flex; flex-direction: column; background-color: #f2f2f2; border-radius: 16px;}
    .counpia_new .con_info{padding: 16px;   display:flex; flex-direction:column; gap:8px; flex:1; }
    /*
    .counpia_new .con_cate {padding: 5px 0;}
    .counpia_new .con_cate span{padding: 5px; color: #fff; border-radius: 4px;}
    .counpia_new .con_cate .aka{background-color: #0c64f2; }
    .counpia_new .con_cate .tra{background-color: #e67300; }
    .counpia_new .con_cate .zoom{background-color: #a261b7; }
    .counpia_new .con_cate .event{background-color: #e65c5c; }
    */
    .counpia_new .con_tit{
        font-size: clamp(16px, 1.9vw, 20px);
        font-weight: 700;
        margin: clamp(4px, 1.1vw, 10px) 0 0px;
        line-height: 1.2em;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden;
        text-overflow: ellipsis;
        max-height: calc(1.2em * 2);    
      }
    .counpia_new .con_tit span{font-size: 20px; font-weight: 400;}
    .counpia_new .con_teacher{display: flex; align-items: center;flex-wrap: wrap; gap: 5px;}
    .counpia_new .con_teacher span{font-weight: 300; background-color: #fff; padding: 2px 6px; border: 1px solid #a7a7a7;  border-radius: 4px;letter-spacing: -0.02em;}
    .counpia_new .con_btn{display: flex; align-items: center; justify-content: right; gap: 7px; margin-top:auto; padding: clamp(8px, 2vw, 16px);}
    .counpia_new .video_btn{display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; background:#fff; border: 1px solid #1b67bb; border-radius: 50%; font-size: 0; cursor: pointer; transition: all 0.3s;}
    .counpia_new .video_btn img {filter: none; transition: all 0.3s;}
    .counpia_new .video_btn:hover{background:#1b67bb;}
    .counpia_new .video_btn:hover img {filter: brightness(100) invert(0);}
    .counpia_new .link_btn{display: flex; align-items: center; justify-content: center; height: 36px; border: 1px solid #1b67bb; border-radius: 18px; background-color: #fff; padding: 0 clamp(8px, 3.1vw, 24px); color: #1b67bb; transition: all 0.3s;}
    .counpia_new .link_btn:hover{color:#fff;background-color: #1b67bb;}
    .counpia_new .preview_btn{flex: none;display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; background:#fff; border: 1px solid #1b67bb; border-radius: 50%; font-size: 0; cursor: pointer; transition: all 0.3s;}
    .counpia_new .preview_btn img {filter: none; transition: all 0.3s;}
    .counpia_new .preview_btn:hover{background:#1b67bb;}
    .counpia_new .preview_btn:hover img {filter: brightness(100) invert(0);}
    .counpia_new .content .con_pic{width: 100%; overflow: hidden;}
    .counpia_new .con_pic img{width: 100%;   aspect-ratio:340/211;    /* ✅ 썸네일 비율 고정 */ object-fit: cover; border-radius: 16px 16px 0 0;}
    

      /* 고객상담 */
      .service_box{
          display: flex;
          align-items: center;
          width: 100%;
          max-width: 1300px;
          margin: 0 auto 100px;
          padding: 20px 0;
          color: #000;
        }

    .service_L{
          display: flex;
          align-items: center;
          width: 60%;
          border-right: 1px solid #dbd9d9;
        }
    
    .service_info{
        display: flex;
        flex-direction: column;
        background-color: #efefef;
        border-radius: 15px;
        padding: 40px;
    }
    .service_L .s_tit{
        font-size: 25px;
        font-weight: 400;
        line-height: 1;
    }
    .service_L .s_num{
        font-size: 48px;
        font-weight: 900;
        line-height: 1;
        
    }
    .service_box .s_btn{
        display: flex;    
        align-items: flex-start;
        justify-content: center;
        width: 50%;
        flex: 1;
        gap: 16px;
        padding: 0 20px;
    }
    .service_box .s_btn li a{
        display: flex;
        flex-flow: column nowrap;
        align-items: center;
        justify-content: center;
        text-align: center;
        font-size: clamp(16px, 2.6vw, 20px);
    }
    .service_box .s_btn li a p{
        color: #000;
    }
    .service_box .s_btn li .img_Back{
        display: flex;
        align-items: center;
        justify-content: center;
        width: clamp(64px, 9vw, 92px);
        height: clamp(64px, 9vw, 92px);
        background-color: #fff;
        border-radius: 50%;
        margin-bottom : 13px; 
    }
    .service_box .s_btn li .img_Back img{
        width: 90%;
    }
    .service_R{
        margin:0 auto;
        text-align: center;
    }
    .service_R p:first-child{
        font-size: clamp(20px, 3.1vw, 24px);
        font-weight: 800;
    }
    .service_R p:nth-child(2){
        font-size:clamp(16px, 2.3vw, 18px);
        font-weight: 400;
    }
    .service_R span{
        font-size: clamp(14px, 2vw, 16px);
        font-weight: 300;
        line-height: 1.6821;
    }
    


    .lct_wrap { display:flex; justify-content:space-evenly; flex-wrap:wrap; width:100%;}
    .lct_wrap .content { width:18.5%; }
    .lct_wrap .content .pic { display:block; width:100%; padding:0; text-align:center; }
    .lct_wrap .content .pic img {width:100%; border-radius: 4px;}
    .lct_wrap .content p { display:block; margin-top:8px; font-size:0.9em; color:#9e9e9e; }
    .lct_wrap .content p span { display:block; margin-top:3px; font-size:1.05em; color:#222; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}

    .edu_card { background:url(../img/edu_card_bg.gif) top; }
    .edu_card .wrapper a { display:table; width:1000px; margin:0 auto;}
    .edu_card .wrapper .pic { display:table-cell; vertical-align:middle; }
    .edu_card .wrapper .tit { display:table-cell; vertical-align:middle; padding-top:2%; color:#497e98; }
    .edu_card .wrapper .tit strong { display:block; font-size:1.5em; color:#222; line-height:1.5em; }
    .edu_card .wrapper .txt { display:table-cell; vertical-align:middle; padding-top:2%; overflow:hidden;}
    .edu_card .wrapper .txt ul li { float:left; background:#fff; border-radius:15px; margin:0 5px; padding:5px 10px; font-size:0.9em; color:#646464; letter-spacing:-0.5px; text-align:center; }

    .info_banner { width: 100%; max-width:1300px; margin:20px auto; overflow:hidden; }
    .info_banner .manual a { float:left; background:url(../img/info_banner_01.gif) left; margin-right:1.5%; width:14%; padding:25px 0 25px 11%; font-size:0.9em; color:#646464; }
    .info_banner .company a { float:left; background:url(../img/info_banner_02.gif) left; margin-right:1.5%; width:14%; padding:25px 0 25px 11%; font-size:0.9em; color:#646464; }
    .info_banner .manual strong, .info_banner .company strong { display:block; font-size:1.4em; font-weight:500; color:#222; line-height:1.7em; }
    .info_banner .ceo a { float:right; background:url(../img/info_banner_03.jpg); width:44%; padding:24px 0 25px 3%; font-weight:300; font-size:0.9em; color:#fff;}
    .info_banner .ceo strong { display:block; font-size:1.5em; font-weight:600; line-height:1.5em; }

    .bottom {width: 100%; max-width:1300px; margin:73px auto 6px; overflow:hidden;}
    .bottom .bbs_wrap {
        width: 100%;
        display: flex;
        justify-content: space-between;
    }
    .bottom .bbs_wrap .board {
        width: 60%;
        border: 1px solid #e4e4e4;
        background-color: #fff;
        padding: 30px 30px;
        box-sizing: border-box;
        border-radius: 10px;
    }
    .bottom .bbs_wrap .board .tit { padding-bottom:12px; margin-bottom:12px; font-size:24px; font-weight:700; color:#222; }
    .bottom .bbs_wrap .board .tit a { float:right; font-size:0.7em; }
    .bottom .bbs_wrap .board .tit .text {
        font-size: 1rem;
        letter-spacing: -0.05em;
        color: #787878;
        font-weight: 400;
    }

    /*기본게시판*/
    .latestBBS { clear: both; margin-left:0;}
    .latestBBS li { width:100%; overflow:hidden; padding-bottom: 10px; }
    .latestBBS li a {display: flex;align-items: center;justify-content: space-between;gap: 16px;}
    .latestBBS li .title {
        display: block;
        width: 80%;
        font-size: 18px;
        color: #666;
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow: hidden;
    }
    .latestBBS li .date {font-size:18px; color:#666;letter-spacing:0;word-break: keep-all;text-wrap: nowrap;}

    .bottom .customer { float:right; width:30%; }
    .bottom .tit { margin-bottom:12px; font-size:1.3em; font-weight:600; color:#222; }
    .bottom .content { border:1px solid #e0e0e0; padding:27px 15px;}
    .bottom .content ul { display:table; }
    .bottom .content ul li { display:table-cell; vertical-align:middle; }
    .bottom .content ul li strong { display:block; margin:0 15px 0 10px; font-size:1.7em; font-weight:800; color:#222; letter-spacing:-1.0px;}
    .bottom .content ul li p { display:block; font-size:0.9em; color:#646464; line-height:1.5em; }

    .patners { background:#f7f7f7; border-top:1px solid #e0e0e0;}
    .patners .content { width:1300px; margin:0 auto; text-align:center; overflow:hidden;}
    .patners .content ul li { display:inline-block; width:12%;}

    .sim{
        padding: 70px 0;
        background-color: #f2f2f2;
    }
    .sim .inner {
        max-width: 1340px;
        padding: 0 20px;
    }
    .sim .txt{
        display: flex;
        align-items: center;
        gap: 8px;
        margin-bottom: 58px;
        letter-spacing: -0.02em;
    }
    .sim .txt .tit{
        font-size: 36px;
        font-weight: 700;
        color: #1b68bd;
    }
    .sim .txt .sub{
        font-size: 24px;
    }
    .sim .txt .sub span{
        font-weight: 700;
    }
    .sim_list {
        position: relative;
        padding: 0;
        list-style: none;
    }
    /* Slick 초기화 전 FOUC 방지: iOS에서 카드가 잠깐 다른 모양으로 보이는 문제 회피 */
    .sim_list:not(.slick-initialized) {
        visibility: hidden;
    }
    .sim_list .slick-track {
        display: flex;
        flex-flow: row nowrap;
        align-items: center;
        justify-content: center;
        gap: 0;
    }
    .sim_list .slick-list {
        overflow: hidden;
    }
    .sim_list .slick-slide {
        flex: 0 0 auto;
        box-sizing: border-box;
        height: auto;
        margin: 0 8px;
    }
    .sim_list .slick-slide > div {
        line-height: 0;
    }
    .sim_list .slick-slide.sim_item,
    .sim_list .slick-slide .sim_item {
        transform: scale(0.9);
        transform-origin: center center;
        transition: transform 0.5s ease;
    }
    .sim_list .slick-current {
        padding: 0;
    }
    .sim_list .slick-current.sim_item,
    .sim_list .slick-current .sim_item {
        transform: scale(1);
    }
    .sim_progress {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 8px;
        width: 100%;
        max-width: 430px;
        margin: 36px auto 0;
    }
    .sim_bar {
        position: relative;
        flex: 1;
        height: 2px;
        background: #fff;
        border-radius: 2px;
        overflow: hidden;
    }
    .sim_bar span{
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 0;
        height: 100%;
        background: #000;
    }
    .sim_prev,
    .sim_next {
        flex-shrink: 0;
        width: 32px;
        height: 32px;
        padding: 0;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        transition: background 0.2s ease, border-color 0.2s ease;
        border: none;
        background-color: transparent;
        -webkit-backface-visibility: hidden;
        outline: none;
        -webkit-tap-highlight-color: transparent;
    }
    /*
    .sim_prev:hover,
    .sim_next:hover {
        background: #f5f5f5;
        border-color: #bdbdbd;
    }
        */
    .sim_prev:active,
    .sim_next:active {
        background: none;
        border-color: none;
    }
    .sim_prev.slick-disabled,
    .sim_next.slick-disabled {
        opacity: 0.4;
        cursor: default;
    } 
    #sim_process_num {
        flex-shrink: 0;
        min-width: 40px;
        text-align: center;
        font-size: 18px;
        font-weight: 500;
        color: #8a8a8a;
        letter-spacing: 0.02em;
    }
    #sim_process_num span:first-child {
        color: #191919;
        font-weight: 700;
    }
    .sim_item {
        display: block;
        position: relative;
        box-sizing: border-box;
        width: 436px;
        max-width: 436px;
        height: 620px;
        overflow: hidden;
        border-radius: 24px;
        line-height: 100%;
    }
    .sim_item picture {
        display: block;
        width: 100%;
        height: 100%;
    }
    .sim_item picture img {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: top center;
    }
    .sim_info {
        position: absolute;
        left: 24px;
        bottom: 24px;
        width: calc(100% - 48px);
        display: flex;
        flex-direction: column;
        gap: 12px;
        color: #fff;
    }
    .sim_professor {
        display: flex;
        flex-flow: column nowrap;
        gap: 8px;
        
    }
    .sim_professor strong {
        display: block;
        font-size: 26px;
        font-weight: 500;
        line-height: 100%;
    }
    .sim_professor span {
        display: inline-flex;
        width: fit-content;
        padding-top: 4px;
        border-top:1px solid #fff;
        font-size: 14px;
        font-weight: 400;
        letter-spacing: -0.02em;
        line-height: 130%;
    }
    .sim_tit {
        margin: 0;
        font-size: 30px;
        font-weight: 600;
        line-height: 130%;
        letter-spacing: -0.02em;
    }
    .sim_sub {
        font-size: 14px;
        font-weight: 300;
        text-transform: uppercase;
    }



    .banner_zone{
        margin-top: clamp(40px, 8.1vw, 83px);
        position: relative;
    }
    .banner_box{
        width: 100%;
        height: clamp(240px, 41vw, 420px);
        position: relative;
        img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
        }
    }
    .banner_box .txt{
        position: absolute;
        top:50%;
        left:0;
        transform: translateY(-50%);
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 8px;
        width: 100%;
        color: #fff;
        font-family: "SUIT";
    }
    .banner_box .txt p{
        font-size: clamp(28px, 3.9vw, 40px);
        font-weight: 800;
    }
    .banner_box .txt span{
        font-size: clamp(16px, 2.3vw, 24px);
    }
    .banner_box .txt a{
        margin-top: clamp(20px, 2.6vw, 26px);
        padding: clamp(12px, 1.6vw, 18px) clamp(40px, 5.3vw, 65px);
        border-radius: 26px;
        font-size: clamp(14px, 1.8vw, 18px);
        color: #fff;
        background-color: #0091c1;
    } 

    .specialized .inner{
        display: flex;
        gap: 40px;
        align-items: center;
    }
    .specialized .left{
        width: 42%;
        flex-shrink: 0;
    }
    .specialized .right{
        flex: 1;
        min-width: 0;
    }
    .spec_heading {
        margin-bottom: 44px;
    }
    .spec_main_tit {
        font-size: 48px;
        font-weight: 800;
        color: #1b68bd;
        line-height: 1.2;
        margin: 0 0 10px;
        letter-spacing: -0.02em;
    }
    .spec_main_sub {
        font-size: 24px;
        font-weight: 600;
        color: #1f1f1f;
        letter-spacing: -0.04em;
    }
    .spec_tab {
        display: flex;
        flex-direction: column;
        gap: 24px;
        list-style: none;
        padding: 0;
        margin: 0;
    }
    .spec_tab_item button {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 54px;
        width: fit-content;
        height: 60px;
        padding: 8px 8px 8px 40px;
        font-size: 20px;
        font-weight: 500;
        letter-spacing: -0.04em;
        line-height: 100%;
        color: #1f1f1f;
        border: 0;
        background: #f8f8f8;
        border-radius: 999px;
        cursor: pointer;
        transition: background 0.25s ease, color 0.25s ease, border-color 0.25s ease;
        letter-spacing: -0.02em;
    }
    .spec_tab_item button:hover {
        background: #cee6ff;
        color: #1b68bd;
    }
    .spec_tab_item button .spec_ico {
        position: relative;
        display: inline-block;
        width: 42px;
        height: 42px;
        border-radius: 50%;
        flex-shrink: 0;
        background-color: #fff;
        box-shadow: 0 0 6px rgba(0, 0, 0, 0.1);
    }
    .spec_tab_item button .spec_ico::before,
    .spec_tab_item button .spec_ico::after {
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        background: #161616;
    }
    .spec_tab_item button .spec_ico::before {
        width: 14px;
        height: 2px;
        transform: translate(-50%, -50%);
    }
    .spec_tab_item button .spec_ico::after {
        width: 2px;
        height: 14px;
        transform: translate(-50%, -50%);
    }
    .spec_tab_item.active button {
        background: #1b68bd;
        color: #fff;
    }
    .spec_tab_item.active button:hover {
        background: #1b68bd;
        color: #fff;
    }
    .spec_tab_item.active button .spec_ico::after {
        display: none;
    }

    .spec_panel {
        display: none;
        flex-flow: column nowrap;
        padding: 40px 32px 32px;
        background: #f0f2f5;
        border-radius: 32px;
        min-height: 704px;
    }
    .spec_panel.active {
        display: flex;
    }
    .spec_sub {
        font-size: 20px;
        font-weight: 400;
        color: #666;
        margin: 0 0 6px;
        letter-spacing: -0.02em;
    }
    .spec_tit {
        font-size: 30px;
        font-weight: 800;
        color: #1f1f1f;
        line-height: 130%;
        margin: 0 0 24px;
        letter-spacing: -0.02em;
    }
    .spec_desc {
        font-size: 20px;
        font-weight: 400;
        line-height: 140%;
        color: #333;
        margin: 0 0 22px;
        letter-spacing: -0.02em;
    }
    .spec_tags {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        list-style: none;
        padding: 0;
        margin: 0 0 26px;
    }
    .spec_tags li {
        padding: 7px 14px;
        font-size: 14px;
        font-weight: 500;
        color: #1b68bd;
        background: #fff;
        border-radius: 999px;
        letter-spacing: -0.02em;
    }
    .spec_img {
        flex: none;
        margin-top:auto;
        border-radius: 16px;
        overflow: hidden;
        background: #fff;
    }
    .spec_img img {
        display: block;
        width: 100%;
        height: auto;
    }
@media screen and (max-width: 1300px) {
    .search_box.only_mo {
        display: flex !important;
    }
    .search_box.only_mo .search_form {
        display: block !important;
    }
    .fab_content {
        top: auto;
        right: 20px;
        bottom: 40px;
        width: auto;
    }
    .fab_menu {
        display: none;
    }
    .fab-util {
        flex-direction: column;
    }
    .bottom {
        padding:0 20px;
    }
}

@media screen and (max-width: 1024px) {
    .specialized .inner{
        flex-direction: column;
        gap: 24px;
        align-items: flex-start;
    }
    .specialized .left{
        width: 100%;
    }
    .specialized .right{
        flex: 1;
        width: 100%;
        min-width: 0;
    }
    .spec_heading {
        margin-bottom: 24px;
    }
    .spec_main_tit {
        margin-bottom: 0;
        font-size: clamp(20px, 3.5vw, 36px);
    }
    .spec_main_sub {
        font-size: clamp(14px, 1.9vw, 20px);
    }
    .spec_tab {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 8px;
    }
    .spec_tab_item {
        width: calc(33.3% - 8px);
    }
    .spec_tab_item button {
        justify-content: center;
        gap: 0;
        width: 100%;
        height: clamp(48px, 5.8vw, 60px);
        padding: 8px;
        font-size: clamp(14px, 1.7vw, 18px);
        border-radius: 8px;
    }
    .spec_tab_item button .spec_ico {
        display: none;
    }
    .spec_tab_item button .spec_ico::before,
    .spec_tab_item button .spec_ico::after {
        display: none;
    }
    .spec_tab_item.active button .spec_ico::after {
        display: none;
    }

    .spec_panel {
        padding: 24px;
        border-radius: 16px;
        min-height: fit-content;
    }
    .spec_sub {
        font-size: clamp(14px, 1.7vw, 20px);
    }
    .spec_tit {
        font-size: clamp(20px, 2.5vw, 30px);
        margin-bottom: clamp(12px, 1.5vw, 24px);
    }
    .spec_desc {
        font-size: clamp(16px, 1.9vw, 20px);
        margin-bottom: clamp(16px, 2.2vw, 24px);
    }
    .spec_tags {
        gap: 6px;
        margin-bottom: clamp(12px, 1.5vw, 24px);
    }

    .seormoon_banner  {
        width: 100%;
    }
    .seormoon_banner a {
        display: block;
        width: 100%;
        img {
            width: 100%;
        }
    }

    .bottom { width:100%; margin: 0 auto; overflow:hidden; margin-top: 50px;padding: 0 20px;}
    .bottom .bbs_wrap {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        margin: 0 auto;
    }
    .bottom .bbs_wrap .board {
        width: 100%;
        border: 1px solid #e4e4e4;
        padding: 24px;
        box-sizing: border-box;
        border-radius: 10px;
    }
    .bottom .bbs_wrap .board:first-child {
        margin-bottom: 24px;
    }
    .bottom .bbs_wrap .board .tit { padding-bottom:12px; margin-bottom:12px; font-size:1.2em; font-weight:600; color:#222; }
    .bottom .bbs_wrap .board .tit a { float:right; font-size:0.7em; }
    .bottom .bbs_wrap .board .tit .text {
        font-size: 1rem;
        letter-spacing: -0.05em;
        color: #787878;
        font-weight: 400;
    }

    .service_box {
        flex-direction: column;
        gap: 0;
        padding: 0 20px;
    }
    .service_box .service_L {
        width: 100%;
        gap: 24px;
        padding: 40px 0;
        border: 0;
    }
    .service_box .service_info {
        width: 50%;
    }
    .service_box .s_btn {
        padding-left: 16px; 
    }
    .line {
        display: none;
    }
    .service_R {
        width: 100%;
        border-top: 1px solid #dbd9d9;
        padding: 40px 0;
    }

    
}

@media screen and (max-width: 768px) {
    /* 카운피아 new,best */
    .counpia_new .tit_box{position:relative;flex-direction: column; align-items: flex-start;gap: 4px;padding-bottom: 16px;}
    .counpia_new .new_tit{font-size: 20px;}
    .counpia_new .new_sub{font-size: 14px;}
    .counpia_new .btn--more {flex: none;position:absolute; right:0; bottom:16px;}
    .counpia_new .new_con {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: repeat(2, minmax(0, 1fr));
    }
    .sim{
        padding: clamp(24px, 9.1vw, 70px) 0;
    }
    .sim .txt{
        flex-direction: column;
        display: flex;
        align-items: flex-start;
        gap: 4px;
        margin-bottom: clamp(24px, 6.8vw, 58px);
    }
    .sim .txt .tit{
        font-size: 20px;
        font-weight: 600;
    }
    .sim .txt .sub{
        font-size: 14px;
    }
    .service_box .service_L {
        flex-direction: column;
        gap: 24px;
    }
    .service_box .service_info {
        width: 100%;
        text-align:center;
        padding: 24px;
    }
    .service_L .s_tit {
        font-size: 16px;
    }
    .service_L .s_num {
        font-size: 32px;
    }
    .service_box .s_btn {
        padding-left: 16px; 
    }
    /*기본게시판*/
    .latestBBS { clear: both; margin-left:0;}
    .latestBBS li { width:100%; overflow:hidden; padding-bottom: 10px;}
    .latestBBS li .title {
        display: inline-block;
        width: 75%;
        font-size: 1rem;
        color: #666;
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow: hidden;
    }
    .latestBBS li .date {float:right; font-size:1rem; color:#666; letter-spacing:0;}
}


@media screen and (max-width: 720px) {
    .sim{
        padding: 48px 0;
    }
    .sim_list .slick-track {
        gap: 0;
    }
    .sim_list .slick-current {
        padding: 0;
    }
    .sim_list .slick-slide {
        width: 320px !important;
        margin: 0 2px;
        overflow: hidden;
    }
    .sim_progress {
        max-width: 320px;
        margin: 16px auto 0;
    }  
    #sim_process_num {
        min-width: 32px;
        font-size: 14px;
    }
    .sim_item {
        width: 320px;
        max-width: 320px;
        height: 480px;
        aspect-ratio: 320 / 480;
        border-radius: 16px;
    }
    .sim_item picture {
        width: 100%;
    }
    .sim_professor strong {
        font-size: 20px;
    }
    .sim_professor span {
        font-size: 13px;
    }
    .sim_tit {
        font-size: 24px;
    }
    .sim_sub {
        font-size: 13px;
    }
    .seormoon_banner a {
        width: 100%;
    }
    .seormoon_banner a img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

@media screen and (max-width: 420px) {
    .sim_list .slick-track {
        gap: 0;
    }
    .sim_list .slick-current {
        padding: 0;
    }
    .sim_list .slick-slide {
        width: 280px !important;
        margin: 0;
    }
    .sim_progress {
        max-width: 280px;
        margin: 8px auto 0;
    }
    .sim_item {
        width: 280px;
        max-width: 280px;
        height: 440px;
        border-radius: 16px;
    }
    .sim_professor strong {
        font-size: 18px;
    }
    .sim_professor span {
        font-size: 12px;
    }
    .sim_tit {
        font-size: 22px;
    }
    .sim_sub {
        font-size: 12px;
    }
}


@media (min-width:768px) and (max-width:1299px) {
    .only_mo,
    .only_web{display: none !important;}
    .only_tab{display: block !important;}

      
    .info_banner { width:90%; margin:20px auto; overflow:hidden; }
    .info_banner .manual a { float:left; background:url(../img/info_banner_01.gif) left; background-size:cover; margin-right:1.5%; width:17%; padding:18px 0 18px 10%; font-size:0.8em; color:#646464; }
    .info_banner .company a { float:left; background:url(../img/info_banner_02.gif) left; background-size:cover; margin-right:1.5%; width:17%; padding:18px 0 18px 10%; font-size:0.8em; color:#646464; }
    .info_banner .manual strong, .info_banner .company strong { display:block; font-size:1.1em; font-weight:500; color:#222; line-height:1.4em; }
    .info_banner .ceo a { float:right; background:url(../img/info_banner_03.jpg); background-size:cover; width:40%; padding:18px 0 18px 3%; font-weight:300; font-size:0.8em; color:#fff;}
    .info_banner .ceo strong { display:block; font-size:1.2em; font-weight:600; line-height:1.2em; }

}

@media screen and (max-width: 1024px) {
    #slider .slide.is-combined  {
        display: none;
    }
    #silder .slide.is-split {
        display: block;
    }
}


@media (max-width:767px) {
    .only_web,
    .only_tab{ display: none !important; }
    .only_mo{ display: block !important;}
    /* 메인 슬라이드  */
    
    .info_banner { width:85%; margin:20px auto; overflow:hidden; }
    .info_banner .manual { background:url(../img/info_banner_01.gif) left top; background-size:cover;}
    .info_banner .company { background:url(../img/info_banner_02.gif) left top; background-size:cover;}
    .info_banner .manual strong, .info_banner .company strong { display:block; font-size:1.05em; font-weight:500; color:#222; line-height:1.2em; }
    .info_banner .manual a, .info_banner .company a { display:block; margin-bottom:3%; width:70%; padding:15px 0 10px 30%; font-size:0.9em; color:#646464;}
    .info_banner .ceo { background:url(../img/info_banner_03.jpg); background-size:cover;}
    .info_banner .ceo strong { display:block; font-size:1.2em; font-weight:600; line-height:1.2em; }
    .info_banner .ceo a { display:block; width:92%; padding:15px 0 12px 8%; font-weight:300; font-size:0.8em; color:#fff;}
}
