/* 親テーマは変更せず、長いスマートフォンメニューの到達性を修復する。 */
#anew-menu-open {
    min-width: 64px;
    min-height: 44px;
    background: #fff;
    color: #171717;
    font: inherit;
    font-size: 10px;
    cursor: pointer;
    touch-action: manipulation;
}

#anew-mobile-menu[hidden] {
    display: none !important;
}

#anew-mobile-menu {
    box-sizing: border-box;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    justify-content: stretch;
    align-items: stretch;
    height: 100vh;
    height: 100dvh;
    padding-top: env(safe-area-inset-top, 0px);
    overflow: hidden;
    transform: none;
    transition: none;
}

#anew-menu-close {
    position: static;
    justify-self: end;
    min-width: 44px;
    min-height: 44px;
    margin: 12px max(16px, env(safe-area-inset-right, 0px)) 4px 16px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #171717;
    font-size: 44px;
    line-height: 1;
    cursor: pointer;
    touch-action: manipulation;
}

#anew-mobile-menu .anew-menu-scroll {
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    overscroll-behavior-y: contain;
    -webkit-overflow-scrolling: touch;
}

#anew-mobile-menu .sp-global-menu-lists {
    box-sizing: border-box;
    width: min(100%, 480px);
    margin: 0 auto;
    padding: 12px max(24px, env(safe-area-inset-right, 0px)) max(32px, env(safe-area-inset-bottom, 0px)) max(24px, env(safe-area-inset-left, 0px));
    row-gap: 14px;
}

#anew-mobile-menu .sp-global-menu-lists a {
    display: flex;
    min-height: 44px;
    justify-content: center;
    align-items: center;
    overflow-wrap: anywhere;
    line-height: 1.5;
    touch-action: manipulation;
}

#anew-mobile-menu .sp-global-menu-lists .sp-sub a {
    padding-left: 0;
    font-size: 16px;
}

#anew-menu-open:hover,
#anew-menu-close:hover,
#anew-mobile-menu a:hover {
    background-color: #f6ddd3;
}

#anew-menu-open:focus-visible,
#anew-menu-close:focus-visible,
#anew-mobile-menu a:focus-visible {
    outline: 3px solid #6d3020;
    outline-offset: 3px;
    border-radius: 4px;
}
