@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:500,700');

@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:900&text=各プ席表記好評夜以外レイガイドチケット先行抽選受付中！チケットぴあローソンチケットe＋昼公演 TICKET SOLD OUT!!各プレイガイドチケット一般発売中！事前予約・会場受取 受付中受付期間：2023年6月3日(土) 23:59まで見切れ席チケット追加販売中!見切れ席見切れ席(注釈付セカイシンフォニーSekai Symphony 2023 Live Blu-rayオリジナルホログラム缶バッジ（全6種/ランダム1種封入）封入特典https://sekaisymphony.lnk.to/2023live引換＜中島 由貴（日野森 志歩役）さん出演見合わせのお知らせ＞券＆セカイシンフォニー2022 オフィシャルグッズ事後通販チェーン店別特典数量限定! オリジナルクリアファイルプレゼント!!');

@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:300&text=ComingSoonセカイシンフォニーとは・・・Art by iXima');
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400&text=ComingSoonセカイシンフォニーとは・・・美しく響く音の祭典—『セカイシンフォニー』プロセカに収録されている楽曲たちをオーケストラ＋スペシャルバンドで奏でるコンサート');

@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400&display=swap&text=Comment役栗田博文東京フィルハーモニー交響楽団野口瑠璃子星乃一歌礒部花凜天馬咲希中島由貴日野森志歩');


@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@700&display=swap&text=Comment');

@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@600&display=swap');


@font-face {
	font-family: 'Advantage';
	src: url(../AdvantageDemi.ttf);
}



html,body,a,p,ul,li,h1,h2,h3,h4,h5,h6,figure,dl,dt,dd{margin:0;padding:0;}

*{
    box-sizing: border-box;
    font-family: YakuHanJP_Noto,'Noto Sans JP', sans-serif;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    tap-highlight-color: rgba(0, 0, 0, 0);
    outline: none;
    font-weight: 700;
    color: #13507d;
    -ms-overflow-style: none;
    scrollbar-width: none;
    
}

*::-webkit-scrollbar{
  display: none;
}
html{
    font-size: 24px;
    
}

@media screen and (max-width: 1130px){
    html{
    font-size: 1.9vw;
}
}


body{
    
    overflow-x: hidden;
    background: #fff;
}

img{
    width: 100%;
    height: auto;
    pointer-events: none;
    user-select: none;
    display: block;
    font-size: 0;
}

a{
    color: inherit;
    text-decoration: none;
    
}
a:hover{
    transition-duration: 0.2s;
    opacity: 0.7;
}

li{
    list-style-type: none;
}

.sp{
    display: none;
}


@media screen and (max-width: 896px){
    .pc{
        display: none;
    }
    
    .sp{
        display: block;
    }
}



.prf-modal{
    width: 530px;
    display: none;
   position: relative;
    z-index: 999999999;
    
}

.jquery-modal .modal{
    opacity: 0;
    animation: fade 0.3s linear forwards;
}



@keyframes fade {
  0% {
    opacity: 0;
  }
  100% {
   opacity: 1;
  }
}
.prf-modal#prf5{
    width: 770px;
}


.prf-modal h2{
    font-family: YakuHanJP,'Noto Serif JP', serif;
    color: #fff;
    font-weight: 200;
    margin-bottom: 15px;
    font-size: 48px;
    line-height: 1.3;
}

.prf-modal h2 span{
    font-size: 62%;
    display: block;
    font-family: YakuHanJP,'Noto Serif JP', serif;
    color: #fff;
    font-weight: 400;
}

.prf-modal h2 span small{
    font-size: 80%;
    display: inline-block;
    font-family: YakuHanJP,'Noto Serif JP', serif;
    color: #fff;
    font-weight: 400;
    margin-left: 0.15em;
}
.prf-modal p{
    text-align: left;
    color: #fff;
    font-size: 15.8px;
    font-weight: 500;
    line-height: 1.7;
    text-align: justify;
}

.prf-modal p a{
    font-weight: 500;
}
.prf-modal figure{
    width: 70%;
    margin: 0 auto 30px;
}

#prf2 figure,#prf5 figure{
    width: 100%;
}
.comment{
    margin-top: 40px;
}
.comment strong{
    font-family: YakuHanJP,'Noto Serif JP', serif;
    color: #fff;
    font-weight: 700;
    font-size: 18px;
    border-bottom: solid 1px;
    display: block;
    margin-bottom: 10px;
    padding-bottom: 5px;
    
}

.goods-modal{
    width: 90%;
    max-width: 1000px;
    margin: 0 auto;
    display: none;
}
.main-back{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../img/poster.jpg);
    background-size: cover;
    background-position: center;
}

.main-back.top-main-back{
    background: url(../img/poster2.jpg);
    background-size: cover;
    background-position: center;
}
.main-back video{
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.wrap{
    position: relative;
    
}

/*
.hero h1{
    position: absolute;
    top: 0;
    width: 147%;
    left: 50%;
    transform: translateX(-50%);
}
*/

.hero-wrap{
    position: relative;
    /*
    margin-bottom: 35px;*/
}


.hero figure{
    box-shadow: 0 10vw 5vw #fff;
}


.hero h1{
     max-width: 1070px;
    width: 95%;
    margin: -18% auto 0;
    
}
.hero-wrap p{
    display: inline-block;
    position: absolute;
    bottom: 30px;
    right: 110px;
    font-weight: 100;
    font-size: 16px;
    letter-spacing: -0.02em;
}


    
   

.inner{
    max-width: 1000px;
    width: calc(100% - 160px);
    margin: 0 auto;
    position: relative;
}

.attention{
    max-width: 1000px;
    width: calc(100% - 160px);
    background: #fff;
    border: 3px solid #f00;
    padding: 35px 50px;
    font-size: 18px;
    text-align:center;
    color: #f00;
    margin: 0 auto;
    margin-top: 75px;
    position: relative;
    z-index: 2;
}

.attention strong{
    display: block;
    font-size: 120%;
    margin-bottom: 0.5em;
    color: #f00;
    font-weight: 900;
}
    .information{
      padding: 0 0 15vw;
        margin-top: -70px;
        
    }

.information aside{
    text-align: center;
    font-size: 14px;
    margin-top: 10px;
}

.jouei-bnr{
    display: block;
    margin: 75px 0 35px;
}
.info{
    position: relative;
}
.info:after {
    content: "公演は終了しました";
    color: #f00;
    text-align: center;
    font-size: 0.9rem;
    border: solid 3px;
    font-weight: bold;
    padding: 0.2em 0.5em;
    background: rgba(255,255,255,.8);
    z-index: 2;
    width: 10.5em;
    display: block;
    margin: 20px auto 0;
    line-height: 1.3;
    position: absolute;
    top: 25%;
    left: 50%;
    transform: translate(-50%,-50%) rotate(7deg);
    white-space: nowrap;
}
.map{
   
    margin: 30px auto 0;
    height: 570px;
    
}

.map iframe{
    width: 100%;
    height: 100%;
}


.triger{
    position: absolute;
    top: -9.3vw;
}
.profile{
    background: #cbd0f8;
    position: relative;
    padding: 65px 0 90px;
    text-align: center;
    margin-bottom: 22.6vw;
}

.profile:before{

  content:"";
    display: block;
  position: absolute;
 bottom: 100%;
  width: 0;
  height: 0;
  border-style: solid;
  
  border-width: 0 0 9.3vw 100vw;
border-color: transparent transparent #cbd0f8 transparent;
}
.profile:after{

  content:"";
    display: block;
  position: absolute;
 top: 100%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 9.3vw 100vw 0 0;
border-color: #cbd0f8 transparent transparent transparent;

}

.profile h3{
    text-align:center;
    font-family: 'Advantage';
    font-size: 60px;
    margin-bottom: 60px;
    line-height: 1;
    color: #fff;
    font-weight: normal;
    
}
.profile h4{
    width: 50%;
    max-width: 350px;
    margin: 0 auto 30px;
}

.profile ul{
    display: flex;
    
}
.profile-1{
    justify-content: space-between;
    margin-bottom: 100px;
}
.profile-1 li{
    width: calc(33% - 20px);
}
.profile-1 li span{
    font-size: 11px;
    display: block;
    margin-top: 5px;
}
.profile-2{
    justify-content: center;
}

.profile-2 li{
    width: calc(23%);
    margin: 0 8px;
}
.profile li a{
    display: block;
    position: relative;
}
 .profile li a:hover{
        opacity: 1 !important;
    }
.profile li img:last-child{
    position: absolute;
    top: 0;
    left: 0;
    opacity:0;
    transition-duration: 0.2s;
}
.profile li.hover img:last-child{
    opacity: 1;
}
.ticket{
    background: #efefef;
    position: relative;
    padding: 65px 0 100px;
    text-align: center;
}

.ticket:before{

  content:"";
    display: block;
  position: absolute;
 bottom: 100%;
  width: 0;
  height: 0;
  border-style: solid;
  
  border-width: 0 0 9.3vw 100vw;
border-color: transparent transparent #efefef transparent;
}
.ticket:after{

  content:"";
    display: block;
  position: absolute;
 top: 100%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 9.3vw 100vw 0 0;
border-color: #efefef transparent transparent transparent;

}

.ticket h3{
    text-align:center;
    font-family: 'Advantage';
    font-size: 60px;
    margin-bottom: 60px;
    line-height: 1;
    font-weight: normal;
    color: #154d78;
    
}

.soldout{
    font-size: 42px;
    font-weight: 900;
    margin-bottom: 25px;
    line-height: 1;
    color: #f00;
}

.ticket-link a{
    font-size: 38px;
    color: #f00;
    display: block;
    padding: 0.35em 0;
    font-weight: 900;
    line-height: 1.4;
    border: solid 3px;
    pointer-events: none;
}

.ticket-link a span{
    font-size: 80%;
    color: #fff99d;
    display: block;
}

.ticket-link aside{
    font-size: 18px;
    margin-top: 10px;
}
.ticket-price{
    margin: 50px 0 25px;
    position: relative;
}

.ticket-price a{
    position: absolute;
    top: 14.5%;
    left: 0;
    width: 100%;
    height: 72.6%;
   
    
}
.ticket p.ticket-notice{
    font-weight: 500;
    font-size: 17.5px;
    color: #154d78;
    text-align: justify;
    margin-top: 45px;
}

.ticket p.ticket-notice span{
    font-weight: 500;
}
.about{
    padding: 15vw 0 75px;
}
.about *{
    font-weight: 400;
    text-align:center;
}

.about h2{
    font-size: 49px;
    margin-bottom: 36px;
    font-weight: 300;
}

.about p{
    font-size: 26px;
    line-height: 2.6;
    letter-spacing: 0;
    margin-bottom: 65px;
}

.about .youtube-wrap{
    margin-bottom: 0;
    padding-top: 0;
}

.about .youtube-wrap .youtube{
    margin-bottom: 0;
}


.youtube-wrap{
    width: 90%;
    max-width: 1000px;
    margin: 0 auto 110px;
    padding-top: 120px;
}

.youtube-wrap h3{
    text-align:center;
    font-family: 'Advantage';
    font-size: 60px;
    margin-bottom: 50px;
    line-height: 1;
    
}
.youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    background: #000;
    border: solid 1px #666;
    margin-bottom: 35px;
}
.youtube img{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 10%;
}
.youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}

@media screen and (max-width: 896px){
    
   
    .prf-modal{
    width: 90%;
    
    
}



.prf-modal h2{
    margin-bottom: 15px;
    font-size: 28px;
    line-height: 1.2;
}
    

.prf-modal p{
    font-size: 13.5px;
}

    .prf-modal#prf5{
        width: 90%;
    }

    .wrap{
    position: relative;
    
}
    
.inner{
    max-width: 1000px;
    width: calc(100% - 100px);
    margin: 0 auto;
    position: relative;
}

    .hero-wrap{
        margin-bottom: 0px;
    }
    .hero{
        width: 100%;
    }


    .hero-back{
        display: none;
    }
    .hero h1{
       position: relative;
        left: 0;
        width: calc(100% - 70px);
        transform: translateX(0%);
}
    
    .hero-wrap p{
        position: static;
        font-size: 10px;
       margin-right: 50px;
        display: block;
        text-align: right;
        transform: scale(0.65);
        transform-origin: right bottom;
        line-height: 1;
        margin-top: -4%;
    }
   

.attention{
    width: calc(100% - 25px);
    background: #fff;
    border: 2px solid #f00;
    padding: 25px 0vw;
    font-size: 2.4vw;
    text-align:center;
    color: #f00;
    margin-top: 25px;
    margin-bottom: 15px;
}
    .attention strong{
        font-size: 120%;
        white-space: nowrap;
        text-align:center;
    }



 .information{
        padding: 0 0 25vw;
     margin-top: 0;
        
    }
    .jouei-bnr{
        margin: 25px 0 15px;
    }
    
    .info:after{
        font-size: 12px;
    top: 25%;
    border: solid 2px;
    }
  
.map{
    margin-top: 10px;
    height: 200px;
}
    .triger{
    position: absolute;
    top: -15vw;
}
    
   
    .profile{
        padding: 25px 0 50px;
        margin-bottom: calc(15vw + 50px);
    }
    .profile:before{
        border-width: 0 0 15vw 100vw;
    }
    .profile:after{
        border-width: 15vw 100vw 0 0;
    }
    .profile h3{
        font-size: 28px;
        margin-bottom: 25px;
    }
   
    .profile h4{
    width: 50%;
    max-width: 350px;
    margin: 0 auto 10px;
}

.profile ul{
    display: flex;
    
}
.profile-1{
    justify-content: space-between;
    margin-bottom: 20px;
}
.profile-1 li{
    width: calc(33% - 4px);
}
    .profile-1 li span{
        font-size: 1.5vw;
    }
.profile-2{
    justify-content: center;
}

.profile-2 li{
    width: calc(28%);
    margin: 0 4px;
}
.profile li a{
    display: block;
    position: relative;
}
 .profile li a:hover{
        opacity: 1 !important;
    }
.profile li img:last-child{
    position: absolute;
    top: 0;
    left: 0;
    opacity:0;
    transition-duration: 0.2s;
}
.profile li.hover img:last-child{
    opacity: 1;
}
    .ticket{
        padding: 25px 0 50px;
    }
     .ticket:before{
        border-width: 0 0 15vw 100vw;
    }
     .ticket:after{
        border-width: 15vw 100vw 0 0;
    }
    .ticket h3{
        font-size: 28px;
        margin-bottom: 25px;
    }
    .ticket-link{
        margin-bottom: 25px;
    }
   


.ticket-link a{
    font-size: 14px;
    display: block;
    padding: 0.35em 0;
    font-weight: 900;
    border: solid 2px;
}
    
.ticket-link aside{
    font-size: 10px;
    margin-top: 5px;
}
    .ticket-price{
    margin: 10px 0 10px;
}
     .soldout{
    font-size: 16px;
    font-weight: 900;
    margin-bottom: 25px;
}
    .ticket p.ticket-notice{
        margin-top: 25px;
        font-size: 10px;
    }
.about{
    padding:25vw 0 25px;
}
.about *{
    font-weight: 400;
    text-align:center;
}

.about h2{
    font-size: 22px;
    margin-bottom: 15px;
}

.about p{
    font-size: 14px;
    margin-bottom: 35px;
}

    .youtube-wrap{
        width: calc(100% - 100px);
    }

}
.goods{
    padding: 115px 0 50px;
}

.goods h3{
    font-family: 'Advantage';
    font-size: 60px;
    text-align:center;
    letter-spacing: 0;
    margin-bottom: 35px;
}


.goods-yoyaku{
     width: 90%;
    max-width: 1000px;
    margin: 0 auto 35px;
    background: #fff;
   background: #47baae;
    padding: 25px 30px 30px;
    text-align: center;
}
.goods-yoyaku h4{
    font-size: 30px;
    margin-bottom: 20px;
    text-align: center;
    font-weight: 900;
     color: #f6ad3c;
    border-bottom: solid 1px #fff;
    padding-bottom: 0.3em;
}

.goods-yoyaku h4 span {
    display: inline-block;
    font-weight: 900;
    color: #fff799;
    font-style: italic;
    
}
.goods-yoyaku p{
    font-size: 17px;
    color: #fff;
    font-weight: 500;
    /*margin-bottom: 15px;*/
    
}

.goods-yoyaku .cps-bnr{
    width: 100%;
    max-width: 600px;
    margin: 10px auto 0;
    display: block;
}
.goods-yoyaku p a{
    color: #fff799;
    font-size: 110%;
}

.goods-yoyaku p a span{
    font-weight: 900;
    font-size: 120%;
    color: #fff799;
     font-style: italic;
}

.goods-yoyaku p span.term{
    color: #fff;
    font-size: 24px;
    font-weight: 900;
    
}



.goods-yoyaku small{
    font-size: 14px;
    color: #fff;
    font-weight: 500;
    line-height: 1.4;
    display: inline-block;
}

.goods-yoyaku a.modal-btn{
    display: block;
    text-align:center;
    font-size: 20px;
    background: #fff;
    color: #47baae;
    width: 100%;
    max-width: 770px;
    margin: 10px auto 0;
    padding: 7px 0;
    border-radius: 7px;
    position: relative;
    cursor: pointer;
}

.goods-yoyaku a.modal-btn:after {
    content: "";
    display: block;
    position: absolute;
    top:calc(50% - 15px);
    right: 10px;
    width: 0;
height: 0;
border-style: solid;
border-width: 15px 0 15px 26px;
border-color: transparent transparent transparent #47baae;;
}

.goods ul{
    display: flex;
    flex-wrap: wrap;
     width: 90%;
    max-width: 1000px;
    margin: 0 auto 35px;
    justify-content: space-between;
}

.goods li{
    width: calc(33.33% - 15px);
    margin-bottom: 21px;
    position: relative;
}

.goods li.col2{
    width: calc(66.66% - 7.5px);
}
.goods li.col3_a,.goods li.col3_b{
    width: 100%;
}

.goods li a{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 71%;
   
    display: block;
    border-radius: 40px;
}
.goods li.col3_a a{
    width: 32.5%;
    height: 88%;
}

.goods li.col3_a a:nth-child(2){
    width: 32.5%;
    left: 50%;
    transform: translateX(-50%);
}

.goods li.col3_a a:nth-child(3){
    left: auto;
    right: 0;
}

.goods li.col3_b a{
    width: 32.5%;
    height: 46%;
}

.goods li.col3_b a:nth-child(2),.goods li.col3_b a:nth-child(5){
    width: 32.5%;
    left: 50%;
    transform: translateX(-50%);
}

.goods li.col3_b a:nth-child(3),.goods li.col3_b a:nth-child(6){
    left: auto;
    right: 0;
}

.goods li.col3_b a:nth-child(n + 4){
    top: 50%;
    height: 44%;
}
.goods li:nth-child(2) a{
    height: 61%;
}
.goods li:nth-last-child(2) a{
    height: 68%;
}
.goods li:nth-last-child(4) a{
    height: 52%;
}

.goods aside{
    font-size: 11px;
    text-align:center;
}
@media screen and (max-width: 896px){
    
    .goods{
        padding: 50px 0 35px;
    }
    .goods h3{
        font-size: 28px;
    margin-bottom: 25px;
    }
    
    .goods-yoyaku{
        padding: 15px 5% 25px;
            margin-bottom: 15px;
       
    } 
    
    .goods-yoyaku h4{
        font-size: 17px;
        padding-bottom: 10px;
        margin-bottom: 10px;
    }
    .goods-yoyaku p{
        font-size: 12px;
         text-align: center;
    }
    .goods-yoyaku p a{
        word-wrap: break-word;
        
    }
    .goods-yoyaku small{
        font-size: 10px;
    }
    .goods-yoyaku p span.term{
        font-size: 14px;
        display: inline-block;
        text-align:center;
        width: 100%;
        
    }
    .goods-yoyaku a.modal-btn{
        font-size: 12px;
    }
    .goods-yoyaku a.modal-btn:after {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 7.5px);
    right: 10px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7.5px 0 7.5px 13px;
    border-color: transparent transparent transparent #47baae;
    }

    .goods ul{
        margin-bottom: 10px;
    }
    .goods li {
    width: calc(50% - 7.5px);
    margin-bottom: 15px;
}
    
.goods li.col2{
    width:100%;
}
.goods li.col3_a a{
    width: 50%;
    height: 49%;
}

.goods li.col3_a a:nth-child(2){
    width: 50%;
   right: 0;
    transform: translateX(0%);
}

.goods li.col3_a a:nth-child(3){
    left: auto;
    top: 50%;
    right: 50%;
    height: 42%;
    transform: translateX(50%);
    
}
    
    .goods li.col3_a.col3_a_2 a{
    width: 50%;
    height: 52%;
}

.goods li.col3_a.col3_a_2 a:nth-child(2){
    width: 50%;
   right: 0;
    transform: translateX(0%);
}

.goods li.col3_a.col3_a_2 a:nth-child(3){
    left: auto;
    top: 54%;
    right: 50%;
    height: 35%;
    transform: translateX(50%);
    
}
    
.goods li.col3_b a{
    width: 50% !important;
    height: 30% !important;;
    top: 1%;
    left: 0 !important;
     transform: translateX(0%) !important;;
}

.goods li.col3_b a:nth-child(even){
    width: 50%!important;
    left: auto !important;;
   right: 0 !important;
    transform: translateX(0%);
}

.goods li.col3_b a:nth-child(3),.goods li.col3_b a:nth-child(4){
    top: 33%;
}
.goods li.col3_b a:nth-child(5),.goods li.col3_b a:nth-child(6){
    top: 64%;
}
    
    
.goods li.col3_b.col3_b_2 a{
    width: 50%;
    height: 30%;
    top: 1%;
    left: 0;
     transform: translateX(0%);
}

.goods li.col3_b.col3_b_2 a:nth-child(even){
    width: 50%!important;
    left: auto;
   right: 0 !important;
    transform: translateX(0%);
}

.goods li.col3_b.col3_b_2 a:nth-child(3),.goods li.col3_b.col3_b_2 a:nth-child(4){
    top: 32%;
}
.goods li.col3_b.col3_b_2 a:nth-child(5),.goods li.col3_b.col3_b_2 a:nth-child(6){
    top: 63%;
}
    
    .goods aside{
        font-size: 10px;
    }
}


