@charset "utf-8";

@font-face{
    font-family:'Noto Sans Korean';
    font-style:normal;
    font-weight:300;
    src:url(/_font/NotoSansKR-Light-Hestia.eot),
    url(/_font/NotoSansKR-Light-Hestia.eot?#iefix) format('embedded-opentype'),
    url(/_font/NotoSansKR-Light-Hestia.woff) format('woff'),
    url(/_font/NotoSansKR-Light-Hestia.otf) format('opentype');
}

@font-face{
    font-family:'Noto Sans Korean';
    font-style:normal;
    font-weight:350;
    src:url(/_font/NotoSansKR-DemiLight-Hestia.eot),
    url(/_font/NotoSansKR-DemiLight-Hestia.eot?#iefix) format('embedded-opentype'),
    url(/_font/NotoSansKR-DemiLight-Hestia.woff) format('woff'),
    url(/_font/NotoSansKR-DemiLight-Hestia.otf) format('opentype');
}

@font-face{
    font-family:'Noto Sans Korean';
    font-style:normal;
    font-weight:400;
    src:url(/_font/NotoSansKR-Regular-Hestia.eot),
    url(/_font/NotoSansKR-Regular-Hestia.eot?#iefix) format('embedded-opentype'),
    url(/_font/NotoSansKR-Regular-Hestia.woff) format('woff'),
    url(/_font/NotoSansKR-Regular-Hestia.otf) format('opentype');
}

@font-face{
    font-family:'Noto Sans Korean';
    font-style:normal;
    font-weight:500;
    src:url(/_font/NotoSansKR-Medium-Hestia.eot),
    url(/_font/NotoSansKR-Medium-Hestia.eot?#iefix) format('embedded-opentype'),
    url(/_font/NotoSansKR-Medium-Hestia.woff) format('woff'),
    url(/_font/NotoSansKR-Medium-Hestia.otf) format('opentype');
}

@font-face{
    font-family:'Noto Sans Korean';
    font-style:normal;
    font-weight:700;
    src:url(/_font/NotoSansKR-Bold-Hestia.eot),
    url(/_font/NotoSansKR-Bold-Hestia.eot?#iefix) format('embedded-opentype'),
    url(/_font/NotoSansKR-Bold-Hestia.woff) format('woff'),
    url(/_font/NotoSansKR-Bold-Hestia.otf) format('opentype');
}

/* Default Setting */
html, body{height:100%;}
html, body, section, header, nav, footer, article, address, h1, h2, h3, h4, h5, h6, p, dt, dd, dl, ul, li, span, strong, div, table, td, input, fieldset, textarea, select, button, a, img{padding:0; margin:0; font-family:'Noto Sans Korean', 'Malgun Gothic', Dotum, '돋움',Helvetica,AppleSDGothicNeo,sans-serif; font-weight:400; box-sizing:border-box;}
body{font-size:14px; color:#333; overflow-x:hidden; overflow-y:auto; letter-spacing:-1px;}
li{list-style:none;}
img{vertical-align:top; border:none; max-width:100%;}
button{border:none; background-color:transparent; cursor:pointer;}
a{color:#333; text-decoration:none;}
table{border-collapse:collapse;}
.hidden{width:1px; height:1px; margin:-1px; overflow:hidden; position:absolute; clip:rect(0 0 0 0);}
.ir{display:block; width:100%; height:100%; z-index:-1; font-size:0; overflow:hidden; position:relative;}
caption{width:0; height:0; overflow:hidden; font-size:0; text-indent:-9999px;}
.mobile{display:none;}

#skip_navigation{display:none;}
#wrap:before{content:""; width:100%; height:312px; position:absolute; top:0; left:0; background:url(/_res/csw/img/bg_header_dim.png) repeat-x 50% 50%;}

/* Mobile GNB Dummy */
#wrap:after{display:none; content:""; width:100%; height:100%; background-color:rgba(0,0,0,0.7); position:fixed; top:0; left:0; z-index:98;}
#wrap.active:after{display:block;}

/* Common header */
header{width:100%; position:fixed; top:0; left:0; z-index:99; transition:all 0.3s;}
#tnb{border-bottom:1px solid rgba(255, 255, 255, 0.3);}
#tnb > div{display:flex; justify-content:space-between; align-items:center; width:100%; max-width:1400px; height:55px; margin:0 auto;}
#tnb > div div{display:flex; gap:15px;}
#tnb > div div a{font-size:14px; color:#fff;}
#tnb > div div a:hover, #tnb > div div a:focus{text-decoration:underline;}
header section{display:flex; justify-content:space-between; align-items:center; width:100%; max-width:1400px; height:110px; margin:0 auto; position:relative;}
header section h1 a{display:block; width:447px; height:55px; background:url(/_res/csw/img/logo.png) no-repeat 0 -55px/447px 110px; text-indent:-9999px;}
#gnb div.mobile{display:none; background-color:#424748;}
#gnb div.mobile a{flex:1 1 0; height:60px; line-height:60px; position:relative; font-size:13px; font-weight:700; color:#fff; text-align:center;}
#gnb div.mobile a:not(:first-child):before{content:""; width:1px; height:10px; position:absolute; top:50%; left:0; background-color:#b7b7b7; transform:translateY(-50%);}
#gnb > ul{display:flex;}
#gnb > ul > li{position:relative;}
#gnb > ul > li > a{display:flex; align-items:center; height:110px; padding:0 40px; font-size:22px; font-weight:500; color:#fff;}
#gnb > ul > li:last-child > a{padding-right:0;}
#gnb > ul > li > ul{visibility:hidden; max-height:0; min-width:200px; overflow:hidden; position:absolute; top:110px; left:50%; background-color:#f7f7f7; transition:max-height 0.2s; transform:translateX(-50%);}
#gnb > ul > li:last-child > ul{margin-left:20px;}
#gnb > ul > li.active > ul{display:block; visibility:visible; max-height:400px; border-top:4px solid #027d98;}
#gnb > ul > li > ul li a{display:block; height:50px; line-height:50px; font-size:18px; font-weight:350; color:#333; letter-spacing:0; text-align:center;}
#gnb > ul > li > ul li:focus a{visibility:visible; display:block;}
#gnb > ul > li > ul li a:hover, #gnb > ul > li > ul li a:focus{color:#fff; background-color:#027d98;}
#gnb > ul > li > ul li a:focus{visibility:visible; display:block;}
#gnb.active{visibility:visible; max-height:500px; opacity:1;}
#gnb_control{display:none; width:40px; height:40px; position:relative; border:none; transition:all 0.3s;}
#gnb_control span{width:26px; height:2px; background-color:#333; position:absolute; top:50%; left:50%; margin-top:-1px; margin-left:-13px; text-indent:-9999px; transition:all 0.3s;}
#gnb_control:before, #gnb_control:after{content:""; width:26px; height:2px; background-color:#333; position:absolute; left:50%; margin-left:-13px; transition:all 0.3s;}
#gnb_control:before{top:10px;}
#gnb_control:after{bottom:9px;}
#gnb_control.active span{opacity:0;}
#gnb_control.active:before{width:15px; height:2px; margin-left:-8px; top:19px; transform:rotate(45deg);}
#gnb_control.active:after{width:15px; height:2px; margin-left:-8px; bottom:19px; transform:rotate(-45deg);}

/* Header Active Design */
header.fixed{border-bottom:1px solid #d7d7d7; background-color:#fff;}
header.fixed #tnb{border-bottom:1px solid rgba(0, 0, 0, 0.1);}
header.fixed #tnb > div div a{color:#828282;}
header.fixed section h1 a{background-position:0 0;}
header.fixed #gnb > ul > li > a{color:#333;}

#quick_menu{position:relative; border-top:1px solid #484848; border-bottom:1px solid #484848; background-color:#1a1a1a; z-index:1;}
#qnb{width:100%; max-width:1400px; margin:0 auto;}
#qnb > ul{height:50px; border-left:1px solid #484848; border-right:1px solid #484848;}
#qnb > ul > li{width:25%; float:left; position:relative;}
#qnb > ul > li > a{display:block; height:50px; line-height:50px; padding-left:25px; font-size:16px; color:#c8c8c8; border-left:1px solid #484848; position:relative;}
#qnb > ul > li > a:after{content:''; width:10px; height:7px; position:absolute; top:50%; right:20px; margin-top:-3.5px; background:url(/_res/csw/img/bg_qnb_arrow.png) no-repeat 0 0; transition:all 0.3s;}
#qnb > ul > li.active > a:after{transform:rotate(180deg);}
#qnb > ul > li:first-child > a{border-left:none;}
#qnb > ul > li > ul{visibility:hidden; width:100%; max-height:0; overflow-y:auto; position:absolute; bottom:50px; left:0; z-index:2; border:1px solid #444; transition:all 0.3s;}
#qnb > ul > li.active > ul{visibility:visible; max-height:400px;}
#qnb > ul > li > ul > li > a{display:block; height:40px; line-height:40px; padding:0 20px; font-size:16px; color:#c8c8c8; background-color:#1a1a1a;}
#qnb > ul > li > ul > li > a:hover, #qnb > ul > li > ul > li > a:focus{background-color:#3c3c3c; color:#fff;}

#sub_contents div.jwxe_board table.type_board{border-top:2px solid #333;}

footer{position:relative; background-color:#1a1a1a; z-index:1;}
#footer{width:100%; max-width:1400px; margin:0 auto; padding:35px 0; position:relative;}
#footer > ul{display:flex; gap:20px; margin-bottom:10px;}
#footer > ul li a{font-size:16px; color:#a7a7a7;}
#footer > ul li:first-child a{color:#2aaec6;}
#footer > ul li a:hover, #footer > ul li a:focus{text-decoration:underline;}
#footer > address p{line-height:1.5; font-style:normal;}
#footer > address p span{position:relative; font-size:16px; color:#909090;}
#footer > address p.contact span:not(:first-child){padding-left:20px;}
#footer > address p.contact span:not(:first-child):before{content:""; width:1px; height:12px; position:absolute; top:7px; left:10px; background-color:#909090;}

div.main h3{padding:0 0 40px 0; font-family:'Merriweather'; font-size:35px; font-weight:900; color:#1a1a1a;}
div.main h3 span{font-family:'Merriweather'; font-size:50px;}

/* 메인_비쥬얼 */
#main_visual{position:relative;}
#main_visual div.text{display:flex; flex-direction:column; justify-content:center; width:100%; max-width:1400px; height:850px; margin:0 auto; position:relative;}
#main_visual div.text p{line-height:1.2; font-size:44px; font-weight:300; color:#fff; letter-spacing:-2px; text-shadow:1px 1px 2px rgba(0, 0, 0, 0.5);}
#main_visual div.text h2{line-height:1.7; font-size:66px; font-weight:700; color:#fff; letter-spacing:-2px; text-shadow:1px 1px 2px rgba(0, 0, 0, 0.5);}
#main_visual div.text h2 strong{font-weight:700; color:#74d8f7;}
#main_visual div.text h2 span{display:block; font-size:20px; font-weight:300; color:#dedede; letter-spacing:4px;}

#visual_swiper{width:100%; height:850px; position:absolute; top:0; left:0; z-index:-1;}
#visual_swiper div.swiper-slide.seen1{background:url(/_res/csw/img/bg_main_visual_01.jpg) no-repeat 50% 50%/cover;}
#visual_swiper div.swiper-slide.seen2{background:url(/_res/csw/img/bg_main_visual_d.jpg) no-repeat 50% 50%/cover;}
#visual_swiper div.swiper-slide.seen3{background:url(/_res/csw/img/bg_main_visual_e.jpg) no-repeat 50% 50%/cover;}

#visual_swiper_control{display:flex; align-items:center; justify-content:center; gap:15px; width:100%; position:absolute; bottom:70px; left:0; z-index:1;}
#visual_swiper_control div.pagination{display:flex; gap:15px;}
#visual_swiper_control div.pagination span.swiper-pagination-bullet{position:relative; width:27px; height:27px; border:1px solid transparent; cursor:pointer;}
#visual_swiper_control div.pagination span.swiper-pagination-bullet:before{content:""; position:absolute; width:10px; height:10px; top:50%; left:50%; transform:translate(-50%, -50%); background-color:#fff;}
#visual_swiper_control div.pagination span.swiper-pagination-bullet-active{border-color:#fff;}
#visual_swiper_control button.control{width:30px; height:30px; position:relative;}
#visual_swiper_control button.control:before{content:""; width:0; height:18px; position:absolute; top:50%; left:50%; border-width:9px 0 9px 13px; border-style:solid; border-color:transparent transparent transparent #fff; transform:translate(-50%, -50%); box-sizing:border-box; transition:0.1s all;}
#visual_swiper_control button.control.stop:before{border-width:0 0 0 13px; border-style:double;}
#visual_swiper.no_swiper div.navigation, #visual_swiper.no_swiper div.control{display:none;}

/* 메인_교수 소개 */
#main_faculty > div{width:100%; max-width:1400px; margin:0 auto; padding:90px 0;}
#main_faculty > div h3 span{color:#92c832;}

/* 메인_D Now */
#main_now{background-color:#13457a;}
#main_now > div{width:100%; max-width:1400px; margin:0 auto; padding:90px 0;}
#main_now > div h3{color:#fff;}
#main_now > div h3 span span:nth-child(1){color:#b3c7ff;}
#main_now > div h3 span span:nth-child(2){color:#feff8e;}
#main_now ul{display:flex; gap:50px;}
#main_now ul li{flex:1 1 25%;}
#main_now ul li a{display:block;}
#main_now ul li a div.bg{height:0; padding-bottom:62.5%; overflow:hidden; position:relative;}
#main_now ul li a div.bg span{width:100%; height:100%; position:absolute; top:0; left:0; background-repeat:no-repeat; background-position:50% 50%; background-size:cover;transition:all 0.3s;}
#main_now ul li a div.info{padding:20px 3px 0;}
#main_now ul li a div.info strong{display:block; min-height:30px; max-height:60px; line-height:30px; font-size:22px; font-weight:500; color:#fff; overflow:hidden; word-break:keep-all;}
#main_now ul li a div.info span{display:block;}
#main_now ul li a div.info span.text{display:none;}
#main_now ul li a div.info span.date{padding-top:5px; font-size:16px; font-weight:300; color:#e0e0e0;}
#main_now ul li a:hover div.bg span, #main_now ul li > a:focus div.bg span{transform:scale(1.2);}

/* 메인_공지 */
#main_notice > div{width:100%; max-width:1400px; margin:0 auto; padding:90px 0;}
#main_notice > div h3 span{color:#0255a9;}
#main_notice ul.tab{display:flex; margin-bottom:50px; overflow:hidden; justify-content:space-between;}
#main_notice ul.tab li{width:calc((100% - 50px)/2); position:relative;}
#main_notice ul.tab li button{display:block; width:100%; height:70px; line-height:70px; position:relative; font-size:24px; font-weight:500; color:#323232; text-align:left; border:none; background-color:transparent; cursor:pointer;}
#main_notice ul.tab li button:before{content:""; width:100%; height:1px; position:absolute; bottom:0; left:0; background-color:#e1e1e1; transition:all 0.3s;}
#main_notice ul.tab li button:hover:before, #main_notice ul.tab li button:focus:before, #main_notice ul.tab li.active button:before{height:3px; background-color:#333;}
#main_notice ul.tab li a{width:50px; height:50px; position:absolute; top:10px; right:10px; text-indent:-9999px;}
#main_notice ul.tab li a:before, #main_notice ul.tab li a:after{content:""; position:absolute; top:50%; left:50%; background-color:#b2b2b2; transform:translate(-50%, -50%);}
#main_notice ul.tab li a:before{width:37px; height:1px;}
#main_notice ul.tab li a:after{width:1px; height:37px;}
#main_notice div.tab_contents{display:none;}
#main_notice div.tab_contents.active{display:block;}
#main_notice div ul{overflow:hidden;}
#main_notice div ul li{width:420px; float:left; margin:0 0 0 70px;}
#main_notice div ul li:nth-child(n+4){margin-top:50px;}
#main_notice div ul li:nth-child(3n+1){margin-left:0; clear:both;}
#main_notice div.notice ul li a{display:block; height:310px; padding:40px; position:relative; background-color:#f9f9f9; border:1px solid #e6e6e6; transition:all 0.3s;}
#main_notice div.notice ul li a:after{content:""; width:27px; height:24px; position:absolute; bottom:-1px; right:-1px; background:url(/_res/sch/img/bg_main_recent_board_edge.png) no-repeat 100% 100%;}
#main_notice div.notice ul li a span{display:block; font-size:16px; font-weight:700; color:#0255a9; text-transform:uppercase; letter-spacing:0;}
#main_notice div.notice ul li a span strong{padding-right:5px; font-size:36px; font-weight:700; letter-spacing:-2px;}
#main_notice div.notice ul li a h6{max-height:60px; min-height:30px; line-height:30px; margin:15px 0; font-size:24px; font-weight:500; color:#333; overflow:hidden; word-break:keep-all;}
#main_notice div.notice ul li.latest h6:after{content:"N"; display:inline-block; width:23px; height:23px; line-height:23px; margin-left:5px; font-size:12px; font-weight:700; color:#fff; text-align:center; vertical-align:3px; border-radius:50%; background-color:#88c12f;}
#main_notice div.notice ul li a p{height:78px; line-height:26px; font-size:16px; color:#5e5e5e; overflow:hidden;}
#main_notice div.notice ul li a:hover, #main_notice div.notice ul li a:focus{background-color:#ebebeb; border:1px solid #dadada;}

a.more{width:45px; height:45px; position:absolute; top:0; right:0; transition:0.5s all; text-indent:-9999px;}
a.more:before, a.more:after{content:""; width:45px; height:1px; position:absolute; top:50%; left:50%; background-color:#b2b2b2; transform:translate(-50%, -50%) rotate(0deg);}
a.more:after{transform:translate(-50%, -50%) rotate(90deg);}
a.more:hover, a.more:focus{transform:rotate(180deg);}

/* Swiper */
.swiper-container{margin-left:auto; margin-right:auto; position:relative; overflow:hidden; list-style:none; padding:0; z-index:1;}
.swiper-container-vertical > .swiper-wrapper{flex-direction:column;}
.swiper-wrapper {position:relative; width:100%; height:100%; z-index:1; display:flex; transition-property:transform; box-sizing:content-box;}
.swiper-container-android .swiper-slide, .swiper-wrapper{transform:translate3d(0px, 0, 0);}
.swiper-container-multirow > .swiper-wrapper{flex-wrap:wrap;}
.swiper-container-multirow-column > .swiper-wrapper{flex-wrap:wrap; flex-direction:column;}
.swiper-container-free-mode > .swiper-wrapper{transition-timing-function:ease-out; margin:0 auto;}
.swiper-container-pointer-events{touch-action:pan-y;}
.swiper-container-pointer-events.swiper-container-vertical{touch-action:pan-x;}
.swiper-slide{flex-shrink:0; width:100%; height:100%; position:relative; transition-property:transform;}
.swiper-slide-invisible-blank{visibility:hidden;}
.swiper-container .swiper-notification{position:absolute; left:0; top:0; pointer-events:none; opacity:0; z-index:-1000;}
.swiper-container-fade.swiper-container-free-mode .swiper-slide{transition-timing-function:ease-out;}
.swiper-container-fade .swiper-slide{pointer-events:none; transition-property:opacity;}
.swiper-container-fade .swiper-slide .swiper-slide{pointer-events:none;}
.swiper-container-fade .swiper-slide-active, .swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto;}

/* Sub Layout */
#sub_visual{background-repeat:no-repeat; background-position:50% 50%; background-size:cover;}
body.sub1 #sub_visual{background-image:url(/_res/csw/img/bg_sub_visual_01.jpg);}
body.sub2 #sub_visual{background-image:url(/_res/csw/img/bg_sub_visual_01.jpg);}
body.sub4 #sub_visual{background-image:url(/_res/csw/img/bg_sub_visual_01.jpg);}
body.sub5 #sub_visual{background-image:url(/_res/csw/img/bg_sub_visual_01.jpg);}
#sub_visual div{display:flex; justify-content:space-between; align-items:center; width:100%; max-width:1400px; height:420px; margin:0 auto; padding-top:80px;}
#sub_visual div h2{font-size:48px; font-weight:700; color:#fff; text-shadow:1px 1px 5px rgba(0, 0, 0, 0.3);}
#sub_visual div ul{display:flex; gap:30px;}
#sub_visual div ul li, #sub_visual div ul li a{position:relative; font-size:16px; font-weight:300; color:#fff; text-shadow:1px 1px 5px rgba(0, 0, 0, 0.3);}
#sub_visual div ul li:not(:first-child):before{content:""; width:8px; height:8px; position:absolute; top:50%; left:-20px; border-top:1px solid rgba(255, 255, 255, 0.5); border-right:1px solid rgba(255, 255, 255, 0.5); transform:translateY(-50%) rotate(45deg);}
#sub_visual div ul li:first-child a:before{content:""; display:block; width:18px; height:19px; position:absolute; top:50%; left:0; background:url(/_res/csw/img/bg_breadcrum.png) no-repeat 50% 50%/18px 19px; transform:translateY(-50%);}
#sub_visual div ul li:first-child a span{opacity:0;}

#snb{margin-top:-40px;}
#snb div{width:100%; max-width:1400px; margin:0 auto; position:relative; background-color:#fff;}
#snb div > ul{display:flex; border:1px solid #d7d7d7;}
#snb div > ul > li{max-width:calc(100% / 2); flex:1 1 0; position:relative;}
#snb div > ul > li:not(:first-child):before{content:""; width:1px; height:20px; position:absolute; top:50%; left:0; background-color:#b7b7b7; transform:translateY(-50%);}
#snb div > ul > li > a{display:flex; justify-content:center; align-items:center; height:80px; position:relative; font-size:20px; font-weight:500; color:#333;}
#snb div > ul > li > a.active{font-weight:700; color:#00677e;}
#snb div > ul > li > a.active:after{content:""; width:100%; height:2px; position:absolute; bottom:-1px; left:0; background-color:#00677e;}
#snb div > ul > li ul{min-width:210%; position:absolute; top:100px; left:50%; text-align:center; transform:translateX(-50%);}
#snb div > ul > li ul li{display:inline-block; margin:0 15px; position:relative;}
#snb div > ul > li ul li a{font-size:20px; color:#333;}
#snb div > ul > li ul li a.active{color:#25539b;}

#sub_title{width:100%; max-width:1400px; margin:0 auto; padding-top:100px;}
#sub_title h3{font-size:35px; font-weight:700; color:#333; text-align:center; letter-spacing:-1px;}
/*
#sub_title h3 span{display:block; width:42px; height:14px; margin:0 auto 15px; position:relative; background-color:#00677e;}
#sub_title h3 span:before{content:""; width:14px; height:14px; position:absolute; top:0; left:0; background-color:#92c83e;}
#sub_title h3 span:after{content:""; width:14px; height:14px; position:absolute; top:0; right:0; background-color:#2ac4f4;}
*/

#sub_contents{width:100%; max-width:1400px; margin:0 auto; padding:80px 100px; position:relative;}
#sub_contents h4.title{margin-bottom:40px; font-size:30px; font-weight:700;} 
#sub_contents h4.title:before{content:""; display:block; width:40px; height:4px; margin-bottom:10px; background-color:#00677e;}
#sub_contents div.jwxe_board div.board_view div.board_title{border-top:2px solid #000;}

/* 학과소개 > 인사말 */
div.intro_hello div.visual{padding-top:65px; position:relative;}
div.intro_hello div.visual:before{content:""; width:990px; height:224px; position:absolute; top:0; right:0; background:url(/_res/csw/img/bg_intro_01.jpg) no-repeat 50% 50%/cover; z-index:-1;}
div.intro_hello div.visual p{display:flex; align-items:center; width:570px; height:190px; padding-left:40px; line-height:1.4; font-size:30px; font-weight:700; color:#fff; word-break:keep-all; background:#92c83e; background:linear-gradient(90deg, #92c83e 0%, #169173 50%, #1899c9 100%); background-size:300%; background-position:0 100%; animation:gradient 10s ease-in-out infinite;}
@keyframes gradient {
    50%{
        background-position:100% 0;
    }
}
div.intro_hello div.text{padding-top:45px;}
div.intro_hello div.text h4{font-size:25px; font-weight:500; color:#027d98; word-break:keep-all;}
div.intro_hello div.text p{padding-top:30px; line-height:1.6; font-size:18px; font-weight:300; color:#333; letter-spacing:0; word-break:keep-all;}
div.intro_hello div.text p.sign{padding-top:40px; font-size:25px; font-weight:400; letter-spacing:-1.5px;}
div.intro_hello div.text p.sign span{font-weight:700;}

/* 학과소개 > 전공소개 */
.intro_major h4 { margin-bottom: 30px; color: #027d98; font-weight: 500; font-size: 27px; word-break: keep-all; } 
.intro_major p { color: #333; font-weight: 400; font-size: 18px; line-height: 1.6; letter-spacing: 0; word-break: keep-all; } 
.intro_major .history { margin-top: 60px; } 
.intro_major .history ul { position: relative; } 
.intro_major .history > ul:before { content: ''; position: absolute; top: 25px; left: 0; width: 1px; height: 100%; border-left: 1px solid #d0d0d0; } 
.intro_major .history ul li { position: relative; color: #25539b; font-weight: 500; font-size: 30px; } 
.intro_major .history ul li + li { margin-top: 50px; } 
.intro_major .history ul li span { display: inline-block; padding-left: 25px; font-weight: 700; } 
.intro_major .history > ul > li:nth-child(1):before { content: ''; position: absolute; top: 14px; left: -8px; width: 16px; height: 16px; z-index: 10; border: 1px solid #25539b; border-radius: 50%; background-color: #fff; } 
.intro_major .history > ul > li:after { content: ''; position: absolute; top: 18px; left: -4px; width: 10px; height: 10px; z-index: 11; border-radius: 50%; background-color: #25539b; } 
.intro_major .history ul li ul { position: absolute; top: 10px; left: 200px; } 
.intro_major .history ul li ul li { padding-left: 15px; color: #333; font-size: 18px; font-weight: 400; word-break: keep-all; } 
.intro_major .history ul li ul li:before { content: '-'; position: absolute; top: 0; left: 0; } 
.intro_major .history ul li ul li span { margin-right: 10px; font-weight: 500; }
.intro_major .lab {margin-top: 70px;}
.intro_major .lab .box_wrap { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 20px; } 
.intro_major .lab .box_wrap .box { width: 49%; padding: 50px 55px; background-color: #f7f7f7; } 
.intro_major .lab .box_wrap .box strong { display: inline-block; font-weight: 700; font-size: 22px; } 
.intro_major .lab .box_wrap .box strong + p { margin-top: 20px; } 
.intro_major .brag { margin-top: 60px; }
.intro_major .brag h2 {margin-top: 30px; text-align: center;}
/* 학과소개 > 비전 발전계획 */
div.intro_vision dl{display:table; table-layout:fixed; width:100%; border:4px solid #00677e;}
div.intro_vision dl dt{display:table-cell; vertical-align:middle; width:175px; font-size:25px; font-weight:400; color:#fff; text-align:center; background-color:#00677e;}
div.intro_vision dl dd{display:table-cell; vertical-align:middle; height:90px; font-size:30px; font-weight:700; color:#00677e; text-align:center; word-break:keep-all;}
div.intro_vision div.section{margin-top:70px;}
div.intro_vision div.section > ul{display:grid; grid-template-columns:1fr 1fr; gap:100px 80px;}
div.intro_vision div.section > ul > li strong{display:block; margin-bottom:5px; font-size:26px; font-weight:700; color:#00677e;}
div.intro_vision div.section > ul > li span{display:block; font-size:20px; font-weight:500; line-height:1.5;}
div.intro_vision div.section > ul > li ul li{padding:20px 0 20px 35px; position:relative; font-size:18px; font-weight:300; color:#393939; line-height:1.5; word-break:keep-all; border-bottom:1px solid #d7d7d7;}
div.intro_vision div.section > ul > li ul li:before{content:""; width:6px; height:6px; position:absolute; top:30px; left:10px; border-radius:50%; background-color:#027d98;}
div.intro_vision div.section > ol{display:flex; gap:95px;}
div.intro_vision div.section > ol > li{flex:1 1 0; padding:50px 20px 40px; position:relative; border:10px solid #e1f3f7;}
div.intro_vision div.section > ol > li span{min-width:170px; padding:0 15px; position:absolute; top:-37px; left:50%; font-size:35px; font-weight:700; color:#027d98; text-align:center; background-color:#fff; transform:translateX(-50%);}
div.intro_vision div.section > ol > li strong{display:block; padding-bottom:25px; font-size:18px; font-weight:500; color:#393939; text-align:center; line-height:1.5;}
div.intro_vision div.section > ol > li ul li{padding-left:12px; position:relative; font-size:18px; font-weight:300; color:#393939; line-height:1.5; word-break:keep-all;}
div.intro_vision div.section > ol > li ul li:before{content:""; width:5px; height:1px; position:absolute; top:12px; left:0; background-color:#393939;}
div.intro_vision div.sectionwide{margin-top:70px;}
div.intro_vision div.sectionwide > ul{grid-template-columns:1fr 1fr;}
div.intro_vision div.sectionwide > ul > li:not(:first-child){margin-top:30px;}
div.intro_vision div.sectionwide > ul > li strong{display:block; margin-bottom:5px; font-size:26px; font-weight:700; color:#00677e;}
div.intro_vision div.sectionwide > ul > li span{display:block; font-size:18px; font-weight:300; line-height:1.5;}
div.intro_vision div.sectionwide > ul > li ul li{padding:20px 0 20px 35px; position:relative; font-size:18px; font-weight:300; color:#393939; line-height:1.5; word-break:keep-all; border-bottom:1px solid #d7d7d7;}
div.intro_vision div.sectionwide > ul > li ul li:before{content:""; width:6px; height:6px; position:absolute; top:30px; left:10px; border-radius:50%; background-color:#027d98;}

/*교육과정 > 교육과정안내*/
div.edu_course_guide div.section { width: 100%; } 
div.edu_course_guide div.arccodion_wrap { width: 100%; border-bottom: 1px solid #333; } 
div.edu_course_guide div.arccodion_wrap button.grade { width: 100%; position: relative; padding: 20px 0 20px 50px; font-size: 20px; font-weight: 500; color: #000; border-top: 1px solid #333; text-align: left; } 
div.edu_course_guide div.arccodion_wrap button.grade:before,
div.edu_course_guide div.arccodion_wrap button.grade:after { content: ''; position: absolute; top: 50%; width: 20px; height: 1px; background-color: #d2d2d2; } 
div.edu_course_guide div.arccodion_wrap button.grade:before { transform: rotate(-45deg); right: 40px; } 
div.edu_course_guide div.arccodion_wrap button.grade:after { transform: rotate(45deg); right: 54px; } 
div.edu_course_guide div.arccodion_wrap button.grade.active { background-color: #333; color: #fff; } 
div.edu_course_guide div.arccodion_wrap button.grade.active:before { transform: rotate(-135deg); } 
div.edu_course_guide div.arccodion_wrap button.grade.active:after { transform: rotate(135deg); } 
div.edu_course_guide div.arccodion_wrap button.grade.active:before,
div.edu_course_guide div.arccodion_wrap button.grade.active:after { background-color: #fff; } 
div.edu_course_guide div.timetable { display: none; } 
div.edu_course_guide div.timetable.active { display: block; } 
div.edu_course_guide div.timetable table { width: 100%; text-align: center; } 
div.edu_course_guide div.timetable table col.class { width: 30%; } 
div.edu_course_guide div.timetable table col.score { width: 22%; } 
div.edu_course_guide div.timetable table col.lang { width: 22%; } 
div.edu_course_guide div.timetable table thead th { background-color: #fbfbfb; } 
div.edu_course_guide div.timetable table thead th,
div.edu_course_guide div.timetable table tbody td { padding: 15px 10px; font-size: 16px; border-bottom: 1px solid #efefef; } 

div.curriculum ul{margin-top: 80px;}
div.curriculum ul li{padding:40px 45px; background-color:#f7f7f7;}
div.curriculum ul li strong{display:block; margin-bottom:10px; font-size:22px; font-weight:700; line-height:1.5; word-break:keep-all;}
div.curriculum ul li span{font-size:18px; font-weight:300; color:#393939; line-height:1.5; word-break:keep-all;}
div.curriculum ul li div{content:""; width:10px; height:10px; border-radius:50%; background-color:#027d98; display: inline-grid; margin-right: 20px; margin-bottom: 3px; }

/* 졸업자격요건 */
div.gradu_req span{display:block; font-size:20px; font-weight:500; line-height:1.5; padding-top:20px;}
div.gradu_req dl{display:grid; grid-template-columns:250px auto; border:1px solid #d7d7d7;}
div.gradu_req dl dt{display:flex; align-items:center; justify-content:center; padding:17px 0; font-size:18px; font-weight:500; text-align:center; border-top:1px solid #d7d7d7; border-right:1px solid #d7d7d7; background-color:#f6f6f6;}
div.gradu_req dl dd{padding:17px 60px; font-size:18px; font-weight:300; line-height:1.5; word-break:keep-all; border-top:1px solid #d7d7d7;}
div.gradu_req dl dt:first-of-type, div.gradu_req dl dd:first-of-type{border-top:none;}
div.gradu_req dl dd > ul > li:not(:first-child){margin-top:30px;}
div.gradu_req dl dd > ul > li strong{display:block; font-size:18px; font-weight:500; line-height:1.5; word-break:keep-all;}
div.gradu_req dl dd > ul > li span{display:block; font-size:18px; font-weight:300; line-height:1.5; word-break:keep-all;}
div.gradu_req dl dd > ul > li ul li{padding-left:12px; position:relative; font-size:18px; font-weight:300; line-height:1.5; word-break:keep-all;}
div.gradu_req dl dd > ul > li ul li:before{content:""; width:5px; height:1px; position:absolute; top:12px; left:0; background-color:#393939;}

/* 자격증안내 */
div.license_info div.section:not(:first-child){margin-top:70px;}
div.license_info div.section ul li{padding:35px 0 35px 40px; border-bottom:1px solid #d7d7d7;}
div.license_info div.section ul li:first-child{padding-top:0;}
div.license_info div.section ul li strong{display:block; margin-bottom:10px; position:relative; font-size:20px; font-weight:500; color:#393939; line-height:1.5; word-break:keep-all;}
div.license_info div.section ul li strong:before{content:""; width:6px; height:6px; position:absolute; top:12px; left:-30px; border-radius:50%; background-color:#027d98;}
div.license_info div.section ul li span{display:block; font-size:17px; font-weight:300; color:#393939; line-height:1.5; word-break:keep-all;}

/* PC Mini & Tablet */
@media all and (min-width:768px) and (max-width:1399px){
    body{-webkit-text-size-adjust:100%; overflow-x:hidden;}

    #wrap.active #main_visual, #wrap.active #contents, #wrap.active #quick_menu, #wrap.active footer{display:none;}
    #wrap:before{display:none;}

    #tnb{display:none;}
    header{border-bottom:1px solid #eee;}
    header section{height:70px; padding:0 10px 0 15px; background-color:#fff;}
    header section h1 a{width:300px; height:37px; background-position:0 0; background-size:300px 74px;}
    #gnb_control{display:block;}
    #gnb{width:100%; height:calc(100vh - 70px); position:absolute; top:70px; right:-100%; background-color:#f1f1f1; transition:all 0.3s;}
    #gnb.active{max-height:inherit; right:0;}
    #gnb div.mobile{display:flex;}
    #gnb > ul{flex-direction:column;}
    #gnb > ul > li{border-bottom:1px solid #e1e1e1;}
    #gnb > ul > li > a{height:60px; padding:0 20px; font-size:17px; font-weight:500; color:#333; background-color:#fff;}
    #gnb > ul > li > a.active{color:#fff; background-color:#00677e;}
    #gnb > ul > li > ul{width:100%; position:static; background-color:#fff; transform:translateX(0);}
    #gnb > ul > li:last-child > ul{margin:0;}
    #gnb > ul > li > ul li a{padding:0 20px; height:45px; line-height:45px; font-size:15px; color:#000; text-align:left; position:relative;}
    #gnb > ul > li > ul li a.active{font-weight:700; background-color:#f7f7f7;}
    #gnb > ul > li > a.active:after{transform:rotate(0deg);}
    #gnb > ul > li > a.active + ul{visibility:visible; max-height:500px; padding:0; transition:all 1s;}
    #wrap.active header{padding:0; overflow:visible; position:absolute; border-bottom:none;}
    #wrap.active header #logo{border-bottom:1px solid #d7d7d7;}
    #wrap.active header #gnb > ul{margin:0;}

    /* 메인_비쥬얼 */
    #main_visual div.text{height:50vh; padding:0 30px;}
    #main_visual div.text p{font-size:28px;}
    #main_visual div.text h2{font-size:46px;}
    #main_visual div.text h2 span{font-size:17px;}

    #visual_swiper{height:50vh;}
    #visual_swiper_control{bottom:50px;}

    #contents{margin-top:70px;}

    #footer{padding:25px 20px; max-width:100%;}
    #footer > ul li a{font-size:14px;}
    #footer > address p span{font-size:14px;}
    #footer > address p.copyright span{display:block;}
    #footer > div.sns{position:static; margin-top:20px;}
    #footer > div.sns ul li a{height:35px; line-height:35px; font-size:14px;}
    #footer > div.sns ul li a img{width:35px; height:35px; margin-right:7px;}
    #footer > div.sns ul li + li{margin-left:15px;}

    #qnb > ul > li > a{font-size:13px; padding:0 15px;}
    #qnb > ul > li > a:after{right:15px;}
    #qnb > ul > li > ul > li > a{font-size:13px; padding:0 15px;}

    /* 메인_교수 소개 */
    #main_faculty > div{padding:60px 30px;}

    /* 메인_D Now */
    #main_now > div{padding:60px 30px;}
    #main_now ul{gap:20px;}
    #main_now ul li a div.info{padding:15px 3px 0;}
    #main_now ul li a div.info strong{min-height:26px; max-height:52px; line-height:26px; font-size:18px;}
    #main_now ul li a div.info span.date{font-size:15px;}
    #main_now ul li a:hover div.bg span, #main_now ul li > a:focus div.bg span{transform:scale(1);}

    /* 메인_공지 */
    #main_notice > div{padding:60px 30px;}
    #main_notice ul.tab{margin-bottom:30px;}
    #main_notice ul.tab li{width:calc((100% - 30px) / 2);}
    #main_notice ul.tab li button{height:55px; line-height:55px; font-size:18px;}
    #main_notice ul.tab li button:hover:before, #main_notice ul.tab li button:focus:before, #main_notice ul.tab li.active button:before{height:2px;}
    #main_notice ul.tab li a{width:40px; height:40px; top:10px; right:0;}
    #main_notice ul.tab li a:before{width:20px;}
    #main_notice ul.tab li a:after{height:20px;}
    #main_notice div ul li{width:calc((100% - 30px) / 2); margin:0;}
    #main_notice div ul li:nth-child(n+3){margin-top:30px;}
    #main_notice div ul li:nth-child(3n+1){clear:none;}
    #main_notice div ul li:nth-child(odd){clear:both;}
    #main_notice div ul li:nth-child(even){float:right;}
    #main_notice div.notice ul li a{height:29vw; padding:30px;}
    #main_notice div.notice ul li a:after{width:18px; height:16px; background-size:18px 16px;}
    #main_notice div.notice ul li a span{font-size:13px;}
    #main_notice div.notice ul li a span strong{padding-right:3px; font-size:25px;}
    #main_notice div.notice ul li a h6{max-height:48px; min-height:24px; line-height:24px; margin:10px 0; font-size:18px;}
    #main_notice div.notice ul li.latest h6:after{width:20px; height:20px; line-height:20px; font-size:11px;}
    #main_notice div.notice ul li a p{height:60px; line-height:20px; font-size:13px;}

    a.more{width:40px; height:40px;}
    a.more:before, a.more:after{width:40px;}

    /* Sub Layout */
    #sub_visual div{height:20vh; padding:40px 30px;}
    #sub_visual div h2{font-size:40px;}
    #sub_visual div ul{gap:25px;}
    #sub_visual div ul li, #sub_visual div ul li a{font-size:16px;}

    #snb{margin-top:0;}
    #snb div > ul{display:block; height:60px; position:relative; text-align:center; border-left:none; border-right:none;}
    #snb div > ul > li{display:inline-block; position:static;}
    #snb div > ul > li:before{display:none;}
    #snb div > ul > li > a{height:60px; line-height:60px; padding:0 10px; position:relative; font-size:16px; letter-spacing:0;}
    #snb div > ul > li > a:before{content:""; width:1px; height:16px; position:absolute; top:50%; left:0; background-color:#b7b7b7; transform:translateY(-50%);}
    #snb div > ul > li > a:first-child:before{display:none;}
    #snb div > ul > li ul{top:70px; min-width:100vw; left:0; transform:translateX(0);}
    #snb div > ul > li ul li{margin:0 10px;}
    #snb div > ul > li ul li a{font-size:15px;}
    #snb div > ul > li ul li a.active:before{bottom:-8px;}
  
    #snb.active div > ul{height:auto;}
    #snb.active div > ul > li > a{display:block;}
    #snb.active div > ul > li ul{display:none;}
    
    #sub_title{padding-top:40px;}
    #sub_title h3{font-size:30px;}
    /*
    #sub_title h3 span{width:39px; height:13px; margin:0 auto 30px;}
    #sub_title h3 span:before, #sub_title h3 span:after{width:13px; height:13px;}
    */
    #sub_contents{padding:30px 30px 50px;}
  
    /*학과소개 > 전공소개*/
    .intro_major .lab .box_wrap { gap: 10px; } 
    .intro_major .lab .box_wrap .box { padding: 25px 20px; } 
    .intro_major .lab .box_wrap .box strong { font-size: 20px; } 
    .intro_major .lab .box_wrap .box strong + p { margin-top: 15px; } 
}

/* Mobile */
@media all and (max-width:767px){
    body{-webkit-text-size-adjust:100%; overflow-x:hidden;}
    .mobile{display:block;}
    
    #wrap.active #main_visual, #wrap.active #contents, #wrap.active #quick_menu, #wrap.active footer{display:none;}
    #wrap:before{display:none;}

    #tnb{display:none;}
    header{border-bottom:1px solid #eee;}
    header section{height:70px; padding:0 10px 0 15px; background-color:#fff;}
    header section h1 a{width:300px; height:37px; background-position:0 0; background-size:300px 74px;}
    #gnb_control{display:block;}
    #gnb{width:100%; height:calc(100vh - 70px); position:absolute; top:70px; right:-100%; background-color:#f1f1f1; transition:all 0.3s;}
    #gnb.active{max-height:inherit; right:0;}
    #gnb div.mobile{display:flex;}
    #gnb > ul{flex-direction:column;}
    #gnb > ul > li{border-bottom:1px solid #e1e1e1;}
    #gnb > ul > li > a{height:60px; padding:0 20px; font-size:17px; font-weight:500; color:#333; background-color:#fff;}
    #gnb > ul > li > a.active{color:#fff; background-color:#00677e;}
    #gnb > ul > li > ul{width:100%; position:static; background-color:#fff; transform:translateX(0);}
    #gnb > ul > li:last-child > ul{margin:0;}
    #gnb > ul > li > ul li a{padding:0 20px; height:45px; line-height:45px; font-size:15px; color:#000; text-align:left; position:relative;}
    #gnb > ul > li > ul li a.active{font-weight:700; background-color:#f7f7f7;}
    #gnb > ul > li > a.active:after{transform:rotate(0deg);}
    #gnb > ul > li > a.active + ul{visibility:visible; max-height:500px; padding:0; transition:all 1s;}
    #wrap.active header{padding:0; overflow:visible; position:absolute; border-bottom:none;}
    #wrap.active header #logo{border-bottom:1px solid #d7d7d7;}
    #wrap.active header #gnb > ul{margin:0;}

    #qnb{max-width:100%;}
    #qnb > ul{height:inherit; border-left:none; border-right:none;}
    #qnb > ul > li{width:100%; float:none; border-bottom:1px solid #444; background-position:95% 50%; background-size:7px auto;}
    #qnb > ul > li > a{height:40px; line-height:40px; padding:0 20px; font-size:14px; color:#d0d0d0;}
    #qnb > ul > li > ul{position:static; border:none; -webkit-overflow-scrolling:touch;}
    #qnb > ul > li > ul > li > a{height:30px; line-height:30px; font-size:13px;}

    #footer{padding:20px 15px; max-width:100%; }
    #footer > ul{padding-bottom:15px;}
    #footer > ul li{display:inline-block; float:none;}
    #footer > ul li a{font-size:13px;}
    #footer > address p span{font-size:13px;}
    #footer > address p.contact{padding-bottom:5px;}
    #footer > address p.contact span:first-child{word-break:keep-all;}
    #footer > address p.contact span:nth-child(2):before{display:none;}
    #footer > div.sns{position:static; margin-top:20px;}
    #footer > div.sns ul li{display:block;}
    #footer > div.sns ul li a{height:30px; line-height:30px; font-size:13px;}
    #footer > div.sns ul li a img{width:30px; height:30px; margin-right:5px;}
    #footer > div.sns ul li + li{margin-left:0; margin-top:6px;}

    div.main h3{padding:0 0 20px 0; font-size:22px;}
    div.main h3 span{font-size:32px;}

    /* 메인_비쥬얼 */
    #main_visual div.text{height:85vw; transform:translateY(-30px);}
    #main_visual div.text p{margin-bottom:10px; font-size:15px; text-align:center; letter-spacing:-1px;}
    #main_visual div.text h2{line-height:1.3; font-size:35px; text-align:center; letter-spacing:-1px;}
    #main_visual div.text h2 strong{display:block;}
    #main_visual div.text h2 span{display:none;}

    #visual_swiper{height:85vw;}
    #visual_swiper div.swiper-slide.seen1{background-image:url(/_res/csw/img/mobile_bg_main_visual_01.jpg);}
    #visual_swiper div.swiper-slide.seen2{background-image:url(/_res/csw/img/mobile_bg_main_visual_d.jpg);}
    #visual_swiper div.swiper-slide.seen3{background-image:url(/_res/csw/img/mobile_bg_main_visual_e.jpg);}

    #visual_swiper_control{gap:10px; bottom:40px;}
    #visual_swiper_control div.pagination{gap:10px;}
    #visual_swiper_control div.pagination span.swiper-pagination-bullet{width:20px; height:20px;}
    #visual_swiper_control div.pagination span.swiper-pagination-bullet:before{width:6px; height:6px;}
    #visual_swiper_control button.control{width:20px; height:20px;}
    #visual_swiper_control button.control:before{height:14px; border-width:7px 0 7px 10px;}

    #contents{margin-top:70px;}

    /* 메인_교수 소개 */
    #main_faculty > div{padding:40px 20px;}

    /* 메인_D Now */
    #main_now > div{padding:40px 20px;}
    #main_now ul{flex-direction:column; gap:40px;}
    #main_now ul li a div.info{padding:20px 3px 0;}
    #main_now ul li a div.info span.date{font-size:14px;}
    #main_now ul li a:hover div.bg span, #main_now ul li > a:focus div.bg span{transform:scale(1);}

    /* 메인_공지 */
    #main_notice > div{padding:40px 20px;}
    #main_notice ul.tab{margin-bottom:20px;}
    #main_notice ul.tab li{width:calc((100% - 30px) / 2);}
    #main_notice ul.tab li button{height:55px; line-height:55px; font-size:18px;}
    #main_notice ul.tab li button:hover:before, #main_notice ul.tab li button:focus:before, #main_notice ul.tab li.active button:before{height:2px;}
    #main_notice ul.tab li a{width:40px; height:40px; top:10px; right:0;}
    #main_notice ul.tab li a:before{width:20px;}
    #main_notice ul.tab li a:after{height:20px;}
    #main_notice div ul li{width:100%; margin:10px 0 0 0 !important;}
    #main_notice div ul li:nth-child(3n+1){clear:none;}
    #main_notice div ul li:nth-child(odd){clear:both;}
    #main_notice div ul li:nth-child(even){float:right;}
    #main_notice div.notice ul li a{height:auto; padding:20px;}
    #main_notice div.notice ul li a:after{width:18px; height:16px; background-size:18px 16px;}
    #main_notice div.notice ul li a span{font-size:13px;}
    #main_notice div.notice ul li a span strong{padding-right:3px; font-size:25px;}
    #main_notice div.notice ul li a h6{max-height:48px; min-height:24px; line-height:24px; margin:10px 0; font-size:18px;}
    #main_notice div.notice ul li.latest h6:after{width:20px; height:20px; line-height:20px; font-size:11px;}
    #main_notice div.notice ul li a p{display:none;}

    /* Sub Layout */
    body.sub1 #sub_visual{background-image:url(/_res/csw/img/mobile_bg_sub_visual_01.jpg);}
    body.sub2 #sub_visual{background-image:url(/_res/csw/img/mobile_bg_sub_visual_01.jpg);}
    body.sub4 #sub_visual{background-image:url(/_res/csw/img/mobile_bg_sub_visual_01.jpg);}
    body.sub5 #sub_visual{background-image:url(/_res/csw/img/mobile_bg_sub_visual_01.jpg);}
    #sub_visual div{flex-direction:column; justify-content:center; align-items:flex-start; gap:10px; height:25vh; padding:0 20px;}
    #sub_visual div h2{font-size:30px;}
    #sub_visual div ul{display:flex; gap:30px;}
    #sub_visual div ul li, #sub_visual div ul li a{font-size:13px;}
    #sub_visual div ul li:not(:first-child):before{width:6px; height:6px; left:-20px;}
    #sub_visual div ul li:first-child a:before{width:15px; height:16px; background-size:15px 16px;}
    
    #snb{padding:0 20px; position:relative; margin-top:-30px; z-index:2;}
    #snb div{height:0;}
    #snb div > ul{display:block; width:100%; height:62px; padding-top:60px; position:absolute; top:0; left:0; background-color:#fff; transition:0.3s all;}
    #snb div > ul > li{display:block; max-width:100%; position:static;}
    #snb div > ul > li:before{display:none;}
    #snb div > ul > li > a{display:none; width:100%; height:60px; line-height:60px; padding:0 20px; position:relative; font-size:17px; letter-spacing:0; text-align:left;}
    #snb div > ul > li > a.active{display:block; position:absolute; top:0; left:0;}
    #snb div > ul > li > a.active:before{content:""; width:100%; height:2px; position:absolute; bottom:-2px; left:0; background-color:#00677e;}
    #snb div > ul > li > a.active:after{width:12px; height:7px; position:absolute; bottom:50%; left:calc(100% - 32px); background:url(/_res/csw/img/bg_snb_arrow.png) no-repeat 50% 50%/12px 7px; transform:translateY(50%);}
    #snb div > ul > li ul{top:75px; left:50%;}
    #snb div > ul > li ul li{margin:0 4px;}
    #snb div > ul > li ul li a{font-size:13px;}
    #snb div > ul > li ul li a.active:before{bottom:-7px;}
  
    #snb.active div > ul{height:auto;}
    #snb.active div > ul > li > a{display:block;}
    #snb.active div > ul > li ul{display:none;}
    
    #sub_title{padding:100px 20px 0;}
    #sub_title h3{font-size:27px;}
    /*
    #sub_title h3 span{width:30px; height:10px;}
    #sub_title h3 span:before{width:10px; height:10px;}
    #sub_title h3 span:after{width:10px; height:10px;}
    */

    #sub_contents{padding:25px 20px 40px;}
    #sub_contents h4.title{margin-bottom:20px; font-size:20px;} 
    #sub_contents h4.title:before{width:30px; height:3px;}

    /* 학과소개 > 인사말 */
    div.intro_hello div.visual{width:calc(100% + 40px); padding-top:65px; transform:translateX(-20px);}
    div.intro_hello div.visual:before{width:75%; min-width:280px; max-width:320px; height:0; padding-bottom:35%;}
    div.intro_hello div.visual p{width:70%; min-width:270px; max-width:300px; height:auto; padding:20px; font-size:20px;}
    div.intro_hello div.text{padding-top:25px;}
    div.intro_hello div.text h4{font-size:20px;}
    div.intro_hello div.text p{padding-top:20px; font-size:15px;}
    div.intro_hello div.text p.sign{padding-top:30px; font-size:20px; letter-spacing:-1px;}

    /* 학과소개 > 전공소개 */
    .intro_major h4 { font-size: 20px; }
    .intro_major p { font-size: 15px; }
    .intro_major .history ul li ul { position: static; margin-left: 28px; }
    .intro_major .history ul li ul li {font-size: 15px; }
    .intro_major .lab .box_wrap { gap: 10px; } 
    .intro_major .lab .box_wrap .box { width: 100%; padding: 25px 20px; } 
    .intro_major .lab .box_wrap .box strong { font-size: 18px; } 
    .intro_major .lab .box_wrap .box strong + p { margin-top: 10px; } 

    /* 학과소개 > 비전 발전계획 */
    div.intro_vision dl{border:3px solid #00677e;}
    div.intro_vision dl dt{display:block; width:100%; padding:15px 0; font-size:20px;}
    div.intro_vision dl dd{display:block; height:auto; padding:15px; font-size:20px;}
    div.intro_vision div.section{margin-top:40px;}
    div.intro_vision div.section > ul{grid-template-columns:1fr; gap:25px;}
    div.intro_vision div.section > ul > li strong{font-size:18px;}
    div.intro_vision div.section > ul > li span{font-size:15px;}
    div.intro_vision div.section > ul > li ul li{padding:15px 0 15px 25px; font-size:15px;}
    div.intro_vision div.section > ul > li ul li:before{width:4px; height:4px; top:24px;}
    div.intro_vision div.section > ol{flex-direction:column; gap:50px;}
    div.intro_vision div.section > ol > li{width:100%; padding:30px 20px 30px; border:6px solid #e1f3f7;}
    div.intro_vision div.section > ol > li span{min-width:150px; top:-28px; font-size:28px;}
    div.intro_vision div.section > ol > li strong{padding-bottom:20px; font-size:15px;}
    div.intro_vision div.section > ol > li ul li{font-size:15px;}
    div.intro_vision div.section > ol > li ul li:before{width:4px; top:11px;}
    div.intro_vision div.sectionwide {margin-top:40px;}
    div.intro_vision div.sectionwide > ul{grid-template-columns:1fr;}
    div.intro_vision div.sectionwide > ul > li:not(:first-child){margin-top:25px;}
    div.intro_vision div.sectionwide > ul > li strong{font-size:18px;}
    div.intro_vision div.sectionwide > ul > li span{font-size:15px;}
    div.intro_vision div.sectionwide > ul > li ul li{padding:15px 0 15px 25px; font-size:15px;}
    div.intro_vision div.sectionwide > ul > li ul li:before{width:4px; height:4px; top:24px;}

    /* 졸업자격요건 */
    div.gradu_req span{font-size:15px;}
    div.gradu_req dl{grid-template-columns:120px auto;}
    div.gradu_req dl dt{padding:15px 0; font-size:15px;}
    div.gradu_req dl dd{padding:15px 20px; font-size:15px;}
    div.gradu_req dl dd > ul > li:not(:first-child){margin-top:10px;}
    div.gradu_req dl dd > ul > li strong{font-size:15px;}
    div.gradu_req dl dd > ul > li span{font-size:15px;}
    div.gradu_req dl dd > ul > li ul li{font-size:15px;}
    div.gradu_req dl dd > ul > li ul li:before{width:4px; top:11px;}

    /* 자격증안내 */
    div.license_info div.section:not(:first-child){margin-top:40px;}
    div.license_info div.section ul li{padding:20px 0 20px 25px;}
    div.license_info div.section ul li strong{margin-bottom:10px; font-size:16px;}
    div.license_info div.section ul li strong:before{width:4px; height:4px; top:12px; left:-15px;}
    div.license_info div.section ul li span{font-size:15px;}
}