@charset "UTF-8";
@import url("../../common/css/style-a-sp.css");

/* ---------------------
	- common setting（全体に共通する部分）body、行間など
	- header（ヘッダー部分）ロゴ、住所　ヘッダーの背景
	- keyVisual（スライドショーに関する項目）
	- nav（メニューに関する項目）2ページ目の画像も
	- headline（メンテナンスのお知らせなど、全体の告知に関する項目）
	- freeArea（プラグインの表示に関する項目）
	- contents（各ページの共通部品）<h2>（大見出し）、<table> など
	- footer（フッター部分）ロゴ、住所、サイトマップ、TOP ボタン
	- page style（各ページ内限定の設定）#room、#member 内だけなど要素
--------------------- */

/* common setting
----------------------------------------------- */


/* background settings */
body {
	color: #111111;
	background-color: #101010;
}

body::before {
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	height: 100vh;
	width: 100vw;
	background-image: url("../img/A-background.png");
	background-repeat: no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
	background-position: center center;
	content: "";
 }

body:not(#hotelTop) {
	background-color: #101010;
}

body:not(#hotelTop) div#wrapper::before {
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
	height: 100vh;
	width: 100vw;
	background-image: url("../img/a_background_03.png");
	background-repeat: no-repeat;
	-webkit-background-size: auto;
	background-size: auto;
	background-position: center center;
	content: "";
 }

 body#hotelTop main div#topic {
	background-color: transparent;
	background-image: url("../img/a_background.png");
	background-position: top center;
	background-size: 150% auto;
	background-repeat: repeat;
}

body#hotelTop main div#whatsnew {
	background-color: #333;
}

body#hotelTop main div#access {
	background-color: transparent;
	background-image: url("../img/../img/a_background_03.png");
	background-position: top center;
	background-size: 150% auto;
	background-repeat: repeat;
}

body:not(#hotelTop) main div#mainWrapper {
	background-color: #ffffff;
	margin: 10px;
}

body:not(#hotelTop) main {
	background-color: transparent;
	padding: 0;
	min-height: 0px;
}

#whatsnew section div.container {
    background-color: #ffffff;
    padding: 10px;
}

main div.container {
    padding-left: 10px;
	padding-right: 10px;
}

body:not(#hotelTop) main {
    margin-top: 20px;
    margin-bottom: 30px;
}


/* header
----------------------------------------------- */
/*ヘッダー店舗名　非表示*/
header div#headerLogo::after {
	content: none;
}
/*ヘッダー背景*/

header {
	background-color: #101010;
}

header div.container{
	background-color:#1a1a1a;
	border-bottom: none;
}

/*ヘッダー18禁ロゴ*/
header div#headerStop18Img{
	background-image: url(../img/icon_stop_18_clear.svg);
	right: 15px;
}

/*ログインボタン背景*/
header a#btnLogin{
	background: transparent;
}


/* btnLogin
------------------------ */
header a#btnLogin {
	position: relative;
	width: 50px;
	height: 50px;
	top: 0px;
	right: 10px;
	margin: 0px;
	border-radius: 0px;
	transform: none;
}

header a#btnLogin:hover {
	background-color: transparent;
	background-image: none;
	filter: none;
}

header a#btnLogin::after {
	content: "";
	background: transparent url(../img/login-icon-sp.png);
	display: inline-block;
	background-size: contain;
	background-repeat: no-repeat;
	position: relative;
	top: 0px;
	right: 20px;
	margin: 0px;
	width: 50px;
	height: 50px;
}

header a#btnLogin:hover::after {
	opacity: 0.875;
	filter: brightness(250%);
}

header a#btnLogin>span {
	width: 100%;
	height: 100%;
	background: transparent;
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	color: #FFFFFF;
	padding-top: 15px;
	border: none;
}

header a#btnLogin>span::after {
	display: none;
}

/*ヘッダー Yahoo地図ロゴ対策*/
/*header.top-fix-position {z-index:98;}*/

/* Logo
------------------------ */
header div#headerLogo {
	width: 140px;
	height: 48px;
	margin-top: 2.5px;
	background-position: left;
}

/* keyVisual
----------------------------------------------- */
div#keyVisual,
div#keyVisual ul {
	height: 180px;
}

/* nav
----------------------------------------------- */

/*ヘッダーナビ背景*/
div#priorityNaviContainer {
	background-color: transparent;
}

/*グローバルメニュー／ヘッダーナビメニューボタン*/
nav#priorityNavi ul li {
	min-width: 140px;
	background-color:#fff;
}

/*グローバルメニューテキスト*/
nav#priorityNavi ul li a {
	height: 30px;
	color: #b5b100;
	font-weight: 500;
	/*text-shadow: 1px 1px 1px rgba(150, 150, 150, 0.75);*/
}

nav#priorityNavi ul li a:hover{
	color: #b5b100;
	text-shadow: 1px 1px 1px rgba(150, 150, 150, 0.75);
	font-weight: 500;
}

div#priorityNaviWrappar {
	overflow: visible;
	background-color: transparent;
}

/*ハンバーガーメニューボタン＆ライン色*/
#btnOpenMainNavi,
#btnOpenMainNavi.close_bg {
	background: rgba(255, 255, 255, 0.95);
}

#btnOpenMainNavi > span,
#btnOpenMainNavi > span::before,
#btnOpenMainNavi > span::after, 
#btnOpenMainNavi>span.close::before,
#btnOpenMainNavi>span.close::after {
	background: #242278;
}

/*ハンバーガーメニュー展開時 背景色 & 位置*/
 nav#mainNavi{
	background-color: rgba(25, 25, 25, 0.875);
	z-index:11;
}

nav#mainNavi.top-fix-position>ul {
	top: 3.5em;
}

/*ハンバーガーメニュー　テキスト*/
nav#mainNavi ul li a {
    color: #ffffff;
    font-weight: 500;
	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.75);
	text-shadow: 1px 1px 1px rgba(150, 150, 150, 0.75);
}

nav#mainNavi ul li a:hover {
	color: #b5b100;
	font-weight: 500;
	text-shadow: 1px 1px 1px #b5b100;
}


/* headline
----------------------------------------------- */
div#headInformation,
div#headNotice {
	padding: 0;
}

div#headInformation a,
div#headNotice a {
	font-size: 1.125em;
}


/* freeArea フリーエリア
----------------------------------------------- */
div#freeArea2, div#freeArea3{
	margin-top: 0px;
}
.freestyle li{
	float: none;
	width: 100%;
	padding-bottom: 15px;
}

/* main
----------------------------------------------- */

/* contents
----------------------------------------------- */
/* 大見出し<h2> */

h2 {
	margin: 0 0 0.75rem 0;
}

body#hotelTop main div#topic h2,
body#hotelTop main div#whatsnew span.caption,
body#hotelTop main div#access span.caption {
	font-size: 16px;
	padding: 0px;
	margin-bottom: 8px;
}

body#hotelTop main div#topic h2:before {
	background: url(../img/a_ornament_01_left.png);
}

body#hotelTop main div#topic h2:after {
	background: url(../img/a_ornament_01_right.png);
}

body#hotelTop main div#whatsnew span.caption:before {
	background: url(../img/a_ornament_01_left.png);
}

body#hotelTop main div#whatsnew span.caption:after {
	background: url(../img/a_ornament_01_right.png);
}

body#hotelTop main div#access span.caption:before {
	background: url(../img/a_ornament_02_left.png);
}

body#hotelTop main div#access span.caption:after {
	background: url(../img/a_ornament_02_right.png);
}

body#hotelTop main div#topic h2:before,
body#hotelTop main div#topic h2:after,
body#hotelTop main div#whatsnew span.caption:before,
body#hotelTop main div#whatsnew span.caption:after,
body#hotelTop main div#access span.caption:before,
body#hotelTop main div#access span.caption:after {
	content: "";
	background-size: 35%;
	background-repeat: no-repeat;
	background-position: center;
	width: 88px;
	display: block;
}

body#hotelTop main div#topic h2:before,
body#hotelTop main div#whatsnew span.caption:before,
body#hotelTop main div#access span.caption:before {
	margin: 0px -15px 0px 0px;
}

body#hotelTop main div#topic h2:after,
body#hotelTop main div#whatsnew span.caption:after,
body#hotelTop main div#access span.caption:after {
	margin: 0px 0px 0px -15px;
}


/* 小見出し<h3> */
body#hotelTop main div#topic h3 {
	margin-bottom: 10px;
	font-weight: normal;
}

/*記事　左右余白*/
body#hotelTop div#whatsnew div.container,
body#hotelTop div#access div.container {
	padding-left: 10px;
	padding-right: 10px;
}

/* footer
----------------------------------------------- */

/*footer p#copyright {
	color: #777777;
}*/

/* フッター　TOPボタン */
footer {
	padding-bottom: 0px;
}

footer div#linkPageTop {
	height: 0px;
}

footer div#linkPageTop a {
	position: fixed;
	bottom: 12px;
	right: 12px;
	z-index: 999;
	display:none;
	padding: 22px 11px 8px;;
	background: rgba(188,177,0,0.9);
	filter: opacity(0.80);
	color: #ffffff;
	border-radius: 50%;
	text-decoration: none;
	top: inherit;
	left: inherit;
}

footer div#linkPageTop a::after {
	content: "TOP";
	color: #151515;
}


/*フッターメニュー背景と下線*/
footer div#footerNavi nav ul {
	background-color: #2e2c26;
	border-top: 1px solid rgb(225, 225, 225, 0.25);
}

footer div#footerNavi nav ul li {
	background-color: transparent;
	border-bottom: 1px solid rgb(255, 255, 255, 0.25);
}

/*フッター18禁文字*/
footer div#footerStop18 div#footerStop18Msg>span{
	color: #333;
}

/*グループリンク、オフィシャルリンクの文字など*/
footer ul.link-list li {
	border: 1px solid rgba(181,177, 0, 0.3);
	transition:border-color 0.3s;
}

footer ul.link-list li a {
	background-color: rgba(181, 177, 0, 0.3);
	color:#333;
	text-align: left;
	transition: background-color 0.3s, color 0.3s;
}

footer ul.link-list li a:hover {
	background-color: rgba(181, 177, 0, 0.8);
	color: #333;
	transition: background-color 0.3s, color 0.3s;
}

footer ul.link-list li a::before {
	border-color: transparent transparent transparent #333;
	transition: border-color 0.3s;
}

footer ul.link-list li a:hover::before {
	border-color: transparent transparent transparent #ffffff;
	transition: border-color 0.3s;
}

/*フッター住所*/
footer div#footerHotelInfo>ul li{
color: #333;
}

/*フッター コピーライト*/
footer div#copyright{
color: #666;
}


/* page style
----------------------------------------------- */
/* INFORMATION */
/*main div#topic {
	position: relative;
}*/

ul.information {
	text-align: center;
}

ul.information li {
	display: inline-flex;
	border-radius: 0px;
	margin-bottom: 3px;
	width: calc((100% - 10px)/3);
	height: 118px;
	margin-right: 0px;
	background-position: center;
}

ul.information li:not(:nth-child(3n)) {
	margin-right: 0px;
}

ul.information li a {
	display: block;
	width: 100%;
	height: 100%;
}

ul.information li a.link span.icon,
ul.information li a.secretLink span.icon {
	height: 68px;
	background-size: 35%,0 0;
	margin-top: 0px;
}

ul.information li:hover a.link span.icon,
ul.information li:hover a.secretLink span.icon {
	background-size: 0 0,35%;
}

ul.information li:nth-child(4) span.icon {
	background-image: url("../img/icon_menu_04.png"),
	url("../img/icon_menu_04_on.png");
	background-size: 35%,0 0!important;
}

ul.information li:nth-child(4):hover span.icon{
	background-size: 0 0,35%!important;
}

/*
ul.information li:nth-child(1):hover span.icon,
ul.information li:nth-child(2):hover span.icon,
ul.information li:nth-child(3):hover span.icon,
ul.information li:nth-child(4):hover span.icon,
ul.information li:nth-child(5):hover span.icon,
ul.information li:nth-child(6):hover span.icon {
	background-size: 0 0,30%;
}
*/


ul.information li span.icon-name-character {
	font-size: 11px;
	padding: 5px 10px 0px 10px;
}

ul.information li a.link span.background,
ul.information li a.secretLink span.background {
	display: none;
}

body#member main ul.information li span.icon {
	background-size: 35%,0 0;
}

body#member main ul.information li:hover a.link span.icon {
	background-size: 0 0,35%;
}

body#member ul.information li{
	display: inline-flex;
    border-radius: 0px;
    margin-bottom: 3px;
    width: calc((100% - 10px)/3);
    height: 118px;
    margin-right: 0px;
    background-position: center;
}
/*
body#member main ul.information li:nth-child(1):hover span.icon,
body#member main ul.information li:nth-child(2):hover span.icon,
body#member main ul.information li:nth-child(3):hover span.icon,
body#member main ul.information li:nth-child(4):hover span.icon,
body#member main ul.information li:nth-child(5):hover span.icon,
body#member main ul.information li:nth-child(6):hover span.icon {
    background-size: 0 0,30%;
}
*/

/*
ul.information li:nth-child(4) span.icon-name-character {
    font-size: 11px;
    padding: 5px 25px 0px 25px;
}
*/

body#member ul.information li:nth-child(4) span.icon,
ul.information li:nth-child(4) span.icon-member {
	background-image: url("../img/information-icon-member-04.png"),
	url("../img/information-icon-member-04-on.png");
	background-size: 35%,0 0!important;
}

body#member main ul.information li:nth-child(4):hover span.icon,
ul.information li:nth-child(4):hover span.icon-member {
	background-size: 0 0,35%!important;
	filter: none;
}

/* PCのみ表示 */
.pc_only{
	display:none;
}

/* スマホ再表示 */
.smart_only{
	display:inline !important;
}

/* Youtube */
.youtube{
	width:100%;
	height:187.5px;
	text-align:center;
}

/* フードメニュー */
.foodmenu{
	width:100%;
}

.foodmenu_left{
	width:100%;
	font-size:14px;
	line-height:30px;
	padding-bottom:10px;
}

.foodmenu_right{
	width:100%;
}

img.foodmenu_right{
	width:90%;
	vertical-align:center;
}

table.food-menu-sp {
	width: auto;
	border-right: 1px solid transparent;
	border-bottom: 1px solid transparent;
	border-collapse: collapse; border-spacing: 0;
}

table.food-menu-sp tbody {
	display: flex;
	width: auto;
}

table.food-menu-sp tbody tr {
	display: flex;
	flex-direction: column;
}

table.food-menu-sp thead {
	display: flex;
	float: left;
}

table.food-menu-sp thead th:first-child:before {
	padding: 1em;
}

table.food-menu-sp th,
table.food-menu-sp td {
	display: block;
	width: auto;
	padding: 0em 0.25em;
	text-align: center;
	border-top: 1px solid transparent;
	border-left: 1px solid transparent;
} 


/* 客室一覧 */
body#room li.roomImgList {
	width: 100px;
	margin: 0 15px;
}

body#room div.item-table>dl>dt {
	width: 100%;
}

/* 客室詳細 */
body#roomdetail li.equipment {
	padding-left: 1.5em;
}

body#roomdetail div.item-table>dl>dt {
	width: 100%;
}

body#roomdetail div.priceTableArea {
	padding: 1rem 0.5rem;
}

body#roomdetail div.roomArea {
    margin: auto;
    padding: 1rem 0.25rem;
}

/* service */
body#service ul.equipment>li {
	vertical-align: top;
	min-width: 100%;
	padding: 0.875em 1em 1em 1em;
}

/* ranking */
body#member_ranking #mainWrapper  {
	padding-bottom: 20px;
}

/* table */
table {
	width: 100%;
}

/*table.hyouyou_bordercolor {
	border-collapse: separate;
	border-spacing: 1em;
}

th.honbun,
td.honbun {
	display: block;
	width: 100%;
	border: 1px solid #666666;
}

th.honbun {
	background-color: #f35a17;
	color: #ffffff;
}

td.honbun {
	background-color: #ffffff;
	color: #111111;
}*/

/*iflame-sp 対応*/
.iframe-sp {
	position: relative;
	width: 100%;
	height: 100%;
	padding: calc(3 / 4 * 100%) 0 0 0;
	margin-bottom: 2em;
}
   
.iframe-sp iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}