@media(max-width: 768px){
	.mv{ height: 66.66vw; background-attachment: initial; margin-bottom: 0; }
	.mv.sample{ background-image: url(../images/dummy/mv01-sp.jpg); }

	main{ width: 100%; padding-left: 10vw; padding-right: 10vw; margin-bottom: 20vw; }

	main h1{ padding-bottom: 7.73vw; background-size: 4vw; margin-bottom: 4.4vw; font-size: 6.66vw; }
	main h1 span{ font-size: 2.4vw; width: 42.6vw; height: 10.66vw; margin-bottom: 1.8em; }
	main h1 + p{ font-size: 3.6vw; margin-bottom: 10.66vw; max-width: 100%; }
	main h2{ font-size: 5.33vw; margin: 18vw 0 4vw; }
	main h3:not([class]){ font-size: 5.33vw; margin: 11vw 0 4vw; }
	main h3.table-ttl{ border-width: 1.73vw; padding-left: 2.133vw; margin-bottom: 3.33vw; }
	main h3.table-ttl span:not(.border){ font-size: 5.33vw; }
	main h3.table-ttl span.border{ top: 2.7vw; }
	main h3.table-ttl small{ font-size: 3.066vw; }
	main h4:not([class]){ font-size: 4.66vw; margin: 9vw 0 3.33vw; }
	main h4.table-sub{ font-size: 4.66vw; line-height: 1.5; padding: .35em .8em; }
	main h5{ font-size: 3.6vw; margin: 6vw 0 2.4vw; }
	main a.btn{ margin: 4vw auto; }

	main .side-img{ flex-wrap: wrap; margin: 8vw 0; }
	main .side-img .img{ width: 100%; margin-bottom: 4vw; order: 1; }
	main .side-img .content{ width: 100%; order: 2; }

	main ul.list01{ margin: 8vw 0; }
	main ul.list01 li{ padding: 6.66vw; }
	main ul.list01 li + li{ margin-top: 4vw; }
	main ul.list01 li.row .img{ width: 100%; margin-bottom: 4.53vw; }
	main ul.list01 li.row dl{ width: 100%; }
	main ul.list01 li dl dt{ font-size: 4vw; }

	main ul.list02{ margin: 8vw 0; }
	main ul.list02 li{ width: 100%; }
	main ul.list02 li:nth-of-type(n+2){ margin-top: 4vw; }
	main ul.list02 li dl{ padding: 3.33vw 6.66vw 4.66vw; }
	main ul.list02 li dl dt{ font-size: 4.66vw; }

	main table{ display: block; border-bottom: none; }
	main table tbody, main table tr{ display: block; }
	main table th{ display: block; width: 100%; white-space: initial; border-bottom: none; padding: 0; }
	main table th span{ padding: 2.6vw 4vw; display: block; }
	main table th span:before,
	main table td span:before{ width: calc(100% - 2.133vw); height: calc(100% - 2.133vw); }
	main table td{ display: block; border-bottom: none; padding: 1.3vw 4vw; }
	main table td span{ padding: 1.3vw 0; display: block; }
	main table tr > *:last-child{ border-bottom: solid 1px; }

/*	.news{ padding-top: 20vw; }*/
	
	.conditions {
    /* width: 80vw; */
    width: 85vw;
    padding: 6.66vw 3.33vw;
    z-index: 2;}
	
	.conditions dl {
    padding: 8vw 4vw;
    margin-bottom: 6vw;}
	
	.conditions dl dt {
    font-size: 5.33vw;
    padding-bottom: 5.33vw;
    background-size: 4vw;
    margin-bottom: 1.33vw;}
	
	.conditions dl dd {
    font-size: 3.4vw;
    text-align: left;
    padding: 0.2em;}
	
	.affliated-clinics .content table th{
	    display: block;
    width: 100%;
    white-space: initial;
    border-bottom: none;
    padding: 0
	}
	
	.affliated-clinics .content h4 {margin-top:6vw;}
	
	.form-background {padding: 20px;}
}	
