@charset "utf-8";

/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html{font-family: '游ゴシック体','Yu Gothic',YuGothic,Arial,'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Meiryo,Helvetica,'メイリオ',sans-serif;font-size:88%;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}abbr,address,article,aside,audio,b,blockquote,body,canvas,caption,cite,code,dd,del,details,dfn,div,dl,dt,em,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,p,pre,q,samp,section,small,span,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,ul,var,video{margin:0;padding:0;border:0;outline:0;vertical-align:baseline;background:transparent}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{color:#000;background-color:transparent;text-decoration:none}a:active,a:hover{color:#000;outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0;-ms-interpolation-mode:bicubic;vertical-align:bottom;max-width:100%;height:auto}svg:not(:root){overflow:hidden}figure{margin:0}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace;font-size:1em}li{list-style:none}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}img {backface-visibility: hidden;}


/* template style ----------------------*/

body {
	font-size: 14px;
	color:#4d4d4d;
	overflow-x:hidden;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
    background: #fff;
	margin: auto;
	padding: 0;
	font-family: '游ゴシック体',YuGothic,'游ゴシック体 Medium','Yu Gothic Medium','Yu Gothic',Arial,'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Meiryo,Helvetica,'メイリオ',sans-serif;
}
@media screen and (-webkit-min-device-pixel-ratio:0) {
	body{
		color: #222;
	}
}
h1,h2,h3,h4,h5,h6,p,th,td,a {
	font-feature-settings: "palt" 1;
	letter-spacing: 1px;
}
h1,h2,h3,h4,h5,h6,th { font-weight: normal; }

#wrapper { position:relative; }
.sp-bl,
.sp-il,
.sp-ib,
.tablet-bl {
	display:none !important;
}

.inner {
	width:95%;
	max-width:1000px;
	margin-right:auto;
	margin-left:auto;
	position:relative;
}
.opa {
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.opa:hover {
	opacity: 0.85;
	filter: alpha(opacity=85);
}
.opa1 { opacity: 1 !important; }
.w100 { width: 100% !important; }
.h100 { height: 100% !important; }
.none { display: none !important }

.clearfix:before,
.clearfix:after,
.cf:before,
.cf:after {
	content: "";
	display: table;
}
.clearfix:after,
.cf:after {
	clear: both;
}
.clearfix,
.cf {
	zoom: 1;
}

.ta{
	text-align: center;
}

/* fonts ----------------------*/

@font-face{
	font-family: 'Noto Serif';
	font-style: normal;
	font-weight: 400;
	src: url(fonts/NotoSerif/NotoSerifCJKjp-Regular.otf) format('opentype');
	font-display: swap;
}
.notoserif{
	font-family: 'Noto Serif', serif;
	font-weight: 400;
}
@font-face{
	font-family: 'Noto Serif';
	font-style: normal;
	font-weight: 500;
	src: url(fonts/NotoSerif/NotoSerifCJKjp-Medium.otf) format('opentype');
	font-display: swap;
}
.notoserifmedium{
	font-family: 'Noto Serif', serif;
	font-weight: 500;
}

/* header ----------------------*/

#header{
	position: relative;
}

.header{
	height: 115px;
}

.headerLogo{
	float: left;
	margin-top: 27px;
	position: relative;
}

.headerLogo span{
	font-size: 12px;
	line-height: 1;
	letter-spacing: 0.36px;
	position: absolute;
	top: 1px;
	left: 60px;
	white-space: nowrap;
}

.headerLogo img{
	width: 276px;
	height: auto;
}

.headerContact{
	float: right;
	box-sizing: border-box;
	padding-right: 133px;
	position: relative;
}

/*.headerLinkBtn{
	display: inline-block;
	width: 126px;
	height: 28px;
	margin-top: 13px;
}

.headerLinkBtn + .headerLinkBtn{
	margin-left: 5px;
}
*/
.address{
	display: block;
	color: #483826;
	font-size: 13px;
	letter-spacing: 0.1px;
	line-height: 1;
	margin: 29px 0 13px;
}

.headerTel{
	display: block;
	width: 253px;
	height: auto;
	margin: auto;
}

.headerModalBtn{
	position: absolute;
	right: 0;
	top: 0;
	width: 110px;
	height: 85px;
	text-align: center;
	color: #fff;
	font-size: 15px;
	line-height: 2.25;
	letter-spacing: 0.91px;
	padding-top: 47px;
	box-sizing: border-box;
	background: url(../../img/common/pc/icon_reserve.png) no-repeat top 15px center #b1c55d;
	background-size: 30px auto;
	transition: .4s ease-in-out;
}

.headerModalBtn:hover{
	color: #fff;
	opacity: 0.8;
	background-position: top 12px center;
}

.reserveModal{
	position: absolute;
	top: 175px;
	left: 0;
	right: 0;
	margin: auto;
	/*max-width: 750px;*/
	max-width: 1000px;
	height: 320px;
	background: #fff;
	border: 7px solid #b1c55d;
	border-radius: 20px;
	padding: 52px 48px 0;
	box-sizing: border-box;
	text-align: center;
	font-size: 0;
	z-index: 100;
	opacity: 0;
	pointer-events: none;
	transition: .5s;
}

.reserveModal.active{
	opacity: 1;
	pointer-events: auto;
}

.modalTxt{
	display: block;
	font-size: 18px;
	letter-spacing: 1.44px;
	line-height: 1;
	border-bottom: 1px dashed #b3b3b3;
	padding-bottom: 40px;
	margin-bottom: 35px;
}

.modalTxt br{
	display: none;
}

.modalTel,.modalWeb,.modalMedical{
	/*width: 45.901%;*/
	width: 31.45%;
	display: inline-block;
	vertical-align: bottom;
}

.modalWeb,.modalMedical{
	/*margin-left: 8.196%;*/
	margin-left: 2.8%;
}

.modalTel span,.modalWeb span,.modalMedical span{
	display: inline-block;
	color: #483826;
	font-size: 20px;
	letter-spacing: 1px;
	line-height: 21px;
	margin-bottom: 15px;
}

.modalTel span{
	background: url(../../img/common/pc/icon_modalTel.png) no-repeat left center/contain;
	padding-left: 24px;
}

.modalWeb span{
	background: url(../../img/common/pc/icon_modalWeb.png) no-repeat left center/contain;
	padding-left: 27px;
}

.modalMedical span{
	background: url(../../img/common/pc/icon_modalMedical.png) no-repeat left center/contain;
	padding-left: 22px;
}

.modalTelBtn,.modalWebBtn,.modalMedicalBtn{
	display: block;
	max-width: none !important;
	width: 100% !important;
}

.modalTelBtn{
	font-size: 24px !important;
	letter-spacing: 1.2px !important;
	background: url(../../img/common/pc/icon_btn.png) no-repeat right 20px center/8px auto,
				url(../../img/common/pc/icon_modalTelBtn.png) no-repeat calc(50% - 93px) center/16px auto #f3b289 !important;
	padding-left: 5px;
	box-sizing: border-box;
}

.modalTelBtn:hover{
	background-position: right 17px center,
						 calc(50% - 93px) center !important;
}

.modalWebBtn{
	font-size: 20px !important;
	letter-spacing: 1px !important;
	background-position: right 20px center !important;
}

.modalWebBtn:hover{
	background-position: right 17px center !important;
}



.modalClose{
	position: absolute;
	right: -27px;
	top: -26px;
	width: 59px;
	height: 59px;
	background: url(../../img/common/pc/btn_modalClose.png) no-repeat center/cover;
	z-index: 101;
	cursor: pointer;
}

#gnavi{
	height: 60px;
	background-color: #483826;
	position: relative;
}

#gnavi.fixed{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
}

.gnavi li{
	float: left;
	display: block;
	width: 16.666%;
	text-align: center;
}

.gnavi a{
	display: block;
	color: #fff;
	font-size: 15px;
	letter-spacing: 0.75px;
	line-height: 60px;
	transition: .3s ease-in-out;
	cursor: default;
	background: url(../../img/common/pc/icon_gnavi.png) no-repeat center bottom/0 #483826;
}

.gnavi a:hover{
	background-color: #362a1c;
}

.menu1 a:hover,.menu2 a:hover,.menu3 a:hover,.menu4 a:hover,.menu5 a:hover{
	background-size: 12px auto;
}

.gnavi li:first-child a{
	cursor: pointer;
}

.gnavi_hover{
	text-align: center;
	background: #fff;
	width: 100%;
	height: 120px;
	position: absolute;
	top: 60px;
	left: 0;
	font-size: 0;
	opacity: 0;
	z-index: 3;
	pointer-events: none;
	transition: .3s ease-in-out;
}

.gnavi_hover.active{
	opacity: 1;
	pointer-events: auto;
}

.gnavi_hover li{
	float: none;
	display: inline-block;
	width: 13.235%;
	max-width: 180px;
	height: 48px;
	margin-top: 36px;
	border-bottom: 3px solid transparent;
	border-left: 1px dashed #483826;
	box-sizing: border-box;
	transition: .3s ease-in-out;
}

.gnavi_hover li:last-child{
	border-right: 1px dashed #483826;
}

.gnavi_hover li:hover{
	border-bottom: 3px solid #b1c55d;
}

.gnavi_hover a{
	display: block;
	color: #483826;
	font-size: 15px;
	letter-spacing: 0.75px;
	line-height: 48px;
	cursor: pointer;
}

.gnavi_hover a:hover{
	background-color: transparent;
}

.gnavi_hover li i{
	display: inline-block;
    font-style: normal;
    width: 15px;
    margin-left: 5px;
    vertical-align: 1px;
    line-height: 1;
}

.hover3 li:nth-child(2){
	width: 21.323%;
	max-width: 290px;
}

.hover5 li:nth-child(3){
	width: 16.666%;
	max-width: 230px;
}

.gnaviBtn,.spOnlyMenu{
	display: none;
}

@media screen and (max-width: 1260px) {
.gnavi_hover a{
	font-size: 13px;
}
.gnavi_hover li{
	width: 14.235%;
}
.hover3 li:nth-child(2){
	width: 25.323%;
}
.hover5 li:nth-child(3){
	width: 20.666%;
}
}


/* main ----------------------*/

#main{
	position: relative;
}
#main.modalActive:before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #fff;
	opacity: .5;
	z-index: 99;
}

#breadcrumb{
	padding-top: 35px;
}

#breadcrumb li{
	float: left;
	font-size: 12px;
	letter-spacing: 0.96px;
	line-height: 1;
	position: relative;
	font-feature-settings: "palt";
}

#breadcrumb li.active a,#breadcrumb li.active a:hover{
	color: #AEC25D;
}

#breadcrumb li + li{
	margin-left: 25px;
}

#breadcrumb li + li:before{
	content: "";
	width: 6px;
	height: 12px;
	position: absolute;
	left: -16px;
	top: 0;
	background: url(../../img/common/pc/icon_bread.png) no-repeat center;
	background-size: 6px 10px;
}

#page_mv{
	background: url(../../img/common/pc/bg_h2.jpg) no-repeat center;
	background-size: cover;
	height: 230px;
}

#page_mv h2{
	color: #483826;
	font-size: 38px;
	letter-spacing: 3.8px;
	line-height: 1;
	padding-top: 125px;
	text-align: center;
}

.pageBtn{
	display: inline-block;
	max-width: 210px;
	line-height: 60px;
	text-align: center;
	color: #fff;
	font-size: 18px;
	letter-spacing: 0.9px;
	background: url(../../img/common/pc/icon_btn.png) no-repeat right 15px center #b1c55d;
	background-size: 8px 11px;
	transition: .4s ease-in-out;
}
.pageBtn.blankBtn{
	background: url(../../img/common/pc/icon_blank_w.svg) no-repeat right 18px center #b1c55d;
	background-size: 15px 14px;
	background-position: right 18px center;
}
.pageBtn.modalMedicalBtn{
	background: url(../../img/common/pc/icon_blank_w.svg) no-repeat right 18px center #78bacf;
	background-size: 15px 14px;
	background-position: right 18px center;
}

.pageBtn + .pageBtn{
	margin-left: 20px;
}
.pageBtn + .pageBtn + .pageBtn{
	margin-left: 0;
	margin-top: 20px;
}

.pageBtn:hover{
	color: #fff;
	background-position: right 12px center;
	opacity: 0.8;
}
.blankBtn:hover,
.modalMedicalBtn:hover{
	background-position: right 18px center;
}

#obLink{
	margin-top: 80px;
	background: #fafbf1;
	text-align: center;
	padding: 50px 0;
}

#obLink ul{
	font-size: 0;
}

#obLink li{
	width: 48%;
	display: inline-block;
}

#obLink li + li{
	margin-left: 4%;
}

#obLink li a{
	display: block;
	max-width: 480px;
	width: 100%;
	font-size: 20px;
	letter-spacing: 1px;
	background-position: right 30px center;
}
#obLink li a:hover{
	background-position: right 27px center;
}

#bnr{
	margin-top: 80px;
	max-width: 700px;
}

#bnr a{
	display: block;
	text-align: center;
}

.instaBnr{
	margin-bottom: 40px;
}


/* footer ----------------------*/

#footer{
	padding-top: 160px;
	margin-top: -160px;
}

.footerInfo{
	padding-bottom: 140px;
	text-align: center;
}

.infoLeft{
	float: left;
	width: 540px;
	margin-right: 7.5%;
}

.info img{
	float: left;
	width: 267px;
	height: auto;
}

.footerAddress{
	float: right;
	text-align: right;
}

.footerAddress span{
	display: block;
	color: #483826;
	font-size: 12px;
	letter-spacing: 0.24px;
	margin-top: 4px;
	margin-bottom: 6px;
}

.footerAddress img{
	float: none;
	width: 235px;
}

.openTime{
	width: 100%;
	font-size: 15px;
	color: #483826;
	letter-spacing: 0.75px;
	line-height: 46px;
	margin-top: 40px;
}

.openTime th{
	background-color: #dad7d4;
	border-right: 1px solid #fff;
	width: 10.74%;
}

.openTime th:first-child{
	width: auto;
}

.openTime th:last-child{
	border-right: 1px solid #dad7d4;
}

.openTime td{
	text-align: center;
	border-right: 1px solid #dad7d4;
	border-bottom: 1px solid #dad7d4;
}

.openTime td:first-child{
	border-left: 1px solid #dad7d4;
}

.openTime tr:nth-child(2) td:first-child{
	text-indent: 0.6em;
}

.openTime td.open{
	background: url(../../img/common/pc/icon_opentime.png) no-repeat center;
	background-size: 16px;
}

.openTime td.close{
	background: url(../../img/common/pc/icon_closetime.png) no-repeat center;
	background-size: 15px 5px;
}

.info2{
	margin: 30px 0 35px;
}

.closeTime{
	float: left;
	width: 34.814%;
	margin-right: 5.185%;
	box-sizing: border-box;
	border: 1px solid #b1c55d;
	font-size: 15px;
	letter-spacing: 0.75px;
	line-height: 51px;
	font-feature-settings: "palt";
}

.closeTime span{
	display: block;
	line-height: 37px;
	background-color: #dfe7bc;
}

.kome{
	float: left;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	line-height: 1.66;
	text-align: left;
	font-size: 15px;
	letter-spacing: 0.75px;
	padding: 18px;
	width: 60%;
	height: 90px;
	box-sizing: border-box;
	border: 3px solid #b1c55d;
}

.infoLeft .pageBtn{
	width: 38.888%;
}

.infoRight{
	float: left;
	width: 38.5%;
}

.infoRight img{
	margin-bottom: 32px;
}

.infoRight .pageBtn{
	width: 54.687%;
}

.footerSitemap{
	background-color: #f9faf2;
	padding: 45px 0 50px;
}

.sitemapList{
	float: left;
	width: 16.5%;
	margin-right: 4.375%;
	color: #483826;
}

.sitemapList:last-child{
	margin-right: 0;
}

.sitemapList h4{
	font-size: 16px;
	letter-spacing: 0.8px;
	font-weight: bold;
	line-height: 1;
	padding-bottom: 9px;
	margin-bottom: 17px;
	border-bottom: 1px solid #483826;
}

.sitemapList ul li{
	margin-bottom: 10px;
	background: url(../../img/common/pc/icon_sitemap.png) no-repeat left top 5px;
	background-size: 6px 7px;
	padding-left: 13px;
	line-height: 1.4; 
}

.sitemapList ul li a{
	color: #483826;
	font-size: 13px;
	letter-spacing: 0.65px;
	transition: .5s;
}

.sitemapList ul li a:hover{
	color: #6c5417;
	opacity: 0.8;
}
.sitemapList ul li a i{
	display: inline-block;
	line-height: 1;
	font-style: normal;
	width: 10px;
	vertical-align: 1px;
	margin-left: 3px;
}

.copyright{
	background-color: #483826;
	text-align: center;
	line-height: 60px;
	color: #fff;
	font-size: 12px;
	letter-spacing: 0.6px;
}

@media screen and (max-width: 1067px) {
	.infoLeft{
		float: none;
		margin: auto;
	}
	.infoRight{
		float: none;
		width: 540px;
		margin: 80px auto 0;
	}
}

/* sp-parts ----------------------*/
@media screen and (max-width:768px) { /* smart phone 6〜7 */

	.pc { display:none !important; }
	.sp-bl { display:block !important; }
	.sp-il { display:inline !important; }
	.sp-ib { display: inline-block !important; }

	.inner {
		width:87.5%;
		max-width:560px;
	}
}

/* sp-header ----------------------*/
@media screen and (max-width:1024px) {
	#header{
		position: fixed;
		top: 0;
		left: 0;
		z-index: 11;
		background: #fff;
		width: 100%;
	}
	#header.modalActive{
		z-index: 100;
	}
	.header{
		height: auto;
	}
	.header.inner{
		width: 100%;
		max-width: none;
	}
	.headerLogo{
		float: none;
		margin-top: 0;
		height: 80px;
	}
	.headerLogo.modalActive,.gnaviBtn.modalActive{
		opacity: .5;
		pointer-events: none;
	}
	.headerLogo span{
		display: block;
		width: 100%;
		text-align: center;
		background-color: #eff3df;
		top: 0;
		left: 0;
		font-size: 9px;
		letter-spacing: 0.45px;
		line-height: 20px;
		pointer-events: none;
	}
	.headerLogo img{
		width: 171px;
		height: auto;
		margin: auto;
		position: absolute;
		top: 20px;
		left: 0;
		right: 0;
	}
	.headerContact{
		display: none;
	}
	.gnaviBtn{
		display: block;
		width: 60px;
		height: 60px;
		position: absolute;
		top: 20px;
		right: 0;
		background: url(../../img/common/sp/btn_menu.jpg) no-repeat center/cover;
		transition: .3s;
	}
	.gnaviBtn.active{
		background: url(../../img/common/sp/btn_close.jpg) no-repeat center/cover;
	}
	.telBtn{
		display: block;
		width: 60px;
		height: 60px;
		position: absolute;
		top: 20px;
		left: 0;
		background: url(../../img/common/sp/btn_tel.jpg) no-repeat center;
		background-size: cover;
	}
	.telBtn.modalActive{
		background-image: url(../../img/common/sp/btn_tel_close.jpg);
	}
	#gnavi{
		position: fixed;
		top: 80px;
		bottom: unset;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		-ms-overflow-style: none;
		background-color: rgba(255,255,255,.9);
		width: 100%;
		height: auto;
		z-index: 10;
		display: none;
	}
	.gnavi.inner{
		width: 100%;
		max-width: none;
	}
	.gnavi li{
		float: none;
		width: 100%;
		height: 45px;
		background: url(../../img/common/sp/icon_plus.png) no-repeat right 15px center #483826;
		background-size: 12px 13px;
		text-align: left;
		box-sizing: border-box;
		transition: margin-bottom .5s ease-in-out;
	}
	.gnavi li:first-child{
		display: none;
	}
	.gnavi li:nth-child(n+3){
		border-top: 1px solid #fff;
	}
	.gnavi li.open{
		background: url(../../img/common/sp/icon_minus.png) no-repeat right 15px center #483826;
		background-size: 12px 3px;
	}
	.gnavi a{
		letter-spacing: 1.5px;
		line-height: 44px;
		padding-left: 38px;
		margin-right: 43px;
	}
	.gnavi a:hover{
		background-color: #483826;
		line-height: 44px;
	}
	.menu1 a:hover, .menu2 a:hover, .menu3 a:hover, .menu4 a:hover, .menu5 a:hover{
		background-size: 0;
	}
	.gnavi_hover{
		text-align: left;
		background-color: #fff;
		height: auto;
		z-index: 11;
		pointer-events: none;
		transition: .5s ease-in-out;
	}
	.gnavi_hover li{
		display: block;
		width: 100%;
		max-width: none;
		height: 45px;
		margin-top: 0;
		border-bottom: none;
		border-bottom: 1px dashed #483826;
		border-left: none;
	}
	.gnavi_hover li:last-child{
		border-right: none;
		border-bottom: none;
	}
	.gnavi_hover li:hover{
		border-bottom: 1px dashed #483826;
	}
	.gnavi_hover a{
		position: relative;
		color: #483826;
		font-size: 13px;
		letter-spacing: 1.3px;
		line-height: 45px;
		padding: 0 20px 0 38px;
	}
	.gnavi_hover li i{
		position: absolute;
		right: 20px;
		top: 50%;
		transform: translateY(-50%);
	    width: 13px;
	}

	.spOnlyMenu{
		display: block;
	}
	.spOnlyMenu li{
		float: left;
		width: 50%;
		height: 45px;
		background: #dad7d4;
		text-align: center;
		box-sizing: border-box;
	}
	.hover1{
		top: 45px;
	}
	.hover2{
		top: 90px;
	}
	.hover3{
		top: 135px;
	}
	.hover3 li:nth-child(2){
		width: 100%;
		max-width: none;
	}
	.hover4{
		top: 180px;
	}
	.hover5{
		top: 225px;
	}
	.hover5 li:nth-child(3){
		width: 100%;
		max-width: none;
	}
	.spOnlyMenu li:nth-child(2n){
		border-right: 1px solid #fff;
	}
	.spOnlyMenu li:nth-child(n+4){
		border-top: 1px solid #fff;
	}
	.spOnlyMenu li:last-child{
		border: none;
	}
	.spOnlyMenu a{
		display: block;
		color: #483826;
		font-size: 13px;
		letter-spacing: 0.39px;
		line-height: 45px;
	}
	.spOnlyMenu li.closeBtn{
		width: 100%;
		height: 56px;
		font-size: 15px;
		letter-spacing: 1.5px;
		line-height: 56px;
		background: url(../../img/common/sp/icon_close.png) no-repeat calc(50% - 32px) center;
		background-size: 18px;
		padding-left: 20px;
	}
	.reserveModal{
		max-width: none;
		width: 100%;
		top: 80px;
		border: 5px solid #b1c55d;
		border-radius: 0;
		height: auto;
		padding: 25px 15px 30px;
	}
	.modalTxt{
		font-size: 14px;
		letter-spacing: 1.12px;
		line-height: 1.78;
		padding-bottom: 15px;
		margin-bottom: 20px;
	}
	.modalTxt br{
		display: block;
	}
	.modalTel, .modalWeb, .modalMedical{
		width: 250px;
		display: block;
		margin: auto;
	}
	.modalWeb{
		margin-left: auto;
		margin-top: 20px;
	}
	.modalMedical{
		margin-left: auto;
		margin-top: 20px;
	}
	.modalTel span, .modalWeb span, .modalMedical span{
		font-size: 18px;
		letter-spacing: 0.9px;
		line-height: 19px;
		margin-bottom: 10px;
	}
	.modalTel span{
		padding-left: 21px;
	}
	.modalWeb span{
		padding-left: 24px;
	}
	.modalMedical span{
		padding-left: 19px;
	}
	.modalTelBtn{
		font-size: 22px !important;
		letter-spacing: 1.1px !important;
		background: url(../../img/common/pc/icon_btn.png) no-repeat right 15px center/8px auto,     url(../../img/common/pc/icon_modalTelBtn.png) no-repeat calc(50% - 82px) center/15px auto #f3b289 !important;
		padding-left: 10px;
	}
	.modalTelBtn:hover{
		background-position: right 12px center,calc(50% - 82px) center !important;
	}
	.modalWebBtn{
		background-position: right 15px center !important;
		font-size: 18px !important;
		letter-spacing: 0.9px !important;
	}
	.modalWebBtn:hover{
		background-position: right 12px center !important;
	}
	.modalMedicalBtn{
		background-position: right 15px center !important;
	}
	.modalClose{
		top: unset;
		bottom: -61px;
		right: -5px;
		width: 100%;
		height: 46px;
		border: 5px solid #fff;
		background: url(../../img/common/sp/icon_close.png) no-repeat calc(50% - 31px) center/18px auto #fff;
		z-index: 100;
	}
	.modalClose:after{
		content: "閉じる";
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		width: 100%;
		height: 46px;
		line-height: 46px;
		font-size: 15px;
		letter-spacing: 1.5px;
		padding-left: 20px;
		box-sizing: border-box;
	}
	#page_mv{
		margin-top: 80px;
	}
	#page_mv h2{
		font-size: 28px;
		letter-spacing: 2.8px;
		padding-top: 130px;
	}
}

/* sp-main ----------------------*/
@media screen and (max-width:768px) {
	.pageBtn{
		line-height: 50px;
	}
	#bnr{
		margin-top: 60px;
		max-width: 560px;
	}
}
@media screen and (max-width:414px) {
	#obLink{
		margin-top: 50px;
		padding: 25px 0;
	}
	#obLink li{
		width: 100%;
		max-width: 280px;
	}
	#obLink li + li{
		margin-left: 0;
		margin-top: 20px;
	}
	#obLink li a{
		font-size: 18px;
		background-position: right 20px center;
	}
}

/* sp-footer ----------------------*/
@media screen and (max-width:768px) {
	#footer{
		padding-top: 80px;
		margin-top: -80px;
	}
	#footer.modalActive{
		opacity: .5;
		pointer-events: none;
	}
	.footerInfo{
		padding-bottom: 50px;
	}
	.infoLeft{
		float: none;
		width: 100%;
		margin-right: 0;
	}
	.info img{
		float: none;
		width: 76.071%;
		max-width: 276px;
	}
	.footerAddress{
		float: none;
		text-align: center;
		margin-top: 25px;
		border-top: 1px solid #ccc;
	}
	.footerAddress span{
		letter-spacing: 0.72px;
		margin-top: 25px;
		margin-bottom: 12px;
	}
	.footerAddress img{
		width: 91.071%;
		max-width: 276px;
		display: block;
		margin-left: auto;
		margin-right: auto;
	}
	.infoLeft .pageBtn{
		width: 89.289%;
		max-width: 250px;
		margin-top: 25px;
		display: block;
		margin-left: auto;
		margin-right: auto;
	}
	.openTimeSp{
		margin-top: 50px;
	}
	.time1,.time2{
		display: inline-block;
	    color: #483826;
	    font-size: 12px;
	    letter-spacing: 0.6px;
	    line-height: 24px;
	}
	.time2{
		margin-left: 28px;
	}
	.time1 span,.time2 span{
		display: inline-block;
		width: 40px;
		line-height: 24px;
		font-size: 12px;
		letter-spacing: 0.6px;
		color: #fff;
		background: #78bacf;
		border-radius: 8.73px;
		margin-right: 6px;
	}
	.openTime{
		margin-top: 14px;
		font-size: 12px;
		letter-spacing: 0.6px;
		line-height: 42px;
	}
	.openTime th,.openTime th:first-child{
		width: 12.142%;
		font-size: 11px;
		letter-spacing: 0.55px;
		line-height: 35px;
	}
	.openTime td.time{
		font-size: 0;
		white-space: nowrap;
	}
	.openTime tr:nth-child(2) td.time:before{
		content: "午前";
		font-size: 12px;
		display: block;
		margin-bottom: -42px;
	}
	.openTime tr:nth-child(3) td.time:before{
		content: "午後";
		font-size: 12px;
		display: block;
		margin-bottom: -42px;
	}
	.openTime tr:nth-child(2) td:first-child{
		text-indent: 0;
	}
	.openTime td.open{
		background-size: 13px;
	}
	.openTime td.close{
		background-size: 12px 4px;
	}
	.closeTime{
		float: none;
		width: 100%;
		margin-right: 0;
		font-size: 14px;
		letter-spacing: 0.7px;
	}
	.info2{
		margin: 20px auto 0;
	}
	.kome{
		width: 100%;
		line-height: 1.78;
		margin-top: 20px;
		font-size: 14px;
		letter-spacing: initial;
	}
	.infoLeft .info2 ~ .pageBtn{
		margin-top: 30px;
	}
	.infoLeft .info2 ~ .pageBtn + .pageBtn{
		margin-top: 10px;
		margin-left: auto;
	}
	.infoRight{
		float: none;
		width: 100%;
		margin-top: 60px;
	}
	.infoRight img{
		box-sizing: border-box;
		padding-left: 3%;
		margin-bottom: 40px;
	}
	.infoRight .pageBtn{
		width: 89.289%;
		max-width: 250px;
	}
	.footerSitemap{
		display: none;
	}
	.copyright{
		line-height: 40px;
		font-size: 10px;
		letter-spacing: 0.5px;
	}
}
/* animation -----------------------*/

.animated {
	animation-duration: 1s;
	animation-fill-mode: both;
}
.animated1_5 {
	animation-duration: 1.5s;
	animation-fill-mode: both;
}
.animated2 {
	animation-duration: 2s;
	animation-fill-mode: both;
}
.animated3 {
	animation-duration: 3s;
	animation-fill-mode: both;
}
.animated.infinite {
	animation-iteration-count: infinite;
}

/* fade in right */

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 15px, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

.fadeInUp {
  animation-name: fadeInUp;
}

/* fade in */

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.fadeIn {
  animation-name: fadeIn;
}

/* fade in */

@keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

.fadeOut {
  animation-name: fadeOut;
}


/* fade in up in main contents */

@-webkit-keyframes mainFI {
	0% { opacity: 0; }
	100% { opacity: 1; }
}
@keyframes mainFI {
	0% { opacity: 0; }
	100% { opacity: 1; }
}

.mainFI {
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
	-webkit-animation-duration:1.6s;
	-ms-animation-duration:1.6s;
	animation-duration:1.6s;
	-webkit-animation-name: mainFI;
	animation-name: mainFI;
	visibility: visible !important;
	opacity: 0;
}

/* fade in up in up main contents */

@-webkit-keyframes mainFIU {
	0% {
		opacity: 0;
		-webkit-transform: translate(0, 20px);
		transform: translate(0, 20px, 0); 
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		transform: none; 
	}
}
@keyframes mainFIU {
	0% {
		opacity: 0;
		-webkit-transform: translate(0, 20px);
		transform: translate(0, 20px); 
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		transform: none; 
	}
}

.mainFIU {
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
	-webkit-animation-duration:.6s;
	-ms-animation-duration:.6s;
	animation-duration:1s;
	-webkit-animation-name: mainFIU;
	animation-name: mainFIU;
	visibility: visible !important;
	opacity: 0;
}

/* fade in up in up main contents */

@-webkit-keyframes mainFID {
	0% {
		opacity: 0;
		-webkit-transform: translate(0, -35px);
		transform: translate(0, -35px, 0); 
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		transform: none; 
	}
}
@keyframes mainFID {
	0% {
		opacity: 0;
		-webkit-transform: translate(0, -35px);
		transform: translate(0, -35px); 
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		transform: none; 
	}
}

.mainFID {
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
	-webkit-animation-duration:1.25s;
	-ms-animation-duration:1.25s;
	animation-duration:1.25s;
	-webkit-animation-name: mainFID;
	animation-name: mainFID;
	visibility: visible !important;
	opacity: 0;
}


/* fade in up in up for late main contents */

@-webkit-keyframes mainFIU_late {
	0% {
		opacity: 0;
		-webkit-transform: translate(0, 20px);
		transform: translate(0, 20px, 0); 
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		transform: none; 
	}
}
@keyframes mainFIU_late {
	0% {
		opacity: 0;
		-webkit-transform: translate(0, 20px);
		transform: translate(0, 20px); 
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		transform: none; 
	}
}

.mainFIU_late {
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
	-webkit-animation-duration:2s;
	-ms-animation-duration:2s;
	animation-duration:2s;
	-webkit-animation-name: mainFIU_late;
	animation-name: mainFIU_late;
	visibility: visible !important;
	opacity: 0;
}


@-webkit-keyframes mainFIR {
	0% {
		opacity: 0;
		-webkit-transform: translate(20px,0);
		transform: translate(20px,0); 
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		transform: none; 
	}
}
@keyframes mainFIR {
	0% {
		opacity: 0;
		-webkit-transform: translate(20px,0);
		transform: translate(20px,0); 
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		transform: none; 
	}
}

.mainFIR {
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
	-webkit-animation-duration:.6s;
	-ms-animation-duration:.6s;
	animation-duration:.6s;
	-webkit-animation-name: mainFIR;
	animation-name: mainFIR;
	visibility: visible !important;
	opacity: 0;
}


@-webkit-keyframes mainFIL {
	0% {
		opacity: 0;
		-webkit-transform: translate(-40px,0);
		transform: translate(-40px,0); 
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		transform: none; 
	}
}
@keyframes mainFIL {
	0% {
		opacity: 0;
		-webkit-transform: translate(-40px,0);
		transform: translate(-40px,0); 
	}
	100% {
		opacity: 1;
		-webkit-transform: none;
		transform: none; 
	}
}

.mainFIL {
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
	-webkit-animation-duration:1.6s;
	-ms-animation-duration:1.6s;
	animation-duration:1.6s;
	-webkit-animation-name: mainFIL;
	animation-name: mainFIL;
	visibility: visible !important;
	opacity: 0;
}

.sawarabimincho {
	font-family: "Sawarabi Mincho" !important;
}

