* {margin:0; padding:0; box-sizing:border-box; -webkit-box-sizing:border-box; -moz-box-sizing:border-box;}
em {font-style: normal;}
html{font-size: 10px;}
html,body{max-width: 100%; min-height: 100%;}
html{overflow-x: hidden; -webkit-text-size-adjust: none;}
body{-webkit-print-color-adjust:exact; background: #fff; font-family: 'Noto Sans KR', sans-serif; font-style: normal; font-size: 16px; font-weight: 400; color: #0f0f0f; line-height: 1.5; letter-spacing: -0.5px;}

ul, li, dl,dt,dd {margin:0;padding:0;list-style:none}
a{color:#0f0f0f;text-decoration:none;}
img {border: 0; font-size: 0; max-width: 100%; vertical-align: middle;}
h1, h2, h3, h4, h5, h6{font-size:1.8rem;font-family: 'Noto Sans KR', sans-serif;}
textarea, select{font-family: 'Jost', 'Noto Sans KR', sans-serif;font-size:1em}
input, button{margin:0;padding:0;font-family: 'Jost', 'Noto Sans KR', sans-serif;font-size:1em}
input[type="submit"], button{cursor:pointer}
table, tr, td { border-collapse: collapse;}
p{word-break: keep-all;}
select {border: none; outline: none;appearance: none; position: relative;background: no-repeat right/14px url(../img/select-arrow.png); padding:0 10px;}
.center {text-align: center;}

select 
  {
  -moz-appearance:none; /* Firefox */
  -webkit-appearance:none; /* Safari and Chrome */
  appearance:none;
}
select::-ms-expand {display:none}

/* header, footer */
header {background-color: #555555; height:80px; width:100%; overflow: hidden; position: relative; padding:0 55px;}
header h1 {position: absolute; left:55px; top:50%; transform: translateY(-50%);}
header h1 img {}
header h1 span {font-weight: 500; color:#fff; font-size:24px; display: inline-block; height:45px; line-height:45px; border-left:1px solid #7d7d7d; padding-left: 20px; margin-left: 20px;}

header .user-login-status {position: absolute; right:55px; top:50%; transform: translateY(-50%);}
header .user-login-status span.date {color: #a1a1a1; font-weight: 400; font-size: 16px;}
header .user-login-status em {color: #fff; font-weight: 400; font-size: 16px;}
header .user-login-status em b {font-size:18px;}
header .user-login-status a {color: #ffa300; margin-left: 15px;}
header .user-login-status a img {}
header .user-login-status a span {text-decoration: underline; text-underline-position: under;}

footer {border-top: 1px solid #ebebeb; text-align: center; padding-bottom: 90px;}
footer * {color:#a1a1a1; font-size:16px; font-weight:400;}
footer address {font-style: normal; margin:30px 0 5px 0;}

/*페이지 공통*/
.mt40 {margin-top: 40px;}
.mt20 {margin-top: 20px;}
.list-circle {padding-left:15px; position: relative;}
.list-circle::before {content: ''; display:inline-block; width:6px; height: 6px; border-radius:50%; background-color: #111; position: absolute; left:0; top:50%; transform: translateY(-50%);}
.content {}
.content .sub-title {color: #111; font-size: 28px; font-weight: 500; position: relative; margin:55px 0 40px 0;}
.content .sub-title a {padding:0 10px; line-height:38px; position: absolute; right:0; top:50%; transform: translateY(-50%); height:40px; border:1px solid #cccccc; border-radius: 4px; color:#111; font-size:16px; font-weight: 400;}
.content .sub-title a img {vertical-align: middle; margin-top: -5px; margin-left: 5px;}

.content .step-level {}
.content .step-level ul {display: flex; width:100%; border-bottom: 1px solid #003663;}
.content .step-level ul li {width:25%; flex-wrap: wrap; border:1px solid #ebebeb; height:90px; border-left:none; padding:18px 0 0 30px; }
.content .step-level ul li:first-child {border-left: 1px solid #ebebeb;}
.content .step-level ul li span {display: block; width:100%; color: #a1a1a1; font-size:16px; font-weight: 400;}
.content .step-level ul li b {display: block; width:100%; color: #111; font-size:20px; font-weight: 500;}
.content .step-level ul li.active {background-color: #003663; border-bottom: none;}
.content .step-level ul li.active b {color:#fff;}
.content-box {padding:50px 0;}
.content-box > h3 {color: #111; font-size: 24px; font-weight: 500; margin-bottom: 20px;}
.content-box > h3 p {font-size:16px; font-weight: 400; display: inline-block; margin-left: 20px;}
.bottom-btn {text-align: center; margin:50px 0 70px 0;}
button:hover {opacity: 0.9;}
.bottom-btn button + button {margin-left:10px;}
.normal-btn {height:50px; min-width:180px; background-color: #003663; color:#fff; font-size:18px; font-weight:500; text-align: center; display: inline-block; line-height: 50px; border:none; border-radius: 4px;}
.border-btn {height:50px; min-width:180px; background-color: #fff; color:#003663; font-size:18px; font-weight:500; text-align: center; display: inline-block; line-height: 48px; border-radius: 4px; border:2px solid #003663;}
.sbtn-normal {border:none; background-color: #157cb6; font-size:16px; color:#fff; font-weight:400; min-width:120px; height:40px; line-height: 40px; text-align: center; display: inline-block; border-radius: 4px;}
.sbtn-border {border:1px solid #cccccc; background-color: #fff; font-size:16px; color:#111; font-weight:400; min-width:120px; height:40px; line-height: 38px; text-align: center; display: inline-block; border-radius: 4px;}

button {vertical-align: middle;}
table {width: 100%; text-align: center;}
table tbody th {background-color: #f8f8f8; border:1px solid #ebebeb; color: #111; font-weight: 400; font-size: 14px; padding: 10px 0;}
table tbody td {padding:10px 5px; border:1px solid #ebebeb; color: #111; font-weight: 400; font-size: 14px; word-break: keep-all;}
table .align-left {text-align: left;}
select {border:1px solid #ebebeb; height:30px; min-width:70px;}

/* 스크롤바 */
::-webkit-scrollbar {
  width: 10px;
}
::-webkit-scrollbar-thumb {
  background-color: #999;
  border-radius: 10px;
  background-clip: padding-box;
  border: 2px solid transparent;
}
::-webkit-scrollbar-track {
  background-color: #eee;
  border-radius: 10px;
  box-shadow: inset 0px 0px 5px white;
}


/*컨텐츠 가이드라인*/
.inner-wrapper {max-width: 1024px; padding:0 10px; width: 100%; margin: 0 auto;}


/* 한줄 여러줄 ...처리 */
.text-row1 {display: inline-block; width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.text-row2 {display: inline-block; width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; white-space: normal; line-height: 1.2; height: 2.4em; text-align: left; word-wrap: break-word; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}

/* 모달창 */
#modal{
  display:none;
  position:fixed; 
  width:100%; height:100%;
  top:0; left:0; 
  background:rgba(0,0,0,0.3);
  z-index: 1010;
}
.modal-con{
  display:none;
  position:fixed;
  top:50%; left:50%;
  transform: translate(-50%,-50%);
  width: 1000px;
  border:1px solid #252525;
  background:#fff;
  z-index: 1020;
}
.modal-con .title{
  font-size:20px; 
  padding: 20px; 
  border-bottom:1px solid #252525;
  
}
.modal-con .con{
  font-size: 18px;
  font-weight: normal;
  padding: 10px;
  color: #222;
  text-align: center;
}
.modal-con .close{
  display:block;
  position:absolute;
  right:20px;
  top:20px;
}

.modal-con button.close {display: inline-block; position: inherit;}

.modal-con .btns {text-align: center; padding:20px 0;}

.modal-con h3 {color: #111; font-size: 24px; font-weight: 500; margin-bottom: 20px; text-align: left;}
.modal-con table {width: 100%; text-align: center;}
.modal-con table thead th {background-color: #f8f8f8; border:1px solid #ebebeb; color: #111; font-weight: 400; font-size: 16px; padding: 10px 0;}
.modal-con table tbody td {word-break: keep-all; padding:10px 5px; border:1px solid #ebebeb; color: #111; font-weight: 400; font-size: 16px;}
.result-tr {background-color: #fff9d4;}
.result-tr2 {background-color: #eef8f8;}
.modal-con table tbody td span {color: #ef2d2d;}
.modal-con .con.modal-scroll-con {max-height:70vh; overflow-y: scroll;}


.filetype {
  position: relative;
  display: inline-block;
  vertical-align: top;
  margin-right: 4px;
}

.filetype * {
  vertical-align: middle;
}

.filetype .file-text {
  position: relative;
  width: 350px;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  display: inline-block;
  height: 40px;
  background-color: #ecefef;
  margin: 0;
  border: 1px solid #cdd3d4;
  line-height: 40px;
  z-index: 10;
}

.filetype .file-select {
  position: absolute;
  top: 0;
  right: 0;
  width: 80px;
  overflow: hidden;
}

.filetype .file-select .input-file {
  width: 60px;
  filter: alpha(opacity=0);
  opacity: 0;
  height: 40px;
}

.filetype .file-text + .file-btn {
  display: inline-block;
  background-color: #003663;
  height: 40px;
  line-height: 38px;
  padding: 0 15px;
  color: #fff !important;
  cursor: pointer;
  margin-left: 4px;
}

button.file-btn {
border:none;
  display: inline-block;
  background-color: #003663;
  height: 40px;
  line-height: 38px;
  padding: 0 15px;
  color: #fff !important;
  cursor: pointer;
  margin-left: 4px;
}








