@charset "utf-8";

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

@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');
}

@font-face{
    font-family:'Noto Sans Korean';
    font-style:normal;
    font-weight:900;
    src:url(/_font/NotoSansKR-Black-Hestia.eot),
    url(/_font/NotoSansKR-Black-Hestia.eot?#iefix) format('embedded-opentype'),
    url(/_font/NotoSansKR-Black-Hestia.woff) format('woff'),
    url(/_font/NotoSansKR-Black-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;}
img.mobile{display:none;}

#skip_navigation{display:none;}

/* 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:absolute; top:0; left:0; z-index:99; border-bottom:1px solid rgba(255,255,255,0.2); background-color:#fff; transition:all 0.3s;}
header section{width:100%; max-width:1400px; height:120px; margin:0 auto; position:relative; z-index:99; transition:all 0.3s;}
#logo h1{margin-top:-18px; position:absolute; top:50%; left:0;}
#logo h1 a{display:block; width:315px; height:41px; background:url(/_res/rotc/img/logo.png) no-repeat; text-indent:-9999px;}
#gnb{padding-top:40px;}
#gnb nav{float:right;}
#gnb nav > div{position:absolute; top:15px; right:0;}
#gnb nav > div a{padding:0 15px; font-size:15px; color:#656565;}
#gnb nav > div a:hover, header section nav > div a:focus{text-decoration:underline;}
#gnb nav > div a:last-child{padding-right:0;}
#gnb nav > div p{display:inline-block; padding-left:27px; font-size:15px; font-weight:500; color:#d1d1d1; position:relative;}
#gnb nav > div p:before{content:""; width:24px; height:24px; position:absolute; top:50%; left:0; margin-top:-12px; background:url(/_res/rotc/img/bg_top_icon.png) no-repeat 0 0;}
#gnb nav > div p span{font-weight:700; color:#294a9b;}
#gnb nav > ul{float:right;}
#gnb nav > ul > li{float:left; position:relative;}
#gnb nav > ul > li > a{display:block; padding:0 50px; height:80px; line-height:80px; letter-spacing:-0.5px; font-size:20px; font-weight:500; color:#000;}
#gnb nav > ul > li:last-child > a{padding-right:0;}
#gnb nav > ul > li > ul{visibility:hidden; min-width:220px; max-height:0; overflow:hidden; position:absolute; top:80px; left:50%; background-color:#f7f7f7; transition:max-height 0.2s; transform:translateX(-50%);}
#gnb nav > ul > li.active > ul{display:block; visibility:visible; max-height:400px; border-top:4px solid #2959b0;}
#gnb nav > 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 nav > ul > li > ul li:focus a{visibility:visible; display:block;}
#gnb nav > ul > li > ul li a:hover, #gnb nav > ul > li > ul li a:focus{color:#fff; background-color:#2959b0;}
#gnb nav > ul > li > ul li a:focus{visibility:visible; display:block;}
#gnb nav.active{visibility:visible; max-height:500px; opacity:1;}
#gnb_control{display:none; width:40px; height:40px; margin-top:-20px; position:absolute; top:50%; right:5px; border:none; background-color:#fff; transition:all 0.3s;}
#gnb_control span{width:22px; height:3px; background-color:#333; position:absolute; top:50%; left:50%; margin-top:-1.5px; margin-left:-11px; text-indent:-9999px; transition:all 0.3s;}
#gnb_control:before, #gnb_control:after{content:""; width:22px; height:3px; background-color:#333; position:absolute; left:50%; margin-left:-11px; 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{position:fixed; border-bottom:1px solid #d7d7d7;}

/* Sub header */
#wrap.sub header{position:static; background-color:#fff;}

#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/rotc/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;}

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{overflow:hidden; padding-bottom:10px;}
#footer > ul li{float:left; padding:0 10px;}
#footer > ul li:first-child{padding-left:0;}
#footer > ul li:first-child a{color:#2aaec6;}
#footer > ul li a{font-size:16px; color:#a7a7a7;}
#footer > ul li a:hover, #footer > ul li a:focus{text-decoration:underline;}
#footer > address p span{font-size:16px; color:#909090; font-style:normal;}
#footer > address p.contact{padding-bottom:2px;}
#footer > address p.contact span:before{content:"|"; padding:0 8px 0 6px; display:inline-block;}
#footer > address p.contact span:first-child:before{display:none;}
#footer > div.sns{position:absolute; top:65px; right:0;}
#footer > div.sns ul li{display:inline-block;}
#footer > div.sns ul li a{color:#fff; height:50px; line-height:50px; display:block; font-size:16px; font-weight:300;}
#footer > div.sns ul li a img{margin-right:10px;}
#footer > div.sns ul li + li{margin-left:20px;}

/* 메인_비쥬얼 */
#main_visual{display:flex; width:100%; margin-top:120px;}
#main_visual > div{width:50%; height:665px;}
#main_visual > div.visual_contents{
    padding:125px 0 0 100px;
    position:relative;
    background:#053d7b;
    background:-moz-linear-gradient(-45deg,  #053d7b 0%, #129ecc 100%);
    background:-webkit-linear-gradient(-45deg,  #053d7b 0%,#129ecc 100%);
    background:linear-gradient(135deg,  #053d7b 0%,#129ecc 100%);
    filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#053d7b', endColorstr='#129ecc',GradientType=1 );
}
#main_visual > div.visual_contents:after{content:""; width:336px; height:355px; position:absolute; bottom:30px; right:20px; background:url(/_res/rotc/img/bg_main_visual_mark.png) no-repeat 50% 50%;}
#main_visual > div.visual_contents p{font-size:24px; font-weight:350; color:#fff; letter-spacing:-1px;}
#main_visual > div.visual_contents h2{margin-top:15px; line-height:80px; font-size:67px; font-weight:900; color:#fff; letter-spacing:-3.5px;}
#main_visual > div.visual_contents h2 span{display:block; margin-top:15px; line-height:60px; font-size:50px; font-weight:200; text-transform:uppercase; letter-spacing:-1.5px;}
#visual_swiper div.seen1{background:url(/_res/rotc/img/main_visual_01.png) no-repeat 50% 50%/cover;}
#visual_swiper div.seen2{background:url(/_res/rotc/img/main_visual_02.jpg) no-repeat 50% 50%/cover;}
#visual_swiper div.seen3{background:url(/_res/rotc/img/main_visual_03.jpg) no-repeat 50% 50%/cover;}
#visual_swiper_pagination{display:flex; margin-top:100px;}
#visual_swiper_pagination span{width:40px; height:3px; margin-right:10px; background-color:rgba(255,255,255,0.5); transition:all 0.3s;}
#visual_swiper_pagination span.swiper-pagination-bullet-active{width:60px; background-color:rgba(255,255,255,1);}

#contents.main h3{padding:0 0 50px 0; font-size:45px; font-weight:400; color:#000; letter-spacing:-3px; text-align:left;}
#contents.main h3 span{font-weight:700;}

/* 메인_학군단 소식 */
#main_notice{padding:90px 0; background-color:#f1f1f1;}
#main_notice > div{width:100%; max-width:1400px; margin:0 auto; position:relative;}
#main_notice > div ul.tabs{display:flex; position:absolute; top:15px; right:80px;}
#main_notice > div ul.tabs li{padding:0 30px; position:relative;}
#main_notice > div ul.swiper-wrapper > li.empty{padding:140px 0; font-size:20px; text-align:center;}
#main_notice > div ul.tabs li:before{content:""; width:1px; height:18px; position:absolute; left:0; top:20px; border-right:1px solid #d1d1d1; background-color:#a0a0a0;}
#main_notice > div ul.tabs li:first-child:before{display:none;}
#main_notice > div ul.tabs li button{padding:10px; font-size:24px; color:#5d5d5d;}
#main_notice > div ul.tabs li button:after{content:""; display:block; width:100%; height:4px; margin-top:10px;}
#main_notice > div ul.tabs li.active button{font-weight:500; color:#000;}
#main_notice > div ul.tabs li.active button:after{background-color:#2959b0;}

div.notice_swiper{display:none; width:100%; padding:0 75px; position:relative;}
div.notice_swiper.active{display:block;}
div.notice_swiper ul li{max-width:396px; margin-right:25px;}
div.notice_swiper ul li a{display:block; height:310px; padding:40px; border:1px solid #e6e6e6; background-color:#f9f9f9; transition:all 0.3s;}
div.notice_swiper ul li a span{font-size:16px; font-weight:400; color:#0255a9; text-transform:uppercase; letter-spacing:0;}
div.notice_swiper ul li a span strong{padding-right:5px; font-size:36px; font-weight:700; letter-spacing:-2px;}
div.notice_swiper ul li a h6{max-height:60px; min-height:30px; line-height:30px; margin:15px 0; font-size:22px; font-weight:500; color:#333; overflow:hidden;}
div.notice_swiper 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;}
div.notice_swiper ul li a p{height:78px; line-height:26px; font-size:16px; color:#5e5e5e; overflow:hidden;}
div.notice_swiper ul li a:hover, div.notice_swiper ul li a:focus{background-color:#ebebeb; border:1px solid #dadada;}
div.notice_swiper div.control button{width:50px; height:50px; position:absolute; top:130px; border:1px solid #898989; background-color:transparent; transition:0.3s all;}
div.notice_swiper div.control button.prev{left:0;}
div.notice_swiper div.control button.next{right:0;}
div.notice_swiper div.control button span{display:block; width:30px; height:1px; position:absolute; top:50%; left:50%; font-size:1px; color:transparent; background-color:#898989; transform:translateX(-50%);}
div.notice_swiper div.control button span:before, div.notice_swiper div.control button span:after{content:""; width:12px; height:1px; position:absolute; background-color:#898989;}
div.notice_swiper div.control button.prev span:before{top:-5px; left:-1px; transform:rotate(-45deg);}
div.notice_swiper div.control button.prev span:after{bottom:-5px; left:-1px; transform:rotate(45deg);}
div.notice_swiper div.control button.next span:before{top:-5px; right:-1px; transform:rotate(45deg);}
div.notice_swiper div.control button.next span:after{bottom:-5px; right:-1px; transform:rotate(-45deg);}
div.notice_swiper div.control button:hover, div.notice_swiper div.control button:focus{background-color:#fff;}
div.notice_swiper div.control button:hover span:before, div.notice_swiper div.control button:focus span:before, div.notice_swiper div.control button:hover span:after, div.notice_swiper div.control button:focus span:after, div.notice_swiper div.control button:hover span, div.notice_swiper div.control button:focus span{background-color:#2959b0;}
div.notice_swiper div.pagination{margin-top:60px; text-align:center;}
div.notice_swiper span.swiper-pagination-bullet{display:inline-block; width:30px; height:30px; position:relative; cursor:pointer;}
div.notice_swiper span.swiper-pagination-bullet:before{content:""; width:12px; height:12px; position:absolute; top:50%; left:50%; border:1px solid #606060; border-radius:50%; transform:translate(-50%, -50%);}
div.notice_swiper span.swiper-pagination-bullet-active:before{border:none; background-color:#2959b0;}
div.no_swiper ul.swiper-wrapper{display:block;}
div.no_swiper ul.swiper-wrapper li{max-width:100%;}

/* 메인 바로가기 및 배너존 */
#main_information{position:relative; background-color:#064380;}
#main_information:before{content:""; width:50%; height:100%; position:absolute; top:0; left:0; background:url(/_res/rotc/img/bg_information.jpg) no-repeat 50% 50%/cover; z-index:0;}
#main_information > div{display:flex; width:100%; max-width:1400px; margin:0 auto; position:relative; z-index:1;}
#main_information div.information{width:50%; padding:80px 0;}
#main_information div.information ul{display:flex; flex-wrap:wrap; padding:0 80px;}
#main_information div.information ul li{width:50%; margin-top:50px;}
#main_information div.information ul li:nth-child(1), #main_information div.information ul li:nth-child(2){margin-top:0;}
#main_information div.information ul li a{display:block; font-size:22px; color:#fff; text-align:center;}
#main_information div.information ul li a:before{content:""; display:block; width:80px; height:80px; margin:0 auto 10px; background-image:url(/_res/rotc/img/bg_main_information_icon.png); background-repeat:no-repeat;}
#main_information div.information ul li:nth-child(2) a:before{background-position:-80px 0;}
#main_information div.information ul li:nth-child(3) a:before{background-position:-160px 0;}
#main_information div.information ul li:nth-child(4) a:before{background-position:-240px 0;}
#banner_swiper{width:50%; padding-top:55px; position:relative;}
#banner_swiper div.swiper-container{width:430px;}
#banner_swiper div.swiper_control button{width:80px; height:80px; margin-top:-25px; position:absolute; top:50%; border:none;}
#banner_swiper div.swiper_control button span{display:block; text-indent:-9999px;}
#banner_swiper div.swiper_control button:before, #banner_swiper div.swiper_control button:after{content:""; width:50px; height:2px; position:absolute; background-color:rgba(255,255,255,0.4);}
#banner_swiper div.swiper_control button:before{top:22px; transform:rotate(45deg);}
#banner_swiper div.swiper_control button:after{bottom:21px; transform:rotate(-45deg);}
#banner_swiper div.swiper_control button.prev{left:70px; transform:translateY(-50%) rotate(180deg);}
#banner_swiper div.swiper_control button.next{right:70px; transform:translateY(-50%);}

#banner_swiper div.play_control{width:430px; margin:30px auto 0; text-align:center;}
#banner_swiper div.play_control button{width:30px; height:30px; position:relative; text-indent:-9999px; border:none; background-color:transparent; vertical-align:top; cursor:pointer;}
#banner_swiper div.play_control button:before{content:""; width:20px; height:20px; position:absolute; top:50%; left:50%; background:url(/_res/bk21/img/bg_swiper_control.png) no-repeat -20px 0/40px 20px; transform:translate(-50%, -50%);}
#banner_swiper div.play_control button.stop:before{background-position:0 0;}
#banner_swiper span.swiper-pagination-bullet{display:inline-block; width:30px; height:30px; position:relative; cursor:pointer;}
#banner_swiper span.swiper-pagination-bullet:before{content:""; width:12px; height:12px; position:absolute; top:50%; left:50%; border:1px solid #fff; border-radius:50%; transform:translate(-50%, -50%);}
#banner_swiper span.swiper-pagination-bullet-active:before{background-color:#fff;}

/* 학군단 활동 */
#main_activity{width:100%; max-width:1400px; margin:0 auto; padding:100px 0;}
#main_activity > div{position:relative;}
#main_activity a.more{width:60px; height:60px; position:absolute; top:0; right:0; text-indent:-9999px;}
#main_activity a.more:before, #main_activity a.more:after{content:""; width:60px; height:1px; position:absolute; top:50%; left:50%; background-color:#b2b2b2; transform:translate(-50%, -50%) rotate(0deg);}
#main_activity a.more:after{transform:translate(-50%, -50%) rotate(90deg);}
div.recent_gallery ul{display:flex;}
div.recent_gallery ul li{flex:auto; width:30%;}
div.recent_gallery ul li.empty{padding:140px 0; font-size:20px; text-align:center;}
div.recent_gallery ul li:nth-child(2){margin:0 60px;}
div.recent_gallery ul li a{display:block; position:relative;}
div.recent_gallery ul li a div.front div.bg{height:0; padding-bottom:62.5%; position:relative; overflow:hidden;}
div.recent_gallery ul li a div.front div.bg span{display:block; width:100%; height:100%; position:absolute; top:0; left:0; background-repeat:no-repeat; background-position:50% 50%; background-size:cover; transition:all 0.5s;}
div.recent_gallery ul li a div.front div.info span.title{display:block; width:100%; margin:30px 0 15px 0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:24px; font-weight:500; color:#000;}
div.recent_gallery ul li a div.front div.info span.date{display:block; font-size:16px; font-weight:500; color:#5e5e5e;}
div.recent_gallery ul li a div.back{width:100%; position:absolute; top:0; left:0; overflow:hidden; opacity:0; transition:all 0.5s;}
div.recent_gallery ul li a div.back div.bg{height:0; padding-bottom:62.5%; position:relative; overflow:hidden;}
div.recent_gallery ul li a div.back div.bg span{display:block; width:100%; height:100%; position:absolute; top:0; left:0; background-repeat:no-repeat; background-position:50% 50%; background-size:cover; opacity:0; transform:scale(0); transition:all 0.5s;}
div.recent_gallery ul li a div.back div.dummy{width:100%; height:100%; position:absolute; top:0; left:0; z-index:1; background-color:rgba(0,0,0,0.6); opacity:0; transform:scale(0);}
div.recent_gallery ul li a div.back div.view{width:150px; height:45px; line-height:43px; position:absolute; top:50%; left:50%; margin:-22.5px 0 0 -60px; font-size:18px; font-weight:500; color:#fff; text-align:center; border:1px solid #fff; border-radius:45px; z-index:2; opacity:0; transform:scale(0); transition:all 0.7s cubic-bezier(0.680, -0.550, 0.265, 1.550);}
div.recent_gallery ul li a div.back div.view:before{display:inline-block; content:""; width:18px; height:45px; margin-right:5px; background:url(/_res/sch/img/icon_main_faculty.png) no-repeat 50% 50%; background-size:18px 19px; vertical-align:top;}
div.recent_gallery ul li a:hover div.front div.bg span, div.recent_gallery ul li a:focus div.front div.bg span{opacity:0; transform:scale(10);}
div.recent_gallery ul li a:hover div.back, div.recent_gallery ul li a:focus div.back{opacity:1; filter:alpha(opacity=100);}
div.recent_gallery ul li a:hover div.back div.bg span, div.recent_gallery ul li a:focus div.back div.bg span{opacity:1; transform:scale(1.2);}
div.recent_gallery ul li a:hover div.back div.dummy, div.recent_gallery ul li a:hover div.back div.dummy{opacity:1; transform:scale(1);}
div.recent_gallery ul li a:hover div.back div.view, div.recent_gallery ul li a:focus div.back div.view{opacity:1; transform:scale(1);}

/* 메인_학술지 검색 링크 */
#main_link{border-top:1px solid #ccc;}
#main_link > div{width:100%; max-width:1400px; padding:45px 0; margin:0 auto; position:relative; overflow:hidden;}
#contents.main #main_link > div h3{padding:0; position:absolute; top:50%; left:0; transform:translateY(-50%);}
#main_link > div h3 span{display:inline;}
#main_link > div ul{display:flex; justify-content:flex-end; align-items:center; padding-left:370px;}
#main_link > div ul li{flex:auto; text-align:right;}
#main_link > div ul li a{display:block;}

/* 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;
}

/* a11y */
.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{height:364px; background:url(/_res/rotc/img/bg_sub_visual_01.jpg) no-repeat 50% 50%; margin-top:121px;}
#sub_visual div{width:100%; max-width:1400px; margin:0 auto; padding-top:100px;}
#sub_visual div h2{font-size:60px; font-weight:700; color:#fff;}
#sub_visual div p{font-size:18px; color:#909090;}

#snb{margin-top:-40px;}
#snb div{width:100%; max-width:1400px; margin:0 auto; position:relative; background-color:#fff;}
#snb div > ul{display:table; width:100%; table-layout:fixed; border:1px solid #d7d7d7;}
#snb div > ul > li{display:table-cell; position:relative; vertical-align:top;}
#snb div > ul > li:before{content:""; width:1px; height:20px; position:absolute; top:50%; left:0; background-color:#b7b7b7; transform:translateY(-50%);}
#snb div > ul > li:first-child:before{display:none;}
#snb div > ul > li > a{display:block; height:80px; line-height:80px; font-size:20px; letter-spacing:0; font-weight:500; color:#333; text-align:center;}
#snb div > ul > li > a.active{font-weight:700; color:#2959b0;}
#snb div > ul > li ul{min-width:100%; max-width:1000px; 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:#2959b0;}
#snb div > ul > li ul li a.active:before{content:""; width:100%; height:3px; position:absolute; bottom:-10px; left:0; background-color:#2959b0;}

#sub_title{width:100%; max-width:1400px; margin:90px auto 85px; position:relative;}
#sub_title h3{font-size:48px; font-weight:700; color:#333; text-align:center; line-height:48px; letter-spacing:2px;}
#sub_title h3 span{display:block; width:42px; height:14px; margin:0 auto 35px; position:relative; background-color:#25539b;}
#sub_title h3 span:before{content:""; width:14px; height:14px; position:absolute; top:0; left:0; background-color:#25539b;}
#sub_title h3 span:after{content:""; width:14px; height:14px; position:absolute; top:0; right:0; background-color:#25539b;}

#sub_contents{width:100%; max-width:1400px; margin:0 auto; padding-bottom:150px; position:relative;}
#sub_contents div.jwxe_board div.board_view div.board_title{border-top:2px solid #000;}
#sub_contents div.lang{height:60px; position:absolute; top:-140px; right:0; border:1px solid #acacac;}
#sub_contents div.lang a, #sub_contents div.lang span{display:block; width:100px; float:left; font-size:20px; font-weight:350; color:#8d8d8d; line-height:58px; text-align:center;}
#sub_contents div.lang span{position:relative; color:#055597;}
#sub_contents div.lang span:before{content:""; width:100%; height:100%; position:absolute; top:-1px; left:-1px; border:1px solid #0063b5; z-index:1;}
#sub_contents h4{padding-bottom:46px; font-size:32px; font-weight:700;}

/* 사업단 안내 */
div.section{margin-top:120px;}
div.intro{margin-top:0;}
div.intro div.box.type1{overflow:hidden;}
div.intro div.box.type1:before{content:""; display:block;}
#sub_010101 div.intro div.box.type1:before{width:667px; height:469px; float:right; margin-left:80px; background:url(/_res/rotc/img/bg_information_01.jpg) no-repeat 50% 50%/cover;}

#sub_010301 div.intro div.box.type1{position:relative;}
#sub_010301 div.intro div.box.type1:before{position:absolute; width:336px; height:355px; bottom:50px; right:-35px; background:url(/_res/rotc/img/bg_information_03.png) no-repeat 50% 50%/cover; z-index:100;}

div.intro div.box.type1 p{padding-top:25px; font-size:18px; font-weight:350; color:#616161; line-height:30px; letter-spacing:0; word-break:keep-all;}
div.intro div.box.type1 p.desc{font-size:38px; font-weight:700; color:#055597; line-height:48px;}

#sub_010101 div.vision table tr th{padding-right:0;}
#sub_010101 div.vision table td.goal ul{margin-top:0;}
#sub_010101 div.vision table td.goal ul li{padding:10px 40px; vertical-align:top;}
#sub_010101 div.vision table td.goal ul li span{font-size:20px; font-weight:700; color:#333;}

div.organization > ul{width:1300px; margin:50px auto 0; position:relative; overflow:hidden;}
div.organization > ul:before{content:""; width:1px; height:100%; position:absolute; top:0; left:50%; background-color:#e1e1e1; z-index:-1;}
div.organization > ul li{text-align:center;}
div.organization > ul li span{display:inline-block; width:385px; height:80px; font-size:22px; font-weight:500; color:#333; text-align:center; line-height:78px;}
div.organization > ul > li > span{color:#fff; border:1px solid #055597; background-color:#055597;}
div.organization > ul > li > ul{margin-top:90px; position:relative;}
div.organization > ul > li > ul > li > span{border:1px solid #ebebeb; background-color:#ebebeb;}
div.organization > ul > li > ul > li:last-child{position:absolute; top:0; right:0;}
div.organization > ul > li > ul > li:last-child:before{content:""; width:450px; height:1px; position:absolute; top:50%; right:0; background-color:#e1e1e1; z-index:-1; transform:translateX(-50%);}
div.organization > ul > li > ul > li > ul{margin-top:90px; position:relative;}
div.organization > ul > li > ul > li > ul > li > span{border:1px solid #ebebeb; background-color:#ebebeb;}
div.organization > ul > li > ul > li > ul > li ul{margin-top:150px; position:relative;}
div.organization > ul > li > ul > li > ul > li ul:before{content:""; width:916px; height:1px; position:absolute; top:-75px; left:50%; background-color:#e1e1e1; z-index:-1; transform:translateX(-50%);}
div.organization > ul > li > ul > li > ul > li ul li{position:relative;}
div.organization > ul > li > ul > li > ul > li ul li span{border:1px solid #acacac; background-color:#fff;}
div.organization > ul > li > ul > li > ul > li ul li:first-child{position:absolute; top:0; left:0;}
div.organization > ul > li > ul > li > ul > li ul li:last-child{position:absolute; top:0; right:0;}
div.organization > ul > li > ul > li > ul > li ul li:first-child:before, div.organization > ul > li > ul > li > ul > li ul li:last-child:before{content:""; width:1px; height:75px; position:absolute; left:50%; top:-75px; background-color:#e1e1e1; z-index:-1; transform:translateX(-50%);}
div.organization div.image{margin-top:100px; padding:70px 0; text-align:center; background-color:#f6f6f6;}
div.organization div.image img{max-width:100%;}
#sub_010101 div.organization > ul{width:100%;}
#sub_010101 div.organization > ul:before{display:none;}
#sub_010101 div.organization > ul > li > span{width:auto; padding:0 50px;}
#sub_010101 div.organization > ul > li > div{padding-top:20px;}
#sub_010101 div.organization > ul > li > div span{width:100%; height:50px; line-height:50px; font-weight:400;}
#sub_010101 div.organization > ul > li > ul > li{position:static !important;}
#sub_010101 div.organization > ul > li > ul > li:last-child:before{display:none;}
#sub_010101 div.organization > ul > li > ul > li > ul{font-size:0;}
#sub_010101 div.organization > ul > li > ul > li > ul li{display:inline-block; margin-left:56px; vertical-align:top;}
#sub_010101 div.organization > ul > li > ul > li > ul li:first-child{margin-left:0;}
#sub_010101 div.organization > ul > li > ul > li > ul li span{width:308px; border:1px solid #acacac; background-color:#fff;}
#sub_010101 div.organization > ul > li > ul > li > ul li div{padding-top:10px;}
#sub_010101 div.organization > ul > li > ul > li > ul li div span{display:block; height:50px; line-height:50px; border:none; font-weight:400;}

/* 연혁 */
#sub_010201 > div.section{padding:0 110px; margin-top:60px; border-top:2px solid #08538d;}
#sub_010201 > div > div{padding-left:6px;}
#sub_010201 > div > div dl{letter-spacing:0;}
#sub_010201 > div > div dl:after{content:""; display:block; clear:both;}
#sub_010201 > div > div dl > div{display:flex; justify-content:end;}
#sub_010201 > div > div dl > div dt{font-size:18px; color:#08538d; font-weight:500; padding-right:20px;}
#sub_010201 > div:first-child > div:nth-child(2) dl > div:nth-child(5) dt, #sub_010201 > div:first-child > div:nth-child(2) dl > div:nth-child(8) dt{padding-right:8px;}
#sub_010201 > div > div dl > div dd{font-size:18px; letter-spacing:-0.5px;}
#sub_010201 > div > div dl > div + div{margin-top:25px;}
#sub_010201 div.present:after{content:""; display:block; clear:both;}
#sub_010201 div.present h4{font-size:48px; letter-spacing:0; font-weight:700; color:#08538d; padding:50px 0;}
#sub_010201 div.present > div{float:left;}
#sub_010201 div.present > div:last-child{padding-left:186px;}
#sub_010201 div.past{display:flex; width:100%; padding-bottom:80px; margin-top:100px; border-bottom:2px solid #08538d;}
#sub_010201 div.past h4{font-size:30px; color:#000; padding:60px 0 50px; letter-spacing:-0.5px;}
#sub_010201 div.past > div{width:100%}
#sub_010201 div.past > div:last-child{padding-left:100px;}

/* 학군단장 / 역대단장 */
#sub_010301 div.intro div.headleader { position: relative; height: 460px; background-color: #08538d; color: #fff; } 
#sub_010301 div.intro div.headleader:after { content: ''; position: absolute; right: -35px; bottom: 50px; width: 360px; height: 400px; background: url(/_res/rotc/img/bg_information_03.png) no-repeat; background-size: cover; } 
#sub_010301 div.intro div.headleader_box { display: flex; justify-content: space-evenly; align-items: center; width: 80%; height: inherit; } 
#sub_010301 div.intro div.headleader_box:before { content: ''; width: 300px; height: 300px; border-radius: 50%; background: #D3D3D3 url(/_res/rotc/img/img_commander.png) no-repeat; background-size: cover; } 
#sub_010301 div.intro div.headleader_text span { display: block; padding-bottom: 15px; font-size: 30px; } 
#sub_010301 div.intro div.headleader_text strong { font-weight: bold; } 
#sub_010301 div.intro div.headleader_text p { padding-bottom: 15px; font-size: 20px; } 
#sub_010301 div.intro div.headleader_text ul li { position: relative; padding-left: 10px; font-size: 20px; line-height: 1.5; letter-spacing: 0; } 
#sub_010301 div.intro div.headleader_text ul li:before { content: '·'; position: absolute; top: 0; left: 0; } 
#sub_010301 div.leader ul { display: flex; justify-content: space-evenly; flex-flow: row-reverse wrap-reverse; gap: 15px; } 
#sub_010301 div.leader ul li { display: flex; justify-content: space-evenly; align-items: center; height: 230px; background-color: #f6f6f6; flex: 1 1 30%; } 
#sub_010301 div.leader ul li .prof_text { display: flex; flex-direction: column; } 
#sub_010301 div.leader ul li:before { content: ''; width: 150px; height: 150px; background: url(/_res/rotc/img/bg_information_prof.png) no-repeat 0 0 / cover; } 
#sub_010301 div.leader ul li.prof2:before { background-position: -150px 0; } 
#sub_010301 div.leader ul li.prof3:before { background-position: -300px 0; } 
#sub_010301 div.leader ul li.prof4:before { background-position: -450px 0; } 
#sub_010301 div.leader ul li.prof5:before { background-position: -600px 0; } 
#sub_010301 div.leader ul li.prof6:before { background-position: -750px 0; } 
#sub_010301 div.leader ul li.prof7:before { background-position: -900px 0; } 
#sub_010301 div.leader ul li.prof8:before { background-position: -1050px 0; } 
#sub_010301 div.leader ul li.prof9:before { background-position: -1200px 0; } 
#sub_010301 div.leader ul li.prof10:before { background-position: -1350px 0; } 
#sub_010301 div.leader ul li.prof11:before { background-position: -1500px 0; } 
#sub_010301 div.leader ul li.prof12:before { background-position: -1650px 0; } 
#sub_010301 div.leader ul li.prof13:before { background-position: -1800px 0; } 
#sub_010301 div.leader ul li.prof14:before { background-position: -1950px 0; } 
#sub_010301 div.leader ul li.prof15:before { background-position: -2100px 0; } 
#sub_010301 div.leader ul li.prof16:before { background-position: -2250px 0; } 
#sub_010301 div.leader ul li.prof17:before { background-position: -2400px 0; } 
#sub_010301 div.leader ul li.prof18:before { background: url(/_res/rotc/img/bg_intro_prof.png) no-repeat 0 0 / cover; } 
#sub_010301 div.leader ul li span { font-size: 20px; letter-spacing: 0; } 
#sub_010301 div.leader ul li p { font-weight: normal; font-size: 26px; letter-spacing: 0; } 
#sub_010301 div.leader ul li p strong { font-weight: bold; } 
#sub_010301 div.leader ul li dl { padding-top: 18px; font-size: 16px; } 
#sub_010301 div.leader ul li dl dt { color: #055597; font-weight: normal; letter-spacing: 0; } 
#sub_010301 div.leader ul li dl dd { color: #616161; letter-spacing: -0.5px; } 

/* 학군단 위치 */
#sub_010501 div.section h4{padding-bottom:12px; letter-spacing:0;}
#sub_010501 div.section > div{margin-bottom:30px;}
#sub_010501 div.section > p{font-size:16px; letter-spacing:0;}
#sub_010501 div.section > p span{position:relative; padding-right:4px; margin-right:5px;}
#sub_010501 div.section > p span:after{content:":"; position:absolute; top:0; right:-2px;}
#sub_010501 div.campus div.ui_tab_contents{border:1px solid #b7b7b7;}
#sub_010501 div.campus div.map{margin-bottom:60px; width:100%; display:inline; position:relative;}
#sub_010501 div.campus div.map img{width:45%; margin:25px 0 60px 70px;}
#sub_010501 div.campus div.ui_tab_contents > ol{width:45%; height:410px; margin-top:4%; float:right; display:flex; flex-flow:column; flex-wrap:wrap; overflow:hidden;}
#sub_010501 div.campus div.ui_tab_contents > ol > li{display:flex; flex-flow:row; width:25%; float:left; margin-bottom:5px;}
#sub_010501 div.campus div.ui_tab_contents > ol > li{display:block; width:125px;}
#sub_010501 div.campus div.ui_tab_contents > ol > li:nth-child(9){margin-bottom:18px;}
#sub_010501 div.campus div.ui_tab_contents > ol > li span{display:inline-block; height:13px; line-height:13px;}
#sub_010501 div.campus div.ui_tab_contents > ol > li span.num{width:13px; font-size:10px; font-weight:300; border-radius:3px; color:#fff; text-align:center; background-color:#555;}
#sub_010501 div.campus div.ui_tab_contents > ol > li:nth-child(9) span.num{position:relative;}
#sub_010501 div.campus div.ui_tab_contents > ol > li span.text{font-size:13px; color:#777; padding-left:8px;}
#sub_010501 div.campus div.ui_tab_contents > ol > li.active{width:90px; border:2px solid #39b54a;}
#sub_010501 div.campus div.ui_tab_contents > ol > li ol{display:flex; flex-flow:column; position:absolute; top:-2px; left:18px; width:100px;}
#sub_010501 div.campus div.ui_tab_contents > ol > li ol li{width:100%; text-align:left;}
#sub_010501 div.campus div.ui_tab_contents > ol > li ol li span.text{padding-left:4px;}

/* ROTC 소개 */
#sub_020101 h4{padding-bottom:20px;}
#sub_020101 div.section > p, #sub_020101 div.section ol li{font-size:18px; line-height:30px; margin-top:5px; letter-spacing:-0.5px; word-break:keep-all; color:#616161;}
#sub_020101 div.section:after{content:""; display:block; clear:both;}
#sub_020101 div.feature div div.box1{width:48%; padding:45px 55px; float:left; border:1px solid #0063b5;}
#sub_020101 div.feature div div.box1 h5{font-size:26px; color:#0063b5; font-weight:700; padding-bottom:35px;}
#sub_020101 div.feature div div.box1 p{font-size:16px; line-height:28px; letter-spacing:-0.5px; word-break:keep-all;}
#sub_020101 div.feature div div.box1:first-child{padding-bottom:147px; float:left;}
#sub_020101 div.feature div div.box1:last-child{float:right;}
#sub_020101 div.feature div div.box1 p + p{margin-top:20px;}
#sub_020101 div.feature div{padding-top:30px;}
#sub_020101 div.wellfare div{display:flex; background-color:#f7f7f7; width:100%;}
#sub_020101 div.wellfare div ol{display:flex; flex-flow:column; justify-content:space-around; padding:50px 95px;} 
#sub_020101 div.wellfare div ol li{list-style:auto;} 

div.sns_facebook {margin-top:60px;}
div.sns_facebook a{font-size:18px; color:#4267b2; line-height:54px; font-weight:500; text-decoration:underline;}
div.sns_facebook a img{margin-right:20px; width:53px; height:54px;}

div.en div.intro div.box.type1 p{font-weight:300; letter-spacing:0;}
div.en div.vision table tr td{font-weight:350;}
div.en div.vision table td.goal2 > ul > li strong{font-size:24px; font-weight:500;}
div.en div.vision table td.goal2 > ul > li ul li{font-weight:300;}
#sub_010501.en div.vision table tr th{width:350px;}
div.en div.organization > ul > li > span{font-size:22px; font-weight:500;}
div.en div.organization > ul > li > ul > li span{font-size:18px; font-weight:350;}
div.en div.organization > ul > li > ul > li span > br{display:none;}
div.en div.organization > ul > li > ul > li:nth-child(2) > span{line-height:39px; padding-top:13px; height:auto; padding:0; width: 385px;}
div.en div.organization > ul > li > ul > li:nth-child(2) > span > br{display:block;}
div.en div.professor ul li span{font-size:16px; font-weight:300;}
div.en div.professor ul li span.department{font-weight:350;}

div.center_intro{padding-left:390px; position:relative;}
div.center_intro:before{content:""; width:346px; height:440px; position:absolute; top:0; left:0; background:url(/_res/rotc/img/bg_intro_01.jpg) no-repeat 50% 50%;}
div.center_intro p{padding-top:25px; font-size:18px; font-weight:350; color:#616161; line-height:30px; word-break:keep-all;}
div.center_intro p.desc{padding-top:0; font-size:38px; font-weight:500; color:#055597; line-height:48px;}
div.center_intro p.sign{font-size:20px; font-weight:500; color:#333;}
div.center_intro p.sign strong{padding-left:10px; font-size:25px; font-weight:700;}

#sub_contents div.jwxe_board table.type_board{border-top:2px solid #333;}
#sub_contents div.jwxe_board ul.gallery_list li{width:calc(100% / 4 - 21px); margin-left:28px;}
#sub_contents div.jwxe_board ul.gallery_list li:nth-child(3n+1){margin-left:28px;}
#sub_contents div.jwxe_board ul.gallery_list li:nth-child(4n+1){margin-left:0;}

.board_contents a{margin-top:5px; padding:10px; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; background-color:#e2e2e1;}

/* 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 #sub_contents, #wrap.active #quick_menu, #wrap.active footer{display:none;}

    /* Common header */
    header{overflow:hidden;}
    header section{height:auto; padding:0;}
    #logo{height:70px; position:relative; background-color:#fff; z-index:999;}
    #logo h1{left:15px; margin-top:-12px;}
    #logo h1 a{width:210px; height:24px; background-position:0 0; background-size:210px 24px;}
    #gnb_control{display:block;}

    #gnb{width:100%; height:100vh; padding:0; position:absolute; top:-100vh; left:0; background-color:#294a9b; transition:all 0.3s;}
    #gnb.active{max-height:inherit; top:0;}
    #gnb nav{width:100%; padding-top:110px; float:none;}
    #gnb nav > div{width:100%; top:inherit; bottom:30px; text-align:center;}
    #gnb nav > div a{font-weight:400; color:#fff;}
    #gnb nav > div a:before{background-color:#ddd;}
    #gnb nav > div p{display:none;}
    #gnb nav > ul{display:table; width:100%; float:none;}
    #gnb nav > ul > li{display:table-cell; float:none;}
    #gnb nav > ul > li > a{height:70px; line-height:70px; padding:0; font-size:18px; color:#fff; text-align:center; background-color:#294a9b;}
    #gnb nav > ul > li > ul{visibility:visible; min-width:100%; max-height:inherit; overflow:hidden; position:static; border-top:none; background-color:transparent; transform:translateX(0);}
    #gnb nav > ul > li > ul li{margin:15px 0; text-align:center;}
    #gnb nav > ul > li > ul li a{padding:0; font-size:16px; color:#fff;}
    #gnb nav > ul > li > ul li a:before{display:none;}
    #gnb nav > ul > li > ul li a:hover, header section nav > ul > li > ul li a:focus{color:#fff;}
    #gnb nav > ul > li > ul li a.active{font-weight:700; text-decoration:underline;}
    #wrap.active header{padding:0; overflow:visible; position:absolute; border-bottom:none;}
    #wrap.active header section{height:auto;}
    #wrap.active header #logo{background-color:#fff; z-index:999;}

    /* Header Fixed Design */
    header.active{padding:0 30px; position:fixed; border-bottom:1px solid #d7d7d7; background-color:#fff;}
    header.active section{max-width:100%; height:80px;}
    header.active #gnb{padding-top:0;}
    header.active #gnb nav > div{position:static; float:right; padding-top:27px; margin-left:60px;}
    header.active #gnb nav > ul > li > a{padding:0 30px; font-size:18px;}
    header.active #gnb nav > ul > li:last-child > a{padding-right:0;}
    header.active #gnb nav > ul > li > ul{border-top:1px solid #d7d7d7;}

    #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_visual{margin-top:70px;}
    #main_visual > div{width:50%; height:50vw;}
    #main_visual > div.visual_contents{padding:45px 0 0 45px;}
    #main_visual > div.visual_contents:after{width:200px; height:211px; bottom:20px; background-size:cover;}
    #main_visual > div.visual_contents p{font-size:19px; letter-spacing:-1.5px;}
    #main_visual > div.visual_contents h2{margin-top:15px; line-height:60px; font-size:48px; letter-spacing:-2.5px;}
    #main_visual > div.visual_contents h2 span{margin-top:15px; line-height:46px; font-size:36px; letter-spacing:-1px;}
    #visual_swiper_pagination{margin-top:30px;}

    #contents.main h3{padding:0 0 20px 0; font-size:38px; letter-spacing:-2px;}

    /* 메인_학군단 소식 */
    #main_notice{padding:60px 20px;}
    #main_notice > div ul.tabs{right:0;}
    #main_notice > div ul.tabs li{padding:0 20px;}
    #main_notice > div ul.tabs li button{font-size:20px;}
    #main_notice > div ul.tabs li button:after{height:3px;}

    div.notice_swiper{padding:0;}
    div.notice_swiper ul li{max-width:calc((100% - 40px) / 3); margin-right:20px;}
    div.notice_swiper ul li a{height:calc((100% - 40px) / 3); padding:25px;}
    div.notice_swiper ul li a span{font-size:14px;}
    div.notice_swiper ul li a span strong{font-size:30px;}
    div.notice_swiper ul li a h6{max-height:52px; min-height:26px; line-height:26px; margin:12px 0; font-size:18px;}
    div.notice_swiper ul li a p{height:72px; line-height:24px; font-size:14px;}
    div.notice_swiper div.control{width:100%; padding:0 20px; position:absolute; bottom:43px; left:0;}
    div.notice_swiper div.control button{width:45px; height:45px; top:0; background-color:#fff; transform:translateY(0);}
    div.notice_swiper div.control button.next{right:20px;}
    div.notice_swiper div.pagination{height:34px; margin-top:30px; padding-right:20px;}
    div.notice_swiper.no_swiper ul li{width:calc(100% - 20px);}

    /* 메인 바로가기 및 배너존 */
    #main_information > div{max-width:100%;}
    #main_information div.information{padding:50px 0;}
    #main_information div.information ul{padding:0 20px;}
    #main_information div.information ul li{margin-top:60px;}
    #main_information div.information ul li a{font-size:18px;}
    #main_information div.information ul li a:before{width:60px; height:60px; margin:0 auto 10px; background-size:cover;}
    #main_information div.information ul li:nth-child(2) a:before{background-position:-60px 0;}
    #main_information div.information ul li:nth-child(3) a:before{background-position:-120px 0;}
    #main_information div.information ul li:nth-child(4) a:before{background-position:-180px 0;}
    #banner_swiper{padding-top:65px;}
    #banner_swiper div.swiper-container{width:300px;}
    #banner_swiper div.swiper_control button{width:40px; height:40px; margin-top:-25px;}
    #banner_swiper div.swiper_control button:before, #banner_swiper div.swiper_control button:after{width:25px;}
    #banner_swiper div.swiper_control button:before{top:7px;}
    #banner_swiper div.swiper_control button:after{bottom:13px;}
    #banner_swiper div.swiper_control button.prev{left:12px;}
    #banner_swiper div.swiper_control button.next{right:12px;}
    #banner_swiper div.play_control{width:100%; margin:20px auto 0;}

    /* 학군단 활동 */
    #main_activity{max-width:100%; padding:60px 20px;}
    #main_activity a.more{width:40px; height:40px;}
    #main_activity a.more:before, #main_activity a.more:after{width:40px;}
    div.recent_gallery ul li:nth-child(2){margin:0 25px;}
    div.recent_gallery ul li a div.front div.bg{padding-bottom:69.5%;}
    div.recent_gallery ul li a div.front div.info span.title{margin:15px 0 5px 0; font-size:18px;}
    div.recent_gallery ul li a div.front div.info span.date{font-size:14px;}
    div.recent_gallery ul li a div.back div.bg{padding-bottom:69.5%;}

    /* 메인_학술지 검색 링크 */
    #main_link{padding:20px;}
    #main_link > div{max-width:100%; padding:0 0 15px;}
    #contents.main #main_link > div h3{position:static; transform:none; padding-bottom:20px;}
    #main_link > div ul{padding-left:0; flex-wrap:wrap;}
    #main_link > div ul li{text-align:center; width:48%;}
    #main_link > div ul li + li{margin-left:10px;}
    #main_link > div ul li:nth-child(3){margin-left:0;}
    #main_link > div ul li:nth-child(3), #main_link > div ul li:nth-child(4){margin-top:10px;}
    #main_link > div ul li a{display:flex; width:100%; height:80px; border:1px solid #b7b7b7; align-items:center; justify-content:center;}

    /* Sub Layout */
    #sub_visual{height:30vw; margin-top:71px; background-size:cover;}
    #sub_visual div{display:flex; align-items:center; height:100%; padding:0 20px;}
    #sub_visual div h2{font-size:34px; letter-spacing:0;}
    #sub_visual div p{display:none;}

    #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 20px; 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{margin:80px auto 55px;}
    #sub_title h3{font-size:40px; line-height:40px;}
    #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:0 20px 50px;}
    #sub_contents div.lang{height:50px; top:-105px; right:26px;}
    #sub_contents div.lang a, #sub_contents div.lang span{width:80px; font-size:17px; line-height:48px;}
    #sub_contents h4{font-size:24px; padding-bottom:20px; letter-spacing:0;}

    /* 사업단 안내 */
    div.section{margin-top:35px;}
    div.intro div.box.type1:before{width:50%; height:27vw; margin-left:35px;}
    #sub_010101 div.intro div.box.type1:before{width:100%; height:65vw; float:none; margin-left:0;}

    div.intro div.box.type1 p{padding-top:19px; font-size:17px; line-height:28px; letter-spacing:0;}
    div.intro div.box.type1 p.desc{font-size:26px; line-height:34px;}
    div.intro div.box.type1 p.desc br{display:none;}
    div.intro div.box.type1 p strong{font-weight:700; text-decoration:underline;}
    div.intro div.box.type1 p strong:before{display:none;}

    div.intro div.box.type2{margin-top:40px; padding:50px 0;}
    div.intro div.box.type2 h5{line-height:32px; font-size:32px;}
    div.intro div.box.type2 div.top p{font-size:20px;}
    div.intro div.box.type2 div.top div{width:680px; margin:50px auto 0;}
    div.intro div.box.type2 div.top div span{width:160px; height:160px; padding-top:50px; font-size:22px; line-height:26px;}
    div.intro div.box.type2 div.top div strong{width:350px; height:215px; padding-top:72px; font-size:26px; line-height:32px;}
    div.intro div.box.type2 div.top div strong:before, div.intro div.box.type2 div.top div strong:after{height:62px; background-size:350px 62px;}
    div.intro div.box.type2 div.bot{width:100%; margin:50px auto 0;}
    div.intro div.box.type2 div.bot ul{margin-top:40px;}
    div.intro div.box.type2 div.bot ul li{font-size:18px;}

    div.vision p{font-size:17px; padding-top:13px; line-height:28px;}
    div.vision table{display:block; margin-top:25px;}
    div.vision table tbody{display:block;}
    div.vision table tr{display:block; padding:20px; border-top:1px solid #d7d7d7;}
    div.vision table tr:first-child{border-top:none;}
    div.vision table tr th{display:block; width:100%; padding:0 0 10px 0; font-size:24px; line-height:28px; border-top:none;}
    div.vision table tr th br{display:none;}
    div.vision table tr td{display:block; padding:0; font-size:20px; text-align:left; word-break:keep-all; border-top:none;}
    div.vision table td.goal > ul{margin-top:15px;}
    div.vision table td.goal > ul > li{padding:10px; font-size:15px; line-height:22px;}
    div.vision table td.goal > ul > li strong{font-size:18px; padding-bottom:5px; text-align:center;}
    div.vision table td.goal2{text-align:left;}
    div.vision table td.goal2 > ul > li{margin-top:15px;}
    div.vision table td.goal2 > ul > li:first-child{margin-top:15px;}
    div.vision table td.goal2 > ul > li strong{font-size:18px;}
    div.vision table td.goal2 > ul > li p{font-size:16px; line-height:22px;}
    div.vision table td.goal2 > ul > li ul li{padding-left:10px; font-size:16px; line-height:22px;}

    div.vision table td.task ul{padding-left:0;}
    div.vision table td.task ul li{padding-left:10px; float:none; font-size:16px; line-height:22px;}
    div.vision table td.task ul li:nth-child(3n+1){width:300px;}
    div.vision table td.task ul li:nth-child(3n+2){width:500px;}
    div.vision table td.task2 > ul{margin-top:15px;}
    div.vision table td.task2 > ul > li{padding-right:10px;}
    div.vision table td.task2 > ul > li ul li{padding-left:8px; margin-top:5px; font-size:14px; line-height:20px;}

    #sub_010101 div.vision table td.goal ul{margin-top:15px;}
    #sub_010101 div.vision table td.goal ul li{padding:15px;}
    #sub_010101 div.vision table td.goal ul li span{font-size:17px; line-height:24px;}
    #sub_010101 div.vision table td.goal ul li span br{display:none;}
    #sub_010101 div.vision table tr:nth-child(4) td.goal ul li{text-align:center;}
    
    div.organization > ul{margin:19px auto 0; width:100%;}
    div.organization > ul li span{width:220px; height:40px; font-size:18px; line-height:40px; padding:0 30px;}
    div.organization > ul > li > ul{margin-top:40px;}
    div.organization > ul > li > ul > li > span{padding:9px 30px 0;}
    div.organization > ul > li > ul:nth-child(2) > li:nth-child(2) > span{width:235px; height:54px; line-height:26px;}
    div.organization > ul > li > ul > li:last-child{position:absolute; top:-6%; right:0;}
    div.organization > ul > li > ul > li:last-child:before{width:450px; height:1px; top:50%; right:0; }
    div.organization > ul > li > ul > li > ul{margin-top:40px;}
    div.organization > ul > li > ul > li > ul > li ul{margin-top:150px;}
    div.organization > ul > li > ul > li > ul > li ul:before{width:916px; height:1px; position:absolute; top:-75px;}
    div.organization > ul > li > ul > li > ul > li ul li:first-child:before, div.organization > ul > li > ul > li > ul > li ul li:last-child:before{content:""; width:1px; height:75px; position:absolute; left:50%; top:-75px; background-color:#e1e1e1; z-index:-1; transform:translateX(-50%);}
    div.organization div.image{margin-top:35px; padding:30px 0;}
    div.organization div.image img{max-width:90%;}

    #sub_010101 div.organization > ul > li > span{padding:0 30px;}
    #sub_010101 div.organization > ul > li > div{padding-top:10px;}
    #sub_010101 div.organization > ul > li > div span{height:40px; line-height:40px;}
    #sub_010101 div.organization > ul > li > ul > li > ul li{margin-left:20px;}
    #sub_010101 div.organization > ul > li > ul > li > ul li span{width:auto; padding:0 30px;}
    #sub_010101 div.organization > ul > li > ul > li > ul li div{padding-top:6px;}
    #sub_010101 div.organization > ul > li > ul > li > ul li div span{height:40px; line-height:40px;}

    #sub_010301 div.organization > ul li span{padding:10px 30px;}
    #sub_010301 div.organization > ul > li > span{width:auto; padding:10px 30px;}
    #sub_010301 div.organization > ul li span em{margin-top:8px; font-size:17px;}
    #sub_010301 div.organization > ul > li > ul > li:last-child:before{width:31.5vw; top:35px;}
    #sub_010301 div.organization > ul > li > ul > li > ul{padding-top:100px;}
    #sub_010301 div.organization > ul > li > ul > li > ul li{margin-left:30px;}
    #sub_010301 div.organization > ul > li > ul > li > ul li:first-child{margin-left:0;}
    #sub_010301 div.organization > ul > li > ul > li > ul li span{width:auto;}
    #sub_010401 div.organization > ul > li > ul > li:last-child:before{width:293px;}
    #sub_010401 div.organization > ul > li > ul > li > ul > li ul:before{width:calc(100% - 222px);}
    
    /* 연혁 */
    #sub_010201 > div.section{padding:0 20px; margin-top:50px;}
    #sub_010201 > div > div{padding-left:3px;}
    #sub_010201 > div > div dl > div dt{font-size:15px; letter-spacing:0; padding-right:12px;}
    #sub_010201 > div:first-child > div:nth-child(2) dl > div:nth-child(5) dt, #sub_010201 > div:first-child > div:nth-child(2) dl > div:nth-child(8) dt{padding-right:5px;}
    #sub_010201 > div > div dl > div dd{font-size:15px; letter-spacing:0; word-break:keep-all;}
    #sub_010201 > div > div dl > div + div{margin-top:15px;}
    #sub_010201 div.present h4{font-size:36px; padding:30px 0;}
    #sub_010201 div.present > div{width:50%;}
    #sub_010201 div.present > div:last-child{padding-left:20px;}
    #sub_010201 div.past{display:flex; width:100%; padding-bottom:80px; margin-top:100px;}
    #sub_010201 div.past h4{font-size:28px; padding:30px 0;}
    #sub_010201 div.past > div:last-child{padding-left:30px;}

    /* 학군단장 / 역대단장 */
    #sub_010301 div.intro div.headleader_box { width: 85%; }
    #sub_010301 div.intro div.headleader_box:before { width: 250px; height: 250px; }
    #sub_010301 div.intro div.headleader_text p,
    #sub_010301 div.intro div.headleader_text ul li { font-size: 18px; }  
    #sub_010301 div.leader ul li { flex: 1 1 40%; } 
    #sub_010301 div.leader ul li span { font-size: 18px; } 
    #sub_010301 div.leader ul li p { font-size: 24px; } 
    #sub_010301 div.leader ul li dl { font-size: 15px; } 

    /* 학군단 위치 */
    #sub_010501 div.section h4{padding-bottom:12px;}
    #sub_010501 div.section #map{width:100%;}
    #sub_010501 div.section #map div.root_daum_roughmap{width:100% !important;}
    #sub_010501 div.section > div{margin-bottom:0;}
    #sub_010501 div.section > p{font-size:16px; letter-spacing:0; padding-top:15px;}
    #sub_010501 div.section > p span{padding-right:4px; margin-right:5px;}
    #sub_010501 div.campus div.ui_tab_contents{display:flex; flex-flow:column;}
    #sub_010501 div.campus div.map{margin-bottom:0;}
    #sub_010501 div.campus div.map img{width:100%; margin:0;}
    #sub_010501 div.campus div.ui_tab_contents > ol{width:100%; height:315px; margin-top:3px; padding:0 30px;}
    #sub_010501 div.campus div.ui_tab_contents > ol > li{width:33.3%; margin-bottom:0;}
    #sub_010501 div.campus div.ui_tab_contents > ol > li:nth-child(9){margin-bottom:18px;}
    #sub_010501 div.campus div.ui_tab_contents > ol > li span{display:inline-block; line-height:15px; height:15px;}
    #sub_010501 div.campus div.ui_tab_contents > ol > li span.num{width:15px; font-size:13px; border-radius:3px;}
    #sub_010501 div.campus div.ui_tab_contents > ol > li span.text{font-size:14px; padding-left:5px;}
    #sub_010501 div.campus div.ui_tab_contents > ol > li.active{width:150px;}
    #sub_010501 div.campus div.ui_tab_contents > ol > li ol{top:0; left:20px; width:100px;}
    #sub_010501 div.campus div.ui_tab_contents > ol > li ol li span.text{padding-left:4px;}
    #sub_010501 div.campus div.ui_tab_contents > ol > li ol li + li{margin-top:3px;}

    /* ROTC 소개 */
    #sub_020101 h4{padding-bottom:20px;}
    #sub_020101 div.section > p, #sub_020101 div.section ol li{font-size:18px; line-height:30px; margin-top:5px; letter-spacing:-0.5px;}
    #sub_020101 div.feature > div{display:flex; flex-flow:column; padding-top:30px;}
    #sub_020101 div.feature div div.box1{width:100%; float:left; padding:30px 40px;}
    #sub_020101 div.feature div div.box1 h5{font-size:22px; padding-bottom:10px;}
    #sub_020101 div.feature div div.box1 p{font-size:16px; line-height:28px; letter-spacing:-0.5px;}
    #sub_020101 div.feature div div.box1:first-child{float:none; padding-bottom:30px;}
    #sub_020101 div.feature div div.box1:last-child{float:none; margin-top:15px;}
    #sub_020101 div.feature div div.box1 p + p{margin-top:20px;}
    #sub_020101 div.wellfare div{display:block;}
    #sub_020101 div.wellfare div ol{padding:30px 60px 0;} 
    #sub_020101 div.wellfare div ol:last-child{padding:0 60px 30px;} 

    div.sns_facebook{margin-top:30px;}
    div.sns_facebook a{font-size:15px; line-height:41px;}
    div.sns_facebook a img{margin-right:10px; width:40px; height:41px;}

    div.center_intro{padding-left:250px;}
    div.center_intro:before{width:200px; height:254px; background-size:200px 254px;}
    div.center_intro p{padding-top:20px; font-size:16px; line-height:24px;}
    div.center_intro p.desc{font-size:26px; line-height:34px;}
    div.center_intro p.sign{font-size:18px;}
    div.center_intro p.sign strong{padding-left:5px; font-size:22px;}
}

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

    header{overflow:hidden;}
    header section{height:auto; padding:0;}
    #logo{height:70px; position:relative; background-color:#fff; z-index:999;}
    #logo h1{margin-top:-9px; left:15px;}
    #logo h1 a{width:180px; height:23px; background:url(/_res/rotc/img/logo.png) no-repeat 50% 50%/180px 23px;}
    #gnb_control{display:block;}
    #gnb{width:75vw; height:100vh; padding:0; position:absolute; top:0; right:-100%; background-color:#294a9b; transition:all 0.3s;}
    #gnb.active{max-height:inherit; right:0;}
    #gnb nav{width:100%; padding-top:70px; float:none;}
    #gnb nav > div{padding:15px 0; position:static; text-align:center;}
    #gnb nav > div a{position:relative; font-weight:400; color:#fff;}
    #gnb nav > div a:before{content:""; width:1px; height:12px; margin-top:-6px; position:absolute; top:50%; left:0; background-color:#ddd;}
    #gnb nav > div a:first-child:before{display:none;}
    #gnb nav > div p{display:none;}
    #gnb nav > ul{padding:0; float:none;}
    #gnb nav > ul > li{float:none;}
    #gnb nav > ul > li > a{height:55px; line-height:55px; padding:0 20px; font-size:15px; letter-spacing:0; font-weight:400; color:#fff; background-color:#294a9b;}
    #gnb nav > ul > li > a:after{width:13px; height:9px; background:url(/_res/rotc/img/bg_gnb_mobile_arrow.png) no-repeat 50% 50%/13px auto; position:absolute; top:27px; right:20px; margin-top:-4.5px; content:""; transform:rotate(-90deg); transition:all 0.5s;}
    #gnb nav > ul > li:hover > ul{border-top:none;}
    #gnb nav > ul > li > ul{width:100%; padding:0; margin:0; overflow:hidden; position:static; background-color:#fff; transition:all 0.2s; transform:translateX(0);}
    #gnb nav > ul > li > ul li{margin-top:0;}
    #gnb nav > ul > li > ul li a{padding:0 20px 0 30px; height:45px; line-height:45px; font-size:13px; color:#294a9b; letter-spacing:0; text-align:left; position:relative; background-color:#fff;}
    #gnb nav > ul > li > ul li a:before{display:none;}
    #gnb nav > ul > li > ul li a.active{font-weight:700; background-color:#f7f7f7;}
    #gnb nav > ul > li > a.active:after{transform:rotate(0deg);}
    #gnb nav > 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 section{height:auto;}
    #wrap.active header #logo{border-bottom:1px solid #d7d7d7;}
    #wrap.active header #gnb nav > ul{margin:0;}

    #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; border-left:none;}
    #qnb > ul > li > ul{position:static; border:none; border-top:1px solid #444; -webkit-overflow-scrolling:touch;}
    #qnb > ul > li > ul > li > a{height:30px; line-height:30px; padding:0 20px; 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;}

    #main_visual{display:block; margin-top:70px;}
    #main_visual > div{width:100%; height:69vw;}
    #main_visual > div.visual_contents{padding:40px 35px 0;}
    #main_visual > div.visual_contents:after{width:272px; height:245px; bottom:8px; right:-48px; background-size:contain;}
    #main_visual > div.visual_contents p{font-size:17px; font-weight:300; letter-spacing:-0.5px;}
    #main_visual > div.visual_contents h2{margin-top:10px; line-height:47px; font-size:40px; letter-spacing:0.5px;}
    #main_visual > div.visual_contents h2 span{display:none;}
    #visual_swiper div.seen1{background-size:contain;}
    #visual_swiper div.seen2{background-size:contain;}
    #visual_swiper div.seen3{background-size:contain;}
    #visual_swiper_pagination{margin-top:50px; margin-left:50%; transform:translateX(-50%);}
    #contents.main h3{padding:0 0 40px 0; font-size:30px; letter-spacing:-2px;}

    /*  메인_학군단 소식 */
    #main_notice{padding:50px 0 50px 20px;}
    #main_notice > div{max-width:100%;}
    #main_notice > div ul.tabs{margin-bottom:30px; position:static; justify-content:center;}
    #main_notice > div ul.tabs li{padding:0;}
    #main_notice > div ul.tabs li:before{height:14px; top:10px;}
    #main_notice > div ul.tabs li button{padding:0 18px 0; font-size:20px;}

    div.notice_swiper{padding:0;}
    div.notice_swiper ul li{width:80%; margin-right:0;}
    div.notice_swiper ul li a{height:65vw; padding:35px 30px;}
    div.notice_swiper ul li a span{font-size:12px;}
    div.notice_swiper ul li a span strong{font-size:25px; letter-spacing:-1px;}
    div.notice_swiper ul li a h6{max-height:44px; min-height:22px; line-height:22px; margin:10px 0; font-size:17px;}
    div.notice_swiper ul li.latest h6:after{width:20px; height:20px; line-height:20px; font-size:11px;}
    div.notice_swiper ul li a p{height:72px; line-height:24px; font-size:14px;}
    div.notice_swiper div.control{width:100%; padding:0 20px; position:absolute; bottom:43px; left:0;}
    div.notice_swiper div.control button{width:45px; height:45px; top:0; background-color:#fff; transform:translateY(0);}
    div.notice_swiper div.control button.next{right:20px;}
    div.notice_swiper div.pagination{height:34px; margin-top:30px; padding-right:20px;}
    div.notice_swiper.no_swiper ul li{width:calc(100% - 20px);}

    /* 메인 바로가기 및 배너존 */
    #main_information:before{display:none;}
    #main_information > div{display:block;}
    #main_information div.information{width:100%; padding:50px 0; background:url(/_res/rotc/img/bg_information_mobile.jpg) no-repeat 50% 50%/cover;}
    #main_information div.information ul{padding:0;}
    #main_information div.information ul li{margin-top:40px;}
    #main_information div.information ul li a{font-size:16px;}
    #main_information div.information ul li a:before{width:50px; height:50px; background-size:200px 50px;}
    #main_information div.information ul li:nth-child(2) a:before{background-position:-50px 0;}
    #main_information div.information ul li:nth-child(3) a:before{background-position:-100px 0;}
    #main_information div.information ul li:nth-child(4) a:before{background-position:-150px 0;}

    #banner_swiper{width:100%; padding:50px 20px;}
    #banner_swiper div.swiper-container{width:100%;}
    #banner_swiper div.swiper_control{width:100%; position:absolute; bottom:45px; left:0;}
    #banner_swiper div.swiper_control button{width:50px; height:50px; margin-top:-25px;}
    #banner_swiper div.swiper_control button:before, #banner_swiper div.swiper_control button:after{width:28px; height:1px;}
    #banner_swiper div.swiper_control button:before{top:15px;}
    #banner_swiper div.swiper_control button:after{bottom:14px;}
    #banner_swiper div.swiper_control button.prev{left:20px;}
    #banner_swiper div.swiper_control button.next{right:20px;}
    #banner_swiper div.play_control{width:100%;}

    /* 학군단 활동 */
    #main_activity{padding:50px 20px;}
    #main_activity a.more{width:30px; height:30px;}
    #main_activity a.more:before, #main_activity a.more:after{width:30px; height:1px;}
    div.recent_gallery ul{display:block;}
    div.recent_gallery ul li{flex:none; margin-top:30px; width:100%;}
    div.recent_gallery ul li:first-child{margin-top:0;}
    div.recent_gallery ul li:nth-child(2){margin:30px 0 0;}
    div.recent_gallery ul li a div.front div.bg span{display:block; width:100%; height:100%; position:absolute; top:0; left:0; background-repeat:no-repeat; background-position:50% 50%; background-size:cover; transition:all 0.5s;}
    div.recent_gallery ul li a div.front div.info span.title{margin:10px 0 0; font-size:18px;}
    div.recent_gallery ul li a div.front div.info span.date{font-size:13px;}
    div.recent_gallery ul li a div.back{display:none;}

    /* 사이트 바로가기 */
    #main_link > div{padding:50px 20px;}
    #contents.main #main_link > div h3{position:static; transform:translateY(0);}
    #main_link > div ul{display:block; padding-left:0;}
    #main_link > div ul li{flex:none; margin-top:20px;}
    #main_link > div ul li a{display:flex; flex-wrap:wrap; align-content:center; justify-content:center; height:80px; border:1px solid #b7b7b7;}

    /* Swiper */
    .swiper-container-multirow-column > .swiper-wrapper{flex-wrap:nowrap; flex-direction:row;}
    .swiper-slide {flex-shrink:0; width:100%; height:100%; position:relative; transition-property:transform;}

    /* Sub Layout */
    #sub_visual{height:50vw; margin-top:71px; background-size:cover; background:url(/_res/rotc/img/bg_sub_visual_01_m.jpg) no-repeat 50% 50%;}
    #sub_visual div{display:flex; align-items:center; height:100%; padding:0 20px;}
    #sub_visual div h2{font-size:28px; letter-spacing:0;}
    #sub_visual div p{display:none;}

    #snb{padding:0 20px; position:relative; margin-top:-30px; z-index:2;}
    #snb div{height:0;}
    #snb div > ul{display:block; height:62px; padding-top:60px; position:absolute; top:0; left:0; background-color:#fff; transition:0.3s all;}
    #snb div > ul > li{display:block; 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:18px; 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:after{content:""; width:12px; height:7px; position:absolute; top:50%; right:20px; background:url(/_res/rotc/img/bg_snb_arrow.png) no-repeat 50% 50%/12px 7px; transform:translateY(-50%);}
    #snb div > ul > li ul{top:75px;}
    #snb div > ul > li ul li{margin:0 10px;}
    #snb div > ul > li ul li a{font-size:17px;}
    #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{margin:62px auto;}
    #sub_title h3{font-size:30px; line-height:30px; padding-top:65px;}
    #sub_title h3 span{width:30px; height:10px; margin:0 auto 20px;}
    #sub_title h3 span:before, #sub_title h3 span:after{width:10px; height:10px;}

    #sub_contents{padding:0 20px 50px;}
    #sub_contents div.lang{width:140px; height:40px; margin:0 auto; position:static; border:1px solid #acacac;}
    #sub_contents div.lang a, #sub_contents div.lang span{width:50%; font-size:14px; line-height:38px;}
    #sub_contents h4{font-size:25px; padding-bottom:20px;}

    /* 사업단 안내 */
    div.section{margin-top:0; margin-bottom:40px;}
    div.intro div.box.type1:before{margin:0 0 40px 0; float:none;}
    #sub_010101 div.intro div.box.type1:before{width:100%; height:60vw; float:none; margin-left:0;}
    #sub_010301 div.intro div.box.type1:before{display:none;}
    div.intro div.box.type1 p{font-size:16px; line-height:26px; padding-top:18px;}
    div.intro div.box.type1 p.desc{font-size:30px; line-height:38px; padding-top:0; margin-bottom:10px;}
    div.intro div.box.type1 p.desc br{display:none;}
    div.intro div.box.type1 p strong{font-weight:450; text-decoration:underline;}
    div.intro div.box.type1 p strong:before{display:none;}
    div.intro div.box.type2{margin-top:48px; padding:42.5px 0 18px;}
    div.intro div.box.type2 h5{font-size:20px; line-height:24px;}
    div.intro div.box.type2 div.top p{margin-top:13px; font-size:13.5px; font-weight:300;}
    div.intro div.box.type2 div.top div{width:100%; margin:23px auto 0;}
    div.intro div.box.type2 div.top div span{width:88px; height:88px; padding-top:32px; font-size:11.5px; line-height:11.5px; right:3%;}
    div.intro div.box.type2 div.top div span:first-child{left:3%; right:inherit;}
    div.intro div.box.type2 div.top div strong{width:40%; height:114px; padding-top:46px; font-size:8.5px; line-height:1.3125; letter-spacing:0;}
    div.intro div.box.type2 div.top div strong:before, div.intro div.box.type2 div.top div strong:after{height:5vw; background-size:contain; left:calc(50% - 45%); width:90%;}
    div.intro div.box.type2 div.top div strong:before{top:22px;}
    div.intro div.box.type2 div.top div strong:after{bottom:22px;} 
    div.intro div.box.type2 div.bot{width:100%; margin:40px auto 0;}
    div.intro div.box.type2 div.bot h5{font-size:15px; letter-spacing:-1px;}
    div.intro div.box.type2 div.bot ul{display:flex; flex-wrap:wrap; justify-content:center; align-items:center; margin-top:19px;}
    div.intro div.box.type2 div.bot ul li{padding:12.5px 21px; font-size:12px; width:139.5px; line-height:16px;}
    div.intro div.box.type2 div.bot ul li:first-child, div.intro div.box.type2 div.bot ul li:nth-child(3){border-left:none;}
    div.intro div.box.type2 div.bot ul li:last-child{padding: 20.5px 21px;}
    
    /* 연혁 */
    #sub_010201 > div.section{padding:0; margin:30px 0 0 0;}
    #sub_010201 > div > div{padding-left:0;}
    #sub_010201 > div > div dl > div{display:flex; justify-content:end;}
    #sub_010201 > div > div dl > div dt{font-size:16px; letter-spacing:-1px; padding-right:20px;}
    #sub_010201 > div > div dl > div dd{font-size:16px; word-break:keep-all;}
    #sub_010201 > div > div dl > div + div{margin-top:15px;}
    #sub_010201 div.present h4{font-size:28px; padding:30px 0;}
    #sub_010201 div.present > div{float:none;}
    #sub_010201 div.present > div:last-child{padding-left:0;}
    #sub_010201 div.past{flex-flow:column; padding-bottom:80px; margin-top:100px;}
    #sub_010201 div.past h4{font-size:30px; padding:30px 0;}
    #sub_010201 div.past > div{width:100%}
    #sub_010201 div.past > div:last-child{padding-left:0;}
    #sub_010201 div.past > div dl:nth-child(2){padding-left:0;}

    /* 학군단장 / 역대단장 */
    #sub_010301 div.intro div.headleader { height: 500px; }
    #sub_010301 div.intro div.headleader:after { width:322px; height: 340px; top: 50%; left: 50%; transform: translate(-50%, -50%); } 
    #sub_010301 div.intro div.headleader_box { width: 100%; } 
    #sub_010301 div.intro div.headleader_box { display: flex; flex-direction: column; } 
    #sub_010301 div.intro div.headleader_box:before { width: 150px; height: 150px; } 
    #sub_010301 div.intro div.headleader_text span { font-size: 25px; text-align: center; }
    #sub_010301 div.intro div.headleader_text p { text-align: center; }
    #sub_010301 div.intro div.headleader_text p,
    #sub_010301 div.intro div.headleader_text ul li { font-size: 15px; }
    #sub_010301 div.leader ul { gap: 5px; } 
    #sub_010301 div.leader ul li { flex: 1 1 50%; }
    #sub_010301 div.leader ul li.prof18:before { background: url(/_res/rotc/img/bg_intro_prof.png) no-repeat 0 0 / cover; } 
    #sub_010301 div.leader ul li span { font-size: 16px; } 
    #sub_010301 div.leader ul li p { font-size: 20px;  } 
    #sub_010301 div.leader ul li dl { font-size: 16px; } 
    #sub_010301 div.leader ul li dl dd { font-size: 14px; }

    /* 학군단 위치 */
    #sub_010501 div.section > div{margin-bottom:15px; width:100%;}
    #sub_010501 div.section #map{height:35vh; position:relative;}
    #sub_010501 div.section #map div.root_daum_roughmap{width:100% !important; height:100%; position:absolute; top:0; left:0;}
    #sub_010501 div.section #map div.root_daum_roughmap div.wrap_map{height:100% !important;}
    #sub_010501 div.section > p{font-size:14px;}
    #sub_010501 div.campus{margin-top:40px;}
    #sub_010501 div.campus div.campus_img{width:100%; height:79vh;}
    #sub_010501 div.campus div.map{margin-bottom:60px;}
    #sub_010501 div.campus div.map img{width:100%; margin:0 0 10px 0;}
    #sub_010501 div.campus div.ui_tab_contents > ol{width:95%; margin:4% auto 0; float:none; height:345px;}
    #sub_010501 div.campus div.ui_tab_contents > ol > li{width:33.3%; float:none; margin-bottom:2px;}
    #sub_010501 div.campus div.ui_tab_contents > ol > li span{display:inline-block; height:13px; line-height:13px;}
    #sub_010501 div.campus div.ui_tab_contents > ol > li span.text{font-size:10px; padding-left:5px;}
    #sub_010501 div.campus div.ui_tab_contents > ol > li ol{top:0; left:15px;}
    #sub_010501 div.campus div.ui_tab_contents > ol > li ol li span.text{padding-left:4px;}
    
    /* ROTC 소개 */
    #sub_020101 h4{padding-bottom:20px;}
    #sub_020101 div.section{margin-bottom:45px;}
    #sub_020101 div.section > p, #sub_020101 div.section ol li{font-size:17px;}
    #sub_020101 div.section div div.box1{width:100%; padding:30px 30px 40px; float:none;}
    #sub_020101 div.section div div.box1 + div.box1{margin-top:20px;}
    #sub_020101 div.section div div.box1 h5{font-size:22px; padding-bottom:18px;}
    #sub_020101 div.section div div.box1 p{font-size:15px; line-height:26px;}
    #sub_020101 div.section div div.box1:first-child{padding-bottom:40px; float:none;}
    #sub_020101 div.section div div.box1:last-child{float:none;}
    #sub_020101 div.section div div.box1 p + p{margin-top:20px;}
    #sub_020101 div.wellfare div{display:block; flex-flow:column;}
    #sub_020101 div.wellfare div ol{display:block; width:85%; padding:5% 3% 0 10%; margin:0 auto;}
    #sub_020101 div.wellfare div ol:last-child{padding-top:0; padding-bottom:5%;}  
    #sub_020101 div.wellfare div ol li{font-size:14px;}

    div.sns_facebook{margin-top:15px;}
    div.sns_facebook a{font-size:15px; line-height:25px;}
    div.sns_facebook a img{margin-right:5px; width:25px; height:25px;}

    div.center_intro{padding-left:0; overflow:hidden;}
    div.center_intro:before{width:150px; height:191px; margin:0 20px 20px 0; float:left; position:static; background-size:150px 191px;}
    div.center_intro p{padding-top:15px; font-size:15px; line-height:22px;}
    div.center_intro p.desc{font-size:20px; line-height:28px;}
    div.center_intro p.sign{font-size:16px;}
    div.center_intro p.sign strong{padding-left:5px; font-size:18px;}

    #sub_contents div.jwxe_board ul.gallery_list li{width:100%; margin-left:0;}
    #sub_contents div.jwxe_board ul.gallery_list li:nth-child(3n+1){margin-left:0;}
}