/* 전체 영역 */
.wrap {
    min-width: 1023px;
}

/* ------------------------------------------------------------------------------- */

/* 헤더 영역 */
.header-area {
    height: 58px;
    box-sizing: border-box;
    border: 1px solid #F5F6F8;
    padding: 0 20px;
}
.header-area .logo-box {
    width: 116px;
}
.header-area .notice-btn {
    box-sizing: border-box;
    padding: 4px 14px;
    border-radius: 50px;
}
.header-area .logout-btn {
    box-sizing: border-box;
    padding: 7px 19px;
    border-radius: 50px;
}

/* ------------------------------------------------------------------------------- */

/* 인풋 타입 */

.input-type-1 input {
    width: 100%;
    height: 4rem;
    min-height:100%;
    box-sizing: border-box;
    border: 1px solid #DBDBDB;
    border-radius: 5px;
    padding: 0 16px;
    background: #fff;
    color: #000;
}
.input-type-1 input::placeholder {
    color: #949494;
}
.input-type-1 .input-x-btn {
    right: 20px;
}

/* ------------------------------------------------------------------------------- */

/* 체크 텍스트 타입 */

.check-text-type-1 {
    box-sizing: border-box;
    padding: 12px 10px;
    border-radius: 5px;
    border: 1px solid #f5f5f5;
}
.check-text-type-1.active {
    background: rgba(220, 46, 46, 0.11);
    border: 1px solid #E63A45;
}
.check-text-type-1 input[type=checkbox] {
    display: none;
}
.check-text-type-1 input[type=checkbox] + label {
    display: inline-block;
    cursor: pointer;
    line-height: 26px;
    padding-left: 34px;
    background: url(../img/ico-check-1.svg) left/26px no-repeat;
}
.check-text-type-1 input[type=checkbox]:checked + label {
    background: url(../img/ico-check-1-active.svg) left/26px no-repeat;
}
.check-text-type-1 input[type=checkbox]:checked + label {
    color: #E63A45;
}

/* ------------------------------------------------------------------------------- */

/* 체크 타입 */

.check-type-1 {
    display: inline-block;
    width: 20px;
    height: 20px;
}
.check-type-1 input[type=checkbox] {
    display: none;
}
.check-type-1 input[type=checkbox] + label {
    display: block;
    width: 100%;
    height: 100%;
    cursor: pointer;
    background: url(../img/ico-check-2.svg) no-repeat center center/cover;
}
.check-type-1 input[type=checkbox]:checked + label {
    background: url(../img/ico-check-2-active.svg) no-repeat center center/cover;
}

/* ------------------------------------------------------------------------------- */

/* 검색 타입 */
.search-type-1 input {
    width: 100%;
    height: 100%;
    border: 1px solid #DBDBDB;
    border-radius: 5px;
    box-sizing: border-box;
    padding: 0 75px 0 45px;
    color: #000;
}
.search-type-1 input::placeholder {
    color: #949494;
}
.search-type-1 .search-ico {
    left: 13px;
}
.search-type-1 .search-btn {
    width: 50px;
    height: 33px;
    right: 11px;
    border-radius: 5px;
}

/* ------------------------------------------------------------------------------- */

/* 페이지 숫자 영역 */
.page-number-area .number-box li {
    width: 29px;
    height: 29px;
    box-sizing: border-box;
    border: 1px solid #D9D9D9;
    border-radius: 5px;
}
.page-number-area .number-box li:not(:last-child) {
    margin-right: 5px;
}
.page-number-area .number-box li.active {
    color: #000;
}

/* ------------------------------------------------------------------------------- */

/* 테이블 타입 */
.table-type-11 {
    overflow-x: auto;
}
.table-type-11 table tr th {
    font-size: 1.5rem;
    color: #232323;
    box-sizing: border-box;
    min-width: 20rem;
    max-width: 20rem;
    height: 5.2rem;
    border: 1px solid #EEEEEE;
    background: #FAFAFA;
    white-space: nowrap;
    line-height: 120%;
    text-align: center;
    font-weight: inherit;
    font-family: "Pretendard-Medium";
}
.table-type-11 table tr:first-child th {
    border-top-color: #008ACE;
}
.table-type-1 table tr th:first-child {
    border-left: none;
}
.table-type-11 table tr td {
    min-width: 51.15rem;
    max-width: 51.15rem;
    font-size: 1.5rem;
    color: #21242B;
    box-sizing: border-box;
    padding: 0.8rem 1.2rem;
    height: 5.2rem;
    border: 1px solid #EEEEEE;
    background: #fff;
    white-space: nowrap;
    text-align: left;
    font-weight: inherit;
}
.table-type-11 table tr td.td-3 {
    min-width: 122.3rem;
    max-width: 122.3rem;
}
.table-type-11 table tr:first-child td {
    border-top-color: #008ACE;
}

/* 테이블 타입-1 */
.table-type-1 {
    overflow-x: auto;
}
.table-type-1 table {
    border-collapse: separate;
    border-spacing: 0 12px;
}
.table-type-1 table tr th {
    font-size: 13px;
    color: #5C5C5C;
    box-sizing: border-box;
    padding: 10px 12px 0 12px;
    border: none;
    white-space: nowrap;
    text-align: center;
    font-weight: inherit;
}
.table-type-1 table tr:first-child th {
    border-top-color: #008ACE;
}
.table-type-1 table tr th:first-child {
    border-left: none;
}
.table-type-1 table tr td {
    font-size: 15px;
    color: #000;
    box-sizing: border-box;
    padding: 16px 12px;
    border-top: 1px solid #DBDBDB;
    border-bottom: 1px solid #DBDBDB;
    background: #fff;
    white-space: nowrap;
    text-align: center;
    font-weight: inherit;
}
.table-type-1 table tr.active td {
    background: #F1F1F1;
}
.table-type-1 table tr td:first-child {
    border-left: 1px solid #DBDBDB;
    border-radius: 5px 0 0 5px;
}
.table-type-1 table tr td:last-child {
    border-right: 1px solid #DBDBDB;
    border-radius: 0 5px 5px 0;
}
.table-type-1 table tr td.btn-td {
    width: 104px;
}
.table-type-1 table tr td .btn-1 {
    width: 80px;
    height: 32px;
    font-size: 13px;
    border-radius: 50px;
}
.table-type-2 {
    overflow-x: auto;
}
.table-type-2 table {
    border-collapse: separate;
    border-spacing: 0;
    margin-top:2rem;
    border-top:1px solid #F0F0F0;
}
.table-type-2 table tr th {
    font-size: 1.5rem;
    color: #21242B;
    box-sizing: border-box;
    padding: 1.8rem 1.2rem;
    border: none;
    background: #F9F9F9;
    white-space: nowrap;
    line-height: 100%;
    text-align: center;
    font-weight: inherit;
    width:20%;
    text-align:left;
    border-bottom:1px solid #F0F0F0;
    border-right:1px solid #F0F0F0;
}
.table-type-2 table tr td {
    font-size: 15px;
    color: #000;
    box-sizing: border-box;
    padding: 1.8rem 1.2rem;
    border-bottom:1px solid #F0F0F0;
    background: #fff;
    white-space: nowrap;
    text-align: left;
    font-weight: inherit;
    width:70%;
}
.table-type-3 {
    overflow-x: auto;
}
.table-type-3 table {
    border-collapse: separate;
    border-spacing: 0;
    margin-top:2rem;
    border-top:1px solid #F0F0F0;
    border-left:1px solid #F0F0F0;
}
.table-type-3 table tr th {
    font-size: 1.5rem;
    color: #21242B;
    box-sizing: border-box;
    padding: 1.8rem 1.2rem;
    border: none;
    background: #F9F9F9;
    white-space: nowrap;
    line-height: 100%;
    text-align: center;
    font-weight: inherit;
    text-align:left;
    border-bottom:1px solid #F0F0F0;
    border-right:1px solid #F0F0F0;
    width:15%;
}
.table-type-3 table tr td {
    font-size: 15px;
    color: #000;
    box-sizing: border-box;
    padding: 1.8rem 1.2rem;
    border-bottom:1px solid #F0F0F0;
    border-right:1px solid #F0F0F0;
    background: #fff;
    white-space: nowrap;
    text-align: left;
    font-weight: inherit;
    width:35%;
}
.table-type-3 table tr td.center {
    text-align: "center";
}
.table-type-3 table tr.on td {
    background: #F9F9F9;
}

.table-type-4 {
    overflow-x: auto;
}
.table-type-4 table {
    border-collapse: separate;
    border-spacing: 0;
    margin-top:2rem;
    border-top:1px solid #F0F0F0;
}
.table-type-4 table tr th {
    font-size: 1.5rem;
    color: #21242B;
    box-sizing: border-box;
    padding: 1.8rem 1.2rem;
    border: none;
    background: #F9F9F9;
    white-space: nowrap;
    line-height: 100%;
    text-align: center;
    font-weight: inherit;
    width:15%;
    text-align:left;
    border-bottom:1px solid #F0F0F0;
    border-right:1px solid #F0F0F0;
}
.table-type-4 table tr td {
    font-size: 15px;
    color: #000;
    box-sizing: border-box;
    padding: 1.8rem 1.2rem;
    border-bottom:1px solid #F0F0F0;
    background: #fff;
    white-space: nowrap;
    text-align: left;
    font-weight: inherit;
    width:84%;
}
/* ------------------------------------------------------------------------------- */

/* 버튼 타입 */

.btn-box .btn-type-1 {
    width: 126px;
    height: 38px;
    border-radius: 5px;
}
.btn-box .btn-type-1:not(:first-child) {
    margin-left: 10px;
}

.btn-box .btn-type-2 {
    width: 148px;
    height: 50px;
    border-radius: 5px;
}

.btn-type-3 {
    box-sizing: border-box;
    padding: 8px 12px;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ------------------------------------------------------------------------------- */

/* 모달 영역 */
.modal-area {
    display: none;
}
.modal-area.active {
    display: block;
}
.modal-area .bg {
    background: rgba(0,0,0,0.4);
    display: none;
}
.modal-area.active .bg {
    display: block;
}
.modal-area .modal {
    display: none;
}
.modal-area .modal .x-btn {
    top: 16px;
    right: 16px;
}   

.modal-area .modal-type-1 {
    width: 366px;
    border-radius: 5px;
    box-sizing: border-box;
    padding: 72px 16px 16px 16px;
}
.modal-area .modal-type-1.active {
    display: block;
}
.modal-area .modal-type-1 .btn-box .btn {
    border-radius: 5px;
    height: 64px;
}
.modal-area .modal-type-1 .btn-box .btn:first-child {
    width: 140px;    
}
.modal-area .modal-type-1 .btn-box .btn:last-child {
    width: 184px;
}

/* ------------------------------------------------------------------------------- */

/* 내용 없을 때 박스 */
.none-cnt-box {
    box-sizing: border-box;
    padding: 40px 0;
}

/* 셀렉트 타입-1 */
.select-type-1 {
    width: 100%;
    height: 50px;
    position: relative;
}
.select-type-1 select {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    border: 1px solid #dbdbdb;
    padding: 0 32px 0 12px;
    background: #fff;
    font-size: 14px;
    color: #333333;
    border-radius: 6px;
}
.select-type-1 .arrow {
    position: absolute;
    width: 20px;
    top: 50%;
    right: 8px;
    transform: translateY(-50%);
    pointer-events: none;
}
.select-type-1 .arrow img {
    width: 100%;
    display: block;
}

.select-type-2 {
    height: 50px;
    position: relative;
}
.select-type-2 select {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    border: 1px solid #dbdbdb;
    padding: 0 32px 0 12px;
    background: #fff;
    font-size: 14px;
    color: #333333;
    border-radius: 6px;
}
.select-type-2 .arrow {
    position: absolute;
    width: 20px;
    top: 50%;
    right: 8px;
    transform: translateY(-50%);
    pointer-events: none;
}
.select-type-2 .arrow img {
    width: 100%;
    display: block;
}
/* 커스텀 셀렉트 타입-1 */
.custom-select-type-1 .selected {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding: 0 8px;
    background: #fff;
    border-radius: 5px;
    cursor: pointer;
}
.custom-select-type-1.active .selected {
    border-radius: 5px 5px 0 0;
}
.custom-select-type-1 .selected .selected-value {
    max-width: calc(100% - 12px);
}
.custom-select-type-1 ul li,
.custom-select-type-1 .selected .selected-value {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.custom-select-type-1 ul {
    width: 100%;
    box-sizing: border-box;
    display: none;
    position: absolute;
    cursor: pointer;
    border-radius: 0 0 5px 5px;
    background: #fff;
    z-index: 1;
    overflow: hidden;
}
.custom-select-type-1.active ul {
    display: block;
}
.custom-select-type-1 ul li {
    padding: 12px 8px;
    background: #fff;
}
.custom-select-type-1 ul li:hover {
    background: #eee;
}

/* ------------------------------------------------------------------------------- */

/* 데이트 타입 */

.date-type-1 input {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    border: none;
    border-radius: 5px;
    padding: 0 8px;
    background: #fff;
}
.input-type-1 input::placeholder {
    color: #949494;
}
