/* style.css — shared base: reset, logo banner, env badge, policy, footer */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

body {
  font-family: 'メイリオ', 'Meiryo', 'MS Gothic', sans-serif;
  font-size: 14px;
  background: #fff;
  color: #333;
}
#container {
    max-width: 1320px;
    margin: 0 auto;
}

/* Logo banner (renderMv) */
.fce-mv {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 357px;
  background: #fff;
  overflow: hidden;
  position: relative;
}
/* Test environment: page background (class set by updateEnvBadge when TEST_MODE=1) */
body.is-test { background: #8a1538; }
.env-badge {
  position: absolute;
  top: 8px; right: 12px;
  background: #8a1538;   /* test environment badge (shown only when TEST_MODE=1) */
  color: #fff;
  font-size: 11px; font-weight: 600; letter-spacing: .02em;
  padding: 5px 10px; border-radius: 6px;
  white-space: nowrap; z-index: 2;
  font-family: 'Meiryo', 'Yu Gothic', sans-serif;
}
.fce-mv__img {
  width: 90%;
  max-width: 100%;
  height: auto;
  object-fit: contain;
}
@media (max-width: 768px) {
  .fce-mv { height: auto; max-height: 240px; }
}
@media (max-width: 480px) {
  .fce-mv { max-height: 160px; }
}

/* Policy (renderPolicy) */
.fce-policy {
  padding: 12px;
  background: #f8f8f8;
  border-top: 1px solid #d0d0d0;
  text-align: center;
  font-size: 12px;
  color: #555;
}
.fce-policy a { color: #0055bb; }

/* Footer (renderFooter) */
.fce-footer {
  padding: 10px;
  background: #333;
  color: #aaa;
  text-align: center;
  font-size: 11px;
}

main { min-height: 60vh; }

.btn { padding: 6px 16px; border: none; border-radius: 4px; cursor: pointer; font-family: inherit; font-size: 14px; }
.btn:hover   { opacity: .85; }
