@charset "utf-8";

.main_schedule_basic{
  width:100%;
  padding:0;
}

.main_schedule_basic .scheduleControl{
  display:none;
}

.main_schedule_basic .scheduleMain{
  position:relative;
}

.main_schedule_basic ._schdulList > ul{
  margin:0;
  padding:0;
  list-style:none;
}

.main_schedule_basic ._schdulList > ul > li{
  padding:0;
  margin:0;
}

.main_schedule_basic .title{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin-bottom:28px;
  padding-bottom:18px;
  border-bottom:1px solid #e6e1db;
}

.main_schedule_basic .title span{
  display:block;
  font-size:42px;
  line-height:0.95;
  font-weight:800;
  letter-spacing:-0.03em;
  color:#8b0015;
  text-transform:uppercase;
}

.main_schedule_basic .title i{
  display:none;
}

/* =========================
   VIEW MORE
========================= */
.main_schedule_basic .more{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:12px;
  color:#8d8d8d;
  font-size:18px;
  text-decoration:none;
  white-space:nowrap;
  align-self:flex-start;
  margin-top:10px;
  transition:color .2s ease;
}

.main_schedule_basic .more::after{
  content:"";
  width:36px;
  height:36px;
  border-radius:50%;
  background:#efe3e3;
  display:inline-block;
  flex:0 0 36px;
  transition:background .2s ease;
}

.main_schedule_basic .more::before{
  content:"";
  position:absolute;
  right:13px;
  top:50%;
  width:10px;
  height:10px;
  border-top:1.8px solid #8b0015;
  border-right:1.8px solid #8b0015;
  transform:translateY(-50%) rotate(45deg);
  z-index:2;
  transition:border-color .2s ease;
}

.main_schedule_basic .more:hover{
  color:#8b0015;
}

.main_schedule_basic .more:hover::after{
  background:#e6d2d6;
}

/* =========================
   LIST
========================= */
.main_schedule_basic .list{
  width:100%;
}

.main_schedule_basic .list > ul{
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:18px;
  margin:0;
  padding:0;
  list-style:none;
}

.main_schedule_basic .list > ul > li{
  position:relative;
  min-height:150px;
  padding:16px;
  border-radius:6px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  box-sizing:border-box;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  border:1px solid #e6e1db;
  background:#fff;
}

.main_schedule_basic .list > ul > li::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:0;
  height:100%;
  background:#8b0015;
  transition:width .22s ease;
}

.main_schedule_basic .list > ul > li:hover{
  transform:translateY(-6px);
  box-shadow:0 14px 30px rgba(0,0,0,.10);
  border-color:#d8cfc5;
}

.main_schedule_basic .list > ul > li:hover::before{
  width:6px;
}

/* =========================
   TYPE COLORS
========================= */

/* 일반 */
.main_schedule_basic .type-general{
  background:#f5f7fb;
}

.main_schedule_basic .type-general .content{
  color:#1f2f4a;
}

/* 세미나 */
.main_schedule_basic .type-seminar{
  background:#eef4ef;
}

.main_schedule_basic .type-seminar .content{
  color:#244936;
}

/* 공휴일 */
.main_schedule_basic .type-holiday{
  background:#faf1f3;
}

.main_schedule_basic .type-holiday .content{
  color:#8b0015;
}

/* =========================
   DATE BOX
========================= */
.main_schedule_basic .year{
  display:none;
}

.main_schedule_basic .period{
  position:absolute;
  top:14px;
  left:14px;
  width:60px;
  height:56px;
  border-radius:14px;
  background:#fff;
  color:#333;
  font-family:'Noto Sans KR', 'Apple SD Gothic Neo', 'Malgun Gothic', sans-serif;
  text-align:center;
  line-height:1;
  padding-top:8px;
  box-sizing:border-box;
  font-size:0;
  border:1px solid #ddd;
  box-shadow:0 4px 10px rgba(0,0,0,.04);
}

/* 일반 날짜 */
.main_schedule_basic .type-general .period{
  background:#ffffff;
  color:#1f2f4a;
  border-color:#d6deee;
}

/* 세미나 날짜 */
.main_schedule_basic .type-seminar .period{
  background:#2f5d43;
  color:#fff;
  border:none;
}

/* 공휴일 날짜 */
.main_schedule_basic .type-holiday .period{
  background:#8b0015;
  color:#fff;
  border:none;
}

.main_schedule_basic .period .month{
  display:block;
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.main_schedule_basic .period .day{
  display:block;
  margin-top:5px;
  font-size:18px;
  font-weight:800;
}

/* =========================
   CONTENT
========================= */
.main_schedule_basic .content{
  font-size:16px;
  line-height:1.45;
  font-weight:700;
  word-break:keep-all;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  white-space:normal;
  margin-top:0;
  padding-top:50px;
}

/* =========================
   NO DATA
========================= */
.main_schedule_basic .noData{
  text-align:center;
  color:#666;
  padding:40px 20px;
  border:1px solid #e5e0d9;
  background:#faf9f7;
}

.main_schedule_basic ._schdulList > ul > li .scheduleScroll{
  display:block;
}

/* =========================
   RESPONSIVE
========================= */
@media only screen and (max-width:1280px){
  .main_schedule_basic .title span{
    font-size:36px;
  }

  .main_schedule_basic .list > ul{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }
}

@media only screen and (max-width:768px){
  .main_schedule_basic .title{
    flex-direction:column;
    align-items:flex-start;
    gap:14px;
  }

  .main_schedule_basic .title span{
    font-size:30px;
  }

  .main_schedule_basic .more{
    font-size:16px;
  }

  .main_schedule_basic .list > ul{
    grid-template-columns:1fr;
    gap:16px;
  }

  .main_schedule_basic .list > ul > li{
    min-height:150px;
    padding:16px;
  }

  .main_schedule_basic .content{
    font-size:16px;
    padding-top:50px;
  }

  .main_schedule_basic .period{
    width:60px;
    height:56px;
    top:14px;
    left:14px;
  }

  .main_schedule_basic .period .month{
    font-size:12px;
  }

  .main_schedule_basic .period .day{
    font-size:18px;
  }
}