/* Minimal reset / base (boot) CSS - purposefully small */
/* Box-sizing and sensible defaults */
*, *::before, *::after { box-sizing: border-box; }
html, body { height: 100%; }
body { margin: 0; padding: 0; font-family: 'Noto Sans JP', Arial, sans-serif; line-height: 1.6; color: #333; background: #f8f9fa; }
img, picture, video, canvas, svg { max-width: 100%; height: auto; display: block; }
button, input, select, textarea { font: inherit; }
a { color: inherit; text-decoration: none; }
ul, ol { margin: 0; padding: 0; }
.container { max-width: 1200px; margin-left: auto; margin-right: auto; padding-left: 1rem; padding-right: 1rem; }
/* Utility spacing helpers (small set) */
.mt-0{margin-top:0}.mb-0{margin-bottom:0}.py-0{padding-top:0;padding-bottom:0}
@media (max-width: 768px){ .container{padding-left:0.75rem;padding-right:0.75rem} }
