:root{--navy-900:#06122e;--navy-800:#0a1b3d;--navy-700:#102554;--navy-600:#16336e;--navy-500:#1f4286;--navy-100:#e9edf5;--navy-50:#f4f6fb;--gold-700:#8a6420;--gold-600:#a8822f;--gold-500:#c9a45a;--gold-400:#d8b975;--gold-300:#e4ce99;--gold-100:#f4ead4;--ivory:#faf7f0;--cream:#f3eee2;--paper:#f8f5ec;--ink:#1a1f2c;--ink-60:rgba(26,31,44,0.6);--ink-40:rgba(26,31,44,0.4);--line:rgba(10,27,61,0.12);--line-gold:rgba(168,130,47,0.4);--font-jp:"Shippori Mincho","Noto Serif JP","Yu Mincho","游明朝",serif;--font-jp-sans:"Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN","Yu Gothic","游ゴシック",sans-serif;--font-en:"Cormorant Garamond","Times New Roman",serif;--font-en-sans:"Outfit","Helvetica Neue",Arial,sans-serif;--container:1240px;--gutter:32px;--ease:cubic-bezier(0.22,0.61,0.36,1);--ease-out:cubic-bezier(0.16,1,0.3,1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;overflow-x:hidden}body{font-family:var(--font-jp);color:var(--ink);background:var(--ivory);line-height:1.8;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"palt";overflow-x:hidden}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none;transition:color 0.3s var(--ease)}ul,ol{list-style:none}button{background:none;border:none;cursor:pointer;font:inherit;color:inherit}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;padding:18px 0;background:rgba(6,18,46,0.78);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(212,185,117,0.12);transition:all 0.5s var(--ease)}.site-header.is-scrolled{padding:12px 0;background:rgba(6,18,46,0.95);box-shadow:0 10px 40px rgba(0,0,0,0.25)}.header-inner{max-width:1480px;margin:0 auto;padding:0 36px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{display:flex;flex-direction:column;align-items:center;gap:2px;color:#fff}.logo-mark{width:82px;height:auto;flex-shrink:0;display:block}.logo-mark img{width:100%;height:auto;display:block}.logo-text{display:flex;flex-direction:column;align-items:center;line-height:1.1}.logo-name{width:70px;height:auto;display:block}.logo-ja{font-family:var(--font-jp);font-size:8px;letter-spacing:0.06em;color:rgba(255,255,255,0.7);margin-top:2px;text-align:center}.global-nav ul{display:flex;gap:6px}.global-nav a{position:relative;display:flex;flex-direction:column;align-items:center;padding:10px 16px;color:#fff}.global-nav .nav-num{font-family:var(--font-en-sans);font-size:9px;letter-spacing:0.18em;color:var(--gold-400);margin-bottom:2px}.global-nav .nav-label{font-family:var(--font-en);font-size:15px;letter-spacing:0.08em;font-weight:500;transition:color 0.3s var(--ease)}.global-nav .nav-jp{font-family:var(--font-jp);font-size:10px;letter-spacing:0.08em;color:rgba(255,255,255,0.55);margin-top:1px}.global-nav a::after{content:"";position:absolute;left:50%;bottom:0;width:0;height:1px;background:var(--gold-400);transition:width 0.4s var(--ease),left 0.4s var(--ease)}.global-nav a:hover .nav-label{color:var(--gold-300)}.global-nav a:hover::after{width:32px;left:calc(50% - 16px)}.header-cta{display:flex;align-items:center;gap:16px}.header-tel{display:flex;flex-direction:column;align-items:flex-end;line-height:1.2;color:#fff}.tel-label{font-family:var(--font-en-sans);font-size:9px;letter-spacing:0.2em;color:var(--gold-400)}.tel-num{font-family:var(--font-en);font-size:20px;font-weight:500;letter-spacing:0.05em}.btn-contact{display:inline-flex;align-items:center;gap:8px;padding:14px 22px;background:linear-gradient(135deg,var(--gold-500) 0%,var(--gold-700) 100%);color:var(--navy-900);font-family:var(--font-jp);font-size:13px;font-weight:600;letter-spacing:0.08em;border-radius:2px;position:relative;overflow:hidden;transition:all 0.4s var(--ease)}.btn-contact::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--gold-300) 0%,var(--gold-500) 100%);opacity:0;transition:opacity 0.4s var(--ease);z-index:0}.btn-contact span,.btn-contact svg{position:relative;z-index:1}.btn-contact:hover::before{opacity:1}.btn-contact:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(168,130,47,0.35)}.btn-apply{display:inline-flex;align-items:center;gap:8px;padding:13px 20px;background:transparent;color:#fff;border:1px solid var(--gold-400);font-family:var(--font-jp);font-size:13px;font-weight:600;letter-spacing:0.08em;border-radius:2px;transition:all 0.4s var(--ease)}.btn-apply svg{color:var(--gold-300)}.btn-apply:hover{background:rgba(212,185,117,0.14);border-color:var(--gold-300);transform:translateY(-2px)}.menu-toggle{display:none;flex-direction:column;gap:6px;width:32px;padding:4px}.menu-toggle span{display:block;width:100%;height:1.5px;background:var(--gold-400);transition:all 0.3s var(--ease)}.menu-toggle.is-active span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}.menu-toggle.is-active span:nth-child(2){opacity:0}.menu-toggle.is-active span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}.hero{position:relative;min-height:100vh;display:flex;align-items:center;padding:120px 0 80px;overflow:hidden;color:#fff}.hero-bg{position:absolute;inset:0;z-index:0}.hero-bg img{width:100%;height:100%;object-fit:cover;animation:heroZoom 18s ease-out forwards}@keyframes heroZoom{from{transform:scale(1.15)}to{transform:scale(1)}}.hero-overlay{position:absolute;inset:0;background:linear-gradient(120deg,rgba(6,18,46,0.92) 0%,rgba(6,18,46,0.65) 55%,rgba(6,18,46,0.4) 100%),radial-gradient(circle at 80% 40%,rgba(212,185,117,0.15) 0%,transparent 50%)}.hero-arch{position:absolute;top:-2%;left:50%;transform:translateX(-50%);width:min(1600px,124%);z-index:2;pointer-events:none;opacity:0;animation:heroArchIn 1.8s var(--ease-out) 0.4s forwards}.hero-arch svg{width:100%;height:auto;display:block}@keyframes heroArchIn{from{opacity:0;transform:translateX(-50%) translateY(-24px)}to{opacity:0.95;transform:translateX(-50%) translateY(0)}}@media (max-width:768px){.hero-arch{width:220%;top:2%}}.hero-deco-grid{position:absolute;inset:0;display:grid;grid-template-columns:repeat(4,1fr);z-index:1;pointer-events:none}.hero-deco-grid span{border-right:1px solid rgba(255,255,255,0.04)}.hero-deco-grid span:last-child{border-right:none}.hero-content{position:relative;z-index:3;max-width:var(--container);width:100%;margin:0 auto;padding:0 calc(var(--gutter) + 20px)}.hero-eyebrow{display:flex;align-items:center;gap:14px;font-family:var(--font-en-sans);font-size:11px;font-weight:300;letter-spacing:0.35em;color:var(--gold-400);margin-bottom:40px;text-transform:uppercase;opacity:0;animation:fadeUp 1s var(--ease-out) 0.3s forwards}.eyebrow-line{width:60px;height:1px;background:var(--gold-500)}.hero-title{font-family:var(--font-jp);font-size:clamp(40px,6.5vw,92px);font-weight:600;line-height:1.25;letter-spacing:0.04em;margin-bottom:36px}.hero-title-line{display:block;overflow:hidden}.hero-title-line em{font-style:normal;background:linear-gradient(180deg,var(--gold-300) 0%,var(--gold-500) 60%,var(--gold-700) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;position:relative;display:inline-block}.hero-title-line{opacity:0;transform:translateY(40px);animation:heroLineUp 1s var(--ease-out) forwards}.hero-title-line:nth-child(1){animation-delay:0.5s}.hero-title-line:nth-child(2){animation-delay:0.75s}@keyframes heroLineUp{to{opacity:1;transform:translateY(0)}}.hero-lead{font-size:16px;line-height:2;letter-spacing:0.06em;color:rgba(255,255,255,0.85);margin-bottom:48px;opacity:0;animation:fadeUp 1s var(--ease-out) 1s forwards}.hero-actions{display:flex;gap:18px;flex-wrap:wrap;opacity:0;animation:fadeUp 1s var(--ease-out) 1.2s forwards}.btn{display:inline-flex;align-items:center;gap:14px;padding:20px 38px;font-family:var(--font-jp);font-size:14px;font-weight:600;letter-spacing:0.12em;border-radius:2px;position:relative;overflow:hidden;transition:all 0.4s var(--ease)}.btn svg{transition:transform 0.4s var(--ease)}.btn:hover svg{transform:translateX(6px)}.btn-primary{background:linear-gradient(135deg,var(--gold-500) 0%,var(--gold-700) 100%);color:var(--navy-900)}.btn-primary::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--gold-300) 0%,var(--gold-500) 100%);opacity:0;transition:opacity 0.4s var(--ease)}.btn-primary span,.btn-primary svg{position:relative;z-index:1}.btn-primary:hover::before{opacity:1}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 16px 30px rgba(168,130,47,0.4)}.btn-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,0.4)}.btn-ghost:hover{border-color:var(--gold-400);color:var(--gold-300);background:rgba(212,185,117,0.08)}.hero-side{position:absolute;right:30px;top:50%;transform:translateY(-50%);z-index:2}.vertical-text{writing-mode:vertical-rl;font-family:var(--font-jp);font-size:12px;letter-spacing:0.5em;color:rgba(255,255,255,0.35);text-transform:uppercase}.hero-scroll{position:absolute;left:50px;bottom:40px;display:flex;flex-direction:column;align-items:center;gap:16px;z-index:3}.hero-scroll span:first-child{font-family:var(--font-en-sans);font-size:10px;letter-spacing:0.3em;color:rgba(255,255,255,0.6)}.scroll-line{width:1px;height:50px;background:rgba(255,255,255,0.3);position:relative;overflow:hidden}.scroll-line::after{content:"";position:absolute;top:-50px;left:0;width:100%;height:50px;background:var(--gold-400);animation:scrollDown 2.2s ease-in-out infinite}@keyframes scrollDown{0%{top:-50px}100%{top:100%}}.hero-stats{position:absolute;right:80px;bottom:60px;display:flex;gap:50px;z-index:3;padding:24px 38px;background:rgba(6,18,46,0.55);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(212,185,117,0.25)}.stat{display:flex;flex-direction:column;text-align:center}.stat-num{font-family:var(--font-en);font-weight:500;color:var(--gold-300);line-height:1;display:flex;align-items:baseline;justify-content:center;gap:2px}.stat-num em{font-style:normal;font-size:44px}.stat-num i{font-style:normal;font-size:16px;font-family:var(--font-jp)}.stat-label{margin-top:8px;font-family:var(--font-jp);font-size:11px;letter-spacing:0.1em;color:rgba(255,255,255,0.85);line-height:1.5;display:flex;flex-direction:column}.stat-label small{font-size:9px;color:rgba(255,255,255,0.45);letter-spacing:0.08em;margin-top:2px}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}.marquee{background:var(--navy-900);color:var(--gold-400);padding:22px 0;overflow:hidden;border-top:1px solid rgba(212,185,117,0.2);border-bottom:1px solid rgba(212,185,117,0.2)}.marquee-track{display:flex;gap:50px;white-space:nowrap;animation:marquee 35s linear infinite;font-family:var(--font-en);font-size:22px;letter-spacing:0.18em;align-items:center}.marquee-track .dot{color:var(--gold-500);font-size:14px}@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}section{position:relative}.section-head{margin-bottom:64px;position:relative}.section-head-center{text-align:center}.section-num{display:block;font-family:var(--font-en-sans);font-size:12px;font-weight:300;letter-spacing:0.3em;color:var(--gold-600);margin-bottom:16px}.section-title{display:flex;flex-direction:column;gap:8px}.section-head-center .section-title{align-items:center}.section-en{font-family:var(--font-en);font-size:clamp(40px,5vw,64px);font-weight:500;letter-spacing:0.04em;color:var(--navy-900);line-height:1.1;font-style:italic}.section-jp{font-family:var(--font-jp);font-size:14px;font-weight:500;letter-spacing:0.4em;color:var(--gold-700);position:relative;padding-left:18px}.section-jp::before{content:"";position:absolute;left:0;top:50%;width:8px;height:1px;background:var(--gold-500)}.section-head-center .section-jp{padding-left:0}.section-head-center .section-jp::before{display:none}.section-desc{margin-top:28px;font-size:15px;line-height:2.1;color:var(--ink-60);letter-spacing:0.06em}.section-head-light .section-en{color:var(--ivory)}.section-head-light .section-jp{color:var(--gold-400)}.section-head-light .section-num{color:var(--gold-400)}.about{padding:140px 0 140px;background:var(--ivory);position:relative}.about::before{content:"About";position:absolute;top:80px;right:-30px;font-family:var(--font-en);font-size:180px;color:rgba(10,27,61,0.04);font-weight:600;font-style:italic;pointer-events:none}.about-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:80px;align-items:center}.about-visual{position:relative;padding:0 40px 50px 0}.about-img-main{position:relative;overflow:hidden;aspect-ratio:4/5;box-shadow:0 30px 60px rgba(6,18,46,0.18)}.about-img-main img{width:100%;height:100%;object-fit:cover;transition:transform 1.5s var(--ease)}.about-img-main:hover img{transform:scale(1.06)}.about-img-sub{position:absolute;bottom:0;right:0;width:60%;aspect-ratio:1/1;overflow:hidden;border:8px solid var(--ivory);box-shadow:0 20px 40px rgba(6,18,46,0.2)}.about-img-sub img{width:100%;height:100%;object-fit:cover}.about-tag{position:absolute;bottom:-28px;left:-28px;background:var(--navy-900);color:var(--ivory);padding:22px 28px 24px;max-width:230px;border-left:3px solid var(--gold-500);box-shadow:0 24px 50px rgba(6,18,46,0.28);z-index:2}.about-tag-eyebrow{display:block;font-family:var(--font-en);font-size:12px;letter-spacing:0.22em;color:var(--gold-500);font-style:italic;margin-bottom:10px}.about-tag-jp{font-family:var(--font-jp);font-size:15px;font-weight:600;line-height:1.85;letter-spacing:0.05em;color:var(--ivory);margin:0}.about-catch{font-family:var(--font-jp);font-size:clamp(26px,2.6vw,36px);font-weight:600;line-height:1.7;color:var(--navy-900);margin-bottom:32px;letter-spacing:0.04em}.about-catch em{font-style:normal;background:linear-gradient(180deg,var(--gold-500) 0%,var(--gold-700) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.about-text{font-size:15px;line-height:2.1;letter-spacing:0.05em;color:var(--ink);margin-bottom:18px}.about-text strong{color:var(--gold-700);font-weight:600}.about-points{margin-top:44px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.point{display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px 12px;background:#fff;border-top:2px solid var(--gold-500);box-shadow:0 10px 25px rgba(6,18,46,0.08)}.point-icon{width:48px;height:48px;display:grid;place-items:center;color:var(--gold-600);margin-bottom:14px}.point-icon svg{width:100%;height:100%}.point span:last-child{font-family:var(--font-jp);font-size:13px;font-weight:600;line-height:1.6;color:var(--navy-900);letter-spacing:0.06em}.service{padding:140px 0;background:linear-gradient(180deg,var(--ivory) 0%,var(--cream) 100%);position:relative}.service::before{content:"Service";position:absolute;top:90px;left:-40px;font-family:var(--font-en);font-size:200px;color:rgba(10,27,61,0.04);font-weight:600;font-style:italic;pointer-events:none}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.service-card{background:#fff;border-radius:4px;overflow:hidden;box-shadow:0 15px 40px rgba(6,18,46,0.08);transition:all 0.5s var(--ease);position:relative}.service-card:hover{transform:translateY(-10px);box-shadow:0 30px 60px rgba(6,18,46,0.18)}.service-card-img{position:relative;aspect-ratio:16/10;overflow:hidden}.service-card-img img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}.service-card:hover .service-card-img img{transform:scale(1.08)}.service-num{position:absolute;top:16px;left:16px;font-family:var(--font-en);font-size:26px;font-weight:500;color:var(--gold-400);background:rgba(6,18,46,0.85);padding:4px 14px;letter-spacing:0.05em;font-style:italic}.service-tag{position:absolute;top:16px;right:16px;background:linear-gradient(135deg,var(--gold-500),var(--gold-700));color:var(--navy-900);font-family:var(--font-jp);font-size:11px;font-weight:700;letter-spacing:0.15em;padding:6px 12px}.service-card-featured{border-top:3px solid var(--gold-500)}.service-card-body{padding:32px 28px 28px}.service-en{font-family:var(--font-en);font-size:13px;font-style:italic;font-weight:500;letter-spacing:0.12em;color:var(--gold-600);margin-bottom:10px}.service-title{font-family:var(--font-jp);font-size:22px;font-weight:600;line-height:1.5;color:var(--navy-900);margin-bottom:16px;letter-spacing:0.04em}.service-text{font-size:14px;line-height:1.9;color:var(--ink-60);margin-bottom:24px}.service-more{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-jp);font-size:13px;font-weight:600;color:var(--navy-700);border-bottom:1px solid var(--gold-500);padding-bottom:2px;letter-spacing:0.08em;transition:all 0.3s var(--ease)}.service-more span{transition:transform 0.3s var(--ease);display:inline-block}.service-more:hover{color:var(--gold-700)}.service-more:hover span{transform:translateX(4px)}.reason{padding:140px 0;background:var(--navy-900);color:#fff;position:relative;overflow:hidden}.reason-bg{position:absolute;inset:0;background:radial-gradient(circle at 10% 20%,rgba(212,185,117,0.08) 0%,transparent 50%),radial-gradient(circle at 90% 80%,rgba(212,185,117,0.05) 0%,transparent 50%);pointer-events:none}.reason::before{content:"Reason";position:absolute;bottom:60px;right:30px;font-family:var(--font-en);font-size:220px;color:rgba(212,185,117,0.04);font-weight:600;font-style:italic;pointer-events:none}.reason-list{display:flex;flex-direction:column;gap:80px;position:relative;z-index:2}.reason-item{display:grid;grid-template-columns:120px 1fr 1fr;gap:50px;align-items:center;position:relative}.reason-item-reverse{grid-template-columns:1fr 1fr 120px}.reason-item-reverse .reason-num{order:3}.reason-item-reverse .reason-content{order:2}.reason-item-reverse .reason-img{order:1}.reason-num{display:flex;flex-direction:column;gap:8px;position:relative}.reason-num::after{content:"";position:absolute;top:50%;right:-25px;width:30px;height:1px;background:var(--gold-500)}.reason-item-reverse .reason-num::after{right:auto;left:-25px}.reason-num-label{font-family:var(--font-en-sans);font-size:11px;letter-spacing:0.3em;color:var(--gold-400);font-weight:300}.reason-num-figure{font-family:var(--font-en);font-size:88px;font-weight:500;font-style:italic;line-height:1;background:linear-gradient(180deg,var(--gold-300) 0%,var(--gold-700) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.reason-title{font-family:var(--font-jp);font-size:clamp(22px,2.2vw,30px);font-weight:600;line-height:1.6;color:#fff;margin-bottom:20px;letter-spacing:0.05em}.reason-text{font-size:15px;line-height:2.1;color:rgba(255,255,255,0.75);letter-spacing:0.05em}.reason-img{position:relative;aspect-ratio:4/3;overflow:hidden;border:1px solid rgba(212,185,117,0.3)}.reason-img::before{content:"";position:absolute;top:12px;left:12px;right:-12px;bottom:-12px;border:1px solid var(--gold-500);z-index:-1}.reason-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease);filter:brightness(0.95)}.reason-img:hover img{transform:scale(1.08)}.voice{padding:140px 0;background:var(--cream);position:relative}.voice::before{content:"Voice";position:absolute;top:90px;right:-30px;font-family:var(--font-en);font-size:200px;color:rgba(10,27,61,0.04);font-weight:600;font-style:italic;pointer-events:none}.voice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.voice-card{background:#fff;padding:50px 36px 36px;position:relative;box-shadow:0 15px 40px rgba(6,18,46,0.08);transition:all 0.4s var(--ease);border-top:3px solid transparent}.voice-card:hover{transform:translateY(-8px);box-shadow:0 25px 50px rgba(6,18,46,0.15);border-top-color:var(--gold-500)}.voice-quote{position:absolute;top:14px;right:24px;font-family:var(--font-en);font-size:100px;line-height:1;color:var(--gold-400);opacity:0.4;font-weight:700}.voice-headline{font-family:var(--font-jp);font-size:18px;font-weight:700;line-height:1.6;color:var(--navy-900);margin-bottom:18px;letter-spacing:0.04em;position:relative}.voice-text{font-size:14px;line-height:1.95;color:var(--ink-60);margin-bottom:24px;letter-spacing:0.04em}.voice-meta{padding-top:20px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:4px}.voice-area{font-family:var(--font-en-sans);font-size:10px;letter-spacing:0.2em;color:var(--gold-700);text-transform:uppercase}.voice-person{font-family:var(--font-jp);font-size:13px;font-weight:500;color:var(--navy-900);letter-spacing:0.05em}.company{padding:140px 0;background:var(--ivory);position:relative}.company::before{content:"Company";position:absolute;bottom:100px;left:-50px;font-family:var(--font-en);font-size:200px;color:rgba(10,27,61,0.04);font-weight:600;font-style:italic;pointer-events:none}.greeting{display:grid;grid-template-columns:0.9fr 1.1fr;gap:80px;margin-bottom:120px;align-items:center}.greeting-img{position:relative;aspect-ratio:4/5;overflow:hidden}.greeting-img img{width:100%;height:100%;object-fit:cover}.greeting-img-deco{position:absolute;top:20px;left:-20px;width:100%;height:100%;border:1px solid var(--gold-500);z-index:-1}.greeting-eyebrow{font-family:var(--font-en);font-size:14px;font-style:italic;color:var(--gold-700);letter-spacing:0.15em;margin-bottom:20px}.greeting-title{font-family:var(--font-jp);font-size:clamp(26px,3vw,40px);font-weight:600;line-height:1.7;color:var(--navy-900);margin-bottom:36px;letter-spacing:0.04em}.greeting-title em{font-style:normal;background:linear-gradient(180deg,var(--gold-500),var(--gold-700));-webkit-background-clip:text;background-clip:text;color:transparent}.greeting-text{font-size:15px;line-height:2.1;letter-spacing:0.05em;margin-bottom:18px;color:var(--ink)}.greeting-sign{margin-top:32px;display:flex;align-items:baseline;gap:16px;padding-top:24px;border-top:1px solid var(--line)}.sign-label{font-family:var(--font-jp);font-size:12px;letter-spacing:0.2em;color:var(--ink-60)}.sign-name{font-family:var(--font-jp);font-size:22px;font-weight:600;color:var(--navy-900);letter-spacing:0.1em}.company-info{background:#fff;padding:60px 70px;box-shadow:0 20px 50px rgba(6,18,46,0.08);position:relative}.company-info::before{content:"";position:absolute;top:0;left:0;width:60px;height:4px;background:linear-gradient(90deg,var(--gold-500),var(--gold-700))}.company-info-title{display:flex;flex-direction:column;margin-bottom:40px;padding-bottom:24px;border-bottom:1px solid var(--line)}.company-info-en{font-family:var(--font-en);font-size:32px;font-style:italic;font-weight:500;color:var(--navy-900);line-height:1}.company-info-jp{font-family:var(--font-jp);font-size:12px;letter-spacing:0.4em;color:var(--gold-700);margin-top:8px}.info-list{display:grid;gap:0}.info-row{display:grid;grid-template-columns:200px 1fr;gap:30px;padding:18px 0;border-bottom:1px dashed var(--line);font-size:14px;line-height:1.8}.info-row:last-child{border-bottom:none}.info-row dt{font-family:var(--font-jp);font-weight:600;color:var(--navy-900);letter-spacing:0.1em;position:relative;padding-left:18px}.info-row dt::before{content:"";position:absolute;left:0;top:50%;width:8px;height:1px;background:var(--gold-500)}.info-row dd{color:var(--ink);letter-spacing:0.04em}.partner-band{padding:0;background:linear-gradient(135deg,var(--navy-900) 0%,var(--navy-700) 100%)}.partner-cta{display:grid;grid-template-columns:0.9fr 1.1fr;align-items:stretch}.partner-cta-body{padding:72px 60px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;color:#fff}.partner-cta-eyebrow{font-family:var(--font-en);font-size:16px;font-style:italic;letter-spacing:0.2em;color:var(--gold-400);margin-bottom:18px}.partner-cta-title{font-family:var(--font-jp);font-size:clamp(26px,2.4vw,36px);font-weight:600;line-height:1.5;letter-spacing:0.04em;margin-bottom:24px}.partner-cta-title em{font-style:normal;background:linear-gradient(180deg,var(--gold-300),var(--gold-500));-webkit-background-clip:text;background-clip:text;color:transparent}.partner-cta-text{font-size:15px;line-height:2.1;letter-spacing:0.05em;color:rgba(255,255,255,0.85);margin-bottom:40px}.partner-cta-media{display:flex;align-items:center;justify-content:center}.partner-cta-media img{width:100%;height:auto;display:block}.partner-cta-actions{display:flex;flex-wrap:wrap;gap:16px}.contact{padding:140px 0;position:relative;color:#fff;overflow:hidden}.contact-bg{position:absolute;inset:0;z-index:0}.contact-bg img{width:100%;height:100%;object-fit:cover}.contact-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(6,18,46,0.8) 0%,rgba(10,27,61,0.72) 100%),radial-gradient(circle at 30% 40%,rgba(212,185,117,0.15) 0%,transparent 50%)}.contact-eyebrow,.contact-title,.contact-text{text-shadow:0 1px 3px rgba(6,18,46,0.6)}.contact-inner{position:relative;z-index:2;max-width:880px;margin:0 auto;text-align:center}.contact-eyebrow{font-family:var(--font-en);font-size:16px;font-style:italic;letter-spacing:0.2em;color:var(--gold-400);margin-bottom:20px}.contact-title{font-family:var(--font-jp);font-size:clamp(32px,4.5vw,56px);font-weight:600;line-height:1.5;margin-bottom:28px;letter-spacing:0.05em}.contact-title em{font-style:normal;color:#fff}.contact-text{font-size:15px;line-height:2.1;color:rgba(255,255,255,0.85);margin-bottom:56px;letter-spacing:0.05em}.contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-card{display:flex;align-items:center;gap:24px;padding:32px 36px;background:rgba(255,255,255,0.06);border:1px solid rgba(212,185,117,0.3);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);text-align:left;transition:all 0.4s var(--ease);color:#fff}.contact-card:hover{background:rgba(212,185,117,0.12);border-color:var(--gold-400);transform:translateY(-4px)}.contact-card-icon{width:56px;height:56px;flex-shrink:0;display:grid;place-items:center;color:var(--gold-400);border:1px solid var(--gold-400);border-radius:50%}.contact-card-icon svg{width:24px;height:24px}.contact-card-body{display:flex;flex-direction:column}.contact-card-label{font-family:var(--font-en-sans);font-size:11px;letter-spacing:0.2em;color:var(--gold-400)}.contact-card-main{font-family:var(--font-en);font-size:28px;font-weight:500;letter-spacing:0.05em;margin:4px 0}.contact-card-sub{font-family:var(--font-jp);font-size:12px;color:rgba(255,255,255,0.65);letter-spacing:0.05em}.site-footer{background:var(--navy-900);color:rgba(255,255,255,0.7);padding:90px 0 30px;position:relative}.site-footer::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold-500),transparent)}.footer-top{display:grid;grid-template-columns:1.2fr 2fr;gap:80px;margin-bottom:60px}.footer-logo{display:flex;flex-direction:column;align-items:center;gap:3px;color:#fff;margin-bottom:24px;width:fit-content}.footer-logo .logo-mark{width:92px}.footer-logo .logo-name{width:78px}.footer-logo .logo-text{align-items:center}.footer-logo .logo-ja{text-align:center}.footer-tagline{font-family:var(--font-jp);font-size:14px;line-height:2;color:rgba(255,255,255,0.7);letter-spacing:0.06em;margin-bottom:24px}.footer-address{font-style:normal;font-size:12px;line-height:1.9;color:rgba(255,255,255,0.5);letter-spacing:0.05em}.footer-nav-wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.footer-nav-head{font-family:var(--font-en);font-size:16px;font-style:italic;font-weight:500;letter-spacing:0.1em;color:var(--gold-400);margin-bottom:22px;padding-bottom:10px;border-bottom:1px solid rgba(212,185,117,0.2)}.footer-nav-col ul{display:flex;flex-direction:column;gap:12px}.footer-nav-col a{font-size:13px;letter-spacing:0.06em;color:rgba(255,255,255,0.65);transition:all 0.3s var(--ease);position:relative;padding-left:14px}.footer-nav-col a::before{content:"—";position:absolute;left:0;top:50%;transform:translateY(-50%);line-height:1;color:var(--gold-500);opacity:0.6}.footer-nav-col a:hover{color:var(--gold-300);padding-left:18px}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:30px;border-top:1px solid rgba(255,255,255,0.08)}.copyright{font-family:var(--font-en-sans);font-size:11px;letter-spacing:0.15em;color:rgba(255,255,255,0.4)}.footer-meta{display:flex;gap:24px}.footer-meta a{font-size:11px;letter-spacing:0.12em;color:rgba(255,255,255,0.5)}.footer-meta a:hover{color:var(--gold-400)}.back-to-top{position:fixed;right:30px;bottom:30px;width:52px;height:52px;display:grid;place-items:center;background:linear-gradient(135deg,var(--gold-500),var(--gold-700));color:var(--navy-900);border-radius:50%;box-shadow:0 10px 30px rgba(138,100,32,0.4);opacity:0;pointer-events:none;transition:all 0.4s var(--ease);z-index:90}.back-to-top.is-visible{opacity:1;pointer-events:auto}.back-to-top:hover{transform:translateY(-4px);background:linear-gradient(135deg,var(--gold-300),var(--gold-500))}.back-to-top svg{width:18px;height:18px}.reveal{opacity:0;transform:translateY(40px);transition:opacity 0.9s var(--ease-out),transform 0.9s var(--ease-out)}.reveal.is-visible{opacity:1;transform:translateY(0)}.page-header{position:relative;padding:200px 0 100px;color:#fff;overflow:hidden;isolation:isolate}.page-header-bg{position:absolute;inset:0;z-index:-2}.page-header-bg img{width:100%;height:100%;object-fit:cover;animation:heroZoom 14s ease-out forwards}.page-header-overlay{position:absolute;inset:0;z-index:-1;background:linear-gradient(120deg,rgba(6,18,46,0.94) 0%,rgba(6,18,46,0.72) 60%,rgba(6,18,46,0.55) 100%),radial-gradient(circle at 85% 30%,rgba(212,185,117,0.18) 0%,transparent 55%)}.page-header-deco{position:absolute;right:40px;top:50%;transform:translateY(-50%);writing-mode:vertical-rl;font-family:var(--font-jp);font-size:12px;letter-spacing:0.5em;color:rgba(255,255,255,0.3)}.page-header-bgtext{position:absolute;bottom:-40px;left:-20px;font-family:var(--font-en);font-size:clamp(140px,22vw,280px);font-style:italic;font-weight:600;color:rgba(212,185,117,0.06);line-height:0.9;pointer-events:none;letter-spacing:-0.02em}.breadcrumb{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-family:var(--font-en-sans);font-size:11px;letter-spacing:0.18em;color:rgba(255,255,255,0.6);margin-bottom:30px}.breadcrumb a{color:var(--gold-300);transition:color 0.3s var(--ease)}.breadcrumb a:hover{color:var(--gold-400)}.breadcrumb .sep{color:rgba(212,185,117,0.4);font-size:9px}.breadcrumb .current{color:#fff}.page-header-eyebrow{display:flex;align-items:center;gap:14px;font-family:var(--font-en-sans);font-size:11px;font-weight:300;letter-spacing:0.35em;color:var(--gold-400);margin-bottom:24px;text-transform:uppercase}.page-header-eyebrow::before{content:"";width:50px;height:1px;background:var(--gold-500)}.page-title{font-family:var(--font-en);font-size:clamp(56px,8vw,110px);font-weight:500;font-style:italic;letter-spacing:0.03em;line-height:1;margin-bottom:18px;background:linear-gradient(180deg,#fff 0%,#e7e2d2 70%,var(--gold-300) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.page-title-jp{font-family:var(--font-jp);font-size:16px;font-weight:500;letter-spacing:0.4em;color:var(--gold-400);padding-left:22px;position:relative}.page-title-jp::before{content:"";position:absolute;left:0;top:50%;width:12px;height:1px;background:var(--gold-500)}.page-header-lead{margin-top:36px;max-width:720px;font-family:var(--font-jp);font-size:15px;line-height:2.1;letter-spacing:0.06em;color:rgba(255,255,255,0.85)}.page-section{padding:120px 0;position:relative}.page-section-alt + .page-section-alt,.page-section-navy + .page-section-navy{padding-top:0}.page-section-alt{background:var(--cream)}.page-section-navy{background:var(--navy-900);color:#fff}.reason-section-light{background:var(--ivory);color:var(--ink)}.reason-section-light .reason-title{color:var(--navy-900)}.reason-section-light .reason-text{color:var(--ink-60)}.reason-section-light .reason-num-label{color:var(--gold-700)}.lead-block{max-width:900px;margin:0 auto 80px;text-align:center}.lead-block .lead-jp{font-family:var(--font-jp);font-size:clamp(22px,2.4vw,32px);font-weight:600;line-height:1.8;color:var(--navy-900);letter-spacing:0.05em;margin-bottom:28px}.page-section-navy .lead-block .lead-jp{color:#fff}.lead-block .lead-jp em{font-style:normal;background:linear-gradient(180deg,var(--gold-500),var(--gold-700));-webkit-background-clip:text;background-clip:text;color:transparent}.lead-block .lead-text{font-family:var(--font-jp);font-size:15px;line-height:2.1;color:var(--ink-60);letter-spacing:0.06em}.page-section-navy .lead-block .lead-text{color:rgba(255,255,255,0.7)}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:60px}.value-card{background:#fff;padding:50px 36px;position:relative;box-shadow:0 15px 40px rgba(6,18,46,0.08);border-top:3px solid var(--gold-500);transition:all 0.4s var(--ease)}.value-card:hover{transform:translateY(-8px);box-shadow:0 25px 50px rgba(6,18,46,0.15)}.value-card-num{position:absolute;top:20px;right:28px;font-family:var(--font-en);font-style:italic;font-size:56px;font-weight:500;color:rgba(168,130,47,0.18);line-height:1}.value-card-icon{width:56px;height:56px;display:grid;place-items:center;color:var(--gold-600);margin-bottom:24px}.value-card-icon svg{width:100%;height:100%}.value-card-en{font-family:var(--font-en);font-size:13px;font-style:italic;font-weight:500;letter-spacing:0.15em;color:var(--gold-700);margin-bottom:8px}.value-card-title{font-family:var(--font-jp);font-size:22px;font-weight:600;line-height:1.5;color:var(--navy-900);margin-bottom:18px;letter-spacing:0.05em}.value-card-text{font-size:14px;line-height:1.95;color:var(--ink-60);letter-spacing:0.04em}.story{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:center;margin-top:60px}.story-reverse{grid-template-columns:1.1fr 1fr}.story-reverse .story-visual{order:2}.story-reverse .story-body{order:1}.story-visual{position:relative;aspect-ratio:4/5;overflow:hidden}.story-visual img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}.story-visual:hover img{transform:scale(1.05)}.story-visual-deco{position:absolute;top:-15px;left:-15px;width:100%;height:100%;border:1px solid var(--gold-500);z-index:-1}.story-reverse .story-visual-deco{left:auto;right:-15px}.story-num{font-family:var(--font-en);font-style:italic;font-size:14px;letter-spacing:0.3em;color:var(--gold-700);margin-bottom:16px}.story-title{font-family:var(--font-jp);font-size:clamp(26px,2.8vw,38px);font-weight:600;line-height:1.6;color:var(--navy-900);margin-bottom:28px;letter-spacing:0.04em}.page-section-navy .story-title{color:#fff}.story-title em{font-style:normal;background:linear-gradient(180deg,var(--gold-500),var(--gold-700));-webkit-background-clip:text;background-clip:text;color:transparent}.story-text{font-family:var(--font-jp);font-size:15px;line-height:2.1;color:var(--ink);letter-spacing:0.05em;margin-bottom:18px}.page-section-navy .story-text{color:rgba(255,255,255,0.78)}.service-detail{padding:90px 0;border-top:1px solid var(--line)}.service-detail:first-child{border-top:none;padding-top:0}.service-detail-head{display:grid;grid-template-columns:200px 1fr;gap:50px;margin-bottom:50px;align-items:start}.service-detail-num{font-family:var(--font-en);font-size:clamp(80px,10vw,130px);font-weight:500;font-style:italic;line-height:0.85;background:linear-gradient(180deg,var(--gold-300),var(--gold-700));-webkit-background-clip:text;background-clip:text;color:transparent;position:relative}.service-detail-num::after{content:"";display:block;width:80px;height:1px;background:var(--gold-500);margin-top:14px}.service-detail-en{font-family:var(--font-en);font-size:14px;font-style:italic;letter-spacing:0.15em;color:var(--gold-700);margin-bottom:12px}.service-detail-title{font-family:var(--font-jp);font-size:clamp(28px,3.2vw,42px);font-weight:600;line-height:1.5;color:var(--navy-900);letter-spacing:0.04em;margin-bottom:20px}.service-detail-lead{font-family:var(--font-jp);font-size:15px;line-height:2;color:var(--ink-60);letter-spacing:0.05em}.service-detail-body{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.service-detail-img{aspect-ratio:4/3;overflow:hidden;position:relative;box-shadow:0 25px 50px rgba(6,18,46,0.12)}.service-detail-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}.service-detail:hover .service-detail-img img{transform:scale(1.04)}.feature-list{background:#fff;padding:36px 40px;box-shadow:0 15px 35px rgba(6,18,46,0.08);border-left:3px solid var(--gold-500)}.feature-list-title{font-family:var(--font-jp);font-size:16px;font-weight:700;color:var(--navy-900);letter-spacing:0.1em;margin-bottom:22px;padding-bottom:14px;border-bottom:1px dashed var(--line)}.feature-list ul{display:flex;flex-direction:column;gap:14px}.feature-list li{position:relative;padding-left:32px;font-family:var(--font-jp);font-size:14px;line-height:1.8;color:var(--ink);letter-spacing:0.04em}.feature-list li::before{content:"";position:absolute;left:0;top:8px;width:18px;height:18px;background:var(--gold-500);clip-path:polygon(0 50%,35% 100%,100% 0,70% 0,35% 65%,18% 50%)}.flow-list{display:flex;flex-direction:column;gap:0;margin-top:60px;counter-reset:flow}.flow-item{display:grid;grid-template-columns:140px 1fr;gap:40px;padding:32px 40px;background:#fff;border-left:3px solid var(--gold-500);position:relative;align-items:center;margin-bottom:18px;box-shadow:0 10px 25px rgba(6,18,46,0.06)}.flow-item::after{content:"";position:absolute;left:50px;bottom:-18px;width:0;height:0;border-left:12px solid transparent;border-right:12px solid transparent;border-top:12px solid var(--gold-500);opacity:0.6}.flow-item:last-child{margin-bottom:0}.flow-item:last-child::after{display:none}.flow-step{font-family:var(--font-en);font-style:italic;color:var(--gold-700);line-height:1}.flow-step-label{font-family:var(--font-en-sans);font-size:10px;letter-spacing:0.3em;font-style:normal;display:block;margin-bottom:8px;color:var(--gold-600)}.flow-step-num{font-size:52px;font-weight:500}.flow-content{padding:0}.flow-title{font-family:var(--font-jp);font-size:20px;font-weight:600;color:var(--navy-900);margin-bottom:8px;letter-spacing:0.05em}.flow-text{font-size:14px;line-height:1.9;color:var(--ink-60);letter-spacing:0.04em}.compare-table{width:100%;margin-top:60px;border-collapse:separate;border-spacing:0;background:#fff;box-shadow:0 15px 35px rgba(6,18,46,0.08)}.compare-table th,.compare-table td{padding:22px 24px;text-align:left;font-size:14px;line-height:1.8;border-bottom:1px solid var(--line);letter-spacing:0.04em;vertical-align:middle}.compare-table thead th{background:var(--navy-900);color:#fff;font-family:var(--font-jp);font-weight:600;text-align:center;font-size:13px;letter-spacing:0.1em}.compare-table thead th.col-us{background:linear-gradient(135deg,var(--gold-500),var(--gold-700));color:var(--navy-900)}.compare-table tbody th{background:var(--cream);font-family:var(--font-jp);font-weight:600;color:var(--navy-900);width:22%}.compare-table tbody td.cell-us{background:rgba(212,185,117,0.08);font-weight:600;color:var(--navy-900);text-align:center}.compare-table tbody td.cell-other{text-align:center;color:var(--ink-60)}.compare-table tbody tr:last-child th,.compare-table tbody tr:last-child td{border-bottom:none}.kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:60px;background:#fff;box-shadow:0 20px 50px rgba(6,18,46,0.1)}.kpi{padding:50px 30px;text-align:center;border-right:1px solid var(--line);position:relative}.kpi:last-child{border-right:none}.kpi-label{font-family:var(--font-en-sans);font-size:10px;letter-spacing:0.3em;color:var(--gold-700);margin-bottom:16px;display:block}.kpi-num{font-family:var(--font-en);font-style:italic;font-weight:500;display:flex;align-items:baseline;justify-content:center;gap:4px;line-height:1;background:linear-gradient(180deg,var(--gold-500),var(--gold-700));-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:14px}.kpi-num em{font-style:italic;font-size:64px}.kpi-num i{font-style:normal;font-size:18px;font-family:var(--font-jp);color:var(--gold-700);-webkit-text-fill-color:var(--gold-700)}.kpi-name{font-family:var(--font-jp);font-size:13px;font-weight:600;color:var(--navy-900);letter-spacing:0.06em;line-height:1.6}.voice-filter{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:50px}.voice-filter button{padding:10px 22px;font-family:var(--font-jp);font-size:12px;font-weight:500;letter-spacing:0.1em;color:var(--ink-60);background:#fff;border:1px solid var(--line);transition:all 0.3s var(--ease);cursor:pointer}.voice-filter button:hover,.voice-filter button.is-active{background:var(--navy-900);color:var(--gold-300);border-color:var(--navy-900)}.voice-list-full{display:grid;grid-template-columns:repeat(2,1fr);gap:32px}.voice-list-full .voice-card{padding:50px 40px 40px}.timeline{position:relative;margin-top:60px;padding-left:30px}.timeline::before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:1px;background:linear-gradient(180deg,var(--gold-500),rgba(212,185,117,0.2))}.timeline-item{position:relative;padding:0 0 32px 40px}.timeline-item:last-child{padding-bottom:0}.timeline-item::before{content:"";position:absolute;left:-6px;top:8px;width:12px;height:12px;background:var(--gold-500);border-radius:50%;box-shadow:0 0 0 4px rgba(212,185,117,0.2)}.timeline-date{font-family:var(--font-en);font-style:italic;font-size:14px;letter-spacing:0.15em;color:var(--gold-700);margin-bottom:4px;display:block}.timeline-title{font-family:var(--font-jp);font-size:18px;font-weight:600;color:var(--navy-900);margin-bottom:6px;letter-spacing:0.04em}.timeline-text{font-size:14px;line-height:1.85;color:var(--ink-60)}.access-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:60px;align-items:stretch}.access-map{width:100%;aspect-ratio:4/3;background:var(--navy-100);position:relative;overflow:hidden}.access-map iframe{width:100%;height:100%;border:0;display:block}.access-info{background:#fff;padding:50px 40px;border-top:3px solid var(--gold-500)}.contact-form-wrap{background:#fff;padding:64px 60px;box-shadow:0 25px 60px rgba(6,18,46,0.1);border-top:3px solid var(--gold-500);margin-top:40px}.contact-form{display:grid;gap:28px}.form-row{display:grid;grid-template-columns:220px 1fr;gap:30px;align-items:start;padding-bottom:28px;border-bottom:1px dashed var(--line)}.form-row:last-of-type{border-bottom:none}.form-label{font-family:var(--font-jp);font-weight:600;font-size:14px;color:var(--navy-900);letter-spacing:0.08em;padding-top:14px;display:flex;align-items:center;gap:12px}.required-badge{background:linear-gradient(135deg,var(--gold-500),var(--gold-700));color:var(--navy-900);font-size:10px;font-weight:700;padding:3px 10px;letter-spacing:0.1em}.optional-badge{background:var(--navy-100);color:var(--navy-700);font-size:10px;font-weight:600;padding:3px 10px;letter-spacing:0.1em}.form-field input[type="text"],.form-field input[type="email"],.form-field input[type="tel"],.form-field select,.form-field textarea{width:100%;padding:16px 20px;border:1px solid var(--line);font-family:var(--font-jp);font-size:15px;color:var(--ink);background:#fdfcf8;transition:all 0.3s var(--ease);border-radius:2px}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--gold-500);background:#fff;box-shadow:0 0 0 3px rgba(212,185,117,0.15)}.form-field textarea{resize:vertical;min-height:160px;line-height:1.8}.form-radio-group{display:flex;flex-wrap:wrap;gap:14px}.form-radio{position:relative}.form-radio input{position:absolute;opacity:0}.form-radio span{display:inline-block;padding:12px 22px;font-family:var(--font-jp);font-size:13px;font-weight:500;letter-spacing:0.06em;background:#fdfcf8;border:1px solid var(--line);color:var(--ink);cursor:pointer;transition:all 0.3s var(--ease)}.form-radio input:checked + span{background:var(--navy-900);color:var(--gold-300);border-color:var(--navy-900)}.form-radio span:hover{border-color:var(--gold-500)}.form-agree{text-align:center;margin-top:12px}.form-agree label{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-jp);font-size:13px;color:var(--ink-60);cursor:pointer}.form-agree input{width:16px;height:16px;accent-color:var(--gold-600)}.form-agree a{color:var(--gold-700);text-decoration:underline}.form-submit{text-align:center;margin-top:20px}.form-submit button{display:inline-flex;align-items:center;gap:14px;padding:22px 60px;background:linear-gradient(135deg,var(--navy-700),var(--navy-900));color:#fff;font-family:var(--font-jp);font-size:15px;font-weight:600;letter-spacing:0.15em;border-radius:2px;cursor:pointer;position:relative;overflow:hidden;transition:all 0.4s var(--ease);border:1px solid var(--gold-500)}.form-submit button::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--gold-500),var(--gold-700));opacity:0;transition:opacity 0.4s var(--ease)}.form-submit button span,.form-submit button svg{position:relative;z-index:1}.form-submit button:hover{color:var(--navy-900)}.form-submit button:hover::before{opacity:1}.faq-list{margin-top:60px;display:flex;flex-direction:column;gap:18px}.faq-item{background:#fff;border-left:3px solid var(--gold-500);box-shadow:0 10px 25px rgba(6,18,46,0.06);transition:all 0.3s var(--ease)}.faq-item.is-open{box-shadow:0 20px 40px rgba(6,18,46,0.12)}.faq-q{display:flex;align-items:center;gap:20px;padding:26px 32px;cursor:pointer;width:100%;text-align:left;background:none;border:none;font:inherit;color:inherit}.faq-mark{font-family:var(--font-en);font-size:28px;font-style:italic;color:var(--gold-700);font-weight:600;line-height:1;flex-shrink:0}.faq-q-text{flex:1;font-family:var(--font-jp);font-size:16px;font-weight:600;color:var(--navy-900);letter-spacing:0.05em}.faq-toggle{width:28px;height:28px;flex-shrink:0;position:relative;transition:transform 0.3s var(--ease)}.faq-toggle::before,.faq-toggle::after{content:"";position:absolute;background:var(--gold-600);border-radius:1px}.faq-toggle::before{top:50%;left:6px;width:16px;height:1.5px;transform:translateY(-50%)}.faq-toggle::after{left:50%;top:6px;width:1.5px;height:16px;transform:translateX(-50%);transition:transform 0.3s var(--ease)}.faq-item.is-open .faq-toggle::after{transform:translateX(-50%) rotate(90deg);opacity:0}.faq-a{max-height:0;overflow:hidden;transition:max-height 0.4s var(--ease);padding:0 32px}.faq-item.is-open .faq-a{max-height:400px}.faq-a-inner{display:flex;align-items:flex-start;gap:20px;padding:0 0 28px 0;border-top:1px dashed var(--line);padding-top:24px}.faq-mark-a{font-family:var(--font-en);font-size:28px;font-style:italic;color:var(--navy-700);font-weight:600;line-height:1;flex-shrink:0}.faq-a-text{font-family:var(--font-jp);font-size:14px;line-height:2;color:var(--ink);letter-spacing:0.04em}.policy-block{background:#fff;padding:60px 70px;box-shadow:0 15px 40px rgba(6,18,46,0.08);border-top:3px solid var(--gold-500);margin-top:40px}.policy-block h3{font-family:var(--font-jp);font-size:20px;font-weight:600;color:var(--navy-900);margin:40px 0 16px;padding-left:18px;position:relative;letter-spacing:0.05em}.policy-block h3:first-child{margin-top:0}.policy-block h3::before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;background:linear-gradient(180deg,var(--gold-500),var(--gold-700))}.policy-block p{font-family:var(--font-jp);font-size:14px;line-height:2;color:var(--ink);margin-bottom:14px;letter-spacing:0.04em}.policy-block ul,.policy-block ol{margin:12px 0 12px 24px;font-size:14px;line-height:2;color:var(--ink)}.policy-block ul li,.policy-block ol li{margin-bottom:6px;list-style:disc}.policy-block ol li{list-style:decimal}.policy-meta{margin-top:60px;padding-top:30px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-family:var(--font-jp);font-size:12px;color:var(--ink-60)}.sitemap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:40px}.sitemap-col{background:#fff;padding:40px 36px;box-shadow:0 10px 30px rgba(6,18,46,0.06);border-top:2px solid var(--gold-500)}.sitemap-col-title{font-family:var(--font-en);font-size:24px;font-style:italic;font-weight:500;color:var(--navy-900);margin-bottom:6px;letter-spacing:0.04em}.sitemap-col-jp{font-family:var(--font-jp);font-size:12px;letter-spacing:0.2em;color:var(--gold-700);margin-bottom:24px;padding-bottom:16px;border-bottom:1px dashed var(--line)}.sitemap-col ul{display:flex;flex-direction:column;gap:14px}.sitemap-col a{display:flex;align-items:center;gap:10px;font-family:var(--font-jp);font-size:14px;color:var(--ink);padding:6px 0;transition:all 0.3s var(--ease);letter-spacing:0.04em}.sitemap-col a::before{content:"—";color:var(--gold-500)}.sitemap-col a:hover{color:var(--gold-700);padding-left:6px}.cta-block{position:relative;padding:100px 0;color:#fff;overflow:hidden}.cta-block-bg{position:absolute;inset:0;z-index:-2}.cta-block-bg img{width:100%;height:100%;object-fit:cover}.cta-block-overlay{position:absolute;inset:0;z-index:-1;background:linear-gradient(120deg,rgba(6,18,46,0.96) 0%,rgba(6,18,46,0.85) 100%),radial-gradient(circle at 30% 50%,rgba(212,185,117,0.18) 0%,transparent 50%)}.cta-inner{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center}.cta-eyebrow{font-family:var(--font-en);font-style:italic;font-size:14px;letter-spacing:0.2em;color:var(--gold-400);margin-bottom:12px}.cta-title{font-family:var(--font-jp);font-size:clamp(24px,3vw,36px);font-weight:600;line-height:1.6;letter-spacing:0.05em;margin-bottom:14px}.cta-title em{font-style:normal;background:linear-gradient(180deg,var(--gold-300),var(--gold-500));-webkit-background-clip:text;background-clip:text;color:transparent}.cta-text{font-size:14px;line-height:1.9;color:rgba(255,255,255,0.75);letter-spacing:0.05em}.cta-actions{display:flex;flex-direction:column;gap:16px}@media (max-width:1100px){.global-nav{display:none}.menu-toggle{display:flex}.header-tel{display:none}.header-inner{gap:12px}.header-cta{margin-left:auto}.menu-toggle{margin-left:2px}.value-grid{grid-template-columns:1fr}.story,.story-reverse{grid-template-columns:1fr;gap:50px}.story-reverse .story-visual{order:1}.story-reverse .story-body{order:2}.service-detail-body{grid-template-columns:1fr;gap:40px}.kpi-grid{grid-template-columns:repeat(2,1fr)}.kpi:nth-child(2){border-right:none}.kpi:nth-child(1),.kpi:nth-child(2){border-bottom:1px solid var(--line)}.voice-list-full{grid-template-columns:1fr}.access-grid{grid-template-columns:1fr}.sitemap-grid{grid-template-columns:1fr 1fr}.cta-inner{grid-template-columns:1fr;text-align:center}.cta-actions{align-items:center}.hero-stats{right:20px;bottom:30px;padding:18px 24px;gap:30px}.stat-num em{font-size:32px}.about-grid{grid-template-columns:1fr;gap:60px}.about::before{font-size:120px}.service-grid{grid-template-columns:repeat(2,1fr)}.reason-item,.reason-item-reverse{grid-template-columns:100px 1fr;grid-template-rows:auto auto;gap:30px}.reason-item .reason-img,.reason-item-reverse .reason-img{grid-column:1 / -1;order:3;aspect-ratio:16/9}.reason-item-reverse .reason-num{order:1}.reason-item-reverse .reason-content{order:2}.voice-grid{grid-template-columns:1fr}.greeting{grid-template-columns:1fr;gap:50px}.greeting-img{max-width:500px;margin:0 auto}.footer-top{grid-template-columns:1fr;gap:60px}}@media (max-width:768px){.header-inner{padding:0 16px;gap:10px}.header-cta{gap:6px}.btn-contact,.btn-apply{white-space:nowrap;letter-spacing:0.02em}.btn-contact{padding:9px 12px;font-size:11px}.btn-apply{padding:8px 11px;font-size:11px}.btn-apply svg,.btn-contact svg{display:none}.logo-name{width:58px}.logo-ja{font-size:7px}.logo-mark{width:64px}.hero{padding:100px 0 60px;min-height:auto;flex-direction:column;align-items:stretch}.hero-content{padding:0 24px}.hero-lead br{display:none}.hero-side{display:none}.hero-scroll{display:none}.hero-stats{position:static;width:100%;margin-top:36px;padding:22px 10px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;background:rgba(6,18,46,0.7)}.hero-stats .stat{padding:0 2px}.hero-stats .stat-num em{font-size:22px}.hero-stats .stat-num i{font-size:10px}.hero-stats .stat-label{font-size:9px;letter-spacing:0.02em;margin-top:6px}.stat-num em{font-size:28px}.stat-num i{font-size:13px}.stat-label{font-size:10px}.marquee-track{font-size:16px;gap:30px}.about,.service,.reason,.voice,.company,.contact{padding:90px 0}.about::before,.service::before,.reason::before,.voice::before,.company::before{font-size:80px}.partner-band{padding:70px 0}.partner-cta{grid-template-columns:1fr}.partner-cta-media{order:-1}.partner-cta-body{padding:44px 26px}.about-visual{padding:0 30px 30px 0}.about-tag{bottom:-20px;left:-16px;padding:18px 22px 20px;max-width:200px}.about-tag-eyebrow{font-size:11px;margin-bottom:8px}.about-tag-jp{font-size:13px;line-height:1.75}.about-points{grid-template-columns:1fr;gap:12px}.point{flex-direction:row;gap:16px;padding:18px 20px;text-align:left;justify-content:flex-start}.point-icon{width:36px;height:36px;margin-bottom:0}.point span:last-child{font-size:14px}.service-grid{grid-template-columns:1fr;gap:24px}.section-head{margin-bottom:48px}.reason-item,.reason-item-reverse{grid-template-columns:1fr;gap:24px}.reason-item .reason-num,.reason-item-reverse .reason-num{flex-direction:row;align-items:center;gap:16px}.reason-num::after{display:none}.reason-num-figure{font-size:60px}.company-info{padding:40px 28px}.info-row{grid-template-columns:1fr;gap:8px;padding:16px 0}.contact-actions{grid-template-columns:1fr}.contact-card{padding:24px;gap:18px}.contact-card-main{font-size:22px}.footer-nav-wrap{grid-template-columns:1fr 1fr;gap:28px}.footer-bottom{flex-direction:column;gap:16px}.back-to-top{right:16px;bottom:16px;width:44px;height:44px}.page-header{padding:130px 0 70px}.page-header-deco{display:none}.breadcrumb{font-size:10px;gap:6px}.page-section{padding:70px 0}.lead-block{margin-bottom:50px}.service-detail-head{grid-template-columns:1fr;gap:16px}.service-detail-num::after{display:none}.flow-item{grid-template-columns:80px 1fr;gap:20px;padding:24px 24px}.flow-step-num{font-size:36px}.flow-title{font-size:17px}.kpi-grid{grid-template-columns:1fr 1fr}.kpi{padding:32px 16px;border-right:1px solid var(--line)}.kpi:nth-child(2n){border-right:none}.kpi-num em{font-size:42px}.compare-table{display:block;overflow-x:auto}.compare-table th,.compare-table td{padding:14px 16px;font-size:12px}.contact-form-wrap{padding:36px 24px}.form-row{grid-template-columns:1fr;gap:14px;padding-bottom:24px}.form-label{padding-top:0}.policy-block{padding:36px 24px}.policy-block h3{font-size:17px}.sitemap-grid{grid-template-columns:1fr;gap:24px}.sitemap-col{padding:32px 28px}.cta-block{padding:70px 0}.access-info{padding:32px 24px}.global-nav{display:block;position:fixed;top:70px;left:0;right:0;background:var(--navy-900);padding:30px 24px;transform:translateY(-12px);opacity:0;visibility:hidden;transition:transform 0.45s var(--ease),opacity 0.35s var(--ease),visibility 0.35s var(--ease);border-bottom:1px solid rgba(212,185,117,0.2);max-height:calc(100vh - 70px);overflow-y:auto}.global-nav.is-open{transform:translateY(0);opacity:1;visibility:visible}.global-nav ul{flex-direction:column;gap:0}.global-nav a{flex-direction:row;align-items:baseline;justify-content:flex-start;gap:16px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,0.08)}.global-nav .nav-num{margin-bottom:0}.global-nav .nav-label{font-size:18px}.global-nav .nav-jp{margin-top:0}}.voice-more{text-align:center;margin-top:52px}.voice-more-btn{display:inline-flex;align-items:center;gap:12px;padding:16px 44px;background:var(--navy-900);color:#fff;border:1px solid var(--navy-900);font-family:var(--font-jp);font-size:15px;font-weight:600;letter-spacing:0.06em;border-radius:2px;transition:all 0.4s var(--ease)}.voice-more-btn svg{color:var(--gold-300);transition:transform 0.4s var(--ease),color 0.4s var(--ease)}.voice-more-btn:hover{background:var(--gold-500);border-color:var(--gold-500);color:var(--navy-900);transform:translateY(-2px)}.voice-more-btn:hover svg{color:var(--navy-900);transform:translateX(4px)}@media (max-width:768px){.voice-more{margin-top:36px}.voice-more-btn{width:100%;justify-content:center;padding:15px 24px}}@media (max-width:380px){.header-inner{padding:0 12px;gap:8px}.header-cta{gap:5px}.btn-contact{padding:8px 10px;font-size:10px}.btn-apply{padding:7px 9px;font-size:10px}.logo-mark{width:56px}.logo-name{width:52px}.logo-ja{display:none}}