section.schedule {
  padding: 0px 10px;
  width: 100%;
}

section.schedule h3 {
  border-color: #999;
  border-radius: 2px 2px 0px 0px;
  border-style: solid;
  border-width: 1px 1px 0px 1px;
  color: #FFF;
  font-size: 18px;
  line-height: 100%;
  padding: 11px 4px;
  width: 100%;
}

section.schedule h3:nth-child(n+2) {
  border-radius: 0px;
  border-width: 0px 1px 0px 1px;
}

section.schedule div.article {
  width: 100%;
}

section.schedule div.article table.day {
  border-color: #999;
  border-style: solid;
  border-width: 1px 1px 0px 1px;
  border-collapse: collapse;
  width: 100%;
}

section.schedule div.article table.day:first-child {
  border-radius: 4px 4px 0px 0px;
}

section.schedule div.article table.day:nth-child(n+2) {
  border-width: 0px 1px 1px 1px;
}

section.schedule div.article table.day:last-child {
  border-radius: 0px 0px 2px 2px;
}

section.schedule div.article table th.date {
  border-color: #999;
  border-style: solid;
  border-width: 0px 0px 1px 0px;
  font-size: 12px;
  width: 42px;
}

section.schedule div.article table td.long, section.schedule div.article table td.article {
  border-color: #999;
  border-style: solid;
  border-width: 0px 0px 1px 1px;
}

section.schedule div.article table td.long {
  font-size: 11px;
  font-weight: bold;
  padding: 4px;
  vertical-align: middle;
  /* writing-mode: tb-rl; */
  width: 20px;
}

section.schedule div.article table td.red {
  background-color: #F00;
  color: #FFF;
}

section.schedule div.article table td.article {
  background-color: #FFF;
  vertical-align: bottom;
}

section.schedule div.article table td.article table {
  border-collapse: collapse;
  height: 100%;
  width: 100%;
}

section.schedule div.article table td.article table:nth-child(n+2) {
  border-color: #999;
  border-style: solid;
  border-width: 1px 0px 0px 0px;
}

section.schedule div.article table td.article th {
  font-size: 14px;
  padding: 7px 4px;
  text-align: left;
  width: 100%;
}

section.schedule div.article table td.article th span {
  font-size: 11px;
  font-weight: normal;
}

section.schedule div.article table td.article td.time, section.schedule div.article table td.article td.place {
  background-position: 2px 50%;
  background-repeat: no-repeat;
  border-color: #999;
  border-style: solid;
  font-size: 14px;
  padding: 7px 4px;
}

section.schedule div.article table td.article td.time {
  background-image: url("/schedule/images/clock.png");
  background-size: 14px 14px;
  border-width: 1px 1px 0px 0px;
  /* text-indent: 12px; */
  padding-left: 16px;
  width: 50%;
}

section.schedule div.article table td.article td.place {
  background-image: url("/schedule/images/house.png");
  background-size: 16px 14px;
  border-width: 1px 0px 0px 0px;
  /* text-indent: 14px; */
  padding-left: 18px;
  width: 50%;
}

.schedule__login {
  -webkit-filter: opacity(0.95);
          filter: opacity(0.95);
  height: 320px;
  position: relative;
  width: 100%;
}

.schedule__login__msg {
  background-color: white;
  border-radius: 5px;
  margin: 0 auto;
  padding: 15px;
  position: relative;
  width: 270px;
}

.schedule__login__msg:before {
  border: 10px solid transparent;
  border-top: 25px solid white;
  content: '';
  left: 65%;
  margin-left: -15px;
  position: absolute;
  top: 100%;
}

.schedule__login form {
  display: block;
  left: 50%;
  padding: 15px;
  position: absolute;
  text-align: center;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 320px;
  z-index: 2;
}

.schedule__login input {
  -webkit-appearance: none;
  color: white;
  background-color: #333333;
  border: solid .1rem #FEFEFE;
  border-radius: 3px;
  font-size: 16px;
  padding: 7.5px;
  width: 100%;
}

.schedule__login input[type="submit"] {
  border-radius: 50px;
  font-weight: bold;
  margin-top: 45px;
  padding-top: 9px;
  width: 215px;
}

.schedule.--schedule-form {
  background: no-repeat center center/auto 100% url(/schedule/images/formbg), black;
  padding: 0;
}
