:root{--green:#1e3d2a;--rust:#ad4f2a;--paper:#faf8f5;--ink:#2a2826;--muted:#6b6560}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}.portal{min-width:0;color:var(--ink);background:var(--paper);font:15px/1.7 "Hiragino Sans","Yu Gothic",sans-serif}.portal a{color:inherit}.header{position:sticky;z-index:20;top:0;height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,5.5vw,80px);border-bottom:1px solid #ebe6e0;background:rgba(250,248,245,.96);backdrop-filter:blur(12px)}.brand{display:flex;gap:14px;align-items:center;text-decoration:none}.mark{display:grid;width:48px;height:48px;place-items:center;border-radius:20px;background:#234e32}.mark img{width:24px;height:24px}.brand b,.brand small{display:block}.brand b{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:20px;line-height:1.25}.brand small{color:var(--green);font-size:9px;font-weight:700;letter-spacing:.12em}.header nav{display:flex;align-items:center;gap:28px;font-size:13px;font-weight:700}.header nav a{text-decoration:none}.header nav a:hover{color:var(--rust)}.header nav .official{padding:9px 16px;border-radius:6px;color:#fff;background:var(--green)}
.hero{position:relative;min-height:650px;display:grid;place-items:center;padding:90px 24px 130px;color:#fff;text-align:center;background:linear-gradient(rgba(29,38,31,.25),rgba(24,31,26,.52)),url('/images/portal/hero.jpg?v=20260923-2') center/cover}.hero-copy{max-width:860px}.eyebrow{margin:0 0 16px;font-size:13px;font-weight:700;letter-spacing:.16em}.hero h1{margin:0 0 24px;font:700 clamp(38px,5vw,64px)/1.2 "Yu Mincho","Hiragino Mincho ProN",serif;letter-spacing:.04em;text-shadow:0 2px 18px rgba(0,0,0,.25)}.hero-copy>p:last-child{margin:0;font-size:clamp(14px,1.5vw,18px)}.search{position:absolute;bottom:-55px;left:50%;width:min(1120px,calc(100% - 48px));transform:translateX(-50%);display:grid;grid-template-columns:repeat(3,1fr) auto;gap:16px;padding:24px;border-radius:12px;color:var(--ink);background:#fff;box-shadow:0 14px 36px rgba(44,38,33,.16);text-align:left}.search>div{display:flex;flex-direction:column;padding:8px 12px;border:1px solid #ebe6e0;border-radius:6px}.search small{color:var(--muted);font-size:11px}.search b{font-size:14px}.search button{padding:0 28px;border:0;border-radius:6px;color:#fff;background:var(--rust);font-weight:700;opacity:.58}.badge{display:inline-flex;width:max-content;padding:5px 12px;border:1px solid #d8a28c;border-radius:999px;color:#8f3d1f;background:#fff6f1;font-size:12px;font-weight:800;letter-spacing:.05em}.search>.badge{position:absolute;top:-14px;right:20px}
.prices,.section{padding:100px clamp(24px,6vw,88px)}.prices{padding-top:130px;background:#f0ece5}.heading{margin-bottom:40px}.center{text-align:center}.kicker{margin:0 0 8px;color:var(--rust);font-size:12px;font-weight:800;letter-spacing:.14em}.heading h2,.about h2,.bridge h2{margin:0 0 10px;font:700 clamp(28px,3.2vw,40px)/1.3 "Yu Mincho","Hiragino Mincho ProN",serif}.heading>p:last-child{margin:0;color:var(--muted)}.price-grid{max-width:820px;display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:auto}.price-card{position:relative;padding:30px;border:1px solid #ded8cf;border-radius:12px;background:#fff}.price-card.featured{border:2px solid var(--green)}.label{position:absolute;top:-13px;left:24px;padding:3px 12px;border-radius:999px;color:#fff;background:var(--green);font-size:11px;font-weight:700}.price-card h3{margin:0 0 4px;font-size:19px}.plan{margin:0;color:var(--muted);font-size:13px}.price{margin:14px 0 3px;color:var(--green)}.price b{font-size:34px;line-height:1}.price small{color:var(--muted)}.price-card>p:last-child{margin-bottom:0;color:var(--muted);font-size:13px}.disclaimer{max-width:1100px;margin:18px auto 0;color:var(--muted);font-size:11px;text-align:right}
.covered{position:relative;overflow:hidden}.activity-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.activity-grid article{padding:26px 14px;border:1px solid #ebe6e0;border-radius:8px;background:#fff;text-align:center}.activity-grid article>span{display:grid;width:58px;height:58px;place-items:center;margin:0 auto 14px;border-radius:50%;background:rgba(30,61,42,.08)}.activity-grid img{width:27px;height:27px}.activity-grid h3{margin:0 0 3px;font-size:15px}.activity-grid p{margin:0;color:var(--muted);font-size:11px}.cover{position:absolute;z-index:2;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:rgba(250,248,245,.67);backdrop-filter:blur(2px)}.cover p{margin:0;color:var(--green);font-weight:800}.area{background:#fff}.area-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.area-grid article{position:relative;min-height:240px;display:flex;align-items:flex-end;padding:20px;border-radius:9px;overflow:hidden;color:#fff;background-position:center;background-size:cover}.area-grid article:before{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(0,0,0,.66))}.area-grid h3{position:relative;margin:0;font-size:18px}
.about{position:relative;display:grid;grid-template-columns:minmax(320px,1fr) 1fr;gap:clamp(36px,6vw,84px);align-items:center;padding:90px clamp(24px,8vw,120px)}.about>img{width:100%;min-height:360px;border-radius:12px;object-fit:cover}.about>div:not(.cover) p{color:var(--muted)}.bridge{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:64px clamp(24px,8vw,120px);color:#fff;background:var(--green)}.bridge .kicker{color:#d9b8a9}.bridge h2{margin-bottom:8px}.bridge p{margin:0;color:#d9e3df}.bridge>a{flex:0 0 auto;padding:14px 20px;border:1px solid rgba(255,255,255,.35);border-radius:7px;color:#fff;text-decoration:none;font-weight:700}.bridge a span{margin-left:12px}footer{display:flex;align-items:center;justify-content:space-between;padding:30px clamp(24px,6vw,88px);color:#d9e3df;background:#1c241e}footer p{margin:0;font-weight:700}
@media(max-width:960px){.header{height:auto;min-height:78px;flex-wrap:wrap;gap:10px;padding-top:12px;padding-bottom:12px}.header nav{width:100%;gap:18px;overflow-x:auto}.search{grid-template-columns:repeat(3,1fr)}.search button{grid-column:1/-1;min-height:42px}.activity-grid{grid-template-columns:repeat(3,1fr)}.area-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.brand b{font-size:15px}.mark{width:42px;height:42px;border-radius:16px}.header nav{font-size:11px}.header nav .official{padding:6px 10px}.hero{min-height:560px;padding-bottom:180px}.hero-copy>p:last-child br{display:none}.search{bottom:-116px;grid-template-columns:1fr 1fr;padding:16px;gap:9px}.search>div:nth-child(3){grid-column:1/-1}.prices{padding-top:155px}.price-grid,.activity-grid,.area-grid,.about{grid-template-columns:1fr}.price-card{padding:25px}.activity-grid{gap:10px}.area-grid article{min-height:190px}.about>img{min-height:260px}.bridge,footer{flex-direction:column;align-items:flex-start}.bridge>a{width:100%;text-align:center}}
