:root{--ink:#1a1814;--paper:#f5f2ec;--sand:#d4c9a8;--rust:#8b4a2f;--gold:#c5a55a;--smoke:#6b6560;--light:#ece8df;--body-base:14px;--body-small:13px;--ui-base:12px;--ui-tiny:11px;--font-serif-cjk:'Noto Serif JP',serif;--font-sans-cjk:'Noto Sans JP',system-ui,sans-serif}html[lang^="zh"],html[lang="ko"],html[lang="ar"]{--body-base:15.5px;--body-small:14.5px;--ui-base:13px;--ui-tiny:12px}html[lang="zh-Hans"]{--font-serif-cjk:'Noto Serif SC','Noto Serif JP',serif;--font-sans-cjk:'Noto Sans SC','Noto Sans JP',system-ui,sans-serif}html[lang="zh-Hant"]{--font-serif-cjk:'Noto Serif TC','Noto Serif JP',serif;--font-sans-cjk:'Noto Sans TC','Noto Sans JP',system-ui,sans-serif}html[lang="ko"]{--font-serif-cjk:'Noto Serif KR','Noto Serif JP',serif;--font-sans-cjk:'Noto Sans KR','Noto Sans JP',system-ui,sans-serif}html[lang="ar"]{--font-serif-cjk:'Noto Naskh Arabic','Noto Serif JP',serif;--font-sans-cjk:'Noto Naskh Arabic','Noto Sans JP',system-ui,sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-sans-cjk);background:var(--paper);color:var(--ink);font-weight:300;overflow-x:hidden}.skip-link{position:absolute;left:-9999px;top:0;background:var(--ink);color:var(--paper);padding:12px 22px;text-decoration:none;z-index:9999;font-size:14px;letter-spacing:0.12em;font-family:var(--font-sans-cjk);border:1px solid var(--rust);border-radius:0}.skip-link:focus,.skip-link:focus-visible{left:8px;top:8px;outline:2px solid var(--gold);outline-offset:2px}:focus{outline:none}:focus-visible{outline:2px solid var(--rust);outline-offset:3px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role="button"]:focus-visible,[tabindex="0"]:focus-visible{outline:2px solid var(--rust);outline-offset:3px}.about:focus-visible,.to-top:focus-visible,.bc-result-total:focus-visible,footer:focus-visible{outline-color:var(--gold)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:20px 60px;background:rgba(245,242,236,0.95);backdrop-filter:blur(10px);border-bottom:1px solid var(--sand);gap:20px}.nav-logo{font-family:var(--font-serif-cjk);font-size:17px;letter-spacing:0.1em;color:var(--ink);text-decoration:none;flex-shrink:0;display:inline-flex;align-items:center;gap:10px}.nav-logo-img{width:28px;height:28px;flex-shrink:0;display:block;object-fit:contain;transition:transform 0.4s ease}.nav-logo:hover .nav-logo-img{transform:rotate(-6deg) scale(1.08)}.nav-logo-text{display:inline-block;line-height:1}.nav-logo span{color:var(--rust)}@media (max-width:480px){.nav-logo-img{width:24px;height:24px}.nav-logo{gap:8px}}.nav-links{display:flex;gap:32px;list-style:none}.nav-links a{font-size:14px;letter-spacing:0.14em;color:var(--smoke);text-decoration:none;transition:color 0.3s;white-space:nowrap}html[lang^="zh"] .nav-links a,html[lang="ko"] .nav-links a,html[lang="ar"] .nav-links a{font-size:15px;letter-spacing:0.1em}.nav-links a:hover{color:var(--rust)}.nav-links a.active{color:var(--rust)}.nav-links a.active::after{content:'';position:absolute;left:0;right:0;bottom:-6px;height:1px;background:var(--rust)}.nav-links a{position:relative}.menu-link.active{color:var(--rust)}.nav-right{display:flex;align-items:center;gap:18px}.lang-switcher{position:relative}.lang-current{display:inline-flex;align-items:center;gap:8px;background:transparent;border:1px solid var(--sand);color:var(--smoke);font-size:var(--ui-tiny);letter-spacing:0.12em;padding:8px 14px;cursor:pointer;font-family:inherit;transition:border-color 0.3s,color 0.3s}.lang-current:hover{color:var(--rust);border-color:var(--rust)}.lang-current .caret{font-size:9px;opacity:0.7}.lang-menu{position:absolute;top:calc(100% + 8px);right:0;background:var(--paper);border:1px solid var(--sand);list-style:none;min-width:160px;padding:6px 0;box-shadow:0 8px 24px rgba(26,24,20,0.08);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity 0.25s,transform 0.25s,visibility 0.25s;z-index:220}.lang-switcher.open .lang-menu{opacity:1;visibility:visible;transform:translateY(0)}.lang-menu li{margin:0}.lang-menu a{display:block;padding:9px 16px;font-size:var(--ui-base);letter-spacing:0.08em;color:var(--smoke);text-decoration:none;transition:background 0.2s,color 0.2s}.lang-menu a:hover{background:rgba(212,201,168,0.25);color:var(--rust)}.lang-menu li.active a{color:var(--rust);font-weight:400}.nav-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px;background:none;border:none}.nav-toggle span{display:block;width:22px;height:1.5px;background:var(--ink);transition:all 0.3s}.nav-toggle.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.mobile-menu{display:none;position:fixed;top:61px;left:0;right:0;background:rgba(245,242,236,0.98);border-bottom:1px solid var(--sand);z-index:190;padding:0;overflow:hidden;max-height:0;transition:max-height 0.4s ease,padding 0.3s}.mobile-menu.open{max-height:500px;padding:16px 0}.mobile-menu a{display:block;padding:14px 28px;font-size:var(--body-base);letter-spacing:0.15em;color:var(--smoke);text-decoration:none;border-bottom:1px solid rgba(212,201,168,0.3)}.mobile-menu a:last-child{border-bottom:none}.mobile-menu a:hover{color:var(--rust);background:rgba(212,201,168,0.1)}.hero{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;padding-top:61px;overflow:hidden}.hero-left{display:flex;flex-direction:column;justify-content:center;padding:80px 60px 80px 80px}.hero-tag{font-size:clamp(13px,1.05vw,16px);letter-spacing:0.28em;color:var(--rust);text-transform:uppercase;margin-bottom:32px;opacity:0;animation:fadeUp 1s 0.3s forwards}.hero-title{font-family:var(--font-serif-cjk);font-size:clamp(30px,3.5vw,52px);font-weight:300;line-height:1.6;letter-spacing:0.05em;margin-bottom:28px;opacity:0;animation:fadeUp 1s 0.5s forwards}.hero-title em{font-style:normal;color:var(--rust);font-weight:600}.hero-sub{font-size:var(--body-small);line-height:2;color:var(--smoke);max-width:380px;margin-bottom:44px;opacity:0;animation:fadeUp 1s 0.7s forwards}.hero-cta{display:inline-flex;align-items:center;gap:14px;font-size:16px;letter-spacing:0.16em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:9px;transition:gap 0.3s,color 0.3s;opacity:0;animation:fadeUp 1s 0.9s forwards;width:fit-content}.hero-cta:hover{gap:22px;color:var(--rust)}.hero-cta::after{content:'→'}.hero-cta-filled{background:var(--rust);color:#fff !important;border-bottom:1px solid var(--rust) !important;padding:14px 28px;transition:background 0.25s,gap 0.3s}.hero-cta-filled::after{content:''}.hero-cta-filled:hover{background:#6b3520;color:#fff !important}.kb-cta-row{display:flex;flex-wrap:wrap;gap:24px;justify-content:center;align-items:center}.hero-right{position:relative;overflow:hidden;opacity:0;animation:fadeIn 1.5s 0.4s forwards}.hero-img{width:100%;height:100%;object-fit:cover;filter:sepia(20%) contrast(1.05)}.hero-img-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(26,24,20,0.15) 0%,transparent 60%)}.hero-mark{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;font-family:var(--font-serif-cjk);text-align:center}.hero-mark::before,.hero-mark::after{content:'';position:absolute;top:50%;left:50%;background:rgba(255,248,230,0.35);transform:translate(-50%,-50%)}.hero-mark::before{width:1px;height:140px}.hero-mark::after{width:140px;height:1px}.hero-mark-kanji{font-size:24px;font-weight:300;letter-spacing:0.55em;color:rgba(255,248,230,0.85);line-height:1;text-indent:0.55em;position:relative;z-index:1;margin-bottom:44px}.hero-mark-label{font-size:12px;letter-spacing:0.5em;color:rgba(255,248,230,0.55);text-indent:0.5em;position:relative;z-index:1}.hero-year{position:absolute;bottom:40px;right:40px;font-family:'Cormorant Garamond',serif;font-size:100px;font-weight:300;color:rgba(255,255,255,0.15);line-height:1}section{padding:100px 80px}.sec-label{font-size:11px;letter-spacing:0.35em;color:var(--rust);text-transform:uppercase;margin-bottom:14px}.sec-title{font-family:var(--font-serif-cjk);font-size:clamp(24px,3vw,40px);font-weight:300;letter-spacing:0.05em;line-height:1.5;margin-bottom:56px}.chapter-divider{width:100%;margin:96px 0 32px}.chapter-mark{display:flex;flex-direction:column;align-items:center;gap:14px;max-width:900px;margin:0 auto 28px;padding:0 24px;text-align:center}.chapter-num{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:300;letter-spacing:0.32em;color:var(--rust);line-height:1}.chapter-mark::after{content:'';display:block;width:36px;height:1px;background:var(--gold);order:2}.chapter-label{font-size:13px;letter-spacing:0.36em;text-transform:uppercase;color:var(--smoke);font-weight:400;order:3}.brand-banner{display:block;max-width:900px;width:calc(100% - 48px);margin:0 auto;padding:0;background:none;border:0;overflow:hidden}.brand-banner img{width:100%;height:auto;display:block;box-shadow:0 16px 48px rgba(0,0,0,0.18)}@media (max-width:900px){.chapter-divider{margin:64px 0 24px}.chapter-num{font-size:22px}.chapter-label{font-size:12px;letter-spacing:0.32em}.brand-banner{width:calc(100% - 32px)}}@media (max-width:600px){.chapter-divider{margin:48px 0 18px}.chapter-mark{margin-bottom:20px;gap:10px}.chapter-num{font-size:20px}.brand-banner{width:calc(100% - 24px)}.brand-banner img{box-shadow:0 8px 24px rgba(0,0,0,0.14)}}.about{background:#1a1814;color:var(--paper)}.about .sec-label{color:var(--gold)}.about .sec-title{color:var(--paper)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}.about-text{font-size:var(--body-base);line-height:2.2;color:rgba(245,242,236,0.75)}.about-stats{display:grid;grid-template-columns:1fr 1fr;gap:36px}.stat{border-top:1px solid rgba(197,165,90,0.35);padding-top:22px}.stat-num{font-family:'Cormorant Garamond',serif;font-size:44px;font-weight:300;color:var(--gold);line-height:1;margin-bottom:8px}.stat-label{font-size:var(--ui-tiny);letter-spacing:0.1em;color:rgba(245,242,236,0.5);line-height:1.6}.team{background:var(--light);padding:100px 80px}.team-intro{font-size:var(--body-base);line-height:2;color:var(--smoke);max-width:640px;margin-bottom:64px}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px 56px}.team-member{display:flex;gap:28px;align-items:flex-start}.team-photo{width:120px;height:120px;flex-shrink:0;border-radius:50%;background:linear-gradient(135deg,#c4a97a 0%,#9a7d55 55%,#6b5438 100%);display:flex;align-items:center;justify-content:center;color:rgba(255,248,230,0.9);font-family:'Cormorant Garamond',serif;font-size:34px;font-weight:300;letter-spacing:0.08em;position:relative;overflow:hidden}.team-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.team-photo::after{content:'';position:absolute;inset:6px;border-radius:50%;border:1px solid rgba(255,248,230,0.2)}.team-info{flex:1;min-width:0}.team-role{font-size:var(--ui-tiny);letter-spacing:0.2em;color:var(--rust);text-transform:uppercase;margin-bottom:8px}.team-name{font-family:var(--font-serif-cjk);font-size:22px;font-weight:400;letter-spacing:0.05em;color:var(--ink);margin-bottom:16px}.team-bio{font-size:var(--body-small);line-height:1.95;color:var(--smoke)}.projects{background:var(--light)}.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px}.project-card{position:relative;overflow:hidden;aspect-ratio:3/4;cursor:pointer;display:block;text-decoration:none;color:inherit}.project-card picture{display:block;width:100%;height:100%}.project-card img{width:100%;height:100%;object-fit:cover;display:block;background:var(--light);transition:transform 0.6s ease}.project-card:hover img{transform:scale(1.05)}.project-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(26,24,20,0.88) 0%,transparent 55%);opacity:0;transition:opacity 0.4s}.project-card:hover .project-overlay{opacity:1}.project-info{position:absolute;bottom:0;left:0;right:0;padding:28px 22px;background:linear-gradient(to top,rgba(26,24,20,0.85) 0%,transparent 100%)}.project-type{font-size:9px;letter-spacing:0.3em;color:var(--gold);margin-bottom:6px}.project-name{font-family:var(--font-serif-cjk);font-size:clamp(13px,1.5vw,17px);color:white;font-weight:300;line-height:1.4}.project-loc{font-size:var(--ui-tiny);color:rgba(255,255,255,0.55);margin-top:4px}.services{background:var(--paper)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.service-card{padding:40px 0;border-top:1px solid var(--sand);text-decoration:none;color:inherit;display:block;transition:transform 0.3s}a.service-card:hover{transform:translateY(-4px)}a.service-card:hover .service-title{color:var(--rust)}.service-num{font-family:'Cormorant Garamond',serif;font-size:44px;font-weight:300;color:var(--sand);margin-bottom:20px;line-height:1}.service-title{font-family:var(--font-serif-cjk);font-size:19px;font-weight:400;margin-bottom:14px;letter-spacing:0.05em;transition:color 0.3s}.service-desc{font-size:var(--body-small);line-height:2;color:var(--smoke)}.service-more{display:inline-block;margin-top:14px;font-size:11px;letter-spacing:0.18em;color:var(--gold)}.knowledge{background:var(--light)}.knowledge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.kb-search-wrap{max-width:520px;margin:0 auto 28px;position:relative}.kb-search{width:100%;background:var(--paper);border:1px solid var(--sand);padding:14px 44px 14px 18px;font-family:inherit;font-size:var(--body-base);color:var(--ink);letter-spacing:0.04em;outline:none;transition:border-color 0.25s;-webkit-appearance:none;appearance:none}.kb-search::placeholder{color:var(--smoke)}.kb-search:focus{border-color:var(--rust)}.kb-search::-webkit-search-cancel-button{display:none}.kb-search-clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:transparent;border:0;font-size:22px;color:var(--smoke);cursor:pointer;padding:4px 10px;display:none;line-height:1}.kb-search-clear:hover{color:var(--rust)}.kb-search-wrap.has-text .kb-search-clear{display:block}.kb-search-empty{text-align:center;color:var(--smoke);font-size:var(--body-base);letter-spacing:0.06em;padding:60px 20px;margin:0}html[dir="rtl"] .kb-search{padding:14px 18px 14px 44px}html[dir="rtl"] .kb-search-clear{right:auto;left:12px}.kb-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 48px;justify-content:center}.kb-tab{background:transparent;border:1px solid var(--sand);color:var(--smoke);padding:10px 20px;font-size:var(--ui-base);font-family:inherit;font-weight:300;letter-spacing:0.08em;cursor:pointer;transition:color 0.3s,border-color 0.3s,background 0.3s;white-space:nowrap}.kb-tab:hover{color:var(--rust);border-color:var(--rust)}.kb-tab.active{background:var(--rust);color:var(--paper);border-color:var(--rust)}.kb-tab-count{margin-inline-start:6px;font-size:0.82em;opacity:0.6;font-family:'Cormorant Garamond',serif}.kb-faq{max-width:1180px;margin:8px auto 0;padding:60px clamp(28px,6%,72px);background:var(--light);border-top:3px solid var(--gold)}.kb-faq>.sec-label,.kb-faq>.sec-title{text-align:center}.kb-faq-list{display:grid;grid-template-columns:1fr 1fr;gap:30px 48px;margin-top:40px}.kb-faq-item{border-top:2px solid var(--sand);padding-top:18px}.kb-faq-q{font-size:17px;line-height:1.5;color:var(--ink);margin:0 0 10px;font-weight:600}.kb-faq-a{font-size:14.5px;line-height:1.85;color:var(--smoke);margin:0 0 14px}.kb-faq-link{font-size:13.5px;letter-spacing:0.04em;color:var(--rust);text-decoration:none;border-bottom:1px solid transparent;transition:border-color 0.25s}.kb-faq-link:hover{border-bottom-color:var(--rust)}@media (max-width:760px){.kb-faq{padding-top:44px}.kb-faq-list{grid-template-columns:1fr;gap:0}.kb-faq-item{margin-bottom:26px}}.kb-card.kb-hidden{display:none}.kb-card{background:var(--paper);padding:36px 32px;text-decoration:none;color:inherit;display:block;border:1px solid transparent;transition:border-color 0.3s,transform 0.3s}.kb-card:hover{border-color:var(--sand);transform:translateY(-3px)}.kb-card:hover .kb-title{color:var(--rust)}.kb-card-tool{border:1px solid var(--rust);background:linear-gradient(135deg,rgba(197,165,90,0.10),rgba(139,74,47,0.06));position:relative}.kb-card-tool::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--rust),var(--gold))}.kb-card-tool:hover{border-color:var(--rust);box-shadow:0 6px 22px rgba(139,74,47,0.15)}.kb-card-tool .kb-num{color:var(--rust);font-size:30px}.kb-card-tool .kb-tag{background:var(--rust);color:#fff;padding:3px 10px;font-size:10px}.kb-card-osaka .kb-num{font-family:'Noto Serif JP','Noto Serif SC','Noto Serif TC','Noto Serif KR',serif;font-size:22px;letter-spacing:0.04em;color:var(--gold);font-weight:500}html[lang="en"] .kb-card-osaka .kb-num,html[lang="ar"] .kb-card-osaka .kb-num{font-family:'Cormorant Garamond',serif;font-size:24px;letter-spacing:0.08em;text-transform:uppercase}.kb-num{font-family:'Cormorant Garamond',serif;font-size:36px;color:var(--gold);line-height:1;margin-bottom:18px}.kb-title{font-family:var(--font-serif-cjk);font-size:17px;letter-spacing:0.04em;margin-bottom:12px;line-height:1.5;transition:color 0.3s}.kb-desc{font-size:var(--body-small);line-height:1.9;color:var(--smoke)}.kb-tag{display:inline-block;font-size:var(--ui-tiny);letter-spacing:0.18em;color:var(--rust);margin-bottom:12px;text-transform:uppercase}.case-meta{display:flex;flex-wrap:wrap;gap:14px 40px;margin-top:18px;padding:14px 0 0;border-top:1px solid var(--sand);border-bottom:1px solid var(--sand);max-width:880px}.case-meta-item{display:flex;align-items:baseline;gap:10px;font-size:var(--body-small)}.case-meta-label{color:var(--rust);font-size:var(--ui-tiny);letter-spacing:0.18em;text-transform:uppercase}.case-meta-value{color:var(--ink)}.case-album{margin:0 0 56px}.case-album-main{position:relative;width:100%;aspect-ratio:16/9;background:var(--light);margin:0 0 12px;overflow:hidden}.case-album-zoom{display:block;width:100%;height:100%;background:none;border:0;padding:0;margin:0;cursor:zoom-in;overflow:hidden}.case-album-zoom img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity 0.25s ease}.case-album-main.swap .case-album-zoom img{opacity:0}.case-album-counter{position:absolute;right:14px;bottom:12px;font-family:'Cormorant Garamond',serif;font-size:13px;letter-spacing:0.16em;color:#fff;background:rgba(0,0,0,0.45);padding:4px 10px;border-radius:2px;pointer-events:none}.case-album-nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border:0;border-radius:50%;background:rgba(20,16,12,0.45);color:#fff;font-size:28px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity 0.2s ease,background 0.2s ease,transform 0.2s ease;z-index:2}.case-album-nav.prev{left:14px}.case-album-nav.next{right:14px}.case-album-main:hover .case-album-nav,.case-album-main:focus-within .case-album-nav{opacity:1}.case-album-nav:hover{background:var(--rust)}.case-album-nav.prev:hover{transform:translateY(-50%) translateX(-2px)}.case-album-nav.next:hover{transform:translateY(-50%) translateX(2px)}html[dir="rtl"] .case-album-nav.prev{left:auto;right:14px}html[dir="rtl"] .case-album-nav.next{right:auto;left:14px}@media (hover:none){.case-album-nav{display:none}}.case-album-thumbs{display:grid;grid-template-columns:repeat(8,1fr);gap:8px}.case-thumb{position:relative;display:block;overflow:hidden;border:0;padding:0;margin:0;background:var(--light);cursor:pointer;aspect-ratio:4/3;outline-offset:0;transition:opacity 0.25s ease;opacity:0.55}.case-thumb img{width:100%;height:100%;object-fit:cover;display:block}.case-thumb:hover{opacity:0.85}.case-thumb.is-selected{opacity:1;box-shadow:inset 0 0 0 2px var(--rust)}.case-thumb:focus-visible{outline:2px solid var(--rust);outline-offset:2px}@media (max-width:900px){.case-album-thumbs{grid-template-columns:repeat(6,1fr);gap:6px}.case-album-main{aspect-ratio:16/10}.case-meta{gap:14px 28px}}@media (max-width:600px){.case-album-thumbs{grid-template-columns:repeat(4,1fr);gap:5px}.case-album-main{aspect-ratio:4/3}}.case-lightbox{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center}.case-lightbox.open{display:flex}.case-lightbox-backdrop{position:absolute;inset:0;background:rgba(20,16,12,0.93);backdrop-filter:blur(4px);cursor:zoom-out}.case-lightbox-stage{position:relative;max-width:min(92vw,1600px);max-height:90vh;margin:0;display:flex;flex-direction:column;align-items:center;z-index:1}.case-lightbox-stage img{max-width:100%;max-height:86vh;object-fit:contain;box-shadow:0 24px 80px rgba(0,0,0,0.6);background:#1a1814}.case-lightbox-counter{margin-top:14px;color:rgba(255,255,255,0.7);font-family:'Cormorant Garamond',serif;font-size:14px;letter-spacing:0.18em}.case-lightbox-close,.case-lightbox-prev,.case-lightbox-next{position:absolute;z-index:2;background:rgba(0,0,0,0.4);color:#fff;border:0;cursor:pointer;transition:background 0.2s,transform 0.2s;display:flex;align-items:center;justify-content:center}.case-lightbox-close{top:18px;right:18px;width:44px;height:44px;border-radius:50%;font-size:26px;line-height:1}.case-lightbox-prev,.case-lightbox-next{top:50%;transform:translateY(-50%);width:56px;height:56px;border-radius:50%;font-size:36px;line-height:1}.case-lightbox-prev{left:22px}.case-lightbox-next{right:22px}.case-lightbox-close:hover,.case-lightbox-prev:hover,.case-lightbox-next:hover{background:var(--rust)}.case-lightbox-prev:hover{transform:translateY(-50%) translateX(-2px)}.case-lightbox-next:hover{transform:translateY(-50%) translateX(2px)}html[dir="rtl"] .case-lightbox-prev{left:auto;right:22px}html[dir="rtl"] .case-lightbox-next{right:auto;left:22px}@media (max-width:600px){.case-lightbox-prev,.case-lightbox-next{width:44px;height:44px;font-size:28px}.case-lightbox-prev{left:10px}.case-lightbox-next{right:10px}}body.case-lightbox-open{overflow:hidden}.case-back{display:inline-flex;align-items:center;gap:10px;font-size:var(--ui-base);letter-spacing:0.12em;color:var(--smoke);text-decoration:none;margin-bottom:28px;border-bottom:1px solid var(--sand);padding-bottom:6px;transition:color 0.3s,border-color 0.3s}.case-back:hover{color:var(--rust);border-color:var(--rust)}.case-back::before{content:'←'}.case-voice{margin:32px 0 40px}.case-voice h2{font-family:var(--font-display,'Cormorant Garamond',serif);font-weight:400;font-size:clamp(1.4rem,2.4vw,1.7rem);letter-spacing:0.04em;color:var(--ink);margin:0 0 18px;padding-bottom:10px;border-bottom:1px solid var(--sand)}.case-voice-card{background:rgba(212,201,168,0.14);border-left:3px solid var(--gold);padding:26px 28px 22px;margin:0;position:relative}.case-voice-card::before{content:'\201C';position:absolute;top:4px;left:14px;font-family:'Cormorant Garamond',serif;font-size:3.2rem;line-height:1;color:var(--gold);opacity:0.45;pointer-events:none}.case-voice-quote{margin:0 0 14px;padding:0;font-size:var(--body-base);line-height:1.85;color:var(--ink);font-style:normal;border-left:none}.case-voice-by{font-size:var(--body-small);letter-spacing:0.04em;color:var(--smoke)}.case-voice-role{color:var(--smoke);opacity:0.75;margin-left:4px}[dir="rtl"] .case-voice-card{border-left:none;border-right:3px solid var(--gold)}[dir="rtl"] .case-voice-card::before{left:auto;right:14px}[dir="rtl"] .case-voice-role{margin-left:0;margin-right:4px}.article-tldr{background:rgba(212,201,168,0.18);border-left:3px solid var(--rust);padding:18px 22px;margin-bottom:36px;font-size:var(--body-small);line-height:1.85;color:var(--ink);letter-spacing:0.02em}.article-tldr::before{content:'KEY FACTS';display:inline-block;font-family:'Cormorant Garamond',serif;font-size:11px;letter-spacing:0.22em;color:var(--rust);margin-right:12px;font-weight:500;vertical-align:1px}html[lang="ja"] .article-tldr::before{content:'要点';letter-spacing:0.3em}html[lang="zh-Hans"] .article-tldr::before{content:'要点';letter-spacing:0.3em}html[lang="zh-Hant"] .article-tldr::before{content:'要點';letter-spacing:0.3em}html[lang="ko"] .article-tldr::before{content:'핵심';letter-spacing:0.2em}html[lang="ar"] .article-tldr::before{content:'النقاط الرئيسية';letter-spacing:0.1em}html[dir="rtl"] .article-tldr{border-left:0;border-right:3px solid var(--rust)}html[dir="rtl"] .article-tldr::before{margin-right:0;margin-left:12px}.article-hero,.article-body,.related{padding-left:clamp(24px,6vw,120px);padding-right:clamp(24px,6vw,120px)}.article-hero>*,.article-body>*,.related>*{max-width:720px;margin-left:0;margin-right:0}.article-hero>.case-meta,.article-body>.case-album,.related>.related-grid{max-width:1040px}.article-hero{padding-top:110px;padding-bottom:32px;background:var(--paper);border-bottom:1px solid var(--sand)}.article-hero .breadcrumb{font-size:var(--ui-tiny);letter-spacing:0.15em;color:var(--smoke);margin-bottom:24px}.article-hero .breadcrumb a{color:var(--rust);text-decoration:none}.article-hero .breadcrumb a:hover{text-decoration:underline}.article-hero h1{font-family:var(--font-serif-cjk);font-size:clamp(28px,4vw,46px);font-weight:300;letter-spacing:0.03em;line-height:1.45;margin-bottom:20px}html[lang="ko"] .article-hero h1{word-break:keep-all}.article-hero .lede{font-size:calc(var(--body-base) + 1px);line-height:2;color:var(--smoke)}.article-byline{display:flex;flex-wrap:wrap;align-items:center;margin-top:22px;padding-top:16px;border-top:1px solid var(--sand);font-size:var(--ui-tiny);letter-spacing:0.08em;color:var(--smoke)}.article-byline .byline-rev{color:var(--rust)}.article-byline .byline-rev strong{font-weight:600;letter-spacing:0.02em}.article-byline .byline-sep{margin:0 14px;color:var(--sand)}html[dir="rtl"] .article-byline{letter-spacing:0}.article-refs{margin-top:56px;padding-top:20px;border-top:1px solid var(--sand)}.article-body .article-refs .refs-title{font-family:inherit;font-size:var(--ui-tiny);font-weight:600;letter-spacing:0.18em;text-transform:uppercase;color:var(--smoke);margin:0 0 14px}.article-body .article-refs .refs-title::before{content:none}.article-refs .refs-list{list-style:none;padding:0;margin:0}.article-refs .refs-list li{position:relative;padding-left:18px;margin:9px 0;font-size:var(--body-base);line-height:1.7}.article-refs .refs-list li::before{content:'↗';position:absolute;left:0;top:0.05em;color:var(--gold);font-size:0.85em}.article-refs .refs-list a{color:var(--rust);text-decoration:none;border-bottom:1px solid var(--sand);transition:border-color 0.2s,color 0.2s}.article-refs .refs-list a:hover{color:var(--gold);border-bottom-color:var(--gold)}html[dir="rtl"] .article-refs .refs-list li{padding-left:0;padding-right:18px}html[dir="rtl"] .article-refs .refs-list li::before{left:auto;right:0}html[dir="rtl"] .article-refs .refs-title{letter-spacing:0}.article-body{background:var(--paper);padding-top:32px;padding-bottom:100px}.article-body h2{position:relative;font-family:var(--font-serif-cjk);font-size:24px;font-weight:400;margin:48px 0 18px;color:var(--ink);letter-spacing:0.04em;padding-left:0;border-left:0}.article-body h2::before{content:'';position:absolute;left:-14px;top:0.22em;bottom:0.22em;width:3px;background:var(--rust)}html[dir="rtl"] .article-body h2::before{left:auto;right:-14px}.article-body h3{font-family:var(--font-serif-cjk);font-size:17px;font-weight:500;margin:32px 0 12px;color:var(--rust)}.article-body p{font-size:var(--body-base);line-height:2.05;color:var(--ink);margin-bottom:18px}.article-body ul,.article-body ol{margin:12px 0 24px 22px;font-size:var(--body-base);line-height:2;color:var(--ink)}.article-body li{margin-bottom:6px}.article-body blockquote{border-left:3px solid var(--gold);padding:4px 0 4px 22px;margin:28px 0;font-style:italic;color:var(--smoke);font-size:var(--body-base);line-height:1.95}.article-body strong{color:var(--rust);font-weight:500}.article-body table{width:100%;border-collapse:collapse;margin:24px 0;font-size:var(--body-small)}.article-body th,.article-body td{border-bottom:1px solid var(--sand);padding:12px 10px;text-align:start;line-height:1.6}.article-body th{color:var(--rust);font-weight:500}.area-districts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin:18px 0 36px}.area-district{padding:18px 20px;background:rgba(212,201,168,0.12);border-left:2px solid var(--gold)}.area-district-name{font-family:var(--font-serif-cjk);font-size:15px;font-weight:500;color:var(--ink);margin-bottom:4px;letter-spacing:0.04em}.area-district-desc{font-size:12px;line-height:1.7;color:var(--smoke);letter-spacing:0.02em}.area-project-card{display:flex;align-items:center;gap:22px;padding:24px 28px;background:var(--paper);border:1px solid var(--sand);text-decoration:none;color:var(--ink);margin:24px 0 36px;transition:border-color 0.25s,transform 0.3s}.area-project-card:hover{border-color:var(--rust);transform:translateY(-2px)}.area-project-tag{font-family:'Cormorant Garamond',serif;font-size:14px;color:var(--rust);letter-spacing:0.18em;text-transform:uppercase}.area-project-title{font-family:var(--font-serif-cjk);font-size:19px;font-weight:500;color:var(--ink);margin:4px 0 6px;letter-spacing:0.04em}.area-project-desc{font-size:var(--body-small);color:var(--smoke);line-height:1.7}.area-project-arrow{font-family:'Cormorant Garamond',serif;font-size:24px;color:var(--rust);margin-left:auto;transition:transform 0.3s}.area-project-card:hover .area-project-arrow{transform:translateX(6px)}@media (max-width:700px){.area-districts{grid-template-columns:1fr}.area-project-card{flex-direction:column;align-items:flex-start}.area-project-arrow{margin-left:0}}.legal-updated{margin-top:18px;font-size:var(--ui-tiny);letter-spacing:0.14em;color:var(--smoke);text-transform:uppercase}.legal-dl{margin:32px 0;display:grid;grid-template-columns:220px 1fr;gap:0;border-top:1px solid var(--sand)}.legal-dl dt{padding:18px 20px 18px 0;font-family:var(--font-serif-cjk);font-size:var(--body-base);color:var(--rust);font-weight:500;letter-spacing:0.06em;border-bottom:1px solid var(--sand);background:rgba(212,201,168,0.08);padding-left:20px}.legal-dl dd{margin:0;padding:18px 0 18px 24px;font-size:var(--body-base);line-height:1.95;color:var(--ink);border-bottom:1px solid var(--sand)}html[dir="rtl"] .legal-dl dt{padding-right:20px;padding-left:20px}html[dir="rtl"] .legal-dl dd{padding-right:24px;padding-left:0}@media (max-width:700px){.legal-dl{grid-template-columns:1fr}.legal-dl dt{padding:14px 16px;border-bottom:none}.legal-dl dd{padding:0 16px 16px}}.article-stub-notice{margin:36px 0;padding:26px 28px;background:var(--light);border-left:3px solid var(--gold);font-size:var(--body-small);line-height:1.9;color:var(--smoke)}.article-stub-notice strong{color:var(--rust)}.article-stub-notice a{color:var(--rust)}.related{background:var(--light);padding-top:70px;padding-bottom:100px}.related h3{font-family:var(--font-serif-cjk);font-size:20px;font-weight:400;margin-bottom:28px;letter-spacing:0.05em}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.company{background:#1a1814;color:var(--paper)}.company .sec-label{color:var(--gold)}.company .sec-title{color:var(--paper)}.company-table{width:100%;border-collapse:collapse}.company-table tr{border-bottom:1px solid rgba(197,165,90,0.12)}.company-table td{padding:20px 0;font-size:var(--body-base);vertical-align:top;line-height:1.9}.company-table td:first-child{width:180px;color:var(--gold);font-size:var(--ui-base);letter-spacing:0.05em;padding-right:16px;white-space:nowrap}.company-table td:last-child{color:rgba(245,242,236,0.8)}.bank-list{display:flex;flex-wrap:wrap;gap:10px 0;margin-top:2px;align-items:center}.bank-item{display:inline-flex;align-items:center;gap:9px;white-space:nowrap}.bank-item:not(:last-child)::after{content:'/';color:rgba(245,242,236,0.35);margin:0 18px;font-weight:300;font-size:var(--ui-tiny)}.bank-logo{height:22px;padding:0 9px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-family:'Cormorant Garamond',serif;font-size:11px;font-weight:600;letter-spacing:0.04em;border-radius:2px;flex-shrink:0;line-height:1}.bank-logo[data-bank="smbc"]{background:#009b3b}.bank-logo[data-bank="mizuho"]{background:#003b86}.bank-logo[data-bank="mufg"]{background:#d6062b}.bank-logo[data-bank="resona"]{background:#f08d00}.bank-logo[data-bank="sbi"]{background:#1a73e8}.bank-logo[data-bank="sbj"]{background:#1c3666}.bc-tool{max-width:880px;margin:0 auto;background:#fff;border:1px solid var(--sand);padding:48px 56px 40px}.bc-form{display:flex;flex-direction:column;gap:32px}.bc-field{border:0;padding:0;margin:0}.bc-field legend{display:block;font-size:var(--ui-tiny);letter-spacing:0.18em;text-transform:uppercase;color:var(--rust);margin-bottom:12px;padding:0}.bc-segmented{display:inline-flex;flex-wrap:wrap;gap:0;border-top:1px solid var(--sand);border-left:1px solid var(--sand);background:var(--paper)}.bc-segmented button{background:transparent;border:0;padding:12px 22px;font-family:inherit;font-size:var(--body-small);letter-spacing:0.06em;color:var(--smoke);cursor:pointer;border-right:1px solid var(--sand);border-bottom:1px solid var(--sand);transition:background 0.2s,color 0.2s;white-space:nowrap}.bc-field>.bc-segmented{display:flex;width:100%}.bc-field>.bc-segmented>button{flex:1 1 auto;text-align:center}.bc-segmented button:hover{color:var(--rust)}.bc-segmented button.active{background:var(--rust);color:#fff}.bc-segmented button.bc-disabled{color:rgba(107,101,96,0.4);background:repeating-linear-gradient(
45deg,transparent 0,transparent 4px,rgba(212,201,168,0.18) 4px,rgba(212,201,168,0.18) 5px
);cursor:not-allowed;text-decoration:line-through;text-decoration-thickness:1px;text-decoration-color:rgba(139,74,47,0.5)}.bc-segmented button.bc-disabled:hover{color:rgba(107,101,96,0.4)}.bc-area-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.bc-area{width:140px;height:43px;box-sizing:border-box;font-family:inherit;font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1;font-size:var(--body-small);font-weight:400;color:var(--ink);padding:0 14px;background:var(--paper);border:1px solid var(--sand);border-bottom:1px solid var(--rust);outline:none;transition:border-color 0.2s}.bc-area:focus{border-color:var(--rust)}.bc-area-out{font-size:var(--ui-tiny);color:var(--smoke);letter-spacing:0.08em}.bc-results{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:18px;margin-top:40px;padding-top:36px;border-top:1px solid var(--sand)}.bc-result-card{padding:22px 24px;background:var(--paper);border-left:2px solid var(--sand)}.bc-result-card.bc-result-total{background:var(--ink);color:var(--paper);border-left:2px solid var(--rust)}.bc-result-label{font-size:var(--ui-tiny);letter-spacing:0.16em;text-transform:uppercase;color:var(--smoke);margin-bottom:8px}.bc-result-total .bc-result-label{color:var(--gold)}.bc-result-value{font-family:'Cormorant Garamond',serif;font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1;font-size:22px;font-weight:400;color:var(--ink);letter-spacing:0.03em;line-height:1.3}.bc-result-total .bc-result-value{color:var(--paper);font-size:28px}.bc-result-value.bc-result-value-sm{font-size:18px}.bc-result-value .bc-sep{color:var(--rust);margin:0 4px;font-size:0.8em}.bc-result-sub{margin-top:8px;font-size:var(--ui-tiny);letter-spacing:0.08em;color:rgba(245,242,236,0.55);font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum","lnum"}.bc-disclaimer{margin-top:32px;font-size:var(--ui-tiny);letter-spacing:0.06em;color:var(--smoke);line-height:1.8;padding:14px 18px;background:rgba(212,201,168,0.12);border-left:2px solid var(--gold)}.bc-cta{display:inline-flex;margin-top:28px;padding:14px 32px;border:1px solid var(--rust);color:var(--rust);text-decoration:none;font-size:var(--ui-base);letter-spacing:0.14em;text-transform:uppercase;transition:background 0.25s,color 0.25s}.bc-cta:hover{background:var(--rust);color:#fff}.bc-cta-secondary{border-color:var(--sand);color:var(--smoke)}.bc-cta-secondary:hover{background:var(--smoke);color:var(--paper);border-color:var(--smoke)}.bc-cta-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:24px}.bc-area-unit{color:var(--smoke);font-size:var(--body-small);letter-spacing:0.06em}@media (max-width:760px){.bc-tool,.lc-tool{padding:32px 24px}.bc-results{grid-template-columns:1fr;gap:14px}.bc-segmented button{padding:10px 16px;font-size:13px}}.lc-tool{max-width:880px;margin:0 auto;background:#fff;border:1px solid var(--sand);padding:36px 48px 30px}.lc-tool .bc-form,.bc-tool .bc-form{display:flex;flex-direction:column;gap:16px}.lc-tool .bc-field legend,.bc-tool .bc-field legend{margin-bottom:0}.lc-tool .bc-field,.bc-tool .bc-field{position:relative;padding-left:164px}.lc-tool .bc-field>legend,.bc-tool .bc-field>legend{position:absolute;left:0;top:0;width:140px;height:43px;margin:0;display:flex;align-items:center;font-size:var(--body-small);letter-spacing:0.08em}.lc-tool .bc-results{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px;padding-top:22px}.lc-tool .bc-result-total{grid-column:1 / -1}.lc-tool .bc-disclaimer{margin-top:24px}.lc-tool .lc-cta-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:22px}.lc-tool .lc-cta-row .bc-cta{margin-top:0}.lc-tool .bc-result-label{font-size:var(--ui-tiny);color:var(--smoke);line-height:1.5;margin-bottom:8px}.lc-tool .bc-result-total .bc-result-label{color:var(--gold)}.lc-tool .bc-result-value{margin-bottom:0;line-height:1.3}.lc-tool .bc-result-sub,.bc-tool .bc-result-sub{font-size:var(--ui-tiny);color:rgba(245,242,236,0.55);line-height:1.5;margin:8px 0 0}.bc-tool .bc-result-total .lt-floor-row{color:rgba(245,242,236,0.72)}.lc-tool .lc-down-amount,.lc-tool .lc-hint{font-size:var(--ui-tiny);color:var(--smoke);line-height:1.5}.lc-tool .lc-down-amount{margin:10px 0 0}.lc-tool .lc-hint{margin:8px 0 0}.lc-tool .bc-disclaimer{font-size:var(--ui-tiny);color:var(--smoke);line-height:1.8}.lc-sched-wrap{margin-top:24px}.lc-sched-toggle{background:transparent;border:1px solid var(--sand);color:var(--rust);font-family:inherit;font-size:var(--ui-tiny);letter-spacing:0.12em;text-transform:uppercase;padding:10px 18px;cursor:pointer;transition:background 0.2s,color 0.2s,border-color 0.2s}.lc-sched-toggle:hover{background:var(--rust);color:#fff;border-color:var(--rust)}.lc-sched-caret{font-size:0.9em}.lc-schedule{margin-top:16px}.lc-schedule[hidden]{display:none}.lc-sched-caption{font-size:var(--ui-tiny);color:var(--smoke);letter-spacing:0.08em;margin:0 0 8px}.lc-sched-scroll{max-height:360px;overflow-y:auto;border:1px solid var(--sand)}.lc-tool .lc-schedule table{width:100%;margin:0;border-collapse:collapse;font-size:var(--ui-tiny);font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1}.lc-tool .lc-schedule th,.lc-tool .lc-schedule td{padding:7px 12px;text-align:right;border-bottom:1px solid rgba(212,201,168,0.4);white-space:nowrap;line-height:1.5}.lc-tool .lc-schedule thead th{position:sticky;top:0;z-index:1;background:var(--paper);color:var(--rust);font-weight:500;letter-spacing:0.08em;border-bottom:1px solid var(--sand)}.lc-tool .lc-schedule td{color:var(--ink)}.lc-tool .lc-schedule tbody tr:nth-child(even){background:rgba(245,242,236,0.5)}.lc-tool .lc-schedule .lc-sched-num{text-align:center;color:var(--smoke)}[dir="rtl"] .lc-tool .lc-schedule th,[dir="rtl"] .lc-tool .lc-schedule td{text-align:left}[dir="rtl"] .lc-tool .lc-schedule .lc-sched-num{text-align:center}@media (max-width:760px){.lc-tool .bc-field,.bc-tool .bc-field{padding-left:0}.lc-tool .bc-field>legend,.bc-tool .bc-field>legend{position:static;width:auto;height:auto;margin-bottom:8px}.lc-tool .lc-input-row{flex-direction:column;align-items:stretch;gap:12px}.lc-tool .lc-input-row .bc-segmented{width:100%}.lc-tool .lc-input-row .bc-segmented button{flex:1 1 auto}.lc-tool .lc-input-row .lc-manual{align-self:flex-start}.lc-tool .bc-results{grid-template-columns:1fr}}.lc-hint{margin-top:8px;font-size:var(--ui-tiny);color:var(--smoke);letter-spacing:0.06em}.lc-input-row{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.lc-manual{display:inline-flex;align-items:center;gap:6px}.lc-tool .lc-total,.lc-tool .lc-income{width:120px;height:43px;padding:0 12px;border:1px solid var(--sand);background:var(--paper);color:var(--ink);font-size:var(--body-small);font-family:inherit;font-variant-numeric:tabular-nums lining-nums;border-radius:0}.lc-tool .lc-total:focus,.lc-tool .lc-income:focus{outline:1px solid var(--rust);border-color:var(--rust)}.lc-manual-input{width:116px;height:43px;padding:0 12px;border:1px solid var(--sand);background:var(--paper);color:var(--ink);font-size:var(--body-small);font-family:inherit;border-radius:0}.lc-manual-input:focus{outline:1px solid var(--rust);border-color:var(--rust)}.lc-manual-unit{color:var(--smoke);font-size:var(--body-small);letter-spacing:0.06em}.lc-tool .bc-segmented button{height:41px;padding:0 22px;line-height:1;display:inline-flex;align-items:center;justify-content:center}@media (max-width:760px){.lc-tool .lc-total,.lc-tool .lc-income,.lc-manual-input{height:38px}.lc-tool .bc-segmented button{height:36px;padding:0 16px}}.lc-down-amount{margin:10px 0 0;font-size:var(--ui-tiny);color:var(--smoke);letter-spacing:0.08em}.lc-down-amount .lc-down-yen{color:var(--rust);font-family:'Cormorant Garamond',serif;font-size:15px;font-weight:500;margin-left:6px}.lc-dti{margin-top:24px;padding:18px 22px;background:rgba(212,201,168,0.18);border-left:3px solid var(--rust);display:flex;flex-wrap:wrap;align-items:center;gap:14px;font-size:var(--ui-base)}.lc-dti-label{color:var(--rust);letter-spacing:0.18em;text-transform:uppercase;font-size:var(--ui-tiny)}.lc-dti-value{font-family:'Cormorant Garamond',serif;font-size:26px;color:var(--ink);font-weight:600}.lc-dti-badge{padding:4px 12px;border-radius:2px;font-size:12px;letter-spacing:0.14em;text-transform:uppercase;color:#fff}.lc-dti-badge.lc-dti-safe{background:#4a7c59}.lc-dti-badge.lc-dti-caution{background:#c08742}.lc-dti-badge.lc-dti-risk{background:#a8453a}.lc-dti-desc{color:var(--smoke);font-size:var(--ui-tiny);letter-spacing:0.06em}.company-license{margin-top:40px;display:flex;flex-direction:column;align-items:center;gap:14px}.company-license-frame{max-width:460px;width:100%;padding:8px;background:linear-gradient(135deg,#2a2520 0%,#1a1814 100%);box-shadow:0 6px 22px rgba(0,0,0,0.18);transition:transform 0.3s ease,box-shadow 0.3s ease;cursor:zoom-in}.company-license-frame:hover{transform:scale(1.02);box-shadow:0 10px 32px rgba(0,0,0,0.28)}.company-license-frame img{display:block;width:100%;height:auto;border:1px solid rgba(197,165,90,0.18)}.company-license-caption{font-size:var(--ui-tiny);letter-spacing:0.14em;color:var(--smoke);text-align:center;max-width:460px;line-height:1.7}.company-license-caption strong{color:var(--rust);font-weight:500}.company-map{margin-top:40px;border:1px solid var(--sand);overflow:hidden;background:var(--paper)}.company-map iframe{display:block;width:100%;height:380px;border:0;filter:grayscale(0.4) contrast(1.05) sepia(0.05);transition:filter 0.5s ease}.company-map:hover iframe{filter:grayscale(0) contrast(1) sepia(0)}.company-map-caption{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 22px;background:rgba(212,201,168,0.1);border-top:1px solid var(--sand);font-size:var(--ui-tiny);letter-spacing:0.1em;color:var(--smoke)}.company-map-link{color:var(--rust);text-decoration:none;border-bottom:1px solid var(--rust);padding-bottom:2px;white-space:nowrap;transition:color 0.25s,border-color 0.25s}.company-map-link:hover{color:var(--gold);border-color:var(--gold)}@media (max-width:700px){.company-map iframe{height:280px}.company-map-caption{flex-direction:column;align-items:flex-start;gap:8px;padding:12px 16px}}.methods{background:var(--paper);padding:100px 80px}.methods-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;max-width:1320px;margin:0 auto}.methods-card{background:#fff;border:1px solid var(--sand);padding:32px 28px 28px;position:relative;display:flex;flex-direction:column;transition:border-color 0.3s,transform 0.3s}.methods-card:hover{border-color:var(--rust);transform:translateY(-3px)}.methods-letter{position:absolute;top:18px;right:22px;font-family:'Cormorant Garamond',serif;font-size:28px;color:var(--gold);font-weight:400;letter-spacing:0.04em;line-height:1}.methods-card-title{font-family:var(--font-serif-cjk);font-size:17px;font-weight:500;color:var(--ink);letter-spacing:0.06em;margin:0 0 6px;padding-right:32px}.methods-card-sub{font-size:var(--ui-tiny);letter-spacing:0.16em;text-transform:uppercase;color:var(--rust);margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--sand)}.methods-rows{display:flex;flex-direction:column;gap:14px;flex:1}.methods-row{display:flex;flex-direction:column;gap:3px}.methods-row-key{font-family:var(--font-serif-cjk);font-size:14px;font-weight:500;color:var(--ink);letter-spacing:0.04em}.methods-row-val{font-size:var(--ui-tiny);line-height:1.7;color:var(--smoke);letter-spacing:0.02em}.methods-row-badge{display:inline-block;margin-left:6px;padding:1px 7px;background:var(--rust);color:#fff;font-size:9px;letter-spacing:0.1em;text-transform:uppercase;vertical-align:middle;border-radius:2px;font-family:'Cormorant Garamond',serif}.methods-note{max-width:1320px;margin:36px auto 0;text-align:center;font-size:var(--ui-tiny);letter-spacing:0.08em;color:var(--smoke);padding:14px 20px;background:rgba(212,201,168,0.18);border-left:2px solid var(--gold)}@media (max-width:1100px){.methods-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.methods{padding:64px 24px}.methods-grid{grid-template-columns:1fr;gap:18px}}.structure{background:var(--paper);padding:90px 80px}.structure-intro{font-size:var(--body-base);line-height:2;color:var(--smoke);max-width:760px;margin-bottom:48px}.structure-tier{margin-bottom:40px}.structure-tier:last-child{margin-bottom:0}.structure-tier-head{display:flex;align-items:center;gap:18px;margin-bottom:18px}.structure-tier-num{font-family:'Cormorant Garamond',serif;font-size:28px;color:var(--rust);letter-spacing:0.04em;line-height:1}.structure-tier-label{font-family:var(--font-serif-cjk);font-size:16px;font-weight:500;color:var(--ink);letter-spacing:0.14em;text-transform:uppercase}.structure-tier-sub{font-size:var(--ui-tiny);letter-spacing:0.18em;color:#8a6a2a;text-transform:uppercase;margin-left:auto}.structure-tier-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));max-width:1240px}.structure-card{background:#fff;border:1px solid var(--sand);border-left:3px solid var(--gold);padding:20px 22px}.structure-card-sub{font-size:10px;letter-spacing:0.18em;text-transform:uppercase;color:var(--rust);margin-bottom:6px;font-family:'Cormorant Garamond',serif}.structure-card-title{font-family:var(--font-serif-cjk);font-size:15px;font-weight:500;color:var(--ink);margin-bottom:10px;letter-spacing:0.04em;line-height:1.4}.structure-card-desc{font-size:12px;line-height:1.85;color:var(--smoke);letter-spacing:0.02em}.structure-card-desc strong{color:var(--ink);font-weight:500}.structure-tier-1 .structure-card{border-left-color:var(--rust);background:rgba(139,74,47,0.04)}.structure-tier-2 .structure-card{border-left-color:var(--gold)}.structure-tier-3 .structure-card{border-left-color:var(--rust)}.structure-tier-4 .structure-card{border-left-color:var(--sand)}.structure-tier-5 .structure-card{border-left-color:var(--smoke);background:rgba(212,201,168,0.18)}.structure-tier-3 .structure-tier-sub::before{content:'東和';margin-right:8px;color:var(--rust)}@media (max-width:700px){.structure{padding:64px 24px}.structure-tier-head{flex-wrap:wrap;gap:10px}.structure-tier-sub{margin-left:0;width:100%}}.process{background:var(--paper);padding:100px 80px}.process-list{max-width:880px;margin:0 auto;position:relative;padding-left:90px}.process-list::before{content:'';position:absolute;left:30px;top:36px;bottom:60px;width:1px;background:linear-gradient(to bottom,var(--rust) 0%,var(--sand) 60%,transparent 100%)}.process-step{position:relative;padding:8px 0 40px;display:grid;grid-template-columns:1fr auto;gap:14px 24px;align-items:start}.process-step:last-child{padding-bottom:0}.process-num{position:absolute;left:-90px;top:0;width:60px;height:60px;border-radius:50%;background:var(--paper);border:1px solid var(--rust);display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:400;color:var(--rust);letter-spacing:0.04em;z-index:1;transition:background 0.4s,color 0.4s,transform 0.4s}.process-list{transition:opacity 0.3s}.process-step{transition:opacity 0.3s,transform 0.4s cubic-bezier(.2,.7,.3,1)}.process-list:hover .process-step{opacity:0.42}.process-list:hover .process-step:hover{opacity:1;transform:translateX(4px)}html[dir="rtl"] .process-list:hover .process-step:hover{transform:translateX(-4px)}.process-step:hover .process-num{background:var(--rust);color:var(--paper);transform:scale(1.08);box-shadow:0 6px 18px rgba(139,74,47,0.28)}.process-step:hover .process-title{color:var(--rust)}.process-step:hover .process-duration{background:var(--gold);color:var(--ink);border-color:var(--gold)}.process-num,.process-title,.process-duration{transition:background 0.3s,color 0.3s,border-color 0.3s,transform 0.3s,box-shadow 0.3s}@media (hover:none){.process-list:hover .process-step{opacity:1}.process-list:hover .process-step:hover{transform:none}}.process-title{font-family:var(--font-serif-cjk);font-size:21px;font-weight:500;color:var(--ink);letter-spacing:0.04em;line-height:1.4;margin:14px 0 0}.process-desc{grid-column:1 / -1;font-size:var(--body-base);line-height:1.95;color:var(--smoke);margin:0;max-width:640px}.process-duration{align-self:start;white-space:nowrap;font-size:var(--ui-tiny);letter-spacing:0.14em;color:var(--gold);padding:8px 14px;border:1px solid rgba(197,165,90,0.5);border-radius:2px;text-transform:uppercase;margin-top:16px}html[dir="rtl"] .process-list{padding-left:0;padding-right:90px}html[dir="rtl"] .process-list::before{left:auto;right:30px}html[dir="rtl"] .process-num{left:auto;right:-90px}@media (max-width:700px){.process{padding:70px 24px}.process-list{padding-left:64px}.process-list::before{left:22px;top:30px;bottom:40px}.process-num{left:-64px;width:44px;height:44px;font-size:18px}.process-step{grid-template-columns:1fr;padding-bottom:32px}.process-title{font-size:17px;margin-top:8px}.process-duration{margin-top:6px;justify-self:start}html[dir="rtl"] .process-list{padding-right:64px}html[dir="rtl"] .process-list::before{right:22px}html[dir="rtl"] .process-num{right:-64px}}.overseas{background:#1a1814;color:var(--paper);padding:90px 80px}.overseas .sec-label{color:var(--gold)}.overseas .sec-title{color:var(--paper)}.overseas-intro{font-size:var(--body-base);line-height:2;color:rgba(245,242,236,0.75);max-width:640px;margin-bottom:48px}.overseas-grid{display:grid;grid-template-columns:180px 1fr;gap:0;max-width:960px;border-top:1px solid rgba(197,165,90,0.25)}.overseas-row{display:contents}.overseas-key{padding:22px 24px 22px 0;font-family:var(--font-serif-cjk);font-size:14px;font-weight:500;color:var(--gold);letter-spacing:0.14em;border-bottom:1px solid rgba(197,165,90,0.15);text-transform:uppercase}.overseas-val{padding:22px 0;font-size:var(--body-small);line-height:1.9;color:rgba(245,242,236,0.88);border-bottom:1px solid rgba(197,165,90,0.15);letter-spacing:0.04em}.overseas-val em{display:block;margin-top:4px;font-size:var(--ui-tiny);font-style:normal;color:rgba(245,242,236,0.5);letter-spacing:0.06em}.overseas-badge{display:inline-block;margin-left:8px;padding:2px 8px;background:var(--rust);color:#fff;font-size:10px;letter-spacing:0.12em;text-transform:uppercase;vertical-align:middle;border-radius:2px;font-family:'Cormorant Garamond',serif}@media (max-width:700px){.overseas{padding:64px 24px}.overseas-grid{grid-template-columns:1fr}.overseas-key{padding:18px 0 4px;border-bottom:0}.overseas-val{padding:0 0 18px}}.faq{background:var(--paper);padding:100px 80px}.faq-intro{font-size:var(--body-base);line-height:2;color:var(--smoke);max-width:640px;margin-bottom:56px}.faq-list{max-width:880px;margin:0 auto}.faq-item{border-top:1px solid var(--sand)}.faq-item:last-child{border-bottom:1px solid var(--sand)}.faq-question{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px 4px;width:100%;background:none;border:0;cursor:pointer;text-align:start;font-family:var(--font-serif-cjk);font-size:clamp(15px,1.25vw,19px);font-weight:400;color:var(--ink);letter-spacing:0.03em;line-height:1.55;transition:color 0.3s}.faq-question:hover{color:var(--rust)}.faq-icon{width:22px;height:22px;position:relative;flex-shrink:0}.faq-icon::before,.faq-icon::after{content:'';position:absolute;background:var(--rust)}.faq-icon::before{top:50%;left:0;right:0;height:1px;margin-top:-0.5px}.faq-icon::after{left:50%;top:0;bottom:0;width:1px;margin-left:-0.5px;transition:transform 0.3s ease}.faq-item.open .faq-icon::after{transform:rotate(90deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height 0.4s ease}.faq-item.open .faq-answer{max-height:600px}.faq-answer-inner{padding:0 4px 28px;font-size:var(--body-base);line-height:1.95;color:var(--smoke);max-width:760px}.faq-answer-inner strong{color:var(--rust);font-weight:500}.careers{background:var(--paper);padding:100px 80px}.careers-intro{font-size:var(--body-base);line-height:2;color:var(--smoke);max-width:640px;margin-bottom:56px}.careers-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.career-card{background:var(--light);padding:40px 36px;border-top:2px solid var(--rust)}.career-header{margin-bottom:28px}.career-badge{display:inline-flex;align-items:baseline;gap:6px;background:var(--rust);color:#fff;font-family:'Cormorant Garamond',serif;font-size:13px;letter-spacing:0.15em;padding:5px 13px;margin-bottom:16px}.career-badge .career-count{font-size:17px;font-weight:500;letter-spacing:0.04em}.career-title{font-family:var(--font-serif-cjk);font-size:22px;font-weight:400;margin-bottom:6px;letter-spacing:0.04em;color:var(--ink)}.career-sub{font-size:var(--body-small);color:var(--smoke);letter-spacing:0.06em}.career-detail{display:grid;grid-template-columns:100px 1fr;gap:14px 20px;font-size:var(--body-small);line-height:1.85;margin:0}.career-detail dt{color:var(--rust);font-weight:500;letter-spacing:0.04em}.career-detail dd{color:var(--ink);margin:0}.careers-apply{margin-top:52px;text-align:center;font-size:var(--body-base);line-height:2;color:var(--smoke)}.careers-apply a{font-family:'Cormorant Garamond',serif;color:var(--rust);font-size:clamp(15px,1.6vw,18px);letter-spacing:0.08em;text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:2px}.careers-apply a:hover{color:var(--ink)}.contact{background:var(--rust);text-align:center;padding:90px 40px}.contact .sec-label{color:rgba(245,242,236,0.6)}.contact .sec-title{color:white;margin-bottom:32px}.contact-desc{color:rgba(255,255,255,0.75);font-size:var(--body-base);line-height:2;margin-bottom:36px}.contact-email{font-family:'Cormorant Garamond',serif;font-size:clamp(16px,2.5vw,22px);font-weight:300;color:white;letter-spacing:0.08em;text-decoration:none;border-bottom:1px solid rgba(255,255,255,0.4);padding-bottom:6px;transition:border-color 0.3s;display:inline-block;margin-bottom:40px;word-break:break-all}.contact-email:hover{border-color:white}.contact-tel{font-size:var(--body-base);color:rgba(255,255,255,0.7);letter-spacing:0.12em}.contact-form{max-width:760px;margin:56px auto 0;background:var(--paper);color:var(--ink);padding:48px 56px;text-align:start;border-radius:0;position:relative}.cf-progress{display:flex;align-items:center;gap:6px;margin-bottom:40px;justify-content:center}.cf-step-indicator{display:flex;flex-direction:column;align-items:center;gap:6px;cursor:default;user-select:none}.cf-step-indicator.cf-step-done{cursor:pointer}.cf-step-num{width:32px;height:32px;border-radius:50%;border:1px solid var(--sand);display:inline-flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:16px;color:var(--smoke);background:transparent;transition:background 0.3s,color 0.3s,border-color 0.3s}.cf-step-indicator.cf-step-current .cf-step-num{background:var(--rust);color:#fff;border-color:var(--rust)}.cf-step-indicator.cf-step-done .cf-step-num{background:transparent;color:var(--rust);border-color:var(--rust)}.cf-step-label{font-size:11px;letter-spacing:0.14em;color:var(--smoke);text-transform:uppercase;white-space:nowrap}.cf-step-indicator.cf-step-current .cf-step-label{color:var(--rust)}.cf-step-line{flex:0 0 36px;height:1px;background:var(--sand);margin-top:-22px}.cf-steps{position:relative}.cf-step{display:none;animation:cfFade 0.35s ease}.cf-step.cf-step-active{display:block}@keyframes cfFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.cf-step-title{font-family:var(--font-serif-cjk);font-size:22px;font-weight:400;color:var(--ink);margin:0 0 28px;letter-spacing:0.04em}.cf-field{margin-bottom:28px}.cf-field>label{display:block;font-size:var(--ui-tiny);letter-spacing:0.18em;color:var(--rust);text-transform:uppercase;margin-bottom:12px}.cf-field-hint{font-size:var(--ui-tiny);color:var(--smoke);margin-top:6px;letter-spacing:0.04em}.cf-segmented{display:inline-flex;flex-wrap:wrap;gap:8px}.cf-segmented button{background:transparent;border:1px solid var(--sand);padding:10px 18px;font-family:inherit;font-size:var(--body-small);letter-spacing:0.05em;color:var(--smoke);cursor:pointer;transition:background 0.2s,color 0.2s,border-color 0.2s}.cf-segmented button:hover{color:var(--rust);border-color:var(--rust)}.cf-segmented button.active{background:var(--rust);color:#fff;border-color:var(--rust)}.cf-input,.cf-textarea{width:100%;font-family:inherit;font-size:var(--body-base);color:var(--ink);background:#fff;border:1px solid var(--sand);padding:12px 16px;letter-spacing:0.02em;-webkit-appearance:none;appearance:none;outline:none;transition:border-color 0.2s}.cf-input:focus,.cf-textarea:focus{border-color:var(--rust)}.cf-textarea{min-height:130px;resize:vertical;line-height:1.7}.cf-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.cf-actions{display:flex;justify-content:space-between;align-items:center;margin-top:40px;padding-top:28px;border-top:1px solid var(--sand);gap:14px;flex-wrap:wrap}.cf-back,.cf-next,.cf-submit{font-family:inherit;font-size:var(--ui-base);letter-spacing:0.14em;padding:14px 32px;cursor:pointer;background:transparent;border:1px solid var(--smoke);color:var(--smoke);transition:background 0.25s,color 0.25s,border-color 0.25s}.cf-back:hover{color:var(--ink);border-color:var(--ink)}.cf-next,.cf-submit{background:var(--rust);color:#fff;border-color:var(--rust);margin-left:auto}.cf-next:hover,.cf-submit:hover{background:#6b3520;border-color:#6b3520}.cf-next:disabled,.cf-submit:disabled{opacity:0.4;cursor:not-allowed;background:var(--rust)}.cf-success{background:rgba(197,165,90,0.12);border-left:3px solid var(--gold);padding:32px 28px;margin-top:32px;font-size:var(--body-base);line-height:1.9;color:var(--ink)}.cf-error{margin-top:18px;background:rgba(139,74,47,0.08);border-left:3px solid var(--rust);padding:12px 16px;color:var(--rust);font-size:var(--body-small)}.cf-turnstile{margin-top:20px;min-height:65px}.cf-privacy{margin-top:24px;font-size:var(--ui-tiny);color:var(--smoke);line-height:1.8;letter-spacing:0.04em}.cf-privacy a{color:var(--rust);text-decoration:none;border-bottom:1px solid var(--rust);padding-bottom:1px}.cf-fallback{margin-top:36px;padding-top:26px;border-top:1px solid var(--sand);text-align:center;font-size:var(--ui-tiny);letter-spacing:0.1em;color:var(--smoke)}.cf-fallback a{color:var(--rust);text-decoration:none;border-bottom:1px solid var(--rust);padding-bottom:2px;margin:0 6px}@media (max-width:720px){.contact-form{padding:32px 22px}.cf-progress{gap:4px;margin-bottom:28px}.cf-step-line{flex:0 0 14px}.cf-step-label{font-size:10px;letter-spacing:0.08em}.cf-grid-2{grid-template-columns:1fr}.cf-actions{flex-direction:row}.cf-back,.cf-next,.cf-submit{padding:12px 22px;font-size:var(--ui-tiny)}}html[dir="rtl"] .cf-actions{flex-direction:row-reverse}html[dir="rtl"] .cf-next,html[dir="rtl"] .cf-submit{margin-left:0;margin-right:auto}html[dir="rtl"] .cf-field>label{text-align:right}footer{background:#1a1814;color:rgba(245,242,236,0.55);padding:64px 60px 28px;font-size:var(--ui-tiny);letter-spacing:0.05em;border-top:1px solid rgba(197,165,90,0.08)}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1.2fr;gap:44px;max-width:1280px;margin:0 auto 48px}.footer-col{display:flex;flex-direction:column;gap:14px}.footer-brand{font-family:var(--font-serif-cjk);font-size:17px;letter-spacing:0.12em;color:rgba(245,242,236,0.92);font-weight:400;display:inline-flex;align-items:center;gap:10px}.footer-brand-img{width:30px;height:30px;flex-shrink:0;display:block;object-fit:contain}.footer-brand-text{display:inline-block;line-height:1}.footer-brand span{color:var(--rust);font-weight:500;margin-left:2px}.footer-tagline{font-size:var(--ui-tiny);letter-spacing:0.16em;color:rgba(245,242,236,0.45);text-transform:uppercase}.footer-address{font-size:var(--body-small);line-height:1.9;color:rgba(245,242,236,0.6);letter-spacing:0.06em}.footer-title{font-family:var(--font-serif-cjk);font-size:var(--ui-base);letter-spacing:0.16em;color:rgba(245,242,236,0.92);font-weight:500;margin-bottom:6px;padding-bottom:14px;border-bottom:1px solid rgba(197,165,90,0.18);text-transform:uppercase}.footer-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.footer-links a{color:rgba(245,242,236,0.55);text-decoration:none;font-size:var(--body-small);letter-spacing:0.08em;transition:color 0.25s,padding-left 0.25s;display:inline-block}.footer-links a:hover{color:var(--gold);padding-left:4px}.footer-contact{font-size:var(--body-small);line-height:1.9;color:rgba(245,242,236,0.6);letter-spacing:0.06em}.footer-email{display:inline-block;margin-top:4px;color:rgba(245,242,236,0.85);text-decoration:none;font-size:var(--body-small);letter-spacing:0.05em;border-bottom:1px solid rgba(197,165,90,0.25);padding-bottom:3px;word-break:break-all;transition:color 0.25s,border-color 0.25s}.footer-email:hover{color:var(--gold);border-color:var(--gold)}.footer-bottom{max-width:1280px;margin:0 auto;padding-top:24px;border-top:1px solid rgba(197,165,90,0.08);display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;color:rgba(245,242,236,0.35);font-size:var(--ui-tiny)}.footer-bottom .footer-license{font-size:var(--ui-tiny);letter-spacing:0.1em;color:rgba(245,242,236,0.32)}.footer-bottom-meta{display:inline-flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:flex-end}.footer-bottom-link{font-size:var(--ui-tiny);letter-spacing:0.1em;color:rgba(245,242,236,0.4);text-decoration:none;border-bottom:1px solid rgba(197,165,90,0.18);padding-bottom:2px;transition:color 0.25s,border-color 0.25s}.footer-bottom-link:hover{color:var(--gold);border-color:var(--gold)}html[dir="rtl"] .footer-links a:hover{padding-left:0;padding-right:4px}@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.reveal{opacity:0;transform:translateY(28px);transition:opacity 0.8s ease,transform 0.8s ease}.reveal.visible{opacity:1;transform:translateY(0)}.sticky-contact{position:fixed;right:24px;bottom:28px;z-index:260;display:inline-flex;align-items:center;gap:8px;padding:13px 22px;background:var(--rust);color:#fff;font-family:var(--font-sans-cjk);font-size:14px;letter-spacing:0.14em;border-radius:999px;text-decoration:none;box-shadow:0 8px 28px rgba(139,74,47,0.35);opacity:0;pointer-events:none;transform:translateY(120%);transition:opacity 0.3s ease,transform 0.4s cubic-bezier(.2,.7,.3,1),background 0.25s,box-shadow 0.25s}.sticky-contact svg{width:16px;height:16px}.sticky-contact.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.sticky-contact:hover,.sticky-contact:focus-visible{background:#6b3520;box-shadow:0 10px 32px rgba(139,74,47,0.5)}html[dir="rtl"] .sticky-contact{right:auto;left:24px}@media (max-width:600px){.sticky-contact{right:16px;bottom:18px;padding:11px 18px;font-size:13px}}.article-reading-time{display:inline-block;margin-top:16px;font-size:var(--ui-tiny);letter-spacing:0.18em;color:var(--smoke);text-transform:uppercase}.article-reading-time::before{content:'◷ ';color:var(--gold);font-size:1.2em;vertical-align:-1px}.article-toc{position:sticky;top:88px;align-self:start;max-width:240px;padding:18px 0 18px 20px;border-left:1px solid var(--sand);font-size:13px;line-height:1.7}.article-toc h4{display:block;font-family:var(--font-serif-cjk);font-size:12px;letter-spacing:0.2em;color:var(--rust);text-transform:uppercase;font-weight:500;margin:0 0 20px;padding-bottom:12px;border-bottom:1px solid var(--sand);white-space:nowrap}.article-toc ol{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;counter-reset:toc}.article-toc li{counter-increment:toc;position:relative;padding-left:32px}.article-toc li::before{content:counter(toc,decimal-leading-zero);position:absolute;left:0;top:2px;font-family:'Cormorant Garamond',serif;font-size:12px;color:var(--gold);font-weight:500;letter-spacing:0.04em}.article-toc a{color:var(--smoke);text-decoration:none;transition:color 0.2s;display:block}.article-toc a:hover,.article-toc a.active{color:var(--rust)}.article-layout{display:grid;grid-template-columns:240px 1fr;gap:60px;max-width:1120px;margin:0 auto}.article-layout .article-body{padding:70px 0 80px;max-width:720px}@media (max-width:900px){.article-layout{grid-template-columns:1fr;gap:0}.article-toc{position:static;max-width:100%;padding:20px 24px;border-left:0;border-top:1px solid var(--sand);border-bottom:1px solid var(--sand);background:rgba(212,201,168,0.1);margin:0}.article-layout .article-body{padding:50px 24px 80px}}.article-cta-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:1040px;margin:56px 0 96px;padding-left:clamp(24px,6vw,120px);padding-right:clamp(24px,6vw,120px)}.article-cta-card{display:flex;flex-direction:column;gap:8px;padding:28px 30px;background:var(--paper);border:1px solid var(--sand);border-left:3px solid var(--rust);text-decoration:none;color:var(--ink);transition:border-color 0.25s,background 0.25s,transform 0.3s}.article-cta-card:hover{background:#fff;border-color:var(--rust);transform:translateY(-2px)}.article-cta-card-label{font-size:var(--ui-tiny);letter-spacing:0.18em;color:var(--rust);text-transform:uppercase}.article-cta-card-title{font-family:var(--font-serif-cjk);font-size:18px;font-weight:500;color:var(--ink);line-height:1.4}.article-cta-card-cta{margin-top:6px;font-size:13px;letter-spacing:0.06em;color:var(--smoke);transition:color 0.25s,gap 0.25s;display:inline-flex;align-items:center;gap:8px}.article-cta-card:hover .article-cta-card-cta{color:var(--rust);gap:14px}.article-cta-card-cta::after{content:'→'}@media (max-width:700px){.article-cta-row{grid-template-columns:1fr;gap:14px;margin:36px 0 64px;padding-left:24px;padding-right:24px}.article-cta-card{padding:22px 24px}}.scroll-progress{position:fixed;top:0;left:0;height:2px;width:0%;background:linear-gradient(90deg,var(--rust),var(--gold));z-index:300;pointer-events:none;transition:width 0.08s linear}html[dir="rtl"] .scroll-progress{left:auto;right:0}.to-top{position:fixed;bottom:88px;right:24px;width:46px;height:46px;border-radius:50%;background:var(--ink);border:1px solid rgba(245,242,236,0.18);color:var(--paper);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:250;opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity 0.3s,visibility 0.3s,transform 0.3s,background 0.25s,border-color 0.25s;box-shadow:0 4px 18px rgba(0,0,0,0.18);padding:0}.to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.to-top:hover{background:var(--rust);border-color:var(--rust)}.to-top svg{width:16px;height:16px}html[dir="rtl"] .to-top{right:auto;left:24px}@media (max-width:600px){.to-top{bottom:70px;right:16px;width:38px;height:38px}html[dir="rtl"] .to-top{left:16px;right:auto}}@media (prefers-reduced-motion:reduce){.scroll-progress{transition:none}.to-top{transition:opacity 0.15s,visibility 0.15s}}@media (max-width:900px){nav{padding:16px 24px}.nav-links{display:none}.nav-toggle{display:flex}.lang-current{padding:7px 10px;font-size:var(--ui-tiny)}.hero{grid-template-columns:1fr;min-height:100svh;position:relative}.hero-right{position:absolute;inset:0;z-index:0;animation:fadeIn 1.5s 0.4s forwards}.hero-right::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,rgba(26,24,20,0.12) 0%,rgba(26,24,20,0.30) 32%,rgba(26,24,20,0.72) 62%,rgba(26,24,20,0.82) 100%)}.hero-mark{justify-content:flex-start;padding-top:22svh}.hero-mark::before,.hero-mark::after{top:calc(22svh + 25px)}.hero-mark::before{height:90px}.hero-mark::after{width:90px}.hero-mark-kanji{font-size:22px;margin-bottom:18px}.hero-mark-label{font-size:11px}.hero-left{position:relative;z-index:1;padding:110px 28px 120px;justify-content:flex-end}.hero-tag{color:rgba(245,242,236,0.8)}.hero-title{color:var(--paper);font-size:clamp(28px,7vw,42px)}.hero-title em{color:#e8a070}.hero-sub{color:rgba(245,242,236,0.75);max-width:100%}.hero-cta{color:var(--paper);border-color:rgba(197,165,90,0.7)}.hero-cta:hover{color:#e8c070}.hero-year{display:none}section{padding:64px 24px}.about-grid{grid-template-columns:1fr;gap:40px}.about-stats{grid-template-columns:1fr 1fr}.projects-grid{grid-template-columns:repeat(2,1fr);gap:3px}.services-grid,.knowledge-grid,.related-grid{grid-template-columns:1fr;gap:0}.team,.process,.faq,.careers{padding:64px 24px}.careers-grid{grid-template-columns:1fr;gap:24px}.faq-question{padding:20px 0;gap:16px}.faq-answer-inner{padding-bottom:22px}.faq-item.open .faq-answer{max-height:800px}.team-grid{grid-template-columns:1fr;gap:36px}.team-member{flex-direction:column;align-items:flex-start;gap:18px}.team-photo{width:90px;height:90px;font-size:26px}.career-detail{grid-template-columns:84px 1fr;gap:10px 14px}.career-card{padding:32px 26px}.knowledge-grid{gap:18px}.related-grid{gap:14px}.service-card{padding:32px 0}.company-table td:first-child{width:120px;font-size:var(--ui-tiny)}.company-table td{font-size:var(--body-small)}.article-hero{padding-top:120px;padding-bottom:50px}.article-body{padding-top:50px;padding-bottom:80px}.related{padding-top:50px;padding-bottom:80px}footer{padding:48px 24px 24px}.footer-grid{grid-template-columns:1fr 1fr;gap:36px 32px;margin-bottom:36px}.footer-bottom{flex-direction:column;gap:8px;text-align:center}}@media (max-width:480px){.nav-logo{font-size:14px}.hero-left{padding:90px 20px 60px}.hero-title{font-size:clamp(26px,8vw,36px)}section{padding:56px 20px}.team,.process,.faq,.careers{padding:56px 20px}.projects-grid{grid-template-columns:1fr}.about-stats{grid-template-columns:1fr 1fr;gap:24px}.company-table{display:block}.company-table tbody{display:block}.company-table tr{display:block;padding:16px 0;border-bottom:1px solid rgba(197,165,90,0.12)}.company-table td{display:block;width:100% !important;padding:2px 0}.company-table td:first-child{font-size:var(--ui-tiny);letter-spacing:0.15em;margin-bottom:4px;color:var(--gold)}.contact-email{font-size:14px;letter-spacing:0.02em}.footer-grid{grid-template-columns:1fr;gap:28px}}.au-ref{margin-top:36px}.au-ref h2{font-size:19px;font-weight:600;margin:30px 0 14px}.au-facts{margin:0 0 8px;padding-left:1.1em}.au-facts li{margin:7px 0;font-variant-numeric:tabular-nums lining-nums}.au-table{width:100%;border-collapse:collapse;margin:12px 0 8px}.au-table th,.au-table td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--sand);font-size:var(--body-small)}.au-table th{color:var(--rust);font-weight:600;letter-spacing:0.04em}.au-table td{font-variant-numeric:tabular-nums lining-nums}.au-faq{padding:14px 0;border-bottom:1px solid var(--sand)}.au-faq-q{font-weight:600;margin:0 0 6px}.au-faq-a{margin:0;color:var(--smoke)}[dir="rtl"] .au-facts{padding-left:0;padding-right:1.1em}[dir="rtl"] .au-table th,[dir="rtl"] .au-table td{text-align:right}.rev-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.brk-rate{margin:6px 0 0;font-size:var(--ui-tiny);color:var(--smoke);letter-spacing:0.05em}.bc-field-hint{margin:7px 0 0;font-size:12.5px;line-height:1.55;color:var(--smoke);letter-spacing:0.02em}[dir="rtl"] .bc-field-hint{text-align:right}.bc-breakdown-title{font-size:14px;letter-spacing:0.12em;text-transform:uppercase;color:var(--rust);margin:30px 0 12px}.bc-breakdown td:last-child{text-align:right;font-variant-numeric:tabular-nums lining-nums;white-space:nowrap}[dir="rtl"] .bc-breakdown td:last-child{text-align:left}.bc-breakdown tr.bc-breakdown-total td{border-top:2px solid var(--rust);padding-top:14px;font-weight:600;color:var(--ink)}.bc-breakdown tr.bc-breakdown-total td:last-child{color:var(--rust)}.tools-group-title{font-size:15px;letter-spacing:0.14em;text-transform:uppercase;color:var(--rust);margin:44px 0 18px}.tools-group-title:first-of-type{margin-top:6px}.kb-tools-cta{margin:0 0 24px}.kb-tools-cta a{display:inline-block;padding:11px 24px;background:linear-gradient(135deg,rgba(197,165,90,0.12),rgba(139,74,47,0.08));border:1px solid var(--rust);color:var(--rust);text-decoration:none;font-size:var(--body-small);letter-spacing:0.06em;transition:background 0.2s,color 0.2s}.kb-tools-cta a:hover{background:var(--rust);color:var(--paper)}@media print{nav,footer,.nav-toggle,.mobile-menu,.lang-switcher,.skip-link,.bc-cta-row,.lc-cta-row,.lt-cta,.lc-sched-wrap,.au-ref,.au-faq,.breadcrumb,#cookie-banner,.reveal-on-scroll{display:none !important}body{background:#fff !important;color:#000 !important}.reveal{opacity:1 !important;transform:none !important}.bc-result-total,.bc-result-card,.bc-tool,.lc-tool,.tax-tool,.koto-tool,.land-tool,.rev-tool,.brk-tool,.area-tool{background:#fff !important;color:#000 !important;box-shadow:none !important}.bc-result-total,.bc-result-card{border:1px solid #999 !important}.bc-result-label,.bc-result-sub,.bc-result-value{color:#000 !important}a[href]::after{content:""}}