/* ===== Page ===== */
.main{padding-top:64px;}
.breadcrumb{border-bottom:1px solid var(--border);background:var(--background);}
.breadcrumb ol{display:flex;align-items:center;gap:.5rem;padding:1rem 0;font-size:.875rem;color:var(--muted-foreground);}
.breadcrumb li{display:flex;align-items:center;}
.breadcrumb a:hover{color:var(--primary);}
.breadcrumb .icon{width:16px;height:16px;}
.breadcrumb .current{color:var(--foreground);font-weight:500;}
.title-band{background:var(--secondary);}
.title-band .container{padding:3.5rem 1rem;text-align:center;}
.title-en{font-size:.875rem;font-weight:500;color:var(--accent);letter-spacing:.1em;margin-bottom:.75rem;}
.title-ja{font-size:1.875rem;font-weight:700;color:var(--primary);}
.body-wrap{background:var(--background);padding:3.5rem 0;}
.doc{max-width:64rem;margin:0 auto;padding:2.5rem 1.5rem;}
.doc-intro{font-size:1.0625rem;line-height:2;color:var(--foreground);margin-bottom:3rem;}
.doc-section{margin-bottom:2.5rem;}
.doc-section:last-of-type{margin-bottom:0;}
.doc-section h2{font-size:1.125rem;font-weight:700;color:var(--primary);margin-bottom:1rem;}
.doc-section p{font-size:1.0625rem;line-height:2;color:var(--foreground);}
.doc-list{margin-top:1rem;display:flex;flex-direction:column;gap:.5rem;}
.doc-list li{display:flex;gap:.75rem;font-size:1.0625rem;line-height:2;color:var(--foreground);}
.doc-list .dot{margin-top:.85rem;width:6px;height:6px;flex-shrink:0;border-radius:9999px;background:var(--accent);}
.doc-after{margin-top:1rem;}
.contact-box{margin-top:1.25rem;border:1px solid var(--border);background:var(--secondary);border-radius:.5rem;padding:1.5rem;}
.contact-box .name{font-size:1.0625rem;font-weight:700;color:var(--primary);}
.contact-box p{font-size:1rem;line-height:1.7;color:var(--foreground);margin-top:.5rem;}
.contact-box p.name{margin-top:0;}
.signature{margin-top:3rem;border-top:1px solid var(--border);padding-top:1.5rem;text-align:right;font-size:1rem;line-height:1.7;color:var(--muted-foreground);}
.signature .rep{margin-top:.25rem;color:var(--foreground);font-weight:500;}
.page-cta{margin-top:3rem;text-align:center;}
.btn-cta{background:var(--accent);color:var(--accent-foreground);font-weight:700;padding:1.25rem 2.5rem;font-size:1rem;}
.btn-cta:hover{background:#b3661f;}
.btn-cta .icon{width:20px;height:20px;}


/* ===== Responsive (privacy page specific) ===== */
@media(min-width:1024px){
  .main{padding-top:80px;}
  .title-band .container{padding:5rem 1rem;}
  .title-ja{font-size:2.25rem;}
  .body-wrap{padding:5rem 0;}
  .doc{padding:3.5rem 3rem;}
  .doc-section h2{font-size:1.25rem;}
}
