
body {  
	color:#1E1E1E; 
	font-size: 14px;
	font-family: 'Pretendard', 'Noto Sans KR';
	background:#F2F0EB;
	/* background:url(../images/bg_side.png) repeat-y;
	background-size:220px ; */
}

body.cke_editable {
	padding:10px !important;
}

a { text-decoration: none; }
.red { color: red; }
.sm-font{ font-size: 9px; }

#wrap {  }

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox  */
input[type='number'] {
  -moz-appearance: textfield;
}

#contents { padding-bottom:50px; margin-left:250px; position:relative; }

#content-container { padding:30px 0px; padding-top:65px; max-width: 2560px;  }
#content-container.single { padding-top:0px; }

.float-left { float:left; }
.float-right { float:right; }
.clear-both { clear: both; }
.overflow-auto { overflow: auto; }
.text-left { text-align: left !important; }
.text-right { text-align: right !important; }
.text-center { text-align: center !important; }
.width100p { width:100%; }
.reset { padding:0px; margin:0px; clear: both; }
.nowrap { white-space: nowrap;}

.ellipsis { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ellipsis2{
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box !important;
    -webkit-line-clamp: 2; 
    -webkit-box-orient: vertical;
} 
.ellipsis3{
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box !important;
    -webkit-line-clamp: 3; 
    -webkit-box-orient: vertical;
} 

.no-drag {
  -webkit-user-select: none; /* 크롬, 사파리 등 */
  -moz-user-select: none;    /* 파이어폭스 */
  -ms-user-select: none;     /* 인터넷 익스플로러 */
  user-select: none;         /* 표준 */
}

.green { color:#166D37;}


select { vertical-align: middle; font-family: 'Pretendard'; color:#444; height:24px; font-size:12px; border:solid 1px #ddd; border-radius: 2px; }
textarea { border:solid 1px #ddd; font-family: 'Pretendard'; font-size:12px; line-height: 1.4;  border-radius: 2px; }

.loading-container { position: fixed; top:0px; left:0px; width:100%; height:100%; z-index: 99999; background:rgba(0,0,0,0.5); }
.loading-container .indi { position: absolute; top:50%; left:50%; transform: translate(-50%,-50%); }
.loading-container .indi img { width:40px; }

.popup-container { position: fixed; width:100%; height:100%; top:0px; left:0px; display:none;  z-index: 1000; }
.popup-container .bg { position: fixed; background: #000; opacity: 0.2; filter:alpha(opacity=80); height: 100%; width:100%; }
.popup-container > iframe { position: absolute; top:50%; left:50%; width:600px; height:500px; transform: translate(-50%, -50%); background:#fff; border:solid 1px #166D37; border-radius:0px;  }
.popup-container .box { position: absolute; top:50%; left:50%; width:100%; max-width:900px; height:750px; transform: translate(-50%, -50%); background:#fff; border:solid 1px #166D37; border-radius:0px; 
  opacity: 0;
  transform: translate(-50%, -0%);
  transition: opacity 0.4s ease, transform 0.3s ease; }
.popup-container .box.active {
    opacity: 1;
    transform: translate(-50%, -50%); 
}
.popup-container .btnClose { position: absolute; font-size:24px; padding:10px; right:20px; top:10px; color:#999; }

.popup-body { background:none; }
#popup-wrap { padding:20px 15px 70px 15px; }
#popup-wrap h3 { color:#333; font-size:16px; margin-bottom:10px; }
#popup-wrap .form-style01 { padding:0px; border:none; }
#popup-wrap .form-style01 th { font-size:12px; }
#popup-wrap .form-style01 td { font-size:12px; }
#popup-wrap .list-style01 { padding:0px; border:none; }
#popup-wrap .list-style01 th { font-size:12px; }
#popup-wrap .list-style01 td { font-size:12px; }
#popup-wrap .search-container { padding:8px 10px; border-radius: 2px; }
#popup-wrap > .btn-container { position: fixed; left:0px; bottom:0px; padding:7px 0; width:100%; background:#eee; border-top:solid 1px #ddd; }

/* .popup_close_btn { position: absolute; width:100%; bottom:0px; left:0px; display:block; padding:10px 0; text-align: center; background: #0094f7; color:#fff; } */
.popup_close_btn { position: fixed; width:100%; bottom:0px; left:0px; display:block; padding:10px 0; text-align: center; border-top:solid 1px #eee; background: #fff; font-weight: bold;; }



.txt_idle { background:#438508; color:#fff; display:inline-block; padding:2px 5px; border-radius: 2px; }
.txt_comp { background:#999; color:#fff; display:inline-block; padding:2px 5px; border-radius: 2px; }

/*버튼*/
input { vertical-align: middle; font-family: 'Pretendard'; font-size:12px; }
input::placeholder, textarea::placeholder { color:#bbb; }
input[type=number], input[type=text], input[type=password], input[type=date], input[type=datetime-local] { font-family: 'Pretendard'; border:solid 1px #ddd; line-height: 20px; height:20px; border-radius: 2px; text-indent:5px;  }
input[type=button],input[type=submit] { color:#111; opacity: 0.8; filter:alpha(opacity=80); font-size:12px; margin:0px; padding:0px 8px !important; line-height: 22px; border:solid 1px #b4b3b3; border-radius: 2px; background:#eee; }
input[type=radio], input[type=checkbox] { padding:0px; margin:0px; }
input.small { line-height:19px; font-size:11px; color:#666; }
input.bic { line-height:26px; font-size:12px; color:#666; padding:0px 18px !important; min-width:70px; text-align: center;  }
input.black { background:#333; color:#fff; border:solid 1px #222; }
input.gray { background:#7d7d7d; color:#fff; border:solid 1px #666; }
input.red { background:#ed1c24; color:#fff; border:solid 1px #b31117; }
input.green { background: #459300 ; color:#fff; border:solid 1px #387601 ; }
input.green2 { background:#72d819; color:#111; border:solid 1px #60af1a; }

input.disabled { border:none;  }

input[type=radio].style1 { vertical-align: middle; appearance: none; display:none; }
input[type=radio].style1 + label { background:#eee; color:#333; display:inline-block; padding:4px 8px; border-radius: 3px; cursor: pointer; font-size:12px; }
input[type=radio].style1:checked + label { background:#000; color:#fff;  }

.bold { font-weight: bold; }

.login-container { width:500px; margin:0 auto; background:#fff; border:solid 1px #ddd; border-radius: 6px; box-shadow: 3px 3px 5px #ccc; position: relative; }
.login-container .inner { padding:10px 20px; }
.login-container label { display:block; margin-top:10px; margin-bottom:7px; font-size:13px; font-weight: bold; }
.login-container input { width:100%; height:30px; line-height: 30px; }
.login-container .btn-container { border-top:dotted 1px #ddd; padding:20px 0 20px 0; margin-top:20px; }
.login-container .btn-container .btn { width:100%; height:32px; line-height: 32px; padding-left:0px !important; padding-right:0px !important; }
.login-container .caption { position: absolute; bottom:100%; margin-bottom:30px; padding-left:5px; }
.login-container .caption p { margin-bottom: 3px; padding-left:2px; }
.login-container .caption b { font-size:40px; font-weight: 800; }
.login-info { width:500px; margin:0 auto; font-size:12px; text-align: center; margin-top:20px; color:#999;	padding-bottom:60px; }

header { position: relative; z-index: 20;}

nav { position: fixed; top:0px; right:0px;  background:#fff; z-index: 100;  }
nav .menu-close { display:none; }
nav .main-menu { display:flex; flex-direction:column; align-items: stretch; }
nav .main-menu > li { flex-grow: 1; align-items: center; writing-mode: vertical-rl;  border-bottom:solid 1px #000; font-weight: 600;  white-space: nowrap; }
nav .main-menu > li > a { display:block; width:49px; line-height: 49px; text-align: center;  padding:15px 0; border-left:solid 1px #000;  }
nav .main-menu > li > a:hover { background: #e8f4ec; color:#166D37 }
nav .main-menu > li.selected > a { background: #166D37; color:#fff; }
nav .main-menu > li.m { display:none; }
nav .sub-menu { position: fixed; writing-mode:horizontal-tb ;  background:#fff; top:0px; right:50px; height:100%; width:0px; border-left:solid 1px #000; display:none; overflow-y: auto !important; }
nav .sub-menu::-webkit-scrollbar { width: 4px; }
nav .sub-menu::-webkit-scrollbar-thumb { background: rgba(35, 24, 21, 0.15); border-radius: 3px; }
nav .sub-menu::-webkit-scrollbar-track { background: rgba(35, 24, 21, 0.05); }
nav .sub-menu::-webkit-file-upload-button { }
nav .sub-menu li a { display:block; padding:20px; border-bottom:solid 1px #000;  }
nav .sub-menu li a .c { display:inline-block; background:#A9A9A9; color:#fff; font-size:12px; font-weight: 300; padding:3px 10px; }
nav .sub-menu li a .t { display:block; margin-top:10px; }
nav .sub-menu li a:hover { background: #e8f4ec;}
nav .sub-menu li a.selected { background: #e8f4ec; }


aside { position:absolute; top:40px; left:0px; z-index: 100; }
aside .logo { margin-left:50px; }
aside ul { position: absolute; top:0px; left:270px; display:flex; }
aside ul li { white-space: nowrap; padding-right:40px; font-size:16px; font-weight: 600; }
aside ul li.selected { color:#166D37 }
aside .menu-trigger { position: absolute; top:0px; right:20px; display:none; }


main { position: relative; display:flex; width:100%; padding-top:150px; z-index: 10; }
main .side { position: relative; flex-basis: 395px; flex-shrink: 0; padding-right:60px; text-align: right; }
main .side .img1 { position: absolute; margin-top:200px; top:0px; right:60px; }
main .content { margin-right:100px; max-width:920px; line-height: 1.5; }
main.one { display:block; }
main.one .content { max-width:1315px; } 

footer { clear:both; background:#fff; font-size:14px; font-weight: 600; margin-top:80px;}
footer .inner { margin-left:395px; margin-right:100px; display:flex; justify-content: space-between; align-items: center; height:80px; }
footer .slogan {  }
footer .copyright { }


/* 버튼 기본 상자 */
.menu-trigger {
  position: relative;
  width: 25px;
  height: 15px;
  background: none;
  border: none;
  cursor: pointer;
}

/* 중앙 가로줄 */
.menu-trigger span,
.menu-trigger span::before,
.menu-trigger span::after {
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #333;
  border-radius: 4px;
  transition: all 0.3s ease-in-out;
}

/* 세 줄 위치 정렬 */
.menu-trigger span {
  top: 50%;
  transform: translateY(-50%); /* 정확히 세로 중앙 배치 */
}

.menu-trigger span::before {
  content: '';
  top: -7px; /* 위로 9px 올림 */
}

.menu-trigger span::after {
  content: '';
  top: 7px; /* 아래로 9px 내림 */
}

/* ----------------------------------
   클릭되어 .active 클래스가 붙었을 때 (X자 변신)
---------------------------------- */

/* 가운데 줄은 투명하게 숨김 */
.menu-trigger.active span {
  background-color: transparent;
}

/* 윗줄을 45도 회전하고 Y축 위치 조절 */
.menu-trigger.active span::before {
  transform: translateY(79px) rotate(45deg);
}

/* 아랫줄을 -45도 회전하고 Y축 위치 조절 */
.menu-trigger.active span::after {
  transform: translateY(-7px) rotate(-45deg);
}


#popup-layer { position: fixed; z-index: 800; top:150px; left:0px; width:100%; }
#popup-layer > .inner { padding:0px 0px 60px 0px;  }
#popup-layer ul { display:table; margin:0 auto; text-align: center; white-space: nowrap; }
#popup-layer ul li { display:table-cell; text-align: center; padding:0 20px; }
#popup-layer ul li .box { margin:0 auto; max-width:470px; }
#popup-layer ul li .box img { max-width: 100%; border-top-left-radius:20px; border-top-right-radius:20px;  }
#popup-layer ul li .box .btns { border-bottom-left-radius:20px; border-bottom-right-radius:20px; box-shadow: 0 1px 0 #ECECEC, 1px 0 0 #ECECEC, -1px 0 0 #ECECEC; }
#popup-layer ul li .box .btns.pc { background: #fff; font-size:14px; color:#5D5D5D; line-height: 48px; height:48px; padding:0 20px; }
#popup-layer ul li .box .btns.pc .today { float:left; /*background: url(../images/popup_check.svg) no-repeat left center; padding-left:25px;*/ }
#popup-layer ul li .box .btns.pc .close { float:right; /*background: url(../images/popup_btn_close2.svg) no-repeat right center; padding-right:25px; */}
#popup-layer ul li .box .btns.mobile  { position: relative;  background: #fff; font-size:14px; color:#5D5D5D; line-height: 60px; height:60px; padding:0 0px; display:none; }
#popup-layer ul li .box .btns.mobile .today { float:left; width:50%; text-align: center; box-shadow: 1px 0 0 #ECECEC; font-size:16px; font-weight: 700; }
#popup-layer ul li .box .btns.mobile .detail { float:right; width:50%; text-align: center; font-size:16px; font-weight: 700; }
#popup-layer ul li .box .btns.mobile .close { position: absolute; left:50%; bottom:-50px; margin-left:-22px;  }
