@font-face{font-family:GypsoSans;src:url('assets/sans.woff') format('woff');font-weight:100 900;font-display:swap}
@font-face{font-family:GypsoSerif;src:url('assets/serif.woff') format('woff');font-weight:100 900;font-display:swap}
:root{--ink:#503c37;--body:#544a46;--muted:#74645e;--paper:#fffdfa;--ivory:#f6f0e8;--rose:#94646a;--rose-light:#f0e0df;--gold:#aa8b59;--line:#ddcfc3;--serif:GypsoSerif,'Yu Mincho',serif;--sans:GypsoSans,'Hiragino Kaku Gothic ProN',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--body);font:400 16px/2.1 var(--sans);letter-spacing:.035em}a{color:inherit;text-underline-offset:6px}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3,h4,ul,ol,dl,dd{margin:0}h1,h2,h3,h4{color:var(--ink);font-weight:500}h1,h2,h3{font-family:var(--serif)}h1{font-size:clamp(2.2rem,3.25vw,3.2rem);line-height:1.8;letter-spacing:.065em}h2{font-size:clamp(1.8rem,2.6vw,2.6rem);line-height:1.85;letter-spacing:.065em}h3{font-size:1.65rem;line-height:1.9}h4{font-size:1.125rem;line-height:1.9}strong{font-weight:600}a:focus-visible{outline:3px solid #a45d60;outline-offset:6px}.wrap{width:min(1180px,calc(100% - 112px));margin-inline:auto}.section{padding-block:128px}.eyebrow{font-size:.875rem;letter-spacing:.16em;color:var(--muted);margin-bottom:24px;display:flex;gap:16px;align-items:center}.eyebrow:before{content:'';display:block;width:30px;height:1px;background:var(--gold);flex:none}.prose p+p{margin-top:24px}.prose h2{margin-bottom:30px}.mobile-break{display:none}.skip{position:absolute;top:-100px;left:15px;z-index:100;background:white;padding:10px}.skip:focus{top:10px}
/* Brand and first view */
.header{min-height:122px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:26px;padding-block:24px}.brand{grid-column:2;grid-row:1;text-decoration:none;font:3.1rem/1 Georgia,serif;letter-spacing:-.045em;color:var(--ink);text-align:center}.brand span{display:block;font:.75rem/1.5 var(--sans);letter-spacing:.2em;margin-top:12px}.header nav{grid-column:3;grid-row:1;display:flex;gap:25px;justify-content:flex-end;flex-wrap:wrap;font-size:.875rem;line-height:1.6}.header nav a{text-decoration:none;white-space:nowrap}.header nav a:hover{text-decoration:underline}.header-location{grid-column:1;grid-row:1;font-size:.75rem;letter-spacing:.15em;color:var(--muted)}.hero-stage{background:linear-gradient(112deg,#f9f3e9 0%,#f6eee5 45%,#ead5d5 100%);padding:48px 0 58px;position:relative}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:58px}.hero-copy{padding:20px 0;position:relative;z-index:1}.hero-copy .eyebrow{margin-bottom:22px;color:#785e55}.hero-accent{color:var(--rose)}.hero-lead{margin:30px 0 32px;line-height:2.1}.hero-photo{position:relative;margin:0 10px 0 0;isolation:isolate}.hero-photo:before{content:'';position:absolute;inset:20px -20px -20px 20px;border:1px solid #a786706b;z-index:-1}.hero-photo img{width:100%;height:650px;object-fit:cover;object-position:50% 35%}.hero-photo figcaption{position:absolute;bottom:12px;right:12px;background:#fff9f2e8;padding:1px 8px;font-size:.75rem;letter-spacing:.05em;color:#685650}.line-button{display:inline-flex;justify-content:center;align-items:center;gap:20px;min-height:64px;padding:16px 30px;background:var(--rose);color:#fff;text-decoration:none;font-weight:500;font-size:1rem;letter-spacing:.045em;transition:background .15s;max-width:100%;text-align:center;line-height:1.75;border:1px solid var(--rose)}.line-button:hover{background:#794c53;border-color:#794c53}.line-mark{font:600 .75rem/1.4 var(--sans);border:1px solid #ffffff8a;border-radius:5px;padding:3px 4px;letter-spacing:0;flex:none}.cta-note{font-size:.8125rem;line-height:1.85;margin-top:16px;color:var(--muted)}
/* Trust and understanding */
.trust{padding-block:64px 76px;display:grid;grid-template-columns:1fr 1.5fr;align-items:center;gap:70px}.trust-number{padding-left:0;display:flex;align-items:baseline;flex-wrap:wrap;gap:0 12px;color:var(--ink)}.trust-number>span{font-size:1rem}.trust-number strong{font-family:Georgia,serif;font-size:3.5rem;line-height:1.3;font-weight:400;letter-spacing:.01em;color:var(--rose)}.trust-number strong span{font-family:var(--sans);font-size:1rem;margin-left:10px;color:var(--ink)}.trust-number p{width:100%;font-size:1rem;margin-top:12px}.trust-copy{font-size:1rem;border-left:1px solid var(--line);padding-left:60px;display:grid;grid-template-columns:1fr 1fr;gap:32px}.trust-copy br{display:none}.concerns{background:var(--ivory);position:relative}.split{display:grid;grid-template-columns:1fr 1fr;gap:100px}.concerns h2{font-size:2.45rem}.questions{list-style:none;padding:6px 0;margin:28px 0}.questions li{padding:18px 0 18px 30px;position:relative;line-height:1.9;border-bottom:1px solid var(--line)}.questions li:first-child{border-top:1px solid var(--line)}.questions li:before{content:'―';position:absolute;left:0;color:var(--gold)}.emphasis{font-family:var(--serif);font-size:1.3rem;color:var(--rose)}
/* Editorial photographs */
.future-stage{background:linear-gradient(90deg,#f4e7e3 0%,#f9f2eb 43%,var(--paper) 43%)}.future{display:grid;grid-template-columns:1fr 1.12fr;gap:94px;align-items:center}.future-photo{position:relative;margin:0 20px 22px 0;isolation:isolate}.future-photo:before{content:'';position:absolute;inset:26px -26px 8px 26px;border:1px solid #b99b76;z-index:-1}.future-photo img{width:100%;height:635px;object-fit:cover;object-position:50% 30%}.future-photo figcaption,.approach-card figcaption{font-size:.75rem;color:var(--muted);text-align:right;margin-top:5px}.future-copy .eyebrow{margin-bottom:22px}.future-copy strong{font-family:var(--serif);font-size:1.12rem;font-weight:500;color:var(--rose)}.approach{background:var(--paper);border-top:1px solid var(--line)}.section-intro{text-align:center;max-width:900px;margin:0 auto 76px}.section-intro .eyebrow{justify-content:center}.section-intro .eyebrow:before{display:none}.section-caption{font:400 .8125rem/1.6 var(--sans);color:var(--rose);letter-spacing:.24em;margin-bottom:16px}.section-intro h2{margin-bottom:28px}.section-intro p+p{margin-top:15px}.approach-grid{display:flex;flex-direction:column;gap:94px}.approach-card{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px}.approach-card figure{margin-right:25px;position:relative;isolation:isolate}.approach-card figure:before{content:'';position:absolute;inset:30px -30px 14px 30px;background:#eee1d8;z-index:-1}.approach-card img{width:100%;height:490px;object-fit:cover;object-position:50% 36%}.approach-card:nth-child(2) figure{grid-column:2;grid-row:1;margin:0 0 0 25px}.approach-card:nth-child(2) figure:before{inset:30px 30px 14px -30px;background:#eedfdf}.approach-card:nth-child(2) .approach-text{grid-column:1;grid-row:1;padding-left:20px}.approach-card:nth-child(3) figure:before{background:#e9e1d6}.approach-card:nth-child(3) img{object-position:50% 30%}.approach-text{padding:12px 20px 12px 0}.number{font:italic 2.4rem Georgia,serif;color:var(--rose);display:flex;align-items:center;gap:18px;margin-bottom:26px}.number span{font:400 .75rem/1.5 var(--sans);letter-spacing:.2em;color:var(--muted)}.number:after{content:'';display:block;height:1px;width:50px;background:var(--gold)}.small-label{font-size:.875rem;color:var(--muted);line-height:1.9}.approach-text h3{font-size:2rem;margin:10px 0 24px}.approach-text h4{margin:22px 0 10px;font-size:1rem;font-weight:500}.approach-text p:not(.small-label){line-height:2.1}.aftercare{margin-top:110px;padding:58px 32px;text-align:center;background:linear-gradient(120deg,#f5eee5,#f1e1df);border-block:1px solid #c4a797}.aftercare .eyebrow{margin-bottom:18px;justify-content:center}.aftercare .eyebrow:before{display:none}.aftercare h3{margin-bottom:20px}
/* Menu */
.investment{border-top:1px solid var(--line)}.value-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:-10px 0 45px;text-align:center;border-block:1px solid var(--line);padding:36px 0;gap:24px}.value-list p{font-family:var(--serif);font-size:1.12rem}.value-list span{display:block;font:italic 1.15rem Georgia,serif;margin-bottom:16px;color:var(--rose)}.value-list p+p{border-left:1px solid var(--line)}.menu-preface{max-width:700px;margin:0 auto 72px}.menu-heading{margin:54px 0 26px}.menu-heading h3{font-size:1.5rem}.menu-heading p{margin-top:6px;color:var(--muted);font-size:.875rem}.consult-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.consult-card{background:linear-gradient(130deg,#f8f0e7,#f3e4e1);padding:34px;min-width:0;border-top:2px solid #b99782}.tags{display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-size:.875rem}.tags span{border:1px solid #b8a297;display:inline-block;padding:1px 10px;line-height:1.8;color:var(--ink)}.consult-card .tags{margin-bottom:24px}.consult-card h4{font-size:1.125rem;margin-top:4px}.price{font:400 2rem/1.7 Georgia,serif;letter-spacing:.025em;color:var(--ink);overflow-wrap:anywhere}.price span{font:400 1rem var(--sans);margin:0 4px;letter-spacing:0}.consult-card .price{margin-top:25px;color:#83565d}.menu-note{font-size:.875rem;margin-top:22px;line-height:2;color:var(--muted)}.menu-note p+p{margin-top:8px}.menu-row{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding:30px 0}.menu-row:last-child{border-bottom:1px solid var(--line)}.menu-row h4{margin:6px 0 14px;font-weight:500}.menu-row .price{font-size:1.875rem;flex:none}
/* Booking and salon */
.booking{background:linear-gradient(115deg,#634d46,#77545a);color:#fff8f3;position:relative}.booking:before{content:'';position:absolute;inset:22px;pointer-events:none;border:1px solid #bd9c7c80}.booking .section-caption{color:#e0c3ad}.booking .eyebrow{color:#efdbce}.booking h2,.booking h3{color:#fff9f4}.booking-steps{padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin:0 0 70px}.booking-steps li{border-top:1px solid #bc9991;padding-top:25px}.step-number{font:italic 1.7rem Georgia,serif;color:#e4c7b6}.booking-steps h3{font-size:1.25rem;margin:18px 0}.booking-steps p{font-size:1rem;color:#f5e7df}.booking-cta{text-align:center}.closing-copy{font-family:var(--serif);font-size:1.25rem;margin-bottom:26px}.booking-cta .line-button{min-width:370px;background:#fff6ed;color:#664c48;border:1px solid #fff6ed}.booking-cta .line-button:hover{background:#e9d5ca}.booking-cta .line-mark{border-color:#b59990}.booking-cta .cta-note{color:#efdbce}.salon{display:grid;grid-template-columns:1fr 1.6fr;gap:65px}.salon-brand{font:4.5rem/1.4 Georgia,serif;letter-spacing:-.04em}.salon dl>div{display:grid;grid-template-columns:100px 1fr;gap:28px;border-bottom:1px solid var(--line);padding:20px 0}.salon dl>div:first-child{padding-top:0}.salon dt{color:var(--muted);font-size:.875rem}.salon dd{font-size:1rem}.footer{display:flex;gap:24px;align-items:center;padding:30px 0;border-top:1px solid var(--line);font-size:.75rem;color:var(--muted)}.footer a{margin-left:auto;font-size:.875rem}.footer small{font-size:.75rem}.sticky-booking{display:none}
@media(max-width:1100px){.wrap{width:calc(100% - 72px)}.header-location{font-size:.75rem}.header nav{gap:18px}.header nav a:first-child{display:none}.hero{gap:40px}.hero h1{font-size:2.3rem}.hero-photo img{height:610px}.trust{gap:45px}.trust-copy{grid-template-columns:1fr;gap:15px;padding-left:40px}.trust-copy br{display:inline}.future{gap:60px}.future-photo img{height:590px}.split{gap:55px}.concerns h2{font-size:2.1rem}.approach-card{gap:65px}.approach-card img{height:460px}.approach-text h3{font-size:1.8rem}.consult-card{padding:26px}.consult-card .price{font-size:1.8rem}.section{padding-block:100px}}
@media(max-width:760px){body{font-size:16px;padding-bottom:calc(6rem + env(safe-area-inset-bottom,0px))}.wrap{width:calc(100% - 48px)}.header{min-height:96px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:18px;padding-block:22px}.brand{font-size:2.6rem;text-align:left}.brand span{font-size:.75rem;letter-spacing:.12em;text-align:center;margin-top:7px}.header-location{display:none}.header nav{gap:16px;font-size:.875rem;flex-wrap:wrap}.hero-stage{padding:28px 0 45px;background:linear-gradient(130deg,#faf3e8,#f5e6e3 75%,#ead2d1)}.hero{display:flex;flex-direction:column;gap:24px;align-items:stretch}.hero-copy{display:contents}.hero .eyebrow{order:0;font-size:.875rem;margin:0 0 -12px;gap:12px}.hero .eyebrow:before{width:22px}.hero h1{order:1;font-size:clamp(1.8rem,7.2vw,2.6rem);line-height:1.8;letter-spacing:.045em}.hero-photo{order:2;margin:2px 10px 14px 0}.hero-photo:before{inset:12px -12px -12px 12px}.hero-photo img{height:auto;aspect-ratio:4/4.2;object-fit:cover;object-position:50% 31%}.hero-lead{order:3;margin:0;line-height:2.1}.hero .line-button{order:4;align-self:stretch;margin-top:0}.hero .cta-note{order:5;margin-top:-10px}.line-button{min-height:62px;padding:15px 16px;gap:15px}.trust{padding-block:45px 56px;grid-template-columns:1fr;gap:28px}.trust-number{gap:0 12px}.trust-number strong{font-size:3rem}.trust-number p{margin-top:10px}.trust-number p br{display:none}.trust-copy{padding:25px 0 0;border-left:0;border-top:1px solid var(--line);gap:16px}.trust-copy br{display:none}.section{padding-block:78px}h2,.concerns h2{font-size:1.8rem;line-height:1.85;letter-spacing:.025em}h3{font-size:1.4rem}.eyebrow{margin-bottom:20px;font-size:.875rem;gap:12px}.eyebrow:before{width:22px}.split{grid-template-columns:1fr;gap:30px}.concerns h2 br.desktop-break{display:none}.concerns h2 br:nth-child(2){display:none}.questions{margin-block:25px}.emphasis{font-size:1.2rem}.future-stage{background:linear-gradient(180deg,#f3e4e0 0%,#f8f0e9 38%,var(--paper) 65%)}.future{display:flex;flex-direction:column;gap:37px}.future-photo{width:calc(100% - 15px);align-self:flex-start;margin:0 0 15px}.future-photo:before{inset:16px -16px 8px 16px}.future-photo img{height:auto;aspect-ratio:4/4.6;object-fit:cover;object-position:50% 25%}.future-photo figcaption{margin-top:8px}.future-copy h2{margin-bottom:25px}.future-copy strong{font-size:1.1rem}.section-intro{text-align:left;margin-bottom:43px}.section-intro .eyebrow{justify-content:flex-start}.section-caption{font-size:.75rem;letter-spacing:.19em}.section-intro h2{margin-bottom:25px}.section-intro br.desktop-break{display:none}.approach-grid{gap:62px}.approach-card{display:flex;flex-direction:column;gap:30px;align-items:stretch}.approach-card figure,.approach-card:nth-child(2) figure{width:calc(100% - 16px);margin:0 0 0 0}.approach-card:nth-child(2) figure{margin-left:16px}.approach-card figure:before{inset:17px -17px 12px 17px}.approach-card:nth-child(2) figure:before{inset:17px 17px 12px -17px}.approach-card img{height:auto;aspect-ratio:1/1.06;object-fit:cover;object-position:50% 36%}.approach-card:nth-child(3) img{object-position:50% 27%}.approach-text,.approach-card:nth-child(2) .approach-text{padding:0}.number{font-size:2.2rem;margin-bottom:19px}.number span{font-size:.75rem}.approach-text h3{margin:10px 0 20px;font-size:1.75rem}.approach-text h4{margin-top:23px}.aftercare{text-align:left;margin-top:65px;padding:32px 24px}.aftercare .eyebrow{justify-content:flex-start;font-size:.8125rem}.aftercare h3{font-size:1.25rem}.aftercare br.desktop-break{display:none}.value-list{grid-template-columns:1fr;text-align:left;gap:0;padding:0;margin:0 0 30px}.value-list p{display:flex;align-items:baseline;gap:22px;padding:22px 0}.value-list p+p{border-left:0;border-top:1px solid var(--line)}.value-list span{margin:0;font-size:1.15rem}.menu-preface{margin-bottom:40px}.menu-heading{margin:40px 0 23px}.menu-heading h3{font-size:1.35rem}.consult-cards{grid-template-columns:minmax(0,1fr);gap:20px}.consult-card{padding:26px 23px}.consult-card .tags{margin-bottom:20px}.consult-card .price{font-size:1.8rem;margin-top:20px}.menu-row{align-items:flex-start;flex-direction:column;gap:14px;padding-block:25px}.menu-row h4{font-size:1.1rem;margin-top:7px}.menu-row .price{align-self:flex-end;font-size:1.9rem}.menu-note{font-size:.875rem}.booking{padding-block:76px}.booking:before{inset:10px}.booking h2{font-size:1.75rem}.booking h2 br{display:none}.booking-steps{grid-template-columns:1fr;gap:27px;margin-bottom:45px}.booking-steps li{display:grid;grid-template-columns:40px 1fr;gap:12px 16px;padding-top:24px}.booking-steps h3{margin:0;font-size:1.2rem}.booking-steps p{grid-column:2}.step-number{line-height:1.65}.booking-cta .line-button{min-width:0;width:100%}.closing-copy{font-size:1.15rem;text-align:left}.booking-cta .cta-note{text-align:left}.salon{grid-template-columns:1fr;gap:33px}.salon-brand{font-size:3.75rem}.salon .eyebrow{margin-bottom:10px}.salon dl>div{grid-template-columns:70px 1fr;gap:18px}.salon dd{font-size:1rem}.footer{flex-wrap:wrap;gap:10px 15px;padding-block:24px}.footer p{font-size:.75rem}.footer small{width:100%}.sticky-booking{display:block;position:fixed;inset:auto 0 0;z-index:10;padding:10px 18px calc(10px + env(safe-area-inset-bottom,0px));background:#fffaf5f5;border-top:1px solid #cbb2a3}.sticky-booking .line-button{width:100%;min-height:56px;padding-block:12px}.mobile-break{display:block}.desktop-break{display:none}}
@media(max-width:360px){.wrap{width:calc(100% - 40px)}.header nav{gap:10px;font-size:.875rem}.brand{font-size:2.35rem}.hero h1{font-size:1.75rem}.hero .eyebrow{font-size:.8125rem}.consult-card{padding:22px 18px}.consult-card .price{font-size:1.625rem}.line-button{font-size:.9375rem;gap:10px}.salon dl>div{grid-template-columns:1fr;gap:4px}.aftercare{padding-inline:20px}.hero-lead br.mobile-break{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.line-button{transition:none}}
@media print{.sticky-booking,.header nav{display:none}body{padding-bottom:0}.section{padding-block:40px}.hero-photo img{height:450px}.wrap{width:95%}a{color:inherit}.booking{background:#fff;color:var(--body)}.booking h2,.booking h3,.booking p{color:var(--body)}}
/* 採用された第3案の冒頭デザイン */
.design-loa .header{min-height:104px;padding-block:22px;width:calc(100% - 112px);max-width:1400px}
.design-loa .brand{font-family:var(--sans);font-size:2.45rem;font-weight:400;letter-spacing:.12em;color:#34322f}
.design-loa .brand span{font-size:.75rem;letter-spacing:.2em;margin-top:7px}
.design-loa .header-location,.design-loa .header nav{color:#514b43}
.design-loa .hero-stage{background:#eae7e1;padding:0}
.design-loa .hero{width:100%;max-width:1600px;grid-template-columns:1fr 1fr;gap:0;align-items:stretch}
.design-loa .hero-copy{padding:65px clamp(38px,6.3vw,100px);align-self:center;color:#34322f}
.design-loa .hero h1{font-size:clamp(2rem,3.15vw,3.1rem);line-height:1.85;letter-spacing:.05em;color:#34322f}
.design-loa .hero-accent{color:inherit}
.design-loa .hero-copy .eyebrow{color:#655f56;font-size:.875rem;letter-spacing:.16em;margin-bottom:28px}
.design-loa .hero-copy .eyebrow:before{display:none}
.design-loa .hero-lead{font-size:1rem;line-height:2.2;margin:28px 0 32px}
.design-loa .hero-lead br.mobile-break{display:block}
.design-loa .hero-photo{margin:0;min-width:0;min-height:740px}
.design-loa .hero-photo:before{display:none}
.design-loa .hero-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:52% 34%}
.design-loa .hero-photo figcaption{background:#fffcf1d9;color:#49463f;bottom:16px;right:18px;font-size:.75rem;line-height:1.8}
.design-loa .hero .line-button,.design-loa .sticky-booking .line-button{background:#34322f;border-color:#34322f;color:#fffdf7;min-width:300px}
.design-loa .hero .line-button:hover,.design-loa .sticky-booking .line-button:hover{background:#514b43;border-color:#514b43}
.design-loa .hero .line-mark,.design-loa .sticky-booking .line-mark{border-radius:0;border-color:#c6c1b7}
.design-loa .hero .cta-note{color:#655f56;font-size:.8125rem;margin-top:18px}
.design-loa .trust{padding-block:66px 76px}
.design-loa .trust-number strong{color:#5e594f}
.design-loa .sticky-booking{background:#fffdf8f5;border-color:#d8d3c8}
@media(min-width:1601px){.design-loa .hero-stage{background:linear-gradient(90deg,#eae7e1 50%,#d9d7d2 50%)}}
@media(max-width:1100px) and (min-width:761px){.design-loa .hero-copy{padding:48px 36px}.design-loa .hero h1{font-size:2.1rem}.design-loa .hero-photo{min-height:720px}.design-loa .header{width:calc(100% - 72px)}}
@media(max-width:760px){
 .design-loa .header{min-height:90px;padding-block:18px;width:calc(100% - 44px);gap:15px}
 .design-loa .brand{font-size:1.9rem;letter-spacing:.08em}
 .design-loa .brand span{font-size:.75rem;letter-spacing:.1em;margin-top:7px}
 .design-loa .header nav{font-size:.875rem;gap:16px}
 .design-loa .hero-stage{padding:0 0 22px;background:#f7f5ef}
 .design-loa .hero{display:flex;gap:0;flex-direction:column}
 .design-loa .hero-photo{order:0;width:100%;min-height:0;aspect-ratio:1/1.12;margin:0}
 .design-loa .hero-photo img{object-position:50% 26%}
 .design-loa .hero-photo figcaption{top:14px;bottom:auto;right:14px}
 .design-loa .hero-copy{order:1;display:block;position:relative;width:calc(100% - 40px);margin:-42px 20px 0;padding:29px 24px 23px;background:#f7f5ef;z-index:2}
 .design-loa .hero-copy .eyebrow{font-size:.8125rem;margin-bottom:16px;letter-spacing:.1em}
 .design-loa .hero h1{font-size:clamp(1.65rem,6.7vw,2.2rem);line-height:1.85;letter-spacing:.035em}
 .design-loa .hero-lead{font-size:1rem;line-height:2.1;margin:22px 0 24px}
 .design-loa .hero-lead br.mobile-break{display:none}
 .design-loa .hero .line-button{width:100%;min-width:0;padding-inline:12px;gap:10px;font-size:.9375rem}
 .design-loa .sticky-booking .line-button{min-width:0}
 .design-loa .hero .cta-note{font-size:.8125rem;margin-top:16px}
 .design-loa .hero .cta-note br{display:none}
 .design-loa .trust{padding-block:45px 56px}
}
@media(max-width:360px){.design-loa .header nav{gap:10px;font-size:.8125rem}.design-loa .brand{font-size:1.7rem}.design-loa .hero-copy{width:calc(100% - 32px);margin-inline:16px;padding-inline:18px}.design-loa .hero h1{font-size:1.6rem}.design-loa .hero .line-button{font-size:.875rem;gap:8px}}
@media print{.design-loa .hero-photo{min-height:550px}.design-loa .hero-photo img{height:100%}}
@media(max-width:760px){.design-loa .hero-lead br.mobile-break{display:block}}
/* 全体統一版：採用された冒頭から店舗情報まで同じ色と質感でつなぐ。 */
body.design-loa{--ink:#34322f;--body:#49463f;--muted:#6b655b;--paper:#fffdfa;--ivory:#eeece6;--rose:#625d52;--rose-light:#eae7e1;--gold:#aaa18f;--line:#d9d4ca;background:var(--paper)}
.design-loa a:focus-visible{outline-color:#665d43}
.design-loa .line-button{background:#34322f;border-color:#34322f;color:#fffdf7}
.design-loa .line-button:hover{background:#514b43;border-color:#514b43}
.design-loa .line-mark{border-radius:0}
.design-loa .eyebrow:before{background:#a69d8d}
.design-loa .concerns{background:#eeece6}
.design-loa .questions li:before{color:#8a8272}
.design-loa .emphasis{color:#34322f}
.design-loa .future-stage{background:linear-gradient(90deg,#eae7e1 0%,#f1efea 43%,#fffdfa 43%)}
.design-loa .future-photo{margin:0}
.design-loa .future-photo:before{display:none}
.design-loa .future-copy strong{color:#4e493f}
.design-loa .section-caption{color:#6b655b}
.design-loa .approach-card figure,.design-loa .approach-card:nth-child(2) figure{margin:0}
.design-loa .approach-card figure:before{display:none}
.design-loa .number{color:#615b4f}
.design-loa .number:after{background:#aaa18f}
.design-loa .number span{color:#6b655b}
.design-loa .aftercare{background:#eeece6;border-block:1px solid #d9d4ca}
.design-loa .consult-card{background:#efede7;border-top:1px solid #b4ab9c}
.design-loa .consult-card .price{color:#34322f}
.design-loa .tags span{border-color:#aea697}
.design-loa .booking{background:#38362f;color:#faf7ef}
.design-loa .booking:before{display:none}
.design-loa .booking .section-caption{color:#d2cabe}
.design-loa .booking .eyebrow{color:#e3dbcf}
.design-loa .booking h2,.design-loa .booking h3{color:#fffdf7}
.design-loa .booking-steps li{border-color:#8b8375}
.design-loa .step-number{color:#d8cdbc}
.design-loa .booking-steps p{color:#eee8dc}
.design-loa .booking-cta .line-button{background:#f5f2e9;border-color:#f5f2e9;color:#34322f}
.design-loa .booking-cta .line-button:hover{background:#ded8ca;border-color:#ded8ca}
.design-loa .booking-cta .line-mark{border-color:#a49b8b}
.design-loa .booking-cta .cta-note{color:#e3dbcf}
@media(max-width:760px){
 .design-loa .future-stage{background:linear-gradient(180deg,#eae7e1 0%,#f2f0ea 38%,#fffdfa 65%)}
 .design-loa .future-photo{width:100%;margin:0}
 .design-loa .approach-card figure,.design-loa .approach-card:nth-child(2) figure{width:100%;margin:0}
 .design-loa .approach-card img{aspect-ratio:1/1.08}
}
@media print{.design-loa .booking{background:#fff;color:#34322f}.design-loa .booking h2,.design-loa .booking h3,.design-loa .booking p{color:#34322f}}
/* 手段：1つの悩みに1つの提案。全画面サイズで2列×2段。 */
.design-loa .approach>.wrap{max-width:1000px}
.design-loa .approach .section-intro{margin-bottom:48px}
.design-loa .approach-grid-four{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 40px}
.design-loa .approach-grid-four .approach-card{display:flex;flex-direction:column;gap:0;align-items:stretch;min-width:0}
.design-loa .approach-grid-four .approach-card figure{width:100%;margin:0;grid-column:auto;grid-row:auto}
.design-loa .approach-grid-four .approach-card img{height:auto;width:100%;aspect-ratio:4/3;object-fit:cover;object-position:50% 36%}
.design-loa .approach-grid-four .approach-card:nth-child(3) img{object-position:50% 45%}
.design-loa .approach-grid-four .approach-card:nth-child(4) img{object-position:50% 25%}
.design-loa .approach-grid-four .approach-text{padding:22px 0 0;grid-column:auto;grid-row:auto;min-width:0}
.design-loa .approach-grid-four .number{font-size:1.8rem;margin-bottom:16px;gap:14px}
.design-loa .approach-grid-four .number:after{display:none}
.design-loa .approach-grid-four h3{font-size:1.5rem;line-height:1.8;margin:0 0 15px;letter-spacing:.02em}
.design-loa .approach-grid-four .approach-text p{font-size:1rem;line-height:1.95}
.design-loa .approach .aftercare{margin-top:64px}
@media(max-width:760px){
 .design-loa .approach>.wrap{width:calc(100% - 36px)}
 .design-loa .approach .section-intro{margin-bottom:32px;padding-inline:6px}
 .design-loa .approach-grid-four{gap:34px 18px}
 .design-loa .approach-grid-four .approach-card img{aspect-ratio:1/1.1;object-position:50% 35%}
 .design-loa .approach-grid-four .approach-card:nth-child(3) img{object-position:50% 45%}
 .design-loa .approach-grid-four .approach-card:nth-child(4) img{object-position:50% 26%}
 .design-loa .approach-grid-four figcaption{font-size:.75rem;letter-spacing:0;line-height:1.6;margin-top:7px}
 .design-loa .approach-grid-four .approach-text{padding-top:15px}
 .design-loa .approach-grid-four .number{font-size:1.5rem;margin-bottom:12px;gap:8px;flex-wrap:wrap}
 .design-loa .approach-grid-four .number span{font-size:.75rem;letter-spacing:.08em}
 .design-loa .approach-grid-four h3{font-size:1.0625rem;line-height:1.8;letter-spacing:0;margin-bottom:12px}
 .design-loa .approach-grid-four .approach-text p{font-size:1rem;line-height:1.9;letter-spacing:0}
 .design-loa .approach .aftercare{margin-top:42px}
}
@media(max-width:360px){.design-loa .approach-grid-four{column-gap:14px}.design-loa .approach-grid-four h3{font-size:1rem}.design-loa .approach-grid-four .number{gap:7px}.design-loa .approach-grid-four .number span{letter-spacing:0}}
.design-loa .approach-grid-four{max-width:840px;margin-inline:auto}
@media(min-width:761px){.design-loa .approach-grid-four .approach-card img{aspect-ratio:1/1}}
/* 料金の見出しは小さな画面でも意味のまとまりで読める幅に。 */
@media(max-width:360px){.design-loa .investment-intro h2{font-size:1.5rem}}

.design-loa .aftercare p+p{margin-top:1em}

/* 冒頭：スタイル写真と実際の店内写真を3枚並べ、コピーを下へ。 */
.design-loa .hero-stage{background:#f0eee8}
.design-loa .hero.hero-with-gallery{display:flex;flex-direction:column;max-width:1400px;gap:0}
.design-loa .hero-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;padding:0 24px;order:0}
.design-loa .hero-gallery figure{margin:0;min-width:0;position:relative}
.design-loa .hero-gallery img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.design-loa .hero-gallery figure:first-child img{aspect-ratio:4/3;object-position:50% 25%}
.design-loa .hero-gallery figcaption{font-size:.75rem;line-height:1.7;letter-spacing:.04em;color:#6b655b;padding:8px 0 0;text-align:right}
.design-loa .hero-with-gallery .hero-copy{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center;width:100%;max-width:1160px;margin:0 auto;padding:44px 36px 58px;order:1;background:transparent}
.design-loa .hero-with-gallery h1{font-size:clamp(2rem,3vw,2.75rem);line-height:1.7}
.design-loa .hero-with-gallery .hero-lead{margin:0 0 24px}
.design-loa .hero-with-gallery .hero-copy .eyebrow{margin-bottom:18px}
@media(max-width:760px){
 .design-loa .hero-gallery{gap:4px;padding:0 10px}
 .design-loa .hero-gallery figcaption{font-size:.625rem;letter-spacing:0;padding-top:6px;line-height:1.6}
 .design-loa .hero-with-gallery .hero-copy{display:block;width:100%;margin:0;padding:30px 28px 14px}
 .design-loa .hero-with-gallery h1{font-size:clamp(1.6rem,6.7vw,2.2rem);line-height:1.85}
 .design-loa .hero-with-gallery .hero-lead{margin:22px 0 24px}
}
@media(max-width:360px){.design-loa .hero-with-gallery .hero-copy{padding-inline:24px}.design-loa .hero-gallery figcaption{font-size:.5625rem}}

/* 02は写真全体を収め、頭頂部から毛先まで切らずに表示。 */
.design-loa .approach-grid-four .approach-card:nth-child(2) img{object-fit:contain;object-position:center;background:#eeece6}
