:root{--ink:#203d46;--teal:#1d4550;--blue:#e9f0f3;--paper:#fcfcfa;--orange:#be602f;--line:#ccd7da}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;font-size:16px;line-height:1.9}a{color:inherit;text-underline-offset:6px}button{font:inherit}header{padding:23px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);background:var(--paper)}.logo{font-family:Georgia,serif;font-size:34px;font-weight:bold;letter-spacing:-1.5px;text-decoration:none;line-height:1.2}.logo span{display:block;font-family:inherit;font-weight:normal;letter-spacing:1px;font-size:12px;margin-top:8px}nav{display:flex;gap:28px;align-items:center;font-size:14px}nav a{text-decoration:none}.nav-contact{border:1px solid var(--ink);padding:8px 24px;border-radius:3px}.wrap{max-width:1120px;margin:auto;padding:88px 32px}.hero{max-width:1400px;margin:auto;display:grid;grid-template-columns:1.12fr 1fr;gap:56px;padding:80px 7% 72px}.eyebrow{font-size:13px;letter-spacing:2px;font-weight:bold;margin:0 0 24px;color:var(--orange)}h1,h2,h3,p{margin-top:0}h1{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:clamp(40px,4.8vw,66px);line-height:1.55;letter-spacing:2px;margin-bottom:24px}h2{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:34px;line-height:1.6;font-weight:600}h3{font-size:22px;line-height:1.6}.underline{text-decoration:underline;text-decoration-color:#b9d5db;text-decoration-thickness:12px;text-underline-offset:-3px}.lead{font-size:17px;line-height:2.1;margin-bottom:32px}.button{display:inline-block;padding:15px 28px;background:var(--teal);color:white;text-decoration:none;border:1px solid var(--teal);border-radius:3px;font-weight:bold;font-size:15px;transition:transform .2s,background .2s}.button:hover{background:#2e5965;transform:translateY(-2px)}.small{font-size:13px;line-height:1.8;margin-top:15px}.hero-note{position:relative;background:var(--blue);padding:48px 38px;align-self:center;border-top:4px solid var(--teal);overflow:hidden}.note-top{font:12px Georgia,serif;letter-spacing:3px}.hero-note h2{font-size:36px;margin:40px 0 23px}.hero-note p{font-size:15px}.profile-mini{position:relative;z-index:1;display:flex;align-items:center;gap:16px;margin-top:35px}.profile-mini img{width:62px;height:62px;border-radius:50%;object-fit:cover}.profile-mini div{font-size:16px}.profile-mini span{display:block;font-size:12px}.note-number{position:absolute;right:15px;bottom:-60px;font:220px Georgia,serif;color:#dbe5e9;pointer-events:none}.trust{display:flex;justify-content:center;gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 4%;font-size:14px}.trust span{padding:0 35px;border-right:1px solid var(--line)}.trust span:last-child{border:0}.split{display:grid;grid-template-columns:1fr 1.2fr;gap:70px}.worries{list-style:none;padding:0;margin:0 0 24px}.worries li{padding:10px 0;border-bottom:1px solid var(--line)}.worries li:before{content:'＋';margin-right:15px;color:var(--orange)}.intro p:not(.eyebrow){font-size:15px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:32px}.section-heading h2{margin:0}.section-heading p{font-size:14px;margin:0}.service{padding-top:20px}.services{display:grid;grid-template-columns:1.3fr 1fr;gap:22px}.services article{padding:36px;background:#edf0ec;border:1px solid #d7dfd7;display:flex;flex-direction:column;align-items:flex-start}.services article.primary{background:var(--teal);color:white;border-color:var(--teal)}.index{font-size:12px;letter-spacing:2px;margin-bottom:28px}.services p{font-size:15px}.services a{font-size:14px;margin-top:auto;padding-top:26px}.tags{display:flex;gap:8px;flex-wrap:wrap;font-size:12px}.tags span{border:1px solid #6e8b93;padding:3px 10px}.philosophy{background:var(--blue)}.bio{font-size:15px;line-height:2}.signature{margin-top:32px;font-size:18px}.signature span{font:18px Georgia,serif;margin-left:16px}.principles article{display:flex;gap:25px;padding:27px 0;border-bottom:1px solid #c7d5da}.principles article:first-child{padding-top:0}.principles article>span{font:28px Georgia,serif;color:var(--orange)}.principles h3{font-size:20px;margin-bottom:10px}.principles p{font-size:15px;margin:0}.place-tabs{display:flex;flex-wrap:wrap;gap:8px}.place-tabs button{background:transparent;border:1px solid var(--line);padding:10px 17px;cursor:pointer;font-size:14px;color:var(--ink);border-radius:3px}.place-tabs button.active{background:var(--teal);color:white}.time-panel{display:flex;gap:40px;align-items:center;background:var(--blue);padding:30px;margin:18px 0 45px}.time-panel>div{min-width:150px}.time-panel span{font-size:14px;display:block}.time-panel strong{font-family:Georgia,'Yu Mincho',serif;font-size:32px}.time-panel p{font-size:14px;margin:0}.flow{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.flow article{border-top:2px solid var(--line);padding-top:22px}.flow span{font-size:12px;letter-spacing:2px;color:var(--orange)}.flow h3{font-size:19px;margin-top:12px;margin-bottom:10px}.flow p{font-size:14px;margin:0}.faq{padding-top:10px}.faq h2{margin-bottom:32px}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-size:16px;font-weight:bold;list-style:none;display:flex;justify-content:space-between;gap:20px}summary:after{content:'＋';font-weight:normal;color:var(--orange)}details[open] summary:after{content:'−'}details p{font-size:15px;margin:18px 0 0;max-width:880px}.notice{margin-top:28px;color:#536972}.contact{background:var(--teal);color:white;text-align:center}.contact .eyebrow{color:#d9a279}.contact h2{font-size:43px}.contact p{font-size:16px}.light{background:white;color:var(--teal);border-color:white}.light:hover{background:var(--blue)}.booking{display:block;font-size:14px;margin-top:20px}.contact .small{font-size:13px;margin-top:26px;color:#c8dadd}footer{padding:40px 5%;display:grid;grid-template-columns:1fr 2fr 1.5fr;gap:24px;align-items:center}footer p,footer a:not(.logo){font-size:13px;margin:0}footer small{grid-column:1/-1;font-size:12px;border-top:1px solid var(--line);padding-top:20px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #be602f;outline-offset:5px}@media(max-width:800px){header{padding:20px 6%}.logo{font-size:29px}nav{gap:15px}nav a:not(.nav-contact){display:none}.nav-contact{padding:7px 16px}.hero{grid-template-columns:1fr;padding:50px 6%;gap:36px}.hero-note{padding:30px}.hero-note h2{margin-top:25px;font-size:30px}.hero-note p{font-size:15px}.trust{flex-direction:column;gap:10px;padding:22px 6%}.trust span{border:0;padding:0}.trust span:before{content:'・';color:var(--orange);padding-right:6px}.wrap{padding:60px 6%}.split{grid-template-columns:1fr;gap:24px}h2{font-size:28px}.section-heading{display:block}.section-heading p{margin-top:15px}.services{grid-template-columns:1fr}.services article{padding:28px}.service{padding-top:0}.principles{margin-top:15px}.time-panel{display:block;padding:24px}.time-panel p{margin-top:14px}.flow{grid-template-columns:1fr;gap:24px}.place-tabs button{padding:9px 12px}.faq{padding-top:0}.contact h2{font-size:34px}footer{grid-template-columns:1fr;padding:30px 6%}.eyebrow{font-size:12px}summary{font-size:15px}.button{padding:15px 20px}.hero .small{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
