*{
    margin: 0;
    padding: 0;
}

body {
  background:url(../img/body_bg.jpg);
  font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif;
  font-weight: 300;
  font-size: 16px;
  color: #555;
  -webkit-font-smoothing: antialiased;
  -webkit-overflow-scrolling: touch;
  overflow-x: hidden;
}

/* グローバルナビ */
.navbar-inverse { padding-top:8px; padding-left:8px;
             background-image:url(../img/pr.png); 
			 background-repeat:repeat-x;  }
			 
.navbar-toggle{
	position:relative;
	float:right;
	padding:9px 10px;
	margin-top:8px;
	margin-right:15px;
	margin-bottom:8px;
	background-color: #333 !important ;
	background-image:none;
	border:1px solid transparent !important;
	border-radius:4px}
	
.navbar-toggle:focus{outline:0}

.navbar-toggle .icon-bar{ display:block;
                          width:22px;
						  height:2px;
						  border-radius:1px
						  }
						  
.navbar-toggle .icon-bar+.icon-bar{
	                      margin-top:4px;
						  }

.header-box {
    color: #000;/*文字色*/
    background: #FFF;
	opacity:0.85;
    border: solid 2px #CC0033;/*線*/
    border-radius: 10px;/*角の丸み*/
}

.container-width { width:50%; }

.navi-ori { width:90%; margin:30px auto; }



/* スクロールナビ */
/*--------------------------------------------------------------
	PC用　予約はコチラボタン
--------------------------------------------------------------*/
#page-top {
	position: fixed;
	right: 1%;
	font-size: 22px;
	z-index: 999;
	bottom:0;
}
#page-top a {
	text-decoration: none;
	color:#595900;
	width: 100%;
	padding: 60px 35px;
	text-align: center;
	display: block;
	border-radius: 50px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50px;
	background-color:#eee8aa;
}


#page-top a:hover {
text-decoration: none;
background-color:#f5f5dc;

}

.page-margin {
font-family: 'Kosugi Maru', sans-serif; } 



/* スクロールナビ */
/*--------------------------------------------------------------
	PC用　予約はコチラボタン2
--------------------------------------------------------------*/
#page-top_2 {
	position: fixed;
	right: 1%;
	font-size: 22px;
	z-index: 999;
	bottom:0;
}
#page-top_2 a {
	text-decoration: none;
	color:#595900;
	width: 100%;
	padding: 50px 35px;
	text-align: center;
	display: block;
	border-radius: 50px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50px;
	background-color:#eee8aa;
}


#page-top_2 a:hover {
text-decoration: none;
background-color:#f5f5dc;

}

.page-margin_2 {
font-family: 'Kosugi Maru', sans-serif; } 


/*--------------------------------------------------------------
	PC 見出し囲い
--------------------------------------------------------------*/
.box-t {
    position: relative;
    margin:60px 0px 0px 0px;
    padding: 0.7em 1em;
    border: dotted 1px #999999;
}

.box-t .box-title {
    position: absolute;
    display: inline-block;
    top: -30px;
    left: -2px;
    padding:4px 10px 0 8px;
    height: 30px;
    line-height: 25px;
    vertical-align: middle;
    font-size: 18px;
    background: #ddd;
    color: #000;
    border-radius: 5px 5px 0 0;
}
.box-t p {
	text-align:left;
    margin: 0 0 0 0; 
    padding: 0;
	color:#333;
}


/*--------------------------------------------------------------
	PC イベント情報
--------------------------------------------------------------*/
.event-t {
    margin:0px 0px 0px 10px;
    padding:0px;
}

.margin-b6 { margin:-10px 0px -25px 0px; padding:0px; border-bottom: dotted 2px #eee; }



.p-room { font-size:16px; }

.margin-top80 { margin-top:80px; }

.pc-none { display:inline; }
.sp-none { display:none; }
.sp-tel { float:right; margin-right:65px; }


/* タイトル */
.bg-slider {
  margin-top: -10px;
  padding-top: 70px;
  text-align: center;
  background-position: center;
  min-height: 500px;
  width: 100%;
    -webkit-background-size:100%;
  -moz-background-size: 100%;
  -o-background-size: 100%;
  background-size: 100%;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.p-main { font-size:16px; }
.br-sp { display: none; }

@media (min-width:768px){
	.navbar-toggle{display:none}
	
	}
			 
/* グラデ */
.nav1 ul {
	font-size: 0;
	box-sizing: border-box;
	width: 100%;
	padding: 4px;
	list-style: none;
	text-align: center;
}
.nav1 li {
	font-size: 18px;

}
.nav1 li a {
	text-decoration: none;
	color:#FFF !important;
	display: block;
}
.nav1 li a:after {
	content: '';
	padding-bottom: 2px; /* 文字と下線に隙間を作る */
	width: 0;
	transition: all 0.3s ease;
	border-bottom: 2px solid #FFF;
	display: block;
}
.nav1 li a:hover:after {
	width: 100%;
	padding-bottom: 2px; /* 文字と下線に隙間を作る */
	border-bottom: 2px solid #FFF;
}

.pr_header { height:70px;
             background-image:url(../img/pr.png); 
			 background-repeat:repeat-x; }

#header-logo { margin:10px 0 0 15px ; }

h1{
  font-family: "Raleway";
  font-weight: 300;
  color: #333;
}

h2 {
	font-size:9px;
	}

h3 {
	color:#fff;
  padding: .5em .75em;
  border: 1px solid #680000;
}

h4 {
	text-align:left;
	font-size:20px;
    padding: 0.5em 0.5em;
    margin: 12px 0;
    color: #333;
    border-left: solid 10px #3399FF;
	border-bottom: solid 1px #3399FF;
}

h5 {
	text-align: center;
	font-size:20px;
    padding: 0.5em 1em;
    margin: 12px 0;
    color: #fff;
	background-color:#333;
}

p {
  line-height: 28px;
  margin-bottom: 25px;
}

.centered {
  text-align: center;
}

/* Links */
a {
  color: #f85c37;
  word-wrap: break-word;
  -webkit-transition: color 0.1s ease-in, background 0.1s ease-in;
  -moz-transition: color 0.1s ease-in, background 0.1s ease-in;
  -ms-transition: color 0.1s ease-in, background 0.1s ease-in;
  -o-transition: color 0.1s ease-in, background 0.1s ease-in;
  transition: color 0.1s ease-in, background 0.1s ease-in;
}

a:hover, a:focus {
  color: #7b7b7b;
  text-decoration: none;
  outline: 0;
}

a:before, a:after {
  -webkit-transition: color 0.1s ease-in, background 0.1s ease-in;
  -moz-transition: color 0.1s ease-in, background 0.1s ease-in;
  -ms-transition: color 0.1s ease-in, background 0.1s ease-in;
  -o-transition: color 0.1s ease-in, background 0.1s ease-in;
  transition: color 0.1s ease-in, background 0.1s ease-in;
}


@media (max-width: 1440px) {
#headerwrap {
  min-height: 400px
}
	
	}


/* PC用メインイメージ領域 */
#roomwrap {
  margin-top: -10px;
  padding-top: 20px;
  text-align: center;
  background-attachment: relative;
  background-position: center center;
  min-height: 320px;
  width: 100%;
  -webkit-background-size: 100%;
  -moz-background-size: 100%;
  -o-background-size: 100%;
  background-size: 100%;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

/* PC用トピックス領域 */
#topics-wrap {
  margin-top: -10px;
  padding-top: 20px;
  text-align: center;
  background-attachment: relative;
  background-position: center center;
  min-height: 320px;
  width: 100%;
  -webkit-background-size: 100%;
  -moz-background-size: 100%;
  -o-background-size: 100%;
  background-size: 100%;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.topics-width { width:90%; }


/* PC用メインイメージ領域 */
#room-header {
  background: url(../img/room_bg.jpg) no-repeat center top;
  margin-top: -10px;
  padding-top: 20px;
  text-align: center;
  background-attachment: relative;
  background-position: center center;
  width: 100%;
  min-height: 200px;
  -webkit-background-size: 100%;
  -moz-background-size: 100%;
  -o-background-size: 100%;
  background-size: 100%;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

/* PC用　料金領域 */
#price-header {
  background: url(../img/price_bg.jpg) no-repeat center top;
  margin-top: -10px;
  padding-top: 20px;
  text-align: center;
  background-attachment: relative;
  background-position: center center;
  min-height: 200px;
  width: 100%;
  -webkit-background-size: 100%;
  -moz-background-size: 100%;
  -o-background-size: 100%;
  background-size: 100%;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

/* PC用　予約領域 */
#reservation-header {
  background: url(../img/reservation_bg.jpg) no-repeat center top;
  margin-top: -10px;
  padding-top: 20px;
  text-align: center;
  background-attachment: relative;
  background-position: center center;
  min-height: 200px;
  width: 100%;
  -webkit-background-size: 100%;
  -moz-background-size: 100%;
  -o-background-size: 100%;
  background-size: 100%;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

/* h4　backカラー */
.acsses-back { 
	background-color: rgba(255,255,255,0.87);
	box-shadow: 5px 5px 10px rgba(0,0,0,0.3);

 }


/* PC非表示 モバイル表示 */
.pc_none { display:none; }

/* PC表示　モバイル非表示 */
.mb_none { display:; }

/* PC表示　モバイル非表示 アクセスマージン調整 */
.acc_mg { margin:0 auto; width:88%; }
.con_mg { margin:0 auto; width:90%; }
.index_mg { margin:0 auto; width:50%; }


/* マージン共通設定 */
.mt10{ margin-top:-10px; }
.mt20{ margin-top:-20px; }
.mt30{ margin-top:-30px; }
.mt40{ margin-top:-40px; }
.mt50{ margin-top:-50px; }

/* マージン共通設定 */
.mg10 { margin-bottom:10px; }
.mg20 { margin-bottom:20px; }
.mg30 { margin-bottom:30px; }
.mg40 { margin-bottom:40px; }
.mg50 { margin-bottom:50px; }

/* パティング共通設定 */
.mp10 { padding-bottom:10px; }
.mp20 { padding-bottom:20px; }
.mp30 { padding-bottom:30px; }
.mp50 { padding-bottom:50px; }
.mp100 { padding-bottom:100px; }


/* 客室 */
.room_text{
	color:#FFF;
	margin:10px 0 0 0;
	padding:0px;
	font-size:18px;
	text-align:left ;
}

/* 料金 */
.price_text{
	color:#666;
	margin:10px 0 0 0;
	padding:0px;
	font-size:16px;
	text-align:left ;
}

.room{
	background-color: rgba(255,255,255,0.87);
	box-shadow: 5px 5px 10px rgba(0,0,0,0.3);
	
}

/* 料金表見出し */
#room-title {
  padding:14px;
  text-align: center;
  width: 100%;
	background-color: rgba(255,255,255,0.87);
	box-shadow: 5px 5px 5px rgba(0,0,0,0.3);
	margin-bottom:10px;
}

.room-title-btn { margin:2px; width:32.7%;}

/* TOPにもどる */
#top-title {
  padding:14px;
  font-size:18px;
  text-align: center;
  width: 100%;
  margin-top:-30px;
}

.top-title-btn { margin:2px; width:33%;}


/* トピックステキスト */
.tel-topics { margin-top:10px; font-size:32px; line-height:20px; font-weight:bold;  }
.topics { margin-top:10px; font-size:16px; line-height:20px; }

/* ガター調整 */
.col-sm-4 { padding:0; }

/* テーブル */
.tb { margin-left:2%; width:96%; color:#FFF; border:0; }

/* イメージ画像ホバー */
.main_btn img { transition: 0.5s ; }
.main_btn img:hover { opacity: 0.7; }

a.hover_style2{
	background-color:#fff; /*背景に白を設定*/
	display:block; /*ブロック化*/
	margin:0;
	width:100%;
}
a.hover_style2 img{
	transition: all 0.3s ease;
}
a:hover.hover_style2 img{
	opacity: 0.7;
	filter: alpha(opacity=50);
	-ms-filter: "alpha(opacity=50)";
}

.td_left { text-align:left; }
.span_left { margin-left:1px; }

.mclear { margin:0; padding:0; }
.mcroom { margin:0; padding-left:5px; padding-bottom:5px; }

.gm40 { margin:0; padding:0; }
.gm50 { margin:0; padding:0; }

.td_color { background-color:#eee; text-align:center; }

/* テキスト前に色を塗る */
.p-left { border-left:solid 5px #666; margin-bottom:2px; }/*左線（実線 太さ 色）*/


table { border-color:#ddd; width:100% ; color:#666; }
td { padding:5px; }
.table-index { margin:0 0 10px 10px; background-color:#fff; width:96%; }


/* table footer */
.table-p { text-align:left; color:#666; font-size:14px; margin:0; padding:0; line-height:150%; }

/* table スマホ用テキストサイズ調整 */
.table-font { font-size:16px; }

/* table br */
.table-br { display:none; }

/* topics footer */
.topics-p { text-align:left; color:#FFF; font-size:16px; margin:0; padding:0; line-height:150%; }


/* ボタングラデーション */
.btn-menu {
font-weight:bold;
color:#FFF; 
border:0;
border-radius: 5px;
padding: 10px;
position: relative;
z-index: 0;
background-color:#333;

}

.btn-menu:hover {
font-weight:bold;
color:#FFF; 
border:0;
border-radius: 5px;
padding: 10px;
position: relative;
z-index: 0;
background-color:#555;
}



/* ルームメニューボタングラデーション */
.btn-room-on {
font-weight:bold;
color:#FFF; 
border:0;
border-radius: 5px;
padding: 10px;
position: relative;
z-index: 0;
background-color:#005FFF;
}

.btn-room-on:hover {
font-weight:bold;
color:#FFF; 
border:0;
border-radius: 5px;
padding: 10px;
position: relative;
z-index: 0;
background-color:#4689FF;
}

/* ルームメニューボタングラデーション */
.btn-room-off {
font-weight:bold;
color:#FFF; 
border:0;
border-radius: 5px;
padding: 10px;
position: relative;
z-index: 0;
background-color:#5D99FF;
}

.btn-room-off:hover {
font-weight:bold;
color:#FFF; 
border:0;
border-radius: 5px;
padding: 10px;
position: relative;
z-index: 0;
background-color:#0066FF;
}



/* 202303トップ画像 */
.maingazou {
  margin-top: -10px;
  padding-top: 00px;
  text-align: center;
  background-attachment: relative;
  background-position: center center;
        }

.relative {
  position: relative;
}
.absolute {
  position: absolute;
  right: 20px;
  bottom: 20px;
  max-width: 60%;
}

.black-p { color:#000 !important; }

/* トグルメニューロゴ */
.menu-logo { margin-left:10px; }


@media (max-width: 768px) {
	
.pc-none { display:none; }
.sp-none { display:inline; }

.con_mg { margin:0 auto; width:100%; }
.index_mg { margin:0 auto; width:100%; }

.margin-top80 { margin-top:40px; }

.bg-slider {
  margin-top: -10px;
  padding-top: 20px;
  text-align: center;
  background-attachment: relative;
  background-position: center center;
  width: 100%;
  min-height: 200px;
  -webkit-background-size: 100%;
  -moz-background-size: 100%;
  -o-background-size: 100%;
  background-size: 100%;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

    


    
    
/* PC用　予約領域 */
#reservation-header {
  background: url(../img/sp_reservation_bg.jpg) no-repeat center top;
  margin-top: -10px;
  padding-top: 20px;
  text-align: center;
  background-attachment: relative;
  background-position: center center;
  min-height: 200px;
  width: 100%;
  -webkit-background-size: 100%;
  -moz-background-size: 100%;
  -o-background-size: 100%;
  background-size: 100%;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}


.tel-topics { margin-top:20px; font-size:24px; line-height:20px; font-weight:bold; }
.topics { margin-top:10px; font-size:12px; line-height:20px; }

.container-width { width:90%; }
  
 /* PC非表示 モバイル表示 */
.pc_none { display: inline; }

.pc_mg100 { margin-top:-100px; }

/* PC表示　モバイル非表示 */
.mb_none { display:none; } 

/* アクセスマップ　モバイル調整 */
.gm40 { margin:0; padding:0; }
.gm50 { margin-left:16px; margin-right:0p; padding:0; }

.mcroom { margin:0; padding-left:3px; padding-bottom:0px; padding-top:3px; }

/* table スマホ用テキストサイズ調整 */
.table-font { font-size:10px; }

/* table br */
.table-br { display: inline; }

/* table footer */
.table-p { text-align:left; color:#666; font-size:12px; margin:0; padding:0; line-height:150%; }


.room-title-btn { margin:2px; width:48.2%;}


/* 料金 */
.price_text{
	color:#333;
	font-size:12px;
}


/* TOPにもどる */
#top-title {
  padding:14px;
  margin:0;
  font-size:18px;
  text-align: center;
  width: 100%;
  margin-top:-50px;
}

.top-title-btn { margin:2px; width:100%;}

.topics-width { width:100%; margin:0; padding:0; }

.acc_mg { margin:0 auto; width:100%; }

/* スクロールナビ */
/*--------------------------------------------------------------
	PC用　予約はコチラボタン
--------------------------------------------------------------*/
#page-top {
	position: fixed;
	right: 1%;
	font-size: 14px;
	z-index: 999;
	bottom:0;
	line-height:110%;
}
#page-top a {
	text-decoration: none;
	color: #595900;
	width: 100%;
	padding: 35px 15px;
	text-align: center;
	display: block;
	border-radius: 50px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50px;
	background-color:#eee8aa;
	
}


#page-top a:hover {
text-decoration: none;
background-color:#f5f5dc;
}


/* スクロールナビ */
/*--------------------------------------------------------------
	PC用　予約はコチラボタン2
--------------------------------------------------------------*/
#page-top_2 {
	position: fixed;
	right: 1%;
	font-size: 16px;
	z-index: 999;
	bottom:0;
}
#page-top_2 a {
	text-decoration: none;
	color:#595900;
	width: 100%;
	padding: 25px 25px;
	text-align: center;
	display: block;
	border-radius: 50px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50px;
	background-color:#eee8aa;
}


#page-top_2 a:hover {
text-decoration: none;
background-color:#f5f5dc;

}

.page-margin_2 {
font-family: 'Kosugi Maru', sans-serif; } 




.p-main { font-size:14px; line-height:140%; }
.br-sp { display: inline; }

}


/* アクセス Wrap */

#accesswrap {
  background-color:#fff;
  margin-top: 0px;
  padding-top:40px;
  padding-bottom:20px;
  text-align: center;
  background-attachment: relative;
  background-position: center center;
  min-height: 700px;
  width: 100%;
  -webkit-background-size: 100%;
  -moz-background-size: 100%;
  -o-background-size: 100%;
  background-size: 100%;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}


.port-space {
  padding-bottom: 20px;
}

/* White Wrap */

#w {
  background: #ffffff;
  padding-top: 35px;
  padding-bottom: 35px;
  text-align: center;
}

#w h3 {
  font-weight: 0;
  color: #7b7b7b;
  letter-spacing: 1px;
  font-size:14px;
  line-height:20px;
}

#w bold {
  color: #2f2f2f;
}

/* Grey Wrap */

#g {
  background: #f2f2f2;
  padding-top: 35px;
  padding-bottom: 35px;
  text-align: center;
  
}

/* Dark Grey Wrap */

#dg {
  background: #999;
  padding-top: 70px;
  padding-bottom: 70px;
  text-align: center;
}


/* 予約フォーム */

#y-form {
  margin:0 auto;
  background: #820000;
  padding-top: 20px;
  padding-bottom: 20px;
  width:80%;
  text-align:center;
}


/* 予約枠取り */
.y-box {
	color:#fff;
    padding: 0.5em 1em;
    margin:0 auto;
    font-weight: bold;
	width:100%;
	background-color:#333;
}
.y-box p {
	color: #323232;
	margin:4px 0px 0px 0px;
	padding:0px;
	font-size:18px;
}

.y-box-text {
	color:#333;
	margin:4px 0px 0px 0px;
	padding:0px;
	text-align: left;
	font-size:14px;
	line-height: 160%;
}







@media (max-width: 980px) {
	

#y-form {
  margin:0 auto;
  background: #820000;
  padding-top: 20px;
  padding-bottom: 20px;
  width:90%;
  text-align:center;
}

.y-box {
	color:#FFF;
    padding: 0.5em 1em;
    margin: 0;
    font-weight: bold;
	width:100%;
}
.y-box p {
	color:#FFF;
	margin:4px 0px 0px 0px;
	padding:0px;
	font-size:12px;
}

.y-box-text {
	color:#333;
	margin:4px 0px 0px 0px;
	padding:0px;
	text-align:left;
	font-size:10px;
	line-height: 140%;
}


}




/* Footer Wrap */

#f {
	margin:0 auto ;
  	background-color: rgba(255,255,255,0.87);
	box-shadow: 5px 5px 10px rgba(0,0,0,0.3);
  padding-top: 5px;
  padding-bottom: 20px;
  text-align: center;
}

#f h3 {
  color: white;
}

#f i {
  font-size: 26px;
  color: white;
  padding-left: 10px;
  padding-right: 10px;
}

/* Copyright Wrap */

#footerlogo { margin:0; padding:0; }

.copyrights {
  background:url(../img/pr.png);
  padding:0;
  margin:0;
  width:100%;
  height:90px;
  text-align: center;
}

#copyright-p {
	color:#FFF;
}

.copyrights-p { margin:0; padding:0; color:#FFF; font-size:16px; }

a:hover.copyrights-p {
  color: #ffccc6;
  text-decoration: none;
  outline: 0;
}

.credits {
  color: #999;
}


@media (max-width: 768px) {
  #itemwrap h1 {
    margin-top: 80px;
    color: white;
    font-size: 60px;
  }
  
  .copyrights {
  background:url(../img/pr.png);
  padding:0; 
  margin:0;
  width:100%;
  height:220px;
  text-align: center;
  margin-top: auto;
  
}

#f {

}

  
}

.desc {
  text-align: left;
}

.desc-b {
  border-left: 4px solid #bababa;
}

.desc-a i {
  color: #555;
  padding-right: 8px;
}

.desc-b i {
  color: #555;
  padding-right: 8px;
}

/* MENU CONF*/

.menu {
  position: fixed;
  right: -200px;
  width: 260px;
  height: 100%;
  top: -8px;
  z-index: 10;
  text-align: left;
}

.menu.menu-open {
  right: 0px;
}

.menu-wrap {
  position: absolute;
  top: 0;
  left: 80px;
  background: #1a1a1a;
  width: 200px;
  height: 100%;
}

.menu h1.logo a {
  font-family: 'Raleway', Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-weight: 800;
  letter-spacing: 0.15em;
  line-height: 40px;
  text-transform: uppercase;
  color: #ffffff;
  margin-top: 20px;
}

.menu h1.logo a:hover {
  color: #f85c37;
}

.menu img.logo {
  margin: 20px 0;
  max-width: 160px;
}

.menu a {
  margin-left: 20px;
  color: #808080;
  display: block;
  font-size: 12px;
  font-weight: 700;
  line-height: 40px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.menu a:hover {
  color: #ffffff;
}

.menu a:active {
  color: #ffffff;
}

.menu a>i {
  float: left;
  display: inline-block;
  vertical-align: middle;
  text-align: left;
  width: 25px;
  font-size: 14px;
  line-height: 40px;
  margin: 25px 2px;
}

.menu-close {
  cursor: pointer;
  display: block;
  position: absolute;
  font-size: 14px;
  color: #808080;
  width: 40px;
  height: 40px;
  line-height: 40px;
  top: 20px;
  right: 5px;
  -webkit-transition: all .1s ease-in-out;
  -moz-transition: all .1s ease-in-out;
  -ms-transition: all .1s ease-in-out;
  -o-transition: all .1s ease-in-out;
  transition: all .1s ease-in-out;
}

.menu-close:hover {
  color: #ffffff;
  -webkit-transition: all .1s ease-in-out;
  -moz-transition: all .1s ease-in-out;
  -ms-transition: all .1s ease-in-out;
  -o-transition: all .1s ease-in-out;
  transition: all .1s ease-in-out;
}

/* Push the body after clicking the menu button */

.body-push {
  overflow-x: hidden;
  position: relative;
  left: 0;
}

.body-push-toright {
  left: 200px;
}

.body-push-toleft {
  left: -200px;
}

.menu, .body-push {
  -webkit-transition: all .3s ease;
  -moz-transition: all .3s ease;
  -ms-transition: all .3s ease;
  -o-transition: all .3s ease;
  transition: all .3s ease;
}

#menuToggle {
  position: absolute;
  top: 16px;
  left: 0;
  z-index: 11;
  display: block;
  text-align: center;
  font-size: 20px;
  color: #ffffff;
  width: 46px;
  height: 46px;
  line-height: 46px;
  cursor: pointer;
  background: rgba(0, 0, 0, 0.25);
  -webkit-transition: all .1s ease-in-out;
  -moz-transition: all .1s ease-in-out;
  -ms-transition: all .1s ease-in-out;
  -o-transition: all .1s ease-in-out;
  transition: all .1s ease-in-out;
}

#menuToggle:hover {
  color: #ffffff;
  background: rgba(0, 0, 0, 0.2);
  -webkit-transition: all .1s ease-in-out;
  -moz-transition: all .1s ease-in-out;
  -ms-transition: all .1s ease-in-out;
  -o-transition: all .1s ease-in-out;
  transition: all .1s ease-in-out;
}

/* BUTTON CONF */

.btn-theme {
  color: #fff;
  background-color: #1abc9c;
  padding-left: 40px;
  padding-right: 40px;
  padding-bottom: 10px;
  padding-top: 10px;
  font-weight: 700;
  border-radius: 3px;
}

.btn-theme:hover {
  cursor: pointer;
  color: white;
  background-color: #16a085;
}

/* TEAM CONF */

.team {
  padding-top: 20px;
}

.team:hover {
  background: white;
}

.team a {
  padding-right: 10px;
  padding-left: 10px;
}

/* Contact Form */

.contact-form {
  text-align: left;
}
.contact-form label {
   color: #000;
}

.contact-form input, .contact-form textarea {
  padding: 10px 12px;
  border-radius: 0;
  box-shadow: none;
  font-size: 14px;
  height: auto;
}

.contact-form .form-send {
  text-align: center;
}

.contact-form .form-send button  {
  background: #000;
  border: 0;
  padding: 10px 30px;
  color: #fff;
  transition: 0.4s;
  cursor: pointer;
}

.contact-form .form-send button:hover {
  background: #000;
}

.contact-form .validate {
  display: none;
  color: red;
  margin: 0 0 15px 0;
  font-weight: 400;
  font-size: 13px;
}

.contact-form .loading {
  display: none;
  color: #000;
  background: #fff;
  text-align: center;
  padding: 15px;
  margin: 15px 0;
}

.contact-form .error-message {
  display: none;
  color: #fff;
  background: #000;
  text-align: center;
  padding: 15px;
  font-weight: 600;
  margin: 15px 0;
}

.contact-form .sent-message {
  display: none;
  color: #fff;
  background: #18d26e;
  text-align: center;
  padding: 15px;
  font-weight: 600;
  margin: 15px 0;
}


@media (max-width: 480px) {

/* PC用メインイメージ領域 */
#headerwrap {
  min-height: 280px;
}

.p-room { font-size:11px; }

}