@charset "utf-8";
/* CSS Document */
/*
█▀█ █░█░█ █▀▄
█▀▄ ▀▄▀▄▀ █▄▀
*/
.d-none,
.nav-open,
.nav-close,
.bo_tit_sub,
.side-top-menu{ display:none;}
@media (min-width: 768px){
.d-sm-table-cell {
    display: table-cell!important;
}
}
@media (max-width: 767.98px) {
:root{
--main-color:#743C59;
}
html{font-size:14px;}
body{ font:100%/1.5 sans-serif; }

#wrap, .wrap, #hd_wrapper, .mainpage #container, #gnb_1dul,
#hd,#wrapper,#ft{ width:100%;min-width: 100%;box-sizing: border-box;}

h1{ min-width:100%;box-sizing: border-box;}

#contents img{ max-width:100%;}

img.center{ max-width:100%;}
.btn-img{ background:none; border:0;}

.sideimage{ float:none; margin-right:0; margin-bottom:1rem;}
.ex-box{ padding-left:1rem; padding-right:1rem;}

#hd_wrapper,
#contents{ padding:0 .75em}
#topnav{ display:none;}

a.btn_b01,
a.btn_b02,
a.btn_admin{ height:auto;}
a.big-btn{ width:100%;}


.cols3 .col,
.cols2 .col,
.cols3 .col2,.cols5 .col,.cols5 .col2,.cols5 .col3,.cols5 .col4,.cols6 .col,.cols8 .col,.cols8 .col2,.cols8 .col3,.cols8 .col3-1,.cols8 .col4,.cols8 .col5,.cols8 .col6,.cols8 .col7,.cols12 .col,.cols12 .col2,.cols12 .col3,.cols12 .col4,.cols12 .col5,.cols12 .col6,.cols12 .col7,.cols12 .col8,.cols12 .col9,.cols12 .col10,s12 .col11{width:100%; margin-left:0;}
.cols .first{margin-left:0;padding-left:15px;}
.cols .first{ float:none; }

.cols5 .col{/* width:50%;*/}

.tab {padding: 5px 10px 5px;}

form[name=fsearch]{display: flex;gap: .25em;justify-content: center;}
form[name=fsearch] #stx{ width:50%;}

#gnb{ position:fixed; top:0; left:100%;height: 100vh; width:240px; z-index:9000; overflow-y:scroll;transition: all ease .5s 0s;}
#gnb.show{ left:calc(100% - 240px);}
#gnb_1dul .gnb_1dli,
.en #gnb_1dul .gnb_1dli,
.media #gnb_1dul .gnb_1dli{width: 100%;text-align: start; height:auto;border-bottom: 1px solid #7b5072;}
#gnb .gnb_2dul{ width:100%; position:relative; top:auto; }
a.gnb_1da{ padding:0 1em 0 1em; display:flex}
a.gnb_1da:after{display:inline-block; text-rendering: auto;font-family:'FontAwesome';content: "\f0d7"; margin-left:auto;}
#gnb .gnb_2dli a{ padding-left:2em;}

.nav-open{ display:block; float:right; font-size:2em; padding-top:10px;}
.nav-close { display:block; padding:1em; padding-top:.5em; padding-right:.25em; text-align:end;}
.nav-close button{ color:#fff; padding:.25rem .75rem;}
#btn-nav{ display:none;}

.side-top-menu{ display:block; display:flex;justify-content: end;font-size: .8em;gap: 1em;padding-right: 1em;margin-bottom: 1.6em;flex-wrap: wrap;}

#gnb.show ~ .mask{
position: fixed;
width: 100%;
height: 100vh;
background: rgba(0,0,0,.2);
z-index: 8000;
top: 0;
}

#m-splash{min-width: 100%;min-height:auto;margin-bottom: 2em;}
.splash .slides > li{ height:240px;}
.splash .slides li img.splash-img{ width:100%; height:100%; object-fit:cover;object-position: center; position:relative; left:auto;margin-left:auto}
.splash-slogan{ left:5%; top:10%; width:70%; height:auto;margin-left:0}
#m-splash .flex-control-nav{ left:auto; bottom:0; width:100%; margin-left:0; display: flex;justify-content: center; gap:.5em;transform: translateY(150%);}
#m-splash .flex-control-nav li{ float:none; width:1.5em; height:1.5em; border:1px solid hsl(0,0%,70%); background:hsl(0,0%,70%); border-radius:50%; margin-left:0; margin-right:0;}
#m-splash .flex-control-nav li img{display:block; aspect-ratio:1; object-fit:cover; height:100%; border-radius:50%;}
#m-splash li .splash-btn{ top:80%; bottom:0; left:auto; margin-left:0; width:100%;}

#splash-flex .bg-splash{ width:100%; height:100%;object-fit: cover;object-position: center;}

#m-latest-list .trigger{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:0;}
#m-latest-list .trigger li{ flex-basis:calc(100% / 3); text-align:center;border-left:0; margin-bottom:5px;}
#m-latest-list .trigger li a{ display:block; width:100%; background:hsl(0,0%,78%); font-size:1.15em; color:#fff; margin-left:0; padding:.5em 0;}
#m-latest-list .trigger li.active a{ background:var(--main-color); color:#fff;}
#m-latest-list .lt_more{ display:none;}

.mainpage #bx_calendar,
#m-banner,
.banner-professor{ display:none;}
#m-banner-mo{ display:block;}
#m-banner-mo ul{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;  gap: 1em;padding: 0 1em;}
#m-banner-mo li{flex-basis: calc(50% - .5em);}
#m-banner-mo figure{ margin:0; border:1px solid hsl(0,0%,88%); border-radius:.25em; padding:.5em}
#m-banner-mo figcaption{ margin-top:.5em; color:var(--main-color);}

.ft-quickmenu{ padding:10px 20px;}
.ft-quickmenu .flex-direction-nav li .flex-prev{ left:5px;}
.ft-quickmenu .flex-direction-nav li .flex-next{ right:5px;}

#ft{ padding-left:.75em; padding-right:.75em; font-size:.8em}


#content-title-box{ height:150px;}
.bg-content-title{ height:100%;}
#content-title-box img {height: 100%;object-fit: cover;object-position: center;}
.content-title{ left:1rem; top:auto; bottom:1rem; padding-top:0; width:calc(100% - 2rem);margin-top: 0;}
.content-title h2{ font-size:1.4em;}
.content-title .content-sub-title,
.breadcrumb{ font-size:.9em;}

.subpage h3{ font-size:1.4em;}

.td_subject .bo_cate_link{ display:block; font-size:.9em; border-right:0;}
.bo_tit_sub{ display:block;padding-top:.2em;}
.bo_tit_sub .name,
.bo_tit_sub .date{font-size:.9em; display:inline-block; margin-right:1em}

table.default{ margin-left:0; width:100%;}
table.default th,
table.default td{font-size:.929em;white-space: normal;}
#master_curriculum .center td{ padding-left:0; padding-right:0; text-align:center;}

table.default.mobile { border:0 none; }
table.default.mobile col{ width:100%;}
table.default.mobile thead { border: none; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.default.mobile th, .default.mobile td{ border:0 none;}
table.default.mobile tr { border: 1px solid #bbb; display: block; padding:5px 10px; margin-bottom: .625em; position:relative }
table.default.mobile td { border-bottom: 1px solid #ddd; border-top:0 none!important; display: block; font-size: .86em;display:flex;gap:10px; height:auto; padding:.5rem}
table.default.mobile td:before { display:block;content: attr(data-label); font-weight: bold; text-transform: uppercase; color:#2D83B4; flex-basis:94px; text-align: initial;}
table.default.mobile td:last-child { border-bottom: 0; }
.default.mobile tbody tr,
.default.mobile tbody tr:hover{ border-left:1px solid #bbb; padding:.2rem}
.default.mobile .td_subject{ margin-left:5px;}
.default.mobile .td_name{ padding:10px 5px;}
.default.mobile .td_num,
.default.mobile .td_num2,
.default.mobile .td_name,
.default.mobile .td_datetime{width:100%; }

body#myvoucher table.default.mobile td:before { flex-basis:130px;}

body#voucher .default.mobile .td_subject,
body#voucherGroup .default.mobile .td_subject,
body#voucherCode .default.mobile .td_subject {margin-left: 0;}

.default.mobile .td_chk{position: absolute;top: 5px;right: 4px;display: block; border:0 none;}

.tbl_wrap .mobile tbody th{ width:100%;}

.tbl_frm01 tr{ display:flex;flex-direction: column;}
.tbl_frm01 th{ flex-basis:100%;width: 100%;border-right: 0;}
.tbl_frm01 th,.tbl_frm01 td{ padding:4px 0;}
.tbl_frm01 textarea, .tbl_frm01 .frm_input{ width:100%;}

#autosave_pop{ width:90%; right:5%;}
#bo_v_link li{ padding:0;font-size:.8125em;}
#bo_v_link li strong{ font-weight:normal;}
#bo_gall .gall_li{ flex:0 0 50%; flex-basis:calc(50% - 10px)}

.pg_page, .pg_current{ padding:0 6px;font-size:.875em;}

.fig-goal-list ul.inline{ display:flex;flex-wrap: wrap;}
.fig-goal-list li{ flex:0 0 50%}
.fig-goal-list li::before{ display:none;}
.fig-goal-list li img{ display:block; width:90%; margin:.5em auto;}

.location-info-title{ display:none;}
#location-info{ position:relative; height:auto; width:100%;}
#map_canvas, #location-info{ height:auto;}
#map_canvas{ width:100%; margin-bottom:1em;}

.process-list li::before{ display:none;}

.profile-list ul{grid-template-columns: repeat(1, 1fr);}
.profile-list li{display: flex;flex-wrap: wrap;}
.profile-list li.no-profile-pic{ height:auto;}
.profile-position{ flex-basis:100%;}


#lnb-3dep .trigger li a{ font-size:1em;}


#history .trigger li{ height:auto;}
#history .trigger li a{ line-height:normal;}
#history .trigger li:first-child a{ padding-top:8px;}

.fc th.fc-day-header{ background-image:none; text-indent:0}

.prof-photo{ float:none; margin-bottom:1em;}
table.prof-info{ width:100%; float:none;}
.prof-content a.btn-view{ width:45%;}

#bo_cate_ul, #voucherCodeTabs {margin-left: 10px;margin-right:10px;}
#bo_cate a{ width:100%;}
#bo_cate_ul{display: flex;flex-wrap: wrap; width:92%!important; box-sizing:border-box;}
#bo_cate_ul li{ height:auto; flex:1 1 33%;}
#voucherCodeTabs li a{ height:auto; line-height:1;}

#v_name{ width:80%;}

#voucher #bo_sch{ margin:1rem; text-align:left}
#searchvoucher{ flex-direction:column;}
#bo_list .mobile .td_num {width: 96%;}
.btn_confirm{ margin:0;}
a.btn_cancel{ line-height:30px;}

.prof-history .history li{ display:block; margin-bottom:.6em}
.prof-history .history .date{ display:block;}
}