html {
    font-size: 1rem;
    /* Default (usually 16px) */
    overflow-x: hidden;
    scroll-behavior: smooth;
    scroll-padding-top: 100px;
    /* Accounts for fixed headers and Admin Bar */
}


*,
*::before,
*::after {
    box-sizing: border-box;
}



body,
:root {
    font-family: "YakuHanJP", "Noto Sans JP", sans-serif;
    font-weight: 400;
    line-height: 1.6;
    overflow-x: hidden !important;
    /* Prevent horizontal scroll */
    overflow-wrap: break-word;
    word-wrap: break-word;
}

/* Bold text should use Medium (500) weight */
strong,
b,
th,
.has-bold-font-weight,
.sticky-footer-nav .nav-item,
.sticky-footer-nav .nav-button {
    font-weight: 500;
}

/* Custom Underline Style (Applies when underline is added via Editor) */
a,
u,
[style*="underline"],
.has-text-decoration-underline {
    text-underline-offset: 4px;
    text-decoration-thickness: 1px;
}

/* Hover effect: hide underline on hover for links that have it enabled via Editor */
a[style*="underline"]:hover,
.has-text-decoration-underline a:hover,
u a:hover,
a u:hover {
    text-decoration: none !important;
}