*{	
	font-family: 'Noto Sans JP', sans-serif;
	font-feature-settings: "palt";
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: #464646;
	box-sizing: border-box;
	word-break: break-all;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: 1.8;
	letter-spacing: 0.1em;
	text-align: justify;
}

.lato{ font-family: 'Lato', sans-serif; font-weight: 700; }

a{ transition: .3s; }
a:hover{ opacity: .6; }
br{ line-height: inherit; }
span, a, strong, small{ color: inherit; font-size: inherit; font-family: inherit; font-weight: inherit; letter-spacing: inherit; }

.wrap{ width: 900px; margin: 0 auto; position: relative; }
.row{ display: flex; justify-content: space-between; }

.linkwrap{ width: 100%; height: 100%; display: block; position: absolute; top: 0; left: 0; z-index: 10; }
.body-wrap{ overflow: hidden; position: relative; }

.sp{ display: none; }

footer{ background: #f6f6f6; padding: 70px 0 20px; }
footer h2{ margin-bottom: 45px; }
footer h3{ font-size: 30px; font-weight: 700; color: #861b20; text-align: center; line-height: 1.6; margin-bottom: 1em; }
footer h3 span{ font-size: 26px; }
footer h3 + p{ font-size: 24px; text-align: center; margin-bottom: 50px; }
footer .clinic-list > li{ width: 430px; background: #fff; padding: 0 25px 33px; border-radius: 0 0 40px 40px; }
footer .clinic-list > li h4{ font-size: 26px; font-weight: 700; color: #861b20; text-align: center; margin-top: -1em; margin-bottom: .2em; }
footer .clinic-list > li img{ display: block; width: 100%; margin-bottom: 14px; }
footer .clinic-list .access{ height: 75px; /**margin-bottom: 25px;*/ }
footer .clinic-list .access li:before{ content: '・'; }
footer .clinic-list .resv{ width: 340px; height: 60px; border-radius: 30px; background: #861b20; font-size: 20px; font-weight: 700; color: #fff; display: flex; justify-content: center; align-items: center; margin: 20px auto 20px; }
footer .clinic-list .resv span{ padding-left: 40px; background: url(../images/icon-resv02.png) no-repeat left center/31px; }
footer .clinic-list dl{ display: table; margin: 0 auto 8px; }
footer .clinic-list dl dt{ font-size: 18px; text-align: center; color: #861b20; border-bottom: solid 1px; padding-bottom: .3em; }
footer .clinic-list dl dd .tel{ font-size: 30px; color: #861b20; padding-left: 33px; line-height: 1.6; background: url(../images/icon-tel01.png) no-repeat left center/24px; }
footer .clinic-list h5{ text-align: center; }
footer .clinic-list .time{ display: table; margin: 0 auto; }
footer .clinic-list .time li strong{ font-weight: 700; }
footer .clinic-list .time li strong:after{ content: '…'; margin: 0 .4em; }
footer .copy{ display: block; text-align: center; font-size: 12px; margin-top: 45px; }

.menu-btn{ width: 79px; height: 79px; background: #861b20; border-radius: 0 0 0 30px; position: fixed; top: 0; right: 0; z-index: 10000; transition: .5s; display: flex; justify-content: center; align-items: center; cursor: pointer; }
.menu-btn.active{ background: #fff; }
.menu-btn .inner{ width: 30px; height: 20px; position: relative; }
.menu-btn .inner span{ width: 100%; height: 1px; background: #fff; transition: .5s; position: absolute; left: 0; }
.menu-btn.active .inner span{ background: #861b20; }
.menu-btn .inner span:nth-of-type(1){ top: 0; }
.menu-btn .inner span:nth-of-type(2){ top: 50%; transform: translateY(-50%); }
.menu-btn .inner span:nth-of-type(3){ bottom: 0; }
.menu-btn.active .inner span:nth-of-type(1){ transform: translate(0,6px) rotate(45deg); }
.menu-btn.active .inner span:nth-of-type(2){ opacity: 0; }
.menu-btn.active .inner span:nth-of-type(3){ transform: translate(0,-13px) rotate(-45deg); }

nav{ width: 340px; background: #861b20; padding: 50px 0 60px 50px; position: fixed; top: 0; right: -340px; z-index: 9998; border-radius: 0 0 0 40px; transition: .5s; }
nav.active{ right: 0; }
nav ul li{ color: #fff; font-size: 18px; font-weight: 700; line-height: 2.4; }
nav ul li a:before{ content: '・'; margin-right: .4em; }

.float-btn{ width: 180px; height: 70px; background: #861b20; display: flex; align-items: center; justify-content: center; font-size: 18px; font-weight: 700; color: #fff; line-height: 1.3; position: fixed; bottom: 100px; right: 0; z-index: 9996; border-radius: 0 0 0 20px; }
.float-btn span{ background: url(../images/icon-resv02.png) no-repeat left center/31px; padding-left: 40px; }

ul.clinic-list+ul.clinic-list{margin-top: 3em;}



@media(max-width: 768px){
	*{ font-size: 3.73vw; }

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

	.wrap{ width: 100%; padding-left: 5.33vw; padding-right: 5.33vw; }
	.row{ flex-wrap: wrap; }

	footer{ padding: 0 0 16vw; position: relative; z-index: 0; }
	footer:before{ content: ''; width: 100%; height: 11vw; background: #fff; position: absolute; top: 0; left: 0; z-index: -1; }	
	footer h2{ margin-bottom: 12vw; }
	footer h3{ font-size: 8vw; }
	footer h3 span{ font-size: 6.93vw; }
	footer h3 + p{ font-size: 6.13vw; margin-bottom: 14.93vw; }
	footer .clinic-list > li{ width: 100%; padding: 0 5.33vw 9.33vw; border-radius: 0 0 8vw 8vw; }
	footer .clinic-list > li + li{ margin-top: 11.73vw; }
	footer .clinic-list > li h4{ font-size: 6.93vw; margin-bottom: 1em; }
	footer .clinic-list > li img{ margin-bottom: 4vw; }
	footer .clinic-list .access{ height: auto; margin-bottom: 5.87vw; }
	footer .clinic-list .resv{ width: 100%; height: 16vw; border-radius: 8vw; font-size: 5.33vw; margin-bottom: 6.67vw; }
	footer .clinic-list .resv span{ padding-left: 10.67vw; background-size: 8.4vw; }
	footer .clinic-list dl{ margin-bottom: 2vw; }
	footer .clinic-list dl dt{ font-size: 4.8vw; }
	footer .clinic-list dl dd .tel{ font-size: 8vw; padding-left: 8.8vw; background-size: 6.4vw; }
	footer .clinic-list .time li{ text-align: center; }
	footer .clinic-list .time li strong{ display: block; text-align: center; }
	footer .clinic-list .time li strong:after{ content: none; }
	footer .copy{ font-size: 3.2vw; margin-top: 5.33vw; }

	.menu-btn{ width: 18.67vw; height: 18.67vw; border-radius: 0 0 0 8vw; }
	.menu-btn .inner{ width: 8vw; height: 5.33vw; }
	.menu-btn.active .inner span:nth-of-type(1){ top: 50%; transform: translate(0,-50%) rotate(45deg); }
	.menu-btn.active .inner span:nth-of-type(3){ bottom: 50%; transform: translate(0,50%) rotate(-45deg); }

	nav{ height: 100%; border-radius: 0; width: 80vw; padding: 13.33vw 0 13.33vw 13.33vw; }
	nav ul li{ font-size: 4.8vw; }

	.float-btn{ width: 66.67vw; height: 13.33vw; border-radius: 5.33vw 0 0 0; font-size: 4.27vw; bottom: 0; }
	.float-btn span{ padding-left: 9.33vw; line-height: 2; background-size: 6.93vw; }
	
	ul.clinic-list2 li h4{font-size: 5.93vw;}

}

