:root{--bg: #ffffff;--bg-alt: #f5f9fa;--accent: #7dcec5;--accent-soft: #dcefe9;--accent-ink: #4fb3a7;--gold: #d4a24c;--gold-light: #e8c891;--text: #333333;--heading: #1a1a1a;--dark: #0f2a2c;--line: #e8efed;--mute: #6b6b6b}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Noto Sans JP,Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:15px;line-height:2;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-feature-settings:"palt" 1;overflow-x:hidden}h1,h2,h3,h4,h5{color:var(--heading);letter-spacing:.02em}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{max-width:1160px;margin:0 auto;padding:0 40px}header{position:fixed;top:0;left:0;right:0;height:80px;background:#fffffff5;backdrop-filter:saturate(1.4) blur(8px);-webkit-backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--line);z-index:100;display:flex;align-items:center}body{padding-top:80px}.nav-wrap{width:100%;max-width:1280px;margin:0 auto;padding:0 40px;display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center}.logo img{height:44px;width:auto;display:block}nav ul{display:flex;list-style:none;gap:36px;align-items:center}nav a{font-size:16px;letter-spacing:1.5px;color:var(--heading);font-weight:600;text-transform:uppercase;position:relative;padding:6px 0;transition:color .2s}nav a:hover{color:var(--accent-ink)}nav a:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .3s}nav a:hover:after{transform:scaleX(1)}nav li.has-dropdown{position:relative}nav li.has-dropdown>a{cursor:pointer;display:inline-flex;align-items:center;gap:6px}nav li.has-dropdown>a:before{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .25s ease;order:2;opacity:.55}nav li.has-dropdown.open>a:before,nav li.has-dropdown:hover>a:before{transform:translateY(1px) rotate(-135deg);opacity:1}.svc-dropdown{position:absolute;top:calc(100% + 14px);left:50%;transform:translate(-50%) translateY(-6px);min-width:360px;background:#fff;border:1px solid var(--line);border-radius:4px;box-shadow:0 18px 48px #1a36331f,0 2px 6px #1a36330f;padding:10px;opacity:0;pointer-events:none;transition:opacity .22s ease,transform .22s ease;z-index:100}.svc-dropdown:before{content:"";position:absolute;top:-6px;left:50%;width:10px;height:10px;background:#fff;border-top:1px solid var(--line);border-left:1px solid var(--line);transform:translate(-50%) rotate(45deg)}nav li.has-dropdown:hover .svc-dropdown,nav li.has-dropdown.open .svc-dropdown{opacity:1;pointer-events:auto;transform:translate(-50%) translateY(0)}nav li.has-dropdown:after{content:"";position:absolute;top:100%;left:0;right:0;height:18px;pointer-events:none}nav li.has-dropdown:hover:after,nav li.has-dropdown.open:after{pointer-events:auto}.svc-dropdown a{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:14px;padding:14px 16px;border-radius:3px;text-decoration:none;letter-spacing:0;text-transform:none;font-size:14px;color:var(--heading);transition:background .2s ease}.svc-dropdown a:after{display:none}.svc-dropdown a:hover{background:#f3f8f7}.svc-dropdown .svc-num{font-family:Inter,sans-serif;font-size:11px;letter-spacing:2px;color:var(--accent);font-weight:600;padding-top:2px}.svc-dropdown .svc-body{display:flex;flex-direction:column;gap:3px;min-width:0}.svc-dropdown .svc-title{font-size:15px;font-weight:700;letter-spacing:.04em;color:var(--heading)}.svc-dropdown .svc-sub{font-family:Inter,sans-serif;font-size:11px;letter-spacing:1.5px;color:var(--mute);font-weight:500}.svc-dropdown .svc-arr{font-family:Inter,sans-serif;color:var(--accent);font-size:16px;transition:transform .2s ease}.svc-dropdown a:hover .svc-arr{transform:translate(4px)}.cta{display:inline-flex;align-items:center;gap:10px;height:44px;padding:0 26px;border-radius:50px;background:var(--accent);color:#fff;font-size:12px;letter-spacing:3px;font-weight:600;text-transform:uppercase;transition:all .25s ease;border:1px solid var(--accent);white-space:nowrap}.cta:hover{background:var(--accent-ink);border-color:var(--accent-ink);transform:translateY(-1px)}.cta.lg{height:60px;padding:0 44px;font-size:20px;letter-spacing:2px;font-weight:900;font-family:Inter,Yu Gothic,Yu Gothic Medium,游ゴシック,YuGothic,Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;-webkit-text-stroke:.4px currentColor}.cta .arr{font-family:Inter;font-weight:400}.nav-hamburger{display:none;width:44px;height:44px;background:transparent;border:1px solid var(--line);border-radius:6px;cursor:pointer;padding:0;flex-direction:column;align-items:center;justify-content:center;gap:5px;transition:background .2s ease,border-color .2s ease;-webkit-tap-highlight-color:transparent}.nav-hamburger:hover{background:#f3f8f7;border-color:var(--accent)}.nav-hamburger .nav-hamburger-bar{width:20px;height:2px;background:var(--heading);border-radius:2px;transition:transform .25s ease,opacity .25s ease}.nav-hamburger[aria-expanded=true] .nav-hamburger-bar:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-hamburger[aria-expanded=true] .nav-hamburger-bar:nth-child(2){opacity:0}.nav-hamburger[aria-expanded=true] .nav-hamburger-bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-mobile-panel{position:fixed;top:80px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 20px 48px #1a363314;z-index:99;max-height:calc(100vh - 80px);overflow-y:auto;transform:translateY(-12px);opacity:0;pointer-events:none;transition:transform .3s ease,opacity .3s ease;visibility:hidden}.nav-mobile-panel.is-open{transform:translateY(0);opacity:1;pointer-events:auto;visibility:visible}.nav-mobile-list{list-style:none;padding:16px 0;margin:0}.nav-mobile-list>li{border-bottom:1px solid var(--line)}.nav-mobile-list>li:last-child{border-bottom:none}.nav-mobile-list>li>a{display:block;padding:18px 28px;font-size:15px;font-weight:600;color:var(--heading);letter-spacing:.04em;transition:background .2s ease,color .2s ease}.nav-mobile-list>li>a:hover{background:#f5f9fa;color:var(--accent-ink)}.nav-mobile-group-label{padding:18px 28px 6px;font-family:Inter,sans-serif;font-size:11px;letter-spacing:3px;color:var(--accent-ink);text-transform:uppercase;font-weight:700}.nav-mobile-sublist{list-style:none;padding:0 0 12px;margin:0}.nav-mobile-sublist li a{display:block;padding:12px 28px 12px 44px;font-size:14px;color:var(--heading);font-weight:500;transition:background .2s ease,color .2s ease}.nav-mobile-sublist li a:hover{background:#f5f9fa;color:var(--accent-ink)}.nav-mobile-cta-wrap{padding:20px 28px 8px;text-align:center}.nav-mobile-cta{width:100%;justify-content:center;height:52px!important;font-size:14px!important;padding:0 24px!important}.nav-mobile-backdrop{position:fixed;inset:80px 0 0;background:#0f2a2c66;opacity:0;pointer-events:none;transition:opacity .3s ease;z-index:98;visibility:hidden}.nav-mobile-backdrop.is-open{opacity:1;pointer-events:auto;visibility:visible}body.nav-locked{overflow:hidden}.crumb-bar{border-bottom:1px solid var(--line);background:#fff}.crumb{font-family:Inter;font-size:12px;letter-spacing:1.5px;color:var(--mute);padding:18px 0}.crumb a{color:var(--mute);transition:color .2s}.crumb a:hover{color:var(--accent-ink)}.crumb .sep{margin:0 12px;color:var(--line)}.crumb .cur{color:var(--dark);font-weight:600}.art-header{padding:64px 0 48px;background:var(--bg-alt);border-bottom:1px solid var(--line)}.art-header .container{max-width:880px}.art-meta-top{display:flex;gap:14px;align-items:center;margin-bottom:24px;flex-wrap:wrap}.art-meta-top .cat{font-family:Inter;font-size:10px;letter-spacing:3px;color:#fff;background:var(--dark);padding:6px 14px;border-radius:999px;font-weight:700;text-transform:uppercase}.art-meta-top .sub-cat{font-family:Inter;font-size:11px;letter-spacing:2px;color:var(--accent-ink);font-weight:600;text-transform:uppercase}.art-meta-top .date{font-family:Inter;font-size:12px;letter-spacing:1.5px;color:var(--mute)}.art-meta-top .read-time{font-family:Inter;font-size:11px;color:var(--mute);letter-spacing:1px}.art-title{font-size:clamp(26px,3.2vw,38px);line-height:1.55;font-weight:700;letter-spacing:.04em;color:var(--heading);margin-bottom:24px}.art-lead{font-size:15px;color:#4a5c59;line-height:2.1;margin-bottom:28px;padding-left:16px;border-left:2px solid var(--accent)}.art-author-row{display:flex;align-items:center;gap:14px;padding-top:24px;border-top:1px solid var(--line)}.author-av-link{display:block;width:56px;height:56px;border-radius:50%;overflow:hidden;flex-shrink:0;border:2px solid var(--line);transition:border-color .2s}.author-av-link:hover{border-color:var(--accent)}.author-av-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.author-info .nm{font-size:14px;font-weight:700;color:var(--heading);letter-spacing:.04em}.author-info .nm a{color:inherit}.author-info .nm a:hover{color:var(--accent-ink)}.author-info .role{font-size:11.5px;color:var(--mute);letter-spacing:.5px;margin-top:3px}.share{margin-left:auto;display:flex;gap:8px}.share a{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;font-family:Inter;font-size:12px;font-weight:600;color:var(--heading);transition:all .2s}.share a:hover{border-color:var(--accent);color:var(--accent-ink);background:var(--accent-soft)}.art-hero-img{padding-top:40px}.art-hero-img .container{max-width:1000px}.art-hero-img .hero-frame{position:relative;padding:10px;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-ink) 100%);border-radius:14px;box-shadow:0 16px 48px #0f2a2c2e}.art-hero-img .hero-frame:before{content:"";position:absolute;inset:4px;border:1px solid rgba(212,162,76,.5);border-radius:10px;pointer-events:none;z-index:2}.art-hero-img .hero-frame img{width:100%;aspect-ratio:16/8;-o-object-fit:cover;object-fit:cover;-o-object-position:center 70%;object-position:center 70%;border-radius:8px;display:block;position:relative;z-index:1}.art-hero-img .hero-frame .hero-tag{position:absolute;top:22px;left:22px;background:var(--gold);color:#fff;font-family:Inter;font-size:11px;letter-spacing:4px;font-weight:700;padding:8px 16px;border-radius:4px;z-index:3;text-transform:uppercase;box-shadow:0 4px 12px #0f2a2c40}.art-hero-img figcaption{font-size:11.5px;color:var(--mute);padding-top:16px;text-align:center;font-family:Inter;letter-spacing:.05em}.art-layout{padding:64px 0 96px}.art-layout .container{display:grid;grid-template-columns:1fr 280px;gap:72px;align-items:flex-start}.toc-sticky{position:sticky;top:120px}.toc{background:var(--bg-alt);border:1px solid var(--line);border-radius:4px;padding:24px}.toc h4{font-family:Inter;font-size:11px;letter-spacing:3px;color:var(--accent-ink);font-weight:700;text-transform:uppercase;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}.toc ol{list-style:none;counter-reset:toc}.toc li{counter-increment:toc;font-size:13px;line-height:1.65;position:relative;padding:8px 0 8px 32px}.toc li:before{content:counter(toc,decimal-leading-zero);position:absolute;left:0;top:8px;font-family:Inter;font-size:10px;letter-spacing:1px;color:var(--accent-ink);font-weight:700}.toc a{color:var(--heading);transition:color .2s}.toc a:hover{color:var(--accent-ink)}.side-cta{margin-top:24px;background:var(--dark);color:#fff;padding:28px 22px;border-radius:4px;position:relative;overflow:hidden}.side-cta:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 50%,rgba(125,206,197,.2) 0%,transparent 60%)}.side-cta>*{position:relative;z-index:1}.side-cta .label{font-family:Inter;font-size:10px;letter-spacing:3px;color:var(--accent);font-weight:700;text-transform:uppercase;margin-bottom:10px;display:block}.side-cta h4{color:#fff;font-size:16px;line-height:1.55;font-weight:700;margin-bottom:12px;letter-spacing:.04em}.side-cta p{font-size:12px;color:#a8bcb8;line-height:1.85;margin-bottom:18px}.side-cta a.btn{display:inline-flex;align-items:center;gap:10px;font-family:Inter;font-size:12px;letter-spacing:2px;font-weight:600;color:var(--dark);background:var(--accent);padding:10px 18px;border-radius:999px;transition:all .2s}.side-cta a.btn:hover{background:#fff}.prose{max-width:720px;counter-reset:h2-counter}.prose>*{margin-bottom:28px}.prose p{font-size:15px;line-height:2.1;color:#333}.prose h2{counter-increment:h2-counter;position:relative;font-size:clamp(22px,2.6vw,30px);font-weight:900;letter-spacing:.08em;line-height:1.55;color:#fff;margin-top:112px;margin-bottom:56px;padding:64px 40px 56px;text-align:center;background:radial-gradient(circle at 15% 25%,rgba(212,162,76,.18) 0%,transparent 28%),radial-gradient(circle at 85% 75%,rgba(125,206,197,.16) 0%,transparent 32%),radial-gradient(circle at 50% 50%,rgba(255,255,255,.04) 0%,transparent 50%),linear-gradient(135deg,var(--dark) 0%,#1a4543 50%,#0c1f21 100%);border-radius:12px;border:4px double var(--gold);overflow:hidden;text-shadow:0 2px 12px rgba(0,0,0,.4);box-shadow:0 16px 48px #0f2a2c40,inset 0 1px #ffffff0f}.prose h2:before{content:"";position:absolute;inset:10px;border:1px solid rgba(212,162,76,.45);border-radius:6px;pointer-events:none;background-image:radial-gradient(rgba(212,162,76,.08) 1px,transparent 1px),radial-gradient(rgba(125,206,197,.05) 1px,transparent 1px);background-size:24px 24px,36px 36px;background-position:0 0,12px 12px}.prose h2:after{content:"Chapter " counter(h2-counter,decimal-leading-zero);position:absolute;top:18px;left:26px;font-family:Inter;font-size:11px;font-weight:700;letter-spacing:4px;color:var(--gold);background:#0006;padding:6px 14px;border:1px solid var(--gold);border-radius:3px;text-transform:uppercase;backdrop-filter:blur(4px)}.prose h2 a{color:#fff;border-bottom:none!important;padding-bottom:0!important;position:relative}.prose h2{background-image:radial-gradient(circle at 15% 25%,rgba(212,162,76,.18) 0%,transparent 28%),radial-gradient(circle at 85% 75%,rgba(125,206,197,.16) 0%,transparent 32%),radial-gradient(circle at 50% 50%,rgba(255,255,255,.04) 0%,transparent 50%),url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none' stroke='%23d4a24c' stroke-opacity='0.4' stroke-width='1.5'><path d='M0 12 L0 0 L12 0'/><path d='M88 0 L100 0 L100 12'/><path d='M100 88 L100 100 L88 100'/><path d='M12 100 L0 100 L0 88'/></svg>"),linear-gradient(135deg,var(--dark) 0%,#1a4543 50%,#0c1f21 100%);background-size:auto,auto,auto,calc(100% - 20px) calc(100% - 20px),auto;background-position:0 0,0 0,0 0,10px 10px,0 0;background-repeat:no-repeat}.prose h2 .num{display:none}.prose h2+p:before,.prose h2+ul:before,.prose h2+ol:before,.prose h2+figure:before{content:"";display:block;width:60px;height:8px;margin:-32px auto 32px;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 8' fill='none' stroke='%23d4a24c' stroke-width='1.5' stroke-linecap='round'><path d='M2 4 Q8 0, 14 4 T26 4 T38 4 T50 4 T58 4'/></svg>") center/contain no-repeat}.prose h3{counter-increment:h3-counter;position:relative;font-size:19px;font-weight:800;letter-spacing:.04em;line-height:1.6;color:var(--heading);margin-top:64px;margin-bottom:26px;padding:18px 18px 18px 70px;background:linear-gradient(90deg,rgba(212,162,76,.08) 0%,rgba(125,206,197,.04) 50%,transparent 100%);border-left:4px solid var(--gold);border-bottom:1px solid rgba(212,162,76,.25);border-radius:0 4px 0 0}.prose h3:before{content:counter(h3-counter,decimal-leading-zero);position:absolute;left:18px;top:50%;transform:translateY(-50%);width:38px;height:38px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--gold) 0%,#b88439 100%);color:#fff;font-family:Inter;font-size:13px;font-weight:800;letter-spacing:1px;border-radius:50%;box-shadow:0 4px 12px #d4a24c66}.prose h2{counter-reset:h3-counter}.prose h4{position:relative;font-size:16px;font-weight:800;letter-spacing:.04em;line-height:1.6;color:var(--heading);margin-top:40px;margin-bottom:18px;padding-left:18px}.prose h4:before{content:"◆";position:absolute;left:0;top:50%;transform:translateY(-50%);color:var(--gold);font-size:12px}.prose ul,.prose ol{padding-left:24px}.prose li{font-size:14.5px;line-height:2;margin-bottom:10px}.prose ul li::marker{color:var(--gold)}.prose ol li::marker{color:var(--gold);font-weight:700}.prose strong{background:linear-gradient(transparent 62%,#d4a24c59 62%);padding:0 3px;font-weight:700;color:var(--heading)}.prose a{color:var(--accent-ink);border-bottom:1px solid var(--accent);padding-bottom:1px;transition:all .2s}.prose a:hover{color:var(--gold);border-color:var(--gold)}.prose blockquote{background:var(--bg-alt);padding:28px 32px;border-radius:4px;position:relative;font-family:"Noto Serif JP",serif;font-size:16px;line-height:2;color:#2b3f3c;margin:40px 0}.prose blockquote:before{content:"“";position:absolute;top:-8px;left:18px;font-size:72px;color:var(--accent);font-family:Georgia,serif;line-height:1;font-weight:700}.prose blockquote p{margin:0;font-size:16px;line-height:2;padding-left:40px}.prose .note-box{background:var(--accent-soft);padding:24px 28px;border-radius:4px;border-left:3px solid var(--accent-ink);margin:32px 0}.prose .note-box .note-label{font-family:Inter;font-size:11px;letter-spacing:3px;color:var(--accent-ink);font-weight:700;text-transform:uppercase;margin-bottom:10px}.prose .note-box p{font-size:14px;line-height:1.95;margin-bottom:0;color:#2b3f3c}.prose figure{margin:40px 0}.prose figure img{border-radius:4px}.prose figcaption{font-size:11.5px;color:var(--mute);padding-top:12px;text-align:center;font-family:Inter;letter-spacing:.05em}.prose table{width:100%;border-collapse:collapse;margin:32px 0;font-size:13.5px}.prose table th{background:var(--dark);color:#fff;padding:14px 16px;text-align:left;font-weight:600;letter-spacing:.04em;font-size:12px;letter-spacing:2px}.prose table td{padding:14px 16px;border-bottom:1px solid var(--line);background:#fff}.prose table tr:nth-child(2n) td{background:var(--bg-alt)}.art-footer{max-width:720px;padding-top:48px;margin-top:48px;border-top:1px solid var(--line)}.art-footer .tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px}.art-footer .tags a{font-size:12px;padding:6px 14px;border:1px solid var(--line);border-radius:999px;color:var(--heading);transition:all .2s}.art-footer .tags a:hover{border-color:var(--accent);color:var(--accent-ink)}.art-footer .share-bottom{display:flex;align-items:center;gap:16px;padding:20px 0;border-top:1px dashed var(--line);border-bottom:1px dashed var(--line)}.art-footer .share-bottom .lbl{font-family:Inter;font-size:11px;letter-spacing:3px;color:var(--mute);font-weight:600;text-transform:uppercase}.art-footer .share-bottom .links{display:flex;gap:8px}.art-footer .share-bottom a{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;font-family:Inter;font-size:12px;font-weight:600;color:var(--heading);transition:all .2s}.art-footer .share-bottom a:hover{border-color:var(--accent);color:var(--accent-ink);background:var(--accent-soft)}.author-box{max-width:720px;margin-top:48px;background:var(--bg-alt);border:1px solid var(--line);border-radius:4px;padding:36px;display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:flex-start}.author-box .av{width:72px;height:72px;border-radius:50%;background:var(--dark);color:#fff;display:flex;align-items:center;justify-content:center;font-family:Noto Sans JP,serif;font-weight:900;font-size:32px}.author-box .label{font-family:Inter;font-size:10px;letter-spacing:3px;color:var(--accent-ink);font-weight:700;text-transform:uppercase;margin-bottom:8px}.author-box h4{font-size:18px;letter-spacing:.06em;font-weight:700;margin-bottom:4px;color:var(--dark)}.author-box .role-big{font-family:Inter;font-size:11px;letter-spacing:2px;color:var(--mute);font-weight:500;margin-bottom:14px}.author-box p{font-size:13px;line-height:1.9;color:#4a5c59;margin-bottom:14px}.author-box .other-articles{font-family:Inter;font-size:11px;letter-spacing:2px;color:var(--accent-ink);font-weight:600;display:inline-flex;align-items:center;gap:8px}.author-box .other-articles .arr{transition:transform .2s}.author-box .other-articles:hover .arr{transform:translate(3px)}.prev-next{margin-top:48px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.pn-card{background:#fff;border:1px solid var(--line);border-radius:4px;padding:22px 24px;transition:all .2s}.pn-card:hover{border-color:var(--accent);transform:translateY(-2px)}.pn-card .dir{font-family:Inter;font-size:10px;letter-spacing:3px;color:var(--mute);font-weight:600;text-transform:uppercase;margin-bottom:10px;display:block}.pn-card h5{font-size:13px;line-height:1.55;font-weight:600;color:var(--heading)}.pn-card.next{text-align:right}.cta-band{background:var(--dark);color:#fff;padding:72px 0;position:relative;overflow:hidden}.cta-band:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 50%,rgba(125,206,197,.22) 0%,transparent 55%)}.cta-band .container{max-width:880px;position:relative}.cta-band-inner{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}.cta-band .label{font-family:Inter;font-size:11px;letter-spacing:5px;color:var(--accent);font-weight:600;text-transform:uppercase;display:block;margin-bottom:14px}.cta-band h2{font-size:clamp(22px,2.4vw,30px);color:#fff;letter-spacing:.06em;line-height:1.55;margin-bottom:14px}.cta-band p{font-size:13px;color:#a8bcb8;line-height:1.9;max-width:480px}.cta-band .btn-group{display:flex;gap:12px;flex-wrap:wrap}.cta-band .b{padding:16px 28px;border-radius:999px;font-family:Inter;font-size:12px;font-weight:600;letter-spacing:2px;display:inline-flex;align-items:center;gap:10px;transition:all .2s}.cta-band .b.primary{background:var(--accent);color:var(--dark)}.cta-band .b.primary:hover{background:#fff}.cta-band .b.ghost{border:1px solid rgba(255,255,255,.3);color:#fff}.cta-band .b.ghost:hover{background:#ffffff14;border-color:var(--accent)}.related{padding:96px 0;background:var(--bg-alt)}.related-head{text-align:center;margin-bottom:48px}.related-head .label{font-family:Inter;font-size:11px;letter-spacing:5px;color:var(--accent-ink);font-weight:600;text-transform:uppercase;margin-bottom:10px;display:block}.related-head h2{font-size:clamp(22px,2.4vw,28px);font-weight:700;letter-spacing:.08em}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.related-card{display:flex;flex-direction:column;transition:transform .2s}.related-card:hover{transform:translateY(-4px)}.related-card .ph{aspect-ratio:5/3.2;overflow:hidden;border-radius:4px;position:relative}.related-card .ph img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .5s}.related-card:hover .ph img{transform:scale(1.04)}.related-card .ph .tag{position:absolute;left:12px;top:12px;font-family:Inter;font-size:10px;letter-spacing:2px;background:#fff;color:var(--dark);padding:6px 12px;border-radius:999px;font-weight:600}.related-card .body{padding:18px 4px 0}.related-card .meta{display:flex;gap:12px;align-items:center;margin-bottom:10px}.related-card .meta .date{font-family:Inter;font-size:12px;color:var(--mute);letter-spacing:1px}.related-card .meta .cat{font-family:Inter;font-size:10px;letter-spacing:2px;color:var(--accent-ink);font-weight:600;text-transform:uppercase}.related-card h4{font-size:15px;line-height:1.65;font-weight:600;letter-spacing:.02em}.related-card:hover h4{color:var(--accent-ink)}footer{background:var(--dark);color:#c7d6d3;padding:80px 0 36px}.foot-top{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:48px;padding-bottom:56px;border-bottom:1px solid #2d4e48}.foot-brand .mark{color:#fff;font-size:36px;font-family:Noto Sans JP,serif;font-weight:900;line-height:1;margin-bottom:10px}.foot-brand .mark-en{font-family:Inter;font-size:10px;letter-spacing:4px;color:var(--accent);text-transform:uppercase;font-weight:600;display:block;margin-bottom:24px}.foot-brand p{font-size:13px;line-height:1.95;color:#a8bcb8;max-width:300px}.foot-col h5{font-family:Inter;font-size:11px;letter-spacing:4px;color:var(--accent);text-transform:uppercase;font-weight:600;margin-bottom:20px}.foot-col ul{list-style:none}.foot-col li{margin-bottom:12px}.foot-col a{color:#c7d6d3;font-size:13px;transition:color .2s}.foot-col a:hover{color:var(--accent)}.foot-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:32px;font-family:Inter;font-size:11px;letter-spacing:2px;color:#6c8681}.fade{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}.fade.in{opacity:1;transform:translateY(0)}@media(max-width:960px){.art-layout .container,.cta-band-inner,.related-grid,.foot-top,.prev-next{grid-template-columns:1fr;gap:32px}.toc-sticky{position:static}.author-box{grid-template-columns:1fr}nav ul{display:none}.nav-hamburger{display:flex}.header-cta-pc{display:none}}
