.simple-calendar .calendar { position: relative; overflow: hidden; text-transform: capitalize; text-align: center; font-family: 'Pretendard', 'Montserrat', 'Noto Sans KR'; color: #333; line-height: 1.6; font-weight: normal; }

.simple-calendar .calendar a { text-decoration: none; color: inherit; }

.simple-calendar .calendar header { position: relative; }

.simple-calendar .calendar header .simple-calendar-btn { display: inline-block; position: absolute; width: 30px; height: 30px; text-align: center; line-height: 30px; color: #cbd1d2; border-radius: 50%; border: 2px solid #cbd1d2; top: 50%; margin-top: -15px; }

/*.simple-calendar .calendar header .simple-calendar-btn:hover { background: #CBD1D2; color: white; }*/

.simple-calendar .calendar header .simple-calendar-btn:before { content: ''; position: absolute; top: 9px; left: 8px; width: 8px; height: 8px; border-style: solid; border-width: 3px 3px 0 0; -webkit-transform: rotate(45deg); transform: rotate(45deg); -webkit-transform-origin: center center; transform-origin: center center; }

.simple-calendar .calendar header .btn-prev { left: 0; -webkit-transform: rotate(-180deg); transform: rotate(-180deg); }

.simple-calendar .calendar header .btn-next { right: 0; }

.simple-calendar .calendar header .btn-next:before { -webkit-transform: rotate(45deg); transform: rotate(45deg); }

.simple-calendar .calendar header .month { padding: 0; margin: 0; font-size: 1.2em; }

.simple-calendar .calendar header .month .year { font-size: 0.9em; font-weight: 400; }

.simple-calendar .calendar table { width: 100%; margin: 20px 0; border-spacing: 0px; }

.simple-calendar .calendar thead td { height: 2em; font-weight: 500; }

.simple-calendar .calendar .tr + .tr { margin-top: 1em; }

.simple-calendar .calendar .td { -webkit-box-flex: 1; -ms-flex: 1; flex: 1; }

.simple-calendar .calendar .day { position: relative; display: inline-block; width: 2.5em; height: 2.5em; line-height: 2.5em; border-radius: 50%; border: 2px solid transparent; box-sizing: border-box; cursor: pointer; }

.simple-calendar .calendar .day:hover { border: 2px solid #23c7ff; }

.simple-calendar .calendar .day.today { background: #23c7ff; color: #fff; }

.simple-calendar .calendar .day.today.has-event:after { background: #fff; }

.simple-calendar .calendar .day.wrong-month { color: #cbd1d2; }

.simple-calendar .calendar .day.wrong-month:hover { border: 2px solid transparent; }

.simple-calendar .calendar .day.has-event:after { content: ''; position: absolute; top: calc(50% + .7em); left: calc(50% - 2.5px); width: 5px; height: 5px; border-radius: 50%; background: #23c7ff; }

.simple-calendar .calendar .day.disabled { cursor: default; }

.simple-calendar .calendar .day.disabled:hover { border: 2px solid transparent; }

.simple-calendar .calendar .event-container { display: none; position: relative; top: 0; left: 0; width: 100%; height: 100%; padding: 70px; background: #f4f4f4; -webkit-box-sizing: border-box; box-sizing: border-box; }

.simple-calendar .calendar .event-container .event-wrapper { overflow-y: auto; max-height: 100%; }

.simple-calendar .calendar .event-container .close { position: absolute; width: 30px; height: 30px; top: 20px; right: 20px; cursor: pointer; }

.simple-calendar .calendar .event-container .close:before, .simple-calendar .calendar .event-container .close:after { content: ''; position: absolute; top: 0; left: 50%; width: 2px; height: 100%; background-color: #bebebe; }

.simple-calendar .calendar .event-container .close:before { -webkit-transform: rotate(45deg); transform: rotate(45deg); }

.simple-calendar .calendar .event-container .close:after { -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }

.simple-calendar .calendar .event-container .event { position: relative; width: 100%; padding: 1em; margin-bottom: 1em; background: #23c7ff; border-radius: 4px; -webkit-box-sizing: border-box; box-sizing: border-box; -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.12); box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.12); text-align: left; color: #fff; }

.simple-calendar .calendar .event-container .event-date { margin-bottom: 1em; }

.simple-calendar .calendar .event-container .event-hour { float: right; }

.simple-calendar .calendar .event-container .event-summary { font-weight: 600; }

.simple-calendar .calendar .filler { position: absolute; width: 0; height: 0; border-radius: 50%; background: #545A5C; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }


/*커스텀*/
.simple-calendar { height: 100%; }
.simple-calendar .calendar { height: 100%; padding: 40px; box-sizing: border-box; }
.simple-calendar .calendar header .btn-prev,
.simple-calendar .calendar header .btn-next { transform: none; width: 36px; height: 36px; border: none; }
.simple-calendar .calendar header .btn-prev { background: url('../img/common/ico_arrow_calendar1_prev1.svg'); }
.simple-calendar .calendar header .btn-next { background: url('../img/common/ico_arrow_calendar1_next1.svg'); }
.simple-calendar .calendar header .simple-calendar-btn { top: calc(50% - 18px); margin: 0; }
.simple-calendar .calendar header .simple-calendar-btn:before,
.simple-calendar .calendar header .simple-calendar-btn:after { display: none; }

.simple-calendar .calendar header .month { display: flex; flex-direction: row-reverse; justify-content: center; align-items: center; font-size: 28px; font-weight: 700; color: #000; line-height: 40px; }
.simple-calendar .calendar header .month .year { font-size: 28px; font-weight: 700; color: #000; line-height: 40px; }
.simple-calendar .calendar header .month .year:after { content: '.'; margin-right: 4px; }

.simple-calendar .calendar table { margin-top: 22px; margin-bottom: 0; }
.simple-calendar .calendar thead td { height: 26px; font-size: 16px; font-weight: 500; color: #959595; }
.simple-calendar .calendar tbody td { height: 56px; }
.simple-calendar .calendar .day { display: flex; justify-content: center; align-items: center; margin: 0 auto; font-size: 20px; font-weight: 700; color: #000; }
.simple-calendar .calendar .day:hover { border-color: transparent; }
.simple-calendar .calendar .day.today { width: 40px; height: 40px; }
.simple-calendar .calendar .day.wrong-month { color: #ccc; }
.simple-calendar .calendar .day.has-event:after { top: auto; left: calc(50% - 2px); bottom: 0px; width: 6px; height: 6px; background: #bebebe; }
.simple-calendar .calendar .day.today.has-event:after { background: #bebebe; }

.simple-calendar .calendar .event-container { position: absolute; }


@media only screen and (max-width: 1324px) {
	.simple-calendar .calendar { padding: 28px 20px; box-sizing: border-box; }
	
	.simple-calendar .calendar header .month { font-size: 20px; line-height: 28px; }
	.simple-calendar .calendar header .month .year { font-size: 20px; line-height: 28px; }
	
	.simple-calendar .calendar table { margin-top: 4px; }
	.simple-calendar .calendar thead td { height: 36px; font-size: 12px; }
	.simple-calendar .calendar tbody td { height: 40px; }
	.simple-calendar .calendar .day { font-size: 14px; }
	.simple-calendar .calendar .day.today { width: 28px; height: 28px; }
	.simple-calendar .calendar .day.has-event:after { width: 4px; height: 4px; }
	
	.simple-calendar .calendar .event-container { padding: 60px 20px 20px; box-sizing: border-box; }
	.simple-calendar .calendar .event-container .close { width: 20px; height: 20px; }
}