.calendar_lnb { float: left; width: 300px; padding: 20px; }
.calendar_lnb .form-group {
  margin: 24px 0;
}

.calendarWrap {
  position: relative;
  float: left;
  width: calc(100% - 300px);
  padding: 20px;
  border-left: 1px solid rgba(0, 0, 0, 0.3);
}

.miniCalendar {
  padding: 10px 20px;
  border: 1px solid rgba(0, 0, 0, 0.2);
}

.miniCalendar .fc-toolbar .fc-prev-button,
.miniCalendar .fc-toolbar .fc-next-button {
  background: transparent;
  color: #000 !important;
  padding: 0 8px;
  height: 27px;
  border: 0;
}
.miniCalendar .fc-toolbar .fc-prevYear-button,
.miniCalendar .fc-toolbar .fc-nextYear-button {
  background: transparent;
  color: #000 !important;
  padding: 0 8px;
  height: 27px;
  border: 0;
}

.miniCalendar .fc-toolbar .fc-prev-button:hover,
.miniCalendar .fc-toolbar .fc-next-button:hover,
.miniCalendar .fc-toolbar .fc-prev-button:focus,
.miniCalendar .fc-toolbar .fc-next-button:focus {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none;
}
.miniCalendar .fc-toolbar .fc-prevYear-button:hover,
.miniCalendar .fc-toolbar .fc-nextYear-button:hover,
.miniCalendar .fc-toolbar .fc-prevYear-button:focus,
.miniCalendar .fc-toolbar .fc-nextYear-button:focus {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none;
}

.miniCalendar .fc-toolbar h2 {
  position: relative;
  top: -2px;
  padding: 3px 0;
  font-weight: 800;
  font-size: 15px;
  line-height: 27px;
}

.miniCalendar .table-bordered,
.miniCalendar .table-bordered > thead > tr > th,
.miniCalendar .table-bordered > tbody > tr > th,
.miniCalendar .table-bordered > tfoot > tr > th,
.miniCalendar .table-bordered > thead > tr > td,
.miniCalendar .table-bordered > tbody > tr > td,
.miniCalendar .table-bordered > tfoot > tr > td {
  border: 0;
}

.miniCalendar .fc-head .fc-head-container { padding: 8px 0; }
.miniCalendar .fc-head .fc-day-header > span { font-weight: bold; }

.miniCalendar .fc-week .fc-day-top {
    text-align: center !important;
}
.miniCalendar.fc-ltr .fc-basic-view .fc-day-top .fc-day-number {
  float: none !important;
}

.miniCalendar .fc-day,
.miniCalendar .fc-day-top {
  padding: 4px 0;
}
.miniCalendar .fc-today {
  border-radius: 16px !important;
  background: transparent !important;
  /* color: #1c69c7 !important; */
  font-weight: bold;
}
.miniCalendar .fc-today .fc-day-number {
  background: #1c69c7;
  color: #fff;
  width: 24px;
  height: 24px;
  display: inline-block;
  text-align: center;
  line-height: 24px;
  border-radius: 24px;
}
.miniCalendar .day-highlight {
  background: #d1d8df;
}

.miniCalendar .fc-head-container thead th {
  width: 32px;
  color: rgba(0, 0, 0, 0.5);
}

.miniCalendar .fc-toolbar.fc-header-toolbar {
  margin-bottom: 2px !important;
}

.miniCalendar .fc-row .fc-content-skeleton { padding: 0; }

.miniCalendar .fc-basic-view .fc-body .fc-row {
  min-height: 25px !important;
}
.miniCalendar .fc-toolbar .fc-left {
  float: left;
  padding-top: 2px;
  padding-left: 2px;
}
.miniCalendar .fc-toolbar .fc-right {
  float: right;
  padding-top: 2px;
  padding-right: 2px;
}



.miniCalendar .fc td img{
  margin:0px !important;
  padding:0px !important; 
}

.miniCalendar .fc .fc-row {
  height: 20px !important;
} 

.miniCalendar .fc td {
  line-height: 10px !important;
  text-align: center;
  background:#fff;
} 

.miniCalendar .fc th {
  text-align: center;
  padding: 5px 0 !important;
}


.miniCalendar .fc button { 
  height: 20px !important;
  padding: 0px;
}

.miniCalendar .fc button .fc-icon {
  color:#fff;
}

.miniCalendar .skeleton {
  display:none;
}

.miniCalendar .fc-month-view .fc-event-container {
display: none;
}


/* 검색영역 */
.searchField { position: relative; margin: 20px 0; }
.searchField i { position: absolute; top: 10px; left: 12px; }
.searchField input[type="text"] { width: 100% !important; height: inherit; margin: 0; padding: 8px 20px 8px 30px; border-radius: 20px; }

@media only screen and (min-device-width : 320px) and (max-device-width : 480px) {
  .searchField i { position: absolute; top: 30px; left: 20px; }
}

.lnbItemField { margin-top: 0; margin-bottom: 10px; }
.lnbItemField > label {
  display: block;
  width: 100%;
  max-width: 100%;
  position: initial;
  text-align: left;
  padding: 4px 0;
}
.lnbItemField > select {
  width: 100% !important;
  margin: 0 !important;
  padding: 8px 0;
  height: initial;
}
.lnbItemField > textarea {
  width: 100% !important;
  margin: 0 !important;
  padding: 8px;
  height: initial;
  resize: none;
}

/* 부서 선택 */
#type_filter { margin: 5px 0; }
#type_filter > div { margin-bottom: 5px; }


/* 버튼 */
.btn_group { text-align: right; }



/* 캘린더 */
.calendar .table-bordered > thead > tr > th,
.calendar .table-bordered > tbody > tr > th,
.calendar .table-bordered > tfoot > tr > th,
.calendar .table-bordered > thead > tr > td,
.calendar .table-bordered > tbody > tr > td,
.calendar .table-bordered > tfoot > tr > td { border-left: 1px solid #ddd; }

.calendar .table-bordered > thead > tr > th,
.calendar .table-bordered > thead > tr > td { border-bottom: 0; }

/* 달력 헤더 (월 ~ 일) */
.calendar .fc-day-header { height:30px; vertical-align: middle;}

/* agendaWeek, agendaDay 화면틀어짐 */
/* .calendar .fc-agendaWeek-view th.fc-axis {width: 41px !important;} 
.calendar .fc-agendaDay-view th.fc-axis {width: 41px !important;}  */

/* 토/일 글자색상 및 배경색상 */
.calendar .fc-day-header.fc-sat, .fc-day-top.fc-sat {color: #3972ac;}
.calendar .fc-day-header.fc-sun, .fc-day-top.fc-sun {color: #d43f3f;}

/* 날짜 글자 크기 */
.calendar .fc-day-number { font-size:1.1em; }

/* 날짜/공휴일 높이 */
.calendar .fc-day-top { height:35px; padding-right:5px !Important; }

.calendar .fc-day { vertical-align: top !Important; }

.calendar h2 { font-size: 1.5em; position: relative; top: 2px; }

.calendar tr:first-child>td>.fc-day-grid-event {
  margin-top: 0;
}
/* .calendar .fc-day-grid-event {
  margin: 1px 2px;
  padding: 3px 5px;
  border-radius: 3px !important;
} */
.calendar .fc-day-grid-event {
  margin: 3px 4px;
  padding: 6px 8px;
  border-radius: 6px !important;
  border: 1px solid #ff9e57;
  background-color: rgba(255, 158, 87, 0.2);
  color: #cf6f29;
}
.calendar .fc-body { background: #fff; }


.calendar .fc-time-grid-event {
  margin: 3px 4px 4px 4px;
  padding: 3px 10px;
  border-radius: 6px !important;
}

.calendar .fc-more {
  color: #29348e;
  font-weight: 600;
}

/** 주간, 일간 캘린더 **/
.fc-agendaDay-view thead th,
.fc-agendaWeek-view thead th {
  height: 45px;
  background-color: #edeef3;
  font-weight: 800;
}
.fc-today {
  background-color: #fff;
}

/** 일정목록 **/
.fc-list-view {
  border: 0;
}
.fc-list-view .fc-list-heading td {
  height: 48px;
  padding: 0 20px;
  font-weight: 800;
}
.fc-list-view .fc-list-item td {
  height: 50px;
  padding: 3px 20px;
  font-size: 15px;
}

/* 캘린더 상태 */
.stateList:before { content: ''; display: block; margin: 20px 0; }
.stateList { margin: 10px 0; text-align: center;}
.stateList > li { margin-right: 8px; margin-bottom: 12px; }
.stateList > li:last-child { margin-right: 0; }

.state { padding: 5px 12px; border-radius: 15px; font-size: 0.9em; }
.state1 { background: #ffe16b; color: #333; }
.state2 { background: #749ef8; color: #fff; }
.state3 { background: #55dd9f; color: #fff; }
.state4 { background: #cf0bf0; color: #fff; }
.state5 { background: #757575; color: #fff; }
.state6 { background: #FF0000; color: #fff; }

/* 모달 (gchoice-factory) */
.modal-content--text {
  margin: 30px 0;
  text-align: center;
}
.modal-content--item {
  padding-bottom: 30px;
  text-align: center;
}
.modal-content--item md-radio-button {
  display: inline-block;
  margin-right: 30px;
}
.modal-content--item md-radio-button:last-child {
  margin-right: 0;
}

.modal-footer-custom button {
  width: 50%;
  margin: 0;
  font-weight: 800;
}

md-dialog md-dialog-actions.modal-footer-custom .md-button {
  margin: 8px;
 }

@media (max-width: 1440px) and (min-width: 768px)  {
  .schedule-ctrl { width: 1200px; }
}
@media (max-width: 768px)  {
  .schedule-ctrl { width: 100%; }
  .calendar { margin-bottom: 20px; }

  .calendar_lnb { clear: both; width: 100%; padding: 16px; }  
  .calendarWrap { clear: both; width: 100%; padding: 16px; border-left: 0; border-top: 1px solid rgba(0, 0, 0, 0.3); }
  .miniCalendar .fc-header-toolbar > .fc-center { display: block; clear: both; width: 100%; padding-top: 10px; overflow: hidden; margin-left: 60px; }
  .calendar .fc-header-toolbar > .fc-center { display: block; clear: both; width: 100%; padding-top: 10px; overflow: hidden; margin-left: 25px; }
  .calendar h2 { font-size: 18px; }
  .miniCalendar { padding: 10px 16px; }
}
@media (max-width: 480px)  {
}

/* 모달 (modalcalendar) */
.modalcalendar h2 {font-size: 24px;}


/** 인라인태그 **/

.hoverEffect {
  position: absolute;
  cursor: pointer;
}

.popoverTitleCalendar {
  width: 100%;
  height: 100%;
  padding: 15px 15px;
  font-size: 13px;
  border-radius: 5px 5px 0 0;
}

.popoverInfoCalendar i {
  font-size: 14px;
  margin-right: 10px;
  line-height: inherit;
  color: #d3d4da;
}

.popoverInfoCalendar p {
  margin-bottom: 1px;
}

.popoverDescCalendar {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #E3E3E3;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.popover-content {
  padding: 15px 15px;
  font-size: 13px;
}
.searchField .auto-complet-wrap {
  margin-left: 0px;
  width: 100%;
  margin-top: -1px;
  border-radius: 5px;
}

.searchField .auto-complet-wrap div span:nth-child(2) {
  margin-left: 2px;
  font-size: 11px;
  color: #a7a7a7;
  margin-top: 2px;
  display: inline-block;
}

.fc-scroller.fc-day-grid-container { overflow: initial !important; }


/** 풀캘린더 **/
.calendar .fc-today-button {
  width: 58px;
  height: 32px;
  border-radius: 16px;
  border: 1px solid rgba(0, 0, 0, 0.2);
  background: #fff;
  box-shadow: none;
}
.calendar .fc-today-button.disabled {
  background-color: rgba(0, 0, 0, 0.05);
  opacity: 0.5;
}
.calendar .fc-header-toolbar {
  position: relative;
}
.calendar .fc-header-toolbar > .fc-right {
  position: absolute;
  right: 0;
}
.calendar .fc-header-toolbar > .fc-right > .fc-button {
  min-width: 58px;
  height: 32px;
  margin-left: -1px;
  border-radius: 0;
  border: 1px solid rgba(0, 0, 0, 0.2);
  background: #fff;
  box-shadow: none;
}
.calendar .fc-header-toolbar > .fc-right > .fc-button.fc-state-active {
  border: 1px solid #1c69c7 !important;
  background-color: #1c69c7 !important;
  color: #fff !important;
  box-shadow: none;
}
.calendar .fc-header-toolbar > .fc-right > .fc-button:hover {
  border: 1px solid #1c69c7 !important;
  background-color: #1c69c7 !important;
  color: #fff !important;
}
.calendar .fc-header-toolbar > .fc-center .fc-button {
  height: 32px;
  border: 0;
  background: #fff;
  box-shadow: none;
}
.calendar .fc-header-toolbar > .fc-center h2 {
  line-height: 32px;
  font-weight: 800;
}