*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:'Hiragino Kaku Gothic ProN','Hiragino Sans',Meiryo,'MS PGothic',sans-serif;font-size:13px;line-height:1.8;color:#e8e8ff;background-color:#030510;min-width:320px;-webkit-text-size-adjust:100%}#tile-bg{position:fixed;inset:0;z-index:0;display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(2,1fr);gap:2px;pointer-events:none;background:#030510}@media screen and (max-width:768px){#tile-bg{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(5,1fr)}}#tile-bg .tile-img{width:100%;height:100%;object-fit:contain;object-position:center center;filter:brightness(0.60) saturate(0.78);background:#030510}#tile-overlay{position:fixed;inset:0;z-index:1;background:linear-gradient(135deg,rgba(5,10,50,0.72) 0%,rgba(3,6,38,0.64) 50%,rgba(4,8,45,0.70) 100%);pointer-events:none}#glass-lines{position:fixed;inset:0;z-index:2;pointer-events:none}#glass-lines svg{width:100%;height:100%}a{color:#c8e6ff;text-decoration:none}a:hover{color:#ffffff;text-decoration:underline}img{max-width:100%;height:auto;display:block;border:none}.page-wrapper{position:relative;z-index:3;max-width:760px;margin:0 auto;padding:0 12px 80px}.breadcrumb-nav{max-width:760px;margin:0 auto;padding:6px 12px;font-size:0.78rem;background:rgba(0,0,0,0.35);position:relative;z-index:3}.breadcrumb-list{list-style:none;display:flex;flex-wrap:wrap;gap:0;padding:0;color:#c8e6ff}.breadcrumb-list li + li::before{content:"　›　";color:#668899}.breadcrumb-list a{color:#c8e6ff}.hw-header{background:rgba(5,10,40,0.90);border-bottom:2px solid rgba(100,160,255,0.25);padding:10px 12px 0;position:relative;z-index:3}.hw-header-brand{font-size:clamp(0.7rem,2vw,0.82rem);color:rgba(200,220,255,0.70);margin-bottom:6px;line-height:1.5}.hw-header-brand a{color:rgba(200,220,255,0.90);text-decoration:none}.hw-header-brand a:hover{color:#fff}.hw-header-brand .sep{color:rgba(200,220,255,0.35);margin:0 0.3em}.hw-header-title{font-size:clamp(1.1rem,4vw,1.5rem);font-weight:bold;color:#ffffff;text-align:center;padding:8px 0 10px;letter-spacing:0.04em}.hw-tab-nav{display:flex;gap:4px;flex-wrap:wrap;padding-top:10px}.hw-tab-nav a{flex:1;display:flex;align-items:center;justify-content:center;min-height:36px;padding:6px 10px;text-align:center;font-size:clamp(12px,2.5vw,14px);font-weight:bold;color:rgba(180,210,255,0.85);text-decoration:none;border-radius:5px 5px 0 0;border:1px solid rgba(80,130,220,0.35);background:rgba(10,20,60,0.55);transition:background 0.18s,color 0.18s}.hw-tab-nav a:hover{background:rgba(20,50,120,0.75);color:#ffffff;text-decoration:none}.hw-tab-nav a.active{background:rgba(15,40,100,0.90);color:#c8e6ff;border-color:rgba(80,160,255,0.45)}.hw-section{padding:20px 0 10px}.hw-section-title{font-size:clamp(1rem,3.5vw,1.25rem);font-weight:bold;color:#c8e6ff;text-align:center;padding:10px 0 8px;border-bottom:1px solid rgba(80,130,220,0.30);margin-bottom:14px}.hw-intro{background:rgba(5,15,45,0.72);border:1px solid rgba(60,100,200,0.20);border-radius:6px;padding:12px 16px;margin-bottom:14px;font-size:0.88rem;color:#d8eaff;line-height:1.85}.hw-intro p{margin-bottom:0.7em}.hw-intro p:last-child{margin-bottom:0}.hw-intro strong{color:#c8e6ff}.hw-intro a{color:#90c8ff}.hw-note{font-size:0.82rem;color:rgba(180,210,255,0.75);margin:4px 0}.hw-product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0}.hw-item{background:rgba(10,20,55,0.65);border:1px solid rgba(60,100,200,0.22);border-radius:8px;overflow:hidden;padding:8px 6px 10px;transition:border-color 0.2s,transform 0.2s}.hw-item:hover{border-color:rgba(80,160,255,0.50);transform:translateY(-2px)}.hw-item a{display:block;cursor:zoom-in}.hw-item img{width:100%;height:120px;object-fit:contain;display:block;margin:0 auto 6px;background:rgba(255,255,255,0.04);border-radius:4px}.hw-item-label{font-size:0.75rem;color:#c8e6ff;font-weight:bold;text-align:center;margin-bottom:6px;line-height:1.4}.hw-spec-list{list-style:none;padding:0;margin:0;font-size:0.68rem;color:rgba(180,210,255,0.80);line-height:1.6}.hw-spec-list li{padding:1px 0}.hw-spec-list li::before{content:"・";color:rgba(100,160,255,0.60)}@media (max-width:640px){.hw-product-grid{grid-template-columns:repeat(3,1fr);gap:8px}.hw-item img{height:95px}}@media (max-width:400px){.hw-product-grid{grid-template-columns:repeat(2,1fr);gap:6px}}.hw-tokushou{text-align:center;font-size:0.82rem;margin:14px 0}.hw-tokushou a{color:#90c8ff}.hw-hr{border:none;border-top:1px solid rgba(60,100,200,0.25);margin:14px 0}.hw-hr-thick{border:none;border-top:3px solid rgba(60,100,200,0.35);margin:20px 0}.cta-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:18px 0}.cta-btn{display:inline-block;padding:12px 22px;border-radius:4px;font-size:0.95rem;font-weight:bold;text-decoration:none;text-align:center;transition:opacity 0.2s;min-width:160px}.cta-btn:hover{opacity:0.85;text-decoration:none}.cta-btn--contact{background:#e8a000;color:#000000}.cta-btn--tel{background:#2a7a2a;color:#ffffff}.access-block{text-align:center;margin:10px 0 18px;font-size:0.82rem;color:#d8eaff}.access-block a{color:#c8e6ff}.access-block .reservation-note{display:block;color:#ffcccc;margin-top:4px;font-size:0.78rem}.site-footer{text-align:center;padding:16px 10px;border-top:1px solid rgba(60,100,200,0.25);margin-top:20px;font-size:0.78rem;color:rgba(160,190,230,0.65)}.site-footer a{color:rgba(160,190,230,0.65)}.site-footer a:hover{color:#fff}.float-btns{position:fixed;bottom:20px;left:0;right:0;display:flex;flex-direction:column;align-items:flex-start;padding-left:12px;gap:8px;z-index:1000;pointer-events:none}.float-btns>*{pointer-events:auto}.btn-call{display:flex;align-items:center;gap:7px;background:#c8251a;color:#fff;font-size:0.82em;font-weight:bold;padding:9px 14px;border-radius:30px;text-decoration:none;box-shadow:0 3px 10px rgba(0,0,0,0.6);white-space:nowrap;transition:background 0.2s}.btn-call:hover{background:#e02d20;color:#fff;text-decoration:none}.btn-call .icon{font-size:1.1em}.btn-inquiry{display:flex;align-items:center;gap:7px;background:#0a3a6a;color:#fff;font-size:0.82em;font-weight:bold;padding:9px 14px;border-radius:30px;text-decoration:none;box-shadow:0 3px 10px rgba(0,0,0,0.6);white-space:nowrap;border:1px solid #1a6aaa;transition:background 0.2s}.btn-inquiry:hover{background:#0d4e8e;color:#fff;text-decoration:none}.btn-inquiry .icon{font-size:1.1em}.btn-access{display:flex;align-items:center;gap:7px;background:#061a3a;color:#fff;font-size:0.82em;font-weight:bold;padding:9px 14px;border-radius:30px;text-decoration:none;box-shadow:0 3px 10px rgba(0,0,0,0.6);white-space:nowrap;border:1px solid #1a4a7a;transition:background 0.2s}.btn-access:hover{background:#0a2a58;color:#fff;text-decoration:none}.btn-access .icon{font-size:1.1em}.btn-totop{position:fixed;bottom:20px;right:12px;width:46px;height:46px;background:rgba(10,30,90,0.85);border:1px solid #1a5aaa;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.3em;text-decoration:none;box-shadow:0 3px 10px rgba(0,0,0,0.5);z-index:1000;transition:background 0.2s}.btn-totop:hover{background:rgba(15,45,120,0.95);color:#fff;text-decoration:none}.lb-overlay{display:none;position:fixed;inset:0;z-index:9000;background:rgba(0,0,0,.82);align-items:center;justify-content:center;padding:24px}.lb-overlay.open{display:flex}.lb-frame{position:relative;display:inline-flex;flex-direction:column;align-items:center;max-width:90vw;max-height:90vh}.lb-frame img{display:block;max-width:90vw;max-height:82vh;width:auto;height:auto;object-fit:contain;border-radius:6px;box-shadow:0 8px 40px rgba(0,0,0,.9)}#lb-caption{color:#c8e6ff;font-size:0.75rem;line-height:1.5;margin-top:8px;text-align:center;max-width:90vw;max-height:48px;overflow:hidden}.lb-close{position:absolute;top:-14px;right:-14px;width:28px;height:28px;font-size:16px;line-height:28px;text-align:center;color:#030510;background:#c8e6ff;border-radius:50%;border:none;cursor:pointer;font-weight:bold;box-shadow:0 2px 8px rgba(0,0,0,.5);z-index:9001}.lb-close:hover{background:#fff}.hw-item a{cursor:zoom-in}@media screen and (max-width:600px){.hw-tab-nav{gap:3px}.hw-tab-nav a{font-size:12px;min-height:32px}.float-btns{padding-left:8px;gap:6px;bottom:16px}.btn-call,.btn-inquiry,.btn-access{font-size:0.75em;padding:8px 11px}.btn-totop{bottom:16px;right:8px;width:42px;height:42px;font-size:1.1em}}