:root{line-break:strict;word-break:normal} :where(*){min-width:0}
.launch-actions,.launch-records,.launch-follow{padding:88px max(24px,calc((100vw - 1240px)/2))}
.launch-actions{background:#eee9df;color:#22221f}.launch-heading{max-width:900px;margin-bottom:52px}.launch-heading :is(h1,h2){font-size:clamp(2rem,4vw,3.8rem);line-height:1.4;margin:18px 0 24px}.launch-heading p,.launch-follow p,.launch-records>p{font-size:1.25rem;line-height:1.9}
.launch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 32px}.launch-action{border-top:1px solid #a69d8d;padding-top:24px}.launch-action h3{font-size:1.6rem;line-height:1.55;margin:16px 0}.launch-action p{font-family:'Helvetica Neue',Arial,'Hiragino Sans','Hiragino Kaku Gothic ProN',sans-serif;font-size:1.125rem;line-height:1.9;text-align:justify;text-justify:inter-character}.launch-action a{display:inline-block;min-height:44px;padding:14px 0;font-size:1.125rem;text-decoration:underline;text-underline-offset:6px}.launch-art{height:150px;margin-bottom:24px}.launch-art svg{width:100%;height:100%;max-height:150px}.launch-actions .section-kicker{color:#685135}
.launch-follow{background:#161616;color:#faf7f1}.launch-follow h2,.launch-records h2{font-size:clamp(2rem,4vw,3rem);line-height:1.5;margin:16px 0 24px}.launch-follow nav{display:flex;flex-wrap:wrap;gap:20px;margin-top:32px}.launch-follow nav a{border:1px solid #a99e8a;border-radius:4px;padding:18px 30px;font-size:1.125rem;min-height:44px;color:inherit}.launch-records{background:#fffdf8;color:#24221f}.launch-records>a{display:grid;grid-template-columns:140px 1fr 30px;gap:20px;align-items:center;padding:28px 0;border-bottom:1px solid #b5ac9e}.launch-records h3{font-size:1.4rem;line-height:1.6;margin:0}.launch-records time{font-size:1.125rem}.leaflet-welcome{padding:32px 24px 28px;background:#161616;color:#fff;text-align:center}.leaflet-welcome p{font-size:1.125rem;text-align:center}.leaflet-main .launch-actions{padding-top:60px}.launch-contact a{display:block;padding:20px 0;font-size:1.25rem;text-decoration:underline;overflow-wrap:anywhere}
@media(max-width:900px){.launch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.launch-actions,.launch-records,.launch-follow{padding:60px 24px}.launch-grid{grid-template-columns:1fr;gap:36px}.launch-art{height:120px}.launch-records>a{grid-template-columns:1fr 24px;gap:10px}.launch-records time{grid-column:1/-1}.launch-follow nav{gap:12px}.launch-follow nav a{width:100%;text-align:center}}
.launch-evidence{margin-top:24px;padding:20px 0 0;border-top:1px solid #c4bba9}.launch-evidence h4{font-size:1.125rem;margin:0 0 10px}.launch-evidence p{margin:0;font-size:1.125rem}.launch-evidence a{font-size:1.125rem}
/* 政策詳細は本文の読み幅と段落を確保し、紙の要約と役割を分ける。 */
.policy-full-text{max-width:44em}.policy-full-text p{font-size:1.25rem;line-height:1.9;margin:0 0 22px}.policy-detail .launch-evidence{max-width:44em}.policy-detail .launch-evidence p{font-size:1.125rem}.policy-detail[id],.launch-action[id]{scroll-margin-top:120px}.leaflet-main .launch-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:56px}.leaflet-main .launch-action>p{margin:0 0 18px}
@media(max-width:700px){.leaflet-main .launch-grid{grid-template-columns:1fr;gap:36px}.policy-full-text p{font-size:1.125rem}}
.archive-index{padding-top:48px;padding-bottom:72px;scroll-margin-top:96px}.archive-visits{padding-bottom:0}.archive-index h2{font-size:1.75rem;line-height:1.5}.archive-index ul{padding-left:24px}.archive-index a,.archive-article nav a{display:inline-block;padding:12px 0;min-height:44px;text-decoration:underline;text-underline-offset:5px}
.archive-article{max-width:980px;padding-top:48px;padding-bottom:72px;font-family:'Helvetica Neue',Arial,'Hiragino Sans','Hiragino Kaku Gothic ProN',sans-serif;font-size:1.125rem;line-height:1.9}.archive-article h1{font-size:clamp(1.75rem,4vw,3rem);line-height:1.5;margin:28px 0}.archive-note{border-left:3px solid currentColor;padding-left:18px;margin:24px 0 40px}.archive-body p{margin:0 0 24px}.archive-body table{width:100%;border-collapse:collapse;table-layout:fixed}.archive-body th,.archive-body td{padding:20px 16px;border-bottom:1px solid #888;vertical-align:top}.archive-body th{width:28%;text-align:left;font-weight:600}.archive-back{margin-top:48px}.archive-index p,.archive-index li,.archive-body p,.archive-body td{text-align:justify;text-justify:inter-character;text-align-last:start;overflow-wrap:normal;word-break:normal}
@media(max-width:700px){.archive-body table,.archive-body tbody,.archive-body tr,.archive-body th,.archive-body td{display:block;width:100%}.archive-body th{padding:20px 0 8px;border-bottom:0}.archive-body td{padding:0 0 20px}.archive-article{padding-top:32px}}

.archive-article .section-kicker{color:#685135;font-size:1rem}
.official-links{padding-left:24px}.official-links a{display:inline-block;vertical-align:top;padding:16px 0;min-height:44px;text-decoration:underline;text-underline-offset:5px}
/* プロフィール：要点は開いて示し、長い役職歴は分野ごとに読む。 */
.profile-current,.profile-depth{margin:72px 0;scroll-margin-top:120px}.profile-section-heading{display:flex;align-items:baseline;gap:20px;margin-bottom:28px}.profile-section-heading>span{color:#685135;font:600 1rem/1.5 'Helvetica Neue',Arial,'Hiragino Sans','Hiragino Kaku Gothic ProN',sans-serif}.profile-section-heading h2{font-size:clamp(1.5rem,2.7vw,2.25rem);line-height:1.55;margin:0}.profile-current-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;border-top:1px solid #9f9787;border-bottom:1px solid #9f9787;padding:32px 0}.profile-current-grid p{font-size:1.125rem;line-height:1.8;margin:0 0 12px}.profile-current-grid strong{font-size:1.6rem;font-weight:600}.profile-jump{display:flex;flex-wrap:wrap;gap:8px 28px;margin-top:20px}.profile-jump a,.profile-source a{display:inline-block;padding:12px 0;min-height:44px;text-decoration:underline;text-underline-offset:5px;font-size:1rem}.profile-depth details{margin:0;border-top:1px solid #aaa18f}.profile-depth details:last-child{border-bottom:1px solid #aaa18f}.profile-depth summary{cursor:pointer;padding:24px 4px;font-size:1.25rem;line-height:1.7;font-weight:600}.profile-detail-hint{display:block;font-size:1rem;font-weight:400;color:#625d51;margin-top:4px}.profile-depth details[open] summary{padding-bottom:12px}.profile-history-lines{padding:0 24px 24px}.profile-history-lines p{font-size:1.125rem;line-height:1.9;margin:10px 0}.profile-history-lines h4{font-size:1.125rem;margin:28px 0 12px}.profile-history-lines .profile-period{color:#625d51;border-left:2px solid #9f9787;padding-left:12px;margin-top:24px}.profile-role-list{list-style:none;padding:0;margin:0}.profile-role-list li{display:flex;gap:16px;justify-content:space-between;padding:18px 4px;border-bottom:1px solid #c8bfaf;font-size:1.125rem;line-height:1.9}.profile-role-list li>span{flex:1}.profile-role-list strong{flex:none;font-size:1rem;font-weight:600}.profile-depth details>.profile-role-list{padding:0 24px 24px}.profile-background-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.profile-background-grid h3{font-size:1.25rem;line-height:1.7;margin:0 0 24px}.profile-education{list-style:none;padding:0;margin:0}.profile-education li{padding:18px 0;border-bottom:1px solid #c8bfaf}.profile-education li>span{font-size:1rem;color:#625d51}.profile-education p{font-size:1.125rem;line-height:1.9;margin:8px 0 0}.profile-source{border-top:1px solid #aaa18f;padding:24px 0;margin-bottom:64px}.profile-source p{font-size:1rem;line-height:1.9}.profile-source a{margin-right:24px;overflow-wrap:anywhere}.profile-depth,.profile-current{font-family:'Helvetica Neue',Arial,'Hiragino Sans','Hiragino Kaku Gothic ProN',sans-serif}.profile-depth :is(p,li),.profile-current p{text-align:justify;text-justify:inter-character;text-align-last:start;word-break:normal;overflow-wrap:normal}
@media(max-width:700px){.profile-current,.profile-depth{margin:48px 0}.profile-current-grid,.profile-background-grid{grid-template-columns:1fr;gap:28px}.profile-current-grid{padding:24px 0}.profile-current-grid>div+div{border-top:1px solid #c8bfaf;padding-top:24px}.profile-history-lines,.profile-depth details>.profile-role-list{padding-left:0;padding-right:0}.profile-role-list li{gap:12px}.profile-section-heading{gap:12px}}

.profile-date{white-space:nowrap}

.profile-history-lines p,.profile-role-list li>span{text-align:left}.profile-tenure{display:block;margin-top:4px;font-size:1rem;color:#625d51;line-height:1.9}
.contact-office{max-width:900px;padding-top:24px;padding-bottom:72px}.contact-office .contact-aside{max-width:700px}.daily-links{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:40px 0 24px}.daily-links a{display:block;padding:28px;border:1px solid #9f9787;text-decoration:none}.daily-links a span{display:block;font-size:1rem;margin-bottom:16px}.daily-links a strong{font-size:1.35rem;line-height:1.7}.daily-links .daily-primary{background:#30362c;color:#fffdf8}.map-sources{padding-bottom:72px;scroll-margin-top:120px}.map-sources a{overflow-wrap:anywhere;text-decoration:underline}.map-sources h2{font-size:1.5rem;line-height:1.6}
@media(max-width:700px){.daily-links{grid-template-columns:1fr}.daily-links a{padding:24px}}
/* 紙から続く、青い表紙。本文と人物の余白を分ける。 */
.leaflet-entry{--leaf-blue:#3a536c;--leaf-pale:#d7e2ec;--leaf-red:#c8141e}.black-document.leaflet-entry .site-header{background:#edf2f6;color:#253d53;border-bottom:1px solid #3a536c26;backdrop-filter:none;position:relative}.leaflet-entry .site-header :is(a,small,button){color:#253d53}.leaflet-entry .site-header .desktop-nav{display:none}.leaflet-entry .site-header .menu-open{margin-left:auto}.leaflet-entry .site-header .noir-brand-en{color:#3a536c}
.leaf-entry-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:1.1fr 1fr;grid-template-rows:1fr auto auto;gap:20px 40px;min-height:calc(100svh - 76px);padding:48px max(32px,calc((100vw - 1200px)/2)) 24px;background:linear-gradient(125deg,#edf2f6 10%,#d7e2ec 60%,#87a6c3);color:#253d53;overflow:hidden}.leaf-entry-copy{align-self:center;z-index:1}.leaf-entry-label{font:600 1rem/1.7 'Helvetica Neue',Arial,'Hiragino Sans','Hiragino Kaku Gothic ProN',sans-serif;letter-spacing:.04em}.leaf-entry-copy h1{font-size:clamp(2.5rem,5.4vw,5rem);line-height:1.35;letter-spacing:.02em;margin:22px 0 28px;font-weight:700}.leaf-entry-copy h1:after{content:'';display:block;width:64px;height:4px;background:#c8141e;margin-top:24px}.leaf-entry-thanks{font-size:1.5rem;line-height:1.8;font-weight:600;margin:0 0 18px}.leaf-entry-caption{font-size:1.125rem;line-height:1.8;margin:0}.leaf-entry-person{position:relative;grid-column:2;grid-row:1/3;align-self:end;margin:0;display:flex;flex-direction:column;align-items:center}.leaf-entry-person img{position:relative;max-height:65svh;width:100%;max-width:470px;object-fit:contain;object-position:bottom;z-index:1;filter:drop-shadow(0 16px 20px #253d5315)}.leaf-entry-orbit{position:absolute;width:110%;aspect-ratio:1;top:12%;border:1px solid #ffffffa0;border-radius:50%;background:#ffffff20;transform:rotate(-10deg)}.leaf-entry-person figcaption{position:relative;z-index:2;background:#f8fafccf;border:1px solid #fff;border-radius:32px;padding:10px 24px;font-size:1rem;margin-top:-20px;color:#253d53}.leaf-entry-person strong{font-size:1.3rem;margin-left:12px}.leaf-entry-social{grid-column:1;z-index:2;margin-top:12px}.leaf-entry-social>p{font-size:1rem;font-weight:600;margin:0 0 12px}.leaf-entry-social nav{display:flex;gap:12px}.leaf-entry-social a{display:flex;align-items:center;gap:9px;background:#ffffffd9;border:1px solid #fff;border-radius:99px;padding:10px 14px;font-size:1rem;font-weight:600;color:#253d53;min-height:52px;text-decoration:none;box-shadow:0 5px 16px #3a536c0b;transition:transform .2s}.leaf-entry-social a:hover{transform:translateY(-3px)}.leaf-entry-social a>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;color:white;background:#3a536c;flex:none}.leaf-entry-social svg{width:19px;height:19px}.leaf-entry-social .leaf-sns-facebook>span{background:#1769cc}.leaf-entry-social .leaf-sns-instagram>span{background:linear-gradient(135deg,#7937a4,#c13563,#a75a13)}.leaf-entry-social .leaf-sns-x>span{background:#20262b}.leaf-entry-social b{font-weight:400}.leaf-entry-scroll{grid-column:1/-1;justify-self:center;display:flex;align-items:center;gap:18px;min-height:48px;padding:12px 0;font-size:1rem;text-decoration:none;color:#253d53;margin-top:8px}.leaf-entry-scroll span{font-size:1.5rem}.leaflet-entry .launch-actions{background:#f7f9fb;color:#263b4d}.leaflet-entry .launch-actions .section-kicker{color:#3a536c}.leaflet-entry .launch-art{color:#3a536c}.leaflet-entry .launch-action{border-color:#a6b8c8}.leaflet-entry .launch-heading{border-left:4px solid #c8141e;padding-left:24px}.leaf-entry-story{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding:80px max(24px,calc((100vw - 1200px)/2));background:#d7e2ec;color:#253d53}.leaf-entry-story figure{margin:0}.leaf-entry-story img{display:block;width:100%;border-radius:4px}.black-document.leaflet-entry .leaf-entry-story figcaption{font-size:1rem;margin-top:10px}.leaf-entry-story h2{font-size:2.5rem;line-height:1.5;margin:20px 0}.leaf-entry-story p{font-size:1.125rem;line-height:1.9}.leaf-entry-story a{display:inline-block;padding:16px 0;min-height:44px;text-decoration:underline}.leaf-entry-hero p{text-align:left}
@media(max-width:1000px){.leaf-entry-social nav{gap:8px;flex-wrap:wrap}.leaf-entry-social a{padding:8px 12px}}
@media(max-width:700px){.leaf-entry-hero{min-height:calc(100svh - 72px);grid-template-columns:1fr;grid-template-rows:auto 1fr auto auto;gap:12px;padding:24px 24px 12px}.leaf-entry-copy h1{font-size:2.25rem;line-height:1.3;margin:12px 0 16px}.leaf-entry-copy h1:after{margin-top:14px;width:44px;height:3px}.leaf-entry-thanks{font-size:1.125rem;line-height:1.7;margin:0}.leaf-entry-caption{display:none}.leaf-entry-person{grid-column:1;grid-row:2;align-self:center;width:100%;margin:0}.leaf-entry-person img{height:clamp(160px,29svh,280px);width:auto;max-width:100%}.leaf-entry-person figcaption{padding:6px 16px;margin-top:-14px;font-size:1rem}.leaf-entry-person strong{font-size:1.125rem}.leaf-entry-orbit{width:260px;top:5%;max-width:90%}.leaf-entry-social{grid-row:3;margin:0}.leaf-entry-social>p{text-align:center;margin-bottom:8px}.leaf-entry-social nav{justify-content:center;flex-wrap:nowrap;gap:8px}.leaf-entry-social a{flex:1;flex-direction:column;gap:4px;border-radius:18px;padding:9px 5px;font-size:1rem;min-width:0}.leaf-entry-social a>span{width:28px;height:28px}.leaf-entry-social b{display:none}.leaf-entry-scroll{grid-row:4;margin:0;padding:6px 0;font-size:1rem}.leaf-entry-story{grid-template-columns:1fr;gap:24px;padding:48px 24px}.leaf-entry-story h2{font-size:2rem}.leaflet-entry .launch-heading{padding-left:18px}}
@media(prefers-reduced-motion:reduce){.leaf-entry-social a{transition:none}}
@media(max-width:360px){.leaf-entry-copy h1{font-size:1.9rem}.leaf-entry-hero{padding-left:20px;padding-right:20px}.leaf-entry-social a{font-size:.9rem}}
@media(max-width:700px) and (max-height:740px){.leaf-entry-hero{padding-top:16px;gap:8px}.leaf-entry-copy h1{font-size:1.9rem;margin:8px 0 12px}.leaf-entry-copy h1:after{margin-top:10px}.leaf-entry-person img{height:clamp(120px,22svh,165px)}.leaf-entry-social a{padding:6px 4px}.leaf-entry-thanks{font-size:1rem}}
.leaf-entry-doors{background:#f7f9fb;color:#253d53;padding:80px max(24px,calc((100vw - 1200px)/2));scroll-margin-top:24px}.leaf-entry-doors>h2{font-size:clamp(1.8rem,3.5vw,3rem);line-height:1.5;margin:20px 0 40px}.leaf-door-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.leaf-door{display:flex;flex-direction:column;position:relative;padding:28px;background:#edf2f6;border:1px solid #cfdae4;border-radius:4px;color:inherit;text-decoration:none;transition:background .2s,transform .2s}.leaf-door:hover{background:#d7e2ec;transform:translateY(-4px)}.leaf-door-art{height:130px;margin-bottom:20px;color:#3a536c}.leaf-door-art svg{width:100%;height:100%}.leaf-door-number{font-size:1rem;color:#8e1721;font-weight:700}.leaf-door h3{font-size:1.4rem;line-height:1.65;margin:12px 0 24px}.leaf-door-next{font-size:1rem;margin-top:auto;display:flex;justify-content:space-between;gap:16px;border-top:1px solid #acbdcd;padding-top:16px}.leaf-door:focus-visible{outline:3px solid #3a536c;outline-offset:4px}
@media(max-width:900px){.leaf-door-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.leaf-entry-doors{padding:48px 24px}.leaf-door-grid{grid-template-columns:1fr;gap:16px}.leaf-door{display:grid;grid-template-columns:90px 1fr;gap:6px 18px;padding:24px 20px}.leaf-door-art{grid-column:1;grid-row:1/4;height:110px;align-self:center;margin:0}.leaf-door-number,.leaf-door h3,.leaf-door-next{grid-column:2}.leaf-door h3{font-size:1.125rem;margin:0 0 8px}.leaf-door-next{padding-top:10px}}
@media(prefers-reduced-motion:reduce){.leaf-door{transition:none}}
/* 入稿中面と同じ濃青・白・赤。採用済みの立ち姿を紙から引き継ぐ。 */
.black-document.leaflet-entry .site-header{background:#3a536c;color:#fff;border-bottom:1px solid #ffffff35}.leaflet-entry .site-header :is(a,small,button),.leaflet-entry .site-header .noir-brand-en{color:#fff}.leaflet-entry .site-header .menu-open{border-color:#ffffff70}.leaf-entry-hero{background:radial-gradient(ellipse 120% 85% at 18% 12%,#8eabc6 0%,#6584a3 42%,#3a536c 100%);color:#fff}.leaf-entry-copy h1:after{width:90px;height:5px;background:#c8141e}.leaf-entry-person{align-self:end;width:100%;height:65svh;max-height:760px;overflow:hidden}.leaf-entry-person img{height:100%;max-height:none;width:100%;max-width:470px;object-fit:cover;object-position:center top;filter:none}.leaf-entry-person figcaption{position:absolute;bottom:0;left:0;right:0;margin:0;border:0;border-radius:0;background:linear-gradient(transparent,#3a536c 45%);color:#fff;text-align:center;padding:36px 16px 12px}.leaf-entry-person strong{font-size:1.6rem}.leaf-entry-scroll{color:#fff}.leaf-entry-social a{background:#fff;box-shadow:none;border-radius:12px}.leaf-entry-doors{background:#fff}.leaf-door{background:#edf2f6;border-top:3px solid #3a536c}.leaf-entry-story{background:#3a536c;color:#fff}
@media(max-width:700px){.leaf-entry-person{height:clamp(170px,29svh,280px);width:100%;max-height:none;align-self:center}.leaf-entry-person img{width:230px;max-width:90%;height:100%;object-fit:cover;object-position:top}.leaf-entry-person figcaption{padding:32px 12px 5px;background:linear-gradient(transparent,#526f8a 65%);font-size:1rem}.leaf-entry-person strong{font-size:1.125rem}.leaf-entry-copy h1:after{width:64px;height:4px}.leaf-entry-social a{border-radius:10px}}
@media(max-width:700px) and (max-height:740px){.leaf-entry-person{height:clamp(120px,22svh,165px)}.leaf-entry-person img{width:195px}.leaf-entry-copy h1:after{height:3px}}
.leaflet-entry .leaf-entry-hero{background:linear-gradient(#263f567d,#263f567d),radial-gradient(ellipse 120% 85% at 18% 12%,#8eabc6 0%,#6584a3 42%,#3a536c 100%)}.leaflet-entry .leaf-entry-person img{max-width:600px}.leaflet-entry .leaf-entry-person figcaption,.leaflet-entry .leaf-entry-person figcaption strong{color:#fff}.leaflet-entry .leaf-entry-person figcaption{background:linear-gradient(transparent,#304b62 65%)}
@media(max-width:700px){.leaflet-entry .leaf-entry-person img{width:300px;max-width:95%}.leaflet-entry .leaf-entry-person figcaption{background:linear-gradient(transparent,#3c5870 65%)}}
@media(max-width:700px) and (max-height:740px){.leaflet-entry .leaf-entry-person img{width:250px}}
.leaflet-entry .leaf-entry-person figcaption{color:#fff!important;background:none!important;text-shadow:0 1px 3px #253d5380}
/* 全身の歩く姿を背景レイヤーに。紙の色と大きな組版で迎える。 */
.leaflet-entry .leaf-entry-hero{display:flex;flex-direction:column;justify-content:center;gap:24px;min-height:calc(100svh - 76px);padding:48px max(40px,calc((100vw - 1200px)/2)) 88px;background:linear-gradient(110deg,#243e55 0%,#3a536c 48%,#87a6c3 100%)}
.leaf-entry-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 64%,#ffffff0a 64%,#ffffff0a 76%,transparent 76%);pointer-events:none;z-index:-1}
.leaflet-entry .leaf-entry-copy{align-self:stretch;position:relative;max-width:60%;z-index:2}
.leaflet-entry .leaf-entry-copy h1{font-size:clamp(3rem,5.8vw,5.75rem);line-height:1.22;letter-spacing:.035em;margin:24px 0;font-weight:700}
.leaf-entry-copy h1 span{display:block}
.leaflet-entry .leaf-entry-copy h1:after{width:96px;height:5px;margin-top:24px}
.leaflet-entry .leaf-entry-thanks{font-size:1.25rem;line-height:1.8;margin:0}
.leaflet-entry .leaf-entry-caption{display:none}
.leaflet-entry .leaf-entry-person{position:absolute;inset:24px max(16px,calc((100vw - 1320px)/2)) 76px auto;width:49%;height:auto;max-height:none;overflow:visible;z-index:0;pointer-events:none;display:block}
.leaflet-entry .leaf-entry-person img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;object-position:center bottom;filter:drop-shadow(12px 20px 20px #172b3930)}
.leaflet-entry .leaf-entry-person figcaption{bottom:5%;left:auto;right:0;writing-mode:vertical-rl;text-align:left;padding:0;font-size:1rem;letter-spacing:.15em}
.leaflet-entry .leaf-entry-person figcaption strong{display:inline-block;font-size:1.8rem;margin:18px 0 0;letter-spacing:.2em}
.leaflet-entry .leaf-entry-social{position:relative;align-self:flex-start;margin:8px 0 0;z-index:3}
.leaflet-entry .leaf-entry-social a{border-radius:99px;padding:10px 18px}
.leaflet-entry .leaf-entry-scroll{position:absolute;bottom:16px;left:0;right:0;justify-content:center;margin:0}
@media(max-width:700px){
.leaflet-entry .leaf-entry-hero{min-height:calc(100svh - 72px);justify-content:flex-start;padding:24px 20px 200px;gap:0}
.leaflet-entry .leaf-entry-copy{max-width:none}
.leaflet-entry .leaf-entry-label{font-size:1rem;letter-spacing:0;margin:0}
.leaflet-entry .leaf-entry-copy h1{font-size:clamp(1.9rem,8vw,3rem);line-height:1.4;margin:30px 0 18px;max-width:60%}
.leaflet-entry .leaf-entry-copy h1:after{width:64px;height:4px;margin-top:18px}
.leaflet-entry .leaf-entry-thanks{font-size:1rem;line-height:1.9;max-width:48%;text-wrap:pretty}
.leaflet-entry .leaf-entry-person{inset:86px -4px 180px auto;width:59%}
.leaflet-entry .leaf-entry-person figcaption{right:15px;bottom:8px;font-size:1rem;letter-spacing:0;writing-mode:horizontal-tb;text-align:right}
.leaflet-entry .leaf-entry-person figcaption strong{display:block;font-size:1.3rem;letter-spacing:.12em;margin:4px 0 0}
.leaflet-entry .leaf-entry-person img{object-position:right bottom}
.leaflet-entry .leaf-entry-social{position:absolute;left:20px;right:20px;bottom:70px;margin:0}
.leaflet-entry .leaf-entry-social>p{text-align:left;margin-bottom:10px}
.leaflet-entry .leaf-entry-social nav{gap:8px}
.leaflet-entry .leaf-entry-social a{flex-direction:row;padding:8px 6px;gap:5px;font-size:1rem;border-radius:99px;justify-content:center}
.leaflet-entry .leaf-entry-social a>span{width:24px;height:24px}
.leaflet-entry .leaf-entry-scroll{bottom:10px}
}
@media(max-width:700px) and (max-height:740px){.leaflet-entry .leaf-entry-copy h1{margin-top:20px;font-size:1.9rem;line-height:1.3}.leaflet-entry .leaf-entry-person{top:68px;bottom:176px}.leaflet-entry .leaf-entry-thanks{line-height:1.7}}
@media(max-width:700px){.leaflet-entry .leaf-entry-thanks{max-width:62%;font-weight:500}.leaflet-entry .leaf-entry-person figcaption{bottom:-34px;right:18px;font-size:1rem}.leaflet-entry .leaf-entry-person figcaption strong{font-size:1.25rem;margin-top:0}.leaflet-entry .leaf-entry-social a{flex-direction:column;gap:4px;border-radius:18px;padding:8px 4px;white-space:nowrap}.leaflet-entry .leaf-entry-person{bottom:210px}.leaflet-entry .leaf-entry-social{bottom:66px}}
.leaflet-entry .leaf-entry-person{top:8px;height:calc(100svh - 148px)}
/* スマホでも全身を大きく。本文を手前に重ね、顔と足元は隠さない。 */
@media(max-width:700px){
.leaflet-entry .leaf-entry-person{top:8px;right:0;bottom:auto;width:96%;height:calc(100svh - 260px)}
.leaflet-entry .leaf-entry-person figcaption{left:20px;right:auto;bottom:12px;text-align:left;z-index:2}
.leaflet-entry .leaf-entry-copy{text-shadow:0 2px 6px #183148,0 0 18px #183148}
.leaflet-entry .leaf-entry-copy .leaf-entry-label{max-width:48%;line-height:1.6}
.leaflet-entry .leaf-entry-person figcaption{z-index:3}
}

.leaf-mobile-break{display:none}
@media(max-width:700px){.leaf-mobile-break{display:block}}
/* 右上の淡青から左下の濃青へ、装飾の帯を持たないグラデーション。 */
.leaflet-entry .leaf-entry-hero{background:linear-gradient(90deg,#203a5370,transparent 75%),linear-gradient(to bottom left,#9fb9d0 0%,#6687a5 38%,#3a536c 68%,#233d55 100%)}
.leaflet-entry .leaf-entry-hero:before{content:none}
@media(max-width:700px){
.leaflet-entry .leaf-entry-hero{min-height:calc(100svh - 64px)}
.leaflet-entry .leaf-entry-person{right:-40px;height:calc(100svh - 252px)}
.leaflet-entry .leaf-entry-person figcaption{left:-20px}
.leaflet-entry .leaf-entry-copy{text-shadow:0 1px 3px #20394d70}
.leaflet-entry .leaf-entry-copy h1{max-width:56%}
.leaflet-entry .leaf-entry-thanks{max-width:56%;font-weight:600}
/* 通常時のヘッダーはTOP・下層とも64px。拡大時の自動伸長は保持する。 */
:root:not(.zoomed):not(.large-text) .black:not(.has-scrolled) :is(.masthead,.site-header){height:64px;min-height:64px;padding-block:6px}
:root:not(.zoomed) .black:not(.has-scrolled) :is(.brand,.black-identity){gap:10px;align-items:center}
:root:not(.zoomed) .black:not(.has-scrolled) :is(.brand img,.black-identity img){width:44px;height:44px;padding:3px;flex-shrink:0}
:root:not(.zoomed) .black:not(.has-scrolled) :is(.brand-name,.name-lockup){display:flex;flex-direction:column;gap:2px;width:136px;line-height:1}
:root:not(.zoomed) .black:not(.has-scrolled) :is(.noir-brand-office,.office-title){font-size:.625rem;line-height:1.1;margin:0;letter-spacing:.02em}
:root:not(.zoomed) .black:not(.has-scrolled) :is(.noir-brand-jp,.black-identity b){font-size:1.375rem;line-height:1.1;margin:0;letter-spacing:0}
:root:not(.zoomed) .black:not(.has-scrolled) :is(.noir-brand-en,.black-identity small){font-size:.5625rem;line-height:1.1;margin:0;letter-spacing:0}
}

@media(max-width:700px){:root:not(.zoomed):not(.large-text) .black-document{padding-top:64px}}
@media(max-width:700px){.leaflet-entry .leaf-entry-copy h1{max-width:200px}.leaflet-entry .leaf-entry-thanks{max-width:200px;margin-top:48px}}
/* 入口の表紙：写真だけを背景配置し、すべての文字とSNSは通常フローで守る。 */
.welcome-hero{isolation:isolate;position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:calc(100svh - 76px);padding:32px max(32px,calc((100vw - 1200px)/2)) 20px;color:#fff;background:linear-gradient(90deg,#203a5370,transparent 75%),linear-gradient(to bottom left,#a6bfd3,#6c8da9 38%,#3a536c 70%,#233d55)}
.welcome-stage{position:relative;flex:1;min-height:540px;display:flex;align-items:center}
.welcome-copy{position:relative;z-index:1;padding:32px 0;max-width:65%}
.welcome-copy p{text-align:left;text-align-last:left;margin:0;font-family:'Helvetica Neue',Arial,'Hiragino Sans','Hiragino Kaku Gothic ProN',sans-serif}
.welcome-label{font-size:1rem;line-height:1.8;font-weight:500;letter-spacing:.04em}
.welcome-copy h1{font-size:clamp(2.75rem,5.5vw,5rem);font-weight:600;line-height:1.45;letter-spacing:.01em;margin:32px 0 24px}
.welcome-copy h1 span{display:block}
.welcome-rule{display:block;width:40px;height:3px;background:#c8141e;margin-bottom:24px}
.welcome-thanks{font-size:1.125rem;line-height:1.9;font-weight:500}
.welcome-person{position:absolute;z-index:0;right:24px;bottom:0;height:100%;width:50%;max-height:760px;object-fit:contain;object-position:right bottom}
.welcome-bottom{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:end;gap:32px;padding-top:24px}
.welcome-social{width:400px;max-width:100%}
.welcome-social>p{font:500 1rem/1.8 'Helvetica Neue',Arial,'Hiragino Sans','Hiragino Kaku Gothic ProN',sans-serif;text-align:left;margin:0 0 16px}
.welcome-social nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:start}
.welcome-social nav>a,.welcome-pending{display:flex;flex-direction:column;align-items:center;gap:7px;color:#fff;font:500 .875rem/1.5 'Helvetica Neue',Arial,'Hiragino Sans','Hiragino Kaku Gothic ProN',sans-serif;text-decoration:none;min-height:80px;text-align:center}
.welcome-icon{display:grid;place-items:center;width:48px;height:48px;border:.5px solid #ffffff70;border-radius:50%;background:rgb(255 255 255 / 5%);backdrop-filter:blur(4px) saturate(120%);-webkit-backdrop-filter:blur(4px) saturate(120%);transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}
.welcome-icon svg{width:22px;height:22px}
.welcome-social :is(a:hover,a:focus-visible,.welcome-pending:hover) .welcome-icon{background:rgb(255 255 255 / 70%);border-color:#fff;box-shadow:0 0 0 3px #ffffff38,0 6px 24px #ffffff40}
.welcome-social a:hover .welcome-icon{transform:translateY(-2px)}
.welcome-social a:focus-visible{outline:2px solid #fff;outline-offset:4px;border-radius:8px}
.welcome-pending small{font-size:.75rem;line-height:1.5;border:1px solid #ffffff70;border-radius:4px;padding:1px 6px;margin-top:-3px}
.welcome-scroll{display:flex;align-items:center;justify-content:center;gap:24px;min-height:48px;padding:12px 0;font:500 1rem/1.5 'Helvetica Neue',Arial,'Hiragino Sans','Hiragino Kaku Gothic ProN',sans-serif;color:#fff}
@media(max-width:700px){
.welcome-hero{min-height:calc(100svh - 64px);padding:20px 24px 12px}
.welcome-stage{min-height:340px;align-items:flex-start}
.welcome-copy{max-width:100%;padding:12px 0 24px}
.welcome-label{font-size:1rem;line-height:1.7;max-width:155px}
/* 中間幅でも句読点と字間を含む一行分を確保。文字拡大時の折り返しは妨げない。 */
.welcome-copy h1{font-size:clamp(1.75rem,7.5vw,2.5rem);line-height:1.5;margin:28px 0 20px;max-width:none}
.welcome-copy h1 span{word-break:normal}
.welcome-thanks{font-size:1rem;line-height:1.9;max-width:200px}
.welcome-rule{width:32px;height:2px;margin-bottom:20px}
.welcome-person{right:-24px;bottom:0;height:100%;width:78%;max-height:620px;object-position:right bottom}
.welcome-bottom{display:block;padding-top:20px}
.welcome-social{width:100%}
.welcome-social>p{font-size:1rem;margin-bottom:12px}
.welcome-social nav{gap:8px}
.welcome-scroll{margin-top:16px;border-top:1px solid #ffffff35;padding-top:16px}
}
@media(prefers-reduced-motion:reduce){.welcome-icon{transition:none}}

@media(max-width:700px) and (max-height:700px){
.welcome-stage{min-height:280px}
.welcome-copy{padding:4px 0 12px}
.welcome-copy h1{font-size:1.75rem;line-height:1.3;margin:16px 0}
.welcome-label{line-height:1.6}
.welcome-rule{margin-bottom:14px}
.welcome-thanks{line-height:1.7}
.welcome-bottom{padding-top:12px}
.welcome-social>p{display:none}
.welcome-scroll{margin-top:10px;padding-top:10px}
}

.leaflet-entry .welcome-scroll{text-decoration:none;letter-spacing:.04em}
.leaflet-entry .welcome-scroll:hover{color:#fff;text-decoration:underline;text-underline-offset:6px}

.welcome-pending .welcome-icon svg{width:32px;height:32px}

@media(max-width:700px){
:root:not(.large-text):not(.zoomed) .welcome-copy{position:static}
:root:not(.large-text):not(.zoomed) .welcome-copy :is(.welcome-label,h1,.welcome-rule){position:relative;z-index:1}
:root:not(.large-text):not(.zoomed) .welcome-thanks{position:absolute;left:0;bottom:20px;z-index:1}
}

/* 紙面の大きなOutfitの6を、政策セクションそのものの見出しにする。 */
.leaflet-entry .leaf-entry-doors{padding-top:64px;padding-bottom:96px;background:#f3f5f6;color:#263f56;scroll-margin-top:76px}
.leaf-six-intro{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:48px;margin-bottom:64px}
.leaf-six-number{font-family:'Noir Outfit',sans-serif;font-weight:800;font-size:clamp(15rem,35vw,32rem);line-height:.88;letter-spacing:-.06em;justify-self:center}
.leaf-six-words>p{font-size:1.25rem;font-weight:600;line-height:1.8;text-align:left;margin:0}
.leaf-six-words h2{font-size:clamp(2.5rem,6vw,5rem);line-height:1.35;letter-spacing:.06em;margin:12px 0 28px}
.leaf-six-words h2:after{content:'';display:block;width:64px;height:5px;background:#c8141e;margin-top:28px}
.leaf-six-words .leaf-six-invitation{font-size:1.125rem;font-weight:400;line-height:1.9}
.leaflet-entry .leaf-door-grid{gap:0 32px}
.leaflet-entry .leaf-door{display:grid;grid-template-columns:1fr 92px;grid-template-rows:96px 1fr auto;gap:20px 12px;padding:32px 0;border:0;border-top:1px solid #768b9d;border-radius:0;background:transparent;transition:color .2s}
.leaflet-entry .leaf-door-number{grid-column:1;grid-row:1;align-self:start;font-family:'Noir Outfit',sans-serif;font-size:3.5rem;font-weight:500;line-height:1;color:#3a536c}
.leaflet-entry .leaf-door-art{grid-column:2;grid-row:1;height:92px;width:92px;margin:0;color:#3a536c}
.leaflet-entry .leaf-door h3{grid-column:1/-1;grid-row:2;font-size:1.5rem;line-height:1.65;margin:0}
.leaflet-entry .leaf-door-next{grid-column:1/-1;grid-row:3;justify-self:start;border:0;border-bottom:1px solid #8c2430;padding:0 0 5px;margin-top:0;font-size:1rem}
.leaflet-entry .leaf-door:hover{background:transparent;transform:none;color:#8c2430}
.leaflet-entry .leaf-door:hover .leaf-door-number{color:#8c2430}
@media(min-width:701px){
.welcome-stage{min-height:0}
.welcome-copy{padding:0;max-width:50%}
.welcome-label{line-height:1.65}
.welcome-copy h1{font-size:clamp(2.75rem,min(5.5vw,8svh),5rem);line-height:1.3;margin:20px 0 16px}
.welcome-thanks{line-height:1.75}
.welcome-rule{margin-bottom:16px}
.welcome-bottom{display:block;max-width:48%;padding-top:16px}
.welcome-social>p{line-height:1.6;margin-bottom:12px}
.welcome-scroll{justify-content:flex-start;margin-top:12px;border-top:1px solid #ffffff35;padding-top:12px}
}
@media(min-width:701px) and (max-height:700px){
.welcome-hero{padding-block:16px}
.welcome-social>p{display:none}
}
@media(min-width:701px) and (max-height:600px){
.welcome-hero{padding-block:14px}
.welcome-copy h1{font-size:clamp(2rem,6svh,2.5rem);line-height:1.25;margin:12px 0}
.welcome-label{line-height:1.5}
.welcome-thanks{font-size:1rem;line-height:1.6}
.welcome-rule{margin-bottom:12px}
.welcome-bottom{padding-top:12px}
}
@media(max-width:700px){
.leaflet-entry .leaf-entry-doors{padding:48px 24px 64px;scroll-margin-top:64px}
.leaf-six-intro{grid-template-columns:.8fr 1.2fr;gap:16px;margin-bottom:40px}
.leaf-six-number{font-size:clamp(10rem,35vw,15rem);letter-spacing:-.07em;line-height:.95}
.leaf-six-words>p{font-size:1rem;line-height:1.7}
.leaf-six-words h2{font-size:clamp(1.75rem,6vw,2.5rem);margin:8px 0 16px;letter-spacing:.03em}
.leaf-six-words h2:after{width:32px;height:3px;margin-top:16px}
.leaf-six-words .leaf-six-invitation{font-size:1rem;line-height:1.8}
.leaflet-entry .leaf-door{grid-template-columns:52px 1fr 68px;grid-template-rows:auto auto;gap:12px 16px;padding:28px 0}
.leaflet-entry .leaf-door-number{grid-column:1;grid-row:1/3;font-size:2.5rem}
.leaflet-entry .leaf-door-art{grid-column:3;grid-row:1/3;width:68px;height:80px;align-self:center}
.leaflet-entry .leaf-door h3{grid-column:2;grid-row:1;font-size:1.125rem}
.leaflet-entry .leaf-door-next{grid-column:2;grid-row:2}
}
@media(max-width:380px){.leaflet-entry .leaf-door{grid-template-columns:40px 1fr 52px;gap:12px}.leaflet-entry .leaf-door-art{width:52px}.leaflet-entry .leaf-door-number{font-size:2rem}}
@media(max-width:700px){
:root:not(.large-text):not(.zoomed) .welcome-copy :is(.welcome-label,h1,.welcome-rule){transform:translateY(24px)}
}
@media(max-width:700px){
.leaf-six-intro{grid-template-columns:1fr 1fr}
.leaf-six-number{font-size:clamp(13rem,60vw,22rem)}
.leaflet-entry .leaf-door{grid-template-columns:40px 1fr;gap:12px 16px}
.leaflet-entry .leaf-door-art{position:absolute;right:0;bottom:24px;width:44px;height:44px}
.leaflet-entry .leaf-door-next{margin-right:52px}
}
@media(max-width:380px){.leaflet-entry .leaf-door{gap:12px}}

.leaf-six-words>p>span{display:inline-block}
:root:is(.large-text,.zoomed) .leaf-six-intro{grid-template-columns:1fr;gap:24px}
:root:is(.large-text,.zoomed) .leaf-six-number{justify-self:start;font-size:min(20rem,65vw)}

/* ブランドの配色を保ち、反応は外側のGlassに集約する。 */
.welcome-social a .welcome-icon svg{width:28px;height:28px;color:#fff}
.welcome-pending .welcome-icon path{fill:#06c755}
.welcome-social nav>a:is(:hover,:focus-visible){color:#fff}
.welcome-social nav>a:is(:hover,:focus-visible)>span:last-child{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px}
.welcome-social nav>a:focus-visible{outline:2px solid #fff;outline-offset:4px;border-radius:8px}

/* 政策は題名そのものが入口。明るい風景を大きく見せる。 */
.leaflet-entry .leaf-door-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 40px}
.leaflet-entry .leaf-door{grid-template-columns:1fr;grid-template-rows:auto 1fr auto;gap:20px;padding:28px 0 32px}
.leaflet-entry .leaf-door-number{grid-area:1/1;font-size:3rem}
.leaflet-entry .leaf-door h3{grid-area:2/1;font-size:1.375rem;line-height:1.6;letter-spacing:0}
.leaf-door h3>span{display:block}
.leaf-door h3 svg{display:inline-block;width:.7em;height:.7em;margin-left:10px;vertical-align:baseline;transition:transform .2s}
.leaflet-entry .leaf-door-art{position:static;grid-area:3/1;display:block;width:100%;height:auto;aspect-ratio:1.8;margin:4px 0 0}
.leaf-door-art img{display:block;width:100%;height:100%;object-fit:contain}
.leaf-door:hover h3 svg{transform:translate(2px,-2px)}
@media(min-width:701px) and (max-width:1200px){.leaflet-entry .leaf-door-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
.leaflet-entry .leaf-door-grid{grid-template-columns:1fr;gap:0}
.leaflet-entry .leaf-door{grid-template-columns:40px 1fr;grid-template-rows:auto auto;gap:22px 16px;padding:28px 0}
.leaflet-entry .leaf-door-number{grid-area:1/1;font-size:2.25rem;line-height:1.25}
.leaflet-entry .leaf-door h3{grid-area:1/2;font-size:1.25rem;line-height:1.6}
.leaflet-entry .leaf-door-art{grid-area:2/1/3/3;width:100%;max-width:440px;justify-self:center;margin:0}
}
:root:is(.large-text,.zoomed) .leaflet-entry .leaf-door-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}
:root:is(.large-text,.zoomed) .leaflet-entry .leaf-door{grid-template-columns:1fr;grid-template-rows:auto auto auto}
:root:is(.large-text,.zoomed) .leaflet-entry .leaf-door-number{grid-area:1/1}
:root:is(.large-text,.zoomed) .leaflet-entry .leaf-door h3{grid-area:2/1}
:root:is(.large-text,.zoomed) .leaflet-entry .leaf-door-art{grid-area:3/1}

/* 人物と議会を、写真を軸にした二つの誌面として見せる。 */
.leaf-entry-story{display:grid;grid-template-columns:.85fr 1.15fr;grid-template-areas:'heading photo' 'detail photo';gap:40px 64px;align-items:start;padding:112px max(24px,calc((100vw - 1240px)/2));background:linear-gradient(125deg,#223b50,#405f79);color:#fff}
.leaf-story-heading{grid-area:heading;align-self:end}
.leaf-entry-story .leaf-entry-label,.leaf-assembly .leaf-entry-label{margin:0 0 28px;font-size:1rem;font-weight:600;letter-spacing:.12em;line-height:1.6;text-align:left}
.leaf-entry-story h2,.leaf-assembly h2{font-size:clamp(2.125rem,4.1vw,3.75rem);font-weight:700;line-height:1.5;letter-spacing:.02em;margin:0}
.leaf-entry-story h2>span,.leaf-assembly h2>span{display:block}
.leaf-story-photo{grid-area:photo;align-self:center}
.leaf-entry-story .leaf-story-photo img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;border-radius:0;clip-path:polygon(0 0,calc(100% - 36px) 0,100% 36px,100% 100%,24px 100%,0 calc(100% - 24px))}
.black-document.leaflet-entry .leaf-entry-story figcaption{font-size:.8125rem;line-height:1.6;margin:12px 0 0;text-align:right;color:#e2eaf1}
.leaf-story-detail{grid-area:detail}
.leaf-entry-story .leaf-story-detail p{font-size:1.125rem;line-height:1.9;margin:0 0 32px}
.leaf-entry-story .leaf-editorial-link{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;max-width:340px;min-height:60px;padding:16px 0;border-top:1px solid #b5c7d580;text-decoration:none;font-size:1.125rem}
.leaf-editorial-link svg{width:24px;height:24px;flex:none}
.leaf-editorial-link:hover{color:#dceeff}
.leaf-assembly{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:'photo heading' 'records records';gap:64px 80px;padding:112px max(24px,calc((100vw - 1240px)/2));background:#fafaf7;color:#263f56}
.leaf-assembly-heading{grid-area:heading;align-self:center}
.leaf-assembly-intro{font-size:1.125rem;line-height:1.9;max-width:440px;margin:28px 0 0}
.leaf-assembly-photo{grid-area:photo;margin:0;align-self:center}
.leaf-assembly-frame{aspect-ratio:4/3;overflow:hidden;border-radius:4% 0 12% 0;clip-path:polygon(0 0,88% 0,100% 12%,100% 100%,8% 100%,0 92%)}
.leaf-assembly-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.16);transform-origin:50% 58%}
.black-document.leaflet-entry .leaf-assembly-photo figcaption{font-size:.8125rem;line-height:1.6;margin-top:12px;text-align:right;color:#536a7d}
.leaf-assembly-records{grid-area:records;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.leaf-assembly-records a{display:grid;grid-template-columns:1fr 24px;grid-template-rows:auto 1fr;gap:18px 20px;border-top:1px solid #8798a5;padding:24px 0 12px;text-decoration:none;color:inherit}
.leaf-assembly-records time{grid-column:1/-1;font-family:'Noir Outfit',sans-serif;font-size:1rem;letter-spacing:.05em;line-height:1.6}
.leaf-assembly-records h3{grid-column:1/-1;font-size:1.375rem;line-height:1.7;margin:0;align-self:start}
.leaf-assembly-records h3>span{display:block}.leaf-assembly-records svg{display:inline-block;width:.75em;height:.75em;margin:0 0 0 10px;vertical-align:baseline}
.leaf-assembly-records a:hover{color:#8c2430}
.leaf-editorial-link:focus-visible,.leaf-assembly-records a:focus-visible{outline:3px solid currentColor;outline-offset:8px}
footer>.copyright{grid-column:1/-1;width:100%;padding:28px 24px 32px;margin:0;border:0;font:400 .75rem/1.8 'Helvetica Neue',Arial,'Hiragino Sans','Hiragino Kaku Gothic ProN',sans-serif;text-align:center;color:#bababa;letter-spacing:.04em}
@media(max-width:1000px){
.leaf-entry-story{gap:32px;padding-top:80px;padding-bottom:80px;grid-template-columns:1fr 1fr}
.leaf-entry-story h2,.leaf-assembly h2{font-size:2.5rem}
.leaf-assembly{gap:48px 40px;padding-top:80px;padding-bottom:80px}
.leaf-assembly-records{grid-template-columns:1fr;gap:0}
.leaf-assembly-records a{grid-template-columns:120px 1fr;align-items:start;gap:24px}
.leaf-assembly-records time{grid-column:1;grid-row:1}
.leaf-assembly-records h3{grid-column:2;grid-row:1}
}
@media(max-width:700px){
.leaf-entry-story{grid-template-columns:1fr;grid-template-areas:'heading' 'photo' 'detail';gap:32px;padding:64px 24px}
.leaf-entry-story h2,.leaf-assembly h2{font-size:2.125rem;line-height:1.5;letter-spacing:0}
.leaf-entry-story .leaf-entry-label,.leaf-assembly .leaf-entry-label{margin-bottom:20px}
.leaf-entry-story .leaf-story-detail p{margin-bottom:24px}
.leaf-entry-story .leaf-story-photo img{clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,16px 100%,0 calc(100% - 16px))}
.leaf-entry-story .leaf-editorial-link{max-width:none}
.leaf-assembly{grid-template-columns:1fr;grid-template-areas:'heading' 'photo' 'records';gap:32px;padding:64px 24px}
.leaf-assembly-intro{margin-top:24px}
.leaf-assembly-records{grid-template-columns:1fr;gap:0}
.leaf-assembly-records a{padding:24px 0;gap:12px 20px}
.leaf-assembly-records time{grid-column:1/-1;grid-row:1}
.leaf-assembly-records h3{grid-column:1/-1;grid-row:2}
.leaf-assembly-records h3{grid-column:1/-1;font-size:1.25rem}
}
:root:is(.large-text,.zoomed) .leaf-entry-story{grid-template-columns:1fr;grid-template-areas:'heading' 'photo' 'detail'}
:root:is(.large-text,.zoomed) .leaf-assembly{grid-template-columns:1fr;grid-template-areas:'heading' 'photo' 'records'}
:root:is(.large-text,.zoomed) .leaf-assembly-records{grid-template-columns:1fr}
:root:is(.large-text,.zoomed) .leaf-assembly-records a{grid-template-columns:1fr}
:root:is(.large-text,.zoomed) .leaf-assembly-records time{grid-column:1;grid-row:1}
:root:is(.large-text,.zoomed) .leaf-assembly-records h3{grid-column:1;grid-row:2}
:root:is(.large-text,.zoomed) :is(.leaf-entry-story,.leaf-assembly) h2{font-size:2rem}
:root:is(.large-text,.zoomed) :is(.leaf-story-photo,.leaf-assembly-photo){width:100%;max-width:800px}
@media(prefers-reduced-motion:reduce){.leaf-door h3 svg{transition:none}}
/* iPhoneでの組版。本文は両端揃えを保ち、末尾だけが孤立するのを防ぐ。 */
.reading-tail{white-space:nowrap}
.editorial-unit{display:inline-block;max-width:100%;text-wrap:balance}
.black-document main :is(h1,h2,h3,h4),.black :is(.topic-row h3,.speech-card h2,.tail-activity h3){text-wrap:balance}
/* iOS Safariでも日本語を持つ書体へ確実につなぐ。 */
:root .black-document .policy-detail h2,:root .black .tail-profile h2,:root .black .tail-activities h2,:root .black .tail-links h2{font-family:'Hiragino Sans','Hiragino Kaku Gothic ProN','Helvetica Neue',Arial,sans-serif;font-weight:600}
.archive-title-year{display:block;font-size:.7em;font-weight:500;margin-bottom:10px}
.archive-title-kind{display:inline-block;max-width:100%;font-size:.68em;font-weight:500;margin-left:12px}
.archive-article .official-links{list-style:none;padding:0;margin-top:28px}
.official-links li{border-top:1px solid #c8bfaf;padding:0}
.official-links li:last-child{border-bottom:1px solid #c8bfaf}
.archive-article .official-links a{display:block;padding:20px 0;text-wrap:pretty}
.profile-role-list li>span,.profile-tenure{text-wrap:balance}
.daily-links strong{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center}
.daily-links strong span{text-wrap:balance}
@media(max-width:760px){
 :root:not(.zoomed):not(.large-text) .noir-article-page .page-hero h1{font-size:clamp(1.5rem,7.5vw,2rem)}
 .archive-title-kind{display:block;margin:8px 0 0}
 .black-document .news-row h3,.black-document .speech-card h2{line-height:1.7}
}
html:is(.large-text,.zoomed) .editorial-unit{display:inline}

.black-document .not-found-title{font-size:clamp(1.5rem,6vw,2rem);line-height:1.65}

/* リーフ入口：実機14 Pro Maxで弱く見えた案内に、役割ごとの強弱をつける。 */
.leaflet-entry .welcome-copy :is(.welcome-label,.welcome-thanks),
.leaflet-entry .welcome-social>p,
.leaflet-entry .welcome-scroll{font-family:'Hiragino Sans','Hiragino Kaku Gothic ProN','Helvetica Neue',Arial,sans-serif;font-weight:700}
.leaflet-entry .welcome-label{font-size:1.125rem;line-height:1.65;letter-spacing:.025em;max-width:none}
.leaflet-entry .welcome-thanks{font-size:1.125rem;line-height:1.75;max-width:none}
.leaflet-entry .welcome-social>p{font-size:1.25rem;line-height:1.6;letter-spacing:.015em}
.leaflet-entry .welcome-scroll{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;min-height:56px;margin-top:20px;padding:14px 20px;border:1.5px solid #fff;border-radius:4px;background:#203a53;color:#fff;font-size:1.125rem;line-height:1.5;letter-spacing:.015em;text-align:center}
.leaflet-entry .welcome-scroll::after{content:'';width:10px;height:10px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-3px) rotate(45deg)}
.leaflet-entry .welcome-scroll:hover{background:#fff;color:#233d55;text-decoration:none}
.leaflet-entry .welcome-scroll:focus-visible{outline:3px solid #fff;outline-offset:4px}
@media(min-width:701px){.leaflet-entry .welcome-scroll{max-width:400px}}
@media(max-width:360px){.leaflet-entry .welcome-label,.leaflet-entry .welcome-thanks{font-size:1.0625rem}.leaflet-entry .welcome-scroll{padding-inline:14px}}

/* リーフの大きな数字と青赤の対比を、画面を使い切る誌面へ。 */
.leaflet-entry .leaf-entry-doors{padding:0 0 88px;background:#f4f5f6}
.leaf-six-editorial{position:relative;overflow:hidden;padding:64px max(24px,calc((100vw - 1120px)/2)) 32px;background:linear-gradient(125deg,#3a536c,#233d55);color:#fff}
.leaf-six-kicker{position:relative;z-index:1;margin:0;font-size:clamp(1.5rem,3vw,2.75rem);line-height:1.5;font-weight:700;letter-spacing:.025em;text-align:left!important}
.leaf-six-kicker>span{display:block}
.leaf-six-lockup{display:flex;align-items:center;gap:clamp(24px,5vw,80px);justify-content:space-between;margin:12px 0 32px}
.leaf-six-display{font-family:'Noir Outfit',sans-serif;font-size:clamp(17rem,58vw,32rem);font-weight:800;line-height:.85;letter-spacing:-.075em;margin-left:-.035em}
.leaf-six-editorial h2{font-family:'Hiragino Mincho ProN','Yu Mincho',serif;font-size:clamp(3rem,8vw,7rem);font-weight:600;line-height:1.2;letter-spacing:-.025em;margin:0;padding-top:24px}
.leaf-six-editorial h2>span{display:block}
.leaf-six-editorial h2:after{content:'';display:block;width:56px;height:5px;background:#e01b2b;margin-top:24px}
.leaf-six-guide{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0;padding-top:24px;border-top:1px solid #ffffff55;font-size:1.125rem;font-weight:600;line-height:1.7;text-align:left!important}
.leaf-six-guide>span{font-size:1.75rem;line-height:1}
.leaflet-entry .leaf-door-grid{max-width:1120px;margin:0 auto;padding:56px 24px 0;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px 64px}
.leaflet-entry .leaf-door{position:relative;display:grid;grid-template-columns:1fr;grid-template-rows:auto auto 1fr;gap:24px;padding:24px 0 0;border-top:2px solid #3a536c;color:#263f56;isolation:isolate}
.leaflet-entry .leaf-door-number{grid-area:1/1;font-size:clamp(4.5rem,8vw,6.5rem);font-weight:700;line-height:.9;letter-spacing:-.055em;color:#3a536c}
.leaflet-entry .leaf-door h3{grid-area:2/1;margin:0;font-family:'Hiragino Sans','Hiragino Kaku Gothic ProN',sans-serif;font-size:clamp(1.5rem,2.4vw,2rem);font-weight:700;line-height:1.5;letter-spacing:-.025em;text-wrap:initial}
.leaflet-entry .leaf-door h3>span{display:block}
.leaflet-entry .leaf-door h3>span:last-child{font-size:1.2em;margin-top:4px}
.leaflet-entry .leaf-door h3 svg{width:24px;height:24px;margin-left:12px;vertical-align:middle;stroke-width:2}
.leaflet-entry .leaf-door h3:after{content:'';display:block;width:32px;height:4px;background:#c8141e;margin-top:20px}
.leaflet-entry .leaf-door-art{grid-area:3/1;position:static;align-self:end;width:100%;max-width:none;height:auto;margin:0;aspect-ratio:1.8;transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.leaflet-entry .leaf-door:hover{color:#263f56}
.leaflet-entry .leaf-door:hover .leaf-door-number{color:#3a536c}
.leaflet-entry .leaf-door:hover .leaf-door-art{transform:translateY(-5px)}
.leaflet-entry .leaf-door:focus-visible{outline:3px solid #c8141e;outline-offset:8px}
@media(max-width:700px){
 .leaf-six-editorial{padding:44px 24px 28px}
 .leaf-six-lockup{gap:32px;justify-content:flex-start;margin:12px 0 32px}
 .leaf-six-display{font-size:clamp(14rem,65vw,23rem)}
 .leaf-six-editorial h2{font-size:clamp(2.75rem,16vw,4.5rem)}
 .leaflet-entry .leaf-door-grid{grid-template-columns:1fr;gap:52px;padding-top:40px}
 .leaflet-entry .leaf-door{gap:22px}
 .leaflet-entry .leaf-door h3{font-size:clamp(1.5rem,7vw,1.875rem)}
}
:root:is(.large-text,.zoomed) .leaf-six-lockup{flex-wrap:wrap}
:root:is(.large-text,.zoomed) .leaf-six-editorial h2{font-size:2.75rem}
:root:is(.large-text,.zoomed) .leaf-six-guide{display:block}
:root:is(.large-text,.zoomed) .leaf-six-guide>span{display:block;margin-top:12px}
:root:is(.large-text,.zoomed) .leaflet-entry .leaf-door-grid{grid-template-columns:1fr}
:root:is(.large-text,.zoomed) .leaflet-entry .leaf-door h3{font-size:1.5rem}
@media(prefers-reduced-motion:no-preference){
 .leaf-door.is-entering{animation:leaf-door-arrive .7s cubic-bezier(.2,.7,.2,1) both}
 @keyframes leaf-door-arrive{from{opacity:.45;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
}
@media(prefers-reduced-motion:reduce){.leaflet-entry .leaf-door-art{transition:none}}

/* リーフと同じ、一行の「つの実行」を大きな6の横へ。まとまりを中央に置く。 */
.leaf-six-kicker{text-align:center!important;text-align-last:center!important;font-size:clamp(1.125rem,5.2vw,2rem)}
.leaf-six-lockup{justify-content:center;gap:8px;margin:24px auto 32px}
.leaf-six-display{font-size:clamp(12rem,60vw,30rem);flex-shrink:0;margin-left:0}
.leaf-six-editorial h2{font-size:clamp(1.75rem,7.8vw,4rem);line-height:1.25;padding-top:48px;letter-spacing:-.025em;white-space:nowrap}
.leaf-six-editorial h2:after{width:40px;height:4px;margin:16px auto 0}
.leaf-six-guide{justify-content:center;position:relative;text-align:center!important;text-align-last:center!important;padding-inline:28px}
.leaf-six-guide>span{position:absolute;right:0}
:root:is(.large-text,.zoomed) .leaf-six-lockup{gap:20px;justify-content:center}
:root:is(.large-text,.zoomed) .leaf-six-editorial h2{font-size:1.75rem;white-space:normal;text-align:center;padding-top:0}
:root:is(.large-text,.zoomed) .leaf-six-guide>span{position:static}

/* 本ページと同じ筆の6を使用。青い面では白く表示し、原素材は共用する。 */
.leaf-six-display.leaf-six-brush{display:block;width:clamp(6.75rem,36vw,17.5rem);max-width:45%;height:auto;filter:brightness(0) invert(1)}

/* PHAの猫と同じ独立レイヤー。既存余白に重ね、本文の座標は変えない。 */
.leaflet-entry :is(.leaf-door-grid,.leaf-entry-story,.leaf-assembly){position:relative}
.leaf-cat{position:absolute;width:84px;height:60px;z-index:1;margin:0;color:#40554b;pointer-events:none;user-select:none}
.leaf-cat svg{display:block;width:100%;height:100%;overflow:visible}
.leaf-cat-sit{right:24px;top:2px}
.leaf-cat-walk{left:max(24px,calc((100vw - 1240px)/2));top:-54px}
.leaf-cat-sleep{right:max(24px,calc((100vw - 1240px)/2));bottom:24px}
.leaf-cat-tail{transform-box:view-box;transform-origin:74px 83px;animation:leaf-cat-tail 2.8s ease-in-out infinite}
.leaf-cat-walk .leaf-cat-tail{transform-origin:34px 54px;animation-duration:2.1s}
.leaf-cat-body{transform-box:view-box;transform-origin:70px 88px}
.leaf-cat-sit .leaf-cat-body{animation:leaf-cat-look 4s ease-in-out infinite}
.leaf-cat-walk .leaf-cat-body{animation:leaf-cat-step 3s ease-in-out infinite}
.leaf-cat-sleep .leaf-cat-body{animation:leaf-cat-breathe 3s ease-in-out infinite}
@keyframes leaf-cat-tail{0%,100%{transform:rotate(-22deg)}50%{transform:rotate(26deg)}}
@keyframes leaf-cat-look{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(5deg)}}
@keyframes leaf-cat-step{0%,100%{transform:translateX(-8px)}25%{transform:translate(-2px,-3px)}50%{transform:translateX(8px)}75%{transform:translate(2px,-3px)}}
@keyframes leaf-cat-breathe{0%,100%{transform:scaleY(1)}50%{transform:scaleY(1.15)}}
@media(max-width:700px){.leaf-cat{width:62px;height:44px}.leaf-cat-sit{top:0}.leaf-cat-walk{top:-40px}.leaf-cat-sleep{bottom:12px}}
@media(prefers-reduced-motion:reduce){.leaf-cat *{animation:none!important}}
