@charset "utf-8";

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

/* メインビジュアル
---------------------------------------------------------------------------*/
.block-mv {
	background-image: url(../img/restaurant/mv.jpg);
	text-shadow: 
		0px 0px 9px rgba(87, 98, 100, .7), 
		2px 2px 7px rgba(87, 98, 100, .7), 
		2px -2px 7px rgba(87, 98, 100, .7), 
		-2px 2px 7px rgba(87, 98, 100, .7), 
		-2px -2px 7px rgba(87, 98, 100, .7);
}
@media screen and (max-width: 768px){
	.block-mv {
		background-image: url(../img/restaurant/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;
	}
}


/* ページタイトル
---------------------------------------------------------------------------*/
.box-pagettl {
	padding: 40px 0;
}
.floor-pagettl {
	margin-right: 10px;
	font-size: .38rem;
}
.name-pagettl {
	margin-right: 10px;
	margin-bottom: 0;
}
@media screen and (max-width: 768px){
	.box-pagettl {
		padding: 8vw 0;
	}
	.floor-pagettl {
		margin-right: 2vw;
		font-size: 6vw;
	}
	.name-pagettl {
		margin-right: 2vw;
	}
	.logo-pagettl {
		width: 100%;
		margin-top: 2vw;
		text-align: center;
	}
}

/* メニュー
---------------------------------------------------------------------------*/
.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;
	}
}

/* 記憶に残したい景色と料理
---------------------------------------------------------------------------*/
.block-points .ttl-cnts-ja {
	padding-top: 40px;
	margin-bottom: 50px;
}
@media screen and (max-width: 768px){
	.block-points .ttl-cnts-ja {
		padding-top: 5vw;
		margin-bottom: 5vw;
	}
}


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


/* 詳細
---------------------------------------------------------------------------*/
.box-det {
	margin-bottom: 60px;
}
.box-det .ttl-rowline {
	width: 500px;
	margin: 30px auto;
	border-bottom: 1px dotted #0050A0;
}
.lead-det {
	font-size: .18rem;
}
.box-det.lay-skew.mini .fig-lay-skew {
	padding-top: 70px;
}
.box-det.lay-skew.mini .fig-lay-skew img {
	max-width: 100%;
	width: auto;
	height: auto;
}
.box-det .tx-lay-skew {
	padding-top: 60px;
}
@media screen and (max-width: 768px){
	.lay-skew.mini .fig-lay-skew {
		padding-top: 0;
	}
	.box-det {
		margin-bottom: 8vw;
	}
	.box-det .ttl-rowline {
		width: 100%;
		margin: 0 auto 2vw;
		padding-bottom: 2vw;
	}
	.lead-det {
		font-size: 4.5vw;
	}
	.box-det.lay-skew.mini .fig-lay-skew {
		padding: 2vw 3vw 0;
	}
	.box-det .tx-lay-skew {
		padding: 3vw;
	}
}

/* 画像 */
.fig-main-det {
	margin-top: 30px;
}

@media screen and (max-width: 768px){
	.fig-main-det {
		margin-top: 5vw;
	}
}

/* テキスト */
.tx-det {
	margin-top: 40px;
  max-width: 600px;
}
@media screen and (max-width: 768px){
	.tx-det {
		margin-top: 5vw;
    max-width: inherit;
	}
}


/* アラカルト
---------------------------------------------------------------------------*/
.block-alacarte {
	padding-bottom: 60px;
}
.block-alacarte .lead-details {
	letter-spacing: -.04em;
}
@media screen and (max-width: 768px){
	.block-alacarte {
		margin-bottom: 8vw;
		padding-bottom: 5vw;
	}
	.block-alacarte.box-det .ttl-rowline {
		border-bottom: none;
	}
	.block-alacarte .lead-details {
		letter-spacing: .1em;
		font-size: 3.8vw;
	}
}

/* 画像 */
.figlft {
	margin-right: 12px;
}
.figlft img,
.figrit img {
	width: 227px;
	height: 327px;
	object-position: center;
	object-fit: cover;
	font-family: "object-position: center; object-fit: cover;"
}
@media screen and (max-width: 768px){
	.figlft,
	.figrit {
		width: 49%;
		text-align: center;
	}
	.figlft {
		margin-right: 2%;
	}
}

/* ボタン */
.btn-rooms {
}
.btn-rooms a {
	width: 224px;
	height: 60px;
}
@media screen and (max-width: 1024px){
	.btn-rooms {
		margin-top: 2vw;
	}
	.btn-rooms li + li {
		margin-left: 2vw;
	}
}
@media screen and (max-width: 768px){
	.btn-rooms {
		margin-top: 5vw;
	}
	.btn-rooms li + li {
		margin-top: 2vw;
		margin-left: 0;
	}
	.btn-rooms a {
		width: 100%;
		height: 12vw;
	}
}


/* ランチ
---------------------------------------------------------------------------*/
.box-carousel-lunch {
	margin-top: 30px;
}
.block-lunch .slick-slide {
	padding: 5px;
}
.block-lunch h4.ttl-cnts-ja {
	margin-bottom: 0;
}
.block-lunch .ttl-cnts-ja {
	letter-spacing: 0;
}
.block-lunch .ttl-cnts-ja span {
	font-size: .3rem;
}
.block-lunch .ttl-cnts-ja span.tax {
	font-size: .2rem;
}
.bg-resthalf {
	padding-bottom: 60px;
	/*background:linear-gradient(180deg, #FFFFFF 0%, #FFFFFF 50%, #F2F1ED 50%, #F2F1ED 100%);*/
}
.bg-resthalf .lunch_img{
    text-align: center;
    margin-top: 40px;
}
.btn-lunch {
	margin-top: 40px;
}
.btn-lunch a {
	width: 224px;
	height: 60px;
}
.box-carousel-lunch {
	height: 460px;
}
.slick-slide img {
	height: 460px;
	object-fit: cover;
	object-position: center center;
	font-family: "object-fit: cover; object-position: center center;";
}
@media screen and (max-width: 768px){
	.bg-resthalf {
		padding-bottom: 8vw;
		/*background:linear-gradient(180deg, #FFFFFF 0%, #FFFFFF 40%, #F2F1ED 40%, #F2F1ED 100%);*/
	}
	.box-carousel-lunch {
		margin-top: 5vw;
	}
	.block-lunch .slick-slide {
		padding: 0;
	}
	.btn-lunch {
		margin-top: 5vw;
	}
	.btn-lunch a {
		width: 100%;
		height: 12vw;
	}
	.box-carousel-lunch {
		height: 45vw;
	}
	.slick-slide img {
		height: 45vw;
	}
}

/* 朝食
---------------------------------------------------------------------------*/
.block-breakfast .ttl-cnts-ja span {
	font-size: .3rem;
}
.block-breakfast .ttl-cnts-ja span.tax {
	font-size: .2rem;
}


/* 1F　レストラン オーシャン基本情報
---------------------------------------------------------------------------*/
.block-basicinfo {
	padding-bottom: 60px;
}
.block-basicinfo .td-tbl td,
.block-basicinfo .td-tbl th {
	font-size: .16rem;
	letter-spacing: -.02em;
	vertical-align: top;
}
.block-basicinfo .td-tbl td:nth-of-type(1) {
	padding-right: .5em;
	white-space: nowrap;
}
@media screen and (max-width: 768px){
	.block-basicinfo .td-tbl td,
	.block-basicinfo .td-tbl th {
		padding: 0vw;
		font-size: 4vw;
		line-height: 150%;
	}
	.block-basicinfo .td-tbl td:nth-of-type(2n) {
		padding-left: 1vw;
	}
	.block-basicinfo {
		padding-bottom: 8vw;
	}
}

/* 禁煙のお知らせ */
.box-nonsmoke {
	margin-top: 50px;
	padding: 15px 30px;
	background-color: #F2F1ED;
}
.box-nonsmoke .subttl {
	margin-bottom: 0;
}
@media screen and (max-width: 1024px){
	.lead-nonsmoke {
		width: 70%;
	}
}
@media screen and (max-width: 768px){
	.box-nonsmoke {
		margin-top: 5vw;
		padding: 3vw;
	}
	.box-nonsmoke .icon {
		margin-right: 2vw;
	}
	.lead-nonsmoke {
		width: 100%;
		margin-top: 3vw;
	}
}

/* 予約・お問い合わせ */
.box-bg {
	margin-top: 20px;
	padding: 15px 70px;
	background-color: #B08829;
	color: #FFFFFF;
}
.block-forsailor .box-bg {
	margin-bottom: 30px;
}
.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){
	.bdr {
		padding: 3vw;
		margin-bottom: 5vw;
	}
	.box-bg {
		margin-top: 3vw;
		padding: 3vw;
		text-align: center;
	}
	.box-bg p {
		font-size: 4vw;
	}
	.box-bg span {
		width: 100%;
		height: 1px;
		margin: 2vw 0;
	}
	.bdr .subttl {
		padding: 2vw;
	}
	.bdr .subttl span {
		font-size: 5.5vw;
	}
	.block-forsailor .box-bg {
		margin-bottom: 3vw;
	}
}




/* 館内のご案内
---------------------------------------------------------------------------*/
.block-floormap {
	margin-bottom: 10px;
}
.tbl-floormap {
	border-collapse: separate;
	border-spacing: 2px;
}
.tbl-floormap th,
.tbl-floormap td {
	padding: 10px 15px;
}
.tbl-floormap th {
	width: 146px;
	background-color: #0050A0;
	color: #FFFFFF;
}
.tbl-floormap td {
	width: 370px;
	background-color: #FFFFFF;
}
@media screen and (max-width: 768px){
	.block-floormap {
		margin-bottom: 2vw;
	}
	.fig-floormap {
		margin-bottom: 5vw;
	}
	.tbl-floormap th,
	.tbl-floormap td {
		padding: 3vw;
	}
	.tbl-floormap th {
		width: 20%;
	}
	.tbl-floormap td {
		width: 80%;
	}
}

/* 海を感じる設え
---------------------------------------------------------------------------*/
.fig-feeltheocean {
	margin-top: 20px;
}
@media screen and (max-width: 768px){
	.fig-feeltheocean {
		margin-top: 5vw;
	}
	.lead-feeltheocean {
		padding-left: 3vw;
		padding-right: 3vw;
	}
}

/* 詳細
---------------------------------------------------------------------------*/
.box-details {
	padding-bottom: 60px;
	margin-bottom: 60px;
}
.lead-details {
	line-height: 180%;
}
@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;
}
.btn-details a {
	width: 400px;
	height: 60px;
	margin: 0 auto;
}
@media screen and (max-width: 768px){
	.btn-details {
		margin-top: 5vw;
		margin-bottom: 8vw;
	}
	.box-details + .btn-details {
		margin-top: -14vw;
		padding-left: 3vw;
		padding-right: 3vw;
	}
	.btn-details a {
		width: 100%;
		height: 12vw;
	}
}


/* 宴会場・会議室
---------------------------------------------------------------------------*/
.lst-banquet {
	margin-top: 20px;
}
.fig-banquet {
	margin-bottom: 20px;
}
@media screen and (max-width: 768px){
	.lst-banquet {
		margin-top: 5vw;
	}
	.lst-banquet li + li {
		margin-top: 3vw;
	}
	.fig-banquet {
		width: 40vw;
		margin-bottom: 0;
	}
	.tx-banquet {
		width: 52vw;
	}
}

/* カラオケ・ビリヤード
---------------------------------------------------------------------------*/
.lst-karaoke {
	margin-top: 20px;
}
.fig-karaoke {
	margin-bottom: 20px;
}
.lst-karaoke li {
	width: 400px;
}
.lst-karaoke li + li {
	margin-left: 40px;
}
.lead-karaoke {
	letter-spacing: -.04em;
}
.lst-karaoke .btn-details {
	margin-top: 40px;
	margin-bottom: 60px;
}
.lst-karaoke .tx-name {
	margin-bottom: 10px;
}
@media screen and (max-width: 768px){
	.lst-karaoke {
		margin-top: 5vw;
	}
	.lst-karaoke li {
		width: 100%;
	}
	.lst-karaoke li + li {
		margin-top: 3vw;
		margin-left: 0;
	}
	.fig-karaoke {
		width: 40vw;
		margin-bottom: 0;
	}
	.tx-karaoke {
		width: 52vw;
	}
	.lst-karaoke .btn-details {
		width: 100%;
		margin-top: 3vw;
		margin-bottom: 3vw;
	}
	.lst-karaoke .tx-name {
		margin-bottom: .5vw;
	}
}


/* 駐車場
---------------------------------------------------------------------------*/
.fig-parking img {
	max-width: 520px!important;
	height: 355px!important;
}
.lst-other li {
	width: 320px;
}


/* その他の設備・サービス
---------------------------------------------------------------------------*/
.lead-supple-other {
	margin-top: 40px;
	padding-top: 40px;
	border-top: 1px dotted #0050A0;
}
.fig-other {
	margin-bottom: 20px;
}
.lst-other .tx-name {
	margin-bottom: 10px;
}
@media screen and (max-width: 768px){
	.lead-supple-other {
		margin-top: 4vw;
		padding-top: 4vw;
	}
	.lst-other .tx-name {
		margin-bottom: .5vw;
	}
	.fig-other {
		width: 40vw;
		margin-bottom: 0;
	}
	.tx-other {
		width: 52vw;
	}
	.lst-other li + li {
		margin-top: 3vw;
		margin-left: 0;
	}
}







