:root{--accent:oklch(81.7% .096 227.5);--deep:oklch(51.5% .182 266.4);--ink:#333;--ink-card:#4d4d4d;--ink-meta:#6a6a6a;--ink-invert:#fff;--bg:#fff;--bg-sub:#f4f7f9;--line:#8f8f8f;--footer-bg:#333;--sns-ink:#00001c;--focus-yellow:#ffd43d;--focus-black:#000;--chip-bg:#7cd0f480;--card-1:oklch(54% .12 200);--card-2:oklch(54% .12 240);--card-3:oklch(54% .12 280);--card-1-hover:oklch(48% .12 200);--card-2-hover:oklch(48% .12 240);--card-3-hover:oklch(48% .12 280);--card-sub:#fff;--filter-1:oklch(48% .12 240);--filter-1-hover:oklch(40% .12 240);--filter-2:oklch(48% .12 200);--filter-2-hover:oklch(40% .12 200);--container:75rem;--gutter:1.25rem;--header-h:4.75rem;--tap:2.75rem;--radius:4px;--jp:"Hiragino Sans", "Noto Sans JP", "Noto Sans CJK JP", "Yu Gothic UI", "Yu Gothic", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;--en:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--scrim:linear-gradient(100deg, #080e1694 0%, #080e1670 38%, #080e1629 68%, #080e160f 100%);--text-glow:0 0 10px #00000080, 0 0 24px #00000073}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--jp);letter-spacing:.02em;-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;font-weight:400;line-height:1.7;overflow-x:hidden}img,video,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}h1,h2,h3,h4{margin:0;font-weight:400;line-height:1.4}ul{margin:0;padding:0;list-style:none}p{margin:0}button{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:4px solid var(--focus-black);outline-offset:2px;box-shadow:0 0 0 2px var(--focus-yellow)}.skip{z-index:200;background:var(--bg);color:var(--ink);border:2px solid var(--ink);padding:12px 18px;font-weight:700;transition:top .18s;position:absolute;top:-56px;left:8px}.skip:focus{top:8px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.container{width:min(var(--container), 100% - var(--gutter) * 2);margin-inline:auto}.site-header{z-index:50;padding:.75rem var(--gutter);min-height:var(--header-h);justify-content:space-between;align-items:center;gap:1rem;display:flex;position:fixed;inset-block-start:0;inset-inline:0}.site-header:before{content:"";z-index:-1;backdrop-filter:blur(8px);background:#ffffffeb;position:absolute;inset:0;box-shadow:0 1px #00000014}body:has(.hero) .site-header:before{display:none}body:has(.hero).is-past-hero .site-header:before{display:block}@media (width>=68rem){body:has(.hero).is-past-hero .gnav__list{background:0 0}}body:has(.hero).is-past-hero .burger{background:0 0}body.nav-open .site-header:before{background:var(--bg);backdrop-filter:none;display:block}body.nav-open .burger{background:0 0}.brand{flex:none;align-items:center;display:flex}.brand__img{width:auto;height:2.25rem;max-width:calc(100vw - var(--gutter) * 2 - var(--tap) - 1rem);object-fit:contain;object-position:left center}.gnav__list{display:none}.burger{min-width:var(--tap);min-height:var(--tap);border-radius:var(--radius);color:var(--ink);cursor:pointer;background:#ffffff80;border:0;place-items:center;display:grid}body:not(:has(.hero)) .burger{background:0 0}.burger__close,.burger[aria-expanded=true] .burger__open{display:none}.burger[aria-expanded=true] .burger__close{display:block}.btn__text{flex-direction:column;align-items:flex-start;gap:2px;display:flex}@media (width<=67.99rem){.gnav__list.is-open{inset:var(--header-h) 0 0;padding:1rem var(--gutter) 3rem;background:var(--bg);overscroll-behavior:contain;flex-direction:column;gap:0;display:flex;position:fixed;overflow-y:auto}.gnav__list.is-open>li{border-block-end:1px solid var(--line)}.gnav__list.is-open a{align-items:baseline;gap:.75rem;min-height:3.25rem;padding:.5rem .25rem;display:flex}.gnav__list.is-open .en{font-family:var(--en);letter-spacing:.12em;color:var(--ink-meta);min-width:5.5rem;font-size:.75rem}.gnav__list.is-open .ja{font-size:1.0625rem;font-weight:700}.gnav__list.is-open .gnav__cta{border:0;margin-block-start:1rem}.gnav__list.is-open .btn{background:var(--ink);color:var(--ink-invert);border-radius:var(--radius);justify-content:flex-start;padding:.75rem 1rem}.gnav__list.is-open .btn .en{color:#d7dde2;min-width:0}.gnav__list.is-open .btn .ja{font-size:1rem;line-height:1.3}body.nav-open{overflow:hidden}}@media (width>=68rem){.site-header{gap:1.5rem;padding-inline:2rem}.brand__img{height:2.5rem}.burger{display:none}.gnav__list{border-radius:var(--radius);background:#ffffff9e;flex-direction:row;align-items:center;gap:.25rem;padding:.3125rem .625rem;display:flex}body:not(:has(.hero)) .gnav__list{background:0 0}.gnav__list>li{display:flex}.gnav__list a{min-height:var(--tap);flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:.5rem .75rem;display:flex}.gnav__list .en{font-family:var(--en);letter-spacing:.08em;color:var(--ink);font-size:.6875rem;font-weight:400;line-height:1}.gnav__list .ja{white-space:nowrap;font-size:.9375rem;font-weight:700;line-height:1.2}.gnav__list a[aria-current=page] .ja{color:var(--deep)}.gnav__cta{margin-inline-start:.5rem}.gnav__list .btn{background:var(--ink);color:var(--ink-invert);border-radius:var(--radius);flex-direction:row;align-items:center;gap:.5rem;padding:.5rem .875rem;transition:background .25s}.gnav__list .btn .en{color:#d7dde2}.gnav__list .btn .ja{font-size:.875rem;font-weight:700}}@media (width>=68rem) and (hover:hover){.gnav__list .btn:hover{background:var(--deep)}.gnav__list a:not(.btn):hover .ja{color:var(--deep)}}.hero{isolation:isolate;align-items:center;min-height:100svh;display:grid;position:relative;overflow:hidden}.hero__video{z-index:-2;object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.hero__scrim{z-index:-1;background-image:var(--scrim);position:absolute;inset:0}.hero__inner{padding-block:calc(var(--header-h) + 2rem) 6rem;color:var(--ink-invert)}.hero__title{letter-spacing:.02em;text-shadow:var(--text-glow);font-size:clamp(2.25rem,.8rem + 4.27vw,4rem);font-weight:700;line-height:1.25}.hero__rule{background:var(--ink-invert);transform-origin:0;width:100%;max-width:34rem;height:1px;margin-block:1rem;animation:1.6s ease-out both rule-in}.hero__lead{text-shadow:var(--text-glow);max-width:34rem;font-size:clamp(.9375rem,.68rem + .76vw,1.25rem);font-weight:400;line-height:1.8}@supports (word-break:auto-phrase){.hero__lead,.hero__title{word-break:auto-phrase;text-wrap:pretty}}.hero__br{display:none}@keyframes rule-in{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.hero__scroll{width:max-content;color:var(--ink-invert);text-shadow:var(--text-glow);min-height:var(--tap);flex-direction:column;align-items:center;gap:.75rem;margin-inline:auto;padding:.5rem 1rem;display:flex;position:absolute;inset-block-end:3.5rem;inset-inline:0}.hero__scroll-label{font-family:var(--en);letter-spacing:.24em;font-size:.875rem;font-weight:700}.hero__scroll-track{filter:drop-shadow(0 0 8px #00000073);border:2px solid;border-radius:50%;place-items:center;width:3.25rem;height:3.25rem;animation:1.8s ease-in-out infinite nudge;display:grid}.hero__scroll-track .icon{stroke-width:2.2px}@keyframes nudge{0%,to{transform:translateY(0)}50%{transform:translateY(7px)}}@media (width>=34rem){.hero__br{display:inline}}.cards-zone{padding-block:clamp(2.5rem,1.26rem + 3.66vw,4rem);scroll-margin-block-start:var(--header-h)}.cards{grid-template-columns:1fr;gap:.75rem;display:grid}.card-tile{border-radius:var(--radius);min-height:clamp(11rem,8.51rem + 7.32vw,14rem);color:var(--ink-invert);flex-direction:column;justify-content:space-between;gap:1rem;padding:clamp(1.25rem,.84rem + 1.22vw,1.75rem);transition:transform .28s,box-shadow .28s,background-color .28s;display:flex;position:relative;box-shadow:0 2px 5px #0003}.card-tile--1{background:var(--card-1)}.card-tile--2{background:var(--card-2)}.card-tile--3{background:var(--card-3)}.card-tile__icon{background:#ffffff29;border-radius:50%;place-items:center;width:2.75rem;height:2.75rem;display:grid}.card-tile__h{letter-spacing:.02em;font-size:clamp(1.1875rem,.93rem + .76vw,1.5rem);font-weight:700;line-height:1.5}.card-tile__foot{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.card-tile__labels{flex-direction:column;gap:2px;display:flex}.card-tile__labels .ja{letter-spacing:.05em;font-size:1rem;font-weight:700}.card-tile__labels .en{font-family:var(--en);letter-spacing:.13em;color:var(--card-sub);font-size:.75rem}.card-tile__arrow{border:1px solid;border-radius:50%;flex:none;place-items:center;width:2.125rem;height:2.125rem;transition:transform .28s;display:grid}@media (hover:hover){.card-tile:hover{transform:translateY(-5px);box-shadow:0 14px 34px #1428463d}.card-tile--1:hover{background:var(--card-1-hover)}.card-tile--2:hover{background:var(--card-2-hover)}.card-tile--3:hover{background:var(--card-3-hover)}.card-tile:hover .card-tile__arrow{transform:translate(4px)}}@media (width>=34rem){.cards{grid-template-columns:repeat(3,1fr)}}.section{padding-block:clamp(3rem,.1rem + 8.54vw,6.5rem)}.section--tight{padding-block-start:clamp(2.5rem,.84rem + 4.88vw,4.5rem)}.s-label{letter-spacing:.12em;color:var(--ink-meta);margin:0 0 .375rem;font-size:.875rem;font-weight:700}.s-head{justify-content:space-between;align-items:flex-end;gap:1.25rem;margin-block-end:1.75rem;display:flex}.s-head h2{font-family:var(--en);letter-spacing:.12em;font-size:clamp(1.625rem,1.31rem + .91vw,2rem);font-weight:700;line-height:1.2}.viewmore{width:var(--tap);height:var(--tap);border:1px solid var(--ink);color:var(--ink);border-radius:50%;flex:none;place-items:center;transition:background .25s,color .25s;display:grid}.link-more{min-height:var(--tap);letter-spacing:.03em;white-space:nowrap;align-items:center;font-size:.9375rem;display:inline-flex}.link-more:after{content:"›";margin-inline-start:6px;font-size:1.125rem}.btn-more{min-height:var(--tap);border:1px solid var(--ink);color:var(--ink);letter-spacing:.06em;border-radius:999px;align-items:center;gap:.75rem;padding:0 1.75rem;font-size:.9375rem;font-weight:700;transition:background .25s,color .25s;display:inline-flex}.btn-more span{transition:transform .25s}@media (hover:hover){.viewmore:hover{background:var(--ink);color:var(--ink-invert)}.link-more:hover{color:var(--deep);text-underline-offset:4px;text-decoration:underline}.btn-more:hover{background:var(--ink);color:var(--ink-invert)}.btn-more:hover span{transform:translate(4px)}}.page-body{padding-block:clamp(2.5rem,1.26rem + 3.66vw,4rem) clamp(4rem,2.34rem + 4.88vw,6rem)}.page-lead{max-width:40em;color:var(--ink-card);margin:1.5rem 0 0}.backlink{min-height:var(--tap);align-items:center;margin-block-start:3.5rem;font-size:.9375rem;display:inline-flex}@media (hover:hover){.backlink:hover{color:var(--deep);text-underline-offset:4px;text-decoration:underline}}.news li{border-block-end:1px solid #e4e8eb}.news a{min-height:var(--tap);grid-template-columns:1fr;align-items:baseline;gap:.25rem;padding:1.125rem .25rem;display:grid}.news time{font-family:var(--en);color:var(--ink-meta);letter-spacing:.04em;font-size:.875rem}.news__title{letter-spacing:.02em;font-size:1rem;line-height:1.8}.chip{background:var(--chip-bg);color:var(--ink);border-radius:2px;margin-inline-end:.625rem;padding:1px 8px;font-size:.875rem;font-weight:700;line-height:1.85;display:inline-block}@media (width>=34rem){.news a{grid-template-columns:8.25rem 1fr;gap:1rem}}@media (hover:hover){.news a:hover .news__title{color:var(--deep);text-underline-offset:4px;text-decoration:underline}}.clients{padding-block-end:clamp(3.5rem,1.84rem + 4.88vw,5.5rem)}.marquee-row{align-items:center;height:8.75rem;display:flex;overflow:hidden}.marquee{align-items:center;gap:1rem;width:max-content;animation:44s linear infinite slide;display:flex}.marquee--rev{animation-direction:reverse}.marquee img{flex:none;height:auto}@keyframes slide{to{transform:translate(-50%)}}@media (hover:hover){.marquee-row:hover .marquee{animation-play-state:paused}}.site-footer{background:var(--footer-bg);color:var(--ink-invert)}.f-rule{opacity:.55;background:#fff;width:100%;height:.5px}.f-main{flex-direction:column;gap:2.5rem;padding-block:clamp(2.5rem,.43rem + 6.1vw,5rem);display:flex}.f-left{flex-direction:column;align-items:flex-start;gap:1.25rem;display:flex}.f-logo{width:auto;height:2.5rem}.f-tag{letter-spacing:.2em;font-size:.875rem;font-weight:400;line-height:1.6}.f-privacy a{min-height:var(--tap);letter-spacing:.1em;text-underline-offset:3px;align-items:center;font-size:.875rem;text-decoration:underline;display:inline-flex}.f-sns{flex-wrap:wrap;gap:1rem;display:flex}.f-sns a{background:var(--bg);width:3rem;height:3rem;color:var(--sns-ink);border:2px solid var(--sns-ink);border-radius:50%;place-items:center;transition:transform .3s;display:grid}.f-right{flex-direction:column;gap:2rem;display:flex}.f-col__head{font-family:var(--en);align-items:center;gap:1.5rem;margin-block-end:.25rem;font-size:1.125rem;font-weight:400;line-height:1.4;display:flex}.f-col__bar{opacity:.55;background:#fff;flex:1;height:.5px}.f-list{flex-direction:column;display:flex}.f-list a{min-height:var(--tap);align-items:center;padding-block:.5rem;font-size:.9375rem;line-height:1.4;display:flex}.f-bottom{min-height:3.125rem;padding-inline:var(--gutter);justify-content:center;align-items:center;display:flex;position:relative}.f-copy{font-family:var(--en);font-size:.875rem;font-weight:400}.f-top{width:var(--tap);height:var(--tap);background:var(--bg);color:var(--ink);border-radius:50%;place-items:center;display:grid;position:absolute;inset-inline-end:var(--gutter)}@media (hover:hover){.f-sns a:hover{transform:translateY(-3px)}.f-list a:hover{text-underline-offset:3px;text-decoration:underline}}@media (width>=34rem){.f-list--2col{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.5rem;display:grid}}@media (width>=53rem){.f-main{flex-direction:row;justify-content:space-between;gap:4rem}.f-left{flex:none}.f-right{flex-direction:row;flex:1;gap:3rem;max-width:34rem}.f-col{flex:1}.f-logo{height:3rem}.f-bottom{padding-inline:2.5rem}.f-top{inset-inline-end:2.5rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee,.hero__scroll-track{animation:none}.hero__rule{animation:none;transform:none}}.icon[data-astro-cid-ccg5yoga]{flex:none;display:block}
