    /* ===== MV ===== */
    .lda-mv {
        background: #E5E4D5;
        padding: calc(10 * var(--b)) calc(2 * var(--b)) calc(4 * var(--b));
        display: flex;
        flex-direction: column;
        gap: calc(2 * var(--b));
    }

    .lda-mv__inner {
        display: flex;
        flex-direction: column;
        gap: calc(2 * var(--b));
        width: 100%;
    }

    .lda-mv__heading {
        display: flex;
        flex-direction: column;
        gap: calc(0.8 * var(--b));
    }

    .lda-mv__title-row {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: flex-end;
        gap: calc(1 * var(--b)) calc(2 * var(--b));
    }

    .lda-mv__title {
        font-family: new-spirit, serif;
        font-weight: 500;
        font-size: calc(4.8 * var(--b));
        line-height: 100%;
        color: #212227;
        margin: 0;
    }

    .lda-mv__label {
        font-family: 'Noto Sans JP', sans-serif;
        font-size: calc(1.2 * var(--b));
        line-height: 170%;
        letter-spacing: .03em;
        color: #212227;
        padding-bottom: calc(0.4 * var(--b));
    }

    .lda-mv__subtitle-row {
        display: flex;
        flex-direction: row;
        align-items: flex-end;
        gap: calc(1.6 * var(--b));
    }

    .lda-mv__subtitle {
        font-family: new-spirit, serif;
        font-weight: 500;
        font-size: calc(3.2 * var(--b));
        line-height: 100%;
        color: #212227;
    }

    .lda-mv__lead {
        font-family: 'Shippori Mincho', serif;
        font-weight: 500;
        font-size: calc(1.5 * var(--b));
        line-height: 170%;
        letter-spacing: .03em;
        color: #212227;
        margin: 0;
    }

    /* ===== Map section ===== */
    .lda-map-section {
        background: #EDECE2;
        padding: calc(4 * var(--b)) calc(2 * var(--b)) 0;
        display: flex;
        flex-direction: column;
        gap: calc(1 * var(--b));
    }

    .lda-map-section__heading {
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 500;
        font-size: calc(1.8 * var(--b));
        line-height: 170%;
        letter-spacing: .03em;
        color: #212227;
        margin: 0 0 calc(0.2 * var(--b));
    }

    .lda-route-block__heading {
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 500;
        font-size: calc(1.8 * var(--b));
        line-height: 170%;
        letter-spacing: .03em;
        color: #212227;
        margin: 0 0 calc(0.2 * var(--b));
    }

    .lda-map-section__addr {
        font-family: 'Noto Sans JP', sans-serif;
        font-size: calc(1.5 * var(--b));
        line-height: 170%;
        letter-spacing: .03em;
        text-decoration: none;
        color: #212227;
        display: block;
        margin-bottom: calc(0.8 * var(--b));
    }

    .lda-map-section__addr span {
        --bg-y: 100%;
        background: linear-gradient(currentColor, currentColor) 0 var(--bg-y)/100% 1px no-repeat;
    }

    .lda-map-section__addr svg {
        display: inline;
        vertical-align: middle;
        width: calc(1.4 * var(--b));
        height: calc(1.4 * var(--b));
        margin-left: calc(0.3 * var(--b));
    }

    @media (hover: hover) and (pointer: fine) {
        .lda-map-section__addr span {
            transition: background-size 0.4s ease-out, background-position 0s 0.4s;
        }
        .lda-map-section__addr:hover span {
            background-size: 0 1px;
            background-position: 100% var(--bg-y);
            transition: background-size 0.4s ease-out;
        }
    }

    .lda-map-section__note {
        display: none;
    }

    .lda-map-section__map {
        width: 100%;
        height: calc(23.6 * var(--b));
        overflow: hidden;
    }

    .lda-map-section__map iframe {
        width: 100%;
        height: 100%;
        border: none;
        display: block;
    }

    /* ===== Route section ===== */
    .lda-route-section {
        background: #EDECE2;
        padding: calc(4 * var(--b)) calc(2 * var(--b)) 0;
        display: flex;
        flex-direction: column;
        gap: calc(4 * var(--b));
    }

    .lda-route-block {
        display: flex;
        flex-direction: column;
        gap: calc(1 * var(--b));
    }

    .lda-route-block__header {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: calc(0.8 * var(--b));
    }

    .lda-route-block__icon {
        width: calc(2 * var(--b));
        height: calc(2 * var(--b));
        flex-shrink: 0;
    }

    .lda-route-block__title {
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 400;
        font-size: calc(1.4 * var(--b));
        line-height: 170%;
        letter-spacing: .03em;
        color: #212227;
        margin: 0;
    }

    .lda-route-block__desc {
        font-family: 'Noto Sans JP', sans-serif;
        font-size: calc(1.4 * var(--b));
        line-height: 170%;
        letter-spacing: .03em;
        color: #212227;
        margin: 0;
    }

    .lda-route-block__desc a {
        color: inherit;
        text-decoration: none;
        background: linear-gradient(currentColor, currentColor) 0 100% / 100% 1px no-repeat;
    }

    @media (hover: hover) and (pointer: fine) {
        .lda-route-block__desc a {
            transition: background-size 0.4s ease-out, background-position 0s 0.4s;
        }
        .lda-route-block__desc a:hover {
            background-size: 0 1px;
            background-position: 100% 100%;
            transition: background-size 0.4s ease-out;
        }
    }

    /* hr between train/car */
    .lda-hr {
        display: none;
    }

    .lda-hr__line {
        width: 100%;
        height: 0;
        border-top: 1px solid #D1D0C1;
    }

    /* ===== Notes section ===== */
    .lda-notes-section {
        background: #EDECE2;
        padding: calc(4 * var(--b)) calc(2 * var(--b)) calc(4 * var(--b));
    }

    .lda-notes-section__heading {
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 500;
        font-size: calc(1.8 * var(--b));
        line-height: 170%;
        letter-spacing: .03em;
        color: #212227;
        margin: 0 0 calc(1 * var(--b));
    }

    .lda-notes-section__text {
        font-family: 'Noto Sans JP', sans-serif;
        font-size: calc(1.5 * var(--b));
        line-height: 170%;
        letter-spacing: .03em;
        color: #212227;
        margin: 0;
    }

    .lda-notes-section__text a {
        color: inherit;
        text-decoration: none;
        background: linear-gradient(currentColor, currentColor) 0 100% / 100% 1px no-repeat;
    }

    @media (hover: hover) and (pointer: fine) {
        .lda-notes-section__text a {
            transition: background-size 0.4s ease-out, background-position 0s 0.4s;
        }
        .lda-notes-section__text a:hover {
            background-size: 0 1px;
            background-position: 100% 100%;
            transition: background-size 0.4s ease-out;
        }
    }

    /* ===== PC overrides ===== */
    @media (min-width: 1025px) {
        .lda-mv {
            padding: calc(10 * var(--b)) 0 calc(6 * var(--b));
            align-items: center;
        }

        .lda-mv__inner {
            padding: 0 calc(12 * var(--b));
            gap: calc(3 * var(--b));
        }

        .lda-mv__heading {
            gap: calc(1.2 * var(--b));
        }

        .lda-mv__title-row {
            flex-wrap: nowrap;
            align-items: baseline;
            gap: calc(1.2 * var(--b));
        }

        .lda-mv__title {
            font-size: calc(4.8 * var(--b));
        }

        .lda-mv__label {
            font-size: calc(1.4 * var(--b));
            padding-bottom: 0;
        }

        .lda-mv__lead {
            max-width: calc(112.6 * var(--b));
        }

        /* Map section PC */
        .lda-map-section {
            padding: calc(6 * var(--b)) calc(12 * var(--b));
            flex-direction: row;
            gap: calc(2 * var(--b));
            align-items: flex-start;
        }

        .lda-map-section__left {
            display: flex;
            flex-direction: column;
            gap: calc(0.8 * var(--b));
            flex: 1;
        }

        .lda-map-section__map {
            width: calc(76.5 * var(--b));
            height: calc(35.2 * var(--b));
            flex-shrink: 0;
        }

        /* Route section PC */
        .lda-route-section {
            padding: 0 calc(12 * var(--b)) 0;
            gap: 0;
        }

        .lda-route-block {
            padding: calc(3 * var(--b)) 0 0;
            gap: calc(1 * var(--b));
            border-bottom: none;
        }

        .lda-route-block:not(:last-child) {
            border-bottom: none;
        }

        .lda-route-block__header {
            margin-bottom: calc(0.4 * var(--b));
        }

        /* PC two-column layout for routes */
        .lda-routes-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: calc(8 * var(--b));
            align-items: start;
        }

        /* PC HR hidden between transport sections */
        .lda-hr {
            display: none;
        }

        /* Notes section PC */
        .lda-notes-section {
            padding: calc(6 * var(--b)) calc(12 * var(--b)) calc(10 * var(--b));
            border-bottom: 1px solid rgba(209, 208, 193, .5);
        }

        .lda-notes-section__text {
            max-width: calc(112.6 * var(--b));
        }

        .lda-map-section__note {
            display: none;
        }
    }

    @media (max-width: 1024px) {
        .ldh-info {
            padding-top: 0;
        }

        .lda-mv__title {
            font-size: calc(4.4 * var(--b));
        }

        .lda-mv__title-row {
            flex-wrap: nowrap;
        }

        .lda-mv__label {
            flex-shrink: 1;
            min-width: 0;
        }

        .lda-hr + .lda-route-block .lda-route-block__header {
            margin-top: calc(4 * var(--b));
        }
    }
