@charset "utf-8";
@import url("common.css");
@import url("board.css");

/*layout*/
.gridster {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(calc(24% - 20px), auto));
    align-items: start;
    justify-items: start;
    align-content: start;
    justify-content: start;
    grid-gap: 20px;
    gap: 20px;
    width: 100%;
    margin: 0 auto;
}
.portlet-my {
    align-self: start;
    justify-self: stretch;
    display: block;
    position: relative;
    width: 100%;
    height: 234px;
    transition: all .3s;
}
.portlet-my.col-full {
    grid-column: 4 / span 1;
    grid-row: 1 / span 3;
    height: 100%;
}

.widget-my {
    width: 100%;
    height: 100%;
    transition: all .3s;
    overflow: hidden;
}
.widget-my.col-full {
    height: 100%;
}

.w100per {width:100%}
.w98per {width:98%}

/*portlet style*/
.p_21 {width: 100%; height: 100%; background-color: #fff; vertical-align: middle;padding: 24px; border: 1px solid #dcdee3; position: relative; border-radius: 8px; background-color: #fff; overflow: hidden;}
.p_12 {width: 100%; height: 100%; vertical-align: middle;padding: 24px; position: relative; border-radius: 8px; background-color: #e3ecfa; overflow: hidden;}
.p_21.green {border-color: #2c4b8b;}

.p_21 h2,
.p_12 h2 {
    line-height: 1;
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 24px;
    color: #2c4b8b;
}
.p_21 h2 > span,
.p_12 h2 > span {
    font-size: .8em;
    color: #231f20;
}
.p_21 .moreBtn {color: #787878; position: absolute; right: 24px; top: 24px;}
.p_21 .refreshBtn {
    position: absolute;
    right: 24px;
    top: 24px;
    width: 16px;
    height: 16px;
    font-size: 0;
    background-image: url('../images/icon/icon-refresh.png');
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center;
}

/*scroll style*/
/*.p_21 ol,
.p_21 ul {
    height: calc(100% - 40px);
    overflow-y: auto;
}
*/
.p_21 ol,
.p_21 ul {
    height: calc(100% - 28px);
    overflow-y: auto;
    padding-right : 5px;
}

.p_21 ol > li,
.p_21 ul > li {
    line-height: 1;
}
.p_21 ol::-webkit-scrollbar,
.p_21 ul::-webkit-scrollbar {width: 2px; border-radius: 1px;}

.p_21 ol::-webkit-scrollbar-track,
.p_21 ul::-webkit-scrollbar-track {background-color: #dededb;}

.p_21 ol::-webkit-scrollbar-thumb,
.p_21 ul::-webkit-scrollbar-thumb {background-color: #2c4b8b;}

/*contents*/
/*.info {background: url('../images/logo/symbol.png') right -30px top -22px no-repeat #fff; background-size: 182px;}*/
.info {
  /* css 값 변경 */
  background: url("../images/logo/symbol.png") right 0px top -4px no-repeat
    #fff;
  background-size: 205px;
}
.info ul {
    height: auto;
    overflow-y: visible;
}
.info ul li {font-weight: 700;}
.info ul li span {display: inline-block; font-weight: 400; margin-right: 20px; vertical-align: top;}
.info ul li:not(:first-child) {margin-top: 22px;}
.info .btn {display: inline-block; width: 49%; height: 32px; line-height: 32px; padding: 0; text-align: center; border-radius: 4px;}
.info .btnArea {font-size: 0; margin-top: 22px;}
.info .btn.purple {background-color: #3e274b; margin-right: 2%;}
.info .btn.yellow {background-color: #fdb741;}
.info .btn span {color: #fff;}

.board ol li {width: 100%; margin-bottom: 10px;}
.board ol li:last-child {margin-bottom: 0;}
.board ol li a {font-size: 0;}
.board ol li a .title {text-overflow: ellipsis; white-space: nowrap; overflow: hidden; max-width: 100%; margin-bottom: 2px;}
.board ol li a.new .title {padding-left: 18px; background: url('../images/icon/icon_new.png') left center no-repeat; background-size: 14px;}
.board ol li a.read .title {color: #949599;}
.board ol li a span {font-size: 12px;}
.board ol li a.read span {color: #949599;}
.board ol li a span:not(:last-child)::after {content: ""; display: inline-block; width: 1px; height: 10px; background-color: #231f20; vertical-align: middle; margin: 0 6px;}
.board ol li a.read span::after {background-color: #949599;}

.tabBtnArea {
    height: auto !important;
    margin-bottom: 20px;
    padding: 0 !important;
    overflow-y: visible !important;
}
.tabBtnArea::after {content: ""; clear: both; display: block;}
.tabBtnArea .tabBtn {float: left; font-size: 16px; color: #787878; cursor: pointer;}
.tabBtnArea .tabBtn:not(:first-child) {margin-left: 10px;}
.tabBtnArea .tabBtn.on {color: #2c4b8b; font-weight: 700;}
.tabContArea .tabCont {display: none;}
.tabContArea .tabCont.on {display: block;}
.tabContArea .tabCont ol {
    height: calc(100% - 40px);
    padding-right: 10px;
    overflow-y: hidden;
}
.tabContArea .tabCont ol li {width: 100%; margin-bottom: 10px;}
.tabContArea .tabCont ol li:last-child {margin-bottom: 0;}
.tabContArea .tabCont ol li a {font-size: 0;}
.tabContArea .tabCont ol li a .title {text-overflow: ellipsis; white-space: nowrap; overflow: hidden; max-width: 100%; margin-bottom: 2px;}
.tabContArea .tabCont ol li a:hover .title {color: #0a58ca;}
.tabContArea .tabCont ol li a.new .title {padding-left: 18px; background: url('../images/icon/icon_new.png') left center no-repeat; background-size: 14px;}
.tabContArea .tabCont ol li a.read .title {color: #787878;}
.tabContArea .tabCont ol li a span {font-size: 12px;}
.tabContArea .tabCont ol li a.read span {color: #787878;}
.tabContArea .tabCont ol li a span:not(:last-child)::after {content: ""; display: inline-block; width: 1px; height: 10px; background-color: #231f20; vertical-align: middle; margin: 0 6px;}
.tabContArea .tabCont ol li a.read span::after {background-color: #787878;}

.schedule {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: stretch;
    align-content: flex-start;
    height: 100%;
}
.schedule #calendar {
    /* width: 204px; */
    width : 45%;
    order: 1;
}
.schedule .scheList {
    order: 2;
    display: block;
    /* width: calc(100% - 224px); */
    width: 53%;
}
.scheList ol li {width: 100%;}
.scheList ol li:not(:first-child) {margin-top: 14px;}
.scheList ol li a {display: inline-block; font-size: 14px; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; max-width: 100%;}
.scheList ol li a.read {color: #949599;}
.scheList ol li a .time {font-size: 12px; display: block; margin-bottom: 2px; padding-left: 16px; background: url('../images/icon/icon_clock_yellow.png') center left no-repeat; background-size: 10px;}
.scheList ol li a .title {font-size: 14px; display: block; margin-top: 4px; padding-left: 18px; }
.scheList ol li a.read .time {background-image: url('../images/icon/icon_clock_gray.png');}


.shortcut ul li:not(:first-child) {margin-top: 10px;}
.shortcut ul li a {
    display: inline-flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
}
.shortcut ul li a img {
    display: block;
    width: 22px;
    height: 22px;
    margin-right: 10px;
}
.shortcut ul li a span {
    max-width: calc(100% - 32px);
}
/*
.shortcut ul li.link a {display: inline-block; padding-left: 30px; background: url('../images/icon/icon_link.png') 4px 2px no-repeat; background-size: 14px;}
.shortcut ul li.link a span {line-height: 1.2;}
*/

.state ul li {margin-top: 20px;}
.state ul li:first-child {margin: 0;}
.state ul li span {float: right;}
.state ul li span strong {font-size: 16px;}

.state2 ul li {margin-top: 25px;}
.state2 ul li:first-child {margin: 0;}
.state2 ul li span {float: right;}
.state2 ul li span strong {font-size: 16px;}

.plan ol li:not(:first-child) {margin-top: 14px;}
.plan ol li a {display: inline-block; width: 100%;padding-left: 20px; background: url('../images/icon/icon_clock_yellow.png') center left no-repeat; background-size: 12px; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; max-width: 100%;}
.plan ol li a span {font-weight: 700; margin-right: 10px;}

.plan ul li:not(:first-child) {margin-top: 14px;}
.plan ul li a {display: inline-block; width: 100%;text-overflow: ellipsis; white-space: nowrap; overflow: hidden; max-width: 100%;}
.plan ul li a:hover {color: #0a58ca;}
.plan ul li a span {color: #231f20;font-weight: 700; margin-right: 5px;}
.plan ul li a span:before {content:"[진행]"}
.plan ul li a span.end:before {content:"[완료]"}

.class ul li:not(:first-child){margin-top: 15px;}
.class ul li a {display: inline-block; width: 100%;font-size: 0;}
.class ul li a .title {display: inline-block; max-width: calc(42% - 15px); text-overflow: ellipsis; white-space: nowrap; overflow: hidden; font-weight: 700; margin-right: 15px; vertical-align: middle;}
.class ul li a .time {padding-left: 14px; background: url('../images/icon/icon_clock_yellow.png') center left no-repeat; background-size: 10px; font-size: 12px; margin-right: 10px; vertical-align: middle;}
.class ul li a .location {padding-left: 14px; background: url('../images/icon/icon_location.png') center left no-repeat; background-size: 8px; font-size: 12px; vertical-align: middle;}
.class ul li a:hover .title {color: #0a58ca;}

.menu .controls {
    position: absolute;
    left: 110px;
    top: 25px;
    font-size: 0;
}
.menu .controls button {display: inline-block; width: 8px; height: 12px; font-size: 0; cursor: pointer; vertical-align: top;}
.menu .controls .prev {background: url('../images/icon/arrow_L_yellow.svg') center center no-repeat;}
.menu .controls .next {background: url('../images/icon/arrow_R_yellow.svg') center center no-repeat;}
.menu .controls span {padding: 0 10px; line-height: 1; vertical-align: top;}
.menu table {width: 100%;height: calc(100% - 40px);}
.menu table th, .menu table td {box-sizing: border-box; border: 1px solid #dcdee3; padding: 0 10px;}
.menu table th {height: 26px; line-height: 26px; background-color: #f0f3fc;}
.menu table td {height: calc(100% - 26px);}
.menu table td ul li {width: 100%;}
.menu table td ul li:not(:first-child) {margin-top: 8px;}

.graduate .legends_area {position: absolute; left: 121px; top: 25px;}
.graduate .legends_area::after {content: ""; clear: both; display: block;}
.graduate .legends_area li {float: left; margin-left: 10px; font-size: 12px;}
.graduate .legends_area li:first-child {margin-left: 0;}
.graduate .legends_area li::before {content: ""; display: inline-block; width: 8px; height: 8px; vertical-align: middle; margin-right: 5px;}
.graduate .legends_area .complete::before {background-color: #2c4b8b}
.graduate .legends_area .apply::before {background-color: #fdb741;}
.graduate .legends_area .lack::before {background-color: #eaeaea;border: 1px solid #ddd;}
.graduate .graph_area {height: 150px; position: relative;}

.graph {font-size: 0; position: absolute; left: 0; bottom: 0;}
.graph li {display: inline-block; height: 100%; margin: 0 5px; text-align: center; font-size: 0; vertical-align: middle;}
.graph li:first-child {margin-left: 0;}
.graph li:last-child {margin-right: 0;}
.graph li div {display: inline-block; position: relative; width: 30px; height: 122px;}
.graph li p {margin-top: 5px;}
.graph li div span {position: absolute; left: 0; right: 0; bottom: 0;}
.graph li div span.complete {background: #2c4b8b;}
.graph li div span.apply {background: #fdb741;}
.graph li div span.lack {background: #eaeaea;}
.graph li div span i {display: inline-block; font-size: 12px; position: absolute; top: -10px; left: 50%; transform: translateX(-50%); z-index: 10;}
.graph li div span i.hide {display: none;} /*그래프가 없을 경우 숫자 안나오게*/

/* datepiker 관련 CSS*/
.ui-widget-content {
    background: none;
}

.ui-widget.ui-widget-content {
    border: 0px;
}

/* dialog(PC) 관련 CSS */
.ui-dialog {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    padding: 0;
    outline: 0;
    border-radius: 10px;
}
.ui-dialog .ui-dialog-titlebar {
    padding: 0;
    position: relative;
}
.ui-dialog .ui-dialog-title {
    float: left;
    margin: 0;
    white-space: nowrap;
    width: 90%;
    overflow: hidden;
    text-overflow: ellipsis;
}
.ui-dialog .ui-dialog-titlebar-close {
    width: 40px;
    height: 40px;
    background: url(../images/icon/icon_pop_close.png) no-repeat center;
    position: Absolute;
    right: 30px;
    top: 10px;
    cursor: pointer;
    text-indent: -9999px;
}
.ui-draggable .ui-dialog-titlebar {
    cursor: move;
    width: 100%;
    height: 60px;
    color: #fff;
    font-size: 2.1em;
    text-indent: 30px;
    line-height: 60px;
    font-family: "NanumSquare", "돋움", "Dotum", Arial, Sans-serif;
    position: Relative;
    background: #214c9c;
}
.ui-dialog .ui-dialog-buttonpane button {
    margin: 5px 3px;
    cursor: pointer;
    outline: none;
}
.ui-dialog .ui-dialog-buttonpane {
    text-align: center;
    border-width: 1px 0 0 0;
    background-image: none;
    margin-top: .0em;
    padding: 2em 2em 2em 2em;
    background-color: #fff;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
    float: none;
}
.ui-dialog-buttonset:after {
    clear: both;
    display: block;
    content: "";
}
.ui-dialog-titlebar .ui-icon {
    background-image: none;
}
.ui-widget-overlay {
    background-color: #000;
    opacity: 0.2;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.ui-datepicker {
    width: 100%;
    display: none
}
.ui-datepicker .ui-datepicker-header {
    /*display: none;*/
    position: relative;
    padding: 0;
    background-color: transparent;
    border: 0;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
    position: absolute;
    width: 6px;
    height: 12px;
    cursor: pointer;
    top: 50%;
    transform: translateY(-50%);
}
.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
    /*top: 1px;*/
}
.ui-datepicker .ui-datepicker-prev {
    left: 10px;
    background: url('../images/icon/arrow_L_blue.svg') center center no-repeat #fff;
    background-size: contain;
}
.ui-datepicker .ui-datepicker-next {
    right: 10px;
    background: url('../images/icon/arrow_R_blue.svg') center center no-repeat #fff;
    background-size: contain;
}
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
    display: block;
    position: absolute;
    left: 50%;
    margin-left: -8px;
    top: 50%;
    margin-top: -8px
}

.ui-datepicker .ui-datepicker-title {
    text-align: center;
    font-size: 15px;
    color: #231f20;
}

.ui-datepicker .ui-datepicker-title span {
    font-size: 16px;
    font-weight: 900;
    color: #231f20;
}

.ui-datepicker .ui-datepicker-title select {
    font-size: 1em;
    margin: 1px 0
}

.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
    width: 45%
}

.ui-datepicker table {
    width: 100%;
    height: 162px;
    border-collapse: collapse;
    margin-top: 15px;
    border: 0;
}

.ui-datepicker th {
    height: auto;
    padding: 0;
    text-align: center;
    font-weight: 400;
    background-color: transparent;
    border: 0;
}

.ui-datepicker td {
    height: auto;
    padding: 0;
    border: 0;
    text-align: center;
}

.ui-datepicker td a {
    display: block;
    text-decoration: none;
    color: #4D4D4D;
    font-size: 14px;
}

.ui-datepicker .ui-datepicker-today a {
    color: #fdb741;
    font-weight: 700;
}

.ui-datepicker .ui-datepicker-current-day {
    background-color : antiquewhite;
}

.ui-datepicker .ui-datepicker-buttonpane {
    background-image: none;
    margin: .7em 0 0 0;
    padding: 0 .2em;
    border-left: 0;
    border-right: 0;
    border-bottom: 0
}

.ui-datepicker .ui-datepicker-buttonpane button {
    float: right;
    margin: .5em .2em .4em;
    cursor: pointer;
    padding: .2em .6em .3em .6em;
    width: auto;
    overflow: visible
}

.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
    float: left
}

.ui-datepicker.ui-datepicker-multi {
    width: auto
}

.ui-datepicker-multi .ui-datepicker-group {
    float: left
}

.ui-datepicker-multi .ui-datepicker-group table {
    width: 95%;
    margin: 0 auto .4em
}

.ui-datepicker-multi-2 .ui-datepicker-group {
    width: 50%
}

.ui-datepicker-multi-3 .ui-datepicker-group {
    width: 33.3%
}

.ui-datepicker-multi-4 .ui-datepicker-group {
    width: 25%
}

.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
    border-left-width: 0
}

.ui-datepicker-multi .ui-datepicker-buttonpane {
    clear: left
}

.ui-datepicker-row-break {
    clear: both;
    width: 100%;
    font-size: 0
}

.ui-datepicker-rtl {
    direction: rtl
}

.ui-datepicker-rtl .ui-datepicker-prev {
    right: 2px;
    left: auto
}

.ui-datepicker-rtl .ui-datepicker-next {
    left: 2px;
    right: auto
}

.ui-datepicker-rtl .ui-datepicker-prev:hover {
    right: 1px;
    left: auto
}

.ui-datepicker-rtl .ui-datepicker-next:hover {
    left: 1px;
    right: auto
}

.ui-datepicker-rtl .ui-datepicker-buttonpane {
    clear: right
}

.ui-datepicker-rtl .ui-datepicker-buttonpane button {
    float: left
}

.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group {
    float: right
}
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
    border-right-width: 0;
    border-left-width: 1px
}
.ui-datepicker .ui-icon {
    display: block;
    text-indent: -99999px;
    overflow: hidden;
    background-repeat: no-repeat;
    left: .5em;
    top: .3em
}
.ui-datepicker td span {
    color: #9b9d9e;
}
.ui-datepicker th {
    height: 28px;
}
.ui-datepicker th:first-child span, .ui-datepicker td:first-child a {
    color: #ff3e3e;
}
.ui-datepicker th:last-child span, .ui-datepicker td:last-child a {
    color: #253c73;
}

@media screen and (max-width:1740px) {
    .gridster {
        grid-template-columns: repeat(auto-fill, minmax(calc(33.33% - 20px), auto));
    }
    .portlet-my:nth-child(1) {
        grid-column: 1;
        grid-row: 1;
    }
    .portlet-my:nth-child(2) {
        grid-column: 3;
        grid-row: 1;
    }
    .portlet-my:nth-child(3) {
        grid-column: 1;
        grid-row: 2;
    }
    .portlet-my:nth-child(4) {
        grid-column: 2;
        grid-row: 1;
    }
    .portlet-my:nth-child(5) {
        grid-column: 2;
        grid-row: 2;
    }
    .portlet-my:nth-child(6) {
        grid-column: 3;
        grid-row: 2;
    }
    .portlet-my:nth-child(7) {
        grid-column: 1;
        grid-row: 3;
    }
    .portlet-my:nth-child(8) {
        grid-column: 2;
        grid-row: 3;
    }
    .portlet-my:nth-child(9) {
        grid-column: 3;
        grid-row: 3;
    }
    .portlet-my.col-full {
        grid-column: 1 / span 3;
        grid-row: 4 / span 1;
        height: 100%;
    }
}

@media screen and (max-width:1540px) {
    .gridster {
        grid-template-columns: repeat(auto-fill, minmax(calc(50% - 20px), auto));
    }
    .portlet-my:nth-child(1) {
        grid-column: 1;
        grid-row: 1;
    }
    .portlet-my:nth-child(2) {
        grid-column: 1;
        grid-row: 2;
    }
    .portlet-my:nth-child(3) {
        grid-column: 2;
        grid-row: 2;
    }
    .portlet-my:nth-child(4) {
        grid-column: 2;
        grid-row: 1;
    }
    .portlet-my:nth-child(5) {
        grid-column: 1;
        grid-row: 3;
    }
    .portlet-my:nth-child(6) {
        grid-column: 2;
        grid-row: 3;
    }
    .portlet-my:nth-child(7) {
        grid-column: 1;
        grid-row: 4;
    }
    .portlet-my:nth-child(8) {
        grid-column: 2;
        grid-row: 4;
    }
    .portlet-my:nth-child(9) {
        grid-column: 1 / span 2;
        grid-row: 5 / span 1;
    }
    .portlet-my.col-full {
        grid-column: 1 / span 2;
        grid-row: 6 / span 1;
        height: 100%;
    }
}
@media screen and (max-width:1480px) {
    .ui-datepicker td span {
        font-size:13px;
    }
}

@media screen and (max-width:1380px) {
    .ui-datepicker td span {
        font-size:11px;
    }
    .ui-datepicker .ui-datepicker-title span {
        font-size: 14px;
    }
}

@media screen and (max-width:1024px) {

    .info .btnArea { margin-top: 12px;}
    .gridster {
        grid-template-columns: repeat(auto-fill, minmax(calc(50% - 20px), auto));
    }
    .portlet-my:nth-child(1) {
        grid-column: 1;
        grid-row: 1;
    }
    .portlet-my:nth-child(2) {
        grid-column: 1 / span 2;
        grid-row: 2 / span 1;
    }
    .portlet-my:nth-child(3) {
        grid-column: 1 / span 2;
        grid-row: 3 / span 1;
    }
    .portlet-my:nth-child(4) {
        grid-column: 2;
        grid-row: 1;
    }
    .portlet-my:nth-child(5) {
        grid-column: 1;
        grid-row: 4;
    }
    .portlet-my:nth-child(6) {
        grid-column: 2;
        grid-row: 4;
    }
    .portlet-my:nth-child(7) {
        grid-column: 1;
        grid-row: 5;
    }
    .portlet-my:nth-child(8) {
        grid-column: 2;
        grid-row: 5;
    }
    .portlet-my:nth-child(9) {
        grid-column: 1 / span 2;
        grid-row: 6 / span 1;
    }
    .portlet-my.col-full {
        grid-column: 1 / span 2;
        grid-row: 7 / span 1;
        height: 100%;
    }
}
@media screen and (max-width:810px) {
    .info ul li:not(:first-child) { margin-top:20px; }

}
@media screen and (max-width:768px) {
    .p_21 ol,
    .p_21 ul {
        height: auto;
        padding: 0;
        overflow-y: visible;
    }

    .ui-datepicker td span {
        font-size:unset;
    }

    .ui-datepicker .ui-datepicker-title span {
        font-size: unset;
    }


    .menu table td {padding: 10px;}
    .info .btnArea {margin-top: 22px;}

    .gridster {
        grid-template-columns: repeat(auto-fill, minmax(100%, auto));
    }
    .portlet-my {
        height: auto;
    }
    .portlet-my:nth-child(1) {
        grid-column: 1;
        grid-row: 1;
    }
    .portlet-my:nth-child(2) {
        grid-column: 1;
        grid-row: 3;
    }
    .portlet-my:nth-child(3) {
        grid-column: 1;
        grid-row: 4;
    }
    .portlet-my:nth-child(4) {
        grid-column: 1;
        grid-row: 2;
    }
    .portlet-my:nth-child(5) {
        grid-column: 1;
        grid-row: 5;
    }
    .portlet-my:nth-child(6) {
        grid-column: 1;
        grid-row: 6;
    }
    .portlet-my:nth-child(7) {
        grid-column: 1;
        grid-row: 7;
    }
    .portlet-my:nth-child(8) {
        grid-column: 1;
        grid-row: 8;
    }
    .portlet-my:nth-child(9) {
        grid-column: 1;
        grid-row: 9;
    }
    .portlet-my.col-full {
        grid-column: 1;
        grid-row: 10;
        height: 100%;
    }
}
@media screen and (max-width:540px) {
    .schedule ol,
    .state2 ul,
    .plan ol {
        height: calc(100% - 28px);
        overflow-y: auto;
    }


}