
/* General
   ========================================================================== */

body {
  font-family: Meiryo,'メイリオ','Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif;
  line-height: 1.625;
  font-size: 16px;
  color: #333333;
  background-image: url(../images/bg-body.png);
}

h1, h2, h3, h4, h5, h6 {
  line-height: normal;
  margin: 0 0 15px 0;
  font-family: Meiryo,'メイリオ','Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3','ＭＳ Ｐゴシック',sans-serif;
  font-weight: 700;
  letter-spacing: -0.04em;
  color: #333333;
  font-weight: normal;
}

h1 { font-size: 24px; }

h2 { font-size: 20px; }

h3 { font-size: 18px; }

h4 { font-size: 16px; }

h5 { font-size: 14px; }

h6 { font-size: 12px; }

p { margin: 0 0 10px 0; }

strong { font-size: 180%; }

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
}

a {
  color: #333;
  text-decoration: underline;
}
::selection {
  background: #5a0000;
  color: #FFF;
}
::-moz-selection {
  background: #5a0000;
  color: #FFF;
}
a:hover { 
  color: #5a0000;
  text-decoration: none;
}
a, a:visited {
  outline: none;
}
a:active, a:focus {
  outline: none;
  text-decoration: none;
}
a img {
  opacity: 1;
}
a:hover img {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: 'alpha(opacity=80)';
  -moz-opacity: 0.8;
  -khtml-opacity: 0.8;
}

ul ul li { margin-bottom: 15px; }

hr {
  margin: 30px 0;
  border: none;
  border-top: 1px solid rgba(160,160,160,0.2);
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

.headline {
  font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
}

/* Layout
   ========================================================================== */

.container {
  margin-right: auto;
  margin-left: auto;
  position: relative;
}
.container:before,
.container:after {
  content: ' ';
  display: table;
}
.container:after {
  clear: both;
}
.container {
  width: 1140px;
}

.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
}
.col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left;
}
.col-md-12 {
    width: 100%;
}
.col-md-11 {
    width: 91.6667%;
}
.col-md-10 {
    width: 83.3333%;
}
.col-md-9 {
    width: 75%;
}
.col-md-8 {
    width: 66.6667%;
}
.col-md-7 {
    width: 58.3333%;
}
.col-md-6 {
    width: 50%;
}
.col-md-5 {
    width: 41.6667%;
}
.col-md-4 {
    width: 33.3333%;
}
.col-md-3 {
    width: 25%;
}
.col-md-2 {
    width: 16.6667%;
}
.col-md-1 {
    width: 8.33333%;
}

.clearfix { display: inline-table; }  
* html .clearfix { height: 1%; }  
.clearfix { display: block; height: auto; overflow: hidden; }

.row:before,
.row:after {
  content: ' ';
  display: table;
}
.row:after {
  clear: both;
}
.row { display: block; height: auto; overflow: hidden; }

.aligncenter { display: block; margin: 0 auto; }
.alignright { float: right; margin-left: 15px; margin-bottom: 15px; }
.alignleft { float: left; margin-right: 15px; margin-bottom: 15px; }

.taligncenter { text-align: center !important; }
.talignright { text-align: right !important; }
.talignleft { text-align: left !important; }

.mt20 { margin-top: 20px; }
.mb20 { margin-bottom: 20px; }
.ml20 { margin-left: 20px; }
.mr20 { margin-right: 20px; }

.mt50 { margin-top: 50px; }
.mb50 { margin-bottom: 50px; }
.ml50 { margin-left: 50px; }
.mr50 { margin-right: 50px; }

.pt20 { padding-top: 20px; }
.pb20 { padding-bottom: 20px; }
.pl20 { padding-left: 20px; }
.pr20 { padding-right: 20px; }

.pt31 { padding-top: 31px; }
.pb31 { padding-bottom: 31px; }
.pl31 { padding-left: 31px; }
.pr31 { padding-right: 31px; }

/* Font & Color
   ========================================================================== */
   
.red    { color: red !important; }
.maroon { color: maroon !important; }

.small { font-size: 80%; }

/* Button
   ========================================================================== */

.btn {
  display: block;
  padding: 10px;
  color: #FFF;
  text-align: center;
  border-radius: 8px;
  background: url(../images/arrow01.png) no-repeat left center #294721;
}
.btn:hover {
  color: #FFF;
  background-color: #37662a;
}

/* Navigation
   ========================================================================== */

.navigation {
  margin: 0;
  padding: 0;
  list-style: none;
}
#global-nav {
  clear: both;
  margin: 0;
  background: url(../images/bg-global-nav.png) repeat-x center top;
  border-bottom: 5px solid #380909;
}
#global-nav li {
  display: inline-block;
  margin: 0;
  padding: 0 34px;
  height: 80px;
  text-align: center;
}
#global-nav li a {
  display: block;
  height: 80px;
  line-height: 80px;
}

#footer-nav {
  margin-top: 0;/*  margin-top: 100px;*/
  margin-left: 30px;
}
#footer-nav li {
  margin-bottom: 10px;
}
#footer .qr,a{  padding-bottom:10px; 
	font-size: 12px;
	text-align: center;
	color:#FFF;
 	text-decoration: none;
}
#footer a:hover { 
  color: #FFF;
  text-decoration: none;
}
/* Header
   ========================================================================== */

.home #header {
  margin: 0 auto;
  overflow: hidden;
  width: 1294px;
  height: 686px;
  z-index: 0;
}
.home #header .logo {
  position: absolute;
  margin-left: -500px;
  left: 50%;
  top: 126px;
  z-index: 100;
}

.dine #header .logo {
  margin-top: 15px;
  margin-bottom: 15px;
}
.dine #header .tel {
  text-align: right;
}

.tel_fix {
    position: fixed;
    right: 0;
    bottom: 100px;
    z-index: 999;
}


/* Video
   ========================================================================== */

#video {
  position: absolute;
  width: 1294px;
  text-align: center;
  z-index: 50;
}
#video .mask {
  position: absolute;
  z-index: 70;
}
#video .movie {
	display: block;
	margin: 0;
	padding: 0;
    padding-top: 0px;
    padding-left: 0px;
	position: relative;
	width: 640px;
	height: 640px;
	padding-left: 445px;
	padding-top: 40px;
	overflow:hidden;
}
#video .movie  video {
  width: auto;
  height: 686px;
  animation: fadeIn 5s ease 0s 1 normal;
  -webkit-animation: fadeIn 5s ease 0s 1 normal;
}
#video .video-js {
	display:  block;
	margin: 0 auto !important;
}
#drone,#drone *{box-sizing: border-box;}
#drone{width:100%;max-width:1140px;margin:80px auto 0;}
#drone .title_waku{
	display:flex;
	justify-content: center;
	align-items: center;
	gap:2%;
	width:100%;margin:0px auto 10px;
}

#drone .title_waku img.drone_t{
	width:55%;max-width:500px;height:auto;margin:0px;
}
#drone .title_waku img.kazari{
	width:20%;max-width:300px;height:auto;margin:0px;
}
.drone_movie{width:100%;max-width:1140px;margin:40px auto;}
.drone_movie video{width:100%;height: auto;}
/* Home
   ========================================================================== */

/* local */

.home .local {
  padding: 30px 0;
}
.home .local .photo {
  margin-bottom: 30px;
}
.home .local h2 {
  font-size: 30px;
}
.home .local .photo-area {
  margin: 170px auto 0;
  width: 480px;
}
.home .local .photo-area .main {
  margin-bottom: 12px;
}
.home .local .photo-area .sub img {
  width: 150px;
}

/* club */

.home .club {
  padding: 30px 0;
}
.home .club .photo {
  margin-bottom: 30px;
}
.home .club h2 {
  font-size: 30px;
  text-align: center;
}
.home .club .photo-area {
  margin: 50px auto 0;
  width: 480px;
}
.home .club .photo-area .main {
  margin-bottom: 12px;
}
.home .club .photo-area .sub img {
  width: 150px;
}

/* omotenashi */

.home .omotenashi {
  padding-top: 30px;
  height: 840px;
  background: url(../images/bg-omotenashi.png) no-repeat center bottom rgba(255,222,160,0.2);
}
.home .omotenashi h2 {
  z-index: 100;
}
.home .omotenashi p {
  font-size: 15px;
  z-index: 100;
}
.home .omotenashi .photo {
  position: absolute;
  margin-left: -234px;
  top: 110px;
  left: 50%;
  width: 710px;
  height: 700px;
}

/* plan */

.home .plan {
  padding: 30px 0;
}
.home .plan h2 {
  margin: 30px;
}
.home .plan .post {
  padding: 0 50px 10px;
}
.home .plan .post h3 {
  margin: 10px 0;
  background-color: transparent !important;
  font-size: 20px !important;
  font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
}
.home .plan .post p {
  font-size: 14px;
}
.home .plan .post .more {
  margin-top: 10px;
  padding: 10px 0;
  text-align: center;
  border-top: 1px solid #333;
  font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
  font-weight: bold;
}
.home .plan .post .more a {
  padding-left: 20px;
  text-decoration: none;
  background: url(../images/arrow02.png) no-repeat left center;
}

/* Contents
   ========================================================================== */

#contents .page-header {
  padding: 30px 0;
}
#contents .page-content {
  padding-bottom: 100px; 
}
#contents h3 {
  padding: 15px;
  font-size: 24px;
  background-color: rgba(100,0,0,0.1);
  border-radius: 8px;
}

#contents .banner {
  padding: 100px 0;
  text-align: center;
  background-color: rgba(160,160,160,0.1);
}

/* Page
   ========================================================================== */

.local-brand {
  position: relative;
  text-align: center;
}

.menu {
  margin: 30px 0;
  padding: 0 10px;
}
.menu h3 {
  margin: 10px 0;
  text-align: center;
  font-size: 20px !important;
  background-color: transparent !important;
  font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
}
.menu p,
.menu ul {
  font-size: 12px;
}

.gallery a {
  display: block;
  margin: 10px 0;
}


/*合宿*/
/*周辺施設*/
#shuuhensisetu,#shuuhensisetu *{
	box-sizing: border-box;
}
#shuuhensisetu{
	width:100%;
	max-width:1140px;
	margin:50px auto;
}
#shuuhensisetu .title_waku{
	display:flex;
	justify-content: space-between;
	align-items: center;
	width:100%;margin:0px auto 60px;
}
.shuuhen_t{width:auto;height:45px;}
#shuuhensisetu .image_wrap{
	width:100%;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap:20px 2%;
	margin-bottom:30px;
}
/*#shuuhensisetu .image_wrap:after{
	content:"";
	width:32%;
	height:0;
	display: block;
}*/
#shuuhensisetu .image_wrap > .sisetu_img{
	width:32%;
	max-width:364px;
	height:auto;
	flex-direction: column;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap:3px;
	
}
#shuuhensisetu .image_wrap > .sisetu_img div{
	width:100%;
	height:auto;
	margin:0;
}
#shuuhensisetu .image_wrap > .sisetu_img p{
	text-align: center;
	font-size: 15px;
}
.sisetu_p{
	text-align: center;
}
.sisetu_tel{
	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);
}
/* Footer
   ========================================================================== */

#footer {
  padding-top: 50px;
  padding-bottom: 20px;
  color: #FFF;
  background: url(../images/bg-footer.png) #640000;
  border-top: 5px solid #380909;
}
#footer .headline {
  margin-top: 20px;
  text-align: center;
  font-size: 20px;
}
#footer .tel {
  margin-bottom: 15px;
  padding: 15px;
  border-top: 1px solid #a36666;
  border-bottom: 1px solid #a36666;
}
#footer .address {
  margin: 5px 0;
  font-size: 14px;
  text-align: center;
}
#footer .contact {
  margin: 5px 0;
  font-size: 14px;
  text-align: center;
}
#footer .google-map {
  text-align: center;
}
#footer .google-map iframe {
  display: inline-block;
}
#footer .copyright {
  margin-top: 30px;
  color: #FFF;
  font-size: 11px;
  text-align: center;
}

/* -------------------------------------------------------------------------- */

/* Table
   ========================================================================== */

table.normal {
	margin: 20px auto 40px;
  border-top: 1px solid #DDD;
  border-left: 1px solid #DDD;
  width: 100%;
}
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;
}
table.normal p {
  margin: 5px 0;
}

/* Searchbox
   ========================================================================== */

.search {
  margin-top: 50px;
  padding: 50px 0 50px 100px;
  background-color: rgba(255,174,174,0.2);
}
.search h2 {
  margin-top: 30px;
}
.search .decoration {
  position: absolute;
  z-index: 100;
  right: 0;
  top: -100px;
}

#searchbox table {
  width: 710px;
}
#searchbox table td {
  padding: 10px 0;
  font-size: 12px;
  color: #000;
}

input, select, input[type="checkbox"] {
  background: #ffd7e7 none repeat scroll 0 0;
  border: medium none;
  margin: 0 10px;
  padding: 5px;
  color: #000;
}
input[type="image"] {
  background: rgba(0, 0, 0, 0) none repeat scroll 0 0;
  border: medium none;
  padding: 0;
  margin: 0;
}
label {
  cursor: pointer;
  display: inline-block;
  font-size: 24px;
  line-height: 24px;
  padding-left: 38px;
  position: relative;
}
label::before {
  background-color: #ffd7e7;
  content: "";
  display: inline-block;
  height: 24px;
  left: 0;
  position: absolute;
  width: 24px;
}
input[type="checkbox"] {
  display: none;
}
input[type="checkbox"]:checked + label::before {
  background-color: #7d3c56;
  color: #fff;
  content: "✓";
  font-size: 24px;
}
section input, section select, section input[type="checkbox"] {
  background: #fff none repeat scroll 0 0;
  border: medium none;
  margin: 0 10px;
  padding: 5px;
}
section label {
  font-size: 14px;
}
section label::before {
  background-color: #fff;
}
section input[type="submit"] {
  background: #7d3c56 none repeat scroll 0 0;
  border-bottom: 2px solid rgb(71, 19, 40);
  border-right: 2px solid rgb(71, 19, 40);
  color: #fff;
  font-size: 18px;
  letter-spacing: 2px;
  padding: 5px 30px;
}
.input {
  float: left;
  padding-top: 20px;
  width: 740px;
}
.submit {
  float: left;
  padding-top: 46px;
  text-align: right;
  width: 250px;
}

.stay_bn {
	display:block;
	margin: 20px auto 20px; text-align: center;
}
