@keyframes fade-in-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.hub section .section-label,.hub section .section-h2,.hub section .divider,.hub section .section-lead,.hub .about-body,.hub .work-hero,.hub .work-card,.hub .gallery-item-wrap,.hub .gallery-more,.hub .quote-card,.hub .profile-flex{animation:linear both fade-in-up;animation-timeline:view();animation-range:entry cover 25%}}}@keyframes golden-pulse{0%,to{box-shadow:0 0 70px #b8875a33,0 0 140px #b8875a14}50%{box-shadow:0 0 130px #b8875a7a,0 0 240px #b8875a38}}@media (prefers-reduced-motion:no-preference){.hub .hero-image{animation:4s ease-in-out infinite golden-pulse}}.hub{--fukasumi:#1a1a1a;--kinari:#f5f0e8;--sumihai:#2c2c2c;--kondou:#b8875a;--kakiiro:#c4622d;--line:#c8c0b0;--sub:#555;--mute:#888;font-family:"Hiragino Mincho ProN", "Yu Mincho", "YuMincho", var(--font-noto-serif-jp), serif;background:var(--kinari);color:#1c1c1c;line-height:1.8}.hub .site-header{z-index:100;-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--kondou);background:#1a1a1aeb;padding:14px 32px;display:block;position:fixed;top:0;left:0;right:0}.hub .header-inner{justify-content:space-between;align-items:center;width:100%;max-width:1200px;margin:0 auto;display:flex}.hub .logo{color:var(--kinari);align-items:center;gap:12px;text-decoration:none;display:flex}.hub .logo-circle{background:radial-gradient(circle, var(--kondou) 0%, #8a5e3a 100%);width:44px;height:44px;color:var(--kinari);letter-spacing:.05em;border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.hub .logo-text{letter-spacing:.12em;font-size:16px;font-weight:500}.hub .logo-text .sub{color:var(--kondou);letter-spacing:.2em;margin-top:2px;font-size:10px;display:block}.hub .nav{align-items:center;gap:28px;display:flex}.hub .nav-item{color:var(--kinari);letter-spacing:.12em;font-size:13px;text-decoration:none;transition:color .2s}.hub .nav-item:hover{color:var(--kondou)}.hub .cta-button{background:var(--kakiiro);color:var(--kinari);letter-spacing:.15em;margin-left:12px;padding:10px 22px;font-size:12px;text-decoration:none;transition:opacity .2s}.hub .cta-button:hover{opacity:.85}.hub section{padding:100px 32px}.hub .container{max-width:1040px;margin:0 auto}.hub .section-h2{letter-spacing:.12em;text-align:center;margin-bottom:12px;font-size:26px;font-weight:500}.hub .section-h2.light{color:var(--fukasumi)}.hub .section-h2.dark{color:var(--kinari)}.hub .section-label{letter-spacing:.3em;color:var(--kondou);text-align:center;margin-bottom:18px;font-size:11px}.hub .divider{background:var(--kondou);width:60px;height:1px;margin:24px auto 40px}.hub .section-lead{text-align:center;letter-spacing:.06em;max-width:640px;margin:0 auto 56px;font-size:14px;line-height:2}.hub .section-lead.light{color:var(--sub)}.hub .section-lead.dark{color:#c8c0b0}.hub .hero{background:linear-gradient(135deg,#1a1a1af0 0%,#2c2c2cf0 100%),radial-gradient(circle at 75%,#b8875a2e 0%,#0000 55%);justify-content:center;align-items:center;gap:64px;min-height:100vh;padding:160px 48px 100px;display:flex}.hub .hero-text{text-align:left;flex:1;max-width:560px}.hub .hero-image{aspect-ratio:3/4;background:url(/images/hana.jpg) 50%/cover no-repeat;flex:0 0 320px;max-height:540px;box-shadow:0 0 80px #b8875a40,0 0 160px #b8875a1f}.hub .hero h1{color:var(--kinari);letter-spacing:.08em;margin-bottom:28px;font-size:32px;font-weight:500;line-height:1.7}.hub .hero h1 .accent{color:var(--kondou)}.hub .hero .subline{color:#e5e0d8;letter-spacing:.08em;margin-bottom:36px;font-size:14px;line-height:2}.hub .hero .roles{flex-wrap:wrap;gap:16px;margin-bottom:36px;display:flex}.hub .hero .role-chip{border:1px solid var(--kondou);color:var(--kondou);letter-spacing:.15em;padding:6px 14px;font-size:12px}.hub .hero .cta-hero{background:var(--kakiiro);color:var(--kinari);letter-spacing:.15em;padding:16px 44px;font-size:15px;text-decoration:none;transition:opacity .2s;display:inline-block}.hub .hero .cta-hero:hover{opacity:.85}.hub .about{background:var(--kinari)}.hub .about .about-body{color:#333;letter-spacing:.04em;max-width:720px;margin:0 auto;font-size:15px;line-height:2.1}.hub .about .about-body p{margin-bottom:22px}.hub .about .about-body .highlight{color:var(--kondou);font-weight:700}.hub .work{background:var(--sumihai)}.hub .work-hero{background:var(--fukasumi);border:1px solid var(--kondou);grid-template-columns:1.1fr 1fr;gap:0;max-width:1040px;margin:0 auto 36px;display:grid;overflow:hidden}.hub .work-hero .work-hero-image{background:url(/images/egao.jpg) 50% 60%/cover no-repeat;min-height:380px;position:relative}.hub .work-hero .work-hero-image:after{content:"";background:linear-gradient(90deg,#0000 60%,#1a1a1ab3 100%);position:absolute;inset:0}.hub .work-hero .work-hero-text{color:var(--kinari);flex-direction:column;justify-content:center;padding:48px 44px;display:flex}.hub .work-hero .badge{background:var(--kakiiro);color:var(--kinari);letter-spacing:.2em;align-self:flex-start;margin-bottom:16px;padding:4px 12px;font-size:11px;display:inline-block}.hub .work-hero h3{color:var(--kinari);letter-spacing:.08em;margin-bottom:12px;font-size:24px;font-weight:500;line-height:1.6}.hub .work-hero .sub-h{color:var(--kondou);letter-spacing:.15em;margin-bottom:22px;font-size:13px}.hub .work-hero .body{color:#d8d0c4;letter-spacing:.04em;margin-bottom:22px;font-size:14px;line-height:2}.hub .work-hero .stat-inline{align-items:baseline;gap:8px;margin-bottom:28px;display:flex}.hub .work-hero .stat-inline .num{color:var(--kondou);letter-spacing:.02em;font-size:30px;font-weight:700}.hub .work-hero .stat-inline .label{color:#c8c0b0;letter-spacing:.12em;font-size:12px}.hub .work-hero .more{background:var(--kakiiro);color:var(--kinari);letter-spacing:.15em;align-self:flex-start;padding:14px 32px;font-size:13px;text-decoration:none;transition:opacity .2s}.hub .work-hero .more:hover{opacity:.85}.hub .work-cards{grid-template-columns:repeat(3,1fr);gap:20px;max-width:1040px;margin:0 auto;display:grid}.hub .work-card{background:var(--fukasumi);text-align:left;border:1px solid #3a3a3a;flex-direction:column;padding:32px 28px;transition:border-color .3s,transform .3s;display:flex}.hub .work-card:hover{border-color:var(--kondou);transform:translateY(-2px)}.hub .work-card .icon{color:var(--kondou);letter-spacing:.1em;margin-bottom:12px;font-size:22px;font-weight:700}.hub .work-card h4{color:var(--kinari);letter-spacing:.06em;margin-bottom:6px;font-size:17px;font-weight:500;line-height:1.6}.hub .work-card .sub-h{color:var(--kondou);letter-spacing:.15em;margin-bottom:18px;font-size:11px}.hub .work-card .body{color:#c8c0b0;letter-spacing:.03em;flex:1;margin-bottom:20px;font-size:13px;line-height:1.95}.hub .work-card .more{color:var(--kondou);letter-spacing:.15em;border-bottom:1px solid #0000;align-self:flex-start;padding-bottom:2px;font-size:12px;text-decoration:none;transition:border-color .2s}.hub .work-card .more:hover{border-bottom-color:var(--kondou)}.hub .gallery{background:var(--kinari);text-align:center}.hub .gallery-grid{flex-wrap:wrap;justify-content:center;gap:24px;max-width:880px;margin:0 auto;display:flex}.hub .gallery-item-wrap{flex-direction:column;flex:0 0 calc(33.333% - 16px);max-width:240px;display:flex}.hub .gallery-item{aspect-ratio:3/4;cursor:pointer;background-color:#fff;background-position:50%;background-repeat:no-repeat;background-size:cover;transition:transform .3s,box-shadow .3s;box-shadow:0 0 30px #b8875a26,0 4px 16px #00000014}.hub .gallery-item.contain{background-color:#fafaf7;background-size:contain;padding:0}.hub .gallery-item:hover{transform:translateY(-4px);box-shadow:0 0 40px #b8875a40,0 8px 24px #0000001f}.hub .gallery-caption{text-align:center;color:var(--sub);letter-spacing:.12em;margin-top:12px;font-size:13px;font-weight:500}.hub .gallery-cat{text-align:center;color:var(--kondou);letter-spacing:.2em;margin-top:4px;font-size:10px}.hub .gallery-item.placeholder{border:1px dashed var(--kondou);box-shadow:none;text-align:center;background:#b8875a0f;flex-direction:column;justify-content:center;align-items:center;padding:16px;display:flex}.hub .gallery-item.placeholder:hover{box-shadow:none;background:#b8875a1a;transform:none}.hub .gallery-item.placeholder .ph-icon{color:var(--kondou);letter-spacing:.1em;margin-bottom:8px;font-size:24px;font-weight:700}.hub .gallery-item.placeholder .ph-text{color:var(--mute);letter-spacing:.12em;font-size:11px;line-height:1.8}.hub .gallery-more{text-align:center;border-top:1px solid var(--line);max-width:880px;margin:64px auto 0;padding-top:40px}.hub .gallery-more-btn{border:1px solid var(--kondou);color:var(--fukasumi);letter-spacing:.2em;background:0 0;padding:14px 40px;font-size:13px;text-decoration:none;transition:background .25s,color .25s;display:inline-block}.hub .gallery-more-btn:hover{background:var(--kondou);color:var(--kinari)}.hub .gallery-more-btn .arrow{margin-left:10px;transition:transform .25s;display:inline-block}.hub .gallery-more-btn:hover .arrow{transform:translate(4px)}.hub .gallery-more-note{color:var(--sub);letter-spacing:.05em;margin-top:18px;font-size:12px}.hub .voice{background:var(--sumihai);text-align:center}.hub .quotes{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;max-width:880px;margin:0 auto;display:grid}.hub .quote-card{background:var(--fukasumi);text-align:left;border-left:3px solid var(--kondou);flex-direction:column;justify-content:space-between;min-height:180px;padding:28px;display:flex}.hub .quote-card p{color:var(--kinari);letter-spacing:.03em;font-size:14px;line-height:1.95}.hub .quote-card .who{color:var(--kondou);letter-spacing:.12em;margin-top:14px;font-size:12px}.hub .quote-card.placeholder{text-align:center;background:#1a1a1a99;border-left-color:#555;justify-content:center;align-items:center}.hub .quote-card.placeholder p{color:#888}.hub .quote-card.with-image{border-left-width:3px;flex-direction:column;padding:0;display:flex;overflow:hidden}.hub .quote-card.with-image .quote-image{aspect-ratio:4/3;background-color:#fafaf7;background-position:50%;background-repeat:no-repeat;background-size:contain;flex-shrink:0;width:100%}.hub .quote-card.with-image .quote-content{flex-direction:column;flex:1;justify-content:space-between;padding:24px 28px;display:flex}.hub .profile{background:var(--kinari)}.hub .profile-flex{flex-wrap:wrap;align-items:flex-start;gap:56px;max-width:920px;margin:0 auto;display:flex}.hub .profile-photo{aspect-ratio:3/4;background:url(/images/profile.jpg) 50%/cover no-repeat;flex:0 0 240px;box-shadow:0 0 60px #b8875a40,0 0 120px #b8875a1f}.hub .profile-text{flex:1;min-width:280px}.hub .profile-text .label{color:var(--kondou);letter-spacing:.2em;margin-bottom:8px;font-size:12px}.hub .profile-text .name{color:var(--fukasumi);letter-spacing:.1em;margin-bottom:6px;font-size:28px;font-weight:500}.hub .profile-text .name-sub{color:var(--kondou);letter-spacing:.1em;margin-bottom:28px;font-size:14px}.hub .profile-text p{color:#333;letter-spacing:.04em;margin-bottom:16px;font-size:14px;line-height:2}.hub .profile-text ul{border-top:1px solid var(--line);margin-top:24px;padding-top:24px;list-style:none}.hub .profile-text ul li{color:var(--sub);letter-spacing:.05em;padding:6px 0;font-size:13px}.hub .profile-text ul li:before{content:"— ";color:var(--kondou)}.hub .key-stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;margin:8px 0 28px;padding:18px 24px}.hub .key-stats p{color:var(--fukasumi);letter-spacing:.12em;margin-bottom:0;font-size:16px;font-weight:500;line-height:1.9}.hub .profile-lead{margin-bottom:32px}.hub .career-block{margin-top:28px}.hub .career-block h4{color:var(--fukasumi);letter-spacing:.15em;border-bottom:1px solid var(--line);margin-bottom:10px;padding-bottom:6px;font-size:14px;font-weight:500}.hub .career-block ul{border-top:none;margin-top:0;padding-top:0}.hub .career-block ul li{color:var(--sub);padding:4px 0;font-size:13px}.hub .contact{background:var(--fukasumi);text-align:center}.hub .contact .contact-inner{max-width:600px;margin:0 auto}.hub .contact-cta{background:var(--kakiiro);color:var(--kinari);letter-spacing:.15em;margin:8px 0 4px;padding:18px 56px;font-size:15px;text-decoration:none;transition:opacity .2s;display:inline-block}.hub .contact-cta:hover{opacity:.85}.hub .contact .reply{color:var(--kondou);letter-spacing:.15em;margin-bottom:24px;font-size:13px}.hub .contact .alt{color:var(--mute);letter-spacing:.05em;margin-top:28px;font-size:13px}.hub .contact .alt .mail{color:var(--kondou);letter-spacing:.1em;margin-top:12px;font-size:14px;display:block}.hub .contact .alt .mail-fallback{border:1px solid var(--kondou);color:var(--kondou);letter-spacing:.12em;margin-top:8px;padding:8px 20px;font-size:13px;text-decoration:none;transition:background .2s,color .2s;display:inline-block}.hub .contact .alt .mail-fallback:hover{background:var(--kondou);color:var(--kinari)}.hub .contact .placeholder-note{color:#888;letter-spacing:.1em;border:1px dashed #555;margin-top:20px;padding:12px 16px;font-size:11px}.hub .site-footer{background:var(--fukasumi);text-align:center;border-top:1px solid #2c2c2c;padding:40px 32px}.hub .site-footer .footer-logo{color:var(--kinari);letter-spacing:.2em;margin-bottom:8px;font-size:15px}.hub .site-footer .footer-sub{color:var(--kondou);letter-spacing:.2em;margin-bottom:20px;font-size:11px}.hub .site-footer p{color:#666;letter-spacing:.1em;font-size:11px}@media (max-width:720px){.hub section{padding:72px 20px}.hub .site-header{padding:12px 16px}.hub .header-inner{gap:8px}.hub .nav{gap:0}.hub .nav-item{display:none}.hub .cta-button{margin-left:0;padding:8px 14px;font-size:11px}.hub .logo-text{font-size:14px}.hub .logo-text .sub{font-size:9px}.hub .logo-circle{width:38px;height:38px;font-size:12px}.hub .hero{flex-direction:column-reverse;gap:32px;min-height:auto;padding:120px 20px 72px}.hub .hero-text{text-align:center}.hub .hero-image{flex:none;width:220px;max-height:300px;margin:0 auto}.hub .hero h1{font-size:22px;line-height:1.7}.hub .hero .roles{justify-content:center}.hub .hero .cta-hero{padding:14px 32px;font-size:14px}.hub .section-h2{font-size:22px}.hub .work-hero{grid-template-columns:1fr}.hub .work-hero .work-hero-image{min-height:200px}.hub .work-hero .work-hero-image:after{background:linear-gradient(#0000 50%,#1a1a1ab3 100%)}.hub .work-hero .work-hero-text{padding:32px 24px}.hub .work-hero h3{font-size:20px}.hub .work-cards{grid-template-columns:1fr;gap:16px}.hub .gallery-grid{gap:16px}.hub .gallery-item-wrap{flex:0 0 calc(50% - 8px);max-width:none}.hub .profile-flex{gap:24px}.hub .profile-photo{flex:0 0 100%;max-width:240px;margin:0 auto}.hub .profile-text .name{font-size:24px}}
