@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;600&family=Shippori+Mincho:wght@400;500;600&display=swap');:root{--ink:#5d5559;--pink:#f7e7e6;--cream:#fffaf5;--blue:#10bcd5;--gold:#bda27d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'Noto Sans JP',sans-serif;font-weight:300;line-height:2}a{color:inherit;text-decoration:none}header{position:sticky;top:0;z-index:5;background:#fffaf5ed;backdrop-filter:blur(14px);border-bottom:1px solid #eaded6;display:flex;align-items:center;justify-content:space-between;padding:10px 5%}header img{width:118px;height:54px;object-fit:contain;mix-blend-mode:multiply}nav{display:flex;gap:22px;align-items:center;font-size:12px}nav a:hover{color:#1ab2c4}.cta,.btn{display:inline-block;padding:11px 27px;border:1px solid var(--gold);border-radius:30px;background:#fff9f3;font-size:13px;letter-spacing:.08em}.cta{background:#f4e5e5}.btn:hover,.cta:hover{background:#f4d9dd}.hero{min-height:630px;background:linear-gradient(90deg,#fff8f2e8 0%,#fff8f2b5 43%,#fff8f212 100%),url('assets/door.jpg') center 54%/cover;display:flex;align-items:center;padding:7% 10%}.hero-inner{max-width:560px}.eyebrow{font-size:12px;letter-spacing:.3em;color:#9e888e}.hero h1{font:500 clamp(32px,4vw,59px)/1.6 'Shippori Mincho',serif;letter-spacing:.1em}.hero p{max-width:470px}.section{max-width:1080px;margin:0 auto;padding:90px 28px}.section h2,.pagehead h1{font:500 clamp(26px,3vw,38px)/1.6 'Shippori Mincho',serif;letter-spacing:.12em}.sub{font-size:12px;color:#ad9295;letter-spacing:.22em;text-transform:uppercase}.center{text-align:center}.lead{max-width:680px;margin:25px auto 0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.tile{background:#fff;border:1px solid #efe6df;border-radius:5px;overflow:hidden}.tile img{width:100%;height:220px;object-fit:cover}.tile .pad{padding:24px}.tile h3{font:500 22px 'Shippori Mincho',serif;margin:0 0 10px}.muted{color:#988b88;font-size:13px}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.split img{width:100%;max-height:500px;object-fit:cover}.pink{background:#f9efef}.soft{background:#f2f6f3}.topics{max-width:760px;margin:auto}.topic{display:flex;gap:25px;padding:18px 0;border-bottom:1px solid #e8dcd5;font-size:14px}.topic time{color:#b69a98;min-width:100px}.pagehead{text-align:center;padding:100px 25px;background:linear-gradient(120deg,#f7e5e7,#fff9f2 60%,#eaf5f5)}.pagehead p{margin:0}.profile{width:100%;border-radius:4px}.note{padding:22px;background:#fff;border:1px solid #eadfdc;border-radius:4px}.menurow{padding:26px 0;border-bottom:1px solid #e5d7d0}.menurow h3{font:500 23px 'Shippori Mincho',serif;margin:0}.footer{background:#f2e9e6;text-align:center;padding:60px 20px;font-size:13px}.footer img{width:150px;mix-blend-mode:multiply}.footerlinks{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin:15px}.small{font-size:12px}.mobile{display:none}@media(max-width:760px){header{padding:7px 14px}header img{width:92px;height:44px}nav{gap:10px;font-size:10px;overflow-x:auto;white-space:nowrap}nav .optional{display:none}.hero{min-height:650px;background:linear-gradient(180deg,#fff9f5e8,#fff9f599 55%,#fff9f520),url('assets/door.jpg') center/cover;padding:55px 25px;align-items:flex-start}.hero h1{font-size:34px}.section{padding:65px 22px}.grid,.split{grid-template-columns:1fr}.split{gap:24px}.tile img{height:240px}.topic{gap:10px;flex-direction:column}.pagehead{padding:65px 15px}.mobile{display:block}}
.voices-section{max-width:900px}.voice-card{padding:30px 34px;margin:22px 0;background:#fffaf8;border:1px solid #eadedc;border-radius:8px}.voice-card h3{font-size:17px;color:#77665f}.voice-quote{white-space:pre-line;line-height:2}.voice-closing{margin-top:60px;padding:35px;background:#f9efef}.voice-closing p{line-height:2}.menu-sub{color:#9d797c}.menu-price{font-weight:700;color:#806b5b}@media(max-width:760px){.voice-card{padding:22px 18px}}

/* Photographic interludes */
.photo-passage{min-height:410px;background-position:center 46%;background-size:cover;display:flex;align-items:center;padding:65px max(6%,calc((100vw - 1080px)/2))}.photo-passage-text{max-width:490px;padding:30px;background:#fffaf2d9;backdrop-filter:blur(4px)}.photo-passage h2{font:500 clamp(26px,3vw,39px)/1.65 'Shippori Mincho',serif}.photo-strip{height:320px;background-position:center 42%;background-size:cover}.profile{max-height:460px;object-fit:cover;object-position:center top}.pink .split img[src$="people.jpg"]{max-height:450px;object-position:center top}@media(max-width:760px){.photo-passage{min-height:340px;padding:30px 20px}.photo-strip{height:210px}.profile{max-height:350px}}

/* v4: 写真は元の縦横比を保ち、拡大・切り抜きをしない */
.split img,.pink .split img[src$="people.jpg"],.profile,.tile img,.voices-section img{width:100%;height:auto;max-height:none;object-fit:contain;object-position:center;display:block}
.split img[src$="people.jpg"],.profile{max-width:600px;margin-inline:auto}
.tile img{height:auto;max-height:320px;object-fit:contain;background:#fff}
.hero{background:linear-gradient(110deg,#fff8f2 0%,#fff8f2 62%,#f6eceb 100%);display:grid;grid-template-columns:1fr minmax(250px,420px);gap:32px;min-height:0;padding:65px max(5%,calc((100vw - 1120px)/2));align-items:center}
.hero::after{content:"";display:block;background:url('assets/door.jpg') center/contain no-repeat;aspect-ratio:736/1307;width:100%;max-height:620px}
.photo-strip{height:auto;min-height:0;background:none!important;display:flex;justify-content:center;padding:40px 22px;background-color:#faf2f2!important}
.photo-strip::after{content:"";display:block;width:min(100%,420px);aspect-ratio:675/1200;background:url('assets/angels.jpg') center/contain no-repeat}
.photo-strip[aria-label="木漏れ日の光"]::after{aspect-ratio:736/1308;background-image:url('assets/forest.jpg')}
.photo-passage{background:none!important;min-height:0;display:grid;grid-template-columns:1fr minmax(220px,360px);gap:35px;align-items:center;background-color:#f7f0eb!important;padding:45px max(5%,calc((100vw - 1080px)/2))}
.photo-passage::after{content:"";display:block;width:100%;aspect-ratio:736/1307;background:url('assets/flowers.jpg') center/contain no-repeat}
@media(max-width:760px){.hero{display:flex;flex-direction:column;gap:10px;padding:40px 24px}.hero::after{width:min(100%,290px);min-height:460px}.photo-passage{grid-template-columns:1fr;padding:32px 22px}.photo-passage::after{width:min(100%,290px);margin:auto}.photo-strip{height:auto}.photo-strip::after{width:min(100%,300px)}}

/* v5: balanced editorial crops, retaining the full profile portrait */
.hero{grid-template-columns:minmax(0,1fr) minmax(250px,390px)}
.hero::after{aspect-ratio:4/5;max-height:520px;background-size:cover;background-position:center 48%;border-radius:110px 110px 6px 6px;box-shadow:0 12px 35px #c9a5a522}
.tile img{height:235px;max-height:none;object-fit:cover;object-position:center 42%;background:none}
.tile img[src$="forest.jpg"]{object-position:center 30%}
.tile img[src$="window.jpg"]{object-position:center 48%}
.split img:not([src$="people.jpg"]){height:360px;max-height:360px;object-fit:cover;object-position:center 46%;border-radius:150px 150px 4px 4px}
.photo-passage{grid-template-columns:minmax(0,1fr) minmax(240px,400px)}
.photo-passage::after{aspect-ratio:4/5;background-size:cover;background-position:center 45%;border-radius:150px 150px 4px 4px}
.photo-strip{padding:35px 22px}
.photo-strip::after{width:min(100%,660px);aspect-ratio:16/9;background-size:cover;background-position:center 43%;border-radius:5px}
.photo-strip[aria-label="木漏れ日の光"]::after{aspect-ratio:16/9;background-size:cover;background-position:center 42%}
/* The two-person photo was already cropped to the requested chest-up framing; never crop it further. */
.split img[src$="people.jpg"],.pink .split img[src$="people.jpg"],img.profile{height:auto!important;max-height:none!important;object-fit:contain!important;object-position:center!important;width:100%;max-width:600px}
@media(max-width:760px){.hero{grid-template-columns:1fr}.hero::after{max-width:340px;margin:auto;width:100%;aspect-ratio:4/5}.tile img{height:220px}.split img:not([src$="people.jpg"]){height:270px}.photo-passage{grid-template-columns:1fr}.photo-passage::after{max-width:360px;margin:auto;aspect-ratio:4/5}}

/* Voices: portrait artwork with balanced, restrained cropping */
.voices-section img.voices-art{width:min(100%,390px);height:480px;max-height:none;object-fit:cover;object-position:center 36%;margin:0 auto 28px;border-radius:180px 180px 5px 5px;box-shadow:0 12px 30px #8c756122}
@media(max-width:760px){.voices-section img.voices-art{width:min(100%,310px);height:390px}}

/* 追加画像：縦長の作品を不自然に拡大せずに見せる */
.topics-art{display:flex;justify-content:center;margin:0 auto 42px;max-width:440px}
.topics-art img{display:block;width:100%;height:330px;object-fit:cover;object-position:center 48%;border-radius:160px 160px 6px 6px}
.split img[src$="invitation.jpg"]{height:480px;max-height:none;object-fit:cover;object-position:center 54%;border-radius:180px 180px 5px 5px}
.photo-strip[aria-label="夢のような空"]::after{background-image:url('assets/botanical.jpg');background-size:contain;aspect-ratio:1/1.55;width:min(100%,390px);background-position:center}
@media(max-width:760px){.split img[src$="invitation.jpg"]{height:360px}.topics-art img{height:270px}}

/* トピックスの投稿写真 */
.topic-photo{display:block;width:100%;max-width:680px;height:auto;max-height:480px;object-fit:cover;border-radius:12px;margin:16px 0}
