:root{--ink:#173b4d;--muted:#506778;--accent:#117b72;--paper:#f3f7f9;--line:#d8e3e8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.85 'Yu Gothic','Meiryo',sans-serif}a{color:inherit}a:focus-visible,summary:focus-visible{outline:3px solid #117b72;outline-offset:5px}.wrap{max-width:1160px;margin:auto;padding:0 32px}.header{background:#fff;border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;min-height:88px;gap:24px}.brand{font-size:23px;font-weight:800;text-decoration:none;display:flex;align-items:center;gap:12px}.brand img{width:38px;height:38px}nav{display:flex;gap:28px;font-size:14px;font-weight:700}nav a{text-decoration:none}nav a:hover{color:var(--accent)}.hero{padding:84px 0 74px;display:grid;grid-template-columns:1.12fr 1fr;gap:54px;align-items:center}.eyebrow{font-size:14px;font-weight:800;letter-spacing:.12em;color:var(--accent);margin:0 0 20px}.product{font-size:20px;font-weight:800;margin-bottom:12px}h1{font-size:clamp(32px,3.8vw,48px);line-height:1.45;letter-spacing:-.04em;margin:0 0 24px}h2{font-size:30px;line-height:1.5;margin:0 0 22px}h3{font-size:20px;line-height:1.6;margin:0 0 12px}p{margin:0 0 18px}.lead{color:var(--muted);max-width:600px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button{display:inline-block;padding:12px 24px;border:1px solid var(--ink);border-radius:6px;font-weight:700;text-decoration:none;background:var(--ink);color:#fff}.button.light{color:var(--ink);background:#fff}.button:hover{background:var(--accent);border-color:var(--accent);color:#fff}.note{font-size:14px;color:var(--muted);margin-top:16px}.surface{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 20px 50px #153d5010}.surface-bar{background:var(--ink);color:#fff;padding:18px 22px;font-weight:700}.surface-body{padding:24px}.surface-caption{font-size:14px;color:var(--muted);margin:0 0 14px}.sample{width:100%;border-collapse:collapse;font-size:14px}.sample td,.sample th{text-align:left;padding:12px 8px;border-bottom:1px solid var(--line)}.sample th{background:#edf3f6;font-weight:700}.sample .changed{background:#def4eb;font-weight:700;color:#165946}.diff{background:#edf8f4;border-left:3px solid var(--accent);padding:15px 18px;margin-top:22px;font-size:14px}.diff strong{display:block;margin-bottom:4px}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 28px}.chip{padding:4px 12px;border:1px solid var(--line);background:#fff;border-radius:4px;font-size:14px}.section{padding:70px 0;border-top:1px solid var(--line)}.white{background:#fff}.section-intro{max-width:730px;color:var(--muted);margin-bottom:32px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.feature{padding:26px;border-top:3px solid var(--accent);background:var(--paper)}.number{color:var(--accent);font-size:14px;font-weight:800;margin-bottom:12px}.pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.plan{background:#fff;border:1px solid var(--line);border-radius:10px;padding:28px;display:flex;flex-direction:column}.plan.highlight{border:2px solid var(--accent)}.plan-label{font-size:14px;color:var(--accent);font-weight:800;min-height:26px}.price{font-size:36px;line-height:1.4;font-weight:800;margin:16px 0 4px}.price small{font-size:18px}.plan ul{padding-left:22px;margin-bottom:22px}.plan li{padding-bottom:8px}.status{margin-top:auto;padding:12px;background:#edf3f6;border-radius:5px;text-align:center;font-size:14px;font-weight:700}.upgrade{margin-top:22px;border-left:3px solid var(--accent);padding:18px 22px;background:#e7f3ee}.faq{max-width:900px}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-weight:700}details p{color:var(--muted);padding-top:18px;margin-bottom:4px}.contact{display:flex;align-items:center;justify-content:space-between;gap:36px}.contact p{max-width:700px;color:var(--muted)}footer{padding:32px 0;background:var(--ink);color:#fff;font-size:14px}.footer-row{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.empty-link{color:var(--muted)}@media(max-width:850px){.hero{grid-template-columns:1fr;padding-top:50px;gap:36px}.grid,.pricing{grid-template-columns:1fr}.nav{flex-wrap:wrap;padding-top:20px;padding-bottom:20px;gap:16px}nav{gap:18px;flex-wrap:wrap}.wrap{padding:0 22px}.section{padding:48px 0}.contact{display:block}.price{font-size:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.hero{display:block;max-width:1160px;padding-top:76px;padding-bottom:70px}.hero>div{max-width:860px}.hero h1{font-size:clamp(32px,4.3vw,54px)}.hero .lead{max-width:760px}
.home-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center}.home-hero h1{font-size:clamp(32px,3.2vw,44px)}.featured-tool{padding:28px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 40px #173b4d0c}.featured-tool .eyebrow{margin-bottom:8px}.featured-tool h2{margin-bottom:12px}.featured-tool>p:not(.eyebrow){color:var(--muted)}.featured-screen{display:block}.featured-screen img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:6px}.featured-caption{font-size:13px;margin:10px 0 18px}.featured-points{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.featured-points span{font-size:13px;padding:4px 9px;background:#edf7f3;border-radius:4px;color:var(--accent);font-weight:700}.featured-link{color:var(--accent);font-weight:700;text-underline-offset:4px}@media(max-width:850px){.home-hero{grid-template-columns:1fr;gap:32px;padding-top:46px;padding-bottom:46px}.featured-tool{max-width:560px;padding:24px}.home-hero h1{font-size:36px}}

.product-card{display:grid;grid-template-columns:1.8fr 1fr;gap:40px;background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:8px;padding:36px}.product-card h3{font-size:28px}.product-price{font-weight:800;font-size:22px;line-height:1.7}@media(max-width:850px){.product-card{grid-template-columns:1fr;padding:24px;gap:20px}}

[hidden]{display:none!important}.contact-page{max-width:950px;padding-top:54px;padding-bottom:70px}.contact-page h1{font-size:34px}.contact-page form{margin-top:28px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:32px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-page label{display:block;font-weight:700;margin-bottom:22px}.contact-page input,.contact-page select,.contact-page textarea{display:block;width:100%;font:inherit;color:var(--ink);background:white;border:1px solid #8c9fac;border-radius:5px;padding:10px 12px;margin-top:8px}.contact-page textarea{resize:vertical}.required,.optional{font-size:14px;margin-left:10px;color:var(--muted);font-weight:400}.field-help{font-size:14px;color:var(--muted)}fieldset{border:1px solid var(--line);padding:22px;margin:28px 0}legend{font-weight:700}.message-preview{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere}.setup-note{padding:18px;border-left:3px solid var(--accent);background:#e7f3ee}.trap{position:absolute;left:-9999px}.contact-page button{font:inherit;cursor:pointer}.contact-page button:disabled{opacity:.55;cursor:not-allowed}.contact-page input:focus-visible,.contact-page textarea:focus-visible,.contact-page select:focus-visible{outline:3px solid var(--accent);outline-offset:2px}@media(max-width:650px){.form-row{grid-template-columns:1fr;gap:0}.contact-page form{padding:22px}.contact-page h1{font-size:28px}}
.screen-example{margin:36px 0 48px;max-width:1000px}.screen-example img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:8px;background:#fff}.screen-example figcaption{margin-top:16px;color:var(--muted);font-size:16px}.screen-example figcaption strong{color:var(--ink)}.review-sample{background:#fff;border-left:4px solid var(--accent);padding:28px;margin:32px 0;max-width:1000px}
.contact-success{background:#fff;border:2px solid var(--accent);border-radius:10px;padding:32px;margin:28px 0}.contact-success h2{color:var(--accent);font-size:28px}.contact-success button{font:inherit;cursor:pointer}.contact-success .message-preview{background:var(--paper);padding:18px;border-radius:5px}@media(max-width:650px){.contact-success{padding:22px}.contact-success h2{font-size:24px}}

/* Small screens: readable Japanese headings and compact navigation. */
.hero-last{display:block}
@media(max-width:600px){
  .wrap{padding-left:20px;padding-right:20px}
  .nav{padding-top:14px;padding-bottom:14px;gap:12px;min-height:0}
  .brand{font-size:21px;gap:10px}
  .brand img{width:32px;height:32px}
  .nav nav{width:100%;justify-content:space-between;gap:8px;font-size:12px;line-height:1.5}
  .nav nav a{padding:6px 0}
  .home-hero{padding-top:30px;padding-bottom:36px;gap:28px}
  .home-hero .eyebrow{font-size:12px;margin-bottom:16px}
  .home-hero h1{font-size:clamp(26px,7.8vw,32px);line-height:1.4;letter-spacing:-.03em;margin-bottom:20px}
  .hero-first>span{display:block}
  .home-hero .lead{font-size:15px;line-height:1.9;margin-bottom:0}
  .home-hero .actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}
  .home-hero .actions .button{padding:11px 6px;text-align:center;font-size:14px;white-space:nowrap}
  .desktop-extra{display:none}
  .featured-tool{padding:20px;min-width:0}
  .featured-tool h2{font-size:25px}
  .featured-tool>p{font-size:14px}
  .section{padding-top:36px;padding-bottom:36px}
  h2{font-size:25px}
  .product-card{padding:20px;gap:18px}
  .product-card .chips{margin-bottom:18px;gap:6px}
  .chip{font-size:12px;padding:3px 8px}
  .product-card .lead{font-size:15px;line-height:1.9}
}

.screen-disclosure{padding:0;border:1px solid var(--line);border-radius:8px;background:#fff;margin:14px 0;overflow:hidden}
.screen-disclosure>summary{list-style:none;display:flex;align-items:center;gap:12px;padding:18px 22px;line-height:1.6}
.screen-disclosure>summary::-webkit-details-marker{display:none}
.screen-disclosure>summary::before{content:'▶';color:var(--accent);font-size:12px;transition:transform .2s ease;flex-shrink:0}
.screen-disclosure[open]>summary::before{transform:rotate(90deg)}
.screen-disclosure[open]>summary{border-bottom:1px solid var(--line)}
.screen-disclosure>summary:hover{background:#edf7f3}
.screen-reveal{padding:22px}
.screen-disclosure[open]>.screen-reveal{animation:screen-enter .25s ease-out both}
.screen-reveal .screen-example,.screen-reveal .review-sample{margin:0}
.featured-disclosure{margin:18px 0}
.featured-disclosure>summary{padding:12px;font-size:14px}
.featured-disclosure .screen-reveal{padding:12px}
@keyframes screen-enter{from{opacity:0;filter:blur(3px);transform:translateY(-6px)}to{opacity:1;filter:blur(0);transform:translateY(0)}}
@media(max-width:600px){.screen-disclosure>summary{padding:15px;font-size:15px}.screen-reveal{padding:15px}}
@media(prefers-reduced-motion:reduce){.screen-disclosure[open]>.screen-reveal{animation:none}.screen-disclosure>summary::before{transition:none}}

.product-heading-line{display:block}
@media(max-width:600px){
  .product-page .nav nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 8px}
  .product-page .nav nav a{text-align:center;padding:8px 4px;background:var(--paper);border-radius:4px;font-size:12px;white-space:nowrap}
  .product-hero{padding-top:24px;padding-bottom:32px}
  .product-hero .eyebrow{display:none}
  .product-hero .note{font-size:12px;margin:0 0 14px}
  .product-hero .product{font-size:19px;margin-bottom:14px}
  .product-hero h1{font-size:clamp(24px,7.2vw,30px);line-height:1.45;letter-spacing:-.03em;margin-bottom:20px}
  .product-heading-line>span{display:block}
  .product-hero .lead{font-size:15px;line-height:1.85;margin-bottom:16px}
  .product-hero .chips{margin:20px 0 0;gap:6px}
  .product-hero .actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:20px}
  .product-hero .button{padding:10px 14px;font-size:14px;text-align:center}
  .product-hero .actions+.note{margin:12px 0 0}
  .product-page .section-intro,.product-page .feature p,.product-page .plan p,.product-page .plan li,.product-page .faq p{font-size:15px;line-height:1.85}
  .product-page .feature{padding:22px}
  .product-page .plan{padding:22px}
}

.record-edit-example{margin-top:28px;margin-bottom:28px}
.record-edit-example>a{display:block;position:relative;border:1px solid var(--line);border-radius:8px;overflow:hidden;text-decoration:none;background:#fff}
.record-edit-example img{border:0;border-radius:0}
.screen-zoom-label{display:block;text-align:center;background:#edf7f3;padding:10px;color:var(--accent);font-size:14px;font-weight:700}
.record-edit-example>a:hover .screen-zoom-label{background:var(--accent);color:#fff}
@media(max-width:600px){.record-edit-example{margin-top:20px}.record-edit-example figcaption{font-size:14px;line-height:1.85}}
/* Sales disclosures share the existing site's typography and mobile spacing. */
.legal-page{max-width:900px;padding-top:40px;padding-bottom:64px;font-size:16px;line-height:1.9}
.legal-page h1{font-size:clamp(24px,4vw,34px);line-height:1.5}
.legal-page h2{font-size:22px;line-height:1.6;margin-top:32px}
.legal-draft{padding:18px;background:#fff5db;border-left:4px solid #b88319;border-radius:6px}
.legal-facts{display:grid;grid-template-columns:190px minmax(0,1fr);margin:28px 0}
.legal-facts dt,.legal-facts dd{margin:0;padding:18px 12px;border-bottom:1px solid #d5e1e8;overflow-wrap:anywhere}
.legal-facts dt{font-weight:700}
.legal-links{display:flex;flex-wrap:wrap;gap:12px 24px;padding:22px 0;font-size:14px}
.legal-links a{color:inherit;text-decoration:underline;text-underline-offset:4px}
@media(max-width:600px){.legal-page{padding-top:24px}.legal-facts{display:block}.legal-facts dt{border:0;padding-bottom:0}.legal-facts dd{padding-top:6px}.legal-links{flex-direction:column;gap:10px}}
