@charset "UTF-8";
/* CSS Document */
html{
	font-size: 62.5%;/*16px*62.5%=10px*/
	width: 100%;
}
body{
	color: #070707;
	font-size: 1.5rem;
	font-family: 'Noto Sans JP', sans-serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing:grayscale;
	font-feature-settings: "palt";
	letter-spacing: 0.025em;
	line-height: 1.8;
}
a{
	color: #070707;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	tap-highlight-color: rgba(0, 0, 0, 0);
}
button{
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	tap-highlight-color: rgba(0, 0, 0, 0);
}
span{
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	tap-highlight-color: rgba(0, 0, 0, 0);
}
.hamburger{
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	tap-highlight-color: rgba(0, 0, 0, 0);
}
img{
	max-width: 100%;
	height: auto;
}
section{
	box-sizing: border-box;
}
.wrapper{
	overflow-x: hidden;
}
/*--------------------------------------------
【フォント】

・Noto Sans JP
font-family: 'Noto Sans JP', sans-serif;
Light　300
Regular 400
Medium 500
Bold 700

・Noto Serif
font-family: 'Noto Serif', serif;
Regular 400
Bold 700

・Noto Serif JP
font-family: 'Noto Serif JP', serif;
Regular 400
Medium 500
Semi-bold 600
Bold 700
--------------------------------------------*/
/*--------------------------------------------
・画像の上のコンテンツ 中央揃え
	position: absolute;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	margin:0;
	padding:0;
--------------------------------------------*/
/*--------------------------------------------
・Y軸方向中央
	position: absolute;
	top:50%;
	transform: translateY(-50%);

・X軸方向中央
	position: absolute;
	left:50%;
	transform: translateX(-50%);
--------------------------------------------*/
/*-------------------------------------------
*utility
--------------------------------------------*/
.text-center{
	text-align: center;
}
.pc-img{
    display: block;
}
.sp-img{
    display: none;
}
.br-pc{
	display:inline-block;
}
.br-tb{
	display: none;
}
.br-sp{
	display: none;
}
/*----------
*header
-----------*/
/*header全体*/
header{
	box-sizing: border-box;
	width: 100%;
	background-color: rgba(232, 230, 228, .9);
	position: fixed;
	z-index: 80;
	top: 0;
}
nav {
   margin:0 auto;
}
.pc-nav{
	display: block;
}
.sp-nav{
	display: none;
}
/*スマホ用ロゴ*/
.sp-logo{
	display: none;
}
/*横並び*/
.pc-nav ul{
	display: flex;
	justify-content: center;
	align-items:center;
	margin: 0 auto;
}
.pc-nav li{
	margin-left: 30px;
	transition: all .5s;
}
.pc-nav li:hover{
	opacity: 0.5;
}
.pc-nav li:nth-of-type(5):hover{
	opacity: 1;
}
.pc-nav li:first-of-type{
	margin-left: 30px;
}
.pc-nav li a{
	box-sizing: border-box;
	padding: 30px 0;
}
.pc-nav li:nth-of-type(8) a{
	display: inline-block;
	box-sizing:border-box;
	width: 152px;
	background-color: #182E1D;
	color: #FFFFFF;
	padding: 7px 30px;
}
/*ロゴ*/
.pc-nav h1{
	width: 100px;
}
/*header英語*/
.pc-nav_en{
	font-family: 'Noto Serif', serif;
	font-size: 1.6rem;
	letter-spacing: 0.2em;
	font-weight: bold;
	text-transform: uppercase;
}
/*header日本語*/
.pc-nav_jp{
	display: block;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 0.025em;
}
/*----------
*FV
-----------*/
.hero{
	position: relative;
	width: 100%;
	height: 100vh;
	background-image: url("../images/pc/fv/fv_bg01.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.fv_subtitle{
	color: #ffffff;
	font-family: 'Noto Serif JP', serif;
	font-size: 1.8rem;
	letter-spacing: 0.15em;
}
.hero_content{
	position: absolute;
  	top: 50%;
  	left: 50%;
  	-webkit-transform: translate(-50%, -50%); /* Safari用 */
  	transform: translate(-50%, -50%);
}
/*スクロールダウン*/
.scroll_text{
	position: absolute;
	bottom: 10px;
	left: 50%;
	z-index: 2;
	display: inline-block;
	color: #FFFFFF;
	font-family: 'Noto Serif', serif;
	font-size: 1.8rem;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	text-decoration: none;
	padding-top: 70px;
}
.scroll_text span{
	position: absolute;
	top: 0;
	left: 50%;
	width: 24px;
	height: 24px;
	margin-left: -12px;
	border-left: 1px solid rgba(255,255,255,0.50);
	border-bottom: 1px solid rgba(255,255,255,0.50);
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	-webkit-animation: sdb 2.5s infinite;
	animation: sdb 2.5s infinite;
	box-sizing: border-box;
	-webkit-transform: translate( -50% , 0);
	transform: translate( -50% , 0 );
}
@-webkit-keyframes sdb {
  0% {
    -webkit-transform: rotate(-45deg) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    -webkit-transform: rotate(-45deg) translate(-20px, 20px);
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    transform: rotate(-45deg) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: rotate(-45deg) translate(-20px, 20px);
    opacity: 0;
  }
}
/*----------
*about
-----------*/
.about{
	padding-top: 100px;
	padding-bottom: 120px;
	background-color: #E8E6E4;
}
.about_flex{
	display: flex;
	justify-content: center;
	flex-direction: row-reverse;
}
.about_img{
	width: 462px;
}
.about_content{
padding-left: 100px;
}
/*サブタイトル*/
.subtitle{
	position: relative;
	color: #182E1D;
	text-transform: uppercase;
	font-family: 'Noto Serif', serif;
	font-size: 3.5rem;
	font-weight: bold;
	letter-spacing: 0.2em;
}
/*サブタイトル日本語*/
.subtitle_jp{
	position: absolute;
	top:50%;
	transform: translateY(-50%);
	font-family: 'Noto Sans JP', sans-serif;
	color: #070707;
	font-weight: 400;
	font-size: 1.2rem;
	letter-spacing: 0.025em;
	margin-left: 7px;
}
/*サブタイトルの線*/
.subtitle_jp::after{
	content: "";
	display: inline-block;
	width: 165px;
	height: 0.5px;
	border-bottom: 1px solid rgba(24,46,29,0.50);
	position: absolute;
	top:50%;
	transform: translateY(-50%);
	margin-left: 17px;
}
/*本文小見出し*/
.serif{
	font-family: 'Noto Serif JP', serif;
	font-size: 2.5rem;
	letter-spacing: 0.15em;
	margin-top: 28px;
}
/*本文*/
.about-text01{
	margin-top: 25px;
}
.about-text02{
	margin-top: 28px;
}
/*----------
*staff
-----------*/
.staff{
	padding: 120px 0;
	background-color: #405244;
}
.staff .subtitle{
	color: #FFFFFF;
}
.staff .subtitle_jp{
	color: #FFFFFF;
}
.staff_flex{
	display: flex;
	justify-content: center;
}
/*線*/
.staff .subtitle_jp::after{
	border-bottom: 1px solid rgba(255,255,255,0.50);
	width: 155px;
}
.staff_content p{
	color: #FFFFFF;
}
.staff_content{
	padding-right: 78px;
}
.staff_name{
	margin-top: 28px;
	font-family: 'Noto Serif', serif;
	font-weight: 600;
	font-size: 2.5rem;
	letter-spacing: 0.1em;
}
.staff_name span{
	font-family: 'Noto Serif JP', serif;
	font-size: 1.5rem;
	font-style: italic;
	text-transform: uppercase;
	letter-spacing: 0.15em;
	margin-left: 9px;
}
.staff_text{
	margin-top: 25px;
}
.staff_img{
	width: 279px;
}
/*----------
*menu
-----------*/
.menu{
	padding: 120px 0;
	background-color: #E8E6E4;
}
.menu_flex{
	display: flex;
	justify-content: center;
}
.menu_text{
	margin-top: 28px;
	padding-right: 84px;
}
.menu .subtitle_jp::after{
	width: 196px;
}
/*料金表*/
.menu_price{
	width: 430px;
	box-sizing: border-box;
	background-color: #FFFFFF;
	padding: 30px;
}
.menu_price  dl{
	display: flex;
	justify-content: space-between;
	align-items:baseline;
	margin-bottom: 5px;
}
.menu_price  dl:last-of-type{
	margin-bottom: 25px;
}
.menu_price dt{
	display: flex;
	align-items:baseline;
}
/*メニュー*/
.menu_price dt>span:nth-of-type(1){
	display: inline-block;
	font-family: 'Noto Serif', serif;
	font-weight: bold;
	font-size: 2rem;
	letter-spacing: 0.2em;
	text-transform: uppercase;
}
/*金額*/
.menu_price dt span:nth-of-type(2){
	display: inline-block;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1rem;
	letter-spacing: 0.025em;
	padding-left: 10px;
}
.menu_price dd{
	font-family: 'Noto Serif', serif;
}
/*btnアニメーション*/
.button{
	position: relative;
	z-index: 0;
	box-sizing: border-box;
	display: inline-block;
	width: 285px;
	padding: 17px 50px;
	color: #FFFFFF;
	font-family: 'Noto Serif', serif;
	font-weight: bold;
	font-size: 1.8rem;
	background-color: #182E1D;
	text-transform: uppercase;
	letter-spacing: 0.18em;
	text-align: center;
	text-decoration: none;
	transition: .8s;
}
.button::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  content:"";
  background-color:#405244;
  transform-origin: right top;
  transform: scale(0, 1);
  transition: transform .8s;
}
.button:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}
/*矢印アイコン*/
.button span{
	content: "";
	background-image: url("../images/pc/icon/chevron-right.svg");
	background-repeat: no-repeat;
	width: 9px;
	height: 16px;
	display: inline-block;
	margin-left: 20px;
}
/*----------
*style
-----------*/
.style{
	padding: 120px 0;
	background-color: #D5D2D0;
}
/*サブタイトル中央揃え*/
.subtitle_jp.center{
	position: absolute;
	top:auto;
	left: 50%;
	bottom: -15px;
    transform: translateX(-50%);
	margin-left:0;
}
/*線*/
.style .subtitle_jp::after{ /*線を消す*/
	border: none;
}
/*左右の線*/
.head-border{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.head-border::before, .head-border::after {
	content: "";
	width: 214px;
	border-top: 1px solid rgba(24,46,29,0.50);
}
.head-border::before {
  margin-right: 2.5rem;
}
.head-border::after {
  margin-left:2.5rem;
}
/*横並び*/
.style_flex{
	display: flex;
	justify-content: center;
	padding-top: 45px;
	margin-bottom: 50px;
}
.style_flex li{
	width: 300px;
	margin-left: 40px;
}
.style_flex li:first-of-type{
	margin-left: 0;
}
.style .button{
	display: block;
	text-transform: none;
	margin: 0 auto;
}
/*----------
*gallery
-----------*/
.gallery{
	padding: 120px 0 60px;
	background-color: #E8E6E4;
	margin: 0 auto;
}
.gallery .subtitle_jp::after{ /*線を消す*/
	border: none;
}
.gallery_flex{
	max-width: 1026px;
	padding-top: 45px;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 auto;
}
.gallery_flex li{
	width: 314px;
	margin-left: 40px;
	margin-bottom: 40px;
}
.gallery_flex li:nth-of-type(1){
	margin-left: 0;
}
.gallery_flex li:nth-of-type(4){
	margin-left: 0;
	margin-bottom: 0;
}
.gallery_flex li:nth-of-type(5){
	margin-bottom: 0;
}
.gallery_flex li:nth-of-type(6){
	margin-bottom: 0;
}
/*----------
*information
-----------*/
.information{
	padding: 60px 0 120px;
	background: linear-gradient(180deg, #E8E6E4 0%, #E8E6E4 65%, #D5D2D0 65%, #D5D2D0 100%);
}
.info_wrap{
	max-width: 1026px;
	margin: 0 auto;
}
.info_flex{
	display: flex;
	font-size: 1.6rem;
	margin-top: 28px;
	margin-bottom: 40px;
}
/*線*/
.information .subtitle_jp::after{
	width:607px;
}
/*住所*/
.access{
	padding-right: 336px;
	line-height: 2.1;
}
/*電話番号等*/
.info_content dl{
	margin-bottom: 13px;
}
.info_content dt{
	display: inline-block;
	font-weight: 500;
	padding-right: 20px;
}
.info_content dl:nth-of-type(3) dt{
	padding-right: 38px;
}
.info_content dd{
	display: inline-block;
}
/*map*/
.maps_wrap{
	position: relative;
	width: 100%;
	padding-top:39%;
}
.maps{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	filter:grayscale(100%);
	-webkit-filter:grayscale(100%);
	transition: all  0.5s ease;
}
.maps:hover{
	filter: grayscale(0%);
	-webkit-filter:grayscale(0%);
}
/*----------
*reserve
-----------*/
.reserve{
	background-color: #D5D2D0;
	padding-bottom: 120px;
}
.reserve_bg{
	max-width: 1126px;
	height: 376px;/*高さは後で調整*/
	background-image: url("../images/pc/reserve_bg.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	margin: 0 auto;
}
.reserve .subtitle{
	color: #FFFFFF;
	padding-top: 77px;
}
.reserve .subtitle_jp{
	color: #FFFFFF;
}
.reserve .head-border::before, .reserve .head-border::after {
	border-top: 1px solid rgba(255,255,255,0.50);
}
.reserve .subtitle_jp::after{ /*線を消す*/
	border: none;
}
/*btn*/
.reserve .head-border{
	margin-bottom: 60px;
}
.reserve_btn{
	display: flex;
	width: 100%;
	justify-content: center;
	margin: 0 auto;
}
.reserve_btn li{
	margin-left: 40px;
}
.reserve_btn li:first-of-type{
	margin-left: 0;
}
.reserve_btn li a{
	display: inline-block;
	box-sizing: border-box;
	border: solid 1px #ffffff;
	width: 286px;
	height: 66px;
	color: #FFFFFF;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	font-size: 1.8rem;
	letter-spacing: 0.15em;
}
.reserve_btn li:nth-of-type(1) a{
	padding: 16px 50px;
}
.reserve_btn li:nth-of-type(2) a{
	font-size: 1.4rem;
	padding: 20px 23px;
	letter-spacing: 0em;
}
.reserve_btn li:nth-of-type(3) a{
	padding: 14px 40px;
}
.reserve_btn li:nth-of-type(3) a span{
	font-family: 'Noto Serif', serif;
	font-weight: bold;
	font-size: 1.8rem;
	letter-spacing: 0.15em;
	vertical-align:middle;
}
.reserve_btn li:nth-of-type(3) a span::before{
	content: "";
	box-sizing: border-box;
	display: inline-block;
	background-image: url("../images/pc/icon/phone.svg");
	background-position: center center;
	background-repeat: no-repeat;
	width: 32px;
	height: 32px;
	margin-right: 16px;
	vertical-align:middle;
}
/*予約btnアニメーション*/
.reserve_button{
	position: relative;
	z-index: 0;
	text-decoration: none;
	transition: .8s;
}
.reserve_button::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  content:"";
  background-color:rgba(255,255,255,0.2);
  transform-origin: right top;
  transform: scale(0, 1);
  transition: transform .8s;
}
.reserve_button:hover::before {
  transform-origin: left top;
  transform: scale(1, 1);
}
/*----------
*footer
-----------*/
footer{
	padding: 35px 0;
	background-color:#182E1D;
}
/*ロゴ*/
.footer_logo{
	width: 84px;
	margin: 0 auto;
}
.footer_menu{
	display: flex;
	justify-content: center;
	margin: 40px auto 30px;	
}
.footer_menu li{
	margin-left: 20px;
	transition: all .5s;
}
.footer_menu li:hover{
	opacity: 0.6;
}
.footer_menu a{
	color: #FFFFFF;
	font-size: 1.4rem;
}
small{
	display: block;
	font-size: 1rem;
	color: #FFFFFF;
	text-align: center;
}
/*----------
*
*
*タブレット
*
*
-----------*/
@media (max-width: 1025px) {
	.br-pc{
		display: none;
	}
	.br-tb{
		display: inline-block;
	}
	.br-sp{
		display: none;
	}
/*----------
*header
-----------*/
	.pc-nav {
	  display: none;
	}
	.sp-nav{
		display: block;
	}
/*タブレット用ロゴ*/
	.sp-logo{
		display: inline-block;
		width: 85px;
	}
/*ハンバーガーボタン*/
	.hamburger {
		display : block;
		position: fixed;
		z-index : 3;
		right : 0px;
		top   : 0px;
		width : 50px;
		height: 50px;
		cursor: pointer;
		text-align: center;
		background-color: #182E1D;
	}
	.hamburger span {
		display : block;
		position: absolute;
		width   : 24px;
		height  : 1px ;
		left    : 13px;
		background : #FFFFFF;
		-webkit-transition: 0.3s ease-in-out;
		-moz-transition   : 0.3s ease-in-out;
		transition        : 0.3s ease-in-out;
	}
	.hamburger span:nth-child(1) {
	  top: 19px;
	}
	.hamburger span:nth-child(2) {
	  top: 24px;
	}
	.hamburger span:nth-child(3) {
	  top: 29px;
	}
	/* ナビ開いてる時のボタン */
	.hamburger.active span:nth-child(1) {
	  top : 24px;
	  left: 13px;
	  -webkit-transform: rotate(-40deg);
	  -moz-transform   : rotate(-40deg);
	  transform        : rotate(-40deg);
	}

	.hamburger.active span:nth-child(2),
	.hamburger.active span:nth-child(3) {
	  top: 24px;
	  -webkit-transform: rotate(40deg);
	  -moz-transform   : rotate(40deg);
	  transform        : rotate(40deg);
	}

	nav.sp-nav {
		position: fixed;
		z-index : 2;
		top  : 0;
		right : -100%;
		color: #000;
		text-align: center;
		transition: all 0.6s;
		width: 100%;
		height: 100vh;
		overflow-y: scroll;
		background:#182E1D;
	}
	nav.sp-nav ul {
		background:#182E1D;
		margin: 0 auto;
		padding: 0;
		width: 100%;
		height: 100vh;
	}
	nav.sp-nav ul li {
		list-style-type: none;
		padding: 0;
		width: 100%;
		font-family: 'Noto Serif JP', serif;
		font-weight: bold;
	}
	nav.sp-nav ul li:last-child {
	  padding-bottom: 0;
	  border-bottom: none;
	}
	nav.sp-nav ul li a {
		display: block;
		color: #FFFFFF;
		padding: 10px 0;
		text-decoration :none;
		text-transform: uppercase;
		font-size: 1.8rem;
		letter-spacing: 0.2em;
	}
	nav.sp-nav ul li a span{
		display: block;
		font-family: 'Noto Sans JP', sans-serif;
		font-size: 1rem;
		letter-spacing: 0.025em;
	}
	.menu_logo{
		width: 72px;
	}
/* このクラスを、jQueryで付与・削除する */
	nav.sp-nav.active {
		top: 0;
		right: 0;
	}
	nav.sp-nav ul .nav_logo{
		padding-top: 40px;
		padding-bottom: 26px;
	}	
/*header*/
	header{
		background-color:rgba(0,0,0,0);
	}
/*----------
*FV
-----------*/
/*----------
*about
-----------*/
	.subtitle_jp::after{
		width: 200px;
	}
	.about{
		padding-left: 25px;
		padding-right: 25px;
	}
	.about_flex{
		display: block;
		text-align: center;
	}
	.about_content{
		display: inline-block;
		text-align: left;
		padding: 0;
		margin-bottom: 30px;
	}
	.about_img{
		margin: 0 auto;
	}
/*----------
*staff
-----------*/	
	.staff{
		padding-left: 25px;
		padding-right: 25px;
	}
	.staff .subtitle_jp::after{
		width: 200px;
	}
	.staff_flex{
		display: block;
		text-align: center;
	}
	.staff_content{
		display: inline-block;
		text-align: left;
		margin-bottom: 30px;
		padding: 0;
	}
	.staff_img{
		margin: 0 auto;
	}
/*----------
*menu
-----------*/	
	.menu{
		padding-left: 25px;
		padding-right: 25px;
	}
	.menu .subtitle_jp::after{
		width: 200px;
	}
	.menu_flex{
		display: block;
		text-align: center;
	}
	.menu_content{
		display: inline-block;
		text-align: left;
		margin-bottom: 30px;
	}
	.menu_text{
		padding: 0;
	}
	.menu_price{
		margin: 0 auto;
	}
/*----------
*style
-----------*/	
	.style{
		padding-left: 25px;
		padding-right: 25px;
	}
	.head-border::before,.head-border::after{
		border: none;
	}
	.style_flex{
		display: block;
	}
	.style_flex li{
		margin: 0 auto 30px auto;
	}
	.style_flex li:first-of-type{
		margin: 0 auto 30px auto;
	}
	.style_flex li:last-of-type{
		margin-bottom: 0;
	}
/*----------
*gallery
-----------*/
	.gallery{
		padding-left: 25px;
		padding-right: 25px;
	}
	.gallery_flex{
		display: block;
	}
	.gallery_flex li{
		margin: 0 auto 30px auto;
		margin-bottom: 30px;
	}
	.gallery_flex li:nth-of-type(1){
		margin: 0 auto 30px auto;
	}
	.gallery_flex li:nth-of-type(4),.gallery_flex li:nth-of-type(5),.gallery_flex li:nth-of-type(6){
		margin-bottom: 30px;
	}
	.gallery_flex li:nth-of-type(4){
		margin: 0 auto 30px auto;
	}
	.gallery_flex li:nth-of-type(6){
		margin-bottom: 0;
	}
/*----------
*information
-----------*/
	.information{
		padding-left: 25px;
		padding-right: 25px;
}
	.information .subtitle_jp::after{
		border: none;
	}
	.information .subtitle{
		text-align: center;
	}
	.info_flex{
		display: block;
		text-align: center;
		max-width: 325px;
		margin: 0 auto;
	}
	.access{
		width: 100%;
		display: inline-block;
		text-align: left;
		padding-right: 0;
		padding-top: 20px;
		margin-bottom: 20px;
	}
	.info_content{
		text-align: left;
		padding-bottom: 20px;
	}
/*----------
*reserve
-----------*/
	.reserve{
		box-sizing: border-box;
		padding-right: 25px;
		padding-left: 25px;
	}
	.reserve_bg{
		height: auto;
		padding-bottom: 60px;
	}
	.reserve .head-border::before, .reserve .head-border::after{
		border: none;
	}
	.reserve_btn{
		display: block;
		text-align: center;
	}
	.reserve_btn li{
		margin: 0 auto 25px auto;
	}
		.reserve_btn li:last-of-type{
		margin-bottom: 0;
	}
	.reserve_btn li a{
		width: 70%;
	}
/*----------
*footer
-----------*/
	footer{
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.footer_logo{
		width: 60px;
	}
	.footer_menu{
		display: block;
		text-align: center;
	}
	.footer_menu li{
		margin-left: 0;
		margin-bottom: 15px;
	}
}/*1024px*/
/*----------
*
*
*スマートフォン
*
*
-----------*/
	@media (max-width: 519px) {
		body{
			font-size: 1.4rem;
		}
		.pc-img{
			display: none;
		}
		.sp-img{
			display: block;
		}
		.br-sp{
			display: none;
		}
		.br-tb{
			display: none;
		}
		.br-sp{
			display: inline-block;
		}	
/*----------
*FV
-----------*/
		.fv_subtitle{
			font-size: 1.2rem;
		}
		.hero{
			background-image:url("../images/sp/fv01.png");
			height: 80vh;
		}
		.hero_content{
			top: auto;
			bottom: 25%;
			left: 25px;
			transform: none;
			-webkit-transform:none;
		}
		.scroll_text{
			font-size: 1.2rem;
			padding-top: 50px;
		}
		.scroll_text span{
			width: 12px;
			height: 12px;
			margin-left: -6px;
		}
/*----------
*about
-----------*/
		.about{
			padding-top: 60px;
			padding-bottom: 70px;
		}
		.subtitle{
			font-size: 2.2rem;
		}
		.subtitle_jp::after{
			width: 118px;
		}
		.serif{
			margin-top: 24px;
			font-size: 1.8rem;
		}
		.about-text01{
			margin-top: 15px;
		}
		.about-text02{
			margin-top: 26px;
		}
		.about_img{
			width: 100%;
		}
/*----------
*staff
-----------*/
		.staff{
			padding-top: 60px;
			padding-bottom: 70px;
		}
		.staff .subtitle_jp::after{
			width: 167px;
		}
		.staff_name{
			margin-top: 24px;
			font-size: 2rem;
		}
		.staff_name span{
			font-size: 1.2rem;
		}
		.staff_text{
			margin-top: 20px;
		}
		.staff_img{
			width: 100%;
		}
/*----------
*menu
-----------*/
		.menu{
			padding-top: 60px;
			padding-bottom: 70px;
		}
		.menu .subtitle_jp::after {
			width: 132px;	
		}
		.menu_text{
			margin-top: 24px;
		}
/*料金表*/
		.menu_price{
			width: 100%;
			padding: 26px 20px;
		}
		.menu_price dt>span:nth-of-type(1){
			font-size: 1.8rem;
		}
		.menu_price dd{
			font-size:1.4rem;
		}
		.menu_flex{
			text-align: left;
		}
		.menu .button{
			width: 100%;
			font-size: 1.7rem;
			padding: 14px 40px;
		}
/*----------
*style
-----------*/
		.style{
			padding-top: 60px;
			padding-bottom: 70px;
		}
		.style_flex li:first-of-type{
			margin-bottom: 20px;
		}
		.style_flex li{
			width: 100%;
			margin-bottom: 20px;
		}
		.style_flex{
			margin-bottom: 35px;
		}
/*----------
*gallery
-----------*/
		.gallery{
			padding-top: 60px;
			padding-bottom: 40px;
		}
		.gallery_flex li:nth-of-type(1){
			margin-bottom: 20px;
		}
		.gallery_flex li{
			width: 100%;
			margin-bottom: 20px;
		}
		.gallery_flex li:nth-of-type(4), .gallery_flex li:nth-of-type(5){
			margin-bottom: 20px;
		}
/*----------
*information
-----------*/
		.information{
			padding-top: 30px;
			padding-bottom: 60px;
		}
		.information .subtitle{
			text-align: left;
		}
		.access{
			font-size: 1.5rem;
		}
		.info_content{
			font-size: 1.5rem;
		}
		.maps_wrap{
			padding-top: 100%;
		}
/*----------
*reserve
-----------*/
		.reserve{
			padding-bottom: 60px;
		}
		.reserve_bg{
			background-image: url("../images/sp/reserve_bg.png");
			padding-right: 15px;
			padding-left: 15px;
			box-sizing: border-box;
		}
		.reserve .head-border{
			padding-top: 40px;
		}
		.reserve .head-border{
			margin-bottom: 45px;
		}
		.footer_menu{
			margin-top: 30px;
		}	
	.reserve_btn li a{
		width: 100%;
	}
}/*520px*/
@media (max-width: 360px){
	.hero_content{
		width: 90%;
		left: 15px;
	}
	.subtitle_jp::after{
		width: 63px;
	}
	.staff .subtitle_jp::after{
		width: 112px;
	}
	.menu .subtitle_jp::after{
		width: 77px;
	}
	.menu_price dt>span:nth-of-type(1){
		font-size: 1.2rem;
	}
	.menu .button{
		font-size: 1.5rem;
	}
	.style .button{
		width: 90%;
		font-size: 1.5rem;
	}
	.reserve_btn li a{
		font-size: 1.4rem;
	}
	.reserve_btn li:nth-of-type(1) a{
		padding: 18px 50px;
	}
	.reserve_btn li:nth-of-type(2) a{
		font-size: 1.4rem;
		padding: 20px 0;
	}
	.reserve_btn li:nth-of-type(3) a{
		padding: 14px 20px;
	}
	.reserve_bg{
		padding-right: 13px;
		padding-left: 13px;
	}
	.reserve_btn li a{
		width: 100%;
	}

}/*360px以下*/