:root{--bg:#FAF8F3;--ink:#2B2B28;--muted:#716C5F;--jade:#2A8C82;--jade-deep:#1F6E64;--orange:#FF6600;--line:#E3DED0}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:Zen Kaku Gothic New,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif;font-size:17px;line-height:1.9;letter-spacing:.02em;-webkit-font-smoothing:antialiased}a{color:var(--jade-deep);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:.3em;text-decoration-color:var(--orange)}img{max-width:100%;height:auto}.wrap{max-width:66rem;margin:0 auto;padding:0 1.5rem}header{background:#14524a}header .in{display:flex;align-items:center;gap:2.2rem;padding:1.6rem 0 1.2rem}.brand{display:flex;align-items:center;gap:.55rem;color:#fffdf6;font-weight:900;font-size:1.15rem;letter-spacing:.06em}.brand:hover{text-decoration:none}.brand .dot{color:var(--orange)}nav{margin-left:auto}nav ul{display:flex;gap:1.9rem;list-style:none;font-size:.95rem}nav a{color:#fffdf6}nav a:hover{color:#fffdf6;text-decoration-color:var(--orange)}.lang{display:flex;gap:.5rem;align-items:center;font-size:.85rem;color:#fffdf6a6}.lang button{background:none;border:none;font:inherit;color:#fffdf6a6;cursor:pointer;padding:0}.lang button.on{color:#fffdf6;font-weight:700}.lang .sep{width:4px;height:4px;border-radius:50%;background:var(--orange)}@media(max-width:680px){nav ul{gap:1rem;font-size:.88rem}header .in{gap:1rem;flex-wrap:wrap}nav{margin-left:0}}.hero{background:linear-gradient(180deg,#14524a,#1f6e64 45%,#2a8c82);color:#fffdf6;padding:5.4rem 0 4.6rem}.hero h1{font-size:2.9rem;font-weight:900;line-height:1.35;letter-spacing:.01em}.hero h1:after{content:"";display:block;width:4.2rem;height:5px;background:var(--orange);margin-top:1.6rem}.hero .sub{margin-top:1.4rem;color:#ffd9ae;font-weight:700;letter-spacing:.12em;font-size:.95rem}.hero .lead{margin-top:2.2rem;max-width:37rem;font-size:1.03rem;color:#f4f1e6}.hero .facts{margin-top:2rem;color:#d9e8e2;font-size:.93rem}.hero .facts span+span:before{content:"/";margin:0 .7rem;color:var(--orange);font-weight:700}@media(max-width:680px){.hero{padding:3.6rem 0 3.2rem}.hero h1{font-size:2rem}}section{padding:3.6rem 0 3.2rem;border-top:1px solid var(--line)}h2.sec{font-size:1.05rem;font-weight:900;letter-spacing:.22em;margin-bottom:2.2rem;color:var(--jade-deep)}h2.sec:before{content:"";display:inline-block;width:.62rem;height:.62rem;background:var(--orange);margin-right:.8rem}h2.sec .jp-note{letter-spacing:.05em;font-weight:500;color:var(--muted);font-size:.9rem;margin-left:1rem}.now-row{display:flex;gap:2.5rem;padding:1.1rem 0}.now-row+.now-row{border-top:1px dotted var(--line)}.now-row h3{flex:0 0 9rem;font-size:1.05rem;font-weight:700}.now-row p{max-width:34rem;font-size:.98rem;color:#45423b}@media(max-width:680px){.now-row{flex-direction:column;gap:.2rem}}.work{display:flex;gap:2.5rem;padding:1.25rem 0}.work+.work{border-top:1px dotted var(--line)}.work .years{flex:0 0 8.5rem;color:var(--jade-deep);font-weight:700;font-size:.92rem;letter-spacing:.05em;padding-top:.15rem}.work h3{font-size:1.08rem;font-weight:700}.work h3 .role{font-weight:500;color:var(--jade-deep);font-size:.95rem;margin-left:.8rem}.work p{max-width:36rem;font-size:.97rem;color:#45423b}@media(max-width:680px){.work{flex-direction:column;gap:.2rem}}.more{margin-top:2rem;font-size:.97rem}.more a{font-weight:700}.posts{list-style:none}.posts li{padding:.85rem 0;display:flex;gap:1.6rem;align-items:baseline}.posts time{color:var(--muted);font-size:.88rem;letter-spacing:.06em;flex:0 0 6.5rem}.posts a{color:var(--ink)}.posts a:hover{color:var(--jade-deep)}.blog-note{color:var(--muted);font-size:.93rem;margin-bottom:1.4rem}.links{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem 2.2rem}.links a{font-weight:500}.page-head{padding:3.4rem 0 0}.page-head h1{font-size:2rem;font-weight:900;line-height:1.5}.page-head h1:after{content:"";display:block;width:3.4rem;height:5px;background:var(--orange);margin-top:1.1rem}.page-head .meta{margin-top:1.2rem;color:var(--muted);font-size:.92rem}.page-head .meta a{color:var(--jade-deep)}.page-head .tags{margin-top:.4rem;color:var(--muted);font-size:.9rem}.page-head .tags span+span:before{content:"/";margin:0 .6rem;color:var(--jade)}.featured{margin-top:2.2rem}.featured img{border:1px solid var(--line)}.prose{max-width:44rem;padding:2.6rem 0 3.4rem}.prose p{margin:0 0 1.6rem}.prose h2{font-size:1.45rem;font-weight:900;line-height:1.5;margin:2.8rem 0 1.1rem;color:var(--ink)}.prose h3{font-size:1.18rem;font-weight:700;margin:2.2rem 0 .9rem}.prose h4{font-size:1.05rem;font-weight:700;margin:1.8rem 0 .7rem}.prose ul,.prose ol{margin:0 0 1.6rem;padding-left:1.6rem}.prose li{margin-bottom:.4rem}.prose img{margin:1.2rem 0;border:1px solid var(--line)}.prose blockquote{border-left:4px solid var(--jade);padding:.2rem 0 .2rem 1.2rem;margin:0 0 1.6rem;color:#45423b}.prose blockquote p{margin-bottom:.6rem}.prose hr{border:none;border-top:1px solid var(--line);margin:2.4rem 0}.prose code{background:#efece2;padding:.1em .35em;border-radius:.25rem;font-size:.92em}.prose table{border-collapse:collapse;margin:0 0 1.6rem;font-size:.95rem}.prose th,.prose td{border:1px solid var(--line);padding:.45rem .8rem;text-align:left}.prose th{background:#efece2}.prose.wide{max-width:66rem}.prose .gallery img{margin:.6rem 0}.cat-list{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem 2rem;margin-bottom:1rem}.cat-list a{font-weight:500}footer{background:var(--jade-deep);padding:2.4rem 0 2.8rem;margin-top:1rem}footer .in{display:flex;align-items:center;gap:.6rem;color:#eaf2ed;font-size:.9rem}footer .right{margin-left:auto}footer .dot{color:var(--orange);font-weight:900}footer a{color:#eaf2ed}
