@charset "utf-8";
	/* 480px以上は写さない */
@media (min-width: 480px) {
	.sp-only {
		display: none!important;
	}
	.sp-mv {
		display: none!important;
	}
	.sub-mv-sp {
		display: none!important;
	}
}
@media (min-width: 960px) {
	.tb-only {
		display: none!important;
	}
	.tb-mv {
		display: none!important;
	}
}

	/* 960px以下に適用されるCSS（タブレット用） */
@media screen and (max-width: 960px) {
	body {
		font-size: 16px;
	}
	.pc-only {
		display: none!important;
	}
	.cp {
		font-size: 20px;
		width: 70%;
	}
	.f-45 {
		font-size: 30px;
	}
	.f-60 {
		font-size: 40px;
	}
	.cp-top {
		padding-bottom: 0;
	}
	.f-30 {
		font-size: 24px;
	}
	.news-content {
		margin: 30px auto 0;
	}
	#info {
		flex-direction: column;
	}
	 .info-wrap, .blog {
		width: 100%;
	}
	.accordion-001, .accordion-002 {
		max-width: 700px;
	}
	.accordion-001 summary, .accordion-002 summary {
		padding: 1em;
		font-size: 24px;
	}
	.accordion-002 summary::after {
		border-radius: calc(16 / 1299*100vw);
	    width: calc(160 / 1299*100vw);
    	height: calc(31 / 1299*100vw);
	}
	.fea01::before, .fea02::before, .fea03::before {
		height: calc(560 / 1299*100vw);
	}
	.fea-content {
		padding-top: 60px;
		padding-bottom: 70px;
	}
	.fea-inner {
		width: 60%;
		padding-left: calc(40 / 1299*100vw);
	}
	.fea-txtbox {
		padding-top: 45px;
		padding-bottom: 20px;
	}
	.fea-txtbox .ttl {
		padding-bottom: 30px;
	}
	.fea-txtbox .txt {
		width: 90%;
	}
	.fea02-btm {
		padding: 0px 0 30px;
	}
	.fea02-btm .container {
		width: 95%;
	}
	.white.f-30.ttl {
		padding: 6px 0;
		font-size: 20px;
	}
	.fea04-img {
		padding: 0 0 20px;
	}
	.fea05 .container {
		width: 95%;
	}
	.fea05-item {
		width: 95%;
	}
	.fea05-txtbox {
		padding: 20px 0;
	}
	.fea05-txtbox .f-30 {
		font-size: 20px;
	}
	.link-btn {
		width: 40%;
	}
	.btn span {
		font-size: 16px;
	}
	#greeting {
		margin-bottom: 60px;
	}
	#greeting .flex {
		flex-direction: column;
	}
	#greeting .flex-2 {
		width: 100%;
	}
	#greeting::before {
		width: 60%;
		height: 45%;
	}
	#greeting::after {
		background-size: 95%;
	}
	.d-demo__item {
		width: calc(290vw / 6);
	}
	#top-medical {
		margin-top: 60px;
	}
	.medical-list {
		width: 100%;
		margin: 20px auto;
	}
	.list {
		margin-top: 40px;
	}
	.list-name {
		padding: 10px 0;
	}
	ul.list-explain {
		padding-top: 10px;
	}
	.list-explain li {
		margin-bottom: 10px;
		padding-left: 0px;
	}
	.medical-btm {
		padding-top: 50px;
	}
	.med-btm.flex {
		flex-direction: column-reverse;
	}
	.med-btm-inner, .med-img {
		width: 100%;
	}
	.med-btm-inner .txtbox {
		width: 85%;
		padding-top: 50px;
		padding-bottom: 20px;
	}
	.med-point {
		bottom: 240px;
		right: 17%;
		width: 32%;
	}
	.med-point.med07 {
		left: -14%;
	}
	#contact {
		padding: 50px 0;
	}
	.contact-bg {
		padding: 30px 0;
		width: 90%;
	}
	.f-40 {
		font-size: 30px;
	}
	.contact-wrap {
		width: 95%;
		margin: 20px auto;
	}
	.contact-inner {
		width: 90%;
		padding: 40px 0;
	}
	.recruit-btn {
		width: 80%;
		margin: 20px auto;
	}
	.f-25 {
		font-size: 20px;
	}
	#top-recruit::after {
		height: 140px;
	}
	.footer-top {
		padding: 50px 0;
	}
	.footer-top .flex {
		flex-direction: column;
	}
	.footer-top .flex-2 {
		width: 100%;
	}
	.footer-bnr {
		flex-direction: row!important;
	}
	.page-ttl {
		padding: 25px 0;
	}
	.f-50 {
		font-size: 40px;
	}
	.title {
		padding: 25px 0;
		border-top: 3px solid #707070;
		border-bottom: 3px solid #707070;
	}
	.title::before {
		top: 7px;
	}
	.title::after {
		bottom: 7px;
	}
	.content {
		padding-top: 50px;
	}
	.content-ttl {
		padding-bottom: 16px;
		margin-bottom: 30px;
	}
	#biz-hour .flex, #access .flex, #doctor .flex {
		flex-direction: column;
	}
	#biz-hour .flex-2, #access .flex-2, #doctor .flex-2 {
		width: 100%;
		margin-bottom: 20px;
	}
	.access-ttl {
		padding: 15px 0;
	}
	.access-wrap {
		padding: 30px 0;
	}
	.name {
		width: 40%
	}
	.payment-item {
		width: 45%;
	}
	.shouni-kyousei {
		width: 90%;
		margin: 50px auto 0;
		padding: 30px 0 40px;
	}
	.inner {
		padding: 30px 0;
	} 
	.check {
		width: 100%;
		padding-top: 20px;
	}
	.flex-2 {
		width: 48%;
	}
	.price {
		width: 95%;
		margin: 30px auto;
	}
	.price dt {
		width: 320px;
	}
	.price dd {
		width: calc(100% - 320px);
	}
	.flow-flex {
		padding-bottom: 20px;
	}
	.flow-num {
		width: 65px;
		height: 65px;
		line-height: 65px;
	}
	.recruit-list dt {
		width: 100px;
	}
	.recruit-list dd {
		width: calc(100% - 100px);
	}
	.slider, .slider-item {
		height: 55vh;
	}
	.point {
		width: 100%;
	}
	.points-3 .ttl {
		font-size: 20px;
	}
	.home-merit ul li::before {
		width: 25px;
		height: 25px;
	}
	.home-merit ul li {
		width: 50%;
		padding-left: 30px;
	}
	




}


	/* 480px以下に適用されるCSS（スマホ用） */
@media screen and (max-width: 480px) {
	.tb-mv {
		display: none!important;
	}
	.sub-mv-pc {
		display: none!important;
	}
	.sp-nav {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		position: fixed;
	}
	.nav_wrapper {
		position: fixed;
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		bottom: 0;
	}
	.nav_wrapper div:first-child {
		border-left: 1px solid #B1A2C1;
	}
	.nav_wrapper div {
		width: 25%;
		display: flex;
		background: #E5DCEE;
		align-items: center;
		justify-content: center;
		border-right: 1px solid #B1A2C1;
		border-top: 1px solid #B1A2C1;
	}
	.nav_wrapper a {
		padding: 10px;
	}
	#page_top {
		width: 50px;
		height: 50px;
		right: 9px;
		bottom: 80px;
	}
	#page_top a {
		width: 50px;
		height: 50px;
	}
	.header-logo {
		width: 40%;
	}
	.cp {
		font-size: 16px;
		width: 85%;
	}
	.f-45 {
		font-size: 25px;
	}
	.f-60 {
		font-size: 35px;
	}
	.cp-btm li {
		margin-bottom: 10px;
	}
	.container {
		width: 85%;
	}
	.info-inner, .blog-inner {
		width: 100%;
	}
	.info-inner::before, .blog-inner::before {
		background-size: 60%;
		left: 0;
	}
	#covid19, #cancel-policy {
		padding: 2rem 0;
	}
	.accordion-001, .accordion-002 {
		max-width: 350px;
	}
	.accordion-001 summary, .accordion-002 summary {
		font-size: 18px;
		text-align: center;
	}
	.accordion-open {
		padding: 1rem;
	}
	.covid19-list {
		width: 50%;
		padding: 10px 0;
	}
	.covid19-list span {
		font-size: 14px;
	}
	.accordion-002 summary::after {
		border-radius: calc(22 / 750*100vw);
		width: calc(224 / 750*100vw);
		height: calc(25 / 750*100vw);
	}
	.fea-ttl-txt {
		max-width: 350px;
		font-size: 19px;
	}
	.fea01::before, .fea02::before, .fea03::before {
		height: calc(404 / 750*100vw);
		width: 100%;
	}
	.fea-inner {
		width: 100%;
		padding-left: 0;
		max-width: calc(702 / 750*100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.fea-content {
		padding-top: 250px;
	}
	.f-30 {
		font-size: 20px;
	}
	.txt p {
		margin-bottom: 15px;
	}
	.flex {
		flex-direction: column;
	}
	.flex-2, .flex-3 {
		width: 100%;
		margin-bottom: 20px;
	}
	.fea-bg {
		background-image: url("../img/top/fea_bg_sp.png");
	}
	.fea04 {
		padding-top: 20px!important;
	}
	.fea04-inner::after {
		height: 98%;
	}
	.fea05-ttl {
		padding-top: 0;
	}
	.fea05 {
		padding-bottom: 30px;
	}
	.clinic-link {
		margin: 60px auto;
	}
	.link-btn {
		width: 65%;
	}
	#greeting {
			padding-top: 40px;
			margin-bottom: 40px;
		}
	#greeting::before {
		width: 65%;
		height: 25%;
	}
	.doctor {
		padding: 10px;
		width: 70%;
	}
	.top-ttl {
		font-size: 50px;
	}
	.greeting-ttl::after {
		width: 65%;
	}
	.d-demo__item {
		width: calc(400vw / 6);
	}
	#top-medical {
		margin-top: 40px;
	}
	.f-25 {
		font-size: 17px;
	}
	.f-40 {
		font-size: 27px;
	}
	.med-ttl span {
		font-size: 25px;
	}
	.med-point {
		bottom: 255px;
		right: 28%;
		width: 52%;
	}
	.med-point.med07 {
		left: -25%;
		bottom: 230px;
	}
	.med09 {
		bottom: 230px;
	}
	.br-blue::after {
		border-left: 18px solid transparent;
	    border-bottom: 18px solid #066C9D;
	}
	.br-pink::after {
		border-left: 18px solid transparent;
	    border-bottom: 18px solid #F4AEB8;
	}
	.br-purple::after {
		border-left: 18px solid transparent;
	    border-bottom: 18px solid #B1A2C1;
	}
	.contact-inner {
		width: 95%;
		padding: 20px 0;
	}
	.contact-wrap::before {
		height: 97%;
	}
	.contact-link .tel, .contact-link .web {
		width: 100%;
		margin-bottom: 20px;
	}
	.f-50 {
		font-size: 30px;
	}
	#policy, #safety, #biz-hour, #access {
		padding-top: 50px;
	}
	.content {
		padding-top: 30px;
	}
	.footer-web {
		width: 65%;
	}
	.access-wrap {
		padding: 25px 0;
		width: 85%;
	}
	.name {
		width: 55%;
	}
	.doctor-img::before {
		width: 97%;
	}
	.txt dt {
		width: 30%;
	}
	.txt dd {
		width: 70%;
	}
	.payment-item {
		width: 80%;
	}
	.shouni-kyousei-txt {
		margin: 30px auto;
	}
	.border-btm {
		padding-bottom: 0;
	}
	.price dt, .recruit-list dt{ 
		width: 100%;
		border-right: none;
		padding: 15px 0;
	}
	.price dd, .recruit-list dd{
		width: 100%; 
	}
	.flow-flex {
		flex-direction: column;
	}
	.flow-txtbox {
		margin-left: 10px;
		width: 100%;
		margin-top: 10px;
	}
	.flow-num {
		width: 55px;
		height: 55px;
		line-height: 55px;
	}
	.faq summary {
		padding: 1rem;
	}
	.flow {
		padding-bottom: 50px;
	}
	#dental-dock, .flow {
		padding-top: 50px;
	}
	.section {
		margin: 50px auto 80px;
	}
	.slider, .slider-item {
		height: 55vh;
	}
	.points-3 .ttl {
		font-size: 18px;
	}
	.home-merit {
		width: 100%;
	}
	.home-merit ul li {
		width: 100%;
	}
	
	
	
}