@charset "utf-8";

#suntory_contents  {
   font-family:"Arial", sans-serif;
   font-weight: normal;
}

#footer_pagetop_pc_icon,
#footer_pagetop_sp{display:none !important;}

/*------------------------------------------------------------
[SP]
------------------------------------------------------------ */
@media screen and (max-width:767px){

   #suntory_contents  {
      font-feature-settings : "palt";
   }
   #suntory_contents p {
      -webkit-text-size-adjust: 100%;
   }
   .sp_item {
      display: block;
   }
   .pc_item {
      display: none;
   }

    /*------------------------------------------------------------
    [SP] sma_header
    ------------------------------------------------------------ */
    #suntory_contents #sma_header {
       width: 100vw;
       height: 16vw;
       display: flex;
       align-items: center;
       justify-content: space-between;
       padding: 0 4vw;
       position: sticky;
       top: -16vw;
       box-sizing: border-box;
       background-color: #A89170;
       background: url(../webp/bg_header_sp.webp) no-repeat 0 0;
       background-size: 100vw 16vw;
       box-shadow: 0 .8vw 1.6vw rgba(0,0,0,.1);
       transition: all 1s ease;
    }
    .no-webp #suntory_contents #sma_header {
       background: url(../jpg/bg_header_sp.jpg) no-repeat 0 0;
       background-size: 100vw 16vw;
    }
    #suntory_contents.header_static #sma_header {
       position: static;
       transition: all 1s ease;
    }
    #suntory_contents.top #sma_header {
       position: fixed;
       top: -16vw;
       background: rgba(255,255,255,.95);
       transition: all 1s ease;
    }
    #suntory_contents.header_sticky #sma_header {
       background: rgba(255,255,255,.95);
       position: fixed;
       top: -16vw;
       transition: all 1s ease;
    }
    #suntory_contents.header_sticky.header_sticky_active #sma_header {
       background: rgba(255,255,255,.95);
       position: fixed;
       top: 0;
       left: 0;
       z-index: 1000;
       transition: all 1s ease;
    }
    #suntory_contents.top.header_sticky.header_sticky_active #sma_header {
       top: 0;
       transition: all 1s ease;
    }
    #suntory_contents #sma_header.sma_header_simple {
       position: static;
       box-shadow: none;
    }
    #suntory_contents #sma_header .logo a {
       display: block;
       width:  45.333333333333333vw;
       height: 8vw;
       background: url(../svg/logo_letter_white.svg) no-repeat 0 0;
       background-size: 45.333333333333333vw auto;
       text-indent: -9999px;
    }
    #suntory_contents.header_sticky #sma_header .logo a {
       width:  45.333333333333333vw;
       height: 8vw;
       background: url(../svg/logo_letter_gr.svg) no-repeat 0 0;
       background-size: 45.333333333333333vw auto;
    }
    #suntory_contents #sma_header.sma_header_simple .logo a {
       display: block;
       width:  45.333333333333333vw;
       height: 8vw;
       background: url(../svg/logo_letter_white.svg) no-repeat 0 0;
       background-size: 45.333333333333333vw auto;
       text-indent: -9999px;
    }

    #suntory_contents #sma_header .function {
       display: flex;
       align-items: center;
       height: 100%;
    }
    #suntory_contents #sma_header .link {
       list-style: none;
       height: 100%;
       display: flex;
       align-items: center;
    }
    #suntory_contents #sma_header .link li {
       list-style: none;
    }
    #suntory_contents #sma_header .btn_calendar {
       margin-right: 8vw;
       width: 12.8vw;
       height: 9.6vw;
       background: url(../svg/icon_head_calendar_wh.svg) no-repeat 0 100%;
       background-size: 12.8vw auto;
       display: block;
       text-indent: -9999px;
       cursor: pointer;
       display: none;
    }
    #suntory_contents #sma_header .calendar {
       margin-right: 8vw;
       width: 12.8vw;
       height: 9.6vw;
       background: url(../svg/icon_head_calendar_wh.svg) no-repeat 0 100%;
       background-size: 12.8vw auto;
       display: block;
       text-indent: -9999px;
       cursor: pointer;
       display: none;
    }
    #suntory_contents #sma_header .ticket a {
        display: inline-block;
        width: 20.8vw;
        margin-right: 4.8vw;
        line-height: 1.2;
        text-align: center;
       font-size: 3.466666666666667vw;
       color: #fff;
       text-decoration: none;
    }
        #suntory_contents #sma_header .ticket a::after {
        content:'';
        display: inline-block;
        width: 3.466666666666667vw;
        height: 3.466666666666667vw;
        background: url(../svg/icon_external_wh.svg) no-repeat right bottom;
        background-size: 2.4vw auto;
    }
    #suntory_contents.header_sticky #sma_header .ticket a {
       color: #000;
    }
    #suntory_contents.header_sticky #sma_header .ticket a::after {
        background: url(../svg/icon_external_bk.svg) no-repeat right bottom;
        background-size: 2.4vw auto;
    }
    #suntory_contents #sma_header .access a {
       width: 10.666666666666667vw;
       height: 9.6vw;
       background: url(../icon_head_access_wh.html) no-repeat 0 100%;
       background-size: 10.666666666666667vw auto;
       display: block;
       text-indent: -9999px;
       display: none;
    }
    #suntory_contents #sma_header .language {
       display: none;
    }
    #suntory_contents #sma_header .btn_menu {
       width: 8vw;
       height: 5.6vw;
       background:url(../svg/icon_menu_wh.svg) no-repeat 0 0;
       background-size: 8vw 5.6vw;
       text-indent: -9999px;
       cursor: pointer;
    }
    #suntory_contents.header_sticky #sma_header .btn_menu {
       background:url(../svg/icon_menu_bk.svg) no-repeat 0 0;
       background-size: 8vw 5.6vw;
    }


    /*------------------------------------------------------------
    [SP] trigger
    ------------------------------------------------------------ */
    #suntory_contents #trigger {
       width: 100%;
       height: 1px;
       position: absolute;
       top: 15vh;
       left: 0;
    }

/*
    #suntory_contents.top #trigger {
        top: 78vh;
    }
    */

    /*------------------------------------------------------------
    [SP] sma_menu
    ------------------------------------------------------------ */
    #suntory_contents #sma_menu {
       position: fixed;
       top: 0;
       left: 0;
       width: 100vw;
       height: auto;
       background: rgba(255,255,255,.95);
       background: url(../webp/menu_open_bg.webp) no-repeat center center;
       background-size: cover;
       z-index: 9999;
       display: none;
    }
    .no-webp #suntory_contents #sma_menu {
       background: url(../jpg/menu_open_bg.jpg) no-repeat 0 0;
       background-size: cover;
    }
    #suntory_contents #sma_menu .inner {
       margin: 0 auto;
       width: auto;
       height: 100vh;
       overflow-y: auto;
       position: relative;
       padding: 0;
       display: flex;
       flex-direction: column;

    }
    #suntory_contents #sma_menu .btn_close {
       width: 6.4vw;
       height:8vw;
       background: url(../svg/close_wh.svg) no-repeat 0 center;
       background-size: 6.4vw auto;
       position: absolute;
       top: 4vw;
       right: 5.6vw;
       text-indent: -9999px;
       cursor: pointer;
       z-index: 1000;
    }
    #suntory_contents #sma_menu .sma_menu_head {
       margin: 4vw auto 8.8vw 4vw;
       width: auto;
       order: 1;
    }
    #suntory_contents #sma_menu .sma_menu_head h1 {
       height: 0;
       text-indent: -9999px;
    }
    #suntory_contents #sma_menu .sma_menu_head a {
       text-decoration: none;
    }
    #suntory_contents #sma_menu .sma_menu_head a .back {
       margin: 0;
       width: 45.333333333333333vw;
       background: url(../svg/logo_letter_white.svg) no-repeat 0 0;
       background-size: 45.333333333333333vw auto;
       padding-top: 10.133333333333333vw;
       color: #fff;
       font-size: 2.666666666666667vw;
       line-height: 1;
       display: block;
       text-decoration: none;
    }

    #suntory_contents #sma_menu .menu_btn {
       margin: 0 auto 8vw;
        width: 72vw;
       order: 2;
    }
    #suntory_contents #sma_menu .menu_btn ul {
       box-sizing: border-box;
        padding: 0;
       margin: 0;
       display: flex;
       justify-content: space-between;
    }
    #suntory_contents #sma_menu .menu_btn ul li {
       list-style: none;
       margin: 0;
       font-size: 3.73333333vw;
       line-height: 1.2;
    }
    #suntory_contents #sma_menu .menu_btn .menu_btn_calendar a,
    #suntory_contents #sma_menu .menu_btn .menu_btn_access a {
        width: 16vw;
    }
    #suntory_contents #sma_menu .menu_btn .menu_btn_ticket a {
        width: 24vw;
    }
    #suntory_contents #sma_menu .menu_btn ul li a {
       display: block;
       position: relative;
       color: #fff;
       text-decoration: none;
       text-align: center;
    }
    #suntory_contents #sma_menu .menu_btn ul li a::before {
       content: '';
       width: 5.6vw;
       height: 5.6vw;
       display: block;
       margin: 0 auto 1.6vw;
    }
    #suntory_contents #sma_menu .menu_btn ul li.menu_btn_calendar a::before {
       background: url(../svg/icon_calendar_wh.svg) no-repeat 0 center;
       background-size: 5.6vw auto;
    }
    #suntory_contents #sma_menu .menu_btn ul li.menu_btn_ticket a::before {
       background: url(../svg/icon_ticket_wh.svg) no-repeat center bottom 0.26666667vw;
        background-size: 5.6vw auto;
    }
    #suntory_contents #sma_menu .menu_btn ul li.menu_btn_access a::before {
       background: url(../svg/icon_access_wh.svg) no-repeat right 0.4vw center;
       background-size: auto 5.6vw;
    }

    #suntory_contents #sma_menu .menu_btn ul li.menu_btn_ticket a[target="_blank"]::after {
       content:'';
       display: inline-block;
       width: 4vw;
       height: 4vw;
       background: url(../svg/icon_external_wh.svg) no-repeat right bottom;
       background-size: 2.4vw auto;
    }

    #suntory_contents #sma_menu .sma_menu_link {
       order: 4;
       position: relative;
    }
    #suntory_contents #sma_menu .link {
       display: flex;
       align-items: flex-end;
       justify-content: flex-end;
       width:100%;
       height: 5.866666666666667vw;
       box-sizing: border-box;
       position: absolute;
       top: -14.133333333333333vw;
       left: 0;
    }
    #suntory_contents #sma_menu .link .language {
       display: flex;
       align-items: flex-start;
       margin: 0 5.6vw 0.8vw;
    }
    #suntory_contents #sma_menu .link .language li {
       list-style: none;
       font-family: 'Lato', sans-serif;
       letter-spacing: 0.04em;
       font-size: 4.266666666666667vw;
       color: #fff;
    }
    #suntory_contents #sma_menu .link .language li.current {
       position: relative;
    }
    #suntory_contents #sma_menu .link .language li.current::after {
       content: '';
       display: block;
       width: 5.866666666666667vw;
       height: 0.533333333333333vw;
       background: #fff;
       position: absolute;
       bottom: -1.6vw;
       left: calc(50% - 2.933333333333333vw);
    }
    #suntory_contents #sma_menu .link .language li a {
       margin-right: 5.333333333333333vw;
       color: #fff;
       text-decoration: none;
       position: relative;
    }
    #suntory_contents #sma_menu .link .language li a::before {
       content: '';
       width: 1px;
       height: 3.733333333333333vw;
       background: #fff;
       position: absolute;
       top: calc(50% - 1.866666666666667vw);
       right: -2.4vw;
    }

    #suntory_contents #sma_menu .sma_menu_body {
       border-top: 1px #fff solid;
       margin: 0 5.6vw;
       padding: 0;
       box-sizing: border-box;

       order: 3;
    }
    #suntory_contents #sma_menu .sma_menu_body a {
       text-decoration: none;
       color: #fff;
    }
    #suntory_contents #sma_menu .sma_menu_body li {
       margin-bottom: 4vw;
       list-style: none;
    }
    #suntory_contents #sma_menu .sma_menu_body .primary {
       margin-bottom: 22.4vw;
    }
    #suntory_contents #sma_menu .sma_menu_body .primary dl {
       border-bottom: 1px #fff solid;
    }
    #suntory_contents #sma_menu .sma_menu_body .primary dt {
       font-size: 4vw;
       padding: 6.4vw 0;
       background: url(../svg/arrow_down_large_wh.svg) no-repeat right 2.666666666666667vw center;
       background-size: 4.8vw auto;
       color: #fff;
    }
    #suntory_contents #sma_menu .sma_menu_body .primary dt.open {
       background: url(../svg/arrow_up_large_wh.svg) no-repeat right 2.666666666666667vw center;
       background-size: 4.8vw auto;
    }
    #suntory_contents #sma_menu .sma_menu_body .primary dd {
       font-size: 3.466666666666667vw;
       display: none;
    }
    #suntory_contents #sma_menu .sma_menu_body .primary dd ul {
       margin: 0 0 0 8vw;
    }
    #suntory_contents #sma_menu .sma_menu_body .primary dd li {
       margin-bottom: 8vw;
    }
    #suntory_contents #sma_menu .sma_menu_body .secondary {
       display: none;
    }
    #suntory_contents #sma_menu .sma_menu_foot {
       margin: 0 5.6vw;

       order: 5;
    }
    #suntory_contents #sma_menu .sma_menu_foot .extra {
       display: flex;
       flex-wrap: wrap;
       margin-bottom: 4vw;
    }
    #suntory_contents #sma_menu .sma_menu_foot .extra li {
       list-style: none;
       font-size: 3.733333333333333vw;
       width: 50%;
       margin-bottom: 8vw;
    }
    #suntory_contents #sma_menu .sma_menu_foot .extra li:last-child {
       width: 100%;
    }
    #suntory_contents #sma_menu .sma_menu_foot .extra li a {
       text-decoration: none;
       color: #fff;
       position: relative;
    }
    #suntory_contents #sma_menu .sma_menu_foot .extra li a[target="_blank"]::after {
       content: '';
       width: 2.666666666666667vw;
       height: 2.666666666666667vw;
       background: url(../svg/icon_external_wh.svg) no-repeat 0 0;
       background-size: 2.666666666666667vw auto;
       position: absolute;
       top: calc(50% - 1.333333333333333vw);
       right: -4.8vw;
    }

    #suntory_contents #sma_menu .btn_bottom {
       margin-bottom: 40vw;
       text-align: center;

       order: 6;
    }
    #suntory_contents #sma_menu .btn_close_bottom {
       display: inline-block;
       position: relative;
       color: #fff;
       font-size: 3.733333333333333vw;
       text-align: center;
       padding-right: 6.133333333333333vw;
       cursor: pointer;
    }
    #suntory_contents #sma_menu .btn_close_bottom::after {
       content: '';
       width: 3.2vw;
       height:3.2vw;
       background: url(../svg/close_small_wh.svg) no-repeat 0 center;
       background-size: 3.2vw auto;
       position: absolute;
       top: 0;
       right:0;
       text-indent: -9999px;
       cursor: pointer;
       z-index: 1000;
    }


    /*------------------------------------------------------------
    [SP] sma_footer
    ------------------------------------------------------------ */
    #suntory_contents #sma_footer {
       border-top: 1px #ccc solid;
       padding: 8vw 0 17.6vw;
       position: relative;
    }
    #suntory_contents #sma_footer.sma_footer_simple {
       padding: 8vw 0 20vw;
    }
    #suntory_contents #sma_footer .btn_page_top {
       position: fixed;
       bottom: 4vw;
       right: 4vw;
       z-index: 100;
       display: none;
    }
    #suntory_contents #sma_footer .btn_page_top a {
       width: 14.4vw;
       height: 14.4vw;
       display: block;
       text-indent: -9999px;
       background: rgba(168,145,112,.5)url(../svg/arrow_right_large_wh.svg) no-repeat center center;
       background-size: 3.2vw auto;
       border-radius: 50%;
       transform: rotate(-90deg);
    }
    #suntory_contents #sma_footer .sma_footer_head {
       margin: 0 5.6vw;
       padding-bottom: 8vw;
       border-bottom: 1px #ccc solid;
       box-sizing: border-box;
       display: flex;
       justify-content: center;
       align-items: flex-start;
       flex-direction: column;
    }
    #suntory_contents #sma_footer.sma_footer_simple .sma_footer_head {
       border-bottom: none;
    }
    #suntory_contents #sma_footer .sma_footer_head .label a {
       display: block;
       text-decoration: none;
    }
    #suntory_contents #sma_footer .sma_footer_head h1 {
       margin: 0 0 2.4vw;
       width: 64vw;
       height: 9.6vw;
       background: url(../svg/logo-4.svg) no-repeat 0 center;
       background-size: auto 9.6vw;
       text-indent: -9999px;
    }
    #suntory_contents #sma_footer .sma_footer_head .back {
       text-decoration: none;
       font-size: 2.666666666666667vw;
       color: #666;
       text-align: left;
    }
    #suntory_contents #sma_footer .sma_footer_head .menu_btn {
       margin: 8vw auto 0;
        width: 72vw;
    }
    #suntory_contents #sma_footer .sma_footer_head .menu_btn ul {
        box-sizing: border-box;
        padding: 0;
        margin: 0;
       display: flex;
       justify-content: space-between;
    }
    #suntory_contents #sma_footer .sma_footer_head .menu_btn ul li {
       list-style: none;
       margin: 0;
       font-size: 3.73333333vw;
        line-height: 1.2;
    }
    #suntory_contents #sma_footer .sma_footer_head .menu_btn_calendar a,
    #suntory_contents #sma_footer .sma_footer_head .menu_btn_access a {
        width: 16vw;
    }
    #suntory_contents #sma_footer .sma_footer_head .menu_btn_ticket a {
        width: 24vw;
    }
    #suntory_contents #sma_footer .sma_footer_head .menu_btn ul li a {
       display: block;
       position: relative;
       color: #000;
       text-decoration: none;
        text-align: center;
    }
    #suntory_contents #sma_footer .sma_footer_head .menu_btn ul li a::before {
       content: '';
        width: 5.6vw;
        height: 5.6vw;
        display: block;
        margin: 0 auto 1.6vw;
    }
    #suntory_contents #sma_footer .sma_footer_head .menu_btn_calendar a::before {
       background: url(../svg/icon_calendar_bk.svg) no-repeat 0 center;
        background-size: 5.6vw auto;
    }
    #suntory_contents #sma_footer .sma_footer_head .menu_btn_ticket a::before {
       background: url(../svg/icon_ticket_bk.svg) no-repeat center bottom 0.26666667vw;
        background-size: 5.6vw auto;
    }
    #suntory_contents #sma_footer .sma_footer_head .menu_btn_access a::before {
       background: url(../svg/icon_access_bk.svg) no-repeat right 0.4vw center;
        background-size: auto 5.6vw;
    }
    #suntory_contents #sma_footer .sma_footer_head .menu_btn_ticket a[target="_blank"]::after {
        content:'';
        display: inline-block;
        width: 4vw;
        height: 4vw;
       background: url(../svg/icon_external_gr.svg) no-repeat right bottom;
        background-size: 2.4vw auto;
    }
    #suntory_contents #sma_footer .sma_footer_head .link {
       display: flex;
       align-items: flex-end;
       justify-content: flex-end;
       width:100%;
       height: 5.866666666666667vw;
       box-sizing: border-box;
       position: absolute;
       bottom:77.6vw;
       left: 0;
    }
    #suntory_contents #sma_footer .sma_footer_head .language {
       display: flex;
       align-items: flex-start;
       margin: 0 5.6vw 0.8vw;
    }
    #suntory_contents #sma_footer .sma_footer_head .language li {
       list-style: none;
       font-family: 'Lato', sans-serif;
       letter-spacing: 0.04em;
       font-size: 4.266666666666667vw;
    }
    #suntory_contents #sma_footer .sma_footer_head .language li.current {
       position: relative;
    }
    #suntory_contents #sma_footer .sma_footer_head .language li.current::after {
       content: '';
       display: block;
       width: 5.866666666666667vw;
       height: 0.533333333333333vw;
       background: #000;
       position: absolute;
       bottom: -1.6vw;
       left: calc(50% - 2.933333333333333vw);
    }
    #suntory_contents #sma_footer .sma_footer_head .language li a {
       margin-right: 5.333333333333333vw;
       color: #000;
       text-decoration: none;
       position: relative;
    }
    #suntory_contents #sma_footer .sma_footer_head .language li a::before {
       content: '';
       width: 1px;
       height: 3.733333333333333vw;
       background: #666;
       position: absolute;
       top: calc(50% - 1.866666666666667vw);
       right: -2.4vw;
    }

    #suntory_contents #sma_footer .sma_footer_body {
       margin: 0 5.6vw;
    }
    #suntory_contents #sma_footer .sma_footer_body a {
       text-decoration: none;
       color: #000;
    }
    #suntory_contents #sma_footer .sma_footer_body li {
       list-style: none;
    }
    #suntory_contents #sma_footer .sma_footer_body .primary {
       margin-bottom: 22.4vw;
    }
    #suntory_contents #sma_footer .sma_footer_body .primary dl {
       border-bottom: 1px #ccc solid;
    }
    #suntory_contents #sma_footer .sma_footer_body .primary dt {
       font-size: 4vw;
       padding: 6.4vw 0;
       background: url(../svg/arrow_down_large_gr.svg) no-repeat right 2.666666666666667vw center;
       background-size: 4.8vw auto;
    }
    #suntory_contents #sma_footer .sma_footer_body .primary dt.open {
       background: url(../svg/arrow_up_large_gr.svg) no-repeat right 2.666666666666667vw center;
       background-size: 4.8vw auto;
    }
    #suntory_contents #sma_footer .sma_footer_body .primary dd {
       font-size: 3.466666666666667vw;
       display: none;
    }
    #suntory_contents #sma_footer .sma_footer_body .primary dd ul {
       margin: 0 0 0 8vw;
    }
    #suntory_contents #sma_footer .sma_footer_body .primary dd li {
       margin-bottom: 8vw;
    }
    #suntory_contents #sma_footer .sma_footer_body .secondary {
       display: none;
    }

    #suntory_contents #sma_footer .sma_footer_foot {
       margin: 0 5.6vw;
       text-align: left;
    }
    #suntory_contents #sma_footer .sma_footer_foot .extra {
       display: flex;
       flex-wrap: wrap;
       margin-bottom: 2.666666666666667vw;
    }
    #suntory_contents #sma_footer .sma_footer_foot .extra li {
       list-style: none;
       font-size: 3.733333333333333vw;
       width: 50%;
       margin-bottom: 8vw;
    }
    #suntory_contents #sma_footer .sma_footer_foot .extra li:last-child {
       width: 100%;
    }
    #suntory_contents #sma_footer .sma_footer_foot .extra li a {
       text-decoration: none;
       color: #000;
       position: relative;
    }
    #suntory_contents #sma_footer .sma_footer_foot .extra li a[target="_blank"]::after {
       content: '';
       width: 2.666666666666667vw;
       height: 2.666666666666667vw;
       background: url(../svg/icon_external_gr.svg) no-repeat 0 0;
       background-size: 2.666666666666667vw auto;
       position: absolute;
       top: calc(50% - 1.333333333333333vw);
       right: -4.8vw;
    }

    #suntory_contents #sma_footer .sma_footer_foot .note {
       font-size: 3.2vw;
       line-height: 1.5;
       text-align: center;
       color: #666;
       margin: 0 auto;
       width: 92vw;
       position: absolute;
       bottom: 8vw;
       left: 4vw;
    }

    /*------------------------------------------------------------
    [SP] calendar
    ------------------------------------------------------------ */
    #suntory_contents #calendar {
       background: #fff;
       width: 100vw;
       height: 100vh;
       overflow-y: auto;
       position: fixed;
       top: 0;
       left: 0;
       z-index: 1001;
       display: none;
    }
    #suntory_contents #calendar .logo {
       width: 45.122666666666667vw;
       height: 8vw;
       background: url(../svg/logo_letter_gr.svg) no-repeat 0 0;
       background-size: 45.122666666666667vw auto;
       position: absolute;
       top: 4vw;
       left: 4vw;
       z-index: 9999;
    }

    #suntory_contents #calendar .btn_close_calendar {
       width: 6.4vw;
       height:8vw;
       background: url(../svg/close_gr.svg) no-repeat 0 center;
       background-size: 6.4vw auto;
       position: absolute;
       top: 4vw;
       right: 5.6vw;
       cursor: pointer;
       z-index: 9999;
    }
    #suntory_contents #calendar .calendar_wrap {
       opacity: 0;
       transition: all .5s ease;
    }
    #suntory_contents #calendar.active .calendar_wrap {
       opacity: 1;
    }
    #suntory_contents #calendar_container {
       margin: 0 4vw 20vw;
       width: auto;
       height: auto;
       box-sizing: border-box;
       padding: 0;
       background: #fff;
       position: relative;
       z-index: 1003;
    }
    #suntory_contents #calendar .calendar {
       width: 100%;
       height: auto;
       background: #fff;
       position: relative;
    }

    #suntory_contents #calendar .calendar .emergency_note_hook {
       position: relative;
    }
    #suntory_contents #calendar .calendar .emergency_note {
       width: auto;
       height: 9.6vw;
       box-sizing: border-box;
       background: rgba(255,0,0,.7);
       color: #fff;
       font-size: 5.6vw;
       display: flex;
       align-items: center;
       padding-left: 4vw;
       position: absolute;
       left: 0;
       top:0;
       z-index: 10;
    }
    #suntory_contents #calendar .calendar .emergency_note_wide01 {
       width: 12.8vw;
    }
    #suntory_contents #calendar .calendar .emergency_note_wide02 {
       width: 25.6vw;
    }
    #suntory_contents #calendar .calendar .emergency_note_wide03 {
       width: 38.4vw;
    }
    #suntory_contents #calendar .calendar .emergency_note_wide04 {
       width: 51.2vw;
    }
    #suntory_contents #calendar .calendar .emergency_note_wide05 {
       width: 64vw;
    }
    #suntory_contents #calendar .calendar .emergency_note_wide06 {
       width: 76.8vw;
    }
    #suntory_contents #calendar .calendar .emergency_note_wide07 {
       width: 89.6vw;
    }
    #suntory_contents #calendar .head {
       margin: 15.2vw 0 0;
       display: flex;
       flex-direction: column;
    }
    #suntory_contents #calendar .head .month {
       margin-bottom: 8vw;
       font-size: 6.4vw;
       text-align: center;
       order: 2;
    }
    #suntory_contents #calendar .head .legend {
       margin-bottom: 8vw;
       display: flex;
       justify-content: flex-end;
       order: 1;
    }
    #suntory_contents #calendar .head .legend li {
       list-style: none;
       font-size: 3.466666666666667vw;
       line-height: 4vw;
       margin-left: 5.333333333333333vw;
       position: relative;
       height: 3.733333333333333vw;
    }
    #suntory_contents #calendar .head .legend li.close {
       padding-left: 5.333333333333333vw;
    }
    #suntory_contents #calendar .head .legend li.tea {
       padding-left: 5.333333333333333vw;
    }
    #suntory_contents #calendar .head .legend li.term::before {
       content: '';
       width: 8vw;
       height: 4vw;
       background: #F2EDE4;
       position: absolute;
       top: calc(50% - 2vw);
       left: -9.6vw;
    }
    #suntory_contents #calendar .head .legend li.close::before {
       content: '';
       width: 4vw;
       height: 4vw;
       background: url(../svg/icon_close-2.svg) no-repeat 0 0;
       background-size: 4vw auto;
       position: absolute;
       top: calc(50% - 2vw);
       left: 0;
    }
    #suntory_contents #calendar .head .legend li.tea::before {
       content: '';
       width: 3.733333333333333vw;
       height: 3.733333333333333vw;
       background: url(../svg/icon_tea.svg) no-repeat 0 center;
       background-size: 4vw auto;
       position: absolute;
       top: calc(50% - 1.866666666666667vw);
       left: 0;
    }
    #suntory_contents #calendar .label {
       width: 100%;
       display: flex;
       margin-bottom: 4vw;
       padding-bottom: 3.2vw;
       border-bottom: 1px #ccc solid;
    }
    #suntory_contents #calendar .label li {
       list-style: none;
       width: 12.8vw;
       text-align: center;
       font-size: 3.733333333333333vw;
    }
    #suntory_contents #calendar .label li.sat {
       color: #007BBB;
    }
    #suntory_contents #calendar .label li.sun {
       color: #E8411D;
    }
    #suntory_contents #calendar .day {
       width: 100%;
       display: flex;
       flex-wrap: wrap;
       border-bottom: 1px #ccc solid;
       margin-bottom: 12vw;
    }

    #suntory_contents #calendar .day.monday_start li:first-child {
       margin-left: 0;
    }
    #suntory_contents #calendar .day.tuesday_start li:first-child {
       margin-left: 12.8vw;
    }
    #suntory_contents #calendar .day.wednesday_start li:first-child {
       margin-left: 25.6vw;
    }
    #suntory_contents #calendar .day.thursday_start li:first-child {
       margin-left: 38.4vw;
    }
    #suntory_contents #calendar .day.friday_start li:first-child {
       margin-left: 51.2vw;
    }
    #suntory_contents #calendar .day.saturday_start li:first-child {
       margin-left: 64vw;
       color: #007BBB;
    }
    #suntory_contents #calendar .day.sunday_start li:first-child {
       margin-left: 76.8vw;
       color: #E8411D;
    }
    #suntory_contents #calendar .day.monday_start li:nth-child(7n + 6) {
       color: #007BBB;
    }
    #suntory_contents #calendar .day.monday_start li:nth-child(7n + 7) {
       color: #E8411D;
    }
    #suntory_contents #calendar .day.tuesday_start li:nth-child(7n + 5) {
       color: #007BBB;
    }
    #suntory_contents #calendar .day.tuesday_start li:nth-child(7n + 6) {
       color: #E8411D;
    }
    #suntory_contents #calendar .day.wednesday_start li:nth-child(7n + 4) {
       color: #007BBB;
    }
    #suntory_contents #calendar .day.wednesday_start li:nth-child(7n + 5) {
       color: #E8411D;
    }
    #suntory_contents #calendar .day.thursday_start li:nth-child(7n + 3) {
       color: #007BBB;
    }
    #suntory_contents #calendar .day.thursday_start li:nth-child(7n + 4) {
       color: #E8411D;
    }
    #suntory_contents #calendar .day.friday_start li:nth-child(7n + 2) {
       color: #007BBB;
    }
    #suntory_contents #calendar .day.friday_start li:nth-child(7n + 3) {
       color: #E8411D;
    }
    #suntory_contents #calendar .day.saturday_start li:nth-child(7n + 1) {
       color: #007BBB;
    }
    #suntory_contents #calendar .day.saturday_start li:nth-child(7n + 2) {
       color: #E8411D;
    }
    #suntory_contents #calendar .day.sunday_start li:nth-child(7n) {
       color: #007BBB;
    }
    #suntory_contents #calendar .day.sunday_start li:nth-child(7n + 1) {
       color: #E8411D;
    }
    #suntory_contents #calendar .day li {
       margin-bottom: 4vw;
       list-style: none;
       width: 12.8vw;
       height: 9.6vw;
       display: flex;
       align-items: center;
       justify-content: center;
       font-size: 4.266666666666667vw;
       line-height: 7.2vw;
       letter-spacing: -.05em;
    }
    #suntory_contents #calendar .day li.term {
       background: #F2EDE4;
    }
    #suntory_contents #calendar .day li.close {
       background: url(../svg/icon_close_large.svg) no-repeat center center;
       background-size: 7.2vw auto;
    }
    #suntory_contents #calendar .day li.close.term {
       background: #F2EDE4 url(../svg/icon_close_large_dk.svg) no-repeat center center;
       background-size: 7.2vw auto;
    }
    #suntory_contents #calendar .day li.tea {
       background: url(../svg/icon_tea.svg) no-repeat center center;
       background-size: auto 6.4vw;
    }
    #suntory_contents #calendar .day li.tea.term {
       background: #F2EDE4 url(../svg/icon_tea.svg) no-repeat center center;
       background-size: auto 6.4vw;
    }
    #suntory_contents #calendar .day li.holiday {
       color: #E8411D;
    }



   }
/*------------------------------------------------------------
[PC]
------------------------------------------------------------ */
@media print, screen and (min-width:768px) {
   .sp_item {
      display: none;
   }
   .pc_item {
      display: block;
   }


    /*------------------------------------------------------------
    [PC] sma_header
    ------------------------------------------------------------ */
    #suntory_contents {
       padding-top: 1px;
    }
    #suntory_contents #sma_header {
       margin-top: -1px;
       width: 100%;
       height: 70px;
       padding: 0 40px;
       display: flex;
       justify-content: space-between;
       align-items: center;
       box-sizing: border-box;
       background: url(../webp/bg_header.webp) no-repeat 0 0;
       background-size: cover;
       box-shadow: 0 1px 3px rgba(0,0,0,.1);
       position: sticky;
       top: -70px;
       transition: all 1s ease;
    }
    .no-webp #suntory_contents #sma_header {
       background: url(../jpg/bg_header.jpg) no-repeat 0 0;
       background-size: cover;
    }
    #suntory_contents.header_static #sma_header {
       position: static;
       transition: all 1s ease;
    }

    #suntory_contents.top #sma_header {
       position: fixed;
       top: -70px;
       background: rgba(255,255,255,.95);
       transition: all 1s ease;
    }
    #suntory_contents.header_sticky #sma_header {
       background: rgba(255,255,255,.95);
       position: fixed;
       top: -70px;
       transition: all 1s ease;
    }
    #suntory_contents.header_sticky.header_sticky_active #sma_header {
       background: rgba(255,255,255,.95);
       position: fixed;
       top: 0;
       left: 0;
       z-index: 1000;
       transition: all 1s ease;
    }
    #suntory_contents.top.header_sticky.header_sticky_active #sma_header {
       top: 0;
       transition: all 1s ease;
    }

    #suntory_contents #sma_header .logo a {
       display: block;
       width: 280px;
       height: 43px;
       background: url(../svg/logo_white.svg) no-repeat 0 0;
       background-size:280px auto;
       text-indent: -9999px;
    }
    #suntory_contents.top #sma_header .logo a {
       background: url(../svg/logo-4.svg) no-repeat 0 0;
       background-size:280px auto;
    }
    #suntory_contents.header_sticky #sma_header .logo a {
       background: url(../svg/logo-4.svg) no-repeat 0 0;
       background-size:280px auto;
    }

    #suntory_contents #sma_header .function {
       display: flex;
    }
    #suntory_contents #sma_header .link {
       display: flex;
       align-items: center;
       margin: 0;
    }
    #suntory_contents #sma_header .link li {
       list-style: none;
       font-size: 15px;
    }
    #suntory_contents #sma_header .btn_calendar {
       margin-right: 30px;
       width: 20px;
       height: 20px;
       background: url(../svg/icon_head_calendar_wh.svg) no-repeat 0 100%;
       background-size: auto 20px;
       display: block;
       text-indent: -9999px;
       cursor: pointer;
    }
    #suntory_contents #sma_header .calendar {
       margin-right: 30px;
       width: 20px;
       height: 20px;
       background: url(../svg/icon_head_calendar_wh.svg) no-repeat 0 100%;
       background-size: auto 20px;
       display: block;
       text-indent: -9999px;
       cursor: pointer;
    }
    #suntory_contents #sma_header .calendar:hover {
       background: url(../svg/icon_head_calendar_br.svg) no-repeat 0 100%;
       background-size: auto 33px;
    }

    #suntory_contents.top #sma_header .calendar,
    #suntory_contents.header_sticky #sma_header .calendar {
       background: url(../svg/icon_head_calendar_bk.svg) no-repeat 0 0;
       background-size: auto 20px;
    }
    #suntory_contents #sma_header .calendar:hover {
       background: url(../svg/icon_head_calendar_br.svg) no-repeat 0 0;
       background-size: auto 20px;
    }

    #suntory_contents #sma_header .ticket a {
       margin-right: 30px;
       padding-right: 15px;
       color: #fff;
       text-decoration: none;
       background: url(../svg/icon_external_wh.svg) no-repeat right center;
       background-size: 10px auto;
    }

    #suntory_contents.top #sma_header .ticket a,
    #suntory_contents.header_sticky #sma_header .ticket a{
       margin-right: 30px;
       padding-right: 15px;
       color: #000;
       text-decoration: none;
       background: url(../svg/icon_external_bk.svg) no-repeat right center;
       background-size: 10px auto;
    }
    #suntory_contents #sma_header .ticket a:hover {
       color: #A89170;
       background: url(../svg/icon_external_br.svg) no-repeat right center;
       background-size: 10px auto;
    }

    #suntory_contents #sma_header .access a {
       color: #fff;
       text-decoration: none;
    }
    #suntory_contents.top #sma_header .access a,
    #suntory_contents.header_sticky #sma_header .access a{
       color: #000;
       text-decoration: none;
    }
    #suntory_contents #sma_header .access a:hover {
       color: #A89170;
    }
    #suntory_contents #sma_header .language {
       margin: 5px 0 0 30px;
       display: flex;
       align-items: flex-start;
    }
    #suntory_contents #sma_header .language li {
       list-style: none;
       font-size: 15px;
       color: #fff;
    }
    #suntory_contents.top #sma_header .language li,
    #suntory_contents.header_sticky #sma_header .language li{
       color: #fff;
    }
    #suntory_contents #sma_header .language li.current {
       position: relative;
    }
    #suntory_contents.top #sma_header .language li.current,
    #suntory_contents.header_sticky #sma_header .language li.current{
       color: #000;
    }
    #suntory_contents #sma_header .language li.current::after {
       content: '';
       display: block;
       width: 22px;
       height: 2px;
       background: #fff;
       position: absolute;
       bottom: -6px;
       left: calc(50% - 11px);
    }
    #suntory_contents.top #sma_header .language li.current::after,
    #suntory_contents.header_sticky #sma_header .language li.current::after{
       background: #000;
    }
    #suntory_contents #sma_header .language li a {
       margin-right: 20px;
       color: #fff;
       text-decoration: none;
       position: relative;
    }
    #suntory_contents.top #sma_header .language li a,
    #suntory_contents.header_sticky #sma_header .language li a{
       color: #000;
    }
    #suntory_contents #sma_header .language li a:hover {
       color: #A89170;
    }
    #suntory_contents #sma_header .language li a::before {
       content: '';
       width: 1px;
       height: 14px;
       background: #fff;
       position: absolute;
       top: calc(50% - 7px);
       right: -9px;
    }
    #suntory_contents.top #sma_header .language li a::before,
    #suntory_contents.header_sticky #sma_header .language li a::before{
       background: #000;
    }

    #suntory_contents #sma_header .btn_menu {
       margin-left: 40px;
       width: 34px;
       height: 24px;
       background:url(../svg/icon_menu_wh.svg) no-repeat 0 0;
       background-size: 34px auto;
       text-indent: -9999px;
       cursor: pointer;
    }
    #suntory_contents #sma_header .btn_menu:hover {
       background: url(../svg/icon_menu_br.svg) no-repeat 0 0;
       background-size: 34px auto;
    }


    #suntory_contents.top #sma_header .btn_menu,
    #suntory_contents.header_sticky #sma_header .btn_menu{
       background:url(../svg/icon_menu_bk.svg) no-repeat 0 0;
       background-size: 34px auto;
    }
    #suntory_contents.top #sma_header .btn_menu:hover,
    #suntory_contents.header_sticky #sma_header .btn_menu:hover{
       background:url(../svg/icon_menu_br.svg) no-repeat 0 0;
       background-size: 34px auto;
    }
    
    /*------------------------------------------------------------
     [PC] 緊急事態宣言対応
     ------------------------------------------------------------ */
     #suntory_contents #sma_header .calendar {
       display: none;
     }
    
    /*------------------------------------------------------------
    [PC] trigger
    ------------------------------------------------------------ */
    #suntory_contents #trigger {
       width: 100%;
       height: 1px;
       position: absolute;
       top: 300px;
       left: 0;
    }
/*
    #suntory_contents.top #trigger {
        top: 300px;
    }
    */

    /*------------------------------------------------------------
    [PC] sma_menu
    ------------------------------------------------------------ */
    #suntory_contents #sma_menu {
       position: fixed;
       top: 0;
       left: 0;
       width: 100vw;
       height: 100vh;
       background: url(../webp/menu_open_bg.webp) no-repeat center center;
       background-size: cover;
       z-index: 9999;
       display: none;
    }
    .no-webp #suntory_contents #sma_menu {
       background: url(../jpg/menu_open_bg.jpg) no-repeat 0 0;
       background-size: cover;
    }
    #suntory_contents #sma_menu .inner {
       margin: 0 auto;
       width: auto;
       max-width: 1160px;
       min-width: 960px;
       height: 100vh;
       display: flex;
       flex-direction: column;
       justify-content: center;
       position: relative;
       padding: 0;
    }
    #suntory_contents #sma_menu .btn_close {
       width: 30px;
       height: 30px;
       background: url(../svg/close_wh.svg) no-repeat 0 0;
       background-size: 30px auto;
       position: fixed;
       top: 17px;
       right: 40px;
       text-indent: -9999px;
       cursor: pointer;
       z-index: 1000;
    }
    #suntory_contents #sma_menu .btn_close:hover {
       background: url(../svg/close_br.svg) no-repeat 0 0;
       background-size: 30px auto;
    }

    #suntory_contents #sma_menu .sma_menu_head {
       margin: 0 auto 40px;
       width: 100%;
       min-width: 960px;
       max-width: 1040px;
       display: flex;
       justify-content: space-between;
       order: 1;
    }
    #suntory_contents #sma_menu .sma_menu_head h1 {
       margin: 0 0 10px;
       width: 280px;
       height: 43px;
       background: url(../svg/logo_white.svg) no-repeat 0 0;
       background-size: 280px auto;
       text-indent: -9999px;
    }
    #suntory_contents #sma_menu .sma_menu_head a {
       text-decoration: none;
    }
    #suntory_contents #sma_menu .sma_menu_head a .back {
       text-decoration: none;
       font-size: 12px;
       color: #fff;
       padding-bottom: 3px;
       display: inline-block;
       border-bottom: 1px transparent solid;
    }
    #suntory_contents #sma_menu .sma_menu_head a:hover .back {
       border-bottom: 1px #fff solid;
    }

    #suntory_contents #sma_menu .sma_menu_link {
       margin:0 auto;
       width: 100%;
       min-width: 960px;
       max-width: 1040px;
       position: relative;
       order: 2;
    }
    #suntory_contents #sma_menu .link {
       padding-left: 40px;
       box-sizing: border-box;
       display: flex;
       position: absolute;
       top: -92px;
       right: 0;
    }
    #suntory_contents #sma_menu .link .language {
       margin: 3px 0 0;
       display: flex;
       align-items: flex-start;
    }
    #suntory_contents #sma_menu .link .language li {
       list-style: none;
       font-family: 'Lato', sans-serif;
       letter-spacing: 0.04em;
       font-size: 16px;
       color: #fff;
    }
    #suntory_contents #sma_menu .link .language li.current {
       position: relative;
    }
    #suntory_contents #sma_menu .link .language li.current::after {
       content: '';
       display: block;
       width: 22px;
       height: 2px;
       background: #fff;
       position: absolute;
       bottom: -6px;
       left: calc(50% - 11px);
    }
    #suntory_contents #sma_menu .link .language li a {
       margin-right: 20px;
       color: #fff;
       text-decoration: none;
       position: relative;
    }
    #suntory_contents #sma_menu .link .language li a:hover {
       color: #A89170;
    }
    #suntory_contents #sma_menu .link .language li a::before {
       content: '';
       width: 1px;
       height: 14px;
       background: #fff;
       position: absolute;
       top: calc(50% - 7px);
       right: -9px;
    }

    #suntory_contents #sma_menu .sma_menu_body {
       margin: 0 auto 40px;
       width: 100%;
       min-width: 960px;
       max-width: 1040px;
       display: flex;
       justify-content: space-between;
       order: 3;
    }
    #suntory_contents #sma_menu .sma_menu_body a {
       text-decoration: none;
       color: #fff;
       padding-bottom: 3px;
    }
    #suntory_contents #sma_menu .sma_menu_body a:hover {
       border-bottom: 1px #fff solid;
    }

    #suntory_contents #sma_menu .sma_menu_body li {
       margin-bottom: 20px;
       list-style: none;
    }

    #suntory_contents #sma_menu .sma_menu_body .primary {
       width: 805px;
       width: 77.403846153846154%;
       display: flex;
       justify-content: space-between;
    }
    #suntory_contents #sma_menu .sma_menu_body .primary dl:nth-child(4n) {
       margin-right: 60px;
       margin-right: 7.453416149068323%;
    }
    #suntory_contents #sma_menu .sma_menu_body .primary dt {
       font-size: 17px;
       margin-bottom: 30px;
       color: #fff;
    }
    #suntory_contents #sma_menu .sma_menu_body .primary dd {
       font-size: 14px;
    }

    #suntory_contents #sma_menu .sma_menu_body .secondary {
       width: 235px;
       width: 22.596153846153846%;
    }
    #suntory_contents #sma_menu .sma_menu_body .secondary ul {
       border-left: 1px #bbb solid;
       padding-left: 60px;
       padding-left: 25.531914893617021%;
    }
    #suntory_contents #sma_menu .sma_menu_body .secondary li {
       font-size: 15px;
    }
    #suntory_contents #sma_menu .sma_menu_body .secondary li a {
       position: relative;
    }
    #suntory_contents #sma_menu .sma_menu_body .secondary li a::before {
       content: '';
       width: 22px;
       height: 15px;
       position: absolute;
       top: calc(50% - 7.5px);
       left: -22px;
    }
    #suntory_contents #sma_menu .sma_menu_body .secondary .calendar a::before {
       background: url(../svg/icon_calendar_wh.svg) no-repeat 0 center;
       background-size: 14px auto;
    }
    #suntory_contents #sma_menu .sma_menu_body .secondary .members_club a::before {
       background: url(../svg/icon_members_wh.svg) no-repeat 1px center;
       background-size: 12px auto;
    }
    #suntory_contents #sma_menu .sma_menu_body .secondary .online_ticket a::before {
       background: url(../svg/icon_ticket_wh.svg) no-repeat 0 center;
       background-size: 14px auto;
    }
    #suntory_contents #sma_menu .sma_menu_body .secondary .online_shop a::before {
       background: url(../svg/icon_shop_wh.svg) no-repeat 1px center;
       background-size: 12px auto;
    }
    #suntory_contents #sma_menu .sma_menu_body .secondary .mail_magazine a::before {
       background: url(../icon_mail_wh.html) no-repeat 0 center;
       background-size: 14px auto;
    }
    #suntory_contents #sma_menu .sma_menu_body .secondary li a[target="_blank"]::after {
       content: '';
       width: 10px;
       height: 10px;
       background: url(../svg/icon_external_wh.svg) no-repeat 0 0;
       background-size: 10px auto;
       position: absolute;
       top: calc(50% - 5px);
       right: -18px;
    }
    #suntory_contents #sma_menu .sma_menu_foot {
       margin: 0 auto;
       width: 100%;
       min-width: 960px;
       max-width: 1040px;
       order: 4;
    }
    #suntory_contents #sma_menu .sma_menu_foot .extra {
       margin-bottom: 30px;
       display: flex;
    }
    #suntory_contents #sma_menu .sma_menu_foot .extra li {
       margin-right: 40px;
       list-style: none;
       font-size: 14px;
    }
    #suntory_contents #sma_menu .sma_menu_foot .extra li:first-child {
       display: none;
    }
    #suntory_contents #sma_menu .sma_menu_foot .extra li a {
       text-decoration: none;
       color: #fff;
       position: relative;
       padding-bottom: 3px;
    }
    #suntory_contents #sma_menu .sma_menu_foot .extra li a:hover {
       border-bottom: 1px #fff solid;
    }
    #suntory_contents #sma_menu .sma_menu_foot .extra li a[target="_blank"]::after {
       content: '';
       width: 10px;
       height: 10px;
       background: url(../svg/icon_external_wh.svg) no-repeat 0 0;
       background-size: 10px auto;
       position: absolute;
       top: calc(50% - 5px);
       right: -18px;
    }


    #suntory_contents #sma_menu .btn_close_bottom {
       display: none;
    }

    /*------------------------------------------------------------
    [PC] sma_footer
    ------------------------------------------------------------ */
    #suntory_contents #sma_footer {
       border-top: 1px #bbb solid;
       padding: 60px 0;
    }

    #suntory_contents #sma_footer .btn_page_top {
       margin: 0 auto;
       width: 100%;
       min-width: 960px;
       max-width: 1160px;
       position: relative;
    }
    #suntory_contents #sma_footer .btn_page_top a {
       font-size: 14px;
       font-family: 'Lato', sans-serif;
       letter-spacing: 0.04em;
       color: #000;
       text-decoration: none;
       position: absolute;
       top: -90px;
       right: 40px;
       background: url(../svg/arrow_up_small_gr.svg) no-repeat right .04em center;
       background-size: 10px auto;
       padding-right: 20px;
    }
    #suntory_contents #sma_footer .btn_page_top a:hover {
       color: #A89170;
       background: url(../svg/arrow_up_small_br.svg) no-repeat right .04em center;
       background-size: 10px auto;
    }

    #suntory_contents #sma_footer .sma_footer_head {
       margin: 0 auto 40px;
       width: 100%;
       min-width: 960px;
       max-width: 1040px;
       display: flex;
       justify-content: space-between;
       align-items: flex-end;
    }
    #suntory_contents #sma_footer .sma_footer_head .label a {
       text-decoration: none;
       display: inline-flex;
       flex-direction: column;
       align-items: flex-start;
    }
    #suntory_contents #sma_footer .sma_footer_head h1 {
       margin: 0 0 10px;
       width: 280px;
       height: 43px;
       background: url(../svg/logo-4.svg) no-repeat 0 0;
       background-size: 280px auto;
       text-indent: -9999px;
    }
    #suntory_contents #sma_footer .sma_footer_head .back {
       text-decoration: none;
       font-size: 12px;
       color: #666;
       display: inline-block;
       border-bottom: 1px #fff solid;
       padding-bottom: 3px;
    }
    #suntory_contents #sma_footer .sma_footer_head a:hover .back {
       border-bottom: 1px #666 solid;
    }

    #suntory_contents #sma_footer .sma_footer_head .link {
       display: flex;
       align-items: flex-end;
       height: 43px;
       margin-bottom: 26px;
       padding-left: 41px;
       box-sizing: border-box;
    }
    #suntory_contents #sma_footer .sma_footer_head .language {
       margin: 0 0 3px;
       display: flex;
       align-items: flex-end;
    }
    #suntory_contents #sma_footer .sma_footer_head .language li {
       list-style: none;
       font-family: 'Lato', sans-serif;
       letter-spacing: 0.04em;
       font-size: 16px;
    }
    #suntory_contents #sma_footer .sma_footer_head .language li.current {
       position: relative;
    }
    #suntory_contents #sma_footer .sma_footer_head .language li.current::after {
       content: '';
       display: block;
       width: 22px;
       height: 2px;
       background: #000;
       position: absolute;
       bottom: -6px;
       left: calc(50% - 11px);
    }
    #suntory_contents #sma_footer .sma_footer_head .language li a {
       margin-right: 20px;
       color: #000;
       text-decoration: none;
       position: relative;
    }
    #suntory_contents #sma_footer .sma_footer_head .language li a:hover {
       color: #A89170;
    }
    #suntory_contents #sma_footer .sma_footer_head .language li a::before {
       content: '';
       width: 1px;
       height: 14px;
       background: #666;
       position: absolute;
       top: calc(50% - 7px);
       right: -9px;
    }

    #suntory_contents #sma_footer .sma_footer_body {
       margin: 0 auto 40px;
       width: 100%;
       min-width: 960px;
       max-width: 1040px;
       display: flex;
       justify-content: space-between;
    }
    #suntory_contents #sma_footer .sma_footer_body a {
       text-decoration: none;
       color: #000;
       padding-bottom: 3px;
    }
    #suntory_contents #sma_footer .sma_footer_body a:hover {
       border-bottom: 1px #000 solid;
    }

    #suntory_contents #sma_footer .sma_footer_body li {
       margin-bottom: 20px;
       list-style: none;
    }

    #suntory_contents #sma_footer .sma_footer_body .primary {
       width: 805px;
       width: 77.403846153846154%;
       display: flex;
       justify-content: space-between;
    }
    #suntory_contents #sma_footer .sma_footer_body .primary dl:nth-child(4n) {
       margin-right: 60px;
       margin-right: 7.453416149068323%;
    }
    #suntory_contents #sma_footer .sma_footer_body .primary dt {
       font-size: 17px;
       margin-bottom: 30px;
    }
    #suntory_contents #sma_footer .sma_footer_body .primary dd {
       font-size: 14px;
    }
    #suntory_contents #sma_footer .sma_footer_body .secondary {
       width: 235px;
       width: 22.596153846153846%;
    }
    #suntory_contents #sma_footer .sma_footer_body .secondary ul {
       border-left: 1px #bbb solid;
       padding-left: 60px;
       padding-left: 25.531914893617021%;
    }
    #suntory_contents #sma_footer .sma_footer_body .secondary li {
       font-size: 15px;
    }
    #suntory_contents #sma_footer .sma_footer_body .secondary li a {
       position: relative;
    }
    #suntory_contents #sma_footer .sma_footer_body .secondary li a::before {
       content: '';
       width: 22px;
       height: 15px;
       position: absolute;
       top: calc(50% - 7.5px);
       left: -22px;
    }
    #suntory_contents #sma_footer .sma_footer_body .secondary .calendar a::before {
       background: url(../svg/icon_calendar_bk.svg) no-repeat 0 center;
       background-size: 14px auto;
    }
    #suntory_contents #sma_footer .sma_footer_body .secondary .members_club a::before {
       background: url(../svg/icon_members_bk.svg) no-repeat 1px center;
       background-size: 12px auto;
    }
    #suntory_contents #sma_footer .sma_footer_body .secondary .online_ticket a::before {
       background: url(../svg/icon_ticket_bk.svg) no-repeat 0 center;
       background-size: 14px auto;
    }
    #suntory_contents #sma_footer .sma_footer_body .secondary .online_shop a::before {
       background: url(../svg/icon_shop_bk.svg) no-repeat 1px center;
       background-size: 12px auto;
    }
    #suntory_contents #sma_footer .sma_footer_body .secondary .mail_magazine a::before {
       background: url(../icon_mail_bk.html) no-repeat 0 center;
       background-size: 14px auto;
    }

    #suntory_contents #sma_footer .sma_footer_body .secondary li a[target="_blank"]::after {
       content: '';
       width: 10px;
       height: 10px;
       background: url(../svg/icon_external_gr.svg) no-repeat 0 0;
       background-size: 10px auto;
       position: absolute;
       top: calc(50% - 5px);
       right: -18px;
    }

    #suntory_contents #sma_footer .sma_footer_foot {
       margin: 0 auto;
       width: 100%;
       min-width: 960px;
       max-width: 1040px;
       text-align: left;
    }
    #suntory_contents #sma_footer .sma_footer_foot .extra {
       margin-bottom: 30px;
       display: flex;
    }
    #suntory_contents #sma_footer .sma_footer_foot .extra li {
       margin-right: 40px;
       list-style: none;
       font-size: 14px;
    }
    #suntory_contents #sma_footer .sma_footer_foot .extra li:first-child {
       display: none;
    }
    #suntory_contents #sma_footer .sma_footer_foot .extra li a {
       text-decoration: none;
       color: #000;
       position: relative;
       padding-bottom: 3px;
       font-family:"Hiragino Sans", "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3", Meiryo, "メイリオ", sans-serif;
    }
    #suntory_contents #sma_footer .sma_footer_foot .extra li a:hover {
       border-bottom: 1px #000 solid;
    }
    #suntory_contents #sma_footer .sma_footer_foot .extra li a[target="_blank"]::after {
       content: '';
       width: 10px;
       height: 10px;
       background: url(../svg/icon_external_gr.svg) no-repeat 0 0;
       background-size: 10px auto;
       position: absolute;
       top: calc(50% - 5px);
       right: -18px;
    }

    #suntory_contents #sma_footer .sma_footer_foot .note {
       font-size: 12px;
       color: #666;
    }

    /*------------------------------------------------------------
    [PC] calendar
    ------------------------------------------------------------ */
    #suntory_contents #calendar {
       background: rgba(0,0,0,.5);
       width: 100vw;
       height: 100vh;
       position: fixed;
       top: 0;
       left: 0;
       z-index: 1001;
       display: none;
    }
    #suntory_contents #calendar .btn_container {
       margin: 0 auto;
       width: 800px;
       height: 1px;
       position: relative;
    }
    #suntory_contents #calendar .btn_close_calendar {
       width: 30px;
       height: 30px;
       background: url(../svg/close_gr.svg) no-repeat 0 0;
       background-size: 30px auto;
       position: absolute;
       top: 60px;
       right: 20px;
       cursor: pointer;
       z-index: 9999;
    }
    #suntory_contents #calendar .btn_close_calendar:hover {
       background: url(../svg/close_br.svg) no-repeat 0 0;
       background-size: 30px auto;
    }
    #suntory_contents #calendar_overlay {
       width: 100vw;
       height: 100vh;
       z-index: 1002;
       position: fixed;
       top: 0;
       left: 0;
    }

    #suntory_contents #calendar .calendar_wrap {
       opacity: 0;
       transition: all .5s ease;
    }
    #suntory_contents #calendar.active .calendar_wrap {
       opacity: 1;
    }

    #suntory_contents #calendar_container {
       margin: 40px auto;
       width: 800px;
       height: 500px;
       overflow: hidden;
       box-sizing: border-box;
       padding: 30px 78px 25px;
       background: #fff;
       position: relative;
       z-index: 1003;
    }
    #suntory_contents #calendar .calendar {
       width: 800px;
       height: 500px;
       background: #fff;
       overflow: hidden;
       position: relative;
    }

    #suntory_contents #calendar .calendar .emergency_note_hook {
       position: relative;
    }
    #suntory_contents #calendar .calendar .emergency_note {
       width: auto;
       height: 40px;
       box-sizing: border-box;
       background: rgba(255,0,0,.7);
       color: #fff;
       font-size: 24px;
       display: flex;
       align-items: center;
       padding-left: 20px;
       position: absolute;
       left: 0;
       top:0;
       z-index: 10;
    }
    #suntory_contents #calendar .calendar .emergency_note_wide01 {
       width: 92px;
    }
    #suntory_contents #calendar .calendar .emergency_note_wide02 {
       width: 184px;
    }
    #suntory_contents #calendar .calendar .emergency_note_wide03 {
       width: 276px;
    }
    #suntory_contents #calendar .calendar .emergency_note_wide04 {
       width: 368px;
    }
    #suntory_contents #calendar .calendar .emergency_note_wide05 {
       width: 460px;
    }
    #suntory_contents #calendar .calendar .emergency_note_wide06 {
       width: 552px;
    }
    #suntory_contents #calendar .calendar .emergency_note_wide07 {
       width: 644px;
    }


/*
    #suntory_contents #calendar .calendar .emergency_note {
        width: 250px;
        height: 60px;
        background: rgba(255,0,0,.7);
        color: #fff;
        font-size: 24px;
        display: flex;
        align-items: center;
        justify-content: center;
        position: absolute;
        left: calc(50% - 125px);
        top: calc(50% - 60px);
        z-index: 10;
    }
    */

    #suntory_contents #calendar .head {
       margin-bottom: 20px;
       display: flex;
       justify-content: space-between;
    }
    #suntory_contents #calendar .head .month {
       font-size: 24px;
    }
    #suntory_contents #calendar .head .legend {
       display: flex;
       margin-right: 12px;
    }
    #suntory_contents #calendar .head .legend li {
       list-style: none;
       font-size: 12px;
       line-height: 16px;
       margin-left: 18px;
       position: relative;
       height: 16px;
    }
    #suntory_contents #calendar .head .legend li.term {
       padding-left: 35px;
    }
    #suntory_contents #calendar .head .legend li.close {
       padding-left: 20px;
    }
    #suntory_contents #calendar .head .legend li.tea {
       padding-left: 20px;
    }
    #suntory_contents #calendar .head .legend li.term::before {
       content: '';
       width: 30px;
       height: 16px;
       background: #F2EDE4;
       position: absolute;
       top: calc(50% - 8px);
       left: 0;
    }
    #suntory_contents #calendar .head .legend li.close::before {
       content: '';
       width: 16px;
       height: 16px;
       background: url(../svg/icon_close-2.svg) no-repeat 0 0;
       background-size: 16px auto;
       position: absolute;
       top: calc(50% - 8px);
       left: 0;
    }
    #suntory_contents #calendar .head .legend li.tea::before {
       content: '';
       width: 16px;
       height: 14px;
       background: url(../svg/icon_tea.svg) no-repeat 0 center;
       background-size: 16px auto;
       position: absolute;
       top: calc(50% - 7px);
       left: 0;
    }
    #suntory_contents #calendar .label {
       width: 100%;
       display: flex;
       margin-bottom: 14px;
       padding-bottom: 10px;
       border-bottom: 1px #bbb solid;
    }
    #suntory_contents #calendar .label li {
       list-style: none;
       width: 92px;
       text-align: center;
       font-size: 14px;
    }
    #suntory_contents #calendar .label li.sat {
       color: #007BBB;
    }
    #suntory_contents #calendar .label li.sun {
       color: #E8411D;
    }
    #suntory_contents #calendar .day {
       width: 100%;
       display: flex;
       flex-wrap: wrap;
       position: relative;
       /*        border-bottom: 1px #bbb solid;*/
    }
    #suntory_contents #calendar .day::after {
       content: '';
       width: 100%;
       height: 1px;
       background: #bbb;
       position: absolute;
       bottom:7px;
       left: 0;
    }
    #suntory_contents #calendar .day.monday_start li:first-child {
       margin-left: 0;
    }
    #suntory_contents #calendar .day.tuesday_start li:first-child {
       margin-left: 92px;
    }
    #suntory_contents #calendar .day.wednesday_start li:first-child {
       margin-left: 184px;
    }
    #suntory_contents #calendar .day.thursday_start li:first-child {
       margin-left: 276px;
    }
    #suntory_contents #calendar .day.friday_start li:first-child {
       margin-left: 368px;
    }
    #suntory_contents #calendar .day.saturday_start li:first-child {
       margin-left: 460px;
       color: #007BBB;
    }
    #suntory_contents #calendar .day.sunday_start li:first-child {
       margin-left: 552px;
       color: #E8411D;
    }
    #suntory_contents #calendar .day.monday_start li:nth-child(7n + 6) {
       color: #007BBB;
    }
    #suntory_contents #calendar .day.monday_start li:nth-child(7n + 7) {
       color: #E8411D;
    }
    #suntory_contents #calendar .day.tuesday_start li:nth-child(7n + 5) {
       color: #007BBB;
    }
    #suntory_contents #calendar .day.tuesday_start li:nth-child(7n + 6) {
       color: #E8411D;
    }
    #suntory_contents #calendar .day.wednesday_start li:nth-child(7n + 4) {
       color: #007BBB;
    }
    #suntory_contents #calendar .day.wednesday_start li:nth-child(7n + 5) {
       color: #E8411D;
    }
    #suntory_contents #calendar .day.thursday_start li:nth-child(7n + 3) {
       color: #007BBB;
    }
    #suntory_contents #calendar .day.thursday_start li:nth-child(7n + 4) {
       color: #E8411D;
    }
    #suntory_contents #calendar .day.friday_start li:nth-child(7n + 2) {
       color: #007BBB;
    }
    #suntory_contents #calendar .day.friday_start li:nth-child(7n + 3) {
       color: #E8411D;
    }
    #suntory_contents #calendar .day.saturday_start li:nth-child(7n + 1) {
       color: #007BBB;
    }
    #suntory_contents #calendar .day.saturday_start li:nth-child(7n + 2) {
       color: #E8411D;
    }
    #suntory_contents #calendar .day.sunday_start li:nth-child(7n) {
       color: #007BBB;
    }
    #suntory_contents #calendar .day.sunday_start li:nth-child(7n + 1) {
       color: #E8411D;
    }
    #suntory_contents #calendar .day li {
       margin-bottom: 21px;
       font-size: 16px;
       line-height: 40px;
       list-style: none;
       width: 92px;
       height: 40px;
       display: flex;
       align-items: center;
       justify-content: center;
    }
    #suntory_contents #calendar .day li.term {
       background: #F2EDE4;
    }
    #suntory_contents #calendar .day li.close {
       background: url(../svg/icon_close_large.svg) no-repeat center center;
       background-size: 30px auto;
    }
    #suntory_contents #calendar .day li.close.term {
       background: #F2EDE4 url(../svg/icon_close_large_dk.svg) no-repeat center center;
       background-size: 30px auto;
    }

    #suntory_contents #calendar .day li.tea {
       background: url(../svg/icon_tea.svg) no-repeat center center;
       background-size: 26px auto;
    }
    #suntory_contents #calendar .day li.tea.term {
       background: #F2EDE4 url(../svg/icon_tea.svg) no-repeat center center;
       background-size: 26px auto;
    }
    #suntory_contents #calendar .day li.holiday {
       color: #E8411D;
    }

   }