@charset "utf-8";

/*==================================================
sp
================================================== */
@media screen and (max-width:767px) {

        /* ========================================================================
        [sp]hall_contents
        ========================================================================= */
        #suntory_contents #hall_contents {
                margin: 0;
        }

        /* ========================================================================
        [sp]contents_wrap
        ========================================================================= */
        #suntory_contents .contents_wrap {
                display: flex;
                flex-direction: column;
        }

        /* ========================================================================
        [sp]main_visual_wrap
        ========================================================================= */
        #suntory_contents #main_visual_wrap {
                margin: 0 auto;
                display: flex;
                flex-direction: column;
                width: 100%;
        }

        #suntory_contents #slide_container {
                display: none;
        }

        /* ========================================================================
        [sp]main_visual
        ========================================================================= */

        #suntory_contents #main_visual {
                margin-bottom: 45px;
                width: 100%;
                height: 0;
                padding-top: 60.4%;
                position: relative;
        }

        #suntory_contents #main_visual #teaser {
                width: 100%;
                position: absolute;
                top: 0;
                left: 0;
                z-index: 100;
        }

        #suntory_contents #main_visual #teaser img {
                width: 100%;
                height: auto;
        }

        #suntory_contents #main_visual #slide_container {
                width: 100%;
                position: absolute;
                top: 0;
                left: 0;
                z-index: 10;
        }

        #suntory_contents #main_visual #slide_container img {
                width: 100%;
                height: auto;
                order: 1;
        }

        /* ========================================================================
        [sp]calendar_container
        ========================================================================= */
        #suntory_contents #calendar_container {
                display: flex;
                flex-direction: column;
                order: 4;
        }


        #suntory_contents .btn_schedule {
                margin: 0 4vw 5.3333333333333vw;
                width: auto;
                height: 16vw;
                font-size: 4.5333333333333vw;
                font-weight: bold;
                letter-spacing: -0.05em;
        }

        #suntory_contents .btn_schedule a {
                color: #fff;
                text-decoration: none;
                display: flex;
                align-items: center;
                height: 16vw;
                padding-left: 29.3333333333333vw;
                box-sizing: border-box;
                background: #881133 url(../img/top/icon_schedule.png) no-repeat 6.6666666666667vw center;
                background-size: 7.3333333333333vw auto;
                position: relative;
        }

        #suntory_contents .btn_schedule a::after {
                content: "";
                vertical-align: middle;
                position: absolute;
                top: calc(50% - 1.5vw);
                right: 6.6666666666667vw;
                width: 3vw;
                height: 3vw;
                margin: auto;
                border-top: 2px solid #fff;
                border-right: 2px solid #fff;
                -webkit-transform: rotate(45deg);
                transform: rotate(45deg);
        }


        #suntory_contents #calendar_container #search {
                order: 2;
                width: auto;
                margin: 0 4vw 5.3333333333333vw;
        }

        #suntory_contents #calendar_container #search form {
                order: 2;
                display: flex;
        }

        #suntory_contents #search .search_txt {
                margin: 0;
                width: 73.3333333333333vw;
                height: 13.3333333333333vw;
                border-top: 1px #dedede solid;
                border-right: 0;
                border-bottom: 1px #dedede solid;
                border-left: 1px #dedede solid;
                box-sizing: border-box;
                font-size: 16px;
                padding: 0 4vw;
                border-radius: 0;
                -webkit-appearance: none;
                color: #222 !important;
        }

        #suntory_contents #search .search_txt::-webkit-input-placeholder,
        #suntory_contents #search .search_txt::placeholder {
                color: #999999;
                font-size: 4vw;
        }

        #suntory_contents #search .search_txt:focus::-webkit-input-placeholder {
                color: transparent;
        }

        #suntory_contents #search .search_txt:focus::placeholder {
                color: transparent;
        }

        #suntory_contents #search .search_btn {
                width: 18.6666666666667vw;
                height: 13.3333333333333vw;
                background: #881133;
                box-sizing: border-box;
                display: flex;
                justify-content: center;
                align-items: center;
                font-size: 4vw;
                border-radius: 0;
                border: none;
                color: #fff;
        }

        #suntory_contents #calendar_container #cal_search {
                order: 1;
        }



        #suntory_contents #calendar_container #cal_search .calym_box,
        #suntory_contents #calendar_container #cal_search .calender_table,
        #suntory_contents #calendar_container #cal_search .note {
                display: none;
        }

        /* ========================================================================
        [sp]close_msg
        ========================================================================= */
        #suntory_contents #calender .close_msg,
        #suntory_contents #calender .close_msg.active,
        #suntory_contents #calender .note .temp_msg,
        #suntory_contents #calender .note .temp_msg.active {
                display: none;
        }

        /* ========================================================================
        [sp]cal_popbox
        ========================================================================= */
        #suntory_contents #cal_popbox {
                display: none;
        }


        /* ========================================================================
        [sp]btn_access
        ========================================================================= */
        #suntory_contents .btn_access {
                order: 2;
                margin: 0 4vw 5.3333333333333vw;
                border: 1px #881133 solid;
        }

        #suntory_contents .btn_access a {
                display: flex;
                align-items: center;
                text-decoration: none;
                color: #881133;
                font-size: 4.5333333333333vw;
                font-weight: bold;
                height: 16vw;
                padding-left: 17.3333333333333vw;
                background: url(../img/top/icon_access.png) no-repeat 4vw center;
                background-size: 9.3333333333333vw auto;
                position: relative;
        }

        #suntory_contents .btn_access a::after {
                content: "";
                vertical-align: middle;
                position: absolute;
                top: calc(50% - 1vw);
                right: 6.6666666666667vw;
                width: 2vw;
                height: 2vw;
                margin: auto;
                border-top: 1px solid #881133;
                border-right: 1px solid #881133;
                -webkit-transform: rotate(45deg);
                transform: rotate(45deg);
        }


        /* ========================================================================
        [sp]emergency
        ========================================================================= */
        #suntory_contents #emergency {
                margin: 0 4vw 5.3333333333333vw;
                width: auto;
                background: #eeeeee;
                padding: 4vw;
                order: 3;
        }

        #suntory_contents #emergency dl {
                display: flex;
                flex-direction: column;
        }

        #suntory_contents #emergency dt {
                margin-bottom: 3.4666666666667vw;
                font-size: 3.4666666666667vw;
                font-weight: bold;
        }

        #suntory_contents #emergency dd {
                font-size: 3.4666666666667vw;
                line-height: 1.5;
        }

        #suntory_contents #emergency dd a {
                color: #222;
        }

        #suntory_contents #emergency dd p {
                padding-bottom: 2.4vw;
        }

        #suntory_contents #emergency dd p:last-child {
                margin-bottom: 0;
        }

        #suntory_contents #emergency dd p br {
                display: none;
        }

        /* ========================================================================
        [sp]schedule
        ========================================================================= */
        #suntory_contents #schedule {
                margin: 0 4vw;
                width: auto;
                display: flex;
                flex-direction: column;
        }

        #suntory_contents #schedule.hide {
                display: none;
        }

        #suntory_contents #schedule .title_bar {
                order: 2;
        }

        #suntory_contents #schedule .title_bar h2 {
                display: none;
        }

        #suntory_contents #schedule .title_bar .btn_container {
                margin-bottom: 8vw;
                list-style: none;
                display: flex;
                justify-content: space-between;
        }

        #suntory_contents #schedule .encore {}

        #suntory_contents #schedule .encore a {
                width: 43.3333333333333vw;
                height: 14.6666666666667vw;
                display: flex;
                align-items: center;
                border: 1px #881133 solid;
                font-size: 3.3333333333333vw;
                font-weight: bold;
                font-weight: 700;
                letter-spacing: -0.035em;
                color: #881133;
                text-decoration: none;
                background: url(../img/top/icon_music.svg) no-repeat 6.6666666666667vw center;
                background-size: 6.5333333333333vw auto;
                padding-left: 16.9333333333333vw;
                box-sizing: border-box;
                text-align: center;
        }

        #suntory_contents #schedule .archive a {
                width: 43.3333333333333vw;
                height: 14.6666666666667vw;
                display: flex;
                align-items: center;
                font-size: 3.3333333333333vw;
                font-weight: bold;
                font-weight: 700;
                letter-spacing: -0.035em;
                color: #fff;
                text-decoration: none;
                background: #881133 url(../img/top/icon_note_white.svg) no-repeat 5.3333333333333vw center;
                background-size: 6.4vw auto;
                padding-left: 15.7333333333333vw;
                box-sizing: border-box;
        }

        #suntory_contents #schedule .todays_ticket_information {
                margin-bottom: 5.3333333333333vw;
                order: 1;
        }

        #suntory_contents #schedule .todays_ticket_information dd {
                display: none;
        }

        #suntory_contents #schedule .todays_ticket_information dt {
                background: #aa3355 url(../img/top/icon_ticket.png) no-repeat 6.1333333333333vw center;
                background-size: 7.7333333333333vw auto;
                height: 16vw;
                display: flex;
                align-items: center;
                font-size: 4.5333333333333vw;
                font-weight: bold;
                color: #fff;
                padding-left: 22.6666666666667vw;
                position: relative;
        }

        #suntory_contents #schedule .todays_ticket_information dt::before {
                content: '';
                width: 10.6666666666667vw;
                height: 6.6666666666667vw;
                background: #881133;
                position: absolute;
                top: calc(50% - 3.33333333333335vw);
                right: 4.6666666666667vw;
        }

        #suntory_contents #schedule .todays_ticket_information dt::after {
                content: '';
                vertical-align: middle;
                position: absolute;
                top: 6.4vw;
                right: 8.6666666666667vw;
                width: 2vw;
                height: 2vw;
                margin: auto;
                border-top: 1px solid #fff;
                border-right: 1px solid #fff;
                -webkit-transform: rotate(135deg);
                transform: rotate(135deg);
        }

        #suntory_contents #schedule .todays_ticket_information dt.open::after {
                content: '';
                vertical-align: middle;
                position: absolute;
                top: 7.2vw;
                right: 8.6666666666667vw;
                width: 2vw;
                height: 2vw;
                margin: auto;
                border-top: 1px solid #fff;
                border-right: 1px solid #fff;
                -webkit-transform: rotate(-45deg);
                transform: rotate(-45deg);
        }

        #suntory_contents #schedule .todays_ticket_information ul {
                list-style: none;
        }

        #suntory_contents #schedule .schedule_list li {
                border-right: 1px #888888 solid;
                border-bottom: 1px #888888 solid;
                border-left: 1px #888888 solid;
                padding: 4.6666666666667vw 4vw;
        }

        #suntory_contents #schedule .schedule_list li .hall {
                margin-bottom: 4vw;
                font-size: 4.2666666666667vw;
                font-weight: bold;
                font-weight: 700;
        }

        #suntory_contents #schedule .schedule_list li .time {
                margin-bottom: 4vw;
                font-size: 3.7333333333333vw;
                font-weight: bold;
                font-weight: 700;
        }

        #suntory_contents #schedule .schedule_list li .time span {
                font-size: 4vw;
        }

        #suntory_contents #schedule .schedule_list li h3 {
                margin-bottom: 4vw;
                font-size: 3.4666666666667vw;
        }

        #suntory_contents #schedule .schedule_list .big {
                background: #fff2f2;
        }

        #suntory_contents #schedule .schedule_list .small {
                background: #eff6ff;
        }

        #suntory_contents #schedule .schedule_list .big a {
                color: #881133;
        }

        #suntory_contents #schedule .schedule_list .small a {
                color: #0055cc;
        }

        #suntory_contents #schedule .todays_ticket {
                display: flex;
                align-items: center;
                justify-content: space-between;
        }

        #suntory_contents #schedule .todays_ticket .btn_todays_ticket {
                width: 21.3333333333333vw;
                height: 8vw;
                background: #881133;
                font-size: 3.2vw;
                color: #fff;
                display: flex;
                align-items: center;
                justify-content: center;
        }

        #suntory_contents #schedule .todays_ticket .ticket_pop {
                width: 60vw;
        }

        #suntory_contents #schedule .todays_ticket .ticket_pop p {
                font-size: 3.2vw;
                line-height: 1.4;
        }

        #suntory_contents #schedule .no_todays_ticket {
                width: 21.3333333333333vw;
                height: 8vw;
                background: #b8b8b8;
                font-size: 3.2vw;
                color: #fff;
                display: flex;
                align-items: center;
                justify-content: center;
        }

        /* ========================================================================
        [sp]close_day_announcement
        ========================================================================= */
        #suntory_contents #schedule .close_day_announcement {
                margin-bottom: 5.3333333333333vw;
                background: #eeeeee;
                padding: 5.3333333333333vw;
        }

        #suntory_contents #schedule .close_day_announcement p {
                font-size: 4.5333333333333vw;
                font-weight: bold;
                font-weight: 700;
                text-align: center;
        }

        /* ========================================================================
        [sp]information
        ========================================================================= */
        #suntory_contents #information {
                margin: 0 4vw 0;
                display: flex;
                flex-direction: column;
        }

        #suntory_contents #information #host {
                order: 1;
                margin-bottom: 8vw;
                display: block;
                width: 100%;
                height: 0;
                padding-top: 72.463768115942029%;
                background: url(../img/top/banner_host2025_sp.webp) no-repeat 0 0;
                background-size: 100% auto;
        }

        .no-webp #suntory_contents #information #host {
                background: url(../img/top/banner_host2025_sp.jpg) no-repeat 0 0;
                background-size: 100% auto;
        }

        #suntory_contents #information #host p,
        #suntory_contents #information #host h2 {
                text-indent: -9999px;
                height: 0;
        }

        /* ========================================================================
        [sp]note_hibiki_container
        ========================================================================= */
        #suntory_contents #information #note_hibiki_container {
                width: 100%;
                max-height: 600px;
                margin-bottom: 8vw;
                order: 3;
        }

        #suntory_contents #information #note_hibiki_container .note_hibiki {
                width: 100%;
                height: 100%;
                
        }

        #suntory_contents #information #note_hibiki_container a.hibiki_link {
                text-decoration: none;
                display: block;
                background: url(../img/top/banner_note_hibiki.jpg) no-repeat 0 center;
                background-size: 100% auto;
                padding-top: 48.456666%;
        }

        #suntory_contents #information #note_hibiki_container a.hibiki_article {
                text-decoration: none;
        }

        #suntory_contents #information #note_hibiki_container a:hover {
                opacity: .92;
                filter: saturate(140%);
        }

        #suntory_contents #information #note_hibiki_container .note_hibiki_content {
                display: flex;
                justify-content: center;
                padding: 4% 0px 4% 0px;
                height: 36.7vw;
                background: #f4e5db;
        }

        #suntory_contents #information #note_hibiki_container .note_txt {
                width: 47.645946%;
                background-color: #fff;
        }

        #suntory_contents #information #note_hibiki_container .note_img {
                width: 47.645946%;
        }

        #suntory_contents #information #note_hibiki_container .tag {
                padding: 8.823529411764707% 0 8.823529411764707% 8.823529411764707%;
        }

        #suntory_contents #information #note_hibiki_container .tag::after {
                content: '';
                display: inline-block;
                width: 42.176471%;
                height: 2.73972602739726vw;
                background: url(/suntoryhall/common2019/img/icon_newwin.png) no-repeat right center / 2.73972602739726vw;
        }

        #suntory_contents #information #note_hibiki_container .tag span {
                display: inline-block;
                margin: 0;
                width: 17.80821917808219vw;
                height: 6.575342465753424vw;
                color: #222;
                font-size: 2.8767123287671232vw;
                font-weight: bold;
                line-height: 6.8493150684931505vw;
                border-radius: 3.0136986301369864vw;
                text-align: center;
        }

        #suntory_contents #information #note_hibiki_container .tag_article {
                background: #e9e9e9;
        }

        #suntory_contents #information #note_hibiki_container .title {
                color: #222;
                font-size: 3.4246575342465753vw;
                /* font-size: 3.1246575342465753vw; */
                font-weight: bold;
                padding: 0 0 0 8.823529411764707%;
                /* padding: 0 0 0 3%; */
        }

        #suntory_contents #information #note_hibiki_container .small_txt {
                font-size: 2.6246575342465753vw;
        }

        /* ========================================================================
        [sp]movie_container
        ========================================================================= */
        #suntory_contents #information #movie_container {
                order: 3;
                margin-bottom: 10.6666666666667vw;
                margin-bottom: 8vw;
                padding-bottom: 2.6666666666667vw;
                background: #881133;
        }

        #suntory_contents #information #movie_container .title_bar {
                display: flex;
                justify-content: space-between;
                align-items: center;
                background: #881133;
                padding: 0 4vw;
                height: 16vw;
        }

        #suntory_contents #information #movie_container .title_bar h2 {
                font-size: 4.5333333333333vw;
                color: #fff;
                background: url(../img/top/icon_movie.png) no-repeat 0 center;
                background-size: 8.5333333333333vw auto;
                padding-left: 12.8vw;
        }

        #suntory_contents #information #movie_container .title_bar .btn_list {
                width: 17.3333333333333vw;
                height: 8vw;
        }

        #suntory_contents #information #movie_container .title_bar .btn_list a {
                width: 17.3333333333333vw;
                height: 8vw;
                background: #992244;
                color: #fff;
                font-size: 3.2vw;
                display: flex;
                align-items: center;
                padding-left: 3.3333333333333vw;
                text-decoration: none;
                position: relative;
                box-sizing: border-box;
        }

        #suntory_contents #information #movie_container .title_bar .btn_list a::after {
                content: "";
                vertical-align: middle;
                position: absolute;
                top: calc(50% - 0.6666666666667vw);
                right: 3.3333333333333vw;
                width: 1.3333333333333vw;
                height: 1.3333333333333vw;
                margin: auto;
                border-top: 1px solid #fff;
                border-right: 1px solid #fff;
                -webkit-transform: rotate(45deg);
                transform: rotate(45deg);
        }

        #suntory_contents #information #movie_container .img_movie_link {
                margin: 0 auto;
                display: block;
                width: 86.6666666666667vw;
                height: 67.066666666666667vw;
                background: url(../img/top/2020/sp_img_movie.jpg) no-repeat 0 0;
                background-size: 86.6666666666667vw auto;
                text-indent: -9999px;
        }

        #suntory_contents #information #movie_container .img_movie {}

        #suntory_contents #information #movie_container #player {
                margin-bottom: 4vw;
        }

        #suntory_contents #information #movie_container #movie {
                margin-bottom: 4vw;
        }

        #suntory_contents #information #movie_container .movie_title {
                font-size: 3.4666666666667vw;
                line-height: 1.5;
        }

        #suntory_contents #information #movie_container .movie_title h3 {
                font-weight: normal;
                color: #222;
        }

        #suntory_contents #information #movie_container .movie_title a {
                color: #222;
                text-decoration: none;
        }

        /* ========================================================================
        [sp]dsh
        ========================================================================= */
        #suntory_contents #dsh {
                order: 2;
                margin-bottom: 8vw;
        }

        #suntory_contents #dsh a {
                display: block;
                width: 92vw;
                height: 52.533333333333333vw;
                text-indent: -9999px;
                background: url(../img/top/banner_wide_sm_ja.jpg) no-repeat 0 0;
                background-size: 92vw auto;
        }

        /* ========================================================================
        [sp]banner_container_body
        ========================================================================= */
        #suntory_contents .banner_container_body {
                order: 2;
                margin-bottom: 8vw;
        }

        #suntory_contents #banner_dsh {
                margin-bottom: 8vw;
        }

        #suntory_contents #banner_dsh a {
                display: block;
                width: 92vw;
                height: 52.533333333333333vw;
                text-indent: -9999px;
                background: url(../img/top/banner_dsh_sp.webp) no-repeat 0 0;
                background-size: 92vw auto;
        }

        .no-webp #suntory_contents #banner_dsh a {
                background: url(../img/top/banner_dsh_sp.png) no-repeat 0 0;
                background-size: 92vw auto;
        }

        #suntory_contents #banner_online_shop {
                margin-bottom: 8vw;
        }

        #suntory_contents #banner_online_shop a {
                display: block;
                width: 92vw;
                height: 40.266666666666667vw;
                background: url(../img/top/banner_online_shop.webp) no-repeat 0 0;
                background-size: 92vw auto;
                color: #fff;
                text-decoration: none;
        }

        .no-webp #suntory_contents #banner_online_shop a {
                background: url(../img/top/banner_online_shop.jpg) no-repeat 0 0;
                background-size: 92vw auto;
        }

        #suntory_contents #banner_online_shop a .label {
                margin: 0 0 0 4vw;
                padding: 1.866666666666667vw 0 0;
                display: flex;
                align-items: flex-end;
        }

        #suntory_contents #banner_online_shop a .label p {
                font-size: 2.666666666666667vw;
                margin-right: 4vw;
        }

        #suntory_contents #banner_online_shop a .label h2 {
                font-size: 4vw;
        }

        #suntory_contents #banner_apple_music a {
                display: block;
                width: 92vw;
                height: 40.533333333333333vw;
                text-indent: -9999px;
                background: url(../img/top/banner_apple_music.webp) no-repeat 0 0;
                background-size: 92vw auto;
        }

        .no-webp #suntory_contents #banner_apple_music a {
                background: url(../img/top/banner_apple_music.jpg) no-repeat 0 0;
                background-size: 92vw auto;
        }

        /* ========================================================================
        [sp]pickup static
        ========================================================================= */
        #suntory_contents #pickup.static {
                margin: 0 auto 13.3333333333333vw;
                width: 92vw;
        }

        #suntory_contents #pickup.static h2 {
                font-size: 5.0666666666667vw;
                line-height: 1;
                font-weight: bold;
                padding-bottom: 8vw;
                border-bottom: 1px #dedede solid;
        }

        #suntory_contents #pickup.static .pickup_container {}

        #suntory_contents #pickup.static .pickup {
                width: 92vw;
                margin-top: 5.3333333333333vw;
                padding-bottom: 5.3333333333333vw;
                border-bottom: 1px #dedede solid;
        }

        #suntory_contents #pickup.static .pickup a {
                display: flex;
                justify-content: space-between;
                align-items: center;
                width: 100%;
                color: #222;
        }

        #suntory_contents #pickup.static .pickup figure {
                margin: 0;
                width: 50.6666666666667vw;
                display: block;
        }

        #suntory_contents #pickup.static .pickup figure img {
                width: 100%;
                height: auto;
                vertical-align: bottom;
        }

        #suntory_contents #pickup.static .pickup .text {
                margin: 0;
                width: 37.3333333333333vw;
                display: flex;
                align-items: center;
                justify-content: center;
                text-align: left;
                font-size: 3.7333333333333vw;
                line-height: 1.466666666666667;
        }

        #suntory_contents #pickup.static .pickup .text br {
                display: none;
        }

        /* ========================================================================
    [sp]contents_menu
    ========================================================================= */
        #suntory_contents #contents_menu {
                margin: 0 auto 13.3333333333333vw;
                width: 92vw;
        }

        #suntory_contents #contents_menu ul {
                list-style: none;
        }

        #suntory_contents #contents_menu ul li {
                margin-bottom: 4vw;
        }

        #suntory_contents #contents_menu ul li:last-child {
                margin-bottom: 0;
        }

        #suntory_contents #contents_menu ul li a {
                text-decoration: none;
                color: #fff;
                display: block;
                width: 92vw;
                height: 28vw;
                position: relative;
        }

        #suntory_contents #contents_menu .contents_menu_membersclub a {
                background: url(../img/top/2020/sp_img_contents_menu_members_club.webp) no-repeat 0 0;
                background-size: 100% auto;
        }

        .no-webp #suntory_contents #contents_menu .contents_menu_membersclub a {
                background: url(../img/top/2020/sp_img_contents_menu_members_club.jpg) no-repeat 0 0;
                background-size: 100% auto;
        }

        #suntory_contents #contents_menu .contents_menu_facility a {
                background: url(../img/top/2020/sp_img_contents_menu_facility.webp) no-repeat 0 0;
                background-size: 100% auto;
        }

        .no-webp #suntory_contents #contents_menu .contents_menu_facility a {
                background: url(../img/top/2020/sp_img_contents_menu_facility.jpg) no-repeat 0 0;
                background-size: 100% auto;
        }

        #suntory_contents #contents_menu .contents_menu_enjoy a {
                background: url(../img/top/2020/sp_img_contents_menu_enjoy.webp) no-repeat 0 0;
                background-size: 100% auto;
        }

        .no-webp #suntory_contents #contents_menu .contents_menu_enjoy a {
                background: url(../img/top/2020/sp_img_contents_menu_enjoy.jpg) no-repeat 0 0;
                background-size: 100% auto;
        }

        #suntory_contents #contents_menu .contents_menu_movie a {
                background: url(../img/top/2020/sp_img_contents_menu_movie.webp) no-repeat 0 0;
                background-size: 100% auto;
        }

        .no-webp #suntory_contents #contents_menu .contents_menu_movie a {
                background: url(../img/top/2020/sp_img_contents_menu_movie.jpg) no-repeat 0 0;
                background-size: 100% auto;
        }

        #suntory_contents #contents_menu .contents_menu_gourmet a {
                background: url(../img/top/2020/sp_img_contents_menu_gourmet.webp) no-repeat 0 0;
                background-size: 100% auto;
        }

        .no-webp #suntory_contents #contents_menu .contents_menu_gourmet a {
                background: url(../img/top/2020/sp_img_contents_menu_gourmet.jpg) no-repeat 0 0;
                background-size: 100% auto;
        }

        #suntory_contents #contents_menu h3 {
                font-size: 4vw;
                font-weight: bold;
                line-height: 1;
        }

        #suntory_contents #contents_menu p {
                font-size: 3.4666666666667vw;
                line-height: 1;
        }


        #suntory_contents #contents_menu .contents_menu_membersclub h3 {
                position: absolute;
                top: 9.466666666666667vw;
                left: 5.3333333333333vw;
                letter-spacing: -.05em;
        }

        #suntory_contents #contents_menu .contents_menu_membersclub p {
                position: absolute;
                top: 18.4vw;
                left: 11.866666666666667vw;
        }

        #suntory_contents #contents_menu .contents_menu_facility h3 {
                font-weight: bold;
                position: absolute;
                top: 12.2666666666667vw;
                left: 17.3333333333333vw;
        }

        #suntory_contents #contents_menu .contents_menu_enjoy h3 {
                line-height: 1.333333333333333;
                font-weight: bold;
                letter-spacing: -.05em;
                position: absolute;
                top: 6.6666666666667vw;
                left: 5.3333333333333vw;
        }

        #suntory_contents #contents_menu .contents_menu_enjoy p {
                position: absolute;
                top: 18.2666666666667vw;
                left: 5.3333333333333vw;
        }

        #suntory_contents #contents_menu .contents_menu_movie h3 {
                position: absolute;
                top: 11.866666666666667vw;
                left: 17.3333333333333vw;
        }

        #suntory_contents #contents_menu .contents_menu_gourmet h3 {
                position: absolute;
                top: 12.133333333333333vw;
                left: 17.3333333333333vw;
        }


        /* ========================================================================
    [sp]recommend solo
    ========================================================================= */
        #suntory_contents #recommend.solo {
                margin: 0 4vw 8vw;
                border: 1px #dedede solid;
                box-shadow: 0px 0px 1.2vw 0px rgba(187, 187, 187, .4);
        }

        #suntory_contents #recommend.solo .title_bar {
                background: #ffe7e7;
                padding: 5.3333333333333vw 0 5.3333333333333vw 5.3333333333333vw;
                display: flex;
                justify-content: space-between;
        }

        #suntory_contents #recommend.solo .title_bar h2 {
                margin: 0;
                width: 100%;
                font-size: 4.5333333333333vw;
                font-weight: bold;
                font-weight: 700;
                line-height: 8vw;
                letter-spacing: -0.05em;
        }

        #suntory_contents #recommend.solo .title_bar .btn_list {
                margin: 0 8vw 0 0;
                width: 17.3333333333333vw;
                height: 8vw;
        }

        #suntory_contents #recommend.solo .title_bar .btn_list a {
                width: 17.3333333333333vw;
                height: 8vw;
                background: #881133;
                color: #fff;
                font-size: 3.2vw;
                display: flex;
                align-items: center;
                padding-left: 3.3333333333333vw;
                text-decoration: none;
                position: relative;
                box-sizing: border-box;
        }

        #suntory_contents #recommend.solo .title_bar .btn_list a::after {
                content: "";
                vertical-align: middle;
                position: absolute;
                top: calc(50% - 0.6666666666667vw);
                right: 3.2vw;
                width: 1.3333333333333vw;
                height: 1.3333333333333vw;
                margin: auto;
                border-top: 1px solid #fff;
                border-right: 1px solid #fff;
                -webkit-transform: rotate(45deg);
                transform: rotate(45deg);
        }

        #suntory_contents #recommend.solo .article a {
                display: block;
                margin: 8vw 5.3333333333333vw;
                color: #222222;
                text-decoration: none;
        }

        #suntory_contents #recommend.solo .article figure {
                margin-bottom: 5.3333333333333vw;
        }

        #suntory_contents #recommend.solo .article figure img {
                width: 100%;
                height: auto;
                vertical-align: bottom;
        }

        #suntory_contents #recommend.solo .category {
                margin-bottom: 5.3333333333333vw;
                background: #eeeeee;
                padding: 4.2666666666667vw 4.2666666666667vw;
                font-size: 3.7333333333333vw;
                position: relative;
        }

        #suntory_contents #recommend.solo .external .category::after {
                content: '';
                width: 3vw;
                height: 3vw;
                background: url(../img/icon_external.png) no-repeat 0 0;
                background-size: 3vw auto;
                position: absolute;
                top: calc(50% - 1.5vw);
                right: 5.6vw;
        }

        #suntory_contents #recommend.solo .article h3 {
                font-size: 3.7333333333333vw;
                font-weight: normal;
        }




        /* ========================================================================
        [sp]news_container
        ========================================================================= */
        #suntory_contents #news_topics {
                margin: 0 4vw 8vw;
        }

        #suntory_contents #news_topics .title_bar {
                margin-bottom: 8vw;
                display: flex;
                justify-content: space-between;
                align-items: center;
        }

        #suntory_contents #news_topics .title_bar h2 {
                font-size: 4.5333333333333vw;
                font-weight: bold;
                font-weight: 700;
        }

        #suntory_contents #news_topics .title_bar .btn_list {
                width: 17.3333333333333vw;
                height: 8vw;
        }

        #suntory_contents #news_topics .title_bar .btn_list a {
                width: 17.3333333333333vw;
                height: 8vw;
                background: #881133;
                color: #fff;
                font-size: 3.2vw;
                display: flex;
                align-items: center;
                padding-left: 3.3333333333333vw;
                text-decoration: none;
                position: relative;
                box-sizing: border-box;
        }

        #suntory_contents #news_topics .title_bar .btn_list a::after {
                content: "";
                vertical-align: middle;
                position: absolute;
                top: calc(50% - 0.6666666666667vw);
                right: 3.2vw;
                width: 1.3333333333333vw;
                height: 1.3333333333333vw;
                margin: auto;
                border-top: 1px solid #fff;
                border-right: 1px solid #fff;
                -webkit-transform: rotate(45deg);
                transform: rotate(45deg);
        }

        #suntory_contents .news_topics_table {
                margin-bottom: 5.3333333333333vw;
                border-bottom: 1px #dedede solid;
        }

        #suntory_contents .news_topics_table th {
                font-size: 3.7333333333333vw;
                line-height: 1.5;
                font-weight: normal;
                padding: 5.3333333333333vw 0 15.3333333333333vw;
                white-space: nowrap;
                text-align: left;
                vertical-align: top;
                border-top: 1px #dedede solid;
                position: relative;
        }

        #suntory_contents .news_topics_table th::after {
                width: 14.6666666666667vw;
                height: 6.6666666666667vw;
                display: flex;
                justify-content: center;
                align-items: center;
                font-size: 2.6666666666667vw;
                color: #fff;
                position: absolute;
                top: 12vw;
                left: 0;
                border-radius: 3.3333333333333vw;
        }

        #suntory_contents .news_topics_table th.invite::after {
                content: '募集';
                background: #55bbcc;
        }

        #suntory_contents .news_topics_table th.host::after {
                content: '主催公演';
                background: #ee9966;
        }

        #suntory_contents .news_topics_table th.new::after {
                content: '新着';
                background: #88cc66;
        }

        #suntory_contents .news_topics_table th.notice::after {
                content: 'お知らせ';
                background: #ff6677;
        }

        #suntory_contents .news_topics_table td {
                border-top: 1px #dedede solid;
                padding: 5.3333333333333vw 0 5.3333333333333vw 5.3333333333333vw;
                font-size: 3.7333333333333vw;
                line-height: 1.5;
                vertical-align: top;
        }

        #suntory_contents .news_topics_table td a {
                color: #222;
        }

        #suntory_contents .news_topics_table td a:hover {
                color: #881133;
        }

        #suntory_contents .news_topics_table td a.external::after {
                content: '';
                display: inline-block;
                width: 3.8vw;
                height: 2.4vw;
                background-size: contain;
                background: url(/suntoryhall/common2019/img/icon_external.png) no-repeat right center / 2.4vw;
        }

        #suntory_contents #news_topics .extra {
                font-size: 3.7333333333333vw;
                line-height: 1.5;
                color: #994455;
        }


        /* ========================================================================
        [sp]academy
        ========================================================================= */
        #suntory_contents #academy {
                margin: 0 4vw 8vw;
                border: 1px #dedede solid;
                box-shadow: 0px 0px 1.2vw 0px rgba(187, 187, 187, .4);
        }

        #suntory_contents #academy .title_bar {
                background: #e5f8e5;
                padding: 5.3333333333333vw 0 5.3333333333333vw 5.3333333333333vw;
                display: flex;
                flex-wrap: wrap;
                justify-content: space-between;
        }

        #suntory_contents #academy .title_bar h2 {
                margin: 0;
                width: 100%;
                font-size: 4.5333333333333vw;
                font-weight: bold;
                font-weight: 700;
                letter-spacing: -0.05em;
        }

        #suntory_contents #academy .title_bar .category {
                margin: 2.4vw 0 0;
                font-size: 4.2666666666667vw;
                font-weight: bold;
                line-height: 8vw;
        }

        #suntory_contents #academy .title_bar .btn_list {
                margin: 2.4vw 8vw 0 0;
                width: 17.3333333333333vw;
                height: 8vw;
        }

        #suntory_contents #academy .title_bar .btn_list a {
                width: 17.3333333333333vw;
                height: 8vw;
                background: #881133;
                color: #fff;
                font-size: 3.2vw;
                display: flex;
                align-items: center;
                padding-left: 3.3333333333333vw;
                text-decoration: none;
                position: relative;
                box-sizing: border-box;
        }

        #suntory_contents #academy .title_bar .btn_list a::after {
                content: "";
                vertical-align: middle;
                position: absolute;
                top: calc(50% - 0.6666666666667vw);
                right: 3.2vw;
                width: 1.3333333333333vw;
                height: 1.3333333333333vw;
                margin: auto;
                border-top: 1px solid #fff;
                border-right: 1px solid #fff;
                -webkit-transform: rotate(45deg);
                transform: rotate(45deg);
        }

        #suntory_contents #academy .article a {
                display: block;
                margin: 8vw 5.3333333333333vw;
                color: #222222;
                text-decoration: none;
        }

        #suntory_contents #academy .article figure {
                margin-bottom: 5.3333333333333vw;
        }

        #suntory_contents #academy .article figure img {
                width: 100%;
                height: auto;
                vertical-align: bottom;
        }

        #suntory_contents #academy .article .date {
                font-size: 3.7333333333333vw;
                margin-bottom: 6.6666666666667vw;
        }

        #suntory_contents #academy .article h3 {
                font-size: 3.7333333333333vw;
                font-weight: normal;
        }


}


/*==================================================
pc
================================================== */
@media print, screen and (min-width:768px) {

        /* ========================================================================
        [pc]hall_contents
        ========================================================================= */
        #suntory_contents #hall_contents {
                margin: 40px 0 120px;
        }

        /* ========================================================================
        [pc]main_visual_wrap
        ========================================================================= */
        #suntory_contents #main_visual_wrap {
                margin: 0 auto;
                width: 100%;
                max-width: 1160px;
                min-width: 960px;
                display: flex;
                flex-wrap: wrap;
                justify-content: space-between;
        }

        #suntory_contents #slide_container {
                display: none;
        }

        /* ========================================================================
        [pc]main_visual
        ========================================================================= */
        #suntory_contents #main_visual {
                /* margin-bottom: 40px; */
                width: 65.5172413793103%;
                width: calc(100% - 400px);
                height: 0;
                padding-top: 45.258620689655172%;
                position: relative;
        }

        @media screen and (min-width: 768px) and (max-width: 1060px) {
                #suntory_contents #main_visual {
                        width: calc(100% - 370px);
                }
        }

        #suntory_contents #main_visual #teaser {
                width: 100%;
                position: absolute;
                top: 0;
                left: 0;
        }

        #suntory_contents #main_visual #teaser img:hover {
                opacity: .8;
                filter: saturate(150%);
        }

        #suntory_contents #main_visual #teaser img {
                width: 100%;
                height: auto;
        }

        #suntory_contents #main_visual #slide_container {
                width: 100%;
                position: absolute;
                top: 0;
                left: 0;
        }

        #suntory_contents #main_visual #slide_container img {
                width: 100%;
                height: auto;
        }

        #suntory_contents #main_visual #slide_container img:hover {
                opacity: .8;
                filter: saturate(150%);
        }


        /* ========================================================================
        [pc]calendar_container
        ========================================================================= */
        #suntory_contents #calendar_container {
                /* margin-bottom: 40px; */
                width: 31.8965517241379%;
                width: 370px;
        }

        @media screen and (min-width: 768px) and (max-width: 1060px) {
                #suntory_contents #calendar_container {
                        width: 340px;
                }
        }


        #suntory_contents .btn_schedule {
                margin: 0 auto 20px;
                width: 100%;
                height: 50px;
                font-size: 16px;
                font-weight: bold;
                letter-spacing: -0.05em;
        }

        #suntory_contents .btn_schedule a {
                color: #fff;
                text-decoration: none;
                display: flex;
                justify-content: center;
                align-items: center;
                height: 50px;
                padding-left: 23px;
                box-sizing: border-box;
                background: #881133 url(../img/top/icon_schedule.png) no-repeat 70px center;
                background-size: 27px auto;
                position: relative;
        }

        #suntory_contents .btn_schedule a::after {
                content: "";
                vertical-align: middle;
                position: absolute;
                top: calc(50% - 4px);
                right: 25px;
                width: 8px;
                height: 8px;
                margin: auto;
                border-top: 2px solid #fff;
                border-right: 2px solid #fff;
                -webkit-transform: rotate(45deg);
                transform: rotate(45deg);
        }

        #suntory_contents .btn_schedule a:hover {
                background: #aa1144 url(../img/top/icon_schedule.png) no-repeat 70px center;
                background-size: 27px auto;
        }

        #suntory_contents #search {
                margin-bottom: 20px;
                width: 100%;
        }

        #suntory_contents #search form {
                width: 100%;
                display: flex;

        }

        #suntory_contents #search .search_txt {
                width: 81.0810810810811%;
                height: 40px;
                border-top: 1px #dedede solid;
                border-bottom: 1px #dedede solid;
                border-left: 1px #dedede solid;
                box-sizing: border-box;
                font-size: 14px;
                padding: 0 20px;
                color: #222 !important;
        }

        #suntory_contents #search .search_txt::-webkit-input-placeholder,
        #suntory_contents #search .search_txt::-moz-placeholder,
        #suntory_contents #search .search_txtt::-moz-placeholder,
        #suntory_contents #search .search_txt::-ms-input-placeholder {
                color: #999999;
        }

        #suntory_contents #search .search_txt::placeholder {
                color: #999999;
        }

        /*placeholder focus*/
        #suntory_contents #search .search_txt:focus::-webkit-input-placeholder {
                color: transparent;
        }

        #suntory_contents #search .search_txt:focus:-moz-placeholder {
                color: transparent;
        }

        #suntory_contents #search .search_txt::focus::placeholder {
                color: transparent;
        }

        #suntory_contents #search .search_btn {
                width: 18.9189189189189%;
                height: 40px;
                background: #881133;
                box-sizing: border-box;
                display: flex;
                justify-content: center;
                align-items: center;
                font-size: 14px;
                color: #fff;
                border: none;
                cursor: pointer;
                border-radius: 0;
        }

        #suntory_contents #search .search_btn:hover {
                background: #aa1144;
        }

        #suntory_contents #calender {
                background: #eeeeee;
                background: -moz-linear-gradient(top, #eeeeee 0%, #ffffff 100%);
                background: -webkit-linear-gradient(top, #eeeeee 0%, #ffffff 100%);
                background: linear-gradient(to bottom, #eeeeee 0%, #ffffff 100%);
                filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#eeeeee', endColorstr='#ffffff', GradientType=0);
                text-align: center;
                padding: 20px 0 0;
                position: relative;
        }

        #suntory_contents #calender .select_wrap {
                margin: 0 auto 15px;
                width: 77.2972972972973%;
                height: 45px;
                border: 1px #d4d4d4 solid;
                display: flex;
                justify-content: center;
                align-items: center;
        }

        #suntory_contents #calender select {
                -moz-appearance: none;
                -webkit-appearance: none;
                appearance: none;
                border-radius: 0;
                border: 0;
                margin: 0 0 0 60px;
                padding: 0 60px 0 0;
                /*        padding-left: calc(50% - 5em);*/
                vertical-align: middle;
                box-sizing: border-box;
                background: url(../img/top/arrow_select.png) no-repeat right center;
                background-size: auto 26px;
                font-size: 17px;
                font-weight: bold;
                font-weight: 700;
                color: #222222;
        }

        #suntory_contents #calender select::-ms-expand {
                display: none;
        }

        #suntory_contents #calender select:hover,
        #suntory_contents #calender select:active {
                background: url(../img/top/arrow_select_on.png) no-repeat right center;
                background-size: auto 26px;
        }

        #suntory_contents #calender .calender_table {
                width: 77.2972972972973%;
                margin: 0 auto 15px;
        }

        #suntory_contents #calender .calender_table .weeklabel th {
                font-size: 13px;
                font-weight: normal;
                padding: 8px 0;
        }

        #suntory_contents #calender .calender_table td {
                border: 1px #eeeeee solid;
                font-size: 16px;
                font-weight: bold;
                font-weight: 700;
                /*        letter-spacing: -0.075em;*/
                vertical-align: middle;
                background: #fff;
        }

        #suntory_contents #calender .calender_table .cell_day {
                background: #fff;
                padding: 0 10px;
                height: 35px;
                color: #770022;
                display: flex;
                align-items: center;
                justify-content: center;
                cursor: pointer;
                font-weight: bold;
        }

        #suntory_contents #calender .calender_table .current .cell_day {
                background: #cc7788;
                color: #fff;
        }

        #suntory_contents #calender .calender_table .cell_day:hover {
                background: #cc7788;
                color: #fff;
        }

        #suntory_contents #calender .calender_table .today .cell_day {
                background: #881133;
                color: #fff;
        }

        #suntory_contents #calender .calender_table .close_day .cell_day {
                margin: 2px auto;
                padding: 0;
                width: 30px;
                height: 30px;
                background: #bbbbbb;
                border-radius: 15px;
                color: #fff;
                pointer-events: none;
                display: flex;
                align-items: center;
                justify-content: center;
                text-align: center;
                box-sizing: border-box;
        }

        #suntory_contents #calender .calender_table .nodata_day .cell_day {
                background: #fff;
                color: #8d8d8d;
                pointer-events: none;
        }

        #suntory_contents #calender .calender_table .nodata {
                background: #e2e2e2;
                height: 35px;
                pointer-events: none;
        }

        #suntory_contents #calender .note {
                margin: 0 13.5135135135135% 45px;
                width: 77.2972972972973%;
                margin: 0 auto 20px;
                font-size: 12px;
                line-height: 1.583333333333333;
                color: #222;
                text-align: left;
        }

        #suntory_contents #calender .note span {
                color: #bbbbbb;
        }

        #suntory_contents #calender .note .temp_msg {
                display: none;
        }

        #suntory_contents #calender .note .temp_msg.active {
                display: block;
                color: #994455;
                font-weight: bold;
        }

        #suntory_contents #calender .close_msg {
                width: 250px;
                height: 112px;
                display: flex;
                align-items: center;
                justify-content: center;
                font-size: 16px;
                font-weight: bold;
                line-height: 1.8;
                text-align: center;
                color: #885500;
                border: 1px #a68040 solid;
                background: rgba(255, 255, 255, .77);
                position: absolute;
                top: 174px;
                left: calc(50% - 125px);
                display: none;
        }

        #suntory_contents #calender .close_msg.active {
                display: flex;
        }



        /* ========================================================================
        [pc]cal_popbox
        ========================================================================= */
        #suntory_contents #cal_popbox {
                width: 420px;
                min-height: 180px;
                background: #fff;
                filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, .5));
                position: absolute;
                top: 20px;
                left: -410px;
                z-index: 100;
                display: none;
        }

        #suntory_contents #cal_popbox::after {
                content: '';
                width: 0;
                height: 0;
                border-style: solid;
                border-width: 20px 0 20px 20px;
                border-color: transparent transparent transparent #ffffff;
                position: absolute;
                top: 64px;
                right: -20px;
        }

        #suntory_contents #cal_popbox .title_bar {
                background: #881133;
                height: 46px;
                display: flex;
                align-items: center;
                justify-content: center;
                position: relative;
        }

        #suntory_contents #cal_popbox .title_bar .date {
                color: #fff;
                font-size: 17px;
                font-weight: bold;
                font-weight: 700;
        }

        #suntory_contents #cal_popbox .title_bar .date span {
                font-size: 18px;
        }

        #suntory_contents #cal_popbox .title_bar .btn_close {
                width: 30px;
                height: 30px;
                background: #992244;
                position: absolute;
                top: 8px;
                right: 10px;
                cursor: pointer;
        }

        #suntory_contents #cal_popbox .title_bar .btn_close span::before,
        #suntory_contents #cal_popbox .title_bar .btn_close span::after {
                display: block;
                content: "";
                position: absolute;
                top: 50%;
                left: calc(50% - 10px);
                width: 20px;
                height: 1px;
                background: #fff;
        }

        #suntory_contents #cal_popbox .title_bar .btn_close span::before {
                transform: rotate(-45deg);
        }

        #suntory_contents #cal_popbox .title_bar .btn_close span::after {
                transform: rotate(45deg);
        }

        #suntory_contents #cal_popbox .cal_data {
                padding: 10px;
        }

        #suntory_contents #cal_popbox .bighall {
                background: #fff2f2;
                padding: 20px 20px 5px;
        }

        #suntory_contents #cal_popbox .bighall+.smallhall {
                margin-top: 10px;
        }

        #suntory_contents #cal_popbox .smallhall {
                background: #eff6ff;
                padding: 20px 20px 5px;
        }

        #suntory_contents #cal_popbox .bighall dt,
        #suntory_contents #cal_popbox .smallhall dt {
                margin: 0 0 15px;
                padding: 0;
                font-size: 14px;
                font-weight: bold;
                text-align: left;
        }

        #suntory_contents #cal_popbox .bighall dd,
        #suntory_contents #cal_popbox .smallhall dd {
                margin: 0;
                padding: 0;
                font-size: 14px;
                text-align: left;
        }

        #suntory_contents #cal_popbox .bighall dd p,
        #suntory_contents #cal_popbox .smallhall dd p {
                padding-bottom: 15px;
        }

        #suntory_contents #cal_popbox .bighall dd p+P,
        #suntory_contents #cal_popbox .smallhall dd p+p {
                border-top: 1px #dedede solid;
                padding-top: 15px;
        }

        #suntory_contents #cal_popbox .bighall dd p a {
                color: #881133;
        }

        #suntory_contents #cal_popbox .bighall dd p a:hover {
                color: #bb0044;
        }

        #suntory_contents #cal_popbox .smallhall dd p a {
                color: #0055cc;
        }

        #suntory_contents #cal_popbox .smallhall dd p a:hover {
                color: #0088ff;
        }


        /* ========================================================================
        [pc]emergency
        ========================================================================= */
        #suntory_contents #emergency {
                margin: 0 auto 35px;
                width: 950px;
                background: #eeeeee;
                padding: 20px 30px;
        }

        #suntory_contents #emergency dl {
                display: flex;
        }

        #suntory_contents #emergency dt {
                font-size: 16px;
                line-height: 16px;
                font-weight: bold;
                margin-right: 30px;
                white-space: nowrap;
        }

        #suntory_contents #emergency dd {
                font-size: 15px;
                line-height: 1.5;
        }

        #suntory_contents #emergency dd a {
                color: #222222;
        }

        #suntory_contents #emergency dd a:hover {
                color: #881133;
        }

        #suntory_contents #emergency dd p {
                margin-bottom: 10px;
        }

        #suntory_contents #emergency dd p:last-child {
                margin-bottom: 0;
        }

        /* ========================================================================
        [pc]schedule
        ========================================================================= */
        #suntory_contents #schedule {
                margin: 0 auto 20px;
                width: 100%;
                max-width: 1160px;
                min-width: 960px;
        }

        #suntory_contents #schedule.hide {
                display: none;
        }

        #suntory_contents #schedule .title_bar {
                margin-bottom: 20px;
                display: flex;
                justify-content: space-between;
        }

        #suntory_contents #schedule .title_bar h2 {
                font-size: 22px;
                line-height: 45px;
                font-weight: bold;
        }

        #suntory_contents #schedule .title_bar h2 span {
                font-size: 22px;
                font-weight: bold;
        }

        #suntory_contents #schedule .title_bar .btn_container {
                list-style: none;
                display: flex;
        }

        #suntory_contents #schedule .encore {
                margin-right: 20px;
        }

        #suntory_contents #schedule .encore a {
                width: 180px;
                height: 45px;
                display: flex;
                align-items: center;
                border: 1px #881133 solid;
                font-size: 17px;
                font-weight: bold;
                letter-spacing: 0em;
                color: #881133;
                text-decoration: none;
                background: url(../img/top/icon_music.svg) no-repeat 20px center;
                background-size: 22px auto;
                padding-left: 62px;
                box-sizing: border-box;
        }

        #suntory_contents #schedule .encore a:hover {
                border: 1px #aa1144 solid;
                color: #fff;
                background: #aa1144 url(../img/top/icon_music_white.svg) no-repeat 20px center;
                background-size: 22px auto;
        }

        #suntory_contents #schedule .archive a {
                width: 180px;
                height: 45px;
                display: flex;
                align-items: center;
                font-size: 17px;
                font-weight: bold;
                letter-spacing: 0em;
                color: #fff;
                text-decoration: none;
                background: #881133 url(../img/top/icon_note_white.svg) no-repeat 18px center;
                background-size: 18px auto;
                padding-left: 52px;
                box-sizing: border-box;
        }

        #suntory_contents #schedule .archive a:hover {
                background: #aa1144 url(../img/top/icon_note_white.svg) no-repeat 18px center;
                background-size: 18px auto;
        }

        #suntory_contents #schedule .schedule_list {
                list-style: none;
                display: flex;
                flex-wrap: wrap;
                justify-content: space-between;
        }

        #suntory_contents #schedule .schedule_list li {
                margin-bottom: 20px;
                padding: 30px;
                width: 49.1379310344828%;
                position: relative;
        }

        #suntory_contents #schedule .schedule_list li .hall {
                font-size: 17px;
                font-weight: bold;
                color: #222;
                margin-bottom: 20px;
        }

        #suntory_contents #schedule .schedule_list li .time {
                font-size: 15px;
                color: #222;
                margin-bottom: 16px;
        }

        #suntory_contents #schedule .schedule_list li h3 {
                font-size: 15px;
                line-height: 1.5;
        }

        #suntory_contents #schedule .schedule_list li.big {
                background: #fff2f2;
        }

        #suntory_contents #schedule .schedule_list li.small {
                background: #eff6ff;
        }

        #suntory_contents #schedule .schedule_list li.big h3 a {
                color: #881133;
                text-decoration: underline;
        }

        #suntory_contents #schedule .schedule_list li.big h3 a:hover {
                color: #bb0044;
        }

        #suntory_contents #schedule .schedule_list li.small h3 a {
                color: #0055cc;
                text-decoration: underline;
        }

        #suntory_contents #schedule .schedule_list li.small h3 a:hover {
                color: #0088ff;
        }

        #suntory_contents #schedule .btn_todays_ticket {
                width: 130px;
                height: 40px;
                background: #881133;
                color: #fff;
                text-decoration: none;
                font-size: 15px;
                display: flex;
                align-items: center;
                padding-left: 14px;
                position: absolute;
                top: 30px;
                right: 30px;
                box-sizing: border-box;
                cursor: pointer;
        }

        #suntory_contents #schedule .btn_todays_ticket:hover {
                background: #aa1144;
        }

        #suntory_contents #schedule .btn_todays_ticket.open {
                background: #aa1144;
        }

        #suntory_contents #schedule .btn_todays_ticket::after {
                content: "";
                vertical-align: middle;
                position: absolute;
                top: calc(50% - 4px);
                right: 14px;
                width: 7px;
                height: 7px;
                margin: auto;
                border-top: 1px solid #fff;
                border-right: 1px solid #fff;
                -webkit-transform: rotate(135deg);
                transform: rotate(135deg);
        }

        #suntory_contents #schedule .btn_todays_ticket.open::after {
                content: "";
                vertical-align: middle;
                position: absolute;
                top: calc(50% - 2.5px);
                right: 14px;
                width: 7px;
                height: 7px;
                margin: auto;
                border-top: 1px solid #fff;
                border-right: 1px solid #fff;
                -webkit-transform: rotate(-45deg);
                transform: rotate(-45deg);
        }

        #suntory_contents #schedule .ticket_pop {
                width: 270px;
                min-height: 20px;
                background: #fff;
                position: absolute;
                top: 85px;
                right: 30px;
                box-sizing: border-box;
                padding: 20px;
                z-index: 100;
                filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, .4));
                transform: translate3d(0, 0, 0) perspective(0);
                display: none;
        }

        #suntory_contents #schedule .ticket_pop::after {
                content: '';
                width: 0;
                height: 0;
                border-style: solid;
                border-width: 0 7.5px 10px 7.5px;
                border-color: transparent transparent #ffffff transparent;
                position: absolute;
                top: -10px;
                right: 20px;
        }

        #suntory_contents #schedule .ticket_pop p {
                font-size: 14px;
                line-height: 1.5;
        }

        #suntory_contents #schedule .no_todays_ticket {
                width: 130px;
                height: 40px;
                background: #b8b8b8;
                color: #fff;
                text-decoration: none;
                font-size: 15px;
                display: flex;
                align-items: center;
                justify-content: center;
                position: absolute;
                top: 30px;
                right: 30px;
                box-sizing: border-box;
        }

        /* ========================================================================
        [pc]close_day_announcement
        ========================================================================= */
        #suntory_contents #schedule .close_day_announcement {
                margin-bottom: 50px;
                border: 1px #eeeeee solid;
                padding: 35px;
        }

        #suntory_contents #schedule .close_day_announcement p {
                font-size: 22px;
                font-weight: bold;
                font-weight: 700;
                text-align: center;
        }

        /* ========================================================================
        [pc]information
        ========================================================================= */
        #suntory_contents #information {
                margin: 0 auto 50px;
                width: 100%;
                max-width: 1160px;
                min-width: 960px;
                display: flex;
                flex-wrap: wrap;
                justify-content: space-between;
                /*
                background: url(../img/top/square_black.png) no-repeat 0 0;
                background-size: 64.6551724137931% 100%;
*/
        }

        #suntory_contents #information #host {
                display: block;
                width: 64.6551724137931%;
                height: 0;
                padding-top: 27.5862068965517%;
                background: url(../img/top/banner_host2025.webp) no-repeat 0 0;
                background-size: 100% auto;
                /*        transition: all .5s ease-in-out;*/
        }

        .no-webp #suntory_contents #information #host {
                background: url(../img/top/banner_host2025.jpg) no-repeat 0 0;
                background-size: 100% auto;
        }

        #suntory_contents #information #host:hover {
                opacity: .92;
                filter: saturate(140%);
        }

        #suntory_contents #information #host p,
        #suntory_contents #information #host h2 {
                text-indent: -9999px;
                height: 0;
        }

        /* ========================================================================
        [pc]note_hibiki_container
        ========================================================================= */
        #suntory_contents #information #note_hibiki_container {
                width: 31.8965517241379%;
                position: relative;
                max-height: 320px;
        }

        #suntory_contents #information #note_hibiki_container .note_hibiki {
                width: 100%;
                height: 100%;
                
        }

        #suntory_contents #information #note_hibiki_container a.hibiki_link {
                text-decoration: none;
                display: block;
                background: url(../img/top/banner_note_hibiki.jpg) no-repeat 0 center;
                background-size: 100% auto;
                padding-top: 48.456666%;
        }

        #suntory_contents #information #note_hibiki_container a.hibiki_article {
                text-decoration: none;
        }

        #suntory_contents #information #note_hibiki_container a:hover {
                opacity: .92;
                filter: saturate(140%);
        }

        #suntory_contents #information #note_hibiki_container .note_hibiki_content {
                display: flex;
                justify-content: center;
                padding: 3.4% 0px 3.4% 0px;
                height: 43.7966%;
                background: #f4e5db;
        }

        #suntory_contents #information #note_hibiki_container .note_txt {
                width: 45.94594594594595%;
                background-color: #fff;
        }

        #suntory_contents #information #note_hibiki_container .note_img {
                width: 45.94594594594595%;
        }

        #suntory_contents #information #note_hibiki_container .tag {
                padding: 8.823529411764707% 0 8.823529411764707% 8.823529411764707%;
        }

        #suntory_contents #information #note_hibiki_container .tag::after {
                content: '';
                display: inline-block;
                width: 48.176471%;
                height: 11px;
                background: url(/suntoryhall/common2019/img/icon_newwin.png) no-repeat right center / 11px;
        }

        #suntory_contents #information #note_hibiki_container .tag span {
                display: inline-block;
                margin: 0;
                width: 65px;
                height: 24px;
                color: #222;
                font-size: 11px;
                font-weight: bold;
                line-height: 26px;
                border-radius: 13px;
                text-align: center;
        }

        #suntory_contents #information #note_hibiki_container .tag_article {
                background: #e9e9e9;
        }

        #suntory_contents #information #note_hibiki_container .title {
                color: #222;
                font-size: 13px;
                /* font-size: 12px; */
                font-weight: bold;
                padding: 0 0 0 8.823529411764707%;
                /* padding: 0 0 0 5%; */
        }

        #suntory_contents #information #note_hibiki_container .small_txt {
                font-size: 8px;
        }

        /* ========================================================================
        [pc]movie_container
        ========================================================================= */
        #suntory_contents #information #movie_container {
                width: 31.8965517241379%;
                background: #881133;
        }

        #suntory_contents #information #movie_container .title_bar {
                display: flex;
                justify-content: space-between;
                align-items: center;
                background: #881133;
                padding: 10px 15px;
        }

        #suntory_contents #information #movie_container .title_bar h2 {
                font-size: 16px;
                color: #fff;
                background: url(../img/top/icon_movie.png) no-repeat 0 center;
                background-size: 32px auto;
                padding-left: 50px;
        }

        #suntory_contents #information #movie_container .title_bar .btn_list {
                width: 80px;
                height: 30px;
        }

        #suntory_contents #information #movie_container .title_bar .btn_list a {
                width: 80px;
                height: 30px;
                background: #992244;
                color: #fff;
                font-size: 12.5px;
                display: flex;
                align-items: center;
                padding-left: 20px;
                text-decoration: none;
                position: relative;
                box-sizing: border-box;
        }

        #suntory_contents #information #movie_container .title_bar .btn_list a:hover {
                background: #aa1144;
        }

        #suntory_contents #information #movie_container .title_bar .btn_list a::after {
                content: "";
                vertical-align: middle;
                position: absolute;
                top: calc(50% - 2.5px);
                right: 10px;
                width: 5px;
                height: 5px;
                margin: auto;
                border-top: 1px solid #fff;
                border-right: 1px solid #fff;
                -webkit-transform: rotate(45deg);
                transform: rotate(45deg);
        }

        #suntory_contents #information #movie_container .img_movie_link {
                margin: 0 auto;
                display: block;
                width: auto;
                height: auto;
                background: none;
                text-indent: 0;
        }

        #suntory_contents #information #movie_container .img_movie {
                margin: 0 2.162162162162162%;
                width: 95.675675675675676%;
                display: block;
        }

        #suntory_contents #information #movie_container .img_movie img {
                width: 100%;
                height: auto;
        }

        #suntory_contents #information #movie_container a:hover .img_movie img {
                opacity: .8;
                filter: saturate(150%);
        }

        #suntory_contents #information #movie_container #player {
                margin-bottom: 25px;
        }

        #suntory_contents #information #movie_container #player iframe {}

        #suntory_contents #information #movie_container .movie_title {
                font-size: 13px;
                line-height: 1.5;
        }

        #suntory_contents #information #movie_container .movie_title h3 {
                font-weight: normal;
                color: #222;
        }

        #suntory_contents #information #movie_container .movie_title a {
                color: #222;
                text-decoration: none;
        }

        #suntory_contents #information #movie_container .movie_title a:hover {
                color: #881133;
        }

        /* ========================================================================
        [pc]dsh
        ========================================================================= */
        #suntory_contents #dsh {
                margin: 40px 0 0;
                width: 100%;
        }

        #suntory_contents #dsh a {
                display: block;
                width: 100%;
                height: 0;
                padding-top: 27.586206896551724%;
                text-indent: -9999px;
                background: url(../img/top/banner_wide_lg_ja.jpg) no-repeat 0 0;
                background-size: 100% auto;
        }

        #suntory_contents #dsh a:hover {
                opacity: .8;
                filter: saturate(150%);
        }

        /* ========================================================================
        [pc]banner_container_body
        ========================================================================= */
        #suntory_contents .banner_container_body {
                margin: 40px 0 0;
                width: 100%;
                display: grid;
                grid-template-columns: 64.655172413793103% 31.896551724137931%;
                grid-template-rows: auto auto auto;
                gap: 0 3.448275862068966%;
        }

        #suntory_contents #banner_dsh {
                width: 100%;
                grid-column: 1 / 2;
                grid-row: 1 / 4;
        }

        #suntory_contents #banner_dsh a {
                display: block;
                text-indent: -99999px;
                height: 0;
                padding-top: 47.2%;
                background: url(../img/top/banner_dsh_pc.webp) no-repeat 0 0;
                background-size: 100% auto;
        }

        #suntory_contents #banner_dsh a:hover {
                opacity: .92;
                filter: saturate(140%);
        }

        .no-webp #suntory_contents #banner_dsh a {
                background: url(../img/top/banner_dsh_pc.png) no-repeat 0 0;
                background-size: 100% auto;
        }

        #suntory_contents #banner_online_shop {
                width: 100%;
                grid-column: 2 / 3;
                grid-row: 1 / 2;
        }

        #suntory_contents #banner_online_shop a {
                display: block;
                height: 0;
                padding-top: 43.783783783783784%;
                background: url(../img/top/banner_online_shop.webp) no-repeat 0 0;
                background-size: 100% auto;
                position: relative;
                color: #fff;
                text-decoration: none;
        }

        #suntory_contents #banner_online_shop a:hover {
                opacity: .92;
                filter: saturate(140%);
        }


        .no-webp #suntory_contents #banner_online_shop a {
                background: url(../img/top/banner_online_shop.jpg) no-repeat 0 0;
                background-size: 100% auto;
        }

        #suntory_contents #banner_online_shop a .label {
                position: absolute;
                top: 8px;
                left: 15px;
                display: flex;
                align-items: flex-end;
        }

        #suntory_contents #banner_online_shop a .label p {
                font-size: 11px;
                margin-right: 15px;
        }

        #suntory_contents #banner_online_shop a .label h2 {
                font-size: 16px;
        }

        #suntory_contents #banner_apple_music {
                width: 100%;
                grid-column: 2 / 3;
                grid-row: 3 / 4;
        }

        #suntory_contents #banner_apple_music a {
                display: block;
                height: 0;
                text-indent: -99999px;
                padding-top: 43.783783783783784%;
                background: url(../img/top/banner_apple_music.webp) no-repeat 0 0;
                background-size: 100% auto;
        }

        #suntory_contents #banner_apple_music a:hover {
                opacity: .92;
                filter: saturate(140%);
        }

        .no-webp #suntory_contents #banner_apple_music a {
                background: url(../img/top/banner_apple_music.jpg) no-repeat 0 0;
                background-size: 100% auto;
        }

        /* ========================================================================
        [pc]pickup static
        ========================================================================= */
        #suntory_contents #pickup.static {
                margin: 0 auto 50px;
                width: 100%;
                max-width: 1160px;
                min-width: 960px;
        }

        #suntory_contents #pickup.static h2 {
                margin-bottom: 30px;
                font-size: 22px;
                font-weight: bold;
        }

        #suntory_contents #pickup.static .pickup_container {
                display: flex;
                justify-content: space-between;
        }

        #suntory_contents #pickup.static .pickup {
                width: 23.706896551724138%;
                box-shadow: 0px 0px 5px 0px rgba(187, 187, 187, 0.5);
                display: flex;
        }

        #suntory_contents #pickup.static .pickup a {
                display: flex;
                width: 100%;
                color: #222;
                position: relative;
                padding-top: 55.272727272727273%;
        }

        #suntory_contents #pickup.static .pickup figure {
                margin: 0;
                width: 100%;
                position: absolute;
                top: 0;
                left: 0;
        }

        #suntory_contents #pickup.static .pickup figure img {
                width: 100%;
                height: auto;
                vertical-align: bottom;
        }

        #suntory_contents #pickup.static a:hover figure img {
                opacity: .8;
                filter: saturate(150%);
        }

        #suntory_contents #pickup.static .pickup .text {
                margin: 0;
                width: 100%;
                display: flex;
                align-items: center;
                justify-content: center;
                text-align: center;
                font-size: 15px;
                line-height: 1.466666666666667;
                letter-spacing: -0.07em;
                padding: 25px 10px;
        }

        @media screen and (max-width: 1110px) {
                #suntory_contents #pickup.static .pickup .text {
                        font-size: 12px;
                }
        }

        @media screen and (max-width: 1010px) {
                #suntory_contents #pickup.static .pickup .text {
                        font-size: 11px;
                }
        }

        #suntory_contents #pickup.static .pickup .text br {
                display: block;
        }

        /* ========================================================================
        [pc]contents_menu
        ========================================================================= */
        #suntory_contents #contents_menu {
                margin: 0 auto 65px;
                width: 100%;
                max-width: 1160px;
                min-width: 960px;
        }

        #suntory_contents #contents_menu ul {
                list-style: none;
                display: flex;
                flex-wrap: wrap;
                justify-content: space-between;
        }

        #suntory_contents #contents_menu ul li {
                margin-bottom: 0;
        }

        #suntory_contents #contents_menu ul li:last-child {
                margin-bottom: 0;
        }

        #suntory_contents #contents_menu ul li a {
                text-decoration: none;
                color: #fff;
                display: block;
                width: 100%;
                height: auto;
                position: relative;
        }

        #suntory_contents #contents_menu a:hover {
                opacity: .8;
                filter: saturate(150%);
        }


        #suntory_contents #contents_menu .contents_menu_membersclub {
                margin-bottom: 25px;
                width: 48.96551724137931%;
        }

        #suntory_contents #contents_menu .contents_menu_facility {
                margin-bottom: 25px;
                width: 48.96551724137931%;
        }

        #suntory_contents #contents_menu .contents_menu_enjoy {
                width: 31.896551724137931%;
        }

        #suntory_contents #contents_menu .contents_menu_movie {
                width: 31.896551724137931%;
        }

        #suntory_contents #contents_menu .contents_menu_gourmet {
                width: 31.896551724137931%;
        }

        #suntory_contents #contents_menu .contents_menu_membersclub a {
                padding-top: 28.169014084507042%;
                background: url(../img/top/2020/img_contents_menu_members_club.webp) no-repeat 0 0;
                background-size: 100% auto;
        }

        .no-webp #suntory_contents #contents_menu .contents_menu_membersclub a {
                background: url(../img/top/2020/img_contents_menu_members_club.jpg) no-repeat 0 0;
                background-size: 100% auto;
        }

        #suntory_contents #contents_menu .contents_menu_facility a {
                padding-top: 28.169014084507042%;
                background: url(../img/top/2020/img_contents_menu_facility.webp) no-repeat 0 0;
                background-size: 100% auto;
        }

        .no-webp #suntory_contents #contents_menu .contents_menu_facility a {
                background: url(../img/top/2020/img_contents_menu_facility.jpg) no-repeat 0 0;
                background-size: 100% auto;
        }

        #suntory_contents #contents_menu .contents_menu_enjoy a {
                padding-top: 43.243243243243243%;
                background: url(../img/top/2020/img_contents_menu_enjoy.webp) no-repeat 0 0;
                background-size: 100% auto;
        }

        .no-webp #suntory_contents #contents_menu .contents_menu_enjoy a {
                background: url(../img/top/2020/img_contents_menu_enjoy.jpg) no-repeat 0 0;
                background-size: 100% auto;
        }

        #suntory_contents #contents_menu .contents_menu_movie a {
                padding-top: 43.243243243243243%;
                background: url(../img/top/2020/img_contents_menu_movie.webp) no-repeat 0 0;
                background-size: 100% auto;
        }

        .no-webp #suntory_contents #contents_menu .contents_menu_movie a {
                background: url(../img/top/2020/img_contents_menu_movie.jpg) no-repeat 0 0;
                background-size: 100% auto;
        }

        #suntory_contents #contents_menu .contents_menu_gourmet a {
                padding-top: 43.243243243243243%;
                background: url(../img/top/2020/img_contents_menu_gourmet.webp) no-repeat 0 0;
                background-size: 100% auto;
        }

        .no-webp #suntory_contents #contents_menu .contents_menu_gourmet a {
                background: url(../img/top/2020/img_contents_menu_gourmet.jpg) no-repeat 0 0;
                background-size: 100% auto;
        }

        #suntory_contents #contents_menu h3 {
                font-size: 18px;
                font-weight: bold;
                line-height: 1;
        }

        #suntory_contents #contents_menu p {
                font-size: 15px;
                line-height: 1;
        }

        @media screen and (max-width: 1110px) {
                #suntory_contents #contents_menu h3 {
                        font-size: 15px;
                }

                #suntory_contents #contents_menu p {
                        font-size: 13px;
                }
        }

        @media screen and (max-width: 1010px) {
                #suntory_contents #contents_menu h3 {
                        font-size: 14px;
                }

                #suntory_contents #contents_menu p {
                        font-size: 12px;
                }
        }

        #suntory_contents #contents_menu .contents_menu_membersclub h3 {
                position: absolute;
                top: 38.125%;
                left: 5.28169014084507%;
        }

        #suntory_contents #contents_menu .contents_menu_membersclub p {
                position: absolute;
                top: 66.875%;
                left: 10.915492957746479%;
        }

        #suntory_contents #contents_menu .contents_menu_facility h3 {
                font-weight: bold;
                position: absolute;
                top: 45%;
                left: 12.852112676056338%;
        }

        #suntory_contents #contents_menu .contents_menu_enjoy h3 {
                line-height: 1.444444444444444;
                font-weight: bold;
                position: absolute;
                top: 15.625%;
                left: 7.837837837837838%;
        }

        #suntory_contents #contents_menu .contents_menu_enjoy p {
                line-height: 1.333333333333333;
                position: absolute;

                top: 57.5%;
                left: 7.837837837837838%;
        }

        #suntory_contents #contents_menu .contents_menu_movie h3 {
                position: absolute;
                top: 44.375%;
                left: 20%;
        }

        #suntory_contents #contents_menu .contents_menu_gourmet h3 {
                position: absolute;
                top: 44.375%;
                left: 18.918918918918919%;
        }


        /* ========================================================================
        [pc]recommend solo
        ========================================================================= */
        #suntory_contents #recommend.solo {
                margin-bottom: 30px;
                width: 100%;
                border: 1px #dedede solid;
                background: none;
                box-shadow: 0px 0px 5px 0px rgba(187, 187, 187, .4);
        }

        #suntory_contents #recommend.solo .title_bar {
                background: #ffe7e7;
                padding: 25px 30px;
                display: flex;
                justify-content: space-between;
                align-items: center;
        }

        #suntory_contents #recommend.solo .title_bar h2 {
                width: 160px;
                margin: 0;
                font-size: 17px;
                font-weight: bold;
        }

        #suntory_contents #recommend.solo .title_bar .btn_list {
                width: 80px;
                height: 30px;
        }

        #suntory_contents #recommend.solo .title_bar .btn_list a {
                width: 80px;
                height: 30px;
                background: #881133;
                color: #fff;
                font-size: 12.5px;
                display: flex;
                align-items: center;
                padding-left: 20px;
                text-decoration: none;
                position: relative;
                box-sizing: border-box;
        }

        #suntory_contents #recommend.solo .title_bar .btn_list a:hover {
                background: #aa1144;
        }

        #suntory_contents #recommend.solo .title_bar .btn_list a::after {
                content: "";
                vertical-align: middle;
                position: absolute;
                top: calc(50% - 2.5px);
                right: 10px;
                width: 5px;
                height: 5px;
                margin: auto;
                border-top: 1px solid #fff;
                border-right: 1px solid #fff;
                -webkit-transform: rotate(45deg);
                transform: rotate(45deg);
        }

        #suntory_contents #recommend.solo .article a {
                display: block;
                margin: 30px;
                color: #222222;
                text-decoration: none;
        }

        #suntory_contents #recommend.solo .article a:hover figure img {
                opacity: .92;
                filter: saturate(140%);
        }

        #suntory_contents #recommend.solo .article figure {
                margin-bottom: 0;
        }

        #suntory_contents #recommend.solo .article figure img {
                width: 100%;
                height: auto;
                vertical-align: bottom;
        }

        #suntory_contents #recommend.solo .category {
                background: #eeeeee;
                margin: 0;
                padding: 20px 30px;
                font-size: 13px;
                position: relative;
        }

        #suntory_contents #recommend.solo .external .category::after {
                content: '';
                width: 11px;
                height: 11px;
                background: url(../img/icon_external.png) no-repeat 0 0;
                background-size: 11px auto;
                position: absolute;
                top: calc(50% - 6.5px);
                right: 20px;
        }

        #suntory_contents #recommend.solo .article h3 {
                font-size: 15px;
                font-weight: normal;
                margin: 25px 0 0;
                padding: 0;
        }




        /* ========================================================================
        [pc]news_container
        ========================================================================= */

        #suntory_contents #news_container {
                margin: 0 auto;
                padding: 0;
                width: 100%;
                max-width: 1160px;
                min-width: 960px;
                display: flex;
                justify-content: space-between;
        }

        #suntory_contents #news_topics {
                width: 64.6551724137931%;
        }

        #suntory_contents #news_topics .title_bar {
                margin-bottom: 35px;
                display: flex;
        }

        #suntory_contents #news_topics .title_bar h2 {
                font-size: 20px;
                font-weight: bold;
        }

        #suntory_contents #news_topics .title_bar .btn_list {
                margin-left: 40px;
        }

        #suntory_contents #news_topics .title_bar .btn_list a {
                width: 80px;
                height: 30px;
                background: #881133;
                color: #fff;
                font-size: 12.5px;
                display: flex;
                align-items: center;
                padding-left: 20px;
                text-decoration: none;
                position: relative;
                box-sizing: border-box;
        }

        #suntory_contents #news_topics .title_bar .btn_list a:hover {
                background: #aa1144;
        }

        #suntory_contents #news_topics .title_bar .btn_list a::after {
                content: "";
                vertical-align: middle;
                position: absolute;
                top: calc(50% - 2.5px);
                right: 10px;
                width: 5px;
                height: 5px;
                margin: auto;
                border-top: 1px solid #fff;
                border-right: 1px solid #fff;
                -webkit-transform: rotate(45deg);
                transform: rotate(45deg);
        }

        #suntory_contents .news_topics_table {
                margin-bottom: 30px;
                border-bottom: 1px #dedede solid;
        }

        #suntory_contents .news_topics_table th {
                font-size: 15px;
                line-height: 26px;
                font-weight: normal;
                padding: 20px 124px 20px 0;
                white-space: nowrap;
                text-align: left;
                vertical-align: top;
                border-top: 1px #dedede solid;
                position: relative;
        }

        #suntory_contents .news_topics_table th::after {
                width: 80px;
                height: 26px;
                display: flex;
                justify-content: center;
                align-items: center;
                font-size: 14px;
                color: #fff;
                position: absolute;
                top: 20px;
                right: 0;
                border-radius: 13px;
        }

        #suntory_contents .news_topics_table th.invite::after {
                content: '募集';
                background: #55bbcc;
        }

        #suntory_contents .news_topics_table th.host::after {
                content: '主催公演';
                background: #ee9966;
        }

        #suntory_contents .news_topics_table th.new::after {
                content: '新着';
                background: #88cc66;
        }

        #suntory_contents .news_topics_table th.notice::after {
                content: 'お知らせ';
                background: #ff6677;
        }

        #suntory_contents .news_topics_table td {
                border-top: 1px #dedede solid;
                padding: 20px 0 20px 20px;
                font-size: 15px;
                line-height: 26px;
        }

        #suntory_contents .news_topics_table td a {
                color: #222;
                position: relative;
        }

        #suntory_contents .news_topics_table td a:hover {
                color: #881133;
        }

        #suntory_contents .news_topics_table td a.external::after {
                content: '';
                display: inline-block;
                width: 15px;
                height: 10px;
                background: url(/suntoryhall/common2019/img/icon_external.png) no-repeat right center / 9px;
        }

        #suntory_contents #news_topics .extra {
                font-size: 14px;
                line-height: 1.5;
                color: #994455;
        }

        #suntory_contents .cotents_group {
                width: 31.8965517241379%;
        }

        /* ========================================================================
        [pc]academy
        ========================================================================= */
        #suntory_contents #academy {
                width: 100%;
                border: 1px #dedede solid;
                box-shadow: 0px 0px 5px 0px rgba(187, 187, 187, .4);
        }

        #suntory_contents #academy .title_bar {
                background: #e5f8e5;
                padding: 30px;
                display: flex;
                justify-content: space-between;
                flex-wrap: wrap;
        }

        #suntory_contents #academy .title_bar h2 {
                width: 100%;
                margin: 0;
                font-size: 17px;
                font-weight: bold;
        }

        #suntory_contents #academy .title_bar .category {
                margin-top: 10px;
                font-size: 16px;
                line-height: 30px;
                font-weight: bold;
        }

        #suntory_contents #academy .title_bar .btn_list {
                margin-top: 10px;
                width: 80px;
                height: 30px;
        }

        #suntory_contents #academy .title_bar .btn_list a {
                width: 80px;
                height: 30px;
                background: #881133;
                color: #fff;
                font-size: 12.5px;
                display: flex;
                align-items: center;
                padding-left: 20px;
                text-decoration: none;
                position: relative;
                box-sizing: border-box;
        }

        #suntory_contents #academy .title_bar .btn_list a:hover {
                background: #aa1144;
        }

        #suntory_contents #academy .title_bar .btn_list a::after {
                content: "";
                vertical-align: middle;
                position: absolute;
                top: calc(50% - 2.5px);
                right: 10px;
                width: 5px;
                height: 5px;
                margin: auto;
                border-top: 1px solid #fff;
                border-right: 1px solid #fff;
                -webkit-transform: rotate(45deg);
                transform: rotate(45deg);
        }

        #suntory_contents #academy .article a {
                display: block;
                margin: 30px;
                color: #222222;
                text-decoration: none;
        }

        #suntory_contents #academy .article a:hover figure img {
                opacity: .92;
                filter: saturate(140%);
        }

        #suntory_contents #academy .article figure {
                margin-bottom: 30px;
        }

        #suntory_contents #academy .article figure img {
                width: 100%;
                height: auto;
                vertical-align: bottom;
        }

        #suntory_contents #academy .article .date {
                font-size: 15px;
                margin-bottom: 20px;
        }

        #suntory_contents #academy .article h3 {
                font-size: 15px;
                font-weight: normal;
        }


}
