@charset 'utf-8';
.item p{position: relative;z-index: 10;}
.button{background: #F9F2BE;}


@media screen and (min-width: 737px) {
    header{background: #fff;text-align: center;padding: 16px 0;}
    header img{width: 124px;height: auto;}
    body{min-width: 1000px;}
	.pc-none{display: none !important;}
    .w1000{width: 1000px;margin: auto;}
    #main{width: 100%;height: 777px;background: url(../img/main.png)no-repeat center;background-size: cover;}
    main{margin-top: -142px;}
    .wrapper{background: url(../img/bg1_pc.png)repeat-y center top;background-size: 100% auto;margin-top: -1px;position: relative;padding-top: 182px;}
    h1{text-align: center;position: absolute;top: -114px;left: 50%;transform: translateX(-50%);width: 100%;}
    .date{text-align: center;margin-bottom: 18px;}
    .title{text-align: center;margin-bottom: 12px;}
    .title img{margin-left: -33px;}
    .item{float: left;margin-right: 35px;margin-bottom: 35px;}
    .item:nth-of-type(3n){margin-right: 0;}
    footer{background: #043D5A;text-align: center;}
    footer small{font-size: 10px;color: #fff;margin: 0 6px;letter-spacing: 0.06em;line-height: 42px;}
    .hover{transition: 0.3s;display: block;line-height: 0;}
    .hover:hover{opacity: 0.8;cursor: pointer;}
    .close{
        position: absolute;
        top: -30px;
        right: -30px;
    }
    .container{
        z-index: 99;
        display: none;
        position: fixed;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        overflow: auto;
    }
    .overlay{
        position: fixed;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background: rgba(0,0,0,0.3);
    }
    .body{
        display: table;
        width: 100%;
        height: 100%;
    }
    .main{
        display: table-cell;
        text-align: center;
        vertical-align: middle;
        padding: 25px;
    }
    .content{
        position: relative;
        display: inline-block;
        background: #fff;
        padding: 32px 25px;
        box-sizing: border-box;
        width: 1000px;
        max-height: 580px;
        border-radius: 32px;
        background: url(../img/modal_bg.png)top left;
        background-size: 807px auto;
    }
    .content > div{
        max-height: 516px;
        overflow-y: scroll;
    }
    .modal_btn{
        background: url(../img/m2_pc_btn_bg.png)top left;
        background-size: 100%;
        display: inline-block;
    }
    .ticket{
        position: relative;
        margin-top: 80px;
        padding: 62px 0 40px;
        text-align: center;
        background: #F8F2BD;
    }
    .ticket_title{
        position: absolute;
        top: -24px;
        left: 50%;
        transform: translateX(-50%);
    }
    .ticket_btn{
        margin-top: 24px;
    }
    .cs{
        position: relative;
    }
    .cs::before{
        content: '';
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 99;
    }
    .item2.cs::before{
        background: url(../img/cs2.png)no-repeat center;
        background-size: cover;
    }
}

@media screen and (max-width: 736px) {
    header{background: #fff;text-align: center;padding: 16px 0;}
    header img{width: 84px;height: auto;}
	.sp-none{display: none !important;}
    img{max-width: 100%;height: auto;}
    #main{width: 100%;height: 357px;background: url(../img/main.png)no-repeat center;background-size: cover;}
    main{margin-top: -59px;}
    .wrapper{background: url(../img/bg1_sp.png)repeat-y center top;background-size: 100% auto;margin-top: -1px;position: relative;padding: 101px 24px 0;}
    h1{text-align: center;position: absolute;top: -75px;left: 50%;transform: translateX(-50%);width: 100%;padding: 0 24px;box-sizing: border-box;}
    .date{text-align: center;margin-bottom: 16px;}
    .title{text-align: center;margin-bottom: 27px;}
    h1 img,
    .date img,
    .title img{max-width: 376px;height: auto;width: 100%;}
    .item{max-width: 310px;width: 100%;margin: 0 auto 20px;}
    footer{background: #043D5A;text-align: center;}
    footer small{font-size: 10px;color: #fff;margin: 0 6px;letter-spacing: 0.06em;line-height: 42px;}
    .close{
        position: absolute;
        top: -12px;
        right: -12px;
        width: 55px;
        height: 55px;
    }
    .container{
        z-index: 99;
        display: none;
        position: fixed;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        overflow: auto;
    }
    .overlay{
        position: fixed;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background: rgba(0,0,0,0.3);
    }
    .body{
        display: table;
        width: 100%;
        height: 100%;
    }
    .main{
        display: table-cell;
        text-align: center;
        vertical-align: middle;
        padding: 24px;
    }
    .content{
        position: relative;
        display: inline-block;
        background: #fff;
        padding: 40px 36px;
        box-sizing: border-box;
        max-height: 90vh;
        border-radius: 32px;
        background: url(../img/modal_bg.png)top left;
        background-size: 807px auto;
    }
    .content > div{
        max-height: 60vh;
        overflow-y: scroll;
    }
    .modal_btn{
        background: url(../img/m2_sp_btn_bg.png)top left;
        background-size: 100%;
        display: inline-block;
    }
    .ticket{
        position: relative;
        margin: 80px -24px 0;
        padding: 64px 0 48px;
        text-align: center;
        background: #F8F2BD;
    }
    .ticket_title{
        position: absolute;
        width: 310px;
        top: -24px;
        left: 50%;
        transform: translateX(-50%);
    }
    .ticket_btn{
        margin-top: 24px;
    }
    .cs{
        position: relative;
    }
    .cs::before{
        content: '';
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 99;
    }
    .item2.cs::before{
        background: url(../img/cs2_sp.png)no-repeat center;
        background-size: cover;
    }

}




.teaser-wrapper{
    position: relative;
}
.teaser-wrapper .wrapper{
    padding-bottom: 44px;
}
#comingsoon{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 10;
    background: rgba(0,0,0,0.5);
}
#comingsoon img{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
@media screen and (max-width: 736px) {
    #comingsoon img{
        max-width: calc(100% - 148px);
        height: auto;
    }
}