.calendar-wrap .calendar-top{display: flex;align-items: center;justify-content: space-between;gap: 10px 60px;flex-wrap: wrap;margin-bottom: 29px;}
.calendar-wrap .calendar-top .sort-box{margin-left: auto;}
.calendar-wrap .calendar-top .sort-box ul{display: flex;gap: 15px;}
.calendar-wrap .calendar-top .sort-box ul li a{font-weight: 600;font-size: 14px;line-height: 17px;letter-spacing: -0.02em;color: #666666;position: relative;display: flex;gap: 8px;align-items: center;}
.calendar-wrap .calendar-top .sort-box ul li a:before{content:'';background: url(../img/graduate/sort.png) no-repeat center;width: 30px;height: 30px;display: inline-block;}
.calendar-wrap .calendar-top .sort-box ul li.active a:before{background: url(../img/graduate/sort-active.png) no-repeat center;}
.calendar-wrap .calendar-top .date-box{display: flex;align-items: center;justify-content: space-between;gap: 10px 20px;}
.calendar-wrap .calendar-top .date-box .select-box{border-bottom: 3px solid #111;}
.calendar-wrap .calendar-top .date-box .select-box select{background: url('../img/common/select-box.png') no-repeat center right 3px;appearance: none;-webkit-appearance: none;-moz-appearance: none;font-weight: 800;font-size: 34px;line-height: 125%;letter-spacing: -0.02em;color: #111111;padding: 0 28px 0 0;border: 0;margin-bottom: 5px;}
.calendar-wrap .calendar-top .date-box .select-box select option{font-size: 18px;}
.calendar-wrap .calendar-top .fc-button-group{display: flex;align-items: center;justify-content: space-between;gap: 8px;}
.calendar-wrap .calendar-top .fc-button-group a{display: block;width: 45px;height: 45px;border: 1.5px solid #C9C9C9;box-shadow: inset 0px 0px 9.5px rgba(255, 255, 255, 0.15);filter: drop-shadow(0px 5px 15px rgba(0, 0, 0, 0.1));
backdrop-filter: blur(2px);-webkit-backdrop-filter: blur(2px);border-radius: 54px;background: url(../img/common/arrow.png) no-repeat center;font-size: 0;}
.calendar-wrap .calendar-top .fc-button-group a.fc-next-button{transform: rotate(180deg);margin-left:auto;}

.calendar-wrap .calendar-top .btn-box.is-show {display:none;}
.calendar-wrap .calendar-top .btn-box ul{display: flex;align-items: center;justify-content: space-between;gap: 10px 33px;}
.calendar-wrap .calendar-top .btn-box ul li {position:relative;}
.calendar-wrap .calendar-top .btn-box ul li + li:before {content:"";position:absolute;top:50%;transform:translatey(-50%);left:-16px;width:1px;height:15px;background:#CCCCCC;}
.calendar-wrap .calendar-top .btn-box ul li a{padding: 4.5px 0 4.5px 38px;font-weight: 600;font-size: 18px;line-height: 125%;color: #666666;}
.calendar-wrap .calendar-top .btn-box ul li.link-calendar a{background: url(../img/common/ico-calendar.png) no-repeat center left;}
.calendar-wrap .calendar-top .btn-box ul li.link-list a{background: url(../img/common/ico-list.png) no-repeat center left;}

.calendar-wrap .calendar-top .btn-box ul li.active a{color: #004BAE;}
.calendar-wrap .calendar-top .btn-box ul li.link-calendar.active a{background: url(../img/common/ico-calendar-blue.png) no-repeat center left;}
.calendar-wrap .calendar-top .btn-box ul li.link-list.active a{background: url(../img/common/ico-list-blue.png) no-repeat center left;}

.calendar-wrap .calendar-box{position: relative;}

.calendar-box .fc-scrollgrid {border-radius: 10px 10px 0 0;overflow: hidden;}
.calendar-box .fc-col-header{background: #001A54;}
.calendar-box .fc .fc-col-header-cell-cushion{font-weight: 600;font-size: 16px;line-height: 125%;color: #FFFFFF;padding: 15px 0;}
.calendar-box .fc-theme-standard th{border-color:#001A54;}

.calendar-box .fc .fc-daygrid-day-top{justify-content: flex-end;text-align: center;padding: 14px 0 0 14px;}
.calendar-box .fc .fc-daygrid-day-number{width: 24px;height: 24px;font-family: 'Prompt', sans-serif;font-weight: 500;font-size: 15px;line-height: 125%;display: flex;align-items: center;justify-content: center;color: #252525;padding: 0;}

.calendar-box td.fc-daygrid-day.fc-day.fc-day-sun .fc-daygrid-day-number{color: #FF0000;}
.calendar-box td.fc-daygrid-day.fc-day.fc-day-sat .fc-daygrid-day-number{color: #004BAE;}

.calendar-box .fc .fc-daygrid-day.fc-day-today{background: rgba(239, 243, 246, 0.6);position: relative;}
.calendar-box .fc .fc-daygrid-day.fc-day-today:before{content:'TODAY';font-family: 'Pretendard';font-weight: 600;font-size: 12px;line-height: 125%;color: #004BAE;border: 1px solid #004BAE;padding: 3px 5.5px;border-radius: 5px;position: absolute;top: 16px;right: 15px;box-sizing: border-box;height: 21px;}

.calendar-box .fc .fc-daygrid-event{margin: 2px 3px;border-radius: 0;}
.calendar-box .fc-h-event .fc-event-title-container{text-align: center;}
.calendar-box .fc-h-event .fc-event-title{font-weight: 500;font-size: 16px;line-height: 125%;color: #111111;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;padding: 5px;}
.calendar-box .fc .fc-daygrid-day-bottom{font-weight: 500;font-size: 12px;line-height: 125%;text-align: right;color: #004BAE;padding-top: 8px;}
.calendar-box .fc .fc-daygrid-more-link p{text-decoration-line: underline;text-underline-offset: 2px;display:inline-block;}
.calendar-box .fc .fc-daygrid-body-natural .fc-daygrid-day-events{margin-bottom: 5px;}

.calendar-box .fc .fc-daygrid-body tr{height: 176px;}

.calendar-wrap .e-color01{background-color: #E9F8FF;border-color: #E9F8FF;color: #111;}
.calendar-wrap .e-color02{background-color: #FFF3E4;border-color: #FFF3E4;color: #111;}
.calendar-wrap .e-color03{background-color: #FFE9E9;border-color: #FFE9E9;color: #111;}
.calendar-wrap .e-color04{background-color: #E4F3D7;border-color: #E4F3D7;color: #111;}
.calendar-wrap .e-color05{background-color: #E9EFFF;border-color: #E9EFFF;color: #111;}
.calendar-wrap .e-color06{background-color: #EFE6FF;border-color: #EFE6FF;color: #111;}
.calendar-wrap .e-color07{background-color: #FFE89D;border-color: #FFE89D;color: #111;}
.calendar-wrap .e-color08{background-color: #A3CFFF;border-color: #A3CFFF;color: #111;}
.calendar-wrap .e-color09{background-color: #C2E389;border-color: #C2E389;color: #111;}
.calendar-wrap .e-color10{background-color: #D3D3D3;border-color: #D3D3D3;color: #111;}


.calendar-more-popup{position:absolute;top:0;left:0;width:100%;height:100%;justify-content:center;align-items:center;z-index:1000;box-sizing: border-box;overflow: auto;align-items:center;padding: 70px 0;display:none;filter: drop-shadow(0px 4px 30px rgba(17, 17, 17, 0.1));}
.calendar-more-popup.on{display:flex;}
.calendar-more-popup .c-popup-inner{width:650px;background:#fff;border-radius:10px;overflow:hidden;position: relative;}
.calendar-more-popup .c-popup-header{background:#001A54;font-weight: 600;font-size: 20px;line-height: 125%;color: #FFFFFF;padding: 19.5px 25px;}
.calendar-more-popup .c-btn-close{position:absolute;top:25px;right:25px;font-size:0;cursor:pointer;background: url(../img/graduate/close.png) no-repeat center center;width: 14px;height: 14px;}
.calendar-more-popup .c-popup-body{padding:26px 30px 35px;border: 1px solid #CCCCCC;border-radius: 0 0 10px 10px;border-top: 0;}
.calendar-more-popup .c-event-list li{display: flex;gap: 10px 20px;}
.calendar-more-popup .c-event-list li + li{margin-top: 30px;}
.calendar-more-popup .c-event-list li .date-range{display: flex;gap: 5.5px;align-items: center;}
.calendar-more-popup .c-event-list li .date-range p{width: 70px;text-align: center;background: #FFFFFF;border: 1px solid #CCCCCC;border-radius: 5px;height: 100%;display: flex;flex-direction: column;justify-content: center;align-items: center;padding: 4px 0;min-height: 52px;box-sizing: border-box;}
.calendar-more-popup .c-event-list li .date-range p span.c-y{font-weight: 500;font-size: 12px;line-height: 140%;color: #001A54;}
.calendar-more-popup .c-event-list li .date-range p span.c-m{font-weight: 600;font-size: 18px;line-height: 140%;color: #001A54;}
.calendar-more-popup .c-event-list li .process{font-weight: 500;font-size: 14px;line-height: 120%;color: #111111;border-radius: 5px;padding: 9px;width: 90px;display: flex;justify-content: center;align-items: center;text-align: center;margin-left: 10px;box-sizing: border-box;}
.calendar-more-popup .c-event-list li .title{flex: 1;display: flex;flex-direction: column;justify-content: center;}
.calendar-more-popup .c-event-list li .title .txt01{font-weight: 500;font-size: 16px;line-height: 140%;color:#333;}
.calendar-more-popup .c-event-list li .title .txt02{font-weight: 600;font-size: 13px;line-height: 140%;color: #888888;}

@media(max-width: 1024px){
	.calendar-wrap .calendar-top .date-box .select-box{border-bottom: 2px solid #111;position:relative;z-index:111;}
	.calendar-wrap .calendar-top .date-box .select-box select {font-size: 24px;padding: 0 31px 0 0;}
	.calendar-wrap .calendar-top .fc-button-group a{width: 40px;height: 40px;}
	.calendar-box .fc .fc-daygrid-day.fc-day-today .fc-daygrid-day-number{color: #004BAE;}
	.calendar-box .fc .fc-daygrid-day.fc-day-today:before{display: none;}
	
	.calendar-wrap .calendar-box{position: unset;}
	.calendar-more-popup{position:fixed;}
}
@media(max-width: 768px){
	
	.calendar-wrap .calendar-top{flex-direction: column;position:relative;margin-bottom:25px;}
	.calendar-wrap .calendar-top .btn-box.is-show{display: block;}
	.calendar-wrap .calendar-top .btn-box{width: 100%; margin: 25px 0 0 0;}
	.calendar-wrap .calendar-top .btn-box ul {gap: 10px 6px;}
	.calendar-wrap .calendar-top .btn-box ul li {width: calc(50% - 3px);border: 1px solid #DDDDDD;box-sizing: border-box;padding: 7.3px 0;border-radius: 5px;display: block;text-align: center;}
	.calendar-wrap .calendar-top .btn-box ul li.active {border-color:#004BAE;}
	.calendar-wrap .calendar-top .fc-button-group {position:absolute;top:0;left:0;width:100%;}
	.calendar-wrap .calendar-top .btn-box ul li a {padding: 4.5px 0 4.5px 28px;}
	.calendar-wrap .calendar-top .btn-box ul li.link-calendar a {background:url(../img/common/ico-calendar-sp.png) no-repeat center left;}
	.calendar-wrap .calendar-top .btn-box ul li.link-calendar.active a {background:url(../img/common/ico-calendar-blue-sp.png) no-repeat center left;}
	.calendar-wrap .calendar-top .btn-box ul li.link-list a {background: url(../img/common/ico-list-sp.png) no-repeat center left;}
	.calendar-wrap .calendar-top .btn-box ul li.link-list.active a {background: url(../img/common/ico-list-blue-sp.png) no-repeat center left;}
	
	
	.calendar-box .fc .fc-daygrid-more-link p span{display:none;}
	
	/*.calendar-box{overflow: auto;}
	.calendar-box .custom-calendar{width: 960px;}*/
	.calendar-wrap .calendar-top .sort-box{margin-left: unset;}
	
	.calendar-more-popup .c-popup-header {font-size:16px;padding: 14px 18px;}
	.calendar-more-popup .c-btn-close {top:18px;right:18px;}
	.calendar-more-popup{padding: 70px 15px;}
	.calendar-more-popup .c-popup-body{padding:22px 20px;}
	.calendar-more-popup .c-event-list li{flex-wrap: wrap;gap:15px;}
	.calendar-more-popup .c-event-list li .date-range {gap:4px;}
	.calendar-more-popup .c-event-list li .date-range p {width:54px;min-height:43px;}
	.calendar-more-popup .c-event-list li .date-range p span.c-m {font-size:14px;}
	.calendar-more-popup .c-event-list li .title .txt01{font-size:12px;}
	
	.calendar-box .fc .fc-daygrid-body tr {height:85px;}
	.calendar-box .fc .fc-daygrid-event {max-height: 18px;}
	.calendar-box .fc-h-event .fc-event-title {font-size:12px;line-height:125%;padding:1.5px 0;}
	.calendar-box .fc .fc-daygrid-day-number {font-size:12px;line-height:125%;}
	.calendar-box .fc .fc-col-header-cell-cushion {font-size:12px;line-height:125%;padding: 10px 0;}
	.calendar-box .fc .fc-daygrid-day-top {padding: 10px 0 0 0;justify-content:center;}
	.calendar-box .fc .fc-daygrid-day-bottom {text-align:center;padding-top:0;}
	.calendar-box .fc .fc-daygrid-more-link p {text-decoration:none;}
	.calendar-wrap .calendar-top .btn-box ul li a {font-weight: 600;font-size: 15px;line-height: 125%;}
	.calendar-wrap .calendar-top .btn-box ul li + li:before {content:none;}
	
	.calendar-box .fc-scrollgrid {border-radius: 5px 5px 0 0;}
}
@media (max-width: 374px) {
	.calendar-wrap .calendar-top .date-box .select-box select {font-size:16px;}
	.calendar-wrap .calendar-top .fc-button-group a {width: 30px;height: 30px;}
} 
.calendar-wrap .calendar-top.type02 .date-box .select-box{border-bottom: 0;}
.calendar-wrap .calendar-top.type02 .date-box .select-box select{margin-bottom: 0;}
.b-cal-list-box{border-top: 2px solid #001A54;}
.b-cal-list-box .month{display: flex;border-bottom: 1px solid #DDDDDD;}
.b-cal-list-box .month > p{font-weight: 600;font-size: 24px;line-height: 125%;display: flex;align-items: center;justify-content: center;color: #001A54;width: 226px;background: #F8F8F8;border-right: 1px solid #DDDDDD;}
.b-cal-list-box .month > div{display: flex;flex-direction: column;padding: 30px 30px 30px 50px;gap: 24px;flex:1;}
.b-cal-list-box .month > div > div{display: flex;gap: 30px;align-items: center;}
.b-cal-list-box .month > div > div > p{width: 140px;font-weight: 600;font-size: 16px;line-height: 125%;color: #004BAE;}
.b-cal-list-box .month > div > div > ul{flex: 1;}
.b-cal-list-box .month > div > div > ul > li{display: flex;gap: 15px;align-items: center;position: relative;font-weight: 500;font-size: 16px;line-height: 125%;color: #333333;}
.b-cal-list-box .month > div > div > ul > li.hot:before{content:'';width: 4px;height: 4px;background: #FF0000;position: absolute;top: 3px;left: -9px;border-radius: 50%;}
.b-cal-list-box .month > div > div > ul > li .process{font-weight: 500;font-size: 14px;line-height: 125%;color: #111111;width: 130px;padding: 6px;border-radius: 5px;box-sizing: border-box;display: flex;align-items: center;justify-content: center;}
.b-cal-list-box .month > div > div > ul > li .txt01{font-weight: 600;font-size: 16px;line-height: 125%;color: #333333;width: calc((287 / 827) * 100%);}
.b-cal-list-box .month > div > div > ul > li a.txt01{text-decoration-line: underline;text-underline-offset: 3px;color: #004BAE;}
.b-cal-list-box .month > div > div > ul > li .txt02{font-weight: 500;font-size: 15px;line-height: 125%;color: #777777;width: calc((380 / 827) * 100%);}

@media(max-width: 1024px){
	.b-cal-list-box .month > p{width: 80px;text-align:center;}
	.b-cal-list-box .month > div{padding:15px 30px;gap: 15px;}
	.b-cal-list-box .month > div > div{gap: 5px;}
}
@media(max-width: 768px){
	.b-cal-list-box .month > div > div{flex-direction: column;align-items: flex-start;}
	
	.b-cal-list-box .month > p {font-size:20px;}
	.b-cal-list-box .month > div > div > p {font-size: 14px;width:100%;}
	.b-cal-list-box .month > div > div > ul > li {font-size:12px;}
}


.js-custom-select{position:relative;width:100%;max-width:240px;}
.js-custom-select .js-selected{padding:5px 28px 5px 0;cursor:pointer;background:#fff url(../img/common/select-box.png) no-repeat right center;font-weight: 800;font-size: 34px;line-height: 125%;letter-spacing: -0.02em;color: #111111;}
.js-custom-select .js-options-wrap{position:absolute;left:0;right:0;top:calc(100% + 5px);z-index:50;padding: 14px 3px;background: #FFFFFF;box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.07);border-radius: 8px;opacity:0;pointer-events:none;transform:translateY(10px);transition:.25s;border: 1px solid #E9E9E9;}
.js-custom-select .js-options-wrap.open{opacity:1;pointer-events:auto;transform:translateY(0)}
.js-custom-select .js-options{background:#fff;max-height:172px;overflow-y:auto;transition:.25s;z-index:50;}
.js-custom-select .js-options::-webkit-scrollbar{width: 3px;border-radius: 5px;}
.js-custom-select .js-options::-webkit-scrollbar-track{background: #fff;border-radius: 5px;}
.js-custom-select .js-options::-webkit-scrollbar-thumb{background: #001A54;border-radius: 5px;}

.js-custom-select .js-options li{padding:5px 0;cursor:pointer;font-weight: 700;font-size: 16px;line-height: 110%;text-transform: uppercase;color: #999999;text-align: center;}
.js-custom-select .js-options li+li{margin-top: 8px;}
.js-custom-select .js-options li.active,.js-options li:hover{text-decoration-line: underline;color: #001A54;text-underline-offset: 3px;text-decoration-thickness: 2px;}


@media (max-width: 768px) {
	.js-custom-select .js-selected {font-size:24px;}
}