@charset "utf-8";

/*********************************************************************
*
*  For HOME
*
*********************************************************************/

/* ---------------------------------------------------- */
/* sec_overview_wrap */
/* ---------------------------------------------------- */
.sec_mv_wrap {
    padding-top: 50px;
    padding-bottom: 50px;
}

.sec_mv_wrap .site_ttl {
    margin: 0 auto;
    width: 100%;
    max-width: 1200px;
}

@media (max-width: 767px) {
    .sec_mv_wrap {
        padding-top: 0;
        padding-bottom: 0;
    }
}

/* ---------------------------------------------------- */
/* sec_overview_wrap */
/* ---------------------------------------------------- */
.sec_overview_wrap {
    padding-top: 74px;
    padding-bottom: 74px;
}

.sec_overview_wrap::before {
    content: "";
    position: absolute;
    left: 50%;
    top: -2px;
    transform: translateX(-50%);
    display: block;
    width: 100%;
    min-width: 1900px;
    height: 318px;
    background-image: url(../img/bg_1.svg), url(../img/bg_2.svg);
    background-size: 560px auto;
    background-position: left -80px top, right -80px top;
    background-repeat: no-repeat;
}

@media (max-width: 767px) {
    .sec_overview_wrap {
        padding-top: 30px;
        padding-bottom: 30px;
        border-top: 2px solid #000;
    }

    .sec_overview_wrap::before {
        display: none;
    }

}

/* ---------------------------------------------------- */
/* sec_news_wrap */
/* ---------------------------------------------------- */
.sec_news_wrap {
    padding-top: 50px;
    padding-bottom: 50px;
    border-top: 2px solid #000;
}

.sec_news_wrap .post_1 {
    text-align: center;
    font-weight: 700;
    letter-spacing: 0.05em;
}

.sec_news_wrap .post_1 .date {
    font-size: 2.4rem;
}

.sec_news_wrap .post_1 .ttl {
    font-size: 3.8rem;
    font-weight: 700;
}

.sec_news_wrap .post_1 .desc {
    font-size: 2.8rem;
    text-align: center;
}

.sec_news_wrap .archive {
    position: relative;
    margin: 0 -20px;
}

.sec_news_wrap .archive::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 1px;
    height: 100%;
    background-color: #e7e5df;
    z-index: 2;
}

.sec_news_wrap .archive .slick-track {
    display: flex;
}

.sec_news_wrap .archive .slick-slide {
    height: auto;
}

.sec_news_wrap .archive .slick-slide>div {
    height: 100%;
}

.sec_news_wrap .archive .item {
    padding: 0 20px;
    height: 100%;
    border-left: 1px dotted #000;
}

.sec_news_wrap .archive .item>div {
    position: relative;
    padding: 20px;
    height: 100%;
}

.sec_news_wrap .archive .item .date {
    margin-bottom: 5px;
    font-size: 1.4rem;
    font-weight: 700;
}

.sec_news_wrap .archive .item .ttl {
    font-size: 1.4rem;
    font-weight: 700;
}

.sec_news_wrap .archive .slick-prev {
    display: none !important;
}

.sec_news_wrap .archive .slick-next {
    display: block !important;
    position: relative;
    margin: 30px auto 0;
    width: 180px;
    height: 28px;
    border: none;
    padding: 0;
    outline: 0;
    z-index: 10;
    color: transparent;
    cursor: pointer;
    background-color: transparent;
    border: 1px solid #000;
    transition: 0.3s ease-in-out;
}

.sec_news_wrap .archive .slick-next::before {
    content: "Read more";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    color: #000;
    font-size: 1.4rem;
    font-weight: 700;
}

.sec_news_wrap .bnr_1 {
    display: block;
    margin: 50px auto 0;
    width: 750px;
}


@media (max-width: 767px) {
    .sec_news_wrap {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .sec_news_wrap .post_1 .date {
        font-size: 1.4rem;
    }

    .sec_news_wrap .post_1 .ttl {
        font-size: 2.0rem;
    }

    .sec_news_wrap .post_1 .desc {
        font-size: 1.6rem;
    }

    .sec_news_wrap .archive {
        margin: 0 -10px;
    }

    .sec_news_wrap .archive .item {
        padding: 0 5px;
        height: 100%;
    }

    .sec_news_wrap .archive .item>div {
        padding: 10px 5px;
    }

    .sec_news_wrap .archive .item .date {
        font-size: 1.1rem;
    }

    .sec_news_wrap .archive .item .ttl {
        font-size: 1.0rem;
    }

    .sec_news_wrap .archive .slick-next {
        margin: 20px auto 0;
    }

    .sec_news_wrap .bnr_1 {
        margin: 30px auto 0;
        width: auto;
    }
}

/* ---------------------------------------------------- */
/* sec_artist_wrap */
/* ---------------------------------------------------- */
.sec_artist_wrap {
    padding-top: 80px;
    padding-bottom: 80px;
    overflow: hidden;
}

.sec_artist_wrap_1 {
    border-top: 2px solid #000;
    background-color: #DC5110;
}

.sec_artist_wrap_2 {
    background-color: #DCE137;
}

.sec_artist_wrap::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    display: block;
    width: 100%;
    min-width: 1700px;
    height: 100%;
    background-image: url(../img/bg_5.svg), url(../img/bg_6.svg);
    background-size: 364px auto;
    background-position: left top, right top;
    background-repeat: repeat-y;
    z-index: 2;
}

.sec_artist_wrap .sec_ttl {
    margin-bottom: 10px;
}

.sec_artist_wrap .caption_1 {
    margin-bottom: 40px;
    font-size: 1.2rem;
    font-weight: 700;
    text-align: center;
}

.sec_artist_wrap .ttl_1 {
    margin: 0 auto 30px;
    width: 400px;
}

.sec_artist_wrap .ttl_2 {
    margin-bottom: 30px;
    font-size: 5.0rem;
    font-weight: 700;
    line-height: 1;
    text-align: center;
}

.sec_artist_wrap .list_1+.ttl_2 {
    padding-top: 50px;
    margin-top: 40px;
    border-top: 1px solid #000;
}

.sec_artist_wrap .list_1>ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-right: -24px;
    margin-bottom: -20px;
}

.sec_artist_wrap .list_1>ul>li {
    position: relative;
    margin-right: 24px;
    margin-bottom: 20px;
    width: 234px;
}

.sec_artist_wrap .list_1>ul>li.new::before {
    content: "NEW";
    position: absolute;
    right: -10px;
    top: -10px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 43px;
    height: 43px;
    font-family: 'Oswald', 'Noto Sans JP', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
    background-color: #DCE137;
    border-radius: 50%;
    z-index: 2;
}

.sec_artist_wrap .list_1 a {
    display: block;
}

.sec_artist_wrap .list_1 .name {
    padding: 6px 2px;
    font-size: 1.6rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.4;
    /* background-color: rgba(228, 226, 220, 0.9); */
}

.sec_artist_wrap .list_1 .name span {
    display: block;
    margin-top: 4px;
    padding: 2px;
    font-size: 1.4rem;
    color: #DC0010;
    background-color: #FFF;
}

.sec_artist_wrap .andmore {
    margin-top: 40px;
    font-size: 1.2rem;
    font-weight: 700;
    text-align: center;
}

.sec_artist_wrap .tt_1 {
    display: block;
}

@media (max-width: 767px) {
    .sec_artist_wrap {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    .sec_artist_wrap::before {
        bottom: auto;
        top: 20px;
        width: 100%;
        min-width: auto;
        height: calc(100% + 60px);
        background-image: url(../img/bg_5_sp.svg), url(../img/bg_6_sp.svg);
        background-size: 30px auto;
    }

    .sec_artist_wrap .caption_1 {
        margin-bottom: 20px;
    }
    .sec_artist_wrap .ttl_1 {
        width: 200px;
    }
    
    .sec_artist_wrap .ttl_2 {
        font-size: 3.0rem;
    }
    
    .sec_artist_wrap .list_1+.ttl_2 {
        padding-top: 40px;
        margin-top: 30px;
    }
    
    .sec_artist_wrap .list_1>ul {
        margin-right: -15px;
        margin-bottom: -20px;
    }

    .sec_artist_wrap .list_1>ul>li {
        margin-right: 15px;
        margin-bottom: 20px;
        width: calc(50% - 15px);
    }

    .sec_artist_wrap .list_1>ul>li.new::before {
        right: -10px;
        top: -10px;
        width: 32px;
        height: 32px;
        font-size: 1.2rem;
    }

    .sec_artist_wrap .list_1 .name {
        font-size: 1.2rem;
    }
    .sec_artist_wrap .list_1 .name span {
        font-size: 1.1rem;
    }

    .sec_artist_wrap .andmore {
        margin-top: 30px;
    }
}

/* ---------------------------------------------------- */
/* sec_ticket_wrap */
/* ---------------------------------------------------- */
.sec_ticket_wrap {
    padding-top: 80px;
    padding-bottom: 80px;
    background-color: #E7E5DF;
    border-top: 2px solid #000;
    border-bottom: 2px solid #000;
    overflow: hidden;
}

.sec_ticket_wrap::before,
.sec_ticket_wrap::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
}

.sec_ticket_wrap::before {
    background-image: url(../../common/img/bg/noise_1.png);
    background-size: 100px auto;
    background-position: center;
}

.sec_ticket_wrap::after {
    background-image: url(../img/ticket_bg_2.svg);
    background-size: 1270px auto;
    background-position: center;
    background-repeat: no-repeat;
}

.sec_ticket_wrap .bnr_1 {
    display: block;
    margin-bottom: 25px;
}

.sec_ticket_wrap .price_wrap {
    margin-bottom: 40px;
}

.sec_ticket_wrap .price_wrap .ttl_1 {
    margin-bottom: 30px;
    color: #f44c00;
    font-size: 2.6rem;
    font-weight: 700;
    text-align: center;
}

.sec_ticket_wrap .price_wrap .price {
    margin-bottom: 30px;
}

.sec_ticket_wrap .price_wrap .desc_1 {
    margin-bottom: 10px;
    font-size: 1.6rem;
    font-weight: 700;
    text-align: center;
}

.sec_ticket_wrap .price_wrap .desc_2 {
    margin-bottom: 30px;
    font-size: 1.2rem;
    text-align: center;
}

.sec_ticket_wrap .price_wrap .date {
    margin-bottom: 40px;
    color: #f44c00;
    font-size: 3.6rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-align: center;
}
.sec_ticket_wrap .price_wrap .date span {
    font-size: 2.5rem;
}

.sec_ticket_wrap .price_wrap .pg>ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.sec_ticket_wrap .price_wrap .pg>ul>li {
    width: 230px;
}

.sec_ticket_wrap .price_wrap .pg a {
    display: block;
    background-color: #FFF;
}

.sec_ticket_wrap .covid19_wrap .ttl_1 {
    margin-bottom: 30px;
    padding: 10px;
    color: #dce137;
    font-size: 1.6rem;
    font-weight: 700;
    text-align: center;
    background-color: #000;
}

.sec_ticket_wrap .covid19_wrap .list_1 {
    margin-bottom: 30px;
}

.sec_ticket_wrap .covid19_wrap .list_1>ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-right: -25px;
    margin-bottom: -25px;
}

.sec_ticket_wrap .covid19_wrap .list_1>ul>li {
    margin-right: 25px;
    margin-bottom: 25px;
    padding: 25px;
    width: 240px;
    background-color: #E4E2DC;
    border-radius: 20px;
}

.sec_ticket_wrap .covid19_wrap .list_1 .ico {
    margin: 0 auto 10px;
    width: 90%;
}

.sec_ticket_wrap .covid19_wrap .list_1 .desc {
    color: #000;
    font-size: 1.2rem;
    line-height: 1.4;
}

.sec_ticket_wrap .covid19_wrap .date_1 {
    display: table;
    margin: 0 auto 30px;
    padding: 10px 20px;
    font-size: 1.6rem;
    font-weight: 700;
    border: 1px solid #000;
}

.sec_ticket_wrap .covid19_wrap .desc_1 {
    font-size: 1.4rem;
    text-align: center;
}

@media (max-width: 767px) {
    .sec_ticket_wrap {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    .sec_ticket_wrap::after {
        display: none;
    }

    .sec_ticket_wrap .bnr_1 {
        display: block;
        margin: 0 -20px 20px;
        background-color: #f44c00;
    }

    .sec_ticket_wrap .price_wrap {
        margin-bottom: 25px;
    }

    .sec_ticket_wrap .price_wrap .price {
        margin-bottom: 15px;
    }

    .sec_ticket_wrap .price_wrap .ttl_1 {
        margin-bottom: 15px;
        font-size: 1.5rem;
    }

    .sec_ticket_wrap .price_wrap .desc_1 {
        margin-bottom: 5px;
        font-size: 1.4rem;
    }

    .sec_ticket_wrap .price_wrap .desc_2 {
        margin-bottom: 20px;
        font-size: 1.1rem;
        text-align: justify;
    }

    .sec_ticket_wrap .price_wrap .date {
        margin-bottom: 20px;
        font-size: 2.5rem;
    }
    .sec_ticket_wrap .price_wrap .date span {
        font-size: 1.6rem;
    }
    .sec_ticket_wrap .price_wrap .pg>ul {
        justify-content: center;
    }

    .sec_ticket_wrap .price_wrap .pg>ul>li {
        width: 100%;
    }

    .sec_ticket_wrap .price_wrap .pg>ul>li+li {
        margin-top: 10px;
    }

    .sec_ticket_wrap .price_wrap .pg a {
        padding: 0 50px;
    }

    .sec_ticket_wrap .covid19_wrap .ttl_1 {
        margin: 0 -20px 15px;
        font-size: 1.3rem;
    }

    .sec_ticket_wrap .covid19_wrap .list_1 {
        margin-bottom: 20px;
    }

    .sec_ticket_wrap .covid19_wrap .list_1>ul {
        margin-right: -10px;
        margin-bottom: -10px;
    }

    .sec_ticket_wrap .covid19_wrap .list_1>ul>li {
        margin-right: 10px;
        margin-bottom: 10px;
        padding: 15px 10px;
        width: calc(50% - 10px);
        border-radius: 10px;
    }

    .sec_ticket_wrap .covid19_wrap .list_1 .ico {
        width: 60%;
    }

    .sec_ticket_wrap .covid19_wrap .list_1 .desc {
        font-size: 1.1rem;
    }

    .sec_ticket_wrap .covid19_wrap .date_1 {
        margin: 0 auto 20px;
        font-size: 1.3rem;
    }

    .sec_ticket_wrap .covid19_wrap .desc_1 {
        font-size: 1.1rem;
        text-align: justify;
    }
}

/* ---------------------------------------------------- */
/* sec_access_wrap */
/* ---------------------------------------------------- */
.sec_access_wrap {
    padding-top: 80px;
    padding-bottom: 80px;
}

.sec_access_wrap .overview {
    margin-top: 50px;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-align: center;
}

.sec_access_wrap .overview .place {
    margin-bottom: 20px;
    font-size: 2.4rem;
}

@media (max-width: 767px) {
    .sec_access_wrap {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    .sec_access_wrap .map iframe {
        height: 300px;
    }

    .sec_access_wrap .overview {
        margin-top: 20px;
    }

    .sec_access_wrap .overview .place {
        margin-bottom: 10px;
        font-size: 1.8rem;
    }
}