@charset "UTF-8";
/*-------------------------------
共通設定
--------------------------------*/
article.contents {
   width: 100%;
   margin: 0 auto;
 }
.sp article.contents {
   width: 100%;
   margin: 0 auto;
}
#ffm000025 .container {
   width: 100%;
   margin: 0 auto 100px;
   background: #0c2c3b;
   color: #fff;
}
.sp#ffm000025 .container {
   width: 100%;
   margin: 0 auto;
   padding-bottom: 20%;
}
#globalNavi.naviFixed {
   display: none;
}
.container a:hover {
   opacity: .6;
   text-decoration: none;
   cursor: pointer;
   -webkit-transition: all .2s ease-in-out;
      -moz-transition: all .2s ease-in-out;
        -o-transition: all .2s ease-in-out;
           transition: all .2s ease-in-out;
}
div.top {
   position: fixed;
   right: 10px;
   bottom: 100px;
   margin: -3em 0 1em 0;
   text-align: right;
}
/* 画像が暗いので弱めに個別調整 */
#ffm000025 .snapshot .control {
   opacity: .3;
}
#ffm000025 .snapshot .control:hover {
   opacity: 1;
}
/*----------------------------------------------
section #hederG
----------------------------------------------*/
section#hederG {
   background: url(/static/cpn/ffm000025/img/headBg.png) no-repeat center 0;
   /* height: 800px; */
}
section#hederG h1 {
   overflow: visible;
   width: 490px;
   margin: 0 auto;
   padding-top: 142px;
   padding-left: 470px;
   text-indent: 0;
   text-align: left;
   white-space: normal;
}

section#hederG p.subTtl {
   overflow: hidden;
   width: 490px;
   height: 96px;
   margin: 0 auto;
   padding-left: 470px;
   background: url(/static/cpn/ffm000025/img/subTtl.png) no-repeat right 0;
   text-indent: 100%;
   text-align: left;
   white-space: nowrap;
}
section#hederG p.copy {
   overflow: hidden;
   width: 490px;
   height: 46px;
   margin: 0 auto;
   margin-bottom: 32px;
   padding-left: 470px;
   background: url(/static/cpn/ffm000025/img/copy.png) no-repeat right 0;
   text-indent: 100%;
   text-align: left;
   white-space: nowrap;
}
.buyNow {
   margin: 35px 0 0;
   text-align: center;
}
p.buy a {
   display: block;
   position: relative;
   border: 4px solid #fff;
   color: #fff;
   font-size: 26px;
   text-align: center;
   line-height: 67px;
   letter-spacing: 1px;
   width: 451px;
   height: 67px;
   background-color: rgba(175,0,8,0);
}
p.buy a:before {
   display: inline-block;
   position: absolute;
   top: 22px;
   right: 38px;
   width: 24px;
   height: 24px;
   border-radius: 50%;
   background: #fff;
   content: "";
}
p.buy a:after {
   display: inline-block;
   display: inline-block;
   position: absolute;
   top: 25px;
   right: 35px;
   border: 8px solid transparent;
   border-left: 10px solid #0d2d3c;
   content: "";
}
p.buy {
   width: 490px;
   margin: 0 auto;
   padding-bottom: 111px;
   padding-left: 470px;
   text-align: left;
}
section.glovalNavi ul {
   display: -webkit-box;
   display:         flex;
   display: -webkit-flex;

   -webkit-box-pack: justify;
           justify-content: flex-start;
   -webkit-justify-content: flex-start;
}
section.glovalNavi ul li {
   display: inline-block;
   height: 60px;
   line-height: 0;

   -webkit-box-flex: 1;
           flex: auto;
   -webkit-flex: auto;
}
section.glovalNavi ul li a {
   display: block;
   position: relative;
   padding-left: 27px;
   color: #0d2d3c;
   font-size: 21px;
   font-weight: bold;
   text-align: center;
   line-height: 60px;
   letter-spacing: 3px;
}
section.glovalNavi ul li a:after {
   display: inline-block;
   position: absolute;
   top: 25%;
   right: 0;
   width: 1px;
   height: 28px;
   background: #525252;
   content: "";
}
section.glovalNavi ul li a:before {
   display: inline-block;
   width: 0;
   height: 0;
   margin-right: 5px;
   border: 8px solid transparent;
   border-top: 10px solid #0d2d3c;
   border-bottom: 0 solid transparent;
   content: "";
}
section.glovalNavi ul li:last-child a:after {
   display: none;
}

section.glovalNavi ul {
   box-sizing: border-box;
   width: 970px;
   margin: 0 auto;
   background: url(/static/cpn/ffm000025/img/gnav_Bg.png) repeat;
}

section.glovalNavi {
   background: #fff;
   color: #333;
   font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
div#trailer {
    padding-bottom: 36px;
}
section.trailer {
   padding-top: 60px;
   background: #071019;
}
section.trailer h2 {
   font-family: "Rajdhani","Noto Sans Japanese", sans-serif, Arial;
   font-size: 26px;
   font-weight: normal;
   text-align: center;
   line-height: 1.38;
   letter-spacing: 1px;
}
section.presentBox {
   margin-bottom: 50px;
}
.storyBox {
   width: 970px;
   margin: 0 auto;
   padding-top: 60px;
}

section h1:not(.mainTTL) {
   overflow: hidden;
   text-indent: 100%;
   white-space: nowrap;
}
h1.trailTTL {
   margin-bottom: 25px;
   background: url(/static/cpn/ffm000025/img/trailer.png) no-repeat center 0;
   font-size: 42px;
   text-align: center;
   line-height: 1.75;
}
h1.trailTTL span {
   padding: 0 0 0 2%;
   font-size: 50%;
   letter-spacing: 1px;
}

div#movieInfo {
   width: 970px;
   margin: 0 auto;
   padding-bottom: 35px;
}

section#story {
   background: #0c2c3b;
}
.storyBox h1 {
   height: 46px;
   margin-bottom: 57px;
   background: url(/static/cpn/ffm000025/img/story.png) no-repeat center 0;
   font-size: 42px;
   text-align: center;
}
.synopsis figure {
   display: inline-block;
   width: 440px;
   vertical-align: top;
}
.cap {
   display: inline-block;
   width: 508px;
   padding: 0 10px;
   letter-spacing: 0;
}

.synopsis {
   letter-spacing: -.4em;
}

.cap p {
   margin-bottom: 20px;
   font-size: 16px;
   line-height: 1.3;
   letter-spacing: 1px;
}

.scene_photo {
   padding-bottom: 60px;
}

section.related_Movie h1 {
   margin-bottom: 60px;
   background: url(/static/cpn/ffm000025/img/related.jpg) no-repeat center 0;
   font-size: 42px;
   text-align: center;
}
.coupon {
   padding: 60px 0;
   text-align: center;
}

.coupon p.buy {
   padding-left: 0;
   padding-bottom: 0;
}
section.related_Movie h2 {
   font-size: 29px;
   text-align: center;
   line-height: 1.75;
}
.works {
   width: 970px;
   margin: 0 auto;
   padding-top: 60px;
}
.into_copyright {
        height: 20px;
        background: url(/static/cpn/ffm000025/img/copyFoot.png) no-repeat right bottom;
        font-size: 42px;
        text-align: center;
        overflow: hidden;
        text-indent: 100%;
        white-space: nowrap;
}


/*----------------------------------------------
section.trailer
----------------------------------------------*/
li.videoBox.snapshot.active {
   width: 600px;
   margin: 0 auto 20px;
}
.related_SF {
   display: -webkit-box;
   display:         flex;
   display: -webkit-flex;

   -webkit-box-pack: justify;
           justify-content: space-around;
   -webkit-justify-content: space-around;
           flex-wrap: wrap;
   -webkit-flex-wrap: wrap;
}

.related_SF dl {
   -webkit-box-sizing: border-box;
           box-sizing: border-box;
   width: 20%;
   text-align: center;
}
.related_SF dl:hover img {
   box-shadow: 0 1px  30px #4567ac;
}
.related_SF dl a:hover {
   opacity: 1;
}
.related_SF dl h3 {
   margin-bottom: 12px;
   padding-top: 10px;
   line-height: 1.3;
}
.related_SF dt img {
   width: 88%;
   border: 1px solid rgba(255, 255, 255, .54);
}


.related_SF dl h3 a {
   display: block;
   color: #fff;
   font-size: 12px;
   text-align: center;
}
.pc .trailermovie.video.h360 {
    width: 640px;
    margin: 0 auto;
}
/*--------------------------------------------------------------
   SP
---------------------------------------------------------------*/
.sp article.contents {
   width: 100%;
   margin: 0 auto;
   background-size: contain;
}
article.contents img {
   width: 100%;
}
.sp article.contents {
   width: 100%;
   margin: 0 auto;
}
.sp #ffm000025 .container {
   width: 100%;
   margin: 0 auto 10%;
   background: #000106 url(/static/cpn/ffm000025/img/main_bg.jpg) repeat-x 90% 0;
   background-size: contain;
   color: #fff;
   font-family: "Rajdhani","Noto Sans Japanese", sans-serif, Arial;
}
.sp .sp#ffm000025 .container {
   width: 100%;
   margin: 0 auto 30%;
}

/*----------------------------------------------
section #hederG
----------------------------------------------*/
.sp section#hederG {
   background: url(/static/cpn/ffm000025/img/headBg.png) no-repeat 0 0;
   background-size: contain;
}
.sp section#hederG h1 {
   overflow: visible;
   width: 50vw;
   margin: 0 auto;
   padding-top: 12vw;
   padding-left: 48vw;
   text-indent: 0;
   text-align: left;
   white-space: normal;
}
.sp section#hederG p.subTtl {
   overflow: hidden;
   width: 50vw;
   height: 11vw;
   margin: 0 auto;
   padding-left: 48vw;
   background: url(/static/cpn/ffm000025/img/subTtl.png) no-repeat right 0;
   background-size: contain;
   text-indent: 100%;
   text-align: left;
   white-space: nowrap;
}
.sp section#hederG p.copy {
   overflow: hidden;
   width: 50vw;
   height: 4.5vw;
   margin: 0 auto;
   margin-bottom: 3%;
   padding-left: 48vw;
   background: url(/static/cpn/ffm000025/img/copy.png) no-repeat right 0;
   background-size: contain;
   text-indent: 100%;
   text-align: left;
   white-space: nowrap;
}
.sp .buyNow {
   margin: 35px 0 0;
   text-align: center;
}
.sp p.buy a {
   display: block;
   position: relative;
   width: 50vw;
   margin: 0 auto;
   border: 3px solid #fff;
   color: #fff;
   font-size: 110%;
   text-align: center;
   line-height: 2;
   letter-spacing: 1px;
   height: 9vw;
   padding-right: 0.5em;
}
.sp p.buy a:before {
   display: inline-block;
   position: absolute;
   top: 0.5em;
   right: .5em;
   width: 1em;
   height: 1em;
   border-radius: 50%;
   background: #fff;
   content: "";
}
.sp p.buy a:after {
   display: inline-block;
   position: absolute;
   top: 0.7em;
   right: .45em;
   border: 4px solid transparent;
   border-left: 6px solid #0d2d3c;
   content: "";
}
.sp p.buy {
   width: 90%;
   margin: 0 auto;
   padding-bottom: 5vw;
   padding-left: 0;
   text-align: left;
}
.sp section.glovalNavi ul {
   display: -webkit-box;
   display:         flex;
   display: -webkit-flex;

   -webkit-box-pack: justify;
           justify-content: flex-start;
   -webkit-justify-content: flex-start;
}
.sp section.glovalNavi ul li {
   display: inline-block;
   height: 6vw;
   line-height: 0;

   -webkit-box-flex: 1;
           flex: auto;
   -webkit-flex: auto;
}
.sp section.glovalNavi ul li a {
   display: block;
   position: relative;
   padding-left: 2vw;
   color: #0d2d3c;
   font-size: 21px;
   font-weight: bold;
   text-align: center;
   line-height: 6%;
   letter-spacing: 3px;
}
.sp section.glovalNavi ul li a:after {
   display: inline-block;
   position: absolute;
   top: 25%;
   right: 0;
   width: 1px;
   height: 28px;
   background: #525252;
   content: "";
}
.sp section.glovalNavi ul li a:before {
   display: inline-block;
   width: 0;
   height: 0;
   margin-right: 5px;
   border: 8px solid transparent;
   border-top: 1% solid #0d2d3c;
   border-bottom: 0 solid transparent;
   content: "";
}
.sp section.glovalNavi ul li:last-child a:after {
   display: none;
}
.sp section.glovalNavi ul {
   box-sizing: border-box;
   width: 97%;
   margin: 0 auto;
   background: url(/static/cpn/ffm000025/img/gnav_Bg.png) repeat;
   background-size: contain;
}
.sp section.glovalNavi {
   background: #fff;
   color: #333;
   font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.sp section.trailer {
   padding-top: 6%;
   background: #071019;
}
.sp div#trailer {
    padding-bottom: 3%;
}
.sp section.trailer h2 {
   font-family: "Rajdhani","Noto Sans Japanese", sans-serif, Arial;
   font-size: 120%;
   font-weight: normal;
   text-align: center;
   line-height: 1.75;
   letter-spacing: 1px;
}
.sp section.presentBox {
   margin-bottom: 5%;
}
.sp .storyBox {
   width: 97%;
   margin: 0 auto;
   padding-top: 6%;
}

.sp h1.trailTTL {
   margin-bottom: 4%;
   background: url(/static/cpn/ffm000025/img/trailer.png) no-repeat 6% 0;
   background-size: contain;
   font-size: 100%;
   text-align: center;
   line-height: 1.75;
}
.sp h1.trailTTL span {
   padding: 0 0 0 2%;
   font-size: 50%;
   letter-spacing: 1px;
}
.sp div#movieInfo {
   width: 97%;
   margin: 0 auto;
   padding-bottom: 6%;
}
.sp section#story {
   background: #0c2c3b;
   /* padding-bottom: 6%; */
}
.sp .storyBox h1 {
   height: auto;
   margin-bottom: 6%;
   background: url(/static/cpn/ffm000025/img/story.png) no-repeat 6% 0;
   background-size: contain;
   font-size: 100%;
   text-align: center;
   line-height: 1.75;
}
.sp .synopsis figure {
   display: inline-block;
   width: 84%;
   padding: 0 8%;
   vertical-align: top;
}
.sp .cap {
   display: inline-block;
   width: 96%;
   padding: 0 1%;
   letter-spacing: 0;
}
.sp .synopsis {
   letter-spacing: -.4em;
}
.sp .cap p {
   margin-bottom: 2%;
   font-size: 94%;
   line-height: 1.75;
   letter-spacing: 0;
}
.sp .scene_photo {
   padding-bottom: 6%;
}
.sp section.related_Movie h1 {
   height: auto;
   margin-bottom: 6%;
   background: url(/static/cpn/ffm000025/img/related.jpg) no-repeat center 0;
   background-size: contain;
   font-size: 150%;
   text-align: center;
   line-height: 1.75;
}
.sp .coupon {
   padding: 6% 0;
   text-align: center;
}
.sp .coupon p.buy {
   padding-left: 0;
}
.sp section.related_Movie h2 {
   font-size: 110%;
   text-align: center;
   line-height: 1.75;
}
.sp .works {
   width: 97%;
   margin: 0 auto;
   padding-top: 6%;
}
/*----------------------------------------------
section.trailer
----------------------------------------------*/
.sp li.videoBox.snapshot.active {
   width: 96%;
   margin: 0 auto 2%;
}
.sp .related_SF {
   display: -webkit-box;
   display:         flex;
   display: -webkit-flex;

   -webkit-box-pack: justify;
           justify-content: space-around;
   -webkit-justify-content: space-around;
           flex-wrap: wrap;
   -webkit-flex-wrap: wrap;
}
.sp .related_SF dl {
   -webkit-box-sizing: border-box;
           box-sizing: border-box;
   width: 20%;
   text-align: center;
}
.sp .related_SF dl:hover img {
   box-shadow: 0 1px  3% #4567ac;
}
.sp .related_SF dl a:hover {
   opacity: 1;
}
.sp .related_SF dl h3 {
   margin-bottom: 12px;
   padding-top: 1%;
   line-height: 1.3;
}
.sp .related_SF dt img {
   width: 88%;
   border: 1px solid rgba(255, 255, 255, .54);
}
.sp .related_SF dl h3 a {
   display: block;
   color: #fff;
   font-size: 12px;
   text-align: center;
}
section.related_Movie {
   background: #071019;
}
.sp .scene_photo p {
        width: 98%;
        overflow:hidden;
        text-indent:100%;
        white-space:nowrap;
        margin: 0 auto;
        padding: 0 1% 0;
        padding-bottom: 37vh;
        background: url("/static/cpn/ffm000025/img/movieImage.png") repeat-x;
        background-position: 0 98%;
        background-size: 200%;
        -webkit-animation: mtion 10s linear 0s infinite;
        -moz-animation: mtion 10s linear 0s infinite;
        -ms-animation: mtion 10s linear 0s infinite;
        -o-animation: mtion 10s linear 0s infinite;
        animation: mtion 10s linear 0s infinite;
}
@keyframes mtion{0%{background-position:0 98%}50%{background-position:50% 98%}100%{background-position:100% 98%}}@-moz-keyframes mtion{0%{background-position:0 98%}50%{background-position:50% 98%}100%{background-position:100% 98%}}@-webkit-keyframes mtion{0%{background-position:0 98%}50%{background-position:50% 98%}100%{background-position:100% 98%}}@-o-keyframes mtion{0%{background-position:0 98%}50%{background-position:50% 98%}100%{background-position:100% 98%}}@-ms-keyframes mtion{0%{background-position:0 98%}50%{background-position:50% 98%}100%{background-position:100% 98%}}
.sp .into_copyright {
        height: 20px;
        background: url(/static/cpn/ffm000025/img/copyFoot.png) no-repeat right bottom;
        background-size:contain;
        font-size: 42px;
        text-align: center;
        overflow: hidden;
        text-indent: 100%;
        white-space: nowrap;
}
/*============================================================
player fit
============================================================*/
.fitWindows header {
   display: none;
}
.fitWindows #globalNavi {
   display: none;
}
.fitWindows #headerUtility {
   display: none;
}
.fitWindows footer {
   display: none;
}
.fitWindows article.contents section {
   display: none;
   margin: 0;
}
.fitWindows article.contents section div#movieInfo .trailTTL {
   display: none;
   margin: 0;
}
.fitWindows article.contents section.trailer {
   display: block;
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: auto;
}
.fitWindows article.contents section.trailer h2,
.fitWindows div.container section.trailer div.txt,
.fitWindows div.container section.trailer div.notice {
   display: none !important;
}
.fitWindows article.contents section.trailer {
   margin: 0;
   padding: 0;
   background: none;
}
.fitWindows article.contents section.trailer div.trailermovie,
.fitWindows article.contents section.trailer li.player {
   display: block;
}
.fitWindows article.contents section.trailer div.trailermovie,
.fitWindows article.contents section.trailer li.player,
.fitWindows article.contents section.trailer div#silverlightControlHost {
   display: block;
   overflow: hidden;
   width: 100%;
   height: auto;
}
.fitWindows .container div#movieInfo {
   display: block;
   width: 100%;
}
.fitWindows #Rak_Showtime_Top_FBanner {
   display: none;
}

/* cpnInfo
------------------------------------------------------------*/
.cpnInfo table a {
   border-bottom: 1px solid #ff5722;
   color: #5eb5f8;
}.cpnInfo {
   margin: 0 auto 20px;
}.cpnInfo .header {
   margin-bottom: 1em;
}.cpnInfo .header img {
   width: 100%;
}.cpnInfo div.img {
   max-width: 980px;
   width: 100%;
   margin: 0 auto;
}.cpnInfo div.img div {
   background: #edecec;
}.cpnInfo div.img div a {
   display: block;
   max-width: 790px;
   width: 80%;
   margin: 0 auto 2em;
}.cpnInfo div.img img {
   width: 100%;
   margin-bottom: 1em;
}.cpnInfo table {
   max-width: 970px;
   width: 100%;
   margin: 0 auto;
}.cpnInfo th {
   width: 20%;
   /* background: #272727; */
}.cpnInfo .title {
   overflow: visible;
   max-width: 970px;
   width: 100%;
   margin: 0 auto;
   padding: 10px 0 7px;
   background: #c01920;
   color: #fff;
   font-size: 130%;
   text-indent: 0;
   text-align: center;
   white-space: normal;
}.cpnInfo td {
   width: 80%;
}.cpnInfo table,
.cpnInfo td,
.cpnInfo th {
   padding: 15px;
   border: 1px solid #ccc;
   text-align: left;
   vertical-align: middle;
   line-height: 1.5;
}.cpnInfo table strong,
.cpnInfo td strong,
.cpnInfo th strong {
   display: block;
}.cpnInfo table p,
.cpnInfo td p,
.cpnInfo th p {
   margin-bottom: 1em;
}@media screen and (max-width:641px) {
   .cpnInfo table,
   .cpnInfo td,
   .cpnInfo th {
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      width: 94%;
      padding: 5px;
      border: none;
   }.cpnInfo td,
   .cpnInfo th {
      display: block;
      width: 100%;
   }
   .cpnInfo th{background: rgba(192, 25, 32, 0.6);}.cpnInfo td {
      margin-bottom: 1em;
   }.cpnInfo .title {
      margin: 0 auto 2%;
      font-size: 100%;
   }
}
