@charset "UTF-8";

:root {
  color-scheme: light;
  --color-background: #fffaf4;
  --color-text: #272b28;
  --color-accent: #b9583b;
  --color-accent-hover: #98452e;
  --color-focus: #456047;
  --color-olive: #7b7d43;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  background: var(--color-background);
  color: var(--color-text);
  font-family: "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif;
  font-weight: 400;
  line-height: 1.8;
  -webkit-text-size-adjust: 100%;
}

h1, p, figure { margin: 0; }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; }
a { color: inherit; }
img { display: block; max-width: 100%; }

.page-width {
  width: min(100% - 96px, 1440px);
  margin-inline: auto;
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  padding: 21px 32px;
  border: 0;
  border-radius: 999px;
  background: var(--color-accent);
  color: #fff;
  font-weight: 500;
  line-height: 1.5;
  text-decoration: none;
  white-space: nowrap;
  transition: background-color 220ms ease, box-shadow 220ms ease, transform 220ms ease;
}

.button svg { transition: transform 220ms ease; }

@media (hover: hover) and (pointer: fine) {
  .button:hover {
    background: var(--color-accent-hover);
    box-shadow: 0 8px 20px rgb(112 54 35 / 14%);
    transform: translateY(-2px);
  }
  .button:hover svg { transform: translateX(4px); }
}

.button:focus-visible { background: var(--color-accent-hover); }

@media (prefers-reduced-motion: reduce) {
  .button, .button svg { transition: none; }
  .button:hover, .button:hover svg { transform: none; }
}

:focus-visible { outline: 3px solid var(--color-focus); outline-offset: 6px; }
.skip-link { position: absolute; left: 24px; top: 12px; transform: translateY(-160%); }
.skip-link:focus { transform: none; padding: 8px 16px; background: #fff; z-index: 1; }

@media (max-width: 1100px) {
  .page-width { width: calc(100% - 64px); }
}

@media (max-width: 600px) {
  .page-width { width: calc(100% - 40px); }
}

/* 最終更新: 2026-11-04 00:37 */


