﻿@charset "UTF-8";
body,div,h1,h2,h3,h4,h5,h6,p,dl,dt,dd,ul,li,brockquote,pre,table,caption,address,form,object,img,span,a,strong,em,q,ins,del,site,code,dfn,abbr,acronym,section,header,footer,nav,aside,article,address,figure,hgroup,menu{margin:0;padding:0}
body{color:#000;text-align:center;word-break:break-all;font-size:1.1em;margin:0;padding:0;line-height:2em;font-family: "Noto Serif JP", serif;font-weight:600;font-style: normal;background-color:#050303;}

@media screen and (max-width:800px) {
body{font-size:.9em;line-height:1.8em;}
}

ul{list-style-position:outside;list-style-type:none}
li a{border:none}
ol li{margin-bottom:5px}
table{border-collapse:collapse;font-size:100%}
img,a{border:none}
address,em,cite{font-style:normal}
a{overflow:hidden;outline:none;text-decoration:underline;color:#000}
a:visited{text-decoration:underline}
a:hover{text-decoration:none}
.nobr{white-space:nowrap}
.clearboth{clear:both;width:0;height:0;margin:0;padding:0}
.txt-s{font-size:80%}
.txt-red{color:#c00}
.txt-orange {color:#e17b00}
.txt-brown,.txt-brown a{color:#963}
.img-10{width:10%}
.img-20{width:20%}
.img-30{width:30%}
.img-40{width:40%}
.img-50{width:50%}
.img-60{width:60%}
.img-70{width:70%}
.img-80{width:80%}
.img-90{width:90%}
.img-100{width:100%}
.img-10 img,.img-20 img,.img-30 img,.img-40 img,.img-50 img,.img-60 img,.img-70 img,.img-80 img,.img-90 img,.img-100 img{width:100%}
.mt5{margin-top:5px}
.mt10{margin-top:10px}
.mt15{margin-top:15px}
.mt20{margin-top:20px}
.mt30{margin-top:30px}
.mt40{margin-top:40px}
.mb5{margin-bottom:5px}
.mb10{margin-bottom:10px}
.mb15{margin-bottom:15px}
.mb20{margin-bottom:20px}
.mb30{margin-bottom:30px}
.mb40{margin-bottom:40px}
.mr5{margin-right:5px}
.mr10{margin-right:10px}
.mr15{margin-right:15px}
.mr20{margin-right:20px}
.mr30{margin-right:30px}
.mr40{margin-right:40px}
.ml5{margin-left:5px}
.ml10{margin-left:10px}
.ml15{margin-left:15px}
.ml20{margin-left:20px}
.ml30{margin-left:30px}
.ml40{margin-left:40px}
.m5{margin:5px}
.m10{margin:10px}
.m15{margin:15px}
.m20{margin:20px}
.m30{marginp:30px}
.pt5{padding-top:5px}
.pt10{padding-top:10px}
.pt15{padding-top:15px}
.pt20{padding-top:20px}
.pt30{padding-top:30px}
.pt40{padding-top:40px}
.pb5{padding-bottom:5px}
.pb10{padding-bottom:10px}
.pb15{padding-bottom:15px}
.pb20{padding-bottom:20px}
.pb30{padding-bottom:30px}
.pb40{padding-bottom:40px}
.p5{padding:5px}
.p10{padding:10px}
.p15{padding:15px}
.p20{padding:20px}
.p30{padding:30px}
.p40{padding:40px}
figure img{width:100%;height:auto;vertical-align:bottom}
.txt-mincho {font-family: 'Sawarabi Mincho', sans-serif;}
.txt-center{text-align:center}
.txt-right{text-align:right}
.txt-s{font-size:.7em;line-height:1.4em;}
.txt-non{display:none}
.float-right{float:right}
.float-left{float:left}
.absmiddle{vertical-align:middle}
.pagetop-txt{display:none}
/* for modern brouser */
.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
/* IE7,MacIE5 */
.clearfix {
  display: inline-block;
}
/* WinIE6 below, Exclude MacIE5 \*/
* html .clearfix {
  height: 1%;
}
.clearfix {
  display: block;
}
/**/
.txt-attention{text-indent:-1em;margin-left:1em}
.txt-long {display: inline-block;-moz-transform:scale( 3, 1 ); -webkit-transform:scale( 3, 1 ); -o-transform:scale( 3, 1 );-ms-transform:scale( 3, 1 );transform:scale( 3, 1 );-moz-transform-origin:left top;-webkit-transform-origin:left top;-o-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top;}
.txt-long2 {display: inline-block;-moz-transform:    scale( 2, 1 );-webkit-transform: scale( 2, 1 );-o-transform:scale( 2, 1 );-ms-transform:scale( 2, 1 );transform:scale( 2, 1 );-moz-transform-origin:left top; -webkit-transform-origin: left top;-o-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top;
}
/*========= ローディング画面のためのCSS ===============*/
#splash {
  position: fixed;
  width: 100%;
  height: 100%;
  background: #fff;
  z-index: 9999999;
  text-align:center;
}

#splash-logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
width:100%;
}

#splash-logo figure {width:350px;margin:auto;}
@media screen and (max-width:500px) {
#splash-logo figure {width:60%;}
}

/*========= 画面遷移のためのCSS ===============*/

/*画面遷移アニメーション*/
.splashbg{
    display: none;
}

/*bodyにappearクラスがついたら出現*/
body.appear .splashbg{
 display:block;
  animation-name:PageAnime;
  animation-duration:1.2s;
  animation-timing-function:ease-in-out;
  animation-fill-mode:forwards;
    content: "";
    position:fixed;
  z-index: 999;
    width: 50%;
    height: 100vh;
    top: 0;
  left: 0;
    transform: translateX(-300%) skewX(-45deg);
    background-color: #fff;/*伸びる背景色の設定*/
}

@keyframes PageAnime{
  0% {
    transform-origin:left;
    transform:translateX(-300%) skewX(-45deg);
  }
  100% {
    transform-origin:left;
    transform:translateX(500%) skewX(-45deg);
  }
}



/*MENU*/
#g-nav{position:fixed;z-index:10;top:0;right:-100%;width:max(35%,300px);height:100vh;background-color:#02020e;transition:all .6s;}
#g-nav.panelactive{right:0}
#g-nav-list{overflow:auto;-webkit-overflow-scrolling:touch;width:100%;height:100vh;position:relative;display:flex;align-items:center;padding:3rem;flex-direction:column}
#g-nav ul{position:relative;z-index:10;width:100%;margin-top:80px;}
#g-nav li{list-style:none;text-align:left}
#g-nav li a{color:#fff;text-decoration:none;padding:0;display:block;text-transform:uppercase;letter-spacing:.1em;font-weight:600;margin-bottom:.6rem;font-style:normal;font-size:1em;transition:0.5s;font-weight:normal}
#g-nav li a:hover{color:#333}
.underline{position:absolute;bottom:-2px;left:0;display:block;width:0;height:1px;background-color:#fff}
.list_item a{position:relative;display:inline-block}
#g-nav ul li ul{margin-top:40px}
#g-nav .btn-sns {letter-spacing:-.4em;width:auto;display:block;text-align:left;}
#g-nav .btn-sns li {height:auto;margin-right:5px;display:inline-block;/display:inline;/zoom:1;vertical-align:top;width:auto;letter-spacing:normal;}
#g-nav .btn-sns li a {font-size:1.2em;display:block;color:#fff;text-align:center;text-decoration:none;width:35px;height:35px;border-radius:50%;line-height:35px;background:#000;color:#e83845;}
#g-nav .btn-sns li a i {color:#ffe900;}
@media screen and (max-width: 767px) {
#g-nav li a{text-decoration:none;padding:0;display:block;text-transform:uppercase;letter-spacing:0;font-size:clamp(.9rem,1.027rem + 0.26vw,1.2rem)}
#g-nav{width:max(50%,300px)}
#g-nav-list{width:100%;padding:2rem}
}
.openbtn{position:fixed;z-index:30;top:5px;right:5px;cursor:pointer;width:60px;height:60px;color:#fff;background-color:#000;}
.openbtn svg{width:60px;height:60px}
.nc-int-icon{fill:#fff;}
@media screen and (max-width: 767px) {
.openbtn{width:60px;height:60px}
.openbtn svg{width:60px;height:60px}
}
.top-bt{position:fixed;width:40px;height:auto;z-index:888;right:10px;bottom:10px}



/*画面遷移の後現れるコンテンツ設定*/
#container{opacity: 0;background-image:url("../img/bg_main.jpg");background-position:top center;background-repeat: no-repeat;background-color:#050303;}

@media screen and (max-width:960px) {
#container{background-size:cover}
}
@media screen and (max-width:980px) {
#container{background-image:url("../img/bg_main_sp.jpg");background-size:100%}
}
/*bodyにappearクラスがついたら出現*/
body.appear #container{
  animation-name:PageAnimeAppear;
  animation-duration:1s;
  animation-delay: 0.6s;
  animation-fill-mode:forwards;
  opacity: 0;
}

@keyframes PageAnimeAppear{
  0% {
  opacity: 0;
  }
  100% {
  opacity: 1;
}
}

/*MAIN*/
#main-block {width:100%;}
#main-block-in {position:relative;width:980px;margin:auto;}
#txt-main {width:100%;}
@media screen and (max-width:980px) {
#main-block-in {width:auto;margin:0 0;}
}

/*MAINBOTTOM*/
#main-bottom-block {width:100%;}
#main-bottom-block-in {position:relative;width:980px;margin:auto;padding:40px 0 0}
#txt-bottom {width:100%;padding:40px 0}
.mubichike1 {width:400px;margin:15px auto 20px}
.mubichike2 {width:840px;text-align:center;margin:0 auto 15px;}
@media screen and (max-width:980px) {
#main-bottom-block-in {width:auto;margin:0 25px;}
#txt-bottom {width:100%;padding:0px 0 40px}
}
@media screen and (max-width:788px) {
.mubichike2 {width:342px;margin:0 auto 15px;}
}
@media screen and (max-width:500px) {
.mubichike1 {width:90%;}
}



/*BTNSNS*/
#sns-block{text-align:center;letter-spacing:-.4em;}
.btn-sns {letter-spacing:-.4em;width:auto;display:inline-block;vertical-align: middle;margin-right:10px}
.btn-sns li {height:auto;margin-right:5px;display:inline-block;/display:inline;/zoom:1;vertical-align:top;width:auto;letter-spacing:normal;}
.btn-sns li a {background:#fff;font-size:1.2em;display:block;color:#fff;text-align:center;text-decoration:none;width:40px;height:40px;border-radius:50%;line-height:40px;transition:0.5s}
.btn-sns li a i {color:#3b2121;}
.btn-sns li a:hover {opacity: 50%}
@media screen and (max-width:767px) {
.btn-sns {letter-spacing:normal;display:block;width:auto;margin:0 auto 5px;}
.btn-sns li:last-child{margin-right:0;}
}

/*SNSSHARE*/
.list-sns{height:auto;display:inline-block;width:auto;vertical-align: middle;text-align:center;}
.list-sns li{display:inline-block;/display:inline;/zoom:1;vertical-align:top;letter-spacing:normal;margin-right:5px;}
.list-sns li.twitter-share,.list-sns li.line-share,.list-sns li.eiga-share{padding-top:11px}
.list-sns li.fb-share2{padding-top:8px;width:105px}
.list-sns li.fb-share0{padding-top:-4px;height:20px}
.fb-like > span {width: 135px !important;}
.fb-like iframe {width: 135px !important;}
@media screen and (max-width:767px) {
.list-sns li.fb-share{padding-top:5px;}
}


/*TIMELINE*/
#timeline-block{clear:both;text-align:center;margin:auto;padding:30px 0 60px}
#timeline-block-in{width:800px;margin:auto;letter-spacing:normal;height:350px;overflow-y: auto;text-align:center;}
@media screen and (max-width:800px) {
#timeline-block-in{width:auto;margin:0 25px 0;}
.fb-page,.fb-page span,#timeline-block-in .timeline-fb iframe{width: 100% !important;  height:350px !important;}
}

/*TRAILER*/
#trailer {background:#4e8093;background-size:auto;padding:60px 0 60px;background-image:url("../img/bg_trailer.jpg")}
#trailer h2 {color:#fff;margin-bottom:15px;font-size:2em;}
#trailer #trailer-in{width:800px;margin:auto;padding-bottom:40px}
.youtube {position: relative;width: 100%;padding-top: 56.25%;}
.youtube iframe {position: absolute;top: 0;right: 0;width: 100%;height: 100%;}
@media screen and (max-width:800px) {
#trailer #trailer-in{width:auto;margin:0 25px;padding-bottom:30px}
}
@media screen and (max-width:767px) {
#trailer h2 {font-size:1.4em;}
}

/*INTRO*/
#intro {background:#fffde4;background-size:auto;padding:0 0 60px;text-align:left;}
#intro #img-intro {margin-bottom:60px;}
#intro #intro-in{width:1100px;margin:auto;}
#intro #intro-in h2 {margin-bottom:25px;font-size:2em;}
#intro #intro-in p {margin-bottom:1em;}
@media screen and (max-width:1100px) {
#intro #intro-in{width:auto;margin:0 25px;}
}
@media screen and (max-width:767px) {
#intro {padding:0 0 40px;}
#intro #img-intro {margin-bottom:40px;}
#intro #intro-in h2 {font-size:1.4em;}
}

/*STORY*/
#story {background-image:url("../img/bg_story.jpg");background-size:cover;background-attachment: fixed;background-position:left;background-repeat:no-repeat}
#story #story-in{width:50%;margin-left:50%;text-align:left;}
#story #story-in h2 {margin-bottom:25px;font-size:2em;color:#fff100;}
#story #story-in #txt-story{color:#fff;padding:140px 100px 140px 20px;width:auto;}
#img-story {display:none}
@media screen and (max-width:1400px) {
#story #story-in{width:40%;margin-left:60%;}
#story #story-in #txt-story{color:#fff;padding:120px 60px 120px 20px;width:auto;}
}
@media screen and (max-width:1100px) {
#story #story-in{width:30%;margin-left:70%;}
#story #story-in #txt-story{color:#fff;padding:80px 25px 80px 0px;width:auto;}
}

@media screen and (max-width:980px) {
#story {background-image:none;}
#story #story-in{width:100%;margin-left:0;background-image:url("../img/bg_story_sp.jpg");background-repeat:no-repeat;padding:60px 0;background-position:bottom center}
#story #story-in #txt-story{color:#fff;padding:25px;}
#img-story {display:block}
}
@media screen and (max-width:767px) {
#story #story-in h2 {font-size:1.4em;}
}

/*DIRECTOR*/
#director {background:#e17b00}
#director #director-in {width:1100px;margin:auto;padding:80px 0;color:#fff;text-align:left;}
#director #director-in h2 {margin-bottom:30px;font-size:2em;}
#director #director-in h3 {margin-bottom:15px;font-size:2.3em;}
@media screen and (max-width:1100px) {
#director #director-in {width:auto;margin:0 25px;padding:60px 0;}
}
@media screen and (max-width:767px) {
#director #director-in h2 {font-size:1.4em;}
#director #director-in h3 {font-size:1.7em;}
}

/*CAST*/
#cast {background:#fffde4}
#cast #cast-in {width:1100px;margin:auto;padding:80px 0;text-align:left;}
#cast #cast-in h2 {margin-bottom:30px;font-size:2em;}
#cast #cast-in ul li {margin-bottom:40px;letter-spacing:-.4em;}
#cast #cast-in ul li div.img-cast {width:25%;display:inline-block;/display:inline;/zoom:1;vertical-align:middle;letter-spacing:normal;margin-right:3%;}
#cast #cast-in ul li div.txt-cast {width:72%;display:inline-block;/display:inline;/zoom:1;vertical-align:middle;letter-spacing:normal;}
#cast #cast-in ul li div.txt-cast .txt-yaku {margin-bottom:5px;font-size:1em;color:#e17b00;letter-spacing:.1em;}
#cast #cast-in ul li div.txt-cast h3 {margin-bottom:10px;font-size:1.8em;}
#cast #cast-in ul li div.txt-cast h3 span.txt-kana {margin-left:8px;font-size:.6em;font-weight:normal;letter-spacing:.1em;}
#cast #cast-in ul li div.txt-cast .txt-about {font-size:1em;line-height:1.7em;}
@media screen and (max-width:1100px) {
#cast #cast-in {width:auto;margin:0 25px;padding:60px 0;text-align:left;}
}
@media screen and (max-width:767px) {
#cast #cast-in {padding:40px 0;}
#cast #cast-in h2 {text-align:center;}
#cast #cast-in h2 {font-size:1.4em;}
#cast #cast-in ul li div.img-cast {width:60%;display:block;margin:0 auto 15px;}
#cast #cast-in ul li div.txt-cast {width:100%;display:block;text-align:center;}
#cast #cast-in ul li div.txt-cast .txt-about {text-align:left}
#cast #cast-in ul li {margin-bottom:50px;}
}

/*THEATER*/
#theater {background:#ebd7b1}
#theater #theater-in {width:1100px;margin:auto;padding:80px 0;color:#000;text-align:center;}
#theater #theater-in h2 {margin-bottom:30px;font-size:2em;}
#theater #theater-in .txt-day{margin-bottom:30px}
#theater #theater-in .table-theater {width:100%;margin:0 auto 60px;}
#theater #theater-in .table-theater th,#theater #theater-in .table-theater td {padding:10px 5px;text-align:center;font-size:1em;margin:0;line-height:1.4em}
#theater #theater-in .table-theater tr:nth-child(even) td {background: #fffde4;}
#theater #theater-in .table-theater td {background:#fff;}
#theater #theater-in .table-theater th {background:#e17b00;color:#000}
#theater #theater-in .table-theater th.th01 {width:15%;}
#theater #theater-in .table-theater th.th02 {width:35%;}
#theater #theater-in .table-theater td.td02 {text-align:left!important;}
#theater #theater-in .table-theater th.th03 {width:25%;}
#theater #theater-in .table-theater th.th04 {width:25%;}
#theater #theater-in .table-theater td.txt-left{text-align:left;}
#theater #theater-in .theater-event {width:auto;margin:0 auto 60px;border:3px solid #e6e6e6}
#theater #theater-in .theater-event hr.hr-event {height:1px;background-color: #000;border: none;color: #000000;}
#theater #theater-in .theater-event .theater-event-in{padding:30px 35px;line-height:1.6em;text-align:left;}
#theater #theater-in .theater-event .theater-event-in h3 {font-size:1.2em;text-align:center;margin-bottom:25px;font-weight:bold}
#theater #theater-in .theater-event .theater-event-in p{margin-bottom:1em;}
@media screen and (max-width:1100px) {
#theater #theater-in {width:auto;margin:0 25px;padding:60px 0;}
}
@media screen and (max-width:767px) {
#theater #theater-in h2 {font-size:1.4em;}
}

/*FOOTER*/
#footer {background-image:url("../img/bg_footer.jpg");background-size:auto;background-position:center;background-repeat:no-repeat}
#footer #footer-in {padding:100px 0 60px 0;width:1100px;margin:auto;text-align:left;}
#footer-logo {width:400px;margin:0 0 10px 0;} 
#footer #sns-block {text-align:left}
@media screen and (max-width:1100px) {
#footer #footer-in {padding:80px 0 30px 0;width:auto;margin:0 25px;text-align:left;}
}
@media screen and (max-width:767px) {
#footer {background-image:url("../img/bg_footer_sp.jpg");background-size:cover;}
}
@media screen and (max-width:500px) {
#footer-logo {width:70%;} 
}

/*FADE*/
.fadeIn {opacity: 0;-webkit-transition: 1s;transition: 1s;-webkit-transform: translateY(20px);transform: translateY(20px);}
.fadeIn.is-inview {opacity: 1;-webkit-transform: translateY(0px);transform: translateY(0px);}
.img_in_right {overflow: hidden;-webkit-transition: 1s;transition: 1s;opacity: 0;}
.img_in_right img {-webkit-transform: translateX(40px);transform: translateX(40px);-webkit-transition: 1s;transition: 1s;-webkit-clip-path: inset(0 0 0 100%);clip-path: inset(0 0 0 100%);}
.img_in_right.is-inview {opacity: 1;}
.img_in_right.is-inview img {-webkit-clip-path: inset(0);clip-path: inset(0);-webkit-transform: translateX(0px);transform: translateX(0px);}


/* Slider */
.slick-slider{position: relative;

    display: block;

    -moz-box-sizing: border-box;
         box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}

.slick-img img {
  height: 100vh;
  margin: auto;
  max-height: 100%;
  max-width: 100%;
  object-fit: cover;
  width: 100%;
}

#backtotop{bottom:5px;height:45px;position:fixed!important;right:5px;width:45px;text-indent:-9999px;z-index:10000}
#backtotop a{background:url(../img/btn_backtotop.png) no-repeat scroll 0 0 transparent;display:block;height:45px;width:45px}
#backtotop a:hover{background:url(../img/btn_backtotop.png) no-repeat scroll 0 -45px transparent}


@media screen and (min-width:768px) {
.pc-only{display:block}
.sp-only{display:none}
}

@media screen and (min-width: 0px) and (max-width:767px) {
.pc-only{display:none}
.sp-only{display:block}
}



