*{
    font-family: 'Noto Sans JP', sans-serif;
    color: #231815;
    letter-spacing: 0.14em;
    line-height: 1.8em;
    font-weight: 500;
    box-sizing: border-box;
    word-wrap: break-word;
}

.roboto{
    font-family: 'Roboto', sans-serif;
}

img{
    width: 100%;
    height: auto;
}

p{
    font-size: 13px;
}

td {
    word-break: break-all;
}

.sp{
    display: none;
}

.wrap{
    width: 840px;
    margin: 0 auto;
}
.wrap + .wrap{ margin-top: 100px;}

.linkwrap{
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
}

.flex{
	display: flex;
    justify-content: space-between;
}

#top h2{
    font-size: 18px;
    display: table;
    position: relative;
}
#top h2 span{
    font-size: 12px;
    color: #B4B4B5;
    display: block;
    font-family: 'Roboto', sans-serif;
}
#top h2:after {
    content: '';
    height: 84px;
    width: 1px;
    background: #231815;
    position: absolute;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    right: -10px;
}

/*** header ***/

header{
    width: 1200px;
    margin: 0 auto;
}
header .header-gray{
    background: #F2F2F2;
    -webkit-border-bottom-right-radius: 20px;
    -webkit-border-bottom-left-radius: 20px;
    -moz-border-radius-bottomright: 20px;
    -moz-border-radius-bottomleft: 20px;
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 20px;
}
header .header-gray dl{
    display: flex;
    align-items: center;
}
header .header-gray dl dt{
    font-size: 13px;
    padding-right: 70px;
    position: relative;
}
header .header-gray dl dt:after{
    content: '';
    width: 53px;
    height: 11px;
    background: url(../images/common/arrow02.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 3px;
    right: 10px;
}
header .header-gray dl dd a{
    font-size: 22px;
}
header .header-gray dl dd a:before{
    content: '';
    width: 22px;
    height: 22px;
    background: url(../images/common/phone.png) no-repeat;
    background-size: contain;
    display: inline-block;
    margin-right: 6px;
    position: relative;
    top: 2px;
}
header .row{
    display: flex;
    justify-content: space-between;
}
header .logo img{
    width: 357px;
    height: auto;
}
.Gnav{
    display: flex;
    align-items: center;
}
.Gnav li{
    border-bottom: solid 1.3px #FFEF00;
    font-size: 12px;
    position: relative;
    padding: 0 0.75em 0.75em 0.75em;
    font-weight: 500;
    letter-spacing: 0.1em;
    transition: .3s;
}
.Gnav li:hover{
    opacity: .6;
}
.Gnav li:first-of-type{
    padding-left: 0;
}
.Gnav li:last-of-type{
    padding-right: 0;
}
.Gnav li:after{
    content: '';
    width: 1px;
    height: 1em;
    background: #231815;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
}
.Gnav li:last-of-type:after{
    content: none;
}

.side-btn{
    background: #231815;
    color: #fff;
    font-weight: 300;
    font-size: 12px;
    writing-mode:vertical-rl;
    position: fixed;
    top: 100px;
    left: 0;
    z-index: 100;
    display: flex;
    align-items: center;
    padding: 50px 0 20px;
    width: 40px;
    -webkit-border-top-right-radius: 20px;
    -webkit-border-bottom-right-radius: 20px;
    -moz-border-radius-topright: 20px;
    -moz-border-radius-bottomright: 20px;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
}
.side-btn:before{
    content: '';
    width: 20px;
    height: 21px;
    background: url(../images/common/yoyaku.png) no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    top: 19px;
    left: 0;
    right: 0;
    margin: auto;
}


.side-btn-goiken{
    background: #231815;
    color: #fff;
    font-weight: 300;
    font-size: 12px;
    writing-mode:vertical-rl;
    position: fixed;
    top: 330px;
    left: 0;
    z-index: 100;
    display: flex;
    align-items: center;
    padding: 50px 0 20px;
    width: 40px;
    -webkit-border-top-right-radius: 20px;
    -webkit-border-bottom-right-radius: 20px;
    -moz-border-radius-topright: 20px;
    -moz-border-radius-bottomright: 20px;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
}
.side-btn-goiken:before{
    content: '';
    width: 20px;
    height: 21px;
    background: url(../images/common/icon_text.png) no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    top: 19px;
    left: 0;
    right: 0;
    margin: auto;
}


.menu-btn{
    display: none;
}

/*** index ***/

.mainV {
    width: 1200px;
    margin: 0 auto;
    position: relative;
}
.copy-area{
    position: absolute;
    top: 30%;
    transform: translateY(-50%);
    left: -100px;
    background: #FFEF00;
    width: 250px;
    height: 250px;
    border-radius: 125px;
    display: flex;
    justify-content: center;
    align-items: center;
	border: #fff 1px solid;
}
.copy-area p{
    font-size: 16px;
    text-align: center;
}
.index-info{
    margin-top: 70px;
    margin-bottom: 60px;
}
.index-info .wrap{
    display: flex;
    justify-content: space-between;
}
.index-info .wrap .col{
    width: 48%;
}
.index-info .wrap .col dl:nth-of-type(2n){
    margin-top: 70px;
}
.index-info dl dt{
    font-size: 14px;
    display: table;
    border-bottom: solid 1px #FFEF00;
    margin-bottom: 30px;
}
.index-info dl.schedule dd table{
    width: 100%;
}
.index-info dl.schedule dd table th{
    font-weight: 300;
    text-align: center;
    font-size: 13px;
    border-right: solid 1px #F2F2F2;
    padding: 0.5em;
}
.index-info dl.schedule dd table td{
    text-align: center;
    font-size: 13px;
    border-right: solid 1px #F2F2F2;
    padding: 0.5em;
    font-weight: 300;
}
.index-info dl.schedule dd table tr th:last-of-type, .index-info dl.schedule dd table tr td:last-of-type{
    border-right: none;
}
.index-info dl.schedule dd table tr:nth-of-type(2) td:first-of-type, .index-info dl.schedule dd table tr:nth-of-type(3) td:first-of-type{
    text-align: right;
    width: 80px;
    white-space: nowrap;
}
.schedule .align-right{
    text-align: right;
    font-size: 11px;
    margin-top: 6px;
    font-weight: 300;
}
span.sp-block{
    font-weight: 300;
}
.index-info dl.info table{
    width: 100%;
}
.index-info dl.info table th{
    font-weight: 300;
    font-size: 13px;
    border-bottom: solid 1px #F2F2F2;
    padding: 10px 1em 10px 0;
}
.index-info dl.info table td{
    font-weight: 300;
    font-size: 13px;
    border-bottom: solid 1px #F2F2F2;
    padding: 10px 0;
}
.access p{
    margin: 20px;
}
.access p.icon{
    vertical-align: middle;
    margin-top: 0;
}
.access p.icon:before{
    content: '';
    width: 18px;
    height: 25px;
    background: url(../images/index/train.png) no-repeat;
    background-size: contain;
    display: inline-block;
    margin-right: 10px;
    vertical-align: middle;
}
dl.access dd{
    border: solid 1px #F2F2F2;
}

.index-concept{
    background:  url(../images/index/bg_03.png) no-repeat #f2f2f2;;
    background-size:30vw;
    background-position:left 2vw bottom 3vw;;
    -webkit-border-top-right-radius: 170px;
    -webkit-border-bottom-left-radius: 0px;
    -moz-border-radius-topright: 170px;
    -moz-border-radius-bottomleft: 0px;
    border-top-right-radius: 170px;
    border-bottom-left-radius: 0px;
    padding: 80px 0;
    background-blend-mode: multiply;
}
.index-concept .wrap, .index-dr .wrap{
    display: flex;
    justify-content: space-between;
}
.inner-right{
    width: 526px;
    margin-left: auto;
}
.index-concept h3{
    font-size: 18px;
    margin-bottom: 40px;
}
.btn-box {
    display: flex;
    justify-content: space-between;
    margin-top: 40px;
}
.yellow-btn{
    background: #FFEF00;
    font-size: 15px;
    width: 250px;
    display: table;
    text-align: center;
    padding: 15px 0;
    border-radius: 50px;
    transition: .3s;
}

.new-btn{
    background: #A8ECFE;
    font-size: 15px;
    width: 265px;
    display: table;
    text-align: center;
    padding: 20px 0;
    border-radius: 50px;
    transition: .3s;
}




.yellow-btn:hover{
    opacity: 0.6;
    transform: rotate(2deg);
}
.yellow-btn span{
    padding-right: 33px;
    background: url(../images/common/arrow.png) no-repeat;
    background-size: 20px 13px;
    background-position: center right;
}



.new-btn:hover{
    opacity: 0.6;
    transform: rotate(2deg);
}
.new-btn span{
    padding-right: 33px;
    background: url(../images/common/arrow.png) no-repeat;
    background-size: 20px 13px;
    background-position: center right;
}


.yellow-btn.center{margin: 0 auto;}


.new-btn.center{margin: 20px auto;}



.index-dr{
    padding: 80px 0 70px;
    background: url(../images/index/bg_04.jpg) no-repeat;
    background-size: 50vw;
    background-position:left -10px bottom -1.6vw;
}
.index-dr h3{
    font-size: 24px;
    margin-bottom: 30px;
}
.index-dr h3 span{
    display: block;
    font-size: 14px;
    margin-bottom: 1em;
    line-height: 1.6em;
}
.index-dr dl dt{
    width: 120px;
    background: #231815;
    color: #fff;
    font-size: 13px;
    text-align: center;
    padding: 12px 0;
    margin: 40px 0 20px;
    border-radius: 4px;
}
.index-dr dl dd table {
    border-collapse: separate;
    border-spacing: 0px 8px;
}
.index-dr dl dd table th{
    font-size: 12px;
    white-space: nowrap;
    font-weight: 300;
    padding-right: 2.6em;
}
.index-dr dl dd table td, .index-dr dl dd{
    font-size: 12px;
    font-weight: 300;
}

.index-point{
    background: #FFEF00;
    padding: 80px 0 70px;
    -webkit-border-top-right-radius: 170px;
    -webkit-border-bottom-left-radius: 0px;
    -moz-border-radius-topright: 170px;
    -moz-border-radius-bottomleft: 0px;
    border-top-right-radius: 170px;
    border-bottom-left-radius: 0px;
}
.index-point ul{
    display: flex;
    justify-content: space-between;
    margin-top: 80px;
}
.index-point ul li{
    width: 170px;
}
.index-point ul li p{
    font-size: 12px;
    justify-content: center;
    align-items: center;
    display: flex;
    font-family: 'Roboto', sans-serif;
}
.index-point ul li p span{
    font-size: 20px;
    margin-left: 6px;
    font-family: 'Roboto', sans-serif;
}
.index-point ul li .bg-thumb{
    width: 170px;
    height: 170px;
    border-radius: 85px;
    margin: 20px auto;
}
.index-point ul li:nth-of-type(1) .bg-thumb{
    background: url("../images/index/feature001.jpg") no-repeat;
    background-size: cover;
    background-position: center;
}
.index-point ul li:nth-of-type(2) .bg-thumb{
    background: url(../images/index/feature_02.jpg) no-repeat;
    background-size: cover;
    background-position: center;
}
.index-point ul li:nth-of-type(3) .bg-thumb{
    background: url(../images/index/feature_03.jpg) no-repeat;
    background-size: cover;
    background-position: center;
}
.index-point ul li:nth-of-type(4) .bg-thumb{
    background: url(../images/index/feature_04.jpg) no-repeat;
    background-size: cover;
    background-position: center;
}

.trear-intro{
    margin: 60px 0;
    font-weight: 300;
}
.trear-intro span{
    font-weight: 500;
}
.index-trearment{
    padding: 80px 0 110px;
}
ul.trearment-list{
    display: flex;
    flex-wrap: wrap;
}
ul.trearment-list li{
    width: calc(100%/3);
    padding: 30px 0 30px;
    position: relative;
}
ul.trearment-list li:hover .icon-box{
    transform: translateY(-10px);
}
ul.trearment-list li:hover .yellow-btn{
    opacity: .6;
}
ul.trearment-list li .yellow-btn{
    margin: 0 auto;
    width: 200px;
    padding: 14px 0;
    transition: .3s;
}
ul.trearment-list li .icon-box{
    width: 100%;
    height: 73px;
    margin-bottom: 20px;
    transition: .3s;
}
ul.trearment-list li:nth-of-type(1) .icon-box{
    background: url(../images/index/icon_01.png) no-repeat;
    background-size: contain;
    background-position: center;
}
ul.trearment-list li:nth-of-type(2) .icon-box{
    background: url(../images/index/icon_02.png) no-repeat;
    background-size: contain;
    background-position: center;
}
ul.trearment-list li:nth-of-type(3) .icon-box{
    background: url(../images/index/icon_03.png) no-repeat;
    background-size: contain;
    background-position: center;
}
ul.trearment-list li:nth-of-type(4) .icon-box{
    background: url(../images/index/icon_04.png) no-repeat;
    background-size: contain;
    background-position: center;
}
ul.trearment-list li:nth-of-type(5) .icon-box{
    background: url(../images/index/icon_05.png) no-repeat;
    background-size: contain;
    background-position: center;
}
ul.trearment-list li:nth-of-type(6) .icon-box{
    background: url(../images/index/icon_06.png) no-repeat;
    background-size: contain;
    background-position: center;
}
ul.trearment-list li:nth-of-type(7) .icon-box{
    background: url(../images/index/icon_07.png) no-repeat;
    background-size: contain;
    background-position: center;
}
ul.trearment-list li:nth-of-type(8) .icon-box{
    background: url(../images/index/icon_08.png) no-repeat;
    background-size: contain;
    background-position: center;
}
ul.trearment-list li:nth-of-type(9) .icon-box{
    background: url(../images/index/icon_09.png) no-repeat;
    background-size: contain;
    background-position: center;
}
ul.trearment-list li:nth-of-type(10) .icon-box{
    background: url(../images/index/icon_10.png) no-repeat;
    background-size: contain;
    background-position: center;
}
ul.trearment-list li:nth-of-type(11) .icon-box{
    background: url(../images/index/icon_11.png) no-repeat;
    background-size: contain;
    background-position: center;
}
ul.trearment-list li:nth-of-type(12) .icon-box{
    background: url("../images/index/icon_12.png") no-repeat;
    background-size: contain;
    background-position: center;
}
ul.trearment-list li:nth-of-type(13) .icon-box{
    background: url(../images/index/icon_14.png) no-repeat;
    background-size: contain;
    background-position: center;
}
ul.trearment-list li:nth-of-type(14) .icon-box{
    background: url(../images/index/icon_15.png) no-repeat;
    background-size: contain;
    background-position: center;
}
ul.trearment-list li:nth-of-type(15) .icon-box{
    background: url(../images/index/icon_16.png) no-repeat;
    background-size: contain;
    background-position: center;
}

ul.trearment-list li{
    position: relative;
}
ul.trearment-list li:nth-of-type(3n+2):before{
    content: '';
    width: 1px;
    height: calc(100% - 20px);
    background: #F2F2F2;
    position: absolute;
    top: 10px;
    left: 0;
}
ul.trearment-list li:nth-of-type(3n+2):after{
    content: '';
    width: 1px;
    height: calc(100% - 20px);
    background: #F2F2F2;
    position: absolute;
    top: 10px;
    right: 0;
}
ul.trearment-list li .linkwrap:before {
    content: '';
    width: calc(100% - 20px);
    height: 1px;
    background: #F2F2F2;
    position: absolute;
    top: 0;
    left: 10px;
}
ul.trearment-list li:nth-child(-n+3) .linkwrap:before{
    content: none;
}
.annotation{
    display: block;
    font-size: 14px;
    font-weight: 300;
    color: #F2008A;
    position: absolute;
    bottom: -50px;
    text-align: center;
    left: 0;
    right: 0;
}
.annotation:before{
    content: '';
    width: 1px;
    height: 60px;
    background: #F2008A;
    position: absolute;
    bottom: 30px;
    left: 0;
    right: 0;
    margin: auto;
}

.index-equipment{
    padding: 80px 0 70px;
    background: #F2F2F2;
    -webkit-border-top-right-radius: 170px;
    -webkit-border-bottom-left-radius: 0px;
    -moz-border-radius-topright: 170px;
    -moz-border-radius-bottomleft: 0px;
    border-top-right-radius: 170px;
    border-bottom-left-radius: 0px;
}
.equipments-list{
    display: flex;
    flex-wrap: wrap;
    gap: 4rem;
}
.equipments-list li{
    width: 230px;
    margin-top: 60px;
}
.equipments-list li h3{
    font-size: 16px;
    text-align: center;
    margin-bottom: 20px;
    padding-bottom: 20px;
    position: relative;
}
.equipments-list li h3:after{
    content: '';
    width: 50px;
    height: 1px;
    background: #231815;
    position: absolute;
    bottom: 0px;
    left: 0;
    right: 0;
    margin: auto;
}
.equipments-list li .thumb{
    width: 100%;
    height: 150px;
    border-radius: 14px;
    margin-bottom: 20px;
}
.equipments-list li:nth-of-type(1) .thumb{
    background: url("../images/index/slide02.jpg") no-repeat;
    background-size: cover;
    background-position: center;
}
.equipments-list li:nth-of-type(2) .thumb{
    background: url(../images/index/equip_02.jpg) no-repeat;
    background-size: cover;
    background-position: center;
}
.equipments-list li:nth-of-type(3) .thumb{
    background: url(../images/index/equip_03.jpg) no-repeat;
    background-size: cover;
    background-position: center;
}
.equipments-list li:nth-of-type(4) .thumb{
    background: url(../images/index/equip_04.jpg) no-repeat;
    background-size: cover;
    background-position: center;
}
.equipments-list li:nth-of-type(5) .thumb{
    background: url(../images/index/equip_05.jpg) no-repeat;
    background-size: cover;
    background-position: center;
}
.equipments-list li:nth-of-type(6) .thumb{
    background: url(../images/index/equip_06.jpg) no-repeat;
    background-size: cover;
    background-position: center;
}
.index-equipment .yellow-btn{
    margin: 60px auto 0;
}


.index-equal{
    background: #04a3df;
    padding: 80px 0 70px;
    -webkit-border-top-right-radius: 170px;
    -webkit-border-bottom-left-radius: 0px;
    -moz-border-radius-topright: 170px;
    -moz-border-radius-bottomleft: 0px;
    border-top-right-radius: 170px;
    border-bottom-left-radius: 0px;
    margin-bottom: 10rem;
}

.mt{
    margin-top: 3rem;
}

p.top{
    margin-top: 1rem;
}

a.anchor{
   display: block;
   margin-top:-100px;
   padding-top:100px;
}

.bottom_blue{
    margin-top: 7rem;
    margin-left: 1rem;
}

.index-equal h4{ font-size: 15px;
    /* background: #FFEF00; */
    font-size: 0.9rem;
    width: 250px;
    /* display: table; */
    /* text-align: center; */
    padding: 5px 0;
    /* border-radius: 50px; */
    /* transition: .3s; */
    border-bottom: solid 1px;
    margin-top: 6px;
    margin-bottom: 15px;}
/*
.index-equal{
    background:  url("../images/index/bg_equal.jpg") no-repeat #04a3df;;
    background-size:30vw;
    background-position:left 2vw bottom 3vw;;
    -webkit-border-top-right-radius: 170px;
    -webkit-border-bottom-left-radius: 0px;
    -moz-border-radius-topright: 170px;
    -moz-border-radius-bottomleft: 0px;
    border-top-right-radius: 170px;
    border-bottom-left-radius: 0px;
    padding: 80px 0;
    background-blend-mode: multiply;
}
*/

.foot-info{
    padding: 60px 0 50px;
}
.foot-info .wrap{
    display: flex;
}
.foot-info .wrap .col01{
    width: 280px;
    padding: 0 30px;
}
.foot-info .wrap .col02{
    width: 400px;
    padding: 0 30px;
    border-left: solid 1px #F2F2F2;
    border-right: solid 1px #F2F2F2;
}
.foot-info .wrap .col03{
    width: 160px;
    padding-left: 35px;
}
.foot-info dl{
    line-height: 1.4em;
}
.foot-info dl dt{
    font-size: 12px;
    font-weight: 500;
    margin-top: 1em;
}
.foot-info dl dt:first-of-type{
    margin-top: 0;
}
.foot-info dl dd{
    font-size: 12px;
    font-weight: 300;
}
.foot-info dl dd table th, .foot-info dl dd table td{
    font-weight: 300;
    text-align: left;
    padding-right: 1em;
}
.foot-info ul li{
    font-size: 12px;
    line-height: 1.8em;
}

.totop{
    display: table;
    position: fixed;
    right: 30px;
    bottom: 40px;
}

footer{
    background: #FFEF00;
}
footer .copy{
    text-align: center;
    padding: 20px 0;
    font-weight: 300;
    font-size: 11px;
}

/*** page 基本css ***/

.page-main{
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 1000px;
    height: 200px;
    background: #F2F2F2;
    border-radius: 20px;
    margin: 10px auto 20px;
}
.page-main h1{
    font-size: 24px;
    text-align: center;
}
.page-main h1 span{
    display: block;
    font-size: 12px;
    font-family: 'Roboto', sans-serif;
    color: #B4B4B5;
}
.breadcrumb{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 90px;
}
.breadcrumb li{
    font-size: 11px;
    font-weight: 400;
}
.breadcrumb li:after{
    content: '／';
}
.breadcrumb li:last-of-type:after{
    content: none;
}

#top.page h2{
    display: block;
    font-size: 18px;
    text-align: center;
    border-bottom: solid 1px #F2F2F2;
    margin-bottom: 60px;
    padding-bottom: 12px;
}
#top.page h2:after{
    content: none;
}
.page h3{
    font-size: 16px;
    text-align: center;
    background: #FFEF00;
    border-radius: 30px;
    padding: 14px 20px;
    margin-bottom: 40px;
    margin-top: 80px;
}
.page .container{
	position: relative;
}
.page .container p{
    font-size: 14px;
    margin-bottom: 30px;
}
.page h4{
    font-size: 14px;
    padding-left: 20px;
    position: relative;
    margin-bottom: 30px;
}
.page h4:before{
    content: '';
    width: 14px;
    height: 14px;
    border-radius: 10px;
    background: #FFEF00;
    position: absolute;
    top: 6px;
    left: 0;
}

.right-image, .left-image{
    display: flex;
    justify-content: space-between; margin-bottom: 10px;
}
.right-image .content, .left-image .content{
    width: 430px;
}
.right-image .image, .left-image .image{
    width: 370px;
	margin-bottom: 30px;
}
.left-image .content{
    order: 2;
}
.left-image .image{
    order: 1;
}
.page .container{position: relative;}
.page .container table{
    width: 740px;
    margin: 0 auto 50px;
}
.page .container table th{
    font-size: 14px;
    border: solid 1px #231815;
    padding: 20px 30px;
    vertical-align: middle;
    text-align: left;
}
.page .container table td{
    font-size: 13px;
    font-weight: 400;
    border: solid 1px #231815;
    padding: 20px 30px;
    vertical-align: middle;
}
.page .container table.esthetic_css td{ padding-bottom: 30px;}
.page .container table.esthetic_css td img{ width: 300px; height: auto;}
.page .container table.esthetic_css td span{border-bottom: #FFEF00 2px solid; display:inline-block; margin: 10px  0 10px;}
.page .container table tr:nth-of-type(even) th, .page .container table tr:nth-of-type(even) td{
    background: #F2F2F2;
}

/*** スタッフ紹介 ***/

.dr-pr{
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
}
.dr-pr .image {
    width: 40%;
    /*padding-bottom: 40%;
    background: #f2f2f2;*/
}
.dr-pr dl{
    width: 56%;
}
.dr-pr dl dt{
    border-bottom: solid 2px #FFEF03;
    font-size: 16px;
    margin-bottom: 20px;
}

.dr-pr001{
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
}

.dr-pr001 dl{
    width: 56%;
}
.dr-pr001 dl dt{
    border-bottom: solid 2px #FFEF03;
    font-size: 16px;
    margin-bottom: 20px;
}
.page .container p.sub-ttl {
    margin-bottom: 10px;
    background: #FFEF03;
    display: table;
    padding: 3px 20px;
    border-radius: 20px;
    font-size: 14px;
}
.page .container p.sub-ttl_01 {
    margin-bottom: 10px;
    background: #ccc;
    display: table;
    padding: 3px 20px;
    border-radius: 20px;
    font-size: 14px;
}
.dr-pr dl dd ul{
    margin-bottom: 30px;
}
.dr-pr dl dd li{
    font-size: 13px;
	padding-top: 8px;
}
.dr-pr dl dd ul:last-of-type{
    margin-bottom: 0;
}

.point_box dl{
	display: block;
    width: calc(100%/6);
    float: left;
}
.point_box dl dt{
	font-size: 0.8em;
	line-height: 33px;
	min-height: 33px;
	padding: 5px 5px 0;
	text-align: center;
}
.point_box dl dt.check{
	font-size: 0.6em;
}
.point_box dl dd{
	text-align: center;
	height: 120px;
}
.point_box dl:nth-child(2),.point_box dl:nth-child(4),.point_box dl:nth-child(6),
.point_box dl:nth-child(7),.point_box dl:nth-child(9),.point_box dl:nth-child(11){
	background: rgba(72,172,226,1.00);
}
.point_box dl:nth-child(2) dt,.point_box dl:nth-child(4) dt,.point_box dl:nth-child(6) dt,
.point_box dl:nth-child(7) dt,.point_box dl:nth-child(9) dt,.point_box dl:nth-child(11) dt{
	color: #fff;
}
.point_box dl dd img{
	max-width: 80%;
	position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

/*-----------------------
	追記
-----------------------*/
.t_center{
	text-align: center;
}
.supplement_bg{
	display: flex;
    /*justify-content: center;*/
    align-items: center;
    max-width: 1000px;
	background: #F2F2F2;
	margin: 0 auto 30px;
	padding: 30px 20px;
}
.supplement_bg p{
	margin-bottom: 0!important;
}
.supplement_bg p span{background: linear-gradient(transparent 60%, #ffff66 60%);}
ul.check_box {
	border: solid 2px #FFEF00;
  	padding: 1em 1em 1em 2.3em;
  	position: relative;
  	margin-top: 2em;
}
ul.check_box li {
	font-size: 13px;
 	line-height: 1.5;
  	padding: 0.5em 0;
  	list-style-type: none!important;
	font-weight: bold;
}
ul.check_box li:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 600;
  	content: "\f00c";
  	position: absolute;
  	left : 1em;
}
ul.check_box li:after {
 	background: #FFEF00;
	font-family: "Font Awesome 5 Free",'Avenir','Arial',sans-serif;
	font-weight: 600;
	position: absolute;
	left: -2px;
  	bottom: 100%;
  	padding: 1px 7px;
  	content: '\f4fc  Check';
  	letter-spacing: 0.05em;
}

.clearfix::after{
	content: "";
  	display: block;
  	clear: both;
}
.flow:nth-child(1),.flow:nth-child(2),.flow:nth-child(3),.flow:nth-child(4),.flow:nth-child(5),.flow:nth-child(11),.flow:nth-child(12){
	display: flex;
	width: 120px;
	height: 120px;
	justify-content: center;
    align-items: center;
	float: left;
	margin-bottom: 60px;
	margin-right: 60px;
	background: #F2F2F2;
	border-radius: 10px;
	position: relative;
	text-align: center;
}
.flow:nth-child(1)::after,.flow:nth-child(2)::after,.flow:nth-child(3)::after,.flow:nth-child(4)::after,.flow:nth-child(11)::after{
	content: '▶︎';
	position: absolute;
	top: calc(50%-7.5px);
	right: -30%;
}
.flow:nth-child(5){
	margin-right: 0;
}
.flow:nth-child(5)::after,.flow:nth-child(10)::after{
	content: '▼';
	position: absolute;
	right: 0;
	left: 0;
	bottom: -30%;
	text-align: center;
}
.flow:nth-child(6),.flow:nth-child(7),.flow:nth-child(8),.flow:nth-child(9),.flow:nth-child(10){
	display: flex;
	width: 120px;
	height: 120px;
	justify-content: center;
    align-items: center;
	float: right;
	margin-bottom: 60px;
	margin-right: 60px;
	background: #F2F2F2;
	border-radius: 10px;
	position: relative;
}
.flow:nth-child(6){
	margin-right: 0;
}
.flow:nth-child(6)::after,.flow:nth-child(7)::after,.flow:nth-child(8)::after,.flow:nth-child(9)::after{
	content: '◀︎';
	position: absolute;
	top: calc(50%-7.5px);
	left: -30%;
}
.flow:last-child::after{
	content: '';
}
.qa *, .qa *:after, .qa *:before {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.qa dt,.qa dd {
	position: relative;
	padding: 0.5em 1.0em;
}
.qa dt {
	margin: 0 0 1em 3em;
	background: rgba(255,250,187,1.00);
	box-shadow: 0px 1px 1px rgba(0,0,0,0.2);
}
.qa dd {
	margin: 0 0 4em 0;
	background: #F2F2F2;
	font-size: 13px;
}
.qa dt::before{
	position: absolute;
	z-index: 99;
	top: 0.5em;
	display: inline-block;
	width: 0;
	height: 0;
	content: '';
	border-style: solid;
}
.qa dt::before {
	left: -0.5em;
	border-width: 5px 8.7px 5px 0;
	border-color: transparent rgba(255,250,187,1.00) transparent transparent;
}
.qa dt::after{
	font-size: 1.15em;
	position: absolute;
	top: 0;
	display: inline-block;
	width: 1.5em;
	height: 1.5em;
	line-height: 1.2em;
}
.qa dt::after {
	font-family: "Font Awesome 5 Free",'Avenir','Arial',sans-serif;
	font-weight: 600;
	left: -2.5em;
	margin: 0 0.5em 0 0;
	padding: 0.2em 1.22em 0.2em 0.4em;
	content: '\f007';
	background: #FFEF00;
}
.defaultlist,.defaultlist li{
	padding:0px;
	margin:0px;
}
 
.defaultlist li{
	list-style-type:none !important;
	list-style-image:none !important;
	margin: 5px 0px 5px 0px !important;
}
 
.list9{
	counter-reset:li;   
}
.list9 li{
	position:relative;
	display: block;
	padding:5px 0px 5px 53px; 
	border: 2px solid #FFEF00;
	border-radius: 2px;
	font-size: 0.9em;
}
li.list9-count:after{
	counter-increment: li;
	content: counter(li);
	position: absolute;	
	left: 0px;
	top: 0px;
	background: #FFEF00;
	height: 33px;
	width: 34px;
	line-height: 33px;
	border: 2px solid #FFEF00;
	text-align: center;
	font-weight: bold;
	border-radius: 2px;
}
 
li.list9-count:before{
	content: '';
    display: block;
    position: absolute;
    box-shadow: 0 0 2px 2px rgba(255,255,255,0.2) inset;
    top: 11px;
    left: 36px;
    height: 0;
    width: 0;
    border-top: 8px solid transparent;
    border-right: 7px solid transparent;
    border-bottom: 8px solid transparent;
    border-left: 13px solid #FFEF00;
}
h5.count {
    margin:  0;  
    font-size: 14px;
    position:  relative;
    font-weight:  normal; 
    display:  inline-block;   
    padding-top: 40px;        
    padding-left: 40px;       
	padding-bottom: 20px;
}
h5.count:before {
    content:  '';               
    background-color: #F2F2F2; 
    display:  block;           
    position:  absolute;       
    left:  0;                  
    height: 90px;              
    width: 90px;               
    border-radius:  50%;       
    top: 0;                   
    z-index:  -1;             
}
h5.count:first-letter{
	color: #FFEF00;
	font-size: 3.0em;
	text-shadow: 
        black 1px 1px 0, black -1px -1px 0,/*右下、左上*/
        black -1px 1px 0, black 1px -1px 0,/*右上、左下*/
        black 0px 1px 0, black  0-1px 0,/*右、左*/
        black -1px 0 0, black 1px 0 0;/*上、下*/
}
.count_under{margin-left: 84px;}
.half_box{
	width: 48%;
	margin-right: 4%;
	float: left;
}
.half_box:nth-of-type(2){margin-right: 0;}
.half_box img{width: 100%;}

.box001{
    border: dotted 2px #FFEF00;
    margin-bottom: 30px;
}

.box001 i{
    padding: 0 5px;
}
.box001 p{
    margin: 10px!important;
}

 .under001 span{background: linear-gradient(transparent 60%, #ffff66 60%);}

.h2_area{
    margin: 0px 20px;
}

.mainV ul{
   border-radius: 20px;
   overflow: hidden;}

table th span{font-size: 0.8em;}


.risk_box {
    padding: 0;
	position: fixed;
	bottom: 1.4vh;
	left: 0;
	right: 0;
	background: rgba(242,242,242,1.0);
	border: 2px rgba(0,0,0,1.00) solid;
	display: block;
	margin: 0 auto;
	width: 840px;
	z-index: 100;
}
.risk_box label{
	display: block;
	font-size: 14px;
	vertical-align: text-bottom;
	padding: 10px;
	cursor: pointer;
}
.risk_box label span{
	font-size: 10px;
	padding-left: 8px;
}
.risk_box input {
    display: none;
}
.risk_box .risk_show {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
}
.risk_box input:checked ~ .risk_show {
    padding: 10px 0;
    height: auto;
    opacity: 1;
}
.risk_show p{
	font-size: 10px;
	font-weight: normal;
	vertical-align: text-bottom;
	padding-left: 10px;
	margin-bottom: 0!important;
}
.risk_show p span{
	font-weight: bold;
}
.risk_show p.tre_title{
	background: #000;
	color: #fff;
	display: inline-block;
	padding: 3px 8px;
	margin-left: 8px;
}
.risk_show p.anno{font-size:0.7em;}

.flex.ortho .ortho_btn{
	flex-basis: calc(50% - 30px);
	position: relative;
	border: 2px solid #FFEF00;
	transition: .3s;
}
.flex.ortho .ortho_btn p{
	margin-bottom: 0;
	padding: 20px 0 10px;
	text-align: center;
}
.flex.ortho .ortho_btn p::after{
	content: '▼';
	display: block;
	font-size: 0.7em;
}
.flex.ortho .ortho_btn:hover{
	background: #FFEF00;
}
.marker{
	background: linear-gradient(transparent 60%, #FFEF00 60%);
}



.container ul.flow-oubo li{
	display: flex;
	justify-content: space-between;
	padding-bottom: 70px;
	position: relative;
}
	.container ul.flow-oubo li .num{
		width: 80px;
		position: relative;
		z-index: 3;
	}
	.container ul.flow-oubo li .num:before{
		content: '';
		width: 3px;
		height: calc(100% + 70px);
		background: #FFEF00;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		z-index: -1;
	}
	.container ul.flow-oubo li .num:after{
		content: '';
		width: 38px;
		height: 44px;
		background: url(../images/common/flow-arrow.png) no-repeat;
		background-size: contain;
		position: absolute;
		bottom: -30px;
		left: 50%;
		transform: translateX(-50%);
		z-index: 2;
	}
	.container ul.flow-oubo li:last-of-type .num:after, .container ul.flow-oubo li:last-of-type .num:before{
		content: none;
	}
		.container ul.flow-oubo li .num p{
			width: 80px;
			height: 80px;
			border-radius: 40px;
			background: #FFEF00;
			color: #231815;
			font-size: 32px;
			font-family: 'audrey', sans-serif;
			text-align: center;
			line-height: 1.4;
			padding-top: 17px;
		}
			.container ul.flow-oubo li .num p span{
				font-size: 14px;
				display: block;
				text-align: center;
				line-height: 1;
			}
	.container ul.flow-oubo li .content{
		width: calc(100% - 100px);
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
		.container ul.flow-oubo li .content dl{
			width: calc(100% - 310px);
		}
		.container ul.flow-oubo li .content dl dt{
			font-size: 14px;
			color: #231815;
			margin-bottom: 20px;
		}

		.container ul.flow-oubo li .content dl dd{
			font-size: 12px;
		}
	.container ul.flow-oubo li .img{
		width: 280px;
	}



.page_list{
	width:100%;
	font-size:14px;
}
.page_list ul{
	width:100%;
	height:auto;
	overflow:hidden;
	margin:-20px auto 40px auto;
	padding:0 10px 0 10px;
	box-sizing:border-box;
}
.page_list ul li{
	float:left;
	margin:0 0 0 10px;
	list-style:none;
}
.page_list ul li:before{
	content:"\f103";
	font-family: "Font Awesome 5 free";
	font-weight:bold;
}
 .page_list ul li a{
	padding:0 4px 20px 5px;
	text-decoration:none;
}


ul.number-list{ counter-reset: number; margin: 30px 0; }
ul.number-list li{ font-size: 18px; border-bottom: dashed 1px; padding: 14px 0px 14px 3em; position: relative; }
ul.number-list li:before{
	counter-increment: number;
	content: counter(number);
	width: 35px;
	height: 35px;
	background: rgba(255,250,187,1.00);
	border-radius: 30px;
	color: #231815;
	font-size: 22px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	left: 0;
	top: 13px;
}
 ul.number-list li span{display: block; font-size: 13px;padding: 10px 0px;}



ul.flex2{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
        background-color: #F2F2F2;
    padding: 30px;
}

ul.flex2 li{
    width: 48%;
    border-radius: 10px;
    padding: 0px 20px;
    background: #ffef0040;
    margin: 10px 0px;
    }

ul.flex2 li p{
   margin-top: 15px;
    margin-bottom: 15px!important;
}
ul.flex2 li h3{
    margin: 20px 0px;
}


ul.flex2 li .yellow-btn
{
    background: #fff;
    font-size: 15px;
    width: 250px;
    display: table;
    text-align: center;
    padding: 20px 0;
    border-radius: 50px;
    transition: .3s;
    margin: 20px auto;
}

ul.flex2 .yellow-btn
{
    background: #FFEF00;
    font-size: 15px;
    width: 250px;
    display: table;
    text-align: center;
    padding: 20px 0;
    border-radius: 50px;
    transition: .3s;
    margin: 20px auto;
}



ul.flex3{
    display: block;
/*    background-color: #F2F2F2;*/
/*    padding: 30px;*/
/*    margin: 50px 0px;*/
}

ul.flex3 li{
    width: 100%;
    border-radius: 10px;
    padding: 20px;
    background: #ffef0040;
    margin: 10px 0px;
    }

ul.flex3 li p{
   margin-top: 15px;
    margin-bottom: 15px!important;
}
ul.flex3 li h3{
    margin: 20px 0px;
}


ul.flex3 li .yellow-btn
{
    background: #fff;
    font-size: 15px;
    width: 250px;
    display: table;
    text-align: center;
    padding: 20px 0;
    border-radius: 50px;
    transition: .3s;
    margin: 20px auto;
}

ul.flex3 .yellow-btn
{
    background: #FFEF00;
    font-size: 15px;
    width: 250px;
    display: table;
    text-align: center;
    padding: 20px 0;
    border-radius: 50px;
    transition: .3s;
    margin: 20px auto;
}




.w-staff{width: 840px;}
.w-staff ul{display: flex;justify-content: space-around;flex-wrap: wrap;}
.w-staff ul li{width: 48%;}


.shorei {
    display: flex;
    justify-content: space-between;
    position: relative;
}

.shorei > div {
    width: 48%;
}

.shorei h4{
	margin-top: 5px;
	margin-bottom: 10px;
}

.container .shorei h4{
	margin-top: 5px;
	margin-bottom: 10px;
}

.container .shorei2{
	text-align: center;
	margin-top: 18px;
}

.container .shorei2 img{
	width: 48%;
}

.container table.shorei_t{
	margin-top: 20px;
}

h1{font-size: 16px;text-align: center;font-weight: 500;}


.flex-movie{margin: 30px auto;}
/*.flex-movie{display: flex;justify-content: space-evenly;flex-wrap: wrap;margin: 30px auto;}*/
.flex-movie .movie{width: 100%;padding-bottom: 10px;}
.flex-movie .movie video{max-width: 100%;}


.corona-top{width: 840px;margin: 20px auto 30px;}
.corona-top img{border-radius: 30px;}


.Progress{
	
}
.Progress-cont {
	width: 50%;
}
.Progress .Progress-cont .Progress-bf {
	font-size: 24px;
	font-weight: bold;
	text-align: center;
}
.Progress-text {
	width: 90%;
	height: 100px;
	margin: 0 auto;
	
}
.Progress .Progress-cont .Progress-img {
	margin: 0 auto;
}


/* 20211018 追加*/
.ortho-menu-cont {
    background-color: #F2F2F2;
    padding: 20px;
    margin: 50px 0px;
}
.ortho-menu-cont ul {
	display: flex;
	justify-content: space-between;
	
}
.ortho-menu-cont ul li {
	width: 48%;
	display: flex;
	flex-direction: column;
}
.ortho-menu-cont ul li img{
	width: 100%;
}
.ortho-menu-cont ul li .ortho-menu-btn{
	margin-top: auto;
    width: 200px;
}
.yellow-btn.mt30 {
    margin-top: 20px;
}
.ortho-menu-cont > a {
	margin: 0 auto;
}

.ortho-menu-cont ul li.item {
	width: 32%;
}


.tableMax{ 
    font-size: 14px;
    border: solid 1px #231815;
    padding: 20px 30px;
    vertical-align: middle;
    text-align: left;
    width: 100%!important;}

th.tableHalf{ 
    width: 45%;
    font-size: 14px;
    border: solid 1px #231815;
    padding: 20px 30px;
    vertical-align: middle;
    text-align: left;}

p.red { color: red; font-weight: bold; }

.treat {
    display: flex;
	justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 30px;
    margin-top: 30px;
	width: 720px;
    margin: 30px auto;
}

.treat_banner {
    color: #3f51b5;
    height: 160px;
    margin-bottom: 40px;
    padding: 50px 10px 10px 165px;
    position: relative;
    width: 340px;
}

.treat_banner:hover {
	opacity: 0.8;
}

.treat_banner:first-child:before {
    background: url(../images/common/invisalign_banner.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 15px;
    box-shadow: 0 0 6px #ccc;
    content: "";
    height: 160px;
    left: 0;
    position: absolute;
    top: 0;
    width: 340px;
    z-index: -1;
}

.treat_banner:before {
    background: url("../images/common/implant_banner.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 15px;
    box-shadow: 0 0 6px #ccc;
    content: "";
    height: 160px;
    left: 0;
    position: absolute;
    top: 0;
    width: 340px;
    z-index: -1;
}

.treat_banner:nth-child(3):before {
    background: url("../images/common/cerec_banner.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 15px;
    box-shadow: 0 0 6px #ccc;
    content: "";
    height: 160px;
    left: 0;
    position: absolute;
    top: 0;
    width: 340px;
    z-index: -1;
}

.treat_banner:first-child p.en_treat, .treat_banner:nth-child(3) p.en_treat {
    bottom: -15px;
    color: #fff;
    font-family: cursive;
    font-size: 30px;
    font-weight: 400;
    left: 0;
    position: absolute;
}

.treat_banner:first-child p, .treat_banner:nth-child(3) p {
    color: #fff;
    font-family: "Noto Serif JP",serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 2px;
}

.treat_banner:first-child h4, .treat_banner:nth-child(3) h4 {
    background: #fff;
    font-family: "Noto Serif JP",serif;
    font-size: 19px;
    line-height: 1.5;
    margin-bottom: 10px;
    padding-left: 10px;
    width: 175px;
}
.treat_banner:nth-child(3) h4 { letter-spacing: 0.1px;}
.treat_banner:nth-child(3) p{ color: #222;}
.treat_banner:nth-child(2) h4 {
    color: #fff;
    font-size: 23px;
    line-height: 1.5;
}

.treat_banner:nth-child(2) p {
    background: #222;
    color: #fff;
    font-size: 11px;
    line-height: 1.4;
    text-align: center;
    width: 140px;
	font-weight: 300;
}

.treat_banner:nth-child(2) div {
	position: relative;
	top: 35px;
	left: -140px;
}


.page .container div.scroll {
	margin-bottom: 5rem;
}

table.contact{
			border-collapse: separate;
			border-spacing: 5px;
			text-align: left;
            width: 100%;
		}
		table.contact th,table.contact td,table.contact th.must{
			background: #fff!important;
		}
		table.contact th{
			color: #231815;
			padding: 20px 0;
			vertical-align: top;
			width: 25%;
		}
		table.contact th.must{
			position: relative;
		}
		table.contact th.must::after{
			content: '必須';
			position: absolute;
			top: 20px;
			right: 0;
			background: #FFEF03;
			color: #231815;
			font-size: 0.8em;
			padding: 0 13px;
			text-align: center;
		}
		table.contact td{
			padding: 20px 20px 0;
			vertical-align: top;
			width: 75%;
		}
		select{
			-webkit-appearance: none;
			-moz-appearance: none;
			appearance: none;
			outline: none;
			background: url(../img/arrow-form.png) no-repeat #fff;
			background-position: calc(100% - 4px) center;
			background-size: 6px;
			font-size: 15px;
			padding: 0 40px 0 20px;
			height: 32px;
			border: solid 1px;
			border-radius: 0;
			margin: 0 10px 0 20px;
			border: 1px solid #dcdcdc;
			vertical-align: middle;
		}
		input,textarea{
			border: 1px solid #dcdcdc;
			background: #fbfbfb;
			padding: 10px 20px;
		}
		input[name=name],input[name=tel],input[name=mail]{
			width: 100%;
			height: 50px;
		}
		textarea{
			width: 100%;
			height: 300px;
		}
		input[type="submit"]{
			background: #FFEF03;
			border: none;
			color: #231815;
			padding: 10px;
			width: 100%;
			display: block;
			margin: 40px auto 0;
			width: 500px;
		}
                table.contact th p { font-size: 1rem; }
                table.contact td p { font-size: 1rem; }
                span.wpcf7-list-item-label { margin-right: 2rem; }

video.vid_main{
	width: 100%;
}
/* 20240313 */
/* .cover-img {
    margin: 0px 0px 10px 165px;

} */

.w-staff .cover-table {
    width: 100%;
}
.kyukan{ width: 800px; margin: 70px auto 80px;}
.kyukan p{ font-size: 24px; text-align: center; margin-top: 20px; font-weight: 400; }
.kyukan p span{	font-size: 32px; background: rgba(0, 0, 0, 0) linear-gradient(transparent 80%, #FFEF00 0%) repeat scroll 0 0; margin-bottom: 20px;}
.contact-list3{ display:flex; justify-content:center; margin: 20px 0 0;}
.contact-list3 li a{ background: #FFEF00; width: 300px; margin: 0 10px; padding: 10px 0; align-items: center; border-radius: 30px; display: inline-block; text-align: center;}
.contact-list3 li a span{ font-size: 19px; line-height: 1.6; padding-left: 22px;}
.contact-list3 li.tel a span{ background: url(../images/common/icon-tel01.png) no-repeat center left/16px; }
.contact-list3 li.resv a span{ background: url(../images/common/icon-resv01.png) no-repeat left center/20px; padding-left: 30px;}

.author {
    width: 1000px;
    margin: 10px auto;
    text-align: right;
}

.container .author p {
	font-size: 12px;
}

.home-btn {
	background: #FFEF00;
    font-size: 15px;
    width: 250px;
    text-align: center;
    padding: 15px 0;
    border-radius: 50px;
    transition: .3s;
	display: block;
	margin: 40px auto;
}

.group_clinic {
    padding: 4rem 0 8rem;	
}

.group_clinic_intro {
	margin: 3rem 0;
}

.group_clinic_list {
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.group_clinic_list li{
    width: 230px;
    margin-top: 60px;
}

.group_clinic_list li h3{
    font-size: 16px;
    text-align: center;
    margin-bottom: 20px;
    padding-bottom: 20px;
    position: relative;
}

.group_clinic_list li h3:after{
    content: '';
    width: 50px;
    height: 1px;
    background: #231815;
    position: absolute;
    bottom: 0px;
    left: 0;
    right: 0;
    margin: auto;
}

.group_clinic_list li .thumb{
    width: 100%;
    height: 150px;
    border-radius: 14px;
    margin-bottom: 20px;
}

.group_clinic_list li:nth-of-type(1) .thumb{
    background: url("../images/page/clinic_004.png") no-repeat;
    background-size: cover;
    background-position: center;
}

.group_clinic_list li:nth-of-type(2) .thumb{
    background: url("../images/index/chiba-chuo.jpg") no-repeat;
    background-size: cover;
    background-position: center;
}

.group_clinic_list li:nth-of-type(3) .thumb{
    background: url(../images/index/koshigaya.jpg) no-repeat;
    background-size: cover;
    background-position: center;
}

.group_clinic_list li:nth-of-type(4) .thumb{
    background: url("../images/index/shin-urayasu.jpg") no-repeat;
    background-size: cover;
    background-position: center;
}

.clinic_name_small {
	font-size: 13px;
}

.group_clinic_list li h3.clinic_tsudanuma {
	padding-top: 1rem;
    margin-bottom: 2rem;
}

.index-faq{
    padding: 80px 0 70px;
    background: #F2F2F2;
    -webkit-border-top-right-radius: 170px;
    -webkit-border-bottom-left-radius: 0px;
    -moz-border-radius-topright: 170px;
    -moz-border-radius-bottomleft: 0px;
    border-top-right-radius: 170px;
    border-bottom-left-radius: 0px;
	margin-bottom: 4rem;
}

.faq-intro {
	margin: 3rem 0;
}

.faq-box {
	background: #fff;
	padding: 1rem;
	border: 1px solid #9f9f9f;
	margin-bottom: 3rem;
}

.faq-question {
	font-size: 20px;
	font-weight: 600;
	margin-right: 1rem;
	position: relative;
	z-index: 0;
}

.faq-question::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0.1em;
  width: 100%;
  height: 0.4em;
  background: #ffef00;
  z-index: -1;
  transform: rotate(-2deg);
  border-radius: 1px;
}

.faq-text {
	font-size: 16px;
	font-weight: 600;
}

.faq-text-answer {
	font-size: 13px;
}

a.yellow-btn.faq-btn {
	background: #FFEF00;
    font-size: 15px;
    width: 301px;
    display: table;
    text-align: center;
    padding: 15px 0;
    border-radius: 50px;
    transition: .3s;
    margin: 1rem auto;
}

span.red-txt {
	color: red;
	font-weight: 600;
}

a.treat_banner.invisaline_banner {
	display: block;
	margin: 0 auto 4rem;
}

.mv-pre {
	border-radius: 20px;
}