:root{--ink:#343a3d;--paper:#fff;--muted:#7b8188;--line:#eceef1;--mint:#e2f1e9;--lavender:#eee8f8;--pink:#f8e6ec}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible,[tabindex="0"]:focus-visible{outline:3px solid #a398c9;outline-offset:5px}[hidden]{display:none!important}.page{max-width:1056px;margin:auto;padding:0 44px}header{height:144px;display:flex;align-items:center}.brand{display:flex;align-items:center;gap:15px}.brand h1{font-size:22px;font-weight:600;letter-spacing:.06em;margin:0}.tabs{display:flex;gap:8px;padding:6px;background:#f6f7fa;border-radius:21px;width:fit-content;max-width:100%;margin:0 0 43px}.tabs button{border:0;background:transparent;color:#7b8188;padding:12px 27px;border-radius:16px;cursor:pointer;font-size:13px;white-space:nowrap;transition:background .15s,color .15s}.tabs button:hover{background:#edf0f5}.tabs button[aria-selected="true"]{background:var(--lavender);color:#5a5071}.panel{min-height:470px}.section-heading{display:flex;align-items:center;margin-bottom:25px}.section-heading h2{font-size:19px;font-weight:600;letter-spacing:.04em;margin:0}.count{font-size:10px;color:#969aa4;vertical-align:top;display:inline-block;margin:3px 0 0 12px;letter-spacing:0}.app-grid,.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.card{display:block;min-width:0}.mint{background:var(--mint)}.lavender{background:var(--lavender)}.pink{background:var(--pink)}.card-details{padding:20px 2px 24px}.tag{font-size:10px;color:#7d8590;border:1px solid #e5e7ec;border-radius:20px;padding:4px 10px;display:inline-block}.card h3{font-size:17px;font-weight:500;margin:14px 0 9px;display:flex;justify-content:space-between}.card p{font-size:12px;color:var(--muted);line-height:1.9;margin:0}.card[href] .card[href]:hover .profile{display:flex;align-items:center;gap:24px;padding:30px;background:#f8f7fc;border-radius:25px}.profile h3{font-size:19px;font-weight:500;margin:0}.profile p{white-space:pre-line;font-size:13px;line-height:1.9;color:var(--muted);margin:12px 0 0}.profile p:empty{display:none}.contact-list{display:grid;gap:12px}.contact-item{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 26px;border:1px solid var(--line);border-radius:19px;font-size:14px}.contact-item:hover{background:#f9f7fd}.empty{padding:27px;border-radius:20px;background:#f7f8fb;color:var(--muted);font-size:13px}footer{border-top:1px solid var(--line);padding:26px 0 32px;margin-top:50px;color:#9197a0;font-size:10px}@media(max-width:650px){.page{padding:0 22px}header{height:115px}.brand h1{font-size:20px}.tabs{width:100%;gap:3px;border-radius:18px;margin-bottom:34px}.tabs button{flex:1;padding:12px 5px;font-size:12px;border-radius:13px}.app-grid,.work-grid{grid-template-columns:1fr;gap:18px}.panel{min-height:440px}.profile{padding:25px 20px;gap:18px}.profile h3{font-size:17px}footer{margin-top:35px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.card{border-radius:22px;padding:25px 26px}.card-details{padding:0}.card h3{margin-top:16px}.tag{background:#ffffff80;border-color:#ffffff80}.card[href]{transition:filter .15s}.card[href]:hover{filter:brightness(.98)}

.contact-item{justify-content:flex-start;flex-wrap:wrap;column-gap:28px;row-gap:8px}.contact-text{color:var(--muted);overflow-wrap:anywhere;min-width:0}

.sns-heading{font-size:16px;font-weight:500;margin:34px 0 18px}
