@charset "UTF-8";

/*------------------------------------------------------------
[SP]
------------------------------------------------------------ */
@media screen and (max-width:767px){

    /*------------------------------------------------------------
      [SP] lead
    ------------------------------------------------------------ */
    #suntory_contents .lead figure {
        margin-bottom: 8vw;
        height: 32vw;
        background: url(../img/event/event_img.webp) no-repeat center center;
        background-size: cover;
        width: 100%;
    }
    .no-webp #suntory_contents .lead figure {
        background: url(../img/event/event_img.jpg) no-repeat center center;
        background-size: cover;
    }
    #suntory_contents .lead h1 {
        margin-bottom: 8vw;
        font-size: 5.6vw;
        font-weight: normal;
        text-align: center;
    }
    #suntory_contents .lead p {
        margin: 0 8vw 12vw;
        font-size: 3.466666666666667vw;
        line-height: 1.8;
        text-align: left;
    }
    #suntory_contents .lead p br {
        display: none;
    }

    /*------------------------------------------------------------
      [SP] event_nav
    ------------------------------------------------------------ */
    #suntory_contents .event_nav {
        margin: 0 4vw 12vw;
    }
    #suntory_contents .event_nav.event_nav_top {
        margin: 8vw 4vw 12vw;
    }
    #suntory_contents .event_nav.event_nav_bottom {
        margin: 0 4vw 16vw;
    }
    #suntory_contents .event_nav ul {
        display: flex;
        justify-content: center;
    }
    #suntory_contents .event_nav li {
        list-style: none;
        font-size: 3.466666666666667vw;
        line-height: 1.5;
        border-right: 1px #666 solid;
        padding: 0 3.2vw;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    #suntory_contents .event_nav li:first-child {
        border-left: 1px #666 solid;
    }
    #suntory_contents .event_nav li a {
        color: #000;
        text-decoration: none;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
    }
    #suntory_contents .event_nav li.cr a {
        color: #A89170;
        font-weight: bold;
        pointer-events: none;
    }

    #suntory_contents .btn_select_calendar {
        margin: 0 auto 12vw;
        padding-right: 1.6vw;
        width: 48vw;
        height: 12vw;
        display: flex;
        align-items: center;
        justify-content: center;
        border: 1px #AB916C solid;
        color: #000;
        text-decoration: none;
        font-size: 3.733333333333333vw;
        position: relative;
        box-sizing: border-box;
    }
    #suntory_contents .btn_select_calendar::after {
    content: '';
    width: 3.2vw;
    height: 1.866666666666667vw;
    background: url(../img/arrow_down_large_gr.svg) no-repeat 0 0;
    background-size: 3.2vw auto;
    position: absolute;
    top: calc(50% - 0.933333333333333vw);
    right: 4vw;
    }


    /*------------------------------------------------------------
      [SP] contents_double
    ------------------------------------------------------------ */
    #suntory_contents .contents_double {
        margin: -16vw 4vw 4vw;
        padding-top: 16vw;
        display: flex;
        flex-direction: column;
    }

    /*------------------------------------------------------------
      main（PC）
    ------------------------------------------------------------ */
    #suntory_contents .contents_double .main {
        order: 2;
    }
    #suntory_contents .event_container {
        margin-bottom: 12vw;
    }
    #suntory_contents .event_container h2 {
        background: #E4DDD3;
        color: #000;
        padding: 4vw 12vw 4vw 4vw;
        font-size: 3.733333333333333vw;
        line-height: 1.8;
        font-weight: normal;
        box-sizing: border-box;
        cursor: pointer;
        position: relative;
    }
    #suntory_contents .event_container h2::after {
        content: '';
        width: 4vw;
        height: 2.4vw;
        background: url(../img/arrow_down_large_gr.svg) no-repeat 0 0;
        background-size: 4vw auto;
        position: absolute;
        top: calc(50% - 1.2vw);
        right: 4vw;
    }
    #suntory_contents .event_container.open h2::after {
        background: url(../img/arrow_up_large_gr.svg) no-repeat 0 0;
        background-size: 4vw auto;
    }
    #suntory_contents .event_container h2 a {
        text-decoration: none;
        color: #000;
    }
    #suntory_contents .event_data {
        border-bottom: 1px #ccc solid;
        padding: 8vw 0;
    }

    #suntory_contents .event_data_wrap {
        display: flex;
        flex-direction: column;
    }
    #suntory_contents .event_title {
        order: 1;
    }
    #suntory_contents .event_title h3 {
        margin-bottom: 5.6vw;
        font-size: 4.266666666666667vw;
        font-weight: normal;
        line-height: 1.8;
    }

    #suntory_contents .event_msg {
        margin-bottom: 5.6vw;
        font-size: 3.2vw;
        font-weight: bold;
        line-height: 1.8;
        color: #A89170;
    }

    #suntory_contents .event_icon {
        margin-bottom: 5.6vw;
        display: flex;
        flex-wrap: wrap;
    }
    #suntory_contents .event_icon li {
        list-style: none;
        font-size: 3.2vw;
        color: #666;
        background: #fff;
        padding: 1.6vw 4vw;
        border-radius: 1.066666666666667vw;
        border: 1px #666 solid;
        margin: 0 2.4vw 2.4vw 0;
    }
    #suntory_contents .text {
        order: 3;
    }
    #suntory_contents .text p {
        font-size: 3.466666666666667vw;
        line-height: 1.8;
    }

    #suntory_contents .event_img {
        margin: 0 auto 5.6vw;
        width: 58.666666666666667vw;
        text-align: center;
        order: 2;
    }
    #suntory_contents .event_img p {
        background: #fff;
    }
    #suntory_contents .event_img img {
        margin: 0 auto;
        width: auto;
        height: auto;
        max-width: 58.666666666666667vw;
        max-height: 48vw;
        vertical-align: bottom;
    }
    #suntory_contents .event_img figcaption {
        font-size: 3.2vw;
        line-height: 1.8;
        margin-top: 4vw;
        text-align: left;
    }

    #suntory_contents .event_data .btn_detail a {
        margin: 5.6vw auto 0;
        width: 48vw;
        height: 12vw;
        display: flex;
        align-items: center;
        justify-content: center;
        background: #A89170;
        color: #fff;
        font-size: 3.733333333333333vw;
        line-height: 1;
        text-decoration: none;
    }

    #suntory_contents .event_table_wrap {
        background: #F6F4F1;
        margin: 0 4vw;
        padding: 5.6vw 4vw;
        box-sizing: border-box;
    }
    #suntory_contents .event_table {
        width: 84vw;
    }
    #suntory_contents .event_table th {
        font-size: 3.466666666666667vw;
        font-weight: normal;
        border-bottom: 1px #ccc solid;
        text-align: left;
        vertical-align: middle;
        padding-bottom: 3.2vw;
    }
    #suntory_contents .event_table .label {
        display: flex;
        flex-wrap: wrap;
        width: 84vw;
    }
    #suntory_contents .event_table .data {
        display: flex;
        flex-wrap: wrap;
        width: 84vw;
        border-bottom: 1px #ccc solid;
        padding: 5.6vw 0;
    }

    #suntory_contents .event_table td {
        font-size: 3.466666666666667vw;
        text-align: left;
        vertical-align: middle;
    }

    #suntory_contents .event_table tr th:nth-child(1) {
        width: 29.333333333333333vw;
        width: 34.920634920634921%;
    }
    #suntory_contents .event_table tr th:nth-child(2) {
        width: 26.666666666666667vw;
        width: 31.746031746031746%;
    }
    #suntory_contents .event_table tr th:nth-child(3) {
        width: 13.333333333333333vw;
        width: 15.873015873015873%;
    }
    #suntory_contents .event_table tr th:nth-child(4) {
        width: 14.666666666666667vw;
        width: 17.46031746031746%;
    }
    #suntory_contents .event_table tr th:nth-child(5) {
        width: 0;
        display: none;
    }

    #suntory_contents .event_table tr td:nth-child(1) {
        width: 34.920634920634921%;
    }
    #suntory_contents .event_table tr td:nth-child(2) {
        width: 31.746031746031746%;
    }
    #suntory_contents .event_table tr td:nth-child(3) {
        width: 15.873015873015873%;
    }
    #suntory_contents .event_table tr td:nth-child(4) {
        width: 17.46031746031746%;
    }
    #suntory_contents .event_table tr td:nth-child(5) {
        width: 100%;
    }

    #suntory_contents .event_table td .btn_entry a {
        margin:0 auto;
    }
    #suntory_contents .event_table td .pre {
        margin:5.6vw auto 0;
        width: 32vw;
        height: 9.6vw;
        font-size: 3.733333333333333vw;
        display: flex;
        align-items: center;
        justify-content: center;
        background: #fff;
        text-align: center;
        color: #666;
    }

    #suntory_contents .event_table td .end {
        margin:5.6vw auto 0;
        width: 32vw;
        height: 9.6vw;
        font-size: 3.733333333333333vw;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #666;
    }

    #suntory_contents .btn_entry {
        margin: 5.6vw auto 0;
    }
     #suntory_contents .btn_entry a {
        margin: 0 auto;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 32vw;
        height: 9.6vw;
        font-size: 3.733333333333333vw;
        line-height: 1.8;
        background: #A89170;
        color: #fff;
        text-decoration: none;
    }
    #suntory_contents .btn_lottery {
        margin: 5.6vw auto 0;
    }
    #suntory_contents .btn_lottery a {
        margin: 0 auto;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 32vw;
        height: 9.6vw;
        font-size: 3.733333333333333vw;
        line-height: 1.8;
        background: #d0800a;
        color: #fff;
        text-decoration: none;
    }
    #suntory_contents .btn_lottery a em {
        font-weight: bold;
        font-style: normal;
    }

    #suntory_contents .another_entry_note {
        margin-top: 1.333333333333333vw;
        text-align: center;
        display: block;
    }

    /*------------------------------------------------------------
      [SP] contents_single
    ------------------------------------------------------------ */
    #suntory_contents .contents_single {
        margin: 0 auto 12vw;
    }

    /*------------------------------------------------------------
      [SP] event_container_single
    ------------------------------------------------------------ */
    #suntory_contents .event_container_single {
        margin-bottom: 12vw;
    }

    #suntory_contents .event_data_single {
        margin: 0 4vw 12vw;
        display: flex;
       flex-direction: column;
    }
    #suntory_contents .event_single_title {
       margin: 0;
       order: 1;
    }
    #suntory_contents .event_container_single h2 {
        background: #E4DDD3;
        font-size: 3.733333333333333vw;
        font-weight: normal;
        margin:0 4vw 8vw;
        padding: 4vw;
    }
    #suntory_contents .event_container_single h3 {
        margin-bottom: 5.6vw;
        font-size: 4.266666666666667vw;
        font-weight: normal;
        line-height: 1.5;
    }

    #suntory_contents .event_single_text {
       margin: 0 4vw;
        order: 3;
    }
    #suntory_contents .outline {
        list-style: none;
        margin-bottom: 30px;
    }
    #suntory_contents .outline li {
        font-size: 3.733333333333333vw;
        line-height: 1.8;
    }
    #suntory_contents .note {
        font-size: 3.733333333333333vw;
        line-height: 1.8;
    }
    #suntory_contents .btn_entry_text {
        text-align: center;
    }
    #suntory_contents .btn_entry_text a {
        margin: 0 auto;
        font-size: 3.733333333333333vw;
        line-height: 1.8;
        background: #fff;
        color: #000;
        text-decoration: none;
        padding: 4vw;
        box-sizing: border-box;
        border: 1px #A89170 solid;
        min-height: 12vw;
    }

    #suntory_contents .btn_event_list a {
        margin: 0 auto 12vw;
        font-size: 3.733333333333333vw;
        line-height: 1.8;
        background: #fff;
        color: #000;
        text-decoration: none;
        display: flex;
        align-items: center;
        justify-content: center;
        border: 1px #A89170 solid;
        width: 48vw;
        height: 12vw;
    }


    #suntory_contents .event_single_img {
        margin: 0 auto 5.6vw;
        width: 58.666666666666667vw;
        text-align: center;
        order: 2;
    }
    #suntory_contents .event_single_img p {
        background: #fff;
    }
    #suntory_contents .event_single_img img {
        margin: 0 auto;
        width: auto;
        height: auto;
        max-width: 58.666666666666667vw;
        max-height: 80vw;
        vertical-align: bottom;
    }
    #suntory_contents .event_single_img figcaption {
        font-size: 2.933333333333333vw;
        line-height: 1.8;
        margin-top: 4vw;
        text-align: left;
    }


    /*------------------------------------------------------------
      aside（SP）
    ------------------------------------------------------------ */
    #suntory_contents .contents_double .aside {
        order: 1;
        margin-bottom: 16vw;
    }

    #suntory_contents .btn_event_history a {
        margin: 8vw auto;
        width: 240px;
        height: 45px;
        display: flex;
        align-items: center;
        justify-content: center;
        border: 1px #A89170 solid;
        font-size: 14px;
        color: #000;
        text-decoration: none;
    }


    /*------------------------------------------------------------
      calendar（SP）
    ------------------------------------------------------------ */
    .btn_calendar_open {
        background: #AB916C url(/sun_common/contents_alias/sma/common2020/img/arrow_down_small_wh.svg) no-repeat right 4vw center;
        background-size: 4vw auto;
        color: #fff;
        font-size: 3.733333333333333vw;
        height: 14.4vw;
        display: flex;
        align-items: center;
        padding-left: 4vw;
        position: relative;
    }

    .btn_calendar_open.open {
        background: #AB916C url(/sun_common/contents_alias/sma/common2020/img/arrow_up_small_wh.svg) no-repeat right 4vw center;
        background-size: 4vw auto;
    }


    .btn_calendar_close {
        background: #BEAC94;
        font-size: 3.733333333333333vw;
        color: #fff;
        height: 12vw;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .btn_calendar_close span {
        background:url(/sun_common/contents_alias/sma/common2020/img/close_small_wh.svg) no-repeat right center;
        background-size: 3.2vw auto;
        padding-right: 5.333333333333333vw;
    }

    .calendar_parts {
        margin: 0;
        padding-bottom: 5.333333333333333vw;
        width: 92vw;
        background: #F6F4F1;
        box-sizing: border-box;
    }
    .calendar_parts.hide {
        opacity: 0;
        height: 0;
        overflow: hidden;
        z-index: -1;
    }

    .calendar_parts .inner {
        margin: 0 auto;
        padding: 5.333333333333333vw 5.333333333333333vw 0;
        text-align: center;
        box-sizing: border-box;
    }
    .calendar_note {
        margin-bottom: 4vw;
        font-size: 3.466666666666667vw;
    }
    .calendar_parts .inner h2.leed_ttl {
        font-size: 0;
        line-height: 0;
        padding: 0 0 4vw 0;
    }
    .calendar_parts .inner p.note {
        font-size: 0;
        line-height: 0;
    }
    .date_label{
        margin: 6px 0 0 -22px;
        float: left;
    }
    .no_btm{
        padding-bottom: 0px!important;
    }
    .calendar_parts .inner p.aside_btn,
    .calendar_parts .inner p.aside_btn_none {
        font-size:14px;
        margin: 0;
    }
    .calendar_parts .inner p.aside_btn {
    }
    .calendar_parts .inner p.aside_btn a {
        display: none;
        display: block;
        width: 48vw;
        background: #fff;
        color: #000;
        margin: 0 auto;
        padding: 2.666666666666667vw 0;
        border: 1px #A89170 solid;
        text-decoration: none;
    }
    .calendar_parts .inner p.aside_btn_none {
        display: none;
        display: block;
        width: 48vw;
        background: #fff;
        color: #ccc;
        margin: 0 auto;
        padding: 2.666666666666667vw 0;
        border: 1px #ccc solid;
    }
    #mySwipe {
        width: 80vw;
    }
    #mySwipe.swipe {
        overflow: hidden;
        visibility: hidden;
        position: relative;
    }
    #mySwipe.swipe .swipe-wrap {
        overflow: hidden;
        position: relative;
        //padding-bottom: 1px;
        margin-bottom: 5.333333333333333vw;
    }
    #mySwipe.swipe .swipe-wrap > table {
        float:left;
        position: relative;
        width: auto;
    }
     .calendar_parts .calendarTable caption {
        border: none;
        position:relative;
        font-size: 24px;
         font-weight: normal;
    }
    #mySwipe table caption button {
        font-size: .75em;
    }
    #mySwipe table caption button em {
        font-size: .75em;
        padding: 0 2px;
    }
    .calendar_parts .calendarTable caption {
    }
    #mySwipe table caption button.btn_prev,
    #mySwipe table caption button.btn_next {
        position:absolute;
        top: 2.666666666666667vw;
        background-repeat: no-repeat;
        border:none;
        cursor: pointer;
    }

    #mySwipe table caption button.btn_next,
    #mySwipe table caption button.btn_prev {
        top: 0;
        width: 3.2vw;
        height: 5.6vw;
        text-indent: 100%;
        white-space: nowrap;
        overflow: hidden;
        font-size: 0;
        line-height: 0;
        padding: 0;
    }
    #mySwipe table caption button.btn_next {
        right: 0;
        background:url(/sun_common/contents_alias/sma/common2020/img/arrow_right_large_gr.svg);
        background-size: 3.2vw 5.6vw;
    }
    #mySwipe table caption button.btn_prev {
        left: 0;
        background:url(/sun_common/contents_alias/sma/common2020/img/arrow_left_large_gr.svg);
        background-size: 3.2vw 5.6vw;
    }
    #mySwipe table:first-child .btn_prev,
    #mySwipe table:last-child .btn_next{
        display:none
    }
    .calendar_parts .calendarTable th,
    .calendar_parts .calendarTable td {
        border: none;
        /* padding: 5px 0; */
        height: auto;
        line-height: 1;
    }
    .calendar_parts .calendarTable td a {
        padding: 2.666666666666667vw 0;
    }
    .calendar_parts .calendarTable tr th:first-of-type,
    .calendar_parts .calendarTable tr th:last-of-type {
        border: none;
    }
    .calendar_parts .calendarTable tr td.emp {
        background: none;
    }
    .calendar_parts .calendarTable tr td.emp a,
    .calendar_parts .calendarTable tr td.emp a:hover {
        text-decoration: none;
    }
    .calendar_block .calendarTable tr td.no {
        padding: 0;
    }
    .calendar_block .calendarTable tr td,
    .calendar_block .calendarTable tr td a {
    /* padding: 0 5px; */
        height: 9.066666666666667vw;
        text-decoration: none;
    }
    #mySwipe.swipe .swipe-wrap table tbody th,
    #mySwipe.swipe .swipe-wrap table tbody td {
        border: 1px solid #f3f1ec;
    }

    .calendar_parts .calendarTable caption span{
        margin: 0 6px 0 0 ;
    }

    #mySwipe.swipe .swipe-wrap table thead {
        border-top: none;
    }
    .calendarTable tr td.no {
        color: #ccc;
    }
    .calendar_parts .calendarTable tr td.emp {
        background: #fff;
    }

    .calendar_parts .calendarTable tr td.emp:hover {
        background: #E4DDD3;
    }

    .calendar_parts .calendarTable tr td.no a:hover,
    .calendar_parts .calendarTable tr td.emp a:hover {
        background: none;
    }

    .calendar_parts .calendarTable tr td.emp a,
    .calendar_parts .calendarTable tr td.emp a:hover {
        text-decoration: none;
    }
    .calendarTable td{
        background: #fff;
    }
    .calendar_parts .calendarTable th {
        padding: 0;
    }
    .calendar_parts .calendarTable td {
        padding: 0;
        vertical-align: middle;
    }
    .calendar_parts .calendarTable td.no,
    .calendar_parts .calendarTable td.no_sem,
    .calendar_parts .calendarTable td.holiday {
        padding: 0;
        height: 14.4vw;
        height: 12vw;
    }
    .calendar_parts .calendarTable thead th,
    .bx-wrapper .calendarTable thead th {
        padding: 6px 5px 6px;
    }
    .calendar_parts .calendarTable td a {
        padding: 0 0;
        height: 14.4vw;
        height: 12vw;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    /* calendarTable */
    .calendarTable {
        width: auto;
        border-collapse: collapse;
        border-spacing: 0;
    }
    .calendarTable caption {
        color: #000;
        font-weight: bold;
        margin-bottom: 5.6vw;
        margin-bottom: 4vw;
    }
    .calendarTable tr th,
    .calendarTable tr td {
        text-align: center;
        color: #000;
        font-size: 3.466666666666667vw;
    }
    .calendarTable tr td {
        color: #000;
    }
    .calendarTable tr td.holiday {
        color: #999;
        line-height: 1.6;
    }
    .calendarTable tr td.holiday span {
        margin-top: 1.6vw;
        margin-top: 0.8vw;
    }
    .calendarTable tr td a {
        text-align: center;
        color: #000;
    }
    .calendarTable tr th {
        font-size: 3.466666666666667vw;
        font-weight: normal;
        color: #000;
    }
    .calendarTable tr th:first-of-type {
        border-left: 1px solid #F6F4F1;
    }
    .calendarTable tr th:last-of-type {
        border-right: 1px solid #F6F4F1;
    }

    .calendarTable tr td {
        border: 1px solid #F6F4F1;
        vertical-align: center;
        font-size: 3.466666666666667vw;
    }
    .calendarTable tr td span {
        display: block;
        line-height: 1;
        font-size: 3.466666666666667vw;
        font-weight: normal;
    }
    .calendarTable tr td.no span {
        color: #999;
    }
    .calendarTable tr td.emp a {
        color: #000;
        background: #EDE6DA;
    }
    .calendarTable tr td.emp_select {
        background: #BEAC94;
    }
    .calendarTable tr td.emp_select a {
        color: #000;
        text-decoration: none;
    }
    .calendarTable tr td.emp_select a:hover {
        text-decoration: none;
    }
    .calendarTable tr td.no {
        padding: 2.666666666666667vw 0;
    }
    .calendarTable tr td.no a {
        padding: 0 0;
    }
    /* a:hover */
    .calendarTable tr td a {
        display: block;
    }
    .calendarTable tr td a:hover {
        /* background-color: #ffd189; */
        text-decoration: none;
    }

    .ym{
        border-top: 1px solid #F6F4F1;
        border-left: 1px solid #F6F4F1;
        border-right: 1px solid #F6F4F1;
    }




}



/*------------------------------------------------------------
[PC]
------------------------------------------------------------ */
@media print, screen and (min-width:768px) {


    /*------------------------------------------------------------
      [PC] lead
    ------------------------------------------------------------ */
    #suntory_contents .lead figure {
        margin-bottom: 50px;
        height: 320px;
        background: url(../img/event/event_img.webp) no-repeat center center;
        background-size: cover;
        width: 100%;
    }
    .no-webp #suntory_contents .lead figure {
        background: url(../img/event/event_img.jpg) no-repeat center center;
        background-size: cover;
    }
    #suntory_contents .lead h1 {
        margin-bottom: 50px;
        font-size: 28px;
        font-weight: normal;
        text-align: center;
    }
    #suntory_contents .lead p {
        margin-bottom: 50px;
        font-size: 14px;
        line-height: 1.8;
        text-align: center;
    }

    /*------------------------------------------------------------
      [PC] event_nav
    ------------------------------------------------------------ */
    #suntory_contents .event_nav {
        margin-bottom: 80px;
    }
    #suntory_contents .event_nav ul {
        display: flex;
        justify-content: center;
    }
    #suntory_contents .event_nav li {
        list-style: none;
        font-size: 14px;
        border-right: 1px #666 solid;
        padding: 8px 30px;
    }
    #suntory_contents .event_nav li:first-child {
        border-left: 1px #666 solid;
    }

    #suntory_contents .event_nav li a {
        color: #000;
        padding-bottom: 3px;
        text-decoration: none;
    }
    #suntory_contents .event_nav li a:hover {
        border-bottom: 1px #666 solid;
    }
    #suntory_contents .event_nav li.cr a {
        color: #A89170;
        font-weight: bold;
        pointer-events: none;
		cursor: default;
    }
	#suntory_contents .event_nav li.cr a:hover {
		border-bottom: none;
	}


    /*------------------------------------------------------------
      [PC] contents_double
    ------------------------------------------------------------ */
    #suntory_contents .contents_double {
        margin: -70px auto 110px;
        padding-top: 70px;
        width: 1160px;
        display: flex;
        justify-content: space-between;
    }


    /*------------------------------------------------------------
      main（PC）
    ------------------------------------------------------------ */
    #suntory_contents .contents_double .main {
        width: 770px;
    }
    #suntory_contents .event_container {
        margin-top: -70px;
        padding-top: 70px;
    }
    #suntory_contents .event_container +  .event_container{
        margin-top: 70px;
    }
    #suntory_contents .event_container h2 {
        margin-bottom: 40px;
        width: 770px;
        background: #E4DDD3;
        color: #000;
        padding: 20px 82px 20px 30px;
        font-size: 16px;
        line-height: 1.8;
        font-weight: normal;
        box-sizing: border-box;
        cursor: pointer;
        position: relative;
    }
    #suntory_contents .event_container h2::after {
        content: '';
        width: 20px;
        height: 12px;
        background: url(../img/arrow_down_large_gr.svg) no-repeat 0 0;
        background-size: 20px auto;
        position: absolute;
        top: calc(50% - 6px);
        right: 30px;
    }
    #suntory_contents .event_container.open h2::after {
        background: url(../img/arrow_up_large_gr.svg) no-repeat 0 0;
        background-size: 20px auto;
    }
    #suntory_contents .event_container h2 a {
        text-decoration: none;
        color: #000;
    }

    #suntory_contents .event_data {
        border-bottom: 1px #ccc solid;
        padding: 40px 30px;
    }
    #suntory_contents .event_data:first-child {
        padding: 0 30px 40px;
    }
    #suntory_contents .event_data:nth-child(even) {
        background: #F6F4F1;
    }

    #suntory_contents .event_data_wrap {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 430px 40px 240px;
        grid-template-columns: 430px 240px;
        grid-gap: 0 40px;
    }
    #suntory_contents .event_title {
        width: 430px;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-column: 1 / 2;
        -ms-grid-row: 1;
        -ms-grid-row-span: 1;
        grid-row: 1 / 2;
    }

    #suntory_contents .event_title h3 {
        margin-bottom: 20px;
        font-size: 18px;
        font-weight: normal;
        line-height: 1.8;
    }

    #suntory_contents .event_msg {
        margin-bottom: 20px;
        font-size: 14px;
        font-weight: bold;
        line-height: 1.8;
        color: #A89170;
    }

    #suntory_contents .event_icon {
        margin-bottom: 20px;
        display: flex;
        flex-wrap: wrap;
    }
    #suntory_contents .event_icon li {
        list-style: none;
        font-size: 14px;
        color: #666;
        background: #fff;
        padding: 7px 15px;
        border-radius: 4px;
        border: 1px #666 solid;
        margin: 0 10px 10px 0;
    }

    #suntory_contents .text {
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-column: 1 / 2;
        -ms-grid-row: 2;
        -ms-grid-row-span: 1;
        grid-row: 2 / 3;
    }

    #suntory_contents .text p {
        width: 430px;
        font-size: 14px;
        line-height: 1.8;
    }


    #suntory_contents .event_img {
        width: 240px;
        text-align: center;
        -ms-grid-column: 2;
        -ms-grid-column-span: 1;
        grid-column: 2 / 3;
        -ms-grid-row: 1;
        -ms-grid-row-span: 2;
        grid-row: 1 / 3;
    }
    #suntory_contents .event_img p {
        background: #fff;
    }
    #suntory_contents .event_img img {
        margin: 0 auto;
        width: auto;
        height: auto;
        max-width: 240px;
        max-height: 195px;
        vertical-align: bottom;
    }
    #suntory_contents .event_img figcaption {
        font-size: 12px;
        line-height: 1.8;
        margin-top: 15px;
        text-align: left;
    }

    #suntory_contents .event_data .btn_detail a {
        margin: 30px auto 0;
        width: 200px;
        height: 45px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: #A89170;
        color: #fff;
        font-size: 14px;
        line-height: 1;
        text-decoration: none;
    }
    #suntory_contents .event_data .btn_detail a:hover {
        background: #BEAC94;
    }


    #suntory_contents .event_table_wrap {
        background: #F6F4F1;
        padding: 10px 50px 30px;
    }
    #suntory_contents .event_table {

    }
    #suntory_contents .event_table th {
        font-size: 16px;
        font-weight: normal;
        border-bottom: 1px #ccc solid;
        padding: 20px 0;
        text-align: left;
        vertical-align: middle;
    }
    #suntory_contents .event_table td {
        font-size: 14px;
        border-bottom: 1px #ccc solid;
        padding: 20px 0;
        text-align: left;
        vertical-align: middle;
    }

    #suntory_contents .event_table th:nth-child(1) {
        width: 180px;
    }
    #suntory_contents .event_table th:nth-child(2) {
        width: 190px;
    }
    #suntory_contents .event_table th:nth-child(3) {
        width: 130px;
    }
    #suntory_contents .event_table th:nth-child(4) {
        width: 210px;
    }
    #suntory_contents .event_table td:nth-child(5) {
        text-align: right;
    }
    #suntory_contents .event_table td .btn_entry a {
        margin:0 0 0 auto;
    }
    #suntory_contents .event_table td .pre {
        margin:0 0 0 auto;
        width: 150px;
        height: 36px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: #fff;
        text-align: center;
        color: #666;
    }
    #suntory_contents .event_table td .end {
        margin:0 0 0 auto;
        width: 150px;
        text-align: center;
        color: #666;
    }

    #suntory_contents .another_entry_note {
        margin-top: 5px;
        display: block;
    }

    /*------------------------------------------------------------
      [PC] contents_single
    ------------------------------------------------------------ */
    #suntory_contents .contents_single {
        margin: 0 auto 110px;
        width: 960px;
    }

    /*------------------------------------------------------------
      [PC] event_container_single
    ------------------------------------------------------------ */

    #suntory_contents .event_container_single {
        margin-bottom: 50px;
    }

    #suntory_contents .event_data_single {
        margin-bottom: 50px;
        display: -ms-grid;
        display: grid;
            -ms-grid-columns: 580px 340px;
            grid-template-columns: 580px 340px;
    }
    #suntory_contents .event_single_title {
        width: 580px;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-column: 1 / 2;
        -ms-grid-row: 1;
        -ms-grid-row-span: 1;
        grid-row: 1 / 2;
    }
    #suntory_contents .event_container_single h2 {
        background: #E4DDD3;
        font-size: 16px;
        font-weight: normal;
        margin-bottom: 50px;
        padding: 15px 30px;
    }
    #suntory_contents .event_container_single h3 {
        margin-bottom: 30px;
        font-size: 24px;
        font-weight: normal;
        line-height: 1.5;
    }
    #suntory_contents .event_single_text {
        width: 580px;
        -ms-grid-column: 1;
        -ms-grid-column-span: 1;
        grid-column: 1 / 2;
        -ms-grid-row: 2;
        -ms-grid-row-span: 1;
        grid-row: 2 / 3;
    }
    #suntory_contents .outline {
        list-style: none;
        margin-bottom: 30px;
    }
    #suntory_contents .outline li {
        font-size: 14px;
        line-height: 1.8;
    }
    #suntory_contents .note {
        font-size: 14px;
        line-height: 1.8;
    }
    #suntory_contents .btn_entry_text a {
        font-size: 14px;
        line-height: 1.8;
        background: #fff;
        color: #000;
        text-decoration: none;
        padding: 15px 15px;
        border: 1px #A89170 solid;
    }
    #suntory_contents .btn_entry_text a:hover {
        background: #A89170;
        color: #fff;
        border: 1px #A89170 solid;
    }
    #suntory_contents .btn_entry {
        margin: 0;
    }
    #suntory_contents .btn_entry a {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 150px;
        height: 36px;
        font-size: 14px;
        line-height: 1.8;
        background: #A89170;
        color: #fff;
        text-decoration: none;
    }
    #suntory_contents .btn_entry a:hover {
        background: #BEAC94;
    }
    #suntory_contents .btn_lottery {
        margin: 0;
    }
    #suntory_contents .btn_lottery a {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 150px;
        height: 36px;
        font-size: 14px;
        line-height: 1.8;
        background: #d0800a;
        color: #fff;
        text-decoration: none;
    }
    #suntory_contents .btn_lottery a em {
        font-weight: bold;
        font-style: normal;
    }
    #suntory_contents .btn_lottery a:hover {
        background: #dca046;
    }

    #suntory_contents .btn_event_list a {
        font-size: 14px;
        width: 180px;
        height: 45px;
        line-height: 1.8;
        background: #fff;
        color: #000;
        text-decoration: none;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
                -webkit-box-align: center;
                    -ms-flex-align: center;
                        align-items: center;
                -webkit-box-pack: center;
                    -ms-flex-pack: center;
                        justify-content: center;
        border: 1px #A89170 solid;
    }
    #suntory_contents .btn_event_list a:hover {
        background: #A89170;
        color: #fff;
        border: 1px #A89170 solid;
    }
    #suntory_contents .event_single_img {
        margin-left: 40px;
        width: 340px;
        text-align: center;
        -ms-grid-column: 2;
        -ms-grid-column-span: 1;
        grid-column: 2 / 3;
        -ms-grid-row: 1;
        -ms-grid-row-span: 2;
        grid-row: 1 / 3;
    }
    #suntory_contents .event_single_img p {
        background: #fff;
    }
    #suntory_contents .event_single_img img {
        margin: 0 auto;
        width: auto;
        height: auto;
        max-width: 340px;
        max-height: 400px;
        vertical-align: bottom;
    }
    #suntory_contents .event_single_img figcaption {
        font-size: 12px;
        line-height: 1.8;
        margin-top: 15px;
        text-align: left;
    }

    #suntory_contents .event_table {
        width: 100%;
    }

    /*------------------------------------------------------------
      aside（PC）
    ------------------------------------------------------------ */
    #suntory_contents .contents_double .aside {
        width: 350px;
    }

    #suntory_contents .btn_event_history a {
        margin: 0 auto;
        width: 240px;
        height: 45px;
        display: flex;
        align-items: center;
        justify-content: center;
        border: 1px #A89170 solid;
        font-size: 14px;
        color: #000;
        text-decoration: none;
    }
    #suntory_contents .btn_event_history a:hover {
        background: #BEAC94;
        border: 1px #BEAC94 solid;
        color: #fff;
    }




/*------------------------------------------------------------
  calendar（PC）
------------------------------------------------------------ */
.btn_calendar_open,
.btn_calendar_close {
    display: none;
    height: 0;
}
.calendar_parts {
	margin: 0 0 30px 0;
    padding-bottom: 30px;
    width: 340px;
	background: #F6F4F1;
    box-sizing: border-box;
}
.calendar_parts .inner {
	margin: 0 auto;
    padding: 25px 20px 0;
    text-align: center;
    box-sizing: border-box;
}

.calendar_note {
    margin-bottom: 15px;
    font-size: 14px;
}
.calendar_parts .inner h2.leed_ttl {
	font-size: 0;
	line-height: 0;
	/* padding: 0 0 15px 25px; */
	padding: 0 0 15px 0;
}
.calendar_parts .inner p.note {
	font-size: 0;
	line-height: 0;
}
.date_label{
	margin: 6px 0 0 -22px;
	float: left;
}
.no_btm{
	padding-bottom: 0px!important;
}
.calendar_parts .inner p.aside_btn,
.calendar_parts .inner p.aside_btn_none {
	font-size:14px;
	margin: 0;
}
.calendar_parts .inner p.aside_btn {
}
.calendar_parts .inner p.aside_btn a {
    display: none;
    display: block;
    width: 180px;
    background: #fff;
    color: #000;
    margin: 0 auto;
    padding: 10px 0;
    border: 1px #A89170 solid;
    text-decoration: none;
}
.calendar_parts .inner p.aside_btn a:hover {
    background: #BEAC94;
    color: #fff;
    border: 1px #A89170 solid;
}
.calendar_parts .inner p.aside_btn_none {
	display: none;
    display: block;
    width: 180px;
    background: #fff;
    color: #ccc;
    margin: 0 auto;
    padding: 10px 0;
    border: 1px #ccc solid;
}
#mySwipe {
	width: 300px;
}
#mySwipe.swipe {
	overflow: hidden;
	visibility: hidden;
	position: relative;
}
#mySwipe.swipe .swipe-wrap {
	overflow: hidden;
	position: relative;
	//padding-bottom: 1px;
    margin-bottom: 25px;
}
#mySwipe.swipe .swipe-wrap > table {
	float:left;
	position: relative;
	width: auto;
}

 .calendar_parts .calendarTable caption {
	border: none;
	position:relative;
	font-size: 24px;
     font-weight: normal;
}
#mySwipe table caption button {
	font-size: .75em;
}
#mySwipe table caption button em {
	font-size: .75em;
	padding: 0 2px;
}
.calendar_parts .calendarTable caption {
}
#mySwipe table caption button.btn_prev,
#mySwipe table caption button.btn_next {
	position:absolute;
	top: 10px;
	background-repeat: no-repeat;
	border:none;
	cursor: pointer;
}

#mySwipe table caption button.btn_next,
#mySwipe table caption button.btn_prev {
	top: 0;
	width: 12px;
	height: 22px;
	text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
	font-size: 0;
	line-height: 0;
	padding: 0;
}
#mySwipe table caption button.btn_next {
	right: 0;	background:url(/sun_common/contents_alias/sma/common2020/img/arrow_right_large_gr.svg);
    background-size: 12px 22px;
}
#mySwipe table caption button.btn_next:hover {
	right: 0;	background:url(/sun_common/contents_alias/sma/common2020/img/arrow_right_large_br.svg);
    background-size: 12px 22px;
}
#mySwipe table caption button.btn_prev {
	left: 0;
	background:url(/sun_common/contents_alias/sma/common2020/img/arrow_left_large_gr.svg);
    background-size: 12px 22px;
}
#mySwipe table caption button.btn_prev:hover {
	left: 0;
	background:url(/sun_common/contents_alias/sma/common2020/img/arrow_left_large_br.svg);
    background-size: 12px 22px;
}
#mySwipe table:first-child .btn_prev,
#mySwipe table:last-child .btn_next{
	display:none
}
.calendar_parts .calendarTable th,
.calendar_parts .calendarTable td {
	border: none;
	/* padding: 5px 0; */
	height: auto;
	line-height: 1;
}
.calendar_parts .calendarTable td a {
	padding: 5px 0;
}
.calendar_parts .calendarTable tr th:first-of-type,
.calendar_parts .calendarTable tr th:last-of-type {
	border: none;
}
.calendar_parts .calendarTable tr td.emp {
	background: none;
}
.calendar_parts .calendarTable tr td.emp a,
.calendar_parts .calendarTable tr td.emp a:hover {
	text-decoration: none;
}
.calendar_block .calendarTable tr td.no {
	padding: 0;
}
.calendar_block .calendarTable tr td,
.calendar_block .calendarTable tr td a {
/* padding: 0 5px; */
	height: 38px;
    text-decoration: none;
}
#mySwipe.swipe .swipe-wrap table tbody th,
#mySwipe.swipe .swipe-wrap table tbody td {
	border: 1px solid #f3f1ec;
}

.calendar_parts .calendarTable caption span{
	margin: 0 6px 0 0 ;
}

#mySwipe.swipe .swipe-wrap table thead {
	border-top: none;
}
.calendarTable tr td.no {
	color: #ccc;
}
.calendar_parts .calendarTable tr td.emp {
	background: #fff;
}

.calendar_parts .calendarTable tr td.emp:hover {
	background: #E4DDD3;
}

.calendar_parts .calendarTable tr td.no a:hover,
.calendar_parts .calendarTable tr td.emp a:hover {
	background: none;
}

.calendar_parts .calendarTable tr td.emp a,
.calendar_parts .calendarTable tr td.emp a:hover {
	text-decoration: none;
}
.calendarTable td{
	background: #fff;
}
.calendar_parts .calendarTable th {
	padding: 0;
}
.calendar_parts .calendarTable td {
	padding: 0;
    vertical-align: middle;
}
.calendar_parts .calendarTable td.no,
.calendar_parts .calendarTable td.no_sem,
.calendar_parts .calendarTable td.holiday {
	padding: 0;
    height: 54px;
}
.calendar_parts .calendarTable thead th,
.bx-wrapper .calendarTable thead th {
	padding: 6px 5px 6px;
}
.calendar_parts .calendarTable td a {
	padding: 0 0;
    height: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* calendarTable */
.calendarTable {
	width: auto;
	border-collapse: collapse;
	border-spacing: 0;
}
.calendarTable caption {
	color: #000;
	font-weight: bold;
    margin-bottom: 20px;
}
.calendarTable tr th,
.calendarTable tr td {
	text-align: center;
	color: #000;
    font-size: 12px;
}
.calendarTable tr td {
    color: #000;
}
.calendarTable tr td.holiday {
	color: #999;
	line-height: 1.6;
}
.calendarTable tr td.holiday span {
    margin-top: 5px;
}
.calendarTable tr td a {
	text-align: center;
	color: #000;
}
.calendarTable tr th {
	font-size: 12px;
    font-weight: normal;
	color: #000;
}
.calendarTable tr th:first-of-type {
	border-left: 1px solid #F6F4F1;
}
.calendarTable tr th:last-of-type {
	border-right: 1px solid #F6F4F1;
}

.calendarTable tr td {
	border: 1px solid #F6F4F1;
	vertical-align: center;
    font-size: 14px;
}
.calendarTable tr td span {
	display: block;
	line-height: 1;
	font-size: 14px;
	font-weight: normal;
}
.calendarTable tr td.no span {
	color: #999;
}
.calendarTable tr td.emp a {
	color: #000;
    background: #EBE6DE;
}
.calendarTable tr td.emp_select {
	background: #BEAC94;
}
.calendarTable tr td.emp_select:hover {
	background: #BEAC94;
}
.calendarTable tr td.emp_select a {
	color: #000;
    text-decoration: none;
}
.calendarTable tr td.emp_select a:hover {
	text-decoration: none;
}
.calendarTable tr td.no {
	padding: 5px 0;
}
.calendarTable tr td.no a {
	padding: 0 0;
}
/* a:hover */
.calendarTable tr td a {
	display: block;
}
.calendarTable tr td a:hover {
	/* background-color: #ffd189; */
	text-decoration: none;
}

.ym{
	border-top: 1px solid #F6F4F1;
	border-left: 1px solid #F6F4F1;
	border-right: 1px solid #F6F4F1;
}





}
