*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:5rem}body{background:var(--bg);color:var(--text);min-width:0;font-family:Noto Sans JP,system-ui,sans-serif}img{max-width:100%;height:auto;display:block}fieldset{border:0;min-width:0;margin:0;padding:0}.site-header{z-index:200;backdrop-filter:blur(14px);border-bottom:1px solid var(--card-border);background:#fffffff0;position:sticky;top:0}.site-header__inner{justify-content:space-between;align-items:center;gap:1rem;max-width:1180px;margin:0 auto;padding:.9rem 1.5rem;display:flex}.site-logo{color:var(--text);white-space:nowrap;align-items:center;gap:.55rem;font-size:1.05rem;font-weight:700;text-decoration:none;display:inline-flex}.site-logo em{color:var(--cyan);font-style:normal}.site-logo__mark{width:auto;height:28px;display:block}.site-logo__full{width:auto;height:50px;display:block}@media (width<=400px){.site-logo{gap:.4rem;font-size:1rem}.site-logo__mark{height:24px}}.menu{align-items:center;gap:.3rem;list-style:none;display:flex}.menu__link,.menu__parent{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.5rem .7rem;font-family:inherit;font-size:.85rem;font-weight:500;text-decoration:none;transition:color .2s,background .2s;display:inline-block}.menu__link:hover,.menu__parent:hover,.menu__link:focus-visible,.menu__parent:focus-visible{color:var(--cyan);background:var(--cyan-light)}.menu__parent:after{content:"";border-bottom:2px solid;border-right:2px solid;width:.4em;height:.4em;margin-left:.45em;transition:transform .2s;display:inline-block;transform:translateY(-.15em)rotate(45deg)}.menu__parent[aria-expanded=true]:after{transform:translateY(.1em)rotate(-135deg)}.menu__link--cta{background:var(--text);color:var(--white);border-radius:4px;padding:.5rem 1.1rem;font-weight:700}.menu__link--cta:hover,.menu__link--cta:focus-visible{background:var(--text);color:var(--white);opacity:.88}.menu__item{position:relative}.menu__sub{background:var(--white);border:1px solid var(--card-border);border-radius:10px;min-width:15rem;padding:.4rem;list-style:none;display:none;position:absolute;top:calc(100% + .4rem);left:0;box-shadow:0 12px 34px #0050b41f}.menu__item--open>.menu__sub{display:block}.menu__sub a{color:var(--text-muted);border-radius:6px;padding:.55rem .8rem;font-size:.84rem;text-decoration:none;display:block}.menu__sub a:hover,.menu__sub a:focus-visible{background:var(--cyan-light);color:var(--cyan)}.menu__sub-index a{color:var(--text);font-weight:700}.menu__sub-index{border-bottom:1px solid var(--card-border);margin-bottom:.3rem;padding-bottom:.3rem}.menu-toggle{border:1px solid var(--card-border);cursor:pointer;color:var(--text);background:0 0;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem .7rem;font-family:inherit;font-size:.8rem;font-weight:700;display:none}.menu-toggle__bars{width:18px;height:12px;display:inline-block;position:relative}.menu-toggle__bars:before,.menu-toggle__bars:after,.menu-toggle__bars span{content:"";background:var(--text);border-radius:2px;height:2px;position:absolute;left:0;right:0}.menu-toggle__bars:before{top:0}.menu-toggle__bars span{top:5px}.menu-toggle__bars:after{bottom:0}@media (width<=860px){.menu-toggle{display:inline-flex}.menu{background:var(--white);border-bottom:1px solid var(--card-border);flex-direction:column;align-items:stretch;gap:0;max-height:calc(100vh - 4rem);padding:.5rem;display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 12px 30px #0050b41f}.site-header__inner{position:relative}.site-header--open .menu{display:flex}.menu__link,.menu__parent{text-align:left;width:100%;padding:.85rem .9rem;font-size:.95rem;display:block}.menu__link--cta{text-align:center;margin-top:.4rem}.menu__parent{justify-content:space-between;align-items:center;display:flex}.menu__parent:after{margin-left:0}.menu__sub{min-width:0;box-shadow:none;background:var(--cyan-light);border:none;border-radius:0;margin:0 0 .3rem;padding:.3rem .3rem .3rem .9rem;display:none;position:static}.menu__item--open>.menu__sub{display:block}.menu__sub a{padding:.7rem .6rem;font-size:.9rem}}.section{padding:5rem 1.5rem;overflow-x:clip}.section--alt{background:var(--section-alt)}.section--divided{border-top:1px solid var(--card-border)}.section__inner{max-width:1100px;margin:0 auto}.section__label{letter-spacing:.2em;color:var(--cyan);text-transform:uppercase;align-items:center;gap:.6rem;margin-bottom:.7rem;font-size:.72rem;font-weight:700;display:flex}.section__label:before{content:"";background:var(--cyan);width:2px;height:1em;display:inline-block}.section__title{margin-bottom:1rem;font-size:clamp(1.6rem,3.5vw,2.3rem);font-weight:700;line-height:1.35}.section__title em{color:var(--cyan);font-style:normal}.heading--compact .section__title{font-size:clamp(1.25rem,2.3vw,1.75rem)}.heading--compact .section__desc{margin-bottom:1.4rem}.section__desc{color:var(--text-muted);max-width:44rem;margin-bottom:2.6rem;font-size:.97rem;line-height:1.85}@media (width>=861px){.section{padding:6rem 3rem}}.cards{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:1.4rem;display:grid}.cards--quad{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}.cards--duo{grid-template-columns:1fr}@media (width>=600px){.cards--duo{grid-template-columns:1fr 1fr}}.card__label{letter-spacing:.16em;color:var(--cyan);text-transform:uppercase;align-items:center;gap:.5rem;margin-bottom:.1rem;font-size:.68rem;font-weight:700;display:flex}.card__label:before{content:"";background:var(--cyan);width:2px;height:1em;display:inline-block}.card-links{flex-direction:column;align-items:flex-start;gap:.45rem;display:flex}.card{background:var(--white);border:1px solid var(--card-border);border-radius:6px;flex-direction:column;gap:.6rem;padding:1.9rem 1.6rem;transition:border-color .25s,transform .25s;display:flex;position:relative;overflow:hidden}.card:after{content:"";background:var(--cyan);transform-origin:0;height:2px;transition:transform .35s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.card:hover{border-color:var(--cyan);transform:translateY(-3px)}.card:hover:after{transform:scaleX(1)}.card__head{align-items:center;gap:.7rem;margin-bottom:.5rem;display:flex}.card__icon{color:var(--cyan);display:flex}.card__num{letter-spacing:.12em;color:var(--text-muted);font-size:.78rem;font-weight:700}.card__title{font-size:1.05rem;font-weight:700}.card__body{color:var(--text-muted);font-size:.87rem;line-height:1.75}.card__foot{margin-top:auto;padding-top:.9rem}.badge{letter-spacing:.08em;background:var(--cyan-light);color:var(--cyan);border-radius:4px;padding:.2rem .6rem;font-size:.7rem;font-weight:700;display:inline-block}.badge--muted{background:var(--section-alt);color:var(--text-muted)}.phrase{display:inline-block}.hero{background:var(--hero-dark);width:100%;height:100vh;min-height:520px;max-height:900px;position:relative;overflow:hidden}.hero__stage{position:absolute;inset:0}.hero__slide{opacity:0;z-index:0;transition:opacity 1.2s;position:absolute;inset:0}.hero__slide--active{opacity:1;z-index:1}.hero__media,.hero__photo{position:absolute;inset:0}.hero__photo{background:var(--hero-dark)}.hero__photo picture{width:100%;height:100%;display:block}.hero__photo img,.hero__svg{object-fit:cover;width:100%;height:100%;transition:transform 8s;display:block;transform:scale(1.06)}.hero__slide--active .hero__photo img,.hero__slide--active .hero__svg{transform:scale(1)}.hero__veil{opacity:var(--hero-veil,.85);background:linear-gradient(90deg, var(--hero-dark) 0%, var(--hero-dark) 30%, transparent 85%);position:absolute;inset:0}.hero__text{z-index:2;color:var(--white);opacity:0;transition:opacity .55s,transform .55s;position:absolute;top:50%;left:1.5rem;right:1.5rem;transform:translateY(calc(22px - 50%))}.hero__slide--active .hero__text{opacity:1;transition-delay:.75s;transform:translateY(-50%)}.hero__label{letter-spacing:.22em;color:#ffffffb3;text-transform:uppercase;align-items:center;gap:.6rem;margin-bottom:1rem;font-size:.72rem;font-weight:700;display:flex}.hero__label:before{content:"";background:var(--hero-light);width:2px;height:1em;display:inline-block}.hero__title{margin-bottom:1.2rem;font-size:clamp(1.8rem,5vw,3.8rem);font-weight:700;line-height:1.25}.hero__title--long{font-size:clamp(1.45rem,3.7vw,3rem)}.hero__title em{color:var(--hero-light);font-style:normal}@supports ((-webkit-background-clip:text) or (background-clip:text)){.hero__title em{background:linear-gradient(90deg, var(--hero-light), #fff);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}}.hero__lead{color:#ffffffe0;max-width:32rem;margin-bottom:2rem;font-size:1rem;font-weight:300;line-height:1.9}.hero__btns{flex-wrap:wrap;gap:1rem;display:flex}.slider-arrow{z-index:10;color:var(--white);cursor:pointer;backdrop-filter:blur(6px);background:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.4rem;transition:background .2s;display:none;position:absolute;top:50%;transform:translateY(-50%)}.slider-arrow:hover{background:#ffffff47}.slider-arrow--prev{left:1.5rem}.slider-arrow--next{right:1.5rem}.slider-dots{z-index:10;gap:10px;display:flex;position:absolute;bottom:1.8rem;left:50%;transform:translate(-50%)}.dot{cursor:pointer;background:#fff6;border:none;border-radius:50%;width:12px;height:12px;padding:0;transition:background .3s,transform .3s}.dot--active{background:var(--white);transform:scale(1.3)}@media (width>=861px){.hero__text{max-width:640px;left:5rem;right:auto}.slider-arrow{display:flex}}@media (width<=860px){.hero__veil{background:linear-gradient(180deg, var(--hero-dark) 0%, var(--hero-dark) 100%);opacity:calc(var(--hero-veil,.85) * .78)}}.section--deco{position:relative;overflow:hidden}.zero-circle{z-index:0;pointer-events:none;width:var(--zc-size);aspect-ratio:1;border:calc(var(--zc-size) / 5.5) solid var(--cyan);opacity:var(--zc-op,.92);border-radius:50%;position:absolute}.section--deco .section__inner{z-index:1;position:relative}.zero-circle--photo{--zc-size:clamp(240px, 27vw, 420px);bottom:2%;left:-4%}.zero-circle--corner{--zc-size:clamp(150px, 17vw, 230px);top:2.5rem;right:9%}@media (width<=860px){.zero-circle--photo{display:none}}.page-hero{background:linear-gradient(135deg, var(--hero-dark) 0%, var(--hero-mid) 100%);padding:3.5rem 1.5rem 3rem;position:relative;overflow:hidden}.page-hero__inner{z-index:1;max-width:1100px;margin:0 auto;position:relative}.page-hero .crumbs,.page-hero .crumbs a{color:#ffffffb8}.page-hero__label{letter-spacing:.2em;color:var(--hero-light);text-transform:uppercase;align-items:center;gap:.7rem;margin-bottom:.8rem;font-size:.72rem;font-weight:700;display:flex}.page-hero__label:before{content:"";background:var(--hero-light);width:2px;height:1em;display:inline-block}.page-hero__title{color:var(--white);margin-bottom:.6rem;font-size:clamp(1.7rem,4vw,3rem);font-weight:700}.page-hero__lead{color:#ffffffb8;font-size:.97rem;line-height:1.8}@media (width>=861px){.page-hero{padding:4.5rem 3rem 4rem}}.page-hero--photo{background:var(--hero-dark);--ph-lead-max:40rem}.page-hero__photo{z-index:0;position:absolute;inset:0}.page-hero__photo picture{width:100%;height:100%;display:block}.page-hero__photo img{object-fit:cover;object-position:var(--ph-pos,50% 50%);width:100%;height:100%;display:block}.page-hero--photo .page-hero__lead{text-wrap:balance}.page-hero__veil{z-index:0;pointer-events:none;background:var(--hero-dark);opacity:var(--ph-veil-narrow,.74);position:absolute;inset:0}.page-hero__veil--side{display:none}@media (width>=861px){.page-hero--photo .page-hero__lead{max-width:var(--ph-lead-max)}.page-hero__veil{opacity:var(--ph-veil-wide,.2)}.page-hero__veil--side{--ph-text-end:calc(max(3rem, (100vw - 1100px) / 2) + var(--ph-lead-max));background:linear-gradient(90deg, var(--hero-dark) 0%, var(--hero-dark) var(--ph-text-end), transparent calc(var(--ph-text-end) + var(--ph-fade,18rem)));opacity:var(--ph-veil-side,.84);display:block}}.wrap-keep{word-break:keep-all;overflow-wrap:anywhere}.btn{cursor:pointer;border:1.5px solid #0000;border-radius:4px;padding:.85rem 1.8rem;font-family:inherit;font-size:.9rem;font-weight:700;text-decoration:none;transition:background .2s,color .2s,border-color .2s,opacity .2s;display:inline-block}.btn--navy{background:var(--text);color:var(--white);border-color:var(--text)}.btn--navy:hover{background:var(--hero-dark);border-color:var(--hero-dark)}.btn--outline{background:var(--white);color:var(--text);border-color:var(--text)}.btn--outline:hover{background:var(--text);color:var(--white)}.btn--primary{background:var(--white);color:var(--text)}.btn--primary:hover{opacity:.88}.btn--ghost{color:var(--white);background:0 0;border-color:#ffffff80}.btn--ghost:hover{background:#ffffff24}.btn--cyan{background:var(--cyan);color:var(--white);border-color:var(--cyan)}.btn--cyan:hover{opacity:.88}.btn[aria-disabled=true],.btn:disabled{background:var(--card-border);color:var(--text-muted);box-shadow:none;cursor:not-allowed;transform:none}.news-list{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:1.3rem;display:grid}.news-card{background:var(--white);border:1px solid var(--card-border);color:inherit;border-radius:14px;flex-direction:column;gap:.6rem;padding:1.2rem;text-decoration:none;transition:transform .3s,box-shadow .3s;display:flex}.news-card:hover{transform:translateY(-5px);box-shadow:0 14px 36px #0050b41a}.news-card__meta{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.news-card__date{color:var(--text-muted);font-size:.75rem}.news-card__title{font-size:.95rem;font-weight:600;line-height:1.55}.news-card__body-text{color:var(--text-muted);font-size:.84rem;line-height:1.7}.news-card__arrow{color:var(--cyan);margin-top:auto;padding-top:.5rem;font-size:.78rem;font-weight:700}.news-empty{background:var(--white);border:1px dashed var(--card-border);color:var(--text-muted);border-radius:14px;padding:2rem;font-size:.9rem}.chips{flex-wrap:wrap;gap:.5rem;margin-bottom:2rem;display:flex}.chip{border:1px solid var(--card-border);background:var(--white);color:var(--text-muted);border-radius:999px;padding:.4rem .9rem;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-block}.chip:hover{border-color:var(--cyan);color:var(--cyan);background:var(--cyan-light)}.chip--current{background:var(--cyan);border-color:var(--cyan);color:var(--white)}a.badge{text-decoration:none}a.badge:hover{background:var(--cyan);color:var(--white)}.article{max-width:46rem;margin:0 auto}.article__head{margin-bottom:2rem}.article__title{margin:.7rem 0;font-size:clamp(1.5rem,4vw,2.1rem);font-weight:700;line-height:1.4}.article__meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.7rem;font-size:.8rem;display:flex}.article__body{font-size:1rem;line-height:1.95}.article__body>*+*{margin-top:1.2rem}.article__body h2{margin-top:2rem;font-size:1.25rem}.article__body h3{margin-top:1.6rem;font-size:1.1rem}.article__body a{color:var(--cyan)}.article__body ul,.article__body ol{padding-left:1.4rem}.article__legacy{color:var(--text-muted);word-break:break-all;margin-top:2.5rem;font-size:.8rem}.article__legacy a{color:var(--cyan)}.crumbs{color:var(--text-muted);flex-wrap:wrap;gap:.5rem;margin-bottom:1.4rem;font-size:.78rem;display:flex}.crumbs a{color:var(--cyan);text-decoration:none}.section-note{max-width:46rem;margin-bottom:2.2rem;font-size:.97rem;line-height:1.95}.section-note a{color:var(--cyan)}.prose{max-width:46rem;font-size:.97rem;line-height:1.95}.prose>*+*{margin-top:1.1rem}.prose a{color:var(--cyan)}.legacy,.article__body{overflow-wrap:anywhere}.legacy>*+*{margin-top:1.1rem}.legacy h2,.legacy h3,.legacy h4{margin-top:1.8rem;line-height:1.5}.legacy h4{font-size:1.1rem}.legacy a{color:var(--cyan)}.legacy ul,.legacy ol{padding-left:1.5rem}.legacy li+li{margin-top:.4rem}.legacy img{border-radius:8px;margin:0 auto}@media (width<=600px){.legacy [style*=padding-left]{padding-left:1.2rem!important}}.card-link{color:var(--cyan);margin-left:.6rem;font-size:.8rem;font-weight:700;text-decoration:none}.card__foot>.card-link:first-child,.card-links .card-link{margin-left:0}.profile{border-collapse:collapse;width:100%;font-size:.93rem}.profile tr{border-bottom:1px solid var(--card-border)}.profile tr:first-child{border-top:1px solid var(--card-border)}.profile th,.profile td{text-align:left;vertical-align:top;line-height:1.8}.profile th{width:12rem;color:var(--cyan);background:var(--cyan-light);white-space:nowrap;padding:1.1rem 1.2rem;font-size:.88rem;font-weight:700}.profile td{padding:1.1rem 1.2rem}.profile td a{color:var(--cyan)}.plain{padding:0;list-style:none}.plain li+li{margin-top:.3rem}@media (width<=600px){.profile,.profile tbody,.profile tr,.profile th,.profile td{width:auto;display:block}.profile th{border-bottom:0;padding-bottom:.2rem}.profile td{padding-top:.2rem}}.history{padding:0;list-style:none;position:relative}.history:before{content:"";background:linear-gradient(to bottom, var(--cyan), transparent);width:2px;position:absolute;top:0;bottom:0;left:68px}.history__item{gap:2rem;padding:1.2rem 0;display:flex;position:relative}.history__item:before{content:"";background:var(--white);border:3px solid var(--cyan);border-radius:50%;width:16px;height:16px;position:absolute;top:1.5rem;left:61px}.history__year{text-align:right;width:56px;color:var(--cyan);flex-shrink:0;padding-top:.1rem;font-size:.88rem;font-weight:700}.history__item>div{padding-left:1rem}@media (width>=861px){.history:before{left:108px}.history__item{gap:3rem}.history__item:before{left:101px}.history__year{width:96px}}.history__title{margin-bottom:.25rem;font-size:.97rem;font-weight:600}.history__tag{vertical-align:1px;letter-spacing:.04em;opacity:.65;border:1px solid;border-radius:4px;margin-right:.5rem;padding:.08rem .4rem;font-size:.66rem;font-weight:700;display:inline-block}.history__body{color:var(--text-muted);font-size:.86rem;line-height:1.7}.contact-note{background:var(--cyan-light);border:1px solid var(--card-border);border-radius:12px;margin-bottom:1.6rem;padding:1rem 1.2rem;font-size:.9rem;line-height:1.8}.contact-ways{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:1rem;margin-bottom:2.2rem;display:grid}.contact-way{background:var(--white);border:1px solid var(--card-border);border-radius:12px;padding:1.2rem}.contact-way__label{letter-spacing:.1em;color:var(--cyan);margin-bottom:.4rem;font-size:.75rem;font-weight:700}.contact-way__value{word-break:break-all;font-size:1.15rem;font-weight:700}.contact-way__value a{color:var(--text);text-decoration:none}.contact-way__note{color:var(--text-muted);margin-top:.3rem;font-size:.78rem}.form-wrap{background:var(--white);border:1px solid var(--card-border);border-radius:16px;max-width:780px;margin:0 auto;padding:1.5rem;box-shadow:0 4px 30px #0050b414}@media (width>=861px){.form-wrap{padding:2.5rem}}.form-row{grid-template-columns:1fr;gap:1.2rem;margin-bottom:1.2rem;display:grid}@media (width>=861px){.form-row{grid-template-columns:1fr 1fr}}.form-group{flex-direction:column;gap:.4rem;margin-bottom:1.2rem;display:flex}.form-label{font-size:.88rem;font-weight:600}.form-required{color:var(--white);vertical-align:middle;white-space:nowrap;background:#e05;border-radius:3px;margin-left:6px;padding:1px 6px;font-size:.7rem;font-weight:700;display:inline-block}.form-input,.form-textarea{border:1.5px solid var(--card-border);color:var(--text);background:#fafcff;border-radius:8px;width:100%;padding:.75rem 1rem;font-family:inherit;font-size:.95rem}.form-textarea{resize:vertical}.form-honeypot{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.form-input:disabled,.form-textarea:disabled{background:var(--section-alt);color:var(--text-muted)}.form-cats{grid-template-columns:repeat(auto-fit,minmax(min(140px,100%),1fr));gap:.75rem;display:grid}.form-cat{cursor:pointer;display:block}.form-cat__inner{border:1.5px solid var(--card-border);text-align:center;background:#fafcff;border-radius:10px;height:100%;padding:.9rem .6rem;display:block}.form-cat input{opacity:0;pointer-events:none;position:absolute}.form-cat:hover .form-cat__inner{border-color:color-mix(in srgb, var(--cyan) 45%, var(--card-border))}.form-cat input:checked+.form-cat__inner{border-color:var(--cyan);background:var(--cyan-light)}.form-cat input:checked+.form-cat__inner .form-cat__name{color:var(--cyan)}.form-cat input:focus-visible+.form-cat__inner{outline:2px solid var(--cyan);outline-offset:2px}.form-cat__icon{margin-bottom:.3rem;font-size:1.5rem;line-height:1.2;display:block}.form-cat__name{font-size:.82rem;font-weight:700;line-height:1.5;display:block}.form-submit{border-top:1px solid var(--card-border);flex-direction:column;align-items:flex-start;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;display:flex}@media (width>=861px){.form-submit{flex-direction:row;justify-content:space-between;align-items:center}}.form-submit__note{color:var(--text-muted);font-size:.82rem;line-height:1.7}.site-footer{background:var(--white);border-top:1px solid var(--card-border);padding:2.4rem 1.5rem}.site-footer__inner{flex-direction:column;gap:1.2rem;max-width:1100px;margin:0 auto;display:flex}@media (width>=861px){.site-footer{padding:2.8rem 3rem}.site-footer__inner{flex-flow:wrap;justify-content:space-between;align-items:center;gap:1.5rem}}.site-footer__links{flex-wrap:wrap;gap:1.2rem;display:flex}.site-footer__links a{color:var(--text-muted);font-size:.82rem;text-decoration:none}.site-footer__links a:hover{color:var(--cyan)}.site-footer__addr{color:var(--text-muted);font-size:.78rem;line-height:1.8}.site-footer__copy{color:var(--text-muted);font-size:.76rem}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.js .reveal{opacity:0;transition:opacity .75s,transform .75s;transform:translateY(40px)}.js .reveal:target{opacity:1;transition:none;transform:none}.js .reveal--from-left{transform:translate(-50px)translateY(0)}.js .reveal--from-right{transform:translate(50px)translateY(0)}@media (width<=860px){.js .reveal--from-left,.js .reveal--from-right{transform:translateY(40px)}}.js .reveal--visible{opacity:1;transform:translate(0)}.js .stagger>*{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(28px)}.js .stagger.reveal--visible>:first-child{opacity:1;transition-delay:0s;transform:none}.js .stagger.reveal--visible>:nth-child(2){opacity:1;transition-delay:.13s;transform:none}.js .stagger.reveal--visible>:nth-child(3){opacity:1;transition-delay:.26s;transform:none}.js .stagger.reveal--visible>:nth-child(4){opacity:1;transition-delay:.39s;transform:none}.js .stagger.reveal--visible>:nth-child(n+5){opacity:1;transition-delay:.52s;transform:none}.img-text{grid-template-columns:1fr;align-items:center;gap:2rem;display:grid}@media (width>=861px){.img-text{grid-template-columns:1fr 1fr;gap:4rem}}.img-box{border:1px solid var(--card-border);border-radius:8px;position:relative;overflow:hidden}.frames .img-text .img-box{overflow:visible}.frames .img-text .img-box>img{border-radius:8px}.frames .img-text .img-box:before{content:"";z-index:-1;border:1px solid var(--card-border);position:absolute;inset:16px -16px -16px 16px}.frames .img-text .img-box:after{content:"";z-index:2;border-top:18px solid var(--cyan);border-right:18px solid #0000;width:0;height:0;position:absolute;top:-1px;left:-1px}@media (width<=767px){.frames .img-text .img-box:before{inset:10px -10px -10px 10px}}.frames .img-text .img-box--no-frame:before{content:none}.img-box img{width:100%;transition:transform .6s;display:block}.img-box:hover img{transform:scale(1.04)}.img-box__badge{backdrop-filter:blur(8px);border:1px solid var(--card-border);color:var(--cyan);background:#fffffff0;border-radius:4px;align-items:center;gap:.5rem;padding:.5rem .9rem;font-size:.8rem;font-weight:700;display:flex;position:absolute;bottom:1.2rem;left:1.2rem}.feature-list{flex-direction:column;gap:1rem;margin-top:1.8rem;display:flex}.feature-item{border:1px solid #0000;border-radius:12px;align-items:flex-start;gap:1rem;padding:1rem 1.2rem;transition:background .2s,border-color .2s;display:flex}.feature-item:hover{background:var(--cyan-light);border-color:#0077cc26}.feature-item__num{background:var(--cyan-light);width:34px;height:34px;color:var(--cyan);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:800;display:flex}.feature-item__title{margin-bottom:.2rem;font-size:.95rem;font-weight:600}.feature-item__body{color:var(--text-muted);font-size:.83rem;line-height:1.65}.feature-item__link{color:var(--cyan);margin-top:.55rem;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-block}.feature-item__link:hover{text-decoration:underline}.news-card{gap:0;padding:0;overflow:hidden}.news-card__thumb{background:var(--section-alt);width:100%;height:180px;overflow:hidden}.news-card__thumb img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.news-card:hover .news-card__thumb img{transform:scale(1.06)}.news-card__body{flex-direction:column;flex:1;gap:.6rem;padding:1.2rem;display:flex}.ec-section{background:linear-gradient(160deg, var(--text) 0%, #0a3060 60%, #0d2a5a 100%);color:var(--white);position:relative;overflow:hidden}.ec-section:before{content:"";pointer-events:none;background:radial-gradient(60% 60% at 90% 20%,#0096ff1f 0%,#0000 70%),radial-gradient(40% 50% at 10% 80%,#0064c81a 0%,#0000 60%);position:absolute;inset:0}.ec-section .section__inner{position:relative}.ec-section .section__label{color:var(--hero-light)}.ec-section .section__title{color:var(--white)}.ec-section .section__desc{color:#ffffffa6;max-width:40rem}.ec-section .section__desc strong{color:var(--hero-light);font-weight:700}.ec-grid{background:#ffffff1a;border-radius:16px;grid-template-columns:1fr;gap:1px;margin-bottom:3rem;display:grid;overflow:hidden}@media (width>=861px){.ec-grid{grid-template-columns:repeat(3,1fr)}}.ec-stat{text-align:center;background:#ffffff0d;padding:2.2rem 1.2rem}.ec-stat__num{color:var(--hero-light);margin-bottom:.5rem;font-size:3.2rem;font-weight:700;line-height:1}.ec-stat__num span{color:#fff9;margin-left:2px;font-size:1.3rem;font-weight:500}.ec-stat__label{color:#ffffff8c;letter-spacing:.05em;font-size:.85rem;line-height:1.6}.ec-section .img-box{border-color:#ffffff2e}.ec-sub-title{color:var(--white);margin-bottom:1rem;font-size:clamp(1.3rem,3vw,2rem);font-weight:700;line-height:1.4}.ec-text{color:#ffffffa6;margin-bottom:1.8rem;font-size:.95rem;line-height:1.85}.ec-points{flex-direction:column;gap:1.1rem;margin-bottom:2rem;display:flex}.ec-point{background:#ffffff0d;border:1px solid #ffffff14;border-radius:10px;align-items:flex-start;gap:1rem;padding:1rem 1.2rem;display:flex}.ec-point__icon{color:var(--hero-light);flex-shrink:0;margin-top:2px;display:flex}.ec-point strong{color:var(--white);margin-bottom:.25rem;font-size:.95rem;display:block}.ec-point p{color:#ffffff8c;font-size:.83rem;line-height:1.6}.ec-actions{flex-wrap:wrap;gap:.8rem;display:flex}@media (width<=480px){.ec-actions .btn{text-align:center;width:100%}}.badge-soon{vertical-align:1px;letter-spacing:.04em;opacity:.65;border:1px solid;border-radius:4px;margin-left:.5rem;padding:.08rem .4rem;font-size:.66rem;font-weight:700;display:inline-block}.btn--light{background:var(--hero-light);color:var(--text);box-shadow:0 4px 20px #7dd3fc4d}.btn--light:hover{transform:translateY(-2px)}.section--dark{background:linear-gradient(160deg, var(--text) 0%, #0a3060 60%, #0d2a5a 100%);color:var(--white);position:relative;overflow:hidden}.section--dark:before{content:"";pointer-events:none;background:radial-gradient(60% 60% at 90% 20%,#0096ff1f 0%,#0000 70%);position:absolute;inset:0}.section--dark .section__inner{position:relative}.section--dark .section__label{color:var(--hero-light)}.section--dark .section__title{color:var(--white)}.section--dark .section__desc{color:#ffffffa6}.service-block{background:var(--white);border:1px solid var(--card-border);border-radius:8px;margin-bottom:2rem;padding:1.5rem;transition:border-color .3s;position:relative;overflow:hidden}@media (width>=861px){.service-block{padding:3rem}}.service-block:hover{border-color:var(--cyan)}.service-block__header{align-items:flex-start;gap:1.4rem;margin-bottom:2rem;display:flex;position:relative}.service-block__num{color:var(--cyan-light);flex-shrink:0;font-size:3rem;font-weight:800;line-height:1}.service-block__title{margin-bottom:.4rem;font-size:clamp(1.15rem,3vw,1.5rem);font-weight:700;line-height:1.45}.service-block__lead{color:var(--text-muted);font-size:.9rem;line-height:1.7}.service-features{grid-template-columns:1fr;gap:1rem;margin-bottom:2rem;display:grid}@media (width>=861px){.service-features{grid-template-columns:repeat(2,1fr)}}.service-feature{background:var(--bg);border:1px solid var(--card-border);border-radius:10px;align-items:flex-start;gap:.8rem;padding:1rem;display:flex}.service-feature__check{color:var(--cyan);flex-shrink:0;font-size:1rem;font-weight:700}.service-feature__title{margin-bottom:.2rem;font-size:.9rem;font-weight:600;line-height:1.5}.service-feature__body{color:var(--text-muted);font-size:.82rem;line-height:1.6}.service-cta-row{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.price-badge{background:var(--cyan-light);color:var(--cyan);border:1.5px solid #07c3;border-radius:6px;padding:.5rem 1rem;font-size:.88rem;font-weight:700}.pricing-grid{grid-template-columns:1fr;gap:1.5rem;display:grid}@media (width>=861px){.pricing-grid{grid-template-columns:1fr 1fr}}.pricing-card{background:#ffffff0f;border:1.5px solid #ffffff1f;border-radius:20px;padding:1.8rem;position:relative;overflow:hidden}@media (width>=861px){.pricing-card{padding:2.5rem}}.pricing-card--main{background:#ffffff17;border-color:#7dd3fc66}.pricing-card__label{letter-spacing:.15em;color:var(--hero-light);text-transform:uppercase;margin-bottom:.6rem;font-size:.72rem;font-weight:700}.pricing-card__name{color:var(--white);margin-bottom:1.2rem;font-size:1.15rem;font-weight:700}.pricing-card__amount{color:var(--hero-light);margin-bottom:.4rem;font-size:2.2rem;font-weight:700;line-height:1.2}.pricing-card__note{color:#ffffff73;margin-bottom:1.5rem;font-size:.78rem;line-height:1.7}.pricing-features{flex-direction:column;gap:.6rem;margin-bottom:2rem;padding:0;list-style:none;display:flex}.pricing-features li{color:#ffffffbf;align-items:flex-start;gap:.6rem;font-size:.87rem;line-height:1.7;display:flex}.pricing-features li:before{content:"✓";color:var(--hero-light);flex-shrink:0;font-weight:700}.pricing-foot{color:#ffffff73;margin-top:1.2rem;font-size:.82rem;line-height:1.8}@media (width>=861px){.pricing-grid--trio{grid-template-columns:repeat(3,1fr)}}.pricing-card__amount--sm{margin-bottom:1.2rem;font-size:clamp(1.3rem,2.6vw,1.75rem)}.pricing-card__tax{color:#ffffff8c;margin-left:.25em;font-size:.52em;font-weight:400}.option-title{color:var(--white);justify-content:center;align-items:center;gap:.5rem;margin:3rem 0 1.2rem;font-size:1.05rem;font-weight:700;display:flex}.price-table{border-collapse:collapse;color:#ffffffd1;width:100%;max-width:700px;margin:0 auto;font-size:.9rem}.price-table tr{border-bottom:1px solid #ffffff2e}.price-table td{padding:.75rem .4rem;line-height:1.7}.price-table__price{text-align:right;white-space:nowrap;color:var(--hero-light);font-weight:700}.price-table a{color:var(--hero-light)}.section--dark .pricing-foot{text-align:center;color:#ffffffc7;flex-direction:column;align-items:center;gap:1rem;margin-top:2.5rem;font-size:.92rem;display:flex}.section--dark .pricing-foot p{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;display:flex}.check-list{gap:.7rem;padding:0;list-style:none;display:grid}.check-list>li{align-items:flex-start;gap:.6rem;font-size:.93rem;line-height:1.8;display:flex}.check-list>li>span:last-child{flex:1;min-width:0}.check-list__mark{color:var(--cyan);flex-shrink:0;margin-top:.25rem}.check-list__sub{padding:.6rem 0 0;list-style:none}.check-list__sub li{color:var(--cyan);font-size:.9rem;line-height:1.8}.init-price-grid{grid-template-columns:1fr;gap:1.2rem;margin-bottom:1rem;display:grid}@media (width>=600px){.init-price-grid{grid-template-columns:repeat(3,1fr)}}.init-price-card{background:var(--white);border:1px solid var(--card-border);text-align:center;border-radius:14px;padding:1.8rem 1.2rem}.init-price-card h3,.init-price-card h4{color:var(--text-muted);margin-bottom:.3rem;font-size:.88rem;font-weight:700}.init-price-card__pages{color:var(--text-muted);margin-bottom:1rem;font-size:.78rem;line-height:1.6}.init-price-card__price{color:var(--cyan);margin-bottom:.2rem;font-size:1.2rem;font-weight:700}.init-price-card__note{color:var(--text-muted);font-size:.75rem;line-height:1.6}.flow-steps{flex-direction:column;gap:0;padding:0;list-style:none;display:flex}.flow-step{align-items:flex-start;gap:1.2rem;padding:1.3rem 0;display:flex;position:relative}@media (width>=861px){.flow-step{gap:2rem}}.flow-step:not(:last-child):after{content:"";background:var(--card-border);width:2px;position:absolute;top:3.5rem;bottom:0;left:24px}.flow-step__num{background:var(--cyan);width:50px;height:50px;color:var(--white);z-index:1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:flex;position:relative}.flow-step__title{margin-bottom:.4rem;font-size:1rem;font-weight:700;line-height:1.5}.flow-step__body{color:var(--text-muted);font-size:.87rem;line-height:1.7}.flow-step__duration{color:var(--cyan);background:var(--cyan-light);border-radius:4px;margin-top:.4rem;padding:.2rem .6rem;font-size:.75rem;font-weight:700;display:inline-block}.greeting{grid-template-columns:1fr;align-items:start;gap:2rem;display:grid}.greeting__text{max-width:46rem}.greeting__title{margin-bottom:1.6rem;font-size:clamp(1.15rem,3vw,1.4rem);font-weight:700;line-height:1.5}.greeting__text p{color:var(--text-muted);margin-bottom:1.2rem;font-size:.95rem;line-height:2}.greeting__sig{text-align:right;margin-top:2rem;font-size:1rem;font-weight:600}.greeting__sig span{color:var(--text-muted);margin-bottom:.3rem;font-size:.82rem;display:block}.biz-grid{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:1.4rem;display:grid}.biz-card{background:var(--white);border:1px solid var(--card-border);border-radius:6px;padding:1.9rem 1.6rem;transition:transform .25s,border-color .25s;position:relative;overflow:hidden}.biz-card:after{content:"";background:var(--cyan);transform-origin:0;height:2px;transition:transform .35s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.biz-card:hover{border-color:var(--cyan);transform:translateY(-3px)}.biz-card:hover:after{transform:scaleX(1)}.biz-card__icon{color:var(--cyan);margin-bottom:1rem;display:flex}.biz-card__title{margin-bottom:.6rem;font-size:1rem;font-weight:700}.biz-card__body{color:var(--text-muted);font-size:.85rem;line-height:1.75}.access{grid-template-columns:1fr;align-items:start;gap:2rem;display:grid}@media (width>=861px){.access{grid-template-columns:1fr 1fr;gap:3rem}}.access__item{align-items:flex-start;gap:.8rem;margin-bottom:.9rem;display:flex}.access__icon{color:var(--cyan);flex-shrink:0;margin-top:.15rem;display:flex}.access__item strong{color:var(--text);font-size:.95rem}.access__item span{color:var(--text-muted);font-size:.9rem;line-height:1.8}.access__item a{color:var(--cyan);font-weight:700;text-decoration:none}.map-box{aspect-ratio:4/3;background:var(--cyan-light);color:var(--cyan);text-align:center;border:1px solid var(--card-border);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:1.2rem;text-decoration:none;transition:transform .2s,box-shadow .2s;display:flex;overflow:hidden}.map-box:hover{border-color:var(--cyan);transform:translateY(-3px)}.map-box__icon{color:var(--cyan);display:flex}.map-box p{font-size:.85rem;font-weight:600}.map-box small{color:var(--text-muted);font-size:.75rem;line-height:1.7}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero__slide,.hero__text{transition:none}.hero__photo img,.hero__svg{transition:none;transform:none}.js .reveal,.js .stagger>*{opacity:1;transition:none;transform:none}.card:hover,.news-card:hover,.biz-card:hover,.btn:hover,.map-box:hover,.init-price-card:hover,.img-box:hover img,.news-card:hover .news-card__thumb img{transform:none}.card,.news-card,.biz-card,.btn,.map-box,.img-box img,.news-card__thumb img{transition:none}}.list-more{text-align:right;margin-top:1rem}.list-more a{color:var(--cyan);font-size:.88rem;font-weight:700;text-decoration:none}.section__note{color:var(--text-muted);margin-top:1.2rem;font-size:.85rem;line-height:1.9}.section__note a{color:var(--cyan)}.section--dark .section__note{color:#ffffff80}@media (width<=600px){.service-block__header{flex-direction:column;gap:.4rem}.service-block__num{font-size:2.4rem}}
