html{
	padding:0;
	margin:0 auto;
	background:#FFFEFB;
	color:#282B2C;
	line-height:160%;
	font-family: "Shippori Mincho B1", serif;
}

body{
	padding:0;
	margin:0 auto;
	text-align:center;
}

img {
    max-width: 100%;
    height: auto;
    width /***/:auto;　/*IE8のみ適用*/
}

section{
	padding:100px 20px;
	text-align:center;
}

h2{
	font-size:36px;
	margin-bottom:30px;
	font-weight:bold;
}

.section_back{
	background:#F6F5F1
}

.room_font{
	margin-top:10px;
	font-weight:bold;
	font-size:20px;
}

table{
	width:100%;
}

.font-weight-bold{
	font-weight:bold;
}

.btn{
	display: inline-block;
	background:#BE9B5A;
	color: #fff;
	padding: 16px 40px;
	text-decoration: none;
	border-radius: 30px;
	transition: background-color 0.3s ease;
	font-size:18px;
	font-weight:bold;
}

.btn:hover {
	background-color:#DBAF6A;
	transition: background-color 0.3s ease;
}

.fa-solid{
	margin-right:2px;
}

.side_reservation {
    width: 40px;
    height: 160px;
    background: #BE9B5A;
	color:#FFFFFF;
    position: fixed;
    bottom: 200px;
    right: 0;
    writing-mode: vertical-rl;
    display: flex;
    align-items: center; /* 縦方向の中央揃え */
    justify-content: center; /* 横方向の中央揃え */
	transition: background-color 0.3s ease;
	font-weight:bold;
}

.side_reservation:hover {
	background-color:#DBAF6A;
	transition: background-color 0.3s ease;
}

.qanda_area{
	text-align:left;
}

.qanda_area ul{
	list-style:none;
	display: flex;
	flex-direction: column;
	margin-left:14px;
}

.qanda_area ul.faq-item li::before{
	content: "Q.";
	margin-left:-14px; /* 1文字分、左に寄せる */
	color:#BE9B5A;
	font-weight:bold;
}


.qanda_area ul.faq-answer li::before{
	content: "A.";
	margin-left:-14px; /* 1文字分、左に寄せる */
	font-weight:bold;
}

.faq-item-color{
	color:#BE9B5A;
}

.concept_text a {
	text-decoration: underline;
}

.clear_both{
	clear:both;
}

.name_back{
	text-align:center;
	background:#3A1700;
	color:#FFFFFF;
	padding:10px;
	margin-top:10px;
}

.news{
	width:100%;
	height:208px;
	overflow:auto;
	padding:15px;
	border:1px solid #5F6E74;
	box-sizing:border-box;
	text-align:left;
}

.news_data{
	border-bottom: 1px dotted #666;
	padding:12px 0 10px 0;
}

/* コンセプトアコーディオンメニュー */
/*------------------------------------------------------*/

.c_accordion-content {
	display: none;
}

.c_accordion-header {
	background-color: #BE9B5A;
	color:#FFFFFF;
	padding: 12px 45px 10px 20px;
	margin: 10px 0 0;
	transition: background .3s ease;
	cursor: pointer;
	position: relative;
}

.c_accordion-header::before,
.c_accordion-header::after{
	position:absolute;
	content:'';
	top:1px;
	right:20px;
	bottom:0;
	width:12px;
	height:2px;
	margin:auto;
	background:#151E2F;
	border:1px solid #FFFFFF;
}
.c_accordion-header::after{
	transform:rotate(-90deg);
	transition:transform 0.3s;
}
.c_accordion-header.active::after{transform:rotate(0deg);}

.c_accordion-content {
	background-color: #FFF;
	padding: 12px 20px 10px;
}

.c_accordion-header span,
.c_accordion-content span{
	padding-left: 25px;
	position: relative;
}

/* hover */
.c_accordion-header:hover {
	background-color: #DBAF6A;
}

/*------------------------------------------------------*/


/* よくある質問アコーディオンメニュー */
/*------------------------------------------------------*/

.accordion-content {
    display: none;
}


.accordion-header {
  background-color: #5F6E74;
  color:#FFFFFF;
  padding: 12px 45px 10px 20px;
  margin: 10px 0 0;
  transition: background .3s ease;
  cursor: pointer;
  position: relative;
}

.accordion-header::before,
.accordion-header::after{
  position:absolute;
  content:'';
  top:1px;
  right:20px;
  bottom:0;
  width:12px;
  height:2px;
  margin:auto;
  background:#151E2F;
  border:1px solid #FFFFFF;
}
.accordion-header::after{
  transform:rotate(-90deg);
  transition:transform 0.3s;
}
.accordion-header.active::after{transform:rotate(0deg);}

.accordion-content {
  background-color: #FFF;
  padding: 12px 20px 10px;
}

.accordion-header span,
.accordion-content span{
  padding-left: 25px;
  position: relative;
}

/* hover */
.accordion-header:hover {
  background-color: #7E9299;
}

/*------------------------------------------------------*/


.mt10{
	margin-top:10px;
}

.mt20{
	margin-top:20px;
}

.mt30{
	margin-top:30px;
}

.mt40{
	margin-top:40px;
}

.mt50{
	margin-top:50px;
}

.mt80{
	margin-top:80px;
}

.mt100{
	margin-top:100px;
}

.mb5{
	margin-bottom:5px;
}

.mb10{
	margin-bottom:10px;
}

.mb20{
	margin-bottom:20px;
}

.mb30{
	margin-bottom:30px;
}

.mb40{
	margin-bottom:40px;
}

.mb50{
	margin-bottom:50px;
}

.mb60{
	margin-bottom:60px;
}

.mb70{
	margin-bottom:70px;
}

.mb80{
	margin-bottom:80px;
}

.mb100{
	margin-bottom:100px;
}

.h_200{
	height:200px;
}


/* スマホ用CSS */
@media print, screen and ( max-width : 768px ) {
	
	.content_area{
		width:100%;
		margin:0 auto;
		padding:0;
	}
	
	.content_area_relative{
		width:100%;
		margin:0 auto;
		padding:0;
	}
	
	.about_img img{
		width: 96%;
		height: auto;
		display: block;
		border-radius: 8px;
		z-index:2;
		position: relative;
	}
	
	.about_text {
		background: #f5f5f5;
		box-shadow: 0 4px 10px rgba(0,0,0,0.1);
		text-align:left;
		z-index:-998;
		transform: translate(5%, -34%);
		position: relative;
		padding: 200px 30px 30px 30px;
		margin-bottom:-192px;
		width:95%;
	}
	
	.about_text_title {
		font-size:28px;
		font-weight:bold;
		margin-bottom:20px;
		line-height:120%;
	}
	
	.inquiry_title_area{
		background:#333333;
		color:#FFFFFF;
		font-size:20px;
		padding:20px 0;
	}
	
	.inquiry_area{
		width:100%;
		margin:0 auto;
		padding:30px;
		border:1px solid #333333;
		box-sizing:border-box;
	}
	
	#tel_area{
		float:none;
		width:100%;
	}
	
	#tel_area img{
		width:100%;
		height:100%;
	}
	
	#toiawase_area{
		float:none;
		width:100%;
		margin-top:10px;
	}
	
	#toiawase_area img{
		width:100%;
		height:100%;
	}
	
	.img_concept{
		width:100%;
		margin: 0 auto 30px;
		padding:0;
	}
	
	.img_concept img{
		width:100%;
	}
	
	.facility_area{
		width:100%;
		margin:0 auto;
		padding:0;
	}
	
	.map_area{
		width:100%;
		margin:0 auto;
		padding:0;
	}
	
	
	th{
		padding:15px 20px;
		background:#3A1700;
		vertical-align:middle;
		line-height:120%;
		font-weight:normal;
		text-align:left;
		width:100%;
		color:#FFFFFF;
		display:block;
		border:none;
		border-top:1px solid #5F6E74;
		border-bottom:1px solid #5F6E74;
		border-left:1px solid #5F6E74;
		border-right:1px solid #5F6E74;
	}
	
	td{
		padding:15px 20px;
		vertical-align:middle;
		line-height:140%;
		width:100%;
		text-align:left;
		display:block;
		border:none;
		border-left:1px solid #5F6E74;
		border-right:1px solid #5F6E74;
	}
	
	
	td.last{
		border-bottom:1px solid #5F6E74;
	}
	
	.concept_text {
		overflow: scroll;
		height:400px;
		border:1px solid #5F6E74;
		width:100%;
		margin: 20px auto 0;
		padding:20px;
		text-align:left;
		overflow-x: hidden;
	}
	
	.accordion{
		width:100%;
		margin:0 auto;
		padding:0
	}
	
	h3{
		font-size:20px;
		margin-bottom:20px;
		font-weight:bold;
		line-height:140%;
	}
	
	.c_accordion-header {
		font-size: 14px;
	}
	
	.page_title{
		font-size:50px;
	}
	
	.btn{
		width:100%;
	}
	
	.page_header{
		padding:100px 20px 0 20px;
	}
	
	.room_area {
		margin:0 auto;
		padding:0;
	}
	
	.item {
		padding: 20px;
		text-align: center;
		border: 1px solid #5F6E74;
		width:100%;
		box-sizing: border-box;
	}
	
	.item img{
		width:100%;
	}
	
	.room_area_last {
		margin:0 auto;
		padding:0;
	}
	
	.item_last{
		padding: 20px;
		text-align: center;
		border: 1px solid #5F6E74;
		width:100%;
		box-sizing: border-box;
	}
	
	.item_last img{
		width:100%;
	}
	
	.btn_area {
		margin:0 auto;
		padding:0;
	}
	
	.btn_data{
		text-align: center;
		width:100%;
		box-sizing: border-box;
		margin-bottom:20px;
	}
	
	.btn_img img {
		width:100%;
	}
	
	.facilities_area {
		margin:0 auto;
		padding:0;
	}
	
	.facilities_data{
		padding: 20px;
		text-align: center;
		border: 1px solid #5F6E74;
		width:100%;
		box-sizing: border-box;
		margin-bottom:20px;
	}
	
	/* 追加：エントランスに関するCSS */
	.entrance_area {
		margin:0 auto;
		padding:0;
	}
	
	.entrance_data{
		padding: 20px;
		text-align: center;
		border: 1px solid #5F6E74;
		width:100%;
		box-sizing: border-box;
		margin-bottom:20px;
	}
	
	.last_minus{
		margin-bottom:-20px;
	}

}

/* PC用CSS */
@media print, screen and ( min-width : 769px ) {
	
	.content_area{
		width:1200px;
		margin:0 auto;
		padding:0;
	}
	
	.content_area_relative{
		width:1000px;
		margin:0 auto;
		padding:0;
		position: relative;
		margin-bottom:30px;
	}
	
	.about_img img{
		width: 500px;
		height: auto;
		display: block;
		border-radius: 8px;
		z-index:2;
	}
	
	.about_text {
		position: absolute;
		top: 30px;
		right: 0;
		background: #f5f5f5;
		padding: 30px 30px 30px 90px;
		max-width: 560px;
		box-shadow: 0 4px 10px rgba(0,0,0,0.1);
		text-align:left;
		z-index:-998;
	}
	
	.about_text_title {
		font-size:28px;
		font-weight:bold;
		margin-bottom:20px;
		line-height:120%;
	}
	
	.inquiry_title_area{
		background:#333333;
		color:#FFFFFF;
		font-size:32px;
		padding:20px 0;
	}
	
	.inquiry_area{
		width:1200px;
		margin:0 auto;
		padding:30px 120px;
		border:1px solid #333333;
		box-sizing:border-box;
	}
	
	#tel_area{
		float:left;
		width:450px;
	}
	
	#tel_area img{
		width:450px;
		height:126px;
	}
	
	#toiawase_area{
		float:right;
		width:450px;
	}
	
	#toiawase_area img{
		width:450px;
		height:126px;
	}
	
	.img_concept{
		width:800px;
		margin: 0 auto 30px;
		padding:0;
	}
	
	.img_concept img{
		width:800px;
	}
	
	.facility_area{
		width:800px;
		margin:0 auto;
		padding:0;
	}
	
	.map_area{
		width:800px;
		margin:0 auto;
		padding:0;
	}
	
	th{
		padding:15px 20px;
		background:#3A1700;
		vertical-align:middle;
		line-height:120%;
		font-weight:normal;
		text-align:left;
		width:35%;
		color:#FFFFFF;
		border-top:1px solid #5F6E74;
		border-left:1px solid #5F6E74;
		border-bottom:1px solid #5F6E74;
	}
	
	td{
		padding:15px 20px;
		border-top:1px solid #5F6E74;
		border-bottom:1px solid #5F6E74;
		border-right:1px solid #5F6E74;
		vertical-align:middle;
		line-height:140%;
		width:65%;
		text-align:left;
	}
	
	.concept_text {
		overflow: scroll;
		height:300px;
		border:1px solid #5F6E74;
		width:800px;
		margin: 20px auto 0;
		padding:20px;
		text-align:left;
		overflow-x: hidden;
	}
	
	.accordion{
		width:800px;
		margin:0 auto;
		padding:0
	}
	
	.page_title{
		font-size:80px;
	}
	
	h3{
		font-size:24px;
		margin-bottom:20px;
		font-weight:bold;
		line-height:140%;
	}
	
	.btn{
		width:800px;
	}
	
	.page_header{
		padding:120px 20px 20px 20px;
	}
	
	.room_area {
		display: flex;  /* 子要素を横並びにする */
		gap: 10px;      /* 要素間の隙間 */
	}
	
	.item {
		padding: 20px;
		text-align: center;
		border: 1px solid #5F6E74;
		width:395px;
		box-sizing: border-box;
	}
	
	.item img{
		width:355px;
	}
	
	.room_area_last {
		margin:0 auto;
		padding:0;
	}
	
	.item_last{
		margin:0 auto;
		padding: 20px;
		text-align: center;
		border: 1px solid #5F6E74;
		width:395px;
		box-sizing: border-box;
	}
	
	.item_last img{
		width:355px;
	}
	
	.btn_area {
		display: flex;  /* 子要素を横並びにする */
		gap: 10px;      /* 要素間の隙間 */
	}
	
	.btn_data{
		text-align: center;
		width:395px;
		box-sizing: border-box;
	}
	
	.btn_img img {
		width:100%;
	}
	
	.facilities_area {
		display: flex;  /* 子要素を横並びにする */
		gap: 10px;      /* 要素間の隙間 */
	}
	
	.facilities_data{
		padding: 20px;
		text-align: center;
		border: 1px solid #5F6E74;
		width:395px;
		box-sizing: border-box;
	}
	
	/* 追加：エントランスに関するCSS */
	.entrance_area {
		display: flex;  /* 子要素を横並びにする */
		gap: 10px;      /* 要素間の隙間 */
	}
	
	.entrance_data{
		padding: 20px;
		text-align: center;
		border: 1px solid #5F6E74;
		width:600px;
		box-sizing: border-box;
	}
	
	.last_minus{
		
	}
}



*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;*behavior:url(/scripts/boxsizing.htc)}.container{margin:0 auto}.clr:after,.col:after,.container:after,.group:after,.row:after{content:"";display:table;clear:both}.row{padding-bottom:0}.col{display:block;float:left;width:100%}@media (min-width:769px),print{.gutters .col{margin-left:2%}.gutters .col:first-child{margin-left:0}.gutters .colR:first-child{margin-right:0}.sp{display:none}}@media(max-width:768px){.sp_none{display:none !important;}}

@media only screen and ( max-width : 768px ) {
  .sbox {
    margin-bottom: 20px;
  }
  .container {
    padding: 0 30px;
  }
  /*section {
    padding: 100px 0;
  }*/
}

@media only screen and ( max-width : 480px ) {
  .container {
    padding: 0 20px;
  }
}
@media only screen and ( max-width : 374px ) {
  .container {
    padding: 0 10px;
  }
}

@media print, screen and ( min-width : 769px ) {
  .sbox {
    margin-bottom: 25px;
  }
  .container {
    /*width: 1080px;*/
	width:1200px;
  }
  /*section {
    padding: 200px 0;
  }*/
}


/* ヘッダーメニュー */
/*------------------------------------------------------*/

#header {
  box-shadow: 0px 3px 15px rgba(0,0,0,0.2);
  z-index: 99;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: #FFFEFB;
}
/*#gNav a:hover {
  color: #999;
}*/
nav li a {
  font-size: 14px;
  letter-spacing: 0.2em;
}
nav .sub-menu,.mean-container .mean-nav ul ul {
  background: #fff;
}

/* スマホ用メニューCSS */
/*@media only screen and ( max-width : 768px ) {*/
@media only screen and ( max-width : 1278px ) {
  #header {
    padding: 10px 0;
    height: 60px;
  }
  .h_logo {
	width: 200px;
    position: absolute;
    top: 3px;
    left: 10px;
    z-index: 100;
  }
  #gNav .nav {
    overflow-y: auto;
    height: 100vh;
  }
  .mean-nav .container {
    padding: 0;
  }
  nav li .fa {
    display: none;
  }
}

/* PC用メニューCSS */
/*@media print, screen and ( min-width : 769px ) {*/
@media print, screen and ( min-width : 1279px ) {
  #header {
    height: 80px;
  }
  .h_logo img {
	width: 290px;
  }
  #h_top {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  #gNav ul {
    position: relative;
    display: flex;
  }
  #gNav li {
    position: relative;
    margin-right: 3em;
  }
  #gNav li:last-child {
    margin-right: 0;
  }
  #gNav li i {
    font-size: 16px;
    margin-left: 5px;
  }
  #gNav li a {
    position: relative;
    display: block;
    text-align: center;
    line-height: 80px;
  }
  #gNav .sub-menu {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
    display: block;
    position: absolute;
    top: 50px;
    left: 50%;
    margin-left: -100px;
    width: 200px;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
  }
  #gNav .sub-menu a {
    padding: 10px;
    display: block;
    border-bottom: none;
    padding: 20px;
    line-height: 1.2em;
  }
  #gNav .sub-menu a:hover:after {
    content: none;
  }
  #gNav .sub-menu li {
    display: block;
    font-size: 16px;
    padding: 0;
    margin: 0;
  }
  #gNav .sub-menu li:last-child {
    border-bottom: none;
  }
  #gNav ul > li:hover {
    -webkit-transition: all .5s;
    transition: all .5s;
  }
  #gNav ul > li:hover a,#gNav .current-menu-item a,#gNav .current-menu-parent a {
    /*color: #bfd0ff;*/
	/*color:#ADD893;*/
  }
  #gNav li:hover ul.sub-menu {
    top: 80px;
    visibility: visible;
    opacity: 1;
    z-index: 9999;
  }
  #gNav li ul li:after {
    content: none;
  }
 #gNav li:hover ul.sub-menu a {
    color: #111;
  }
  #gNav .sub-menu li a:hover {
    background: #fff;
  }
  #gNav .contact_btn a:hover {
    color: #fff;
  }
}

/*------------------------------------------------------*/


/* ヘッダー画像 */
/*------------------------------------------------------*/

/* TOPページスマホ用CSS */
@media print, screen and ( max-width : 768px ) {
	#viewer {
		margin: 0 auto;
		width:100%;
		text-align: left;
		overflow: hidden;
		position: relative;
		/* 表示画像の高さ ÷ 表示画像の幅 × 100 */
		padding-top: 146%;
		z-index: -999;
	}
}

/* TOPページPC用CSS */
@media print, screen and ( min-width : 769px ) {
	#viewer {
		margin: 0 auto;
		width:100%;
		text-align: left;
		overflow: hidden;
		position: relative;
		/* 表示画像の高さ ÷ 表示画像の幅 × 100 */
		padding-top: 56%;
		z-index: -999;
	}
}
 
#viewer img {
    top: 0;
    left: 0;
    position: absolute;
	width:100%;
}


/* 各ページスマホ用CSS */
@media print, screen and ( max-width : 768px ) {
	#p_viewer {
		margin: 0 auto;
		width:100%;
		text-align: left;
		overflow: hidden;
		position: relative;
		/* 表示画像の高さ ÷ 表示画像の幅 × 100 */
		padding-top: 135.2%;
		z-index: -999;
	}
}

/* 各ページPC用CSS */
@media print, screen and ( min-width : 769px ) {
	#p_viewer {
		margin: 0 auto;
		width:100%;
		text-align: left;
		overflow: hidden;
		position: relative;
		/* 表示画像の高さ ÷ 表示画像の幅 × 100 */
		padding-top: 28.7%;
		z-index: -999;
	}
}
 
#p_viewer img {
    top: 0;
    left: 0;
    position: absolute;
	width:100%;
}

/*------------------------------------------------------*/


/* フッター */
/*------------------------------------------------------*/

footer{
	background:#333333;
	color:#FFFFFF;
	padding:30px 0 30px 0;
	font-size:12px;
}

footer img{
	width:200px;
}

.copyright{
	margin-top:10px;
	line-height:120%;
}

/* スマホ用CSS */
/*@media print, screen and ( max-width : 768px ) {
	.pc_menu{
		display:none;
	}
	
	.sm_menu{
		display:block;
	}
}*/

/* PC用CSS */
/*@media print, screen and ( min-width : 769px ) {
	.pc_menu{
		display:block;
	}
	
	.sm_menu{
		display:none;
	}
}*/

/*------------------------------------------------------*/