@charset "UTF-8";
/* CSS Document */
html,
body {
  height: 100%;
  font-size: 62.5%; }

/*
body::before {
  background-image:url("../img/bg.jpg");
  background-size: cover;
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding-bottom: 108px;
  content: "";z-index
  z-index: -1;
}
*/
/***  メインビジュアル ***/
main#p_template {
  opacity: 0;
  -webkit-animation: mainvisu 0.5s ease 0.5s 1 forwards;
  animation: mainvisu 0.5s ease 0.5s 1 forwards;
  /***  見出し ***/
  /***  コンテンツ ***/
  /*.common_box_imgAll */
  /* article.bg01 */
  /* /article.backnumber */
  /* /article.cast */
  /* /banner */
  /* 1アコーディオン */
  /* :checked */
  /* Icon */
  /* nav */
  /*--------header-----------*/
  /***  ナビゲーション ***/
  /*--------固定化されたときのCSS-----------*/
  /*-----------スマホのトグルボタンのCSS-------------*/
  /*---------gnav sp--------------*/
  /*-----------スマホ-------------*/ }
  main#p_template p {
    font-size: 14px;
    color: #2a0d17; }
  main#p_template .width {
    max-width: 1100px;
    width: 90%;
    margin: 0 auto; }
    @media screen and (max-width: 768px) {
      main#p_template .width {
        width: 100%;
        margin: 0; } }
  main#p_template section.mainvisu {
    background: no-repeat url("../img/mainvisu_base.jpg");
    background-size: cover;
    background-position: left -20px top;
    height: 451px;
    position: relative; }
    @media screen and (max-width: 768px) {
      main#p_template section.mainvisu {
        background: no-repeat url("../img/mainvisu_base_sp.jpg");
        height: 812px; } }
    main#p_template section.mainvisu h1 {
      opacity: 0; }
    main#p_template section.mainvisu ul li {
      opacity: 0;
      position: absolute;
      bottom: 0; }
    main#p_template section.mainvisu ul li img {
      width: 100%; }
    main#p_template section.mainvisu ul li:nth-child(1) {
      left: 388px;
      -webkit-animation: mainvisu 0.5s ease 0.8s 1 forwards;
      animation: mainvisu 0.5s ease 0.8s 1 forwards;
      width: 13%; }
      @media screen and (max-width: 768px) {
        main#p_template section.mainvisu ul li:nth-child(1) {
          left: 20px;
          width: 20%; } }
    main#p_template section.mainvisu ul li:nth-child(2) {
      left: 772px;
      -webkit-animation: mainvisu 0.5s ease 1.1s 1 forwards;
      animation: mainvisu 0.5s ease 1.1s 1 forwards;
      width: 13%; }
      @media screen and (max-width: 768px) {
        main#p_template section.mainvisu ul li:nth-child(2) {
          left: 270px;
          width: 23%; } }
    main#p_template section.mainvisu ul li:nth-child(3) {
      left: 475px;
      -webkit-animation: mainvisu 0.5s ease 1.4s 1 forwards;
      animation: mainvisu 0.5s ease 1.4s 1 forwards;
      width: 19%; }
      @media screen and (max-width: 768px) {
        main#p_template section.mainvisu ul li:nth-child(3) {
          left: 65px;
          width: 32%; } }
    main#p_template section.mainvisu ul li:nth-child(4) {
      left: 590px;
      -webkit-animation: mainvisu 0.5s ease 1.7s 1 forwards;
      animation: mainvisu 0.5s ease 1.7s 1 forwards;
      width: 28%; }
      @media screen and (max-width: 768px) {
        main#p_template section.mainvisu ul li:nth-child(4) {
          left: 140px;
          width: 50%; } }
    main#p_template section.mainvisu ul li:nth-child(5) {
      bottom: 145px;
      right: 45px;
      -webkit-animation: mainvisu 0.5s ease 2.1s 1 forwards;
      animation: mainvisu 0.5s ease 2.1s 1 forwards;
      width: 13%; }
      @media screen and (max-width: 768px) {
        main#p_template section.mainvisu ul li:nth-child(5) {
          bottom: 230px;
          width: 18%; } }
  main#p_template .ttl_h2 {
    text-align: center; }
    main#p_template .ttl_h2 h2 {
      background: repeat-x url(../img/ttl_h2_mdl.png);
      height: 84px;
      width: auto;
      min-width: 400px;
      margin: 0 auto 30px;
      position: relative;
      font-size: 18px;
      text-align: center;
      font-family: vdl-gigamaru, sans-serif;
      font-weight: 500;
      font-style: normal;
      font-size: 24px;
      line-height: 82px;
      display: inline-block; }
      @media screen and (max-width: 768px) {
        main#p_template .ttl_h2 h2 {
          width: 80%;
          min-width: 20%; } }
    main#p_template .ttl_h2 h2::before {
      content: url(../img/ttl_h2_left.png);
      display: block;
      width: 22px;
      position: absolute;
      left: -20px;
      top: 0; }
    main#p_template .ttl_h2 h2::after {
      content: url(../img/ttl_h2_right.png);
      display: block;
      width: 22px;
      position: absolute;
      right: -20px;
      top: 0; }
    main#p_template .ttl_h2 h2 span {
      font-family: sans-serif, "メイリオ";
      font-weight: normal;
      display: inline-block;
      margin-left: 2rem;
      font-size: 18px; }
      @media screen and (max-width: 768px) {
        main#p_template .ttl_h2 h2 span {
          font-size: 16px; } }
  main#p_template .ttl_h2.ttl_next_ep {
    text-align: center; }
    @media screen and (max-width: 768px) {
      main#p_template .ttl_h2.ttl_next_ep h2 {
        line-height: 28px;
        padding-top: 14px; } }
    @media screen and (max-width: 768px) {
      main#p_template .ttl_h2.ttl_next_ep h2 span {
        font-size: 14px; } }
  main#p_template h3 {
    display: inline-block;
    font-family: vdl-gigamaru, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 24px;
    position: relative;
    margin: 0 0 30px 60px; }
    @media screen and (max-width: 768px) {
      main#p_template h3 {
        margin: 0 0 30px 70px; } }
  main#p_template h3::before {
    content: url(../img/icon_h3.png);
    position: absolute;
    top: 8px;
    left: -60px; }
  main#p_template article {
    padding: 50px 0;
    margin-bottom: 0;
    /* .text_box */
    /*.next_ep */
    /*.common_box_imgR */
    /*.common_box_imgAll */
    /* .text_box */ }
    main#p_template article .flex {
      display: flex; }
      @media screen and (max-width: 768px) {
        main#p_template article .flex {
          display: block; } }
    main#p_template article .img_box {
      overflow: hidden;
      border-radius: 10px; }
      main#p_template article .img_box img {
        width: 100%; }
    main#p_template article .text_box {
      margin-left: 30px;
      border-radius: 10px;
      background: rgba(255, 255, 255, 0.5);
      position: relative; }
      main#p_template article .text_box p {
        margin: 30px; }
    main#p_template article .next_ep {
      /* .img_box */
      /* .text_box */ }
      main#p_template article .next_ep .img_box {
        width: 65%; }
        @media screen and (max-width: 768px) {
          main#p_template article .next_ep .img_box {
            width: 95%;
            margin-left: auto;
            margin-right: auto;
            height: auto; } }
      main#p_template article .next_ep .text_box {
        width: 35%; }
        @media screen and (max-width: 768px) {
          main#p_template article .next_ep .text_box {
            width: 95%;
            padding-top: 10px;
            padding-bottom: 4rem;
            margin-left: auto;
            margin-right: auto;
            margin-top: 20px; } }
        main#p_template article .next_ep .text_box dl {
          display: flex;
          font-size: 14px;
          margin: 0 30px 30px;
          position: absolute;
          bottom: 0;
          right: 0; }
          main#p_template article .next_ep .text_box dl dt {
            background: #643f1c;
            font-weight: bold;
            color: #ffffff;
            padding: 5px; }
          main#p_template article .next_ep .text_box dl dd {
            padding: 5px 0 5px 5px;
            font-weight: bold;
            color: #643f1c; }
    main#p_template article .common_box_imgR {
      /* .img_box */
      /* .text_box */ }
      main#p_template article .common_box_imgR .img_box {
        width: 55%; }
        @media screen and (max-width: 768px) {
          main#p_template article .common_box_imgR .img_box {
            width: 95%;
            margin-left: auto;
            margin-right: auto;
            margin-top: 20px; } }
        main#p_template article .common_box_imgR .img_box img {
          width: 100%; }
      main#p_template article .common_box_imgR .text_box {
        width: 45%;
        background: #f3eff1;
        margin-left: 0;
        margin-right: 30px; }
        @media screen and (max-width: 768px) {
          main#p_template article .common_box_imgR .text_box {
            width: 95%;
            margin-left: auto;
            margin-right: auto;
            padding: 10px 0; } }
    main#p_template article .common_box_imgL {
      /* .img_box */
      /* .text_box */ }
      main#p_template article .common_box_imgL .img_box {
        width: 55%; }
        @media screen and (max-width: 768px) {
          main#p_template article .common_box_imgL .img_box {
            width: 95%;
            margin-left: auto;
            margin-right: auto; } }
        main#p_template article .common_box_imgL .img_box img {
          width: 100%; }
      main#p_template article .common_box_imgL .text_box {
        width: 45%;
        margin-right: 0;
        margin-left: 30px;
        background: #f3eff1; }
        @media screen and (max-width: 768px) {
          main#p_template article .common_box_imgL .text_box {
            width: 95%;
            margin-left: auto;
            margin-right: auto;
            margin-top: 20px;
            padding: 10px 0; } }
    main#p_template article .common_box_imgAll.flex {
      justify-content: space-between; }
    main#p_template article .common_box_imgAll {
      /* .img_box */ }
      main#p_template article .common_box_imgAll .img_box {
        width: 31.5%; }
        @media screen and (max-width: 768px) {
          main#p_template article .common_box_imgAll .img_box {
            width: 95%;
            margin-left: auto;
            margin-right: auto;
            margin-bottom: 20px; } }
        main#p_template article .common_box_imgAll .img_box img {
          width: 100%; }
  main#p_template article.bg01 {
    background: url(../img/bg.jpg);
    /*.common_box_imgR */
    /*.common_box_imgL */ }
    main#p_template article.bg01 .common_box_imgR {
      /* .text_box */ }
      main#p_template article.bg01 .common_box_imgR .text_box {
        background: rgba(255, 255, 255, 0.5); }
    main#p_template article.bg01 .common_box_imgL {
      /* .text_box */ }
      main#p_template article.bg01 .common_box_imgL .text_box {
        background: rgba(255, 255, 255, 0.5); }
  main#p_template article.backnumber {
    /* /section */ }
    main#p_template article.backnumber h4 {
      padding: 30px;
      position: relative;
      -webkit-transition: all .3s;
      transition: all .3s; }
      main#p_template article.backnumber h4 span {
        color: #643f1c;
        display: inline-block;
        position: absolute;
        right: 30px; }
    main#p_template article.backnumber h4:hover {
      cursor: pointer;
      opacity: 0.5;
      -webkit-transition: all .3s;
      transition: all .3s; }
    main#p_template article.backnumber section {
      border-radius: 10px;
      background: #f3eff1;
      margin-bottom: 10px; }
      @media screen and (max-width: 768px) {
        main#p_template article.backnumber section {
          width: 95%;
          margin-left: auto;
          margin-right: auto; } }
      main#p_template article.backnumber section .img_box {
        width: 60%;
        height: auto; }
        @media screen and (max-width: 768px) {
          main#p_template article.backnumber section .img_box {
            width: 100%;
            margin-left: auto;
            margin-right: auto; } }
      main#p_template article.backnumber section .text_box {
        width: 40%;
        background-color: #f3eff1;
        margin-left: 30px; }
        @media screen and (max-width: 768px) {
          main#p_template article.backnumber section .text_box {
            width: 100%;
            margin-left: auto;
            margin-right: auto;
            padding: 10px 0; } }
        main#p_template article.backnumber section .text_box p {
          margin: 0; }
      main#p_template article.backnumber section .center img {
        width: 100%; }
      main#p_template article.backnumber section .slick-list {
        overflow: hidden;
        border-radius: 10px; }
      main#p_template article.backnumber section .flex {
        margin: 0 30px 30px;
        padding-top: 30px;
        border-top: 1px solid #fff; }
  main#p_template article.cast {
    padding-bottom: 15px; }
    main#p_template article.cast h4 {
      margin: 30px 30px 0 30px;
      font-family: vdl-gigamaru, sans-serif;
      color: #643f1c; }
      @media screen and (max-width: 768px) {
        main#p_template article.cast h4 {
          font-size: 6vw; } }
    main#p_template article.cast section.flex {
      justify-content: space-between;
      flex-wrap: wrap; }
    main#p_template article.cast figure {
      width: 48.5%;
      margin-bottom: 30px; }
      @media screen and (max-width: 768px) {
        main#p_template article.cast figure {
          width: 95%;
          margin-left: auto;
          margin-right: auto;
          padding: 10px 0; } }
    main#p_template article.cast figure.flex .img_box {
      width: 42%; }
      @media screen and (max-width: 768px) {
        main#p_template article.cast figure.flex .img_box {
          width: 95%;
          margin-left: auto;
          margin-right: auto;
          padding: 10px 0; } }
      main#p_template article.cast figure.flex .img_box img {
        border-radius: 10px; }
    main#p_template article.cast figure.flex .text_box {
      width: 55%;
      margin-left: 15px; }
      @media screen and (max-width: 768px) {
        main#p_template article.cast figure.flex .text_box {
          width: 95%;
          margin-left: auto;
          margin-right: auto;
          padding: 10px 0; } }
  main#p_template .sub_cast .text_box {
    background-color: #f3eff1; }
  main#p_template .staff .text_box {
    background-color: #f3eff1;
    width: 100% !important;
    margin-left: 0 !important; }
  main#p_template .chart {
    text-align: center; }
    main#p_template .chart img {
      width: 100%; }
      @media screen and (max-width: 768px) {
        main#p_template .chart img {
          width: 95%;
          margin-left: auto;
          margin-right: auto; } }
  @media screen and (max-width: 768px) {
    main#p_template .banner {
      text-align: center; } }
  main#p_template .banner .flex {
    justify-content: space-around; }
  main#p_template .banner a {
    width: 45%; }
  main#p_template .banner a img {
    width: 100%; }
    @media screen and (max-width: 768px) {
      main#p_template .banner a img {
        width: 95%;
        margin: 5px auto;
        text-align: center; } }
  main#p_template address {
    text-align: center;
    font-style: normal;
    font-size: 12px; }
  @media all and (-ms-high-contrast: none) {
    main#p_template {
      /* ここに書く */ }
      main#p_template address {
        font-size: 12px; } }
  main#p_template .cp_actab {
    position: relative;
    overflow: hidden;
    width: 100%;
    margin: 0 auto;
    color: #ffffff; }
  main#p_template .cp_actab input {
    position: absolute;
    z-index: -1;
    opacity: 0; }
  main#p_template .cp_actab label {
    position: relative;
    display: block; }
  main#p_template .cp_actab .cp_actab-content {
    overflow: hidden;
    max-height: 0;
    -webkit-transition: max-height 0.5s;
    transition: max-height 0.5s; }
  main#p_template .cp_actab input:checked ~ .cp_actab-content {
    max-height: 100em; }
  main#p_template .cp_actab label::after {
    line-height: 3;
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 3em;
    height: 3em;
    -webkit-transition: all 0.35s;
    transition: all 0.35s;
    text-align: center; }
  main#p_template .sticky {
    position: -webkit-sticky;
    /* Safari */
    position: sticky;
    top: 0;
    z-index: 100;
    width: 100%; }
  main#p_template .inner {
    width: 100%;
    margin: 0 auto;
    position: relative; }
  main#p_template .inner:after {
    content: "";
    clear: both;
    display: block; }
  main#p_template #top-head {
    width: 100%;
    line-height: 1;
    z-index: 99;
    font-style: normal; }
  main#p_template #top-head a,
  main#p_template #top-head {
    text-decoration: none; }
  main#p_template #top-head .inner {
    position: relative; }
  main#p_template #global-nav {
    background: #fff; }
  main#p_template #global-nav ul {
    list-style: none; }
  main#p_template #global-nav ul li {
    text-align: center;
    padding: 20px 0; }
  main#p_template #global-nav ul li a {
    position: relative;
    display: inline-block;
    font-family: fot-tsukubrdgothic-std, sans-serif;
    color: #2a0d17;
    width: 100%;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    margin-top: 3px;
    padding: 10px 0;
    background-color: #fff;
    color: #2a0d17 !important;
    background-size: 200% 100%;
    background-image: -webkit-linear-gradient(left, transparent 50%, rgba(0, 0, 0, 0.3) 50%);
    background-image: linear-gradient(to right, transparent 50%, rgba(0, 0, 0, 0.3) 50%);
    -webkit-transition: background-position 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0.1s, color 0.5s ease 0s, background-color 0.5s ease;
    transition: background-position 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0.1s, color 0.5s ease 0s, background-color 0.5s ease; }
  main#p_template #global-nav ul li a:hover {
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    color: #fff !important;
    background-color: #fff;
    background-position: -100% 100%; }
  main#p_template nav span {
    background: #666;
    height: 2px;
    display: block;
    position: relative;
    width: 50px;
    left: 0; }
  main#p_template #global-nav ul {
    display: flex; }
  main#p_template #global-nav ul li {
    width: 16.6666666667%;
    text-align: center; }
  main#p_template #global-nav ul li a {
    font-family: fot-tsukubrdgothic-std, sans-serif;
    font-weight: 400;
    font-style: normal; }
  main#p_template #top-head.fixed {
    margin-top: 0;
    top: 0;
    position: fixed;
    padding-top: 10px;
    background: -webkit-linear-gradient(left, #f4005c, #b300e7, #0095ea);
    background: -o-linear-gradient(left, #f4005c, #b300e7, #0095ea);
    background: linear-gradient(to right, #f4005c, #b300e7, #0095ea);
    transition: top 0.65s ease-in;
    -webkit-transition: top 0.65s ease-in;
    -moz-transition: top 0.65s ease-in; }
  main#p_template #top-head.fixed .logo {
    position: relative;
    font-size: 24px;
    color: #333; }
  main#p_template #top-head.fixed .logo a {
    position: absolute;
    width: 100%;
    height: 30px; }
  main#p_template #top-head.fixed #global-nav ul li a {
    color: #333;
    padding: 0 20px;
    padding-bottom: 10px; }
  main#p_template #nav-toggle {
    display: none;
    position: absolute;
    right: 12px;
    top: 14px;
    width: 34px;
    height: 36px;
    cursor: pointer;
    z-index: 101; }
  main#p_template #nav-toggle div {
    position: relative; }
  main#p_template #nav-toggle span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #fff;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out; }
  main#p_template #nav-toggle span:nth-child(1) {
    top: 0;
    background-color: #2a0d17; }
  main#p_template #nav-toggle span:nth-child(2) {
    top: 11px;
    background-color: #2a0d17; }
  main#p_template #nav-toggle span:nth-child(3) {
    top: 22px;
    background-color: #2a0d17; }
  @media screen and (max-width: 767px) {
    main#p_template {
      /* Fixed reset */
      /* #nav-toggle 切り替えアニメーション */
      /* #global-nav スライドアニメーション */ }
      main#p_template .head-inner {
        display: none; }
      main#p_template .slick-next {
        right: 0; }
      main#p_template #top-head,
      main#p_template .inner {
        width: 100%;
        padding: 0; }
      main#p_template #top-head {
        top: 0;
        position: fixed;
        margin-top: 0;
        background: none; }
      main#p_template #top-head.fixed {
        padding-top: 0;
        background: transparent; }
      main#p_template #mobile-head {
        background: none;
        width: 100%;
        height: 56px;
        z-index: 999;
        position: relative;
        top: 38px; }
      main#p_template #top-head.fixed .logo,
      main#p_template #top-head .logo {
        position: absolute;
        left: 13px;
        height: 50px;
        top: 15px;
        color: #333;
        font-size: 26px; }
      main#p_template #global-nav {
        position: absolute;
        /* 開いてないときは画面外に配置 */
        top: -530px;
        background: none;
        width: 100%;
        text-align: center;
        padding: 10px 0;
        -webkit-transition: .5s ease-in-out;
        -moz-transition: .5s ease-in-out;
        transition: .5s ease-in-out; }
      main#p_template #global-nav ul {
        list-style: none;
        position: static;
        right: 0;
        bottom: 0; }
      main#p_template #global-nav ul li {
        float: none;
        position: static;
        padding: 18px 0;
        background: #fff;
        border-bottom: 1px solid #f3eff1;
        width: 100%;
        font-size: 1.4rem; }
      main#p_template #top-head #global-nav ul li a,
      main#p_template #top-head.fixed #global-nav ul li a {
        width: 100%;
        display: block;
        color: #2a0d17;
        padding: 18px 0; }
      main#p_template #nav-toggle {
        display: block; }
      main#p_template #global-nav ul {
        display: flex;
        flex-wrap: wrap; }
      main#p_template #global-nav ul li {
        width: 100%;
        text-align: center;
        padding: 10px 0; }
      main#p_template #global-nav ul li a {
        font-family: fot-tsukubrdgothic-std, sans-serif;
        font-weight: 400;
        font-style: normal; }
      main#p_template .open #nav-toggle span:nth-child(1) {
        top: 11px;
        -webkit-transform: rotate(315deg);
        -moz-transform: rotate(315deg);
        transform: rotate(315deg); }
      main#p_template .open #nav-toggle span:nth-child(2) {
        width: 0;
        left: 50%; }
      main#p_template .open #nav-toggle span:nth-child(3) {
        top: 11px;
        -webkit-transform: rotate(-315deg);
        -moz-transform: rotate(-315deg);
        transform: rotate(-315deg); }
      main#p_template .open #global-nav {
        /* #global-nav top + #mobile-head height */
        -moz-transform: translateY(560px);
        -webkit-transform: translateY(560px);
        transform: translateY(560px); } }
  main#p_template br.br_sp {
    display: none; }
    @media screen and (max-width: 768px) {
      main#p_template br.br_sp {
        display: block; } }

/* /main */
@-webkit-keyframes mainvisu {
  100% {
    opacity: 1; } }
@keyframes mainvisu {
  100% {
    opacity: 1; } }

/*# sourceMappingURL=style_start.css.map */
