@charset "utf-8";

* {
	margin: 0;
	padding: 0;
}

html {
	height: 100%;
	scroll-padding-top: 165px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	color: #111;
	background-color: #fff;
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ ゴシック", "MS Gothic", sans-serif;
	word-wrap: break-word;
	height: 100%;
}

.font_mincho { font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E",  "ＭＳ Ｐ明朝", "MS PMincho", serif; }
.font_garamond { font-family: 'Cormorant Garamond', serif; }
.font_raleway {	font-family: 'Raleway', sans-serif; }

section,
article { display: block; }

.content i { margin-right: 0.3rem; }

img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

a { outline: none; }

a img {
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}

a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
}

strong { font-weight: normal; }

li { list-style-type: none; }

a {
	color: #0066cc;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}

a:hover {
	color: #0099cc;
	text-decoration: none;
}

table {	border-collapse: collapse; }
table td { border-collapse: collapse; }

.clfix:after{
	content: "."; 
	display: block; 
	height: 0; 
	font-size: 0;	
	clear: both; 
	visibility: hidden;
}

/* column-2 */
.col-2 {
	display: flex;
	box-sizing: border-box;
}
@media screen and (max-width: 768px) {
	.col-2 {
		display: block;
		margin: 1rem 0;
		padding: 0;
	}
}

.col_2 {
	width: calc(100% / 2);
	padding:  0 0.5rem;
	box-sizing: border-box;
}
@media screen and (max-width: 768px) {
	.col_2 {
		width: 100%;
		margin: 15px auto;
		padding: 0;
	}
}

/* read-col */
.read-col {
	display: flex;
	box-sizing: border-box;
	margin-bottom: 2rem;
}
@media screen and (max-width: 768px) {
	.read-col {
		display: block;
		margin: 1rem 0;
		padding: 0;
	}
}

.left_col,
.right_col {
	width: calc(100% / 2);
	margin: 0 0.5rem;
	padding: 2.5rem 2.5rem 1.5rem;
	border: 1px solid #ccc;
	border-radius: 5px;
	box-sizing: border-box;
	
}
@media screen and (max-width: 768px) {
	.left_col,
	.right_col {
		width: 100%;
		margin: 15px auto;
		padding: 1rem 0.5rem 0;
	}
}

.left_col {
	background-color: rgba(214, 198, 175, 0.1);
	background-repeat: no-repeat;
	background-position: bottom -15px right -20px;
	background-image: url(../img/mountain_150.png);
}

.right_col {
	background-color: rgba(248, 229, 140, 0.1);
	background-repeat: no-repeat;
	background-position: bottom -15px right -20px;
	background-image: url(../img/camp-fire_150.png);
}

/* read-col2 */
.read-col2 {
	display: flex;
	box-sizing: border-box;
	margin-top: 2rem;
	margin-bottom: 2rem;
}
@media screen and (max-width: 768px) {
	.read-col2 {
		display: block;
		margin: 1rem 0;
		padding: 0;
	}
}

.left_col2,
.right_col2 {
	width: calc(100% / 2);
	margin: 0 0.5rem;
	padding: 2.5rem 2.5rem 1.5rem;
	border: 1px solid #ccc;
	border-radius: 5px;
	box-sizing: border-box;
	
}
@media screen and (max-width: 768px) {
	.left_col2,
	.right_col2 {
		width: 100%;
		margin: 15px auto;
		padding: 1rem 0.5rem 0;
	}
}

.left_col2 {
	background-color: rgba(214, 198, 175, 0.1);
	background-repeat: no-repeat;
	background-position: bottom -15px right -20px;
	background-image: url(../img/house_150.png);
}

.left_col2 dl,
.right_col2 dl {
	margin-bottom: 1.5rem;
}

.read-col2 dl {
	line-height:1.5;
}

.read-col2 dl dt {
	margin-bottom: 0.5rem;
	padding-left: 0.2rem;
	font-size: 1.15rem;
	font-weight: bold;
	border-bottom: 1px dotted #ccc;
}
@media screen and (max-width: 768px) {
	.read-col2 dl dt {
		font-size: 1rem;
	}
}

.read-col2 dl dd {
	margin-left: 1rem;
	margin-bottom: 1rem;
}
@media screen and (max-width: 768px) {
	.read-col2 dl dd {
		font-size: 0.9rem;
	}
}

.read-col2 dl dd div {
	padding: 0.5rem 0.7rem 0.5rem 1rem;
	border: 1px dotted #d66a35;
}

.right_col2 {
	background-color: rgba(248, 229, 140, 0.1);
	background-repeat: no-repeat;
	background-position: bottom -15px right -20px;
	background-image: url(../img/tent_150.png);
}

/* read-col3 */
.read-col3 {
	display: flex;
	box-sizing: border-box;
	margin-bottom: 2rem;
}
@media screen and (max-width: 768px) {
	.read-col3 {
		display: block;
		margin: 1rem 0;
		padding: 0;
	}
}

.read-col3 div.bb {
	font-weight: bold;
}

.left_col3,
.right_col3 {
	width: calc(100% / 2);
	margin: 0 0.5rem;
	padding: 2.5rem 2.5rem 1.5rem;
	border: 1px solid #ccc;
	border-radius: 5px;
	box-sizing: border-box;
	
}
@media screen and (max-width: 768px) {
	.left_col3,
	.right_col3 {
		width: 100%;
		margin: 15px auto;
		padding: 1rem 0.5rem 0;
	}
}

.left_col3 {
	background-color: rgba(214, 198, 175, 0.1);
	background-repeat: no-repeat;
	background-position: bottom -15px right -20px;
	background-image: url(../img/nabe_150.png);
}

.right_col3 {
	background-color: rgba(248, 229, 140, 0.1);
	background-repeat: no-repeat;
	background-position: bottom -15px right -20px;
	background-image: url(../img/maki_150.png);
}

/* column-3 */
.col-3 {
	display: flex;
	box-sizing: border-box;
}
@media screen and (max-width: 768px) {
	.col-3 {
		display: block;
		margin: 2rem 0;
	}
}
.col_3 {
	width: calc(100% / 3);
	padding: 0 0.25rem;
	box-sizing: border-box;
}
@media screen and (max-width: 768px) {
	.col_3 {
		width: 100%;
		margin: 0 auto 15px;
		padding: 0;
	}
}

.accent {
	padding: 0 0.15rem;
	font-size: 1.1rem;
	font-weight: bold;
	color: #932e40;
	letter-spacing: 0.15rem;
	text-shadow: 0px 0px 2px rgba(0, 0, 0, 0.3);
}

.clip-path00 { clip-path: polygon(1% 0, 99% 0, 100% 100%, 0 100%); }

.clip-path01 { clip-path: polygon(0 3%, 100% 0, 100% 100%, 0 97%); }

.clip-path02 { clip-path: polygon(0 0, 100% 3%, 100% 97%, 0 100%); }

.box-shadow {
	box-shadow: 0px 0px 2px 1px rgba(204, 204, 204, 1);
	border-radius: 5px;	
}

/*
ヘッダー
-------------------------------------------*/
header {
	width: 100%;
	background-color: #fff;
	position: fixed;
	z-index: 300;
}

header h1 a img {
  display: block;
  position: absolute;
  height: 56px; /
}


header .h_btn a {
	display: block;
	text-align: center;
	position: absolute;
	text-decoration: none;
	color: #fff;
	letter-spacing: 0.1rem;
	background-color: #d75455;
}

header .h_btn a:hover {	background-color: #333; }

header .h_tel a {
	display: block;
	text-align: center;
	position: absolute;
	text-decoration: none;
	color: #333;
	letter-spacing: 1px;
}

header .h_btn a i,
header .h_tel a i {
	padding-left: 5px;
	padding-right: 5px;
}

#g_navi ul li a.ac_menu {
	cursor: pointer;
	overflow: hidden;
}

.pankuzu {
	background-image: linear-gradient(180deg, rgba(230, 230, 230, 1), rgba(250, 250, 250, 1));
	margin-bottom: 20px;
	font-size: 0.9rem;
	/*line-height: 3rem;*/
	color: #555;
	width: 100%;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	border-bottom: 1px solid #e5e5e5;
	border-top: 1px solid #fff;
}

.pankuzu ul {
	width: 96%;
	max-width: 1100px;
	margin-right: auto;
	margin-left: auto;
}

.pankuzu li { display: inline-block; }

.pankuzu li a {
	text-decoration: none;
	color: #999;
}

.pankuzu li a::after {
	content: ">";
	padding-left: 10px;
	padding-right: 10px;
}

.pankuzu li a:hover { color: #111; }

.pankuzu li i { padding-right: 5px; }

/*
メインコンテンツ
-------------------------------------------*/
.content {
	box-sizing: border-box;
	width: 100%;
	background-color: #fff;
	padding-top: 50px;
	padding-bottom: 100px;
}

.cont_wrap {
	box-sizing: border-box;
	max-width: 1200px;
	width: 100%;
	margin-top: 5rem;
	margin-right: auto;
	margin-left: auto;
	padding: 0 0.5rem;
}

#sub_top {
	position: relative;
	width: 100%;
	height: 120px;
	padding-top: 300px;
	background-color: #eee;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.7);
	-moz-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.7);
	-webkit-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.7);
	-ms-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.7);
}

#sub_top span {
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	height: 160px;
	padding: 130px 2rem 0;
	text-align: center;
	font-family: 'Arial Black', sans-serif;
	color: #fff;
	font-size: 2rem;
	letter-spacing: 0.1rem;
	background-color: rgba(100, 1, 37, 0.8);
	/*line-height: 30px;
	padding: 0 0.5rem 0 0.7rem;
	background-color: rgba(100, 1, 37, 0.7);
	border-radius: 5px;*/	
}

#index_top {
	height: 100%;
	width: 100%;
	position: relative;
	overflow: hidden;
}

#index_top ul.sm-slider { position: relative; }

#index_top #top_catch {
	position: absolute;
	top: 40%;
	z-index: 10;
	text-align: center;
	width: 100%;
	color: #fff;
}

#index_top #top_catch h2 {
	font-size: 2rem;
	letter-spacing: 0.2rem;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E",  "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-weight: normal;
	text-shadow: 0px 0px 4px rgba(0, 0, 0, 1);
}

#index_top #top_catch p {
	display: inline-block;
	margin-top: 2rem;
	padding: 0.2rem 1rem 0;
	font-size: 1.3rem;
	line-height: 1.5;
	background-color: rgba(147, 46,64, 0.8);
	text-shadow: 0px 0px 4px rgba(0, 0, 0, 1);
	border-radius: 10px;
}

.content h2 {
	font-size: 1.8rem;
	line-height: 1;
	margin-bottom: 2rem;
	border-bottom: 1px solid #ddd;
	font-weight: normal;
	letter-spacing: 0.2rem;
	color: #111;
	text-align: center;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E",  "ＭＳ Ｐ明朝", "MS PMincho", serif;
	padding-top: 15px;
	padding-right: 10px;
	padding-bottom: 15px;
	padding-left: 10px;
	clear: both;
}

.content h2 span {
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ ゴシック", "MS Gothic", sans-serif;
	font-size: 0.9rem;
	color: #999;
}

.content h3 {
	font-size: 1.2rem;
	line-height: 1.2;
	margin-bottom: 30px;
	/*background-color: rgba(82, 47, 96, 0.2);*/
	background-image: linear-gradient(180deg, rgba(82, 47, 96, 0.2), rgba(225, 197, 255, 0.3));
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	position: relative;
	margin-top: 30px;
	padding: 1rem 0 1rem 2rem;
	font-weight: normal;
	color: #111;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E",  "ＭＳ Ｐ明朝", "MS PMincho", serif;
	clear: both;
}

.content h3::after {
	display: block;
	width: 3px;
	height: 24px;
	position: absolute;
	top: 15px;
	left: 17px;
	background-color: #7a4171;
	content: '';
}

.content h3 span {
	font-size: 16px;
	color: #888;
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ ゴシック", "MS Gothic", sans-serif;
	padding-left: 15px;
}

.content h4 {
	position: relative;
	display: inline-block;
	font-size: 1.1rem;
	color: #765c47;
	border-bottom: 3px solid #7a4171;
	letter-spacing: 0.1rem;
	padding-left: 0.5rem;
	font-weight: bold;
	clear: both;
	margin: 1rem 0 1rem 0;
	z-index: -2;
}

.content h4::before {
    position: absolute;
	bottom: 5px;
	left: 1px;
	content: "";
	display: block;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background-color: #ddbb99;
	opacity: 0.5;
	z-index: -1;
}

.content p {
	margin: 0 0.1rem 1rem;
	line-height: 1.5;
}

/*.content p {
	font-size: 16px;
	line-height: 1.8;
	padding: 10px;
	margin-bottom: 30px;
	margin-top: 20px;
	margin-right: 30px;
	margin-left: 30px;
}*/

/*お知らせ*/
.news {
	width: 75%;
	margin: 0 auto;
	font-size: 0.9rem;
}
@media screen and (max-width: 768px) {
	.news {
		width: 100%;
	}
}

.news dl {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
}

.news dt {
	width: 30%;
	margin: 0 0 10px 0;
	padding: 1.2rem 0.5rem;
	text-align: center;
	border-top-left-radius: 3px;
	border-bottom-left-radius: 3px;
	box-sizing: border-box;
	background-color: #dadada;
}

.news dd {
	width: 70%;
	margin: 0 0 10px 0;
	padding: 1.2rem;
	border-top-right-radius: 3px;
	border-bottom-right-radius: 3px;
	box-sizing: border-box;
	background-color: #f3f3f3;
}

/*slider01*/
.slider01 {
	width: 100vw;
	height: 28vh;
	overflow: hidden;
	position: relative;
	max-width: 100%;
}

.slider01 div {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	z-index: 10;
	opacity: 0;
	animation-name: slide-fade;
	animation-duration: 15s;
	animation-iteration-count: infinite;
}

@keyframes slide-fade {
	0% { opacity: 0; }
	20% { opacity: 1; }
	80% { opacity: 0; }
	100% { opacity: 0; z-index: 0; }
}

.slider01 div:first-of-type { background-image: url(../img/kirishimarenzan2.jpg); }
.slider01 div:nth-of-type(2) { background-image: url(../img/karakuni.jpg); animation-delay: 5s; }
.slider01 div:last-of-type { background-image: url(../img/kirishimarenzan.jpg); animation-delay: 10s; }

/*slider02*/
.slider02 {
	width: 100vw;
	height: 28vh;
	overflow: hidden;
	position: relative;
	max-width: 100%;
}

.slider02 div {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	z-index: 10;
	opacity: 0;
	animation-name: slide-fade;
	animation-duration: 15s;
	animation-iteration-count: infinite;
}

@keyframes slide-fade {
	0% { opacity: 0; }
	20% { opacity: 1; }
	80% { opacity: 0; }
	100% { opacity: 0; z-index: 0; }
}

.slider02 div:first-of-type { background-image: url(../img/fudou.jpg); }
.slider02 div:nth-of-type(2) { background-image: url(../img/rokkankannon.jpg); animation-delay: 5s; }
.slider02 div:last-of-type { background-image: url(../img/koshiki.jpg); animation-delay: 10s; }

/*slider03*/
.slider03 {
	width: 100vw;
	height: 28vh;
	overflow: hidden;
	position: relative;
	max-width: 100%;
}

.slider03 div {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	z-index: 10;
	opacity: 0;
	animation-name: slide-fade;
	animation-duration: 15s;
	animation-iteration-count: infinite;
}

@keyframes slide-fade {
	0% { opacity: 0; }
	20% { opacity: 1; }
	80% { opacity: 0; }
	100% { opacity: 0; z-index: 0; }
}

.slider03 div:first-of-type { background-image: url(../img/ooyamarenge.jpg); }
.slider03 div:nth-of-type(2) { background-image: url(../img/nokaidou.jpg); animation-delay: 5s; }
.slider03 div:last-of-type { background-image: url(../img/miyamakirishima.jpg); animation-delay: 10s; }

/*slider04*/
.slider04 {
	width: 100vw;
	height: 40vh;
	overflow: hidden;
	position: relative;
	max-width: 100%;
}

.slider04 div {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	z-index: 10;
	opacity: 0;
	animation-name: slide-fade;
	animation-duration: 15s;
	animation-iteration-count: infinite;
}

@keyframes slide-fade {
	0% { opacity: 0; }
	20% { opacity: 1; }
	80% { opacity: 0; }
	100% { opacity: 0; z-index: 0; }
}

.slider04 div:first-of-type { background-image: url(../img/spa.jpg); }
.slider04 div:nth-of-type(2) { background-image: url(../img/spa2.jpg); animation-delay: 5s; }
.slider04 div:last-of-type { background-image: url(../img/spa3.jpg); animation-delay: 10s; }

/*slider05*/
.slider05 {
	width: 99%;
	height: 40vh;
	overflow: hidden;
	position: relative;
	max-width: 100%;
	margin: 0 auto 2rem;
	text-align: center;
}

.slider05 div {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	z-index: 10;
	opacity: 0;
	animation-name: slide-fade;
	animation-duration: 15s;
	animation-iteration-count: infinite;
}

@keyframes slide-fade {
	0% { opacity: 0; }
	20% { opacity: 1; }
	80% { opacity: 0; }
	100% { opacity: 0; z-index: 0; }
}

.slider05 div:first-of-type { background-image: url(../img/facility.jpg); }
.slider05 div:nth-of-type(2) { background-image: url(../img/facility2.jpg); animation-delay: 5s; }
.slider05 div:last-of-type { background-image: url(../img/facility3.jpg); animation-delay: 10s; }


.read_spa {
	/*margin: 0 0.5rem;*/
	padding: 2.5rem 2.5rem 1.5rem;
	border: 1px solid #dbd0e6;
	border-radius: 5px;
	box-sizing: border-box;
	background-color: rgba(132, 162, 212, 0.1);
	background-repeat: no-repeat;
	background-position: bottom -15px right -20px;
	background-image: url(../img/hot-spring_150.png);
}
@media screen and (max-width: 768px) {
	.read_spa {
		width: 100%;
		margin: 15px auto;
		padding: 1rem 0.5rem 0;
	}
}

/*コンテンツ大ボタン
-------------------------------------------*/
.content .btn_001 a {
	font-size: 20px;
	color: #fff;
	text-align: center;
	border: 5px solid #F6F6F6;
	text-decoration: none;
	display: block;
	width: 88%;
	background-color: #333333;
	margin-top: 20px;
	margin-right: auto;
	margin-bottom: 30px;
	margin-left: auto;
	line-height: 30px;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	padding-top: 15px;
	padding-bottom: 15px;
	position: relative;
	max-width: 500px;
	clear: both;
}

.content .btn_001 a i {
	padding-right: 10px;
}

.content .btn_001 a:hover {
	color: #333333;
	text-align: center;
	background-color: #FFF;
	width: 90%;
	border-top-color: #333333;
	border-right-color: #333333;
	border-bottom-color: #333333;
	border-left-color: #333333;
}

.img_center {
	display: block;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 20px;
}

.img_left {
	float: left;
	padding-right: 30px;
	padding-left: 30px;
	padding-bottom: 20px;
}
.img_right {
	float: right;
	padding-right: 30px;
	padding-left: 30px;
	padding-bottom: 20px;
}

.content .img_left p {
	font-size: 12px;
	margin: 0px;
}

/*トップへ戻るボタン*/
.to_top {
	position: fixed;
	right: 10px;
	z-index: 200;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}

.to_top a {
	text-decoration: none;
	color: #fff;
	text-align: center;
	display: block;
	border-radius: 50px;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
	font-size: 10px;
	background-color: #522f60;
	padding: 20px;
	height: 30px;
	width: 30px;
}

.to_top a:hover {
	opacity: 1.0;
	filter: alpha(opacity=100);
	-ms-filter: "alpha(opacity=100)";
}

/*
フッター
-------------------------------------------*/
footer {
	background-color: rgba(0, 0, 0, 0.7);
	color: #fff;
	clear: both;
	width: 100%;
	display: block;
	padding-top: 15px;
	padding-bottom: 10px;
}

footer::after {
  content: "."; 
  display: block; 
  height: 0; 
  font-size: 0;	
  clear: both; 
  visibility: hidden;
}

.site_nav {
	margin-bottom: 0.5rem;
	text-align: center;	
}

.site_nav a {
	display: inline-block;
	font-weight: bold;
	text-decoration: none;
	color: #522f60;
	margin: 0 0.3rem 0.5rem;
	padding: 0.5rem 0.7rem 0.4rem;
	border-radius: 30px;
	background-color: #ccc;
}

.site_nav a:hover {
	color: #640125;
	background-color: #fff;
}

address {
	font-size: 0.8rem;
	font-style: normal;
	/*padding-top: 5px;
	padding-right: 10px;
	padding-bottom: 5px;
	padding-left: 10px;*/
}

footer ul.f_bn {
	display: block;
	float: left;
}

footer .f_bn li { display: inline; }

footer .f_bn li a {
	display: inline-block;
	font-size: 14px;
	letter-spacing: 1px;
	padding: 10px;
	text-decoration: none;
	color: #fff;
	border: 1px solid #fff;
	opacity: 0.5;
	filter: alpha(opacity=50);
	-ms-filter: "alpha(opacity=50)";
	margin-left: 10px;
	font-weight: bold;
}

footer .f_bn li a:hover {
	opacity: 1.0;
	filter: alpha(opacity=100);
	-ms-filter: "alpha(opacity=100)";
}

footer .f_bn li a i { padding-right: 5px; }

footer .box_pr {
	clear: both;
	width: 100%;
	display: block;
	padding-top: 10px;
	padding-bottom: 10px;
	text-align: center;
	font-size: 10px;
	color: #ccc;
}

.box_pr ul li {
	display: inline;
	padding: 5px;
}

.box_pr ul li a { color: #ccc; }

/*
各種テーブル
-------------------------------------------*/
.table_00 {
	border-collapse: collapse;
	table-layout: fixed;
	width: 100%;
	margin: 0.5rem 0 1.5rem;
	font-size: 0.9rem;
	line-height: 1.2;
	text-align: center;
}

.table_00 th, .table_00 td {
	border-bottom: 1px dotted #ccc;
	padding: 1rem 0;
}

.table_00 th {
	/*white-space: nowrap;*/
}

.table_00 td {
	letter-spacing: 0.05rem;
}

.table_00 thead th {
	background-color: #028760;
	color: #fff;
	letter-spacing: 1rem;
	border: 1px solid #028760;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}

.table_00 thead th:last-of-type {
	border-right: 1px solid #028760;
}

.table_00 tbody th {
	color: #028760;
	font-weight: bold;
	text-align: center;
}

@media screen and (max-width: 768px) {
	.table_00 {
		text-align: left;
	}
	.table_00 thead {
		display:none;
	}
	.table_00 th, .table_00 td {
		display: block;
		padding-left: 1rem;
		border: 0;
		border-bottom: 1px solid #68be8d;
	}
	.table_00 tbody th {
		background: #028760;
		color: #fff;
		border-radius: 0 0 5px 5px;
	}
	.table_00 td::before {
		content: attr(data-label);
		color: #028760;
		font-weight: bold;
		display: inline-block;
		width: 30%;
	}
}



.content table.table_01 {
	width: 100%;
	margin-top: 0.5rem;
	margin-bottom: 2rem;
	white-space: nowrap;
}

.content table.table_01 th,
.content table.table_01 td {
	padding: 0.3rem 0.5rem;
}

.content table.table_01 th {
	font-size: 1rem;
	text-align: left;
	font-weight: normal;
	letter-spacing: 1rem;
	border-top: 1px dotted #ccc;
	border-bottom: 1px dotted #ccc;
	background-color: rgba(219, 208, 230, 0.2);
}

.content table.table_01 td {
	font-size: 0.9rem;
	line-height: 30px;
	border-bottom: 1px dotted #ccc;
}

table.table_01 td:first-of-type {
	width: 50%;
}

table.table_01 th:last-of-type {
	text-align: right;
}

table.table_01 td:last-of-type {
	width: 20%;
	text-align: right;
}

.content table.table_01 td.td_price {
	font-size: 16px;
	text-align: center;
	white-space: nowrap;
	color: #008C69;
	font-weight: bold;
}

.content table.table_02 {
	width: 96%;
	margin-top: 20px;
	margin-right: auto;
	margin-bottom: 30px;
	margin-left: auto;
	max-width: 600px;
}
.content table.table_02 th,
.content table.table_02 td {
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #CCC;
	padding: 20px;
}
.content table.table_02 th {
	font-size: 18px;
	white-space: nowrap;
	font-weight: normal;
	letter-spacing: 1px;
	width: 33%;
	background-color: #F6F6F6;
}
.content table.table_02 td {
	font-size: 16px;
	line-height: 30px;
	background-color: #FFF;
}
.content table.table_02 td .price {
	font-size: 20px;
	text-align: center;
	white-space: nowrap;
	color: #000000;
	font-weight: bold;
	padding-right: 5px;
	padding-left: 5px;
}


#mailform table.m_form {
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
#mailform table.m_form th {
	text-align: right;
	border-right-width: 4px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: dotted;
	border-right-color: #CCC;
	border-bottom-color: #CCC;
	font-size: 14px;
	font-weight: normal;
	padding-top: 15px;
	padding-right: 10px;
	padding-bottom: 10px;
	padding-left: 10px;
}
#cont_base #mailform table.m_form th p {
	font-size: 10px;
	line-height: 14px;
	color: #999;
	margin: 0px;
	padding: 0px;
}
#cont_base #mailform table.m_form th span {
	color: #FF0000;
	padding-left: 5px;
	padding-right: 5px;
}
#mailform table.m_form td {
	padding: 10px;
	background-color: #FFF;
	border-bottom-style: dotted;
	border-bottom-color: #CCC;
	border-bottom-width: 1px;
	font-size: 14px;
}
form input.form_btn {
	background-color: #333;
	color: #FFF;
	padding-top: 7px;
	padding-right: 20px;
	padding-bottom: 7px;
	padding-left: 20px;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border: 3px solid #EEE;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}
form input.form_btn:hover {
	background-color: #FFF;
	color: #333;
	border-top-color: #333;
	border-right-color: #333;
	border-bottom-color: #333;
	border-left-color: #333;
	cursor: pointer;
}
.small {
	font-size: smaller;
	color: #666;
}
.chui {
	color: #F03600;
}
#cont_base .content .navi_sitemap li {
	padding-left: 20px;
}
.table_01 caption {
	font-size: 14px;
	line-height: 30px;
	background-color: #E5E5E5;
	color: #111;
	letter-spacing: 1px;
	padding-top: 5px;
	padding-bottom: 5px;
	border: 1px solid #FFF;
	box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 2px 0px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 2px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 2px 0px;
}
.table_01 th span {
	font-size: 12px;
	color: #CCC;
}

/*
FAQ
-------------------------------------------*/
.content dl.faq {
	margin: 0 0.5rem 30px;
	padding: 10px 0 20px 0;
	border-bottom: 1px dotted #ccc;
}

.content dl.faq dt {
	font-size: 1.2rem;
	line-height: 1.5;
	position: relative;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E",  "ＭＳ Ｐ明朝", "MS PMincho", serif;
	padding: 10px 20px 10px 50px;
	background-color: rgba(224, 235, 175, 0.3);
	color: #111;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}

.content dl.faq dt span {
	font-size: 20px;
	font-weight: bold;
	color: #fff;
	background-color: #333;
	text-align: center;
	display: block;
	width: 50px;
	padding-top: 10px;
	height: 40px;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	position: absolute;
	top: -20px;
	left: -10px;
	z-index: 10;
}

.content dl.faq dt span::before {
	content: "";
	position: absolute;
	bottom: -5px;
	right: -3px;
 	margin-left: -12px;
	border-right: 12px solid transparent;
	border-top: 20px solid #333;
	border-left: 12px solid transparent;
 	z-index: 0;
	transform: rotate(-40deg);
}

.content dl.faq dd {
	margin-top: 0.7rem;
	padding: 10px 20px 10px 20px;
	background-color: rgba(147, 46, 64, 0.1);
}

/*
アクセス
-------------------------------------------*/
.overview {
	padding: 1.5rem 2rem 3rem;
	border: 1px solid #ccc;
	border-radius: 5px;
	background-color: rgba(249, 255, 249, 1);
	background-repeat: no-repeat;
	background-position: bottom -15px right -20px;
	background-image: url(../img/car_150.png);
}

.g_map { background-color: #fff; }

/* Google Mapを囲う要素 */
.map {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 75%; /* 比率を4:3に固定 */
}
 
/* Google Mapのiframe */
.map iframe,
.map object,
.map embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*
トップ下部ピックアップ
-------------------------------------------*/
.pick_up {
	height: 30%;
	max-height: 500px;
	width: 100%;
	position: absolute;
	bottom: 0;
	background-color: rgba(0, 0, 0, 0.7);
}

.pick_up .sc_btm a {
	line-height: 50px;
	color: #333;
	background-color: #fff;
	height: 100px;
	width: 100px;
	display: block;
	margin-right: auto;
	margin-left: auto;
	border-radius: 50px;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	font-size: 12px;
	text-decoration: none;
	letter-spacing: 2px;
	background-image: url(../img/sc_btm.png);
	background-position: center center;
	background-repeat: no-repeat;
	position: absolute;
	bottom: -50px;
	left: 50%;
	margin-left: -50px;
	z-index: 80;
	text-align: center;
}

.pick_up .sc_btm a:hover {
	color: #000;
	height: 110px;
	width: 110px;
	border-radius: 55px;
	-webkit-border-radius: 55px;
	-moz-border-radius: 55px;
	margin-top: -10px;
	margin-left: -55px;
}

.pick_up ul {
	display: block;
	margin-left: auto;
	margin-right: auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	max-width: 1400px;
	padding: 30px;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.pick_up ul li {
	width: 30%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
}

.pick_up ul li a {
	display: block;
	font-size: 1.15rem;
	letter-spacing: -0.1rem;
	box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 5px 0px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 5px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 5px 0px;
	overflow: hidden;
}

.pick_up ul li a img {
	width: auto;
	max-width: 100%;
	-webkit-transition: 1.0s ease-out;
	-moz-transition: 1.0s ease-out;
	transition: 1.0s ease-out;
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
}

.pick_up ul li a:hover img {
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-o-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
	opacity: 1.0;
	filter: alpha(opacity=100);
	-ms-filter: "alpha(opacity=100)";
}

.pick_up ul li a:hover {
	box-shadow: rgba(0, 0, 0, 0.5) 0px 0px 7px 0px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.5) 0px 0px 7px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.5) 0px 0px 7px 0px;
}

a .btn_check {
	color: #fff;
	font-size: 1.3rem;
	line-height: 2.8;
	text-decoration: none;
	text-align: center;
	background-color: rgba(82, 47, 96, 0.9);
	display: block;
	width: 50%;
	margin-top: -25px;
	margin-left: -25%;
	border-radius: 30px;
	/*border: 2px solid #fff;*/
	position: absolute;
	left: 50%;
	top: 50%;
	font-weight: 500;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}

a:hover .btn_check {
	color: #fff;
	text-shadow: 0px 0px 3px rgba(0, 0, 0, 1);
	/*border: 2px solid #932e40;*/
	background-color: #932e40;
}

a .btn_check i {
	padding-right: 10px;
	padding-left: 5px;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}

a:hover .btn_check i {
	padding-right: 5px;
	padding-left: 10px;
}

.hover-img {
	cursor: pointer;
	overflow: hidden;
}

.hover-img img { transition: transform .6s ease; }

.hover-img:hover img { transform: scale(1.1); }

/*
実績一覧
-------------------------------------------*/
ul.works_list {
	display: block;
	margin-left: auto;
	margin-right: auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	max-width: 1400px;
	padding: 30px;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

ul.works_list li {
	width: 21%;
	position: relative;
	text-align: center;
	margin-bottom: 30px;
}
ul.works_list li a {
	display: block;
	overflow: hidden;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 20px;
	border: 1px dotted #CCC;
	background-color: #FFF;
	text-decoration: none;
	color: #333;
}
ul.works_list li a img {
	width: auto;
	max-width: 100%;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
  opacity: 0.9;
	filter: alpha(opacity=90);
	-ms-filter: "alpha( opacity=90 )";
}

ul.works_list li a:hover img {
  -webkit-filter: grayscale(0%);
  filter: grayscale(0%);
  opacity: 1.0;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
}

ul.works_list li a span {
	display: block;
	padding-top: 10px;
	font-size: 12px;
	letter-spacing: 1px;
}

ul.works_list li a:hover {
	box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 10px 0px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 10px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 10px 0px;
	border: 1px solid #000;
	color: #000;
}

/*
エフェクト
-------------------------------------------*/
.effect {
	opacity: 0;
	filter: alpha(opacity=0);
	-ms-filter: "alpha(opacity=0)";
	transform: translateY(20px);
	-webkit-transform: translateY(20px);  
    -moz-transform: translateY(20px); 
	-webkit-transition: 1.0s ease-out;
	-moz-transition: 1.0s ease-out;
	transition: 1.0s ease-out;
}

.effect.d_02 {
	transition-delay: 0.2s;
	-webkit-transition-delay: 0.2s;
}

.effect.d_04 {
	transition-delay: 0.4s;
	-webkit-transition-delay: 0.4s;
}

.effect.d_06 {
	transition-delay: 0.6s;
	-webkit-transition-delay: 0.6s;
}

.effect.d_08 {
	transition-delay: 0.8s;
	-webkit-transition-delay: 0.8s;
}

.effect.start {
	opacity: 1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha(opacity=100)";
	transform: translateY(0px);
	-webkit-transform: translateY(0px);  
    -moz-transform: translateY(0px);    
}

.content p.check { color: #ff3333; }

.content p.p_st {
	font-size: 20px;
	color: #ca28b1;
}

/*------------------------------*/
.content .box_att {
	margin-top: 30px;
	padding: 25px;
	border: 1px dashed #999;
}

.content .box_att h2 {
	font-weight: normal;
	font-size: 22px;
	color: #555;
}
.content .box_att p {
	font-size: 14px;
	margin: 0px;
	color: #555;
}

/*サイトメニュー*/
.button {
	display: block;
	margin: 0 auto;
	text-align: center;
	border-bottom: 1px dotted #ccc;
}

.button a {
	position: relative;
	overflow: hidden;
	border-radius: 7px;
	text-decoration: none;
	display: inline-block;
	max-width: 240px;
	background: rgba(196, 163, 191, 0.5);
	margin: 0 0.5rem 0.5rem;
	padding: 0.7rem 1rem;
	text-align: center;
	line-height: 1.8;
	outline: none;
	transition: ease 0.2s;
}

.button a span {
	position: relative;
	z-index: 3;
	color: #333;
}

.button a:hover span { color: #fff; }

.bgleft:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	background-color: rgba(82, 47, 96, 1);
	width: 100%;
	height: 100%;
	transition: transform 0.4s cubic-bezier(0.8, 0, 0.2, 1) 0s;
	transform: scale(0, 1);
	transform-origin: right top;
}

.bgleft:hover:before {
	transform-origin: left top;
	transform: scale(1, 1);
}

/*スパボタン*/
.spa-button {
	border-top: 1px dotted #ccc;
}

.spa-button a {
	position: relative;
	display: flex;
	justify-content: space-around;
	align-items: center;
	max-width: 200px;
	margin: 2rem auto;
	padding: 10px 0px 10px 25px;
	line-height: 1.8;
	text-decoration: none;
	color: #333;
	transition: 0.3s ease-in-out;
	font-weight: 600;
}

.spa-button a:before, .spa-button a:after {
	content: "";
	position: absolute;
	display: block;
	top: 50%;
}

.spa-button a:before {
	width: 0.5rem;
	height: 0.5rem;
	left: 1.1rem;
	border-top: solid 2px #333;
	border-right: solid 2px #333;
	z-index: 2;
	transform: translateY(-50%) rotate(45deg);
	transition: all 0.3s;
}

.spa-button a:after {
	left: 0;
	background-color: rgba(82, 47, 96, 0.3);
	z-index: 1;
	width: 3rem;
	height: 3rem;
	border-radius: 4rem;
	transform: translateY(-50%);
	transition: all 0.5s;
}

.spa-button a span {
	position: relative;
	transition: all 0.3s;
	z-index: 3;
}

.spa-button a:hover span {
	color: #fff;
}

.spa-button a:hover:before {
	left: 2.5rem;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
}

.spa-button a:hover:after {
	right: 0;
	width: 100%;
	background-color: rgba(82, 47, 96, 1);
}


/*フォームボタン*/
.from-button {
	margin: 3rem auto;
}

.from-button a {
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    max-width: 200px;
    padding: 10px 25px;
    color: #555;
    transition: 0.3s ease-in-out;
    font-weight: 600;
	font-size: 1.2rem;
	letter-spacing: 0.2rem;
	text-decoration: none;
	border: 1px solid #ccc;
	background-color: #fff1cf;
	box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.3);
}

.from-button a:before {
    content: '';
    position: absolute;
    top: calc(50% - 1px);
    right: -1.5rem;
    transform: translateY(calc(-50% - 1px)) rotate(30deg);
    width: 10px;
    height: 1px;
    background-color: #932e40;
    transition: 0.3s;
}

.from-button a:after {
    content: '';
    position: absolute;
    top: 50%;
    right: -1.5rem;
    transform: translateY(-50%);
    width: 50px;
    height: 1px;
    background-color: #932e40;
    transition: 0.3s;
}

.from-button a:hover:before,
.from-button a:hover:after { right: -2rem; }

.from-button a:hover {
    color: #6c2c2f;
	background-color: rgba(216, 163, 115, 0.5);
	border: 1px solid #aaa;
	box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.4);
}

/*Aケビンサイト*/
.a-site_read {
	position: relative;
	width: 75%;
	margin: 0 auto 3rem;
	padding: 2rem;
	font-size: 1.1rem;
	text-align: center;
	border-radius: 10px;
	background-color: rgba(195, 145, 67, 0.1);
}

.a-site_read::before {
	content: attr(data-number);
	position: absolute;
	top: 30px;
	left: -10px;
	transform: translateY(-50%);
	font-family: 'Arial Black', sans-serif;
	font-size: 15rem;
	color: rgba(63, 193, 201, 0.1);
}

/*Bケビンサイト*/
.b-site_read {
	position: relative;
	width: 75%;
	margin: 0 auto 3rem;
	padding: 2rem;
	font-size: 1.1rem;
	text-align: center;
	border-radius: 10px;
	background-color: rgba(195, 145, 67, 0.1);
}

.b-site_read::before {
	content: attr(data-number);
	position: absolute;
	top: 30px;
	left: -25px;
	transform: translateY(-50%);
	font-family: 'Arial Black', sans-serif;
	font-size: 15rem;
	color: rgba(63, 193, 201 ,0.1);
}

/*Cケビンサイト*/
.c-site_read {
	position: relative;
	width: 75%;
	margin: 0 auto 3rem;
	padding: 2rem;
	font-size: 1.1rem;
	text-align: center;
	border-radius: 10px;
	background-color: rgba(195, 145, 67, 0.1);
}

.c-site_read::before {
	content: attr(data-number);
	position: absolute;
	top: 30px;
	left: -20px;
	transform: translateY(-50%);
	font-family: 'Arial Black', sans-serif;
	font-size: 15rem;
	color: rgba(63, 193, 201 ,0.1);
}


/**/
dd.n-01,
dd.n-02,
dd.n-03,
dd.n-04,
dd.n-05,
dd.n-06,
dd.n-07,
dd.n-08 {
	position: relative;
}

dd.n-01 span::before,
dd.n-02 span::before,
dd.n-03 span::before,
dd.n-04 span::before,
dd.n-05 span::before,
dd.n-06 span::before,
dd.n-07 span::before,
dd.n-08 span::before {
	content: attr(data-number);
	position: absolute;
	top: 20px;
	left: -10px;
	transform: translateY(-50%);
	font-family: 'Arial Black', sans-serif;
	font-size: 3.5rem;
	color: rgba(63, 193, 201 ,0.2);
}

/**/
dd.n-00 {
	position: relative;
}

dd.n-00 span {
	padding-left: 1.5rem;
}

dd.n-00 span::before {
	content: attr(data-number);
	position: absolute;
	top: 12px;
	left: 3px;
	transform: translateY(-50%);
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E",  "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 3rem;
	color: rgba(63, 193, 201 ,0.2);
}

dl.amount {	margin-bottom: 1.2rem; }

dt.stay {
	display: inline-block;
	margin-bottom: 0.5rem;
	padding: 0 0.5rem;
	letter-spacing: 0.2rem;
	border-radius: 3px;
	background-color: #c3d825;
}

dt.rest {
	display: inline-block;
	margin-bottom: 0.5rem;
	padding: 0 0.5rem;
	letter-spacing: 0.2rem;
	border-radius: 3px;
	background-color: #bbbcde;	
}

.amount dd {
	margin-left: 3rem;
	margin-bottom: 0.5rem;
	line-height: 1.5;
	border-bottom: 1px dotted #ccc;
}
@media screen and (max-width: 768px) {
	.amount dd {
		margin-left: 0.5rem;
	}
}

span.cash {
	font-size: 1.1rem;
	font-weight: bold;
	color: #e45e32;
}

.cashes {
	font-weight: bold;
	color: #e45e32;
}

ul.notes {
	font-size: 0.9rem;
	margin-bottom: 0.5rem;
	padding: 1rem 1.5rem;
	border: 1px dotted #ccc;
	background-color: #fff9f4;
}

ul.notes li {
	margin-bottom: 0.5rem;
	line-height: 1.5;
}

/*Bテントサイト*/
.stress {
	font-size: 1.1rem;
	font-weight: bold;
	color: #028760;
}

.caution {
	font-size: 1.1rem;
	font-weight: bold;
	color: #c9171e;
}

.font_small { font-size: 0.9rem; }

.font_small span { color: #c9171e; }

/*------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (min-width: 960px) {
body { font-size: 1rem; }

.sm-slider, .sm-slider::after {	top: 100px !important; }

/*ヘッダー*/
header {
	height: 140px;
	box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 3px 0px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 3px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 3px 0px;
	position: fixed;
	transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

header h1 a img {
	top: 20px;
	left: 10px;
}

header .h_btn a {
	width: 150px;
	top: 20px;
	right: 10px;
	line-height: 38px;
	padding-top: 2px;
	font-size: 1rem;
	font-weight: bold;
	text-align: center;
}

header .h_tel a {
	width: 200px;
	top: 20px;
	right: 180px;
	line-height: 38px;
	padding-top: 2px;
	font-size: 1.1rem;
}

header .h_tel a strong { font-size: 1.5rem; }

header.fixed { height: 100px; }

header.fixed h1 a img {
	height: 40px;
	top: 5px;
}

header.fixed .h_btn a,
header.fixed .h_tel a {	top: 5px; }

.menu_btn,
.btn_close { display: none; }

/*
PCグローバルナビ
-------------------------------------------*/
#g_navi {
	width: 98%;
	padding-left: 2%;
	display: block;
	height: 50px;
	position: absolute;
	z-index: 1000;
	left: 0 !important;
	bottom: 0;
	font-size: 0.9rem;
	letter-spacing: 0.15rem;
	font-weight: bold;
}

#g_navi ul.navi_base {
	width: 100%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	display: block;
}

#g_navi ul li { display: inline; }

#g_navi li a {
	width: 14%;
	padding-top: 15px;
	height: 35px;
	display: block;
	color: #111;
	text-decoration: none;
	text-align: center;
	line-height: 20px;
	position: relative;
	float: left;
}

#g_navi li a::before {
	display: block;
	height: 2px;
	position: absolute;
	top: 2px;
	width: 70%;
	left: 15%;
	background-color: #fff;
	content: '';
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}

#g_navi li a:hover::before {
	background-color: #640125;
	top: 0;
}

#g_navi li a:hover,
#g_navi li a.active,
#g_navi ul li:hover > a { color: #999; }

#g_navi ul li:hover > a.ac_menu,
#g_navi li a.ac_menu:hover { position: relative; }

#g_navi li a.ac_menu::after {
	content: "";
	position: absolute;
	bottom: -10px;
	left: 50%;
 	margin-left: -15px;
	border-right: 15px solid transparent;
	border-bottom: 20px solid #fff;
	border-left: 15px solid transparent;
 	z-index: 300;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}

#g_navi ul li:hover > a.ac_menu::after,
#g_navi li a.ac_menu:hover::after { border-bottom: 20px solid #111; }

#g_navi ul li div {
	position: absolute;
	z-index: 2000;
	top: 50px;
	left: 0px;
	opacity: 0;
	visibility: hidden;
	transition: 0.3s;
	width: 100%;
	height: auto;
	background-color: #111;
}

#g_navi ul li ul {
	width: 96%;
	padding-left: 2%;
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
}

#g_navi li ul li a {
	width: 21%;
	padding-left: 3%;
	padding-top: 9px;
	padding-bottom: 9px;
	line-height: 22px;
	height: 22px;
	color: #fff;
	text-align: left;
	margin-top: 10px;
	margin-bottom: 10px;
	margin-left: 1%;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

#g_navi li ul li a::after {
	content: "+";
	color: #fff;
	position: absolute;
	display: block;
	left: 15px;
	top: 8px;
	font-size: 9px;
}

#g_navi li ul li a:hover::after { color: #333; }
#g_navi ul li ul li a:hover {
	color: #000;
	background-color: #fff;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
}
#g_navi li li a::before { display: none; }

#g_navi ul li:hover div{
	visibility: visible;
	opacity: 1;
}

#g_navi div.ac_list { display: block !important; }

header.fixed #g_navi { height: 40px; }

header.fixed #g_navi ul li div { top: 40px; }

header.fixed #g_navi li a {
	padding-top: 10px;
	height: 30px;
}

header.fixed #g_navi li ul li a {
	padding-top: 9px;
	height: 22px;
}

#index_top { min-height: 850px; }

/*
サブトップ
-------------------------------------------*/
#sub_top.kevin-site { background-image: url(../img/sub_top_kevin-site.jpg); }
#sub_top.tent-site { background-image: url(../img/sub_top_tent-site.jpg); }
#sub_top.free-site { background-image: url(../img/sub_top_free-site.jpg); }
#sub_top.site-reserve { background-image: url(../img/sub_top_site-reserve.jpg); }

/*
フッター
-------------------------------------------*/
address {
	letter-spacing: 1px;
	text-align: right;
	display: block;
	float: right;
	padding-top: 30px;
	padding-right: 10px;
}

.no_pc { display: none; }

}

@media screen and (min-width: 1200px) {
	header .h_btn a {
		right: 50%;
		margin-right: -600px;
	}
	header .h_tel a {
		right: 50%;
		margin-right: -400px;
	}
	header h1 a img {
		left:50%;
		margin-left: -600px;
	}
}

@media screen and (max-width: 959px) {
	body { font-size: 0.9rem; }
	body.fixed { overflow: hidden; }
	img {
		max-width: 100% !important;
		height: auto;
		width: auto;
		margin-left: auto;
		margin-right: auto;
	}
	.content h4 {
		margin-right: 10px;
		margin-left: 10px;
	}
	.cont_wrap {
		
	}
	ul.works_list li {
		width: 31%;
	}
/*メニューボタン*/
	.menu_btn {
		display: block;
		height: 30px;
		width: 40px;
		text-align: center;
		padding-top: 5px;
		padding-bottom: 5px;
		background-color: #ccc;
		position: fixed;
		z-index: 5000;
		top: 5px;
		right: 5px;
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		cursor: pointer;
	}
	.menu_btn:hover {
		cursor: pointer;
	}
	.menu_btn span {
		width: 28px;
		height: 2px;
		display: block;
		position: absolute;
		left: 50%;
		top: 50%;
		margin-left: -14px;
		background-color: #555;
	}
	.menu_btn span {
		transition: all 0.3s;
		transform: rotate(0deg);
		-webkit-transform: rotate(0deg);  
		-moz-transform: rotate(0deg);    
	}
	.menu_btn span.top {
		transform: translateY(-8px);
		-webkit-transform: translateY(-8px);  
		-moz-transform: translateY(-8px);    
	}
	.menu_btn span.bottom {
    	transform: translateY(8px);
		-webkit-transform: translateY(8px);  
    	-moz-transform: translateY(8px);    
	}
	.menu_btn:hover span.top {
    	transform: translateY(-10px);
		-webkit-transform: translateY(-10px);  
    	-moz-transform: translateY(-10px);    
	}
	.menu_btn:hover span.bottom {
    	transform: translateY(10px);
		-webkit-transform: translateY(10px);  
    	-moz-transform: translateY(10px);    
	}
	.menu_btn.opened span.middle {
		background: rgba(255, 255, 255, 0);
		transform: translateX(30px);
		-webkit-transform: translateX(30px);  
		-moz-transform: translateX(30px);    
	}
	.menu_btn.opened span.top {
    	transform: rotate(-45deg) translateY(0px);
		-webkit-transform: rotate(-45deg) translateY(0px);  
    	-moz-transform: rotate(-45deg) translateY(0px);    
	}
	.menu_btn.opened span.bottom {
    	transform: rotate(45deg) translateY(0px);
		-webkit-transform: rotate(45deg) translateY(0px);  
    	-moz-transform: rotate(45deg) translateY(0px);    
	}
/*グローバルナビ*/
	#g_navi {
		position: fixed;
		width: 80%;
		height: 100%;
		top: 0;
		left: 100%;
		padding-top: 50px;
		overflow: auto;
		z-index: 3000;
		background-color: #fff;
		box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
		-webkit-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
		-moz-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 3px 0px;
		font-size: 0.9rem;
		letter-spacing: 0.1rem;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	#g_navi ul {
		display: block;
		margin: 0;
		padding: 0;
		clear: both;
	}
	#g_navi ul li:first-child {	border-top: 1px solid #eee; }
	#g_navi ul li {	border-bottom: 1px solid #eee; }
	#g_navi ul li a {
		color: #111;
		text-decoration: none;
		display: block;
		padding-top: 16px;
		padding-right: 30px;
		padding-bottom: 14px;
		padding-left: 20px;
		line-height: 22px;
		vertical-align: middle;
	}
	#g_navi ul li a:hover {	color: #999; }
/*アコーディオン*/
	#g_navi ul li a.ac_menu {
		position: relative;
		background-image: none;
	}
	#g_navi ul li a.ac_menu::after {
		font-size: 11px;
		display: block;
		height: 20px;
		width: 20px;
		content: "▼";
		text-align: center;
		line-height: 20px;
		position: absolute;
		top: 16px;
		right: 10px;
		color: #555;
	}
	#g_navi ul li a.ac_menu.active {
		color: #999;
	}
	#g_navi ul li a.ac_menu.active::after {
		content: "▲";
	}
	#g_navi div.ac_list {
		display: none;
	}
	#g_navi ul li ul li {
		border-bottom: none;
	}
	#g_navi ul li li:first-child {
		border-top: none;
	}
	#g_navi ul li ul li a {
		border-bottom: none;
	}
	#g_navi ul li ul li a::before {
		content: "・";
		padding-right: 5px;
		color: #999;
	}
	#g_navi ul li ul li a:hover { color: #999; }
/*メニューシャドウ*/
	.bg_bl {
		background-color: #333;
		height: 100%;
		width: 100%;
		opacity: 0.80;
		filter: alpha(opacity=80);
		-ms-filter: "alpha(opacity=80)";
		display: block;
		position: fixed;
		z-index: 2000;
	}
/*ヘッダー*/
	.sm-slider, .sm-slider::after {	top: 50px !important; }
	header { height: 52px; }
	header h1 a img {
		top: 10px;
		left: 5px;
		height: 40px;
	}
	header .h_btn a {
		width: 120px;
		top: 10px;
		right: 55px;
		line-height: 29px;
		padding-top: 1px;
		font-size: 12px;
	}
	header .h_tel a {
		width: 120px;
		top: 10px;
		right: 180px;
		line-height: 29px;
		padding-top: 1px;
		font-size: 12px;
	}
	header .h_menu { display: none;	}
	header #info { display: none; }
/*サブヘッダー*/
	#sub_top.kevin-site { background-image: url(../img/sub_top_kevin-site.jpg); }
	#sub_top.tent-site { background-image: url(../img/sub_top_tent-site.jpg); }
	#sub_top.free-site { background-image: url(../img/sub_top_free-site.jpg); }
	#sub_top.site-reserve { background-image: url(../img/sub_top_site-reserve.jpg); }
	#sub_top span {	font-size: 1.2rem; }
/*フッター*/
	address {
		text-align: center;
		padding-top: 10px;
		display: block;
		clear: both;
	}
	footer ul.f_bn {
		float: none;
		margin: 0 auto;
		text-align: center;
	}
	footer .f_bn li a {
		font-size: 11px;
		padding: 8px;
	}
	.no_sp { display: none; }
	header h1 a img {
		top: 10px;
		height: 30px;
	}
	header .h_btn a {
		width: 50px;
		font-size: 18px;
		border-top-style: none;
		border-bottom-style: none;
	}
	header .h_tel a {
		width: 50px;
		font-size: 18px;
		right: 100px;
	}
	header .h_tel a span,
	header .h_btn a span { display: none; }
	#mailform table.m_form th,
	#mailform table.m_form td {
		width: 100% !important;
		display: block;
		text-align: center;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	#mailform table.m_form th {
		border-right-style: none;
		padding-bottom: 5px;
	}
	#index_top #top_catch h2 { font-size: 2rem; }
	#index_top #top_catch p { font-size: 1rem; }
	#sub_top {
		height: 150px;
		line-height: 150px;
		padding-top: 50px;
		background-position: center 50px;
	}
	.content {
		padding-top: 20px;
		padding-bottom: 20px;
	}
	ul.works_list li { width: 47%; }
	.img_left,
	.img_right {
		float: none;
		display: block;
		margin-left: auto;
		margin-right: auto;
		padding-left: 10px;
		padding-right: 10px;
		padding-bottom: 10px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	.pick_up ul { padding: 10px; }
	.pick_up ul li { width: 33%; }
	a .btn_check {
		width: 90%;
		margin-left: -45%;
	}
}

@media screen and (max-width: 460px) {
	input,
	textarea { max-width: 300px !important; }
	.content table.table_01 th,
	.content table.table_01 td {
		width: 100% !important;
		display: block;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	.content table.table_01 th { background-color: #f6f6f6; 	}
	#index_top #top_catch h2 { font-size: 1.5rem; }
	#sub_top { font-size: 0.9rem; }
	.content h2 { font-size: 1.2rem; }
	.content h2 span { font-size: 1rem; }
	a .btn_check {
		font-size: 0.8rem;
		line-height: 30px;
	}
	a .btn_check i {
		padding-right: 5px;
		padding-left: 2px;
	}
	a:hover .btn_check i {
		padding-right: 2px;
		padding-left: 5px;
	}
	ul.works_list li { width: 98%; }
}

