/* @import url(reset.css); */
@import url(font.css);
html {
  font-size: 62.5%;
  height: 100%;
  font-family: "Roboto", "Noto Sans", sans-serif;
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: "Roboto", "Noto Sans", sans-serif;
  color: #000;
  letter-spacing: -0.5px;
  font-size: 1.4rem;
}
body {
  font-size: 1.4rem;
  height: 100%;
  line-height: 1.2;
  position: relative;
}
button {
  border: 0 none;
  cursor: pointer;
  background: none;
  font-size: 1.4rem;
  font-style: normal;
  letter-spacing: 0;
}
button:hover {
  opacity: 0.8;
}
a,
a:active {
  text-decoration: none;
}
a:focus {
  outline-offset: -1px;
}
img {
  max-width: 100%;
  vertical-align: top;
}
ul,
ol,
li {
  list-style: none;
}
input {
  border: 0 none;
}
/* input { -webkit-appearance: none; -moz-appearance: none; appearance: none; border: 0 none; } */
textarea::placeholder,
input::placeholder {
  color: #b8b8b8;
  opacity: 1;
  font-weight: 400;
  letter-spacing: 0;
}
input::-moz-placeholder,
input::-webkit-input-placeholder {
  color: #b8b8b8;
  opacity: 1;
  font-weight: 400;
  letter-spacing: 0;
}
input:focus {
  outline: 1px solid #397ffe;
}
input[readonly] {
  background: #ebebeb !important;
  color: #7c7c7c;
  box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.1) inset;
  outline: none;
}
input.alert {
  border: 1px solid #e00909 !important;
}
select {
  appearance: none;
}
button:disabled {
  opacity: 0.5;
}

table .input-box,
table select {
  max-width: 490px !important;
  width: 100% !important;
}
table [class*="icon-stat"] {
  vertical-align: middle;
  margin-right: 3px;
}

.hidden,
caption {
  position: absolute;
  clip: rect(0 0 0 0);
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
}

.custom-scl::-webkit-scrollbar {
  width: 6px;
}
.custom-scl::-webkit-scrollbar-thumb {
  background: #ccc;
}
.custom-scl::-webkit-scrollbar-track {
  background: #ededed;
}

.flex {
  display: flex;
  gap: 5px;
}
.center {
  text-align: center;
}
.f-end {
  justify-content: end !important;
}
.f-center {
  justify-content: center !important;
}
.m-right {
  margin-left: auto;
}
.m-center {
  margin: 0 auto;
}
.divider {
  height: 1px;
  background: #e1e1e1;
  margin: 13px 0 13px 0;
}

.color-red1 {
  color: #ed0000 !important;
}
.color-red2 {
  color: #ff3c11 !important;
}
.color-gray1 {
  color: #747474 !important;
}
.color-black1 {
  color: #111 !important;
}
.color-blue1 {
  color: #0141e4 !important;
}
.color-blue2 {
  color: #0068b3 !important;
}
.color-gray1 {
  color: #a9a9a9 !important;
}
.color-green1 {
  color: #47c83e !important;
}
.color-green2 {
  color: #8cc63f !important;
}

.bg-color1 {
  background: #b1e3e7;
}
.bg-color2 {
  background: #d9d9d9;
}
.bg-color3 {
  background: #cbe9ff;
}
.bg-color4 {
  background: #99ccff;
}
.bg-color5 {
  background: #ccffcc;
}
.bg-color6 {
  background: #ffff99;
}
.bg-color7 {
  background: #99cc00;
}
td.bg-color1,
td.bg-color2 {
  border-top-color: #cdcdcd !important;
}

.input-box {
  position: relative;
}
.input-box input {
  background: #fff;
  display: block;
  width: 100%;
  height: 32px;
  padding: 0 14px;
  border-radius: 3px;
  border: 1px solid #d0d0d0;
  font-size: 14px;
}
.input-box input .input-box .icon-alert {
  position: absolute;
  top: 0;
  right: 10px;
  top: 12px;
}

.input-alert {
  color: #f60000;
  font-size: 14px;
  font-weight: 400;
  margin-top: 8px;
}

.icon-circle1 {
  border: 2px solid #c53333;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: inline-block;
}
.icon-search {
  background: url(../images/icon-search.png) no-repeat 0 0;
  width: 15px;
  height: 15px;
  display: inline-block;
}
.icon-search2 {
  background: url(../images/icon-search2.png) no-repeat 0 0;
  width: 20px;
  height: 20px;
  display: inline-block;
  filter: invert(1);
}
.icon-detail {
  background: url(../images/icon-agree.png) no-repeat center;
  width: 20px;
  height: 20px;
  display: inline-block;
}
.icon-msg {
  background: url(../images/icon-msg.png) no-repeat center;
  width: 20px;
  height: 17px;
  display: inline-block;
  vertical-align: middle;
}
.icon-login {
  background: url(../images/icon-login.png) no-repeat center;
  width: 15px;
  height: 20px;
  display: inline-block;
  vertical-align: middle;
}
.icon-alert {
  background: url(../images/icon-alert.png) no-repeat 0 0;
  width: 18px;
  height: 18px;
  display: inline-block;
}
.icon-key {
  background: url(../images/icon-key.png) no-repeat 0 0;
  width: 17px;
  height: 17px;
  display: inline-block;
}
.icon-main {
  background: url(../images/icon-main.png) no-repeat 0 0;
  width: 18px;
  height: 18px;
  display: inline-block;
}
.icon-send {
  background: url(../images/icon-send.png) no-repeat 0 0;
  width: 17px;
  height: 14px;
  display: inline-block;
}
.icon-excel {
  background: url(../images/icon-excel.png) no-repeat 0 0;
  width: 18px;
  height: 18px;
  display: inline-block;
}
.icon-upload {
  background: url(../images/icon-upload.png) no-repeat 0 0;
  width: 14px;
  height: 14px;
  display: inline-block;
}
.icon-stat-close {
  background: url(../images/icon-close3.png) no-repeat 0 0;
  width: 21px;
  height: 21px;
  display: inline-block;
}
.icon-stat-open {
  background: url(../images/icon-open1.png) no-repeat 0 0;
  width: 21px;
  height: 21px;
  display: inline-block;
}
.icon-departure {
  background: url(../images/icon-departure.png) no-repeat 0 0;
  width: 39px;
  height: 28px;
  display: inline-block;
}
.icon-arrival {
  background: url(../images/icon-arrival.png) no-repeat 0 0;
  width: 29px;
  height: 33px;
  display: inline-block;
}
.icon-todo {
  background: url(../images/icon-todo.svg) no-repeat 0 0;
  width: 21px;
  height: 26px;
  display: inline-block;
}
.icon-month-work {
  background: url(../images/icon-month-work.svg) no-repeat 0 0;
  width: 23px;
  height: 24px;
  display: inline-block;
}
.icon-booking1 {
  background: url(../images/icon-booking1.svg) no-repeat 0 0;
  width: 20px;
  height: 21px;
  display: inline-block;
}
.icon-booking2 {
  background: url(../images/icon-booking2.svg) no-repeat 0 0;
  width: 24px;
  height: 22px;
  display: inline-block;
  background-size: 24px auto;
}

[class*="icon-status"] {
  width: 12px;
  height: 12px;
  background: #9a9a9a;
  display: inline-block;
  overflow: hidden;
  border-radius: 50%;
}
.icon-print {
  background: url(../images/icon-print.png) no-repeat 0 0;
  width: 15px;
  height: 15px;
  display: inline-block;
}
.icon-print2 {
  background: url(../images/icon-print2.png) no-repeat 0 0;
  width: 18px;
  height: 17px;
  display: inline-block;
}
.icon-status1 {
  background: #9a9a9a;
}
.icon-status2 {
  background: #0068b3;
}
.icon-status3 {
  background: #8cc63f;
}
.icon-status4 {
  background: #ff795b;
}
.icon-status5 {
  background: #eb0303;
}
.icon-status6 {
  background: #397ffe;
}
.icon-status7 {
  background: #ff3c11;
}
.icon-status8 {
  background: #47c83e;
} /*#86e57f 연한초록*/
.icon-status9 {
  background: #F3FC00;
}
.icon-status10 {
  background: #ff795b;
}
.icon-status101,
.icon-status102 {
  width: 12px;
  height: 12px;
  border-radius: 0;
}
.icon-status101 {
  background: #B0CBFF;
}
.icon-status102 {
  background: #d9d9d9;
}

[class*="line-btn"] {
  color: #0068b3;
  border: 1px solid #0068b3;
  border-radius: 4px;
  font-weight: 500;
  font-size: 14px;
  min-height: 32px;
  padding: 0 15px;
  line-height: 32px;
  text-align: center;
  background: #fff;
  font-family: "Noto Sans", sans-serif;
}
.line-btn2 {
  color: #fff;
  border-color: #fff;
  background: transparent;
}
[class*="common-btn"] {
  color: #fff;
  border-radius: 4px;
  border: 1px solid #525c6b;
  background: #525c6b;
  font-family: "Noto Sans", sans-serif;
  font-size: 14px;
  min-height: 32px;
  padding: 0 12px;
  line-height: 30px;
  white-space: nowrap;
}
a[class*="common-btn"] {
  display: flex;
  align-items: center;
}
a[class*="common-btn"]:hover {
  opacity: 0.8;
}
[class*="line-btn"] [class*="icon"],
[class*="common-btn"] [class*="icon"] {
  vertical-align: middle;
  margin-right: 5px;
  margin-top: -2px;
}
[class*="common-btn"].line2 {
  line-height: 1;
  height: 38px;
}
.common-btn1 {
  background: #0068b3;
  border-color: #0068b3;
}
.common-btn2 {
  background: #8fcd3e;
  border-color: #8fcd3e;
}
.common-btn3 {
  background: #75a03c;
  border-color: #75a03c;
  border-radius: 0;
  min-height: 36px;
  font-weight: 300;
}
.common-input1 {
  color: #000;
  border-radius: 3px;
  border: 1px solid #d0d0d0;
  background: #fff;
  min-height: 32px;
  padding: 0 10px;
}
.common-select1 {
  color: #383838;
  border-radius: 3px;
  border: 1px solid #d0d0d0;
  padding: 0 40px 0 14px;
  background: url(../images/icon-select-arrow.png) no-repeat 90% center;
}
.common-search1 {
  color: #383838;
  border-radius: 3px;
  border: 1px solid #d0d0d0;
  padding: 0 40px 0 14px;
}
.plus-btn1,
.minus-btn1 {
  width: 32px;
  height: 32px;
  display: inline-block;
  font-size: 0;
  flex: 0 0 32px;
  line-height: 0;
  text-indent: -999px;
  background: #999;
  border-radius: 4px;
  position: relative;
}
.plus-btn1:hover,
.minus-btn1:hover {
  opacity: 1;
}
.plus-btn1:hover .btn-tooltip,
.minus-btn1:hover .btn-tooltip {
  display: block;
}
.plus-btn1 .btn-tooltip:after,
.minus-btn1 .btn-tooltip:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 5px;
  border-top: 4px solid #fff;
  border-left: 3px solid transparent;
  border-right: 3px solid transparent;
}
.plus-btn1 .btn-tooltip,
.minus-btn1 .btn-tooltip {
  background: #fff;
  position: absolute;
  text-indent: 0;
  left: 10px;
  bottom: 30px;
  white-space: nowrap;
  border-radius: 3px;
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.3);
  font-size: 12px !important;
  min-height: auto !important;
  line-height: 1 !important;
  padding: 5px 7px !important;
  display: none;
  z-index: 1;
}
.plus-btn1:after,
.plus-btn1:before,
.minus-btn1:after {
  content: "";
  position: absolute;
  border-radius: 2px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
}
/* .plus-btn1:after,
.plus-btn1:before,
.minus-btn1:after { content: ''; position: absolute; border-radius: 2px;  top:50%; left:50%; transform: translate(-50%,-50%); background: #a0e940;} */
.plus-btn1:after {
  width: 2px;
  height: 12px;
}
.minus-btn1:after,
.plus-btn1:before {
  height: 2px;
  width: 12px;
}

.ui-icon.ui-icon-minus,
.ui-icon.ui-icon-plus {
  position: absolute;
  width: 16px;
  height: 16px;
  border: 2px solid #111;
  border-radius: 3px;
  background: none;
}

.pq-grid-cell .ui-icon.ui-icon-minus,
.pq-grid-cell .ui-icon.ui-icon-plus {
  position: relative;
}

.ui-icon.ui-icon-plus:after,
.ui-icon.ui-icon-plus:before,
.ui-icon.ui-icon-minus:after {
  content: "";
  position: absolute;
  border-radius: 2px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #111;
}
.ui-icon.ui-icon-plus:after {
  width: 2px;
  height: 8px;
}
.ui-icon.ui-icon-minus:after,
.ui-icon.ui-icon-plus:before {
  height: 2px;
  width: 8px;
}

.close-btn2,
.plus-btn2,
.plus-btn3,
.minus-btn2 {
  width: 21px;
  height: 21px;
  display: inline-block;
  border-radius: 2px;
  text-indent: -999px;
  overflow: hidden;
}
.minus-btn2 {
  background: #ababab url(../images/icon-minus-w.png) no-repeat center;
}
.plus-btn2 {
  background: #ababab url(../images/icon-plus-w.png) no-repeat center;
}
.plus-btn3 {
  background: url(../images/icon-plus2.png) no-repeat center;
  width: 16px;
  height: 16px;
}
.close-btn2 {
  background: #2d2d2d url(../images/icon-close2.png) no-repeat center;
}

.date-btn {
  background: url(../images/icon-date.png) no-repeat 95% center;
  width: 120px;
  text-align: left !important;
  padding-right: 32px;
}

.common-radio1,
.common-radio2,
.common-check1 {
  cursor: pointer;
  display: inline-flex;
  vertical-align: middle;
  gap: 7px;
  line-height: 20px;
}
.common-check1 input[type="checkbox"] {
  display: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.common-check1 input[type="checkbox"] + i {
  width: 20px;
  height: 20px;
  border: 1px solid #c3c3c3;
  display: inline-block;
  border-radius: 2px;
  vertical-align: top;
}
/* .common-check1:hover input[type=checkbox]:not(:disabled) + i { opacity: 0.8;}
.common-check1:hover input[type=checkbox]:not(:disabled)  + i, */
.common-check1 input[type="checkbox"]:checked + i {
  border-color: #232323;
  background: #232323 url(../images/icon-checked.png) no-repeat center;
}

.common-check1 input[type="checkbox"]:disabled + i {
  background: #f4f4f4;
  cursor: default;
}
.common-check1 input[type="checkbox"]:checked:disabled + i {
  background: #b5b5b5 url(../images/icon-checked-w.png) no-repeat center;
  cursor: default;
  border-color: #b5b5b5;
}

.common-radio1 input[type="radio"] {
  display: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.common-radio1 input[type="radio"] + i {
  width: 22px;
  height: 22px;
  background: #bfbfbf;
  display: inline-block;
  border-radius: 50%;
  vertical-align: top;
  position: relative;
}
.common-radio2:hover input[type="radio"] + i,
.common-radio1:hover input[type="radio"] + i {
  opacity: 0.8;
}
.common-radio1 input[type="radio"]:checked + i {
  background: #dddddd;
}
.common-radio1 input[type="radio"]:checked + i:after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  left: 6px;
  top: 6px;
  background: #0068b3;
  border-radius: 50%;
}

.common-radio2 input[type="radio"] {
  display: none;
}
.common-radio2 input[type="radio"] + i {
  width: 22px;
  height: 22px;
  background: #bfbfbf;
  display: inline-block;
  border-radius: 50%;
  vertical-align: top;
  position: relative;
}
.common-radio2 input[type="radio"]:checked + i {
  border-color: #232323;
  background: #232323 url(../images/icon-checked.png) no-repeat center;
}

.common-textarea {
  color: #000;
  border-radius: 3px;
  border: 1px solid #d0d0d0;
  background: #fff;
  min-height: 34px;
  padding: 10px;
}

.dropdown-box {
  display: inline-block;
  position: relative;
  font-size: 14px;
  min-width: 100px;
}
.dropdown-box .dropdown-toggle {
  display: flex;
  align-items: center;
  width: 100%;
  height: 40px;
  font-weight: 400;
  cursor: pointer;
  font-size: 22px;
  color: #000;
  padding: 0 17px;
  border: 1px solid transparent;
  border-radius: 5px 5px 0 0;
  border-bottom: 0 none;
  transition: border 0.3s;
}
.dropdown-box .dropdown-list {
  position: absolute;
  left: 0;
  right: 0;
  background: #fff;
  z-index: 1;
  display: none;
  overflow-y: auto;
  border: 1px solid #c2c2c2;
  border-top: 0 none;
  border-radius: 3px;
  text-align: left;
}
.dropdown-box .dropdown-item {
  color: #646464;
  line-height: 32px;
  padding: 0 24px;
  cursor: pointer;
}
.dropdown-box .dropdown-item:hover {
  background: #e4edf8;
}

.dropdown-box.type1 {
  font-size: 15px;
  width: 255px;
}
.dropdown-box.type1 .dropdown-toggle {
  height: 56px;
  font-weight: 700;
  font-size: 22px;
  color: #000;
  padding: 0 25px 0 17px;
  border: 1px solid transparent;
  border-radius: 5px 5px 0 0;
  border-bottom: 0 none;
  line-height: 1;
}
.dropdown-box.type1 .dropdown-toggle:before {
  content: "";
  position: absolute;
  right: 10px;
  top: 19px;
  width: 20px;
  height: 20px;
  background: url(../images/icon-select-arrow2.png) no-repeat center;
}
.dropdown-box.type1 .dropdown-list {
  font-weight: 500;
  border-radius: 0 0 5px 5px;
}
.dropdown-box.type1 .dropdown-list:before {
  content: "";
  position: absolute;
  top: 0;
  left: 2px;
  right: 2px;
  height: 1px;
  background: #c2c2c2;
}
.dropdown-box.type1 .dropdown-item {
  color: #494949;
  line-height: 38px;
  padding: 0 30px;
}
.dropdown-box.type1 .dropdown-item:first-child {
  padding-top: 3px;
}
.dropdown-box.type1 .dropdown-item:last-child {
  padding-top: 3px;
}
.dropdown-box.type1 .dropdown-toggle.open {
  border-color: #c2c2c2;
  background: #fff;
}

.ui-multiselect,
select {
  position: relative;
  min-width: 84px;
  height: 32px;
  font-weight: 400;
  font-size: 14px;
  color: #000;
  padding: 0 25px 0 10px !important;
  border: 1px solid #d0d0d0;
  border-radius: 3px;
  background: url(../images/icon-select-arrow3.png) no-repeat 100% center;
  background-size: 24px;
}
/* .dropdown-box.type2 { min-width: 90px;}
.dropdown-box.type2 .dropdown-toggle { height: 40px; font-weight: 400; font-size: 14px; color: #383838;  padding: 0 16px ; border: 1px solid #d0d0d0; border-radius: 3px;  }
.dropdown-box.type2 .dropdown-toggle:before { content: ''; position: absolute; right: 10px; height: 100%; top: 0; width: 20px; background: url(../images/icon-select-arrow.png) no-repeat center; }
.dropdown-box.type2 .dropdown-list { box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, 0.10); }
.dropdown-box.type2 .dropdown-item { padding: 0 16px; }
.dropdown-box.type2 .dropdown-toggle.open { border-color: #397FFE;}
.dropdown-box.type2 .dropdown-toggle.open:before { filter:invert(38%) sepia(83%) saturate(1904%) hue-rotate(206deg) brightness(101%) contrast(101%)} */

.search-box1 {
  display: flex;
  gap: 3px;
}
.search-box1 .common-input1 {
  background: #fbfbfb;
  width: 150px;
}
.search-box1 .common-btn1 {
  display: flex;
  align-items: center;
  font-weight: 500;
}

.search-box2 {
  display: flex;
  gap: 10px;
  width: 208px;
  position: relative;
}
.search-box2 .common-input1 {
  width: 100%;
  padding-right: 32px;
}
.search-box2 .document-btn1,
.search-box2 .search-btn1 {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 35px;
  background: url(../images/icon-search2.png) no-repeat center;
  background-size: 16px auto;
  z-index: 1;
}
.search-box2 .document-btn1 {
  background-image: url(../images/icon-document.png);
}

.upload-box1 {
  display: flex;
  gap: 3px;
}
.upload-box1 .common-input1 {
  background: #fbfbfb url(../images/icon-added-file.png) no-repeat 95% center;
  padding: 7px 10px;
}
.upload-box1 .common-btn1 {
  background: #2d2d2d;
}

.upload-box2 {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: center;
}
.upload-box2 .common-input1 {
  background: #fbfbfb url(../images/icon-added-file.png) no-repeat 95% center;
  padding: 7px 35px 7px 10px;
  width: fit-content !important;
}
/* .upload-box2 .upload-label { margin: 10px 0; } */
.upload-box2 + .upload-label {
  margin: 10px 0;
}
.label-list {
  display: flex;
  flex-wrap: wrap;
  gap: 7px 15px;
  padding: 10px 0;
}

.inner .divider {
  margin: 13px -24px 15px -24px;
}
.inner .component-menu-wrap + .divider {
  margin-top: 0;
  margin-bottom: 10px;
}

.wrapper {
  height: calc(100vw - (100vw - 100%));
  min-width: 1200px;
  min-height: 800px;
}
.wrapper > [class*="-wrap"] {
  height: 100%;
}
.main-wrap {
  display: flex;
  background: #f1f1f1;
  flex-wrap: nowrap;
}
.main-wrap > .content-wrap {
  flex: 1;
}
.main-wrap > .content-wrap > .shadow-box > .component-box {
  height: 100%;
}
.side-bar {
  position: relative;
  width: 245px;
  flex: 0 0 245px;
  background: #fff;
  box-shadow: 2px 0px 10px 0px rgba(0, 0, 0, 0.08);
  transition: 0.3s;
  min-height: 100%;
}
.content-wrap {
  flex: 1;
  width: calc(100% - 245px);
}

.side-bar .btn-bar-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 21px;
  height: 77px;
  position: absolute;
  left: 100%;
  top: 117px;
  background: url(../images/icon-snb-btn01.png) no-repeat 100% 0;
  transition: 0.3s;
}
.side-bar .btn-bar-toggle i {
  display: block;
  background: url(../images/icon-snb-polygon.png) no-repeat;
  width: 10px;
  height: 13px;
  transition: transform 0.3s;
}
.side-bar.small .btn-bar-toggle i,
.side-bar .btn-bar-toggle:hover i {
  filter: contrast(3);
}
.side-bar .btn-bar-toggle:hover {
  transform: translateY(-3px);
}
.side-bar.small .btn-bar-toggle i {
  transform: scaleX(-1);
}

.side-bar .logo {
  margin: 10px auto;
  width: fit-content;
}
.side-bar .user-info {
  margin: 18px 15px 0 15px;
}
.user-info {
  display: flex;
  gap: 13px;
}
.user-info .user-img {
  width: 46px;
  height: 46px;
  flex: 0 0 46px;
  overflow: hidden;
  overflow: hidden;
}
.user-info .user-name {
  font-size: 20px;
  font-weight: 500;
}
.user-info .user-name p {
  font-size: 14px;
  font-weight: 400;
}

.user-menu {
  display: flex;
  gap: 7px;
  margin: 22px 12px 22px 15px;
}
.user-menu button {
  flex: 1;
  line-height: 28px;
}
.user-menu button:before {
  content: "";
  width: 100%;
  height: 100%;
  display: none;
}
.user-menu .btn-mypage:before {
  background: url(../images/icon-mypage.png) no-repeat center;
}
.user-menu .btn-logout:before {
  background: url(../images/icon-logout.png) no-repeat center;
}

.gnb {
  margin: 42px 15px 15px 15px;
}
.gnb > li + li {
  margin-top: 15px;
}
.gnb > li > a {
  display: flex;
  width: 100%;
  gap: 8px;
  font-size: 15px;
  color: #838383;
  font-weight: 500;
  align-items: center;
  border-radius: 2px;
  transition: 0.3s background, 0.3s box-shadow;
}
.gnb > li > a span {
  color: inherit;
  white-space: nowrap;
  letter-spacing: 0;
  font-size: 16px;
}
.gnb > li > a i {
  flex: 0 0 30px;
}
[class*="icon-gnb"] {
  display: inline-block;
  width: 30px;
  height: 30px;
  border-radius: 4px;
  background-color: #ededed;
  background-repeat: no-repeat;
  background-position: center;
  vertical-align: middle;
}
.icon-gnb0 {
  background-image: url(../images/icon-gnb00.svg);
}
.icon-gnb1 {
  background-image: url(../images/icon-gnb01.svg);
}
.icon-gnb2 {
  background-image: url(../images/icon-gnb02.svg);
}
.icon-gnb3 {
  background-image: url(../images/icon-gnb03.svg);
}
.icon-gnb4 {
  background-image: url(../images/icon-gnb04.svg);
}
.icon-gnb5 {
  background-image: url(../images/icon-gnb05.svg);
}
.icon-gnb6 {
  background-image: url(../images/icon-gnb06.svg);
}
.icon-gnb7 {
  background-image: url(../images/icon-gnb07.svg);
}
.icon-gnb8 {
  background-image: url(../images/icon-gnb08.svg);
}
.icon-gnb9 {
  background-image: url(../images/icon-gnb09.svg);
}

.gnb > li.on > a,
.gnb > li > a:hover {
  color: #fff;
  background: #0068b3;
  box-shadow: 0 0 0 5px #0068b3;
}
.gnb > li.on > a [class*="icon-gnb"],
.gnb > li > a:hover [class*="icon-gnb"] {
  background-color: #002a48;
}
.gnb > li.on .icon-gnb0,
.gnb > li > a:hover .icon-gnb0 {
  background-image: url(../images/icon-gnb00-on.svg);
}
.gnb > li.on .icon-gnb1,
.gnb > li > a:hover .icon-gnb1 {
  background-image: url(../images/icon-gnb01-on.svg);
}
.gnb > li.on .icon-gnb2,
.gnb > li > a:hover .icon-gnb2 {
  background-image: url(../images/icon-gnb02-on.svg);
}
.gnb > li.on .icon-gnb3,
.gnb > li > a:hover .icon-gnb3 {
  background-image: url(../images/icon-gnb03-on.svg);
}
.gnb > li.on .icon-gnb4,
.gnb > li > a:hover .icon-gnb4 {
  background-image: url(../images/icon-gnb04-on.svg);
}
.gnb > li.on .icon-gnb5,
.gnb > li > a:hover .icon-gnb5 {
  background-image: url(../images/icon-gnb05-on.svg);
}
.gnb > li.on .icon-gnb6,
.gnb > li > a:hover .icon-gnb6 {
  background-image: url(../images/icon-gnb06-on.svg);
}
.gnb > li.on .icon-gnb7,
.gnb > li > a:hover .icon-gnb7 {
  background-image: url(../images/icon-gnb07-on.svg);
}
.gnb > li.on .icon-gnb8,
.gnb > li > a:hover .icon-gnb8 {
  background-image: url(../images/icon-gnb08-on.svg);
}
.gnb > li.on .icon-gnb9,
.gnb > li > a:hover .icon-gnb9 {
  background-image: url(../images/icon-gnb09-on.svg);
}
.gnb .gnb-2depth {
  background: #f2f2f2;
  padding: 18px 17px 18px 40px;
  margin-top: 8px;
  display: none;
}
.gnb .gnb-2depth li {
  list-style-type: "-  ";
}
.gnb .gnb-2depth li + li {
  margin-top: 10px;
}
.gnb .gnb-2depth a {
  font-size: 14px;
  color: #7e7e7e;
  display: block;
  position: relative;
}
/* .gnb .gnb-2depth a:after {
  content: "";
  position: absolute;
  width: 27px;
  height: 7px;
  background: url(../images/icon-gnb-arrow.png);
  right: 5px;
  top: 5px;
  opacity: 0;
  transition: 0.3s;
} */
.gnb .gnb-2depth li.on a,
.gnb .gnb-2depth a:hover {
  color: #000;
}
.gnb .gnb-2depth li.on a:after,
.gnb .gnb-2depth a:hover:after {
  right: 0;
  opacity: 1;
}

.side-bar.small {
  width: 74px;
  flex: 0 0 74px;
}
.side-bar.small .logo {
  margin-top: 15px;
}
.side-bar.small .user-info {
  margin-top: 42px;
}
.side-bar.small .user-info .user-name {
  display: none;
}
.side-bar.small .user-menu {
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  margin: 14px 0 0 0;
  flex-direction: column;
  gap: 0;
}
.side-bar.small .user-menu button {
  height: 45px;
  flex: 0 0 45px;
  background: #fff;
  font-size: 0;
  line-height: 0;
  display: block;
  border-radius: 0;
  border: 0 none;
}
.side-bar.small .user-menu button + button {
  border-top: 1px solid #ddd;
}
.side-bar.small .user-menu button:before {
  display: block;
}
.side-bar.small .user-menu button:hover:before {
  filter: contrast(2);
}
.side-bar.small .user-menu .btn-mypage:hover {
  background: #8fcd3e;
}
.side-bar.small .user-menu .btn-logout:hover {
  background: #0068b3;
}
.side-bar.small .gnb {
}
.side-bar.small .gnb > li > a {
  font-size: 10px;
  color: #474747;
  position: relative;
  width: 42px;
  height: 42px;
  box-shadow: none !important;
  border-radius: 4px;
}
.side-bar.small .gnb > li > a [class*="icon-gnb"] {
  width: 100%;
  height: 100%;
  flex: 1;
  background-size: 65%;
}
.side-bar.small .gnb > li > a span {
  position: absolute;
  background: #fff;
  padding: 6px 8px 4px 9px;
  border-radius: 10px;
  line-height: 1;
  left: 10px;
  bottom: 41px;
  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.25);
  opacity: 0;
  visibility: hidden;
  z-index: 1;
}
.side-bar.small .gnb > li > a span:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 10px;
  border-top: 6px solid #fff;
  border-left: 3px solid transparent;
  border-right: 3px solid transparent;
}
.side-bar.small .gnb > li > a:hover span {
  opacity: 1;
  visibility: visible;
}
.side-bar.small .gnb .gnb-2depth {
  display: none !important;
}

.content-wrap {
  padding: 16px 16px 16px 27px;
  display: flex;
  flex-direction: column;
}
.shadow-box {
  background: #fff;
  box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.05);
  border-radius: 10px;
  flex: 1;
}

.page-nav {
  display: flex;
  margin-bottom: 10px;
  height: 44px;
}
.page-nav .page-tit {
  display: flex;
  color: #7a7a7a;
  font-size: 21px;
  align-items: center;
}
.page-nav .page-tit:first-child:last-child {
  font-weight: 700;
  color: #000;
}
.page-nav .page-tit span {
  width: 42px;
  height: 42px;
  background-color: #0068b3;
  margin-right: 16px;
  border-radius: 50%;
}
.page-nav .page-tit strong {
  color: #000;
  font-size: 24px;
}
.page-nav [class*="icon-gnb"] {
  width: 100%;
  height: 100%;
  background-color: transparent;
  filter: brightness(2);
  background-size: 60%;
}
.page-nav > * + * {
  margin-left: 38px;
}
.page-nav > * + *:before {
  content: "";
  position: absolute;
  right: 100%;
  width: 38px;
  height: 100%;
  background: url(../images/icon-nav-arrow.png) no-repeat 50% center;
}
.page-nav .dropdown-box {
  margin-top: -6px;
}

.page-select1 {
  font-weight: 700;
  padding-right: 40px;
  background: url(../images/icon-select-arrow2.png) no-repeat 100% center;
  width: fit-content;
  font-size: 22px;
  position: relative;
}
.page-select1 .select-option {
  font-size: 15px;
  font-weight: 500;
  color: #494949;
}

.component-box {
  padding: 18px 22px 22px 22px;
  display: flex;
  gap: 24px;
  width: 100%;
}
.component-box > .inner {
  flex: 1;
  width: inherit;
  display: flex;
  flex-direction: column;
  /* min-height: 820px; */
}
.component-box > .inner > .table-container {
  flex: 1;
}
.component-box > .inner.flex {
  flex-direction: row;
}
.component-box .component-tit {
  font-size: 24px;
  font-weight: 700;
  border-left: 5px solid #0068b3;
  padding-left: 6px;
  line-height: 1;
  color: #353535;
  margin-bottom: 30px;
  margin-top: 7px;
}
.component-box .component-tit2 {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 10px;
}
.component-box * + .component-tit2 {
  margin-top: 30px;
}

.component-menu-wrap {
  display: flex;
  justify-content: space-between;
  gap: 5px 20px;
  position: relative;
  padding-bottom: 14px;
  flex-wrap: wrap;
}
.component-menu-wrap .btn-box {
  gap: 2px;
}
.component-menu-wrap .btn-box [class*="btn"] {
  line-height: 28px;
  min-height: 30px;
  padding: 0 10px;
  font-size: 14px;
}
.component-menu-wrap .btn-box [class*="btn"] [class*="icon"] {
  margin-top: -2px;
}
.component-menu-wrap .align-r {
  margin-left: auto;
}
.data-cnt-box select {
  height: 32px;
  width: 95px;
}
.btn-box {
  display: flex;
  gap: 6px;
}
.btn-box [class*="btn"] {
  line-height: 36px;
}
.btn-box select {
  height: 100%;
}

.component-menu-wrap.search {
  gap: 5px 15px;
  justify-content: start;
}
.component-menu-wrap.search .dropdwn-box.type2 {
}
.component-menu-wrap.search > div {
  display: flex;
  align-items: flex-start;
  gap: 5px;
  white-space: nowrap;
  line-height: 32px;
}
.component-menu-wrap.search .search-tit {
  font-weight: 500;
  color: #000;
  font-size: 15px;
  white-space: nowrap;
  width: 95px;
  flex: none;
  line-height: 32px;
}
/* .component-menu-wrap.search .search-tit:before { content: ''; display: inline-block; width: 3px; height: 3px; border-radius: 50%; background: #000; vertical-align: middle; margin-right: 5px; margin-top: -3px;} */
.component-menu-wrap.search .search-box2 {
  min-width: 100px;
  width: fit-content;
}
.component-menu-wrap.search .common-input1 {
  width: 115px;
}
.component-menu-wrap.search .common-input1.date-btn {
  /* width: 105px; */
}
.component-menu-wrap.search .search-tit + .common-input1.date-btn:last-child {
  width: 130px;
}
.component-menu-wrap.search .search-tit + select {
  width: 115px;
}
.component-menu-wrap.search .common-check1 ~ select {
  flex: 1;
}
.component-menu-wrap.search > button:last-child {
  margin-left: auto;
}
.component-menu-wrap.search > .common-btn1 {
  height: 40px;
}
.component-menu-wrap.search .search-btn-box {
  margin-left: auto;
}
.component-menu-wrap.search .search-btn-box > .common-btn1 {
  height: 40px;
}
.component-menu-wrap .common-check1 + .common-check1 {
  margin-left: 15px;
}

.component-menu-wrap.search .common-check1 {
  font-weight: 500;
  margin-top: 6px;
  font-size: 15px;
}
.fold-wrap .fold-btn1 {
  position: absolute;
  top: 100%;
  left: 50%;
  width: 40px;
  height: 17px;
  background: url(../images/icon-fold-btn-off.png) no-repeat;
  transition: 0.3s;
  z-index: 1;
  margin-left: -20px;
}
.fold-wrap.fold2 .fold-btn1,
.fold-wrap.fold .fold-btn1 {
  background-image: url(../images/icon-fold-btn-on.png);
}
.fold-wrap.fold,
.fold-wrap.fold2 > *:not(.fold-btn1) {
  display: none;
}
.fold-wrap.fold2 {
  padding: 5px;
}

/* .component-more-wrap { justify-content: flex-start; gap:10px max(2vw, 20px) !important; flex-wrap:wrap;  }
.component-more-wrap > div { display: flex; gap:15px; align-items: center; justify-content: flex-start; }
.component-more-wrap .search-tit {font-weight: 700; color: #000; font-size: 15px; white-space: nowrap;} */
/* .component-more-wrap .search-tit:before { content: ''; display: inline-block; width: 3px; height: 3px; border-radius: 50%; background: #000; vertical-align: middle; margin-right: 5px; margin-top: -3px;} */

.component-bg-wrap {
  position: relative;
  background: #fafafa;
  border-radius: 10px;
  padding: 20px;
  margin: 10px 0;
  border: 1px solid #f0f0f0;
}

.data-cnt-box {
  display: flex;
  align-items: end;
  color: #000;
  white-space: nowrap;
}
.data-cnt-box .data-total {
  font-size: 15px;
  margin-left: 20px;
  display: inline-block;
  font-weight: 500;
  margin-bottom: 5px;
}
.data-cnt-box .data-total:first-child {
  margin-left: 0;
}
.data-cnt-box .data-total span {
  color: #cc0c0c;
}

.table-container {
  position: relative;
}
.table-container + .table-container {
  margin-top: 18px;
}
.table-wrap {
  position: relative;
  border-bottom: 1px solid #c6c6c6;
  margin-top: 10px;
  border-top: 1px solid #0068b3 !important;
  border-radius: 0 !important;
  max-height: 100%;
  overflow-x: auto;
}
.pq-grid {
  border-top: 1px solid #0068b3 !important;
}
.pq-grid,
.data .table-wrap {
  border-left: 1px solid #c6c6c6 !important;
  border-right: 1px solid #c6c6c6 !important;
  border-bottom: 1px solid #c6c6c6 !important;
}
.table-wrap:first-child {
  margin-top: 0 !important;
}
.divider + .table-container {
  margin-top: 20px;
}

.table-container .table-label-box {
  width: 155px;
  text-align: center;
  color: #fff;
  font-size: 20px;
  font-weight: 500;
  line-height: 40px;
  padding-top: 2px;
  height: 41px;
  letter-spacing: 2px;
  margin: 0 auto;
  background: #0068b3;
  position: relative;
}
.table-container .table-label-box:after,
.table-container .table-label-box:before {
  content: "";
  position: absolute;
  width: 60px;
  height: 100%;
  top: 0;
}
.table-container .table-label-box:after {
  left: 100%;
  background: url(../images/bg-label-r.png) no-repeat 0 0;
}
.table-container .table-label-box:before {
  right: 100%;
  background: url(../images/bg-label-l.png) no-repeat 0 0;
}
.table-container .table-label-box + .table-wrap {
  margin-top: 0;
}
.table-container table {
  min-width: 100%;
  border-spacing: 0;
  text-align: center;
}
.table-container th,
.pq-grid-header-table.pq-wrap {
  background: #f6f6f6;
}
.table-container table th div,
.table-container table th {
  font-weight: 500;
  color: #000;
}
.table-container table td {
  color: #000;
}
.table-container table tr th,
.table-container table tr td {
  vertical-align: middle;
  height: 30px;
  padding: 3px 8px;
  white-space: nowrap;
}
.table-container .pq-grid {
  min-height: 200px;
}
.table-container .pq-grid:last-child {
  margin-bottom: 0 !important;
}
.table-container .pq-grid table tr th {
  white-space: nowrap;
}
.table-container .pq-grid table tr + tr th {
  border-top: 1px solid #c6c6c6;
}
.table-container .pq-grid td.pq-detail-child {
  padding: 0 !important;
}
.table-container .pq-grid td.pq-detail-child > .pq-grid {
  border-top: 1px solid #c6c6c6 !important;
  border-left: 0 none !important;
  border-right: 0 none !important;
}
.table-container .pq-grid td.pq-detail-child th {
  background-color: #d8d8d8;
}
.table-container .pq-grid td.pq-detail-child .pq-grid-center {
  margin: 10px 0;
}

.table-container tbody tr > * {
  border-top: 1px solid #c6c6c6;
}
/* .table-container table tbody tr:last-child > * {border-bottom: 1px solid #c6c6c6; } */
.table-container td [class*="common-input"] {
  width: 100%;
  text-align: center;
}
.table-container td [class*="common-input"].date-btn {
  width: 140px;
}

.table-container a {
  text-decoration: underline;
}
.table-container table tr th:not(:last-child),
.table-container table tr td:not(:last-child) {
  border-right: 1px solid #c6c6c6;
}
.table-desc {
  color: #000;
  margin-top: 19px;
}
.table-container table thead tr + tr th {
  border-top: 1px solid #c6c6c6;
}

/* .table-container .pq-grid.ui-resizable{ min-height: 440px; } 
.table-container .pq-grid { } */
.table-container.data .table-wrap table tr th,
.table-container.data .table-wrap table tr td,
.table-container .pq-grid table tr th,
.table-container .pq-grid table tr td {
  border-left-color: #c6c6c6;
  border-top-color: #e3e3e3;
}

.table-container .pq-grid tr[class*="hidden"] * {
  padding: 0 !important;
  height: 0 !important;
}
.table-container .pq-grid table tr:not([class*="hidden"]) th {
  white-space: nowrap;
}
.table-container .pq-grid table tr:not([class*="hidden"]) + tr th {
  border-top: 1px solid #c6c6c6;
}
.table-container .pq-grid tbody tr:last-child > * {
  border-bottom: 1px solid #c6c6c6;
}
.table-container .pq-grid-bottom {
  background: #f6f6f6;
  border-top: 1px solid #c6c6c6;
}
.table-container .pq-grid-bottom select {
  background-color: #fff;
  border-radius: 3px;
}

.popup .table-container .pq-grid {
  min-height: auto;
}

.total-tr td {
  background: #ededed;
}

.table-container > .send-btn {
  position: absolute;
  right: 0;
  bottom: 0;
}

.table-container.type2 .table-wrap table {
  text-align: left;
}
.table-container.type2 tbody th {
  padding-left: 21px;
  text-align: left;
}
.table-container.type2 tbody td {
  padding-left: 21px;
}
.table-container.type2 tbody th,
.table-container.type2 tbody th + td {
  border-right: 0 none !important;
}

/* .table-container.type3 table tr:not([class*=hidden]) > * { 
border-right: 0 none !important;} */

.pager-wrap {
  display: flex;
  gap: 5px;
  margin-top: 30px;
  justify-content: center;
}
.pager-wrap button {
  width: 30px;
  height: 30px;
  border-radius: 2px;
  border: 1px solid #d3d3d3;
  background: #fff;
  color: #5c5c5c;
  position: relative;
}
.pager-wrap button:hover {
  background: #d3d3d3;
}
.pager-wrap button.on {
  background: #2d2d2d;
  border-color: #2d2d2d;
  color: #fff;
}
.pager-wrap button[class*="btn-"]:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}
.pager-wrap button.btn-prev:after {
  background: url(../images/icon-prev.png) no-repeat center;
}
.pager-wrap button.btn-pprev:after {
  background: url(../images/icon-prev2.png) no-repeat center;
}
.pager-wrap button.btn-next:after {
  background: url(../images/icon-next.png) no-repeat center;
}
.pager-wrap button.btn-nnext:after {
  background: url(../images/icon-next2.png) no-repeat center;
}
.pager-wrap button[class*="btn-"]:hover:after {
}
.popup .pager-wrap {
  margin-top: 20px;
}

* + .component-menu-wrap {
  margin-top: 15px;
}
.table-container + .component-menu-wrap {
  margin-top: 20px;
}
.table-wrap.send,
.table-wrap.notice {
  border-left: 0 none !important;
  border-right: 0 none !important;
}
.table-wrap.notice table th {
  font-weight: 700;
}
.table-wrap.notice table td {
  white-space: wrap !important;
  text-align: left !important;
  padding: 15px 27px !important;
}
.table-wrap.notice .notice-tit {
  color: #000;
}
.table-wrap.notice .notice-desc {
  line-height: 1.8;
  padding: 13px 27px 27px 27px;
  color: #575656;
}
.table-wrap.notice .common-btn3 {
  margin-top: 17px;
  display: block;
}
.added-file-box {
  position: relative;
  width: fit-content;
  display: inline-flex;
  align-items: center;
}
.added-file-box + .added-file-box {
  margin-left: 15px;
}
.added-file-box .added-file {
  padding: 7px 160px 7px 14px;
  border: 1px solid #cdcdcd;
  border-radius: 4px;
  background: #fff;
  color: #535353;
  font-weight: 700;
}
.added-file-box .file-info {
  position: absolute;
  right: 40px;
  color: #848484;
  font-size: 13px;
  letter-spacing: 0;
  pointer-events: none;
  font-weight: 500;
}
.added-file-box .icon-close {
  position: absolute;
  right: 1px;
  top: 1px;
  bottom: 1px;
  background: url(../images/icon-close.png) no-repeat center;
  width: 34px;
}
.added-file-box .icon-close:hover {
  background-color: #eee;
}
.table-wrap .added-file-box .added-file:hover {
  background: #e4edf8;
}

/* table.pq-wrap>tbody>tr>.pq-grid-cell, table.pq-wrap>tbody>tr>.pq-grid-col { border:0 none; border-top: 1px solid #E3E3E3; } */
select.pq-editor-focus {
  background: #fff url(../images/icon-select-arrow.png) no-repeat 90% center;
}

div.pq-grid * {
  font-family: "Noto Sans", "Roboto", sans-serif;
}
.pq-grid {
  min-height: 44px;
}
.pq-grid input[type="text"],
.pq-grid textarea,
.pq-grid select {
  border: 1px solid #d0d0d0 !important;
  height: 32px !important;
}
.pq-grid input[type="text"] {
  text-align: center;
}
.pq-grid select,
.pq-grid select option {
  text-align: left !important;
  /* padding-left: 10px; */
}

.pq-td-border-top > tbody > tr > .pq-grid-cell {
  border-bottom-color: #e6e6e6;
}
.pq-td-border-right > tbody > tr > .pq-grid-cell {
  border-right-color: #c6c6c6;
}
.pq-grid .pq-grid-title {
  padding: 12px 10px;
  font-weight: 500;
}
.pq-grid > .pq-grid-top {
  background: #f6f6f6;
  height: 44px;
  border-bottom-color: #c6c6c6;
}
.pq-slider-icon {
  top: 11px;
  right: 8px;
  display: flex;
  align-items: center;
  height: 24px;
}

.pq-slider-icon .pq-ui-button {
  padding: 0 !important;
  margin: 0 !important;
}
.pq-slider-icon .pq-ui-button.ui-widget-header .ui-icon {
  width: 24px;
  height: 24px;
  display: block;
}
.pq-slider-icon .pq-ui-button.ui-widget-header .ui-icon.ui-icon-arrow-4-diag {
  background: url(../images/icon-expand.png) no-repeat;
  background-size: contain;
}
.pq-slider-icon .pq-ui-button.ui-widget-header .ui-icon.ui-icon-circle-triangle-n {
  background: url(../images/icon-fold-btn2-off.png) no-repeat;
  background-size: contain;
  display: none;
}
.pq-slider-icon .pq-ui-button.ui-widget-header .ui-icon.ui-icon-circle-triangle-s {
  background: url(../images/icon-fold-btn2-on.png) no-repeat;
  background-size: contain;
}
.pq-ui-button:hover,
.pq-ui-button:focus {
  border: 0 none;
  margin: 1px;
}

.table-container .ui-corner-all {
  border-radius: 0;
}

.login-wrap {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  height: 100vh;
  letter-spacing: 0;
}
/* .login-wrap { position: relative; display: flex; align-items: center; justify-content: center; background: url(../images/bg-login.png) center ; background-size: cover; height: 100vh; letter-spacing: 0; } */
.login-wrap .login-logo {
  margin-bottom: 14px;
  text-align: center;
}
.bg-slide-wrap {
  position: absolute;
  z-index: -1;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  overflow: hidden;
  background: #1a3e52;
}

.bg-slide-wrap > img {
  z-index: 0;
  object-fit: cover;
  height: 100%;
  width: 100%;
}
.bg-slide-wrap .swiper-slide img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.bg-slide-wrap .swiper-pagination {
  bottom: 40px;
  left: 0;
  right: 0;
  text-align: center;
}
.bg-slide-wrap .swiper-pagination .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  border: 2px solid #fff;
  opacity: 1;
  background: transparent;
  margin: 0 5px;
}
.bg-slide-wrap .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #fff;
}

.login-wrap * {
  letter-spacing: inherit;
}
.login-box {
  position: relative;
  z-index: 1;
  border-radius: 15px;
  width: 445px;
  box-shadow: 5px 5px 10px 0px rgba(0, 0, 0, 0.25);
  background: #fff;
  padding: 35px 45px 28px 45px;
}
.login-box ~ .login-box {
  margin-top: 28px;
}
.login-box .login-row ~ .login-row {
  margin-top: 14px;
}
.login-box .row-tit {
  font-size: 16px;
  margin-bottom: 4px;
  font-weight: 500;
}
.login-box .login-btn {
  width: 100%;
  font-size: 17px;
  display: block;
  border-radius: 5px;
  height: 48px;
}
.login-box .input-box input {
  background: #ececec;
  height: 45px;
  padding: 0 22px;
  border-radius: 5px;
  border: 0 none;
}
.login-box .input-box input::placeholder {
  color: #8d8d8d;
}
.login-box .input-box input::-moz-placeholder,
.login-box .input-box input::-webkit-input-placeholder {
  color: #8d8d8d;
}
.login-box .btn-row {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.login-box .btn-row .line-btn1 {
  font-weight: 400;
  border-radius: 3px;
  height: 36px;
  opacity: 0.8;
}
.login-box-tit {
  position: relative;
  font-size: 24px;
  color: #000;
  text-align: center;
  margin: 0 -10px 22px -10px;
}
.login-box-tit strong {
  background: #fff;
  position: relative;
  z-index: 1;
  padding: 0 30px;
}
.login-box-tit:before {
  content: "";
  position: absolute;
  left: 0;
  z-index: 0;
  width: 100%;
  top: 50%;
  height: 1px;
  background: #8e8e8e;
}
.find-box .login-row .input-box {
  width: 290px;
}
.find-box .login-row {
  display: flex;
  justify-content: space-between;
  margin: 10px 0 0 0;
  gap: 5px;
}
.find-box .login-row:last-child {
  max-width: 290px;
  margin-left: auto;
}
.find-box .row-tit {
  line-height: 45px;
}

.top-logo {
  position: absolute;
  top: 13px;
  right: 14px;
}
.join-wrap {
  position: relative;
  padding: 70px 0 0 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.join-wrap .join-step {
  display: flex;
  justify-content: center;
  margin-bottom: 15px;
}
.join-wrap .join-step li {
  position: relative;
  display: flex;
  gap: 14px;
  color: #fff;
  align-items: center;
  letter-spacing: 0.3px;
}
.join-wrap .join-step div,
.join-wrap .join-step span,
.join-wrap .join-step p {
  color: inherit;
  letter-spacing: inherit;
}
.join-wrap [class*="icon-step"] {
  display: inline-block;
  width: 88px;
  height: 88px;
  border-radius: 50%;
  background-color: transparent;
  border: 1px solid #fff;
  filter: contrast(0) brightness(10);
}
.join-wrap .icon-step1 {
  background: url(../images/icon-join-step1.png) no-repeat center;
}
.join-wrap .icon-step2 {
  background: url(../images/icon-join-step2.png) no-repeat center;
}
.join-wrap .join-step li.on {
  color: #b0ff47;
}
.join-wrap .join-step li.on [class*="icon-step"] {
  border-color: #79bc2d;
  background-color: #79bc2d;
  filter: unset;
}

.join-wrap .join-step li + li {
  margin-left: 80px;
}
.join-wrap .join-step li + li:before {
  content: "";
  position: absolute;
  right: 100%;
  width: 80px;
  height: 100%;
  background: url(../images/icon-step-arrow.png) no-repeat center;
}

.join-box {
  width: 1150px;
  height: 730px;
  background: #fff;
  border-radius: 15px;
  box-shadow: 5px 5px 10px 0px rgba(0, 0, 0, 0.25);
  padding: 33px 0 17px 0;
  margin: 0 auto;
  font: 14px;
}
.join-box-tit {
  margin-bottom: 20px;
  font-size: 24px;
  font-weight: 700;
  text-align: center;
}
.terms-row {
  margin-top: 35px;
  padding: 0 30px;
}
.terms-row .terms-tit {
  font-size: 17px;
  margin-bottom: 11px;
}
.terms-row .terms-con {
  border-radius: 8px;
  border: 1px solid #dcdcdc;
  background: #f8f8f8;
  width: 100%;
  height: 160px;
  overflow-y: auto;
  margin-bottom: 10px;
  padding: 20px;
  font-size: 16px;
  white-space: pre-line;
  line-height: 1.6;
}
.terms-row .common-check1 {
  display: flex;
  margin-top: 5px;
  width: fit-content;
}
.terms-agree-all {
  text-align: center;
  margin: 20px 0;
}
.terms-agree-all label {
  font-size: 17px;
}
.join-box .btn-row:last-child {
  display: flex;
  justify-content: center;
  gap: 12px;
}
.join-box .btn-row:last-child button {
  height: 40px;
}
.join-box .table-container {
  padding: 0 30px;
}
.join-box select {
  width: 227px;
}
.join-box .input-box {
  display: inline-block;
  margin-right: 3px;
}
.join-box.join-info {
  display: flex;
  flex-direction: column;
}
.join-box.join-info .btn-row:last-child {
  margin-top: auto;
}
.join-box.join-info td .common-btn {
  height: 39px;
  vertical-align: middle;
}
.join-box.join-info .table-container tr > * {
  font-size: 15px;
}
.join-box.join-info select {
  height: 40px;
}
.join-box .input-box input {
  height: 40px;
}

.error-wrap {
  height: 100vh;
  background: linear-gradient(180deg, #f1f1f1 0%, #fff 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  letter-spacing: 0;
}
.error-wrap * {
  letter-spacing: 0;
  line-height: normal;
}
.error-wrap .error-code {
  font-size: 64px;
  font-weight: 700;
  font-family: "Noto Sans";
  letter-spacing: 10px;
  color: #000;
}
.error-wrap .error-msg {
  font-weight: 700;
  margin-top: 5px;
  color: #000;
}
.error-wrap .error-desc {
  margin-top: 38px;
  text-align: center;
  max-width: 540px;
  line-height: 1.5;
}
.error-wrap .btn-box {
  margin-top: 30px;
}
.error-wrap .btn-box .common-btn1 {
  padding: 0 37px;
  gap: 10px;
}

.table-flex {
  align-items: flex-start;
  gap: 30px;
}
.table-flex > div {
  flex: 1;
}
.table-flex .table-container,
.table-flex .table-wrap {
  margin: 0;
}

/* 내정보 */
.component-box.mypage .btn-box {
  margin-top: 23px;
  justify-content: flex-end;
}
.component-box.mypage > .inner > .table-container {
  flex: 0;
}
.component-box.mypage .table-container tr > * {
  font-size: 15px !important;
  height: 47px;
}
.component-box.mypage .table-container .input-box input {
  height: 40px;
}

/* datepicker */

/* datepicker */
.datepicker-wrap {
  border: 1px solid #dcdcdc;
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
  padding: 20px 20px 20px 20px;
}
.ui-datepicker {
  padding: 0;
  font-size: 15px;
  border: 0 none;
  font-family: "Noto Sans", sans-serif;
  padding: 10px 10px 5px 10px;
  border: 1px solid #dcdcdc;
  margin-top: -1px;
  border-radius: 8px;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);
}
.ui-datepicker-multi {
  width: 100%;
}
.ui-datepicker table {
  font-size: 15px;
  color: #171a19;
  margin-top: 5px;
}
.ui-datepicker td {
  padding: 4px 0;
}
.ui-datepicker a {
  cursor: pointer;
}
.ui-datepicker .ui-datepicker-header {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border: 0 none;
}
.ui-datepicker .ui-datepicker-title {
  order: 2;
  width: 100px;
  margin: 0;
  display: flex;
  flex-direction: row-reverse;
  justify-content: center;
  font-weight: 400;
}
.ui-datepicker .ui-datepicker-title > * {
  font-size: 15px;
}
.ui-datepicker .ui-datepicker-year:after {
  content: ".";
}
.ui-datepicker .ui-datepicker-prev {
  display: inline-block;
  position: relative;
  width: 30px;
  height: 30px;
  background: url(../images/icon-arrow-left01.svg) no-repeat center;
  order: 1;
}
.ui-datepicker .ui-datepicker-next {
  display: inline-block;
  position: relative;
  width: 30px;
  height: 30px;
  background: url(../images/icon-arrow-right01.svg) no-repeat center;
  order: 3;
}
.ui-datepicker .ui-state-default {
  background: #fff;
  border: 0 none;
  text-align: center;
  line-height: 24px;
  padding: 0;
  width: 24px;
  margin: 0 auto;
}
.ui-datepicker .ui-state-default.ui-state-hover {
  background: #afd1e9;
  border-radius: 50%;
}
.ui-datepicker .ui-state-active {
  background: #0068b3 !important;
  border-radius: 50%;
}
.ui-datepicker th {
  font-weight: 400;
}
.ui-datepicker .ui-datepicker-week-end:not(:last-child) a {
  color: #f60000;
}
.ui-datepicker .ui-datepicker-week-end:not(:last-child) a.ui-state-active {
  color: #fff;
}
.ui-datepicker .ui-widget-content .ui-state-highlight {
  color: #171a19;
}
.ui-datepicker .ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-datepicker .ui-widget-header .ui-state-highlight {
  background: #e4edf8 !important;
  color: #454545;
}
.ui-datepicker .ui-datepicker-today {
  position: relative;
}
.ui-datepicker .ui-datepicker-today.ui-state-disabled:after,
.ui-datepicker .ui-datepicker-today a:after {
  content: "";
  position: absolute;
  width: 5px;
  height: 5px;
  background: #f60000;
  border-radius: 50%;
  top: 2px;
  right: 2px;
}
.ui-datepicker .ui-datepicker-today .ui-state-active {
  color: #fff;
}
.datepicker-label {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 10px;
  font-size: 13px;
}
.datepicker-label p:before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #dcdcdc;
  margin-right: 5px;
}
.datepicker-label p.label-able:before {
  background: #0068b3;
}
.ui-datepicker .ui-state-disabled,
.ui-datepicker .ui-state-disabled,
.ui-datepicker .ui-widget-header .ui-state-disabled {
  opacity: 0.3 !important;
}

.ui-datepicker.ui-datepicker-multi {
  padding: 15px 10px 5px 10px;
  border: 1px solid #dcdcdc;
  margin-top: -1px;
  border-radius: 8px;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);
}
.ui-datepicker .ui-datepicker-header > * {
  line-height: 32px;
  height: 30px;
  font-size: 15px;
}
.ui-datepicker .ui-datepicker-title {
  font-size: 15px;
}
.ui-datepicker .ui-datepicker-title select {
  padding: 0 5px;
  height: auto;
  min-width: 50px;
  background-size: 20px;
  margin-top: 2px;
  padding: 0 15px 0 7px !important;
}
.ui-datepicker .ui-widget-header .ui-icon {
  display: none !important;
}

.ui-monthpicker {
  padding: 10px 10px 5px 10px !important;
  width: 200px;
}
.ui-monthpicker .ui-state-highlight {
  width: 100% !important;
  line-height: 34px !important;
}
.ui-monthpicker .ui-state-active {
  width: 100% !important;
  border-radius: 3px !important;
  line-height: 34px !important;
}
.ui-monthpicker .ui-datepicker-calendar {
  padding: 0 10px !important;
}
.ui-monthpicker .ui-datepicker-today a:after {
  display: none;
}
.ui-monthpicker .ui-state-default {
  width: 100%;
  border-radius: 3px !important;
}
.ui-monthpicker td {
  padding: 2px;
  width: 100px;
}
.ui-monthpicker .ui-datepicker-year:after {
  display: none;
}

.chart-wrap {
  display: flex;
  padding: 0 100px;
  justify-content: space-evenly;
}
.chart-wrap > div {
  text-align: center;
}

/* 팝업 */
body[style*="height: 0px; width: 0px; overflow: hidden; position: static;"] .popup {
  transform: unset !important;
}
.popup {
  height: 100vh;
  position: fixed;
  z-index: 10;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  visibility: hidden;
  opacity: 0;
  transition: 0.3s visibility, 0.3s opacity;
}
.popup.on {
  visibility: visible;
  opacity: 1;
}
.popup.on .popup-body {
  margin-top: 0;
  transition: 0.3s margin;
}
.popup-body {
  display: flex;
  flex-direction: column;
  transition: 0.3s;
  width: 100%;
  max-height: 90%;
  margin-top: 20px;
  transition: 0.3s;
  box-shadow: 5px 5px 10px 0px rgba(0, 0, 0, 0.1);
  width: 760px;
  position: relative;
}
.popup-tit {
  padding: 18px 36px;
  font-weight: 500;
  font-size: 18px;
  line-height: 1;
  background: #364d90;
  color: #fff;
}
.popup-tit .popup-tit-btn {
  position: absolute;
  right: 65px;
  top: 10px;
  display: flex;
  gap: 5px;
}
.popup-con {
  height: 100%;
  position: relative;
  overflow-y: auto;
  padding: 28px 20px 25px 20px;
  background: #fff;
  max-height: calc(100vh - 56px);
  width: 760px;
}
.popup-con::-webkit-scrollbar {
  width: 6px;
}
.popup-con::-webkit-scrollbar-thumb {
  background: #ccc;
}
.popup-con::-webkit-scrollbar-track {
  background: #ededed;
}
.popup-con .table-container {
  margin-top: 18px;
}
.popup-con .table-container:first-child {
  margin-top: 0;
}
.popup-con .component-menu-wrap + .table-container {
  margin-top: 0;
}
.popup-con .btn-wrap,
.ui-dialog .btn-wrap {
  display: flex;
  gap: 12px;
  justify-content: flex-end;
  margin-top: 30px;
}
.ui-dialog .btn-wrap button,
.popup-con .btn-wrap button {
  width: 90px;
  min-height: 38px;
  line-height: 36px;
  font-weight: 500;
}
.popup-con .btn-wrap button {
  min-width: 90px;
  width: auto;
}
.popup-body .popup-desc {
  text-align: center;
  font-size: 14px;
  margin: 20px 0 0 0;
  line-height: 1.6;
}
.popup-body .popup-desc strong {
  font-weight: 700;
  font-size: inherit;
}

.popup-body .component-menu-wrap.search .search-tit {
  width: auto;
  padding-right: 20px;
}
.popup-body .component-menu-wrap.search .search-tit + select {
  width: 100px;
}
.popup-body.type2 {
  width: 540px;
}
.popup-body.type2 .popup-con {
  padding-bottom: 40px;
  width: 100%;
}
.popup-body.type2 .popup-desc {
  text-align: center;
  font-size: 19px;
  margin: 70px 0;
}
.popup-body.type2 .btn-wrap {
  justify-content: center;
}

.popup-body.type3 {
  width: 400px;
}
.popup-body.type3 .btn-wrap {
  justify-content: flex-end;
}
.popup-body.type3 .popup-con {
  width: 100%;
}
.popup-body.type3 .popup-desc {
  text-align: center;
  font-size: 18px;
  margin: 70px 0;
}

.popup.full {
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  overflow-x: auto;
}
.popup.full .popup-body {
  width: calc(100% - 10px);
  min-height: calc(100% - 10px);
  max-height: unset;
  min-width: 1200px;
  margin: 5px;
}
.popup.full .popup-con {
  width: 100%;
  min-width: 1200px;
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow-y: unset;
  max-height: unset;
  flex: 1;
}
.popup.full .popup-con .map-area {
  flex: 1;
  min-height: 800px;
}

.table-wrap.send table td {
  padding: 20px !important;
}
.table-wrap.send table textarea {
  border: 1px solid #d2d2d2;
  background: #fff;
  resize: none;
  width: 100%;
  vertical-align: top;
  padding: 20px;
}

/* .popup.type2 { background: transparent; height: 100vh; width: 0; right: 50%; left: unset; min-width: unset; } */
.popup.type2 {
  display: block;
  position: fixed;
  top: 50%;
  left: 50%;
  right: unset;
  bottom: unset;
  transform: translate(-50%, -50%);
  background: transparent;
  min-width: unset;
  height: unset;
  box-shadow: 5px 5px 10px 0px rgba(0, 0, 0, 0.1);
}
.popup.type2 .popup-body {
  box-shadow: none;
}
.popup.type2 .popup-tit {
  cursor: move;
}
/* .popup.type2.on { overflow: hidden;} */

.ui-dialog {
  padding: 0;
}
.ui-dialog .ui-dialog-titlebar {
  border-radius: 0;
  border: 0 none;
  background: linear-gradient(180deg, rgba(244, 244, 244, 0) 0%, #eee 100%);
}
.ui-dialog .ui-dialog-title {
  font-size: 20px;
  font-weight: 500;
}
.ui-dialog .btn-wrap {
  position: absolute;
  bottom: 0;
  right: 0;
}
.ui-widget-overlay {
  opacity: 0.003;
}

.popup .pq-grid:not(.ui-resizable):not([style*="overflow: hidden"]) .pq-slider-icon .pq-ui-button:last-child {
  display: none;
}

.popup-btn-close {
  width: 54px;
  height: 54px;
  background: url(../images/icon-close4.png) no-repeat center;
  position: absolute;
  right: 0;
  top: 0;
}

/* 팝업 세로형 우측 슬라이드 */
.popup.type3 {
  justify-content: flex-end;
  left: unset;
}
.popup.type3 .popup-body {
  max-height: unset;
  height: 100%;
  width: 360px;
  margin: 0 -100px 0 0;
}
.popup.type3.on .popup-body {
  margin: 0;
}
.popup.type3 .popup-con {
  width: 100%;
}

.tab-menu1 {
}
.tab-box {
  display: none;
}

/* toast 캘린더 */
.toastui-calendar-grid-selection,
.toastui-calendar-weekday-event-dot,
.toastui-calendar-accumulated-grid-selection {
  display: none !important;
}
.toastui-calendar-template-time:hover {
  text-decoration: underline;
}

.calendar-wrap #calendar {
  border: 1px solid #e0e0e0;
}
.calendar-wrap #calendar * {
  letter-spacing: 0;
}
.calendar-wrap .calendar-head {
  position: relative;
}
.calendar-wrap .calendar-head .navbar {
  display: flex;
  justify-content: center;
  margin-bottom: 12px;
  gap: 20px;
  align-items: center;
}
.calendar-wrap .navbar-range {
  font-size: 24px;
  font-weight: 500;
}
.calendar-wrap .button {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid #ebebeb;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.05);
}
.calendar-wrap .button.today {
  display: none;
}
.calendar-wrap .button:hover {
  background: #fafafa;
}
.calendar-wrap .calendar-label {
  font-size: 13px;
  color: #000;
  position: absolute;
  right: 0;
  bottom: 0;
}

.toastui-calendar-daygrid-cell {
  padding: 10px 10px 10px 10px !important;
}
.toastui-calendar-daygrid-cell:first-child .toastui-calendar-grid-cell-date * {
  color: #ed0202;
}
.toastui-calendar-daygrid-cell:last-child .toastui-calendar-grid-cell-date * {
  color: #0329f3;
}
.toastui-calendar-weekday-event {
  margin-left: 20px !important;
}
.toastui-calendar-weekday-event-title {
  padding-left: 0 !important;
  font-weight: 500 !important;
}
.toastui-calendar-template-time,
.toastui-calendar-template-time * {
  font-size: 11px !important;
}
.toastui-calendar-weekday-grid-date {
  font-size: 15px !important;
}
.toastui-calendar-month .toastui-calendar-day-names {
  padding: 0 !important;
}
.toastui-calendar-day-name-item.toastui-calendar-month {
  padding: 0 !important;
  text-align: center;
  background: #f8f8f8;
  font-size: 15px !important;
  font-weight: 500;
}
.toastui-calendar-day-name-item.toastui-calendar-month + .toastui-calendar-day-name-item.toastui-calendar-month {
  border-left: 1px solid #e0e0e0 !important;
}
.toastui-calendar-detail-container .toastui-calendar-section-header,
.toastui-calendar-detail-container .toastui-calendar-section-button {
  display: none;
}
.toastui-calendar-section-detail > *:not(.toastui-calendar-detail-item-separate) {
  display: none;
}

/* .toastui-calendar-popup-arrow.toastui-calendar-left .toastui-calendar-popup-arrow-border,
.toastui-calendar-popup-arrow.toastui-calendar-right .toastui-calendar-popup-arrow-border,
.toastui-calendar-popup-arrow.toastui-calendar-left .toastui-calendar-popup-arrow-fill,
.toastui-calendar-popup-arrow.toastui-calendar-right .toastui-calendar-popup-arrow-fill { display: none !important;} */
.toastui-calendar-popup-arrow.toastui-calendar-left .toastui-calendar-popup-arrow-fill {
  border-right-color: #f5f5f5 !important;
}
.toastui-calendar-popup-arrow.toastui-calendar-right .toastui-calendar-popup-arrow-fill {
  border-left-color: #f5f5f5 !important;
}
.toastui-calendar-detail-container {
  background: #f5f5f5 !important;
  padding: 0 !important;
}

.toastui-calendar-detail-container .toastui-calendar-section-detail {
  margin: 0 !important;
}
.toastui-calendar-template-popupDetailBody .custom-detail {
  padding: 17px 15px;
  margin: -1px;
  background: #f5f5f5;
}
.toastui-calendar-template-popupDetailBody .custom-detail.on {
  background: #b2dfff;
  color: #fff;
}
.toastui-calendar-template-popupDetailBody .custom-detail .common-btn1 {
  margin-left: auto;
  display: block;
  font-size: 11px;
  font-weight: 400;
  padding: 5px;
  line-height: 1;
  min-height: auto;
}
.toastui-calendar-template-popupDetailBody ul {
  display: flex;
  flex-wrap: wrap;
}
.toastui-calendar-template-popupDetailBody ul li {
  flex: 0 0 50%;
  font-size: 12px;
  color: #000;
  font-weight: 400;
}
.toastui-calendar-template-popupDetailBody ul li:before {
  content: "";
  display: inline-block;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #000;
  vertical-align: middle;
  margin-right: 5px;
}
.toastui-calendar-template-popupDetailBody ul li.full {
  flex: 0 0 100%;
}

/* .toastui-calendar-popup-arrow.toastui-calendar-left
.toastui-calendar-template-popupDetailBody ul ~ span { position: absolute; border: 8px solid transparent; border-left: 8px solid #d5d5d5; border-right: none; right: -7px; top:50%; margin-top: -4px; }
.toastui-calendar-popup-arrow.toastui-calendar-left
.toastui-calendar-template-popupDetailBody ul ~ span.right-arrow:after { content:''; position: absolute; border: 7px solid transparent; border-left: 7px solid #f5f5f5; border-right: none; right: 1px; top: -7PX;} */

.toastui-calendar-popup-arrow.toastui-calendar-right .toastui-calendar-template-popupDetailBody ul ~ span {
  position: absolute;
  border: 8px solid transparent;
  border-left: 8px solid #d5d5d5;
  border-right: none;
  right: -7px;
  top: 50%;
  margin-top: -4px;
}
.toastui-calendar-popup-arrow.toastui-calendar-right .toastui-calendar-template-popupDetailBody ul ~ span.left-arrow:after {
  content: "";
  position: absolute;
  border: 7px solid transparent;
  border-left: 7px solid #f5f5f5;
  border-right: none;
  right: 1px;
  top: -7px;
}

.toastui-calendar-grid-cell-date .toastui-calendar-weekday-grid-date.toastui-calendar-weekday-grid-date-decorator {
  background: #0068b3;
  color: #fff;
  font-weight: 400 !important;
}

.tab-menu1 button {
  width: 152px;
  height: 40px;
  font-weight: 500;
  background: #d9d9d9;
  color: #858585;
  font-size: 18px;
  border-radius: 10px 10px 0px 0px;
  padding-top: 2px;
}
.tab-menu1 button.on {
  background: #fff;
  color: #0068b3;
}
.tab-menu1 ~ .tab-box1 .shadow-box {
  border-top-left-radius: 0;
}
.tab-box1 {
  display: none;
}
.tab-box1 .component-box > .inner {
  min-height: unset;
  height: 780px !important;
}
.tab-box1 .component-box {
  height: unset !important;
}

.calendar-wrap {
  flex: 1;
}
.calendar-util-wrap {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex: 0 0 390px;
  margin-left: 25px;
}
.calendar-util-tit {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 5px;
  height: 40px;
  display: flex;
  align-items: end;
}
.calendar-util-box {
  flex: 1;
}
.calendar-search-wrap {
  display: flex;
  flex-direction: column;
  gap: 6px;
  background: #f1f1f1;
  padding: 25px;
}
.calendar-search-wrap .search-row {
  display: flex;
  justify-content: space-between;
}
.calendar-search-wrap .search-row input {
  background-color: #fff;
  height: 40px;
}
.calendar-search-wrap .search-row:last-child {
  margin-top: 12px;
}
.calendar-search-wrap .search-row:last-child button {
  width: 230px;
  margin-left: auto;
  height: 40px;
}
.calendar-search-wrap .search-box1 {
  width: 230px;
}
.calendar-search-wrap .search-box1 .common-input1 {
  flex: 1;
}
.calendar-search-wrap .search-box1 button {
  width: 40px;
  padding: 0 10px;
}
.calendar-search-wrap .search-box1 button i {
  margin: 0;
}
.calendar-search-wrap .search-tit {
  font-size: 15px;
  line-height: 40px;
  font-weight: 500;
}

.calendar-search-wrap .search-row .date-box1 {
  display: flex;
  gap: 5px;
  position: relative;
  align-items: center;
  width: 230px;
  justify-content: space-between;
}
.calendar-search-wrap .search-row .common-input1.date-btn {
  flex: 1;
  width: 100px;
}

.calendar-list-wrap {
  height: 336px;
}
.calendar-list-wrap.table-container th,
.calendar-list-wrap.table-container td {
  height: 50px;
}
.calendar-list-wrap.table-container tr:last-child td {
  border-bottom: 1px solid #e3e3e3;
}
.calendar-list-wrap .table-wrap {
  position: relative;
  padding-top: 50px;
  height: 100%;
  overflow: hidden;
}

.calendar-list-wrap .table-wrap table {
  max-height: 100%;
  display: flex;
  overflow-y: scroll;
}
.calendar-list-wrap .table-wrap table::-webkit-scrollbar {
  width: 8px;
  margin: 5px 0;
}
.calendar-list-wrap .table-wrap table::-webkit-scrollbar-thumb {
  background: #76747459;
}
.calendar-list-wrap .table-wrap table::-webkit-scrollbar-track {
  background: #ededed;
}
.calendar-list-wrap .table-wrap thead {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  width: 100%;
  display: table;
  padding-right: 8px;
  background: #f6f6f6;
  border-bottom: 1px solid #e3e3e3;
}
.calendar-list-wrap .table-wrap thead th:first-child,
.calendar-list-wrap .table-wrap tbody td:last-child {
  width: 45%;
}
.calendar-list-wrap .table-wrap thead th:last-child,
.calendar-list-wrap .table-wrap tbody td:last-child {
  width: 55%;
}
.calendar-list-wrap .table-wrap tbody {
  display: table;
  flex: 1;
}

.percent-box {
  height: 18px;
  border: 1px solid #d8d8d8;
  background: #fff;
  position: relative;
}
.percent-box:after {
  content: attr(data-value) "%";
  color: #000;
  position: absolute;
  left: 5px;
  font-size: 11px;
  line-height: 18px;
  z-index: 0;
}
.percent-box span {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  background: #d9d9d9;
  animation: percent-bar 1s 0.3s backwards;
}
@keyframes percent-bar {
  from {
    width: 0;
  }
}

.cargo-step-wrap {
  display: flex;
  text-align: center;
  max-width: 1500px;
  position: relative;
  justify-content: space-between;
  margin: 0 auto;
}
.cargo-step-wrap:before {
  content: "";
  height: 2px;
  position: absolute;
  top: 37px;
  left: 30px;
  right: 30px;
  border-top: 2px dashed #c9c9c9;
  z-index: 0;
}
.cargo-step-wrap li {
  width: 74px;
  z-index: 2;
}
.cargo-step-wrap [class*="cargo-icon"] {
  width: 74px;
  height: 74px;
  background: #e9e9e9;
  border-radius: 50%;
  position: relative;
  display: block;
  margin: 0 auto;
}
.cargo-step-wrap [class*="cargo-icon"]:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  opacity: 0.3;
}
.cargo-step-wrap .cargo-icon1:after {
  background: url(../images/icon-cargo-step1.png) no-repeat center;
}
.cargo-step-wrap .cargo-icon2:after {
  background: url(../images/icon-cargo-step2.png) no-repeat center;
}
.cargo-step-wrap .cargo-icon3:after {
  background: url(../images/icon-cargo-step3.png) no-repeat center;
}
.cargo-step-wrap .cargo-icon4:after {
  background: url(../images/icon-cargo-step4.png) no-repeat center;
}
.cargo-step-wrap .cargo-icon5:after {
  background: url(../images/icon-cargo-step5.png) no-repeat center;
}
.cargo-step-wrap .cargo-icon6:after {
  background: url(../images/icon-cargo-step6.png) no-repeat center;
}
.cargo-step-wrap .cargo-icon7:after {
  background: url(../images/icon-cargo-step7.png) no-repeat center;
}
.cargo-step-wrap .cargo-icon8:after {
  background: url(../images/icon-cargo-step8.png) no-repeat center;
}
.cargo-step-wrap .step-name {
  color: rgba(97, 97, 97, 0.5);
  margin-top: 7px;
  line-height: 1;
  font-weight: 500;
  white-space: nowrap;
  text-align: center;
  display: flex;
  justify-content: center;
}
.cargo-step-wrap .complete [class*="cargo-icon"] {
  border: 2px solid #397ffe;
}
.cargo-step-wrap .current {
  z-index: 1;
}
.cargo-step-wrap .current [class*="cargo-icon"] {
  background: #397ffe;
}
.cargo-step-wrap .current [class*="cargo-icon"]:after {
  filter: invert(99%) sepia(67%) saturate(152%) hue-rotate(200deg) brightness(115%) contrast(100%);
  opacity: 1;
}
.cargo-step-wrap .complete .step-name,
.cargo-step-wrap .current .step-name {
  color: #000;
}
.cargo-step-wrap .step-date {
  color: #fff;
  background: #0068b3;
  border-radius: 8px;
  font-size: 12px;
  width: fit-content;
  padding: 0 6px;
  line-height: 16px;
  margin: 5px auto 0 auto;
  font-weight: 300;
  letter-spacing: 0;
}

.cargo-step-wrap .current:before {
  content: "";
  left: 0;
  top: 37px;
  height: 2px;
  background: #397ffe;
  position: absolute;
  z-index: 0;
  max-width: 1500px;
}
.cargo-step-wrap .current:nth-child(2):before {
  width: 14.3%;
}
.cargo-step-wrap .current:nth-child(3):before {
  width: calc(24.6% + 74px);
}
.cargo-step-wrap .current:nth-child(4):before {
  width: calc(38.9% + 74px);
}
.cargo-step-wrap .current:nth-child(5):before {
  width: calc(53.2% + 74px);
}
.cargo-step-wrap .current:nth-child(6):before {
  width: calc(67.5% + 74px);
}
.cargo-step-wrap .current:nth-child(7):before {
  width: 85.7%;
}
.cargo-step-wrap .current:nth-child(8):before {
  width: 100%;
}

.th-tooltip-box {
  position: absolute;
  border: 1px solid #b9b9b9;
  background: #fff;
  border-radius: 3px;
  padding: 9px 15px 11px 15px;
  width: fit-content;
  min-width: 85px;
  box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.1);
  transform: translate(20%, -90%);
}
.th-tooltip-box:after {
  content: "";
  position: absolute;
  top: 100%;
  width: 15px;
  height: 15px;
  border-left: 1px solid #b9b9b9;
  background: linear-gradient(-45deg, transparent 10px, #9b9b9b 11px, white 11.5px);
  margin-top: -1px;
}
.th-tooltip-item {
  display: flex;
  align-items: center;
  gap: 5px;
}
.th-tooltip-item + .th-tooltip-item {
  margin-top: 5px;
}
.th-tooltip-name {
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0;
}
.th-tooltip-item [class*="icon-status"] {
  width: 8px;
  height: 8px;
}

.chart-type1 {
  width: 250px;
  position: relative;
}
.chart-type1 .chart-data {
  font-size: 18px;
  position: absolute;
  left: 0;
  right: 0;
  top: 55%;
}
.chart-type1 .chart-data strong {
  font-size: 28px;
}
.chart-type1 .chart-tit {
  font-size: 14px;
  font-weight: 500;
  margin-top: 10px;
}

.ui-multiselect {
  padding: 2px 0 2px 4px;
  text-align: left;
  width: 115px !important;
}
.ui-multiselect span.ui-icon {
  display: none;
}
.ui-multiselect-single .ui-multiselect-checkboxes input {
  left: -9999px;
  position: absolute !important;
  top: auto !important;
}
.ui-multiselect-single .ui-multiselect-checkboxes label {
  padding: 5px !important;
}

.ui-multiselect-header {
  margin-bottom: 3px;
  padding: 3px 0 3px 4px;
}
.ui-multiselect-header ul {
  font-size: 0.9em;
}
.ui-multiselect-header ul li {
  float: left;
  padding: 0 10px 0 0;
}
.ui-multiselect-header a {
  text-decoration: none;
}
.ui-multiselect-header a:hover {
  text-decoration: underline;
}
.ui-multiselect-header span.ui-icon {
  float: left;
}
.ui-multiselect-header .ui-multiselect-close {
  float: right;
  padding-right: 0;
  text-align: right;
}

.ui-multiselect-menu {
  display: none;
  padding: 3px;
  position: absolute;
  text-align: left;
  width: fit-content !important;
  max-width: 300px;
  z-index: 2;
  transform: translateX(32px);
}
.ui-multiselect-checkboxes {
  overflow-y: auto;
  position: relative;
  padding: 0 3px;
}
.ui-multiselect-checkboxes label {
  border: 1px solid transparent !important;
  cursor: pointer;
  display: block;
  padding: 2px 5px;
}
.ui-multiselect-checkboxes label input {
  position: relative;
  top: 2px;
  margin-right: 5px;
  width: 14px;
  height: 14px;
  border: 1px solid #c3c3c3;
  background: transparent;
  appearance: none;
  border-radius: 2px;
}
.ui-multiselect-checkboxes label span {
  font-size: 13px;
}
.ui-multiselect-checkboxes label input:checked {
  border-color: #232323;
  background: #232323 url(../images/icon-checked.png) no-repeat center;
  background-size: 11px;
  background-position: 1px center;
}
.ui-multiselect-checkboxes label img {
  height: 30px;
  vertical-align: middle;
  padding-right: 3px;
}
.ui-multiselect-checkboxes li {
  clear: both;
  font-size: 0.9em;
  list-style: none;
}
.ui-multiselect-checkboxes .ui-multiselect-optgroup {
  padding: 3px;
}
.ui-multiselect-columns {
  display: inline-block;
  vertical-align: top;
}
.ui-multiselect-checkboxes .ui-multiselect-optgroup a {
  border-bottom: 1px solid;
  cursor: pointer;
  display: block;
  font-weight: bold;
  margin: 1px 0;
  padding: 3px;
  text-align: center;
  text-decoration: none;
}
.ui-multiselect-header .ui-multiselect-close {
  padding-left: 0 !important;
}
.ui-multiselect-header .ui-multiselect-close a {
  background: none;
}
.ui-multiselect-menu .ui-icon-circle-close {
  background: url(../images/icon-close.png) no-repeat center;
  background-size: 11px;
}
.ui-multiselect-header {
  background: transparent;
  border: 0 none;
}
.ui-multiselect-header a {
  display: flex;
  align-items: center;
  background: #efefef;
  border-radius: 3px;
  font-weight: 400;
  padding: 3px 6px;
}
.ui-multiselect-header a span {
  font-size: 11px;
}

@media print {
  .ui-multiselect-menu {
    display: none;
  }
}

.invoice-popup {
  width: calc(100% - 40px);
  max-width: 2000px;
}
.invoice-popup .popup-con {
  width: 100%;
  padding: 50px 30px 25px 30px;
}
.invoice-popup .con-tit1 {
  font-weight: 700;
  font-size: 20px;
  line-height: 1.4;
  margin-bottom: 20px;
}
.invoice-popup .con-tit1 span {
  font-weight: 500;
  font-size: 14px;
  display: block;
}

.invoice-container {
  width: 100%;
}
.invoice-container + .invoice-container {
  margin-top: 15px;
}
.invoice-table {
  width: 100%;
  border: 3px double #000;
  border-spacing: 0px;
  border-style: double;
  border-collapse: collapse;
}
.invoice-table td,
.invoice-table th {
  padding: 5px 7px;
  height: 30px;
  border: 1px solid #000;
}
.invoice-container.detail {
  overflow: auto;
  max-height: 700px;
}
.invoice-container.detail th {
  white-space: nowrap;
}
.invoice-container.detail td {
  border-style: dotted;
  white-space: nowrap;
  text-align: center;
}
.invoice-container.detail thead {
  border-bottom: 3px double #000;
}
.invoice-container.detail tfoot {
  border-style: solid;
  border-top: 2px solid #000;
}
.invoice-container.detail thead th:last-child,
.invoice-container.detail tfoot td:last-child,
.invoice-container.detail tbody td:last-child {
  border-left: 3px double #000;
}
.invoice-container.detail tbody td:first-child {
  border-right-style: solid;
}
.invoice-container .td-tit {
  width: 90px;
  display: inline-block;
  text-align: justify;
  height: 16px;
  vertical-align: middle;
}
.invoice-container .td-tit:after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 0;
}

/* 메인 */
.content-wrap.main .main-inner {
  display: flex;
  flex-wrap: wrap;
  gap: 25px;
  align-items: flex-start;
  height: 100%;
}
.content-wrap.main .full {
  flex: 1 1 100%;
}
.content-wrap.main .half {
  flex: 0 0 calc(50% - 12.5px);
  height: calc(100% - 315px);
}
.content-wrap.main .half2 {
  /*flex: 0 0 calc(50% - 12.5px);*/
  height: calc(100% - 315px);
}
.main-status-wrap {
  padding: 23px 25px 35px 25px;
  height: 290px;
}
.content-wrap.main .half .main-table-wrap {
  height: 100%;
}
.main-status-top {
  display: flex;
  justify-content: space-between;
}
.main-status-top .status-tit {
  font-weight: 500;
  font-size: 20px;
}
.main-status-top .status-util {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.main-status-top .status-util > div {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  align-items: center;
}
.main-status-top .status-util .util-tit {
  font-weight: 500;
  font-size: 15px;
}
.main-status-top .status-util select {
  width: 160px;
}
.chart-type2 {
  position: relative;
  width: 136px;
}
.chart-type2 .chart-data {
  position: absolute;
  top: 65px;
  left: 0;
  right: 0;
  text-align: center;
  font-size: 15px;
  font-weight: 500;
}
.chart-type2 .chart-data strong {
  font-size: 20px;
}

.main-status-chart {
  margin-top: 20px;
}
.main-status-chart .chart-wrap {
  position: relative;
  margin: 0 auto;
  padding: 0;
  display: flex;
  text-align: center;
  max-width: 1400px;
  justify-content: space-between;
}
.main-status-chart .chart-wrap:before {
  content: "";
  position: absolute;
  top: 78px;
  left: 0;
  right: 0;
  height: 2px;
  border-top: 3px dashed #d9d9d9;
}
.main-status-chart .chart-wrap > div {
  background: #fff;
}
.main-status-chart .chart-wrap .chart-tit {
  font-weight: 500;
  margin-top: 15px;
  font-size: 15px;
}
.main-table-wrap {
  border-radius: 10px;
  overflow: hidden;
  height: 595px;
  display: flex;
  flex-direction: column;
}
.main-table-wrap .main-table-tit {
  display: flex;
  color: #000;
  font-weight: 500;
  align-items: center;
  height: 55px;
  letter-spacing: 0;
  font-size: 18px;
  gap: 13px;
  padding: 0 16px;
  flex: 0 0 55px;
}
.main-table-wrap .main-table-tit.type1 {
  background: #0068b3;
  color: #fff;
  justify-content: center;
  font-size: 20px;
  font-weight: 400;
  border-bottom: 1px solid #014678;
}
.main-table-wrap .main-table-tit.type2 {
  background: #043960;
  color: #fff;
  justify-content: center;
  font-size: 20px;
  font-weight: 400;
  border-bottom: 1px solid #000;
}
.main-table-thead {
  background: #547994;
  color: #fff;
  width: 100%;
  flex: 0 0 40px;
}
.main-table-thead th {
  color: #fff;
  line-height: 36px;
  font-weight: 400;
  font-family: "Noto Sans", "Roboto", sans-serif;
}
.main-table-tbody {
  overflow-y: auto;
  width: 100%;
  text-align: center;
}
.main-table-tbody::-webkit-scrollbar {
  width: 8px;
}
.main-table-tbody::-webkit-scrollbar-thumb {
  background: #76747459;
}
.main-table-tbody::-webkit-scrollbar-track {
  background: #ededed;
}

.main-table-tbody table {
  border-spacing: 0px;
  width: 100%;
}
.main-table-tbody td {
  border-bottom: 1px solid #e1dbdb;
  height: 40px;
  font-family: "Noto Sans", "Roboto", sans-serif;
}
.main-table-tbody .type1 {
  background: #f0efef;
}
.main-table-tbody .type2 {
  background: #ffe1e1;
}
.main-table-tbody .type3 {
  background: #e5f0f2;
}

.main-table-tbody .type1 .status-txt {
  color: #000;
}
.main-table-tbody .type2 .status-txt {
  color: #b62727;
}
.main-table-tbody .type3 .status-txt {
  color: #0068b3;
}
.main-table-tbody.type2 tr:nth-child(odd) {
  background: #f6f6f6;
}

.main-box1 {
  padding: 25px 20px 15px 20px;
  align-self: stretch;
  display: flex;
  flex-direction: column;
  max-height: 290px !important;
}
.main-box-tit {
  font-size: 20px;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 8px;
}
.main-cnt-wrap {
  display: flex;
  gap: 15px;
  justify-content: center;
  align-items: center;
  flex: 1;
  margin-top: 10px;
}
.main-cnt-box {
  border-radius: 27px;
  border: 1px solid #dfdfdf;
  background: #f6f6f6;
  box-shadow: 2px 4px 6px 0px rgba(0, 0, 0, 0.07);
  flex: 1;
  max-width: 240px;
  padding: 45px 0 20px 0;
  position: relative;
}
.main-cnt-box .cnt-box-tit {
  position: absolute;
  top: 0;
  left: 38px;
  right: 39px;
  background: #8cc63f;
  color: #fff;
  text-align: center;
  font-size: 16px;
  font-weight: 500;
  padding: 7px 0 8px 0;
}
.main-cnt-box .cnt-box-tit:after {
  content: "";
  position: absolute;
  top: 0;
  left: 100%;
  height: 100%;
  width: 25px;
  background: url(../images/bg-cnt-box-r.png);
}
.main-cnt-box .cnt-box-tit:before {
  content: "";
  position: absolute;
  top: 0;
  right: 100%;
  height: 100%;
  width: 25px;
  background: url(../images/bg-cnt-box-l.png);
}
.main-cnt-box .cnt {
  color: #0068b3;
  font-size: 80px;
  font-weight: 500;
  text-align: center;
  line-height: normal;
}

.main-box1 .main-cnt-list {
  margin-top: 17px;
  border: 1px solid #c6c6c6;
  border-bottom: 0;
}
.main-box1 .table-container table tr th:not(:last-child),
.main-box1 .table-container table tr td:not(:last-child) {
  height: 45px;
}

.main-cnt-list p {
  height: 45px;
  text-align: center;
  border-bottom: 1px solid #e3e3e3;
  line-height: 43px;
}
.main-cnt-list p + p {
  border-left: 1px solid #c6c6c6;
}
.main-cnt-head {
  background: #f6f6f6;
  font-weight: 500;
}
.main-cnt-body {
  max-height: 135px;
  overflow-y: auto;
}
.main-cnt-head,
.main-cnt-body li {
  display: flex;
  width: 100%;
}
.main-cnt-list p:first-child {
  flex: 3;
}
.main-cnt-list p:last-child {
  flex: 1.5;
}
.main-cnt-body li > p {
}
.main-cnt-body::-webkit-scrollbar {
  width: 8px;
}
.main-cnt-body::-webkit-scrollbar-thumb {
  background: #76747459;
}
.main-cnt-body::-webkit-scrollbar-track {
  background: #ededed;
}

/* 매뉴얼 툴팁 */
.manualWrap{
  position: relative; 
  display: inline-block;
}
.manualToolTip{
  width: 70px;
  background-color: #0068b3;
  color: #ffffff;
  text-align: center;
  border-radius: 6px;
  padding: 5px 0;
  position: absolute;
  z-index: 1;
  top: 1px;
  right: 115%;
  display: none;
}
.manualToolTip:after{
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  margin-top: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent transparent #0068b3;
} 
.manualWrap:hover .manualToolTip{display: block;}

/* 차트 명 툴팁 */
.chartWrap{
  position: relative; 
  display: inline-block;
}
.chartToolTip {
  width: 70px;
  background-color: #0068b3;
  color: #ffffff;
  text-align: center;
  border-radius: 6px;
  padding: 5px 0;
  position: absolute;
  z-index: 2;
  top: 120%;
  left: 50%;
  transform: translateX(-50%);
  display: none;
}
.chartToolTip:after {
  display: block;
  content: "";
  position: absolute;
  bottom: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent #0068b3 transparent;
} 
.chartWrap:hover .chartToolTip{display: block;}

