@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800;900&family=Inter:wght@300;400;500;600&family=Noto+Serif+JP:wght@300;400;700&display=swap";
:root{--indigo-deep:#0f0f2e;--indigo-mid:#1a1a3e;--indigo-light:#252550;--terra:#e85d3e;--terra-light:#f07a60;--sakura:#f5c6cb;--gold:#d4a853;--cream:#faf6f0;--cream-dark:#f0e8dc;--white:#fff;--text-main:#1d1d2b;--text-light:#4c4c5c;--text-muted:#848496;--bg-main:var(--cream);--bg-card:var(--white);--bg-accent:#e85d3e0a;--border-color:#0f0f2e1a;--border-light:#0f0f2e0d;--shadow-card:0 16px 40px #0f0f2e0f;--shadow-hover:0 20px 50px #0f0f2e1a;--shadow-sm:0 4px 12px #0f0f2e0a;--radius:16px;--radius-sm:8px;--transition:all .3s cubic-bezier(.4, 0, .2, 1);--navbar-h:80px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{background:var(--bg-main);color:var(--text-main);min-height:100vh;font-family:Inter,sans-serif;line-height:1.6;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}ul{list-style:none}h1,h2,h3,h4,h5{color:var(--indigo-deep);font-family:Outfit,sans-serif;font-weight:700;line-height:1.15}h1{font-size:clamp(2.5rem,6vw,5rem)}h2{font-size:clamp(2rem,4vw,3.2rem)}h3{font-size:clamp(1.3rem,2.5vw,1.8rem)}h4{font-size:1.2rem}p{color:var(--text-light);line-height:1.75}.label{letter-spacing:.15em;text-transform:uppercase;color:var(--terra);font-family:Outfit,sans-serif;font-size:.75rem;font-weight:600}.jp-accent{color:var(--terra);font-family:Noto Serif JP,serif}.container{max-width:1200px;margin:0 auto;padding:0 24px}.section{padding:100px 0}.section-header{text-align:center;margin-bottom:64px}.section-header h2{margin:12px 0 20px}.section-header p{max-width:560px;margin:0 auto;font-size:1.1rem}.btn{transition:var(--transition);cursor:pointer;white-space:nowrap;border:none;border-radius:50px;align-items:center;gap:10px;padding:14px 32px;font-family:Outfit,sans-serif;font-size:1rem;font-weight:600;display:inline-flex}.btn-primary{background:var(--terra);color:#fff;box-shadow:0 6px 20px #e85d3e40}.btn-primary:hover{background:var(--terra-light);transform:translateY(-2px);box-shadow:0 8px 24px #e85d3e59}.btn-outline{color:var(--indigo-deep);border:2px solid var(--border-color);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:0 0}.btn-outline:hover{border-color:var(--indigo-deep);background:#0f0f2e08;transform:translateY(-2px)}.btn-gold{background:var(--gold);color:#fff;box-shadow:0 6px 20px #d4a8534d}.btn-gold:hover{background:#e0b85c;transform:translateY(-2px);box-shadow:0 8px 24px #d4a85366}.card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius);transition:var(--transition);box-shadow:var(--shadow-sm);padding:32px}.card:hover{border-color:var(--border-color);box-shadow:var(--shadow-hover);transform:translateY(-4px)}.page-hero{min-height:60vh;padding-top:var(--navbar-h);align-items:center;display:flex;position:relative;overflow:hidden}.page-hero-bg{z-index:0;background-position:50%;background-size:cover;position:absolute;inset:0}.page-hero-bg:after{content:"";background:linear-gradient(#faf6f0b3 0%,#faf6f0f2 100%);position:absolute;inset:0}.page-hero-content{z-index:1;max-width:800px;position:relative}.grid-2{grid-template-columns:1fr 1fr;gap:32px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:32px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:24px;display:grid}.tag{border-radius:50px;padding:4px 14px;font-family:Outfit,sans-serif;font-size:.8rem;font-weight:600;display:inline-block}.tag-terra{color:var(--terra);background:#e85d3e1a;border:1px solid #e85d3e33}.tag-gold{color:var(--gold);background:#d4a8531a;border:1px solid #d4a85333}.tag-white{background:var(--bg-card);color:var(--text-main);border:1px solid var(--border-color)}.divider{background:var(--border-color);height:1px;margin:0}.camper-track{pointer-events:none;z-index:9000;width:100%;height:56px;position:fixed;bottom:0;left:0}.camper-road{border-top:2px solid var(--border-color);background:linear-gradient(#d0d0dc,#e0e0ea);width:100%;height:28px;position:absolute;bottom:0;left:0}.camper-road:before{content:"";background:repeating-linear-gradient(90deg,#fffc 0 40px,#0000 40px 80px);width:100%;height:2px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.camper-vehicle{filter:drop-shadow(0 4px 8px #00000026);font-size:36px;position:absolute;bottom:14px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--cream)}::-webkit-scrollbar-thumb{background:#d0d0dc;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--terra)}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:.7s both fadeUp}.stop-number{background:var(--terra);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-family:Outfit,sans-serif;font-size:.9rem;font-weight:700;display:flex}.blog-image-wrap{border-radius:var(--radius) var(--radius) 0 0;aspect-ratio:16/9;overflow:hidden}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{color:var(--text-main);font-family:Outfit,sans-serif;font-size:.9rem;font-weight:600}.form-group input,.form-group textarea,.form-group select{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-main);transition:var(--transition);outline:none;width:100%;padding:14px 18px;font-family:Inter,sans-serif;font-size:1rem}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--terra);box-shadow:0 0 0 3px #e85d3e1a}.form-group textarea{resize:vertical;min-height:140px}@media (max-width:900px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.section{padding:72px 0}}@media (max-width:640px){.section{padding:56px 0}.btn{padding:12px 24px;font-size:.95rem}}
.Navbar-module__nuAbfa__nav{z-index:8000;background:0 0;height:80px;transition:all .4s;position:fixed;top:0;left:0;right:0}.Navbar-module__nuAbfa__scrolled{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border-bottom:1px solid #0f0f2e0d;box-shadow:0 4px 30px #0000000d}.Navbar-module__nuAbfa__inner{justify-content:space-between;align-items:center;gap:32px;max-width:1200px;height:100%;margin:0 auto;padding:0 24px;display:flex}.Navbar-module__nuAbfa__logo{flex-shrink:0;align-items:center;gap:12px;text-decoration:none;transition:transform .2s;display:flex}.Navbar-module__nuAbfa__logo:hover{transform:scale(1.02)}.Navbar-module__nuAbfa__logo img{border-radius:12px}.Navbar-module__nuAbfa__logoText{flex-direction:column;line-height:1;display:flex}.Navbar-module__nuAbfa__logoBrand{color:var(--indigo-deep);letter-spacing:-.02em;font-family:Outfit,sans-serif;font-size:1.2rem;font-weight:800}.Navbar-module__nuAbfa__logoSub{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-top:2px;font-family:Outfit,sans-serif;font-size:.65rem;font-weight:500}.Navbar-module__nuAbfa__links{align-items:center;gap:8px;list-style:none;display:flex}.Navbar-module__nuAbfa__link{color:var(--text-light);white-space:nowrap;border-radius:8px;padding:8px 14px;font-family:Outfit,sans-serif;font-size:.95rem;font-weight:600;transition:all .25s}.Navbar-module__nuAbfa__link:hover{color:var(--indigo-deep);background:#0f0f2e0a}.Navbar-module__nuAbfa__burger{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;padding:8px;display:none}.Navbar-module__nuAbfa__burger span{background:var(--indigo-deep);border-radius:2px;width:24px;height:2px;transition:all .3s;display:block}@media (max-width:900px){.Navbar-module__nuAbfa__burger{display:flex}.Navbar-module__nuAbfa__links{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);opacity:0;background:#fffffffa;border-bottom:1px solid #0f0f2e14;flex-direction:column;gap:4px;padding:24px;transition:all .35s;position:fixed;top:80px;left:0;right:0;transform:translateY(-120%);box-shadow:0 10px 30px #0000000d}.Navbar-module__nuAbfa__links.Navbar-module__nuAbfa__open{opacity:1;transform:translateY(0)}.Navbar-module__nuAbfa__link{width:100%;padding:14px 16px;font-size:1.1rem}}
