@media(max-width: 768px){
	.mv{ height: 16.5rem; }

	.pankuzu{ width: 100%; padding: 0 2.5rem; text-align: left; }
	.pankuzu li{ font-size: 1.1rem; }

	main{ width: 100%; padding: 0 2rem; margin: 5rem 0 8rem; font-size: 1.4rem; }
	main h1{ font-size: 3.2rem; margin-bottom: 6rem; }
	main h1 small{ font-size: 1rem; background-size: 2.5rem, 2.5rem; padding: 0 3rem 0 3.1rem; }
	main h1 + p{ margin-top: -4rem; margin-bottom: 3rem; }

	main section + section{ margin-top: 6rem; }
	main section > img{ margin: 1.8rem 0; }

	main section h2:not(.no-style){ font-size: 1.9rem; margin: 6rem 0 2.5rem; }
	main section h3:not(.no-style){ font-size: 1.8rem; margin: 5rem 0 2rem; }
	main section h4:not(.no-style){ font-size: 1.6rem; margin: 4rem 0 1.8rem; }
	main section h5:not(.no-style){ font-size: 1.5rem; margin: 3.5rem 0 1.6rem; }
	main section h6:not(.no-style){ font-size: 1.4rem; }

	main section ol:not([class]){ margin: 3rem 0; }
	main section ol:not([class]) li{ font-size: 1.5rem; padding-left: 6rem; }
	main section ol:not([class]) li + li{ margin-top: 2.35rem; }
	main section ol:not([class]) li:before{ width: 4rem; height: 4rem; font-size: 2.2rem; }

	main section ul:not([class]){ margin: 3rem 0; }
	main section ul:not([class]) li{ font-size: 1.4rem; }
	main section ul:not([class]) li:before{ top: .5rem; }
	main section ul:not([class]) li + li{ margin-top: 1.6rem; }

	main section ul.before-after{ margin: 3rem 0; flex-wrap: wrap; }
	main section ul.before-after li{ width: 100%; }
	main section ul.before-after li + li{ margin-top: 2rem; }

	main section ol.flow{ margin: 4rem 0; }
	main section ol.flow li.has-img{ padding: 0; }	
	main section ol.flow li + li{ margin-top: 2.5rem; }
	main section ol.flow li strong:first-of-type{ font-size: 1.6rem; padding-left: 4.2rem; }
	main section ol.flow li strong:first-of-type:before{ width: 3.5rem; height: 3.5rem; border-radius: 3.5rem; font-size: 2rem; top: -.3rem;  }
	main section ol.flow li img{ position: static; margin-top: 1.5rem; display: block; }

	main section table:not(.no-style){ margin: 3rem 0; }
	main section table:not(.no-style) th{ font-size: 1.3rem; }
	main section table.sp-break{ border-bottom: solid 1px #b4b4b4; }
	main section table.sp-break,
	main section table.sp-break tbody,
	main section table.sp-break tr,
	main section table.sp-break th,
	main section table.sp-break td{ display: block; }
	main section table:not(.no-style).sp-break th{ text-align: center; border-bottom: none; padding: .5em 1em; }
	main section table:not(.no-style).sp-break td{ border-bottom: none; }
    main section table.tabele-syourei th,main section table.tabele-syourei td{letter-spacing: 0; text-align: left;}
    main section table.tabele-syourei th{ width: 20%;}
	/*** doctor ***/

	.dr-pic{ height: 16.5rem; padding-left: 2rem; margin: 6rem 0 2rem; }
	.dr-pic img{ width: 15rem; height: 18.25rem; object-fit: cover; object-position: top; }
	.dr-pic h3{ font-size: 2.5rem; }
	.dr-pic h3 + small{ font-size: 1.3rem; }

	.history-row{ flex-wrap: wrap; margin: 4.5rem 0; }
	.history-row .inner{ width: 100%; }
	.history-row .inner + .inner{ margin-top: 3.25rem; }
	.history-row .inner h4{ margin-bottom: 1.7rem; font-size: 1.4rem; border-radius: 0; }


	/*** archive ***/

	article.post-article{ flex-wrap: wrap; }
	article.post-article + .post-article{ margin-top: 4rem; }
	article.post-article .thumb{ width: 100%; margin-bottom: 1.5rem; }
	article.post-article .txt{ width: 100%; }
	article.post-article .txt h2{ font-size: 1.8rem; }
	article.post-article .txt p{ font-size: 1.4rem; }


	/*** treatment ***/

/*	.sec-treatment{ margin-bottom: 5rem; }*/
	.sec-treatment{ margin-bottom: 0rem!important; }
    
/*husuma*/
    div.husuma ul.flex li{width: calc(100%/2 - 10px); margin-bottom: 3vw;}
/*side-img*/
    .side-img {flex-wrap: wrap;margin: 8vw 0;}
    .side-img .img {width: 100%;order: 1;margin-bottom: 3vw;}
    .side-img .content {width: 100%;order: 2;}
/*flex*/
    .flex {flex-wrap: wrap;margin-bottom: 10vw;}
    .flex .half:first-child {margin-bottom: 3vw;}
    .flex.width100 .half {width: 100%;}
    
/*    追加　　*/
    main section .hosoku{margin: 10vw auto; width: 100%; border-radius:10px;padding: 20px;}
    main section .hosoku h3{text-align: center;}
	main section .hosoku h4{font-size: 1.6rem!important;text-align: center;}
    main section .hosoku.map-hosoku{margin: 10vw calc(50% - 48vw)!important;}
    main section ul.number{ margin: 8vw 0; }
    main section ul.number li{ padding-left: 0; width:100%; display:block; padding-top:20px; margin-bottom: 8vw;}
    main section ul.number li + li{ margin-top: 4vw; }
    main section ul.number li:before{ width: 50px; height: 50px; background-size:50px; top:30px; }
    main section ul.number li .img{ width: 75%; margin: 0 auto 10px;}
    main section ul.number li dl{ width: 100%; }
    main section ul.number li dl dt{ font-size: 4.3vw; margin: 3vw auto;}
    
    .side-img{flex-wrap: wrap; margin: 8vw 0;}
    .side-img .content{width:100%; order: 2;}
    .side-img .img{width:100%; order: 1; margin-bottom: 3vw;}
    
    .flex{flex-wrap: wrap; margin-bottom: 10vw;}
    .flex.width100 .half{width: 100%;}
    .flex .half{width: calc(50% - 5px);}
    .flex .half:first-child{margin-bottom: 3vw;}
    .flex .half iframe{height: 200px;}
    
	.googleCal iframe{width: 100%; height: auto;}
	
	.scroll > table{
        display: block;
        overflow-x: scroll;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;	
    }
    
    main section .list-double ul{column-count:1;}
    .dr_zone table th,.history-row .inner table th{width: 90px;font-weight: 100; font-size: 3.3vw;}
    .dr_zone table td,.history-row .inner table td{font-size: 3.3vw;}
    
    main section .scroll table:not(.no-style) th,
    main section .scroll table:not(.no-style) td{font-size:3vw;}
    
    main#price section .scroll table:not(.no-style) th{min-width: 200px;}
    
    .googleCal iframe{height: 450px;}
    .youtube{width: 100%; height: 250px;}
	.dr-pic2{ height: 16.5rem; padding-left: 2rem; margin: 6rem 0 2rem; }
	.dr-pic2 img{ width: 15.5rem;height: 14.75rem; object-fit: cover; object-position: top; }
	.dr-pic2 h3{ font-size: 1.8rem; }
    
    .genatus-tb td {
        line-height: 1 !important;
        font-size: 12.5px;
    }
	
	.history-row .inner table th{ width:95px;}
    
    .cta_wrap{ margin: 0 0 6rem;}
    .cta_wrap ul{ display: block;}
    .cta_wrap ul li{ width: 100%; }
    .cta_wrap ul li + li{ margin-top: 2.5rem;}    
}

@media screen and (max-width:768px) {
  #formWrap {
    width: 95%;
    margin: 0 auto;
  }
  table.formTable th, table.formTable td {
    width: auto;
    display: block;
  }
  table.formTable th {
    margin-top: 5px;
    border-bottom: 0;
  }
  input[type="text"], textarea {
    width: 100%;
    padding: 5px;
    font-size: 110%;
    display: block;
  }
  input#input_year {
    width: 25vw;
    display: inline-block;
  }
  input#input_month, input#input_day {
    width: 10vw;
    display: inline-block;
  }
  input[type="submit"], input[type="reset"], input[type="button"] {
    display: block;
    width: 80%;
    height: 40px;
    margin: 0 auto;
  }
/*
    ul.clinic-list li {
    flex-basis: 15rem;
    }
*/
    ul.clinic-list li a {
    font-size: 1.1rem;
    padding-left: 1rem;
    }
    ul.clinic-list li a strong {
    font-size: 1.5rem;
    }
    .group-map-pc{
        display: none;
    }

    .group-map-sp{
        display: block;
    position: relative;
    }
    
    .group-map-sp ul.clinic-list{
        margin: 0;
    }
    
    .group-map-sp ul.clinic-list li.maebashi{
        position: absolute;
         top: 90vw;
        right: 0px;
        width: 17rem;
    }

    .group-map-sp ul.clinic-list li.tokyo{
        position: absolute;
        top: 40vw;
        right: 0px;
        width: 17rem;
    }
    .group-map-sp ul.clinic-list li.chiba{
        position: absolute;
         top: 75vw;
        right: 0px;
        width: 11rem;
    }

    .group-map-sp ul.clinic-list li.osaka{
        position: absolute;
         top: 75vw;
        left: 0px;
        width: 15rem;
    }
    .group-map-sp ul.clinic-list li.kyoto{
        position: absolute;
         top: 50vw;
        left: 0px;
        width: 15rem;
    }
    
    
    .group-map-sp ul.clinic-list li.maebashi{
        position: absolute;
         top: 80vw;
        right: 0px;
        width: 17rem;
    }

    .group-map-sp ul.clinic-list li.tokyo{
        position: absolute;
        top: 33vw;
        right: 0px;
        width: 17rem;
    }
    .group-map-sp ul.clinic-list li.chiba{
        position: absolute;
         top: 60vw;
        right: 0px;
        width: 11rem;
    }

    .group-map-sp ul.clinic-list li.osaka{
        position: absolute;
         top: 69vw;
        left: 0px;
        width: 15rem;
    }
    .group-map-sp ul.clinic-list li.kyoto{
        position: absolute;
         top: 44vw;
        left: 0px;
        width: 15rem;
    }
    ul.flow-list li {
    padding-bottom: 6.4vw;
    padding-left: 24vw
}

ul.flow-list li:not(:last-of-type):after {
    left: 10.556vw
}

ul.flow-list li:nth-of-type(4):before {
    bottom: 2vw;
    height: 3.73vw;
    left: 9.5vw
}

ul.flow-list li dl {
    width: 100%
}

ul.flow-list li dl dt {
    font-size: 1.7rem;
    margin-bottom: 2rem; letter-spacing: 0.05rem; padding-bottom: 0.7rem;
}

ul.flow-list li dl .img-sp {
    border-radius: 10px;
    display: block!important;
    margin-bottom: 3vw
}

ul.flow-list li .no {
    border-radius: 21.33vw;
    font-size: 5.33vw;
    height: 21.33vw;
    width: 21.33vw
}

ul.flow-list li .no strong {
    font-size: 6.93vw
}

ul.flow-list li .img-pc {
    display: none
}

ul.flow-list +a.btn {
    margin-top: 6.4vw
}
    .hosoku.cta_ver{ width:100%; padding: 40px 20px; margin: 0 auto;}
    .banner_wrap{ margin-top: 3rem; display:block; justify-content: space-between;}
    .banner_wrap a{ width: 100%; }
    .catchcopy{ padding: 1rem 0; font-size: 18px; line-height: 1.5;}
    .achievements{ font-size: 15px;}
    
    .campaign_wrap{ padding: 2rem 1rem 1rem;}
    .campaign_wrap + .campaign_wrap{ margin-top: 3rem;}
    main section .campaign_wrap h3{ margin-top: 0;}
    main section .campaign_wrap h4:not(.no-style){ margin: 2rem 0 1.5rem;}
    main section .campaign_wrap .cta_wrap{ margin-top: 5rem;}
    main section .campaign_wrap ul:not([class]) li{ margin-top: 2.5rem;}
    main section .campaign_wrap table:not(.no-style) th{ width: 100%;}
    a.insta{
    bottom: 5vw;
    left: 5vw;
    }
    
    .supervisor-box{ padding: 1rem 1.5rem;}
    .supervisor-box p.supervisor-clinic,.supervisor-box p.supervisor-name{ font-size: 15px; margin: 0; }
    .supervisor-box p{ margin-bottom: 0;}

}