@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.flex-shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}:root{--navy-900:#0a1d33;--navy-800:#0d2740;--navy-700:#143350;--navy-600:#1c4366;--teal-900:#0a4a4a;--teal-800:#0c5e5d;--teal-700:#0e7c7b;--teal-600:#1a9b9a;--teal-500:#3cb6b3;--teal-400:#6ec9c6;--teal-300:#a9dcdb;--teal-200:#cfecea;--teal-100:#e7f5f4;--teal-50:#f3faf9;--orange:#ff6b4a;--orange-dark:#ef5836;--ink:#1f2933;--ink-mute:#5b6573;--ink-soft:#8a93a0;--line:#e3e8ee;--bg:#fff;--bg-soft:#f6f8fa;--max:1200px;--serif:var(--font-noto-serif-jp), "Hiragino Mincho ProN", serif;--sans:var(--font-noto-sans-jp), "Hiragino Kaku Gothic ProN", "Yu Gothic", system-ui, sans-serif;--display:var(--font-inter), "Helvetica Neue", Arial, sans-serif}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--sans);color:var(--ink);background:var(--bg);font-feature-settings:"palt" 1;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.7}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:none}.wrap{max-width:var(--max);margin:0 auto;padding:0 32px;position:relative}.deco-bg-text{font-family:var(--display);letter-spacing:-.02em;color:#0000;-webkit-text-stroke:1px #0e7c7b14;pointer-events:none;-webkit-user-select:none;user-select:none;white-space:nowrap;font-weight:800;position:absolute}.deco-circle{pointer-events:none;border-radius:50%;position:absolute}.deco-ring{pointer-events:none;border:1.5px solid #0e7c7b14;border-radius:50%;position:absolute}.deco-hex{pointer-events:none;position:absolute;overflow:visible}.js-ready .reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(26px)}.js-ready .reveal.in-view{opacity:1;transform:none}.reveal-d1{transition-delay:80ms}.reveal-d2{transition-delay:.16s}.reveal-d3{transition-delay:.24s}.reveal-d4{transition-delay:.32s}@keyframes blob-morph{0%,to{border-radius:68% 32% 44% 56%/38% 62%}33%{border-radius:44% 56% 68% 32%/58% 38% 62% 42%}66%{border-radius:56% 44% 32% 68%/42% 58%}}@keyframes blob-morph2{0%,to{border-radius:40% 60% 65% 35%/50% 40% 60% 50%}40%{border-radius:60% 40% 35% 65%/40% 60%}70%{border-radius:50%/60% 40%}}.team-blob.tb1{animation:9s ease-in-out infinite blob-morph}.team-blob.tb2{animation:12s ease-in-out infinite blob-morph2}.voice-blob{animation:11s ease-in-out infinite blob-morph2}.scroll-progress{z-index:60;background:linear-gradient(90deg, var(--teal-600), var(--teal-400));pointer-events:none;width:0%;height:3px;transition:width .1s linear;position:fixed;top:0;left:0}@keyframes btn-pulse{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}.nav-entry{position:relative}.nav-entry:before{content:"";border:2px solid var(--orange);pointer-events:none;border-radius:999px;animation:2s ease-out infinite btn-pulse;position:absolute;inset:-4px}.news-row{position:relative;overflow:hidden}.news-row:before{content:"";background:var(--teal-600);transform-origin:bottom;width:3px;transition:transform .25s;position:absolute;top:0;bottom:0;left:0;transform:scaleY(0)}.news-row:hover:before{transform:scaleY(1)}@keyframes spin-up{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}.back-to-top{background:var(--teal-700);color:#fff;cursor:pointer;z-index:40;opacity:0;pointer-events:none;border:none;border-radius:50%;place-items:center;width:46px;height:46px;transition:opacity .3s,transform .3s,background .2s;display:grid;position:fixed;bottom:32px;right:28px;transform:translateY(12px);box-shadow:0 4px 16px -4px #0e7c7b80}.back-to-top.visible{opacity:1;pointer-events:auto;transform:none}.back-to-top:hover{background:var(--teal-600)}.back-to-top:hover svg{animation:.5s spin-up}.back-to-top svg{width:18px;height:18px}.mobile-nav a{opacity:0;transition:opacity .3s,transform .3s;transform:translate(24px)}.mobile-nav.is-open a{opacity:1;transform:none}.mobile-nav.is-open a:first-child{transition-delay:50ms}.mobile-nav.is-open a:nth-child(2){transition-delay:.1s}.mobile-nav.is-open a:nth-child(3){transition-delay:.15s}.mobile-nav.is-open a:nth-child(4){transition-delay:.2s}.mobile-nav.is-open a:nth-child(5){transition-delay:.25s}.mobile-nav.is-open a:nth-child(6){transition-delay:.3s}.tilt-card{transform-style:preserve-3d;will-change:transform;transition:transform .1s,box-shadow .1s}.tilt-card .tilt-shine{border-radius:inherit;opacity:0;pointer-events:none;background:radial-gradient(circle,#ffffff26 0%,#0000 70%);transition:opacity .2s;position:absolute;inset:0}.site-header{z-index:50;background:0 0;border-bottom:none;transition:background .4s,box-shadow .4s,-webkit-backdrop-filter .4s,backdrop-filter .4s;position:fixed;top:0;left:0;right:0}.site-header:not(.scrolled) .nav a{color:#ffffffeb}.site-header:not(.scrolled) .nav a:after{background:#ffffffb3}.site-header:not(.scrolled) .nav a:hover,.site-header:not(.scrolled) .brand-name{color:#fff}.site-header:not(.scrolled) .brand-logo img{filter:brightness(0)invert()}.site-header.scrolled{-webkit-backdrop-filter:saturate(140%)blur(10px);backdrop-filter:saturate(140%)blur(10px);background:#fffffff7;border-bottom:1px solid #0e7c7b2e;box-shadow:0 2px 24px -4px #0a1d331f}.site-header .inner{height:72px;max-width:var(--max);justify-content:space-between;align-items:center;margin:0 auto;padding:0 32px;display:flex}.brand{align-items:center;gap:10px;display:flex}.brand-logo{place-items:center;width:42px;height:42px;display:grid;overflow:hidden}.brand-logo img{object-fit:contain;width:100%;height:100%}.brand-name{font-family:var(--display);letter-spacing:.01em;color:var(--navy-800);font-size:22px;font-weight:700}.nav{align-items:center;gap:36px;display:flex}.nav a{font-family:var(--display);letter-spacing:.18em;color:var(--navy-800);padding:6px 0;font-size:13px;font-weight:600;transition:color .2s;position:relative}.nav a:hover{color:var(--teal-700)}.nav a:after{content:"";background:var(--teal-600);transform-origin:0;height:2px;transition:transform .25s;position:absolute;bottom:-2px;left:0;right:0;transform:scaleX(0)}.nav a:hover:after{transform:scaleX(1)}.nav-entry{background:var(--orange);letter-spacing:.12em;white-space:nowrap;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-width:160px;height:38px;padding:0 36px;font-size:12px;font-weight:700;line-height:1;transition:background .2s,transform .2s;display:inline-flex;color:#fff!important}.nav-entry:hover{background:var(--orange-dark);transform:translateY(-1px)}.nav-entry:after{display:none!important}.hero{color:#fff;background:var(--teal-900);height:740px;margin-top:0;position:relative;overflow:hidden}.hero-slides{z-index:0;position:absolute;inset:0}.hero-slide{opacity:0;transition:opacity 1.2s ease-in-out;position:absolute;inset:0}.hero-slide.is-active{opacity:1}.hero-slide img{object-fit:cover;object-position:82% 20%;width:100%;height:100%;animation:12s ease-out forwards kenburns}@keyframes kenburns{0%{transform:scale(1.06)}to{transform:scale(1)}}.hero-slides:after{content:"";background:linear-gradient(105deg,#084646d1 0%,#08464685 42%,#0846462e 72%,#0846460a 100%);position:absolute;inset:0}.hero-dots{z-index:5;gap:10px;display:flex;position:absolute;bottom:96px;left:50%;transform:translate(-50%)}.hero-dots button{background:#ffffff59;border-radius:2px;width:34px;height:3px;transition:background .3s,width .3s}.hero-dots button.is-active{background:#fff;width:48px}.hero-inner{z-index:2;max-width:var(--max);flex-direction:column;justify-content:center;height:100%;margin:0 auto;padding:80px 32px 0;display:flex;position:relative}.hero h1{font-family:var(--display);letter-spacing:-.01em;color:#fff;text-shadow:0 2px 40px #003c3c80;font-size:clamp(56px,7.4vw,108px);font-weight:800;line-height:.98}@keyframes hero-line-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.hero h1 .l1{animation:.9s cubic-bezier(.22,1,.36,1) .2s both hero-line-in;display:block}.hero h1 .l2{animation:.9s cubic-bezier(.22,1,.36,1) .45s both hero-line-in;display:block}.hero-tag{animation:.8s cubic-bezier(.22,1,.36,1) .7s both hero-line-in}.hero-lead{animation:.8s cubic-bezier(.22,1,.36,1) .9s both hero-line-in}.hero-cta{animation:.8s cubic-bezier(.22,1,.36,1) 1.1s both hero-line-in}.hero-tag{font-family:var(--sans);letter-spacing:.04em;color:#fff;margin-top:28px;font-size:24px;font-weight:600}.hero-lead{color:#ffffffe0;max-width:560px;margin-top:18px;font-size:16px;line-height:2.1}.hero-cta{flex-wrap:wrap;gap:18px;margin-top:40px;display:flex}.btn{letter-spacing:.06em;border-radius:999px;justify-content:space-between;align-items:center;gap:24px;min-width:230px;height:54px;padding:0 22px 0 28px;font-size:15px;font-weight:700;transition:transform .2s,box-shadow .2s,background .2s,color .2s;display:inline-flex}.btn .arr{background:#ffffff2e;border-radius:50%;place-items:center;width:26px;height:26px;transition:background .2s,transform .2s;display:grid}.btn .arr svg{width:12px;height:12px}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--orange);color:#fff;box-shadow:0 8px 24px -8px #ff6b4a99}.btn-primary:hover{background:var(--orange-dark);box-shadow:0 14px 30px -10px #ff6b4ab3}.btn-primary .arr{background:#ffffff40}.btn-outline{color:#fff;background:0 0;border:1.5px solid #ffffffb3}.btn-outline:hover{background:#ffffff1a;border-color:#fff}.btn-outline .arr{background:#ffffff26;border:1px solid #fff6}.stats{background:#fff;padding:64px 0 50px;position:relative;overflow:hidden}.stats .deco-circle.s1{background:radial-gradient(circle, var(--teal-100) 0%, #e7f5f400 70%);width:340px;height:340px;top:30%;left:-120px}.stats .deco-circle.s2{background:radial-gradient(circle, var(--teal-200) 0%, #cfecea00 70%);width:260px;height:260px;top:-40px;right:-90px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:18px;display:grid;position:relative}.stat-card{border:1px solid var(--line);text-align:center;background:#fff;border-radius:14px;padding:32px 18px 26px;transition:transform .25s,box-shadow .25s;position:relative;overflow:hidden;box-shadow:0 1px #14284605}.stat-card:before{content:"";background-image:radial-gradient(var(--teal-300) 1.2px, transparent 1.5px);opacity:.35;background-size:10px 10px;border-radius:50%;width:120px;height:120px;position:absolute;top:-30px;right:-30px}.stat-card:hover{transform:translateY(-6px);box-shadow:0 16px 40px -8px #0e7c7b33}.stat-card:hover .stat-num{color:var(--teal-800)}.stat-num{font-family:var(--display);color:var(--teal-700);letter-spacing:-.02em;font-size:64px;font-weight:700;line-height:1;position:relative}.stat-num .unit{margin-left:2px;font-size:30px;font-weight:600}.stat-label{color:var(--ink);margin-top:10px;font-size:14px;font-weight:600;line-height:1.5;position:relative}.stat-icon{place-items:center;width:88px;height:88px;margin:14px auto 0;display:grid;position:relative}.stat-icon img{object-fit:contain;width:100%;height:100%}.team-section{background:linear-gradient(180deg, #fff 0%, var(--teal-50) 100%);padding:80px 0 100px;position:relative;overflow:hidden}.team-section .deco-bg-text{-webkit-text-stroke:1px #0e7c7b12;font-size:200px;top:30px;right:-40px}.team-section .dot-wave{opacity:.6;pointer-events:none;height:80px;position:absolute;top:24px;left:0;right:0}.team-section .deco-circle.t1{background:radial-gradient(circle, var(--teal-100) 0%, #e7f5f400 70%);width:480px;height:480px;bottom:-200px;left:-200px}.team-blob{pointer-events:none;background:#0e7c7b0e;border-radius:60% 40% 55% 45%/45% 55%;position:absolute}.team-blob.tb1{border-radius:68% 32% 44% 56%/38% 62%;width:420px;height:340px;top:40px;right:-80px;transform:rotate(-12deg)}.team-blob.tb2{background:#0e7c7b09;border-radius:40% 60% 65% 35%/50% 40% 60% 50%;width:240px;height:200px;bottom:60px;right:120px;transform:rotate(18deg)}.team-dots{pointer-events:none;background-image:radial-gradient(#0e7c7b1f 1.2px,#0000 1.4px);background-size:18px 18px;width:320px;height:100%;position:absolute;top:0;right:0;-webkit-mask-image:linear-gradient(270deg,#0009 0%,#0000 100%);mask-image:linear-gradient(270deg,#0009 0%,#0000 100%)}.team-flow{pointer-events:none;opacity:.5;width:100%;height:180px;position:absolute;bottom:0;left:0}.team-head{text-align:center;z-index:2;margin-bottom:46px;position:relative}.team-head h2{font-family:var(--display);letter-spacing:.01em;color:var(--navy-800);font-size:38px;font-weight:700}.team-head .jp{font-family:var(--serif);letter-spacing:.06em;color:var(--teal-800);margin-top:20px;font-size:clamp(22px,3vw,34px);font-weight:600;line-height:1.5;display:inline-block;position:relative}.team-head .jp:after{content:"";background:var(--teal-500);border-radius:2px;width:48px;height:2px;margin:10px auto 0;display:block}.team-head .en{font-family:var(--display);letter-spacing:.18em;color:var(--ink-soft);margin-top:8px;font-size:12px;font-weight:600}.team-head .sub{color:var(--ink-mute);font-size:14px;font-family:var(--serif);margin-top:12px}.team-lead{text-align:center;max-width:900px;color:var(--ink-mute);z-index:2;margin:0 auto 48px;font-size:15px;line-height:2;position:relative}.team-cards{z-index:2;grid-template-columns:repeat(3,1fr);gap:22px;display:grid;position:relative}.team-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:26px 24px;transition:transform .25s,box-shadow .25s;position:relative;overflow:hidden;box-shadow:0 1px #14284605}.team-card:after{content:"";background:radial-gradient(circle,#3cb6b314 0%,#0000 70%);border-radius:50%;width:140px;height:140px;position:absolute;bottom:-40px;right:-40px}.team-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px -22px #1428463d}.team-card .num{font-family:var(--display);letter-spacing:.1em;color:#fff;background:var(--teal-700);z-index:2;border-radius:999px;margin-bottom:14px;padding:4px 12px;font-size:14px;font-weight:700;display:inline-block;position:relative}.team-card h3{color:var(--navy-800);z-index:2;margin-bottom:14px;font-size:20px;font-weight:700;line-height:1.5;position:relative}.team-card p{color:var(--ink-mute);z-index:2;font-size:13px;line-height:1.9;position:relative}.team-card .illust{z-index:2;place-items:center;height:130px;margin-top:18px;display:grid;position:relative}.team-card .illust img{object-fit:contain;width:auto;max-width:100%;height:110px}.team-section .eng-track-wrap{margin-top:56px}.eng-track-wrap{z-index:2;padding:16px 0 24px;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 7% 93%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 7% 93%,#0000 100%)}.eng-track{align-items:flex-end;gap:14px;width:max-content;animation:32s linear infinite eng-marquee;display:flex}@keyframes eng-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.eng-card{background:var(--teal-200);border-radius:12px;flex-shrink:0;overflow:hidden}.eng-card img{object-fit:cover;object-position:center top;width:100%;height:100%;display:block}.ec-tall{width:196px;height:300px}.ec-port{width:180px;height:258px}.ec-slim{width:154px;height:288px}.ec-wide{width:370px;height:234px}.ec-land{width:308px;height:218px}.ec-sq{width:244px;height:244px}.ec-sqsm{width:200px;height:200px}.eng-deco{pointer-events:none;border-radius:10px;flex-shrink:0}.ed-teal-lg{background:#0e7c7b47;align-self:center;width:72px;height:88px}.ed-teal-sm{background:#0e7c7b33;align-self:flex-start;width:52px;height:52px;margin-top:48px}.ed-teal-sq{background:#0e7c7b59;align-self:flex-end;width:64px;height:64px;margin-bottom:20px}.ed-ring{background:0 0;border:3px solid #0e7c7b40;border-radius:50%;align-self:center;width:88px;height:88px}.ed-line{background:linear-gradient(#0000,#0e7c7b4d,#0000);border-radius:2px;align-self:center;width:3px;height:140px}.eng-bottom-wave{pointer-events:none;width:100%;height:60px;display:block;position:absolute;bottom:0;left:0}@media (max-width:560px){.engineers{padding:48px 0 56px}.ec-tall{width:140px;height:210px}.ec-port{width:130px;height:186px}.ec-slim{width:112px;height:208px}.ec-wide{width:260px;height:164px}.ec-land{width:220px;height:154px}.ec-sq{width:170px;height:170px}.ec-sqsm{width:144px;height:144px}.eng-track{gap:10px;animation-duration:22s}}.divider-wave{pointer-events:none;width:100%;height:80px;display:block}.rep{background:#fff;padding:90px 0 100px;position:relative;overflow:hidden}.rep .deco-bg-text{-webkit-text-stroke:1px #0e7c7b0f;font-size:180px;bottom:30px;left:-30px}.rep .arch-bg{opacity:.18;pointer-events:none;z-index:0;width:520px;position:absolute;top:50%;right:-80px;transform:translateY(-50%)}.rep .deco-circle.r1{background:radial-gradient(circle, var(--teal-100) 0%, #e7f5f400 70%);width:300px;height:300px;top:-60px;right:8%}.rep-grid{z-index:2;grid-template-columns:.95fr 1.1fr;align-items:center;gap:48px;display:grid;position:relative}.rep-photo{aspect-ratio:4/3;border-radius:8px;position:relative}.rep-photo .photo-wrap{border-radius:8px;height:100%;position:relative;overflow:hidden;box-shadow:0 18px 40px -24px #0a1d3366}.rep-photo .photo-wrap img{object-fit:cover;width:100%;height:100%}.rep-photo:before{content:"";background-image:radial-gradient(var(--teal-500) 1.2px, transparent 1.5px);opacity:.5;z-index:0;background-size:8px 8px;width:100px;height:100px;position:absolute;bottom:-20px;left:-20px}.rep h2{color:var(--navy-800);letter-spacing:.01em;margin-bottom:24px;font-size:34px;font-weight:700;line-height:1.45}.rep p{color:var(--ink);font-size:14px;line-height:2.1;font-family:var(--serif)}.rep .read-more{color:var(--teal-700);letter-spacing:.05em;align-items:center;gap:10px;margin-top:26px;font-size:14px;font-weight:600;transition:gap .2s;display:inline-flex}.rep .read-more:hover{gap:14px}.service{background:linear-gradient(180deg, var(--teal-50) 0%, #fff 100%);padding:90px 0 100px;position:relative;overflow:hidden}.service .deco-bg-text{-webkit-text-stroke:1px #0e7c7b12;font-size:160px;top:60px;right:-30px}.service .deco-circle.sv1{background:radial-gradient(circle, var(--teal-100) 0%, #e7f5f400 70%);width:420px;height:420px;bottom:-200px;left:-150px}.service .dot-wave{opacity:.5;pointer-events:none;height:60px;position:absolute;top:0;left:0;right:0}.section-head{text-align:center;z-index:2;margin-bottom:48px;position:relative}.section-head .label{justify-content:center;align-items:center;gap:18px;margin-bottom:6px;display:flex}.section-head .label:before,.section-head .label:after{content:"";background:var(--teal-500);width:60px;height:1px}.section-head h2{font-family:var(--display);letter-spacing:.18em;color:var(--navy-800);font-size:32px;font-weight:700}.section-head .jp{color:var(--ink-mute);letter-spacing:.2em;font-size:13px;font-weight:500}.head-link-abs{color:var(--ink-mute);letter-spacing:.05em;z-index:5;align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex;position:absolute;top:96px;right:32px}.head-link-abs:hover{color:var(--teal-700)}.service-grid{z-index:2;grid-template-columns:repeat(4,1fr);gap:18px;display:grid;position:relative}.service-card{border:1px solid var(--line);text-align:center;background:#fff;border-radius:14px;padding:26px 20px 22px;transition:transform .25s,box-shadow .25s,border-color .25s;position:relative;overflow:hidden}.service-card:before{content:"";background:radial-gradient(circle,#3cb6b31f 0%,#0000 70%);width:80px;height:80px;position:absolute;top:-20px;right:-20px}.service-card:hover{border-color:var(--teal-300);transform:translateY(-4px);box-shadow:0 18px 38px -22px #0e7c7b4d}.service-card h3{color:var(--navy-800);margin-bottom:8px;font-size:19px;font-weight:700;position:relative}.service-card p{color:var(--ink-mute);min-height:42px;font-size:13px;line-height:1.7;position:relative}.service-card .illust{place-items:center;height:140px;margin-top:18px;display:grid;position:relative}.service-card .illust img{object-fit:contain;max-height:100%}.coming-soon{font-family:var(--display);letter-spacing:.12em;background:var(--teal-600);color:#fff;border-radius:999px;margin-top:8px;padding:5px 12px;font-size:11px;font-weight:700;display:inline-block;position:relative}a.service-card{color:inherit;cursor:pointer;text-decoration:none}a.service-card:hover{border-color:var(--teal-300);transform:translateY(-4px);box-shadow:0 18px 48px -18px #0e7c7b38}.ceo-message,.svc-detail-card{scroll-margin-top:88px}.service-more{text-align:center;z-index:2;margin-top:28px;position:relative}.service-more-link{color:var(--teal-700);letter-spacing:.06em;font-size:14px;font-weight:700;text-decoration:none;transition:color .2s;display:inline-block}.service-more-link:hover{color:var(--teal-500)}.voice{background:linear-gradient(150deg, #fff 0%, var(--teal-50) 100%);padding:72px 0 100px;position:relative;overflow:hidden}.voice .deco-bg-text{-webkit-text-stroke:1px #0e7c7b0f;font-size:150px;top:20px;left:-30px}.voice .dot-wave{opacity:.45;pointer-events:none;height:80px;position:absolute;top:20px;left:0;right:0}.voice-blob{pointer-events:none;background:#0e7c7b0d;border-radius:52% 48% 38% 62%/58% 42%;width:380px;height:300px;position:absolute;bottom:-80px;left:-60px}.voice-dots{pointer-events:none;background-image:radial-gradient(#0e7c7b1c 1.2px,#0000 1.4px);background-size:16px 16px;width:200px;height:100%;position:absolute;top:0;right:0;-webkit-mask-image:linear-gradient(270deg,#0000008c 0%,#0000 100%);mask-image:linear-gradient(270deg,#0000008c 0%,#0000 100%)}.voice .deco-circle.v2{background:radial-gradient(circle, var(--teal-200) 0%, transparent 70%);width:220px;height:220px;bottom:-60px;right:18%}.voice-grid{z-index:2;grid-template-columns:repeat(4,1fr);gap:20px;display:grid;position:relative}.voice-card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffeb;border:1px solid #0e7c7b1f;border-radius:18px;flex-direction:column;transition:transform .25s,box-shadow .25s;display:flex;position:relative;overflow:hidden}.voice-card:before{content:"“";font-family:var(--display);color:#0e7c7b12;pointer-events:none;font-size:90px;font-weight:800;line-height:1;position:absolute;bottom:-4px;right:16px}.voice-card:hover{transform:translateY(-6px);box-shadow:0 20px 40px -16px #0e7c7b4d}.voice-photo{border-radius:0;flex-shrink:0;width:100%;height:220px;overflow:hidden}.voice-photo img{object-fit:cover;object-position:center top;width:100%;height:100%}.voice-body{flex-direction:column;flex:1;min-width:0;padding:18px 18px 16px;display:flex}.voice-tag{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.voice-tag .role{letter-spacing:.06em;color:var(--teal-800);background:#0e7c7b1a;border-radius:999px;padding:3px 9px;font-size:10px;font-weight:700}.voice-tag .year{font-family:var(--display);color:var(--ink-soft);letter-spacing:.04em;align-self:center;font-size:10px;font-weight:600}.voice-headline{color:var(--navy-800);margin-bottom:auto;padding-bottom:12px;font-size:13px;font-weight:700;line-height:1.7}.voice-name{font-family:var(--display);color:var(--teal-700);letter-spacing:.1em;border-top:1px solid #0e7c7b26;padding-top:10px;font-size:13px;font-weight:700}.news{background:linear-gradient(180deg, var(--teal-50) 0%, #fff 100%);padding:70px 0 90px;position:relative;overflow:hidden}.news .deco-circle.n1{background:radial-gradient(circle, var(--teal-100) 0%, #e7f5f400 70%);width:300px;height:300px;bottom:30px;right:-100px}.news .deco-circle.n2{background:radial-gradient(circle, var(--teal-100) 0%, transparent 70%);width:240px;height:240px;top:20px;left:-60px}.news .deco-ring.nr1{border-color:#0e7c7b12;width:360px;height:360px;top:-140px;left:30%}.news .dot-wave{opacity:.4;pointer-events:none;height:70px;position:absolute;top:16px;left:0;right:0}.news .section-head{margin-bottom:30px}.news-list{border-top:1px solid var(--line);z-index:2;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#ffffffb3;position:relative}.news-row{border-bottom:1px solid var(--line);grid-template-columns:130px 130px 1fr 24px;align-items:center;gap:16px;padding:18px 4px 18px 8px;transition:background .2s;display:grid}.news-row:hover{background:#fff}.news-date{font-family:var(--display);color:var(--ink-mute);letter-spacing:.04em;font-size:13px;font-weight:500}.news-tag{letter-spacing:.05em;text-align:center;border-radius:4px;width:max-content;padding:5px 10px;font-size:11px;font-weight:600;display:inline-block}.tag-info{color:var(--navy-800);background:#a9dcdb}.tag-press{color:#fff;background:#3cb6b3}.tag-recruit{color:#fff;background:#0e7c7b}.news-title{color:var(--ink);font-size:14px;font-weight:500}.news-arrow{color:var(--ink-soft);text-align:right}.news-page{background:#fff;padding:76px 0 104px}.news-page-list{border-top:1px solid var(--line);background:#ffffffe0}.news-page-row{grid-template-columns:130px 130px 1fr 28px;padding:24px 6px 24px 10px}.news-page-text{gap:8px;min-width:0;display:grid}.news-page-row .news-title{font-size:16px;line-height:1.7}.news-summary{color:var(--ink-mute);font-size:13px;line-height:1.8;display:block}.news-detail-hero h1{letter-spacing:.04em;max-width:920px;font-size:clamp(30px,5vw,52px);line-height:1.28}.news-detail-meta{color:#ffffffc7;font-family:var(--display);letter-spacing:.06em;align-items:center;gap:12px;margin:0 0 18px;font-size:13px;display:flex}.news-detail-page{background:#fff;padding:0 0 88px}.news-article{max-width:760px;margin:0 auto;padding:72px 32px 28px}.news-lead{color:var(--teal-800);margin:0 0 32px;font-size:18px;font-weight:700;line-height:2}.news-article-body{gap:22px;display:grid}.news-article-body p{color:var(--ink);font-size:15px;line-height:2.15}.news-article-body .news-qa-paragraph{border-left:3px solid var(--teal-500);background:var(--teal-50);padding:18px 20px;line-height:2}.news-qa-question{color:var(--teal-900);font-weight:900;line-height:1.8;display:block}.news-qa-answer{color:var(--ink);white-space:pre-line;margin-top:12px;line-height:2;display:block}.news-article-links{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.news-article-link{border:1px solid var(--teal-200);color:var(--teal-800);border-radius:4px;align-items:center;gap:10px;padding:12px 16px;font-size:13px;font-weight:700;transition:background-color .2s,transform .2s,color .2s;display:inline-flex}.news-article-link span{font-size:18px;line-height:1}.news-article-link:hover{background:var(--teal-50);color:var(--teal-700);transform:translateY(-1px)}.news-detail-nav{border-top:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;max-width:960px;margin:0 auto;padding:22px 32px 0;display:grid}.news-nav-link,.news-nav-index{color:var(--ink);font-size:13px;line-height:1.7;transition:color .2s,transform .2s}.news-nav-link{gap:4px;display:grid}.news-nav-link span{color:var(--ink-mute);letter-spacing:.08em;font-size:11px}.news-nav-link-next{text-align:right}.news-nav-index{border:1px solid var(--line);white-space:nowrap;border-radius:4px;padding:10px 18px}.news-nav-link:hover,.news-nav-index:hover{color:var(--teal-700);transform:translateY(-1px)}.cta{color:#fff;background:linear-gradient(115deg,#0d6f6e 0%,#0e7c7b 35%,#0a4a4a 100%);padding:100px 0 160px;position:relative;overflow:hidden}.cta-top-wave{pointer-events:none;z-index:1;width:100%;height:64px;display:block;position:absolute;top:-1px;left:0;right:0}.cta-bottom-wave{pointer-events:none;z-index:1;width:100%;height:80px;display:block;position:absolute;bottom:-1px;left:0;right:0}.cta .deco-bg-text{-webkit-text-stroke:1px #ffffff1a;font-size:180px;top:50%;right:-20px;transform:translateY(-50%)}.cta-arch{display:none}.cta-blob1{pointer-events:none;background:radial-gradient(circle,#1a9b9a38 0%,#0000 70%);width:480px;height:480px;animation:11s ease-in-out infinite blob-morph;position:absolute;top:-80px;left:-120px}.cta-blob2{pointer-events:none;background:radial-gradient(circle,#6ec9c62e 0%,#0000 70%);width:360px;height:360px;animation:14s ease-in-out infinite blob-morph2;position:absolute;bottom:-60px;right:-80px}.cta-ring{pointer-events:none;border:1px solid #ffffff0f;border-radius:50%;width:600px;height:600px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cta-dotwave{opacity:.35;pointer-events:none;width:100%;height:140px;position:absolute;bottom:80px;left:0;right:0}.cta-inner{z-index:2;text-align:center;position:relative}.cta h2{letter-spacing:.02em;margin-bottom:14px;font-size:36px;font-weight:700}.cta p{color:#ffffffd9;margin-bottom:34px;font-size:15px;font-weight:500}.cta-buttons{flex-wrap:wrap;justify-content:center;gap:18px;display:flex}.cta-buttons .btn{justify-content:center}.cta-to-footer{background:var(--navy-900);z-index:1;height:80px;margin-top:-80px;position:relative}.cta-to-footer svg{width:100%;height:80px;display:block}.footer{background:var(--navy-900);color:#fff;padding:54px 0 30px;position:relative;overflow:hidden}.footer .deco-bg-text{-webkit-text-stroke:1px #3cb6b31f;font-size:180px;bottom:-40px;right:-30px}.footer-dotwave{opacity:.4;pointer-events:none;width:520px;height:340px;position:absolute;top:30px;right:-40px}.footer .brand-name{color:#fff}.footer-grid{z-index:2;grid-template-columns:1.2fr 1fr 1fr .8fr;gap:40px;display:grid;position:relative}.footer-co{color:#ffffffbf;margin-top:14px;font-size:13px}.footer-addr{color:#fff9;align-items:center;gap:6px;margin-top:8px;font-size:12px;display:flex}.footer-social{gap:10px;margin-top:22px;display:flex}.footer-social a{color:#fffc;border:1px solid #ffffff40;border-radius:50%;place-items:center;width:34px;height:34px;transition:background .2s,border-color .2s;display:grid}.footer-social a:hover{background:#ffffff1a;border-color:#fff}.footer-col h4{font-family:var(--display);letter-spacing:.18em;color:#ffffffd9;margin-bottom:18px;font-size:12px;font-weight:700}.footer-col ul{list-style:none}.footer-col li{color:#fffc;letter-spacing:.05em;border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:8px 0;font-size:13px;font-weight:500;display:flex}.footer-col li:hover{color:#fff}.footer-col li:after{content:"›";opacity:.5;font-size:14px}.footer-bottom{text-align:center;font-family:var(--display);color:#ffffff80;letter-spacing:.05em;z-index:2;border-top:1px solid #ffffff14;flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;margin-top:40px;padding-top:18px;font-size:12px;display:flex;position:relative}.footer-bottom a{color:#ffffffb8;font-weight:700}.footer-bottom a:hover{color:#fff}.stats .deco-ring.sr1{width:520px;height:520px;top:-260px;right:-180px}.stats .deco-ring.sr2{border-color:#0e7c7b0d;width:300px;height:300px;bottom:-150px;left:38%}.team-section .deco-hex.t-hex1{opacity:.65;width:200px;height:230px;top:60px;right:6%}.voice .deco-circle.v1{background:radial-gradient(circle, var(--teal-100) 0%, #e7f5f400 70%);width:380px;height:380px;top:-100px;right:-120px}.voice .deco-ring.vr1{border-color:#0e7c7b0f;width:260px;height:260px;bottom:-80px;left:6%}.news .deco-bg-text{-webkit-text-stroke:1px #0e7c7b0d;font-size:160px;top:10px;left:-20px}.service .deco-ring.svr1{border-color:#0e7c7b0f;width:400px;height:400px;top:-100px;right:-100px}.hamburger{cursor:pointer;z-index:60;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;padding:0;display:none}.hamburger span{background:currentColor;border-radius:2px;width:24px;height:2px;transition:transform .3s,opacity .3s;display:block}.site-header:not(.scrolled) .hamburger{color:#fff}.hamburger.is-open span:first-child{transform:translateY(7px)rotate(45deg)}.hamburger.is-open span:nth-child(2){opacity:0}.hamburger.is-open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mobile-nav{z-index:55;-webkit-backdrop-filter:saturate(140%)blur(16px);backdrop-filter:saturate(140%)blur(16px);background:#fffffffa;flex-direction:column;padding:100px 40px 40px;transition:transform .35s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;inset:0;transform:translate(100%)}.mobile-nav.is-open{transform:translate(0)}.mobile-nav-close{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:44px;height:44px;display:flex;position:absolute;top:24px;right:20px}.mobile-nav-close span{background:var(--ink);border-radius:2px;width:26px;height:2px;display:block;position:absolute}.mobile-nav-close span:first-child{transform:rotate(45deg)}.mobile-nav-close span:last-child{transform:rotate(-45deg)}.mobile-nav a{font-family:var(--display);letter-spacing:.04em;color:var(--ink);border-bottom:1px solid #0e7c7b1a;padding:16px 0;font-size:28px;font-weight:700;text-decoration:none;display:block}.mobile-nav a:last-child{border-bottom:none}.mobile-nav .mobile-entry{background:var(--orange);letter-spacing:.12em;border-radius:999px;justify-content:center;align-items:center;width:100%;height:52px;margin-top:36px;font-size:18px;display:inline-flex;color:#fff!important;border-bottom:none!important}.page-hero{color:#fff;background:linear-gradient(135deg,#085e5d 0%,#0e7c7b 100%);padding:140px 0 72px;position:relative;overflow:hidden}.page-hero .deco-circle.ph1{background:radial-gradient(circle,#3cb6b32e 0%,#0000 70%);width:500px;height:500px;top:-120px;left:-120px}.page-hero .deco-circle.ph2{background:radial-gradient(circle,#3cb6b31f 0%,#0000 70%);width:320px;height:320px;bottom:-80px;right:5%}.page-breadcrumb{font-family:var(--display);letter-spacing:.12em;color:#ffffff8c;align-items:center;gap:8px;margin-bottom:20px;font-size:11px;font-weight:600;display:flex}.page-breadcrumb a{color:#ffffff8c;text-decoration:none;transition:color .2s}.page-breadcrumb a:hover{color:#fff}.page-breadcrumb span{color:#ffffff4d}.page-hero h1{font-family:var(--display);letter-spacing:.06em;margin-bottom:12px;font-size:clamp(36px,6vw,60px);font-weight:800;line-height:1}.page-hero .page-jp{letter-spacing:.2em;color:#ffffffb3;font-size:14px;font-weight:500}.page-hero-wave{pointer-events:none;width:100%;height:60px;display:block;position:absolute;bottom:0;left:0;right:0}.company-hero{background:#0e7c7b}.vision-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.vision-card{border:1px solid var(--line);background:#fff;border-radius:16px;padding:36px 32px;position:relative;overflow:hidden}.vision-card:before{content:"";background:linear-gradient(180deg, var(--teal-500), var(--teal-300));border-radius:4px 0 0 4px;width:4px;height:100%;position:absolute;top:0;left:0}.vision-label{font-family:var(--display);letter-spacing:.2em;color:var(--teal-600);margin-bottom:12px;font-size:11px;font-weight:700}.vision-card h3{color:var(--navy-800);font-size:18px;font-weight:700;line-height:1.6}.ceo-message{background:#fff;padding:90px 0 100px;position:relative;overflow:hidden}.ceo-grid{grid-template-columns:1fr 1.8fr;align-items:start;gap:64px;display:grid}.ceo-photo-wrap{aspect-ratio:3/4;border-radius:12px;overflow:hidden;box-shadow:0 20px 48px -20px #0a1d3359}.ceo-photo-wrap img{object-fit:cover;width:100%;height:100%}.ceo-name{color:var(--ink-mute);letter-spacing:.1em;text-align:center;margin-top:14px;font-size:13px}.ceo-body{padding-top:8px}.ceo-body .section-label{font-family:var(--display);letter-spacing:.2em;color:var(--teal-600);margin-bottom:10px;font-size:11px;font-weight:700}.ceo-body h2{color:var(--navy-800);margin-bottom:28px;font-size:clamp(22px,3vw,30px);font-weight:700;line-height:1.5}.ceo-body p{color:var(--ink-soft);margin-bottom:20px;font-size:15px;line-height:2}.info-section{background:var(--teal-50);padding:80px 0 90px;position:relative;overflow:hidden}.info-section .deco-circle.info-c1{background:radial-gradient(circle, var(--teal-200) 0%, transparent 65%);width:400px;height:400px;top:-60px;right:-120px}.info-section .deco-ring.info-r1{border:1.5px solid #0e7c7b14;width:460px;height:460px;bottom:-80px;left:-100px}.info-bg-text{font-size:200px;bottom:-40px;left:-20px}.info-table{border-collapse:collapse;width:100%}.info-table tr{border-bottom:1px solid var(--line)}.info-table th{letter-spacing:.06em;width:200px;color:var(--navy-800);vertical-align:top;text-align:left;white-space:nowrap;padding:20px 24px 20px 0;font-size:13px;font-weight:700}.info-table td{color:var(--ink-soft);padding:20px 0;font-size:14px;line-height:1.8}.history-section{background:#fff;padding:80px 0 90px;position:relative;overflow:hidden}.history-section .deco-circle.hist-c1{background:radial-gradient(circle, var(--teal-100) 0%, transparent 65%);width:360px;height:360px;top:20%;left:-100px}.history-section .deco-circle.hist-c2{background:radial-gradient(circle, var(--teal-200) 0%, transparent 65%);width:200px;height:200px;bottom:10%;right:5%}.hist-bg-text{font-size:200px;top:50%;right:-30px;transform:translateY(-50%)}.timeline{max-width:720px;margin:0 auto;padding-left:40px;position:relative}.timeline:before{content:"";background:linear-gradient(180deg, var(--teal-400), var(--teal-200));border-radius:2px;width:2px;position:absolute;top:8px;bottom:8px;left:8px}.timeline-item{grid-template-columns:120px 1fr;align-items:start;gap:20px;margin-bottom:32px;display:grid;position:relative}.timeline-item:before{content:"";background:var(--teal-500);border:2px solid #fff;border-radius:50%;width:10px;height:10px;position:absolute;top:6px;left:-35px;box-shadow:0 0 0 3px #0e7c7b33}.timeline-date{font-family:var(--display);color:var(--teal-600);letter-spacing:.06em;padding-top:2px;font-size:12px;font-weight:700}.timeline-text{color:var(--ink-soft);font-size:14px;line-height:1.7}.vmv-dark{color:#fff;background:linear-gradient(#0c1f35 0%,#0a3535 100%);margin-top:0;padding:80px 0 120px;position:relative;overflow:hidden}.vmv-bg-text{font-size:200px;top:50%;right:-40px;transform:translateY(-50%);-webkit-text-stroke:1px #ffffff0f!important}.vmv-dark .deco-circle.vm1{background:radial-gradient(circle,#0e7c7b40 0%,#0000 65%);width:520px;height:520px;top:-100px;left:-180px}.vmv-dark .deco-circle.vm2{background:radial-gradient(circle,#3cb6b326 0%,#0000 65%);width:300px;height:300px;bottom:-60px;right:4%}.vmv-dark .deco-ring.vmr1{border:1px solid #ffffff0d;width:560px;height:560px;top:50%;right:-100px;transform:translateY(-50%)}.vmv-dotgrid{opacity:.18;pointer-events:none;width:100%;height:100px;position:absolute;bottom:80px;left:0;right:0}.vmv-wave{pointer-events:none;width:100%;height:64px;display:block;position:absolute;bottom:0;left:0;right:0}.vmv-dark .section-head h2{color:#fff}.vmv-dark .section-head .label:before,.vmv-dark .section-head .label:after{background:#ffffff40}.vmv-dark .section-head .jp{color:#fff9}.vmv-list{max-width:860px;margin-top:16px;margin-left:auto;margin-right:auto}.vmv-item{border-bottom:1px solid #0e7c7b1a;grid-template-columns:72px 1fr;gap:0 40px;padding:52px 0;display:grid;position:relative}.vmv-item:first-child{border-top:1px solid #0e7c7b1a}.vmv-dark .vmv-item{border-bottom-color:#ffffff1a}.vmv-dark .vmv-item:first-child{border-top-color:#ffffff1a}.vmv-dark .vmv-num{color:var(--teal-400)}.vmv-dark .vmv-en{color:#fff}.vmv-dark .vmv-line{background:linear-gradient(90deg,#ffffff38,#0000)}.vmv-dark .vmv-jp{color:var(--teal-300)}.vmv-dark .vmv-body p{color:#ffffffc7}.vmv-dark .value-list li{color:#ffffffb8}.vmv-dark .value-list li:before{background:var(--teal-400)}.vmv-left{padding-top:6px}.vmv-num{font-family:var(--display);letter-spacing:.16em;color:var(--teal-500);font-size:13px;font-weight:800;display:block}.vmv-heading{align-items:center;gap:20px;margin-bottom:24px;display:flex}.vmv-en{font-family:var(--display);letter-spacing:.08em;color:var(--navy-800);flex-shrink:0;font-size:30px;font-weight:800;line-height:1}.vmv-line{background:linear-gradient(90deg, var(--teal-400), var(--teal-100));flex:1;height:1px}.vmv-jp{letter-spacing:.15em;color:var(--teal-600);white-space:nowrap;flex-shrink:0;font-size:11px;font-weight:700}.vmv-body p{color:var(--ink-soft);font-size:19px;font-weight:500;line-height:2}.value-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.value-list li{color:var(--ink-soft);padding-left:22px;font-size:15px;line-height:1.7;position:relative}.value-list li:before{content:"";background:var(--teal-500);width:10px;height:1px;position:absolute;top:11px;left:0}.ceo-dotwave{opacity:.3;pointer-events:none;height:60px;position:absolute;top:0;left:0;right:0}.ceo-quote{font-family:var(--serif);color:var(--navy-800);text-align:center;max-width:840px;margin:0 auto 56px;padding:0 20px;font-size:clamp(18px,2.2vw,24px);line-height:1.9;position:relative}.ceo-quote:before{content:"“";color:var(--teal-200);pointer-events:none;font-family:Georgia,Times New Roman,serif;font-size:80px;line-height:1;position:absolute;top:-28px;left:-16px}.ceo-quote:after{content:"”";color:var(--teal-200);pointer-events:none;font-family:Georgia,Times New Roman,serif;font-size:80px;line-height:1;position:absolute;bottom:-48px;right:-16px}.ceo-photo-frame{width:100%;display:inline-block;position:relative}.ceo-photo-accent{border:2px solid var(--teal-300);pointer-events:none;z-index:0;border-radius:12px;width:100%;height:100%;position:absolute;bottom:-12px;right:-12px}.ceo-photo-wrap{z-index:1;position:relative}.ceo-name{color:var(--ink-mute);letter-spacing:.1em;text-align:center;margin-top:16px;font-size:12px;line-height:1.8}.ceo-name strong{color:var(--navy-800);font-size:14px;font-weight:700}.ceo-card{background:var(--teal-50);border:1px solid var(--teal-200);border-radius:16px;margin-bottom:20px;padding:32px 32px 28px;transition:transform .3s,box-shadow .3s;position:relative;overflow:hidden}.ceo-card:last-child{margin-bottom:0}.ceo-card:hover{transform:translateY(-3px);box-shadow:0 12px 32px -8px #0e7c7b26}.ceo-card:after{content:"";background:linear-gradient(180deg, var(--teal-500), var(--teal-300));border-radius:4px 0 0 4px;width:4px;position:absolute;top:0;bottom:0;left:0}.ceo-card-num{font-family:var(--display);color:var(--teal-100);pointer-events:none;-webkit-user-select:none;user-select:none;font-size:48px;font-weight:800;line-height:1;position:absolute;top:12px;right:20px}.ceo-card p{color:var(--ink-soft);margin-bottom:0;font-size:14.5px;line-height:2}.ceo-section-title{color:var(--navy-800);align-items:center;gap:10px;margin:0 0 14px;font-size:17px;font-weight:700;line-height:1.5;display:flex}.ceo-section-title:before{content:"";background:var(--teal-500);border-radius:50%;flex-shrink:0;width:8px;height:8px}.edu-steps{align-items:flex-start;gap:0;max-width:840px;margin:0 auto;display:flex}.edu-step{text-align:center;flex:1;padding:0 8px}.edu-step-icon{flex-direction:column;align-items:center;margin-bottom:20px;display:flex;position:relative}.edu-step-num{font-family:var(--display);letter-spacing:.12em;color:var(--teal-500);margin-bottom:10px;font-size:11px;font-weight:800}.edu-icon-ring{background:linear-gradient(135deg, var(--teal-600) 0%, var(--teal-400) 100%);color:#fff;border-radius:50%;place-items:center;width:72px;height:72px;display:grid;box-shadow:0 10px 28px -8px #0e7c7b73}.edu-step h3{color:var(--navy-800);margin-bottom:10px;font-size:16px;font-weight:700;line-height:1.4}.edu-step p{color:var(--ink-mute);font-size:13px;line-height:1.8}.edu-connector{flex-shrink:0;align-items:center;padding-top:52px;display:flex}.margin-card{border:1px solid var(--line);background:#fff;border-radius:16px;justify-content:space-between;align-items:center;gap:32px;max-width:760px;margin:0 auto;padding:32px 36px;display:flex}.margin-card-body h3{color:var(--navy-800);margin-bottom:8px;font-size:17px;font-weight:700}.margin-card-body p{color:var(--ink-mute);font-size:13px;line-height:1.7}.margin-pdf-btn{background:var(--teal-700);color:#fff;letter-spacing:.06em;white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:8px;padding:12px 24px;font-size:13px;font-weight:700;transition:background .2s,transform .2s;display:inline-flex}.margin-pdf-btn:hover{background:var(--teal-800);transform:translateY(-1px)}.edu-section{background:var(--teal-50);padding:80px 0 90px;position:relative;overflow:hidden}.edu-section .deco-circle.edu-c1{background:radial-gradient(circle, var(--teal-200) 0%, transparent 65%);width:380px;height:380px;bottom:-60px;left:-100px}.edu-section .deco-ring.edu-r1{border:1.5px solid #0e7c7b14;width:500px;height:500px;top:50%;right:-120px;transform:translateY(-50%)}.edu-bg-text{font-size:160px;top:50%;right:-20px;transform:translateY(-50%)}.disclosure-section{background:#fff;padding:72px 0 80px;position:relative;overflow:hidden}.disclosure-section .deco-circle.disc-c1{background:radial-gradient(circle, var(--teal-100) 0%, transparent 65%);width:340px;height:340px;top:50%;right:-80px;transform:translateY(-50%)}.ceo-message .deco-circle.ceo-c1{background:radial-gradient(circle, var(--teal-100) 0%, transparent 65%);width:420px;height:420px;top:-60px;right:-120px}.ceo-message .deco-circle.ceo-c2{background:radial-gradient(circle, var(--teal-50) 0%, transparent 65%);width:240px;height:240px;bottom:10%;left:-60px}.ceo-bg-text{font-size:200px;top:30px;left:-20px}.btn-outline-white{color:#fff;background:0 0;border:1.5px solid #ffffffb3;justify-content:center}.btn-outline-white:hover{background:#ffffff1a;border-color:#fff}.service-page{background:#fff;padding:80px 0 100px;position:relative;overflow:hidden}.service-page .deco-circle.svc-c1{background:radial-gradient(circle, var(--teal-50) 0%, transparent 65%);width:500px;height:500px;top:10%;left:-160px}.service-page .deco-circle.svc-c2{background:radial-gradient(circle, var(--teal-100) 0%, transparent 65%);width:320px;height:320px;bottom:5%;right:-80px}.svc-bg-text{font-size:200px;top:50%;right:-40px;transform:translateY(-50%)}.svc-detail-grid{grid-template-columns:repeat(2,1fr);gap:28px;display:grid}.svc-detail-card{border:1px solid var(--line);background:#fff;border-radius:20px;flex-direction:column;padding:36px 32px 32px;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;position:relative;overflow:hidden}.svc-detail-card:before{content:"";background:linear-gradient(90deg, var(--teal-600), var(--teal-300));transform-origin:0;height:3px;transition:transform .3s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.svc-detail-card:hover:before{transform:scaleX(1)}.svc-detail-card:hover{border-color:var(--teal-300);transform:translateY(-4px);box-shadow:0 20px 48px -16px #0e7c7b33}.svc-coming-soon{opacity:.75}.svc-badge{letter-spacing:.1em;color:var(--teal-700);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffffeb;border-radius:999px;padding:4px 12px;font-size:10px;font-weight:700;position:absolute;top:14px;right:14px}.svc-card-photo{border-radius:20px 20px 0 0;height:200px;margin:-36px -32px 24px;position:relative;overflow:hidden}.svc-card-photo img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.svc-detail-card:hover .svc-card-photo img{transform:scale(1.04)}.svc-card-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.svc-card-num{font-family:var(--display);letter-spacing:.2em;color:var(--teal-500);font-size:11px;font-weight:800}.svc-card-label{letter-spacing:.1em;background:var(--teal-50);color:var(--teal-700);border-radius:999px;padding:4px 12px;font-size:10px;font-weight:700}.svc-card-icon{background:var(--teal-50);border-radius:14px;place-items:center;width:52px;height:52px;margin-bottom:18px;display:grid}.svc-card-icon img{object-fit:contain;width:34px;height:34px}.svc-card-title{color:var(--navy-800);margin-bottom:14px;font-size:22px;font-weight:700;line-height:1.4}.svc-card-desc{color:var(--ink-soft);margin-bottom:18px;font-size:14px;line-height:1.9}.svc-card-points{flex-direction:column;gap:9px;margin:0 0 auto;padding:0;list-style:none;display:flex}.svc-card-points li{color:var(--ink-mute);padding-left:20px;font-size:13px;line-height:1.7;position:relative}.svc-card-points li:before{content:"";background:var(--teal-400);width:8px;height:1px;position:absolute;top:9px;left:0}.svc-card-footer{margin-top:24px}.svc-card-link{color:var(--teal-700);letter-spacing:.06em;align-items:center;gap:8px;font-size:13px;font-weight:700;transition:gap .2s;display:inline-flex}.svc-card-link:hover{gap:12px}.svc-card-link svg{transition:transform .2s}.svc-card-link:hover svg{transform:translate(4px)}.svc-pdf-btn{letter-spacing:.06em;color:var(--teal-700);border:1.5px solid var(--teal-300);border-radius:999px;align-items:center;gap:8px;padding:9px 18px;font-size:12px;font-weight:700;transition:background .2s,border-color .2s;display:inline-flex}.svc-pdf-btn:hover{background:var(--teal-50);border-color:var(--teal-500)}.service-page-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.service-page-card{border:1px solid var(--line);background:#fff;border-radius:18px;flex-direction:column;padding:36px 28px 32px;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;position:relative;overflow:hidden}.service-page-card:hover{border-color:var(--teal-300);transform:translateY(-4px);box-shadow:0 20px 48px -20px #0e7c7b40}.service-page-card.coming-soon{opacity:.7;pointer-events:none}.service-page-card .card-badge{letter-spacing:.1em;background:var(--teal-100);color:var(--teal-700);border-radius:99px;padding:4px 10px;font-size:10px;font-weight:700;position:absolute;top:20px;right:20px}.service-page-card .card-badge.badge-soon{color:#8a7a50;background:#f3f0e8}.service-page-card .card-icon{background:linear-gradient(135deg, var(--teal-100), var(--teal-50));border-radius:14px;place-items:center;width:52px;height:52px;margin-bottom:20px;display:grid}.service-page-card .card-icon img{object-fit:contain;width:30px;height:30px}.service-page-card h3{color:var(--navy-800);margin-bottom:10px;font-size:20px;font-weight:700}.service-page-card p{color:var(--ink-soft);flex:1;margin-bottom:24px;font-size:14px;line-height:1.85}.service-page-card .card-link{color:var(--teal-700);letter-spacing:.04em;align-items:center;gap:6px;font-size:13px;font-weight:600;display:inline-flex}.service-page-card .card-link svg{transition:transform .2s}.service-page-card:hover .card-link svg{transform:translate(4px)}.otera-features{background:var(--teal-50);padding:80px 0 90px;position:relative;overflow:hidden}.otera-features .deco-circle.otera-c1{background:radial-gradient(circle, var(--teal-200) 0%, transparent 65%);width:400px;height:400px;bottom:-60px;left:-120px}.otera-features .deco-circle.otera-c2{background:radial-gradient(circle, var(--teal-100) 0%, transparent 65%);width:260px;height:260px;top:10%;right:5%}.otera-bg-text{font-size:180px;top:50%;right:-30px;transform:translateY(-50%)}.otera-feature-grid{grid-template-columns:repeat(4,1fr);gap:24px;display:grid}.otera-feature-card{border:1px solid var(--line);text-align:center;background:#fff;border-radius:18px;padding:36px 20px 28px;transition:transform .25s,box-shadow .25s}.otera-feature-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px -12px #0e7c7b2e}.otera-feature-icon{color:var(--teal-600);justify-content:center;margin-bottom:20px;display:flex}.otera-feature-card h3{color:var(--navy-800);font-size:15px;font-weight:700;line-height:1.5}.otera-summary{background:#fff;padding:80px 0 90px;position:relative;overflow:hidden}.otera-summary .deco-circle.otera-c3{background:radial-gradient(circle, var(--teal-100) 0%, transparent 65%);width:360px;height:360px;top:20%;right:-80px}.otera-bg-text2{font-size:180px;bottom:-30px;left:-20px}.otera-summary-grid{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.otera-summary-card{border:1px solid var(--line);border-radius:18px;padding:32px 28px;transition:transform .25s,box-shadow .25s,border-color .25s;position:relative;overflow:hidden}.otera-summary-card:hover{border-color:var(--teal-300);transform:translateY(-4px);box-shadow:0 16px 40px -12px #0e7c7b2e}.otera-summary-card:before{content:"";background:linear-gradient(90deg, var(--teal-600), var(--teal-300));height:3px;position:absolute;top:0;left:0;right:0}.otera-summary-num{font-family:var(--display);letter-spacing:.2em;color:var(--teal-500);margin-bottom:12px;font-size:11px;font-weight:800}.otera-summary-title{color:var(--navy-800);border-bottom:1px solid var(--line);margin-bottom:20px;padding-bottom:16px;font-size:18px;font-weight:700}.otera-summary-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.otera-summary-list li{color:var(--ink-soft);padding-left:18px;font-size:13px;line-height:1.7;position:relative}.otera-summary-list li:before{content:"";background:var(--teal-400);width:8px;height:1px;position:absolute;top:9px;left:0}.otera-notice{border:1px solid var(--teal-300);border-left:4px solid var(--teal-600);background:#fff;border-radius:12px;align-items:flex-start;gap:16px;max-width:700px;margin:0 auto;padding:24px 28px;display:flex}.otera-notice-icon{color:var(--teal-600);flex-shrink:0;padding-top:2px}.otera-notice strong{color:var(--navy-800);margin-bottom:6px;font-size:15px;font-weight:700;display:block}.otera-notice p{color:var(--ink-mute);font-size:13px;line-height:1.7}.contact-page{background:linear-gradient(180deg, var(--teal-50) 0%, #fff 50%);padding:90px 0 120px}.contact-grid{grid-template-columns:1fr 360px;align-items:start;gap:64px;display:grid}.contact-form-wrap{background:#fff;border-radius:20px;padding:48px 44px;box-shadow:0 8px 40px -16px #0a1d331f}.contact-form-wrap h2{color:var(--navy-800);margin-bottom:8px;font-size:22px;font-weight:700}.contact-form-wrap .form-lead{color:var(--ink-mute);margin-bottom:32px;font-size:14px;line-height:1.7}.form-group{margin-bottom:20px}.form-group label{color:var(--navy-800);letter-spacing:.04em;margin-bottom:7px;font-size:13px;font-weight:600;display:block}.req{background:var(--orange);color:#fff;vertical-align:middle;border-radius:3px;margin-left:6px;padding:2px 6px;font-size:10px}.form-group input,.form-group select,.form-group textarea{border:1.5px solid var(--line);width:100%;font-size:14px;font-family:var(--sans);color:var(--ink);background:#fafafa;border-radius:8px;outline:none;padding:12px 16px;transition:border-color .2s,background .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--teal-500);background:#fff}.form-group textarea{resize:vertical;min-height:140px}.form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-fieldset{border:0;margin:0;padding:0}.form-fieldset legend{color:var(--navy-800);letter-spacing:.04em;margin-bottom:9px;font-size:13px;font-weight:600;display:block}.form-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.form-choice-row{flex-wrap:wrap;align-items:center;gap:10px 16px;min-height:45px;display:flex}.form-choice,.form-consent{border:1.5px solid var(--line);min-height:44px;color:var(--ink);background:#fafafa;border-radius:8px;align-items:center;gap:9px;padding:10px 12px;font-size:14px;display:flex}.form-choice input,.form-consent input{width:auto;accent-color:var(--teal-700);flex-shrink:0}.form-consent{align-items:flex-start;line-height:1.7}.form-consent a{color:var(--teal-700);text-underline-offset:3px;font-weight:700;text-decoration:underline}.form-submit{background:var(--teal-700);color:#fff;cursor:pointer;letter-spacing:.08em;border:none;border-radius:999px;justify-content:center;align-items:center;gap:10px;width:100%;height:54px;margin-top:12px;font-size:15px;font-weight:700;transition:background .2s,transform .2s,opacity .2s;display:flex}.form-submit:hover{background:var(--teal-800);transform:translateY(-1px)}.form-submit:disabled{cursor:wait;opacity:.72;transform:none}.form-help{color:var(--ink-soft);margin-top:6px;font-size:12px;line-height:1.6}.form-status{border-radius:8px;margin:0 0 16px;padding:12px 14px;font-size:13px;font-weight:600;line-height:1.6}.form-status-success{background:var(--teal-50);border:1px solid var(--teal-200);color:var(--teal-800)}.form-status-error{color:#b24025;background:#fff3f0;border:1px solid #ffd1c6}.contact-info-wrap{padding-top:8px}.contact-info-wrap h3{color:var(--navy-800);margin-bottom:20px;font-size:16px;font-weight:700}.contact-info-item{color:var(--ink-soft);align-items:flex-start;gap:12px;margin-bottom:20px;font-size:14px;line-height:1.7;display:flex}.contact-info-item .ci-icon{background:var(--teal-50);width:36px;height:36px;color:var(--teal-600);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.contact-note{background:var(--teal-50);color:var(--ink-mute);border-radius:12px;margin-top:32px;padding:20px;font-size:13px;line-height:1.8}.contact-info-title{color:var(--navy-800);margin-bottom:4px;font-size:13px;font-weight:600}.contact-note a{color:var(--teal-700);margin:0 2px;font-weight:700}.entry-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:56px;display:grid}.entry-side{border:1px solid var(--line);background:#fff;border-radius:16px;padding:28px 26px;box-shadow:0 8px 32px -18px #0a1d3329}.entry-side h3{color:var(--navy-800);margin-bottom:16px;font-size:16px;font-weight:700}.entry-side ul{flex-direction:column;gap:12px;list-style:none;display:flex}.entry-side li{color:var(--ink-mute);padding-left:16px;font-size:13px;line-height:1.8;position:relative}.entry-side li:before{content:"";background:var(--teal-500);border-radius:50%;width:6px;height:6px;position:absolute;top:.75em;left:0}.entry-side-link{color:var(--teal-700);margin-top:24px;font-size:13px;font-weight:700;display:inline-flex}.privacy-page{background:#fff;padding:72px 0 96px}.privacy-article{max-width:900px;margin:0 auto;padding:0 32px}.privacy-article>p{color:var(--ink);font-size:15px;line-height:2}.privacy-article section{border-top:1px solid var(--line);margin-top:40px;padding-top:32px}.privacy-article h2{color:var(--navy-800);margin-bottom:16px;font-size:18px;font-weight:800}.privacy-article p,.privacy-article li,.privacy-contact dd{color:var(--ink-mute);font-size:14px;line-height:2}.privacy-article ol{margin-top:12px;padding-left:1.5em}.privacy-article ol+ol,.privacy-article p+ol{margin-top:14px}.privacy-contact{background:var(--teal-50);border:1px solid var(--teal-200);border-radius:12px;grid-template-columns:140px 1fr;gap:12px 20px;margin-top:16px;padding:22px;display:grid}.privacy-contact dt{color:var(--teal-800);font-size:13px;font-weight:700}@media (max-width:980px){.vision-grid{grid-template-columns:1fr!important}.vmv-item{grid-template-columns:48px 1fr;gap:0 24px;padding:40px 0}.vmv-en{font-size:22px}.vmv-heading{gap:12px}.value-list{grid-template-columns:1fr}.ceo-quote{font-size:16px}.edu-steps{flex-direction:column;align-items:center;gap:32px}.edu-connector{padding-top:0;transform:rotate(90deg)}.margin-card{flex-direction:column;align-items:flex-start}.ceo-grid{grid-template-columns:1fr;gap:32px}.ceo-photo-wrap{max-width:280px;margin:0 auto}.ceo-card{padding:24px 20px 20px}.ceo-card-num{font-size:36px;top:8px;right:12px}.ceo-card p{font-size:13.5px}.ceo-section-title{font-size:15px}.service-page-grid{grid-template-columns:repeat(2,1fr)}.svc-detail-grid{grid-template-columns:1fr}.otera-feature-grid{grid-template-columns:repeat(2,1fr)}.otera-summary-grid,.contact-grid{grid-template-columns:1fr}.entry-layout{grid-template-columns:1fr;gap:28px}.contact-form-wrap{padding:36px 28px}.nav{display:none}.hamburger{display:flex}.wrap{padding:0 20px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:14px}.team-cards{grid-template-columns:1fr;gap:18px}.rep-grid{grid-template-columns:1fr;gap:30px}.service-grid,.voice-grid{grid-template-columns:repeat(2,1fr);gap:14px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.hero{height:600px}.hero h1{font-size:clamp(48px,8vw,72px)}.hero-inner{padding:80px 20px 0}.hero-tag{font-size:18px}.hero-lead{font-size:14px;line-height:2}.hero-cta{gap:12px}.team-section{padding:60px 0 80px}.section-head{margin-bottom:32px}.section-head h2{font-size:26px}.team-head .jp{font-size:clamp(18px,3.5vw,26px)}.team-head h2{font-size:28px}.stats{padding:48px 0 40px}.rep,.service,.voice,.news{padding:60px 0}.cta{padding:72px 0 120px}.news-row{grid-template-columns:82px 88px 1fr 20px;gap:8px;font-size:13px}.news-page-row{grid-template-columns:96px 96px 1fr 20px}.head-link-abs{display:none}.deco-bg-text{font-size:100px!important}.voice-photo{height:180px}.rep-photo .photo-wrap{max-width:320px;margin:0 auto}}@media (max-width:560px){.service-page-grid,.otera-feature-grid{grid-template-columns:1fr}.svc-card-title{font-size:18px}.form-row,.form-choice-grid{grid-template-columns:1fr}.privacy-article{padding:0 20px}.privacy-contact{grid-template-columns:1fr}.page-hero{padding:120px 0 60px}.page-hero h1{font-size:clamp(30px,10vw,44px)}.info-table tr,.info-table th,.info-table td{width:100%;display:block}.info-table th{white-space:normal;padding:16px 0 4px;font-size:12px}.info-table td{padding:0 0 16px;font-size:13px;line-height:1.8}.wrap{padding:0 16px}.hero{height:560px}.hero h1{font-size:clamp(40px,10vw,56px)}.hero-tag{margin-top:20px;font-size:15px}.hero-lead{display:none}.hero-cta{flex-direction:column;align-items:flex-start;gap:10px}.btn{width:100%;min-width:0;max-width:320px}.stats-grid,.service-grid{grid-template-columns:1fr;gap:12px}.voice-grid{grid-template-columns:1fr;gap:14px}.voice-photo{height:240px}.team-head .jp{font-size:18px}.news-row{flex-direction:column;gap:4px;padding:14px 0;display:flex}.news-page{padding:52px 0 72px}.news-page-row .news-title{font-size:15px}.news-summary{font-size:12px;line-height:1.7}.news-article{padding:48px 20px 24px}.news-lead{font-size:16px;line-height:1.9}.news-detail-nav{grid-template-columns:1fr;padding:20px 20px 0}.news-nav-link-next{text-align:left}.news-date{font-size:11px}.news-arrow{display:none}.section-head .label{gap:12px}.section-head .label:before,.section-head .label:after{width:34px}.section-head h2{letter-spacing:.08em;overflow-wrap:anywhere;font-size:22px;line-height:1.25}.section-head .jp{letter-spacing:.08em;line-height:1.7}.cta h2{font-size:24px}.cta p{font-size:13px;line-height:1.9}.cta-buttons{flex-direction:column;align-items:center}.footer-grid{grid-template-columns:1fr;gap:24px}.footer-col:nth-child(3),.footer-col:nth-child(4),.deco-bg-text,.team-blob,.voice-blob{display:none}.service-card{padding:22px 18px 20px}.service-card h3{font-size:16px}.service-card p{min-height:0;font-size:13px}.service-card .illust{height:112px;margin-top:14px}.stat-card{text-align:left;grid-template-columns:minmax(0,1fr) 72px;align-items:center;gap:8px 14px;padding:22px 18px;display:grid}.stat-card:before{width:96px;height:96px}.stat-num{grid-column:1;font-size:clamp(40px,13vw,56px)}.stat-num .unit{font-size:.45em}.stat-label{grid-column:1;margin-top:0;font-size:13px}.stat-icon{grid-area:1/2/span 2;width:72px;height:72px;margin:0}.cta .btn{width:100%;max-width:320px}}@media (max-width:420px){.brand-logo{width:36px;height:36px}.brand-name{font-size:19px}.site-header .inner{height:64px;padding:0 16px}.mobile-nav{padding:88px 24px 32px;overflow-y:auto}.mobile-nav a{padding:13px 0;font-size:23px}.mobile-nav .mobile-entry{height:48px;margin-top:24px;font-size:15px}.hero{height:88svh;min-height:520px;max-height:620px}.hero h1{font-size:clamp(36px,13vw,48px)}.hero-tag{font-size:14px;line-height:1.7}.btn{gap:16px;height:auto;min-height:50px;padding:13px 18px 13px 22px;font-size:13px;line-height:1.35}.page-hero{padding:104px 0 52px}.team-head h2{font-size:24px}.team-card,.svc-detail-card,.working-card,.benefits-feature,.margin-card,.contact-form-wrap,.entry-form-card,.entry-sidebar-card{border-radius:12px}.team-card{padding:22px 20px}.news-title{line-height:1.7}.back-to-top{width:42px;height:42px;bottom:18px;right:16px}}.voice-card{display:block}.stat-note{color:var(--ink-soft);margin-top:6px;font-size:11px;line-height:1.5}.recruit-hero{background:linear-gradient(150deg, var(--navy-900) 0%, var(--teal-900) 100%);padding-top:88px;position:relative;overflow:hidden}.rh-inner{z-index:2;max-width:var(--max);color:#fff;margin:0 auto;padding:72px 32px 56px;position:relative}.rh-label{font-family:var(--display);letter-spacing:.25em;color:var(--teal-400);margin-bottom:16px;font-size:12px;font-weight:700;animation:.8s cubic-bezier(.22,1,.36,1) .15s both hero-line-in}.rh-title{font-family:var(--serif);color:#fff;margin-bottom:14px;font-size:clamp(44px,7vw,80px);font-weight:600;line-height:1.2}.rh-title span{display:block}.rh-title span:first-child{animation:.9s cubic-bezier(.22,1,.36,1) .3s both hero-line-in}.rh-title span:nth-child(2){animation:.9s cubic-bezier(.22,1,.36,1) .5s both hero-line-in}.rh-sub{font-family:var(--display);letter-spacing:.18em;color:var(--teal-300);margin-bottom:18px;font-size:13px;font-weight:700;animation:.8s cubic-bezier(.22,1,.36,1) .7s both hero-line-in}.rh-lead{color:#ffffffc7;max-width:520px;margin-bottom:32px;font-size:15px;line-height:1.85;animation:.8s cubic-bezier(.22,1,.36,1) .9s both hero-line-in}.rh-cta{min-width:180px;animation:.8s cubic-bezier(.22,1,.36,1) 1.1s both hero-line-in}.rh-photos{height:300px;position:relative;overflow:hidden}.rh-photos:before{content:"";background:linear-gradient(to right, var(--navy-900) 0%, #0a1d3399 8%, transparent 20%, transparent 80%, #0a1d3399 92%, var(--navy-900) 100%);z-index:2;pointer-events:none;position:absolute;inset:0}.rh-photo-track{align-items:center;gap:12px;width:max-content;height:100%;animation:36s linear infinite rh-marquee;display:flex}@keyframes rh-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.rh-photo{border-radius:10px;flex-shrink:0;height:260px;overflow:hidden}.rh-photo img{object-fit:cover;width:100%;height:100%}.rh-photo.rp-tall{width:160px}.rh-photo.rp-wide{width:340px}.rh-photo.rp-sq{width:220px}.rh-photo.rp-slim{width:130px}.rh-photo.rp-land{width:300px}.rh-photo.rp-port{width:170px}.rh-wave{z-index:3;width:100%;height:60px;margin-top:-2px;display:block;position:relative}.recruit-nav{z-index:49;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);opacity:0;pointer-events:none;background:#fffffff2;transition:transform .35s cubic-bezier(.4,0,.2,1),opacity .35s;position:fixed;top:72px;left:0;right:0;transform:translateY(-100%)}.recruit-nav.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.recruit-nav-inner{max-width:var(--max);-webkit-overflow-scrolling:touch;scrollbar-width:none;justify-content:center;align-items:center;gap:0;margin:0 auto;padding:0 16px;display:flex;overflow-x:auto}.recruit-nav-inner::-webkit-scrollbar{display:none}.recruit-nav-item{letter-spacing:.06em;color:var(--ink-mute);flex-shrink:0;padding:12px 18px;font-size:12px;font-weight:600;text-decoration:none;transition:color .2s;position:relative}.recruit-nav-item:after{content:"";background:var(--teal-600);height:2px;transition:transform .25s;position:absolute;bottom:0;left:18px;right:18px;transform:scaleX(0)}.recruit-nav-item:hover{color:var(--navy-800)}.recruit-nav-item.active{color:var(--teal-700)}.recruit-nav-item.active:after{transform:scaleX(1)}.recruit-pain{background:#fff;padding:80px 0 32px;scroll-margin-top:120px;position:relative;overflow:hidden}.pain-cards{grid-template-columns:repeat(2,1fr);gap:24px;max-width:900px;margin:0 auto;display:grid}.pain-card{background:linear-gradient(135deg, var(--navy-900) 0%, #0e3a5c 100%);border-radius:16px;align-items:center;min-height:140px;padding:44px 36px 44px 88px;transition:transform .3s,box-shadow .3s;display:flex;position:relative}.pain-card:hover{transform:translateY(-3px);box-shadow:0 12px 32px #0a1d332e}.pain-num{font-family:var(--display);color:#ffffff1f;font-size:42px;font-weight:700;line-height:1;position:absolute;top:32px;left:28px}.pain-text{color:#fff;font-size:18px;font-weight:600;line-height:1.8}.pain-bridge{text-align:center;padding:56px 0 16px}.pain-bridge-line{background:linear-gradient(to bottom, var(--navy-900), var(--teal-500));border-radius:1px;width:2px;height:48px;margin:0 auto 20px}.pain-bridge-text{color:var(--teal-700);letter-spacing:.04em;font-size:20px;font-weight:700}@media (max-width:700px){.pain-cards{grid-template-columns:1fr;gap:14px}.recruit-pain{padding:56px 0 24px}.pain-card{min-height:auto;padding:30px 24px 30px 68px}.pain-num{font-size:32px;top:22px;left:22px}.pain-text{font-size:15px}.pain-bridge{padding:40px 0 8px}.pain-bridge-line{height:36px}.pain-bridge-text{font-size:17px}}.recruit-nums{background:#fff;padding:80px 0 60px;scroll-margin-top:120px;position:relative;overflow:hidden}.age-ratio-wrap{background:var(--teal-50);border-radius:16px;margin-top:48px;padding:32px 40px}.age-ratio-title{color:var(--ink);font-size:17px;font-weight:700;font-family:var(--display);letter-spacing:.05em;margin-bottom:24px}.age-ratio-bars{flex-direction:column;gap:14px;display:flex}.age-ratio-row{align-items:center;gap:14px;display:flex}.age-ratio-label{width:36px;color:var(--ink);flex-shrink:0;font-size:13px;font-weight:700}.age-ratio-track{background:#e5edf0;border-radius:100px;flex:1;height:26px;overflow:hidden}.age-ratio-bar{border-radius:100px;height:100%;transition:width 1s ease-out}.age-ratio-pct{width:38px;color:var(--ink-mute);text-align:right;flex-shrink:0;font-size:14px;font-weight:700}.employ-wrap{background:var(--teal-50);border-radius:16px;margin-top:56px;padding:36px 40px}.employ-title{color:var(--ink);font-size:17px;font-weight:700;font-family:var(--display);letter-spacing:.05em;margin-bottom:20px}.employ-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.employ-table{border-collapse:collapse;background:#fff;border-radius:12px;width:100%;font-size:14px;overflow:hidden}.employ-table th,.employ-table td{text-align:center;border-bottom:1px solid var(--line);vertical-align:middle;padding:14px 18px;line-height:1.6}.employ-table thead th{background:var(--teal-700);color:#fff;letter-spacing:.05em;text-align:center;font-size:13px;font-weight:700}.employ-table thead th:first-child{background:var(--teal-800);text-align:left;width:120px}.employ-table .row-item{color:var(--teal-800);background:var(--teal-50);white-space:nowrap;text-align:left;font-size:13px;font-weight:700}.employ-table .cell-ok{color:var(--teal-700);text-align:center;font-weight:700}.employ-table .cell-ng{color:#c0392b;text-align:center;font-weight:700}.employ-table .cell-note{color:var(--ink-mute);font-size:11px;font-weight:400}.employ-table .th-sub{opacity:.85;font-size:11px;font-weight:400}.employ-table tbody tr:last-child td{border-bottom:none}.employ-table tbody tr:hover td{background:var(--bg-soft)}.employ-table tbody tr:hover td.row-item{background:var(--teal-100)}.employ-note{color:var(--ink-mute);margin-top:14px;font-size:12px;line-height:1.7}.recruit-voices-sec{background:var(--teal-50);padding:80px 0;scroll-margin-top:120px;position:relative;overflow:hidden}.voice-read-more{color:var(--teal-700);letter-spacing:.06em;margin-top:auto;padding-top:12px;font-size:12px;font-weight:700}.jobs-list{border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:0;margin-top:40px;display:flex;overflow:hidden}.job-list-item{border-bottom:1px solid var(--line);color:inherit;background:#fff;align-items:center;gap:24px;padding:28px 32px;text-decoration:none;transition:background .15s;display:flex}.job-list-item:last-child{border-bottom:none}.job-list-item:hover{background:var(--teal-50)}.job-list-idx{font-family:var(--display);color:var(--teal-400);flex-shrink:0;width:44px;font-size:28px;font-weight:900}.job-list-info{flex:1;min-width:0}.job-list-title{font-family:var(--display);color:var(--ink);margin-bottom:2px;font-size:20px;font-weight:700}.job-list-sub{color:var(--teal-700);letter-spacing:.04em;margin-bottom:6px;font-size:12px;font-weight:600}.job-list-desc{color:var(--ink-mute);font-size:13px;line-height:1.7}.job-list-salary{font-family:var(--display);color:var(--teal-700);background:var(--teal-50);border:1px solid var(--teal-300);white-space:nowrap;border-radius:100px;flex-shrink:0;padding:6px 16px;font-size:13px;font-weight:700}.job-list-arrow{color:var(--teal-500);flex-shrink:0;transition:transform .15s}.job-list-item:hover .job-list-arrow{transform:translate(4px)}.recruit-jobs{background:#fff;padding:80px 0 60px;scroll-margin-top:120px;position:relative;overflow:hidden}.jobs-accordion{flex-direction:column;gap:10px;margin-top:40px;display:flex}.job-item{border:1px solid var(--line);border-radius:12px;transition:box-shadow .2s,border-color .2s;overflow:hidden}.job-item.is-open{border-color:var(--teal-300);box-shadow:0 8px 32px -8px #0e7c7b2e}.job-trigger{cursor:pointer;text-align:left;background:#fff;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:22px 28px;transition:background .15s;display:flex}.job-trigger:hover,.job-item.is-open .job-trigger{background:var(--teal-50)}.job-trigger-inner{flex:1;align-items:center;gap:20px;min-width:0;display:flex}.job-num{font-family:var(--display);color:var(--teal-500);flex-shrink:0;font-size:26px;font-weight:800}.job-trigger-text{flex-direction:column;gap:2px;display:flex}.job-title{color:var(--ink);font-size:17px;font-weight:700}.job-sub{color:var(--teal-700);letter-spacing:.05em;font-size:12px;font-weight:600}.job-salary-badge{background:var(--teal-100);color:var(--teal-800);white-space:nowrap;border-radius:20px;flex-shrink:0;padding:5px 14px;font-size:12px;font-weight:700}.job-chevron{color:var(--teal-600);flex-shrink:0;transition:transform .25s}.job-item.is-open .job-chevron{transform:rotate(180deg)}.job-body{max-height:0;transition:max-height .38s;overflow:hidden}.job-item.is-open .job-body{max-height:700px}.job-body-inner{border-top:1px solid var(--line);margin-top:0;padding:0 28px 28px}.job-desc{color:var(--ink);margin:20px 0;font-size:15px;line-height:1.8}.job-meta{background:var(--bg-soft);border-radius:8px;flex-direction:column;gap:8px;margin-bottom:20px;padding:14px 18px;display:flex}.job-meta-row{gap:14px;font-size:13px;display:flex}.job-meta-row span:first-child{color:var(--ink-mute);flex-shrink:0;min-width:72px;font-weight:600}.job-meta-row span:last-child{color:var(--ink)}.job-projects-title{color:var(--teal-700);letter-spacing:.08em;margin-bottom:10px;font-size:12px;font-weight:700}.job-projects ul{flex-direction:column;gap:6px;list-style:none;display:flex}.job-projects li{color:var(--ink-mute);padding-left:14px;font-size:13px;line-height:1.6;position:relative}.job-projects li:before{content:"▸";color:var(--teal-500);font-size:11px;position:absolute;top:2px;left:0}.recruit-flow{background:#fff;padding:60px 0 80px;scroll-margin-top:120px}.flow-steps{align-items:flex-start;gap:0;margin-top:48px;display:flex}.flow-step{text-align:center;flex:1;padding:0 24px}.flow-circle{background:var(--teal-700);color:#fff;width:60px;height:60px;font-family:var(--display);letter-spacing:.05em;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 18px;font-size:17px;font-weight:800;display:flex}.flow-step-title{color:var(--ink);margin-bottom:10px;font-size:16px;font-weight:700}.flow-step-desc{color:var(--ink-mute);font-size:13px;line-height:1.75}.flow-arrow{color:var(--teal-400);flex-shrink:0;align-items:center;padding-top:18px;display:flex}.flow-note{text-align:center;color:var(--teal-800);background:var(--teal-50);border-radius:8px;margin-top:40px;padding:12px 28px;font-size:13px;font-weight:600;display:inline-block}.voice-messages{border-top:1px solid #0e7c7b1f;margin-top:64px;padding-top:48px}.voice-messages-title{text-align:center;color:var(--teal-800);letter-spacing:.04em;margin-bottom:32px;font-size:16px;font-weight:700}.voice-messages-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.voice-msg{background:#fff;border:1px solid #0e7c7b1a;border-radius:12px;padding:28px 24px 24px 40px;transition:transform .3s,box-shadow .3s;position:relative}.voice-msg:hover{transform:translateY(-3px);box-shadow:0 8px 24px #0e7c7b1a}.voice-msg-mark{font-family:var(--display);color:var(--teal-400);font-size:32px;font-weight:800;line-height:1;position:absolute;top:16px;left:14px}.voice-msg-text{color:var(--ink);margin-bottom:12px;font-size:14px;font-weight:600;line-height:1.85}.voice-msg-attr{color:var(--ink-mute);font-size:11px;font-weight:500}@media (max-width:700px){.voice-messages-grid{grid-template-columns:1fr;gap:12px}.voice-messages{margin-top:48px;padding-top:36px}}@media (min-width:701px) and (max-width:1024px){.voice-messages-grid{grid-template-columns:repeat(2,1fr)}}.recruit-download{padding:60px 0 80px}.recruit-working{background:#fff;padding:80px 0;scroll-margin-top:120px;position:relative;overflow:hidden}.working-cards{grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px;display:grid}.working-card{border:1px solid var(--line);background:#fff;border-radius:16px;padding:30px 28px 32px}.working-icon{justify-content:center;align-items:center;width:100%;height:128px;margin-bottom:22px;display:flex}.working-icon img{object-fit:contain;max-width:100%;max-height:100%}.working-card h3{color:var(--navy-800);margin-bottom:14px;font-size:17px;font-weight:700;line-height:1.5}.working-card p{color:var(--ink-mute);font-size:13px;line-height:2}.recruit-benefits{background:#fff;padding:80px 0;scroll-margin-top:120px;position:relative;overflow:hidden}.benefits-lead{text-align:center;max-width:680px;color:var(--ink-mute);margin:0 auto 48px;font-size:14px;line-height:2}.benefits-feature{background:var(--teal-50);border:1px solid var(--teal-200);border-radius:20px;align-items:flex-start;gap:40px;padding:40px 48px;display:flex}.benefits-feature-illust{flex-shrink:0;justify-content:center;align-items:center;width:min(34%,300px);min-width:220px;display:flex}.benefits-feature-illust img{object-fit:contain;width:100%;height:auto}.benefits-feature-body h3{color:var(--navy-800);margin-bottom:10px;font-size:20px;font-weight:700}.benefits-feature-tag{color:var(--teal-700);background:var(--teal-100);letter-spacing:.04em;border-radius:20px;margin-bottom:16px;padding:4px 14px;font-size:12px;font-weight:700;display:inline-block}.benefits-feature-body p{color:var(--ink-mute);margin-bottom:20px;font-size:14px;line-height:2}.benefits-exam-list{flex-direction:column;gap:10px;list-style:none;display:flex}.benefits-exam-list li{color:var(--ink);align-items:baseline;gap:10px;font-size:13px;line-height:1.7;display:flex}.exam-label{color:#fff;background:var(--teal-700);letter-spacing:.04em;border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:11px;font-weight:700}.benefits-grid{grid-template-columns:repeat(2,1fr);gap:20px;margin-top:32px;display:grid}.benefits-card{background:var(--teal-50);border:1px solid var(--teal-200);border-radius:16px;padding:32px 28px;transition:transform .25s,box-shadow .25s}.benefits-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0e7c7b1f}.benefits-card-icon{background:var(--teal-100);width:48px;height:48px;color:var(--teal-700);border-radius:12px;justify-content:center;align-items:center;margin-bottom:16px;display:flex}.benefits-card h4{color:var(--navy-800);border-bottom:2px solid var(--teal-200);margin-bottom:14px;padding-bottom:10px;font-size:17px;font-weight:700}.benefits-card ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.benefits-card li{color:var(--ink);padding-left:18px;font-size:13.5px;line-height:1.7;position:relative}.benefits-card li:before{content:"";background:var(--teal-500,#0e7c7b);border-radius:50%;width:8px;height:8px;position:absolute;top:8px;left:0}.benefits-card-note{color:var(--ink-mute);margin-top:12px;font-size:11.5px;line-height:1.6}.vd-hero{background:var(--navy-900);height:550px;margin-top:0;padding-top:72px;position:relative;overflow:hidden}.vd-hero-photo{position:absolute;inset:0}.vd-hero-photo img{object-fit:cover;object-position:center 30%;opacity:.5;width:100%;height:100%}.vd-hero-overlay{background:linear-gradient(#0000 0%,#0a1d334d 40%,#0a1d33f2 100%);position:absolute;inset:0}.vd-hero-content{padding:36px 32px;position:absolute;bottom:0;left:0;right:0}.vd-breadcrumb{color:#ffffff80;letter-spacing:.04em;flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:14px;font-size:11px;display:flex}.vd-breadcrumb a{color:#ffffff80;transition:color .15s}.vd-breadcrumb a:hover{color:#ffffffe6}.vd-hero-meta{align-items:center;gap:10px;margin-bottom:6px;display:flex}.vd-hero-role{color:var(--teal-300);letter-spacing:.1em;font-size:12px;font-weight:700}.vd-hero-year{color:#ffffff73;font-size:11px}.vd-hero-name{font-family:var(--display);color:#fff;margin-bottom:10px;font-size:52px;font-weight:800;line-height:1}.vd-hero-headline{font-family:var(--serif);color:#ffffffe0;max-width:600px;font-size:20px;font-weight:500;line-height:1.55}.vd-article{max-width:720px;margin:0 auto;padding:60px 32px 20px}.vd-section{margin-bottom:56px}.vd-section:first-child p:first-child:first-letter{font-size:3em;font-family:var(--serif);color:var(--teal-700);float:left;margin-top:4px;margin-right:6px;font-weight:600;line-height:.85}.vd-section h2{font-family:var(--serif);color:var(--teal-800);border-left:4px solid var(--teal-500);border-bottom:1px solid var(--teal-100);margin-bottom:20px;padding:0 0 14px 16px;font-size:20px;font-weight:600;line-height:1.55}.vd-section p{color:var(--ink);text-align:justify;text-justify:inter-ideograph;margin-bottom:20px;font-size:15.5px;line-height:2.1}.vd-section p:last-child{margin-bottom:0}.vd-section+.vd-section{padding-top:40px;position:relative}.vd-section+.vd-section:before{content:"";background:var(--teal-300);width:40px;height:2px;margin-bottom:40px;display:block}.vd-nav{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;max-width:740px;margin:0 auto;padding:8px 32px 60px;display:flex}.vd-nav-back{color:var(--teal-700);align-items:center;gap:6px;padding:8px 0;font-size:13px;font-weight:700;transition:color .15s;display:flex}.vd-nav-back:hover{color:var(--teal-900)}.vd-nav-siblings{align-items:center;gap:24px;display:flex}.vd-nav-prev,.vd-nav-next{color:var(--ink-mute);align-items:center;gap:5px;font-size:13px;font-weight:600;transition:color .15s;display:flex}.vd-nav-prev:hover,.vd-nav-next:hover{color:var(--teal-700)}.vd-cta{background:var(--teal-50);text-align:center;padding:64px 32px}.vd-cta h3{font-family:var(--serif);color:var(--ink);margin-bottom:14px;font-size:24px;font-weight:600}.vd-cta p{color:var(--ink-mute);margin-bottom:28px;font-size:14px;line-height:1.8}@media (max-width:980px){.age-ratio-wrap,.employ-wrap{padding:24px 20px}.flow-steps{flex-direction:column;align-items:center;gap:16px}.flow-step{width:100%;max-width:400px}.flow-arrow{transform:rotate(90deg)}.job-salary-badge{display:none}.rh-photos{height:240px}.rh-photo{height:210px}}@media (max-width:600px){.rh-inner{padding:56px 20px 40px}.rh-title{font-size:38px}.rh-sub{font-size:11px}.rh-lead{font-size:13px;line-height:1.8}.rh-lead br{display:none}.rh-photos{height:190px}.rh-photo{height:165px}.rh-photo.rp-wide{width:240px}.rh-photo.rp-land{width:210px}.recruit-nav{top:56px}.recruit-nav-inner{justify-content:flex-start;padding:0 12px}.recruit-nav-item{white-space:nowrap;padding:10px 14px;font-size:11px}.recruit-pain{padding:48px 0 20px}.pain-cards{gap:12px}.pain-card{padding:24px 20px 24px 60px}.pain-num{font-size:28px;top:18px;left:18px}.pain-text{font-size:14px}.pain-bridge{padding:32px 0 4px}.pain-bridge-line{height:28px}.pain-bridge-text{font-size:15px}.recruit-working{padding:48px 0 56px}.working-cards{grid-template-columns:1fr;gap:16px;margin-top:32px}.working-icon{height:88px;margin-bottom:16px}.working-card{padding:24px 22px 28px}.working-card h3{margin-bottom:10px;font-size:15px}.working-card p{font-size:13px;line-height:1.9}.recruit-voices-sec{padding:56px 0 60px}.voice-photo{height:200px}.voice-headline{font-size:14px}.voice-messages{margin-top:40px;padding-top:32px}.voice-messages-title{margin-bottom:20px;font-size:14px}.voice-msg{padding:22px 20px 20px 36px}.voice-msg-mark{font-size:26px;top:12px;left:10px}.voice-msg-text{margin-bottom:8px;font-size:13px}.recruit-nums{padding:56px 0 48px}.age-ratio-wrap{padding:20px 16px}.employ-wrap{-webkit-overflow-scrolling:touch;padding:20px 16px;overflow-x:auto}.employ-table{min-width:540px}.employ-table th,.employ-table td{padding:10px 12px;font-size:12px}.recruit-benefits{padding:56px 0}.benefits-lead{margin-bottom:32px;font-size:13px}.benefits-lead br{display:none}.benefits-feature{flex-direction:column;gap:24px;padding:28px 24px}.benefits-feature-illust{width:100%;min-width:0;max-width:260px;margin:0 auto}.benefits-feature-body h3{font-size:16px}.benefits-feature-body p{font-size:13px}.benefits-feature-tag{font-size:11px}.benefits-grid{grid-template-columns:1fr;gap:16px;margin-top:24px}.benefits-card{padding:24px 20px}.benefits-card h4{font-size:15px}.recruit-jobs{padding:56px 0}.job-list-item{flex-wrap:wrap;gap:14px;padding:20px}.job-list-salary{display:none}.job-list-desc{font-size:12px}.job-body-inner{padding:0 16px 20px}.job-trigger{padding:18px 16px}.job-num{font-size:20px}.recruit-flow{padding:56px 0 48px}.flow-step{padding:0 16px}.flow-circle{width:48px;height:48px;margin-bottom:12px;font-size:14px}.flow-step-title{font-size:14px}.flow-step-desc{font-size:12px}.recruit-download{padding:40px 0 56px}.margin-card{padding:24px 20px}.vd-hero{height:360px}.vd-hero-name{font-size:38px}.vd-hero-headline{font-size:16px}.vd-article{padding:40px 20px 16px}.vd-section p{font-size:15px;line-height:2}.vd-nav{flex-wrap:wrap;padding:8px 20px 40px}.vd-nav-siblings{gap:16px}.divider-wave{height:48px}}.jd-hero{background:linear-gradient(160deg, var(--navy-900) 0%, var(--teal-900) 100%);padding:140px 0 80px;position:relative;overflow:hidden}.jd-hero-inner{z-index:2;max-width:var(--max);margin:0 auto;padding:0 40px;position:relative}.jd-breadcrumb{color:#fff9;letter-spacing:.05em;margin-bottom:20px;font-size:12px}.jd-breadcrumb a{color:#ffffffb3;text-decoration:none}.jd-breadcrumb a:hover{color:#fff}.jd-label{font-family:var(--display);color:var(--teal-400);letter-spacing:.12em;margin-bottom:12px;font-size:12px;font-weight:700}.jd-title{font-family:var(--display);color:#fff;margin-bottom:10px;font-size:clamp(32px,5vw,52px);font-weight:900;line-height:1.1}.jd-sub{color:var(--teal-300);letter-spacing:.06em;margin-bottom:20px;font-size:14px;font-weight:600}.jd-salary{font-family:var(--display);color:#fff;background:#ffffff1f;border:1px solid #ffffff40;border-radius:100px;padding:8px 24px;font-size:15px;font-weight:700;display:inline-block}.jd-wave{width:100%;height:60px;display:block;position:absolute;bottom:0;left:0}.jd-body{background:#fff;padding:60px 0 80px}.jd-section{border-bottom:1px solid var(--line);margin-bottom:56px;padding-bottom:56px}.jd-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.jd-section-title{font-family:var(--display);color:var(--teal-800);border-bottom:2px solid var(--teal-200);letter-spacing:.04em;margin-bottom:24px;padding-bottom:12px;font-size:20px;font-weight:800}.jd-desc{color:var(--ink);font-size:15px;line-height:2}.jd-overview{border:1px solid var(--line);border-radius:12px;grid-template-columns:1fr;gap:0;display:grid;overflow:hidden}.jd-row{border-bottom:1px solid var(--line);grid-template-columns:120px 1fr;display:grid}.jd-row:last-child{border-bottom:none}.jd-row dt{background:var(--teal-50);color:var(--teal-800);align-items:flex-start;padding:14px 16px;font-size:13px;font-weight:700;display:flex}.jd-row dd{color:var(--ink);padding:14px 20px;font-size:14px;line-height:1.8}.jd-note{color:var(--ink-mute);font-size:12px}.jd-req-label{color:var(--teal-800);margin-bottom:8px;font-size:13px;font-weight:700}.jd-list{flex-direction:column;gap:8px;padding:0;list-style:none;display:flex}.jd-list li{color:var(--ink);padding-left:20px;font-size:14px;line-height:1.7;position:relative}.jd-list li:before{content:"";background:var(--teal-500);border-radius:2px;width:8px;height:2px;position:absolute;top:10px;left:0}.jd-projects{flex-direction:column;gap:10px;padding:0;list-style:none;display:flex}.jd-projects li{color:var(--ink);background:var(--teal-50);border-left:3px solid var(--teal-500);border-radius:0 8px 8px 0;padding:10px 16px;font-size:14px;line-height:1.7}.jd-flow{flex-direction:column;gap:0;max-width:540px;display:flex}.jd-flow-step{align-items:flex-start;gap:16px;padding:16px 0;display:flex}.jd-flow-num{font-family:var(--display);color:#fff;background:var(--teal-700);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;font-weight:900;display:flex}.jd-flow-label{color:var(--ink);padding-top:7px;font-size:15px;line-height:1.7}.jd-flow-arrow{color:var(--teal-400);padding-left:10px;font-size:18px}.jd-flow-note{color:var(--ink-mute);border-left:3px solid var(--teal-200);margin-top:16px;padding-left:14px;font-size:13px;line-height:1.8}.jd-nav{max-width:var(--max);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;margin:0 auto;padding:20px 40px 40px;display:flex}.jd-nav-back{color:var(--teal-700);align-items:center;gap:6px;font-size:13px;font-weight:700;text-decoration:none;display:flex}.jd-nav-back:hover{color:var(--teal-900)}.jd-nav-siblings{align-items:center;gap:24px;display:flex}.jd-nav-prev,.jd-nav-next{color:var(--ink-mute);font-size:13px;font-weight:600;text-decoration:none}.jd-nav-prev:hover,.jd-nav-next:hover{color:var(--teal-700)}@media (max-width:980px){.jd-row{grid-template-columns:100px 1fr}.jd-nav{padding:20px 24px 40px}}@media (max-width:600px){.jd-hero-inner,.jd-body .wrap{padding:0 20px}.jd-row{grid-template-columns:1fr}.jd-row dt{border-bottom:1px solid var(--line)}.jd-nav{flex-wrap:wrap;padding:16px 20px 32px}.job-list-item{flex-wrap:wrap}}.team-card,.service-card,.voice-card,.svc-detail-card,.service-page-card,.otera-feature-card,.otera-summary-card,.job-list-item,.working-card,.benefits-feature{transition:transform .25s,box-shadow .25s,border-color .25s,background-color .25s,opacity .25s}.team-card:hover,.service-card:hover,.voice-card:hover,.svc-detail-card:hover,.service-page-card:hover,.otera-feature-card:hover,.otera-summary-card:hover,.job-list-item:hover,.working-card:hover,.benefits-feature:hover{border-color:var(--teal-300);transform:translateY(-6px);box-shadow:0 22px 52px -22px #0e7c7b47}.service-card .illust img,.team-card .illust img,.voice-photo img,.svc-card-photo img,.otera-feature-icon,.working-icon,.benefits-feature-illust{transition:transform .35s,filter .35s,opacity .35s}.service-card:hover .illust img,.team-card:hover .illust img{filter:saturate(1.08)brightness(1.04);transform:translateY(-3px)scale(1.04)}.voice-card:hover .voice-photo img,.svc-detail-card:hover .svc-card-photo img{filter:saturate(1.08)brightness(1.05);transform:scale(1.055)}.working-card:hover .working-icon,.benefits-feature:hover .benefits-feature-illust,.otera-feature-card:hover .otera-feature-icon{transform:translateY(-2px)scale(1.04)}.btn .arr,.form-submit svg,.read-more svg,.service-link,.svc-card-link svg,.job-list-arrow,.voice-read-more{transition:transform .22s,gap .22s,color .22s,background-color .22s}.btn:hover .arr,.btn:focus-visible .arr,.form-submit:hover svg,.read-more:hover svg,.service-card:hover .service-link,.svc-detail-card:hover .svc-card-link svg,.job-list-item:hover .job-list-arrow,.voice-card:hover .voice-read-more{transform:translate(4px)}.section-head .label:before,.section-head .label:after{opacity:.65;transition:transform .55s cubic-bezier(.22,1,.36,1),opacity .55s;transform:scaleX(.55)}.section-head:hover .label:before,.section-head:hover .label:after,.reveal.in-view.section-head .label:before,.reveal.in-view.section-head .label:after{opacity:1;transform:scaleX(1)}.section-head h2{transition:color .25s}.section-head:hover h2{color:var(--teal-800)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.team-card:hover,.service-card:hover,.voice-card:hover,.svc-detail-card:hover,.service-page-card:hover,.otera-feature-card:hover,.otera-summary-card:hover,.job-list-item:hover,.working-card:hover,.benefits-feature:hover,.btn:hover,.service-card:hover .illust img,.team-card:hover .illust img,.voice-card:hover .voice-photo img,.svc-detail-card:hover .svc-card-photo img{transform:none!important}}.recruit-dots{pointer-events:none;background-image:radial-gradient(#0e7c7b1a 1.2px,#0000 1.4px);background-size:18px 18px;width:280px;height:100%;position:absolute;top:0}.recruit-dots.rd-right{right:0;-webkit-mask-image:linear-gradient(270deg,#00000080 0%,#0000 100%);mask-image:linear-gradient(270deg,#00000080 0%,#0000 100%)}.recruit-dots.rd-left{left:0;-webkit-mask-image:linear-gradient(90deg,#00000080 0%,#0000 100%);mask-image:linear-gradient(90deg,#00000080 0%,#0000 100%)}.recruit-deco-circle{pointer-events:none;background:radial-gradient(circle,#0e7c7b0f 0%,#0000 70%);border-radius:50%;position:absolute}.recruit-deco-circle.rc-1{width:380px;height:380px;bottom:-80px;left:-120px}.recruit-deco-circle.rc-2{width:260px;height:260px;top:40px;right:-60px}.recruit-blob{pointer-events:none;background:#0e7c7b0b;animation:12s ease-in-out infinite blob-morph;position:absolute}.recruit-blob.rb-1{border-radius:68% 32% 44% 56%/38% 62%;width:320px;height:320px;top:60px;right:-80px}.recruit-blob.rb-2{border-radius:44% 56% 68% 32%/58% 38% 62% 42%;width:280px;height:280px;animation:14s ease-in-out infinite blob-morph2;bottom:40px;left:-60px}@media (max-width:767px){.recruit-dots{width:160px}.recruit-deco-circle.rc-1{width:220px;height:220px}.recruit-deco-circle.rc-2{width:160px;height:160px}.recruit-blob.rb-1{width:200px;height:200px}.recruit-blob.rb-2{width:180px;height:180px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
