@media (max-width: 1280px) {
  .ScheduleTeaser {
    flex: 0 0 33.3333%; } }
@media (max-width: 768px) {
  img {
    height: auto; }

  iframe {
    max-width: 100%; }

  .Center {
    margin: auto;
    width: 100%;
    max-width: 1200px; }

  .CenterS {
    margin: auto;
    width: 90%;
    max-width: 900px; }

  .ti1 {
    text-indent: -0.5em; }

  .SiteHeader {
    padding: 24px 16px;
    line-height: 1; }

  .SiteHeaderLogo {
    flex: 0 0 70vw;
    max-width: 280px; }

  .home .SiteHeader {
    padding: 24px 16px; }

  .ScheduleTitle {
    display: flex;
    align-items: center;
    font-size: 24px;
    margin-bottom: 24px; }

  .ScheduleTitle b {
    padding: 0 24px; }

  .ScheduleTitle:after,
  .ScheduleTitle:before {
    content: "";
    height: 1px;
    background: rgba(233, 222, 255, 0.3);
    flex: 1 0 auto; }

  .TopVideo-Branding {
    height: 100vh; }
    .TopVideo-Branding video {
      object-fit: cover;
      height: 100%; }

  .TopLive {
    padding: 0 0 0;
    display: none;
    line-height: 0; }

  .TopLive-Now {
    text-align: right;
    padding: 0 8px 4px; }
    .TopLive-Now img {
      width: 150px; }

  .TopLive-V {
    height: calc(100vw * 0.555); }

  .TopTweet {
    position: relative;
    margin-top: 4px; }
    .TopTweet .TwToggle {
      height: 45vh; }
    .TopTweet .TwToggle-Btn {
      display: none; }
    .TopTweet .TwTL {
      width: 98vw;
      padding: 8px 0;
      margin: auto; }

  .onLive .TopLive {
    display: block; }
  .onLive .TopVideo {
    display: none; }
  .onLive h2.TopCopy {
    display: none; }

  .onTL .TwTL {
    display: block;
    width: 90vw; }
  .onTL .TopLive {
    width: calc(100%);
    margin-left: 0; }
  .onTL .TopLive-V {
    height: calc(100vw * 0.555); }

  .TopSubs {
    display: block;
    padding: 0 8px;
    top: 0;
    margin: 0; }

  .TopCounter {
    text-align: center;
    padding: 0 0 16px; }

  .NowProgram {
    padding: 0; }
    .NowProgram .Program.Now {
      display: block; }
    .NowProgram .Program {
      flex: 0 0 auto;
      display: none;
      padding-bottom: 8px;
      margin-bottom: 8px; }
      .NowProgram .Program a {
        text-decoration: none;
        display: block;
        padding: 8px; }
      .NowProgram .Program a:hover {
        background: rgba(255, 255, 255, 0.1);
        text-decoration: none;
        color: #fff; }
      .NowProgram .Program h3 p {
        display: block; }
      .NowProgram .Program div {
        padding: 0;
        flex: 0 1 auto; }
      .NowProgram .Program span {
        display: block;
        font-size: 10px;
        margin-bottom: 8px; }
      .NowProgram .Program h3 {
        font-size: 13px;
        font-weight: normal; }

  .ScheduleListArea {
    padding: 0 0 80px; }

  .ScheduleList {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 0 0 40px; }

  .ScheduleTeaser {
    padding: 0 0 24px;
    flex: 0 0 100%;
    font-size: 13px;
    display: flex; }
    .ScheduleTeaser a {
      text-decoration: none;
      display: block;
      padding: 16px; }
    .ScheduleTeaser a:hover {
      background: rgba(33, 33, 33, 0.5);
      color: #fff; }
    .ScheduleTeaser .ScheduleTeaser__header {
      display: flex; }
    .ScheduleTeaser span {
      flex: 0 0 auto;
      display: flex;
      flex-direction: column;
      padding: 0 16px 0 0;
      margin: 0 16px 0 0;
      border-right: 1px solid #999;
      text-align: center; }
    .ScheduleTeaser span em {
      font-size: 12px;
      display: block;
      margin-bottom: 8px; }
    .ScheduleTeaser span b {
      font-size: 18px;
      display: inline-block;
      padding: 0 0 0 4px; }
    .ScheduleTeaser span i {
      display: block;
      background: #02de96;
      border-radius: 4px;
      padding: 1px 8px;
      color: #111;
      font-size: 10px;
      margin-bottom: 16px; }
    .ScheduleTeaser span strong {
      display: block;
      padding: 0;
      font-weight: normal;
      font-size: 12px; }
    .ScheduleTeaser h3 {
      flex: 0 1 auto; }

  .ScheduleList .ScheduleTeaser:nth-child(3n+2):last-child {
    margin-left: auto;
    margin-right: 33%; }

  .SiteContent {
    padding-bottom: 40px; }
    .SiteContent .ArticleDateTime {
      font-size: 6vw; }
    .SiteContent h1 {
      font-size: 24px;
      white-space: normal;
      margin-bottom: 16px; }
      .SiteContent h1 strong {
        font-size: 20px; }
      .SiteContent h1 em {
        font-size: 18px; }
      .SiteContent h1 strong em {
        font-weight: bold; }
    .SiteContent h2 {
      font-size: 20px;
      margin-bottom: 16px; }
      .SiteContent h2 strong {
        font-size: 24px; }
      .SiteContent h2 em {
        font-size: 16px; }
    .SiteContent h3 {
      white-space: normal;
      white-space: normal; }
    .SiteContent .ProgramInfo {
      width: 100%;
      margin-top: 80px;
      border-collapse: separate;
      border-bottom: 1px solid #555; }
      .SiteContent .ProgramInfo caption {
        width: 100%;
        text-align: left;
        font-family: 'Oswald';
        padding: 0 0 8px;
        border-bottom: 1px solid #555; }
      .SiteContent .ProgramInfo th {
        padding: 8px 16px 8px 0;
        font-size: 12px;
        text-align: left;
        vertical-align: top;
        border-right: 1px solid #222; }
      .SiteContent .ProgramInfo td {
        padding: 8px 16px;
        font-size: 12px;
        text-align: left; }

  .ArticleNavi {
    padding: 80px 16px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: stretch; }
    .ArticleNavi a {
      font-size: 12px;
      flex: 0 0 100%;
      display: block;
      text-decoration: none;
      padding: 16px;
      border-radius: 8px;
      margin-bottom: 8px;
      border: 1px solid #333; }
    .ArticleNavi .next-post {
      margin: auto; }

  .SiteFooter {
    font-size: 12px;
    padding: 40px 16px;
    background: rgba(0, 0, 0, 0.9);
    text-align: center; }
    .SiteFooter .SiteFooter__logo {
      padding-bottom: 16px; }
    .SiteFooter .SiteFooter__main {
      display: block;
      justify-content: space-between;
      flex-wrap: wrap;
      align-items: flex-end; }
    .SiteFooter .SiteFooter__copyright {
      flex: 0 0 100%;
      text-align: center;
      padding: 24px 0; } }
@media (max-width: 480px) {
  .PromoBanners {
    padding: 24px; }
    .PromoBanners .PromoBanners__inner {
      display: block; }
    .PromoBanners p {
      padding: 4px; } }
