/*
Theme Name: ORIGINAL
*/


@font-face {
font-family: "albertusnova";
src: url("font/albertusnova.woff") format('woff');
}



* {
	margin: 0;
	padding: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}



html {
font-size: 100%;
overflow-y: scroll;
text-rendering:optimizeLegibility;
}


ul, li{
list-style:none;
}


img{
	display:block;
	width:100%;
	height:auto;
}

::selection {
background-color: #000;
color:#fff;
}

a{
	text-decoration:none;
	color: #004a2a;
	display:block;
}



.text_border{
text-decoration:underline;
}


.font_bold{
font-weight:bold;
}


.font12{
font-size:12pt;
}


.font13{
font-size:13pt;
}


.font14{
font-size:14pt;
}

.font15{
font-size:15pt;
}

.font16{
font-size:16pt;
}

.font17{
font-size:17pt;
}

.font18{
font-size:18pt;
}

.font19{
font-size:19pt;
}

.font20{
font-size:20pt;
}


p{
	font-size: 13.5px;
	letter-spacing: 0.4px;
	color: #004a2a;
}


b {
    font-weight: 600;
}

.clear{
clear: both;
}

.img_100 img{
width:100%;
height:auto;
}




body {
	color: #2B2828;
	margin: 0;
	font-family: "a-otf-gothic-mb101-pr6n", sans-serif;
	    font-family: 'Hiragino Sans', sans-serif;
	background-color:#FAF6F4;
	font-size:13.5px;
	line-height: 2;
}




.sub_grand_menu{
	display:none;
	position: fixed;
	top: 5px;
	right: 10px;
	z-index: 9999;
	width: 60px;
	-webkit-transition: 1s cubic-bezier(0.78, .18, .34, .98);
	-moz-transition: 1s cubic-bezier(0.78, .18, .34, .98);
	-ms-transition: 1s cubic-bezier(0.78, .18, .34, .98);
	-o-transition: 1s cubic-bezier(0.78, .18, .34, .98);
	transition: 1s cubic-bezier(0.78, .18, .34, .98);
}




.sub_grand_menu p{
text-align:center;
color:#fff;
}




.sub_grand_menu.sub_grand_menu_ani{
position:fixed;
top:0px;
z-index: 9999;
-webkit-transition: 1s cubic-bezier(0.78, .18, .34, .98);
-moz-transition: 1s cubic-bezier(0.78, .18, .34, .98);
-ms-transition: 1s cubic-bezier(0.78, .18, .34, .98);
-o-transition: 1s cubic-bezier(0.78, .18, .34, .98);
transition: 1s cubic-bezier(0.78, .18, .34, .98);
}


.sub_grand_menu .button-navi-icon {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 26px;
	height: 1.4px;
	margin: 0px 0 0 -17px;
	background: transparent;
	-webkit-transition: 0.2s ease-out;
	-moz-transition: 0.2s ease-out;
	-ms-transition: 0.2s ease-out;
	-o-transition: 0.2s ease-out;
	transition: 0.2s ease-out;
	}

.sub_grand_menu .button-navi-icon:after, .sub_grand_menu .button-navi-icon:before {
display: block;
content: "";
position: absolute;
top: 50%;
left: 0;
	width: 30px;
	height: 1.4px;
	background: #004a2a;
-webkit-transition: 0.3s ease-out;
-moz-transition: 0.3s ease-out;
-ms-transition: 0.3s ease-out;
-o-transition: 0.3s ease-out;
transition: 0.3s ease-out;
}



.sub_grand_menu .button-navi-icon:after, .sub_grand_menu .button-navi-icon:before {
	background: #004a2a;
}




#page .sub_grand_menu .button-navi-icon:after, #page .sub_grand_menu .button-navi-icon:before {
	background: #004a2a;
	-webkit-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	-moz-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	-ms-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	-o-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	transition: .6s cubic-bezier(0.78, .18, .34, .98);
}

.active .sub_grand_menu .button-navi-icon:after, .active .sub_grand_menu .button-navi-icon:before{
	background:#004a2a;
	-webkit-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	-moz-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	-ms-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	-o-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	transition: .6s cubic-bezier(0.78, .18, .34, .98);
}


#gallery .sub_grand_menu .button-navi-icon:after, #gallery .sub_grand_menu .button-navi-icon:before {
	background: #7b6556;
}



.sub_grand_menu .button-navi-icon:before {
margin-top: -4px;
}

.sub_grand_menu .button-navi-icon:after {
margin-top: 2px;
}





.sub_grand_menu_top{
padding: 25px 0px;
overflow:hidden;
}



.sub_grand_menu_top .sub_menu ul li{
display: inline-block;
padding:0 20px;
}




.sub_grand_menu .button-navi-icon.close:before, .sub_grand_menu .button-navi-icon.close:after {
	margin-top: 0;
	background: #004a2a;
}

#page .sub_grand_menu .button-navi-icon.close:before, #page .sub_grand_menu .button-navi-icon.close:after {
	margin-top: 0;
	background: #004a2a;
}




.sub_grand_menu .button-navi-icon.close:after {

}


.button-navi-icon.close:after {
-moz-transform: rotate(25deg);
-ms-transform: rotate(25deg);
-webkit-transform: rotate(25deg);
transform: rotate(25deg);
}

.button-navi-icon.close:before {
-moz-transform: rotate(-25deg);
-ms-transform: rotate(-25deg);
-webkit-transform: rotate(-25deg);
transform: rotate(-25deg);
}


.button-navi-icon.close, #page .button-navi-icon.close {
background: transparent;
}



.button-close{
position:absolute;
padding: 25px 0px;
width: 60px;
top: 0;
z-index:-9999;
}




#menu_index {
	position: fixed;
	top: 0;
	width: 100%;
	height: 100%;
	background-size: contain;
	background-color: #FAF6F4;
	z-index: 9996;
}


.menus {
	top: 50%;
	width: 100%;
	padding:0 40px;
	position: absolute;
	text-align:center;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	top: 50%;
}

.menu_index_inner ul {
	overflow: hidden;
	border-top: 1px solid rgba(0, 74, 42, 0.4);
}


.menu_index_inner ul li {
	text-align: center;
	display: block;
	border-bottom: 1px solid rgba(0, 74, 42, 0.4);
}


.menu_index_inner ul li a {
	font-family: "albertusnova";
	font-size: 18px;
	letter-spacing:1px;
	line-height: 1;
	padding: 16px 0 12px;
	display:block;
	width:100%;
}

.menu_index_inner ul li a span{
	height:12px;
	display:inline-block;
}



.menu_index_inner ul li a img{
	width:auto;
	height:100%;
}


.sp_m_logo{
	
}

.sp_m_logo > a{
	width: 160px;
	display: inline-block;
}

.sp_m_menu{
	margin-top: 77px;
}

.menus .sns_menu{
	margin-top: 30px;
}

.menus .sns_menu > a{
	width:45px;
	display: inline-block;
	margin:0 10px;
}


.sp_m_btm{
	margin-top: 40px;
	display:flex;
	justify-content: space-between;
}


.sp_m_btm > div a{
	font-size:12px;
}



.icon_insta{
	    width: 35px;
}

.icon_insta a {
    padding: 8px;
    border: 1px solid #004a2a;
    border-radius: 333px;
    -webkit-border-radius: 333px;
    -moz-border-radius: 333px;
}




.loading {
position: fixed;
width: 100%;
height: 100%;
left: 0;
top: 0;
bottom: 0;
z-index: 999999;
opacity: 1;
background: #fbf7f2;
}



.loader
{
position: absolute;
display: inline-block;
top:50%;
left:50%;
margin-left:-17px;
margin-top:-30px;
width: 30px;
height: 30px;
border-radius: 30px;
border: 1px solid #000;
border-right-color: transparent;
-webkit-animation: spin 1s infinite linear;
-moz-animation: spin 1s infinite linear;
}


@-webkit-keyframes spin
{
	0% { -webkit-transform: rotate(0deg); opacity: 0.4; }
	50%  { -webkit-transform: rotate(180deg); opacity: 1; }
	100%   { -webkit-transform: rotate(360deg); opacity: 0.4; }
}

@-moz-keyframes spin
{
	0% { -moz-transform: rotate(0deg); opacity: 0.4; }
	50%  { -moz-transform: rotate(180deg); opacity: 1; }
	100%   { -moz-transform: rotate(360deg); opacity: 0.4; }
}



.img-cover {
background: none no-repeat scroll 50% 50% / cover  rgba(0, 0, 0, 0);
background-size: cover !important;
-webkit-background-size: cover !important;
}





#header.active{
-webkit-transition: 0.4s cubic-bezier(0.78, .18, .34, .98);
-moz-transition: 0.4s cubic-bezier(0.78, .18, .34, .98);
-ms-transition:  0.4s cubic-bezier(0.78, .18, .34, .98);
-o-transition:  0.4s cubic-bezier(0.78, .18, .34, .98);
transition:  0.4s cubic-bezier(0.78, .18, .34, .98);
}










#page_menu{
	position:fixed;
    z-index: 9995;
	width:100%;
	left:0;
	top:0;
	padding: 15px 30px;
	background-color: #FAF6F4;
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-bottom:1px solid #004a2a;
	-webkit-transition: 0.4s cubic-bezier(0.78, .18, .34, .98);
	-moz-transition: 0.4s cubic-bezier(0.78, .18, .34, .98);
	-ms-transition:  0.4s cubic-bezier(0.78, .18, .34, .98);
	-o-transition:  0.4s cubic-bezier(0.78, .18, .34, .98);
	transition:  0.4s cubic-bezier(0.78, .18, .34, .98);
}


#page_menu.active{
	-webkit-transition: 0.4s cubic-bezier(0.78, .18, .34, .98);
	-moz-transition: 0.4s cubic-bezier(0.78, .18, .34, .98);
	-ms-transition:  0.4s cubic-bezier(0.78, .18, .34, .98);
	-o-transition:  0.4s cubic-bezier(0.78, .18, .34, .98);
	transition:  0.4s cubic-bezier(0.78, .18, .34, .98);
}






#page_menu .logo{
	width: 70px;
}





#page_menu .gra_menu{
	display:flex;
	gap:40px;
}

#page_menu .gra_menu > div {
		position:relative;
}

#page_menu .gra_menu > div a{
	font-family: "albertusnova";
	color:#004a2a;
	font-size:14px;
	letter-spacing: 1px;
}

#page_menu .gra_menu > div.active:after{
	content:"";
	position:absolute;
	width:8px;
	height:8px;
	top:2px;
	right:-12px;
	background:#f4a581;
	border-radius: 333px;
	-webkit-border-radius: 333px;
	-moz-border-radius: 333px;
}



#page_menu .gra_sns_menu{
	width:35px;
}

#page_menu .gra_sns_menu > a{
	padding:8px;
	border:1px solid #004a2a;
	border-radius: 333px;
	-webkit-border-radius: 333px;
	-moz-border-radius: 333px;
}


.top_slide {
  position:relative;
  top:0;
  overflow: hidden;
  width: 100%;
  height:100%;
  background-color: #999;
}

.zs-enabled .zs-slideshow .zs-bullets{
  display:none;
}




.home_logo{
	width:420px;
	position:absolute;
	z-index:999;
	top: 50%;
	left:50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}



.main_copy{
	z-index:99;
	position:absolute;
	top:15%;
	right: 50px;
	width:6.5%;
}











.st_sec{
	padding: 120px 0;
	margin:0 60px;
	position: relative;
	border-bottom:1px solid #004a2a;
}


.inner{
	max-width: 770px;
	margin:0 auto;
	
}



.main_title{
	margin-bottom:60px;
}

.main_title p{
	text-align:center;
	font-size:26px;
	letter-spacing: 2px;
	line-height: 1;
	font-weight:bold;
	font-family: "albertusnova";
	color: #004a2a;
	}
	



.h_space{
	display:block;
	height: 15px;
}















.news_list{
	display: flex;
	flex-direction: column;
}

.news_list_wrap{
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.news_box{
	display:flex;
	gap: 23px;
}


.news_box .date {
	width: 80px;
}



.news_box .title a .icon_link{
	display:inline-block;
	vertical-align: sub;
	background-image:url(images/icon_link.svg);
	background-size:100%;
	width:17px;
	height:17px;
}








.top_about_copy{
	width: 54%;
	margin-top:40px;
}

#page_about_sec01 .top_about_copy{
	margin-top:0px;
}



.st_note{
	margin-top:30px;
}

.st_note p{
	text-align: justify;
}



.st_sec.noboder {
	border-bottom: none;
	padding: 120px 0 0;
}

.top_access_sec{
	display:flex;
	flex-direction: column;
	gap: 40px;
}


	
	.g_map {
	position: relative;
	width: 100%;
	aspect-ratio: 600 / 320;
	}
	
	.g_map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
	}
	
	
	.access_sec01 .g_map{
	margin:15px 0;
	}
	
	.access_sec02{
	display:flex;
	flex-direction: column;
	gap: 20px;
}



.parking_map{
	border-top:.5px solid #004a2a;
	margin-top:5px;
}

	.access_sec02 .g_map{
	margin-top:5px;
	}

.access_sec02 .space{
	height:10px;
}


/* Parking / bicycle parking info
------------------------------------------- */

.access_sec02_detail{
	margin-top:10px;
	color:#004a2a;
}

.access_park_block{
	display:flex;
	gap:20px;
	padding:30px 0;
	border-top:.5px solid #004a2a;
}

.access_park_head{
	width: 65px;
	flex-shrink:0;
	font-weight: 600;
	font-size:13.5px;
	letter-spacing:0.5px;
}

.access_park_body{
	flex:1;
	min-width:0;
	display:flex;
	flex-direction:column;
	gap:4px;
}

.access_park_group{
	font-size:13.5px;
	letter-spacing:0.4px;
	font-feature-settings: "palt";
}

.access_park_row{
	display:flex;
	gap:14px;
}

.access_park_label{
	width: 78px;
	flex-shrink:0;
	font-size:13.5px;
	letter-spacing:0.4px;
}

.access_park_value{
	flex:1;
	min-width:0;
	font-size:13.5px;
	line-height:1.9;
	letter-spacing:0.4px;
}

.access_park_note{
		font-size:12px;
}

.access_park_break{
	display:none;
}

.access_park_note_break{
	display:block;
}

.access_park_caution{
	margin-top:10px;
	padding-top: 12px;
	border-top:.5px solid #004a2a;
	font-size:13.5px;
	letter-spacing:0.4px;
}




.about_sec02_box{
	margin-top:100px;
}


.about_title{
	width:65%;
}

.about_sec02_img{
	display:flex;
	gap:10px;
	margin-top:40px;
}

.about_sec02_img.type_b{
	margin-top:10px;
}











#footer{
	margin-top: 300px;
	padding: 60px 0 30px;
	background: #fdede6;
}

#footer .inner{
	max-width: 100%;
	padding: 0 30px;
}

.footer_wrap{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}

.f_logo{
	
}

.f_logo a{
    width: 90px;	
}

.f_menu{
	margin-top:30px;
	font-size: 11px;
	letter-spacing: 1.5px;
}

.f_menu a{
	font-size: 11px;
	letter-spacing: 1.5px;
	display:inline;
}

.f_menu a.jp{
	letter-spacing: .5px;
}


.f_copy p{
	font-family: "Helvetica Neue", sans-serif;
	font-weight:300;
	font-size: 11px;
	letter-spacing: 1.5px;
}

#footer .sns_menu a{
	
}

#footer .sns_menu {
	width: 35px;
	}

#footer .sns_menu a{
    padding: 8px;
    border: 1px solid #004a2a;
    border-radius: 333px;
    -webkit-border-radius: 333px;
    -moz-border-radius: 333px;
}





#top_about{
padding: 240px 0 120px;
}




.about_copy{
	text-align:center;
		margin-top:100px;
}

.about_copy p{
	font-size:25.5px;
	letter-spacing: 0.4px;
}

.about_text {
	text-align:center;
	margin-top:40px;
}

.about_text p{
	display:inline-block;
	text-align:left;
	font-size:14px;
	letter-spacing: 0.4px;
	line-height: 260%;
}








.page_img_sec.st_sec {
    padding: 120px 0;
}

.page_img_sec.st_sec.noboder {
	padding: 120px 0 0;
}
 

.no_border{
   border-bottom: none;
}

.page_img{
	margin-bottom:100px;
}

.page_content .main_title{

}

.sub_title{
	position:absolute;
	left:0;
}

.sub_title p{
	font-size: 12px;
	line-height: 1.4;
	font-weight:600;
}

.sub_title.en p{
	font-family: "Helvetica Neue", sans-serif;
	font-weight: 500;
}

.page_sec_wrap{
	position:static;
}

#page_about_sec01 .inner{
	position:static;
}


#page_about_sec00 .main_title{
    margin-bottom: 0px;
}



















.st_btn{
	margin-top:40px;
	text-align:center;
}

.st_btn a{
	position:relative;
	color:#004a2a;
	display:inline-block;
	width:340px;
	padding: 12px 30px;
	text-align:center;
	background:#f7c0a7;
	border-radius: 333px;
	-webkit-border-radius: 333px;
	-moz-border-radius: 333px;
}

.st_btn a::after{
	content:"";
	position:absolute;
	top:50%;
	right:28px;
	width:7px;
	height:7px;
	border-top:1px solid #004a2a;
	border-right:1px solid #004a2a;
	transform:translateY(-50%) rotate(45deg);
}

.st_btn.sign a{
	position:relative;
}

.st_btn.sign a::after{
	content:"";
	position:absolute;
	top:50%;
	right:28px;
	width:0;
	height:0;
	border-top:6px solid transparent;
	border-right:none;
	border-bottom:6px solid transparent;
	border-left:9px solid #004a2a;
	transform:translateY(-50%);
}





.bk_copy p{
	width: 36%;
}




.bk_img{
	margin-top: 40px;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-column-gap: 40px;
	grid-row-gap: 40px;
}

.bk_img p{
	line-height:1.8;
	margin-top:10px;
}





.shop_list{
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	grid-column-gap: 30px;
	grid-row-gap: 80px;
}

.shop_list > div{
	max-width:100%;
}



.shop_list > div.shop_floor{
	position:absolute;
	margin-left:-100px;
}

.shop_list > div.shop_floor b {
    font-family: "albertusnova";
    color: #004a2a;
    font-size: 22px;
	letter-spacing: 1px;
	line-height:1;
}



.shop_list > div p{
	margin-top:8px;
	font-size:13px;
	font-weight:600;
	line-height: 1.2;
	word-wrap: break-word;
	display: block;
}

.shop_list > div span{
	font-feature-settings: "palt";
	margin-top:4px;
	font-size:10px;
	line-height: 1.5;
	color:#ab8450;
	word-wrap: break-word;
	display: block;
}




.shop_main_title{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	margin-bottom:60px;
}

.shop_main_title::before{
	content:"";
	position:absolute;
	top:50%;
	left:0;
	width:100%;
	height:1px;
	background:rgba(0,74,42,.3);
}

.shop_main_title p{
	position:relative;
	z-index:1;
	width:200px;
}

.shop_main_title p img{
	width:100%;
	height:auto;
	display:block;
}


.shop_list02{
	margin-top:80px;
}




/* Shop detail modal
------------------------------------------- */

#shop_modal{
	display:flex;
	justify-content:center;
	align-items:flex-start;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:99990;
	background: #0000009c;
	overflow-y:auto;
	-webkit-overflow-scrolling:touch;
	opacity:0;
	visibility:hidden;
	transition:opacity .35s ease, visibility 0s linear .35s;
}

#shop_modal.is-open{
	opacity:1;
	visibility:visible;
	transition:opacity .35s ease, visibility 0s linear 0s;
}

.shop_modal_box{
	position:relative;
	width:min(680px, calc(100% - 48px));
	margin:64px 0;
	padding: 56px 56px 15px;
	background:#FAF6F4;
	border-radius:7px;
	-webkit-border-radius:7px;
	-moz-border-radius:7px;
	box-shadow:0 30px 60px rgba(0,74,42,.15), 0 8px 20px rgba(0,74,42,.08);
	opacity:0;
	transform:translateY(16px);
	transition:opacity .35s ease, transform .35s ease;
}

#shop_modal.is-open .shop_modal_box{
	opacity:1;
	transform:translateY(0);
}

.shop_modal_close{
	position:absolute;
	top: 15px;
	right: 13px;
	width:36px;
	height:36px;
	background:none;
	border:none;
	padding:0;
	cursor:pointer;
	z-index:99991;
}

.shop_modal_close::before,
.shop_modal_close::after{
	content:"";
	position:absolute;
	top:50%;
	left:50%;
	width: 32px;
	height:1.5px;
	background:#004a2a;
}

.shop_modal_close::before{
	transform:translate(-50%,-50%) rotate(45deg);
}

.shop_modal_close::after{
	transform:translate(-50%,-50%) rotate(-45deg);
}


.modal_shop_logo{
	text-align:center;
	margin-bottom: 55px;
}

.modal_shop_logo img{
	width:auto;
	max-width:200px;
	height:auto;
	margin:0 auto;
}


.modal_shop_slider{
	position:relative;
	width:100%;
	aspect-ratio: 16 / 8;
}

.modal_shop_slide{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	    padding: 0px 56px;
	opacity:0;
	transition:opacity .6s ease;
}

.modal_shop_slide.is-active{
	opacity:1;
	z-index:1;
}

.modal_shop_slide img{
	width:100%;
	height:100%;
	object-fit:cover;
}

.modal_shop_slider_prev,
.modal_shop_slider_next{
	position:absolute;
	top:50%;
    width: 50px;
    height: 50px;
	margin-top:-20px;
	background: transparent;
	border:none;
	padding:0;
	cursor:pointer;
	z-index:2;
	transition:background .2s ease;
}



.modal_shop_slider_prev{
    left: -10px;
}

.modal_shop_slider_next{
	right:-10px;
}

.modal_shop_slider_prev::before,
.modal_shop_slider_next::before{
	content:"";
	position:absolute;
	top:50%;
	left:50%;
	width: 20px;
	height: 20px;
	border-top:2px solid #004a2a;
	border-right:2px solid #004a2a;
}

.modal_shop_slider_prev::before{
	transform:translate(-30%,-50%) rotate(-135deg);
}

.modal_shop_slider_next::before{
	transform:translate(-70%,-50%) rotate(45deg);
}

.modal_shop_slider.is-single .modal_shop_slider_prev,
.modal_shop_slider.is-single .modal_shop_slider_next{
	display:none;
}


.modal_shop_name{
	margin-top: 26px;
	font-size: 17px;
	line-height: 1.5;
	font-weight: bold;
	letter-spacing: 0.5px;
	color: #004a2a;
}

.modal_shop_category{
    margin-top: 0px;
    font-size: 12px;
    font-weight: 600;
    color: #004a2a;
}

.modal_shop_desc{
	margin-top: 22px;
	padding-top: 22px;
	border-top: .5px solid #004a2a;
}

.modal_shop_desc p{
	font-weight: 500;
	text-align: justify;
	line-height:1.9;
	letter-spacing:0.4px;
}

.modal_shop_info{
	margin-top:22px;
	padding:22px 0;
	border-top:.5px solid #004a2a;
	display:flex;
	flex-direction:column;
    gap: 3px;
}

.modal_shop_info_row{
	display:flex;
	align-items: flex-start;
}

.modal_shop_info_row dt{
	width:70px;
	flex-shrink:0;
	font-size:13px;
	font-weight: 500;
	color:#004a2a;
}

.modal_shop_info_row dd{
	font-feature-settings: "palt";
	font-size:13px;
	font-weight: 500;
	color:#004a2a;
}

.modal_shop_info_row dd a{
	display:inline-block;
}




	
	.modal_shop_name br{
		display:none;
	}
	
	.modal_shop_category br{
		display:none;
	}
	








#page_faq_sec00.page_img_sec.st_sec{
	padding: 200px 0 0;
}


















/* FAQ accordion
------------------------------------------- */

#page_faq_sec01.st_sec{
	border-bottom:none;
	padding: 60px 0 0;
}

.faq_list{
	width:100%;
	max-width:800px;
	margin:0 auto;
	display:flex;
	flex-direction:column;
}

.faq_box{
	border-top:.5px solid #004a2a;
}

.faq_box:last-child{
	border-bottom:.5px solid #004a2a;
}





.faq_q{
	position:relative;
	width:100%;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:clamp(16px,3vw,24px);
	padding:clamp(15px,3.5vw,32px) 0;
	background:none;
	border:none;
	margin:0;
	cursor:pointer;
	text-align:left;
	font-family:inherit;
	color:#004a2a;
	-webkit-appearance:none;
	appearance:none;
}

.faq_q:focus-visible{
	outline:2px solid #004a2a;
	outline-offset:4px;
}

.faq_q_txt{
	display:flex;
	gap:8px;
	flex:1;
	min-width:0;
	font-size:clamp(13.5px,1.6vw,16px);
	font-weight:600;
	letter-spacing:0.4px;
	line-height:1.7;
	text-align: justify;
}

.faq_q_txt em{
	flex-shrink:0;
	font-style:normal;
}

.faq_q_txt span{
	flex:1;
	min-width:0;
	word-break:break-word;
}

.faq_toggle{
	position:relative;
	flex-shrink:0;
	width: clamp(34px, 4.5vw, 40px);
	height: clamp(34px, 4.5vw, 40px);
	border-radius:333px;
	-webkit-border-radius:333px;
	-moz-border-radius:333px;
	background:#f7c0a7;
}

.faq_toggle::before,
.faq_toggle::after{
	content:"";
	position:absolute;
	top:50%;
	left:50%;
	background:#004a2a;
	transform:translate(-50%,-50%);
	transition:transform .3s ease, opacity .3s ease;
}

.faq_toggle::before{
	width:38%;
	height:2px;
}

.faq_toggle::after{
	width:2px;
	height:38%;
}

.faq_box.is-open .faq_toggle::after{
	transform:translate(-50%,-50%) scaleY(0);
	opacity:0;
}

.faq_a_wrap{
	display:grid;
	grid-template-rows:0fr;
	transition:grid-template-rows .45s cubic-bezier(.65,0,.35,1);
}

.faq_a_wrap .faq_a_inner{
	overflow:hidden;
	min-height:0;
}

.faq_box.is-open .faq_a_wrap{
	
	grid-template-rows:1fr;
}

.faq_a{
	padding-top:clamp(18px,2.6vw,28px);
	padding-bottom:clamp(20px,3vw,32px);
}

.faq_box.is-open .faq_a{
	background: #fff;
	border-top:1px dashed rgba(0,74,42,.4);
}

.faq_a p{
	display:flex;
	gap:8px;
font-size: clamp(13.5px, 1.6vw, 16px);
	font-weight:600;
    letter-spacing: 0.4px;
    line-height: 1.7;
	color:#004a2a;
	text-align: justify;
}

.faq_a em{
	flex-shrink:0;
	font-style:normal;
	font-weight:600;
}

.faq_a span{
	flex:1;
	min-width:0;
}




















.sp_img{
display:none!important;
}






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



}




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


.sp_img{
display:block!important;
}

.pc_img{
display:none!important;
}


	
	
	
	
	
	
	.sub_grand_menu{
		display:block;
	}
	
	
	
	
	.button-navi-icon.close {
	background: transparent;
	}
	
	
	
	
	
	.sub_grand_menu{
		opacity:1;
	}
	
	.main_title {
		margin-bottom: 40px;
	}

	.shop_main_title {
		margin-bottom: 40px;
	}


	.home_menu{
		display:none;
	}
	
	.top_menu_banner {
display:none;
}
	
	
	.inner {
		padding: 0px 27px;
	}
	
	
	
	
	
	
	
	
	
	
	
	
	
	#footer {
		padding: 40px 0 30px;
		margin-top: 70px;
	}
	
	.footer_sp{
		text-align:center;
	}
	
	.f_logo a {
		width: 100px;
	}
	
	#footer .sns_menu a {
	}
	
	.f_logo.sp_img{
		display:flex!important;
		justify-content: center;
		margin-bottom: 30px;
	}
	
	.section {
		padding: 120px 0 0;
	}
	
	
	
	#page_menu {
		padding: 20px 20px;
	}
	
	
	.fv_center {
		position: absolute;
		z-index: 999;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 100%;
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	.main_copy {
		position: relative;
		order: 1;
		width: 64%;
		margin-bottom: 55px;
		top: auto;
		left: auto;
		right: auto;
	}



	.home_logo{
		position: relative;
		order: 2;
		width: 60%;
		top: auto;
		left: auto;
		transform: none;
	}
	
	.st_sec {
		padding: 25px 0 90px;
		margin: 0 0px;
		position: relative;
		border-bottom: 1px solid #004a2a;
	}
	
	
	
	
	.main_title p {
		font-size: 18px;
	}
	
	
	.st_btn {
    margin-top: 30px;
	}
	
	.st_btn a {
		width: 240px;
		padding: 8px 30px;
	}

	.st_btn a::after{
		right:20px;
	}

	.st_btn.sign a::after{
		right:20px;
	}
	
	.st_btn.sign a {
		min-width:300px;
		width: auto;
	}
	
	.news_list{
		border-top: 1px solid rgba(0, 74, 42, .3);
		padding-top:20px;
	}
	
	.news_box {
		gap: 2px;
		flex-direction: column;
		border-bottom: 1px solid rgba(0,74,42,.3);
		padding-bottom: 20px;
	}
	
	.news_box .date p{
		font-size:11px;
	}
	
	
	#page_about_sec01 .top_about_copy {
		margin-top: 40px;
	}
	
	.top_about_copy {
		width: 91%;
	}
	
	.st_note {
		margin-top: 20px;
	}
	
	
	
	
	.news_box .title a {
		line-height:1.5;
	}
	
	
	.news_box .date {
		width: auto;
	}
	
	
	#top_access.st_sec.noboder{
		padding: 25px 0 90px;
	}
	
	
	
	.page_img_sec.st_sec {
		padding: 0px 0 0;
	}
	
	
	.sub_title {
		position: static;
		text-align: center;
	}
	
	
	
	
	.page_content .st_sec{
		padding: 5px 0 90px;
	}
	
	
	.page_content .st_sec.page_img_sec{
		padding: 0px 0 60px;
	}
	
	.page_content .st_sec.ft_sec{
		border-top: 1px solid #004a2a;
	}
	
	
	
	.page_img {
		margin-bottom: 20px;
	}
	
	
	
	
	#top_about {
		padding: 25px 0 90px;
	}
	
	
	
	.about_sec02_zu{
		margin-top:40px;
	}
	
	
	.about_sec02_img {
		flex-direction: column;
		    margin-top: 20px;
	}
	
	
	
	.about_title {
		width: 85%;
	}
	
	
	.about_sec02_box:first-child {
		margin-top: 40px;
	}
	
	.about_sec02_box {
		margin-top: 60px;
	}
	
	
	
	.about_sec03_img{
		padding:30px 20%;
		margin-top: 13px;
	}
	
	
	
	
	.bk_copy{
		margin-top:40px;
		display: flex;
		justify-content: center;
	}
	
	
	
	
	.bk_img {
		margin-top: 30px;
		display: grid;
		grid-template-columns: repeat(1, 1fr);
		grid-column-gap: 0px;
		grid-row-gap: 20px;
	}
	
	
	
	
	
	#page_about_sec02.st_sec{
		padding: 5px 0 110px;
	}
	
	#page_bk_sec00.st_sec.page_img_sec{
		padding: 0px 0 90px;
	}
	
	
	
	
	#page_faq_sec00.page_img_sec.st_sec {
		padding: 25px 0 0;
	}
	
	
	#page_faq_sec00 .main_title {
		margin-bottom: 0px;
	}
	
	
	.faq_q{
		gap:12px;
		padding-left:3px;
		padding-right:3px;
	}

	.faq_q_txt{
		line-height:1.6;
	}

	.faq_a p{
		gap:6px;
		line-height:1.8;
	}

	.faq_a {
		background: #fff;
		padding-left:3px;
		padding-right:15px;
	}
	
	
	

	
	
	#page_shop_sec01,#page_shop_sec02,#page_shop_sec03{
		padding: 30px 0 70px;
	}
	
	.shop_main_title p {
		width: 172px;
	}
	
	
	.shop_img{
		margin-top:20px;
	}
	
	.shop_img .inner{
		padding: 0px 0px;
	}
	
	
	.shop_list > div.shop_floor {
		margin-top: -40px;
		margin-left: 0;
		left: 50%;
		transform: translateX(-50%);
	}
	
	
	.shop_list{
		grid-template-columns: repeat(2, minmax(0, 1fr));
		grid-column-gap: 30px;
		grid-row-gap: 30px;
	}
	
	.shop_list01{
		margin-top:80px;
	}


	.shop_modal_box{
		width:calc(100% - 24px);
		margin:55px 0;
		padding:44px 20px 32px;
		border-radius:12px;
		-webkit-border-radius:12px;
		-moz-border-radius:12px;
	}

	.shop_modal_close{
		top: 8px;
		right: 12px;
	}

	.modal_shop_logo{
		margin-bottom:40px;
	}
	
	.modal_shop_logo img{
		max-width:150px;
	}
	
	
	.modal_shop_slider{
		aspect-ratio:4/2.4;
		border-radius:8px;
		-webkit-border-radius:8px;
		-moz-border-radius:8px;
	}
	
	.modal_shop_slider_prev,
	.modal_shop_slider_next{
		width:32px;
		height:32px;
		margin-top:-16px;
	}
	
	.modal_shop_slider_prev{
		left:10px;
	}

	.modal_shop_slider_next{
		right:10px;
	}
	
	.modal_shop_name{
		margin-top:22px;
        font-size: 15px;
	}

	.modal_shop_info_row{
		gap:16px;
	}

	.modal_shop_info_row dt{
		width:64px;
	}
	
	
	.modal_shop_slide {
		padding: 0px;
	}
	
	.modal_shop_desc {
		margin-top: 15px;
		padding-top: 15px;
	}
	
	
	.modal_shop_info {
		margin-top: 15px;
		padding: 15px 0;
	}
	
	
	
	
	.shop_modal_close::before, .shop_modal_close::after {
		width: 25px;
	}
	
	
	
	.modal_shop_slider_prev::before, .modal_shop_slider_next::before {
		width: 15px;
		height: 15px;
	}
	
	
	
	
	
	.access_park_block{
		flex-direction:column;
		gap:0;
		padding:0;
	}

	.access_park_head{
		width:auto;
		text-align:center;
		padding:5px 0;
		border-bottom:.5px solid #004a2a;
	}

	.access_park_body{
		gap:4px;
		padding:20px 0;
	}

	.access_park_label{
		width:70px;
		font-size:13px;
		line-height: 1.8;
	}

	.access_park_value{
		font-size:13px;
		line-height:1.8;
		word-break:break-all;
		font-feature-settings: "palt";
	}

	.access_park_group{
		font-size:13px;
	}

	.access_park_sep{
		display:none;
	}

	.access_park_break{
		display:block;
	}

	.access_park_row_note{
		width:100%;
	}

	.access_park_row_note .access_park_label{
		display:none;
	}

	.access_park_row_note .access_park_value{
		width:100%;
	}

	.access_park_note_break{
		display:none;
	}

	.access_park_caution{
		padding-top:20px;
		font-size:12.5px;
		line-height:1.9;
	}

	
	.access_park_block.tyurin{
		margin-top:20px;
	}


	
	



}






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



}










