@charset "UTF-8";
/* ===================================================================
CSS information

 file name  : common.css
 author     : Ability Consultant
 style info : 基本・共通設定
=================================================================== */
@import url(../fonts/TrajanPro-Regular/styles.css);
#hnav .box_nav .gnav ul, .con_gnav .box_nav .gnav ul, html.lower #contents .con_topicpath {
	max-width: 1260px;
	margin: auto;
}
@media only screen and (max-width: 1024px) {
  #hnav .box_nav .gnav ul, .con_gnav .box_nav .gnav ul, html.lower #contents .con_topicpath {
		width: 95%;
  }
}

#header .box_header:after, .btn_fixed:after, #footer .box_top:after, #footer .box_footer:after, #footer .box_footer .box_nav .box_more:after {
	content: "";
	display: table;
	clear: both;
}

/*Animate */
/*Vertical text */
/* -----------------------------------------------------------
	基本設定、リンクカラーなど
----------------------------------------------------------- */
html {
	font-size: small;
	line-height: 1.5;
}

body {
	color: #150202;
	background: #d9d9d9;
	-webkit-text-size-adjust: none;
	font-size: 124%;
}
.ie body {
	font-size: 120%;
}
@media only screen and (max-width: 767px) {
  body {
		font-size: 116%;
  }
}
body a {
	color: #150202;
}
body a:link, body a:visited, body a:active {
	text-decoration: underline;
}
.mouse body a:hover, .touch body a.touchstart {
	text-decoration: none;
	color: #720b0b;
}
body img {
	max-width: 100%;
	-webkit-touch-callout: none;
}

body, pre, input, textarea, select {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}

input, select, textarea {
	font-size: 100%;
}

html.ie8 .view_tab,
html.ie8 .view_tab_sp,
html.ie8 .view_sp {
	display: none !important;
}
html.ie8 #page {
	min-width: 1260px !important;
	margin: auto;
	font-size: 100% !important;
}

@media only screen and (min-width: 1025px) {
  body .view_tab-sp, body .view_tab {
		display: none !important;
  }
}
@media print {
  body .view_tab-sp, body .view_tab {
		display: none !important;
  }
}
.ie8 body .view_tab-sp, .ie8 body .view_tab {
	display: none !important;
}
@media only screen and (min-width: 768px) {
  body .view_sp {
		display: none !important;
  }
}
@media print {
  body .view_sp {
		display: none !important;
  }
}
.ie8 body .view_sp {
	display: none !important;
}
@media only screen and (max-width: 1024px) {
  body .view_pc {
		display: none !important;
  }
}
@media only screen and (max-width: 767px) {
  body .view_pc-tab, body .view_tab {
		display: none !important;
  }
}

.mouse .over {
	-moz-transition: opacity 200ms ease-in;
	-o-transition: opacity 200ms ease-in;
	-webkit-transition: opacity 200ms ease-in;
	transition: opacity 200ms ease-in;
}
.mouse .over:hover, .touch .over.touchstart {
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
	opacity: 0.7;
}
.touch .over {
	-webkit-tap-highlight-color: transparent;
}
.touch .over.touchend {
	-moz-transition-delay: 200ms;
	-o-transition-delay: 200ms;
	-webkit-transition-delay: 200ms;
	transition-delay: 200ms;
}

* {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

/* -----------------------------------------------------------
	#page
----------------------------------------------------------- */
#page {
	overflow: hidden;
	background: #a31422;
}
@media only screen and (min-width: 768px) {
  #page {
		font-size: 100% !important;
  }
}
@media print {
  #page {
		font-size: 100% !important;
  }
}
.ie8 #page {
	font-size: 100% !important;
}
#page.fixed {
	margin-bottom: 140px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #page.fixed {
		margin-bottom: 140px;
  }
}
@media only screen and (max-width: 767px) {
  #page.fixed {
		margin-bottom: 0;
  }
}

/* -----------------------------------------------------------
	#header
----------------------------------------------------------- */
#header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 150;
}
@media only screen and (max-width: 767px) {
  #header {
		height: 60px;
		z-index: 250;
		position: fixed;
		background: #fff;
  }
}
@media only screen and (max-width: 767px) {
  #header .box_header {
		text-align: left;
  }
}
#header .box_header .logo {
	float: left;
	margin-left: 5.72917%;
	margin-top: 90px;
}
@media only screen and (max-width: 767px) {
  #header .box_header .logo {
		margin-left: 0;
		margin-top: 0;
		float: none;
		margin-left: 70px;
  }
}
@media only screen and (max-width: 400px) {
  #header .box_header .logo {
		margin-left: 65px;
  }
}
#header .box_header .logo a {
	display: block;
	padding: 5px 0;
}
@media only screen and (max-width: 767px) {
  #header .box_header .logo a img {
		height: 50px;
		width: auto;
		max-width: none;
  }
}
#header .box_header .box_top {
	float: right;
	margin-right: 4.6875%;
	margin-top: 10px;
}
@media only screen and (max-width: 767px) {
  #header .box_header .box_top {
		float: none;
		position: absolute;
		right: .5em;
		top: 0;
		color: #150202;
		margin: 0;
  }
}
#header .box_header .box_top h1 {
	padding: .8em .5em;
	font-size: 63%;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Times New Roman", serif;
	color: #fff;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #header .box_header .box_top h1 {
		font-size: 57%;
  }
}
@media only screen and (max-width: 767px) {
  #header .box_header .box_top h1 {
		font-size: 50%;
  }
}
#header .box_header .box_top > ul {
	margin-top: 10px;
}
#header .box_header .box_top > ul li {
	display: inline-block;
	color: #fff;
}
@media only screen and (max-width: 767px) {
  #header .box_header .box_top > ul li {
		color: #150202;
  }
}
#header .box_header .box_top > ul li.contact {
	margin-right: 20px;
}
#header .box_header .box_top > ul li.contact i {
	font-size: 113%;
	display: inline-block;
	vertical-align: middle;
	margin-right: 5px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #header .box_header .box_top > ul li.contact i {
		font-size: 100%;
  }
}
@media only screen and (max-width: 767px) {
  #header .box_header .box_top > ul li.contact i {
		font-size: 88%;
  }
}
#header .box_header .box_top > ul li.contact span {
	font-size: 163%;
	display: inline-block;
	vertical-align: middle;
	font-family: "Cinzel", serif;
	line-height: 1;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #header .box_header .box_top > ul li.contact span {
		font-size: 138%;
  }
}
@media only screen and (max-width: 767px) {
  #header .box_header .box_top > ul li.contact span {
		font-size: 125%;
  }
}
#header .box_header .box_top > ul li.box_lang {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	right: 0;
	top: 0;
}
#header .box_header .box_top > ul li.box_lang .cap {
	font-size: 100%;
	cursor: pointer;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #header .box_header .box_top > ul li.box_lang .cap {
		font-size: 94%;
  }
}
@media only screen and (max-width: 767px) {
  #header .box_header .box_top > ul li.box_lang .cap {
		font-size: 125%;
  }
}
@media only screen and (max-width: 767px) {
  #header .box_header .box_top > ul li.box_lang .cap {
		font-size: 16px;
		padding: .5em;
  }
}
#header .box_header .box_top > ul li.box_lang ul {
	position: absolute;
	display: none;
	left: 0;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-ms-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	opacity: 0;
}
@media only screen and (max-width: 767px) {
  #header .box_header .box_top > ul li.box_lang ul {
		background: #fff;
  }
}
#header .box_header .box_top > ul li.box_lang ul li {
	display: block;
}
#header .box_header .box_top > ul li.box_lang ul li a {
	background: #fff;
	text-decoration: none;
	display: block;
	text-decoration: none;
	font-size: 100%;
	padding: .3em .5em;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #header .box_header .box_top > ul li.box_lang ul li a {
		font-size: 94%;
  }
}
@media only screen and (max-width: 767px) {
  #header .box_header .box_top > ul li.box_lang ul li a {
		font-size: 100%;
  }
}
@media only screen and (max-width: 767px) {
  #header .box_header .box_top > ul li.box_lang ul li a {
		color: #150202;
		font-size: 15px;
  }
}
#header .box_header .box_top > ul li.box_lang ul li a:hover {
	opacity: .8;
}
@media only screen and (max-width: 767px) {
  #header .box_header .box_top > ul li.box_lang ul li a:hover {
		color: #150202;
  }
}
#header .box_header .box_top > ul li.box_lang:hover ul {
	display: block;
	width: 100%;
	text-align: left;
	opacity: 1;
}

/* -----------------------------------------------------------
	.con_gnav, #hnav
----------------------------------------------------------- */
#hnav, .con_gnav {
	overflow: hidden;
	background: #fff;
	position: relative;
}
#hnav:before, .con_gnav:before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: transparent url(../images/common/bg_partern_0.jpg);
	opacity: .2;
}
#hnav .box_nav, .con_gnav .box_nav {
	position: relative;
	display: table;
	width: 100%;
}
@media only screen and (max-width: 767px) {
  #hnav .box_nav, .con_gnav .box_nav {
		display: block;
  }
}
#hnav .box_nav .btn, .con_gnav .box_nav .btn {
	display: table-cell;
	vertical-align: middle;
	width: 258px;
	padding-left: 0;
	background: #c1a37e;
	border-right: 1px solid #c8ae8d;
}
@media only screen and (max-width: 1259px) {
  #hnav .box_nav .btn, .con_gnav .box_nav .btn {
		width: 200px;
  }
}
@media print {
  #hnav .box_nav .btn, .con_gnav .box_nav .btn {
		width: 200px;
  }
}
.ie8 #hnav .box_nav .btn, .ie8 .con_gnav .box_nav .btn {
	width: 200px;
}
@media only screen and (max-width: 1023px) {
  #hnav .box_nav .btn, .con_gnav .box_nav .btn {
		width: 120px;
		padding-left: 0;
  }
}
@media only screen and (max-width: 767px) {
  #hnav .box_nav .btn, .con_gnav .box_nav .btn {
		display: block;
		width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  #hnav .box_nav .btn .btn_brown_light, .con_gnav .box_nav .btn .btn_brown_light {
		text-align: center;
  }
}
#hnav .box_nav .btn .btn_brown_light a, .con_gnav .box_nav .btn .btn_brown_light a {
	width: 100%;
	border: 0;
	padding: 35px 0;
}
@media only screen and (max-width: 1023px) {
  #hnav .box_nav .btn .btn_brown_light a, .con_gnav .box_nav .btn .btn_brown_light a {
		padding-left: 0;
		padding: 30px 0;
  }
}
@media only screen and (max-width: 767px) {
  #hnav .box_nav .btn .btn_brown_light a, .con_gnav .box_nav .btn .btn_brown_light a {
		padding: 15px 30px;
  }
}
@media only screen and (max-width: 1023px) {
  #hnav .box_nav .btn .btn_brown_light a:before, #hnav .box_nav .btn .btn_brown_light a:after, .con_gnav .box_nav .btn .btn_brown_light a:before, .con_gnav .box_nav .btn .btn_brown_light a:after {
		content: none;
  }
}
@media only screen and (max-width: 767px) {
  #hnav .box_nav .btn .btn_brown_light a span, .con_gnav .box_nav .btn .btn_brown_light a span {
		position: relative;
		display: inline-block;
		padding: 0 15px;
  }
  #hnav .box_nav .btn .btn_brown_light a span:after, .con_gnav .box_nav .btn .btn_brown_light a span:after {
		content: '';
		position: absolute;
		top: 50%;
		left: -15px;
		width: 15px;
		height: 1px;
		background: #fff;
  }
}
#hnav .box_nav .btn .btn_brown_light a:hover, .con_gnav .box_nav .btn .btn_brown_light a:hover {
	opacity: .7;
	background: #c1a37e;
}
#hnav .box_nav .btn .btn_brown_light a:hover span, .con_gnav .box_nav .btn .btn_brown_light a:hover span {
	color: #fff !important;
}
#hnav .box_nav .gnav, .con_gnav .box_nav .gnav {
	display: table-cell;
	vertical-align: middle;
	position: relative;
}
@media only screen and (max-width: 767px) {
  #hnav .box_nav .gnav, .con_gnav .box_nav .gnav {
		display: none;
  }
}
#hnav .box_nav .gnav:before, .con_gnav .box_nav .gnav:before {
	content: '';
	position: absolute;
	left: 1px;
	bottom: 0;
	width: 100%;
	height: 1px;
	background: #c1a37e;
}
#hnav .box_nav .gnav ul, .con_gnav .box_nav .gnav ul {
	width: 100%;
	display: table;
	margin: 0;
}
#hnav .box_nav .gnav ul li, .con_gnav .box_nav .gnav ul li {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	position: relative;
	padding: 15px 0;
}
#hnav .box_nav .gnav ul li a, .con_gnav .box_nav .gnav ul li a {
	text-decoration: none;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Times New Roman", serif;
	color: #480c11;
	display: block;
	font-size: 100%;
	padding: 0 1em;
}
@media only screen and (max-width: 1499px) {
  #hnav .box_nav .gnav ul li a, .con_gnav .box_nav .gnav ul li a {
		padding: 0 .5em;
  }
}
@media print {
  #hnav .box_nav .gnav ul li a, .con_gnav .box_nav .gnav ul li a {
		padding: 0 .5em;
  }
}
.ie8 #hnav .box_nav .gnav ul li a, .ie8 .con_gnav .box_nav .gnav ul li a {
	padding: 0 .5em;
}
@media only screen and (max-width: 1300px) {
  #hnav .box_nav .gnav ul li a, .con_gnav .box_nav .gnav ul li a {
		padding: 0;
  }
}
@media print {
  #hnav .box_nav .gnav ul li a, .con_gnav .box_nav .gnav ul li a {
		padding: 0;
  }
}
.ie8 #hnav .box_nav .gnav ul li a, .ie8 .con_gnav .box_nav .gnav ul li a {
	padding: 0;
}
@media only screen and (max-width: 1259px) {
  #hnav .box_nav .gnav ul li a, .con_gnav .box_nav .gnav ul li a {
		font-size: 88%;
  }
}
@media print {
  #hnav .box_nav .gnav ul li a, .con_gnav .box_nav .gnav ul li a {
		font-size: 88%;
  }
}
.ie8 #hnav .box_nav .gnav ul li a, .ie8 .con_gnav .box_nav .gnav ul li a {
	font-size: 88%;
}
#hnav .box_nav .gnav ul li a:before, .con_gnav .box_nav .gnav ul li a:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 0;
	height: 3px;
	background: #480c11;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-ms-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}
#hnav .box_nav .gnav ul li a:hover:before, .con_gnav .box_nav .gnav ul li a:hover:before {
	left: 0;
	width: 100%;
}
#hnav .box_nav .gnav ul li.logo, .con_gnav .box_nav .gnav ul li.logo {
	padding-left: 10px;
}
@media only screen and (max-width: 1259px) {
  #hnav .box_nav .gnav ul li.logo, .con_gnav .box_nav .gnav ul li.logo {
		width: 200px;
		padding-left: 5px;
		padding-right: 5px;
  }
}
@media print {
  #hnav .box_nav .gnav ul li.logo, .con_gnav .box_nav .gnav ul li.logo {
		width: 200px;
		padding-left: 5px;
		padding-right: 5px;
  }
}
.ie8 #hnav .box_nav .gnav ul li.logo, .ie8 .con_gnav .box_nav .gnav ul li.logo {
	width: 200px;
	padding-left: 5px;
	padding-right: 5px;
}
@media only screen and (max-width: 1024px) {
  #hnav .box_nav .gnav ul li.logo, .con_gnav .box_nav .gnav ul li.logo {
		width: 70px;
  }
}
#hnav .box_nav .gnav ul li.logo a:before, .con_gnav .box_nav .gnav ul li.logo a:before {
	content: none;
}

#hnav {
	display: none !important;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	background: #fff;
	z-index: 100;
}

/* -----------------------------------------------------------
	con_menu_sp
----------------------------------------------------------- */
.con_menu_sp {
	display: none;
	position: fixed;
	overflow: auto;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	max-width: 600px;
	background: #fff;
	z-index: 0;
	padding: 0 20px 0 95px;
	z-index: 200;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_menu_sp {
		padding: 0 15px 0 80px;
  }
}
@media only screen and (max-width: 767px) {
  .con_menu_sp {
		padding: 0 2.5% 25px;
  }
}
.con_menu_sp .box_top {
	padding: 10px;
	text-align: right;
	position: relative;
}
@media only screen and (max-width: 767px) {
  .con_menu_sp .box_top {
		display: none;
  }
}
.con_menu_sp .box_top .logo {
	display: inline-block;
	vertical-align: middle;
	margin-right: 14.43299%;
}
@media only screen and (max-width: 767px) {
  .con_menu_sp .box_top .logo {
		width: 70.10309%;
  }
}
.con_menu_sp .box_top .logo a {
	display: block;
}
.con_menu_sp .box_top .logo a img {
	max-width: 100%;
}
.con_menu_sp .box_top .box_lang {
	display: inline-block;
	vertical-align: middle;
	position: absolute;
	right: 0;
	top: 25%;
}
.con_menu_sp .box_top .box_lang .cap {
	font-size: 113%;
	cursor: pointer;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_menu_sp .box_top .box_lang .cap {
		font-size: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .con_menu_sp .box_top .box_lang .cap {
		font-size: 88%;
  }
}
.con_menu_sp .box_top .box_lang ul {
	position: absolute;
	display: none;
	left: 0;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-ms-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	opacity: 0;
	background: #fff;
	z-index: 10;
}
.con_menu_sp .box_top .box_lang ul li a {
	text-decoration: none;
	display: block;
	text-decoration: none;
	font-size: 113%;
	padding: .5em;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_menu_sp .box_top .box_lang ul li a {
		font-size: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .con_menu_sp .box_top .box_lang ul li a {
		font-size: 88%;
  }
}
.con_menu_sp .box_top .box_lang ul li a:hover {
	color: #720b0b;
}
.con_menu_sp .box_top .box_lang:hover ul {
	display: block;
	width: 100%;
	text-align: left;
	opacity: 1;
}
@media only screen and (max-width: 767px) {
  .con_menu_sp .box_menu {
		padding-top: 60px;
  }
}
.con_menu_sp .box_menu > ul li {
	width: 100%;
}
.con_menu_sp .box_menu > ul li a {
	display: block;
	padding: .45em .5em;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Times New Roman", serif;
	border-bottom: 1px solid #f6f5f1;
	color: #000;
	text-decoration: none;
	position: relative;
	font-size: 138%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_menu_sp .box_menu > ul li a {
		font-size: 125%;
  }
}
@media only screen and (max-width: 767px) {
  .con_menu_sp .box_menu > ul li a {
		font-size: 113%;
  }
}
.con_menu_sp .box_menu > ul li a:after {
	content: '\f3d6';
	position: absolute;
	top: 50%;
	right: 15px;
	line-height: 1;
	margin-top: -.5em;
	font-family: 'Ionicons';
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-ms-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}
.con_menu_sp .box_menu > ul li a:hover {
	color: #97791a;
}
.con_menu_sp .box_menu > ul li a:hover:after {
	right: 5px;
}
.con_menu_sp .box_menu > ul li ul {
	margin-left: 2em;
	display: none;
}
.con_menu_sp .box_menu > ul li:first-child a {
	color: #97791a;
}
.con_menu_sp .box_menu > ul li:first-child a:hover {
	color: #150202;
}
.con_menu_sp .box_menu > ul li.sub > a:after {
	content: '\f489';
}
.con_menu_sp .box_menu > ul li.sub > a.active:after {
	content: '\f2f4';
}
.con_menu_sp .box_menu table {
	width: 100%;
	margin: 0 0 20px;
}
.con_menu_sp .box_menu table tr th, .con_menu_sp .box_menu table tr td {
	width: 50%;
	text-align: center;
	border-bottom: 1px solid #f6f5f1;
}
.con_menu_sp .box_menu table tr th a, .con_menu_sp .box_menu table tr td a {
	display: block;
	color: #150202;
	text-align: center;
	padding: .8em;
	font-size: 100%;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Times New Roman", serif;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_menu_sp .box_menu table tr th a, .con_menu_sp .box_menu table tr td a {
		font-size: 88%;
  }
}
@media only screen and (max-width: 767px) {
  .con_menu_sp .box_menu table tr th a, .con_menu_sp .box_menu table tr td a {
		font-size: 75%;
  }
}
.con_menu_sp .box_menu table tr th a i, .con_menu_sp .box_menu table tr td a i {
	padding-left: 0.3em;
}
.con_menu_sp .box_menu table tr th:nth-child(odd), .con_menu_sp .box_menu table tr td:nth-child(odd) {
	border-right: 1px solid #f6f5f1;
}
.con_menu_sp .box_menu .contact {
	text-align: center;
	line-height: 1.8;
	font-size: 88%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_menu_sp .box_menu .contact {
		font-size: 82%;
  }
}
@media only screen and (max-width: 767px) {
  .con_menu_sp .box_menu .contact {
		font-size: 75%;
  }
}

/* -----------------------------------------------------------
	btn_menu
----------------------------------------------------------- */
#btn_menu {
	width: 90px;
	height: 90px;
	background: #a48f6b;
}
@media only screen and (max-width: 1024px) {
  #btn_menu {
		width: 75px;
		height: 75px;
  }
}
@media only screen and (max-width: 767px) {
  #btn_menu {
		width: 60px;
		height: 60px;
  }
}
#btn_menu a {
	display: block;
	text-decoration: none;
	text-align: center;
	position: relative;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	color: #fff;
}
#btn_menu a > div {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	text-align: center;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	line-height: 1;
}
#btn_menu a > div .bars {
	width: 30px;
	height: 15px;
	position: relative;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 5px;
}
#btn_menu a > div .bars span {
	display: block;
	height: 1px;
	background: #fff;
	width: 30px;
	position: absolute;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-ms-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
}
#btn_menu a > div .bars span:nth-child(1) {
	top: 0;
}
#btn_menu a > div .bars span:nth-child(2) {
	top: 7px;
}
#btn_menu a > div .bars span:nth-child(3) {
	top: 14px;
}
#btn_menu.active {
	position: fixed;
	top: 0;
	left: 0;
}

.open-menu #btn_menu a span:nth-child(1) {
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	top: 8px !important;
}
.open-menu #btn_menu a span:nth-child(2) {
	opacity: 0;
}
.open-menu #btn_menu a span:nth-child(3) {
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	top: 8px !important;
}

/* -----------------------------------------------------------
	btn_menu
----------------------------------------------------------- */
.btn_fixed {
	position: absolute;
	top: 235px;
	left: 0;
	width: 215px;
	z-index: 300;
}
@media only screen and (max-width: 1024px) {
  .btn_fixed {
		width: 170px;
  }
}
@media only screen and (max-width: 767px) {
  .btn_fixed {
		position: fixed;
		top: 0;
		left: 0;
		width: 60px;
		height: 60px;
  }
}
.btn_fixed li {
	float: left;
}
.btn_fixed li#btn_menu {
	float: left;
}
.btn_fixed li.logo {
	float: right;
	margin-top: 10px;
}
@media only screen and (max-width: 1024px) {
  .btn_fixed li.logo {
		margin-top: 0;
  }
}
@media only screen and (max-width: 767px) {
  .btn_fixed li.logo {
		display: none;
  }
}
.btn_fixed.active {
	position: fixed;
	top: 0;
	left: 0;
}

.open-menu .btn_fixed li.logo {
	display: none;
}

/* -----------------------------------------------------------
	#btn_top
----------------------------------------------------------- */
#btn_top {
	display: none;
	position: fixed;
	right: 1em;
	bottom: 1em;
	width: 65px;
	height: 65px;
	line-height: 65px;
	text-decoration: none;
	text-align: center;
	z-index: 150;
}
@media only screen and (max-width: 1260px) {
  #btn_top {
		bottom: 150px;
  }
}
@media print {
  #btn_top {
		bottom: 150px;
  }
}
.ie8 #btn_top {
	bottom: 150px;
}
@media only screen and (max-width: 1024px) {
  #btn_top {
		width: 60px;
		height: 60px;
  }
}
@media only screen and (max-width: 767px) {
  #btn_top {
		width: 50px;
		height: 50px;
		display: none !important;
  }
}
#btn_top a {
	display: block;
	height: 100%;
	background: #a31422 url(../images/footer/ing_btn.jpg) no-repeat center center;
}

/* -----------------------------------------------------------
	#contents
----------------------------------------------------------- */
/* -----------------------------------------------------------
	#footer
----------------------------------------------------------- */
#footer .box_top {
	padding: 10px 0 30px;
	text-align: center;
	background: transparent url(../images/common/bg_partern_1.jpg);
	width: 93.75%;
	margin: 0 auto;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .box_top {
		padding: 10px 0 30px;
  }
}
@media only screen and (max-width: 767px) {
  #footer .box_top {
		padding: 5px 0 20px;
  }
}
#footer .box_top li {
	display: inline-block;
	vertical-align: text-bottom;
	margin-right: 30px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .box_top li {
		margin-right: 25px;
  }
}
@media only screen and (max-width: 767px) {
  #footer .box_top li {
		margin-right: 20px;
  }
}
@media only screen and (max-width: 767px) {
  #footer .box_top li {
		width: 45%;
		margin: 0 2.5% 10px;
		max-width: 140px;
  }
}
#footer .box_top li > a {
	display: block;
}
@media only screen and (max-width: 767px) {
  #footer .box_top li > a img {
		width: 100%;
		max-width: none;
  }
}
#footer .box_top li .widCOE {
	margin: 0;
	width: 138px;
}
#footer .box_top li .widCOE .widCOETitle {
	font: normal 10px Arial,Helvetica,sans-serif;
	font-weight: 700;
}
#footer .box_top li:last-child {
	margin-right: 0;
}
#footer .box_top .twitter {
	margin-top: 25px !important;
}
#footer .btns {
	background: #f4f1f1;
	padding: 40px 0;
	text-align: center;
	width: 93.75%;
	margin: 0 auto;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .btns {
		padding: 30px 0;
  }
}
@media only screen and (max-width: 767px) {
  #footer .btns {
		padding: 20px 0;
  }
}
#footer .btns ul {
	max-width: 1000px;
	margin: 0 auto;
}
#footer .btns ul li {
	display: inline-block;
	width: 44.5%;
	margin-right: 11%;
}
@media only screen and (max-width: 767px) {
  #footer .btns ul li {
		margin: 0 0 15px;
		width: 100%;
  }
}
#footer .btns ul li:last-child {
	margin-right: 0;
}
#footer .box_footer {
	max-width: 1480px;
	margin: auto;
	padding: 45px 0 60px;
	color: #fff;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .box_footer {
		padding: 35px 20px 40px;
  }
}
@media only screen and (max-width: 767px) {
  #footer .box_footer {
		padding: 25px 0 30px;
  }
}
#footer .box_footer .infos {
	float: left;
	width: 37.30159%;
}
@media only screen and (max-width: 767px) {
  #footer .box_footer .infos {
		width: 100%;
		margin: 0 0 25px;
		text-align: center;
  }
}
#footer .box_footer .infos .info {
	max-width: 350px;
	margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  #footer .box_footer .infos .info {
		max-width: none;
  }
}
#footer .box_footer .infos .info .logo {
	margin: 0 0 25px;
}
#footer .box_footer .infos .info .logo a {
	display: block;
}
#footer .box_footer .infos .info .txt {
	font-size: 88%;
	line-height: 2;
}
#footer .box_footer .box_nav {
	float: right;
	width: 59.52381%;
}
@media only screen and (max-width: 767px) {
  #footer .box_footer .box_nav {
		width: 100%;
  }
}
#footer .box_footer .box_nav .fnav {
	text-align: left;
}
#footer .box_footer .box_nav .fnav li {
	vertical-align: top;
	display: inline-block;
	padding: 15px 10px;
	margin: 0 .6em;
	position: relative;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .box_footer .box_nav .fnav li {
		padding: 5px 8px;
  }
}
@media only screen and (max-width: 767px) {
  #footer .box_footer .box_nav .fnav li {
		padding: 5px;
  }
}
#footer .box_footer .box_nav .fnav li:before {
	content: '';
	position: absolute;
	top: 50%;
	width: 10px;
	height: 1px;
	left: -10px;
	background: #c3ac8f;
}
#footer .box_footer .box_nav .fnav li a {
	display: block;
	text-decoration: none !important;
	color: #fff;
}
.mouse #footer .box_footer .box_nav .fnav li a:hover, .touch #footer .box_footer .box_nav .fnav li a.touchstart {
	text-decoration: underline !important;
}
.touch #footer .box_footer .box_nav .fnav li a {
	-webkit-tap-highlight-color: transparent;
}
.touch #footer .box_footer .box_nav .fnav li a.touchend {
	-moz-transition-delay: 200ms;
	-o-transition-delay: 200ms;
	-webkit-transition-delay: 200ms;
	transition-delay: 200ms;
}
#footer .box_footer .box_nav .fnav li a i {
	padding-left: 0.2em;
}
#footer .box_footer .box_nav .fnav li:first-child {
	margin-right: 2em;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .box_footer .box_nav .fnav li:first-child {
		margin-right: 1.5em;
  }
}
@media only screen and (max-width: 767px) {
  #footer .box_footer .box_nav .fnav li:first-child {
		margin-right: 1em;
  }
}
#footer .box_footer .box_nav .box_more {
	margin-top: 30px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .box_footer .box_nav .box_more {
		margin-top: 25px;
  }
}
@media only screen and (max-width: 767px) {
  #footer .box_footer .box_nav .box_more {
		margin-top: 20px;
  }
}
#footer .box_footer .box_nav .box_more .social {
	width: 52%;
	float: left;
}
@media only screen and (max-width: 1259px) {
  #footer .box_footer .box_nav .box_more .social {
		width: 100%;
  }
}
@media print {
  #footer .box_footer .box_nav .box_more .social {
		width: 100%;
  }
}
.ie8 #footer .box_footer .box_nav .box_more .social {
	width: 100%;
}
@media only screen and (max-width: 767px) {
  #footer .box_footer .box_nav .box_more .social {
		text-align: center;
  }
}
#footer .box_footer .box_nav .box_more .social li {
	display: inline-block;
	vertical-align: bottom;
	margin-right: 15px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .box_footer .box_nav .box_more .social li {
		margin-right: 10px;
  }
}
@media only screen and (max-width: 767px) {
  #footer .box_footer .box_nav .box_more .social li {
		margin-right: 5;
  }
}
#footer .box_footer .box_nav .box_more .social li.cap {
	letter-spacing: .2em;
	font-size: 100%;
	margin-right: 30px;
	font-family: "TrajanPro-Regular", sans-serif;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .box_footer .box_nav .box_more .social li.cap {
		margin-right: 20px;
  }
}
@media only screen and (max-width: 767px) {
  #footer .box_footer .box_nav .box_more .social li.cap {
		margin-right: 10px;
  }
}
#footer .box_footer .box_nav .box_more .social li a {
	display: block;
	text-decoration: none;
	color: #a31422;
	background: #fff;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-ms-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	width: 32px;
	height: 32px;
	line-height: 32px;
	text-align: center;
	font-size: 17px;
	border: 1px solid #fff;
	border-radius: 50%;
}
#footer .box_footer .box_nav .box_more .social li a:hover {
	color: #fff;
	background: #a31422;
}
#footer .box_footer .box_nav .box_more .social li:last-child {
	margin-right: 0;
}
#footer .box_footer .box_nav .box_more #copyright {
	text-align: right;
	width: 42.66667%;
	float: right;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Times New Roman", serif;
	font-size: 82%;
	margin-top: 15px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  #footer .box_footer .box_nav .box_more #copyright {
		font-size: 75%;
  }
}
@media only screen and (max-width: 767px) {
  #footer .box_footer .box_nav .box_more #copyright {
		font-size: 69%;
  }
}
@media only screen and (max-width: 1259px) {
  #footer .box_footer .box_nav .box_more #copyright {
		width: 100%;
		text-align: center;
  }
}
@media print {
  #footer .box_footer .box_nav .box_more #copyright {
		width: 100%;
		text-align: center;
  }
}
.ie8 #footer .box_footer .box_nav .box_more #copyright {
	width: 100%;
	text-align: center;
}

/* -----------------------------------------------------------
	下層共通スタイル
----------------------------------------------------------- */
html.lower #contents .con_topicpath ul {
	margin: 0 auto 40px;
}
@media only screen and (max-width: 767px) {
  html.lower #contents .con_topicpath ul {
		margin: 0 auto 20px;
  }
}
html.lower #contents .con_topicpath ul li {
	display: inline-block;
	font-size: 88%;
}
html.lower #contents .con_topicpath ul li:before {
	content: "/";
	margin: 0 5px 0 3px;
}
@media only screen and (min-width: 1025px) {
  html.lower #contents .con_topicpath ul li a {
		position: relative;
		-webkit-transition: 0.5s;
		-moz-transition: 0.5s;
		-ms-transition: 0.5s;
		-o-transition: 0.5s;
		transition: 0.5s;
		overflow: hidden;
  }
  html.lower #contents .con_topicpath ul li a:after {
		content: '';
		position: absolute;
		bottom: 0;
		left: 50%;
		width: 0%;
		transform: translateX(-50%);
		height: 1px;
		transition: .35s;
  }
  html.lower #contents .con_topicpath ul li a:hover:after {
		width: 100%;
  }
}
@media print {
  html.lower #contents .con_topicpath ul li a {
		position: relative;
		-webkit-transition: 0.5s;
		-moz-transition: 0.5s;
		-ms-transition: 0.5s;
		-o-transition: 0.5s;
		transition: 0.5s;
		overflow: hidden;
  }
  html.lower #contents .con_topicpath ul li a:after {
		content: '';
		position: absolute;
		bottom: 0;
		left: 50%;
		width: 0%;
		transform: translateX(-50%);
		height: 1px;
		transition: .35s;
  }
  html.lower #contents .con_topicpath ul li a:hover:after {
		width: 100%;
  }
}
.ie8 html.lower #contents .con_topicpath ul li a {
	position: relative;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-ms-transition: 0.5s;
	-o-transition: 0.5s;
	transition: 0.5s;
	overflow: hidden;
}
.ie8 html.lower #contents .con_topicpath ul li a:after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 0%;
	transform: translateX(-50%);
	height: 1px;
	transition: .35s;
}
.ie8 html.lower #contents .con_topicpath ul li a:hover:after {
	width: 100%;
}
html.lower #contents .con_topicpath ul li:first-child:before {
	display: none;
}

/* -----------------------------------------------------------
	テーブル
----------------------------------------------------------- */
table.tbl_basic {
	width: 100%;
}
table.tbl_basic tr th, table.tbl_basic tr td {
	background: transparent url(../images/common/ic_tbl_2.png) repeat-x bottom left;
}
table.tbl_basic tr th {
	font-weight: normal;
	padding: 1.15em .5em;
	padding-left: 24px;
	position: relative;
	font-size: 100%;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Times New Roman", serif;
	color: #765c3b;
}
table.tbl_basic tr th:before {
	content: '';
	position: absolute;
	width: 7px;
	height: 15px;
	left: 0;
	top: 50%;
	margin-top: -8px;
	background: transparent url(../images/common/ic_tbl_1.png) no-repeat center;
}
table.tbl_basic tr td {
	color: #150202;
	font-size: 88%;
	padding: 1.4em .5em;
}
@media only screen and (max-width: 767px) {
  table.tbl_basic tr td {
		padding: .8em .5em;
  }
}
table.tbl_basic.white tr th, table.tbl_basic.white tr td {
	background: transparent url(../images/common/ic_tbl_4.png) repeat-x bottom left;
}
table.tbl_basic.white tr th {
	color: #fff;
}
table.tbl_basic.white tr th:before {
	background: transparent url(../images/common/ic_tbl_3.png) no-repeat center;
}
table.tbl_basic.white tr td {
	color: #feebc5;
}

/* -----------------------------------------------------------
	Always-visible navigation and reservation tools
----------------------------------------------------------- */
.site_fixed_tools {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 220;
	box-shadow: 0 2px 8px rgba(0, 0, 0, .18);
}
.site_fixed_tools .con_gnav .box_nav .btn .btn_brown_light a {
	padding: 16px 0;
}
.site_fixed_tools .con_gnav .box_nav .gnav ul li {
	padding: 8px 0;
}
.site_fixed_tools .con_gnav .box_nav .gnav ul li.logo img {
	max-height: 38px;
}
.site_fixed_tools .con_search {
	display: block;
	padding: 6px 0;
}
.site_fixed_tools .con_search .box_search .box_top {
	margin-bottom: 4px;
}
.site_fixed_tools .con_search .box_search .box_top > div input,
.site_fixed_tools .con_search .box_search .box_top > div select {
	height: 34px;
	line-height: 34px;
}
.site_fixed_tools .con_search .box_search .box_bottom {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
	font-size: 70%;
	line-height: 1.3;
}
.site_fixed_tools .con_search .box_search .box_bottom > li {
	display: block;
}
.site_fixed_tools .con_search .box_search .box_bottom > li.contact {
	display: none;
}
.reservation_toggle {
	display: none;
}
#contents {
	padding-top: 150px;
}
#header {
	top: 150px;
}
.btn_fixed,
.btn_fixed.active {
	position: fixed;
	top: 0;
}

@media only screen and (max-width: 767px) {
	.site_fixed_tools {
		top: 60px;
	}
	.site_fixed_tools .con_gnav .box_nav .btn .btn_brown_light a {
		padding: 11px 30px;
	}
	.site_fixed_tools .con_search {
		padding: 0;
		background: #720b16;
	}
	.reservation_toggle {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 10px;
		width: 100%;
		height: 44px;
		border: 0;
		background: #720b16;
		color: #fff;
		font-size: 100%;
		cursor: pointer;
	}
	.reservation_toggle .fa-chevron-down {
		transition: transform .2s ease;
	}
	.reservation-open .reservation_toggle .fa-chevron-down {
		transform: rotate(180deg);
	}
	.site_fixed_tools .con_search .box_search {
		display: none;
		position: fixed;
		top: 149px;
		left: 0;
		width: 100%;
		max-height: calc(100vh - 149px);
		overflow-y: auto;
		padding: 14px 12px 18px;
		background: #d9d9d9;
		box-shadow: 0 5px 10px rgba(0, 0, 0, .25);
	}
	.reservation-open .site_fixed_tools .con_search .box_search {
		display: block;
	}
	.site_fixed_tools .con_search .box_search .box_top {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 10px;
	}
	.site_fixed_tools .con_search .box_search .box_top > div {
		display: block;
		width: auto;
		padding: 0;
	}
	.site_fixed_tools .con_search .box_search .box_top > div.box_pri,
	.site_fixed_tools .con_search .box_search .box_top > div.box_sta {
		display: none;
	}
	.site_fixed_tools .con_search .box_search .box_top > div.btn_submit {
		grid-column: 1 / -1;
	}
	.site_fixed_tools .con_search .box_search .box_top > div.btn_submit > p:first-child {
		float: none;
		width: 100%;
	}
	.site_fixed_tools .con_search .box_search .box_top > div.btn_submit > p:last-child {
		display: none;
	}
	.site_fixed_tools .con_search .box_search .box_top > div select {
		max-width: none;
	}
	.site_fixed_tools .con_search .box_search .box_bottom {
		display: flex;
		flex-wrap: wrap;
		gap: 8px 14px;
		font-size: 75%;
	}
	.site_fixed_tools .con_search .box_search .box_bottom > li {
		display: block;
	}
	.site_fixed_tools .con_search .box_search .box_bottom > li.contact {
		display: none;
	}
	#contents {
		padding-top: 149px;
	}
	#header {
		top: 0;
	}
	.btn_fixed,
	.btn_fixed.active {
		top: 0;
	}
}
