@charset "UTF-8";

/* メインビジュアル 動画 */
.main-visual{
    padding-top: 80px;
    background: url(../images/s-mainvisual.jpg) no-repeat center center / cover;
}

.main-visual-inner{
    max-width: 1200px;
    margin: auto;
    height: 470px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.main-visual-inner h2{
    font-size: 40px;
    font-family: yu-mincho-pr6n, sans-serif;
    font-weight: 400;
    font-style: normal;
}

.main-visual-inner span{
    font-size: 60px;
    font-family: 'Cinzel', serif;
    letter-spacing: 7px;
}

/* コンテンツ　タイトル */
.info-title{
    width: 50vw;
    padding: 0 0 20px 5vw;
    color: #333333;
    margin-bottom: 90px;
    position:relative;
}

.info-title::after{
    position:absolute;
    content:"";
    height:1px;
    width: 28vw;
    bottom:0;
    background-color: #075E24;
    left:0;
}

.info-title span:nth-child(1){
    width: 100%;
    display: block;
    font-size: 3.5em;
    font-weight: 500;
    margin-bottom: 10px;
    font-family: 'Cinzel', serif;
    background: #075E24;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.info-title span:nth-child(2){
    font-size: 1.3em;
    font-weight: 600;
    margin-right: 10px;
    font-family: shippori-mincho, sans-serif;
    font-weight: 600;
    font-style: normal;
}

/* コンテンツ　タイトル2 */
.info-title2{
    width: 100%;
    color: #333333;
    margin-bottom: 130px;
    position:relative;
    text-align: center;
}

.info-title2::after{
    position:absolute;
    content:"";
    height:1px;
    width: 28vw;
    bottom: -10px;
    background-color: #075E24;
    left: 50%;
    transform: translateX(-50%);
}

.info-title2 span:nth-child(1){
    width: 100%;
    display: block;
    font-size: 3.5em;
    font-weight: 500;
    margin-bottom: 10px;
    font-family: 'Cinzel', serif;
    background: #075E24;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.info-title2 span:nth-child(2){
    font-family: yu-mincho-pr6n, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 24px;
}

/* Clinic features */
.clinic{
    width: 100%;
    padding: 80px 0;
    background: url(../images/concept_bg.webp) no-repeat center center / cover;
}

.clinic-inner{
    max-width: 1200px;
    margin: auto;
    padding: 0 30px;
}

.clinic-title{
    width: 40vw;
    padding: 0 0 20px 5vw;
    color: #58462c;
    margin-bottom: 30px;
    position:relative;
}

.clinic-title::after{
    position:absolute;
    content:"";
    height:1px;
    width: 28vw;
    bottom:0;
    background-color:#997f2e;
    left:0;
}

.clinic-title span:nth-child(1){
    width: 100%;
    display: block;
    font-size: 3.5em;
    font-weight: 500;
    margin-bottom: 10px;
    font-family: 'Cinzel', serif;
    background: linear-gradient(90deg, rgb(153, 137, 105) 0%, rgb(134, 76, 74) 35%, rgb(153, 137, 105) 66%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.clinic-title span:nth-child(2){
    font-size: 1.3em;
    font-weight: 600;
    margin-right: 10px;
    font-family: shippori-mincho, sans-serif;
    font-weight: 600;
    font-style: normal;
}

.feature-title {
    background: rgb(255, 255, 255);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 50%, #B6E2CB 50%);
    border-bottom: 1px solid #075E24;
    display: flex;
}

.feature-title .ja {
    font-size: 1.6rem;
    color: #333333;
    letter-spacing: 0.15em;
    font-family: "Shippori Mincho", serif;
    font-weight: 400;
    display: flex;
    align-items: end;
    margin: 0 0 10px 20px;
    height: 50px;
}
.feature-title .eng {
    font-size: 60px;
    letter-spacing: 0;
    font-family: "Shippori Mincho", serif;
    font-weight: 400;
    color: #333333;
    display: block;
    width: 50px;
    margin: 0 20px 0px;
}

.feature-contents{
    background-color: #fff;
    padding: 50px;
    font-family: zen-kaku-gothic-new, sans-serif;
    font-weight: 400;
    font-style: normal;
    color: #333333;
    font-size: 1.2em;
    display: flex;
    justify-content: space-between;
    box-shadow: 0px 7px 29px 0px rgba(0, 0, 0, 0.08);
    margin: 0 0 50px;
}

.feature-c-l{
    width: 45%;
}

.feature-c-l img{
    width: 100%;
}

.feature-c-r{
    width: 51%;
    padding: 0;
    line-height: 1.5;
    display: flex;
    align-items: center;
}

/* ドクター紹介 */
.doctor{
    background: url(../images/concept_bg.webp) no-repeat center center / cover;
    padding: 150px 0;
}

.doctor-inner{
    max-width: 1200px;
    margin: auto;
}

.doctor-title{
    width: 576px;
    border-bottom: 1px #075E24 solid;
    padding: 0 0 20px 5vw;
    color: #333333;
    margin-bottom: 30px;
    font-family: yu-mincho-pr6n, sans-serif;
    font-weight: 500;
    font-style: normal;
}

.doctor-title span:nth-child(1){
    width: 100%;
    display: block;
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 10px;
}

.doctor-title span:nth-child(2){
    font-size: 32px;
    font-weight: 600;
    margin-right: 10px;
}

.doctor-title span:nth-child(3){
    font-size: 30px;
    font-family: 'Cinzel', serif;
}

.doctor-contents{
    padding: 30px;
}

.doctor-list{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    font-size: 1.1em;
}

.doctor-list li{
    width: 48%;
    font-family: zen-kaku-gothic-new, sans-serif;
    font-weight: 400;
    font-style: normal;
}

.doctor-list li:nth-child(1) img{
    width: 90%;
}

.doctor-list li:nth-child(2) span:nth-child(1){
    display: block;
    margin-bottom: 30px;
    font-size: 18px;
    line-height: 1.8;
}

.doctor-list li:nth-child(2) span:nth-child(2){
    display: block;
    padding: 0 0 10px;
    margin: 0 0 10px;
    font-family: yu-mincho-pr6n, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 24px;
    color: #60390E;
}

.doctor-list li:nth-child(2) p{
    display: block;
    font-size: 18px;
    line-height: 1.8;
}

.doctor-list li:nth-child(3) span:nth-child(1){
    border-bottom: 1px #be7d84 solid;
    display: block;
    padding: 0 0 10px;
    margin: 0 0 10px;
    font-weight: 500;
}

.doctor-list li:nth-child(3) p{
    display: block;
    margin-bottom: 30px;
    font-size: 1em;
    line-height: 1.8;
}

.doctor-list li:nth-child(4) span:nth-child(1){
    border-bottom: 1px #be7d84 solid;
    display: block;
    padding: 0 0 10px;
    margin: 0 0 10px;
    font-weight: 500;
}

.doctor-list li:nth-child(4) p{
    display: block;
    margin-bottom: 30px;
    font-size: 1em;
    line-height: 1.8;
}

.doctor-list li:nth-child(5) span:nth-child(1){
    border-bottom: 1px #be7d84 solid;
    display: block;
    padding: 0 0 10px;
    margin: 0 0 10px;
    font-weight: 500;
}

.doctor-list li:nth-child(5) p{
    display: block;
    margin-bottom: 30px;
    font-size: 1em;
    line-height: 1.8;
}

.doctor-list li:nth-child(6) span:nth-child(1){
    border-bottom: 1px #be7d84 solid;
    display: block;
    padding: 0 0 10px;
    margin: 0 0 10px;
    font-weight: 500;
}

.doctor-list li:nth-child(6) p{
    display: block;
    margin-bottom: 30px;
    font-size: 1em;
    line-height: 1.8;
}

/* スタッフ紹介 */
.stuff{
    width: 100%;
    padding: 80px 0;
}

.stuff-inner{
    max-width: 1200px;
    margin: auto;
}

.stuff-title{
    width: 40vw;
    padding: 0 0 20px 5vw;
    color: #58462c;
    margin-bottom: 30px;
    position:relative;
}

.stuff-title::after{
    position:absolute;
    content:"";
    height:1px;
    width: 28vw;
    bottom:0;
    background-color:#997f2e;
    left:0;
}

.stuff-title span:nth-child(1){
    width: 100%;
    display: block;
    font-size: 3.5em;
    font-weight: 500;
    margin-bottom: 10px;
    font-family: 'Cinzel', serif;
    background: linear-gradient(90deg, rgb(153, 137, 105) 0%, rgb(134, 76, 74) 35%, rgb(153, 137, 105) 66%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.stuff-title span:nth-child(2){
    font-size: 1.3em;
    font-weight: 600;
    margin-right: 10px;
    font-family: shippori-mincho, sans-serif;
    font-weight: 600;
    font-style: normal;
}

.stuff-contents{
    padding: 30px;
}

.stuff-list{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    font-family: shippori-mincho, sans-serif;
    font-weight: 600;
    font-style: normal;
    color: #58462c;
    margin-bottom: 80px;
}

.stuff-list li{
    width: 23%;
    margin-bottom: 15px;
}

.stuff-list li img{
    width: 100%;
}

.stuff-list li span{
    font-size: 1.2em;
    margin-bottom: 15px;
    display: block;
}
.stuff-list li p{
    font-size: 1.8em;
}

.stuff-all > img{
    width: 100%;
}

/* 治療の流れ */
.medical-flow{
    width: 100%;
    padding: 80px 0;
    background: url(../images/dentaldoc-bg.png) no-repeat center center / cover;
}

.medical-flow-inner{
    max-width: 1200px;
    margin: auto;
    padding: 0 30px;
}

.medical-flow-contents{
    padding: 30px;
}

/* Treatment Flow */
.treat-list{
    display: flex;
    margin: 0 0 50px;
    gap: 50px;
}

.treat-list li{
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.treat-list li:nth-of-type(1){
    width: 40%;
}

.treat-list li:nth-of-type(2){
    width: 60%;
}

.treat-list img{
    width: 100%;
}

.treat-list h3{
    font-family: futura-pt, sans-serif;
    font-weight: 500;
    font-style: normal;
    color: #075E24;
    font-size: 18px;
    margin: 0 0 20px;
}

.treat-list h4{
    font-family: zen-old-mincho, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 24px;
    margin: 0 0 20px;
}

.treat-list p{
    font-family: zen-kaku-gothic-new, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 17px;
    line-height: 1.5;
}

.treat-list li p:nth-of-type(2){
    background:#fff;
    box-shadow: 0 0 6px #ccc;
    padding: 15px;
    line-height: 1.5;
    margin: 20px 0 0;
}

/* 医院案内 */
.clinic-info{
    background: url(../images/bg-pickup.webp) no-repeat center center / cover;
    padding: 80px 0;
}

.clinic-info-inner{
    max-width: 1200px;
    margin: auto;
    padding: 0 30px;
}

.clinic-info-title{
    width: 50vw;
    padding: 0 0 20px 5vw;
    color: #58462c;
    margin-bottom: 30px;
    position:relative;
}

.clinic-info-title::after{
    position:absolute;
    content:"";
    height:1px;
    width: 28vw;
    bottom:0;
    background-color:#997f2e;
    left:0;
}

.clinic-info-title span:nth-child(1){
    width: 100%;
    display: block;
    font-size: 3.5em;
    font-weight: 500;
    margin-bottom: 10px;
    font-family: 'Cinzel', serif;
    background: linear-gradient(90deg, rgb(153, 137, 105) 0%, rgb(134, 76, 74) 35%, rgb(153, 137, 105) 66%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.clinic-info-title span:nth-child(2){
    font-size: 1.3em;
    font-weight: 600;
    margin-right: 10px;
    font-family: shippori-mincho, sans-serif;
    font-weight: 600;
    font-style: normal;
}

.clinic-find {
    background: rgb(255, 255, 255);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 71%, #ece5dc 72%);
    border-bottom: 1px solid #7c725e;
    display: flex;
}

.clinic-find .ja {
    font-size: 1.6rem;
    color: #58462c;
    letter-spacing: 0.15em;
    font-family: "Shippori Mincho", serif;
    font-weight: 400;
    display: flex;
    align-items: end;
    margin: 0 0 8px;
}
.clinic-find .eng {
    font-size: 50px;
    letter-spacing: 0;
    font-family: "Shippori Mincho", serif;
    font-weight: 400;
    font-style: italic;
    color: #58462c;
    display: block;
    width: 50px;
    margin: 0 20px 0px;
}

.clinic-contents{
    display: flex;
    padding: 50px;
    background-color: #fff;
    justify-content: space-between;
}

.clinic-contents-l{
    width: 48%;
}

.clinic-contents-l > img{
    width:100%
}

.clinic-contents-r{
    width: 48%;
}

.clinic-info01{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    color: #333333;
    margin-bottom: 40px;
}

.clinic-info01 dt{
    padding: 15px;
    border-bottom: 1px #075E24 solid;
    width: 20%;
    display: flex;
    align-items: center;
}

.clinic-info01 dd{
    padding: 15px;
    border-bottom: 1px #B6E2CB solid;
    width: 80%;
    line-height: 2;
}

.c-calendar{
    width: 100%;
    border-top: 1px #075E24 solid;
    border-bottom: 1px #075E24 solid;
    margin: 0 0 15px;
    font-size: .9em;
    font-family: zen-kaku-gothic-new, sans-serif;
    font-weight: 400;
    font-style: normal;
}

.c-calendar .week{
    border-bottom: 1px #075E24 solid;
    padding: 10px 0;
}

.c-calendar .time-1{
    border-bottom: 1px #075E24 solid;
}
.week th, .week td, .time-1 th, .time-1 td, .time-2 th, .time-2 td{
    padding: 20px 0;
}

.c-calendar th{
    width: 30%;
    font-size: 1.1em;
}

.c-calendar td{
    text-align: center;
    width: calc((100% - 30%) / 7);
}

.c-calendar td span{
    color: #333333;
    display: block;
}

.week td{
    font-weight: bold;
}

.c-txt01{
    width: 90%;
    margin: 0;
    font-size: 1em;
    display: flex;
    font-family: zen-kaku-gothic-new, sans-serif;
    font-weight: 400;
    font-style: normal;
}
.c-txt01 span{
    color: #333333;
    font-size: 1em;
    display: block;
}

.clinic-photo01{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.clinic-photo01 li{
    width: 48%;
    margin-bottom: 50px;
}

.clinic-photo01 li:nth-child(3),.clinic-photo01 li:nth-child(4){
    margin: 0;
}

.clinic-photo01 li>img{
    width: 100%;
}

.clinic-photo01 li>p{
    background-color: #f3f6f6;
    padding: 30px;
    font-size: .9em;
}

.clinic-photo01 li p span{
    color: #ad5b64;
    display: block;
    margin-bottom: 10px;
}

.clinic-photo02{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 50px 5%;
}

.clinic-photo02 li{
    width: 30%;
}

.clinic-photo02 li>img{
    width: 100%;
    height: 200px;
    object-fit: contain;
    margin-bottom: 10px;
}

.clinic-photo02 li>p{
    background-color: #f3f6f6;
    padding: 30px;
    font-size: .9em;
}

.clinic-photo02 li p span{
    color: #ad5b64;
    display: block;
    margin-bottom: 10px;
}
.medical-box01{
    line-height: 1.8;
    font-size: .9em;
    display: flex;
    gap: 50px;
    flex-direction: row-reverse;
}

.medical-box01 img{
    width: 33vw;
}

.medical-box01 p{
    width: 100%;
    display: flex;
    align-items: center;
    font-family: zen-kaku-gothic-new, sans-serif;
    font-weight: 500;
    font-style: normal;
    text-align: justify;
    font-size: 18px;
}
.dock-box h4 {
    font-family: yu-mincho-pr6n, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 28px;
    color: #075E24;
    border-bottom: 3px #B6E2CB dotted;
    padding: 7px 0;
    margin: 0 0 20px;
    width: 100%;
    text-align: left;
}
/* アクセス */
.access{
    width: 100%;
    padding: 150px 0;
    background: url(../images/medical_bg.webp) no-repeat center center / cover;
}

.access-inner{
    max-width: 1200px;
    margin: auto;
    padding: 0 30px;
}

iframe.access-c-map {
    width: 100%;
    min-width: 400px;
    aspect-ratio: 16/9; //アスペクト比（縦横比）を指定
}

.access-list{
    display: flex;
    justify-content: space-between;
}

.access-list li{
    width: 48%;
    display: flex;
    align-items: center;
}

@media screen and (max-width: 896px) {
    /* メインビジュアル 動画 */
    .main-visual{
        padding-top: 80px;
        background: url(../images/s-mainvisual.jpg) no-repeat center center / cover;
    }
    
    .main-visual-inner{
        padding: 80px 0;
        max-width: 100%;
        margin: auto;
        text-align: center;
        height: 300px;
    }
    
    .main-visual-inner h2{
        font-size: 24px;
        font-family: yu-mincho-pr6n, sans-serif;
        font-weight: 400;
        font-style: normal;
    }
    
    .main-visual-inner span{
        font-size: 2em;
        font-family: 'Cinzel', serif;
        letter-spacing: 7px;
    }

    /* パンくず */
    .breadcrumb{
        display: flex;
        max-width: 1200px;
        margin: auto;
        font-family: yu-mincho-pr6n, sans-serif;
        font-weight: 400;
        font-style: normal;
        padding: 0 20px;
    }

    .breadcrumb li{
        margin-right: 10px;
        position: relative;
        color: #58462c;
        font-size: .9em;
        line-height: 4;
    }

    .breadcrumb li a{
        height: 100%;
        display: flex;
        align-items: center;
    }

    .breadcrumb li + li::before{
        content: ">";
    }

    .breadcrumb li a {
        color: #856f28;
    }


    /* コンテンツ　タイトル */
    .info-title{
        width: 100%;
        padding: 0 0 20px 5vw;
        color: #333333;
        margin-bottom: 30px;
        position:relative;
    }

    .info-title::after{
        position:absolute;
        content:"";
        height:1px;
        width: 100%;
        bottom:0;
        background-color: #075E24;
        left:0;
    }

    .info-title span:nth-child(1){
        width: 100%;
        display: block;
        font-size: 2.5em;
        font-weight: 500;
        margin-bottom: 10px;
        font-family: 'Cinzel', serif;
        background: #075E24;
        -webkit-background-clip: text;
        background-clip: text;
        -webkit-text-fill-color: transparent;
        color: transparent;
    }

    .info-title span:nth-child(2){
        font-size: 1em;
        font-weight: 600;
        margin-right: 10px;
        font-family: shippori-mincho, sans-serif;
        font-weight: 600;
        font-style: normal;
    }

    /* コンテンツ　タイトル2 */
    .info-title2{
        width: 100%;
        color: #333333;
        margin-bottom: 80px;
        position:relative;
        text-align: center;
    }
    
    .info-title2::after{
        position:absolute;
        content:"";
        height:1px;
        width: 28vw;
        bottom: -10px;
        background-color: #075E24;
        left: 50%;
        transform: translateX(-50%);
    }
    
    .info-title2 span:nth-child(1){
        width: 100%;
        display: block;
        font-size: 2.5em;
        font-weight: 500;
        margin-bottom: 10px;
        font-family: 'Cinzel', serif;
        background: #075E24;
        -webkit-background-clip: text;
        background-clip: text;
        -webkit-text-fill-color: transparent;
        color: transparent;
    }
    
    .info-title2 span:nth-child(2){
        font-family: yu-mincho-pr6n, sans-serif;
        font-weight: 500;
        font-style: normal;
        font-size: 20px;
    }

    /* Clinic features */
    .clinic{
        width: 100%;
        padding: 30px 0;
        background: url(../images/concept_bg.webp) no-repeat center center / cover;
    }

    .clinic-inner{
        max-width: 95%;
        margin: auto;
        padding: 0;
    }

    .clinic-title{
        width: 40vw;
        padding: 0 0 20px 5vw;
        color: #58462c;
        margin-bottom: 30px;
        position:relative;
    }

    .clinic-title::after{
        position:absolute;
        content:"";
        height:1px;
        width: 28vw;
        bottom:0;
        background-color:#997f2e;
        left:0;
    }

    .clinic-title span:nth-child(1){
        width: 100%;
        display: block;
        font-size: 3.5em;
        font-weight: 500;
        margin-bottom: 10px;
        font-family: 'Cinzel', serif;
        background: linear-gradient(90deg, rgb(153, 137, 105) 0%, rgb(134, 76, 74) 35%, rgb(153, 137, 105) 66%);
        -webkit-background-clip: text;
        background-clip: text;
        -webkit-text-fill-color: transparent;
        color: transparent;
    }

    .clinic-title span:nth-child(2){
        font-size: 1.3em;
        font-weight: 600;
        margin-right: 10px;
        font-family: shippori-mincho, sans-serif;
        font-weight: 600;
        font-style: normal;
    }

    .feature-title {
        background: rgb(255, 255, 255);
        background: linear-gradient(180deg, rgba(255, 255, 255, 0) 60%, #B6E2CB 60%);
        border-bottom: 1px solid #075E24;
        display: flex;
    }

    .feature-title .ja {
        font-size: 1.2rem;
        color: #333333;
        letter-spacing: 0.15em;
        font-family: "Shippori Mincho", serif;
        font-weight: 400;
        display: flex;
        align-items: end;
        margin: 0 10px 10px 10px;
        height: 50px;
        line-height: 1.5;
    }
    .feature-title .eng {
        font-size: 50px;
        letter-spacing: 0;
        font-family: "Shippori Mincho", serif;
        font-weight: 400;
        color: #333333;
        display: block;
        width: 50px;
        margin: 0 20px 0px;
    }

    .feature-contents{
        background-color: #fff;
        padding: 30px 0;
        font-family: zen-kaku-gothic-new, sans-serif;
        font-weight: 400;
        font-style: normal;
        color: #333333;
        font-size: 1em;
        display: block;
        justify-content: space-between;
        box-shadow: 0px 7px 29px 0px rgba(0, 0, 0, 0.08);
        margin: 0 0 50px;
        line-height: 1.5;
    }

    .feature-c-l{
        width: 90%;
        margin: auto;
    }

    .feature-c-r{
        width: 100%;
        padding: 20px;
    }
    .medical-box01{
    line-height: 1.8;
    font-size: .9em;
    margin: 0 0 50px;
    display: block;
    gap: 20px;
}

.medical-box01 img{
    width: 100%;
    min-width: 300px;
    aspect-ratio: 1/1;
    object-fit: cover;
}

.medical-box01 p{
    width: 100%;
    margin: 0 0 50px;
    font-size: 18px;
}
    .dock-box h4 {
    width: 100%;
}

    /* ドクター紹介 */
	.doctor-title{
	margin: 0 auto;
	width: 90%;
	}
	.doctor-list {
        display: block;
	}
	.doctor-list li {
        width: 90%;
		margin: 0 auto;
	}
	.sp_br{
	display: block;
	}
	.bnr img{
	width: 100%;
		}
    /* 初めてご来院される方へ */
    .medical-flow{
        width: 100%;
        padding: 30px 0;
        background: url(../images/dentaldoc-bg.png) no-repeat center center / cover;
    }

    .medical-flow-inner{
        max-width: 90%;
        margin: auto;
        padding: 0;
    }

    .medical-flow-contents{
        padding: 30px;
    }

    .medical-flow-list{
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        font-family: "YakuHanJP", "Lato", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
        font-weight: 500;
        font-style: normal;
        color: #58462c;
        margin-bottom: 80px;
    }

    .medical-flow-list li{
        width: 23%;
        margin-bottom: 15px;
    }

    .medical-flow-list li img{
        width: 100%;
    }

    .medical-flow-list li span{
        font-size: 1.2em;
        margin-bottom: 15px;
        display: block;
    }
    .medical-flow-list li p{
        font-size: 1.8em;
    }

    .medical-flow-all > img{
        width: 100%;
    }

    .medical-flow-list{
        display: block;
        justify-content: space-between;
        width: 90%;
        margin: auto;
    }

    .medical-flow-list li{
        width: 100%;
        margin-bottom: 50px;
    }

    .medical-flow-list li p:nth-child(1){
        display: flex;
        align-items: center;
        border-bottom: 2px dotted #b69f73;
        padding: 0 0 5px 20px;
        margin: 0 0 15px;
    }

    .medical-flow-list li p:nth-child(2){
        font-size: 1em;
        line-height: 2;
        color: #58462c;
    }

    .medical-flow-list li p span:nth-child(1){
        font-size: 4rem;
        font-family: "Shippori Mincho", serif;
        font-weight: 400;
        font-style: italic;
        z-index: 1;
        color: #ad5b64;
        opacity: 0.5;
        margin: 0;
    }

    .medical-flow-list li p span:nth-child(2){
        font-size: 1.4rem;
        color: #58462c;
        font-family: "Shippori Mincho", serif;
        font-weight: 400;
        margin: 0 0 0 10%;
    }

    /* Treatment Flow */
    .treat-list{
        display: flex;
        margin: 0 0 80px;
        gap: 20px;
        flex-direction: column;
    }
    
    .treat-list li{
        display: flex;
        flex-direction: column;
        justify-content: center;
    }
    
    .treat-list li:nth-of-type(1){
        width: 100%;
    }
    
    .treat-list li:nth-of-type(2){
        width: 100%;
    }
    
    .treat-list img{
        width: 100%;
    }
    
    .treat-list h3{
        font-family: futura-pt, sans-serif;
        font-weight: 500;
        font-style: normal;
        color: #075E24;
        font-size: 18px;
        margin: 0 0 20px;
    }
    
    .treat-list h4{
        font-family: zen-old-mincho, sans-serif;
        font-weight: 700;
        font-style: normal;
        font-size: 24px;
        margin: 0 0 20px;
    }
    
    .treat-list p{
        font-family: zen-kaku-gothic-new, sans-serif;
        font-weight: 500;
        font-style: normal;
        font-size: 17px;
        line-height: 1.5;
    }
    
    .treat-list li p:nth-of-type(2){
        background:#fff;
        box-shadow: 0 0 6px #ccc;
        padding: 15px;
        line-height: 1.5;
        margin: 20px 0 0;
    }

    /* 医院案内 */
    .clinic-info{
        background: url(../images/medical_bg.webp) no-repeat center center / cover;
        padding: 30px 0;
    }

    .clinic-info-inner{
        max-width: 95%;
        margin: auto;
        padding: 0;
    }

    .clinic-info-title{
        width: 50vw;
        padding: 0 0 20px 5vw;
        color: #58462c;
        margin-bottom: 30px;
        position:relative;
    }

    .clinic-info-title::after{
        position:absolute;
        content:"";
        height:1px;
        width: 28vw;
        bottom:0;
        background-color:#997f2e;
        left:0;
    }

    .clinic-info-title span:nth-child(1){
        width: 100%;
        display: block;
        font-size: 3.5em;
        font-weight: 500;
        margin-bottom: 10px;
        font-family: 'Cinzel', serif;
        background: linear-gradient(90deg, rgb(153, 137, 105) 0%, rgb(134, 76, 74) 35%, rgb(153, 137, 105) 66%);
        -webkit-background-clip: text;
        background-clip: text;
        -webkit-text-fill-color: transparent;
        color: transparent;
    }

    .clinic-info-title span:nth-child(2){
        font-size: 1.3em;
        font-weight: 600;
        margin-right: 10px;
        font-family: shippori-mincho, sans-serif;
        font-weight: 600;
        font-style: normal;
    }

    .clinic-find {
        background: rgb(255, 255, 255);
        background: linear-gradient(180deg, rgba(255, 255, 255, 0) 71%, #ece5dc 72%);
        border-bottom: 1px solid #7c725e;
        display: flex;
    }

    .clinic-find .ja {
        font-size: 1.6rem;
        color: #58462c;
        letter-spacing: 0.15em;
        font-family: "Shippori Mincho", serif;
        font-weight: 400;
        display: flex;
        align-items: end;
        margin: 0 0 8px;
    }
    .clinic-find .eng {
        font-size: 50px;
        letter-spacing: 0;
        font-family: "Shippori Mincho", serif;
        font-weight: 400;
        font-style: italic;
        color: #58462c;
        display: block;
        width: 50px;
        margin: 0 20px 0px;
    }

    .clinic-contents{
        display: flex;
        padding: 50px;
        background-color: #fff;
        justify-content: space-between;
    }

    .clinic-contents-l{
        width: 90%;
        margin: auto;
    }

    .clinic-contents-l > img{
        width:100%
    }

    .clinic-contents-r{
        width: 90%;
        margin: auto;
    }

    .clinic-info01{
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        color: #333333;
        margin-bottom: 40px;
    }

    .clinic-info01 dt{
        padding: 15px;
        border-bottom: 1px #075E24 solid;
        width: 25%;
        display: flex;
        align-items: center;
    }

    .clinic-info01 dd{
        padding: 15px;
        border-bottom: 1px #B6E2CB solid;
        width: 75%;
        line-height: 2;
    }

    .c-calendar{
        width: 100%;
        border-top: 1px #075E24 solid;
        border-bottom: 1px #075E24 solid;
        margin: 0 0 15px;
        font-size: .9em;
        font-family: zen-kaku-gothic-new, sans-serif;
        font-weight: 400;
        font-style: normal;
    }

    .c-calendar .week{
        border-bottom: 1px #075E24 solid;
        padding: 10px 0;
    }

    .c-calendar .time-1{
        border-bottom: 1px #075E24 solid;
    }
    .week th, .week td, .time-1 th, .time-1 td, .time-2 th, .time-2 td{
        padding: 20px 0;
    }

    .c-calendar th{
        width: 30%;
        font-size: 1.1em;
    }

    .c-calendar td{
        text-align: center;
        width: calc((100% - 30%) / 7);
    }

    .c-calendar td span{
        color: #333333;
        display: block;
    }

    .week td{
        font-weight: bold;
    }

    .c-txt01{
        width: 90%;
        margin: 0;
        font-size: 1em;
        display: flex;
        font-family: zen-kaku-gothic-new, sans-serif;
        font-weight: 400;
        font-style: normal;
    }
    .c-txt01 span{
        color: #333333;
        font-size: 1em;
        display: block;
    }

    .clinic-photo01{
        display: block;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .clinic-photo01 li{
        width: 100%;
        margin-bottom: 50px;
        padding: 0 15px;
    }

    .clinic-photo01 li:nth-child(3),.clinic-photo01 li:nth-child(4){
        margin: 0 0 50px;
    }

    .clinic-photo01 li>img{
        width: 100%;
    }

    .clinic-photo01 li>p{
        background-color: #f3f6f6;
        padding: 30px;
        font-size: .9em;
    }

    .clinic-photo01 li p span{
        color: #ad5b64;
        display: block;
        margin-bottom: 10px;
    }

    .clinic-photo02{
        display: block;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 50px 5%;
    }

    .clinic-photo02 li{
        width: 100%;
    }

    .clinic-photo02 li>img{
        width: 100%;
        height: 200px;
        object-fit: contain;
        margin-bottom: 10px;
    }

    .clinic-photo02 li>p{
        background-color: #f3f6f6;
        padding: 30px;
        font-size: .9em;
    }

    .clinic-photo02 li p span{
        color: #ad5b64;
        display: block;
        margin-bottom: 10px;
    }

    /* アクセス */
    .access{
        width: 100%;
        padding: 80px 0;
        background: url(../images/medical_bg.webp) no-repeat center center / cover;
    }

    .access-inner{
        max-width: 90%;
        margin: auto;
        padding: 0;
    }

    iframe.access-c-map {
        width: 100%;
        min-width: 330px;
        aspect-ratio: 16/9; //アスペクト比（縦横比）を指定
    }

    .access-list{
        display: flex;
        justify-content: space-between;
        flex-direction: column;
        gap: 30px;
    }

    .access-list li{
        width: 100%;
        display: flex;
        align-items: center;
    }
}

@media screen and (min-width: 897px) and (max-width:1300px) {
    .medical-flow-list{
        display: flex;
        justify-content: space-between;
        padding: 50px 50px 0;
        margin-bottom: 0;
    }
}
/* Dock */
.dock{
    padding: 30px 0;
    background: url(../images/bg-dock.png) no-repeat center / cover;
}

.dock-inner{
    width: 70%;
    margin: auto;
    text-align: center;
}

.dock-inner h2{
    font-family: zen-old-mincho, sans-serif;
    font-weight: 400;
    font-style: normal;
    text-align: center;
    font-size: 24px;
    color: #075E24;
    font-weight: bold;
    margin: 0 0 80px;
}

.dock-inner h2 span{
    font-family: 'Cinzel', serif;
    font-size: 5.5vw;
    display: block;
    text-align: center;
    color: #075E24;
    font-weight: normal;
}

.dock-inner > p{
    font-family: zen-kaku-gothic-new, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 18px;
    line-height: 1.8;
    width: 75%;
    margin: 0 auto 50px;
    text-align: left;
}

.dock-inner img{
    margin: 0 0 50px;
    object-fit: cover;
}

.dock-box{
    background-color: #fff;
    padding: 70px;
    box-shadow: 0px 0px 6px 1px #ccc;
    margin: 0 0 50px;
}

.dock-box h3{color: #075E24;font-family: zen-kaku-gothic-new, sans-serif;font-weight: 500;font-style: normal;font-size: 24px;text-align: center;margin: 0 0 50px;}

.dock-list{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 30px 0;
    font-family: zen-kaku-gothic-new, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 18px;
    width: 100%;
}

.dock-list li{
    width: 48%;
    background: rgba(0,152,72,.7);
    color: #fff;
    border-radius: 10px;
    padding: 20px;
    text-align: center;
}

.dock-card{
    display: flex;
    justify-content: space-between;
    border:1px #ccc solid
}

.dock-card li{
    width: 33.3333%;
    padding: 30px;
    background: rgba(255,255,255,.6);
}

.dock-card li:not(:last-child){
    border-right:1px #ccc solid
}

.dock-card li h3{
    font-family: zen-kaku-gothic-new, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: 22px;
    text-align: left;
    color: #075E24;
    line-height: 1.3;
    height: 80px;
}

.dock-card li p{text-align: left;line-height: 2;}

@media screen and (max-width: 896px) {
    /* Dock */
    .dock{
        padding: 100px 0;
        background: url(../images/bg-dock.png) no-repeat center / cover;
    }

    .dock-inner{
        width: 90%;
        margin: auto;
        text-align: center;
    }

    .dock-inner h2{
        font-family: zen-old-mincho, sans-serif;
        font-weight: 400;
        font-style: normal;
        text-align: center;
        font-size: 24px;
        color: #075E24;
        font-weight: bold;
        margin: 0 0 50px;
    }

    .dock-inner h2 span{
        font-family: 'Cinzel', serif;
        font-size: 3rem;
        display: block;
        text-align: center;
        color: #075E24;
        font-weight: normal;
    }

    .dock-inner > p{
        font-family: zen-kaku-gothic-new, sans-serif;
        font-weight: 500;
        font-style: normal;
        font-size: 18px;
        line-height: 1.8;
        width: 100%;
        margin: 0 auto 50px;
        text-align: left;
    }

    .dock-inner img{
        margin: 0 0 50px;
        width: 100%;
    }

    .dock-box{
        background-color: #fff;
        padding: 25px;
        box-shadow: 0px 0px 6px 1px #ccc;
        margin: 0 0 50px;
    }

    .dock-box h3{color: #075E24;font-family: zen-kaku-gothic-new, sans-serif;font-weight: 500;font-style: normal;font-size: 24px;text-align: center;margin: 0 0 50px;}

    .dock-list{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: 30px;
        font-family: zen-kaku-gothic-new, sans-serif;
        font-weight: 500;
        font-style: normal;
        font-size: 18px;
        width: 100%;
    }

    .dock-list li{
        width: 100%;
        background: rgba(0,152,72,.7);
        color: #fff;
        border-radius: 10px;
        padding: 20px;
        text-align: center;
    }

    .dock-card{
        display: flex;
        justify-content: space-between;
        border:1px #ccc solid;
        flex-direction: column;
    }

    .dock-card li{
        width: 100%;
        padding: 30px;
        background: rgba(255,255,255,.6);
    }

    .dock-card li:not(:last-child){
        border-right: none;
        border-bottom: 1px #ccc solid;
    }

    .dock-card li h3{
        font-family: zen-kaku-gothic-new, sans-serif;
        font-weight: 500;
        font-style: normal;
        font-size: 22px;
        text-align: left;
        color: #075E24;
        line-height: 1.3;
        height: 80px;
    }

    .dock-card li p{text-align: left;line-height: 2;}
}

.consultation
{
    width: 100%;
    padding: 80px 3%;
}
.consultation_inner
{
    max-width: 1200px;
    margin: 0 auto;
    border: 1px solid #00620B;
    padding: 3vw;
}
.consultation .ttl
{
    text-align: center;
    font-size: 80px;
    margin-bottom: 50px;
    color: #5DA35F;
    font-family: yu-mincho-pr6n, sans-serif;
    letter-spacing: 0.08em;
    line-height: 0.6;
}
.consultation .ttl span
{
    font-size: 30px;
    color: #062D00;
}
.flex
{
    display: flex;
    justify-content: space-between;
    gap: 30px;
    flex-wrap: wrap;
}
.list_box
{
    width: calc((100% - 30px) / 2);
}
.list-disc li
{
    list-style: disc;
    margin-bottom: 10px;
    margin-left: 20px;
    padding-left: 10px;
    font-size: 18px;
        font-family: zen-kaku-gothic-new, sans-serif;
    font-weight: 500;
    font-style: normal;
}
@media screen and (max-width: 896px) {
    .list_box
{
    width: 100%;
}
    .consultation .ttl {
    font-size: 34px;
    line-height: 0.8;
}
    .consultation .ttl span {
    font-size: 20px;
    color: #062D00;
}
    .consultation_inner {
    padding: 20px;
}
    .consultation .flex {
    gap: 0;
}
}
.h3_ttl
{
    font-size: 50px;
    color: #0C5C00;
    text-align: center;
    margin-bottom: 50px;
    font-family: yu-mincho-pr6n, sans-serif;
}
.inspection
{
    background: #D5EBE8;
    padding: 50px 3%;
}
.inspection .ttl
{
    font-size: 50px;
    font-weight: 500;
    text-align: center;
    margin-bottom: 50px;
    color: #062D00;
}
.inspection_box
{
    width: calc((100% - 60px) / 3);
    border: 1px solid #00681C;
    font-size: 20px;
    padding: 3vw 1vw;
    background: #FFFFFF;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    color: #366B3C;
}
.inspection .flex
{
    max-width: 1200px;
    margin: 0 auto;
}
@media screen and (max-width: 896px) {
    .inspection_box
{
    width: 100%;
    padding: 50px 10px;
}
    .h3_ttl {
    font-size: 30px;
}
}
.treatment_flow
{
    padding: 30px 3% 50px;
    background: #AAE3BB;
}
.treatment_flow .ttl
{
    text-align: center;
    font-size: 80px;
    margin-bottom: 50px;
    color: #FFFFFF;
    font-family: yu-mincho-pr6n, sans-serif;
    letter-spacing: 0.08em;
    line-height: 0.6;
}
.flow_inner
{
    max-width: 1200px;
    margin: 0 auto;
}
.step_box
{
    display: flex;
    margin-bottom: 30px;
    flex-wrap: wrap;
}
.treatment_flow .ttl span
{
    font-size: 30px;
    color: #062D00;
}
.treatment_flow .sub_txt
{
    font-size: 24px;
    margin-bottom: 30px;
    text-align: center;
}
.step_num
{
    width: 25%;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
    font-size: 20px;
    padding: 10px;
    background: #7FB785;
    flex-wrap: wrap;
}
.step_txt
{
    padding: 30px;
    background: #FFFFFF;
    font-size: 18px;
    width: 75%;
}
.sub
{
    font-weight: 600;
    padding: 30px 0 10px;
}
@media screen and (max-width: 896px) {
.treatment_flow .ttl {
    text-align: center;
    font-size: 30px;
    line-height: 1.6;
}
    .treatment_flow .ttl span {
    font-size: 25px;
}
    .treatment_flow .sub_txt {
    font-size: 20px;
}
    .step_txt {
    padding: 20px;
}
    .step_num
{
    width: 100%;
}
.step_txt
{
    width: 100%;
}
}
.pankey
{
    padding: 50px 3%;
}
.pankey_inner
{
    max-width: 1200px;
    margin: 0 auto;
}
.sub_ttl
{
    font-size: 30px;
    color: #009A1F;
    margin-bottom: 30px;
    font-family: yu-mincho-pr6n, sans-serif;
}
.pankey .txt
{
    width: 58%
}
.pankey .img
{
    width: 35%;
}
p
{
    font-family: zen-kaku-gothic-new, sans-serif;
    font-size: 18px;
    line-height: 1.6;
    letter-spacing: 0.08em;
}
@media screen and (max-width: 896px) {
    .pankey .txt
{
    width: 100%
}
.pankey .img
{
    width: 100%;
}
}