@charset "utf-8";

/*----------------------------------------
common
----------------------------------------*/

/* #main */
#suntory_contents #main {
  line-height: 0;
  margin-bottom: 3.6em;
}

#suntory_contents .slider_main {
  visibility: hidden;
  width: 100%;
  margin: 0 auto;
}

#suntory_contents .slider_main.slick-initialized {
  visibility: visible;
}

#suntory_contents .slider_main img {
  width: 100%;
  height: auto;
}

#suntory_contents .slick-dots li button {
  padding: 0;
  position: relative;
}

#suntory_contents .slick-dots li button:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  opacity: 1;
  background-color: #ccc;
}

#suntory_contents .slick-dots li.slick-active button:before {
  opacity: 1;
  background-color: #0071be;
}

/* #menu_div / #menu_div02 */
#suntory_contents .link_div {
  width: 100%;
  line-height: 0;
}

#suntory_contents .link_div li img {
  width: 100%;
  height: auto;
}

/* #desc */
#suntory_contents #desc {
  background-color: #2d1506;
}

#suntory_contents #desc p {
  border: 1px solid #6b4216;
  color: #fff;
  line-height: 1.8;
}

#suntory_contents #desc p .sub_desc {
  margin-top: 1em;
}

/* #news */
#suntory_contents h2.ttl_info {
  font-weight: bold;
  border-bottom: 1px solid #2d1506;
}

#suntory_contents .day_news:before {
  content: "■";
}

/* #archive */
#suntory_contents h2.ttl_info a:hover {
  text-decoration: none;
}
#suntory_contents .bnr_archive li a{
  display: block;
}
#suntory_contents .bnr_archive li img {
  width: 100%;
}

/*========================================
for SP
========================================*/

@media screen and (max-width: 767px) {

  /* #main */
  #suntory_contents #main {
    background: unset;
  }

  #suntory_contents .slider_main {
    max-width: unset;
    min-width: unset;
  }
/* 
  #suntory_contents .slider_main.slick-dotted {
    margin-bottom: 6.4vw;
  }

  #suntory_contents .slider_main .slick-dots {
    bottom: -6.4vw;
  } */

  #suntory_contents .slick-dots li {
    width: 4vw;
    height: 4vw;
    margin: 0 4vw;
  }

  #suntory_contents .slick-dots li button {
    width: 4vw;
    height: 4vw;
  }

  #suntory_contents .slick-dots li button::before {
    width: 3.733333333vw;
    height: 3.733333333vw;
  }

  /* #menu_div */
  #suntory_contents #menu_div{
    margin-bottom: 6.4vw;
  }
  #suntory_contents #menu_div .link_div li {
    width: 100%;
    margin: 0 0 3.2vw;
  }

  /* #menu_div02 */
  #suntory_contents #menu_div02{
    margin-bottom: 6.4vw;
  }
  #suntory_contents #menu_div02 .link_div li {
    width: 100%;
    margin: 0 0 3.2vw;
  }

  /* #desc */
  #suntory_contents #desc {
    padding: 1.6vw;
  }

  #suntory_contents #desc p {
    padding:3.466666667vw;
    text-align: left;
    font-size: 3.733333333vw;
    line-height: 1.7;
  }
  #suntory_contents #desc p .sub_desc {
    font-size: 3.2vw;
  }
  #suntory_contents #desc p br {
    display: none;
  }

  /* #news */
  #suntory_contents #news .information {
    padding: 3.2vw;
    background-color: #f7eed9;
  }

  #suntory_contents #news .ticketinfo {
    padding: 3.2vw;
    margin: 3.2vw 0 0 0;
    background-color: #eeeeee;
  }

  #suntory_contents #news li {
    width: 100%;
    box-sizing: border-box;
    margin:1.6vw 0 0 0;
    line-height: 1.7;
  }
  #suntory_contents .day_news::before {
    padding-right:1vw;
  }
  
  #suntory_contents .txt_news {
    padding-left: 4vw;
  }
  
  #suntory_contents h2.ttl_info {
    font-size: 4.533333333vw;
    margin-bottom:2.4vw;
  }


  /* #archive */
  #suntory_contents .bnr_archive {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    gap: 2.4vw 0;
  }
    #suntory_contents .bnr_archive li {
    width: 45.6vw;
  }


}

/* ===============SP end===============*/

/*========================================
for PC
========================================*/

@media screen and (min-width: 768px) {

  /* #main */
  #suntory_contents #main {
    background: linear-gradient(180deg, #822a10, #000000);
  }

  #suntory_contents .slider_main {
    max-width: 1164px;
    min-width: 960px;
  }

  #suntory_contents .slick-dots li {
    width: 20px;
    height: 20px;
    margin: 0 4px;
  }

  #suntory_contents .slick-dots li button {
    width: 20px;
    height: 20px;
  }

  #suntory_contents .slick-dots li button::before {
    width: 11px;
    height: 11px;
  }

  /* #menu_div */
  #suntory_contents #menu_div{
    margin-bottom: 30px;
  }
  #suntory_contents #menu_div .link_div{
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
  }
  #suntory_contents #menu_div .link_div li {
    width: 31.786941581%;
  }
  /* #menu_div02 */
  #suntory_contents #menu_div02{
    margin-bottom: 30px;
  }
  #suntory_contents #menu_div02 .link_div{
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
  }
  #suntory_contents #menu_div02 .link_div li {
    width: 48.797250859%;
  }
  /* #desc */
  #suntory_contents #desc {
    padding: 9px;
  }

  #suntory_contents #desc p {
    padding: 25px 9px;
    text-align: center;
    font-size:16px;
  }
  #suntory_contents #desc p .sub_desc {
    font-size: 13px;
  }
  /* #news */
  #suntory_contents #news {
    display: flex;  
    flex-flow: row nowrap;
    justify-content: space-between;
    gap: 50px;
  }

  #suntory_contents #news .information {
    width: 100%;
  }

  #suntory_contents #news:has(.ticketinfo) .information {
    width: 60%;
  }

  #suntory_contents #news:has(.ticketinfo) .ticketinfo {
    width: 40%;
  }

  #suntory_contents #news li {
    width: 100%;
    box-sizing: border-box;
    margin:5px 0 0 0;
    line-height: 1.7;
  }
  #suntory_contents .day_news::before {
    padding-right:1%;
  }
  
  #suntory_contents .txt_news {
    padding-left: 3%;
  }
  #suntory_contents h2.ttl_info {
    font-size: 27px;
    margin-bottom:16px;
  }

  /* #archive */
  #suntory_contents .bnr_archive {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start;
    gap:  14px calc((100% - 24.054982819% * 4) / 3);
  }
  #suntory_contents .bnr_archive li {
    width: 24.054982819%;
  }


}

/* ===============PC end===============*/
