@charset "UTF-8";
:root{--paper:#faf9f5;--ink:#253c38;--green:#264d42;--lime:#dbe992;--orange:#ee7646;--line:#ced2ca}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;overflow-x:clip;background:var(--paper);color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Noto Sans JP",Meiryo,sans-serif;line-height:1.8}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;height:100%;object-fit:cover}.wrap{width:min(1400px,90%);margin:auto}header{height:104px;display:flex;align-items:center;justify-content:space-between;gap:28px}.logo{line-height:1.15;font-family:Georgia,serif;font-size:29px;letter-spacing:-1.4px}.logo small{display:block;font:10px/1.8 Arial,sans-serif;letter-spacing:2.3px;margin-top:7px}.nav{display:flex;align-items:center;gap:32px;font-size:14px}.nav .nav-cta{border:1px solid var(--ink);padding:10px 22px;border-radius:30px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:43% 57%;min-height:650px;padding-bottom:48px}.hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:15px 0 42px}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:600}.hero h1{font-size:clamp(42px,4.5vw,70px);line-height:1.55;letter-spacing:.05em;font-weight:500;margin:0 0 25px}.hero h1 em{font-style:normal;color:var(--orange)}.hero p{font-size:15px;line-height:2.1;margin:0 0 29px}.pill{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;border:1px solid var(--green);border-radius:35px;padding:14px 26px;font-size:14px}.pill.solid{background:var(--green);color:white}.hero-art{position:relative;display:grid;grid-template-columns:1.25fr 1fr;grid-template-rows:1fr 1fr;gap:14px;padding-top:10px;transform:rotate(-3deg);margin:12px 8px 24px 28px}.hero-art figure{margin:0;overflow:hidden;border-radius:7px}.hero-art .large{grid-row:1/3;border-radius:150px 150px 7px 7px}.hero-art .small-top{margin-top:40px;border-radius:7px 70px 7px 7px}.badge{position:absolute;right:-15px;bottom:15px;background:var(--lime);width:123px;height:123px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;font-size:14px;line-height:1.7;transform:rotate(10deg);box-shadow:0 0 0 8px var(--paper)}.tape{overflow:hidden;background:var(--lime);padding:17px 0;border-block:1px solid #bacd7a;white-space:nowrap;font:18px/1.4 Georgia,serif;letter-spacing:2px;text-align:center}.intro{display:grid;grid-template-columns:1fr 1.1fr;gap:12%;padding-block:95px}.intro h2{font-size:32px;font-weight:500;line-height:1.8}.intro p{line-height:2.2}.section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:35px}.section-title h2{font-family:Georgia,serif;font-size:clamp(45px,6vw,76px);font-weight:400;letter-spacing:-2px;line-height:1.1;margin:10px 0 0}.experiences{padding-bottom:100px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.service-photo{height:320px;overflow:hidden;position:relative}.service:nth-child(2) .service-photo{border-radius:110px 110px 0 0}.service:nth-child(3) .service-photo{border-radius:0 80px 0 0}.number{position:absolute;left:16px;top:14px;display:grid;place-items:center;width:43px;height:43px;border-radius:50%;background:var(--paper);font:18px Georgia}.service h3{font-size:23px;font-weight:500;display:flex;justify-content:space-between;margin:22px 0 10px}.service p{font-size:14px;margin:0}.gallery-section{background:var(--green);color:var(--paper);padding:75px 0 85px}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;align-items:start}.gallery button{border:0;padding:0;display:block;width:100%;background:none;color:inherit;text-align:left;cursor:zoom-in}.gallery img{height:275px;border-radius:3px}.gallery button:nth-child(even){padding-top:60px}.gallery button:nth-child(3n) img{height:340px}.gallery span{display:block;font-size:12px;letter-spacing:1px;padding-top:11px}.story{padding-block:100px;display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.story-image{height:460px;border-radius:8px 140px 8px 8px;overflow:hidden}.story h2{font-size:32px;line-height:1.8;font-weight:500}.story p{font-size:15px;line-height:2.2}.visit{padding:60px;background:#e9ede3;display:grid;grid-template-columns:1fr 1fr;gap:8%;border-radius:4px;margin-bottom:85px}.visit h2{font:55px/1.1 Georgia,serif;margin:10px 0 23px}.visit-links{display:grid;align-content:center}.visit-links a{padding:18px 0;border-bottom:1px solid #b7c3b4;display:flex;justify-content:space-between}.footer{border-top:1px solid var(--line);padding-block:38px}.footer-top,.footer-bottom{display:flex;justify-content:space-between;gap:30px}.footer-links{display:flex;gap:25px;font-size:13px}.footer-bottom{margin-top:40px;font-size:12px;color:#64726c}.dialog{background:var(--paper);border:0;padding:15px;max-width:min(90vw,950px);max-height:94dvh}.dialog::backdrop{background:#11251fe8}.dialog img{width:100%;height:auto;max-height:75dvh;object-fit:contain}.dialog button{display:block;margin:0 0 10px auto;border:1px solid var(--ink);border-radius:25px;padding:5px 17px;background:var(--paper)}.skip{position:fixed;top:-100px;left:10px;background:white;padding:10px;z-index:99}.skip:focus{top:10px}@media(max-width:760px){header{height:83px}.menu-toggle{display:block;border:1px solid var(--ink);border-radius:30px;padding:7px 14px;background:none}.nav{display:none;position:absolute;top:76px;left:5%;right:5%;background:var(--paper);border:1px solid var(--line);padding:23px;z-index:5;flex-direction:column}.nav.open{display:flex}.hero{display:flex;flex-direction:column}.hero h1{font-size:clamp(32px,9.6vw,43px)}.menu-toggle{white-space:nowrap}.intro h2,.story h2{font-size:clamp(22px,6.2vw,32px)}.section-title{flex-direction:column;align-items:flex-start}.tape{font-size:15px}.hero-art{height:390px;margin:25px 10px 20px}.intro{grid-template-columns:1fr;padding-block:60px}.service-grid{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,1fr)}.story{grid-template-columns:1fr}.visit{padding:30px 24px;grid-template-columns:1fr}.footer-top,.footer-bottom{flex-direction:column}}
