/*
 * EIGHT site-wide lower-section unification.
 * The home page keeps its existing editorial treatment.
 */

body:not(.home) #pc_header.header .header_inner .header_right::before,
body:not(.home) #sp_header.header .header_inner .header_buttons::before {
    display: none;
}

body:not(.home) .access .access_title_box::before {
    display: none;
}

body:not(.home) .top-editorial-access {
    box-sizing: border-box;
    margin: 0;
    padding: clamp(64px, 8vw, 104px) 20px 0;
    background: #fff;
    color: #243f39;
}

body:not(.home) .top-editorial-access .access_inner {
    width: min(1080px, 100%);
    max-width: none;
    padding: 0;
}

body:not(.home) .top-editorial-access .access_title_box {
    display: flex;
    align-items: flex-start;
    flex-direction: column-reverse;
    width: 100%;
    margin: 0 0 30px;
    text-align: left;
}

body:not(.home) .top-editorial-access .access_title_box .en {
    margin: 0 0 9px;
    color: #a65371;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .18em;
}

body:not(.home) .top-editorial-access .access_title_box .ja {
    margin: 0;
    color: #172f3d;
    font-size: clamp(1.7rem, 3vw, 2.5rem);
    line-height: 1.4;
    text-align: left;
    writing-mode: horizontal-tb;
}

body:not(.home) .top-editorial-access .access_info {
    display: block;
    margin-top: 0;
}

body:not(.home) .top-editorial-access .e241_access_badge {
    display: inline-flex;
    margin: 0 0 14px;
    padding: 8px 14px;
    border-radius: 999px;
    background: #f8e9ee;
    color: #8d3f5d;
    font-size: .8rem;
    font-weight: 800;
}

body:not(.home) .top-editorial-access .e241_access_name {
    margin: 0 0 20px;
    color: #172f3d;
    font-size: 1.22rem;
    line-height: 1.5;
}

body:not(.home) .top-editorial-access .access_contact :where(.access_address, .access_info_text, .access_phone_note) {
    max-width: 780px;
}

body:not(.home) .top-editorial-access .access_map {
    width: min(1160px, 100%);
    height: auto;
    margin: clamp(34px, 5vw, 58px) auto 0;
    overflow: visible;
}

body:not(.home) .top-editorial-access .access_map > .image_box {
    overflow: hidden;
    height: auto;
    aspect-ratio: 16 / 7;
    border-radius: 20px;
    background: #eee;
}

body:not(.home) .top-editorial-access .e241_access_route {
    display: grid;
    grid-template-columns: minmax(0, .8fr) minmax(280px, 1.2fr);
    gap: 22px;
    margin-top: 20px;
    padding: clamp(20px, 3vw, 30px);
    border-radius: 20px;
    background: #f5f4f2;
}

body:not(.home) .top-editorial-access .e241_access_route_copy {
    align-self: center;
}

body:not(.home) .top-editorial-access .e241_access_route_kicker {
    margin: 0 0 8px;
    color: #a65371;
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .1em;
}

body:not(.home) .top-editorial-access .e241_access_route h3 {
    margin: 0 0 8px;
    color: #172f3d;
    font-size: clamp(1.05rem, 2vw, 1.35rem);
    line-height: 1.5;
}

body:not(.home) .top-editorial-access .e241_access_route p {
    margin: 0;
    font-size: .9rem;
    line-height: 1.75;
}

body:not(.home) .top-editorial-access .access_route_video_frame {
    overflow: hidden;
    width: 100%;
    aspect-ratio: 16 / 9;
    border-radius: 14px;
}

body:not(.home) .top-editorial-access .access_route_video_frame iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

@media (max-width: 767px) {
    body:not(.home) .top-editorial-access {
        padding: 52px 18px 0;
    }

    body:not(.home) .top-editorial-access .access_map {
        width: calc(100% + 36px);
        margin-left: -18px;
    }

    body:not(.home) .top-editorial-access .access_map > .image_box {
        aspect-ratio: 4 / 3;
        border-radius: 0;
    }

    body:not(.home) .top-editorial-access .e241_access_route {
        grid-template-columns: 1fr;
        margin: 0;
        border-radius: 0;
    }

    body:not(.home) .top-editorial-access .access_info .phone {
        pointer-events: auto;
    }

    body:not(.home) .top-editorial-access .access_info .phone .phone_text {
        font-size: clamp(1.65rem, 8.8vw, 2.35rem);
    }
}
