
@charset "utf-8";

/*------------------------------------------------------------
  font
------------------------------------------------------------ */

#suntory_contents .bold{
	font-weight: bold;}

#suntory_contents #contents * {
    box-sizing: content-box;
}
#suntory_contents a {
    color: #881133;
}
#suntory_contents a:hover {
    text-decoration: none;
}
/*------------------------------------------------------------
  for PC
------------------------------------------------------------ */

#suntory_contents .font14{ font-size: 14px;}
#suntory_contents .font16{ font-size: 16px;}
#suntory_contents .mb15{ margin-bottom: 15px}
#suntory_contents .mb30{ margin-bottom: 30px}

#suntory_contents .sp_mt40{ margin-top: 0px;}
#suntory_contents .sp_mb20{ margin-bottom: 0px}

/*------------------------------------------------------------
  [PC] bread_crumbs
  ------------------------------------------------------------ */
  #suntory_contents .bread_crumbs {
   list-style: none;
   display: flex;
   padding: 15px 0 0;
   margin: 0px 0px 15px;
 }
 #suntory_contents #contents .bread_crumbs li {
   color: #222;
 }
 #suntory_contents #contents .bread_crumbs li a {
   color: #881133;
 }
 #suntory_contents .bread_crumbs li::after {
   color: #222;
 }

/*------------------------------------------------------------
  [PC] container
------------------------------------------------------------ */

#suntory_contents #contents {
    margin: 0 auto;
    padding-bottom: 120px;
    width: 1080px;
    position: relative;
}

/*------------------------------------------------------------
  [PC] contents_title
------------------------------------------------------------ */
#suntory_contents #contents_title {
    padding: 20px 0 20px;
    display: flex;
    justify-content: flex-end;
}
#suntory_contents #contents_title h2 {
    margin-bottom: 15px;
    font-size: 16px;
    font-weight: bold;
    font-weight: 500;
    line-height: 1.5;
}
#suntory_contents #contents_title h1 {
    font-size: 24px;
    font-weight: bold;
    font-weight: 500;
    line-height: 1.5;
}

#suntory_contents #contents_title .btn_sns {
    display: flex;
    list-style: none;
}
#suntory_contents #contents_title .btn_sns li {
    margin-left: 10px;
}
#suntory_contents #contents_title .btn_sns .btn_sns_facebook a {
    width: 40px;
    height: 40px;
    display: block;
    text-indent: -9999px;
    background: url(../img/common/icon_facebook.png) no-repeat 0 0;
}
#suntory_contents #contents_title .btn_sns .btn_sns_twitter a {
    width: 40px;
    height: 40px;
    display: block;
    text-indent: -9999px;
    background: url(../img/common/icon_twitter.png) no-repeat 0 0;
}

/*------------------------------------------------------------
  [PC] article
------------------------------------------------------------ */

#suntory_contents .article {
    padding: 25px 40px 50px;
    border: 1px #dddddd solid;
}

#suntory_contents .article_title{
    margin-bottom:20px; 
    border-bottom: solid 1px #ddd;
    padding: 0 0 10px;
}
#suntory_contents .article_title h2 {
    margin-bottom: 15px;
    font-size: 24px;
    font-weight: bold;
    font-weight: 500;
}
#suntory_contents .article_title h1 {
    font-size: 24px;
    font-weight: bold;
}

#suntory_contents .article_sub_title_block{
  margin-bottom: 10px;
}

#suntory_contents .article_sub_title{
  font-size:  18px;
  font-weight: bold;
}

#suntory_contents .article_sub_title >p{
  margin: 10px 0;
}

#suntory_contents .article_title .author {
  font-size: 16px;
  color: #777;
  text-align: right;
}

#suntory_contents .movie_icon{
  display: flex;
  align-items: center;
}
#suntory_contents .article_lead p {
    line-height: 1.8;
}
#suntory_contents .lead_link_list{
  margin: 0px 0 20px -40px;
  list-style: none;
  display: inline-block;
}

#suntory_contents .lead_link_list::after{
    content: "";
    display: block;
    clear: both;
}

#suntory_contents .lead_link_list li:nth-child(2n+1){
  clear: both;
}

#suntory_contents .lead_link_list li{
  margin-top: 15px;
  margin-left: 40px;
  font-size: 15px;
}

#suntory_contents .lead_link_list a{
  font-size: 15px;
}

#suntory_contents .lead_link_flex_list{
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  list-style: none;;
}

#suntory_contents .lead_link_flex_list li{
  margin-top: 15px;
  margin-left: 40px;
  font-size: 15px;
}

#suntory_contents .lead_link_flex_list li:first-child{
  margin-left: 0;
}

#suntory_contents .txt_box{
  overflow: hidden;
  margin-top: 20px;
}

#suntory_contents .no_hidden{
  overflow: initial;
}

#suntory_contents .txt_box >h3{
  font-size: 15px;
  font-weight: normal;
  font-weight: 400;
  color: #997755;
  background: #f6f1e4;
  margin-bottom: 20px;
  padding: 20px 30px;
  overflow: hidden;
}

#suntory_contents .txt_box >p{
  overflow: hidden;
  margin-bottom: 30px;
  padding: 0 30px;
  font-size: 14px;
  line-height: 1.8;
}

#suntory_contents .txt_box .no_hidden{
  overflow: visible;
}

#suntory_contents .txt_box p.txt{
  margin-bottom: 10px;
  overflow: hidden;}


#suntory_contents .width585L{
  width: 585px;
float: left;
}

#suntory_contents .min_width585L{
  max-width: 585px;
  float: left;
}
#suntory_contents .text_block{
    clear: both;
}

#suntory_contents .text_block >p:first-child{
	margin-top: 0;}

#suntory_contents .txt_img_block{
	float: right;}

#suntory_contents .txt_img_block:first-child{
	margin-top: 0;}

#suntory_contents .txt_img_flexblock{
  display:  flex;
  justify-content: space-around;
  flex-wrap:  wrap;
  list-style:  none;
}

#suntory_contents .txt_img_block li{
	max-width: 340px;
	list-style: none;
  margin: 20px 0 0px 30px;
}

#suntory_contents .txt_img_block .liw300{
    max-width: 300px;
  }

#suntory_contents .txt_img_block .liw430{
  max-width: 430px;
}

#suntory_contents .txt_img_flexblock li{
  	width: 215px;
  	list-style: none;
  	margin: 20px 0 20px 20px;}

#suntory_contents .txt_img_flexblock_C{
  display:  flex;
  justify-content: center;
  flex-wrap:  wrap;
  list-style:  none;
	}

#suntory_contents .txt_img_flexblock_C li{
  max-width: 400px;
  padding: 0 46px;
  margin-top: 20px;
  list-style: none;
}

#suntory_contents .txt_img_block li:first-child{
	margin-top: 0;}

#suntory_contents .img_box{
	margin-top: 20px;}

#suntory_contents .img_box >ul{
	overflow: hidden;
	margin-left: -30px;
	list-style: none;}

#suntory_contents .img_box li{
	float: left;
	margin-left: 30px;}

#suntory_contents .height755{
	min-height: 760px;}

#suntory_contents .food_img{
  float: right;
  padding-left: 30px;
  max-width: 340px;

}

#suntory_contents .outlink::after{
  content: "";
  display: inline-block;
  width: 15px;
  height: 18px;
  padding: 0 4px;
  background: url(../img/outlink_icon.gif) 4px 0 no-repeat;
}

/*------------------------------------------------------------
  [PC] movie_link
------------------------------------------------------------ */
#suntory_contents .movie_link{
  padding: 0 20px;
  margin-bottom: 30px;
}
#suntory_contents .movie_link::after{
  content: '';
  display: block;
  clear: both;
}
#suntory_contents .movie_link h4{
  margin-bottom: 15px;
  font-size: 16px;
  font-weight: normal;
}

#suntory_contents .movie_link li{
  list-style: none;
  width: 465px;
  border: solid 1px #ddd;
  box-shadow: 0 0 5px 0 rgba(233,233,233,1);
}
#suntory_contents .movie_link li a{
  text-decoration: none;
  display: block;
  padding: 15px;
}
#suntory_contents .movie_link li span{
  display: block;
}
#suntory_contents .movie_link li .movie_ttl{
  font-size: 16px;
  text-decoration: none;
  color: #881134;
  display: inline-block;
  position: relative;
  padding: 0 25px 0 25px;
  background: url(/suntoryhall/common2019/img/icon_external.png) no-repeat right 8px / 12px;
}
#suntory_contents .movie_link li .movie_ttl::before {
  content: "";
  position: absolute;
  width: 15px;
  height: 30px;
  top: calc(50% - 12px);
  left: 0;
  background: #881133;
}
#suntory_contents .movie_link li .movie_ttl::after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  left: 2px;
  width: 6px;
  height: 6px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#suntory_contents .movie_link li .movie_img{
  padding: 0 10%;
  margin-top: 15px;
}
#suntory_contents .movie_link li .movie_cap{
  padding: 0 10%;
  font-size: 12px;
  color: #222;
  text-decoration: none;
  min-height: 3em;
}
#suntory_contents .movie_link li a:hover{
  opacity: 0.8;
}

#suntory_contents .movie_link li:nth-child(odd){
  float: left;
}

#suntory_contents .movie_link li:nth-child(even){
  float: right;
}

/*------------------------------------------------------------
  [PC] movie_block
------------------------------------------------------------ */

#suntory_contents .movie_title{
  text-align: center;
  padding: 10px 0;
}

#suntory_contents .movie li {
  max-width: 560px;
  max-height: 315px;
  margin: 30px auto;
  text-align: center;
  list-style: none;
}

#suntory_contents .youtube_wp{
  position:relative;
  width:100%;
  padding-top:56.25%;
}
#suntory_contents iframe{
  position:absolute;
  top:0;
  right:0;
  width:100%;
  height:100%;
}

#suntory_contents .caption{
    font-size: 12px;
    margin-top: 5px;
}

#suntory_contents .caption_R{ text-align: right;}
#suntory_contents .caption_C{ text-align: center;}

#suntory_contents .font10{ font-size:10px}

#suntory_contents .caption_line_up{
    display: flex;
    justify-content: space-between;
}
/*------------------------------------------------------------
  [PC] contents_container
------------------------------------------------------------ */

#suntory_contents .hotel_note{
  margin: 15px 0;
}

#suntory_contents .contents_container:after { content :''; display :block; clear :both; }



/*------------------------------------------------------------
  [PC] img
------------------------------------------------------------ */
#suntory_contents .article .img:last-child {
    margin-bottom: 0;
}

#suntory_contents .img_single {
    margin-bottom: 40px;
}
#suntory_contents .img_single figure img {
    margin-bottom: 10px;
    max-width: 1000px;
}
#suntory_contents .img_single figure figcaption {
    display: flex;
    justify-content: space-between;
}
#suntory_contents .img_single figure figcaption .text {
    font-size: 12px;
}
#suntory_contents .img_single figure figcaption .copyright {
    font-size: 10px;
    color: #777;
}

#suntory_contents .img_double {
    margin-bottom: 40px;
    display: flex;
    justify-content: space-between;
}
#suntory_contents .img_double figure {
    width: 480px;
}
#suntory_contents .img_double figure img {
    margin-bottom: 10px;
    max-width: 480px;
}
#suntory_contents .img_double figure figcaption {
    display: flex;
    justify-content: space-between;
}
#suntory_contents .img_double figure figcaption .text {
    font-size: 12px;
}
#suntory_contents .img_double figure figcaption .copyright {
    font-size: 10px;
    color: #777;
}


/*------------------------------------------------------------
  [PC] hotel_info
------------------------------------------------------------ */

#suntory_contents .hotel_info{
  padding: 20px;
  border: solid 1px #ddd;
}

#suntory_contents .hotel_tit>h2{
  font-size: 18px;
}

#suntory_contents .hotel_tit>h3{
  font-size: 14px;
  font-weight: normal;
}

#suntory_contents .hotel_info >h3{
  font-size: 14px;
  font-weight: normal;
}

#suntory_contents .hotel_info{
  margin: 20px 0;
  font-size: 14px;
}

#suntory_contents .hotel_info>h2{
  font-size: 16px;
  margin-bottom: 15px;
}

#suntory_contents .hotel_info ul{
  margin: 10px 0 15px;
  font-size: 12px;
  list-style: none;
}

#suntory_contents .hotel_contenr{
  overflow: hidden;
}

#suntory_contents .hotel_info dl{
  font-size: 14px;
}

#suntory_contents .hot_info_block{
  max-width: 700px;
}

#suntory_contents .hot_infobox{
  margin: 0 0 20px;
}

#suntory_contents .special{
  text-decoration: underline;
  color: #ff0000;
}

#suntory_contents .hotel_img{
  margin-bottom: 20px;
}

#suntory_contents .hotel_flex_block{
  margin-top: 20px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#suntory_contents h3{
  margin-bottom: 15px;
}
#suntory_contents .flex-item_01{
  order: 1;
}
@media screen and (max-width:767px){

/*------------------------------------------------------------
  for SP
------------------------------------------------------------ */

    #suntory_contents .sp_mt15{ margin-top: 15px;}
    #suntory_contents .sp_mt40{ margin-top: 40px;}
    #suntory_contents .sp_mb20{ margin-bottom: 20px}

    /*------------------------------------------------------------
      [SP] contents_header
    ------------------------------------------------------------ */

    /*------------------------------------------------------------
      [SP] bread_crumbs
    ------------------------------------------------------------ */
    #suntory_contents .bread_crumbs,
    #suntory_contents #contents .bread_crumbs {
        display: none;
    }

    /*------------------------------------------------------------
      [SP] container
    ------------------------------------------------------------ */

    #suntory_contents #contents {
        padding: 20px 20px 40px;
        width: auto;
        position: relative;
    }

    /*------------------------------------------------------------
      [SP] btn_page_top
    ------------------------------------------------------------ */

    /*------------------------------------------------------------
      [SP] link
    ------------------------------------------------------------ */
    #suntory_contents li.link_arrow {
        margin-bottom: 20px;
    }
    #suntory_contents li.link_arrow:last-child {
        margin-bottom: 0;
    }
    #suntory_contents .link_arrow a {
        position: relative;
        padding-left: 30px;
        display: inline-block;
    }
    #suntory_contents .link_arrow a:before {
        content: '';
        width: 20px;
        height: 20px;
        background: #881133;
        position: absolute;
        top: -.125em;
        left: 0;
    }
    #suntory_contents .link_arrow a:after {
        content: '';
        width:5.5px;
        height:5.5px;
        margin:auto;
        border-top:2px solid #fff;
        border-right:2px solid #fff;
        -webkit-transform:rotate(45deg);
        transform:rotate(45deg);
        position: absolute;
        top: calc(.175em + 1.75px);
        left: 3.75px;
    }
    #suntory_contents .pdf a {
        background: url(../img/common/icon_pdf.png) no-repeat 0 center;
        background-size: auto 30px;
        display: inline-block;
        min-height: 30px;
        line-height: 30px;
        padding-left: 35px;
    }

    /*------------------------------------------------------------
      [SP] article
    ------------------------------------------------------------ */
    #suntory_contents .article {
        padding: 20px 15px;
        border: none;
        box-shadow: 0 0 4px 2px rgba(0,0,0,.2);
    }
    #suntory_contents .article {
        padding: 20px 15px;
        border: none;
    }
    #suntory_contents .article_title {
        margin-bottom: 15px;
    }
    #suntory_contents .article_title h2 {
        margin-bottom: 15px;
        font-size: 18px;
        font-weight: bold;
        font-weight: 500;
    }
    #suntory_contents .article_title h1 {
        margin-bottom: 5px;
        font-size: 20px;
        font-weight: bold;
        font-weight: 600;
    }
    #suntory_contents .article_title .author {
        font-size: 11px;
        color: #777;
        text-align: right;
    }
    #suntory_contents .article_lead {
        margin: 0 0 20px;
    }
    #suntory_contents .article_lead p {
        font-size: 14px;
        line-height: 1.8;
    }

    #suntory_contents .movie_icon a,
    #suntory_contents .lead_link_list a,
    #suntory_contents .lead_link_list li {
        font-size: 13px;
    }

    #suntory_contents .lead_link_flex_list li{
      margin-left: 0;
    }

    #suntory_contents .txt_img_block{
        float: none;
        margin-top: 20px;
    }

    #suntory_contents .txt_img_block li{
        width: inherit;
        list-style: none;
        margin: auto;
    }

    #suntory_contents .txt_img_flexblock_C li{
        padding: 0px;
        margin-top: 20px;
        list-style: none;
    }

    #suntory_contents .txt_box >p{
        font-size: 14px;
        line-height: 1.8;
        margin-bottom: 30px;
        padding: 0 10px;
        overflow: hidden;
    }

    #suntory_contents .img_box >ul{
      margin: 0 auto;
    }

     #suntory_contents .img_box li{
       margin-top: 20px;
       margin-left: 0;
    }

    #suntory_contents .sp_width100{
        width: 100%;
        margin: 20px auto 20px;
    }

    #suntory_contents .txt_img_block .sp_width80{
        width: 80%;
    }

    #suntory_contents .food_img{
        padding-left: 0;
        margin-bottom: 20px;
    }

     #suntory_contents .txt_img_block .font10{ font-size:10px;}
     /*------------------------------------------------------------
       [SP] movie_link
     ------------------------------------------------------------ */
     #suntory_contents .movie_link{
       margin-top: 20px;
       margin-bottom: 0;
     }
     #suntory_contents .movie_link::after{
       content: '';
       display: block;
       clear: both;
     }
     #suntory_contents .movie_link h4{
      margin-bottom: 15px;
      font-size: 14px;
     }

     #suntory_contents .movie_link li .movie_ttl{
         font-size: 14px;
     }
     
     #suntory_contents .movie_link li{
       width: 100%;
     }
     #suntory_contents .movie_link li{
       float: none;
     }
     
     #suntory_contents .movie_link li+li{
       margin-top: 20px;
     }
     #suntory_contents .movie_link li span{
       font-size: 14px;
     }

    /*------------------------------------------------------------
    [sp] movie_block
    ------------------------------------------------------------ */

    #suntory_contents .movie_title{
        padding: 24px 0 0px;
    }

    /*------------------------------------------------------------
      [sp] text_block
    ------------------------------------------------------------ */

    #suntory_contents .text_block {
        width: auto;
        float: none;
    }
    #suntory_contents .text_block p {
        margin: 0;
        font-size: 14px;
        line-height: 1.8;
    }

    #suntory_contents .text_block .caption{
        font-size: 12px;
    }

    #suntory_contents .txt_box{
        margin-top: 40px;
    }

    #suntory_contents .txt_box >h3{
      font-size: 14px;
    }

    /*------------------------------------------------------------
      [SP] text_container
    ------------------------------------------------------------ */
    #suntory_contents .text_container {
        margin-bottom: 40px;
    }
    #suntory_contents .text_container p {
        margin-bottom: 2em;
        font-size: 14px;
        line-height: 1.8;
    }

    /*------------------------------------------------------------
      [SP] dialogue_container
    ------------------------------------------------------------ */
    #suntory_contents .dialogue_container {
        margin-bottom: 40px;
    }
    #suntory_contents .dialogue_container dt {
        font-size: 14px;
        font-weight: normal;
        font-weight: 400;
        color: #997755;
        background: #f6f1e4;
        margin-bottom: 15px;
        padding: 15px 15px 15px 30px;
        position: relative;
    }
    #suntory_contents .dialogue_container dt:before {
        content: '';
        display: block;
        width: 10px;
        height: 1px;
        border-top:1px #997755 solid;
        position: absolute;
        top: calc(15px + .75em);
        left: 15px;
    }

    #suntory_contents .dialogue_container dd {
        font-size: 12px;
        line-height: 1.8;
        margin-bottom: 10px;
        padding: 0 10px;
    }

    #suntory_contents .hotel_note{
      font-size: 12px;
    }
    /*------------------------------------------------------------
      [SP] img
    ------------------------------------------------------------ */
    #suntory_contents .article .img:last-child {
        margin-bottom: 0;
    }

    #suntory_contents .img_single {
        margin-bottom: 40px;
    }
    #suntory_contents .img_single figure img {
        margin-bottom: 10px;
        max-width: 100%;
    }
    #suntory_contents .img_single figure figcaption {
        display: flex;
        flex-direction: column;
    }
    #suntory_contents .img_single figure figcaption .text {
        font-size: 8px;
    }
    #suntory_contents .img_single figure figcaption .copyright {
        font-size: 6px;
        color: #777;
        text-align: right;
    }

    #suntory_contents .img_double {
        margin-bottom: 40px;
        display: flex;
        justify-content: space-between;
    }
    #suntory_contents .img_double figure {
        width: 46.1538461538462%;
    }
    #suntory_contents .img_double figure img {
        margin-bottom: 10px;
        max-width: 100%;
    }
    #suntory_contents .img_double figure figcaption {
        display: flex;
        flex-direction: column;
    }
    #suntory_contents .img_double figure figcaption .text {
        font-size: 8px;
    }
    #suntory_contents .img_double figure figcaption .copyright {
        font-size: 6px;
        color: #777;
        text-align: right;
    }

    /*------------------------------------------------------------
      [sp] hotel_info
    ------------------------------------------------------------ */

    #suntory_contents .hotel_flex_block{
      justify-content: center;
    }

    #suntory_contents .flex-item_01{
      order: 0;
    }

}
