*, *::before, *::after { box-sizing: border-box; }
body, h1, h2, p, ol { margin: 0; }
body { font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; -webkit-font-smoothing: antialiased; }
button, a, video { -webkit-tap-highlight-color: transparent; }
button { font: inherit; cursor: pointer; }
button:disabled { cursor: default; }
a { color: inherit; text-decoration: none; }
img, video { display: block; max-width: 100%; }
button, a { touch-action: manipulation; }
:focus-visible { outline: 3px solid #2f7ab6; outline-offset: 4px; }
[hidden] { display: none !important; }
