@charset "UTF-8";

/*================================================
 *  CSSリセット
 ================================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;font-weight:normal;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}

/*================================================
 *  一般・共通設定
 ================================================*/


body {
	font-size:14px;
	color:#333;
	font-family:"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	line-height:1.6;
	background:#F2F2F2;
/*    background-image: url("../images/spica_gaikan_pc.jpg");*/
    background-attachment: fixed;         /* 固定 */
   background-position: top center;   /* 縦横中央 */
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
    background-size: cover;
}
body::before {
    position:fixed;
    background-position: top center;
    z-index:-1;
    width:100vw;
    height:100vh;
    background:url("../images/glamping_202602.jpg") no-repeat;
    -webkit-background-size:cover;
    background-size:cover;
    content:"";
}
h1{font-size: 1.5em;
font-weight: bold;}
.inner {
	position:relative;
	width:980px;
	margin:0 auto;
}

header {
	box-sizing:border-box;
	position:relative;
	width:100%;
    background:#fff;

}


nav {
	width:100%;
	background:#fff;
	⁄zoom:1;
}
nav:after {
   content:'';
   display:block;
   clear:both;
}

#contents {
	width:980px;
	margin:10px auto;
	    background-color: rgba(255,255,255,0.8);
}
.container > .section {
    position: relative;
}
.container > .section:nth-of-type(even)::before {
    position: absolute;
    top: -10px;
    left: -50vw;
    right: -50vw;
    bottom: -10px;
    z-index: -1;
    background-color: rgba(255,255,255,0.8);
    content: "";
}



.hoship {text-align: center;
	font-size: 1.2em;
	line-height: 1.5em;
	margin-bottom: 1em;}

.vision {text-align: center;
	font-size: 1.0em;
	line-height: 1.5em;
	margin-bottom: 1em;}
.phone_number{text-align: center;
    font-size: 1.8em;}

a {
	color:#009FA8;
}
a:hover {
	color:#99E4E8;
}

h2{font-size:2em;
	  background: linear-gradient(transparent 50%, #FFFD8A 50%);
}
.glamp_p{font-size: 1.4em;
line-height: 1.8em;}
.glamp_l{font-size: 1.2em;
line-height: 1.6em;}

strong {font-size: 1.2em;
	line-height: 1.8;
	color:#D93932;
	}
	
footer {
	box-sizing:border-box;
	width:100%;
	margin:0 auto;
}

table {
	width:830px;
	margin:1em auto;
	border-collapse:collapse;
	border:1px solid #ddd;
    background:#FFFFFF;
}
th {
	width:30%;
	padding:10px;
	text-align:center;
	vertical-align:middle;
	border:1px solid #fff;
	background:#99E4E8;
}
td {
	padding:10px;
	text-align:left;
	border:1px solid #ddd;
}
img.access_icon{margin-right: 20px;
}
/*
.tel {
	font-size: 1.5em;
	line-height: 1;
}
*/

hr {
	height: 3px;
	border-width: 0;
	background-image: -webkit-linear-gradient(135deg,
	#009FA8 0px,#009FA8 2px, transparent 2px, transparent 4px,
	#009FA8 4px, #009FA8 6px, transparent 6px, transparent);
	background-image:         linear-gradient(-45deg,
	#009FA8 0px,#009FA8 2px, transparent 2px, transparent 4px,
	#009FA8 4px, #009FA8 6px, transparent 6px, transparent);
	background-size: 6px 6px;
}

.tr_hr {
	height: 8px;
	border: 0;
	background: url('../images/hr.png') repeat-x 0 0;
	padding: 0px;
}

#menu p{font-size: 1.2em;
	line-height:1.8em
}

#menu h3{font-size: 1.8em;
	line-height:1.8em;
	color:#D93932;
}

.closed {text-decoration: line-through;}
div.imagebox {
width: 31%;               /* 横幅 */
float: left;                /* 左に配置 */
margin: 1%;  
text-align: center;/* 周囲の余白 */
		}
.imagebox img {
	border-radius:5px;
}
p.title {
	font-weight:bold;
	color:#000;
		   font-size: 1.5em;     /* 文字サイズ */
		}
		p.caption {
			margin-top: 5px;
		   font-size: 1.2em;     /* 文字サイズ */
		}
		p.exp {
			clear: left;     /* 回り込みを解除 */

		}
.hoshi_title{
	padding:1px 10px;
	background-color: #1b1b1b;
	color:#fff;
	font-size: 1.2em;  
	text-align: center;}
div.bkc{background-color: #ADDBD6;
padding: 10px;
border-radius:5px;}
div.bkl{border: 1px solid #000;
padding: 10px;
border-radius:5px;}

 .arrow {
    margin: -60px auto 20px;
    display: block;
    width:70%;}
.venus{font-size: 1.5em;
	line-height:1.3em;}
.announcement{padding:1em 0;
	text-align: center;
    font-size: 1.8em;
	color:#D93932;
    }
.announcement a{color:#D93932;}
.announcement_p {text-align: left;
	font-size: 1.2em;
	line-height: 1.5em;
	margin-bottom: 1em;}
/*================================================
 *  汎用クラス
 ================================================*/
/* 写真中央寄せ */
.imgC {
	clear:both;
	overflow:hidden;
	margin-bottom:20px;
	text-align:center;
}

.imgC img {
	border-radius:5px;
	margin-bottom:0.5em;
}

.coktail_menu {font-size: 1.2em;
	line-height: 1.8;
	font-weight: bold;
border-bottom: medium solid #D93932;}

img.flag {
	margin-right:0.5em;
	vertical-align: bottom;
	border-radius:0px;
}

.food_menu {font-size: 1.2em;
	line-height: 1.5;
	font-weight: bold;}
.food_p {font-size: 1.1em;
	line-height: 1.2;
margin-bottom: 1em;}

/* 写真右寄せ */
.imgR {width: 100%;
margin: 1em auto;}
.imgr {
	margin-left: 1em;
	line-height: 1.6em;
}
/* 写真左寄せ */
.imgleft {
	clear:both;
	overflow:hidden;
	margin-bottom:30px;
}
.imgleft img {
	float:left;
	margin-right:1em;
	border-radius:5px;
}
.float_none {
	clear: both;
}
.anniversary {
	float: right;
	width: 50%;
}
.anniversary_img {
	max-width: 100%;
	border-radius:5px;
}

/* 2カラム（スマートフォンでは1カラム) */
.twoCol {
	overflow:hidden;
	margin-bottom:50px;
}
.twoColInner {
	overflow:hidden;
	margin-right:-2%;
}
.twoColInner div {
	width:48%;
	float:left;
	margin-right:2%;
}
.twoColInner div:nth-child(2n+1) {
	clear:both;
}
.twoColInner img {
	width:100%;
	border-radius:5px;
}


/* 3カラム（スマートフォンでは1カラム) */
.threeCol {
	overflow:hidden;
	margin-bottom:1em;}
.threeColInner {
	overflow:hidden;
	margin-right:-3%;
}
.threeColInner div {
	width:31%;
	float:left;
	margin-right:2%;
}
.threeColInner div:nth-child(3n+1) {
	clear:both;
}

/* ボタン（タイプ1） */
.btn01 a {
	margin:15px 1em 0;
	display:block;
	box-shadow: 0 5px #A92A25;
    position: relative;
	top: -2px;
	padding:2%;
	color:#fff;
	font-size: 1.5em;  
	text-align: center;
	text-decoration:none;
	border-radius:5px;
	background:#D93932;
	transition:all 0.2s ease 0s;
}
.btn01 a:hover {
	font-size: 1.5em;
	box-shadow: 0 2px #A92A25;
    top: 1px;
	text-align: center;
	background:#E7837F;
	transition:all 0.2s ease 0s;
}

p.cource_title {
	font-family: 'Muli';
	color:#D93932;
	font-size: 2.0em;
	line-height: 1.5em;    /* 文字サイズ */
		}
p.cource_caption {
		   font-size: 1.2em;  
		}
.hoshispe {max-width: 100%;}
.hoshispe:hover {
    opacity: 0.7;}

.box {
    padding: 1em;
    margin: 1em 0;
    font-weight: bold;
    background: #FFF;
    border: solid 5px #00c300;/*線*/
}

.box1 {
    padding: 1em;
    margin: 1em 0;
    background: #FFF;
    border: solid 2px #009FA8;/*線*/
}


.under {
  background: linear-gradient(transparent 50%, #FFFD8A 50%);
  font-size:1.2em;
  line-height: 0.8em;
}
.under_p {
  background: linear-gradient(transparent 50%, #FFA8AC 50%);
  font-size:1.2em;
  line-height: 0.8em;
}

.my_blue {
	color:#009FA8;
}
/*================================================
 *  ヘッダー
 ================================================*/
header {
	padding:30px 10px;
}

.summary {
	position:absolute;
	top:0;
	right:10px;
	margin:0;
}

/*================================================
 *  フッター
 ================================================*/
footer {
	clear:both;
}


.copyright {
	clear:both;
	padding:20px 0;
	font-size:11px;
	text-align:center;
	color:#efede9;
	background:#2e2e2e;
}

/*================================================
 *  ページトップへの戻り
 ================================================*/
.totop {
	position:fixed;
	bottom:15px;
	right:15px;
}
.totop a {
	display:block;
	text-decoration:none;
}
.totop img {
	background:#000;
}
.totop img:hover {
	background:#333;
}


/*================================================
 *  タブレット向けデザイン
 ================================================*/
/* スクロールバーを考慮して20px大きいサイズで切り替え */
@media screen and (max-width:979px) {
    body:before{
  content:"";
  display:block;
  position:fixed;
  top:0;
  left:0;
  z-index:-2;
  width:100%;
  height:100vh;
/*  background:url(../images/spica_gaikan_sp_n.jpg) top center no-repeat;*/
  background-size:cover;
  transform:translate3d(0,0,0); 
}
	table {
	width:100%;
}
    .container > .section {
    position: relative;
}
.container > .section:nth-of-type(even)::before {
    position: absolute;
    top: -10px;
    left: -50vw;
    right: -50vw;
    bottom: -10px;
    z-index: -1;
    background-color: rgba(255,255,255,0.8);
    content: "";
     transform:translate3d(0,0,0); 
}

	.inner {
		width:100%;
	}

	#main_v {
		box-sizing:border-box;
		width:100%;
		padding:0 10px;
	}

	#contents {
		box-sizing:border-box;
		width:100%;
		padding:1.5em;
	}
.container > .section:nth-of-type(even)::before {
    left: -1.5em;
    right: -1.5em;
}
	footer {
		width:100%;
	}
	.imgC img {
		max-width:100%;
	}
	
	img.flag {
	display:inline;
	margin-right:0.5em;
	vertical-align:middle;
	border-radius:0px;
}


p.title {
	font-weight:bold;
	color:#000;
		   font-size: 1.5em;     /* 文字サイズ */
		}
		p.caption {
		   font-size: 1em;     /* 文字サイズ */
		}
		p.exp {
			clear: left;       /* 回り込みを解除 */

		}
}
/*================================================
 *  スマートフォン向けデザイン
 ================================================*/
@media screen and (max-width:767px) {
	
	header {
		z-index:2;
		box-sizing:border-box;
		top:0;
		left:0;
		width:100%;
		padding:10px 20px 2px 20px;
	}

	.summary {
		position:relative;
		top:auto;
		right:auto;
		margin-top:0px;
	}
	.glamp_p{font-size: 1.2em;
line-height: 1.4em;}
	.anniversary {
	float: none;
		width:100%;
}
	div.imagebox {  
	width:80%;
		margin: 0 auto 2em;
float: none; 
		}
}
/*================================================
 *  トップページ
 ================================================*/
/* スライドショー */
.concept {position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	margin:auto;
	width:470px;
	height:280px;
	z-index:1;
	border-radius:5px;}
.slide {
	display:none;
	position:relative;
	overflow:hidden;
}

.slidePrev {
	position:absolute;
	cursor:pointer;
	z-index:100;
}

.slideNext {
	position:absolute;
	cursor:pointer;
	z-index:100;
}

.slidePrev img {
	position:absolute;
	width:50px !important;
	height:60px !important;
}

.slideNext img {
	position:absolute;
	width:50px !important;
	height:60px !important;
}

.slideInner {
	position:relative;
	margin:0 0 0 0;
	padding:0;
}
.slideInner li {
	float:left;
	margin:0;
	padding:0;
	list-style:none;
}
.slideInner li img {
	margin:0;
	padding:0;
}

.filterPrev {
	position:absolute;
	left:0;
	opacity:0.5;
	filter:alpha(opacity=50);
	background-color:#fff;
}

.filterNext {
	position:absolute;
	right:0;
	opacity:0.5;
	filter:alpha(opacity=50);
	background-color:#fff;
}

.controlNav {
	position:relative;
	float:left;
	left:50%;
}
.controlNav span {
	position:relative;
	left:-50%;
	float:left;
	margin:5px;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;
	width:10px;
	height:10px;
	overflow:hidden;
	background:#fff;
	text-indent:-9999px;
	vertical-align:middle;
}
.controlNav span:hover {
	background:#fff;
	cursor:pointer;
}
.controlNav span.current {
	background:#fff;
}

/*================================================
 *  予約フォームのボタン
 ================================================*/
.yoyaku {
    font-weight:bold;
    text-decoration:none;
    display:block;
    text-align:center;
    padding:8px 0 10px;
    color:#fff;
    background-color:#D93932;
    border-radius:3px;}
.yoyaku:hover {
	color:#fff;
    background-color:#F5D3C2;}
/*================================================
 *  スマートフォン向けデザイン
 ================================================*/
@media screen and (max-width:767px) {
.imgR {width: 100%;}
.imgC {
		margin-bottom:20px;
	}
	.imgC img {
		margin: 10px auto 10px;
		width:95%;
	}
	/* 写真左寄せ */
.imgL img {
	margin:0 1em 0.5em 0;
}

.imgleft img {
		margin:0 auto;
		float:none;
		max-width:100%;
	}
	.imgleft p {
		text-align: center;
	}
    .table-cell {
alignment-baseline: center;
 align-items: center;
 line-height: 1.5em;
}



	.twoCol {
		margin-right:0;
	}
	.twoColInner {
		margin-right:0;
	}
	.twoColInner div {
		float:none;
		width:100%;
	}
	.threeCol {
		margin-bottom:1em;
	}

	.threeColInner {
		margin-right:0;
	}
/*
	.threeColInner div {
		float:none;
		width:100%;
       
	}
    .threeColInner img {
    margin-top: 0;
	width:30%;  
	margin-bottom:0;
*/
  .under {
  font-size:1.0em;
  line-height: 0.5em;
}
	.concept {
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	margin:auto;
	margin-top: 2%;
	width:220px;
	height:130px;
	z-index:1;
	border-radius:5px;
	}
	.hoshispe {width: 96%;
	}

p.title {
	font-weight:bold;
	color:#000;
		   font-size: 1.2em;     /* 文字サイズ */
		}
		p.caption {
		   font-size: 1em;     /* 文字サイズ */
		}
		p.exp {
			clear: left;      /* 回り込みを解除 */

		}
	.hoshi_title {
		   font-size: 1.0em;     /* 文字サイズ */
		}
    .arrow {
    margin-top: -40px;
    width:80%;}
}
.line_id{
	font-size: 1.2em;
    display: inline-block;
    /*コレ*/width: 9em;
    /*コレ*/max-width: 100%;
    padding: 0.5em;
    border: 1px solid #999;
    box-sizing: border-box;
    background: #f2f2f2;
    margin: 0.5em 0;
}
/*================================================
 *  グローバルナビゲーション
 ================================================*/
#gnav, .nav {
 width: 100%;
 margin: 0 auto;
}
/* clearfix */
.nav_list:after {
 display: block;
 visibility: hidden;
 clear: both;
 height: 0;
 content: ".";
 font-size: 0;
}
.nav{
z-index:2;
 margin:0;
 padding:0;
 background-color:#ffffff;
opacity:0.8;
border-bottom:2px solid #009FA8;
}
 
.nav_list{
 margin:0;
 padding:0;
}
 
.nav_list li {
 float: left;
 width:50%;
 text-align: center;
 list-style-type: none;
}
 
.nav_list li a{
 color:#000000;
 text-decoration:none;
 margin:0;
 padding:0.75em 0;
 font-size: 100%;
 display:block;
}
 
.nav_list li a:hover{
color:#fff;
background-color:#009FA8;
}

.nav_link{
 border-right:1px solid #eeeeee;
}
.l_yoyaku li a {font-weight: bold;
	background:repeating-linear-gradient(-45deg, #A4C8CB ,#A4C8CB 2px, #fff 0,#fff 8px);}
.l_yoyaku li a:hover{
color:#fff;
background:#009FA8;
}
.fixed{
 position:fixed;
 top:0;
 max-width: 980px;
 margin:0 auto;
}
@media screen and (min-width: 1024px) {
  #gnav {
    max-width: 980px;
  }
}

@media screen and (min-width: 650px){	
  .br-pc { display:block; }
  .br-sp { display:none; }
    .pc_h { display: block !important;
    max-width: 100%;    
    margin: 0 auto 1em;}
    .sp_h { display: none !important; }
}
@media screen and (max-width: 650px){	
  .br-pc { display:none; }
  .br-sp { display:block; }
    
    .pc_h { display: none !important; }
    .sp_h { display: block !important; 
        margin: 0 auto 1em;
        width: 90%;
    }
	.venus{font-size: 1.2em;
	line-height:1.2em;}
	table {
	width:100%;
}
}

span.menu_height {
  position: relative;
  top: -80px;
  display: block;
}
.parent{
  width: 100%;
 text-align: center;
}
.sns{
	font-size: 3.0em;
	letter-spacing: 20px;
	display: inline-block;
  vertical-align: middle;
}
.blog{
font-size: 1.1em;
padding: 0.2em 0.4em;
color: #fff;
border: 3px solid #009FA8;
border-radius:5px;
display: inline-block;
vertical-align: middle;
}

.blog a{
text-decoration: none;
}

.cp_tag {
	list-style: none;
	margin: 0;
	overflow: hidden;
	padding: 0;
}
.cp_tag li {
	display: inline-block;
}
.cp_tag a {
	line-height: 26px;
	position: relative;
	display: inline-block;
	height: 26px;
	margin: 0 0px 10px 10px;
	padding: 0 20px 0 23px;
	-webkit-transition: color 0.2s;
	        transition: color 0.2s;
	text-decoration: none;
	color: #ffffff;
	border-radius: 0 3px 3px 0;
	background: #999999;
}
.cp_tag a::before, .cp_tag02 a::after {
	background: #fafcfc;/*背景色*/
}
.cp_tag a::before {
	position: absolute;
	top: 10px;
	left: 3px;
	width: 6px;
	height: 6px;
	content: '';
	border-radius: 10px;
}
.cp_tag a::after {
	position: absolute;
	top: -1px;
	left: -6px;
	width: 0;
	height: 0;
	content: '';
	border-style: solid;
	border-width: 14px 8px 14px 0;
	border-color: transparent #999999 transparent transparent;
	border-radius: 4px;
}
.cp_tag a:hover {
	background: #555555;
}
.cp_tag a:hover:after {
	border-color: transparent #555555 transparent transparent;
}
.title-box{
 position: relative;
    margin: 3em 7em;
    padding: 0.5em 1em 1em;
	background-color: #fAFAFA;
    border-radius: 8px;
}

.tour_point{font-size: 1.1em;
	font-weight: bold;
}
@media screen and (max-width:767px) {
.title-box {
  margin: 2em 0 ;
  padding: 1em;
}
.title-box p{
  margin: 0;
  padding: 0;
}

.iframe-wrap {
  margin: 0;
  padding: 0;
  overflow: hidden;
  height:calc( 100vh - 50px );
-webkit-overflow-scrolling:touch;
}
.iframe-wrap iframe {
  border:none;
  width:100%;
  height:calc( 100% - 50px );
 display:block;
}
