:root{--ink:#272727;--sub:#929292;--line:#e9e9e9;--rose:#da5777;font-family:Arial,"Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--ink);background:#fff;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff}button,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid var(--rose);outline-offset:3px}button:disabled{opacity:.3;cursor:default}
.site-header{position:sticky;z-index:10;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.header-inner{max-width:1376px;margin:auto;min-height:93px;padding:18px 36px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:inline-flex;flex-direction:column;gap:7px}.brand-name{font-weight:780;font-size:21px;letter-spacing:.075em;line-height:1.1}.brand-thin{font-weight:400}.brand-sub{font-size:10px;color:#aaa;letter-spacing:.22em}.head-actions{display:flex;gap:28px;align-items:center}.header-label{font-size:10px;letter-spacing:.19em;color:#aaa}.language{background:white;border:1px solid #e2e2e2;border-radius:24px;padding:10px 14px;font-size:12px;letter-spacing:.09em;color:#333}.language span{color:#bbb;padding:0 3px}
main{max-width:1376px;padding:0 36px 86px;margin:auto}.hero{padding:77px 0 43px;border-bottom:1px solid var(--line)}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.20em;display:flex;align-items:center;gap:9px}.tiny-dot{width:6px;height:6px;border-radius:50%;background:#dc7d92;display:inline-block}.muted{color:#c6c6c6;margin:0 5px}.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(43px,6.5vw,91px);font-weight:400;line-height:1.04;letter-spacing:-.055em;margin:29px 0}.hero-bottom{display:flex;align-items:end;justify-content:space-between;gap:20px}.hero-bottom p{margin:0;color:#777;font-size:14px;line-height:1.8;max-width:580px}.work-count{color:#888;font-size:11px;letter-spacing:.12em;white-space:nowrap}
.toolbar{padding:31px 0 15px;display:flex;align-items:center;justify-content:space-between;gap:14px}.filter-chips{display:flex;gap:8px;flex-wrap:wrap}.chip{border:1px solid var(--line);background:#fff;color:#606060;border-radius:25px;padding:10px 18px;font-size:12px;letter-spacing:.045em}.chip.active{background:#292929;border-color:#292929;color:white}.sort-zone{display:flex;align-items:center;gap:10px}.sort-zone label{font-size:10px;letter-spacing:.13em;color:#999}.sort-zone select{background:#fff;border:1px solid var(--line);padding:10px 12px;border-radius:6px;font-size:12px;min-width:122px;color:#444}.character-filters{display:flex;flex-wrap:wrap;align-items:center;gap:13px;margin:0 0 27px}.character-btn{border:0;background:none;padding:5px 1px;color:#999;font-size:12px}.character-btn.active{font-weight:700;color:#222;text-decoration:underline;text-decoration-color:#db728a;text-underline-offset:6px}
.gallery{columns:4 230px;column-gap:19px}.tile{width:100%;break-inside:avoid;display:inline-block;margin:0 0 25px}.artwork-button{border:none;padding:0;display:block;width:100%;position:relative;aspect-ratio:var(--aspect);background:#f5f5f5;overflow:hidden;border-radius:3px}.artwork-button img{width:100%;height:100%;object-fit:contain;display:block}.artwork-button:hover .mock-image{transform:scale(1.025)}.mock-image{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;transition:transform .35s}.mock-image::before{content:"";width:125%;height:70%;border:1px solid rgba(95,95,95,.13);border-radius:50%;position:absolute;transform:rotate(-28deg)}.mock-image::after{content:"";width:46%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(95,95,95,.13);position:absolute;top:17%;right:-14%}.mock-tag{font-size:10px;letter-spacing:.17em;color:#777;opacity:.8;z-index:1;margin-bottom:15px}.mock-mark{font-family:Georgia,serif;font-size:clamp(30px,4vw,61px);font-weight:400;opacity:.25;z-index:1}.mock-label{font-size:10px;letter-spacing:.22em;position:absolute;bottom:21px;color:#777;z-index:1}.artwork-button:hover{box-shadow:0 12px 32px rgba(0,0,0,.07)}.tile-caption{margin-top:11px;display:flex;align-items:center;justify-content:space-between;gap:6px}.tile-name{min-width:0}.tile-name strong{display:block;font-size:13px;font-weight:700;letter-spacing:.01em}.tile-name small{display:block;margin-top:5px;color:#aaa;font-size:10px;letter-spacing:.085em}.like-button{display:inline-flex;gap:6px;align-items:center;justify-content:center;padding:6px 3px;background:none;border:0;color:#8e8e8e;font-size:12px;min-width:41px}.like-button.liked{color:var(--rose)}.heart-svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.8;fill:none}.liked .heart-svg{fill:currentColor}
.empty-state{padding:70px 10px;text-align:center;color:#aaa}.gallery-end{display:flex;align-items:center;justify-content:center;gap:25px;margin-top:58px}.gallery-end .rule{height:1px;background:var(--line);flex:1}.gallery-end #endnote{font-size:10px;letter-spacing:.21em;color:#aaa;text-align:center}.demo-notice{font-size:11px;line-height:1.7;text-align:center;color:#aaa;margin:27px auto 0}.footer{border-top:1px solid var(--line)}.footer-inner{max-width:1376px;padding:33px 36px;margin:auto;display:flex;gap:20px;align-items:center;justify-content:space-between;color:#aaa;font-size:11px;line-height:1.6}.footer-inner strong{color:#555;letter-spacing:.1em}
.lightbox{display:none;position:fixed;inset:0;z-index:100;background:#fff;flex-direction:column}.lightbox.open{display:flex}.lightbox-top{display:flex;align-items:center;justify-content:space-between;padding:13px 28px;border-bottom:1px solid var(--line);min-height:69px;gap:10px}.light-title{display:flex;flex-direction:column;gap:6px}#lightTitle{font-weight:700;font-size:14px}.light-subtitle{font-size:11px;color:#999}.icon-btn{border:0;background:none;padding:8px 11px;font-size:21px;color:#555}.lightbox-stage{min-height:0;flex:1;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:#fafafa}.lightbox-image-wrap{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:pan-y}.lightbox-image-wrap img{width:auto;height:auto;max-width:87%;max-height:95%;object-fit:contain;cursor:zoom-in;transform-origin:center center;transition:transform .15s ease}.lightbox-image-wrap img.zoomed{transform:scale(2);cursor:zoom-out}.lightbox-image-wrap .mock-image{position:relative;width:min(55%,450px);height:82%;max-height:690px}.arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;background:#ffffffd4;border:1px solid #eee;border-radius:50%;height:42px;width:42px;font-size:30px;line-height:30px;color:#555}.arrow-left{left:21px}.arrow-right{right:21px}.lightbox-bottom{padding:10px 28px;display:flex;align-items:center;justify-content:space-between;min-height:65px;border-top:1px solid var(--line)}.like-large{font-size:13px}.like-large .heart-svg{height:23px;width:23px}.position{font-size:11px;letter-spacing:.12em;color:#aaa}.share-link{border:0;background:none;font-size:12px;text-decoration:underline;text-underline-offset:4px;color:#555}
@media(max-width:1000px){.gallery{columns:3 210px}.header-inner,main,.footer-inner{padding-left:26px;padding-right:26px}.header-label{display:none}}
@media(max-width:650px){.header-inner{padding:15px 16px;min-height:72px}.brand-name{font-size:15px}.brand-sub{font-size:8px}.language{font-size:11px;padding:9px}.hero{padding:47px 0 31px}.hero h1{font-size:49px;margin:25px 0}.hero-bottom{align-items:start;gap:10px}.hero-bottom p{font-size:12px}.work-count{font-size:9px;margin-top:4px}.eyebrow{font-size:9px}.gallery{columns:2;column-gap:11px}.tile{margin-bottom:20px}.tile-name strong{font-size:12px}.tile-name small{font-size:9px}.artwork-button{border-radius:2px}.mock-mark{font-size:32px}.mock-label{font-size:8px}.toolbar{align-items:stretch;flex-direction:column;gap:14px;padding-top:23px}.sort-zone{align-self:flex-end}.chip{padding:9px 13px;font-size:11px}.character-filters{gap:12px;margin-top:0}.character-btn{font-size:11px}.footer-inner{flex-direction:column;align-items:start;gap:10px}.lightbox-top{padding:9px 16px}.lightbox-bottom{padding:9px 14px}.arrow-left{left:5px}.arrow-right{right:5px}.arrow{height:34px;width:34px;font-size:24px}.lightbox-image-wrap img{max-width:93%}.lightbox-image-wrap .mock-image{width:62%;height:65%}main{padding:0 15px 50px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
