:root{--color-text:#1f2328;--color-text-muted:#5b6572;--color-bg:#fff;--color-bg-subtle:#f6f7f9;--color-border:#d8dde3;--color-accent:#0b5ed7;--color-accent-hover:#084298;--font-sans:system-ui, -apple-system, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", Meiryo, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, "Courier New", monospace;--width-container:60rem;--width-prose:44rem;--space:1rem;--radius:8px}@media (prefers-color-scheme:dark){:root{--color-text:#e6e8eb;--color-text-muted:#a3adb9;--color-bg:#14171a;--color-bg-subtle:#1d2126;--color-border:#333a42;--color-accent:#6ea8fe;--color-accent-hover:#9ec5fe}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);text-spacing-trim:trim-start;word-break:normal;overflow-wrap:anywhere;line-break:strict;-webkit-text-size-adjust:100%;margin:0;font-size:1rem;line-height:1.8}.container{width:100%;max-width:var(--width-container);padding-inline:var(--space);margin-inline:auto}img{max-width:100%;height:auto}a{color:var(--color-accent);text-underline-offset:.2em}a:hover{color:var(--color-accent-hover)}h1,h2,h3,h4{font-weight:700;line-height:1.4}h1{margin-block:0 .75em;font-size:1.875rem}h2{border-bottom:1px solid var(--color-border);margin-block:2em .6em;padding-bottom:.3em;font-size:1.4rem}h3{margin-block:1.8em .5em;font-size:1.15rem}code{background-color:var(--color-bg-subtle);font-family:var(--font-mono);border-radius:4px;padding:.15em .4em;font-size:.9em}pre{border-radius:var(--radius);padding:1em;overflow-x:auto}pre code{background:0 0;padding:0}blockquote{border-left:4px solid var(--color-border);color:var(--color-text-muted);margin-inline:0;padding:.2em 1em}table{border-collapse:collapse;width:100%;margin-block:1.5em}th,td{border:1px solid var(--color-border);text-align:left;padding:.5em .75em}th{background-color:var(--color-bg-subtle)}hr{background-color:var(--color-border);border:0;height:1px;margin-block:2.5em}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:var(--space);top:var(--space);z-index:10;background-color:var(--color-bg);border:2px solid var(--color-accent);border-radius:var(--radius);padding:.5em 1em}.site-header{border-bottom:1px solid var(--color-border);background-color:var(--color-bg)}.header-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1.5rem;padding-block:.9rem;display:flex}.site-logo{color:var(--color-text);text-decoration:none;display:block}.site-logo-name{font-size:1.2rem;font-weight:700;line-height:1.3;display:block}.site-logo-tagline{color:var(--color-text-muted);font-size:.8rem;line-height:1.4;display:block}.nav-list{flex-wrap:wrap;gap:.25rem 1.25rem;margin:0;padding:0;font-size:.95rem;list-style:none;display:flex}.nav-list a{color:var(--color-text);border-bottom:2px solid #0000;padding-block:.2em;text-decoration:none}.nav-list a:hover{border-bottom-color:var(--color-border)}.nav-list a[aria-current=page]{color:var(--color-accent);border-bottom-color:var(--color-accent)}main{min-height:60vh;padding-block:1.5rem 4rem;display:block}.breadcrumbs{color:var(--color-text-muted);margin-bottom:1.5rem;font-size:.85rem}.breadcrumbs ol{flex-wrap:wrap;gap:.4em;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li+li:before{content:"›";color:var(--color-border);margin-right:.4em}.prose{max-width:var(--width-prose)}.prose>*+*{margin-top:1.2em}.prose ul,.prose ol{padding-left:1.5em}.prose li+li{margin-top:.4em}.prose img{border-radius:var(--radius)}@media (width>=48rem){.prose img{width:auto;max-height:32rem;margin-inline:auto;display:block}}.prose-note{color:var(--color-text-muted);font-size:.85rem;line-height:1.8}.page-header{margin-bottom:2.5rem}.page-lead{color:var(--color-text-muted);margin-top:0}.entry-meta{color:var(--color-text-muted);font-size:.9rem}.hero-image{margin-block:1.5rem}.hero-image img{border-radius:var(--radius);width:100%}.hero{grid-template-columns:minmax(0,1fr);align-items:center;gap:2rem;margin-block:1rem 3.5rem;display:grid}@media (width>=52rem){.hero{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:3rem}.hero-figure{order:2}}.hero-catchphrase{color:var(--color-accent);margin:0 0 .3em;font-size:1.05rem;font-weight:700;line-height:1.6}.hero h1{margin-block:.2em .4em;font-size:clamp(1.7rem,1.1rem + 2.2vw,2.6rem);line-height:1.3}.hero-lead{margin-block:0 1.25em;font-size:1.05rem;line-height:1.9}.hero-points{margin:0 0 1.75rem;padding:0;list-style:none}.hero-points li{margin-block:.55em;padding-left:1.6em;line-height:1.7;position:relative}.hero-points li:before{content:"";border-left:2px solid var(--color-accent);border-bottom:2px solid var(--color-accent);width:.7em;height:.35em;position:absolute;top:.62em;left:.15em;transform:rotate(-45deg)}.hero-actions{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;display:flex}.hero-price{margin:0;font-size:1.2rem;font-weight:700}.hero-note{color:var(--color-text-muted);margin-block:1.25em 0;font-size:.85rem;line-height:1.7}.hero-figure img{border-radius:var(--radius);width:100%;display:block}.image-note{color:var(--color-text-muted);margin:.5em 0 0;font-size:.8rem;line-height:1.7}.status-badge{border:1px solid var(--color-accent);width:fit-content;color:var(--color-accent);letter-spacing:.04em;border-radius:999px;align-self:flex-start;margin:0 0 .4em;padding:.2em .9em;font-size:.78rem;font-weight:700;display:inline-block}.card-grid{grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.card{border:1px solid var(--color-border);border-radius:var(--radius);background-color:var(--color-bg);flex-direction:column;height:100%;display:flex;overflow:hidden}.card:hover{border-color:var(--color-accent)}.card img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.card-body{flex-direction:column;flex:1;gap:.5rem;padding:1rem;display:flex}.card-title{margin:0;font-size:1.05rem;line-height:1.5}.card-title a{color:var(--color-text);text-decoration:none}.card-title a:hover{color:var(--color-accent);text-decoration:underline}.card-description{color:var(--color-text-muted);margin:0;font-size:.9rem;line-height:1.7}.card-footer{margin-top:auto;padding-top:.5rem}.tag-list{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;font-size:.78rem;list-style:none;display:flex}.tag-list li{border:1px solid var(--color-border);color:var(--color-text-muted);border-radius:999px;padding:.15em .6em}.region-filter>input[type=radio]{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.filter-label{color:var(--color-text-muted);margin:0 0 .5em;font-size:.8rem;font-weight:700}.filter-label+input+.region-button{margin-left:0}.region-filter .filter-label:not(:first-child){margin-top:.9rem}.region-button{border:1px solid var(--color-border);background-color:var(--color-bg);color:var(--color-text);cursor:pointer;border-radius:999px;align-items:center;gap:.45em;margin:0 .5rem .6rem 0;padding:.4em 1em;font-size:.88rem;display:inline-flex}.region-button:hover{border-color:var(--color-accent);color:var(--color-accent)}.region-count{color:var(--color-text-muted);font-size:.78rem}.region-filter>input[type=radio]:checked+.region-button{border-color:var(--color-accent);background-color:var(--color-accent);color:#fff}.region-filter>input[type=radio]:checked+.region-button .region-count{color:#ffffffbf}.region-filter>input[type=radio]:focus-visible+.region-button{outline:3px solid var(--color-accent);outline-offset:2px}.pager{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:1.5rem;display:none}.pager input[type=radio]{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.pager-label{color:var(--color-text-muted);font-size:.8rem;font-weight:700}.pager-button{border:1px solid var(--color-border);background-color:var(--color-bg);min-width:2.4em;color:var(--color-text);text-align:center;cursor:pointer;border-radius:999px;justify-content:center;padding:.4em .8em;font-size:.88rem;display:inline-flex}.pager-button:hover{border-color:var(--color-accent);color:var(--color-accent)}.pager input[type=radio]:checked+.pager-button,.pager:not(:has(input[type=radio]:checked)) .pager-button-1{border-color:var(--color-accent);background-color:var(--color-accent);color:#fff}.pager input[type=radio]:focus-visible+.pager-button{outline:3px solid var(--color-accent);outline-offset:2px}.event-empty{margin-top:1.5rem;display:none}.event-list{border-top:1px solid var(--color-border);margin:0;padding:0;list-style:none}.event-item{border-bottom:1px solid var(--color-border);padding-block:1.1rem}.event-date{color:var(--color-text-muted);margin:0 0 .2em;font-size:.85rem;font-weight:700}.event-name{margin:0 0 .3em;font-size:1.05rem;line-height:1.5}.event-place{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:.5em;margin:0;font-size:.9rem;display:flex}.event-region{border:1px solid var(--color-border);border-radius:999px;padding:.1em .6em;font-size:.75rem}.event-list-past .event-item{opacity:.62}.event-list-past .event-name{font-size:.95rem}.button{border:1px solid var(--color-accent);border-radius:var(--radius);background-color:var(--color-accent);color:#fff;text-align:center;padding:.7em 1.6em;font-weight:700;text-decoration:none;display:inline-block}.button:hover{background-color:var(--color-accent-hover);border-color:var(--color-accent-hover);color:#fff}.button-outline{color:var(--color-accent);background-color:#0000}.button-outline:hover{background-color:var(--color-bg-subtle);color:var(--color-accent-hover)}.button[aria-disabled=true]{background-color:var(--color-bg-subtle);border-color:var(--color-border);color:var(--color-text-muted);cursor:not-allowed;pointer-events:none}.price{font-size:1.5rem;font-weight:700}.price-note{color:var(--color-text-muted);font-size:.85rem}.product-detail{grid-template-columns:minmax(0,1fr);gap:2rem;display:grid}@media (width>=48rem){.product-detail{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.product-detail img{border-radius:var(--radius);width:100%}.photo-zoom{cursor:zoom-in;background:0 0;border:0;width:100%;margin:0;padding:0;transition:opacity .15s;display:block}.photo-zoom:hover{opacity:.88}.photo-zoom:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}.photo-zoom img{border-radius:var(--radius);width:100%;display:block}[popover].photo-lightbox{display:none}[popover].photo-lightbox:popover-open{overscroll-behavior:contain;background:0 0;border:0;place-content:center;gap:.75rem;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:clamp(.75rem,4vw,2.5rem);display:grid;overflow:auto}.photo-lightbox::backdrop{background-color:#000000d9}.lightbox-frame{justify-items:center;gap:.75rem;margin:0;display:grid}.lightbox-frame[hidden]{display:none}.photo-lightbox img{border-radius:var(--radius);object-fit:contain;background-color:#ffffff0f;width:auto;min-width:min(60vw,20rem);max-width:100%;height:auto;min-height:min(34vw,11rem);max-height:80dvh;margin-inline:auto;display:block}.photo-caption{color:#fff;text-align:center;margin:0;font-size:.85rem;line-height:1.6}.photo-counter{color:#ffffffa6;margin-top:.3em;font-size:.78rem;display:block}.photo-nav{color:#fff;cursor:pointer;background-color:#0000008c;border:1px solid #fff6;border-radius:50%;place-items:center;width:3rem;height:3rem;padding:0 0 .15em;font-size:1.9rem;line-height:1;display:grid;position:fixed;top:50%;transform:translateY(-50%)}.photo-prev{left:max(.5rem, env(safe-area-inset-left))}.photo-next{right:max(.5rem, env(safe-area-inset-right))}.photo-nav:hover{background-color:#000c}.photo-nav:focus-visible{outline-offset:2px;outline:3px solid #fff}@media (width<=30rem){.photo-nav{width:2.5rem;height:2.5rem;font-size:1.6rem}}.photo-close{top:max(.75rem, env(safe-area-inset-top));right:max(.75rem, env(safe-area-inset-right));color:#fff;cursor:pointer;background-color:#0000008c;border:1px solid #fff6;border-radius:50%;width:2.75rem;height:2.75rem;padding:0;font-size:1.1rem;line-height:1;position:fixed}.photo-close:hover{background-color:#000c}.photo-close:focus-visible{outline-offset:2px;outline:3px solid #fff}@media (prefers-reduced-motion:reduce){.photo-zoom{transition:none}}.product-gallery{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:1rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.product-gallery figure{margin:0}.product-gallery .photo-zoom img{aspect-ratio:16/9;object-fit:cover;border:1px solid var(--color-border);border-radius:var(--radius);width:100%;display:block}.product-gallery figcaption{color:var(--color-text-muted);margin-top:.35em;font-size:.8rem;line-height:1.6}.buy-box{border:1px solid var(--color-border);border-radius:var(--radius);background-color:var(--color-bg-subtle);flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.link-card{border:1px solid var(--color-border);border-left:4px solid var(--color-accent);border-radius:var(--radius);background-color:var(--color-bg-subtle);color:var(--color-text);margin-block:1.5em;padding:1rem 1.25rem;text-decoration:none;display:block}.link-card:hover{border-color:var(--color-accent);border-left-color:var(--color-accent-hover);color:var(--color-text)}.link-card .link-card-title{font-weight:700;line-height:1.5;display:block}.link-card .link-card-description{color:var(--color-text-muted);margin-top:.3em;font-size:.88rem;line-height:1.7;display:block}.link-card .link-card-domain{color:var(--color-text-muted);margin-top:.5em;font-size:.78rem;display:block}.link-button{border-radius:var(--radius);background-color:var(--color-accent);color:#fff;margin-block:1em;padding:.7em 1.8em;font-weight:700;text-decoration:none;display:inline-block}.link-button:hover{background-color:var(--color-accent-hover);color:#fff}.pr-note{color:var(--color-text-muted);margin-block:1.5em;font-size:.8rem}.ad-slot{margin-block:2rem}.site-footer{border-top:1px solid var(--color-border);background-color:var(--color-bg-subtle);color:var(--color-text-muted);padding-block:2rem;font-size:.88rem}.footer-links,.footer-social{flex-wrap:wrap;gap:.5rem 1.25rem;margin:0 0 1rem;padding:0;list-style:none;display:flex}.site-footer a{color:var(--color-text-muted)}.site-footer a:hover{color:var(--color-accent)}.copyright{margin:0}.section{margin-block:3rem}.section-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1rem;margin-bottom:1.25rem;display:flex}.section-header h2{border:0;margin:0;padding:0}.notice{border:1px dashed var(--color-border);border-radius:var(--radius);color:var(--color-text-muted);padding:1rem 1.25rem}.definition-list{margin:0}.definition-list dt{margin-top:1.25em;font-weight:700}.definition-list dd{margin:.3em 0 0;padding:0}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
