:root{--ink:#172e3a;--deep:#122d3b;--red:#cb664b;--sea:#416b69;--paper:#fbfaf6;--warm:#f2efe7;--line:#deded5;--muted:#5b6870;--white:#fff;--radius:6px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;color:var(--ink);background:var(--paper);line-height:1.9;font-size:15px}a{color:inherit;text-underline-offset:4px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #d38c49;outline-offset:3px}img{max-width:100%;height:auto;display:block}button{font:inherit;cursor:pointer}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{line-height:1.42;letter-spacing:.015em}h1{font-size:clamp(2rem,4vw,3.7rem)}h2{font-size:clamp(1.5rem,2.4vw,2.25rem)}h3{font-size:1.14rem}.wrap{width:min(1190px,calc(100% - 42px));margin-inline:auto}.skip{position:absolute;top:-120px;left:12px;z-index:120;background:#fff;padding:12px}.skip:focus{top:12px}.utility{background:var(--deep);color:#e4e9e3;font-size:.75rem;letter-spacing:.12em}.utility .wrap{display:flex;justify-content:space-between;padding:7px 0}.masthead{border-bottom:1px solid var(--line);background:#fff}.masthead-inner{display:flex;align-items:center;justify-content:space-between;gap:26px;padding:20px 0}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0}.brand-mark{width:43px;height:43px;border-radius:5px;background:var(--deep);color:#fff;font-weight:900;display:grid;place-items:center;font-family:Georgia,serif;font-size:1.55rem}.brand-name{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.5rem,2.2vw,2rem);line-height:1.1;font-weight:700;letter-spacing:-.045em}.brand-caption{display:block;font-size:.66rem;line-height:1.5;letter-spacing:.13em;color:var(--muted);font-family:inherit;font-weight:500;margin-top:4px}.nav{display:flex;align-items:center;gap:clamp(15px,2.3vw,35px);font-size:.87rem;font-weight:700}.nav a{text-decoration:none;white-space:nowrap;border-bottom:2px solid transparent;padding:8px 0}.nav a:hover,.nav a[aria-current="page"]{border-color:var(--red)}.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:7px 13px;border-radius:4px}.eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.15em;color:var(--red);text-transform:uppercase;margin:0 0 13px}.hero{display:grid;grid-template-columns:1.05fr .95fr;min-height:555px;background:var(--deep);color:#fff;margin-top:22px}.hero-copy{padding:clamp(30px,5.3vw,82px);display:flex;flex-direction:column;justify-content:center}.hero-copy h1{margin:0 0 18px;font-family:Georgia,"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:600;letter-spacing:.03em}.hero-copy>p:not(.eyebrow){max-width:540px;font-size:1rem;color:#dfebe7;line-height:2}.hero-image{position:relative;overflow:hidden;min-height:330px}.hero-image img{width:100%;height:100%;object-fit:cover}.hero-image:after{content:"";position:absolute;inset:0;border-left:1px solid #fff3}.hero-note{position:absolute;left:25px;bottom:24px;background:#fff;max-width:310px;padding:14px 18px;color:var(--ink);font-weight:700;font-size:.8rem;line-height:1.6;box-shadow:0 8px 24px #13293633}.btn{display:inline-flex;gap:12px;align-items:center;justify-content:center;width:fit-content;background:var(--red);color:#fff;text-decoration:none;border:0;padding:13px 23px;font-weight:800;line-height:1.55;font-size:.88rem;transition:transform .15s,background .15s}.btn:hover{background:#a94830;transform:translateY(-1px)}.btn-light{background:#fff;color:var(--deep)}.btn-light:hover{color:#fff}.hero .btn{margin-top:20px}.section{padding:64px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:25px;padding-bottom:17px;border-bottom:2px solid var(--ink)}.section-head h2{margin:0}.text-link{font-size:.84rem;font-weight:800;text-decoration:none;border-bottom:1px solid var(--red);padding-bottom:3px}.text-link:hover{color:var(--red)}.feature{display:grid;grid-template-columns:1.1fr .9fr;gap:35px;padding:18px 0 0}.feature .image-frame{aspect-ratio:1.6}.image-frame{overflow:hidden;background:#e6e9e4}.image-frame img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.card:hover .image-frame img,.feature:hover .image-frame img{transform:scale(1.025)}.feature-content{display:flex;flex-direction:column;justify-content:center;align-items:start}.feature-content h3{font-size:clamp(1.5rem,2.4vw,2.25rem);margin:9px 0 15px;line-height:1.45}.feature-content h3 a,.card h3 a{text-decoration:none}.feature-content h3 a:hover,.card h3 a:hover{color:var(--red)}.feature-content>p{color:var(--muted)}.meta{font-size:.75rem;color:var(--muted);letter-spacing:.025em;display:flex;gap:12px;flex-wrap:wrap}.tag{font-size:.72rem;color:#ac513a;font-weight:800;letter-spacing:.05em}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 23px}.card{min-width:0;padding-bottom:21px;border-bottom:1px solid var(--line)}.card .image-frame{aspect-ratio:1.67}.card .tag{display:block;margin:17px 0 8px}.card h3{margin:0 0 11px;font-size:1.15rem}.card p{font-size:.86rem;color:var(--muted);margin:0 0 11px}.section.tint{background:#f0f1ea}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.step{border-top:3px solid var(--deep);padding-top:18px}.step span{font-size:2rem;color:var(--red);font-family:Georgia,serif}.step h3{margin:7px 0}.step p{color:var(--muted);font-size:.9rem}.editorial-banner{background:var(--deep);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:28px;padding:45px clamp(25px,5vw,68px);margin:30px 0 0}.editorial-banner p{max-width:710px;color:#e1e8e5}.page-intro{padding:55px 0 33px;border-bottom:1px solid var(--line)}.page-intro h1{margin:8px 0 13px;font-family:Georgia,"Yu Mincho",serif;font-size:clamp(2.05rem,4vw,3.55rem)}.page-intro>p{font-size:1rem;color:var(--muted);max-width:780px}.breadcrumb{font-size:.78rem;color:var(--muted);padding:25px 0 0}.breadcrumb a{color:var(--sea)}.article-shell{display:grid;grid-template-columns:minmax(0,800px) minmax(220px,300px);gap:55px;align-items:start;padding:43px 0 65px}.article-header h1{font-family:Georgia,"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(2rem,3.4vw,3.15rem);margin:13px 0 18px;line-height:1.48}.article-header .deck{font-size:1.06rem;color:var(--muted);line-height:1.9}.article-cover{margin:28px 0 24px;aspect-ratio:1.67;width:100%;object-fit:cover;background:#e3e9e1}.prose{font-size:1rem;line-height:2.13;letter-spacing:.015em}.prose h2{font-size:1.49rem;margin:45px 0 18px;border-left:4px solid var(--red);padding-left:15px}.prose h3{margin:27px 0 8px}.prose p{margin:0 0 19px}.prose ul{padding-left:1.55em;margin:13px 0 26px}.prose li{margin-bottom:8px}.prose a{color:#176b70}.source-box{background:var(--warm);border-left:3px solid var(--sea);padding:20px 23px;margin:32px 0;font-size:.91rem}.source-box p{margin:4px 0}.sidebar{position:sticky;top:24px;border-top:3px solid var(--deep);padding-top:20px}.sidebar h2{font-size:1.07rem;margin:0 0 17px}.sidebar a{display:block;padding:14px 0;border-bottom:1px solid var(--line);font-size:.86rem;text-decoration:none;line-height:1.6}.sidebar a:hover{color:var(--red)}.sidebar .tag{display:block;margin-bottom:6px}.related{border-top:2px solid var(--ink);padding-top:23px;margin-top:42px}.related h2{font-size:1.35rem}.related-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.related-item{text-decoration:none;display:flex;gap:15px;align-items:center;border-bottom:1px solid var(--line);padding:8px 0 15px;font-weight:700;font-size:.85rem}.related-item img{width:96px;height:72px;object-fit:cover;flex-shrink:0}.related-item:hover{color:var(--red)}.content-page{max-width:850px;margin:0 auto;padding:43px 0 76px}.content-page .lead{font-size:1.07rem;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:23px}.content-page .info-panel{padding:20px 25px;border:1px solid var(--line);background:#fff;margin:23px 0}.info-panel dt{font-weight:800;font-size:.82rem;color:var(--sea);margin-top:14px}.info-panel dt:first-child{margin-top:0}.info-panel dd{margin:4px 0 0;overflow-wrap:anywhere}.content-page .prose{font-size:.97rem}.inline-cta{margin:34px 0 15px;padding:22px 25px;background:var(--warm)}.faq-item{border-bottom:1px solid var(--line);padding:9px 0}.faq-item h3{font-size:1.03rem;margin:8px 0 4px}.faq-item p{margin:0 0 12px;color:var(--muted)}.footer{background:#122c39;color:#e6ece8;padding:53px 0 23px}.footer-top{display:grid;grid-template-columns:1fr 1.45fr;gap:50px}.footer-brand{font-family:Georgia,serif;font-size:2rem;font-weight:700}.footer-caption{font-size:.85rem;max-width:310px;color:#c6d1cd}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);column-gap:18px;row-gap:6px}.footer-links a{font-size:.78rem;color:#e4ebe8;text-decoration:none;padding:4px 0}.footer-links a:hover,.footer-contact a:hover{color:#f7ad8d}.footer-contact{border-top:1px solid #ffffff33;margin-top:27px;padding-top:18px;display:grid;grid-template-columns:1fr 1fr;column-gap:25px;row-gap:9px;font-size:.75rem;color:#cbd6d1}.footer-contact a{color:#e4ebe8}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #ffffff33;padding-top:18px;margin-top:24px;font-size:.74rem;color:#b8c9c4}.cookie-link{background:none;border:0;color:#e4ebe8;text-decoration:underline;text-underline-offset:4px;padding:0;font-size:inherit}.cookie-banner{position:fixed;left:20px;bottom:20px;right:20px;max-width:850px;z-index:50;background:#fff;border:1px solid #d7ddd8;box-shadow:0 18px 60px #102f3c36;padding:22px 26px;display:none;grid-template-columns:1fr auto;gap:19px;align-items:center}.cookie-banner.is-visible{display:grid}.cookie-banner h2{font-size:1.07rem;margin:0 0 6px}.cookie-banner p{font-size:.81rem;color:var(--muted);line-height:1.65;margin:0}.cookie-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.cookie-actions button,.modal-actions button{border:1px solid #c8d2cd;padding:9px 12px;background:#fff;color:var(--ink);font-weight:700;font-size:.78rem}.cookie-actions button.primary,.modal-actions button.primary{background:var(--deep);color:white;border-color:var(--deep)}.cookie-actions button:hover,.modal-actions button:hover{border-color:var(--red)}.modal-backdrop{position:fixed;inset:0;background:#101f2a99;z-index:80;display:none;align-items:center;justify-content:center;padding:15px}.modal-backdrop.is-open{display:flex}.cookie-modal{width:min(100%,570px);max-height:90vh;overflow:auto;background:#fff;padding:27px;box-shadow:0 14px 70px #0004}.modal-header{display:flex;align-items:start;justify-content:space-between;gap:10px}.modal-header h2{margin:0 0 6px;font-size:1.35rem}.modal-header p{color:var(--muted);font-size:.82rem;line-height:1.7}.close{font-size:1.3rem;background:none;border:0;padding:0 7px}.toggle-row{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--line);padding:13px 0;font-size:.91rem}.toggle-row strong{display:block}.toggle-row small{display:block;color:var(--muted);font-size:.74rem;line-height:1.6}.toggle-row input{width:20px;height:20px;accent-color:var(--sea);flex-shrink:0}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:17px}.status-msg{font-size:.75rem;color:var(--sea);margin:9px 0 0}.empty-state{padding:25px;border:1px solid var(--line)}@media(max-width:900px){.hero{min-height:440px}.hero-copy{padding:36px}.feature{gap:25px}.article-shell{grid-template-columns:minmax(0,1fr) 230px;gap:26px}.footer-links{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.wrap{width:calc(100% - 30px)}.utility .wrap span:last-child{display:none}.masthead-inner{padding:13px 0}.brand-mark{width:37px;height:37px}.brand-name{font-size:1.55rem}.menu-toggle{display:block}.nav{display:none;position:absolute;top:101px;left:0;right:0;z-index:35;background:#fff;border-bottom:1px solid var(--line);padding:17px 24px;box-shadow:0 12px 24px #122c3926;flex-direction:column;align-items:stretch;gap:6px}.nav.is-open{display:flex}.nav a{padding:9px 0}.hero{grid-template-columns:1fr;margin-top:14px}.hero-copy{padding:40px 25px}.hero-image{min-height:265px;height:300px}.hero-image img{object-position:50% 35%}.section{padding:42px 0}.feature{grid-template-columns:1fr}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.steps{grid-template-columns:1fr}.editorial-banner{flex-direction:column;align-items:start}.page-intro{padding-top:33px}.article-shell{display:block;padding:25px 0 46px}.sidebar{position:static;margin-top:35px}.related-row{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr;gap:24px}.footer-contact{grid-template-columns:1fr}.cookie-banner{left:10px;right:10px;bottom:10px;grid-template-columns:1fr;padding:18px}.cookie-actions{justify-content:start}.cookie-actions button{flex:1 1 auto}}@media(max-width:430px){.cards{grid-template-columns:1fr}.hero-copy h1{font-size:2.2rem}.section-head{align-items:start}.cookie-actions button{flex:1 1 100%}.footer-links{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-caption{font-size:.6rem}.related-item img{width:78px;height:62px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
