:root{--blue:#1B8AD0;--blue-deep:#1273B6;--blue-dark:#0F5E96;--blue-soft:#EAF5FC;--blue-mist:#F3F9FD;--yellow:#FBB81C;--yellow-deep:#E2A006;--red:#DC4E2E;--red-deep:#C13C1F;--red-soft:#FBE5DE;--green:#6CBF45;--green-deep:#56A634;--green-soft:#E8F5DF;--paper:#FFFFFF;--ink:#2A2723;--ink-soft:#6E685F;--ink-faint:#A8A299;--line:#ECE7DF;--shadow-sm:0 6px 16px -8px rgba(20,40,60,.25);--shadow:0 22px 46px -22px rgba(20,40,60,.34);--shadow-lg:0 44px 88px -34px rgba(15,50,80,.45);--r-sm:16px;--r:24px;--r-lg:36px;--r-xl:52px;--maxw:1180px;--font-display:"Zen Maru Gothic","Hiragino Maru Gothic ProN",sans-serif;--font-body:"Zen Kaku Gothic New","Hiragino Sans",sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);color:var(--ink);background:var(--paper);line-height:1.8;letter-spacing:.01em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}img{display:block;max-width:100%}button{font-family:inherit;cursor:pointer;border:none;background:none}a{color:inherit;text-decoration:none}.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding-inline:clamp(20px,5vw,40px)}h1,h2,h3{font-family:var(--font-display);line-height:1.32;margin:0;font-weight:700;letter-spacing:.01em;text-wrap:balance}.btn{display:inline-flex;align-items:center;gap:.55em;font-family:var(--font-display);font-weight:700;padding:clamp(15px,1.7vw,20px) clamp(28px,3.2vw,42px);border-radius:999px;font-size:clamp(16px,1.6vw,20px);white-space:nowrap;transition:transform .16s cubic-bezier(.34,1.56,.64,1),box-shadow .16s,background .16s,color .16s}.btn-yellow{background:var(--yellow);color:#3a2c05;box-shadow:0 11px 0 -2px var(--yellow-deep),var(--shadow)}.btn-yellow:hover{transform:translateY(-3px);box-shadow:0 14px 0 -2px var(--yellow-deep),var(--shadow)}.btn-yellow:active{transform:translateY(4px);box-shadow:0 4px 0 -2px var(--yellow-deep),var(--shadow-sm)}.btn-ghost{background:var(--paper);color:var(--blue);box-shadow:inset 0 0 0 2.5px var(--blue)}.btn-ghost:hover{transform:translateY(-3px);box-shadow:inset 0 0 0 2.5px var(--blue),var(--shadow-sm)}.btn-onblue{background:#ffffff1f;color:#fff;box-shadow:inset 0 0 0 2px #ffffffb3}.btn-onblue:hover{background:#fff3;transform:translateY(-3px)}.btn-sm{padding:11px 22px;font-size:clamp(14px,1.4vw,16px);box-shadow:inset 0 0 0 2.5px var(--blue)}.eyebrow{display:inline-flex;align-items:center;gap:.5em;white-space:nowrap;font-family:var(--font-display);font-weight:700;font-size:clamp(13px,1.3vw,15px);padding:.55em 1.15em;border-radius:999px;letter-spacing:.06em;color:var(--blue-deep);background:var(--blue-soft)}.eyebrow.red{color:var(--red-deep);background:var(--red-soft)}.eyebrow.yellow{color:#8a6300;background:#fdefc8}.eyebrow.green{color:var(--green-deep);background:var(--green-soft)}.eyebrow.on-blue{color:#fff;background:#ffffff29}@keyframes float-y{0%,to{transform:translateY(0)}50%{transform:translateY(-16px)}}@keyframes sway{0%,to{transform:rotate(-2.5deg)}50%{transform:rotate(2.5deg)}}.mascot-float{animation:float-y calc(4.2s / var(--tempo,1)) ease-in-out infinite}.mascot-sway{animation:sway calc(5s / var(--tempo,1)) ease-in-out infinite;transform-origin:50% 90%}@keyframes ttOpen{0%,93%{opacity:1}94%{opacity:0}96%{opacity:0}97%{opacity:1}to{opacity:1}}@keyframes ttClosed{0%,93%{opacity:0}94%{opacity:1}96%{opacity:1}97%{opacity:0}to{opacity:0}}.mascot-wrap .eye-open{animation:ttOpen calc(5s / var(--tempo,1)) infinite}.mascot-wrap .eye-closed{opacity:0;animation:ttClosed calc(5s / var(--tempo,1)) infinite}@media (prefers-reduced-motion: reduce){.mascot-wrap .eye-open,.mascot-wrap .eye-closed{animation:none}.mascot-wrap .eye-closed{opacity:0}}@keyframes armWaveL{0%,to{transform:rotate(0)}50%{transform:rotate(-8deg)}}@keyframes armWaveR{0%,to{transform:rotate(0)}50%{transform:rotate(8deg)}}.mascot-wrap .arm-l{transform-box:fill-box;transform-origin:92% 84%;animation:armWaveL calc(3.6s / var(--tempo,1)) ease-in-out infinite}.mascot-wrap .arm-r{transform-box:fill-box;transform-origin:8% 84%;animation:armWaveR calc(3.6s / var(--tempo,1)) ease-in-out infinite}@keyframes chompC_L{0%,52%,to{transform:rotate(0)}62%{transform:rotate(-26deg)}71%{transform:rotate(-5deg)}80%{transform:rotate(-26deg)}90%{transform:rotate(0)}}@keyframes chompC_R{0%,52%,to{transform:rotate(0)}62%{transform:rotate(26deg)}71%{transform:rotate(5deg)}80%{transform:rotate(26deg)}90%{transform:rotate(0)}}@keyframes chompB_L{0%,52%,to{transform:rotate(0)}62%{transform:rotate(13deg)}71%{transform:rotate(2deg)}80%{transform:rotate(13deg)}90%{transform:rotate(0)}}@keyframes chompB_R{0%,52%,to{transform:rotate(0)}62%{transform:rotate(-13deg)}71%{transform:rotate(-2deg)}80%{transform:rotate(-13deg)}90%{transform:rotate(0)}}.mascot-wrap .claw-c-l{transform-box:view-box;transform-origin:113px 354px;animation:chompC_L calc(2.6s / var(--tempo,1)) ease-in-out infinite}.mascot-wrap .claw-c-r{transform-box:view-box;transform-origin:482px 354px;animation:chompC_R calc(2.6s / var(--tempo,1)) ease-in-out infinite}.mascot-wrap .claw-b-l{transform-box:view-box;transform-origin:96px 366px;animation:chompB_L calc(2.6s / var(--tempo,1)) ease-in-out infinite}.mascot-wrap .claw-b-r{transform-box:view-box;transform-origin:499px 366px;animation:chompB_R calc(2.6s / var(--tempo,1)) ease-in-out infinite}@media (prefers-reduced-motion: reduce){.mascot-wrap .arm-l,.mascot-wrap .arm-r,.mascot-wrap .claw-c-l,.mascot-wrap .claw-c-r,.mascot-wrap .claw-b-l,.mascot-wrap .claw-b-r{animation:none}}.reveal{opacity:1}@media (prefers-reduced-motion: reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important}}.dots{background-image:radial-gradient(rgba(255,255,255,.16) 2.2px,transparent 2.3px);background-size:26px 26px}.phone{position:relative;filter:drop-shadow(0 40px 60px rgba(15,50,80,.34))}.phone img{width:100%;height:auto}.bubble{position:relative;background:#fff;color:var(--ink);font-family:var(--font-display);font-weight:700;padding:.7em 1.2em;border-radius:18px;box-shadow:var(--shadow-sm);display:inline-block}.bubble:after{content:"";position:absolute;bottom:-12px;left:50%;transform:translate(-50%);border:9px solid transparent;border-top-color:#fff;border-bottom:0}.section{position:relative;padding-block:clamp(70px,9vw,128px)}.tt-shot{line-height:0}.tt-shot img{width:100%;height:auto;display:block;filter:drop-shadow(-16px 4px 20px rgba(15,50,80,.18)) drop-shadow(16px 4px 20px rgba(15,50,80,.18)) drop-shadow(0 -12px 18px rgba(15,50,80,.14))}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:.7em 2.4em}.footer-links a,.footer-links span{font-family:var(--font-display);font-weight:700;font-size:clamp(13.5px,1.5vw,15px);color:#ede9e1;opacity:.82;transition:opacity .15s,color .15s;white-space:nowrap}.footer-links a:hover{opacity:1;color:var(--yellow)}.footer-links span{cursor:default}@media (max-width: 480px){.footer-links{grid-template-columns:1fr}}.datanote{background:var(--ink);color:#ede9e1;padding:clamp(40px,6vw,64px) 0 0}.datanote-inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,52px);align-items:start;padding-bottom:clamp(36px,5vw,52px);border-bottom:1px solid rgba(255,255,255,.12)}.datanote-lead h3{font-size:clamp(18px,2.2vw,24px);line-height:1.5;margin:0 0 12px;color:#fff}.datanote-lead p{margin:0;color:#ede9e1a8;font-size:clamp(13px,1.45vw,15px);line-height:1.95}.datanote-sub{font-family:var(--font-display);font-weight:700;color:var(--yellow);font-size:clamp(12.5px,1.4vw,14px);letter-spacing:.05em;margin-bottom:14px}.datanote-chips{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-wrap:wrap;gap:9px}.datanote-chips li{font-family:var(--font-display);font-weight:700;color:#ede9e1;font-size:clamp(12.5px,1.4vw,14px);background:#ffffff1a;padding:.4em .9em;border-radius:999px;white-space:nowrap}.datanote-chips li.more{background:transparent;color:#ede9e180;font-weight:500;padding-left:.3em}.datanote-thanks{margin:0;color:#ede9e180;font-size:clamp(12px,1.35vw,13.5px);line-height:1.9}@media (max-width: 680px){.datanote-inner{grid-template-columns:1fr}}.datanote+footer{padding-top:clamp(32px,5vw,48px)!important}.hero2{position:relative;overflow:hidden;isolation:isolate;background:var(--hero-sky,#1d77b5);padding-top:clamp(40px,6vw,76px);padding-bottom:0}body.sky-day{--hero-sky:#1d77b5}body.sky-sunset{--hero-sky:linear-gradient(180deg,#ffb24d 0%,#f5805a 40%,#d4608a 74%,#9162ac 100%)}body.sky-night{--hero-sky:linear-gradient(180deg,#0b2350 0%,#143a72 64%,#1f5e92 100%)}body.sky-sunset .drift-cloud{filter:drop-shadow(0 8px 12px rgba(120,40,60,.18)) saturate(.85) brightness(1.04)}body.sky-night .drift-cloud{filter:drop-shadow(0 8px 12px rgba(0,10,30,.3)) brightness(.62) saturate(.7);opacity:.7!important}.sky-orb{position:absolute;z-index:0;border-radius:50%;display:none;pointer-events:none}body.sky-sunset .sky-orb.sun{display:block;right:14%;top:16%;width:clamp(70px,9vw,130px);aspect-ratio:1;background:radial-gradient(circle at 40% 38%,#ffe7a8,#ffd166 60%,#ffb24d);box-shadow:0 0 0 14px #ffdc9638,0 0 60px 18px #ffc87859}body.sky-night .sky-orb.moon{display:block;right:13%;top:13%;width:clamp(56px,7vw,100px);aspect-ratio:1;background:radial-gradient(circle at 64% 38%,#fdf6e3,#e8e0c4);box-shadow:0 0 36px 8px #f5f0d259}.sky-stars{position:absolute;top:0;right:0;bottom:30%;left:0;z-index:0;display:none;pointer-events:none;background-image:radial-gradient(1.5px 1.5px at 12% 18%,#fff,transparent),radial-gradient(1.5px 1.5px at 28% 42%,#fff,transparent),radial-gradient(2px 2px at 46% 22%,#fff,transparent),radial-gradient(1.5px 1.5px at 63% 36%,#fff,transparent),radial-gradient(1.5px 1.5px at 78% 14%,#fff,transparent),radial-gradient(2px 2px at 88% 40%,#fff,transparent),radial-gradient(1.5px 1.5px at 8% 54%,#fff,transparent),radial-gradient(1.5px 1.5px at 36% 12%,#fff,transparent),radial-gradient(1.5px 1.5px at 70% 52%,#fff,transparent);animation:twinkle calc(3s / var(--tempo,1)) ease-in-out infinite}body.sky-night .sky-stars{display:block}@keyframes twinkle{0%,to{opacity:.55}50%{opacity:1}}.clouds-layer{position:absolute;top:0;right:0;bottom:18%;left:0;z-index:0;pointer-events:none}.drift-cloud{position:absolute;left:0;height:auto;filter:drop-shadow(0 8px 12px rgba(8,40,65,.12));animation-name:cloud-drift;animation-timing-function:linear;animation-iteration-count:infinite;will-change:transform}@keyframes cloud-drift{0%{transform:translate(-22vw)}to{transform:translate(122vw)}}.hero2-content{position:relative;z-index:3;text-align:center;display:flex;flex-direction:column;align-items:center}.hero2-eyebrow{display:inline-flex;align-items:center;gap:.5em;white-space:nowrap;font-family:var(--font-display);font-weight:700;color:#fff;font-size:clamp(13px,1.5vw,17px);letter-spacing:.04em;background:#ffffff2e;padding:.5em 1.15em;border-radius:999px;margin-bottom:clamp(14px,1.8vw,22px);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.hero2-eyebrow svg{width:1.25em;height:1.25em}.hero2-title{font-family:var(--font-display);font-weight:700;color:#fff;line-height:1.32;font-size:clamp(30px,6.6vw,68px);letter-spacing:.02em;text-shadow:0 3px 0 rgba(10,55,90,.22);margin:0}.hero2-title .amari{color:var(--accent, var(--yellow))}.hero2-lead{color:#fff;font-family:var(--font-display);font-weight:700;font-size:clamp(15px,2vw,22px);margin:clamp(12px,1.8vw,18px) 0 0;letter-spacing:.02em;text-shadow:0 2px 0 rgba(10,55,90,.18)}.hero2-benes{list-style:none;margin:0 0 clamp(18px,2.4vw,26px);padding:0;display:flex;flex-wrap:wrap;gap:clamp(8px,1.2vw,12px);justify-content:center}.hero2-benes li{display:inline-flex;align-items:center;gap:.45em;font-family:var(--font-display);font-weight:700;color:#fff;font-size:clamp(12.5px,1.4vw,15px);background:#ffffff29;padding:.5em 1.05em;border-radius:999px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);white-space:nowrap}.hero2-benes li svg{color:var(--accent,var(--yellow));width:1.05em;height:1.05em}.btn-bus{font-family:var(--font-display);font-weight:700;color:#231815;background:var(--accent, var(--yellow));border-radius:999px;padding:clamp(13px,1.6vw,18px) clamp(26px,3vw,40px);font-size:clamp(15px,1.7vw,20px);display:inline-flex;align-items:center;gap:.4em;box-shadow:0 9px 0 -1px var(--accent-deep,#c38f2b),0 16px 24px -12px #0a284180;transition:transform .16s cubic-bezier(.34,1.56,.64,1),box-shadow .16s}.btn-bus:hover{transform:translateY(-3px);box-shadow:0 12px 0 -1px var(--accent-deep,#c38f2b),0 20px 28px -12px #0a284180}.btn-bus:active{transform:translateY(5px);box-shadow:0 3px 0 -1px var(--accent-deep,#c38f2b),0 8px 14px -10px #0a284180}.routebus-band{position:relative;width:100%;z-index:1;margin-top:clamp(14px,2vw,26px);margin-bottom:clamp(10px,1.6vw,18px);height:clamp(120px,15vw,180px);pointer-events:none;overflow:hidden}.routebus-line{position:absolute;left:-10%;width:120%;height:auto;top:50%;transform:translateY(-50%);display:block}.busx{position:absolute;top:0;left:0;height:100%;display:flex;align-items:center;animation:bus-run-ltr calc(var(--bdur) / var(--tempo,1)) linear infinite;animation-delay:var(--bdelay);will-change:transform}.busx.rtl{animation-name:bus-run-rtl}@keyframes bus-run-ltr{0%{transform:translate(-18vw)}to{transform:translate(118vw)}}@keyframes bus-run-rtl{0%{transform:translate(118vw)}to{transform:translate(-18vw)}}.bus-y{animation:bus-wave calc(var(--bdur) / var(--tempo,1)) linear infinite;animation-delay:var(--bdelay)}.busx.rtl .bus-y{animation-direction:reverse}@keyframes bus-wave{0%{transform:translateY(0)}12.5%{transform:translateY(-3.4vw)}25%{transform:translateY(0)}37.5%{transform:translateY(3.4vw)}50%{transform:translateY(0)}62.5%{transform:translateY(-3.4vw)}75%{transform:translateY(0)}87.5%{transform:translateY(3.4vw)}to{transform:translateY(0)}}.busveh{height:auto;display:block;filter:drop-shadow(0 6px 6px rgba(15,50,80,.18))}@keyframes bus-shake{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-1.4px) rotate(-.8deg)}50%{transform:translateY(1.2px) rotate(.6deg)}75%{transform:translateY(-.8px) rotate(.4deg)}}.bus-shake{animation:bus-shake calc(.28s / var(--tempo,1)) steps(2,end) infinite;transform-origin:50% 80%}@keyframes bus-squash{0%,to{transform:scale(1)}35%{transform:scale(.98,1.03)}70%{transform:scale(1.03,.96)}}.bus-squash{display:inline-block;transform-origin:50% 92%;animation:bus-squash calc(.9s / var(--tempo,1)) ease-in-out infinite}.hero2-stage{position:relative;z-index:2;margin-top:clamp(40px,7vw,120px)}.ground-layer{position:relative;z-index:1;line-height:0}.ground-img{width:100%;height:auto;display:block}.hero2-mascot{position:absolute;z-index:2;left:50%;bottom:4.5vw;transform:translate(-50%)}.flower{transform-box:fill-box;transform-origin:50% 96%;animation:flower-sway calc(3.6s / var(--tempo,1)) ease-in-out infinite}.flower:nth-of-type(2){animation-duration:calc(4.2s / var(--tempo,1));animation-delay:-.6s}.flower:nth-of-type(3){animation-duration:calc(3.2s / var(--tempo,1));animation-delay:-1.1s}.flower:nth-of-type(4){animation-duration:calc(4s / var(--tempo,1));animation-delay:-.3s}.flower:nth-of-type(5){animation-duration:calc(3.5s / var(--tempo,1));animation-delay:-.9s}.flower:nth-of-type(6){animation-duration:calc(4.4s / var(--tempo,1));animation-delay:-1.4s}@keyframes flower-sway{0%,to{transform:rotate(calc(-4deg * var(--sway,1))) scale(1)}25%{transform:rotate(0) scale(.95,1.09)}50%{transform:rotate(calc(4deg * var(--sway,1))) scale(1)}75%{transform:rotate(0) scale(1.06,.92)}}@media (prefers-reduced-motion: reduce){.drift-cloud,.bus-shake,.bus-squash,.flower{animation:none}}
