:root{--goyou: #2D5B7C;--goyou-deep: #1B4A6E;--goyou-soft: #4A7A9C;--rikuzen: #1F3A55;--rikuzen-deep: #14283D;--tsubaki: #A8412E;--tsubaki-deep: #82301F;--tsubaki-soft: #C46850;--tsubaki-pale: #F2DCD3;--kishu: #C9A06E;--sand: #D6BE96;--sand-soft: #E8D9BC;--sand-pale: #F4E9D2;--paper: #FCFAF5;--paper-2: #F8F4EA;--paper-3: #F3ECDB;--white: #FFFFFF;--ink: #1F2A38;--ink-soft: #3A4856;--ink-light: #6E7A88;--line: #DCD2BD;--line-soft: #EAE2CE;--forest: var(--goyou-deep);--forest-deep: var(--rikuzen-deep);--forest-soft: var(--goyou-soft);--coral: var(--tsubaki);--coral-2: var(--tsubaki-soft);--coral-soft: var(--tsubaki-soft);--coral-pale: var(--tsubaki-pale);--ichica: var(--tsubaki);--ichica-deep: var(--tsubaki-deep);--ichica-pale: var(--tsubaki-pale);--sage-1: var(--paper-2);--sage-2: var(--paper-3);--sage-3: var(--sand);--greige: var(--paper);--greige-2: var(--paper-2);--moss: var(--goyou-deep);--moss-2: var(--goyou-soft);--moss-3: var(--goyou-soft);--moss-4: var(--sand);--moss-pale: var(--paper-3);--clay: var(--tsubaki);--clay-deep: var(--tsubaki-deep);--clay-soft: var(--tsubaki-soft);--clay-pale: var(--tsubaki-pale);--honey: var(--kishu);--honey-deep: var(--tsubaki-deep);--honey-pale: var(--sand-pale);--cream: var(--paper);--cream-2: var(--paper-2);--cream-3: var(--paper-3)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Shippori Mincho B1,"Noto Serif JP",serif;font-weight:500;background:var(--paper);color:var(--ink);line-height:1.95;-webkit-font-smoothing:antialiased;overflow-x:hidden;letter-spacing:.02em}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,h4{font-family:Shippori Mincho B1,"Noto Serif JP",serif;font-weight:700;line-height:1.55;color:var(--goyou-deep);letter-spacing:.06em}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:14px 28px;background:#fcfaf5f0;backdrop-filter:blur(10px);border-bottom:1px solid var(--line-soft)}.brand-mark{display:flex;align-items:center;gap:12px}.brand-glyph{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.brand-text{display:flex;flex-direction:column;line-height:1.3}.brand-jp{font-family:Shippori Mincho B1,serif;font-weight:700;font-size:15px;letter-spacing:.08em;color:var(--goyou-deep)}.brand-en{font-family:Cormorant Garamond,serif;font-style:italic;font-weight:500;font-size:10px;letter-spacing:.16em;color:var(--tsubaki);margin-top:4px}.nav-toggle{background:var(--paper-3);padding:10px 18px;border:1px solid var(--line);border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:10px;transition:background .3s}.nav-toggle:hover{background:var(--sand-soft)}.nav-toggle .hamburger{display:block;width:22px;height:14px;background-image:linear-gradient(to bottom,var(--goyou-deep) 0,var(--goyou-deep) 2px,transparent 2px,transparent 6px,var(--goyou-deep) 6px,var(--goyou-deep) 8px,transparent 8px,transparent 12px,var(--goyou-deep) 12px,var(--goyou-deep) 14px)}.nav-toggle .hamburger-label{font-family:Shippori Mincho B1,serif;color:var(--goyou-deep);font-size:12px;font-weight:700;letter-spacing:.12em}.nav-toggle.open .hamburger{background-image:none;position:relative}.nav-toggle.open .hamburger:before,.nav-toggle.open .hamburger:after{content:"";position:absolute;top:6px;left:0;right:0;height:2px;background:var(--goyou-deep)}.nav-toggle.open .hamburger:before{transform:rotate(45deg)}.nav-toggle.open .hamburger:after{transform:rotate(-45deg)}.main-nav{position:fixed;inset:0;background:var(--paper);z-index:90;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;transform:translate(100%);transition:transform .5s cubic-bezier(.7,0,.2,1);overflow-y:auto}.main-nav.open{transform:translate(0)}.main-nav-list{list-style:none;text-align:center;display:flex;flex-direction:column;gap:6px}.main-nav-list a{font-family:Shippori Mincho B1,serif;font-weight:600;font-size:19px;letter-spacing:.1em;color:var(--goyou-deep);padding:10px 24px;display:inline-block;transition:color .3s}.main-nav-list a:hover{color:var(--tsubaki)}.block{padding:110px 0;position:relative}.block.paper{background:var(--paper)}.block.paper2{background:var(--paper-2)}.block.paper3{background:var(--paper-3)}.block.sage1{background:var(--paper-2)}.block.sage2{background:var(--paper-3)}.block-inner{max-width:1180px;margin:0 auto;padding:0 32px}.eyebrow{display:inline-block;font-family:Cormorant Garamond,serif;font-style:italic;font-weight:600;font-size:13px;letter-spacing:.32em;color:var(--tsubaki);margin-bottom:18px}.section-title{font-family:Shippori Mincho B1,serif;font-weight:700;font-size:clamp(28px,3.4vw,40px);line-height:1.55;color:var(--goyou-deep);margin-bottom:26px;letter-spacing:.06em}.section-title .accent{color:var(--tsubaki);border-bottom:3px solid var(--kishu);padding-bottom:4px}.lead{font-size:16px;line-height:2;color:var(--ink-soft);font-weight:500;max-width:720px}.big-pill{display:inline-flex;align-items:center;gap:14px;padding:18px 36px;border-radius:6px;background:var(--paper-3);color:var(--goyou-deep);font-family:Shippori Mincho B1,serif;font-weight:700;font-size:15px;letter-spacing:.1em;border:1px solid var(--line);transition:all .3s;cursor:pointer}.big-pill:hover{background:var(--sand)}.big-pill.clay{background:var(--tsubaki);color:var(--white);border-color:var(--tsubaki)}.big-pill.clay:hover{background:var(--tsubaki-deep);border-color:var(--tsubaki-deep)}.big-pill.outline{background:transparent;border:1px solid var(--goyou-deep);color:var(--goyou-deep)}.big-pill.outline:hover{background:var(--goyou-deep);color:var(--white)}.big-pill-arrow{font-size:18px;transition:transform .3s}.big-pill:hover .big-pill-arrow{transform:translate(4px)}.hero{position:relative;min-height:100vh;width:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--rikuzen-deep)}.hero-bg{position:absolute;inset:0;width:100%;height:100vh;object-fit:cover;z-index:0}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#14283d80,#14283dad 60%,#14283dcc);z-index:1}.hero-mountain{position:absolute;bottom:0;left:0;right:0;width:100%;height:200px;z-index:2;opacity:.78}.hero-inner{position:relative;z-index:3;max-width:1080px;padding:100px 32px 80px;text-align:center;color:var(--white)}.hero-eyebrow{display:inline-block;font-family:Cormorant Garamond,serif;font-style:italic;font-size:14px;letter-spacing:.32em;color:var(--sand-pale);margin-bottom:30px}.hero-title{font-family:Shippori Mincho B1,serif;font-weight:700;font-size:clamp(30px,4.6vw,56px);line-height:1.55;color:var(--white);margin-bottom:30px;letter-spacing:.08em;text-shadow:0 2px 18px rgba(0,0,0,.45)}.hero-title .ichi-mark{color:var(--sand);border-bottom:3px solid var(--kishu);padding-bottom:4px}.hero-sub{font-size:16px;line-height:2.1;color:var(--paper-2);margin-bottom:44px;font-weight:500;max-width:720px;margin-left:auto;margin-right:auto;text-shadow:0 1px 8px rgba(0,0,0,.5)}.hero-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.hero-actions .big-pill{background:var(--white);color:var(--goyou-deep)}.hero-actions .big-pill:hover{background:var(--sand)}.hero-actions .big-pill.clay{background:var(--tsubaki);color:var(--white)}.hero-actions .big-pill.clay:hover{background:var(--tsubaki-deep)}.hero-actions .big-pill.outline{background:transparent;color:var(--white);border-color:var(--white)}.hero-actions .big-pill.outline:hover{background:var(--white);color:var(--goyou-deep)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.grid-2-asym{display:grid;grid-template-columns:1.05fr 1fr;gap:50px;align-items:center}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}@media(max-width:880px){.grid-2,.grid-2-asym{grid-template-columns:1fr;gap:32px}.grid-3{grid-template-columns:1fr}.grid-4{grid-template-columns:repeat(2,1fr)}}.card{background:var(--paper);border:1px solid var(--line-soft);border-radius:4px;padding:28px 30px;transition:all .3s}.card:hover{border-color:var(--kishu);transform:translateY(-3px)}.card.sage{background:var(--paper-2)}.card-num{font-family:Cormorant Garamond,serif;font-style:italic;font-size:12.5px;letter-spacing:.22em;color:var(--tsubaki);font-weight:600;margin-bottom:10px}.card h3{font-size:18px;line-height:1.6;margin-bottom:12px;color:var(--goyou-deep)}.card p{font-size:14.5px;line-height:1.95;color:var(--ink-soft)}.point-card{background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:36px 32px;text-align:left;transition:all .3s}.point-card:hover{border-color:var(--tsubaki)}.point-icon{width:72px;height:72px;display:inline-flex;align-items:center;justify-content:center;background:var(--paper-3);border-radius:50%;color:var(--goyou-deep);margin-bottom:20px}.point-num{font-family:Cormorant Garamond,serif;font-style:italic;font-size:12px;letter-spacing:.24em;color:var(--tsubaki);font-weight:600;margin-bottom:10px}.point-card h3{font-size:19px;margin-bottom:14px;color:var(--goyou-deep)}.point-card p{font-size:14.5px;line-height:1.95;color:var(--ink-soft)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;max-width:1080px;margin:0 auto}.stat-item{text-align:center;background:var(--paper);border:1px solid var(--line-soft);border-radius:6px;padding:32px 18px}.stat-num{font-family:Cormorant Garamond,serif;font-style:italic;font-weight:600;font-size:clamp(32px,4vw,48px);color:var(--goyou-deep);display:inline-flex;align-items:baseline;gap:6px}.stat-unit{font-family:Shippori Mincho B1,serif;font-style:normal;font-size:14px;color:var(--ink-soft);font-weight:700}.stat-label{display:block;font-size:13px;color:var(--ink-soft);margin-top:10px;letter-spacing:.08em}@media(max-width:880px){.stats{grid-template-columns:repeat(2,1fr)}}.list-check{list-style:none;padding:0}.list-check li{position:relative;padding:10px 0 10px 32px;font-size:15px;line-height:1.9;color:var(--ink-soft);border-bottom:1px dashed var(--line)}.list-check li:before{content:"◆";position:absolute;left:6px;top:12px;color:var(--tsubaki);font-size:10px}.timeline{list-style:none;padding:0}.timeline li{position:relative;padding:18px 0 18px 90px;border-bottom:1px dashed var(--line);font-size:15px;line-height:1.95;color:var(--ink-soft)}.timeline li strong{position:absolute;left:0;top:18px;font-family:Cormorant Garamond,serif;font-style:italic;font-weight:600;font-size:13px;letter-spacing:.18em;color:var(--tsubaki);display:inline-block;width:80px}.service-cloud{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.service-tile{display:flex;flex-direction:column;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:28px 18px;text-align:center;transition:all .3s}.service-tile:hover{background:var(--paper-3);border-color:var(--tsubaki)}.service-icon{width:56px;height:56px;display:inline-flex;align-items:center;justify-content:center;background:var(--paper-3);border-radius:50%;color:var(--goyou-deep);margin-bottom:14px}.service-tile h4{font-size:15px;margin-bottom:6px;color:var(--goyou-deep);letter-spacing:.05em}.service-tile p{font-size:12.5px;color:var(--ink-light);line-height:1.8}@media(max-width:880px){.service-cloud{grid-template-columns:repeat(2,1fr)}}.field-card{display:block;background:var(--paper);border:1px solid var(--line-soft);border-radius:6px;overflow:hidden;transition:all .3s;color:inherit}.field-card:hover{transform:translateY(-3px);border-color:var(--tsubaki)}.field-img-wrap{position:relative;width:100%;height:220px;overflow:hidden}.field-img-wrap img{width:100%;height:100%;object-fit:cover}.field-num{position:absolute;top:16px;left:16px;background:var(--paper);font-family:Cormorant Garamond,serif;font-style:italic;font-size:12px;letter-spacing:.22em;color:var(--tsubaki);font-weight:600;padding:6px 14px;border-radius:4px}.field-body{padding:24px 26px}.field-body h3{font-size:18px;margin-bottom:10px;color:var(--goyou-deep)}.field-body p{font-size:14px;color:var(--ink-soft);line-height:1.9}.field-link{display:inline-block;margin-top:14px;font-family:Cormorant Garamond,serif;font-style:italic;font-size:13px;color:var(--tsubaki);letter-spacing:.18em}.fee-table,.info-table{width:100%;border-collapse:collapse;font-size:14.5px;background:var(--paper)}.fee-table th,.fee-table td,.info-table th,.info-table td{padding:16px 20px;border-bottom:1px solid var(--line-soft);text-align:left;line-height:1.85;vertical-align:top}.fee-table th,.info-table th{background:var(--paper-2);color:var(--goyou-deep);font-weight:700;width:280px;letter-spacing:.05em}.fee-table td .price{font-family:Cormorant Garamond,serif;font-style:italic;font-weight:600;font-size:19px;color:var(--tsubaki);letter-spacing:.05em}.site-footer{background:var(--goyou-deep);color:var(--paper);padding:90px 32px 30px}.footer-cta{max-width:920px;margin:0 auto 80px;text-align:center;padding:0 16px}.footer-cta-eyebrow{font-family:Cormorant Garamond,serif;font-style:italic;font-size:13px;letter-spacing:.32em;color:var(--sand);margin-bottom:18px}.footer-cta-title{font-family:Shippori Mincho B1,serif;font-weight:700;font-size:clamp(24px,3vw,34px);line-height:1.6;color:var(--white);margin-bottom:20px;letter-spacing:.06em}.footer-cta-text{font-size:15px;line-height:1.95;color:var(--paper-2);margin-bottom:32px;font-weight:500}.footer-cta-buttons{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.footer-cta-buttons .big-pill{background:var(--white);color:var(--goyou-deep)}.footer-cta-buttons .big-pill.clay{background:var(--tsubaki);color:var(--white)}.footer-cta-buttons .big-pill.outline{background:transparent;color:var(--white);border-color:var(--white)}.footer-cta-buttons .big-pill.outline:hover{background:var(--white);color:var(--goyou-deep)}.footer-inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:50px;padding-bottom:50px;border-bottom:1px solid rgba(255,255,255,.12)}@media(max-width:880px){.footer-inner{grid-template-columns:1fr;gap:36px}}.footer-col-title{font-family:Shippori Mincho B1,serif;font-weight:700;font-size:13.5px;letter-spacing:.16em;color:var(--sand);margin-bottom:18px}.footer-col a{display:block;padding:6px 0;font-size:13.5px;color:var(--paper-2);line-height:1.7;transition:color .3s}.footer-col a:hover{color:var(--white)}.footer-name{font-family:Shippori Mincho B1,serif;font-weight:700;font-size:16px;color:var(--white);margin-top:12px;margin-bottom:4px;letter-spacing:.08em}.footer-tag{font-family:Cormorant Garamond,serif;font-style:italic;font-size:11.5px;letter-spacing:.18em;color:var(--sand);margin-bottom:18px}.footer-addr{font-size:12.5px;line-height:1.9;color:var(--paper-2);margin-bottom:14px}.footer-addr strong{display:inline-block;font-size:11.5px;letter-spacing:.14em;color:var(--sand);margin-bottom:4px}.footer-area{font-size:12.5px;line-height:1.85;color:var(--paper-2);margin-bottom:6px}.footer-area strong{display:inline-block;color:var(--sand);margin-right:6px;letter-spacing:.08em}.footer-area-note{font-size:11.5px;color:var(--sand-soft);margin-top:6px;font-style:italic}.footer-bottom{max-width:1180px;margin:30px auto 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}.footer-copy{font-family:Cormorant Garamond,serif;font-style:italic;font-size:11.5px;color:var(--sand);letter-spacing:.14em}.footer-note{font-size:11px;color:var(--sand-soft)}.reveal,.reveal-up{opacity:0;transform:translateY(20px);transition:opacity .8s,transform .8s}.reveal.in,.reveal-up.in{opacity:1;transform:translateY(0)}.pagetop{background:var(--paper-2);padding:160px 32px 80px;border-bottom:1px solid var(--line-soft)}.pagetop-inner{max-width:1080px;margin:0 auto}.pagetop h1{font-family:Shippori Mincho B1,serif;font-weight:700;font-size:clamp(28px,4vw,44px);letter-spacing:.08em;color:var(--goyou-deep);margin-bottom:16px;line-height:1.5}.pagetop .pagetop-en{font-family:Cormorant Garamond,serif;font-style:italic;font-size:14px;letter-spacing:.28em;color:var(--tsubaki);margin-bottom:14px;display:block}.pagetop .pagetop-sub{font-size:15px;color:var(--ink-soft);line-height:2;max-width:760px}@media(max-width:880px){.site-header{padding:12px 16px}.brand-jp{font-size:13px}.brand-en{font-size:9px}.nav-toggle{padding:9px 14px}.nav-toggle .hamburger-label{font-size:11px}.block{padding:70px 0}.block-inner{padding:0 20px}.hero-inner{padding:80px 20px 60px}.pagetop{padding:130px 20px 60px}}.kb{overflow:hidden;border-radius:28px}.kb img{width:100%;height:100%;object-fit:cover}.reveal-scale{opacity:0;transform:scale(.94);transition:opacity .8s,transform .8s}.reveal-scale.in{opacity:1;transform:scale(1)}
