:root{color-scheme:light;--color-bg: #f8fafc;--color-surface: #ffffff;--color-text: #0f172a;--color-muted: #64748b;--color-border: #e2e8f0;--color-navy: #0f2744;--color-navy-soft: #1e3a5f;--color-blue: #2563eb;--color-blue-soft: #dbeafe;--color-accent: #0d9488;--color-accent-soft: #ccfbf1;--shadow-sm: 0 1px 2px rgb(15 23 42 / 6%);--shadow-md: 0 12px 40px rgb(15 39 68 / 10%);--radius-sm: 8px;--radius-md: 14px;--radius-lg: 22px;--container: 1120px;--header-h: 72px;--font-sans: "Noto Sans JP", system-ui, -apple-system, "Segoe UI", sans-serif;--ease-out: cubic-bezier(.22, 1, .36, 1)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);font-size:16px;line-height:1.75;color:var(--color-text);background:var(--color-bg);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}img,svg{max-width:100%;height:auto}a{color:var(--color-blue);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--color-navy)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.skip-link{position:absolute;left:-9999px;top:8px;z-index:1000;padding:10px 14px;background:var(--color-navy);color:#fff;border-radius:var(--radius-sm)}.skip-link:focus{left:12px}.container{width:min(100% - 40px,var(--container));margin-inline:auto}.section{padding-block:clamp(56px,8vw,96px)}.section--tight{padding-block:clamp(40px,6vw,72px)}.section__title{margin:0 0 12px;font-size:clamp(1.5rem,2.4vw,2rem);font-weight:700;letter-spacing:.02em;color:var(--color-navy)}.section__lead{margin:0 0 40px;max-width:62ch;color:var(--color-muted);font-size:1.05rem}.surface{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border-radius:999px;font-weight:600;font-size:.95rem;border:1px solid transparent;cursor:pointer;text-decoration:none;transition:transform .16s var(--ease-out),background .16s var(--ease-out),border-color .16s var(--ease-out),color .16s var(--ease-out)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn--primary{background:var(--color-navy);color:#fff}.btn--primary:hover:not(:disabled){background:var(--color-navy-soft);transform:translateY(-1px)}.btn--secondary{background:#fff;color:var(--color-navy);border-color:var(--color-border)}.btn--secondary:hover:not(:disabled){border-color:var(--color-blue);color:var(--color-blue);transform:translateY(-1px)}.btn--ghost{background:transparent;color:var(--color-navy);border-color:transparent}.link-arrow{font-weight:600;color:var(--color-blue);text-decoration:none}.link-arrow:hover{text-decoration:underline}.grid-cards{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.card{padding:24px;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);transition:transform .2s var(--ease-out),box-shadow .2s var(--ease-out)}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.card__title{margin:0 0 10px;font-size:1.1rem;font-weight:700;color:var(--color-navy)}.card__text{margin:0;color:var(--color-muted);font-size:.98rem}.tag{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:.78rem;font-weight:600;letter-spacing:.04em;background:var(--color-blue-soft);color:var(--color-navy)}.divider{height:1px;background:var(--color-border);border:0;margin:0}.page-hero{padding-block:clamp(40px,6vw,64px);background:linear-gradient(135deg,#0f27440f,#2563eb14 45%,#0d948814);border-bottom:1px solid var(--color-border)}.page-hero__title{margin:0 0 12px;font-size:clamp(1.75rem,3vw,2.25rem);font-weight:700;color:var(--color-navy)}.page-hero__lead{margin:0;max-width:62ch;color:var(--color-muted)}.prose{max-width:72ch}.prose h2{margin-top:2rem;font-size:1.25rem;color:var(--color-navy)}.prose p,.prose li{color:var(--color-text)}.faq-item{padding:20px 0;border-bottom:1px solid var(--color-border)}.faq-item:last-child{border-bottom:none}.faq-item__q{margin:0 0 8px;font-weight:700;color:var(--color-navy)}.faq-item__a{margin:0;color:var(--color-muted)}.form-field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.form-label{font-weight:600;font-size:.92rem;color:var(--color-navy)}.form-label__optional{margin-left:6px;font-weight:500;color:var(--color-muted);font-size:.85rem}.form-input,.form-select,.form-textarea{width:100%;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--color-border);font:inherit;background:#fff;transition:border-color .16s var(--ease-out)}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-blue);outline:none;box-shadow:0 0 0 3px #2563eb26}.form-textarea{min-height:160px;resize:vertical}.form-error{margin:0;font-size:.85rem;color:#b91c1c}.form-hint{margin:0;font-size:.85rem;color:var(--color-muted)}.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.flow-hero{position:relative;overflow:clip;padding-block:clamp(44px,7vw,84px);background:radial-gradient(circle at top left,rgb(13 148 136 / 15%),transparent 38%),radial-gradient(circle at bottom right,rgb(37 99 235 / 15%),transparent 34%),linear-gradient(180deg,#f7fbff,#eef6ff);border-bottom:1px solid var(--color-border)}.flow-hero__grid{display:grid;gap:clamp(28px,4vw,52px);align-items:center;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr)}.flow-hero__title{margin:14px 0 16px;font-size:clamp(2.25rem,4vw,3.5rem);line-height:1.08;letter-spacing:-.03em;color:var(--color-navy)}.flow-hero__lead{margin:0;max-width:60ch;font-size:1.05rem;color:var(--color-muted)}.flow-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.flow-hero__promise-grid{display:grid;gap:16px;margin-top:28px;grid-template-columns:repeat(3,minmax(0,1fr))}.flow-promise-card{padding:18px;background:#ffffffd1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.flow-promise-card__title{margin:0 0 10px;font-size:1rem;color:var(--color-navy)}.flow-promise-card__body{margin:0;color:var(--color-muted);font-size:.94rem}.flow-hero__visual{position:relative;min-height:520px}.flow-photo-card{position:absolute;overflow:hidden;border:1px solid rgb(255 255 255 / 80%);border-radius:28px;box-shadow:0 28px 80px #0f27442e;background:#fff}.flow-photo-card--main{top:0;right:64px;bottom:90px;left:0}.flow-photo-card--sub{width:min(44%,240px);right:0;bottom:28px;aspect-ratio:.92}.flow-photo-card__image{display:block;width:100%;height:100%;object-fit:cover}.flow-hero__snapshot{position:absolute;left:24px;bottom:20px;max-width:300px;padding:20px 22px;background:#ffffffe5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.flow-hero__snapshot-label,.flow-overview__eyebrow{margin:0 0 8px;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--color-accent)}.flow-hero__snapshot-list{margin:0;padding-left:18px;color:var(--color-text)}.flow-overview{display:grid;gap:24px;padding:clamp(24px,4vw,36px);grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);align-items:center}.flow-overview__stats{display:grid;gap:12px}.flow-stat-card{display:grid;gap:4px;padding:16px 18px;border-radius:var(--radius-md);background:linear-gradient(135deg,#f8fbff,#eef7ff);border:1px solid var(--color-border)}.flow-stat-card strong{color:var(--color-navy);font-size:1rem;text-transform:uppercase;letter-spacing:.04em}.flow-stat-card span{color:var(--color-muted);font-size:.94rem}.flow-section-heading{margin-bottom:28px}.flow-step-list{list-style:none;margin:0;padding:0;display:grid;gap:28px}.flow-step-card{display:grid;gap:22px;align-items:stretch;grid-template-columns:minmax(250px,.9fr) minmax(0,1.1fr)}.flow-step-card--reverse{grid-template-columns:minmax(0,1.1fr) minmax(250px,.9fr)}.flow-step-card--reverse .flow-step-card__media{order:2}.flow-step-card--reverse .flow-step-card__body{order:1}.flow-step-card__media{overflow:hidden;min-height:100%;border-radius:28px;box-shadow:var(--shadow-md)}.flow-step-card__image{display:block;width:100%;height:100%;min-height:340px;object-fit:cover}.flow-step-card__body{padding:clamp(22px,3vw,30px)}.flow-step-card__header{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start}.flow-step-card__step{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:18px;background:linear-gradient(135deg,var(--color-navy),var(--color-blue));color:#fff;font-size:.88rem;font-weight:800;letter-spacing:.08em}.flow-step-card__label{margin:2px 0 6px;font-size:.84rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent)}.flow-step-card__title{margin:0;font-size:clamp(1.3rem,2vw,1.7rem);line-height:1.3;color:var(--color-navy)}.flow-step-card__duration{margin:18px 0 0;color:var(--color-blue);font-weight:700;font-size:.92rem}.flow-step-card__summary{margin:14px 0 0;color:var(--color-muted)}.flow-step-card__list{margin:18px 0 0;padding-left:20px;color:var(--color-text)}.flow-step-card__list li+li{margin-top:8px}.flow-step-card__output{margin:20px 0 0;padding:14px 16px;border-radius:var(--radius-md);background:linear-gradient(135deg,#2563eb14,#0d948817);color:var(--color-navy)}.flow-support{background:linear-gradient(180deg,#0f274408,#fffffff2);border-block:1px solid var(--color-border)}.flow-cta{display:grid;gap:24px;padding:clamp(24px,4vw,36px);align-items:center;grid-template-columns:minmax(0,1fr) auto}.flow-cta__actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.flow-photo-credit{margin:18px 0 0;color:var(--color-muted);font-size:.88rem}@media(max-width:960px){.flow-hero__grid,.flow-overview,.flow-step-card,.flow-step-card--reverse,.flow-cta,.flow-hero__promise-grid{grid-template-columns:1fr}.flow-hero__visual{min-height:460px}.flow-step-card--reverse .flow-step-card__media,.flow-step-card--reverse .flow-step-card__body{order:initial}.flow-cta__actions{justify-content:flex-start}}@media(max-width:700px){.flow-hero__visual{min-height:auto;display:grid;gap:16px}.flow-photo-card,.flow-hero__snapshot{position:relative;inset:auto;width:auto;max-width:none}.flow-photo-card--main,.flow-photo-card--sub{aspect-ratio:1.15}.flow-step-card__image{min-height:260px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
