@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#173e32;--muted:#6b7972;--line:#dde3de;--paper:#f5f7f3;--lime:#def588}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:Manrope,'Noto Sans JP',sans-serif;font-size:16px}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #57836e;outline-offset:3px}header{height:100px;margin:0 4.6%;display:flex;align-items:center;border-bottom:1px solid var(--line);gap:60px}.logo{font-size:36px;font-weight:800;letter-spacing:-2px;line-height:1}.logo span{display:block;font-size:10px;letter-spacing:2px;margin-top:9px}nav{display:flex;gap:30px;margin-left:auto;align-items:center}nav a,nav button{font-size:14px;background:none;border:0;padding:15px 0}nav .active{border-bottom:2px solid var(--ink)}.edition{font-size:12px;letter-spacing:2px;color:var(--muted)}.intro{margin:0 4.6%;padding:48px 0 43px;display:flex;align-items:center;justify-content:space-between}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;margin:0 0 14px}h1{font-size:clamp(25px,3vw,40px);font-weight:500;letter-spacing:.03em;line-height:1.5;margin:0 0 14px}.lead{font-size:14px;color:var(--muted);margin:0;line-height:1.8}.intro-no{display:flex;flex-direction:column;gap:12px;text-align:right}.intro-no span{font-size:11px;letter-spacing:2px;line-height:1.7}.intro-no strong{font-size:45px;letter-spacing:-3px;font-weight:400}main{display:grid;grid-template-columns:265px minmax(0,1fr);border-top:1px solid var(--line)}aside{padding:30px 24px 40px 28px;background:var(--paper);border-right:1px solid var(--line)}.aside-head{font-size:12px;font-weight:700;letter-spacing:1.5px;margin-bottom:18px;display:flex;justify-content:space-between}.aside-head>span{color:var(--muted)}.source{width:100%;border:0;background:none;display:flex;text-align:left;justify-content:space-between;gap:10px;padding:16px 12px;margin:3px 0;border-radius:3px;align-items:center}.source b{font-size:14px;font-weight:500}.source small{display:block;font-size:11px;letter-spacing:.4px;color:var(--muted);margin-top:7px}.source>span{font-size:12px}.source.selected{background:var(--ink);color:#fff}.source.selected small{color:#c5d4ca}.category-title{margin-top:36px}.cat{display:flex;width:100%;justify-content:space-between;padding:9px 12px;border:0;background:transparent;text-align:left;font-size:14px;border-radius:3px;gap:8px}.cat:hover,.cat.selected{background:#e2e9df}.cat span{font-size:12px;color:var(--muted)}.official{margin-top:35px;border-top:1px solid var(--line);padding-top:24px}.official>span{font-size:12px;color:var(--muted)}.official a{font-size:14px;display:flex;justify-content:space-between;margin-top:18px}.workspace{padding:30px 4vw 45px;min-width:0}.searchbar{height:62px;background:var(--paper);border:1px solid var(--line);border-radius:4px;display:flex;align-items:center;gap:16px;padding:0 22px}.searchbar input{width:100%;border:0;background:none;outline:0;color:var(--ink);min-width:0}.searchbar input::placeholder{color:#859189;font-size:14px}.searchbar kbd{background:#fff;border:1px solid var(--line);border-radius:4px;padding:3px 8px;color:#7c887f}.quick{display:flex;gap:8px;align-items:center;margin:14px 0 30px;flex-wrap:wrap}.quick>span{font-size:12px;color:var(--muted);margin-right:3px}.quick button{background:white;border:1px solid var(--line);border-radius:20px;padding:5px 12px;font-size:12px}.quick button:hover{background:var(--lime)}.results-head{display:flex;justify-content:space-between;align-items:center;gap:14px}.results-head h2{font-size:23px;font-weight:500;margin:0}.results-head p{font-size:13px;color:var(--muted);margin:9px 0 22px}.sort{font-size:12px;color:var(--muted);display:flex;gap:8px;align-items:center}.sort select{padding:9px 10px;font-size:12px;border:1px solid var(--line);border-radius:4px;background:white;color:var(--ink);max-width:180px}.index-note{background:var(--lime);padding:14px 18px;display:flex;align-items:center;gap:16px;border-radius:3px;margin-bottom:20px;font-size:12px;line-height:1.7}.badge{font-size:10px;letter-spacing:1px;border:1px solid #51704c;border-radius:20px;padding:3px 9px;white-space:nowrap}.table-head,.product{display:grid;grid-template-columns:minmax(150px,1fr) 145px 100px 70px;align-items:center;gap:18px}.table-head{font-size:11px;letter-spacing:.7px;color:var(--muted);padding:0 16px 12px;border-bottom:1px solid var(--line)}.product{padding:20px 16px;border-bottom:1px solid var(--line);width:100%;text-align:left;background:white;border-top:0;border-left:0;border-right:0;min-height:100px}.product:hover{background:#f7f9f4}.product-title{font-size:15px;font-weight:500;display:block;margin-bottom:8px;line-height:1.6}.product-code{font-size:12px;color:var(--muted);letter-spacing:.5px}.product-category{font-size:12px}.page-label{font-size:12px;color:var(--muted);display:block;line-height:1.8}.page-label b{color:var(--ink);font-weight:500}.detail-button{font-size:12px;border:1px solid var(--line);padding:8px 12px;border-radius:3px;text-align:center}.product:hover .detail-button{background:var(--ink);border-color:var(--ink);color:white}.pagination{display:flex;justify-content:center;align-items:center;gap:25px;margin:30px 0}.pagination button{background:white;border:1px solid var(--line);padding:10px 15px;font-size:13px;border-radius:3px}.pagination button:disabled{opacity:.35;cursor:default}.pagination span{font-size:13px;color:var(--muted)}.footnote{font-size:12px;color:var(--muted);line-height:1.9;max-width:800px}.empty{padding:60px 12px;text-align:center;color:var(--muted)}.empty h3{color:var(--ink);font-weight:500}.empty button{border:1px solid var(--line);padding:10px 20px;background:#fff;border-radius:3px}footer{border-top:1px solid var(--line);padding:35px 4.6%;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:1px;color:var(--muted)}.footer-logo{font-size:26px;letter-spacing:-1px;font-weight:800;color:var(--ink)}dialog{width:min(660px,calc(100% - 30px));padding:0;border:0;border-radius:8px;color:var(--ink);box-shadow:0 25px 90px #12332430}dialog::backdrop{background:#10251b80;backdrop-filter:blur(3px)}.dialog-top{padding:25px 30px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px}.dialog-top h2{font-size:22px;font-weight:500;line-height:1.6;margin:8px 0 0}.dialog-top .eyebrow{font-size:10px}.close{border:0;background:var(--paper);border-radius:50%;width:38px;height:38px;font-size:26px;flex-shrink:0}.detail-body{padding:30px}.code-panel{display:flex;flex-wrap:wrap;align-items:center;gap:12px;background:var(--paper);padding:20px;border-radius:4px}.code-panel>span{font-size:12px;width:100%;color:var(--muted)}.code-panel strong{font-size:24px;letter-spacing:.4px;overflow-wrap:anywhere}.code-panel button{font-size:12px;border:1px solid var(--line);border-radius:3px;background:white;padding:8px 12px;margin-left:auto}dl{display:grid;grid-template-columns:120px 1fr;font-size:14px;gap:0;margin:25px 0}dt,dd{margin:0;padding:12px 0;border-bottom:1px solid var(--line)}dt{color:var(--muted)}.detail-note,.detail-body p{line-height:1.9;font-size:14px}.catalog-link{display:block;text-align:center;padding:17px;background:var(--ink);color:white;border-radius:4px;margin-top:22px;font-size:14px}.small{color:var(--muted);font-size:12px!important}.example{display:flex;gap:25px;flex-wrap:wrap;background:var(--lime);padding:20px;margin:25px 0}.example span{color:var(--muted)}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:30px;padding:12px 24px;font-size:14px;pointer-events:none;opacity:0;transition:opacity .2s}#toast.show{opacity:1}.mobile{display:none}@media(min-width:1500px){body{max-width:1600px;margin:auto}}@media(max-width:1050px){main{grid-template-columns:225px minmax(0,1fr)}aside{padding:25px 15px}.workspace{padding:25px}.table-head,.product{grid-template-columns:minmax(120px,1fr) 105px 80px;gap:12px}.detail-button,.table-head>span:last-child{display:none}.edition{display:none}.intro-no{display:none}.index-note{gap:10px}.badge{display:none}}@media(max-width:720px){header{height:85px;gap:15px;margin:0 6%}nav{gap:18px}nav a,nav button{font-size:12px}.logo{font-size:31px}.logo span{font-size:8px}.intro{margin:0 6%;padding:32px 0}.mobile{display:block}.lead{font-size:13px;max-width:340px}h1{font-size:29px;line-height:1.5}main{display:block}aside{padding:16px 6%;border-bottom:1px solid var(--line);border-right:0;display:flex;flex-wrap:wrap;gap:6px}.aside-head,.category-title,.official{display:none}.source{width:auto;padding:11px 12px;flex:1;min-width:85px;justify-content:center;text-align:center;gap:0}.source b{font-size:12px}.source small,.source>span{display:none}#categories{display:flex;gap:5px;overflow:auto;width:100%;margin-top:10px;padding-bottom:5px}.cat{width:auto;flex-shrink:0;border:1px solid var(--line);font-size:12px;gap:8px;padding:7px 10px}.workspace{padding:22px 6% 30px}.searchbar{padding:0 15px;height:56px}.searchbar input{font-size:14px}.searchbar input::placeholder{font-size:12px}.searchbar kbd{display:none}.quick>span{width:100%;margin-bottom:4px}.quick{margin-bottom:26px}.results-head h2{font-size:19px}.sort{font-size:0}.sort select{font-size:11px;width:122px;padding:8px}.index-note{font-size:11px;padding:12px}.table-head,.product{grid-template-columns:minmax(100px,1fr) 72px;gap:15px}.product-category,.table-head>span:nth-child(2){display:none}.product{padding:17px 5px}.product-title{font-size:14px}.product-code{font-size:11px}.table-head{padding-left:5px}.page-label{font-size:11px}.pagination{gap:15px}.pagination button{font-size:12px;padding:9px 12px}footer{padding:25px 6%;flex-wrap:wrap;gap:12px}footer>span:last-child{width:100%;font-size:10px}.dialog-top{padding:20px}.detail-body{padding:20px}.code-panel strong{font-size:19px}.dialog-top h2{font-size:18px}dl{grid-template-columns:100px 1fr;font-size:13px}}
/* Photography-led catalogue */
#products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 20px}.product{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;border:1px solid var(--line);border-radius:5px;overflow:hidden;min-width:0}.product:hover{background:#fff;border-color:#9dad9f;box-shadow:0 7px 20px #14382b09}.card-photo{height:230px;background:#fbfcfa;display:flex;align-items:center;justify-content:center;padding:20px;border-bottom:1px solid #edf0ea;position:relative}.card-photo img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.image-tag{position:absolute;bottom:9px;left:10px;font-size:10px;color:#586e60;background:#ffffffdb;border-radius:3px;padding:3px 6px}.card-info{padding:17px;display:flex;flex-direction:column;flex:1}.product-title{font-size:14px;line-height:1.7;margin-bottom:8px}.product-code{font-size:11px;overflow-wrap:anywhere;letter-spacing:0}.card-bottom{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-top:17px;border-top:1px solid #edf0ea;padding-top:12px}.product-category{font-size:11px;color:var(--muted)}.card-bottom .detail-button{border:0;padding:0;font-size:11px;display:block}.product:hover .detail-button{background:none;color:var(--ink)}#products>.empty{grid-column:1/-1}.index-note{margin-bottom:25px}#detail{width:min(1000px,calc(100% - 30px));max-height:92vh}.detail-layout{display:grid;grid-template-columns:1.1fr 1fr}.photo-side{padding:28px;background:var(--paper)}#mainPhotoButton{display:block;width:100%;height:380px;background:white;border:0;border-radius:4px;padding:24px;cursor:zoom-in}#mainPhoto{object-fit:contain;width:100%;height:100%}.photo-actions{display:flex;gap:8px;flex-wrap:wrap}.photo-actions button{font-size:12px;border:1px solid var(--line);padding:10px 12px;background:white;border-radius:4px}.photo-actions button:hover{background:var(--lime)}#photoCaption{min-height:32px;font-size:11px!important;line-height:1.7}.detail-layout .detail-body{padding:28px}.code-panel strong{font-size:20px}.code-panel button{margin:4px 0 0}.code-panel{gap:8px}.detail-layout dl{grid-template-columns:85px 1fr;font-size:13px;line-height:1.8}.detail-layout .detail-note{font-size:12px}#imageViewer{width:min(1150px,calc(100% - 24px));height:94vh;max-height:94vh}#imageViewer .dialog-top{padding:16px 24px}#imageViewer h2{font-size:17px}.zoom-toolbar{padding:12px 24px;display:flex;justify-content:space-between;border-bottom:1px solid var(--line);gap:16px;align-items:center;font-size:12px}.zoom-toolbar label{display:flex;gap:10px;align-items:center}.zoom-toolbar input{width:100px;accent-color:var(--ink)}.image-scroll{height:calc(100% - 146px);overflow:auto;background:#e9eeea;text-align:center;padding:25px}#zoomCanvas{position:relative;display:inline-block;width:100%;max-width:none;text-align:center;background:white}#viewerImage{display:block;width:100%;height:auto;max-width:none}#codeMarker{position:absolute;min-width:50px;height:22px;border:2px solid #eb8211;background:#fff49b60;transform:translateY(-80%);pointer-events:none;border-radius:3px}#codeMarker:after{content:'対象型番';position:absolute;left:0;top:-21px;font-size:11px;line-height:18px;background:#244c39;color:white;padding:0 5px;white-space:nowrap;border-radius:2px}@media(min-width:1450px){#products{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1050px){#products{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.card-photo{height:245px}.product-category{display:block}.detail-layout{grid-template-columns:1fr 1fr}.photo-side,.detail-layout .detail-body{padding:20px}#mainPhotoButton{height:310px}}@media(max-width:720px){#products{gap:14px 10px}.card-photo{height:175px;padding:14px}.card-info{padding:12px}.product-title{font-size:12px}.product-code{font-size:10px}.card-bottom{margin-top:12px;padding-top:10px;flex-wrap:wrap}.product-category{font-size:10px}.card-bottom .detail-button{font-size:10px}.image-tag{font-size:9px;left:6px;bottom:6px}.detail-layout{display:block}#mainPhotoButton{height:300px}.photo-side{padding:18px}#photoCaption{min-height:0}.detail-layout .detail-body{padding:20px}.zoom-toolbar{padding:12px 15px;flex-wrap:wrap}.image-scroll{padding:12px;height:calc(100% - 160px)}#imageViewer .dialog-top{padding:15px}.zoom-toolbar input{width:90px}}
.photo-render{width:100%;height:100%;display:block;overflow:hidden;background:#fff;isolation:isolate}#mainPhoto{width:100%;height:100%}#viewerImage .photo-render{height:auto;max-width:none;width:100%}.card-photo .photo-render{mix-blend-mode:normal}#mainPhotoButton{padding:18px}#codeMarker{display:none}

.original-photo{object-fit:contain}.photo-variants{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.photo-variants[hidden]{display:none}.photo-variant{width:86px;border:1px solid #d8dfd9;background:white;border-radius:8px;padding:6px;cursor:pointer;color:inherit}.photo-variant.selected{border:2px solid #245b41;padding:5px}.photo-variant img{display:block;width:100%;height:72px;object-fit:contain}.photo-variant span{font-size:12px;display:block;margin-top:4px}#viewerImage .original-photo{height:auto;object-fit:contain}

.product-price{display:block;margin-top:12px;font-size:18px;font-weight:700;color:#214c36}.product-price small{font-size:13px;font-weight:400}.detail-price{margin:24px 0;padding:20px 0;border-top:1px solid #dbe4dd;border-bottom:1px solid #dbe4dd}.detail-price>span{display:block;font-size:14px;margin-bottom:8px}.detail-price strong{font-size:30px;letter-spacing:.01em}.detail-price small{font-size:14px}.delivery-cases{max-width:1440px;margin:48px auto 0;padding:48px 40px 64px;border-top:1px solid #dbe4dd;scroll-margin-top:90px}.cases-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px}.cases-heading h2{font-size:30px;margin:8px 0 0}.cases-heading>p{font-size:15px;max-width:480px;line-height:1.8;color:#526458}.case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.case-card{background:white;border:1px solid #dbe4dd;border-radius:12px;overflow:hidden}.case-card>img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.case-card>div{padding:22px}.case-card h3{font-size:20px;margin:10px 0}.case-card p{font-size:15px;line-height:1.8;white-space:pre-line}.case-category{font-size:14px;color:#245b41}.case-products{font-size:14px!important;color:#526458}.case-empty{padding:32px;background:#f4f7f3;border:1px solid #dbe4dd;border-radius:12px;font-size:16px;color:#526458}.case-empty[hidden]{display:none}@media(max-width:720px){.delivery-cases{padding:32px 18px}.cases-heading{display:block}.case-grid{grid-template-columns:1fr}.product-price{font-size:16px}.product-price small{font-size:12px}header nav{gap:12px}header nav a,header nav button{font-size:13px}}

.price-option{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid #dde5df;font-size:14px}.price-option small{display:block;font-size:13px;font-weight:400;margin-top:5px}.price-option b{white-space:nowrap}#priceOptions h3{font-size:17px;margin-top:24px}
@media(max-width:720px){header{height:auto;min-height:85px;flex-wrap:wrap;padding:16px 0;gap:12px}header nav{width:100%;justify-content:space-between;margin-left:0}header nav a,header nav button{font-size:14px}.price-option{flex-wrap:wrap}}
