:root{--paper:#f7f8f8;--silver:#e7e9ea;--pink:#efdde1;--rose:#735761;--ink:#363a3d;--muted:#63686b;--serif:"Yu Mincho","Hiragino Mincho ProN",serif;--sans:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:36px}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.95}a{color:inherit;text-decoration:none}a,summary{touch-action:manipulation}a:focus-visible,summary:focus-visible{outline:3px solid var(--rose);outline-offset:5px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:var(--serif);font-weight:500}h2{font-size:clamp(29px,3vw,40px);line-height:1.7;letter-spacing:.06em}h3{font-weight:600;font-size:18px}p{overflow-wrap:anywhere}.header{max-width:1480px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:22px 4%;gap:25px}.logo{font-family:Georgia,serif;font-size:37px;line-height:1.2;letter-spacing:.01em}.logo span{display:block;font-family:var(--sans);font-size:11px;letter-spacing:.03em;margin-top:9px}.header nav{display:flex;gap:30px;font-size:14px}.header-book{padding:9px 22px;border:1px solid var(--rose);color:var(--rose);font-size:14px}.hero{max-width:1560px;margin:auto;padding:28px 3% 50px;display:grid;grid-template-columns:1fr 1.18fr 1fr;align-items:center;gap:3.5%}.hero-photo img{width:100%;aspect-ratio:3/4;object-fit:contain}.hero-photo.first{margin-top:30px}.hero-photo.last{margin-top:-20px}.hero-copy{text-align:center}.place{font-size:14px;letter-spacing:.13em;margin-bottom:22px}.hero h1{font-size:clamp(28px,2.7vw,43px);line-height:1.8;letter-spacing:.07em;white-space:nowrap}.intro{margin:25px 0 30px;font-size:15px;line-height:2.2}.button{background:var(--rose);color:white;display:inline-flex;justify-content:center;align-items:center;min-height:57px;padding:14px 28px;font-size:15px;letter-spacing:.035em}.button:hover{background:#5e4450}.text-link{display:table;margin-top:22px;border-bottom:1px solid #9b898f;font-size:14px;padding-bottom:3px}.hero-copy .text-link,.contact .text-link{margin-left:auto;margin-right:auto}.quick-info{border-top:1px solid #dce0e2;border-bottom:1px solid #dce0e2;display:flex;justify-content:center;gap:60px;padding:19px 24px;font-size:14px;letter-spacing:.04em}.section{max-width:1160px;margin:auto;padding:100px 40px}.design{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.small-brand{font-family:Georgia,serif;font-size:28px;font-style:italic;color:var(--rose);margin-bottom:20px}.design-copy h2{font-size:42px;line-height:1.85;margin-bottom:30px}.design-copy>p:not(.small-brand){margin-top:22px}.feature-photo img{width:100%;aspect-ratio:3/4;object-fit:contain}.feature-photo figcaption{font-size:13px;color:var(--muted);margin-top:13px}.menu-section{background:#edf0f1}.menu-inner{display:grid;grid-template-columns:1fr 1.6fr;gap:65px}.menu-heading>p{margin-top:25px}.price-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0;border-bottom:1px solid #c7cdd0}.price-row:first-child{padding-top:3px}.price-row div p{font-size:14px;color:var(--muted);margin-top:6px}.price{font-family:Georgia,serif;font-size:34px;white-space:nowrap}.price span{font-family:var(--sans);font-size:16px;margin-left:5px}.price-note{font-size:13px;margin-top:23px;color:var(--muted)}.information{display:grid;grid-template-columns:1.4fr 1fr;gap:70px;align-items:start}.section-lead{margin-top:19px}.before-list{list-style:none;padding:0;margin:30px 0 0}.before-list li{padding:24px 0;border-top:1px solid #d7dcde}.before-list h3{margin-bottom:10px}.before-list p{font-size:15px}.salon{background:#eee5e7;padding:34px}.salon h2{font-size:27px}.salon dl{margin:20px 0}.salon dl>div{padding:16px 0;border-bottom:1px solid #d3c5ca;display:grid;grid-template-columns:85px 1fr;gap:15px;font-size:14px}.salon dt{color:#62545b}.salon dd{margin:0}.salon>p{font-size:13px}.faq{padding-top:10px;max-width:970px}.faq h2{margin-bottom:28px}.faq details{border-bottom:1px solid #cfd5d8;padding:20px 0}.faq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:17px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"＋";font-size:23px;color:var(--rose);flex:none}.faq details[open] summary:after{content:"−"}.faq details p{padding:15px 35px 4px 0;font-size:15px;color:var(--muted)}.contact{background:#ecdee2;text-align:center;padding:75px 24px 80px}.contact h2{font-size:37px;line-height:1.8}.contact>p:not(.small-brand){margin:22px 0 28px}.contact .small-brand{margin-bottom:15px}footer{text-align:center;padding:50px 25px 110px}footer .logo{font-size:30px}footer p{max-width:830px;margin:20px auto 0;font-size:12px;color:var(--muted)}.fixed-cta{position:fixed;bottom:18px;right:24px;display:flex;z-index:10;background:white;box-shadow:0 3px 18px #363a3d18;border:1px solid #d1c4c9}.fixed-cta a{font-size:14px;padding:13px 25px}.fixed-cta a:last-child{background:var(--rose);color:white}@media(min-width:1600px){.hero{gap:60px}}@media(max-width:1050px){.header nav{gap:18px;font-size:13px}.hero{grid-template-columns:1fr 1.3fr 1fr;gap:2%}.hero h1{font-size:30px}.intro{font-size:14px}.hero .button{font-size:14px;padding:14px 18px}.quick-info{gap:30px}.design-copy h2{font-size:35px}.menu-inner{gap:30px}.information{gap:40px}.salon{padding:25px}.price{font-size:30px}}@media(max-width:760px){.header{padding:19px 22px;gap:12px}.logo{font-size:32px}.logo span{font-size:10px;margin-top:6px}.header nav{display:none}.header-book{padding:9px 12px;font-size:12px}.hero{padding:26px 20px 30px;grid-template-columns:1fr 1fr;gap:20px 12px}.hero-copy{grid-row:1;grid-column:1/-1}.hero h1{font-size:34px;letter-spacing:.04em;line-height:1.65}.place{font-size:13px;margin-bottom:15px}.intro{font-size:15px;margin:20px 0 23px;line-height:2}.hero .button{font-size:15px;padding:14px 30px}.hero-copy .text-link{margin-top:17px}.hero-photo.first{margin-top:25px}.hero-photo.last{margin-top:0}.quick-info{flex-wrap:wrap;gap:4px 22px;padding:14px 20px;font-size:12px}.quick-info span:first-child{width:100%;text-align:center;font-size:14px}.section{padding:62px 24px}.design{gap:30px;grid-template-columns:1fr}.design-copy{text-align:left}.design-copy h2{font-size:32px;line-height:1.7;margin-bottom:22px}.design-copy h2 br:nth-child(2){display:none}.design-copy>p:not(.small-brand){font-size:15px;margin-top:18px}.small-brand{margin-bottom:15px}.feature-photo{max-width:480px;margin:auto}.feature-photo figcaption{font-size:12px}.menu-inner{grid-template-columns:1fr;gap:25px}.menu-heading>p{margin-top:15px;font-size:15px}.menu-heading>p br{display:none}.price-row{padding:21px 0;gap:12px}.price-row h3{font-size:17px}.price-row div p{font-size:12px}.price{font-size:29px}.price span{font-size:13px}.price-note{font-size:12px;line-height:1.9}.information{grid-template-columns:1fr;gap:30px}.section-lead{font-size:15px}.desktop{display:none}.before-list{margin-top:23px}.before-list h3{font-size:17px}.before-list p{font-size:15px}.salon{padding:28px 23px}.salon dl>div{grid-template-columns:85px 1fr;font-size:15px}.salon>p{font-size:14px}.faq{padding-top:0}.faq summary{font-size:16px}.faq details p{padding-right:0;font-size:15px}.contact{padding:56px 24px}.contact h2{font-size:30px}.contact>p:not(.small-brand){font-size:15px}.fixed-cta{bottom:0;right:0;left:0;border:none;padding-bottom:env(safe-area-inset-bottom);background:var(--rose);box-shadow:0 -2px 10px #363a3d12}.fixed-cta a{display:flex;justify-content:center;align-items:center;padding:15px 12px;font-size:14px;min-height:58px}.fixed-cta a:first-child{background:white;flex:1}.fixed-cta a:last-child{flex:2}footer{padding:38px 24px 105px}footer p{font-size:11px}}@media(max-width:360px){.header{padding-left:16px;padding-right:16px}.hero h1{font-size:29px}.hero{padding-left:16px;padding-right:16px}.section{padding-left:20px;padding-right:20px}.price{font-size:26px}.price-row h3{font-size:15px}.price-row div p{font-size:11px}.header-book{font-size:11px;padding:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.sample-notice{padding:7px 18px;background:#e7e9ea;color:#53585b;font-size:11px;text-align:center;line-height:1.7;letter-spacing:.02em}@media(max-width:760px){.sample-notice{font-size:10px;padding:7px 12px}}

@media(max-width:760px){.design-copy h2{font-size:28px}}
