@charset "utf-8";

html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    width:100%;
    height:100%;
    min-height: 100%;
     background: #000;

}

body {
    width:100%;
    height: auto;
    min-height: 100%;
    margin: 0;
    padding: 0;
    font-size: 16px;
        font-feature-settings: 'palt';
    color: #fff;
 font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Sans", メイリオ, Meiryo, "Noto Sans JP", ヒラギノ角ゴシック, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
background: url(../img/bg.jpg)no-repeat top center;
background-size: cover;
background-attachment: fixed;


}

a {
    color:#faff78;
text-decoration: underline;
}

a:hover,
a:active {
    text-decoration: underline;
    opacity: 0.7;
}


#link a {
    text-decoration: none;
}

p {
    margin: 0;
    padding: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
    display: block;
}

* {
    box-sizing: border-box;
}

img {
    vertical-align: bottom;
}



#wrapper{
    width:100%;
    min-height:100%;
    margin:0;
    padding:0;
       text-align: center;
background-image: linear-gradient(#000,#000,rgba(0, 0, 0, 0));
background-attachment: fixed;
 
}





.sp{
    display: none;
    margin: 0;
    padding: 0;
}

.pc{
    display: inline;
    margin: 0;
    padding: 0;
}




.contents {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
}






#header{
    width: 100%;
    text-align: center;
    margin:0 auto;
padding:30px 0 0;
position: relative;


}



h1 {
    margin:0 auto 1em;
    padding:0;
}



h2 {
    margin:0 auto;
    padding:0;
    line-height: 1.2;

}




#main {

    margin: 0 auto;
    padding:1em 0 0;
    position: relative;
    z-index: 500;
        text-align: center;

}



#lead {
max-width: 780px;
    text-align: center;
    line-height: 1.6em;
    margin: 1em auto 2em;
    padding: 1em;
    font-size: 100%;
    position: relative;
    z-index: 300;
color: #fff;

}



#lead p:last-of-type{
    margin:1em auto;
    padding:1em;
    width: 80%;
    background: #a10000;
background-image: linear-gradient(0deg,rgba(0, 0, 0, 0.8),rgba(0, 0, 0, 0));
color:#fff;
font-weight: bold;
font-size: 110%;
        border-image: linear-gradient(to right, #707070, #c5c5c5, #f7f7f7, #c5c5c5, #707070);
    border-image-slice: 1;
      border-style: solid;
    border-width: 1px 1px 1px 1px;

}
#lead ul{
margin: 1em auto 0;
padding: 0;
text-align: center;
list-style-type: none;
font-size: 90%;
color: #fff100;
line-height: 1.5;

}
#lead ul li{
margin: 0 0 5px;
padding: 0;
}

#lead ul li:before{
content: '※';
margin: 0 0 0 -1em;
}


#lead.notice{
        background: #a10000;
        border-image: linear-gradient(to right, #707070, #c5c5c5, #f7f7f7, #c5c5c5, #707070);
    border-image-slice: 1;
      border-style: solid;
    border-width: 2px 2px 2px 2px;
    position: relative;
    z-index: 50;
    text-align: left;
}

#lead.notice:before{
position: absolute;
background-image: linear-gradient(0deg,rgba(0, 0, 0, 0.8),rgba(0, 0, 0, 0));
        background-size: cover;
        display: block;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        content: "";
        z-index: -1;

}

h4{
    margin: 0 auto 0.5em;
    padding: 0 0 0.5em;
    border-bottom: 1px solid #fff;
    text-align: center;
    font-size: 1.2rem;
}

#lead.notice p{
    margin: 0 auto 1em;
    padding: 0;
}

#lead.notice p:last-of-type{
    text-align: right;
    border-top: 1px solid #fff;
margin: 0 auto;
    padding: 0.5em 0 0;
    font-size: 100%;
    font-weight: normal;
    background: none;
        border-image: linear-gradient(to right, #fff, #fff);
        border-image-slice: 1;
      border-style: solid;
    border-width: 1px 0 0 0;
    width: 100%;

}



#theater{
max-width: 782px;
margin: 0 auto 30px;
padding: 0;
    position: relative;
    z-index: 500;
color: #fff;
  background: #a10000;
border-image: linear-gradient(to right, #707070, #c5c5c5, #f7f7f7, #c5c5c5, #707070);
    border-image-slice: 1;
      border-style: solid;
    border-width: 1px 1px 1px 1px;
}

#theater:before{
position: absolute;
background-image: linear-gradient(90deg,rgba(0, 0, 0, 0.8),rgba(0, 0, 0, 0));
        background-size: cover;
        display: block;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        content: "";
        z-index: -1;

}


/*劇場一覧部分のスタイル*/


ul.mainmenu{
    max-width: 100%;
}


.navi {
    width: 100%;
    max-width: 780px;
    text-align: center;
    margin:0 auto;
    padding: 0;
    background: #707070;
    border-bottom: 3px solid #707070;
}
.navi ul.mainmenu {
    font-size: 13px;
    line-height: 2.3;
    font-weight:bold;
    text-align: center;
    width: 780px;
    height: 30px;
    margin: 0 auto;
    padding: 0px;


}
.navi ul.mainmenu li {
    width: 130px;
    height: 30px;
    display: block;
    float: left;
    list-style:none;
    border-right: 1px solid #000;
    font-size: 100%;
    background-image: linear-gradient(to right, #707070, #c5c5c5, #f7f7f7, #c5c5c5, #707070);
        color:#000;
}



.navi ul.mainmenu li a {
    color:#000;
    display: block;
    text-decoration: none;
}



.navi ul.mainmenu li:last-child{
    border-right: none;
}



.navi ul.mainmenu li:hover {


}


.navi ul.mainmenu li:last-child:hover{
    border-right: none;
}



.navi ul.mainmenu li a:hover {
    color:#a10000;
opacity: 1.0;
}



.area {
    margin: 0 auto;
    padding: 0 1em;




}





.area_title {
    text-align: left;
        margin: 0 auto;
    padding: 0.5em;
    font-weight: bold;
    color: #fff;
    font-size: 120%;
font-weight: bold;


}



.city_box{
 width: 100%;
 margin: 0 auto;
 padding: 0 0.5em 1em;
}



.city {
    display: block;
    width: 100%;
    color: #000;
        background-image: linear-gradient(to right, #707070, #c5c5c5, #f7f7f7, #c5c5c5, #707070);
    padding: 5px;
    text-align: left;
    font-size: 110%;
    margin: 0 auto;
font-weight: bold;
}

.table.title{
    font-size: 100%;
    color: #fff100;

}

.table {
    width: 100%;
    margin: 0 auto;
    display: table;
    font-weight: bold;
        border-bottom: 1px solid #fff;

}



.table a{
color: #fff;
text-decoration: none;
}

.table a:hover{

text-decoration: underline;
opacity: 1.0;
}

.tr {
    display: table-row;
    width: 100%;
    margin: 0 auto;
    max-width: 760px;

}









.title .td_check{
font-size: 60%;
}


.td_theater {
    display: table-cell;
    width: 65%;
    text-align: left;
    padding: 5px;
    font-size: 80%;
vertical-align: middle;
}

.td_tel {
    display: table-cell;
    width: 35%;
        text-align: left;
    padding: 5px;
    font-size: 80%;
    vertical-align: middle;
}
/*
.td_check {
    display: table-cell;
    width: 12.5%;
        text-align: center;
    padding: 5px;
    font-size: 70%;
    vertical-align: middle;
    line-height: 1.3;

}
*/



#attention {
    width:100%;
    max-width: 782px;
    padding:0;
    margin:0 auto 2em;
    position: relative;
    z-index: 500;
text-align: left;
    background: #a10000;
        border-image: linear-gradient(to right, #707070, #c5c5c5, #f7f7f7, #c5c5c5, #707070);
    border-image-slice: 1;
      border-style: solid;
    border-width: 1px 1px 1px 1px;


}

#attention:before{
position: absolute;
background-image: linear-gradient(0deg,rgba(0, 0, 0, 0.8),rgba(0, 0, 0, 0));
        background-size: cover;
        display: block;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        content: "";
        z-index: -1;

}


#attention h3 {
width: 100%;
    font-size: 1.3rem;
    margin: 0 auto 1em;
    padding: 5px 0;
text-align: center;
        color:#000;
        border-bottom: 3px solid #707070;
    background-image: linear-gradient(to right, #707070, #c5c5c5, #f7f7f7, #c5c5c5, #707070);
            letter-spacing: 2px;
font-family: 'Noto Serif JP', serif;
font-weight: 700;


}



#attention .inner {
    width: 100%;
    margin: 0;
    padding: 1em;
}



#attention ul {
    padding: 0;
    margin: 0 auto;
    width: 90%;
    font-size: 100%;
}

#attention li {
    margin-bottom: 10px;
}


.back{
display: inline-block;
    margin: 0 auto 2em;
    background: #fff;
color: #df0000;
    font-weight: bold;
    padding: 0;
font-size: 100%;
font-family: 'Anton', sans-serif;
}



.back a{
color: #df0000;
text-decoration: none;

}

.official a:hover{
text-decoration: none;
color: #df0000;
}

.back p{
display: block;
width: 100%;
margin: 0;
padding: 5px 2em;
letter-spacing: 2px;
}

.back p:before{
    content: "\f004";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.back p:hover:before{
    content: "\f21e";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}



#footer a {
    text-decoration: none;
}



#footer {
    width: 100%;
        margin: 0 auto;
    padding: 2em 0 0;
    position: relative;
    z-index: 500;



}

#footer .official{
font-family: 'Prompt', sans-serif;
    color: #000;
border: none;
    display: inline-block;
    padding: 0;
    line-height: 1;
    font-size: 3rem;
    margin: 0 auto;
    padding: 0;
}

#footer .official span{
display: inline-block;
font-size:70%;
}

#footer .copyright {
    width: 100%;
    margin: 0;
    padding: 1em 0 0;
        position: relative;
}

#footer img{
display: inline-block;
margin: 0 auto;
padding: 0 ;
}


#footer small {
    display: block;
    font-size: 70%;
    margin: 1em 0 0;
    padding: 1em 0;
color: #fff;
}

#page_top {
    position: fixed;
    bottom:0;
    right: 0;
    opacity: 1;
    z-index: 500;
    margin: 0;
    padding: 0;
    text-align: center;
    background-image: linear-gradient(to right, #707070, #c5c5c5, #f7f7f7, #c5c5c5, #707070);
    color: #000;
    width: 34px;
    height: 34px;
    line-height: 1;

}

#page_top .fas {
    font-size: 2rem;
    color: #000;
    margin: 0;
    padding: 0;
    width: 100%;
    }

#page_top a{
color: #fff;
}


.news{
font-size: 85%;
font-weight: bold;
color: #fff;
background: #db000a;
padding: 0 5px;
border-radius: 3px;
}






@media screen and (max-width: 1024px) {


body{
background: none;
}

    body:before {
        background: url('../img/bg.jpg') no-repeat top center;
        background-size: cover;
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        content: "";
        z-index: -1;
    }

#wrapper{
background: none;
}

    #wrapper:before {
        background-image: linear-gradient(#000,#000,rgba(0, 0, 0, 0));
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        content: "";
        z-index: -1;
    }


}





@media screen and (max-width: 896px) {




img{
max-width: 90%;
}

#header .main{
max-width: 100%;
}

.navi {
    max-width: 752px;
}
.navi ul.mainmenu {
    width: 752px;

}
.navi ul.mainmenu li {
    width: 125px;

}

#theater,#attention{
max-width: 752px;
}

.official{
display: block;
margin: 0 auto 0.5em;
max-width: 70%;
}

}


@media screen and (max-width:758px) {



    h1{
margin: 0 auto 0.5em;
    }

    h1 img {
        max-width: 85vw;
    }

 h2 img{
        max-width: 90vw;
    }



    img {
        max-width: 90%;
    }
    .contents {
        padding: 0 10px;
    }






#main{
padding: 1em 0.5em 0;
}




    #lead {
        width: 100%;
margin: 0 auto;
        font-size: 90%;



    }

    #lead p:last-of-type{
    width: 90%;
    }

    #lead ul{
    width: 90%;
    text-align: left;
    padding: 0 0 0 1.5em;
    }



    .sp {
        display: inline;
    }

        .pc {
        display: none;
    }

#theater,#attention{
width: 100%;
}


.navi{
    max-width: 302px;
    width: 100%;
    margin:1em auto;
    border: 3px outset #707070;
}

    .navi ul.mainmenu {
    width:100%;
    max-width: 300px;
    font-size: 13px;
    line-height: 30px;
    text-align: center;
    margin: 0 auto;
    padding: 0px;
    height: 60px;
}
.navi ul.mainmenu li {
    width:33.333333%;
    max-width:100px;
    height: 30px;
    box-sizing: border-box;
    text-align: center;
    border-bottom: 1px solid #000;
}

.navi ul.mainmenu li:nth-child(3){
    border-right: none;

}


.navi ul.mainmenu li:nth-of-type(n+4){
    border-bottom:none;
}

.navi ul.mainmenu li:first-of-type{
border-top-left-radius: 0px;
}
.navi ul.mainmenu li:last-of-type{
border-top-right-radius: 0px;
}

.navi ul.mainmenu li a{
    width:100%;
    box-sizing: border-box;
    text-align: center;

}



.area{
margin: 0 auto 1em;
padding: 0;

}

.area:last-of-type{
margin: 0 auto;
padding: 0;

}

.area:first-of-type .area_title{
border-top: none;
}



.area:last-of-type .city_box:last-of-type .table:last-of-type{
border-bottom: none;
}

.table.title {
        font-size: 90%;
    }
    
    .table{
        font-size: 90%;
    }
.city_box{
padding: 0 0 1em;
}

.area .city_box:last-of-type{
padding: 0;
}

    .city {
font-size: 100%;

    }


.title .td_theater,.title .td_tel{
font-size: 90%;
}

/*
.td_theater {
    width: 53%;
}

.td_tel {
    width: 25%;
}
.td_check {
    width: 11%;

}
*/



#footer .roadshow{
max-width: 60%;
}

#page_top{
width: 35px;
height: 35px;

}
#page_top p{
font-size: 130%;

}

}

@media screen and (max-width:320px) {

#lead{
font-size: 80%;

}
    #lead p:last-of-type{
    width: 100%;
    }


}





