/* CSS Document */

/*============================
一時的なCSS
============================*/
a[href="#"]{
	pointer-events: none;
	opacity: .5;
}
#main-nav a:not([href="#"]){
	font-weight:bold;
}
/*footer .footer-nav{
	display: none;
}
header .head-nav ul li.lang a{
	background-color: #aaa!important;
}*/
/*============================*/
html {
}
body {
	color: #333;
	font-size: 14px;
	line-height: 1.6;
	background-image: url(../img/body-bg.jpg);
}
/*============================
サイト全体のfont指定
============================*/
* {
	font-family: arial,helvetica,clean,sans-serif;
}
/*.mincho, .mincho * {
	font-family: "Sawarabi Mincho"!important;
}
.gothic, .gothic * {
	font-family: "Mplus 1p";
}*/
/*============================
リンク
============================*/
a {
	color: #40220F;
	text-decoration: none;
}
a:hover {
	color: #40220F;
	text-decoration: none;
	opacity: .7;
}

header div.container-fluid {
	margin: 0 auto;
	position: relative;
	padding: 20px 15px;
	max-width: 1200px;
}
/*============================
画像
============================*/
img {
	width: 100%;
	height: auto;
}
/*============================
フォーム
============================*/
input, select {
    vertical-align: text-bottom;
}
/*============================
header
============================*/
header #title {
	display: block;
	max-width: 240px;
	margin-left: auto;
	margin-right: auto;
}
header .head-nav {
	position: absolute;
	right: 15px;
	top: 20px;
}
header .head-nav ul li {
	display: none;
	margin-left: 2px;
	vertical-align: middle;
}
header .head-nav ul li:last-child {
	display: inline-block;
}
header .head-nav ul li a.navopen-btn {
	background: none !important;
	width: 40px;
	padding: 0;
	cursor: pointer;
	color: #40220F;
}
header .head-nav ul li a.navopen-btn i {
	font-size: 40px;
}
/*============================
#main-nav
============================*/
#main-nav {
	overflow-y: scroll;
	background: #FFF;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 11;
	width: 100%;
	height: 100vh;
	transform: translateX(100%);
	padding: 20px 15px;
}
#main-nav.open {
	transform: translateX(0);
}
#main-nav .navclose-btn {
	text-align: right;
}
#main-nav .navclose-btn a {
	display: inline-block;
	font-size: 40px;
	text-decoration: none;
	line-height: 0.8em;
	cursor: pointer;
}
#main-nav .navclose-btn a::before {
	font-family: "FontAwesome";
	content: "\f00d";
}
#main-nav ul {
	width: 100%;
	margin: 0 auto;
}
#main-nav ul li {
	border-bottom: solid 1px #CCCCCC;
	display: block;
}
#main-nav ul li a {
	display: block;
	padding: 10px;
	text-decoration: none !important;
}
#main-nav ul li a:hover {
	opacity: 1;
}
#main-nav ul li a::before {
	font-family: 'FontAwesome';
	content: " \f105";
	margin-right: 10px;
}
#main-nav ul li ul {
	padding-left: 20px;
}
#main-nav ul li ul li {
	border-bottom: none;
}
.banner{
	margin-top:30px;
}
.banner a{
	display: block;
	width:60%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom:20px;
}
.banner a:nth-of-type(1){
	max-width: 423px;
}
.banner a:nth-of-type(2){
	max-width: 370px;
}

/*============================
footer
============================*/
footer {
	background: #40220F;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
}
.footer-nav {
	text-align: center;
	padding:0;
}
.footer-nav li {
	display: inline-block;
	max-width: 250px;
    width: 100%;
	margin: 10px;
}
.footer-nav li a {
	color: #000;
	display: block;
	line-height: 25px;
	font-size: 16px;
	text-align: center;
	background-color: #fff;
	border-radius: 5px;
	cursor: pointer;
}

footer .copyRightTxt {
	text-align: center;
  font-size: 12px;
  color: #fff;
  padding: 0.2em 0;
}
footer .addressTxt {
	text-align: center;
  font-size: 12px;
  color: #fff;
  padding: 0.2em 0;
}

footer .reserveBtn::before{
	content:"客室予約";
}
footer .reserveBtn.openBtn::before{
	content:"閉じる";
}
footer .reserveBox{
	background-color: #FFF;
	display: none;
	padding:15px;
}
footer .reserveBox strong{
	display: block;
	text-align: center;
	font-size:140%;
}
footer .reserveBox dl{
	margin-bottom:10px;
}
footer .reserveBox dt{
	margin-bottom:5px;
}
footer .reserveBox dd{
	padding-left:30px;
}
footer .reserveBox dt,
footer .reserveBox dd{
	display: block;
}
footer .reserveBox input[type="submit"]{ 
	display: block;
	text-align: center; 
	width: 200px;
	padding: 10px 5px;
	margin:20px auto 10px;
	color:#40220F;
	background:#fff ;
	border:solid 2px #40220F;
	border-radius: 5px;
}
footer .reserveBox select {
    /*width: 50px;*/
}
footer .reserveBox input[type="submit"]:hover{
	background: #40220F;
	color:#fff;		
}

@media (min-width: 768px) {
/*============================
header
============================*/
header #title {
	display: inline-block;
	margin-left: 5px;
}
/*============================
#main-nav
============================*/
#main-nav {
	width: 300px;
	height: 100vh;
	transform: translateX(300px);
}
#main-nav.open {
	transform: translateX(0);
}
.banner a{
	width:30%;
	display: inline-block;
}
.banner a+a{
	margin-left:60px;
}	
	
}

/*TABLET-end*/

@media (min-width: 992px) {
/*============================
header
============================*/
header #title {
	font-size: 30px;
	letter-spacing: 2px;
	vertical-align: middle;
}
header div.container-fluid {
	padding-right: 420px;
}
header p {
	font-size: 12px;
	display: inline-block;
	width: calc(100% - 260px);
	margin-left: 10px;
	vertical-align: middle;
}
header .head-nav {
	width: 430px;
	display: inline-block;
	text-align: right;
}
header .head-nav ul li {
	display: inline-block;
	width: auto;
	margin-bottom:5px;
}
header .head-nav ul li a {
	display: block;
	text-decoration: none !important;
	text-align: center;
	border-radius: 3px;
}
header .head-nav ul li.lang a {
	background-color: #6A3906;
	color: #fff;
	width: 72px;
}
header .head-nav ul li.contact a {
	/*width: 150px;*/
	font-size: 10px;
	border: solid 1px #40220F;
	padding: 0.3em 0.5em;
}
header .head-nav ul li.contact a:hover {
	border: solid 1px #40220F;
	background-color: #40220F;
	color: #fff;
}
header .head-nav ul li a.navopen-btn {
	display: none;
}
header .head-nav {
	right: 0px;
}
header .head-nav ul li:last-child {
	display: none;
}
	
/*============================
#main-nav
============================*/
#main-nav {
	display: block !important;
	overflow-y: visible;
	position: relative;
	width: 100%;
	height: auto;
	transform: translateX(0);
	padding: 0;
	background-color: transparent;
}
#main-nav ul {
	display: table;
	table-layout: fixed;
	max-width: 1200px;
	border-right: solid 1px #ccc;
}
#main-nav ul li {
	display: table-cell;
	border: 0;
	border-right: solid 1px #40220F;
	border-bottom: solid 1px #40220F;
	text-align: center;
}
#main-nav ul li:first-child {
	border-left: solid 1px #40220F;
}
#main-nav ul li.sp-view {
	display: none;
}
#main-nav ul li a {
	font-size: 12px;
}
#main-nav ul li a::before {
	content: none;
}

#main-nav ul li.active a ,
#main-nav ul li a:hover {
	background: #40220F;
	color: #fff;
}
#main-nav ul li:nth-of-type(5) {
	position: relative;
}
#main-nav ul li ul {
	display: none;
	padding: 0;
	position: absolute;
	border-right: none;
}
#main-nav ul li ul li {
	display: block;
	border: none;
}
#main-nav ul li ul li:first-child {
	border-left: none;
}
#main-nav ul li ul li a {
	border: none;
	background: #40220F;
	color:#fff;
}
.footer-nav {
	padding: 12px 0;
}
.footer-nav li a{
	line-height: 40px;
}
footer .reserveBox {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
footer .reserveBox strong {
	max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
footer .reserveBox strong {
  margin-bottom:20px;
}
footer .reserveBox form{
	/*max-width: 900px;*/
	margin-left: auto;
	margin-right: auto;
}
footer .reserveBox .box{
	letter-spacing: -.4em;
}
footer .reserveBox .box *{
	letter-spacing: normal;
}
footer .reserveBox dl,
footer .reserveBox dt,
footer .reserveBox dd,
footer .reserveBox ul{
	display: inline-block;
	vertical-align: top;
}

footer .reserveBox dl{
	width:30%;
	margin-bottom: 0;
}
footer .reserveBox dl:first-of-type{
	width:40%;
}
footer .reserveBox dt {
	margin-bottom: 0;
	width: 30%;
}
footer .reserveBox dd {
  padding-left: 10px;
	width: 60%;
}
footer .reserveBox ul {
	text-align: left;
}
footer .reserveBox ul li {
	display: inline-block;
}
footer .reserveBox ul li+li{
	margin-left:10px;
}
}

/*PC(992)-end*/


@media (min-width: 1200px) {
}
/*PC(1200)-end*/

/*====================================================================================


*中ページ共通CSS*


====================================================================================*/
/*============================
main
============================*/
main {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
main #main-vis {
	margin-left: auto;
	margin-right: auto;
	margin-top: 20px;
}
main #main-content,
#main-footer {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
#main-content,
#main-footer {
	text-align: center;
}
#main-content h1 {
	margin-bottom: 20px;
	font-size: 24px;
}
#main-content p {
	margin-bottom: 10px;
}
#main-footer{
	margin-bottom: 200px;
}

.traffic{
	max-width: 1034px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 30px;
}
.ggmap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
@media (min-width: 768px) {
#main-content {
	font-size: 22px;
}
#main-content h1 {
	margin:50px 0;
	font-size: 30px;
}
#main-content p {
	line-height:1.8;
	margin-bottom: 35px;
}
.traffic{
	margin: 100px auto;
}
}
@media (min-width: 992px) {
#main-footer {
    margin-bottom: 180px;
}
}
@media (min-width: 1200px) {
}
/*bootstrap カスタマイズオーバーライド*/
.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto{
	margin-bottom: 15px;
}
.half-gutters {
	margin-right: -5px;
	margin-left: -5px;
}
.half-gutters>.col, .half-gutters>[class*=col-] {
	padding-right: 5px;
	padding-left: 5px;
}
.gmap {
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%;
	position: relative;
	}
	.gmap iframe {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	}