@import "https://fonts.googleapis.com/css2?family=M+PLUS+1p:wght@500;700;800&family=Noto+Sans+JP:wght@400;500;700&family=Poppins:wght@500;600;700&family=Inter:wght@400;500&display=swap";
:root{--bg:#fbf7f1;--ink:#3d3a36;--primary:#dc7c5c;--secondary:#8fae97;--accent:#e8b05c;--muted:#736b61;--line:#eae3d8;--psoft:#f6e6de;--ssoft:#e7eee9;--asoft:#f8ecd6;--jah:"M PLUS 1p",sans-serif;--jab:"Noto Sans JP",sans-serif;--enh:"Poppins",sans-serif;--enb:"Inter",sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--jab);-webkit-font-smoothing:antialiased;word-break:auto-phrase;line-break:strict;line-height:1.8;overflow-x:hidden}a{color:inherit;text-decoration:none}.wrap{max-width:1080px;margin:0 auto;padding:0 28px}header.header-fixed{z-index:100;-webkit-backdrop-filter:saturate(1.1)blur(8px);backdrop-filter:saturate(1.1)blur(8px);background:#fbf7f1b8;border-bottom:1px solid #0000;transition:border-color .4s,background .4s;position:fixed;top:0;left:0;right:0}header.header-fixed.scrolled{border-bottom:1px solid var(--line);background:#fbf7f1e6}header.header-sticky{z-index:100;-webkit-backdrop-filter:saturate(1.1)blur(8px);backdrop-filter:saturate(1.1)blur(8px);border-bottom:1px solid var(--line);background:#fbf7f1e6;position:sticky;top:0}.nav{justify-content:space-between;align-items:center;height:64px;display:flex}.brand{flex-direction:column;line-height:1.15;display:flex}.brand .en{font-family:var(--enh);letter-spacing:.02em;color:var(--ink);font-size:14px;font-weight:600}.brand .ja{font-family:var(--jab);color:var(--muted);letter-spacing:.14em;font-size:10.5px}.menu{gap:26px;display:flex}.menu a{color:var(--muted);padding:4px 0;font-size:13px;transition:color .25s;position:relative}.menu a:after{content:"";background:var(--primary);width:0;height:1.5px;transition:width .3s;position:absolute;bottom:0;left:0}.menu a:hover{color:var(--ink)}.menu a:hover:after{width:100%}@media (max-width:640px){.menu{display:none}}.back{color:var(--muted);align-items:center;gap:8px;font-size:13px;transition:color .25s;display:inline-flex}.back:hover{color:var(--primary)}.back .arw{transition:transform .3s}.back:hover .arw{transform:translate(-4px)}.hero{align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}#gl{z-index:0;width:100%;height:100%;display:block;position:absolute;inset:0}.hero-veil{z-index:1;background:radial-gradient(125% 98% at 78% 8%,#fbf7f105,#fbf7f175 50%,#fbf7f1cc);position:absolute;inset:0}.hero .wrap{z-index:2;width:100%;position:relative}.hero .eyebrow{font-family:var(--enh);letter-spacing:.04em;color:var(--primary);align-items:center;gap:11px;margin-bottom:22px;font-size:14px;font-weight:600;display:flex}.hero .eyebrow:before{content:"";background:var(--primary);border-radius:2px;width:30px;height:2px}.hero h1{font-family:var(--jah);letter-spacing:.01em;font-size:clamp(40px,8vw,76px);font-weight:800;line-height:1.12}.hero h1 .small{color:var(--muted);letter-spacing:.04em;margin-top:14px;font-size:clamp(18px,2.2vw,26px);font-weight:700;display:block}.hero .essence{font-family:var(--jab);color:var(--ink);max-width:30em;margin-top:30px;font-size:clamp(16px,1.9vw,21px);line-height:1.85}.hero .essence b{color:var(--primary);font-weight:700}.hero .hero-name{font-family:var(--jah);color:var(--ink);letter-spacing:.04em;align-items:baseline;gap:10px;margin-top:34px;font-size:clamp(15px,1.6vw,18px);font-weight:700;display:flex}.hero .hero-name .kana{color:var(--muted);letter-spacing:.08em;font-size:.72em;font-weight:600}.scrollcue{z-index:2;font-family:var(--enb);letter-spacing:.2em;color:var(--muted);opacity:.8;flex-direction:column;align-items:center;gap:8px;font-size:11px;display:flex;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.scrollcue .bar{background:linear-gradient(var(--muted),transparent);width:1px;height:34px;animation:2.4s ease-in-out infinite cue}@keyframes cue{0%,to{opacity:.25;transform:scaleY(.7)}50%{opacity:.9;transform:scaleY(1)}}section{position:relative}.block{padding:100px 0}.sec-label{font-family:var(--enh);letter-spacing:.18em;color:var(--primary);align-items:center;gap:10px;margin-bottom:20px;font-size:12px;font-weight:600;display:flex}.sec-label:before{content:"";background:var(--primary);border-radius:50%;width:7px;height:7px}.js .reveal{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(18px)}.js .reveal.in{opacity:1;transform:none}.lead-jp{font-family:var(--jah);letter-spacing:.01em;max-width:18em;font-size:clamp(24px,3.6vw,38px);font-weight:700;line-height:1.5}.lead-jp .hl{color:var(--primary)}.work-body{color:var(--ink);max-width:40em;margin-top:26px;font-size:clamp(15px,1.6vw,17px);line-height:2}.work-body .soft{color:var(--ink)}.outputs-intro{color:var(--ink);max-width:42em;margin-bottom:46px;font-size:clamp(15px,1.6vw,17px);line-height:2}.grid{grid-template-columns:repeat(2,1fr);gap:22px;display:grid}@media (max-width:720px){.grid{grid-template-columns:1fr}}.card{border:1px solid var(--line);background:#ffffff73;border-radius:20px;flex-direction:column;min-height:200px;padding:30px 30px 26px;transition:transform .35s,border-color .35s,box-shadow .35s;display:flex;position:relative;overflow:hidden}.card:before{content:"";background:var(--primary);border-radius:3px;width:0;height:3px;transition:width .4s;position:absolute;top:0;left:0}.card:hover{border-color:#dfd4c4;transform:translateY(-4px);box-shadow:0 16px 38px #3d3a3614}.card:hover:before{width:100%}.card .idx{font-family:var(--enh);color:var(--primary);letter-spacing:.05em;font-size:13px;font-weight:600}.card .tag{color:var(--muted);background:var(--ssoft);letter-spacing:.04em;border-radius:999px;padding:4px 12px;font-size:11px;font-weight:500;position:absolute;top:28px;right:28px}.card .tag.t{background:var(--psoft)}.card .tag.h{background:var(--asoft)}.card h3{font-family:var(--jah);letter-spacing:.01em;margin:16px 0 10px;font-size:clamp(19px,2vw,23px);font-weight:800}.card p{color:var(--muted);flex:1;font-size:14px;line-height:1.85}.card .go{font-family:var(--enb);color:var(--primary);letter-spacing:.06em;align-items:center;gap:7px;margin-top:18px;font-size:12.5px;display:inline-flex}.card .go .arw{transition:transform .3s}.card:hover .go .arw{transform:translate(5px)}.card .go.soon{color:var(--muted)}.feed{border-top:1px solid var(--line);margin-top:6px}.feed-list{border-top:1px solid var(--line);margin-top:14px;padding-bottom:30px}.act{border-bottom:1px solid var(--line);color:inherit;cursor:pointer;grid-template-columns:128px 120px 1fr auto;align-items:baseline;gap:20px;padding:21px 6px;transition:background .3s;display:grid}a.act:hover,.act:hover{background:#ffffff80}.act .date{font-family:var(--jab);color:var(--muted);letter-spacing:.02em;white-space:nowrap;font-size:13px}.act .tag{color:var(--ink);white-space:nowrap;border-radius:999px;justify-self:start;padding:4px 13px;font-size:11.5px;font-weight:500}.tag-talk{background:var(--psoft)}.tag-article{background:var(--ssoft)}.tag-interview{background:var(--asoft)}.tag-coord{background:#ece3d5}.tag-production{background:#efe0cb}.tag-neutral{background:#ece3d5}.act .ttl{font-family:var(--jah);font-size:clamp(15px,1.7vw,18px);font-weight:700;line-height:1.55}.act .ttl .where{font-family:var(--jab);color:var(--muted);letter-spacing:.01em;margin-top:4px;font-size:12.5px;font-weight:400;display:block}.act .go{font-family:var(--enb);color:var(--primary);white-space:nowrap;opacity:0;align-self:center;font-size:14px;transition:opacity .3s}a.act:hover .go,.act:hover .go{opacity:1}.more{font-family:var(--jah);color:var(--primary);align-items:center;gap:9px;margin-top:30px;font-size:15px;font-weight:700;transition:gap .3s;display:inline-flex}.more .arw{transition:transform .3s}.more:hover .arw{transform:translate(5px)}.empty{color:var(--muted);padding:40px 6px;font-size:14px}@media (max-width:680px){.act{grid-template-columns:auto 1fr;gap:6px 14px}.act .ttl{grid-column:1/3}.act .go{display:none}}.page-top{padding:74px 0 30px}.page-top .sec-label{margin-bottom:16px}.activity-h1{font-family:var(--jah);letter-spacing:.01em;font-size:clamp(30px,5vw,46px);font-weight:800}.intro{color:var(--muted);max-width:40em;margin-top:16px;font-size:clamp(14px,1.5vw,16px)}.filters{flex-wrap:wrap;gap:9px;margin:30px 0 6px;display:flex}.fbtn{color:var(--muted);border:1px solid var(--line);cursor:pointer;font-size:12.5px;font-weight:500;font-family:var(--jab);background:#fff6;border-radius:999px;padding:8px 16px;transition:all .25s}.fbtn:hover{border-color:var(--primary);color:var(--primary)}.fbtn.on{background:var(--primary);border-color:var(--primary);color:#fff}.detail{padding:74px 0 40px}.back2{color:var(--muted);align-items:center;gap:9px;margin-bottom:28px;font-size:13.5px;transition:color .25s;display:inline-flex}.back2:hover{color:var(--primary)}.back2 .arw{transition:transform .3s}.back2:hover .arw{transform:translate(-4px)}.dt-tag{border-radius:999px;padding:4px 13px;font-size:11.5px;font-weight:500;display:inline-block}.dt-title{font-family:var(--jah);letter-spacing:.01em;margin:14px 0 20px;font-size:clamp(26px,4vw,40px);font-weight:800;line-height:1.32}.dt-meta{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;gap:10px 26px;margin-bottom:28px;padding:16px 0;display:flex}.dt-meta .m{color:var(--ink);font-size:14px}.dt-meta .m .k{color:var(--muted);letter-spacing:.04em;margin-right:9px;font-size:12px}.dt-summary{white-space:pre-wrap;max-width:42em;font-size:clamp(15px,1.6vw,17px);line-height:2.05}.cta{background:var(--primary);color:#fff;font-family:var(--jah);border-radius:14px;align-items:center;gap:11px;margin-top:32px;padding:14px 26px;font-size:15px;font-weight:700;transition:transform .3s,box-shadow .3s;display:inline-flex}.cta:hover{transform:translateY(-2px);box-shadow:0 14px 30px #dc7c5c47}.cta .arw{transition:transform .3s}.cta:hover .arw{transform:translate(4px)}.extnote{color:var(--muted);margin-top:13px;font-size:12px}#about{background:linear-gradient(#e7eee900,#e7eee973)}.about-wrap{position:relative}.portrait{object-fit:cover;object-position:top center;border:3px solid #fbf7f1cc;border-radius:50%;width:100px;height:100px;position:absolute;bottom:0;right:0;box-shadow:0 6px 20px #3d3a362e}@media (max-width:640px){.portrait{width:72px;height:72px;bottom:0;right:0}.about-wrap{padding-bottom:84px}}.about-body h2{font-family:var(--jah);margin-bottom:8px;font-size:clamp(24px,3vw,32px);font-weight:800}.about-body .role{color:var(--muted);letter-spacing:.08em;margin-bottom:22px;font-size:13px}.about-body p{max-width:38em;margin-bottom:18px;font-size:clamp(14.5px,1.5vw,16px);line-height:2.05}.facts{flex-wrap:wrap;gap:10px 8px;margin-top:24px;display:flex}.fact{color:var(--ink);border:1px solid var(--line);background:#fbf7f199;border-radius:999px;padding:7px 15px;font-size:12.5px}.fact .d{background:var(--secondary);vertical-align:middle;border-radius:50%;width:6px;height:6px;margin-right:8px;display:inline-block}.contact-h{font-family:var(--jah);margin-bottom:14px;font-size:clamp(28px,4.5vw,48px);font-weight:800;line-height:1.3}.contact-h .hl{color:var(--primary)}.contact-sub{color:var(--muted);max-width:34em;margin-bottom:34px;font-size:15px}.links{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.lnk{border:1px solid var(--line);white-space:nowrap;background:#fff6;border-radius:14px;align-items:center;gap:10px;padding:14px 22px;font-size:14px;line-height:1;transition:border-color .3s,color .3s,background .3s,transform .3s,filter .3s;display:inline-flex}.lnk:hover{border-color:var(--primary);color:var(--primary);transform:translateY(-2px)}.lnk .en{font-family:var(--enb);color:var(--muted);font-size:12px}.lnk:hover .en{color:var(--primary)}.lnk.cta{background:var(--primary);border-color:var(--primary);color:#fff}.lnk.cta .en{color:#fffc}.lnk.cta:hover{color:#fff;filter:brightness(1.06);transform:translateY(-2px)}.lnk.cta:hover .en{color:#ffffffd9}.tools{grid-template-columns:repeat(2,1fr);gap:22px;margin:34px 0 10px;padding-bottom:30px;display:grid}@media (max-width:740px){.tools{grid-template-columns:1fr}}.tool{border:1px solid var(--line);background:#ffffff73;border-radius:20px;flex-direction:column;padding:30px 28px 26px;transition:transform .35s,box-shadow .35s,border-color .35s;display:flex}.tool:hover{border-color:#e0d6c8;transform:translateY(-4px);box-shadow:0 18px 40px #3d3a3612}.tool .kind{color:var(--ink);border-radius:999px;align-self:flex-start;margin-bottom:16px;padding:5px 14px;font-size:11.5px;font-weight:500}.kind.k-talk{background:var(--psoft)}.kind.k-life{background:var(--ssoft)}.tool h3{font-family:var(--jah);margin-bottom:12px;font-size:clamp(19px,2.2vw,23px);font-weight:800;line-height:1.4}.tool p{color:var(--ink);font-size:14.5px;line-height:1.95}.tool .links{flex-wrap:wrap;gap:11px;margin-top:22px;display:flex}.btn{font-family:var(--jah);border-radius:13px;align-items:center;gap:9px;padding:11px 20px;font-size:14px;font-weight:700;transition:transform .3s,box-shadow .3s,filter .3s;display:inline-flex}.btn.primary{background:var(--primary);color:#fff}.btn.primary:hover{transform:translateY(-2px);box-shadow:0 12px 26px #dc7c5c42}.btn.ghost{border:1px solid var(--line);color:var(--ink);background:#ffffff80}.btn.ghost:hover{border-color:var(--primary);color:var(--primary);transform:translateY(-2px)}.btn .arw{transition:transform .3s}.btn:hover .arw{transform:translate(3px)}.btn .en{font-family:var(--enb);opacity:.8;font-size:12px;font-weight:500}.closing{border-top:1px solid var(--line);padding:30px 0 6px}.closing p{color:var(--muted);max-width:40em;font-size:14px}footer{border-top:1px solid var(--line);margin-top:80px;padding:34px 0 44px}footer.footer-sm{margin-top:40px}.foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.foot .en{font-family:var(--enh);font-size:14px;font-weight:600}.foot .cp{font-family:var(--enb);color:var(--muted);font-size:11.5px}
