:root{--navy:#0e1c36;--navy-2:#15294f;--blue:#1556a8;--blue-light:#2f7fe0;--sky:#eaf2fc;--accent:#f5a623;--accent-dark:#e08900;--text:#1f2a3c;--muted:#5b6b80;--white:#fff;--radius:16px;--shadow:0 8px 30px rgba(14,28,54,.10);--font-jp:"Noto Sans JP" , "Hiragino Kaku Gothic ProN" , "Yu Gothic" , sans-serif;--font-en:"Outfit" , "Noto Sans JP" , sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{font-family: var(--font-jp);font-size:17px;color:var(--text);background:var(--white);line-height:1.8;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}ul,ol{list-style:none}.container{max-width:1080px;margin:0 auto;padding:0 24px}.btn{display:inline-block;padding:16px 40px;border-radius:999px;font-weight:700;font-size:18px;transition:transform .2s ease , box-shadow .2s ease , background .2s ease}.btn-primary{background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:var(--navy);box-shadow:0 6px 20px rgba(245,166,35,.4)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(245,166,35,.55)}.btn-ghost{border:2px solid rgba(255,255,255,.5);color:var(--white)}.btn-ghost:hover{background:rgba(255,255,255,.12)}.btn-block{display:block;text-align:center;margin-top:28px}.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid rgba(14,28,54,.08)}.header-inner{display:flex;align-items:center;justify-content:space-between;height:68px}.header-logo img{width:180px;height:auto}.header-nav{display:flex;align-items:center;gap:28px;font-size:15px;font-weight:500}.header-nav a{white-space:nowrap}.header-nav a:not(.nav-cta):hover {color:var(--blue)}.nav-cta{background:var(--blue);color:var(--white);padding:9px 22px;border-radius:999px;font-weight:700;transition:background .2s ease}.nav-cta:hover{background:var(--blue-light)}.hero{position:relative;overflow:hidden;background:linear-gradient(150deg,var(--navy) 0%,var(--navy-2) 40%,var(--blue) 75%,var(--navy-2) 100%);background-size:220% 220%;color:var(--white);padding:110px 0 100px;animation:heroGradient 12s ease-in-out infinite alternate}@keyframes heroGradient {
  0%   { background-position: 0% 0%; }
  100% { background-position: 100% 100%; }
}.hero-bg{position:absolute;inset:0;background:radial-gradient(circle at 85% 15%,rgba(47,127,224,.35) 0%,transparent 45%) , radial-gradient(circle at 8% 90%,rgba(21,86,168,.45) 0%,transparent 40%);pointer-events:none;overflow:hidden}.orb{position:absolute;border-radius:50%;filter:blur(40px);opacity:.85;will-change:transform;animation:orbFloat 9s ease-in-out infinite alternate}.orb-1{width:520px;height:520px;top:-120px;right:-80px;background:radial-gradient(circle,rgba(47,127,224,.85),transparent 70%)}.orb-2{width:460px;height:460px;bottom:-140px;left:-100px;background:radial-gradient(circle,rgba(33,110,205,.9),transparent 70%);animation-duration:12s;animation-delay:-4s}.orb-3{width:340px;height:340px;top:30%;left:55%;background:radial-gradient(circle,rgba(245,166,35,.45),transparent 70%);animation-duration:14s;animation-delay:-8s}@keyframes orbFloat {
  0%   { transform: translate(0, 0) scale(1); }
  50%  { transform: translate(-140px, 90px) scale(1.25); }
  100% { transform: translate(120px, -110px) scale(0.9); }
}.particle{position:absolute;bottom:-14px;width:8px;height:8px;border-radius:50%;background:rgba(190,218,250,.95);box-shadow:0 0 12px 3px rgba(120,175,240,.7);opacity:0;will-change:transform , opacity;animation:rise 9s linear infinite}.particle:nth-of-type(4)  {left:6%;animation-duration:10s;animation-delay:0s;width:7px;height:7px}.particle:nth-of-type(5)  {left:14%;animation-duration:8s;animation-delay:2s}.particle:nth-of-type(6)  {left:24%;animation-duration:11s;animation-delay:4s;width:6px;height:6px}.particle:nth-of-type(7)  {left:33%;animation-duration:9s;animation-delay:1s}.particle:nth-of-type(8)  {left:45%;animation-duration:12s;animation-delay:5.5s;width:10px;height:10px;background:rgba(245,186,80,.9);box-shadow:0 0 14px 4px rgba(245,166,35,.6)}.particle:nth-of-type(9)  {left:55%;animation-duration:9s;animation-delay:3s}.particle:nth-of-type(10) {left:64%;animation-duration:10s;animation-delay:6.5s;width:6px;height:6px}.particle:nth-of-type(11) {left:73%;animation-duration:8s;animation-delay:1.5s}.particle:nth-of-type(12) {left:81%;animation-duration:11s;animation-delay:4.5s;width:8px;height:8px;background:rgba(245,186,80,.85);box-shadow:0 0 14px 4px rgba(245,166,35,.55)}.particle:nth-of-type(13) {left:88%;animation-duration:9s;animation-delay:2.5s}.particle:nth-of-type(14) {left:94%;animation-duration:12s;animation-delay:6s;width:6px;height:6px}.particle:nth-of-type(15) {left:50%;animation-duration:10s;animation-delay:7.5s}@keyframes rise {
  0%   { transform: translateY(0); opacity: 0; }
  6%   { opacity: 1; }
  85%  { opacity: 0.6; }
  100% { transform: translateY(-720px); opacity: 0; }
}.hero-inner{position:relative;display:grid;grid-template-columns:1fr 400px;gap:56px;align-items:center}.hero-visual{text-align:center}.hero-photo{width:380px;height:380px;margin:0 auto;border-radius:50%;overflow:hidden;border:4px solid rgba(158,197,245,.6);box-shadow:0 0 0 12px rgba(255,255,255,.06) , 0 24px 60px rgba(0,0,0,.45);background:#e9edf3;animation:photoFloat 6s ease-in-out infinite alternate}.hero-photo img{width:100%;height:100%;object-fit:cover}@keyframes photoFloat {
  0%   { transform: translateY(0); }
  100% { transform: translateY(-16px); }
}.hero-photo-caption{margin-top:26px;font-size:15px;font-weight:700;color:#cfdef3}.hero-eyebrow{display:inline-block;font-size:16px;font-weight:700;letter-spacing:.18em;color:#9ec5f5;border:1px solid rgba(158,197,245,.45);border-radius:999px;padding:6px 20px;margin-bottom:28px}.hero-title{font-size:clamp(38px,6.2vw,64px);font-weight:900;line-height:1.35;letter-spacing:.02em;margin-bottom:24px}.hero-title em{font-style:normal;color:var(--accent)}.hero-title .kp{display:inline-block}.hero-lead{font-size:clamp(17px,2.2vw,20px);color:#cfdef3;margin-bottom:44px}.hero-lead strong{color:var(--white);font-weight:700}.hero-badges{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:48px}.hero-badges li{display:flex;align-items:baseline;gap:8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:14px 22px}.badge-num{font-family: var(--font-en);font-size:32px;font-weight:800;color:var(--accent);line-height:1}.badge-label{font-size:16px;font-weight:500;color:#dce8f7}.badge-label small{font-size:13px;color:#9db4d2}.hero-actions{display:flex;flex-wrap:wrap;gap:16px}.section{padding:96px 0}.section-eyebrow{font-family: var(--font-en);font-size:14px;font-weight:700;letter-spacing:.22em;color:var(--blue);margin-bottom:10px}.section-eyebrow.light{color:#8fc0f5}.section-title{font-size:clamp(28px,4.2vw,42px);font-weight:900;letter-spacing:.02em;line-height:1.4;margin-bottom:18px}.section-title.light{color:var(--white)}.section-lead{color:var(--muted);margin-bottom:56px;max-width:720px}.why{background:var(--sky)}.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.why-card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);padding:40px 30px;text-align:center}.why-stat{font-family: var(--font-en);font-size:56px;font-weight:800;color:var(--blue);line-height:1.1;margin-bottom:6px}.why-stat span{font-size:20px;font-family: var(--font-jp);font-weight:700}.why-card h3{font-size:19px;font-weight:700;margin-bottom:12px;color:var(--navy)}.why-card p:last-child{font-size:15.5px;color:var(--muted);text-align:left}.about-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.about-card{border:1px solid rgba(14,28,54,.10);border-radius:var(--radius);padding:34px 30px;transition:box-shadow .25s ease , transform .25s ease}.about-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.about-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;font-size:26px;background:var(--sky);border-radius:50%;margin-bottom:18px}.about-card h3{font-size:20px;font-weight:700;color:var(--navy);margin-bottom:10px}.about-card p{font-size:16px;color:var(--muted)}.about-card strong{color:var(--blue)}.about-note{margin-top:40px;background:var(--sky);border-radius:12px;padding:18px 26px;font-weight:700;color:var(--navy)}.flow{background:var(--navy);color:var(--white)}.flow .section-title{color:var(--white)}.flow .section-eyebrow{color:#8fc0f5}.flow .section-lead{color:#aebfd8}.flow-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;counter-reset:step}.flow-step{position:relative;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius);padding:28px 22px}.flow-step:not(:last-child)::after {content:"▶";position:absolute;right:-19px;top:50%;transform:translateY(-50%);color:var(--accent);font-size:13px;z-index:1}.flow-day{display:inline-block;font-family: var(--font-en);font-size:13px;font-weight:700;letter-spacing:.08em;color:var(--navy);background:var(--accent);border-radius:999px;padding:3px 14px;margin-bottom:16px}.flow-step h3{display:flex;align-items:center;gap:10px;font-size:17.5px;font-weight:700;margin-bottom:10px;line-height:1.5}.flow-num{flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-family: var(--font-en);font-size:14px;background:var(--blue);border-radius:50%}.flow-step p{font-size:15px;color:#aebfd8}.price{background:var(--sky)}.price-grid{display:grid;grid-template-columns:5fr 6fr;gap:32px;align-items:start}.price-card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);border-top:6px solid var(--accent);padding:40px 36px;text-align:center}.price-card-label{font-size:15.5px;font-weight:700;letter-spacing:.14em;color:var(--blue);margin-bottom:14px}.price-amount{font-family: var(--font-en);font-size:60px;font-weight:800;color:var(--navy);line-height:1.1}.price-yen{font-size:32px}.price-tax{font-size:15.5px;color:var(--muted);margin-bottom:26px}.price-includes{text-align:left;display:grid;gap:10px;max-width:280px;margin:0 auto}.price-includes li{position:relative;padding-left:30px;font-weight:500}.price-includes li::before{content:"✓";position:absolute;left:0;top:0;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--white);background:var(--blue);border-radius:50%;margin-top:3px}.conditions{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);padding:40px 36px}.conditions-table{display:grid}.conditions-table>div{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:14px 4px;border-bottom:1px solid rgba(14,28,54,.08);font-size:16px}.conditions-table>div:last-child{border-bottom:none}.conditions-table dt{font-weight:700;color:var(--blue)}.conditions-table dd strong{color:var(--accent-dark)}.conditions-alert{margin-top:22px;background:#fff6e5;border:1px solid #f3d9a4;border-radius:10px;padding:14px 20px;font-size:15.5px;font-weight:700;color:#9a6400}.faq-list{display:grid;gap:16px;max-width:820px}.faq-item{border:1px solid rgba(14,28,54,.12);border-radius:12px;background:var(--white);overflow:hidden;transition:box-shadow .2s ease}.faq-item[open]{box-shadow:var(--shadow)}.faq-item summary{list-style:none;cursor:pointer;position:relative;padding:20px 56px 20px 60px;font-size:17px;font-weight:700;color:var(--navy)}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::before{content:"Q";position:absolute;left:20px;top:50%;transform:translateY(-50%);width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-family: var(--font-en);font-size:15px;color:var(--white);background:var(--blue);border-radius:50%}.faq-item summary::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);font-family: var(--font-en);font-size:24px;font-weight:600;color:var(--blue);transition:transform .2s ease}.faq-item[open] summary::after{content:"−"}.faq-item summary:hover{color:var(--blue)}.faq-item p{position:relative;padding:0 24px 22px 60px;font-size:16px;color:var(--muted)}.faq-item p::before{content:"A";position:absolute;left:20px;top:-2px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-family: var(--font-en);font-size:15px;color:var(--white);background:var(--accent);border-radius:50%}.contact{background:linear-gradient(150deg,var(--navy) 0%,var(--navy-2) 60%,var(--blue) 140%);color:var(--white);text-align:center}.contact .section-lead{color:#aebfd8}.contact-sub{font-size:18px;font-weight:700;color:var(--accent);margin-bottom:36px}.contact-summary{display:inline-grid;gap:8px;text-align:left;margin-bottom:48px;font-size:17px;color:#dce8f7}.contact-summary li::before{content:"✓ ";color:var(--accent);font-weight:700}.contact-summary strong{color:var(--white)}.contact-card{max-width:560px;margin:0 auto 26px;background:var(--white);color:var(--navy);border-radius:var(--radius);padding:44px 36px;box-shadow:0 16px 50px rgba(0,0,0,.35)}.contact-card-title{font-size:18px;font-weight:700;margin-bottom:14px}.contact-tel{display:block;font-family: var(--font-en);font-size:clamp(36px,5.2vw,48px);font-weight:800;color:var(--blue);line-height:1.2;margin-bottom:10px;transition:color .2s ease}.contact-tel:hover{color:var(--blue-light)}.contact-form-btn{display:block;max-width:360px;margin:18px auto 26px;text-align:center}.contact-form-steps{background:var(--sky);border-radius:12px;padding:20px 24px;text-align:left}.contact-steps-title{font-size:15px;font-weight:700;color:var(--blue);margin-bottom:10px}.contact-form-steps ol{list-style:none;counter-reset:formstep;display:grid;gap:10px}.contact-form-steps li{counter-increment:formstep;position:relative;padding-left:34px;font-size:15px;line-height:1.7}.contact-form-steps li::before{content:counter(formstep);position:absolute;left:0;top:2px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-family: var(--font-en);font-size:13px;font-weight:700;color:var(--white);background:var(--blue);border-radius:50%}.contact-form-steps strong{color:var(--accent-dark)}.contact-note{font-size:14.5px;color:#9db4d2}.site-footer{background:#0a1426;color:#8fa3c0;padding:56px 0 40px;text-align:center}.footer-logo{width:180px;margin:0 auto 28px;background:var(--white);padding:14px 22px;border-radius:12px}.footer-disclaimer{max-width:720px;margin:0 auto 28px;font-size:14px;line-height:2;text-align:left}.footer-copy{font-family: var(--font-en);font-size:13px;letter-spacing:.08em}@media (max-width:900px){.hero-inner{grid-template-columns:1fr;gap:48px}.hero-photo{width:300px;height:300px}.why-grid{grid-template-columns:1fr}.flow-steps{grid-template-columns:repeat(2,1fr)}.flow-step:nth-child(2)::after {display:none}.price-grid{grid-template-columns:1fr}}@media (max-width:820px){.header-nav a:not(.nav-cta) {display:none}}@media (max-width:640px){.pc{display:none}.section{padding:64px 0}.hero{padding:72px 0 64px}.about-grid{grid-template-columns:1fr}.flow-steps{grid-template-columns:1fr}.flow-step:not(:last-child)::after {content:"▼";right:auto;left:50%;top:auto;bottom:-20px;transform:translateX(-50%)}.hero-badges li{width:100%;justify-content:center}.conditions-table>div{grid-template-columns:92px 1fr;gap:10px}.price-card,.conditions,.contact-card{padding:32px 22px}}