
:root{--ink:#20252b;--muted:#68717c;--line:#e5e8ec;--paper:#fff;--soft:#f6f7f8;--accent:#7b2e43;--accent2:#592333}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;line-height:1.75}
a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:2px}a:hover{color:var(--accent2)}
.ad-disclosure{background:#22272e;color:#fff;font-size:.9rem;padding:.5rem 0}.ad-disclosure strong{letter-spacing:.04em}.ad-disclosure a{color:#fff}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.98);border-bottom:1px solid var(--line)}
.brand-wrap{display:flex;align-items:center;gap:.8rem}.brand{font-size:1.45rem;font-weight:800;letter-spacing:.08em;color:var(--ink)}.brand-sub{font-size:.82rem;color:var(--muted);line-height:1.2}.brand-domain{display:block;font-size:.76rem}
.navbar-nav .nav-link{color:#39414a;font-weight:600}.navbar-nav .nav-link:hover{color:var(--accent)}
.hero{padding:4.5rem 0 3rem;background:linear-gradient(180deg,#fafafa,#fff)}.eyebrow{font-weight:700;color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-size:.82rem}.hero h1{font-size:clamp(2rem,4vw,3.8rem);line-height:1.25;letter-spacing:-.02em;margin:.6rem 0 1.2rem}.lead-copy{font-size:1.12rem;color:#4f5862;max-width:46rem}.hero-img{border-radius:1rem;width:100%;height:auto;box-shadow:0 16px 40px rgba(0,0,0,.10)}
.section{padding:4rem 0}.section-soft{background:var(--soft)}.section-title{font-size:clamp(1.6rem,3vw,2.25rem);margin-bottom:1rem}.section-intro{color:var(--muted);max-width:48rem}.card-clean{height:100%;border:1px solid var(--line);border-radius:.9rem;background:#fff;padding:1.5rem}.card-clean h3{font-size:1.12rem}.number{display:inline-flex;width:2rem;height:2rem;align-items:center;justify-content:center;border-radius:50%;background:#f0e6ea;color:var(--accent);font-weight:800;margin-bottom:.8rem}
.content-img{width:100%;border-radius:.9rem}.checklist{padding-left:1.2rem}.checklist li{margin:.55rem 0}.notice{border-left:4px solid var(--accent);background:#faf6f7;padding:1.15rem 1.25rem;border-radius:.25rem}.external-box{border:1px solid var(--line);border-radius:1rem;padding:1.5rem;background:#fff}.btn-primary-custom{display:inline-block;background:var(--accent);border:1px solid var(--accent);color:#fff;text-decoration:none;border-radius:.55rem;padding:.8rem 1.15rem;font-weight:700}.btn-primary-custom:hover{background:var(--accent2);border-color:var(--accent2);color:#fff}.btn-outline-custom{display:inline-block;border:1px solid #b4bac1;color:#303740;text-decoration:none;border-radius:.55rem;padding:.75rem 1.05rem;font-weight:700}.btn-outline-custom:hover{background:#f3f4f5;color:#20252b}
.contact-card{border:2px solid #dadde1;border-radius:1rem;padding:1.75rem;background:#fff}.contact-card .email{font-size:1.15rem;font-weight:700;word-break:break-word}.contact-meta{margin:0;color:var(--muted)}
.page-hero{padding:3rem 0 1.5rem;background:#fafafa;border-bottom:1px solid var(--line)}.page-main{padding:3rem 0 4rem}.legal h2{font-size:1.25rem;margin-top:2rem}.legal p,.legal li{color:#48515b}
.site-footer{border-top:1px solid var(--line);background:#20252b;color:#d9dee3;padding:3rem 0 1.5rem}.site-footer h2,.site-footer h3{color:#fff}.site-footer a{color:#fff}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin:.45rem 0}.fineprint{color:#aeb6bf;font-size:.88rem;border-top:1px solid #3b424a;margin-top:2rem;padding-top:1.3rem}.source-note{font-size:.92rem;color:#5c6670;background:#f7f8f9;border:1px solid var(--line);border-radius:.6rem;padding:.85rem 1rem}
@media(max-width:767.98px){.hero{padding:3rem 0 2rem}.hero-img{margin-top:1.5rem}.section{padding:3rem 0}.brand-sub{display:none}}

/* Outbrain compliance: Contact Us must be plainly visible and clickable without JavaScript. */
.ob-contact-required{background:#fff;border-top:1px solid #e6e8eb;border-bottom:1px solid #e6e8eb;padding:1.25rem 0}
.ob-contact-required__inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}
.ob-contact-required h2{font-size:1.4rem;margin:.15rem 0 .4rem}
.ob-contact-required a{font-weight:700}
@media(max-width:767.98px){.ob-contact-required__inner{display:block}.ob-contact-required__action{margin-top:1rem}}


/* Explicit Outbrain/Japan company disclosure requested by reviewer */
.ob-required-company{padding:1.5rem 0;background:#f8f6f7;border-bottom:1px solid var(--line)}
.ob-required-company__card{background:#fff;border:2px solid #c8ccd1;border-radius:1rem;padding:1.5rem;box-shadow:0 6px 20px rgba(0,0,0,.04)}
.ob-required-company h2{font-size:1.55rem;margin:.25rem 0 .7rem}
.ob-company-intro{color:#4f5862;max-width:60rem}
.ob-company-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.2rem 0 1rem}
.ob-company-grid>div{border:1px solid var(--line);border-radius:.65rem;padding:1rem;background:#fff}
.ob-company-grid dt{font-weight:800;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:#4f5862;margin-bottom:.25rem}
.ob-company-grid dd{margin:0;font-size:1.02rem;font-weight:650;color:#20252b;word-break:break-word}
.ob-company-grid dd span{font-size:.9rem;font-weight:500;color:#68717c}
.ob-company-extra{border-top:1px solid var(--line);padding-top:.9rem;margin-top:.3rem}
.ob-company-extra p{margin:.25rem 0}
.ob-company-actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1rem}
.company-table{width:100%;border-collapse:collapse;margin:1.2rem 0}.company-table th,.company-table td{border:1px solid var(--line);padding:.9rem;vertical-align:top;text-align:left}.company-table th{width:30%;background:#f7f8f9;font-weight:800}.footer-note{font-size:.86rem;color:#aeb6bf}
@media(max-width:767.98px){.ob-company-grid{grid-template-columns:1fr}.company-table th{width:auto;display:block;border-bottom:0}.company-table td{display:block}.ob-required-company__card{padding:1.15rem}}
