.mv{ margin-top: 130px; position: relative; z-index: 0; }
.mv:before{ content: ''; width: 100%; height: 200px; background: url(../images/common/bg-dot02.png) repeat center/48px; position: absolute; top: 50%; left: 0; transform: translateY(-50%); z-index: -1; }
.mv .wrap{ width: 1100px; }
.mv img{ display: block; width: 700px; border-radius: 200px; margin-left: auto; }
.mv h1{ max-width: 370px; font-size: 30px; font-family: fot-tsukuardgothic-std, sans-serif; font-weight: 700; font-style: normal; position: absolute; top: 50%; left: 0; transform: translateY(-50%); }
.mv .pankuzu{ position: absolute; top: 315px; left: 0; }
.mv .pankuzu li{ display: inline-block; font-size: 12px; color: #5b5453; }
.mv .pankuzu li:not(:last-of-type):after{ content: '〉'; margin: 0 .6em 0 .6em; }

main{ display: block; width: 800px; margin: 110px auto; }
main > *:first-child,
main .side-img .content > *:first-child,
main .blue-wrap > *:first-child{ margin-top: 0 !important; }
main > *:last-child,
main .side-img .content > *:last-child,
main .blue-wrap > *:last-child{ margin-bottom: 0 !important; }
main img{ border-radius: 25px; }

main h2{ font-size: 40px; text-align: center; font-family: fot-tsukuardgothic-std, sans-serif; font-weight: 700; font-style: normal; letter-spacing: .14em; position: relative; z-index: 0; line-height: 1.4; margin: 135px 0 60px; }
main h2:before{ content: ''; width: 78px; height: 78px; border-radius: 40px; background: #cdeaf2; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); z-index: -2; }
main .blue-wrap h2:before{ background: #fff; }
main h2:after{ content: ''; width: 62px; height: 62px; border-radius: 31px; border: solid 7px #fff; box-sizing: border-box; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); z-index: -1; }
main .blue-wrap h2:after{ border-color: #cdeaf2; }
main h3{ font-size: 24px; font-family: fot-tsukuardgothic-std, sans-serif; font-weight: 700; font-style: normal; line-height: 1.6; margin: 70px 0 25px; position: relative; z-index: 0; }
main h3:before{ content: ''; width: 100%; height: 10px; border-radius: 5px; background: #addeeb; position: absolute; bottom: 2px; left: 0; z-index: -1; }
main h4{ font-size: 20px; font-weight: 700; line-height: 1.6; padding-left: 1em; position: relative; margin: 45px 0 15px; }
main h4:before{ content: '●'; color: #addeeb; position: absolute; left: 0; }
main .blue-wrap h4{ padding-left: 0; }
main .blue-wrap h4:before{ content: none; }
main p{ margin-bottom: 1em; }
main p strong{ color: #f03782; font-weight: 700; }
main a.btn{ margin: 40px auto; }
main h2 + *,
main h3 + *,
main h4 + *{ margin-top: 0 !important; }

main .side-img{ display: flex; justify-content: space-between; margin: 60px 0; }
main .side-img .img{ width: 48%; }
main .side-img .img img{ display: block; width: 100%; }
main .side-img .content{ width: 350px; }

main .blue-wrap{ margin: 120px 0; position: relative; padding: 60px 0 70px; z-index: 0; }
main .blue-wrap:before{ content: ''; width: calc(100% + 230px); height: 100%; background: #cdeaf2; border-radius: 37px; position: absolute; top: 0; left: -115px; z-index: -1; }

main ol{ counter-reset: number; margin: 50px 0; }
main ol li{ padding-left: 120px; min-height: 100px; display: flex; align-items: center; position: relative; }
main ol li + li{ margin-top: 60px; }
main ol li:before{ counter-increment: number; content: counter(number); width: 103px; height: 103px; background: url(../images/common/bg-number01.png) no-repeat center/contain; display: flex; justify-content: center; align-items: center; font-size: 50px; letter-spacing: 0; line-height: 1; font-family: fot-tsukuardgothic-std, sans-serif; font-weight: 700; font-style: normal; color: #fff; position: absolute; top: 50%; left: 0; transform: translateY(-50%); }
main ol li dl dt{ font-size: 20px; font-weight: 700; }
main ol li dl > * + *{ margin-top: 6px; }

main ul.list{ margin: 50px 0; }
main ul.list li{ padding-left: 100px; position: relative; }
main ul.list li + li{ margin-top: 30px; }
main ul.list li:before{ content: ''; width: 39px; height: 39px; background: url(../images/common/icon-consul02.png) no-repeat center/contain; position: absolute; left: 30px; }
main .blue-wrap ul.list li:before{ background-image: url(../images/common/icon-consul01.png); }
main ul.list li dl dt{ font-size: 20px; font-weight: 700; }
main ul.list li dl > * + *{ margin-top: 6px; }

main table{ width: 100%; table-layout: fixed; border-bottom: solid 1px; margin: 50px 0; }
main table thead th{ font-size: 16px; padding: .8em; vertical-align: middle; text-align: center; border-top: solid 1px; }
main table tbody th{ background: #cdeaf2; text-align: center; vertical-align: middle; font-size: 16px; border-top: solid 1px; padding: .8em; }
main table tbody td{ text-align: center; vertical-align: middle; font-size: 16px; border-top: solid 1px; padding: .8em; }

.indent {
    padding-left:1em;
	text-indent:-1em;
}
.flex_btn {
    display: flex;
}
main table.group_table tbody th{
    padding: 0.6em 0.4em;
}
main table.group_table tbody td{
    padding: 0.6em 0.4em; font-size: 14px; letter-spacing: 0.1px;
}
main p.text-c {
    text-align: center;
}

main table.formTable {
    
}
main table.formTable tbody th {
    width: 35%;
    text-align: left;
}
main table.formTable tbody td {
    text-align: left;
}
input[type="text"], textarea {
    width: 100%;
    padding: 5px;
    font-size: 110%;
    display: block;
}
input#input_year {
    width: 25%;
    display: inline-block;
}
input#input_month, input#input_day {
    width: 15%;
    display: inline-block;
}
input#input_month, input#input_day {
    width: 15%;
    display: inline-block;
}
.text-c input {
    width: 335px;
    height: 60px;
    border-radius: 30px;
    border: solid 2px;
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 18px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 40px auto;
    background: url(../images/common/arrow01.png) #fff no-repeat center right 18px/8px;
}

main table.prosthesis tbody th {
    width: 25%;
}
main table.prosthesis tbody td {
    text-align: left;
}


.clinic{ padding-top: 100px; background: url(../images/index/bg-reason01.png) no-repeat center top -320px/1867px; }
.clinic .wrap{ width: 1200px; padding-bottom: 13rem;}
.clinic h2{ font-size: 40px; text-align: center; margin-bottom: 50px; }
.clinic h2 + p{ text-align: center; line-height: 2; margin-bottom: 60px; }
.clinic ul{ margin-bottom: -80px; }
.clinic ul.banner-link{ margin-top: 6.7rem; }

.clinic ul li{ width: 580px; height: 160px; border-radius: 80px; background: #cdeaf2; display: flex; align-items: center; padding-left: 170px; position: relative; transition: .3s; }
.clinic ul li:hover{ background: #ffe7a6; }
.clinic ul li:before{ content: ''; width: 120px; height: 120px; border-radius: 60px; background-repeat: no-repeat; background-size: cover; position: absolute; top: 50%; left: 20px; transform: translateY(-50%); }
.clinic ul li:nth-of-type(1):before{ background-image: url(../images/common/clinic01.jpg); }
.clinic ul li:nth-of-type(2):before{ background-image: url(../images/common/clinic02.jpg); }
.clinic ul:nth-of-type(2) li:nth-of-type(1):before{ background-image: url("../images/common/clinic_chiba.jpg"); }
.clinic ul:nth-of-type(2) li:nth-of-type(2):before{ background-image: url("../images/common/clinic_osaka.jpg"); }
.clinic ul li:after{ content: ''; width: 8px; height: 16px; background: url(../images/common/arrow02.png) no-repeat center/contain; position: absolute; top: 50%; right: 20px; transform: translateY(-50%); }
.clinic ul li .logo img{ display: block; width: 361px; }

.dr-pic {
    width: 100%;
    height: 24rem;
    display: flex;
    align-items: center;
    background: url(../images/staff/bg01.jpg) no-repeat center/cover;
    position: relative;
    padding-left: 3rem;
    margin: 10rem 0 3.5rem;
}

.dr-pic h3 {
    font-size: 3rem;
    font-family: YuMincho, 游明朝体, "Yu Mincho", 游明朝, yu-mincho-pr6n, serif;
    font-weight: 600;
    color: rgb(80, 80, 80);
}
.dr-pic h3::before{
    display: none;
}
.dr-pic h3 + small {
    display: block;
    font-size: 1.5rem;
    font-family: YuMincho, 游明朝体, "Yu Mincho", 游明朝, yu-mincho-pr6n, serif;
    font-weight: 600;
    color: rgb(128, 121, 95);
    line-height: 1;
}
.dr-pic img {
    width: 30rem;
    position: absolute;
    right: 0;
    bottom: 0;
}
.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: 4rem 2rem 4rem;margin-top: 3.6rem;counter-reset: li;}
        .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;}
.back-toc::after{content: "▲"}
main ol.chapter li{
    font-size: 16px;
    height: 20px;
    min-height: 20px!important;
}
main ol.chapter li:before{
    font-size: 16px;
    width: 20px;
    height: 20px;
    color: #000;
    background-image: none;
    transform: translateY(0%);
}