:root{--ed-ink:#22372f;--ed-muted:#6d7c70;--ed-paper:#f5f0e6;--ed-ivory:#fffdf7;--ed-line:#d7d1c2;--ed-green:#193e34;--ed-red:#a9543c;--ed-gold:#c6a170;--ed-serif:"Hiragino Mincho ProN","Yu Mincho","Noto Serif CJK JP",serif;--ed-sans:"Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans CJK JP",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 70% 0,#fffaf1 0,var(--ed-paper) 52%,#efe9dd 100%);color:var(--ed-ink);font-family:var(--ed-sans);font-size:14px;line-height:1.7}a{color:inherit}a:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--ed-red);outline-offset:4px}.paper-grain{position:fixed;inset:0;z-index:5;pointer-events:none;opacity:.1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.58' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E")}
.ed-shell{display:grid;grid-template-columns:238px minmax(0,1fr);min-height:100dvh}.ed-side{position:sticky;top:0;height:100dvh;padding:32px 18px 28px;background:#f1ecdf;border-right:1px solid #d8d0bf;display:flex;flex-direction:column;z-index:2}.ed-brand{display:flex;align-items:center;gap:11px;text-decoration:none;padding:2px 9px 30px;border-bottom:1px solid #d6cebd}.ed-brand-mark{display:grid;place-items:center;width:40px;height:40px;background:var(--ed-red);color:#fffaf1;box-shadow:4px 4px 0 #d6bd91;font:28px var(--ed-serif)}.ed-brand strong{font:25px var(--ed-serif);display:block;letter-spacing:.12em}.ed-brand small{font-size:10px;color:var(--ed-muted);letter-spacing:.14em}.ed-side-head{margin:31px 10px 10px;color:#9a8069;font-size:10px;letter-spacing:.2em;font-weight:700}.ed-side-head-alt{margin-top:33px}.ed-nav{display:grid;gap:2px}.ed-nav a{display:block;text-decoration:none;padding:9px 12px;font-size:12px;color:#466055;transition:color .45s cubic-bezier(.32,.72,0,1),background .45s cubic-bezier(.32,.72,0,1),transform .45s cubic-bezier(.32,.72,0,1)}.ed-nav a:hover,.ed-nav a[aria-current=page]{color:#fffdf7;background:var(--ed-green);transform:translateX(2px)}.ed-side-footer{margin-top:auto;display:grid;gap:6px;padding:17px 10px 0;border-top:1px solid #d6cebd;font-size:10px;color:#9b8c79;letter-spacing:.13em}.ed-side-footer a{color:#5e7567;letter-spacing:0;text-decoration:none;overflow-wrap:anywhere}.ed-content{min-width:0}.ed-topbar{height:88px;display:flex;align-items:center;justify-content:space-between;max-width:1420px;margin:auto;padding:0 clamp(22px,5.3vw,88px)}.ed-top-label{font-size:10px;letter-spacing:.24em;color:#697d70}.ed-top-label span{display:inline-block;width:34px;height:1px;background:var(--ed-gold);vertical-align:middle;margin:0 10px}.ed-mobile-brand{display:none}.ed-locale{display:flex;align-items:center;gap:12px;font-size:11px;color:#768678}.ed-locale select{border:1px solid #cabfae;background:#fffaf1;padding:8px 11px;color:var(--ed-green);min-height:40px}.ed-main{max-width:1420px;margin:auto;padding:0 clamp(22px,5.3vw,88px) 80px}.ed-breadcrumb{display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:#7e8a7d;font-size:11px;margin:4px 0 26px}.ed-breadcrumb a{text-decoration:none;color:#466556}.ed-breadcrumb a:hover{text-decoration:underline;text-underline-offset:4px}.ed-hero{position:relative;overflow:hidden;background:var(--ed-green);color:#fff9eb;padding:clamp(44px,6.5vw,91px) clamp(35px,6vw,86px) 38px;min-height:380px;isolation:isolate;box-shadow:0 22px 55px #193e341c;animation:ed-enter .75s cubic-bezier(.32,.72,0,1) both}.ed-hero:before{content:"";position:absolute;z-index:-1;inset:auto -90px -170px auto;width:470px;height:470px;border:1px solid #f4dfb94d;border-radius:50%;box-shadow:0 0 0 57px #f4dfb910,0 0 0 124px #f4dfb90d}.ed-eyebrow,.ed-kicker{font-size:10px;letter-spacing:.22em;font-weight:700;color:#edc999;text-transform:uppercase}.ed-hero h1{font:500 clamp(44px,5.8vw,78px)/1.17 var(--ed-serif);letter-spacing:.05em;margin:26px 0 15px}.ed-hero p{max-width:610px;color:#eae3d3;font-size:15px;line-height:1.9}.ed-hero-line{margin-top:70px;border-top:1px solid #f8e7c14b;padding-top:15px;display:flex;justify-content:space-between;color:#e9d1ab;font-size:10px;letter-spacing:.15em}.ed-section{margin-top:68px;animation:ed-enter .8s .08s cubic-bezier(.32,.72,0,1) both}.ed-section-head{display:flex;align-items:baseline;justify-content:space-between;padding:0 3px 15px;border-bottom:1px solid #b9b7a9;color:var(--ed-green)}.ed-section-head span{font:500 24px var(--ed-serif)}.ed-section-head small{font-size:10px;letter-spacing:.18em;color:#9d8b74}.ed-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:21px}.ed-card-shell{padding:6px;background:#ddd8c9;border-radius:25px;box-shadow:0 11px 34px #21342a0c}.ed-card{min-height:180px;display:flex;align-items:flex-start;gap:24px;padding:27px 28px;background:var(--ed-ivory);text-decoration:none;border-radius:20px;box-shadow:inset 0 1px 1px #fff9ef;transition:transform .6s cubic-bezier(.32,.72,0,1),background .6s cubic-bezier(.32,.72,0,1)}.ed-card:hover{transform:translateY(-4px);background:#fffaf0}.ed-card-index{font:500 36px/1 var(--ed-serif);color:var(--ed-red);min-width:49px}.ed-card-body{display:grid;gap:8px;flex:1;min-width:0}.ed-card-body small{font-size:10px;color:#9b8066;letter-spacing:.16em}.ed-card-body strong{font:500 clamp(20px,2vw,27px)/1.35 var(--ed-serif);color:var(--ed-green);overflow-wrap:anywhere}.ed-card-body>span{font-size:12px;color:#738174;line-height:1.7}.ed-card-arrow{display:grid;place-items:center;flex:0 0 31px;width:31px;height:31px;border-radius:50%;background:#edf1e8;color:var(--ed-green);transition:transform .6s cubic-bezier(.32,.72,0,1)}.ed-card:hover .ed-card-arrow{transform:translate(3px,-3px)}.ed-topic-group{margin-top:53px}.ed-article-head{background:var(--ed-green);color:#fff9ed;padding:clamp(40px,6vw,83px) clamp(32px,6.8vw,94px) clamp(34px,5vw,60px);min-height:330px;position:relative;overflow:hidden;animation:ed-enter .75s cubic-bezier(.32,.72,0,1) both}.ed-article-head:after{content:"";position:absolute;width:270px;height:270px;right:-72px;bottom:-154px;border:1px solid #ead3a74a;border-radius:50%;box-shadow:0 0 0 49px #ead3a70d}.ed-article-head h1{font:500 clamp(34px,4.8vw,63px)/1.35 var(--ed-serif);margin:26px 0 16px;letter-spacing:.03em;max-width:950px;text-wrap:balance}.ed-article-head p{font-size:15px;line-height:1.85;color:#eee2cd;max-width:750px}.ed-language-note{display:inline-block;margin-top:17px;padding:7px 10px;background:#ffffff15;color:#f3e0bc;font-size:11px;letter-spacing:.04em}.ed-article-layout{display:grid;grid-template-columns:minmax(0,720px) minmax(155px,1fr);gap:clamp(38px,6vw,100px);padding:67px clamp(20px,4vw,62px) 80px;background:#fffcf5}.ed-article-body{min-width:0}.ed-lead{font:500 clamp(18px,2vw,22px)/2 var(--ed-serif);color:#2f5141;margin:0 0 54px}.ed-article-body p,.ed-article-body li{overflow-wrap:anywhere}.ed-prose-section{margin:0 0 47px}.ed-prose-section h2,.ed-sources h2,.ed-translation h2{font:500 clamp(23px,2.6vw,31px)/1.45 var(--ed-serif);color:var(--ed-green);margin:0 0 18px}.ed-prose-section p,.ed-prose-section li{font:16px/2 var(--ed-serif);margin:0 0 14px;color:#384a3e}.ed-prose-section ul,.ed-prose-section ol{padding-left:1.6em}.source-mark{font:11px var(--ed-sans);color:var(--ed-red);text-decoration:none}.ed-learning,.ed-small-action{background:#f0eee3;padding:28px 31px;margin:48px 0;border-left:3px solid var(--ed-gold)}.ed-learning>span,.ed-small-action>span{font-size:11px;letter-spacing:.15em;color:#a05e42;font-weight:700}.ed-learning p,.ed-small-action p{font:16px/1.9 var(--ed-serif);margin:10px 0 0}.ed-learning ol{padding-left:1.45em;margin:15px 0 0}.ed-learning li{margin:0 0 14px;font-size:13px;line-height:1.8}.ed-learning li p{font:13px/1.8 var(--ed-sans);margin:0}.ed-learning li ul{padding-left:1.3em}.ed-exercise{padding:30px 0;border-top:1px solid #d4d1c4;border-bottom:1px solid #d4d1c4;margin:50px 0}.ed-exercise>p,.ed-question>p{font:17px/1.9 var(--ed-serif);color:var(--ed-green);margin:14px 0}.ed-exercise details{margin-top:15px}.ed-exercise summary,.ed-question summary{cursor:pointer;display:inline-block;padding:10px 18px;border-radius:999px;background:#e6eddf;color:var(--ed-green);font-size:12px;font-weight:700;transition:transform .4s cubic-bezier(.32,.72,0,1)}.ed-exercise summary:hover,.ed-question summary:hover{transform:translateY(-2px)}.ed-exercise details[open]>p,.ed-question details[open]>p{padding:14px 17px;color:#496252;background:#f2f4e9;font-size:14px;line-height:1.9}.ed-question{margin-top:27px}.ed-ja-body p{font:clamp(17px,1.55vw,19px)/2.25 var(--ed-serif);letter-spacing:.035em;color:#283f34;margin:0 0 26px;line-break:strict}.ed-translation{border-top:1px solid #d4d1c4;padding-top:40px;margin-top:53px}.ed-translation p{font:15px/2 var(--ed-serif);color:#526457;margin:0 0 16px}.ed-sources{border-top:1px solid #d4d1c4;padding-top:38px;margin-top:55px}.ed-sources ul{padding:0;list-style:none;display:grid;gap:12px}.ed-sources li{display:flex;gap:10px;color:#a45e41;font-size:12px}.ed-sources a{color:#44624e;text-underline-offset:4px}.ed-sources p{font-size:11px;color:#839082}.ed-article-rail{border-left:1px solid #d2d2c5;padding-left:25px;align-self:start;position:sticky;top:38px;display:grid;gap:16px;color:#8e927f;font-size:10px;letter-spacing:.17em}.ed-article-rail div{font:24px/1.45 var(--ed-serif);color:#a45c42;letter-spacing:0}.ed-article-rail a{font-size:11px;letter-spacing:0;text-decoration:none;color:var(--ed-green)}.ed-next{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-top:38px}.ed-next a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;color:var(--ed-green);border-bottom:1px solid #afad9f;font-size:12px;padding:0 2px;transition:transform .5s cubic-bezier(.32,.72,0,1)}.ed-next a:hover{transform:translateY(-3px)}.ed-footer{max-width:1420px;margin:auto;padding:22px clamp(22px,5.3vw,88px) 35px;border-top:1px solid #dad3c5;display:flex;gap:20px;align-items:center;justify-content:space-between;color:#8b9889;font-size:11px}.ed-footer a{text-decoration:none;color:#56705d}
@keyframes ed-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1050px){.ed-shell{grid-template-columns:210px minmax(0,1fr)}.ed-side{padding-left:12px;padding-right:12px}.ed-card{gap:13px;padding:22px}.ed-card-index{font-size:29px;min-width:36px}.ed-article-layout{grid-template-columns:minmax(0,1fr) 130px;gap:30px}}
@media(max-width:750px){.ed-shell{display:block}.ed-side{position:static;height:auto;padding:13px 16px;display:block;border-right:0;border-bottom:1px solid #d8d0bf}.ed-brand{display:none}.ed-side-head,.ed-side-head-alt,.ed-side-footer{display:none}.ed-nav{display:flex;gap:7px;overflow:auto;white-space:nowrap;padding:2px 0}.ed-nav a{flex:0 0 auto;padding:8px 11px;background:#fffaf2;font-size:11px}.ed-topbar{height:63px;padding:0 17px}.ed-mobile-brand{display:inline;font:500 21px var(--ed-serif);text-decoration:none;color:var(--ed-green)}.ed-top-label{display:none}.ed-main{padding:0 15px 48px}.ed-breadcrumb{margin:18px 0}.ed-hero{min-height:310px;padding:40px 27px 25px}.ed-hero h1{font-size:43px}.ed-hero-line{margin-top:45px}.ed-card-grid{grid-template-columns:1fr;gap:13px}.ed-card{min-height:145px;padding:22px}.ed-section{margin-top:40px}.ed-article-head{min-height:0;padding:39px 27px 37px}.ed-article-head h1{font-size:clamp(34px,8vw,47px)}.ed-article-layout{display:block;padding:38px 24px 50px}.ed-article-rail{display:none}.ed-lead{font-size:18px;margin-bottom:42px}.ed-prose-section{margin-bottom:36px}.ed-prose-section p{font-size:15px}.ed-ja-body p{font-size:17px;line-height:2.1}.ed-footer{padding:19px 18px 28px;flex-wrap:wrap}.ed-next{margin-top:25px}}
@media(max-width:390px){.ed-locale>span{display:none}.ed-card{gap:11px;padding:19px}.ed-card-body strong{font-size:20px}.ed-hero h1{font-size:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ed-hero,.ed-section,.ed-article-head{animation:none}.ed-card,.ed-card-arrow,.ed-next a,.ed-exercise summary,.ed-nav a{transition:none}}
[hidden]{display:none!important}.ed-translation-placeholder p{font:15px/1.9 var(--ed-sans);color:#677969}
