@charset "utf-8";
/* CSS Document */
.vertical-center {
  display: flex;
  justify-content: center;
  align-items: center;
}
.calendar {
  display: block;
  background: #FFFFFF;
  width: 100%;
  border: solid 1px #D6D6D6;
  margin: 0 auto;
  margin-top:15px;
  box-shadow: 0 0 15px 0 #D0D0D0;
  font-size: 1.3rem;
  text-align: center;
  border-radius: 8px;
  padding: 22px;
  font-size: 16px;
}
.calendar header {
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: default;
  font-size: 1.4rem;
  display: block;
  font-weight: bold;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  color: var(--bg-color-menu);
}
.calendar header .month-display {
  align-items: center;
  height: 40px;
}
.calendar header .month-label {
  flex: 1;
  text-align: left;
  padding-left: 10px;
  font-size: 16px;
}
.calendar header .arrow {
  flex-basis: 6%;
  font-weight: bold;
  cursor: pointer;
  transition: background 0.2s;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.calendar .week:first-child {
  border-top: none;
}
.calendar .day-names {
  color: var(--bg-color-menu);
  font-weight: bold;
  cursor: default;
  font-size: 16px;
}
.calendar .day-names .day {
  cursor: default;
}
.calendar .day-names .day:hover {
  background: inherit;
}
.calendar .day {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 1;
  height: 35px;
  cursor: pointer;
  transition: all 0.2s;
  padding: 6px;
}
.calendar .day:hover {
  background: #EFEFEF;
}
.calendar .day:first-child {
  border-left: none;
}
.calendar .day.today {
  background: #d5f3ff;
  border-radius: 50%;
  width: 35px;
  max-width: 35px;
  height: 35px;
}
.calendar .day.different-month {
  color: #C0C0C0;
}
.calendar .day.selected {
  background: var(--bg-color-menu);
  color: #FFFFFF;
  border-radius: 50%;
  width: 35px;
  max-width: 35px;
  height: 35px;
}