:root {
  font-family: "Manrope", "Noto Sans JP", system-ui, sans-serif;
  color: #292624;
  background: #fbfaf8;
  line-height: 1.75;
}
* { box-sizing: border-box; }
body { margin: 0; }
main { max-width: 680px; margin: 7vh auto; padding: 2rem; }
h1 { margin: .4rem 0 1.4rem; line-height: 1.4; }
h2 { font-size: 1.15rem; }
a { color: #64423e; text-underline-offset: .22em; }
button {
  border: 0;
  border-radius: 100px;
  background: #7e5b57;
  color: white;
  cursor: pointer;
  font: inherit;
  font-weight: 700;
  min-height: 44px;
  padding: .7em 1.5em;
}
button:disabled { opacity: .6; cursor: default; }
button:focus-visible, a:focus-visible { outline: 2px solid #64423e; outline-offset: 4px; }
[hidden] { display: none !important; }
