:root{--ink:#120d1d;--purple:#8b5cf6;--violet:#b56cff;--lav:#ede7ff;--line:#d9d4df;--paper:#f8f7f4}.portfolio{background:var(--paper);color:var(--ink);font-feature-settings:"palt";letter-spacing:.035em;font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif}.portfolio *{box-sizing:border-box}.portfolio a{color:inherit;text-decoration:none}.pf-header{border-bottom:1px solid var(--line);z-index:5;justify-content:space-between;align-items:center;height:92px;padding:0 clamp(24px,5vw,72px);display:flex;position:relative}.pf-brand{letter-spacing:-.05em;font-size:24px;font-weight:800}.pf-brand i{color:var(--violet);font-style:normal}.pf-header nav{letter-spacing:.13em;gap:32px;font:700 10px/1 Arial,sans-serif;display:flex}.pf-hero{flex-direction:column;min-height:calc(100vh - 92px);padding:clamp(60px,9vw,130px) clamp(24px,6vw,92px) 44px;display:flex;position:relative;overflow:hidden}.pf-hero:after{content:"";filter:blur(1px);background:radial-gradient(circle at 35% 35%,#fff 0 5%,#d8b4fe 28%,#8b5cf6 60%,#120d1d 100%);border-radius:50%;width:44vw;height:44vw;position:absolute;top:5vw;right:-8vw;box-shadow:0 30px 90px #8b5cf62e}.pf-index{letter-spacing:.18em;font:700 10px/1 Arial,sans-serif}.pf-hero h1{letter-spacing:-.075em;z-index:1;max-width:1050px;margin:9vh 0 7vh;font-size:clamp(52px,8.2vw,122px);line-height:1.06;position:relative}.pf-hero h1 em{color:var(--purple);font-style:normal}.pf-hero-bottom{z-index:1;align-items:flex-end;gap:80px;display:flex;position:relative}.pf-hero-bottom p{margin:0;font-size:clamp(15px,1.4vw,20px);line-height:1.9}.pf-hero-bottom span{letter-spacing:.14em;color:#746d7d;font:700 9px/1.8 Arial,sans-serif}.pf-scroll{border-top:1px solid var(--ink);letter-spacing:.14em;z-index:1;justify-content:space-between;margin-top:auto;padding-top:32px;font:700 11px/1 Arial,sans-serif;display:flex;position:relative}.pf-scroll b{font-size:20px}.pf-works{border-top:1px solid var(--line)}.pf-work{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1.65fr) minmax(320px,.75fr);min-height:720px;display:grid}.pf-work.reverse{grid-template-columns:minmax(320px,.75fr) minmax(0,1.65fr)}.pf-work.reverse .pf-visual{order:2}.pf-work.reverse .pf-copy{order:1}.pf-visual{min-height:620px;position:relative;overflow:hidden}.pf-visual img{object-fit:cover;padding:6%;transition:transform .7s cubic-bezier(.2,.8,.2,1)}.pf-work:hover .pf-visual img{transform:scale(1.025)}.pf-visual.violet{background:#dcd0ff}.pf-visual.lime{background:#dff47a}.pf-visual.paper{background:#e7e1d8}.pf-visual.peach{background:#ffc8ae}.pf-visual.sky{background:#b8e7f2}.pf-interface{background:#fff;border-radius:6px;flex-direction:column;padding:34px;display:flex;position:absolute;inset:9%;box-shadow:0 35px 80px #120d1d29}.ui-top{border-bottom:1px solid #ddd5e5;justify-content:space-between;align-items:center;padding-bottom:24px;display:flex}.ui-top .pf-brand{font-size:18px}.ui-top>span{letter-spacing:.12em;font:700 8px Arial}.ui-title{letter-spacing:-.055em;white-space:pre-line;margin:auto 0;font-size:clamp(26px,3.2vw,48px);font-weight:800;line-height:1.25}.ui-lines{gap:10px;width:62%;display:grid}.ui-lines i{background:#eeeaf2;border-radius:10px;height:9px}.ui-lines i:nth-child(2){width:80%}.ui-lines i:nth-child(3){background:var(--purple);width:55%}.ui-metric{justify-content:space-between;align-items:end;margin-top:40px;display:flex}.ui-metric b{color:var(--purple);font:800 72px/1 Arial}.ui-metric span{letter-spacing:.13em;font:700 8px/1.6 Arial}.pf-copy{flex-direction:column;justify-content:center;padding:clamp(42px,5vw,76px);display:flex}.pf-meta{letter-spacing:.13em;align-items:center;gap:20px;font:700 9px Arial;display:flex}.pf-meta span{border:1px solid var(--ink);border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.pf-copy h2{letter-spacing:-.055em;margin:52px 0 24px;font:700 clamp(34px,4.2vw,62px)/1.05 Arial,sans-serif}.pf-copy h3{letter-spacing:-.035em;margin:0 0 26px;font-size:clamp(21px,2vw,28px);line-height:1.55}.pf-copy>p{color:#67616d;margin:0;font-size:13px;line-height:2.05}.pf-copy ul{flex-wrap:wrap;gap:7px;margin:38px 0 0;padding:0;list-style:none;display:flex}.pf-copy li{letter-spacing:.04em;border:1px solid #cfc8d5;border-radius:999px;padding:8px 11px;font:600 9px Arial}.pf-approach{color:#fff;background:#120d1d;padding:120px clamp(24px,6vw,92px)}.pf-approach>div{grid-template-columns:.7fr 1.3fr;align-items:start;display:grid}.pf-approach>div>span,.pf-capabilities>span{letter-spacing:.16em;color:var(--violet);font:700 10px Arial}.pf-approach h2{letter-spacing:-.065em;margin:0;font-size:clamp(42px,6vw,86px);line-height:1.18}.pf-approach ol{grid-template-columns:repeat(4,1fr);margin:0;padding:90px 0 0;list-style:none;display:grid}.pf-approach li{border-top:1px solid #584c68;border-right:1px solid #332a3d;padding:28px}.pf-approach li b{color:var(--violet);font:700 10px Arial}.pf-approach li h3{margin:60px 0 18px;font:700 26px Arial}.pf-approach li p{color:#b9afc2;font-size:12px;line-height:1.8}.pf-capabilities{padding:120px clamp(24px,6vw,92px)}.pf-capabilities>span{margin-bottom:50px;display:block}.pf-capabilities>div{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;padding:28px 0;display:flex}.pf-capabilities h2{letter-spacing:-.055em;margin:0;font-size:clamp(28px,4vw,58px)}.pf-capabilities p{letter-spacing:.08em;color:#746d7d;font:600 11px Arial}.pf-contact{text-align:center;background:var(--lav);padding:140px 24px}.pf-contact>p{letter-spacing:.17em;color:var(--purple);font:700 10px Arial}.pf-contact h2{letter-spacing:-.065em;margin:30px 0 50px;font-size:clamp(46px,6vw,88px);line-height:1.25}.pf-contact a{border-bottom:2px solid var(--ink);align-items:center;gap:60px;padding:18px 0;font-weight:750;display:inline-flex}.portfolio footer{background:var(--paper);border-top:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:36px;padding:42px clamp(24px,6vw,92px);display:grid}.portfolio footer span:not(.pf-brand),.portfolio footer small{color:#746d7d;font-size:10px}@media (max-width:800px){.pf-header nav{display:none}.pf-hero{min-height:780px}.pf-hero:after{opacity:.75;width:80vw;height:80vw;top:34vw;right:-35vw}.pf-hero-bottom{display:block}.pf-hero-bottom span{display:none}.pf-work,.pf-work.reverse{grid-template-columns:1fr}.pf-work.reverse .pf-visual{order:1}.pf-work.reverse .pf-copy{order:2}.pf-visual{min-height:440px}.pf-copy{padding:50px 24px 70px}.pf-copy h2{margin-top:38px}.pf-approach>div{grid-template-columns:1fr;gap:35px}.pf-approach ol{grid-template-columns:1fr;padding-top:60px}.pf-approach li{border-right:0}.pf-capabilities>div{display:block}.pf-capabilities p{margin-top:10px}.portfolio footer{grid-template-columns:1fr}.ui-metric b{font-size:48px}}.pf-brand{white-space:nowrap;letter-spacing:-.045em;font-feature-settings:normal;align-items:baseline;font-family:Arial,Helvetica,sans-serif;line-height:1;display:inline-flex}.pf-brand i{font:inherit;line-height:inherit;letter-spacing:inherit;display:inline}.ui-top .pf-brand{flex:none;min-width:max-content}.pf-brand{object-fit:contain;object-position:left center;flex:none;width:133px;height:42px;display:block}.ui-top .pf-brand{width:112px;min-width:112px;height:35px}.pf-brand{object-fit:contain!important;object-position:left center!important;background:0 0!important;width:136px!important;height:auto!important;padding:0!important}.ui-top .pf-brand{opacity:1!important;visibility:visible!important;width:118px!important;min-width:118px!important;height:auto!important;display:block!important}.pf-work:hover .ui-top .pf-brand{transform:none!important}
