@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Noto+Sans+JP:wght@400;500;600&family=Noto+Serif+JP:wght@400;500;600&display=swap');
:root{--paper:#f5f4ed;--ink:#263d32;--muted:#657065;--green:#284b3e;--sage:#e7ebe0;--line:#cdd3c4;--serif:Georgia,'Noto Serif JP',serif;--sans:'DM Sans','Noto Sans JP',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--green);outline-offset:6px}::selection{color:var(--paper);background:var(--green)}.section-wrap{max-width:1280px;margin:0 auto;padding-left:70px;padding-right:70px}.preview-bar{background:var(--green);color:#f5f4ed;min-height:27px;display:flex;align-items:center;justify-content:center;gap:9px;font-size:8px;letter-spacing:.15em;padding:7px 20px}.preview-dot{width:4px;height:4px;border-radius:50%;background:#c8d3b5}.preview-jp{font-size:8px;letter-spacing:.07em;margin-left:14px}.site-header{max-width:1420px;margin:auto;padding:29px 70px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{font-family:Georgia,serif;font-size:43px;font-style:italic;line-height:1;display:flex;align-items:center;gap:23px;color:var(--green)}.wordmark-sub{font-family:var(--sans);font-style:normal;font-size:8px;letter-spacing:.18em;font-weight:500;max-width:76px;line-height:1.8}.site-header nav{display:flex;gap:34px;align-items:center;font-size:11px;font-weight:500;letter-spacing:.04em}.site-header nav>a:hover{color:#668262}.site-header .nav-contact{border:1px solid var(--line);padding:12px 19px;display:flex;gap:29px;border-radius:2px}.menu-toggle{display:none}.hero{position:relative;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:80px;min-height:760px;padding-top:76px;padding-bottom:100px}.eyebrow{font-size:10px;letter-spacing:.22em;font-weight:500;margin:0 0 23px;color:#65745f}.hero-overline{font-family:var(--serif);font-size:11px;letter-spacing:.08em;margin:0 0 23px;line-height:1.9}h1{font-family:'Noto Serif JP',serif;font-size:clamp(40px,4.2vw,59px);font-weight:400;line-height:1.7;letter-spacing:.12em;margin:0}h1 span{font-size:.76em;letter-spacing:.06em}.roman-name{font-family:Georgia,serif;font-size:21px;font-style:italic;color:#61725e;letter-spacing:.015em;margin:13px 0 29px}.hero-line{font-family:var(--serif);font-size:20px;letter-spacing:.12em;line-height:1.9;font-weight:500;margin:0 0 16px}.hero-summary{font-size:11px;line-height:2.2;letter-spacing:.07em;color:var(--muted);margin:0 0 25px}.text-link{display:inline-flex;align-items:center;gap:27px;font-size:11px;letter-spacing:.04em}.round-arrow{border-bottom:1px solid #7b8c74;display:grid;place-items:center;width:31px;height:30px;font-size:20px;transition:transform .2s}.text-link:hover .round-arrow{transform:translate(3px,-3px)}.hero-art{position:relative;margin:0;width:100%;align-self:center;max-width:440px}.hero-art:before{content:'';position:absolute;inset:25px -22px -20px 25px;background:#e2e8d8;z-index:0;border-radius:48% 48% 2px 2px}.portrait-window{position:relative;height:530px;overflow:hidden;background:#dde5dc;border-radius:46% 46% 2px 2px}.portrait-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}.portrait-footer{display:flex;justify-content:space-between;font-size:7px;letter-spacing:.13em;margin-top:16px;position:relative;color:var(--muted)}.portrait-footer span:last-child{font-family:var(--serif);font-style:italic;font-size:10px;letter-spacing:.02em}.scroll-note{position:absolute;bottom:30px;left:70px;display:flex;align-items:center;gap:19px;font-size:8px;letter-spacing:.2em;color:var(--muted)}.scroll-note span{font-size:18px}.topic-links{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:27px;padding-bottom:27px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.04em}.topic-intro{font-family:var(--serif);font-style:italic;font-size:17px;color:#667c60}.topic-links a{padding:6px 0;border-bottom:1px solid transparent}.topic-links a:hover{border-color:var(--green)}.about{padding-top:103px;padding-bottom:110px}.section-heading{display:flex;align-items:baseline;gap:25px;margin-bottom:57px}.section-number{color:#6b805f;font-family:var(--serif);font-size:13px;white-space:nowrap}h2{margin:0;font-family:var(--serif);font-size:51px;font-weight:400;letter-spacing:-.03em;line-height:1.2}h2 span{font-family:var(--sans);font-size:10px;letter-spacing:.12em;display:block;margin-top:15px;font-weight:400}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-left:58px}.display-copy{font-family:var(--serif);font-size:29px;line-height:1.9;font-weight:400;letter-spacing:.1em;margin:0 0 36px}.affiliation{display:flex;flex-direction:column;gap:10px}.affiliation-label{font-size:8px;letter-spacing:.2em;color:#66775e}.affiliation strong{font-weight:500;font-size:16px;letter-spacing:.08em}.affiliation>span:last-child{font-size:11px;color:var(--muted)}.small-link{font-size:9px;display:inline-flex;align-items:center;gap:18px;border-bottom:1px solid var(--line);padding:0 0 7px;margin-top:23px;line-height:1.8}.small-link:hover{color:#668262;border-color:#668262}.small-link>span{font-size:15px}.body-copy{font-size:12px;line-height:2.35;letter-spacing:.04em;margin:0 0 20px}.profile-facts{margin:29px 0 0}.profile-facts>div{border-top:1px solid var(--line);display:grid;grid-template-columns:110px 1fr;padding:13px 0;gap:12px;font-size:10px;line-height:2}.profile-facts dt{font-family:var(--serif);font-style:italic;font-size:13px;color:#597151}.profile-facts dd{margin:0}.my-world{background:var(--sage);padding-top:87px;padding-bottom:79px}.world-heading{margin-bottom:50px}.section-aside{margin:0 0 0 auto;color:var(--muted);font-size:11px;line-height:2;letter-spacing:.07em}.world-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:49px}.world-story{position:relative;border-top:1px solid #adbaa2;padding-top:20px;scroll-margin-top:30px}.story-overline{font-size:8px;letter-spacing:.18em;color:#63785c}.story-mark{font-family:Georgia,serif;font-style:italic;font-size:80px;font-weight:400;color:#b0bca3;line-height:1.2;margin:23px 0 10px}.world-story h3{font-family:var(--serif);font-weight:400;font-size:21px;line-height:1.85;letter-spacing:.04em;margin:0 0 18px}.world-story p{font-size:11px;line-height:2.15;letter-spacing:.025em;margin:0;color:#51624f}.world-story .small-link{border-color:#aebda3;margin-top:24px}.story-note{font-size:8px;line-height:1.8;display:block;margin-top:24px;color:#66765e}.small-joys{display:flex;align-items:center;gap:35px;border-top:1px solid #c4cfbb;margin-top:52px;padding-top:25px}.small-joys>span{font-size:8px;letter-spacing:.16em;color:#697f5d}.small-joys p{font-family:var(--serif);font-size:13px;letter-spacing:.05em;margin:0;line-height:1.9}.works{padding-top:95px;padding-bottom:90px}.works-heading{margin-bottom:37px}.filter-row{display:flex;gap:21px;flex-wrap:wrap;margin:0 0 38px}.filter{border:0;border-bottom:1px solid transparent;color:var(--muted);background:transparent;padding:8px 2px;font-size:11px;transition:color .15s}.filter span{font-size:8px;margin-left:6px}.filter.active{color:var(--green);border-color:var(--green)}.filter:not(.active):hover{color:#7b8c67}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:41px 27px}.work-art{position:relative;aspect-ratio:1.03;overflow:hidden;display:block;padding:22px;transition:transform .25s}.work-art:hover{transform:translateY(-4px)}.art-label{position:absolute;top:21px;left:21px;font-size:7px;letter-spacing:.15em}.art-foot{position:absolute;bottom:17px;left:21px;font-size:5px;letter-spacing:.08em;opacity:.85}.art-title{position:absolute;left:24px;top:28%;font-family:var(--serif);font-size:clamp(28px,3.8vw,51px);line-height:1.08;letter-spacing:-.03em}.art-title i{font-weight:400}.art-arrow{position:absolute;bottom:17px;right:18px;font-size:20px}.art-loop{background:#344f41;color:#f1f1df}.loop-shape{font-family:var(--serif);font-size:230px;font-weight:400;position:absolute;line-height:1;right:-45px;bottom:0;transform:rotate(-25deg);color:#8caa8d26}.art-bride{background:#dddccc;color:#435140}.giant-number{font-family:var(--serif);font-size:175px;position:absolute;line-height:1;right:-3px;bottom:13px;color:#8998753b;font-style:italic}.japanese-title{font-family:'Noto Serif JP',serif;font-size:23px;font-weight:500;line-height:1.85;letter-spacing:.02em;top:30%}.art-casino{background:#abb59a;color:#2c4234}.art-casino .japanese-title{font-size:21px;top:32%}.card-symbol{position:absolute;bottom:-42px;right:-3px;font-family:var(--serif);font-size:210px;line-height:1;color:#516c4926}.work-meta{display:flex;justify-content:space-between;color:#68815d;font-size:8px;letter-spacing:.09em;margin-top:16px;line-height:1.4}.work-item h3{font-family:var(--serif);font-weight:500;font-size:16px;letter-spacing:.02em;margin:10px 0 8px;line-height:1.6}.work-item>p{font-size:10px;color:var(--muted);line-height:1.9;margin:0}.compact-work{border-top:1px solid var(--line);padding-top:22px}.compact-top{display:flex;align-items:center;gap:11px}.compact-symbol{font-size:15px;color:#88997c;line-height:1}.compact-top .work-meta{margin:0}.compact-work h3{margin-top:18px}.compact-work .small-link{margin-top:20px;font-size:8px}.works-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:48px;border-top:1px solid var(--line);padding-top:26px}.works-bottom p{font-size:8px;color:var(--muted);line-height:2;margin:0}.works-bottom .text-link{white-space:nowrap}.contact{padding-top:73px;padding-bottom:79px;border-top:1px solid var(--line)}.contact-top{display:flex;align-items:center;gap:24px}.contact-top .eyebrow{margin:0;font-size:8px}.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:100px;margin-top:35px}.contact h2{font-family:var(--serif);font-weight:400;font-size:31px;line-height:1.9;letter-spacing:.08em}.contact p{font-size:11px;line-height:2.1;letter-spacing:.04em;color:var(--muted);margin-top:21px}.contact-button{background:var(--green);color:var(--paper);padding:28px 30px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-radius:2px;transition:background .2s}.contact-button:hover{background:#496b4f}.contact-button>span:first-child{font-size:13px;letter-spacing:.06em}.contact-button small{display:block;font-size:7px;letter-spacing:.2em;margin-top:10px}.contact-arrow{font-size:27px}.site-footer{border-top:1px solid var(--line);padding-top:35px;padding-bottom:24px;display:grid;grid-template-columns:1fr 1fr;align-items:center}.footer-brand{font-family:Georgia,serif;font-size:42px;font-style:italic;color:var(--green);line-height:1}.footer-links{justify-self:end;display:flex;gap:27px;font-size:9px}.footer-links a:hover{color:#71866c}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;font-size:7px;letter-spacing:.1em;color:var(--muted);margin-top:29px}.preview-details{grid-column:1/-1;font-size:8px;color:var(--muted);margin-top:21px;border-top:1px solid var(--line);padding-top:14px;line-height:2}.preview-details summary{cursor:pointer;display:list-item;list-style:revert}.preview-details p{max-width:840px}.skip-link{position:fixed;top:-100px;left:20px;z-index:50;background:var(--green);color:var(--paper);padding:12px}.skip-link:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.work-item[hidden]{display:none}
@media(min-width:1440px){.hero{min-height:830px;padding-top:90px;padding-bottom:120px}.portrait-window{height:570px}}
@media(max-width:1050px){.section-wrap{padding-left:40px;padding-right:40px}.site-header{padding-left:40px;padding-right:40px}.hero{gap:50px;padding-top:60px;padding-bottom:90px;min-height:720px}h1{font-size:45px}.hero-overline{font-size:10px}.portrait-window{height:490px}.hero-art:before{right:-15px}.scroll-note{left:40px}.about-grid{gap:50px;padding-left:38px}.world-grid{gap:31px}.world-story h3{font-size:19px}.work-grid{gap:35px 20px}.japanese-title{font-size:19px}.art-casino .japanese-title{font-size:17px}.art-title{left:18px}.art-foot{left:18px;font-size:4px}.contact-grid{gap:50px}.contact-button{padding:24px}.contact-button>span:first-child{font-size:11px}.topic-links{gap:15px;font-size:10px}.topic-intro{font-size:15px}}
@media(max-width:760px){.section-wrap{padding-left:26px;padding-right:26px}.preview-bar{font-size:7px;min-height:25px}.preview-jp{display:none}.site-header{padding:22px 26px;position:relative}.wordmark{font-size:36px;gap:17px}.wordmark-sub{font-size:6px;max-width:62px}.menu-toggle{display:flex;align-items:center;gap:11px;background:none;border:0;padding:10px 0 10px 10px;font-size:8px;letter-spacing:.16em;color:var(--green)}.menu-lines{width:20px;height:9px;display:block;border-top:1px solid currentColor;border-bottom:1px solid currentColor}.site-header nav{display:none;position:absolute;z-index:10;right:17px;top:76px;background:var(--paper);padding:25px 27px;box-shadow:0 7px 25px #263d3212;border:1px solid var(--line);width:210px;align-items:stretch;gap:23px}.site-header nav.open{display:flex;flex-direction:column}.site-header .nav-contact{padding:10px 12px;justify-content:space-between}.hero{display:flex;flex-direction:column;align-items:stretch;gap:36px;min-height:0;padding-top:45px;padding-bottom:67px}.eyebrow{font-size:8px;letter-spacing:.2em;margin-bottom:17px}.hero-overline{font-size:10px;letter-spacing:.04em;margin-bottom:21px}h1{font-size:41px;line-height:1.65;letter-spacing:.1em}h1 span{font-size:.77em}.roman-name{font-size:21px;margin-top:10px;margin-bottom:25px}.hero-line{font-size:18px;line-height:1.9;letter-spacing:.09em;margin-bottom:15px}.hero-summary{font-size:10px;line-height:2.1;margin-bottom:22px}.hero .text-link{font-size:10px;gap:20px}.round-arrow{width:29px;height:28px}.hero-art{align-self:center;width:calc(100% - 14px);max-width:350px;margin:0 12px 0 0}.portrait-window{height:410px;border-radius:46% 46% 2px 2px}.hero-art:before{inset:16px -13px -14px 16px}.portrait-footer{font-size:6px;letter-spacing:.1em;margin-top:13px}.portrait-footer span:last-child{font-size:9px}.scroll-note{left:26px;bottom:20px;font-size:7px;gap:16px}.topic-links{display:grid;grid-template-columns:1fr 1fr;gap:13px 18px;padding-top:23px;padding-bottom:24px;font-size:10px}.topic-intro{grid-column:1/-1;font-size:16px;margin-bottom:4px}.topic-links a{padding:2px 0;line-height:1.8}.about{padding-top:65px;padding-bottom:65px}.section-heading{gap:17px;margin-bottom:35px}.section-number{font-size:11px}h2{font-size:44px}h2 span{font-size:9px;letter-spacing:.08em;margin-top:12px}.about-grid{display:flex;flex-direction:column;gap:33px;padding-left:0}.display-copy{font-size:26px;line-height:1.9;margin-bottom:27px;letter-spacing:.07em}.affiliation strong{font-size:15px}.affiliation-label{font-size:7px}.body-copy{font-size:11px;line-height:2.25}.profile-facts>div{grid-template-columns:101px 1fr;font-size:10px;padding:12px 0}.small-link{font-size:9px}.my-world{padding-top:60px;padding-bottom:45px}.world-heading,.works-heading{display:grid;grid-template-columns:auto 1fr;gap:16px}.section-aside{grid-column:2;margin:4px 0 0;font-size:10px;line-height:2}.section-aside br{display:none}.world-grid{grid-template-columns:1fr;gap:31px}.world-story{padding-top:19px;min-height:190px;padding-right:8px}.story-overline{font-size:7px}.story-mark{position:absolute;right:8px;top:30px;margin:0;font-size:68px;opacity:.6}.world-story h3{font-size:21px;margin:21px 0 13px;padding-right:66px;line-height:1.8}.world-story p{font-size:11px;line-height:2.1;max-width:100%}.world-story .small-link,.story-note{margin-top:17px}.small-joys{display:block;margin-top:34px;padding-top:23px}.small-joys>span{font-size:7px}.small-joys p{font-size:12px;margin-top:12px}.works{padding-top:62px;padding-bottom:59px}.works-heading{margin-bottom:27px}.works-heading h2{font-size:39px}.filter-row{gap:13px;margin-bottom:28px}.filter{font-size:10px;padding:7px 1px}.filter span{display:none}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 16px}.work-item:first-child{grid-column:1/-1}.work-item:first-child .work-art{aspect-ratio:1.25}.work-item:first-child .art-title{font-size:61px;top:26%;left:26px}.loop-shape{font-size:300px;right:-20px;bottom:-10px}.art-label{font-size:6px;top:14px;left:13px}.art-title{left:13px}.art-foot{left:13px;bottom:12px;font-size:4px;max-width:75%;line-height:1.7}.art-arrow{bottom:10px;right:10px;font-size:15px}.japanese-title{font-size:15px;line-height:1.8;top:28%}.art-casino .japanese-title{font-size:11px;top:35%;letter-spacing:0}.giant-number{font-size:118px;bottom:10px}.card-symbol{font-size:133px;bottom:-28px}.work-meta{font-size:6px;margin-top:12px}.work-item h3{font-size:13px;line-height:1.7;margin:8px 0 5px}.work-item>p{font-size:9px;line-height:1.9}.compact-work{padding-top:17px}.compact-top{gap:8px}.compact-symbol{font-size:12px}.compact-work h3{margin-top:15px}.compact-work .small-link{font-size:7px;gap:7px;margin-top:17px}.compact-work .small-link span{font-size:11px}.works-bottom{flex-direction:column;align-items:flex-start;margin-top:34px;padding-top:23px;gap:21px}.works-bottom p{font-size:7px}.works-bottom .text-link{font-size:10px}.contact{padding-top:50px;padding-bottom:52px}.contact-top{gap:17px}.contact-top .eyebrow{font-size:7px}.contact-grid{display:flex;flex-direction:column;align-items:stretch;gap:23px;margin-top:25px}.contact h2{font-size:27px}.contact p{font-size:10px;margin-top:18px}.contact-button{padding:24px 26px}.contact-button>span:first-child{font-size:12px}.site-footer{padding-top:29px;padding-bottom:22px}.footer-brand{font-size:37px}.footer-links{flex-direction:column;gap:13px;font-size:8px}.footer-bottom{font-size:6px;letter-spacing:.01em;gap:14px;margin-top:26px}.preview-details{font-size:8px;margin-top:17px;padding-top:14px}}
@media(max-width:359px){.section-wrap{padding-left:22px;padding-right:22px}.site-header{padding-left:22px;padding-right:22px}h1{font-size:36px}.hero-overline{font-size:9px}.portrait-window{height:365px}.japanese-title{font-size:13px}.art-casino .japanese-title{font-size:10px}.work-grid{gap:26px 12px}.world-story h3{font-size:19px}.footer-bottom{font-size:5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
