@charset "utf-8";
img, #main a{display:block;}

img{max-width: 100%;}
ul,li,ol{list-style: none;}
#suntory_contents .menu_bg {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.5);
  z-index: 10000 !important;
}
#suntory_contents #overlay{z-index: unset;}
@media print, screen and (min-width: 768px){/* ===== pc start ===== */

  /* link */
 #suntory_contents .linkIcon::after {
  content: '';
  display: inline-block;
  width: 15px;
  height: 10px;
  margin-right: 0.5em;
  background: url(/suntoryhall/common2019/img/linkIcon.png) no-repeat right center / 9px;
 }
 #suntory_contents .linkIcon:hover {
  opacity: 0.5;
}
 #suntory_contents .linkIcon02::after {
  content: '';
  display: inline-block;
  width: 15px;
  height: 10px;
  margin-right: 0.5em;
  background: url(/suntoryhall/common2019/img/linkIcon.png) no-repeat right center / 9px;
 }
  #suntory_contents #suntoryhall_common_header {
    z-index: 1 !important;
  }
  .clear::after{content:''; display: block; clear: both;}
  .fl{float: left;}
  .fr{float:right;}
  #suntory_contents .mainwarp{
    display: block;
    position: relative;
    width: 100%;
    max-width: 1160px;
    margin: 0 auto;
  }
  #suntory_contents {
    min-width: 1164px;
}
  #suntory_contents section h2{
    width: 100%;
    display: flex;
    align-items: center;
    padding:22px 0 10px;
    font-size: 27px;
  }
  #suntory_contents section h2::before{
    content:'';
    display: inline-block;
    margin-right: 30px;
    width:20px; height: 100px;
    background:url(/suntoryhall/feature/chamber2022/common/img/pc_header_common.png) no-repeat center;
  }
 /* --------- nav area start --------- */

  #suntory_contents #main{position: relative;}

  #suntory_contents .breadArea,.breadList{display: flex;}
  #suntory_contents .breadArea{background-color: #fffdee ;}
  #suntory_contents .breadList{width:1160px; margin:0 auto; position: relative;}
  #suntory_contents .breadList li{ color:#77bb55; padding:10px 0; font-size: 12px; }
  #suntory_contents .breadList li a{display: inline-block; position:relative; color:#119900; font-size: 12px;}
  #suntory_contents .breadList li a:hover{color:#55bb00}
  #suntory_contents .breadList li::after {
    content: '>';
    display: inline-block;
    color: #aaccaa;
    font-size: 12px ;
    margin: 0 5px;
    position: static;
  }
  #suntory_contents .breadList li:last-child::after{display: none;}

  #suntory_contents .navWrap{position:relative;}
  #suntory_contents .navlist .nav{width:100%;}
  #suntory_contents .navlist .nav::after{content:" ";display:block;clear:both;}
  #suntory_contents .navlist .nav li{float:left;}
  #suntory_contents .navlist .nav li a{
    display: block;
    width:100%;
    height:70px;
    background-repeat:no-repeat;
    text-decoration: none;
  }
    #suntory_contents .navlist .nav li a:hover,
    #suntory_contents .navlist .nav li.lnav07:hover a{background-position:0 -70px;}
    #suntory_contents .navlist .nav li a.act{background-position:0 -70px;}
    #suntory_contents .navlist .nav li a.act:hover{background-position:0 -70px;}
    #suntory_contents .navlist .nav li a span{
      height: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
      color:#fff;
      font-size: 18px;
    }
    #suntory_contents .navlist .nav li.lnav07 .menuTxt{
      display: block;
      height: 32px;
      font-size: 12px;
      text-align: center;
      padding-top: 12px;
    }
    #suntory_contents .hamburgerMenu{
      width:100%; height: auto;
      display: block;
      text-align: center;
      margin:0 auto;
    }
    #suntory_contents .hamburgerMenu span{
      display: block !important;
      width: 20px; height: 2px !important;
      background-color: #fff;
      margin:4px auto auto auto;
    }

    #suntory_contents .navlist .nav li.lnav01{width:250px;}
    #suntory_contents .navlist .nav li.lnav02{width:181px;}
    #suntory_contents .navlist .nav li.lnav03{width:110px;}
    #suntory_contents .navlist .nav li.lnav04{width:180px;}
    #suntory_contents .navlist .nav li.lnav05{width:150px;}
    #suntory_contents .navlist .nav li.lnav06{width:210px;}
    #suntory_contents .navlist .nav li.lnav07{width:79px;}

    #suntory_contents .navlist .nav li.lnav01 a{width:250px;}
    #suntory_contents .navlist .nav li.lnav02 a{
    width:181px;
    background-image: url(/suntoryhall/feature/chamber2022/common/img/pc_nav_img02.png);
  }
    #suntory_contents .navlist .nav li.lnav03 a{
    width:110px;
    background-image: url(/suntoryhall/feature/chamber2022/common/img/pc_nav_img03.png);
  }
    #suntory_contents .navlist .nav li.lnav04 a{
    width:180px;
    background-image: url(/suntoryhall/feature/chamber2022/common/img/pc_nav_img04.png) ;
  }
    #suntory_contents .navlist .nav li.lnav05 a{
    width:150px;
    background-image: url(/suntoryhall/feature/chamber2022/common/img/pc_nav_img05.png);
  }
  #suntory_contents .navlist .nav li.lnav06 a{
    width:210px;
    background-image: url(/suntoryhall/feature/chamber2022/common/img/pc_nav_img06.png);
  }
  #suntory_contents .navlist .nav li.lnav07 a{
    width:79px;
    background-image: url(/suntoryhall/feature/chamber2022/common/img/pc_nav_img07.png);
  }

  /* --------- nav area end --------- */
  /* --------- menu area strat --------- */

  #nav{
    width:300px;
    position: absolute;
    right: 0; top:0;
    z-index: 99999;
  }

  #suntory_contents .hamburgerNav {
    display: none;
    background: #fff;
    height:auto;
    transition: All 0.2s ease;
    -webkit-transition: All 0.2s ease;
    -moz-transition: All 0.2s ease;
    -o-transition: All 0.2s ease;
    z-index: 9999 !important;
    overflow: auto;
  }

  #suntory_contents .hamburgerNav a {
    text-decoration: none;
  }

  #suntory_contents .gnbNavHeader {
    background: url(../img/click_nav_title.jpg) repeat-x center/100%;
    box-sizing: border-box;
    position: relative;
  }
  #suntory_contents .gnbNavHeader img {
    width: 100%;
    max-width: 100%;
  }
  #suntory_contents .closeBtnArea{
    top: 10px;
    right:10px;
    position: absolute;
    width: 40px;
    height: 40px;
  }
  #suntory_contents .gnbCloseBtn {
    width: 40px;
    height: 40px;
    display: flex;
    margin-top: -3px;
    align-items: center;
    justify-content: center;
    transition: ease 0.3s all;
    cursor: pointer;
  }
  #suntory_contents .gnbCloseBtn::before,
  #suntory_contents .gnbCloseBtn::after {
    content: '';
    position: absolute;
    border-radius: 50px;
    background-color: #fff;
    transform: rotate(45deg);
  }
  #suntory_contents .gnbCloseBtn::before {
    width: 2px;
    height: 30px;
  }

  #suntory_contents .gnbCloseBtn::after {
    width: 30px;
    height: 2px;
  }


  #suntory_contents .gnbNav li a:focus,
  #suntory_contents .gnbNav li a:hover {
    background-color: #fffdee;
    color:#55bb00;
  }

  #suntory_contents .gnbNav > li {
    width:100%;
    border-top: 1px solid #f8f1e4;
  }

  #suntory_contents .gnbNav > li a {
    display: block;
    padding: 15px 30px;
    font-size: 16px;
    font-weight: bold;
    position: relative;
    color:#119900;
  }

  #suntory_contents .subNav li{
    width:100%;
    background-color: #fff;
    border-top: 1px solid #f8f1e4;
  }

  #suntory_contents .subNav > li a{
    font-size: 13.8px;
    padding:14px 50px;
  }
  #suntory_contents .subNav.otherpadding a{padding:15px 30px;}


  #suntory_contents .gnbNav li .icon_arrow:after {
    content: '';
      display: inline-block;
      right: 40px;
      top: 50%;
      width: 8px;
      height: 8px;
      border-top: 1px solid #cc9900;
      border-right: 1px solid #cc9900;
      -webkit-transform: rotate(45deg) translateY(-50%);
      transform: rotate(45deg) translateY(-50%);
      position: absolute;
      transition: All 0.2s ease;
      -webkit-transition: All 0.2s ease;
      -moz-transition: All 0.2s ease;
      -o-transition: All 0.2s ease;
  }


  #suntory_contents .gnbNav > li > a {
    font-weight: bold;
  }

  #suntory_contents .subNav li {
    background: #fff;
  }

  #suntory_contents .hamburgerWrap.active {
    padding: 15vw 5vw 8vw 5vw;
    position:fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    overflow-y: scroll;
    }

  #suntory_contents .menu_bg.active,
  #suntory_contents .hamburgerWrap.active,
  #suntory_contents .hamburgerNav.active,
  #suntory_contents .subNav.active  {
    display: block !important;
    transition: All 0.2s ease;
  }
  #suntory_contents .hamburgerNav.active .on,
  #suntory_contents .hamburgerNav.active .gnbNav > li.on > a {
    background-color: #fffdee;
    color:#55bb00;
  }

/* --------- menu area end --------- */
/* --------- C suntory hall chamber music garden start --------- */

#suntory_contents .lastSection {padding:50px 0 65px;}
#suntory_contents .lastSection h3{
  width:247px;
  padding-bottom: 33px;
}

#suntory_contents .lsMainList a{
  color:#119900;
  text-decoration: none ;
}
#suntory_contents .lsMainList a:hover{color:#55bb00;}
#suntory_contents .lsMain{
  display: flex;
  justify-content: flex-start;
}
.mr70{margin-right: 70px !important;}

#suntory_contents .lsListArea{
  width: 100%;
  display: flex;
  justify-content: flex-start;
  position: relative;
}
#suntory_contents ul.lsMainList:nth-child(1){width:25%;}
#suntory_contents ul.lsMainList:nth-child(2){width:33%;}
#suntory_contents ul.lsMainList:nth-child(3){width:36%; margin-top: 46px;}

#suntory_contents .lsMainList li{margin-bottom:20px;}
#suntory_contents .lsMainList li a{width:max-content;}
#suntory_contents .lsMainList > li {font-size: 20px;}
#suntory_contents .lsSubList > li{font-size: 16px; font-weight: bold;}
.lsSubList2 > li{
  font-size: 14px !important;
  margin-bottom:15px !important;
}
#suntory_contents .lsSubList2 li a{width: max-content;}
#suntory_contents .lastlist li{margin-bottom:2px;}
.fwB{ font-weight: bold;}
.mb10{display:inline-block; margin-bottom:10px !important;}
#suntory_contents .graytitle{
  color:#667766 ;
  font-size: 16px ;
}
#suntory_contents .graytitle .fs14{
  display: inline-block;
  vertical-align: text-bottom;
  font-size: 14px;
  margin-left: 5px;
  font-weight: normal;
}

#suntory_contents .bgLogoImg{
  display: inline-block;
  width:224px;
  position: absolute;
  right: 0; top:0;
  z-index: -1;
}

/* --------- C suntory hall chamber music garden end --------- */
 /* ===== pc end ===== */}

@media screen and (max-width:767px){/* ===== sp start ===== */
    /* link */
 #suntory_contents .linkIcon::after {
  content: '';
  display: inline-block;
  width: 15px;
  height: 10px;
  margin-right: 0.5em;
  background: url(/suntoryhall/common2019/img/linkIcon.png) no-repeat right center / 9px;
 }
 #suntory_contents .linkIcon02::after {
  content: '';
  display: inline-block;
  width: 15px;
  height: 10px;
  margin-right: 0.5em;
  background: url(/suntoryhall/common2019/img/linkIcon.png) no-repeat right center / 9px;
 }
  #suntory_contents section h2{
    width: 100%;
    display: flex;
    align-items: center;
    padding:3.33333vw 0 2vw;
    font-size: 6.13333vw;
  }
  #suntory_contents section h2::before{
    content:'';
    display: inline-block;
    margin-right: 4vw;
    width:4vw; height: 20.535vw;
    background:url(/suntoryhall/feature/chamber2022/common/img/sp_header_common.png) no-repeat center;
    background-size: 100%;
  }

  #suntory_contents .spcommon{
    padding-bottom:53.3333vw;
    background:url(/suntoryhall/feature/chamber2022/common/img/section_bg_sp_bottom_left.png) no-repeat bottom left,
              url(/suntoryhall/feature/chamber2022/common/img/section_bg_sp_bottom_right.png) no-repeat bottom right;
    background-size: 15.868vw 36vw, 20.4vw 47.335vw;
  }

  #suntory_contents p#SpMenuBtn.fixed{position:fixed; right: 4%; top:64px; z-index: 9999;}
  #suntory_contents p#SpMenuBtn.limit{position:absolute;bottom:20px;top:auto;}

  body.no-scroll{
    height:100%;
    overflow:hidden !important;
  }
  #suntory_contents .menu_bg {
    overflow: scroll;
  }

/* -------------- commmon end -------------- */

  #suntory_contents .mainwarp{position: relative;}
  #suntory_contents .spMainwarp{
    display: block;
    position: relative;
    width: 92%;
    margin: 0 auto;
  }

  #suntory_contents #nav.active{
    display: none;
    width: 100%; height: 100%;
    position: fixed;
    top:0; right: 0; left: 0; bottom:0;
    padding:15vw 4vw 8vw 4vw;
    z-index: 99999;
    overflow: scroll;
  }

  #suntory_contents .hamburgerNav {
    display: none;
    background: #fff;
    height:auto;
    transition: All 0.2s ease;
    z-index: 9999 !important;
    overflow: auto;
  }
  #suntory_contents .hamburgerNav.active {
    overflow: scroll;
    width: 100%;
    margin: 0 auto;
  }
  #suntory_contents .hamburgerNav a {
    text-decoration: none;
  }

  #suntory_contents .gnbNavHeader {
    background: url(../img/click_nav_title.jpg) repeat-x center/100%;
    box-sizing: border-box;
    position: relative;
  }
  #suntory_contents .gnbNavHeader img {
    width: 100%;
    max-width: 100%;
  }

  #suntory_contents .closeBtnArea{
    top: 4vw;
    right:4vw;
    position: absolute;
    width: 6.246%;
    height: 17.958%;
  }
  #suntory_contents .gnbCloseBtn {
    width: 6.246%;
    height: 17.958%;
    display: flex;
    margin-top: 3vw;
    align-items: center;
    justify-content: center;
    transition: ease 0.3s all;
    cursor: pointer;
  }
  #suntory_contents .gnbCloseBtn::before,
  #suntory_contents .gnbCloseBtn::after {
    content: '';
    position: absolute;
    border-radius: 50px;
    background-color: #fff;
    transform: rotate(45deg);
  }
  #suntory_contents .gnbCloseBtn::before {
    width: 3px;
    height:5.335vw;
  }

  #suntory_contents .gnbCloseBtn::after {
    width: 5.335vw;
    height: 3px;
  }


  #suntory_contents .gnbNav li a:focus,
  #suntory_contents .gnbNav li a:hover {
    background-color: #fffdee;
    color:#55bb00;
  }

  #suntory_contents .gnbNav > li {
    width:100%;
    border-top: 1px solid #f8f1e4;
  }

  #suntory_contents .gnbNav > li a {
    display: block;
    padding: 15px 30px;
    font-size: 4.666vw;
    /* font-weight: bold; */
    position: relative;
    color:#119900;
  }

  #suntory_contents .subNav li{
    width:100%;
    background-color: #fff;
    border-top: 1px solid #f8f1e4;
  }

  #suntory_contents .subNav > li a{
    font-size: 4vw;
    padding:14px 50px;
  }


  #suntory_contents .gnbNav li .icon_arrow:after {
    content: '';
      display: inline-block;
      right: 11%;
      top: 50%;
      width: 1.86vw;
      height: 1.86vw;
      border-top: 2px solid #cc9900;
      border-right: 2px solid #cc9900;
      -webkit-transform: rotate(45deg) translateY(-50%);
      transform: rotate(45deg) translateY(-50%);
      position: absolute;
      transition: All 0.2s ease;
      -webkit-transition: All 0.2s ease;
      -moz-transition: All 0.2s ease;
      -o-transition: All 0.2s ease;
  }


  #suntory_contents .gnbNav > li > a {
    font-weight: bold;
  }

  #suntory_contents .subNav li {
    background: #fff;
  }


  #suntory_contents .menu_bg.active,
  #suntory_contents .hamburgerWrap.active,
  #suntory_contents .hamburgerNav.active,
  #suntory_contents .subNav.active  {
    display: block !important;
    transition: All 0.2s ease;
  }
  #suntory_contents .hamburgerNav.active .on,
  #suntory_contents .hamburgerNav.active .gnbNav > li.on > a {
    background-color: #fffdee;
    color:#55bb00;
  }

  #suntory_contents .subNav.otherpadding a{padding:15px 30px;}
/* --------- menu area end --------- */
/* --------- sp_listArea start --------- */


#suntory_contents .DLcontent{
  display: flex;
  width:100%;
  background-color: #eef8e8;
  border:1px solid #119900;
  padding:28px 45px 18px 23px;
 }
 #suntory_contents .DLimg{
  display: inline-block;
  width:43.2vw;
  padding-right: 2vw;
 }
 #suntory_contents .DLtxt{ width:39vw; display: inline-block; }
 #suntory_contents .DLtxt a{
  font-size: 3.73333vw;
  font-weight: bold;
  color:#119900;
  line-height: 1.39;
 }
 #suntory_contents .DLtxt .PDFicon{
  display: block;
  width:4.268vw;
  padding-top:2vw;
 }
 #suntory_contents .DLtxt:hover a{color:#55bb00;}
 #suntory_contents .DLtxt:hover .PDFicon{opacity: .8;}

#suntory_contents .commonBorder{padding-top:8.66666vw;}

#suntory_contents .s02main02 h2 {padding:0 0 2.93333vw 0;}


  #suntory_contents div#textBox {
  width: 90.58%;
  margin: auto;
  /* background-color: #fff; */
  }

  #suntory_contents .listBox{
    max-height: 100vw;
    overflow-y: scroll;
  }
  #suntory_contents .listBox::-webkit-scrollbar{width:/*2.66666vw;*/ 20px; height: 100%;}
  #suntory_contents .listBox::-webkit-scrollbar-thumb{background-color: #c5e6a2; border-radius: 10px;}
  #suntory_contents .listBox::-webkit-scrollbar-thumb:hover{background-color: rgba(197,230,162,.8);}
  #suntory_contents .listBox::-webkit-scrollbar-track{background-color: #eef8e8; border-radius: 10px;}

  #suntory_contents .listBox li p{width:93%;}
  #suntory_contents .listBox li p, #suntory_contents .listBox li a{
    font-size: 3.73333vw;
    line-height: 1.5;
  }
  #suntory_contents .listBox li p,
  #suntory_contents .listBox li span{color:#444444;}
  #suntory_contents .listBox li a,#suntory_contents .listBox li a span{color:#119900; text-decoration: underline;}
  #suntory_contents .dateArea{padding-bottom:1.2vw;}
  #suntory_contents .titleArea{padding-bottom:2.66666vw;}

/* --------- sp_listArea end --------- */
 /* ===== sp end ===== */}
#suntoryhall_footer .logo img{
  display: inline;
}
#ticket_contact h2{
  display: block!important;
  padding: 0!important;
}
#ticket_contact h2::before{
  display: none!important;
}