:root{--ink:#20211f;--paper:#f7f4ed;--white:#fff;--yellow:#efad19;--blue:#169bb0;--line:#d8d2c6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Zen Kaku Gothic New',sans-serif;line-height:1.9}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.site-header{position:absolute;z-index:20;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:28px 4vw}.logo img{width:126px}.menu-link{font:700 13px/1 Inter,sans-serif;letter-spacing:.16em;border-bottom:1px solid;padding:8px 0}.hero{min-height:100svh;display:grid;grid-template-columns:55% 45%;align-items:center;overflow:hidden;position:relative;background:#fbfaf6}.hero-collage{position:relative;height:78vh}.hero-main{position:absolute;left:-7%;top:10%;width:83%;height:68%;object-fit:cover;border-radius:52% 48% 55% 45%/44% 56% 44% 56%;z-index:2}.hero-sub{position:absolute;width:31%;aspect-ratio:1;object-fit:cover;border-radius:50%;z-index:3}.hero-sub-a{right:0;top:2%}.hero-sub-b{right:2%;bottom:2%}.shape{position:absolute;display:block;border-radius:50%;z-index:1}.shape-a{width:38%;aspect-ratio:1;background:#efe8d8;right:5%;top:32%}.shape-b{width:16%;aspect-ratio:1;background:var(--yellow);left:9%;bottom:0}.hero-copy{padding:10vh 8vw 0 3vw;position:relative;z-index:5}.eyebrow,.section-no{font:700 11px/1.4 Inter,sans-serif;letter-spacing:.18em}.hero h1{font-size:clamp(31px,4vw,60px);line-height:1.55;letter-spacing:.05em;margin:26px 0}.scroll{margin-top:70px;font:400 10px Inter,sans-serif;letter-spacing:.2em}.section{padding:120px max(5vw,24px)}.section-no{color:#766f64;margin:0 0 42px}.section h2{font-size:clamp(32px,4.6vw,67px);line-height:1.35;letter-spacing:.05em;margin:0}.intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:9vw;align-items:start}.intro-body{font-size:16px;max-width:520px;padding-top:22px}.intro-body p{margin:0 0 1.6em}.limit{font-weight:700;color:#aa6a00}.wide-photo{width:100%;height:min(58vw,680px);object-fit:cover;margin-top:100px;border-radius:180px 24px 180px 24px}.points{background:#e6a716;color:#1e211f}.points h2{margin-bottom:70px}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:rgba(0,0,0,.15)}.point-card{padding:45px 35px 55px;background:#efad19;min-height:390px}.point-card span{font:700 12px Inter,sans-serif}.point-card h3{font-size:24px;line-height:1.6;margin:65px 0 20px}.point-card p{font-size:14px}.voices h2{margin-bottom:70px}.voice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}.voice-grid figure{margin:0}.voice-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:50%}.voice-grid figcaption{font-size:15px;font-weight:500;padding:24px 5%}.experiences{background:#1b929f;color:white;overflow:hidden}.split-heading{display:grid;grid-template-columns:1.3fr .7fr;gap:8vw;align-items:end}.split-heading>p{max-width:440px}.story-strip{display:flex;gap:20px;overflow-x:auto;margin:80px -5vw 0;padding:0 5vw 28px;scroll-snap-type:x mandatory}.story-strip img{width:min(28vw,330px);aspect-ratio:9/16;object-fit:cover;border-radius:160px;scroll-snap-align:start}.fit{background:#fff}.fit h2{max-width:850px}.fit-list{list-style:none;padding:0;margin:80px 0 0;counter-reset:item;border-top:1px solid var(--line)}.fit-list li{counter-increment:item;display:grid;grid-template-columns:80px 1fr;align-items:center;padding:22px 0;border-bottom:1px solid var(--line);font-size:clamp(17px,2vw,25px);font-weight:500}.fit-list li:before{content:counter(item,decimal-leading-zero);font:700 11px Inter,sans-serif;color:#9b7534}.join{background:#eee6d5}.join-panel{text-align:center;max-width:830px;margin:auto;padding:90px 8vw;background:#fff;border-radius:50% 50% 20px 20px/35% 35% 20px 20px}.join-panel h2{font-size:clamp(34px,5vw,60px);margin-bottom:35px}.join-panel p{max-width:600px;margin:0 auto 20px}.join-note{font-size:12px;color:#7c7468}.faq{max-width:1100px;margin:auto}.faq h2{margin-bottom:60px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:0 10px}summary{cursor:pointer;list-style:none;padding:25px 50px 25px 0;font-size:18px;font-weight:700;position:relative}summary::-webkit-details-marker{display:none}summary:after{content:'＋';position:absolute;right:5px;font-size:22px;font-weight:400}details[open] summary:after{content:'−'}details p{margin:0;padding:0 8% 28px 0;color:#5a574f}footer{background:#1d201e;color:#fff;text-align:center;padding:90px 20px}footer img{width:150px;margin:0 auto 25px;filter:brightness(0) invert(1)}footer p{font-size:13px}footer small{display:block;margin-top:55px;color:#aaa}.js .section{opacity:0;transform:translateY(25px);transition:opacity .8s,transform .8s}.js .section.is-visible{opacity:1;transform:none}.menu-page{min-height:100svh;background:var(--yellow)}.menu-page .site-header{position:relative}.menu-main{padding:5vh max(8vw,30px) 10vh;max-width:1100px;margin:auto}.menu-main h1{font:700 clamp(64px,14vw,180px)/1 Inter,sans-serif;margin:18px 0 60px}.menu-main nav{border-top:1px solid rgba(0,0,0,.35)}.menu-main nav a{display:flex;align-items:center;gap:30px;padding:18px 5px;border-bottom:1px solid rgba(0,0,0,.35);font-size:clamp(17px,2.3vw,28px);font-weight:700}.menu-main nav span{font:700 10px Inter,sans-serif;width:30px}
@media(max-width:760px){.site-header{padding:20px}.logo img{width:100px}.hero{grid-template-columns:1fr;min-height:900px;padding-top:90px;align-content:start}.hero-collage{height:470px}.hero-main{left:-12%;top:10%;width:85%;height:68%}.hero-sub{width:33%}.hero-sub-a{right:0}.hero-sub-b{right:5%;bottom:0}.hero-copy{padding:5px 26px 60px}.hero h1{font-size:31px;margin:16px 0}.scroll{display:none}.section{padding:80px 24px}.section-no{margin-bottom:25px}.section h2{font-size:34px}.intro-grid,.split-heading{grid-template-columns:1fr;gap:35px}.intro-body{padding:0}.wide-photo{margin-top:55px;height:85vw;border-radius:80px 12px}.card-grid,.voice-grid{grid-template-columns:1fr}.point-card{min-height:0}.point-card h3{margin-top:35px}.voice-grid{gap:50px}.voice-grid figure{max-width:390px;margin:auto}.story-strip{margin:50px -24px 0;padding:0 24px 20px}.story-strip img{width:64vw}.fit-list{margin-top:50px}.fit-list li{grid-template-columns:50px 1fr}.join-panel{padding:65px 24px;border-radius:120px 120px 18px 18px}.menu-main{padding-top:7vh}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .section{opacity:1;transform:none;transition:none}}
