.block {
  margin: 70px auto 0;
}

.block:first-child {
  margin-top: 0;
}

.sub_block {
  margin: 45px auto 0;
}

.place_block {
  margin-top: 45px;
}

.block_ttl {
  font-size: 18px;
  font-weight: bold;
}

.sub_block_ttl {
  font-size: 18px;
  font-weight: normal;
}

.schedule_table {
  max-width: 1200px;
  width: 100%;
  margin: 14px 0 20px;
  table-layout: fixed;
  background: #fff;
  border: 1px solid #362506;
  border-right: none;
  border-bottom: none;
}

.schedule_table th, .schedule_table td {
  padding: .35em 1em;
  border: 1px solid #362506;
  border-left: none;
  border-top: none;
  text-align: center;
  font-size: 18px;
}

.schedule_table th {
  font-weight: normal;
}

.schedule_table .sat {
  background: #d2ebf9;
}

.schedule_table .sun {
  background: #f7e3eb;
}

.schedule_table .icon {
  width: 22px;
  display: inline-block;
  margin-top: -2px;
}

.item_list{width:100%; letter-spacing:0; padding:12px 0;}
.item_list .item{display:inline-block; vertical-align:top; width:16%; margin:1%;}

.live_banner{width:90%; max-width:480px; margin:0 auto 40px}

@media print, screen and (max-width: 768px) {
  .block {
    margin-top: 30px;
  }
  .block:first-child {
    margin-top: 0;
  }
  .sub_block {
    margin-top: 15px;
  }
  .place_block {
    margin-top: 15px;
  }
  .block_ttl {
    font-size: 15px;
    margin-bottom: 2px;
  }
  .sub_block_ttl {
    font-size: 15px;
  }
  .schedule_table {
    margin: 5px 0 10px;
  }
  .schedule_table th, .schedule_table td {
    padding: .3em;
    font-size: inherit;
  }
  .schedule_table .icon {
    width: 15px;
  }
  .item_list{width:100%; letter-spacing:0; padding:12px 0;}
  .item_list .item{display:inline-block; vertical-align:top; width:30%; margin:1%;}
  .live_banner{width:90%; max-width:480px; margin:0 auto 30px}
}
