@charset "utf-8";

html, body {-webkit-font-smoothing:antialiased; -webkit-text-size-adjust:none;}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, button, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, main, nav, output, ruby, section, summary, time, mark, audio, video, input, textarea, select, svg {margin: 0; padding: 0; font: inherit; font-size: inherit; font-weight: inherit; color: inherit; vertical-align: baseline; border: 0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -ms-box-sizing:border-box; -o-box-sizing:border-box; box-sizing:border-box; -webkit-touch-callout: none;}
*:after, *:before {box-sizing: border-box;}
main, header, nav, section, footer, menu, article, aside, details, figcaption, figure, hgroup {display: block;}
ol, ul {list-style: none;}
strong {font-weight: 500;}
small { font-size: 14px; }
blockquote, q {quotes: none;}
blockquote:before, blockquote:after, q:before, q:after {content: ""; content: none;}
table {width: 100%; border-collapse: collapse; border-spacing: 0; table-layout: fixed;}
caption, legend {width: 0; height: 0; font-size: 0; line-height: 0; overflow: hidden;}
th, td {font-family: inherit; font-size: inherit; color: inherit; line-height: 1.5; vertical-align: middle; word-break: break-all; text-overflow: ellipsis; word-wrap: break-word;}
img {display: block; border: 0; vertical-align: middle;}
button {cursor: pointer; margin: 0; padding: 0; font: inherit; color: inherit; vertical-align: middle; line-height: normal; border: 0; background: transparent; text-transform: none; overflow: visible; -webkit-appearance: button;}
button[disabled] {cursor: default; opacity: 0.5;}
a {color: inherit; text-decoration:none; -webkit-text-decoration-skip: objects;}
a:active, a:hover {outline: 0;}
video {display: block; width: 100%;}
label {vertical-align: middle;}
select {padding-left: 10px; border: 1px solid #ccc; background: #fff; border-radius: 0; vertical-align: middle; text-transform: none;}
input, textarea {vertical-align: middle; line-height: normal; border-radius: 0; background-color: #fff; -webkit-touch-callout: default !important; -webkit-user-select: text !important;}
input[type="text"], input[type="password"], input[type="number"], input[type="email"], input[type="tel"], input[type="url"], input[type="search"], input[type="time"], input[type="file"], input[type="date"], textarea {padding: 0 20px; height: 46px; border: 1px solid #ccc; border-radius: 5px; -webkit-appearance: none; appearance: none;}
input[type="password"] {font-family: Arial, Tahoma, sans-serif !important;}
input[type="checkbox"], input[type="radio"] {width: auto; border: none;}
input[type="button"], input[type="reset"], input[type="submit"] {cursor: pointer; -webkit-appearance: button;}
input:-webkit-autofill {-webkit-box-shadow: 0 0 0px 1000px #fff inset;}
input::-webkit-input-placeholder{color:#ccc !important;}
input:-moz-placeholder{color:#ccc !important; opacity:1 !important;}
input::-moz-placeholder{color:#ccc !important; opacity:1 !important;}
input:-ms-input-placeholder{color:#ccc !important;}
textarea {padding: 10px; width: 100%; height: auto; line-height: 1.8; resize: none;}
textarea::-webkit-input-placeholder{color:#ccc !important;}
textarea:-moz-placeholder{color:#ccc !important; opacity:1 !important;}
textarea::-moz-placeholder{color:#ccc !important; opacity:1 !important;}
textarea:-ms-input-placeholder{color:#ccc !important;}
input[type="text"][readonly], input[type="password"][readonly], input[type="email"][readonly], input[type="tel"][readonly], input[type="search"][readonly], input[type="text"][disabled], input[type="password"][disabled], input[type="email"][disabled], input[type="tel"][disabled], input[type="search"][disabled], textarea[readonly], textarea[disabled], select[disabled] {color: #666; background: #f7f7f7; border-color: #c0c0c0;}
input[readonly], textarea[readonly] {cursor: default;}
a, label, input, select, textarea {-webkit-tap-highlight-color: transparent;}
select:focus, input:focus, textarea:focus {outline-color: #6060ff;}
.is-mobile select { -webkit-appearance: none; background: #fff url(../img/btn_arrow_gray.png) no-repeat 95%; background-size: 10px; }

body { font-family: "Noto Sans KR", Arial, Tahoma, sans-serif; font-size: 16px; font-weight: 400; color: #333; background: #fff; word-break: keep-all; }
body.hidden, body.opened-overlay { overflow: hidden; }
body.hidden, body.opened-overlay-time { overflow: hidden; }
.opened-overlay-time .overlay-time-cover { display: block; z-index: 1000001; }
.opened-overlay-time .cc-popup-wrap, .cc-popup-wrap.opened { display: block; }


#wrapper { padding: 145px 0 0; }
#header { position: fixed; top: 0; left: 0; width: 100%; background: #fff; z-index: 900; }
#header.opened-sub-menu .head-bottom:after { content: ""; width: 100%; height: 52px; position: absolute; top: 100%; left: 0; background-color: #eef5ff; z-index: 2; }
.only-mo-header { display: none; }
.head-top { height: 90px; padding: 0 20px; border-bottom: 1px solid #dedede; }
.head-bottom { height: 55px; border-bottom: 1px solid #dedede; }
.head-inner { margin: 0 auto; max-width: 1200px; height: 100%; position: relative; z-index: 5; }
.head-inner:after { content: ""; display: block; clear: both; }
.head-inner .logo { width: 350px; height: 100%; position: absolute; left: 0; top: 0; }
.only-on-header .head-top .head-inner { z-index: 8; }
.only-on-header .head-inner .logo a:after { content: ""; width: 210px; height: 100%; background: url(../img/img_logo_main.png) no-repeat center; background-size: 100% auto; position: absolute; left: 0; top: 50%; transform: translate(0, -50%); }
.only-mo-header .head-inner .logo a:after { content: ""; width: 210px; background: url(../img/img_logo_main.png) no-repeat center; background-size: 100% auto; position: absolute; left: 0; top: 50%; transform: translate(0, -50%); }
.only-on-header .head-inner .logo a { display: block; height: 99%; position: relative; }
.head-inner .logo-name { font-size: 19px; color: #376dc8; position: absolute; top: 40%; left: 170px; transform: translate(0, -50%); letter-spacing: -1px; }
.head-top .total-search-wrap { width: 100%; padding: 20px 180px 20px 360px; }
.head-top .total-search-wrap > div { position: relative; }
.total-search-wrap select { width: 110px; height: 50px; padding-left: 10px; text-align: center; font-size: 16px; border: 0; border: 1px solid #ccc; border-right: 0; background-color: #fff; position: absolute; left: 0; z-index: 30; cursor: pointer; border-top-left-radius: 10px; border-bottom-left-radius: 10px; }
.is-online .total-search-wrap select:focus { outline: 0; box-shadow: 0 0 0 2px #6060ff; }
.total-search-wrap label { display: block; width: 100%; height: 50px; position: relative; padding: 0 55px 0 110px; z-index: 20; }
.total-search-wrap .total-search-input { width: 89%; height: 100%; position: relative; padding: 0 10px 0 20px; border-left: 0; border-right: 0; border-radius: 0; float: left; background-color: #fff; }
.total-search-wrap .total-search-btn { width: 11%; height: 50px; position: relative; float: right; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; }
.total-search-wrap .total-search-btn:after { content: ""; background: url(../img/btn_search_blue.png) no-repeat center / 100%; width: 22px; height: 22px; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); }
.total-search-wrap .total-filter { display: block; width: 55px; height: 50px; position: absolute; top: 0; right: 0; z-index: 30; }
.total-search-wrap .total-filter-btn { width: 100%; height: 100%; border-top-right-radius: 10px; border-bottom-right-radius: 10px; border: 1px solid #ccc; }
.total-search-wrap .total-filter-btn:after { content: ""; background: url(../img/btn_search_list.png) no-repeat center / 100%; width: 22px; height: 22px; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); }
.total-search-wrap .total-search-btn:focus, .total-search-wrap .total-filter-btn:focus { outline-color: #6060ff; }
body.opened-search-filter { overflow: hidden; }
body.opened-search-filter .total-search-wrap .total-filter-btn { border: 0; background: #0f3e8e; }
body.opened-search-filter .total-search-wrap .total-filter-btn:after { background-image: url(../img/btn-list-white.png); }
body.opened-search-filter .total-search-wrap .total-filter-btn:focus { outline: 0; border-top-right-radius: 10px; border-bottom-right-radius: 10px; }
.head-top .account-info { width: 160px; position: absolute; right: 0; top: 50%; transform: translate(0, -50%); z-index: 500; }
.account-info .total-login-btn { display: inline-block; width: 80px; line-height: 40px; border-radius: 6px; background-color: #0f3e8e; color: #fff; font-size: 16px; text-align: center; float: right; }
.account-info .account-info-btn { display: block; width: 100%; height: 100%; position: relative; padding: 8px 0; color: #666; background-color: #fff; border: 1px solid #ededed; border-radius: 25px; line-height: 17px; font-size: 12px; text-align: left; }
.account-info .account-info-btn.on { border: 1px solid #5189d6; }
.account-info .account-info-btn:after { content: ""; position: absolute; top: 50%; right: 10px; width: 0; height: 0; border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 6px solid #333; transform: translate(0, -50%) rotate(0deg); transition: transform 0.3s; }
.account-info .account-info-btn.on:after { transform: translate(0, -50%) rotate(180deg); }
.account-info .account-info-btn span { display: block; padding-left: 20px; padding-right: 30px; }
.account-info .account-info-btn span.name { font-size: 14px; color: #376dc8; font-weight: 500; }
.account-info .account-dropdown { display: none; width: 100%; padding: 18px 10px; border-radius: 25px; box-shadow: 0px 2px 5px 0 rgba(0, 0, 0, 0.3); position: absolute; top: 52px; right: 0; text-align: center; background: #fff; overflow: hidden; z-index: 500; }
.account-info .total-info-menu { font-size: 14px; color: #333; line-height: 26px; letter-spacing: -1px; }
.nav { float: left; line-height: 54px; letter-spacing: -1px; }
.gnb-main > li .sub-menu-wrap { height: 0; overflow: hidden; }
.gnb-main > li.focus .sub-menu-wrap { height: auto; }
.gnb-main > li.focus a:focus { color: #376dc8; }
.gnb-main > li { float: left; font-size: 17px; }
.gnb-main > li:after { content: ""; display: block; clear: both; }
.gnb-main > li.on .main-menu, .is-online .gnb-main > li:hover { color: #376dc8; }
.gnb-main > li.on .main-menu span { padding-bottom: 3px; border-bottom: 1px solid #376dc8; }
.gnb-main > li:nth-of-type(1) .main-menu, .gnb-main > li:nth-of-type(2) .main-menu { cursor: default; }
.nav .main-menu { display: inline-block; position: relative; padding: 0 16px; }
.nav .main-menu:after { content: ""; width: 1px; height: 14px; background-color: #e4e4e4; position: absolute; top: 50%; left: 0; transform: translate(0,-50%); }
.nav > ul > li:first-child .main-menu:after { content: none; }
.nav > ul > li em.cart { display: inline-block; line-height: 25px; padding: 0 7px 0 25px; background-color: #f34c38; font-size: 15px; color: #fff; border-radius: 13px; position: relative; transform: translate(0, -5%); margin-left: 5px; }
.nav > ul > li em.cart:after { content: ""; position: absolute; top: 50%; left: 7px; transform: translate(0, -50%); width: 15px; height: 13px; background: url(../img/img_shopping_basket.png) center no-repeat; background-size: cover; }
.nav .sub-menu-wrap { height: 100%; position: absolute; left: 0; }
.nav .sub-menu-wrap ul { display: inline-block; height: 100%; padding: 0 20px; position: relative; }
.nav .sub-menu-wrap ul:after { content: ""; width: 1px; height: 16px; position: absolute; right: -3px; top: 50%; transform: translate(0, -50%); background-color: #cbd2dc; }
.nav .sub-menu-wrap ul:last-child:after { content: none; }
.nav .sub-menu-wrap li { float: none; display: inline-block; }
.nav .sub-menu-wrap .sub-menu { display: inline-block; font-size: 16px; padding: 0 8px; color: #39495f; line-height: 50px; }
.nav .sub-menu-wrap li:hover .sub-menu { color: #376dc8; }
.nav .sub-menu-wrap li.on .sub-menu { font-weight: 500; color: #376dc8; }
.head-inner .h-link-list { float: right; font-size: 13px; line-height: 54px; }
.head-inner em.q-mark { position: absolute; left: 0; top: 50%; transform: translate(0, -50%); }
.head-inner em.q-mark img { width: 16px; height: 16px; }
.head-inner .h-link-list > ul:after { content: ""; display: block; clear: both; }
.head-inner .h-link-list li { float: left; }
.head-inner .h-link-list .link-item { display: block; padding: 0 9px; position: relative; color: #666; }
.is-online .head-inner .h-link-list .link-item:hover { color: #376dc8; }
.head-inner .h-link-list li.on .link-item { font-weight: 500; color: #376dc8; }
.head-inner .h-link-list li .link-item:after { content: ""; width: 1px; height: 12px; position: absolute; top: 50%; right: 0; transform: translate(0%,-50%); background-color: #e4e4e4; }
.head-inner .h-link-list li:first-child .link-item { padding-left: 20px; }
.head-inner .h-link-list li:last-child .link-item:after { content: none; }

footer { position: relative; background: #f3f3f3; z-index: 50; }
.foot-inner { max-width: 1280px; min-width: 320px; padding: 30px 40px; margin: 0 auto; }
.foot-inner:after { content: ""; display: block; clear: both; }
.foot-left { float: left; }
.foot-link { height: 50%; margin: 0 -10px; }
.foot-link:after { content: ""; display: block; clear: both; }
.foot-link a { padding: 0 10px; font-size: 16px; position: relative; float: left; }
.foot-link a:before { content: ""; width: 1px; height: 16px; position: absolute; left: 0; top: 50%; transform: translate(0, -40%); background-color: #ccc; }
.foot-link a:first-child:before { content: none; }
.foot-copy { height: 50%; font-size: 12px; color: #999; margin-top: 6px; }
.foot-extend { float: right; position: relative; }
.foot-extend span { display: block; padding-right: 115px; }
.foot-extend .time { font-size: 16px; color: #333; position: relative; letter-spacing: -1.3px; margin-bottom: 6px; }
.foot-extend .postscript { font-size: 12px; color: #666; }
.foot-extend .login-extend-button { width: 105px; position: absolute; right: 0; top: 50%; transform: translate(0,-50%); font-size: 13px; color: #fff; background-color: #666; text-align: center; line-height: 42px; border-radius: 5px; }

#timer, #timerHd { padding-right: 0px; }

.container { margin: 0 auto; padding: 60px 40px 150px; max-width: 1280px; min-width: 320px; }
.is-online .container { min-height: 750px; }
.content { position: relative; }

.skipnavigation { position: fixed; top: -100px; left: 0; padding: 10px; width: 100%; font-size: 15px; color: #fff; text-align: center; background: #0f3e8e; z-index: 1000000; transition: top 0.3s; }
.skipnavigation span { display: inline-block; position: relative; }
.skipnavigation span:after { content: ""; display: block; position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; background: #fff; }
.skipnavigation:focus { top: 0; }

h2 { margin-bottom: 25px; font-size: 28px; line-height: 1.3; }
h3 { margin-bottom: 20px; font-size: 22px; line-height: 1.3; }
h4 { margin-bottom: 16px; font-size: 16px; line-height: 1.3; }
th, td { padding: 5px; border: 1px solid #e7e7e7; word-break: keep-all; }

.login-wrap { margin: 0 auto; max-width: 380px; color: #fff; text-align: center; overflow: hidden; border: 1px solid #d3d5e4; border-radius: 8px; }
.login-wrap .con-box { padding: 30px 35px; }
.login-wrap .enter { margin: 12px 0 15px; }
.login-wrap .enter input { margin-top: 5px; width: 100%; color: #333; background: #f7f7f7; }
.login-wrap .btns .cc-btn { margin-top: 8px; }
.login-wrap .btns .login-btn { background: #376dc8; }
.login-wrap .bottom { margin-top: 15px; font-size: 14px; }
.login-wrap .bottom .txt { color: #999; }
.login-wrap .bottom .find-account-btn { display: inline-block; padding: 6px 0 3px; font-weight: 500; color: #376dc8; border-bottom: 1px solid #759ad9; }
.login-wrap .mysnu-login-btn { margin: 0 auto 15px; height: 69px; line-height: 66px; font-size: 20px; border-radius: 10px; background: #376dc8; }

.sr-only { position: absolute; margin: -1px; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }

.scroll-top-btn { display: none; position: fixed; bottom: 160px; right: 50%; margin-right: -656px; width: 36px; height: 36px; background: #fff; border-radius: 18px; box-shadow: 0 3px 5px #eaeaea; z-index: 899; transition: transform 0.2s; transform: scale(1); }
.scroll-top-btn:after { content: ""; display: block; position: absolute; top: 50%; left: 50%; margin-top: -5px; margin-left: -5px; width: 11px; height: 14px; background: url(../img/btn_top.png) no-repeat center / 100%; transform: translateY(0) scale(1); transition: transform 0.2s; }
.is-online .scroll-top-btn:hover:after { transform: translateY(-3px) scale(1.2); }
body.hidden .scroll-top-btn, body.opened-overlay .scroll-top-btn { display: none; }

.no-con { padding: 40px 15px; font-size: 15px; font-weight: 400; color: #666; text-align: center !important; }
.editor-content { line-height: 1.5; text-overflow: ellipsis; word-wrap: break-word; word-break: keep-all; }
.editor-content * { font-family: inherit !important; }
.editor-content img { display: block; margin: 15px auto; width: auto !important; max-width: 100% !important; height: auto !important; }
.editor-content table { width: 100% !important; border: 1px solid #999 !important; }
.editor-content th, .editor-content td { padding: 5px; border: 1px solid #999 !important; }
.ellipsis { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.title-line { padding-bottom: 15px; border-bottom: 2px solid #e7e7e7; }
.title-line.deep { border-color: #888a96; }

.grid-con:after { content: ""; display: block; clear: both; }
.grid-con > .grid-item { display: block; float: left; width: 50%; }
.grid-con.col-3 > .grid-item { width: 33.33%; }
.grid-con.col-4 > .grid-item { width: 25%; }
.grid-con.tabs { padding: 0 1px; }
.grid-con.tabs > .grid-item { position: relative; margin: 0 -1px; padding: 0 10px; height: 54px; line-height: 54px; font-size: 16px; color: #666; text-align: center; border: 1px solid #ccc; background: #fff; overflow: hidden; z-index: 1; }
.grid-con.tabs > .grid-item.on { cursor: default; color: #fff; border-color: #0f3e8e; background: #0f3e8e; z-index: 2; }
.grid-con.tabs.inline { border-bottom: 1px solid #ccc; }
.grid-con.tabs.inline > .grid-item { padding: 0 20px; width: auto; min-width: 155px; border-bottom: 0; }

.grid-con-a-tag:after { content: ""; display: block; clear: both; }
.grid-con-a-tag > .grid-item { display: block; float: left; width: 50%; }
.grid-con-a-tag.col-3 > .grid-item { width: 33.33%; }
.grid-con-a-tag.col-4 > .grid-item { width: 25%; }
.grid-con-a-tag.tabs { padding: 0 1px; }
.grid-con-a-tag.tabs > .grid-item { position: relative; margin: 0 -1px; padding: 0 10px; height: 54px; line-height: 54px; font-size: 16px; color: #666; text-align: center; border: 1px solid #ccc; background: #fff; overflow: hidden; z-index: 1; }
.grid-con-a-tag.tabs > .grid-item.on { cursor: default; color: #fff; border-color: #0f3e8e; background: #0f3e8e; z-index: 2; }
.grid-con-a-tag.tabs.inline { border-bottom: 1px solid #ccc; }
.grid-con-a-tag.tabs.inline > .grid-item { padding: 0 20px; width: auto; min-width: 155px; border-bottom: 0; }

.cc-txt { font-size: 14px; color: #666; line-height: 1.5; word-break: keep-all; text-overflow: ellipsis; word-wrap: break-word; }
.cc-txt.round { margin-bottom: 40px; padding: 25px 35px; color: #fff; border-radius: 10px; background: #5189d6; }
.cc-txt.round .txt-l { margin-right: 45px; font-size: 24px; display: inline-block; vertical-align: top; }
.cc-txt.round .txt-r { display: inline-block; margin-top: -4px; font-weight: 300; vertical-align: middle; }
.cc-con-box { margin-bottom: 20px; padding: 35px; border-radius: 8px; border: 1px solid #d3d5e4; }
.cc-table { border-top: 2px solid #939393; }
.cc-table th, .cc-table td { height: 50px; font-size: 14px; border-top: 0; }
.cc-table th { color: #333; }
.cc-table thead th { border-right: 0; background: #f8f8f8; }
.cc-table thead th:first-child { border-left: 0; }
.cc-table tbody th { padding-left: 15px; padding-right: 15px; text-align: left; }
.cc-table tbody th:first-child, .cc-table tbody td[colspan] { border-left: 0; }
.cc-table td { font-weight: 300; color: #666; text-align: center; border-right: 0; }
.cc-table.thin, .cc-table.simple { border-top-width: 1px; }
.cc-table.simple th, .cc-table.simple td { border-left: 0; border-right: 0; }
.cc-table.light-type { border-top-width: 1px; }
.cc-table.light-type tr { border-bottom: 1px solid #e7e7e7; }
.cc-table.light-type th, .cc-table.light-type td { padding: 3px; text-align: center; border: 0; }
.cc-table.light-type th { background: transparent; }
.cc-table th.diff { font-weight: 300 !important; text-align: center !important; background: transparent !important; }

.cc-btn { display: block; margin: 20px auto 0; width: 100%; height: 50px; line-height: 50px; font-size: 18px; color: #fff; text-align: center; vertical-align: middle; background: #0f3e8e; border-radius: 6px; overflow: hidden; transition: box-shadow 0.3s; }
.cc-btn.down { height: 69px; line-height: 66px; font-size: 20px; color: #376dc8; border: 2px solid #376dc8; background: #fff; border-radius: 10px; }
.cc-btn.down span:after { content: ""; display: inline-block; position: relative; top: 2px; margin-left: 8px; width: 22px; height: 20px; background: url(../img/btn_manual_blue.png) no-repeat center / 100%; }
.cc-btn.link { height: 69px; line-height: 66px; font-size: 20px; color: #376dc8; border: 2px solid #376dc8; background: #fff; border-radius: 10px; }
.cc-btn.link span:after { content: ""; display: inline-block; position: relative; top: 0; margin-left: 8px; width: 19px; height: 15px; background: url(../img/btn-info-blue.png) no-repeat center / 100%; }
.cc-btn.abs { position: absolute; top: 0; right: 0; }
.cc-btn.small { display: inline-block; margin: 0; padding: 0 12px; width: auto; height: 34px; line-height: 32px; font-size: 13px; color: #666; border: 1px solid #e5e5e5; border-radius: 37px; background: #fff; }
.cc-btn.red { color: #fff; border: 0; background-color: #f34c38; }
.cc-btn.white { color: #a8bde1; border: 1px solid #376dc8; border-radius: 5px; }
.cc-btn.cancel { background: #a6a6a6; }
.cc-btn.del, .cc-btn.gray { border-color: #e5e5e5; background: #f2f2f2; }
.cc-btn-con { text-align: center; }
.cc-btn-con .cc-btn { display: inline-block; margin: 20px 3px 0; padding: 0 10px; width: 120px; height: 40px; line-height: 38px; font-size: 15px; color: #000; border: 1px solid #ccc; border-radius: 0; background: #fff; }
.cc-btn-con.right { text-align: right; }
.cc-btn-con.line { border-top: 1px solid #e7e7e7; }
.cc-btn-con .write-btn { font-size: 16px; color: #376dc8; border: 1px solid #376dc8; border-radius: 0; background: #fff; }
.cc-btn-con .print-btn { color: #666; background: #f8f8f8; }
.cc-btn-con .cc-btn.gray { color: #fff; background: #ccc; }
.cc-btn-wrap { position: relative; padding: 0 10px; }
.cc-btn-wrap.line { border-top: 1px solid #e7e7e7; }
.cc-btn-wrap .abs-submit-btn { position: absolute; top: 6px; left: 50%; width: 180px; margin: 15px 0 0; transform: translateX(-50%); }

.cc-btn-con .left-btn { position: absolute; top: 0; left: 0; }
.cc-btn-con .reset-btn { font-size: 13px; color: #666; width: 82px !important; height: 35px; line-height: 1; border: 1px solid #e5e5e5; border-radius: 18px; background: #fff; }
.cc-btn-con .reset-btn:before { content: ""; display: inline-block; margin-top: -2px; margin-right: 3px; width: 17px; height: 16px; background: url(../img/img_reset.png) no-repeat center / 100%; vertical-align: middle; transform: rotate(0deg); transition: transform 0.3s; }
.is-online .cc-btn-con .reset-btn:hover:before { transform: rotate(180deg); }
.cc-submit-btn { margin-top: 30px; border-top: 1px solid #c7d1de; }
.cc-submit-btn.xline { margin-top: 30px; border: 0; }
.cc-submit-btn .cc-btn { max-width: 180px; }

.arrow-img:after { content: ""; display: inline-block; position: relative; top: 2px; margin-left: 5px; width: 6px; height: 14px; background: url(../img/btn_arrow_view_gray.png) no-repeat center / 100%; }
.arrow-img.gray:after { top: 0; margin-left: 3px; width: 5px; height: 10px; background-image: url(../img/btn-view-gray.png); }

.link-line-btn { color: #376dc8; text-decoration: underline; }
.view-more-btn { display: block; position: absolute; top: 0; right: 3px; height: 30px; line-height: 30px; font-size: 14px; color: #969696; }

.btns-box.top-line { border-top: 1px solid #ccc; }
.btns-box > div { margin: 30px auto 0; text-align: center; }
.btns-box.right > div { text-align: right; }
.btns-box .cc-btn { display: inline-block; margin: 3px; color: #333; }
.btns-box.right .cc-btn { min-width: 100px; }
.btns-box.center .cc-btn { width: 30%; max-width: 181px; color: #fff; }

.small-btns { margin-bottom: 10px; min-height: 35px; }
.small-btns:after { content: ""; display: block; clear: both; }
.small-btns .cc-btn { margin: 3px 3px 3px 0; font-size: 14px; }
.small-btns .cc-btn:last-child { margin-right: 0; }
.small-btns .text { position: relative; top: 2px; }

.con-expand { position: relative; overflow: hidden; }
.expanded-btn { display: none; position: absolute; bottom: 0; left: 0; width: 100%; height: 40px; text-align: center; }
.expanded-btn:before { content: ""; display: block; position: absolute; top: -40px; left: 0; width: 100%; height: 40px; background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.8) 66%, rgba(255, 255, 255, 0.94) 83%, rgba(255, 255, 255, 0.98) 91%, #fff); }
.expanded-btn button { display: block; width: 100%; height: 40px; line-height: 40px; font-size: 16px; color: #666; background: #f5f5f5; }
.expanded-btn .arrow { display: inline-block; position: relative; margin-left: 6px; width: 12px; height: 12px; }
.expanded-btn .arrow:before, .expanded-btn .arrow:after { content: ""; display: block; position: absolute; top: 50%; width: 7px; height: 1px; background: #666; border-radius: 1px; transition: all 0.2s; }
.expanded-btn .arrow:before { left: 0; transform: rotate(45deg); }
.expanded-btn .arrow:after { right: 0; transform: rotate(-45deg); }
.con-expand.opened { padding-bottom: 60px; height: auto; }
.con-expand.opened .expanded-btn:before { content: none; }
.con-expand.opened .expanded-btn .arrow:before { transform: rotate(-45deg); }
.con-expand.opened .expanded-btn .arrow:after { transform: rotate(45deg); }

.time-countdown { font-size: 17px; color: #f34c38; position: absolute; right: 115px; top: 50%; transform: translate(0, -50%); }
.time-countdown:before { content: ""; background: url(../img/img-clock.png) no-repeat center; background-size: cover; width: 20px; height: 20px; position: absolute; left: -25px; top: 50%; transform: translate(0, -45%); }

.link-con .link-item { display: block; position: relative; padding: 5px 0 5px 10px; font-size: 14px; color: #333; line-height: 1.4; letter-spacing: -0.56px; }
.link-con .link-item span { position: relative; z-index: 5; }
.link-con.dot .link-item { padding-left: 15px; }
.link-con.dot .link-item:before { content: "ᆞ"; position: absolute; left: 0; font-weight: 300; color: #333; }
.link-con.faq .link-item { padding-left: 15px; }
.link-con.faq .link-item:before { content: "Q"; position: absolute; left: 0; font-weight: 300; color: #989898; }
.is-online .link-con .link-item:after { content: ""; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #e5f0ff; border-radius: 3px; opacity: 0; transform-origin: 50% 0%; backface-visibility: hidden; transform: translate3d(0px, 105%, 0px) rotateX(-112deg); transform-style: preserve-3d; transition: all 0.3s ease; z-index: -1; }
.is-online .link-con .link-item:hover:after { opacity: 1; transform: rotateX(0deg) translateZ(0px); }

.cc-txt-lists { margin-bottom: 25px; line-height: 1.3; }
.cc-txt-lists dt { margin-bottom: 5px; }
.cc-txt-lists dd, .cc-txt-lists li { margin-bottom: 5px; font-size: 14px; font-weight: 300; color: #666; }

.cc-check-item { cursor: pointer; display: inline-block; position: relative; padding-right: 15px; }
.cc-check-item input { position: absolute; left: 0; opacity: 0; }
.cc-check-item span { cursor: pointer; position: relative; padding-left: 10px; vertical-align: middle; }
.cc-check-item em { cursor: pointer; display: inline-block; position: relative; width: 24px; height: 24px; vertical-align: middle; border: 3px solid #d0d0d0; background-color: #fff; border-radius: 3px; transition: background 0.3s linear; }
.cc-check-item.round em { border-radius: 50%; }
.cc-check-item em:after { content: ""; display: block; position: absolute; top: 9px; left: 3px; width: 7px; height: 10px; border-right: 2px solid #d0d0d0; border-top: 2px solid #d0d0d0; transform: scaleX(-1) rotate(135deg); transform-origin: left top; }
.cc-check-item input:checked + em { border-color: #5189d6; background-color: #fff; }
.cc-check-item input:checked + em:after { border-color: #5189d6; animation: check-effect 0.7s; }
.cc-check-item input[disabled] ~ span { cursor: default; color: #999; }
.cc-check-item input[disabled] + em { cursor: default; opacity: 0.2; border-color: #a2a2a2 !important; }
.cc-check-item input[disabled] + em:after { border-color: #a2a2a2 !important; animation: none; }
.cc-check-item input:checked[disabled] + em { border: 0 none !important; }
.cc-check-item input:checked[disabled] + em:after { border-color: #fff !important; }
.cc-check-item:hover input[disabled] + em { box-shadow: none; }
.is-online .cc-check-item:hover em { border-color: #5189d6; }	/* 20201008_수정 */
@keyframes check-effect {
	0% { width: 0; height: 0; }
	25% { width: 7px; height: 0; }
	50% { width: 7px; height: 10px; }
}
.cc-check-item.full { position: relative; padding: 0; width: 100%; height: 100%; }
.cc-check-item.full em { position: absolute; top: 50%; left: 50%; margin-top: -12px; margin-left: -12px; }
.cc-check-item.small em { top: 1px; width: 16px; height: 16px; border: 1px solid #ccc; border-radius: 0; }
.cc-check-item.small em:after { top: 7px; left: 2px; width: 5px; height: 8px; }
.cc-check-item.small span { padding-left: 6px; font-size: 14px; }
.cc-check-item.small input:checked + em:after { animation: none; }
.is-online .cc-check-item.small:hover em, .is-online .cc-check-item.small input:focus + em { box-shadow: 0 0 0 2px #ffbf47; }
.cc-check-item.round-1 em { width: 22px; height: 22px; }
.cc-check-item.round-1 em { border: 1px solid #666; border-radius: 50%; }
.cc-check-item.round-1 em:after { content: ""; position: absolute; top: 4px; left: 4px; width: 12px; height: 12px; border-radius: 50%; background-color: #6d96ff; transform-origin: center; transform: scale(0); transition: transform 0.2s ease-out; }
.cc-check-item.round-1 input:checked + em:after { animation: none; transform: scale(1); }
.cc-check-item.round-1 span { padding-left: 5px; }

.dd-depth-link .dd-selected { display: block; width: 100%; padding: 0 30px 0 5px; height: 50px; line-height: 50px; font-size: 18px; font-weight: 400; color: #fff; text-align: center; background: #0f3e8e; overflow: hidden; }
.dd-depth-link .dd-selected-txt { display: inline-block; position: relative; margin-left: 45px; padding-right: 30px; height: 100%; overflow: hidden; }
.dd-depth-link .dd-selected-txt:after { content: ""; display: block; position: absolute; top: 50%; right: 0; margin-top: -2px; width: 0; height: 0; width: 0; height: 0; border: 5px solid transparent; border-top-color: #fff; transform: rotate(0deg); transition: all 0.15s; }
.dd-depth-link .dd-options { display: none; position: absolute; top: 49px; left: 0; padding: 6px 0; width: 100%; background: #376dc8; z-index: 150; }
.dd-depth-link .dd-options a { display: block; padding: 6px; font-size: 18px; font-weight: 300; color: #fff; text-align: center; }
.dd-depth-link .dd-options span { position: relative; }
.dd-depth-link .dd-options span:after { content: ""; display: block; position: absolute; bottom: 0; left: auto; right: 0; width: 0; height: 1px; background: #e9e9e9; transition: width 0.3s; }
.dd-depth-link .dd-options li.selected a { cursor: default; }
.dd-depth-link .dd-options li.selected span:after { content: ""; width: 100%; }
.is-online .dd-depth-link .dd-options a:hover span:after { content: ""; right: auto; left: 0; width: 100%; }
.dd-depth-link .dd-selected.opened .dd-selected-txt:after { margin-top: -7px; transform: rotate(180deg); }
.dd-depth-link.fixed { display: none; }

.cc-paging { margin: 40px 0; text-align: center; }
.cc-paging a { display: inline-block; height: 23px; line-height: 21px; font-size: 16px; color: #666; vertical-align: middle; }
.cc-paging a.num { padding: 0 10px; font-weight: 300;}
.cc-paging a.num span { display: inline-block; position: relative; }
.is-online .cc-paging a.num:hover, .cc-paging a.num.on { font-weight: 400; color: #376dc8; text-decoration: underline; }
.cc-paging a.num.on span:after { content: ""; position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; background-color: #376dc8; }
.cc-paging a.arrow { margin: 0 3px; width: 23px; background-repeat: no-repeat; background-position: center; background-size: 100%; }
.cc-paging a.arrow.prev { margin-right: 10px; background-image: url(../img/btn_page_back.png); }
.cc-paging a.arrow.next { margin-left: 5px; background-image: url(../img/btn_page_next.png); }
.cc-paging a.arrow.first { background-image: url(../img/btn-arrow-first.png); }
.cc-paging a.arrow.last { background-image: url(../img/btn-arrow-last.png); }

.cc-help { padding: 10px 10px 10px 30px; font-size: 13px; color: #666; background: url(../img/btn_information.png) no-repeat 8px / 16px; }

.cc-notification-modal { position: fixed; top: 50%; left: 50%; padding: 30px 20px; width: 30%; min-width: 320px; max-width: 360px; font-size: 14px; color: #999; text-align: center; border: solid 1px #ccc; border-radius: 16px; background: #fff; box-shadow: 0px 3px 10px 0 rgba(0, 0, 0, 0.3); z-index: 999; overflow: hidden; transform: translate(-50%, -50%); }
.cc-notification-modal > div { margin: 0 auto; max-width: 280px; }
.cc-notification-modal .title { margin-bottom: 10px; font-size: 18px; color: #000; }
.waiting-access-md .txts .bottom { margin-top: 15px; font-size: 15px; color: #376dc8; letter-spacing: -1px; }
.time-progress-con { margin-bottom: 20px; }
.time-progress-con .progress-txt { margin-bottom: 15px; font-size: 14px; color: #666; }
.time-progress-con .progress-bar { position: relative; height: 11px; background: #e5f0ff; border-radius: 6px; overflow: hidden; }
.time-progress-con .progress-bar span { display: block; position: absolute; top: 0; left: 0; background: #376dc8; width: 100%; height: 100%; border-radius: inherit; }

.enter-con input { margin-bottom: 10px; }
.enter-con input:last-child { margin-bottom: 0; }
.enter-con small { display: block; margin-top: 5px; color: #f34c38; }
.enter-form-con:after { content: ""; display: block; clear: both; }
.enter-form-con .enter-left, .enter-form-con .enter-right { float: left; width: 50%; }
.enter-form-con .enter-left { position: relative; padding-right: 70px; }
.enter-form-con .enter-left:after { content: ""; position: absolute; top: 0; right: 0; width: 1px; height: 100%; background-color: #c7d1de; }
.enter-form-con .enter-right { padding-left: 40px; }
.enter-form-con .enter-form { position: relative; margin-top: 30px; padding-left: 80px; }
.enter-form-con:nth-of-type(1) .enter-form { margin-top: 0 !important; }
.enter-form .label { display: inline-block; position: absolute; top: 0; left: 0; padding: 8px 0; width: 80px; height: 100%; font-size: 16px; font-weight: 500; color: #000; }
.enter-form.top1 .label { top: -4px; }
.enter-form.top2 .label { top: -12px; }
.enter-form input[type="text"] { padding: 0 10px; width: 100%; height: 40px; border-radius: 0; }
.enter-form select { padding-left: 10px; width: 100%; height: 40px; }
.enter-form .cc-check-item { font-size: 14px; color: #333; }

.timetable-con th { font-size: 13px; }
.timetable-con thead th { height: 40px; color: #666; background: #ededed; border: 0; }
.timetable-con tbody th, .timetable-con td { height: 30px; font-size: 13px; color: #666; line-height: 1.3; }
.timetable-con tbody th { padding: 0 8px; vertical-align: top; text-align: right; border: 0; }
.timetable-con td { position: relative; border: 0; border-bottom: 1px solid #e8e8e8; }
.timetable-con tr:nth-of-type(odd) td { border-color: #f1f1f1; }
.timetable-con tr td:nth-of-type(even) { background: #f8f8f8; }
.tt-course-item { position: absolute; top: 0; left: 0; width: 100%; padding: 0 4px; font-size: 12px; text-align: center; z-index: 1; }
.tt-course-item > div { position: relative; top: 50%; transform: translateY(-50%); }
.tt-course-item span { display: block; margin-top: 3px; }
.tt-course-item.time-overlaps { color: #fff !important; border: 2px solid #ff0000 !important; background: rgba(0,0,0,.30) !important; z-index: 3 !important; }

.highlight { position: relative; color: #376dc8; }
.highlight.line:after { content: ""; display: block; position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; background: #376dc8; }
.strong { font-weight: bold; font-weight: 500; }
.indent { padding-left: 15px; text-indent: -15px; }
.fs-13 { font-size: 13px !important; }
.fs-14 { font-size: 14px !important; }
.fs-15 { font-size: 15px !important; }
.fs-16 { font-size: 16px !important; }
.fs-18 { font-size: 18px !important; }
.fs-22 { font-size: 22px !important; }
.fc-black { color: #000 !important; }
.fc-red { color: #f42525 !important; }
.fc-blue { color: #376dc8 !important; }
.fc-orange { color: #f34c38 !important; }
/*.fc-lightblue { color: #a8bde1 !important; }*/
.bg-skyblue { background-color: #5189d6; }
.bg-gray { background-color: #f8f8f8 !important; }
.ta-left { text-align: left !important; }
.ta-center { text-align: center !important; }
.ta-right { text-align: right !important; }
.bl-0 { border-left: 0 !important; }
.br-0 { border-right: 0 !important; }
.w-110 { width: 110px !important; }
.max-w-720 { max-width: 720px !important; }
.pos-r { position: relative !important; }
.in-block { display: inline-block !important; }
.block { display: block !important; }
.p-0 { padding: 0 !important; }
.mt-0 { margin-top: 0 !important; }
.mb-25 { margin-bottom: 25px !important; }
.float-l { float: left; }
.float-r { float: right; }

.search-filter-wrap { display: none; position: fixed; top: 83px; left: 50%; padding: 0 10px; width: 100%; max-width: 960px; transform: translateX(-50%); z-index: 910; }
.search-filter-wrap > div { position: relative; margin: 0 auto; border: 1px solid #0f3e8e; border-radius: 10px; background: #fff; }
.search-filter-wrap .sf-form { position: relative; height: 483px; }
.search-filter-wrap.expand .sf-form { height: 600px; height: calc(100vh - 120px); }
.search-filter-wrap .sf-top { position: relative; padding: 20px 3.5% 10px; height: 70px; font-size: 14px; color: #000; z-index: 30; }
.search-filter-wrap .sf-top:before { content: ""; display: block; position: absolute; bottom: 0; left: 50%; height: 1px; width: 93%; background: #d3d5e4; transform: translateX(-50%); }
.search-filter-wrap .sf-top .title > div { display: inline-block; vertical-align: middle; }
.search-filter-wrap .sf-top .title span { display: inline-block; vertical-align: middle; }
.search-filter-wrap .sf-item-year { margin-left: 15px; }
.search-filter-wrap .sf-item-year > div { display: inline-block; vertical-align: middle; }
.search-filter-wrap .sf-item-year em { display: inline-block; margin-right: 6px; height: 40px; line-height: 40px; color: #376dc8; }
.search-filter-wrap .sf-item-year select { display: none; margin-right: 4px; height: 40px; color: #376dc8; border-radius: 0; }
.search-filter-wrap .sf-item-year input { padding: 0; width: 60px; border: 0; background: #fff !important; }
.search-filter-wrap .sf-item-year > div:first-child select { width: 75px; }
.search-filter-wrap .sf-item-year span { margin-left: -6px; margin-right: 10px; vertical-align: middle; }
.search-filter-wrap.expand .sf-item-year em { display: none; }
.search-filter-wrap.expand .sf-item-year select { display: block; }
.search-filter-wrap.expand .sf-item-year span { margin-left: 0; }
.search-filter-wrap .sf-body { position: absolute; top: 70px; bottom: 46px; left: 0; right: 0; padding: 0 10px; overflow: hidden; z-index: 20; }
.search-filter-wrap .fieldset { position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: auto; overflow: auto; z-index: 20; }
.search-filter-wrap .sf-footer { position: absolute; bottom: 0; width: 100%; height: 46px; border-bottom-left-radius: 9px; border-bottom-right-radius: 9px; overflow: hidden; background: #0f3e8e; z-index: 100; }
.search-filter-wrap .filter-reset-btn { display: inline-block; margin: 0; width: 82px; height: 35px; font-size: 13px; color: #666; line-height: 1; border: 1px solid #e5e5e5; border-radius: 18px; background: #fff; }
.search-filter-wrap .filter-reset-btn:before { content: ""; display: inline-block; margin-top: -2px; margin-right: 3px; width: 17px; height: 16px; background: url(../img/img_reset.png) no-repeat center / 100%; vertical-align: middle; transform: rotate(0deg); transition: transform 0.3s; }
.is-online .search-filter-wrap .filter-reset-btn:hover:before { transform: rotate(180deg); }
.search-filter-wrap .close-filter-btn { display: inline-block; margin-left: 5px; width: 28px; height: 29px; background: url(../img/btn_popup_closed.png) no-repeat center / 23px 24px; }
.search-filter-wrap .sf-item-con { position: relative; padding-top: 25px; }
.search-filter-wrap .sf-item-con > div { position: relative; }
.search-filter-wrap .sf-item-con > div:after { content: ""; display: block; position: absolute; top: 0; left: 50%; width: 1px; height: 100%; height: 85%; background: #e8e8e8; }
.search-filter-wrap.expand .sf-item-con > div:after { height: 90%; }
.search-filter-wrap .sf-item-con > div > div:after { content: ""; display: block; clear: both; }
.search-filter-wrap .sf-item { float: left; position: relative; margin-bottom: 5px; padding: 0 0 0 11%; width: 50%; }
.search-filter-wrap .sf-item.mv-t2 { top: -45px; }
.search-filter-wrap .sf-item.pd-1 { margin-top: 20px; padding-left: 2.5%; }
.search-filter-wrap .sf-item.pd-1 .cc-check-item span { font-size: 14px; color: #000; }
.search-filter-wrap .sf-item > label { position: absolute; top: 25px; left: 0; padding: 6px 0 0 7%; width: 20%; height: 40px; font-size: 14px; color: #000; }
.search-filter-wrap .sf-item-con > div:nth-of-type(1) .sf-item > label { top: 5px; }
.search-filter-wrap .sf-item > label.diff { padding-top: 0 !important; }
.search-filter-wrap .sf-item select, .search-filter-wrap .sf-item input[type="text"], .search-filter-wrap .sf-item input[type="tel"] { margin: 5px; height: 34px; font-size: 12px; color: #666; border-radius: 0; }
.search-filter-wrap .sf-item select { margin-right: 8px; width: 43.5%; }
.search-filter-wrap .sf-item input[type="text"] { padding: 0 10px; width: 89.5%; }
.search-filter-wrap .sf-item select:nth-of-type(1), .search-filter-wrap .sf-item input[type="text"]:nth-of-type(1), .search-filter-wrap .sf-item input[type="tel"]:nth-of-type(1) { margin-right: 0; }
.search-filter-wrap .sf-item .cc-check-item { margin-left: 5px; padding-right: 0; min-width: 60px; color: #666; }
.search-filter-wrap .sf-item .cc-txt { padding: 6px; font-size: 12px; font-weight: 300; letter-spacing: -0.6px; }
.search-filter-wrap .sf-item.space input[type="text"], .search-filter-wrap .sf-item.space input[type="tel"] { margin-right: 5px; width: 40%; }
.search-filter-wrap .sf-item.space span { display: inline-block; font-size: 14px; }
.search-filter-wrap .sf-item .campus select { width: 43.5%; }
.search-filter-wrap .sf-item .campus input[type="text"] { width: 43.5%; }
.search-filter-wrap .sf-item .campus-map-btn { display: block; padding: 0 10px; margin-left: 5px; width: 43.5%; height: 36px; line-height: 36px; font-size: 12px; color: #5189d6; text-align: center; border: 1px solid #5189d6; border-radius: 0; background: #fff; }
.search-filter-wrap .sf-class-period select { width: 36.3%; }
.search-filter-wrap .period-btn { display: inline-block; position: relative; width: 36px; height: 36px; border: 1px solid #5189d6; }
.search-filter-wrap .period-btn span { display: block; position: relative; margin: 0 auto; width: 14px; height: 14px; }
.search-filter-wrap .period-btn span:before, .search-filter-wrap .period-btn span:after { content: ""; position: absolute; top: 50%; left: 50%; background: #5189d6; }
.search-filter-wrap .period-btn span:before { width: 100%; height: 2px; transform: translateX(-50%); }
.search-filter-wrap .period-btn span:after { width: 2px; height: 100%; margin-top: 1px; margin-left: -1px; transform: translateY(-50%); }
.search-filter-wrap .sf-class-period-added ul { overflow: hidden; }
.search-filter-wrap .sf-class-period-added li { float: left; }
.search-filter-wrap .del-period-btn { display: inline-block; position: relative; margin-right: 10px; padding: 5px; font-size: 12px; }
.search-filter-wrap .del-period-btn:hover { text-decoration: underline; }
.search-filter-wrap .del-period-btn:after { content: ""; display: inline-block; margin-left: 5px; width: 19px; height: 19px; background: url(../img/btn-search-delete.png) no-repeat center / 100%; vertical-align: middle; border-radius: 10px; }
.search-filter-wrap .view-last-semester-btn { display: block; position: relative; top: 0; margin: 0 auto 20px; width: 320px; height: 34px; line-height: 30px; font-size: 14px; color: #666; text-align: center; border: 1px solid #bebebe; border-radius: 6px; background: #fff; }
.search-filter-wrap .view-last-semester-btn span { position: relative; padding: 0 14px; }
.search-filter-wrap .view-last-semester-btn span:after { content: ""; position: absolute; top: 50%; right: 0; width: 0; height: 0; border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 6px solid #666; transform: translate(0, -35%) rotate(0deg); }
.search-filter-wrap.expand .view-last-semester-btn span:after { transform: translate(0, -50%) rotate(180deg); }
.search-filter-wrap .filter-submit-btn { display: block; width: 100%; height: 46px; line-height: 46px; font-size: 16px; color: #fff; text-align: center; }
.search-filter-wrap .filter-submit-btn:before { content: ""; display: inline-block; margin-top: -2px; margin-right: 6px; width: 18px; height: 18px; vertical-align: middle; background: url(../img/btn_search_white.png) no-repeat center / 100%; }
.search-filter-wrap .top-btns { display: block; position: absolute; top: 20px; right: 40px; }
.search-filter-wrap .sf-last-semester { display: none; top: -35px; padding-top: 0; z-index: 5; }
.search-filter-wrap .sf-last-semester > div:after { height: 95% !important; }

.bbs-search-con { padding-bottom: 10px; text-align: right; }
.bbs-search-con > div { display: inline-block; position: relative; padding: 0 90px 0 105px; font-size: 14px; color: #666; height: 40px; }
.bbs-search-con .left { position: absolute; top: 0; left: 0; width: 100px; height: 100%; }
.bbs-search-con .left select { padding-left: 10px; width: 100%; height: 40px; }
.bbs-search-con .fieldset { position: relative; width: 250px; text-align: left; }
.bbs-search-con .enter { padding-right: 60px; }
.bbs-search-con .enter input { width: 200px; height: 40px; border-color: #376dc8; border-radius: 0; }
.bbs-search-con .submit-btn { display: block; position: absolute; top: 0; right: 0; width: 60px; height: 40px; color: #fff; border: 1px solid #376dc8; background: #376dc8; }
.bbs-search-con .right { position: absolute; top: 0; right: 0; width: 80px; height: 40px; }
.bbs-search-con .full-list-btn { display: block; width: 100%; height: 100%; text-align: center; border: 1px solid #ccc; background: #f8f8f8; }
.bbs-search-con.diff { padding-top: 28px; }
.bbs-search-con.diff > div { padding-left: 210px; }
.bbs-search-con.diff .left { width: 210px; overflow: hidden; }
.bbs-search-con.diff .left select { float: left; margin-left: 5px; width: 100px; }
.bbs-search-con.diff .left select:first-child { margin-left: 0; }

.bbs-wrap.view { border-top: 1px solid #939393; }
.bbs-list-con tr.fixed-post td:first-child { color: #376dc8; }
.bbs-list-con th { font-weight: 400; }
.bbs-list-con tbody th, .bbs-list-con td { font-size: 16px; color: #000; letter-spacing: -1.5px; }
.bbs-list-con td a { display: inline-block; padding: 15px 0; text-align: left; }
.bbs-list-con tr.reply a { padding-left: 25px; }
.bbs-wrap .reply span { position: relative; }
.bbs-wrap .reply span:before { content: ""; position: absolute; top: 5px; left: -15px; width: 8px; height: 8px; border-left: 1px solid #222523; border-bottom: 1px solid #222523; }
/*.bbs-wrap .reply span:after { content: "Re:"; position: absolute; top: 0; left: -28px; font-size: 16px; letter-spacing: 1px; }*/
.is-online .bbs-list-con td span { padding-bottom: 1px; background-repeat: no-repeat; background-position: bottom left; background-size: 0% 1px; background-image: linear-gradient(#666, #666); transition: background 0.2s ease-in-out; }
.is-online .bbs-list-con td a:hover span { background-size: 100% 1px; }
.bbs-wrap .view-title { padding: 24px 40px; font-size: 14px; border-bottom: 1px solid #e7e7e7; }
.bbs-wrap .view-title p { margin-bottom: 6px; font-size: 18px; }
.bbs-wrap .view-title > span { display: inline-block; position: relative; color: #999; }
.bbs-wrap .view-title > span:after { content: ""; display: inline-block; position: relative; top: -1px; margin: 0 10px; width: 1px; height: 17px; background: #e4e4e4; vertical-align: middle; }
.bbs-wrap .view-title > span:last-child:after { content: none; }
.bbs-wrap .view-title .views:before { content: ""; display: inline-block; margin-right: 5px; width: 20px; height: 10px; background: url(../img/img-view-number.png) no-repeat center / 100%; }
.bbs-wrap.view .view-txt { padding: 40px; font-size: 15px; color: #666; font-weight: 300; line-height: 1.7; min-height: 250px; word-break: keep-all; text-overflow: ellipsis; word-wrap: break-word; }
.bbs-wrap.view .original { margin-top: 60px; color: #999; }
.bbs-wrap.view .original > span { display: block; margin-bottom: 20px; }
.bbs-wrap.view .view-title .reply { padding-left: 28px; color: #000; }
.bbs-wrap .enter-items { border-top: 1px solid #939393; }
.bbs-wrap .enter-items > div { position: relative; padding-left: 135px; min-height: 58px; font-size: 14px; color: #000; border-bottom: 1px solid #e7e7e7; }
.bbs-wrap .enter-items .left { position: absolute; top: 0; left: 0; width: 135px; height: 100%; line-height: 58px; background: #f8f8f8; }
.bbs-wrap .enter-items .right { padding: 10px 30px; color: #000; }
.bbs-wrap .enter-items label { display: block; padding: 0 10px 0 20px; width: 100%; height: 100%; }
.bbs-wrap .enter-items input { padding: 0 10px; width: 100%; height: 40px; color: #000; border-radius: 0; background: #fff !important; }
.bbs-wrap .enter-items input[readonly] { border: 0; }
.bbs-wrap .enter-items input[readonly]:focus { outline: 0; }
.bbs-wrap .enter-items textarea { width: 100%; height: 270px; border-radius: 0; }
.bbs-wrap .cc-btn-con ~ .submit-btn { position: absolute; top: 50%; left: 50%; width: 180px; margin: 15px 0 0; transform: translate(-50%, -50%); }

.total-list-count { padding: 16px; font-size: 14px; }
.total-list-count .num { color: #f34c38; }

.overlay-cover { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,.7); z-index: 900; }
.overlay-time-cover { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,.7); z-index: 900; }
.opened-overlay .overlay-cover { display: block; }
.opened-overlay .overlay-time-cover { display: block; }

.cc-dialog-wrap { position: fixed; top: 50%; left: 50%; width: 360px; text-align: center; border-radius: 8px; overflow: hidden; z-index: 1000002; visibility: hidden; transform: translate(-50%, -60%); }
.cc-dialog-wrap > div { visibility: hidden; }
.cc-dialog-wrap.opened, .cc-dialog-wrap.opened > div { visibility: visible; }
.is-online .cc-dialog-wrap > div { transform: translateY(15%) scaleY(1.1); }
.is-online .cc-dialog-wrap.opened > div { transform: translateY(0%) scaleY(1); transition: transform 0.3s cubic-bezier(.42,.97,.52,1.49); }
.cc-dialog-wrap .top { padding: 30px 10px 35px; min-height: 110px; font-size: 16px; color: #666; background: #fff; }
.cc-dialog-wrap .title { margin-bottom: 10px; font-size: 20px; color: #000; line-height: 1.3; }
.cc-dialog-wrap .title .time { display: block; margin-top: 5px; }
.cc-dialog-wrap .top > div { margin-top: 10px; }
.cc-dialog-wrap .top > div:nth-of-type(1) { margin-top: 0; }
.cc-dialog-wrap .time-countdown { position: static; transform: none; }
.cc-dialog-wrap .time-countdown:before { display: inline-block; position: static; margin-right: 5px; vertical-align: middle; transform: none; }
.md-btns .cc-btn { margin: 0; font-size: 16px; border-radius: 0; }
[data-dialog-name^="mark-"] .top:before { content: ""; display: block; margin: 0 auto 10px; width: 39px; height: 39px; background-repeat: no-repeat; background-position: center; background-size: 100%; }
[data-dialog-name="mark-e-dialog"] .top:before { background-image: url(../img/btn-exclamation.png); }
[data-dialog-name="mark-q-dialog"] .top:before { background-image: url(../img/btn-question.png); }
[data-dialog-name="mark-x-dialog"] .top:before { background-image: url(../img/btn-x.png); }

.cc-modal-wrap { display: none; position: fixed; top: 0; left: 0; padding: 0 20px; width: 100%; height: 100%; background: rgba(0,0,0,0.7); z-index: 900; }
.cc-modal-wrap.opened { display: block; }
.cc-modal-wrap .cc-md-con { position: relative; top: 10%; margin: 0 auto; padding: 0 50px; max-width: 1200px; height: 80%; background: #fff; z-index: 950; -webkit-overflow-scrolling: touch; }
.cc-modal-wrap .close-md-btn { display: block; position: absolute; top: 25px; right: 50px; width: 40px; height: 40px; background: url(../img/btn_popup_closed.png) no-repeat center / 29px; z-index: 50; }
.cc-modal-wrap .md-header { position: relative; height: 80px; line-height: 100px; font-size: 20px; font-weight: 400; color: #010101; border-bottom: 2px solid #e7e7e7; background: #fff; overflow: hidden; z-index: 30; }
.cc-modal-wrap .md-container { position: absolute; top: 80px; bottom: 0; left: 0; right: 0; background: #fff; overflow: hidden; z-index: 20; }
.cc-modal-wrap .md-section { position: absolute; top: 0; bottom: 0; left: 0; right: 0; padding: 25px 50px 50px; width: auto; font-size: 14px; color: #666; overflow: auto; z-index: 20; }
.cc-modal-wrap.full { padding: 0; }
.cc-modal-wrap.full .cc-md-con { top: 5%; height: 100%; }
.cc-modal-wrap.full .close-md-btn { top: 20px; right: 20px; }
.cc-modal-wrap.full .md-header { padding-top: 60px; height: 130px; line-height: 1.5; font-size: 24px; text-align: center; border-bottom: 0; overflow: visible; }
.cc-modal-wrap.full .md-container { top: 130px; bottom: 5%; }
.cc-modal-wrap.full .md-section { padding: 0; }
.cc-modal-wrap.full .md-section > div { margin: 0 auto; max-width: 1000px; }
.cc-modal-wrap.middle { padding: 0; }
.cc-modal-wrap.middle .cc-md-con { padding: 0 40px; width: 100%; max-width: 655px; }
.cc-modal-wrap.middle .md-header { border-bottom: 0; }
.cc-modal-wrap.middle .md-section { padding: 0 40px 40px; }
.cc-modal-wrap.middle .md-section > div { padding-top: 22px; border-top: 2px solid #e7e7e7; }
.cc-modal-wrap.middle .md-section th { font-weight: 400; }

.cc-popup-wrap { display: none; position: fixed; top: 50%; left: 50%; width: 100%; max-width: 500px; min-width: 320px; background: #fff; z-index: 900; transform: translate(-50%, -50%); }
.opened-overlay .cc-popup-wrap, .cc-popup-wrap.opened { display: block; }
.cc-popup-wrap .cc-popup-con { position: relative; min-height: 510px; -webkit-overflow-scrolling: touch; }
.cc-popup-wrap .pop-header { position: relative; padding: 0 40px; font-size: 20px; color: #010101; overflow: hidden; z-index: 30; }
.cc-popup-wrap .pop-header > div { padding-bottom: 20px; height: 80px; line-height: 95px; border-bottom: 2px solid #e7e7e7; }
.cc-popup-wrap .pop-container { position: absolute; top: 80px; bottom: 0; left: 0; right: 0; overflow: hidden; z-index: 20; }
.cc-popup-wrap .pop-section { position: absolute; top: 0; bottom: 0; left: 0; right: 0; padding: 20px 40px 40px; width: auto; font-size: 14px; color: #666; overflow: auto; z-index: 20; }
.cc-popup-wrap .close-pop-btn { display: block; position: absolute; top: 30px; right: 40px; width: 29px; height: 29px; background: url(../img/btn_popup_closed.png) no-repeat center; background-size: 100%; z-index: 50; }

.attach-file-con { font-size: 14px; text-align: left; }
.attach-file-con .find-attach-btn { display: inline-block; margin-right: 12px; width: 80px; height: 40px; color: #000; font-weight: 400; border: 1px solid #ccc; border-radius: 0; background: #f8f8f8; }
.attach-file-con .attach-file-list { display: inline-block; font-weight: 500; color: #376dc8; vertical-align: top; word-break: break-all; }
.attach-file-con .attach-file-list li { margin-top: 8px; }
.attach-file-con .attach-file-list span { padding-bottom: 2px; background-repeat: no-repeat; background-position: bottom left; background-size: 100% 1px; background-image: linear-gradient(#376dc8, #376dc8); }

.system-msg-wrap { padding: 0 7%; }
.system-msg-wrap > div { margin: 15% auto 0; max-width: 600px; min-width: 320px; font-size: 16px; color: #999; text-align: center; }
.system-msg-wrap .smsg-con { letter-spacing: -0.5px; }
.system-msg-wrap img { margin: 0 auto 42px; width: 100%; max-width: 351px; }
.system-msg-wrap h1 { margin-bottom: 1%; font-size: 28px; color: #0f3e8e; font-weight: 500; }
.system-msg-wrap .smsg-con p { font-weight: 300; }
.system-msg-wrap .smsg-con .btns { margin-top: 6%; }
.system-msg-wrap .smsg-con .btns a { display: inline-block; margin: 0 5px; width: 126px; height: 42px; line-height: 40px; font-size: 14px; color: #fff; border: 1px solid #666; background: #666; }
.system-msg-wrap .smsg-con .btns a:first-child { color: #666; border-color: #ccc; background: #fff; }
.system-msg-wrap .smsg-con .box { margin: 20px auto 0; padding: 25px; max-width: 462px; font-size: 14px; font-weight: 300; color: #333; text-align: center; border: 1px solid #ccc; background: #f8f8f8; }
.system-msg-wrap .smsg-con .box span { padding-right: 15px; font-weight: 500; }
.system-msg-wrap .smsg-foot { margin-top: 33px; padding: 20px 10px; font-size: 12px; font-weight: 300; border-top: 1px solid #e7e7e7; }

@media all and (max-width: 1350px) {
	.scroll-top-btn { bottom: 65px; right: 20px; margin-right: 0; }
}
@media all and (max-width: 1200px) {
	.cc-modal-wrap.full .cc-md-con { top: 0; }
	.cc-modal-wrap.full .md-container { bottom: 0; }
	.cc-modal-wrap.full .md-section { padding-left: 0; padding-right: 0; }
}
@media all and (max-width: 1100px) {
	.search-filter-wrap .sf-item { padding-left: 3.5%; padding-right: 35px; }
	.search-filter-wrap .sf-item > label { position: static; padding: 0 5px 5px !important; width: auto; }
	.search-filter-wrap .sf-item .cc-check-item { margin-left: 5px !important; }
}
@media all and (max-width: 999px) {
	#wrapper { padding-top: 64px; }
	.only-on-header { display: none; }
	.only-mo-header { display: block; border-bottom: 1px solid #e2e2e2; }
	.head-inner .logo { left: 10px; width: 200px; }
	.only-mo-header .head-inner .logo a:after { width: 100%; height: 100%; }
	.logo-title { font-size: 18px; color: #376dc8; position: absolute; left: 172px; top: 50%; margin-top: -8px; transform: translate(0, -50%); }
	.head-inner { width: 100%; min-width: 320px; height: 64px; padding: 0 100px 0 15px; position: relative; }
	.only-mo-header .search-btn, .open-sm-btn, .close-sm-btn { width: 45px; height: 45px; position: absolute; top: 50%; transform: translate(0, -50%); }
	.only-mo-header .search-btn { right: 55px; background: url(../img/img_search_blue_m.png) no-repeat center / 24px 26px; }
	.open-sm-btn, .close-sm-btn { right: 10px; z-index: 300; }
	.open-sm-btn span, .close-sm-btn span { display: block; width: 25px; height: 3px; position: absolute; top: 50%; left: 50%; background-color: #0f3e8e; color: transparent; transform: translate(-50%,-50%); }
	.open-sm-btn span:before, .open-sm-btn span:after, .close-sm-btn span:before, .close-sm-btn span:after { content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 3px; background-color: #0f3e8e; transition: all 0.5s; }
	.close-sm-btn { top: 8px; transform: translate(0, 0); }
	.close-sm-btn span { background-color: rgba(0,0,0,0); }
	.close-sm-btn span:before { top: 0; transform: rotate(45deg); background-color: #0f3e8e; }
	.close-sm-btn span:after { top: 0; transform: rotate(-45deg); background-color: #0f3e8e; }
	.open-sm-btn span:before { top: -10px; }
	.open-sm-btn span:after { top: 10px; }
	.open-sm-btn em { min-width: 21px; position: absolute; top: 0; right: 0; background-color: #f34c38; border-radius: 21px; font-size: 12px; color: #fff; line-height: 21px; text-align: center; padding: 0 3px; }
	.sm-wrap { display: none; width: 300px; height: 100%; position: fixed; right: 0; top: 0; background-color: #f4f4f4; z-index: 200; overflow-y: auto; -webkit-overflow-scrolling: touch; }
	.sm-head { background-color: #fff; border-bottom: 1px solid #000; padding: 20px 25px 10px; position: relative; }
	.sm-head p { font-size: 22px; color: #000; }
	.sm-head .name { font-size: 22px; color: #666666; font-weight: 300; }
	.sm-head .name em { color: #000; font-weight: 500; }
	.sm-head .num { font-size: 13px; color: #666; display: inline-block; margin-right: 10px; }
	.sm-head .info { display: inline-block; padding: 3px 12px; border: 1px solid #999; border-radius: 10px; font-size: 12px; color: #666; line-height: 1; }
	.sm-body-top { padding: 0 10px; background-color: #f4f4f4; }
	.sm-btn-wrap { padding: 10px 0; margin: 0 -5px; border-bottom: 1px solid #999; }
	.sm-btn-wrap:after { content: ""; display: block; clear: both; }
	.sm-btn-wrap .sm-btn { display: block; width: 50%; line-height: 40px; padding: 0 5px; float: left; }
	.sm-btn-wrap .sm-btn.logout { display: none; }
	.sm-btn-wrap.login .sm-btn { width: 50%; }
	.sm-btn-wrap.login .sm-btn.logout { display: block; }
	.sm-btn-wrap .sm-btn a { display: block; width: 100%; height: 100%; font-size: 15px; color: #fff; border: 1px solid #a6a6a6; background-color: #a6a6a6; text-align: center; }
	.sm-btn-wrap .sm-btn.logout a { color: #0f3e8e; border-color: #0f3e8e; background: #e4e4e4; }
	.sm-link-wrap { padding: 8px 0; }
	.sm-link-wrap ul:after { content: ""; display: block; clear: both; }
	.sm-link-wrap ul li { padding: 0 15px; }
	.sm-link-wrap ul .link-item { display: block; font-size: 15px; position: relative; padding: 15px 10px; }
	.sm-link-wrap ul .link-item:before { content: ""; width: 5px; height: 5px; border-radius: 5px; background-color: #000; position: absolute; left: 0; top: 50%; transform: translate(0, -50%); }
	.sm-link-wrap ul li.on .link-item { font-weight: 500; color: #376dc8; }
	.sm-link-wrap ul li.on .link-item:before { background-color: #376dc8; }
	.sm-link-wrap .link-item.guide { display: block; padding: 15px 0 15px 32px; position: relative; font-size: 15px; }
	.sm-link-wrap .link-item.guide em.q-mark { position: absolute; left: 8px; top: 50%; transform: translate(0, -50%); }
	.sm-link-wrap .link-item.guide em.q-mark img { width: 19px; height: 19px; }
	.sm-menu-wrap .sm-toggle-wrap > li { width: 100%; height: 100%; border-bottom: 1px solid #f1f1f1; transition: all 0.5s; background-color: #fff; }
	.sm-menu-wrap .sm-toggle-wrap > li.on .sm-toggle-btn { color: #376dc8; }
	.sm-menu-wrap .sm-toggle-btn { display: block; width: 100%; position: relative; padding: 15px 25px; font-size: 20px; font-weight: 500; text-align: left; }
	.sm-menu-wrap .sm-toggle-btn span { padding-right: 15px; }
	.sm-menu-wrap .cart-btn { display: inline-block; line-height: 26px; padding: 0 7px 0 30px; background-color: #f34c38; font-size: 15px; color: #fff; border-radius: 13px; position: relative; transform: translate(0, -8%); }
	.sm-menu-wrap .cart-btn:after { content: ""; position: absolute; top: 50%; left: 7px; transform: translate(0, -50%); width: 16px; height: 13px; background: url(../img/img_shopping_basket.png) center no-repeat; background-size: cover; }
	.sm-menu-wrap .sm-toggle-btn:before { content: ""; width: 14px; height: 2px; position: absolute; right: 20px; top: 50%; transform: translate(0, -50%); background-color: #000; }
	.sm-menu-wrap .sm-toggle-btn:after { content: ""; width: 2px; height: 14px; position: absolute; right: 26px; top: 50%; transform: translate(0, -50%); background-color: #000; transition: all 0.3s; }
	.sm-menu-wrap .sm-toggle-btn.on:after { transform: translate(0, -50%) rotate(-90deg); transition: all 0.3s; }
	.sm-menu-wrap .sub-menu-wrap { display: none; padding: 12px 0; border-top: 1px solid #f1f1f1; }
	.sm-menu-wrap .sub-menu { display: block; padding: 20px 40px; font-size: 17px; font-weight: 500; }
	.sm-menu-wrap .sub-menu-wrap li.on .sub-menu { color: #376dc8; }
	.sm-wrap .foot-extend { display: block; float: none; padding: 20px 20px; text-align: left; background-color: #f4f4f4; border-top: 1px solid #f1f1f1; margin-top: -2px; }
	.sm-wrap .time-countdown { right: 10px; font-size: 17px; }
	.sm-wrap .postscript { font-size: 13px; color: #999; }
	.sm-wrap .foot-extend .login-extend-button { position: static; display: block;	width: 180px; line-height: 50px; margin: 15px auto 0; background-color: #a6a6a6; border-radius: 0; transform: none; font-size: 15px; }
	body.opend-sm { overflow: hidden; }
	body.opend-sm .overlay-cover { display: block; }
	body.opend-sm #wrapper { padding-top: 0; }
	body.opend-sm #header { z-index: 910; }
	body.opend-sm .head-inner { display: none; }
	body.opend-sm .sm-wrap { display: block; }
	body.opend-sm .open-sm-btn { display: none; }
	.foot-inner { padding: 20px 10px 100px; text-align: center; }
	.foot-left { float: none; }
	.foot-link { margin: 0; height: auto; }
	.foot-link a { display: inline-block; float: none; }
	#footer .foot-extend { float: none; display: none !important; }
	.add-fixed .fixed-title { display: block !important; height: 58px; line-height: 58px; font-size: 18px; font-weight: 400; color: #fff; text-align: center; background: #0f3e8e; }
	.add-fixed .container { padding-top: 0; padding-left: 0; padding-right: 0; 	}
	.add-fixed .content > h2 { display: none; }
	.dd-depth-link.fixed { display: block; }
	.cc-txt.round { margin-bottom: 15px; padding: 15px; text-align: center; border-radius: 0; }
	.cc-txt.round .txt-l { display: block; font-size: 20px; }
	.cc-txt.round .txt-r { display: block; margin-top: 0; font-size: 13px; }
	body.opened-search { overflow: hidden; }
	body.opened-search .search-filter-wrap { display: block !important; }
	.search-filter-wrap { top: 0; left: 0; padding: 70px 0 0; height: 100%; min-width: 320px; background: #fff; overflow: auto; transform: none; }
	.search-filter-wrap > div { border: 0; }
	.search-filter-wrap .sf-header { position: fixed; top: 0; left: 0; width: 100%; height: 56px; border-bottom: 1px solid #323b87; background: #fff; z-index: 100; }
	.search-filter-wrap .sf-form { padding-bottom: 100px; height: 100% !important; }
	.search-filter-wrap .sf-top { padding: 0 0 50px 15px; height: auto; color: #333; border-bottom: 1px solid #d3d5e4; }
	.search-filter-wrap .sf-top:before { content: none; }
	.search-filter-wrap .sf-top .title > span { position: absolute; bottom: 15px; left: 15px; }
	.search-filter-wrap .sf-body { position: static; overflow: auto; }
	.search-filter-wrap .fieldset { position: static; }
	.search-filter-wrap .sf-footer { position: fixed; }
	.search-filter-wrap .sf-item-year { margin-left: 0; letter-spacing: -1.5px; }
	.search-filter-wrap .sf-item-year select { padding-left: 5px; }
	.search-filter-wrap .sf-item-year > div:first-child select { width: 65px; }
	.is-mobile .search-filter-wrap .sf-item-year select { width: 80px; }
	.is-mobile .search-filter-wrap .sf-item-year > div:first-child select { width: 55px; }
	.search-filter-wrap .sf-item-con { padding-top: 20px; }
	.search-filter-wrap .sf-item-con > div:after { content: none; }
	.search-filter-wrap .sf-last-semester { top: 0; padding-top: 0; }
	.search-filter-wrap .sf-item { float: none; top: 0 !important; padding: 0; width: 100%; }
	.search-filter-wrap .sf-item.pd-1 { margin-top: 0; padding-left: 0; }
	.search-filter-wrap .sf-item.pd-1 label { margin-left: 5px !important; }
	.search-filter-wrap .view-last-semester-btn { top: 0; margin-top: 30px; margin-bottom: 20px; width: 98%; height: 40px; line-height: 40px; font-size: 15px; border-radius: 0; }
	.search-filter-wrap .top-btns { top: auto; bottom: 10px; right: 10px; }
	.search-filter-wrap .sf-footer { border-radius: 0; }
	.search-filter-wrap .close-filter-btn { display: none; }
	.search-filter-wrap .sf-dt { display: block !important; padding: 10px 14px; font-size: 15px; }
	.search-filter-wrap .sf-form { display: none; }
	.search-filter-wrap .sf-header { display: block !important; border-bottom: 1px solid #323b87; }
	.search-filter-wrap .sf-header .search-con { padding: 0 110px 0 130px; font-size: 14px; height: 56px; }
	.search-filter-wrap .sf-header .left { position: absolute; top: 0; left: 0; width: 130px; height: 100%; overflow: hidden; }
	.search-filter-wrap .sf-header .left:after { content: ""; display: block; position: absolute; top: 10px; right: 1px; width: 1px; height: 36px; background: #d3d5e4; }
	.search-filter-wrap .sf-header .sf-back-btn { display: inline-block; width: 40px; height: 100%; background: url(../img/btn-back-black.png) no-repeat center / 9px 17px; }
	.search-filter-wrap .sf-header .left select { display: inline-block; padding-left: 0; width: 80px; height: 100%; color: #376dc8; border: 0; }
	.search-filter-wrap .sf-header .search-input { padding: 0 5px 0 12px; width: 100%; height: 55px; border: 0; border-radius: 0; }
	.search-filter-wrap .sf-header .search-input::-webkit-input-placeholder{color:#a8bde1 !important;}
	.search-filter-wrap .sf-header .search-input:-moz-placeholder{color:#a8bde1 !important; opacity:1 !important;}
	.search-filter-wrap .sf-header .search-input::-moz-placeholder{color:#a8bde1 !important; opacity:1 !important;}
	.search-filter-wrap .sf-header .search-inputnput:-ms-input-placeholder{color:#a8bde1 !important;}
	.search-filter-wrap .sf-header .right { position: absolute; top: 0; right: 0; width: 120px; height: 100%; text-align: center; }
	.search-filter-wrap .sf-header .cs-btn { display: inline-block; position: relative; top: 50%; margin-top: -21px; width: 40px; height: 40px; background-repeat: no-repeat; background-position: center; border-radius: 5px; }
	.search-filter-wrap .sf-header .search-btn { background-color: #0f3e8e; background-image: url(../img/btn_search_white.png); background-size: 19px 18px; }
	.search-filter-wrap .sf-header .search-filter-btn { background-color: #e6e7f4; background-image: url(../img/btn_search_list.png); background-size: 24px 23px; }
	.search-filter-wrap.on .sf-dt { display: none !important; }
	.search-filter-wrap.on .sf-form { display: block !important; }
	.search-filter-wrap.on .search-filter-btn { background-color: #0f3e8e; background-image: url(../img/btn-list-white.png); }
	.is-mobile .sf-header .search-con { padding-right: 95px; }
	.is-mobile .sf-header .right { right: 10px; width: auto; }
	.cc-btn-con { padding-left: 10px; padding-right: 10px; }
	.cc-btn-con .left-btn { left: 10px; }
	.cc-btn-wrap .abs-submit-btn { position: static; width: 100%; margin: 15px 0 0; transform: none; }
	.cc-btn-wrap .cc-btn-con { padding-left: 0; padding-right: 0; }
	.bbs-search-con { padding: 14px 13px; }
	.bbs-search-con > div { display: block; }
	.bbs-search-con .fieldset { width: 100%; }
	.bbs-search-con .enter input { width: 100%; }
	.bbs-list-con .hide { display: none; }
	.bbs-wrap .enter-items { border-top: 0; }
	.cc-cb-wrap { padding: 0 20px; }
	.title-line { border-width: 1px; }
	.grid-con.tabs.inline { position: relative; padding: 0 0 15px; border-bottom: 0; }
	.grid-con.tabs.inline:before { content: ""; position: absolute; bottom: 0; left: 0; width: 100%; height: 15px; background: #f0f0f0; }
	.grid-con.tabs.inline > .grid-item { margin: -1px 0 0; width: 50%; height: 45px; line-height: 45px; border-bottom: 0; border-right: 0; }
	.grid-con.tabs.inline > .grid-item:nth-of-type(2n+1) { border-left: 0; }
	.grid-con.tabs.inline > .grid-item span { display: inline-block; position: relative; }
	.grid-con.tabs.inline > .grid-item.on { border-color: #ccc; background: transparent; }
	.grid-con.tabs.inline > .grid-item.on span { font-weight: 500; color: #376dc8; }
	.grid-con.tabs.inline > .grid-item.on span:after { content: ""; display: block; position: absolute; bottom: 8px; left: 0; width: 100%; height: 1px; background: #376dc8; }
}
@media all and (max-width: 770px) {
	.container { padding: 30px 15px 50px; }
	h2 { margin-bottom: 15px; font-size: 24px; }
	h3 { margin-bottom: 15px; font-size: 18px; }
	.cc-con-box { padding: 20px; }
	.cc-submit-btn .cc-btn { max-width: 100%; }
	.cc-txt-lists { font-size: 14px; }
	.tt-course-item { font-size: 11px; }
	.cc-modal-wrap.full .cc-md-con { padding-top: 0; }
	.cc-modal-wrap.full .md-header { padding-top: 30px; height: 80px; font-size: 18px; line-height: 1.2; }
	.cc-modal-wrap.full .md-container { top: 80px; }
	.cc-modal-wrap.full .close-md-btn { top: 5px; right: 5px; background-size: 19px; }
	.bbs-list-con tbody th, .bbs-list-con td, .bbs-list-con tr.reply span:after { font-size: 14px; }
	.bbs-wrap .reply span:before { top: 3px; }
	.bbs-wrap .view-title { padding: 20px 13px; font-size: 13px; border-bottom: 1px solid #939393; }
	.bbs-wrap .view-title p { margin-bottom: 2px; font-size: 16px; }
	.bbs-wrap.view .view-txt { padding: 20px 10px; }
	.bbs-wrap.view .view-txt { font-size: 14px; }
	.bbs-wrap .enter-items > div { padding-left: 70px; min-height: 50px; }
	.bbs-wrap .enter-items .left { width: 70px; background: #fff; }
	.bbs-wrap .enter-items .right { padding: 10px; }
	.bbs-wrap .enter-items input, .bbs-wrap .enter-items textarea { border: 0; }
	.bbs-wrap .enter-items > div.enter { padding-left: 0; }
	.bbs-wrap .enter-items > div.enter .left { display: none; }
	.bbs-wrap .cc-btn-con ~ .submit-btn { position: static; width: 96%; margin: 25px auto; transform: none; }
	.enter-form-con .enter-left, .enter-form-con .enter-right { float: none; padding-left: 0; padding-right: 0; width: 100%; }
	.enter-form-con .enter-form { margin-top: 20px !important; 	padding-left: 0; 	}
	.enter-form-con:nth-of-type(1) .enter-form { margin-top: 5px !important; }
	.enter-form-con .enter-left { padding-right: 0; }
	.enter-form-con .enter-left:after { content: none; 	}
	.enter-form-con .enter-right { padding-left: 0; }
	.enter-form .label { position: static; width: auto; font-weight: 400; }
	.cc-btn-con .cc-btn { width: 22%; }
	.cc-modal-wrap.middle { padding: 0; }
	.cc-modal-wrap.middle .cc-md-con { top: 0; padding: 0; max-width: 100% !important; height: 100%; }
	.cc-modal-wrap.middle .md-header { height: 80px; line-height: 90px; font-size: 18px; text-align: center; }
	.cc-modal-wrap.middle .md-container { top: 80px; bottom: 0; }
	.cc-modal-wrap.middle .md-section { padding: 0; }
	.cc-modal-wrap.middle .md-section > div { border-top: 1px solid #939393; }
	.cc-modal-wrap.middle .close-md-btn { top: 5px; right: 5px; background-size: 19px; }
}
@media (max-width: 640px) {
	.bbs-search-con.diff > div { padding-right: 0; padding-bottom: 50px; height: auto; }
	.bbs-search-con.diff .right { top: auto; bottom: 0; width: 80px; }
}
@media all and (max-width: 599px) {
	.system-msg-wrap > div { margin-top: 20%; font-size: 14px; }
	.system-msg-wrap .smsg-con { padding: 0; letter-spacing: -1px; }
	.system-msg-wrap img { margin-bottom: 30px; max-width: 246px; }
	.system-msg-wrap h1 { font-size: 20px; }
	.system-msg-wrap .smsg-con .box { padding: 16px; font-size: 15px; font-weight: 400; }
	.system-msg-wrap .smsg-con .box span { display: block; padding: 0 0 5px 0; }
	.system-msg-wrap .smsg-foot { font-size: 11px; }
}
@media all and (max-width: 500px) {
	.cc-popup-wrap { top: 0; left: 0; width: 100%; height: 100%; transform: translate(0%, 0%); }
	.cc-popup-wrap .cc-popup-con { min-height: 0 !important; height: 100%; }
	.cc-popup-wrap .pop-header { padding: 0; font-size: 18px; text-align: center; }
	.cc-popup-wrap .pop-header > div { height: 60px; line-height: 60px; border-bottom: 1px solid #939393; }
	.cc-popup-wrap .pop-container { top: 60px; }
	.cc-popup-wrap .pop-section { padding-left: 14px; padding-right: 14px; }
	.cc-popup-wrap .close-pop-btn { top: 15px; right: 15px; background-size: 19px; }
}
@media all and (max-width: 450px) {
	.logo-title { left: 142px; margin-top: -6px; font-size: 13px; }
	.head-inner .logo { width: 165px; }
}
@media all and (max-width: 420px) {
	.open-sm-btn, .close-sm-btn { right: 5px; }
	.only-mo-header .search-btn, .open-sm-btn, .close-sm-btn { width: 35px; height: 35px; }
	.open-sm-btn span, .close-sm-btn span { width: 22px; }
	.open-sm-btn em { top: -5px; }
	.only-mo-header .search-btn { right: 40px; }
	.head-inner { padding: 0 85px 0 5px; }
	.open-sm-btn span:before { top: -8px; }
	.open-sm-btn span:after { top: 8px; }
	.bbs-search-con { padding: 14px 6px; }
	.bbs-search-con > div { padding-left: 85px; padding-right: 65px; font-size: 13px; }
	.bbs-search-con .left { width: 80px; }
	.bbs-search-con .left select { padding-left: 5px; }
	.bbs-search-con .right { width: 60px; }
	.bbs-search-con.diff > div { padding: 0; height: auto; }
	.bbs-search-con.diff .left { position: static; margin-bottom: 10px; width: 100%; text-align: center; }
	.bbs-search-con.diff .left select { float: none; margin: 0; width: 49%; }
	.bbs-search-con.diff .right { position: static; margin-top: 10px; width: 100%; text-align: right; }
	.bbs-search-con.diff .right .full-list-btn { width: 100%; }
	.bbs-list-con .cc-btn-con { width: 100%; }
	.bbs-list-con .cc-btn-con .write-btn { height: 50px; line-height: 48px; width: 100%; font-size: 18px; }
}
@media all and (max-width: 400px) {
	.tt-course-item { font-size: 10px; }
	.login-wrap .con-box { padding: 20px; }
	.cc-dialog-wrap { width: 300px; }
}
@media all and (max-width: 374px) {
	.cc-paging a.arrow { margin: 0; }
}
@media all and (max-width: 345px) {
	.head-inner .logo { width: 160px; }
	.logo-title { left: 140px; font-size: 13px; }
	.cc-paging a.num { padding: 0 5px; font-size: 15px; }
}
@media all and (max-height: 700px) {
	.search-filter-wrap:not(.on) .sf-form { min-height: 80vh; height: auto; }
}
@media print {
	@page { size: A4; margin: 0 5%; }
	/** { -webkit-print-color-adjust: exact; print-color-adjust: exact; }*/	/* 20201008_삭제 */
	#wrapper, .container { padding: 0 !important; }
	#header, #footer, .content > h2, .skipnavigation, .scroll-top-btn, .btns-box, .cc-btn, .dd-depth-link, .cc-modal-wrap .close-md-btn, .cc-modal-wrap .btns-box, .not-print { display: none !important; }
	.cc-modal-wrap .cc-md-con { top: 0 !important; padding: 0 !important; }
	h1, h2, h3 { font-size: 18px !important; }
}