@charset "UTF-8";
/* CSS Document */


@media screen and (min-width:600px){
	.pc{display: inherit;}
	.sp{display: none;}
}

@media screen and (max-width:599px){
	
	.pc{display: none;}
	.sp{display: inherit;}
	
	header{background: none;}
	header nav{background: none;clip-path: none;backdrop-filter:none;}
	header nav:after{content: none;}
	header nav > p{display: none;}
	header nav ul{display: flex;flex-wrap: wrap; align-items: center;align-content: center; width: 100%;height: 100%;background: #ebebeb;opacity: 0; position: fixed;top: 0;left: 0;visibility: hidden;transition-duration: .3s;}
	header nav ul li{flex-basis: 100%; display: block;text-align: center;}
	header ul li:not(:last-child){margin-bottom: 20px;}
	header ul li:not(:last-child):after{content: none;}
	header ul li.logo{display: block;margin-bottom: 13vw;}
	header ul li.logo img{width: 33vw;}
	header nav label{display: block;background: rgba(255,255,255,.85);font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";font-size: 0.56em; position: fixed;top: 10px;right: 10px;z-index: 1;padding: 10px 14px 6px;}
	header nav label span:after{content: "";display: block; width: 30px;height: 1px;background: #302f65;margin:0 auto 8px;transition-duration: .3s;}

	header input:checked ~ label{background: none;}
	header input:checked ~ label span:nth-child(1):after{transform: rotate(30deg) translate(7px, 10px);}
	header input:checked ~ label span:nth-child(2):after{transform: rotate(-30deg) translate(0px, 4px);}
	header input:checked ~ label span:nth-child(3):after{opacity: 0;}
	header input:checked ~ ul{visibility: visible;opacity: 1;}
	
	
	.cv{display: none;}
	.sub main{padding: 0 3vw;margin: 20vw auto;}
	.sub main section{width: 100%;padding: 12vw 3vw;}
	
	.clinic_img{height: 110px;padding: 0 3vw;}
	.news_list{width: 100%;padding: 0 3vw;}
	.news_list ul{margin-bottom: 30px;}
	.news_list li{display: block;}
	.news_list li .date{padding-bottom: 0;margin-bottom: 10px;border-bottom: none;}
	.news_list li .entry{padding-bottom: 15px;margin-bottom: 15px;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}
	.news_list .btn a{width: 100%;box-sizing: border-box;}
	
	footer section{width: 100%;padding: 13vw 0;}
	footer section .in{display: block;padding: 0 6vw;}
	footer section .in .logo{text-align: center;}
	footer section .in ul{display: none;}
	footer section .bnr {padding: 0 6vw;}
	footer section .bnr img[src*="pc"]{display: none;width: 100%;}
	footer section .bnr img[src*="sp"]{display: block;width: 100%;}
	footer .map iframe{height: 200px;}
	footer .copy{padding: 15px 0 24vw;}
	
    .sp_fix{width: 100%; display: flex;justify-content: center;border-top: 1px solid #fff;background: #302f65;padding: 6px 0;position: fixed;left: 0;bottom: 0;}
	.sp_fix li{background: #302f65;color: #fff; font-size: 3.5vw;letter-spacing: 0.05em;}
	.sp_fix li:not(:last-child){border-right: 1px solid #fff;}
	.sp_fix li:last-child{flex-grow: 1;}
	.sp_fix li a{display: flex;height: 100%; justify-content: center;align-items: center; text-align: center;padding: 5px 2vw;box-sizing: border-box;}
	.sp_fix li a img{margin: 0 5px;}
	.sp_fix li a span{font-weight: bold;font-size: 1em;}
    .sp_fix li:first-child{
        width: 35%;
    }
   .sp_fix li:nth-child(2){
        width: 33%;
    }

	.top .btn a{width: 90%;}
	.top article{width: 100%;padding: 0 5vw;}
	.top h2{font-size: 1.33em;}
	
	.top main{margin-bottom: 60px;}
	.top .mv{height: 550px;overflow: hidden;}
	.top .mv:before{width: 100%; height: 240px;transform: skewX(0)skewY(5deg)translateY(40px);}
	.top .mv ul:after{content: none;}
	.top .mv .logo{margin-bottom: 10px;}
	.top .mv .logo img{width: 150px;}
	.top .mv .txt{top: auto;left: 6vw; bottom: 20px;transform: none;}
	.top .mv .txt h1{font-size: 3.2vw;}
	.top .mv .scroll{display: none;}
	
	.top .clinic_info{background-image: none;}
	.top .clinic_info{padding: 70px 0 0;}
	.top .clinic_info article{margin-bottom: 45px;}
	.top .clinic_info table{width: 100%;}
	.top .clinic_info table th{font-weight: normal;}
	.top .clinic_info:after{content: ""; display: block;width: 100%;height: 73vw;background: url("../img/index/webp/map_sp.webp")no-repeat;background-size: 100%;}
	.webp .top .clinic_info:after{background: url("../img/index/map_sp.png")no-repeat;background-size: 100%;}
	.top .clinic_info table th,
	.top .clinic_info table td{font-size: 3vw; padding: 2vw;}
	.top .clinic_info article .near{font-size: 3.5vw;}
	.top .clinic_info article .btn2.map {width: inherit;}
	
	.top .concept{padding: 70px 0;}
	.top .concept p:last-child{font-size: 0.86em;}
	
	.top .feature{padding: 20px 0;}
	.top .feature .dr{padding-bottom: 0;}
	.top .feature .dr .name{margin-bottom: 6vw;}
	.top .feature .dr .name + p{font-size: 3.8vw;margin-bottom: 5vw;}
	.top .feature .dr .message{font-size: 4vw; margin-bottom: 0;}
	.top .feature .dr .photo{position: static;transform: translateY(-24px);}
	.top .feature:after{width: 100%;height: 180vw;transform: skewY(10deg) translateY(-140px);}
	
	.top .feature .feature_in{display: block;width: 100%;padding: 0 2vw;}
	.top .feature .feature_in .box{display: block;}
	.top .feature .feature_in .box .txt{padding: 6vw 3vw;}
	.top .feature .feature_in .box .txt h3{margin-bottom: 15px;}
	.top .feature .feature_in .box .photo img:not([src*="sp"]){display: none;}
	.top .feature .feature_in .box .photo img[src*="sp"]{display: block;width: 100%;}
	
	.top .treatment{padding: 75px 0 35px;overflow: hidden;}
	.top .treatment .catch{display: table;position: relative;font-size: 1.5em;margin:0 auto 40px;}
	.top .treatment .catch:before{position: absolute;font-size: 50px; left: -50px;top: -15px;}
	.top .treatment .catch:after{position: absolute;font-size: 50px;right: -50px;bottom: -10px;}
	.top .treatment .catch + p{margin-bottom: 30px;}
	.top .treatment .box{display: block; padding-bottom: 40px;margin-bottom: 40px;}
	.top .treatment .box .photo{margin-right: 0px;margin-bottom: 1em;}
	
	.top .treatment2{padding: 75px 5vw;}
	.top .treatment2 article:first-of-type{padding: 0;}
	.top .treatment2 ul li{margin-bottom: 40px;}
	.top .treatment2 ul:first-child li:after{width: calc(100% - 22.37px);}
	.top .treatment2 ul:first-child{display: block;}
	.top .treatment2 ul:last-child{flex-wrap: wrap;}
	.top .treatment2 ul:last-child li{flex-basis: calc(100%/3 - 13px);}
	.top .treatment2 ul:last-child li:after{width: calc(100% - 10px);}
	.top .treatment2 .fee{padding: 8vw 5vw;}
	
	.top .technician .photo_slide{position: relative;width: 100%;height: 300px;}
	.top .technician .photo_slide:before{width: 100%;height: 70px; top: auto;bottom: -1px;left: 0; transform: skewY(7deg)translateY(50%);z-index: 1;}
	.top .technician .photo_slide:after{width: 20vw; height: 150px;transform: skewX(-25deg)translateX(15vw);}
	.top .technician article{padding: 30px 5vw 70px;}
	.top .technician article h2{margin-bottom: 30px;}
	.top .technician .txt{width: 100%;}
	.top .technician .txt p{color: #606060;}
	
	
	footer ul.footer_menu li{
	display: block;
	font-weight: bold;
    color: #fff;
    letter-spacing: 0.06em;
	width: 90%;
	text-align: center;
	position: relative;
		border-bottom: 1px solid #fff;
	margin: auto;
		padding-bottom: 2.3vw;
		padding-top: 2.3vw;
}


footer ul.footer_menu li a{
	display: block;
}

footer ul.footer_menu li:after{
	content: none;
}

footer nav{
	background: #302f65;
}

footer ul.footer_menu{
	width: 100%;
	margin: auto;
	padding-top: 6vw;
    padding-bottom: 2vw;
}
	
	.news_area{
	background: #fff;
	height: auto;
		margin-bottom: 2em;
}

.news_box{
	background: #ebebeb;
	width: 90%;
	margin: auto;
	margin-top:2em;
	padding:3vw 5vw 6vw;
	
}

.midashi{
	  color: #302f65;
    font-size: 1.2em;
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
    font-weight: bold;
    margin-bottom: 20px;
	position: relative;
	padding-left:0;
	line-height: 1.6;
	margin-top: 3.5em;
}

hr.kugiri{
	margin-top: 2.2em;
    margin-bottom: 2.2em;
}

.news_box strong{
	font-weight: bold;
    font-size: 1.06em;
    color: #a6312b;
}
.news_txt{
	letter-spacing: 0.05em;
    line-height: 1.86;
	margin-bottom: .88em;
}



.midashi:before{
	position: absolute;
	content: "NEWS";
	background: #302f65;
	color: #fff;
	top:-3.1em;
	left: 0;
	padding: 5px 10px;
	box-sizing: border-box;
	font-size: .65em;
}

	ul.bunin{
	display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
	margin-top: 8vw;
	padding: 0 6vw;
}

ul.bunin li{
	width: 100%;
	margin-bottom: 2vw;
}
	
	.top .mv ul li img{object-position: top 0 right -50px;}
	
	#slide_wrap li img{
		height: 90%;
	}
	
    .top .mv .txt p.toptext {font-size: 1em;}
		
    ul.keireki li {padding-bottom: 0; font-size: 0.8rem;}
    ul.keireki {margin-bottom: 1.5rem;}
    
    
    .mv .yoyaku_btn,
    .mv .insta_btn{display: none;}   

    
}

@media screen and (max-width:340px){
	.top .mv .txt h1.top .mv .txt p.toptext br{display: none;}
	.top .feature .dr .btn a{width: 100%;}
}