.mv{ height: 33rem; background-repeat: no-repeat; background-size: cover; background-position: center; }
.mv.sample{ background-image: url(../images/dummy/mv01.jpg); }
.mv.concept{ background-image: url("../images/dummy/mv_concept.jpg"); }
.mv.treatment{ background-image: url("../images/dummy/mv_treatment.jpg"); }
.mv.treatment_02{ background-image: url("../images/dummy/mv_treatment_02.jpg"); }
.mv.clinic{ background-image: url("../images/dummy/mv_clinic.jpg"); }
.mv.doctor{ background-image: url("../images/dummy/mv_doctor.jpg"); }

.pankuzu{ width: 1000px; margin: 1rem auto; text-align: left; }
.pankuzu li{ font-size: 1.2rem; display: inline-block; }
.pankuzu li:not(:last-of-type):after{ content: '-'; margin-left: .5em; }

main{ display: block; width: 800px; margin: 6rem auto 14rem; font-size: 1.5rem; box-sizing: border-box; }
main *{ box-sizing: border-box; }
main h1{ font-size: 5rem; font-family: YuMincho, 游明朝体, Yu Mincho, 游明朝, yu-mincho-pr6n, serif; font-weight: 600; line-height: 1.4; text-align: center; margin-bottom: 8rem; color: #80795f; }
main h1 small{ display: table; font-size: 2rem; color: #80795f; margin: 0 auto; letter-spacing: .28em; padding: 0 4.8rem 0 5.3rem; background-image: url(../images/common/item-ttl01.png), url(../images/common/item-ttl02.png); background-size: 4rem, 4rem; background-position: left center, right center; background-repeat: no-repeat, no-repeat; margin-bottom: .8rem; }
main h1 + p{ margin-top: -5rem; margin-bottom: 8rem; text-align: center; font-size: 1.1em; font-family: YuMincho, 游明朝体, Yu Mincho, 游明朝, yu-mincho-pr6n, serif;}

main section > img{ display: block; width: 100%; margin: 4rem 0; }
main section + section{ margin-top: 8rem; }
main section > *:first-child{ margin-top: 0 !important; }
main section > *:last-child{ margin-bottom: 0 !important; }

main section h2:not(.no-style){ font-size: 2.6rem; font-family: YuMincho, 游明朝体, Yu Mincho, 游明朝, yu-mincho-pr6n, serif; font-weight: 600; line-height: 1.6; color: #fff; background: #80795f; text-align: center; margin: 8rem 0 4rem; padding: .2em 1em; }
main section h3:not(.no-style){ font-size: 2.2rem; font-family: YuMincho, 游明朝体, Yu Mincho, 游明朝, yu-mincho-pr6n, serif; font-weight: 600; color: #80795f; border-bottom: solid 1px; margin: 6rem 0 2.6rem; }
main section h4:not(.no-style){ font-size: 1.8rem; font-family: YuMincho, 游明朝体, Yu Mincho, 游明朝, yu-mincho-pr6n, serif; font-weight: 600; background: #fff; color: #80795f; padding: .1em 1em; margin: 4rem 0 2rem; }
main section h5:not(.no-style){ font-size: 1.6rem; padding-left: 1em; position: relative; color: #80795f; margin: 3rem 0 1rem; }
main section h5:not(.no-style):before{ content: '●'; position: absolute; left: 0; }
main section h6:not(.no-style){ font-size: 1.5rem; color: #80795f; margin: 1.3em 0 .8em; }
main section h2:not(.no-style) + *,
main section h3:not(.no-style) + *,
main section h4:not(.no-style) + *,
main section h5:not(.no-style) + *,
main section h6:not(.no-style) + *{ margin-top: 0 !important; }
main section p{ margin-bottom: 1em; }
main section p strong,
main h1 + p strong{ font-weight: 700; background: linear-gradient(transparent 80%, #e5c8c1 80%); }
main section ol:not([class]){ margin: 4rem 0; counter-reset: number; }
main section ol:not([class]) li{ font-size: 1.6rem; padding-left: 6.4rem; position: relative; min-height: 5rem; display: flex; align-items: center; }
main section ol:not([class]) li:before{ counter-increment: number; content: counter(number); width: 5rem; height: 5rem; background: #505050; font-size: 2.8rem; font-family: YuMincho, 游明朝体, Yu Mincho, 游明朝, yu-mincho-pr6n, serif; font-weight: 600; color: #e6e6e4; font-weight: 700; display: flex; justify-content: center; align-items: center; position: absolute; left: 0; top: 0; }
main section ol:not([class]) li + li{ margin-top: 3rem; }

main section ul:not([class]){ margin: 4rem 0; }
main section ul:not([class]) li{ font-size: 1.6rem; padding-left: 2.3rem; position: relative; }
main section ul:not([class]) li:before{ content: ''; width: 1.5rem; height: 1.5rem; border-radius: 1.5rem; background: #80795f; position: absolute; left: 0; top: .7rem; }
main section ul:not([class]) li + li{ margin-top: 2rem; }

main section ul.before-after{ margin: 4rem 0; display: flex; justify-content: space-between; gap:2rem;}
main section ul.before-after li{ width: 38rem; line-height: 0; }
main section ul.before-after li img{ width: 100%; }
main section ul.before-after li:before{ width: 100%; height: 3rem; display: flex; justify-content: center; align-items: center; color: #fff; line-height: 1; }
main section ul.before-after li:nth-of-type(1):before{ content: 'BEFORE'; background: #787878; }
main section ul.before-after li:nth-of-type(2):before{ content: 'AFTER'; background: #9e3437; }
main section ul.before-after.before_only li:nth-of-type(2):before{ content: 'BEFORE'; background: #787878; }
main section ul.before-after.after_only li:nth-of-type(1):before{ content: 'AFTER'; background: #9e3437; }
main section ul.before-after + table:not([class]) th{width: 10%;}

main section ol.flow{ counter-reset: flow; margin: 5rem 0;}
main section ol.flow li{ position: relative; line-height: 2; }
main section ol.flow li + li{ margin-top: 4rem; }
main section ol.flow li.has-img{ padding-right: 40rem; }
main section ol.flow li strong:first-of-type{ position: relative; padding-left: 4rem; display: block; margin-bottom: 1.2rem; font-size: 1.8rem; font-weight: 700; }
main section ol.flow li strong:first-of-type:before{ counter-increment: flow; content: counter(flow); width: 3rem; height: 3rem; background: #505050; border-radius: 1.5rem; display: flex; justify-content: center; align-items: center; font-size: 1.8rem; font-family: YuMincho, 游明朝体, Yu Mincho, 游明朝, yu-mincho-pr6n, serif; font-weight: 600; color: #fff; position: absolute; top: .2rem; left: 0; letter-spacing: 0; line-height: 1; }
main section ol.flow li img{ width: 35rem; position: absolute; top: 0; right: 0; }

main section table:not(.no-style){ width: 100%; margin: 4rem 0; }
main section table:not(.no-style) th{ padding: 1em; vertical-align: middle; color: #fff; border: solid 1px #b4b4b4; line-height: 1.7; background: #505050; }
main section table:not(.no-style) td{ padding: 1em; vertical-align: middle; border: solid 1px #b4b4b4; line-height: 1.7; }


/*** doctor ***/

.dr-pic{ width: 100%; height: 30rem; display: flex; align-items: center; background: url(../images/doctor/bg01.jpg) no-repeat center/cover; position: relative; padding-left: 5rem; margin: 10rem 0 3.5rem; }
.dr-pic img{ width: 36rem; position: absolute; right: 0; bottom: 0; }
.dr-pic h3{ font-size: 5rem; font-family: YuMincho, 游明朝体, Yu Mincho, 游明朝, yu-mincho-pr6n, serif; font-weight: 600; color: #505050; }
.dr-pic h3 + small{ display: block; font-size: 2rem; font-family: YuMincho, 游明朝体, Yu Mincho, 游明朝, yu-mincho-pr6n, serif; font-weight: 600; color: #80795f; line-height: 1; }
.dr-pic p.dr-name{ font-size: 5rem; font-family: YuMincho, 游明朝体, Yu Mincho, 游明朝, yu-mincho-pr6n, serif; font-weight: 600; color: #505050; margin-bottom: 0!important; }
.dr-pic p.dr-name + small{ display: block; font-size: 2rem; font-family: YuMincho, 游明朝体, Yu Mincho, 游明朝, yu-mincho-pr6n, serif; font-weight: 600; color: #80795f; line-height: 1; }
.history-row{ display: flex; justify-content: space-between; margin: 3.6rem 0 }
.history-row .inner{ width: 37rem; }
.history-row .inner h4{ font-size: 1.5rem; font-family: YuMincho, 游明朝体, Yu Mincho, 游明朝, yu-mincho-pr6n, serif; font-weight: 600; color: #80795f; text-align: center; background: #fff; margin-bottom: 2.5rem; }
.history-row .inner table{ width: 100%; }
.history-row .inner table th{ font-weight: 400; width: 1px; padding-right: 1.5em; white-space: nowrap; }
.history-row .inner table tr + tr > *{ padding-top: .5em; }
.history-row .inner ul li{ padding-left: 1em; position: relative; }
.history-row .inner ul li:before{ content: '・'; position: absolute; left: 0; }
.history-row .inner ul li + li{ margin-top: .5em; }


/*** treatment ***/
.sec-treatment{ margin-bottom: 10rem; }


/*** archive ***/

article.post-article{ display: flex; justify-content: space-between; position: relative; transition: .3s; }
article.post-article + .post-article{ margin-top: 5rem; }
article.post-article.search{ display: block; }
/*article.post-article:hover{ opacity: .4; }*/
article.post-article a.linkwrap{ width: 100%; height: 100%; display: block; position: absolute; top: 0; left: 0; z-index: 10; }
article.post-article .thumb{ width: 300px; height: 150px; background-repeat: no-repeat; background-size: cover; background-position: center; border-radius: 10px; }
article.post-article .txt{ width: calc(100% - 350px); }
article.post-article.search .txt{ width: 100%; }
article.post-article .txt .time{ display: block; font-size: 1.2rem; margin-bottom: 6px; }
article.post-article .txt .update-time{ display: block; font-size: 1.2rem; margin-bottom: 6px; }
article.post-article .txt h2{ font-size: 2.2rem; margin-bottom: .6em; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
article.post-article .txt p{ display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }

.pagination{ margin-top: 8rem; }
.pagination .page-numbers{ display: flex; }
.pagination .page-numbers li + li{ margin-left: .8rem; }
.pagination .page-numbers li a,
.pagination .page-numbers li span{ display: flex; /*width: 2rem;*/ height: 2rem; font-size: 1.2rem; justify-content: center; align-items: center; border: solid 1px; box-sizing: border-box; padding: 0 .5em; letter-spacing: 0; }
.pagination .page-numbers li span.current{ background: #9b3437; border-color: #9b3437; color: #fff; font-weight: 700; }


/*追加*/

main section .hosoku{background: #fff; padding: 30px; margin: 50px auto; border-radius: 20px;}
main section .hosoku > *:first-child{margin-top: 0;}
main section .hosoku h4{padding-left: 0; padding-right: 0; font-size: 1.7rem;}
main section .hosoku h4{padding-right: 0;}

main section ul.number{ margin: 40px 0; }
main section ul.number li{ display: flex; justify-content: space-between; align-items: center; position: relative; padding-left: 60px; margin-bottom: 40px;}
main section ul.number li + li{ margin-top: 30px; }
main section ul.number li:before{ content: ''; width: 50px; height: 50px; background-repeat: no-repeat; background-size: contain; position: absolute; top: 50%; transform: translateY(-50%); left: 0; }
main section ul.number li:nth-of-type(1):before{ background-image: url(../images/common/no01.png); }
main section ul.number li:nth-of-type(2):before{ background-image: url(../images/common/no02.png); }
main section ul.number li:nth-of-type(3):before{ background-image: url(../images/common/no03.png); }
main section ul.number li:nth-of-type(4):before{ background-image: url(../images/common/no04.png); }
main section ul.number li:nth-of-type(5):before{ background-image: url(../images/common/no05.png); }
main section ul.number li:nth-of-type(6):before{ background-image: url(../images/common/no06.png); }
main section ul.number li:nth-of-type(7):before{ background-image: url(../images/common/no07.png); }
main sectionr ul.number li:nth-of-type(8):before{ background-image: url(../images/common/no08.png); }
main section ul.number li:nth-of-type(9):before{ background-image: url(../images/common/no09.png); }
main section ul.number li:nth-of-type(10):before{ background-image: url(../images/common/no10.png); }
main section ul.number li .img{ width: 150px; }
main section ul.number li .img img{ display: block; width: 100%; border-radius: 100%; }
main section ul.number li dl{ width: 575px; }
main section ul.number li dl dt{ font-size: 18px; font-weight: 700; color: #a38138; }
main section ul.number li dl dd{line-height: 2;}
main section ul.number li dl dd strong{font-weight: 700; background: linear-gradient(transparent 80%, #e5c8c1 80%);}

.btn{margin-left:auto; margin-right:auto;}
.side-img{display: flex; justify-content: space-between; margin: 50px 0;}
.side-img .content{width:55%;}
.side-img .content > *:first-child{margin-top: 0;}
.side-img .img{width:40%;}

.flex{display: flex; justify-content: space-between; margin-bottom: 50px; flex-wrap: wrap;}
.flex .half{width: calc(50% - 10px);}
.flex .half iframe{width: 100%; height: 250px;}
.flex .half > *:first-child{margin-top: 0;}

main section .list-double ul{column-count:2;}
.price table th{width: 40%;	}

.dr_zone table th,
.history-row .inner table th{width: 150px;font-weight: 100; font-size: 13px;}
.dr_zone table td,
.history-row .inner table td{font-size: 15px; padding-bottom: .4rem;}

main section .scroll table:not(.no-style) th,
main section .scroll table:not(.no-style) td{font-size:13px;}

main#price section .scroll table:not(.no-style) th{width: 40%;}
main#price section .scroll table:not(.no-style) td{width: 30%;}

.googleCal iframe{width: 100%; height: 600px;}

#calendar{padding-top: 100px; margin-top: -100px; display: block;}
.youtube{width: 700px; height: 400px; margin: 0 auto;}
.youtube iframe{width: 100%; height: 100%;}


/*
.anchor{
    display: block;
    padding-top: 900px;
    margin-top: -900px;
}*/


.dr-pic2{ width: 100%; height: 30rem; display: flex; align-items: center; background: url(../images/doctor/bg01.jpg) no-repeat center/cover; position: relative; padding-left: 5rem; margin: 10rem 0 3.5rem; }
.dr-pic2 img{ width: 36rem; position: absolute; right: 0; bottom: 0; }
.dr-pic2 h3{ font-size: 3rem; font-family: YuMincho, 游明朝体, Yu Mincho, 游明朝, yu-mincho-pr6n, serif; font-weight: 600; color: #505050; line-height: 1.2}
.dr-pic2 h3 + small{ display: block; font-size: 2rem; font-family: YuMincho, 游明朝体, Yu Mincho, 游明朝, yu-mincho-pr6n, serif; font-weight: 600; color: #80795f; line-height: 1; }

.dr-pic2 p.dr-name{ font-size: 3rem; font-family: YuMincho, 游明朝体, Yu Mincho, 游明朝, yu-mincho-pr6n, serif; font-weight: 600; color: #505050; line-height: 1.2}
.dr-pic2 p.dr-name + small{ display: block; font-size: 2rem; font-family: YuMincho, 游明朝体, Yu Mincho, 游明朝, yu-mincho-pr6n, serif; font-weight: 600; color: #80795f; line-height: 1; }


.access_img {
    margin-top: -50px;
    margin-bottom: 30px;
}


.genatus-tb {
    margin-bottom: 0 !important;
}


@media screen and (max-width: 768px) {
    .access_img {
        margin-top: -20px;
        margin-bottom: 20px;
    }
}

a.insta {
    font-size: 1.4rem;
    width: 11.5rem;
    height: 3rem;
    display: flex;
    align-items: center;
    padding-right: 3.8rem;
    letter-spacing: .05em;
    background: url(../images/common/icon-insta01.png) no-repeat center right/contain;
    position: absolute;
    bottom: 5rem;
    left: 5rem;
    color: #80795f;
}
.interstate {
    font-weight: 500;
}


ul.flow-list li {
    position: relative;
    padding-left: 125px;
    display: flex;
    justify-content: space-between;
    padding-bottom: 50px
}

ul.flow-list li:not(:last-of-type):after {
    content: '';
    width: 1px;
    height: 100%;
    background:rgb(128, 121, 95);
    position: absolute;
    left: 50px;
    top: 0;
    z-index: -1
}

ul.flow-list li:nth-of-type(4):after {
    height: calc(100% - 10px)
}

ul.flow-list li:nth-of-type(4):before {
    content: '';
    width: 1px;
    height: 14px;
    background:rgb(128, 121, 95);
    position: absolute;
    bottom: 10px;
    left: 46px;
    transform: rotate(-35deg)
}

ul.flow-list li .no {
    width: 100px;
    height: 100px;
    border-radius: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 22px;
    color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    background:linear-gradient(140deg, rgba(255, 255, 255, 1), rgba(221, 219, 212, 1) 3%, rgba(198, 195, 183, 1) 10%, rgba(175, 171, 155, 1) 20%, rgba(152, 147, 126, 1) 30%, rgba(128, 121, 95, 1) 40% 60%, rgba(128, 121, 95, 1) 75% 90%, rgba(128, 121, 95, 1));
}

ul.flow-list li .no strong {
    font-size: 30px
}
ul.flow-list li .no span.fw{
    line-height: 1.1;
}


ul.flow-list li dl {
    width: 350px
}

ul.flow-list li dl dt {
    font-size: 2.2rem;
    font-weight: 600;
    color:rgb(128, 121, 95);
    border-bottom: 2px dotted #5b4d22;
    margin-bottom: 15px
}

ul.flow-list li dl dt + .img-sp{
    display: none;
}

ul.flow-list li .img-pc {
    width: 250px
}

ul.flow-list li .img-pc img {
    display: block;
    width: 100%;
    border-radius: 10px
}

ul.flow-list + a.btn {
    margin: 35px auto 0
}

.banner-img-pc{
	display: block;
}

.banner-img-sp{
	display: none;
}

div.husuma ul.flex{display: flex; justify-content: space-between; flex-wrap: wrap;}
div.husuma ul.flex li{width: calc(100%/5 - 5px);}
div.husuma ul.flex li p{text-align: center; margin-bottom: 0; font-size: 13px;}

.mokuji h2 {
  border-bottom: 1px solid;
  font-size: 2.2rem;
  color: #836d52;
  font-family: YuMincho, 游明朝体, Yu Mincho, 游明朝, yu-mincho-pr6n, serif;
  font-weight: 600;
}
.mokuji h4 {
  font-size: 3rem;
  font-family: 游明朝, YuMincho, yu-mincho-pr6n, sans-serif;
  font-weight: 600;
  color: rgb(25, 165, 151);
  line-height: 1.6;
  text-align: center;
  position: relative;
  padding-bottom: 0.8em;
  margin: 9rem 0px 4.5rem;
}
.mokuji h4:after {
  content: '';
  width: 5rem;
  height: 1px;
  background: #19a597;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.chapter {
  width: 100%;
  column-count: 2;
  background: #f3f3f3;
  border-radius: 1rem;
  padding: 5rem 5rem 6rem;
  margin-top: 2rem;
  counter-reset: li;
  margin-bottom: 4rem;
}
.chapter li {
  position: relative;
  padding-left: 30px;
  margin: 0 0 10px;
  list-style: none;
}
.chapter li:before {
  position: absolute;
  top: 0;
  left: 0;
  counter-increment: li;
  content: counter(li)'.';
}
.chapter li a strong {
  background: none !important;
}
.back-toc {
  text-align: right;
  margin-top: 20px;
margin-bottom: 4rem;
}
.back-toc::after {
  content: "▲"
}
html {
  scroll-behavior: smooth;
}

main section ul.before-after li h4 {
    padding: 1em 1em;
    box-sizing: border-box;
}


article.post-article .txt .tag-cloud {
    display: flex;
    flex-wrap: wrap;
    margin-top: .6rem;
    width: 100%;
    margin-bottom: 2rem;
}

article.post-article .txt .tag-cloud>span {
    display: block;
    margin-right: 1em;
    margin-top: .7rem;
    position: relative;
    z-index: 11
}

article.post-article .txt .tag-cloud>span a {
    background:#a38138;
    color: #fff;
    display: block;
    font-size: 1rem;
    padding: .2em .6em
}
article.post-article .txt h2{
        color: #9e3437;
        line-height: 1.2;
        border-bottom: solid 1px;
    padding-bottom: 1rem;
}
.post-categories,.tag-list {
    display: flex;
    flex-wrap: wrap;
    margin: 1rem auto;
    width: 800px;
}

.tag-list{
    margin-bottom: 4rem;
}

main h1+ .tag-list + p{ margin-top: 2rem; margin-bottom: 8rem; text-align: center; font-size: 1.1em; font-family: YuMincho, 游明朝体, Yu Mincho, 游明朝, yu-mincho-pr6n, serif;}
main h1 + .tag-list + p strong{ font-weight: 700; background: linear-gradient(transparent 80%, #e5c8c1 80%); }

.post-categories li,.tag-list li {
    font-size: 1.2rem;
    margin-right: 1em;
    margin-top: .5em;
}

.post-categories li a {
    background:#9e3537;
}

.post-categories li a,.tag-list li a {
    color: #fff;
    display: block;
    padding: .2em .6em
}
.tag-list li a {
    background: #a38138;
}


ul.clinic-list  {
    display: flex;
    flex-wrap: wrap;
    justify-content:space-evenly;
    margin: 2.5rem 0 2rem
}

ul.clinic-list li {
    flex-basis: 30rem;
    font-size: 1.5rem;
    height: 4rem;
    letter-spacing: .05em;
    line-height: 2.4;
    margin-bottom: 2rem;
    white-space: nowrap;
    border: 1px solid #7f7b6b;
    border-radius: 50px;
}

ul.clinic-list li a {
    align-items: center;
    background: #fff;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 2rem;
    color: var(--base-color);
    display: flex;
    font-size: 1.7rem;
    height: 100%;
    padding-left: 2rem;
    position: relative;
}

ul.clinic-list li.maebashi a {
    background-image: url("../images/common/clinic-list01.jpg")
}

ul.clinic-list li.maebashi a strong{
    font-weight: 800;
    color: #aa450e;
}

ul.clinic-list li.osaka a {
    background-image: url("../images/common/clinic-list02.jpg")
}

ul.clinic-list li.osaka a strong{
    font-weight: 800;
    color: #004880;
}

ul.clinic-list li.tokyo a {
    background-image: url("../images/common/clinic-list03.jpg")
}

ul.clinic-list li.tokyo a strong{
    font-weight: 800;
    color: #9c3436;
}

ul.clinic-list li.chiba a {
    background-image: url("../images/common/clinic-list04.jpg")
}

ul.clinic-list li.chiba a strong{
    font-weight: 800;
    color: #b24674;
}

ul.clinic-list li.kyoto a {
    background-image: url("../images/common/clinic-list05.jpg")
}

ul.clinic-list li.kyoto a strong{
    font-weight: 800;
    color: #7e6500;
}

ul.clinic-list li a:after {
    background-color: #fff;
    background-image: url(../images/common/arrow-b.png);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: .9rem;
    border: 1px solid;
    border-radius: 2rem;
    content: "";
    height: 2rem;
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    width: 2rem
}

.group-map-pc{
    display: block;
}

.group-map-sp{
    display: none;
}

.group-map-pc{
    position: relative;
}

.group-map-pc ul.clinic-list li.maebashi{
width: 23rem;
    position: absolute;
    top: 120px;
    right: 0px;
}

.group-map-pc ul.clinic-list li.tokyo{
width: 23rem;
    position: absolute;
    top: 230px;
    right: 0px;
}
.group-map-pc ul.clinic-list li.chiba{
    width: 23rem;
    position: absolute;
    top: 307px;
    right: 0px;
}

.group-map-pc ul.clinic-list li.osaka{
    width: 23rem;
    position: absolute;
    top: 254px;
    left: 0px;
}
.group-map-pc ul.clinic-list li.kyoto{
    width: 23rem;
    position: absolute;
    top: 180px;
    left: 0px;
}

.sec-vision{ padding: 5.5rem 0 10rem; position: relative; z-index: 0; margin-bottom: 0rem; }
.sec-vision h2{ margin-bottom: 3rem; color: #82795f; }
.sec-vision h3{ border-bottom: 1px solid;font-size: 2.2rem;margin: 0 0 2.6rem;color: #80795f;font-family: YuMincho, 游明朝体, Yu Mincho, 游明朝, yu-mincho-pr6n, serif;font-weight: 600; text-align: center; margin-top: 0!important;}
.sec-vision .inner{ background: #fff; padding: 5rem; position: relative; }
.sec-vision .inner p strong{ background: #eae5db; }
.sec-vision .inner p + p{ margin-top: 2em; }
.sec-vision .inner .name{ display: block; text-align: right; font-size: 3rem; margin-top: 4rem; }
.sec-vision .inner .name small{ display: block; font-size: 1.4rem; }
.sec-vision .item01{ position: absolute; top: -26rem; right: -35rem; }
.sec-vision .item02{ position: absolute; bottom: -10rem; left: calc(-50vw + 400px); max-width: 600px; }

.main_list{ margin-bottom: 2rem;}
.main_list li{ list-style: disc; margin-left: 1rem; font-size: 14px; letter-spacing: 0;}
.main_list li + li{ margin-top: 1rem;}

@media (min-width: 768px) and (max-width: 1440px){
.sec-vision .item02{ max-width: 410px; }
}
@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 2.5rem; margin: 5rem 0 8rem; font-size: 1.4rem; }
	main h1{ font-size: 3.5rem; 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;         letter-spacing: .1rem;}
	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 .5rem; }
	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 ul.before-after + table:not([class]) th{width: 20%;}

	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; }


	/*** 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; line-height: 1.1;}
	.dr-pic h3 + small{ font-size: 1.3rem; }
	.dr-pic p.dr-name{ font-size: 2.5rem; }
	.dr-pic p.dr-name + 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; }


	/*** treatment ***/
	
	.sec-treatment{ margin-bottom: 5rem; }


	/*** archive ***/

	article.post-article{ flex-wrap: wrap; }
	article.post-article + .post-article{ margin-top: 4rem; }
	article.post-article .thumb{ 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; }


	/*    追加　　*/

    main section .hosoku{margin: 10vw calc(50% - 50vw); border-radius:10px;padding: 20px!important;}
    main section .hosoku h3{text-align: center;}
	main section .hosoku h4{font-size: 1.6rem!important;text-align: center;}
    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%;}
	
	.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; padding-bottom: .8rem; letter-spacing: 0; text-align: left; }
    
    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;
    }
    a.insta{
    bottom: 5vw;
    left: 5vw;
    }
    
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: 5vw;
    margin-bottom: 4vw
}

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
}
	
.banner-img-pc{
	display: none;
}

.banner-img-sp{
	display: block;
}


}

@media only screen and (max-width: 768px){
	div.husuma ul.flex li{width: calc(100%/2 - 10px); margin-bottom: 3vw;}
	    
    .chapter {column-count: 1!important;padding: 4.5rem 2.5rem 3rem;border-radius: .5rem;}
	.mokuji h4{	  font-size: 2rem; }
    .cat-list, .tag-list {
    width: 100%;
    }
    article.post-article .txt .tag-cloud {
    display: flex;
    flex-wrap: wrap;
    margin-top: .6rem;
    width: 100%
    }
    
    .sp-font-table th,.sp-font-table td{
        font-size: 2.5vw;
    }
	.en-page .dr-pic p.dr-name{
		line-height: 1.1;
	}
    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 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;
    }

}


@media(max-width: 768px){
    .sec-vision{ padding: 3rem 0 3rem; margin-bottom: 0rem; }
	.sec-vision h2{ margin-bottom: 2.3rem; }
	.sec-vision h3{ font-size: 2.2rem; line-height: 1.6; margin-bottom: 6.5rem; }
	.sec-vision .inner{ padding: 3rem 2.75rem 3rem; }
	.sec-vision .item01{ width: 20rem; right: -7rem; top: -7rem; }
	.sec-vision .item02{ width: 27.5rem; left: -5.5rem; bottom: -8rem; }
	.sec-vision .inner .name{ font-size: 2.5rem; }
	.sec-vision .inner .name small{ font-size: 1.1rem; line-height: 1.6; }

}