@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400&display=swap');

/* 共通
-------------------------------------------- */
.snsList {
  padding-bottom: 1rem;
  margin-bottom: 0;
  }
.kageki {
  font-family: 'ヒラギノ角ゴシック','Hiragino Sans','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','メイリオ', Meiryo,sans-serif;  
  font-weight: 400;
  color: #000;
  font-feature-settings: "palt";
  text-align: center;
  line-height: 1.3;
}
#bg_wrapper img {
  image-rendering: -webkit-optimize-contrast;
}
::-webkit-full-page-media, :future, :root #bg_wrapper img {
  image-rendering: auto;
}
.kageki a {
  text-decoration: none;
}
.kageki ul.caut li {
  text-indent: -1em;
  padding-left: 1em;
}
.kageki ul.caut li:not(:last-child) {
  margin-bottom: .5em;
}
.kageki .txt_red {
  color: #e60012;
}
.kageki .image img {
  width: auto;
  margin: 0 auto;
}
.kageki .bx_flame, 
.kageki .bx_flame2,
.kageki .sec2_deco {
  line-height: 0;
}
.kageki .bx {
  position: relative;
}
.kageki .bx_inr {
  background: #fff;
  border-left: solid 1px #ab892f;
  border-right: solid 1px #ab892f;
  position: relative;
  margin: 0 auto;
}
.kageki .bx2 .ticket .caut li {
  text-indent: 0;
  padding-left: 0;
}
.kageki .bx.item .bx_inr {
  background: #fffce4;
  border-left: solid 1px #ab892f;
  border-right: solid 1px #ab892f;
}
.kageki .twitter_btn,
.kageki .bx.item .bx_inr .btn {
  z-index: 2;
  position: relative;
}
.kageki .bx.item .bx_inr .img a {
  z-index: 99;
  position: relative;
}
.kageki .bx h3 {
  line-height: 0;
}
.kageki .bx2, 
.kageki .bx3 {
  background: #fff;
}
.kageki .bx2 .bx2_deco {
  line-height: 0;
}
.kageki .bx3 h3 {
  background: #231815;
}
.kageki #twitter {
  background: #c1272d;
}
.kageki #twitter2 {
  background: #d8ccee;
  position: relative;
}
.kageki .copy {
  font-family: 'Noto Sans JP', sans-serif;
  background: #ab892f;
  color: #fff;
}



/* PC用
-------------------------------------------- */
@media screen and (min-width: 751px), print {
  .sp {
    display: none;
  }
  #wrapper {
    min-width: inherit;
  }
  #bg_wrapper #wrapper2 {
    max-width: none;
  }
  nav.submenu.open {
    left: calc(50% - 500px) !important;
  }
}
@media screen and (min-width: 751px) and (max-width: 1000px) {
  nav.submenu.open {
    left: 0 !important;
  }
}
@media screen and (min-width: 751px), print {
  #maga_head_wrap {
    max-width: inherit;
    width: 100%;
    background: #fff;
    position: relative;
    z-index: 90;
  }
}
@media screen and (min-width: 751px), print {
  #maga_header {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
  }
}
@media screen and (min-width: 751px), print {
  #footer_sec-03 .innerBlock {
    max-width: 1000px;
    width: 100%;
  }
}
@media screen and (min-width: 751px), print {
  #footer_sec-03 .innerBlock > ul.list01 > li {
    max-width: 201px;
    height: 460px;
    width: 20%;
  }
}
@media screen and (min-width: 751px), print {
  #footer_sec-03 .innerBlock > ul.list01 > li:first-child {
    max-width: 190px;
    width: 20%;
  }
}
@media screen and (min-width: 751px), print {
  #footer_sec-03 .innerBlock > ul.list01 > li > ul {
    margin: 0 10px 0 20px;
  }
}

@media screen and (min-width: 750px) {
  .sp {
    display: none;
  }
  #bg_wrapper {
    background: url(../img/kageki22a_bg.jpg) center top;
  }  
  .kageki {
    font-size: 13.5px;
    width: 800px;
    margin: 0 auto;
  }
  .kageki ul.caut {
    list-style-type: none;
    text-align: left;
    padding: 15px 25px 0;
    letter-spacing: .057em;
  }
  .kageki .kageki_yokoku {
    background: #e60012;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 0;
    height: 48px;
  }
  .kageki .kageki_kv {
    line-height: 0;
    position: relative;
  }
  .kageki .kageki_kv ul.copy {
    position: absolute;
    bottom: 2px;
    right: 10px;
    color: #fff;
    background: none;
    padding: 0;
  }
  .kageki .sec1 {
    background: url(../img/kageki22a_sec1bg.png) center top;
    padding: 20px 0 50px;
  }
  .kageki .ex {
    margin: 37px auto 35px;
  }
  .kageki .ex ul.caut {
    text-align: center;
  }
  .kageki .btn {
    margin: 30px auto 0;
    padding-bottom: 15px;
  }
  .kageki .btn .caut {
    text-align: center;
    margin: -35px auto 45px;
  }
  .kageki .bx_deco {
    position: absolute;
    bottom: -54px;
    margin: 0 -32px 0 -83px;
    z-index: 1;
  }
  .kageki .bx_item_deco {
    position: absolute;
    bottom: 45px;
    margin: 0 -84px 0 -79px;
    z-index: 1;
  }
  .kageki .bx_inr {
    width: 688px;
  }
  .kageki .bx h3 {
    background-size: 650px;
    margin-bottom: 25px;
  }  
  .kageki .bx.date .caut {
    margin: 0 auto;
    padding: 20px 35px 40px;
  }
  .kageki .bx.date ul.caut2 {
    padding-bottom: 5px;
  }
  .kageki .bx.flow {
    margin-bottom: 50px;
  }
  .kageki .bx.flow .caut_bx {
    background: #ece4b6;
    margin: 5px 25px 0;
    font-size: 14.5px;
    padding: 0.1px;
  }
  .kageki .sec2 {
    background: #231815;
  }
  .kageki .sec2 .ticket_ex {
    margin: 30px auto 40px;
  }
  .kageki .sec2 .ticket_date {
    position: absolute;
    top: -30px;
    left: 15px;
  }
  .kageki .sec2 .img {
    position: relative;
    margin-bottom: 40px;
  }
  .kageki .sec2 .ticket .caut {
    color: #fff;
    padding: 25px 50px 0;
  }
  .kageki .sec2 .img ul.copy {
    position: absolute;
    bottom: 18px;
    right: 15px;
    color: #fff;
    background: none;
    font-weight: 400;
    padding: 0;
    margin: auto;
  }
  .kageki .sec2 .bluray {
    margin-top: 50px;
  }
  .kageki .sec2 .bluray ul.caut {
    margin-top: -39px;
    color: #fff;
    text-align: center;
  }
  .kageki .sec2 .sec2_deco {
    line-height: 0;
    margin-top: 50px;
  }
  .kageki .sec2 .bluray ul.caut {
    margin-top: -39px;
    color: #fff;
    text-align: center;
  }
  .kageki .bx.flow {
    position: relative;
    margin-top: 50px;
  }
  .kageki .bx.flow .flow_deco {
    position: absolute;
    bottom: -10px;
    right: 45px;
    z-index: 1;
  }
  .kageki .bx3 {
    padding: 0 75px;
  }
  .kageki .bx3 h3 {
    padding: 15px 0;
    margin: 0 -75px;
  }
  .kageki .bx3 h4 {
    font-size: 18px;
    text-align: left;
    margin: 40px auto 20px;
    font-weight: 600;
  }
  .kageki .bx3 ul.caut {
    padding: 0;
  }
  .kageki .bx3 ul.caut li {
    text-indent: -0.6em;
    padding-left: 0.6em;
  }
  .kageki .bx3 h5 {
    text-align: left;
    font-weight: 500;
    margin-bottom: .3em;
  }
  .kageki .bx3 p {
    text-align: left;
    line-height: 1.6;
    padding: 30px 0 50px;
  }
  .kageki .bx.itemlist {
    background: #fff;
    padding-bottom: 50px;
  }
  .kageki .bx.itemlist .bx_inr {
    background: #fffce4;
  }
  .kageki .bx.itemlist .bx_inr p img {
    margin: -14px auto -40px;
  }
  .kageki .bx.itemlist .bx_inr .btn {
    margin: 30px auto -8px;
    padding-bottom: 0;
  }
  .kageki .sec3 {
    background: #f7f3e5;
    padding-top: 50px;
  }
  .kageki #twitter, 
  .kageki #twitter2 {
    width: 680px;
    padding: 20px 0;
    margin: 0 auto;
  }
  .kageki #twitter {
    margin: 0 auto 50px;
  }
  .kageki #twitter2 h3 {
    margin: 10px auto 25px;
  }
  .kageki #twitter .twitter_ex {
    background: #fff;
    padding: 40px 0;
    margin: 20px auto;
    width: 650px;
  }
  .kageki #twitter2 .twitter2_limit {
    position: absolute;
    top: -39px;
    right: -36px;
  }
  .kageki #twitter2 .img {
    position: relative;
  }
  .kageki #twitter2 .img ul.copy {
    position: absolute;
    bottom: 12px;
    right: 9px;
    color: #fff;
    background: none;
    font-weight: 400;
    padding: 0;
    margin: auto;
  }
  .kageki #twitter2 .twitter2_ex {
    margin: 20px auto 0;
  }
  .kageki #twitter2 ul.caut {
    text-align: center;
    margin-bottom: 10px;
  }
  .kageki .kiyaku a {
    color: #e60012;
    border-bottom: solid 1px #e60012;
    padding-bottom: 1px;
    margin-left: 2px;
    font-weight: 600;
  }
  .kageki .bx3.announcement h3, 
  .kageki .bx3.twitter_caution h3, 
  .kageki .bx3.rules h3, 
  .kageki .bx3.contact h3 {
    margin-bottom: 40px;
  }
  .kageki .bx3.announcement p,
  .kageki .bx3.twitter_caution p,
  .kageki .bx3.rules p {
    padding: 0 0 30px;
  }
  .kageki .bx3.announcement ul,
  .kageki .bx3.twitter_caution ul {
    padding: 0 0 45px;
  }
  .kageki .bx3.twitter_caution ul li {
    text-indent: -1.1em;
    padding-left: 1.1em;
  }
  .kageki .bx3 p.kiyaku {
    padding: 0 0 40px;
  }
  .kageki .bx3.contact a img {
    margin-bottom: 30px;
  }
  .kageki .bnr {
    margin: 50px auto;
  }
  .kageki .kageki_contact-inr {
    margin: 0 -75px;
  }
  .kageki .copy {
    padding: 20px 0;
    margin-bottom: 15px;
  }
}


/* SP用
-------------------------------------------- */
@media screen and (max-width: 750px) {
  .pc {
    display: none;
  }
  .snsList ul {
    display: flex;
    justify-content: center;
    align-items: center; 
  }
  .snsList ul li,
  .snsList ul a,
  .snsList ul img {
    display: block;
    width: 70px;
    height: 40px;
    font-size: 1em;
    line-height: 0;
    vertical-align: bottom;
  }
  #bg_wrapper {
    background: url(../img/kageki22a_bg.jpg) center top;
    background-size: 39%;
  }
  .kageki {
    font-size: 2.6vw;
    width: 100%;
    margin: 0 auto;
  }
  .kageki ul.caut {
    list-style-type: none;
    text-align: left;
    padding: 1.5vw 1.5vw 0;
    letter-spacing: .02em;
  }
  .kageki .kageki_yokoku {
    background: #e60012;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 0;
    height: 6.5vw;
  }
  .kageki .kageki_yokoku img {
    width: 9.5%;
  }
  .kageki .kageki_kv {
    line-height: 0;
    position: relative;
  }
  .kageki .kageki_kv ul.copy {
    position: absolute;
    bottom: 2vw;
    right: 1.5vw;
    color: #fff;
    background: none;
    padding: 0;
    margin-bottom: 0;
    line-height: 1;
  }
  .kageki h2 {
    width: 97.5%;
    margin: 0 auto 2vw 1.5vw;
  }
  .kageki .ex {
    width: 92%;
    margin: 4vw auto;
  }
  .kageki .ex ul.caut {
    text-align: center;
    margin-bottom: 4vw;
  }
  .kageki .btn {
    margin: 5vw auto 0;
    padding-bottom: 2vw;
  }
  .kageki .date {
    font-size: 2.6vw;
  }
  .kageki .btn .caut {
    text-align: center;
    margin: -4vw auto 4vw;
  }
  .kageki .bx_deco {
    position: absolute;
    bottom: 8vw;
    margin: 0 -7.5vw 0 -14vw;
    z-index: 1;
  }
  .kageki .bx_flame ,
  .kageki .bx_flame2 {
    width: 92%;
    margin: 0 auto;
  }
  .kageki .bx_deco img,
  .kageki .bx_deco2 img {
    width: 100%;
  }
  .kageki .bx_item_deco {
    position: absolute;
    bottom: 4vw;
    margin: 0 -16vw 0 -13vw;
    z-index: 1;
  }
  .kageki .bx_inr {
    width: 92%;
    border-left: solid 0.18vw #ab892f;
    border-right: solid 0.18vw #ab892f;
  }
  .kageki .bx h3 {
    padding: .5vw 0;
    margin: 0 auto 3vw;
    width: 94.5%;
  }  
  .kageki .bx h3 img {
    height: 7.3vw;
    width: auto;
  }  
  .kageki .bx3 h3 img {
    height: 4.5vw;
    width: auto;
  }  
  .kageki .bx.date .caut {
    padding: 2vw 4vw 4vw;
  }
  .kageki .bx.date ul.caut2 {
    padding-bottom: 2.5vw;
  }
  .kageki .bx.date .bx_inr p img {
    height: 14.6vw;
    width: auto;
  }
  .kageki .sec1 {
    background: url(../img/kageki22a_sec1bg.png) center top;
    padding: 2.5vw 0 7vw;
    background-size: 110.4%;
  }
  .kageki .sec2 {
    background: #231815;
  }
  .kageki .sec2 .ticket_ex {
    margin: 4vw 2vw;
  }
  .kageki .sec2 .ticket_date {
    position: absolute;
    top: -4vw;
    left: 1vw;
  }
  .kageki .sec2 .ticket_date img {
    width: 21vw;
  }
  .kageki .sec2 .img {
    position: relative;
    margin-bottom: 4vw;
  }
  .kageki .sec2 .ticket .caut {
    padding: 0 3.5vw 0;
    color: #fff;
  }
  .kageki .sec2 .img ul.copy {
    position: absolute;
    bottom: 2vw;
    right: 1.5vw;
    color: #fff;
    background: none;
    font-weight: 400;
    padding: 0;
    margin-bottom: 0;
  }
  .kageki .sec2 .bluray {
    margin-top: 6vw;
  }
  .kageki .sec2 .ticket_limit {
    width: 94%;
    margin: 0 auto;
  }
  .kageki .sec2 .ticket_limit {
    margin: 4vw 3.5vw;
  }
  .kageki .sec2 .bluray ul.caut {
    width: 93.5%;
    margin: -4vw auto 6vw;
    color: #fff;
    text-align: center;
  }
  .kageki .bx.flow {
    margin-top: 7vw;
  }
  .kageki .bx.flow .bx_inr {
    padding-bottom: 2vw;
  }
  .kageki .bx.flow .bx_inr p img {
    width: 94%;
  }
  .kageki .bx.flow .flow_deco {
    width: 28%;
    bottom: -0.5vw;
    right: 3vw;
    position: absolute;
    z-index: 1;
  }
  .kageki .bx3 {
    padding: 0 6vw;
  }
  .kageki .bx3 h3 {
    padding: 2vw 0;
    margin: 0 -76vw;
  }
  .kageki .bx3 h4 {
    font-size: 3.2vw;
    text-align: left;
    margin: 6vw auto 2.5vw;
    font-weight: 600;
  }
  .kageki .bx3 ul.caut {
    padding: 0;
  }
  .kageki .bx3 ul.caut li {
    text-indent: -0.6em;
    padding-left: 0.6em;
  }
  .kageki .bx3 h5 {
    text-align: left;
    font-weight: 500;
    margin-bottom: .3em;
  }
  .kageki .bx3 p {
    text-align: left;
    line-height: 1.6;
    padding: 4vw 0 8vw;
  }
  .kageki .bx.itemlist .bx_inr p {
    margin: -2vw auto -2vw;
  }
  .kageki .bx.itemlist .bx_inr p img {
    width: 52%;
    margin-left: 2vw;
  }
  .kageki .bx.itemlist .bx_inr .btn {
    margin: 0vw auto -1vw;
    padding-bottom: 0;
  }
  .kageki .bx.itemlist {
    padding-bottom: 7vw;
    background: #fff;
  }
  .kageki .bx.itemlist .bx_inr {
    background: #fffce4;
  }
  .kageki .sec3 {
    padding-top: 7vw;
    background: #f7f3e5;
  }
  .kageki #twitter, 
  .kageki #twitter2 {
    width: 90%;
    padding: 3vw 0;
    margin: 0 auto;
  }
  .kageki #twitter {
    margin: 0 auto 7vw ;
  }
  .kageki #twitter2 h3 {
    margin: 1vw auto 3.5vw;
    width: 91%;
  }
  .kageki #twitter h3, 
  .kageki #twitter .date  {
    width: 93%;
    margin: 0 auto;
  }
  .kageki #twitter .twitter_ex {
    background: #fff;
    padding: 5vw 2vw 4.5vw;
    margin: 2.5vw auto 3vw;
  }
  .kageki #twitter2 .twitter2_limit {
    position: absolute;
    top: -5vw;
    right: -5vw;
  }
  .kageki #twitter2 .twitter2_limit img {
    width: 18.5vw;
  }
  .kageki #twitter2 .img {
    position: relative;
  }
  .kageki #twitter2 .img ul.copy {
    position: absolute;
    bottom: 2vw;
    right: 1.5vw;
    color: #fff;
    background: none;
    font-weight: 400;
    padding: 0;
    margin-bottom: 0;
  }
  .kageki #twitter2 .twitter2_ex {
    margin: 2vw auto 0;
    width: 91%;
  }
  .kageki #twitter2 ul.caut {
    text-align: center;
    margin-bottom: 1vw;
  }
  .kageki .kiyaku a {
    color: #e60012;
    border-bottom: solid 1px #e60012;
    padding-bottom: 1px;
    margin-left: 2px;
    font-weight: 600;
  }
  .kageki .bx3.announcement h3, 
  .kageki .bx3.twitter_caution h3, 
  .kageki .bx3.rules h3, 
  .kageki .bx3.contact h3 {
    margin-bottom: 6vw;
  }
  .kageki .bx3.announcement p,
  .kageki .bx3.twitter_caution p,
  .kageki .bx3.rules p {
    padding: 0 0 4vw;
  }
  .kageki .bx3.announcement ul,
  .kageki .bx3.twitter_caution ul {
    padding: 0 0 6vw;
  }
  .kageki .bx3.twitter_caution ul li {
    text-indent: -1.1em;
    padding-left: 1.1em;
  }
  .kageki .bx3 p.kiyaku {
    padding: 0 0 6vw;
  }
  .kageki .bx3.contact {
    padding: 0 4vw;
  }
  .kageki .bx3.contact a img {
    margin-bottom: 4vw;
  }
  .kageki .bnr {
    margin: 6.5vw auto;
  }
  .kageki .kageki_contact-inr {
    margin: 0 auto;
    padding-bottom: 1vw;
  }
  .kageki .copy {
    padding: 3vw 0;
    margin-bottom: 5vw;
  }
}


