:root{--black:#07090f;--navy:#101a2b;--gold:#c8a45e;--wine:#792238;--white:#fffaf2;--paper:#f5eee4;--ink:#1e1b18;--line:rgba(255,250,242,.16);--shadow:0 24px 70px rgba(0,0,0,.28)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--white);background:var(--black);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;line-height:1.8}img{display:block;width:100%}a{color:inherit;text-decoration:none}.site-header{position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:70px;padding:12px 18px;background:rgba(7,9,15,.92);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:11px}.brand span{display:grid;place-items:center;width:42px;height:42px;color:#080a0f;background:var(--gold);border-radius:50%;font-family:Georgia,serif;font-weight:700}.brand strong{display:block;font-family:"Hiragino Mincho ProN","Yu Mincho",serif;line-height:1.25}.brand small{display:block;color:#ead9b4;font-size:.72rem}.nav-toggle{display:grid;gap:5px;width:44px;height:44px;padding:11px;border:1px solid rgba(255,250,242,.28);border-radius:50%;background:transparent}.nav-toggle i{height:2px;background:var(--white)}.global-nav{display:none;position:absolute;inset:70px 0 auto;padding:8px 18px 20px;background:rgba(7,9,15,.98)}.global-nav.is-open{display:grid}.global-nav a{padding:13px 4px;border-bottom:1px solid rgba(255,250,242,.1);font-weight:700}.hero,.sub-hero{position:relative;min-height:100svh;display:grid;align-items:end;gap:28px;padding:108px 20px 42px;overflow:hidden;isolation:isolate}.hero-bg,.sub-hero:before{position:absolute;inset:0;z-index:-2;background:center/cover no-repeat url("../images/logo-sign.jpg");content:""}.sub-hero:before{background-image:url("../images/photo-016.webp")}.hero:after,.sub-hero:after{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(7,9,15,.08),rgba(7,9,15,.82)),linear-gradient(90deg,rgba(16,26,43,.84),rgba(121,34,56,.08));content:""}.hero-copy{width:min(100%,720px)}.eyebrow{margin:0 0 10px;color:var(--gold);font-size:.82rem;font-weight:700;letter-spacing:0}h1,h2,h3{margin:0;font-family:"Hiragino Mincho ProN","Yu Mincho",serif;line-height:1.34}h1{max-width:9.5em;font-size:2.42rem}h2{font-size:1.82rem}p{margin:0}.hero-copy>p,.sub-hero p,.section p{color:#ddd1c3}.hero-data{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:24px}.hero-data div{min-height:82px;padding:14px;background:rgba(255,250,242,.1);border:1px solid rgba(255,250,242,.18);border-radius:8px}.hero-data span{display:block;color:#cbbfaf;font-size:.8rem}.hero-data b{display:block;margin-top:4px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;margin-top:22px;padding:12px 22px;border-radius:999px;font-weight:700}.btn.gold{color:#07090f;background:var(--gold);box-shadow:0 14px 40px rgba(200,164,94,.26)}.btn.ghost{color:var(--white);background:rgba(255,250,242,.1);border:1px solid rgba(255,250,242,.34)}.hero-photo,.rounded,.price-grid img,.panel img{border:1px solid rgba(255,250,242,.18);border-radius:8px;box-shadow:var(--shadow);object-fit:cover}.hero-photo{display:none;aspect-ratio:4/3}.section{width:min(1120px,calc(100% - 40px));margin:0 auto;padding:72px 0}.section-head{margin-bottom:26px}.two-col{display:grid;gap:24px;align-items:center}.panel,.card,dl.job,.access dl,.faq details,.apply{background:var(--navy);border:1px solid rgba(255,250,242,.14);border-radius:8px;box-shadow:var(--shadow)}.panel{display:grid;gap:16px;padding:18px;background:linear-gradient(145deg,rgba(23,35,56,.95),rgba(121,34,56,.78))}.panel img{aspect-ratio:4/3}.cards{display:grid;gap:18px}.card{overflow:hidden}.card img{aspect-ratio:4/3;object-fit:cover}.card div{padding:20px}.price{background:var(--paper);color:var(--ink)}.price .section p{color:#6d6257}.price-grid{display:grid;gap:18px}.price-grid img{aspect-ratio:4/3}.price-list{display:grid;gap:12px}.price-list p{display:flex;justify-content:space-between;gap:18px;min-height:64px;padding:16px 18px;color:var(--ink);background:#fffaf2;border:1px solid #e4d8c7;border-radius:8px;font-weight:700}.price-list b{color:var(--wine);white-space:nowrap}.access{display:grid;gap:20px}.access dl,dl.job{padding:22px}.access dl div,dl.job div{display:grid;gap:4px;padding:14px 0;border-bottom:1px solid rgba(255,250,242,.12)}dt{color:#ead9b4;font-size:.85rem;font-weight:700}dd{margin:0;color:#f5ead9;font-weight:700}dd a{color:var(--gold);text-decoration:underline;text-underline-offset:4px}iframe{width:100%;min-height:360px;border:0;border-radius:8px}.faq{display:grid;gap:12px}.faq details{padding:18px}.faq summary{cursor:pointer;font-weight:700}.apply{display:grid;gap:22px;padding:28px;background:linear-gradient(145deg,rgba(23,35,56,.95),rgba(121,34,56,.78))}footer{display:grid;gap:14px;padding:34px 20px 96px;color:#e2d5c2;background:#050609;border-top:1px solid rgba(255,250,242,.12)}footer a{color:var(--gold);font-family:Georgia,serif;font-size:1.45rem;font-weight:700}.fixed-call{position:fixed;left:14px;right:14px;bottom:14px;z-index:60}.fixed-call a{display:flex;align-items:center;justify-content:center;min-height:54px;color:#07090f;background:var(--gold);border-radius:999px;box-shadow:0 14px 48px rgba(0,0,0,.35);font-weight:700}@media (min-width:760px){.site-header{padding:12px 34px}.nav-toggle{display:none}.global-nav{position:static;display:flex;gap:22px;padding:0;background:transparent}.global-nav a{padding:8px 0;border:0}.hero,.sub-hero{min-height:92svh;padding:130px max(48px,calc((100vw - 1120px)/2)) 72px}.hero{grid-template-columns:minmax(0,.95fr) minmax(360px,.78fr);align-items:center}.hero-photo{display:block}h1{font-size:4.35rem}h2{font-size:2.5rem}.section{padding:96px 0}.two-col,.access,.apply{grid-template-columns:1.08fr .92fr}.cards{grid-template-columns:repeat(2,1fr)}.card.wide{grid-column:1/-1;display:grid;grid-template-columns:1.25fr .75fr;align-items:center}.card.wide img{height:100%;min-height:420px}.price-grid{grid-template-columns:.82fr 1fr;align-items:stretch}.price-grid img{height:100%}footer{grid-template-columns:1fr auto;align-items:center;padding-left:max(40px,calc((100vw - 1120px)/2));padding-right:max(40px,calc((100vw - 1120px)/2));padding-bottom:38px}.fixed-call{left:auto;right:24px;bottom:24px;width:240px}}

.site-header{transition:min-height .35s ease,padding .35s ease,background .35s ease,box-shadow .35s ease}.site-header.is-scrolled{min-height:62px;background:rgba(7,9,15,.96);box-shadow:0 12px 34px rgba(0,0,0,.24)}.hero-bg{transform:scale(1.04);animation:heroDrift 16s ease-out forwards}.hero:before{position:absolute;inset:0;z-index:-1;background:linear-gradient(115deg,transparent 0 38%,rgba(255,240,190,.16) 47%,transparent 56%);transform:translateX(-78%);animation:goldSweep 7.5s ease-in-out 1.2s infinite;content:"";pointer-events:none}.hero-copy .eyebrow,.hero-copy h1,.hero-copy>p,.hero-data,.actions,.hero-photo{animation:riseIn .85s cubic-bezier(.2,.8,.2,1) both}.hero-copy h1{animation-delay:.12s}.hero-copy>p{animation-delay:.22s}.hero-data{animation-delay:.34s}.actions{animation-delay:.44s}.hero-photo{animation-delay:.25s;transition:transform .7s ease,box-shadow .7s ease}.hero-photo:hover{transform:translateY(-6px) scale(1.012);box-shadow:0 28px 80px rgba(0,0,0,.38)}.reveal,.card,.panel,.price-list p,.rounded,.price-grid img,.access dl,iframe{opacity:0;transform:translateY(24px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.8,.2,1),box-shadow .45s ease,border-color .45s ease;transition-delay:var(--reveal-delay,0ms)}.reveal.is-visible,.card.is-visible,.panel.is-visible,.price-list p.is-visible,.rounded.is-visible,.price-grid img.is-visible,.access dl.is-visible,iframe.is-visible{opacity:1;transform:translateY(0)}.card,.panel,.price-list p,.btn,.fixed-call a{position:relative;overflow:hidden}.card:before,.panel:before,.btn:before,.fixed-call a:before{position:absolute;inset:0;background:linear-gradient(120deg,transparent,rgba(255,245,214,.2),transparent);transform:translateX(-120%);transition:transform .75s ease;content:"";pointer-events:none}.card:hover,.panel:hover{transform:translateY(-5px);border-color:rgba(200,164,94,.46);box-shadow:0 30px 90px rgba(0,0,0,.36)}.card:hover:before,.panel:hover:before,.btn:hover:before,.fixed-call a:hover:before{transform:translateX(120%)}.card img,.panel img,.rounded,.price-grid img{transition:transform .9s ease,filter .9s ease}.card:hover img,.panel:hover img{transform:scale(1.035);filter:saturate(1.05) contrast(1.04)}.btn,.fixed-call a{transition:transform .28s ease,box-shadow .28s ease,background .28s ease}.btn:hover,.fixed-call a:hover{transform:translateY(-2px);box-shadow:0 18px 48px rgba(200,164,94,.3)}.eyebrow:after{display:block;width:34px;height:1px;margin-top:8px;background:linear-gradient(90deg,var(--gold),transparent);content:""}@keyframes heroDrift{from{transform:scale(1.08)}to{transform:scale(1.02)}}@keyframes goldSweep{0%,46%{transform:translateX(-86%)}70%,100%{transform:translateX(86%)}}@keyframes riseIn{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal,.card,.panel,.price-list p,.rounded,.price-grid img,.access dl,iframe{opacity:1;transform:none}}
.fixed-call a{letter-spacing:0;text-align:center}
