@charset "utf-8";
h2.ttl {
    background-color: #f7f7f7;
    padding: 20px 0;
    text-align: center;
}
h2.ttl img {
    width: 70%;
}
.main_bnr{
	max-width:320px;
	margin:0 auto;
}
.main_bnr a{
	display:block;
}
.main_bnr a img{
	display:block;
	width:100%;
	height:auto;
}
#slide {
    width:1280px;
    height:720px;
    margin:0 auto;
    position:relative;
}
.slide_wap{
    width:1280px;
    margin:0 auto 30px;
    position:relative;
}
.slide_item{
    width:1280px;
}

.slide_item .item{

}
.slide_item .item img{
    margin-left:10px;
    margin-right:10px;
}
.slick-prev:before, .slick-next:before {
    content:"";
}
.slideDetail{
    padding:10px;
    font-size:13px;
}
.slideDetail #bx-pager a.active img{
    border:2px solid #1F2D54;
}
.slideDetail #bx-pager {
    display: block;
    overflow: hidden;
    letter-spacing: -.4em;
}
.slideDetail #bx-pager > a {
    display: inline-block;
    width: 23%;
    letter-spacing: normal;
    vertical-align: top;
    padding:1%;
}
.slideDetail #bx-pager img {
    display: block;
    width: 100%;
}
/* pickup */
.pickup{
	background-color:#F4F4F4;
}
.pickup span{
	font-size:74%;
	background-color:#1E2F55;
	color:#fff;
	display:inline-block;
	padding:0 5px;
	margin:10px 0 0 22px;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.pickup a{
	display:block;
	padding:5px 40px 10px 22px;
	color:#333;
    background:url(/sp/img/common/icon_arrow_r_blue.png) no-repeat 98% center;
    background-size:20px 20px;
}

/* news */
.news{
    background:#FFF;
    width:100%;
    padding-bottom:10px;
}
.newsArea{
    width:100%;
    float:left;
}
.newsArea h3{
    margin-bottom:0px;
    padding: 20px 10px;
}
.newsBox{
  width:100%;
  height:auto;
  box-sizing:border-box;
  border-bottom:dashed 1px #ccc;
}
.newsBox a{
  display:block;
  color:#333;
  padding:20px 15px 20px 12px;
  background:url(/sp/img/common/icon_arrow_r.png) no-repeat 98% center;
  background-size:14px 14px;
}
.newsBox a:hover,
.newsBox a:hover div.news_contents p{
  background-color:#f7f7f7;
}
.newsBox a:after{
  content: "";
  display: block;
  clear: both;
}
.news_photo{
  float:left;
  width:23%;
  text-align:center;
}
.news_photo img{
  display: inline-block;
  width:100%;
  height:auto;
  max-width:130px;
  max-height:130px;
}
.news_contents{
  box-sizing: border-box;
  max-width:75%;
  overflow:hidden;
  float:left;
  padding:0 0 0 15px;
}
.news_label{
  width:80px;
  display: inline-block;
  margin-right:10px;
}
.news_label img{
  width:100%;
  height:auto;
  vertical-align: middle;
}
.news_contents span:nth-child(2){
  color:#777;
  font-size:86%;
  letter-spacing: 1px;
}
.news_contents p strong{
  font-size:107%;
  font-weight:bold;
  display: block;
  line-height:1.4;
  margin-bottom:5px;
}
.news_contents p {
  /* config */
  line-height: 1.5;
  height: 7.7em;
  background-color: #fff;
  /* config end */
  position: relative;
  padding:5px 1em 0 0;
  overflow: hidden;
  font-size:86%;
  clear:left;
}
.news_contents p:before {
  content: "...";
  position: absolute;
  right: 0;
  bottom: 0;
  display: inline-block;
  width: 1em;
}
.news_contents p:after {
  content: "";
  position: relative;
  right: -1em;
  float: right;
  width: 1em;
  height: 100%;
  background-color: inherit;
  margin-left:-1em;
}

.news_btn{
    padding:0px 0px 20px 0px;
}

/* top_banner */

.top_banner{
	display:flex;
	flex-wrap:wrap;
}
.top_banner a{
	width:50%;
	display:block;
	line-height:0;
}
.top_banner a img{
  width:100%;
  height:auto;
}
.mid_banner{
  margin:30px 0 60px;
  padding:0 15px;
}
.mid_banner a{
  display:block;
  line-height:0;
}
.mid_banner a + a{
  margin-top:15px;
}
.mid_banner a img{
  width:100%;
  height:auto;
}
  
/* menu */
.group{
    display:none;
}

.menuArea{
    padding:40px;
    background:#FFF;
    border:10px solid #DCDDDD;
    max-width:1000px;
}
.menu_title{
    width:100%;
    text-align:center;
    margin:30px 0 0;
}
.menu_img{
    float:left;
}
.menu_text{
    float:right;
    margin-left:30px;
}
.menu_text li{
    margin-bottom:15px;
}
.close{
    padding-top:15px;
    padding-bottom:15px;
    clear:both;
    width:100%;
    text-align:center;
}


/* slider */
.bx-viewport{
    /*height:auto !important;*/
}
.slideText{
    padding:10px;
    font-size:14px !important;
}
.slideText-title{
    text-align: center;
}
.contentsText{
    padding:10px 10px 20px;
    font-size:14px !important;
}
.slide_wap{
    width:100%;
}
.itemslider li{
    padding:0px 40px;
}

.menuTitle{
    font-size:16px;
    margin-bottom:10px;
}
.main_title{
    margin-left:10px;
}
  /* 20170804 slideshow */
  #area-concept-slideshow.preview,
  #area-history-slideshow.preview {
    width: 90%;
    margin: 0 auto;
    padding: 24px 20px 0px 20px;
  }
  #area-concept-slideshow.preview li,
  #area-history-slideshow.preview li {
    outline: none;
  }
  #area-concept-slideshow.preview img,
  #area-history-slideshow.preview img {
    width: 100%;
    height: auto;
  }
  #area-concept-slideshow.preview .txt-slideText,
  #area-history-slideshow.preview .txt-slideText {
    text-align: center;
    margin-top: 30px;
  }
  #area-concept-slideshow.preview .slick-arrow,
  #area-history-slideshow.preview .slick-arrow {
    z-index: 10;
  }
  .area-initial-slide .slick-prev {
    left: 0;
  }
  .area-initial-slide .slick-next {
    right: 0;
  }
  .area-initial-slide .slick-arrow {
    width: 40px;
    height: 40px;
    top: 26vw;
  }/* 20170804 slideshow */

/*バンケット詳細　フォトギャラリー*/
.banquet *{
  box-sizing: border-box;
}
.cuisine *{
  box-sizing: border-box;
}

.photo_gallery{
  padding:0 15px;
}
.main_photo{
  width:100%;
  max-height:600px;
  height:auto;
  overflow:hidden;
  box-sizing: border-box;
  padding:0 0;
}
.largeImage{
  width: 100%;
  height: auto;
}
.thumbs{
  margin:10px 0;
}
.thumbs a{
  box-sizing: border-box;
  width: 18%;
  display: inline-block;
  max-width:150px;
  height: auto;
  margin-right:1%;
  min-width:62px;
}

.cuisine .thumbs a{
  margin-right:0.61%;
  }

.thumbs a:last-child{
  margin-right:0;
}
.thumbs a img{
  width:100%;
  height:auto;
}
.floor_data{
  padding:30px 15px;
  letter-spacing: -4em; 
}
.floor_data>div{
  display: inline-block;
  width:50%;
  padding:0 20px;
  letter-spacing: 0;
  vertical-align: top;
}
.floor_data h3 {
  font-size: 115%;
  font-weight: bold;
  margin-bottom: 10px;
}
.floor_data div.fl_left dl.clearfix{
  margin-top:15px;
  font-size:92%;
  border:solid 1px #ccc;
  padding:20px 15px;
}
.floor_data div.fl_left dl.clearfix dt{
  width:21%;
  display: inline-block;
  vertical-align: top;
  white-space: nowrap;
}
.floor_data div.fl_left dl.clearfix dd{
  position:relative;
  display: inline-block;
  padding:0 0 10px 15px;
  vertical-align: top;
  width:76%;
  line-height:1.4;
}
.floor_data div.fl_left dl.clearfix dd:before{
  content:"：";
  position:absolute;
  top:0;
  left:-5px;
}

.floor_data div.fl_right img{
  width:100%;
  height:auto;
  vertical-align: middle;
}
.banquet_list,
.cuisine_list,
.ceremony_list{
  width:98%;
  margin-bottom:30px;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  padding-left:2%;
}
.banquet_list li,
.cuisine_list li,
.ceremony_list li{
  display: inline-block;
  width:15.7%;
  margin:0 0.5% 10px 0.5%;
  vertical-align: top;
  text-align:center;
  position: relative;
  line-height: 1.4;
}
.banquet_list li a,
.cuisine_list li a,
.ceremony_list li a{
  text-decoration:none;
  color:#333;
}
.banquet_list li a span,
.cuisine_list li a span,
.ceremony_list li a span{
  display: inline-block;
}
.banquet_list li a img,
.cuisine_list li a img,
.ceremony_list li a img{
  width:100%;
  height:auto;
}

/* 20170727 */
.banquet_list li ,
.cuisine_list li ,
.ceremony_list li {
  display: block;
}
.banquet_list li a ,
.cuisine_list li a ,
.ceremony_list li a {
  display: block;
  position: relative;
}
.banquet_list li span em.num ,
.cuisine_list li span em.num ,
.ceremony_list li span em.num {
    font-size: 12px;
    display: inline-block;
    height: auto;
    padding: 2px 8px;
    border-radius: 2px;
    background-color: #ece8e7;
    margin-top: 2px;
	
}
/* 20170727 */


.cuisine_text{
	padding: 30px 15px;
	}
.cuisine_text ul{
    list-style: disc;
	}
.cuisine_text ul li{
    padding-bottom: 10px;
    list-style-position: inside;
    padding-left: 1.4em;
    text-indent: -1em;
	}


/*----幅768px以下の表示-----------------*/
  @media screen and (max-width:768px) {
.banquet > h2,
.cuisine > h2,{
  margin-bottom:20px;
  letter-spacing:1px;
  font-size:25px;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  color:#1E2D54;
  margin-left:15px;
}
.thumbs{
  margin:0 0;
}
.floor_data>div{
  display: inline-block;
  width:100%;
  padding:0 0 20px 0;
  }
  
  .banquet_list li,
  .cuisine_list li,
  .ceremony_list li{
    width:32%;
    margin:0 0 10px 0;
  }
  .banquet_list li:nth-child(3n+2),
  .cuisine_list li:nth-child(3n+2),
  .ceremony_list li:nth-child(3n+2){
    margin:0 1% 10px 1%;
  }
  
}
@media screen and (max-width:414px) {

.banquet_list,
.cuisine_list,
.ceremony_list{
display:block;
width:98%;
margin:0 auto;
font-size:0;
padding-left:2%;
}

  .banquet_list li,
  .cuisine_list li,
  .ceremony_list li{
    display:inline-block;
    font-size:0;
    width:32%;
    margin:0 0 20px 0;
    line-height: 1.3;
    font-size: 12px;
  }
  .banquet_list li img ,
  .cuisine_list li img ,
  .ceremony_list li img {
    margin-bottom: 0px;
  }
  .banquet_list li:nth-child(3n+2),
  .cuisine_list li:nth-child(3n+2),
  .ceremony_list li:nth-child(3n+2){
    margin:0 1% 20px 1%;
  }

}

/* 20250407 トップMV改修 */
.top_slide__sp{
  height: 100vh;
  position: relative;
  min-height: 667px;
}
.bxslider{
  z-index: 1;
}
.top_slide__logo{
  position: absolute;
  top: 14.5vh;
  width: 100%;
  text-align: center;
  z-index: 2;
}
.top_slide__sp ul img{
  width: 100%;
  height: 100vh;
  object-fit: cover;
  object-position: center;
}
.top_slide__logo img{
  width: 80%;
  max-width: 180px;
  filter: drop-shadow(2px 2px 4px rgba(0,0,0,0.5));
}
.header_top__sp{
  position: absolute;
  top: 0;
  width: 100%;
  height: 60px;
  text-align: left;
  background: linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 150%);
  display: flex;
  align-items: center;
  z-index: 4;
}