:root{--k-bg: #0a0a0a;--k-surface-1: #111110;--k-surface-2: #171614;--k-surface-3: #1d1b18;--k-line-faint: #1a1916;--k-line: #262420;--k-line-strong: #393630;--k-gold: #c9a84c;--k-gold-bright: #d4af37;--k-gold-deep: #8f7836;--k-gold-tint: rgba(201, 168, 76, .12);--k-gold-faint: rgba(201, 168, 76, .05);--k-text-strong: #e8e0d0;--k-text: #b6b0a3;--k-text-soft: #8d8779;--k-text-dim: #676253;--k-acc-shiryo: #8fa0b2;--k-acc-yomimono: #b58263;--k-acc-shiryo-tint: rgba(143, 160, 178, .12);--k-acc-yomimono-tint: rgba(181, 130, 99, .12);--k-status-up: #6abf7b;--k-status-down: #bf6a6a;--k-status-flat: #6aabbf;--k-font-display: "Noto Serif SC", "Songti SC", serif;--k-font-body: "Noto Sans SC", "PingFang SC", sans-serif;--k-font-mono: "Courier New", monospace;--k-fs-hero: clamp(2.25rem, 4.5vw, 3.5rem);--k-fs-h1: 2rem;--k-fs-h2: 1.5rem;--k-fs-h3: 1.1875rem;--k-fs-body: 1rem;--k-fs-small: .875rem;--k-fs-caption: .8125rem;--k-fs-eyebrow: .75rem;--k-lh-heading: 1.45;--k-lh-body: 1.9;--k-lh-data: 1.6;--k-ls-heading: .04em;--k-ls-eyebrow: .24em;--k-ls-button: .08em;--k-sp-1: 4px;--k-sp-2: 8px;--k-sp-3: 12px;--k-sp-4: 16px;--k-sp-5: 24px;--k-sp-6: 32px;--k-sp-7: 48px;--k-sp-8: 64px;--k-sp-9: 80px;--k-card-pad: var(--k-sp-5);--k-sect-y: var(--k-sp-9);--k-sect-x: 40px;--k-container: 1120px;--k-content: 720px;--k-grid-gap: var(--k-sp-5);--k-radius: 0;--k-ease: .18s ease;--k-shadow-pop: 0 16px 48px rgba(0, 0, 0, .55)}@media(max-width:768px){:root{--k-fs-h1: 1.625rem;--k-fs-h2: 1.3125rem;--k-sect-y: var(--k-sp-7);--k-sect-x: 20px;--k-grid-gap: var(--k-sp-4)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--k-font-body);font-size:var(--k-fs-body);line-height:var(--k-lh-body);background:var(--k-bg);color:var(--k-text);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.t-header{display:flex;align-items:center;gap:var(--k-sp-6);height:64px;padding:0 var(--k-sect-x);border-bottom:1px solid var(--k-line);background:var(--k-bg);position:sticky;top:0;z-index:100}.t-logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}.t-logo-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center}.t-logo-icon svg{width:100%;height:100%}.t-logo-text{font-family:var(--k-font-display);font-size:1.125rem;font-weight:700;letter-spacing:.08em;color:var(--k-text-strong)}.t-nav{display:flex;gap:var(--k-sp-5);margin-left:auto;height:100%}.t-nav>a,.t-nav-group>button{display:inline-flex;align-items:center;height:100%;font-family:var(--k-font-body);font-size:var(--k-fs-caption);letter-spacing:.06em;color:var(--k-text-soft);text-decoration:none;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;padding:0;transition:color var(--k-ease)}.t-nav>a:hover,.t-nav-group>button:hover{color:var(--k-gold)}.t-nav>a.is-active,.t-nav-group>button.is-active{color:var(--k-text-strong);border-bottom-color:var(--k-gold)}.t-nav-group{position:relative;height:100%}.t-nav-group>button:after{content:" ▾";font-size:9px;opacity:.5}.t-nav-drop{display:none;position:absolute;top:calc(100% + 1px);left:-16px;min-width:180px;background:var(--k-surface-1);border:1px solid var(--k-line);padding:var(--k-sp-2) 0;z-index:100}.t-nav-group:hover .t-nav-drop,.t-nav-group:focus-within .t-nav-drop{display:block}.t-nav-drop a{display:block;padding:10px 20px;font-size:var(--k-fs-caption);color:var(--k-text-soft);text-decoration:none;white-space:nowrap;transition:color var(--k-ease),background var(--k-ease)}.t-nav-drop a:hover{color:var(--k-gold);background:var(--k-surface-2)}.t-account{position:relative;display:inline-flex;align-items:center;justify-content:center;width:30px;height:26px;color:var(--k-text-dim);border:1px solid var(--k-line-strong);transition:border-color var(--k-ease),color var(--k-ease);flex-shrink:0}.t-account:hover{border-color:var(--k-gold);color:var(--k-gold)}.t-account svg{width:14px;height:14px}.t-burger{margin-left:auto;display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:10px;background:transparent;border:1px solid var(--k-line-strong);cursor:pointer}.t-burger span{display:block;height:1px;background:var(--k-text-strong)}@media(max-width:768px){.t-header{height:56px;padding:0 16px}.t-nav{display:none}.t-burger{display:inline-flex}}.k-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 28px;font-family:var(--k-font-body);font-size:var(--k-fs-small);font-weight:500;letter-spacing:var(--k-ls-button);line-height:1;color:var(--k-text-strong);background:transparent;border:1px solid var(--k-line-strong);border-radius:var(--k-radius);cursor:pointer;text-decoration:none;transition:background var(--k-ease),border-color var(--k-ease),color var(--k-ease)}.k-btn--primary{background:var(--k-gold);border-color:var(--k-gold);color:var(--k-bg)}.k-btn--primary:hover{background:var(--k-gold-bright);border-color:var(--k-gold-bright)}.k-btn--secondary{border-color:var(--k-gold);color:var(--k-gold)}.k-btn--secondary:hover{background:var(--k-gold-tint)}.k-btn--small{padding:10px 18px;font-size:var(--k-fs-caption)}.k-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;font-family:var(--k-font-body);font-size:var(--k-fs-eyebrow);font-weight:500;letter-spacing:.08em;line-height:1.5;color:var(--k-text-soft);border:1px solid var(--k-line-strong);border-radius:var(--k-radius)}.k-badge--gold{color:var(--k-gold);border-color:var(--k-gold);background:var(--k-gold-tint)}.k-badge--shiryo{color:var(--k-acc-shiryo);border-color:var(--k-acc-shiryo);background:var(--k-acc-shiryo-tint)}.k-badge--yomimono{color:var(--k-acc-yomimono);border-color:var(--k-acc-yomimono);background:var(--k-acc-yomimono-tint)}.k-badge--onsale{color:var(--k-status-up);border-color:#6abf7b80}.k-card{display:block;background:var(--k-surface-1);border:1px solid var(--k-line);border-radius:var(--k-radius);color:inherit;text-decoration:none;transition:border-color var(--k-ease),background var(--k-ease)}.k-card:hover{border-color:var(--k-gold);background:var(--k-surface-2)}.k-card__body{padding:var(--k-card-pad);display:flex;flex-direction:column;gap:var(--k-sp-3)}.k-card__title{margin:0;font-family:var(--k-font-display);font-size:var(--k-fs-h3);font-weight:600;letter-spacing:var(--k-ls-heading);line-height:var(--k-lh-heading);color:var(--k-text-strong)}.k-card__meta{margin:0;font-size:var(--k-fs-caption);line-height:var(--k-lh-data);color:var(--k-text-soft)}.k-card__desc{margin:0;font-size:var(--k-fs-small);line-height:1.8;color:var(--k-text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.k-card__foot{display:flex;flex-direction:column;gap:var(--k-sp-2);border-top:1px solid var(--k-line-faint);padding-top:var(--k-sp-3);margin-top:var(--k-sp-1)}.k-card__seller{font-size:var(--k-fs-caption);line-height:var(--k-lh-data);color:var(--k-text-dim);margin:0}.product-image{aspect-ratio:4 / 3;background:var(--k-bg);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:var(--k-sp-1);border-bottom:1px solid var(--k-line);overflow:hidden}.product-image img{width:100%;height:100%;object-fit:contain;padding:var(--k-sp-3)}.product-image .sample-label{font-size:var(--k-fs-small);letter-spacing:6px;color:var(--k-text-dim);font-weight:600}.product-image .sample-icon{font-size:36px;color:var(--k-line-strong)}.k-price{font-family:var(--k-font-display);font-size:1.375rem;font-weight:600;color:var(--k-text-strong);font-feature-settings:"tnum"}.k-price small{font-size:var(--k-fs-caption);font-weight:400;color:var(--k-text-soft);margin-right:6px}.k-sect-head{display:flex;flex-direction:column;gap:var(--k-sp-2);padding-bottom:var(--k-sp-4);border-bottom:1px solid var(--k-line);margin-bottom:var(--k-sp-6)}.k-eyebrow{font-family:var(--k-font-body);font-size:var(--k-fs-eyebrow);font-weight:500;letter-spacing:var(--k-ls-eyebrow);color:var(--k-gold);text-transform:uppercase}.k-sect-head h2,.k-sect-title{margin:0;font-family:var(--k-font-display);font-size:var(--k-fs-h2);font-weight:600;letter-spacing:var(--k-ls-heading);line-height:var(--k-lh-heading);color:var(--k-text-strong)}.k-sect-head .k-more{margin-left:auto;align-self:flex-end}.k-link{color:var(--k-gold);text-decoration:underline;text-underline-offset:4px;text-decoration-color:#c9a84c66;transition:color var(--k-ease),text-decoration-color var(--k-ease)}.k-link:hover{color:var(--k-gold-bright);text-decoration-color:var(--k-gold-bright)}.k-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--k-grid-gap)}@media(max-width:1024px){.k-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.k-grid{grid-template-columns:1fr}}.tp-split{max-width:var(--k-container);margin:0 auto;padding:80px var(--k-sect-x);display:grid;grid-template-columns:6fr 5fr;gap:var(--k-sp-8);align-items:center}.tp-hero-copy{display:flex;flex-direction:column;gap:var(--k-sp-5);align-items:flex-start}.tp-hero-copy h1{margin:0;font-family:var(--k-font-display);font-size:var(--k-fs-hero);font-weight:700;letter-spacing:var(--k-ls-heading);line-height:1.6;color:var(--k-text-strong);text-align:left}.tp-hero-copy h1 em{font-style:normal;color:var(--k-gold)}.tp-headline{display:flex;flex-direction:column}.tp-eyebrow{margin:0 0 var(--k-sp-2);font-family:var(--k-font-body);font-size:var(--k-fs-eyebrow);font-weight:500;letter-spacing:.08em;color:var(--k-gold)}.tp-sub{margin:0;font-family:var(--k-font-display);font-size:1.0625rem;letter-spacing:.08em;color:var(--k-gold)}.tp-desc{margin:0;max-width:600px;font-size:var(--k-fs-small);line-height:1.9;color:var(--k-text-soft)}.tp-cta-row{display:flex;gap:var(--k-sp-3);flex-wrap:wrap}.tp-stats{display:flex;gap:var(--k-sp-7);margin-top:var(--k-sp-2)}.tp-stat{display:flex;flex-direction:column;gap:2px}.tp-stat strong{font-family:var(--k-font-display);font-size:1.5rem;font-weight:600;color:var(--k-text-strong);font-feature-settings:"tnum"}.tp-stat span{font-size:var(--k-fs-caption);color:var(--k-text-soft);letter-spacing:.08em}.tp-feature-card{display:block}@media(max-width:768px){.tp-split{grid-template-columns:1fr;gap:var(--k-sp-6);padding:var(--k-sp-7) var(--k-sect-x)}.tp-hero-copy h1{font-size:1.875rem}.tp-stats{gap:var(--k-sp-5);flex-wrap:wrap}.tp-stat strong{font-size:1.25rem}}.tp-sect{max-width:var(--k-container);margin:0 auto;padding:var(--k-sect-y) var(--k-sect-x) 0}.tp-sect:last-of-type{padding-bottom:var(--k-sect-y)}.tp-editorial{display:grid;grid-template-columns:7fr 5fr;gap:var(--k-sp-7);align-items:start}.tp-ed-feature .k-card__desc{font-size:var(--k-fs-small);line-height:1.8;color:var(--k-text);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.tp-ed-list{display:flex;flex-direction:column}.tp-ed-item{display:flex;flex-direction:column;gap:var(--k-sp-1);padding:var(--k-sp-4) 0;border-bottom:1px solid var(--k-line-faint);text-decoration:none}.tp-ed-item:first-child{padding-top:0}.tp-ed-item .k-card__cat{font-size:var(--k-fs-eyebrow);letter-spacing:var(--k-ls-eyebrow);color:var(--k-acc-yomimono)}.tp-ed-item h4{margin:0;font-family:var(--k-font-display);font-size:var(--k-fs-h3);font-weight:600;line-height:var(--k-lh-heading);color:var(--k-text-strong);letter-spacing:var(--k-ls-heading);transition:color var(--k-ease)}.tp-ed-item:hover h4{color:var(--k-gold)}.tp-ed-item time{font-size:var(--k-fs-caption);color:var(--k-text-dim)}.tp-ed-more{list-style:none;margin:var(--k-sp-6) 0 0;padding:var(--k-sp-6) 0 0;border-top:1px solid var(--k-line);display:grid;grid-template-columns:1fr 1fr;gap:var(--k-sp-1) var(--k-sp-6)}.tp-ed-more li{margin:0}.tp-ed-more a{display:flex;align-items:baseline;gap:var(--k-sp-3);padding:var(--k-sp-2) 0;text-decoration:none;border-bottom:1px solid var(--k-line-faint)}.tp-ed-more__cat{flex:none;font-size:var(--k-fs-eyebrow);letter-spacing:var(--k-ls-eyebrow);color:var(--k-acc-yomimono)}.tp-ed-more__title{flex:1;font-size:var(--k-fs-small);color:var(--k-text);line-height:var(--k-lh-heading);transition:color var(--k-ease)}.tp-ed-more a:hover .tp-ed-more__title{color:var(--k-gold)}.tp-ed-more time{flex:none;font-size:var(--k-fs-caption);color:var(--k-text-dim)}@media(max-width:768px){.tp-editorial,.tp-ed-more{grid-template-columns:1fr}}.tp-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--k-grid-gap)}.tp-tile{display:flex;flex-direction:column;gap:var(--k-sp-2);padding:var(--k-sp-5)}.tp-tile .k-card__title{font-size:var(--k-fs-h3)}.tp-tile-count{font-size:var(--k-fs-caption);color:var(--k-text-soft)}.tp-tile-go{margin-top:auto;font-size:var(--k-fs-caption);color:var(--k-gold)}@media(max-width:1024px){.tp-tiles{grid-template-columns:1fr 1fr}}@media(max-width:560px){.tp-tiles{grid-template-columns:1fr}}.tp-cat-groups{display:flex;flex-direction:column;gap:var(--k-sp-7)}.tp-cat-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--k-sp-3)}.tp-cat-label{margin:0;font-family:var(--k-font-display);font-size:var(--k-fs-body);font-weight:600;color:var(--k-text-soft);letter-spacing:var(--k-ls-heading)}.tp-cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--k-sp-3)}.tp-cat-card{display:flex;flex-direction:column;gap:var(--k-sp-1);padding:var(--k-sp-4);align-items:flex-start}.tp-cat-card .k-eyebrow{letter-spacing:.12em}.tp-cat-name{font-family:var(--k-font-display);font-size:var(--k-fs-body);font-weight:600;color:var(--k-text-strong);letter-spacing:var(--k-ls-heading)}.k-table{width:100%;border-collapse:collapse;font-family:var(--k-font-body);font-size:var(--k-fs-small);line-height:var(--k-lh-data)}.k-table th{padding:var(--k-sp-3) var(--k-sp-4);text-align:left;font-size:var(--k-fs-eyebrow);font-weight:500;letter-spacing:.08em;color:var(--k-text-soft);border-bottom:1px solid var(--k-line-strong);white-space:nowrap}.k-table td{padding:var(--k-sp-3) var(--k-sp-4);color:var(--k-text);border-bottom:1px solid var(--k-line-faint);font-feature-settings:"tnum"}.k-table tbody tr{transition:background var(--k-ease)}.k-table tbody tr:hover{background:var(--k-surface-2)}.k-table .num{text-align:right}.k-table .up{color:var(--k-status-up)}.k-table .down{color:var(--k-status-down)}.k-table .flat{color:var(--k-status-flat)}.k-table strong{color:var(--k-text-strong);font-weight:600}.k-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.k-table-wrap .k-table{min-width:560px}.t-footer{border-top:1px solid var(--k-line);padding:var(--k-sp-7) var(--k-sect-x);margin-top:var(--k-sect-y)}.t-footer-grid{max-width:var(--k-container);margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--k-sp-6)}.t-footer h4{margin:0 0 var(--k-sp-3);font-size:var(--k-fs-eyebrow);font-weight:500;letter-spacing:var(--k-ls-eyebrow);color:var(--k-text-soft)}.t-footer ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--k-sp-2)}.t-footer a{font-size:var(--k-fs-caption);color:var(--k-text-soft);text-decoration:none}.t-footer a:hover{color:var(--k-gold)}.t-footer .t-copy{margin-top:var(--k-sp-3);font-size:var(--k-fs-caption);line-height:1.8;color:var(--k-text-dim)}.t-footer .t-logo{margin-bottom:var(--k-sp-3)}@media(max-width:768px){.t-footer{padding:var(--k-sp-6) 20px;margin-top:var(--k-sp-7)}.t-footer-grid{grid-template-columns:1fr 1fr;gap:var(--k-sp-5)}}.modal-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;z-index:1000;justify-content:center;align-items:center}.modal-overlay.active{display:flex}.modal{background:var(--k-bg);border:1px solid var(--k-line);border-radius:var(--k-r-2);padding:var(--k-sp-6);width:100%;max-width:400px;position:relative}.modal-close{position:absolute;top:var(--k-sp-3);right:var(--k-sp-3);background:none;border:none;color:var(--k-text-dim);cursor:pointer;font-size:1.5rem}.modal h2{margin-bottom:var(--k-sp-4);text-align:center}.modal-form{display:flex;flex-direction:column;gap:var(--k-sp-3)}.modal-form input{padding:12px;border:1px solid var(--k-line);border-radius:var(--k-r-1);background:var(--k-bg-soft);color:var(--k-text);font-size:1rem}.modal-form input:focus{outline:none;border-color:var(--k-gold)}.modal-form button{padding:14px;border:none;border-radius:var(--k-r-1);background:var(--k-gold);color:var(--k-bg);font-weight:600;cursor:pointer;font-size:1rem}.modal-form button:hover{opacity:.9}.modal-link{text-align:center;margin-top:var(--k-sp-3);font-size:var(--k-fs-caption);color:var(--k-text-dim)}.modal-link a{color:var(--k-gold)}
