@charset "utf-8";


/* GENERAL */
body {color:#000; font: 12px/1.4 Helvetica, Arial,"Lucida Grande","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",sans-serif;}

a{color: #444;text-decoration: none;}
a:hover {color: #888;text-decoration: underline;}
a img {vertical-align: bottom;}
a{outline: none;}

ul,li {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* CLEARFIX */
.clearfix
{zoom: 1;}

.clearfix:after,
.floatBox:after,
.floatBox2:after,
.newsList:after,
.photoList:after,
.floorList:after,
.newsListPage:after,
.thumList:after,
.topNewsBox:after
{content: "."; display: block; visibility: hidden; clear: both; height: 0; font-size: 0; line-height: 0;}

strong{
font-weight: bold;
}

img{
vertical-align: bottom;
}

/* ------------------------------------------
LAYOUT
------------------------------------------ */
html {
  overflow: auto;
  font-size: 100%;
}

body {
  margin: 0;
  padding: 0;
  font-size: 62.5%;
  font-family: "Open Sans" , "Helvetica" , Helvetica , Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
  position: relative;
  z-index: 0;
}

div {
	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

h2 {
	margin: 0;
	padding: 0;
	font-size: 2.5em;
	font-weight:bold;
	color: #D13129;
	text-align: center;
	letter-spacing: 0.1em;
}

/* ------------------------------------------
header
------------------------------------------ */
header {
	width: 100%;
	height: 105px;
	background-color: rgba(35,24,21,0.9);
	position: fixed;
	top: 0;
	z-index: 3;
}

.eyecatch {
	z-index: 0;
	width: 100%;
	height: 484px;
	position: relative;
}

.eyecatch.about {
	height: 484px;
	background-image: url(../img/sub_about.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.eyecatch.plan {
	height: 484px;
	background-image: url(../img/sub_plan.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.eyecatch.access {
	height: 484px;
	background-image: url(../img/sub_access.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.eyecatch.event {
	height: 484px;
	background-image: url(../img/sub_access.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.eyecatch.reservation {
	height: 484px;
	background-image: url(../img/sub_privacy.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.eyecatch.privacy {
	height: 484px;
	background-image: url(../img/sub_privacy.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.eyecatch.gallery {
	height: 484px;
	background-image: url(../img/sub_gallery.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.eyecatch.home {
	z-index: 0;
	width: 100%;
	height: 100vh;
	color: #fff;
	position: relative;
	background-image: url(../img/main.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.eyecatch.home div {
	width: 100%;
	text-align: center;
	position: absolute;
	bottom: 0;
}

div.nav {
	position: absolute;
	top: 20px;
	right: 30px;
	display: block;
	visibility: visible;
	opacity: 1;
}

div.nav ul.lang {
	margin-bottom: 18px;
	text-align: right;
}

div.nav ul.lang li {
	display: inline-block;
	margin-right: 7px;
}
/*
div.nav ul.lang li:nth-child(4) {
	margin-right: 20px;
}
*/
div.nav ul.lang li:nth-child(5) {
	margin: 0;
}

div.nav ul.nav-menu {
	text-align: right;
	letter-spacing: 0.2em;

}

div.nav ul.nav-menu li {
	display: inline-block;
	margin-left: 32px;
}

div.nav ul.nav-menu li a , div.nav ul.nav-menu li a:hover{
	color: white;
	text-decoration: none;
	font-size: 1.6em;
}

 div.nav ul.nav-menu li a:hover{
	 opacity: 0.3;
}

header .menu-btn {
	display: none;
	visibility: hidden;
	opacity: 0;
	position: absolute;
	right: 5px;
	top: 15px;
	color: black;
	padding-bottom: 5px;
}

.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
	background-color: #fff;
}

header .menu-btn p {
	text-align: center;
	margin: 0;
	padding: 0;
	color: white;
}

header h1 {
	position: absolute;
	left: 30px;
	top: 23px;
	margin: 0;
}

.menu {
    position: fixed;
    display: table;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: rgba(35,24,21,0.9);
    -webkit-transition: all .3s;
    transition: all .3s;
    padding-top: 120px;
    z-index: 2;
    visibility: hidden;
    opacity: 0;
    text-align: center;
}

.menu ul {
	margin-bottom: 20px;
}

.menu li{
	margin: 0 auto;
	margin-bottom: 40px;
	text-align: center;

}

.menu li a {
	font-size: 4.0em;
	color: #ffffff;
	text-decoration: none;
}

.menu li.bo {
	color: white;
	font-size: 1.5em;
	border-bottom: 1px solid white;
	width: 10px;
}

.menu ul.lang {
	margin-bottom: 15px;nav
}

.menu ul.lang li {
	display: inline-block;
	margin-right: 7px;
	margin-bottom: 0;
	margin-bottom: 20px;
}

.menu ul.lang li:nth-child(5) {
	display: block;
}


/* 開閉用ボタンがクリックされた時のスタイル */
.open .menu {
    -webkit-transition: all .3s;
    transition: all .3s;
    visibility: visible;
    opacity: 1;
}

.open header .menu-btn ,
.open header h1 {
	z-index: 10000000;
}

.open .menu li {
	opacity: 1;
}


.arrow4{
  width: 10px;
  height: 10px;
  border-top: 1px solid #ba7b22;
  border-right: 1px solid #ba7b22;
  transform: rotate(45deg);
}

/* ------------------------------------------
five charm
------------------------------------------ */

#5charm{
	
}
.business .charm_cont{
	text-align:center;
	width: 100%;
	height: 100%;
	padding: 65px 0 200px 0;
	background-repeat: no-repeat;
	background-position: center bottom 65px;
}
.business .col{
	height: 320px;	
}
.business .charm_01{
	background-image: url(../img/charm1.jpg);
}
.business .charm_02{
	background-image: url(../img/charm2.jpg);
}
.business .charm_03{
	background-image: url(../img/charm3.jpg);
}
.business .charm_04{
	background-image: url(../img/charm4.jpg);
}
.business .charm_05{
	background-image: url(../img/charm5.jpg);
}

.charm_cont .nom{
	font-family: serif;
	font-size: 36px;
	font-weight: bold;
	text-align: center;	
	margin-bottom: 4px;
	color: #D13129;
	border: none;
	
}
.business .charm_cont .charm_tt{
	font-size: 16px;
	font-weight: bold;
	text-align: center;	
	border: none;
}
.business .charm_tt_cont{
	text-align: center;
	background-color: #D13129;
	padding-top: 100px;
	
}
.business .charm_tt_cont .charm_tt_cont_tt{
	color: #fff;
	border: none;
	font-family: serif;
	font-size: 26px;
	padding-bottom: 12px;
	margin-bottom: 10px;
	background-image: url(../img/border_w.jpg);
	background-repeat: no-repeat;
	background-position: center bottom;
}
.business .charm_tt_cont .eigo{
	color: #fff;
	border: none;
	font-size: 12px;
}

.row {
	margin: 0;
}
.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
	padding: 0;
}

.sec_content.business {
	margin-top:0px;
}

.sec_content.business img {
	margin:0 auto;
	display:block;
	width:100%;
	max-width:359px;
}

.sec_content.business > div {
	border:1px solid #EFEFEF;
}

.sec_content.business figure {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 100%;
}
.sec_content.business figcaption {
	color:#FFF;
	text-align:center;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	background: rgba(209,49,41,.9);
	-webkit-transform: rotateY(-90deg) rotateX(-90deg);
	transform: rotateY(-90deg) rotateX(-90deg);
	-webkit-transition: .5s;
	transition: .5s;
	opacity: 0;
	vertical-align:middle;
	display:table-cell;
}

.sec_content.business figcaption p {
	position:absolute;
	top:45%;
	margin:0 auto;
	line-height:2em;
	left:0;
	right:0;
	font-size: 1.5em;
}

.sec_content.business figcaption p.line2 {
	top:42%;
}

.sec_content.business figcaption p.line3 {
	top:39%;
}

.sec_content.business figcaption p.line4 {
	top:36%;
}

.sec_content.business figcaption p.line5 {
	top:33%;
}

.sec_content.business figure:hover figcaption {
	-webkit-transform: rotateY(0) rotateX(0);
	transform: rotateY(0) rotateX(0);
	opacity: 1;
}

.charm-red {
	background: rgba(209,49,41,1);
}

.qa {
	border-bottom: 1px solid #ccc;
}

.qa dl {
	margin-bottom:0;
}
	
.qa dl dt.title{
	text-align:center;
	height:65px;
	line-height: 65px;
	font-size: 2.5em;
	border-top:1px solid #EFEFEF;
	background-image:url('../img/accordion_open2.png');
	background-position:97% center;
	background-repeat:no-repeat;
	background-size:32px;	
	overflow: hidden;
	background-color: #D13129;
	color: white;
	font-family: Helvetica, sans-serif;
}
	
.qa dl dt:hover {
	cursor:pointer;
}
	
.qa dl:first-child dt {
	border-top:none;	
}
	
.qa dl dd {
	text-align:left;
	border-top:2px solid #FFF;
	margin-top:-1px;
	padding:30px 0;		
}
	
.qa dl dt img {
	width:auto;
	padding:0;
}

/* =================================================================
		Q&A
================================================================= */
.qa {
	background: #ffffff;
}

.qa .faq {
	font-size: 10pt;
	font-family: Helvetica;
	padding: 5px 5px 5px 5px;
	width: 80%;
	margin: 0 auto;
}

.qa .faq_dt {
	font-size:116%;
	margin:0;
	background-position: 0 5px;
	cursor:pointer;
	line-height: 1.8em;
	margin-bottom: 20px;
	}

.qa .faq_dt span {
	width: 15%;
	height: 38px;
	line-height: 38px;
	text-align: center;
	color: white;
	background-color: black;
	display: block;
	margin-right: 2%;
	float: left;
}
.qa .faq_dt:hover {
	opacity:0.7;
}

.ios .qa .faq_dt:hover {
	opacity:1;
}

.qa .faq_dd {
	min-height: 38px;
	line-height: 1.5em;
	padding: 0;
	padding-top: 15px;
	margin:5px 0 40px 40px;
}

.qa .faq_dd span {
	width: 15%;
	height: 38px;
	line-height: 38px;
	text-align: center;
	color: white;
	background-color: #D13129;
	display: block;
	margin-right: 2%;
	float: left;
}

.qa .faq_dt div,
.qa .faq_dd div {
	width: 70%;
	display: inline-block;
	padding-top: 5px;
}

@media screen and (max-width: 768px){
.qa .faq {
	width: 80%;
}
.qa .faq_dt {
	font-size:100%;
	}

.qa .faq_dt span {
	margin-right: 10px;
}

.qa .faq_dd {
	margin:5px 0 20px 20px;
}

}

@media screen and (max-width: 467px){
.qa .faq {
	width: 93%;
}
}

/* ------------------------------------------
section
------------------------------------------ */
#wrapper,
#main {
	position: relative;
	z-index: -2;
}

#section02 {
	position: relative;
}

.box{
	padding-left: 60px;
	padding-right: 60px;
	/* 	display: table-cell; */
	vertical-align: middle;
	box-sizing:padding-box;
	max-width: 100%;
}

.floatBox .verticalBox{
	display: table;
	/* height: 100%; */
	max-width: 100%;
	display: block;
	padding-top: 80px;
}

.verticalBox .box{
	max-width: 570px;
	margin-left: auto;
	margin-right: auto;
}

.all{
	padding-top: 70px;
/* 	padding-bottom: 90px; */
}


.floatBox,
.floatBox2,
.all{
	position: relative;
}
.floatBox2 > .left{
	float: left;
	width: 50%;
}

.floatBox > .left{
	float: left;
	width: 50%;
	position: relative;
}
.floatBox > .right{
	float: right;
	width: 50%;
	position: relative;
}

.floatBox2 > .left{
	float: left;
	width: 50%;
	position: relative;
}
.floatBox2 > .right{
	float: right;
	width: 50%;
	position: relative;
}


section .img {
	overflow: hidden;
}

.img img {
	position: relative;
}

.maxHeight{
	height: 100%;
}

.floatBox > .left,
.floatBox > .right{
	height: 100%;
}

.floatBox p,
section.box2 p,
section.contents p {
	font-size: 1.7em;
	line-height: 1.8em;
}

.basicBox {
  width: 315px;
  height: 60px;
  margin: 0 auto;
  margin-top: 50px;
  color: #D13129;
  text-decoration: none;
  font-family: 'Open Sans', sans-serif;
  font-size: 1.15rem;
  line-height: 65px;
  text-transform: uppercase;
  text-align: center;
  position: relative;
  cursor: pointer;
  letter-spacing: 0.3em;
  display: block;
  z-index: 100;
  -webkit-transition: all 0.8s ease-in-out;
  -moz-transition: all 0.8s ease-in-out;
  -ms-transition: all 0.8s ease-in-out;
  -o-transition: all 0.8s ease-in-out;
}

svg {
  position: absolute;
  top: 0;
  left: 0;
}
svg rect {
  fill: none;
  stroke: #D13129;
  stroke-width: 1;
}

.basicBox:hover {
	background-color: #D13129;
	color: white;
  -webkit-transition: all 0.8s ease-in-out;
  -moz-transition: all 0.8s ease-in-out;
  -ms-transition: all 0.8s ease-in-out;
  -o-transition: all 0.8s ease-in-out;
  text-decoration: none;
}


.floatBox h2,
.box2 h2 {
	padding: 20px 0 10px 0;
}

section.box2 {
  padding: 50px 0 0 0;
  text-align: center;
  clear: both;
  position: relative;
  z-index: -1;
}

section.box2 .basicBox {
	margin-bottom: 60px;
}

#stay .right {
	border-bottom: 1px solid #ccc;
	
}

.tel{
	font-size: 1.8em;
	padding-left: 37px;
	font-weight: bold;
}
.fax {
	font-size: 1.8em;
	padding-left: 54px;
	font-weight: bold;
}

.tel {
	background: url(../img/tel.jpg) left center no-repeat;
	margin-right: 10px;
	background-size: contain;
}

.fax {
	background: url(../img/fax.jpg) left center no-repeat;
	margin-left: 10px;
	background-size: contain;
}

#map_canvas {
	width:100%;
	height:450px;
	position: relative;
	z-index: 0;
}

.contents {
	width: 706px;
	padding: 100px 0 0 0;
	margin: 0 auto;
	margin-bottom: 60px;
	text-align: left;
}

section.contents.access {
	text-align: center;
	margin-bottom: 60px;
}

section.contents.event {
	text-align: center;
	margin-bottom: 60px;
}

section.contents.reservation {
	text-align: center;
	margin-bottom: 60px;
}

.contents h3 {
	text-align: center;
	font-size: 2.0em;
	font-weight: bold;
	margin-bottom: 50px;
}

.contents p {
	margin-top: 40px;
	margin-bottom: 30px;
}

.contents .about-img ul li .img {
	margin: 0 2% 2% 0;
	float: left;
	width: 48%;
}


.privacy-sub {
	border-bottom: 1px solid #A29D9C;
	margin-bottom: 50px;
}

.privacy-box {
	margin-bottom: 40px;
}

.privacy-right {
	text-align: right;
}


.gallery figure {
	width: 30%;
	float: left;
	margin: 0 1.5% 20px;
}

.gallery figure img {
	width: 100%;
}


.gallery p {
	text-align: left;
}

.stay-box {
	margin-bottom: 100px;
}

.stay-box .stay-big {
	margin-bottom: 60px;
	text-align: center;
}

.stay-big img {
	width: 100%;
}

.stay-box .title {
	font-size: 3.2em;
	margin-bottom: 35px;
}

.stay-box .etc {
	margin-bottom: 20px;
}

.stay-box .etc .left {
	width: 690px;
	float: left;
}


.stay-box .etc .left p {
	font-size: 1.5em;
	margin: 0;
	padding: 0;
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid #EBEAEA;
}

.stay-box ul li {
		width: 23%;
		margin: 0 1% 10px;
		float: left;
}
	
.stay-box ul li img {
		width: 100%;
}

.event h2 {
	font-size: 30px !important;
}

.event #title_img img {
	width: 100%;
}

.event #no_padd {
	margin-bottom: 0 !important;
}

.event #sub_title {
	font-size: 24px;
	margin-top: 0 !important;
	margin-bottom: 20px !important;
}

.event #date {
	width: 30%;
	margin: 0 auto 100px;
	border-collapse: collapse;
}

.event #date th,
.event #date td {
	font-size: 18px;
	text-align: left !important;
	border: solid 1px #d13129;
	padding: 5px 7px;
}

.event #date th {
	color: #ffffff;
	background-color: #d13129;
}

.event .price {
	border-bottom: solid 6px #ffccff;
}

.event table.table_img,
.event table.table_img2 {
	margin: 0 auto 100px !important;
}

.event table.table_img td {
	width: -webkit-calc(700px / 3);
	width: calc(700px / 3);
}

.event table.table_img img,
.event table.table_img2 img {
	width: 100%;
}

.event table.table_img2 td {
	width: -webkit-calc(550px / 2);
	width: calc(550px / 2);
}

.reservation table {
	margin-top: 20px;
}

.reservation table td {
	width: -webkit-calc(700px / 2);
	width: calc(700px / 2);
	padding: 15px;
}

.reservation table img {
	width: 100%;
}


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

.pagetop {
	width: 100%;
	height: 40px;
	padding-top: 20px;
	display: block;
	background-color: #D13129;
	text-align: center;
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
    opacity:0.8;
	filter: alpha(opacity=80);
	position: relative;
	z-index: -1;
	box-sizing:content-box;
}

.pagetop:hover {
	opacity:1;
	filter: alpha(opacity=100);
}

footer {
	padding: 70px 0;
	background-color: #D13129;
	text-align: center;
	color: white;
	position: relative;
	z-index: -1;
}

ul.footer {
	margin-bottom: 50px;
}

ul.footer li {
	display: inline;
	text-align: center;
	margin: 0 20px;
	margin-bottom: 20px;
	font-size: 1.7em;
}

ul.footer li:nth-child(4) {
	margin: 0;
	padding: 0;
}

ul.footer li a {
	color: white;
	text-decoration: none;
	letter-spacing: 0.3em;
}


ul.footer.cl-effect-4 li a {
	position: relative;
	display: inline-block;
	outline: none;
	color: #fff;
	text-decoration: none;
	text-transform: uppercase;
	text-shadow: 0 0 1px rgba(255,255,255,0.3);
}

/* Effect 4: bottom border enlarge */
.cl-effect-4 a {
	padding: 0 0 10px;
}

.cl-effect-4 a::after {
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	height: 1px;
	background: #fff;
	content: '';
	opacity: 0;
	-webkit-transition: height 0.3s, opacity 0.3s, -webkit-transform 0.3s;
	-moz-transition: height 0.3s, opacity 0.3s, -moz-transform 0.3s;
	transition: height 0.3s, opacity 0.3s, transform 0.3s;
	-webkit-transform: translateY(-10px);
	-moz-transform: translateY(-10px);
	transform: translateY(-10px);
}

.cl-effect-4 a:hover::after,
.cl-effect-4 a:focus::after {
	height: 2px;
	opacity: 1;
	-webkit-transform: translateY(0px);
	-moz-transform: translateY(0px);
	transform: translateY(0px);
}

ul.footer-lan li {
	display: inline;
	text-align: center;
	margin: 0 5px;
	font-size: 1.7em;
}

ul.footer-lan li img{
	vertical-align: top;
}

a.lan img {
	-webkit-transition: none;
    -moz-transition:none;
    -o-transition:none;
    transition:none;
}

a.lan:hover img {
	opacity:1;
	filter: alpha(opacity=100);
}

.footer-logo {
	display: block;
	margin: 50px auto 10px auto;
}

p.copy {
	text-align: center;
	height: 50px;
	line-height: 50px;
}

.bottom_contact {
	position: fixed;
	bottom: -92px;
	left: 0;
	width: 100%;
	height: 75px;
	text-align: center;
    color: #FFF;
	background-color: #231815;
	z-index: 200;
}

.bottom_contact ul {
	padding-top: 20px;
}

.bottom_contact li {
	display: inline-block;
}

.bottom_contact li:first-child {
	margin-right: 20px;
}

.pcOnly {
	display: block;
}

.spOnly {
	display: none;
}

.pcInline {
	display: inline;
}

.spInline {
	display: none;
}



/* ipad
***************************************************************************/
@media only screen and (max-width:900px) {
	eyecatch.about {
		height: 161px;
	}
	
	.menu li.bo {
		width: 20px;
	}
	
	div.nav {
		display: none;
		visibility: hidden;
		opacity: 0;
	}
	
	header .menu-btn {
		display: block;
		visibility: visible;
		opacity: 1;
	}
	
	.menu li {
		margin: 30px auto;
		margin-bottom: 40px;
		text-align: center;
		opacity: 0;
	}
	
	.menu li a {
		font-size: 2.5em;
		font-weight: bold;
	}
	
	.box{
		padding-left: 30px;
		padding-right: 30px;
	}
		
	.contents {
		width: auto;
		padding-left: 20px;
		padding-right: 20px;
	}
	

	
	ul.footer li:nth-child(4) {
		display: block;
	}
}
















/* ------------------------------------------
smartphone
------------------------------------------ */
@media only screen and (max-width:700px) {
	header {
		height: 75px;
	}
	
	header h1 {
		position: absolute;
		left: 10px;
		top: 15px;
	}
	
	header h1 img {
		width: 250px;
	}
	
	header .menu-btn {
		right: 5px;
		top: 5px;
	}
	
	header.home {
		margin-bottom: 350px;
	}
	
	.eyecatch.about {
		height: 300px;
	}
	
	.eyecatch.plan {
		height: 300px;
	}
	
	.eyecatch.gallery {
		height: 300px;
	}
	
	.eyecatch.access {
		height: 300px;
	}
	
	.eyecatch.event {
		height: 300px;
	}
	
	.eyecatch.privacy {
		height: 300px;
	}
	
	.menu li {
		margin-top: 10px;
		margin-bottom: 20px;
		text-align: center;
		opacity: 0;
	}
	
	.menu li a {
		font-size: 2.0em;
		font-weight: bold;
	}
	
	
	.sec_content.business {
		margin-top:0;
	}
	.sec_content.business dl{
		margin-bottom:0;	
	}
	
	.sec_content.business dt{
		text-align:center;
		height:65px;
		border-top:1px solid #EFEFEF;
		background-image:url('../img/accordion_open.png');
		background-position:97% center;
		background-repeat:no-repeat;
		background-size:32px;	
		overflow: hidden;
	}
	
	.sec_content.business dt:hover {
		cursor:pointer;
	}
	
	.sec_content.business dl:first-child dt {
		border-top:none;	
	}
	
	.sec_content.business dd {
		text-align:center;
		border-top:2px solid #FFF;
		margin-top:-1px;
		padding:30px 0;		
	}
	
	.sec_content.business dt img {
		width:auto;
		padding:0;
	}
	
	.floatBox > .left,
	.floatBox > .right{
		width: 100%;
		height: auto !important;
	}
	
	.floatBox .img{
		height: 210px;
	}
	
	.box{
		padding: 45px 10px 40px 10px;
	}
	
	.floatBox{
		height: auto !important;
	}
	
	.floatBox .verticalBox{
		display: block;
	}
	
	.box{
		display: block;
	}
	
	section.box2.home {
		width: 315px;
		margin: 0 auto;
	}
	
	.floatBox p, section.box2.home p {
		width: 315px;
		margin: 0 auto;
		line-height: 1.5em;
	}
	
	.floatBox .verticalBox{
		padding-top: 0 !important;
	}
	
	.tel,
	.fax {
		display: inline-block;
	}
	
	ul.footer li {
		display: block;
		text-align: center;
		margin: 0;
		margin-bottom: 20px;
		font-size: 1.7em;
	}
	
	#map_canvas {
		height:225px;
	}
	
	.arrow4{
	  width: 10px;
	  height: 10px;
	  border-top: 1px solid #ba7b22;
	  border-right: 1px solid #ba7b22;
	  transform: rotate(135deg);
	  margin: 0 auto;
	}
	
	.tel {
		margin-right: 0;
	}
	
	.fax {
		margin-left: 0;
	}
	
	.qa dl dt.title{
		font-size: 2em;
	}
	
	.contents img {
		width:100% !important;
	}
	
	.contents .about-img {
		text-align: center;
	}
	
	.contents .about-img ul li .img {
		margin: 0 0 10px 0;
	    width: 100%;
		float: none;
	}
		
	.gallery {
		width: 100%;
		margin-bottom: 0;
	}
	
	.gallery figure {
		width: 47%;
		float: left;
		margin: 0 1.5% 15px;
	}
	
	.gallery figure img {
		width: 100%;
	}
	
	.event #date {
		width: 250px !important;
		padding: 0;
	}
	
	.event table.table_img td,
	.event table.table_img2 td {
		width: 100% !important;
		display: block;
	}
	
	.reservation table td {
		width: 100% !important;
		display: block;
		padding: 15px 0;
	}
	
	.tel-box {
		display: block;
		padding: 10px 0;
	}
	
	.stay-box .stay-big img {
		width: 100%;
	}
	
	.stay-box .etc .left {
		width: 100%;
		float: none;
	}
	
	.stay-box ul li {
		width: 48%;
		margin: 0 1% 10px;
	}
	
	.pcOnly {
		display: none;
	}
	
	.spOnly {
		display: block;
	}
	
	.pcInline {
		display: none;
	}
	
	.spInline {
		display: inline;
	}
	
	.bottom_contact ul {
		padding-top: 20px;
	}
	
	.bottom_contact {
		height: 50px;
	}
	
	/*.bottom_contact a img {
		width: 100%;
	}*/
}


/* ------------------------------------------
smartphone
------------------------------------------ */
@media only screen and (max-width:767px) {	
	
	.accordion{
		margin-bottom: 0;
	}
	.accordion .charm_sp_cont{
		display: flex;
		justify-content: flex-start;
	}
	.accordion .charm_sp_cont .charm_sp_tt{
		background-repeat: no-repeat;
		background-position: right 13px;
		background-size: 45px 40px;
		padding-top: 22px;
	}
	.accordion .charm_sp_01 .charm_sp_tt{
		background-image: url(../img/charm1.jpg);
	}
	.accordion .charm_sp_02 .charm_sp_tt{
		background-image: url(../img/charm2.jpg);
	}
	.accordion .charm_sp_03 .charm_sp_tt{
		background-image: url(../img/charm3.jpg);
	}
	.accordion .charm_sp_04 .charm_sp_tt{
		background-image: url(../img/charm4.jpg);
	}
	.accordion .charm_sp_05 .charm_sp_tt{
		background-image: url(../img/charm5.jpg);
	}

	.accordion .charm_sp_cont .sp_nom{
		font-family: serif;
		font-size: 32px;
		font-weight: bold;
		text-align: left;
		margin-bottom: 4px;
		color: #D13129;
		border: none;
		padding-left: 30%;
		padding-top: 10px;
	}
	.accordion .charm_sp_cont .charm_sp_tt{
		font-size: 16px;
		font-weight: bold;
		border: none;
		padding-left: 20px;
		padding-right: 65px;
		text-align: left;
	}
	.accordion .charm_tt_cont{
		text-align: center;
		background-color: #D13129;
		padding-top: 100px;

	}
	
	.accordion dl{
		margin-bottom:0;	
	}
	
	.accordion dt{
		text-align:center;
		height:65px;
		border-top:1px solid #EFEFEF;
		background-image:url('../img/accordion_open.png');
		background-position:97% center;
		background-repeat:no-repeat;
		background-size:32px;	
		overflow: hidden;
	}
	
	.accordion dt:hover {
		cursor:pointer;
	}
	
	.accordion dl:first-child dt {
		border-top:none;	
	}
	
	.accordion dd {
		text-align:center;
		border-top:2px solid #FFF;
		margin-top:-1px;
		padding:30px 0;		
	}
	
	.accordion dt img {
		width:auto;
		padding:0;
	}
}

@media only screen and (max-width:480px) {

	.accordion .charm_sp_cont .sp_nom{
		font-family: serif;
		font-size: 28px;
		font-weight: bold;
		text-align: left;
		margin-bottom: 4px;
		color: #D13129;
		border: none;
		padding-left: 10%;
		padding-top: 10px;
	}
	.accordion .charm_sp_cont .charm_sp_tt{
		font-size: 14px;
		font-weight: bold;
		border: none;
		padding-left: 20px;
		padding-right: 65px;
		text-align: left;
	}
}


/* ------------------------------------------
smartphone
------------------------------------------ */
@media only screen and (max-width:321px) {
	.box{
		padding: 45px 2.5px 40px 2.5px;
	}
	
	.contents {
		padding-left: 2.5px;
		padding-right: 2.5px;
	}
	
	.sec_content.business dt{
		background-position:99% center;
	}
}

/* IMAGE LIGHTBOX SELECTOR */

		#imagelightbox
		{
			cursor: pointer;
			position: fixed;
			z-index: 10000;

			-ms-touch-action: none;
			touch-action: none;

			-webkit-box-shadow: 0 0 3.125em rgba( 0, 0, 0, .75 ); /* 50 */
			box-shadow: 0 0 3.125em rgba( 0, 0, 0, .75 ); /* 50 */
		}


		/* ACTIVITY INDICATION */

		#imagelightbox-loading,
		#imagelightbox-loading div
		{
			border-radius: 50%;
		}
		#imagelightbox-loading
		{
			width: 2.5em; /* 40 */
			height: 2.5em; /* 40 */
			background-color: #444;
			background-color: rgba( 0, 0, 0, .5 );
			position: fixed;
			z-index: 10003;
			top: 50%;
			left: 50%;
			padding: 0.625em; /* 10 */
			margin: -1.25em 0 0 -1.25em; /* 20 */

			-webkit-box-shadow: 0 0 2.5em rgba( 0, 0, 0, .75 ); /* 40 */
			box-shadow: 0 0 2.5em rgba( 0, 0, 0, .75 ); /* 40 */
		}
			#imagelightbox-loading div
			{
				width: 1.25em; /* 20 */
				height: 1.25em; /* 20 */
				background-color: #fff;

				-webkit-animation: imagelightbox-loading .5s ease infinite;
				animation: imagelightbox-loading .5s ease infinite;
			}

			@-webkit-keyframes imagelightbox-loading
			{
				from { opacity: .5;	-webkit-transform: scale( .75 ); }
				50%	 { opacity: 1;	-webkit-transform: scale( 1 ); }
				to	 { opacity: .5;	-webkit-transform: scale( .75 ); }
			}
			@keyframes imagelightbox-loading
			{
				from { opacity: .5;	transform: scale( .75 ); }
				50%	 { opacity: 1;	transform: scale( 1 ); }
				to	 { opacity: .5;	transform: scale( .75 ); }
			}


		/* OVERLAY */

		#imagelightbox-overlay
		{
			background-color: #fff;
			background-color: rgba( 255, 255, 255, .9 );
			position: fixed;
			z-index: 9998;
			top: 0;
			right: 0;
			bottom: 0;
			left: 0;
		}


		/* "CLOSE" BUTTON */

		#imagelightbox-close
		{
			width: 2.5em; /* 40 */
			height: 2.5em; /* 40 */
			text-align: left;
			background-color: #666;
			border-radius: 50%;
			position: fixed;
			z-index: 10002;
			top: 2.5em; /* 40 */
			right: 2.5em; /* 40 */

			-webkit-transition: color .3s ease;
			transition: color .3s ease;
		}
		#imagelightbox-close:hover,
		#imagelightbox-close:focus { background-color: #111; }

			#imagelightbox-close:before,
			#imagelightbox-close:after
			{
				width: 2px;
				background-color: #fff;
				content: '';
				position: absolute;
				top: 20%;
				bottom: 20%;
				left: 50%;
				margin-left: -1px;
			}
			#imagelightbox-close:before
			{
				-webkit-transform: rotate( 45deg );
				-ms-transform: rotate( 45deg );
				transform: rotate( 45deg );
			}
			#imagelightbox-close:after
			{
				-webkit-transform: rotate( -45deg );
				-ms-transform: rotate( -45deg );
				transform: rotate( -45deg );
			}


		/* CAPTION */

		#imagelightbox-caption
		{
			text-align: center;
			color: #fff;
			background-color: #666;
			position: fixed;
			z-index: 10001;
			left: 0;
			right: 0;
			bottom: 0;
			padding: 0.625em; /* 10 */
		}


		/* NAVIGATION */

		#imagelightbox-nav
		{
			background-color: #444;
			background-color: rgba( 0, 0, 0, .5 );
			border-radius: 20px;
			position: fixed;
			z-index: 10001;
			left: 50%;
			bottom: 3.75em; /* 60 */
			padding: 0.313em; /* 5 */

			-webkit-transform: translateX( -50% );
			-ms-transform: translateX( -50% );
			transform: translateX( -50% );
		}
			#imagelightbox-nav button
			{
				width: 1em; /* 20 */
				height: 1em; /* 20 */
				background-color: transparent;
				border: 1px solid #fff;
				border-radius: 50%;
				display: inline-block;
				margin: 0 0.313em; /* 5 */
			}
			#imagelightbox-nav button.active
			{
				background-color: #fff;
			}


		/* ARROWS */

		.imagelightbox-arrow
		{
			width: 3.75em; /* 60 */
			height: 7.5em; /* 120 */
			background-color: #444;
			background-color: rgba( 0, 0, 0, .5 );
			vertical-align: middle;
			display: none;
			position: fixed;
			z-index: 10001;
			top: 50%;
			margin-top: -3.75em; /* 60 */
		}
		.imagelightbox-arrow:hover,
		.imagelightbox-arrow:focus	{ background-color: rgba( 0, 0, 0, .75 ); }
		.imagelightbox-arrow:active { background-color: #111; }

			.imagelightbox-arrow-left	{ left: 2.5em; /* 40 */ }
			.imagelightbox-arrow-right	{ right: 2.5em; /* 40 */ }

			.imagelightbox-arrow:before
			{
				width: 0;
				height: 0;
				border: 1em solid transparent;
				content: '';
				display: inline-block;
				margin-bottom: -0.125em; /* 2 */
			}
				.imagelightbox-arrow-left:before
				{
					border-left: none;
					border-right-color: #fff;
					margin-left: -0.313em; /* 5 */
				}
				.imagelightbox-arrow-right:before
				{
					border-right: none;
					border-left-color: #fff;
					margin-right: -0.313em; /* 5 */
				}

		#imagelightbox-loading,
		#imagelightbox-overlay,
		#imagelightbox-close,
		#imagelightbox-caption,
		#imagelightbox-nav,
		.imagelightbox-arrow
		{
			-webkit-animation: fade-in .25s linear;
			animation: fade-in .25s linear;
		}
			@-webkit-keyframes fade-in
			{
				from	{ opacity: 0; }
				to		{ opacity: 1; }
			}
			@keyframes fade-in
			{
				from	{ opacity: 0; }
				to		{ opacity: 1; }
			}

		@media only screen and (max-width: 41.250em) /* 660 */
		{
			#container
			{
				width: 100%;
			}
			#imagelightbox-close
			{
				top: 1.25em; /* 20 */
				right: 1.25em; /* 20 */
			}
			#imagelightbox-nav
			{
				bottom: 1.25em; /* 20 */
			}

			.imagelightbox-arrow
			{
				width: 2.5em; /* 40 */
				height: 3.75em; /* 60 */
				margin-top: -2.75em; /* 30 */
			}
			.imagelightbox-arrow-left	{ left: 1.25em; /* 20 */ }
			.imagelightbox-arrow-right	{ right: 1.25em; /* 20 */ }
		}

		@media only screen and (max-width: 20em) /* 320 */
		{
			.imagelightbox-arrow-left	{ left: 0; }
			.imagelightbox-arrow-right	{ right: 0; }
		}