.photo-exhibition-root *,.photo-exhibition-root *:before,.photo-exhibition-root *:after{box-sizing:border-box}.photo-exhibition-root{min-height:100dvh;background:var(--_bg);color:var(--_ink);font-family:var(--ckj-font-body, sans-serif);-webkit-font-smoothing:antialiased}.photo-exhibition-phone{max-width:480px;margin:0 auto;background:var(--_bg);isolation:isolate;visibility:hidden}.pe-cover{display:flex;align-items:flex-end;padding:24px 24px 44px;background:linear-gradient(180deg,#f5f2ede0,#f5f2ed),linear-gradient(135deg,#f8f5ef,#efe7dc)}.pe-cover-inner{width:100%}.pe-cover-kicker,.pe-sign-en,.pe-story-label{margin:0;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#6b625a}.pe-cover-title,.pe-sign-title{margin:0;font-family:var(--ckj-font-display, serif);font-weight:400;letter-spacing:.04em;color:var(--_ink)}.pe-cover-title{margin-top:14px;font-size:clamp(50px,13.6vw,74px);line-height:1.04}.pe-cover-address,.pe-footer-info{margin-top:20px;font-size:16px;line-height:1.9;color:#4e4741}.pe-cover-ip{display:block;position:relative;z-index:5;width:176px;max-width:52%;height:auto;margin-top:26px;opacity:.98;transform-origin:center bottom;animation:pe-mascot-breathe 2.8s ease-in-out infinite}.pe-story{padding:8px 0 40px;background:var(--_bg)}.pe-story-inner{width:calc(100% - 48px);margin:0 auto;padding:8px 0 0;border-top:1px solid #e7dfd5}.pe-story-content{margin:14px 0 0;font-size:16px;line-height:1.92;color:#4e4741;text-indent:2em;white-space:pre-line}.pe-section{background:var(--_bg)}.pe-sign{padding:0 24px 22px}.pe-sign-title{margin-top:7px;font-size:32px;line-height:1.08}.pe-zone{background:linear-gradient(to bottom,var(--_zone-color) 0%,var(--_zone-color) 68%,rgba(245,242,237,.96) 86%,var(--_next-zone-color) 100%);padding:8px 0 40px}.pe-exhibit{width:calc(100% - 48px);margin:0 auto}.pe-frame{position:relative;background:#ffffff47;padding:12px;box-shadow:0 10px 28px #382a1c24}.pe-frame-surface{display:block;width:100%;background:#f8f5ef}.pe-image-surface,.pe-exhibit-empty{aspect-ratio:1 / 1;object-fit:contain}.pe-tag{position:absolute;left:24px;bottom:-18px;display:inline-flex;flex-direction:column;gap:2px;min-width:128px;padding:8px 14px 10px;background:#c4a882;color:#4a3728;box-shadow:1px 1px #0000000d,4px 8px 20px #00000017;border-radius:2px 8px 3px 6px}.pe-tag:before{content:"";position:absolute;top:-7px;left:14px;width:10px;height:10px;border-radius:50%;background:#8b7355;box-shadow:0 0 0 2px #f5f2edf2}.pe-tag-name{font-family:var(--ckj-font-display, serif);font-size:16px;line-height:1.25;letter-spacing:.03em}.pe-tag-price{font-size:14px;font-weight:600}.pe-exhibit-note{margin:22px 0 0;padding-left:38px;font-family:var(--ckj-font-display, serif);font-size:16px;line-height:1.5;letter-spacing:.03em;color:#4a3728}.pe-text-surface{padding:8px 14px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.pe-text-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}.pe-text-item:last-child{border-bottom:0}.pe-text-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.pe-text-name{font-size:16px;line-height:1.5}.pe-text-copy small{font-size:13px;line-height:1.75;color:#5f5650}.pe-text-price{flex:none;font-family:var(--ckj-font-display, serif);font-size:17px;line-height:1.4;white-space:nowrap}.pe-footer{position:relative;z-index:4;padding:28px 24px 48px;text-align:center;background:linear-gradient(180deg,#f5f2ed33,#f5f2ed 42%),var(--_bg)}.pe-footer-mark{position:relative;z-index:5;display:block;width:108px;height:auto;margin:0 auto;opacity:1;filter:drop-shadow(0 10px 18px rgba(38,28,20,.18));transform-origin:center bottom;animation:pe-mascot-breathe 2.8s ease-in-out infinite}.pe-back-top{display:inline-block;margin-top:16px;color:#5f5650;text-decoration:none;font-size:13px;letter-spacing:.08em}.pe-zone{background:linear-gradient(to bottom in oklch,var(--_zone-color-start, var(--_zone-color)) 0%,var(--_zone-color) 10%,var(--_zone-color) 65%,var(--_next-zone-color) 100%)}.pe-frame,.pe-back-top{transition:transform .32s cubic-bezier(.16,1,.3,1)}.pe-frame:hover,.pe-back-top:hover{transform:translateY(-2px)}@keyframes pe-mascot-breathe{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@media(min-width:420px){.pe-cover,.pe-sign{padding-left:32px;padding-right:32px}.pe-exhibit,.pe-story-inner{width:calc(100% - 64px)}}@media(prefers-reduced-motion:reduce){.pe-frame,.pe-back-top,.pe-cover-ip,.pe-footer-mark{transition:none;transform:none;animation:none}}
