:root{--bg:#fbfaf7;--band:#f0eee8;--ink:#23262b;--sub:#585d65;--line:#d9d6ce;--accent:#1f5a85;--accent-dk:#17466a;--wrap:1160px;--gut:24px}*,:before,:after{box-sizing:border-box}html{scroll-padding-top:72px}body{background:var(--bg);color:var(--ink);font-synthesis:none;-webkit-text-size-adjust:100%;margin:0;font-family:Zen Kaku Gothic New,system-ui,sans-serif;font-size:16px;line-height:1.75}img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3{text-wrap:balance;word-break:auto-phrase;margin:0;font-weight:700;line-height:1.4}p{text-wrap:pretty;margin:0}.wrap{max-width:var(--wrap);padding:0 var(--gut);margin:0 auto}.num{font-variant-numeric:tabular-nums}.btn{background:var(--accent);color:#fff;min-height:48px;font-weight:700;font:inherit;cursor:pointer;border:0;border-radius:4px;justify-content:center;align-items:center;padding:0 24px;font-weight:700;text-decoration:none;transition:background .2s;display:inline-flex}.btn:hover{background:var(--accent-dk)}.btn:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #e0a43a}.link{color:var(--accent);text-underline-offset:3px}.small{color:var(--sub);font-size:14px}.small.book{margin-top:8px}.hd{z-index:20;backdrop-filter:saturate(1.2);border-bottom:1px solid var(--line);background:#fbfaf7f0;position:fixed;inset:0 0 auto}.hd .wrap{align-items:center;gap:20px;height:64px;display:flex}.hd .name{margin-right:auto;font-weight:700;line-height:1.3;text-decoration:none}.hd .name span{color:var(--sub);font-size:12px;font-weight:400;display:block}.hd .tel{font-weight:700;text-decoration:none}.hd .btn{min-height:44px;padding:0 18px}.fv{grid-template-columns:minmax(0,1fr) minmax(0,520px);min-height:100svh;padding-top:64px;display:grid}.fv-text{padding:48px 40px 48px max(var(--gut),calc((100vw - var(--wrap))/2 + var(--gut)));background:linear-gradient(90deg,#fbfaf7f0 0%,#fbfaf7e0 48%,#fbfaf759 78%,#fbfaf700 100%),var(--bg) url(/img/hero-line.webp) right center/cover no-repeat;flex-direction:column;justify-content:center;display:flex}.fv-text .kicker{color:var(--sub);margin-bottom:20px;font-size:15px}.fv-text h1{letter-spacing:.02em;font-size:clamp(28px,3.1vw,42px)}.ib{display:inline-block}.vh{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.fv-text .lead{max-width:20em;font-size:clamp(22px,2.3vw,30px);font-weight:700;line-height:1.6}.fv-text .lead b{font-size:1.15em}.fv-text .safe{color:var(--sub);border-left:2px solid var(--accent);max-width:34em;margin-top:16px;padding-left:14px;font-size:15px}.fv-cta{flex-wrap:wrap;align-items:center;gap:20px 28px;margin-top:36px;display:flex}.fv-note{margin-top:28px}.cols{background:var(--band);grid-template-columns:1fr 1fr;gap:16px;height:calc(100svh - 64px);padding:0 16px;display:grid;position:relative;overflow:hidden}.col{flex-direction:column;gap:16px;display:flex}.col img{aspect-ratio:390/760;object-fit:cover;object-position:top;width:100%}.pause{z-index:2;color:var(--ink);border:1px solid var(--line);font:inherit;cursor:pointer;background:#fff;border-radius:4px;padding:6px 12px;font-size:14px;position:absolute;bottom:12px;right:12px}@media (prefers-reduced-motion:no-preference){.col{animation:70s linear infinite up}.col.rev{animation-name:down}.ticker-in{animation:50s linear infinite left}.strip-in{animation:90s linear infinite left}.moving-off .col,.moving-off .ticker-in,.moving-off .strip-in{animation-play-state:paused}}@keyframes up{0%{transform:translateY(0)}to{transform:translateY(calc(-50% - 8px))}}@keyframes down{0%{transform:translateY(calc(-50% - 8px))}to{transform:translateY(0)}}@keyframes left{0%{transform:translate(0)}to{transform:translate(-50%)}}.notice{border-block:1px solid var(--line);background:#fff}.notice p{padding:14px 0;font-weight:700}.ticker{white-space:nowrap;border-bottom:1px solid var(--line);color:var(--sub);font-size:15px;overflow:hidden}.ticker-in{padding:12px 0;display:inline-flex}.ticker-in span{padding:0 22px}section{scroll-margin-top:64px}.s-80{padding:80px 0}.s-120{padding:120px 0}.s-160{padding:160px 0 120px}.band{background:var(--band)}.h2{font-size:clamp(24px,2.6vw,32px)}.h2+p,.h2+.lead2{margin-top:20px}.shots{grid-template-columns:repeat(4,1fr);gap:40px 24px;margin-top:48px;display:grid}.shots a{text-decoration:none}.shots a:nth-child(-n+2){grid-column:span 2}.shots img{aspect-ratio:16/10;object-fit:cover;object-position:top;width:100%;box-shadow:0 1px 2px #23262b14}.shots p{margin-top:10px;font-size:15px}.more{flex-wrap:wrap;align-items:center;gap:16px 32px;margin-top:48px;display:flex}.plans{grid-template-columns:5fr 6fr;align-items:start;gap:24px;margin-top:40px;display:grid}.plan{border-radius:4px;padding:44px 40px}.plan-a{background:var(--accent);color:#fff}.plan-b{background:var(--band);grid-template-rows:auto auto 1fr;grid-template-columns:1fr 200px;gap:0 32px;display:grid}.plan-b>:not(.sheet-demo){grid-column:1}.plan h3{font-size:20px}.plan-yen{margin-top:16px;font-weight:700;line-height:1}.plan-yen .num{letter-spacing:-.01em;font-size:clamp(56px,6.4vw,84px)}.plan-yen span+span{margin-left:4px;font-size:22px}.plan-b .plan-yen .num{font-size:clamp(44px,4.6vw,60px)}.plan-note{margin-top:24px;font-size:15px}.plan-a .plan-note{color:#e3ebf2}.sheet-demo{grid-area:1/2/span 3;margin:0}.sheet-demo img{object-fit:cover;object-position:top;width:200px;max-height:260px;box-shadow:0 12px 28px -14px #23262b66}.sheet-demo figcaption{color:var(--sub);margin-top:12px;font-size:13px;line-height:1.6}.wp{color:var(--sub);margin-top:20px}.opt{margin-top:72px}.opt h3{font-size:18px}.opt dl{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;column-gap:48px;margin:16px 0 0;display:grid}.opt dl>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:12px 0;display:flex}.opt dt,.opt dd{margin:0}.opt dd{white-space:nowrap;font-weight:700}.opt dt small{color:var(--sub);font-size:13px;display:block}.strip{background:var(--bg);padding:40px 0;overflow:hidden}.strip-in{gap:20px;width:max-content;display:flex}.strip img{aspect-ratio:16/10;object-fit:cover;object-position:top;width:360px;box-shadow:0 1px 2px #23262b14}.span-sec{background:var(--accent);color:#fff;text-align:center;padding:96px 0}.span-big{justify-content:center;align-items:baseline;gap:12px;font-size:clamp(22px,2.6vw,32px);font-weight:700;line-height:1;display:flex}.span-big b{letter-spacing:-.02em;font-size:clamp(96px,12vw,160px)}.span-sec .small{color:#d5e1ec;margin-top:24px}.faq{grid-template-columns:4fr 8fr;align-items:start;gap:64px;display:grid}.faq-side{position:sticky;top:96px}.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{cursor:pointer;padding:20px 40px 20px 0;font-weight:700;list-style:none;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"";border-right:2px solid var(--sub);border-bottom:2px solid var(--sub);width:12px;height:12px;margin-top:-8px;transition:transform .25s ease-out;position:absolute;top:50%;right:8px;transform:rotate(45deg)}.faq details[open] summary:after{margin-top:-2px;transform:rotate(-135deg)}.faq details p{padding:0 0 24px}.contact{grid-template-columns:5fr 7fr;align-items:start;gap:64px;display:grid}.contact-h{font-size:clamp(30px,3.6vw,46px);line-height:1.35}.contact .tel-big{margin-top:28px;font-size:28px;font-weight:700;text-decoration:none;display:inline-block}form{background:#fff;border-radius:4px;gap:22px;padding:36px;display:grid}label,.lbl{margin-bottom:8px;font-weight:700;display:block}.req{color:#a2361f;margin-left:6px;font-size:13px;font-weight:400}.opt-tag{color:var(--sub);margin-left:6px;font-size:13px;font-weight:400}input[type=text],input[type=email],input[type=tel],textarea{width:100%;font:inherit;color:var(--ink);background:#fff;border:1px solid #a9a59c;border-radius:4px;padding:12px 14px;font-size:16px}textarea{resize:vertical;min-height:150px}::placeholder{color:#a19d95;opacity:1}fieldset{border:0;min-width:0;margin:0;padding:0}.choice{cursor:pointer;align-items:center;gap:10px;margin:0;padding:10px 0;font-weight:400;display:flex}.choice input{width:20px;height:20px;accent-color:var(--accent);margin:0}.hp-field{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.status{min-height:1.75em;font-weight:700}.status.ok{color:#1d6b3a}.status.ng{color:#a2361f}.ft{border-top:1px solid var(--line);padding:48px 0 120px}.ft .wrap{grid-template-columns:1fr 1fr;gap:32px;display:grid}.ft p{font-size:15px}.sp-bar{display:none}@media (prefers-reduced-motion:no-preference){.js .rv{opacity:0;transition:opacity .6s ease-out,transform .6s ease-out;transform:translateY(16px)}.js .rv.in{opacity:1;transform:none}}@media (width<=1024px){.plans{grid-template-columns:1fr}}@media (width<=768px){:root{--gut:16px}.hd .wrap{height:56px}.hd .tel,.hd .btn{display:none}.fv{grid-template-columns:1fr;min-height:auto;padding-top:56px}.fv-text{padding:40px var(--gut) 32px;background:linear-gradient(180deg,#fbfaf78c 0%,#fbfaf7e0 40%,#fbfaf7eb 100%),var(--bg) url(/img/hero-line-sp.webp) right top/auto 100% no-repeat}.fv-text .lead{font-size:19px}.cols{height:420px}.s-80{padding:56px 0}.s-120{padding:72px 0}.s-160{padding:96px 0 72px}.faq,.contact{grid-template-columns:1fr;gap:32px}.faq-side{position:static}.shots{grid-template-columns:1fr 1fr;gap:28px 14px}.shots a:nth-child(-n+2){grid-column:span 2}.plan{padding:32px 22px}.plan-b{grid-template-columns:1fr}.sheet-demo{grid-area:auto/1;align-items:flex-start;gap:16px;margin-top:24px;display:flex}.sheet-demo img{width:46%}.sheet-demo figcaption{margin-top:0}.opt dl{grid-template-columns:1fr}.strip{padding:24px 0}.strip img{width:240px}form{padding:22px 18px}.ft .wrap{grid-template-columns:1fr}.sp-bar{z-index:20;border-top:1px solid var(--line);padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:#fff;grid-template-columns:1fr;gap:8px;display:grid;position:fixed;inset:auto 0 0}.sp-bar a{border-radius:4px;justify-content:center;align-items:center;min-height:48px;font-weight:700;text-decoration:none;display:flex}.sp-bar .t{border:1px solid var(--accent);color:var(--accent)}.sp-bar .c{background:var(--accent);color:#fff}}
