:root{--bg: #14120f;--bg-raise: #1d1a16;--line: #322d26;--text: #ece7de;--text-dim: #a89f90;--accent: #c9a24b;--accent-strong: #e0b95e;--vermillion: #b13a2e;--font-brush: "Yuji Syuku", "Hiragino Mincho ProN", "Yu Mincho", serif;--max: 960px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif;font-size:16px;line-height:1.9;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background-image:url(/washi.png);background-repeat:repeat}body>*{position:relative;z-index:1}.serif{font-family:Shippori Mincho,Hiragino Mincho ProN,Yu Mincho,serif}.brush{font-family:var(--font-brush)}.seal{display:inline-flex;align-items:center;justify-content:center;width:2.4em;height:2.4em;background:var(--vermillion);color:#f3ead9;font-family:var(--font-brush);font-size:1em;line-height:1;border-radius:.18em;transform:rotate(-3deg);box-shadow:0 0 0 1px #b13a2e59,2px 3px 10px #0006;letter-spacing:0}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-strong)}.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}header.site{position:sticky;top:0;z-index:50;background:#14120fd9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}header.site .wrap{display:flex;align-items:center;justify-content:space-between;height:60px}.brand{font-family:var(--font-brush);font-size:1.45rem;letter-spacing:.22em;color:var(--text);display:inline-flex;align-items:baseline;gap:10px}.brand small{color:var(--accent);letter-spacing:.34em;font-family:Shippori Mincho,serif;font-size:.62rem}nav.site a{color:var(--text-dim);margin-left:22px;font-size:.88rem}nav.site a:hover{color:var(--text)}nav.site a.cta{color:#14120f;background:var(--accent);padding:8px 18px;border-radius:3px;font-weight:600}nav.site a.cta:hover{background:var(--accent-strong)}.hero{padding:110px 0 90px;text-align:center;position:relative}.hero h1{font-family:var(--font-brush);font-size:clamp(2rem,5.6vw,3.4rem);font-weight:400;letter-spacing:.1em;line-height:1.65}.hero h1 em{font-style:normal;color:var(--accent)}.hero .hero-seal{display:inline-block;margin-left:18px;vertical-align:8px;font-size:.42em}.hero p.lead{margin:30px auto 0;max-width:620px;color:var(--text-dim);font-size:1.02rem}.hero .actions{margin-top:44px;display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.hero .tategaki{position:absolute;right:6%;top:90px;writing-mode:vertical-rl;font-family:var(--font-brush);font-size:.95rem;letter-spacing:.42em;color:var(--text-dim);opacity:.75;border-right:1px solid var(--line);padding-right:14px;height:240px}@media(max-width:1100px){.hero .tategaki{display:none}}.btn{display:inline-block;padding:14px 34px;border-radius:3px;font-weight:600;font-size:.95rem;letter-spacing:.05em;transition:transform .15s ease,background .15s ease}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--accent);color:#14120f}.btn.primary:hover{background:var(--accent-strong);color:#14120f}.btn.ghost{border:1px solid var(--line);color:var(--text)}.btn.ghost:hover{border-color:var(--accent);color:var(--accent)}section.block{padding:80px 0;border-top:1px solid var(--line)}section.block h2{font-family:var(--font-brush);font-size:1.9rem;letter-spacing:.2em;text-align:center;font-weight:400;margin-bottom:6px}section.block h2:after{content:"";display:block;width:130px;height:8px;margin:10px auto 0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 10'%3E%3Cpath d='M4 6 C 40 2.5, 75 8, 115 5 S 175 3.5, 196 6' stroke='%23c9a24b' stroke-width='2.6' fill='none' stroke-linecap='round' opacity='0.9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;background-position:center}section.block p.sub{text-align:center;color:var(--text-dim);margin-bottom:48px;font-size:.92rem;margin-top:14px}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.feature{background:var(--bg-raise);border:1px solid var(--line);border-radius:6px;padding:30px 26px;border-top:2px solid rgba(201,162,75,.45)}.feature .num{color:var(--vermillion);font-family:var(--font-brush);font-size:1.5rem;letter-spacing:.2em;line-height:1}.feature h3{margin:10px 0 12px;font-size:1.08rem;letter-spacing:.05em}.feature p{color:var(--text-dim);font-size:.9rem}.flow{list-style:none;counter-reset:step;max-width:680px;margin:0 auto}.flow li{counter-increment:step;display:flex;gap:22px;padding:26px 0;border-bottom:1px dashed var(--line)}.flow li:last-child{border-bottom:none}.flow li:before{content:counter(step,japanese-informal);font-family:var(--font-brush);color:var(--accent);font-size:1.5rem;min-width:48px;line-height:1.5}.flow h3{font-size:1.02rem;margin-bottom:6px;letter-spacing:.05em}.flow p{color:var(--text-dim);font-size:.9rem}.flow .tag{display:inline-block;margin-left:10px;padding:1px 10px;border:1px solid var(--accent);border-radius:20px;color:var(--accent);font-size:.72rem;vertical-align:2px}.price-note{max-width:680px;margin:0 auto;text-align:center;background:var(--bg-raise);border:1px solid var(--line);border-radius:6px;padding:40px 30px}.price-note strong{color:var(--accent);font-size:1.35rem;letter-spacing:.14em;font-family:var(--font-brush);font-weight:400}.price-note p{color:var(--text-dim);font-size:.9rem;margin-top:12px}form.order{max-width:640px;margin:0 auto}.field{margin-bottom:26px}.field label{display:block;font-size:.9rem;margin-bottom:8px;letter-spacing:.05em}.field label .req{color:var(--accent);font-size:.75rem;margin-left:8px}.field label .opt{color:var(--text-dim);font-size:.75rem;margin-left:8px}.field input[type=text],.field input[type=email],.field input[type=number],.field select,.field textarea{width:100%;padding:12px 14px;background:var(--bg-raise);border:1px solid var(--line);border-radius:4px;color:var(--text);font-size:.95rem;font-family:inherit}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--accent)}.field .hint{color:var(--text-dim);font-size:.78rem;margin-top:6px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:560px){.field-row{grid-template-columns:1fr}}form.order button[type=submit]{width:100%;padding:16px;border:none;border-radius:4px;background:var(--accent);color:#14120f;font-size:1rem;font-weight:700;letter-spacing:.1em;cursor:pointer;font-family:inherit}form.order button[type=submit]:hover{background:var(--accent-strong)}.page{max-width:720px;margin:0 auto;padding:70px 24px 90px}.page h1{font-family:var(--font-brush);font-size:1.85rem;font-weight:400;letter-spacing:.16em;margin-bottom:30px}.page h2{font-size:1.05rem;margin:34px 0 10px;color:var(--accent);letter-spacing:.08em}.page p,.page li{color:var(--text-dim);font-size:.92rem}.page table{width:100%;border-collapse:collapse;margin-top:10px}.page th,.page td{border:1px solid var(--line);padding:12px 14px;font-size:.88rem;text-align:left;vertical-align:top}.page th{width:32%;color:var(--text);font-weight:600;background:var(--bg-raise)}.page td{color:var(--text-dim)}footer.site{border-top:1px solid var(--line);padding:44px 0 60px;color:var(--text-dim);font-size:.82rem}footer.site .wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}footer.site a{color:var(--text-dim);margin-right:18px}footer.site a:hover{color:var(--accent)}footer.site .copy{display:inline-flex;align-items:center;gap:12px}footer.site .seal{font-size:.8rem}
