:root{--ink:#1C1410;--body:#2A211B;--muted:#5A4D43;--brand:#C2410C;--brand-strong:#A53D08;--brand-hover:#963606;--brand-bright:#F97316;--brand-bright2:#FB923C;--cream:#FFF7ED;--cream2:#FFEDD5;--line:#EADDD0;--white:#FFFFFF;--footer-bg:#25190F;--footer-muted:#D9C3B0;--footer-link:#F2D4BC;--badge-bg:#FFEDD5;--badge-ink:#8A3208;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",YuGothic,Meiryo,"Noto Sans JP",sans-serif;--font-serif:Georgia,"Times New Roman","Hiragino Mincho ProN","Yu Mincho",YuMincho,"Noto Serif JP",serif;--maxw:1140px;--radius:16px;--radius-sm:10px;--shadow-sm:0 1px 2px rgba(28,20,16,0.06),0 2px 8px rgba(28,20,16,0.05);--shadow-md:0 6px 18px rgba(124,45,18,0.08),0 2px 6px rgba(28,20,16,0.06);--shadow-lg:0 18px 40px rgba(124,45,18,0.12),0 6px 14px rgba(28,20,16,0.07);--ring:0 0 0 3px rgba(165,61,8,0.45)}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;font-family:var(--font-sans);color:var(--body);background:var(--white);line-height:1.8;font-size:17px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,svg{display:block;max-width:100%;height:auto}a{color:var(--brand-strong);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px}a:hover{color:var(--brand-hover)}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid var(--brand-strong);outline-offset:2px;border-radius:4px}h1,h2,h3,h4{font-family:var(--font-serif);color:var(--ink);line-height:1.35;font-weight:700;margin:0 0 .6em}h1{font-size:clamp(2rem,5.4vw,3.05rem);letter-spacing:.01em}h2{font-size:clamp(1.5rem,3.4vw,2.05rem)}h3{font-size:clamp(1.18rem,2.2vw,1.4rem)}p{margin:0 0 1.1em}ul,ol{margin:0 0 1.1em;padding-left:1.4em}li{margin:.4em 0}strong{font-weight:700;color:var(--ink)}.container{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:clamp(20px,5vw,40px)}.skip-link{position:absolute;left:-999px;top:0;z-index:200;background:var(--brand);color:var(--white);padding:12px 18px;border-radius:0 0 var(--radius-sm) 0;font-weight:600;text-decoration:none}.skip-link:focus{left:0}main{display:block}section{padding-block:clamp(48px,7vw,88px)}.section-tint{background:var(--cream)}.section-tint2{background:linear-gradient(180deg,var(--cream) 0%,var(--white) 100%)}.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,0.92);backdrop-filter:saturate(1.4) blur(8px);-webkit-backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:74px}.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink);font-weight:700}.brand:hover{color:var(--ink)}.brand-mark{width:38px;height:38px;flex:0 0 auto}.brand-name{font-family:var(--font-serif);font-size:1.42rem;letter-spacing:.01em;line-height:1}.nav-toggle{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.nav-toggle-label{display:none}.site-nav ul{display:flex;align-items:center;gap:6px;list-style:none;margin:0;padding:0}.site-nav a,.nav-summary{display:inline-flex;align-items:center;gap:6px;padding:10px 14px;border-radius:var(--radius-sm);color:var(--body);text-decoration:none;font-weight:600;font-size:1rem;min-height:44px;cursor:pointer}.site-nav a:hover,.nav-summary:hover{background:var(--cream2);color:var(--brand-strong)}.nav-dropdown{position:relative}.nav-dropdown>summary{list-style:none}.nav-dropdown>summary::-webkit-details-marker{display:none}.nav-summary .caret{width:12px;height:12px;transition:transform .2s ease}.nav-dropdown[open] .caret{transform:rotate(180deg)}.nav-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:288px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:8px;display:flex;flex-direction:column;gap:2px;z-index:120}.nav-menu a{display:block;padding:11px 14px;border-radius:var(--radius-sm);font-weight:500;font-size:.96rem;line-height:1.5}.nav-menu a:hover{background:var(--cream)}body[data-nav="home"] .nav-home,body[data-nav="about"] .nav-about,body[data-nav="contact"] .nav-contact{color:var(--brand-strong);background:var(--cream2)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--font-sans);font-weight:700;font-size:1.02rem;line-height:1;text-decoration:none;border:none;cursor:pointer;border-radius:999px;padding:16px 30px;min-height:52px;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}.btn-primary{background:var(--brand);color:var(--white);box-shadow:var(--shadow-md)}.btn-primary:hover{background:var(--brand-hover);color:var(--white);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--white);color:var(--brand-strong);box-shadow:inset 0 0 0 2px var(--brand)}.btn-secondary:hover{background:var(--cream);color:var(--brand-hover);transform:translateY(-2px)}.btn .btn-arrow{width:18px;height:18px;transition:transform .18s ease}.btn:hover .btn-arrow{transform:translateX(3px)}.hero{position:relative;overflow:hidden;background:radial-gradient(1200px 520px at 78% 8%,var(--cream2) 0%,var(--cream) 42%,var(--white) 78%)}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,5vw,64px);align-items:center;padding-block:clamp(52px,8vw,104px)}.hero-eyebrow{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:.86rem;letter-spacing:.08em;text-transform:uppercase;color:var(--badge-ink);background:var(--badge-bg);padding:8px 16px;border-radius:999px;margin-bottom:22px}.hero h1{margin-bottom:.5em}.hero-lede{font-size:clamp(1.06rem,1.7vw,1.24rem);color:var(--muted);max-width:36ch;margin-bottom:1.8em}.hero-cta{display:flex;flex-wrap:wrap;gap:14px}.hero-art{position:relative}.hero-art img{width:100%;height:auto;filter:drop-shadow(0 24px 40px rgba(124,45,18,0.12))}.eyebrow{display:block;font-weight:700;font-size:.84rem;letter-spacing:.09em;text-transform:uppercase;color:var(--brand);margin-bottom:14px}.section-head{max-width:62ch;margin-bottom:clamp(32px,5vw,52px)}.section-head.center{margin-inline:auto;text-align:center}.section-head p{color:var(--muted);font-size:1.08rem;margin-bottom:0}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.value-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:30px 26px;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease}.value-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.value-icon{width:56px;height:56px;display:grid;place-items:center;border-radius:14px;background:var(--cream2);color:var(--brand);margin-bottom:18px}.value-icon svg{width:30px;height:30px}.value-card h3{font-size:1.16rem;margin-bottom:.5em}.value-card p{color:var(--muted);font-size:.97rem;margin-bottom:0;line-height:1.75}.cards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}@media (max-width:1080px){.cards-grid{grid-template-columns:repeat(2,1fr);gap:22px;max-width:760px;margin-inline:auto}}@media (max-width:680px){.cards-grid{grid-template-columns:1fr;max-width:420px}}.post-card{display:flex;flex-direction:column;background:var(--white);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease}.post-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.post-card-media{position:relative;aspect-ratio:16/9;background:var(--cream);overflow:hidden}.post-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.post-card:hover .post-card-media img{transform:scale(1.04)}.post-card-body{display:flex;flex-direction:column;flex:1;padding:24px 24px 26px;border:1px solid var(--line);border-top:none;border-radius:0 0 var(--radius) var(--radius)}.post-card-body h3{font-size:1.24rem;line-height:1.45;margin-bottom:.55em}.post-card-body h3 a{color:var(--ink);text-decoration:none}.post-card-body h3 a:hover{color:var(--brand-strong)}.post-card-excerpt{color:var(--muted);font-size:.98rem;line-height:1.74;margin-bottom:1.2em;flex:1}.post-card-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.86rem;color:var(--muted);padding-top:14px;border-top:1px solid var(--line)}.post-card-meta time{font-variant-numeric:tabular-nums}.read-more{display:inline-flex;align-items:center;gap:6px;font-weight:700;color:var(--brand-strong);text-decoration:none}.read-more .btn-arrow{width:16px;height:16px;transition:transform .18s ease}.read-more:hover .btn-arrow{transform:translateX(3px)}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,60px);align-items:center}.split-art{background:linear-gradient(135deg,var(--cream) 0%,var(--cream2) 100%);border-radius:var(--radius);padding:clamp(28px,5vw,48px);display:grid;place-items:center}.split-art img{max-width:340px;width:100%}.about-list{list-style:none;padding:0;margin:0 0 1.6em}.about-list li{position:relative;padding-left:34px;margin:.7em 0;color:var(--body)}.about-list li::before{content:"";position:absolute;left:0;top:.35em;width:20px;height:20px;border-radius:50%;background:var(--cream2);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3 3 7-7' fill='none' stroke='%23A53D08' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center}.page-hero{background:linear-gradient(180deg,var(--cream) 0%,var(--white) 100%);padding-block:clamp(46px,6vw,76px);border-bottom:1px solid var(--line)}.page-hero .container{max-width:780px}.page-hero h1{margin-bottom:.35em}.page-hero .lead{font-size:clamp(1.05rem,1.6vw,1.2rem);color:var(--muted);margin-bottom:0}.prose{max-width:760px;margin-inline:auto}.prose>p,.prose>ul,.prose>ol{font-size:1.06rem;color:var(--body)}.prose h2{margin-top:1.8em;padding-top:.2em}.prose h3{margin-top:1.5em}.prose h2:first-child,.prose h3:first-child{margin-top:0}.prose a{font-weight:600}.legal-meta{margin-top:2.6em;padding-top:1.3em;border-top:1px solid var(--line);font-size:.92rem;color:var(--muted)}.lead-answer{font-size:1.12rem;line-height:1.85;background:var(--cream);border-left:4px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:22px 26px;margin:0 0 1.8em;color:var(--body)}.tldr{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:24px 28px;margin:0 0 2em;box-shadow:var(--shadow-sm)}.tldr h2{font-size:1.1rem;margin:0 0 .5em;color:var(--brand-strong);text-transform:uppercase;letter-spacing:.05em;font-family:var(--font-sans)}.tldr ul{margin:0;padding-left:1.3em}.tldr li{margin:.45em 0;color:var(--body)}.callout{display:flex;gap:16px;background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;margin:1.8em 0}.callout .callout-icon{flex:0 0 auto;width:32px;height:32px;color:var(--brand)}.callout h3{font-size:1.06rem;margin:0 0 .4em;font-family:var(--font-sans);color:var(--ink)}.callout p{margin:0;color:var(--muted);font-size:.98rem}.callout-strong{background:var(--cream2);border-color:#F2C9A8}.table-wrap{overflow-x:auto;margin:1.8em 0;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}table{border-collapse:collapse;width:100%;min-width:480px;font-size:.98rem}caption{caption-side:top;text-align:left;font-weight:600;color:var(--muted);font-size:.92rem;padding:0 0 10px}th,td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--line);vertical-align:top}thead th{background:var(--cream2);color:var(--ink);font-weight:700;border-bottom:2px solid #F2C9A8}tbody tr:last-child td{border-bottom:none}tbody tr:nth-child(even){background:var(--cream)}.steps{counter-reset:step;list-style:none;padding:0;margin:1.6em 0}.steps>li{position:relative;padding:0 0 0 56px;margin:0 0 1.4em;min-height:40px}.steps>li::before{counter-increment:step;content:counter(step);position:absolute;left:0;top:0;width:38px;height:38px;display:grid;place-items:center;background:var(--brand);color:var(--white);font-weight:700;border-radius:50%;font-family:var(--font-serif)}.steps>li strong{display:block;margin-bottom:.2em}.faq{margin:1.6em 0}.faq details{border:1px solid var(--line);border-radius:var(--radius-sm);margin-bottom:12px;background:var(--white);overflow:hidden}.faq summary{list-style:none;cursor:pointer;padding:18px 52px 18px 22px;font-weight:600;color:var(--ink);position:relative;min-height:44px;display:flex;align-items:center}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"";position:absolute;right:22px;top:50%;width:12px;height:12px;border-right:2.4px solid var(--brand);border-bottom:2.4px solid var(--brand);transform:translateY(-65%) rotate(45deg);transition:transform .2s ease}.faq details[open] summary::after{transform:translateY(-35%) rotate(-135deg)}.faq details[open] summary{background:var(--cream)}.faq .faq-body{padding:4px 22px 20px;color:var(--body)}.faq .faq-body p:last-child{margin-bottom:0}.breadcrumb{padding-block:18px;font-size:.9rem;border-bottom:1px solid var(--line);background:var(--white)}.breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:0;margin:0}.breadcrumb li{display:flex;align-items:center;gap:8px;margin:0;color:var(--muted)}.breadcrumb a{color:var(--brand-strong);text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.breadcrumb .sep{color:var(--line);font-weight:700}.breadcrumb [aria-current]{color:var(--muted)}.article-header{padding-block:clamp(36px,5vw,58px) clamp(20px,3vw,30px)}.article-header .container{max-width:760px}.article-kicker{display:inline-block;font-weight:700;font-size:.82rem;letter-spacing:.07em;text-transform:uppercase;color:var(--brand);margin-bottom:14px}.article-header h1{margin-bottom:.5em}.article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;color:var(--muted);font-size:.92rem;margin-top:6px}.article-meta .author{font-weight:600;color:var(--body)}.article-figure{margin:clamp(24px,4vw,40px) auto;max-width:760px}.article-figure img{width:100%;border-radius:var(--radius);background:var(--cream);box-shadow:var(--shadow-sm)}.article-figure figcaption{margin-top:10px;font-size:.86rem;color:var(--muted);text-align:center}.related{border-top:1px solid var(--line)}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.related-card{display:block;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:22px;text-decoration:none;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease}.related-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.related-card .rc-kicker{font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--brand);display:block;margin-bottom:10px}.related-card h3{font-size:1.08rem;line-height:1.5;margin:0;color:var(--ink)}.related-card:hover h3{color:var(--brand-strong)}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:2em 0}.contact-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:30px 26px;text-align:center;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;align-items:center}.contact-card .cc-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:14px;background:var(--cream2);color:var(--brand);margin-bottom:16px}.contact-card .cc-icon svg{width:28px;height:28px}.contact-card h3{font-size:1.1rem;margin-bottom:.4em}.contact-card p{color:var(--muted);font-size:.95rem;margin-bottom:1em}.contact-card a{font-weight:600;word-break:break-word}.site-footer{background:var(--footer-bg);color:var(--footer-muted);padding-block:clamp(52px,6vw,72px) 30px;margin-top:0}.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:44px;border-bottom:1px solid rgba(255,255,255,0.1)}.footer-brand .brand-name{color:var(--white)}.footer-brand .brand{color:var(--white)}.footer-about{margin:18px 0 22px;color:var(--footer-muted);font-size:.96rem;line-height:1.8;max-width:34ch}.footer-col h4{color:var(--white);font-family:var(--font-sans);font-size:.82rem;letter-spacing:.09em;text-transform:uppercase;margin:0 0 18px;font-weight:700}.footer-col ul{list-style:none;padding:0;margin:0}.footer-col li{margin:.6em 0}.footer-col a{display:inline-block;padding:5px 2px;color:var(--footer-link);text-decoration:none;font-size:.97rem}.footer-col a:hover{color:var(--white);text-decoration:underline}.footer-contact a{display:inline-block;padding:5px 2px;color:var(--footer-link);text-decoration:none;font-weight:600}.footer-contact a:hover{color:var(--white)}.social-row{display:flex;gap:12px;margin-top:18px}.social-row a{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,0.22);color:var(--footer-link);transition:background-color .2s ease,border-color .2s ease,transform .2s ease}.social-row a:hover{background:var(--brand);border-color:var(--brand);color:var(--white);transform:translateY(-2px)}.social-row svg{width:19px;height:19px}.footer-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;padding-top:28px;font-size:.88rem;color:var(--footer-muted);text-align:center}.error-section{text-align:center;padding-block:clamp(60px,10vw,120px)}.error-section .err-art{width:140px;height:140px;margin:0 auto 28px}.error-code{font-family:var(--font-serif);font-size:clamp(3.4rem,12vw,6rem);color:var(--brand);line-height:1;margin:0 0 .1em}.error-section h1{font-size:clamp(1.5rem,4vw,2rem);margin-bottom:.5em}.error-section p{color:var(--muted);max-width:46ch;margin-inline:auto;margin-bottom:1.8em}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.text-center{text-align:center}.mt-cta{margin-top:clamp(32px,5vw,48px)}@media (max-width:980px){.footer-top{grid-template-columns:1fr 1fr;gap:34px}.footer-brand{grid-column:1 / -1}}@media (max-width:860px){.hero-grid{grid-template-columns:1fr;text-align:left}.hero-art{order:-1;max-width:420px;margin-inline:auto}.hero-lede{max-width:none}.values-grid{grid-template-columns:repeat(2,1fr)}.related-grid{grid-template-columns:1fr;gap:16px}.contact-cards{grid-template-columns:1fr;max-width:420px;margin-inline:auto}.split{grid-template-columns:1fr;gap:32px}.split-art{order:-1;max-width:380px;margin-inline:auto;width:100%}.nav-toggle-label{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--radius-sm);cursor:pointer;color:var(--ink)}.nav-toggle-label:hover{background:var(--cream2)}.nav-toggle:focus-visible ~ .nav-toggle-label{outline:3px solid var(--brand-strong);outline-offset:2px}.nav-toggle-label .bars{position:relative;width:24px;height:2px;background:currentColor;border-radius:2px;transition:background-color .2s ease}.nav-toggle-label .bars::before,.nav-toggle-label .bars::after{content:"";position:absolute;left:0;width:24px;height:2px;background:currentColor;border-radius:2px;transition:transform .25s ease}.nav-toggle-label .bars::before{top:-7px}.nav-toggle-label .bars::after{top:7px}.nav-toggle:checked ~ .nav-toggle-label .bars{background:transparent}.nav-toggle:checked ~ .nav-toggle-label .bars::before{transform:translateY(7px) rotate(45deg)}.nav-toggle:checked ~ .nav-toggle-label .bars::after{transform:translateY(-7px) rotate(-45deg)}.site-nav{position:fixed;inset:74px 0 auto 0;background:var(--white);border-bottom:1px solid var(--line);box-shadow:var(--shadow-lg);max-height:0;overflow:hidden;transition:max-height .3s ease;z-index:90}.nav-toggle:checked ~ .site-nav{max-height:calc(100vh - 74px);overflow-y:auto}.site-nav ul{flex-direction:column;align-items:stretch;gap:2px;padding:14px clamp(20px,5vw,40px) 22px}.site-nav a,.nav-summary{width:100%;justify-content:space-between;font-size:1.06rem;padding:14px 16px}.nav-dropdown{position:static}.nav-menu{position:static;box-shadow:none;border:none;border-left:2px solid var(--cream2);border-radius:0;margin:2px 0 6px 12px;padding:2px 0;min-width:0}.nav-menu a{font-size:1rem;padding:12px 16px}}@media (max-width:540px){body{font-size:16px}.values-grid{grid-template-columns:1fr;max-width:380px;margin-inline:auto}.hero-cta{flex-direction:column;align-items:stretch}.hero-cta .btn{width:100%}.footer-top{grid-template-columns:1fr;gap:30px}.footer-about{max-width:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}