@charset "UTF-8"; /*-------------------------------------------------------------------
	분류그룹 : 캘린더
	속성순서 : 레이아웃, 박스 모델, 배경, 폰트/정렬, 기타
-------------------------------------------------------------------*/
.calendar-wrap {
    display: block;
    position: relative;
    border: 1px solid #e9e9e9;
    font-size: 16px;
}

.calendar-wrap * {
    margin: 0px;
    padding: 0px;
    font-family: inherit;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

/*-------------------------------------------------------------------
	분류그룹 : 캘린더 > 헤더 (타이틀, 버튼)
	속성순서 : 레이아웃, 박스 모델, 배경, 폰트/정렬, 기타
-------------------------------------------------------------------*/
.calendar-wrap .cal-header {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    height: 60px;
    margin: 0 auto;
    padding: 0 20px;
    background-color: #fafafa;
    -webkit-box-pack: center;
    -moz-box-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.calendar-wrap .cal-header .cal-header-box {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    max-width: 800px;
    width: 100%;
}

.calendar-wrap .cal-header .cal-header-box .cal-title {
    display: block;
    line-height: 40px;
    font-weight: 700;
    font-size: 25px;
    text-align: center;
    color: #000;
    flex-grow: 1;
}

.calendar-wrap .cal-header .cal-header-box .btn-cal {
    display: block;
    position: relative;
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 5px;
    background-color: transparent;
    cursor: pointer;
}

.calendar-wrap .cal-header .cal-header-box .btn-cal::before {
    content: "";
    position: absolute;
    top: calc(50% - 6px);
    left: calc(50% - 4px);
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
}

.calendar-wrap .cal-header .cal-header-box .btn-cal.prev::before {
    border-right: 8px solid #000;
}

.calendar-wrap .cal-header .cal-header-box .btn-cal.next::before {
    border-left: 8px solid #000;
}

.calendar-wrap.type-event .cal-header {
    padding: 0 60px;
}

/*-------------------------------------------------------------------
	@interaction
-------------------------------------------------------------------*/
.calendar-wrap .cal-header .cal-header-box .btn-cal {
    transition: background 0.3s;
}

.calendar-wrap .cal-header .cal-header-box .btn-cal::before {
    transition: border 0.3s;
}

.calendar-wrap .cal-header .cal-header-box .btn-cal:focus, .calendar-wrap .cal-header .cal-header-box .btn-cal:hover {
    background-color: #56b1f9;
}

.calendar-wrap .cal-header .cal-header-box .btn-cal.prev:focus::before, .calendar-wrap .cal-header .cal-header-box .btn-cal.prev:hover::before {
    border-right-color: #fff;
}

.calendar-wrap .cal-header .cal-header-box .btn-cal.next:focus::before, .calendar-wrap .cal-header .cal-header-box .btn-cal.next:hover::before {
    border-left-color: #fff;
}

/*-------------------------------------------------------------------
	@media
-------------------------------------------------------------------*/
@media screen and (max-width: 1024px) {
    .calendar-wrap .cal-header {
        padding: 0 15px;
    }

    .calendar-wrap.type-event .cal-header {
        padding: 0 30px;
    }
}

@media screen and (max-width: 600px) {
    .calendar-wrap .cal-header {
        height: 50px;
    }

    .calendar-wrap .cal-header .cal-header-box .cal-title {
        font-size: 20px;
        line-height: 40px;
    }
}

@media screen and (max-width: 425px) {
    .calendar-wrap.type-event .cal-header {
        padding: 0 10px;
    }

    .calendar-wrap .cal-header .cal-header-box .cal-title {
        font-size: 16px;
    }
}

/*-------------------------------------------------------------------
	분류그룹 : 캘린더 > 헤더 (타이틀, 버튼) > 필터
	속성순서 : 레이아웃, 박스 모델, 배경, 폰트/정렬, 기타
-------------------------------------------------------------------*/
.calendar-wrap .cal-header .cal-utils {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 0;
    right: 20px;
    height: 100%;
    -webkit-box-align: center;
    -moz-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.calendar-wrap .cal-header .cal-utils .btn-filter {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    width: 30px;
    height: 30px;
    border-radius: 5px;
    background-color: transparent;
    -webkit-box-align: center;
    -moz-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -moz-box-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.calendar-wrap .cal-header .cal-utils .btn-filter .i-filter {
    display: block;
    width: 20px;
    height: 20px;
}

.calendar-wrap .cal-header .cal-utils .btn-filter .i-filter .p1 {
    fill: #141414;
}

.calendar-wrap .cal-filter {
    overflow: hidden;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 10;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,0.1);
}

.calendar-wrap .cal-filter .flt-box {
    display: block;
    width: 440px;
    height: 100%;
    margin-left: auto;
    border-left: 1px solid #e9e9e9;
    border-radius: 5px 0 0 5px;
    background-color: #fff;
    box-shadow: 0 0 5px 0 rgba(0,0,0,0.2);
}

.calendar-wrap .cal-filter .flt-box .flt-header {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    height: 60px;
    padding: 15px 20px;
    -webkit-box-align: center;
    -moz-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -moz-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.calendar-wrap .cal-filter .flt-box .flt-header .flt-title {
    display: block;
    position: relative;
    padding-left: 10px;
    line-height: 1;
    font-weight: 700;
    font-size: 1.5rem;
    color: #141414;
}

.calendar-wrap .cal-filter .flt-box .flt-header .flt-title::before {
    content: "";
    position: absolute;
    top: 0.125rem;
    left: 0;
    width: 4px;
    height: 1.25rem;
    background-color: #24307C;
}

.calendar-wrap .cal-filter .flt-box .flt-header .btn-flt-close {
    display: block;
    position: relative;
    width: 30px;
    height: 30px;
    margin-left: auto;
    background-color: transparent;
}

.calendar-wrap .cal-filter .flt-box .flt-header .btn-flt-close > span {
    position: absolute;
    overflow: hidden;
    width: 1px;
    height: 1px;
    margin: -1px;
    clip: rect(0 0 0 0);
}

.calendar-wrap .cal-filter .flt-box .flt-header .btn-flt-close::before {
    content: "";
    position: absolute;
    top: calc(50% - 1.5px);
    left: 0;
    width: 100%;
    height: 3px;
    border-radius: 3px;
    background-color: #000000;
    transform: rotate(45deg);
}

.calendar-wrap .cal-filter .flt-box .flt-header .btn-flt-close::after {
    content: "";
    position: absolute;
    top: calc(50% - 1.5px);
    left: 0;
    width: 100%;
    height: 3px;
    border-radius: 3px;
    background-color: #000000;
    transform: rotate(-45deg);
}

.calendar-wrap .cal-filter .flt-box .flt-body {
    display: block;
    overflow-x: hidden;
    overflow-y: auto;
    height: calc(100% - 60px);
    padding: 0 20px 20px;
}

.calendar-wrap .cal-filter .flt-box .flt-body .flt-list {
    display: block;
}

.calendar-wrap .cal-filter .flt-box .flt-body .flt-list .flt-item {
    display: block;
    margin-bottom: 15px;
    padding: 15px 10px 10px;
    border-radius: 5px;
    background-color: #f7f8fa;
}

.calendar-wrap .cal-filter .flt-box .flt-body .flt-list .flt-item .flt-item-tit {
    display: block;
    position: relative;
    margin-bottom: 15px;
    line-height: 1;
    font-weight: 700;
    font-size: 1.125rem;
    color: #141414;
}

.calendar-wrap .cal-filter .flt-box .flt-body .flt-list .flt-item .flt-ck-list {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -5px;
    flex-wrap: wrap;
}

.calendar-wrap .cal-filter .flt-box .flt-body .flt-list .flt-item .flt-ck-list .flt-ck-item {
    display: block;
    padding: 0 5px;
}

.calendar-wrap .cal-filter .flt-box .flt-body .flt-list .flt-item .flt-ck-list .flt-ck-item .flt-ck {
    display: block;
    padding: 5px 0;
}

.calendar-wrap .cal-filter .flt-box .flt-body .flt-list .flt-item .flt-ck-list .flt-ck-item .flt-ck .flt-ck-val {
    display: block;
    position: absolute;
    overflow: hidden;
    width: 1px;
    height: 1px;
    margin: -1px;
    clip: rect(0 0 0 0);
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.calendar-wrap .cal-filter .flt-box .flt-body .flt-list .flt-item .flt-ck-list .flt-ck-item .flt-ck > span {
    display: block;
    overflow: hidden;
    position: relative;
    padding: 8px 12px;
    border: 1px solid #e9e9e9;
    border-radius: 5px;
    background-color: #ffffff;
    line-height: 1;
    font-weight: 500;
    font-size: 14px;
    color: #666666;
    cursor: pointer;
}

.calendar-wrap .cal-filter .flt-box .flt-body .flt-btn-wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 20px;
    -webkit-box-pack: center;
    -moz-box-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.calendar-wrap .cal-filter .flt-box .flt-body .flt-btn-wrap .btn-flt {
    display: block;
    min-width: 60px;
    height: 40px;
    margin-right: 10px;
    border-radius: 5px;
}

.calendar-wrap .cal-filter .flt-box .flt-body .flt-btn-wrap .btn-flt:last-child {
    margin-right: 0;
}

.calendar-wrap .cal-filter .flt-box .flt-body .flt-btn-wrap .btn-flt > span {
    display: block;
    font-weight: 600;
    font-size: 1rem;
    color: #ffffff;
}

.calendar-wrap .cal-filter .flt-box .flt-body .flt-btn-wrap .btn-flt.type-search {
    background-color: #24307C;
    flex-grow: 1;
}

.calendar-wrap .cal-filter .flt-box .flt-body .flt-btn-wrap .btn-flt.type-reset {
    background-color: #141414;
}

/*-------------------------------------------------------------------
	@interaction
-------------------------------------------------------------------*/
.calendar-wrap .cal-filter {
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s 0.4s, opacity 0.4s, transform 0.4s;
}

.calendar-wrap .cal-filter.act {
    visibility: visible;
    opacity: 1;
    transition: visibility 0s 0s, opacity 0.4s, transform 0.4s;
}

.calendar-wrap .cal-filter .flt-box {
    opacity: 0;
    transform: translateX(100%);
    transition: opacity 0.4s, transform 0.4s;
}

.calendar-wrap .cal-filter.act .flt-box {
    opacity: 1;
    transform: translateX(0);
}

.calendar-wrap .cal-filter .flt-box .flt-body .flt-list .flt-item .flt-ck-list .flt-ck-item .flt-ck .flt-ck-val:focus + span, .calendar-wrap .cal-filter .flt-box .flt-body .flt-list .flt-item .flt-ck-list .flt-ck-item .flt-ck .flt-ck-val:hover + span {
    border-color: #24307C;
    color: #24307C;
}

.calendar-wrap .cal-filter .flt-box .flt-body .flt-list .flt-item .flt-ck-list .flt-ck-item .flt-ck .flt-ck-val:checked + span {
    border-color: #24307C;
    background-color: #24307C;
    color: #ffffff;
}

.calendar-wrap .cal-header .cal-utils .btn-filter {
    transition: background 0.3s;
}

.calendar-wrap .cal-header .cal-utils .btn-filter:focus, .calendar-wrap .cal-header .cal-utils .btn-filter:hover {
    background-color: #24307C;
}

.calendar-wrap .cal-header .cal-utils .btn-filter .i-filter .p1 {
    transition: fill 0.3s;
}

.calendar-wrap .cal-header .cal-utils .btn-filter:focus .i-filter .p1, .calendar-wrap .cal-header .cal-utils .btn-filter:hover .i-filter .p1 {
    fill: #ffffff;
}

/*-------------------------------------------------------------------
	분류그룹 : 캘린더 > 바디 (달력)
	속성순서 : 레이아웃, 박스 모델, 배경, 폰트/정렬, 기타
-------------------------------------------------------------------*/
.calendar-wrap .cal-body {
    display: block;
}

.calendar-wrap .cal-body .calendar {
    position: relative;
    width: 100%;
    table-layout: fixed;
    border-spacing: 0px;
    border-collapse: collapse;
    text-align: center;
}

.calendar-wrap .cal-body .calendar th {
    width: 14.2%;
    height: 60px;
    padding: 12px 0;
    border-width: 1px 1px 0 0;
    border-style: solid;
    border-color: #e9e9e9;
    font-size: 16px;
    color: #000;
    background-color: #fafafa;
}

.calendar-wrap .cal-body .calendar tr th:first-child {
    color: red;
}

.calendar-wrap .cal-body .calendar tr th:last-child {
    border-width: 1px 0 0 0;
    color: blue;
}

.calendar-wrap .cal-body .calendar td {
    height: 60px;
    padding: 10px;
    border-width: 1px 1px 0 0;
    border-style: solid;
    border-color: #e9e9e9;
}

.calendar-wrap .cal-body .calendar tr td:first-child {
    color: red;
}

.calendar-wrap .cal-body .calendar tr td:last-child {
    border-width: 1px 0 0 0;
    color: blue;
}

.calendar-wrap .cal-body .calendar tr td .holiday {
    color: red !important;
}

.calendar-wrap .cal-body .calendar tr td .btn-day {
    display: block;
    position: relative;
    width: 35px;
    height: 35px;
    margin: 0 auto;
    border-radius: 50%;
    line-height: 35px;
    font-weight: 600;
    font-size: 14px;
    text-align: center;
    color: inherit;
    text-decoration: none;
    background-color: transparent;
}

.calendar-wrap.type-event .cal-body .calendar td {
    padding: 0;
}

.calendar-wrap.type-event .cal-body .calendar tr td .btn-day {
    width: auto;
    padding: 0 10px;
    border-radius: 0;
    text-align: center;
}

.calendar-wrap.type-event .cal-body .calendar td {
    padding: 0;
}

.calendar-wrap .cal-body .calendar tr td .cal-event-container {
    display: block;
    position: relative;
}

.calendar-wrap .cal-body .calendar tr td .cal-event-container .cal-pin {
    display: block;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height:auto;
    padding: 1px 0;
    border: 0;
    background-color: #ffffff;
    cursor: pointer;
}

.calendar-wrap .cal-body .calendar tr td .cal-event-container .cal-pin .cal-pin-con {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden;
    height: 100%;
    border-radius: 4px;
    background-color: #24307C;
    text-align: left;
    font-size: 14px;
}

.calendar-wrap .cal-body .calendar tr td .cal-event-container .cal-pin .cal-pin-con .con-marker {
    display: block;
    overflow: hidden;
    padding: 0 4px;
    border: 2px solid #24307C;
    border-radius: 4px;
    background-color: #ffffff;
    line-height: 16px;
    font-weight: 700;
    color: #24307C;
    white-space: nowrap;
    text-overflow: ellipsis;
    flex-shrink: 0;
}

.calendar-wrap .cal-body .calendar tr td .cal-event-container .cal-pin .cal-pin-con .con-title {
    display: block;
    overflow: hidden;
    padding:0px 10px;
    color: #ffffff;
    white-space: nowrap;
    text-overflow: ellipsis;
    flex-grow: 1;
}

.calendar-wrap .cal-body .calendar tr td .cal-event-container .cal-pin .cal-pin-more {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0 10px;
    border-radius: 4px;
    background-color: #585858;
    line-height: 20px;
    font-size: 14px;
    color: #ffffff;
}

.calendar-wrap .cal-body .calendar tr td .cal-event-container .cal-pin.cal-extension {
    padding-left: 10px;
}

.calendar-wrap .cal-body .calendar tr td .cal-event-container .cal-pin.cal-extension::before {
    content: "";
    position: absolute;
    top: 1px;
    left: 0;
    width: 10px;
    height: 20px;
    border-width: 9px 9px 9px 0;
    border-style: solid;
    border-color: #ffffff;
    border-right-color: #24307C;
    box-sizing: border-box;
}

.calendar-wrap .cal-body .calendar tr td .cal-event-container .cal-pin.cal-extension .cal-pin-con {
    border-radius: 0 4px 4px 0;
}

/*-------------------------------------------------------------------
	@interaction
-------------------------------------------------------------------*/
.calendar-wrap .cal-body .calendar td.selected {
    background-color: #d8ebfd;
}

.calendar-wrap .cal-body .calendar tr td.able {
    color: #000;
    background-color: #e6f4ff;
}

.calendar-wrap .cal-body .calendar tr td.able:first-child {
    color: red;
}

.calendar-wrap .cal-body .calendar tr td.able:last-child {
    color: blue;
}

.calendar-wrap .cal-body .calendar tr td.disable {
    color: #C5C5C5;
}

.calendar-wrap .cal-body .calendar tr td.disable .holiday {
    color: #c5c5c5 !important;
}

.calendar-wrap .cal-body .calendar tr td .btn-day.act {
    background-color: #56b1f9;
    color: #fff;
}

.calendar-wrap .cal-body .calendar tr td .btn-day.selected {
    background-color: #24307C;
    color: #fff;
}

.calendar-wrap .cal-body .calendar tr td .btn-day.disable {
    color: #C5C5C5;
}

.calendar-wrap .cal-body .calendar tr td .btn-day.hide {
    visibility: hidden;
}

.calendar-wrap .cal-body .calendar tr td .btn-day:focus {
    z-index: 100;
    outline: 2px dashed #000;
}

.calendar-wrap .cal-body .calendar tr td .cal-event-container .cal-pin:focus {
    z-index: 2;
    outline: 2px dashed #000;
}

/*-------------------------------------------------------------------
	@media
-------------------------------------------------------------------*/
@media screen and (max-width: 1024px) {
    .calendar-wrap .cal-body .calendar td {
        height: 40px;
    }

    .calendar-wrap .cal-body .calendar tr td .btn-day {
        width: 25px;
        height: 25px;
        line-height: 25px;
    }
}

@media screen and (max-width: 800px) {
    .calendar-wrap .cal-body .calendar tr td .cal-event-container .cal-pin .cal-pin-con .con-marker {
        display: none;
    }
}

@media screen and (max-width: 600px) {
    .calendar-wrap .cal-body .calendar th {
        height: 40px;
        padding: 8px 0;
        font-size: 14px;
    }

    .calendar-wrap .cal-body .calendar tr td .btn-day {
        padding: 0 5px;
        font-size: 12px;
    }

    .calendar-wrap.type-event .cal-body .calendar tr td .btn-day {
        padding: 0 5px;
    }

    .calendar-wrap .cal-body .calendar tr td .cal-event-container .cal-pin .cal-pin-con .con-title {
        height: 20px;
        line-height: 20px;
        padding: 0 4px;
    }
}

@media screen and (max-width: 425px) {
    .calendar-wrap .cal-body .calendar tr td .btn-day {
        width: 20px;
        height: 20px;
        line-height: 20px;
    }

    .calendar-wrap .cal-body .calendar th {
        font-size: 12px;
    }

    .calendar-wrap.type-event .cal-body .calendar tr td .btn-day {
        font-size: 12px;
    }

    .calendar-wrap .cal-body .calendar tr td .cal-event-container .cal-pin .cal-pin-con .con-title {
        font-size: 10px;
    }

    .calendar-wrap .cal-body .calendar tr td .cal-event-container .cal-pin .cal-pin-more {
        padding: 0;
        font-size: 10px;
    }
}

/*-------------------------------------------------------------------
	분류그룹 : 캘린더 > 바디 (달력) > 팝업
	속성순서 : 레이아웃, 박스 모델, 배경, 폰트/정렬, 기타
-------------------------------------------------------------------*/
.cal-pop {
    display: block;
    overflow: hidden;
    position: absolute;
    z-index: 2;
    max-width:400px;
    width: 100%;
    border-radius: 4px;
    box-shadow: 3px 3px 5px 2px rgba(0,0,0,0.2);
}

.cal-pop .cal-pop-head {
    display: block;
    position: relative;
    padding: 0 50px 0 15px;
    background-color: #3f3f3f;
    text-align: left;
}

.cal-pop .cal-pop-head .tit {
    display: block;
    overflow: hidden;
    font-weight: 600;
    font-size: 1rem;
    line-height: 40px;
    color: #ffffff;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.cal-pop .cal-pop-close {
    position: absolute;
    top: 10px;
    right: 15px;
    width: 20px;
    height: 20px;
    border: 0;
    background-color: transparent;
    cursor: pointer;
}

.cal-pop .cal-pop-close > span {
    position: absolute;
    overflow: hidden;
    width: 1px;
    height: 1px;
    margin: -1px;
    clip: rect(0 0 0 0);
}

.cal-pop .cal-pop-close::before {
    content: "";
    position: absolute;
    top: calc(50% - 1px);
    left: 0;
    width: 100%;
    height: 2px;
    border-radius: 2px;
    background-color: #ffffff;
    transform: rotate(45deg);
}

.cal-pop .cal-pop-close::after {
    content: "";
    position: absolute;
    top: calc(50% - 1px);
    left: 0;
    width: 100%;
    height: 2px;
    border-radius: 2px;
    background-color: #ffffff;
    transform: rotate(-45deg);
}

.cal-pop .cal-pop-body {
    display: block;
    overflow-x: hidden;
    overflow-y: auto;
    max-height: 500px;
}

.cal-pop .cal-pop-body .cal-pop-detail {
    display: block;
    padding: 15px;
    background-color: #ffffff;
    text-align: left;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-list {
    display: block;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-list .detail-item {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 8px;
    font-size: 1rem;
    color: #333333;
    -webkit-box-align: center;
    -moz-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-list .detail-item:last-child {
    margin-bottom: 0;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-list .detail-item .item-tit {
    display: block;
    min-width: 25%;
    padding-right: 10px;
    line-height: 20px;
    font-weight: 600;
    flex-shrink: 0;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-list .detail-item .item-con {
    display: block;
    line-height: 20px;
    word-break: break-all;
    flex-grow: 1;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-list .detail-item .item-con .e-marker {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-list .detail-item .item-con .e-marker > span {
    display: block;
    border-radius: 4px;
    padding: 0 5px;
    background-color: #24307C;
    line-height: 20px;
    color: #ffffff;
    word-break: break-all;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-list .detail-item .item-con .btn-cal-link {
    display: block;
    position: relative;
    padding-left: 1.3rem;
    color: #24307C;
    word-break: break-all;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-list .detail-item .item-con .btn-cal-link .i-link {
    display: block;
    position: absolute;
    top: 0.15rem;
    left: 0;
    width: 1rem;
    height: 1rem;
    margin-right: 5px;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-list .detail-item .item-con .btn-cal-link .i-link .p1 {
    fill: #24307C;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-list .detail-item .item-con .btn-cal-link > span {
    display: block;
    font-weight: 500;
    word-break: break-all;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-btn-wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 8px;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-btn-wrap > button {
    margin-right: 5px;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-btn-wrap > button:last-child {
    margin-right: 0;
    margin-left: 5px;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-btn-wrap > button:first-child {
    margin-left: 0;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-btn-wrap .btn-cal-edit {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    height: 25px;
    border: 0;
    background-color: #585858;
    border-radius: 5px;
    flex-grow: 1;
    -webkit-box-pack: center;
    -moz-box-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-btn-wrap .btn-cal-edit .i-edit {
    display: block;
    width: auto;
    height: 20px;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-btn-wrap .btn-cal-edit .i-edit .p1 {
    fill: #ffffff;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-btn-wrap .btn-cal-edit > span {
    display: block;
    line-height: 1;
    font-weight: 600;
    font-size: 1rem;
    color: #ffffff;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-btn-wrap .btn-cal-delete {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    height: 25px;
    border: 0;
    background-color: #585858;
    border-radius: 5px;
    flex-grow: 1;
    -webkit-box-pack: center;
    -moz-box-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -moz-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-btn-wrap .btn-cal-delete .i-delete {
    display: block;
    width: auto;
    height: 20px;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-btn-wrap .btn-cal-delete .i-delete .p1 {
    fill: #ffffff;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-btn-wrap .btn-cal-delete > span {
    display: block;
    line-height: 1;
    font-weight: 600;
    font-size: 1rem;
    color: #ffffff;
}

.cal-pop .cal-pop-body .cal-pop-list {
    display: block;
    padding: 10px;
    background-color: #ffffff;
}

.cal-pop .cal-pop-body .cal-pop-list .cal-pop-list-item {
    display: block;
    margin-bottom: 6px;
}

.cal-pop .cal-pop-body .cal-pop-list .cal-pop-list-item:last-child {
    margin-bottom: 0;
}

.cal-pop .cal-pop-body .cal-pop-list .cal-pop-list-item .cal-pop-pin {
    display: block;
    overflow: hidden;
    width: 100%;
    height: 20px;
    border: 0;
    line-height: 20px;
    color: #ffffff;
    white-space: nowrap;
    text-overflow: ellipsis;
    cursor: pointer;
}

.cal-pop .cal-pop-body .cal-pop-list .cal-pop-list-item .cal-pop-pin .cal-pop-pin-con {
    display: flex;
    border-radius: 4px;
    background-color: #24307C;
    font-size: 14px;
}

.cal-pop .cal-pop-body .cal-pop-list .cal-pop-list-item .cal-pop-pin .cal-pop-pin-con .cal-pop-pin-marker {
    display: block;
    overflow: hidden;
    padding: 0 4px;
    border: 2px solid #24307C;
    border-radius: 4px;
    background-color: #ffffff;
    line-height: 16px;
    font-weight: 700;
    color: #24307C;
    white-space: nowrap;
    text-overflow: ellipsis;
    flex-shrink: 0;
}

.cal-pop .cal-pop-body .cal-pop-list .cal-pop-list-item .cal-pop-pin .cal-pop-pin-con .cal-pop-pin-tit {
    display: block;
    overflow: hidden;
    padding: 0 10px;
    line-height: 20px;
    color: #ffffff;
    text-align: left;
    white-space: nowrap;
    text-overflow: ellipsis;
    flex-grow: 1;
}

/*-------------------------------------------------------------------
	@interaction
-------------------------------------------------------------------*/
.cal-pop .cal-pop-body::-webkit-scrollbar {
    width: 8px;
    height: 5px;
    box-sizing: content-box;
}

.cal-pop .cal-pop-body::-webkit-scrollbar-thumb {
    height: 30%;
    border-radius: 4px;
    background: #828282;
}

.cal-pop .cal-pop-body::-webkit-scrollbar-track {
    padding: 0 5px;
    background: #e4e4e4;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-list .detail-item .item-con .btn-cal-link {
    transition: color 0.3s;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-list .detail-item .item-con .btn-cal-link:focus, .cal-pop .cal-pop-body .cal-pop-detail .detail-list .detail-item .item-con .btn-cal-link:hover {
    color: #56b1f9;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-list .detail-item .item-con .btn-cal-link .i-link .p1 {
    transition: fill 0.3s;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-list .detail-item .item-con .btn-cal-link:focus .i-link .p1, .cal-pop .cal-pop-body .cal-pop-detail .detail-list .detail-item .item-con .btn-cal-link:hover .i-link .p1 {
    fill: #56b1f9;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-btn-wrap .btn-cal-edit {
    transition: background 0.3s;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-btn-wrap .btn-cal-edit:focus, .cal-pop .cal-pop-body .cal-pop-detail .detail-btn-wrap .btn-cal-edit:hover {
    background-color: #56b1f9;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-btn-wrap .btn-cal-delete {
    transition: background 0.3s;
}

.cal-pop .cal-pop-body .cal-pop-detail .detail-btn-wrap .btn-cal-delete:focus, .cal-pop .cal-pop-body .cal-pop-detail .detail-btn-wrap .btn-cal-delete:hover {
    background-color: #e52b2b;
}

.cal-pop .cal-pop-body .cal-pop-list .cal-pop-list-item .cal-pop-pin:focus .cal-pop-pin-con, .cal-pop .cal-pop-body .cal-pop-list .cal-pop-list-item .cal-pop-pin:hover .cal-pop-pin-con {
    background-color: #56b1f9;
}

.cal-pop .cal-pop-body .cal-pop-list .cal-pop-list-item .cal-pop-pin:focus .cal-pop-pin-con .cal-pop-pin-marker, .cal-pop .cal-pop-body .cal-pop-list .cal-pop-list-item .cal-pop-pin:hover .cal-pop-pin-con .cal-pop-pin-marker {
    border-color: #56b1f9;
}

/*-------------------------------------------------------------------
	@media
-------------------------------------------------------------------*/
@media screen and (max-width: 800px) {
    .cal-pop {
        top: auto !important;
        left: 0 !important;
        bottom: 0;
        max-width: none;
    }
}

@media screen and (max-width: 425px) {
    .cal-pop .cal-pop-body .cal-pop-detail .detail-btn-wrap .btn-cal-delete .i-delete {
        height:15px;
    }
}

/*-------------------------------------------------------------------
	분류그룹 : 캘린더 > 등록 팝업
	속성순서 : 레이아웃, 박스 모델, 배경, 폰트/정렬, 기타
-------------------------------------------------------------------*/
.cal-prompt {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 99999;
    background-color: rgba(0,0,0,0.2);
}

.cal-prompt .prompt-box {
    display: block;
    position: absolute;
    top:200px;
    left: 50%;
    max-width: 500px;
    width: 100%;
    padding: 25px 0;
    border-radius: 15px;
    background-color: #fff;
    transform: translateX(-50%);
}

.cal-prompt .prompt-box .tit {
    display: block;
    position: relative;
    padding: 0 25px 0 35px;
    font-weight: 600;
    font-size: 1.125rem;
    color: #24307C;
}

.cal-prompt .prompt-box .tit::before {
    content: "";
    position: absolute;
    top: 15%;
    left: 25px;
    width: 4px;
    height: 70%;
    background-color: #24307C;
}

.cal-prompt .prompt-box .prompt-con {
    display: block;
    overflow-x: hidden;
    overflow-y: auto;
    max-height: 50vh;
    padding: 0 25px;
}

.cal-prompt .prompt-box .prompt-con::-webkit-scrollbar {
    width: 8px;
    height: 5px;
    box-sizing: content-box;
}

.cal-prompt .prompt-box .prompt-con::-webkit-scrollbar-thumb {
    height: 30%;
    border-radius: 4px;
    background: #828282;
}

.cal-prompt .prompt-box .prompt-con::-webkit-scrollbar-track {
    padding: 0 5px;
    background: #e4e4e4;
}

.cal-prompt .prompt-box .prompt-con .prompt-list {
    display: block;
}

.cal-prompt .prompt-box .prompt-con .prompt-list > li {
    display: block;
    margin-bottom: 10px;
}

.cal-prompt .prompt-box .prompt-con .prompt-list > li:last-child {
    margin-bottom: 0;
}

.cal-prompt .prompt-box .prompt-con .prompt-list > li .lt {
    display: block;
    margin:20px 0 5px 10px;
    font-weight:400;
    font-size: 1rem;
    color:#1487C8;
}

.cal-prompt .prompt-box .prompt-con .prompt-list > li .lc {
    display: block;
}

.cal-prompt .prompt-box .cnf-intxt {
    display: block;
    width: 100%;
    height: 40px;
    padding: 2px 15px;
    border: 1px solid #dfdfdf;
    line-height: 34px;
    font-weight: 400;
    font-size: 1rem;
    color: #000000;
}

.cal-prompt .prompt-box .cnf-intxt::placeholder {
    color: #777777;
}

.cal-prompt .prompt-box .cnf-btn {
    display: block;
    min-width: 80px;
    min-height: 36px;
    padding: 0 10px;
    border: 0;
    border-radius: 4px;
    background-color: #f0f0f0;
    line-height: 36px;
    font-weight: 600;
    font-size: 14px;
    color: #000000;
    text-align: center;
    cursor: pointer;
}

.cal-prompt .prompt-box .cnf-btn.submit {
    background-color: #24307C;
    color: #ffffff;
}

.cal-prompt .prompt-box .cnf-sel {
    display: block;
    position: relative;
}

.cal-prompt .prompt-box .cnf-sel::after {
    content: "";
    position: absolute;
    top: calc(50% - 5px);
    right: 10px;
    width: 10px;
    height: 10px;
    border-width: 0 3px 3px 0;
    border-style: solid;
    border-color: #000;
    transform: rotate(45deg);
    box-sizing: border-box;
}

.cal-prompt .prompt-box .cnf-sel > select {
    display: block;
    width: 100%;
    height: 40px;
    padding: 2px 30px 2px 15px;
    border: 1px solid #dfdfdf;
    font-weight: 400;
    font-size: 1rem;
    color: #888888;
    background:none !important;
}

.cal-prompt .prompt-box .cnf-sel > select > option {
    font-weight: inherit;
    font-size: inherit;
    color: inherit;
}

.cal-prompt .prompt-box .cnf-sel > select > option:disabled {
    background-color: #dfdfdf;
}

.cal-prompt .prompt-box .cnf-time {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
}

.cal-prompt .prompt-box .cnf-time .cnf-sel {
    flex-grow: 1;
    margin-right: 5px;
}

.cal-prompt .prompt-box .cnf-time .cnf-sel:last-child {
    margin-left: 5px;
    margin-right: 0;
}

.cal-prompt .prompt-box .cnf-time .cnf-sel:first-child {
    margin-left: 0;
}

.cal-prompt .prompt-box .cnf-radio-list {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -5px;
    flex-wrap: wrap;
}

.cal-prompt .prompt-box .cnf-radio-list > li {
    display: block;
    padding: 0 5px 5px;
}

.cal-prompt .prompt-box .cnf-radio-list > li .cnf-radio {
    display: block;
    position: relative;
    min-height: 20px;
    padding-left: 25px;
    line-height: 1;
    white-space: normal;
    cursor: pointer;
}

.cal-prompt .prompt-box .cnf-radio-list > li .cnf-radio > input[type="radio"] {
    position: absolute;
    overflow: hidden;
    width: 1px;
    height: 1px;
    margin: -1px;
    clip: rect(0 0 0 0);
}

.cal-prompt .prompt-box .cnf-radio-list > li .cnf-radio > span {
    display: inline-block;
    line-height: 20px;
    font-weight: 500;
    font-size: 1rem;
    vertical-align: middle;
    color: #000;
}

.cal-prompt .prompt-box .cnf-radio-list > li .cnf-radio > span::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    border: 1px solid #dfdfdf;
    border-radius: 50%;
    background-color: #fff;
    box-sizing: border-box;
}

.cal-prompt .prompt-box .cnf-radio-list > li .cnf-radio > span::after {
    content: "";
    position: absolute;
    top: 5px;
    left: 5px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #24307C;
    opacity: 0;
}

.cal-prompt .prompt-box .cnf-check-list {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -5px;
    flex-wrap: wrap;
}

.cal-prompt .prompt-box .cnf-check-list > li {
    display: block;
    padding: 0 5px 5px;
}

.cal-prompt .prompt-box .cnf-check-list > li .cnf-check {
    display: block;
    position: relative;
    min-height: 20px;
    padding-left: 25px;
    line-height: 1;
    white-space: normal;
    cursor: pointer;
}

.cal-prompt .prompt-box .cnf-check-list > li .cnf-check > input[type="checkbox"] {
    position: absolute;
    overflow: hidden;
    width: 1px;
    height: 1px;
    margin: -1px;
    clip: rect(0 0 0 0);
}

.cal-prompt .prompt-box .cnf-check-list > li .cnf-check > span {
    display: inline-block;
    line-height: 20px;
    font-weight: 500;
    font-size: 1rem;
    vertical-align: middle;
    color: #000;
}

.cal-prompt .prompt-box .cnf-check-list > li .cnf-check > span::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    border: 1px solid #dfdfdf;
    background-color: #fff;
    box-sizing: border-box;
}

.cal-prompt .prompt-box .cnf-check-list > li .cnf-check > span::after {
    content: '';
    position: absolute;
    top: 4px;
    left: 4px;
    width: 12px;
    height: 9px;
    border-left: 3px solid #0d6efd;
    border-bottom: 3px solid #0d6efd;
    opacity: 0;
    transform: rotate(-45deg);
    box-sizing: border-box;
}

#con .cal-prompt .prompt-box .btn-wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 15px;
    padding: 0 25px;
    -webkit-box-pack: center;
    -moz-box-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

#con .cal-prompt .prompt-box .btn-wrap > * {
    margin-right: 10px;
}

#con .cal-prompt .prompt-box .btn-wrap > *:last-child {
    margin-right: 0;
}

/*-------------------------------------------------------------------
	@interaction
-------------------------------------------------------------------*/
.cal-prompt {
    animation: prompt 0.6s;
}

.cal-prompt .prompt-box {
    box-shadow: 0 0 6px 0 rgba(0,0,0,0.3);
    animation: promptBox 0.3s 0.2s forwards;
    transform: translateX(-50%) translateY(-100%);
    opacity: 0;
}

.cal-prompt .prompt-box .cnf-intxt {
    transition: border 0.3s;
}

.cal-prompt .prompt-box .cnf-intxt:hover {
    border-color: #24307C;
}

.cal-prompt .prompt-box .cnf-btn {
    transition: border 0.3s, background 0.3s, color 0.3s;
}

.cal-prompt .prompt-box .cnf-btn:hover, .cal-prompt .prompt-box .cnf-btn:focus {
    color: #000000;
    background-color: #d6d6d6;
}

.cal-prompt .prompt-box .cnf-btn.submit:hover, .cal-prompt .prompt-box .cnf-btn.submit:focus {
    background-color: #24307C;
    color: #ffffff;
}

/* focused */
.cal-prompt .prompt-box .cnf-radio-list > li .cnf-radio > input[type="radio"]:focus + span {
    outline: 3px solid #000000;
}

.cal-prompt .prompt-box .cnf-radio-list > li .cnf-radio > input[type="radio"]:focus:not(:focus-visible) + span {
    outline: none;
}

.cal-prompt .prompt-box .cnf-radio-list > li .cnf-radio > input[type="radio"]:focus + span::before {
    border-color: #24307C;
    outline: 3px solid #000000;
}

.cal-prompt .prompt-box .cnf-radio-list > li .cnf-radio > input[type="radio"]:focus:not(:focus-visible) + span::before {
    border-color: #dfdfdf;
    outline: none;
}

.cal-prompt .prompt-box .cnf-check-list > li .cnf-check > input[type="checkbox"]:focus + span {
    outline: 3px solid #000000;
}

.cal-prompt .prompt-box .cnf-check-list > li .cnf-check > input[type="checkbox"]:focus:not(:focus-visible) + span {
    outline: none;
}

.cal-prompt .prompt-box .cnf-check-list > li .cnf-check > input[type="checkbox"]:focus + span::before {
    border-color: #0d6efd;
    outline: 3px solid #000000;
}

.cal-prompt .prompt-box .cnf-check-list > li .cnf-check > input[type="checkbox"]:focus:not(:focus-visible) + span::before {
    border-color: #dfdfdf;
    outline: none;
}

/* checked */
.cal-prompt .prompt-box .cnf-radio-list > li .cnf-radio > input[type="radio"]:checked + span {
    color: #24307C;
}

.cal-prompt .prompt-box .cnf-radio-list > li .cnf-radio > input[type="radio"]:checked + span::before, .cal-prompt .prompt-box .cnf-radio-list > li .cnf-radio > input[type="radio"]:checked:not(:focus-visible) + span::before {
    border-color: #24307C;
    background-color: #fff;
}

.cal-prompt .prompt-box .cnf-radio-list > li .cnf-radio > input[type="radio"]:checked + span::after {
    opacity: 1;
}

.cal-prompt .prompt-box .cnf-check-list > li .cnf-check > input[type="checkbox"]:checked + span {
    color: #0d6efd;
}

.cal-prompt .prompt-box .cnf-check-list > li .cnf-check > input[type="checkbox"]:checked + span::before, .cal-prompt .prompt-box .cnf-check-list > li .cnf-check > input[type="checkbox"]:checked:not(:focus-visible) + span::before {
    border-color: #0d6efd;
    background-color: #fff;
}

.cal-prompt .prompt-box .cnf-check-list > li .cnf-check > input[type="checkbox"]:checked + span::after {
    opacity: 1;
}

.cal-prompt .prompt-box .cnf-radio-list > li .cnf-radio > input[type="radio"]:disabled + span {
    color: #dfdfdf;
}

.cal-prompt .prompt-box .cnf-radio-list > li .cnf-check > input[type="checkbox"]:disabled + span {
    color: #dfdfdf;
}

@keyframes prompt {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes promptBox {
    0% {
        transform: translateX(-50%) translateY(-100%);
        opacity: 0;
    }

    100% {
        transform: translateX(-50%) translateY(0);
        opacity: 1;
    }
}

/*-------------------------------------------------------------------
	분류그룹 : 캘린더 상태안내
	속성순서 : 레이아웃, 박스 모델, 배경, 폰트/정렬, 기타
-------------------------------------------------------------------*/
.cal-caption {
    display: block;
    padding: 15px 20px;
    border: 1px solid #d6d6d6;
    border-bottom: 0;
}

.cal-caption:after {
    content: "";
    display: block;
    clear: both;
}

.cal-caption .list {
    float: right;
}

.cal-caption .list > li {
    position: relative;
    float: left;
    margin-right: 15px;
    padding-left: 20px;
    line-height: 20px;
    font-size: 14px;
    color: #4E5B6F;
    list-style: none;
}

.cal-caption .list > li:last-child {
    margin-right: 0;
}

.cal-caption .list > li:before {
    content: "";
    position: absolute;
    top: 2.5px;
    left: 0;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    background-color: #830509;
}

.cal-caption .list > li.li01:before {
    background-color:#1671ce;
}

.cal-caption .list > li.li02:before {
    background-color: #03a94d;
}

.cal-caption .list > li.li03:before {
    background-color: #e6f4ff;
}

.cal-caption .list > li.li04:before {
    background-color: #C5C5C5;
}

/*-------------------------------------------------------------------
	@media
-------------------------------------------------------------------*/
@media screen and (max-width: 1024px) {
    .cal-caption {
        padding: 15px;
    }
}

/*-------------------------------------------------------------------
	@컴포넌트 - 테이블
-------------------------------------------------------------------*/
/* default */
.ex-table {
    width: 100%;
    border-top: 2px solid #141414;
    background-color: #fff;
}

.ex-table caption {
    width: 0;
    height: 0;
    font-size: 0;
}

/* th */
.ex-table tr th {
    padding: 8px 10px;
    border-bottom: 1px solid #d6d6d6;
    font-weight: 600;
    font-size: 1.0625rem;
    text-align: center;
    color: #000;
    background-color: #fafafa;
}

.ex-table tr th.depth {
    border-left: 1px solid #d6d6d6;
    background-color: #f7f7f7;
}

.ex-table tr th + th {
    border-left: 1px solid #d6d6d6;
}

.ex-table thead tr:nth-child(n + 2) th {
    border-left: 1px solid #d6d6d6;
}

/* td */
.ex-table tr td {
    padding: 8px 10px;
    border-bottom: 1px solid #d6d6d6;
    text-align: left;
}

.ex-table tr td.depth {
    border-left: 1px solid #d6d6d6;
}

.ex-table tr th + td {
    border-left: 1px solid #d6d6d6;
}

.ex-table tr td + td {
    border-left: 1px solid #d6d6d6;
}

/* group */
.ex-table tbody.rowspan tr:nth-child(n + 2) td {
    border-left: 1px solid #d6d6d6;
}

.ex-table tbody.rowspan tr:nth-child(n + 2) th {
    border-left: 1px solid #d6d6d6;
}

.ex-table tr.rowspan th:first-child {
    border-left: 1px solid #d6d6d6;
}

.ex-table tr.rowspan td:first-child {
    border-left: 1px solid #d6d6d6;
}

.ex-table tr th.bl {
    border-left: 1px solid #d6d6d6;
}

.ex-table tr td.bl {
    border-left: 1px solid #d6d6d6;
}

/* align */
.ex-table.th-left tr th {
    text-align: left;
}

.ex-table.th-right tr th {
    text-align: right;
}

.ex-table tr th.left {
    text-align: left;
}

.ex-table tr th.center {
    text-align: center;
}

.ex-table tr th.right {
    text-align: right;
}

.ex-table.td-right tr td {
    text-align: right;
}

.ex-table.td-center tr td {
    text-align: center;
}

.ex-table tr td.left {
    text-align: left;
}

.ex-table tr td.center {
    text-align: center;
}

.ex-table tr td.right {
    text-align: right;
}

.ex-table tr th.nowrap {
    white-space: nowrap;
}

.ex-table tr td.nowrap {
    white-space: nowrap;
}
.btn-wrap {/* margin-top:30px; */ display: flex; justify-content: center; gap: 10px;}
