@charset "utf-8";
/*------------------------  common.css  ------------------------*/


/*------------  reset  ------------*/
*, *::before, *::after { box-sizing: border-box; }
* { padding: 0; margin: 0; }
img, picture, video, canvas, svg { display: block; max-width: 100%; }
input, button, textarea, select { font: inherit; }
p, h1, h2, h3, h4, h5, h6 { overflow-wrap: break-word; }
form { margin: 0; padding: 0; }
li { list-style-type: none; }
img { border: none; width: 100%; vertical-align: bottom; -webkit-user-drag: none; }
a { color: #fff; text-decoration: none; opacity: 1; cursor: pointer; }
a:hover { color: #fff; text-decoration: none; opacity: .7; transition: .3s; }
button { -webkit-appearance: none; -moz-appearance: none; appearance: none; border: none; outline: none; background-color: transparent; padding: 0; }
@media screen and (max-width: 900px) {
 a:hover { opacity: 1; transition: 0s; }
}


/*------------  body  ------------*/
body { background-color: #000; font-family: 'Noto Serif JP', serif; font-weight: 400; font-size: 1em; line-height: 1; color: #fff; font-feature-settings: "palt"; }


/*------------  load-fade  ------------*/
.load-fade { opacity: 0; visibility: hidden; transition: all 1.2s; }
.load-fade.is-show { opacity: 1; visibility: visible; }


/*------------  modal  ------------*/
.lock { overflow: hidden; }
.modal-overlay { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100dvh; background: rgba(0,0,0,.6); z-index: 101; }
.modal-wrap { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100dvh; z-index: 102; }
.modal-content { display: none; height: 100dvh; background-color: #000; overflow-y: scroll; }
.modal-close { display: block; position: absolute; top: 25px; right: 40px; width: 64px; height: 64px; background: rgba(0,0,0,.6); cursor: pointer; }
.modal-close:hover { opacity: .6; }
.modal-close span { display: block; position: absolute; width: 50px; height: 1px; background: #fff; }
.modal-close span:nth-child(1) { top: 32px; left: 7px; transform: rotate(-45deg); }
.modal-close span:nth-child(2) { top: 32px; left: 7px; transform: rotate(45deg); }
@media screen and (max-width: 900px) {
 .modal-close { top: 5px; right: 5px; width: 50px; height: 50px; }
 .modal-close:hover { opacity: 1; }
 .modal-close span { width: 32px; }
 .modal-close span:nth-child(1) { top: 25px; left: 9px; }
 .modal-close span:nth-child(2) { top: 25px; left: 9px; }
}


/*------------  title  ------------*/
.title-block { padding: 0 0 45px; }
.title-block .en { padding: 0 0 4px; font-size: 17px; line-height: 1.3; color: #ffda69; }
.title-block .title { font-weight: 400; font-size: 40px; line-height: 1.3; }
@media screen and (max-width: 900px) {
 .title-block { padding: 0 0 25px; }
 .title-block .en { font-size: 15px; }
 .title-block .title { font-size: 28px; }
}


/*------------  btn  ------------*/
.btn { display: flex; align-items: center; height: 52px; position: relative; padding: 0 16px; background: #000; border: 1px solid #888; font-weight: 400; font-size: 15px; line-height: 1.3; color: #fff; cursor: pointer; }
.btn::after { content: ''; position: absolute; top: 50%; right: 15px; width: 16px; height: 16px; background: url(/images/icon_arw.svg); background-size: contain; transform: translate(0, -50%); }
.ext::after { background: url(/images/icon_external2.svg); }









/*------------  header  ------------*/
.header { position: relative; }
.header .main { position: relative; height: 780px; }
.header .slider { height: 780px; }
.header .p01 { background: url(/images/slider01.jpg) no-repeat center; background-size: cover; }
.header .p02 { background: url(/images/slider02.jpg) no-repeat center; background-size: cover; }
.header .p03 { background: url(/images/slider03.jpg) no-repeat center; background-size: cover; }
.header .p04 { background: url(/images/slider04.jpg) no-repeat center; background-size: cover; }
.header .p05 { background: url(/images/slider05.jpg) no-repeat center; background-size: cover; }
.header .p06 { background: url(/images/slider06.jpg) no-repeat center; background-size: cover; }
.header .p07 { background: url(/images/slider07.jpg) no-repeat center; background-size: cover; }
.header .p08 { background: url(/images/slider08.jpg) no-repeat center; background-size: cover; }
.header .photo-credit { position: absolute; bottom: 16px; right: 16px; font-size: 15px; line-height: 1.3; color: #fff; text-shadow: 2px 0 16px #000; }
.header .main-inner { display: flex; justify-content: space-between; position: absolute; top: 0; left: 0; padding: 18px 1.2%; width: 100%; background: linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.6) 100%); }
.header .logo { max-width: 420px; }
.header .block { padding: 2px 0; }
.header .day { margin: 0 0 0 auto; max-width: 280px; }
.header .bnr-ticket { margin: 4px 22px 0 auto; max-width: 236px; }
.header .bnr-ticket a { display: block; }
@media screen and (max-width: 900px) {
 .header .main { height: 96vw; }
 .header .slider { height: 96vw; }
 .header .photo-credit { bottom: 10px; right: 10px; font-size: 13px; color: #fff; text-shadow: 2px 0 8px #000; }
 .header .main-inner { flex-direction: column; justify-content: center; position: relative; padding: 28px 0 20px; background: none; }
 .header .logo { margin: 0 auto; max-width: 370px; }
 .header .block { margin: 0 auto; padding: 0; }
 .header .day { margin: 0 auto; max-width: 240px; }
 .header .bnr-ticket { margin: 4px auto 0; max-width: 250px; }
}


/*------------  head-nav  ------------*/
.head-nav { margin: 0 auto; padding: 18px 22px; border-bottom: 1px solid #393939; }
.head-nav .head-nav-inner { display: flex; justify-content: center; align-items: center; margin: 0 -22px; }
.head-nav .nav { padding: 0 22px; font-size: 16px; line-height: 1.3; text-align: center; }
.head-nav .nav .nav-link { display: block; position: relative; padding: 10px 21px 10px 6px; color: #fff; }
.head-nav .nav .nav-link::after { content: ''; position: absolute; top: 50%; right: 4px; width: 13px; height: 13px; background: url(/images/icon_arw2.svg); background-size: contain; transform: translate(0, -50%); }
.head-nav .nav .ext::after { background: url(/images/icon_external2.svg); background-size: contain; }
.head-nav .nav .no-link { display: block; padding: 10px 6px 10px 6px; ; color: #666; }
@media screen and (max-width: 1000px) {
 .head-nav .head-nav-inner { margin: 0 -12px; }
 .head-nav .nav { padding: 0 12px; }
}
@media screen and (max-width: 900px) {
 .head-nav { margin: 0 auto; padding: 0 7px 25px; }
 .head-nav .head-nav-inner { flex-wrap: wrap; margin: 0 -7px; }
 .head-nav .nav { padding: 2px 7px; font-size: 14px; }
 .head-nav .nav .nav-link { padding: 9px 17px 9px 6px; }
 .head-nav .nav .nav-link::after { right: 3px; width: 11px; height: 11px; }
 .head-nav .nav .no-link { padding: 9px 6px 9px 6px; }
}


/*------------  banner  ------------*/
.banner { margin: 0 auto; padding: 110px 7% 0; }
.banner .bnr-live { margin: 0 auto 80px; max-width: 480px; }
.banner .bnr-contact { margin: 0 auto; max-width: 380px; }
.banner .link { display: block; cursor: pointer; }
@media screen and (max-width: 900px) {
 .banner { padding: 60px 5% 0; }
 .banner .bnr-live { margin: 0 auto 40px; max-width: 350px; }
 .banner .bnr-contact { max-width: 300px; }
}


/*------------  leading  ------------*/
.leading { margin: 0 auto; padding: 160px 7% 90px; text-align: center; }
.leading .copy { padding: 0 0 35px; font-weight: 400; font-size: 40px; line-height: 1.4; }
.leading .txt { font-size: 16px; line-height: 2.2; }
@media screen and (max-width: 900px) {
 .leading { padding: 80px 5% 50px; }
 .leading .copy { padding: 0 0 20px; font-size: 26px; }
 .leading .txt { font-size: 15px; line-height: 1.9; text-align: left; }
}


/*------------  trailer  ------------*/
.trailer { margin: 0 auto; padding: 70px 0 160px; text-align: center; }
.trailer .iframe { margin: 0 auto; width: 848px; height: 477px; }
@media screen and (max-width: 900px) {
 .trailer { padding: 30px 0 80px; }
 .trailer .iframe { width: 94vw; height: 52.875vw; }
}


/*------------  about  ------------*/
.about { padding: 0 0 160px; }
.about .pic { position: relative; height: 520px; background: url(/images/about_pic.jpg) no-repeat center; background-size: cover; }
.about .pic .photo-credit { position: absolute; bottom: 16px; right: 16px; font-size: 15px; line-height: 1.3; color: #fff; text-shadow: 2px 0 14px #000; }
.about .about-inner { margin: 0 auto; padding: 90px 7% 0; max-width: 1280px; }
.about .txt { font-size: 16px; line-height: 2.2; }
@media screen and (max-width: 900px) {
 .about { padding: 0 0 80px; }
 .about .pic { height: 70vw; }
 .about .pic .photo-credit { bottom: 10px; right: 10px; font-size: 13px; color: #fff; text-shadow: 2px 0 8px #000; }
 .about .about-inner { padding: 40px 5% 0; }
 .about .txt { font-size: 15px; line-height: 1.9; }
}


/*------------  introduction  ------------*/
.introduction { padding: 0 0 160px; }
.introduction .head { background: url(/images/intro_pic.jpg) no-repeat center; background-size: cover; }
.introduction .head .head-inner { margin: 0 auto; padding: 130px 7%; max-width: 1280px; text-align: center; }
.introduction .head .title-block { padding: 0 0 40px; }
.introduction .head .txt { font-size: 22px; line-height: 2.1; }
.introduction .intro-block { display: flex; margin: 0 auto; padding: 110px 6% 0; max-width: 1240px; }
.introduction .intro-block:nth-of-type(even) { flex-direction: row-reverse; }
.introduction .intro-block .pic-block { flex-basis: 58%; }
.introduction .intro-block .pic { position: relative; }
.introduction .intro-block .pic .photo-credit { position: absolute; bottom: 12px; right: 12px; font-size: 14px; line-height: 1.3; color: #fff; text-shadow: 2px 0 10px #000; }
.introduction .intro-block .txt { flex: 1; padding: 0 0 0 6%; font-size: 16px; line-height: 2.2; }
.introduction .intro-block:nth-of-type(even) .txt { padding: 0 6% 0 0; }
@media screen and (max-width: 900px) {
 .introduction { padding: 0 0 80px; }
 .introduction .head .head-inner { padding: 60px 5%; }
 .introduction .head .title-block { padding: 0 0 22px; }
 .introduction .head .txt { font-size: 17px; line-height: 1.7; }
 .introduction .intro-block { display: block; padding: 60px 5% 0; }
 .introduction .intro-block .pic .photo-credit { bottom: 10px; right: 10px; font-size: 13px; color: #fff; text-shadow: 2px 0 8px #000; }
 .introduction .intro-block .txt { flex: 1; padding: 40px 0 0; font-size: 15px; line-height: 1.9; }
 .introduction .intro-block:nth-of-type(even) .txt { padding: 30px 0 0; }
}


/*------------  highlight  ------------*/
.highlight { padding: 0 0 90px; }
.highlight .head { background: url(/images/highlight_pic.jpg) no-repeat center; background-size: cover; }
.highlight .head .head-inner { margin: 0 auto; padding: 130px 7%; max-width: 1280px; }
.highlight .head .txt { font-size: 16px; line-height: 2.2; }
@media screen and (max-width: 900px) {
 .highlight { padding: 0 0 40px; }
 .highlight .head .head-inner { padding: 60px 5%; }
 .highlight .head .txt { font-size: 15px; line-height: 1.9; }
}


/*------------  narration  ------------*/
.narration { padding: 70px 0 70px; }
.narration .narration-inner { margin: 0 auto; padding: 0 7%; max-width: 1280px; }
.narration .narration-block { display: flex; align-items: center; justify-content: center; }
.narration .narration-block .block { flex-basis: 330px; padding: 0 50px 0 0; }
.narration .title-block .en { padding: 0 0 3px; }
.narration .title-block .title { font-size: 32px; }
.narration .profile-block { line-height: 1.3; }
.narration .profile-block .name { font-weight: 400; font-size: 24px; }
.narration .profile-block .sub { padding: 10px 0 0; font-size: 15px; }
.narration .profile-block .profile-btn { padding: 30px 0 0; width: 248px; }
.narration .narration-block .pic { max-width: 190px; }
@media screen and (max-width: 900px) {
 .narration { padding: 40px 0 40px; }
 .narration .narration-block { flex-direction: column-reverse; }
 .narration .narration-block .block { flex-basis: 100%; padding: 0; text-align: center; }
 .narration .title-block { padding: 0 0 35px; }
 .narration .title-block .title { font-size: 26px; }
 .narration .profile-block .name { font-size: 21px; }
 .narration .profile-block .sub { padding: 7px 0 0; font-size: 14px; }
 .narration .profile-block .profile-btn { padding: 23px 0 0; }
 .narration .narration-block .pic { padding: 0 0 20px; max-width: 164px; }
}

/*------------  staff  ------------*/
.staff { padding: 70px 0 125px; }
.staff .staff-inner { margin: 0 auto; padding: 0 7%; max-width: 1280px; }
.staff .title-block { text-align: center; }
.staff .title-block .en { padding: 0 0 3px; }
.staff .title-block .title { font-size: 32px; }
.staff .profile-block { display: flex; flex-direction: column; justify-content: center; }
.staff .profile-block .block { margin: 0 auto; line-height: 1.3; }
.staff .profile-block .role { padding: 0 0 4px; font-size: 15px; }
.staff .profile-block .name { font-size: 24px; }
.staff .profile-block .profile-btn { margin: 0 auto; padding: 25px 0 0; width: 248px; }
.staff .staff-block { display: flex; justify-content: center; flex-wrap: wrap; margin: 0 -40px; padding: 80px 0 0; }
.staff .staff-block .block { padding: 0 40px 35px; line-height: 1.3; }
.staff .staff-block .block .role { padding: 0 0 4px; font-size: 15px; }
.staff .staff-block .block .name { font-size: 22px; }
@media screen and (max-width: 900px) {
 .staff { padding: 30px 0 65px; }
 .staff .title-block { padding: 0 0 35px; }
 .staff .title-block .title { font-size: 26px; }
 .staff .profile-block .role { padding: 0 0 4px; font-size: 14px; }
 .staff .profile-block .name { font-size: 21px; }
 .staff .profile-block .profile-btn { padding: 23px 0 0; }
 .staff .staff-block { flex-direction: column; margin: 0; padding: 50px 0 0; }
 .staff .staff-block .block { display: flex; justify-content: center; align-items: baseline; padding: 0 0 15px; }
 .staff .staff-block .block .role { padding: 0 2px 0 0; font-size: 14px; }
 .staff .staff-block .block .name { font-size: 18px; }
}

/*----  modal  ----*/
.modal-block { display: flex; justify-content: center; padding: 13vh 10%; }
.modal-block .pic-block { flex-basis: 300px; padding: 0 8% 0 0; }
.modal-block .txt-block { flex: 1; }
.modal-block .txt-block .prof-name { padding: 0 0 25px; font-weight: 400; font-size: 28px; line-height: 1.3; color: #ffda69; }
.modal-block .txt-block .txt1 { font-size: 16px; line-height: 1.9; }
.modal-block .txt-block .comment { padding: 60px 0 14px; font-weight: 400; font-size: 24px; line-height: 1.3; color: #ffda69; }
.modal-block .txt-block .txt2 { font-size: 16px; line-height: 1.9; }
@media screen and (max-width: 900px) {
.modal-block { display: block; padding: 60px 8%; }
.modal-block .pic-block { margin: 0 auto; padding: 0 0 40px; max-width: 180px; }
.modal-block .txt-block .prof-name { padding: 0 0 18px; font-size: 22px; }
.modal-block .txt-block .txt1 { font-size: 15px; }
.modal-block .txt-block .comment { padding: 40px 0 10px; font-size: 20px; }
.modal-block .txt-block .txt2 { font-size: 15px; }
}



/*------------  series  ------------*/
@keyframes infinity-scroll-left {
 from { transform: translateX(0); }
 to { transform: translateX(-100%); }
}
@keyframes infinity-scroll-right {
 from { transform: translateX(-100%); }
 to { transform: translateX(0%); }
}
.scroll-infinity-wrap { display: flex; overflow: hidden; }
.scroll-infinity-list { display: flex; }
.scroll-infinity-list-left { animation: infinity-scroll-left 60s infinite linear 0.5s both; }
.scroll-infinity-list-right { animation: infinity-scroll-right 60s infinite linear 0.5s both; }
.scroll-infinity-item { width: 1400px; }
.scroll-infinity-item img { width: 100%; }
@media screen and (max-width: 900px) {
 .scroll-infinity-item { width: 900px; }
}


/*------------  opening-day  ------------*/
.opening-day { margin: 0 auto; padding: 50px 0 0; max-width: 310px; }
@media screen and (max-width: 900px) {
 .opening-day { padding: 38px 0 0; max-width: 250px; }
}


/*------------  billings  ------------*/
.billings { margin: 0 auto; padding: 70px 7% 0; max-width: 1280px; font-size: 15px; line-height: 1.6; }
.billings dl { display: flex; padding: 0 0 1em; }
.billings dt { flex-basis: 7.5em; }
.billings dd { flex: 1; }
.billings dd span { display: inline-block; margin-right: 1em; }
@media screen and (max-width: 900px) {
 .billings { padding: 50px 0 0; font-size: 13px; line-height: 1.6; }
 .billings dl { display: block; padding: 0 0 16px; text-align: center; }
 .billings dt { padding: 0 0 2px; }
 .billings dd span { display: block; margin: 0; }
}


/*------------  sponsor  ------------*/
.sponsor { margin: 0 auto; padding: 50px 7% 0; max-width: 1280px; }
.sponsor .title { padding: 0 0 25px; font-weight: 400; font-size: 20px; line-height: 1.3; text-align: center; }
.sponsor .sponsor-a { display: flex; justify-content: center; flex-wrap: wrap; margin: 0 -8px; padding: 0 0 25px; }
.sponsor .sponsor-b { display: flex; justify-content: center; flex-wrap: wrap; margin: 0 -6px; padding: 0 0 25px; }
.sponsor .sponsor-c { display: flex; justify-content: center; flex-wrap: wrap; margin: 0 -5px; padding: 0 0 25px; }
.sponsor .sponsor-d { display: flex; justify-content: center; flex-wrap: wrap; margin: 0 -4px; }
.sponsor .sponsor-a .ss { flex-basis: calc(100% / 3); padding: 0 8px 16px; }
.sponsor .sponsor-b .ss { flex-basis: calc(100% / 4); padding: 0 6px 12px; }
.sponsor .sponsor-c .ss { flex-basis: calc(100% / 6); padding: 0 5px 10px; }
.sponsor .sponsor-d .ss { flex-basis: calc(100% / 7); padding: 0 4px 8px; }
.sponsor .ss a { display: block; }
@media screen and (max-width: 900px) {
 .sponsor { margin: 0 auto; padding: 30px 5% 0; max-width: 560px; }
 .sponsor .title { padding: 0 0 16px; font-size: 15px; }
 .sponsor .sponsor-a { margin: 0 -6px; padding: 0 0 20px; }
 .sponsor .sponsor-b { margin: 0 -4px; padding: 0 0 20px; }
 .sponsor .sponsor-c { margin: 0 -4px; padding: 0 0 20px; }
 .sponsor .sponsor-d { margin: 0 -3px; }
 .sponsor .sponsor-a .ss { flex-basis: 74%; padding: 0 6px 12px; }
 .sponsor .sponsor-b .ss { flex-basis: calc(100% / 2); padding: 0 4px 8px; }
 .sponsor .sponsor-c .ss { flex-basis: calc(100% / 2); padding: 0 4px 8px; }
 .sponsor .sponsor-d .ss { flex-basis: calc(100% / 3); padding: 0 3px 6px; }
 .sponsor .ss { flex-basis: calc(100% / 2); padding: 0 5px 10px; }
}


/*------------  footer  ------------*/
#footer { margin: 0 auto; padding: 60px 7% 90px; max-width: 1280px; }
#footer .logo { margin: 0 auto; padding: 0 0 10px; width: 350px; }
#footer .sns { display: flex; align-items: center; justify-content: center; padding: 28px 0; }
#footer .sns .icon { margin: 0 10px; width: 48px; }
#footer .sns .icon a { display: block; padding: 5px; }
#footer .copyright { font-weight: 400; font-size: 13px; line-height: 1.3; text-align: center; }
#footer .about { padding: 12px 0 0; font-weight: 400; font-size: 13px; line-height: 1.3; text-align: center; }
@media screen and (max-width: 900px) {
 #footer { padding: 40px 5% 60px; }
 #footer .logo { margin: 0 auto; padding: 0; width: 300px; }
 #footer .sns { padding: 24px 0; }
 #footer .sns .icon { margin: 0 10px; width: 44px; }
 #footer .copyright { font-size: 12px; }
 #footer .about { font-size: 12px; }
}


/*------------  fix-live  ------------*/
.fix-live { position: fixed; bottom: 32px; right: 32px; width: 140px; height: 140px; }
.fix-live .link { display: block; }
@media screen and (max-width: 900px) {
.fix-live { bottom: 12px; right: 12px; width: 90px; height: 90px; }
}


/*------------  liveviewing  ------------*/
.liveviewing { padding: 60px 6% 0; }
.liveviewing .live-inner { margin: 0 auto; max-width: 960px; background: #08192e; }
.liveviewing .live-title { padding: 0; }
.liveviewing .live-info { padding: 100px 8% 70px; font-weight: 400; font-size: 18px; line-height: 1.6; }
.liveviewing .live-info .ttl { padding: 0 0 20px; font-weight: 600; font-size: 32px; line-height: 1.4; }
.liveviewing .live-info .txt { padding: 0 0 10px; }
.liveviewing .live-info .ttl { padding: 0 0 20px; font-weight: 600; font-size: 32px; line-height: 1.4; }
.liveviewing .live-info .news { margin: 0 0 60px; padding: 0 0 40px; border-bottom: 1px solid #2a3b50; }
.liveviewing .live-info .news .ttl { padding: 0 0 20px; font-weight: 600; font-size: 20px; }
.liveviewing .live-info .news .txt { padding: 0 0 20px; }
.liveviewing .live-info .news a { color: #429cff; }
.liveviewing .live-info .block { padding: 0 0 100px; }
.liveviewing .live-info .phrase { text-align: center; }
.liveviewing .live-info .phrase .item { padding: 0 0 20px; }
.liveviewing .live-info .phrase .item:last-of-type { padding: 0; }
.liveviewing .live-info .phrase .name { padding: 0 0 10px; font-weight: 600; font-size: 30px; }
.liveviewing .live-info .phrase .txt { padding: 0 0 20px; }
.liveviewing .live-info .ticket { text-align: center; }
.liveviewing .live-info .ticket .table { padding: 5px 0 0; text-align: left; }
.liveviewing .live-info .ticket .table .item { display: flex; align-items: center; padding: 18px 0; border-bottom: 1px solid #2a3b50; }
.liveviewing .live-info .ticket .table .item:first-of-type { border-top: 1px solid #2a3b50; }
.liveviewing .live-info .ticket .table .name { flex-basis: 30%; font-weight: 600; }
.liveviewing .live-info .ticket .table .data { flex: 1; }
.liveviewing .live-info .ticket .table .pc { display: block; }
.liveviewing .live-info .theater { text-align: center; padding: 0 0 60px; }
.liveviewing .live-info .theater .txt { font-weight: 600; font-size: 30px; }
.liveviewing .live-info .btn-ticket { margin: 50px auto 10px; max-width: 420px; }
.liveviewing .live-info .btn-ticket a { display: block; }
.liveviewing .live-info .list { display: flex; text-align: left; padding: 20px 3% 20px; }
.liveviewing .live-info .list .list-inner { flex-basis: calc(100% / 2); }
.liveviewing .live-info .list .list-inner .pref { padding: 0 0 20px; }
.liveviewing .live-info .list .list-inner h5 { font-weight: 400; font-size: 18px; }
.liveviewing .live-info .list .list-inner li { margin: 0 0 0 26px; list-style-type: disc; text-indent: -5px; font-size: 18px; }
.liveviewing .live-info .live-sponsor { margin: 0 auto; padding: 60px 0 0; border-top: 1px solid #2a3b50; }
.liveviewing .live-info .live-sponsor .title { padding: 0 0 18px; font-weight: 400; font-size: 18px; line-height: 1.4; text-align: center; }
.liveviewing .live-info .live-sponsor .sponsor-a { display: flex; justify-content: center; flex-wrap: wrap; margin: 0 auto; padding: 0 0 25px; max-width: 700px; }
.liveviewing .live-info .live-sponsor .sponsor-b { display: flex; justify-content: center; flex-wrap: wrap; margin: 0 auto; padding: 0 0 25px; max-width: 700px; }
.liveviewing .live-info .live-sponsor .sponsor-a .ss { flex-basis: calc(100% / 2); padding: 0 8px 16px; }
.liveviewing .live-info .live-sponsor .sponsor-b .ss { flex-basis: calc(100% / 3); padding: 0 6px 12px; }
.liveviewing .home-btn { margin: 0 auto; padding: 60px 0 10px; width: 260px; }

@media screen and (max-width: 900px) {
 .liveviewing { padding: 25px 0 0; }
 .liveviewing .live-info { padding: 60px 7% 40px; font-size: 16px; }
 .liveviewing .live-info .ttl { padding: 0 0 20px; font-size: 24px; }
 .liveviewing .live-info .txt { padding: 0 0 10px; }
.liveviewing .live-info .news { margin: 0 0 40px; padding: 0 0 20px; }
.liveviewing .live-info .news .ttl { padding: 0 0 20px; font-size: 18px; }
.liveviewing .live-info .news .txt { padding: 0 0 20px; }
.liveviewing .live-info .news a { color: #429cff; }
 .liveviewing .live-info .block { padding: 0 0 50px; }
 .liveviewing .live-info .phrase .item { padding: 0 0 10px; }
 .liveviewing .live-info .phrase .name { padding: 0 0 8px; font-size: 22px; }
 .liveviewing .live-info .ticket .table .item { display: block; padding: 13px 0; }
 .liveviewing .live-info .ticket .table .name { padding: 0 0 3px; }
 .liveviewing .live-info .ticket .table .pc { display: none; }
 .liveviewing .live-info .theater { padding: 0 0 15px; }
 .liveviewing .live-info .theater .txt { font-size: 20px; }
 .liveviewing .live-info .btn-ticket { margin: 35px auto 10px; max-width: 330px; }
 .liveviewing .live-info .list { display: block; padding: 10px 0 20px; }
 .liveviewing .live-info .list .list-inner .pref { padding: 0 0 15px; }
 .liveviewing .live-info .list .list-inner h5 { font-size: 16px; }
 .liveviewing .live-info .list .list-inner li { font-size: 16px; }
 .liveviewing .live-info .live-sponsor { padding: 40px 0 0; }
 .liveviewing .live-info .live-sponsor .title { padding: 0 0 12px; font-size: 16px; }
 .liveviewing .live-info .live-sponsor .sponsor-a { padding: 0 0 15px; max-width: 440px; }
 .liveviewing .live-info .live-sponsor .sponsor-b { padding: 0 0 15px; max-width: 440px; }
 .liveviewing .live-info .live-sponsor .sponsor-a .ss { flex-basis: 74%; padding: 0 6px 12px; }
 .liveviewing .live-info .live-sponsor .sponsor-b .ss { flex-basis: calc(100% / 2); padding: 0 4px 8px; }
 .liveviewing .home-btn { padding: 50px 0 10px; }
}

