@media(max-width: 768px){

	header{ height: 5rem; }

	header .logo{ width: 16rem; }

	

	.mv{ height: 41.33vw; }



	h1{ font-size: 2.9rem; padding: 0 6.66vw; margin: 12vw 0 5.33vw; }

	h1 small{ font-size: 1.2rem; }



	main.container{ width: 100%; padding: 0 6.66vw; margin: 5.33vw 0 20vw; }

	.container a.relation-link{ font-size: 1.2rem; padding-left: 43.06vw; letter-spacing: .03em; width: 100%; margin: 5.33vw 0; }

	.container a.relation-link:before{ width: 40.66vw; background-size: 3.46vw; background-position: center right 3.2vw; padding-left: 1em; }
	
	
	.container a.detail-link{ font-size: 1.2rem; padding-left: 43.06vw; letter-spacing: .03em; width: 100%; margin: 5.33vw 0; }

	.container a.detail-link:before{ width: 40.66vw; background-size: 3.46vw; background-position: center right 3.2vw; padding-left: 1em; }


	.container a.btn{ margin: 5.33vw auto; }



	.contents-list{ margin-bottom: 13.33vw; }

	.contents-list dt{ font-size: 1.7rem; margin-bottom: 6.66vw; }

	.contents-list dd{ flex-wrap: wrap; }

	.contents-list dd ul{ width: 100%; }

	.contents-list dd ul + ul{ margin-top: 2.66vw; }

	.contents-list dd ul li{ font-size: 1.5rem; padding: 0 0 0 14.66vw; min-height: 10.66vw; }

	.contents-list dd ul li:before{ width: 10.66vw; height: 10.66vw; border-radius: 10.66vw; font-size: 1.4rem; }

	.contents-list dd ul li + li{ margin-top: 2.66vw; }



	.container h2{ font-size: 1.8rem; margin: 18.33vw 0 5.33vw; }

	.container h3{ font-size: 1.6rem; margin: 12vw 0 5.33vw; }

	.container h4{ font-size: 1.5rem; margin: 8vw 0 4.66vw; }
	.container h5.h5{ font-size: 1.3rem; margin: 8vw 0 4.66vw; }


	.container .side-img,

	.container div.article{ flex-wrap: wrap; margin: 8vw 0; }

	.container div.article .descL,

	.container div.article .descR,

	.container .side-img .content{ width: 100%; order: 1; margin-bottom: 5.33vw; }

	.container div.article .imgR,

	.container div.article .imgL,

	.container .side-img .img{ width: 100%; order: 2; }



	.container ol{ margin: 8vw 0; }

	.container ol li{ font-size: 1.5rem; padding-left: 14.66vw; min-height: 10.66vw; align-items: flex-start; }

	.container ol li:before{ font-size: 1.4rem; width: 10.66vw; height: 10.66vw; border-radius: 10.66vw; top: 0; transform: none; }

	.container ol li + li{ margin-top: 4.66vw; }



	.container ul.dice{ margin: 6vw 0; }



	.container .flow-list{ margin: 10vw 0; }

	.container .flow-list .row + .row{ margin-top: 10vw; }

	.container .flow-list dl{ width: 100%; }

	.container .flow-list dl dt{ font-size: 1.6rem; padding-left: 13.33vw; padding-top: .4em; }

	.container .flow-list dl dt:before{ width: 10.66vw; height: 10.66vw; font-size: 1.4rem; top: 0; }

	.container .flow-list dl dd{ margin-top: 6vw; }

	.container .flow-list .img{ width: 100%; margin-top: 5.33vw; }



	.container table:not(.no-default){ margin: 6vw 0; }

	.container table:not(.no-default) th{ padding: 1em; font-size: 1.5rem; }

	.container table:not(.no-default) td{ padding: 1em; font-size: 1.4rem; }

	.container table.sp-break{ display: block; border-top: solid 1px #f2f2f2; }

	.container table.sp-break tbody,

	.container table.sp-break tr{ display: block; }

	.container table.sp-break th{ display: block; text-align: center; border-top: none; }

	.container table.sp-break td{ display: block; border-top: none; }





	/*** dr ***/



	.container h3.dr-name{ height: 47.33vw; font-size: 3rem; padding-top: 13.33vw; border-bottom: none; }

	.container h3.dr-name small{ font-size: 1.2rem; }

	.container h3.dr-name img{ width: 41.33vw; }

	.container h3.dr-name + p{ padding-bottom: 10.66vw; margin-bottom: 0; border-bottom: solid 1px #f2f2f2; }



	.container .history-wrap{ margin-top: 13.33vw; }

	.container .history-wrap dl{ width: 100%; }

	.container .history-wrap dl + dl{ margin-top: 10.66vw; }

	.container .history-wrap dl dt{ padding: .2em; margin-bottom: 4.26vw; }



	/*** 関連ページ ***/

	.kanren{ margin-top: 13.33vw; }
	.kanren dl dt{ font-size: 4.26vw; }
	.kanren dl dd{ padding: 3.33vw; }
	.kanren dl dd > ul > li, .kanren dl dd > ul > li > ul.children > li{ font-size: 3.73vw; }
	.kanren dl dd > ul > li > ul.children > li > ul.children > li{ font-size: 3.2vw; }
	.kanren dl dd > ul > li > a{ font-size: 1.5rem; }


	/*** アーカイブ ***/



	main.archive{ width: 100%; padding: 0 6.66vw; margin: 5.33vw 0 20vw; }

	main.archive article{ flex-wrap: wrap; }

	main.archive article .thumb{ height: 44vw; width: 100%; }

	main.archive article .content{ width: 100%; padding: 5.3333vw; }

	main.archive article .content .time{ font-size: 3.2vw; }

	main.archive article .content h2{ font-size: 5.8666vw; margin-bottom: .6em; }

	main.archive article + article{ margin-top: 6.66vw; }

	main.archive .wp-pagenavi{ margin-top: 13.33vw; }



	/*** スピーチバブルの代わりの吹き出し ***/



	.container .talk .icon{ width: 7rem; margin-right: 1rem; }

	.container .talk.right .icon{ margin-left: 1rem; }

	.container .talk .icon .name{ font-size: 1.2rem; }

	.container .talk .content{ max-width: calc(100% - 8rem); }

	

	

	/*** アコーディオン ***/	

	.fandq dl > dt {font-size: 4vw;}

	.fandq.cleaning-shorei dl > dt {font-size: 4vw;}

	.fandq.cleaning-shorei dl dd {padding: 0;}

	.fandq.cleaning-shorei dl > dt:before {top: 1.2em;}

	.fandq.cleaning-shorei dl > dt:after {top: 1.7em;}

	.fandq.cleaning-shorei .shourei div {margin-bottom: 1vh;}

	

	/*0617追加-症例があるページの症例スタイル*/

	.shourei div {width:100%; margin-bottom: 4vh}
	.shourei02 div {width:100%; margin-bottom: 4vh}

	.shourei.single div {margin: 4vh 0 0;}

	.shourei.single.firstitem div {margin: 0;}

	

	table.sp-break.case-table th {width:100%;}

	

	.caution {margin-top: -2vh;}

	.scroll-table table {

  display: block;

  overflow-x: scroll;

  white-space: nowrap;

  -webkit-overflow-scrolling: touch;

}



.table_basic table{width:100%!important;}

.table_basic table tr th{width:20%!important;}

.pickup{ flex-wrap: wrap; margin-bottom: 7rem; }

.pickup li{ width: 100%; }

.pickup li + li{ margin-top: 3.5rem; }

.pickup li h3{ height: 20rem; font-size: 1.9rem; margin-bottom: .6rem; }

.pickup li h3:before{ border-width: 7.5rem 7.5rem 0 0; }

.pickup li h3:after{ font-size: 1.2rem; top: 1.6rem; left: -.08rem; }

.pickup li p{ font-size: 1.2rem; }



.pickup2{ flex-wrap: wrap; margin-bottom: 7rem; }

.pickup2 li{ width: 100%; }

.pickup2 li + li{ margin-top: 3.5rem; }

.pickup2 li h3{ height: 20rem; font-size: 1.9rem; margin-bottom: .6rem; }

.pickup2 li h3:before{ border-width: 7.5rem 7.5rem 0 0; }

.pickup2 li h3:after{ font-size: 1.2rem; top: 1.6rem; left: -.08rem; }

.pickup2 li p{ font-size: 1.2rem; }



	.find-list{ width: 35rem; margin-left: -2.5rem; }

	.find-list li{ width: 11rem; height: 11rem; font-size: 0.5rem; }

	.find-list li, .find-list li:nth-of-type(5n){ margin-right: calc((100% - 11rem * 3) / 2); }

	.find-list li:nth-of-type(3n){ margin-right: 0; }

	.find-list li:nth-of-type(n+4){ margin-top: 1.5rem; }

	.find-list li img{ width: 7.9rem; margin: 1.2rem auto 1rem; }

    
    .treat-list{ width: 35rem; margin-left: -1.3rem; }

/*	.treat-list li{ width: 11rem; height: 11rem; font-size: 0.5rem; }*/

/*	.treat-list li, .treat-list li:nth-of-type(5n){ margin-right: calc((100% - 11rem * 3) / 2); }*/

	.treat-list li:nth-of-type(3n){ margin-right: 0!important; }

	.treat-list li:nth-of-type(n+4){ margin-top: 1.5rem; }

	.treat-list li img{ width: 7.9rem; margin: 1.2rem auto 1rem; }
    
	/*0701追加*/
    .container .side-img, .container div.article {flex-direction: column-reverse;}
    .flex_box {display: block;}
	.pc_vieww{display: none;}
    .container div.article .imgR, .container div.article .imgL, .container .side-img .img {margin-bottom: 20px;}
.treat-list li, .treat-list li:nth-of-type(5n) {
    margin-right: calc((100% - 28vw * 3) / 2);
}
.treat-list li {
    width: 28vw;
    height: 28vw;
    font-size: -0.5rem;
}
    .fandq .wrap{padding-left: 0px; padding-right: 0px;}
	
	.th-background tr th {background: #38140aa6;color: #fff;}
	.th-background tr th.sticky-th {background: #7d6660 ; position: sticky; left: 0;}
	
	.youtube iframe {height: 315px;}
    
    
    .btn-flex {
        display: block;
    }
    
    .btn-flex a {
        margin-bottom: 0 !important;
    }
    
    
}

@media screen and (max-width: 768px) {

.table-box {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.tbl-r05 {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}
.tbl-r05 th,
.tbl-r05 td {
  padding: 8px;
  text-align: left;
  word-wrap: break-word;
  overflow: hidden;
  text-overflow: ellipsis;
}

    .tbl-r05.price-table01 .table_shisetsu{
        width: 140px;
        text-align: center;
        padding: 8px;
        border: 1px solid #ddd;
    }
	@media (max-width: 768px){
.table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.table-scroll table {
  min-width: 600px; /* 表が画面より広くなるように調整 */
  width: 100%;
  border-collapse: collapse;
}
.table-scroll table:not(.no-default) th{width: 15%; text-align: center;}
.table-scroll table:not(.no-default) td{width: 15%; text-align: center;}
.table-scroll table:not(.no-default) th:last-child,
.table-scroll table:not(.no-default) td:last-child {
  width: 20%; /* お好みの幅に調整 */
  min-width: 20%;
}
.table-scroll table:not(.no-default) th:first-child,
.table-scroll table:not(.no-default) td:first-child {
  width: 18%; /* お好みの幅に調整 */
  min-width: 18%;
}
}