@charset "UTF-8";
/*-------------------------------
共通設定
--------------------------------*/
h1.cmsoon {
        font-size: 200%;
        margin: 5%;
        text-align: center;
}
#jfm000020 .container {
   width: 100%;
   margin: 0 auto 100px;
   background: #fff;
   color: #fff;
}
.sp#jfm000020 .container {
   width: 100%;
   margin: 0 auto;
   padding-bottom: 20%;
}
.container {
   width: 970px;
   margin: 0 auto;
}
.sp .container {
   width: 100%;
   margin: 0;
}


.container section {
   width: 970px;
   margin: 0 auto;
}
.sp .container section {
   width: 100%;
   margin: 0;
}
#globalNavi.naviFixed {
   display: none;
}
.container a:hover {
   opacity: .6;
   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;
}
/* 画像が暗いので弱めに個別調整 */
#jfm000020 .snapshot .control {
   opacity: .5;
}
#jfm000020 .snapshot .control:hover {
   opacity: 1;
}

.mincho{
   font-weight: 500;
   font-family: "游明朝" , "Yu Mincho" ,"Roboto Slab" , Garamond , "Times New Roman" ,  "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
}

/*----------------------------------------------
section #hederG
----------------------------------------------*/

section#hederG .mainimg{
   display: inline-block;
}

section#hederG .maininfo{
   display: inline-block;
   width: 479px;
   vertical-align: top;
   position: relative;
   text-align: center;
}
section#hederG .maininfo h1{
   display: inline-block;
   margin:8% auto 5%;
   margin-left: 30px; 
}
section#hederG .maininfo h2{
   display: inline-block;
    margin:0 auto 3%;
   margin-left:30px; 
}
section#hederG .maininfo div.buyNow{
   background-color: ccc;
}

/*-------------------------------
ボタン
--------------------------------*/
section#hederG .maininfo .button {
   width: 80%;
   display: block;
   -webkit-border-radius: 5px;
   -moz-border-radius: 5px;
   -ie-border-radius: 5px;
   border-radius: 5px;
   font-size: 22px;
   -webkit-transition-property: background-color;
   -webkit-transition-duration: .15s;
   -webkit-transition-timing-function: ease-in-out;
   cursor: pointer;
   margin:0 auto;
   margin-bottom: 20px;
   text-decoration: none;
   line-height: 1.3;
   padding: 24px 20px;
}
section#hederG .maininfo .button:active {
   margin-top: 5px;
   margin-bottom: 15px;
}
section#hederG .maininfo .button p {
   color: #fff;
   vertical-align: middle;
   display: inline-block;
}
section#hederG .maininfo .icon {
   width: 29px;
   height: 29px;
   -webkit-border-radius: 13px;
   -moz-border-radius: 13px;
   -ie-border-radius: 13px;
   border-radius: 13px;
   float: right;
   background: #fff;
}
section#hederG .maininfo .arrow {
   margin: 7px 0px 0 10px;
   -webkit-border-style: solid;
   -moz-border-style: solid;
   -ie-border-style: solid;
   border-style: solid;
   width: 0;
   height: 0;
   border-width: 8px 8px 8px 13px;
}
section#hederG .maininfo .color {
   background-color: #d60a3f;
   box-shadow: 0px 5px 0px 0px #3a3a3a;
}
section#hederG .maininfo .color:active {
   background-color: #d60a3f;
   -webkit-box-shadow: 0px 0px 0px 1px #d60a3f inset, 0px 0px 0px 0px #d60a3f inset, 0px 1px 0px 0px #d60a3f, 0px 0px 0px 0px rgba(0,0,0,.15);
   -moz-box-shadow: 0px 0px 0px 1px #d60a3f inset, 0px 0px 0px 0px #d60a3f inset, 0px 1px 0px 0px #d60a3f, 0px 0px 0px 0px rgba(0,0,0,.15);
   -ie-box-shadow: 0px 0px 0px 1px #d60a3f inset, 0px 0px 0px 0px #d60a3f inset, 0px 1px 0px 0px #d60a3f, 0px 0px 0px 0px rgba(0,0,0,.15);
   box-shadow: 0px 0px 0px 1px #d60a3f inset, 0px 0px 0px 0px #d60a3f inset, 0px 1px 0px 0px #d60a3f, 0px 0px 0px 0px rgba(0,0,0,.15);
}
section#hederG .maininfo .color .arrow {
   border-color: transparent transparent transparent #d60a3f;
}

/*----------------------------------------------
section .glovalNavi
----------------------------------------------*/

section.glovalNavi {
   margin-top: 30px;
   margin-bottom: 40px;
   padding: 6px 0;
   background: #e5e5e5;
}

section.glovalNavi ul {
   display: -webkit-box;
   display:         flex;
   display: -webkit-flex;
   width: 970px;
   text-align: center;
   /* border-top: 3px solid #fff; */
   /* border-bottom: 3px solid #fff; */
   letter-spacing: 0;

   -webkit-box-pack: justify;
           justify-content: space-between;
   -webkit-justify-content: space-between;
}
section.glovalNavi ul li {
   display: inline-block;
   color: #000;
   background: #fff;
   margin: 4px;
   font-size: 30px;
   text-align: center;

   -webkit-box-flex: 1;
           flex: auto;
   -webkit-flex: auto;
}
section.glovalNavi ul li:first-child{
   margin-left:15px;
}
section.glovalNavi ul li:last-child{
   margin-right:15px;
}
section.glovalNavi ul li a {
   display: inline-block;
   -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
           box-sizing: border-box;
   width: 98%;
   color: #000;
   font-weight: bold;
   text-decoration: none;
   line-height: 46px;
   margin-left:15px;
}
section.glovalNavi ul li a::after {
   display: inline-block;
   width: 0;
   height: 0;
   margin:23px 10px 0;
   border-top: 8px solid #000;
   border-right:  6px solid transparent;
   border-bottom: 6px solid transparent;
   border-left: 6px solid transparent;
   content: "";
}

/*----------------------------------------------
section h2 タイトル
----------------------------------------------*/

#movieInfo h2,
#introduction h2,
#related h2 {
   height: 45px;
   font-size: 32px;
   margin-top: 10px;
   margin-bottom: 30px;
   padding-top: 10px;
   border:solid 2px #000;
   text-align: center;
}

/*----------------------------------------------
trailer_box
----------------------------------------------*/
.trailer_box:after {
   display: block;
   clear: both;
   content: "";
}
div#movieInfo h3 {
   margin: 16px auto 20px;
   padding-top: 10px;
   font-size: 32px;
   font-weight: normal;
   text-align: center;
   line-height: 1.3;
}
.trailer_box .trailermovie {
   width: 640px;
   margin: 10px auto 20px;
   border: solid #e5e5e5 15px
}
.tralerBox .prevew a {
   display: block;
}
.trailer_box img {
   width: 640px;
   vertical-align: bottom;
}

div#movieInfo h3 {
   margin: 16px auto 20px;
   padding-top: 10px;
   font-size: 32px;
   font-weight: normal;
   text-align: center;
   line-height: 1.3;
}

/*--------------------------------------------------------------
    作品紹介
---------------------------------------------------------------*/

section#introduction h3 {
   font-size: 28px;
   border-bottom:solid 2px #000;
   text-align: left;
   line-height: 1.5;
   letter-spacing: -0.1em;
}

section#introduction h3 span.square{
   width: 40px;
   height: 40px;
   margin:0  10px -12px 0;
   display: inline-block;
   background: #000;
}
section#introduction .intro-box{
   background: #eee;
   padding:30px 25px;
   margin-bottom: 50px;
}

section#introduction .intro-box .int-img{
   display: inline-block;
   vertical-align: top;
}

section#introduction .intro-box .int-txt{
   display: inline-block;;
   width: 48%;
   margin-left: 2%;
}

/*--------------------------------------------------------------
    関連作品
---------------------------------------------------------------*/
section#related h3{
   font-size:36px;
   color:#000;
   margin-bottom:10px;
   text-align: center;
}



section#related h4{
   font-size:26px;
   color:#000;
   margin-bottom:30px;
}

section#related h4 span{
   color:#ff0000;
   font-weight: bold;
}

section.relatedMovies ul {
   text-align: center;
   background: #eee;
   width: 100%
}

section.relatedMovies ul li {
   display: inline-block;
   margin: 20px 5px;
}

section.relatedMovies ul li a:hover img {
   -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;
   }

section#related h3.tv{
   margin-top:50px;
   margin-bottom:10px; 
   border-bottom: solid 2px #000;
}
section.relatedMovies ul.tv{
   background: #fff;
}

section.relatedMovies ul.tv li {
   display: inline-block;
   margin: 20px 10px 50px;
}

section.relatedMovies .caution{
   text-align: center;
   font-size: 12px;
}

/*.coupon {
   padding-bottom: 40px;
   text-align: center;
}*/


/*--------------------------------------------------------------
    SP
---------------------------------------------------------------*/

.sp .container img {
   width: 100%;
}

/*----------------------------------------------
section #hederG  sp
----------------------------------------------*/

.sp section#hederG .mainimg{
   display: inline-block;
   width: 100%;
}

.sp section#hederG .maininfo{
   display: inline-block;
   width: 100%;
   vertical-align: top;
   position: relative;
   text-align: center;
}
.sp section#hederG .maininfo h1{
   display: inline-block;
   margin:8% 4% 5% 13%;
}
.sp section#hederG .maininfo h2{
   display: inline-block;
    margin:0 4% 9% 13%;
}
.sp section#hederG .maininfo div.buyNow{
   background-color: ccc;
}

/*-------------------------------
ボタン  sp
--------------------------------*/
.sp section#hederG .maininfo .button {
   width: 80%;
   display: block;
   -webkit-border-radius: 5px;
   -moz-border-radius: 5px;
   -ie-border-radius: 5px;
   border-radius: 5px;
   font-size: 22px;
   -webkit-transition-property: background-color;
   -webkit-transition-duration: .15s;
   -webkit-transition-timing-function: ease-in-out;
   cursor: pointer;
   margin:0 auto;
   margin-bottom: 20px;
   text-decoration: none;
   line-height: 1.3;
   padding: 6% 7%;
}
.sp section#hederG .maininfo .button:active {
   margin-top: 5px;
   margin-bottom: 15px;
}
.sp section#hederG .maininfo .button p {
   width: 78%;
   color: #fff;
   vertical-align: middle;
   display: inline-block;
}
.sp section#hederG .maininfo .button span {
   display: block;
}
.sp section#hederG .maininfo .icon {
   width: 29px;
   height: 29px;
   -webkit-border-radius: 13px;
   -moz-border-radius: 13px;
   -ie-border-radius: 13px;
   border-radius: 13px;
   float: right;
   background: #fff;
   margin-top: 5%;
}
.sp section#hederG .maininfo .arrow {
   margin: 7px 0px 0 10px;
   -webkit-border-style: solid;
   -moz-border-style: solid;
   -ie-border-style: solid;
   border-style: solid;
   width: 0;
   height: 0;
   border-width: 8px 8px 8px 13px;
}
.sp section#hederG .maininfo .color {
   background-color: #d60a3f;
   box-shadow: 0px 5px 0px 0px #3a3a3a;
}
.sp section#hederG .maininfo .color:active {
   background-color: #d60a3f;
   -webkit-box-shadow: 0px 0px 0px 1px #d60a3f inset, 0px 0px 0px 0px #d60a3f inset, 0px 1px 0px 0px #d60a3f, 0px 0px 0px 0px rgba(0,0,0,.15);
   -moz-box-shadow: 0px 0px 0px 1px #d60a3f inset, 0px 0px 0px 0px #d60a3f inset, 0px 1px 0px 0px #d60a3f, 0px 0px 0px 0px rgba(0,0,0,.15);
   -ie-box-shadow: 0px 0px 0px 1px #d60a3f inset, 0px 0px 0px 0px #d60a3f inset, 0px 1px 0px 0px #d60a3f, 0px 0px 0px 0px rgba(0,0,0,.15);
   box-shadow: 0px 0px 0px 1px #d60a3f inset, 0px 0px 0px 0px #d60a3f inset, 0px 1px 0px 0px #d60a3f, 0px 0px 0px 0px rgba(0,0,0,.15);
}
.sp section#hederG .maininfo .color .arrow {
   border-color: transparent transparent transparent #d60a3f;
}

/*----------------------------------------------
section .glovalNavi  sp
----------------------------------------------*/

.sp section.glovalNavi {
   margin-top: 30px;
   margin-bottom: 40px;
   padding: 6px 0;
   background: #e5e5e5;
}

.sp section.glovalNavi ul {
   display: -webkit-box;
   display:         flex;
   display: -webkit-flex;
   width: 970px;
   text-align: center;
   /* border-top: 3px solid #fff; */
   /* border-bottom: 3px solid #fff; */
   letter-spacing: 0;

   -webkit-box-pack: justify;
           justify-content: space-between;
   -webkit-justify-content: space-between;
}
.sp section.glovalNavi ul li {
   display: inline-block;
   color: #000;
   background: #fff;
   margin: 4px;
   font-size: 30px;
   text-align: center;

   -webkit-box-flex: 1;
           flex: auto;
   -webkit-flex: auto;
}
.sp section.glovalNavi ul li:first-child{
   margin-left:15px;
}
.sp section.glovalNavi ul li:last-child{
   margin-right:15px;
}
.sp section.glovalNavi ul li a {
   display: inline-block;
   -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
           box-sizing: border-box;
   width: 98%;
   color: #000;
   font-weight: bold;
   text-decoration: none;
   line-height: 46px;
   margin-left:15px;
}
.sp section.glovalNavi ul li a::after {
   display: inline-block;
   width: 0;
   height: 0;
   margin:23px 10px 0;
   border-top: 8px solid #000;
   border-right:  6px solid transparent;
   border-bottom: 6px solid transparent;
   border-left: 6px solid transparent;
   content: "";
}

/*----------------------------------------------
section h2 タイトル  sp
----------------------------------------------*/

.sp #movieInfo h2,
.sp #introduction h2,
.sp #related h2 {
   height: 45px;
   font-size: 32px;
   margin:0 4%;
   margin-top: 10%;
   margin-bottom: 5%;
   padding-top: 10px;
   border:solid 2px #000;
   text-align: center;

}


/*----------------------------------------------
trailer_box  sp
----------------------------------------------*/
.sp .trailer_box:after {
   display: block;
   clear: both;
   content: "";
}

.sp div#movieInfo h3 {
   margin:0 4%;
   margin: 16px auto 20px;
   padding-top: 10px;
   font-size: 30px;
   font-weight: normal;
   text-align: center;
   line-height: 1.3;
}


.sp .trailer_box .trailermovie {
   width: 640px;
   margin: 10px auto 20px;
   box-sizing: border-box;
}

.sp .tralerBox .prevew a {
   display: block;
}

.sp .trailer_box img {
   width: 640px;
   vertical-align: bottom;
}

/*--------------------------------------------------------------
    作品紹介  sp
---------------------------------------------------------------*/

.sp section#introduction h3 {
   font-size: 28px;
   margin:0 4%;
   border-bottom:solid 2px #000;
   text-align: left;
   line-height: 1.5;
   letter-spacing: -0.1em;
}

.sp section#introduction h3 span.square{
   width: 40px;
   height: 40px;
   margin:0  10px -12px 0;
   display: inline-block;
   background: #000;
}
.sp section#introduction .intro-box{
   background: #eee;
   padding:30px 25px;
   margin:0 4%;
   margin-bottom:10%;
}

.sp section#introduction .intro-box .int-img{
   display: block;
   vertical-align: top;
}

.sp section#introduction .intro-box .int-txt{
   display: block;;
   width: 100%;
   margin-left: 0;
   box-sizing: border-box;
   padding: 10px 0;

}

.sp #introduction p.movieIntro_4 {
   margin-bottom: 35px;
   text-align: left;
}
.sp #introduction p.movieIntro {
   width: 521px;
   margin: 0 0 2px;
   font-size: 14px;
   line-height: 1.75;
}
#introduction p,
.sp section#story p {
   /* font-weight: bold; */
   margin: 0 0 10px;
   font-size: 14px;
   line-height: 1.75;
}

/*----------------------------------------------
trailer_box  sp
----------------------------------------------*/
.sp .trailer_box:after {
   display: block;
   clear: both;
   content: "";
}
.sp .trailer_box .trailermovie {
   width: 64%;
   margin: 1% auto 2%;
}
.sp .tralerBox .prevew a {
   display: block;
}
.sp .trailer_box img {
   width: 64%;
   vertical-align: bottom;
}

/*----------------------------------------------
関連作品  sp
----------------------------------------------*/

.sp section#related h3{
   font-size:28px;
   color:#000;
   margin:0 4%;
   margin-bottom:8%;
   text-align: center;
}



.sp section#related h4{
   font-size:24px;
   color:#000;
   margin:0 4%;
   margin-bottom:10%;
   text-align: center
}

.sp section#related h4 span{
   color:#ff0000;
   font-weight: bold;
}

.sp section.relatedMovies ul {
   text-align: center;
   background: #eee;
   width: 100%
}

.sp section.relatedMovies ul li {
   display: inline-block;
   width:44%;
   margin: 4% 2%;
}

.sp section.relatedMovies ul li a:hover img {
   -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;
   }

.sp section#related h3.tv{
   margin-top:50px;
   margin-bottom:10px; 
   border-bottom: solid 2px #000;
}
.sp section.relatedMovies ul.tv{
   background: #fff;
}

.sp section.relatedMovies ul.tv li {
   display: inline-block;
   width:90%;
   margin: 4% 0;
}

.sp section.relatedMovies .caution{
   text-align: center;
   font-size: 12px;
   width:90%;
   margin: 0 auto;
}


/*----------------------------------------------
section .glovalNavi
----------------------------------------------*/

.sp section.glovalNavi {
   height: 5%;
   margin-bottom: 4%;
   padding: 1% 0;
   background: #052338;
   /* letter-spacing: -.4em; */
}

.sp section.glovalNavi ul {
   display: -webkit-box;
   display:         flex;
   display: -webkit-flex;
   border-top: 3px solid #fff;
   border-bottom: 3px solid #fff;
   text-align: center;
   letter-spacing: 0;

   -webkit-box-pack: justify;
           justify-content: space-around;
   -webkit-justify-content: space-around;
}
.sp section.glovalNavi ul li {
   display: inline-block;
   color: #fff;
   font-size: 100%;
   text-align: center;

   -webkit-box-flex: 1;
           flex: auto;
   -webkit-flex: auto;
}
.sp section.glovalNavi ul li a {
   display: block;
   width: 88%;
   padding: 0 6%;
   color: #fff;
   text-decoration: none;
   line-height: 46px;
}
.sp section.glovalNavi ul li:not(:last-child) {
   border-right: 1px dotted rgba(255, 255, 255, 1);
}
.sp section.glovalNavi ul li a:after {
   display: inline-block;
   width: 1em;
   height: 1em;
   padding-left: 4%;
   background: url(/static/cpn/jfm000020/img/allow.png) no-repeat bottom;
   background-size: contain;
   content: "";
}

/*============================================================
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 {
   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: rgba(238,238,238,0.2);
}.cpnInfo .title {
   padding: 10px 0 7px;
   background: #c01920;
   color: #fff;
   font-size: 130%;
   text-align: center;
}.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 td {
      margin-bottom: 1em;
   }.cpnInfo .title {
      margin: 0 auto 2%;
      font-size: 100%;
   }
}

