@charset "UTF-8";
/*------------
個別汎用カラー設定
-------------*/
.w_limit_1030 {
  max-width: 1030px;
  background-color: #ffffff;
  margin: auto;
  padding: 25px 5%;
  font-size: 1.8rem; }

.w_limit_900 {
  max-width: 900px;
  margin-left: auto !important;
  margin-right: auto !important; }

.w_limit_800 {
  max-width: 800px;
  margin: auto; }

.w_limit_sp {
  width: 96%; }

.pdlr-15 {
  padding: 0 15px !important; }

.header .header_sp {
  display: none; }

.article-container {
  background-color: #ffffff;
  margin: 15px 0 50px; }
  .article-container .w_limit_900 {
    margin-bottom: 50px !important;
    padding: 30px 20px 50px; }

/*--------------------------------------*/
#rakuten {
  background: #fde3b3 !important;
  width: 100%;
  padding-bottom: 50px;
  line-height: 1.5 !important; }
  #rakuten h2 {
    background: #fcbc01 !important;
    box-shadow: 0px 0px 0px 5px #fcbc01 !important;
    padding: 10px 15px !important;
    margin: 50px auto 30px !important;
    width: 100%;
    font-size: 2.4rem !important;
    color: #7d001a;
    font-weight: 600;
    position: relative;
    padding-left: 30px !important;
    border-top-right-radius: 50px;
    border-bottom-right-radius: 50px;
    box-shadow: 5px 5px 0 #7d001a !important; }
    #rakuten h2::before {
      content: '';
      position: absolute;
      left: 10px;
      top: 0;
      bottom: 0;
      margin: auto;
      width: 10px;
      height: 10px;
      border-radius: 50px;
      background-color: #ffffff; }
  #rakuten h3 {
    margin-bottom: 25px !important;
    border-left: solid 10px #7d001a !important;
    padding: 10px !important;
    border-top: solid 1px #985d2c !important;
    border-bottom: solid 1px #985d2c !important;
    font-weight: 600; }
  #rakuten h4 {
    margin-bottom: 15px !important;
    padding: 5px 10px !important;
    border-left: solid 10px #63ae2a !important;
    font-weight: 600;
    font-size: 1.8rem !important; }

.about {
  text-align: center;
  font-size: 2.1rem;
  font-weight: 500; }

.twitter-box {
  border: solid 5px #1d9bf0 !important;
  padding: 30px 15px; }

ul.lineup {
  padding: 0 15px !important;
  margin: auto !important; }
  ul.lineup li {
    position: relative;
    padding-left: 1em !important;
    margin-bottom: 15px !important; }
    ul.lineup li::before {
      content: '';
      width: 5px;
      height: 5px;
      background-color: #3eac34;
      top: 1rem;
      left: 0;
      margin: auto;
      position: absolute; }

ul.cast {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 900px !important; }
  ul.cast::after {
    content: '';
    width: 48%; }
  ul.cast > li {
    max-width: 460px;
    width: 48%;
    margin-bottom: 25px !important; 
    text-align: center;}
    ul.cast > li p {
      text-align: center; }
    ul.cast > li figure {
      margin-bottom: 8px; }

.cast-noimage {
  position: relative;
  padding-left: 15px !important; }
  .cast-noimage p {
    text-align: left !important; }
  .cast-noimage::before {
    content: '';
    width: 5px;
    height: 5px;
    background-color: #3eac34;
    top: 1rem;
    left: 0;
    margin: auto;
    position: absolute; }

.cast_live figure {
  margin-bottom: 8px; }
.cast_live .kaisetsu-inner {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  text-align: center; }
  .cast_live .kaisetsu-inner > div {
    width: 30%; }
  .cast_live .kaisetsu-inner::after {
    content: '';
    width: 30%; }

table.broadcast-table {
  margin: auto; }
  table.broadcast-table th, table.broadcast-table td {
    padding: 10px 15px; }
  table.broadcast-table th {
    background-color: #fcbc01;
    width: 30%; }
  table.broadcast-table td {
    background-color: #eeeeee;
    width: 70%; }

@media screen and (max-width: 640px) {
  ul.cast li {
    width: 98%; }

  ul.cast.cast-noimage {
    justify-content: space-between; }
    ul.cast.cast-noimage::after {
      content: '';
      width: 48%; }
    ul.cast.cast-noimage li {
      width: 48%; }
      ul.cast.cast-noimage li:first-of-type {
        margin-right: 0 !important; }
      ul.cast.cast-noimage li:nth-of-type(3) {
        margin-top: 0 !important; }

  .cast_live .kaisetsu-inner > div {
    width: 48%; }
  .cast_live .kaisetsu-inner::after {
    display: none; } }
/*
ボタン
----------------*/
a.Btn {
  width: 100%;
  max-width: 440px;
  display: block;
  background-color: #ffffff;
  border: solid 2px #c4c4c4;
  color: #191616;
  font-size: 1.8rem;
  font-weight: 600;
  padding: 20px 10px;
  position: relative;
  text-decoration: none;
  line-height: 1.6;
  border-radius: 50px;
  filter: drop-shadow(5px 8px 0px #c8c8c8);
  margin: auto; }
  a.Btn::after {
    transition: 0.3s; }
  a.Btn::after {
    content: '';
    width: 12px;
    height: 12px;
    border-top: solid 2px #4ba8de;
    border-right: solid 2px #4ba8de;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto; }

a.Btn:hover {
  opacity: 1; }
  a.Btn:hover::after {
    transition: 0.3s;
    right: -14px; }

a.Btn.twitter-hashtags-btn {
  background-color: #1d9bf0;
  border: none;
  color: #ffffff; }
  a.Btn.twitter-hashtags-btn::after {
    border-top: solid 2px #ffffff;
    border-right: solid 2px #ffffff; }

a.Btn.twitter-hashtags-btn:hover::after {
  border-top: solid 2px #1d9bf0;
  border-right: solid 2px #1d9bf0; }

@media screen and (max-width: 900px) {
  a.Btn {
    text-align: center;
    margin: auto; } }
@media screen and (max-width: 640px) {
  #rakuten .header_pc {
    display: none; }
  #rakuten .header_sp {
    display: block; } }
@media screen and (max-width: 640px) {
  table.broadcast-table {
    width: 100%; }
    table.broadcast-table th, table.broadcast-table td {
      padding: 10px 15px;
      display: block; }
    table.broadcast-table th {
      margin-top: 15px;
      text-align: left;
      background-color: #fcbc01;
      width: 100%; }
    table.broadcast-table td {
      background-color: #eeeeee;
      width: 100%; } }
/*--------------------------------------*/
/*--------------------------------------------
 [99] 標準機能
---------------------------------------------*/
/*
 文字サイズ
---------------------------------------------*/
.fz-12 {
  font-size: 1.2rem !important; }

.fz-14 {
  font-size: 1.4rem !important; }

.fz-15 {
  font-size: 1.5rem !important; }

.fz-16 {
  font-size: 1.6rem !important; }

.fz-18 {
  font-size: 1.8rem !important; }

.fz-21 {
  font-size: 2.1rem !important; }

.fz-24 {
  font-size: 2.4rem !important; }

.fz-26 {
  font-size: 2.6rem !important; }

.fz-28 {
  font-size: 2.8rem !important; }

.fz-30 {
  font-size: 3rem !important; }

.fz-32 {
  font-size: 3.2rem !important; }

@media screen and (max-width: 600px) {
  .fz-18_sp {
    font-size: 1.8rem !important; }

  .fz-21_sp {
    font-size: 2.1rem !important; }

  .fz-24_sp {
    font-size: 2.4rem !important; }

  .fz-26_sp {
    font-size: 2.6rem !important; }

  .fz-28_sp {
    font-size: 2.8rem !important; } }
/*
 文字のウェイト
---------------------------------------------*/
.fw-400 {
  font-weight: 400; }

.fw-600 {
  font-weight: 600; }

.fw-700 {
  font-weight: 700; }

/*
 文字色
---------------------------------------------*/
.fc-normal {
  color: #191616; }

.fc-white {
  color: #ffffff; }

.fc-red {
  color: #c1272d; }

.fc-eagles-red {
  color: #7d001a; }

.fc-yellow {
  color: #FCCF00; }

.fc-mizuiro {
  color: #0FACE5; }

.fc-pink {
  color: #F0629F; }

.fc-orange {
  color: #f15a24; }

.fc-twitter {
  color: #1d9bf0; }

/*マーカー
---------------------------------------------*/
.marker_yellow {
  background: linear-gradient(transparent 60%, #fed800 60%); }

/*
 余白
---------------------------------------------*/
/*上*/
.mgt-0 {
  margin-top: 0px !important; }

.mgt-10 {
  margin-top: 10px !important; }

.mgt-15 {
  margin-top: 15px !important; }

.mgt-20 {
  margin-top: 20px !important; }

.mgt-25 {
  margin-top: 25px !important; }

.mgt-30 {
  margin-top: 30px !important; }

.mgt-40 {
  margin-top: 40px !important; }

.mgt-50 {
  margin-top: 50px !important; }

.mgt-60 {
  margin-top: 60px !important; }

.mgt-70 {
  margin-top: 70px !important; }

/*下*/
.mgb-0 {
  margin-bottom: 0px !important; }

.mgb-10 {
  margin-bottom: 10px !important; }

.mgb-15 {
  margin-bottom: 15px !important; }

.mgb-20 {
  margin-bottom: 20px !important; }

.mgb-25 {
  margin-bottom: 25px !important; }

.mgb-30 {
  margin-bottom: 30px !important; }

.mgb-40 {
  margin-bottom: 40px !important; }

.mgb-50 {
  margin-bottom: 50px !important; }

/*左右*/
.mgl-1em {
  margin-left: 1em !important; }

.mgl-05em {
  margin-left: 0.5em !important; }

.mgr-1em {
  margin-right: 1em !important; }

.mgr-05em {
  margin-right: 0.5em !important; }

@media screen and (max-width: 600px) {
  .mgt-15_sp {
    margin-top: 15px; }

  .mgb-15_sp {
    margin-bottom: 15px; } }
/*その他書式設定
---------------------------------------------*/
.mglr-auto {
  margin-left: auto;
  margin-right: auto; }

.ta-center {
  text-align: center; }

.ta-right {
  text-align: right; }

.ta-left {
  text-align: left; }

.lh-12 {
  line-height: 1.2 !important; }

.lh-15 {
  line-height: 1.5 !important; }

.indent-kome {
  padding-left: 1em !important;
  text-indent: -1em !important; }

@media screen and (max-width: 600px) {
  .ta-center_sp {
    text-align: center; }

  .ta-right_sp {
    text-align: right; }

  .ta-left_sp {
    text-align: left; } }
/*改行
---------------------------------------------*/
.br_480, .br_640, .br_767, .br_768, .br_1200 {
  display: none; }

@media screen and (max-width: 1200px) {
  .br_1200 {
    display: inline; } }
@media screen and (max-width: 768px) {
  .br_768 {
    display: inline; } }
@media screen and (max-width: 767px) {
  .br_767 {
    display: inline; } }
@media screen and (max-width: 640px) {
  .br_640 {
    display: inline !important; } }
@media screen and (max-width: 480px) {
  .br_480 {
    display: inline; } }
/*線
---------------------------------------------*/
.bdt-hasen {
  border-top: dashed 1px #cccccc; }

/*背景
---------------------------------------------*/
.bg-white {
  background: #ffffff; }

.bg-gray {
  background: #eaeaea; }

.bg-stripe {
  background-size: auto auto;
  background-color: white;
  background-image: repeating-linear-gradient(90deg, white, white 10px, #faf7c6 10px, #faf7c6 20px); }

.bg-shasen {
  background-size: auto auto;
  background-color: white;
  background-image: repeating-linear-gradient(-45deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0) 5px, whitesmoke 5px, whitesmoke 10px); }

.bg-shasen-bold {
  background-size: auto auto;
  background-color: #ffffff;
  background-image: repeating-linear-gradient(-45deg, transparent, transparent 15px, #F5F2E6 15px, #F5F2E6 30px); }

.bg-hougan {
  background: linear-gradient(0deg, rgba(255, 255, 255, 0) 14px, #e7e7e7 16px), linear-gradient(90deg, rgba(255, 255, 255, 0) 14px, #e7e7e7 16px);
  background-size: 16px 16px; }

.bg-dot-naname {
  background-color: #ffffff;
  background-image: radial-gradient(#ffd4d4 12%, rgba(255, 255, 255, 0) 32%), radial-gradient(#ffd4d4 12%, rgba(255, 255, 255, 0) 32%);
  background-position: 0 0, 5px 5px;
  background-size: 10px 10px; }

.bg-dot-hougan {
  background-color: #ffffff;
  background-image: radial-gradient(#e3e3e3 2px, rgba(255, 255, 255, 0) 2px);
  background-size: 15px 15px; }

.bg-gradation {
  background: #6ca861;
  background: linear-gradient(45deg, #6ca861 0%, #379e8e 100%); }
