﻿@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:#333;text-align:center;word-break:break-all;font-size:1.2em;margin:0;padding:0;line-height:2.4em;font-family: "Noto Serif JP", serif;font-weight:500;font-style: normal;background-color:#fff;background-image:url("../img/img_main.jpg");background-repeat:no-repeat;background-size:auto;background-position:top center;}
@media screen and (max-width:767px) {
body{font-size:1em;line-height:2em;background-image:url("../img/img_main_sp.jpg");}
}

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-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:.8em;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: #ffff;
  z-index: 9999999;
  text-align:center;
  color:#000;
}

#splash-logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

#splash-logo figure {width:300px;margin:auto;}
@media screen and (max-width:400px) {
#splash-logo figure {width:70%;}
}

/*========= 画面遷移のための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);
  }
}

/*画面遷移の後現れるコンテンツ設定*/
#container{
  opacity: 0;/*はじめは透過0に*/
}

/*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;
}
}


/*MENU*/
#g-nav{position:fixed;z-index:10;top:0;right:-100%;width:max(35%,300px);height:100vh;background-color:#8c8fad;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;font-family: "Noto Serif JP", serif;}
#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}
@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:#5d5f7b;}
.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}



/*MAIN*/
#main-block {width:100%;}
#main-block #main-block-in {width:1200px;margin:auto;}
#main-block #main-block-in #txt-main {margin-bottom:60px;}
#main-block #main-block-in #img-prize {width:600px;margin:0 auto 35px;}
#main-block #main-block-in h1 {width:767px;margin:0 auto 40px;}
#main-block #main-block-in #txt-kokai {width:767px;margin:0 auto 30px;}
@media screen and (max-width:1200px) {
#main-block #main-block-in {width:auto;margin:0 0 30px;}
}
@media screen and (max-width:767px) {
#main-block #main-block-in h1 {width:90%;margin:0 auto 25px;}
#main-block #main-block-in #txt-kokai {width:90%;}
#main-block #main-block-in #txt-main {margin-bottom:0px;}
}
@media screen and (max-width:600px) {
#main-block #main-block-in #img-prize {width:90%;margin:0 auto 15px;}
}
@media screen and (max-width:500px) {
#main-block #main-block-in #txt-main {margin-bottom:0px;}
}

/*CREDIT*/
#txt-credit {margin:0 10px 50px;}
#txt-credit-l {font-size:1.1em;margin-bottom:8px;letter-spacing:.1em;line-height:1.4em;font-weight:500}
#txt-credit-m {font-size:.85em;margin-bottom:10px;line-height:1.5em}
#txt-credit-s {font-size:.7em;margin-bottom:20px;line-height:1.7em}
@media screen and (max-width:600px) {
#txt-credit-l {font-size:1em;margin-bottom:8px;letter-spacing:.1em;line-height:1.4em;font-weight:500}
#txt-credit-m {font-size:.7em;margin-bottom:10px;line-height:1.5em}
}


/*TRAILER*/
#trailer {background:#e6e7e8;}
#trailer #trailer-in {padding:60px 0 80px;margin:auto;width:900px;}
#trailer #trailer-in h2 {font-size:1.6em;margin-bottom:30px;letter-spacing:.1em;font-weight:600}
#trailer #trailer-in div.youtube { position: relative;width: 100%;padding-top: 56.25%;margin-bottom:10px}
#trailer #trailer-in div.youtube iframe {position: absolute;top: 0;right: 0;width: 100%;height: 100%;}
@media screen and (max-width:900px) {
#trailer #trailer-in {padding:40px 0 60px;margin:0 30px;width:auto}
}

/*INTRO*/
#intro {background-image:url("../img/bg_intro.jpg");background-size:auto;background-repeat: no-repeat;background-position:top center}
#intro #intro-in {padding:880px 0 60px;margin:auto;width:1100px;}
#intro #intro-in h2 {font-size:1.6em;margin-bottom:25px;letter-spacing:.1em;font-weight:600}
#intro #intro-in #txt-intro{text-align:left;}
@media screen and (max-width:1100px) {
#intro {background-size:100%;}
#intro #intro-in {padding:500px 0 40px;margin:0 25px;width:auto;}
}
@media screen and (max-width:980px) {
#intro {background-size:100%;}
#intro #intro-in {padding:400px 0 40px;margin:0 25px;width:auto;}
}
@media screen and (max-width:860px) {
#intro #intro-in {padding:350px 0 40px;margin:0 25px;width:auto;}
}
@media screen and (max-width:767px) {
#intro #intro-in {padding:300px 0 40px;margin:0 25px;width:auto;}
}
}
@media screen and (max-width:580px) {
#intro #intro-in {padding:250px 0 40px;margin:0 25px;width:auto;}
}
@media screen and (max-width:500px) {
#intro #intro-in {padding:200px 0 40px;margin:0 25px;width:auto;}
}


/*STORY*/
#story {}
#story #img-story{}
#story #story-in {padding:60px 0 60px;margin:auto;width:1100px;}
#story #story-in h2 {font-size:1.6em;margin-bottom:25px;letter-spacing:.1em;font-weight:600}
#story #story-in .list-story-img {letter-spacing:-.4em;margin:40px auto}
#story #story-in .list-story-img li {display:inline-block;/display:inline;/zoom:1;vertical-align:top;width:48%;}
#story #story-in .list-story-img li:nth-child(1) {margin-right:4%}
#story #story-in #txt-story{text-align:left;}
#story p {margin-bottom:1em;}
@media screen and (max-width:1100px) {
#story #story-in {padding:40px 0 60px;margin:0 30px;width:auto}
}

/*MESSAGECOMMENT*/
#messagecomment {background:#989bb9;color:#fff;padding:60px 0 0 0}
#messagecomment #message {margin:auto;}
#messagecomment #message h2 {font-size:1.6em;margin-bottom:25px;letter-spacing:.1em;font-weight:600}
#messagecomment #message #message-in {padding:30px 0 60px;margin:auto;width:1100px;}
#messagecomment h3 {font-size:1.4em;margin-bottom:25px;letter-spacing:.1em;font-weight:600}
#messagecomment ul li{margin-bottom:40px;}
#messagecomment ul li div.txt-message{margin-bottom:5px;text-align:left}
#messagecomment ul li div.name-message{text-align:right}
#messagecomment ul li div.name-comment{text-align:right;font-size:1.4em;margin-top:10px}
#messagecomment ul li div.name-comment span.txt-s{font-size:.7em;}
#messagecomment #comment {background:#8c8fad}
#messagecomment #comment #comment-in {padding:50px 0 60px;margin:auto;width:1100px;}
@media screen and (max-width:1100px) {
#messagecomment #message #message-in {padding:20px 0 40px;margin:0 25px;width:auto;}
#messagecomment #comment #comment-in {padding:20px 0 40px;margin:0 25px;width:auto;}
}

/*CAST*/
#cast {}
#cast #cast-in {padding:60px 0 60px;margin:auto;width:960px;}
#cast #cast-in h2 {font-size:1.6em;margin-bottom:25px;letter-spacing:.1em;font-weight:600}
#cast #cast-in ul li {margin-bottom:60px;}
#cast #cast-in ul li .cast-top{letter-spacing:-.4em;margin-bottom:30px}
#cast #cast-in ul li .cast-top .img-cast{display:inline-block;/display:inline;/zoom:1;vertical-align:middle;width:32%;letter-spacing:normal;margin-right:3%}
#cast #cast-in ul li .cast-top .txt-cast{display:inline-block;/display:inline;/zoom:1;vertical-align:middle;width:65%;letter-spacing:normal;text-align:left;line-height:1.9em;}
#cast #cast-in ul li .cast-top .txt-cast h3{font-size:1.4em;margin-bottom:15px;font-weight:600}
#cast #cast-in ul li .cast-top .txt-cast h3 span.txt-s{font-size:.7em;}
#cast #cast-in .cast-bottom {text-align:left;line-height:2em;}
@media screen and (max-width:960px) {
#cast #cast-in {padding:40px 0;margin:0 25px;width:auto;}
}
@media screen and (max-width:767px) {
#cast #cast-in ul li .cast-top .img-cast{display:block;width:55%;margin:0 auto 20px}
#cast #cast-in ul li .cast-top .txt-cast{display:block;width:100%;}
#cast #cast-in ul li .cast-top{margin-bottom:20px}
#cast #cast-in ul li .cast-top .txt-cast h3{text-align:center}
.otto {text-align:center}
}

/*STAFF*/
#staff {background:#f1eff2;}
#staff #staff-in {padding:60px 0 60px;margin:auto;width:960px;}
#staff #staff-in h2 {font-size:1.6em;margin-bottom:25px;letter-spacing:.1em;font-weight:600}
#staff #staff-in ul li {margin-bottom:60px;}
#staff #staff-in ul li .img-staff{width:60%;letter-spacing:normal;margin:0 auto 20px}
#staff #staff-in ul li .txt-staff{text-align:left}
#staff #staff-in ul li h3{font-size:1.6em;margin-bottom:15px;font-weight:600;text-align:left;}
#staff #staff-in ul li h3.tit-director{text-align:center;}
#staff #staff-in ul li h3 span.txt-staff-katagaki{font-size:.6em;background:#5d5f7b;color:#fff;padding:1px 10px;font-weight:normal;letter-spacing:.1em;margin-right:8px}
#staff #staff-in ul li p {margin-bottom:1em;}
@media screen and (max-width:960px) {
#staff #staff-in {padding:40px 25px 40px;margin:auto;width:auto;}
}


/*THEATERS*/
#theaters {background:#fff;}
#theaters #theaters-in {width:1100px;margin:auto;color:#000;padding:60px 0 60px;text-align:left;}
#theaters #theaters-in h2 {font-size:1.4em;margin-bottom:20px;text-align:center;letter-spacing:.1em;font-weight:600}
#theaters #theaters-in .txt-day {margin-bottom:25px;text-align:center;}
#theaters #theaters-in .table-theater {width:100%;margin:0 auto 60px;}
#theaters #theaters-in .table-theater th,#theaters #theaters-in .table-theater td {padding:12px 5px;text-align:center;font-size:1em;margin:0;line-height:1.4em;}
#theaters #theaters-in .table-theater td {background:#000;color:#000;background:#fff;}
#theaters #theaters-in .table-theater th {background:#5d5f7b;color:#fff;font-weight:500}
#theaters #theaters-in .table-theater th.th01 {width:15%;}
#theaters #theaters-in .table-theater th.th02 {width:35%;}
#theaters #theaters-in .table-theater td.td02 {text-align:left!important;}
#theaters #theaters-in .table-theater th.th03 {width:25%;}
#theaters #theaters-in .table-theater th.th04 {width:25%;}
#theaters #theaters-in .table-theater td.td-gray{background: #f7f7f7;}
#theaters #theaters-in .table-theater td.td-left{text-align:left;}
#theaters #theaters-in .table-theater td.td-border{border-bottom:1px solid #ccc;}
#theaters #theaters-in .table-theater td.txt-left{text-align:left;}
#theaters #theaters-in .theaters-box{margin-bottom:30px;}
#theaters #theaters-in .theaters-box h3 {font-size:1.2em;margin-bottom:20px;text-align:center;letter-spacing:.1em}
@media screen and (max-width:1100px) {
#theaters #theaters-in {width:auto;margin:0 25px;}
}
@media screen and (max-width: 768px) {
#theaters #theaters-in ul.list-btn li {width:auto;display:inline-block;margin-right:1%;line-height:1.2em;margin-bottom:10px;font-size:.9em;white-space: nowrap}
#theaters #theaters-in ul.list-btn li a {padding:7px 10px; border-radius:15px;}
}
@media screen and (max-width: 360px) {
#theaters #theaters-in .table-theater th,#theaters #theaters-in .table-theater td {padding:10px 0;font-size:0.9em;line-height:1.2em;}
}


/*FOOTER*/
#footer{background-image: url("../img/img_footer.jpg");background-position:center top;background-repeat:no-repeat;background-size:auto;padding:350px 0 0}
#footer #footer-logo{width:500px;margin:0 auto 25px;}
@media screen and (max-width:767px) {
#footer{background-image: url("../img/img_footer_sp.jpg");}
#footer{padding:200px 0 0}
}
@media screen and (max-width:600px) {
#footer #footer-logo{width:80%;}
}
/*BTNSNS*/
.btn-sns {letter-spacing:-.4em;width:5px auto 0;display:block;}
.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:#5d607b;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:#fff;}
.btn-sns li a:hover {opacity: 50%}
@media screen and (max-width:679px) {
.btn-sns {letter-spacing:normal;display:block;width:auto;margin:0 auto 5px;}
.btn-sns li:last-child{margin-right:0;}
}

/*SNSSHARE*/
.sns-block {text-align:center;margin:10px 0 30px;text-align:center;}
.list-sns{height:auto;margin:-7px auto 15px;z-index:8;display:inline-block;/display:inline;/zoom:1;vertical-align:top;width:auto;}
.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:15px}
.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;}
}

/*PHOTO*/
#photo-block{width:1400px;margin:0 auto 40px;}
#photo-block ul{letter-spacing:-.4em}
#photo-block ul li{display:inline-block;/display:inline;/zoom:1;vertical-align:top;letter-spacing:normal;margin-right:2%;width:32%}
#photo-block ul li:last-child{margin-right:0;}
@media screen and (max-width:1400px) {
#photo-block{width:auto;margin:0 15px 30px;}
#photo-block ul li{margin-right:1%;width:32.5%}
}
@media screen and (max-width:767px) {
#photo-block ul li{display:block;margin:0 0 25px;width:100%}
}

#catch-main {width:1100px;margin:0 auto 30px;}
@media screen and (max-width:1100px) {
#catch-main {width:auto;margin:0 25px 30px;}
}

/*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);}


#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:inline-block}
.sp-only{display:none}
}

@media screen and (min-width: 0px) and (max-width:767px) {
.pc-only{display:none}
.sp-only{display:inline-block}
}



