@charset "utf-8";
/* =====================================================================
   トップページ専用（front-page.php / parts/front/*.php）
   土台は kk.css（色・ボタン・見出し・アコーディオン・CF7・Content Views）。ここはトップだけの見た目。
   文字は一切ここで足さない（::before/::after の content は記号・空のみ）。
   ===================================================================== */

/* body にも kk-front クラスが付くため main に限定（body に付くと画面全体が縦スクロール不可になる） */
main.kk-front{display:block;overflow:clip}
.kk-front .kk-ill{display:block;width:100%;height:auto}
.kk-fs{position:relative;padding:clamp(72px,10vw,132px) 0}
.kk-fs__bg{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.kk-fs>.kk-wrap,.kk-fs>.kk-wrap--narrow{position:relative;z-index:1}
.kk-fhead{margin-bottom:clamp(34px,5vw,60px)}
.kk-fhead .kk-sechead__mark{display:grid;margin:0 auto 14px}
.kk-fhead .kk-h{font-size:clamp(1.45rem,4.2vw,2.45rem);word-break:keep-all;overflow-wrap:anywhere}
.kk-fs__lead{text-align:center;margin:-18px auto 26px;color:var(--ink-2);font-weight:500}
.kk-fs__more{text-align:center;margin:34px 0 0}
.kk-front em{font-style:normal}
.kk-blob{position:absolute;border-radius:50%;filter:blur(60px);pointer-events:none}

/* ---------- 0. HERO ---------- */
.kk-hero{position:relative;isolation:isolate;overflow:hidden;padding:calc(var(--hdr) + clamp(22px,4vw,48px)) 0 clamp(36px,5vw,56px);background:linear-gradient(165deg,#FFF6DA 0%,var(--paper) 46%,#FDF0CC 100%)}
.kk-hero__bg{position:absolute;inset:0;z-index:-1;overflow:hidden}
.kk-blob{will-change:transform}
.kk-blob--a{width:min(720px,90vw);height:min(720px,90vw);right:-18%;top:-22%;background:radial-gradient(circle at 40% 40%,rgba(219,169,30,.62),transparent 66%);animation:kk-float 16s ease-in-out infinite}
.kk-blob--b{width:min(560px,80vw);height:min(560px,80vw);left:-22%;bottom:-24%;background:radial-gradient(circle,rgba(15,168,230,.28),transparent 66%);animation:kk-float 19s ease-in-out infinite reverse}
.kk-blob--c{width:min(420px,60vw);height:min(420px,60vw);left:38%;top:8%;background:radial-gradient(circle,rgba(211,93,94,.2),transparent 66%);animation:kk-float 22s ease-in-out infinite}
@keyframes kk-float{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(4%,6%) scale(1.08)}}
.kk-grain{position:absolute;inset:0;opacity:.18;mix-blend-mode:multiply}
.kk-hero__dots{position:absolute;left:0;top:0;width:min(640px,70%);height:70%;background:url(../img/front/deco-dots.svg) 0 0/26px 26px repeat;mask-image:radial-gradient(closest-side,#000,transparent);-webkit-mask-image:radial-gradient(closest-side,#000,transparent)}

.kk-hero__in{width:min(1320px,100% - 32px);margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(28px,4vw,48px);align-items:center}
@media (min-width:1024px){.kk-hero__in{grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);min-height:min(760px,calc(100svh - var(--hdr) - 140px))}}
.kk-hero__copy{container-type:inline-size;position:relative;z-index:2}

.kk-hero__title{margin:0;font-family:var(--f-round);font-weight:900;line-height:1.08;letter-spacing:.01em;color:var(--ink)}
.kk-hero__ln{display:block;overflow:hidden;padding:.08em .1em .1em 0;margin-bottom:-.04em}
.kk-hero__ln>span{position:relative;z-index:0;display:inline-block;white-space:nowrap}
.kk-hero__k{position:relative;display:inline-block;font-weight:900;font-size:8.2vw;font-size:clamp(1.9rem,9cqi,4.2rem);-webkit-text-stroke:.13em #fff;paint-order:stroke fill;text-shadow:0 .07em 0 rgba(23,28,97,.16),0 .16em .3em rgba(23,28,97,.12)}
.kk-hero__k--red{color:var(--red)}
.kk-hero__k--navy{color:var(--navy-2)}
.kk-hero__k::before{content:"";position:absolute;z-index:-1;left:-.04em;right:-.04em;bottom:.1em;height:.3em;border-radius:.2em;background:linear-gradient(90deg,var(--gold-l),rgba(243,215,122,.4));transform:scaleX(0);transform-origin:left;transition:transform .9s var(--ease)}
.kk-hero__k--navy::before{background:linear-gradient(90deg,rgba(15,168,230,.32),rgba(15,168,230,.1))}
.kk-hero__title small{font-size:clamp(1rem,4.6cqi,2.05rem);font-weight:900;color:var(--ink);margin-left:.12em;-webkit-text-stroke:.12em #fff;paint-order:stroke fill}
@media (prefers-reduced-motion:no-preference){
  .kk-hero__ln>span{animation:kk-lineup 1.05s var(--ease) both;animation-delay:calc(.08s + var(--i) * .13s)}
  .kk-hero__k::before{animation:kk-bar 1s var(--ease) both;animation-delay:calc(.75s + var(--i) * .15s)}
  .kk-hero__brand,.kk-hero__h1,.kk-hero__cta{animation:kk-fadeup 1s var(--ease) both}
  .kk-hero__brand{animation-delay:.5s}.kk-hero__h1{animation-delay:.62s}.kk-hero__cta{animation-delay:.74s}
}
.kk-hero__k::before{transform:scaleX(1)}
@keyframes kk-lineup{from{transform:translateY(105%)}to{transform:none}}
@keyframes kk-bar{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes kk-fadeup{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

.kk-hero__brand{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-top:clamp(14px,2vw,22px)}
.kk-hero__logo img{display:block;height:clamp(58px,9cqi,86px);width:auto;filter:drop-shadow(0 10px 16px rgba(23,28,97,.22))}
.kk-hero__badge{position:relative;display:inline-flex;align-items:center;gap:.45em;padding:.5em 1.05em;border-radius:12px;background:var(--navy);color:#fff;font-family:var(--f-round);font-weight:900;font-size:clamp(.98rem,3.6cqi,1.25rem);letter-spacing:.08em;box-shadow:0 5px 0 var(--navy-d),0 16px 26px -14px rgba(23,28,97,.7);transform:rotate(-3deg)}
.kk-hero__badge .kk-ico{color:var(--gold)}
.kk-hero__badge::after{content:"";position:absolute;inset:-6px;border-radius:16px;border:2px solid var(--gold);opacity:.0;animation:kk-ping 2.8s var(--ease) infinite 1.6s}
@keyframes kk-ping{0%{opacity:.8;transform:scale(.96)}70%,100%{opacity:0;transform:scale(1.12)}}

.kk-hero__h1{position:relative;margin:clamp(16px,2.4vw,24px) 0 0;padding:.75em 1em .75em 1.15em;max-width:40em;border-radius:16px;background:rgba(255,255,255,.88);box-shadow:0 0 0 1px rgba(219,169,30,.35),var(--sh-sm);font-size:clamp(.82rem,2.8cqi,.98rem);font-weight:700;line-height:1.75;color:var(--ink-2);letter-spacing:.02em}
.kk-hero__h1::before{content:"";position:absolute;left:.45em;top:.8em;bottom:.8em;width:4px;border-radius:4px;background:linear-gradient(var(--gold),var(--red))}

.kk-hero__cta{display:grid;grid-template-columns:1fr;gap:12px;margin-top:clamp(18px,2.6vw,28px);max-width:640px}
.kk-hero__btn{width:100%}
.kk-hero__btn--tel{line-height:1.25}
.kk-hero__telnum{display:block;font-size:1.06em;letter-spacing:.02em}
.kk-hero__btn--line{min-height:50px}
@media (min-width:560px){.kk-hero__cta{grid-template-columns:1fr 1fr}.kk-hero__btn:first-child{grid-column:1/-1}}

/* 右側のステージ（装飾） */
.kk-hero__stage{position:relative;width:min(100%,640px);margin-inline:auto;aspect-ratio:1/.9}
.kk-hero__photo{position:absolute;right:0;top:3%;width:84%;aspect-ratio:4/3;border-radius:clamp(24px,4vw,40px);overflow:hidden;border:clamp(5px,.8vw,8px) solid #fff;box-shadow:var(--sh-lg);transform:rotate(2.5deg);transition:transform .6s var(--ease);background:var(--gold-xl)}
.kk-hero__pic,.kk-hero__pic img{display:block;width:100%;height:100%;object-fit:cover}
.kk-hero__shine{position:absolute;inset:0;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.35) 48%,transparent 60%);transform:translateX(-120%);animation:kk-sweep 7s var(--ease) infinite 2.2s;pointer-events:none}
@keyframes kk-sweep{0%,60%{transform:translateX(-120%)}85%,100%{transform:translateX(120%)}}
.kk-hero__map{position:absolute;left:0;bottom:7%;width:70%;padding:6px;border-radius:22px;background:rgba(255,252,243,.94);box-shadow:0 0 0 1px rgba(255,255,255,.8) inset,var(--sh);z-index:2;animation:kk-bob 7s ease-in-out infinite}
.kk-routemap{display:block;width:100%;height:auto;border-radius:16px}
.kk-hero__uganda{position:absolute;left:3%;top:0;width:30%;aspect-ratio:1;border-radius:50%;overflow:hidden;border:5px solid #fff;box-shadow:var(--sh);z-index:3;animation:kk-bob 6s ease-in-out infinite .6s}
.kk-hero__uganda picture,.kk-hero__uganda img{display:block;width:100%;height:100%;object-fit:cover}
.kk-hero__van{position:absolute;right:-3%;bottom:-2%;width:48%;z-index:4;filter:drop-shadow(0 18px 18px rgba(23,28,97,.2));animation:kk-drive 3.2s ease-in-out infinite}
.kk-hero__spark{position:absolute;width:clamp(22px,4vw,40px)!important;z-index:5;animation:kk-twinkle 2.6s ease-in-out infinite}
.kk-hero__spark--1{left:32%;top:5%}
.kk-hero__spark--2{right:2%;top:-2%;animation-delay:1.1s;width:clamp(16px,2.6vw,26px)!important}
.kk-hero__ring{position:absolute;left:-6%;top:-6%;width:44%;aspect-ratio:1;border-radius:50%;border:2px dashed rgba(23,28,97,.22);animation:kk-spin 40s linear infinite;z-index:1}
@keyframes kk-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes kk-drive{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-4px) rotate(-.6deg)}}
@keyframes kk-twinkle{0%,100%{transform:scale(.7) rotate(0);opacity:.55}50%{transform:scale(1.1) rotate(25deg);opacity:1}}
@keyframes kk-spin{to{transform:rotate(360deg)}}
@media (max-width:1023px){.kk-hero__stage{max-width:560px}}

/* 写真の帯 */
.kk-marquee{position:relative;margin:clamp(34px,5vw,56px) -4vw 0;padding:14px 0;background:var(--navy);transform:rotate(-1.6deg);box-shadow:0 26px 50px -28px rgba(14,18,69,.8);overflow:hidden}
.kk-marquee::before,.kk-marquee::after{content:"";position:absolute;left:0;right:0;height:3px;background:repeating-linear-gradient(90deg,var(--gold) 0 18px,transparent 18px 30px)}
.kk-marquee::before{top:5px}.kk-marquee::after{bottom:5px}
.kk-marquee__track{display:flex;gap:14px;width:max-content;animation:kk-marq 70s linear infinite}
.kk-marquee:hover .kk-marquee__track{animation-play-state:paused}
.kk-marquee__item{flex:none;width:clamp(170px,19vw,250px);aspect-ratio:3/2;border-radius:14px;overflow:hidden;border:3px solid #fff;transform:rotate(var(--r,0deg));background:var(--navy-2)}
.kk-marquee__item picture,.kk-marquee__item img{display:block;width:100%;height:100%;object-fit:cover}
@keyframes kk-marq{to{transform:translateX(calc(-50% - 7px))}}

/* ---------- S02 相場 ---------- */
.kk-fs--souba{background:#fff}
.kk-fs--souba::before{content:"";position:absolute;inset:0 0 auto;height:260px;background:radial-gradient(60% 100% at 50% 0%,var(--gold-xxl),transparent 70%);pointer-events:none}
.kk-souba{position:relative;max-width:1000px;margin-inline:auto;padding:clamp(14px,3vw,36px);border-radius:clamp(24px,4vw,40px);background:linear-gradient(180deg,#fff,var(--gold-xxl));box-shadow:var(--sh-lg),0 0 0 1px var(--gold-xl)}
.kk-souba__van{position:absolute;right:clamp(10px,4vw,48px);top:0;width:clamp(96px,14vw,150px)!important;transform:translateY(-82%);animation:kk-drive 2.6s ease-in-out infinite}
.kk-souba .wpsm_panel-group{margin:0!important}
.kk-souba .wpsm_panel-title a{font-size:clamp(.9rem,2.4vw,1.06rem)!important}
@media (max-width:600px){.kk-souba .wpsm_panel-title a{padding:.95em 3em .95em 1em!important;gap:.5em!important}}
.kk-souba .wpsm_panel-body .wpsm_panel-title a{background:linear-gradient(100deg,var(--navy),var(--navy-3))!important;font-size:.92rem!important;padding-top:.85em!important;padding-bottom:.85em!important}
.kk-souba .wpsm_panel-body{padding:clamp(12px,2.4vw,22px)!important}
.kk-souba .wpsm_panel-body .wpsm_panel-body{padding:clamp(8px,2vw,16px)!important;background:var(--paper)!important}
.kk-souba .wpsm_panel-body h2{position:relative;margin:1.4em 0 .8em;padding:.1em 0 .1em .9em;font-family:var(--f-round);font-weight:900;font-size:clamp(1rem,2.4vw,1.2rem);line-height:1.5;color:var(--navy);background:none}
.kk-souba .wpsm_panel-body h2:first-child{margin-top:.2em}
.kk-souba .wpsm_panel-body h2::before{content:"";position:absolute;left:0;top:.2em;bottom:.2em;width:5px;border-radius:4px;background:linear-gradient(var(--gold),var(--red))}
.kk-souba .wpsm_panel-body a{font-weight:700}
.kk-souba .wpsm_panel-body p{margin:0 0 .8em}
/* 表（はみ出しは横スクロール） */
.kk-souba .kk-tscroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:.6em 0 1em;border-radius:14px}
.kk-souba table{width:100%;border-collapse:separate;border-spacing:0;font-size:clamp(.78rem,2.1vw,.92rem);line-height:1.5;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 0 0 1px var(--line)}
.kk-souba th,.kk-souba td{padding:.7em .75em;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;border-left:0;border-right:0;border-top:0}
.kk-souba tr:first-child>*,.kk-souba th{background:var(--navy)!important;color:#fff!important;font-weight:700;font-size:.92em}
.kk-souba tr:first-child>* *{color:#fff!important}
.kk-souba tr:nth-child(even) td{background:#FFFBEF}
.kk-souba tr:hover td{background:var(--gold-xxl)}
.kk-souba td:not(:first-child){font-family:var(--f-en);font-weight:700;white-space:nowrap;font-feature-settings:"tnum"}
.kk-souba td:first-child a{color:var(--navy-3);text-decoration:underline;text-decoration-color:var(--gold-l);text-decoration-thickness:2px}
.kk-souba span[style*="red"]{color:var(--red)!important;font-weight:800}
.kk-souba span[style*="blue"]{color:var(--sky-d)!important;font-weight:800}
/* 相場の検索フォーム */
.kk-souba .souba-search-form{display:grid;grid-template-columns:1fr;gap:10px;padding:16px;border-radius:18px;background:var(--gold-xxl);box-shadow:0 0 0 1px var(--gold-xl) inset}
.kk-souba .souba-search-form label{display:block;font-weight:700;color:var(--navy);font-size:.88rem}
.kk-souba .souba-search-form select{display:block;width:100%;margin-top:4px;min-height:46px;padding:.6em 2.4em .6em .9em;border:2px solid var(--line);border-radius:12px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171C61' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right .8em center/16px no-repeat;font:inherit;font-size:16px;color:var(--ink);-webkit-appearance:none;appearance:none}
.kk-souba .souba-search-form select:focus{outline:0;border-color:var(--gold);box-shadow:0 0 0 4px rgba(219,169,30,.22)}
.kk-souba .souba-search-form input[type=submit],.kk-souba .souba-search-form button{min-height:50px;margin-top:4px;padding:.6em 1.6em;border:0;border-radius:999px;background:linear-gradient(180deg,#F0C640,var(--gold));color:var(--navy);font:inherit;font-weight:900;letter-spacing:.1em;cursor:pointer;box-shadow:0 4px 0 var(--gold-dd)}
.kk-souba .souba-search-form>*{min-width:0}
@media (min-width:768px){.kk-souba .souba-search-form{grid-template-columns:repeat(3,1fr) auto;align-items:end}}

/* ---------- S03 とは？ ---------- */
.kk-fs--about{background:radial-gradient(90% 60% at 100% 0%,var(--gold-xl),transparent 60%),radial-gradient(70% 50% at 0% 100%,var(--sky-l),transparent 60%),var(--paper)}
.kk-worries{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:18px;max-width:1060px;margin-inline:auto}
@media (min-width:900px){.kk-worries{grid-template-columns:1fr 1fr;gap:26px 34px}.kk-worry:nth-child(2),.kk-worry:nth-child(4){transform:translateY(42px)}.kk-worry:nth-child(2).is-in,.kk-worry:nth-child(4).is-in{transform:translateY(42px)}}
.kk-front .kk-worries__ill{display:none}
@media (min-width:1200px){.kk-front .kk-worries__ill{display:block;position:absolute;right:-118px;top:-110px;width:150px!important;transform:rotate(6deg)}}
.kk-worry{display:flex;align-items:flex-start;gap:14px;margin:0}
.kk-worry--r{flex-direction:row-reverse}
.kk-worry__who{flex:none;width:78px;text-align:center}
.kk-worry__who img{display:block;width:72px;height:72px;margin:0 auto;border-radius:50%;object-fit:cover;background:#fff;border:4px solid #fff;box-shadow:0 0 0 3px var(--gold-l),var(--sh-sm)}
.kk-worry__who figcaption{margin-top:6px;font-size:.66rem;line-height:1.35;color:var(--ink-2);font-weight:700}
.kk-worry__say{position:relative;flex:1;min-width:0;padding:1em 1.2em;border-radius:24px;background:#fff;box-shadow:var(--sh);line-height:1.85;font-size:.95rem}
.kk-worry__say::before{content:"";position:absolute;top:26px;width:18px;height:18px;background:#fff;transform:rotate(45deg);border-radius:3px}
.kk-worry--l .kk-worry__say::before{left:-7px}
.kk-worry--r .kk-worry__say::before{right:-7px}
.kk-worry__say p{margin:0}
.kk-worry__say em{color:var(--red);font-weight:900;font-size:1.16em;background:linear-gradient(transparent 64%,rgba(243,215,122,.7) 64%)}
.kk-worry__say strong{font-weight:900}

.kk-alert{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px;max-width:960px;margin:clamp(64px,9vw,110px) auto 0;padding:clamp(24px,4vw,44px) clamp(18px,4vw,52px);border-radius:clamp(24px,4vw,40px);background:#fff;box-shadow:var(--sh-lg),0 0 0 3px var(--gold-l) inset;text-align:center}
.kk-alert::before{content:"";position:absolute;inset:10px;border-radius:inherit;border:2px dashed var(--gold-l);pointer-events:none}
.kk-alert__ico svg{display:block;width:clamp(54px,8vw,72px);height:auto;animation:kk-wobble 3s ease-in-out infinite}
@keyframes kk-wobble{0%,100%{transform:rotate(0)}10%{transform:rotate(-8deg)}20%{transform:rotate(6deg)}30%{transform:rotate(0)}}
.kk-alert__txt{margin:0;font-family:var(--f-round);font-weight:900;font-size:clamp(1.12rem,3.2vw,1.75rem);line-height:1.75;color:var(--ink);text-wrap:pretty}
.kk-alert__txt em{color:var(--red);background:linear-gradient(transparent 62%,rgba(243,215,122,.85) 62%)}

.kk-uganda{position:relative;max-width:1080px;margin:clamp(40px,6vw,72px) auto 0}
.kk-uganda__frame{position:relative;aspect-ratio:3/2;border-radius:clamp(24px,4.5vw,48px);overflow:hidden;box-shadow:var(--sh-lg);background:var(--navy-l)}
.kk-uganda__pic,.kk-uganda__pic img{display:block;width:100%;height:100%;object-fit:cover}
.kk-uganda__pic img{transform:scale(1.1) translateY(var(--py,0px));transition:transform .2s linear;will-change:transform}
.kk-uganda__cap{position:relative;display:flex;gap:.7em;align-items:flex-start;margin:-34px 12px 0;padding:1em 1.2em;border-radius:20px;background:rgba(255,252,243,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:var(--sh);font-size:.9rem;font-weight:700;line-height:1.75;color:var(--ink)}
.kk-uganda__cap .kk-ico{flex:none;width:1.6em;height:1.6em;color:var(--sky-d);margin-top:.1em}
@media (min-width:900px){.kk-uganda__cap{position:absolute;left:28px;bottom:28px;margin:0;max-width:540px}}
.kk-uganda__ill{position:absolute;right:-10px;top:-46px;width:clamp(96px,14vw,150px)!important;animation:kk-bob 6s ease-in-out infinite}

.kk-because{display:flex;flex-direction:column;align-items:center;gap:6px;margin:clamp(54px,8vw,90px) auto 0;text-align:center}
.kk-because__txt{margin:0;font-family:var(--f-round);font-weight:900;font-size:clamp(1.3rem,4vw,2.2rem);line-height:1.6;color:var(--navy)}
.kk-because__txt strong{display:inline-block;margin-top:.15em;font-size:1.3em;color:var(--red);-webkit-text-stroke:.1em #fff;paint-order:stroke fill;text-shadow:0 .08em 0 rgba(23,28,97,.12)}
.kk-because__chev{display:grid;justify-items:center;margin-top:4px}
.kk-because__chev i{display:block;width:clamp(54px,8vw,76px);height:clamp(22px,3vw,30px);margin-top:-6px;background:linear-gradient(90deg,#F6B7B5,var(--red));clip-path:polygon(0 0,50% 62%,100% 0,100% 38%,50% 100%,0 38%);animation:kk-chev 1.6s ease-in-out infinite}
.kk-because__chev i:nth-child(1){opacity:.35;animation-delay:0s}.kk-because__chev i:nth-child(2){opacity:.6;animation-delay:.2s}.kk-because__chev i:nth-child(3){animation-delay:.4s}
@keyframes kk-chev{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}

.kk-service{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:center;max-width:1000px;margin:18px auto 0;padding:clamp(26px,4.5vw,56px);border-radius:clamp(26px,4.5vw,48px);background:radial-gradient(80% 120% at 100% 0%,rgba(58,65,168,.9),transparent 60%),linear-gradient(150deg,var(--navy),var(--navy-d));color:#fff;box-shadow:var(--sh-lg);overflow:hidden}
.kk-service::after{content:"";position:absolute;right:-80px;bottom:-80px;width:260px;height:260px;border-radius:50%;border:40px solid rgba(219,169,30,.14)}
@media (min-width:768px){.kk-service{grid-template-columns:240px minmax(0,1fr);gap:40px}.kk-service__ill{width:100%!important}}
.kk-service__ill{position:relative;width:min(220px,46%);margin-inline:auto}
.kk-service__exp{position:relative;z-index:1;border-radius:28px;box-shadow:0 20px 40px -20px rgba(0,0,0,.6)}
.kk-service__laurel{position:absolute;inset:-18% -22%;width:144%!important;max-width:none;z-index:0;opacity:.9}
.kk-service__txt{position:relative;z-index:1;margin:0;font-family:var(--f-round);font-weight:900;font-size:clamp(1.2rem,3.1vw,1.95rem);line-height:1.75;letter-spacing:.03em}
.kk-service__logo{display:inline-block;height:1.9em;width:auto;vertical-align:-.55em;margin-right:.15em;padding:.18em .4em;border-radius:12px;background:var(--gold);box-sizing:content-box}
.kk-service__txt em{color:var(--gold-l);background:linear-gradient(transparent 70%,rgba(217,58,53,.75) 70%)}
.kk-service__co{display:inline-block;margin:.1em 0;padding:0 .3em;border-radius:8px;background:rgba(255,255,255,.12);font-family:var(--f-en);font-weight:800;letter-spacing:.02em}

/* ---------- S04 流通 ---------- */
.kk-fs--route{background:#fff}
.kk-fs--route::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(23,28,97,.09) 1.4px,transparent 1.6px);background-size:22px 22px;mask-image:linear-gradient(180deg,transparent,#000 20%,#000 80%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,#000 20%,#000 80%,transparent);pointer-events:none}
.kk-routes{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
.kk-routes{max-width:1000px;margin-inline:auto}
.kk-rcard{position:relative;display:flex;flex-direction:column;padding:clamp(22px,3.4vw,38px);border-radius:clamp(24px,4vw,36px);background:#fff;box-shadow:var(--sh),0 0 0 1px var(--line)}
.kk-rcard--normal{background:linear-gradient(180deg,#FFF4F3,#fff 40%)}
.kk-rcard--direct{background:linear-gradient(160deg,var(--gold-xxl),#fff 45%,var(--gold-xl));box-shadow:var(--sh-lg),0 0 0 3px var(--gold) inset}
.kk-rcard__h{display:flex;align-items:center;gap:.6em;margin:0 0 18px;font-family:var(--f-round);font-weight:900;font-size:clamp(1.12rem,2.6vw,1.4rem);color:var(--navy);line-height:1.45}
.kk-rcard__tag{display:grid;place-items:center;flex:none;width:2em;height:2em;border-radius:50%;background:var(--red);color:#fff}
.kk-rcard--direct .kk-rcard__tag{background:var(--navy);color:var(--gold)}
.kk-rcard__tag .kk-ico{width:1em;height:1em}
.kk-rcard__list{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none}
.kk-rcard__list li{padding:.35em .9em;border-radius:999px;background:var(--red-l);color:var(--red-d);font-weight:700;font-size:.88rem}
.kk-rcard__p{margin:14px 0 0;line-height:1.95}
.kk-rcard__p em{color:var(--red);font-weight:800;background:linear-gradient(transparent 64%,rgba(243,215,122,.7) 64%)}
.kk-rcard__p--big{margin-top:22px;font-family:var(--f-round);font-weight:900;font-size:clamp(1.05rem,2.4vw,1.3rem);color:var(--navy)}

.kk-dia{container-type:inline-size;margin:0;padding:clamp(14px,2.4vw,22px);border-radius:24px;background:rgba(255,255,255,.75);box-shadow:0 0 0 1px var(--line) inset}
.kk-dia__nodes{position:relative;list-style:none;margin:0;padding:0;display:grid;gap:10px}
.kk-dia__node{position:relative;display:flex;align-items:center;gap:12px;margin:0;font-weight:800;font-size:.92rem;line-height:1.4;color:var(--ink)}
.kk-dia__node img{flex:none;width:64px!important}
.kk-dia__node--start span,.kk-dia__node--end span{color:var(--sky-d);font-family:var(--f-round);font-weight:900;font-size:1.02rem}
.kk-dia--normal .kk-dia__node--mid{opacity:.58;filter:saturate(.55)}
.kk-dia--normal .kk-dia__node--mid span{color:var(--rose)}
/* 縦並び（スマホ）：点線でつなぐ */
.kk-dia--normal .kk-dia__nodes::before{content:"";position:absolute;left:31px;top:30px;bottom:30px;border-left:3px dashed rgba(211,93,94,.45)}
.kk-dia__node img{position:relative;z-index:1}
.kk-dia__coin{position:absolute;left:44px;top:-2px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--gold);color:var(--navy);box-shadow:0 2px 0 var(--gold-dd);z-index:2;opacity:0}
.kk-dia__coin .kk-ico{width:13px;height:13px}
.kk-dia.is-run .kk-dia__coin,.is-in .kk-dia__coin{animation:kk-coin 2.4s var(--ease) infinite;animation-delay:calc(var(--n) * .45s)}
@keyframes kk-coin{0%{opacity:0;transform:translate(0,6px) scale(.6)}20%{opacity:1;transform:translate(0,-8px) scale(1)}70%{opacity:.9;transform:translate(16px,-30px) rotate(40deg) scale(.8)}100%{opacity:0;transform:translate(26px,-46px) rotate(80deg) scale(.5)}}
.kk-dia__burst{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;margin:6px 0;padding:0}
.kk-dia__burst img{width:clamp(64px,12cqi,100px)!important;flex:none}
.kk-dia__burst span{white-space:nowrap;position:relative;z-index:0;display:inline-block;padding:.6em 1.2em;font-family:var(--f-round);font-weight:900;font-size:clamp(1rem,3.6cqi,1.45rem);line-height:1.4;color:var(--red);text-align:center}
.kk-dia__burst span::before,.kk-dia__burst span::after{content:"";position:absolute;z-index:-1;inset:-4px -2px;background:#FFE14D;border-radius:14px;box-shadow:0 0 0 3px var(--navy) inset}
.kk-dia__burst span::after{inset:4px 8px;transform:rotate(-6deg);background:#FFD21F;box-shadow:none;z-index:-2}
.is-in .kk-dia__burst span{animation:kk-pop 2.6s var(--ease) infinite 1s}
@keyframes kk-pop{0%,100%{transform:scale(1) rotate(0)}12%{transform:scale(1.08) rotate(-2deg)}24%{transform:scale(1) rotate(0)}}
@container (min-width:430px){
  .kk-dia--normal .kk-dia__nodes{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px 6px;align-items:start}
  .kk-dia--normal .kk-dia__nodes::before{left:10%;right:10%;top:clamp(35px,7.5cqi,65px);bottom:auto;border-left:0;border-top:3px dashed rgba(211,93,94,.45)}
  .kk-dia--normal .kk-dia__node{flex-direction:column;text-align:center;gap:6px;font-size:clamp(.76rem,1.9cqi,.98rem)}
  .kk-dia--normal .kk-dia__node img{width:clamp(70px,15cqi,130px)!important}
  .kk-dia--normal .kk-dia__node--mid[style*="--n:2"] img{transform:scale(.92)}
  .kk-dia--normal .kk-dia__node--mid[style*="--n:3"] img{transform:scale(.84)}
  .kk-dia--normal .kk-dia__coin{left:50%;margin-left:16px}
  .kk-dia--normal .kk-dia__burst{grid-row:3;grid-column:2/5;margin-top:6px}
  .kk-dia--normal .kk-dia__node--start span,.kk-dia--normal .kk-dia__node--end span{font-size:.92rem}
}
/* 一般的な流通：止まっては走るハイエース（横並び時のみ） */
.kk-dia__trip{display:none}
@container (min-width:430px){
  .kk-dia--normal .kk-dia__trip{display:block;position:relative;grid-row:2;grid-column:1/-1;height:clamp(48px,10cqi,70px);margin:0}
  .kk-dia__trip .kk-dia__lane{top:auto;bottom:4px;margin-top:0;height:12px;background:#5B5F86;box-shadow:0 4px 0 #3E4268}
  .kk-dia__trip .kk-dia__lane::after{animation:none}
  .kk-dia__tvan{position:absolute;left:10%;bottom:12px;z-index:1;width:clamp(52px,11cqi,84px)!important;max-width:none;margin-left:calc(clamp(52px,11cqi,84px) / -2);transform:scaleX(-1)}
}
@media (prefers-reduced-motion:no-preference){
  .is-in .kk-dia__tvan{animation:kk-stopgo 7s ease-in-out infinite}
  @container (min-width:430px){
    .is-in .kk-dia--normal .kk-dia__coin{animation:kk-coin-stop 7s ease-out infinite;animation-delay:calc(.84s + (var(--n) - 1) * 1.54s)}
  }
}
/* 7秒で1周：一括査定(12-22%)・ディーラー(34-44%)・オークション(56-66%)で停車 → 輸出業者(80%〜)で停止 */
@keyframes kk-stopgo{0%{left:10%;opacity:0}2%{opacity:1}12%,22%{left:30%}34%,44%{left:50%}56%,66%{left:70%}80%,92%{left:90%;opacity:1}100%{left:90%;opacity:0}}
@keyframes kk-coin-stop{0%{opacity:0;transform:translate(0,6px) scale(.6)}3%{opacity:1;transform:translate(0,-8px) scale(1)}10%{opacity:.9;transform:translate(16px,-30px) rotate(40deg) scale(.8)}14%,100%{opacity:0;transform:translate(26px,-46px) rotate(80deg) scale(.5)}}
/* ダイレクト */
.kk-dia--direct .kk-dia__nodes{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px}
.kk-dia--direct .kk-dia__node{flex-direction:column;text-align:center;gap:6px;white-space:nowrap;font-size:clamp(.8rem,3cqi,1rem)}
.kk-dia--direct .kk-dia__node img{width:clamp(64px,15cqi,130px)!important}
.kk-dia--direct .kk-dia__burst{grid-column:1/-1;grid-row:2}
.kk-dia__road{position:relative;height:70px;align-self:center;margin-top:-24px}
.kk-dia__lane{position:absolute;left:0;right:0;top:50%;height:14px;margin-top:-7px;border-radius:999px;overflow:hidden;background:var(--navy);box-shadow:0 4px 0 var(--navy-d)}
.kk-dia__lane::after{content:"";position:absolute;left:-14px;right:8px;top:50%;height:2px;margin-top:-1px;background:repeating-linear-gradient(90deg,var(--gold) 0 12px,transparent 12px 22px);background-size:22px 2px;animation:kk-lane .9s linear infinite;will-change:transform}
@keyframes kk-lane{from{transform:translateX(0)}to{transform:translateX(22px)}}
.kk-dia__van{position:absolute;bottom:50%;left:0;width:min(110px,40%)!important;margin-bottom:2px;transform:scaleX(-1);animation:kk-go 4.2s var(--ease) infinite}
@keyframes kk-go{0%{left:0;opacity:0}10%{opacity:1}80%{opacity:1}100%{left:calc(100% - min(110px,40%));opacity:0}}

/* ---------- S05 メリット ---------- */
.kk-fs--merit{background:linear-gradient(180deg,var(--gold-xxl) 0%,var(--paper) 30%,var(--paper) 70%,var(--gold-xxl) 100%)}
.kk-ok{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:center;max-width:960px;margin:0 auto;padding:clamp(22px,4vw,44px);border-radius:clamp(24px,4vw,40px);background:#fff;box-shadow:var(--sh-lg)}
@media (min-width:768px){.kk-ok{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.kk-ok__van{width:min(340px,100%)!important}}
.kk-ok__list{list-style:none;margin:0;padding:0;display:grid;gap:clamp(10px,1.6vw,16px)}
.kk-ok__list li{position:relative;display:flex;align-items:center;gap:.75em;font-family:var(--f-round);font-weight:900;font-size:clamp(1.15rem,3.6vw,1.8rem);line-height:1.35;color:var(--ink)}
.kk-ok__list li::before{content:"";flex:none;width:1.25em;height:1.25em;border-radius:.3em;border:3px solid var(--navy);background:#fff;box-shadow:0 3px 0 rgba(23,28,97,.15)}
.kk-ok__list li::after{content:"";position:absolute;left:.18em;top:50%;width:1.1em;height:.62em;margin-top:-.52em;border-left:.2em solid var(--red);border-bottom:.2em solid var(--red);transform:rotate(-48deg) scale(1);transform-origin:center;border-radius:2px}
@media (prefers-reduced-motion:no-preference){
  .kk-js .kk-ok__list li::after{transform:rotate(-48deg) scale(0);transition:transform .5s cubic-bezier(.34,1.56,.64,1);transition-delay:calc(var(--d,0s) + .3s)}
  .kk-js .kk-ok.is-in .kk-ok__list li::after{transform:rotate(-48deg) scale(1)}
}
.kk-ok__van{width:min(320px,66%)!important;max-width:none;margin-inline:auto;animation:kk-drive 3s ease-in-out infinite}

.kk-mbanner{position:relative;max-width:960px;margin:clamp(48px,7vw,80px) auto clamp(40px,6vw,70px);padding:clamp(26px,5vw,52px) 20px clamp(40px,6vw,64px);border-radius:clamp(24px,4vw,40px);background:radial-gradient(70% 120% at 20% 0%,#E37B7B,transparent 60%),var(--rose);text-align:center;box-shadow:0 26px 50px -24px rgba(176,39,34,.6);overflow:hidden}
.kk-mbanner__t{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 16px;margin:0}
.kk-mbanner__logo{display:inline-flex;padding:10px 16px;border-radius:18px;background:#fff;box-shadow:0 8px 0 rgba(0,0,0,.12)}
.kk-mbanner__logo img{display:block;height:clamp(54px,9vw,84px);width:auto}
.kk-mbanner__txt{font-family:var(--f-round);font-weight:900;font-size:clamp(2rem,7.4vw,3.8rem);line-height:1.15;color:#FFE14D;-webkit-text-stroke:.12em var(--navy-d);paint-order:stroke fill;text-shadow:0 .08em 0 var(--navy-d)}
.kk-mbanner__wave{position:absolute;left:0;bottom:0;width:100%;height:56px!important;opacity:.55}
.kk-mbanner__sp{position:absolute;width:34px!important;animation:kk-twinkle 2.4s ease-in-out infinite;filter:brightness(1.4)}
.kk-mbanner__sp--1{left:6%;top:16%}.kk-mbanner__sp--2{right:7%;top:22%;width:24px!important;animation-delay:1s}

.kk-merit{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(26px,4vw,56px);align-items:center;max-width:1120px;margin:0 auto clamp(56px,8vw,96px)}
@media (min-width:900px){.kk-merit{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}.kk-merit--rev .kk-merit__media{order:2}}
.kk-merit__media{position:relative;padding:0 6% 6% 0}
.kk-merit__photo{position:relative;margin:0;aspect-ratio:3/2;border-radius:clamp(24px,4vw,40px);overflow:hidden;border:7px solid #fff;box-shadow:var(--sh-lg);transform:rotate(-2deg);background:var(--gold-xl)}
.kk-merit--rev .kk-merit__photo{transform:rotate(2deg)}
.kk-merit__photo img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.1) translateY(var(--py,0px));will-change:transform}
.kk-merit__ill{position:absolute;width:clamp(86px,13vw,132px)!important;filter:drop-shadow(0 14px 18px rgba(23,28,97,.22));animation:kk-bob 5.5s ease-in-out infinite}
.kk-merit__ill--a{right:0;bottom:0}
.kk-merit__ill--b{left:-8px;top:-28px;animation-delay:.8s;width:clamp(70px,10vw,104px)!important}
.kk-merit__ill--c{left:18%;bottom:-14px;animation-delay:1.6s;width:clamp(70px,10vw,104px)!important}
.kk-merit__h{display:flex;align-items:center;gap:.4em;margin:0 0 18px;font-family:var(--f-round);font-weight:900;font-size:clamp(1.6rem,4.6vw,2.5rem);line-height:1.3;color:var(--ink)}
.kk-merit__no{display:grid;place-items:center;flex:none;width:1.7em;height:1.7em;border-radius:50%;background:linear-gradient(145deg,var(--gold-l),var(--gold));color:var(--navy);font-size:.95em;box-shadow:var(--sh-gold),0 0 0 4px #fff;line-height:1}
.kk-merit__h em{color:var(--red);-webkit-text-stroke:.08em #fff;paint-order:stroke fill}
.kk-merit__num{display:inline-block;font-size:1.25em;min-width:1.2em;text-align:center}
.kk-merit__case{margin:0 0 18px;padding:14px 16px;border-radius:18px;background:#fff;box-shadow:var(--sh-sm);font-size:.84rem;line-height:2;color:var(--ink-2)}
.kk-merit__vs{display:inline-block;padding:.1em .8em;border-radius:999px;font-weight:800;text-decoration:none!important;line-height:1.8}
.kk-merit__vs--other{background:#EEF0F5;color:var(--ink-2)!important}
.kk-merit__vs--ours{background:linear-gradient(180deg,#F0C640,var(--gold));color:var(--navy)!important;box-shadow:0 3px 0 var(--gold-dd);font-size:1.12em}
.kk-merit__arrow{color:var(--red);font-weight:900}
.kk-merit__list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.kk-merit__list li{position:relative;padding:.85em 1em .85em 3em;border-radius:16px;background:#fff;box-shadow:var(--sh-sm);line-height:1.8;font-weight:500}
.kk-merit__list li::before{content:"";position:absolute;left:.9em;top:1.05em;width:1.35em;height:1.35em;border-radius:50%;background:var(--gold) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171C61' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4L18 8'/%3E%3C/svg%3E") center/70% no-repeat}
.kk-merit__list em{color:var(--red);font-weight:800;background:linear-gradient(transparent 64%,rgba(243,215,122,.7) 64%)}
.kk-merit__note{text-align:center;margin:-20px 0 0;font-size:.86rem;color:var(--ink-2)}

/* ---------- S06 / S07 Content Views ---------- */
.kk-fs--jirei{background:#fff}
.kk-fs--koe{background:radial-gradient(80% 50% at 50% 0%,var(--gold-xl),transparent 70%),var(--paper)}
.kk-cv .pt-cv-wrapper{margin:0}
.kk-cv .pt-cv-page{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0!important}
.kk-cv .pt-cv-page::before,.kk-cv .pt-cv-page::after{display:none!important}
@media (min-width:768px){.kk-cv .pt-cv-page{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}}
@media (min-width:1100px){.kk-cv .pt-cv-page{grid-template-columns:repeat(5,minmax(0,1fr))}}
.kk-cv .pt-cv-content-item{width:auto!important;float:none!important;padding:0!important;margin:0!important;max-width:none!important}
.kk .kk-cv .pt-cv-ifield{display:flex;flex-direction:column;padding:10px!important;border-radius:20px;overflow:hidden}
.kk .kk-cv .pt-cv-thumbnail{border-radius:14px!important;margin:0 0 10px!important;width:100%!important;height:auto!important;aspect-ratio:1/.88;object-fit:cover}
.kk .kk-cv .pt-cv-href-thumbnail{display:block;overflow:hidden;border-radius:14px}
.kk .kk-cv .pt-cv-ifield:hover .pt-cv-thumbnail{transform:scale(1.04)}
.kk .kk-cv .pt-cv-thumbnail{transition:transform .6s var(--ease)}
.kk .kk-cv .pt-cv-title{font-size:clamp(.76rem,2vw,.86rem)!important;line-height:1.5!important;margin:0 0 6px!important;word-break:break-all}
.kk-cv .pt-cv-ctf-list{display:grid;gap:4px;margin:auto 0 0!important}
.kk-cv .pt-cv-ctf-column{width:auto!important;float:none!important;padding:0!important}
.kk-cv .pt-cv-custom-fields{display:block;font-size:.7rem;line-height:1.5;color:var(--ink-3)}
.kk-cv .pt-cv-ctf-name,.kk-cv .pt-cv-ctf-value{display:block!important;float:none!important;width:auto!important;white-space:nowrap}
.kk-cv .pt-cv-ctf-name{font-weight:700}
.kk-cv .pt-cv-ctf-kakaku{padding:.3em .55em;border-radius:10px;background:var(--gold-xxl)}
.kk-cv .pt-cv-ctf-kakaku .pt-cv-ctf-value{font-family:var(--f-en);font-weight:800;font-size:clamp(.95rem,2.6vw,1.1rem);color:var(--red);letter-spacing:0}
.kk-cv .pt-cv-ctf-jiki{padding:0 .55em}
.kk-cv .pt-cv-ctf-jiki .pt-cv-ctf-value{font-family:var(--f-en);font-weight:600;color:var(--ink-2)}
.kk-cv--koe .pt-cv-thumbnail{aspect-ratio:210/300!important;object-fit:cover;object-position:top;background:#fff}
.kk .kk-cv--koe .pt-cv-content{font-size:.78rem!important;line-height:1.7!important}
.kk .kk-cv--koe .pt-cv-readmore{margin-top:8px!important}
.kk-cv .pt-cv-rmwrap{margin-top:2px}

/* ---------- S08 流れ ---------- */
.kk-fs--flow{background:radial-gradient(60% 40% at 90% 0%,rgba(58,65,168,.9),transparent 70%),linear-gradient(180deg,var(--navy),var(--navy-d));color:#fff;overflow:hidden}
.kk-fs--flow .kk-h{color:#fff}
.kk-flow__title{margin:0 0 26px;text-align:center;font-family:var(--f-round);font-weight:900;font-size:clamp(1.8rem,5.4vw,2.8rem);color:#FF6B63;-webkit-text-stroke:.1em #fff;paint-order:stroke fill;letter-spacing:.08em}
.kk-flow__steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:22px;counter-reset:none}
@media (min-width:900px){.kk-flow__steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 30px}}
.kk-step{position:relative;display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:24px;background:#fff;color:var(--ink);box-shadow:0 24px 44px -24px rgba(0,0,0,.65)}
@media (min-width:900px){.kk-step{flex-direction:column;align-items:flex-start;padding:22px 22px 24px}}
.kk-step::after{content:"";position:absolute;left:50%;bottom:-19px;width:24px;height:16px;margin-left:-12px;background:linear-gradient(var(--sky),#7FE0FF);clip-path:polygon(0 0,100% 0,50% 100%)}
@media (min-width:900px){.kk-step::after{left:auto;right:-24px;top:50%;bottom:auto;width:16px;height:24px;margin:-12px 0 0;clip-path:polygon(0 0,100% 50%,0 100%)}.kk-step:nth-of-type(3n)::after{display:none}}
.kk-flow__steps>.kk-step:last-child::after{display:none}
.kk-step__ill{flex:none;width:clamp(72px,14vw,104px)}
.kk-step__ill .kk-ill{transition:transform .5s var(--ease)}
.kk-step:hover .kk-step__ill .kk-ill{transform:rotate(-5deg) scale(1.06)}
.kk-step__txt{margin:0;font-weight:700;line-height:1.75;font-size:clamp(.95rem,1.4vw,1.05rem)}
.kk-step__no{display:inline-block;margin:0 .5em .3em 0;padding:.1em .7em;border-radius:999px;background:var(--gold);color:var(--navy);font-family:var(--f-en);font-weight:800;font-size:.86rem;letter-spacing:.04em;box-shadow:0 3px 0 var(--gold-dd)}
@media (min-width:900px){.kk-step__no{display:table;margin:0 0 .5em}}
.kk-flow__deal{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:14px;padding:12px 18px;border-radius:999px;background:linear-gradient(90deg,var(--red-d),var(--red),var(--red-d));box-shadow:0 18px 34px -18px rgba(217,58,53,.9);font-family:var(--f-round);font-weight:900;font-size:clamp(1.3rem,4vw,1.8rem);letter-spacing:.2em;color:#fff;margin:4px 0}
.kk-flow__dealill{width:56px!important;flex:none;border-radius:50%;background:#fff}
.is-in.kk-flow__deal span{animation:kk-pop 2.6s var(--ease) infinite}
.kk-flow__notes{display:grid;gap:8px;max-width:960px;margin:40px auto 0;padding:clamp(18px,3vw,28px);border-radius:24px;background:rgba(255,255,255,.07);box-shadow:0 0 0 1px rgba(255,255,255,.14) inset;font-size:.9rem;line-height:1.85;color:rgba(255,255,255,.9)}
.kk-flow__notes p{margin:0}

/* ---------- S09 問い合わせ ---------- */
.kk-fs--contact{background:linear-gradient(180deg,var(--gold-xxl),var(--gold-xl))}
.kk-blob--d{width:600px;height:600px;left:-200px;top:-160px;background:radial-gradient(circle,rgba(255,255,255,.9),transparent 66%)}
.kk-blob--e{width:640px;height:640px;right:-220px;bottom:-240px;background:radial-gradient(circle,rgba(15,168,230,.22),transparent 66%)}
.kk-contact{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-items:start}
@media (min-width:1024px){.kk-contact{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:28px}.kk-contact__side{position:sticky;top:calc(var(--hdr) + 20px)}}
.kk-contact__side{display:grid;gap:20px}
.kk-contact .kk-card{border-radius:clamp(24px,3.6vw,36px)}
.kk-contact__h{display:flex;align-items:center;gap:.6em;margin:0 0 12px;font-family:var(--f-round);font-weight:900;font-size:clamp(1.1rem,2.4vw,1.32rem);line-height:1.45;color:var(--navy)}
.kk-contact__ico{display:grid;place-items:center;flex:none;width:2.1em;height:2.1em;border-radius:14px;background:linear-gradient(145deg,var(--gold-l),var(--gold));color:var(--navy);box-shadow:var(--sh-gold)}
.kk-contact__ico--line{background:var(--line-g);color:#fff;box-shadow:0 10px 20px -10px rgba(6,199,85,.8)}
.kk-contact__lead{margin:0 0 20px;color:var(--ink-2)}
.kk-contact__tel{position:relative;overflow:hidden}
.kk-contact__tel p,.kk-contact__line p{margin:0 0 8px;line-height:1.8}
.kk-contact__ill{position:absolute;right:-12px;top:-12px;width:96px!important;opacity:.9;transform:rotate(8deg)}
.kk-contact__tel .kk-contact__h{padding-right:70px}
.kk-contact__fd{font-weight:700;color:var(--navy)}
.kk-contact__telbtn{margin:12px 0 14px}
.kk-contact__telbtn a{display:block;padding:.95em 1em;border-radius:22px;background:var(--navy);color:#fff!important;text-align:center;text-decoration:none!important;line-height:1.4;box-shadow:0 6px 0 var(--navy-d),0 18px 30px -16px rgba(23,28,97,.7);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.kk-contact__telbtn a:hover{transform:translateY(-2px)}
.kk-contact__telbtn a:active{transform:translateY(4px);box-shadow:0 1px 0 var(--navy-d)}
.kk-contact__telnum{font-weight:900;font-size:clamp(1.3rem,5.4vw,1.6rem);letter-spacing:.02em;color:var(--gold-l)}
.kk-contact__telnote{font-size:.8rem;opacity:.9}
.kk-contact__small{font-size:.84rem;color:var(--ink-2)}
.kk-contact__linerow{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:14px;border-radius:18px;background:#F1FBF4}
.kk-contact__linebtn{display:inline-block;transition:transform .3s var(--ease)}
.kk-contact__linebtn:hover{transform:translateY(-2px)}
.kk-contact__linebtn img{display:block;width:232px;max-width:100%;height:auto}
.kk-contact__qr{display:block;width:128px;height:128px;border-radius:12px;background:#fff;padding:6px;box-shadow:var(--sh-sm)}

/* ---------- S10 FAQ ---------- */
.kk-fs--faq{background:#fff}
.kk-faqwrap>.wpsm_panel-group>h3,.kk-faqwrap h3:first-child{margin:0 0 14px;font-family:var(--f-round);font-weight:900;font-size:1.05rem;color:var(--ink-2)}
.kk-faqwrap .wpsm_panel-title .fa,.kk-faqwrap .wpsm_panel-title [class*="fa-"]{display:none!important}
.kk-faqwrap .wpsm_panel-body h2{margin:1em 0 .5em;font-size:1rem;font-weight:800;color:var(--navy);background:none;padding:0}
.kk-faqwrap .wpsm_panel-body ul{margin:.4em 0 .8em;padding-left:1.2em}
.kk-faqwrap .wpsm_panel-body li{margin:.25em 0}

/* ---------- S11 知っておくべき情報 ---------- */
.kk-fs--know{background:var(--paper)}
.kk-know{display:grid;gap:clamp(22px,3vw,32px);max-width:1120px;margin-inline:auto}
.kk-know__card{position:relative;padding:clamp(22px,4vw,48px);border-radius:clamp(24px,4vw,40px);background:#fff;box-shadow:var(--sh);line-height:2}
.kk-know__card p{margin:0 0 1em}
.kk-know__card a{font-weight:700}
.kk-know__card em{color:var(--red);font-weight:800;background:linear-gradient(transparent 64%,rgba(243,215,122,.7) 64%)}
.kk-know__h{display:flex;align-items:center;gap:.6em;margin:0 0 22px;padding-bottom:16px;border-bottom:2px dashed var(--gold-l);font-family:var(--f-round);font-weight:900;font-size:clamp(1.2rem,3vw,1.65rem);line-height:1.45;color:var(--navy)}
.kk-know__no{display:grid;place-items:center;flex:none;width:2.1em;height:2.1em;border-radius:14px;background:var(--navy);color:var(--gold);transform:rotate(-6deg)}
.kk-know__no .kk-ico{width:1.1em;height:1.1em}
.kk-know__cols{display:grid;grid-template-columns:minmax(0,1fr);gap:0 44px}
@media (min-width:900px){.kk-know__cols{grid-template-columns:1fr 1fr}.kk-know__col+.kk-know__col{padding-left:44px;border-left:1px solid var(--line)}}
.kk-know__callout{padding:1em 1.2em;border-radius:16px;background:var(--gold-xxl);border-left:5px solid var(--gold);font-weight:700}
.kk-know__callout--ng{background:var(--red-l);border-color:var(--red);color:var(--red-d);font-family:var(--f-round);font-weight:900;font-size:1.08em}
.kk-know__callout--ok{background:var(--sky-l);border-color:var(--sky);color:var(--navy)}
.kk-know__chips{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 1em;padding:0;list-style:none}
.kk-know__chips li{display:inline-flex;align-items:center;gap:.5em;padding:.5em 1.1em;border-radius:999px;background:var(--navy);color:#fff;font-family:var(--f-round);font-weight:900;font-size:1.08rem;box-shadow:0 4px 0 var(--navy-d)}
.kk-know__chips .kk-ico{color:var(--gold)}
.kk-know__vs{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;margin-top:10px}
@media (min-width:900px){.kk-know__vs{grid-template-columns:1fr 1fr}}
.kk-know__list{position:relative;padding:clamp(18px,3vw,30px);border-radius:28px;background:#FFF6F5;box-shadow:0 0 0 2px #F7D3D1 inset}
.kk-know__list--ok{background:linear-gradient(170deg,#EEF9FE,#fff);box-shadow:0 0 0 2px #BDE7F8 inset}
.kk-know__h4{display:flex;align-items:center;gap:.55em;margin:0 0 14px;font-family:var(--f-round);font-weight:900;font-size:clamp(1.05rem,2.4vw,1.22rem);line-height:1.5;color:var(--navy)}
.kk-know__mark{display:grid;place-items:center;flex:none;width:1.9em;height:1.9em;border-radius:50%;background:var(--red);color:#fff}
.kk-know__list--ok .kk-know__mark{background:var(--sky-d)}
.kk-know__mark .kk-ico{width:1em;height:1em}
.kk-know__list ol{list-style:none;margin:0 0 16px;padding:0;counter-reset:kk-k;display:grid;gap:8px}
.kk-know__list li{position:relative;counter-increment:kk-k;padding:.7em .9em .7em 3em;border-radius:14px;background:#fff;box-shadow:var(--sh-sm);line-height:1.7;font-weight:500}
.kk-know__list li::before{content:counter(kk-k);position:absolute;left:.75em;top:.72em;display:grid;place-items:center;width:1.65em;height:1.65em;border-radius:8px;background:var(--rose);color:#fff;font:800 .88rem/1 var(--f-en)}
.kk-know__list--ok li::before{background:var(--sky-d)}
.kk-know__ill{width:110px!important;margin:6px 0 0 auto}
.kk-author{display:flex;flex-wrap:wrap;align-items:center;gap:16px 22px;padding:clamp(18px,3vw,28px);border-radius:28px;background:#fff;box-shadow:var(--sh-sm),0 0 0 1px var(--line);font-size:.9rem;line-height:1.8}
.kk-author__img{width:96px;height:96px;object-fit:cover;object-position:top;border-radius:50%;border:4px solid #fff;box-shadow:0 0 0 3px var(--gold-l)}
.kk-author__txt{display:grid;gap:2px;flex:1;min-width:220px}
.kk-author__label{justify-self:start;padding:.05em .8em;border-radius:999px;background:var(--gold-xl);color:var(--gold-dd);font-weight:800;font-size:.8rem}
.kk-author__name{font-weight:800;color:var(--navy)}

/* ---------- トップページ下部ウィジェット ---------- */
.kk-fs--company{background:linear-gradient(180deg,var(--paper),#fff)}
.kk-company{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
@media (min-width:1024px){.kk-company{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start}}
.kk-company>*+*{margin-top:0!important}
.kk-company .widget{margin:0;padding:clamp(20px,3.6vw,40px);border-radius:clamp(24px,4vw,40px);background:#fff;box-shadow:var(--sh)}
.kk-company .widget::after{content:"";display:table;clear:both}
.kk-front .kk-company .widgettitle{margin:0 0 1.1em!important;background:var(--navy)!important;color:#fff!important;border:0!important}
.kk-company .kk-tablewrap>table{min-width:0}
.kk-company td ul,.kk-company td ol{margin:.4em 0 0!important;padding:0!important;background:transparent!important;box-shadow:none!important}
.kk-company td,.kk-company th{font-size:.88rem;vertical-align:top}
.kk-company .widget span[style*="32px"]{font-size:1rem!important}
.kk-company .widget span[style*="14pt"]{font-size:1.06rem!important;line-height:1.95}
.kk-company .widget h5 span[style*="14pt"]{font-family:var(--f-round);font-weight:900;font-size:1.25rem!important;color:var(--navy)}
.kk-company .widget h4{font-size:1rem}
.kk-company .widget img{border-radius:18px}
@media (max-width:600px){.kk-company .widget .alignleft{float:none;display:block;margin:0 auto 1em}}
.kk-fs--side{padding-top:0;background:#fff}
.kk-homeside{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:24px;align-items:start}
.kk-homeside .widget{padding:clamp(20px,2.6vw,30px)}
.kk-homeside .widget:first-child{position:sticky;top:calc(var(--hdr) + 20px);text-align:left}
.kk-homeside .widget:first-child img{display:block;margin:0 auto 12px}
.kk-homeside .pt-cv-page{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.kk-homeside .pt-cv-page::before,.kk-homeside .pt-cv-page::after{display:none!important}
.kk .kk-homeside .pt-cv-view .pt-cv-content-item{width:auto!important;float:none!important;padding:0!important}
.kk .kk-homeside .pt-cv-thumbnail{aspect-ratio:210/300;object-position:top}
@media (max-width:1023px){.kk-homeside{grid-template-columns:minmax(0,1fr)}.kk-homeside .widget:first-child{position:static}.kk-homeside .pt-cv-page{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* アコーディオンの＋／×は、実際に開いているパネル（.in）で切り替える（初期状態の class が実態と食い違うため） */
.kk-front .wpsm_panel-title a::after{transform:none!important}
.kk-front .wpsm_panel:has(>.wpsm_panel-collapse.in)>.wpsm_panel-heading .wpsm_panel-title a::after{transform:rotate(135deg)!important}

/* 動きを減らす設定 */
@media (prefers-reduced-motion:reduce){.kk-marquee__track{animation:none}.kk-hero__k::before{transform:none}}
@media print{.kk-hero__stage,.kk-marquee{display:none}}

/* 画面外のセクションは描画を後回しにする（巨大な相場表・事例一覧で初期のスタイル計算が重いため） */
.kk-front .kk-fs:not(.kk-fs--souba){content-visibility:auto;contain-intrinsic-size:auto 1400px}

/* QA修正：買取事例カードは写真内の金額が切れないよう全体を表示、PCは4列まで */
/* Content Views Pro は写真を枠の背景（background-size:cover）で出すため、背景側を contain にする */
.kk .kk-cv--jirei .pt-cv-thumbnail{object-fit:contain!important;background:#fff}
.kk .kk-cv--jirei .cvp-responsive-image{background-size:contain!important;background-repeat:no-repeat!important;background-position:center!important;background-color:#fff}
@media (min-width:1100px){.kk .kk-cv--jirei .pt-cv-page{grid-template-columns:repeat(4,minmax(0,1fr))}}
