*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

  :root {
    --navy: #1a2640;
    --navy-mid: #243352;
    --navy-light: #2e4270;
    --navy-deep: #111820;
    --gold: #b8955a;
    --gold-light: #d4b07a;
    --gold-pale: #f0e6d3;
    --ivory: #faf8f3;
    --ivory-deep: #f2ede2;
    --white: #ffffff;
    --dark: #1c1c1c;
    --gray: #6b6b6b;
    --gray-light: #d8d5ce;
    --line-dark: rgba(255,255,255,0.1);
    --font-serif: 'Cormorant Garamond', 'Noto Serif JP', serif;
    --font-sans: 'Noto Sans JP', sans-serif;
    --shadow: 0 16px 40px rgba(26,38,64,0.10);
    --shadow-strong: 0 28px 70px rgba(26,38,64,0.18);
  }

  html { scroll-behavior: smooth; }

  body {
    font-family: var(--font-sans);
    background: var(--ivory);
    color: var(--dark);
    font-size: 15px;
    line-height: 1.8;
    -webkit-font-smoothing: antialiased;
  }

  a { color: inherit; text-decoration: none; }
  img { max-width: 100%; display: block; }
  button { font-family: inherit; }

  .akiko-lp {
    background: var(--ivory);
    overflow: hidden;
  }

  /* ===== WordPress theme reset helper ===== */
  .akiko-lp :where(h1,h2,h3,h4,p,ul,li,table,tr,td,button,a) {
    box-sizing: border-box;
  }

  /* ===== NAVIGATION ===== */
  .ak-nav {
    position: fixed;
    top: 0; left: 0; right: 0;
    z-index: 9999;
    background: rgba(250,248,243,0.95);
    backdrop-filter: blur(8px);
    border-bottom: 1px solid var(--gray-light);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 48px;
    height: 68px;
    transition: box-shadow .25s ease, background .25s ease;
  }

  .ak-nav-logo {
    font-family: var(--font-serif);
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 0.15em;
    color: var(--navy);
    white-space: nowrap;
  }
  .ak-nav-logo span { color: var(--gold); }

  .ak-nav-links {
    display: flex;
    gap: 26px;
    list-style: none;
  }

  .ak-nav-links a {
    font-size: 11px;
    letter-spacing: 0.12em;
    color: var(--navy);
    font-weight: 400;
    position: relative;
    padding-bottom: 2px;
    transition: color 0.2s;
    white-space: nowrap;
  }
  .ak-nav-links a::after {
    content: '';
    position: absolute;
    bottom: 0; left: 0; right: 0;
    height: 1px;
    background: var(--gold);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.25s ease;
  }
  .ak-nav-links a:hover { color: var(--gold); }
  .ak-nav-links a:hover::after { transform: scaleX(1); }

  .ak-nav-cta {
    font-size: 11px;
    letter-spacing: 0.1em;
    color: var(--white);
    background: var(--navy);
    border: none;
    padding: 10px 22px;
    cursor: pointer;
    transition: background 0.2s, transform 0.15s;
    white-space: nowrap;
  }
  .ak-nav-cta:hover { background: var(--navy-light); transform: translateY(-1px); }

  .ak-hamburger {
    display: none;
    flex-direction: column;
    gap: 5px;
    cursor: pointer;
    background: none;
    border: none;
    padding: 4px;
  }
  .ak-hamburger span {
    display: block;
    width: 24px; height: 1.5px;
    background: var(--navy);
    transition: all 0.3s;
  }
  .ak-mobile-menu {
    display: none;
    position: fixed;
    top: 68px; left: 0; right: 0;
    background: var(--ivory);
    z-index: 9998;
    padding: 18px 24px;
    border-bottom: 1px solid var(--gray-light);
    box-shadow: 0 20px 40px rgba(26,38,64,0.08);
  }
  .ak-mobile-menu.open { display: block; }
  .ak-mobile-menu a {
    display:block;
    padding:14px 0;
    border-bottom:1px solid var(--ivory-deep);
    color:var(--navy);
    font-size:13px;
    letter-spacing:.08em;
  }
  .ak-mobile-menu a:last-child { border-bottom:none; }

  /* ===== COMMON ===== */
  .ak-section {
    padding: 108px 80px;
    position: relative;
  }
  .ak-section-inner {
    max-width: 1170px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
  }
  .ak-section-label {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 20px;
  }
  .ak-section-label.center { justify-content: center; }
  .ak-section-label-line {
    width: 32px; height: 1px;
    background: var(--gold);
  }
  .ak-section-label-text {
    font-size: 10px;
    letter-spacing: 0.35em;
    color: var(--gold);
    font-weight: 400;
  }
  .ak-section-title {
    font-family: var(--font-serif);
    font-size: clamp(30px, 3vw, 46px);
    font-weight: 400;
    color: var(--navy);
    line-height: 1.5;
    letter-spacing: 0.04em;
  }
  .ak-section-lead {
    margin-top: 16px;
    font-size: 14px;
    color: var(--gray);
    line-height: 2.1;
    font-weight: 300;
    max-width: 770px;
  }
  .ak-center { text-align: center; }
  .ak-center .ak-section-lead { margin-left: auto; margin-right: auto; }

  .ak-btn-primary {
    display: inline-block;
    background: var(--gold);
    color: var(--white);
    font-size: 12px;
    letter-spacing: 0.15em;
    padding: 16px 36px;
    font-weight: 400;
    transition: background 0.2s, transform 0.15s, box-shadow .2s;
  }
  .ak-btn-primary:hover {
    background: var(--gold-light);
    transform: translateY(-1px);
    box-shadow: 0 14px 34px rgba(184,149,90,.24);
  }

  .ak-btn-navy {
    display: inline-block;
    background: var(--navy);
    color: var(--white);
    font-size: 12px;
    letter-spacing: 0.15em;
    padding: 16px 36px;
    font-weight: 400;
    transition: background 0.2s, transform 0.15s;
  }
  .ak-btn-navy:hover { background: var(--navy-light); transform: translateY(-1px); }

  .ak-btn-ghost {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: rgba(255,255,255,0.68);
    font-size: 12px;
    letter-spacing: 0.12em;
    transition: color 0.2s;
  }
  .ak-btn-ghost:hover { color: var(--gold-light); }
  .ak-btn-ghost::after { content: '→'; }

  .ak-num, .ak-stat-number, .ak-feature-number, .ak-can-num {
    font-family: var(--font-sans) !important;
    font-variant-numeric: tabular-nums;
    letter-spacing: .04em;
  }

  /* ===== ANIMATION ===== */
  .ak-fade,
  .ak-rise,
  .ak-left,
  .ak-right,
  .ak-scale {
    opacity: 0;
    transition: opacity .75s ease, transform .75s ease;
    will-change: opacity, transform;
  }
  .ak-fade { transform: translateY(24px); }
  .ak-rise { transform: translateY(38px); }
  .ak-left { transform: translateX(-34px); }
  .ak-right { transform: translateX(34px); }
  .ak-scale { transform: scale(.96); }
  .visible.ak-fade,
  .visible.ak-rise,
  .visible.ak-left,
  .visible.ak-right,
  .visible.ak-scale {
    opacity: 1;
    transform: translate(0,0) scale(1);
  }
  .ak-stagger > * {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity .75s ease, transform .75s ease;
  }
  .ak-stagger.visible > * {
    opacity: 1;
    transform: translateY(0);
  }
  .ak-stagger.visible > *:nth-child(1){transition-delay:.04s}
  .ak-stagger.visible > *:nth-child(2){transition-delay:.10s}
  .ak-stagger.visible > *:nth-child(3){transition-delay:.16s}
  .ak-stagger.visible > *:nth-child(4){transition-delay:.22s}
  .ak-stagger.visible > *:nth-child(5){transition-delay:.28s}
  .ak-stagger.visible > *:nth-child(6){transition-delay:.34s}

  /* ===== HERO ===== */
  .ak-hero {
    min-height: 100vh;
    background: var(--navy);
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
    padding-top: 68px;
    position: relative;
    overflow: hidden;
  }

  .ak-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
      repeating-linear-gradient(
        90deg,
        rgba(184,149,90,0.04) 0px,
        rgba(184,149,90,0.04) 1px,
        transparent 1px,
        transparent 80px
      );
    pointer-events: none;
  }

  .ak-hero-content {
    padding: 90px 48px 90px 80px;
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .ak-hero-eyebrow {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 32px;
  }
  .ak-hero-eyebrow-line {
    width: 40px; height: 1px;
    background: var(--gold);
  }
  .ak-hero-eyebrow-text {
    font-size: 10px;
    letter-spacing: 0.3em;
    color: var(--gold);
    font-weight: 400;
  }

  .ak-hero-title {
    font-family: var(--font-serif);
    font-size: clamp(34px, 4.3vw, 62px);
    font-weight: 300;
    line-height: 1.42;
    color: var(--white);
    margin-bottom: 28px;
    letter-spacing: 0.05em;
  }
  .ak-hero-title .ak-title-line {
    display: block;
    white-space: nowrap;
  }
  .ak-hero-title em {
    font-style: italic;
    color: var(--gold-light);
  }

  .ak-hero-sub {
    font-size: 14px;
    line-height: 2.1;
    color: rgba(255,255,255,0.68);
    max-width: 510px;
    margin-bottom: 44px;
    font-weight: 300;
  }

  .ak-hero-actions {
    display: flex;
    align-items: center;
    gap: 32px;
    flex-wrap: wrap;
  }

  .ak-hero-image {
    min-height: calc(100vh - 68px);
    background: var(--navy-mid);
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: stretch;
    justify-content: center;
  }
  .ak-hero-image::before {
    content: '';
    position: absolute;
    inset: 40px;
    border: 1px solid rgba(184,149,90,0.25);
    z-index: 2;
    pointer-events: none;
  }
  .ak-hero-image::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
      linear-gradient(90deg, rgba(26,38,64,.15), rgba(26,38,64,.05)),
      linear-gradient(180deg, rgba(26,38,64,.05), rgba(26,38,64,.45));
    z-index: 1;
    pointer-events: none;
  }

  .ak-hero-replace {
    width: 100%;
    min-height: 100%;
    background:
      radial-gradient(circle at 30% 25%, rgba(212,176,122,.28), transparent 34%),
      radial-gradient(circle at 72% 62%, rgba(46,66,112,.9), transparent 44%),
      linear-gradient(135deg, #2e4270, #172238 72%);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 52px;
    position: relative;
  }
  .ak-hero-replace-card {
    position: relative;
    z-index: 3;
    width: min(390px, 78%);
    aspect-ratio: 4 / 5;
    border: 1px solid rgba(184,149,90,.55);
    background: rgba(17,24,32,.34);
    backdrop-filter: blur(8px);
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:14px;
    text-align:center;
    color:rgba(255,255,255,.74);
    padding:28px;
  }
  .ak-hero-replace-card strong {
    font-family: var(--font-serif);
    font-size: 28px;
    font-weight: 300;
    color: var(--gold-light);
    letter-spacing: .12em;
  }
  .ak-hero-replace-card span {
    font-size: 11px;
    letter-spacing: .18em;
    line-height: 1.8;
  }
  .ak-hero-replace-card small {
    color: rgba(255,255,255,.45);
    font-size: 10px;
    letter-spacing: .12em;
    line-height: 1.8;
  }

  .ak-hero-scroll {
    position: absolute;
    bottom: 40px;
    left: 80px;
    display: flex;
    align-items: center;
    gap: 12px;
    color: rgba(255,255,255,0.4);
    font-size: 10px;
    letter-spacing: 0.3em;
    z-index: 1;
  }
  .ak-hero-scroll-line {
    width: 48px; height: 1px;
    background: rgba(255,255,255,0.3);
    position: relative;
    overflow: hidden;
  }
  .ak-hero-scroll-line::after {
    content: '';
    position: absolute;
    top: 0; left: -100%;
    width: 100%; height: 100%;
    background: var(--gold);
    animation: akScrollLine 2s infinite ease-in-out;
  }
  @keyframes akScrollLine {
    0% { left: -100%; }
    100% { left: 100%; }
  }

  /* ===== REPRESENTATIVE ===== */
  .ak-representative {
    background: var(--white);
  }
  .ak-profile-layout {
    display: grid;
    grid-template-columns: 0.92fr 1.08fr;
    gap: 80px;
    align-items: center;
  }
  .ak-profile-image {
    height: 640px;
    background: var(--ivory-deep);
    position: relative;
    overflow:hidden;
    box-shadow: var(--shadow);
  }
  .ak-profile-image::before{
    content:'';
    position:absolute;
    inset:24px;
    border:1px solid rgba(184,149,90,.35);
    z-index:2;
    pointer-events:none;
  }
  .ak-profile-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center top;
    filter:saturate(.94) contrast(.98);
  }
  .ak-profile-name-overlay {
    position: absolute;
    bottom: 32px;
    left: 32px;
    right: 32px;
    background: rgba(26,38,64,0.92);
    padding: 20px 24px;
    z-index:3;
  }
  .ak-profile-name-overlay p {
    font-family: var(--font-serif);
    font-size: 24px;
    color: var(--white);
    font-weight: 300;
    letter-spacing: 0.08em;
    margin-bottom: 4px;
  }
  .ak-profile-name-overlay span {
    font-size: 10px;
    letter-spacing: 0.3em;
    color: var(--gold);
  }

  .ak-profile-text {
    font-size: 14px;
    color: var(--gray);
    line-height: 2.25;
    font-weight: 300;
    margin: 28px 0 34px;
  }
  .ak-profile-highlight {
    margin: 32px 0;
    padding: 26px 30px;
    border-left: 2px solid var(--gold);
    background: var(--ivory);
  }
  .ak-profile-highlight p {
    font-family: var(--font-serif);
    font-size: 21px;
    font-style: italic;
    color: var(--navy);
    line-height: 1.8;
    font-weight: 300;
  }

  .ak-achievement-strip {
    display:grid;
    grid-template-columns: repeat(3,1fr);
    border:1px solid var(--gray-light);
    margin: 34px 0 34px;
  }
  .ak-achievement-strip > div {
    padding: 22px 18px;
    border-right:1px solid var(--gray-light);
    background: var(--ivory);
  }
  .ak-achievement-strip > div:last-child{border-right:none}
  .ak-stat-number {
    display:block;
    font-size: 28px;
    line-height: 1;
    font-weight: 700;
    color: var(--navy);
    margin-bottom: 8px;
  }
  .ak-achievement-strip span:last-child {
    display:block;
    color: var(--gray);
    font-size:12px;
    line-height:1.7;
    letter-spacing:.05em;
  }

  .ak-credential-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-top:28px;
  }
  .ak-credential-card{
    border:1px solid var(--gray-light);
    background:#fff;
    padding:20px;
    position:relative;
    overflow:hidden;
  }
  .ak-credential-card::before{
    content:'';
    position:absolute;
    top:0; left:0;
    width:100%;
    height:4px;
    background:var(--gold);
  }
  .ak-credential-card.dark::before{background:var(--navy)}
  .ak-credential-kicker{
    display:block;
    margin-bottom:10px;
    color:var(--gold);
    font-size:10px;
    letter-spacing:.22em;
  }
  .ak-credential-card h3{
    font-family:var(--font-serif);
    color:var(--navy);
    font-size:20px;
    font-weight:400;
    line-height:1.5;
    margin-bottom:8px;
  }
  .ak-credential-card p{
    color:var(--gray);
    font-size:12.5px;
    line-height:1.9;
    font-weight:300;
  }

  /* ===== CAN DO ===== */
  .ak-can {
    background: var(--navy);
    color: var(--white);
    text-align: center;
    overflow: hidden;
  }
  .ak-can::before {
    content: 'AKIKO';
    position: absolute;
    top: 36%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: var(--font-serif);
    font-size: min(16vw, 190px);
    font-weight: 300;
    color: rgba(255,255,255,0.022);
    letter-spacing: 0.22em;
    white-space: nowrap;
    pointer-events: none;
    z-index:0;
  }
  .ak-can .ak-section-title { color: var(--white); }
  .ak-can .ak-section-lead {
    color: rgba(255,255,255,0.64);
    text-align: center;
  }

  .ak-can-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    max-width: 1040px;
    margin: 64px auto 0;
    position: relative;
    z-index: 1;
  }
  .ak-can-card {
    background: rgba(255,255,255,.035);
    border: 1px solid rgba(255,255,255,.11);
    padding: 48px 36px;
    text-align: center;
    transition: background 0.3s, transform .25s, border-color .25s;
    position: relative;
    overflow:hidden;
  }
  .ak-can-card::after{
    content:'';
    position:absolute;
    inset:auto -30px -70px auto;
    width:170px;
    height:170px;
    border-radius:50%;
    background:rgba(184,149,90,.08);
    transition:transform .3s ease;
  }
  .ak-can-card:hover {
    background: rgba(255,255,255,.065);
    border-color: rgba(184,149,90,.35);
    transform: translateY(-4px);
  }
  .ak-can-card:hover::after{ transform: scale(1.25); }
  .ak-can-num {
    display: inline-grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border: 1px solid rgba(184,149,90,.45);
    color: var(--gold-light);
    margin-bottom: 20px;
    font-size: 15px;
    font-weight: 700;
  }
  .ak-can-title {
    font-family: var(--font-serif);
    font-size: 23px;
    font-weight: 400;
    color: var(--white);
    margin-bottom: 16px;
    letter-spacing: 0.08em;
    position:relative;
    z-index:1;
  }
  .ak-can-body {
    font-size: 13px;
    color: rgba(255,255,255,0.58);
    line-height: 2;
    font-weight: 300;
    position:relative;
    z-index:1;
  }

  /* ===== REASONS UPDATED ===== */
  .ak-reasons {
    background:
      linear-gradient(180deg, var(--ivory) 0%, #fff 100%);
  }
  .ak-reason-intro {
    display:grid;
    grid-template-columns: .9fr 1.1fr;
    gap:70px;
    align-items:end;
    margin-bottom:70px;
  }
  .ak-reason-lead-card{
    background:var(--navy);
    color:var(--white);
    padding:40px;
    position:relative;
    overflow:hidden;
  }
  .ak-reason-lead-card::after{
    content:'WHY';
    position:absolute;
    right:-8px;
    bottom:-32px;
    color:rgba(255,255,255,.045);
    font-family:var(--font-serif);
    font-size:120px;
    line-height:1;
    letter-spacing:.08em;
  }
  .ak-reason-lead-card p{
    position:relative;
    z-index:1;
    color:rgba(255,255,255,.72);
    font-size:14px;
    line-height:2.1;
    font-weight:300;
  }

  .ak-feature-list{
    display:grid;
    gap:26px;
  }
  .ak-feature{
    display:grid;
    grid-template-columns: 170px 1fr;
    gap:34px;
    align-items:stretch;
    background:var(--white);
    border:1px solid var(--gray-light);
    box-shadow:0 10px 30px rgba(26,38,64,.055);
    transition:transform .25s ease, box-shadow .25s ease;
    position:relative;
    overflow:hidden;
  }
  .ak-feature:hover{
    transform:translateY(-4px);
    box-shadow:0 20px 48px rgba(26,38,64,.10);
  }
  .ak-feature-number{
    background:var(--navy);
    color:var(--gold-light);
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    min-height:180px;
    position:relative;
  }
  .ak-feature-number strong{
    font-size:42px;
    font-weight:700;
    line-height:1;
    margin-bottom:10px;
  }
  .ak-feature-number span{
    font-size:10px;
    letter-spacing:.26em;
    color:rgba(255,255,255,.48);
  }
  .ak-feature-body{
    padding:34px 36px 34px 0;
  }
  .ak-feature-kicker{
    display:inline-block;
    font-size:10px;
    letter-spacing:.22em;
    color:var(--gold);
    background:var(--gold-pale);
    padding:4px 12px;
    margin-bottom:14px;
  }
  .ak-feature-title{
    font-family:var(--font-serif);
    font-size:26px;
    color:var(--navy);
    font-weight:400;
    letter-spacing:.04em;
    line-height:1.5;
    margin-bottom:12px;
  }
  .ak-feature-desc{
    color:var(--gray);
    font-size:14px;
    line-height:2.05;
    font-weight:300;
  }

  /* ===== VOICES ===== */
  .ak-voices{
    background:var(--white);
  }
  .ak-voice-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-top:56px;
  }
  .ak-voice-card{
    border:1px solid var(--gray-light);
    background:var(--ivory);
    padding:34px;
    min-height:270px;
    transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
    position:relative;
    overflow:hidden;
  }
  .ak-voice-card::after{
    content:'';
    position:absolute;
    top:0; left:0;
    width:100%;
    height:4px;
    background:var(--gold);
    transform:scaleX(.2);
    transform-origin:left;
    transition:transform .25s;
  }
  .ak-voice-card:hover{
    transform:translateY(-4px);
    box-shadow:0 16px 40px rgba(26,38,64,.08);
    background:#fff;
  }
  .ak-voice-card:hover::after{transform:scaleX(1)}
  .ak-quote{
    font-family:var(--font-serif);
    color:var(--gold);
    font-size:48px;
    line-height:1;
    margin-bottom:10px;
  }
  .ak-voice-title{
    font-family:var(--font-serif);
    font-size:21px;
    font-weight:400;
    color:var(--navy);
    line-height:1.55;
    margin-bottom:14px;
  }
  .ak-voice-body{
    color:var(--gray);
    font-size:13px;
    line-height:2;
    font-weight:300;
  }
  .ak-note{
    margin-top:22px;
    text-align:center;
    font-size:12px;
    color:var(--gray);
    line-height:1.8;
  }

  /* ===== COURSE ===== */
  .ak-course{
    background:var(--ivory);
  }
  .ak-course-banner{
    display:flex;
    justify-content:center;
    margin-bottom:44px;
  }
  .ak-course-banner-frame{
    width:min(390px, 86vw);
    border:1px solid var(--gray-light);
    background:var(--white);
    box-shadow:var(--shadow);
    padding:10px;
  }
  .ak-course-banner-frame img{
    width:100%;
    height:auto;
  }
  .ak-course-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:24px;
    margin-top:56px;
  }
  .ak-course-card{
    background:var(--white);
    border:1px solid var(--gray-light);
    padding:38px;
    position:relative;
    transition:transform .25s ease, box-shadow .25s ease;
  }
  .ak-course-card:hover{
    transform:translateY(-3px);
    box-shadow:var(--shadow);
  }
  .ak-course-card h3{
    font-family:var(--font-serif);
    font-size:24px;
    color:var(--navy);
    font-weight:400;
    margin-bottom:18px;
    letter-spacing:.04em;
  }
  .ak-course-card ul{
    padding-left:18px;
  }
  .ak-course-card li,
  .ak-course-card p{
    color:var(--gray);
    font-size:14px;
    line-height:2.1;
    font-weight:300;
    margin-bottom:8px;
  }

  /* ===== PRICE ===== */
  .ak-price{
    background:var(--navy);
    color:var(--white);
  }
  .ak-price .ak-section-title{color:var(--white)}
  .ak-price .ak-section-lead{color:rgba(255,255,255,.62)}
  .ak-price-box{
    max-width:820px;
    margin:58px auto 0;
    border:1px solid var(--line-dark);
    background:rgba(255,255,255,.03);
  }
  .ak-price-head{
    text-align:center;
    padding:44px 32px;
    border-bottom:1px solid var(--line-dark);
  }
  .ak-price-label{
    display:inline-block;
    font-size:10px;
    letter-spacing:.28em;
    color:var(--gold);
    margin-bottom:16px;
  }
  .ak-price-amount{
    font-family:var(--font-sans);
    font-size:50px;
    font-weight:700;
    letter-spacing:.03em;
    color:var(--white);
  }
  .ak-price-amount small{
    font-size:14px;
    color:rgba(255,255,255,.6);
    letter-spacing:.10em;
    font-weight:500;
  }
  .ak-price-table{
    width:100%;
    border-collapse:collapse;
  }
  .ak-price-table tr{
    border-bottom:1px solid var(--line-dark);
  }
  .ak-price-table tr:last-child{border-bottom:none}
  .ak-price-table td{
    padding:22px 28px;
    vertical-align:top;
    line-height:1.9;
  }
  .ak-price-table td:first-child{
    width:170px;
    color:var(--gold);
    font-size:11px;
    letter-spacing:.15em;
  }
  .ak-price-table td:last-child{
    color:rgba(255,255,255,.72);
    font-size:14px;
    font-weight:300;
  }
  .ak-price-cta{
    padding:34px;
    text-align:center;
  }

  /* ===== FAQ ===== */
  .ak-faq{
    background:var(--white);
  }
  .ak-faq-list{
    max-width:900px;
    margin:56px auto 0;
    border-top:1px solid var(--gray-light);
  }
  .ak-faq-item{
    border-bottom:1px solid var(--gray-light);
    padding:22px 0;
  }
  .ak-faq-q{
    width:100%;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    background:none;
    border:none;
    color:var(--navy);
    font-family:var(--font-serif);
    font-size:21px;
    text-align:left;
    cursor:pointer;
    font-weight:400;
    letter-spacing:.03em;
  }
  .ak-faq-q span{
    color:var(--gold);
    font-family:var(--font-sans);
    font-size:20px;
    transition:transform .2s;
  }
  .ak-faq-item.open .ak-faq-q span{
    transform:rotate(45deg);
  }
  .ak-faq-a{
    max-height:0;
    overflow:hidden;
    transition:max-height .32s ease;
  }
  .ak-faq-a p{
    padding-top:16px;
    color:var(--gray);
    font-size:14px;
    line-height:2.1;
    font-weight:300;
  }

  /* ===== TABLE SECTIONS ===== */
  .ak-business,
  .ak-law{
    background:var(--ivory);
  }
  .ak-law{
    background:var(--navy);
    color:var(--white);
  }
  .ak-law .ak-section-title{color:var(--white)}
  .ak-law .ak-section-lead{color:rgba(255,255,255,.62)}
  .ak-table{
    width:100%;
    border-collapse:collapse;
    max-width:920px;
    margin-top:54px;
  }
  .ak-table tr{
    border-bottom:1px solid var(--gray-light);
  }
  .ak-table tr:first-child{
    border-top:1px solid var(--gray-light);
  }
  .ak-table td{
    padding:24px 0;
    vertical-align:top;
    line-height:1.9;
    font-weight:300;
  }
  .ak-table td:first-child{
    width:180px;
    font-size:11px;
    letter-spacing:.15em;
    color:var(--gold);
    font-weight:400;
  }
  .ak-table td:last-child{
    font-size:14px;
    color:var(--gray);
  }
  .ak-law .ak-table tr{
    border-bottom:1px solid rgba(255,255,255,.09);
  }
  .ak-law .ak-table tr:first-child{
    border-top:1px solid rgba(255,255,255,.09);
  }
  .ak-law .ak-table td:last-child{
    color:rgba(255,255,255,.72);
  }

  .ak-final-cta{
    margin-top:50px;
    padding:42px;
    background:var(--white);
    border:1px solid var(--gray-light);
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:28px;
  }
  .ak-final-cta h3{
    font-family:var(--font-serif);
    font-size:26px;
    font-weight:400;
    color:var(--navy);
    margin-bottom:8px;
  }
  .ak-final-cta p{
    color:var(--gray);
    font-size:14px;
    line-height:1.9;
    font-weight:300;
  }
  .ak-law .ak-final-cta{
    background:rgba(255,255,255,.04);
    border-color:rgba(255,255,255,.1);
  }
  .ak-law .ak-final-cta h3{color:var(--white)}
  .ak-law .ak-final-cta p{color:rgba(255,255,255,.62)}

  /* ===== FOOTER ===== */
  .ak-footer {
    background: #111820;
    padding: 56px 80px;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .ak-footer-logo {
    font-family: var(--font-serif);
    font-size: 18px;
    font-weight: 300;
    color: var(--white);
    letter-spacing: 0.18em;
    margin-bottom: 8px;
  }
  .ak-footer-copy {
    font-size: 10px;
    color: rgba(255,255,255,0.3);
    letter-spacing: 0.1em;
  }
  .ak-footer-links {
    display: flex;
    gap: 32px;
    list-style: none;
  }
  .ak-footer-links a {
    font-size: 11px;
    color: rgba(255,255,255,0.45);
    letter-spacing: 0.1em;
    transition: color 0.2s;
  }
  .ak-footer-links a:hover { color: var(--gold); }


  /* ===== STRONG NUMERIC READABILITY OVERRIDE ===== */
  .akiko-lp .ak-num,
  .akiko-lp .ak-stat-number,
  .akiko-lp .ak-feature-number,
  .akiko-lp .ak-feature-number strong,
  .akiko-lp .ak-feature-title,
  .akiko-lp .ak-price-amount,
  .akiko-lp .ak-achievement-strip,
  .akiko-lp .ak-flow-step-num {
    font-family: var(--font-sans) !important;
    font-variant-numeric: tabular-nums;
    letter-spacing: .02em;
  }

  .akiko-lp .ak-feature-title {
    font-weight: 500;
    font-size: 24px;
    letter-spacing: .03em;
  }

  .akiko-lp .ak-feature-title .ak-feature-title-main {
    font-family: var(--font-serif);
    display: block;
    font-size: 25px;
    font-weight: 400;
    line-height: 1.55;
    letter-spacing: .04em;
    margin-top: 2px;
  }

  .akiko-lp .ak-feature-title .ak-feature-title-num {
    font-family: var(--font-sans) !important;
    font-weight: 700;
    letter-spacing: .01em;
  }

  /* ===== FLOW SECTION ===== */
  .ak-flow {
    background: linear-gradient(180deg, var(--white) 0%, var(--ivory) 100%);
  }
  .ak-flow-wrap {
    margin-top: 58px;
    position: relative;
  }
  .ak-flow-line {
    position: absolute;
    top: 72px;
    left: 7%;
    right: 7%;
    height: 1px;
    background: var(--gray-light);
  }
  .ak-flow-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
    position: relative;
    z-index: 1;
  }
  .ak-flow-card {
    background: var(--white);
    border: 1px solid var(--gray-light);
    padding: 32px 26px;
    box-shadow: 0 12px 34px rgba(26,38,64,.06);
    transition: transform .25s ease, box-shadow .25s ease;
    min-height: 290px;
  }
  .ak-flow-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 48px rgba(26,38,64,.10);
  }
  .ak-flow-step-num {
    width: 54px;
    height: 54px;
    background: var(--navy);
    color: var(--gold-light);
    display: grid;
    place-items: center;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 22px;
    border: 1px solid rgba(184,149,90,.45);
  }
  .ak-flow-card h3 {
    font-family: var(--font-serif);
    font-size: 22px;
    font-weight: 400;
    color: var(--navy);
    line-height: 1.5;
    margin-bottom: 14px;
    letter-spacing: .04em;
  }
  .ak-flow-card p {
    color: var(--gray);
    font-size: 13.5px;
    line-height: 2;
    font-weight: 300;
  }

  /* ===== CONTENT RICH BLOCKS ===== */
  .ak-course-message {
    max-width: 920px;
    margin: 54px auto 0;
    background: var(--white);
    border: 1px solid var(--gray-light);
    padding: 40px;
    box-shadow: 0 14px 40px rgba(26,38,64,.06);
  }
  .ak-course-message h3 {
    font-family: var(--font-serif);
    color: var(--navy);
    font-size: 28px;
    font-weight: 400;
    line-height: 1.55;
    margin-bottom: 18px;
    letter-spacing: .04em;
  }
  .ak-course-message p {
    color: var(--gray);
    font-size: 14px;
    line-height: 2.15;
    font-weight: 300;
  }
  .ak-course-targets {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 14px;
    margin-top: 26px;
  }
  .ak-target-chip {
    background: var(--ivory);
    border: 1px solid var(--gray-light);
    padding: 15px 16px;
    color: var(--navy);
    font-size: 13px;
    line-height: 1.65;
    font-weight: 500;
  }

  .ak-reason-proof {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 1px;
    background: var(--gray-light);
    margin-bottom: 46px;
  }
  .ak-reason-proof-item {
    background: var(--white);
    padding: 28px 24px;
  }
  .ak-reason-proof-item strong {
    display: block;
    font-family: var(--font-sans) !important;
    color: var(--navy);
    font-size: 30px;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 8px;
    letter-spacing: .01em;
  }
  .ak-reason-proof-item span {
    color: var(--gold);
    font-size: 10px;
    letter-spacing: .2em;
  }
  .ak-reason-proof-item p {
    color: var(--gray);
    font-size: 13px;
    line-height: 1.9;
    margin-top: 10px;
    font-weight: 300;
  }

  @media (max-width: 900px) {
    .ak-flow-line { display: none; }
    .ak-flow-grid,
    .ak-course-targets,
    .ak-reason-proof {
      grid-template-columns: 1fr;
    }
    .ak-flow-card {
      min-height: auto;
    }
    .ak-course-message {
      padding: 30px 24px;
    }
    .akiko-lp .ak-feature-title,
    .akiko-lp .ak-feature-title .ak-feature-title-main {
      font-size: 22px;
    }
  }


  /* ===== RESPONSIVE SEMINAR BANNER WITH REAL HTML CTA ===== */
  .ak-course-banner {
    margin-bottom: 50px;
  }
  .ak-course-banner-frame {
    position: relative;
    width: min(1120px, 100%);
    border: 1px solid var(--gray-light);
    background: var(--white);
    box-shadow: var(--shadow);
    padding: 0;
    overflow: hidden;
  }
  .ak-course-banner-frame picture,
  .ak-course-banner-frame img {
    display: block;
    width: 100%;
    height: auto;
  }
  .ak-banner-real-cta {
    position: absolute;
    left: 6.3%;
    bottom: 6.4%;
    z-index: 3;
    box-shadow: 0 14px 30px rgba(184,149,90,.22);
  }
  @media (max-width: 900px) {
    .ak-course-banner-frame {
      width: min(520px, 100%);
    }
    .ak-banner-real-cta {
      position: static;
      display: block;
      width: calc(100% - 48px);
      margin: 18px auto 24px;
      text-align: center;
      box-shadow: none;
    }
  }


  /* ===== V4 FIXES ===== */
  .ak-hero-stars {
    background: var(--navy);
    align-items: stretch;
  }
  .ak-hero-stars img {
    width: 100%;
    height: 100%;
    min-height: calc(100vh - 68px);
    object-fit: cover;
    object-position: center;
    transform: scale(1.01);
  }
  .ak-hero-stars::after {
    content:'';
    position:absolute;
    inset:0;
    background:
      linear-gradient(90deg, rgba(26,38,64,.10) 0%, rgba(26,38,64,.08) 44%, rgba(26,38,64,.20) 100%),
      linear-gradient(180deg, rgba(26,38,64,.06) 0%, rgba(26,38,64,.18) 100%);
    z-index:1;
    pointer-events:none;
  }

  .ak-course-banner-frame {
    overflow: visible;
  }
  .ak-banner-real-cta {
    position: static !important;
    display: inline-block;
    margin: 24px 0 0;
    box-shadow: 0 14px 30px rgba(184,149,90,.22);
  }
  .ak-course-banner-cta-wrap {
    text-align: center;
  }

  .akiko-lp .ak-feature-title,
  .akiko-lp .ak-feature-title *,
  .akiko-lp .ak-feature-title-main,
  .akiko-lp .ak-feature-title-num,
  .akiko-lp .ak-price-amount,
  .akiko-lp .ak-course-message h3,
  .akiko-lp .ak-course-message h3 *,
  .akiko-lp .ak-flow-step-num {
    font-family: var(--font-sans) !important;
    font-variant-numeric: tabular-nums;
  }
  .akiko-lp .ak-feature-title,
  .akiko-lp .ak-feature-title-main,
  .akiko-lp .ak-feature-title-num {
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 1.65 !important;
    letter-spacing: .02em !important;
  }
  .akiko-lp .ak-course-message h3 {
    font-weight: 700;
    letter-spacing: .02em;
  }

  .ak-flow-icon {
    width: 72px;
    height: 72px;
    margin-bottom: 18px;
  }
  .ak-flow-card .ak-flow-step-num {
    display: none;
  }

  @media (max-width: 900px) {
    .ak-hero-stars img {
      min-height: 390px;
    }
    .ak-course-banner-cta-wrap .ak-btn-primary {
      width: calc(100% - 48px);
      max-width: 370px;
      text-align: center;
    }
    .ak-flow-icon {
      width: 68px;
      height: 68px;
    }
  }


  /* ===== V5 REFINEMENTS ===== */
  .ak-hero::after {
    content: '';
    position: absolute;
    top: 68px;
    bottom: 0;
    left: 42%;
    width: auto;
    z-index: 2;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(26,38,64,1) 0%, rgba(26,38,64,.86) 28%, rgba(26,38,64,.42) 68%, rgba(26,38,64,0) 100%);
  }
  .ak-hero-content { z-index: 3; }
  .ak-hero-stars img { filter: saturate(.96) contrast(1.02) brightness(.92); }

  .akiko-lp .ak-feature-title,
  .akiko-lp .ak-feature-title *,
  .akiko-lp .ak-feature-title-main,
  .akiko-lp .ak-feature-title-num {
    font-family: var(--font-sans) !important;
    font-feature-settings: "palt" 1;
    font-variant-numeric: tabular-nums;
    font-weight: 700 !important;
    letter-spacing: .01em !important;
    font-size: 24px !important;
    line-height: 1.65 !important;
  }
  .akiko-lp .ak-feature-title .ak-feature-title-main { display: inline !important; }
  .akiko-lp .ak-course-message h3,
  .akiko-lp .ak-course-message h3 * {
    font-family: var(--font-sans) !important;
    font-weight: 700;
    letter-spacing: .02em;
  }

  .ak-course {
    background:
      radial-gradient(700px 380px at 10% 12%, rgba(184,149,90,.14), transparent 70%),
      radial-gradient(800px 440px at 90% 48%, rgba(26,38,64,.08), transparent 58%),
      linear-gradient(180deg, #faf8f3 0%, #ffffff 48%, #f2ede2 100%);
  }
  .ak-course::before {
    content: 'COURSE';
    position: absolute;
    top: 36%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: var(--font-serif);
    font-size: min(17vw, 210px);
    color: rgba(26,38,64,.035);
    letter-spacing: .18em;
    white-space: nowrap;
    pointer-events: none;
  }
  .ak-course-message {
    position: relative;
    border: 0;
    background: var(--navy);
    color: var(--white);
    box-shadow: var(--shadow-strong);
    overflow: hidden;
  }
  .ak-course-message::after {
    content: '';
    position: absolute;
    right: -90px;
    top: -90px;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    border: 1px solid rgba(184,149,90,.35);
  }
  .ak-course-message h3 { color: var(--white); position: relative; z-index: 1; }
  .ak-course-message p { color: rgba(255,255,255,.72); position: relative; z-index: 1; }
  .ak-course-targets { position: relative; z-index: 1; }
  .ak-target-chip { background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.86); }
  .ak-course-grid { margin-top: 34px; }
  .ak-course-card { border: 0; box-shadow: 0 16px 42px rgba(26,38,64,.08); overflow: hidden; }
  .ak-course-card::before { content:''; position:absolute; top:0; left:0; width:100%; height:6px; background: var(--gold); }
  .ak-course-card:nth-child(even)::before { background: var(--navy); }
  .ak-course-card h3::before { content: ''; display: inline-block; width: 22px; height: 1px; background: var(--gold); vertical-align: middle; margin-right: 12px; }

  .ak-flow-icon { width: 94px; height: 94px; object-fit: contain; }
  .ak-flow-card .ak-flow-step-num { display: none; }
  @media (max-width: 900px) {
    .ak-hero::after { display: none; }
    .ak-course::before { top: 20%; font-size: 24vw; }
    .ak-flow-icon { width: 88px; height: 88px; }
  }


  /* ===== V6 NUMBER FONT + SHOOTING STARS ===== */
  .akiko-lp .ak-latin-num {
    font-family: Arial, Helvetica, "Helvetica Neue", sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: -0.02em !important;
    font-variant-numeric: lining-nums tabular-nums !important;
    font-feature-settings: "tnum" 1, "lnum" 1 !important;
  }

  .akiko-lp .ak-feature-title .ak-latin-num,
  .akiko-lp .ak-feature-title-main .ak-latin-num {
    font-family: Arial, Helvetica, "Helvetica Neue", sans-serif !important;
    font-size: 1.02em !important;
    line-height: 1 !important;
    vertical-align: baseline;
  }

  .ak-hero-stars {
    position: relative;
    overflow: hidden;
  }

  .ak-shooting-star {
    position: absolute;
    z-index: 4;
    top: 18%;
    left: 82%;
    width: 170px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg,
      rgba(255,255,255,0) 0%,
      rgba(255,255,255,.14) 22%,
      rgba(255,255,255,.75) 64%,
      rgba(255,255,255,1) 100%
    );
    filter:
      drop-shadow(0 0 5px rgba(255,255,255,.85))
      drop-shadow(0 0 14px rgba(135,185,255,.55));
    transform: rotate(-28deg) translate3d(0,0,0);
    opacity: 0;
    pointer-events: none;
  }
  .ak-shooting-star::after {
    content: '';
    position: absolute;
    right: -2px;
    top: 50%;
    width: 7px;
    height: 7px;
    transform: translateY(-50%);
    border-radius: 50%;
    background: #fff;
    box-shadow:
      0 0 8px rgba(255,255,255,.95),
      0 0 18px rgba(170,205,255,.7);
  }

  .ak-shooting-star-1 {
    top: 20%;
    left: 74%;
    width: 210px;
    animation: akMeteorOne 6.8s ease-in-out infinite;
    animation-delay: 1.1s;
  }
  .ak-shooting-star-2 {
    top: 42%;
    left: 82%;
    width: 145px;
    transform: rotate(-31deg) translate3d(0,0,0);
    animation: akMeteorTwo 9.5s ease-in-out infinite;
    animation-delay: 4.4s;
  }
  .ak-shooting-star-3 {
    top: 12%;
    left: 96%;
    width: 120px;
    transform: rotate(-24deg) translate3d(0,0,0);
    animation: akMeteorThree 12s ease-in-out infinite;
    animation-delay: 8.2s;
  }

  @keyframes akMeteorOne {
    0%, 63% {
      opacity: 0;
      transform: rotate(-28deg) translate3d(0,0,0) scaleX(.8);
    }
    66% {
      opacity: 1;
    }
    72% {
      opacity: .96;
      transform: rotate(-28deg) translate3d(-430px, 245px, 0) scaleX(1.05);
    }
    76%, 100% {
      opacity: 0;
      transform: rotate(-28deg) translate3d(-570px, 325px, 0) scaleX(.9);
    }
  }
  @keyframes akMeteorTwo {
    0%, 70% {
      opacity: 0;
      transform: rotate(-31deg) translate3d(0,0,0) scaleX(.75);
    }
    73% { opacity: .9; }
    78% {
      opacity: .9;
      transform: rotate(-31deg) translate3d(-320px, 192px, 0) scaleX(1);
    }
    82%, 100% {
      opacity: 0;
      transform: rotate(-31deg) translate3d(-420px, 252px, 0) scaleX(.85);
    }
  }
  @keyframes akMeteorThree {
    0%, 78% {
      opacity: 0;
      transform: rotate(-24deg) translate3d(0,0,0) scaleX(.7);
    }
    81% { opacity: .85; }
    85% {
      opacity: .8;
      transform: rotate(-24deg) translate3d(-250px, 112px, 0) scaleX(1);
    }
    89%, 100% {
      opacity: 0;
      transform: rotate(-24deg) translate3d(-340px, 150px, 0) scaleX(.85);
    }
  }

  @media (max-width: 900px) {
    .ak-shooting-star-1 {
      top: 17%;
      left: 88%;
      width: 150px;
    }
    .ak-shooting-star-2 {
      top: 44%;
      left: 95%;
      width: 100px;
    }
    .ak-shooting-star-3 {
      display: none;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ak-shooting-star {
      display: none !important;
      animation: none !important;
    }
  }


  /* ===== V7 REAL METEOR VIDEO ===== */
  .ak-hero-stars {
    position: relative;
    overflow: hidden;
    isolation: isolate;
  }

  .ak-hero-stars > img {
    position: absolute;
    inset: 0;
    z-index: 0;
  }

  .ak-meteor-video {
    position: absolute;
    inset: 0;
    z-index: 3;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    mix-blend-mode: screen;
    opacity: .82;
    pointer-events: none;
    filter:
      brightness(1.08)
      contrast(1.04)
      drop-shadow(0 0 10px rgba(255,255,255,.35));
  }

  .ak-hero-stars::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 4;
    background:
      linear-gradient(90deg,
        rgba(26,38,64,.22) 0%,
        rgba(26,38,64,.08) 36%,
        rgba(26,38,64,.00) 72%),
      linear-gradient(180deg,
        rgba(26,38,64,.02) 0%,
        rgba(26,38,64,.20) 100%);
    pointer-events: none;
  }

  .ak-shooting-star {
    display: none !important;
  }

  @media (max-width: 900px) {
    .ak-meteor-video {
      opacity: .72;
      object-position: center;
    }
  }


  /* ===== V8 SMARTPHONE OPTIMIZATION ===== */
  @media (max-width: 900px) {
    html, body {
      width: 100%;
      overflow-x: hidden;
    }

    .akiko-lp {
      overflow-x: hidden;
    }

    .ak-nav {
      height: 62px;
      padding: 0 18px;
    }

    .ak-nav-logo {
      font-size: 18px;
      letter-spacing: .12em;
    }

    .ak-mobile-menu {
      top: 62px;
    }

    /* Smartphone FV: star image + meteor video becomes full background */
    .ak-hero {
      display: block;
      min-height: 100svh;
      padding-top: 62px;
      background: var(--navy);
      position: relative;
      overflow: hidden;
    }

    .ak-hero::after {
      display: none;
    }

    .ak-hero-image.ak-hero-stars {
      position: absolute;
      inset: 62px 0 0 0;
      min-height: auto;
      height: calc(100svh - 62px);
      order: initial;
    }

    .ak-hero-stars > img {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      min-height: 0;
      object-fit: cover;
      object-position: center;
      transform: scale(1.04);
      filter: saturate(.95) contrast(1.04) brightness(.78);
    }

    .ak-meteor-video {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      opacity: .68;
      mix-blend-mode: screen;
    }

    .ak-hero-image::before {
      inset: 22px;
      border-color: rgba(184,149,90,.18);
      z-index: 5;
    }

    .ak-hero-stars::before {
      content: '';
      position: absolute;
      inset: 0;
      z-index: 4;
      background:
        linear-gradient(180deg,
          rgba(26,38,64,.48) 0%,
          rgba(26,38,64,.34) 24%,
          rgba(26,38,64,.66) 72%,
          rgba(26,38,64,.92) 100%),
        linear-gradient(90deg,
          rgba(26,38,64,.82) 0%,
          rgba(26,38,64,.35) 52%,
          rgba(26,38,64,.16) 100%);
      pointer-events: none;
    }

    .ak-hero-content {
      position: relative;
      z-index: 6;
      min-height: calc(100svh - 62px);
      padding: 64px 24px 48px;
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
      order: initial;
    }

    .ak-hero-eyebrow {
      margin-bottom: 24px;
    }

    .ak-hero-title {
      font-size: clamp(34px, 10.4vw, 44px);
      line-height: 1.46;
      letter-spacing: .045em;
      margin-bottom: 20px;
      text-shadow: 0 14px 32px rgba(0,0,0,.35);
    }

    .ak-hero-title .ak-title-line {
      white-space: nowrap;
    }

    .ak-hero-sub {
      font-size: 13.5px;
      line-height: 2.05;
      color: rgba(255,255,255,.78);
      margin-bottom: 28px;
      text-shadow: 0 10px 28px rgba(0,0,0,.35);
    }

    .ak-hero-actions {
      display: grid;
      gap: 12px;
    }

    .ak-hero-actions .ak-btn-primary,
    .ak-hero-actions .ak-btn-ghost {
      width: 100%;
      justify-content: center;
      text-align: center;
    }

    .ak-section {
      padding: 72px 22px;
    }

    .ak-section-title {
      font-size: 31px;
      line-height: 1.55;
    }

    .ak-section-lead {
      font-size: 13.5px;
      line-height: 2;
    }

    .ak-profile-image {
      height: 440px;
    }

    .ak-profile-name-overlay {
      left: 20px;
      right: 20px;
      bottom: 20px;
      padding: 16px 18px;
    }

    .ak-profile-name-overlay p {
      font-size: 21px;
    }

    .ak-achievement-strip {
      margin: 28px 0;
    }

    .ak-credential-grid {
      gap: 12px;
    }

    .ak-can-card {
      padding: 36px 26px;
    }

    .ak-reason-lead-card {
      padding: 30px 24px;
    }

    .ak-reason-proof-item {
      padding: 24px 22px;
    }

    .ak-feature {
      border-width: 1px;
    }

    .ak-feature-number {
      padding: 22px 24px;
    }

    .ak-feature-number strong {
      font-size: 36px;
    }

    .ak-feature-body {
      padding: 26px 24px 30px;
    }

    .akiko-lp .ak-feature-title,
    .akiko-lp .ak-feature-title *,
    .akiko-lp .ak-feature-title-main,
    .akiko-lp .ak-feature-title-num {
      font-size: 21px !important;
      line-height: 1.7 !important;
    }

    .ak-voice-card {
      padding: 28px 24px;
      min-height: auto;
    }

    .ak-course-banner {
      margin-bottom: 38px;
    }

    .ak-course-banner-frame {
      width: min(470px, 100%);
    }

    .ak-course-banner-cta-wrap .ak-btn-primary {
      width: 100%;
      max-width: 370px;
    }

    .ak-course-message {
      margin-top: 38px;
      padding: 30px 22px;
    }

    .ak-course-message h3 {
      font-size: 23px;
      line-height: 1.65;
    }

    .ak-course-targets {
      gap: 10px;
    }

    .ak-target-chip {
      padding: 13px 14px;
      font-size: 12.5px;
    }

    .ak-course-card {
      padding: 30px 24px;
    }

    .ak-price-box {
      margin-top: 38px;
    }

    .ak-price-head {
      padding: 34px 20px;
    }

    .ak-price-amount {
      font-size: 34px;
    }

    .ak-flow-wrap {
      margin-top: 38px;
    }

    .ak-flow-grid {
      gap: 16px;
    }

    .ak-flow-card {
      padding: 28px 24px;
      min-height: auto;
    }

    .ak-flow-icon {
      width: 92px;
      height: 92px;
      margin-bottom: 18px;
    }

    .ak-flow-card h3 {
      font-size: 21px;
    }

    .ak-faq-list {
      margin-top: 36px;
    }

    .ak-faq-q {
      font-size: 18px;
      line-height: 1.65;
    }

    .ak-final-cta {
      padding: 30px 22px;
    }

    .ak-final-cta .ak-btn-primary {
      width: 100%;
      text-align: center;
    }
  }

  @media (max-width: 390px) {
    .ak-hero-title {
      font-size: 32px;
    }

    .ak-nav-logo {
      font-size: 16px;
    }

    .ak-section {
      padding-left: 18px;
      padding-right: 18px;
    }

    .ak-section-title {
      font-size: 29px;
    }

    .ak-price-amount {
      font-size: 31px;
    }
  }

  /* ===== MOBILE ===== */
  @media (max-width: 1070px) {
    .ak-nav-links { gap: 16px; }
    .ak-nav-links a { font-size: 10px; }
  }
  @media (max-width: 900px) {
    .ak-section { padding: 76px 24px; }
    .ak-section-inner { max-width: 100%; }

    .ak-nav { padding: 0 24px; }
    .ak-nav-links, .ak-nav-cta { display: none; }
    .ak-hamburger { display: flex; }

    .ak-hero {
      grid-template-columns: 1fr;
      min-height: auto;
    }
    .ak-hero-content {
      padding: 56px 24px 54px;
      order: 2;
    }
    .ak-hero-image {
      min-height: 390px;
      order: 1;
    }
    .ak-hero-replace {
      padding: 40px 24px;
    }
    .ak-hero-replace-card {
      width: min(320px, 78%);
    }
    .ak-hero-scroll { display:none; }
    .ak-hero-title {
      font-size: clamp(32px, 10vw, 42px);
      line-height: 1.48;
    }
    .ak-hero-title .ak-title-line {
      white-space: nowrap;
    }
    .ak-hero-sub { font-size:13px; }
    .ak-hero-actions { gap: 18px; }

    .ak-profile-layout,
    .ak-reason-intro {
      grid-template-columns: 1fr;
      gap: 40px;
    }
    .ak-profile-image {
      height: 470px;
    }
    .ak-achievement-strip {
      grid-template-columns: 1fr;
    }
    .ak-achievement-strip > div{
      border-right:none;
      border-bottom:1px solid var(--gray-light);
    }
    .ak-achievement-strip > div:last-child{border-bottom:none}
    .ak-credential-grid,
    .ak-can-grid,
    .ak-voice-grid,
    .ak-course-grid {
      grid-template-columns: 1fr;
    }
    .ak-can::before {
      top: 26%;
      font-size: 26vw;
      opacity:.65;
    }
    .ak-feature{
      grid-template-columns:1fr;
      gap:0;
    }
    .ak-feature-number{
      min-height:auto;
      padding:28px;
      align-items:flex-start;
    }
    .ak-feature-body{
      padding:28px;
    }
    .ak-feature-title{font-size:23px}
    .ak-price-amount { font-size:36px; }
    .ak-price-table td {
      display:block;
      width:100%!important;
      padding:14px 22px;
    }
    .ak-price-table td:first-child {
      padding-bottom:0;
    }
    .ak-table td {
      display:block;
      width:100%!important;
      padding:12px 0;
    }
    .ak-table td:first-child {
      padding-top:22px;
      padding-bottom:0;
    }
    .ak-final-cta {
      flex-direction: column;
      align-items: flex-start;
      padding: 30px 24px;
    }
    .ak-footer {
      flex-direction: column;
      align-items: flex-start;
      gap: 30px;
      padding: 48px 24px;
    }
    .ak-footer-links {
      flex-direction: column;
      gap: 14px;
    }
  }
  @media (max-width: 420px) {
    .ak-hero-title {
      font-size: 30px;
      letter-spacing: .03em;
    }
    .ak-btn-primary, .ak-btn-navy {
      width: 100%;
      text-align: center;
      padding-left: 20px;
      padding-right: 20px;
    }
    .ak-btn-ghost {
      width: 100%;
      justify-content: center;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .ak-fade,.ak-rise,.ak-left,.ak-right,.ak-scale,.ak-stagger > * {
      opacity:1!important;
      transform:none!important;
      transition:none!important;
    }
  }

  /* ===== V9 MOBILE FIRSTVIEW FULL STAR BACKGROUND ===== */
  @media (max-width: 900px) {
    .ak-hero {
      display: block !important;
      position: relative !important;
      min-height: 100svh !important;
      height: auto !important;
      padding-top: 62px !important;
      background: #1a2640 !important;
      overflow: hidden !important;
    }

    .ak-hero-image.ak-hero-stars {
      position: absolute !important;
      inset: 0 !important;
      width: 100% !important;
      height: 100% !important;
      min-height: 100svh !important;
      z-index: 0 !important;
      overflow: hidden !important;
      background: #1a2640 !important;
    }

    .ak-hero-stars > img {
      position: absolute !important;
      inset: 0 !important;
      width: 100% !important;
      height: 100% !important;
      min-height: 100svh !important;
      object-fit: cover !important;
      object-position: center !important;
      transform: scale(1.08) !important;
      filter: saturate(.96) contrast(1.06) brightness(.75) !important;
      z-index: 0 !important;
    }

    .ak-meteor-video {
      position: absolute !important;
      inset: 0 !important;
      width: 100% !important;
      height: 100% !important;
      min-height: 100svh !important;
      object-fit: cover !important;
      object-position: center !important;
      z-index: 2 !important;
      opacity: .78 !important;
      mix-blend-mode: screen !important;
      pointer-events: none !important;
    }

    .ak-hero-image::before {
      content: '' !important;
      position: absolute !important;
      inset: 18px !important;
      border: 1px solid rgba(184,149,90,.22) !important;
      z-index: 4 !important;
      pointer-events: none !important;
    }

    .ak-hero-stars::before {
      content: '' !important;
      position: absolute !important;
      inset: 0 !important;
      z-index: 3 !important;
      background:
        linear-gradient(180deg,
          rgba(26,38,64,.18) 0%,
          rgba(26,38,64,.28) 20%,
          rgba(26,38,64,.50) 58%,
          rgba(26,38,64,.92) 100%),
        linear-gradient(90deg,
          rgba(26,38,64,.68) 0%,
          rgba(26,38,64,.30) 52%,
          rgba(26,38,64,.18) 100%) !important;
      pointer-events: none !important;
    }

    .ak-hero-content {
      position: relative !important;
      z-index: 5 !important;
      min-height: calc(100svh - 62px) !important;
      padding: 0 24px 48px !important;
      display: flex !important;
      flex-direction: column !important;
      justify-content: flex-end !important;
      background: transparent !important;
    }

    .ak-hero-eyebrow {
      margin-bottom: 22px !important;
    }

    .ak-hero-title {
      font-size: clamp(34px, 10.4vw, 44px) !important;
      line-height: 1.46 !important;
      letter-spacing: .045em !important;
      margin-bottom: 20px !important;
      color: #ffffff !important;
      text-shadow: 0 14px 34px rgba(0,0,0,.46) !important;
    }

    .ak-hero-title em {
      color: #d4b07a !important;
    }

    .ak-hero-sub {
      max-width: 100% !important;
      margin-bottom: 28px !important;
      color: rgba(255,255,255,.82) !important;
      font-size: 13.5px !important;
      line-height: 2.05 !important;
      text-shadow: 0 10px 26px rgba(0,0,0,.42) !important;
    }

    .ak-hero-actions {
      display: grid !important;
      grid-template-columns: 1fr !important;
      gap: 12px !important;
      width: 100% !important;
    }

    .ak-hero-actions .ak-btn-primary,
    .ak-hero-actions .ak-btn-ghost {
      width: 100% !important;
      justify-content: center !important;
      text-align: center !important;
    }

    .ak-hero-actions .ak-btn-ghost {
      padding: 14px 20px !important;
      border: 1px solid rgba(255,255,255,.26) !important;
      background: rgba(255,255,255,.08) !important;
      backdrop-filter: blur(8px) !important;
      color: rgba(255,255,255,.86) !important;
    }

    .ak-hero-scroll {
      display: none !important;
    }
  }

  @media (max-width: 390px) {
    .ak-hero-content {
      padding-left: 20px !important;
      padding-right: 20px !important;
      padding-bottom: 42px !important;
    }

    .ak-hero-title {
      font-size: 32px !important;
    }
  }


  /* ===== V10 MOBILE REFINEMENT ===== */

  /* Absolute readable numeric font: do not use serif for numbers */
  .akiko-lp .ak-num,
  .akiko-lp .ak-latin-num,
  .akiko-lp .ak-stat-number,
  .akiko-lp .ak-feature-number strong,
  .akiko-lp .ak-feature-title .ak-latin-num,
  .akiko-lp .ak-reason-proof-item strong,
  .akiko-lp .ak-price-amount,
  .akiko-lp .ak-price-amount *,
  .akiko-lp .ak-flow-step-num,
  .akiko-lp .ak-achievement-strip span:first-child {
    font-family: Arial, Helvetica, "Noto Sans JP", sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em !important;
    font-variant-numeric: lining-nums tabular-nums !important;
    font-feature-settings: "tnum" 1, "lnum" 1 !important;
  }

  @media (max-width: 900px) {
    /* Seminar banner: use compact mobile banner and keep CTA below */
    .ak-course-banner {
      margin-bottom: 34px !important;
    }

    .ak-course-banner-frame {
      width: min(430px, 100%) !important;
      border: 1px solid var(--gray-light) !important;
      box-shadow: 0 12px 34px rgba(26,38,64,.08) !important;
      overflow: hidden !important;
      background: #fff !important;
    }

    .ak-course-banner-frame picture,
    .ak-course-banner-frame img {
      width: 100% !important;
      height: auto !important;
      display: block !important;
    }

    .ak-course-banner-cta-wrap {
      margin-top: 14px !important;
    }

    .ak-course-banner-cta-wrap .ak-btn-primary {
      width: min(100%, 330px) !important;
      padding: 14px 20px !important;
      font-size: 12px !important;
    }

    /* Make long card sections compact on smartphone */
    .ak-reason-intro {
      gap: 28px !important;
      margin-bottom: 34px !important;
    }

    .ak-reason-lead-card {
      padding: 24px 20px !important;
    }

    .ak-reason-lead-card p {
      font-size: 12.5px !important;
      line-height: 1.9 !important;
    }

    .ak-reason-proof {
      margin-bottom: 30px !important;
    }

    .ak-reason-proof-item {
      padding: 18px 18px !important;
    }

    .ak-reason-proof-item strong {
      font-size: 24px !important;
    }

    .ak-reason-proof-item p {
      font-size: 12px !important;
      line-height: 1.75 !important;
    }

    .ak-feature-list {
      gap: 14px !important;
    }

    .ak-feature {
      display: grid !important;
      grid-template-columns: 70px 1fr !important;
      min-height: auto !important;
    }

    .ak-feature-number {
      min-height: auto !important;
      padding: 16px 8px !important;
      align-items: center !important;
      justify-content: center !important;
      text-align: center !important;
    }

    .ak-feature-number strong {
      font-size: 24px !important;
      margin-bottom: 4px !important;
    }

    .ak-feature-number span {
      font-size: 8px !important;
      letter-spacing: .12em !important;
    }

    .ak-feature-body {
      padding: 18px 18px 18px !important;
    }

    .ak-feature-kicker {
      font-size: 9px !important;
      letter-spacing: .14em !important;
      margin-bottom: 8px !important;
      padding: 3px 9px !important;
    }

    .akiko-lp .ak-feature-title,
    .akiko-lp .ak-feature-title *,
    .akiko-lp .ak-feature-title-main,
    .akiko-lp .ak-feature-title-num {
      font-size: 16.5px !important;
      line-height: 1.55 !important;
    }

    .ak-feature-desc {
      font-size: 12px !important;
      line-height: 1.85 !important;
    }

    /* Voice cards: 2 columns and compact */
    .ak-voice-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      gap: 12px !important;
      margin-top: 34px !important;
    }

    .ak-voice-card {
      padding: 18px 14px !important;
      min-height: auto !important;
    }

    .ak-quote {
      font-size: 30px !important;
      margin-bottom: 4px !important;
    }

    .ak-voice-title {
      font-size: 15px !important;
      line-height: 1.55 !important;
      margin-bottom: 8px !important;
    }

    .ak-voice-body {
      font-size: 11.5px !important;
      line-height: 1.75 !important;
    }

    .ak-note {
      font-size: 11px !important;
      margin-top: 16px !important;
    }

    /* Reduce vertical rhythm so user can see section overview */
    .ak-section {
      padding-top: 62px !important;
      padding-bottom: 62px !important;
    }

    .ak-section-label {
      margin-bottom: 12px !important;
    }

    .ak-section-title {
      font-size: 28px !important;
      line-height: 1.45 !important;
    }

    .ak-section-lead {
      font-size: 12.8px !important;
      line-height: 1.9 !important;
      margin-top: 10px !important;
    }
  }

  @media (max-width: 380px) {
    .ak-voice-grid {
      gap: 10px !important;
    }

    .ak-voice-card {
      padding: 16px 12px !important;
    }

    .ak-voice-title {
      font-size: 14px !important;
    }

    .ak-voice-body {
      font-size: 11px !important;
    }

    .ak-feature {
      grid-template-columns: 62px 1fr !important;
    }

    .ak-feature-body {
      padding: 16px 14px !important;
    }

    .akiko-lp .ak-feature-title,
    .akiko-lp .ak-feature-title * {
      font-size: 15.5px !important;
    }
  }


  /* ===== V11 FINAL NUMBER FONT FIX ===== */
  .akiko-lp .ak-readable-number,
  .akiko-lp .ak-readable-number *,
  .akiko-lp .ak-num,
  .akiko-lp .ak-latin-num,
  .akiko-lp .ak-stat-number,
  .akiko-lp .ak-price-amount,
  .akiko-lp .ak-price-amount *,
  .akiko-lp .ak-feature-number strong,
  .akiko-lp .ak-feature-title .ak-readable-number,
  .akiko-lp .ak-flow-step-num,
  .akiko-lp td .ak-readable-number,
  .akiko-lp th .ak-readable-number {
    font-family: Arial, Helvetica, "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif !important;
    font-weight: 700 !important;
    font-style: normal !important;
    letter-spacing: -0.015em !important;
    font-variant-numeric: lining-nums tabular-nums !important;
    font-feature-settings: "lnum" 1, "tnum" 1 !important;
    text-transform: none !important;
  }

  .akiko-lp .ak-feature-title .ak-readable-number {
    font-size: 1em !important;
    line-height: inherit !important;
  }

  .akiko-lp .ak-price-amount .ak-readable-number {
    font-size: inherit !important;
  }


  /* ===== V12 DEFINITIVE NUMBER FONT FIX ===== */
  .akiko-lp .ak-number-final,
  .akiko-lp .ak-number-final *,
  .akiko-lp .ak-readable-number,
  .akiko-lp .ak-latin-num,
  .akiko-lp .ak-num,
  .akiko-lp .ak-stat-number,
  .akiko-lp .ak-price-amount,
  .akiko-lp .ak-price-amount *,
  .akiko-lp .ak-reason-proof-item strong,
  .akiko-lp .ak-achievement-strip span:first-child,
  .akiko-lp .ak-feature-number strong,
  .akiko-lp .ak-flow-step-num {
    font-family: Arial, Helvetica, "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif !important;
    font-weight: 700 !important;
    font-style: normal !important;
    font-variant-numeric: lining-nums tabular-nums !important;
    font-feature-settings: "lnum" 1, "tnum" 1 !important;
    letter-spacing: -0.01em !important;
  }

  /* The reason-card headings are where the bad numeric font remained.
     Force the entire headline to a readable sans font on both PC and mobile. */
  .akiko-lp .ak-feature-title,
  .akiko-lp .ak-feature-title *,
  .akiko-lp .ak-feature-title-main,
  .akiko-lp .ak-feature-title-num {
    font-family: "Noto Sans JP", Arial, Helvetica, "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif !important;
    font-weight: 700 !important;
    font-style: normal !important;
    font-variant-numeric: lining-nums tabular-nums !important;
    font-feature-settings: "lnum" 1, "tnum" 1, "palt" 1 !important;
    letter-spacing: .01em !important;
  }

  .akiko-lp .ak-feature-title .ak-number-final {
    font-family: Arial, Helvetica, "Noto Sans JP", sans-serif !important;
    font-size: 1em !important;
    font-weight: 800 !important;
    letter-spacing: -0.015em !important;
  }

  .akiko-lp .ak-feature-number strong {
    font-size: 40px !important;
  }

  @media (max-width: 900px) {
    .akiko-lp .ak-feature-number strong {
      font-size: 24px !important;
    }
  }


  /* ===== V13 FINAL ADJUSTMENTS ===== */

  /* Representative achievement cards: make 30年 / 70+ / 90%→0% stand out */
  .akiko-lp .ak-achievement-strip {
    border: none !important;
    gap: 14px !important;
    background: transparent !important;
    margin: 36px 0 38px !important;
  }

  .akiko-lp .ak-achievement-strip > div {
    border: 1px solid var(--gray-light) !important;
    background:
      linear-gradient(180deg, rgba(250,248,243,1) 0%, rgba(255,255,255,1) 100%) !important;
    padding: 26px 22px !important;
    position: relative !important;
    overflow: hidden !important;
    box-shadow: 0 12px 32px rgba(26,38,64,.06) !important;
  }

  .akiko-lp .ak-achievement-strip > div::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 5px !important;
    background: var(--gold) !important;
  }

  .akiko-lp .ak-achievement-number,
  .akiko-lp .ak-achievement-strip .ak-stat-number,
  .akiko-lp .ak-achievement-strip span:first-child {
    display: block !important;
    font-family: Arial, Helvetica, "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif !important;
    font-size: 42px !important;
    line-height: 1.05 !important;
    font-weight: 800 !important;
    color: var(--navy) !important;
    letter-spacing: -0.025em !important;
    margin-bottom: 13px !important;
    font-variant-numeric: lining-nums tabular-nums !important;
    font-feature-settings: "lnum" 1, "tnum" 1 !important;
  }

  .akiko-lp .ak-achievement-strip span:last-child {
    font-size: 13.5px !important;
    line-height: 1.85 !important;
    color: var(--gray) !important;
    font-weight: 500 !important;
    letter-spacing: .02em !important;
  }

  /* Definitively change reason-card headline font, including all numbers */
  .akiko-lp .ak-feature-title,
  .akiko-lp .ak-feature-title *,
  .akiko-lp .ak-feature-title-main,
  .akiko-lp .ak-feature-title-num,
  .akiko-lp .ak-feature-title .ak-number-final {
    font-family: "Noto Sans JP", Arial, Helvetica, "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif !important;
    font-weight: 700 !important;
    font-style: normal !important;
    letter-spacing: .015em !important;
    font-variant-numeric: lining-nums tabular-nums !important;
    font-feature-settings: "lnum" 1, "tnum" 1, "palt" 1 !important;
  }

  .akiko-lp .ak-feature-title .ak-number-final {
    font-family: Arial, Helvetica, "Noto Sans JP", sans-serif !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
  }

  @media (max-width: 900px) {
    .akiko-lp .ak-achievement-strip {
      gap: 12px !important;
      margin: 30px 0 32px !important;
    }

    .akiko-lp .ak-achievement-strip > div {
      padding: 22px 20px !important;
      border-bottom: 1px solid var(--gray-light) !important;
    }

    .akiko-lp .ak-achievement-number,
    .akiko-lp .ak-achievement-strip .ak-stat-number,
    .akiko-lp .ak-achievement-strip span:first-child {
      font-size: 36px !important;
      margin-bottom: 10px !important;
    }

    .akiko-lp .ak-achievement-strip span:last-child {
      font-size: 13px !important;
      line-height: 1.75 !important;
    }
  }


  /* ===== V14 ROOT-CAUSE FIX: force the problematic numeric headings ===== */
  .akiko-lp .ak-feature-title-readable,
  .akiko-lp .ak-feature-title-readable *,
  .akiko-lp .ak-feature-title-readable .ak-feature-title-main,
  .akiko-lp .ak-feature-title-readable .ak-number-final,
  .akiko-lp .ak-feature-title-readable .ak-number-readable {
    font-family: Arial, Helvetica, "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif !important;
    font-weight: 700 !important;
    font-style: normal !important;
    font-variant-numeric: lining-nums tabular-nums !important;
    font-feature-settings: "lnum" 1, "tnum" 1, "palt" 1 !important;
    letter-spacing: .01em !important;
  }

  .akiko-lp .ak-feature-title-readable .ak-number-final,
  .akiko-lp .ak-feature-title-readable .ak-number-readable {
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 800 !important;
    letter-spacing: -0.015em !important;
  }


  /* ===== V15 FIX: reason proof numbers were being styled as labels ===== */
  .akiko-lp .ak-reason-proof-item > strong,
  .akiko-lp .ak-reason-proof-item .ak-proof-number {
    display: block !important;
    font-family: Arial, Helvetica, "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif !important;
    font-size: 54px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    color: var(--navy) !important;
    letter-spacing: -0.035em !important;
    margin: 0 0 16px !important;
    font-style: normal !important;
    font-variant-numeric: lining-nums tabular-nums !important;
    font-feature-settings: "lnum" 1, "tnum" 1 !important;
    text-transform: none !important;
  }

  /* Prevent the label span CSS from affecting numbers if any nested span remains */
  .akiko-lp .ak-reason-proof-item > strong span,
  .akiko-lp .ak-reason-proof-item .ak-proof-number span,
  .akiko-lp .ak-reason-proof-item strong .ak-number-final,
  .akiko-lp .ak-reason-proof-item strong .ak-readable-number {
    display: inline !important;
    font-family: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
    font-weight: inherit !important;
    color: inherit !important;
    letter-spacing: inherit !important;
    margin: 0 !important;
    text-transform: none !important;
  }

  .akiko-lp .ak-reason-proof-item > span {
    display: block !important;
    color: var(--gold) !important;
    font-size: 11px !important;
    letter-spacing: .18em !important;
    font-weight: 700 !important;
    margin-bottom: 12px !important;
  }

  .akiko-lp .ak-reason-proof-item p {
    font-size: 14px !important;
    line-height: 1.95 !important;
  }

  @media (max-width: 900px) {
    .akiko-lp .ak-reason-proof-item > strong,
    .akiko-lp .ak-reason-proof-item .ak-proof-number {
      font-size: 38px !important;
      margin-bottom: 10px !important;
      letter-spacing: -0.03em !important;
    }

    .akiko-lp .ak-reason-proof-item > span {
      font-size: 9.5px !important;
      letter-spacing: .14em !important;
      margin-bottom: 8px !important;
    }

    .akiko-lp .ak-reason-proof-item p {
      font-size: 12px !important;
      line-height: 1.75 !important;
    }
  }

  /* Also keep all problematic feature heading numbers readable */
  .akiko-lp .ak-feature-title-readable,
  .akiko-lp .ak-feature-title-readable *,
  .akiko-lp .ak-feature-title-readable .ak-number-final,
  .akiko-lp .ak-feature-title-readable .ak-number-readable {
    font-family: Arial, Helvetica, "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: .01em !important;
    font-variant-numeric: lining-nums tabular-nums !important;
    font-feature-settings: "lnum" 1, "tnum" 1, "palt" 1 !important;
  }


  /* ===== V16 ABSOLUTE FIX FOR REASON HEADLINE NUMBERS ===== */
  .akiko-lp #reasons .ak-feature-body > h3.ak-feature-title,
  .akiko-lp #reasons .ak-feature-body > h3.ak-feature-title *,
  .akiko-lp #reasons .ak-feature-title-readable,
  .akiko-lp #reasons .ak-feature-title-readable * {
    font-family: Arial, Helvetica, "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif !important;
    font-weight: 700 !important;
    font-style: normal !important;
    letter-spacing: .01em !important;
    font-variant-numeric: lining-nums tabular-nums !important;
    font-feature-settings: "lnum" 1, "tnum" 1, "palt" 1 !important;
  }

  .akiko-lp #reasons .ak-feature-body > h3.ak-feature-title .ak-number-final,
  .akiko-lp #reasons .ak-feature-title-readable .ak-number-final {
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
  }

  .akiko-lp #reasons .ak-feature-body > h3.ak-feature-title {
    font-size: 25px !important;
    line-height: 1.65 !important;
  }

  @media (max-width: 900px) {
    .akiko-lp #reasons .ak-feature-body > h3.ak-feature-title {
      font-size: 16.5px !important;
      line-height: 1.55 !important;
    }
  }


  /* ===== V17 RESTORE REASON CARDS + CONSISTENT FONTS ===== */
  .akiko-lp #reasons .ak-feature-number,
  .akiko-lp #reasons .ak-feature-number * {
    font-family: Arial, Helvetica, "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif !important;
    font-style: normal !important;
  }

  .akiko-lp #reasons .ak-feature-index {
    font-family: Arial, Helvetica, "Noto Sans JP", sans-serif !important;
    font-weight: 800 !important;
    font-size: 42px !important;
    line-height: 1 !important;
    letter-spacing: -0.02em !important;
    color: var(--gold-light) !important;
    font-variant-numeric: lining-nums tabular-nums !important;
    font-feature-settings: "lnum" 1, "tnum" 1 !important;
  }

  .akiko-lp #reasons .ak-feature-number span {
    font-family: Arial, Helvetica, "Noto Sans JP", sans-serif !important;
    font-size: 10px !important;
    letter-spacing: .24em !important;
    color: rgba(255,255,255,.48) !important;
    font-weight: 500 !important;
  }

  .akiko-lp #reasons .ak-feature-title-readable,
  .akiko-lp #reasons .ak-feature-title-readable *,
  .akiko-lp #reasons .ak-number-final {
    font-family: "Noto Sans JP", Arial, Helvetica, "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif !important;
    font-weight: 700 !important;
    font-style: normal !important;
    letter-spacing: .01em !important;
    font-variant-numeric: lining-nums tabular-nums !important;
    font-feature-settings: "lnum" 1, "tnum" 1, "palt" 1 !important;
  }

  .akiko-lp #reasons .ak-number-final {
    font-family: Arial, Helvetica, "Noto Sans JP", sans-serif !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
  }

  @media (max-width: 900px) {
    .akiko-lp #reasons .ak-feature-index {
      font-size: 24px !important;
    }
    .akiko-lp #reasons .ak-feature-number span {
      font-size: 8px !important;
      letter-spacing: .12em !important;
    }
  }


  /* ===== V18 FINAL: REASON CARD HEADINGS MUST NOT USE SERIF ===== */
  .akiko-lp #reasons .ak-feature-body h3.ak-feature-title,
  .akiko-lp #reasons .ak-feature-body h3.ak-feature-title *,
  .akiko-lp #reasons .ak-feature-title-readable,
  .akiko-lp #reasons .ak-feature-title-readable *,
  .akiko-lp #reasons .ak-number-final {
    font-family: "Noto Sans JP", Arial, Helvetica, "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif !important;
    font-weight: 700 !important;
    font-style: normal !important;
    letter-spacing: .01em !important;
    font-variant-numeric: lining-nums tabular-nums !important;
    font-feature-settings: "lnum" 1, "tnum" 1, "palt" 1 !important;
  }

  .akiko-lp #reasons .ak-number-final {
    font-family: Arial, Helvetica, sans-serif !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
  }

  .akiko-lp #reasons .ak-feature-body h3.ak-feature-title {
    font-size: 25px !important;
    line-height: 1.65 !important;
  }

  @media (max-width: 900px) {
    .akiko-lp #reasons .ak-feature-body h3.ak-feature-title {
      font-size: 16.5px !important;
      line-height: 1.55 !important;
    }
  }


  /* =========================================================
     WATER COLOR DESIGN VERSION
     Content is unchanged. Visual design only.
  ========================================================= */

  :root {
    --navy: #9a7a2b;
    --navy-mid: #b49642;
    --navy-light: #d2b966;
    --navy-deep: #5c4a25;
    --gold: #b09536;
    --gold-light: #d5bc70;
    --gold-pale: #fbf4dc;
    --ivory: #fffdfa;
    --ivory-deep: #fff8ec;
    --white: #ffffff;
    --dark: #4c4538;
    --gray: #746c5e;
    --gray-light: #eadfca;
    --line-dark: rgba(176,149,54,0.18);
    --shadow: 0 16px 42px rgba(176,149,54,0.10);
    --shadow-strong: 0 28px 72px rgba(176,149,54,0.16);
  }

  body {
    background: #fffdfa !important;
    color: var(--dark) !important;
  }

  .akiko-lp {
    background:
      radial-gradient(900px 520px at 100% 0%, rgba(253,246,224,.72), transparent 65%),
      radial-gradient(900px 520px at 0% 100%, rgba(241,255,248,.7), transparent 65%),
      #fffdfa !important;
    color: var(--dark) !important;
  }

  .ak-nav {
    background: rgba(255,255,255,.76) !important;
    border-bottom: 1px solid rgba(176,149,54,.16) !important;
    backdrop-filter: blur(14px) !important;
  }

  .ak-nav-logo,
  .ak-nav-links a {
    color: #9d7d2e !important;
  }

  .ak-nav-logo span {
    color: #c1a54a !important;
  }

  .ak-nav-cta,
  .ak-btn-primary {
    background: linear-gradient(135deg, #a78b2f, #d6bd61) !important;
    color: #fff !important;
    box-shadow: 0 16px 38px rgba(176,149,54,.22) !important;
  }

  .ak-mobile-menu {
    background: rgba(255,255,255,.96) !important;
    border-color: rgba(176,149,54,.16) !important;
  }

  .ak-mobile-menu a {
    color: #9d7d2e !important;
    border-color: rgba(176,149,54,.14) !important;
  }

  .ak-section {
    background-color: transparent !important;
  }

  .ak-section-title,
  .ak-feature-title,
  .ak-course-card h3,
  .ak-voice-title,
  .ak-faq-q,
  .ak-final-cta h3 {
    color: #927224 !important;
  }

  .ak-section-label-line,
  .ak-hero-eyebrow-line {
    background: #b09536 !important;
  }

  .ak-section-label-text,
  .ak-hero-eyebrow-text,
  .ak-credential-kicker,
  .ak-price-label,
  .ak-table td:first-child {
    color: #b09536 !important;
  }

  .ak-section-lead,
  .ak-profile-text,
  .ak-feature-desc,
  .ak-course-card p,
  .ak-course-card li,
  .ak-voice-body,
  .ak-faq-a p,
  .ak-table td:last-child,
  .ak-price-table td:last-child,
  .ak-final-cta p {
    color: #746c5e !important;
  }

  /* Hero */
  .ak-hero {
    display: block !important;
    min-height: 100vh !important;
    position: relative !important;
    background: #fff !important;
    overflow: hidden !important;
  }

  .ak-hero::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    pointer-events: none !important;
    background:
      url("ak-wc-sparkle3.png") right 2% top 2% / 720px auto no-repeat,
      url("ak-wc-pink.png") right -7% top -7% / 770px auto no-repeat,
      url("ak-wc-yellow.png") right 8% top -12% / 720px auto no-repeat,
      url("ak-wc-mint.png") right 22% top -10% / 780px auto no-repeat,
      url("ak-wc-coral.png") left -18% bottom -18% / 720px auto no-repeat,
      url("ak-wc-mint.png") left -14% bottom -18% / 780px auto no-repeat;
    opacity: .95 !important;
  }

  .ak-hero::after {
    content: "" !important;
    position: absolute !important;
    inset: 70px 64px 42px !important;
    border: 1px solid rgba(176,149,54,.20) !important;
    pointer-events: none !important;
    z-index: 1 !important;
    background: none !important;
  }

  .ak-hero-content {
    position: relative !important;
    z-index: 2 !important;
    min-height: calc(100vh - 68px) !important;
    max-width: 780px !important;
    padding: 150px 80px 90px !important;
    justify-content: center !important;
  }

  .ak-hero-stars,
  .ak-meteor-video,
  .ak-hero-image {
    display: none !important;
  }

  .ak-hero-title {
    color: #9c7b28 !important;
    text-shadow: 0 12px 34px rgba(176,149,54,.10) !important;
  }

  .ak-hero-title em {
    color: #b09536 !important;
  }

  .ak-hero-sub {
    color: #716955 !important;
  }

  .ak-btn-ghost {
    color: #9c7b28 !important;
    border: 1px solid rgba(176,149,54,.32) !important;
    background: rgba(255,255,255,.55) !important;
    padding: 15px 26px !important;
  }

  /* Representative */
  .ak-representative {
    background:
      url("ak-wc-sparkle3.png") right -8% top 6% / 520px auto no-repeat,
      url("ak-wc-yellow.png") right -10% top 0 / 570px auto no-repeat,
      #fffdfa !important;
  }

  .ak-profile-image {
    background: #fff8ec !important;
    border: 1px solid rgba(176,149,54,.16) !important;
  }

  .ak-profile-name-overlay {
    background: rgba(255,255,255,.78) !important;
    border: 1px solid rgba(176,149,54,.22) !important;
    backdrop-filter: blur(10px) !important;
  }

  .ak-profile-name-overlay p {
    color: #927224 !important;
  }

  .ak-profile-name-overlay span {
    color: #b09536 !important;
  }

  .ak-profile-highlight {
    background: rgba(255,255,255,.78) !important;
    border-left-color: #b09536 !important;
    box-shadow: 0 18px 46px rgba(176,149,54,.08) !important;
  }

  .ak-profile-highlight p {
    color: #927224 !important;
  }

  .ak-achievement-strip > div,
  .ak-credential-card,
  .ak-voice-card,
  .ak-course-card,
  .ak-flow-card {
    background: rgba(255,255,255,.82) !important;
    border: 1px solid rgba(176,149,54,.18) !important;
    box-shadow: 0 16px 42px rgba(176,149,54,.08) !important;
    backdrop-filter: blur(4px);
  }

  .ak-achievement-strip > div::before,
  .ak-credential-card::before,
  .ak-voice-card::after,
  .ak-course-card::before {
    background: linear-gradient(90deg, #b09536, #e0c86c) !important;
  }

  .ak-achievement-number,
  .ak-achievement-strip .ak-stat-number,
  .ak-can-num,
  .ak-price-amount,
  .ak-feature-index,
  .ak-proof-number {
    color: #a3822d !important;
  }

  /* Can section */
  .ak-can {
    background:
      url("ak-wc-pink.png") right -18% top -20% / 640px auto no-repeat,
      url("ak-wc-mint.png") left -20% bottom -24% / 720px auto no-repeat,
      #fff !important;
    color: var(--dark) !important;
  }

  .ak-can::before {
    color: rgba(176,149,54,.055) !important;
  }

  .ak-can .ak-section-title {
    color: #927224 !important;
  }

  .ak-can .ak-section-lead {
    color: #746c5e !important;
  }

  .ak-can-card {
    background: rgba(255,255,255,.78) !important;
    border: 1px solid rgba(176,149,54,.18) !important;
    color: var(--dark) !important;
    box-shadow: 0 18px 46px rgba(176,149,54,.08) !important;
  }

  .ak-can-title {
    color: #927224 !important;
  }

  .ak-can-body {
    color: #746c5e !important;
  }

  /* Reasons */
  .ak-reasons {
    background:
      url("ak-wc-sparkle3.png") right -8% top 4% / 580px auto no-repeat,
      url("ak-wc-yellow.png") right -12% top -8% / 620px auto no-repeat,
      #fffdfa !important;
  }

  .ak-reason-lead-card {
    background: rgba(255,255,255,.82) !important;
    border: 1px solid rgba(176,149,54,.18) !important;
    color: var(--dark) !important;
    box-shadow: 0 18px 46px rgba(176,149,54,.09) !important;
  }

  .ak-reason-lead-card::after {
    color: rgba(176,149,54,.06) !important;
  }

  .ak-reason-lead-card p {
    color: #746c5e !important;
  }

  .ak-reason-proof {
    background: rgba(176,149,54,.14) !important;
  }

  .ak-reason-proof-item {
    background: rgba(255,255,255,.86) !important;
  }

  .ak-feature {
    background: rgba(255,255,255,.88) !important;
    border: 1px solid rgba(176,149,54,.18) !important;
    box-shadow: 0 16px 42px rgba(176,149,54,.08) !important;
  }

  .ak-feature-number {
    background:
      radial-gradient(circle at 30% 20%, rgba(255,255,255,.35), transparent 48%),
      linear-gradient(180deg, #b09536, #d5bc70) !important;
  }

  .ak-feature-number span {
    color: rgba(255,255,255,.74) !important;
  }

  .ak-feature-index {
    color: #fff !important;
  }

  .ak-feature-kicker,
  .ak-service-tag {
    background: #fbf4dc !important;
    color: #b09536 !important;
  }

  /* Course */
  .ak-course {
    background:
      url("ak-wc-coral.png") left -18% top 8% / 620px auto no-repeat,
      url("ak-wc-blue.png") right -18% bottom -18% / 620px auto no-repeat,
      linear-gradient(180deg,#fffdfa 0%,#ffffff 50%,#fff8ec 100%) !important;
  }

  .ak-course::before {
    color: rgba(176,149,54,.05) !important;
  }

  .ak-course-banner-frame {
    background: rgba(255,255,255,.86) !important;
    border: 1px solid rgba(176,149,54,.18) !important;
    box-shadow: 0 18px 50px rgba(176,149,54,.10) !important;
  }

  .ak-course-message {
    background: rgba(255,255,255,.86) !important;
    border: 1px solid rgba(176,149,54,.18) !important;
    color: var(--dark) !important;
    box-shadow: 0 22px 70px rgba(176,149,54,.10) !important;
  }

  .ak-course-message::after {
    border-color: rgba(176,149,54,.22) !important;
  }

  .ak-course-message h3 {
    color: #927224 !important;
  }

  .ak-course-message p {
    color: #746c5e !important;
  }

  .ak-target-chip {
    background: rgba(255,255,255,.78) !important;
    border: 1px solid rgba(176,149,54,.18) !important;
    color: #746c5e !important;
  }

  /* Price */
  .ak-price {
    background:
      url("ak-wc-pink.png") right -16% top -18% / 620px auto no-repeat,
      url("ak-wc-mint.png") left -14% bottom -20% / 670px auto no-repeat,
      #fffdfa !important;
    color: var(--dark) !important;
  }

  .ak-price .ak-section-title {
    color: #927224 !important;
  }

  .ak-price .ak-section-lead {
    color: #746c5e !important;
  }

  .ak-price-box {
    background: rgba(255,255,255,.88) !important;
    border: 1px solid rgba(176,149,54,.18) !important;
    box-shadow: 0 22px 58px rgba(176,149,54,.10) !important;
  }

  .ak-price-head {
    border-color: rgba(176,149,54,.16) !important;
  }

  .ak-price-amount {
    color: #927224 !important;
  }

  .ak-price-amount small {
    color: #746c5e !important;
  }

  .ak-price-table tr {
    border-color: rgba(176,149,54,.16) !important;
  }

  .ak-price-table td:first-child {
    color: #b09536 !important;
  }

  /* Flow / FAQ / Business / Law */
  .ak-flow {
    background:
      url("ak-wc-yellow.png") right -16% top -12% / 540px auto no-repeat,
      #fff !important;
  }

  .ak-flow-line {
    background: rgba(176,149,54,.18) !important;
  }

  .ak-faq {
    background:
      url("ak-wc-blue.png") left -18% bottom -20% / 620px auto no-repeat,
      #fffdfa !important;
  }

  .ak-faq-list,
  .ak-faq-item {
    border-color: rgba(176,149,54,.18) !important;
  }

  .ak-business {
    background:
      url("ak-wc-coral.png") right -16% top -16% / 580px auto no-repeat,
      #fff !important;
  }

  .ak-law {
    background:
      url("ak-wc-sparkle3.png") right 6% top 6% / 480px auto no-repeat,
      url("ak-wc-mint.png") left -20% bottom -24% / 700px auto no-repeat,
      #fffdfa !important;
    color: var(--dark) !important;
  }

  .ak-law .ak-section-title {
    color: #927224 !important;
  }

  .ak-law .ak-section-lead,
  .ak-law .ak-table td:last-child {
    color: #746c5e !important;
  }

  .ak-law .ak-table tr,
  .ak-table tr {
    border-color: rgba(176,149,54,.18) !important;
  }

  .ak-final-cta {
    background: rgba(255,255,255,.86) !important;
    border: 1px solid rgba(176,149,54,.18) !important;
    box-shadow: 0 20px 56px rgba(176,149,54,.10) !important;
  }

  .ak-final-cta h3 {
    color: #927224 !important;
  }

  .ak-footer {
    background: linear-gradient(180deg,#fff8ec,#fffdfa) !important;
    border-top: 1px solid rgba(176,149,54,.18) !important;
  }

  .ak-footer-logo {
    color: #927224 !important;
  }

  .ak-footer-copy,
  .ak-footer-links a {
    color: #746c5e !important;
  }

  @media (max-width: 900px) {
    .ak-hero {
      min-height: 100svh !important;
      padding-top: 62px !important;
    }

    .ak-hero::before {
      background:
        url("ak-wc-sparkle3.png") right -18% top 0 / 520px auto no-repeat,
        url("ak-wc-pink.png") right -45% top -6% / 580px auto no-repeat,
        url("ak-wc-yellow.png") right -18% top -8% / 530px auto no-repeat,
        url("ak-wc-mint.png") right 20% top -10% / 570px auto no-repeat,
        url("ak-wc-coral.png") left -48% bottom -14% / 570px auto no-repeat,
        url("ak-wc-mint.png") left -40% bottom -12% / 700px auto no-repeat !important;
    }

    .ak-hero::after {
      inset: 82px 18px 24px !important;
    }

    .ak-hero-content {
      min-height: calc(100svh - 62px) !important;
      padding: 0 24px 56px !important;
      display: flex !important;
      flex-direction: column !important;
      justify-content: center !important;
    }

    .ak-hero-title {
      color: #9c7b28 !important;
      text-shadow: 0 12px 34px rgba(255,255,255,.65) !important;
    }

    .ak-hero-sub {
      color: #655d4d !important;
    }

    .ak-btn-ghost {
      width: 100% !important;
      justify-content: center !important;
    }

    .ak-can,
    .ak-price,
    .ak-law {
      background-size: 520px auto, 540px auto, auto !important;
    }

    .ak-section {
      background-color: #fffdfa !important;
    }

    .ak-feature-number {
      background: linear-gradient(180deg, #b09536, #d5bc70) !important;
    }

    .ak-voice-grid {
      grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    }
  }


  /* =========================================================
     V2: 名刺寄せ / 水彩の上にキラキラを多用
  ========================================================= */
  .akiko-lp {
    background: #fffdfa !important;
  }

  .ak-hero::before {
    background:
      url("ak-wc-meishi-bg-pc.jpg") center center / cover no-repeat !important;
    opacity: 1 !important;
  }

  .ak-hero::after {
    inset: 72px 64px 42px !important;
    border-color: rgba(176,149,54,.26) !important;
  }

  .ak-hero-title,
  .ak-section-title {
    color: #a78328 !important;
  }

  .ak-hero-content {
    padding-left: 92px !important;
  }

  .ak-representative {
    background:
      url("ak-wc-dense-sparkles-pc.png") right top / 850px auto no-repeat,
      url("ak-wc-pink.png") right -12% top -10% / 770px auto no-repeat,
      url("ak-wc-yellow.png") right 8% top -8% / 720px auto no-repeat,
      #fffdfa !important;
  }

  .ak-can {
    background:
      url("ak-wc-dense-sparkles-pc.png") center top / 980px auto no-repeat,
      url("ak-wc-pink.png") right -18% top -20% / 820px auto no-repeat,
      url("ak-wc-yellow.png") right 6% top -12% / 720px auto no-repeat,
      url("ak-wc-mint.png") left -18% bottom -24% / 900px auto no-repeat,
      url("ak-wc-coral.png") left 3% bottom -12% / 670px auto no-repeat,
      #fff !important;
  }

  .ak-reasons {
    background:
      url("ak-wc-dense-sparkles-pc.png") center top / 1040px auto no-repeat,
      url("ak-wc-yellow.png") right -14% top -10% / 800px auto no-repeat,
      url("ak-wc-pink.png") right -12% top 10% / 720px auto no-repeat,
      url("ak-wc-mint.png") left -18% bottom -18% / 840px auto no-repeat,
      #fffdfa !important;
  }

  .ak-course {
    background:
      url("ak-wc-dense-sparkles-pc.png") center top / 980px auto no-repeat,
      url("ak-wc-coral.png") left -18% top 4% / 770px auto no-repeat,
      url("ak-wc-pink.png") right -14% top -8% / 770px auto no-repeat,
      url("ak-wc-blue.png") right -18% bottom -18% / 770px auto no-repeat,
      linear-gradient(180deg,#fffdfa 0%,#ffffff 50%,#fff8ec 100%) !important;
  }

  .ak-price {
    background:
      url("ak-wc-dense-sparkles-pc.png") center top / 970px auto no-repeat,
      url("ak-wc-pink.png") right -16% top -18% / 770px auto no-repeat,
      url("ak-wc-mint.png") left -14% bottom -20% / 800px auto no-repeat,
      #fffdfa !important;
  }

  .ak-flow {
    background:
      url("ak-wc-dense-sparkles-pc.png") right top / 770px auto no-repeat,
      url("ak-wc-yellow.png") right -16% top -12% / 680px auto no-repeat,
      #fff !important;
  }

  .ak-faq {
    background:
      url("ak-wc-dense-sparkles-pc.png") left bottom / 770px auto no-repeat,
      url("ak-wc-blue.png") left -18% bottom -20% / 770px auto no-repeat,
      #fffdfa !important;
  }

  .ak-business {
    background:
      url("ak-wc-dense-sparkles-pc.png") right top / 770px auto no-repeat,
      url("ak-wc-coral.png") right -16% top -16% / 720px auto no-repeat,
      #fff !important;
  }

  .ak-law {
    background:
      url("ak-wc-dense-sparkles-pc.png") right top / 840px auto no-repeat,
      url("ak-wc-mint.png") left -20% bottom -24% / 870px auto no-repeat,
      #fffdfa !important;
  }

  .ak-profile-highlight,
  .ak-achievement-strip > div,
  .ak-credential-card,
  .ak-voice-card,
  .ak-course-card,
  .ak-flow-card,
  .ak-reason-lead-card,
  .ak-feature,
  .ak-price-box,
  .ak-course-message,
  .ak-final-cta {
    background: rgba(255,255,255,.88) !important;
    border-color: rgba(176,149,54,.22) !important;
    box-shadow: 0 18px 48px rgba(176,149,54,.10) !important;
  }

  .ak-feature-number {
    background:
      radial-gradient(circle at 30% 18%, rgba(255,255,255,.55), transparent 52%),
      linear-gradient(180deg,#ad8e32,#d7bd62) !important;
  }

  .ak-nav {
    background: rgba(255,255,255,.72) !important;
    backdrop-filter: blur(14px) !important;
  }

  @media (max-width: 900px) {
    .ak-hero::before {
      background:
        url("ak-wc-meishi-bg-sp.jpg") center center / cover no-repeat !important;
    }

    .ak-hero-content {
      padding: 0 24px 56px !important;
      justify-content: center !important;
    }

    .ak-section {
      background-color: #fffdfa !important;
    }

    .ak-representative,
    .ak-can,
    .ak-reasons,
    .ak-course,
    .ak-price,
    .ak-flow,
    .ak-faq,
    .ak-business,
    .ak-law {
      background-size: 620px auto, 580px auto, 580px auto, 580px auto, auto !important;
    }
  }


  /* =========================================================
     V3: 参考イメージに合わせた水彩・キラキラ配置
     UI・カード・文章は変更せず、背景装飾と色味だけ調整
  ========================================================= */

  .akiko-lp {
    background: #fffdfa !important;
  }

  .akiko-lp .ak-hero {
    display: block !important;
    min-height: 100vh !important;
    position: relative !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  .akiko-lp .ak-hero::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    pointer-events: none !important;
    background: url("ak-fv-ref-pc.jpg") center center / cover no-repeat !important;
    opacity: 1 !important;
  }

  .akiko-lp .ak-hero::after {
    content: "" !important;
    position: absolute !important;
    inset: 72px 64px 42px !important;
    z-index: 1 !important;
    pointer-events: none !important;
    border: 1px solid rgba(176,149,54,.24) !important;
    background: none !important;
  }

  .akiko-lp .ak-hero-content {
    position: relative !important;
    z-index: 2 !important;
    min-height: calc(100vh - 68px) !important;
    max-width: 770px !important;
    padding: 150px 80px 90px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
  }

  .akiko-lp .ak-hero-stars,
  .akiko-lp .ak-hero-image,
  .akiko-lp .ak-meteor-video {
    display: none !important;
  }

  .akiko-lp .ak-hero-title,
  .akiko-lp .ak-section-title {
    color: #9f7f2f !important;
  }

  .akiko-lp .ak-hero-title em {
    color: #b4973a !important;
  }

  .akiko-lp .ak-hero-sub,
  .akiko-lp .ak-section-lead {
    color: #726a58 !important;
  }

  .akiko-lp .ak-hero-eyebrow-text,
  .akiko-lp .ak-section-label-text {
    color: #b09536 !important;
  }

  .akiko-lp .ak-hero-eyebrow-line,
  .akiko-lp .ak-section-label-line {
    background: #b09536 !important;
  }

  .akiko-lp .ak-btn-primary,
  .akiko-lp .ak-nav-cta {
    background: linear-gradient(135deg,#a88b31,#d8bf65) !important;
    color: #fff !important;
    box-shadow: 0 16px 38px rgba(176,149,54,.22) !important;
  }

  .akiko-lp .ak-btn-ghost {
    color: #9f7f2f !important;
    border: 1px solid rgba(176,149,54,.34) !important;
    background: rgba(255,255,255,.58) !important;
    padding: 15px 26px !important;
  }

  .akiko-lp .ak-nav {
    background: rgba(255,255,255,.72) !important;
    backdrop-filter: blur(14px) !important;
    border-bottom: 1px solid rgba(176,149,54,.16) !important;
  }

  .akiko-lp .ak-nav-logo,
  .akiko-lp .ak-nav-links a {
    color: #9f7f2f !important;
  }

  .akiko-lp .ak-nav-logo span {
    color: #c2a64b !important;
  }

  .akiko-lp .ak-representative {
    background:
      url("ak-wc-dense-sparkles-pc.png") right top / 820px auto no-repeat,
      url("ak-layout-part-01.png") right -10% top -10% / 720px auto no-repeat,
      #fffdfa !important;
  }

  .akiko-lp .ak-can {
    background:
      url("ak-wc-dense-sparkles-pc.png") center top / 980px auto no-repeat,
      url("ak-layout-part-02.png") right -18% top -18% / 770px auto no-repeat,
      url("ak-layout-part-03.png") left -18% bottom -20% / 820px auto no-repeat,
      #fff !important;
  }

  .akiko-lp .ak-reasons {
    background:
      url("ak-wc-dense-sparkles-pc.png") center top / 980px auto no-repeat,
      url("ak-layout-part-01.png") right -18% top -10% / 820px auto no-repeat,
      url("ak-layout-part-04.png") left -18% bottom -20% / 820px auto no-repeat,
      #fffdfa !important;
  }

  .akiko-lp .ak-voices {
    background:
      url("ak-wc-dense-sparkles-pc.png") right -8% top -5% / 780px auto no-repeat,
      url("ak-layout-part-02.png") right -16% top -10% / 720px auto no-repeat,
      #fff !important;
  }

  .akiko-lp .ak-course {
    background:
      url("ak-wc-dense-sparkles-pc.png") center top / 980px auto no-repeat,
      url("ak-layout-part-03.png") left -18% top 0 / 780px auto no-repeat,
      url("ak-layout-part-01.png") right -16% top -10% / 780px auto no-repeat,
      url("ak-layout-part-04.png") right -18% bottom -18% / 770px auto no-repeat,
      #fffdfa !important;
  }

  .akiko-lp .ak-price {
    background:
      url("ak-wc-dense-sparkles-pc.png") center top / 900px auto no-repeat,
      url("ak-layout-part-01.png") right -16% top -18% / 770px auto no-repeat,
      url("ak-layout-part-03.png") left -16% bottom -18% / 770px auto no-repeat,
      #fffdfa !important;
  }

  .akiko-lp .ak-flow {
    background:
      url("ak-wc-dense-sparkles-pc.png") right top / 770px auto no-repeat,
      url("ak-layout-part-02.png") right -16% top -14% / 680px auto no-repeat,
      #fff !important;
  }

  .akiko-lp .ak-faq {
    background:
      url("ak-wc-dense-sparkles-pc.png") left bottom / 770px auto no-repeat,
      url("ak-layout-part-04.png") left -18% bottom -18% / 770px auto no-repeat,
      #fffdfa !important;
  }

  .akiko-lp .ak-business {
    background:
      url("ak-wc-dense-sparkles-pc.png") right top / 770px auto no-repeat,
      url("ak-layout-part-01.png") right -16% top -14% / 720px auto no-repeat,
      #fff !important;
  }

  .akiko-lp .ak-law {
    background:
      url("ak-wc-dense-sparkles-pc.png") right top / 820px auto no-repeat,
      url("ak-layout-part-03.png") left -18% bottom -22% / 820px auto no-repeat,
      #fffdfa !important;
  }

  .akiko-lp .ak-can,
  .akiko-lp .ak-price,
  .akiko-lp .ak-law {
    color: #4d4535 !important;
  }

  .akiko-lp .ak-can .ak-section-title,
  .akiko-lp .ak-price .ak-section-title,
  .akiko-lp .ak-law .ak-section-title {
    color: #9f7f2f !important;
  }

  .akiko-lp .ak-can .ak-section-lead,
  .akiko-lp .ak-price .ak-section-lead,
  .akiko-lp .ak-law .ak-section-lead,
  .akiko-lp .ak-law .ak-table td:last-child {
    color: #726a58 !important;
  }

  .akiko-lp .ak-can-card,
  .akiko-lp .ak-profile-highlight,
  .akiko-lp .ak-achievement-strip > div,
  .akiko-lp .ak-credential-card,
  .akiko-lp .ak-reason-lead-card,
  .akiko-lp .ak-feature,
  .akiko-lp .ak-voice-card,
  .akiko-lp .ak-course-card,
  .akiko-lp .ak-course-message,
  .akiko-lp .ak-price-box,
  .akiko-lp .ak-flow-card,
  .akiko-lp .ak-final-cta {
    background: rgba(255,255,255,.88) !important;
    border: 1px solid rgba(176,149,54,.20) !important;
    box-shadow: 0 18px 48px rgba(176,149,54,.10) !important;
    backdrop-filter: blur(3px) !important;
  }

  .akiko-lp .ak-can-title,
  .akiko-lp .ak-feature-title,
  .akiko-lp .ak-voice-title,
  .akiko-lp .ak-course-card h3,
  .akiko-lp .ak-course-message h3,
  .akiko-lp .ak-faq-q,
  .akiko-lp .ak-final-cta h3 {
    color: #9f7f2f !important;
  }

  .akiko-lp .ak-can-body,
  .akiko-lp .ak-feature-desc,
  .akiko-lp .ak-voice-body,
  .akiko-lp .ak-course-card p,
  .akiko-lp .ak-course-card li,
  .akiko-lp .ak-course-message p,
  .akiko-lp .ak-faq-a p,
  .akiko-lp .ak-final-cta p {
    color: #726a58 !important;
  }

  .akiko-lp .ak-feature-number {
    background:
      radial-gradient(circle at 30% 18%, rgba(255,255,255,.55), transparent 52%),
      linear-gradient(180deg,#ad8e32,#d7bd62) !important;
  }

  .akiko-lp .ak-feature-index {
    color: #fff !important;
  }

  .akiko-lp .ak-feature-number span {
    color: rgba(255,255,255,.72) !important;
  }

  .akiko-lp .ak-price-amount,
  .akiko-lp .ak-proof-number,
  .akiko-lp .ak-achievement-number {
    color: #9f7f2f !important;
  }

  .akiko-lp .ak-footer {
    background: #fffdfa !important;
    border-top: 1px solid rgba(176,149,54,.18) !important;
  }

  .akiko-lp .ak-footer-logo {
    color: #9f7f2f !important;
  }

  .akiko-lp .ak-footer-copy,
  .akiko-lp .ak-footer-links a {
    color: #726a58 !important;
  }

  @media (max-width: 900px) {
    .akiko-lp .ak-hero::before {
      background: url("ak-fv-ref-sp.jpg") center center / cover no-repeat !important;
    }

    .akiko-lp .ak-hero::after {
      inset: 82px 18px 24px !important;
    }

    .akiko-lp .ak-hero-content {
      min-height: calc(100svh - 62px) !important;
      padding: 0 24px 56px !important;
      justify-content: center !important;
    }

    .akiko-lp .ak-representative,
    .akiko-lp .ak-can,
    .akiko-lp .ak-reasons,
    .akiko-lp .ak-voices,
    .akiko-lp .ak-course,
    .akiko-lp .ak-price,
    .akiko-lp .ak-flow,
    .akiko-lp .ak-faq,
    .akiko-lp .ak-business,
    .akiko-lp .ak-law {
      background-size: 620px auto, 580px auto, 580px auto, 580px auto, auto !important;
    }
  }


  /* =========================================================
     V5 REAL: AdobeStock キラキラ動画を反映
     流れ星系ではなく、今回アップロードされた実動画を使用
  ========================================================= */

  .akiko-lp .ak-hero,
  .akiko-lp .ak-section {
    position: relative !important;
    overflow: hidden !important;
  }

  .akiko-lp .ak-kirakira-video {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    pointer-events: none !important;
    z-index: 1 !important;
    opacity: .54 !important;
    mix-blend-mode: screen !important;
    filter: brightness(1.34) contrast(1.08) saturate(1.04) !important;
  }

  .akiko-lp .ak-kirakira-video-hero {
    opacity: .74 !important;
    z-index: 1 !important;
  }

  .akiko-lp .ak-kirakira-video-profile,
  .akiko-lp .ak-kirakira-video-reasons,
  .akiko-lp .ak-kirakira-video-course,
  .akiko-lp .ak-kirakira-video-price,
  .akiko-lp .ak-kirakira-video-law {
    opacity: .30 !important;
    z-index: 0 !important;
  }

  .akiko-lp .ak-hero-content,
  .akiko-lp .ak-section-inner,
  .akiko-lp .ak-profile-layout,
  .akiko-lp .ak-reason-intro,
  .akiko-lp .ak-feature-list,
  .akiko-lp .ak-course-banner,
  .akiko-lp .ak-price-box,
  .akiko-lp .ak-final-cta {
    position: relative !important;
    z-index: 3 !important;
  }

  .akiko-lp .ak-hero::before {
    z-index: 0 !important;
  }

  .akiko-lp .ak-hero::after {
    z-index: 2 !important;
  }

  .akiko-lp .ak-can-card,
  .akiko-lp .ak-profile-highlight,
  .akiko-lp .ak-achievement-strip > div,
  .akiko-lp .ak-credential-card,
  .akiko-lp .ak-reason-lead-card,
  .akiko-lp .ak-feature,
  .akiko-lp .ak-voice-card,
  .akiko-lp .ak-course-card,
  .akiko-lp .ak-course-message,
  .akiko-lp .ak-price-box,
  .akiko-lp .ak-flow-card,
  .akiko-lp .ak-final-cta {
    background: rgba(255,255,255,.92) !important;
  }

  @media (max-width: 900px) {
    .akiko-lp .ak-kirakira-video {
      opacity: .42 !important;
    }

    .akiko-lp .ak-kirakira-video-hero {
      opacity: .62 !important;
    }

    .akiko-lp .ak-kirakira-video-profile,
    .akiko-lp .ak-kirakira-video-reasons,
    .akiko-lp .ak-kirakira-video-course,
    .akiko-lp .ak-kirakira-video-price,
    .akiko-lp .ak-kirakira-video-law {
      opacity: .22 !important;
    }
  }


  /* =========================================================
     V6: 黒い動画表示を削除
     キラキラ動画はファーストビュー内だけに限定
  ========================================================= */

  .akiko-lp .ak-kirakira-video:not(.ak-kirakira-video-hero) {
    display: none !important;
  }

  .akiko-lp .ak-hero {
    position: relative !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  .akiko-lp .ak-kirakira-video-hero {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    pointer-events: none !important;
    z-index: 1 !important;
    opacity: .68 !important;
    mix-blend-mode: screen !important;
    filter: brightness(1.35) contrast(1.08) saturate(1.04) !important;
    background: transparent !important;
  }

  .akiko-lp .ak-hero::before {
    z-index: 0 !important;
  }

  .akiko-lp .ak-hero::after {
    z-index: 2 !important;
  }

  .akiko-lp .ak-hero-content {
    position: relative !important;
    z-index: 3 !important;
  }

  @media (max-width: 900px) {
    .akiko-lp .ak-kirakira-video-hero {
      opacity: .58 !important;
    }
  }


  /* =========================================================
     V7: スマホ版 水彩装飾を小さめ・ポイント配置に修正
     白背景ベースを優先
  ========================================================= */

  @media (max-width: 900px) {
    .akiko-lp .ak-hero {
      background: #fff !important;
    }

    .akiko-lp .ak-hero::before {
      background:
        url("ak-layout-part-01.png") right -68px top 24px / 280px auto no-repeat,
        url("ak-layout-part-02.png") right -42px top 98px / 230px auto no-repeat,
        url("ak-layout-part-03.png") left -76px bottom 18px / 285px auto no-repeat,
        url("ak-wc-dense-sparkles-sp.png") right -48px top 12px / 330px auto no-repeat,
        url("ak-wc-dense-sparkles-sp.png") left -88px bottom -12px / 300px auto no-repeat !important;
      opacity: .92 !important;
    }

    .akiko-lp .ak-hero::after {
      inset: 82px 18px 24px !important;
      border-color: rgba(176,149,54,.22) !important;
    }

    .akiko-lp .ak-hero-content {
      padding: 0 24px 50px !important;
      justify-content: center !important;
    }

    .akiko-lp .ak-kirakira-video-hero {
      opacity: .38 !important;
      object-position: center center !important;
    }

    .akiko-lp .ak-representative {
      background:
        url("ak-wc-dense-sparkles-sp.png") right -70px top 20px / 300px auto no-repeat,
        url("ak-layout-part-04.png") right -82px top 30px / 270px auto no-repeat,
        #fffdfa !important;
    }

    .akiko-lp .ak-can {
      background:
        url("ak-wc-dense-sparkles-sp.png") left -88px bottom 8px / 280px auto no-repeat,
        url("ak-layout-part-05.png") left -92px bottom 22px / 270px auto no-repeat,
        #fff !important;
    }

    .akiko-lp .ak-reasons {
      background:
        url("ak-wc-dense-sparkles-sp.png") right -78px top 24px / 300px auto no-repeat,
        url("ak-layout-part-06.png") right -88px top 36px / 270px auto no-repeat,
        #fffdfa !important;
    }

    .akiko-lp .ak-voices {
      background:
        url("ak-wc-dense-sparkles-sp.png") left -88px top 32px / 280px auto no-repeat,
        url("ak-layout-part-07.png") left -96px top 44px / 270px auto no-repeat,
        #fff !important;
    }

    .akiko-lp .ak-course {
      background:
        url("ak-wc-dense-sparkles-sp.png") right -74px top 18px / 300px auto no-repeat,
        url("ak-layout-part-08.png") right -90px top 30px / 270px auto no-repeat,
        url("ak-layout-part-03.png") left -100px bottom -20px / 270px auto no-repeat,
        #fffdfa !important;
    }

    .akiko-lp .ak-price {
      background:
        url("ak-wc-dense-sparkles-sp.png") left -86px bottom 6px / 280px auto no-repeat,
        url("ak-layout-part-09.png") left -96px bottom 16px / 270px auto no-repeat,
        #fffdfa !important;
    }

    .akiko-lp .ak-flow {
      background:
        url("ak-wc-dense-sparkles-sp.png") right -82px top 20px / 280px auto no-repeat,
        url("ak-layout-part-10.png") right -92px top 32px / 270px auto no-repeat,
        #fff !important;
    }

    .akiko-lp .ak-faq {
      background:
        url("ak-wc-dense-sparkles-sp.png") left -88px bottom 10px / 280px auto no-repeat,
        url("ak-layout-part-11.png") left -98px bottom 18px / 270px auto no-repeat,
        #fffdfa !important;
    }

    .akiko-lp .ak-business {
      background:
        url("ak-wc-dense-sparkles-sp.png") right -82px top 22px / 280px auto no-repeat,
        url("ak-layout-part-12.png") right -94px top 34px / 270px auto no-repeat,
        #fff !important;
    }

    .akiko-lp .ak-law {
      background:
        url("ak-wc-dense-sparkles-sp.png") left -88px bottom 8px / 280px auto no-repeat,
        url("ak-layout-part-13.png") left -98px bottom 18px / 270px auto no-repeat,
        #fffdfa !important;
    }

    .akiko-lp .ak-can-card,
    .akiko-lp .ak-profile-highlight,
    .akiko-lp .ak-achievement-strip > div,
    .akiko-lp .ak-credential-card,
    .akiko-lp .ak-reason-lead-card,
    .akiko-lp .ak-feature,
    .akiko-lp .ak-voice-card,
    .akiko-lp .ak-course-card,
    .akiko-lp .ak-course-message,
    .akiko-lp .ak-price-box,
    .akiko-lp .ak-flow-card,
    .akiko-lp .ak-final-cta {
      background: rgba(255,255,255,.94) !important;
      backdrop-filter: none !important;
    }
  }

  @media (max-width: 480px) {
    .akiko-lp .ak-hero::before {
      background:
        url("ak-layout-part-01.png") right -74px top 18px / 245px auto no-repeat,
        url("ak-layout-part-02.png") right -52px top 94px / 200px auto no-repeat,
        url("ak-layout-part-03.png") left -82px bottom 12px / 245px auto no-repeat,
        url("ak-wc-dense-sparkles-sp.png") right -56px top 6px / 270px auto no-repeat,
        url("ak-wc-dense-sparkles-sp.png") left -90px bottom -18px / 250px auto no-repeat !important;
    }

    .akiko-lp .ak-kirakira-video-hero {
      opacity: .32 !important;
    }
  }


  /* =========================================================
     V8: スマホ版ファーストビューに虹色水彩を追加
     白背景ベースは残しつつ、右上・左下にPC版のような水彩感を出す
  ========================================================= */

  @media (max-width: 900px) {
    .akiko-lp .ak-hero {
      background: #fff !important;
    }

    .akiko-lp .ak-hero::before {
      background:
        /* 右上：ミント・イエロー・ピンクを重ねて虹色に見せる */
        url("ak-layout-part-01.png") right -96px top -24px / 430px auto no-repeat,
        url("ak-layout-part-02.png") right -44px top 32px / 350px auto no-repeat,
        url("ak-layout-part-04.png") right -118px top 112px / 370px auto no-repeat,

        /* 左下：水彩を少し大きめに戻す */
        url("ak-layout-part-03.png") left -116px bottom -34px / 390px auto no-repeat,
        url("ak-layout-part-05.png") left -70px bottom 34px / 310px auto no-repeat,
        url("ak-layout-part-06.png") left -128px bottom 126px / 300px auto no-repeat,

        /* 水彩の上にキラキラ */
        url("ak-wc-dense-sparkles-sp.png") right -64px top -8px / 420px auto no-repeat,
        url("ak-wc-dense-sparkles-sp.png") left -108px bottom -20px / 380px auto no-repeat !important;
      opacity: .96 !important;
    }

    /* キラキラ動画は水彩の上に薄く乗せる */
    .akiko-lp .ak-kirakira-video-hero {
      opacity: .42 !important;
      mix-blend-mode: screen !important;
    }

    /* 文字エリアの可読性を保つため、テキスト周辺は白余白を確保 */
    .akiko-lp .ak-hero-content {
      padding: 0 24px 50px !important;
      justify-content: center !important;
    }
  }

  @media (max-width: 480px) {
    .akiko-lp .ak-hero::before {
      background:
        url("ak-layout-part-01.png") right -104px top -18px / 380px auto no-repeat,
        url("ak-layout-part-02.png") right -46px top 36px / 310px auto no-repeat,
        url("ak-layout-part-04.png") right -118px top 118px / 315px auto no-repeat,

        url("ak-layout-part-03.png") left -118px bottom -30px / 350px auto no-repeat,
        url("ak-layout-part-05.png") left -68px bottom 42px / 275px auto no-repeat,
        url("ak-layout-part-06.png") left -126px bottom 132px / 270px auto no-repeat,

        url("ak-wc-dense-sparkles-sp.png") right -72px top -8px / 370px auto no-repeat,
        url("ak-wc-dense-sparkles-sp.png") left -110px bottom -18px / 330px auto no-repeat !important;
      opacity: .98 !important;
    }

    .akiko-lp .ak-kirakira-video-hero {
      opacity: .38 !important;
    }
  }

  @media (max-width: 390px) {
    .akiko-lp .ak-hero::before {
      background:
        url("ak-layout-part-01.png") right -110px top -12px / 350px auto no-repeat,
        url("ak-layout-part-02.png") right -54px top 40px / 286px auto no-repeat,
        url("ak-layout-part-04.png") right -122px top 124px / 292px auto no-repeat,

        url("ak-layout-part-03.png") left -122px bottom -24px / 325px auto no-repeat,
        url("ak-layout-part-05.png") left -72px bottom 48px / 250px auto no-repeat,
        url("ak-layout-part-06.png") left -130px bottom 138px / 240px auto no-repeat,

        url("ak-wc-dense-sparkles-sp.png") right -74px top -2px / 330px auto no-repeat,
        url("ak-wc-dense-sparkles-sp.png") left -112px bottom -12px / 300px auto no-repeat !important;
    }
  }


  /* =========================================================
     V9: PC版ファーストビューの考え方をスマホ版へ移植
     スマホFV：右上・左下に虹色水彩、その上にキラキラ動画
  ========================================================= */

  @media (max-width: 900px) {
    .akiko-lp .ak-hero {
      background: #fff !important;
      position: relative !important;
      overflow: hidden !important;
    }

    /*
      PC版と同じ考え方：
      - 白背景
      - 右上に水彩を大きめに重ねる
      - 左下に水彩を重ねる
      - 中央は文章が読める白余白として残す
    */
    .akiko-lp .ak-hero::before {
      content: "" !important;
      position: absolute !important;
      inset: 0 !important;
      z-index: 0 !important;
      pointer-events: none !important;
      background:
        /* 右上：ミント・イエロー・ピンク・コーラルを重ねて虹色に */
        url("ak-wc-mint.png") right -150px top -115px / 520px auto no-repeat,
        url("ak-wc-yellow.png") right -92px top -90px / 470px auto no-repeat,
        url("ak-wc-pink.png") right -150px top 28px / 465px auto no-repeat,
        url("ak-wc-coral.png") right -70px top 78px / 390px auto no-repeat,
        url("ak-wc-blue.png") right 88px top -112px / 370px auto no-repeat,

        /* 左下：水彩をPC版のように斜め下から入れる */
        url("ak-wc-coral.png") left -150px bottom -92px / 455px auto no-repeat,
        url("ak-wc-pink.png") left -72px bottom 28px / 355px auto no-repeat,
        url("ak-wc-yellow.png") left -58px bottom -72px / 390px auto no-repeat,
        url("ak-wc-mint.png") left -170px bottom -142px / 520px auto no-repeat,
        url("ak-wc-blue.png") left 70px bottom -126px / 365px auto no-repeat,

        /* 水彩上の静止キラキラ */
        url("ak-wc-dense-sparkles-sp.png") right -85px top -24px / 470px auto no-repeat,
        url("ak-wc-dense-sparkles-sp.png") left -132px bottom -48px / 430px auto no-repeat !important;
      opacity: .98 !important;
    }

    /* フレームはPC版と同じく水彩の上、テキストの下 */
    .akiko-lp .ak-hero::after {
      content: "" !important;
      position: absolute !important;
      inset: 82px 18px 24px !important;
      z-index: 2 !important;
      pointer-events: none !important;
      border: 1px solid rgba(176,149,54,.24) !important;
      background: none !important;
    }

    /* キラキラ動画：水彩の上、テキストの下 */
    .akiko-lp .ak-kirakira-video-hero {
      display: block !important;
      position: absolute !important;
      inset: 0 !important;
      width: 100% !important;
      height: 100% !important;
      object-fit: cover !important;
      object-position: center center !important;
      pointer-events: none !important;
      z-index: 1 !important;
      opacity: .46 !important;
      mix-blend-mode: screen !important;
      filter: brightness(1.34) contrast(1.08) saturate(1.04) !important;
      background: transparent !important;
    }

    .akiko-lp .ak-hero-content {
      position: relative !important;
      z-index: 3 !important;
      min-height: calc(100svh - 62px) !important;
      padding: 0 24px 50px !important;
      justify-content: center !important;
    }
  }

  @media (max-width: 480px) {
    .akiko-lp .ak-hero::before {
      background:
        url("ak-wc-mint.png") right -154px top -108px / 470px auto no-repeat,
        url("ak-wc-yellow.png") right -96px top -74px / 420px auto no-repeat,
        url("ak-wc-pink.png") right -148px top 36px / 410px auto no-repeat,
        url("ak-wc-coral.png") right -72px top 88px / 345px auto no-repeat,
        url("ak-wc-blue.png") right 72px top -98px / 315px auto no-repeat,

        url("ak-wc-coral.png") left -150px bottom -82px / 405px auto no-repeat,
        url("ak-wc-pink.png") left -72px bottom 34px / 315px auto no-repeat,
        url("ak-wc-yellow.png") left -70px bottom -64px / 345px auto no-repeat,
        url("ak-wc-mint.png") left -168px bottom -130px / 465px auto no-repeat,
        url("ak-wc-blue.png") left 54px bottom -116px / 318px auto no-repeat,

        url("ak-wc-dense-sparkles-sp.png") right -88px top -18px / 405px auto no-repeat,
        url("ak-wc-dense-sparkles-sp.png") left -126px bottom -38px / 375px auto no-repeat !important;
      opacity: .98 !important;
    }

    .akiko-lp .ak-kirakira-video-hero {
      opacity: .42 !important;
    }
  }

  @media (max-width: 390px) {
    .akiko-lp .ak-hero::before {
      background:
        url("ak-wc-mint.png") right -170px top -100px / 430px auto no-repeat,
        url("ak-wc-yellow.png") right -104px top -66px / 390px auto no-repeat,
        url("ak-wc-pink.png") right -154px top 46px / 375px auto no-repeat,
        url("ak-wc-coral.png") right -78px top 96px / 318px auto no-repeat,
        url("ak-wc-blue.png") right 70px top -88px / 292px auto no-repeat,

        url("ak-wc-coral.png") left -154px bottom -72px / 375px auto no-repeat,
        url("ak-wc-pink.png") left -78px bottom 42px / 292px auto no-repeat,
        url("ak-wc-yellow.png") left -66px bottom -58px / 320px auto no-repeat,
        url("ak-wc-mint.png") left -174px bottom -118px / 430px auto no-repeat,
        url("ak-wc-blue.png") left 42px bottom -104px / 292px auto no-repeat,

        url("ak-wc-dense-sparkles-sp.png") right -92px top -12px / 370px auto no-repeat,
        url("ak-wc-dense-sparkles-sp.png") left -130px bottom -32px / 345px auto no-repeat !important;
    }
  }


  /* =========================================================
     V10: スマホ版水彩を一回り小さくし、キラキラ動画を見えやすく調整
  ========================================================= */

  @media (max-width: 900px) {
    /*
      水彩パーツをv9より一回り小さく。
      右上・左下の構成は維持し、中央の白余白を増やす。
    */
    .akiko-lp .ak-hero::before {
      background:
        url("ak-wc-mint.png") right -130px top -92px / 455px auto no-repeat,
        url("ak-wc-yellow.png") right -78px top -72px / 405px auto no-repeat,
        url("ak-wc-pink.png") right -126px top 38px / 405px auto no-repeat,
        url("ak-wc-coral.png") right -70px top 88px / 340px auto no-repeat,
        url("ak-wc-blue.png") right 78px top -92px / 315px auto no-repeat,

        url("ak-wc-coral.png") left -128px bottom -72px / 395px auto no-repeat,
        url("ak-wc-pink.png") left -62px bottom 40px / 305px auto no-repeat,
        url("ak-wc-yellow.png") left -50px bottom -56px / 335px auto no-repeat,
        url("ak-wc-mint.png") left -146px bottom -118px / 455px auto no-repeat,
        url("ak-wc-blue.png") left 58px bottom -102px / 315px auto no-repeat,

        url("ak-wc-dense-sparkles-sp.png") right -74px top -8px / 390px auto no-repeat,
        url("ak-wc-dense-sparkles-sp.png") left -108px bottom -30px / 370px auto no-repeat !important;
      opacity: .98 !important;
    }

    /*
      スマホ版でもキラキラ動画が見えるように調整。
      白背景で消えやすいため、opacityとbrightnessを上げる。
    */
    .akiko-lp .ak-kirakira-video-hero {
      display: block !important;
      opacity: .68 !important;
      mix-blend-mode: screen !important;
      filter: brightness(1.85) contrast(1.18) saturate(1.08) !important;
      z-index: 1 !important;
    }

    .akiko-lp .ak-hero::before {
      z-index: 0 !important;
    }

    .akiko-lp .ak-hero::after {
      z-index: 2 !important;
    }

    .akiko-lp .ak-hero-content {
      z-index: 3 !important;
    }
  }

  @media (max-width: 480px) {
    .akiko-lp .ak-hero::before {
      background:
        url("ak-wc-mint.png") right -134px top -84px / 410px auto no-repeat,
        url("ak-wc-yellow.png") right -82px top -58px / 365px auto no-repeat,
        url("ak-wc-pink.png") right -128px top 48px / 370px auto no-repeat,
        url("ak-wc-coral.png") right -62px top 98px / 300px auto no-repeat,
        url("ak-wc-blue.png") right 62px top -78px / 280px auto no-repeat,

        url("ak-wc-coral.png") left -130px bottom -64px / 350px auto no-repeat,
        url("ak-wc-pink.png") left -62px bottom 48px / 270px auto no-repeat,
        url("ak-wc-yellow.png") left -52px bottom -48px / 300px auto no-repeat,
        url("ak-wc-mint.png") left -146px bottom -106px / 405px auto no-repeat,
        url("ak-wc-blue.png") left 44px bottom -92px / 278px auto no-repeat,

        url("ak-wc-dense-sparkles-sp.png") right -76px top -2px / 345px auto no-repeat,
        url("ak-wc-dense-sparkles-sp.png") left -108px bottom -24px / 320px auto no-repeat !important;
    }

    .akiko-lp .ak-kirakira-video-hero {
      opacity: .64 !important;
      filter: brightness(1.9) contrast(1.2) saturate(1.08) !important;
    }
  }

  @media (max-width: 390px) {
    .akiko-lp .ak-hero::before {
      background:
        url("ak-wc-mint.png") right -138px top -78px / 378px auto no-repeat,
        url("ak-wc-yellow.png") right -88px top -52px / 338px auto no-repeat,
        url("ak-wc-pink.png") right -132px top 56px / 332px auto no-repeat,
        url("ak-wc-coral.png") right -66px top 104px / 276px auto no-repeat,
        url("ak-wc-blue.png") right 52px top -70px / 258px auto no-repeat,

        url("ak-wc-coral.png") left -134px bottom -56px / 326px auto no-repeat,
        url("ak-wc-pink.png") left -68px bottom 56px / 252px auto no-repeat,
        url("ak-wc-yellow.png") left -58px bottom -42px / 278px auto no-repeat,
        url("ak-wc-mint.png") left -152px bottom -96px / 378px auto no-repeat,
        url("ak-wc-blue.png") left 34px bottom -82px / 258px auto no-repeat,

        url("ak-wc-dense-sparkles-sp.png") right -78px top 4px / 318px auto no-repeat,
        url("ak-wc-dense-sparkles-sp.png") left -110px bottom -18px / 294px auto no-repeat !important;
    }
  }


  /* =========================================================
     V11: 文章変更に伴う最小スタイル追加
     デザイン/UIは既存を維持
  ========================================================= */
  .akiko-lp .ak-reason-script {
    margin: 0 0 18px !important;
    font-family: "Noto Serif JP", serif !important;
    font-size: clamp(26px, 3vw, 42px) !important;
    line-height: 1.55 !important;
    letter-spacing: .08em !important;
    color: #a78328 !important;
    font-style: italic !important;
  }

  .akiko-lp .ak-course-flex-note {
    margin-top: 24px !important;
  }

  @media (max-width: 900px) {
    .akiko-lp .ak-reason-script {
      font-size: 25px !important;
      line-height: 1.65 !important;
    }
  }


  /* =========================================================
     V12: 受講者の声 実コメント差し替え
     UIは維持し、年代・性別表示だけ最小追加
  ========================================================= */
  .akiko-lp .ak-voice-meta {
    margin: 0 0 12px !important;
    color: #b09536 !important;
    font-size: 12px !important;
    letter-spacing: .08em !important;
    font-weight: 700 !important;
  }

  .akiko-lp .ak-voice-meta span {
    display: block !important;
    margin-top: 4px !important;
    color: #8a806f !important;
    font-size: 11px !important;
    letter-spacing: .04em !important;
    font-weight: 400 !important;
  }

  @media (max-width: 900px) {
    .akiko-lp .ak-voice-meta {
      font-size: 11px !important;
      margin-bottom: 8px !important;
    }
    .akiko-lp .ak-voice-meta span {
      font-size: 10px !important;
    }
  }

  /* =========================================================
     V1.6.0: Activity reports and Instagram pathways
  ========================================================= */
  .akiko-lp .ak-hero-actions .ak-instagram {
    flex-basis: 100%;
    width: max-content;
  }

  .ak-activity-reports { background: var(--ivory); }

  .ak-report-heading {
    text-align: center;
    margin-bottom: 42px;
  }
  .ak-report-heading .ak-section-lead {
    margin-left: auto;
    margin-right: auto;
  }
  .ak-report-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
  }
  .ak-report-card {
    background: var(--white);
    border: 1px solid var(--gray-light);
    box-shadow: var(--shadow);
    transition: transform .25s ease, box-shadow .25s ease;
  }
  .ak-report-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-strong);
  }
  .ak-report-card-link { display: block; height: 100%; }
  .ak-report-image {
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: linear-gradient(135deg, var(--ivory-deep), var(--gold-pale));
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .ak-report-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .4s ease;
  }
  .ak-report-card:hover .ak-report-image img { transform: scale(1.035); }
  .ak-report-image-placeholder {
    color: var(--gold);
    font-family: var(--font-serif);
    font-size: 16px;
    letter-spacing: .18em;
  }
  .ak-report-content { padding: 24px 24px 26px; }
  .ak-report-content time {
    display: block;
    color: var(--gold);
    font-size: 11px;
    letter-spacing: .12em;
    margin-bottom: 10px;
  }
  .ak-report-content h3 {
    color: var(--navy);
    font-family: var(--font-serif);
    font-size: 21px;
    font-weight: 400;
    line-height: 1.65;
    min-height: 3.3em;
  }
  .ak-report-more {
    display: inline-block;
    color: var(--gold);
    font-size: 11px;
    letter-spacing: .1em;
    margin-top: 18px;
  }
  .ak-report-empty {
    max-width: 720px;
    margin: 0 auto;
    padding: 42px 30px;
    text-align: center;
    background: var(--white);
    border: 1px solid var(--gray-light);
    box-shadow: var(--shadow);
    color: var(--gray);
    font-size: 14px;
    line-height: 2;
  }
  .ak-report-empty-title {
    color: var(--navy);
    font-family: var(--font-serif);
    font-size: 21px;
    margin-bottom: 14px;
  }
  .ak-report-empty p + p { margin-top: 8px; }
  .ak-report-all { margin-top: 34px; text-align: center; }
  .ak-report-all a {
    display: inline-block;
    padding-bottom: 6px;
    border-bottom: 1px solid var(--gold);
    color: var(--navy);
    font-size: 12px;
    letter-spacing: .12em;
  }
  .ak-final-actions {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    min-width: 220px;
  }
  .ak-final-actions .ak-btn-primary,
  .ak-final-actions .ak-instagram {
    justify-content: center;
    text-align: center;
  }
  .ak-final-actions .ak-instagram {
    padding: 13px 24px;
    border: 1px solid var(--gold);
    color: var(--gold);
  }

  @media (max-width: 900px) {
    .ak-report-grid { grid-template-columns: 1fr; gap: 18px; }
    .ak-report-content h3 { min-height: 0; }
    .ak-report-empty { padding: 34px 22px; }
    .ak-final-actions { width: 100%; min-width: 0; }
  }

  /* V1.7.0: Hero Instagram sizing */
  .akiko-lp .ak-hero-actions > .ak-instagram {
    flex: 0 0 auto !important;
    flex-basis: auto !important;
    width: auto !important;
    min-width: 240px;
    padding: 14px 28px !important;
    border: 1px solid rgba(184,149,90,.58) !important;
    justify-content: center;
    background: rgba(255,255,255,.12) !important;
  }

  /* V1.7.0: Activity report archive and article */
  .akiko-method-reports-page,
  .akiko-method-report-single {
    margin: 0;
    background: var(--ivory);
    color: var(--dark);
    font-family: var(--font-sans);
  }
  .ak-content-site { min-height: 100vh; background: var(--ivory); }
  .ak-content-header {
    height: 76px;
    padding: 0 clamp(24px, 5vw, 80px);
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: rgba(250,248,243,.96);
    border-bottom: 1px solid var(--gray-light);
  }
  .ak-content-logo {
    color: var(--navy);
    font-family: var(--font-serif);
    font-size: 21px;
    letter-spacing: .15em;
  }
  .ak-content-logo span { color: var(--gold); }
  .ak-content-header nav { display: flex; align-items: center; gap: 26px; }
  .ak-content-header nav a {
    color: var(--navy);
    font-size: 12px;
    letter-spacing: .1em;
  }
  .ak-content-header nav .ak-content-line {
    padding: 11px 22px;
    background: var(--navy);
    color: var(--white);
  }
  .ak-content-main,
  .ak-single-main {
    width: min(1180px, calc(100% - 48px));
    margin: 0 auto;
    padding: 82px 0 100px;
  }
  .ak-content-hero {
    text-align: center;
    margin-bottom: 58px;
  }
  .ak-content-hero::after {
    content: '';
    display: block;
    width: 56px;
    height: 1px;
    margin: 30px auto 0;
    background: var(--gold);
  }
  .ak-content-hero p,
  .ak-single-heading p {
    color: var(--gold);
    font-family: var(--font-serif);
    font-size: 13px;
    letter-spacing: .22em;
  }
  .ak-content-hero h1 {
    margin: 8px 0 14px;
    color: var(--navy);
    font-family: var(--font-serif);
    font-size: clamp(38px, 5vw, 58px);
    font-weight: 300;
    letter-spacing: .08em;
  }
  .ak-content-hero span { color: var(--gray); font-size: 14px; }
  .ak-content-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 26px;
  }
  .ak-content-card {
    background: var(--white);
    border: 1px solid var(--gray-light);
    box-shadow: var(--shadow);
    transition: transform .25s ease, box-shadow .25s ease;
  }
  .ak-content-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-strong); }
  .ak-content-card > a { display: block; height: 100%; }
  .ak-content-card-image {
    aspect-ratio: 16 / 10;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    background: linear-gradient(135deg, var(--ivory-deep), var(--gold-pale));
  }
  .ak-content-card-image img { width: 100%; height: 100%; object-fit: cover; }
  .ak-content-card-image span {
    color: var(--gold);
    font-family: var(--font-serif);
    letter-spacing: .18em;
  }
  .ak-content-card-body { padding: 25px; }
  .ak-content-card-body time,
  .ak-single-heading time {
    color: var(--gold);
    font-size: 11px;
    letter-spacing: .12em;
  }
  .ak-content-card-body h2 {
    margin: 10px 0 12px;
    color: var(--navy);
    font-family: var(--font-serif);
    font-size: 22px;
    font-weight: 400;
    line-height: 1.55;
  }
  .ak-content-card-body p { color: var(--gray); font-size: 13px; line-height: 1.9; }
  .ak-content-more {
    display: inline-block;
    margin-top: 18px;
    color: var(--gold);
    font-size: 11px;
    letter-spacing: .1em;
  }
  .ak-content-pagination { margin-top: 54px; text-align: center; }
  .ak-content-pagination .nav-links { display: flex; justify-content: center; gap: 8px; }
  .ak-content-pagination .page-numbers {
    min-width: 40px;
    padding: 8px 12px;
    border: 1px solid var(--gray-light);
    background: var(--white);
    color: var(--navy);
  }
  .ak-content-pagination .current { background: var(--navy); color: var(--white); }
  .ak-content-cta {
    padding: 46px clamp(24px, 7vw, 110px);
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
    background: var(--navy);
    color: var(--white);
  }
  .ak-content-cta h2 {
    font-family: var(--font-serif);
    font-size: 26px;
    font-weight: 400;
  }
  .ak-content-cta p { margin-top: 6px; color: rgba(255,255,255,.68); font-size: 13px; }
  .ak-content-cta > a {
    flex: 0 0 auto;
    padding: 15px 30px;
    background: var(--gold);
    color: var(--white);
    font-size: 12px;
    letter-spacing: .12em;
  }
  .ak-content-footer {
    padding: 30px 24px;
    text-align: center;
    background: var(--navy-deep);
    color: rgba(255,255,255,.38);
    font-size: 10px;
    letter-spacing: .1em;
  }
  .ak-single-article {
    max-width: 820px;
    margin: 0 auto;
    padding: 58px clamp(24px, 6vw, 72px);
    background: var(--white);
    border: 1px solid var(--gray-light);
    box-shadow: var(--shadow);
  }
  .ak-single-heading { text-align: center; margin-bottom: 38px; }
  .ak-single-heading time { display: block; margin: 15px 0 8px; }
  .ak-single-heading h1 {
    color: var(--navy);
    font-family: var(--font-serif);
    font-size: clamp(30px, 5vw, 46px);
    font-weight: 400;
    line-height: 1.5;
  }
  .ak-single-image { margin: 0 0 40px; }
  .ak-single-image img { width: 100%; height: auto; }
  .ak-single-body { color: #4f4b44; font-size: 15px; line-height: 2.05; }
  .ak-single-body > * + * { margin-top: 1.5em; }
  .ak-single-body h2,
  .ak-single-body h3 { color: var(--navy); font-family: var(--font-serif); }
  .ak-single-body a { color: var(--gold); text-decoration: underline; }
  .ak-single-back { margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--gray-light); }
  .ak-single-back a { color: var(--gold); font-size: 12px; letter-spacing: .08em; }

  @media (max-width: 900px) {
    .akiko-lp .ak-hero-actions > .ak-instagram {
      width: 100% !important;
      min-width: 0;
    }
    .ak-content-header { height: auto; min-height: 68px; padding: 12px 20px; }
    .ak-content-header nav { gap: 12px; }
    .ak-content-header nav > a:first-child { display: none; }
    .ak-content-header nav .ak-content-line { padding: 9px 13px; font-size: 10px; }
    .ak-content-main,
    .ak-single-main { width: min(100% - 36px, 680px); padding: 58px 0 72px; }
    .ak-content-hero { margin-bottom: 38px; }
    .ak-content-grid { grid-template-columns: 1fr; gap: 20px; }
    .ak-content-cta { flex-direction: column; align-items: stretch; text-align: center; }
    .ak-content-cta > a { text-align: center; }
    .ak-single-article { padding: 40px 22px; }
  }

  /* V1.7.1: ファーストビュー装飾枠の寸法を最終確定 */
  .akiko-lp .ak-hero::after {
    content: "" !important;
    position: absolute !important;
    top: 72px !important;
    right: 64px !important;
    bottom: 42px !important;
    left: 64px !important;
    width: auto !important;
    height: auto !important;
    border: 1px solid rgba(176,149,54,.24) !important;
    background: none !important;
    pointer-events: none !important;
    z-index: 2 !important;
  }

  @media (max-width: 900px) {
    .akiko-lp .ak-hero::after {
      top: 82px !important;
      right: 18px !important;
      bottom: 24px !important;
      left: 18px !important;
      width: auto !important;
      height: auto !important;
    }
  }
