@charset "utf-8";
/* CSS Document */

/* =========================
	body
========================= */

body {
	background: url(../img/base/body.jpg),
	#fff;
	font-size: 13px;
	font-family: "ヒラギノ丸ゴ Pro W3", "Hiragino Maru Gothic Pro, Me", "osaka", "Meiryo", "ＭＳ Ｐゴシック", sans-serif;
	line-height: 2em;
	color: rgb(51, 51, 51);
}

p {
	color: rgb(51, 51, 51);
}

img {
	margin: 0;
	padding: 0;
	max-width: 100%;
	border: none;
}

a:link,
a:visited {
	color: #eee;
	text-decoration: underline;
	word-break: break-all;
	color: #5f0000;
}

a:focus {
	outline: none;
}

table {
	width: 100%;
	border-collapse: collapse;
	/*border-spacing: 3px;*/
	word-break: break-all;
	font-size: 12px;
	color: #755303;
}

th {
	padding: 2px 2%;
}

td {
	width: auto;
	padding: 2px 2%;
}

dl {
	color: #c33;
}

dl:after {
	content: "";
	display: block;
	clear: both;
}

dt {
	clear: both;
	float: left;
	width: 8%;
	max-width: 20px;
	margin: 0;
}

dd {
	float: left;
	width: 92%;
	margin: 0;
}

dl span {
	display: inline-block;
}


/* =========================
	header
========================= */

.header {
	max-width: 800px;
	margin: 0 auto;
	background: url(../img/base/kamihubuki.png) repeat-x top center;
	background-size:65%;
	text-align:center;
}

h1 {
	margin-top: 10px;
	padding: 0 2%;
	line-height: 0;
}

.logo {
	padding-bottom: 20px;
	padding-top:10px;
}


/* =========================
	slider
========================= */


	.slider_box {
		margin: 15px auto 0;
		padding-top: 2px;
		background: url(../img/index/slider.jpg) repeat-x top center;
	}
	
	.header .pc {
		display: none;
	}
	
	.header .sp {
		display: block;
	}
	
@media screen and (max-width: 460px) {

}


/* =========================
	g_menu
========================= */

.g_menu {
	padding: 15px 0;
	background: url(../img/menu/g_menu.png) repeat-x top center;
	background-size: auto 100%;
	line-height: 0;
	text-align: center;
}

.g_menu:after {
	content: "";
	display: block;
	clear: both;
}

.g_menu ul {
	width: 96%;
	max-width: 700px;
	margin: 0 auto;
	padding: 0;
}

.g_menu li {
	width: 50%;
	float: left;
	list-style: none;
}

.g_menu img {
	width: 90%;
	max-width: 120px;
}


/* =========================
	menu
========================= */

.menu {
	background: url(../img/menu/menu_line.jpg) repeat-x top center,
	url(../img/menu/menu_line.jpg) repeat-x bottom center,
	url(../img/menu/menu.png);
	line-height: 0;
	text-align: center;
}

.menu ul {
	width: 96%;
	max-width: 700px;
	margin: 0 auto;
	padding: 0;
}

.menu ul li {
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
	line-height: 0;
	list-style: none;
}

.menu ul li a {
	display: block;
	padding: 25px 2%;
	background: url(../img/menu/arrow.png) no-repeat 95% 50%;
	background-size: auto 16px;
	text-decoration: none;
}


/* =========================
	sub_menu
========================= */

.sub_menu {
	width: 90%;
	max-width: 310px;
	margin: 20px auto 0;
	line-height: 0;
	text-align: center;
}

.sub_menu a {
	display: inline-block;
	margin: 30px 0 0;
}


/* =========================
	footer_menu
========================= */

.footer_menu {
	width: 90%;
	max-width: 310px;
	margin: 30px auto 0;
	text-align: center;
}

.footer_menu a {
	display: inline-block;
	margin: 30px 0 0;
	padding-bottom: 20px;
	background: url(../img/menu/menu_line.jpg) repeat-x bottom center;
}


/* =========================
	f-menu
========================= */

.f_menu {
	margin: 0;
	padding: 20px 0 0;
	line-height: 0;
	text-align: center;
}

.f_menu:after {
	content: "";
	display: block;
	clear: both;
}

.f_menu ul {
	max-width: 400px;
	margin: 0 auto;
	padding: 0;
}

.f_menu li {
	float: left;
	width: 50%;
	list-style: none;
}

.f_menu img {
	width: 90%;
	max-width: 100px;
}


/* =========================
	footer
========================= */

.footer {
	margin: 60px 0 0;
	padding: 20px 0 0;
	background: url(../img/base/footer.png) repeat-x 50% 20px;
}

.footer_inner {
	max-width: 480px;
	margin: 0 auto;
	padding: 40px 2% 10px;
}

.footer_inner:after {
	content: "";
	display: block;
	clear: both;
}

.footer_logo {
	display: inline-block;
	margin-right: 10px;
	line-height: 0;
}

@media screen and (max-width: 495px) {
	.footer_logo {
		display: block;
		margin: 0;
		text-align: center;
	}
}

.footer_text {
	display: inline-block;
}

.footer_text p {
	color: #fff;
}

.footer span {
	display: inline-block;
	margin-right: 10px;
}

.copyright {
	padding: 1px 2%;
	background: #5d0000;
	text-align: center;
}

.copyright p {
	line-height: 13px;
	font-size: 11px;
	color: #fff;
}


/* =========================
	Contents
========================= */

.contents {
	width: 96%;
	max-width: 700px;
	margin: 0 auto;
}

.contents_inner p {
	padding: 0 2%;
}

.banner {
    padding: 10px 0;
    text-align: center;
    background-color: rgba(160,160,160,0.1); 
}

.link a {
	display: block;
	max-width: 200px;
	margin: 30px auto 0;
	padding: 10px 20px;
	background: url(../img/base/link.jpg);
	border: 3px double rgba(255,255,255,0.8);
	box-shadow: 1px 1px 10px rgba(0,0,0,0.2);
	-webkit-box-shadow:  1px 1px 10px rgba(0,0,0,0.2);
	-moz-box-shadow:  1px 1px 10px rgba(0,0,0,0.2);
	-o-box-shadow: 1px 1px 10px rgba(0,0,0,0.2);
	color: #fff;
	text-align: center;
	text-decoration: none;
	background-color: #510202;
}

.midashi {
	margin: 60px 0 0;
	padding-bottom: 18px;
	background: url(../img/base/midashi.png) repeat-x bottom left;
	line-height: 0;
}

.midashi2 {
	margin: 30px 0 0;
	padding-bottom: 10px;
	background: url(../img/base/midashi2.png) repeat-x bottom left;
	line-height: 0;
}

.lightbox:after {
	content: "";
	display: block;
	clear: both;
}

.lightbox_info {
	margin: 0;
	font-size: 11px;
	text-align: center;
}

#drone,#drone *{box-sizing: border-box;}
#drone{width:100%;max-width:500px;margin:80px auto 0;}
.title_waku{
	display:flex;
	justify-content: center;
	align-items: center;
	gap:2%;
	width:100%;margin:0px auto 10px;
}

.title_waku img.drone_t{
	width:53%;height:auto;margin:0px;
}
.title_waku img.kazari{
	height:10px;width:auto;margin:0px;
	overflow: hidden;
	object-fit: cover;
}
.drone_movie{width:100%;max-width:500px;margin:40px auto;}
.drone_movie video{width:100%;height: auto;}

/* =========================
	page
========================= */

.header_page {
	max-width: 800px;
	margin: 0 auto;
	background-size:65%;
	background-image: url(../img/base/pge-s.png);
	background-repeat: no-repeat;
	background-position: right -12px;
}

@media screen and (min-width: 700px) {
.header_page {
	max-width: 800px;
	margin: 0 auto;
	background-size:65%;
	background-image: url(../img/base/pge-h.png);
	background-repeat: no-repeat;
	background-position: right top;
}
}
/*------------------ index ------------------*/



.contents-omotenashi {
		background:url(../img/index/img-bg02.png)repeat-x bottom center, url(../img/index/bg_greeting.png);
background-size: auto 300px,100%;
	margin: 0 auto;
	height:500px;
}

.contents-omotenashi p{
	text-shadow:1px 1px 0px #ffffff;
}
.index_lead {
	max-width: 700px;
	margin: 0 auto;
	padding: 0 2% 220px;
	background: url(../img/index/index_lead.png) no-repeat bottom right;
}

.index_movie {
	margin: -25% 0 -5% 5%;
}

.index_lead h2 {
	margin: 8% 0 5%;
	text-align: center;
}

.index_lead p {
	font-size: 15px;
	padding: 0 2%;
}

.index_img {
	max-width: 700px;
	margin: -25% auto 0;
	padding: 0 10%;
}

.index_img img {
	width: 80%;
	max-width: 250px;
}

@media screen and (min-width: 700px) {
	.index_img {
		margin: -150px auto -70px;
	}
}

.index_appeal {
	display: inline-block;
	max-width: 350px;
	margin: 10px 30px 30px;
	vertical-align: top;
}

.index_appeal h4 {
	margin: 0 0 5px;
}

.index_appeal p {
	margin: 5px 0 10px;
	text-align: left;
}


/*------------------ cuisine ------------------*/

.cuisine_title {
	max-width: 840px;
	margin: 0 auto;
	padding: 0 5%;
	background: url(../img/garden/title_back.png) no-repeat top center;
	background-size: auto 100%;
}

.cuisine_title h2 {
	max-width: 700px;
	margin: 0 auto;
	line-height: 0;
}

.cuisine_title h2 img {
	width: 25%;
	max-width: 120px;
}

.cuisine_midashi {
	margin-top: 20px;
	padding: 20px 2%;
	background: url(../img/cuisine/garden_midashi.jpg);
}

.cuisine_midashi h3 {
	max-width: 700px;
	margin: 0 auto;
	line-height: 0;
	text-align: center;
}

.cuisine_text {
	width: 90%;
	max-width: 420px;
	margin: 20px auto -10px;
}

.cuisine_movie {
	max-width: 420px;
	margin: -20% auto 0;
	padding: 0 10%;
	text-align: right;
}

.cuisine_img {
	margin: 30px 0;
	text-align: center;
}

.cuisine_img img {
	width: 45%;
	max-width: 350px;
	margin: 2%;
}

@media screen and (max-width: 560px) {
	.cuisine_img img {
		width: 90%;
		margin: 2% 0;
	}
}


/*------------------ club ------------------*/

.club_title {
	max-width: 840px;
	margin: 0 auto;
	padding: 0 5%;
	background: url(../img/cuisine/title_back.png) no-repeat top center;
	background-size: auto 100%;
}

.club_title h2 {
	max-width: 700px;
	margin: 0 auto;
	line-height: 0;
}

.club_title h2 img {
	width: 25%;
	max-width: 120px;
}

#club table.normal {
	margin: 20px auto 40px;
	border-top: 1px solid #DDD;
	border-left: 1px solid #DDD;
	width: 100%;
	color: #930;
}
#club table.normal tr {
  border-bottom: 1px solid #DDD;
}
#club table.normal th {
	padding: 10px 20px;
  color: #FFF;
  border-right: 1px solid #DDD;
  background-color: #640000;
  text-align: center;
}
#club table.normal td {
  padding: 10px 20px;
  border-right: 1px solid #DDD;
  background-color: #FFF;
  text-align: left;
}
#club table.normal p {
	font-size:18px;
  margin: 5px 0;
}

#club table.normal span {
	font-size:16px;
	font-weight:bold;}

.club_midashi h3 {
	max-width: 700px;
	margin: 0 auto;
	line-height: 0;
	text-align: center;
}

.club_text {
	width: 90%;
	max-width: 500px;
	margin: 20px auto 0;
}

.club_movie {
	max-width: 420px;
	margin: -10% auto 0;
	padding: 0 10%;
	text-align: right;
}

.club_img {
	text-align: center;
}

.club_img img {
	max-width: 280px;
	margin: 30px 2% 0;
}

.club_text2 {
	width: 90%;
	max-width: 400px;
	margin: 20px auto 0;
}

.club_img2 {
	width: 70%;
	max-width: 350px;
	margin: 20px auto 0;
	text-align: center;
}
/*合宿*/
/*周辺施設*/
#shuuhensisetu,#shuuhensisetu *{
	box-sizing: border-box;
}
#shuuhensisetu{
	width:96%;
	max-width:700px;
	margin:50px auto;
}
#shuuhensisetu .title_waku{
	display:flex;
	justify-content: space-between;
	align-items: center;
	width:100%;margin:0px auto 30px;
}
.shuuhen_t{width:40%;height:auto;}
#shuuhensisetu .image_wrap{
	width:100%;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap:20px 2%;
	margin-bottom:30px;
}

#shuuhensisetu .image_wrap > .sisetu_img{
	width:32%;
	max-width:364px;
	height:auto;
	flex-direction: column;
	display: flex;
	justify-content: flex-start;
	align-items: center;	
}
#shuuhensisetu .image_wrap > .sisetu_img div{
	width:100%;
	height:auto;
	margin:0;
}
#shuuhensisetu .image_wrap > .sisetu_img p{
	text-align: center;
	font-size: 15px;
	margin:0;
}
.sisetu_p{
	text-align: center;
	margin-bottom:15px;
}
.sisetu_p:first-of-type{
	text-align: left;
}
.sisetu_tel{
	width:96%;max-width:500px;padding:10px;background: rgba(255,255,255,0.5);border-radius: 7px; text-align: center;font-weight: 600;font-size: 20px;margin:0 auto;box-shadow:1px 0 3px rgba(0,0,0,0.1);
}
@media screen and (max-width:460px){
	#shuuhensisetu .image_wrap > .sisetu_img{
	width:100%;
	max-width:364px;
	height:auto;
	flex-direction: column;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap:3px;
	
}
	.sisetu_p:first-of-type,.sisetu_p:nth-of-type(2){
	text-align: left;
}
}
/*------------------ room ------------------*/

#room h3 {
    padding: 15px;
    font-size: 16px;
    background-color: rgba(100,0,0,0.1);
    border-radius: 8px;
}


#room table.normal {
	margin: 20px auto 40px;
	border-top: 1px solid #DDD;
	border-left: 1px solid #DDD;
	width: 100%;
}
#room table.normal tr {
  border-bottom: 1px solid #DDD;
}
#room table.normal th {
	padding: 10px 20px;
  color: #FFF;
  border-right: 1px solid #DDD;
  background-color: #640000;
  text-align: center;
}
#room table.normal td {
  padding: 10px 20px;
  border-right: 1px solid #DDD;
  background-color: #FFF;
  text-align: left;
}
#room table.normal p {
  margin: 5px 0;
}


.room_title {
	max-width: 840px;
	margin: 0 auto;
	padding: 0 5%;
	background: url(../img/room/title_back.png) no-repeat top center;
	background-size: auto 100%;
}

.room_title h2 {
	max-width: 700px;
	margin: 0 auto;
	line-height: 0;
}

.room_title h2 img {
	width: 25%;
	max-width: 120px;
}

.room_midashi {
	margin-top: 20px;
	padding: 20px 2%;
	background: url(../img/room/room_midashi.jpg);
}

.room_midashi h3 {
	max-width: 700px;
	margin: 0 auto;
	line-height: 0;
	text-align: center;
}

.room_text {
	width: 90%;
	max-width: 400px;
	margin: 20px auto -10px;
}

.room_img {
	text-align: center;
}

.room_img p {
	margin-top: -10px;
}

.room_img p img {
	margin-right: 10px;
	vertical-align: bottom;
}

.room_table {
	margin: 20px 0 0;
}

.room_table th {
	width: 25%;
	background: #a67e0a;
	border: 1px solid #754c01;
	text-align: left;
	font-weight: normal;
	color: #fff;
}

.room_table td {
	background: #fff;
	border: 1px solid #754c01;
	color: #333;
}

.room_l1 {
	margin: 30px 0;
	text-align: center;
}

.room_l1 p {
	margin: 0;
	font-size: 11px;
}

.room_l1 a {
	display: inline-block;
	margin: 10px;
	line-height: 0;
}

@media screen and (max-width: 360px) {
	.room_l1 div a {
		width: 47%;
		margin: 10px 1%
	}
}


/*------------------ boat ------------------*/

.boat_title {
	max-width: 840px;
	margin: 0 auto;
	padding: 0 5%;
	background: url(../img/boat/title_back.png) no-repeat top center;
	background-size: auto 100%;
}

.boat_title h2 {
	max-width: 700px;
	margin: 0 auto;
	line-height: 0;
}

.boat_title h2 img {
	width: 25%;
	max-width: 120px;
}

.boat_midashi {
	margin-top: 20px;
	padding: 20px 2%;
	background: url(../img/boat/boat_midashi.jpg);
}

.boat_midashi h3 {
	max-width: 700px;
	margin: 0 auto;
	line-height: 0;
	text-align: center;
}

.boat_text {
	width: 90%;
	max-width: 490px;
	margin: 20px auto -10px;
}


/*------------------ price ------------------*/

.price_title {
	max-width: 840px;
	margin: 0 auto;
	padding: 0 5%;
	background: url(../img/price/title_back.png) no-repeat top center;
	background-size: auto 100%;
}

.price_title h2 {
	max-width: 700px;
	margin: 0 auto;
	line-height: 0;
}

.price_title h2 img {
	width: 25%;
	max-width: 120px;
}

.price_table h4 {
	margin: 20px 0 2px;
}

.price_table thead th {
	width: 34%;
	background: #a67e0a;
	border: 1px solid #754c01;
	font-weight: normal;
	color: #fff;
}

.price_table thead td {
	width: 33%;
	background: #e5cf7e;
	border: 1px solid #754c01;
	text-align: center;
}

.price_table tbody th {
	width: 34%;
	background: #a67e0a;
	border: 1px solid #754c01;
	font-weight: normal;
	color: #fff;
}

.price_table tbody td {
	width: 33%;
	background: #fff;
	border: 1px solid #754c01;
	text-align: center;
}

.price_table2 {
	margin: 30px 0 -30px;
	padding-bottom: 42%;
	background: url(../img/price/price_table2.png) no-repeat bottom center;
	background-size: auto auto;
}

@media screen and (max-width: 578px) {
	.price_table2 {
		background-size: 100% auto;
	}
}

.price_table2 h4 {
	margin: 20px 0 2px;
}

.price_table2 thead th {
	background: #a67e0a;
	border: 1px solid #754c01;
	font-weight: normal;
	color: #fff;
}

.price_table2 tbody th {
	width: 34%;
	background: #e5cf7e;
	border: 1px solid #754c01;
	font-weight: normal;
}

.price_table2 .td_color {
	background: #e5cf7e;
}

.price_table2 tbody td {
	width: 33%;
	background: #fff;
	border: 1px solid #754c01;
	text-align: center;
}

.price_table2 span {
	display: inline-block;
}

.price_table3 {
	margin: 20px 0 0;
}

.price_table3 th {
	width: 50%;
	background: #a67e0a;
	border: 1px solid #754c01;
	text-align: left;
	font-weight: normal;
	color: #fff;
}

.price_table3 td {
	background: #fff;
	border: 1px solid #754c01;
	color: #333;
}


/*------------------ tourism ------------------*/


.tourism_title h2 {
	max-width: 700px;
	margin: 0 auto;
	line-height: 0;
}


.tourism_title h3 {
    padding: 15px;
    font-size:18px;
    background-color: rgba(100,0,0,0.1);
    border-radius: 8px;
}

.tourism_a{
	text-align:center;
}
.tourism_a img {
	width: 80%;
	max-width: 350px;
	margin-bottom:10px;
}

.tourism_l1 h3 {
	margin: 50px 0 0;
	line-height: 0;
	text-align: center;
}

.tourism_l1 p {
	margin: 10px 0 20px;
	text-align: center;
	font-size: 11px;
}

.tourism {
	max-width: 600px;
	margin: 30px auto 0;
	padding: 5%;
	background: #fff;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-o-border-radius: 10px;
}

.tourism div {
	background: #e5cf7e;
	line-height: 0;
	text-align: center;
}

.tourism h4 {
	margin: 20px 0 10px;
	text-align: center;
	font-size: 16px;
	color: #333;
}

.tourism p {
	margin: 0 auto;
	color: #333;
}


/*------------------ access ------------------*/




.access_t h3 {
    padding: 15px;
    font-size:18px;
    background-color: rgba(100,0,0,0.1);
    border-radius: 8px;
}

table.normal {
	margin: 20px auto 40px;
  border-top: 1px solid #DDD;
  border-left: 1px solid #DDD;
  width: 100%;
      color: #333333;
}
table.normal tr {
  border-bottom: 1px solid #DDD;
}
table.normal th {
	padding: 10px 20px;
  color: #FFF;
  border-right: 1px solid #DDD;
  background-color: #640000;
  text-align: center;
}
table.normal td {
  padding: 10px 20px;
  border-right: 1px solid #DDD;
  background-color: #FFF;
  text-align: left;
}

.access_title h2 {
	max-width: 700px;
	margin: 0 auto;
	line-height: 0;
}

.access_title h2 img {
	width: 25%;
	max-width: 120px;
}

.btn {
  display: block;
  padding: 10px;
  color: #FFF;
  text-align: center;
  border-radius: 8px;
  background: url(../images/arrow01.png) no-repeat left center #294721;
}

a.btn.ui-link {
    color: #fff;
}

.btn:hover {
  color: #FFF;
  background-color: #37662a;
}

.border_none {
	border: none;
}

.access_contact {
	max-width: 700px;
	margin: 30px auto;
	padding: 0 5%;
}

.access_contact h3 {
	margin: 0;
	text-align: center;
}

.access_contact p {
	margin: 20px 0;
	text-align: center;
	font-size: 18px;
}

.access_contact div {
	max-width: 280px;
	margin: 0 auto;
}

.access_contact a {
	display: inline-block;
	padding-bottom: 10px;
	background: url(../img/menu/menu_line.jpg) repeat-x bottom center;
}

.access_contact dl {
	max-width: 460px;
	margin: 0 auto;
	font-size: 16px;
}	


/*------------------ movie ------------------*/

.movie_contents {
	max-width: 700px;
	margin: 0 auto;
	padding: 30px 2% 0;
	text-align: center;
}

.movie_contents p {
	margin: 0;
	color: #303030;
}

.movie_contents h2 {
	margin: 0 0 30px;
	font-weight: normal;
	color: #303030;
}

.movie_contents span {
	display: inline-block;
	margin: 0 10px;
}

.movie {
	padding: 0;
}

.movie_box {
	margin: 10px 0 30px;
}

.movie_link {
	margin: -18% 0 0;
	text-align: center;
}


/* =========================
	dialog
========================= */

.ui-header {
	padding: 10px 0 !important;
}

.ui-dialog {
	background: url(../img/base/body.jpg),
	#fff !important;
}

.ui-dialog-contain {
	width: 96%;
	max-width: 800px;
	margin: 10% auto;
	background: rgba(255,255,255,0.7);
	position: relative;
	top: -1em;
}

.dialog {
	width: 96%;
	max-width: 700px;
	margin: 0 auto;
	padding: 0 2% 20px;
}

.dialog p {
	margin: 0 auto;
	padding: 0 2%;
}

.close {
	max-width: 160px;
	margin: 0 auto;
	fon-size: 15px;
}


/* =========================
	add
========================= */

/*------------------ float ------------------*/

.center {
	text-align: center;
}

.left {
	text-align: left;
}

.right {
	text-align: right;
}

.clear {
	clear: both;
}

.float_clear:after {
	content: "";
	display: block;
	clear: both;
}

.float_left {
	float: left;
}

.float_right {
	float: right;
}

.img_left {
	width: 50%;
	float: left;
	line-height: 0;
	text-align: left;
}

.img_right {
	width: 50%;
	float: right;
	line-height: 0;
	text-align: right;
}


/*------------------ margin ------------------*/

.m0 {
	margin: 0;
}

.mt10 {
	margin-top: 10px;
}

.mt20 {
	margin-top: 20px;
}

.mt30 {
	margin-top: 30px;
}

.mt40 {
	margin-top: 40px;
}

.mt50 {
	margin-top: 50px;
}


/*------------------ line_height ------------------*/

.line_height {
	margin: 0;
	line-height: 0;
	text-align: center;
}