:root{--bg:#f6f5f7;--ink:#111;--body:#6b6b70;--muted:#9a9aa0;--point:#6c2bff;--lav:#ede4fb;--lav-soft:#d9c8f5;--line:#e2e1e5;--empty:#e4e4e6;--soft:#edebef;--card:#fff;--tint:#f3eeff;--off:#c4c2c6;--on-point:#fff;--t-hero:64px;--t-title:44px;--t-title2:40px;--t-email:28px;--t-sect:18px;--t-lead:20px;--t-body:15px;--t-small:13px;--t-cap:12px;--t-label:11px;--max:1200px;--pad-x:40px;--block:120px;--read:62ch;--r-card:12px;--sh-card:0 8px 32px #1111110f;--sh-card-hover:0 10px 36px #11111114;--dur:.15s;--font:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", system-ui, sans-serif}*{box-sizing:border-box}.nm{margin:0}html,body{background:var(--bg);color:var(--ink);font-family:var(--font);font-size:var(--t-body);word-break:keep-all;-webkit-font-smoothing:antialiased;margin:0;padding:0;font-weight:400;line-height:1.75;overflow-x:clip}img,figure,section,div{border-radius:0}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,[tabindex]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--point);outline-offset:4px}.wrap{max-width:var(--max);padding:0 var(--pad-x);margin:0 auto}.stack{padding-top:var(--block);padding-bottom:var(--block)}main{position:relative;overflow-x:clip}.blob{pointer-events:none;z-index:0;background:radial-gradient(circle, var(--lav) 0%, #ede4fb00 70%);border-radius:50%;position:absolute}.blob.tr{width:35vw;max-width:560px;height:35vw;max-height:560px;top:-8vw;right:-8vw}.blob.bl{width:26vw;max-width:400px;height:26vw;max-height:400px;bottom:12vw;left:-10vw}.above{z-index:1;position:relative}.label{font-size:var(--t-label);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:500}.label.pt{color:var(--point)}.title{font-size:var(--t-title);letter-spacing:-.02em;white-space:pre-line;margin:0;font-weight:700;line-height:1.25}.title.t2{font-size:var(--t-title2)}.title.hero{font-size:var(--t-hero);letter-spacing:-.03em;font-weight:500;line-height:1.18}.lead{font-size:var(--t-lead);font-weight:400;line-height:1.6}.small{font-size:var(--t-small);color:var(--body)}.cap{font-size:var(--t-cap);color:var(--muted)}.muted{color:var(--muted)}.bodytext{color:var(--body)}mark{background:var(--point);color:var(--on-point);font-weight:inherit;border-radius:2px;padding:0 4px}.ul{background-image:linear-gradient(var(--ink), var(--ink));transition:background-size var(--dur) ease;background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;display:inline;position:relative}a:hover .ul,a:focus-visible .ul{background-size:100% 1px}a:active{opacity:.6}a.label{transition:color var(--dur) ease, letter-spacing var(--dur) ease}a.label:hover,a.label:focus-visible{color:var(--ink);letter-spacing:.18em}.arw{transition:transform var(--dur) ease;display:inline-block}a:hover .arw,.row-link:hover .arw{transform:translate(4px)}.arw.up{transition:transform var(--dur) ease}a:hover .arw.up{transform:translate(3px,-3px)}.head{max-width:var(--max);padding:28px var(--pad-x);z-index:2;justify-content:space-between;align-items:center;margin:0 auto;display:flex;position:relative}.head nav{align-items:baseline;gap:32px;display:flex}.head .logo{display:block}.head .logo img{width:auto;height:26px;display:block}.head .here{color:var(--ink);pointer-events:none;border-bottom:2px solid var(--point);padding-bottom:4px}.foot{max-width:var(--max);padding:96px var(--pad-x) 40px;border-top:1px solid var(--line);z-index:1;grid-template-columns:1fr 1fr 1fr;align-items:start;gap:40px;margin:0 auto;display:grid;position:relative}.foot ul{margin:0;padding:0;list-style:none}.foot li{font-size:var(--t-cap);color:var(--muted);line-height:2}.foot li a:hover,.foot li a:focus-visible{color:var(--ink)}.foot .who{text-align:right;font-size:var(--t-cap);color:var(--muted);line-height:2}.foot .sign{color:var(--muted);letter-spacing:.1em;grid-column:1/-1;padding-top:40px;font-size:10px}.home{padding-top:80px}.home .role{margin-top:16px}.home .concept{font-size:var(--t-lead);color:var(--body);white-space:pre-line;margin:32px 0 0;line-height:1.7}.home .go{font-size:var(--t-small);gap:40px;margin-top:44px;display:flex}.rail{font-size:var(--t-cap);color:var(--body);border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px 20px;margin:72px 0 0;padding:18px 0;display:flex}.rail span{white-space:nowrap}.flow{margin:56px 0 0}.flow .track{gap:12px;display:grid}.flow .heads{display:grid}.flow .fp{font-size:var(--t-label);color:var(--muted);letter-spacing:.06em}.flow .line{background:var(--line);height:1px;margin:12px 0 20px;position:relative}.flow .line span{background:var(--ink);border-radius:50%;width:8px;height:8px;position:absolute;top:-3.5px;transform:translate(-4px)}.flow .cells{align-items:start;gap:12px;display:grid}.flow .cells .fp{display:none}.flow .nm{font-size:var(--t-small);border-bottom:1px solid var(--ink);margin-bottom:8px;padding-bottom:8px;font-weight:700}.flow .ds{font-size:var(--t-cap);color:var(--body);white-space:pre-line;line-height:1.7}.about{grid-template-columns:.85fr 1fr;gap:64px;display:grid}.about .vline{border-left:1px solid var(--line);padding-left:64px}.about .photo{aspect-ratio:3/4;border:1px solid var(--line);object-fit:cover;width:100%;max-width:320px;margin:40px 0}.kv{grid-template-columns:auto 1fr;align-items:baseline;gap:14px 20px;display:grid}.kv dt{font-size:var(--t-label);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:500}.kv dd{font-size:var(--t-small);border-bottom:1px solid var(--line);transition:border-color var(--dur) ease;margin:0;padding-bottom:4px}.kv dd a:hover{border-color:var(--point)}.kv a:hover{color:var(--ink)}.sect{font-size:var(--t-sect);letter-spacing:-.01em;border-bottom:1px solid var(--ink);margin:64px 0 20px;padding-bottom:10px;font-weight:700}.sect:first-child{margin-top:0}.quote{font-size:var(--t-body);color:var(--body);margin:48px 0 0;line-height:1.9}.quote .qm{color:var(--lav-soft);margin-bottom:2px;font-size:44px;line-height:.4;display:block}.quote .qm.r{text-align:right;margin:6px 0 0}.hist{gap:24px;display:grid}.hist .r{grid-template-columns:150px 1fr;gap:20px;display:grid}.hist .p{font-size:var(--t-label);color:var(--muted);letter-spacing:.06em;padding-top:3px}.hist .n{font-size:var(--t-small);font-weight:700}.hist .d{font-size:var(--t-cap);color:var(--body);white-space:pre-line;margin-top:8px;line-height:1.9}.skills{margin:0;padding:0;list-style:none}.skills li{font-size:var(--t-small);border-bottom:1px solid var(--line);padding:12px 0}.skills li:last-child{border-bottom:0}.cards{grid-template-columns:repeat(3,1fr);gap:24px;margin-top:56px;display:grid}.wcard{border:1px solid var(--line);background:var(--bg);transition:border-color var(--dur) ease;display:block}.wcard:hover,.wcard:focus-visible{border-color:var(--point)}.wcard .im{aspect-ratio:16/10;background:var(--empty);border-bottom:1px solid var(--line);justify-content:center;align-items:center;padding:20px;display:flex}.wcard .im img{object-fit:cover;width:100%;height:100%}.wcard .im .nolabel{font-size:var(--t-lead);text-align:center;color:var(--ink);font-weight:700;line-height:1.3}.wcard .ct{padding:16px 18px 18px}.wcard .og{font-size:var(--t-label);letter-spacing:.06em;color:var(--muted);margin-bottom:5px}.wcard .nm{font-size:var(--t-small);font-weight:500}.wcard .mt{font-size:var(--t-label);color:var(--muted);letter-spacing:.06em;justify-content:space-between;align-items:baseline;margin-top:6px;display:flex}.rows{margin-top:20px;display:grid}.row-link{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:20px;padding:18px 0;display:grid}.row-link:hover .ul,.row-link:focus-visible .ul{background-size:100% 1px}.row-link .aw{color:var(--muted);font-size:var(--t-small)}.row-link .og{color:var(--muted)}.arow{border-bottom:1px solid var(--line);grid-template-columns:96px 1fr auto;align-items:center;gap:24px;padding:22px 0;display:grid}.arow .th{aspect-ratio:1;background:var(--empty);border:1px solid var(--line);width:96px;transition:border-color var(--dur) ease}.arow:hover .th{border-color:var(--point)}.arow .th img{object-fit:cover;width:100%;height:100%}.arow .ti{font-size:var(--t-body);margin-top:6px;font-weight:500}.arow .sm{font-size:var(--t-cap);color:var(--body);margin-top:4px}.hubs{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:24px;display:grid}.hub{flex-direction:column;height:100%;display:flex}.hub .nm{font-size:var(--t-small);margin-top:8px;font-weight:700}.hub .ds{font-size:var(--t-cap);color:var(--body);flex:1 0 auto;margin-top:4px;line-height:1.6}.hub .im{aspect-ratio:4/3;background:var(--empty);border:1px solid var(--line);transition:border-color var(--dur) ease;justify-content:center;align-items:center;margin-top:12px;display:flex}.hub .im .soon,.wcard .im .soon{font-size:var(--t-label);letter-spacing:.14em;color:var(--muted);text-transform:uppercase}.hub .im img{object-fit:cover;width:100%;height:100%}.hub .bar{background:var(--point);height:2px;margin-top:10px}.hub:hover .im{border-color:var(--point)}.hub.dim{pointer-events:none}.hub.dim .nm,.hub.dim .ds{color:var(--off)}.hub.dim .bar{background:var(--line)}.one{grid-template-columns:.8fr 1fr;align-items:start;gap:64px;display:grid}.one .lead-sum{white-space:pre-line;line-height:1.9}.facts dd{white-space:pre-line}.tick{background:var(--point);width:28px;height:2px;margin:28px 0}.facts{display:grid}.facts .r{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:24px;padding:16px 0;display:flex}.facts dt{font-size:var(--t-label);letter-spacing:.1em;text-transform:uppercase;font-weight:700}.facts dd{font-size:var(--t-cap);color:var(--body);text-align:right;margin:0}.rcard{background:var(--card);border-radius:var(--r-card);box-shadow:var(--sh-card);overflow:hidden}.rcard.big{aspect-ratio:16/9;margin-bottom:20px}.shots{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.shots .rcard{aspect-ratio:4/3;transition:box-shadow var(--dur) ease}.shots .rcard:hover{box-shadow:var(--sh-card-hover)}.rcard img{object-fit:cover;width:100%;height:100%}.mail{flex-wrap:wrap;align-items:center;gap:20px;margin:12px 0 6px;display:flex}.mail .ad{font-size:var(--t-email);letter-spacing:-.01em}.circ{border:1px solid var(--point);width:44px;height:44px;color:var(--point);transition:background var(--dur) ease, color var(--dur) ease;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}a:hover .circ,a:focus-visible .circ{background:var(--point);color:var(--on-point)}.sns{margin:20px 0 0;padding:0;list-style:none}.sns li a{font-size:var(--t-body);border-bottom:1px solid var(--line);transition:border-color var(--dur) ease;justify-content:space-between;align-items:center;padding:14px 0;display:flex}.sns li a:hover{border-color:var(--point)}.sns .aw{color:var(--muted);font-size:var(--t-small)}.box{background:var(--soft);padding:24px 28px}.box .l1{font-size:var(--t-small)}.box .l2{font-size:var(--t-cap);color:var(--body);margin-top:6px}.two{grid-template-columns:1fr 1fr;gap:64px;display:grid}table.plain{border-collapse:collapse;width:100%}table.plain td{vertical-align:top;border-bottom:1px solid var(--line);font-size:var(--t-small);padding:14px 0}table.plain td:first-child{width:40%;color:var(--ink);padding-right:32px}table.plain td:last-child{color:var(--body)}.asks{margin:16px 0 0;padding:0;list-style:none}.asks li{font-size:var(--t-small);padding:8px 0 8px 16px;position:relative}.asks li:before{content:"·";color:var(--point);position:absolute;left:4px}.read{max-width:var(--read)}.read h2{font-size:var(--t-lead);margin:48px 0 12px;font-weight:700}.read p{margin:0 0 20px;line-height:1.85}.read a{border-bottom:1px solid var(--ink);transition:border-color var(--dur) ease}.read a:hover{border-color:var(--point)}.read img{border:1px solid var(--line);margin:28px 0}.read pre,.read table{max-width:100%;display:block;overflow-x:auto}.refs{font-size:var(--t-label);color:var(--muted)}.refs ol{margin:8px 0 0;padding-left:18px}.btn{font-size:var(--t-cap);border:1px solid var(--line);color:var(--ink);cursor:pointer;font-family:var(--font);transition:border-color var(--dur) ease;background:0 0;padding:8px 14px}.btn:hover{border-color:var(--point)}.btn:disabled{color:var(--off);border-color:var(--line);cursor:default}@media (max-width:720px){:root{--t-hero:34px;--t-title:28px;--t-title2:26px;--t-email:18px;--t-lead:17px;--pad-x:20px;--block:72px}.head{padding:20px var(--pad-x)}.home{padding-top:56px}.head nav{gap:12px}.head nav .label{letter-spacing:.06em;font-size:9.5px}.head .logo img{height:22px}.blob.tr{width:60vw;height:60vw;top:-14vw;right:-20vw}.blob.bl{display:none}.foot{grid-template-columns:1fr;gap:24px}.foot .who{text-align:left}.home .go{flex-direction:column;gap:12px}.rail{gap:8px 14px;margin-top:48px;padding:14px 0}.flow .heads,.flow .cells{gap:20px;grid-template-columns:1fr!important}.flow .line,.flow .heads .fp{display:none}.flow .cells>div{border-left:1px solid var(--line);padding-left:20px;position:relative}.flow .cells>div:before{content:"";background:var(--ink);border-radius:50%;width:8px;height:8px;position:absolute;top:6px;left:-4.5px}.flow .cells .fp{margin-bottom:6px;display:block}.about,.one,.two{grid-template-columns:1fr;gap:40px}.about .vline{border-left:0;border-top:1px solid var(--line);padding-top:40px;padding-left:0}.about .photo{max-width:60%}.sect{margin-top:40px}.hist .r{grid-template-columns:1fr;gap:4px}.cards{grid-template-columns:1fr;gap:20px}.one .shotcol{order:-1}.shots{grid-template-columns:repeat(3,1fr);gap:8px}.facts .r{flex-direction:column;gap:4px}.facts dd{text-align:left}.hubs{scroll-snap-type:x mandatory;grid-template-columns:repeat(3,minmax(200px,1fr));padding-bottom:8px;overflow-x:auto}.hub{scroll-snap-align:start}.arow{grid-template-columns:56px 1fr auto;gap:14px}.arow .th{width:56px}.sns li a{padding:16px 0}.mail .ad{word-break:break-all}table.plain,table.plain tbody,table.plain tr,table.plain td{width:100%;display:block}table.plain td{border-bottom:none;padding:4px 0}table.plain tr{border-bottom:1px solid var(--line);padding:14px 0;display:block}table.plain td:first-child{width:100%;padding-right:0;font-weight:700}}
