@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600&display=swap');
:root{--ink:#232520;--paper:#fbfbf8;--line:#d6d7cf;--accent:#737c46}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Noto Sans JP',sans-serif;font-size:16px;line-height:1.9}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}::selection{background:#dfe4c8}header{padding:25px 4.5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:20px}.brand{font-family:Georgia,serif;font-size:25px;letter-spacing:-1px;white-space:nowrap}.brand small{font:10px Arial;letter-spacing:2px;display:block;line-height:1.2;margin-top:7px}nav{display:flex;gap:35px;font:14px Arial;letter-spacing:1px}nav a{padding:10px 0}nav a:hover{color:var(--accent)}.wrap{max-width:1440px;margin:auto;padding:0 4.5%}.hero{padding-top:80px;padding-bottom:75px}.eyebrow{font:12px Arial;letter-spacing:2px;text-transform:uppercase}.hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(68px,10.8vw,160px);font-weight:400;letter-spacing:-.065em;line-height:.98;margin:32px 0 42px}.hero h1 em{font-weight:400;color:var(--accent)}.intro{display:flex;justify-content:space-between;gap:40px;align-items:end}.intro p{font-size:clamp(18px,2.2vw,28px);line-height:1.9;margin:0}.intro .note{font-size:14px;max-width:280px}.hero-bottom{border-top:1px solid var(--line);padding-top:20px;margin-top:48px;display:flex;justify-content:space-between;font:12px Arial;letter-spacing:1.3px}.section-head{border-top:1px solid var(--ink);display:flex;justify-content:space-between;align-items:baseline;padding-top:25px;margin-bottom:40px}.section-head h2{font:400 clamp(36px,5vw,65px) Georgia;margin:0;letter-spacing:-2px}.section-head span{font-size:14px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:60px 30px}.work img{display:block;width:100%;aspect-ratio:1.62;object-fit:contain;background:#eeefea;transition:transform .4s}.work .visual{overflow:hidden}.work a:hover img{transform:scale(1.025)}.work .meta{display:flex;justify-content:space-between;gap:20px;margin-top:17px;font:12px Arial;letter-spacing:1px;color:#666a5f}.work h3{font-size:20px;font-weight:500;line-height:1.5;margin:10px 0 6px}.work p{font-size:14px;color:#64675e;margin:0}.work:nth-child(4n+2){padding-top:65px}.works{padding-bottom:110px}.about{padding-top:70px;padding-bottom:80px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.3fr;gap:80px}.about h2{font:400 65px Georgia;letter-spacing:-2px;margin:15px 0}.about .lead{font-size:clamp(22px,3vw,35px);line-height:1.7;margin:10px 0 28px}.about p{line-height:2.2}.services{display:flex;flex-wrap:wrap;gap:12px;font:14px Arial;letter-spacing:1px;margin:28px 0}.services span{padding:10px 16px;border:1px solid var(--line);border-radius:30px}.tools{font-size:14px;color:#64675e}.contact{background:var(--ink);color:var(--paper);padding:65px 4.5% 40px}.contact-inner{max-width:1310px;margin:auto}.contact h2{font:400 clamp(60px,11vw,150px) Georgia;letter-spacing:-.05em;line-height:1.1;margin:20px 0 30px}.contact .email{display:inline-block;font-size:clamp(17px,3vw,32px);border-bottom:1px solid #8c8e82;padding-bottom:8px;overflow-wrap:anywhere}.contact .mail-note{font-size:13px;color:#b9bcb1}.footer-row{border-top:1px solid #54574d;margin-top:65px;padding-top:25px;display:flex;justify-content:space-between;gap:20px;font:12px Arial;letter-spacing:1px}.detail{padding-top:55px;padding-bottom:80px}.detail h1{font-size:clamp(28px,5vw,58px);font-weight:500;line-height:1.5;margin:35px 0 16px}.detail .description{font-size:18px;margin-bottom:40px}.detail-gallery{display:grid;gap:28px}.detail-gallery img{width:100%;height:auto;display:block;background:#eeefea}.back{font-size:14px;border-bottom:1px solid var(--line);padding-bottom:5px}.detail-copy{max-width:850px;line-height:2}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:white;z-index:10;padding:10px}.detail-gallery iframe{width:100%;aspect-ratio:16/9;border:0}
@media(max-width:700px){header{padding:20px 6%;align-items:center}.brand{font-size:21px}.brand small{font-size:8px}nav{gap:15px;font-size:11px;letter-spacing:.3px}.wrap{padding-left:6%;padding-right:6%}.hero{padding-top:55px;padding-bottom:50px}.hero h1{font-size:clamp(62px,15vw,100px);margin:30px 0}.intro{display:block}.intro .note{margin-top:25px;max-width:none}.hero-bottom{margin-top:32px;font-size:10px}.grid{grid-template-columns:1fr;gap:40px}.work:nth-child(4n+2){padding-top:0}.work h3{font-size:19px}.section-head{margin-bottom:25px}.section-head h2{font-size:40px}.works{padding-bottom:65px}.about{grid-template-columns:1fr;gap:15px;padding-top:40px;padding-bottom:50px}.about h2{font-size:45px;margin:10px 0}.about .lead{margin-top:0}.contact{padding:45px 6% 25px}.footer-row{margin-top:45px;flex-wrap:wrap}.contact h2{font-size:68px}.detail{padding-top:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
