
*{
	padding:0px;
	margin:0px;
	font-size:1.0rem;
	font-family:'Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3','メイリオ','Meiryo','ＭＳ Ｐゴシック',sans-serif;
	line-height: 200%;
	color:#603935;
}
img{
	max-width:100%;
}
/*---------------------固定したついでにナビが透過、高さが変化する---------------------*/
/* ヘッダーメニュー部分*/

header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
	width: 100%;
	height: auto;
	transition: 1.0s;
}
.topheader {
	padding:0px;
	margin:0px;
	width: 100%;
	opacity: 1;
}
header .gmenu {
	color: #000;
	width: 960px;
	text-decoration: none;
	margin-left:auto;
	margin-right:auto;
	height:auto;
}
.icon_space{
	width:25%;
	float:left;
	/*border:1px solid #000;*/
	display: block;
	margin-top: 0px;
	margin-left: 10px;
	margin-bottom:10px;

}

.icon{
	width:100%;
	/*margin:10px 10px;*/
	padding:0px;
	display: block;

}
.menu_space{
	/*border:1px solid #000;*/
	float:right;
	width:70%;/*75%*/
	/*display: block;*/
	margin-left: auto;
	margin-right: auto;
	margin-top: 10px;
	margin-bottom:5px;
	padding:10px 0px;
}




.gmenu ul{
	width:880px;
	top: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;

}
.gmenu ul li{
	opacity: 1;
	width: 14%;/*100% ÷ 項目数*/
	float: left;
	text-align: center;
	border: 0px solid #777;
	padding:0px 0px;
	text-decoration: none;
	display: block;
}


.gmenu ul li a{
	opacity: 1.0;
	text-decoration: none;
	color: #603935;
	font-weight:600;
	text-shadow: 0px 0px 7px #fff;
	width:100%;
	font-size:0.9rem;
	/*line-height:80%;*/
	line-height:130%;
}




/* メニュー部分のアニメーション*/

.is-animation header {
	background-color:#fff;
}

.is-animation .topheader {
	background-color:rgb(255, 255, 255);
	opacity: 0.9;
	box-shadow: 0px 9px 3px -3px rgba(0,0,0,.1);
	-webkit-box-shadow: 0px 9px 3px -3px rgba(0,0,0,.1);
	-moz-box-shadow: 0px 9px 3px -3px rgba(0,0,0,.1);

}

.is-animation .gmenu {
	width:960px;
	display: block;
	margin-left: auto;
	margin-right: auto;
	height:55px;
	
}

.is-animation .icon{
	/*width:60%;*/width:70%;
	float:left;
	margin-left:5%;
	margin-top: 0px;
	/*padding-top: 5px;*/padding-top: 0px;
}
@media only screen and ( max-width:800px ){
	.is-animation .icon{
		/*width:60%;*/width:70%;
		float:left;
		/*margin-left:5%;*/margin-left:0%;
		margin-top: 0px;
		/*padding-top: 12px;*/padding-top: 0px;
	}
}

.is-animation .gmenu ul li a{
	opacity: 1.0;
	text-decoration: none;
	color: #603935;
	text-shadow: 2px 2px 20px #fff;
	width:100%;
	font-weight:600;
}


/*通常のCSS部分*/

#content {
font-size:18px;
color:#333333;
background-color:#fff;
font-family:Noto Sans JP;
}

main {
	/*max-width: 960px;*/
	max-width: 960px;
	height: auto !important;
	margin: 0 auto;
	/*background: #fff;*/
	padding:0px 0px;
	/*box-shadow: 0 0 30px rgba(0,0,0,.1);*/

}
/*---------------------固定予約(会員ページ専用)---------------------*/
#kotei_bottom {
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 10;
	width: 100%;
	height: auto;
	/*box-shadow: 5px 10px 10px 10px rgba(83, 83, 83, 0.4);*/
	background-color: rgba(255,255,255, 0.9);
	padding:0%;
	text-align:center;
}

/*---------------------フッター設定---------------------*/
#footer {
    height: auto;
	background: #07B53B;
	width:100%;
	bottom:0px;
	text-align:center;
	color:#fff;
  }
.footer_space {
	/*max-width: 960px;*/
	max-width: 900px;
	height: auto !important;
	margin: 0 auto;
	padding:10px;
	text-align:left;
	line-height:300%;
	font-size:0.9rem;
}
.footer_retsu{
	margin-left:10%;
	width:38%;
	float:left;
}

.footer_retsu,.footer_retsu a{
	color:#fff;
	text-decoration:none;
	font-size:0.9rem;
	line-height:200%;
}


.pc { display:block; }
.sp { display:none; }

/* スマホやタブレット用だけに適用するCSS */
@media only screen and ( max-width:767px ){

	*{
		padding:0px;
		margin:0px;
		font-size:1rem;
		line-height:180%;
	}
	.pc { display:none; }
	.sp { display:block; }

	.brforpc { display:none; }

	/*ハンバーガーメニュー部分*/
	.menu_space li{
		clear:both;
	}
	.global-nav {
		position: fixed;
		right: -320px; /* これで隠れる */
		top: 0;
		width: 300px; /* スマホに収まるくらい */
		height: 100vh;
		padding-top: 40px;
		background-color: #fff;
		opacity: 1.0;
		transition: all .6s;
		z-index: 200;
		overflow-y: auto; /* メニューが多くなったらスクロールできるように */
	  }
	  .hamburger {
		position: absolute;
		right: 0;
		top: 0;
		width: 60px; /* クリックしやすいようにちゃんと幅を指定する */
		height: 60px; /* クリックしやすいようにちゃんと高さを指定する */
		cursor: pointer;
		z-index: 300;
	  }
	  .global-nav__list {
		margin: 0;
		padding: 0;
		list-style: none;
		opacity: 1.0;
	  }
	  .gmenu ul li{
		width: 300px;
		padding:auto;
		border-bottom:1px solid #ddd;
		text-align: center;
		padding:15px 0 8px;
	  }

	  .global-nav__item a {
		display: block;
		border-bottom: 1px solid #eee;
		text-decoration: none;
		color: #111;
	  }
	  .global-nav__item a:hover {
		background-color: #eee;
	  }
	  .hamburger__line {
		position: absolute;
		left: 5px;/*11px;*/
		width: 30px;/*18px;*/
		height: 2px;
		background-color: #111;
		transition: all .6s;
	  }
	  .hamburger__line--1 {
		top: 18px;/*14px;*/
	  }
	  .hamburger__line--2 {
		top: 28px;/*20px;*/
	  }
	  .hamburger__line--3 {
		top: 38px;/*26px;*/
	  }
	  .black-bg {
		position: fixed;
		left: 0;
		top: 0;
		width: 100vw;
		height: 100vh;
		z-index: 100;
		background-color: #000;
		opacity: 0;
		visibility: hidden;
		transition: all 0s;
		cursor: pointer;
	  }
	  /* 表示された時用のCSS */
	  .nav-open .global-nav {
		right: 0;
	  }
	  .nav-open .black-bg {
		opacity: .8;
		visibility: visible;
	  }
	  .nav-open .hamburger__line--1 {
		transform: rotate(45deg);
		top: 20px;
	  }
	  .nav-open .hamburger__line--2 {
		width: 0;
		left: 50%;
	  }
	  .nav-open .hamburger__line--3 {
		transform: rotate(-45deg);
		top: 20px;
	  }

	  #index_top .text{
		position: absolute;
		bottom:2%;
		left:5%;
		width:70%;
		/*border:1px solid #f00;*/
		font-weight:800;
		font-size:3rem;
		color:#fff;
		text-shadow: 2px 3px 6px #000;
		line-height:130%;
		padding:10px;
	}

	main {

		margin:  0px ;
		padding: 30px 0 20px 0;

	}

	/*indexページ*/
	main img{
		width:100%;
		max-width:550px;
		text-align:center;
	}


	.footer_retsu{
		margin-left:0%;
		width:100%;
		float:left;
		font-size:1rem;
		text-align:center;
	}

	.footer_retsu,.footer_retsu a{
		color:#fff;
		text-decoration:none;
		font-size:0.9rem;
		line-height:240%;
	}

	@media only screen and ( max-width:600px ){

		#index_top .text{
			position: absolute;
			bottom:0%;
			left:5%;
			width:95%;
			/*border:1px solid #f00;*/
			font-weight:800;
			font-size:2.5rem;
			color:#fff;
			text-shadow: 2px 3px 6px #000;
			line-height:110%;
			padding:10px;
		}

	}


	
}


/*ボタン用*/
.btn,
a.btn,
button.btn {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
  width:75%;
  max-width:800px;
}

/*その他と主な共通部分は省略*/
a.btn--green {
  color: #fff;
  background-color: #07B53B;
}

a.btn--green:hover {
  color: #fff;
  background: #07B53B;
}

a.btn--green.btn--cubic {
  border-bottom: 5px solid #00662d;
}

a.btn--green.btn--cubic:hover {
  margin-top: 3px;
  border-bottom: 2px solid #00662d;
}


a.btn--a-pattern {
color: #fff;
background-color: #EF8D2E;
}

a.btn--a-pattern:hover {
color: #fff;
background: #EF8D2E;
}

a.btn--a-pattern.btn--cubic {
border-bottom: 5px solid #603935;
}


a.btn--a-pattern.btn--cubic:hover {
margin-top: 3px;
border-bottom: 2px solid #603935;
}



a.btn-c {
  font-size: 1.4rem;
  position: relative;
  padding: 0.8rem 2rem 0.6rem 2rem;
}

a.btn-c i.fa {
  margin-right: 1rem;
}

/* 光らせるためのstyle */
.shine{
	border: 2px solid transparent;
	position: relative;
	overflow: hidden;
}
/* 光の疑似要素 */
.shine::after{
	content: "";
	animation-name: shine;
	animation-delay: 10s;
	animation-duration:8s;/*アニメーション変化時間*/
	animation-iteration-count: 2;
	animation-timing-function:ease;
	background-color: #fff;
	width: 140%;
	height: 100%;
	transform: skewX(-45deg);
	top: 0;
	left: -160%;
	opacity: 0.5;
	position: absolute;
	background-image: linear-gradient(100deg,  rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 1) 100%, rgba(255, 255, 255, 0) 0%);
}
/* 光の動き */
@keyframes shine{
0% {
	left: -160%;
	opacity: 0;
}
70% {
	left: -160%;
	opacity: 0.5;
}
71% {
	left: -160%;
	opacity: 1;
}
100% {
	left: -20%;
	opacity: 0;
}
}

/*detail使用のアコーディオン部分*/
details {
	border: 1px solid #ccc;
}
details:not(:last-child) {
	margin-bottom: 20px;
}

/**
* list-style: none; ←デフォルト三角削除（Chrome非対応）
* cursor: pointer; ←カーソルをポインターに
**/
details summary {
	list-style: none;
	cursor: pointer;
	padding: 10px 10px;
	/*background:#ff8c00;*/
	background:#ff6347;
	color: #fff;
	font-size:105%;
	font-weight:800;
	text-align:left;
}
/**
* Chrome用のデフォルト三角削除
**/
details summary::-webkit-details-marker {
	display: none;
}
/**
* Font Awesomeのプラスアイコン使用
**/
details summary::before {
	font-family: FontAwesome;
	content: '\f067';
	margin-right: 20px;
}
/**
* アコーディオンがオープン時はマイナスアイコンに変更
**/
details[open] summary::before {
	content: '\f068';
}

details p {
	margin: 0;
	padding: 20px;
	text-align:left;
	color: #242323;
	background:#fff;
	/*background:#fdf5e6;*/
	/*background:#f5deb3;*/
}


/*画像をキラリ*/
.kiran-img {
	position :relative;
	overflow :hidden;
}
.kiran {
	height:100%;
	width:50px;
	position:absolute;
	top:-180px;
	left:0;
	background-color: #fff;
	opacity:0;
	transform: rotate(45deg);
	animation: reflection ease-in-out infinite;
	animation-duration:4s;/*アニメーション動作時間*/
}
@keyframes reflection {
0% { transform: scale(0) rotate(45deg); opacity: 0; }
85% { transform: scale(0) rotate(45deg); opacity: 0.1; }
86% { transform: scale(4) rotate(45deg); opacity: 0.4; }
100% { transform: scale(50) rotate(45deg); opacity: 0; }
}
