/* ======== ベース ======== */

.is-m {
    display: none;
}

.sp-none,
.m-none {
    display: inline-block;
}

.m-only {
    display: none;
}

.sp-only {
    display: none;
}

.mv-width {
    max-width: 95%;
    margin-left: auto;
    margin-right: auto;
}

.page-mv {
    position: relative;
}

.page__main-title {
    position: absolute;
    left: 100px;
    top: 50%;
    color: #fff;
    transform: translateY(-30%);
}

.page__main-title_big {
    display: block;
    font-size: 3.5rem;
    font-weight: 200;
    font-family: 'Manrope';
}

.page__main-title_small {
    display: block;
    font-size: 1rem;
}

.bread-clumb {
    font-size: 12px;
    display: flex;
    list-style: none;
    padding: 0 10px;
}

.bread-clumb li {
    margin-right: 8px;
    color: #778385;
}

.bread-clumb li::after {
    font-family: FontAwesome;
    content: "\f105";
    display: inline-block;
    margin-left: 8px;
    color: #778385;
}

.bread-clumb li:last-of-type:after {
    display: none;
}

.bread-clumb li a {
    color: #182e32;
}

.bread-clumb li {
    color: #778385;
}

.base__ly-2column {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.base__ly-2column.row-reverse {
    flex-direction: row-reverse;
}

.base__ly-2column-item {
    width: 48.5%;
}

.base__ly-2column-item.vertical-center {
    justify-content: center;
    flex-direction: column;
    display: flex;
}

.base__ly-2column-item_50p {
    width: 50%;
}

.base__ly-3column {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.base__ly-3column-item {
    width: 31.5%;
}

.base__detail-treatment-bl {
    border: 2px solid #3da3dc;
    padding: 60px 50px 50px;
    position: relative;
}

.detail-treatment-title {
    position: absolute;
    width: fit-content;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 10px;
    color: #3da3dc;
    background-color: #fff;
    font-size: 1.3rem;
}

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

.base__flex-item {
    width: 48.5%;
}

.base__flex-item-3column {
    width: 31%;
}

.underline-title {
    border-bottom: 1px solid #ddd;
    padding-bottom: 10px;
    margin-bottom: 20px;
    font-size: 1.3rem;
}

.black-circle-list {
    list-style: none;
}

.black-circle-list li {
    font-size: 0.95rem;
}

.black-circle-list li::before {
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-right: 3px;
    background-color: #182e32;
    border-radius: 50%;
    content: "";
}

.bg-cyan-title {
    background-color: #eef3fa;
    text-align: center;
    padding: 10px;
    font-size: 1.4rem;
}

.base__title-center {
    text-align: center;
    font-size: 1.15rem;
    margin-bottom: 10px;
}

.position-relative {
    position: relative;
}

.page .footer {
    margin-top: 0;
    padding-top: 100px;
}

.page .footer__ly {
    margin-top: 0;
}

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

.base__img-small-flex.row-reverse {
    flex-direction: row-reverse;
}

.base__img-small-flex-item.img {
    width: 47%;
}

.base__img-small-flex-item.cont {
    width: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.base__title18rem {
    font-size: 1.8rem;
}

.btn-4column-bl {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.btn-4column-bl-item {
    width: 23%;
}

.btn-4column-bl-item a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 250px;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
}

.btn-4column-bl-item a:hover {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 4px 18px;
}

.icon-circle {
    width: 170px;
    height: 170px;
    border-radius: 50%;
    background-color: #f2f6fb;
    padding: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 5px;
}

.icon-circle img {
    width: auto;
    max-width: 70%;
    max-height: 60%;
}

.base__bg-title-bl {
    width: 100%;
    height: 400px;
    background-position: center center;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
}

.base__bg-title-bl.whitening-bg {
    background-image: url(../cmn_img/cosmetic/whitening-bg.jpg);
}

.base__bg-title-bl.hotetu-bg {
    background-image: url(../cmn_img/cosmetic/hotetu-bg.jpg);
}

.base__bg-title-bl.correct-bg {
    background-image: url(../cmn_img/cosmetic/correct-bg.jpg);
}

.base__bg-title-bl.cleaning-bg {
    background-image: url(../cmn_img/cosmetic/cleaning-bg.jpg);
}

.base__bg-title-bl.botox-bg {
    background-image: url(../cmn_img/oral/botox-bg.jpg);
}

.base__bg-title-bl.hyaluronic-bg {
    background-image: url(../cmn_img/oral/hyaluronic-bg.jpg);
}

.base__bg-title-bl.pediatric-bg01 {
    background-image: url(../cmn_img/pediatric/pediatric-bg01.jpg);
}

.base__bg-title-bl.pediatric-bg02 {
    background-image: url(../cmn_img/pediatric/pediatric-bg02.jpg);
}

.base__bg-title-bl.orthodontics-bg01 {
    background-image: url(../cmn_img/orthodontics/orthodontics-bg01.jpg);
}

.base__bg-title-bl.orthodontics-bg02 {
    background-image: url(../cmn_img/orthodontics/orthodontics-bg02.jpg);
}

.base__bg-title-bl.implant-bg {
    background-image: url(../cmn_img/implant/implant-bg.jpg);
}

.base__bg-title-bl-cont {
    width: 700px;
    max-width: 90%;
}

.base__bg-title-bl-title {
    font-size: 2rem;
    color: #fff;
    text-align: center;
    margin-bottom: 20px;
}

.base__bg-title-bl-title_small {
    font-size: 1.4rem;
    color: #fff;
    text-align: center;
    margin-bottom: 15px;
}

.base__title13rem {
    font-size: 1.3rem;
}

/*　アコーディオン　*/

.accordion {
    margin-left: auto;
    margin-right: auto;
    margin-top: 30px;
    position: relative;
    width: 100%;
}

.accordion-title {
    cursor: pointer;
    font-size: 1.1rem;
    padding: 15px 20px;
    display: flex;
    align-items: center;
    position: relative;
}

.ac-qa-circle {
    width: 50px;
    height: 50px;
    display: block;
    border-radius: 50%;
    background-color: #fff;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    position: absolute;
}

.ac-qa-circle span {
    display: block;
    width: 50px;
    height: 50px;
    position: relative;
    top: 0;
    left: 0;
}

.ac-qa-circle span::before {
    width: 50%;
    height: 1px;
    background-color: #3da3dc;
    position: absolute;
    top: 50%;
    left: 50%;
    content: "";
    display: block;
    transform: translate(-50%, -50%);
}

.ac-qa-circle span::after {
    width: 50%;
    height: 1px;
    background-color: #3da3dc;
    position: absolute;
    top: 25%;
    left: 25%;
    content: "";
    display: block;
    transform: rotate(-90deg) translate(-50%, -50%);
    transition-duration: 0.5s;
}

.accordion-content {
    display: none;
    padding: 25px 20px 25px 90px;
}

.accordion-content p {
    line-height: 1.5;
}

.ac-qa-num {
    font-size: 40px;
    color: #3da3dc;
    display: inline-block;
    margin-right: 20px;
    line-height: 1;
    font-weight: 200;
}

.accordion-item .accordion-title {
    background-color: #f2f6fb;
}

.accordion-item .accordion-content {
    border-bottom: 2px solid #f2f6fb;
    border-left: 2px solid #f2f6fb;
    border-right: 2px solid #f2f6fb;
}

.accordion-title {
    position: relative;
}

.accordion-title.open .ac-qa-circle span::after {
    transition-duration: 0.5s;
    top: 50%;
    left: 50%;
    transform: rotate(0) translate(-50%, -50%);
}

.accordion-item {
    margin-bottom: 30px;
}

.base__title15rem {
    font-size: 1.5rem;
}

.pa50 {
    padding: 50px !important;
}

.bg__white {
    background-color: #fff;
}

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

.flex-item.w28p {
    width: 28%;
}

.flex-item.w68p {
    width: 68%;
}

.txt140p {
    font-size: 140%;
}

/* ======== Approach ======== */

.approach__about,
.cosmetic__about {
    margin-top: 100px;
}

.approach__about-title {
    text-align: center;
    font-size: 1.8rem;
}

.approach__about-title_blue {
    text-align: center;
    font-size: 1.5rem;
    color: #3da3dc;
}

.approach__about-txt {
    text-align: center;
}

.approach__about-condition {
    position: relative;
    margin: 100px 0;
}

.approach__about-condition-img {
    position: relative;
    width: 600px;
    left: 100px;
    height: 400px;
    z-index: 1;
}

.approach__about-condition-cont {
    position: absolute;
    display: flex;
    z-index: 2;
    justify-content: space-between;
    width: 500px;
}

.approach__about-condition-cont.p1 {
    left: 550px;
    top: -30px;
}

.approach__about-condition-cont.p2 {
    left: 650px;
    top: 90px;
}

.approach__about-condition-cont.p3 {
    left: 650px;
    top: 220px;
}

.approach__about-condition-cont.p4 {
    left: 550px;
    top: 335px;
}

.approach__about-condition-num {
    width: 98px;
    height: 98px;
    border-radius: 50%;
    background-color: #3da3dc;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: 2.2rem;
}

.approach__about-condition-scroll-bl {
    overflow-x: hidden;
    overflow-y: hidden;
}

.approach__about-condition-cont-txt {
    width: calc(100% - 120px);
}

.approach__about-condition-cont-txt h4 {
    font-size: 1.2rem;
    color: #3da3dc;
}

.approach__about-condition-cont-txt p {
    font-size: 0.9rem;
}

.bg__blue {
    background-color: #e9eff8;
}

.approach__white-bg,
.page__white-bg {
    background-color: #fff;
    padding: 60px 50px;
}

.approach__detail-title-bl {
    border-bottom: 1px solid #ddd;
    padding-bottom: 40px;
}

.approach__detail-title-num-box {
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #3da3dc;
    margin-bottom: 10px;
}

.approach__detail-title-num-box .txt {
    font-size: 0.7rem;
    display: block;
    width: fit-content;
    line-height: 1.3;
}

.approach__detail-title-num-box .num {
    font-size: 2.5rem;
    display: block;
    width: fit-content;
    line-height: 1;
}

.approach__detail-title-txt {
    display: block;
    text-align: center;
    font-size: 1.2rem;
}

.approach__detail-title-txt_blue {
    display: block;
    text-align: center;
    font-size: 1.7rem;
    color: #3da3dc;
    line-height: 1.3;
}

.approach__detail-txt-title {
    font-size: 1.3rem;
    text-align: center;
    display: block;
    margin-bottom: 10px;
}

.approach__detail-txt {
    text-align: center;
}

.approach-txt-bl {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.approach-title_small_blue_line {
    padding-left: 25px;
    color: #3da3dc;
    font-size: 1.1rem;
    position: relative;
    margin-bottom: 10px;
}

.approach-title_small_blue_line::before {
    position: absolute;
    display: block;
    content: "";
    width: 19px;
    height: 1px;
    background-color: #3da3dc;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.approach__txt_small {
    font-size: 0.95rem;
}

.approach-absolute-title_circle {
    position: absolute;
    top: -20px;
    left: -20px;
    width: 85px;
    height: 85px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    background-color: #3da3dc;
    border-radius: 50%;
    z-index: 2;
    line-height: 1.4;
    text-align: center;
}

.approach-txt-bl.pa30 {
    padding: 30px;
}

.approach__bg-blue-title {
    background-color: #3da3dc;
    color: #fff;
    font-size: 1.4rem;
    padding: 10px;
    width: fit-content;
    line-height: 1;
}

.txt-mediam {
    font-size: 18px;
}

.approach__img-bg-cyan {
    padding: 50px 150px;
    background-color: #eef3fa;
}

.approach__about {
    margin-bottom: 0;
}

/* ======== cosmetic ======== */

.cosmetic__about-condition {
    position: relative;
    margin: 100px 0;
}

.cosmetic__about-condition-img {
    position: relative;
    width: 400px;
    left: 100px;
    height: 400px;
    z-index: 1;
}

.cosmetic__about-condition-cont {
    position: absolute;
    display: flex;
    z-index: 2;
    justify-content: space-between;
    width: 650px;
}

.cosmetic__about-condition-cont.p1 {
    left: 350px;
    top: -30px;
}

.cosmetic__about-condition-cont.p2 {
    left: 450px;
    top: 90px;
}

.cosmetic__about-condition-cont.p3 {
    left: 450px;
    top: 220px;
}

.cosmetic__about-condition-cont.p4 {
    left: 350px;
    top: 335px;
}

.cosmetic__about-condition-num {
    width: 98px;
    height: 98px;
    border-radius: 50%;
    background-color: #3da3dc;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: 1.4rem;
}

.cosmetic__about-condition-scroll-bl {
    overflow-x: hidden;
    overflow-y: hidden;
}

.cosmetic__about-condition-cont-txt {
    width: calc(100% - 120px);
}

.cosmetic__about-condition-cont-txt h4 {
    font-size: 1.2rem;
    color: #3da3dc;
}

.cosmetic__about-condition-cont-txt p {
    font-size: 0.9rem;
}

.cosmetic__base-title,
.base-title {
    font-size: 1.8rem;
    text-align: center;
    margin-bottom: 30px;
    width: 800px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.cosmetic__txt800w,
.txt800w {
    width: 800px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.whitening-img {
    width: 1000px;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
}

.cosmetic-title_blue_small {
    text-align: center;
    color: #3da3dc;
    font-size: 1.2rem;
    margin-bottom: 10px;
    margin-top: 15px;
}

.hotetu-bg-blue-title {
    background-color: #3da3dc;
    color: #fff;
    padding: 7px 30px;
    border-radius: 50px;
    width: fit-content;
    margin: 0 auto 15px;
    font-size: 1.4rem;
}

.hotetu-small-title-blue {
    color: #3da3dc;
    text-align: center;
    font-size: 1.4rem;
    margin-bottom: 15px;
}

.crrect-3point-ly {
    display: flex;
    justify-content: center;
    width: 100%;
    flex-wrap: wrap;
}

.crrect-3point-item {
    width: 150px;
    height: 150px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    color: #3da3dc;
    background-color: #f2f6fb;
    font-size: 1.2rem;
    margin-right: 20px;
}

.crrect-3point-item:last-of-type {
    margin-right: 0;
}

.correct-to-detail-button a {
    display: flex;
    width: 100%;
    height: 70px;
    justify-content: center;
    align-items: center;
    border: 1px solid #000;
    position: relative;
}

.correct-to-detail-button a::after {
    background-image: url(../cmn_img/top/base-arrow.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    width: 40px;
    height: 8px;
    content: "";
    display: block;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translate(0, -50%);
    transition-duration: 0.3s;
}

.correct-to-detail-button a:hover::after {
    transform: translate(3px, -50%);
    transition-duration: 0.3s;
}

.small075rem {
    font-size: 0.75rem;
}

/* ======== oral ======== */

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

.oral__btn-flex-item {
    width: 45%;
    height: 115px;
}

.pink-bg-link {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    background-color: #ffd2ec;
    transition-duration: 0.5s;
}

.cyan-bg-link {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    background-color: #daebfb;
    transition-duration: 0.5s;
}

.circle-anim {
    display: block;
    position: relative;
    width: fit-content;
    padding-right: 85px;
    z-index: 3;
}

.circle-anim::before {
    z-index: -2;
    display: block;
    width: 90px;
    height: 90px;
    border-radius: 50%;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    content: "";
    transition-duration: 0.5s;
    background-color: #fff;
}

.pink-bg-link:hover,
.cyan-bg-link:hover {
    transition-duration: 0.5s;
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}

.pink-bg-link:hover .circle-anim::before,
.cyan-bg-link:hover .circle-anim::before {
    width: 1000px;
    height: 1000px;
    transition-duration: 0.5s;
    right: -280px;
}

.pink-bg-link:hover .circle-anim::before {
    background-color: #ffd2ec;
}

.cyan-bg-link:hover .circle-anim::before {
    background-color: #daebfb;
}

.circle-anim::after {
    z-index: -1;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    content: "";
    width: 30px;
    height: 6px;
    background-image: url(../cmn_img/top/base-arrow.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
}

.oral__middle-title {
    font-size: 1.4rem;
    text-align: center;
}

.oral-about-img {
    margin-bottom: 40px;
}

.kadomaru-card {
    border-radius: 50px;
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
    position: relative;
    padding: 80px 50px 60px;
}

.oral__small-title,
.base__small-title {
    width: fit-content;
    white-space: nowrap;
    padding: 8px 20px;
    border-radius: 50px;
    color: #fff;
    font-size: 1.2rem;
}

.oral__small-title.center,
.base__small-title.center {
    margin-left: auto;
    margin-right: auto;
}

.bg-vivid-pink {
    background-color: #e76da9;
}

.bg-vivid-cyan {
    background-color: #41afe8;
}

.oral__small-title.absolute,
.base__small-title.absolute {
    left: 50%;
    top: 0;
    position: absolute;
    transform: translate(-50%, -50%);
}

.oral__botox-detail {
    display: flex;
    padding: 50px 60px;
}

.oral__botox-detail-cont {
    width: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.oral__botox-detail-img {
    width: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.oral__botox-detail-img img {
    width: 300px;
    max-width: 80%;
    display: block;
}

.botox-small-title {
    font-size: 1.3rem;
    text-align: center;
}

.botox-txt {
    text-align: left;
    margin-left: auto;
    margin-right: auto;
    width: 550px;
    max-width: 100%;
}

.botox-img {
    width: 700px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.oral__botox-detail-title {
    font-size: 1.5rem;
}

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

.equipment__main-title {
    width: 400px;
    font-size: 1.7rem;
    transform: translateY(-8px);
}

.equipment__main-cont {
    width: calc(100% - 450px);
}

.equipment__cont .base__title18rem.center,
.menu-page .base__title18rem.center {
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}

.equipment__cont .oral__small-title {
    font-size: 1.5rem;
}

.equipment__cont .oral__small-title {
    padding: 8px 40px;
}

.flow-title-txt-blue {
    position: absolute;
    display: inline-block;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 4px 20px;
    border-radius: 50px;
    border: 1px solid #3da3dc;
    color: #3da3dc;
    background-color: #fff;
    z-index: +1;
    font-size: 1.2rem;
    white-space: nowrap;
}

.flow-num-title {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 3.5rem;
    color: #3da3dc;
}

.kadomaru-blue {
    border-radius: 25px;
    background-color: #dae9f9;
}

.flex-item.equipment-health-left {
    width: 35%;
}

.flex-item.equipment-health-right {
    width: 60%;
}

.flow-title-eq-health {
    position: absolute;
    display: inline-block;
    left: 50%;
    bottom: 0;
    transform: translate(-50%, 50%);
    padding: 2px 15px;
    border-radius: 50px;
    border: 1px solid #3da3dc;
    color: #3da3dc;
    background-color: #fff;
    z-index: +1;
    font-size: 1.1rem;
    white-space: nowrap;
}

.eq__facility .base__ly-3column-item {
    margin-bottom: 40px;
}

.eq__facility .base__ly-3column-item:nth-of-type(4),
.eq__facility .base__ly-3column-item:nth-of-type(5),
.eq__facility .base__ly-3column-item:nth-of-type(6) {
    margin-bottom: 0;
}

.equipment__main-title {
    width: 370px;
    margin-bottom: 10px;
    font-size: 1.5rem;
    transform: translateY(0);
}

.equipment__main-cont {
    width: calc(100% - 370px);
}

.menu-page .menu__list {
    width: 31%;
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
    border-radius: 10px;
    margin-bottom: 30px;
    height: 370px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.menu-page .menu__list.menu__list__last,
.menu-page .menu__list.menu__list__last:hover {
    width: 100%;
    background-color: #fffbfd;
    height: 220px;
}

.menu-page .menu__list.menu__list__last .menu__content-bg,
.menu-page .menu__list.menu__list__last:hover .menu__content-bg {
    height: 180px;
    padding: 0;
    width: 960px;
}

.menu-page .menu__content-bg {
    height: 310px;
    padding: 0;
    width: 300px;
}

.menu-page a:hover .menu__content-bg {
    height: 310px;
    padding: 0;
    width: 300px;
}

.menu-page .menu__list-box {
    width: 100%;
    max-width: 100%;
}

.menu-page .menu__box {
    width: 100%;
}

.menu__cont-title {
    display: block;
    text-align: center;
    color: #3da3dc;
    font-size: 1.1rem;
    margin-top: 20px;
    margin-bottom: 10px;
}

.menu__list:hover .menu__img {
    width: 90px;
    height: 90px;
}

.menu-page .menu__list:hover .menu__img {
    width: 100px;
    height: 100px;
}

.menu-page .menu__list:hover {
    width: 30%;
    height: 360px;
    margin-right: 0.5%;
    margin-left: 0.5%;
    margin-top: 5px;
    margin-bottom: 20px;
}

.menu-page a:hover .menu__list-title_small {
    font-size: 0.85rem;
}

.menu-page a:hover .menu__cont-title {
    font-size: 1.1rem;
}

.menu-page a:hover .menu__list-title {
    font-size: 18px;
    transition-duration: 0.3s;
}

.menu-page .menu__list.menu__list__last .menu__img {
    width: 200px;
    height: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition-duration: 0.3s;
    margin-right: 30px;
}

.menu-page .menu__list.menu__list__last:hover .menu__img {
    width: 200px;
}

.menu-page .menu__list__last .menu__content-bg {
    background-color: #fffbfd;
    display: flex;
    flex-direction: row;
    height: 180px;
    width: 960px;
    justify-content: center;
}

.menu-page .menu__txt-box {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    width: calc(100% - 230px);
}

.menu-page .menu__list.menu__list__last .menu__list-title {
    font-size: 20px;
    font-weight: bold;
    text-align: left;
    display: inline-block;
    transition-duration: 0.3s;
    margin-right: 20px;
}

.menu-page .menu__list.menu__list__last .menu__list-title_small {
    font-size: 0.85rem;
    color: #e76da9;
    text-align: center;
    display: inline-block;
    transform: translateY(5px);
}

.menu-page .menu__list.menu__list__last .menu__cont-title {
    display: block;
    text-align: left;
    color: #e76da9;
    font-size: 1.1rem;
    margin-top: 5px;
    margin-bottom: 5px;
    width: 100%;
    font-weight: bold;
}

.menu-page .menu-page .menu__content-bg {
    height: 310px;
    padding: 0;
    width: 1000px;
}

.menu-bnr-space {
    width: 850px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 80px;
}

/* ============= policy-flow 231114masutani ============ */

.flow {
    padding: 90px 0 110px;
    background: #e9eff8;
}

.flow .policy__feature-title {
    color: #182e32;
    font-weight: bold;
}

.flow .center {
    text-align: center;
}

.flow .base__title18rem.center,
.flow p {
    font-weight: 500;
}

.timeline.flow_line {
    margin: auto;
    max-width: none;
}

.flow_line_box {
    display: flex;
    align-items: center;
    padding-bottom: 50px !important;
}

.flow .timeline li::after {
    display: none;
}

.flow .border-line {
    width: 2px;
    background: #3fa9e2;
    top: 0;
    left: 35px;
    z-index: -1;
}

.flow_line_box_right {
    flex: 1;
}

.flow_line_box_num {
    color: #fff;
    border-radius: 50%;
    background: #3fa9e2;
    align-self: flex-start;
    font-size: 30px;
    font-family: 'Manrope';
    width: 70px;
    aspect-ratio: 1/1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.flow_line_box_img {
    margin: 0 40px 0 35px;
    width: 350px;
}

.flow_line_box_ttl {
    font-size: 27px;
    line-height: 1em;
    margin-bottom: 1em;
}

.flow_line_box_ttl .sml {
    font-size: 20px;
}

.flow_line_box_txt_list {
    display: flex;
    margin-top: 20px;
    gap: 5px 10px;
    flex-wrap: wrap;
}

.flow_line_box_txt_list_txt {
    padding: 0.4em 15px 0.5em !important;
    border-radius: 15px;
    font-size: 15px;
    background: #fff;
    color: #3fa9e2;
    width: fit-content;
    line-height: 1em;
}

@media screen and (max-width: 960px) {
    .flow_line_box {
        align-items: self-start;
    }

    .flow_line_box_img {
        width: 35%;
    }

    .flow_line_box_num {
        width: 50px;
        font-size: 25px;
    }

    .flow .border-line {
        left: 25px;
    }

    .flow_line_box_ttl {
        font-size: 1.5rem
    }

    .flow_line_box_ttl .sml {
        font-size: 1.3rem;
    }



}


@media screen and (max-width: 700px) {
    .flow_line_box_txt_list {
        display: block;
    }

    .flow_line_box_txt_list_txt {
        margin-bottom: 10px;
    }

    .flow_line_box_txt_list_txt:last-child {
        margin-bottom: 0;
    }
}


@media screen and (max-width: 640px) {

    .flow_line_box {
        align-items: flex-start;
        display: grid;
        grid-template-columns: 50px auto;
        row-gap: 5%;
    }

    .flow_line_box_num {
        grid-row-start: 1;
        grid-row-end: 3;
    }

    .flow_line_box_img,
    .flow_line_box_right {
        margin: 0 auto;
        width: 80%;
    }
}


/* ============= policy ============ */

.timeline {
    max-width: calc(100% - 180px);
    width: 100%;
    margin: 0 0 50px 180px;
}

.timeline li {
    /*線の起点とするためrelativeを設定*/
    position: relative;
    list-style: none;
    padding: 0 0 20px 0;
}

.timeline dl {
    margin: 0 0 20px 3em;
}

.timeline dd strong {
    display: block;
    padding: 10px 0;
}

/*絶対配置で線を設定*/
.border-line {
    position: absolute;
    left: 9px;
    top: 50%;
    width: 1px;
    height: 0;
    background: #7aa1d3;
}

/*タイムラインの見出し横の丸の位置と形状*/
.timeline li::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 19px;
    height: 19px;
    background: #4eb4ea;
    border-radius: 50%;
    transform: translateY(-50%);
}

.time-line__flow-title {
    position: absolute;
    background-color: #3da3dc;
    color: #fff;
    width: 5em;
    font-size: 1.4rem;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 3rem;
    top: 50%;
    left: -150px;
    transform: translateY(-50%);
}

.time-line__flow-title-position-relative {
    width: 100%;
    height: 100%;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    transform: translateY(-2px);
}

.time-line__flow-title-position-relative::after {
    display: block;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7.5px 0 7.5px 20px;
    border-color: transparent transparent transparent #3da2dc;
    position: absolute;
    right: -20px;
    top: 50%;
    transform: translateY(-45%);
}

.time-line__flex {
    width: calc(100% - 60px);
    padding: 40px 0 40px 60px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    height: 320px;
}

.time-line__img {
    width: 230px;
}

.time-line__cont {
    width: calc(100% - 280px);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.time-line__tag-bl {
    display: flex;
    flex-wrap: wrap;
}

.time-line__tag {
    width: fit-content;
    border: 1px solid #3da2dc;
    color: #3da2dc;
    padding: 3px 15px;
    margin-right: 8px;
    margin-bottom: 8px;
    white-space: nowrap;
}

.time-line__tag:last-of-type {
    margin-right: 0;
}

.policy-page .approach {
    padding-top: 100px;
    padding-bottom: 0;
}

.policy-page .approach__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.policy__feature-title {
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    color: #fff;
}

.policy__feature-title_big {
    font-size: 80px;
    display: block;
    width: fit-content;
    font-weight: 200;
    line-height: 1;
    margin-bottom: 10px;
}

.policy__feature-title_small {
    font-size: 0.9rem;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    display: block;
}

.policy-page .feature {
    padding-top: 100px;
    padding-bottom: 100px;
}

.base__title18rem.center {
    text-align: center;
}

.policy-page .feature__box {
    padding: 80px 100px 100px;
}

.policy__life-stage {
    padding-top: 100px;
    padding-bottom: 10px;
    overflow: hidden;
}

.policy-page .policy__treatment {
    padding-top: 0px;
}

.policy-page .policy__treatment__txt {
    top: 0px;
}

.policy__online {
    padding-top: 100px;
    padding-bottom: 30px;
}

.policy-page .policy__bg {
    transform: translateY(-200px);
}

.align-center_sp-left {
    text-align: center;
}

.hukidashi-title {
    width: 370px;
    height: 70px;
    background-color: #3da2dc;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: 1.4rem;
    position: relative;
    margin-left: auto;
    margin-right: auto;
    border-radius: 10px;
}

.hukidashi-title::after {
    content: "";
    display: block;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 7.5px 0 7.5px;
    border-color: #3da2dc transparent transparent transparent;
}

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

.online-flex-item {
    width: 32.3%;
    padding: 25px;
    background-color: #fff;
    margin-bottom: 20px;
}

.online-flex-item-title {
    color: #3da2dc;
    padding-left: 1.8rem;
    position: relative;
    margin-bottom: 3px;
}

.online-flex-item-title::before {
    position: absolute;
    left: 0;
    top: 0;
    line-height: 1;
    font-family: FontAwesome;
    content: "\f058";
    color: #3da2dc;
    font-size: 1.5rem;
    display: block;
    transform: translateY(2px);
}

.txt95p {
    font-size: 95%;
}

.scroll_bottom_show.transition-delay200 {
    transition-delay: 200;
}

.scroll_bottom_show.transition-delay400 {
    transition-delay: 400;
}

.scroll_bottom_show.transition-delay600 {
    transition-delay: 600;
}

.scroll_bottom_show.transition-delay800 {
    transition-delay: 800;
}

.scroll_bottom_show.transition-delay1000 {
    transition-delay: 1000;
}

.scroll_bottom_show.transition-delay1200 {
    transition-delay: 1200;
}

.scroll_bottom_show.transition-delay1400 {
    transition-delay: 1400;
}

.scroll_bottom_show.transition-delay1600 {
    transition-delay: 1600;
}

/* ======== Access ======== */

.access__main-flex {
    display: flex;
    justify-content: space-between;
    height: 420px;
}

.access__main-flex-item.cont {
    width: 380px;
}

.access__main-flex-item.img {
    width: calc(100% - 440px);
    height: 100%;
}

.access__main-flex-item.img img {
    object-fit: cover;
    object-position: 50% 50%;
    width: 100%;
    height: 100%;
}

.access__menu-img-flex {
    display: flex;
    justify-content: space-between;
    position: absolute;
    transform: translateY(-50%);
    top: -250px;
}

.access__menu-img-flex-item {
    width: 32%;
    height: 274px;
}

.access__menu-img-flex-item img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: 50% 50%;
}

.blue-underline-title {
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    font-weight: bold;
    line-height: 1;
    font-size: 1.2rem;
}

.blue-underline-title::after {
    width: 2rem;
    height: 2px;
    border-radius: 50px;
    background-color: #3da2dc;
    position: absolute;
    top: 200%;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    content: "";
}

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

.access__menu-menu-flex-item {
    width: 13%;
}

.access__menu-img {
    margin-bottom: 20px;
}

.access__menu-menu-flex-item p {
    text-align: center;
}

.access {
    padding-top: 100px;
    padding-bottom: 200px;
}

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

.access__traffic-flex-item.img {
    width: 50px;
}

.access__traffic-flex p {
    width: calc(100% - 70px);
}

.access__menu {
    padding-top: 150px;
    padding-bottom: 200px;
    background-color: #f3f6fb;
}

.access-page .footer__address-about {
    padding: 8px 20px;
    text-align: center;
}

/* ============= doctor =========== */

.doctor__main {
    padding-top: 100px;
    padding-bottom: 80px;
}

.doctor__main-messe {
    position: absolute;
    top: 30%;
    left: 100px;
}

.doctor__main-messe-title {
    display: block;
    width: fit-content;
    background-color: #fff;
    font-size: 1.8rem;
    padding: 5px 15px;
    margin-bottom: 7px;
}

.doctor__main-cont {
    display: flex;
}

.doctor__main-name-bl {
    width: 280px;
}

.doctor__main-messe-bl {
    width: calc(100% - 310px);
}

.doctor__txt_small_en_blue {
    font-size: 14px;
    color: #3da2dc;
    display: inline-block;
    margin-left: 10px;
}

.doctor-page .doctor__profile {
    width: 100%;
    position: relative;
    height: auto;
}

.doctor__profile-bl {
    width: calc(50% + 650px);
    margin-right: 0;
    margin-left: auto;
    padding: 50px 50px 80px;
}

.doctor__profle-w1200 {
    width: 1200px;
    max-width: 100%;
    margin-left: 0;
    margin-right: auto;
}

.doctor__blue-title {
    font-size: 2.5rem;
    color: #3da2dc;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
}

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

.doctor__profile-flex-item {
    width: 48.5%;
}

.doctor__profile-blue-underline-title {
    border-bottom: 1px solid #3da2dc;
    font-size: 1.3rem;
    margin-bottom: 20px;
}

.doctor__profile-detail {
    display: flex;
    padding: 10px 0;
}

.doctor__profile-detail dt {
    width: 6rem;
    color: #3da2dc;
}

.doctor__profile-detail dd {
    width: calc(100% - 6rem);
}

.blue-circle-list {
    list-style: none;
}

.blue-circle-list li {
    padding-left: 1.3rem;
    position: relative;
}

.blue-circle-list li::before {
    width: 1rem;
    height: 1rem;
    background-color: #3da2dc;
    border-radius: 50%;
    top: 8px;
    left: 0;
    display: inline-block;
    content: "";
    position: absolute;
}

.question-bl {
    padding-top: 30px;
    padding-bottom: 30px;
}

.question-title {
    display: flex;
    justify-content: space-between;
    border-bottom: 2px solid #3da2dc;
    padding-bottom: 10px;
    margin-bottom: 40px;
}

.question-img {
    width: 60px;
}

.question-title-txt-bl {
    width: calc(100% - 70px);
}

.question-blue-small-title {
    font-size: 14px;
    color: #3da2dc;
    display: block;
}

.question-big-title {
    font-size: 1.3rem;
    display: block;
}

/* ============= pediatric =========== */

.pediatric__about {
    padding-top: 100px;
    padding-bottom: 100px;
}

.pediatric__to-parent {
    padding: 70px 80px 60px;
    position: relative;
}

.txt1000w {
    width: 1000px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.bg__light-blue {
    background-color: #eff9fe;
}

.pediatric__study-enamel {
    padding: 30px 50px;
}

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

.flex-enamel-item.img {
    width: 280px;
}

.flex-enamel-item.cont {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: calc(100% - 330px);
}

.enamel-title {
    font-size: 1.4rem;
    color: #3da2dc;
}

.fa-exclamation-triangle {
    display: inline-block;
    margin-right: 10px;
}

.pediatric__care {
    padding-top: 80px;
    padding-bottom: 80px;
}

.pediatric-care-flex {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
}

.pediatric-care-icon {
    width: 150px;
}

.pediatric-care-cont {
    width: calc(100% - 170px);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.base__title13rem.center {
    text-align: center;
}

/* ============= news =========== */

.news-page .news__list-item {
    padding: 80px 50px;
}

.news-page .news__list-item:first-of-type {
    border-top: none;
}

.news-bl {
    padding-top: 100px;
    padding-bottom: 100px;
}

.news-page .news__list {
    width: 100%;
}

.news-page .news__list-content {
    width: 100%;
}

.news-page .news__list-title {
    font-weight: 500;
    margin-bottom: 10px;
}

/* ============= price =========== */

.price__wrapper {
    padding: 100px 0 100px;
}

.price__cont-bl {
    padding: 50px;
}

.price__title {
    font-size: 1.8rem;
    text-align: center;
    font-weight: 500;
}

.price__2column-ly {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #b3c1d7;
    padding-bottom: 50px;
}

.price__2column-ly-item.title {
    width: 250px;
    font-weight: 500;
}

.price__2column-ly-item.cont {
    width: calc(100% - 250px);
}

.price__detail-2column-ly {
    display: flex;
    border-bottom: 1px dashed #74777c;
    padding: 10px;
}

.price__detail-2column-ly dt {
    width: calc(100% - 300px);
    position: relative;
    padding-left: 20px;
}

.price__detail-2column-ly dt .title {
    display: block;
}

.price__detail-2column-ly dt .blue-txt {
    font-size: 12px;
    color: #3da2dc;
    display: block;
}

.price__detail-2column-ly dt::before {
    width: 6.5px;
    height: 30px;
    background-color: #7aa1d3;
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.price__detail-2column-ly dd,
.price__3column-ly-item.price {
    width: 300px;
    color: #3da2dc;
    font-family: 'Manrope';
    font-weight: 500;
    text-align: right;
}

.price__detail-2column-ly dd .big-txt,
.price__3column-ly-item.price .big-txt {
    font-size: 1.8rem;
}

.price__detail-2column-ly dd .small-txt,
.price__3column-ly-item.price .small-txt {
    font-size: 1rem;
}

.price__caution-bl {
    padding: 50px;
    display: flex;
    background-color: #fff;
    align-items: center;
}

.price__caution-title-bl {
    width: 200px;
}

.price__caution-cont-bl {
    width: calc(100% - 200px);
}

.price-page .fa.fa-exclamation-triangle {
    color: #3da2dc;
    font-size: 130%;
    transform: translateY(2px);
    margin-right: 7px;
}

.caution-icon-txt {
    position: relative;
    padding-left: 1em;
    display: block;
}

.caution-icon-txt::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "※";
}

.price__3column-ly {
    display: flex;
    border-bottom: 1px solid #b3c1d7;
    padding-bottom: 50px;
}

.price__3column-ly-item.title {
    width: 250px;
}

.price__3column-ly-item.cont {
    width: calc(100% - 550px);
}

.price__3column-ly-item.cont .blue-txt {
    font-size: 12px;
    color: #3da2dc;
}

.price__3column-ly-item.price {
    width: 300px;
}

.w800 {
    width: 800px;
    max-width: 90%;
    margin-left: auto;
    margin-right: auto;
}

.orthodontics__about {
    padding-top: 80px;
    padding-bottom: 80px;
}

.orthodontics__about-title {
    font-size: 1.4rem;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    border-bottom: 1px solid #000;
}

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

.orthodontics__about-flex-item {
    width: 22%;
    margin-bottom: 30px;
}

.orthodontics__about-flex-item-img {
    width: 200px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
}

.orthodontics__about-flex-item-title {
    text-align: center;
    color: #3da2dc;
    font-size: 1.2rem;
    margin-bottom: 10px;
}

.orthodontics-page .approach-absolute-title_circle {
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.orthodontics-page .approach-absolute-title_circle .small {
    font-size: 12px;
}

.orthodontics-page .approach-absolute-title_circle .big {
    font-size: 30px;
    line-height: 1;
}

.mouthpiece-wrapper {
    padding: 70px 0 100px;
}

.implant-about-wrapper {
    padding: 100px 0 100px;
}

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

.mouthpiece-flex-item.img {
    width: 47%;
}

.mouthpiece-flex-item.cont {
    width: 50%;
}

.mouthpiece-num {
    width: 110px;
    height: 110px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    background-color: #3fa9e2;
    margin-left: auto;
    margin-right: auto;
    flex-direction: column;
    margin-bottom: 30px;
}

.mouthpiece-num-txt {
    display: block;
    width: fit-content;
    font-size: 12px;
    line-height: 1.2;
}

.mouthpiece-num-num {
    font-size: 40px;
    width: fit-content;
    line-height: 1;
}

.mouthpiece-main-title {
    text-align: center;
    font-size: 1.8rem;
    margin-bottom: 30px;
}

.mouthpiece-main-title-small {
    font-size: 1.3rem;
}

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

.mouthpiece-about-flex-item {
    width: 48.5%;
    position: relative;
    padding: 70px 40px 40px;
    background-color: #eef3fa;
    margin-bottom: 25px;
}

.mouthpiece-blue-bg-title {
    width: fit-content;
    background-color: #3da2dc;
    color: #fff;
    padding: 0 15px;
    position: absolute;
    top: 15px;
    left: 0;
    color: #fff;
    font-size: 12px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.mouthpiece-blue-bg-title-big-txt {
    font-size: 1.5rem;
    display: inline-block;
    margin-left: 5px;
}

.mouthpiece-about-title_middle {
    font-size: 1.3rem;
}

.mouthpiece-about-title_big {
    font-size: 1.4rem;
    background: linear-gradient(transparent 75%, #fff 75%);
}

.mouthpiece-about-title {
    margin-bottom: 20px;
}

.diagnose-wrapper {
    padding: 60px 0 100px;
}

.diagnose-wrapper .mouthpiece-flex-item {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.diagnose-white-wrapper,
.mouthpiece-white-wrapper,
.implant-about-white-wrapper {
    padding: 60px 60px 80px;
}

.diagnose-wrapper .base__ly-3column-item {
    padding-bottom: 30px;
}

.orthodontics__flow {
    padding: 100px 0;
}

.orthodontics__flow .timeline {
    max-width: calc(100% - 90px);
    width: 100%;
    margin: 0 0 50px 90px;
}

.orthodontics__flow .timeline li::after {
    content: '01';
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    font-size: 30px;
    top: 0;
    font-family: 'Manrope';
    left: 0;
    width: 70px;
    height: 70px;
    background: #4eb4ea;
    border-radius: 50%;
    transform: translateY(0);
}

.orthodontics__flow .timeline li:nth-of-type(2):after {
    content: '02';
}

.orthodontics__flow .timeline li:nth-of-type(3):after {
    content: '03';
}

.orthodontics__flow .timeline li:nth-of-type(4):after {
    content: '04';
}

.orthodontics__flow .timeline li:nth-of-type(5):after {
    content: '05';
}

.orthodontics__flow .timeline li .time-line__flow-title {
    position: absolute;
    background-color: #d6ebf7;
    color: #fff;
    width: 62px;
    font-size: 1rem;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    top: 0;
    left: -90px;
    transform: translateY(0);
}

.orthodontics__flow .timeline li:nth-of-type(4) .time-line__flow-title {
    background-color: #b9def2;
}

.orthodontics__flow .timeline li:nth-of-type(5) .time-line__flow-title {
    background-color: #92cdec;
}

.orthodontics__flow .time-line__flow-title-position-relative::after {
    display: none;
}

.orthodontics__flow .timeline li:nth-of-type(3) .time-line__flow-title-position-relative::after {
    display: block;
    top: 100%;
    left: 0;
    right: 0;
    width: 0;
    height: 0;
    transform: translateY(0);
    border-style: solid;
    border-width: 31px 31px 0 31px;
    border-color: #d6ebf7 transparent transparent transparent;
}

.orthodontics__flow .timeline li:nth-of-type(4) .time-line__flow-title-position-relative::after {
    display: block;
    top: 100%;
    left: 0;
    right: 0;
    width: 0;
    height: 0;
    transform: translateY(0);
    border-style: solid;
    border-width: 31px 31px 0 31px;
    border-color: #b9def2 transparent transparent transparent;
}

.orthodontics__flow .border-line {
    left: 35px;
    top: 0;
    width: 2px;
    background: #3fa9e2;
}

.orthodontics__flow .time-line__flex {
    padding: 0 0 60px 90px;
    height: 300px;
}

.orthodontics__flow .time-line__img {
    width: 360px;
}

.orthodontics__flow .time-line__cont {
    width: calc(100% - 390px);
    /* padding-bottom: 40px; */
}

.orthodontics__flow .timeline li {
    padding: 0;
}

.orthodontics__flow .timeline li:last-of-type .time-line__flex {
    padding: 0 0 0 90px;
    height: 240px;
}

.orthodontics__flow .time-line__flow-title-position-relative {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}

.implant01__wrapper {
    padding-top: 100px;
    padding-bottom: 80px;
}

.implant-page .base__title15rem.center {
    text-align: center;
}

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

.implant-choice-flex-item {
    width: 31%;
    background-color: #eef3fa;
    padding: 30px;
}

.implant-choice-img {
    width: 150px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 10px;
}

.implant-choice-flex-item h5 {
    text-align: center;
    margin-bottom: 10px;
    font-size: 1.2rem;
}

.circle-num-title-num {
    background-color: #3da2dc;
    color: #fff;
    display: inline-flex;
    margin-right: 7px;
    justify-content: center;
    align-items: center;
    width: 42.5px;
    height: 42.5px;
    font-size: 20px;
    border-radius: 50%;
}

.circle-num-title-txt {
    font-size: 1.2rem;
    color: #3da2dc;
}

.circle-num-title {
    margin-bottom: 7px;
}

.implant-sample-title {
    display: flex;
    width: 400px;
    margin-left: auto;
    margin-right: auto;
    background-color: #eef3fa;
    position: relative;
    justify-content: center;
    align-items: center;
    color: #3da2dc;
    font-size: 1.5rem;
    height: 70px;
    border-radius: 5px;
}

.implant-sample-title::after {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 9px 0 9px;
    border-color: #eef3fa transparent transparent transparent;
    content: "";
    display: inline-block;
}

.implant-sample-flex {
    width: 100%;
    display: flex;
    justify-content: space-around;
}

.implant-sample-flex-item {
    width: 28%;
}

.implant-sample-flex-item h5 {
    text-align: center;
    margin-top: 10px;
}

.implant-surgery-bg-title {
    background-color: #3da2dc;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 320px;
    max-width: 100%;
    height: 45px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 70px;
    margin-bottom: 20px;
}

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

.implant-surgery-flex-item.cont {
    width: 65%;
}

.implant-surgery-item-title {
    border-bottom: 1px solid #3da2dc;
    padding-bottom: 10px;
    font-size: 1rem;
    margin-bottom: 10px;
}

.implant-surgery-item-title .txt-blue {
    font-size: 1.2rem;
}

.implant-surgery-flex-item.cont p {
    font-size: 14px;
}

.implant-surgery-flex-item.img {
    width: 33%;
}

.implant-test-flex {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
}

.implant-test-flex-item {
    width: 50%;
    height: 330px;
    background-position: center center;
    background-size: cover;
    padding: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    flex-direction: column;
}

.implant-test-item-title {
    font-size: 1.45rem;
    margin-bottom: 15px;
}

.implant-test-item-title .small {
    font-size: 12px;
}

.implant-test-flex-item p {
    font-size: 14px;
}

.implant-test-flex-item.p1 {
    background-image: url(../cmn_img/implant/implant-test-bg01.jpg);
}

.implant-test-flex-item.p2 {
    background-image: url(../cmn_img/implant/implant-test-bg02.jpg);
}

.implant-test-flex-item.p3 {
    background-image: url(../cmn_img/implant/implant-test-bg03.jpg);
}

.implant-test-flex-item.p4 {
    background-image: url(../cmn_img/implant/implant-test-bg04.jpg);
}

.implant__flow {
    padding-top: 100px;
    padding-bottom: 70px;
}

.implant__flow .timeline {
    max-width: 100%;
    width: 100%;
    margin: 0 0 50px 0;
}

.implant__flow .timeline li::after {
    content: '01';
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    font-size: 30px;
    top: 0;
    font-family: 'Manrope';
    left: 0;
    width: 70px;
    height: 70px;
    background: #4eb4ea;
    border-radius: 50%;
    transform: translateY(0);
}

.implant__flow .timeline li:nth-of-type(2):after {
    content: '02';
}

.implant__flow .timeline li:nth-of-type(3):after {
    content: '03';
}

.implant__flow .timeline li:nth-of-type(4):after {
    content: '04';
}

.implant__flow .timeline li:nth-of-type(5):after {
    content: '05';
}

.implant__flow .border-line {
    left: 35px;
    top: 0;
    width: 2px;
    background: #3da3dc;
}

.implant__flow .time-line__img {
    width: 350px;
}

.implant__flow .time-line__cont {
    width: calc(100% - 390px);
}

.implant__flow .time-line__flex {
    width: 100%;
    padding: 0 0 40px 100px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    height: 280px;
}

.implant-flow-flex {
    display: flex;
    justify-content: space-between;
    width: calc(100% - 100px);
    margin-left: 100px;
    margin-right: 0;
    margin-bottom: 60px;
}

.implant-flow-flex-item {
    width: 48.5%;
}

.implant-flow-item-title {
    width: 100%;
    padding: 8px 10px;
    text-align: center;
    color: #3da2dc;
    background-color: #eef3fa;
    margin-bottom: 20px;
}

.implant-flow-flex-item div {
    height: 110px;
    display: flex;
    justify-content: center;
}

.implant-flow-flex-item div img {
    height: 100%;
    width: auto;
    display: block;
}

.implant__flow li:nth-of-type(4) .time-line__flex {
    padding: 0 0 30px 100px;
    height: 270px;
}

.align-center_m-left {
    text-align: center;
}

.mb15 {
    margin-bottom: 15px !important;
}

@media screen and (max-width: 1400px) {
    .doctor__profile-bl {
        width: 100%;
        padding: 50px 0 80px;
    }

    .doctor__profle-w1200 {
        margin-left: auto;
        margin-right: auto;
        max-width: 90%;
    }
}

@media screen and (max-width: 1300px) {
    .approach__about-condition-scroll-bl {
        width: 900px;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    .approach__about-condition-img {
        position: relative;
        width: 500px;
        left: 0;
        top: 30px;
        height: 400px;
        z-index: 1;
    }

    .approach__about-condition-num {
        width: 80px;
        height: 80px;
    }

    .approach__about-condition-cont {
        width: 450px;
    }

    .approach__about-condition-cont-txt h4 {
        font-size: 1rem;
    }

    .approach__about-condition-cont-txt {
        width: calc(100% - 100px);
    }

    .approach__about-condition-cont.p1 {
        left: 350px;
        top: 0px;
    }

    .approach__about-condition-cont.p2 {
        left: 450px;
        top: 97px;
    }

    .approach__about-condition-cont.p3 {
        left: 450px;
        top: 213px;
    }

    .approach__about-condition-cont.p4 {
        left: 350px;
        top: 315px;
    }

    /**/

    .cosmetic__about-condition-scroll-bl {
        width: 900px;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    .cosmetic__about-condition-img {
        position: relative;
        width: 400px;
        left: 0;
        top: 0;
        height: 400px;
        z-index: 1;
    }

    .cosmetic__about-condition-num {
        width: 80px;
        height: 80px;
    }

    .cosmetic__about-condition-cont {
        width: 500px;
    }

    .cosmetic__about-condition-cont-txt h4 {
        font-size: 1rem;
    }

    .cosmetic__about-condition-cont-txt {
        width: calc(100% - 100px);
    }

    .cosmetic__about-condition-cont.p1 {
        left: 280px;
        top: 0px;
    }

    .cosmetic__about-condition-cont.p2 {
        left: 350px;
        top: 97px;
    }

    .cosmetic__about-condition-cont.p3 {
        left: 350px;
        top: 213px;
    }

    .cosmetic__about-condition-cont.p4 {
        left: 280px;
        top: 315px;
    }

    .page__main-title {
        left: 40px;
        transform: translateY(-50%);
    }

    .page__main-title_big {
        font-size: 3rem;
    }

    .crrect-3point-item {
        width: 120px;
        height: 120px;
        margin-right: 15px;
    }

    .menu-page .menu__content-bg,
    .menu-page .menu__list:hover .menu__content-bg {
        width: 230px;
    }

    .menu-page .menu__img,
    .menu-page .menu__list:hover .menu__img {
        width: 80px;
        height: 80px;
    }

    .menu-page .menu__list:hover .menu__list-title {
        font-size: 14.5px;
    }

    .menu-page .menu__list:hover .menu__list-title_small {
        font-size: 0.7rem;
    }

    .menu-page .menu__list.menu__list__last .menu__img,
    .menu-page .menu__list.menu__list__last:hover .menu__img {
        width: 150px;
        height: auto;
    }

    .menu-page .menu__txt-box,
    .menu-page .menu__list.menu__list__last:hover .menu__txt-box {
        width: calc(100% - 180px);
    }

    .menu-page .menu__list.menu__list__last .menu__content-bg,
    .menu-page .menu__list.menu__list__last:hover .menu__content-bg {
        width: 800px;
    }

    .menu-page .menu__list.menu__list__last .menu__list-title,
    .menu-page .menu__list.menu__list__last:hover .menu__list-title {
        font-size: 20px;
    }

    .menu-page .menu__list.menu__list__last:hover .menu__list-title_small {
        font-size: 0.85rem;
    }

    .menu-page .menu__list-title,
    .menu-page .menu__list:hover .menu__list-title {
        font-size: 16px;
    }

    .menu-page .menu__list-title_small,
    .menu-page .menu__list:hover .menu__list-title_small {
        font-size: 0.85rem;
    }
}

@media screen and (max-width: 1200px) {
    .policy-page .approach__img img {
        object-position: center right;
    }

    .timeline {
        max-width: calc(100% - 120px);
        margin: 0 0 50px 120px;
    }

    .time-line__flex {
        width: 100%;
        padding: 40px 0 40px 50px;
        height: 300px;
    }

    .time-line__flow-title {
        font-size: 1.1rem;
        left: -125px;
    }

    .time-line__img {
        width: 180px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .time-line__img img {
        display: block;
    }

    .time-line__cont {
        width: calc(100% - 220px);
    }

    .doctor__main-messe {
        left: 50px;
    }

    .doctor__main-messe-title {
        font-size: 1.5rem;
    }

    .flex-enamel-item.img {
        width: 230px;
    }

    .flex-enamel-item.cont {
        width: calc(100% - 260px);
    }

    .enamel-title {
        font-size: 1.3rem;
    }

    .price__3column-ly-item.title {
        width: 180px;
    }

    .price__3column-ly-item.cont {
        width: calc(100% - 430px);
    }

    .price__detail-2column-ly dd,
    .price__3column-ly-item.price {
        width: 260px;
    }

    .price__detail-2column-ly dd .big-txt,
    .price__3column-ly-item.price .big-txt {
        font-size: 1.6rem;
    }

    .price__2column-ly-item.title {
        width: 180px;
    }

    .price__detail-2column-ly dt {
        width: calc(100% - 260px);
    }

    .price__2column-ly-item.cont {
        width: calc(100% - 180px);
    }

    .mouthpiece-num {
        width: 90px;
        height: 90px;
        margin-bottom: 5px;
    }

    .mouthpiece-main-title {
        font-size: 1.6rem;
        line-height: 1.5;
        margin-bottom: 10px;
    }

    .mouthpiece-main-title-small {
        font-size: 1.1rem;
    }

    .mouthpiece-about-flex-item {
        padding: 80px 30px 30px;
    }

    .mouthpiece-about-title {
        margin-bottom: 10px;
    }

    .mouthpiece-about-title_middle {
        font-size: 1.2rem;
    }

    .mouthpiece-about-title_big {
        font-size: 1.3rem;
    }

    .orthodontics__flow .time-line__img {
        width: 300px;
        align-items: flex-start;
    }

    .orthodontics__flow .time-line__cont {
        width: calc(100% - 320px);
        justify-content: flex-start;
    }

    .orthodontics__flow .time-line__flex {
        padding: 0 0 60px 90px;
        height: 260px;
    }

    .implant-flow-flex-item div {
        height: 100px;
    }

    .equipment__main-title {
        width: 350px;
    }

    .equipment__main-cont {
        width: calc(100% - 350px)
    }
}

@media screen and (max-width: 960px) {
    .m-none {
        display: none;
    }

    .m-only {
        display: inline-block;
    }

    .align-center_m-left {
        text-align: left;
    }

    .base__ly-2column,
    .base__flex,
    .base__ly-2column-item_50p,
    .base__img-small-flex {
        flex-direction: column;
        width: 100%;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    .base__ly-2column-item,
    .base__ly-3column-item,
    .base__flex-item,
    .base__flex-item-3column,
    .base__img-small-flex-item.cont {
        width: 100%;
    }

    .base__ly-3column {
        flex-direction: column;
        width: 400px;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    .base__ly-2column-item_50p.img,
    .base__ly-2column-item.img,
    .base__img-small-flex-item.img {
        width: 600px;
        margin-left: auto;
        margin-right: auto;
        max-width: 100%;
    }

    .base__title18rem {
        font-size: 1.5rem;
    }

    .cosmetic__base-title {
        font-size: 1.4rem;
        margin-bottom: 25px;
    }

    .btn-4column-bl-item a {
        height: 230px;
    }

    .icon-circle {
        width: 130px;
        height: 130px;
    }

    .is-m {
        display: inline-block;
    }

    .base__bg-title-bl {
        height: 350px;
    }

    .base__bg-title-bl-title {
        font-size: 1.8rem;
        margin-bottom: 15px;
    }

    .base__bg-title-bl-title_small {
        font-size: 1.3rem;
    }

    .base__title15rem {
        font-size: 1.3rem;
    }

    .approach__about {
        margin-top: 60px;
        margin-bottom: 70px;
    }

    .approach__about-title {
        font-size: 1.6rem;
    }

    .approach__about-title_blue {
        font-size: 1.3rem;
    }

    /* .approach__about-condition-scroll-bl{
        overflow-x: scroll;
        overflow-y: hidden;
    } */

    .approach__about-condition {
        position: relative;
        margin: 60px 0 30px;
    }

    /* .approach__about-condition-img {
        position: relative;
        width: 410px;
        left: 0;
        top: 60px;
    } */

    .approach__about-condition-img {
        position: relative;
        width: 410px;
        max-width: 100%;
        height: auto;
        margin-bottom: 20px;
        left: 0;
        top: 0;
        margin-left: auto;
        margin-right: auto;
    }

    /* .approach__about-condition-cont.p1 {
        left: 260px;
        top: 10px;
    }

    .approach__about-condition-cont.p2 {
        left: 350px;
        top: 106px;
    }

    .approach__about-condition-cont.p3 {
        left: 350px;
        top: 214px;
    }

    .approach__about-condition-cont.p4 {
        left: 260px;
        top: 310px;
    } */

    .approach__about-condition-cont.p1,
    .approach__about-condition-cont.p2,
    .approach__about-condition-cont.p3,
    .approach__about-condition-cont.p4 {
        left: 0;
        top: 0;
        position: relative;
        padding: 15px 0;
        width: 650px;
        margin-left: auto;
        margin-right: auto;
        max-width: 100%;
    }

    .approach-txt-bl.pa30 {
        padding: 30px 0;
    }

    .approach__img-bg-cyan {
        padding: 50px 50px;
    }

    /**/

    /* .cosmetic__about-condition-scroll-bl{
        overflow-x: scroll;
        overflow-y: hidden;
    } */

    .cosmetic__about-condition {
        position: relative;
        margin: 60px 0 30px;
        height: auto;
    }

    /* .cosmetic__about-condition-img {
        position: relative;
        width: 320px;
        left: 0;
        top: 40px;
    } */

    .cosmetic__about-condition-img {
        position: relative;
        width: 320px;
        height: 320px;
        left: 0;
        top: 0;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 30px;
    }

    .cosmetic__about-condition-cont {
        width: 650px;
        max-width: 100%;
        padding: 15px 0;
        margin-left: auto;
        margin-right: auto;
    }

    .cosmetic__about-condition-cont.p1,
    .cosmetic__about-condition-cont.p2,
    .cosmetic__about-condition-cont.p3,
    .cosmetic__about-condition-cont.p4 {
        left: 0;
        position: relative;
        top: 0;
    }

    /* .cosmetic__about-condition-cont.p1 {
        left: 200px;
        top: 10px;
    }

    .cosmetic__about-condition-cont.p2 {
        left: 280px;
        top: 106px;
    }

    .cosmetic__about-condition-cont.p3 {
        left: 280px;
        top: 214px;
    }

    .cosmetic__about-condition-cont.p4 {
        left: 200px;
        top: 310px;
    } */

    .cosmetic__about {
        margin-top: 60px;
    }

    .page .footer {
        padding-top: 70px;
    }

    /* .hotetu-bg-blue-title{
        margin-left: 0;
    }

    .hotetu-small-title-blue{
        text-align: left;
    } */

    .correct-to-detail-button a {
        width: 450px;
        height: 70px;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    .oral__middle-title {
        font-size: 1.1rem;
    }

    .oral__btn-flex-item {
        width: 48.5%;
        height: 105px;
    }

    .oral__botox-detail {
        flex-direction: column-reverse;
    }

    .oral__botox-detail-img,
    .oral__botox-detail-cont {
        width: 100%;
    }

    .oral__botox-detail-img img {
        width: 250px;
    }

    .circle-anim::before {
        width: 70px;
        height: 70px;
    }

    .circle-anim::after {
        right: 20px;
    }

    .circle-anim {
        padding-right: 60px;
    }

    .oral__botox-detail-title {
        font-size: 1.3rem;
    }

    .equipment-page .corona {
        padding-bottom: 80px;
    }

    .flex-bl.middle-column {
        flex-direction: column;
    }

    .flex-item.w68p,
    .flex-item.w28p {
        width: 100%;
    }

    .menu-page .menu__list {
        width: 48.5%;
    }

    .menu-page .menu__list:hover {
        width: 47.5%;
    }

    .menu-page .menu__list.menu__list__last .menu__img,
    .menu-page .menu__list.menu__list__last:hover .menu__img {
        width: 120px;
        margin-right: 20px;
    }

    .menu-page .menu__txt-box,
    .menu-page .menu__list.menu__list__last:hover .menu__txt-box {
        width: calc(100% - 140px);
    }

    .menu-page .menu__list.menu__list__last .menu__content-bg,
    .menu-page .menu__list.menu__list__last:hover .menu__content-bg {
        width: 570px;
    }

    .menu__list-box {
        margin-bottom: 0;
    }

    .policy-page .approach {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .policy-page .feature {
        padding-top: 70px;
        padding-bottom: 70px;
    }

    .policy__feature-title_big {
        font-size: 60px;
    }

    .txt130p_m {
        font-size: 130% !important;
    }

    .policy-page .feature__box {
        padding: 50px 40px 80px;
    }

    .policy__life-stage {
        padding-top: 70px;
        padding-bottom: 0;
    }

    .timeline {
        max-width: calc(100% - 110px);
        margin: 0 0 50px 110px;
    }

    .timeline {
        max-width: calc(100% - 120px);
        margin: 0 0 50px 120px;
    }

    .time-line__flex {
        width: 100%;
        padding: 0 0 60px 50px;
        height: auto;
        flex-direction: column;
    }

    .time-line__img {
        width: 200px;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 20px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .time-line__cont {
        width: 100%;
    }

    .time-line__flow-title {
        font-size: 1.2rem;
        left: -125px;
        top: 0;
        transform: translateY(-13px);
    }

    .timeline li::after {
        top: 0;
        transform: translateY(0);
    }

    .border-line {
        top: 0;
    }

    .online-flex-item {
        width: 48.5%;
        padding: 20px;
        background-color: #fff;
        margin-bottom: 20px;
    }

    .policy-page .approach__img {
        height: 420px;
    }

    .access__main-flex {
        height: auto;
        flex-direction: column;
    }

    .access__main-flex-item.img {
        width: 100%;
        height: 400px;
    }

    .access__main-flex-item.cont {
        width: 100%;
        margin-top: 50px;
    }

    .access__menu-img-flex {
        transform: translateY(-50%);
        top: -170px;
    }

    .access__menu-img-flex-item {
        height: 200px;
    }

    .access {
        padding-top: 60px;
        padding-bottom: 160px;
    }

    .access__menu {
        padding-top: 120px;
        padding-bottom: 100px;
    }

    .access__menu-menu-flex {
        justify-content: center;
        flex-wrap: wrap;
    }

    .access__menu-menu-flex-item {
        width: 22%;
        padding: 10px 10px 30px;
    }

    .doctor__main {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .doctor__profile-flex {
        flex-direction: column;
        align-items: center;
    }

    .doctor__profile-flex-item {
        width: 600px;
        max-width: 100%;
    }

    .doctor__main-cont {
        flex-direction: column;
    }

    .doctor__main-name-bl {
        margin-bottom: 10px;
    }

    .doctor__main-messe-bl {
        width: 100%;
    }

    .doctor__main-messe {
        left: 25px;
    }

    .doctor__main-messe-title {
        font-size: 1.25rem;
        padding: 5px 10px;
    }

    .pediatric__about {
        padding-top: 60px;
        padding-bottom: 70px;
    }

    .pediatric__to-parent {
        padding: 70px 50px 60px;
    }

    .pediatric__about .align-center_sp-left {
        text-align: left;
    }

    .big-img-slide-bl {
        overflow-x: scroll;
    }

    .big-img-cont {
        width: 847px;
    }

    .pediatric__study-enamel {
        padding: 50px;
    }

    .flex-enamel {
        flex-direction: column;
        align-items: center;
    }

    .flex-enamel-item.img {
        margin-bottom: 20px;
    }

    .enamel-title {
        font-size: 1.25rem;
    }

    .flex-enamel-item.cont {
        width: 100%;
    }

    .news-bl {
        padding-top: 60px;
        padding-bottom: 80px;
    }

    .news-page .news__list-item {
        padding: 50px 20px;
    }

    .price__cont-bl {
        padding: 40px;
    }

    .price__3column-ly-item.price {
        width: 100%;
    }

    .price__title {
        font-size: 1.6rem;
    }

    .price__2column-ly-item.title {
        width: 100%;
        padding-bottom: 20px;
    }

    .price__2column-ly-item.cont {
        width: 100%;
    }

    .price__caution-bl {
        padding: 30px;
        flex-direction: column;
    }

    .price__caution-title-bl {
        width: 100%;
        padding-bottom: 10px;
    }

    .price__caution-cont-bl {
        width: 100%;
    }

    .price__3column-ly {
        flex-direction: column;
    }

    .price__3column-ly-item.title {
        width: 100%;
        padding-bottom: 10px;
    }

    .price__3column-ly-item.cont {
        width: 100%;
    }

    .price__2column-ly {
        padding-bottom: 40px;
        flex-direction: column;
    }

    .price__3column-ly {
        padding-bottom: 15px;
    }

    .caution-icon-txt {
        font-size: 0.9rem;
    }

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

    .orthodontics__about-flex-item-img {
        width: 130px;
    }

    .mouthpiece-flex {
        flex-direction: column;
        align-items: center;
    }

    .mouthpiece-flex-item.img {
        width: 600px;
        max-width: 100%;
    }

    .mouthpiece-flex-item.cont {
        width: 100%;
        margin-top: 30px;
    }

    .mouthpiece-about-flex-item {
        width: 100%;
    }

    .orthodontics__flow .time-line__flex,
    .orthodontics__flow .timeline li:last-of-type .time-line__flex {
        height: auto;
        flex-direction: column;
    }

    .orthodontics__flow .time-line__img {
        width: 380px;
    }

    .orthodontics__flow .time-line__cont {
        width: 100%;
    }

    .diagnose-wrapper .base__ly-3column-item:last-of-type {
        padding-bottom: 0;
    }

    .implant01__wrapper {
        padding-top: 60px;
        padding-bottom: 50px;
    }

    .implant-choice-flex-item {
        width: 32%;
        padding: 20px 15px;
    }

    .implant-choice-img {
        width: 120px;
    }

    .implant-sample-flex-item {
        width: 31%;
    }

    .implant-sample-flex-item .base__title13rem {
        font-size: 1rem;
    }

    .implant-sample-title {
        width: 350px;
        font-size: 1.3rem;
        height: 60px;
    }

    .implant-surgery-flex {
        flex-direction: column;
        align-items: center;
    }

    .implant-surgery-flex-item.cont {
        width: 100%;
    }

    .implant-surgery-flex-item.img {
        width: 600px;
        max-width: 100%;
        margin-top: 10px;
    }

    .implant-test-flex-item {
        padding: 20px;
    }

    .implant-test-item-title {
        font-size: 1.1rem;
    }

    .implant-about-wrapper {
        padding: 70px 0 70px;
    }

    .implant__flow {
        padding-top: 70px;
        padding-bottom: 30px;
    }

    .implant__flow .time-line__img {
        width: 380px;
    }

    .implant__flow .time-line__flex {
        flex-direction: column;
        height: auto;
        align-items: center;
    }

    .implant__flow li:nth-of-type(4) .time-line__flex {
        height: auto;
    }

    .implant__flow .time-line__cont {
        width: 100%;
    }

    .implant-flow-flex {
        flex-direction: column;
        align-items: center;
    }

    .implant-flow-flex-item {
        width: 600px;
        max-width: 100%;
    }

    .implant-flow-flex-item div {
        height: 110px;
    }

    .pediatric-page .page__main-title {
        text-shadow: 0px 0px 10px rgb(0 0 0 / 50%);
    }

    .equipment__main-flex {
        flex-direction: column;
    }

    .equipment__main-title {
        width: 100%;
        margin-bottom: 10px;
        font-size: 1.5rem;
        transform: translateY(0);
    }

    .equipment__main-cont {
        width: 100%;
    }
}

@media screen and (max-width: 640px) {

    html,
    body {
        font-size: 15px;
    }

    .s_11rem {
        font-size: 1.1rem !important;
    }

    .mv-width {
        max-width: 100%;
    }

    .page-mv {
        height: 250px;
    }

    .page-mv img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: left 50%;
    }

    .oral .page-mv img {
        object-position: 50% 50%;
    }

    .base__ly-2column,
    .base__flex,
    .base__ly-2column-item_50p {
        /* flex-direction: column; */
        width: 500px;
        /* max-width: 100%;
        margin-left: auto;
        margin-right: auto; */
    }

    /* .base__ly-3column {
        flex-direction: column;
        width: 400px;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    } */

    /* .base__ly-2column-item,
    .base__ly-3column-item,
    .base__flex-item{
        width: 100%;
    } */

    .approach__white-bg,
    .page__white-bg {
        padding: 50px 30px;
    }

    .btn-4column-bl-item {
        width: 48.5%;
        margin-bottom: 20px;
    }

    .btn-4column-bl-item:last-of-type,
    .btn-4column-bl-item:nth-of-type(3) {
        margin-bottom: 0;
    }

    .approach__about-txt,
    .approach__detail-txt {
        text-align: left;
    }

    .approach__about-title {
        font-size: 1.3rem;
    }

    .approach__about-title_blue {
        font-size: 1.1rem;
    }

    .approach__detail-title-num-box .num {
        font-size: 2.3rem;
    }

    .approach__detail-title-txt {
        font-size: 1rem;
    }

    .approach__detail-title-txt_blue {
        font-size: 1.5rem;
    }

    .approach__detail-title-bl {

        padding-bottom: 20px;
    }

    .base__detail-treatment-bl {
        padding: 40px 30px 40px;
    }

    .underline-title {
        padding-bottom: 5px;
        margin-bottom: 10px;
        font-size: 1.1rem;
    }

    .detail-treatment-title {
        white-space: nowrap;
        font-size: 1.2rem;
    }

    .approach__detail-txt-title {
        font-size: 1.15rem;
    }

    .bg-cyan-title {
        font-size: 1.2rem;
    }

    .approach-absolute-title_circle {
        width: 75px;
        height: 75px;
        font-size: 0.9rem;
    }

    .approach__bg-blue-title {
        font-size: 1.2rem;
    }

    .txt-mediam {
        font-size: 17px;
    }

    .approach-txt-bl.pa30 {
        padding: 30px 0 0;
    }

    .approach__img-bg-cyan {
        padding: 30px 20px;
    }

    .approach__img-bg-cyan {
        overflow-x: scroll;
    }

    .approach__img-bg-cyan img {
        width: 575px;
    }

    .whitening-img {
        overflow-x: scroll;
        padding-bottom: 40px;
    }

    .whitening-img img {
        width: 615px;
    }

    .oral-about-img,
    .oral__big-img {
        overflow-x: scroll;
        padding-bottom: 30px;
    }

    .oral-about-img img,
    .oral__big-img img {
        width: 612px;
    }

    .oral-about-img {
        margin-bottom: 0;
        padding-bottom: 30px;
    }

    .oral__btn-flex {
        flex-direction: column;
        align-items: center;
    }

    .oral__btn-flex-item {
        width: 320px;
        height: 100px;
        max-width: 90%;
    }

    .oral__botox-detail {
        padding: 50px 30px;
    }

    .ac-qa-num {
        font-size: 30px;
        margin-right: 10px;
    }

    .accordion-title {
        padding: 15px 60px 15px 15px;
        font-size: 1rem;
    }

    .ac-qa-circle,
    .ac-qa-circle span {
        width: 40px;
        height: 40px;
    }

    .accordion-item {
        margin-bottom: 15px;
    }

    .kadomaru-card {
        padding: 60px 40px 40px;
    }

    .oral__small-title {
        font-size: 1.1rem;
    }

    .oral__botox-detail-img img {
        width: 200px;
    }

    .oral__botox-detail-title {
        font-size: 1.2rem;
    }

    .accordion-content {
        padding: 25px 20px;
    }

    .equipment__cont .oral__small-title {
        padding: 5px 30px;
        font-size: 1.2rem;
    }

    .base__title15rem {
        font-size: 1.2rem;
    }

    .s_p30-20 {
        padding: 30px 20px !important;
    }

    .equipment-page .kadomaru-card {
        border-radius: 15px;
    }

    .equipment__main-title {
        font-size: 1.4rem;
    }

    .sp-none {
        display: none;
    }

    .equipment-page .cosmetic-title_blue_small {
        font-size: 1.1rem;
    }

    .flex-bl {
        flex-direction: column;
    }

    .flex-item,
    .flex-item.w68p,
    .flex-item.w28p,
    .flex-item.equipment-health-right,
    .flex-item.equipment-health-left {
        width: 100%;
    }

    .flex-item.equipment-health-left {
        display: flex;
        justify-content: center;
        align-items: center;
        margin-bottom: 15px;
    }

    .flex-item.equipment-health-left img {
        width: 170px;
        max-width: 100%;
        display: block;
        margin-left: auto;
        margin-right: auto;
    }

    .menu-page .menu__content-bg,
    .menu-page .menu__list:hover .menu__content-bg {
        width: 170px;
    }

    .menu-page .menu__cont-title,
    .menu-page .menu__list:hover .menu__cont-title {
        font-size: 1rem;
    }

    .menu-page .menu__list.menu__list__last,
    .menu-page .menu__list.menu__list__last:hover {
        height: 250px;
    }

    .menu-page .menu__list.menu__list__last .menu__content-bg,
    .menu-page .menu__list.menu__list__last:hover .menu__content-bg {
        width: 380px;
    }

    .menu-page .menu__list.menu__list__last .menu__img,
    .menu-page .menu__list.menu__list__last:hover .menu__img {
        width: 100px;
        margin-right: 10px;
    }

    .menu-page .menu__txt-box,
    .menu-page .menu__list.menu__list__last:hover .menu__txt-box {
        width: calc(100% - 110px);
    }

    .menu-page .menu__list {
        margin-bottom: 15px;
    }

    .menu-page .menu__list.menu__list__last .menu__cont-title,
    .menu-page .menu__list.menu__list__last:hover .menu__cont-title {
        font-size: 1.1rem;
    }

    .menu-page .menu__list-box {
        margin-bottom: 40px;
    }

    .menu-bnr-space {
        height: 120px;
        width: 100%;
        border-radius: 15px;
        margin-top: 40px;
    }

    .menu-bnr-space a {
        width: 100%;
        height: 100%;
        display: block;
        border-radius: 15px;
    }

    .menu-bnr-space a img {
        object-fit: cover;
        object-position: 50% 50%;
        height: 100%;
        border-radius: 15px;
    }

    .align-center_sp-left {
        text-align: left;
    }

    .timeline {
        max-width: 100%;
        margin: 0 0 50px 0;
    }

    .time-line__flex {
        width: 100%;
        padding: 70px 0 60px 50px;
    }

    .time-line__flow-title {
        font-size: 1.3rem;
        left: 50px;
        top: 0;
        transform: translateY(-13px);
        width: calc(100% - 50px);
    }

    .time-line__flow-title-position-relative::after {
        display: block;
        content: "";
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 7.5px 0 7.5px 20px;
        border-color: transparent transparent transparent #3da2dc;
        position: absolute;
        right: 100%;
        top: 50%;
        transform: rotate(180deg) translateY(40%);
    }

    .online-flex-item {
        width: 100%;
        margin-bottom: 10px;
    }

    .hukidashi-title {
        width: 300px;
        height: 60px;
        font-size: 1.2rem;
    }

    .policy-page .approach {
        padding-top: 30px;
    }

    .policy__feature-title_big {
        font-size: 50px;
    }

    .policy-page .feature {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .policy-page .feature__box {
        padding: 30px 30px 60px;
    }

    .policy-page .approach__content {
        width: 100%;
        margin-bottom: 40px;
    }

    .sp-only {
        display: inline-block;
    }

    .txt120p_s {
        font-size: 120% !important;
    }

    .time-line__img {
        width: 150px;
    }

    .policy__online {
        padding-top: 70px;
    }

    .policy-page .policy__treatment-img {
        margin-top: 20px;
    }

    .policy-page .approach__img {
        height: 350px;
    }

    .access__main-flex-item.img {
        height: 300px;
    }

    .access__menu-menu-flex {
        width: 320px;
        margin-left: auto;
        margin-right: auto;
        max-width: 100%;
        justify-content: flex-start;
    }

    .access__menu-menu-flex-item {
        width: 50%;
    }

    .doctor__main-img {
        height: 300px;
    }

    .doctor__main-img img {
        object-fit: cover;
        width: 100%;
        height: 100%;
        object-position: 60% 50%;
    }

    .doctor__main-messe {
        top: 55%;
    }

    .doctor__main-messe {
        top: 62%;
    }

    .doctor__main-messe-title {
        background-color: rgba(255, 255, 255, 0.6);
    }

    .doctor__blue-title {
        font-size: 2.1rem;
    }

    .doctor__main {
        padding-top: 30px;
        padding-bottom: 50px;
    }

    .doctor__profile-bl {
        width: 100%;
        padding: 40px 0 50px;
    }

    .question-big-title {
        font-size: 1.2rem;
    }

    .base__title13rem {
        font-size: 1.2rem;
    }

    .big-img-cont {
        width: 700px;
    }

    .pediatric-page .page-mv img {
        object-position: 55% 50%;
    }

    .pediatric__to-parent {
        padding: 60px 30px 40px;
    }

    .pediatric__study-enamel {
        padding: 50px 30px;
    }

    .pediatric-care-icon {
        width: 100px;
    }

    .pediatric-care-cont {
        width: calc(100% - 120px);
        justify-content: flex-start;
    }

    .pediatric__care {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    .pediatric__care .base__ly-2column-item:last-of-type .pediatric-care-flex {
        margin-bottom: 0;
    }

    .news-bl {
        padding-top: 30px;
        padding-bottom: 60px;
    }

    .news-page .news__list-item {
        padding: 30px 10px;
    }

    .price__detail-2column-ly {
        flex-direction: column;
    }

    .price__detail-2column-ly dt {
        width: 100%;
    }

    .price__detail-2column-ly dd {
        width: 100%;
    }

    .price__cont-bl {
        padding: 30px 20px;
    }

    .price__title {
        font-size: 1.4rem;
    }

    .price__2column-ly-item.title {
        padding-bottom: 10px;
    }

    .price__detail-2column-ly {
        padding: 15px 0;
    }

    .price__2column-ly {
        padding-bottom: 30px;
    }

    .price__wrapper {
        padding: 30px 0 60px;
    }

    .price__caution-bl {
        padding: 30px 20px;
    }

    .caution-icon-txt {
        padding-bottom: 10px;
    }

    .orthodontics__about-flex-item {
        width: 48.5%;
    }

    .orthodontics__about-flex-item-img {
        margin-bottom: 10px;
    }

    .orthodontics__about-flex-item-title {
        font-size: 1.1rem;
        margin-bottom: 5px;
    }

    .orthodontics__about {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .diagnose-white-wrapper,
    .mouthpiece-white-wrapper,
    .implant-about-white-wrapper {
        padding: 40px 20px 40px;
    }

    .mouthpiece-num {
        width: 70px;
        height: 70px;
    }

    .mouthpiece-num-num {
        font-size: 30px;
    }

    .mouthpiece-main-title {
        font-size: 1.5rem;
    }

    .mouthpiece-about-flex-item {
        padding: 70px 20px 30px;
    }

    .mouthpiece-wrapper,
    .diagnose-wrapper {
        padding: 50px 0 60px;
    }

    .orthodontics__flow {
        padding: 60px 0;
    }

    .orthodontics__flow .timeline li .time-line__flow-title {
        width: 30px;
        left: -40px;
    }

    .orthodontics__flow .timeline li::after {
        font-size: 23px;
        width: 45px;
        height: 45px;
    }

    .orthodontics__flow .time-line__img {
        width: 100%;
        margin-bottom: 10px;
    }

    .orthodontics__flow .base__title18rem {
        font-size: 1.2rem;
    }

    .orthodontics__flow .time-line__flex {
        padding: 0 0 40px 55px;
    }

    .orthodontics__flow .border-line {
        left: 22.5px;
    }

    .orthodontics__flow .timeline {
        max-width: calc(100% - 40px);
        margin: 0 0 50px 40px;
    }

    .orthodontics__flow .timeline li:last-of-type .time-line__flex {
        padding: 0 0 0 55px;
    }

    .implant01__wrapper {
        padding-top: 30px;
        padding-bottom: 20px;
    }

    .implant-page .base__bg-title-bl-title_small {
        font-size: 1.05rem;
    }

    .implant-choce-flex {
        flex-direction: column;
    }

    .implant-choice-flex-item {
        width: 100%;
        padding: 30px;
        margin-bottom: 20px;
    }

    .implant-choice-img {
        width: 140px;
    }

    .implant-page .base__bg-title-bl {
        height: 400px;
    }

    .circle-num-title-num {
        margin-right: 4px;
        width: 35px;
        height: 35px;
        font-size: 18px;
    }

    .circle-num-title-txt {
        font-size: 1.1rem;
    }

    .implant-sample-title {
        max-width: 100%;
        font-size: 1.2rem;
    }

    .implant-sample-flex {
        flex-direction: column;
        align-items: center;
    }

    .implant-sample-flex-item {
        width: 250px;
        margin-bottom: 30px;
    }

    .implant-sample-flex-item .base__title13rem {
        font-size: 1.2rem;
        margin-top: 0;
    }

    .implant-test-flex-item {
        padding: 20px;
        width: 100%;
        height: 250px;
    }

    .implant-about-wrapper {
        padding: 50px 0 50px;
    }

    .implant__flow {
        padding-top: 50px;
        padding-bottom: 10px;
    }

    .implant__flow .time-line__img {
        width: 100%;
    }

    .implant__flow .time-line__flex {
        padding: 0 0 40px 70px;
    }

    .implant__flow li:nth-of-type(4) .time-line__flex {
        padding: 0 0 30px 70px;
    }

    /* .implant-flow-flex-item div {
        height: 70px;
    } */

    .implant-flow-flex-item div {
        height: auto;
        width: 300px;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    .implant-flow-flex-item div img {
        height: auto;
        width: 100%;
        display: block;
    }

    .implant-flow-flex {
        width: calc(100% - 70px);
        margin-left: 70px;
    }

    .implant__flow .border-line {
        left: 25px;
    }

    .implant__flow .timeline li::after {
        font-size: 25px;
        width: 50px;
        height: 50px;
    }

    .implant-sample-flex-item:last-of-type {
        margin-bottom: 0;
    }

    .news-page .page-mv img {
        object-position: 60% 50%;
    }

    .preventive .page-mv img {
        object-position: 20% 50%;
    }

    .cosmetic__about-condition {
        margin: 40px 0 30px;
    }

    .cosmetic__about-condition-img {
        width: 250px;
        height: auto;
        margin-bottom: 20px;
    }

    .orthodontics__flow .timeline li:nth-of-type(3) .time-line__flow-title-position-relative::after,
    .orthodontics__flow .timeline li:nth-of-type(4) .time-line__flow-title-position-relative::after {
        border-width: 15.5px 15.5px 0 15.5px;
    }

    .implant-test-item-title .small {
        font-size: 12px;
        text-align: center;
        display: block;
    }
}


@media screen and (max-width: 500px) {
    .page-mv {
        height: 200px;
    }

    .btn-4column-bl-item a {
        height: 200px;
    }

    .icon-circle {
        width: 100px;
        height: 100px;
    }

    .icon-circle img {
        max-width: 80%;
        max-height: 70%;
    }

    .approach__about-title {
        font-size: 1.2rem;
        text-align: left;
    }

    .approach__about-title_blue {
        text-align: left;
        font-size: 1.1rem;
    }

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

    .approach__detail-title-txt_blue {
        font-size: 1.3rem;
    }

    .approach__white-bg,
    .page__white-bg {
        padding: 40px 20px;
    }

    .page__main-title_big {
        font-size: 2.6rem;
        line-height: 1.4;
    }

    .page .footer {
        padding-top: 50px;
    }

    .approach__detail-txt-title {
        text-align: left;
    }

    .cosmetic__about {
        margin-top: 30px;
    }

    .base__title18rem {
        font-size: 1.3rem;
    }

    .cosmetic__base-title {
        font-size: 1.3rem;
        text-align: left;
        margin-bottom: 20px;
    }

    .base__bg-title-bl-title {
        font-size: 1.4rem;
        margin-bottom: 15px;
    }

    .base__bg-title-bl-title_small {
        font-size: 1.1rem;
    }

    .hotetu-bg-blue-title {
        font-size: 1.2rem;
    }

    .hotetu-small-title-blue {
        text-align: left;
        font-size: 1.2rem;
    }

    .crrect-3point-item {
        width: 85px;
        height: 85px;
        margin-right: 10px;
        font-size: 1rem;
    }

    .cosmetic .page__main-title_big {
        font-size: 2.2rem;
        line-height: 1.4;
    }

    .page__main-title {
        left: 20px;
    }

    .cosmetic .page-mv img {
        object-position: 50% 50%;
    }

    .correct-to-detail-button a::after {
        width: 20px;
        height: 8px;
        right: 15px;
    }

    .correct-to-detail-button a {
        justify-content: flex-start;
        padding-left: 20px;
    }

    .kadomaru-card {
        padding: 60px 30px 40px;
    }

    .oral__botox-detail {
        padding: 40px 20px;
    }

    .botox-txt {
        text-align: left;
    }

    .botox-small-title {
        font-size: 1.2rem;
        text-align: left;
    }

    .oral__middle-title {
        text-align: left;
    }

    .menu-page .menu__list,
    .menu-page .menu__list:hover {
        width: 100%;
    }

    .menu-page .menu__content-bg,
    .menu-page .menu__list:hover .menu__content-bg {
        width: 250px;
    }

    .menu-page .menu__list.menu__list__last {
        height: 370px;
    }

    .menu-page .menu__list.menu__list__last:hover {
        height: 360px;
        margin-bottom: 20px;
    }

    .menu-page .menu__list__last .menu__content-bg {
        flex-direction: column;
        height: 370px;
    }

    .menu-page .menu__list.menu__list__last .menu__img,
    .menu-page .menu__list.menu__list__last:hover .menu__img {
        width: 100px;
        margin-right: 0;
        margin-bottom: 15px;
    }

    .menu-page .menu__txt-box,
    .menu-page .menu__list.menu__list__last:hover .menu__txt-box {
        width: 250px;
        flex-direction: column;
        align-items: center;
        margin-left: 0;
    }

    .menu-page .menu__list.menu__list__last .menu__list-title,
    .menu-page .menu__list.menu__list__last:hover .menu__list-title {
        font-size: 14.5px;
        font-weight: normal;
        margin-right: 0;
    }

    .menu-page .menu__list.menu__list__last .menu__cont-title,
    .menu-page .menu__list.menu__list__last:hover .menu__cont-title {
        font-size: 1rem;
        font-weight: normal;
        text-align: center;
        margin-top: 20px;
        margin-bottom: 10px;
    }

    .menu-page .menu__list.menu__list__last .menu__list-title_small,
    .menu-page .menu__list.menu__list__last:hover .menu__list-title_small {
        font-size: 0.7rem;
    }

    .access {
        padding-top: 30px;
        padding-bottom: 120px;
    }

    .access__menu-img-flex {
        transform: translateY(-50%);
        top: -120px;
    }

    .access__menu-img-flex-item {
        height: 150px;
    }

    .access__menu {
        padding-top: 120px;
        padding-bottom: 50px;
    }

    .access__main-flex-item.img {
        height: 200px;
    }

    .access__main-flex-item.cont {
        margin-top: 30px;
    }

    .access-page .footer__logo-big-txt {
        font-size: 1.4rem;
    }

    .doctor__profile-detail dt {
        width: 4.5rem;
    }

    .doctor__profile-detail dd {
        width: calc(100% - 4.5rem);
    }

    .question-title {
        margin-bottom: 20px;
        flex-direction: column;
        align-items: center;
    }

    .question-title-txt-bl {
        width: 100%;
    }

    .question-img {
        width: 40px;
    }

    .question-blue-small-title {
        font-size: 12px;
        text-align: center;
        margin-bottom: 10px;
    }

    .question-big-title {
        font-size: 1.1rem;
    }

    .base__title13rem {
        font-size: 1.1rem;
    }

    .doctor-page .approach-txt-bl.pa30 {
        padding: 20px 0 0;
    }

    .doctor__object-fit-img {
        height: 250px;
    }

    .doctor__object-fit-img img {
        object-fit: cover;
        width: 100%;
        height: 100%;
        vertical-align: bottom;
        object-position: 40% 10%;
    }

    .u500_mb20 {
        margin-bottom: 20px !important;
    }

    .pediatric__about {
        padding-top: 30px;
        padding-bottom: 60px;
    }

    .pediatric-care-icon {
        width: 80px;
        height: 80px;
    }

    .pediatric-care-flex {
        align-items: center;
    }

    .pediatric-care-cont {
        width: calc(100% - 95px);
        justify-content: flex-start;
    }

    .pediatric__care .base__ly-2column-item:last-of-type .pediatric-care-flex {
        margin-bottom: 10px;
    }


}

@media screen and (max-width: 400px) {
    .correct-to-detail-button a {
        padding-left: 10px;
        font-size: 0.9rem;
    }

    .correct-to-detail-button a::after {
        right: 10px;
    }

    .kadomaru-card {
        padding: 60px 20px 40px;
    }

    .doctor__main-img img {
        object-position: 65% 50%;
    }

    .doctor__main-messe-title {
        font-size: 1.1rem;
    }

    .doctor__object-fit-img img {
        object-position: 50% 10%;
    }

    .preventive .page-mv img {
        object-position: 30% 50%;
    }

    .preventive .page__main-title_big {
        font-size: 2.3rem;
        line-height: 1.4;
    }

}

/*---------------------------------pediatric修正20230303-------------*/

.base__bg-title-bl.pediatric-bg02 h4.catch {
    color: #fff;
    font-size: 21px;
    text-align: center;
    margin-bottom: 20px;
}

.orthodontics-box {
    padding-top: 60px;
}

.orthodontics-box h5 {
    background: #e1edf7;
    padding: 10px;
    font-size: 24px;
    margin-bottom: 30px;
}

.orthodontics-box h5 span {
    background: #94bee1;
    font-size: 16px;
    padding: 2px 10px;
    margin-left: 15px;
    color: #fff;
    display: inline-block;
}

.orthodontics-box .txt.center {
    text-align: center;
    margin-bottom: 30px;
}

.orthodontics-box .orthodontics_list {
    list-style: none;
}

.orthodontics-box .orthodontics_list li {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.orthodontics-box .orthodontics_list li .img {
    width: 48%;
}

.orthodontics-box .orthodontics_list li dl {
    position: relative;
    width: 49%;
}

.orthodontics-box .orthodontics_list li dl .insignia-img{
    margin-top: 30px;
    max-width: 280px;
    display: block;
}

.orthodontics-box .orthodontics_list li dl dt {
    font-size: 26px;
    margin-bottom: 30px;
}

.orthodontics-box .orthodontics_list li dl dt small {
    font-size: 21px;
    display: block;
}

.orthodontics-box .orthodontics_list li dl dd {
    font-size: 16px;
}

.orthodontics-box .invisalign_img {
    padding: 40px 0 80px;
}

.orthodontics-box .bg_gray {
    background: #fbfbfb;
    padding: 60px 80px;
    margin-bottom: 60px;
}

.orthodontics-box .bg_gray dl dt {
    text-align: center;
    font-size: 26px;
    margin-bottom: 30px;
}

.orthodontics-box .bg_gray dl dt small {
    font-size: 21px;
    display: block;
}

@media screen and (max-width: 900px) {
    .base__bg-title-bl.pediatric-bg02 h4.catch {
        font-size: 17px;
    }

    .orthodontics-box h5 {
        text-align: center;
        font-size: 20px;
    }

    .orthodontics-box h5 span {
        font-size: 13px;
    }

    .orthodontics-box .txt.center {
        text-align: left;
    }

    .orthodontics-box .orthodontics_list li {
        flex-wrap: wrap;
    }

    .orthodontics-box .orthodontics_list li .img {
        width: 100%;
        margin-bottom: 15px;
    }

    .orthodontics-box .orthodontics_list li dl {
        width: 100%;
    }

    .orthodontics-box .orthodontics_list li dl dt small {
        font-size: 14px;
    }

    .orthodontics-box .orthodontics_list li dl dt {
        font-size: 21px;
        margin-bottom: 15px;
        text-align: center;
    }

    .orthodontics-box .bg_gray {
        padding: 20px;
    }

    .orthodontics-box .bg_gray dl dt small {
        font-size: 14px;
    }

    .orthodontics-box .bg_gray dl dt {
        font-size: 21px;
        margin-bottom: 15px;
    }
}

.invisalign_img {
    text-align: center;
    padding: 40px 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}

.invisalign_img span {
    display: inline-block;
    padding: 0 20px;
    margin-bottom: 10px;
    width: 40%;
}

.invisalign_img span a{
    display: flex;
    justify-content: center;
    align-items: center;
}

.invisalign_img span img {
    width: 100%;
}

.bg_gray dd.flex {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center;
}

.bg_gray dd.flex .img {
    width: 48%;
}

.bg_gray dd.flex .txt {
    width: 48%;
}

@media screen and (max-width: 900px) {
    .bg_gray dd.flex .img {
        width: 100%;
        margin-bottom: 15px;
    }

    .bg_gray dd.flex .txt {
        width: 100%;
    }

    .orthodontics-box .bg_gray dl dt span {
        font-size: 12px;
    }
}

.orthodontics__flow .timeline li .time-line__flow-title {
    display: none;
}

@media screen and (max-width: 640px) {
    .orthodontics__flow .timeline {
        max-width: 100%;
        margin: 0 0 50px 0;
    }

    .invisalign_img span {
        display: block;
        width: 50%;
        padding: 0 10px;
    }

    .invisalign_img {
        padding: 20px 0 0;
    }

.orthodontics-box .invisalign_img {
    padding: 20px 0 40px;
}

.orthodontics-box .orthodontics_list li dl .insignia-img {
    margin: 30px auto 0;
}

}

.orthodontics__about-flex.pediatric {
    max-width: 900px;
    margin: 0 auto;
}

.orthodontics__about-flex.pediatric .orthodontics__about-flex-item {
    width: 28%;
    margin-bottom: 30px;
}

.pB0 {
    padding-bottom: 0 !important;
}

@media screen and (max-width: 640px) {
    .orthodontics__about-flex.pediatric .orthodontics__about-flex-item {
        width: 48.5%;
    }
}

.base__bg-title-bl.bite-bg {
    background-image: url("../cmn_img/implant/bite_bg.jpg");
}


.col1_list {
    list-style: none;
}

.col1_list li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 40px;
}

.col1_list li .img {
    width: 48%;
}

.col1_list li dl {
    width: 49%;
}

.col1_list li dl dt {
    font-size: 26px;
    margin-bottom: 30px;
}

.col1_list li dl dd {
    font-size: 16px;
}

@media screen and (max-width: 900px) {
    .col1_list li {
        flex-wrap: wrap;
    }

    .col1_list li .img {
        width: 100%;
        margin-bottom: 15px;
    }

    .col1_list li dl {
        width: 100%;
    }

    .col1_list li dl dt {
        font-size: 21px;
        margin-bottom: 15px;
        text-align: center;
    }
}