.tp-page{margin:0}.tp-page .yrHeader__root{background:transparent;border-bottom:none;transition:background var(--duration) var(--ease);animation:tp-motionHeroRevealDown .7s cubic-bezier(.16,1,.3,1) .16s both}.tp-page .yrHeader__spacer{display:none}.tp-page.is-scrolled .yrHeader__root{background:var(--surface-page);border-bottom:1px solid var(--border-default)}.tp-motionHero{--motion-photo-opacity: .42;--motion-ease-out: cubic-bezier(.16, 1, .3, 1);--motion-ease-snap: cubic-bezier(.22, 1.15, .4, 1);--pointer-x: 50%;--pointer-y: 50%;position:relative;isolation:isolate;width:100%;min-height:100vh;min-height:100svh;overflow:hidden;color:var(--color-hero-ink);background:radial-gradient(circle at var(--pointer-x) var(--pointer-y),var(--color-hero-glow),transparent 20rem),radial-gradient(circle at 20% 10%,var(--color-hero-highlight),transparent 32%),var(--color-hero-paper);font-family:Arial Black,Noto Sans JP,Yu Gothic,Hiragino Kaku Gothic ProN,sans-serif}.tp-motionHeroPhoto{--photo-mask: linear-gradient( to bottom, transparent, var(--color-black) 20%, var(--color-black) 75%, transparent );position:absolute;top:50%;left:0;z-index:-2;display:block;width:auto;max-height:90%;object-fit:cover;transform:translateY(-50%);opacity:var(--motion-photo-opacity);-webkit-mask-image:var(--photo-mask);mask-image:var(--photo-mask);pointer-events:none;-webkit-user-select:none;user-select:none}.tp-motionHero:before{position:absolute;inset:0;z-index:-1;content:"";pointer-events:none;opacity:.42;background-image:radial-gradient(var(--color-hero-grain) .6px,transparent .7px),linear-gradient(104deg,transparent 0 49.5%,var(--color-hero-texture-line) 50%,transparent 50.5%);background-size:4px 4px,190px 190px;mix-blend-mode:multiply}.tp-motionHero:after{position:absolute;inset:0;z-index:20;content:"";pointer-events:none;border:0 solid var(--color-hero-ink);animation:tp-motionHeroFrameIn .9s var(--motion-ease-out) .12s both}.tp-motionHeroStage{--copy-size: var(--text-hero-copy-sp);--copy-gap: clamp(3rem, 12vw, 4.25rem);position:absolute;inset:clamp(5.5rem,10vh,7.5rem) 0 0}.tp-motionHeroTitle{position:absolute;inset:0;display:grid;grid-template-areas:"copy-top" "copy-gap" "copy-bottom";grid-template-rows:minmax(0,1fr) var(--copy-gap) minmax(0,1fr);gap:.8em}.tp-motionHeroOutlineBelt{position:absolute;top:50%;right:0;left:0;z-index:0;overflow:hidden;opacity:0;transform:translateY(-50%);animation:tp-motionHeroBeltShow .7s ease 1s forwards}.tp-motionHeroOutlineTrack{display:flex;width:max-content;will-change:transform;animation:tp-motionHeroMarquee 18s linear infinite}.tp-motionHeroOutlineWord{padding-right:.25em;color:transparent;font-size:var(--text-hero-outline-sp);font-weight:900;letter-spacing:-.09em;-webkit-text-stroke:1px var(--color-hero-outline);white-space:nowrap}.tp-motionHeroLine{position:absolute;top:50%;right:0;left:0;z-index:2;height:clamp(2px,.22vw,4px);overflow:hidden;background:var(--color-border-dark);box-shadow:var(--shadow-hero-line);transform:scaleX(0);transform-origin:left;animation:tp-motionHeroLineScan 1.1s var(--motion-ease-out) 1.65s forwards}.tp-motionHeroLine:after{position:absolute;top:-.35rem;right:-1rem;width:4rem;height:1rem;content:"";background:var(--color-white);filter:blur(7px)}.tp-motionHeroCopy{position:relative;z-index:3;width:100%;padding-inline:clamp(1.3rem,4vw,4.8rem);font-size:var(--copy-size);font-weight:900;letter-spacing:-.08em;line-height:.82;white-space:nowrap}.tp-motionHeroCopy--top{grid-area:copy-top;align-self:end;padding-left:.85rem}.tp-motionHeroCopy--bottom{grid-area:copy-bottom;align-self:start;padding-left:.9rem}.tp-motionHeroGlyph{display:inline-block;opacity:0;filter:blur(8px);transform:translate3d(-.4em,.15em,0) rotate(-8deg) scale(1.2);transform-origin:bottom left;will-change:transform,opacity,filter;animation:tp-motionHeroGlyphIn .95s var(--motion-ease-snap) forwards;animation-delay:var(--glyph-delay, 0ms)}.tp-motionHeroCopy--bottom .tp-motionHeroGlyph{transform:translate3d(.1em,.8em,0) rotate(5deg) scale(.82);transform-origin:top center}.tp-motionHeroSubcopy{position:absolute;right:auto;bottom:5.2rem;left:1.5rem;z-index:4;font-family:Yu Gothic,Noto Sans JP,sans-serif;font-size:var(--text-hero-subcopy-sp);font-weight:800;line-height:1.55;opacity:0;transform:translateY(1.5rem);animation:tp-motionHeroRevealUp .7s var(--motion-ease-out) 2.75s forwards}.tp-motionHeroSubcopy span{display:block}@keyframes tp-motionHeroFrameIn{0%{border-width:1.5rem;opacity:0}to{border-width:0;opacity:1}}@keyframes tp-motionHeroRevealDown{0%{opacity:0}to{opacity:1}}@keyframes tp-motionHeroRevealUp{to{opacity:1;transform:translateY(0)}}@keyframes tp-motionHeroBeltShow{to{opacity:1}}@keyframes tp-motionHeroMarquee{to{transform:translate(-50%)}}@keyframes tp-motionHeroLineScan{0%{transform:scaleX(0)}65%{transform:scaleX(1)}80%{transform:scaleX(.94)}to{transform:scaleX(1)}}@keyframes tp-motionHeroGlyphIn{65%{opacity:1;filter:blur(0);transform:translate3d(.025em,-.015em,0) rotate(.7deg) scale(.985)}to{opacity:1;filter:blur(0);transform:translateZ(0) rotate(0) scale(1)}}@media(min-width:768px){.tp-motionHeroCopy--top{padding-left:1.5rem}.tp-motionHeroCopy--bottom{padding-left:4.5rem}.tp-motionHeroOutlineBelt{top:50%}.tp-motionHeroSubcopy{right:clamp(1.5rem,7vw,8.5rem);bottom:3.4rem;left:auto}}@media(min-width:1024px){.tp-motionHeroPhoto{--photo-mask: linear-gradient( to bottom, transparent 0%, var(--color-black) 20%, var(--color-black) 75%, transparent 100% ), linear-gradient( to right, transparent 0%, var(--color-black) 12%, var(--color-black) 88%, transparent 100% );-webkit-mask-composite:source-in;mask-composite:intersect;top:5%;left:50%;width:auto;height:95%;max-width:100%;max-height:none;transform:translate(-50%)}.tp-motionHeroStage{--copy-size: var(--text-hero-copy-pc);--copy-gap: clamp(3.5rem, 8vw, 8.5rem)}.tp-motionHeroCopy--bottom{padding-left:clamp(2.7rem,6.5vw,8rem)}.tp-motionHeroOutlineWord{font-size:var(--text-hero-outline-pc)}.tp-motionHeroSubcopy{bottom:clamp(2.8rem,8vh,7rem);font-size:var(--text-hero-subcopy-pc)}}@media(prefers-reduced-motion:reduce){.tp-page .yrHeader__root,.tp-motionHero *,.tp-motionHero *:before,.tp-motionHero *:after,.tp-motionHero:after{animation-duration:1ms;animation-delay:0ms;animation-iteration-count:1}.tp-motionHeroOutlineTrack{transform:translate(-12%)}}.tp-message{position:relative;color:var(--text-primary);background:var(--surface-page)}.tp-messageInner{position:relative}.tp-messageRow{display:flex;align-items:center;gap:var(--space-8);padding:var(--space-9) 0;flex-wrap:wrap}.tp-messageCol{flex:1;min-width:min(100%,32rem)}.tp-messageLabel{font-size:var(--text-label);color:var(--text-muted);margin-bottom:var(--space-2)}.tp-messageHeading{font-size:var(--text-section-title-pc);margin-bottom:var(--space-5);max-width:560px}.tp-messageBody{font-size:var(--text-body-lg);font-weight:var(--weight-medium);line-height:var(--leading-body)}.tp-messagePortrait{width:min(100%,600px);flex:0 0 auto}@media(min-width:1024px){.tp-messagePortrait{width:min(100%,380px)}}.tp-jobsSection{padding:var(--section-space-sp) 0;background:var(--surface-page)}.tp-sectionHead{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4)}.tp-grid-3{display:grid;grid-template-columns:1fr}@media(min-width:768px){.tp-grid-3{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.tp-grid-3{grid-template-columns:repeat(3,1fr)}}.tp-jobsGrid{gap:var(--space-6);margin-top:var(--space-7)}.tp-eventsSection{padding:var(--section-space-sp) 0;background:var(--surface-page)}.tp-grid-2{display:grid;grid-template-columns:1fr}@media(min-width:768px){.tp-grid-2{grid-template-columns:repeat(2,1fr)}}.tp-eventsGrid{gap:var(--space-6);margin-top:var(--space-7)}.tp-welfareSection{padding:var(--section-space-sp) 0}.tp-sectionTint{background:var(--surface-tint)}.tp-grid-4{display:grid;grid-template-columns:1fr}@media(min-width:768px){.tp-grid-4{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.tp-grid-4{grid-template-columns:repeat(4,1fr)}}.tp-welfareGrid{gap:var(--space-6);margin-top:var(--space-7)}.tp-welfareIcon{width:44px;height:44px;border-radius:50%;border:1px solid var(--text-primary);display:grid;place-items:center;margin-bottom:var(--space-3)}.tp-welfareItemTitle{font-size:var(--text-body);font-weight:var(--weight-medium);margin-bottom:var(--space-1)}.tp-welfareItemBody{font-size:var(--text-label);color:var(--text-secondary);line-height:var(--leading-body)}.tp-welfareChecklist{display:flex;gap:var(--space-7);flex-wrap:wrap;margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--border-default)}.tp-welfareCheckItem{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-body)}.tp-welfareCheckIcon{width:20px;height:20px;border:1px solid var(--text-primary);display:inline-grid;place-items:center;flex:0 0 auto}.tp-aboutSection{padding:var(--section-space-sp) 0;background:var(--surface-page)}.tp-aboutGrid{gap:var(--space-4);margin-top:var(--space-7)}.tp-aboutCard{display:block;text-decoration:none;transition:opacity var(--duration) var(--ease)}.tp-aboutCard:hover{opacity:var(--hover-opacity)}.tp-aboutOverlay{position:absolute;inset:0;background:linear-gradient(0deg,var(--color-article-overlay) 0%,var(--color-article-overlay-clear) 55%);display:flex;align-items:flex-end;padding:var(--space-4)}.tp-aboutTitle{color:var(--text-inverse);font-size:var(--text-card-title-sp);font-weight:var(--weight-bold)}.tp-staffSection{padding:var(--section-space-sp) 0;background:var(--surface-page)}.tp-staffCarouselWrap{margin-top:var(--space-7)}.tp-noteSection{padding:var(--section-space-sp) 0}.tp-noteGrid{gap:var(--space-6);margin-top:var(--space-7)}.tp-photoSection{padding:0 0 var(--section-space-sp);background:var(--surface-page)}.tp-photo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0}@media(min-width:768px){.tp-photo-grid{grid-template-columns:repeat(4,1fr)}}.tp-faqSection{padding:0 0 var(--section-space-sp);background:var(--surface-page)}.tp-faqGrid{display:grid;grid-template-columns:1fr;gap:var(--space-7)}@media(min-width:1024px){.tp-faqGrid{grid-template-columns:320px 1fr;gap:var(--space-8);align-items:start}}@media(min-width:1024px){.tp-jobsSection,.tp-eventsSection,.tp-welfareSection,.tp-aboutSection,.tp-staffSection,.tp-noteSection{padding:var(--section-space-pc) 0}.tp-photoSection,.tp-faqSection{padding:0 0 var(--section-space-pc)}}
