:root {
  --career-ink: #17263a;
  --career-muted: #526174;
  --career-brand: #005488;
  --career-brand-dark: #003e67;
  --career-border: #d7e0e8;
  --career-surface: #ffffff;
  --career-soft: #f3f7fa;
  --career-danger: #9f2d2d;
  --career-focus: #f59e0b;
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
#toc, .toc { display: none !important; }

body.career-start-page {
  margin: 0;
  color: var(--career-ink);
  background: #f7f9fb;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans JP", sans-serif;
  line-height: 1.7;
}

.career-start-container {
  width: min(100% - 32px, 640px);
  margin-inline: auto;
}

.career-start-header {
  min-height: 48px;
  display: flex;
  align-items: center;
  background: var(--career-surface);
  border-bottom: 1px solid var(--career-border);
}

.career-start-site-name {
  color: var(--career-ink);
  font-size: 14px;
  font-weight: 800;
  text-decoration: none;
}

.career-start-main { padding-block: 20px 36px; }

.career-lp-hero {
  margin: 0 0 22px;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.career-lp-eyebrow {
  margin: 0 0 5px;
  color: var(--career-brand);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .06em;
}

.career-lp-hero h1 {
  margin: 0;
  font-size: clamp(25px, 7vw, 34px);
  line-height: 1.35;
}

.career-lp-hero p:last-child {
  margin: 10px 0 0;
  color: var(--career-muted);
  font-size: 15px;
}

.career-lp-ai-advisor {
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.career-lp-ai-advisor h2 {
  margin: 0;
  font-size: 22px;
  line-height: 1.4;
}

.career-lp-ai-mode {
  margin: 5px 0 12px;
  color: var(--career-muted);
  font-size: 13px;
}

.career-lp-ai-privacy {
  margin: 0 0 16px;
  padding: 10px 12px;
  background: #fff8e8;
  border-left: 4px solid #d88900;
  font-size: 13px;
}

.career-lp-ai-privacy p { margin: 3px 0 0; }

.career-lp-ai-conversation {
  padding: 14px;
  background: var(--career-surface);
  border: 1px solid var(--career-border);
  border-radius: 10px;
}

.career-lp-ai-transcript {
  display: grid;
  gap: 8px;
  margin-bottom: 12px;
}

.career-lp-ai-transcript:empty { display: none; }

.career-lp-ai-message {
  max-width: 94%;
  padding: 9px 11px;
  border-radius: 9px;
  background: var(--career-soft);
}

.career-lp-ai-message--user {
  margin-left: auto;
  background: #e6f2f8;
}

.career-lp-ai-message small {
  display: block;
  margin-bottom: 2px;
  color: var(--career-muted);
  font-size: 11px;
  font-weight: 700;
}

.career-lp-ai-message p { margin: 0; white-space: pre-wrap; }

.career-lp-ai-message-form label {
  display: block;
  margin-bottom: 6px;
  font-size: 14px;
  font-weight: 700;
}

.career-lp-ai-message-form textarea {
  width: 100%;
  min-height: 116px;
  padding: 10px;
  color: var(--career-ink);
  font: inherit;
  line-height: 1.55;
  resize: vertical;
  border: 1px solid #aebbc7;
  border-radius: 7px;
}

.career-lp-ai-message-meta {
  display: flex;
  justify-content: space-between;
  margin-top: 3px;
  color: var(--career-muted);
  font-size: 11px;
}

.career-lp-ai-navigation {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr);
  gap: 8px;
  margin-top: 10px;
}

.career-lp-ai-navigation button {
  min-height: 44px;
  padding: 8px 10px;
  font: inherit;
  font-weight: 800;
  border-radius: 7px;
  cursor: pointer;
}

.career-lp-ai-reset {
  color: var(--career-brand);
  background: var(--career-surface);
  border: 1px solid var(--career-brand);
}

.career-lp-ai-next {
  color: #fff;
  background: var(--career-brand);
  border: 1px solid var(--career-brand);
}

.career-lp-ai-next:hover { background: var(--career-brand-dark); }
.career-lp-ai-navigation button:disabled { opacity: .6; cursor: wait; }

.career-lp-ai-error {
  margin: 7px 0 0;
  color: var(--career-danger);
  font-size: 13px;
  font-weight: 700;
}

.career-lp-ai-rate-limit {
  margin-top: 10px;
  padding: 11px 12px;
  background: #fff8e8;
  border: 1px solid #e7c98a;
  border-radius: 7px;
  font-size: 13px;
}

.career-lp-ai-rate-limit > p { margin: 3px 0 0; }
.career-lp-ai-rate-limit__offer {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid #e7c98a;
}
.career-lp-ai-rate-limit__offer > p { margin: 4px 0; }
.career-lp-ai-rate-limit__dismiss {
  min-height: 40px;
  margin-top: 7px;
  padding: 7px 9px;
  color: var(--career-muted);
  font: inherit;
  background: transparent;
  border: 0;
  text-decoration: underline;
  cursor: pointer;
}

.career-lp-ai-result {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 2px solid var(--career-border);
}

.career-lp-ai-result h3 { margin: 0 0 8px; font-size: 20px; }
.career-lp-ai-result h4 { margin: 16px 0 5px; font-size: 16px; }
.career-lp-ai-result h5 { margin: 0 0 4px; font-size: 15px; }
.career-lp-ai-result p, .career-lp-ai-result ul { margin-block: 5px; }

.career-lp-ai-role-card,
.career-lp-ai-offer {
  margin-top: 8px;
  padding: 10px 12px;
  background: var(--career-soft);
  border-radius: 7px;
}

.career-lp-ai-offer--affiliate { border-left: 4px solid #d88900; }
.career-lp-service-label {
  margin: 0 0 3px !important;
  color: #7b4d00;
  font-size: 12px;
  font-weight: 900;
}

.career-lp-secondary-cta,
.career-lp-conversion-cta,
.career-lp-official-cta {
  display: block;
  margin-top: 8px;
  padding: 9px 11px;
  color: var(--career-brand);
  font-weight: 800;
  text-decoration: none;
  border: 1px solid var(--career-brand);
  border-radius: 7px;
}

.career-lp-conversion-cta {
  color: #fff;
  background: var(--career-brand);
}

.career-lp-ai-result__note {
  margin-top: 16px !important;
  color: var(--career-muted);
  font-size: 12px;
}

.career-lp-ai-fallback {
  display: grid;
  gap: 6px;
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid var(--career-border);
}

.career-lp-ai-fallback strong { font-size: 13px; }
.career-lp-ai-fallback a { color: var(--career-brand); font-weight: 700; }

.career-lp-note,
.career-lp-noscript {
  margin-top: 18px;
  padding: 11px 12px;
  color: var(--career-muted);
  background: var(--career-soft);
  font-size: 12px;
  border-radius: 7px;
}

.career-lp-note p { margin: 4px 0; }

.career-start-footer {
  padding-block: 18px 28px;
  background: var(--career-surface);
  border-top: 1px solid var(--career-border);
}

.career-start-footer-nav { display: flex; flex-wrap: wrap; gap: 6px 14px; }
.career-start-footer a { color: var(--career-brand); font-size: 12px; }
.career-start-copyright { margin: 10px 0 0; color: var(--career-muted); font-size: 11px; }
.career-start-skip-link { position: absolute; left: -9999px; }
.career-start-skip-link:focus { left: 8px; top: 8px; z-index: 100; padding: 8px; background: #fff; }

textarea:focus-visible,
button:focus-visible,
a:focus-visible {
  outline: 3px solid var(--career-focus);
  outline-offset: 2px;
}

@media (max-width: 390px) {
  .career-start-container { width: calc(100% - 24px); }
  .career-start-main { padding-block: 14px 28px; }
  .career-lp-hero { margin-bottom: 18px; }
  .career-lp-hero h1 { font-size: 25px; }
  .career-lp-ai-conversation { padding: 11px; }
  .career-lp-ai-message { max-width: 97%; }
}

@media (prefers-reduced-motion: reduce) {
  * { scroll-behavior: auto !important; }
}
