:root{--ink:#21152f;--purple:#5c148b;--purple-dark:#3c0d5d;--green:#86bd12;--lime:#d7e500;--pale:#f4f8e9;--paper:#faf9fb;--line:#dcd5e3;--muted:#625a68;--white:#fff}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--white);font-family:"Noto Sans JP",sans-serif;font-size:16px;line-height:1.8}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit}
.site-header{height:78px;padding:0 clamp(20px,5vw,76px);display:flex;align-items:center;gap:28px;position:sticky;top:0;z-index:30;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
.company-brand{margin-right:auto;display:flex;align-items:center}.company-brand img{height:48px;width:auto;max-width:min(350px,38vw);object-fit:contain}
.site-header nav{display:flex;align-items:center;gap:22px;font-size:14px;font-weight:700}.site-header nav a:hover{color:var(--purple)}
.nav-cta{background:var(--purple);color:white!important;padding:10px 18px;border-radius:3px}.nav-cta:hover{background:var(--purple-dark)}
.menu-button{display:none;border:1px solid var(--ink);background:white;padding:8px 12px}
.hero{min-height:calc(100vh - 78px);display:grid;grid-template-columns:1.03fr .97fr;background:var(--pale);overflow:hidden}
.hero-copy{padding:clamp(64px,8vw,126px) clamp(24px,7vw,110px);display:flex;flex-direction:column;justify-content:center;position:relative}.hero-copy:before{content:"萌黄";position:absolute;right:-15px;bottom:-35px;color:rgba(134,189,18,.1);font:700 clamp(120px,20vw,300px)/1 "Shippori Mincho",serif;pointer-events:none}.hero-copy>*{position:relative}
.eyebrow{margin:0;color:var(--purple);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
h1,h2,h3,p{margin-top:0}.hero h1{font-size:clamp(42px,4.6vw,72px);line-height:1.28;letter-spacing:-.05em;margin:20px 0 26px}.hero h1 span{color:var(--purple);white-space:nowrap}
.hero-lead{max-width:700px;font-size:clamp(17px,1.4vw,20px);color:#4c4252}
.hero-actions{display:flex;gap:12px;margin:30px 0 22px}.button{min-height:52px;padding:0 24px;border:1px solid var(--ink);display:inline-flex;align-items:center;justify-content:center;font-weight:800;border-radius:3px;transition:.2s}.button-primary{background:var(--ink);color:white}.button-primary:hover{background:var(--purple);border-color:var(--purple)}.button-secondary{background:white}.button-secondary:hover{border-color:var(--green)}
.hero-points{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0}.hero-points li{font-size:13px;background:white;border:1px solid var(--line);padding:7px 12px}
.hero-visual{position:relative;background:var(--ink);min-height:580px}.hero-visual:after{content:"";position:absolute;width:42%;aspect-ratio:1;background:var(--green);right:-13%;top:-10%;transform:rotate(45deg);opacity:.9}.screen-panel{position:absolute;z-index:1;inset:14% 5% 9% 10%;margin:0;background:white;padding:18px;box-shadow:0 30px 70px rgba(0,0,0,.4);transform:rotate(-1deg)}.screen-panel img{width:100%;height:100%;object-fit:cover;object-position:top left}.screen-panel figcaption{position:absolute;right:18px;bottom:16px;background:var(--ink);color:white;padding:7px 13px;font-size:12px}.logo-panel{position:absolute;z-index:3;left:2%;top:5%;width:136px;background:white;padding:10px;box-shadow:0 14px 35px rgba(0,0,0,.3);transform:rotate(2deg)}
.problem-section,.screens-section,.pricing-section,.flow-section{padding:clamp(80px,9vw,140px) clamp(20px,7vw,108px)}
.section-heading{max-width:940px;margin-bottom:52px}.section-heading h2{font-size:clamp(34px,4.1vw,58px);line-height:1.35;letter-spacing:-.04em;margin:12px 0 18px}.section-heading>p:last-child{font-size:18px;color:var(--muted)}
.problem-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.problem-grid article{padding:36px;border-right:1px solid var(--line)}.problem-grid article:last-child{border-right:0}.problem-grid span{font:700 13px/1 "Shippori Mincho",serif;color:var(--purple)}.problem-grid h3{font-size:24px;margin:14px 0 10px}.problem-grid p{color:var(--muted);margin:0}
.features-section,.plans-section{background:var(--ink);color:white;padding:clamp(80px,9vw,140px) clamp(20px,7vw,108px)}.light-heading .eyebrow{color:var(--lime)}.light-heading{max-width:980px}.feature-list{border-top:1px solid rgba(255,255,255,.2)}.feature-list article{display:grid;grid-template-columns:90px 1fr;gap:28px;padding:30px 0;border-bottom:1px solid rgba(255,255,255,.2)}.feature-list strong{font:700 30px "Shippori Mincho",serif;color:var(--lime)}.feature-list h3{font-size:24px;margin:0 0 7px}.feature-list p{margin:0;color:#ddd5e3;max-width:950px}
.screen-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.gallery-item{position:relative;border:0;padding:0;background:#eeeaf1;cursor:zoom-in;overflow:hidden;text-align:left;min-height:320px}.gallery-item img{width:100%;height:100%;object-fit:cover;object-position:top left;transition:.35s}.gallery-item:hover img{transform:scale(1.025)}.gallery-item span{position:absolute;left:0;bottom:0;background:rgba(33,21,47,.94);color:white;padding:10px 16px;font-weight:700}.gallery-wide{grid-column:1/-1;aspect-ratio:16/7}
.plan-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.plan-grid article{border:1px solid rgba(255,255,255,.25);padding:clamp(28px,4vw,48px)}.plan-label{font:700 14px "Shippori Mincho",serif;letter-spacing:.14em;color:var(--lime)}.plan-grid h3{font-size:30px;margin:5px 0 14px}.plan-grid article>p:not(.plan-label),.plan-grid li{color:#ddd5e3}.plan-grid ul{padding-left:1.3em}.plan-note{margin:25px 0 0;color:#bdb4c5}
.price-table-wrap{overflow:auto;border:1px solid var(--line)}table{width:100%;border-collapse:collapse;min-width:620px}th,td{padding:18px 20px;border-bottom:1px solid var(--line);text-align:right}thead th{background:var(--purple);color:white}thead th:first-child,tbody th{text-align:left}tbody th{background:var(--pale)}tbody tr:last-child th,tbody tr:last-child td{border-bottom:0}.price-details{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:28px}.price-details article{background:var(--paper);padding:28px;border-top:4px solid var(--green)}.price-details h3{font-size:22px}.price-details dl{margin:0}.price-details dl div{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:13px 0}.price-details dt{color:var(--muted)}.price-details dd{margin:0;font-weight:800;white-space:nowrap}.price-notes{margin:24px 0 0;padding-left:1.4em;color:var(--muted);font-size:14px}
.flow-section{background:var(--pale)}.flow-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.flow-list li{padding:28px;border-right:1px solid var(--line)}.flow-list li:last-child{border-right:0}.flow-list span{display:grid;place-items:center;width:45px;height:45px;border-radius:50%;background:var(--purple);color:white;font-weight:800}.flow-list h3{font-size:21px;margin:20px 0 8px}.flow-list p{color:var(--muted);margin:0;font-size:14px}
.cta-section{background:var(--purple);color:white;padding:clamp(64px,8vw,110px) clamp(20px,8vw,130px);display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(40px,7vw,100px);align-items:center}.cta-section .eyebrow{color:var(--lime)}.cta-section h2{font-size:clamp(34px,4vw,56px);line-height:1.35;margin:12px 0 18px}.cta-section p{max-width:760px}.cta-actions{display:flex;flex-direction:column;align-items:flex-start}.button-light{background:white;border-color:white;color:var(--ink)}.phone-link{font:700 clamp(28px,4vw,46px) "Shippori Mincho",serif;margin-top:18px}.cta-actions small{opacity:.85}
footer{background:#12091c;color:#d8d1dd;padding:50px clamp(20px,7vw,108px);display:grid;grid-template-columns:1.3fr 1fr;gap:45px;font-size:13px}.footer-brand img{height:52px;width:auto;max-width:100%;background:white;padding:8px 12px;margin-bottom:18px}.footer-links{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.footer-links a:hover{color:white}.copyright{grid-column:1/-1;border-top:1px solid #40344a;padding-top:20px;margin:0}
.image-dialog{width:min(1180px,94vw);max-height:92vh;border:0;padding:18px;background:white;box-shadow:0 30px 100px rgba(0,0,0,.5)}.image-dialog::backdrop{background:rgba(18,9,28,.86)}.image-dialog img{max-height:78vh;margin:auto}.image-dialog p{text-align:center;margin:12px 0 0;font-weight:800}.dialog-close{position:absolute;right:8px;top:4px;width:42px;height:42px;border:0;background:var(--ink);color:white;font-size:28px;line-height:1;cursor:pointer}
@media(max-width:1050px){.site-header nav{display:none}.menu-button{display:block}.site-header.open nav{display:flex;position:absolute;top:78px;left:0;right:0;background:white;flex-direction:column;align-items:stretch;padding:20px;border-bottom:1px solid var(--line)}.site-header.open nav a{padding:8px}.hero{grid-template-columns:1fr}.hero-visual{min-height:560px}.problem-grid,.plan-grid,.price-details,.flow-list{grid-template-columns:1fr}.problem-grid article,.flow-list li{border-right:0;border-bottom:1px solid var(--line)}.problem-grid article:last-child,.flow-list li:last-child{border-bottom:0}.cta-section{grid-template-columns:1fr}}
@media(max-width:680px){.site-header{height:68px}.company-brand img{height:38px;max-width:66vw}.site-header.open nav{top:68px}.hero-copy{padding:64px 20px}.hero h1{font-size:42px}.hero-actions{flex-direction:column}.hero-visual{min-height:430px}.screen-panel{inset:17% 3% 6% 6%;padding:9px}.logo-panel{width:92px}.problem-section,.screens-section,.pricing-section,.flow-section,.features-section,.plans-section{padding:72px 20px}.section-heading h2{font-size:35px}.section-heading>p:last-child{font-size:16px}.feature-list article{grid-template-columns:54px 1fr;gap:14px}.feature-list strong{font-size:22px}.feature-list h3{font-size:21px}.screen-gallery{grid-template-columns:1fr}.gallery-wide{grid-column:auto;aspect-ratio:auto}.gallery-item{min-height:220px}.price-details dl div{display:block}.price-details dd{margin-top:3px}.cta-section{padding:70px 20px}footer{grid-template-columns:1fr;padding:45px 20px}.copyright{grid-column:auto}}
