/* clinic custom styles */
:root {
    --myblack: #595656;
    --mygreen: #69AFB3;
    --wp--custom--font-family--noto-sans-jp: "Noto Sans JP", sans-serif;
    --wp--custom--font-family--lato: Lato, sans-serif;
    --wp--custom--font-family--roboto: Roboto, sans-serif;
    --wp--custom--line-height--tiny: 1.25;
    --wp--custom--line-height--small: 1.428;
    --wp--custom--line-height--normal: 1.875;
    --wp--custom--spacing--container-slim-width: 1000px;
    --wp--custom--spacing--container-width: 1200px;
    --wp--custom--spacing--container-wide-width: 1600px;
    --wp--custom--spacing--container-padding: 15px;
    --wp--custom--spacing--content-width: 850px;

    /* theme.json -> clinic color */
    --wp--custom--color--clinic--primary: #84ccc9;
    --wp--custom--color--clinic--day-sat: #8FBFD5;
    --wp--custom--color--clinic--day-sun: #E7B0C6;
    --wp--custom--color--clinic--time-am: #facd89;
    --wp--custom--color--clinic--time-pm: #cce198;
    --wp--custom--color--clinic--image-before: #aaaaaa;
    --wp--custom--color--clinic--image-after: #cfa972;
    --wp--custom--color--clinic--annotation: #fef7e4;
}

.single-clinic {
    #content.l-container {
        max-width: 790px;
        padding: 0 20px;
        @media screen and(min-width: 600px) {
            padding: 0;
        }
    }

    #main_content.l-mainContent {
        padding: 0;
    }

    /* category title before like color button */

    .entry-clinic__categories {
        padding-left: 0;
        list-style: none;
    }

    .entry-clinic__category {
        border-radius: 5px;
        line-height: 2.2;

        a {
            border-radius: 5px;
        }

        &.area {
            border-radius: 5px;
            border: 1px solid var(--myblack);
            padding: 0 1em;
        }
    }

    /*  station 口コミ 1件*/

    .header-meta__review-count.js-open-tab {
        background: unset;
        border: unset;
    }

    /* slide */

    /* Slider */

    .postkclinic-slider {
        margin-bottom: 16px;
        border-radius: 4px;
        overflow: hidden;
        position: relative;
    }

    .postkclinic-slider-track {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        -webkit-overflow-scrolling: touch;
        cursor: grab;
        gap: 15px;
        &.is-dragging {
            cursor: grabbing;
        }

        @media screen and (max-width: 600px) {
            gap: 15px;
        }
    }

    .postkclinic-slider-track::-webkit-scrollbar {
        display: none;
    }

    .postkclinic-slide {
        flex: 0 0 100%;
        scroll-snap-align: center;
        width: 100%;
        aspect-ratio: 4 / 3;
        @media screen and (max-width: 600px) {
            flex: 0 0 90%;
            width: 90%;
        }
    }

    .postkclinic-slide img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        border-radius: 12px;
    }

    @media (min-width: 600px) {
        .postkclinic-slider {
            width: 100%;
            flex-shrink: 0;
            margin-bottom: 0;
        }

        .postkclinic-slider-track {
            gap: 15px;
            /* スクロールバーを常に表示する場合は 'scroll' */
            overflow-x: auto;
        }

        .postkclinic-slide {
            flex: 0 0 42%;
        }
    }

    /*  intro title*/

    .clinic-intro-title {
        border: unset;
        padding: unset;
        /* 韓国でも珍しい【皮膚科専門医】の院長が1対1で診療から施術までサポート */
        font-weight: 400;
        font-size: 22px;
        line-height: 160%;
        /* または35px */
        letter-spacing: 0.05em;
        color: var(--myblack);
        margin-top: 20px;

        span{
            /* 1. 基本設定 */
            /*display: inline; !* テキストの幅に合わせて背景が引かれるようにする (重要) *!*/
            /*padding-bottom: 0.1em; !* (オプション) ラインの上下に少しパディングを設ける *!*/

            /* 2. 背景の設定 */
            /*background-image: linear-gradient(transparent 60%, yellow 60%);*/
            /*
              - transparent 60%: 上から60%までは透明
              - yellow 60%: 60%の位置から黄色で塗りつぶし
              => 結果として、文字の下部に黄色いラインが引かれる
            */
            /*background-repeat: no-repeat;*/
            /*background-size: 100% 1.2em; !* 背景のサイズ。2emは見出しの行の高さの目安 *!*/
            /*background-position: 0 0.2em; !* ラインの縦位置を調整 *!*/
        }


        @media screen and (max-width: 600px) {
            font-size: 20px;
            leading-trim: NONE;
            line-height: 160%;
            letter-spacing: 5%;
        }
    }

    /*intro text*/

    .clinic-intro-text {
        font-style: normal;
        font-weight: 400;
        font-size: 16px;
        line-height: 200%;
        /* または32px */
        letter-spacing: 0.05em;
        color: var(--myblack);

        span{
            /* 1. 基本設定 */
            /*display: inline; !* テキストの幅に合わせて背景が引かれるようにする (重要) *!*/
            /*padding-bottom: 0.1em; !* (オプション) ラインの上下に少しパディングを設ける *!*/

            /* 2. 背景の設定 */
            /*background-image: linear-gradient(transparent 60%, yellow 60%);*/
            /*
              - transparent 60%: 上から60%までは透明
              - yellow 60%: 60%の位置から黄色で塗りつぶし
              => 結果として、文字の下部に黄色いラインが引かれる
            */
            /*background-repeat: no-repeat;*/
            /*background-size: 100% 1.2em; !* 背景のサイズ。2emは見出しの行の高さの目安 *!*/
            /*background-position: 0 0.2em; !* ラインの縦位置を調整 *!*/
        }


        @media screen and (max-width: 600px) {
            font-size: 14px;
            leading-trim: NONE;
            line-height: 200%;
            letter-spacing: 5%;
        }
    }

}

/*--------------------------------------------------------------
# タブコンテンツ
--------------------------------------------------------------*/
.tab-contents__tabs {
    display: grid;
    gap: 5px;
    border-bottom: 5px solid;
    margin-bottom: 2em;
    grid-template-columns: repeat(4, 1fr);

}

@media (max-width: 768px) {
    .tab-contents__tabs {
        padding: 0 5px;
        margin-left: calc(var(--wp--custom--spacing--container-padding) * -1);
        margin-right: calc(var(--wp--custom--spacing--container-padding) * -1);
    }
}

.tab-contents__tabs button {
    flex: 1;
    padding: 0.5em;
    background: 1px solid hsla(0, 0%, 78%, .5);
    min-height: 4em;
    line-height: var(--wp--custom--line-height--small);
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;

    font-weight: 500;
    font-style: Medium;

    leading-trim: NONE;
    line-height: 120%;
    letter-spacing: 5%;
    @media screen and (max-width: 600px) {
        font-size: 12px;
    }

    /* PC表示（デフォルト） */

    .sp-break {
        display: none; /* 要素自体を非表示・改行もしない */
    }

    /* SP表示（例：最大幅767px）のメディアクエリ */
    @media screen and (max-width: 600px) {
        .sp-break {
            /* この要素をブロック要素にすることで、直後の要素を強制的に改行させる */
            display: block;
            width: 0; /* 要素の幅をゼロにして、余計なスペースを取らないようにする */
            height: 0;
            line-height: 0;
            margin: 0;
            padding: 0;
        }
    }
}

.tab-contents__tabs button[aria-selected="true"] {
    color: #ffffff;
    background: var(--mygreen);
}

.tab-contents__tabs button[aria-selected="false"]:hover {
    opacity: 0.8;
}

.entry-clinic .tab-contents__tabs {
    border-color: var(--mygreen);

}

/*--------------------------------------------------------------
# クリニック情報投稿詳細
--------------------------------------------------------------*/
.entry-clinic .tab-contents__tabs {
    border-color: var(--wp--custom--color--clinic--primary);
}

.entry-clinic .tab-contents__tabs button[aria-selected=true] {
    background: var(--wp--custom--color--clinic--primary);
}

.entry-clinic .heading-2 span {
    font-size: 0.7em;
}

.entry-clinic .entry-clinic__thumbnail {
    margin-bottom: 3em;
}

.entry-clinic .entry-clinic__thumbnail img {
    width: 100%;
}

.entry-clinic__header {
    margin-bottom: 2em;
}

.entry-clinic__categories {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 1em;
    gap: 0.5em;
    font-size: 18px;
    line-height: var(--wp--custom--line-height--small);
}

@media (max-width: 767px) {
    .entry-clinic__categories {
        font-size: 12px;
    }
}

.entry-clinic__category a {
    display: block;
    background: var(--wp--custom--color--gray--500);
    padding: 0.1em 0.7em;
    color: var(--wp--preset--color--white);
}

.entry-clinic__slider-wrapper {
    display: block;
}

.entry-clinic__slider-wrapper .slider-main {
    grid-row: 1/3;
    grid-column: 1;
    align-self: flex-start;
}

.entry-clinic__slider-wrapper .slider-thumbnail {
    grid-column: 2;
    grid-row: 2;
    align-self: flex-end;
}

@media (max-width: 767px) {
    .entry-clinic__slider-wrapper .slider-thumbnail {
        margin: 10px 0 3em;
    }
}

.entry-clinic__slider-content {
    grid-row: 1;
    grid-column: 2;
}

.entry-clinic__title {
    font-weight: 600;
    font-size: 32px;
    line-height: 160%;
    letter-spacing: 0.05em;
    color: var(--myblack);
}

@media (max-width: 600px) {
    .entry-clinic__title {
        font-size: 22px !important;
    }
}

.entry-clinic__subtitle {
    font-weight: 500;
    font-size: 20px;
    color: var(--myblack);
    line-height: var(--wp--custom--line-height--small);
    margin-top: 0.5em;
}

@media (max-width: 600px) {
    .entry-clinic__subtitle {
        font-size: 18px;
    }
}

.entry-clinic__introduction-title {
    font-size: 22px;
}

@media (max-width: 600px) {
    .entry-clinic__introduction-title {
        font-size: 16px;
    }
}

.entry-clinic__introduction-text {
    margin-top: 1em;
}

.entry-clinic__line-banner {
    display: block;
    max-width: 700px;
    margin: 3em auto;
    text-align: center;
}

.entry-clinic__ex-posts > * + * {
    margin-top: 1em;
}

.entry-clinic__medical-hours {
    table-layout: fixed;
    text-align: center;
    border-collapse: separate;
    border-spacing: 4px 0;
    line-height: var(--wp--custom--line-height--small);
    margin: 0 -2px;
    width: calc(100% + 4px);

    td {
        border: none;
    }
}

@media (max-width: 767px) {
    .entry-clinic__medical-hours {
        writing-mode: vertical-lr;
    }
}

.entry-clinic__medical-hours thead th {
    padding: 0.4em;
    font-size: 18px;
    font-weight: 500;
    text-align: center;
    color: #fff;
    background: rgba(89, 86, 86, 0.6);
    font-style: normal;
    font-weight: 600;
    font-size: 16px;
    line-height: 160%;
    letter-spacing: 0.05em;
    outline: 2px solid #fff;
}

@media (max-width: 767px) {
    .entry-clinic__medical-hours thead th {
        font-size: 14px;
        width: 4em;
    }
}

.entry-clinic__medical-hours thead th:nth-child(1) {
    background: transparent;
    border: none;
}

.entry-clinic__medical-hours thead th:nth-child(7) {
    background: var(--wp--custom--color--clinic--day-sat);
}

.entry-clinic__medical-hours thead th:nth-child(8) {
    background: var(--wp--custom--color--clinic--day-sun);
}

.entry-clinic__medical-hours tbody tr td {
    /* テーブルセル内で中身を縦方向中央に配置 */
    vertical-align: middle;
    /* テーブルセル内で中身を横方向中央に配置 */
    text-align: center;
    background: #5956560D;
    outline: 2px solid #fff;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    /* または21px */
    letter-spacing: 0.05em;
    color: var(--myblack);
}


.entry-clinic__medical-hours tbody tr .entry-clinic__medical-hours-cell {
    writing-mode: horizontal-tb;
    min-height: 3em;
    display: flex;
    flex-flow: column;
    justify-content: center;
    white-space: nowrap;
    @media screen and (min-width: 600px) {
        min-height: 5em;
    }
}


.entry-clinic__medical-hours tbody tr .entry-clinic__medical-hours-badge {
    display: none;
    /*font-size: 14px;*/
    /*display: block;*/
    /*margin: 0 auto;*/
    /*width: 5.8em;*/
    /*padding: 0.2em;*/
    /*border-radius: 100px;*/
    /*margin-bottom: 0.2em;*/
}

@media (max-width: 767px) {
    .entry-clinic__medical-hours tbody tr .entry-clinic__medical-hours-badge {
        width: 9em;
        margin-bottom: 0.5em;
    }
}

.entry-clinic__medical-hours tbody tr .entry-clinic__medical-hours-badge + .entry-clinic__medical-hours-closed {
    margin-top: 1.5em;
}

@media (max-width: 767px) {
    .entry-clinic__medical-hours tbody tr .entry-clinic__medical-hours-badge + .entry-clinic__medical-hours-closed {
        margin-top: 0;
    }
}

.entry-clinic__medical-hours tbody tr:nth-child(1) td {
    padding: 0.8em 0 0.3em;
    padding-top: 0;
}

.entry-clinic__medical-hours tbody tr td:nth-child(1) {
    background: #69AFB31A;
}

@media (max-width: 767px) {
    .entry-clinic__medical-hours tbody tr:nth-child(1) td {
        padding: 0.5em;
    }
}

.entry-clinic__medical-hours tbody tr:nth-child(1) td[rowspan] {
    vertical-align: middle;
}

.entry-clinic__medical-hours tbody tr:nth-child(1) .entry-clinic__medical-hours-badge {
    background: var(--wp--custom--color--clinic--time-am);
}

.entry-clinic__medical-hours tbody tr:nth-child(2) td {
    /*padding-bottom: 0.8em;*/
}

@media (max-width: 767px) {
    .entry-clinic__medical-hours tbody tr:nth-child(2) td {
        padding: 0.5em;
    }
}

.entry-clinic__medical-hours tbody tr:nth-child(2) .entry-clinic__medical-hours-badge {
    background: var(--wp--custom--color--clinic--time-pm);
}

.entry-clinic__medical-hours tbody tr .entry-clinic__medical-hours-time {
    display: flex;
    flex-flow: column;
    align-items: center;
}

.entry-clinic__medical-hours tbody tr .entry-clinic__medical-hours-time span:nth-child(2) {
    transform: rotate(90deg);
}

@media (max-width: 767px) {
    .entry-clinic__medical-hours tbody tr .entry-clinic__medical-hours-time span:nth-child(2) {
        transform: none;
    }
}

@media (max-width: 767px) {
    .entry-clinic__medical-hours tbody tr .entry-clinic__medical-hours-time {
        justify-content: center;
        flex-flow: row;
    }
}

.entry-clinic__medical-hours tbody tr .entry-clinic__medical-hours-closed {
    display: block;
    font-weight: 500;
    color: var(--wp--preset--color--primary);
}

.entry-clinic__campaign {
    border-top: 2px solid var(--wp--custom--color--gray--400);
    border-bottom: 2px solid var(--wp--custom--color--gray--400);
}

.entry-clinic__campaign-item-title {
    padding: 0 !important;
    border: none !important;
}

.entry-clinic__campaign-item {
    padding: 2.2em 5em 2em 5.5em;
    position: relative;
    background: url(./images/clinic-campain-ico.svg) no-repeat left 1em top 2em/3.2em;
}

.entry-clinic__campaign-item:not(:last-child) {
    border-bottom: 1.5px dotted #D9D9D9;
}

.entry-clinic__campaign-item-title {
    text-align: left;
    font-size: 20px;
    font-weight: 500;
    color: var(--mygreen);
    line-height: var(--wp--custom--line-height--small);
    margin-bottom: 0.5em;
}

.entry-clinic__campaign-content {
    font-style: Regular;
    font-size: 14px;
    leading-trim: NONE;
    line-height: 200%;
    letter-spacing: 5%;

}

@media (max-width: 767px) {
    .entry-clinic__campaign-item-title {
        /* 【期間限定】チュソクイベント-One-day 毛穴-ベーシック */
        font-style: normal;
        font-weight: 700;
        font-size: 18px;
        line-height: 200%;
        /* ボックスの高さと同一、または36px */
        letter-spacing: 0.05em;
    }
}

.entry-clinic__campaign-item-toggle {
    width: 2.5em;
    height: 2.5em;
    position: absolute;
    right: 1.2em;
    top: 1.8em;
    z-index: 1;
    background: none;
    border: none;
}

.entry-clinic__campaign-item-toggle::before, .entry-clinic__campaign-item-toggle::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 0.2em;
    margin-top: -0.1em;
    left: 0;
    background: var(--mygreen);
}

.entry-clinic__campaign-item-toggle::after {
    transform: rotate(90deg);
}

.entry-clinic__campaign-item-toggle[aria-pressed=true]::after {
    display: none;
}

.entry-clinic__campaign-item-body[aria-hidden=true] .entry-clinic__campaign-content {
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    display: -webkit-box;
    overflow: hidden;

    /* 【One-day 毛穴-ベーシック】 ・ポテンツァ ・ジュべルック水光注射 ・トーニング管理　*（特典）全顔)脱毛サービス 1回 当日一緒に施術 */
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 200%;
    /* または32px */
    letter-spacing: 0.05em;
    color: var(--myblack);

}

.entry-clinic__campaign-item-body[aria-hidden=true] .entry-clinic__campaign-annotation,
.entry-clinic__campaign-item-body[aria-hidden=true] .entry-clinic__campaign-conditions {
    display: none;
}

@media (max-width: 767px) {
    .entry-clinic__campaign-item-body[aria-hidden=false] {
        margin-right: -3em;
    }
}

.entry-clinic__campaign-annotation {
    font-size: 14px;
    color: var(--wp--custom--color--gray--200);
    padding: 1em;
    border-radius: 0.4em;
    margin-top: 1em;
    background: var(--wp--custom--color--clinic--annotation);
}

@media (max-width: 767px) {
    .entry-clinic__campaign-annotation {
        font-size: 12px;
    }
}

.entry-clinic__campaign-conditions {
    margin-top: 1em;
    padding-top: 1em;
    border-top: 1px dotted var(--wp--custom--color--gray--400);
    display: flex;
}

@media (max-width: 767px) {
    .entry-clinic__campaign-conditions {
        display: block;
    }
}

.entry-clinic__campaign-conditions dt {
    color: var(--wp--preset--color--primary);
    font-weight: 500;
    width: 5.5em;
}

.entry-clinic__campaign-conditions dd {
    flex: 1;
}

.entry-clinic__treatment-introduction {
    margin-top: 1em;
}

.entry-clinic__treatment {
    width: 100%;
    text-align: center;
}

.entry-clinic__treatment thead tr {
    border-left: 2px solid var(--wp--custom--color--gray--500);
    border-right: 2px solid var(--wp--custom--color--gray--500);
}

.entry-clinic__treatment thead th {
    background: #69AFB31A;
    padding: 20px;
    font-weight: 500;
    font-size: 16px;
    line-height: 150%;
    letter-spacing: 0.05em;
    color: var(--myblack);
}

.entry-clinic__treatment thead th:nth-child(1) {
    border-right: 1px solid var(--wp--custom--color--gray--400);
    width: 57%;
}

@media (max-width: 767px) {
    .entry-clinic__treatment thead th:nth-child(1) {
        width: 50%;
    }
}

.entry-clinic__treatment thead th:nth-child(2) {
    border-right: 1px solid var(--wp--custom--color--gray--400);
    width: 17%;
}

@media (max-width: 767px) {
    .entry-clinic__treatment thead th:nth-child(2) {
        width: 22%;
    }
}

.entry-clinic__treatment tbody {
    border-left: 2px solid var(--wp--custom--color--gray--400);
    border-right: 2px solid var(--wp--custom--color--gray--400);
    border-bottom: 2px solid var(--wp--custom--color--gray--400);
}

.entry-clinic__treatment tbody tr:not(:last-child) {
    border-bottom: 1px solid var(--wp--custom--color--gray--400);
}

.entry-clinic__treatment tbody td {
    padding: 1em;
    font-weight: 400;
    font-style: Regular;
    font-size: 14px;
    leading-trim: NONE;
    line-height: 150%;
    letter-spacing: 5%;
    @media screen and (min-width: 600px) {
        font-size: 16px ;
    }
}

.entry-clinic__treatment tbody td:first-child {
    text-align: left;
}

.entry-clinic__treatment tbody td:not(:first-child) {
    border-left: 1px solid var(--wp--custom--color--gray--400);
}

.entry-clinic__menu-item-title {
    font-weight: 500;
    font-weight: 400;
    font-style: Regular;
    font-size: 14px;
    leading-trim: NONE;
    line-height: 150%;
    letter-spacing: 5%;
    @media screen and (min-width: 600px) {
        font-size: 16px ;
    }
}

.entry-clinic__menu-item-description {
    font-size: 14px;
    color: var(--myblack);
}

@media (max-width: 767px) {
    .entry-clinic__menu-item-description {
        font-size: 12px;
    }
}

.entry-clinic__before-after {
    font-size: 18px;
}

@media (min-width: 1280px) {
    .entry-clinic__before-after {
        margin: 0 auto;
        width: calc(100% - 20px);
    }
}

@media (max-width: 767px) {
    .entry-clinic__before-after {
        width: 100%;
        font-size: 14px;
    }
}

.entry-clinic__before-after .splide__slide {
    padding-bottom: 2.5em;
}

.entry-clinic__before-after .splide__arrow {
    position: absolute;
    width: 40px;
    height: 40px;
    background: #F7F7F7;
    z-index: 1;
    top: 50%;
    margin-top: -2.5em;
    cursor: pointer;
    border-radius: 50%;
    transition: opacity 0.3s;
}

.entry-clinic__before-after .splide__arrow:hover {
    opacity: 0.7;
}

@media (max-width: 767px) {
    .entry-clinic__before-after .splide__arrow {
        width: 24px;
        height: 24px;
        margin-top: -12px;
    }
}

.entry-clinic__before-after .splide__arrow svg {
    display: none;
}

.entry-clinic__before-after .splide__arrow::after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    width: 14px;
    height: 14px;
    left: 16px;
    border-left: 2px solid var(--mygreen);
    border-bottom: 2px solid var(--mygreen);
}

@media (max-width: 767px) {
    .entry-clinic__before-after .splide__arrow::after {
        width: 8px;
        height: 8px;
        left: 10px;
    }
}

.entry-clinic__before-after .splide__arrow--prev {
    left: -20px;
}

@media (max-width: 767px) {
    .entry-clinic__before-after .splide__arrow--prev {
        left: -12px;
    }
}

.entry-clinic__before-after .splide__arrow--next {
    right: -20px;
    transform: scale(-1);
}

@media (max-width: 767px) {
    .entry-clinic__before-after .splide__arrow--next {
        right: -12px;
    }
}

.entry-clinic__before-after-images {
    display: flex;
    justify-content: space-between;
    position: relative;
    font-size: 20px;
    font-weight: 500;
    border-top-right-radius: 12px;
    border-top-left-radius: 12px;
}

@media (max-width: 767px) {
    .entry-clinic__before-after-images {
        font-size: 15px;
    }
}

.entry-clinic__before-after-images img {
    width: calc(50%);
    aspect-ratio: 1;
    object-fit: cover;
    border-top-right-radius: 12px;
    border-top-left-radius: 12px;
}

.entry-clinic__before-after-images::before, .entry-clinic__before-after-images::after {
    position: absolute;
    width: calc(50%);
    color: var(--wp--preset--color--white);
    top: 0;
    height: 2em;
    display: flex;
    align-items: center;
    justify-content: center;
}

.entry-clinic__before-after-images::before {
    content: "BEFORE";
    left: 0;
    background: var(--myblack);
    border-top-left-radius: 12px;
}

.entry-clinic__before-after-images::after {
    content: "AFTER";
    right: 0;
    border-top-right-radius: 12px;
    background: var(--mygreen);
}

.entry-clinic__before-after-title {
    text-align: center;
    font-weight: 500;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    display: -webkit-box;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    font-style: normal;
    font-weight: 600;
    line-height: 160%;
    font-size: 14px;
    /* または35px */
    text-align: center;
    letter-spacing: 0.05em;
    color: var(--myblack);
    @media screen and (min-width: 600px) {
        font-weight: 600;
        font-style: SemiBold;
        font-size: 22px;
        leading-trim: NONE;
        letter-spacing: 5%;
    }
}

.entry-clinic__doctor {
    display: flex;
    align-items: flex-start;
    gap: 2.5em;
}

@media (max-width: 767px) {
    .entry-clinic__doctor {
        padding: 0 1em;
        flex-flow: column;
        align-items: center;
    }
}

.entry-clinic__doctor + .entry-clinic__doctor {
    margin-top: 4em;
}

.entry-clinic__doctor-image {
    width: 27%;
}

@media (max-width: 600px) {
    .entry-clinic__doctor-image {
        width: 80%;
    }
}

.entry-clinic__doctor-image img {
    aspect-ratio: 1;
    object-fit: cover;
    width: 100%;
    border-radius: 10px;
}

.entry-clinic__doctor-body {
    flex: 1;
}

@media (max-width: 767px) {
    .entry-clinic__doctor-body {
        width: 100%;
    }
}

.entry-clinic__doctor-title {
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 200%;
    /* ボックスの高さと同一、または36px */
    letter-spacing: 0.05em;

    color: var(--myblack);


    border-bottom: 1px solid #D9D9D9;
    padding-bottom: 0.6em;

    &:before {
        border-bottom: 1px solid #D9D9D9 !important;
    }
}

@media (max-width: 600px) {
    .entry-clinic__doctor-title {
        font-weight: 700;
        font-style: Bold;
        font-size: 16px;
        leading-trim: NONE;
        line-height: 160%;
        letter-spacing: 5%;
    }
}

.entry-clinic__doctor-content {
    margin-top: 1em;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 200%;
    /* または32px */
    letter-spacing: 0.05em;
    color: var(--myblack);
    @media screen and (max-width: 600px) {
        font-size: 14px;
    }
}

.entry-clinic__review-buttons {
    display: flex;
    gap: 1em;
    margin-top: 2em;
    justify-content: center;

    .button-review.js-open-tab{
        background: #FFFFFF;
        border: 1px solid var(--mygreen);
        border-radius: 12px;
        font-weight: 500;
        font-size: 16px;
        line-height: 160%;
        /* ボックスの高さと同一、または26px */
        letter-spacing: 0.03em;
        color: var(--mygreen);
        width: 300px;
        padding: 1em 0;
        position: relative;
        &::before {
            position: absolute;
            top: 23px;
            left: 53px;
            content: "";
            width: 1em;
            height: 1em;
            /* stylelint-disable-next-line function-url-quotes */
            background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220px%22%20height%3D%2221px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22%2369AFB3%22%20d%3D%22M18.825%2C4.615%20L5.903%2C18.234%20C5.822%2C18.320%205.725%2C18.377%205.623%2C18.416%20C5.617%2C18.419%205.613%2C18.425%205.606%2C18.428%20L1.046%2C20.029%20C0.967%2C20.057%200.886%2C20.071%200.805%2C20.071%20C0.607%2C20.071%200.413%2C19.989%200.269%2C19.836%20C0.065%2C19.621%20-0.006%2C19.304%200.085%2C19.016%20L1.605%2C14.209%20C1.607%2C14.203%201.613%2C14.199%201.615%2C14.192%20C1.652%2C14.085%201.707%2C13.983%201.788%2C13.897%20L12.428%2C2.683%20C12.429%2C2.683%2012.429%2C2.682%2012.430%2C2.681%20C12.430%2C2.680%2012.431%2C2.680%2012.432%2C2.680%20L14.710%2C0.278%20C15.007%2C-0.035%2015.488%2C-0.035%2015.785%2C0.278%20L18.825%2C3.482%20C19.122%2C3.795%2019.122%2C4.302%2018.825%2C4.615%20ZM2.007%2C18.004%20L3.959%2C17.318%20L2.658%2C15.946%20L2.007%2C18.004%20ZM5.366%2C16.535%20L14.933%2C6.452%20L12.967%2C4.381%20L3.401%2C14.463%20L5.366%2C16.535%20ZM15.248%2C1.977%20L14.042%2C3.248%20L16.008%2C5.319%20L17.213%2C4.049%20L15.248%2C1.977%20Z%22%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;
        }
        &::after {
            position: absolute;
            top: 25px;
            right: 53px;
            content: "";
            width: .7em;
            height: .7em;
            /* stylelint-disable-next-line function-url-quotes */
            background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2211%22%20height%3D%2211%22%20viewBox%3D%220%200%2011%2011%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M4.85742%200.353516L9.71456%205.21066L4.85742%2010.0678%22%20stroke%3D%22%2369AFB3%22%2F%3E%3Cpath%20d%3D%22M9.71429%205.21094H0%22%20stroke%3D%22%2369AFB3%22%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;

        }
    }
    .button-link.js-open-tab{
        background: #FFFFFF;
        border: 1px solid var(--myblack);
        border-radius: 12px;
        font-weight: 500;
        font-size: 16px;
        line-height: 160%;
        /* ボックスの高さと同一、または26px */
        letter-spacing: 0.03em;
        color: var(--myblack);
        width: 300px;
        padding: 1em 0;
        position: relative;
        &::after {
            position: absolute;
            top: 25px;
            right: 53px;
            content: "";
            width: .7em;
            height: .7em;
            /* stylelint-disable-next-line function-url-quotes */
            background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2211%22%20height%3D%2211%22%20viewBox%3D%220%200%2011%2011%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M4.85742%200.353516L9.71456%205.21066L4.85742%2010.0678%22%20stroke%3D%22%23595656%22%2F%3E%3Cpath%20d%3D%22M9.71429%205.21094H0%22%20stroke%3D%22%23595656%22%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;
        }
    }
}


@media (max-width: 600px) {
    .entry-clinic__review-buttons {
        align-items: center;
        flex-flow: column;
    }
}

.entry-clinic__review-buttons .button-review,
.entry-clinic__review-buttons .button-link {
    margin: 0;
}

.post_content h4.clinic-myinfo:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) {
    padding: 0;
    border-left: unset;
    margin-top: 20px;
    @media screen and (min-width: 600px) {
        margin-top: unset;
    }
}

.information-table {
    border-top: 2px solid var(--wp--custom--color--gray--400);
    border-bottom: 2px solid var(--wp--custom--color--gray--400);
    width: 100%;
    font-size: 14px;
    letter-spacing: 5%;
    @media screen and (min-width: 600px) {
        font-size: 16px;
    }
}

.information-table tr + tr {
    border-top: 1px solid var(--wp--custom--color--gray--400)
}

.information-table th {
    background: #69AFB31A;
    width: 11em;
    font-weight: 500;
    padding: .9em .5em
}

@media screen and (max-width: 768px) {
    .information-table th {
        width: 7em
    }
}

.information-table th span {
    display: inline-block
}

.information-table td {
    padding: .9em 2.5em
}

@media screen and (max-width: 768px) {
    .information-table td {
        padding: 1em
    }
}

.information-table td a {
    text-decoration: underline;
    color: #1A73E8;
    text-underline-offset: .4em;
    word-break: break-all
}

.information-table td iframe {
    margin-top: 1em;
    width: 100%;
    height: 150px;
    border: none
}

.map-access .information-table {
    margin-top: 3em
}

.map-access .information-table {
    margin-top: 3em
}

.map-access__map {
    aspect-ratio: 1;
}

@media screen and (max-width: 768px) {
    .map-access__map {
        aspect-ratio: 1;
        margin-left: calc(var(--wp--custom--spacing--container-padding) * -1);
        margin-right: calc(var(--wp--custom--spacing--container-padding) * -1)
    }
}

.map-access__map iframe {
    width: 100%;
    height: 100%;
    border: none
}


/* 口コミ review */

.post-review-card {
    padding: 1.5em 2em;
    border: 1.5px solid rgba(89, 86, 86, 0.15);
    border-radius: 12px;


    @include mq(md) {
        padding-left: var(--wp--custom--spacing--container-padding);
        padding-right: var(--wp--custom--spacing--container-padding);
    }

    + .post-review-card {
        margin-top: 1.5em;
    }
}

.post_content h3.post-review-card__title:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::before {
    content: "";
    width: 100%;
    height: 2px;
    background: unset;
}

.post-review-card__title {
    margin-bottom: 15px !important;
}

.post-review-card__header {
    display: flex;
    align-items: center;
    gap: 0.5em 1em;
    margin-bottom: 0.7em;
    padding-bottom: 1.2em;
    border-bottom: 1px dotted;
    @media screen and (max-width: 600px) {
        align-items: start;
        flex-wrap: wrap;
    }

}

.post_content h3.post-review-card__title:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) {
    padding: unset;
    padding-left: 2.5em;
}

.post-review-card__title {
    /* stylelint-disable-next-line function-url-quotes */
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2216%22%20height%3D%2220%22%20viewBox%3D%220%200%2016%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M14%2019C14%2015.6863%2011.3137%2013%208%2013C4.68629%2013%202%2015.6863%202%2019C2%2019.5523%201.55228%2020%201%2020C0.447715%2020%200%2019.5523%200%2019C0%2014.5817%203.58172%2011%208%2011C12.4183%2011%2016%2014.5817%2016%2019C16%2019.5523%2015.5523%2020%2015%2020C14.4477%2020%2014%2019.5523%2014%2019ZM11%205C11%203.34315%209.65685%202%208%202C6.34315%202%205%203.34315%205%205C5%206.65685%206.34315%208%208%208C9.65685%208%2011%206.65685%2011%205ZM13%205C13%207.76142%2010.7614%2010%208%2010C5.23858%2010%203%207.76142%203%205C3%202.23858%205.23858%200%208%200C10.7614%200%2013%202.23858%2013%205Z%22%20fill%3D%22%2369AFB3%22%2F%3E%3C%2Fsvg%3E") no-repeat left / 1.4em;
    padding-left: 2.5em;
    @media screen and (max-width: 600px) {
        width: 100%;
    }

    span {
        font-size: 1.25em;
        font-weight: 500;
        margin-right: 0.2em;
    }
}

.post-review-card__header-meta {
    font-size: 14px;
    color: var(--myblack);
    margin-left: auto;
    white-space: nowrap;

    @media screen and (max-width: 600px) {
        margin: 0;
        font-size: 12px;
    }

}

.post-review-card__body {

}

.post-review-card__list-meta {
    word-break: break-all;
    padding-top: 0.5em;

    .post-review-card__list-meta-details {
        margin-bottom: 1.5em;

        dt {
            float: left;
            padding: 0.1em 0;
            width: 7.2em;
            background: #5956560D;
            font-size: 14px;
            text-align: center;

            @include mq(md) {
                font-size: 12px;
            }
        }

        dd {
            padding-left: 7.5em;

            &:not(:last-of-type) {
                margin-bottom: 1em;
            }
        }
    }
}

.post-review-card__list-meta-before-after {
    display: flex;
    position: relative;
    gap: 10px;
    padding-bottom: 2em;

    dt {
        position: absolute;
        width: 50%;
        bottom: 0;
        text-align: center;

        &:last-of-type {
            right: 0;
        }
    }

    dd {
        margin: 0;
        flex: 1;
    }

    dd img {
        width: 100%;
        aspect-ratio: 1;
        object-fit: cover;
    }
}

.post-review-card__content {
    .post-review-card__text {
        font-style: normal;
        font-weight: 400;
        font-size: 16px;
        line-height: 200%;
        letter-spacing: 0.05em;
        color: var(--myblack);

        /* 以下を追加：各行への罫線(ドット)表示 */
        background-image: radial-gradient(circle at center calc(100% - 1px), #e0e0e0 1.5px, transparent 1.5px);
        /* 背景の高さを行の高さ(200% = 2em)に合わせる */
        background-size: 6px 2em;
        /* 縦横に繰り返す */
        background-repeat: repeat;
        @media screen and (max-width: 600px) {
        background-image: radial-gradient(circle at center calc(100% - 1px), #e0e0e0 1px, transparent 1px);
            font-weight: 400;
            font-size: 14px;
            leading-trim: NONE;
            line-height: 200%;
            letter-spacing: 5%;
        }
    }
}


.post-review-card__rate {
    display: flex;
    align-items: center;
    gap: 0.3em;
    margin-bottom: 0.3em;

    img {
        width: 1em;
    }

    span {
        font-weight: 700;
    }
}

/*--------------------------------------------------------------
# ヘッダーメタ情報
--------------------------------------------------------------*/

.header-meta {
    display: flex;
    align-items: start;
    margin-top: 1em;
    gap: 1em;
    justify-content: start;
    flex-wrap: wrap;
}

@media (min-width: 768px) {
    .header-meta {
        align-items: center;
        justify-content: flex-start;
    }
}

.header-meta__access {
    padding-left: 2em;
    font-size: 16px;
    /* stylelint-disable-next-line function-url-quotes */
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219px%22%20height%3D%2224px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22rgb(223%2C%20126%2C%20157)%22%20d%3D%22M9.799%2C-0.003%20C4.829%2C-0.003%200.800%2C3.758%200.800%2C8.396%20C0.800%2C9.686%201.106%2C10.904%201.663%2C11.996%20C4.499%2C18.099%209.799%2C23.996%209.799%2C23.996%20C9.799%2C23.996%2015.087%2C18.099%2017.921%2C11.996%20C18.479%2C10.904%2018.799%2C9.686%2018.799%2C8.396%20C18.799%2C3.758%2014.770%2C-0.003%209.799%2C-0.003%20ZM9.799%2C12.524%20C7.357%2C12.524%205.378%2C10.676%205.378%2C8.396%20C5.378%2C6.118%207.357%2C4.269%209.799%2C4.269%20C12.241%2C4.269%2014.221%2C6.118%2014.221%2C8.396%20C14.221%2C10.676%2012.241%2C12.524%209.799%2C12.524%20Z%22%2F%3E%3C%2Fsvg%3E") no-repeat left / 1.2em;
    margin-right: auto;
    @media (min-width: 600px) {
        .header-meta {
            padding-left: 2em;
        }
    }
}


.header-meta__review-avarage {
    margin-left: unset;
    display: flex;
    align-items: center;
    gap: 1em;
}

@media (min-width: 600px) {
    .header-meta__review-avarage {
        margin-left: auto;
        margin-left: 0;
    }
}

.header-meta__review-avarage dt {
    padding: 0 0.5em;
    background: var(--wp--custom--color--gray--500);
    font-size: 14px;
}

@media (min-width: 768px) {
    .header-meta__review-avarage dt {
        font-size: 12px;
    }
}

.header-meta__review-avarage dd {
    display: flex;
    align-items: center;
    gap: 0.3em;
}

.header-meta__review-avarage dd span {
    color: var(--myblack);
    font-weight: 700;
    font-size: 16px;
    line-height: 200%;
    margin-left: 0.2em;
}

@media (min-width: 768px) {
    .header-meta__review-avarage dd span {
        font-size: 17px;
    }
}

.header-meta__review-avarage img {
    width: 1.2em;
}

.header-meta__review-count {
    margin-left: 3.7em;
    font-size: 14px;
    text-decoration: underline;
    text-underline-offset: 0.4em;
    position: relative;
}

@media (min-width: 768px) {
    .header-meta__review-count {
        font-size: 12px;
    }
}

.header-meta__review-count::before {
    content: "";
    /* stylelint-disable-next-line function-url-quotes */
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2222px%22%20height%3D%2221px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22rgb(252%2C%20191%2C%2045)%22%20d%3D%22M11.374%2C0.608%20C5.580%2C0.608%200.886%2C5.081%200.886%2C8.928%20C0.886%2C11.628%202.981%2C14.054%205.762%2C15.518%20C5.369%2C16.767%204.600%2C18.495%203.074%2C20.052%20C2.870%2C20.259%202.864%2C20.351%202.921%2C20.473%20C3.025%2C20.700%203.280%2C20.607%203.732%2C20.497%20C6.146%2C19.916%208.890%2C17.944%2010.223%2C16.895%20C10.606%2C16.940%2010.990%2C16.965%2011.374%2C16.965%20C16.549%2C16.965%2021.861%2C13.076%2021.861%2C8.928%20C21.861%2C5.155%2017.167%2C0.608%2011.374%2C0.608%20Z%22%2F%3E%3C%2Fsvg%3E") no-repeat center / contain;
    width: 1.5em;
    height: 1.5em;
    position: absolute;
    left: -2em;
    top: 50%;
    margin-top: -0.75em;
}

.header-meta__review-count span {
    font-size: 16px;
    pointer-events: none;
}


.post-card-clinic__thumbnail img {
    aspect-ratio: var(--wp--custom--aspect-ratio--media);
    width: 100%;
    height: 100%;
    object-fit: cover
}

@media (hover: hover) {
    a.post-card-clinic__thumbnail {
        transition: opacity .3s
    }

    a.post-card-clinic__thumbnail:hover {
        opacity: .7
    }
}

.post-card-clinic__content > *:last-child {
    margin-bottom: 0 !important
}

.post-card-clinic__meta {
    display: flex;
    gap: .5em;
    line-height: var(--wp--custom--line-height--small);
    font-size: 14px
}

@media screen and (max-width: 768px) {
    .post-card-clinic__meta {
        font-size: 12px
    }
}

.post-card-clinic__category {
    color: var(--wp--preset--color--white);
    padding: .1em .3em
}

.post-card-list .post-card-clinic__area {
    border: 1px solid;
    padding: .1em .3em
}

.post-card-clinic__title {
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    overflow: hidden
}

@media (hover: hover) {
    a.post-card-clinic__title {
        transition: opacity .3s
    }

    a.post-card-clinic__title:hover {
        opacity: .7
    }
}

.post-card-clinic__introduction {
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
    font-size: 14px;
    line-height: var(--wp--custom--line-height--small)
}

@media screen and (max-width: 768px) {
    .post-card-clinic__introduction {
        font-size: 12px
    }
}

.post-card-clinic__review {
    display: flex;
    align-items: center
}

.post-card-clinic__review-avarage {
    display: flex;
    align-items: center;
    gap: .2em
}

.post-card-clinic__review-avarage img {
    width: 1em
}

.post-card-clinic__review-avarage span {
    color: var(--wp--custom--color--gray--100);
    font-weight: 700;
    line-height: var(--wp--custom--line-height--small);
    margin-left: .2em
}

.post-card-clinic__review-count {
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2222px%22%20height%3D%2221px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22rgb(252%2C%20191%2C%2045)%22%20d%3D%22M11.374%2C0.608%20C5.580%2C0.608%200.886%2C5.081%200.886%2C8.928%20C0.886%2C11.628%202.981%2C14.054%205.762%2C15.518%20C5.369%2C16.767%204.600%2C18.495%203.074%2C20.052%20C2.870%2C20.259%202.864%2C20.351%202.921%2C20.473%20C3.025%2C20.700%203.280%2C20.607%203.732%2C20.497%20C6.146%2C19.916%208.890%2C17.944%2010.223%2C16.895%20C10.606%2C16.940%2010.990%2C16.965%2011.374%2C16.965%20C16.549%2C16.965%2021.861%2C13.076%2021.861%2C8.928%20C21.861%2C5.155%2017.167%2C0.608%2011.374%2C0.608%20Z%22%2F%3E%3C%2Fsvg%3E") no-repeat left/1.4em;
    font-size: 12px;
    color: var(--wp--custom--color--gray--100);
    padding-left: 1.8em
}

.post-card-clinic__review-count span {
    font-size: 1.33em
}

.post-card-clinic__campaign {
    margin-bottom: .5em;
    font-weight: 500;
    font-size: 14px;
    position: relative
}

@media screen and (max-width: 768px) {
    .post-card-clinic__campaign {
        font-size: 12px
    }
}

.post-card-clinic__campaign dt {
    background: var(--wp--preset--color--primary);
    vertical-align: top;
    width: 9.3em;
    display: flex;
    align-items: center;
    gap: .5em;
    justify-content: center;
    color: var(--wp--preset--color--white);
    padding: .2em 0;
    margin-bottom: .5em
}

.post-card-clinic__campaign dt::before {
    content: "";
    width: 1em;
    height: 1em;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2020%2020%22%3E%20%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22%23fff%22%20d%3D%22M20%2C7.8c-.1-.4-.4-.6-.7-.7l-5.8-1L11%2C.6C10.8.2%2C10.5%2C0%2C10.1%2C0c-.4%2C0-.7.2-.9.5l-2.7%2C5.5-5.8.8c-.4%2C0-.7.3-.8.7-.1.4%2C0%2C.7.2%2C1l4.1%2C4.4-1.1%2C6c0%2C.4%2C0%2C.7.4%2C1%2C.3.2.7.3%2C1%2C0l5.2-2.8%2C5.3%2C2.7c.1%2C0%2C.3.1.5.1s.4%2C0%2C.5-.2c.3-.2.4-.6.4-1l-1.1-5.8%2C4.2-4.2c.3-.3.4-.7.3-1Z%22%2F%3E%3C%2Fsvg%3E") no-repeat center/contain
}

.post-card-clinic__campaign dt::after {
    content: "";
    background: var(--wp--preset--color--primary);
    height: 1px;
    width: 100%;
    position: absolute;
    left: 0;
    z-index: -1
}

.post-card-clinic__campaign dd {
    color: var(--wp--preset--color--primary);
    font-size: 16px
}

@media screen and (max-width: 768px) {
    .post-card-clinic__campaign dd {
        font-size: 12px
    }
}

.post-card-clinic__latest-review {
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    display: -webkit-box;
    overflow: hidden;
    font-size: 12px;
    background: var(--wp--custom--color--gray--500);
    border-radius: .4em;
    padding: .2em 1em
}

@media screen and (max-width: 768px) {
    .post-card-clinic__latest-review {
        font-size: 11px
    }
}

.post-card-clinic.is-horizontal {
    border: 1px solid #dcdcdca1;
    padding: 1em 0 1em 0;
    display: flex;
    gap: 1em 2em;
    align-items: flex-start;
    margin-bottom: 1em;
    color: var(--myblack);
}

@media screen and (max-width: 768px) {
    .post-card-clinic.is-horizontal {
        padding: var(--wp--custom--spacing--container-padding);
        flex-flow: column
    }
}

.post-card-clinic.is-horizontal .post-card-clinic__thumbnail {
    width: 43%
}

@media screen and (max-width: 768px) {
    .post-card-clinic.is-horizontal .post-card-clinic__thumbnail {
        width: 100%
    }
}

.post-card-clinic.is-horizontal .post-card-clinic__content {
    flex: 1
}

.post-card-clinic.is-horizontal .post-card-clinic__title {
    font-size: 24px;
    font-weight: 700;
    padding-bottom: .2em;
    margin-bottom: .2em;
    text-underline-offset: .4em;
    text-decoration: underline currentcolor 1px
}

@media screen and (max-width: 768px) {
    .post-card-clinic.is-horizontal .post-card-clinic__title {
        font-size: 17px
    }
}

.post-card-clinic.is-horizontal .post-card-clinic__access {
    font-size: 14px;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    display: -webkit-box;
    overflow: hidden;
    padding-left: 1.5em;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219px%22%20height%3D%2224px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22rgb(223%2C%20126%2C%20157)%22%20d%3D%22M9.799%2C-0.003%20C4.829%2C-0.003%200.800%2C3.758%200.800%2C8.396%20C0.800%2C9.686%201.106%2C10.904%201.663%2C11.996%20C4.499%2C18.099%209.799%2C23.996%209.799%2C23.996%20C9.799%2C23.996%2015.087%2C18.099%2017.921%2C11.996%20C18.479%2C10.904%2018.799%2C9.686%2018.799%2C8.396%20C18.799%2C3.758%2014.770%2C-0.003%209.799%2C-0.003%20ZM9.799%2C12.524%20C7.357%2C12.524%205.378%2C10.676%205.378%2C8.396%20C5.378%2C6.118%207.357%2C4.269%209.799%2C4.269%20C12.241%2C4.269%2014.221%2C6.118%2014.221%2C8.396%20C14.221%2C10.676%2012.241%2C12.524%209.799%2C12.524%20Z%22%2F%3E%3C%2Fsvg%3E") no-repeat left/0.9em;
    margin-bottom: .5em
}

@media screen and (max-width: 768px) {
    .post-card-clinic.is-horizontal .post-card-clinic__access {
        font-size: 12px
    }
}

.post-card-clinic.is-horizontal .post-card-clinic__review {
    margin-bottom: .5em
}

.post-card-clinic.is-horizontal .post-card-clinic__review-count {
    margin-left: 1.5em
}

.post-card-clinic.is-horizontal .post-card-clinic__introduction {
    -webkit-line-clamp: 1;
    margin-bottom: .5em
}

@media screen and (max-width: 768px) {
    .post-card-clinic.is-vertical {
        display: flex;
        gap: 1em;
        align-items: flex-start
    }
}

.post-card-clinic.is-vertical .post-card-clinic__thumbnail {
    margin-bottom: 1em
}

@media screen and (max-width: 768px) {
    .post-card-clinic.is-vertical .post-card-clinic__thumbnail {
        width: 125px
    }
}

.post-card-clinic.is-vertical .post-card-clinic__content {
    flex: 1
}

.post-card-clinic.is-vertical .post-card-clinic__title {
    font-weight: 500;
    font-size: 18px;
    margin-bottom: .5em;
    line-height: var(--wp--custom--line-height--small)
}

@media screen and (max-width: 768px) {
    .post-card-clinic.is-vertical .post-card-clinic__title {
        font-size: 14px
    }
}

.post-card-clinic.is-vertical .post-card-clinic__meta {
    margin-bottom: .5em
}

.post-card-clinic.is-vertical .post-card-clinic__review {
    margin-bottom: .5em
}

.post-card-clinic.is-vertical .post-card-clinic__introduction {
    -webkit-line-clamp: 2
}


/*

review form

*/

/*--------------------------------------------------------------
# レビュー投稿フォーム
--------------------------------------------------------------*/
.review-form {
    max-width: 790px;
    margin: 0 auto;
    border: 1px solid #69AFB3;
    border-radius: 12px;
    padding-bottom: 20px;
}

#panel_review_form {

}

.review-form {
    button, input {
        width: 100%;
        border-radius: 3px;
    }
}

#review_contents {
    width: 100%;
}

.review-form__panel {
    padding: 2em 1.5em 1em;
}

@media screen and (max-width: 768px) {
    .review-form__panel {
        padding-left: var(--wp--custom--spacing--container-padding);
        padding-right: var(--wp--custom--spacing--container-padding);
    }
}

.review-form__panel[aria-hidden=true] {
    display: none;
}

.review-form__title {
    margin-bottom: 1.5em;
    text-align: center;
    font-size: 22px;
    color: var(--mygreen);
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5em;
}

@media screen and (max-width: 768px) {
    .review-form__title {
        margin-bottom: 20px !important;
        font-size: 16px;
    }
}

.review-form__title::before {
    content: "";
    width: 1em;
    height: 1em;
    /* stylelint-disable-next-line function-url-quotes */
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220px%22%20height%3D%2221px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22%2369AFB3%22%20d%3D%22M18.825%2C4.615%20L5.903%2C18.234%20C5.822%2C18.320%205.725%2C18.377%205.623%2C18.416%20C5.617%2C18.419%205.613%2C18.425%205.606%2C18.428%20L1.046%2C20.029%20C0.967%2C20.057%200.886%2C20.071%200.805%2C20.071%20C0.607%2C20.071%200.413%2C19.989%200.269%2C19.836%20C0.065%2C19.621%20-0.006%2C19.304%200.085%2C19.016%20L1.605%2C14.209%20C1.607%2C14.203%201.613%2C14.199%201.615%2C14.192%20C1.652%2C14.085%201.707%2C13.983%201.788%2C13.897%20L12.428%2C2.683%20C12.429%2C2.683%2012.429%2C2.682%2012.430%2C2.681%20C12.430%2C2.680%2012.431%2C2.680%2012.432%2C2.680%20L14.710%2C0.278%20C15.007%2C-0.035%2015.488%2C-0.035%2015.785%2C0.278%20L18.825%2C3.482%20C19.122%2C3.795%2019.122%2C4.302%2018.825%2C4.615%20ZM2.007%2C18.004%20L3.959%2C17.318%20L2.658%2C15.946%20L2.007%2C18.004%20ZM5.366%2C16.535%20L14.933%2C6.452%20L12.967%2C4.381%20L3.401%2C14.463%20L5.366%2C16.535%20ZM15.248%2C1.977%20L14.042%2C3.248%20L16.008%2C5.319%20L17.213%2C4.049%20L15.248%2C1.977%20Z%22%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;
}

.post_content h2.review-form__title:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) {
    background: unset;
    padding: .75em 1em;
    color: var(--mygreen);
    @media screen and (max-width: 600px) {
        .review-form__title {
            margin-bottom: 20px;
            font-size: 16px;
        }
    }
}

.post_content h2.review-form__title:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::before {
    position: absolute;
    display: block;
    pointer-events: none;
    content: "";
    top: 24px;
    left: -119px;
    width: 100%;
    height: 24px;
    box-sizing: content-box;
    border: unset;
    @media screen and (max-width: 600px) {
        top: .8em;
        left: -29%;
    }
}

.review-form__fields {
    display: grid;
    grid-template-columns: 8em 15em 6em auto;
    align-items: flex-start;
    gap: 1.5em 0;
    margin-bottom: 1.5em;
}

@media screen and (max-width: 768px) {
    .review-form__fields {
        grid-template-columns: 1fr;
        gap: 0;
    }
}

.review-form__item-label {
    padding-top: 0.5em;
    font-weight: 500;
}

@media screen and (max-width: 768px) {
    .review-form__item-label {
        grid-column: 1;
        padding-top: 0;
        padding-bottom: 0.5em;
    }
}

.review-form__item-label span {
    font-size: 0.875em;
    color: var(--wp--custom--color--gray--200);
    display: block;
    margin-left: 1em;
}

@media screen and (max-width: 768px) {
    .review-form__item-label span {
        margin-left: 0;
        display: inline;
        font-size: 1em;
    }
}

.review-form__item-content {
    grid-column: span 3;
    align-self: center;
    display: flex;
    align-items: center;
    gap: 0.5em;
}

.review-form__item-content.is-single {
    grid-column: span 1;
}

@media screen and (max-width: 768px) {
    .review-form__item-content.is-single {
        grid-column: 1;
    }
}

.review-form__item-content span {
    font-weight: 500;
    white-space: nowrap;
}

@media screen and (max-width: 768px) {
    .review-form__item-content + .review-form__item-label {
        padding-top: 1em;
    }
}

.review-form__date {
    display: flex;
    align-items: center;
}

.review-form__rate {
    display: flex;
    gap: 0.1em;
}

.review-form__rate label {
    font-size: 0;
}

.review-form__rate input {
    cursor: pointer;
    background-image: url(./assets/images/icon/star-full.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    appearance: none;
    width: 2.4em;
    height: 2.4em;
    margin: 0;
    border: unset;
    background-color: unset;

}

.review-form__rate input:focus {
    outline-color: var(--wp--preset--color--primary);
}

.review-form__rate:has(input[value="1"]:checked) input[value="2"],
.review-form__rate:has(input[value="1"]:checked) input[value="3"],
.review-form__rate:has(input[value="1"]:checked) input[value="4"],
.review-form__rate:has(input[value="1"]:checked) input[value="5"] {
    background-image: url(./assets/images/icon/star-empty.svg);
}

.review-form__rate:has(input[value="2"]:checked) input[value="3"],
.review-form__rate:has(input[value="2"]:checked) input[value="4"],
.review-form__rate:has(input[value="2"]:checked) input[value="5"] {
    background-image: url(./assets/images/icon/star-empty.svg);
}

.review-form__rate:has(input[value="3"]:checked) input[value="4"],
.review-form__rate:has(input[value="3"]:checked) input[value="5"] {
    background-image: url(./assets/images/icon/star-empty.svg);
}

.review-form__rate:has(input[value="4"]:checked) input[value="5"] {
    background-image: url(./assets/images/icon/star-empty.svg);
}

.review-form__agree {
    text-align: center;
    margin-bottom: 2em;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5em;
}

.review-form__agree input {
    width: auto;
    transform: scale(1.5);
    background-color: #59565626;
}

.review-form__agree a {
    text-decoration: underline;
    color: #1A73E8;
    text-underline-offset: 0.4em;
}

.review-form__submit {
    margin: 0 auto;
    position: relative;
}

.review-form__submit[aria-disabled=true] {
    pointer-events: none;
    background: var(--mygreen);
    border-radius: 12px;
    width: 300px;
    padding: 1em;
    margin: 0 auto;
    margin-bottom: 0px;
    color: #fff;
    display: block;
    margin-bottom: 24px;

}

.review-form__submit.is-loading::before {
    content: "";
    width: 2em;
    padding: 0.2em;
    aspect-ratio: 1;
    border-radius: 50%;
    background: var(--wp--preset--color--white);
    mask: conic-gradient(rgba(0, 0, 0, 0) 10%, #000), linear-gradient(#000 0 0) content-box;
    mask-composite: subtract;
    animation: rotate 1s infinite linear;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-top: -1em;
    margin-left: -1em;
}

@keyframes rotate {
    to {
        transform: rotate(1turn);
    }
}

.review-form__toggle {
    text-align: center;
    font-size: 22px;
    color: var(--wp--preset--color--primary);
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5em;
    width: 100%;
    padding: 1.2em 0;
    position: relative;
    margin: 0 auto;
}

@media screen and (max-width: 768px) {
    .review-form__toggle {
        font-size: 16px;
    }
}

.review-form__toggle::before {
    content: "";
    width: 1em;
    height: 1em;
    /* stylelint-disable-next-line function-url-quotes */
    background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220px%22%20height%3D%2221px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22%2369AFB3%22%20d%3D%22M18.825%2C4.615%20L5.903%2C18.234%20C5.822%2C18.320%205.725%2C18.377%205.623%2C18.416%20C5.617%2C18.419%205.613%2C18.425%205.606%2C18.428%20L1.046%2C20.029%20C0.967%2C20.057%200.886%2C20.071%200.805%2C20.071%20C0.607%2C20.071%200.413%2C19.989%200.269%2C19.836%20C0.065%2C19.621%20-0.006%2C19.304%200.085%2C19.016%20L1.605%2C14.209%20C1.607%2C14.203%201.613%2C14.199%201.615%2C14.192%20C1.652%2C14.085%201.707%2C13.983%201.788%2C13.897%20L12.428%2C2.683%20C12.429%2C2.683%2012.429%2C2.682%2012.430%2C2.681%20C12.430%2C2.680%2012.431%2C2.680%2012.432%2C2.680%20L14.710%2C0.278%20C15.007%2C-0.035%2015.488%2C-0.035%2015.785%2C0.278%20L18.825%2C3.482%20C19.122%2C3.795%2019.122%2C4.302%2018.825%2C4.615%20ZM2.007%2C18.004%20L3.959%2C17.318%20L2.658%2C15.946%20L2.007%2C18.004%20ZM5.366%2C16.535%20L14.933%2C6.452%20L12.967%2C4.381%20L3.401%2C14.463%20L5.366%2C16.535%20ZM15.248%2C1.977%20L14.042%2C3.248%20L16.008%2C5.319%20L17.213%2C4.049%20L15.248%2C1.977%20Z%22%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;
}

.review-form__toggle[aria-expanded=true] {
    color: var(--myblack);
    font-size: 16px;
    width: auto;
    padding: 0 0 0 1.5em;
    margin-bottom: 2em;
    padding: 0 0 0 1.5em;
    margin-bottom: 2em;
    background-color: unset;
    border: none;
}

@media screen and (max-width: 768px) {
    .review-form__toggle[aria-expanded=true] {
        font-size: 12px;
    }
}

.review-form__toggle[aria-expanded=true]::before, .review-form__toggle[aria-expanded=true]::after {
    content: "";
    position: absolute;
    left: 0;
    background: currentcolor;
    width: 2px;
    height: 1.5em;
    top: 50%;
    margin-top: -0.75em;
}

.review-form__toggle[aria-expanded=true]::before {
    transform: rotate(45deg);
}

.review-form__toggle[aria-expanded=true]::after {
    transform: rotate(-45deg);
}

.review-form__message {
    text-align: center;
    padding: 2em 0 4em;
}

/*--------------------------------------------------------------
# 星レビュー
--------------------------------------------------------------*/
.review-star {
    display: flex;
    gap: 0.3em;
}

.review-star img {
    width: 1em;
}

/*公式URL HOVER*/
.swell-block-button.-size-l.is-style-btn_normal.official-url a:hover {
    background: white;
    color: var(--mygreen);
    border: 1px solid var(--mygreen);
}