@charset "utf-8"; @import url(https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@200..900&display=swap); /* common -----------------------------------------------*/
body {
    color: #727171;
    font-family: 'Noto Sans Japanese', sans-serif;
    font-weight: 300;
    line-height: 1.6;
}

.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}

.clearfix {
    display: inline-block;
}

.cont_w {
    position: relative;
}

.rome {
    font-family: 'Times New Roman';
}

.bold {
    font-weight: bold;
}
.blue {
    color: #75b3e3;
}
h1.bar_h2 {
    background: #6bbdd3;
    color: #FFF;
    text-align: center;
    padding: 5px;
    font-size: 20px;
    font-weight: normal;
    letter-spacing: 5px;
    margin-bottom: 10px;
}

/* Hides from IE Mac \*/
* html .clearfix {
    height: 1%;
}

.clearfix {
    display: block;
}

.bg-ice {
    background: url(images/cl_bg.png);
    background-size: cover;
}

/* End Hack */
ul {
    list-style: none;
}

a {
    color: #595656;
    text-decoration: none;
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}

.cont-head {
    text-align: center;
    color: #6bbdd3;
    position: relative;
    margin-bottom: 20px;
    line-height: 1.53;
}

.cont_subhead {
    font-size: 1.8rem;
    text-align: center;
    color: #a37989;
    padding: 10px 0;
    letter-spacing: 2px;
}

.cont-text {
    text-align: center;
    padding: 0px 0 65px;
    font-size: 1.2rem;
    font-weight: bold;
}

.cont-subhead {
    text-align: center;
}

.deco_color-2 {
    color: #a37989;
}

.res {
    float : left;
    box-sizing: border-box;
}

.cont-head-deco {
    height: 40px;
    width: 40px;
    transform: rotate(45deg);
    position: absolute;
    background-color: #6bbdd3;
    bottom: -20px;
    z-index: -999;
    left: 0;
    right: 0;
    margin: auto;
}

/* headre */
header {
    border-top: solid 1px #afc9d3;
}

.header__in {
    margin-top: 1px;
    border-top: solid 5px #afc9d3;
    padding: 14px;
}

/* footer */
footer {
    padding: 10px;
    background-color: #afc9d3;
    color: #fff;
    text-align: center;
    font-size: 0.7rem;
    margin-bottom: 50px;
    margin-top: 30px;
}

/* #main -----------------------------------------------*/
.bg_deco {
    height: 40px;
    width: 40px;
    background-color: #edf3f5;
    display: block;
    position: absolute;
    transform: rotate(45deg);
    left: 0;
    right: 0;
    margin: auto;
    z-index: -99;
    bottom: -20px;
}

.cont-head-in {
    display: block;
    border-top: solid 1px #fff;
    border-bottom: solid 1px #fff;
    padding: 42px 10px;
}

/* recommend */
.recommend__case-cont-box-text-emphasis {
    font-weight: bold;
    font-weight: normal;
    font-size: 1.6rem;
    font-size: 2.6rem;
    line-height: 1.7;
    line-height: 1;
    padding-top: 5px;
    padding-bottom: 5px;
    display: inline-block;
}

.recommend__case-cont-box-caseText-number {
    font-size: 1.8rem;
    position: relative;
    left: -5px;
    line-height: 1;
}

.recommend__case-cont-box-caseText {
    color: #6bbdd3;
    font-weight: bold;
    border-bottom: solid 1px #afc9d3;
    border-bottom: none;
    margin: 0 15px 5px;
    font-size: 1.4rem;
    line-height: 1;
    padding: 15px 8px 1px 8px;
    padding: 40px 8px 1px 8px;
    box-sizing: border-box;
}

.recommend__case-cont {
    text-align: center;
    padding: 0px 20px;
}

.recommend__case-bottom {
    max-width: 715px;
    margin: 0 auto;
}

.recommend__case-cont-box {
    width: 200px;
    width: 300px;
    margin: 20px auto;
    height: 200px;
    height: 300px !important;
    background-color: #fff;
    border-radius: 50%;
    border: solid 4px #c3d6de;
    box-sizing: border-box;
}

.recommend {
    background: linear-gradient(#fff 35%,#edf3f5 0%,#edf3f5);
    background: linear-gradient(#edf3f5 35%,#edf3f5 0%,#edf3f5);
    position: relative;
}

.recommend__text {
    max-width: 670px;
    padding: 20px;
    margin: 50px auto 0;
    border-radius: 5px;
    font-size: 1.2rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.4;
    letter-spacing: 1px;
}

.recommend__case {
    max-width: 943px;
    margin: 30px auto 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.recommend__case-cont-box-text {
    font-size: 1.2rem;
    line-height: 1.2;
}

.recommend .cont_w p {
    font-size: 2.5rem;
    line-height: 1.2;
    text-align: center;
    margin: 0 0 20px;
    padding: 0 10px;
}

.recommend .cont_w p:first-child {
    font-size: 5em;
}

/* features */
.features__cont-box-in-head {
    font-size: 1.7rem;
    text-align: center;
    font-weight: bold;
    line-height: 1.2;
    padding-bottom: 10px;
}

.features__cont-box-in-point {
    position: absolute;
    top: -15px;
    left: -15px;
}

.features__cont-box {
    padding: 25px 15px;
}

.features__cont-box-in {
    background-color: #f7f1ed;
    padding: 7px;
    position: relative;
}

.features__cont-box-cont {
    padding: 10px;
    border: solid 1px #ccbba9;
    background-color: #fff;
}

.features__pointList-cont-text {
    font-size: 3.1rem;
    font-weight: bold;
    vertical-align: middle;
    color: #75b3e3;
}

.features__pointList-cont-text .text_2 {
    font-size: 1.4rem;
    font-weight: bold;
    vertical-align: middle;
    color: #a37989;
    margin-left: 130px;
    position: absolute;
}

.features__pointList-lastText {
    font-weight: bold;
    /* text-align: center; */
    font-size: 1.4rem;
    margin-top: 40px;
    margin-left: auto;
    margin-right: auto;
    max-width: 790px;
}
.features__pointList-lastText b {
    text-decoration: underline;
    /* font-size: 1.4rem; */
}
.features__pointList-lastText span {
    font-size: 40px;
}

/* features 20230208_add */
.features .cont_w h2.cont-head {
    font-size: 3.5rem;
}
.features .cont_w h2.featuresBlock__h2 {
    font-size: 2.2rem;
    line-height: 1.2;
}

.features2 {
    background: linear-gradient(#fff 35%,#edf3f5 0%,#edf3f5);
    background: linear-gradient(#edf3f5 35%,#edf3f5 0%,#edf3f5);
    position: relative;
    padding: 30px 0 50px;
}

.features2 .cont_w  {
    margin: 0 auto 40px;
}
.features2 .cont_w p {
    font-size: 2.5rem;
    line-height: 1.2;
    text-align: center;
    margin: 0 0 10px;
    padding: 0 10px;
}

.features2 .cont_w p:first-child {
    font-size: 5em;
    line-height: 1;
}
.features2 .cont_w span.caption {
    font-size: 0.5em;
    display: block;
}


.yoyaku {
    margin-top: 40px;
}

.yoyaku .sinryo {
    margin-left: 40px;
}

.features__pointList-cont-point {
    vertical-align: middle;
}

.doted-bg {
    background-image: url(images/bg_dot.png);
    position: relative;
}

.features__arrow {
    position: absolute;
    left: 0;
    margin: auto;
    top: -50px;
    right: 0;
}

.features__pointList-cont {
    padding: 0px 0;
    max-width: 950px;
    margin: 0 auto;
}

.features__pointList-cont-arrow {
    vertical-align: middle;
    padding: 0 0px 0 25px;
    width: 20px;
}

.features__cont-box-in-text {
    padding: 15px 5px;
}

.features__attention {
    padding-bottom: 10px;
}

div.featuresBlock {
    display: flex;
    flex-wrap: wrap;
    padding: 50px 20px;
    margin-top: 50px;
}

.featuresBlock > section {
    flex: 1;
    min-width: calc(50% - 30px);
    margin: 15px;
    background: #FFF;
    padding: 20px;
    box-sizing: border-box;
    border: solid 5px #afc9d3;
}

.featuresBlock__h1 {
    font-size: 24px;
    border-bottom: 1px solid #afc9d3;
    margin-bottom: 10px;
    padding-bottom: 5px;
}

.featuresBlock__h1:before {
    content: "●";
    color: #6bbdd3;
    font-size: 26px;
    margin-right: 5px;
}

h2.featuresBlock__h2 {
    font-size: 22px;
    line-height: 1.4em;
    margin-top: 10px;
    margin-bottom: 5px;
    font-weight: bold;
}

.featuresBlock img {
    width: 100%;
}

.bg-beige.is_aohalFeatures {
    margin-bottom: 0;
}

.aohalFeatures__inner {
    display: flex;
}

.cont_w.aohalFeatures {
    padding: 50px 20px;
}

.aohalFeaturesOuter {
    overflow: hidden;
    padding: 20px;
    border: solid 2px #afc9d3;
}

span.treatment__pointList-text-head-in {
    color: #75b3e3;
}

.whyAohal__img {
    width: 210px;
    margin: 0 auto;
    max-width: 40%;
    position: relative;
    top: 41px;
}

.whyAohal__baloon {
    position: relative;
    background: #6bbdd3;
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
    font-size: 24px;
    color: #FFF;
    border-radius: 100px;
    padding: 10px;
    top: -34px;
}

.whyAohal__txt {
    text-align: center;
    font-size: 24px;
}

.whyAohal {
    margin: 140px 0 50px;
}

span.treatment__pointList-text-head-in.is_h2 {
    color: #727171;
}

.is_how .aohalFeaturesOuter {
    display: flex;
    padding: 10px;
    justify-content: space-between;
}

.is_how .treatment__pointList-num {
    width: 90px;
    background: #6bbdd3;
    color: #FFF;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 25px;
}

.is_how .treatment__pointList-num .learge {
    font-size: 120px;
    font-style: italic;
    font-weight: bold;
    line-height: 1em;
}

.is_how .treatment__pointList-img {
    padding: 20px 20px;
    width: 180px;
    text-align: center;
}

.is_how .treatment__pointList-img img {
    max-width: 140px;
}

.is_how .treatment__pointList-imgtxt {
    background: #edf3f5;
    width: 60%;
    width: 100%;
    padding: 20px;
    box-sizing: border-box;
    display: flex;
}

.is_how .treatment__pointList-text-main {
    padding: 0 20px;
    flex: 1.5;
}

.is_how .treatment__pointList-text-main-text {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.6em;
}

.is_how .treatment__pointList-img2 {
    flex: 1;
}

.cont_w.is_how {
    margin-top: 70px;
}

.is_how .treatment__pointList > li {
    position: relative;
    overflow: visible;
    margin-bottom: 60px;
}

.is_how .cont-head-deco {
    background: #e7eff2;
    height: 80px;
    width: 80px;
}

section.genri p {
    margin-bottom: 1em;
    line-height: 2em;
}

/* flow */
section.flow {
    margin: 60px 0;
}

.is_flow .treatment__pointList-text-main-list {
    padding: 8px 0;
    border-top: dashed 1px;
    border-bottom: dashed 1px;
    margin: 8px 0;
}

.is_flow .treatment__movie-wrap {
    position: relative;
}

.is_flow .treatment__arrow {
    position: absolute;
    left: 0;
    top: -60px;
    right: 0;
    margin: auto;
}

.is_flow .treatment__pointList li:nth-child(odd) {
    background-color: #edf3f5;
    border: none;
    margin-bottom: 0;
}

.is_flow .treatment__pointList {
    border: solid 2px #edf3f5;
}

.is_flow .treatment__pointList > li {
    padding: 30px;
    overflow: hidden;
    border: none;
    display: flex;
    align-items: center;
}

.is_flow .treatment__pointList-text {
    box-sizing: border-box;
}

.is_flow .treatment__pointList-text-main-list li {
    display: inline-block;
    padding-right: 10px;
}

.is_flow .treatment__pointList-text-head {
    font-size: 1.5rem;
    font-weight: bold;
    color: #595656;
    padding-bottom: 10px;
    line-height: 1.4;
}
span.treatment__pointList-text-head-in.black {
    color: #353535;
}
.is_flow .treatment__movie {
    background-color: #f8f1ed;
    max-width: 630px;
    margin: 0 auto;
}

.is_flow .treatment__pointList-text-main {
    font-size: 0.89rem;
}

.is_flow .treatment__cont-text {
    font-size: 1.07rem;
    line-height: 2.3;
}

.cont_w.is_flow {
    margin-top: 70px;
}

.is_flow .treatment__movie-head {
    margin-bottom: 68px;
    font-size: 1.5rem;
    margin-top: 6px;
}

.is_flow .treatment__pointList-text-main-text {
    line-height: 1.9;
}

/* treatment */
.treatment__pointList-text-main-list {
    padding: 8px 0;
    border-top: dashed 1px;
    border-bottom: dashed 1px;
    margin: 8px 0;
}

.treatment__movie-wrap {
    position: relative;
}

.treatment__arrow {
    position: absolute;
    left: 0;
    top: -60px;
    right: 0;
    margin: auto;
}

.treatment__pointList li:nth-child(odd) {
    /* background-color: #FFF; */
}

.treatment__pointList {
    /* border: solid 2px #f7f1ed; */
}

.treatment__pointList > li {
    /* padding: 20px; */
    overflow: hidden;
    border: 10px solid #e7eff2;
    margin-bottom: 30px;
    background-color: #FFF;
}

.treatment__pointList-text {
    box-sizing: border-box;
}

.treatment__pointList-text-main-list li {
    display: inline-block;
    padding-right: 10px;
}

.treatment__pointList-text-head {
    font-size: 1.5rem;
    font-weight: bold;
    color: #595656;
    padding-bottom: 10px;
    line-height: 1.4;
}

.treatment__movie {
    background-color: #f8f1ed;
    max-width: 630px;
    margin: 0 auto;
}

.treatment__pointList-text-main {
    font-size: 0.89rem;
}

.treatment__cont-text {
    font-size: 1.07rem;
    line-height: 2.3;
}

.treatment__movie-head {
    margin-bottom: 68px;
    font-size: 1.5rem;
    margin-top: 6px;
}

.treatment__pointList-text-main-text {
    line-height: 1.9;
}

/* price */
table.priceTable td,table.priceTable th {
    border: solid 1px #c3d6de;
    padding: 10px;
    vertical-align: middle;
}

table.priceTable {
    width: 100%;
}

table.priceTable {
    border: 5px solid #c3d6de;
    margin-top: 60px;
    background: #FFF;
    margin-bottom: 15px;
}

table.priceTable tr th:first-child,table.priceTable tr td:first-child {
    width: 25%;
}

table.priceTable tr th:last-child, table.priceTable tr td:last-child {
    width: 35%;
}

.priceTable__price {
    color: #6bbdd3;
    font-size: 30px;
    margin-top: 40px;
    font-weight: bold;
}

.priceTable__price span {
    font-size: 14px;
}

.priceTable__machine__target {
    background: #75b3e3;
    text-align: center;
    color: #FFF;
    font-size: 24px;
    line-height: 1em;
    padding: 10px 3px;
    margin-bottom: 60px;
}
.is_standard .priceTable__machine__target {
    min-height: 3.5em;
    display: flex;
    justify-content: center;
    align-items: center;
}
.priceTable__machine__target span {
    font-size: 15px;
}

.priceTable__machine__name .name {
    font-size: 25px;
}

.price-flex {
    display: flex;
    justify-content: space-around;
}

.price-flex > * {
    flex: 1;
    margin: 3px;
}

img.max-img {
    width: 180px;
    margin: 0 auto;
    display: block;
}

section.price {
    margin-top: 110px;
    background: #edf3f5;
    padding: 60px 0;
}
.priceTable__price span.del {
    font-size: inherit;
    color: #6bbdd3;
}

.priceTable__price.lineThrough {
    text-decoration: line-through;
    color: red;
}
.priceTable__price.newPrice {
    margin-top: 0;
    color: red;
}
.priceTable__price span.del span {
    display: block;
}
.priceTable__price.newPrice span {
    display: block;
}
/* doctor */
.doctor__book-in {
    background-color: #f7f1ed;
    padding: 20px 30px;
}

.doctor__book-in-img {
    padding: 0 15px;
}

.doctor__book-in-text {
    line-height: 2.8rem;
    font-size: 1.1rem;
    box-sizing: border-box;
}

.doctor__message {
    text-align: center;
    font-weight: bold;
    font-size: 1.1rem;
    line-height: 1.9;
}

.doctor__profile-text-name {
    font-size: 1.8rem;
    font-weight: bold;
    color: #6bbdd3;
}

.doctor__profile-text-main {
    padding-bottom: 10px;
    line-height: 1.9;
}

.doctor__profile-text-main:last-child {
    padding-bottom: 0;
}

.doctorNameBefore {
    height: 40px;
    margin-bottom: 20px;
}

.doctorNameBefore.is_after {
    margin-top: 20px;
    margin-bottom: 0;
}

/* efforts */
.efforts .cont-head:before {
    position: absolute;
    top: 65px;
    left: 260px;
}

.efforts__cont-text {
    float: left;
    box-sizing: border-box;
    font-weight: bold;
    font-size: 1.07rem;
    line-height: 2.3;
}

/* clinic */
.clinic__slider-text {
    font-size: 0.9rem;
    padding-top: 10px;
    margin: 0 auto;
}

.clinic {
    background-image: url(images/clinic/clinic_bg.png);
    background-repeat: no-repeat;
    background-size: cover;
}

.clinic__slider li {
    text-align: center;
}

.clinic__text {
    line-height: 2.2;
    font-weight: bold;
    color: #595656;
    text-align: center;
}

/* privateRoom */
.privateRoom .cont-head:before {
    /* position: absolute; */
    top: 60px;
    left: 180px;
}
.privateRoom .cont-head:after {
    display: none;
}
.privateRoom__cont {
    padding-top: 20px;
}

.privateRoom__text-main {
    font-size: 0.9rem;
    line-height: 1.9;
}

.privateRoom__text {
    float: left;
    padding: 20px 30px;
    box-sizing: border-box;
}

.cont-textHead {
    font-size: 1.3rem;
    margin-bottom: 0px;
}

/* reservation */
.reservation__tel {
    font-size: 1.3rem;
}

.reservation__cont-info-logo {
    padding-bottom: 20px;
}

.reservation__cont-info {
    box-sizing: border-box;
    color: #595656;
}

.reservation__cont-map {
    padding: 10px;
    box-sizing: border-box;
}

iframe {
    vertical-align: bottom;
}

.reservation__cont-info dd {
    padding-bottom: 20px;
    font-size: 0.9rem;
}

.cont-subhead2 {
    font-size: 1.5rem;
    text-align: center;
}

/* faq */
.faq__cont-head-q {
    display: inline-block;
    padding: 5px;
    background-color: #8dd0e2;
    margin-right: 10px;
}

.faq__cont-head {
    background-color: #edf3f5;
    font-size: 1.4rem;
    color: #595656;
}

.faq__cont li {
    padding: 20px;
    border: solid 3px #afc9d3;
    font-size: 1.4rem;
    font-weight: bold;
    margin-bottom: 20px;
}

.noProblem {
    /* font-size: 1.7rem; */
    padding: 10px 0 0px;
    font-weight: bold;
    color: #6bbdd3;
}

.faq__cont {
    padding-top: 60px;
}

/* contact */
.contact__box-in-head2 {
    text-align: center;
    font-weight: bold;
    font-size: 1.8rem;
    padding-bottom: 10px;
    padding-top: 10px;
}

.contact__box-in-head2-text {
    width: 56%;
    float: left;
}

.contact__box-in-head2-deco {
    width: 22%;
    background-color: rgba(189, 204, 212, 0.3);
    height: 25px;
    float: left;
}

.contact__box-in {
    background-color: #ffffff;
    padding: 10px;
    border: solid 1px #afc9d3;
}

.contact__box-in-head {
    padding: 8px;
    text-align: center;
    background-color: #6bbdd3;
    margin-bottom: 10px;
    color: #fff;
    font-size: 1.7rem;
}

.contact__box-in-price-text {
    font-weight: bold;
    font-size: 1.5rem;
}

.contact__box-in-price-num {
    font-size: 4rem;
    font-weight: bold;
    background-image: url(images/contact/price_bg.png);
    padding: 15px 5%;
    box-sizing: border-box;
    background-repeat: no-repeat;
    line-height: 1.2;
    letter-spacing: 4px;
    color: #db6c85;
    background-size: contain;
    text-align: center;
}

.contact__box-in-price-num-head {
    font-size: 1.4rem;
    background-image: url(images/contact/price_ribbon.png);
    text-align: center;
    padding: 10px;
    background-repeat: no-repeat;
    color: #fff;
    background-size: contain;
    background-position: center;
    margin-bottom: 5px;
}

.contact__box-in-price-num-tax {
    font-size: 2rem;
}

.contact__box-in-price-num-unit {
    font-size: 2.4rem;
}

.contact__box-in-tel-num {
    color: #6bbdd3;
}

.contact__box-in-tel-num-wrap {
    font-size: 3rem;
    font-weight: bold;
    line-height: 1;
    padding-top: 3px;
    letter-spacing: 3px;
}

.contact__box-in-mail-btn {
    background-color: #75b3e3;
    display: block;
    padding: 5px;
    color: #fff;
}

.contact__box-in-mail-btn-in {
    border: solid 1px #fff;
    display: block;
    padding: 10px 10px 10px 40px;
    font-size: 1.2rem;
    text-align: center;
    font-weight: bold;
    background-image: url(images/mail_icon.png);
    background-repeat: no-repeat;
    background-position: 35px;
}

.contact__box-in-mail-head {
    margin-bottom: 10px;
    font-weight: normal;
    font-size: 1rem;
    font-weight: bold;
}

.deco_color-1 {
    color: #6bbdd3;
}

.contact__box-in-tel-head {
    font-weight: normal;
    font-size: 1rem;
    font-weight: bold;
}

.contact__box-in-price-text-head {
    font-size: 1.8rem;
}

.contact__privacy-link {
    align-items: center;
    display: flex;
    margin-top: 1em;
}

.contact__privacy-link.--right {
    justify-content: flex-end;
}

.cont-head {
    font-size: 2.5rem;
}

.fix_cont {
    position: fixed;
    bottom: 0;
    width: 100%;
    border-top: solid 3px #078eb2;
    font-weight: bold;
    display: none;
    z-index: 9999;
    opacity: 0.9;
}

.fix_cont li a {
    display: block;
    color: #fff;
    font-size: 1.1rem;
    line-height: 1;
    height: 100%;
}

.fix_cont li:nth-child(1) {
    background-color: #fff;
}

.fix_cont li:nth-child(2) {
    background-color: #44b4d2;
}

.fix_cont li:nth-child(3) {
    background-color: #4499d8;
}

.fix_cont li:nth-child(4) {
    background-color: #3ecabb;
}

.mincho {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-family: 'Noto Serif SC', serif;
}

span.kome {
    font-family: sans-serif;
}

.attention {
    font-size: 1.5rem;
    text-align: center;
}

.contact__box-in-price {
    padding-bottom: 10px;
}

.doctor__profile-newimg,.doctor__profile-text {
    flex: 1;
}

.doctor__profile-newimg {
    text-align: center;
    position: relative;
}
.doctor__profile-badge-text {
    background-color: #6bbdd3;
    position: absolute;
    color: #fff;
    line-height: 1.3;
    padding: 16px 20px;
    font-size: 1.4rem;
    bottom: 10px;
    right: 10px;
}

section.doctor {
    padding: 70px 0!important;
}
.treatment__pointList-num:before {
    content: "POINT";
    position: absolute;
    top: 0;
    left: 0;
    background: #FFF;
    border: 2px solid #6dbed4;
    color: #6dbed4;
    height: 4em;
    width: 4em;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 9999px;
}
.is_flow .treatment__pointList-num:before {
    content: "STEP";
    background: #75b3e3;
    color: #FFF;
    border: solid 2px #FFF;
    top: -4em;
    left: -1em;
    height: 5em;
    width: 5em;
}

.is_how .treatment__pointList-num:before {
    display: none;
}
.noProblem.black {
    color: #727171;
}
.header__in-cont {
    display: flex;
    justify-content: space-between;
}

a.langBtn {
    background: #6bbdd3;
    color: #FFF;
    display: block;
    padding: 5px 20px;
    border-radius: 6px;
}
a.langBtn:before{
    content:"> ";
}
/* ===================================================================================
 for PC min-width: 741px
 =================================================================================== */
@media screen and (min-width: 741px) {
    .s-font {
        font-size: 2rem;
    }

    .faq__cont-head-q-in {
        padding: 10px;
        text-align: center;
        background-color: #6bbdd3;
        color: #fff;
    }

    .recommend__case-cont-box.case7 {
        width: 180px !important;
    }

    .recommend__case-bottom {
        max-width: 943px;
        margin-top: 50px;
    }

    .features {
        padding: 90px 0 0;
    }

    .features__pointList {
        margin-top: 80px;
    }

    .treatment__movie {
        padding: 30px;
        height: 350px;
    }

    .faq__cont-head-q-in {
        width: 40px;
    }

    .reservation__cont-info {
        padding-right: 30px;
    }

    .treatment__cont {
        padding: 50px 0 33px;
    }

    .features__pointList {
        padding: 0px 0 60px;
    }

    .clinic__text {
        padding-bottom: 80px;
    }

    .treatment__movie-head {
        border-bottom: solid 1px #cebfae;
    }

    .privateRoom .cont-head span:after {
        /* position: absolute; */
        /* top: 60px; */
        /* right: 180px; */
        background-image: url(images/head_r.svg);
        content: "";
        width: 50px;
        height: 32px;
        display: inline-block;
        margin-left: 20px;
    }

    .clearfix.efforts__cont {
        padding-bottom: 75px;
    }

    .treatment__movie-wrap {
        background-image: url(images/bg_dot.png);
        padding: 60px 0 40px;
    }

    /* mainVisual */
    .mainVisual {
        padding: 18px 0px;
        padding: 0;
    }

    .treatment__pointList {
        margin-bottom: 40px;
    }

    .efforts {
        padding: 80px 0;
    }

    .cont-subhead2 {
        padding-bottom: 40px;
    }

    .reservation {
        padding: 85px 0 0;
    }

    .privateRoom {
        padding: 90px 0 75px;
    }

    .reservation_attention {
        position: absolute;
        right: 90px;
        top: -10px;
        font-family: inherit;
        font-weight: initial;
        color: #727171;
        font-size: 0.4rem;
    }

    .reservation__cont-map {
        background-color: #f1eee9;
    }

    .reservation__cont {
        background-image: url(images/bg_dot.png);
        padding: 40px 0;
    }

    .privateRoom {
        /* background-color: #f7f1ed; */
    }

    .doctor__book {
        border: solid 1px #bdaa93;
        padding: 10px 30px 30px 30px;
        margin-top: 68px;
    }

    .clinic {
        padding: 85px 0px 90px;
    }

    .doctor__profile-text {
        /* background-color: rgba(255,255,255,0.8); */
        /* margin: 0px 0px 0 auto; */
        padding: 30px;
    }

    .doctor__profile {
        /* background-image: url(images/doctor/doctor_img.png); */
        background-repeat: no-repeat;
        background-size: 100% auto;
        background: #edf3f5;
        padding: 20px;
    }

    .contact__box-in-mail {
        padding: 0 20px;
    }

    .contact__box-in-tel {
        padding: 0 20px;
        border-style: dotted;
    }

    .efforts .cont-head:after {
        position: absolute;
        top: 65px;
        right: 260px;
    }

    .sp {
        display: none;
    }

    .mainVisual {
        background-color: #edf3f5;
        background-color: #372131;
        text-align: center;
    }
    .mainVisual .top-btn {
        width: 35%;
        position: absolute;
        left: 8%;
        bottom: 8%;
    }

    .header__in-cont {
        padding: 12px 0;
    }

    .features__pointList-cont-point img {
        vertical-align: middle;
        width: 55px;
    }

    /* common */
    .cont_w {
        max-width: 1000px;
        margin: 0px auto;
        padding: 0 20px;
    }

    p.sun {
        text-align: center;
        font-size: 1.1rem;
        font-weight: bold;
        margin: 30px 0;
    }

    .pc-4 {
        width: 25%;
    }

    .pc-3 {
        width: 33.3333333%;
    }

    .pc-2 {
        width: 50%;
    }

    a:hover {
        opacity: 0.7;
        transition: 1s;
    }

    .features .cont-head:after {
        /* position: absolute; */
        /* top: 0px; */
        /* right: 200px; */
    }

    .features .cont-head:before {
        /* position: absolute; */
        /* top: 0px; */
        /* left: 200px; */
    }

    .cont-head:before {
        content: "";
        background-image: url(images/head_l.svg);
        display: inline-block;
        width: 50px;
        height: 32px;
    }

    .cont-head:after {
        content: "";
        background-image: url(images/head_r.svg);
        display: inline-block;
        width: 50px;
        height: 32px;
    }

    .cont_subhead:after {
        content: url(images/head_r_mini.png);
        position: relative;
    }

    .cont_subhead:before {
        content: url(images/head_l_mini.png);
        position: relative;
    }

    .bg-beige.cont-head:before {
        content: "";
        display: none;
    }

    .bg-beige.cont-head:after {
        content: "";
        display: none;
    }

    .contact__box-in-head:after {
        content: url(images/contact/contact_head_r.png);
    }

    .contact__box-in-head:before {
        content: url(images/contact/contact_head_l.png);
    }

    .cont-head-in:after {
        content: url(images/head_r_2.png);
    }

    .cont-head-in:before {
        content: url(images/head_l_2.png);
    }

    /* headre */
    /* footer */
    .top_back_btn img {
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto;
        left: 0;
        right: 0;
    }

    .top_back_btn {
        position: fixed;
        bottom: 150px;
        right: 20px;
        background-color: #5c75a2;
        display: block;
        width: 70px;
        height: 70px;
        border-radius: 50%;
        text-align: center;
        box-shadow: 2px 2px 10px 0px rgba(0,0,0,0.3);
        display: none;
    }

    .fix_cont li {
        float: left;
        width: 25%;
        text-align: center;
        opacity: 0.8;
        height: 55px;
        position: relative;
    }

    .fix_cont li:nth-child(2) .icon_area-inner {
        background-image: url(images/tel_icon.png);
        background-repeat: no-repeat;
        background-position: left;
        display: inline-block;
        padding: 5px 10px 3px 30px;
    }

    .fix_cont li:nth-child(3) .icon_area {
        background-image: url(images/mail_icon.png);
        background-repeat: no-repeat;
        background-position: 20px center;
        padding: 10px 10px 10px 35px;
    }

    .fix_cont li:nth-child(4) .icon_area {
        background-image: url(images/line_icon.png);
        background-repeat: no-repeat;
        background-position: 14px 5px;
        display: block;
        padding: 10px 10px 10px 30px;
    }

    .fix_cont img {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
        width: 90%;
        max-width: 212px;
    }

    .fix_cont li:nth-child(4) a {
        padding: 10px 0px;
    }

    .icon_area {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
        height: 18px;
    }

    .icon_area2 {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
        height: 38px;
    }

    .treatment__cont-text {
        float: left;
        width: 58%;
    }

    .treatment__cont-img {
        float: left;
        width: 42%;
    }

    .treatment__pointList-num {
        float: left;
        width: 19%;
        position: relative;
    }

    .contact__box-in-price-text {
        float: left;
        width: 47%;
    }

    .contact__box-in-price-num {
        float: left;
        width: 53%;
    }

    .contact__box-in-tel {
        width: 52%;
        border-right: solid 1px #bdaa93;
    }

    .contact__box-in-mail {
        width: 48%;
    }

    .treatment__pointList-text {
        float: left;
        width: 54%;
        padding: 0px 30px;
    }

    .treatment__pointList-img {
        float: left;
        width: 27%;
    }

    .doctor__profile__inner {
        padding: 10px;
        display: flex;
        background: #FFF;
        border: 3px solid #afc9d3;
    }

    .doctor__profile-text {
        width: 355px;
    }

    .doctor__book-in-text {
        width: 65%;
        padding: 5% 4%;
        float: left;
    }

    .doctor__book-in-img {
        width: 30%;
        float: left;
        box-sizing: border-box;
    }

    .efforts__cont-text {
        width: 58%;
        padding: 5% 5% 5% 10%;
    }

    .efforts__cont-img {
        float: left;
        width: 35%;
    }

    .clinic__slider-wrap {
        max-width: 567px;
        margin: 0 auto;
    }

    .privateRoom__img {
        float: left;
        width: 46%;
    }

    .privateRoom__text {
        float: left;
        width: 54%;
    }

    .reservation__cont-info {
        float: left;
        width: 47%;
    }

    .reservation__cont-map {
        float: left;
        width: 53%;
        height: 350px;
    }

    .contact__box-in-head2-deco {
        margin-top: 10px;
    }

    .attention.fix_attention {
        display: block;
        font-family: initial;
        font-size: 0.8rem;
        padding-top: 3px;
        font-weight: normal;
        font-size: 10px;
    }

    .bx-prev {
        left: -85px;
        background: url(images/slide_l.png) no-repeat;
        /*prev用画像*/
    }

    .bx-next {
        right: -85px;
        background: url(images/slide_r.png) no-repeat;
        /*next用画像*/
    }

    .bx-controls-direction a {
        position: absolute;
        width: 65px;
        /*使用画像に応じて指定*/
        height: 65px;
        /*使用画像に応じて指定*/
        text-indent: -9999px;
        /*画像置換のためテキストを押しやる*/
        z-index: 9999;
    }

    .bx-controls.bx-has-controls-direction {
        position: relative;
        top: -250px;
    }

    .balloon {
        left: 21%;
        width: 12%;
        top: -35px;
    }

    .balloon {
        position: absolute;
        left: 170px;
        top: -52px;
    }

    .treatment__cont-text {
        padding: 50px 20px;
    }

    .treatment__cont-text {
        font-weight: bold;
    }

    .recommend {
        padding: 71px 0 23px;
        padding: 31px 0 23px;
    }

    .contact__box {
        background-color: rgba(189, 204, 212, 0.3);
        padding: 10px;
    }

    .doctor__message {
        margin-bottom: 50px;
    }

    section.doctor {
        padding: 0px 0;
    }

    section.contact {
        padding: 40px 0;
    }

    .noPro {
        padding-left: 83px;
    }

    .noProblem {
        padding: 10px 0 0px 83px;
    }

    .doctor__profile-text-name-en {
        font-size: 1rem;
        padding-left: 20px;
    }
}

/* ===================================================================================
 for PC-2 max-width: 1060px
 =================================================================================== */
@media screen and (max-width: 1060px) and (min-width: 741px) {
    .features .cont-head:before {
        left: 19%;
        top: 20%;
        top: 55%;
    }

    .features .cont-head:after {
        right: 19%;
        top: 55%;
    }

    .balloon {
        left: 17%;
    }

    html {
        font-size: 1.5vw;
    }

    .recommend__case-cont-box {
        width: 100%;
        max-width: 160px;
        /* max-height: 130px; */
    }

    .recommend__case-cont-box-caseText {
        /* width: 84px; */
    }

    .features__cont-box-in-point {
        width: 25%;
    }

    .efforts .cont-head:before {
        left: 26%;
        top: 58%;
    }

    .efforts .cont-head:after {
        right: 26%;
        top: 58%;
    }

    .fix_cont li a {
        font-size: 1rem;
    }

    .icon_area {
        background-size: 11%;
    }

    .attention.reservation_attention {
        /* left: 37%; */
    }

    .contact__box-in-tel-num {
        font-size: 2.8rem;
    }

    .contact__box-in-mail-btn-in {
        font-size: 1.6rem;
    }

    .contact__box-in-price-num {
        padding-top: 1.1%;
    }

    .contact {
        padding: 74px 0 82px;
    }

    .privateRoom .cont-head:before {
        left: 17%;
        top: 60%;
    }

    .privateRoom .cont-head:after {
        right: 17%;
        top: 60%;
    }
}

/* ===================================================================================
 for SP max-width: 740px
 =================================================================================== */
@media screen and (max-width: 740px) {
    .s-font {
        font-size: 1.3rem;
    }

    .attention.reservation_attention {
        position: absolute;
        right: 5px;
        top: -15px;
        font-family: inherit;
        font-weight: initial;
        color: #727171;
        font-size: 1rem;
        width: initial;
    }

    .attention {
        font-size: 1rem;
        width: 95%;
        margin: 0 auto;
    }

    .bx-viewport {
        overflow: visible !important;
    }

    .clinic__slider {
        width: 523% !important;
    }

    .treatment {
        padding-bottom: 20px;
    }

    .contact__box {
        padding: 0px 2.5%;
    }

    .features .cont-head {
        padding-top: 5px;
    }

    .recommend {
        padding: 40px 0 15px;
    }

    .features {
        padding: 30px 0 0;
    }

    .features__pointList {
        margin-top: 50px;
        /* padding-top: 50px; */
        padding-bottom: 17px;
    }

    .reservation__cont-info {
        width: 95%;
        margin: 0 auto;
        font-size: 1rem;
    }

    .doctor_img {
        display: block;
        margin: 0 auto;
    }

    .fix_cont li.footer-logo {
        text-align: center;
        padding: 5px;
        width: 100%;
    }

    .fix_cont li {
        height: 40px;
        width: calc((100% - 40px)/3);
        float: left;
        box-sizing: border-box;
    }

    .fix_cont li:nth-child(2) {
        background-image: url(images/tel_icon.png);
        background-repeat: no-repeat;
        background-position: center;
    }

    .fix_cont li:nth-child(3) {
        background-image: url(images/mail_icon.png);
        background-repeat: no-repeat;
        background-position: center;
    }

    .fix_cont li:nth-child(4) {
        background-image: url(images/line_icon.png);
        background-repeat: no-repeat;
        background-position: center;
    }

    .fix_cont li:nth-child(5) {
        background-color: #5c75a2;
        width: 40px;
    }

    .contact__box-in-head2-deco {
        width: 12%;
    }

    .contact__box-in-head2-text {
        width: 70%;
    }

    .contact__box-in-head {
        margin-bottom: 0;
        font-size: 1.5rem;
        padding: 3px;
    }

    .recommend__case-cont-box {
        width: 100%;
        margin: 0;
    }

    .treatment__pointList-num {
        padding-right: 10px;
        display: inline-block;
        vertical-align: middle;
        width: 40px;
    }

    .treatment__pointList-text-head-in {
        display: inline-block;
        width: calc(100% - 58px);
        vertical-align: middle;
    }

    .contact__box-in-price-text-list li {
        /* float: left; */
        padding: 0 10px 10px 0px;
        font-size: 1rem;
        display: inline-block;
    }

    .contact__box-in-price-text-list {
        overflow: hidden;
        text-align: center;
    }

    .faq__cont li {
        padding: 10px;
        font-size: 1rem;
        font-weight: normal;
        margin-bottom: 10px;
    }

    .pc {
        display: none;
    }

    html {
        font-size: calc(80% + 0.5vw);
    }

    /* common */
    .sp-2 {
        width: 50%;
    }

    .sp-1 {
        width: 100%;
    }

    /* headre */
    .header__in-cont {
        text-align: center;
    }

    /* footer */
    body {
        font-size: 80%;
        -webkit-text-size-adjust: 100%;
    }

    .clinic__slider-wrap {
        overflow: hidden;
        position: relative;
        animation: 20px 0;
        margin: 20px 0;
        padding-bottom: 30px;
    }

    .res.contact__box-in-tel {
        width: 100%;
    }

    .res.contact__box-in-mail {
        width: 100%;
    }

    .recommend__case-bottom {
        /* max-width: 270px; */
        padding-bottom: 30px;
        width: 95%;
    }

    .recommend__case-cont {
        padding: 5px 10px;
    }

    .cont_subhead:after {
        content: '';
        height: 15px;
        width: 100%;
        position: absolute;
        background-color: #f6f1f3;
        left: 0;
        bottom: 7px;
        z-index: -1;
    }

    .cont-head:after {
        content: '';
        height: 20px;
        width: 100%;
        position: absolute;
        background-color: #edf3f5;
        left: 0;
        bottom: -3px;
        z-index: -1;
    }

    .features__arrow {
        width: 50%;
        max-width: 160px;
        top: -30px;
    }

    .cont-head {
        z-index: 9;
    }

    .sp.balloon {
        display: block;
        margin: 0 auto;
    }

    .features__pointList-cont-point {
        display: none;
        text-align: center;
        padding-bottom: 0px;
    }

    .features__pointList-cont-point .point_style {
        font-family: 'Book Antiqua',serif;
        display: inline-block;
        width: 120px;
        height: 33px;
        padding-top: 1px;
        box-sizing: border-box;
        border: 2px solid #a87787;
        border-radius: 6px;
        font-size: 17px;
        color: #a87787;
        background-color: #fff;
        font-weight: 600;
        letter-spacing: 1px;
    }

    .features__pointList-cont-text {
        display: block;
        text-align: center;
    }

    .features__pointList-cont {
        padding-bottom: 9px;
    }

    .cont-head.bg-beige:after {
        content: '';
        background-color: transparent;
        height: 0;
    }

    .contact__box-in-mail-btn-in {
        background-position: 5%;
        background-size: 8%;
    }

    .features__pointList-cont-text {
        font-size: 24px;
    }

    .features__pointList-cont-text .text_2 {
        font-size: 1.3rem;
        font-weight: bold;
        vertical-align: middle;
        color: #a37989;
        margin: 0;
        position: relative;
    }

    .features__pointList-lastText {
        /* font-size: 0.8rem; */
        padding-top: 0px;
    }

    .cont-head.bg-beige {
        font-size: 1.5rem;
    }

    .treatment__cont-text {
        font-size: 1rem;
        font-family: 'Noto Sans Japanese', sans-serif;
        width: 85%;
        margin: 0 auto;
        float: none;
        padding: 20px 0;
        line-height: 1.6;
    }

    .treatment__pointList-text-head {
        font-size: 1.3rem;
        overflow: visible;
        vertical-align: middle;
        position: relative;
    }

    .contact__box-in-price-text-head {
        font-size: 1.2rem;
    }

    .contact__box-in-price-text {
        font-size: 1rem;
        padding: 3px 0 0;
        text-align: center;
    }

    .contact__box-in-price-num-head {
        font-size: 1.0rem;
        background-size: 100% 100%;
        margin-bottom: -1px;
        padding: 5px;
        letter-spacing: 1px;
        max-width: 380px;
        margin: 0 auto;
    }

    .contact__box-in-price-num {
        font-size: 12vw;
        text-align: center;
        background-size: 100% 100%;
        letter-spacing: 3px;
        padding: 9px 15px 0px;
    }

    .contact__box-in-price-num-unit {
        font-size: 1.8rem;
    }

    .contact__box-in-price-num-tax {
        font-size: 1.5rem;
    }

    .contact__box-in-head2-text {
        font-size: 1.3rem;
        width: 75%;
    }

    .contact__box-in-tel-head {
        font-size: 1rem;
    }

    .contact__box-in-tel-num {
        font-size: 10vw;
    }

    .contact__box-in-mail-btn-in {
        font-size: 1.2rem;
    }

    .contact__box-in-mail-head {
        font-size: 1rem;
    }

    .res.contact__box-in-tel {
        padding: 0px 0px 7px;
    }

    .contact__box-in-tel-num-wrap {
        font-size: 2.7rem;
        text-align: center;
    }

    .cont_w .sun {
        width: 288px;
        margin: 0 auto;
    }

    .cont-head {
        font-size: 1.7rem;
        background-color: #fff;
        padding-top: 0px;
    }

    .doctor__message {
        font-size: 1rem;
        font-weight: normal;
        font-family: 'Noto Sans Japanese', sans-serif;
        line-height: 1.8;
        width: 95%;
        margin: 0 auto 15px;
        text-align: left;
    }

    .doctor__book {
        padding-top: 24px;
    }

    .doctor__profile-text-name {
        font-size: 1.6rem;
        text-align: center;
        color: #727171;
        padding: 12px 5px 12px;
    }

    .cont_subhead.doctor__book-head {
        font-size: 1.6rem;
        position: relative;
    }

    .clearfix.doctor__book-in {
        padding: 16px 10px 10px;
        background: linear-gradient(#fff 35%,#f7f1ed 0%,#f7f1ed);
    }

    .cont-subhead2 {
        font-size: 1.1rem;
        padding-bottom: 12px;
        width: 95%;
        margin: 0 auto;
    }

    .efforts__cont-text {
        font-size: 1rem;
        font-weight: normal;
        font-family: 'Noto Sans Japanese', sans-serif;
        width: 95%;
        margin: 0 auto;
        float: none;
        line-height: 1.6;
        padding-bottom: 20px;
    }

    .clinic__text {
        font-size: 1rem;
        font-weight: normal;
        text-align: left;
        font-family: 'Noto Sans Japanese', sans-serif;
        width: 95%;
        margin: 0 auto;
        line-height: 1.9;
    }

    .privateRoom__text {
        padding: 10px;
    }

    .cont-text {
        font-size: 1rem;
        text-align: left;
        padding-bottom: 20px;
        width: 95%;
        margin: 0 auto;
    }

    .faq__cont-head-q-in {
        padding: 10px 13px;
        font-size: 1.6em;
        line-height: 1;
    }

    .faq__cont-head-q {
        /* float: left; */
        margin-right: 5px;
        color: #fff;
        background-color: #8dd0e2;
        vertical-align: middle;
    }

    .faq__cont-head {
        font-size: 1rem;
        font-weight: normal;
        overflow: hidden;
    }

    .recommend__case-cont-box-text-emphasis {
        font-size: 1.2rem;
        padding-top: 6px;
        padding-bottom: 2px;
    }

    .recommend__case-cont-box-text {
        font-size: 0.9rem;
    }

    .recommend__case-cont-box-caseText {
        font-size: 0.9rem;
        padding-top: 5px;
    }

    .recommend__case-cont-box-caseText-number {
        font-size: 1.5rem;
    }

    .recommend__text {
        font-size: 1.1rem;
        width: 75%;
        margin: 0 auto;
        box-sizing: border-box;
        padding: 15px;
    }

    .features__cont-box-in-head {
        font-size: 1.5rem;
    }

    .treatment__pointList-text-main {
        padding-bottom: 10px;
        font-size: 1rem;
        padding-top: 13px;
    }

    .doctor__profile-text-main {
        font-size: 1rem;
        width: 95%;
        margin: 0 auto;
        padding-bottom: 10px;
        line-height: 1.8;
    }

    .cont-head-in {
        padding: 13px 2.5%;
    }

    .faq__cont {
        padding: 10px 2.5% 0;
        font-family: 'Noto Sans Japanese', sans-serif;
    }

    .doctor__book-in-img {
        text-align: center;
    }

    #main > section {
        /* padding: 0px 0px 20px; */
    }

    .contact .sun {
        width: 288px;
        margin: 0 auto;
    }

    .treatment__pointList > li {
        padding: 10px;
    }

    .treatment__pointList-img {
        text-align: center;
    }

    .reservation__cont-map {
        height: 210px;
    }

    .features__pointList-lastText {
        width: 95%;
        margin: 0 auto;
        text-align: center;
    }

    .yoyaku {
        margin-top: 20px;
        text-align: center;
    }

    .yoyaku img {
        width: 232px;
    }

    .yoyaku .sinryo {
        margin-left: 0px;
        margin-top: 10px;
    }

    .treatment__arrow {
        width: 50%;
        max-width: 145px;
        top: -66px;
    }

    .features__cont-box {
        padding: 15px 2.5%;
    }

    .treatment__movie {
        width: 95%;
        height: 168px;
    }

    .privateRoom__img {
        text-align: center;
        width: 95%;
        margin: 0 auto;
    }

    .features__cont-box-cont img {
        /* display: block; */
        /* margin: 0 auto; */
    }

    .bg_deco {
        bottom: -10px;
    }

    .cont-head-deco {
        bottom: -10px;
    }

    .mainVisual {
        width: 95%;
        width: 100%;
        margin: 0 auto;
        text-align: center;
    }
    .mainVisual .top-btn {
        position: absolute;
        width: 85%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        bottom: 25px;
    }

    .recommend__case {
        max-width: 330px;
    }

    .recommend__case {
        /* max-width: 270px; */
        width: 95%;
    }

    .clinic .cont-head {
        padding-top: 20px;
    }

    .doctor__book-in-text {
        max-width: 481px;
        margin: 0 auto;
        font-size: 1rem;
        line-height: 2;
        padding-top: 10px;
    }

    .bx-prev {
        text-indent: -9999999px;
        height: 100%;
        position: absolute;
        left: 0px;
        top: 0;
        width: 10%;
    }

    .bx-next {
        text-indent: -9999999px;
        height: 100%;
        position: absolute;
        right: 0px;
        top: 0;
        width: 10%;
    }

    .faq__cont-head-text {
        display: inline-block;
        width: calc(100% - 64px);
        vertical-align: middle;
        line-height: 1.4;
    }

    .noProblem {
        font-size: 1.2rem;
    }

    .recommend__case-bottom {
        /* max-width: 525px; */
    }

    .mainVisual__spBook {
        background-color: #bdaa93;
        margin: 38px 0;
        position: relative;
        color: #fff;
        padding: 16px;
        border-radius: 5px;
    }

    .main_visual-book {
        position: absolute;
        left: 14px;
        top: -25px;
    }

    .mainVisual__spBook-text {
        margin-left: 90px;
        font-weight: bold;
    }

    .mainVisual__spBook-name {
        font-size: 1rem;
    }

    .mainVisual__spBook-title {
        font-size: 1.72rem;
        letter-spacing: 1px;
    }

    .header__in {
        padding: 10px;
    }

    .features__cont-box-in-text {
        font-size: 1rem;
        text-align: left;
    }

    .features__cont-box-cont {
        padding-top: 25px;
        text-align: center;
    }

    .features__cont-box-in-point {
        position: absolute;
        top: -15px;
        right : 0;
        left: -15px;
        margin: auto;
        text-align: center;
    }

    .doctor {
        padding: 20px 0;
    }

    p.clinic__slider-text {
        width: 85%;
        text-align: left;
        font-size: 1rem;
    }

    .privateRoom .cont-subhead2 {
        padding-bottom: 0;
    }

    h4.mincho.cont-textHead {
        text-align: center;
        font-size: 1.3em;
    }

    section.reservation {
        padding-top: 18px;
    }

    .reservation__cont-info dt {
        font-weight: bold;
    }

    .reservation__cont-info dd {
        padding-bottom: 25px;
    }

    .top_back_btn {
        background-image: url(images/top_back-sp.png);
        background-repeat: no-repeat;
        background-position: center;
    }

    .features__attention {
        width: 95%;
        margin: 0 auto;
    }

    .doctor__profile-text-name-en {
        display: block;
        padding: 0;
        font-size: 1rem;
    }

    div.featuresBlock {
        display: block;
        padding: 10px;
    }

    .featuresBlock__h1 {
        font-size: 18px;
    }

    .featuresBlock__h1:before {
        font-size: 19px;
    }

    h2.featuresBlock__h2 {
        font-size: 16px;
    }

    .whyAohal__baloon {
        font-size: 16px;
        margin: 10px auto;
        padding: 10px;
    }

    .whyAohal__txt {
        font-size: 18px;
    }

    .features__pointList-lastText span {
        font-size: 18px;
    }

    .is_how .aohalFeaturesOuter {
        display: block;
    }

    .is_how .treatment__pointList-num {
        width: 100%;
        padding: 0;
        font-size: 16px;
    }

    .is_how .treatment__pointList-num .learge {
        font-size: 30px;
    }

    .is_how .treatment__pointList-imgtxt {
        width: 100%;
        display: block;
    }

    .is_how .treatment__pointList-img {
        width: 100%;
        box-sizing: border-box;
    }

    .is_how .treatment__pointList-text-main-text {
        font-size: 16px;
        margin-top: 11px;
    }

    p.treatment__pointList-text-sub-text {
        font-size: 12px;
    }

    section.genri {
        padding: 15px;
    }

    section.flow {
        margin: 20px 0;
    }

    h1.bar_h2 {
        letter-spacing: 0;
    }

    section.price {
        margin: 20px 0;
        padding: 0;
    }

    table.priceTable td, table.priceTable th {
        display: block;
        width: 100%;
        box-sizing: border-box;
    }

    table.priceTable tr th:last-child, table.priceTable tr td:last-child {
        width: 100%;
    }

    table.priceTable tr th:first-child, table.priceTable tr td:first-child {
        width: 100%;
        background: #6bbdd3;
    }

    .priceTable__price {
        margin-top: 0px;
        color: #FFF;
    }

    p.priceTable__name {
        color: #FFF;
        font-size: 16px;
    }
    .priceTable__price span.del {
        color: #FFF;
    }
    section.doctor {
        padding: 20px 0!important;
    }

    .privateRoom .cont-head {
        font-size: 20px;
    }
    .cont_w.aohalFeatures {
        padding: 50px 5px;
    }
    .aohalFeaturesOuter {
        padding: 10px;
    }

    span.treatment__pointList-text-head-in.is_h2 {
        width: 100%;
        text-align: center;
    }

    .whyAohal {
        margin: 90px 0 20px;
    }
    .treatment__pointList-num:before {
        left: calc(100% - 1.5em);
        font-size: 12px;
        top: -33px;
    }
    .is_flow .treatment__pointList-num:before {
        display: none;
    }
    .is_flow .sp.treatment__pointList-num:before{
        display: flex;
        top: -1.5em;
        left: -4em;
        font-size: 10px;
        width: 4em;
        height: 4em;
    }
    .aohalFeaturesOuter {
        overflow: visible;
    }

    .treatment__pointList > li {
        overflow: visible;
    }
}

.bg-beige {
    background-color: #6bbdd3;
    color: #fff;
    padding: 5px 0;
    position: relative;
}

/* アイコン */
.icon-arrow-right {
    height: auto;
}
.icon-gray polyline {
    stroke: #727171 !important;
}
.icon-size18 {
    width: 18px;
}
.icon-size24 {
    width: 24px;
}