/*
Theme Name: DS Deck Zero
Author: DS Deck Zero
Description: DIAMOND SWELL直営施工店のための専用テーマ。黒と白、幾何学線とカラーボディを中心にしたデザイン。
Version: 1.4.1
Requires at least: 6.6
Requires PHP: 8.0
Text Domain: ds-deck-zero
License: GPL-2.0-or-later
*/
:root{--bg:#050505;--surface:#101112;--ink:#f5f5f2;--muted:#a2a5a5;--line:#303233;--accent:#7eddd5;--max:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,'Helvetica Neue','Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:6px}p{line-height:2}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.4}h2{font-size:clamp(32px,4.3vw,62px);letter-spacing:-.045em;line-height:1.07;margin-bottom:0}h2>span{font-size:13px;display:block;letter-spacing:.1em;margin-top:20px;font-weight:400}::selection{background:#7eddd5;color:#000}.site-header{height:94px;padding:0 3.7%;display:flex;justify-content:space-between;align-items:center;position:absolute;inset:0 0 auto;z-index:20;border-bottom:1px solid #ffffff24;background:linear-gradient(#000b,transparent)}.brand{display:flex;gap:11px;align-items:center;flex-shrink:0}.brand-mark{width:48px;height:48px}.brand-word{font-size:23px;font-weight:750;letter-spacing:-.04em;white-space:nowrap}.brand-word b{font-weight:350}.brand-word small{font-size:8px;display:block;letter-spacing:.22em;margin-top:6px;font-weight:400}.site-header nav{display:flex;align-items:center;gap:25px}.site-header nav>a{font-size:11px;letter-spacing:.065em;font-weight:700;position:relative}.site-header nav>a:after{content:'';height:1px;background:currentColor;position:absolute;bottom:-7px;left:0;right:100%;transition:.25s}.site-header nav>a:hover:after{right:0}.nav-contact{border:1px solid #ffffff60;padding:13px 15px}.nav-contact span{margin-left:13px}.menu-toggle{display:none}.hero{height:min(880px,100svh);min-height:690px;position:relative;overflow:hidden;background:#080909}.hero-img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:60% 50%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#000b 0%,#0005 35%,transparent 70%),linear-gradient(0deg,#000d 0%,transparent 25%,#0003 100%)}.hero-content{position:absolute;z-index:1;left:max(6%,calc((100vw - 1200px)/2));top:26%;width:85%}.eyebrow{font-size:10px;letter-spacing:.22em;line-height:1.7}.hero .eyebrow{display:flex;align-items:center;gap:14px;color:#dededb}.line{display:block;width:26px;height:1px;background:var(--accent)}.hero h1{font-size:clamp(42px,5.4vw,77px);font-weight:650;letter-spacing:.015em;line-height:1.45;margin:23px 0}.hero-description{font-size:13px;line-height:2.15;color:#dededb}.button{display:inline-flex;gap:46px;align-items:center;justify-content:space-between;padding:19px 23px;font-size:12px;font-weight:600;transition:background .25s,color .25s;min-height:52px}.button span{font-size:20px;line-height:1}.light{background:#f5f5f2;color:#101010;margin-top:20px}.light:hover{background:var(--accent)}.outline{border:1px solid #707273}.outline:hover{background:#f5f5f2;color:#050505}.hero-bottom{position:absolute;bottom:33px;left:6%;right:6%;display:flex;align-items:center;justify-content:space-between;gap:20px}.opening{display:flex;gap:15px;align-items:center}.status-dot{width:6px;height:6px;background:var(--accent);border-radius:50%;display:inline-block;flex-shrink:0}.opening>strong{font-size:31px;font-weight:400;letter-spacing:-.04em}.opening>span:last-child{font-size:9px;letter-spacing:.12em;line-height:1.5;border-left:1px solid #ffffff50;padding-left:15px}.opening small{display:block;font-size:9px;letter-spacing:.07em;margin-top:3px}.visual-note{font-size:8px;color:#b2b2b2;letter-spacing:.16em;position:absolute;right:0;bottom:40px}.scroll-link{font-size:8px;letter-spacing:.18em;display:flex;gap:18px;align-items:center}.scroll-link span{font-size:24px}.brand-strip{display:flex;align-items:center;justify-content:space-around;gap:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 4%;overflow:hidden;white-space:nowrap}.brand-strip span{font-size:clamp(13px,1.7vw,24px);font-weight:600;letter-spacing:-.015em}.brand-strip i{font-style:normal;font-size:24px;color:#7d8081}.section{padding:110px max(6%,calc((100vw - 1200px)/2));position:relative;scroll-margin-top:10px}.section-label{font-size:10px;letter-spacing:.18em;color:var(--muted);line-height:1.5;margin-bottom:35px}.concept{padding-top:115px;padding-bottom:65px;overflow:hidden}.mesh{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.36}.concept>*:not(canvas),.contact>*:not(canvas){position:relative;z-index:1}.concept-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:8%}.concept-grid h2{font-size:clamp(29px,3.4vw,46px);line-height:1.65;letter-spacing:.04em;margin-top:25px}.concept-copy{font-size:13px;padding-top:0}.concept-copy p{line-height:2.4}.text-link{display:inline-flex;align-items:center;gap:40px;border-bottom:1px solid #888;padding:9px 0;font-size:12px}.text-link:hover{color:var(--accent);border-color:var(--accent)}.concept-signature{font-size:clamp(28px,5.6vw,78px);font-weight:700;letter-spacing:-.035em;color:#ffffff12;border-bottom:1px solid #ffffff20;padding-bottom:28px;margin-top:80px;white-space:nowrap}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:48px}.section-heading .section-label{margin-bottom:17px}.section-heading>p{font-size:12px;color:var(--muted);margin-bottom:0;line-height:2}.services{padding-top:60px}.service-feature{height:520px;display:block;position:relative;overflow:hidden}.service-feature>img{height:100%;width:100%;object-fit:cover;object-position:50% 55%;transition:transform .8s}.service-feature:hover>img{transform:scale(1.025)}.feature-overlay{position:absolute;inset:0;padding:36px 40px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(90deg,#000c,transparent 85%),linear-gradient(0deg,#0008,transparent 70%)}.tag{font-size:9px;letter-spacing:.14em;border:1px solid #fff8;padding:8px 10px;width:max-content}.feature-overlay p{font-size:10px;letter-spacing:.06em;margin-bottom:12px}.feature-overlay h3{font-size:65px;letter-spacing:-.05em;margin:0}.feature-overlay .feature-jp{font-size:17px}.feature-overlay .feature-copy{font-size:12px;color:#d1d4d4;margin:20px 0 0}.square-arrow{position:absolute;right:0;bottom:0;width:65px;height:65px;background:#eee;color:#111;display:grid;place-items:center;font-size:28px;clip-path:polygon(100% 0,100% 100%,0 100%);padding:18px 0 0 18px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}.service-tile{position:relative;min-height:260px;padding:30px;overflow:hidden;background-color:#121619;isolation:isolate}.service-tile:before{content:'';position:absolute;inset:0;background-image:linear-gradient(90deg,#000c,#0002),url('assets/hero.png');background-size:cover;z-index:-1;transition:transform .6s}.service-tile:hover:before{transform:scale(1.04)}.tile-clear:before{filter:grayscale(1);background-position:65% 50%}.tile-wrap:before{background-position:100% 50%;background-size:auto 165%}.tile-coat:before{background-image:linear-gradient(90deg,#000c,#0004),url('assets/craft.png');background-position:70% 30%;filter:saturate(.4)}.tile-maint:before{background-image:linear-gradient(90deg,#000d,#0008),url('assets/craft.png');background-size:auto 150%;background-position:20% 50%;filter:grayscale(1)}.service-number{font-size:9px;letter-spacing:.12em}.service-tile h3{font-size:clamp(26px,3vw,42px);letter-spacing:-.035em;margin:40px 0 4px}.service-tile>p{font-size:12px;margin-bottom:20px}.tile-description{font-size:10px;color:#ddd}.corner-arrow{position:absolute;right:22px;bottom:22px;font-size:24px}.service-details{margin-top:35px}details{border-bottom:1px solid var(--line);scroll-margin-top:25px}summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:20px 0;font-size:12px}summary::-webkit-details-marker{display:none}details[open] summary{color:var(--accent)}details p{font-size:13px;max-width:850px;color:#c1c5c5}details .text-link{margin-bottom:20px}.caption{font-size:10px;color:#959999;margin-top:23px}.price-section{background:#efefeb;color:#161818}.price-section .section-label,.price-section .section-heading>p{color:#666}.price-table{border-top:1px solid #989a98}.price-row{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:20px;padding:25px 0;border-bottom:1px solid #ccc}.price-row>span:first-child{font-size:18px;letter-spacing:-.02em}.price-row small{display:block;font-size:10px;color:#656766;margin-top:7px}.price-row>span:nth-child(2){font-size:11px;color:#666}.price-row strong{text-align:right;font-size:14px;font-weight:500}.price-bottom{display:flex;gap:25px;justify-content:space-between;align-items:center;margin-top:30px}.price-bottom p{font-size:10px;color:#666;margin:0}.price-bottom .outline:hover{background:#111;color:#fff}.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:35px}.steps li{border-top:1px solid #666;padding-top:23px}.steps li>span{font-size:34px;font-weight:300;color:#888}.steps h3{font-size:15px;margin:25px 0 15px}.steps p{font-size:11px;color:var(--muted)}.shop-banner{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:65px max(6%,calc((100vw - 1200px)/2));background:#161c1e;position:relative;border-block:1px solid #3b4546}.shop-banner h2{font-size:clamp(30px,4.3vw,56px)}.shop-banner p:not(.eyebrow){font-size:11px;color:#adb5b5;margin:16px 0 0}.shop-action{text-align:center}.shop-action .muted{cursor:default;background:transparent;color:#b6bcbc;border-color:#526061}.news-item{border-top:1px solid var(--line)}.news-item summary{align-items:center;justify-content:flex-start;padding:28px 0;font-size:14px}.news-category{font-size:9px;border:1px solid #686d6e;padding:5px 12px;letter-spacing:.1em}.news-item b{margin-left:auto;font-weight:400;font-size:20px}.news-date{color:#aaa;font-size:11px}.about{padding-top:30px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:6%}.zero-panel{background:linear-gradient(135deg,#161b1d,#070808);display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:340px;border:1px solid #303739;overflow:hidden}.zero-panel>span{font-size:13px;letter-spacing:.22em}.zero-panel strong{font-size:clamp(56px,8vw,115px);font-weight:400;letter-spacing:-.08em;line-height:1.8}.zero-panel strong span{color:var(--accent)}.zero-panel p{font-size:8px;letter-spacing:.16em}.company-table{margin:0}.company-table>div{display:grid;grid-template-columns:95px 1fr;border-bottom:1px solid var(--line);padding:18px 0;gap:15px;font-size:12px;line-height:2}.company-table dt{color:var(--muted);font-size:11px}.company-table dd{margin:0}.access{padding-top:15px;display:grid;grid-template-columns:1fr 1fr;gap:6%}.access-lead{font-size:22px;margin:40px 0 0;letter-spacing:.07em}.access-data{padding-top:35px}.muted{color:var(--muted);font-size:11px}.contact{text-align:center;background:#0d1010;overflow:hidden;border-top:1px solid #2a3030}.contact h2{font-size:clamp(36px,4vw,58px);line-height:1.5;letter-spacing:.04em}.contact>p:not(.section-label){font-size:12px;color:#b2b9b8;margin:25px 0}.contact-preparing{margin:35px auto 0;max-width:650px;border:1px solid #454d4c;padding:28px}.contact-preparing strong{font-size:14px;font-weight:500;margin-left:9px}.contact-preparing p{font-size:11px;color:#a7b0af;margin:12px 0 5px}.privacy{max-width:650px;margin:30px auto 0;text-align:left}.privacy summary{font-size:11px;color:#a4aaaa}.privacy p{font-size:11px}.site-footer{padding:60px 6% 25px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:45px}.footer-top>div{font-size:11px;line-height:2;color:#adb0b0}.footer-top>div p{margin:0}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:8px;color:#797f7d;letter-spacing:.06em;border-top:1px solid var(--line);padding-top:25px}.back-top{position:fixed;bottom:24px;right:24px;z-index:15;border:1px solid #6a7575;background:#161a1ace;border-radius:50%;height:40px;width:40px;display:grid;place-items:center}.skip-link{position:fixed;top:-100px;left:15px;background:#fff;color:#000;z-index:100;padding:15px}.skip-link:focus{top:15px}.content-page{padding-top:150px;min-height:70vh}.content-page h1{font-size:38px}.content-page a{color:var(--accent)}.article-body{max-width:850px;line-height:2}.article-body img{height:auto}.article-body input,.article-body textarea,.wpcf7 input,.wpcf7 textarea,.wpcf7 select{width:100%;padding:12px;background:#181f1e;border:1px solid #65716d;color:#fff}.wpcf7{max-width:650px;margin:25px auto;text-align:left}.wpcf7 input[type=checkbox]{width:auto}.wpcf7 input[type=submit]{cursor:pointer;background:#f3f5f2;color:#111}.wpcf7 label{font-size:13px}.admin-bar .site-header{top:32px}.site-footer .brand-word{font-size:28px}
@media(min-width:1500px){.hero-content{top:28%}.hero h1{font-size:78px}}
@media(max-width:1100px){.site-header{padding:0 5%;height:85px}.site-header nav{gap:14px}.site-header nav>a{font-size:10px}.brand-word{font-size:19px}.brand-mark{width:40px}.hero-content{top:25%}.hero{min-height:690px}.section{padding-left:6%;padding-right:6%}}
@media(max-width:850px){.site-header nav{display:none;position:absolute;top:85px;left:0;right:0;max-height:calc(100svh - 85px);overflow:auto;background:#080c0df5;padding:25px 6% 35px;flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid #4d5858}.site-header nav.open{display:flex}.site-header nav>a{font-size:14px;padding:17px 0}.site-header nav>a.nav-contact{padding:17px;margin-top:15px}.menu-toggle{display:flex;gap:15px;border:none;background:transparent;color:#fff;font-size:10px;letter-spacing:.1em;padding:14px 0 14px 20px}.menu-toggle span{font-size:16px}.hero h1{font-size:54px}.concept-grid{gap:5%}.concept-copy{font-size:12px}.section-heading>p{max-width:300px}.steps{gap:20px}.steps h3{font-size:13px}.shop-banner{gap:25px}.about-grid{gap:30px}.company-table>div{grid-template-columns:75px 1fr;font-size:11px}.footer-bottom>span:nth-child(2){display:none}}
@media(max-width:600px){html{scroll-padding-top:25px}.site-header{height:76px}.site-header nav{top:76px}.brand-word{font-size:20px}.brand-mark{height:38px;width:38px}.brand-word small{font-size:6.5px}.hero{height:830px;min-height:720px;max-height:1100px}.hero-img{height:66%;top:27%;object-position:65% 55%;object-fit:cover}.hero-shade{background:linear-gradient(180deg,#050505 20%,transparent 47%,transparent 66%,#050505 92%)}.hero-content{top:130px;left:6%;width:88%}.hero .eyebrow{font-size:7px;letter-spacing:.11em;gap:9px}.hero h1{font-size:43px;line-height:1.4;margin:25px 0 18px}.hero-description{font-size:11px;line-height:2}.hero .button{margin-top:15px;padding:14px 18px;font-size:10px;gap:28px;min-height:46px}.hero-bottom{bottom:29px;flex-wrap:wrap}.opening>strong{font-size:29px}.scroll-link{display:none}.visual-note{bottom:55px;font-size:7px}.brand-strip{padding:20px 6%;gap:24px;justify-content:flex-start}.brand-strip span{font-size:14px}.brand-strip i{font-size:17px}.section{padding-top:70px;padding-bottom:70px}.section-label{font-size:9px;margin-bottom:25px}.concept-grid{grid-template-columns:1fr;gap:28px}.concept-grid h2{font-size:32px;line-height:1.65;margin-top:17px}.concept-copy{font-size:11px}.concept .eyebrow{font-size:8px}.concept-signature{font-size:24px;margin-top:45px;padding-bottom:20px;white-space:normal}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:43px}.section-heading>p{font-size:11px;max-width:none;margin-top:25px}.section-heading .section-label{margin-bottom:15px}h2>span{margin-top:13px;font-size:11px}.services{padding-top:0}.service-feature{height:455px}.service-feature>img{object-position:60% 50%}.feature-overlay{padding:25px 22px}.feature-overlay h3{font-size:45px}.feature-overlay .feature-jp{font-size:14px}.feature-overlay .feature-copy{font-size:11px}.service-grid{gap:12px;margin-top:12px}.service-tile{min-height:235px;padding:20px 14px}.service-number{font-size:7px;letter-spacing:.035em}.service-tile h3{font-size:20px;margin-top:57px}.service-tile>p{font-size:10px}.tile-description{font-size:9px;display:block;line-height:1.8;max-width:120px}.corner-arrow{right:10px;bottom:10px;font-size:19px}.price-row{grid-template-columns:1fr 1fr;gap:12px;padding:22px 0}.price-row>span:first-child{font-size:16px}.price-row>span:nth-child(2){grid-column:1;grid-row:auto;font-size:9px}.price-row strong{grid-column:2;grid-row:span 2;font-size:12px;align-self:center}.price-row>span:first-child{grid-column:1;grid-row:auto}.price-row>strong{grid-row:1/3}.price-row{position:relative}.price-row>strong{grid-row:auto}.price-row>span:nth-child(2){display:none}.price-bottom{display:block}.price-bottom .button{margin-top:25px;width:100%;font-size:11px}.steps{grid-template-columns:1fr 1fr;gap:26px 23px}.steps li>span{font-size:30px}.steps h3{font-size:14px;margin:16px 0 10px}.steps p{font-size:10px}.shop-banner{display:block;padding:45px 6%}.shop-banner h2{font-size:37px}.shop-action{text-align:left;margin-top:25px}.shop-action .button{font-size:10px;min-height:45px;padding:12px 18px}.news-item summary{flex-wrap:wrap;gap:15px;font-size:12px}.news-item summary>span:nth-child(2){flex-basis:75%;font-size:12px}.news-category{font-size:8px}.news-item b{font-size:17px}.about{padding-top:0}.about-grid{grid-template-columns:1fr;gap:25px}.zero-panel{min-height:260px}.zero-panel strong{font-size:85px}.company-table>div{grid-template-columns:75px 1fr;font-size:11px}.access{padding-top:0;grid-template-columns:1fr;gap:20px}.access h2{font-size:43px}.access-lead{font-size:20px;margin-top:25px}.access-data{padding-top:0}.contact h2{font-size:34px}.contact>p:not(.section-label){font-size:10px}.contact-preparing{padding:25px 15px}.contact-preparing strong{font-size:12px}.contact-preparing p{font-size:10px}.site-footer{padding-top:45px}.footer-top{display:block;padding-bottom:30px}.footer-top>div{margin-top:25px;font-size:10px}.site-footer .brand-word{font-size:24px}.footer-bottom{font-size:8px;gap:12px}.back-top{bottom:15px;right:15px;width:34px;height:34px}.content-page h1{font-size:28px}.admin-bar .site-header{top:46px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.news-link{display:flex;align-items:center;gap:25px;padding:25px 0;font-size:14px}.news-link b{margin-left:auto}.news-link:hover{color:var(--accent)}.price-notice{padding:18px 22px;border:1px solid #c1c4bf;font-size:11px;display:flex;gap:16px;align-items:center;line-height:1.8}.price-notice strong{white-space:nowrap}.price-notice span{color:#666}.price-nav{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0 40px}.price-nav a{border-bottom:1px solid #959a96;padding:10px 13px;font-size:11px}.price-nav a:hover{background:#151919;color:#fff}.rate-group,.price-detail{scroll-margin-top:35px}.rate-title{display:flex;align-items:flex-end;justify-content:space-between;margin:0 0 22px}.rate-title h3{font-size:23px;letter-spacing:-.025em;margin:0}.rate-title small{display:block;font-size:12px;font-weight:400;margin-top:10px;letter-spacing:.04em}.rate-title>span{font-size:10px;color:#666}.rates{width:100%;border-collapse:collapse;font-size:13px;line-height:1.7}.rates caption{text-align:left;font-size:11px;padding:20px 0 14px;color:#5c625d}.rates th,.rates td{padding:17px 10px;border-bottom:1px solid #c7cbc5;text-align:left}.rates thead th{font-size:11px;background:#e0e2dc;color:#555c55;font-weight:500}.rates tbody th{font-weight:400}.rates th:first-child{padding-left:0}.rates thead th:first-child{padding-left:12px}.rates td{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:15px}.rates thead th:not(:first-child){text-align:right}.rates td:last-child,.rates th:last-child{padding-right:4px}.rates thead th:last-child{padding-right:12px}.size-rates tbody th{font-size:19px;font-weight:500}.size-rates td{width:38%;font-size:19px}.rate-note{font-size:11px!important;color:#636b65!important;line-height:1.9;margin:20px 0 25px}.price-detail{border-color:#adb5ab}.price-detail>summary{font-size:22px;font-weight:550;letter-spacing:-.015em;padding:27px 0;align-items:center}.price-detail>summary small{display:block;font-size:11px;font-weight:400;letter-spacing:.04em;margin-top:8px}.price-detail[open]>summary{color:#131b16}.price-detail .detail-toggle{font-weight:300;font-size:26px}.price-detail[open] .detail-toggle{transform:rotate(45deg)}.life-set{display:flex;align-items:center;justify-content:space-between;background:#dee5dd;padding:23px;margin-top:25px;gap:25px}.life-set h4{margin:0;font-size:14px}.life-set p{color:#4e5c50;font-size:11px;margin:10px 0 0}.life-set strong{font-size:24px;font-weight:500}.life-set small{display:block;font-size:10px;margin-top:5px}.life-set>div:last-child{text-align:right;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.price-section details .text-link{color:#111}.price-section a:focus-visible,.price-section summary:focus-visible{outline-color:#116c61}
@media(max-width:600px){.price-notice{display:block;padding:15px;font-size:10px}.price-notice strong{display:block;margin-bottom:6px}.price-nav{gap:4px;margin:15px 0 30px}.price-nav a{font-size:10px;padding:10px 8px}.rate-title h3{font-size:20px}.rate-title small{font-size:10px}.rates{font-size:11px}.rates td{font-size:13px;padding-left:5px;padding-right:4px}.rates th{max-width:200px}.rates th,.rates td{padding-top:16px;padding-bottom:16px}.rates thead th{font-size:9px;padding-left:5px;padding-right:5px}.size-rates td{font-size:16px}.size-rates tbody th{font-size:16px}.rate-note{font-size:10px!important}.price-detail>summary{font-size:21px}.life-set{padding:17px 14px;gap:12px}.life-set strong{font-size:20px}.life-set p{font-size:9px}.life-set h4{font-size:13px}.news-link{gap:12px;font-size:12px;flex-wrap:wrap}.news-link .news-date{font-size:10px}}

/* DS Deck Zero: reference layout refinement */
body{isolation:isolate;background:#000}
.concept{overflow:visible;text-align:center}
.concept>.mesh{position:fixed;inset:0;width:100vw;height:100vh;z-index:-1;opacity:.65}
.contact>.mesh{display:none}
.concept-grid{display:block;max-width:1000px;margin:0 auto}
.concept-grid h2{font-size:clamp(28px,4vw,44px);line-height:1.6;margin:20px auto 42px}
.concept-copy{font-size:16px;font-weight:500;max-width:900px;margin:0 auto}
.concept-copy p{line-height:2.3}
.concept-signature{font-size:clamp(24px,4.5vw,62px);white-space:normal}
.service-grid{gap:30px}
.service-tile{min-height:330px;aspect-ratio:3/2;display:flex;flex-direction:column;justify-content:flex-end;border:1px solid #ffffff65}
.service-tile .service-number{position:absolute;top:28px;left:30px}
.service-tile h3{margin:0 0 8px}
.service-tile .tile-description{padding-right:35px}
.corner-arrow{bottom:0;right:0;width:50px;height:50px;background:#fff;color:#c92525;clip-path:polygon(100% 0,100% 100%,0 100%);display:grid;place-items:center;padding:15px 0 0 15px;font-size:26px}
.site-footer{background:#111}
@media(max-width:768px){
.concept-copy{font-size:14px;font-weight:400}
.concept-grid h2{margin-bottom:30px}
.service-grid{grid-template-columns:1fr;gap:20px}
.service-tile{min-height:275px;aspect-ratio:3/2;padding:25px}
.service-tile h3{font-size:clamp(30px,7vw,42px);margin:0 0 5px}
.service-tile>p{font-size:13px;margin:0 0 14px}
.service-tile .service-number{font-size:10px;top:24px;left:25px}
.service-tile .tile-description{font-size:12px;max-width:none}
}

@media(max-width:400px){.hero h1{font-size:10.5vw}}

/* Price collection — black, silver, editorial typography. */
.price-book{background:#080909;color:#eee;padding:0;overflow:hidden;border-top:1px solid #333;--price-serif:Georgia,'Times New Roman',serif}
.price-cover{position:relative;min-height:570px;display:flex;align-items:flex-end;isolation:isolate;padding:80px max(6%,calc((100vw - 1200px)/2))}
.price-cover>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% 57%;filter:grayscale(1);z-index:-2}
.price-cover:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#000d 5%,#0004 70%),linear-gradient(0deg,#080909,transparent 60%);z-index:-1}
.price-cover .section-label{color:#c3c4c4;letter-spacing:.24em;margin-bottom:34px}
.price-cover h2{font-family:var(--price-serif);font-size:clamp(50px,7.5vw,108px);line-height:.95;font-weight:400;letter-spacing:-.04em}
.price-cover h2 em{font-weight:400;color:#d9dedd}
.price-cover h2>span{font-family:Arial,'Yu Gothic',sans-serif;letter-spacing:.12em;font-size:15px;margin-top:28px;line-height:1.8}
.price-cover-note{font-size:9px;letter-spacing:.26em;color:#a3abab;margin:33px 0 0}
.price-cover-seal{margin-left:auto;align-self:flex-end;font-family:var(--price-serif);font-size:12px;letter-spacing:.32em;line-height:2.2;color:#d1d7d6;border-bottom:1px solid #b9c1c0;padding:0 0 20px 20px}
.price-book-inner{max-width:1200px;margin:auto;padding:0 0 80px}
.price-book-intro{display:flex;gap:50px;justify-content:space-between;align-items:center;margin:12px 0 45px}
.price-book-intro>p{font-size:13px;margin:0;line-height:2.2}
.price-book .price-tax{font-size:11px;max-width:470px;color:#a7afad}
.price-tax strong{color:#ebeeee;font-weight:400}
.price-book-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-bottom:70px}
.price-book-nav a{border-top:1px solid #5a6060;padding-top:18px;display:flex;align-items:center;gap:14px;font-size:12px;letter-spacing:.1em}
.price-book-nav small{color:#939c99;font-family:var(--price-serif);font-style:italic;font-size:16px}
.price-book-nav a>span{margin-left:auto;font-size:19px;color:#bfc7c4}
.price-book a:hover{color:#fff}.price-book a:focus-visible{outline-color:#ddd}
.price-chapter{padding:0 0 70px;margin:0 0 60px;scroll-margin-top:40px}
.price-chapter-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:40px}
.price-overline{font-size:9px;letter-spacing:.23em;line-height:1.8;color:#b4bfbb;margin:0 0 20px}
.price-chapter h3{font-family:var(--price-serif);font-size:clamp(48px,6vw,82px);line-height:1;font-weight:400;letter-spacing:-.045em;margin:0}
.price-chapter h3>span{display:block;font-family:Arial,'Yu Gothic',sans-serif;font-size:14px;letter-spacing:.05em;line-height:1.8;margin-top:18px}
.price-chapter-head>p{font-size:12px;line-height:2.1;color:#b0b9b6;margin:0 0 5px}
.price-packages{display:grid;grid-template-columns:1fr 1fr;gap:80px;position:relative}
.price-packages:after{content:'';position:absolute;top:0;bottom:0;width:1px;left:50%;background:linear-gradient(transparent,#aab4b180,#aab4b125,transparent);transform:skew(-7deg)}
.price-package{position:relative;background:radial-gradient(ellipse at 80% 0%,#c1cfca10,transparent 68%);padding:30px 30px 10px}
.price-package-no{position:absolute;right:16px;top:9px;font-family:var(--price-serif);font-size:78px;font-style:italic;color:#ffffff0b;line-height:1}
.price-package h4{font-family:var(--price-serif);font-size:clamp(28px,3.5vw,47px);font-weight:400;letter-spacing:.01em;margin:0 0 30px;line-height:1.1}
.price-package h4 small{display:block;font-family:Arial,'Yu Gothic',sans-serif;font-size:13px;letter-spacing:.06em;margin-top:14px}
.price-sizes{margin:0;display:grid;gap:22px}
.price-sizes>div{display:flex;align-items:baseline;justify-content:space-between;gap:18px}
.price-sizes dt{display:flex;align-items:baseline;gap:9px;white-space:nowrap}
.price-sizes dt>span{font-family:var(--price-serif);font-size:32px;font-style:italic;font-weight:400;color:#e4e8e6;line-height:1}
.price-sizes dt>small{font-size:7px;letter-spacing:.15em;color:#7c8883}
.price-sizes dd{font-family:var(--price-serif);font-size:clamp(29px,3.2vw,43px);letter-spacing:-.045em;margin:0;line-height:1.15;font-variant-numeric:lining-nums tabular-nums;white-space:nowrap}
.price-motto{font-family:var(--price-serif);font-size:9px;letter-spacing:.28em;line-height:1.8;color:#a3b0aa;margin:34px 0 0}
.price-book .price-fineprint{color:#b2bab6;font-size:11px;line-height:2;margin:26px 0 0;max-width:880px}
.price-items{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 45px;margin:0}
.price-item{min-width:0;padding:19px 0 7px;position:relative}
.price-item:before{content:'';display:block;width:26px;height:1px;background:#7e8e86;margin-bottom:17px}
.price-item dt{font-size:13px;line-height:1.7;font-weight:400;min-height:44px}
.price-item dt>span{display:block;font-size:10px;color:#a2afa8;margin-top:3px}
.price-item dd{font-family:var(--price-serif);font-size:clamp(28px,3vw,40px);letter-spacing:-.035em;font-variant-numeric:lining-nums tabular-nums;margin:9px 0 0;line-height:1.2;white-space:nowrap}
.price-other{display:flex;align-items:center;gap:28px;margin-top:40px;padding:22px 0;border-top:1px solid #343b37;max-width:560px}
.price-other>span{font-size:12px;color:#abb5af}.price-other>strong{font-size:20px;font-weight:400}.price-other>a{margin-left:auto;font-size:26px}
.price-life{position:relative;isolation:isolate;margin-top:55px;padding:45px 50px;min-height:360px;border-top:1px solid #939e9870;border-bottom:1px solid #939e9840;background:#101412;overflow:hidden}
.price-life-photo{position:absolute;inset:0 0 0 35%;background:url('assets/craft.png') 68% 65%/cover no-repeat;filter:grayscale(1);z-index:-2;opacity:.7}
.price-life:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#090c0bf5 22%,#090c0bc9 50%,#090c0b24);z-index:-1}
.price-life h4{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:29px;font-weight:400;margin:0 0 12px;letter-spacing:.1em}
.price-life .price-life-amount{font-family:var(--price-serif);font-size:clamp(62px,8vw,108px);line-height:1;letter-spacing:-.04em;margin:0}
.price-life-tax{font-size:11px;color:#c0cac4;margin:12px 0 24px}
.price-life-includes{font-size:11px;line-height:2;color:#d4dad6;margin:0}
.price-life-includes>span{display:block;font-size:9px;letter-spacing:.15em;color:#9faaa3;margin-bottom:7px}
.price-trio{gap:35px}.price-trio .price-item{padding:26px;background:linear-gradient(145deg,#ffffff08,transparent);min-height:175px}.price-trio .price-item:before{margin-bottom:20px}
.price-coating-body{margin-bottom:25px;padding:28px 0}
.price-coating-body .price-sizes{grid-template-columns:repeat(5,1fr);gap:20px}
.price-coating-body .price-sizes>div{display:block}
.price-coating-body .price-sizes dd{font-size:clamp(25px,2.7vw,35px);margin:15px 0 0}
.price-book-end{border-top:1px solid #515a55;padding-top:40px;display:flex;justify-content:space-between;align-items:center;gap:30px}
.price-book-end p{font-size:13px;margin:0}.price-book-end p small{font-size:10px;color:#abb6af}.price-book-end .button{white-space:nowrap;border-color:#88958d}
@media(max-width:1364px){.price-book-inner{margin:0 6%}}
@media(max-width:850px){.price-cover{min-height:500px}.price-packages{gap:40px}.price-package{padding:25px 10px}.price-items{gap:26px}.price-trio .price-item{padding:18px}.price-sizes dt>small{display:none}.price-book-nav{gap:18px}.price-book-nav a{font-size:10px;gap:7px}.price-book-intro{gap:25px}.price-book-end{display:block}.price-book-end .button{margin-top:25px}.price-coating-body .price-sizes dd{font-size:26px}}
@media(max-width:600px){.price-cover{min-height:475px;padding:60px 6% 45px}.price-cover>img{object-position:68% center}.price-cover h2{font-size:clamp(43px,11vw,66px)}.price-cover h2>span{font-size:12px;margin-top:24px}.price-cover .section-label{font-size:8px;margin-bottom:35px}.price-cover-seal{display:none}.price-cover-note{font-size:7px;letter-spacing:.2em}.price-book-inner{padding-bottom:65px}.price-book-intro{display:block;margin:0 0 32px}.price-book-intro>p{font-size:12px}.price-book .price-tax{font-size:10px;margin-top:22px}.price-book-nav{grid-template-columns:1fr 1fr;gap:22px 24px;margin-bottom:55px}.price-book-nav a{font-size:10px;padding-top:12px}.price-chapter{margin-bottom:35px;padding-bottom:30px}.price-chapter-head{display:block;margin-bottom:30px}.price-chapter-head>p{font-size:11px;margin-top:20px}.price-chapter h3{font-size:clamp(40px,11vw,62px)}.price-chapter h3>span{font-size:12px;margin-top:14px}.price-overline{font-size:8px;margin-bottom:17px;letter-spacing:.17em}.price-packages{grid-template-columns:1fr;gap:35px}.price-packages:after{display:none}.price-package{padding:28px 20px;background:linear-gradient(130deg,#bacac315,transparent);border-left:1px solid #7b89815e}.price-package h4{font-size:35px;margin-bottom:26px}.price-package h4 small{font-size:12px}.price-sizes{gap:17px}.price-sizes dt>span{font-size:29px}.price-sizes dt>small{display:block}.price-sizes dd{font-size:36px}.price-motto{font-size:8px;margin-top:25px}.price-book .price-fineprint{font-size:10px;margin-top:22px}.price-items{grid-template-columns:1fr 1fr;gap:25px 20px}.price-item{padding-top:8px}.price-item dt{font-size:11px;min-height:43px}.price-item dt>span{font-size:9px}.price-item dd{font-size:clamp(23px,6.5vw,34px);margin-top:8px}.price-item:before{width:20px;margin-bottom:14px}.price-other{gap:18px;margin-top:30px}.price-other>span{font-size:11px}.price-other>strong{font-size:17px}.price-life{padding:32px 22px;margin-top:35px;min-height:375px}.price-life-photo{inset:0 0 0 0;opacity:.35;background-position:65% center}.price-life:after{background:linear-gradient(90deg,#080b0bda,#080b0b55)}.price-life h4{font-size:26px}.price-life .price-life-amount{font-size:75px}.price-life-includes{font-size:10px}.price-trio{grid-template-columns:1fr;gap:15px}.price-trio .price-item{padding:22px 24px;min-height:0;display:grid;grid-template-columns:1fr auto;align-items:center;gap:15px}.price-trio .price-item:before{display:none}.price-trio .price-item dt{min-height:0}.price-trio .price-item dd{margin:0;font-size:30px}.price-coating-body{padding:10px 0 22px}.price-coating-body .price-sizes{grid-template-columns:repeat(2,1fr);gap:30px 25px}.price-coating-body .price-sizes dd{font-size:34px;margin-top:12px}.price-book-end{padding-top:30px}.price-book-end p{font-size:12px}.price-book-end p small{display:block;font-size:10px;margin-top:10px}.price-book-end .button{width:100%;font-size:11px;gap:20px;padding:18px}}

@media(max-width:768px){.services .service-grid{grid-template-columns:minmax(0,1fr)}.services .service-tile{aspect-ratio:auto;min-width:0}}
@media(max-width:440px){.price-trio .price-item{display:block}.price-trio .price-item dd{margin-top:14px}}

/* Readable concept phrases and illustrated service guides. */
.concept-copy .concept-paragraph{line-height:2.25;margin:0 0 25px}
.concept-line{display:block}.concept-phrase{display:inline-block;max-width:100%;vertical-align:top}
.price-guide-photo{margin:0 0 22px;position:relative}
.price-guide-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.price-guide-photo figcaption{font-size:9px;letter-spacing:.16em;color:#bdc8c4;padding:13px 0;border-bottom:1px solid #46504a}
.price-guide-copy{margin:0 0 30px}
.price-guide-copy h4,.price-guide-copy h5{font-family:Arial,'Yu Gothic',sans-serif;font-size:18px;letter-spacing:.025em;font-weight:500;line-height:1.8;margin:0 0 14px}
.price-guide-copy p{font-size:13px;color:#d0d6d3;line-height:2;margin:0 0 13px}
.price-guide-copy .price-guide-note{font-size:11px;color:#9ca9a2;line-height:1.9;margin-bottom:0}
.price-package .price-guide-copy{min-height:205px}
.price-service-guide{display:grid;grid-template-columns:1.1fr 1fr;gap:55px;align-items:center;margin:0 0 35px}
.price-service-guide .price-guide-photo,.price-service-guide .price-guide-copy{margin:0}
.price-service-guide .price-guide-photo img{aspect-ratio:16/10}
.price-image-note{font-size:10px;line-height:2;color:#9ca9a2;margin:0 0 28px}
@media(max-width:768px){.concept-copy .concept-paragraph{font-size:14px;line-height:2.2;margin-bottom:26px}.concept-line+.concept-line{margin-top:7px}.price-service-guide{gap:25px}.price-guide-copy h4,.price-guide-copy h5{font-size:16px}.price-package .price-guide-copy{min-height:240px}}
@media(max-width:600px){.price-service-guide{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.price-guide-copy p{font-size:12px}.price-guide-copy .price-guide-note{font-size:10px}.price-package .price-guide-copy{min-height:0;margin-bottom:30px}.price-guide-photo{margin-bottom:19px}.price-guide-photo figcaption{font-size:8px;padding:11px 0}.price-guide-copy h4,.price-guide-copy h5{font-size:16px}.price-image-note{font-size:9px}.concept-copy{margin-left:-2%;margin-right:-2%}}
@media(max-width:360px){.concept-copy .concept-paragraph{font-size:13px;letter-spacing:0}}

@media(max-width:600px){.concept-line>.concept-phrase:first-child{display:block}}

/* Compact, native keyboard-accessible pricing accordion. */
.price-book .price-cover{min-height:240px;padding-top:48px;padding-bottom:38px}
.price-book .price-cover h2{font-size:clamp(40px,5vw,66px)}
.price-book .price-cover .section-label{margin-bottom:19px}.price-book .price-cover h2>span{margin-top:15px}
.price-cover-note,.price-cover-seal{display:none}
.price-book-intro{margin:15px 0 22px}.price-expand-hint{font-size:11px;color:#aeb8b2;margin:0 0 22px}
.price-book .price-accordion{padding:0;margin:0;border-top:1px solid #46504a;scroll-margin-top:50px}
.price-accordion:last-of-type{border-bottom:1px solid #46504a;margin-bottom:28px}
.price-accordion>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:24px;padding:24px 8px;min-height:100px}
.price-accordion>summary::-webkit-details-marker{display:none}
.price-accordion>summary::marker{content:''}
.price-summary-title{display:flex;align-items:center;gap:26px;flex:1}
.price-summary-en{font-family:var(--price-serif);font-size:30px;letter-spacing:-.03em;min-width:180px}
.price-summary-jp{font-size:13px;line-height:1.7}
.price-summary-description{font-size:11px;color:#9ca9a2}
.price-toggle-icon{width:28px;height:28px;position:relative;flex:none;border:1px solid #6d7971;border-radius:50%}
.price-toggle-icon:before,.price-toggle-icon:after{content:'';position:absolute;background:#ddd;left:8px;right:8px;top:12px;height:1px}
.price-toggle-icon:after{transform:rotate(90deg);transition:transform .2s}
.price-accordion[open]>summary .price-toggle-icon:after{transform:rotate(0)}
.price-accordion[open]>summary{color:#fff}.price-accordion>summary:hover{background:#ffffff05}
.price-accordion-content{padding:12px 8px 48px}
.price-book .price-book-end{padding-top:22px}.price-book-inner{padding-bottom:55px}
@media(max-width:850px){.price-summary-description{display:none}.price-summary-en{min-width:160px}.price-summary-title{gap:18px}}
@media(max-width:600px){.price-book .price-cover{min-height:185px;padding-top:35px;padding-bottom:28px}.price-book .price-cover h2{font-size:39px}.price-book .price-cover h2>span{font-size:11px}.price-book .price-cover .section-label{font-size:8px;margin-bottom:15px}.price-book-intro>p:first-child{display:none}.price-book .price-tax{margin-top:12px}.price-expand-hint{font-size:10px;line-height:1.9;margin-bottom:16px}.price-accordion>summary{padding:19px 2px;min-height:90px;gap:14px}.price-summary-title{display:block}.price-summary-en{font-size:26px;display:block;margin-bottom:7px}.price-summary-jp{font-size:11px}.price-accordion-content{padding:8px 0 30px}.price-book .price-accordion{scroll-margin-top:20px}.price-image-note{margin-bottom:20px}}

.hero-video{object-position:center center}.hero-video-toggle{position:absolute;right:4%;top:115px;z-index:3;background:#05050580;color:#fff;border:1px solid #ffffff60;padding:10px 14px;font-size:10px;letter-spacing:.08em;min-height:40px}.hero-video-toggle:hover{background:#050505cc}@media(max-width:768px){.hero-video-toggle{top:90px;right:5%;padding:8px 11px;font-size:9px}}
