@font-face {
    src: url(../font/FuturaMedium.ttf);
    font-family: "futura";
}

body {
    font-family: zen-maru-gothic, sans-serif;
}

body {
    font-weight: 500;
}

.u-desktop {
    display: none;
}

html.is-fixed {
    overflow: hidden;
}

.l-important {
    margin-top: 45px;
    margin-top: 2.8125rem;
}

.l-wish {
    margin-top: 25px;
    margin-top: 1.5625rem;
}


/* ============================================================================
診察理念
============================================================================== */

.p-business {
    background-color: #ffeccb;
    padding-bottom: 25px;
    padding-bottom: 1.5625rem;
    padding-top: 30px;
    padding-top: 1.875rem;
}

.p-business__title {
    margin: 0 auto;
    width: 325px;
    width: 20.3125rem;
}

.p-business__head {
    background-color: #fff;
    font-size: 13px;
    font-size: 0.8125rem;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1.9090909091;
    margin-top: -20px;
    margin-top: -1.25rem;
    padding: 35px 0 25px;
    padding: 2.1875rem 0 1.5625rem;
    text-align: center;
}

.p-business__box {
    background-color: #fff;
    border-radius: 0.3125rem;
    margin-top: 20px;
    margin-top: 1.25rem;
    padding: 20px 15px 0px;
    padding: 1.25rem 0.9375rem 0rem;
}

.p-business__box-title {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: bold;
    letter-spacing: 0.1em;
    text-align: center;
}

.p-business__box-title span {
    display: block;
    font-size: 11px;
    font-size: 0.6875rem;
    font-weight: 400;
    letter-spacing: 0.1em;
    margin-top: 5px;
    margin-top: 0.3125rem;
    text-align: center;
}

.p-business__lists {
    counter-reset: number 0;
    margin-top: 15px;
    margin-top: 0.9375rem;
}

.p-business__list {
    letter-spacing: 0;
    padding: 18px 0;
    padding: 1.125rem 0;
    padding-left: 45px;
    padding-left: 2.8125rem;
    position: relative;
}

.p-business__list .underline {
    display: inline-block;
    position: relative;
    z-index: 1;
    font-weight: bold;
}

.p-business__list .underline::before {
    background-color: #FFECCF;
    border-radius: 0.1875rem;
    bottom: 3px;
    bottom: 0.1875rem;
    content: "";
    height: 6px;
    height: 0.375rem;
    left: 0;
    position: absolute;
    width: 100%;
    z-index: -1;
}

.p-business__list .small {
    font-size: 0.7rem;
    display: inline-block;
}

.p-business__list::before {
    background-image: linear-gradient(to right, #000, #000 3px, transparent 3px, transparent 8px);
    background-repeat: repeat-x;
    background-size: 8px 1px;
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.p-business__list::after {
    content: counter(number);
    counter-increment: number 1;
    font-size: 35px;
    font-size: 2.1875rem;
    font-weight: bold;
    height: 37px;
    height: 2.3125rem;
    left: 5px;
    left: 0.3125rem;
    position: absolute;
    top: 3px;
    top: 0.1875rem;
    width: 19px;
    width: 1.1875rem;
}


/* ============================================================================
歯を失う２つの原因
============================================================================== */

.p-important__box {
    border: 1px solid #000000;
    border: 0.0625rem solid #000000;
    border-radius: 0.3125rem;
    margin-top: 43px;
    margin-top: 2.6875rem;
    padding: 45px 30px;
    padding: 2.8125rem 1.875rem;
}

.p-important__img {
    margin: 0 auto;
    width: 186px;
    width: 11.625rem;
}

.p-important__subtitle {
    margin-top: 32px;
    margin-top: 2rem;
    text-align: center;
}

.p-important__subtitle span {
    display: inline-block;
    font-size: 16px;
    font-size: 1rem;
    letter-spacing: 0.1em;
    line-height: 1.625;
    position: relative;
}

.p-important__subtitle span::before {
    background-color: #FFECCF;
    border-radius: 0.1875rem;
    bottom: 3px;
    bottom: 0.1875rem;
    content: "";
    height: 6px;
    height: 0.375rem;
    left: 0;
    position: absolute;
    width: 100%;
    z-index: -1;
}

.p-important__text {
    margin-top: 35px;
    margin-top: 2.1875rem;
}

.p-wish {
    background-color: #ffece5;
    overflow: hidden;
    padding-bottom: 38px;
    padding-bottom: 2.375rem;
    padding-top: 37px;
    padding-top: 2.3125rem;
}

.p-wish__subtitle {
    letter-spacing: 0.1em;
    line-height: 1.625;
    margin-top: 55px;
    margin-top: 3.4375rem;
    text-align: center;
}

.p-wish__subtitle span {
    position: relative;
    z-index: 2;
}

.p-wish__subtitle span::before {
    background-color: #fff;
    border-radius: 0.1875rem;
    bottom: -3px;
    bottom: -0.1875rem;
    content: "";
    height: 6px;
    height: 0.375rem;
    left: 0;
    position: absolute;
    width: 100%;
    z-index: -1;
}

.p-wish__slider {
    margin: 0 auto;
    margin-top: 30px;
    margin-top: 1.875rem;
    max-width: 322px;
    max-width: 20.125rem;
}

.p-wish__slider .slick-list {
    overflow: unset;
}

.p-wish__slider-item {
    background-color: #fff;
    border-radius: 0.3125rem;
    margin: 0 8px;
    margin: 0 0.5rem;
    padding: 30px 25px;
    padding: 1.875rem 1.5625rem;
}

.p-wish__figure {
    margin: 0 auto;
    width: 95px;
    width: 5.9375rem;
}

.p-wish__item-title {
    margin-top: 15px;
    margin-top: 0.9375rem;
}

.p-wish__text {
    letter-spacing: 0.1em;
    margin-top: 16px;
    margin-top: 1rem;
}

@media screen and (min-width: 768px) {
    .u-desktop {
        display: block;
    }
    .u-mobile {
        display: none;
    }
    .l-important {
        margin-top: 6.875rem;
    }
    .l-wish {
        margin-top: 9.0625rem;
    }
    .p-business {
        padding-bottom: 6.5625rem;
        padding-top: 4.6875rem;
    }
    .p-business__inner.l-inner {
        max-width: 1252px;
    }
    .p-business__title {
        width: 39.0625rem;
    }
    .p-business__head {
        border-radius: 0.625rem;
        font-size: max(1.25rem, 15px);
        line-height: 1.65;
        margin-top: -2.8125rem;
        padding: 6.0625rem 0 3.9375rem;
    }
    .p-business__box {
        border-radius: 0.625rem;
        border-radius: 0.625rem;
        margin-top: 2rem;
        padding: 3.9375rem 4.5625rem 0rem;
    }
    .p-business__box-title {
        font-size: 2.1875rem;
        letter-spacing: 0.04em;
    }
    .p-business__box-title span {
        font-size: max(0.9375rem, 14px);
        margin-top: 0.625rem;
    }
    .p-business__lists {
        margin-top: 3.5625rem;
    }
    .p-business__list {
        font-size: max(1.0625rem, 16px);
        padding: 3.125rem 0;
        padding-left: 10.125rem;
    }
    .p-business__list .small {
        font-size: 0.9rem;
        display: inline-block;
    }
    .p-business__list::after {
        font-size: 4.5rem;
        left: 2.875rem;
        letter-spacing: 0.08em;
        top: 0.3125rem;
    }
    .p-important__inner.l-inner {
        max-width: 1470px;
    }
    .p-important__box {
        border-radius: 0.625rem;
        border-width: 0.125rem;
        margin-top: 5rem;
        padding: 7.1875rem 1.5625rem 8.4375rem;
    }
    .p-important__img {
        width: 20.625rem;
    }
    .p-important__subtitle {
        margin-top: 4rem;
    }
    .p-important__subtitle span {
        font-size: 1.875rem;
    }
    .p-important__subtitle span::before {
        border-radius: 0.375rem;
        height: 0.6875rem;
        width: 105%;
    }
    .p-important__text {
        margin: 0 auto;
        margin-top: 3.4375rem;
        max-width: max(50.375rem, 650px);
    }
    .p-wish {
        background-color: transparent;
        padding-top: 4.6875rem;
    }
    .p-wish__inner.l-inner {
        max-width: 1470px;
    }
    .p-wish__box {
        background-color: #ffece5;
        border-radius: 0.625rem;
        margin-top: 5.25rem;
        padding: 4.6875rem 1.25rem 5rem;
    }
    .p-wish__subtitle {
        font-size: 1.875rem;
        line-height: 1;
        margin-top: 0;
    }
    .p-wish__subtitle span::before {
        border-radius: 0.375rem;
        height: 0.6875rem;
    }
    .p-wish__slider {
        gap: 1.25rem;
        display: grid;
        margin: 0 auto;
        margin-top: 3.5625rem;
        max-width: 64.5rem;
    }
    .p-wish__slider-item {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        border-radius: 0.625rem;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        padding: 2.1875rem 7.1875rem 2.1875rem 3.125rem;
    }
    .p-wish__figure {
        width: 8.625rem;
    }
    .p-wish__content {
        padding-left: 3.125rem;
        width: calc(100% - 8.625rem);
    }
    .p-wish__item-title {
        margin-top: 0;
    }
    .p-wish__text {
        letter-spacing: normal;
    }
}