*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,"Hiragino Sans","Yu Gothic",Meiryo,sans-serif;font-size:1rem;line-height:1.8;color:var(--color-text);background:var(--color-surface)}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}h1,h2,h3{color:var(--color-navy);line-height:1.5;margin:0 0 1rem;font-weight:700}h1{font-size:clamp(1.8rem,3.2vw,2.65rem)}h2{font-size:clamp(1.25rem,2.1vw,1.7rem)}h3{font-size:1.35rem}p{margin:0 0 1.2rem}button,input,select,textarea{font:inherit}button{cursor:pointer}input,textarea,select{max-width:100%;width:100%;padding:.7rem .85rem;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-white);color:var(--color-text-strong)}textarea{resize:vertical}label{display:block;font-weight:700;color:var(--color-navy);margin-bottom:.4rem}:focus-visible{outline:3px solid var(--color-main);outline-offset:4px}::selection{background:var(--color-selection);color:var(--color-navy)}.u-skip{position:fixed;top:-100px;left:1rem;z-index:10;background:var(--color-white);padding:.6rem}.u-skip:focus{top:1rem}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.u-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
