*{
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	font-weight: 400;
	font-feature-settings: "palt";
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: #4d4d4d;
	box-sizing: border-box;
	word-break: break-all;
	font-size: 14px;
	line-height: 1.6em;
	letter-spacing: 0.1em;
	text-align: justify;
}

.futura{
	font-family: futura-pt-bold, sans-serif;
	font-weight: 700;
	font-style: normal;
}

span, a, strong{
	color: inherit;
	font-size: inherit;
	font-family: inherit;
	font-weight: inherit;
}

.sp, .menu-btn{ display: none; }
.wrap{ width: 900px; margin: 0 auto; }
.wrap-wide{
	width: calc(100% - 120px);
	min-width: 780px;
	margin: 0 auto;
}

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

.totop{
	display: table;
	position: fixed;
	width: 70px;
    bottom: 26px;
    right: 30px;
	z-index: 98;
}
.totop img{ width: 100%; }
.body-wrap{ overflow: hidden; }

.bg-green{ background: url(../images/common/bg02.jpg); }

a.btn{
	font-size: 20px;
	color: #fff;
	font-weight: bold;
	background: #8fc322;
	padding: .3em 2.3em .3em 1em;
	position: relative;
	display: table;
	transition: .3s;
}
a.btn:hover{ opacity: .7; }
a.btn:after{
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8px 0 8px 14px;
	border-color: transparent transparent transparent #fff;
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translateY(-50%);
}

body{ background: url(../images/common/bg01.jpg); }

header{ padding-top: 35px; padding-bottom: 40px; }
header nav{ display: flex; width: 1096px; margin: 0 auto; align-items: flex-end; position: relative; justify-content: space-between; }
header nav .logo{ display: block; width: 434px; margin-right: 66px; }
header nav ul{ display: flex; width: 510px; justify-content: space-between; margin-top: 14px; }
header nav ul li{
	position: relative;
	text-align: center;
	font-size: 13px;
	font-weight: bold;
	color: #47210e;
	transition: .3s;
}
header nav ul li img { width: 24px; display: block; margin: 0 auto 10px; transition: .3s; }
header nav ul li:hover{ opacity: .7; }
header nav ul li:hover img{ transform: translateY(-4px); }
header nav .head-btn{
	width: 190px;
	display: table;
	position: absolute;
	top: 0;
	right: -10px;
	z-index: 20;
	transition: .3s;
}
header nav .head-btn img{ width: 100%; }
header nav .head-btn:hover{ opacity: .7; }
header nav .right{ display: flex; }
header nav .right .inner{ position: relative; margin-right: 15px; }
header nav .right .inner p{ color: #47210e; margin-left: 40px; }
header nav .right .resv p{ color: #47210e; margin-left: 40px; }
header nav .right .resv dl{ position: relative; background: #fff8b8; border: solid 8px #8fc322; width: 195px; height: 100px; border-radius: 100px; }
header nav .right .resv dl dt{ font-size: 16px; color: #47210e; margin: 15px auto 2px; display: table; border-bottom: dotted 1px #8fc322; padding-bottom: 3px; }
header nav .right .resv dl dt span{ padding-left: 16px; background: url(../images/common/icon-tel01.png) no-repeat; background-size: 14px; background-position: top 50% left 0; }
header nav .right .resv dl dd{ font-size: 17px; font-weight: 700; color: #8fc322; text-align: center; }

.fixed-nav{ width: 100%; background: url(../images/common/bg01.jpg); position: fixed; top: -130px; left: 0; z-index: 9999; transition: .5s; }
.fixed-nav.active{ top: 0; }
.fixed-nav .inner{ width: 1130px; height: 130px; display: flex; justify-content: space-between; align-items: center; margin: 0 auto; }
.fixed-nav .inner .logo{ display: block; width: 353px; }
.fixed-nav .clinic-hour-wrap p{ font-size: 12px; color: #fff; padding-left: 10px; margin-left: 10px; display: flex; align-items: center; border-left: solid 1px; letter-spacing: 0; white-space: nowrap; }
.fixed-nav .resv dl{ position: relative; background: #fff8b8; border: solid 8px #8fc322; width: 195px; height: 81px; border-radius: 100px; }
.fixed-nav .resv dl dt{ font-size: 16px; color: #47210e; margin: 8px auto 2px; display: table; border-bottom: dotted 1px #8fc322; padding-bottom: 3px; }
.fixed-nav .resv dl dt span{ padding-left: 16px; background: url(../images/common/icon-tel01.png) no-repeat; background-size: 14px; background-position: top 50% left 0; }
.fixed-nav .resv dl dd{ font-size: 14px; font-weight: 700; color: #8fc322; text-align: center; }

@media(min-width: 769px){
	.Gnav-sp.sp{ display: block; width: 340px; height: calc(100% - 130px); background: url(../images/common/bg02.jpg); position: fixed; top: 130px; right: -340px; z-index: 10000; transition: .5s; }
	.Gnav-sp.sp.active{ right: 0; }
	.Gnav-sp:before{ content: ''; width: 100%; height: 28px; background: url(../images/common/seamless01.png); background-repeat: repeat-x; background-position: bottom left; position: absolute; top: -28px; left: 0; background-size: contain; }
	.Gnav-sp .logo{ display: none; }
	.Gnav-sp ul{ display: table; margin: 65px auto 0; }
	.Gnav-sp ul li{ font-size: 18px; font-weight: 700; color: #fff; margin-bottom: 1em; }
	.Gnav-sp ul li a{ padding-left: 30px; background-size: 20px; background-position: top 50% left 0; background-repeat: no-repeat; display: block; }
	.Gnav-sp ul li:nth-of-type(1) a{ background-image: url(../images/common/icon-nav01.png) }
	.Gnav-sp ul li:nth-of-type(2) a{ background-image: url(../images/common/icon-nav02.png) }
	.Gnav-sp ul li:nth-of-type(3) a{ background-image: url(../images/common/icon-nav03.png) }
	.Gnav-sp ul li:nth-of-type(4) a{ background-image: url(../images/common/icon-nav04.png) }
	.Gnav-sp ul li:nth-of-type(5) a{ background-image: url(../images/common/icon-nav05.png) }
	.Gnav-sp ul li:nth-of-type(6) a{ background-image: url(../images/common/icon-nav06.png) }
	.Gnav-sp .item01{ width: 87px; position: absolute; top: 20px; right: 20px; }
	.Gnav-sp .item02{ width: 78px; position: absolute; bottom: 10px; left: 50px; }
	.Gnav-sp .item03{ width: 48px; position: absolute; bottom: 10px; right: 30px; }
}

.pc-menu-btn{ width: 81px; height: 81px; background: #8fc322; border-radius: 50px; cursor: pointer; }
.pc-menu-btn .border{ width: 38px; height: 16px; margin: 22px auto 4px; position: relative; }
.pc-menu-btn .border span{ width: 100%; height: 2px; background: #fff; position: absolute; left: 0; transition: .5s; }
.pc-menu-btn .border span:nth-of-type(1){ top: 0; }
.pc-menu-btn .border span:nth-of-type(2){ top: 50%; transform: translateY(-50%); }
.pc-menu-btn .border span:nth-of-type(3){ bottom: 0; }
.pc-menu-btn.active .border span:nth-of-type(1){ transform: rotate(45deg) translate(5px,5px); }
.pc-menu-btn.active .border span:nth-of-type(2){ opacity: 0; }
.pc-menu-btn.active .border span:nth-of-type(3){ transform: rotate(-45deg) translate(5px,-5px); }
.pc-menu-btn p{ color: #fff; font-size: 15px; text-align: center; }

.clinic-hour-wrap{ width: 430px; background: #f39800; padding: 8px 30px; border-radius: 100px; }
.clinic-hour{ width: 100%; table-layout: fixed; }
.clinic-hour th, .clinic-hour td{
	font-size: 13px;
	color: #fff;
	text-align: center;
	font-weight: bold;
	height: 37px;
	vertical-align: middle;
}
.clinic-hour tr > *:first-child{ width: 120px; padding-right: 20px; white-space: nowrap; }
.clinic-hour tr:not(:last-of-type){ border-bottom: dashed 1px #fff; }
.clinic-hour-wrap + p{ font-size: 12px; position: absolute; top: 5px; right: 30px; }
header nav .right .inner .clinic-hour-wrap{ width: 350px; }
header nav .right .inner .clinic-hour th,
header nav .right .inner .clinic-hour td{ height: 28px; }
header nav .right .inner .clinic-hour-wrap + p{ top: 1px; }
.fixed-nav .clinic-hour-wrap{ display: flex; padding: 3px 20px 3px 30px; }
.fixed-nav .clinic-hour{ width: 290px; }
.fixed-nav .clinic-hour th, .fixed-nav .clinic-hour td{ height: 25px; }

.treat-list{ display: flex; flex-wrap: wrap; justify-content: space-between; }
.treat-list li{ width: 200px; transition: .3s; }
.treat-list li img{ transition: .3s; }
.treat-list li:hover{ opacity: .7; }
.treat-list li:hover img{ transform: translateY(-4px); }

footer{ padding-top: 70px; }
.clinic-info{ padding-bottom: 70px; }
.clinic-info .wrap{ width: 1100px; display: flex; justify-content: space-between; position: relative; }
.clinic-info .wrap .item01{ position: absolute; top: -200px; /*left: 0;*/ right: 0; }
.clinic-info .wrap .left,
.clinic-info .wrap .right{ width: 50%; }
.clinic-info .wrap .left{ padding-left: 30px; }
.clinic-info .wrap .left .txt-position{ position: relative; padding-top: 23px; display: table; }
.clinic-info .wrap .left > p{
	font-size: 15px;
	font-weight: bold;
	color: #47210e;
	line-height: 2.2;
	margin: 22px 0 10px;
}
.clinic-info .wrap .left p span{ background: #fff; padding: 4px 4px 4px 37px; position: relative; }
.clinic-info .wrap .left p span:before{
	content: '';
	width: 22px;
	height: 16px;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	left: 7px;
    top: 3px;
}
.clinic-info .wrap .left p span:nth-of-type(1):before{ background-image: url(../images/common/icon-footer01.png); }
.clinic-info .wrap .left p span:nth-of-type(2):before{ background-image: url(../images/common/icon-footer02.png); }
.clinic-info .wrap .left p span:nth-of-type(3):before{ background-image: url(../images/common/icon-footer03.png); }
.clinic-info .wrap .left .clinic-hour-wrap{ width: 460px; }
.clinic-info .wrap .left .clinic-hour-wrap + p{ color: #f39800; }
.clinic-info .wrap .right{ background: url(../images/common/bg-footer01.jpg) no-repeat; background-size: cover; }

.Gmap{ position: relative; height: 370px; }
.Gmap:before{
    content: '';
    width: 100%;
    height: 51px;
    background: url(../images/common/seamless01.png);
    background-repeat-y: no-repeat;
    background-position: bottom;
    position: absolute;
    bottom: -1px;
    left: 0;
    z-index: 10;
}
.Gmap iframe{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

footer .foot-sitemap{ text-align: center; padding-top: 18px; }
footer .foot-sitemap li{
	display: inline-block;
	font-size: 12px;
	color: #47210e;
	font-weight: bold;
	margin: 0 15px;
}
footer p.copy{ font-size: 11px; text-align: center; color: #fff; padding: 16px 0 20px; }

.float-btn{ position: fixed; top: 60%; right: 0; z-index: 100; }
.float-btn li{
	width: 150px;
	background: #f39800;
	color: #fff;
	text-align: center;
	font-weight: bold;
	font-size: 12px;
	border-radius: 40px 0 0 40px;
	margin-bottom: 10px;
	padding: 10px 0;
	position: relative;
}
.float-btn li img{ display: block; width: 34px; margin: 0 auto 4px; }


@media(max-width: 768px){
	.wrap,
	header nav,
	.mainV .inner,
	.point .wrap,
	.policy.wrap,
	.clinic-info .wrap{ width: 100%; padding-right: 4vw; padding-left: 4vw; }

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

	a.btn{ font-size: 4.26666vw; }
	a.btn:after{ border-width: 1.6666vw 0 1.6666vw 2.93333vw; }

	body{ margin-bottom: 13vw; }

	header{ padding: 5.3333vw 0 4vw; }
	header nav .logo{ width: 71.7333vw; }

	.clinic-hour-wrap + p{ position: static; text-align: right; font-size: 2.9333vw; margin: 1vw 7vw 0 0; }
	.treat-list{ justify-content: space-evenly; }
	.treat-list li{ width: 27.0666vw; }
	.treat-list li img{ display: block; }

	footer{ padding-top: 0; }

	.clinic-info{ padding: 9.7333vw 0 6.666vw; }
	.clinic-info .wrap{ flex-wrap: wrap; }
	.clinic-info .wrap .item01{ left: auto; width: 12.6666vw; top: -23vw; right: 10vw; }
	.clinic-info .wrap .left .clinic-hour-wrap,
	.clinic-info .wrap .left,
	.clinic-info .wrap .right{ width: 100%; }
	.clinic-info .wrap .left{ padding-left: 0; }
	.clinic-info .wrap .left .logo.sp{ width: 72.666vw; margin: 0 auto 8vw; }
	.clinic-info .wrap .left > p{ font-size: 3.7333vw; margin: 8vw 0 0; }
	.clinic-info .wrap .left p span:before{ width: 5.466vw; height: 4.1333vw; left: 2vw; top: 0.6vw; }
	.clinic-info .wrap .left .txt-position{ padding-top: 6.666vw; }

	.Gmap:before{ background-size: 50vw; height: 8vw; }

	footer p.copy{ font-size: 2.6666vw; }

	.float-btn{
		width: 100%;
		display: flex;
		top: auto;
		bottom: 0;
		transform: none;
		border-top: solid 1px #fff;
	 }
	 .float-btn li{
	 	border-radius: 0;
	 	width: 50%;
	 	margin-bottom: 0;
	 	font-size: 3.7333vw;
	 	padding: 2.666vw 0 2.4vw;
	 }
	 .float-btn li:nth-of-type(1){ border-right: solid 1px; }
	 .float-btn li img{ width: 6.8vw; margin: 0px auto .4vw; }

	 .menu-btn{
	 	display: table;
	 	width: 14.666vw;
	 	height: 14.666vw;
	 	border-radius: calc(14.666vw /2);
	 	background: #8fc322;
	 	position: fixed;
	 	top: 4vw;
	 	right: 5.333vw;
	 	z-index: 10000;
	 	transition: .3s;
	 }
	 .menu-btn.active{ background: transparent; }
	 .menu-btn .inner {
	 	position: relative;
	 	width: 8.13333vw;
	 	height: 3.1666vw;
	 	margin: 4vw auto .6vw;
	 }
	 .menu-btn .inner span{ width: 100%; height: 2px; background: #fff; position: absolute; transition: .3s; }
	 .menu-btn .inner span:nth-of-type(1){ top: 0; left: 0; }
	 .menu-btn .inner span:nth-of-type(2){ top: 50%; left: 0; transform: translateY(-50%); }
	 .menu-btn .inner span:nth-of-type(3){ bottom: 0; left: 0; }
	 .menu-btn.active .inner span{ background: #8fc322; }
	 .menu-btn.active .inner span:nth-of-type(1){ transform: rotate(45deg); }
	 .menu-btn.active .inner span:nth-of-type(2){ opacity: 0; }
	 .menu-btn.active .inner span:nth-of-type(3){ transform: rotate(-45deg); bottom: 2.6vw; }
	 .menu-btn p{ font-size: 2.8vw; color: #fff; text-align: center; transition: .3s; }
	 .menu-btn.active p{ opacity: 0; }

	 .Gnav-sp{
	 	position: fixed;
	 	top: 0;
	 	left: 0;
	 	width: 100%;
	 	height: 100%;
	 	background: url(../images/common/bg01.jpg);
	 	opacity: 0;
	 	visibility: hidden;
	 	z-index: 9999;
	 	transition: .3s;
	 	padding-top: 5.3333vw;
	 }
	 .Gnav-sp.active{ opacity: 1; visibility: visible; }
	 .Gnav-sp .logo{ width: 71.7333vw; display: table; margin: 0 0 10.6666vw 4vw; }
	 .Gnav-wrap{ position: relative; padding-top: 21.3333vw; height: 100%;}
	 .Gnav-wrap:before{
	 	content: '';
	    width: 100%;
	    background: url(../images/common/seamless01.png);
	    background-repeat-y: no-repeat;
	    background-position: bottom;
	    position: absolute;
	    top: -8vw;
	    left: 0;
	    z-index: 10;
	    background-size: 50vw;
	    height: 8vw;
	 }
	 .Gnav-wrap ul{ display: table; margin: 0 auto; }
	 .Gnav-wrap ul li{ font-size: 4.5333vw; font-weight: bold; color: #fff; margin-bottom: 8vw; }
	 .Gnav-wrap ul li a{ padding-left: 9.3333vw; position: relative; display: inline-block; }
	 .Gnav-wrap ul li a:before{
	 	content: '';
	 	width: 5.3333vw;
	 	height: 5.3333vw;
	 	background-size: contain;
	 	background-repeat: no-repeat;
	 	position: absolute;
	 	left: 0;
	 }
	 .Gnav-wrap ul li:nth-of-type(1) a:before{ background-image: url(../images/common/icon-nav01.png); }
	 .Gnav-wrap ul li:nth-of-type(2) a:before{ background-image: url(../images/common/icon-nav02.png); }
	 .Gnav-wrap ul li:nth-of-type(3) a:before{ background-image: url(../images/common/icon-nav03.png); }
	 .Gnav-wrap ul li:nth-of-type(4) a:before{ background-image: url(../images/common/icon-nav04.png); }
	 .Gnav-wrap ul li:nth-of-type(5) a:before{ background-image: url(../images/common/icon-nav06.png); }
	 .Gnav-wrap ul li:nth-of-type(6) a:before{ background-image: url(../images/common/icon-nav07.png); }
	 .Gnav-wrap .item01{ position: absolute; width: 23.2vw; top: 5vw; right: 8vw; }
	 .Gnav-wrap .item02{ position: absolute; width: 20.8vw; bottom: 41vw; left: 6vw;}
	 .Gnav-wrap .item03{ position: absolute; width: 12.6666vw; bottom: 27vw; right: 11vw; }

	 .totop{ width: 13.333vw;bottom: 27vw;right: 0vw;}
		.float-btn2 li {
    border-radius: 0;
    width: 50%;
    margin-bottom: 0;
    font-size: 2.8vw;
    padding: 1.2vw 0 .7vw;
}
.float-btn2 li img {
    width: 6vw;
    margin: 0px auto .4vw;
}
	
	footer .foot-sitemap li{
		width: 23%;
		margin-bottom: 1vw;
		font-size: 3.2vw;
	}
	
	footer .foot-sitemap{
		width: 90%;
		margin: auto;
	}
   .ft_time{
position: fixed;
z-index: 100;      
    width: 100%;
    display: flex;
    top: auto;
    bottom: 0;
    transform: none;
    border-top: solid 1px #fff;    
}
.ft_time p{
    width: 100%;
    background: #f39800;
    color: #fff;
    text-align: center;
    font-weight: bold;
    padding: 10px 0;
    position: relative;
    border-radius: 0;
    margin-bottom: 0;
    font-size: 11px;
    padding: 1.2vw 0 .7vw;
}    
.ft_time2{
    position: fixed;
    z-index: 100;
    width: 50%;
    display: flex;
    top: auto;
    bottom: 60px;
    transform: none;
    border-top: solid 1px #fff;
}
.ft_time_2{
    position: fixed;
    z-index: 100;
    width: 33.4%;
    top: auto;
    bottom: 35px;
    transform: none;
    border-top: solid 1px #fff;
    height:62px;
}
.ft_time2 p{
    width: 100%;
    color: #47210e;
    background: #fff8b8;
    border: solid 8px #8fc322;
    text-align: center;
    position: relative;
    font-size: 2.8vw;
    padding: 2.1vw 0 0.9vw;
    font-family: futura-pt-bold, sans-serif;
}
    .ft_time_2 p{
    display:block;
    width: 100%;
    color: #fff;
    background: #f39800;
    text-align: center;
    position: relative;
    font-size: 2.8vw;
    padding: 0 0 0.9vw;
    font-family: futura-pt-bold, sans-serif;
    font-weight:bold;
} 
.ft_time2 img {
    position: relative;
    margin: 0px auto .4vw;
    top: 6px;
    width: 4vw;
}
    .ft_time_2 img {
    position: relative;
    margin: 0px auto;
    top:7px;
    width:28px;
}
.ft_time2.ft_time3.sp {
    right: 0px;
}
.ft_time_2.ft_time_3.sp {
    right: 0px;
} 
    
/*追加分*/
    .ft_time_4{
        left:33.25%;
    }
    .ft_time_2 p .telno{
        font-size:13px;
        background-size: 10px;
        padding-left:15px;
    }
    section .bg-white {
         width: 92vw;
}
    .ft_min{
        font-size:16px!important;
    }
    
.ft_time3 p{
padding: 0;
}    
    
.ft_time3 img {
    position: relative;
    /* margin: 0px auto 0; */
     top: 0px; 
    height: 100%;
    width: 100%;
}   
	
}
