@charset "utf-8";
/* =====================================================================
   一般ページ（page.php / single.php / index.php・archive.php・search.php / 404.php / sidebar.php）
   本文の共通の見た目（.kk-prose・ショートコード・CF7・WPSM・Content Views・サイドバー・ページ送り）は kk.css 10〜15章。
   ここはテンプレート固有のクラス（.kk-pagehead--* / .kk-article / .kk-byline / .kk-share / .kk-related …）だけ。
   ===================================================================== */

/* ---------- A. 見出しエリアのバリエーション ---------- */
.kk-pagehead--page,.kk-pagehead--post,.kk-pagehead--archive,.kk-pagehead--404{padding-bottom:64px}
.kk-pagehead--page .kk-wrap,.kk-pagehead--post .kk-wrap,.kk-pagehead--archive .kk-wrap,.kk-pagehead--404 .kk-wrap{position:relative;z-index:1}
/* 右側のハイエースのシルエット（装飾。文字なし） */
.kk-pagehead--page::before,.kk-pagehead--post::before,.kk-pagehead--archive::before,.kk-pagehead--404::before{right:-60px;top:-60px;width:460px;height:460px}
.kk-pagehead__deco{display:none}
.kk-pagehead--page .kk-wrap::after,.kk-pagehead--archive .kk-wrap::after{content:"";position:absolute;right:0;bottom:-30px;width:clamp(150px,22vw,300px);aspect-ratio:2/1;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 150'%3E%3Cg fill='none' stroke='%23171C61' stroke-width='5' stroke-linejoin='round' opacity='.16'%3E%3Cpath d='M18 94q0-28 28-32l140-12q24-2 42 13l44 40q17 4 21 21l3 26q0 10-10 10H26q-8 0-8-8z'/%3E%3Cpath d='M176 58l26-2q15 0 26 9l31 30h-83z'/%3E%3Crect x='46' y='66' width='54' height='32' rx='7'/%3E%3Crect x='110' y='63' width='54' height='35' rx='7'/%3E%3C/g%3E%3Ccircle cx='76' cy='140' r='18' fill='%23171C61' opacity='.16'/%3E%3Ccircle cx='238' cy='140' r='18' fill='%23171C61' opacity='.16'/%3E%3Cpath d='M0 148h300' stroke='%23DBA91E' stroke-width='3' stroke-dasharray='14 10' opacity='.7'/%3E%3C/svg%3E") right bottom/contain no-repeat;pointer-events:none}
.kk-pagehead--page .kk-pagehead__title,.kk-pagehead--archive .kk-pagehead__title{padding-right:clamp(0px,12vw,200px)}
.kk-pagehead__title::after{content:"";display:block;width:64px;height:6px;margin-top:.55em;border-radius:6px;background:linear-gradient(90deg,var(--gold),var(--red))}
.kk-pagehead--post .kk-pagehead__title{max-width:980px;font-size:clamp(1.4rem,2.8vw,2.15rem)}
.kk-pagehead__meta .kk-date{display:inline-flex;align-items:center;gap:.4em;padding:.3em .9em;border-radius:999px;background:#fff;color:var(--ink-2);font-family:var(--f-en);font-weight:500;letter-spacing:.04em;box-shadow:var(--sh-sm)}
.kk-pagehead__meta .kk-date .kk-ico{width:1em;height:1em;color:var(--gold-d)}
.kk-pagehead__meta .kk-date--up{background:var(--navy);color:#fff}
.kk-pagehead__meta .kk-date--up .kk-ico{color:var(--gold-l)}
.kk-pagehead__meta .kk-writer{display:inline-flex;align-items:center;gap:.5em}
.kk-pagehead__meta .kk-writer img{width:28px;height:28px;border-radius:50%}
@media (max-width:767px){
  .kk-pagehead--page,.kk-pagehead--post,.kk-pagehead--archive,.kk-pagehead--404{padding-bottom:52px}
  .kk-pagehead--page .kk-wrap::after,.kk-pagehead--archive .kk-wrap::after{width:120px;bottom:-34px;opacity:.8}
  .kk-pagehead--page .kk-pagehead__title,.kk-pagehead--archive .kk-pagehead__title{padding-right:0}
}

/* ---------- B. 本文エリア ---------- */
.kk-pagebody{position:relative}
.kk-pagebody .kk-body{padding-top:28px}
.kk-pagebody .kk-body--full .kk-body__main{max-width:980px;width:100%;margin-inline:auto}
.kk-404 ~ *,.kk-pagebody .kk-body--full:has(.kk-404) .kk-body__main{max-width:none}
.kk-article{position:relative;min-width:0}
.kk-body__main{min-width:0}
/* アイキャッチ */
.kk-eyecatch{position:relative;margin:0 0 36px;border-radius:var(--r-lg);overflow:hidden;background:var(--gold-xl);box-shadow:0 30px 60px -36px rgba(23,28,97,.6)}
.kk-eyecatch img{display:block;width:100%;height:auto;max-height:560px;object-fit:cover}
.kk-eyecatch figcaption{position:absolute;left:0;right:0;bottom:0;padding:2.4em 1.4em .9em;background:linear-gradient(transparent,rgba(14,18,69,.72));color:#fff;font-size:.8rem;line-height:1.6}
.kk .kk-eyecatch .cat-name{position:absolute;left:16px;top:16px;display:inline-flex;align-items:center;padding:.35em 1em;border-radius:999px;background:var(--gold);color:var(--navy);font-size:.78rem;font-weight:700;box-shadow:0 4px 0 var(--gold-dd)}
@media (max-width:767px){.kk-eyecatch{margin:0 -4px 26px;border-radius:var(--r)}}

/* 記事著者（E-E-A-T） */
.kk-byline{position:relative;display:flex;align-items:center;gap:18px;margin:0 0 32px;padding:18px 22px;border-radius:var(--r);background:#fff;box-shadow:0 0 0 1px var(--line),0 14px 30px -24px rgba(23,28,97,.5)}
.kk-byline::before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:4px;border-radius:0 4px 4px 0;background:linear-gradient(180deg,var(--gold),var(--red))}
.kk-byline__photo{flex:none;width:76px;height:76px;border-radius:50%;overflow:hidden;background:var(--gold-xl);box-shadow:0 0 0 3px #fff,0 0 0 5px var(--gold-l)}
.kk-byline__photo img{width:100%;height:100%;object-fit:cover;object-position:50% 18%}
.kk-byline__body{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:.84rem;line-height:1.5;min-width:0}
.kk-byline__label{flex-basis:100%;font-size:.74rem;font-weight:700;letter-spacing:.1em;color:var(--gold-dd)}
.kk .kk-byline__cred{display:inline-flex;align-items:center;gap:.4em;padding:.32em .8em;border-radius:999px;background:var(--navy-l);color:var(--navy)!important;font-weight:700;font-size:.76rem;text-decoration:none!important;transition:background .2s}
.kk .kk-byline__cred:hover{background:var(--gold-xl)}
.kk-byline__cred .kk-ico{width:1em;height:1em;color:var(--navy-3)}
.kk-byline__name{flex-basis:100%;font-family:var(--f-round);font-weight:900;color:var(--navy);font-size:.95rem}
@media (max-width:600px){.kk-byline{align-items:flex-start;gap:14px;padding:16px}.kk-byline__photo{width:60px;height:60px}.kk-byline__cred{font-size:.72rem}}

/* ---------- C. 記事フッター（カテゴリー・タグ・シェア・CTA・関連記事・ABOUT US） ---------- */
.kk-artfoot{margin-top:56px;display:grid;gap:40px}
.kk-taxlinks{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.kk-taxlinks ul,.kk-taxlinks p{display:contents;margin:0;padding:0;list-style:none}
.kk-taxlinks li{margin:0}
.kk .kk-artfoot .kk-taxlinks a{display:inline-flex;align-items:center;gap:.35em;padding:.4em 1em;border:0;border-radius:999px;background:var(--navy);color:#fff!important;font-size:.8rem;font-weight:700;text-decoration:none!important;box-shadow:0 3px 0 var(--navy-d);transition:transform .25s var(--ease)}
.kk .kk-artfoot .kk-taxlinks .tags a{background:#fff;color:var(--navy)!important;box-shadow:0 0 0 1.5px var(--navy-l)}
.kk .kk-taxlinks .tags a::before{content:"#";color:var(--gold-d)}
.kk .kk-artfoot .kk-taxlinks a:hover{transform:translateY(-2px)}

/* シェアボタン（親 parts_sns.php の出力をそのまま整える） */
.kk-share{text-align:center}
.kk-share__ttl{margin:0 0 14px;font-family:var(--f-round);font-weight:900;color:var(--navy);font-size:1rem}
.kk-share .sns ul{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0;padding:0;list-style:none}
.kk-share .sns li{margin:0}
.kk .kk-share .sns a{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-width:112px;min-height:46px;padding:.5em 1.2em;border-radius:999px;background:var(--c,#333);color:#fff!important;font-weight:700;font-size:.86rem;text-decoration:none!important;box-shadow:0 4px 0 rgba(0,0,0,.22),0 12px 22px -14px rgba(23,28,97,.6);transition:transform .25s var(--ease),box-shadow .25s}
.kk .kk-share .sns a:hover{transform:translateY(-2px)}
.kk .kk-share .sns a:active{transform:translateY(3px);box-shadow:0 1px 0 rgba(0,0,0,.22)}
.kk-share .sns a::before{content:"";width:1.15em;height:1.15em;background:currentColor;-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat}
.kk-share .sns .count:empty{display:none}
.kk-share .sns .count{font-family:var(--f-en);font-size:.78em;opacity:.85}
.kk-share .twitter a{--c:#14171A;--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17.8 3h3.1l-6.8 7.7L22 21h-6.2l-4.9-6.4L5.3 21H2.2l7.3-8.3L2 3h6.4l4.4 5.8zm-1.1 16.2h1.7L7.4 4.7H5.6z'/%3E%3C/svg%3E")}
.kk-share .facebook a{--c:#1877F2;--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14 8.5V6.8c0-.8.5-1.3 1.4-1.3H17V2.2C16.6 2.1 15.4 2 14.1 2 11.4 2 9.6 3.6 9.6 6.6v1.9H7v3.6h2.6V22H14v-9.9h2.7l.5-3.6z'/%3E%3C/svg%3E")}
.kk-share .hatebu a{--c:#00A4DE;--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 4h6.2c2.5 0 4.1 1.2 4.1 3.2 0 1.5-.9 2.4-2 2.8 1.5.3 2.5 1.4 2.5 3.1 0 2.4-1.8 3.9-4.6 3.9H3zm3.3 5h1.9c.9 0 1.5-.5 1.5-1.3S9.1 6.5 8.2 6.5H6.3zm0 5.5h2.2c1 0 1.6-.6 1.6-1.4s-.6-1.4-1.6-1.4H6.3zM17 4h3.3v8.6H17zm1.7 10.4a2 2 0 110 4 2 2 0 010-4z'/%3E%3C/svg%3E")}
.kk-share .line a{--c:#06C755;--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3C6.5 3 2 6.6 2 11c0 3.9 3.5 7.2 8.3 7.9.3.1.8.2.9.5.1.3.1.7 0 1l-.1.9c0 .3-.2 1 .9.5s5.9-3.5 8.1-6C21.4 14.3 22 12.7 22 11c0-4.4-4.5-8-10-8z'/%3E%3C/svg%3E")}
.kk-share .pocket a{--c:#EF3F56;--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 4h16a1.6 1.6 0 011.6 1.6V11a9.6 9.6 0 01-19.2 0V5.6A1.6 1.6 0 014 4zm3.4 5.3a1.3 1.3 0 00-.9 2.2l4.6 4.4a1.3 1.3 0 001.8 0l4.6-4.4a1.3 1.3 0 10-1.8-1.9L12 13.2 8.3 9.6a1.3 1.3 0 00-.9-.3z'/%3E%3C/svg%3E")}
@media (max-width:600px){.kk-share .sns ul{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.kk .kk-share .sns a{min-width:0;width:100%;padding:.5em .4em;font-size:.8rem}}

/* CTA ウィジェット（[cta_in] は kk.css。ここはウィジェットの外枠とタイトル） */
.kk-cta{margin-top:56px}
.kk-artfoot .kk-cta{margin-top:0}
.kk-cta .widget{position:relative;margin:0;padding:0;background:none;box-shadow:none}
.kk .kk-cta .widgettitle{position:relative;z-index:2;display:table;margin:0 auto -18px!important;padding:.55em 1.4em!important;border-radius:999px;background:linear-gradient(180deg,#F0C640,var(--gold))!important;color:var(--navy)!important;font-family:var(--f-round);font-weight:900;font-size:.92rem;line-height:1.4;letter-spacing:.06em;box-shadow:0 4px 0 var(--gold-dd),0 14px 24px -12px rgba(23,28,97,.55)}
.kk-cta .cta-inner{padding-top:clamp(40px,5vw,56px)!important}

/* 関連記事（RECOMMEND） */
.kk-related__h,.kk-author__h{display:flex;align-items:center;gap:.6em;margin:0 0 20px;font-family:var(--f-en);font-weight:900;font-size:1.35rem;letter-spacing:.12em;color:var(--navy)}
.kk-related__h .kk-ico,.kk-author__h .kk-ico{width:42px;height:42px;padding:10px;border-radius:14px;background:linear-gradient(145deg,var(--gold-l),var(--gold));color:var(--navy);box-shadow:var(--sh-gold);transform:rotate(-6deg)}
.kk-related__h::after,.kk-author__h::after{content:"";flex:1;height:2px;margin-left:.4em;background:repeating-linear-gradient(90deg,var(--gold-l) 0 8px,transparent 8px 14px)}
.kk-related__list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none}
.kk-related__list li{margin:0}
.kk-relcard{display:flex;flex-direction:column;height:100%;border-radius:var(--r);overflow:hidden;background:#fff;box-shadow:0 0 0 1px var(--line),0 12px 24px -20px rgba(23,28,97,.5);color:var(--ink)!important;text-decoration:none!important;transition:transform .4s var(--ease),box-shadow .4s}
.kk-relcard:hover{transform:translateY(-5px);box-shadow:0 0 0 1px var(--gold-l),var(--sh)}
.kk-relcard__img{margin:0;aspect-ratio:3/2;overflow:hidden;background:linear-gradient(150deg,var(--gold-xl),var(--gold-l));display:grid;place-items:center}
.kk-relcard__img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.kk-relcard:hover .kk-relcard__img img{transform:scale(1.06)}
.kk-relcard__img .kk-ico{width:42%;height:42%;color:var(--navy);opacity:.25}
.kk-relcard__date{display:block;padding:12px 14px 0;font-family:var(--f-en);font-size:.72rem;color:var(--ink-3);letter-spacing:.04em}
.kk-relcard__ttl{margin:4px 0 0;padding:0 14px 16px;font-family:var(--f-round);font-weight:700;font-size:.88rem;line-height:1.6;color:var(--navy)}
.kk-relcard:hover .kk-relcard__ttl{color:var(--red)}
.kk-related .related-none-h{padding:1.4em;border-radius:var(--r);background:#fff;text-align:center;color:var(--ink-2)}
@media (max-width:1180px){.kk-related__list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:767px){.kk-related__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.kk-relcard__ttl{font-size:.82rem;padding:0 12px 14px}.kk-relcard__date{padding:10px 12px 0}}

/* 著者プロフィール（ABOUT US） */
.kk-author{position:relative;padding:clamp(22px,3.4vw,36px);border-radius:var(--r-lg);background:linear-gradient(160deg,#fff 0%,var(--gold-xxl) 100%);box-shadow:0 0 0 1px var(--gold-xl),var(--sh)}
.kk-author__profile{display:flex;gap:24px;align-items:flex-start}
.kk-author__img{flex:none}
.kk-author__img img{display:block;width:120px;height:120px;border-radius:50%;object-fit:cover;object-position:50% 18%;border:5px solid #fff;box-shadow:0 0 0 3px var(--gold),0 16px 28px -16px rgba(23,28,97,.6)}
.kk-author__name{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-bottom:10px}
.kk .kk-author__name a{font-family:var(--f-round);font-weight:900;font-size:1.25rem;color:var(--navy)!important;text-decoration:none!important}
.kk-author__name .userposition{display:inline-block;padding:.2em .8em;border-radius:999px;background:var(--navy);color:#fff;font-size:.74rem;font-weight:700}
.kk-author__text{margin:0;font-size:.9rem;line-height:1.95;color:var(--ink-2)}
.kk-author__sns{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none;justify-content:flex-end}
.kk .kk-author__sns a{display:inline-flex;align-items:center;min-height:40px;padding:.4em 1.1em;border-radius:999px;background:#fff;color:var(--navy)!important;font-family:var(--f-en);font-weight:700;font-size:.82rem;text-decoration:none!important;box-shadow:0 0 0 1.5px var(--navy-l)}
.kk .kk-author__sns a:hover{background:var(--navy);color:#fff!important}
@media (max-width:600px){.kk-author__profile{flex-direction:column;align-items:center;text-align:center}.kk-author__name{justify-content:center}.kk-author__text{text-align:left}.kk-author__sns{justify-content:center}}

/* ページ分割（wp_link_pages） */
.kk .kk-pagelinks{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:2.4em}
.kk .kk-pagelinks a{text-decoration:none!important}
.kk .kk-pagelinks span{display:inline-flex;align-items:center;min-height:48px;padding:.6em 1.4em;border-radius:999px;background:var(--navy);color:#fff;font-weight:700;box-shadow:0 4px 0 var(--navy-d)}

/* フォローボックス（設定時のみ） */
.kk-follow{padding:24px;border-radius:var(--r-lg);background:var(--navy);color:#fff;text-align:center}
.kk-follow .like_text p{margin:0 0 10px;font-family:var(--f-en);font-weight:900;letter-spacing:.2em;color:var(--gold-l)}
.kk .kk-follow .followbtn{display:inline-flex;margin:4px;padding:.5em 1.2em;border-radius:999px;background:#fff;color:var(--navy)!important;font-weight:700;text-decoration:none!important}

/* ---------- D. 一覧（カテゴリー・タグ・検索） ---------- */
.kk-taxdesc{margin:0 0 32px;padding:clamp(18px,3vw,28px);border-radius:var(--r-lg);background:#fff;box-shadow:0 0 0 1px var(--line),var(--sh-sm)}
.kk-archive{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.kk-body--full .kk-archive{grid-template-columns:repeat(3,minmax(0,1fr))}
.kk-acard{min-width:0;margin:0}
.kk-acard .kk-post__img .kk-post__noimg{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.7),transparent 60%),repeating-linear-gradient(135deg,rgba(255,255,255,.18) 0 12px,transparent 12px 24px)}
.kk-acard .kk-post__img .kk-post__noimg .kk-ico{width:34%;height:34%;color:var(--navy);opacity:.32}
.kk .kk-acard .cat-name{position:absolute;left:12px;top:12px;display:inline-flex;align-items:center;padding:.3em .85em;border-radius:999px;background:var(--gold);color:var(--navy);font-size:.72rem;font-weight:700;line-height:1.4;box-shadow:0 3px 0 var(--gold-dd)}
.kk .kk-acard .cat-name:empty{display:none}
.kk-acard .kk-post__title{font-size:1rem}
.kk-acard .kk-post__meta .kk-ico{width:1em;height:1em;color:var(--gold-d)}
.kk-acard .kk-post__go{position:absolute;right:16px;bottom:16px;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--gold-xl);color:var(--navy);transition:background .3s,transform .4s var(--ease)}
.kk-acard .kk-post__go .kk-ico{width:16px;height:16px}
.kk-acard .kk-post__body{padding-bottom:58px}
.kk-acard .kk-post:hover .kk-post__go{background:var(--gold);transform:translateX(4px)}
/* 1ページ目の先頭は大きく（雑誌の巻頭のように） */
.kk-archive--feature>.kk-acard:first-child{grid-column:1/-1}
.kk-archive--feature>.kk-acard:first-child .kk-post{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
.kk-archive--feature>.kk-acard:first-child .kk-post__img{aspect-ratio:auto;min-height:300px;height:100%}
.kk-archive--feature>.kk-acard:first-child .kk-post__body{justify-content:center;padding:32px 36px 70px}
.kk-archive--feature>.kk-acard:first-child .kk-post__title{font-size:clamp(1.15rem,2vw,1.45rem);line-height:1.55}
.kk-archive--feature>.kk-acard:first-child .kk-post__excerpt p{-webkit-line-clamp:4}
.kk-archive--feature>.kk-acard:first-child .kk-post__go{right:28px;bottom:26px;width:44px;height:44px}
@media (max-width:1023px){.kk-body--full .kk-archive{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){
  .kk-archive,.kk-body--full .kk-archive{grid-template-columns:1fr;gap:16px}
  .kk-archive--feature>.kk-acard:first-child .kk-post{display:flex}
  .kk-archive--feature>.kk-acard:first-child .kk-post__img{min-height:0;aspect-ratio:16/10}
  .kk-archive--feature>.kk-acard:first-child .kk-post__body{padding:18px 20px 58px}
  /* 2件目以降は横並びのコンパクトなカード */
  .kk-acard:not(.kk-archive--feature>.kk-acard:first-child) .kk-post{display:grid;grid-template-columns:116px 1fr;border-radius:var(--r)}
  .kk-acard:not(.kk-archive--feature>.kk-acard:first-child) .kk-post__img{aspect-ratio:auto;height:100%;min-height:116px}
  .kk-acard:not(.kk-archive--feature>.kk-acard:first-child) .kk-post__body{padding:12px 14px 14px;gap:4px}
  .kk-acard:not(.kk-archive--feature>.kk-acard:first-child) .kk-post__title{font-size:.9rem;line-height:1.5}
  .kk-acard:not(.kk-archive--feature>.kk-acard:first-child) .kk-post__excerpt{display:none}
  .kk-acard:not(.kk-archive--feature>.kk-acard:first-child) .kk-post__go{display:none}
  .kk-acard:not(.kk-archive--feature>.kk-acard:first-child) .cat-name{left:6px;top:6px;font-size:.62rem;padding:.2em .6em}
}
.kk-pager{margin-top:8px}

/* 検索フォーム（親 my_search_form の出力 #searchform） */
.kk #searchform{position:relative;display:flex;max-width:560px;margin:0}
.kk #searchform input[type=search]{flex:1;min-width:0;height:56px;padding:0 64px 0 1.3em;border:2px solid var(--line);border-radius:999px;background:#fff;font:inherit;font-size:16px;color:var(--ink);box-shadow:0 10px 24px -18px rgba(23,28,97,.5);-webkit-appearance:none;appearance:none;transition:border-color .2s,box-shadow .2s}
.kk #searchform input[type=search]:focus{outline:0;border-color:var(--gold);box-shadow:0 0 0 4px rgba(219,169,30,.22)}
.kk #searchform #searchsubmit{position:absolute;right:6px;top:6px;width:44px;height:44px;border:0;border-radius:50%;background:var(--navy) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F3D77A' stroke-width='2.8' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.5 15.5L21 21'/%3E%3C/svg%3E") center/20px no-repeat;cursor:pointer;box-shadow:0 3px 0 var(--navy-d);transition:transform .25s var(--ease)}
.kk #searchform #searchsubmit:hover{transform:scale(1.06)}
.kk-searchbar{flex-basis:100%;margin-top:6px}
.kk-pagehead--search .kk-pagehead__title{display:flex;align-items:center;gap:.5em}
.kk-pagehead--search .kk-pagehead__title::before{content:"";flex:none;width:1.4em;height:1.4em;border-radius:12px;background:var(--navy) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F3D77A' stroke-width='2.8' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.5 15.5L21 21'/%3E%3C/svg%3E") center/58% no-repeat;transform:rotate(-6deg);box-shadow:0 4px 0 var(--navy-d)}
.kk-pagehead--search .kk-pagehead__title::after{content:none}

/* 見つからないとき（検索0件・投稿なし）・カテゴリー一覧 */
.kk-notfound{display:grid;gap:28px}
.kk-notfound__card{padding:clamp(24px,4vw,40px);border-radius:var(--r-lg);background:#fff;box-shadow:0 0 0 1px var(--line),var(--sh)}
.kk-notfound__ttl{margin:0 0 .6em;font-family:var(--f-round);font-weight:900;color:var(--navy);font-size:clamp(1.2rem,2.4vw,1.5rem)}
.kk-notfound__lead{margin:0;color:var(--ink-2)}
.kk-notfound__search{margin-top:24px}
.kk-notfound__h{display:flex;align-items:center;gap:.55em;margin:0 0 14px;font-family:var(--f-round);font-weight:900;color:var(--navy);font-size:1.08rem}
.kk-notfound__h .kk-ico{width:30px;height:30px;padding:7px;border-radius:10px;background:var(--gold-xl);color:var(--gold-dd)}
.kk-catlist ul{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none}
.kk-catlist li{display:contents}
.kk-catlist .children{display:contents}
.kk .kk-catlist a{display:inline-flex;align-items:center;gap:.5em;min-height:44px;padding:.5em 1.1em;border-radius:999px;background:#fff;color:var(--navy)!important;font-weight:700;font-size:.88rem;text-decoration:none!important;box-shadow:0 0 0 1px var(--line),0 8px 16px -12px rgba(23,28,97,.45);transition:transform .25s var(--ease),background .2s}
.kk .kk-catlist a::before{content:"";width:.5em;height:.5em;border-radius:2px;background:var(--gold);transform:rotate(45deg)}
.kk .kk-catlist a:hover{background:var(--gold-xl);transform:translateY(-2px)}
.kk .kk-catlist .children a{background:var(--paper-2);font-weight:500}

/* ---------- E. 404 ---------- */
.kk-404{display:grid;gap:44px}
.kk-404__hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center;padding:clamp(22px,4vw,48px);border-radius:var(--r-xl);background:#fff;box-shadow:0 0 0 1px var(--line),var(--sh-lg)}
.kk-404__svg{display:block;width:100%;height:auto;border-radius:var(--r-lg)}
.kk-404__lead{margin:0 0 26px;font-size:clamp(1rem,1.6vw,1.12rem);line-height:2;color:var(--ink);font-weight:500}
.kk-404__nav ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin:0;padding:0;list-style:none}
.kk .kk-404__nav a{display:flex;align-items:center;gap:.8em;min-height:64px;padding:.8em 1.1em;border-radius:var(--r);background:#fff;color:var(--navy)!important;font-weight:700;text-decoration:none!important;box-shadow:0 0 0 1px var(--line),0 12px 24px -20px rgba(23,28,97,.5);transition:transform .3s var(--ease),box-shadow .3s}
.kk .kk-404__nav a:hover{transform:translateY(-3px);box-shadow:0 0 0 1px var(--gold-l),var(--sh)}
.kk-404__navico{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:12px;background:var(--gold-xl);color:var(--gold-dd)}
.kk-404__nav .kk-ico--chev{margin-left:auto;width:.9em;height:.9em;transform:rotate(-90deg);color:var(--gold-d)}
.kk-404__cta{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}
@media (prefers-reduced-motion:no-preference){
  .kk-404__van{animation:kk-404-bob 2.6s ease-in-out infinite;transform-origin:240px 220px}
  .kk-404__road{animation:kk-404-road 1.2s linear infinite}
  .kk-404__pin{animation:kk-404-pin 2.6s var(--ease) infinite;transform-origin:440px 220px}
  .kk-404__q{animation:kk-404-q 3.2s ease-in-out infinite}
}
@keyframes kk-404-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes kk-404-road{to{stroke-dashoffset:-40}}
@keyframes kk-404-pin{0%,100%{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(0)}}
@keyframes kk-404-q{0%,100%{transform:rotate(0);opacity:1}50%{transform:rotate(-8deg) translateY(-4px);opacity:.75}}
@media (max-width:767px){.kk-404__hero{grid-template-columns:1fr;padding:16px;border-radius:var(--r-lg)}.kk-404__cta .kk-btn{width:100%}}

/* ---------- F. ページ固有の調整（本文の構造に合わせた見せ方。文字は変えない） ---------- */
/* 会社概要：h3（項目名）と本文を左右に並べた「会社案内」の表のように */
@media (min-width:768px){
  .page-id-14622 .kk-prose{display:grid;grid-template-columns:200px minmax(0,1fr);column-gap:32px;align-items:start;padding:0 0 8px;border-radius:var(--r-lg);background:#fff;box-shadow:0 0 0 1px var(--line),var(--sh)}
  .page-id-14622 .kk-prose>*{grid-column:2;margin:0;padding:0 36px 0 0}
  .page-id-14622 .kk .kk-prose>h2,.page-id-14622 .kk-prose>h2{grid-column:1/-1;margin:0 0 8px;border-radius:var(--r-lg) var(--r-lg) 0 0}
  .page-id-14622 .kk .kk-prose>h3,.page-id-14622 .kk-prose>h3{grid-column:1;margin:0;padding:1.15em 0 1.15em 2.6em;border:0;border-top:1px solid var(--line);font-size:1rem}
  .page-id-14622 .kk-prose>h3::before{left:1.2em;top:1.65em}
  .page-id-14622 .kk-prose>h3+*{padding-top:1.15em;border-top:1px solid var(--line)}
  .page-id-14622 .kk-prose>h2+h3,.page-id-14622 .kk-prose>h2+h3+*{border-top:0}
  .page-id-14622 .kk-prose>p:not(h3+p){margin-top:.2em}
  .page-id-14622 .kk-prose>*:last-child{padding-bottom:1.2em}
  .page-id-14622 .kk-prose>ul{margin:.9em 36px .9em 0;padding:1em 1.2em;box-shadow:none;background:var(--gold-xxl)}
  .page-id-14622 .kk-prose>img{margin:.8em 0}
}
/* サイトマップ（simple-sitemap-pro）：グループをカード化して段組み */
.kk-prose .simple-sitemap-container>h3.post-type{margin-top:0}
.kk-prose .simple-sitemap-container{columns:2 300px;column-gap:20px}
.kk-prose .simple-sitemap-container>h3,.kk-prose .simple-sitemap-container>h2{column-span:all}
.kk-prose .simple-sitemap-wrap{break-inside:avoid;margin:0 0 20px;padding:18px 20px;border-radius:var(--r);background:#fff;box-shadow:0 0 0 1px var(--line),0 12px 24px -20px rgba(23,28,97,.45)}
.kk .kk-prose .simple-sitemap-wrap h3.term-tag{margin:0 0 .6em;padding:0 0 .5em 1.2em;font-size:1rem}
.kk .kk-prose .simple-sitemap-wrap ul{margin:0;padding:0;background:none;box-shadow:none}
.kk .kk-prose .simple-sitemap-wrap li{padding-left:1.1em;font-size:.88rem;line-height:1.65}
.kk .kk-prose .simple-sitemap-wrap li+li{margin-top:.5em}
.kk .kk-prose .simple-sitemap-wrap ul>li::before{width:.42em;height:.42em;top:.62em;left:.15em;border-radius:2px;background:var(--gold);transform:rotate(45deg)}
.kk .kk-prose .simple-sitemap-wrap a{text-decoration:none;color:var(--navy)}
.kk .kk-prose .simple-sitemap-wrap a:hover{color:var(--red);text-decoration:underline}
.kk-prose .simple-sitemap-wrap .no-posts{font-size:.84rem;color:var(--ink-3)}
/* お問合せページ：本文内のフォーム枠（max-width:700px の div）を中央の主役に */
.kk-prose div[style*="max-width: 700px"]{margin-top:1.6em}
.kk-prose div[style*="max-width: 700px"]>p[style*="center"]:empty{display:none}
/* スマホのパンくず：途中の階層（長いページ名）は1行に省略 */
@media (max-width:767px){
  .kk-pagehead #breadcrumb li:not(:first-child):not(:last-child){min-width:0;max-width:100%}
  .kk-pagehead #breadcrumb li:not(:first-child):not(:last-child)>a{display:block;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:calc(100vw - 80px)}
  .kk-pagehead #breadcrumb li:not(:first-child):not(:last-child) span{white-space:nowrap}
}
/* フッターのウィジェット内の地図などがスマホではみ出さないように（cases 担当からの依頼） */
.kk-ftr iframe,.kk-ftr embed,.kk-ftr object,.kk-ftr video{max-width:100%!important}
.kk-ftr iframe[src*="google.com/maps"]{width:100%!important}
/* 親カスタマイザーの .article-footer .post-categories li a(:hover) の水色を打ち消す */
.kk .kk-artfoot .kk-taxlinks .post-categories li a{background:var(--navy);border:0}
.kk .kk-artfoot .kk-taxlinks .post-categories li a:hover{background:var(--navy-2)}
.kk .kk-artfoot .kk-taxlinks .tags a:hover{background:var(--gold-xl)}
/* 画像のない記事（相場データなど）は画像枠を低くして文字を主役に */
.kk-acard .kk-post__img.noimg{aspect-ratio:16/6}
@media (max-width:767px){.kk-acard:not(.kk-archive--feature>.kk-acard:first-child) .kk-post__img.noimg{min-height:84px}}
