@font-face{font-family:Pretendard;src:url('/assets/fonts/PretendardVariable.woff2') format('woff2');font-weight:100 700;font-style:normal;font-display:swap}
:root{--bg:#fff8fc;--surface:#fff;--surface-soft:#fff0f7;--ink:#251722;--muted:#705d69;--line:#f1cfe0;--accent:#d92f7a;--accent-strong:#b91f62;--accent-soft:#ffd6e8;--ice:#d8f2ff;--shadow:0 24px 70px rgba(160,45,102,.14);--radius:22px;--header:74px;--max:1240px;color-scheme:light}
@media(prefers-color-scheme:dark){:root{--bg:#1b1118;--surface:#271821;--surface-soft:#321b27;--ink:#fff5fa;--muted:#d8bfcf;--line:#5b3146;--accent:#ff70ad;--accent-strong:#ff97c2;--accent-soft:#5a2440;--ice:#1f4354;--shadow:0 24px 70px rgba(0,0,0,.28);color-scheme:dark}}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Pretendard,Apple SD Gothic Neo,sans-serif;font-weight:400;line-height:1.68;word-break:keep-all}body.menu-open{overflow:hidden}img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.skip{position:fixed;left:12px;top:-80px;z-index:100;background:var(--ink);color:var(--bg);padding:12px 16px;border-radius:10px}.skip:focus{top:12px}.wrap{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.narrow{width:min(calc(100% - 40px),820px);margin-inline:auto}.site-header{position:sticky;top:0;z-index:40;height:var(--header);background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid color-mix(in srgb,var(--line) 72%,transparent)}.nav-shell{height:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:30px}.brand{display:flex;align-items:center;gap:12px;min-width:max-content}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--accent);color:#fff;font-size:14px;font-weight:700;letter-spacing:-.04em;box-shadow:0 10px 28px color-mix(in srgb,var(--accent) 25%,transparent)}.brand-copy strong{display:block;font-size:16px;font-weight:700;line-height:1.1}.brand-copy span{display:block;margin-top:4px;color:var(--muted);font-size:11px;font-weight:500}.desktop-nav{display:flex;justify-content:flex-end;align-items:center;gap:22px;font-size:14px;font-weight:600}.desktop-nav a{position:relative;padding:9px 0}.desktop-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:3px;height:2px;background:var(--accent);transition:right .25s ease}.desktop-nav a:hover::after,.desktop-nav a[aria-current=page]::after{right:0}.header-call{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:999px;background:var(--ink);color:var(--bg);font-size:14px;font-weight:700;white-space:nowrap}.menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink)}.menu-toggle span,.menu-toggle span::before,.menu-toggle span::after{display:block;width:18px;height:2px;margin:auto;background:currentColor;content:"";transition:.25s}.menu-toggle span::before{transform:translateY(-6px)}.menu-toggle span::after{transform:translateY(4px)}.mobile-menu{display:none}.hero{padding:34px 0 64px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:minmax(0,.83fr) minmax(0,1.17fr);gap:34px;align-items:stretch;min-height:660px}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:50px 0}.eyebrow{margin:0 0 18px;color:var(--accent-strong);font-size:13px;font-weight:700;letter-spacing:.08em}.hero h1{max-width:720px;margin:0;font-size:clamp(45px,6vw,82px);line-height:1.04;letter-spacing:-.065em;font-weight:700}.hero h1 em{font-style:normal;color:var(--accent)}.hero .lead{max-width:560px;margin:25px 0 0;color:var(--muted);font-size:clamp(17px,2vw,21px);line-height:1.65}.hero-actions,.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 22px;border:1px solid transparent;border-radius:999px;font-weight:700;white-space:nowrap;transition:transform .2s ease,background .2s ease,border-color .2s ease}.btn:active{transform:scale(.98)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-strong)}.btn-secondary{border-color:var(--line);background:var(--surface);color:var(--ink)}.btn-secondary:hover{border-color:var(--accent)}.hero-note{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:42px}.hero-note div{padding:18px 0;border-top:1px solid var(--line)}.hero-note strong{display:block;color:var(--accent-strong);font-size:20px;font-weight:700}.hero-note span{display:block;margin-top:3px;color:var(--muted);font-size:13px}.hero-media{position:relative;overflow:hidden;border-radius:calc(var(--radius) + 10px);box-shadow:var(--shadow);min-height:620px;background:var(--surface-soft)}.hero-media img{height:100%;object-fit:cover}.hero-media::after{content:"";position:absolute;inset:auto 0 0;height:28%;background:linear-gradient(transparent,color-mix(in srgb,var(--accent) 18%,transparent));pointer-events:none}.hero-badge{position:absolute;right:18px;bottom:18px;z-index:1;max-width:250px;padding:16px 18px;border-radius:17px;background:color-mix(in srgb,var(--surface) 88%,transparent);border:1px solid color-mix(in srgb,var(--line) 75%,transparent);backdrop-filter:blur(16px);box-shadow:0 12px 30px rgba(65,20,43,.1)}.hero-badge strong{font-weight:700}.hero-badge span{display:block;margin-top:2px;color:var(--muted);font-size:13px}.section{padding:100px 0}.section-soft{background:var(--surface-soft)}.section-head{max-width:720px;margin-bottom:42px}.section-head h2,.page-hero h1{margin:0;font-size:clamp(34px,4.5vw,58px);line-height:1.12;letter-spacing:-.045em;font-weight:700}.section-head p,.page-hero .lead{margin:18px 0 0;color:var(--muted);font-size:18px}.bento{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:auto auto;gap:18px}.bento article{position:relative;overflow:hidden;min-height:250px;padding:34px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}.bento .major{grid-row:span 2;min-height:520px;background:var(--accent);color:#fff}.bento h3{margin:0;font-size:clamp(25px,3vw,40px);line-height:1.15;font-weight:700}.bento p{max-width:480px;margin:15px 0 0;color:var(--muted)}.bento .major p{color:#ffeaf3}.bento-number{position:absolute;right:22px;bottom:10px;color:rgba(255,255,255,.18);font-size:148px;font-weight:700;line-height:1}.price-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:20px}.price-feature{position:relative;overflow:hidden;min-height:530px;padding:42px;border-radius:var(--radius);background:var(--ink);color:var(--bg)}.price-feature .amount{margin:32px 0 8px;font-size:clamp(52px,7vw,88px);font-weight:700;line-height:1;letter-spacing:-.06em}.price-feature .amount small{font-size:18px;letter-spacing:0}.price-feature p{color:color-mix(in srgb,var(--bg) 72%,transparent)}.price-feature img{position:absolute;right:-9%;bottom:-10%;width:58%;max-height:68%;object-fit:contain;mix-blend-mode:screen;opacity:.96}.price-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.price-item{padding:30px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}.price-item h3{margin:0;font-size:21px;font-weight:700}.price-item strong{display:block;margin-top:20px;color:var(--accent-strong);font-size:27px;font-weight:700}.price-item p{margin:10px 0 0;color:var(--muted)}.media-zig{display:grid;grid-template-columns:1.08fr .92fr;gap:40px;align-items:center}.media-zig.reverse{grid-template-columns:.92fr 1.08fr}.media-zig.reverse .media-frame{order:2}.media-frame{overflow:hidden;border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.media-frame img{aspect-ratio:3/2;object-fit:cover}.content-block h2{margin:0;font-size:clamp(32px,4vw,52px);line-height:1.15;letter-spacing:-.04em;font-weight:700}.content-block p{margin:20px 0 0;color:var(--muted);font-size:17px}.check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;margin-top:28px}.check-grid div{padding:16px 18px;border-left:3px solid var(--accent);background:var(--surface);border-radius:0 14px 14px 0;font-size:14px;font-weight:600}.room-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:18px}.room-card{overflow:hidden;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}.room-card:first-child{grid-row:span 2}.room-card img{aspect-ratio:3/2;object-fit:cover}.room-card:first-child img{aspect-ratio:1/1.14}.room-card .body{padding:24px}.room-card h3{margin:0;font-size:24px;font-weight:700}.room-card p{margin:8px 0 0;color:var(--muted)}.area-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.area-card{grid-column:span 4;overflow:hidden;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);transition:transform .25s ease,border-color .25s ease}.area-card:first-child,.area-card:nth-child(5){grid-column:span 6}.area-card:hover{transform:translateY(-4px);border-color:var(--accent)}.area-card img{aspect-ratio:16/9;object-fit:cover}.area-card .body{padding:22px}.area-card h3{margin:0;font-size:22px;font-weight:700}.area-card p{margin:8px 0 0;color:var(--muted);font-size:14px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.step{padding:28px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}.step .verb{color:var(--accent-strong);font-size:14px;font-weight:700}.step h3{margin:14px 0 0;font-size:22px;font-weight:700}.step p{margin:10px 0 0;color:var(--muted);font-size:15px}.faq-shell{display:grid;grid-template-columns:.65fr 1.35fr;gap:44px}.faq-guide{position:sticky;top:104px;align-self:start}.faq-guide img{max-height:520px;object-fit:contain}.faq-list{display:grid;gap:12px}.faq-item{border:1px solid var(--line);border-radius:16px;background:var(--surface);overflow:hidden}.faq-item summary{cursor:pointer;list-style:none;padding:20px 54px 20px 22px;font-weight:700;position:relative}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::after{content:"+";position:absolute;right:20px;top:18px;color:var(--accent);font-size:23px}.faq-item[open] summary::after{content:"-"}.faq-answer{padding:0 22px 22px;color:var(--muted)}.faq-filter{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:20px}.filter-btn{padding:10px 15px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font-size:13px;font-weight:700}.filter-btn.is-active{background:var(--accent);border-color:var(--accent);color:#fff}.blog-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.blog-card{display:grid;grid-template-columns:44% 1fr;overflow:hidden;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}.blog-card img{height:100%;min-height:250px;object-fit:cover}.blog-card .body{padding:26px}.blog-card time{color:var(--accent-strong);font-size:13px;font-weight:700}.blog-card h2,.blog-card h3{margin:12px 0 0;font-size:24px;line-height:1.3;font-weight:700}.blog-card p{margin:12px 0 0;color:var(--muted);font-size:14px}.page-hero{padding:58px 0 50px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;color:var(--muted);font-size:13px}.page-hero-grid{display:grid;grid-template-columns:1fr .7fr;gap:40px;align-items:center}.page-hero-visual{overflow:hidden;border-radius:var(--radius);box-shadow:var(--shadow)}.page-hero-visual img{aspect-ratio:4/3;object-fit:cover}.prose{font-size:17px}.prose h2{margin:54px 0 14px;font-size:32px;line-height:1.25;letter-spacing:-.03em;font-weight:700}.prose h3{margin:34px 0 10px;font-size:23px;font-weight:700}.prose p{margin:0 0 20px;color:var(--muted)}.prose ul{padding-left:20px;color:var(--muted)}.summary-box{padding:28px;border-radius:var(--radius);background:var(--surface-soft);border:1px solid var(--line)}.summary-box strong{color:var(--accent-strong)}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.info-card{padding:28px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}.info-card h3{margin:0;font-size:22px;font-weight:700}.info-card p{margin:11px 0 0;color:var(--muted)}.cta-band{padding:78px 0;background:var(--accent);color:#fff}.cta-grid{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}.cta-band h2{margin:0;font-size:clamp(34px,4vw,56px);line-height:1.1;font-weight:700;letter-spacing:-.04em}.cta-band p{margin:14px 0 0;color:#ffeaf3}.cta-band .btn-primary{background:#fff;color:#8b174f}.cta-band .btn-secondary{background:transparent;border-color:#ffc4dc;color:#fff}.site-footer{padding:68px 0 110px;background:var(--ink);color:var(--bg)}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:50px}.footer-brand{font-size:24px;font-weight:700}.footer-copy{max-width:480px;color:color-mix(in srgb,var(--bg) 66%,transparent)}.footer-title{margin:0 0 16px;font-size:14px;font-weight:700}.footer-links{display:grid;gap:10px;color:color-mix(in srgb,var(--bg) 75%,transparent);font-size:14px}.legal{margin-top:48px;padding-top:24px;border-top:1px solid color-mix(in srgb,var(--bg) 14%,transparent);color:color-mix(in srgb,var(--bg) 55%,transparent);font-size:12px}.mobile-cta{display:none}.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s cubic-bezier(.16,1,.3,1),transform .65s cubic-bezier(.16,1,.3,1)}.reveal.is-visible{opacity:1;transform:none}:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:3px}
@media(max-width:1120px){.desktop-nav{gap:14px;font-size:13px}.hero-grid{min-height:580px}.hero-media{min-height:540px}.steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:920px){.desktop-nav,.header-call{display:none}.nav-shell{grid-template-columns:1fr auto}.menu-toggle{display:block}.mobile-menu{position:fixed;inset:var(--header) 0 0;z-index:35;display:grid;align-content:start;gap:0;padding:20px;background:var(--bg);transform:translateX(100%);transition:transform .28s ease}.mobile-menu.is-open{transform:none}.mobile-menu a{padding:15px 4px;border-bottom:1px solid var(--line);font-size:18px;font-weight:700}.mobile-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.mobile-actions a{display:flex;justify-content:center;border:0;border-radius:999px;background:var(--accent);color:#fff;font-size:15px}.hero-grid,.page-hero-grid,.media-zig,.media-zig.reverse,.price-layout,.faq-shell{grid-template-columns:1fr}.hero-grid{min-height:auto}.hero-copy{padding:24px 0 8px}.hero-media{min-height:480px}.media-zig.reverse .media-frame{order:0}.price-feature{min-height:480px}.faq-guide{position:relative;top:auto}.faq-guide img{max-height:390px}.area-card,.area-card:first-child,.area-card:nth-child(5){grid-column:span 6}.blog-card{grid-template-columns:1fr}.blog-card img{min-height:230px}.cta-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:640px){.wrap,.narrow{width:min(calc(100% - 28px),var(--max))}.section{padding:72px 0}.hero{padding-top:12px}.hero h1{font-size:44px}.hero .lead{font-size:17px}.hero-media{min-height:390px}.hero-note{grid-template-columns:1fr;gap:0}.hero-note div{padding:11px 0}.bento{grid-template-columns:1fr}.bento .major{grid-row:auto;min-height:390px}.price-list,.check-grid,.room-grid,.info-grid,.blog-grid,.steps{grid-template-columns:1fr}.price-feature{min-height:440px;padding:30px}.price-feature img{width:70%;right:-18%}.room-card:first-child{grid-row:auto}.room-card:first-child img{aspect-ratio:3/2}.area-grid{grid-template-columns:1fr}.area-card,.area-card:first-child,.area-card:nth-child(5){grid-column:auto}.blog-card .body{padding:22px}.page-hero{padding:42px 0 34px}.page-hero h1{font-size:39px}.cta-band{padding:62px 0}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.site-footer{padding-bottom:110px}.mobile-cta{position:fixed;left:0;right:0;bottom:0;z-index:45;display:grid;grid-template-columns:1fr 1fr;padding:10px;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(14px);border-top:1px solid var(--line)}.mobile-cta a{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:999px;background:var(--accent);color:#fff;font-weight:700}.mobile-cta a+ a{margin-left:8px;background:var(--ink);color:var(--bg)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.btn,.area-card,.mobile-menu{transition:none}}
.reveal{opacity:1;transform:none}
.motion-ready .reveal{opacity:0;transform:translateY(18px)}
.motion-ready .reveal.is-visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.motion-ready .reveal{opacity:1;transform:none}}
.cta-band p{color:#fff}
