html{scroll-behavior:smooth}
body.bkd{margin:0;background:#0B0B0D}
.bkd a{color:inherit;text-decoration:none}
.bkd button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
.bkd input,.bkd select,.bkd textarea{font:inherit;color:inherit}
.k-d{font-family:'Dela Gothic One','Zen Kaku Gothic New','Hiragino Kaku Gothic ProN',sans-serif;font-weight:400}
.k-n{font-family:'Barlow Condensed','Archivo Narrow','Arial Narrow',sans-serif;font-variant-numeric:tabular-nums}
.k-m{font-family:'JetBrains Mono',ui-monospace,Menlo,monospace}
.k-t{font-feature-settings:"palt"}
.k-w{display:inline-block;overflow:hidden;vertical-align:bottom;padding:.1em 0 .12em;margin:-.1em 0 -.12em}
.k-w>span{display:inline-block;transform:translateY(118%);transition:transform 1.1s cubic-bezier(.19,1,.22,1) calc(var(--i,0) * .045s + var(--d,0s)),color .5s ease calc(var(--i,0) * .035s)}
.k-in .k-w>span{transform:none}
.k-up{opacity:0;transform:translateY(30px);transition:opacity .9s ease var(--d,0s),transform 1.1s cubic-bezier(.19,1,.22,1) var(--d,0s)}
.k-in .k-up{opacity:1;transform:none}
.k-it{opacity:0;transform:translateY(26px);transition:opacity .8s ease calc(var(--i,0) * .09s + var(--d,0s)),transform .95s cubic-bezier(.19,1,.22,1) calc(var(--i,0) * .09s + var(--d,0s))}
.k-in .k-it{opacity:1;transform:none}
.k-ln{transform:scaleX(0);transform-origin:0 50%;transition:transform 1.3s cubic-bezier(.19,1,.22,1) var(--d,0s)}
.k-in .k-ln{transform:none}
.k-nl{position:relative;display:inline-flex;align-items:center;min-height:44px}
.k-nl::after{content:"";position:absolute;left:0;right:0;bottom:8px;height:2px;background:#FFE500;transform:scaleX(0);transform-origin:100% 50%;transition:transform .5s cubic-bezier(.19,1,.22,1)}
.k-nl:hover::after{transform:none;transform-origin:0 50%}
.k-pill{transition:background-color .4s ease,color .4s ease,transform .3s ease}
.k-pill:hover{background-color:#FFE500 !important;color:#0B0B0D !important}
.k-pill2:hover{background-color:#0B0B0D !important;color:#FFE500 !important}
.k-ul{border-bottom:2px solid currentColor;transition:color .35s ease,padding-left .4s cubic-bezier(.19,1,.22,1)}
.k-ul:hover{padding-left:10px}
.k-ul svg{transition:transform .4s cubic-bezier(.19,1,.22,1)}
.k-ul:hover svg{transform:translateX(6px)}
.k-row{position:relative;overflow:hidden}
.k-row.k-it{transition:opacity .8s ease calc(var(--i,0) * .09s),transform .95s cubic-bezier(.19,1,.22,1) calc(var(--i,0) * .09s),color .45s ease}
.k-row::before{content:"";position:absolute;left:0;top:0;right:0;bottom:0;background:#FFE500;transform:scaleX(0);transform-origin:0 50%;transition:transform .6s cubic-bezier(.19,1,.22,1)}
.k-row:hover::before{transform:none}
.k-row>*{position:relative}
.k-row:hover{color:#0B0B0D !important}
.k-num{transition:color .45s ease}
.k-row:hover .k-num{color:#0B0B0D !important}
.k-row:hover .k-tag{background-color:#0B0B0D !important;color:#FFE500 !important}
.k-arr{transition:background-color .45s ease,border-color .45s ease,color .45s ease}
.k-arr svg{transition:transform .45s cubic-bezier(.19,1,.22,1)}
.k-row:hover .k-arr{background-color:#0B0B0D;border-color:#0B0B0D !important;color:#FFE500}
.k-row:hover .k-arr svg{transform:translateX(4px)}
.k-tag{transition:background-color .45s ease,color .45s ease}
.k-spot{isolation:isolate}
.k-spot::before{content:"";position:absolute;left:0;top:0;right:0;bottom:0;z-index:-1;background:radial-gradient(640px circle at var(--cx,50%) var(--cy,50%),rgba(255,229,0,.11),rgba(255,229,0,0) 62%);opacity:0;transition:opacity .7s ease;pointer-events:none}
.k-spot:hover::before{opacity:1}
.k-card{transition:transform .7s cubic-bezier(.19,1,.22,1),border-color .5s ease,box-shadow .5s ease}
.k-card:hover{transform:translateY(-6px);border-color:#0B0B0D !important;box-shadow:0 18px 50px -24px rgba(11,11,13,.45)}
.k-tab{transition:background-color .35s ease,color .35s ease}
.k-tab.k-on{background-color:#0B0B0D !important;color:#F2F0EA !important}
.k-tabd.k-on{background-color:#FFE500 !important;color:#0B0B0D !important}
.k-q{transition:color .3s ease}
.k-q:hover{color:#8A7A00}
.k-q svg{transition:transform .5s cubic-bezier(.19,1,.22,1)}
.k-q.k-open svg{transform:rotate(45deg)}
.k-cta{position:relative;overflow:hidden;transition:color .45s ease}
.k-cta::before{content:"";position:absolute;left:50%;top:50%;width:0;height:0;border-radius:50%;background:#0B0B0D;transform:translate(-50%,-50%);transition:width .65s cubic-bezier(.19,1,.22,1),height .65s cubic-bezier(.19,1,.22,1)}
.k-cta:hover::before{width:150%;height:500%}
.k-cta>*{position:relative}
.k-cta:hover{color:#FFE500 !important}
.k-cta svg{transition:transform .45s cubic-bezier(.19,1,.22,1)}
.k-cta:hover svg{transform:translateX(6px)}
.k-cta2::before{background:#FFE500}
.k-cta2:hover{color:#0B0B0D !important}
.k-mag{transition:transform .25s cubic-bezier(.19,1,.22,1)}
.k-tel{transition:color .4s ease}
.k-tel:hover{color:#FFE500 !important}
.k-top{transition:background-color .4s ease,color .4s ease,border-color .4s ease}
.k-top:hover{background-color:#FFE500;color:#0B0B0D;border-color:#FFE500 !important}
.k-mark{transition:color .6s ease}
.k-mark:hover{color:#FFE500 !important}
.k-stage{position:relative;--p:1;--mx:0;--my:0}
.k-pin{position:relative;height:880px}
.k-stage{height:calc(min(880px,100vh) + 1400px)}
.k-pin{position:sticky;top:0;height:min(880px,100vh)}
.k-speed{background-image:repeating-linear-gradient(115deg,rgba(255,229,0,.09) 0,rgba(255,229,0,.09) 1px,transparent 1px,transparent 96px);background-position:calc(var(--p) * -520px) 0}
.k-par{transform:translate(calc(var(--mx) * -6px),calc(var(--my) * -4px));transition:transform .4s ease-out}
.k-par2{transform:translate(calc(var(--mx) * 10px),calc(var(--my) * 8px));transition:transform .4s ease-out}
.k-blk{opacity:clamp(0,calc((var(--p) - var(--t)) * 10),1);transform:translateY(calc(clamp(0,calc((var(--t) + .1 - var(--p)) * 10),1) * 12px))}
.k-log{opacity:clamp(.22,calc((var(--p) - var(--t)) * 10 + .22),1)}
.k-log .k-chk{opacity:clamp(0,calc((var(--p) - var(--t)) * 10),1)}
.k-seg>span{opacity:clamp(.12,calc((var(--p) / .9 - var(--i) / 24) * 24),1)}
.k-done .k-h1 .k-w>span{color:#FFE500}
.k-live{opacity:0;transform:translateY(6px);transition:opacity .6s ease,transform .6s cubic-bezier(.19,1,.22,1)}
.k-done .k-live{opacity:1;transform:none}
.k-frame{transition:box-shadow .9s ease,border-color .9s ease}
.k-done .k-frame{border-color:#FFE500 !important;box-shadow:0 0 0 1px #FFE500,0 0 70px rgba(255,229,0,.22)}
.k-tc{transition:color .5s ease,text-shadow .5s ease}
.k-done .k-tc{color:#FFE500;text-shadow:0 0 28px rgba(255,229,0,.4)}
.k-done .k-seg>span{animation:k-segp 1s ease-out calc(var(--i) * 24ms) both}
.k-caret{animation:k-blink 1s steps(1,end) infinite}
.k-gauge .v{transition:stroke-dashoffset 1.8s cubic-bezier(.19,1,.22,1) var(--d,0s)}
.k-in .k-gauge .v{stroke-dashoffset:var(--o)}
.k-bar{transform:scaleX(0);transform-origin:0 50%;transition:transform 1.6s cubic-bezier(.19,1,.22,1) var(--d,0s)}
.k-in .k-bar{transform:none}
.k-runner{left:0;transition:left 6s cubic-bezier(.3,0,.2,1) .4s}
.k-in .k-runner{left:100%}
.k-trk{transform:scaleX(0);transform-origin:0 50%;transition:transform 6s cubic-bezier(.3,0,.2,1) .4s}
.k-in .k-trk{transform:none}
.k-fld{box-sizing:border-box;width:100%;min-height:54px;padding:0 16px;border:2px solid #0B0B0D;border-radius:4px;background:#F2F0EA;color:#0B0B0D;outline:none;transition:box-shadow .3s ease}
.k-fld:focus{box-shadow:0 0 0 4px rgba(11,11,13,.18)}
.k-fld::placeholder{color:#8A8C93}
.k-pulse{animation:k-pulse 2.4s ease-out infinite}
.k-track{animation:k-marq 40s linear infinite}
.k-marq:hover .k-track{animation-play-state:paused}
.k-bar2,.k-grain,.k-prog{display:none}
.k-bar2{display:flex;position:fixed;left:0;top:0;right:0;z-index:40;align-items:center;justify-content:space-between;gap:24px;padding:12px clamp(20px,4vw,56px);box-sizing:border-box;background:rgba(11,11,13,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#F2F0EA;border-bottom:1px solid rgba(242,240,234,.12);transform:translateY(-100%);transition:transform .65s cubic-bezier(.19,1,.22,1)}
.k-show .k-bar2{transform:none}
.k-grain{display:block;position:fixed;left:0;top:0;right:0;bottom:0;z-index:60;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='128' height='128'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .6 0'/></filter><rect width='128' height='128' filter='url(%23n)'/></svg>");background-size:128px 128px;opacity:.09;mix-blend-mode:soft-light}
.k-prog{display:block;position:fixed;left:0;top:0;right:0;height:3px;z-index:45;background:#FFE500;transform-origin:0 50%;transform:scaleX(var(--sp,0))}
.k-intro{display:none}
.k-intro{display:flex;position:fixed;left:0;top:0;right:0;bottom:0;z-index:70;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#FFE500;color:#0B0B0D;transition:transform .75s cubic-bezier(.76,0,.24,1) .2s,visibility 0s linear 1s}
.k-go .k-intro{transform:translateY(-100%);visibility:hidden}
.k-stamp{animation:k-stamp .75s cubic-bezier(.2,1.4,.3,1) both}
.k-stamp2{animation:k-stamp .6s cubic-bezier(.2,1.4,.3,1) .25s both}
.k-quake{animation:k-quake .55s cubic-bezier(.36,.07,.19,.97) both}
.k-vib:hover{animation:k-vib .22s linear infinite}
.k-fly{opacity:0;transform:translateY(170px) rotate(var(--r,-6deg)) scale(.86);transition:opacity .5s ease calc(var(--i,0) * .13s + var(--d,0s)),transform 1.4s cubic-bezier(.2,1.3,.3,1) calc(var(--i,0) * .13s + var(--d,0s))}
.k-in .k-fly{opacity:1;transform:none}
.k-float{animation:k-float 6s ease-in-out infinite}
.k-par3{transform:translate(calc(var(--mx) * 18px),calc(var(--my) * 14px));transition:transform .5s ease-out}
.k-tilt{transform-style:preserve-3d;transition:transform .55s cubic-bezier(.19,1,.22,1)}
.k-body{transform:skewY(calc(var(--sk,0) * 1deg));transform-origin:50% 50%}
.k-tick{animation:k-tick .35s cubic-bezier(.19,1,.22,1)}
.k-cur,.k-cur2{display:none}
@media (hover:hover) and (pointer:fine){
.k-cur{display:block;position:fixed;left:0;top:0;z-index:80;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:#fff;mix-blend-mode:difference;pointer-events:none}
.k-cur2{display:block;position:fixed;left:0;top:0;z-index:80;width:38px;height:38px;margin:-19px 0 0 -19px;border-radius:50%;border:1.5px solid #fff;mix-blend-mode:difference;pointer-events:none;transition:width .3s ease,height .3s ease,margin .3s ease,background-color .3s ease}
.k-hov .k-cur2{width:64px;height:64px;margin:-32px 0 0 -32px;background-color:rgba(255,255,255,.35)}
}
@keyframes k-stamp{0%{transform:scale(2.6) rotate(-6deg);opacity:0}55%{transform:scale(.94) rotate(1deg);opacity:1}100%{transform:scale(1) rotate(0)}}
@keyframes k-quake{10%,90%{transform:translate(-1px,0)}20%,80%{transform:translate(3px,-1px)}30%,50%,70%{transform:translate(-5px,2px) rotate(-.25deg)}40%,60%{transform:translate(5px,-2px) rotate(.25deg)}}
@keyframes k-vib{0%{transform:translate(0)}25%{transform:translate(1px,-1px)}50%{transform:translate(-1px,1px)}75%{transform:translate(1px,1px)}100%{transform:translate(-1px,-1px)}}
@keyframes k-float{0%,100%{transform:translateY(0) rotate(var(--r,0deg))}50%{transform:translateY(-14px) rotate(var(--r,0deg))}}
@keyframes k-tick{0%{transform:translateY(7px);opacity:.25}100%{transform:none;opacity:1}}
@keyframes k-segp{0%{transform:scaleY(1)}35%{transform:scaleY(2.2);background:#F2F0EA}100%{transform:scaleY(1)}}
@keyframes k-blink{0%,49%{opacity:1}50%,100%{opacity:0}}
@keyframes k-pulse{0%{box-shadow:0 0 0 0 rgba(255,229,0,.5)}100%{box-shadow:0 0 0 14px rgba(255,229,0,0)}}
@keyframes k-marq{to{transform:translateX(-50%)}}
@media (max-width:960px){.k-nav{display:none !important}}
@media (max-width:700px){.k-sub{display:none !important}.k-stage{height:auto}.k-pin{position:relative;height:auto;min-height:0}.k-main{flex:0 0 auto !important;padding-bottom:140px !important}}
@media (max-width:900px){.k-trkbox{display:none !important}}
@media (prefers-reduced-motion:reduce){
.k-w>span,.k-up,.k-it,.k-ln,.k-bar,.k-fly{opacity:1 !important;transform:none !important;transition:none !important}
.k-caret,.k-seg>span,.k-pulse,.k-track,.k-float,.k-quake,.k-vib:hover,.k-tick{animation:none}
.k-intro{display:none}
.k-body{transform:none}
.k-runner,.k-trk,.k-gauge .v{transition:none}
}
/* ===== デザイン版 追加CSS（共通部品・サブページ・Astra打ち消し） ===== */
.bkd [hidden]{display:none!important}
.bkd{--ink:#0B0B0D;--paper:#F2F0EA;--yel:#FFE500;--mute:#6B6E76;--line:#2B2D33;--rule:#C8C5BC}
.bkd .k-lock{overflow:hidden}
/* Astra のCSSは外している（mu-plugin）。Astraが持っていた最低限だけここで */
body.bkd .screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
body.bkd .screen-reader-text:focus{clip:auto!important;clip-path:none;height:auto;width:auto;left:8px;top:8px;z-index:100000;padding:12px 18px;background:#FFE500;color:#0B0B0D;font-weight:700}
body.bkd #masthead,body.bkd .site-header,body.bkd #colophon,body.bkd .site-footer,body.bkd #ast-scroll-top,body.bkd .ast-scroll-top-icon,body.bkd .ast-mobile-popup-drawer{display:none!important}
body.bkd img{max-width:100%;height:auto}
/* Astra の枠を外す（ページ本体は全幅・余白0） */
body.bkd #content,body.bkd .site-content,body.bkd .ast-container{max-width:none!important;padding:0!important;margin:0!important}
body.bkd .entry-content,body.bkd .entry-content>*,body.bkd article,body.bkd .ast-article-single{max-width:none!important;margin:0!important;padding:0!important;border:0!important}
body.bkd .ast-separate-container .ast-article-single{background:transparent}
body.bkd .entry-header,body.bkd .ast-single-post-featured-section{display:none!important}
/* サブページのヘッダー（黒帯） */
.k-head{position:relative;z-index:6;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px clamp(20px,4vw,56px);background:#0B0B0D;color:#F2F0EA}
.k-head .k-nav{display:flex;align-items:center;gap:28px;font-size:13px;font-weight:700;letter-spacing:.12em}
/* スマホメニュー */
.k-mbtn{display:none;align-items:center;justify-content:center;width:44px;height:44px;border:2px solid currentColor;border-radius:50%}
.k-menu{display:none}
@media (max-width:960px){
  .k-mbtn{display:inline-flex}
  .k-menu{display:flex;position:fixed;left:0;top:0;right:0;bottom:0;z-index:90;flex-direction:column;justify-content:center;gap:6px;padding:80px clamp(24px,8vw,64px) 40px;background:#0B0B0D;color:#F2F0EA;transform:translateY(-100%);transition:transform .6s cubic-bezier(.76,0,.24,1);box-sizing:border-box}
  .k-menu.k-menu-open{transform:none}
  .k-menu a{display:flex;align-items:center;justify-content:space-between;min-height:56px;border-bottom:1px solid #2B2D33;font-size:22px}
  .k-menu .k-mclose{position:absolute;right:20px;top:20px;width:44px;height:44px;border:2px solid #F2F0EA;border-radius:50%;display:flex;align-items:center;justify-content:center}
}
/* ページ見出し（サブページのヒーロー） */
.k-ph{position:relative;overflow:hidden;padding:clamp(56px,8vw,110px) clamp(20px,4vw,56px) clamp(48px,6vw,88px);background:#0B0B0D;color:#F2F0EA}
.k-ph .k-ghost{position:absolute;right:-2vw;top:-4vw;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:clamp(180px,30vw,460px);line-height:1;letter-spacing:-.04em;color:transparent;-webkit-text-stroke:1px rgba(242,240,234,.1);user-select:none;pointer-events:none}
.k-ph .k-inner{position:relative;max-width:1328px;margin:0 auto;display:flex;flex-direction:column;gap:22px}
.k-ph h1{margin:0;font-size:clamp(34px,5.4vw,76px);line-height:1.22;letter-spacing:.01em}
.k-ph .k-lead{max-width:640px;margin:0;font-size:15px;font-weight:500;line-height:2.1;color:#C9CBD1}
.k-eyebrow{display:flex;align-items:center;gap:14px;font-size:12px;font-weight:700;letter-spacing:.22em;line-height:1.6}
.k-eyebrow .k-ln{display:block;width:40px;height:2px;background:currentColor}
/* 汎用セクション */
.k-sec{padding:clamp(72px,8vw,120px) clamp(20px,4vw,56px)}
.k-sec.k-dark{background:#0B0B0D;color:#F2F0EA;border-radius:clamp(28px,4vw,56px) clamp(28px,4vw,56px) 0 0}
.k-sec.k-yel{background:#FFE500;color:#0B0B0D;border-radius:clamp(28px,4vw,56px) clamp(28px,4vw,56px) 0 0}
.k-wrap{max-width:1328px;margin:0 auto;display:flex;flex-direction:column;gap:44px}
.k-sechead{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px 64px}
.k-sechead h2{margin:0;font-size:clamp(28px,4.2vw,60px);line-height:1.3}
.k-sechead p{margin:0;max-width:420px;font-size:14px;font-weight:500;line-height:2.1;color:#3A3C44}
.k-dark .k-sechead p,.k-dark .k-prose{color:#C9CBD1}
.k-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}
.k-grid.k-g3{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr))}
.k-box{display:flex;flex-direction:column;gap:12px;box-sizing:border-box;padding:26px 28px;border:2px solid #0B0B0D;border-radius:14px;background:#F2F0EA;min-width:0}
.k-box.k-flat{box-shadow:none}
.k-box.k-pop{background:#FFE500;box-shadow:8px 8px 0 #0B0B0D}
.k-dark .k-box{border-color:#2B2D33;background:#16171B;color:#F2F0EA}
.k-box h3,.k-box .k-h3{margin:0;font-size:20px;line-height:1.4}
.k-box p{margin:0;font-size:13.5px;line-height:1.9;color:#3A3C44}
.k-dark .k-box p{color:#C9CBD1}
.k-box ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;font-size:13px;line-height:1.8}
.k-box ul li{padding:8px 0;border-top:1px solid #C8C5BC}
.k-box ul li:last-child{border-bottom:1px solid #C8C5BC}
.k-dark .k-box ul li{border-color:#2B2D33}
.k-num{font-weight:800;line-height:1}
.k-stat{display:flex;flex-direction:column;gap:6px}
.k-stat .k-big{font-weight:800;font-size:clamp(40px,5vw,64px);line-height:1}
.k-stat .k-cap{font-size:11px;font-weight:700;letter-spacing:.2em;color:#6B6E76}
.k-rows{display:flex;flex-direction:column;border-bottom:2px solid #0B0B0D}
.k-rows>.k-row{border-top:2px solid #0B0B0D}
.k-dark .k-rows{border-color:#2B2D33}.k-dark .k-rows>.k-row{border-color:#2B2D33}
.k-prose{font-size:14.5px;line-height:2.1;color:#3A3C44;max-width:760px}
.k-prose p{margin:0 0 1.2em}
.k-prose h3{margin:2em 0 .6em;font-size:20px;line-height:1.5}
.k-prose ul,.k-prose ol{margin:0 0 1.2em;padding-left:1.4em}
.k-prose a{border-bottom:2px solid #FFE500}
.k-prose strong{color:#0B0B0D}
.k-dark .k-prose strong{color:#F2F0EA}
.k-table{overflow-x:auto;-webkit-overflow-scrolling:touch;border:2px solid #0B0B0D;border-radius:12px}
.k-table table{border-collapse:collapse;width:100%;min-width:640px;font-size:13.5px;line-height:1.7}
.k-table th,.k-table td{padding:14px 16px;border-bottom:1px solid #C8C5BC;text-align:left;vertical-align:top}
.k-table th{background:#0B0B0D;color:#F2F0EA;font-weight:700;font-size:12px;letter-spacing:.1em}
.k-table tr:last-child td{border-bottom:0}
.k-table td:first-child{font-weight:700}
.k-tag2{display:inline-flex;align-items:center;padding:4px 10px;border:1.5px solid currentColor;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.1em}
.k-ok{color:#1F7A3A}.k-ng{color:#B3261E}
.k-cta-band{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 40px;padding:28px clamp(20px,3vw,40px);background:#0B0B0D;color:#F2F0EA;border-radius:14px}
.k-btn{display:inline-flex;align-items:center;gap:14px;min-height:60px;padding:0 30px;background:#FFE500;color:#0B0B0D;border-radius:999px;font-weight:900;font-size:15px;letter-spacing:.08em}
.k-btn.k-ghostbtn{background:transparent;border:2px solid currentColor;color:inherit}
.k-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:24px 0}
.k-step{display:flex;flex-direction:column;gap:12px;border-top:2px solid #0B0B0D;padding:16px 24px 0 0;min-width:0}
.k-dark .k-step{border-color:#2B2D33}
.k-faqlist{display:flex;flex-direction:column;border-bottom:2px solid #0B0B0D}
.k-faqlist>div{border-top:2px solid #0B0B0D}
.k-faqlist .k-q{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;min-height:72px;padding:16px 0;text-align:left}
.k-faqlist .k-q span{font-size:17px;line-height:1.6}
.k-faqlist [data-acc-body]{padding:0 0 22px;max-width:720px;font-size:14px;line-height:2;color:#3A3C44}
.k-faqlist [data-acc-body] ul{margin:.6em 0;padding-left:1.4em}
.k-badge{display:inline-flex;align-items:center;padding:6px 14px;background:#FFE500;color:#0B0B0D;font-weight:800;font-size:12px;letter-spacing:.14em;line-height:1}
/* フォーム */
.k-form{display:flex;flex-direction:column;gap:18px;max-width:640px}
.k-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;letter-spacing:.08em}
.k-form textarea.k-fld{min-height:160px;padding:14px 16px;resize:vertical}
.k-form .k-radios{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:10px}
.k-form .k-radio{display:flex;align-items:center;gap:10px;min-height:54px;padding:0 16px;border:2px solid #0B0B0D;border-radius:4px;background:#F2F0EA;cursor:pointer;font-size:14px;font-weight:700;letter-spacing:0}
.k-form .k-radio input{accent-color:#0B0B0D;width:18px;height:18px}
.k-form .k-radio:has(input:checked){background:#0B0B0D;color:#F2F0EA}
.k-form .k-check{flex-direction:row;align-items:center;gap:10px;font-weight:600;letter-spacing:0;font-size:13.5px}
.k-form .k-check input{accent-color:#0B0B0D;width:18px;height:18px}
.k-form .k-err{padding:12px 16px;border:2px solid #B3261E;border-radius:4px;color:#B3261E;font-weight:700;font-size:13px}
.k-form .k-hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden}
@media (max-width:700px){.k-sechead h2 br{display:none}.k-ph h1{font-size:clamp(30px,9vw,44px)}}

/* テンプレート集のサムネイル */
.k-thumb{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;border-radius:10px;background:#D9D6CE;isolation:isolate}
.k-thumb img{position:absolute;left:0;top:0;width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.19,1,.22,1),opacity .5s ease}
.k-thumb .k-thumb2{opacity:0}
@media (hover:hover){.k-tmpl:hover .k-thumb img{transform:scale(1.04)}.k-tmpl:hover .k-thumb .k-thumb2{opacity:1}}

/* 料金の見積もり */
.k-qt{display:flex;align-items:center;gap:12px;margin:0 0 12px;font-size:18px;font-weight:700}
.k-qt .k-n{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:32px;padding:0 10px;background:#0B0B0D;color:#FFE500;border-radius:999px;font-weight:800;font-size:15px;letter-spacing:.1em}
.k-opts{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}
.k-opts4{grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr))}
.bkd .k-opt{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;min-height:64px;padding:12px 18px;border:2px solid #0B0B0D!important;border-radius:12px;background:#F2F0EA!important;color:#0B0B0D;font-weight:700;font-size:15px;text-align:left;transition:background-color .3s ease,color .3s ease,transform .3s cubic-bezier(.19,1,.22,1)}
.bkd .k-opt:hover{transform:translateY(-2px)}
.bkd .k-opt[aria-pressed="true"]{background:#0B0B0D!important;color:#FFE500}
.k-opt .k-pp{font-weight:800;font-size:22px;line-height:1}
.k-opt .k-pp small{font-size:12px;margin-left:2px}
.k-cl{font-size:12px;font-weight:700;letter-spacing:.14em;color:#6B6E76}
.k-adds{display:flex;flex-direction:column;border-top:1px solid #C8C5BC}
.k-add{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #C8C5BC}
.k-add b{display:block;font-size:14px}.k-add small{font-size:12px;color:#6B6E76}
.k-step{display:flex;align-items:center;gap:6px}
.bkd .k-step button{width:44px;height:44px;border:2px solid #0B0B0D!important;border-radius:50%;font-size:20px;font-weight:700;line-height:1}
.k-step button:disabled{opacity:.3;cursor:default}
.k-step output{min-width:32px;text-align:center;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:24px}
.k-total{display:grid;gap:0 24px;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));padding:16px 20px;background:#0B0B0D;color:#F2F0EA;border-radius:12px}
.k-total>div{display:flex;flex-direction:column;gap:4px;padding:8px 0}
.k-total span{font-size:12px;font-weight:700;letter-spacing:.1em;color:#9A9DA6}
.k-total b{font-weight:800;font-size:28px;line-height:1.1;color:#FFE500}
.k-total b small{font-size:13px;margin-left:2px;color:#F2F0EA}
.k-bump{animation:k-bump .45s cubic-bezier(.19,1,.22,1)}
@keyframes k-bump{0%{transform:translateY(6px);opacity:.3}100%{transform:none;opacity:1}}
.k-est-res{display:flex;flex-direction:column;gap:18px;padding-top:6px}

/* 固定の相談ボタン（スマホ：下に3つ／PC：右下にLINE＋QR） */
.k-fix{position:fixed;z-index:85;display:flex;gap:8px;transition:transform .55s cubic-bezier(.19,1,.22,1),opacity .4s ease}
.k-fix-b{display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;min-height:52px;padding:0 16px;border-radius:999px;font-weight:900;font-size:13px;letter-spacing:.06em;box-shadow:0 10px 30px -10px rgba(0,0,0,.5)}
.k-fix-tel{background:#F2F0EA;color:#0B0B0D;border:2px solid #0B0B0D}
.k-fix-line{background:#06C755;color:#fff}
.k-fix-form{background:#FFE500;color:#0B0B0D;border:2px solid #0B0B0D}
.k-fix-qr{display:none}
@media (max-width:960px){
  .k-fix{left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));transform:translateY(140%);opacity:0}
  .k-show .k-fix{transform:none;opacity:1}
  .k-fix-b{flex:1 1 0;min-width:0;padding:0 6px;font-size:12px;letter-spacing:.02em}
  .k-fix-b svg{flex:0 0 auto;width:16px;height:16px}
  .k-fix-tel{flex:0 0 72px}
  #top footer{padding-bottom:calc(84px + env(safe-area-inset-bottom))!important}
}
@media (min-width:961px){
  .k-fix{right:24px;bottom:24px;flex-direction:column;align-items:flex-end;transform:translateY(160%);opacity:0}
  .k-show .k-fix{transform:none;opacity:1}
  .k-fix-tel,.k-fix-form{display:none}
  .k-fix-line{min-height:60px;padding:0 24px;font-size:14px}
  .k-fix-qr{order:-1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px;border-radius:14px;background:#0B0B0D;color:#F2F0EA;font-size:11px;font-weight:700;letter-spacing:.06em;opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .35s ease,transform .45s cubic-bezier(.19,1,.22,1)}
  .k-fix:hover .k-fix-qr,.k-fix:focus-within .k-fix-qr{opacity:1;transform:none}
}
.k-qrbox svg,.k-fix-qr svg{display:block;width:100%;height:100%}
@media (max-width:700px){.k-qrbox{display:none!important}}

/* スピード診断（本番から写したプラグイン .bsc）をデザイン版の色・書体に */
.bkd .bsc{--bsc-red:#0B0B0D;--bsc-red-d:#0B0B0D;--bsc-black:#0B0B0D;--bsc-paper:#F2F0EA;--bsc-f-body:'Noto Sans JP',sans-serif;--bsc-f-head:'Dela Gothic One',sans-serif;--bsc-f-num:'Barlow Condensed',sans-serif;border-top-width:2px;border-radius:14px;box-shadow:8px 8px 0 #0B0B0D}
.bkd .bsc .bsc-h{font-weight:400}
.bkd .bsc .bsc-url,.bkd .bsc .bsc-seg{border-radius:8px;overflow:hidden}
.bkd .bsc .bsc-go{background:#0B0B0D!important;color:#FFE500!important;border-radius:999px!important;box-shadow:none!important}
.bkd .bsc .bsc-url:focus{outline-color:#FFE500}
