@charset "UTF-8";
body {
    line-height: 1
}

ol,
ul {
    list-style: none
}

blockquote,
q {
    quotes: none
}

blockquote:after,
blockquote:before,
q:after,
q:before {
    content: '';
    content: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

button {
    background-color: transparent;
    outline: 0;
    border: 0;
    cursor: pointer
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Shippori Mincho", serif;
    font-weight: 700;
    color: #333;
    line-height: 1
}

h1 {
    font-size: 100%
}

h2 {
    font-size: 5.4rem
}

h3 {
    font-size: 2.4rem
}

a:hover,
a:visited:hover {
    color: var(--loud-color);
    text-decoration: none
}

a:focus {
    outline: 0;
    text-decoration: none
}

.italic {
    font-style: italic
}

.bold {
    font-weight: 700
}

.more {
    /* transition: all .3s ease-in-out; */
    /* -webkit-transition: all .3s ease-in-out; */
    -moz-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out
}

.nav-bar-menu ul li a:hover {
    color: var(--loud-color)
}

.nav-bar-menu ul:nth-child(2) {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -.6rem
}

.nav-bar-menu ul:nth-child(2) li {
    width: 50%;
    padding: 0 .6rem;
    margin-bottom: 1.5rem
}

.nav-bar-menu ul:nth-child(2) li a {
    background: #988102;
    line-height: 6rem;
    border-radius: 1rem;
    font-size: 2.4rem;
    color: #fff;
    text-align: center;
    text-decoration: none;
    display: block;
    position: relative
}

.nav-bar-menu ul:nth-child(2) li a::before {
    position: absolute;
    left: 2rem;
    top: 50%;
    transform: translateY(-50%);
    background-image: url(../images/icon_menu_arows_2.webp);
    margin-right: 0
}

.nav-bar-menu ul:nth-child(2) li a:hover {
    background: #3aa794
}

.nav-bar-menu ul:nth-child(3) {
    margin-bottom: 0
}

.nav-bar-menu ul:nth-child(3) li a:hover {
    opacity: .7
}

.nav-bar-menu ul:nth-child(4) {
    margin-bottom: 0
}

.nav-bar-menu ul:nth-child(4) li {
    margin-bottom: 1.5rem
}

.nav-bar-menu ul:nth-child(4) li a {
    line-height: 6rem;
    border-radius: 1rem;
    font-size: 2.4rem;
    text-align: center;
    text-decoration: none;
    display: block;
    position: relative;
    background: #ebe7cf
}

.nav-bar-menu ul:nth-child(4) li a::before {
    position: absolute;
    left: 2rem;
    top: 50%;
    transform: translateY(-50%);
    margin-right: 0
}

.nav-bar-menu ul:nth-child(4) li a:hover {
    background: #3aa794;
    color: #333
}

@media (max-width: 768px) {
    .nav-bar-menu__head {
        margin-bottom: 3.5rem;
        text-align: center;
        padding-top: 4rem;
        position: relative
    }
    .nav-bar-menu__head .logo {
        width: 36.5rem;
        margin: 0 auto
    }
    .nav-bar-menu__head .btn-menu {
        width: 10rem;
        position: absolute;
        top: 0;
        right: -4rem
    }
    .nav-bar-menu ul:nth-child(2) {
        margin: 0 -1rem
    }
    .nav-bar-menu ul:nth-child(2) li {
        padding: 0 1rem;
        margin-bottom: 2rem
    }
    .nav-bar-menu ul:nth-child(2) li a {
        line-height: 7rem;
        font-size: 4rem
    }
    .nav-bar-menu ul:nth-child(4) li {
        margin-bottom: 2rem
    }
    .nav-bar-menu ul:nth-child(4) li a {
        line-height: 7rem;
        font-size: 4rem
    }
}

.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent
}

.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0
}

.slick-list:focus {
    outline: 0
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand
}

.slick-slider .slick-list,
.slick-slider .slick-track {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: block;
    margin-left: auto;
    margin-right: auto
}

.slick-track:after,
.slick-track:before {
    display: table;
    content: ''
}

.slick-track:after {
    clear: both
}

.slick-loading .slick-track {
    visibility: hidden
}

.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px
}

[dir=rtl] .slick-slide {
    float: right
}

.slick-slide img {
    display: block
}

.slick-slide.slick-loading img {
    display: none
}

.slick-slide.dragging img {
    pointer-events: none
}

.slick-initialized .slick-slide {
    display: block
}

.slick-loading .slick-slide {
    visibility: hidden
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent
}

.slick-arrow.slick-hidden {
    display: none
}

.slick-arrow {
    text-indent: -9999px;
    width: 6rem;
    height: 6rem;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 9;
    background-size: 100% auto;
    background-repeat: no-repeat
}

.slick-prev {
    left: 0;
    background-image: url(../images/slick_prev.webp)
}

.slick-next {
    right: 0;
    background-image: url(../images/slick_next.webp)
}

.slick-dots {
    padding-top: 5rem;
    display: flex;
    align-items: center;
    justify-content: center
}

.slick-dots li {
    padding: 0 .5rem
}

.slick-dots li button {
    padding: 0;
    text-indent: -9999px;
    width: 1.5rem;
    height: 1.5rem;
    border: 1px solid #1a1a1a;
    border-radius: 50%;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out
}

.slick-dots li button:hover {
    background: #1a1a1a
}

.slick-dots li.slick-active button {
    background: #1a1a1a
}

html {
    font-size: 10px
}

body {
    background: #fff;
    font-family: source-han-sans-japanese, sans-serif;
    color: var(--text-color);
    font-size: 1.8rem;
    line-height: 1.88889;
    overflow-x: hidden;
    font-weight: 400;
    letter-spacing: 0;
    width: 100%
}

body.is_active {
    height: 100vh;
    overflow: hidden;
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    z-index: -1
}

body.is_active .menu-bg {
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, .33);
    position: fixed;
    overflow: hidden;
    top: 0;
    left: 0;
    z-index: 99
}

hr {
    -moz-border-bottom-colors: none;
    -moz-border-left-colors: none;
    -moz-border-right-colors: none;
    -moz-border-top-colors: none;
    border-color: #000 -moz-use-text-color -moz-use-text-color;
    border-image: none;
    border-style: solid none none;
    border-width: .2em 0 0 0;
    margin: 0
}

.container {
    width: 100%;
    max-width: 111rem;
    padding: 0 1.5rem;
    margin: 0 auto
}

p {
    /* margin-bottom: 1.5rem; */
}

input:focus {
    outline: 0
}

a img:hover {
    opacity: .7
}

.w-100 {
    width: 100%!important
}

.text-center {
    text-align: center!important
}

.text-right {
    text-align: right!important
}

.d-flex {
    /* display: flex; */
    /* flex-wrap: wrap; */
}

.justify-content-center {
    justify-content: center
}

.justify-content-end {
    justify-content: flex-end
}

.align-items-start {
    align-items: start
}

.align-items-end {
    align-items: end
}

.flex-row-reverse {
    flex-direction: row-reverse
}

.d-none {
    display: none
}

.mb0 {
    margin-bottom: 0!important
}

.head-box {
    text-align: center;
    margin-bottom: 5rem
}

.head-box p {
    margin-bottom: 2rem;
    padding-bottom: 2rem;
    line-height: 1;
    position: relative;
    font-size: 2.4rem;
    font-weight: 600;
    color: #988004;
    font-family: "Shippori Mincho", serif
}

.head-box p::after {
    content: '';
    width: 2rem;
    height: 1px;
    background: #988004;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%)
}

.head-box h2 {
    font-weight: 600
}

.head-box.--white p {
    color: #fff
}

.head-box.--white p::after {
    background: #fff
}

.head-box.--white h2 {
    color: #fff
}

@media (max-width: 768px) {
    .head-box {
        margin-bottom: 4rem
    }
    .head-box p {
        font-size: 4rem
    }
    .head-box h2 {
        font-size: 6rem;
        line-height: 7.4rem
    }
}

.header__main--btn .btn-menu {
    width: 12rem;
    cursor: pointer;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out
}

.header__main--btn .btn-menu:hover {
    opacity: .7
}

@media (max-width: 768px) {
    .header__main {
        /* padding-left:4rem; */
        /* height: 10rem; */
    }
    .header__main .logo {
        width: 30.6rem
    }
    .header__main--btn .more {
        display: none
    }
    .header__main--btn .btn-menu {
        width: 10rem
    }
}

.banner {
    background-image: url(../images/fv_bg.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    margin-top: 12rem
}

.banner .container {
    max-width: 115.1rem
}

.banner__main {
    display: flex
}

.banner__main--images {
    width: 100%;
    margin-bottom: -15rem
}

.interested-box {
    padding: 19rem 0 10rem;
    background-image: url(../images/interested_bg.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom
}

.interested-box .head {
    text-align: center;
    margin-bottom: 3.5rem
}

.interested-box .head h2 {
    color: #fff;
    font-size: 5rem;
    line-height: 8rem;
    font-weight: 600
}

.interested-box .head h2 span {
    font-size: 3.4rem;
    line-height: 5.4rem
}

.interested-box__main--images {
    padding: 0 4rem;
    margin-bottom: 5rem
}

.interested-box__main--text {
    background: rgba(255, 255, 255, .75);
    padding: 4rem 1rem;
    text-align: center
}

.interested-box__main--text p {
    margin-bottom: 0;
    color: #1a351a
}

.director-box {
    background-image: url(../images/bg_1.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center
}

.director-box__main {
    padding: 8rem 0 9rem 33rem;
    position: relative;
    z-index: 1
}

.director-box__main--images {
    width: 92.9rem;
    position: absolute;
    left: -16rem;
    bottom: 0;
    z-index: -1
}

.director-box__main--text {
    text-align: center
}

.director-box__main--text p {
    margin-bottom: 0;
    font-size: 2.4rem;
    line-height: 5.4rem;
    color: #333;
    font-weight: 600;
    font-family: "Shippori Mincho", serif
}

.director-box__main--text h3 {
    color: #988004;
    font-size: 3.4rem;
    line-height: 6.2rem;
    text-decoration: underline;
    font-weight: 600
}

.consultations-box {
    padding: 10rem 0;
    background-image: url(../images/bg_2.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center top;
    overflow: hidden
}

.consultations-box .head {
    margin-bottom: 5rem
}

.consultations-box__main {
    width: 100%;
    max-width: 62rem;
    background: #fff;
    padding: 4.5rem 3.5rem;
    margin-bottom: 8rem;
    text-align: center
}

.consultations-box__main h3 {
    font-weight: 600;
    font-size: 4rem;
    line-height: 5.4rem;
    border-bottom: 1px dashed #3333;
    padding-bottom: 3.5rem;
    margin-bottom: 3.5rem
}

.consultations-box__main h3 span {
    font-size: 3rem;
    line-height: 5.4rem;
    color: #988004
}

.consultations-box__main p {
    margin-bottom: 0
}

.consultations-box__step--head {
    text-align: center;
    margin-bottom: 4rem
}

.consultations-box__step--head h3 {
    font-size: 3.4rem;
    line-height: 5.4rem;
    color: #1a1a1a;
    font-style: italic;
    font-weight: 600
}

.consultations-box__step--list {
    margin: 0 -5rem 2rem
}

.consultations-box__step--list .list__items {
    width: calc(100% / 3);
    padding: 0 5rem;
    position: relative
}

.consultations-box__step--list .list__items::after {
    content: '';
    width: 4rem;
    height: 6rem;
    background-image: url(../images/icon_arows_1.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translate(-50%, -50%)
}

.consultations-box__step--list .list__items:first-child::after {
    display: none
}

.consultations-box__step--list .list__items main {
    display: block;
    width: 100%;
    height: 100%;
    background: #fff;
    border: 1px solid #988004;
    padding: 4rem .5rem;
    text-align: center
}

.consultations-box__step--list .list__items--head {
    margin-bottom: 1.5rem;
    padding-bottom: 2.5rem;
    position: relative
}

.consultations-box__step--list .list__items--head span {
    color: #988004;
    font-size: 2.4rem;
    line-height: 1;
    font-weight: 600;
    font-family: "Shippori Mincho", serif;
    display: block;
    margin-bottom: 1rem
}

.consultations-box__step--list .list__items--head h3 {
    line-height: 1;
    font-weight: 600;
    font-size: 3.4rem;
    color: #988004
}

.consultations-box__step--list .list__items--head::after {
    content: '';
    width: 2rem;
    height: 1px;
    background: #988004;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%)
}

.consultations-box__step--list .list__items p {
    margin-bottom: 0;
    line-height: 3rem
}

.consultations-box__step--des {
    text-align: center;
    line-height: 2.1rem
}

.cta-box__main {
    position: relative;
    margin-top: 6rem;
}

.cta-box__main--btn {
    /* width: 100%; */
    /* overflow: hidden; */
    /* position: absolute; */
    /* bottom: 5rem; */
    /* left: 0; */
    /* padding: 0 5.5rem; */
}

.cta-box__main--btn .d-flex {
    /* margin: 0 -1.25rem; */
}

.cta-box__main--btn .items {
    /* width: 50%; */
    /* padding: 0 1.25rem; */
}

.case-box {
    padding: 10rem 0;
    overflow: hidden
}

.case-box__slider {
    margin-bottom: 5rem
}

.case-box__slider .btn {
    display: flex;
    justify-content: center;
    padding-top: 2.5rem
}

.case-box__slider .btn .more {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 54rem;
    line-height: 6rem;
    background: #3aa794;
    border-radius: 1rem;
    font-size: 2.6rem;
    color: #fff;
    font-weight: 600;
    font-family: "Shippori Mincho", serif
}

.case-box__slider .btn .more::after {
    content: '';
    width: 1.2rem;
    height: 1.6rem;
    background-image: url(../images/icon_arows_2.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    margin-left: 2rem
}

.case-box__slider .btn .more:hover {
    background: #988004;
    color: #fff
}

.case-box__main {
    text-align: center;
    background: #eeede5;
    border-radius: 1rem;
    padding: 4rem 1.5rem 4.5rem
}

.case-box__main h3 {
    font-size: 3.4rem;
    line-height: 5.4rem;
    font-weight: 600;
    color: #988004
}

.case-box__main--images {
    margin-bottom: 2rem
}

.case-box__main--images img {
    width: 100%;
    max-width: 88rem
}

.case-box__main .labels {
    margin-bottom: 1rem
}

.case-box__main .labels span {
    display: inline-block;
    width: 100%;
    max-width: 50rem;
    line-height: 4rem;
    background: transparent linear-gradient(90deg, #57575700 0, #57575729 3%, #57575777 9%, #575757B3 17%, #575757DE 25%, #575757F7 35%, #575757 50%, #575757F8 66%, #575757DF 76%, #575757B6 84%, #5757577B 91%, #5757572F 97%, #57575700 100%) 0 0 no-repeat padding-box;
    font-size: 2.4rem;
    color: #fff;
    font-family: "Shippori Mincho", serif
}

.case-box__main p {
    margin-bottom: 0;
    font-family: "Shippori Mincho", serif
}

.slider {
    margin: 0 -2.5rem
}

.slider__items {
    padding: 0 2.5rem
}

.slider__items main {
    display: block;
    width: 100%;
    height: 100%;
    border: 1px solid #988004;
    background: #fff
}

.slider__items--thumbnail {
    margin-bottom: 2rem
}

.slider__items--thumbnail picture {
    display: block;
    width: 100%;
    height: 46rem
}

.slider__items--thumbnail picture img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center
}

.slider__items--text {
    padding: 0 2rem 1.5rem
}

.slider__items--text time {
    display: block;
    font-size: 2rem;
    grid-row: 600;
    line-height: 1;
    color: #988004;
    margin-bottom: 1rem;
    font-family: "Shippori Mincho", serif
}

.slider__items--text p {
    margin-bottom: 0;
    font-size: 2rem;
    line-height: 3rem;
    font-weight: 600;
    color: #1a1a1a;
    font-family: "Shippori Mincho", serif
}

.slider__items--btn a {
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 4rem;
    background: #988004;
    text-align: center;
    font-size: 2rem;
    color: #fff;
    font-family: "Shippori Mincho", serif;
    font-weight: 600
}

.slider__items--btn a::after {
    content: '';
    width: .8rem;
    height: 1.2rem;
    background-image: url(../images/icon_arows_2.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    margin-left: 1.5rem
}

.slider__items--btn a:hover {
    background: #1a1a1a;
    color: #fff
}

.implant-box {
    padding: 10rem 0;
    background-image: url(../images/implant_bg.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: right bottom
}

.implant-box .container {
    max-width: 103rem
}

.implant-box__main--thumbnail {
    width: 30rem
}

.implant-box__main--text {
    width: calc(100% - 30rem);
    padding-left: 5rem
}

.implant-box__main--text p {
    margin-bottom: 1rem;
    font-size: 1.8rem;
    line-height: 3.6rem;
    color: #988004;
    font-family: "Shippori Mincho", serif
}

.implant-box__main--text p span {
    padding: 0 .5rem;
    background: #fff
}

.implant-box__main--text h3 {
    color: #fff;
    font-size: 2.4rem;
    line-height: 3.8rem;
    font-weight: 600
}

.features-box {
    padding: 10rem 0;
    background-image: url(../images/bg_3.webp);
    background-position: 0 0;
    background-repeat: repeat
}

.features-box__main {
    border: 1px solid #988004;
    background: #fff;
    margin-bottom: 5rem
}

.features-box__main--head {
    height: 9rem;
    background: transparent linear-gradient(90deg, #af964a 0, #978000 100%);
    display: flex;
    justify-content: center;
    align-items: flex-end;
    font-size: 4.4rem;
    line-height: 1.4;
    font-weight: 600;
    color: #fff;
    font-family: "Shippori Mincho", serif;
    padding-bottom: 2rem
}

.features-box__main--head span {
    font-size: 10rem;
    line-height: 1;
    margin-right: 2rem;
    text-shadow: 0 0 15px #988004
}

.features-box__main .main {
    padding: 5rem
}

.features-box__main--post {
    margin-bottom: 5rem
}

.features-box__main--post .thumbnail {
    width: 44rem
}

.features-box__main--post .text {
    width: calc(100% - 44rem);
    padding-left: 5rem
}

.features-box__main--post .text h3 {
    margin-bottom: 2rem;
    font-size: 3.4rem;
    line-height: 6.7rem;
    color: #988004;
    font-weight: 600
}

.features-box__main--post .text h3 span {
    background: #dad6c4;
    padding: 0 .5rem
}

.features-box__main--post .text p {
    margin-bottom: 4rem;
    font-size: 1.8rem;
    line-height: 4rem
}

.features-box__main--post .text p span {
    font-weight: 700;
    text-decoration: underline
}

.features-box__main--post .text p:last-child {
    margin-bottom: 0
}

.features-box__main--post.--reverse {
    flex-direction: row-reverse
}

.features-box__main--post.--reverse .text {
    padding-left: 0;
    padding-right: 5rem
}

.features-box__main--post.--post2 {
    flex-direction: row-reverse
}

.features-box__main--post.--post2 .thumbnail {
    width: 44.6rem
}

.features-box__main--post.--post2 .text {
    width: calc(100% - 44.6rem);
    padding-left: 0;
    padding-right: 5rem
}

.features-box__main--post.--post2 .text p {
    line-height: 3.4rem
}

.features-box__main--post.--post3 .thumbnail {
    width: 49rem
}

.features-box__main--post.--post3 .text {
    width: calc(100% - 49rem);
    padding-left: 0
}

.features-box__main--post.--post3 .text p {
    line-height: 3.4rem
}

.features-box__main--post.--post4 .thumbnail {
    width: 46.5rem
}

.features-box__main--post.--post4 .text {
    width: calc(100% - 46.5rem)
}

.features-box__main--post.--post4 .text p {
    line-height: 3.4rem;
    margin-bottom: 3rem
}

.features-box__main--labels {
    margin-bottom: 7.8rem;
    text-align: center;
    line-height: 7.6rem;
    background: #988004;
    border-radius: 4rem;
    padding: 0 1rem;
    font-size: 3.4rem;
    color: #fff;
    font-weight: 600;
    font-family: "Shippori Mincho", serif;
    position: relative
}

.features-box__main--labels::after {
    content: '';
    width: 0;
    height: 0;
    border-left: 1.7rem solid transparent;
    border-right: 1.7rem solid transparent;
    border-top: 2.8rem solid #988004;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 99%)
}

.features-box__main--list {
    padding-bottom: 9rem;
    margin-bottom: 5rem;
    position: relative
}

.features-box__main--list::after {
    content: '';
    width: 6rem;
    height: 4rem;
    background-image: url(../images/icon_arows_3.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%)
}

.features-box__main--list h3 {
    text-align: center;
    margin-bottom: 3rem;
    font-size: 3.4rem;
    line-height: 5rem;
    color: #988004;
    font-weight: 600;
    background: #dad6c4
}

.features-box__main--list p {
    margin-bottom: 4rem
}

.features-box__main--list .list .d-flex {
    margin: 0 -2.5rem
}

.features-box__main--list .list__items {
    width: 50%;
    padding: 0 2.5rem
}

.features-box__main--list .list__items .main {
    border: 1px solid #988004;
    padding: 5rem;
    text-align: center
}

.features-box__main--list .list__items h2 {
    margin-bottom: 5rem;
    font-size: 3.4rem;
    line-height: 1;
    font-weight: 600
}

.features-box__main--list .list__items main {
    counter-reset: section
}

.features-box__main--list .list__items--box {
    margin-bottom: 6rem;
    background: #dad6c4;
    padding: 2.5rem 2rem;
    position: relative
}

.features-box__main--list .list__items--box::before {
    counter-increment: section;
    content: "0" counter(section) "";
    width: 7rem;
    height: 7rem;
    font-size: 2.4rem;
    line-height: 1;
    color: #fff;
    font-weight: 600;
    font-family: "Shippori Mincho", serif;
    background-image: url(../images/labels_bg_2.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    top: 0;
    left: 0;
    text-align: left;
    padding-top: 1rem;
    padding-left: .5rem
}

.features-box__main--list .list__items--box::after {
    content: '';
    width: 3.1rem;
    height: 2.1rem;
    background-image: url(../images/icon_arows_dow.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translate(-50%, 200%)
}

.features-box__main--list .list__items--box h3 {
    font-size: 2.4rem;
    line-height: 1.4;
    font-weight: 600;
    margin-bottom: 0;
    color: #1a1a1a;
    background: 0 0
}

.features-box__main--list .list__items--box p {
    font-size: 1.6rem;
    margin-bottom: 0
}

.features-box__main--list .list__items--box:last-child {
    margin-bottom: 0;
    background: grey
}

.features-box__main--list .list__items--box:last-child h3 {
    color: #fff
}

.features-box__main--list .list__items--box:last-child::after,
.features-box__main--list .list__items--box:last-child::before {
    display: none
}

.features-box__main--list .list__items--txt {
    padding-top: 4.5rem
}

.features-box__main--list .list__items:last-child .main {
    background: #dad6c4;
    border: none
}

.features-box__main--list .list__items:last-child .list__items--box {
    background: #fff
}

.features-box__main--list .list__items:last-child .list__items--box:last-child {
    background: #bd3e68
}

.features-box__main--list.--list2 {
    padding-bottom: 0
}

.features-box__main--list.--list2::after {
    display: none
}

.features-box__main--list.--list2 .thumbnail {
    margin-bottom: 4rem
}

.features-box__main--list.--list2 p {
    margin-bottom: 0
}

.features-box__main--thumbnail {
    margin-bottom: 5rem
}

.features-box__main--pickup {
    background: #eeede5;
    padding: 4rem;
    position: relative;
    margin-bottom: 5rem
}

.features-box__main--pickup::after {
    content: '';
    width: 16.8rem;
    height: 16.8rem;
    background-image: url(../images/icon_pickup.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    top: -1rem;
    left: -1rem
}

.features-box__main--pickup .text {
    width: calc(100% - 42rem);
    padding-right: 2rem;
    text-align: center
}

.features-box__main--pickup .text h3 {
    font-size: 3.4rem;
    line-height: 5.4rem;
    font-weight: 600;
    color: #988004
}

.features-box__main--pickup .text p {
    margin-bottom: 0;
    line-height: 4rem
}

.features-box__main--pickup .thumbnail {
    width: 42rem
}

.features-box__main--btn {
    display: flex;
    justify-content: center
}

.features-box__main--btn .more {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 54rem;
    line-height: 6rem;
    background: #3aa794;
    border-radius: 1rem;
    font-size: 2.6rem;
    color: #fff;
    font-weight: 600;
    font-family: "Shippori Mincho", serif
}

.features-box__main--btn .more::after {
    content: '';
    width: 1.2rem;
    height: 1.6rem;
    background-image: url(../images/icon_arows_2.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    margin-left: 2rem
}

.features-box__main--btn .more:hover {
    background: #988004;
    color: #fff
}

.features-box__main--btn.--btn2 {
    margin: 0 -2.5rem
}

.features-box__main--btn.--btn2 .items {
    width: 50%;
    padding: 0 2.5rem
}

.features-box__main--btn.--btn2 .items .more {
    max-width: 100%
}

.safety-box {
    padding: 10rem 0;
    background-image: url(../images/safety_bg.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom
}

.safety-box__main h3 {
    font-size: 3.4rem;
    line-height: 5.8rem;
    color: #fff;
    font-weight: 600;
    margin-bottom: 2rem
}

.safety-box__main h3 span {
    background: transparent linear-gradient(90deg, #c4b278 0, #9b8408 100%)
}

.safety-box__main p {
    margin-bottom: 4rem;
    line-height: 4rem
}

.safety-box__main .btn .more {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 54rem;
    line-height: 6rem;
    background: #3aa794;
    border-radius: 1rem;
    font-size: 2.6rem;
    color: #fff;
    font-weight: 600;
    font-family: "Shippori Mincho", serif
}

.safety-box__main .btn .more::after {
    content: '';
    width: 1.2rem;
    height: 1.6rem;
    background-image: url(../images/icon_arows_2.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    margin-left: 2rem
}

.safety-box__main .btn .more:hover {
    background: #988004;
    color: #fff
}

.variously-box {
    padding: 10rem 0;
    overflow: hidden
}

.variously-box__main .d-flex {
    margin: 0 -2.5rem
}

.variously-box__main--items {
    width: 50%;
    padding: 0 2.5rem;
    margin-bottom: 5rem
}

.variously-box__main--items main {
    display: block;
    width: 100%;
    height: 100%;
    border: 1px solid #988004;
    padding: 4rem 1rem;
    text-align: center
}

.variously-box__main--items h3 {
    font-size: 3.4rem;
    line-height: 1;
    font-weight: 600;
    color: #988004;
    margin-bottom: 2rem;
    padding-bottom: 2.5rem;
    position: relative
}

.variously-box__main--items h3::after {
    content: '';
    width: 2rem;
    height: 1px;
    background: #988004;
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%)
}

.variously-box__main--items p {
    margin-bottom: 0;
    line-height: 3rem
}

.variously-box__des {
    margin-top: -3rem;
    position: relative
}

.variously-box__des--text {
    position: absolute;
    right: 0;
    top: 0;
    padding-top: 10rem;
    padding-right: 8.5rem;
    text-align: center
}

.variously-box__des--text h3 {
    font-size: 3.4rem;
    line-height: 4.8rem;
    font-weight: 600;
    color: #988004;
    margin-bottom: 1rem
}

.variously-box__des--text p {
    margin-bottom: 1.5rem
}

.variously-box__des--text p span {
    font-size: 1.4rem
}

.about-box {
    padding: 10rem 0;
    background-image: url(../images/bg_4.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover
}

.about-box__main {
    background: #fff;
    padding: 5rem 5rem 2.5rem;
    position: relative;
    z-index: 1;
    box-shadow: 0 0 20px rgba(152, 128, 4, .2)
}

.about-box__main--thumbnail {
    margin-bottom: 4rem
}

.about-box__main h3 {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 4rem;
    font-size: 4.4rem;
    color: #988004;
    line-height: 1;
    font-weight: 600
}

.about-box__main h3::before {
    content: '';
    width: 6rem;
    height: 4rem;
    background-image: url(../images/icon_arows_3.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    margin-right: 1.5rem
}

.about-box__main ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -1.25rem
}

.about-box__main ul li {
    width: 50%;
    margin-bottom: 2.5rem;
    padding: 0 1.25rem
}

.about-box__main ul li span {
    display: block;
    background: #dad6c4;
    line-height: 7rem;
    border-radius: 1rem;
    text-align: center;
    font-size: 2.4rem;
    font-weight: 600;
    font-family: "Shippori Mincho", serif
}

.about-box__main ul li:first-child {
    width: 100%
}

.about-box__des {
    text-align: center;
    background: grey;
    margin-bottom: 5rem;
    padding: 1.5rem
}

.about-box__des p {
    margin-bottom: 0;
    font-size: 2.4rem;
    line-height: 3.8rem;
    color: #fff;
    font-weight: 600;
    font-family: "Shippori Mincho", serif
}

.about-box__step--items {
    background: #fff;
    box-shadow: 0 0 20px rgba(152, 128, 4, .2);
    padding: 5rem;
    margin-bottom: 5rem;
    position: relative
}

.about-box__step--items::after {
    content: '';
    width: 6rem;
    height: 4rem;
    background-image: url(../images/icon_arows_3.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translate(-50%, 50%)
}

.about-box__step--items .thumbnail {
    width: 46.5rem
}

.about-box__step--items .text {
    width: calc(100% - 46.5rem);
    padding-left: 5rem
}

.about-box__step--items .text__labels {
    margin-bottom: 1.5rem
}

.about-box__step--items .text__labels span {
    display: inline-block;
    line-height: 5rem;
    text-align: center;
    background-image: url(../images/labels_bg.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 0 2rem;
    font-size: 2.4rem;
    color: #fff;
    font-family: "Shippori Mincho", serif;
    font-weight: 600
}

.about-box__step--items .text h3 {
    font-size: 3.4rem;
    line-height: 4.8rem;
    font-weight: 600;
    margin-bottom: 1rem
}

.about-box__step--items .text p {
    margin-bottom: 0
}

.about-box__step--items .des {
    width: 100%;
    padding: 2rem;
    text-align: center;
    margin-top: 3rem;
    background-image: url(../images/bg_5.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover
}

.about-box__step--items .des p {
    margin-bottom: 0;
    font-size: 2.4rem;
    line-height: 4rem;
    color: #fff;
    font-weight: 600;
    font-family: "Shippori Mincho", serif
}

.about-box__step--items .des h3 {
    font-size: 3.4rem;
    line-height: 4.8rem;
    font-weight: 600;
    color: #fff
}

.about-box__step--items:last-child {
    margin-bottom: 2rem
}

.about-box__step--items:last-child::after {
    display: none
}

.price-box {
    padding: 10rem 0;
    background-image: url(../images/price_bg.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover
}

.price-box__img {
    margin-bottom: 4rem
}

.price-box__main {
    background: #fff;
    margin-bottom: 5rem
}

.price-box__main--items .head {
    text-align: center;
    background: transparent linear-gradient(90deg, #af964a 0, #978000 100%);
    padding: 2rem 1rem 1.5rem
}

.price-box__main--items .head h3 {
    font-size: 3rem;
    line-height: 1;
    color: #fff;
    font-weight: 600
}

.price-box__main--items .head p {
    margin-bottom: 0;
    color: #fff
}

.price-box__main--items .main {
    padding: 0 5rem
}

.price-box__main--items .main__items {
    padding: 2rem 0;
    border-bottom: 1px solid #988004;
    display: flex;
    flex-wrap: wrap
}

.price-box__main--items .main__items--labels {
    width: calc(100% - 38.5rem);
    padding-right: 1rem;
    font-size: 2.4rem;
    font-weight: 600;
    color: #988004;
    font-family: "Shippori Mincho", serif;
    text-align: center
}

.price-box__main--items .main__items--labels span {
    font-size: 2rem
}

.price-box__main--items .main__items--info {
    width: 38.5rem;
    font-size: 3.4rem;
    color: #333;
    font-weight: 600;
    font-family: "Shippori Mincho", serif
}

.price-box__main--items .main__items--info span {
    font-size: 2rem
}

.price-box__main--items .main__items:last-child {
    border-bottom: none
}

.price-box__visa {
    background: #fff
}

.price-box__visa h2 {
    background: transparent linear-gradient(90deg, #af964a 0, #978000 100%);
    text-align: center;
    line-height: 5rem;
    font-size: 3rem;
    font-weight: 600;
    color: #fff;
    margin-bottom: 5rem
}

.price-box__visa--images {
    text-align: center;
    margin-bottom: 2rem
}

.price-box__visa--images img {
    width: 60rem
}

.price-box__visa h3 {
    font-size: 2.4rem;
    line-height: 4.2rem;
    font-weight: 600;
    text-align: center;
    padding-bottom: 4rem;
    position: relative
}

.price-box__visa h3::after {
    content: '';
    width: 6rem;
    height: 4rem;
    background-image: url(../images/icon_arows_3.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translate(-50%, 50%)
}

.price-box__list {
    background: #dad6c4;
    margin-bottom: 5rem;
    padding: 5rem
}

.price-box__list--head {
    margin-bottom: 2rem;
    text-align: center
}

.price-box__list--head h3 {
    font-size: 3rem;
    line-height: 4.2rem;
    font-weight: 600
}

.price-box__list--head p {
    margin-bottom: 0
}

.price-box__list--des {
    margin-bottom: 3.5rem;
    text-align: center;
    background: #fff;
    padding: 1.5rem
}

.price-box__list--des h3 {
    font-size: 2.4rem;
    line-height: 4.2rem
}

.price-box__list--des h3 span {
    color: #988004
}

.price-box__list--des h3 b {
    font-weight: 400;
    font-size: 1.8rem;
    line-height: 3.4rem;
    font-family: source-han-sans-japanese, sans-serif
}

.price-box__list--images .d-flex {
    margin: 0 -1.25rem
}

.price-box__list--images .items {
    width: calc(100% / 3);
    padding: 0 1.25rem
}

.price-box__list--images .items main {
    display: block;
    width: 100%;
    height: 100%;
    background: #fff;
    border: 1px solid #988004;
    border-radius: 1rem;
    overflow: hidden;
    text-align: center
}

.price-box__list--images .items__head {
    background: #988004;
    line-height: 4rem;
    font-size: 2rem;
    color: #fff;
    font-family: "Shippori Mincho", serif;
    margin-bottom: 1rem;
    font-weight: 500
}

.price-box__list--images .items__price {
    margin-bottom: 1.5rem
}

.price-box__list--images .items__price h3 {
    font-size: 3.4rem;
    line-height: 1;
    font-weight: 600;
    color: #988004
}

.price-box__list--images .items__price span {
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 1;
    font-family: "Shippori Mincho", serif
}

.price-box__list--images .items__txt {
    font-size: 1.8rem;
    line-height: 3.4rem;
    margin-bottom: .5rem
}

.price-box__btn {
    display: flex;
    justify-content: center
}

.price-box__btn .more {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 54rem;
    line-height: 6rem;
    background: #3aa794;
    border-radius: 1rem;
    font-size: 2.6rem;
    color: #fff;
    font-weight: 600;
    font-family: "Shippori Mincho", serif
}

.price-box__btn .more::after {
    content: '';
    width: 1.2rem;
    height: 1.6rem;
    background-image: url(../images/icon_arows_2.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    margin-left: 2rem
}

.price-box__btn .more:hover {
    background: #988004;
    color: #fff
}

.greeting-box {
    padding: 10rem 0
}

.greeting-box__main--images {
    text-align: center;
    margin-bottom: 4rem
}

.greeting-box__main--images img {
    width: 100%;
    max-width: 71rem
}

.greeting-box__main--text {
    text-align: center;
    margin-bottom: 5rem
}

.greeting-box__main--text h3 {
    font-size: 2.4rem;
    line-height: 4.2rem;
    color: #988004;
    font-weight: 600
}

.greeting-box__main--text p {
    margin-bottom: 1rem;
    font-family: "Shippori Mincho", serif
}

.greeting-box__main--text .des {
    font-size: 2.4rem;
    line-height: 4.2rem;
    font-weight: 600;
    font-family: "Shippori Mincho", serif;
    text-decoration: underline
}

.greeting-box__list--items {
    margin-bottom: 5rem;
    border: 1px solid #dad6c4;
    text-align: center;
    padding: 5rem 2rem;
    position: relative
}

.greeting-box__list--items::after {
    content: '';
    width: calc(100% - 1.5rem);
    height: calc(100% - 1.5rem);
    border: 1px solid #dad6c4;
    opacity: .5;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1
}

.greeting-box__list--items h3 {
    margin-bottom: 1.5rem
}

.greeting-box__list--items h3 span {
    display: inline-block;
    width: 100%;
    max-width: 30rem;
    line-height: 5rem;
    background: transparent linear-gradient(90deg, #dad6C42B 0, #dad6C449 2%, #dad6C474 4%, #dad6C49A 7%, #dad6C4BA 10%, #dad6C4D3 14%, #dad6C4E7 18%, #dad6C4F5 23%, #dad6C4FD 31%, #dad6c4 51%, #dad6C4FD 70%, #dad6C4F5 77%, #dad6C4E7 81%, #dad6C4D3 85%, #dad6C4BA 89%, #dad6C49A 92%, #dad6C474 94%, #dad6C448 97%, #dad6C418 99%, #dad6C400 100%);
    font-size: 2.4rem;
    line-height: 4.2rem;
    font-weight: 600;
    color: #988004;
    font-family: "Shippori Mincho", serif
}

.greeting-box__list--items p {
    margin-bottom: 0
}

.column-box {
    padding: 10rem 0;
    background: transparent linear-gradient(90deg, #dacfab 0, #9e8810 100%);
    overflow: hidden
}

.column-box__main .slider-column {
    margin: 0 -1.6rem 3rem
}

.column-box__main .slider-column__items {
    padding: 0 1.6rem
}

.column-box__main .slider-column__items main {
    display: block;
    width: 100%;
    height: 100%;
    background: #fff;
    box-shadow: 0 0 20px rgba(152, 128, 4, .2);
    padding: 2rem
}

.column-box__main .slider-column__items--thumbnail {
    margin-bottom: 2rem
}

.column-box__main .slider-column__items--text time {
    display: inline-block;
    background: #988004;
    line-height: 2.4rem;
    font-size: 2rem;
    font-weight: 600;
    color: #fff;
    font-family: "Shippori Mincho", serif;
    padding: 0 1rem
}

.column-box__main .slider-column__items--text h3 {
    font-size: 2rem;
    line-height: 3rem;
    font-weight: 600
}

.column-box__main .slider-column .slick-prev {
    left: -3rem
}

.column-box__main .slider-column .slick-next {
    right: -3rem
}

.column-box__main .slider-column .slick-dots li button {
    border-color: #fff
}

.column-box__main .slider-column .slick-dots li button:hover {
    background-color: #fff
}

.column-box__main .slider-column .slick-dots li.slick-active button {
    background-color: #fff
}

.clinic-box {
    padding: 10rem 0;
    background: #f1efe8
}

.clinic-box__main {
    margin-bottom: 5rem
}

.clinic-box__main--text {
    width: calc(100% - 51.5rem);
    padding-right: 2rem
}

.clinic-box__main--text .logo {
    margin-bottom: 3rem
}

.clinic-box__main--text .logo img {
    width: 100%;
    max-width: 45rem
}

.clinic-box__main--text p {
    margin-bottom: 0;
    font-weight: 600;
    font-family: "Shippori Mincho", serif
}

.clinic-box__main--images {
    width: 51.5rem
}

.clinic-box__images {
    margin-bottom: 5rem
}

.clinic-box__map iframe {
    width: 100%;
    height: 40rem;
    vertical-align: middle
}

.banner-page {
    background-image: url(../images/banner_page.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top right;
    margin-top: 12rem;
    margin-bottom: 10rem;
}

.banner-page__main {
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 32rem
}

.banner-page__main p {
    margin-bottom: 1.5rem
}

.banner-page__main p span {
    display: inline-block;
    width: 100%;
    max-width: 39rem;
    line-height: 4rem;
    font-size: 2.4rem;
    color: #fff;
    font-family: "Shippori Mincho", serif;
    background: transparent linear-gradient(90deg, #494D4D00 0, #494D4D5C 12%, #494D4DB6 27%, #494D4DEC 40%, #494d4d 50%, #494D4DEC 60%, #494D4DB6 73%, #494D4D5C 88%, #494D4D00 100%)
}

.banner-page__main h1 {
    font-size: 4.4rem;
    line-height: 6.6rem;
    color: #fff;
    font-weight: 600;
    text-shadow: 0 0 15px #988004
}

.breadcrumb-box {
    margin-bottom: 5rem
}

.breadcrumb-box ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    font-size: 1.8rem;
    line-height: 3.6rem
}

.breadcrumb-box ul li+li:before {
    padding: 0 .8rem;
    color: #8e8004;
    content: ">"
}

.breadcrumb-box ul li a {
    color: #8e8004;
    border-bottom: 1px solid #8e8004
}

.site-content {
    margin-bottom: 10rem
}

.site-content .container {
    max-width: 133rem
}

.site-content__main .article {
    width: calc(100% - 29rem);
    padding-right: 10rem
}

.site-content__main .sidebar {
    width: 29rem
}

.site-content__main .sidebar__main {
    margin-bottom: 5rem;
    background: #f0eee7;
    border-radius: 1rem;
    border: 1px solid #8e8004;
    padding: 3rem 2rem
}

.site-content__main .sidebar__main .widgettitle,
.site-content__main .sidebar__main h3 {
    text-align: center;
    margin-bottom: 2rem;
    font-size: 2.6rem;
    line-height: 1;
    font-weight: 600;
    letter-spacing: .16em;
    font-family: "Shippori Mincho", serif;
}

.site-content__main .sidebar__main ul li {
    margin-bottom: 1.5rem
}

.site-content__main .sidebar__main ul li a {
    display: block;
    background: #fff;
    box-shadow: 0 0 5px #927B4C4D;
    line-height: 4rem;
    text-align: center;
    font-size: 1.8rem;
    color: #1a1a1a;
    position: relative;
    font-family: "Shippori Mincho", serif;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out
}

.site-content__main .sidebar__main ul li a::after {
    content: '';
    width: 1rem;
    height: 1.4rem;
    background-image: url(../images/icon_more_2.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    position: absolute;
    top: 50%;
    right: 1rem;
    transform: translateY(-50%)
}

.site-content__main .sidebar__main ul li a:hover {
    background: #988102;
    color: #fff
}

.site-content__main .sidebar__main ul li:last-child {
    margin-bottom: 0
}

.site-content__main .sidebar__main select {
    text-align: center;
    width: 100%;
    background: #fff;
    box-shadow: 0 0 5px #927B4C4D;
    border: none;
    border-radius: 0;
    height: 4rem
}

.site-content.--page .container {
    max-width: 111rem
}

.list-post__items {
    margin-bottom: 5rem;
    border: 1px solid #8e8004;
    border-radius: 1rem;
    padding: 3rem 3rem 0;
    overflow: hidden
}

.list-post__items--thumbnail {
    width: 31.8rem;
    margin-bottom: 3rem
}

.list-post__items--text {
    width: calc(100% - 31.8rem);
    padding-left: 2.5rem
}

.list-post__items--text .labels {
    margin-bottom: .5rem
}

.list-post__items--text .labels span {
    display: block;
    width: 100%;
    max-width: 32rem;
    line-height: 2.5rem;
    padding: 0 1rem;
    font-size: 1.8rem;
    color: #fff;
    font-family: "Shippori Mincho", serif;
    background: transparent linear-gradient(90deg, #494d4d 50%, #494D4DEC 60%, #494D4DB6 73%, #494D4D5C 88%, #494D4D00 100%)
}

.list-post__items--text h3 {
    font-size: 2.4rem;
    line-height: 3.2rem;
    margin-bottom: .5rem;
    font-weight: 600
}

.list-post__items--text time {
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1;
    color: #8e8004;
    font-family: "Shippori Mincho", serif;
    display: block;
    margin-bottom: 2.5rem
}

.list-post__items--text p {
    margin-bottom: 1.5rem;
    line-height: 2.6rem;
    display: -webkit-box;
    max-width: 100%;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.list-post__items--btn {
    width: 100%
}

.list-post__items--btn a {
    margin: 0 -3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    line-height: 3rem;
    background: transparent linear-gradient(90deg, #cdbe8e 0, #9d8710 100%);
    color: #fff;
    font-family: "Shippori Mincho", serif
}

.list-post__items--btn a::after {
    content: '';
    width: 1.4rem;
    height: 1rem;
    background-image: url(../images/icon_more.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    margin-left: 1rem
}

.list-post__items--btn a:hover {
    opacity: .7;
    color: #fff
}

.page-numbers {
    display: flex;
    flex-wrap: wrap;
    justify-content: center
}

.page-numbers li {
    padding: 0 .5rem
}

.page-numbers li a {
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1;
    width: 3rem;
    height: 3rem;
    background: #fff;
    border: 1px solid #8e8004;
    border-radius: 50%;
    color: #8e8004;
    font-size: 1.4rem;
    font-weight: 500;
    font-family: "Shippori Mincho", serif;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out
}

.page-numbers li a svg {
    width: .8rem;
    height: 1.2rem
}

.page-numbers li a:hover {
    background: #8e8004;
    color: #fff
}

.page-numbers li.actives a {
    background: #8e8004;
    color: #fff
}

.wpp-list__main {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 1.5rem;
    background: #fff;
    box-shadow: 0 0 5px #927B4C4D;
    padding: 1rem
}

.wpp-list__main:last-child {
    margin-bottom: 0
}

.wpp-list__main--thumbnail {
    width: 6rem;
    margin: 0
}

.wpp-list__main--text {
    width: calc(100% - 6rem);
    padding-left: 1rem
}

.wpp-list__main--text a {
    display: block;
    font-size: 1.6rem;
    line-height: 2.2rem;
    font-weight: 600;
    font-family: "Shippori Mincho", serif;
    display: -webkit-box;
    max-width: 100%;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.wpp-list__main--text span {
    display: block;
    font-size: 1.2rem;
    line-height: 1.5;
    color: #8e8004;
    font-weight: 500;
    font-family: "Shippori Mincho", serif
}

.post-inner .entry-head {
    margin-bottom: 5rem
}

.post-inner .entry-head .labels {
    margin-bottom: 1rem
}

.post-inner .entry-head .labels span {
    display: block;
    width: 100%;
    max-width: 32rem;
    line-height: 4rem;
    padding: 0 2rem;
    font-size: 2.4rem;
    color: #fff;
    font-family: "Shippori Mincho", serif;
    background: transparent linear-gradient(90deg, #494d4d 50%, #494D4DEC 60%, #494D4DB6 73%, #494D4D5C 88%, #494D4D00 100%)
}

.post-inner .entry-head h2 {
    font-size: 4.4rem;
    line-height: 6.6rem;
    font-weight: 600;
    margin-bottom: 1rem
}

.post-inner .entry-head time {
    font-weight: 500;
    line-height: 1;
    color: #8e8004;
    font-family: "Shippori Mincho", serif;
    display: block;
    font-size: 2rem
}

.post-inner .thumbnail {
    margin-bottom: 5rem
}

.post-inner .entry-content p {
    margin-bottom: 4rem
}

.post-inner .entry-content figure {
    margin-bottom: 5rem
}

.post-inner .entry-content figure.size-medium img {
    width: 100%;
    max-width: 70rem
}

.post-inner .entry-content h2 {
    margin-bottom: 5rem;
    line-height: 9rem;
    padding: 2rem 3rem;
    font-size: 4rem;
    line-height: 1.2;
    color: #fff;
    font-weight: 400;
    background: #8e8006
}

.post-inner .entry-content h3 {
    margin-bottom: 4rem;
    font-size: 4rem;
    line-height: 6rem;
    font-weight: 400;
    border-left: 1rem solid #8e8006;
    padding-left: 2rem
}

.post-inner .entry-content h4 {
    color: #8e8006;
    text-align: center;
    border-bottom: 1px solid #8e8006;
    line-height: 1.4;
    font-size: 3.5rem;
    padding-bottom: 1rem;
    margin-bottom: 1rem
}

.post-inner .entry-content .cta-content__images {
    margin-bottom: 2.5rem
}

.post-inner .entry-content ul {
    margin-bottom: 3rem;
    line-height: 4.8rem;
    font-weight: 600;
    font-family: "Shippori Mincho", serif;
    padding: 0 3rem;
    list-style: disc;
    color: #8e8006
}

.post-inner .entry-content ul:last-child {
    margin-bottom: 0
}

.post-inner .entry-content ol {
    list-style: decimal;
    margin-bottom: 3rem;
    line-height: 4.8rem;
    font-weight: 600;
    font-family: "Shippori Mincho", serif;
    padding: 0 3rem;
    color: #8e8006
}

.post-inner .entry-content p a {
    color: #3aa794;
    text-decoration: underline
}

.cta-content {
    margin-bottom: 9rem
}

.cta-content__images {
    margin-right: -2.3rem;
    margin-bottom: 2.5rem
}

.cta-content__btn .d-flex {
    margin: 0 -1.2rem
}

.cta-content__btn--more {
    width: 50%;
    padding: 0 1.2rem
}

.posts-nav {
    margin-bottom: 10rem
}

.posts-nav__main .wpb-posts-nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 -.8rem
}

.posts-nav__main .wpb-posts-nav>div {
    width: 50%;
    padding: 0 .8rem
}

.posts-nav__main .wpb-posts-nav>div a {
    display: flex;
    flex-wrap: wrap;
    background: #f0eee7 0 0 no-repeat padding-box;
    box-shadow: 0 0 7px #927B4C80;
    border: 1px solid #707070;
    border-radius: 1rem;
    padding: 1rem;
    position: relative
}

.posts-nav__main .wpb-posts-nav>div a:hover {
    opacity: .7
}

.posts-nav__main .wpb-posts-nav>div:first-child a {
    padding-left: 2.8rem
}

.posts-nav__main .wpb-posts-nav>div:first-child svg {
    width: .9rem;
    position: absolute;
    top: 50%;
    left: 1rem;
    transform: translateY(-50%)
}

.posts-nav__main .wpb-posts-nav>div:first-child .wpb-posts-nav__text {
    padding-left: .8rem
}

.posts-nav__main .wpb-posts-nav>div:last-child a {
    padding-right: 2.8rem
}

.posts-nav__main .wpb-posts-nav>div:last-child svg {
    width: .9rem;
    position: absolute;
    top: 50%;
    right: 1rem;
    transform: translateY(-50%)
}

.posts-nav__main .wpb-posts-nav>div:last-child .wpb-posts-nav__text {
    padding-right: .8rem
}

.posts-nav__main .wpb-posts-nav__thumbnail {
    width: 12.4rem
}

.posts-nav__main .wpb-posts-nav__thumbnail img {
    width: 100%;
    height: 7rem;
    object-fit: cover;
    object-position: center
}

.posts-nav__main .wpb-posts-nav__text {
    width: calc(100% - 12.4rem)
}

.posts-nav__main .wpb-posts-nav__text h4 {
    font-size: 2rem;
    line-height: 2.6rem;
    font-weight: 600;
    display: -webkit-box;
    max-width: 100%;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.posts-nav__main .wpb-posts-nav__text time {
    font-weight: 500;
    line-height: 1.4;
    color: #8e8004;
    font-family: "Shippori Mincho", serif;
    display: block;
    font-size: 1.4rem
}

.related-box {
    padding: 5rem 0 3rem;
    background: transparent linear-gradient(90deg, #cdbe8e 0, #9d8710 100%)
}

.related-box h2 {
    text-align: center;
    margin-bottom: 2.5rem;
    font-size: 3rem;
    color: #fff;
    font-weight: 600
}

.related-box__main .d-flex {
    margin: 0 -1rem
}

.related-box__main--items {
    width: 50%;
    padding: 0 1rem;
    margin-bottom: 2rem
}

.related-box__main--items main {
    display: flex;
    flex-wrap: wrap;
    background: #f0eee7;
    box-shadow: 0 0 7px #927B4C80;
    border: 1px solid #707070;
    border-radius: 1rem;
    padding: 1rem
}

.related-box__main--items .thumbnail {
    width: 12.4rem
}

.related-box__main--items .thumbnail img {
    height: 7rem;
    object-fit: cover;
    object-position: center
}

.related-box__main--items .text {
    width: calc(100% - 12.4rem);
    padding-left: 1rem
}

.related-box__main--items .text h3 {
    font-size: 2rem;
    line-height: 2.6rem;
    font-weight: 600;
    display: -webkit-box;
    max-width: 100%;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.related-box__main--items .text time {
    font-weight: 500;
    line-height: 1.4;
    color: #8e8004;
    font-family: "Shippori Mincho", serif;
    display: block;
    font-size: 1.4rem
}

.toc_list {
    background: 0 0!important;
    list-style: circle outside none!important;
    padding-left: 1.3em!important
}

.toc_list li {
    font-size: 1.8rem;
    line-height: 2;
    margin-bottom: 0;
    padding: .3em 1em .1em 1.1em!important;
    position: relative
}

.toc_list li:before {
    font-family: 'Font Awesome 5 Free'!important;
    content: "\f138";
    position: absolute;
    left: -.4em!important;
    color: #775d3f;
    font-weight: 900;
    top: .4em
}

.toc_list li::after {
    display: none
}

.toc_list li a {
    color: #333;
    display: block;
    border-bottom: dashed 1px #8e8006;
    padding-bottom: .5em;
    font-weight: 700;
    line-height: 2;
    position: relative
}

.toc_list li ul {
    margin-bottom: 0
}

.toc_list li ul a {
    font-weight: 400!important;
    font-size: .9em;
    padding-top: 0;
    padding-bottom: .2em
}

#toc_container {
    width: 70%!important;
    margin: 0 auto 8rem;
    border: 0;
    border-radius: 10px;
    border-top: 5px solid!important;
    border-top-color: #8e8006!important;
    box-shadow: 0 2px 2px rgba(0, 0, 0, .2)!important;
    background: #fff
}

#toc_container .toc_title {
    display: block!important;
    padding: 0!important;
    text-align: center;
    margin-right: 1.5rem!important;
    margin-bottom: 2em;
    color: #8e8006!important;
    font-size: 2rem
}

#toc_container ul {
    border: none!important
}

#toc_container ul::after {
    display: none!important
}

.page-inner .description {
    margin-bottom: 9rem;
    padding-bottom: 9rem;
    position: relative
}

.page-inner .description::after {
    content: '';
    width: 100vw;
    height: calc(100% + 19rem);
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
    background: #f0eee7
}

.page-inner h2 {
    background: #91804a;
    line-height: 8rem;
    font-size: 3rem;
    font-weight: 600;
    color: #fff;
    margin-bottom: 8rem;
    text-align: center;
    margin-top: 6rem;
}

.page-inner h3 {
    padding-bottom: 1rem;
    margin-bottom: 6rem;
    /* text-align: center; */
    font-size: 3rem;
    line-height: 1.4;
    font-weight: 600;
    color: #8e8004;
    position: relative;
    margin-top: 8rem;
}

.page-inner h3::after {
    content: '';
    width: 100%;
    height: 2px;
    background: #91804a;
    position: absolute;
    bottom: 0;
    left: 0
}

.page-inner h4 {
    margin-bottom: 5rem;
    font-size: 3rem;
    color: #8e8004;
    line-height: 1.2;
    font-weight: 600
}

.page-inner p {
    margin-bottom: 6rem;
}

.page-inner p:last-child {
    margin-bottom: 0
}

.page-inner .post-thumbnail {
    background: #f0eee7;
    padding: 5rem;
    margin-bottom: 9rem
}

.page-inner .post-thumbnail h4 {
    text-align: center;
    margin-bottom: 5rem;
    font-size: 3rem;
    color: #8e8004;
    line-height: 1.2;
    font-weight: 600
}

.page-inner .post-thumbnail.mb0 {
    padding-bottom: 0
}

.page-inner .wp-block-media-text__content {
    padding-left: 2.5rem;
    padding-right: 0
}

.page-inner .wp-block-media-text__content p {
    line-height: 3.8rem
}

.page-inner .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
    padding-left: 0;
    padding-right: 2.5rem
}

.page-inner .text-center {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    text-align: left!important
}

.page-inner ul {
    margin-bottom: 3rem;
    line-height: 4.8rem;
    font-weight: 600;
    font-family: "Shippori Mincho", serif;
    padding: 0 3rem;
    list-style: disc
}

.page-inner ul:last-child {
    margin-bottom: 0
}

.page-inner ol {
    list-style: decimal;
    margin-bottom: 3rem;
    line-height: 4.8rem;
    font-weight: 600;
    font-family: "Shippori Mincho", serif;
    padding: 0 3rem
}

.page-inner .post-thumb {
    margin-bottom: 9rem
}

.page-inner .post-thumb .thumbnail {
    width: 35%
}

.page-inner .post-thumb .thumbnail img {
    width: 100%
}

.page-inner .post-thumb .thumbnail span {
    display: block;
    text-align: center
}

.page-inner .post-thumb .text {
    width: 65%;
    padding-left: 3rem
}

.page-inner .post-thumb .text p {
    margin-bottom: 3rem
}

.page-inner .post-thumb .text p:last-child {
    margin-bottom: 0
}

.page-inner .post-thumb .text .btn {
    text-align: right
}

.page-inner .post-thumb.flex-row-reverse .text {
    padding-left: 0;
    padding-right: 3rem
}

.page-inner .post-thumb.--full {
    display: block;
    width: 50%;
    margin: auto;
}

.page-inner .post-thumb.--full .thumbnail {
    width: 100%;
    margin-bottom: 4rem
}

.page-inner .post-thumb.--full .text {
    width: 100%;
    padding: 0
}

.page-inner .des {
    padding: 4rem;
    background: #eeede5;
    margin-bottom: 6rem
}

.page-inner .des p {
    margin-bottom: 0rem;
    font-family: "Shippori Mincho", serif;
    font-weight: 700;
    color: #8e8005;
}

.page-inner .des p:last-child {
    margin-bottom: 0
}

.page-inner .about-box__step--items .des {
    width: 100%;
    padding: 2rem;
    text-align: center;
    margin-top: 3rem;
    background-image: url(../images/bg_5.webp);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: cover;
    margin-bottom: 0
}

.page-inner .about-box__step--items .des p {
    margin-bottom: 0
}

.page-inner .about-box__step--items .des h3 {
    padding: 0;
    margin: 0
}

.page-inner .about-box__step--items .des h3::after {
    display: none
}

.page-inner .tabels-box {
    margin-bottom: 9rem;
    border: 1px solid #000
}

.page-inner .tabels-box .items {
    border-bottom: 1px solid #000
}

.page-inner .tabels-box .items:last-child {
    border-bottom: none
}

.page-inner .tabels-box .items .labels {
    padding: 2rem;
    width: 20%;
    background: #eeede5;
    font-weight: 700
}

.page-inner .tabels-box .items .info {
    width: 80%;
    padding: 2rem
}

.page-inner .tabels-box.--child .items .labels {
    width: 40%
}

.page-inner .tabels-box.--child .items .info {
    width: 60%
}

.page-inner .gmap-box {
    margin-bottom: 9rem
}

.page-inner .gmap-box__iframe iframe {
    width: 100%;
    margin-bottom: 4rem
}

.page-inner p.text-center {
    text-align: center!important
}

.page-inner a {
    color: #3aa794;
    text-decoration: underline;
}

.page-inner .list-thumb {
    margin-bottom: 6rem
}

.page-inner .list-thumb .d-flex {
    margin: 0 -1.5rem
}

.page-inner .list-thumb .thumbnail {
    width: 50%;
    padding: 0 1.5rem;
    text-align: center;
    margin-bottom: 2rem
}

.page-inner .list-thumb .thumbnail img {
    width: 100%
}

.page-inner .list-thumb .thumbnail span {
    display: inline-block;
    margin-top: 1rem
}

.page-inner .list-thumb.--text .thumbnail {
    text-align: left
}

.page-inner .prices-box {
    margin-bottom: 9rem
}

.page-inner .prices-box h3 {
    font-size: 2.4rem!important;
    line-height: 4.2rem!important;
    font-weight: 600!important;
    letter-spacing: .1em!important;
    margin-bottom: 0!important;
    color: #333!important
}

.page-inner .prices-box h3::after {
    display: none!important
}

.page-inner .price-box__visa {
    background: #fff;
    text-align: center;
    padding-bottom: 5rem;
    position: relative
}

.page-inner .price-box__visa::after {
    content: "";
    width: 6rem;
    height: 4rem;
    background-image: url(../images/icon-arow-3.webp);
    background-position: center top;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translate(-50%, 50%);
    -ms-transform: translate(-50%, 50%);
    transform: translate(-50%, 50%)
}

.page-inner .price-box__visa--head {
    margin-bottom: 5rem
}

.page-inner .price-box__visa--head h3 {
    line-height: 5rem!important;
    background: transparent linear-gradient(90deg, #af964a 0, #978000 100%)!important;
    color: #fff!important;
    font-weight: 600!important;
    font-size: 3rem!important;
    letter-spacing: .1em!important
}

.page-inner .price-box__visa figure {
    text-align: center;
    margin-bottom: 2.5rem
}

.page-inner .price-box__visa figure img {
    width: 100%;
    max-width: 60rem
}

.page-inner .price-box__about {
    background: #dad6c4;
    padding: 5rem
}

.page-inner .price-box__about--head {
    text-align: center;
    margin-bottom: 2.5rem
}

.page-inner .price-box__about--head h3 {
    font-size: 3rem!important;
    line-height: 4.2rem!important;
    letter-spacing: .1em!important;
    font-weight: 600!important
}

.page-inner .price-box__about--head p {
    margin-bottom: 0;
    letter-spacing: .18em
}

.page-inner .price-box__about--des {
    background: #fff;
    padding: 2rem 1rem 1.5rem;
    margin-bottom: 3.5rem;
    text-align: center
}

.page-inner .price-box__about--des h3 {
    font-size: 2.4rem!important;
    line-height: 4.2rem!important;
    font-weight: 600!important;
    letter-spacing: .1em!important
}

.page-inner .price-box__about--des p {
    letter-spacing: .18em
}

.page-inner .price-box__about--des p span {
    font-weight: 600;
    font-family: "Shippori Mincho", serif;
    color: var(--loud-color);
    font-size: 2.4rem;
    letter-spacing: .1em;
    line-height: 1
}

.page-inner .price-box__about--list .d-flex {
    margin: 0 -1.25rem
}

.page-inner .price-box__about--list .items {
    width: calc(100% / 3);
    padding: 0 1.2rem
}

.page-inner .price-box__about--list .items main {
    display: block;
    width: 100%;
    height: 100%;
    text-align: center;
    overflow: hidden;
    background: #fff;
    border: 1px solid #988004;
    border-radius: 10px
}

.page-inner .price-box__about--list .items .labels {
    line-height: 4rem;
    background: #988004;
    font-size: 2rem;
    color: #fff;
    letter-spacing: .12em;
    margin-bottom: 1rem
}

.page-inner .price-box__about--list .items h3 {
    letter-spacing: .1px!important;
    font-weight: 600!important;
    color: #988004!important
}

.page-inner .price-box__about--list .items h3 span {
    display: block;
    color: #333;
    font-size: 2.4rem
}

.page-inner .price-box__about--list .items p {
    color: #333;
    letter-spacing: .18em
}

.page-inner .staff-update {
    margin-bottom: 14rem;
    text-align: center;
    position: relative
}

.page-inner .staff-update img {
    width: 100%
}

.page-inner .staff-update .staff_doctor_name {
    position: absolute;
    left: 3rem;
    bottom: 6rem;
    font-size: 2rem;
    font-family: "Shippori Mincho", serif;
    text-align: right
}

.page-inner .staff-update .staff_doctor_name .jp {
    font-size: 150%;
    font-weight: 600;
    line-height: 1em
}

.page-inner .staff-update .staff_doctor_name .en {
    display: block;
    color: #8a8066;
    line-height: 1em;
    margin-top: 1rem
}

.contact-form {
    width: 100%
}

.contact-form table {
    width: 100%;
    display: block
}

.contact-form .form-group,
.contact-form tr {
    display: flex;
    flex-wrap: wrap;
    padding: 2rem 0;
    border-top: 1px solid #eee
}

.contact-form .form-group .labels,
.contact-form .form-group th,
.contact-form tr .labels,
.contact-form tr th {
    width: 30rem;
    font-weight: 700;
    padding-right: 2rem;
    line-height: 5rem
}

.contact-form .form-group .input,
.contact-form .form-group td,
.contact-form tr .input,
.contact-form tr td {
    width: calc(100% - 30rem)
}

.contact-form .form-group .input input[type=date],
.contact-form .form-group .input input[type=email],
.contact-form .form-group .input input[type=tel],
.contact-form .form-group .input input[type=text],
.contact-form .form-group .input select,
.contact-form .form-group .input textarea,
.contact-form .form-group td input[type=date],
.contact-form .form-group td input[type=email],
.contact-form .form-group td input[type=tel],
.contact-form .form-group td input[type=text],
.contact-form .form-group td select,
.contact-form .form-group td textarea,
.contact-form tr .input input[type=date],
.contact-form tr .input input[type=email],
.contact-form tr .input input[type=tel],
.contact-form tr .input input[type=text],
.contact-form tr .input select,
.contact-form tr .input textarea,
.contact-form tr td input[type=date],
.contact-form tr td input[type=email],
.contact-form tr td input[type=tel],
.contact-form tr td input[type=text],
.contact-form tr td select,
.contact-form tr td textarea {
    width: 100%;
    height: 5rem;
    border: none;
    border-radius: 5px;
    background: #f8f8f8;
    box-shadow: none;
    font-size: 16px;
    line-height: 1;
    font-family: source-han-sans-japanese, sans-serif;
    color: #333;
    padding: 0 1.5rem
}

.contact-form .form-group .input input[type=date]:focus,
.contact-form .form-group .input input[type=email]:focus,
.contact-form .form-group .input input[type=tel]:focus,
.contact-form .form-group .input input[type=text]:focus,
.contact-form .form-group .input select:focus,
.contact-form .form-group .input textarea:focus,
.contact-form .form-group td input[type=date]:focus,
.contact-form .form-group td input[type=email]:focus,
.contact-form .form-group td input[type=tel]:focus,
.contact-form .form-group td input[type=text]:focus,
.contact-form .form-group td select:focus,
.contact-form .form-group td textarea:focus,
.contact-form tr .input input[type=date]:focus,
.contact-form tr .input input[type=email]:focus,
.contact-form tr .input input[type=tel]:focus,
.contact-form tr .input input[type=text]:focus,
.contact-form tr .input select:focus,
.contact-form tr .input textarea:focus,
.contact-form tr td input[type=date]:focus,
.contact-form tr td input[type=email]:focus,
.contact-form tr td input[type=tel]:focus,
.contact-form tr td input[type=text]:focus,
.contact-form tr td select:focus,
.contact-form tr td textarea:focus {
    outline: 0;
    outline: 0
}

.contact-form .form-group .input input[type=date]::placeholder,
.contact-form .form-group .input input[type=email]::placeholder,
.contact-form .form-group .input input[type=tel]::placeholder,
.contact-form .form-group .input input[type=text]::placeholder,
.contact-form .form-group .input select::placeholder,
.contact-form .form-group .input textarea::placeholder,
.contact-form .form-group td input[type=date]::placeholder,
.contact-form .form-group td input[type=email]::placeholder,
.contact-form .form-group td input[type=tel]::placeholder,
.contact-form .form-group td input[type=text]::placeholder,
.contact-form .form-group td select::placeholder,
.contact-form .form-group td textarea::placeholder,
.contact-form tr .input input[type=date]::placeholder,
.contact-form tr .input input[type=email]::placeholder,
.contact-form tr .input input[type=tel]::placeholder,
.contact-form tr .input input[type=text]::placeholder,
.contact-form tr .input select::placeholder,
.contact-form tr .input textarea::placeholder,
.contact-form tr td input[type=date]::placeholder,
.contact-form tr td input[type=email]::placeholder,
.contact-form tr td input[type=tel]::placeholder,
.contact-form tr td input[type=text]::placeholder,
.contact-form tr td select::placeholder,
.contact-form tr td textarea::placeholder {
    font-size: 16px;
    color: #ddd
}

.contact-form .form-group .input .d-flex,
.contact-form .form-group td .d-flex,
.contact-form tr .input .d-flex,
.contact-form tr td .d-flex {
    margin: 0 -1.5rem
}

.contact-form .form-group .input__items,
.contact-form .form-group td__items,
.contact-form tr .input__items,
.contact-form tr td__items {
    width: 50%;
    padding: 0 1.5rem
}

.contact-form .form-group .input p,
.contact-form .form-group td p,
.contact-form tr .input p,
.contact-form tr td p {
    margin-bottom: 0!important;
    font-size: 1.4rem;
    margin-top: 1rem!important
}

.contact-form .form-group .input textarea,
.contact-form .form-group td textarea,
.contact-form tr .input textarea,
.contact-form tr td textarea {
    padding: 1.5rem;
    min-height: 35rem
}

.contact-form .form-group td,
.contact-form .form-group th,
.contact-form tr td,
.contact-form tr th {
    display: block;
    text-align: left
}

.contact-form .form-group td p,
.contact-form .form-group th p,
.contact-form tr td p,
.contact-form tr th p {
    margin-bottom: 0!important;
    margin-top: 0!important
}

.contact-form .form-group th,
.contact-form tr th {
    display: flex;
    align-items: center
}

.contact-form .form-group th::after,
.contact-form tr th::after {
    content: '必須';
    color: #fff;
    font-size: 1.4rem;
    margin-left: .8rem;
    font-weight: 600;
    background: #775d3f;
    border-radius: .4rem;
    padding: 0 1rem;
    line-height: 1.8
}

.contact-form .form-group.required .labels,
.contact-form tr.required .labels {
    display: flex;
    align-items: center
}

.contact-form .form-group.required .labels::after,
.contact-form tr.required .labels::after {
    content: '必須';
    color: #fff;
    font-size: 1.4rem;
    margin-left: .8rem;
    font-weight: 600;
    background: #775d3f;
    border-radius: .4rem;
    padding: 0 1rem;
    line-height: 1.8
}

.contact-form .more-box {
    padding-top: 4rem;
    text-align: center
}

.contact-form .more-box .more {
    display: inline-block;
    padding: 3rem;
    width: 100%;
    max-width: 50rem;
    border: 2px solid #775d3f;
    font-size: 18px;
    font-weight: 700;
    text-align: center;
    background-color: #fff;
    color: #775d3f;
    border-radius: 5px;
    transition: .3s;
    position: relative
}

.contact-form .more-box .more:hover {
    background: #775d3f;
    color: #fff
}

.contact-form .wpcf7cp-btns {
    display: flex;
    justify-content: center
}

.contact-form .wpcf7cp-btns button {
    margin: 0 1rem;
    display: inline-block;
    padding: 2rem;
    width: 100%;
    max-width: 25rem;
    border: 2px solid #775d3f;
    font-size: 18px;
    font-weight: 700;
    text-align: center;
    background-color: #fff;
    color: #775d3f;
    border-radius: 5px;
    transition: .3s;
    position: relative
}

.contact-form .wpcf7cp-btns button:hover {
    background: #775d3f;
    color: #fff
}

.footer {
    background: #333;
    text-align: center;
    padding: 1.5rem
}

.footer p {
    margin-bottom: 0;
    font-size: 1.6rem;
    line-height: 2.6rem;
    color: #fff
}

@media (max-width: 768px) {
    .footer {
        margin-bottom: 18rem
    }
    .footer p {
        font-size: 2.1rem;
        line-height: 3rem
    }
}

.cta-sp {
    display: none
}

.sp {
    display: none
}

@media screen and (max-width: 1200px) and (min-width:769px) {
    html {
        font-size: 9px
    }
}

@media screen and (max-width: 1050px) and (min-width:769px) {
    html {
        font-size: 8px
    }
}

@media screen and (max-width: 991px) and (min-width:769px) {
    html {
        font-size: 7px
    }
}

@media (min-width: 769px) {
    .staff_doctor_name {
        background: #fff;
        padding: 2rem 4rem;
        left: auto!important;
        bottom: auto!important;
        right: 0;
        top: 50%;
        transform: translate(50%, -50%)
    }
}

@media (max-width: 768px) {
    html {
        font-size: 1.333333vw
    }
    body {
        font-size: 2.6rem;
        line-height: 1.66666667
    }
    .pc {
        display: none
    }
    .sp {
        display: block
    }
    .container {
        padding: 0 4rem
    }
    .banner {
        background: 0 0;
        margin-top: 10rem
    }
    .banner .container {
        padding: 0
    }
    .banner__main--images {
        margin-bottom: 0
    }
    .interested-box {
        margin-top: -6rem;
        padding: 7rem 0 4rem;
        background-image: url(../images/interested_bg_sp.webp)
    }
    .interested-box .head {
        margin-bottom: 26rem
    }
    .interested-box .head h2 {
        font-size: 5.4rem;
        line-height: 7.2rem
    }
    .interested-box .head h2 span {
        font-size: 4.4rem;
        line-height: 6.2rem
    }
    .interested-box__main--images {
        margin-bottom: 4rem
    }
    .interested-box__main--text {
        padding: 4rem;
        text-align: left
    }
    .interested-box__main--text p {
        margin-bottom: 0;
        color: #1a351a
    }
    .director-box {
        background: 0 0
    }
    .director-box .container {
        padding: 0
    }
    .director-box__main {
        padding: 0
    }
    .director-box__main--images {
        width: 100%;
        position: static;
        left: 0;
        margin-top: -4rem
    }
    .director-box__main--text {
        text-align: center;
        width: 100%;
        padding: 4.5rem 4rem 5rem;
        position: absolute;
        top: 42rem;
        left: 0;
        background: rgba(255, 255, 255, .5)
    }
    .director-box__main--text p {
        font-size: 3rem;
        line-height: 5.6rem
    }
    .director-box__main--text h3 {
        font-size: 4rem
    }
    .consultations-box {
        padding: 38rem 0 4rem;
        background-image: url(../images/bg_2_sp.webp);
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: 100% auto;
        background-position: center top
    }
    .consultations-box .head {
        display: none
    }
    .consultations-box__main {
        max-width: 100%;
        padding: 4rem;
        margin-bottom: 3rem
    }
    .consultations-box__main h3 span {
        font-size: 3rem;
        line-height: 5.2rem;
        color: #988004
    }
    .consultations-box__step--head {
        margin-bottom: 3rem
    }
    .consultations-box__step--head h3 {
        font-size: 4rem;
        line-height: 6.6rem
    }
    .consultations-box__step--head h3 span {
        font-size: 3.4rem;
        line-height: 5.2rem
    }
    .consultations-box__step--list {
        margin: 0 0 1rem
    }
    .consultations-box__step--list .list__items {
        width: 100%;
        padding: 0;
        position: relative;
        margin-bottom: 8rem
    }
    .consultations-box__step--list .list__items::after {
        width: 6rem;
        height: 4rem;
        background-image: url(../images/icon_arows_3.webp);
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: 100% auto;
        position: absolute;
        left: 50%;
        top: 0;
        transform: translate(-50%, -150%)
    }
    .consultations-box__step--list .list__items:last-child {
        margin-bottom: 0
    }
    .consultations-box__step--list .list__items p {
        line-height: 4rem
    }
    .consultations-box__step--des {
        font-size: 2rem;
        line-height: 3rem
    }
    .cta-box__main {
        position: relative;
    }
    .cta-box__main--btn {
        /* bottom: 4rem; */
        /* left: 0; */
        /* padding: 0 4rem; */
    }
    .cta-box__main--btn .d-flex {
        /* margin: 0; */
    }
    .cta-box__main--btn .items {
        /* width: 100%; */
        /* padding: 0; */
        /* margin-bottom: 2rem; */
    }
    .cta-box__main--btn .items:last-child {
        margin-bottom: 0
    }
    .case-box {
        padding: 4rem 0
    }
    .case-box__slider {
        margin-bottom: 4rem
    }
    .case-box__slider .slider__items--thumbnail picture {
        height: 44rem
    }
    .case-box__slider .btn {
        padding-top: 4rem
    }
    .case-box__slider .btn .more {
        max-width: 49rem;
        line-height: 8rem;
        font-size: 3rem
    }
    .case-box__main {
        padding: 4rem
    }
    .case-box__main--images {
        margin-bottom: 1rem
    }
    .case-box__main--images img {
        width: 100%;
        max-width: 88rem
    }
    .case-box__main p {
        margin-bottom: 0;
        font-family: "Shippori Mincho", serif
    }
    .slider {
        margin: 0 -2rem
    }
    .slider__items {
        padding: 0 2rem
    }
    .slider__items main {
        background: #efefef
    }
    .slider__items--text {
        padding: 0 2rem 1.5rem
    }
    .slider__items--text time {
        font-size: 2rem
    }
    .slider__items--text p {
        font-size: 3rem;
        line-height: 4rem;
        display: -webkit-box;
        max-width: 100%;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden
    }
    .slider__items--btn a {
        line-height: 5rem;
        font-size: 2.6rem
    }
    .slider .slick-dots li button {
        width: 3rem;
        height: 3rem;
        border-color: #988004
    }
    .slider .slick-dots li button:hover {
        background-color: #988004
    }
    .slider .slick-dots li.slick-active button {
        background-color: #988004
    }
    .implant-box {
        padding: 4rem 0;
        background-image: url(../images/implant_bg_sp.webp);
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: cover;
        background-position: right bottom
    }
    .implant-box__main--thumbnail {
        width: 100%;
        text-align: center;
        margin-bottom: 3rem
    }
    .implant-box__main--thumbnail img {
        width: 35rem
    }
    .implant-box__main--text {
        width: calc(100%);
        padding-left: 0;
        text-align: center
    }
    .implant-box__main--text p {
        font-size: 2.4rem;
        line-height: 4.8rem
    }
    .implant-box__main--text h3 {
        font-size: 3.4rem;
        line-height: 5.2rem
    }
    .features-box {
        padding: 4rem 0;
        background: 0 0
    }
    .features-box .head-box {
        margin-bottom: 5.5rem
    }
    .features-box__main {
        margin-bottom: 8rem
    }
    .features-box__main--head {
        height: 21rem;
        flex-direction: column;
        text-align: center;
        align-items: center;
        justify-content: flex-end;
        line-height: 5.9rem;
        padding-bottom: 3rem
    }
    .features-box__main--head span {
        line-height: 9.9rem
    }
    .features-box__main .main {
        padding: 4rem
    }
    .features-box__main--post .thumbnail {
        width: 100%;
        margin-bottom: 3rem
    }
    .features-box__main--post .text {
        width: calc(100%);
        padding-left: 0
    }
    .features-box__main--post .text h3 {
        text-align: center;
        margin-bottom: 3rem;
        font-size: 4rem;
        line-height: 7.7rem
    }
    .features-box__main--post .text h3 span {
        padding: 0 2rem
    }
    .features-box__main--post .text p {
        margin-bottom: 0;
        font-size: 2.6rem;
        line-height: 4rem
    }
    .features-box__main--post.--reverse .text {
        padding-left: 0;
        padding-right: 0
    }
    .features-box__main--post.--post2 .thumbnail {
        width: 100%
    }
    .features-box__main--post.--post2 .text {
        width: calc(100%);
        padding-right: 0
    }
    .features-box__main--post.--post2 .text p {
        line-height: 4rem
    }
    .features-box__main--post.--post3 .thumbnail {
        width: 100%
    }
    .features-box__main--post.--post3 .text {
        width: calc(100%);
        padding-left: 0
    }
    .features-box__main--post.--post3 .text p {
        line-height: 4rem
    }
    .features-box__main--post.--post4 .thumbnail {
        width: 100%
    }
    .features-box__main--post.--post4 .text {
        width: calc(100%)
    }
    .features-box__main--post.--post4 .text p {
        line-height: 4rem;
        margin-bottom: 0
    }
    .features-box__main--labels {
        margin-bottom: 6.8rem;
        line-height: 5.3rem;
        border-radius: 7rem;
        padding: 2.5rem 1rem;
        font-size: 3.5rem
    }
    .features-box__main--list h3 {
        font-size: 4rem;
        line-height: 7.7rem;
        color: #988004;
        background: 0 0
    }
    .features-box__main--list h3 span {
        background: #dbd7c5
    }
    .features-box__main--list .list .d-flex {
        margin: 0 -1.5rem
    }
    .features-box__main--list .list__items {
        width: 50%;
        padding: 0 1.5rem
    }
    .features-box__main--list .list__items .main {
        padding: 3rem
    }
    .features-box__main--list .list__items h2 {
        margin-bottom: 2rem;
        font-size: 2rem
    }
    .features-box__main--list .list__items--box {
        margin-bottom: 3.5rem;
        padding: 2.5rem 1.5rem
    }
    .features-box__main--list .list__items--box::before {
        width: 5.1rem;
        height: 5.1rem;
        font-size: 2rem;
        padding-top: .5rem
    }
    .features-box__main--list .list__items--box::after {
        width: 2rem;
        height: 1.5rem;
        transform: translate(-50%, 170%)
    }
    .features-box__main--list .list__items--box h3 {
        font-size: 2rem
    }
    .features-box__main--list .list__items--txt {
        font-size: 2rem;
        line-height: 3.4rem
    }
    .features-box__main--list .list__items:last-child .main {
        background: #dad6c4;
        border: none
    }
    .features-box__main--list .list__items:last-child .list__items--box {
        background: #fff
    }
    .features-box__main--list .list__items:last-child .list__items--box:last-child {
        background: #bd3e68
    }
    .features-box__main--list.--list2 {
        padding-bottom: 0
    }
    .features-box__main--list.--list2::after {
        display: none
    }
    .features-box__main--list.--list2 .thumbnail {
        margin-bottom: 4rem
    }
    .features-box__main--list.--list2 p {
        margin-bottom: 0
    }
    .features-box__main--pickup {
        flex-direction: column-reverse
    }
    .features-box__main--pickup .text {
        width: calc(100%);
        padding-right: 0;
        text-align: center
    }
    .features-box__main--pickup .thumbnail {
        width: 100%;
        margin-bottom: 1.5rem
    }
    .features-box__main--btn {
        display: flex;
        justify-content: center
    }
    .features-box__main--btn .more {
        max-width: 59rem;
        line-height: 8rem;
        font-size: 3rem;
        box-shadow: 0 0 20px rgba(152, 128, 4, .5)
    }
    .features-box__main--btn .more.txt {
        font-size: 2.6rem
    }
    .features-box__main--btn.--btn2 {
        margin: 0;
        flex-wrap: wrap
    }
    .features-box__main--btn.--btn2 .items {
        width: 100%;
        padding: 0;
        margin-bottom: 2rem
    }
    .features-box__main--btn.--btn2 .items: last-child {
        margin-bottom: 0
    }
    .features-box__main--btn.--btn2 .items .more {
        max-width: 100%
    }
    .safety-box {
        padding: 4rem 0;
        background-image: url(../images/safety_bg_sp.webp);
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center top
    }
    .safety-box .head-box {
        margin-bottom: 40.4rem
    }
    .safety-box__main {
        text-align: center
    }
    .safety-box__main h3 {
        font-size: 4.4rem;
        line-height: 7.4rem;
        margin-bottom: 2.5rem
    }
    .safety-box__main h3 span {
        padding: 0 2rem
    }
    .safety-box__main .btn {
        display: flex;
        justify-content: center
    }
    .safety-box__main .btn .more {
        max-width: 59rem;
        line-height: 8rem;
        font-size: 3rem;
        box-shadow: 0 0 20px rgba(152, 128, 4, .5)
    }
    .variously-box {
        padding: 4rem 0
    }
    .variously-box__main .d-flex {
        margin: 0
    }
    .variously-box__main--items {
        width: 100%;
        padding: 0;
        margin-bottom: 4rem
    }
    .variously-box__main--items h3 {
        font-size: 4rem
    }
    .variously-box__main--items p {
        line-height: 4rem
    }
    .variously-box__des--text {
        padding-top: 42rem;
        padding-right: 0;
        text-align: center;
        width: 100%
    }
    .variously-box__des--text h3 {
        font-size: 4rem;
        line-height: 5.4rem;
        margin-bottom: 2rem
    }
    .variously-box__des--text p span {
        font-size: 2rem;
        line-height: 3rem
    }
    .about-box {
        padding: 4rem 0
    }
    .about-box__main {
        padding: 4rem 4rem 2rem
    }
    .about-box__main--thumbnail {
        margin-bottom: 4rem
    }
    .about-box__main h3 {
        font-size: 4rem;
        line-height: 5rem
    }
    .about-box__main h3::before {
        margin-right: 2rem
    }
    .about-box__main ul {
        display: flex;
        flex-wrap: wrap;
        margin: 0
    }
    .about-box__main ul li {
        width: 100%;
        margin-bottom: 2rem;
        padding: 0
    }
    .about-box__main ul li span {
        font-size: 3rem
    }
    .about-box__des {
        margin-bottom: 4rem
    }
    .about-box__step--items {
        background: #fff;
        padding: 4rem;
        margin-bottom: 8rem
    }
    .about-box__step--items::after {
        content: '';
        width: 6rem;
        height: 4rem;
        background-image: url(../images/icon_arows_3.webp);
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: 100% auto;
        position: absolute;
        left: 50%;
        bottom: 0;
        transform: translate(-50%, 150%)
    }
    .about-box__step--items .thumbnail {
        width: 100%;
        margin-bottom: 1.5rem
    }
    .about-box__step--items .text {
        width: calc(100%);
        padding-left: 0;
        margin-bottom: 4rem;
        display: flex;
        align-items: center
    }
    .about-box__step--items .text:last-child {
        margin-bottom: 0
    }
    .about-box__step--items .text__labels {
        margin-bottom: 0
    }
    .about-box__step--items .text__labels span {
        display: flex;
        align-items: center;
        margin-right: 2rem;
        width: 9.6rem;
        height: 9.6rem;
        line-height: 3rem;
        text-align: center;
        padding: 0 2rem
    }
    .about-box__step--items .text h3 {
        font-size: 4rem;
        line-height: 4.8rem;
        margin-bottom: 0
    }
    .about-box__step--items .des {
        width: calc(100% + 8rem);
        padding: 2rem;
        margin: 0 -4rem -4rem
    }
    .about-box__step--items .des p {
        font-size: 2.4rem;
        line-height: 3.6rem
    }
    .price-box {
        padding: 4rem 0
    }
    .price-box__main {
        margin-bottom: 4rem
    }
    .price-box__main--items {
        margin-bottom: 6rem
    }
    .price-box__main--items .head {
        padding: 2.5rem 1rem 2rem
    }
    .price-box__main--items .head h3 {
        font-size: 4rem;
        line-height: 1
    }
    .price-box__main--items .head p {
        font-size: 2rem;
        line-height: 3.4rem
    }
    .price-box__main--items .main {
        padding: 0 4rem
    }
    .price-box__main--items .main__items {
        text-align: center
    }
    .price-box__main--items .main__items--labels {
        width: calc(100%);
        padding-right: 0;
        font-size: 3rem
    }
    .price-box__main--items .main__items--labels span {
        font-size: 2.4rem
    }
    .price-box__main--items .main__items--info {
        width: 100%;
        font-size: 4rem
    }
    .price-box__visa h2 {
        line-height: 13rem;
        font-size: 4rem;
        margin-bottom: 4rem
    }
    .price-box__visa h3 {
        font-size: 2.4rem;
        line-height: 4.2rem;
        font-weight: 600;
        text-align: center;
        padding-bottom: 4rem
    }
    .price-box__list {
        margin-bottom: 4rem;
        padding: 4rem
    }
    .price-box__list--head h3 {
        font-size: 4rem
    }
    .price-box__list--des {
        padding: 2rem 1rem
    }
    .price-box__list--images .d-flex {
        margin: 0
    }
    .price-box__list--images .items {
        width: calc(100%);
        padding: 0;
        margin-bottom: 2rem
    }
    .price-box__list--images .items:last-child {
        margin-bottom: 0
    }
    .price-box__list--images .items__head {
        line-height: 5rem;
        font-size: 3rem;
        margin-bottom: 1.5rem
    }
    .price-box__list--images .items__price {
        display: flex;
        justify-content: center;
        align-items: center;
        margin-bottom: 1rem
    }
    .price-box__btn {
        display: flex;
        justify-content: center
    }
    .price-box__btn .more {
        max-width: 59rem;
        line-height: 8rem;
        font-size: 3rem;
        box-shadow: 0 0 20px rgba(152, 128, 4, .5)
    }
    .price-box__btn .more.txt {
        font-size: 2.6rem
    }
    .greeting-box {
        padding: 4rem 0
    }
    .greeting-box__main--images {
        margin: 0 -4rem 4rem
    }
    .greeting-box__main--images img {
        max-width: 100%
    }
    .greeting-box__main--text {
        text-align: center;
        margin-bottom: 5rem
    }
    .greeting-box__main--text h3 {
        font-size: 3rem;
        line-height: 5.4rem;
        margin-bottom: 3rem
    }
    .greeting-box__main--text p {
        line-height: 4.4rem
    }
    .greeting-box__main--text .des {
        font-size: 3.2rem;
        line-height: 5.4rem
    }
    .greeting-box__list--items {
        margin-bottom: 4rem
    }
    .greeting-box__list--items h3 span {
        line-height: 5.4rem;
        font-size: 3.4rem
    }
    .column-box {
        padding: 4rem 0
    }
    .column-box__main .slider-column {
        margin: 0 -1rem 3rem
    }
    .column-box__main .slider-column__items {
        padding: 0 1rem
    }
    .column-box__main .slider-column__items--thumbnail {
        margin-bottom: 2rem
    }
    .column-box__main .slider-column__items--text h3 {
        font-size: 3rem;
        line-height: 1.5;
        display: -webkit-box;
        max-width: 100%;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden
    }
    .column-box__main .slider-column .slick-dots li button {
        width: 3rem;
        height: 3rem
    }
    .clinic-box {
        padding: 4rem 0
    }
    .clinic-box__main {
        margin-bottom: 4rem;
        flex-direction: column-reverse
    }
    .clinic-box__main--text {
        width: calc(100%);
        padding-right: 0
    }
    .clinic-box__main--text .logo {
        text-align: center
    }
    .clinic-box__main--images {
        width: 100%;
        margin-bottom: 4rem
    }
    .clinic-box__images {
        margin-bottom: 5rem
    }
    .clinic-box__map iframe {
        width: 100%;
        height: 40rem;
        vertical-align: middle
    }
    .cta-sp {
        display: flex;
        width: 100%;
        position: fixed;
        z-index: 99;
        bottom: 0;
        left: 0;
        box-shadow: 0 10px 10px rgba(112, 102, 44, .7)
    }
    .cta-sp__items {
        overflow: hidden;
        width: 50%
    }
    .banner-page {
        background-image: url(../images/banner_page_sp.webp);
        background-position: 0 0;
        background-repeat: no-repeat;
        margin-top: 9rem;
        margin-bottom: 4rem;
    }
    .banner-page__main {
        height: 38rem
    }
    .banner-page__main p span {
        line-height: 5rem;
        font-size: 3rem
    }
    .breadcrumb-box {
        margin-bottom: 4rem
    }
    .breadcrumb-box ul {
        font-size: 2.5rem
    }
    .site-content {
        margin-bottom: 4rem
    }
    .site-content__main .article {
        width: calc(100%);
        padding-right: 0;
        margin-bottom: 8rem
    }
    .site-content__main .sidebar {
        width: 100%
    }
    .site-content__main .sidebar__main {
        margin-bottom: 4rem;
        padding: 4rem
    }
    .site-content__main .sidebar__main .widgettitle,
    .site-content__main .sidebar__main h3 {
        font-size: 4rem
    }
    .site-content__main .sidebar__main ul li {
        margin-bottom: 2rem
    }
    .site-content__main .sidebar__main ul li a {
        line-height: 5.6rem;
        font-size: 2.4rem
    }
    .site-content__main .sidebar__main ul li a::after {
        width: 1.4rem;
        height: 2rem;
        right: 2rem
    }
    .site-content__main .sidebar__main select {
        height: 5.6rem
    }
    .list-post__items {
        padding: 4rem 4rem 0
    }
    .list-post__items--thumbnail {
        width: 100%;
        margin-bottom: 4rem
    }
    .list-post__items--thumbnail img {
        width: 100%;
        height: auto
    }
    .list-post__items--text {
        width: calc(100%);
        padding-left: 0
    }
    .list-post__items--text .labels {
        margin-bottom: 1rem
    }
    .list-post__items--text .labels span {
        display: inline-block;
        max-width: none;
        width: auto;
        line-height: 4rem;
        padding: 0 7.5rem 0 2.5rem;
        font-size: 2.6rem
    }
    .list-post__items--text h3 {
        font-size: 3.4rem;
        line-height: 4.8rem;
        margin-bottom: 1rem
    }
    .list-post__items--text time {
        font-size: 2rem
    }
    .list-post__items--text p {
        margin-bottom: 3rem;
        line-height: 4rem;
        display: -webkit-box;
        max-width: 100%;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        overflow: hidden
    }
    .list-post__items--btn a {
        margin: 0 -4rem;
        line-height: 6rem;
        font-size: 3rem
    }
    .list-post__items--btn a::after {
        width: 2.2rem;
        height: 1.6rem;
        margin-left: 2rem
    }
    .page-numbers li {
        padding: 0 .75rem
    }
    .page-numbers li a {
        width: 5rem;
        height: 5rem;
        font-size: 2.3rem
    }
    .page-numbers li a svg {
        width: 1.3rem;
        height: 2rem
    }
    .wpp-list__main {
        margin-bottom: 2rem
    }
    .wpp-list__main--thumbnail {
        width: 9rem
    }
    .wpp-list__main--text {
        width: calc(100% - 9rem)
    }
    .wpp-list__main--text a {
        font-size: 2.4rem;
        line-height: 3.2rem
    }
    .wpp-list__main--text span {
        font-size: 2rem
    }
    .post-inner {
        margin-bottom: 0!important
    }
    .post-inner .entry-head {
        margin-bottom: 4rem
    }
    .post-inner .thumbnail {
        margin-bottom: 3rem
    }
    .post-inner .entry-content p {
        margin-bottom: 4rem
    }
    .post-inner .entry-content figure {
        margin-bottom: 4rem
    }
    .post-inner .entry-content figure.size-medium img {
        max-width: 100%
    }
    .post-inner .entry-content h2 {
        margin-bottom: 4rem;
        line-height: 1.4;
        padding: 2rem 1rem;
        font-size: 4.4rem
    }
    .post-inner .entry-content h3 {
        margin-bottom: 3rem;
        font-size: 4.4rem
    }
    .post-inner ul {
        padding: 0 0 0 3rem;
        font-size: 2.8rem
    }
    .post-inner ol {
        padding: 0 0 0 3rem;
        font-size: 2.8rem
    }
    .cta-content {
        margin: 0 -4rem 4rem;
        position: relative
    }
    .cta-content__images {
        margin-right: 0;
        margin-bottom: 0
    }
    .cta-content__btn {
        padding: 0 4rem;
        width: 100%;
        position: absolute;
        left: 0;
        bottom: 4rem;
        overflow: hidden
    }
    .cta-content__btn .d-flex {
        margin: 0 -1rem
    }
    .cta-content__btn--more {
        padding: 0 1rem
    }
    .posts-nav {
        margin-bottom: 0
    }
    .posts-nav__main .wpb-posts-nav {
        margin: 0 -1rem
    }
    .posts-nav__main .wpb-posts-nav>div {
        padding: 0 1rem
    }
    .posts-nav__main .wpb-posts-nav>div a {
        padding: 3rem 2rem
    }
    .posts-nav__main .wpb-posts-nav>div:first-child a {
        padding-left: 3.7rem
    }
    .posts-nav__main .wpb-posts-nav>div:first-child svg {
        width: 1.4rem
    }
    .posts-nav__main .wpb-posts-nav>div:first-child .wpb-posts-nav__text {
        padding-left: 1.4rem
    }
    .posts-nav__main .wpb-posts-nav>div:last-child a {
        padding-right: 3.7rem
    }
    .posts-nav__main .wpb-posts-nav>div:last-child svg {
        width: 1.4rem
    }
    .posts-nav__main .wpb-posts-nav>div:last-child .wpb-posts-nav__text {
        padding-right: 1.4rem
    }
    .posts-nav__main .wpb-posts-nav__thumbnail {
        width: 7rem
    }
    .posts-nav__main .wpb-posts-nav__text {
        width: calc(100% - 7rem)
    }
    .posts-nav__main .wpb-posts-nav__text h4 {
        font-size: 2rem;
        line-height: 2.6rem
    }
    .posts-nav__main .wpb-posts-nav__text time {
        font-size: 2rem
    }
    .related-box {
        padding: 4rem 0 2rem
    }
    .related-box h2 {
        margin-bottom: 4rem;
        font-size: 4rem
    }
    .related-box h4 {
        margin-bottom: 2rem;
        font-size: 4rem
    }
    .related-box__main .d-flex {
        margin: 0
    }
    .related-box__main--items {
        width: 100%;
        padding: 0
    }
    .related-box__main--items main {
        padding: 1rem
    }
    .related-box__main--items .thumbnail {
        width: 7rem
    }
    .related-box__main--items .text {
        width: calc(100% - 7rem);
        padding-left: 2rem
    }
    .related-box__main--items .text h3 {
        font-size: 2rem
    }
    .related-box__main--items .text time {
        font-size: 2rem
    }
    #toc_container {
        text-align: left;
        margin-bottom: 4rem
    }
    .page-inner .description {
        margin-bottom: 3rem;
        padding-bottom: 3rem
    }
    .page-inner .description::after {
        height: calc(100% + 14rem)
    }
    .page-inner h3 {
        padding-bottom: 2rem;
        margin-bottom: 3rem;
        font-size: 3.6rem;
    }
    .page-inner p {
        margin-bottom: 3rem
    }
    .page-inner .post-thumbnail {
        padding: 4rem;
        margin-bottom: 3rem
    }
    .page-inner .post-thumbnail h4 {
        margin-bottom: 3rem;
        font-size: 4rem
    }
    .page-inner .wp-block-media-text__content {
        padding-top: 3rem;
        padding-left: 0;
        padding-right: 0
    }
    .page-inner .wp-block-media-text__content p {
        line-height: 4.8rem
    }
    .page-inner .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
        padding-left: 0;
        padding-right: 0
    }
    .page-inner ul {
        padding: 0 0 0 3rem;
        font-size: 2.8rem
    }
    .page-inner ol {
        padding: 0 0 0 3rem;
        font-size: 2.8rem
    }
    .page-inner .post-thumb {
        margin-bottom: 3rem
    }
    .page-inner .post-thumb .thumbnail {
        width: 100%;
        margin-bottom: 2rem
    }
    .page-inner .post-thumb .text {
        width: 100%;
        padding-left: 0
    }
    .page-inner .post-thumb .text p {
        margin-bottom: 2rem
    }
    .page-inner .post-thumb.flex-row-reverse .text {
        padding-left: 0;
        padding-right: 0
    }
    .page-inner .des {
        padding: 2rem;
        margin-bottom: 3rem
    }
    .page-inner .about-box__step--items .des {
        width: calc(100% + 8rem);
        padding: 2rem;
        margin: 0 -4rem -4rem
    }
    .page-inner .about-box__step--items .des p {
        font-size: 2.4rem;
        line-height: 3.6rem
    }
    .page-inner .tabels-box {
        margin-bottom: 3rem
    }
    .page-inner .tabels-box .items .labels {
        padding: 1rem;
        width: 30%
    }
    .page-inner .tabels-box .items .info {
        width: 70%;
        padding: 1rem
    }
    .page-inner .tabels-box.--child .items .labels {
        width: 50%
    }
    .page-inner .tabels-box.--child .items .info {
        width: 50%
    }
    .page-inner .gmap-box {
        margin-bottom: 3rem
    }
    .page-inner .gmap-box__iframe iframe {
        height: auto;
        margin-bottom: 2rem
    }
    .page-inner .list-thumb {
        margin-bottom: 3rem
    }
    .page-inner .list-thumb .d-flex {
        margin: 0 -1rem
    }
    .page-inner .list-thumb .thumbnail {
        padding: 0 1rem
    }
    .page-inner .prices-box {
        margin-bottom: 3rem
    }
    .page-inner .price-box__visa {
        padding-bottom: 4rem
    }
    .page-inner .price-box__visa--head {
        margin-bottom: 5rem
    }
    .page-inner .price-box__visa--head h3 {
        line-height: 13rem!important;
        font-size: 4rem!important
    }
    .page-inner .price-box__about {
        padding: 4rem
    }
    .page-inner .price-box__about--head h3 {
        font-size: 4rem!important;
        line-height: 4.2rem!important
    }
    .page-inner .price-box__about--head p {
        letter-spacing: .12em
    }
    .page-inner .price-box__about--des {
        padding: 4rem 1rem;
        margin-bottom: 2rem
    }
    .page-inner .price-box__about--des p {
        font-size: 1.8rem;
        line-height: 3.4rem
    }
    .page-inner .price-box__about--des p span {
        letter-spacing: .1em;
        line-height: 1;
        display: block;
        margin-bottom: .5rem
    }
    .page-inner .price-box__about--list .d-flex {
        margin: 0
    }
    .page-inner .price-box__about--list .items {
        width: 100%;
        padding: 0;
        margin-bottom: 2rem
    }
    .page-inner .price-box__about--list .items .labels {
        line-height: 5rem;
        font-size: 3rem;
        margin-bottom: 1.5rem
    }
    .page-inner .price-box__about--list .items h3 {
        font-size: 3.4rem!important
    }
    .page-inner .price-box__about--list .items h3 span {
        display: inline-block
    }
    .page-inner .price-box__about--list .items p {
        font-size: 1.8rem;
        line-height: 3.4rem;
        margin-bottom: 2rem
    }
    .page-inner .price-box__about--list .items:last-child {
        margin-bottom: 0
    }
    .page-inner .staff-update img {
        width: 100%
    }
    .page-inner .staff-update .staff_doctor_name {
        left: 3vw;
        bottom: 5vw;
        font-size: 14px
    }
    .page-inner .staff-update .staff_doctor_name .jp {
        font-size: 150%;
        font-weight: 600;
        line-height: 1em
    }
    .contact-form {
        overflow: hidden
    }
    .contact-form .form-group .labels,
    .contact-form .form-group th,
    .contact-form tr .labels,
    .contact-form tr th {
        width: 100%;
        font-weight: 700;
        padding-right: 0;
        line-height: 5rem;
        margin-bottom: 2rem;
        font-size: 3rem
    }
    .contact-form .form-group .input,
    .contact-form .form-group td,
    .contact-form tr .input,
    .contact-form tr td {
        width: 100%
    }
    .contact-form .form-group .input input[type=date],
    .contact-form .form-group .input input[type=email],
    .contact-form .form-group .input input[type=tel],
    .contact-form .form-group .input input[type=text],
    .contact-form .form-group .input select,
    .contact-form .form-group .input textarea,
    .contact-form .form-group td input[type=date],
    .contact-form .form-group td input[type=email],
    .contact-form .form-group td input[type=tel],
    .contact-form .form-group td input[type=text],
    .contact-form .form-group td select,
    .contact-form .form-group td textarea,
    .contact-form tr .input input[type=date],
    .contact-form tr .input input[type=email],
    .contact-form tr .input input[type=tel],
    .contact-form tr .input input[type=text],
    .contact-form tr .input select,
    .contact-form tr .input textarea,
    .contact-form tr td input[type=date],
    .contact-form tr td input[type=email],
    .contact-form tr td input[type=tel],
    .contact-form tr td input[type=text],
    .contact-form tr td select,
    .contact-form tr td textarea {
        height: 9rem;
        padding: 0 2rem;
        font-size: 16px
    }
    .contact-form .form-group .input p,
    .contact-form .form-group td p,
    .contact-form tr .input p,
    .contact-form tr td p {
        font-size: 2.4rem
    }
    .contact-form .form-group .input textarea,
    .contact-form .form-group td textarea,
    .contact-form tr .input textarea,
    .contact-form tr td textarea {
        padding: 2rem;
        min-height: 35rem
    }
    .contact-form .form-group th,
    .contact-form tr th {
        display: flex;
        align-items: center
    }
    .contact-form .form-group th::after,
    .contact-form tr th::after {
        content: '必須';
        color: #fff;
        font-size: 1.4rem;
        margin-left: .8rem;
        font-weight: 600;
        background: #775d3f;
        border-radius: .4rem;
        padding: 0 1rem;
        line-height: 1.8
    }
    .contact-form .form-group.required .labels,
    .contact-form tr.required .labels {
        display: flex;
        align-items: center
    }
    .contact-form .form-group.required .labels::after,
    .contact-form tr.required .labels::after {
        content: '必須';
        color: #fff;
        font-size: 1.4rem;
        margin-left: .8rem;
        font-weight: 600;
        background: #775d3f;
        border-radius: .4rem;
        padding: 0 1rem;
        line-height: 1.8
    }
    #toc_container {
        width: 100%!important;
        margin-bottom: 30rem
    }
    #toc_container .toc_title {
        font-size: 3.5rem
    }
    #toc_container .toc_list li {
        font-size: 3rem
    }
}

.variously-box__main--items.variously-box__main--items-add {
    width: 100%;
}

.variously-box__main--items.variously-box__main--items-add a {
    display: block;
    margin-top: 2rem;
    text-decoration: underline;
    max-width: 650px;
    margin-left: auto;
    margin-right: auto;
}

.announce {
    /* display: none; */
    background: url(../images/announce_bg_pc.jpg);
    background-position: left top;
    background-size: contain;
    background-repeat: no-repeat;
    background-color: #FFF;
}

.announce__title01 {
    font-size: 3.6rem;
    font-weight: 700;
    line-height: 1.666em;
}

.announce__box01 {
    text-align: center;
}

.announce__title02 {
    padding: 0.4rem 6.4rem 0.5rem;
    display: inline-block;
    font-size: 5rem;
    font-weight: 700;
    color: #988006;
    line-height: 1.26em;
    background: #ffffff;
    position: relative;
}

.announce__content01 {
    text-align: center;
    margin: 0 0 0 50rem;
}

.announce__text01 {
    margin: 3rem 0 0;
    font-size: 2.4rem;
    font-weight: 500;
    font-family: "Shippori Mincho", serif;
}

.announce__area {
    margin: 0 auto;
    padding: 10rem 1.5rem 10rem;
    max-width: calc(1080px + 3rem);
}

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

.announce__content02__col02 {
    margin: 0 0 0 4.166%;
    flex: 1;
}

.announce__content02__col01 {
    width: 45.185%;
}

.announce__content02__figure {
    text-align: center;
}

.announce__title03 {
    text-align: center;
    position: relative;
}

.announce__title03__text {
    padding: 0.4rem 0 0.5rem;
    width: 100%;
    background: #4d4d4d;
    color: #FFF;
    font-size: 3.6rem;
    font-weight: 700;
    line-height: 1.44em;
}

.announce__text02 {
    margin: 3.5rem 0 0;
    font-size: 2.4rem;
    line-height: 1.666em;
    letter-spacing: -0.05em;
}

.announce__text02__bold {
    font-weight: 700;
    text-decoration: underline;
}

.announce__text02__gold {
    font-weight: 700;
    text-decoration: underline;
    color: #988006;
}

.announce__title04 {
    text-align: center;
}

.announce__title04__text {
    padding: 1rem 0 1.2rem;
    width: 100%;
    background: #988006;
    color: #FFF;
    font-size: 3.6rem;
    font-weight: 700;
}

.announce__list {
    padding: 5rem 7rem;
    box-shadow: 0px 0px 15px rgba(153, 128, 4, 0.2);
    background: #FFF;
}

.announce__list__item {
    display: flex;
}

.announce__list__number {
    margin: 0 1.3rem 0 0;
    padding: 0 0 0.3rem;
    width: 4rem;
    height: 4rem;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #988006;
    color: #FFF;
    font-family: "Shippori Mincho", serif;
    font-size: 2.4rem;
    font-weight: 700;
}

.announce__list__text {
    margin: 0;
    font-size: 2.4rem;
    font-weight: 700;
    font-family: "Shippori Mincho", serif;
    flex: 1;
}

.announce__content03 {
    margin: 4.7rem 0 0;
}

.announce__list__item:nth-of-type(n + 2) {
    margin: 1.3rem 0 0;
}

.announce__title03:after {
    content: "";
    margin: auto;
    position: absolute;
    bottom: -2rem;
    right: 0;
    left: 0;
    width: 2.7rem;
    height: 2rem;
    background: #4d4d4d;
    clip-path: polygon(100% 0, 0 0, 50% 100%);
    display: block;
}

.announce__content02 {
    margin: 7.5rem 0 0;
}

.announce__title02:before,
.announce__title02:after {
    content: "";
    width: 3.2rem;
    height: 2.5rem;
    display: block;
    position: absolute;
    top: 1.3rem;
}

.announce__title02:before {
    background: url(../images/announce_deco01.svg) center center no-repeat;
    background-size: auto;
    left: 2rem;
}

.announce__title02:after {
    background: url(../images/announce_deco02.svg) center center no-repeat;
    background-size: auto;
    right: 2rem;
}

.announce__text01__bold {
    font-weight: 700;
}

.announce__content01__imgBox {
    display: none;
}

@media (max-width: 768px) {
    .announce__area {
        padding: 0 1.5rem 3rem;
    }
    .announce__content01 {
        margin: 0;
    }
    .announce__content01__imgBox {
        display: block;
        width: calc(100% + 3rem);
        margin: 0 0 0 -1.5rem;
    }
    .announce {
        background: none;
    }
    .announce__content02__img01 {
        object-fit: cover;
        width: 100%;
    }
    .announce__title02 {
        font-size: 6rem;
    }
    .announce__title01 {
        font-size: 4.4rem;
    }
    .announce__text01 {
        font-size: 3rem;
    }
    .announce__content02 {
        margin: 3rem 0 0;
    }
    .announce__content02__row {
        flex-direction: column-reverse;
    }
    .announce__content02__col01 {
        display: none;
    }
    .announce__title03__text {
        padding: 0.6rem 0 0.7rem;
        font-size: 4rem;
    }
    .announce__text02 {
        margin: 2rem 0 0;
        font-size: 2.8rem;
    }
    .announce__content02__col02 {
        margin: 0;
    }
    .announce__content03 {
        margin: 4rem 0 0;
    }
    .announce__title04__text {
        padding: 1.2rem 0 1.3rem;
        font-size: 4rem;
        line-height: 1.2em;
    }
    .announce__list__number {
        width: 7rem;
        height: 7rem;
        font-size: 4.2rem;
    }
    .announce__list__text {
        margin: -0.4rem 0 0;
        font-size: 2.8rem;
        line-height: 1.4em;
    }
    .announce__list__item:nth-of-type(n + 2) {
        margin: 3rem 0 0;
    }
    .announce__list {
        padding: 4rem 2.5rem 4rem 4rem;
        box-shadow: none;
        border: 0.45rem solid #988006;
        border-top: 0;
        border-left: 0;
    }
    .announce__content02__figure {
        margin: 4rem 0 0;
    }
}

.announce {
    position: relative;
    background-color: transparent;
    overflow: hidden;
}

.announce::after {
    content: '';
    width: 192rem;
    height: 64.6rem;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    background: url('../images/announce-arows.webp') no-repeat scroll center bottom;
    background-size: contain;
    z-index: 1;
}

.announce__area {
    position: relative;
    z-index: 9;
}

.announce__content03 {
    text-align: center;
    font-size: 4.2rem;
    line-height: 6.4rem;
    font-weight: 600;
    font-family: "Shippori Mincho", serif;
}

.announce__content03 span {
    position: relative;
}

.announce__content03 span::after {
    content: '';
    width: 100%;
    height: 1.2rem;
    background: #ffffd2;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: -1;
}

.dentures-box {
    padding: 45rem 0 10rem;
    background: url('../images/dentures-bg.webp') no-repeat scroll right bottom;
    background-size: cover;
    margin-top: -35rem;
}

.dentures-box .head {
    margin-bottom: 5rem;
    text-align: center;
}

.dentures-box .head h2 {
    display: inline-flex;
    position: relative;
    background: #979797;
    padding: 2rem 8rem;
    border-radius: 7rem;
    font-size: 4.2rem;
    line-height: 5.2rem;
    color: #ffffff;
    font-weight: 600;
}

.dentures-box .head h2::after {
    content: '';
    width: 0;
    height: 0;
    border-left: 1.5rem solid transparent;
    border-right: 1.5rem solid transparent;
    border-top: 2rem solid #979797;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 99%);
}

.dentures-box__main--txt {
    text-align: center;
}

.dentures-box__main--txt p {
    margin-bottom: 5rem;
    font-size: 2.4rem;
    line-height: 5.2rem;
    text-decoration: underline;
    text-decoration-style: solid;
    text-decoration-color: #b1b1b1;
    text-underline-offset: 1.2rem;
}

.dentures-box__main--txt p span {
    font-size: 3rem;
    font-weight: 700;
    color: #988006;
}

.dentures-box__main--video {
    width: 100%;
    max-width: 60rem;
    margin: 0 auto 5rem;
}

.dentures-box__main--des {
    width: 100%;
    max-width: 88rem;
    margin: 0 auto;
    background: #FFFFFF;
    box-shadow: 4px 4px 0 #9a8023;
    text-align: center;
    padding: 2rem;
}

.dentures-box__main--des h3 {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 1rem;
    margin-bottom: 1rem;
    font-size: 2.4rem;
    color: #91804a;
}

.dentures-box__main--des h3::before {
    content: '';
    width: 2.5rem;
    height: 1px;
    background: #91804a;
}

.dentures-box__main--des p {
    font-size: 2.1rem;
    margin-bottom: 2rem;
}

.dentures-box__main--des p:last-child {
    margin-bottom: 0;
}

@media (max-width: 768px) {
    .announce {
        padding-bottom: 16rem;
    }
    .announce::after {
        width: 75rem;
        height: 59rem;
        background-image: url('../images/announce-arows_sp.webp');
        background-size: cover;
    }
    .announce__content03 {
        font-size: 5rem;
        line-height: 6.8rem;
    }
    .announce__content03 span::after {
        height: 2rem;
    }
    .dentures-box {
        background-image: url('../images/dentures-bg_sp.webp');
    }
    .dentures-box .head h2 {
        padding: 2rem 1rem;
        font-size: 4rem;
    }
    .dentures-box__main--txt {
        text-align: left;
    }
    .dentures-box__main--txt p {
        font-size: 2.8rem;
        text-shadow: 3px 3px 5px rgba(255, 255, 255, 0.3);
        text-decoration: none;
    }
    .dentures-box__main--video {
        max-width: 100%;
    }
    .dentures-box__main--des {
        max-width: 100%;
    }
    .dentures-box__main--des h3 {
        font-size: 2.8rem;
    }
    .dentures-box__main--des p {
        font-size: 2.2rem;
    }
    .page-inner h2 {
        line-height: 5rem;
        font-size: 4rem;
        padding: 2rem;
    }
    .page-inner .post-thumb .thumbnail picture {
        font-size: 2.2rem;
    }
}

.page-inner .post-thumb .thumbnail picture {
    color: red;
    font-size: 1.4rem;
    margin-top: 2rem;
}

.header {
    top: 0;
}

.table-container {
    position: relative;
    margin: 20px 0;
}

.scroll-note {
    display: none;
    font-size: 14px;
    color: #555;
    margin-bottom: 8px;
    position: sticky;
    top: 0;
    background: #fff;
    z-index: 10;
    padding: 4px 0;
}

.table-wrapper {
    width: 100%;
    overflow-x: auto;
}

table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    /* 均等幅 */
    min-width: 900px;
    /* 横スクロール用の最低幅 */
}

th,
td {
    border: 1px solid #999;
    padding: 8px;
    text-align: center;
    vertical-align: middle;
    white-space: normal;
    /* 折り返し可能 */
    word-break: break-word;
    /* 長い語も強制改行 */
}

th {
    background-color: #f5f5f5;
    width: 20%;
    /* 5列なので均等幅 */
}


/* SP用の横スクロール注意文 */

@media (max-width: 768px) {
    .scroll-note {
        display: block;
    }
}

.faq-list {
    font-size: 16px
}

.faq-list a {
    text-decoration: underline
}

.faq-list>dt,.faq-list>dd {
    display: flex;
    align-items: center
}

.faq-list>dt::before,.faq-list>dt::after,.faq-list>dd::before,.faq-list>dd::after {
    display: block
}

.faq-list>dt::before,.faq-list>dd::before {
    display: block;
    width: 2em;
    height: 2em;
    margin-right: 15px;
    border-radius: 100vh;
    color: #fff;
    font-family: "Chatwork Sans L", "Hiragino Sans", "ヒラギノ角ゴシック", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, Helvetica, Arial, system-ui, sans-serif;
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    vertical-align: middle;
    line-height: 2em;
    letter-spacing: normal
}

.faq-list>dt p:not(:first-child),.faq-list>dd p:not(:first-child) {
    margin-top: 1.5em
}

.faq-list>dt {
    position: relative;
    margin-bottom: 10px;
    padding: 20px;
    background: #f7f7f7;
    border-radius: 20px;
    font-weight: 700;
    cursor: pointer
}

.faq-list>dt::before {
    background: #191919;
    content: "Q"
}

.faq-list>dt::after {
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    transition: all .2s ease-out;
    background: url('../images/ico_plus.svg') no-repeat center;
    background-size: contain;
    width: 18px;
    height: 18px;
    content: ""
}

.faq-list>dt.show::after {
    background-image: url('../images/ico_minus.svg')
}

.faq-list>dt .innner {
    width: calc(100% - (2em + 47px))
}

.faq-list>dd {
    display: none;
    padding: 10px 20px 20px;
    margin-bottom: 10px
}

.faq-list>dd::before {
    background: #f03748;
    content: "A"
}

.faq-list>dd .innner {
    margin: -2em 0 0 auto;
    width: calc(100% - (2em + 15px))
}

.faq-list>dd .heading {
    color: inherit;
    font-family: "Chatwork Sans L", "Hiragino Sans", "ヒラギノ角ゴシック", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, Helvetica, Arial, system-ui, sans-serif;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px
}

.faq-list>dd .heading+p {
    margin-top: .6em
}

.faq-list>dd .bold {
    color: #191919;
    font-family: "Chatwork Sans L", "Hiragino Sans", "ヒラギノ角ゴシック", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, Helvetica, Arial, system-ui, sans-serif;
    font-weight: bold
}

.faq-list._white dt {
    background: #fff
}
.faq-list>dd .innner p {
    margin-bottom: 1rem;
    margin-top: 0;
}
.clinic-box__main .btn .more,
.nav-bar-menu .btn .more {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    line-height: 6rem;
    background: #988102;
    border-radius: 1rem;
    font-size: 2.6rem;
    color: #fff;
    font-weight: 600;
    font-family: "Shippori Mincho", serif;
}
.clinic-box__main .btn .more::after,
.nav-bar-menu .btn .more::after {
    content: '';
    width: 1.2rem;
    height: 1.6rem;
    background-image: url('../images/icon_arows_2.webp');
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    margin-left: 2rem;
}
.clinic-box__main .btn .more:hover,
.nav-bar-menu .btn .more:hover {
    background: #000;
}
.clinic-box__main .btn {
    padding-top: 4rem;
    width: 100%;
    display: flex;
    justify-content: center;
}
.clinic-box__main .btn .more {
    max-width: 59rem;
}
.faq-list>dt h4 {
    margin-bottom: 0;
    font-size: 16px;
    color: #000;
    font-family: source-han-sans-japanese, sans-serif;
    font-weight: 700;
}
@media screen and (max-width: 768px) {
    .faq-list>dt,.faq-list>dd {
        align-items:flex-start
    }
    .faq-list>dt::before {
        margin-top: 1rem;
    }
    .faq-list>dt {
        padding: 20px 0;
    }
    .faq-list>dt::after {
        right: 0;
    }
    .clinic-box__main .btn {
        margin-bottom: 4rem;
    }
    .clinic-box__main .btn .more,
    .nav-bar-menu .btn .more {
        line-height: 8rem;
        font-size: 3rem
    }
    .faq-list>dt h4 {
        line-height: 1.66666667;
    }
    .page-inner .post-thumb.--full {
        width: 100%;
    }
}