.sp{
    display: none;
}
@media screen and (max-width: 959px){
    .sp{
        display: block;
    }
}

/*Season8対応*/
/*KVスロット非表示*/
@media screen and (min-width: 600px){
    #background{
        background-image:url("../images/bg_08.jpg") !important;
        background-position:25% 50%
    }
}
@media screen and (max-width: 599px){
    #background{
        background-image:url("../images/bg_08@sp.jpg") !important;
        background-position:center center
    }
}
.slot{
    display: none !important;
}

#kv{
    overflow:hidden;
}
#kv .content{
    width:50% !important;
}
#kv .kv_image{
    /*pointer-events:none;*/
    z-index: 101 !important;
    position: relative;
}
#kv .kv_image .kv_image_frame{
    width:50%;
    height:100vh;
    position:absolute;
    top:0;
    right:0;
}
#kv .kv_image .kv_image_frame .kv_image_wrapper{
    display:flex;
    flex-flow:row nowrap;
    justify-content:space-between;
    align-items:center;
    width:70%;
    /*width:80%;*/
    position:absolute;
    top:50%;
    right:13%;
    transform:translateY(-50%);
    will-change:width, right, transform;
}
#kv .kv_image .kv_image_frame .kv_image_wrapper img{
    max-height: 80vh;
}
.kv_image .kv_image_frame .kv_image_wrapper .youtube{
    width: 100%;
    max-width: 1000px;
    margin:0 auto;
    aspect-ratio: 16 / 9;
}
.kv_image .kv_image_frame .kv_image_wrapper .youtube iframe{
    width: 100%;
    height: 100%;
}

#tabnav {
    padding: 0 3.125rem 1rem;
}
#tabnav ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
#tabnav ul li {
    margin: 1rem 3rem 0 !important;
}

@media screen and (max-width: 1279px){
    #kv .kv_image .kv_image_frame{
        right:calc((1280px - 100%) * -1 / 5);
    }
}
@media screen and (max-width: 959px){
    #kv .content{
        width:100% !important;
    }
    #kv .kv_image .kv_image_frame{
        width:100%;
        right:0;
        top:18vh;
    }
    #kv .kv_image .kv_image_frame .kv_image_wrapper{
        /*width:80%;
        top:38%;
        right:10%;*/
        width:70%;
        top:45%;
        right:15%;
    }
}
@media screen and (max-width: 767px){
    #kv .kv_image .kv_image_frame{
        width:104%;
        right:-2%;
        top:6.71875rem;
    }
}
@media screen and (max-width: 599px){
    #kv .slot .slot-slide-frame{
        width:110%;
        right:-5%;
    }
}
@media screen and (max-width: 599px) {
    #kv .content .update {
      font-size: 1.5rem;
      margin-top: 1.25rem;
    }
  }

@media screen and (max-width: 599px) {
    #tabnav {
        padding: 0;
    }
    #tabnav ul {
        flex-wrap: nowrap;
    }
    #tabnav ul li {
      /*width: 16% !important;*/
      margin: 0 !important;
    }
}
@media screen and (max-width: 767px) {
    #header > .inner .gnav::before {
      background: url("../images/menu_bg_08@sp.jpg") no-repeat left top !important;
    }
}

/* オーバーレイ 初期状態 */
.mfp-fade.mfp-bg {
    opacity: 0;
  
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    transition: all .3s ease-out;
  }
  /* オーバーレイ 表示アニメーション */
  .mfp-fade.mfp-bg.mfp-ready {
    opacity: .8;
  }
  /* オーバーレイ 非表示アニメーション */
  .mfp-fade.mfp-bg.mfp-removing {
    opacity: 0;
  }
  
  /* コンテンツ 初期状態 */
  .mfp-fade.mfp-wrap .mfp-content {
    opacity: 0;
  
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    transition: all .3s ease-out;
  }
  /* コンテンツ 表示アニメーション */
  .mfp-fade.mfp-wrap.mfp-ready .mfp-content {
    opacity: 1;
  }
  /* コンテンツ 非表示アニメーション */
  .mfp-fade.mfp-wrap.mfp-removing .mfp-content {
    opacity: 0;
  }

/*トップページ募集バナー追加*/
.content div .entryBanner{
    width:400px;
}
.content div .entryBanner a:hover{
    opacity: 0.8;
}
@media screen and (max-width: 599px) {
    .content div .entryBanner{
        width: 100%;
    }
}

/*#movie .movie-wrap #season7.movie-item .season-header {
    padding: 4.6875rem 3.125rem 24.6875rem;
}*/
#movie .movie-wrap .movie-item .season-header .soon{
    margin:5.6875rem 0 0;
    font-size: 2.5em;
}
#movie .movie-wrap .movie-item .season-header .soon::before{
    display: none;
}
@media screen and (max-width: 599px) {
    #movie .movie-wrap .movie-item .season-header .soon{
        margin:2.6875rem 0 0;
        font-size: 1.5em;
    }
}

@media screen and (max-width: 599px) {
  #tabnav {
    font-size: 0.55rem;
  }
}


/*テーマソング*/
#themesong{
    background: #000;
    text-align: center;
    padding: 3.125rem 3.125rem;
}
#themesong .themesong{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    max-width: 62.5rem;
    margin: 0 auto;
}
#themesong .themesong li{
    box-sizing: border-box;
    width: 50%;
    padding: 0 3.125rem;
}
#themesong .themesong li img{
    object-fit: contain;
    width: 100%;
}
#themesong .themesong li.txt{
    display: flex;
    justify-content: center;
    align-items: center;
}
#themesong .themesong li.txt h5{
    font-size: 18px;
    margin:10px 0;
}
#themesong .themesong li.txt p{
    font-size: 18px;
}
@media screen and (max-width: 959px) {
    #themesong {
     padding-top:0
    }
    #themesong .themesong {
        display: block;
    }
    #themesong .themesong li {
     padding:0 1.5625rem;
    }
   }
   @media screen and (max-width: 599px) {
    #themesong {
     padding:0 1.875rem 3.125rem
    }
    #themesong .themesong li {
     width:100%;
     padding:1.5625rem;
    }
    #themesong .themesong li img {
     width:100%;
    }
    #themesong .themesong li.txt h5{
        font-size: 14px;
    }
    #themesong .themesong li.txt p{
        font-size: 12px;
    }
}

/*フッターバナー*/
#banner{
    background: #000;
    text-align: center;
    padding: 3.125rem 3.125rem;
}
#banner .banner{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    max-width: 62.5rem;
    margin: 0 auto;
}
#banner .banner li{
    box-sizing: border-box;
    width: 33.33333333333333%;
    padding: 0 3.125rem;
}
#banner .banner li a{
    display: block;
}
#banner .banner li a img{
    object-fit: contain;
    width: 12.5rem;
    height: 5rem;
}
@media screen and (max-width: 959px) {
    #banner {
     padding-top:0
    }
    #banner .banner:before {
     display:block;
     content:"";
     width:100%;
     height:1px;
     margin-bottom:3.125rem;
     background:#C3C3C3;
     transform:scaleY(0.5)
    }
    #banner .banner li {
     padding:0 1.5625rem
    }
   }
   @media screen and (max-width: 599px) {
    #banner {
     padding:0 1.875rem 3.125rem
    }
    #banner .banner li {
     width:50%;
     padding:0
    }
    #banner .banner li:nth-child(n+4) {
     margin-top:0
    }
    #banner .banner li:nth-child(n+3) {
     margin-top:1.5625rem
    }
    #banner .banner li a img {
     width:7.5rem;
     height:3rem
    }
}

/*テキストクレジット*/
#credit {
    background: #fff;
    color:#000;
    text-align: center;
    padding: 3.125rem 3.125rem;
}
#credit .inner{
    width:1200px;
    margin:0 auto;
}
#credit h4 {
    font-size: 14px;
}
#credit .creditTitle {
    margin:40px 0 0;
    font-size: 12px;
}
#credit ul.creditNameBottom {
    margin:40px 0 0;
    font-size: 14px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
#credit ul.creditNameBottom li {
    margin:0 20px 0 0;
}

#credit dl{
    margin:40px 0 0;
    display: flex;
}
#credit dl dt{
    width:300px;
    margin:0 40px 0 0;
    font-size: 12px;
    font-weight: bold;
    text-align: right;
}
#credit dl dd{
    font-size: 14px;
    flex:1;
}
#credit dl dd ul.creditName{
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}
#credit dl dd ul.creditName li{
    margin:0 20px 0 0;
}
@media screen and (max-width: 959px) {
    #credit {
        padding: 3.125rem 1.875rem;
    }
    #credit .inner{
        width:100%;
        margin:0 auto;
    }
    #credit h4 {
        font-size: 12px;
    }
    #credit dl{
        margin:20px 0 0;
        display: block;
    }
    #credit dl dt{
        width:100%;
        text-align: center;
    }
    #credit dl dd{
        width:100%;
        text-align: center;
    }
    #credit dl dd ul.creditName{
        justify-content: center;
        gap:7%;
    }
    #credit dl dd ul.creditName li{
        margin:5px 5px 0;
        text-align: center;
        font-size: 12px;
    }
    #credit ul.creditNameBottom li {
        font-size: 12px;
    }
}

#footer {
    position: relative;
}

@media screen and (max-width: 599px) {
    #movie .movie-wrap .movie-item .season-body .item-wrap .item .info > .inner .scrollbox .staff li{
        display: block;
    }
    #movie .movie-wrap .movie-item .season-body .item-wrap .item .info > .inner .scrollbox .staff li:after{
        display: none;
    }
}

#movie .movie-wrap .movie-item .season-body .item-wrap .item .info > .inner .scrollbox .name li:not(:last-child)::after {
    display: none;
}
#movie .movie-wrap .movie-item .season-body .item-wrap .item .info > .inner .scrollbox .name li{
    margin:0.5em 1em 0;
}
@media screen and (max-width: 599px) {
    #movie .movie-wrap .movie-item .season-body .item-wrap .item .info > .inner .scrollbox .name li{
        margin:0.5em 0 0;
        display: block;
    }
}

.modaal-content-container .youtube {
    margin: 40px auto 0;
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 56.25%;
  }
  
  @media (max-width: 37.5em) {
    .modaal-content-container .youtube {
      margin: 20px auto 0;
    }
  }
  
  .modaal-content-container .youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
  }
  .sns i.icon-note{
    background:url(../images/logo_note.svg) 0 0 no-repeat;
    width:20px;
    height:20px;
    fill:#ed005b;
  }
  .sns a:hover i.icon-note{
    background:url(../images/logo_note_red.svg) 0 0 no-repeat;
    width:20px;
    height:20px;
  }
  @media (max-width: 37.5em) {
    .sns i.icon-note{
        background:url(../images/logo_note.svg) 0 0 no-repeat;
        width:15px;
        height:15px;
        fill:#ed005b;
      }
      .sns a:hover i.icon-note{
        background:url(../images/logo_note_red.svg) 0 0 no-repeat;
        width:15px;
        height:15px;
      }
  }


/*INTERVIEW*/
#interview {
    color: #fff;
    background: #000;
    padding: 6.25rem 3.125rem 9.375rem;
}
#interview > .inner {
    max-width: 67.5rem;
    margin: 0 auto;
}
#interview > .inner .txt1 {
    font-weight: 300;
    line-height: 1.875;
    max-width: 40.625rem;
    margin: 2.5rem auto 0;
}
#interview > .inner .interview-title {
    color: #ed005b;
    font-family: "Noto Serif JP","游明朝",YuMincho,"Hiragino Mincho ProN W3","ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
    font-weight: 400;
}
@media screen and (max-width: 599px) {
    #interview {
        padding: 3.75rem 1.875rem;
    }
    #interview > .inner .txt1 {
        font-size: 0.8125rem;
        margin-top: 1.25rem;
    }
}


/*LINK*/
#link {
    color: #030303;
    background: #fff;
    padding: 6.25rem 3.125rem 9.375rem
}

#link>.inner {
    max-width: 40.625rem;
    margin: 0 auto;
}

#link .pj_area{
    margin: 10rem auto 2.5rem;
    position: relative;
}

#link .pj_area_small{
    margin: 5rem auto 2.5rem 3rem
}

#link .pj_area:first-of-type{
    margin: 2.5rem auto 2.5rem;
}

#link .pj_area::after{
    content: '';
    width: 100%;
    position: absolute;
    bottom: -5.5rem;
    left: 0;
    border-bottom: 1px solid #ed005b;
}

#link .pj_area:last-of-type:after{
    display: none;
}

#link>.inner .pj_area .projectname {
   font-size: 1.375rem;
   font-weight: 400;
   margin-top: 0.2em;
   color: #ed005b;
}

#link>.inner .pj_area .projectname_small {
   font-weight: 400;
   margin-top: 0.2em;
   color: #000;
}

#link>.inner .txt1 {
    font-weight: 300;
    line-height: 1.875;
    max-width: 40.625rem;
    margin: 0.5rem auto 0;
    font-size: 0.8125rem;

}

#link>.inner .link_area{
    margin: 0.5rem auto 0;
    color: #000;
}

#link>.inner .link_area .link_detail{
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-top: 1.5rem;
    position: relative;
}

#link .link_detail::after{
    content: '';
    width: 100%;
    position: absolute;
    bottom: -0.5rem;
    left: 0;
    border-bottom: 1px solid #7f7f7f;
}

#link>.inner .link_area .link_detail .linktxt a{
    display: block;
    color: #000;
    line-height: 0.5rem;
}

#link>.inner .link_area .link_detail .linkbtn a{
    display: block;
    color: #fff;
    background: #000;
    padding: 0.3rem 1.5rem;
    font-size: 0.6875rem;
    text-transform: uppercase;
    line-height: 1em;
    margin: 0;
}

#link>.inner .link_area .link_detail .linkbtn a:hover{
    background: #ed005b;
    transition: 0.2s;
}

#link>.inner .link_area .link_detail .linkbtn i{
    margin-right: 0.5rem;
}



@media screen and (max-width: 599px) {
    #link {
        padding: 3.75rem 1.875rem;
    }
    #link .pj_area{
        margin: 7rem auto 2rem;
        position: relative;
    }
    #link .pj_area::after{
        content: '';
        width: 100%;
        position: absolute;
        bottom: -4rem;
        left: 0;
        border-bottom: 1px solid #ed005b;
    }
    #link .pj_area_small{
        margin: 3.5rem auto 0 1.5rem;
    }
}


/*DIRECTOR_INTERVIEW*/
.director_interview #header{
    position: relative;
}
.director_interview #header .logo {
    display: block;
}
.director_interview .interviewbox {
    text-align: left;
}
.director_interview .interviewbox p {
    font-family: "Noto Serif JP","游明朝",YuMincho,"Hiragino Mincho ProN W3","ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
    font-size: 1rem;
}
.director_interview .interviewbox p {
    margin-top: 1.5em;
    line-height: 1.875;
}
.director_interview .interviewbox p:nth-child(1) {
    margin-top: 1.5em;
}
.director_interview .localnav ul {
    display: flex;
    flex-wrap: wrap;
}

@media screen and (max-width: 599px) {
    .director_interview #interview_top{
        padding: 3.75rem 1.875rem 1.25rem;
    }
    .director_interview .interviewbox p {
        font-size: 0.8125rem;
    }
    .director_interview .interviewbox p:nth-child(1) {
        margin-top: 0.5em;
    }
    .director_interview .localnav ul {
        display: block;
    }
}


/*news detail*/
#entry .sns {
    margin:20px 0 0;
    display: flex;
    justify-content: flex-end;
}
#entry .sns li {
    margin:0 0 0 20px;
}
#entry .sns li a:hover{
    opacity: 0.6;
}
#entry .sns li a i{
    color:#ed005b;
}
#entry .sns li a i.icon-line{
    background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path fill="%23ed005b" d="M311 196.8v81.3c0 2.1-1.6 3.7-3.7 3.7h-13c-1.3 0-2.4-.7-3-1.5l-37.3-50.3v48.2c0 2.1-1.6 3.7-3.7 3.7h-13c-2.1 0-3.7-1.6-3.7-3.7V196.9c0-2.1 1.6-3.7 3.7-3.7h12.9c1.1 0 2.4 .6 3 1.6l37.3 50.3V196.9c0-2.1 1.6-3.7 3.7-3.7h13c2.1-.1 3.8 1.6 3.8 3.5zm-93.7-3.7h-13c-2.1 0-3.7 1.6-3.7 3.7v81.3c0 2.1 1.6 3.7 3.7 3.7h13c2.1 0 3.7-1.6 3.7-3.7V196.8c0-1.9-1.6-3.7-3.7-3.7zm-31.4 68.1H150.3V196.8c0-2.1-1.6-3.7-3.7-3.7h-13c-2.1 0-3.7 1.6-3.7 3.7v81.3c0 1 .3 1.8 1 2.5c.7 .6 1.5 1 2.5 1h52.2c2.1 0 3.7-1.6 3.7-3.7v-13c0-1.9-1.6-3.7-3.5-3.7zm193.7-68.1H327.3c-1.9 0-3.7 1.6-3.7 3.7v81.3c0 1.9 1.6 3.7 3.7 3.7h52.2c2.1 0 3.7-1.6 3.7-3.7V265c0-2.1-1.6-3.7-3.7-3.7H344V247.7h35.5c2.1 0 3.7-1.6 3.7-3.7V230.9c0-2.1-1.6-3.7-3.7-3.7H344V213.5h35.5c2.1 0 3.7-1.6 3.7-3.7v-13c-.1-1.9-1.7-3.7-3.7-3.7zM512 93.4V419.4c-.1 51.2-42.1 92.7-93.4 92.6H92.6C41.4 511.9-.1 469.8 0 418.6V92.6C.1 41.4 42.2-.1 93.4 0H419.4c51.2 .1 92.7 42.1 92.6 93.4zM441.6 233.5c0-83.4-83.7-151.3-186.4-151.3s-186.4 67.9-186.4 151.3c0 74.7 66.3 137.4 155.9 149.3c21.8 4.7 19.3 12.7 14.4 42.1c-.8 4.7-3.8 18.4 16.1 10.1s107.3-63.2 146.5-108.2c27-29.7 39.9-59.8 39.9-93.1z"/></svg>') top center no-repeat;
    display: block;
    width: 16px;
    height: 16px;
}
#entry .entry-body .entry-content iframe{
    width: 100%;
}
#entry .backBtn a{
    display: block;
    margin:80px auto 0;
    width:160px;
    height:40px;
    border:1px solid #ed005b;
    color:#ed005b;
    text-align: center;
    line-height: 40px;
}
#entry .backBtn a:hover{
    opacity: 0.6;
}


/*theater*/
#theater{
    color: #fff;
    background: #030303;
    padding: 6.25rem 3.125rem 13.75rem;
}
#content .header-subtitle {
    margin-top: 2.5rem;
    font-family: "Josefin Sans","Noto Sans JP","YuGothic","游ゴシック体","游ゴシック","ヒラギノ角ゴシック","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif;
    font-size: 1.75rem;
    font-weight: 400;
    color: #ed005b;
    letter-spacing: -0.01em;
    text-align: center;
}
#content .aboutMiruhaco {
    margin-top: 2rem;
}
#content .aboutMiruhaco h4 {
    margin-top: 1.5rem;
    font-family: "Josefin Sans","Noto Sans JP","YuGothic","游ゴシック体","游ゴシック","ヒラギノ角ゴシック","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif;
    font-size: 1.2rem;
    font-weight: 600;
    letter-spacing: -0.01em;
    text-align: center;
}
#content .aboutMiruhaco p {
    margin-top: 1rem;
    font-family: "Josefin Sans","Noto Sans JP","YuGothic","游ゴシック体","游ゴシック","ヒラギノ角ゴシック","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 1.8em;
    text-align: center;
}
#content .aboutMiruhaco p a {
    color: #ed005b;
    text-decoration: underline;
    pointer-events: all;
}
#content .att {
    margin-top: 1.5rem;
    font-family: "Josefin Sans","Noto Sans JP","YuGothic","游ゴシック体","游ゴシック","ヒラギノ角ゴシック","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif;
    font-size: 0.75rem;
    font-weight: 400;
    letter-spacing: -0.01em;
    text-align: center;
}
#theater > .inner {
    max-width: 42.5rem;
    margin: 0 auto;
}
#theater > .inner .list {
    font-size: 1.125rem;
    font-weight: 300;
    margin-top: 4rem;
}
#theater > .inner .list li:nth-child(n+2) {
    margin-top: 1em;
}
#theater > .inner .list dt {
    display: table-cell;
    vertical-align: top;
}
#theater > .inner .list dt .shop {
    font-weight: 400;
}
#theater > .inner .list dt .post {
    margin:0 0.6em 0 0;
}
#theater > .inner .list dt .post::before {
    content:'〒';
}
#theater > .inner .list dd {
    padding:0 0 0 2em;
    width: 6em;
    display: table-cell;
    vertical-align: top;
}
#theater > .inner .list dd a {
    color: #ed005b;
}

@media screen and (max-width: 599px) {
    #theater{
        padding: 3.75rem 1.875rem;
    }
    #theater > .inner .list {
        font-size: 0.8125rem;
        margin-top: 3rem;
    }
    #content .aboutMiruhaco h4 {
        font-size: 1rem;
    }
    #content .aboutMiruhaco p {
        font-size: 0.8rem;
    }
}

@media screen and (max-width: 767px) {
    #header > .inner .gnav > .inner > .nav{
        overflow: scroll;
    }
    #header > .inner .gnav > .inner > .logo {
        overflow: visible !important;
    }
}