﻿@charset "utf-8";
html{}
body {
	width:100%;
	box-sizing: border-box;
	padding:0;
	margin:0;
	font-family: 'Noto Sans JP', sans-serif,'游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'Helvetica', 'Arial', sans-serif;
	font-weight: normal;
}
ul, li{
	list-style:none;
	padding:0;
	margin:0;
}
i{
	font-style:normal;
}
img{
	max-width:100%;
	vertical-align:bottom;
}
a{
	display: block;
	color:#000;
	text-decoration:none;
}
h2{
	position: relative;
	line-height: 1;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: bold;
	font-size:48px;
	font-size:4.8rem;
	letter-spacing: 2px;
	text-align: center;
}
h2 > span{
	display: block;
}
h2 > span span.txt-red{
	color: #e10000;
}
.button{
	position: relative;
	background: #68605b;
	line-height: 1;
	width: 70%;
	padding: 2rem 4rem;
	letter-spacing: 4px;
	font-weight: normal;
	color: #fff;
	font-size: 30px;
	font-size: 3.0rem;
	text-align: center;
}
.button span.arrow-after{
	position: absolute;
	display: inline-block;
	top: 30%;
	right: 10%;
	width: 88px;
	height: 2px;
	margin-top: 21.9px;
	border-radius: 9999px;
	background-color: #fff;
}
.button span.arrow-after:after{
	content: "";
	position: absolute;
	top: calc(50% - 2px);
	right: 0;
	width: 20px;
	height: 2px;
	border-radius: 9999px;
	background-color: #fff;
	transform: rotate(45deg);
	transform-origin: calc(100% - 2px) 50%;
}
.arrow span.arrow-after{
	position: absolute;
	width: 36px;
	height: 36px;
	right: 0;
	bottom: 0;
	top: 0;
	background: #68605b;
	border-radius: 50%;
	margin: auto;
}
.arrow span.arrow-after::before,
.arrow span.arrow-after::after {
	content: "";
	position: absolute;
	top: calc(50% - 2px);
	right: 0;
	left: 0;
	width: 14px;
	height: 3px;
	border-radius: 9999px;
	background-color: #ffffff;
	transform-origin: calc(100% - 2px) 50%;
	margin: auto;
}
.arrow span.arrow-after::before {
	transform: rotate(39deg);
}
.arrow span.arrow-after::after {
	transform: rotate(-39deg);
}
.lead > p span{
	display: block;
}
.pc-block{
	display: block;
}
.sp-block{
	display: none;
}


/*******************************
/* #header
*******************************/
#header{
	position:fixed;
	z-index:10;
	top:0;
	width: 100%;
	background: #fff;
}
#header nav ul.flex-box li+li{
	margin-left: 2rem;
}


/*************************
/* flex-box
*************************/
.flex-box{
	display:-webkit-flex;
	display:flex;
}
.flex-box-nowrap{
	-webkit-flex-wrap:nowrap;
	flex-wrap:nowrap;
}
.flex-box-wrap{
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
}
.flex-box-row-rever{
	-webkit-flex-direction:row-reverse;
	flex-direction:row-reverse;
}
.flex-box-column{
	-webkit-flex-direction:column;
	flex-direction:column;
}
.flex-box-column-r{
	-webkit-flex-direction:column-reverse;
	flex-direction:column-reverse;
}
.flex-box-space-b{
	-webkit-justify-content:space-between;
	justify-content:space-between;
}
.flex-box-space-a{
	-webkit-justify-content:space-around;
	justify-content:space-around;
}
.flex-box-space-c{
	-webkit-justify-content:center;
	justify-content:center;
}
.flex-box-space-e{
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}
.flex-box-item-c{
	-webkit-align-items:center;
	align-items:center;
}
.flex-box-item-e{
	-webkit-align-items:flex-end;
	align-items:flex-end;
}



/*******************************
/* #hero
*******************************/
#header{
	position:fixed;
	z-index:10;
	top:0;
	width: 100%;
	background: #fff;
}
#header .inner {
	padding: 1rem;
}
#header nav ul.flex-box li+li{
	margin-left: 4rem;
}
#header nav ul.flex-box li a{
	font-size: 24px;
	font-size: 2.4rem;
}
video {
	width: 100%;
	z-index: 1;
}

/*******************
 * top-page
********************/
#message-block{
	padding: 8rem 0 10rem;
}
#message-block > .body > .text-box{
	max-width: 950px;
	margin: 4rem auto 0;
}
#message-block > .body > .text-box > .title{
	text-align: center;
	font-size: 30px;
	font-size: 3.0rem;
	font-weight: normal;
}
#message-block > .body > .text-box > .lead{
	margin-top: 2rem;
}
#message-block > .body > .text-box > .lead > p{
	line-height: 2;
	font-size: 18px;
	font-size: 1.8rem;
}
#info-block > .block > div{
	width: calc(100%/2);
}
#info-block > .block > div.text-box{
	background: #958a83;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
#info-block > .block > div.text-box div.head h2{
	color: #fff;
}
#info-block > .block > div.text-box > ul{
	width: 90%;
	margin-top: 3rem;
}
#info-block > .block > div.text-box > ul{
	border-bottom: 1px solid #fff;
}
#info-block > .block > div.text-box > ul li{
	border-top: 1px solid #fff;
}
#info-block > .block > div.text-box > ul li > a{
	display: flex;
	color: #fff;
	align-items: center;
	padding: 1rem 2rem;
}
#info-block > .block > div.text-box > ul li > a .data{
	font-size: 18px;
	font-size: 1.8rem;
}
#info-block > .block > div.text-box > ul li > a .title{
	margin-left: 2rem;
	font-size: 24px;
	font-size: 2.4rem;
}
#info-block > .block > div.text-box > .arrow{
	max-width: 600px;
	margin: 2rem auto 0;
	text-align: right;
	width: 100%;
	font-size: 30px;
	color: #fff;
	font-weight: normal;
}
#info-block > .block > div.text-box > .arrow > span{
	padding-right: 6rem;
	position: relative;
}
#staff-block > .block > div{
	width: calc(100%/2);
}
#staff-block > .block > div.text-box{
	background: #958a83;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
#staff-block > .block > div.text-box div.head h2{
	color: #fff;
}
#staff-block > .block > .text-box > .lead{
	margin-top: 2rem;
	color: #fff;
	text-align: center;
	font-size: 18px;
	line-height: 2;
	font-weight: normal;
}
#staff-block > .block > .text-box > .button{
	margin-top: 2rem;
}
#menu-block{
	padding: 8rem 0 0;
}
#menu-block > .body {
	padding-bottom: 8rem;
}
#menu-block > .body > .text-box{
	max-width: 950px;
	margin: 4rem auto 0;
}
#menu-block > .body > .text-box > .title{
	text-align: center;
	font-size: 30px;
	font-size: 3.0rem;
	font-weight: normal;
}
#menu-block > .body > .text-box > .lead{
	margin-top: 2rem;
}
#menu-block > .body > .text-box > .lead > p{
	line-height: 2;
	font-size: 18px;
	font-size: 1.8rem;
	text-align: center;
}
#menu-block > .body > .button{
	margin: 3rem auto 0;
	width: 34%;
}
#menu-block > .body > .block{
	margin-top: 8rem;
}
#menu-block > .block > .box{
	width: calc(100%/3);
	aspect-ratio: 1 / 1;
}
#menu-block > .block > .box:nth-child(1){
	background: url(../images/menu_bk_01.jpg) no-repeat center;
}
#menu-block > .block > .box:nth-child(2){
	background: url(../images/menu_bk_02.jpg) no-repeat center;
}
#menu-block > .block > .box:nth-child(3){
	background: url(../images/menu_bk_03.jpg) no-repeat center;
}
#menu-block > .block > .box > a{
	aspect-ratio: 1 / 1;
	margin: 6rem;
	background-color: rgba(255, 255, 255, 0.5);
}
#menu-block > .block > .box > a > p{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	font-size: 48px;
	font-size: 4.8rem;
	font-weight: normal;
	text-align: center;
}
#menu-block > .block > .box > a > p span.arrow-after{
	position: absolute;
	display: inline-block;
	bottom: 16%;
	right: 10%;
	width: 88px;
	height: 2px;
	margin-top: 21.9px;
	border-radius: 9999px;
	background-color: #000;
}
#menu-block > .block > .box > a > p span.arrow-after:after{
	content: "";
	position: absolute;
	top: calc(50% - 2px);
	right: 0;
	width: 20px;
	height: 2px;
	border-radius: 9999px;
	background-color: #000;
	transform: rotate(45deg);
	transform-origin: calc(100% - 2px) 50%;
}
#acsses-block{
	background: #f7f7f7;
	padding: 8rem 0 12rem;
}
#acsses-block > .body.flex-box{
	max-width: 1500px;
	margin: 8rem auto 0;
}
#acsses-block > .body.flex-box > div{
	width: calc(100% / 2);
}
#acsses-block > .body.flex-box > div:nth-child(2){
	margin-left: 4rem;
}
#acsses-block > .body.flex-box > div > .block{
	border-bottom: 2px solid #68605b;
}
#acsses-block > .body.flex-box > div > .block dl{
	display: flex;
	align-items: center;
	border-top: 2px solid #68605b;
	padding: 1rem 1rem 1rem 3rem;
}
#acsses-block > .body.flex-box > div > .block dl dt{
	width: 20%;
	text-align: center;
	font-size: 24px;
	font-size: 2.4rem;
}
#acsses-block > .body.flex-box > div > .block dl dd{
	margin-left: 2rem;
	font-size: 18px;
	font-size: 1.8rem;
}
#acsses-block > .body.flex-box > div > .calendar-box{
	width: 80%;
	margin-left: auto;
	background: #fff;
	padding: 3rem 6rem;
	margin-top: 4rem;
}
#acsses-block > .body.flex-box > div .qr-box{
	max-width: 680px;
	width: 90%;
	background: #68605b;
	margin-top: 1rem;
	padding: 2rem 4rem 4rem;
}
#acsses-block > .body.flex-box > div .qr-box dl{
	margin-top: 4rem;
	color: #fff;
}
#acsses-block > .body.flex-box > div .qr-box dl dt{
	font-size: 24px;
	font-size: 2.4rem;
}
#acsses-block > .body.flex-box > div .qr-box dl dd{
	margin-top: 1rem;
	line-height: 2;
	font-size: 18px;
}
footer{
	background: #958a83;
	padding: 60px 0 80px;
}
footer #footer nav ul.flex-box li+li{
	margin-left: 4rem;
}
footer #footer nav ul.flex-box li a{
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: normal;
	color: #fff;
}
footer #footer .copyright{
	margin-top: 5rem;
}
footer #footer .copyright > p{
	text-align: center;
	color: #fff;
	font-size: 14px;
	font-size: 1.4rem;
}





/*******************
 * inner-page
********************/
body.page .main-image,body.category .main-image,body.archive .main-image,body.single .main-image{
	position: relative;
	width: 100%;
	height: 430px;
	margin-left: auto;
}
body.page .main-image h2,body.category .main-image h2,body.archive .main-image h2,body.single .main-image h2{
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	font-size: 104px;
	font-size: 10.4rem;
	font-weight: normal;
	color: #fff;
	text-align: center;
}



/*MENU*/
body.menu .main-image{
	background: url(../images/menu_main.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}
body.menu #menu-page{
	padding: 12rem 0 20rem;
}
body.menu #menu-page > .body{
	margin-top: 12rem;
}
body.menu #menu-page > .body .block+.block {
	margin-top: 10rem;
}
body.menu #menu-page > .body .block.flex-box:nth-child(2){
	flex-direction: row-reverse;
}
body.menu #menu-page > .body .block.flex-box:nth-child(2) .img-box{
	text-align: left;
}
body.menu #menu-page > .body .block.flex-box:nth-child(2) > .text-box{
	margin-left: 2rem;
	margin-right: auto;
}
body.menu #menu-page > .body .block > .text-box{
	width: clamp(480px, 45%, 750px);
	max-width: 750px;
	margin-left: auto;
	margin-right: 2rem;
}
body.menu #menu-page > .body .block > .text-box > .title{
	font-size: 36px;
	border-left: 4px solid #68605b;
	padding-left: 2rem;
	line-height: 1;
}
body.menu #menu-page > .body .block > .text-box .menu-box{
	width: 100%;
	margin-top: 5rem;
}
body.menu #menu-page > .body .block > .text-box .menu-box li:nth-child(odd){
	background: #68605b;
	color: #fff;
}
body.menu #menu-page > .body .block > .text-box .menu-box li dl{
	display: flex;
	align-items: center;
	padding: 0.5rem 2rem;
	justify-content: space-between;
}
body.menu #menu-page > .body .block > .text-box .menu-box li dl dt{
	font-size: 24px;
	font-size: 2.4rem;
}
body.menu #menu-page > .body .block > .text-box .menu-box li dl dd{
	font-size: 18px;
	font-size: 1.8rem;
}
body.menu #menu-page > .body .block > .img-box{
	width: calc(100% / 2);
	text-align: right;
}
body.menu #menu-page > .body .block > .text-box .care-box{
	display: flex;
	align-items: center;
	margin-top: 4rem;
}
body.menu #menu-page > .body .block > .text-box .care-box dt{
	width: 60%;
}
body.menu #menu-page > .body .block > .text-box .care-box dd{
	margin-left: 3rem;
}
body.menu #menu-page > .body .block > .text-box .care-box dd .title{
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: bold;
}
body.menu #menu-page > .body .block > .text-box .care-box dd .text{
	font-size: 18px;
	font-size: 1.8rem;
}


/*SHOP*/
body.shop .main-image{
	background: url(../images/shop_main.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}
body.shop #shop-page{
	padding: 10rem 0 20rem;
}
body.shop #shop-page > .body{
	max-width: 1100px;
	margin: 0 auto;
}
body.shop #shop-page > .body > div.block dl{
	display: flex;
	align-items: center;
	border-bottom: 2px solid #c8c8c8;
	padding: 2rem 1rem 2rem 3rem;
}
body.shop #shop-page > .body > div.block dl dt{
	width: 16%;
	text-align: center;
	font-size: 24px;
	font-size: 2.4rem;
	font-weight: bold;
}
body.shop #shop-page > .body > div.block dl dd{
	margin-left: 2rem;
	font-size: 18px;
	font-size: 1.8rem;
}
body.shop #shop-page > .body > div.map-box{
	margin-top: 12rem;
}
body.shop #shop-page > .body > div.map-box .title{
	text-align: center;
	font-size: 36px;
	font-size: 3.6rem;
}
body.shop #shop-page > .body > div.map-box iframe{
	margin-top: 6rem;
}
body.shop #shop-page > .body > div.map-box .train{
	margin-top: 4rem;
}


/*STAFF*/
body.staff .main-image{
	background: url(../images/shop_main.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}
body.staff #staff-page{
	padding: 10rem 0 20rem;
}
body.staff #staff-page > .body{
	max-width: 1100px;
	margin: 0 auto;
}
body.staff #staff-page > .body > div.block > div{
	width: calc(100% / 2);
}
body.staff #staff-page > .body > div.block .text-box{
	margin-right: 2rem;
}
body.staff #staff-page > .body > div.block .text-box h2.heading-name{
	font-weight: normal;
}
body.staff #staff-page > .body > div.block .text-box h2.heading-name span.txt-small{
	font-size: 18px;
	font-size: 1.8rem;
}
body.staff #staff-page > .body > div.block .text-box h2.heading-name span:nth-child(4){
	border-bottom: 3px solid #68605b;
	display: inline-block;
	padding-bottom: 2rem;
}
body.staff #staff-page > .body > div.block .text-box .lead{
	margin-top: 4rem;
}
body.staff #staff-page > .body > div.block .text-box .lead > p{
	font-size: 24px;
	font-size: 2.4rem;
}
body.staff #staff-page > .body > div.block .text-box .plofile{
	margin-top: 4rem;
}
body.staff #staff-page > .body > div.block .text-box .plofile > ul{
	background: #68605b;
	padding: 1rem 2rem;
	color: #fff;
	font-size: 18px;
}

body.category #container.category-page,body.single #container.single-page{
	background: #958a83;
}
body.category .main-image,body.single .main-image{
	background: url(../images/menu_main.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}
body.category .category-page .inner ul li a .data,body.single .single-page .inner .single-article-box .data{
	font-size: 14px;
	font-size: 1.4rem;
}
body.category .category-page .inner ul li a .data:before,body.single .single-page .single-article-box .data:before{
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 1em;
	height: 1em;
	background: url(../images/icon04.png) no-repeat;
	background-size: contain;
	margin-right: 10px;
}
body.category .category-page .inner ul li{
	width: 80%;
	margin: 10rem auto 0;
	background: #fff;
	border: 1px solid #c9c9c9;
	color: #4c493a;
}
body.category .category-page .inner ul li+li{
	margin-top: 4rem;
}
body.category .category-page .inner ul li a{
	padding: 40px;
}
body.category .category-page .inner ul li a .title,body.single .single-page .inner .single-article-box .title{
	border-bottom: 1px solid #333;
	font-size: 24px;
	font-size: 2.4rem;
}
body.category .category-page .inner ul li a .text-contents > p,body.single .single-page .inner .single-article-box .text-contents > p{
	margin-top: 20px;
}
body.single .single-page .inner .single-article-box{
	width: 80%;
	margin: 10rem auto 0;
	padding: 40px;
	background: #fff;
	border: 1px solid #c9c9c9;
	color: #4c493a;
}