@font-face{font-family:Lueur;src:url('./assets/fonts/raleway-latin.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{--paper:#f9f1e7;--ink:#40332f;--bg:#c97164;--font:Lueur,'Helvetica Neue',Arial,sans-serif}
*{box-sizing:border-box}html{margin:0;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--paper);font-family:var(--font);font-weight:300;-webkit-font-smoothing:antialiased;overflow:hidden;transition:background 1s ease}body[data-view=collections],body[data-view=detail]{--bg:#bc978c}body[data-view=about]{--bg:#b2b8c3;color:#37384c;overflow:auto}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:2px solid currentColor;outline-offset:7px}h1,h2,p,figure{margin:0}img{display:block;width:100%;height:100%;object-fit:cover}button{padding:0}::selection{background:#f9f1e7;color:#8e4e42}[hidden]{display:none!important}.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip{position:fixed;top:-100px;left:15px;z-index:20;background:var(--paper);color:var(--ink);padding:16px;font-size:18px}.skip:focus{top:16px}
#gallery{position:fixed;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;opacity:0;transition:opacity 1.4s ease}.gl-ready #gallery{opacity:1}.header{position:fixed;z-index:10;inset:28px 32px auto;display:flex;justify-content:space-between;align-items:flex-start;pointer-events:none}.header>*{pointer-events:auto}.brand{display:flex;flex-direction:column;width:max-content;gap:6px}.brand>span{font-size:25px;letter-spacing:.19em;font-weight:200;line-height:1}.brand>small{font-size:9px;letter-spacing:.57em;font-weight:400;padding-left:2px}.nav-link{font-size:18px;letter-spacing:.03em;display:flex;gap:10px;align-items:center;line-height:1.6}.nav-link span{display:inline-block;transition:transform .3s}.nav-link:hover span{transform:translate(3px,-3px)}.page{position:relative;z-index:2;min-height:100svh}.home,.collections,.detail{height:100svh;overflow:hidden}.eyebrow{font-size:12px;letter-spacing:.14em;font-weight:500;line-height:1.7}.ellipse{border:1px solid #f9f1e77a;border-radius:50%;width:274px;min-height:62px;display:flex;align-items:center;justify-content:center;gap:20px;letter-spacing:.045em;font-size:16px;transition:background .3s,border-color .3s}.ellipse:hover{background:#f9f1e716;border-color:var(--paper)}.ellipse>span{font-size:22px;display:inline-block;transition:transform .3s}.ellipse:hover>span{transform:translate(2px,-2px)}
.vignette{position:absolute;inset:0;background:linear-gradient(var(--bg),transparent 29%,transparent 70%,var(--bg));z-index:1;pointer-events:none}.home-fallback{position:absolute;inset:-12% 24px;display:grid;grid-template-columns:repeat(5,1fr);gap:42px;opacity:.52;overflow:hidden}.home-fallback .column{display:flex;flex-direction:column;gap:45px;transform:translateY(var(--offset));animation:float-column 55s linear infinite}.home-fallback img{aspect-ratio:1/1.41;object-fit:cover;height:auto;transform:rotate(var(--rotate,3deg))}.gl-ready .home-fallback{visibility:hidden}.titles{position:absolute;inset:0;z-index:2;overflow:hidden;pointer-events:none;mask-image:linear-gradient(transparent,black 28%,black 75%,transparent)}.title-track{position:absolute;inset:0}.title-item{position:absolute;left:50%;top:0;width:320px;height:68vh;min-height:320px;transform:translate(-50%,0)}.title-word{position:absolute;left:50%;top:50%;font-size:clamp(105px,10.45vw,201px);font-weight:200;line-height:1;letter-spacing:-.065em;white-space:nowrap;transform:translate(-50%,-50%) rotate(-90deg)}.title-label{position:absolute;left:50%;top:50%;transform:translate(-36px,-155px) rotate(-90deg);transform-origin:left center;font-size:11px;letter-spacing:0;line-height:1.3;width:115px;font-weight:400}.home-caption{position:absolute;left:34px;bottom:36px;z-index:3;pointer-events:none}.home-caption>span{font-size:10px;letter-spacing:.1em}.home-caption h1{font-family:var(--font),'Yu Mincho',serif;font-size:18px;font-weight:400;line-height:1.9;letter-spacing:.12em;margin-top:7px}.discover{position:absolute;left:50%;bottom:36px;transform:translateX(-50%);z-index:4}.motion{position:fixed;bottom:35px;right:31px;z-index:11;border:1px solid #f9f1e757;border-radius:50%;width:44px;height:44px;font-size:18px;background:#c971640d}.motion:hover{background:#f9f1e722}body[data-view=about] .motion{display:none}
.collection-backdrop{position:absolute;inset:0;display:grid;place-items:center;z-index:-1;overflow:hidden;pointer-events:none}.collection-backdrop span{transform:rotate(-90deg);font-size:clamp(120px,15vw,240px);letter-spacing:-.06em;font-weight:200;white-space:nowrap;opacity:.82}.photo-hit{position:absolute;left:48%;top:43%;transform:translate(-50%,-50%);width:19vw;height:48vh;z-index:4;cursor:pointer}.photo-hint{position:absolute;bottom:15px;left:50%;transform:translateX(-50%);font-size:16px;white-space:nowrap;color:#fff;background:#40332fac;padding:10px 15px;border-radius:30px;opacity:0;transition:opacity .3s}.photo-hit:hover .photo-hint,.photo-hit:focus-visible .photo-hint{opacity:1}.collection-fallback{position:absolute;left:48%;top:43%;transform:translate(-50%,-50%) rotate(-3deg);width:19vw;height:48vh;z-index:1}.gl-ready .collection-fallback{visibility:hidden}.collection-copy{position:absolute;left:4.15vw;bottom:7.5vh;max-width:62%;pointer-events:none}.collection-copy h1{font-size:clamp(42px,4vw,70px);font-weight:200;letter-spacing:-.06em;line-height:1.15;margin:5px 0 12px}.collection-copy p{font-size:18px;line-height:1.9;color:var(--ink);max-width:850px;letter-spacing:.03em}.collection-controls{position:absolute;bottom:8vh;right:5vw;display:flex;gap:18px;align-items:center;z-index:4}.round{width:48px;height:48px;border:1px solid #f9f1e785;border-radius:50%;font-size:23px;transition:background .3s}.round:hover{background:#f9f1e729}.counter{font-size:16px;min-width:64px;text-align:center;font-variant-numeric:tabular-nums}.drag-hint{position:absolute;top:75%;left:50%;transform:translateX(-50%);font-size:16px;letter-spacing:.1em;color:var(--ink);pointer-events:none}.back-home{position:absolute;left:4.15vw;top:130px;font-size:16px;display:flex;gap:8px}.back-home:hover span{text-decoration:underline}
.detail-copy{position:absolute;top:13%;left:48%;right:8%;bottom:15%;overflow-y:auto;scrollbar-width:thin;padding-right:15px;scrollbar-color:#f9f1e751 transparent;z-index:3}.detail-copy h1{font-size:clamp(60px,6.25vw,120px);font-weight:200;line-height:.88;letter-spacing:-.055em;margin:27px 0 16px}.detail-japanese{font-size:18px;letter-spacing:.08em;line-height:1.7}.detail-note{display:flex;gap:22px;align-items:center;margin:35px 0 28px;padding-left:17%;font-size:18px;line-height:1.7;color:var(--ink)}.detail-symbol{width:38px;height:38px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;flex-shrink:0;font-size:21px}.detail-info{padding-left:17%;margin:24px 0;color:var(--ink)}.detail-info h2{font-weight:500;font-size:16px;line-height:1.7;margin-bottom:9px}.detail-info p{font-size:18px;line-height:1.9;letter-spacing:.025em}.text-link{display:inline-flex;font-size:18px;gap:12px;margin:16px 0 18px 17%;border-bottom:1px solid #f9f1e74f;padding-bottom:7px}.close-detail{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);width:190px;min-height:56px;z-index:5}.detail-fallback{position:absolute;top:48%;left:32%;width:31vw;height:72vh;transform:translate(-50%,-50%) rotate(-2deg);z-index:1}.gl-ready .detail-fallback{visibility:hidden}
.about{overflow:hidden;padding-top:150px}.about-intro{text-align:center;max-width:1050px;margin:auto;padding:0 28px}.about-intro h1{font-family:var(--font),'Yu Mincho',serif;font-size:clamp(42px,5.4vw,92px);font-weight:300;line-height:1.45;letter-spacing:.1em;margin:46px 0}.about-intro>p:last-child{font-size:18px;line-height:2.2;letter-spacing:.13em}.about-ribbon{width:116%;margin:130px -8% 0;display:grid;grid-template-columns:repeat(4,1fr);gap:6vw;align-items:center}.about-ribbon img{aspect-ratio:.73;transform:rotate(-4deg);height:auto}.about-ribbon img:nth-child(even){transform:translateY(40px) rotate(5deg)}.about-ribbon img:nth-child(3){transform:translateY(-30px) rotate(-3deg)}.about-statement{text-align:center;padding:180px 25px 130px}.about-statement>span{font-size:12px;letter-spacing:.15em}.about-statement h2{font-size:clamp(34px,4.25vw,72px);font-weight:300;letter-spacing:.08em;line-height:1.7;margin-top:30px}.about-editorial{display:grid;grid-template-columns:1fr .8fr;gap:14%;max-width:1450px;padding:0 8%;margin:auto;align-items:center}.about-editorial figure img{aspect-ratio:.708;height:auto}.about-editorial figcaption{font-size:16px;line-height:1.8;margin-top:18px}.about-editorial h2{font-size:clamp(36px,3.4vw,58px);font-weight:300;line-height:1.6;margin:23px 0 38px;letter-spacing:.08em}.about-editorial p{font-size:18px;line-height:2.1;margin:20px 0;letter-spacing:.045em}.about-signature{position:relative;display:flex;justify-content:space-between;align-items:center;gap:23vw;padding:170px 14% 70px}.about-signature img{width:31%;height:auto;aspect-ratio:.71}.about-signature img:last-child{transform:translateY(120px)}.about-signature>span{position:absolute;top:52%;left:50%;transform:translate(-50%,-50%) rotate(-90deg);font-size:19vw;font-weight:200;letter-spacing:-.06em}.about-footer{padding:190px 32px 35px;text-align:center}.about-footer h2{font-size:clamp(42px,5vw,84px);font-weight:300;letter-spacing:.12em;line-height:1.6;margin:30px 0 55px}.about-footer .ellipse{border-color:#37384c75;margin:auto}.about-footer .ellipse:hover{background:#ffffff24}.footer-bottom{margin-top:140px;padding-top:25px;border-top:1px solid #37384c33;display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-bottom a{font-size:16px;letter-spacing:.15em}.footer-bottom p{font-size:16px;line-height:1.8}.footer-bottom>span{font-size:10px;letter-spacing:.1em}.curtain{position:fixed;inset:-30vh -10vw;z-index:15;background:var(--paper);transform:translateY(130%);pointer-events:none;border-radius:48% 48% 0 0}.curtain.transition{animation:curtain 1.05s cubic-bezier(.76,0,.24,1) both}.noscript-notice{position:relative;z-index:10;font-size:18px;padding:30px;background:var(--paper);color:var(--ink)}
@keyframes curtain{0%{transform:translateY(130%);border-radius:48% 48% 0 0}48%,52%{transform:translateY(0);border-radius:0}100%{transform:translateY(-130%);border-radius:0 0 48% 48%}}@keyframes float-column{to{transform:translateY(calc(var(--offset) - 30%))}}.is-paused .home-fallback .column{animation-play-state:paused}
@media(min-width:1800px){.header{inset:40px}.brand>span{font-size:31px}.brand small{font-size:11px}.nav-link{font-size:22px}.ellipse{font-size:18px;min-height:72px;width:320px}.home-caption{left:40px;bottom:48px}.home-caption h1{font-size:22px}.collection-copy p,.detail-info p{font-size:20px}}
@media(max-width:767px){.header{inset:24px 22px}.brand>span{font-size:23px}.nav-link{font-size:16px;gap:6px}.brand>small{font-size:8px}.home-fallback{grid-template-columns:repeat(2,1fr);inset:-10% 20px;gap:34px}.home-fallback .column:nth-child(n+3){display:none}.home-fallback .column{gap:36px}.title-word{font-size:clamp(105px,27vw,180px)}.title-item{height:65vh;min-height:300px}.title-label{font-size:10px;transform:translate(-29px,-125px) rotate(-90deg)}.vignette{background:linear-gradient(var(--bg),transparent 29%,transparent 64%,var(--bg) 92%)}.home-caption{bottom:143px;left:20px;right:20px;text-align:center}.home-caption h1{font-size:18px;margin-top:4px}.home-caption>span{font-size:9px}.discover{bottom:61px;width:264px;min-height:61px;font-size:16px}.motion{bottom:13px;right:16px;width:36px;height:36px;font-size:16px}.collection-backdrop span{font-size:37vw}.collection-copy{left:23px;right:23px;bottom:129px;max-width:none}.collection-copy .eyebrow{font-size:10px}.collection-copy h1{font-size:42px;margin:4px 0 7px}.collection-copy p{font-size:16px;line-height:1.7;max-width:430px}.collection-controls{bottom:48px;left:50%;right:auto;transform:translateX(-50%);gap:25px}.round{width:44px;height:44px}.drag-hint{top:58%;font-size:16px;white-space:nowrap}.back-home{left:24px;top:105px}.back-home span{display:none}.collection-fallback,.photo-hit{left:50%;top:35%;width:52vw;height:36vh}.photo-hint{bottom:9px;font-size:16px;opacity:1;padding:8px 12px}.detail{height:auto;min-height:100svh;padding-top:70vh;overflow:visible;padding-bottom:132px}.detail-copy{position:relative;top:auto;left:auto;right:auto;bottom:auto;overflow:visible;padding:0 26px}.detail-copy h1{font-size:65px;line-height:.95;margin:20px 0}.detail-copy h1 br{display:none}.detail-japanese{font-size:18px}.detail-note{padding-left:0;margin:28px 0;font-size:18px}.detail-info{padding-left:0}.detail-info p{font-size:18px}.text-link{margin-left:0}.close-detail{position:fixed;bottom:18px;width:200px;background:#bc978cf5;min-height:52px}.detail-fallback{position:absolute;top:33vh;left:50%;width:65vw;height:47vh}.detail~.motion{display:none}body[data-view=detail]{overflow-y:auto}body[data-view=detail] .motion{display:none}body[data-view=detail] .header{background:linear-gradient(#bc978c,transparent);padding-bottom:12px}body[data-view=detail] #gallery{position:absolute;height:100svh}.about{padding-top:140px}.about-intro{padding:0 23px}.about-intro .eyebrow{font-size:10px}.about-intro h1{font-size:34px;line-height:1.65;margin:30px 0;letter-spacing:.035em}.about-intro>p:last-child{font-size:18px;letter-spacing:.03em;line-height:2}.about-ribbon{width:166%;margin:75px -33% 0;gap:7vw}.about-ribbon img:nth-child(even){transform:translateY(20px) rotate(5deg)}.about-ribbon img:nth-child(3){transform:translateY(-20px) rotate(-3deg)}.about-statement{padding:110px 20px 70px}.about-statement h2{font-size:27px;letter-spacing:0;line-height:1.8}.about-editorial{display:block;padding:0 30px}.about-editorial figure{width:88%;margin-bottom:70px}.about-editorial figcaption{font-size:16px}.about-editorial h2{font-size:36px;margin:20px 0 30px}.about-editorial p{font-size:18px;line-height:2}.about-signature{gap:25vw;padding:75px 7% 20px}.about-signature img{width:33%}.about-signature img:last-child{transform:translateY(60px)}.about-signature>span{font-size:26vw}.about-footer{padding:120px 23px 28px}.about-footer h2{font-size:42px;letter-spacing:.06em}.footer-bottom{margin-top:95px;display:flex;flex-direction:column;gap:20px}.footer-bottom p{font-size:16px}.footer-bottom>span{font-size:10px}}
@media(max-width:360px){.header{inset:20px 17px}.nav-link{font-size:16px}.brand>span{font-size:21px}.nav-link span{display:none}.home-caption{bottom:140px}.collection-copy{bottom:112px;left:20px;right:20px}.collection-copy h1{font-size:34px}.collection-copy p{font-size:16px;line-height:1.6}.collection-controls{bottom:39px}.drag-hint{top:54%;font-size:16px}.collection-fallback,.photo-hit{top:33%;height:32vh;width:49vw}.back-home{top:90px}.about-intro h1{font-size:30px}.about-statement h2{font-size:24px}.about-editorial{padding:0 23px}.ellipse{max-width:calc(100vw - 55px)}}
@media(max-height:600px) and (min-width:768px){.header{top:20px}.detail-copy{top:17%;bottom:21%}.detail-copy h1{font-size:58px}.detail-note{margin:22px 0;padding-left:0}.detail-info{padding-left:0}.text-link{margin-left:0}.collection-copy{bottom:7%;max-width:57%}.collection-copy h1{font-size:37px}.collection-copy p{font-size:16px;line-height:1.6}.drag-hint{top:69%;font-size:16px}.back-home{top:88px}.discover{bottom:22px}.home-caption{bottom:25px}.home-caption h1{font-size:16px}.home-caption>span{display:none}.motion{bottom:26px}.collection-controls{bottom:10%}.close-detail{bottom:15px;min-height:47px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.home-fallback .column{animation:none}}
/* 写真が縦タイトルの手前を通る。操作部品は前景に残す。 */
.collections{z-index:auto}.collection-backdrop{z-index:0}.collection-copy,.drag-hint,.back-home{z-index:3}.collection-controls{right:max(115px,7vw)}
@media(max-width:767px){.collection-controls{right:auto}}

/* 検品修正: 写真とヒット領域の一致、長い商品名の自然な改行。 */
.collection-fallback,.photo-hit{left:49%;top:44%;width:18.625vw;height:min(50vh,26.63375vw)}
.detail-fallback{left:32%;top:49%;width:31vw;height:min(70vh,44.02vw)}
@media(max-width:767px){
 .collection-fallback,.photo-hit{left:50%;top:35%;width:49vw;height:min(36vh,69.58vw)}
 .detail-fallback{left:50%;top:34vh;width:63vw;height:min(46vh,89.46vw)}
 .detail-copy h1{font-size:60px;line-height:1.02}.detail-copy h1 br{display:initial}
}
@media(max-width:360px){.collection-fallback,.photo-hit{top:33%;height:min(32vh,69.58vw)}.detail-copy h1{font-size:54px}}
/* 固定ヘッダーは上端のみ。画面全体へ背景が伸びないようにする。 */
.header{bottom:auto}

.phrase{display:inline-block}
body[data-view=detail] .header,body[data-view=about] .header{background:var(--bg);box-shadow:0 0 20px 15px var(--bg)}
.home,.collections{touch-action:none}
@media(max-width:767px){.collection-backdrop{clip-path:inset(0 0 44% 0)}.titles{mask-image:linear-gradient(transparent,black 23%,black 58%,transparent 82%)}}
@media(max-width:360px){.drag-hint{display:none}.collection-backdrop{clip-path:inset(0 0 48% 0)}}
@media(max-width:360px){.about-footer h2{font-size:36px;letter-spacing:.02em}.about-intro>p:last-child{letter-spacing:0}}
@media(max-height:600px) and (min-width:768px){.drag-hint{display:none}}

/* r2: 寸法・重なり・写真密度を再調整。 */
:root{--unit:calc(100vw / 192)}
.header{inset:calc(var(--unit)*4) calc(var(--unit)*4) auto}
.brand>span{font-size:calc(var(--unit)*2.55);font-weight:200;letter-spacing:.24em}
.nav-link{font-size:max(16px,calc(var(--unit)*2.4));font-weight:300;gap:0;line-height:1.2}
.titles{mask-image:none}
.title-item{width:0;height:auto;min-height:0;will-change:transform;backface-visibility:hidden}
.title-word{font-size:calc(var(--unit)*20);font-weight:100;letter-spacing:-.035em;line-height:1.5;transform:translate(-50%,-50%) rotate(-90deg)}
.title-label{width:calc(var(--unit)*10);font-size:calc(var(--unit)*1.2);font-weight:400;line-height:1.5;letter-spacing:calc(var(--unit)*.1);transform:translate(-50%,-50%) rotate(-90deg);transform-origin:center}
.vignette{position:fixed;z-index:3;background:linear-gradient(var(--bg),transparent) top/100% calc(var(--unit)*35) no-repeat,linear-gradient(transparent,var(--bg)) bottom/100% calc(var(--unit)*35) no-repeat}
.home .titles{z-index:2}
.discover{bottom:calc(var(--unit)*5);width:calc(var(--unit)*28.8);min-height:max(44px,calc(var(--unit)*6));font-size:max(10.5px,calc(var(--unit)*1.4));letter-spacing:.035em;border-color:#f9f1e770;font-weight:400;z-index:4}
.motion{bottom:calc(var(--unit)*5);right:calc(var(--unit)*4);width:32px;height:32px;font-size:13px;opacity:.75}
.home-fallback{inset:0 calc(var(--unit)*5);gap:calc(var(--unit)*5);opacity:.55}
.home-fallback .column{gap:calc(var(--unit)*5);animation:none}
.home-fallback img{aspect-ratio:2/3}
.gl-ready .home-fallback,.gl-ready .collection-fallback,.gl-ready .detail-fallback{display:none}
.collections{z-index:auto}
.collections .collection-backdrop{z-index:0;display:block;clip-path:none;overflow:hidden;mask-image:none}
.collections .collection-backdrop .title-word{opacity:1}
.collection-backdrop span{opacity:1}
.collection-copy{left:calc(var(--unit)*8);bottom:calc(var(--unit)*8);max-width:calc(100% - var(--unit)*16);right:calc(var(--unit)*8)}
.collection-copy .eyebrow{display:none}
.collection-copy h1{font-weight:200;font-size:calc(var(--unit)*6);line-height:1.15;letter-spacing:-.04em;margin:0 0 calc(var(--unit)*2)}
.collection-copy p{max-width:1180px;color:var(--paper);font-size:16px;line-height:1.65;letter-spacing:0}
.collection-controls{bottom:16px;right:calc(var(--unit)*8);gap:14px;opacity:.85}
.collection-controls .round{width:32px;height:32px;font-size:18px;border-color:#f9f1e750}
.counter{font-size:12px;min-width:49px}
.drag-hint{top:auto;bottom:22px;font-size:10px;font-weight:400;color:var(--paper);letter-spacing:.12em}
.back-home{top:calc(var(--unit)*11);left:calc(var(--unit)*4);font-size:13px}
.photo-hit{transform:translate(-50%,-50%)}
.photo-hint{font-size:13px;padding:9px 15px;pointer-events:none}
.is-dragging,.is-dragging .photo-hit{cursor:grabbing}
.is-dragging .photo-hint{opacity:0}
.detail-copy h1{font-weight:100;line-height:1.02}
.curtain{inset:-30vh -10vw}
.curtain.transition{animation-duration:2.2s;animation-timing-function:cubic-bezier(.87,0,.13,1)}
@media(max-width:767px){
 :root{--unit:calc(100vw / 75)}
 .header{inset:calc(var(--unit)*5) calc(var(--unit)*4) auto}
 .brand>span{font-size:22px}.nav-link{font-size:16px}
 .home-fallback{inset:0 calc(var(--unit)*3);gap:calc(var(--unit)*3)}
 .home-fallback .column{gap:calc(var(--unit)*3)}
 .title-word{font-size:calc(var(--unit)*20)}
 .title-label{font-size:calc(var(--unit)*1.8);width:calc(var(--unit)*12);letter-spacing:.05em}
 .home .titles{mask-image:none}
 .vignette{background:linear-gradient(var(--bg),transparent) top/100% calc(var(--unit)*25) no-repeat,linear-gradient(transparent,var(--bg)) bottom/100% calc(var(--unit)*25) no-repeat}
 .discover{bottom:calc(var(--unit)*6);width:calc(var(--unit)*41);min-height:48px;font-size:12px;max-width:none}
 .motion{bottom:12px;right:12px;width:30px;height:30px;font-size:12px}
 .back-home{left:calc(var(--unit)*4);top:90px}
 .collection-copy{left:24px;right:24px;bottom:100px;max-width:none}
 .collection-copy h1{font-size:36px;margin-bottom:12px}
 .collection-copy p{font-size:16px;line-height:1.65}
 .collection-controls{bottom:30px;left:24px;right:auto;transform:none;gap:18px}
 .collection-controls .round{width:40px;height:40px;font-size:20px}
 .counter{font-size:14px}
 .drag-hint{display:block;top:auto;left:auto;right:24px;bottom:44px;transform:none;font-size:9px;letter-spacing:.07em}
 .photo-hint{opacity:0}.photo-hit:focus-visible .photo-hint{opacity:1}
 .collection-backdrop{clip-path:none}
}
@media(max-width:360px){.collection-copy{bottom:96px;left:20px;right:20px}.collection-copy h1{font-size:30px}.drag-hint{right:20px;font-size:8px}.collection-controls{left:20px}.header{inset:20px 20px auto}}
@media(max-height:600px) and (min-width:768px){.collection-copy{bottom:55px}.collection-copy h1{font-size:34px;margin-bottom:8px}.collection-copy p{font-size:16px}.collection-controls{bottom:10px}.drag-hint{display:none}.discover{bottom:22px}.motion{bottom:22px}}

/* 縦見出しは Home / Collections で同じ字面とサイズを共有する。 */
.titles .title-word{position:absolute;left:50%;font-size:calc(var(--unit)*20);font-weight:100;letter-spacing:-.035em;line-height:1.5;transform:translate(-50%,-50%) rotate(-90deg);white-space:nowrap}
.titles .title-label{position:absolute;left:50%;width:calc(var(--unit)*10);font-size:calc(var(--unit)*1.2);font-weight:400;line-height:1.5;letter-spacing:calc(var(--unit)*.1);transform:translate(-50%,-50%) rotate(-90deg);transform-origin:center}
.gl-ready .detail-fallback{display:block;visibility:hidden}
.curtain.transition{animation-duration:3s}
@media(max-width:767px){.titles .title-label{font-size:calc(var(--unit)*1.8);width:calc(var(--unit)*12);letter-spacing:.05em}}

/* 参考と同じ正弦曲線の幕。主描画ループ内で動かす。 */
canvas.curtain{position:fixed;inset:0;width:100%;height:100%;transform:none;border-radius:0;background:transparent;z-index:15;pointer-events:none}

/* 商品詳細の写真も元の rem 寸法へ戻す。狭い画面でも被写体を小さくしない。 */
.detail-fallback{left:32%;top:50%;width:calc(var(--unit)*55.4);height:calc(var(--unit)*78.2);transform:translate(-50%,-50%)}
@media(max-width:767px){
 .detail{padding-top:calc(var(--unit)*116.2)}
 .detail-fallback{left:50%;top:calc(var(--unit)*61.7);width:calc(var(--unit)*66.1);height:calc(var(--unit)*93.4)}
}

@media(max-width:767px){.collections .collection-backdrop{mask-image:linear-gradient(#000 0,#000 calc(var(--collection-copy-top,70vh) - 110px),transparent calc(var(--collection-copy-top,70vh) - 10px))}}
