/* Claude Designの書き出しの見た目（port.mjs で写した。手で直さない） */
:root{
--ink-950:#0B0C0D;--ink-900:#111314;--ink-850:#16181A;--ink-800:#1C1F21;--ink-700:#26292C;--ink-600:#34383C;--ink-500:#4A4F54;
--steel-400:#7C8288;--steel-300:#A4A9AE;--steel-200:#C9CCCF;--steel-100:#E4E5E6;
--paper-50:#FFFFFF;--paper-100:#F6F5F2;--paper-200:#ECEAE5;
--spark-300:#FFA266;--spark-400:#FF8333;--spark-500:#FF6A13;--spark-600:#E5520A;--spark-700:#B83F06;
--line-subtle:var(--ink-700);
--font-jp:"Zen Kaku Gothic New","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;
--font-display:"Barlow Condensed","Zen Kaku Gothic New",sans-serif;
--font-ui:"Barlow","Zen Kaku Gothic New",sans-serif;
--font-mono:"JetBrains Mono",ui-monospace,monospace;
--fs-hero:clamp(40px,7vw,88px);--fs-h1:clamp(28px,4.2vw,48px);--fs-h2:clamp(28px,3.6vw,40px);--fs-h3:clamp(17px,1.5vw,19px);
--fs-body:16px;--fs-small:13px;--fs-price:clamp(32px,3.4vw,40px);
--container:1200px;--narrow:860px;--pad:clamp(20px,4vw,40px);--section-y:clamp(80px,10vw,144px);
--radius-1:2px;--header-h:72px;
--shadow-card-light:0 1px 2px rgba(11,12,13,.06),0 8px 24px rgba(11,12,13,.06);
--shadow-card-hover:0 1px 2px rgba(11,12,13,.08),0 16px 40px rgba(11,12,13,.12);
--ease-out:cubic-bezier(.2,.7,.2,1);--dur-fast:140ms;--dur-base:240ms;--dur-slow:600ms;
--ph-dark:repeating-linear-gradient(135deg,var(--ink-800) 0 12px,var(--ink-850) 12px 24px);
--ph-dark-2:repeating-linear-gradient(135deg,var(--ink-600) 0 12px,var(--ink-700) 12px 24px);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:var(--header-h)}
body{margin:0;background:var(--paper-100);color:var(--ink-950);font-family:var(--font-jp);font-size:var(--fs-body);line-height:1.9;letter-spacing:.04em;-webkit-font-smoothing:antialiased}
a{color:var(--spark-700);text-decoration:none;transition:color var(--dur-fast) var(--ease-out)}
a:hover{color:var(--spark-600)}
::selection{background:var(--spark-500);color:#fff}
@keyframes pbZoom{from{transform:scale(1)}to{transform:scale(1.1)}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

.pb-d{display:contents}.pb-m{display:none}
@media (max-width:767px){.pb-d{display:none}.pb-m{display:contents}.pb-hero{width:100% !important}[data-k="4"],[data-k="5"]{display:none !important}footer{padding-bottom:calc(104px + env(safe-area-inset-bottom)) !important}}
.pb-box{position:fixed;inset:0;z-index:100;background:rgba(11,12,13,.94);display:flex;align-items:center;justify-content:center}
.pb-box[hidden]{display:none}
.pb-box img{max-width:94vw;max-height:84vh;object-fit:contain}
.pb-box button{position:absolute;width:52px;height:52px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font:400 30px/1 var(--font-ui);cursor:pointer}
.pb-box button:hover{background:var(--spark-500);color:var(--ink-950)}
.pb-box .pb-close{top:16px;right:16px}.pb-box .pb-prev{left:16px;top:50%;margin-top:-26px}.pb-box .pb-next{right:16px;top:50%;margin-top:-26px}
.pb-box .pb-count{position:absolute;bottom:20px;left:0;right:0;text-align:center;font:500 13px/1 var(--font-mono);color:var(--steel-300)}
.h1:hover{color:var(--spark-400) !important}
.h2:hover{background:var(--spark-400) !important;color:var(--ink-950) !important}
.h3:hover{background:#fff !important;color:var(--ink-950) !important}
.h4:hover{box-shadow:var(--shadow-card-hover) !important;color:var(--ink-950) !important}
.h5:hover{transform:scale(1.03) !important}
.h6:hover{background:var(--ink-950) !important;color:#fff !important}
.h7:hover{color:var(--ink-950) !important}
.h8:hover{color:var(--spark-700) !important}
