@CHARSET "UTF-8";

body, div, p, h1, h2, h3, h4, h5, h6, ul, li, ol, dl, dt, dd, table, th, td, form, fieldset, legend, input, textarea, button { margin:0; padding:0; }
body {
    margin:0; color: #5E5E5E; font-size: 0.75em; font-family:NanumGothic,"돋움", Dotum, AppleGothic, Sans-serif;
}

ul, ol, li { list-style:none; }
fieldset, form, button { border:0; }
img { border:0; }
hr, legend, caption { display:none }
em, address { font-style:normal }
table { border-collapse:collapse; }
textarea { overflow:auto; border:1px solid #dedede; }


a:link, a:active, a:visited { color: #5E5E5E; text-decoration: none;  }
a { text-decoration: none; }

#wrap { margin: 0 auto; width: 962px; text-align: left; }
#wrap:after { display: block; content: ""; clear: both; }

/* Header Area
-------------------------------------------------------------------------------------------*/
#header { padding-top: 120px; position: relative; overflow: hidden; background:#14243a; }

#header .visual_top_txt { display: block;margin-bottom: 0px;  width: 100%;  height: 120px; clear: both; text-align: center; }
#header .visual_top_txt p { display: ; font-size:20px; color: #FFF; font-weight: 600; }
#header .visual_top_txt p.e { margin-top: 18px; padding-left: 5px; font-size: 25px; filter: alpha(opacity=60); opacity: .6; letter-spacing: -0.02em; }

/* Contents Area
-------------------------------------------------------------------------------------------*/
#Contents { padding: 25px 20px 35px 0;  }
/* .main_contents { width: 100%; } */
.login_box { width: 300px;padding: 25px 20px 35px 0; }


/* 로그인-------------------------------------------------------------------------------------------------------- */
.login_default { padding-right: 19px; width: 310px; border-right:1px solid #dce2e7; background:none; float: left; position: relative; }
.login_default h2 { margin-bottom: 13px;font-size:18px; }
.login_default fieldset { margin-bottom: 18px; height: 67px; position: relative; overflow: hidden; }
.login_default fieldset p { margin-bottom: 7px; }
.login_default fieldset p:after { display: block; content: ""; clear: both; }
.login_default fieldset p { *zoom: 1; }
.login_default fieldset p * { vertical-align: middle; float: left; }
.login_default fieldset p span { _margin-left: -4px; _letter-spacing: -1px; }
.login_default fieldset label { display: none; }
.login_default fieldset input { margin-right: 0px; padding-top: 5px; padding-bottom: 5px; padding-left: 7px; padding-right: 7px; width: 200px; height: 18px;  border: 1px solid #E4E4E4; background-color: #F8F8F8 !important; font-weight:600; vertical-align: middle;}
.login_default fieldset .btn_login a { display: inline-block; padding-top: 25px; width: 79px; height: 42px; font-size: 14px; color: #FFF; text-align: center; background: #034ea2;  position: absolute; top: 0; right: 0; }

.login_default fieldset .btn_login a:focus { border: 2px solid #EEEEEE; padding-top: 23px; width: 75px; height: 40px; }

.login_default fieldset input.chk_box { margin: 9px 4px 0 0; _margin-top: 5px; }
.login_default fieldset span { margin-top: 9px; }
.login_default .login_options { clear: both; display: flex; flex-wrap: wrap; gap: 4px 10px; padding-top: 3px; font-size: 11px; }
.login_default .login_options label { display: inline-block; margin-right: 0; cursor: pointer; }
.login_default .login_options label.real_mode { color: #004098; font-weight: 600; }
.login_default .login_options input { margin: 0 3px 0 0; vertical-align: -2px; }
.login_default .real_mode_controls { display: none; flex: 0 0 100%; align-items: center; gap: 5px; padding: 5px 7px; border: 1px solid #cedcef; background: #f7fafe; }
.login_default .real_mode_controls select { padding: 3px; border: 1px solid #9eb1c8; font-size: 11px; }
.login_default .real_mode_controls button { margin-left: 0; padding: 4px 9px; border: 1px solid #004098; color: #fff; background: #004098; font-size: 11px; cursor: pointer; }
.login_default .real_mode_controls button:disabled { border-color: #999; background: #aaa; cursor: default; }
.login_default #realModeClock { display: none; margin-left: 3px; color: #e13a3e; font-weight: 600; }
.login_default .real_mode_help { display: none; clear: both; margin-top: 5px; padding: 5px 7px; border: 1px solid #cedcef; background: #f7fafe; color: #555; font-size: 10px; line-height: 1.4; }
.login_default .real_mode_help strong { color: #004098; }
.login_default .real_best_record { clear: both; display: flex; align-items: center; gap: 5px; margin-top: 6px; padding: 5px 7px; border-left: 3px solid #004098; background: #f4f8fc; font-size: 11px; color: #555; }
.login_default .real_best_record strong { color: #e13a3e; }
.login_default .real_best_record button { flex: 0 0 auto; margin-left: auto; padding: 2px 5px; border: 1px solid #777; background: #f7f7f7; color: #555; font-size: 11px; line-height: 1.2; white-space: nowrap; cursor: pointer; }
.login_default .real_split_count { margin-top: 5px; padding: 0 2px; color: #004098; font-size: 11px; font-weight: 600; }
.login_default .real_split_records { margin-top: 3px; padding: 0; border: 0; background: transparent; color: #555; font-size: 10px; }
.login_default .real_split_records .split_record { display: grid; gap: 1px; margin-top: 3px; padding: 5px 7px; border: 1px solid #d5d5d5; background: #fff; line-height: 1.28; }
.login_default .real_split_records .split_record:first-child { margin-top: 0; }
.login_default .real_split_records .split_record.succeeded { border-left: 3px solid #004098; }
.login_default .real_split_records .split_record.failed { border-left: 3px solid #e13a3e; }
.login_default .real_split_records .split_record strong { color: #333; }
.login_default .real_split_records .split_record small { color: #777; font-size: 9px; }
.login_default .timetable_shortcut { clear: both; padding-top: 6px; font-size: 11px; }
.login_default .timetable_shortcut a { display: inline-block; padding: 5px 8px; color: #fff; background: #004098; }
.login_default .login_nav { clear: both; display: flex; align-items: center; justify-content: space-between; margin-top: 8px; }
.login_default .login_nav .lobby_button { display: inline-block; padding: 4px 8px; color: #fff; background: #004098; font-size: 11px; line-height: 1.2; }
.login_default .login_nav .lobby_button:hover, .login_default .login_nav .lobby_button:focus { background: #003477; }
.login_default .login_nav ul.login_menu { float: none; margin-top: 0; }
.login_default ul.login_menu li { float: left; }
.login_default ul.login_menu li a { display: inline-block; padding-right: 7px; height: 12px; font-size: 11px; color: #7E7E7E; border-right: 1px solid #7E7E7E; }
.login_default ul.login_menu li.end a { padding: 0 0 0 7px; border: none; }
.login_default .login_info { position: absolute; top: 0; right: 19px; }
.login_default .txt_notice { margin-bottom: 19px; font-size: 11px; }

/* 로그인 input 박스 제어 */
.int{position:relative;width:100%;padding:7px 0 6px;height:16px;z-index:9;border:none; font-size:14px;line-height:16px}

/* 로그인안내
-------------------------------------------------------------------------------------------*/

.main_notice { width:600px;padding: 0px 0 0 30px; float:right; }
.main_notice h2 { margin-bottom: 13px;font-size:18px; }
.main_notice p { font-size:14px;line-height: 150%;padding: 5px 5px 5px 0px;}
.main_notice .real_mode_controls { display:flex; flex-wrap:nowrap; align-items:center; gap:5px; padding:8px 10px; border:1px solid #cedcef; background:#f7fafe; }
.main_notice .real_mode_controls select { padding:4px; border:1px solid #9eb1c8; font-size:12px; }
.main_notice .real_mode_controls button { padding:5px 10px; border:1px solid #004098; background:#004098; color:#fff; font-size:12px; cursor:pointer; }
.main_notice .real_mode_controls button:disabled { border-color:#999; background:#aaa; cursor:default; }
.main_notice #realModeClock { flex:1 1 auto; display:block; margin:0 0 0 5px; padding:0; color:#2456bb; font:600 30px/1.15 Arial, sans-serif; letter-spacing:-1.2px; text-align:left; white-space:nowrap; }
.main_notice #realModeClock.ready { color:#e13a3e; }
.main_notice .real_mode_help { display:block; margin:6px 0 0; padding:8px 10px; border:1px solid #cedcef; background:#fff; color:#555; font-size:11px; line-height:1.5; }
.main_notice .real_mode_help strong { color:#004098; }
.main_notice .real_record_heading { margin:14px 0 6px; padding-left:8px; border-left:3px solid #e13a3e; color:#004098; font-size:14px; }
.main_notice .real_best_record { display:flex; align-items:center; gap:7px; margin:0; padding:9px 10px; border-left:3px solid #004098; background:#f4f8fc; color:#555; font-size:13px; }
.main_notice .real_best_record strong { color:#e13a3e; }
.main_notice .real_best_record button { margin-left:auto; padding:3px 7px; border:1px solid #777; background:#f7f7f7; color:#555; font-size:11px; cursor:pointer; white-space:nowrap; }
.main_notice .real_split_count { margin:8px 0 4px; padding:0; color:#004098; font-size:13px; font-weight:600; }
.main_notice .real_split_records { margin:0; padding:0; color:#555; font-size:12px; }
.main_notice .real_split_records .split_record { display:grid; gap:2px; margin-top:5px; padding:8px 10px; border:1px solid #d5d5d5; background:#fff; line-height:1.35; }
.main_notice .real_split_records .split_record.succeeded { border-left:3px solid #004098; }
.main_notice .real_split_records .split_record.failed { border-left:3px solid #e13a3e; }
.main_notice .real_split_records .split_record strong { color:#333; }
.main_notice .real_split_records .split_record small { color:#777; font-size:11px; }

/* 수강신청일정
-------------------------------------------------------------------------------------------*/
#info { margin-bottom: 30px;padding-top: 10px; border-top: 1px solid #EFEFEF; overflow: hidden; }
#info .info_sectionz { margin: 0 auto; width: 980px;  }

table { width: 100%; line-height: 150%; }
.tbl_subst01 {border-right: 1px solid #adadad;border-top: 2px solid #004098; border-left: 1px solid #e5e5e5;}
.tbl_subst01 thead th { font-weight: 600; background: #fafafa; border-bottom: 1px solid #adadad;border-left: 1px solid #e5e5e5; border-right: 1px solid #e5e5e5;}
.tbl_subst01 th{ padding: 5px;vertical-align: middle; text-align:center;  border-bottom: 1px solid #e5e5e5; }
.tbl_subst01 td { padding: 5px; padding-left: 10px ; vertical-align: middle; text-align: center; border-right: 1px solid #e5e5e5; border-bottom: 1px solid #e5e5e5; }


/* 여백 */
.mt_5 { margin-top: 5px; }
.mt_10 { margin-top: 10px; }
.mt_20 { margin-top: 20px; }
.mt_30 { margin-top: 30px; }
.sec_tit  { margin-bottom: 10px;margin-top: 13px;font-size:18px; }

/* 수강신청 꿀팁 */
.info_box { border: 1px solid #D5D5D5;  line-height: 150%;border-top: 2px solid #004098;}
.info_box .info_cont { padding: 5px 5px 5px 15px;margin-top:10px;margin-bottom:15px}
.info_box .info_cont h2 { border-bottom: 1px solid #D5D5D5; }
.info_box .info_cont .info_li > li { padding: 5px; font-size: 14px; }
.info_box .info_cont .info_li li .fc_o { color: #e13a3e; font-size: 14px;}
.info_box .info_cont .tip_list { margin:0; padding:0 5px 0 27px; }
.info_box .info_cont .tip_list li { margin:0; padding:5px 4px; list-style:decimal; font-size:13px; line-height:155%; }
.info_box .info_cont .tip_list strong { color:#004098; }
.info_box .info_cont .tip_important { color:#e13a3e; font-style:normal; font-weight:bold; }
.info_box .info_cont .tip_group { margin-top:10px; }
.info_box .info_cont .tip_group h3 { margin:0 0 5px; padding:5px 8px; border-left:3px solid #e13a3e; background:#f7fafe; color:#004098; font-size:13px; }
.info_box .info_cont .tip_sublist { margin:4px 0 0; padding:0; }
.info_box .info_cont .tip_group > .tip_sublist { padding:0 5px 0 27px; }
.info_box .info_cont .tip_sublist li { padding:2px 0 2px 9px; list-style:none; color:#666; font-size:12px; line-height:150%; }
.info_box .info_cont .tip_sublist li:before { margin-left:-8px; content:"· "; color:#004098; }

/* 로그인 화면의 기존 구성은 유지하고, 작은 화면에서는 가로 잘림만 방지합니다. */
@media (max-width: 700px) {
    body { min-width: 0; }
    #wrap { width: 100%; }
    #header { padding-top: 92px; background-size: auto 212px; }
    #header .visual_top_txt { height: 92px; }
    #header .visual_top_txt p { font-size: 16px; }
    #header .visual_top_txt p.e { margin-top: 12px; font-size: 20px; }
    #Contents { padding: 20px 14px; }
    .login_box { float: none !important; width: 100%; padding: 0; }
    .login_default { float: none; box-sizing: border-box; width: 100%; padding-right: 0; background: none; }
    .login_default fieldset input { width: calc(100% - 96px); box-sizing: border-box; }
    .main_notice { float: none; box-sizing: border-box; width: 100%; padding: 16px 14px; }
    #info .info_sectionz, #footer .footer_section { width: calc(100% - 28px); }
    .tbl_subst01 { display: block; overflow-x: auto; }
}


/* Footer Area
-------------------------------------------------------------------------------------------*/
#footer { margin-bottom: 30px;padding-top: 37px; border-top: 1px solid #EFEFEF; overflow: hidden; }

#footer .footer_section { margin: 0 auto; width: 980px;  font-size: 11px; color: #ABB2B8; text-align: center; }
