@charset "utf-8";

/* レストランページ */

/* メインビジュアル
---------------------------------------------------------------------------*/
.block-mv {
	background-image: url(../img/banquet/mv.jpg);
	text-shadow: 
		0px 0px 9px rgba(74, 40, 30, .7), 
		2px 2px 7px rgba(74, 40, 30, .7), 
		2px -2px 7px rgba(74, 40, 30, .7), 
		-2px 2px 7px rgba(74, 40, 30, .7), 
		-2px -2px 7px rgba(74, 40, 30, .7);
}
@media screen and (max-width: 768px){
	.block-mv {
		background-image: url(../img/banquet/mv-sp.jpg);
	}
}


/* 検索パネル非表示
---------------------------------------------------------------------------*/
.block-search {
	display: none;
}
.ancpos {
	display: block;
	margin-top: -50px;
	padding-top: 50px;
	position: relative;
	z-index: -1;
}
@media screen and (max-width: 768px){
	.ancpos {
		margin-top: 0;
		padding-top: 0;
	}
}


/* メニュー
---------------------------------------------------------------------------*/
.block-topic .inner-base {
	max-width: 1100px;
}
.detail-topic {
	margin-top: 20px;
	padding: 30px 35px 25px;
}
.lst-detail-topic li {
	width: 239px;
}
.lst-detail-topic li + li {
	margin-left: 26px;
}
.fig-topic {
	margin-bottom: 15px;
}
.fig-topic img {
	width: 100%;
	height: 139px;
	object-fit: cover;
	object-position: center;
	font-family: "object-fit: cover; object-position: center;";
}
.icon-topic span {
	display: inline-block;
	margin-bottom: 10px;
	padding: 1px 6px;
	border: 1px solid #0050A5;
	font-size: .11rem;
}
.date-topic {
	margin-bottom: 5px;
	font-size: .15rem;
}
.ttl-topic {
	font-size: .15rem;
	color: #000000;
}
@media screen and (max-width: 1024px){
	.lst-detail-topic li {
		width: 24%;
	}
}
@media screen and (max-width: 768px){
	.detail-topic {
		width: 94vw;
		margin: 3vw auto 0;
		padding: 3vw;
	}
	.lst-detail-topic li + li {
		margin-top: 3vw;
		margin-left: 0;
	}
	.fig-topic {
		width: 28vw;
		margin-right: 3vw;
		margin-bottom: 0;
	}
	.fig-topic img  {
		width: 27.5vw;
		height: 20vw;
	}
	.tx-topic {
		width: 53vw;
	}
}

/* アンカー
---------------------------------------------------------------------------*/
.tx-anchors {
	min-height: 92px;
}
@media screen and (max-width: 768px){
	.tx-anchors {
		min-height: 31vw;
	}
}


/* パーティープラン
---------------------------------------------------------------------------*/
.box-partyplan {
	max-width: 1100px;
	width: 100%;
	margin: 0 auto;
	padding: 30px;
	background-color: #FFFFFF;
}
.box-partyplan + .box-partyplan {
	margin-top: 20px;
}
.fig-partyplan {
	width: 320px;
}
.fig-partyplan img {
	width: 100%;
	height: auto;
}
.tx-partyplan {
	width: 670px;
}
.tx-partyplan .subttl {
	padding-bottom: 10px;
	border-bottom: 1px dotted #0050A0;
}
.sche-partyplan {
	font-size: .17rem;
	margin-bottom: 20px;
	padding-bottom: 10px;
	border-bottom: 1px dotted #0050A0;
}
.bdy-partyplan p + p {
	margin-top: 1em;
}
.btn-partyplan {
	margin-top: 40px;
}
.btn-partyplan a {
	width: 240px;
	height: 60px;
}
@media screen and (max-width: 1024px){
	.tx-partyplan {
		padding-left: 2vw;
	}
}
@media screen and (max-width: 768px){
	.box-partyplan {
		width: calc(100vw - 6vw);
		padding: 5vw 3vw;
	}
	.box-partyplan + .box-partyplan {
		margin-top: 3w;
	}
	.fig-partyplan {
		margin-bottom: 3vw;
	}
	.tx-partyplan {
		padding-left: 0;
	}
	.tx-partyplan .subttl {
		margin-bottom: 2vw;
		padding-bottom: 2vw;
	}
	.sche-partyplan {
		margin-bottom: 3vw;
		padding-bottom: 2vw;
		font-size: 4.5vw;
	}
	.btn-partyplan a {
		width: 100%;
		height: 12vw;
	}
	.btn-partyplan {
		margin-top: 5vw;
	}
}


/* 詳細
---------------------------------------------------------------------------*/
.box-details {
	padding-bottom: 60px;
	margin-bottom: 60px;
}
@media screen and (max-width: 768px){
	.box-details {
		margin-bottom: 8vw;
		padding-bottom: 8vw;
	}
}

/* ボタン */
.btn-details {
	margin-top: 60px;
}
.box-details + .btn-details {
	margin-top: -90px;
	margin-bottom: 60px;
}
@media screen and (max-width: 768px){
	.btn-details {
		margin-top: 5vw;
		margin-bottom: 8vw;
	}
}


/* ご宴会場について
---------------------------------------------------------------------------*/
.box-banquetrooms {
	padding-top: 60px;
	padding-bottom: 60px;
	background:linear-gradient(180deg,transparent 0%,transparent 45%,#F2F1ED 45%,#F2F1ED 100%);
}
.box-banquetrooms.none {
	padding-bottom: 0;
	background: none;
}
.catch-banquetrooms {
	margin-bottom: 30px;
}
.box-banquetrooms02 {
	margin-bottom: 0;
	padding-bottom: 0;
}
.box-banquetrooms.none .box-banquetrooms02 {
	padding-bottom: 60px;
}
.btn-banqetrooms {
	margin-top: 40px;
}
.btn-banqetrooms a {
	width: 224px;
	height: 60px;
}
.box-type-banquetrooms {
	margin-top: 40px;
}
.box-type-banquetrooms li {
	width: 242px;
}
.box-type-banquetrooms li + li {
	margin-left: 24px;
}
.fig-type-banquetrooms {
	margin-bottom: 10px;
}
.cap-banquetrooms {
	font-size: .18rem;
}
.box-banquetrooms03 {
	margin-top: 60px;
}
.tbl-banquetrooms {
	width: 100%;
	margin-top: 10px;
	border-top: 1px dotted #0050A0;
}
.tbl-banquetrooms th,
.tbl-banquetrooms td {
	padding: 10px 10px;
	text-align: center;
	font-size: .18rem;
	border-bottom: 1px dotted #0050A0;
	border-right: 1px dotted #0050A0;
	white-space: nowrap;
}
.tbl-banquetrooms th:last-of-type,
.tbl-banquetrooms td:last-of-type {
	border-right: none;
}
.tbl-banquetrooms th:first-of-type,
.tbl-banquetrooms td:first-of-type {
	width: 200px;
	text-align: left;
	white-space: pre-wrap;
}
.tbl-banquetrooms th {
	background-color: #F2F1ED;
}
.tbl-banquetrooms td span {
	font-size: .14rem;
}
.lst-attr {
	margin-top: 20px;
}
.lst-attr li {
	position: relative;
	padding-left: 1em;
}
.lst-attr li::before {
	position: absolute;
	content: "●";
	left: 0;
	top: 0;
}
@media screen and (max-width: 768px){
	.box-banquetrooms {
		padding-top: 8vw;
		padding-bottom: 8vw;
	}
	.box-banquetrooms.none .box-banquetrooms02 {
		padding-bottom: 5vw;
	}
	.catch-banquetrooms {
		margin-bottom: 5vw;
	}
	.btn-banqetrooms a {
		width: 100%;
		height: 12vw;
	}
	.btn-banqetrooms {
		margin-top: 5vw;
	}
	.box-type-banquetrooms {
		margin-top: 3vw;
	}
	.box-type-banquetrooms li,
	.box-type-banquetrooms li + li {
		width: 49%;
		margin-right: 2%;
		margin-left: 0;
		margin-top: 2vw;
	}
	.box-type-banquetrooms li:nth-of-type(2n) {
		margin-right: 0;
	}
	.fig-type-banquetrooms {
		margin-bottom: 3vw;
	}
	.cap-banquetrooms {
		font-size: 4vw;
	}
	.box-banquetrooms03 {
		margin-top: 5vw;
	}
	.tbl-banquetrooms {
		margin-top: 3vw;
	}
	.tbl-banquetrooms th:first-of-type,
	.tbl-banquetrooms td:first-of-type {
		width: auto;
	}
	.tbl-banquetrooms th,
	.tbl-banquetrooms td {
		padding: 2vw .5vw;
		font-size: 4vw;
		line-height: 140%;
	}
	.tbl-banquetrooms td span {
		font-size: 2.5vw;
		letter-spacing: 0;
	}
	.lst-attr {
		margin-top: 3vw;
	}
}




/* 各種ご利用料金
---------------------------------------------------------------------------*/
.block-price {
	margin-top: 60px;
}
.box-price .box-spec {
	margin-top: 20px;
}
.tx-price {
	width: 470px;
}
.box-price .subttl {
	margin-right: 10px;
	margin-bottom: 0;
}
.fig-price {
	width: 520px;
}
.attr-price {
	position: relative;
	margin-top: 10px;
	padding-left: 1em;
}
.attr-price::before {
	position: absolute;
	left: 0;
	top: 0;
	content: "※";
}
.cap-price {
	margin-top: 10px;
	text-align: right;
}
.box-spec dt {
	width: 40%;
}
.box-spec dd {
	width: 60%;
	text-align: center;
}
@media screen and (max-width: 1024px){
	.tx-price {
		padding-right: 2vw;
	}
}
@media screen and (max-width: 768px){
	.block-price {
		margin-top: 8vw;
	}
	.box-price .box-spec {
		margin-top: 3vw;
	}
	.attr-price,
	.cap-price {
		margin-top: 2vw;
	}
	.fig-price {
		margin-top: 5vw;
	}
	.tx-price {
		padding-right: 0;
	}
}

/* お飲物料金 */
@media screen and (max-width: 768px){
.block-price-drink .box-spec:last-child {
    margin-top: 0;
	border-top: none;
}
}
.block-price-drink .box-price dl{
	width: 50%;
}
@media screen and (max-width: 768px){
.block-price-drink .box-price dl{
	width: 100%;
}
}
.block-price-drink .box-spec dt {
	width: 50%;
}
.block-price-drink .box-spec dd {
	width: 50%;
	text-align: center;
}
@media screen and (max-width: 768px){
	.block-price-drink .box-spec dt {
		width: 50%;
	}
	.block-price-drink .box-spec dd {
		width: 50%;
		text-align: center;
	}
	.sp_none {
		display: none;
	}
}
.block-price-drink .box-spec dt.line01,
.block-price-drink .box-spec dd.line01{
	height: 2.8em;
}
.block-price-drink .box-spec dt.line02,
.block-price-drink .box-spec dd.line02{
	height: 2.8em;
}
@media screen and (max-width: 768px){
.block-price-drink .box-spec dt.line01,
.block-price-drink .box-spec dd.line01{
	height: auto;
}
.block-price-drink .box-spec dt.line02,
.block-price-drink .box-spec dd.line02{
	height: auto;
}
}


/* 備品料金 */
.box-bihins > * {
	width: 45%;
	margin-top: 20px;
}
.block-price-bihin .box-spec {
	margin-bottom: 10px;
}
.block-price-bihin .box-spec dt {
	width: 45%;
}
.block-price-bihin .box-spec dd {
	width: 55%;
	text-align: center;
}
@media screen and (max-width: 768px){
	.box-bihins > * {
		margin-top: 5vw;
	}
	.block-price-bihin .box-spec {
		margin-bottom: 0;
	}
}


/* ご利用上のお願い
---------------------------------------------------------------------------*/
.lst-goriyo {
	margin-bottom: 1em;
}
.lst-goriyo li {
	position: relative;
	padding-left: 1em;
}
.lst-goriyo li::before {
	position: absolute;
	content: "●";
	left: 0;
	top: 0;
}
.btn-det {
	width: 460px;
	margin: 40px auto 0;
}
.btn-det a {
	width: 100%;
	height: 60px;
}
.btn-det .icon {
	margin-right: 5px;
}
.btn-det .icon img {
	display: block;
}
@media screen and (max-width: 768px){
	.btn-det a {
		height: 15vw;
	}
	.btn-det .icon {
		margin-right: 2vw;
	}
	.btn-det {
		width: 100%;
		margin-top: 5vw;
	}
}


/* お問い合わせ
---------------------------------------------------------------------------*/
.box-bg {
	margin-top: 50px;
	padding: 15px 80px;
	background-color: #B08829;
	color: #FFFFFF;
}
.box-bg p {
	font-size: .17rem;
}
.box-bg > span {
	display: block;
	width: 1px;
	height: 50px;
	background-color: #D7C394;
}
.num-tel-reservation span {
	font-size: .34rem;
}
.bdr .subttl {
	margin-bottom: 0;
	padding: 10px 0;
	font-weight: 700;
}
.bdr .subttl span {
	font-size: .3rem;
}
@media screen and (max-width: 768px){
	.box-bg {
		margin-top: 5vw;
		padding: 3vw;
		text-align: center;
	}
	.box-bg p {
		font-size: 4vw;
	}
	.box-bg span {
		width: 100%;
		height: 1px;
		margin: 2vw 0;
	}
	.num-tel-reservation span {
		font-size: 8vw;
	}
}






