@import "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800&family=Noto+Serif+JP:wght@600;700;900&display=swap";:root{color:#10213d;font-synthesis:none;--ink:#00113d;--navy:#001b57;--blue:#0558c9;--cyan:#17b9ed;--gold:#d6ab35;--gold-hi:#fff0a1;--paper:#f5f8fc;background:#fff;font-family:Noto Sans JP,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:68px}body{background:var(--paper);margin:0;line-height:1.75}button,input,textarea{font:inherit}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #f2c952}header{z-index:20;background:#000f35;border-bottom:1px solid #b88922;justify-content:space-between;align-items:center;height:68px;padding:0 max(24px,50vw - 590px);display:flex;position:relative}.brand{letter-spacing:.08em;color:#fff;font-family:Noto Serif JP,serif;font-size:17px;font-weight:700;text-decoration:none}.brand span{letter-spacing:.14em;color:#f0ca5d;margin-top:2px;font:600 8px/1.2 Noto Sans JP;display:block}.mini{color:#061642;background:linear-gradient(110deg,#e0b63c,#fff2a6 52%,#b77c0a);border:1px solid #ffe98a;border-radius:99px;padding:7px 19px;font-size:12px;font-weight:800;text-decoration:none;box-shadow:0 6px 18px #0008}.hero{color:#fff;isolation:isolate;background:radial-gradient(circle at 78% 28%,#0b99e5 0,#076ccc 20%,#03499f 39%,#01266e 62%,#000f3d 100%);border-bottom:3px solid #d9af38;position:relative;overflow:hidden}.hero:before,.hero:after{content:"";pointer-events:none;z-index:-1;position:absolute}.hero:before{border:1px solid #e3bb4a66;border-radius:50%;width:720px;height:720px;top:-270px;left:-380px;box-shadow:0 0 0 105px #0a6fd51a,0 0 0 210px #0b76df10}.hero:after{background:linear-gradient(90deg,#0000,#5ee7ff88 40%,#65dfff 65%,#0000);width:140%;height:2px;top:48%;left:-15%;transform:rotate(-51deg);box-shadow:170px 115px #248fe755,-220px -120px #287ed244}.heroGrid{z-index:-1;opacity:.28;background-image:radial-gradient(circle,#79e8ff 0 2px,#0000 2.5px),radial-gradient(circle,#f8d875 0 1px,#0000 2px);background-position:20px 10px,72px 45px;background-size:145px 145px,190px 190px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000,#000 25% 95%);mask-image:linear-gradient(90deg,#0000,#000 25% 95%)}.heroInner{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);align-items:center;gap:26px;width:min(1180px,100% - 48px);min-height:615px;margin:auto;padding:54px 0 34px;display:grid}.heroCopy{padding:18px 0}.eyebrow{color:#ffe57f;letter-spacing:.32em;align-items:center;gap:13px;font-size:11px;font-weight:800;display:flex}.eyebrow:before{content:"";background:#e5ba42;width:42px;height:1px}.heroPromise{letter-spacing:.13em;color:#fff;text-shadow:0 2px 12px #001;margin:18px 0 4px;font:600 clamp(17px,1.8vw,23px)/1.5 Noto Serif JP}.hero h1{letter-spacing:.02em;color:#fff;text-shadow:0 4px #00143e,0 10px 25px #000a;margin:0;font:900 clamp(47px,5.8vw,74px)/1.08 Noto Serif JP}.hero h1>span{color:#ffe174;letter-spacing:.18em;vertical-align:.37em;margin-right:.25em;font-size:.44em;display:inline-block}.hero h1 strong{font:inherit}.lead{letter-spacing:.06em;margin:15px 0 4px;font:700 clamp(19px,2vw,26px)/1.5 Noto Serif JP}.lead em{color:#e2b942;font-style:normal}.sub{color:#d8e9ff;text-shadow:0 1px 5px #001;margin:8px 0 20px;font-size:14px;line-height:1.75}.cta{color:#061642;background:linear-gradient(110deg,#d6a830,#fff0a0 47%,#d8ad39 65%,#ad7508);border:1px solid #fff0a0;border-radius:4px;justify-content:center;align-items:center;gap:28px;width:min(440px,100%);min-height:62px;font-weight:800;text-decoration:none;display:flex;box-shadow:0 15px 35px #0008,0 0 28px #ffe56b25,inset 0 1px #fff}.cta b{font-size:20px}.trust{gap:9px;margin-top:12px;display:flex}.trust span{color:#fff;background:#00144188;border:1px solid #d8b646aa;border-radius:99px;padding:3px 13px;font-size:10px}.trust span:before{content:"◇";color:#ffdc63;margin-right:5px}.heroVisual{align-self:end;place-items:end center;height:445px;display:grid;position:relative}.portraitHalo{background:radial-gradient(circle,#fff 0,#eaf4ff 65%,#bedfff 100%);border:2px solid #f0ce67;border-radius:50%;width:340px;height:340px;position:relative;overflow:hidden;box-shadow:0 0 0 14px #00317c99,0 0 0 15px #d6af4266,0 26px 55px #0009,0 0 75px #30c8ff3d}.portraitHalo:after{content:"";border-radius:50%;position:absolute;inset:0;box-shadow:inset 20px 0 40px #04499a26,inset -8px -10px 30px #001b5f2a}.portraitHalo img{object-fit:cover;object-position:center 15%;width:100%;height:100%;display:block;transform:scaleX(-1)scale(1.06)}.namePlate{text-align:right;background:linear-gradient(110deg,#00143f,#062f79);border:1px solid #ddb744;min-width:160px;padding:9px 19px 10px;position:absolute;bottom:18px;right:8px;box-shadow:0 9px 24px #0009}.namePlate small{color:#e4bd4e;letter-spacing:.2em;font-size:8px;display:block}.namePlate b{letter-spacing:.18em;color:#fff;font:700 21px Noto Serif JP}.focusBand{background:#000c31a6;border-top:1px solid #e2ba48;border-bottom:1px solid #e2ba48;grid-template-columns:repeat(4,1fr);width:min(1180px,100% - 48px);margin:0 auto 28px;display:grid;box-shadow:0 12px 30px #0004}.focusBand>div{border-right:1px solid #ffffff20;align-items:center;gap:11px;padding:14px 18px;display:flex}.focusBand>div:last-child{border-right:0}.focusBand small{color:#e5bd4c;font-size:10px}.focusBand b{letter-spacing:.04em;font:600 13px Noto Serif JP}.section{width:min(1080px,100% - 40px);margin:auto;padding:82px 0}.kicker{text-align:center;color:#b6861d;letter-spacing:.3em;font-size:10px;font-weight:800}h2{text-align:center;color:var(--navy);letter-spacing:.04em;margin:7px 0 31px;font:700 clamp(27px,4vw,39px)/1.45 Noto Serif JP}.intro{text-align:center;color:#64738a;margin:-15px auto 42px}.flow{color:#fff;background:radial-gradient(circle at 50% -20%,#087edc 0,#034392 40%,#00133e 100%);border-bottom:2px solid #d8af3d}.flow .section{padding:38px 0 42px}.flow h2{color:#fff;margin:2px 0 20px;font-size:28px}.gold{color:#e2bb4d}.steps{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.steps article{background:linear-gradient(145deg,#084da1cc,#001d5dde);border:1px solid #dbb64766;min-height:138px;padding:18px 19px;box-shadow:inset 0 1px #ffffff1f}.steps b{color:#e4bb4c;border-bottom:1px solid #d4a938;padding-bottom:3px;font:700 10px Noto Sans JP}.steps h3{color:#fff;margin:8px 0 5px;font:700 16px Noto Serif JP}.steps p{color:#cbd9ef;margin:0;font-size:11px;line-height:1.55}.booking{background:var(--paper);padding-bottom:115px}.booking:before{content:"";background:linear-gradient(90deg,#a5740d,#ffe88d,#a5740d);width:70px;height:3px;margin:0 auto 20px;display:block}.bookingBox,.complete{background:#fff;border:1px solid #d4ad38;max-width:900px;margin:auto;padding:42px;box-shadow:0 25px 65px #123a6819,0 0 0 5px #edf3fa}.bookingBox h3{color:var(--navy);margin:8px 0 20px;font:700 18px Noto Serif JP}.bookingBox h3 span{background:var(--navy);color:#fff;border-radius:50%;place-items:center;width:29px;height:29px;margin-right:7px;font:700 13px Noto Sans JP;display:inline-grid}.daystrip{scrollbar-width:thin;gap:8px;margin-bottom:30px;padding:5px 4px 20px;display:flex;overflow:auto}.daystrip button{color:#465a73;cursor:pointer;background:#fff;border:1px solid #d5dfeb;border-radius:5px;flex:0 0 72px;height:92px}.daystrip button b{color:var(--navy);font-size:24px;line-height:1.2;display:block}.daystrip button small,.daystrip button span{font-size:11px}.daystrip button.active,.times button.active{color:#fff;background:linear-gradient(145deg,#0759be,#001d5a);border-color:#cda331;box-shadow:0 6px 16px #063e8a33}.daystrip button.active b{color:#fff}.times{grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:38px;display:grid}.times button{color:#153e70;cursor:pointer;background:#f8fbfe;border:1px solid #c8d6e5;border-radius:4px;min-height:48px}.selected{border-left:3px solid var(--gold);background:#eff6fc;align-items:center;gap:14px;margin-bottom:26px;padding:14px 18px;font-size:13px;display:flex}.selected b{color:var(--navy);font-size:16px}.selected button{color:#315b8b;cursor:pointer;background:0 0;border:0;margin-left:auto;text-decoration:underline}.grid{grid-template-columns:1fr 1fr;gap:21px;display:grid}.grid label{color:#243b59;font-size:13px;font-weight:700}.grid em{color:#fff;background:#9e343b;margin-left:5px;padding:2px 6px;font-size:9px;font-style:normal}.grid label small{color:#789;font-weight:400}.grid input,.grid textarea{background:#fbfdff;border:1px solid #bdcada;border-radius:3px;width:100%;margin-top:6px;padding:12px 13px;display:block}.grid textarea{resize:vertical}.wide{grid-column:1/-1}.hp{position:absolute!important;left:-9999px!important}.submit{color:#fff;cursor:pointer;background:linear-gradient(115deg,#075bd0,#002a7b 60%,#001641);border:1px solid #d5ac32;border-radius:4px;width:min(480px,100%);min-height:60px;margin:32px auto 0;font-weight:800;display:block;box-shadow:0 11px 26px #1239663d}.submit:disabled{opacity:.65;cursor:wait}.error{color:#872a2a;background:#fff0f0;border-left:3px solid #b84545;margin:12px 0;padding:13px 15px;font-size:13px}.status{text-align:center;color:#63758b;padding:38px}.complete{text-align:center}.seal{color:#28724b;background:#eaf5ef;border-radius:50%;place-items:center;width:66px;height:66px;margin:auto;font-size:30px;display:grid}.complete h2{margin-bottom:8px}.complete dl{text-align:left;border:1px solid #dbe5ef;max-width:570px;margin:30px auto}.complete dt{color:#62738a;background:#f2f7fb;padding:9px 18px;font-size:12px}.complete dd{margin:0;padding:13px 18px;font-weight:700}.complete a{color:#0b4f9b}.note{color:#66758b;font-size:13px}footer{text-align:center;color:#fff;background:#000e32;border-top:2px solid #d3a82f;padding:48px 20px}footer .brand{display:inline-block}footer p{color:#b7c4d7;margin:20px;font:600 14px Noto Serif JP}footer>small{color:#8292a9;font-size:10px}@media (width<=940px) and (width>=761px){.heroInner{grid-template-columns:minmax(0,1fr) 330px;gap:20px}.hero h1{font-size:52px}.portraitHalo{width:330px;height:330px}.heroVisual{height:430px}.namePlate{right:-5px}.sub{font-size:12px}.focusBand b{font-size:11px}}@media (width<=760px){html{scroll-padding-top:60px}header{height:60px;padding:0 16px}.brand{font-size:14px}.brand span{font-size:7px}.mini{padding:6px 14px;font-size:11px}.heroInner{flex-direction:column;gap:0;width:100%;min-height:0;padding:40px 18px 12px;display:flex}.heroCopy{text-align:center;z-index:2;padding:0}.eyebrow{letter-spacing:.23em;justify-content:center;font-size:9px}.eyebrow:before{display:none}.heroPromise{margin:13px 0 4px;font-size:15px}.hero h1{font-size:clamp(41px,13vw,54px);line-height:1.1}.hero h1>span{margin:0 0 3px;font-size:.38em;display:block}.lead{margin-top:12px;font-size:18px}.lead em{display:block}.sub{margin:8px auto 17px;font-size:12px}.cta{gap:18px;min-height:58px;font-size:14px}.trust{flex-wrap:wrap;justify-content:center}.heroVisual{width:100%;height:315px;margin-top:15px}.portraitHalo{width:276px;height:276px;box-shadow:0 0 0 9px #00317c99,0 0 0 10px #d6af4266,0 20px 40px #0008}.namePlate{min-width:135px;padding:6px 12px;bottom:8px;right:calc(50% - 158px)}.namePlate b{font-size:17px}.namePlate small{font-size:6px}.focusBand{grid-template-columns:1fr 1fr;width:calc(100% - 24px);margin-bottom:18px}.focusBand>div{padding:10px 11px}.focusBand>div:nth-child(2){border-right:0}.focusBand>div:nth-child(-n+2){border-bottom:1px solid #ffffff20}.focusBand b{font-size:10px}.flow .section{width:100%;padding:35px 15px}.flow h2{font-size:24px}.steps{grid-template-columns:1fr 1fr}.steps article{min-height:126px;padding:16px}.section{width:min(100% - 30px,1080px);padding:68px 0}h2{margin-bottom:28px;font-size:27px}.booking{width:100%;padding:65px 15px 90px}.bookingBox,.complete{padding:25px 18px}.daystrip{margin-left:-4px;margin-right:-4px}.times{grid-template-columns:repeat(3,1fr)}.grid{grid-template-columns:1fr}.wide{grid-column:auto}.selected{flex-wrap:wrap;align-items:flex-start}.selected b{width:calc(100% - 75px)}.selected button{margin-left:0}.intro{font-size:13px}.booking>.intro{padding:0 10px}.booking h2{font-size:25px}}@media (width<=390px){.heroInner{padding-left:14px;padding-right:14px}.hero h1{font-size:40px}.portraitHalo{width:250px;height:250px}.heroVisual{height:285px}.namePlate{right:calc(50% - 145px)}.steps{grid-template-columns:1fr}.steps article{min-height:0}.times{grid-template-columns:1fr 1fr}.bookingBox{padding:22px 14px}}.visualHero{background:#00113f;border-bottom:3px solid #d9af38;width:100%;margin:0;overflow:hidden}.visualHero img{width:100%;height:auto;margin:0;display:block}.complete h2{white-space:nowrap;letter-spacing:0;font-size:clamp(22px,4vw,39px)}@media (width<=480px){.complete h2{font-size:clamp(20px,5.55vw,23px)}.complete>p{font-size:14px}.booking>h2{white-space:nowrap;letter-spacing:0;font-size:clamp(19px,5.35vw,22px)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
