@charset "UTF-8";
html{
    width:100%;
    height:100%;
}

body{
    width:100%;
    height:100%;
    background:#f8f8f9 url(../img/left_gnb_back.png);
    background-repeat: repeat-y;
}

.wrapper{
    width:100%;
    height:auto;
    min-width:1680px;
    min-height:1080px;
    box-sizing:border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    overflow-y:auto;
}

/*Login*/
.login_wrapper{
    width:100%;
    height:100%;
    min-width:1200px;
    min-height:920px;
    background:url(../img/login_back.png) no-repeat;
    background-size:cover;
}

.login_content_area{
    position:relative;
    top:50%;
    transform:translateY(-50%);
    margin:0 auto;
}

.login_content_area .title_area h2{
    margin-bottom:30px;
    font-size:45px;
    color:rgba(255, 255, 255, 0.9);
    font-weight:300;
    text-align:center;
}

.login_content_area .title_area span{
    display:block;
    font-size:18px;
    color:rgba(255, 255, 255, 0.9);
    font-weight:200;
    letter-spacing:10px;
    text-align:center;
}

.login_box{
    position:relative;
    width:410px;
    height:auto;
    margin:110px auto 0;
    padding:50px 35px;
    background:#fff;
    border-radius:15px;
    -webkit-box-shadow:7px 7px 12px 0px rgba(50, 50, 50, 0.5);
    -moz-box-shadow:7px 7px 12px 0px rgba(50, 50, 50, 0.5);
    box-shadow:7px 7px 12px 0px rgba(50, 50, 50, 0.5);
}

.login_box:after{
    position:absolute;
    top:-60px;
    left:50%;
    margin-left:-75px;
    display:block;
    content:'';
    clear:both;
    width:130px;
    height:130px;
    border-radius:50%;
    background:#fff url(../img/icon_login_logo.png) no-repeat center 30px;
}

.login_box span{
    display:block;
    margin-bottom:15px;
    font-size:16px;
    font-weight:400;
    color:#606060;
}

.login_btn{
    display:block;
    width:218px;
    height:50px;
    margin:20px auto 20px;
    line-height:50px;
    text-align:center;
    color:#fff;
    font-size:18px;
}

.login_box .search_info{
    display:block;
    font-size:15px;
    font-weight:400;
    color:#606060;
    text-align:center;
}

.join{
    display:block;
    font-size:15px;
    font-weight:400;
    color:#03389a;
    text-align:center;
}

/*join_completion*/
.join_completion_txt{
    text-align:center;
    padding:100px 0 50px 0px;
    font-size:32px;
    letter-spacing:20px;
    background:url(../img/icon_join_completion.png) no-repeat top 30px center ;
}

.join_completion_txt span{
    display:block;
    width:100%;
    margin-top:20px;
    text-align:center;
    letter-spacing:0;
    font-size:18px;
}

/* ID / 비밀번호 찾기 */
.searchInfo_box{
    position:relative;
    width:440px;
    height:auto;
    margin:0 auto;
    padding:100px 35px 50px 35px;
    background:#fff;
    border-radius:15px;
    -webkit-box-shadow:7px 7px 12px 0px rgba(50, 50, 50, 0.5);
    -moz-box-shadow:7px 7px 12px 0px rgba(50, 50, 50, 0.5);
    box-shadow:7px 7px 12px 0px rgba(50, 50, 50, 0.5);
}

.search_menu{
    position:absolute;
    top:-1px;
    left:0;
    width:100%;
}

.search_menu li{
    float:left;
    width:50%;
}

.search_menu li.on a{
    background:#fff;
    color:#03389a;
    font-weight:400;
}

.search_menu li a{
    display:block;
    width:100%;
    height:70px;
    background:#03389a;
    color:#fff;
    font-size:20px;
    font-weight:300;
    text-align:center;
    line-height:70px;
    box-sizing:border-box;
}

.search_menu li:first-child a{
    border-radius:15px 0 0 0;
}

.search_menu li:last-child a{
    border-radius:0 15px 0 0;
}

.searchInfo_box span{
    display:block;
    margin-bottom:15px;
    font-size:16px;
    font-weight:400;
    color:#606060;
}

.email_form{
    font-size:16px;
}

.search_id_box{
    height:100px;
    text-align:center;
    line-height:100px;
	border:2px solid #ebebeb;
	font-size:16px;
	font-weight:400;
	color:#606060;
    border-radius:4px;
    background:#f6f6f8;
	cursor:inherit;
	outline:none;
	box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    display:none;
}

.serchInfo_btn{
    display:block;
    width:100%;
    height:50px;
    margin:20px auto 20px;
    line-height:50px;
    text-align:center;
    color:#fff;
    font-size:18px;
}

.header{
    width:100%;
    height:80px;
    padding-right:50px;
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    background:-moz-linear-gradient(left, #0049a2 0%, #0096f4 100%); /* FF3.6-15 */
    background:-webkit-linear-gradient(left, #0049a2 0%,#0096f4 100%); /* Chrome10-25,Safari5.1-6 */
    background:linear-gradient(to right, #0049a2 0%,#0096f4 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#0049a2', endColorstr='#0096f4',GradientType=1 ); /* IE6-9 */
}

.header .home a{
    display:block;
    width:280px;
    height:80px;
}

.header .home a.manager{
    background:url(../img/icon_logo1.png) no-repeat center center;
    background-size:auto;
}

.header .home a.teacher{
    background:url(../img/icon_logo2.png) no-repeat center center;
    background-size:auto;
}

.header .home a.student{
    background:url(../img/icon_logo3.png) no-repeat center center;
    background-size:auto;
}

.main_gnb li{
    float:left;
}

.main_gnb li a{
    display:block;
    width:180px;
    height:80px;
    background:transparent;
    line-height:80px;
    font-size:20px;
    font-weight:400;
    text-align:center;
    color:#fff;
    opacity:0.7;
    transition:all 0.2s linear;
}

.main_gnb li.on a,
.main_gnb li:hover a,
.main_gnb li:focus a,
.main_gnb li:active a{
    background:rgba(255, 255, 255, 0.1);
    font-weight:400;
    opacity:1;
}

.small_gnb .admin_name{
    display:inline-block;
    padding-right:10px;
    font-size:15px;
    font-weight:400;
    color:#fff;
    opacity:0.9;
    vertical-align:text-bottom;
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
}

.small_gnb{
    padding:17px 0;
}

.small_gnb .btn_logout{
    display:inline-block;
    width:46px;
    height:46px;
    border-radius:50%;
    vertical-align:middle;
    background:rgba(255, 255, 255, 0.25) url(../img/ico_logout.png) no-repeat center center;
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    transition:all 0.2s ease;
}

.small_gnb .btn_logout:hover,
.small_gnb .btn_logout:active,
.small_gnb .btn_logout:focus{
    background:rgba(255, 255, 255, 1) url(../img/ico_logout_on.png) no-repeat center center;
}

.contents_wrap{
    position:relative;
    width:100%;
    height:auto;
    padding-left:280px;
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
}

.contents_wrap .left_gnb{
    position:absolute;
    top:0;
    left:0;
    width:280px;
    height:100%;
    padding-top:20px;
    background:#fff;
    border-right:2px solid #ebecf0;
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
}

.contents_wrap .left_gnb li a{
    display:block;
    width:100%;
    height:55px;
    padding:0 46px 0 40px;
    font-size:20px;
    color:#848484;
    font-weight:400;
    line-height:55px;
    background:url(../img/ico_arrowRight_off.png) no-repeat right 46px center;
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    transition:all 0.2s linear;

}

.contents_wrap .left_gnb li.on a,
.contents_wrap .left_gnb li:hover a,
.contents_wrap .left_gnb li:focus a,
.contents_wrap .left_gnb li:active a{
    font-weight:600;
    color:#03389a;
    background: url(../img/ico_arrowRight_on.png) no-repeat right 46px center;
}

.right_content{
    width:100%;
    height:auto;
    background:#f8f8f9;
    padding:32px 50px 50px 50px;
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
}

.linebox_area{
    width:100%;
    height:auto;
}

.linebox_area .title_txt{
    font-size:26px;
    font-weight:400;
    color:#1e1e1e;
}

.small_navi li{
    position:relative;
    display:inline-block;
    margin:0 12px;
}

.small_navi li a{
    display:block;
    font-size:14px;
    color:#aaa;
    font-weight:400;
    line-height:26px;
}

.small_navi li:after{
    position:absolute;
    display:block;
    content:'';
    clear:both;
    top:10px;
    right:-18px;
    width:6px;
    height:9px;
    background:url(../img/ico_arrowRight_off.png) no-repeat center center;
}

.small_navi li:last-child:after{
    display:none;
}

.small_navi li.on a{
    color:#1e1e1e;
}

.conbox_area{
    width:100%;
    height:auto;
    padding:32px 40px;
    border:2px solid #ebecf0;
    background:#fff;
    border-radius:4px;
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
}


/* 검색박스 */
.searchbox_line{
    padding:12px 0;
}

.search_table th{
    font-size:16px;
    color:#606060;
    font-weight:400;
    text-align:left;
}

.searchbox_line button, .button{
	width:auto;
	height:38px;
	padding:0 25px;
	margin-right:5px;
	background:#fff;
	border:2px solid #ebebeb;
	box-shadow:none;
	border-radius:20px;
	font-size:16px;
    font-weight:400;
	color:#606060;
	overflow:visible;
    cursor:pointer;
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
}

.searchbox_line button.on, .button.on{
	border:2px solid #03389a;
	color:#03389a;
	font-weight:500;
}

.searchbox_line input{
    width:500px;
	height:46px;
	padding:0 12px;
	border:2px solid #ebebeb;
	font-size:16px;
	font-weight:400;
	color:#606060;
	border-radius:4px;
    outline:none;

}

.searchbox_line input:focus{
	border:2px solid #03389a;
	font-weight:400;
}

.btn_search{
	display:inline-block;
	width:auto;
	margin-left:7px;
	padding:0 55px;
	line-height:46px;
	font-size:16px;
	color:#fff;
	background:#03389a;
	font-weight:400;
	border-radius:4px;
	box-sizing:border-box;
    -webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	transition:all .2s linear;
}

.btn_search:hover,
.btn_search:focus,
.btn_search:active{
	background:#1853bf;
}

.list_number{
    font-size:16px;
    color:#606060;
    font-weight:400;
    line-height:38px;
}

/*List_table*/
.list_table thead th{
    height:65px;
    border-bottom:1px solid #dfe3e9;
    vertical-align:middle;
    font-size:14px;
    color:#505050;
    font-weight:500;
}

.list_table tr.notice{
    background-color:#eefaff;
}

.list_table td{
    height:50px;
    text-align:center;
    vertical-align:middle;
    font-size:14px;
    color:#606060;
    font-weight:400;
    border-bottom:1px solid #eff1f4;
}

.veiw_link{
    font-size:14px;
    color:#03389a;
    font-weight:400;
}

.veiw_link:focus,
.veiw_link:hover,
.veiw_link:active{
    font-size:14px;
    color:#03389a;
    font-weight:500;
}

.state_mark{
    display:inline-block;
}

.mark{
    display:inline-block;
    width:60px;
    height:30px;
    line-height:28px;
    border-radius:4px;
    font-weight:500;
    text-align:center;
}

.mark.ing{
    border:1px solid #03389a;
    color:#03389a;
    background:#e9f1ff;
    text-align:center;
    font-size:14px;
}

.mark.receiving{
    border:1px solid #009d4a;
    color:#009d4a;
    background:#ecfff4;
}

.mark.standby{
    border:1px solid #db1813;
    color:#db1813;
    background:#ffefef;
}

.mark.end{
    border:1px solid #606060;
    color:#606060;
    background:#f4f4f4;
}

.onAir{
    display:inline-block;
    width:37px;
    height:12px;
    margin-left:7px;
    background:url(../img/icon_onAir.png) no-repeat center center;
}

/*Pasing*/
.pasing{
    width:600px;
    height:50px;
    margin: 32px auto 0;
    text-align:center;
    padding:18px 0;
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
}

.pasing li{
    display:inline-block;
    margin:0 12px;
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
}

.pasing li a{
    padding:0 5px;
    font-size:14px;
    color:#aaa;
    font-weight:400;
}

.pasing li.on a,
.pasing li a:hover,
.pasing li a:focus,
.pasing li a:active{
    font-weight:500;
    color:#1767e0;
}

.pasing .controller{
    display:inline-block;
    width:5px;
    height:14px;
    vertical-align:bottom;
}

.pasing .controller.prev{
    background:url(../img/ico_pasing_prev_off.png) no-repeat center center;
}

.pasing .controller.prev:hover,
.pasing .controller.prev:focus,
.pasing .controller.prev:active{
    background:url(../img/ico_pasing_prev_on.png) no-repeat center center;
}

.pasing .controller.next{
    background:url(../img/ico_pasing_next_off.png) no-repeat center center;
}

.pasing .controller.next:hover,
.pasing .controller.next:focus,
.pasing .controller.next:active{
    background:url(../img/ico_pasing_next_on.png) no-repeat center center;
}

/*Content_table*/
.content_table{
    width:100%;
}

.content_table th{
    padding:15px 0;
    font-size:16px;
    color:#333;
    font-weight:400;
    text-align:left;
}

.content_table td{
    padding:15px 0;
    font-size:16px;
    color:#606060;
    font-weight:400;
    text-align:left;
}

.content_table tr:last-child th,
.content_table tr:last-child td{
    padding-bottom:0;
}


.class_label_area{
    display:inline-block;
    width:auto;
    padding:5px 10px;
    background:#03389a;
    border-radius:20px;
    line-height:16px;
}

.class_label_area li{
    position:relative;
    display:inline-block;
    margin:0 7px;
    font-size:14px;
    color:#fff;
    vertical-align:top;
}

.class_label_area li:after{
    position:absolute;
    display:block;
    content:'';
    clear:both;
    top:5px;
    right:-12px;
    width:5px;
    height:7px;
    background:url(../img/ico_mark_arrowRight.png) no-repeat center center;
}

.class_label_area li:last-child:after{
    display:none;
}

.class_name{
    display:block;
    font-weight:400;
}

.zoom_link{
    margin-right:10px;
    font-weight:400;
    color:#03389a;
    text-decoration:underline;
    cursor:pointer;
}

.learning_content li{
    line-height:30px;
    font-size:16px;
    font-weight:400;
}

.btn_closeUp{
    display:inline-block;
    width:40px;
    height:40px;
    border:2px solid #ebecf0;
    border-radius:5px;
    background:#fff url(../img/ico_arrowBottom_off.png) no-repeat center center;
    transition:all .2s linear;
}

.btn_closeUp.off{
    display:inline-block;
    width:40px;
    height:40px;
    border:2px solid #ebecf0;
    border-radius:5px;
    background:#fff url(../img/ico_arrowBottom_up.png) no-repeat center center;
    transition:all .2s linear;
    background-size: 9px;
}

.btn_closeUp:hover,
.btn_closeUp:active,
.btn_closeUp:focus{
    border:2px solid #d3d3d3;
}

.small_title_txt{
    font-size:20px;
    font-weight:400;
    color:#333;
    line-height:30px;
}

.mini_title_txt{
    display:block;
    font-size:16px;
    font-weight:400;
    color:#333;
    /* line-height:38px; */
}

.calendar_wrap {
  white-space: nowrap;/* 가로스크롤시 중요한 속성 */
  overflow-x: auto;
}

/*달력*/
.calendar_wrap li{
    display:inline-block;/* 추가 */
/*     float:left; *//* 가로로 스크롤 되어 옆으로 가려면 이거 주석해야함.  */
    width:30%;
    margin:1%;
    margin-bottom:3%;/* 추가 */
}

.calendar_wrap li .month{
    display:block;
    font-size:16px;
    margin:20px 0;
    text-align:center;
    font-weight:400;
    color:#606060;
}

.calendar_wrap li:last-child{
    margin-right:0;
}

.calendar_table thead{
    background:#f6f6f8;
    border:1px solid #d4d9e1;
}

.calendar_table thead th{
    height:40px;
    vertical-align:middle;
    text-align:center;
    font-size:14px;
    font-weight:500;
}

.calendar_table thead th.weekday{
    color:#606060;
}

.calendar_table thead th.sunday{
    color:#f42d16;
}

.calendar_table thead th.saturday{
    color:#1767e0;
}

.calendar_table tbody td{
    position:relative;
    background:#f8fbff;
}

.calendar_table tbody td.no_class{
    background:#f4f4f4;
}

.calendar_table tbody td.no_class{
    background:#f4f4f4;
}

.calendar_table tbody td.white{
    background:#fff;
}

.calendar_table tbody td.today{
    background:#eaf2fd;
}

.calendar_table tbody td:hover,
.calendar_table tbody td:focus,
.calendar_table tbody td:active{
    background:#eaf2fd;
}

/*iptClassTime.on*/
.iptClassTime.on{
    background:#eaf2fd !important;
}

.calendar_table tbody td.today a:after{
  position:absolute;
  display:block;
  content:'';
  top:0;
  left:0;
  width:100%;
  height:100%;
  border:1px solid #03389a;
  box-sizing:border-box;
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
}

.calendar_table tbody td.no_class .num{
    opacity:0.5;
}

.calendar_table tbody td a{
    display:block;
    width:100%;
    height:100%;
    padding:10px 5px 5px 5px;
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
}

.calendar_table.nolink tbody td a{
    cursor:inherit;
    pointer-events:none;
}

.calendar_table tbody td a .num{
    display:block;
    margin-bottom:10px;
    text-align:center;
    font-size:14px;
    font-weight:500;
}

.calendar_table tbody td{
    height:130px;
    border-bottom:1px solid #d4d9e1;
    border-left:1px solid #d4d9e1;
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
}

.calendar_table tbody tr td:last-child{
    border-right:1px solid #d4d9e1;
}

.calendar_table tbody td.weekday .num{
    color:#606060;
}

.calendar_table tbody td.sunday .num{
    color:#f42d16;
}

.calendar_table tbody td.saturday .num{
    color:#1767e0;
}

.calendar_table .time_mark{
    display:block;
    margin-bottom:3px;
    padding:3px;
    font-size:12px;
    text-align:center;
    font-weight:400;
    border:1px solid #f8d6bc;
    border-radius:4px;
    color:#ff6f00;
    background:#ffeee1;
}

.calendar_table .title_instructor{
    display:block;
    margin-bottom:3px;
    padding:3px;
    font-size:12px;
    text-align:center;
    font-weight:400;
    border:1px solid #c99dff;
    border-radius:4px;
    color:#8b2dff;
    background:#f4ebff;
}

.calendar_table .small_instructor{
    display:block;
    padding:3px;
    font-size:12px;
    text-align:center;
    font-weight:400;
    border:1px solid #01bb59;
    border-radius:4px;
    color:#009d4a;
    background:#ecfff4;
}

.label_notice_area{
    padding-top:32px;
    text-align:center;
}

.label_notice_area li{
    display:inline-block;
    line-height:30px;
    font-size:14px;
    margin:0 10px;
    font-weight:400;
    color:#606060;
}

.label_notice_area li i.label{
    display:inline-block;
    width:7px;
    height:7px;
    margin-top:-2px;
    margin-right:7px;
    border-radius:50%;
    vertical-align:middle;
}

.label_notice_area li i.label.time{
    background:#ff6f00;
}

.label_notice_area li i.label.title_instructor{
    background:#8b2dff;
}

.label_notice_area li i.label.small_instructor{
    background:#009d4a;
}

.persent_mark{
    display:inline-block;
    height:30px;
    margin-left:10px;
    padding:0 12px;
    line-height:30px;
    font-size:14px;
    font-weight:300;
    background:#2f2e34;
    border-radius:4px;
    color:#fff;
}

.little_title_txt{
    display:block;
    font-size:16px;
    margin:20px 0;
    text-align:left;
    font-weight:400;
    color:#606060;
}

/*gride_table*/
.gride_table{
    width:100%;
}

.gride_table th{
    height:40px;
    vertical-align:middle;
    font-size:16px;
    padding:10px 10px;
    color:#606060;
    font-weight:400;
    line-height:20px;
    background:#f6f6f8;
    border-bottom:1px solid #d4d9e1;
    border-left:1px solid #d4d9e1;
    border-right:1px solid #d4d9e1;
}

.gride_table tr td{
    height:40px;
    padding:10px 10px;
    vertical-align:middle;
    font-size:16px;
    line-height:20px;
    color:#606060;
    font-weight:400;
    border-bottom:1px solid #d4d9e1;
}

.gride_table.pad5 tbody th,
.gride_table.pad5 tbody td{
    padding:5px 5px;
}

.gride_table tr:first-child th,
.gride_table tr:first-child td{
    border-top:1px solid #d4d9e1;
    border-bottom:1px solid #d4d9e1;
}

.gride_table tr{
    border-bottom:1px solid #d4d9e1;
}

.gride_table tr td{
    border-right:1px solid #d4d9e1;
}

.attendance_write_area{
    height:56px;
    padding:9px 20px;
    box-sizing:border-box;
    border-bottom:1px solid #d4d9e1;
}
.ingChk{
    height:107px;
}


.gride_table tr td .attendance_write_area:last-child{
    border-bottom:none;
}

.gride_table.noPad th,
.gride_table.noPad td{
    padding:0 0;
}

/* WriteTime_pop */
.writeTime_pop{
    width:500px;
    height:auto;
    padding-bottom:70px;
    position:absolute;
    top:-999px;
    left:50%;
    z-index:999;
    background:#fff;
    transform:translateX(-50%);
    -webkit-transition:all 0.5s ease;
    transition:all 0.5s ease;
    border-radius:7px;
    -webkit-box-shadow:7px 7px 12px 0px rgba(50, 50, 50, 0.5);
    -moz-box-shadow:7px 7px 12px 0px rgba(50, 50, 50, 0.5);
    box-shadow:7px 7px 12px 0px rgba(50, 50, 50, 0.5);
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;

}

.popLayer.on{
    top:1025px;
    -webkit-transition:all 0.5s ease;
    transition:all 0.5s ease;
}

.popLayer_head{
    width:100%;
    height:50px;
    padding:0 50px 0 20px;
    background:#fff;
    border-radius:7px 7px 0 0;
    border-bottom:1px solid #eff1f4;
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
}

.btn_popupClose{
    display:block;
    width:50px;
    height:50px;
    background:url(../img/icon_popclose.png) no-repeat center center;
    background-size:16px;
}

.popLayer_content{
    /*margin:20px;*/
    padding:40px 20px 40px 20px;
    /*background:#f8f8f9;*/
    background:#fff;
    border-radius:4px;
}

.popLayer_footer{
    bottom:0;
    left:0;
    width:100%;
    padding:15px 0;
    text-align:center;
    background:#fff;
    border-radius:0 0 7px 7px;
    border-top:1px solid #eff1f4;
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
}

/*scrollTable_area*/
.scrollTable_area{
    overflow-x:auto;
}

/*upload_list*/
.upload_list li{
    position:relative;
    width:50%;
    float:left;
    padding:0 43px 0 5px;
    margin:5px 0;
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
}

/*파일삭제 기능이 있을시*/
.upload_list li:nth-child(odd){
    padding-left:0px;
}

.upload_list li:nth-child(2n){
    padding-right:38px;
}

.upload_list li:nth-child(2n) button{
    right:0;
}

.upload_list li a{
    position:relative;
    display:block;
    width:100%;
    height:38px;
    padding:0 0 0 15px;
    line-height:38px;
    border-radius:4px 0 0 4px;
    color:#03389a;
    background:#f6f6f8;
    font-weight:400;
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
}

.upload_list li a:focus,
.upload_list li a:hover{
    background:#fafafd;
}

/*파일삭제 기능이 없을시*/
.upload_list li a.file{
    border-radius:4px;
    padding-right:52px;
    background:#f6f6f8 url(../img/icon_file_on.png) no-repeat right 12px center;
}

.upload_list li a.file:focus,
.upload_list li a.file:hover{
    background:#fafafd url(../img/icon_file_on.png) no-repeat right 12px center;
}

.upload_list li.file{
    padding:0 5px 0 5px;
}

.upload_list li.file:nth-child(odd) {
    padding-left:0px;
}

.upload_list li.file:nth-child(2n){
    padding-right:0;
}

.newMark{
    position:relative;
    padding-left:37px;
}

.newMark:before{
    position: absolute;
    display: block;
    content: 'New';
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    left: 0;
    display: block;
    width: auto;
    height: 20px;
    background: #1767e0;
    border-radius: 2px;
    font-size: 10px;
    font-weight: 200;
    color: #fff;
    line-height: 20px;
    text-align: center;
    padding: 0 6px;
}

.popup_review_wrapper{
    width:100%;
    height:100%;
    box-sizing:border-box;
    background:#fff;
}

.img_box{
    display:inline-block;
    width:auto;
    height:auto;
    font-size:16px;
    text-align:center;
    line-height:500px;
    background:#f6f6f8;
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
}

.img_box img{
    height:100%;
}

/*right_tab_menu*/
.right_tab_menu{
    width:100%;
    margin-bottom:24px;
}

.right_tab_menu li{
    float:left;
    width:auto;
    margin-right:60px;
}

.right_tab_menu li a{
    display:block;
    position:relative;
    font-size:18px;
    font-weight:500;
    color:#1e1e1e;
    padding-bottom:12px;
    opacity:0.6;
}

.right_tab_menu li.on a{
    font-weight:500;
    opacity:1.0;
}

.right_tab_menu li.on a:after{
    position:absolute;
    bottom:0;
    left:2px;
    display:block;
    content:'';
    width:98%;
    font-weight:700;
    height:2px;
    border-radius:5px;
    background:#5c5c5c;
}

/*total_box*/
.total_box table td{
    text-align:center;
}

/*layerpopup css 210202 추가*/
.layerPop {
    position: fixed;
    top: 150px;
    left: 50px;
    height: auto;
    display: flex;
    flex-direction: column;
    z-index: 99;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    max-height: 90vh;
}

.layerPop .layerPopCont {
    width: 100%;
    flex: 1;
    overflow: hidden;
    min-height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.layerPop .layerPopCont img {
    width: 100%;
    height: 100%;
    object-fit: fill;
    display: block;
}

.layerPop .layerPopBtm {
    display: flex;
    flex-wrap: wrap; /* 줄 바꿈 허용 */
    align-items: center;
    justify-content: space-between;
    min-height: 40px;
    background-color: #001F5F;
    padding: 0.4rem 0.7rem;
    width: 100%;
    box-sizing: border-box;
    gap: 8px; /* 요소 간 간격 */
}

.layerPop .layerPopBtm .notOpen {
    display: inline-flex;
    align-items: center;
    margin: 0;
    flex-grow: 1; /* 공간 확보 */
    min-width: 200px; /* 최소 너비 설정 */
}

.layerPop .layerPopBtm .notOpen label {
    color: #fff;
    font-weight: 300;
    font-size: clamp(14px, 3.5vw, 20px);
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: 5px;
    cursor: pointer;
    width: 100%;
    font-weight: 500;
}

.layerPop .layerPopBtm .notOpen input[type="checkbox"].cookieNm {
    width: clamp(14px, 2.8vw, 18px);
    height: clamp(14px, 2.8vw, 18px);
    margin: 0 8px 0 0;
    position: relative;
    cursor: pointer;
    vertical-align: middle;
    -webkit-appearance: checkbox;
    -moz-appearance: checkbox;
    appearance: auto;
    transform: scale(1.1);
    accent-color: #3b5998;
}

.layerPop .layerPopButtongroup {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin-top: auto;
    flex-wrap: wrap;
    flex-shrink: 0;
}

/* 닫기 버튼 스타일 */
.layerPop .layerPopButtongroup .layerPopClose {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff; /* 버튼 텍스트 색상 변경 */
    background-color: #001F5F; /* 버튼 배경색 변경 */
    border: 1px solid #fff;
    font-size: clamp(14px, 3.5vw, 20px);
    padding: 0.3em 0.8em;
    min-width: 3.5em;
    height: 2em;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s;
    border-radius: 4px;
    white-space: nowrap;
    text-align: center;
    font-weight: 500;
}
.layerPop .layerPopButtongroup .layerPopClose:hover {
    background-color: rgba(255, 255, 255, 0.2);
}

.layerPop .layerPopButtongroup .layerPopLink {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff; /* 버튼 텍스트 색상 변경 */
    background-color: #001F5F; /* 버튼 배경색 변경 */
    border: 1px solid #fff;
    font-size: clamp(14px, 3.5vw, 20px);
    padding: 0.3em 0.8em;
    min-width: 3.5em;
    height: 2em;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s;
    border-radius: 4px;
    white-space: nowrap;
    text-align: center;
    font-weight: 500;
}

.layerPop .layerPopButtongroup .layerPopLink:hover {
    background-color: rgba(255, 255, 255, 0.2);
}
/*
@media (max-width: 480px) {
    .layerPop .layerPopBtm {
        flex-direction: column;
        align-items: flex-start;
        padding: 0.4rem;
    }

    .layerPop .layerPopBtm .notOpen {
        margin-bottom: 6px;
        width: 100%;
    }

    .layerPop .layerPopButtongroup {
        justify-content: flex-start;
        width: 100%;
    }
}

@media (min-width: 481px) and (max-width: 768px) {
    .layerPop {
        width: 95%;
    }

    .layerPop .layerPopBtm {
        flex-wrap: wrap;
    }

    .layerPop .layerPopBtm .notOpen {
        margin-bottom: 0;
    }

    .layerPop .layerPopBtm .notOpen input[type="checkbox"].cookieNm {
        transform: scale(1.2);
    }

    .layerPop .layerPopButtongroup .layerPopClose,
    .layerPop .layerPopButtongroup .layerPopLink {
        padding: 0.25em 0.7em;
        min-width: 3em;
    }
}
*/

/*Error 2021-02-02 추가*/
.error_body{
    width:100%;
    height:100%;
    min-width:1200px;
    min-height:920px;
    background:#fff;
}

.error_body .error{
    position:relative;
    display:block;
    width:815px;
    margin:0 auto;
    top:50%;
    transform:translateY(-50%);
}

.error_body p{
    position:absolute;
    bottom:-30px;
    left:50%;
    transform:translate(-50%,50%);
    font-size:14px;
    line-height:20px;
    text-align:center;

}

/*2021-03-08 추가*/
.calendar_table{
    border-collapse:separate;
    border-spacing: 0;
}

.calendar_table thead th{
    border-top:1px solid #d4d9e1;
    border-bottom:1px solid #d4d9e1;
}

.calendar_table thead tr th:first-child{
    border-left:1px solid #d4d9e1;
}

.calendar_table thead tr th:last-child{
    border-right:1px solid #d4d9e1;
}

.popHeader{
    width:100%;
    height:50px;
    box-sizing:border-box;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    background:-moz-linear-gradient(left, #0049a2 0%, #0096f4 100%); /* FF3.6-15 */
    background:-webkit-linear-gradient(left, #0049a2 0%,#0096f4 100%); /* Chrome10-25,Safari5.1-6 */
    background:linear-gradient(to right, #0049a2 0%,#0096f4 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#0049a2', endColorstr='#0096f4',GradientType=1 ); /* IE6-9 */
    text-align: center;
    padding: 15px;
    color: white;
    font-weight: bold;
}

/* ===============================================
 * 검색영역 버튼 스타일 강제 주입
 */
.btn_search_important{
    display:inline-block !important;
    width:auto !important;
    margin-left:7px !important;
    padding:0 55px !important;
    height:46px !important;
    line-height:46px !important;
    font-size:16px !important;
    color:#fff !important;
    background:#03389a !important;
    font-weight:400 !important;
    border: 0 !important;
    border-radius:4px !important;
    box-sizing:border-box !important;
    -webkit-box-sizing:border-box !important;
    -moz-box-sizing:border-box !important;
    transition:all .2s linear !important;
}
.btn_reset_important{
    display: inline-block !important;
    width:auto !important;
    margin-left:7px !important;
    padding:0 55px !important;
    height:46px !important;
    line-height:46px !important;
    font-size: 16px !important;
    color:#fff !important;
    background:#03389a !important;
    font-weight: 400 !important;
    border: 0 !important;
    border-radius:4px !important;
    box-sizing: border-box !important;
    -webkit-box-sizing: border-box !important;
    -moz-box-sizing:border-box !important;
    transition: all .2s linear !important;
}