/*
 * Top-page shared action colors and generated bitmap textures, 2026-08-17.
 * Loaded last so the shared tokens consistently override local prototypes.
 */
:root {
  --r2-action: #112e56;
  --r2-action-hover: #0a2344;
  --r2-action-border: #112e56;
  --r2-action-focus: rgba(30, 143, 201, .28);
  --r2-action-radius: 8px;
}

/* Header actions use the same navy as the navigation. */
.header-action-item {
  border-color: var(--r2-action-border);
  border-radius: 4px;
}

.header-demo-btn {
  color: var(--r2-action);
  background: #fff;
}

.header-demo-btn::before {
  background: var(--r2-action);
}

.header-demo-btn:hover {
  color: #fff;
}

.header-contact-btn {
  color: #fff;
  border-color: var(--r2-action-border);
  background: var(--r2-action);
}

.header-contact-btn::before {
  background: #fff;
}

.header-contact-btn:hover {
  color: var(--r2-action);
}

/* Generated textures are reserved for card-based sections. FEATURES keeps its previous white + soft-curve treatment. */
.fv4-feature-top-cap {
  display: none !important;
}

section[data-sec="08 INDUSTRY 業種別"] {
  background: #fff url("background-flow-c-20260817.webp") center / cover no-repeat;
}

section[data-sec="10 CASE お客様の声"] {
  background: #fff url("background-flow-b-20260817.webp") center bottom / cover no-repeat;
}

section[data-sec="09 HISTORY 開発秘話"] {
  background: #062a60 url("history_bg_engineers-v2-20260828.png") center / cover no-repeat;
}

section[data-sec="09 HISTORY 開発秘話"] {
  background-color: #0b4f9f;
  background-blend-mode: normal;
}

section[data-sec="09 HISTORY 開発秘話"]::before {
  content: "";
  position: absolute;
  inset: 0;
  display: block;
  background: rgba(4, 61, 146, .64);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  pointer-events: none;
}

section[data-sec="09 HISTORY 開発秘話"] .history-head .h2 {
  color: #fff !important;
}

section[data-sec="09 HISTORY 開発秘話"] .history-head .lead {
  color: #dce9f5;
}

section[data-sec="09 HISTORY 開発秘話"] .history-head > .eyebrow {
  color: #fff !important;
}

section[data-sec="09 HISTORY 開発秘話"] .history-head > .eyebrow::before {
  background: #fff !important;
}

section[data-sec="11 NEWS お知らせ"] {
  background: #fff;
}

/* Final CTA: two clear actions, restrained corners, and no trailing line icon. */
.cta2.cta2--concept-a {
  background: #fff url("background-flow-a-20260817.webp") center / cover no-repeat;
}

.cta2.cta2--concept-a::before,
.cta2.cta2--concept-a::after {
  display: none;
}

.cta2.cta2--concept-a .cta2-btns .btn2 {
  grid-template-columns: 74px minmax(0, 1fr);
  border-color: var(--r2-action-border);
  border-radius: var(--r2-action-radius);
  color: var(--r2-action);
}

.cta2.cta2--concept-a .cta2-btns .btn2::after {
  content: none;
  display: none;
}

.cta2.cta2--concept-a .cta2-btns .btn2-primary {
  color: #fff;
  border-color: var(--r2-action-border);
  background: var(--r2-action);
  box-shadow: 0 18px 38px rgba(17, 46, 86, .2);
}

.cta2.cta2--concept-a .cta2-btns .btn2-ghost {
  color: var(--r2-action);
  border-color: var(--r2-action-border);
  background: rgba(255, 255, 255, .92);
}

.cta2.cta2--concept-a .cta2-btns .btn2-primary:hover,
.cta2.cta2--concept-a .cta2-btns .btn2-primary:focus-visible {
  background: var(--r2-action-hover);
}

.cta2.cta2--concept-a .cta2-btns .btn2-ghost:hover,
.cta2.cta2--concept-a .cta2-btns .btn2-ghost:focus-visible {
  color: #fff;
  background: var(--r2-action);
}

.cta2.cta2--concept-a .cta2-btns .btn2:focus-visible {
  outline-color: var(--r2-action-focus);
}

.cta2.cta2--concept-a .cta2-btns .btn2 i {
  color: var(--r2-action);
  background-color: #fff;
}

@media (max-width: 520px) {
  .cta2.cta2--concept-a .cta2-btns .btn2 {
    grid-template-columns: 54px minmax(0, 1fr);
    border-radius: var(--r2-action-radius);
  }
}
