@charset "UTF-8";
/*
#overview
変数定義

CSS
*/
/*
#colors

@primary #0056A7;

@channel_prime #0056A7;
@channel_live #BD0852;
@channel_cinema #009966;

@secondary #333;
@color-name color-code;
*/
/*
#overview
Mixin

- コメントコメントコメントコメントコメントコメント
*/
/* ======== */
/* ここから */
/* ======== */
.media-queries {
  font-family: "xxld";
}

@media screen and (max-width: 1366px) {
  .media-queries {
    font-family: "xld";
  }
}
@media screen and (max-width: 1152px) {
  .media-queries {
    font-family: "ld";
  }
}
@media screen and (max-width: 800px) {
  .media-queries {
    font-family: "md";
  }
}
@media screen and (max-width: 592px) {
  .media-queries {
    font-family: "sd";
  }
}
@media screen and (max-width: 384px) and (orientation: portrait) {
  .media-queries {
    font-family: "xsd";
  }
}
@media screen and (max-width: 320px) and (orientation: portrait) {
  .media-queries {
    font-family: "xxsd";
  }
}
/* utility class */
.utl-nowrap {
  display: inline-block;
}

.utl-img-fluid {
  max-width: 100%;
  height: auto;
}
.utl-img-fluid.-fill {
  width: 100%;
}

main {
  /* アイコン調整 */
}
main [class*=icn-] {
  position: relative;
  top: -1px;
  line-height: 1.5;
  font-size: 16px;
}
main .lbl-tv,
main .lbl-tv-red {
  position: relative;
  top: -3px;
  line-height: 16px;
  font-size: 0.62rem;
}

[data-utl-hover] {
  position: relative;
  display: inline-block;
}
[data-utl-hover]::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.15);
  opacity: 0;
  -webkit-transition: opacity 0.1s linear;
  transition: opacity 0.1s linear;
}
[data-utl-hover][data-utl-hover="fff.1"]::before {
  background-color: rgba(255, 255, 255, 0.1);
}
[data-utl-hover][data-utl-hover="fff.2"]::before {
  background-color: rgba(255, 255, 255, 0.2);
}
[data-utl-hover][data-utl-hover="000.1"]::before {
  background-color: rgba(0, 0, 0, 0.1);
}
[data-utl-hover][data-utl-hover="000"]::before, [data-utl-hover][data-utl-hover="000.15"]::before {
  background-color: rgba(0, 0, 0, 0.15);
}
[data-utl-hover][data-utl-hover="000.2"]::before {
  background-color: rgba(0, 0, 0, 0.2);
}
[data-utl-hover]:hover::before {
  opacity: 1;
}

/* content */
main {
  background: #fff;
  color: #000;
  position: relative;
  /* 共通モジュールカスタマイズ */
}
main a:link, main a:visited {
  color: inherit;
}
main p {
  line-height: inherit;
}
main ol,
main ul {
  list-style: none;
}
main .lbl-tv.-stamp {
  padding: 1px 5px;
  color: #666;
  border-color: #666;
  background-color: transparent;
}
@media screen and (max-width: 592px) {
  main .lbl-tv.-stamp {
    color: #666;
    border-color: #666;
  }
}
main .mdl__share {
  background-color: #292929;
  right: 10%;
  left: auto;
}
@media screen and (max-width: 592px) {
  main .mdl__share {
    right: auto;
    left: 0;
  }
}
.contents {
  padding: 6rem 0 0;
}

main {
  position: relative;
}
main h2 {
  margin: 1rem 0;
  font-size: 20px;
  text-align: center;
}
main .col {
  position: relative;
}

.main__share {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  position: relative;
  width: 100%;
  max-height: 100%;
  white-space: nowrap;
  text-align: center;
}
.main__share::before {
  content: "";
  display: inline-block;
  width: 0;
  height: 100%;
  vertical-align: middle;
}
.main__share .btn__share {
  display: inline-block;
  background-color: #550488;
  border: medium none;
  border-radius: 100px;
  color: #fff;
  width: 170px;
  -webkit-animation-name: none !important;
          animation-name: none !important;
  -webkit-transition: background-color 0.1s;
  transition: background-color 0.1s;
  font-family: "Noto Sans Japanese", "YuGothicM-Universal", "YuGothic", -apple-system, "メイリオ", "MS PGothic", sans-serif;
}
.main__share .btn__share:focus,
.main__share .btn__share:hover {
  background-color: #7736a0;
}
.main__share .btn__share::before {
  color: #fff;
}
@media screen and (max-width: 1366px) {
  .main__share .btn__share {
    width: 150px;
  }
}
@media screen and (max-width: 1152px) {
  .main__share .btn__share {
    margin: 0 auto;
    position: relative;
  }
}
@media screen and (max-width: 800px) and (orientation: landscape) {
  .main__share .btn__share {
    right: 4%;
    top: 6%;
    width: 40%;
  }
}
.main__share .btn__share {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
@media screen and (max-width: 800px) {
  .main__share {
    margin-top: -1rem;
    margin-bottom: 3rem;
  }
}

.main__share {
  height: 0;
  text-align: right;
  width: 100%;
}

.main__share .btn__share {
  margin-top: 1rem;
}

.main__share a {
  text-decoration: none;
}

main .btn__share {
  -webkit-animation-name: none;
          animation-name: none;
  background-color: #e0dada;
  border: 1px solid #000;
  border-radius: 100px;
  color: #000;
  display: inline-block;
  -webkit-transition: background-color 0.1s ease 0s;
  transition: background-color 0.1s ease 0s;
  width: 170px;
  z-index: 99;
}

main .btn__share:link, main .btn__share:visited {
  color: #000;
}

main .btn__share:focus, main .btn__share:focus:not([disabled]), main .btn__share:hover, main .btn__share:hover:not([disabled]) {
  background-color: #e0dada;
  border-color: #ea6094;
  color: #ea6094;
  -webkit-animation: none;
          animation: none;
}

.btn__default:hover:not([disabled])::before, .btn__default-chamfer:hover:not([disabled])::before, .btn__default:focus:not([disabled])::before, .btn__default-chamfer:focus:not([disabled])::before, .btn__default-large:hover:not([disabled])::before, .btn__default-large:focus:not([disabled])::before, .btn__default_round:hover:not([disabled])::before, .btn__default_round:focus:not([disabled])::before, .btn__category-select:hover:not([disabled])::before, .btn__category-select:focus:not([disabled])::before, .btn__default_arrow-down:hover:not([disabled])::before, .btn__default_arrow-right:hover:not([disabled])::before, .btn__default_arrow-down:focus:not([disabled])::before, .btn__default_arrow-right:focus:not([disabled])::before, .btn__drama:hover:not([disabled])::before, .btn__drama:focus:not([disabled])::before, .btn__share:hover:not([disabled])::before, .btn__share:focus:not([disabled])::before, label.btn__close:hover:not([disabled])::before, label.btn__close:focus:not([disabled])::before {
  color: #ea6094;
}

.mv__share {
  position: absolute;
  top: 0;
  right: 0;
  display: inline-block;
  position: relative;
  margin: 5px 30px;
  text-align: center;
}
@media screen and (max-width: 592px) {
  .mv__share {
    top: 0;
    width: 100%;
    margin: 20px auto 0;
  }
}

.btn__share::before {
  color: #000;
}

.icon-quiz {
  position: relative;
  right: 0;
  top: 0;
  z-index: 1;
  display: inline-block;
  text-align: left;
  line-height: 1.2;
  padding: 0 0.5rem;
}
.icon-quiz i {
  display: inline-block;
  background: #1d7dff;
  color: #fff;
  padding: 0.1rem;
  border-radius: 5px;
  font-style: normal;
  font-size: 0.8em;
}
@media screen and (max-width: 800px) {
  .icon-quiz {
    text-align: left;
  }
}

.l-anchor {
  clear: both;
  position: relative;
  top: 70px;
  display: block;
  height: 0;
  width: 100%;
}

.bg_1 {
  margin: 0;
  padding: 0;
  overflow: hidden;
  background: #e0dada;
}

.bg_2 {
  margin: 0;
  padding: 0;
  overflow: hidden;
  background: #f1ecec;
}

.oyasumi__share .btn__share {
  width: 180px;
}
.r_o_wContainer {
  margin: 0 -18px;
}
@media screen and (max-width: 1366px) {
  .r_o_wContainer {
    margin: 0 auto;
  }
}

@media screen and (max-width: 1366px) {
  .r_o_wContainer2 {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}

.has-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  padding: 0.5rem 0;
}
.has-icon :nth-child(1) {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.has-icon :nth-child(2) {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  word-break: break-all;
}

.hidden {
  display: none;
}

#intro {
  display: none;
  left: 0;
  position: fixed;
  text-align: center;
  top: 0;
  width: 100%;
  z-index: 1;
}

#intro img {
  opacity: 0;
  -webkit-transition: all 0.5s ease-in-out 0s;
  transition: all 0.5s ease-in-out 0s;
  width: 50%;
}

#intro img.anime {
  opacity: 1;
}

.main__header .__title {
  padding-top: 6.5rem;
  padding-bottom: 5rem;
  text-align: center;
}
@media screen and (max-width: 592px) {
  .main__header .__title {
    padding-top: 2.9rem;
    padding-bottom: 3.125rem;
  }
}
.main__header .__title h1 {
  width: 110%;
  margin: 0 -5%;
}
.main__header .__title h1 img {
  /*width: 100%;*/
  /*max-width: 1392.5px;*/
}
@media screen and (max-width: 592px) {
  .main__header .__title h1 {
    width: 100%;
    margin: 0 auto;
  }
}

.utl-guard {
  position: relative;
}

.utl-guard::before {
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  width: 100%;
  z-index: 2;
}

.main__title {
  width: 100%;
  text-align: right;
}
.main__title img {
  max-width: 100%;
}
@media screen and (max-width: 592px) {
  .main__title {
    text-align: center;
  }
}

.main__title {
  width: 100%;
  text-align: right;
}
.main__title img {
  max-width: 100%;
}
@media screen and (max-width: 592px) {
  .main__title {
    text-align: center;
  }
}

.main__kanyu2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 5rem;
  background: #320052;
  color: #fff;
  text-align: right;
}
@media screen and (max-width: 592px) {
  .main__kanyu2 {
    height: 9.375rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.kanyu2__desc {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  height: 100%;
  vertical-align: middle;
  font-size: 1.5rem;
  white-space: nowrap;
  text-align: center;
}
.kanyu2__desc::before {
  content: "";
  display: inline-block;
  width: 0;
  height: 100%;
}
@media screen and (max-width: 1152px) {
  .kanyu2__desc {
    padding-top: 8px;
    font-size: 1.25rem;
  }
}
@media screen and (max-width: 592px) {
  .kanyu2__desc {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    padding: 1rem 1rem;
    height: auto;
  }
}

.btn-kanyu2 {
  -webkit-box-flex: 1.25;
      -ms-flex: 1.25 1 auto;
          flex: 1.25 1 auto;
  position: relative;
  z-index: 1;
  height: 100%;
  -webkit-transform: skewX(31deg);
  -ms-transform: skewX(31deg);
      transform: skewX(31deg);
  margin: 0 1.5rem;
  vertical-align: middle;
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
          box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
  background: #6d00b2;
  color: #ffea3b;
  font-size: 1.5rem;
  text-align: center;
  white-space: nowrap;
}
.btn-kanyu2:link, .btn-kanyu2:visited {
  color: #ffea3b;
}
.btn-kanyu2:hover {
  background: #994dc9;
  color: #fff;
}
.btn-kanyu2:hover:link, .btn-kanyu2:hover:visited {
  color: #fff;
}
.btn-kanyu2::before {
  content: "";
  display: inline-block;
  width: 0;
  height: 100%;
}
.btn-kanyu2 .btn__inner {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: skewX(-31deg);
  -ms-transform: skewX(-31deg);
      transform: skewX(-31deg);
}
.btn-kanyu2 [class*=icn-] {
  position: relative;
  top: 0.125rem;
  font-size: 1.1em;
}
@media screen and (max-width: 1152px) {
  .btn-kanyu2 {
    font-size: 1.375rem;
  }
}
@media screen and (max-width: 800px) {
  .btn-kanyu2 {
    padding: 0 1rem;
  }
}
@media screen and (max-width: 592px) {
  .btn-kanyu2 {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    margin: 0;
    padding: 1rem 0;
    -webkit-transform: none;
    -ms-transform: none;
        transform: none;
    height: 5rem;
    border: 2px solid transparent;
    position: relative;
  }
  .btn-kanyu2::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    width: 100%;
    height: 100%;
    border: 1px solid #000;
  }
  .btn-kanyu2 .btn__inner {
    -webkit-transform: none;
    -ms-transform: none;
        transform: none;
    padding-top: 5px;
  }
}

.main__desc {
  margin: 5rem auto;
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  width: 100%;
  line-height: 1.75;
  font-size: 1.25rem;
  text-align: center;
}
.main__desc .-large {
  line-height: 1.75;
  font-size: 1.5rem;
  font-weight: normal;
}
.main__desc p {
  margin-bottom: 2rem;
}
.main__desc b {
  color: #d593ff;
}
.main__desc img {
  max-width: 100%;
}
@media screen and (max-width: 592px) {
  .main__desc {
    text-align: center;
  }
}

.main__lineup .__more {
  margin: 3rem 0;
  line-height: 1.0714285714;
  color: #6d00b2;
  font-size: 1.75rem;
  text-align: center;
}

.main__lineup-2 .lineup__item {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
@media screen and (max-width: 800px) {
  .main__lineup-2 .lineup__item {
    display: block;
  }
}
.main__lineup-2 .lineup__item .__oa {
  display: block;
  font-size: 1.5rem;
}
.main__lineup-2 .lineup__item .__title {
  display: block;
  font-size: 1.375rem;
}

.lineup__list [class*=row] > [class*=col] {
  margin-bottom: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.lineup__list [class*=row] > [class*=col] > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

.lineup__item {
  width: 100%;
  background: #292929;
  color: #fff;
}
.lineup__item .__img {
  overflow: hidden;
}
.lineup__item .__img img {
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.lineup__item .__txt {
  padding: 1.5rem 1rem 1.5rem 2rem;
}
@media screen and (max-width: 800px) {
  .lineup__item .__txt {
    padding: 1rem;
  }
}
.lineup__item .__oa {
  line-height: 1.5;
  margin-bottom: 1.5rem;
  font-size: 1.25rem;
}
.lineup__item .__title {
  line-height: 1.6666666667;
  font-size: 1.125rem;
  font-weight: normal;
}
.lineup__item .__title em {
  color: #e10000;
  font-style: normal;
  font-weight: bold;
}

a:hover .lineup__item .__img img {
  opacity: 0.9;
  -webkit-transform: scale(1.05);
      -ms-transform: scale(1.05);
          transform: scale(1.05);
}

.news__outline {
  position: relative;
  top: 2rem;
  width: 100%;
  text-align: right;
}
@media screen and (max-width: 592px) {
  .news__outline {
    margin: 0 auto 1.9rem;
  }
}

.main__news {
  padding: 0;
  border: 4px solid #000;
  border-radius: 20px;
  width: 50%;
  position: absolute;
  right: 230px;
  top: 0;
  text-align: left;
  background: #fff;
}
.main__news > .container {
  height: 100%;
}
.main__news > .container > [class*=row] {
  height: 100%;
}
@media screen and (max-width: 592px) {
  .main__news {
    width: 90%;
    margin: 0 auto;
    position: relative;
    right: 0;
  }
}
.main__news .__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  height: 100%;
}
@media screen and (max-width: 592px) {
  .main__news .__inner {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.main__news .__ttl {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  position: relative;
  display: block;
  width: 4.5625rem;
  height: 1.875rem;
  color: #000;
  text-align: center;
}
.main__news .__ttl::before {
  content: "";
  display: inline-block;
  width: 0;
  height: 100%;
  vertical-align: middle;
}
@media screen and (max-width: 1152px) {
  .main__news .__ttl {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
  }
}
@media screen and (max-width: 592px) {
  .main__news .__ttl {
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
  }
}
.main__news .__ttl img {
  max-width: 56px;
}
@media screen and (max-width: 800px) {
  .main__news .__ttl img {
    max-width: 45px;
  }
}
.main__news .__ctrl {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 2rem;
          flex: 0 1 2rem;
  display: block;
  width: 2rem;
  height: 1.875rem;
  text-align: center;
}
.main__news .__ctrl a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 5;
}
.main__news .__ctrl a::before {
  content: "";
  display: inline-block;
  width: 0;
  height: 100%;
  vertical-align: middle;
}
.main__news .__ctrl a img {
  max-width: 9px;
}
@media screen and (max-width: 592px) {
  .main__news .__ctrl a {
    width: 70%;
  }
}
.main__news .__ctrl [class*=icn-] {
  display: inline-block;
  vertical-align: middle;
  font-size: 1.5em;
}
@media screen and (max-width: 592px) {
  .main__news .__ctrl {
    text-align: center;
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
  }
}
.main__news .__body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 78%;
          flex: 1 1 78%;
  height: 1.875rem;
  overflow: hidden;
}
.main__news .__body ul {
  position: relative;
  width: 100%;
  height: 100%;
  font-size: 0;
}
.main__news .__body li {
  position: relative;
  left: 0;
  display: list-item;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 100%;
  white-space: nowrap;
  opacity: 0;
  -webkit-transition: opacity 0.3s linear;
  transition: opacity 0.3s linear;
}
.main__news .__body li.active {
  opacity: 1;
}
.main__news .__body li > span {
  position: relative;
  left: 0;
  display: inline-block;
  display: inline;
  vertical-align: middle;
  padding-left: 1rem;
  white-space: nowrap;
  font-size: 1rem;
}
.main__news .__body li::before {
  content: "";
  display: inline-block;
  width: 0;
  height: 100%;
  vertical-align: middle;
}
.main__news .__body li .__date {
  margin-right: 1rem;
  font-size: inherit;
}
.main__news .__body li a {
  position: relative;
  z-index: 99;
}
@media screen and (max-width: 592px) {
  .main__news .__body {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 1%;
            flex: 1 1 1%;
  }
}

.__hd img {
  max-width: 50%;
}
@media screen and (max-width: 592px) {
  .__hd img {
    max-width: 22%;
  }
}

.main__link {
  margin-bottom: 4.375rem;
  text-align: center;
}
.main__link .col {
  text-align: center;
}
.main__link [class*=col] {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  text-align: center;
}

.bnrList li {
  margin-bottom: 1rem;
}

.__hd {
  margin-bottom: 2.875rem;
}

.main__movie {
  padding-top: 3.625rem;
  padding-bottom: 1rem;
}
@media screen and (max-width: 592px) {
  .main__movie {
    padding-top: 1.875rem;
  }
}

.movie__hd img {
  max-width: 131px;
}
@media screen and (max-width: 592px) {
  .movie__hd img {
    max-width: 71px;
  }
}

.movie__list {
  margin-bottom: 3rem;
}
.movie__list [class*=row] > [class*=col] {
  margin-bottom: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.movie__list [class*=row] > [class*=col] > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}
.movie__list li {
  position: relative;
}
.movie__list li.-is_new::before {
  content: "";
  position: absolute;
  left: 0;
  top: -1rem;
  z-index: 4;
  display: block;
  width: 4.625rem;
  height: 4.625rem;
  background: url("../img/icon_new@2x.png") left top no-repeat;
  background-size: 85% auto;
}
@media screen and (max-width: 800px) {
  .movie__list li.-is_new::before {
    background-size: 55% auto;
  }
}
@media screen and (max-width: 592px) {
  .movie__list li.-is_new::before {
    left: 0.3rem;
    top: -0.7rem;
  }
}

.movie__item {
  width: 100%;
  height: 100%;
  position: relative;
  color: #000;
}
.movie__item .__img {
  position: relative;
  background: #fff;
}
.movie__item .__img::before {
  border: 2px solid #000;
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: 2;
  display: block;
  width: 100%;
  height: 100%;
  background: url("../img/symbol_play@2x.png") center center no-repeat;
  background-size: 15% auto;
}
.movie__item .__img img {
  background: #fff;
  opacity: 1;
  -webkit-transition: opacity 0.1s linear;
  transition: opacity 0.1s linear;
}
.movie__item .__img .__thumb {
  background: #fff;
  position: relative;
}
.movie__item .__img-cs::before {
  background: none;
}
a:hover .movie__item .__img::before {
  background: url("../img/symbol_play@2x.png"), url("/bnr_stock/common/img/rgba_fff_50.png") repeat scroll 0 0;
  background-repeat: no-repeat, repeat;
  background-position: center center, left top;
  background-size: 15% auto, 100% auto;
  border: 4px solid #ea6094;
}
a:hover .movie__item .__txt {
  color: #ea6094;
}
.movie__item .__oa {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  min-height: 30%;
  font-size: 1.125rem;
  line-height: 0;
  text-align: center;
}
@media screen and (max-width: 1152px) {
  .movie__item .__oa {
    font-size: 1rem;
  }
}
@media screen and (max-width: 800px) {
  .movie__item .__oa {
    font-size: 1rem;
  }
}
@media screen and (max-width: 592px) {
  .movie__item .__oa {
    font-size: 0.9rem;
  }
}
.movie__item .__txt {
  line-height: 1.5;
  text-align: center;
  padding: 0.7rem 1rem 1.3rem 2rem;
}
@media screen and (max-width: 592px) {
  .movie__item .__txt {
    padding: 0.3rem 0 1rem;
    text-align: left;
  }
}
.movie__item .__title {
  line-height: 1.5;
  font-size: 1.125rem;
  font-weight: normal;
}

.next__movie {
  text-align: right;
  padding-bottom: 2.875rem;
  margin-top: -4rem;
  font-size: 1.25rem;
}
@media screen and (max-width: 592px) {
  .next__movie {
    padding-bottom: 1.4375rem;
    font-size: 95%;
    margin-top: -4.4rem;
  }
}

.js-toggleContent {
  display: none;
}

[data-toggle-pc-enable=true] .js_toggleContent {
  display: none;
}

.toggleBtn {
  cursor: pointer;
}

.closed .js_toggleBtn.btnClose {
  display: none;
}

.js-toggleBtn {
  max-width: 404px;
  margin: 0 auto;
}
@media screen and (max-width: 592px) {
  .js-toggleBtn {
    max-width: 202px;
  }
}
.js-toggleBtn img {
  max-width: 50%;
}
.js-toggleBtn .btnClose {
  display: none;
}

.btnOpen {
  background: url("../img/btn_more__@2x.png") center 0 no-repeat;
  text-indent: -9999px;
  background-size: contain;
  white-space: nowrap;
  overflow: hidden;
  height: 85px;
}
@media screen and (max-width: 592px) {
  .btnOpen {
    height: 43px;
  }
}

.btnOpen:hover {
  background: url("../img/btn_more_over@2x.png") center 0 no-repeat;
  background-size: contain;
}

.js-toggle.is-open .btnOpen {
  display: none;
}
.js-toggle.is-open .btnClose {
  display: block;
  background: url("../img/btn_close@2x.png") center 0 no-repeat;
  text-indent: -9999px;
  background-size: contain;
  white-space: nowrap;
  overflow: hidden;
  height: 85px;
}
@media screen and (max-width: 592px) {
  .js-toggle.is-open .btnClose {
    height: 43px;
  }
}
.js-toggle.is-open .btnClose:hover {
  background: url("../img/btn_close_over@2x.png") center 0 no-repeat;
  background-size: contain;
}

.js_hidden {
  display: none !important;
}

.hidden {
  display: none !important;
}

a .is-over {
  display: none;
}

a:hover .is-over {
  display: inline-block;
}
a:hover .is-normal {
  display: none;
}

.main__broadcast {
  position: relative;
  margin: 0 auto;
  padding: 0 0.5rem 3.625rem;
  width: 100%;
}
.main__broadcast .broadcast__inner {
  max-width: 50rem;
  margin: 0 auto;
}
.main__broadcast .broadcast__bnrlist {
  padding: 1.5rem 2.9375rem;
  border: 2px solid #e86296;
  border-radius: 6rem;
}
@media screen and (max-width: 592px) {
  .main__broadcast .broadcast__bnrlist {
    padding: 0.625rem 2.1875rem;
  }
}
.main__broadcast .broadcast__bnrlist .broadcast__txt {
  padding: 0 2.4375rem 1.5rem;
}
@media screen and (max-width: 592px) {
  .main__broadcast .broadcast__bnrlist .broadcast__txt {
    padding: 0 0.625rem 0.5625rem;
  }
}
.main__broadcast .broadcast__bnrlist ul li a:hover {
  opacity: 0.5;
}

.main__comic {
  padding-top: 4.625rem;
  padding-bottom: 5rem;
}
@media screen and (max-width: 592px) {
  .main__comic {
    padding-top: 2.1875rem;
    padding-bottom: 2.1875rem;
  }
}
.main__comic .lineup__list {
  width: 100%;
}
.main__comic .lineup__list > [class*=row] {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.main__comic .lineup__list > [class*=row] > [class*=col] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 592px) {
  .main__comic .comic__hd {
    margin-bottom: 2.8rem;
  }
}
.main__comic .comic__hd img {
  max-width: 131px;
}
@media screen and (max-width: 592px) {
  .main__comic .comic__hd img {
    max-width: 71px;
  }
}
.main__comic .comic__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap;
  width: 100%;
  padding-bottom: 3.125rem;
}
.main__comic .comic__item .__txt {
  -webkit-box-flex: 100;
      -ms-flex: 100 1 auto;
          flex: 100 1 auto;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: stretch;
      -ms-flex-pack: stretch;
          justify-content: stretch;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.main__comic .comic__item .__title {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: 3rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  line-height: 1.2;
  font-size: 1.125rem;
  padding-bottom: 0.3125rem;
}
@media screen and (max-width: 592px) {
  .main__comic .comic__item .__title {
    min-height: 2.5rem;
    padding: 0;
    padding-bottom: 0.2rem;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    text-align: left;
    line-height: 1.2;
    font-size: 0.95rem;
  }
}
.main__comic .comic__item .-is_new .__title {
  padding-left: 3.8rem;
  padding-right: 3.8rem;
}
@media screen and (max-width: 800px) {
  .main__comic .comic__item .-is_new .__title {
    padding-left: 2.6rem;
    padding-right: 2.6rem;
  }
}
@media screen and (max-width: 592px) {
  .main__comic .comic__item .-is_new .__title {
    padding-left: 0;
    padding-right: 0;
  }
}
.main__comic .comic__item .__img {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  max-width: 400px;
  min-height: 0%;
}

.main__column {
  padding-top: 5.875rem;
  padding-bottom: 5rem;
}
@media screen and (max-width: 592px) {
  .main__column {
    padding-top: 1.875rem;
    padding-bottom: 3.1875rem;
  }
}
.main__column .column__hd img {
  max-width: 167.5px;
}
@media screen and (max-width: 592px) {
  .main__column .column__hd img {
    max-width: 94px;
  }
}
.main__column .lineup__list {
  width: 100%;
}
.main__column .column__item {
  width: 100%;
  padding-bottom: 3.125rem;
  font-size: 1.125rem;
  line-height: 1.5;
}
.main__column .column__item .__txt {
  padding-top: 0.625rem;
}
@media screen and (max-width: 592px) {
  .main__column .column__item .__title {
    font-size: 0.95rem;
  }
  .main__column .column__item .__img {
    float: left;
    width: 48%;
  }
  .main__column .column__item .__txt {
    width: 50%;
    padding-top: 0;
    padding-left: 0.625rem;
    font-size: 0.8125rem;
    font-weight: bold;
    line-height: 1.5;
    float: right;
  }
}

.main__dl {
  padding-top: 5.875rem;
}
@media screen and (max-width: 592px) {
  .main__dl {
    padding-top: 2.125rem;
  }
}
@media screen and (max-width: 592px) {
  .main__dl .dl__hd {
    margin-bottom: 0.8rem;
  }
}
.main__dl .dl__hd img {
  max-width: 230px;
}
@media screen and (max-width: 592px) {
  .main__dl .dl__hd img {
    max-width: 128px;
  }
}
.main__dl .dl__item {
  width: 100%;
  padding-bottom: 4.125rem;
}
@media screen and (max-width: 592px) {
  .main__dl .dl__item {
    padding-bottom: 2.3125rem;
  }
}
.main__dl .dl__item .__ttl-dl {
  text-align: center;
  font-weight: bold;
  margin-top: 0.5rem;
}
.main__dl .dl__item .__img {
  border: 2px solid #000;
}
@media screen and (max-width: 800px) {
  .main__dl .dl__item .__img {
    border: 1px solid #000;
  }
}
.main__dl .dl__item .btn__inner {
  text-align: center;
  margin-top: 1.25rem;
  background: url("../img/btn_dl-bg@2x.png") top center no-repeat;
  background-size: contain;
  padding: 7% 13% 3%;
  color: #000;
  display: block;
}
.main__dl .dl__item .btn__inner:hover {
  background: url("../img/btn_dl-bg_over@2x.png") top center no-repeat;
  background-size: contain;
  color: #fff;
}
.main__dl .dl__item .btn__inner {
  font-weight: bold;
}
@media screen and (max-width: 800px) {
  .main__dl .dl__item .btn__inner small {
    display: block !important;
    line-height: 1;
  }
}
@media screen and (max-width: 800px) and (max-width: 592px) {
  .main__dl .dl__item .btn__inner {
    font-size: 0.9rem;
  }
  .main__dl .dl__item .btn__inner small {
    display: inline !important;
  }
}
.main__dl .js-toggle {
  margin-bottom: 3rem;
}

.main__insta {
  padding-top: 3.875rem;
  padding-bottom: 9rem;
}
@media screen and (max-width: 592px) {
  .main__insta {
    padding-top: 1.625rem;
    padding-bottom: 3.0625rem;
  }
}
@media screen and (max-width: 592px) {
  .main__insta .insta__hd {
    margin-bottom: 1.875rem;
  }
}
.main__insta .insta__hd img {
  max-width: 219px;
}
@media screen and (max-width: 592px) {
  .main__insta .insta__hd img {
    max-width: 158px;
  }
}
.main__insta .btn-follow {
  margin: 0 auto;
  text-align: center;
  padding-top: 4.5625rem;
}
@media screen and (max-width: 592px) {
  .main__insta .btn-follow {
    padding-top: 2.0625rem;
  }
}
.main__insta .btn-follow img {
  max-width: 518px;
}
@media screen and (max-width: 592px) {
  .main__insta .btn-follow img {
    max-width: 259px;
  }
}

.main__author {
  padding-top: 4.375rem;
  padding-bottom: 8.75rem;
}
@media screen and (max-width: 592px) {
  .main__author {
    padding-top: 1.875rem;
    padding-bottom: 2.8125rem;
  }
}
.main__author .author__hd {
  margin-bottom: 4.375rem;
}
@media screen and (max-width: 592px) {
  .main__author .author__hd {
    margin-bottom: 1.8125rem;
  }
}
.main__author .author__hd img {
  max-width: 462px;
}
@media screen and (max-width: 592px) {
  .main__author .author__hd img {
    max-width: 259px;
  }
}
.main__author .__author-about {
  max-width: 830px;
  margin: 0 auto;
}
@media screen and (max-width: 592px) {
  .main__author .__author-about {
    max-width: none;
  }
}
.main__author .__author-about .__center {
  text-align: center;
}
.main__author .__author-about .__left {
  display: inline-block;
  vertical-align: top;
  width: 20%;
}
@media screen and (max-width: 592px) {
  .main__author .__author-about .__left {
    width: 34%;
    padding: 0 1rem;
    margin-top: 1rem;
  }
}
.main__author .__author-about .__right {
  display: inline-block;
  width: 70%;
  padding-left: 3.125rem;
}
@media screen and (max-width: 592px) {
  .main__author .__author-about .__right {
    width: 60%;
    padding-left: 0;
  }
}
.main__author .__author-about .__name {
  margin-bottom: 1rem;
}
.main__author .__author-about .__name img {
  max-width: 140px;
}
@media screen and (max-width: 592px) {
  .main__author .__author-about .__name img {
    max-width: 101px;
  }
}
@media screen and (max-width: 592px) {
  .main__author .__author-about .__txt {
    margin-top: 1.375rem;
  }
}
.main__author .__author-about .__txt a {
  text-decoration: underline;
}
.main__author .__author-about .__txt a:hover {
  text-decoration: none;
}
.main__author .__author-about .icn {
  display: inline-block;
  padding-left: 0.2rem;
  top: 0;
}
@media screen and (max-width: 592px) {
  .main__author .__author-about .icn {
    top: 1px;
  }
}

.btn-cp {
  position: relative;
  display: inline-block;
  margin: 0 auto;
}
.btn-cp img {
  width: 100%;
  max-width: 100%;
}

.main__nav {
  margin-bottom: 4rem;
}
.main__nav li {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1rem;
  font-size: 1.125rem;
  font-weight: bold;
  font-family: "Noto Sans Japanese", "YuGothicM-Universal", "YuGothic", -apple-system, "メイリオ", "MS PGothic", sans-serif;
  text-align: center;
}
.main__nav li a {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  color: #6d00b2;
}
.main__nav li a:hover {
  color: #fff;
}
.main__nav li small {
  font-size: 1rem;
}
.main__nav li .-coming > div,
.main__nav li a > div {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  padding: 0.5rem 0 3rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-line-pack: center;
      align-content: center;
  vertical-align: middle;
  border: 1px solid #6d00b2;
  background: #fff;
  -webkit-transition: background-color 0.1s;
  transition: background-color 0.1s;
}
.main__nav li .-coming > div:hover,
.main__nav li a > div:hover {
  background: #6d00b2;
}
.main__nav li .-coming > div > div,
.main__nav li a > div > div {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  padding: 0.2rem;
}
.main__nav li .-coming > div [class*=icn-],
.main__nav li a > div [class*=icn-] {
  position: absolute;
  bottom: 6px;
  left: 50%;
  display: inline-block;
  margin-left: -0.7rem;
  font-size: 1.6rem;
  font-weight: bold;
}
.main__nav li .-coming {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}
.main__nav li .-coming > div {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
  padding: 0;
  border-color: #9a9a9a;
  color: #9a9a9a;
}
.main__nav li .-coming > div:hover {
  background: #fff;
}
@media screen and (max-width: 592px) {
  .main__nav {
    margin-bottom: 2rem;
  }
  .main__nav li {
    font-size: 0.9375rem;
  }
  .main__nav li small {
    font-size: 0.8125rem;
  }
  .main__nav li a > div {
    padding-bottom: 2rem;
  }
  .main__nav li .-coming > div [class*=icn-],
  .main__nav li a > div [class*=icn-] {
    position: absolute;
    bottom: 3px;
    left: 50%;
    display: inline-block;
    margin-left: -0.6rem;
    font-size: 1.2rem;
    font-weight: bold;
  }
}

.main__bnrArea {
  margin: -2rem auto 3rem;
}
.main__bnrArea li {
  margin: 0 0.5rem 1rem;
  text-align: center;
}
.main__bnrArea li img {
  max-width: 100%;
}

.main__hd {
  margin-bottom: 2rem;
  color: #6d00b2;
  font-size: 2.25rem;
  font-weight: 500;
  font-family: "Noto Sans Japanese", "YuGothicM-Universal", "YuGothic", -apple-system, "メイリオ", "MS PGothic", sans-serif;
}
.main__hd strong {
  font-size: 3.125rem;
  font-weight: 500;
  color: #292929;
}
.main__hd i {
  font-size: 3.75rem;
  font-style: normal;
  font-weight: 400;
  font-family: "Anton", sans-serif;
}
.main__hd.-smaller {
  font-size: 1.5rem;
}
.main__hd.-smaller strong {
  font-size: 1.875rem;
}
.main__hd.-smaller i {
  font-size: 2.5rem;
}
@media screen and (max-width: 592px) {
  .main__hd {
    font-size: 1.625rem;
  }
  .main__hd strong {
    font-size: 2.5rem;
  }
  .main__hd i {
    font-size: 3.125rem;
  }
  .main__hd.-smaller {
    font-size: 0.875rem;
  }
  .main__hd.-smaller strong {
    font-size: 1.25rem;
  }
  .main__hd.-smaller i {
    font-size: 1.875rem;
  }
}

.rankingContainer {
  margin: 0 auto 1rem;
}

.ranking__hd2 {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 51px;
  margin: 0 auto 0.3125rem;
  padding: 0.1875rem 0 0;
  color: #ffea5a;
  line-height: 1.5;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  background: url("../img/ranking_hd_bg.png") center 0 no-repeat;
  letter-spacing: 0.07em;
}
.ranking__hd2 i {
  font-family: "Anton", sans-serif;
  font-weight: normal;
  font-style: normal;
  letter-spacing: 0.2em;
  margin-left: 0.1em;
}

.ranking li {
  margin-bottom: 0.375rem;
}

.main__ranking {
  padding: 1rem 0 3rem;
}
.main__ranking .item {
  padding-top: 0.5rem;
}

.rank {
  margin-bottom: 1rem;
  color: #999;
  white-space: nowrap;
}
.-compact .rank {
  margin-top: 0;
  margin-bottom: 0;
}
.rank.-winner, .rank.-winner2 {
  color: #292929;
}
.rank.-winner {
  margin-bottom: 0;
}
.rank.-winner2 {
  margin-bottom: 1rem;
}

.rank__no {
  display: inline-block;
  margin-right: 0.3rem;
  font-size: 1.25rem;
  font-weight: bold;
  letter-spacing: 0.4rem;
}
x.-major .rank__no {
  margin-right: 0.7rem;
}
.rank__no i {
  font-size: 1.875rem;
  font-weight: normal;
  font-style: normal;
  font-family: "Anton", sans-serif;
}
.-winner .rank__no {
  background: url("../img/icon_crown.png") center 0 no-repeat;
  padding: 2rem 0 0;
}
.-winner .rank__no i {
  font-size: 2.5rem;
}
@media screen and (max-width: 592px) {
  .rank__no {
    margin-right: 0;
    font-size: 1.125rem;
    letter-spacing: 0.1rem;
  }
  x.-major .rank__no {
    margin-right: 0;
  }
  .rank__no i {
    font-size: 1.875rem;
  }
  .-winner .rank__no {
    background-size: 40px auto;
  }
  .-winner .rank__no i {
    font-size: 2.125rem;
  }
}

.rank__revenue {
  display: inline-block;
}
.rank__revenue em {
  font-size: 1.25rem;
  font-weight: bold;
  font-style: normal;
}
.rank__revenue em i {
  font-size: 2.5rem;
  font-weight: normal;
  font-style: normal;
  font-family: "Anton", sans-serif;
}
.-winner .rank__revenue em {
  font-size: 3.75rem;
}
.-winner .rank__revenue em i {
  font-size: 5rem;
}
.-winner2 .rank__revenue em {
  font-size: 1.875rem;
}
.-winner2 .rank__revenue em i {
  font-size: 3.125rem;
}
@media screen and (max-width: 800px) {
  .-winner .rank__revenue em {
    font-size: 2.1875rem;
  }
  .-winner .rank__revenue em i {
    font-size: 3.4375rem;
  }
}
@media screen and (max-width: 592px) {
  .rank__revenue em {
    font-size: 1rem;
  }
  .rank__revenue em i {
    font-size: 1.625rem;
  }
  .-winner .rank__revenue em {
    font-size: 1.125rem;
  }
  .-winner .rank__revenue em i {
    font-size: 1.75rem;
  }
  .-winner2 .rank__revenue em {
    font-size: 1.125rem;
  }
  .-winner2 .rank__revenue em i {
    font-size: 1.75rem;
  }
}

.rank__bumon {
  display: inline-block;
  font-size: 1.875rem;
  font-weight: bold;
  text-align: center;
  white-space: nowrap;
}
.rank__bumon i {
  font-size: 3.125rem;
  font-weight: normal;
  font-style: normal;
  font-family: "Anton", sans-serif;
}
@media screen and (max-width: 592px) {
  .rank__bumon {
    font-size: 1.25rem;
  }
  .rank__bumon i {
    font-size: 2.5rem;
  }
}
.-winner .rank__bumon {
  background: url("../img/icon_crown.png") 0 center no-repeat;
  margin-left: 0.5rem;
  padding: 0 0 0 5rem;
  font-size: 3.75rem;
  text-align: left;
}
.-winner .rank__bumon i {
  font-size: 5rem;
}
@media screen and (max-width: 592px) {
  .-winner .rank__bumon {
    margin-left: 5px;
    padding: 0 0 0 3.125rem;
    background-size: auto 45%;
    font-size: 1.875rem;
  }
  .-winner .rank__bumon i {
    font-size: 2.5rem;
  }
}

[class*=row-2] .item {
  max-width: 624px;
  margin-left: auto;
  margin-right: auto;
}

.item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 2rem;
  background: #fff;
  -webkit-transition: background-color 0.1s;
  transition: background-color 0.1s;
}
.item.-compact {
  padding: 0;
}
@media screen and (max-width: 592px) {
  .item {
    padding: 1rem 0.5rem;
  }
}

a:hover .item {
  background: #f6f6f6;
}

.item__img {
  display: block;
  margin-bottom: 1.3rem;
  text-align: center;
}
.item__img .__thumb {
  display: inline-block;
  max-width: 100%;
}
.item__img .__thumb img {
  max-width: 100%;
  height: auto;
}

.item__title {
  margin-bottom: 0.5rem;
  line-height: 1.25;
  font-size: 1.5rem;
  font-weight: bold;
  word-break: break-all;
}
.ranking .-major .item__title {
  min-height: 3.8rem;
}
@media screen and (max-width: 592px) {
  .item__title {
    font-size: 1.25rem;
  }
}

.item__oa {
  font-size: 1.125rem;
}

.item__info {
  margin-top: 0.5rem;
  font-size: 1.125rem;
}
.item__info strong {
  color: #292929;
  font-weight: bold;
}

.item__desc {
  font-size: 1.125rem;
}
.item__desc strong {
  color: #292929;
  font-weight: bold;
}

.firstrun {
  margin-top: -1rem;
  margin-bottom: 1rem;
  color: #292929;
  font-size: 1.5rem;
}
.firstrun i {
  font-size: 2.5rem;
  font-weight: normal;
  font-style: normal;
  font-family: "Anton", sans-serif;
}
@media screen and (max-width: 592px) {
  .firstrun {
    font-size: 1.25rem;
  }
  .firstrun i {
    font-size: 2.25rem;
  }
}

.ranking__note {
  font-size: 0.875rem;
}
.ranking__note p {
  padding-left: 1em;
  text-indent: -1em;
}

.main__bumon {
  padding: 1rem 0;
}
.main__bumon .hd {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
}
.main__bumon .hd .rank {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  text-align: center;
}

.bumon__main [class*=col] {
  margin-bottom: 2.1875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
.bumon__main a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
.bumon__main .item {
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  padding-top: 0.5rem;
}

.bumon__sub [class*=row] {
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -ms-flex-line-pack: center;
      align-content: center;
}
.bumon__sub [class*=col] {
  margin-bottom: 2.1875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
.bumon__sub [class*=col] [class*=row] {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
.bumon__sub [class*=col] [class*=row] [class*=col] {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  margin-bottom: 0;
}
.bumon__sub a {
  width: 100%;
}
.bumon__sub .item {
  width: 100%;
  height: 100%;
  padding: 1rem;
}
.bumon__sub .item__title {
  margin-bottom: 0.4rem;
}

.main__spsite {
  padding: 0 0 5rem;
  text-align: center;
}
.main__spsite [class*=col] {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  text-align: center;
}

.btn-spsite {
  display: inline-block;
}
.btn-spsite .btn__inner {
  position: relative;
  max-width: 840px;
  border-radius: 3rem;
  padding: 1rem 5rem;
  color: #e7dfa8;
  background: #b01313;
  font-size: 1.125rem;
}
.btn-spsite .btn__inner strong {
  font-size: 1.375rem;
}
.btn-spsite .btn__inner [class*=icn-] {
  position: absolute;
  right: 2rem;
  top: 50%;
  line-height: 1;
  font-size: 1.875rem;
  margin-top: -1rem;
}
@media screen and (max-width: 592px) {
  .btn-spsite .btn__inner {
    width: 300px;
    border-radius: 1.5rem;
    font-size: 1rem;
    padding: 1rem 3rem 1rem 1rem;
  }
  .btn-spsite .btn__inner strong {
    font-size: 1.25rem;
  }
  .btn-spsite .btn__inner [class*=icn-] {
    right: 1rem;
  }
}

.main__ld {
  padding: 1rem 0 3rem;
}
.main__ld [class*=col] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  margin-bottom: 2.1875rem;
}
.main__ld a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
.main__ld .item {
  width: 100%;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
}

.main__fast {
  padding: 1rem 0 3rem;
}
.main__fast [class*=col] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  margin-bottom: 2.1875rem;
}
.main__fast a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
.main__fast .item {
  width: 100%;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
}

.main__cp h2 {
  padding: 0.5rem 0;
  line-height: 1.5;
  background: #6d00b2;
  color: #fff;
  font-size: 26px;
  font-weight: bold;
  text-align: center;
}
.main__cp h2 .period {
  display: block;
  font-size: 0.6em;
}
.main__cp h2 strong {
  color: #292929;
}
.main__cp p {
  text-align: center;
}
.main__cp p i {
  color: #6d00b2;
}

.coming {
  margin: 1.5rem 0;
  font-size: 38px;
  text-align: center;
}

.oyasumi__service {
  overflow: hidden;
  background: #ebf5ff;
  padding: 0;
}

.lbl__new {
  background: #e10000;
  position: relative;
  top: -1px;
  margin: 0 4px 0 0;
  padding: 0.035rem 0.25rem;
}
@media screen and (max-width: 800px) {
  .lbl__new {
    padding: 1.5px 4px;
  }
}

.mdl__credit {
  text-align: center;
  margin-bottom: 2.2rem;
}
.animated[data-modal-name*=__static-movie-player] {
  -webkit-animation-fill-mode: none;
          animation-fill-mode: none;
}

.main__stamp {
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding-bottom: 5rem;
  max-width: 50%;
  text-align: center;
}
@media screen and (max-width: 592px) {
  .main__stamp {
    max-width: 78%;
  }
}
.main__stamp .stamp__item {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 48%;
          flex: 0 1 48%;
}
@media screen and (max-width: 592px) {
  .main__stamp .stamp__item {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
    margin-bottom: 20px;
  }
  .main__stamp .stamp__item:last-child {
    margin-bottom: 0;
  }
}
.main__stamp a:hover {
  opacity: 0.8;
}
@media screen and (max-width: 592px) {
  .main__stamp {
    padding-bottom: 3.125rem;
  }
}

@media screen and (max-width: 592px) {
  .utl-img-stamp {
    max-width: 250px !important;
  }
}