@charset "utf-8";

/* =base
------------------------------------------------------------------------------------------*/
* { box-sizing: border-box; }
body { color: #fff; font-family: "メイリオ","Meiryo","MS PGothic","Osaka",Arial,sans-serif; font-size: 16px; line-height: 1.5em;; text-align: center; background-color:#000; }

a { color: #f00; text-decoration: none; outline: none; transition: .2s; }
a:hover { color: #f00; text-decoration: underline; }
a:hover img{ opacity: 0.8; filter: alpha(opacity=80); }


@media only screen and (max-width: 639px){
body{ font-size: 14px; line-height: 1.5em; }
}

/* =fade
------------------------------------------------------------------------------------------*/
#js_fade2 { position: fixed; top : 0; left : 0; width: 100%; height: 100%; background-color: rgba(255,255,255,.7); background-image : url( ../images/loading.svg );background-repeat : no-repeat; background-position : 50% 50%; z-index:100; }

/* =ページトップ
------------------------------------------------------------------------------------------*/
.page_top{ margin: 0; position: fixed; right: 30px; bottom: 40px; text-align: center; width: 80px; z-index: 10; }
.page_top a{ background:#034D88; border-radius: 50%; color:#fff; display: block; font-family: "Oswald","メイリオ","Meiryo","MS PGothic","Osaka",Arial,sans-serif; font-size: 12px; height: 80px; line-height: 80px; width: 80px; }
.page_top a:hover{ background: #021B80; text-decoration: none; }

@media only screen and (max-width: 639px){
.page_top{ display: none; }
}

/* = parts
------------------------------------------------------------------------------------------*/
.clearfix::after { content: ""; clear: both; display: block; }
.float-box .box01 { float: left; margin-right: 1%; width: 49.5%; }
.float-box .box01:last-of-type { margin-right: 0; }
.float-box .box01 img { vertical-align: bottom; width: 100%; }
.float-box .box04 { float: left; margin-right: 1%; width: 24.2%; }
.float-box .box04:nth-child(4),
.float-box .box04:nth-child(8) { margin-right: 0; }
.table-box { display: table; width: 100%; }
.table-box .box01 { display: table-cell; vertical-align: middle; width: 50%; }
.table-box .box01 img { vertical-align: bottom; width: 100%; }
.pc-none { display: none; }
.sp-none { display: block; }
span { font-size: .6em; }
.link-button a { border: 3px solid #fff; color: #fff; display: block; font-family: "Oswald","メイリオ","Meiryo","MS PGothic","Osaka",Arial,sans-serif; font-size: 26px; font-weight: bold; letter-spacing: 10px; line-height: 1em; padding: .8em 0; position: relative; text-align: center; transition: all .1s; width: 100%; }
.link-button a::before { border-top: 1px solid #fff; border-right: 1px solid #fff; content: ""; position: absolute; right: 1em; top: calc(50% - 5px); width: 10px; height: 10px; transform: rotate(45deg); }
.link-button a:hover { color: #fff; }
.mb-1vw { margin-bottom: 1vw; }
.mb-2vw { margin-bottom: 2vw; }
.mb-3vw { margin-bottom: 3vw; }
.mb-4vw { margin-bottom: 4vw; }
.mb-5vw { margin-bottom: 5vw; }

.new-artist { background: #cc0000; border-radius: 3px; color: #fff; display: table-cell; font-weight: bold; line-height: 1em; padding: .5em .5em .3em; text-align: center; vertical-align: middle; }

/* = wrap
------------------------------------------------------------------------------------------*/
.content-wrap { margin: 0 auto; width: 70%; min-width: 1000px; }

/* = fade
------------------------------------------------------------------------------------------*/
#js-fade2 { background: rgba(255,255,255,.7) url( ../images/loading.svg ) no-repeat 50% 50%; height: 100%; position : fixed; top: 0;left: 0; width: 100%; z-index: 100; }

/* = aside
------------------------------------------------------------------------------------------*/
.sns-links .tw,
.sns-links .fb { position: relative; padding-left: 0; left: -40px; }
.sns-links .fb { margin-bottom: 30px; }
.sns-links .tw::before,
.sns-links .fb::before { border: 1px solid #fff; border-left: 40px solid #fff; content: ""; position: absolute; top: calc(50% - 3px); left: 0; }
.sns-links .tw i,
.sns-links .fb i { color: #fff; font-size: 24px; line-height: 1em; transition: .2s; }
.sns-links .tw i:hover { color: #55acee; transform: scale(1.2); }
.sns-links .fb i:hover { color: #3B5998; transform: scale(1.2); }

/* = nav
------------------------------------------------------------------------------------------*/
.sp-nav { display: block; }
#toggle { cursor: pointer; position: fixed; top: 0; right: -45px; height: 45px; width: 45px; z-index: 50001; }
#toggle .button { background: #fff; height: 4px; position: absolute; top: calc(50% - 2px); left: 20%; transition: .3s; width: 60%; }
#toggle .button::before,
#toggle .button::after { background: #fff; content: ""; display: block; height: 4px; position: absolute; top: 50%; left: 0; transition: .3s; width: 100%; }
#toggle .button::before { margin-top: -12px; }
#toggle .button::after { margin-top: 8px; }
#toggle .close { background: transparent; top: calc(50% - 4px); }
#toggle .close::before,
#toggle .close::after{ margin-top: 0; }
#toggle .close::before{ transform: rotate(-45deg); }
#toggle .close::after{ transform: rotate(-135deg); }
#menu { display: none; }
.nav-menu { background: rgba(51,69,102,0.95); height: 100%; height: 100vh; position: fixed; top: 0; right: 0; transition: .3s; width: 40%; width: 28vw; z-index: 50000; }
.nav-menu li:nth-child(2) { border-bottom: 1px solid #040032; padding: 45px 20px 20px; position: relative; }
.nav-menu li img { width: 100%; }
.nav-menu li a { border-bottom: 1px solid #060032; color: #fff; display: inherit; font-family: "Oswald","メイリオ","Meiryo","MS PGothic","Osaka",Arial,sans-serif; font-size: 1.5vw; letter-spacing:0.1em; line-height: 1em; padding: 1em 2em; position: relative; text-align: left; width: 100%; }
.nav-menu li:nth-child(2)::after,
.nav-menu li a::after { border-bottom: 1px solid #505982; content: ""; position: absolute; bottom: -2px; left: 0; width: 100%; }
.nav-menu li a:hover{ text-decoration:none; background-color:#0E1A34;}

/* = header
------------------------------------------------------------------------------------------*/
header { background: url(../images/top_background.jpg) no-repeat center;  position: relative; }
.main-stars { opacity: .3; position: absolute; content: ""; display: block; width: 112%; height: 112%; top: 0; background: url(../images/top_background_stars.png) no-repeat center center; z-index: 1; transform: scale(0.1); transition: .3s; }
.main-img { overflow: hidden; position: relative; height: 100vh; max-height: 100vh; max-width: 100%; }
.main-logo-wrap { align-items: center; display: none; height: 100vh; justify-content: center; width: 100vw; z-index: 2; }
.main-logo { height: auto; width: 80vw; max-width: 1300px; z-index: 3; }
.main-logo-left { width: 48% !important; }
.main-logo-right { padding: 30px; width:  100% !important; }
.main-logo-right ul { margin-bottom: 10px; }
.main-logo-right ul li { display: none; float: left; width: 14.2857%; }
.main-logo-right ul li:nth-child(1),
.main-logo-right ul li:nth-child(2) { width: 15%; }
.main-logo-right ul li:nth-child(3) { margin-right: .3%; width: 17%; }
.main-logo-right ul li:nth-child(4) { width: 13%; }
.main-logo-right ul li:nth-child(5) { margin-right: 2%; width: 15.3%; }
.main-logo-right ul li:nth-child(6) { width: 11.2%; }
.main-logo-right ul li:nth-child(7) { width: 10.8%; }
.main-logo-right ul li img { vertical-align: middle; width: 100%; }
.main-logo-heroes,
.main-logo-date { display: none; margin-top: 40px; }
.main-logo-heroes { margin-bottom: 15px; }
.sns-links { position: fixed; top: calc(50% - 10px); left: 0; z-index: 2; }
.company-logo { position: absolute; bottom: 30px; right: 30px; width: 8vw; min-width: 100px; max-width: 143px; z-index: 2; }
.company-logo img { width: 100%; }

/* = cd-info
------------------------------------------------------------------------------------------*/
#cd-info { background: #fff; min-width: 1000px; color:#090e18; }
#cd-info .box01 { margin-right: 0;  }
#cd-info .wrap-box01 { padding: 0 1vw 0 4vw; width: 40%; }
#cd-info .wrap-box02 { padding: 0 2vw 0 0vw; position: relative; width: 60%; }
#cd-info .wrap-box02 .float-box { }
#cd-info .inner-box01 { width: 100%; }
#cd-info .inner-box02 { width: 0%; }
#cd-info .inner-box02 .inner-text { background: #000; margin-bottom: 0.8vw; padding: 1.2vw 1.5vw; }
#cd-info .inner-box02 .shop { width: 100%; }
#cd-info .inner-box02 .shop img { cursor: pointer; width: 100%; }
#cd-info .inner-box02 .shop img:hover { opacity: .8; }

#cd-info h2,
#cd-info p,
#cd-info li { font-family: "Oswald","メイリオ","Meiryo","MS PGothic","Osaka",Arial,sans-serif; text-align: center; }
#cd-info h2 { font-weight: bold;font-size: 1.8vw; letter-spacing: 0.1em; line-height: 1.2em; margin-bottom: 0.8vw; }
#cd-info h2 span { font-size: .7em; line-height: 1.8em; display:block; letter-spacing:0.1em;}
#cd-info .cd-info-label { background: #000202; color: #fff; font-size: 2.5vw; font-weight: bold; letter-spacing: 1vw; line-height: 1em; margin-bottom: 0.6vw; padding: .3em 0; text-align: center; width: 100%; }
#cd-info .cd-info-label span { font-size: .7em; }
#cd-info .inner-box01 p { font-size: 1.4vw; font-weight: bold; line-height: 1.2em; margin-bottom: .8em; letter-spacing:0.05em; }
#cd-info .inner-box01 p span { font-size: .9em; }
#cd-info .inner-box01 li { font-size: 1.3vw; line-height: 1.8em; }
#cd-info .inner-box02 li { float: center; margin-bottom: 1%; width: 32.5%; }
#cd-info .inner-box02 li:nth-child(2),
#cd-info .inner-box02 li:nth-child(5) { margin: 0 1% 1%; }
#cd-info .inner-box02 li img { width: 100%; }
#cd-info .inner-box02 li a { display: block; }
.cd-info-footer { text-align: right; font-size:1vw; padding-top:3vw;}
.cd-info-footer li { display: inline-block; text-align: left; }
.cd-info-footer .jms img { margin-left: 10px; width: 3vw; }
.cd-info-footer .psr img { margin-left: 10px; width: 2.5vw; }





/* = modal
------------------------------------------------------------------------------------------*/
.modal .checkbox{ display: none;}

#modal_box{ background-color:#FFF; padding:2vw; text-align:left;}
.modal .modal-heading { background: #006666; color: #fff !important; font-family: "Oswald","メイリオ","Meiryo","MS PGothic","Osaka",Arial,sans-serif; font-size: 38px; font-weight: bold; letter-spacing: 1px; line-height: 1em; margin-bottom: 10px; padding: .3em 0; text-align: center; width: 100%; }
.modal .modal-box { border: 1px solid #006666; margin-bottom: 3px; padding: 12px 50px; }
.modal .modal-box h3 { color: #006666; font-size: 16px; font-weight: bold; line-height: 1em; position: relative; padding-left: 1.2em; text-align: left; }
.modal .modal-box h3::before { content: "■"; position: absolute; left: 0; }
.modal p { color: #006666; float: none; font-family: "メイリオ","Meiryo","MS PGothic","Osaka",Arial,sans-serif; font-size: 16px; font-weight: bold; margin-bottom: 10px; text-align: center;}
.modal ul { padding-top: 8px; }
.modal ul li { color: #006666; float: none; font-family: "メイリオ","Meiryo","MS PGothic","Osaka",Arial,sans-serif; font-size: 14px; margin: 0; width: 100%; }
.modal ul li:nth-child(2),
.modal ul li:nth-child(4),
.modal ul li:nth-child(5) { margin: 0; }



/* = movies
------------------------------------------------------------------------------------------*/
#movies { overflow: hidden; position: relative; max-height: 800px; min-width: 1000px; }
#movies h2 img { width: 100%; }
#movies .leftbox,
#movies .rightbox { float: left; min-height: 425px; height: 50vw; max-height: 800px; margin: 0; overflow: hidden; position: relative; transition: .3s; width: 100%; }
#movies .leftbox-background,
#movies .rightbox-background,
#movies .rightbox-background2{ height: 100%; transition: .5s; width: 100%; background-size:cover!important;}
#movies .leftbox-background:hover,
#movies .rightbox-background:hover,
#movies .rightbox-background2:hover{ opacity: .8; transform: scale(1.1); }
#movies .leftbox-background { background: url(../images/movie_background_01.jpg) no-repeat center; }
#movies .rightbox-background { background: url(../images/movie_background_02.jpg) no-repeat center; }
#movies .rightbox-background2 { background: url(../images/movie_background_03.jpg) no-repeat center; }
#movies h2,
#movies .leftbox .inner-wrap,
#movies .rightbox .inner-wrap,
#movies .rightbox2 .inner-wrap,
#movies .onebox .inner-wrap { height: auto; position: absolute; top: 50%; left: 50%; transform: translate3d(-50%, -50%, 0); width: 90%; }
#movies h2 { max-height: 436px; width: 19vw; z-index: 4; left: 0; top: 0; transform: translate3d(-5%,-15%,0);}
#movies .video-wrapper { min-height: 100vh !important; min-width: 100vw !important; }
#movies .video-frame { top: 60vw !important; left: 50vw !important; }

#movies .onebox { background: url(../images/movie_background_01.jpg) no-repeat center; background-size:cover; margin: 0;  height: 50vw; max-height: 850px; overflow: hidden; position: relative; transition: .3s; width: 100vw; }
#movies a{ color: #fff;}

#movies h3,
#movies .movies-play,
#movies .movies-underconstraction { font-family: "Oswald","メイリオ","Meiryo","MS PGothic","Osaka",Arial,sans-serif; font-weight: bold; line-height: 1em; letter-spacing: 16px; margin-bottom: 2vw; text-align: center; }
#movies h3 { font-size:1.5vw; }
#movies .title { font-family: "Vollkorn","メイリオ","Meiryo","MS PGothic","Osaka",Arial,serif; font-size: 1.7vw; line-height: 1em; letter-spacing: 0.3em; margin-bottom:2vw; text-align: center; }
#movies .movies-play { border: 2px solid #fff; font-size: 1.1vw; line-height: 1em; margin: 0 auto; padding: .6em 0 .6em 16px; text-align: center; width: 35%; }
#movies .movies-play a { color: #fff; text-align: center; }
#movies .movies-play a:hover { background: #fff; color: #000; }
#movies .movies-underconstraction { font-size: 16px; }

@media screen and (max-width: 1200px) {
#movies .leftbox .inner-wrap { left: 45%; }
#movies .rightbox .inner-wrap { left: 55%; }
}

/* = tour-schedule
------------------------------------------------------------------------------------------*/
#tour-schedule { background: #000 url(../images/tour_background.jpg) no-repeat top center; padding: 50px 0; }
#tour-schedule h2 { margin: 0 auto; width: 100%; padding-bottom: 50px; }
#tour-schedule h3 img,
#tour-schedule h2 img { width: 100%; }
#tour-schedule ul { border-bottom: 1px solid #fff; display: table; margin-bottom: 34px; width: 100%; border-spacing:none;}
#tour-schedule ul li { display: table-cell; padding-bottom: 30px; text-align: left; vertical-align: middle; }
#tour-schedule ul li a { color: #fff; margin-bottom: 6px; }
#tour-schedule ul li a:hover { color: #669999; }
#tour-schedule .days { font-family: "Oswald","メイリオ","Meiryo","MS PGothic","Osaka",Arial,sans-serif; font-size: 40px; line-height: 1em; width: 35%; }
#tour-schedule .days strong { font-size: 1.5em; line-height: 1em; }
#tour-schedule .place-wrap { font-size: 14px; line-height: 1.5em; width: 55%; }
#tour-schedule .place-wrap ul { border-bottom: none; display: block; margin-bottom: 0; }
#tour-schedule .sponsor { margin-bottom: 8px; }
#tour-schedule .place-wrap ul li { display: block; padding-bottom: 0; }
#tour-schedule .place { font-size: 20px; line-height: 1.2em; margin-bottom: 5px; }
#tour-schedule .guest { font-size: 20px; line-height: 1.2em; }
#tour-schedule .guest strong { font-size: 1.6em; line-height: 1.2em; letter-spacing: 0.4vw;}
#tour-schedule .tickets { text-align: center; width: 10%; }
/*#tour-schedule .tickets ul { border-bottom: none; display: block; margin-bottom: 0; width: 100%;  }
#tour-schedule .tickets li { display: block; float: left; padding-bottom: 0; padding-right: 2px; text-align: right; width: 20%; }*/
#tour-schedule .tickets ul { border-bottom: none; display: block; margin-bottom: 0; text-align: right; width: 100%; }
#tour-schedule .tickets li { display: inline-block; padding-bottom: 0; padding-right: 2px; text-align: left; width: 70%; }
#tour-schedule .tickets li:last-of-type { margin-right: 0; }
#tour-schedule .tickets a { display: block; }
#tour-schedule .tickets li img { width: 96%; }
#tour-schedule .final { background: #fff; color: #000; font-family: "Oswald","メイリオ","Meiryo","MS PGothic","Osaka",Arial,sans-serif; font-size: 30px; font-weight: bold; letter-spacing: 0.03em; line-height: 1em; margin-bottom: 1.5vw; padding: 1vw 0; text-align: center; width: 100%;}
#tour-schedule .tour-slide img { width: 100%; }

#tour-schedule .tourfinal {}
#tour-schedule .tourfinal .days { width: 35%; }
#tour-schedule .tourfinal .place-wrap { width:55%;}
#tour-schedule .tourfinal .tickets { width:10%;}
#tour-schedule .tourfinal .tickets li{ width:70%}

#tour-schedule .redbull { background-color:#db0941; padding:1.5vw 0 1vw; margin-bottom:2.5vw;}
#tour-schedule .redbull .content-wrap{ width:70%;}
#tour-schedule .redbull ul{ border:none; margin:0 auto;}
#tour-schedule .redbull ul li{ padding-bottom:10px;}
#tour-schedule .redbull .days { width: 23%; }
#tour-schedule .redbull .place-wrap { width: 77%; }
#tour-schedule .redbull .place-wrap ul { margin-bottom:1.5vw;}
#tour-schedule .redbull .place-wrap ul li{ padding-bottom:0;}
#tour-schedule .redbull .place-wrap .redbull-heading {  display: inline-block; font-size: 26px; line-height: 1em; padding: .4em 0;width: 100%; }
#tour-schedule .redbull .place-wrap strong{ font-size:16px;}

#tour-schedule .redbull .redbull_link a{ display:block; text-align:center; border:2px solid #fff; padding:1vw; font-weight:bold; font-size:16px; width:80%;}
#tour-schedule .redbull .redbull_link a:hover{ color:#ddd; border-color:#CCC; text-decoration:none;}

.soldout{    background-color: #F00;
    font-size: 20px;
	color: #fff;
    display: block;
    width: 6em;
    text-align: center;
    float: left;
    line-height: 1em;
    height: 32px;
    line-height: 32px;
    margin-right: 15px;}






/* = goods
------------------------------------------------------------------------------------------*/
#goods { background: #111 url(../images/goods_background.jpg) no-repeat center; padding: 50px 0; }
#goods h2 { font-family: "Oswald","メイリオ","Meiryo","MS PGothic","Osaka",Arial,sans-serif; font-size: 60px; font-weight: bold; line-height: 1em; letter-spacing: 20px; margin-bottom: 20px; text-align: center; }
#goods .goods_lead{ margin-bottom:20px; font-weight:bold; font-size:24px; line-height:1em;}

#goods .goods_box{}
#goods .goods_box div{ float:left; margin-right:1.33%; width:30%; line-height:0; margin-bottom:20px;}
#goods .goods_box div:nth-child(3n){ margin-right:0;}
#goods .goods_box div p{ background-color:#20212D; line-height:1.4em; padding:10px 0;}
#goods .goods_box img { width: 100%; }

#goods .link-button a{ padding:15px 0 25px;}
#goods .link-button a:hover{ text-decoration:none; opacity:0.7;}
#goods .link-button span{ display:block; letter-spacing:normal; margin-bottom:5px;}


/* = interview
------------------------------------------------------------------------------------------*/
#interview { background: #222 url(../images/interview_background.jpg) no-repeat center; padding: 30px 0 80px; }
#interview.idetail{ background-position:center top; background-attachment:fixed; background-size:cover;}
#interview .table-box { margin-bottom: 30px; }
#interview .leftbox { padding-right: 2%; width: 48%; }
#interview .rightbox { width: 50%; }
#interview p { padding-bottom: 1em; position: relative; text-align: left; }

#interview .interview_link a{ display:block; font-family: "Oswald","メイリオ","Meiryo","MS PGothic","Osaka",Arial,sans-serif; letter-spacing:0.3em; position:relative; background-color:#266574; color:#FFF; border-radius:10px; padding:40px 0; font-size:30px; line-height:1em;}
#interview .interview_link a::before {
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    content: "";
    position: absolute;
    right: 1em;
    top: calc(50% - 5px);
    width: 10px;
    height: 10px;
    transform: rotate(45deg);
}
#interview .interview_link a:hover{ text-decoration:none; background-color:#338598;}

.interview_detail{ text-align:left; font-size:18px; line-height:1.8em;}
.interview_detail h2{ font-weight:bold; font-size:24px; line-height:1.5em; padding:0 0 10px; margin-bottom:20px; border-bottom:2px solid #699;}

.interview_block{ background-color:rgba(0,0,0,0.5); padding:2vw 3vw; margin-bottom:10px;}

.interview_detail dl{ margin-bottom:20px;}
.interview_detail dt{ float:left; font-weight:bold;}
.interview_detail dd{ padding-left:6em; margin-bottom:1.4em;}

.interview_detail .leadtxt{  margin-bottom:10px; font-size:16px; line-height:1.7em;}
.interview_detail dt.flj{color:#0CC;}
.interview_detail dt.namba{ color:#F47;}
.interview_detail dt.khy{ color: #FC0;}
.interview_detail dt.k5{ color: #F9C;;}
.interview_detail dt.sambu{ color:#0CF;}

/* = footer
------------------------------------------------------------------------------------------*/
footer { background: #000; border-top: 3px solid #717171;  padding: 2vw 3vw 3vw; }
footer .wrap-box01 { float:left; }
footer .wrap-box02 { width: 520px !important; float:right; padding-right:100px;  }
footer .inner-box01 { width: 50% !important; }
footer .inner-box02 { width: 50% !important; }
.copyright-text { font-size: 12px; line-height: 1em; text-align: left; padding-top:1vw;  font-family: "Oswald","メイリオ","Meiryo","MS PGothic","Osaka",Arial,sans-serif; }
.footer-sns ul { text-align: right; }
.footer-sns li { display: inline-block; margin-right: 2px; text-align: left; }
.footer-sns li a { background: #181B20; border-radius: 50%; color: #fff; display: block; font-size:25px; font-weight: bold; text-align: center; transition: .2s; line-height: 60px; width: 55px; height: 55px; }
.footer-sns li a:hover { background: #455273; transform: rotate(360deg) scale(1.1); }

footer .wrap-box03 { float: right; padding-right: 100px; width: 380px; }
footer .wrap-box03 .table-box { text-align: right; }
footer .wrap-box03 .table-box .box01 { display: block !important; } 
footer .wrap-box03 .table-box .box01:nth-child(1) { margin-bottom: 3%; }
footer .wrap-box03 .inner-box01,
footer .wrap-box03 .inner-box02 { width: 100% !important; }
footer { position: relative; }
.copyright-text { padding-top: 0; position: absolute; bottom: 3vw; }

/* = animation
------------------------------------------------------------------------------------------*/
.fadeDown {
 animation-fill-mode:both;
 animation-duration:1s;
 animation-name: fadeDown;
 visibility: visible !important;
}
@keyframes fadeDown {
 0% { opacity: 0; transform: translateY(-20px); }
 100% { opacity: 1; transform: translateY(0); }
}

/* = smartphone
------------------------------------------------------------------------------------------*/
@media screen and (max-width: 768px) {

/* = parts
------------------------------------------------------------------------------------------*/
.float-box .box01,
.float-box .box04 { float: none; margin-right: 0; width: 100%; }
.table-box { display: block; }
.table-box .box01 { display: block; width: 100%; }
.link-button a { border: 2px solid #fff; font-size: 16px; letter-spacing: 2px; padding: 1em 0; }
.link-button a::before { right: .6em; }
.pc-none { display: block; }
.sp-none { display: none !important; }

/* = nav
------------------------------------------------------------------------------------------*/
.nav-menu { left: 0; width: 100%; width: 100vw; }
.nav-menu li a { font-size: 18px; letter-spacing: 8px; line-height: 1em; }

/* = modal
------------------------------------------------------------------------------------------*/
.modal .modal-heading { font-size: 16px; padding:2vw 0; }
.modal .modal-box { padding: 10px 12px; }
.modal ul li{ font-size:12px; line-height:1.5em;}
.modal ul li:nth-child(2),
.modal ul li:nth-child(4),
.modal ul li:nth-child(5) { margin: 0; }


/* = wrap
------------------------------------------------------------------------------------------*/
header { background: url(../images/top_background_sp.jpg) no-repeat center; }
.content-wrap,
#cd-info,
#movies { width: 100%; min-width: initial; }
.content-wrap { width: 90%; }
.sm-wrap { margin: 0 auto; width: 90%; }
.main-img { height: auto; max-height: initial; }
.main-logo-wrap { margin: 53px auto 0; height: auto; width: 90%; }
.main-logo { width: 100%; max-width: initial; }
.main-logo-left { width: 100% !important; }
.main-logo-right { padding: 20px 0; width: 100% !important; }
.company-logo { display:block; position:inherit; bottom:0; right:0; width:100%; max-width:inherit; padding:0 0 5vw; }
.company-logo img{ width:25%;}


#cd-info .wrap-box01,
#cd-info .wrap-box02,
#cd-info .inner-box01,
#cd-info .inner-box02 { width: 100%; }
#cd-info .wrap-box02 { padding: 0; }
#cd-info h2,
#cd-info .wrap-box02 p,
#cd-info .inner-box01 li { text-align: center; margin-left: auto; margin-right: auto; width: 94%; }
#cd-info .inner-box02 li { float: left; margin: 0 1% 1% 0; width: 49.5%; }
#cd-info .inner-box02 li:nth-child(2),
#cd-info .inner-box02 li:nth-child(4) { margin: 0 0 1%; }
#cd-info .inner-box02 li:nth-child(5) { margin: 0 1% 1% 0; }
#movies .leftbox,
#movies .rightbox,
#movies .rightbox2 { background-size: contain; float: none; margin-left: -5%; min-height: initial; height: 88vw; max-height: initial; width: 110%; }
#movies .leftbox .inner-wrap,
#movies .rightbox .inner-wrap,
#movies .rightbox2 .inner-wrap { left: 50%; padding: 20px 0; }

#cd-info h2 { font-size:4.0vw; letter-spacing:0.1em; margin-bottom:4vw; padding-left:0.1vw;}
#cd-info h2 strong{ display:block; font-size:10vw; line-height:1em; letter-spacing:0.1em; text-indent:0.2em; margin-bottom:0.17em;}
#cd-info h2 span { font-size: .9em; letter-spacing:0.1em; margin-bottom:0.7vw}
#cd-info .cd-info-label { font-size: 7vw; letter-spacing: 0.1em; padding: .5em 0; margin-bottom:2vw; }
#cd-info .inner-box01 p { font-size: 5.5vw; margin-bottom:2vw; }
#cd-info .inner-box01 ul { padding-bottom: 12px; }
#cd-info .inner-box01 li { font-size: 16px; }
.cd-info-footer { bottom: calc(19vw + 20px); right: 4vw; position:absolute; }
.cd-info-footer li { color: #fff !important; font-size: 10px; }
.cd-info-footer .jms img { margin-left: 4px; vertical-align: top; width: 30px; }
.cd-info-footer .psr img { margin-left: 4px; vertical-align: top; width: 20px; }
#cd-info .inner-box02 .inner-text { margin-bottom: 0; padding: 16px 3% 12px; }
#cd-info .inner-box02 .shop { background: #000; padding: 0 5% 20px; }

#movies h2 {max-height: initial; width: 35vw; }
#movies h3,
#movies .movies-play,
#movies .movies-underconstraction { letter-spacing: 8px; margin-bottom: 4vw; }
#movies h3 { font-size: 6vw; }
#movies .title { font-size: 5vw; margin-bottom:4vw; }
#movies .movies-play { padding: 2vw 0 2vw 6px; width: 70%; font-size:3.5vw; }
#movies .movies-underconstraction { font-size: 16px; }
#movies .leftbox { background: url(../images/movie_background_01.jpg) no-repeat center; }
#movies .rightbox { background: url(../images/movie_background_02.jpg) no-repeat center; }
#movies .rightbox2 { background: url(../images/movie_background_03.jpg) no-repeat center; }

#movies .onebox,
#movies .leftbox,
#movies .rightbox,
#movies .rightbox2 { background-size: cover; margin-left: 0; overflow: hidden; height:80vw; width: 100vw; position:relative;}

/* = tour-schedule
------------------------------------------------------------------------------------------*/
#tour-schedule .content-wrap { width: 90%; }
#tour-schedule { padding: 25px 0; }
#tour-schedule h2 { padding-bottom: 4px; }
#tour-schedule ul { border-bottom: 1px solid rgba(255,255,255,.8); display: block; margin-bottom: 10px; }
#tour-schedule ul li { display: block; padding-bottom: 10px; }
#tour-schedule .days,
#tour-schedule .redbull .days,
#tour-schedule .place-wrap,
#tour-schedule .redbull .place-wrap,
#tour-schedule .tickets { width: 100%; }
#tour-schedule .redbull .redbull-heading { text-align: left; line-height: 1.2em; padding: .5em .8em; }
#tour-schedule .days { font-size: 28px; }
#tour-schedule .place { font-size: 20px; }
#tour-schedule .place-wrap .open,
#tour-schedule .place-wrap .sponsor { font-size: 10px; line-height:1.5em; }
#tour-schedule .tickets { text-align: center; }
#tour-schedule .tickets li { width: 20%; }
#tour-schedule .guest { font-size: 15px; line-height:1.6em;}
#tour-schedule .guest strong { font-size: 2em; line-height:1.1em;}
#tour-schedule .final { font-size: 18px; letter-spacing: 2px; padding: .6em 0; }
#tour-schedule .sponsor{ margin-bottom:3px;}

#tour-schedule .tourfinal {}
#tour-schedule .tourfinal .days { width: 100%; }
#tour-schedule .tourfinal .place-wrap { width:100%;}
#tour-schedule .tourfinal .tickets { width:100%;}
#tour-schedule .tourfinal .tickets li{ width:20%}

#tour-schedule .redbull {padding:2vw 0; margin-bottom:2.5vw;}
#tour-schedule .redbull .content-wrap{ width:90%;}
#tour-schedule .redbull ul{ border:none; width:100%; margin:0 auto;}
#tour-schedule .redbull ul li{ padding-bottom:10px;}
#tour-schedule .redbull .days { width: 100%; }
#tour-schedule .redbull .place-wrap { width: 100%; }
#tour-schedule .redbull .place-wrap ul{ margin-bottom:3vw;}
#tour-schedule .redbull .place-wrap ul li{ padding-bottom:0;}
#tour-schedule .redbull .place-wrap .redbull-heading {  display: inline-block; font-size: 14px; line-height: 1em; padding: .4em 0;width: 100%; }
#tour-schedule .redbull .place-wrap .place{ font-size:20px; line-height:1.2em; margin:0;}
#tour-schedule .redbull .place-wrap .open{ margin-bottom:10px;}
#tour-schedule .redbull .place-wrap strong{ font-size:16px;}

#tour-schedule .redbull .redbull_link a{ padding:2.5vw 1vw;  font-size:16px; width:100%;}


.soldout{
    height: 24px;
	font-size: 20px;
    line-height: 24px; margin-right:5px;}

/* = goods
------------------------------------------------------------------------------------------*/
#goods{ padding:20px 0;}
#goods h2{ font-size:36px; padding-left:0.5em; margin-bottom:15px;}
#goods .goods_lead{ font-size:16px;}

#goods .float-box .box04 { float: left; margin: 0 1% 1% 0; width: 49.5%; }
#goods .float-box .box04:nth-child(even) { margin: 0 0 1% 0; }

#interview .leftbox,
#interview .rightbox { padding: 0; width: 100%; }
#interview .leftbox { padding-bottom: 10px; }

#goods .goods_box{ margin-bottom:40px;}
#goods .goods_box div{ float: left; margin-right:0; width:100%; line-height:0; margin-bottom:0px;}
#goods .goods_box div p{ background-color:#20212D; line-height:1.4em; padding:10px 0;}
#goods .link-button a{ padding:2vw 0 4vw;}
#goods .link-button a:hover{ text-decoration:none; opacity:0.7;}
#goods .link-button span{ display:block; letter-spacing:normal; margin-bottom:5px;}


/* = interview
------------------------------------------------------------------------------------------*/
#interview { padding:10px 0 30px 0; background-size:cover;}
#interview .table-box{ margin-bottom:10px;}
#interview .interview_link a{  letter-spacing:0.1em; border-radius:5px; padding:25px 0; font-size:16px; line-height:1em;}


#interview.idetail{ padding-top:50px;}

.interview_detail{ text-align:left; font-size:16px; line-height:1.7em;}
.interview_detail h2{ font-weight:bold; font-size:16px; line-height:1.5em; padding:10px; margin-bottom:20px; border-bottom: none; background-color:#266574; color:#fff; }

.interview_block{ background:none; padding:0; margin-bottom:10px;}

.interview_detail dl{ margin-bottom:20px;}
.interview_detail dt{ float:none; font-weight:bold;}
.interview_detail dd{ padding-left:0; margin-bottom:1.4em;}

.interview_detail .leadtxt{  margin-bottom:10px; font-size:14px; line-height:1.6em;}
.interview_detail dt.flj{color:#0CC;}
.interview_detail dt.namba{ color:#F47;}
.interview_detail dt.khy{ color: #FC0;}
.interview_detail dt.k5{ color: #F9C;;}
.interview_detail dt.sambu{ color:#0CF;}

/* = footer
------------------------------------------------------------------------------------------*/
footer { background: ##181B20; border-top: none; padding: 20px 0 40px; }
footer .wrap-box01,
footer .wrap-box02 { width: 100% !important; }
footer .wrap-box02 .table-box { display: table !important; }
footer .inner-box01,
footer .inner-box02 { display: table-cell !important; width: 50% !important; }
footer .wrap-box02{ padding:0 3vw; float:none; margin:0 auto;}
.copyright-text { padding: 15px 0 0; text-align: center; }
.footer-sns ul { text-align: left; }
.footer-sns li { display: inline-block; margin-right: 4px; text-align: left; }
.footer-sns li a { background: ##181B20; border-radius: 50%; color: #fff; display: block; font-size: 20px; font-weight: bold; text-align: center; line-height: 40px; width: 40px; height: 40px; }

footer .wrap-box03 { float: none; margin: 0 auto; padding: 0 3vw; width: 100% !important; }
footer .wrap-box03 .table-box { text-align: center; }
footer .wrap-box03 .inner-box01,
footer .wrap-box03 .inner-box02 { margin: 0 auto; text-align: center; width: 75% !important; }
footer .wrap-box03 .footer-sns li a { line-height: 55px; height: 55px; width: 55px; }
.copyright-text { padding-top: 25px; position: relative; }

/* =SNSボタン
----------------------------------*/
.sp-header { background: rgba(0,0,0,.3); position: fixed; top: 0; padding: 10px ; width: 100%; z-index: 1000; }
.btn-sns { display: block; width: 100%; z-index: 100;}
.btn-sns ul { width: 270px; padding-top:3px; line-height:0; }
.btn-sns ul li { float: left; margin-right: 6px;}
.btn-sns ul li:last-child { margin-right: 0; }
.btn-sns ul li.tw { }

}

/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;
    outline: none;
    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}
.slick-arrow { background: #03051A; border: none; height: 50px; cursor: pointer; outline: none; position: absolute; top: calc(50% - 25px); transition: .1s; width: 40px; z-index: 100; }
.slick-arrow:hover { background: #334566; }
.slick-prev { left: 0; }
.slick-next { right: 0; }
.slick-prev::after,
.slick-next::after { content: ""; position: absolute; top: calc(50% - 5px); width: 10px; height: 10px; transform: rotate(45deg); transition: .2s; }
.slick-prev::after { border-bottom: 1px solid #fff; border-left: 1px solid #fff; left: 15px; top: calc(50% - 5px); }
.slick-next::after { border-top: 1px solid #fff; border-right: 1px solid #fff; right: 15px; }
.slick-prev:hover::after { left: 12px; }
.slick-next:hover::after { right: 12px; }

/* Dots */
.slick-slider { margin-bottom: 30px; }

.slick-dots { position: absolute; bottom: -20px; list-style: none; display: block; text-align: center; padding: 0; width: 100%; }
.slick-dots li { position: relative; display: inline-block; height: 20px; width: 20px; margin: 0 5px; padding: 0; cursor: pointer; }
.slick-dots li button { border: 0; background: transparent; display: block; height: 20px; width: 20px; outline: none; line-height: 0; font-size: 0; color: transparent; padding: 5px; cursor: pointer; }
.slick-dots li button:hover, .slick-dots li button:focus { outline: none; }
.slick-dots li button:hover:before, .slick-dots li button:focus:before { opacity: 1; }
.slick-dots li button:before { position: absolute; top: 0; left: 0; content: "\2022"; width: 20px; height: 20px; font-family: "slick"; font-size: 30px; line-height: 30px; text-align: center; color: black; opacity: 0.33; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.slick-dots li.slick-active button:before { color: #fff; opacity: 0.75; }

/* youtube */

#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden;}
#cboxOverlay{position:fixed; width:100%; height:100%;}
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
#cboxContent{position:relative;}
#cboxLoadedContent{overflow:auto;}
#cboxTitle{margin:0;}
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none;}
.cboxIframe{width:100%; height:100%; display:block; border:0;}
#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box;}
/* 
    User Style:
    Change the following styles to modify the appearance of ColorBox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay{background:#000;}
#colorbox{outline:none;}
   /* #cboxContent{margin-bottom:60px; overflow:visible;}*/
    #cboxContent{margin-right:60px; overflow:visible; margin-bottom:0;}
        .cboxIframe{background:#000;}
        #cboxError{padding:50px; border:1px solid #ccc;}
        #cboxLoadedContent{background:#000;}
        #cboxLoadingGraphic{background:url(../images/loading_b.gif) no-repeat center center;}
        #cboxLoadingOverlay{background:#000;}
        #cboxTitle{position:absolute; top:-22px; left:0; color:#000;}
        #cboxCurrent{position:absolute; top:-22px; right:205px; text-indent:-9999px;}
        #cboxSlideshow, #cboxClose{text-indent:-9999px; width:40px; height:100%; position:absolute; top:0;background:url(../images/controls2.png) no-repeat 0 0;}
		
        #cboxClose{background-position:7px 0; right:-50px; border:0; outline:none;}
        #cboxClose:hover{background-position:-40px 0;}


@media screen and (max-width: 768px) {
#cboxContent{ margin-right:0; margin-bottom:50px;}
#cboxClose{ right:0; top:inherit; bottom:-35px; height: 22px;}
}