/* 検索ページでは、テーマの青いタイトル帯(.page-header)を隠してスッキリ表示 */
.page-header{display:none !important;}

/* テーマの文字色・リンク色・見出し装飾に負けないよう、こちらの色をはっきり固定 */
#kenshin-search a{text-decoration:none !important;}
#kenshin-search a.ks-card,#kenshin-search a.ks-card:hover,#kenshin-search a.ks-card:visited{color:#1b2230 !important;text-decoration:none !important;}
#kenshin-search .ks-name{color:#1b2230 !important;}
#kenshin-search .ks-meta{color:#5a5a5a !important;}
#kenshin-search .ks-rent{color:#ff6900 !important;}
#kenshin-search .ks-rent small{color:#5a5a5a !important;}
#kenshin-search .ks-tag{color:#fff !important;}
#kenshin-search .ks-chk{color:#1b2230 !important;}
#kenshin-search .ks-count{color:#ffffff !important;text-shadow:0 1px 2px rgba(0,0,0,.35);}
#kenshin-search .ks-count b{color:#ffd84a !important;text-shadow:0 1px 2px rgba(0,0,0,.35);}
#kenshin-search select,#kenshin-search input{color:#1b2230 !important;}
#kenshin-search .ks-fcard h3{color:#0e2d7a !important;border:0 !important;padding:0 0 10px !important;background:none !important;}
#kenshin-search .ks-fcard h3::after{display:none !important;}

/* 謙真不動産 物件検索（ブランド：濃紺＋ブルー） */
.ks-wrap{
  --brand:#0e2d7a; --brand-2:#1d3d8c; --brand-soft:#eaf1fb;
  --line-green:#06c755; --accent:#ff6900;
  --ink:#313131; --muted:#5a5a5a; --line:#e6e9f0; --bg:#f5f7fb;
  --shadow:0 1px 3px rgba(14,45,122,.08),0 1px 2px rgba(14,45,122,.05);
  --shadow-lg:0 10px 28px rgba(14,45,122,.14);
  color:var(--ink); font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic",Meiryo,sans-serif; line-height:1.7;
}
.ks-wrap *{box-sizing:border-box;}

.ks-hero{background:linear-gradient(135deg,#0a1f5c,#0e2d7a 60%,#1d3d8c);color:#fff;padding:18px 16px;text-align:center;border-radius:3px;}
.ks-hero h2{font-size:25px;font-weight:800;margin:0 0 4px;color:#fff;font-family:"Shippori Mincho",serif;letter-spacing:1.5px;}
.ks-hero p{font-size:13px;opacity:.92;margin:0 0 16px;}
.ks-props{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:18px;}
.ks-prop{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);border-radius:10px;padding:8px 15px;font-size:13px;font-weight:700;}
.ks-prop b{color:#ffd84a;}
.ks-herosearch{max-width:660px;margin:0 auto;background:#fff;border-radius:3px;padding:7px;display:flex;gap:7px;box-shadow:var(--shadow-lg);}
.ks-herosearch input{flex:1;border:none;padding:12px 14px;font-size:15px;border-radius:2px;outline:none;color:var(--ink);}
.ks-herosearch button{background:var(--accent);color:#fff;border:none;padding:12px 26px;border-radius:2px;font-weight:800;cursor:pointer;font-size:15px;white-space:nowrap;}

.ks-layout{display:grid;grid-template-columns:260px 1fr;gap:18px;margin-top:18px;}
.ks-filters{align-self:start;}
.ks-fcard{background:#fff;border:1px solid var(--line);border-top:3px solid var(--brand);border-radius:3px;padding:14px 16px;box-shadow:var(--shadow);margin-bottom:12px;}
.ks-fcard h3{font-size:13px;margin:0 0 10px;color:var(--brand);font-weight:800;display:flex;align-items:center;gap:8px;}
.ks-fcard h3::before{display:none;}
.ks-scroll{max-height:180px;overflow:auto;}
.ks-chk{display:flex;align-items:center;gap:8px;font-size:13px;padding:4px 0;cursor:pointer;}
.ks-chk input{accent-color:var(--brand-2);}
.ks-chk .cnt{margin-left:auto;font-size:11px;color:var(--muted);}
.ks-range{display:flex;align-items:center;gap:6px;}
.ks-range select{flex:1;}
.ks-wrap select{padding:9px 11px;border:1px solid var(--line);border-radius:2px;font-size:14px;background:#fff;width:100%;}
.ks-clear{width:100%;background:#fff;border:1px solid var(--line);color:var(--muted);padding:10px;border-radius:2px;cursor:pointer;font-weight:600;}
.ks-closefilter{display:none;}

.ks-resbar{display:flex;align-items:center;gap:10px;margin-bottom:14px;flex-wrap:wrap;}
.ks-count{font-size:14px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.35);}
.ks-count b{color:#ffd84a;font-size:24px;font-weight:800;margin:0 2px;text-shadow:0 1px 2px rgba(0,0,0,.35);}
.ks-right{margin-left:auto;display:flex;gap:8px;align-items:center;}
.ks-right select{width:auto;}

.ks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;}
.ks-card{background:#fff;border:1px solid var(--line);border-top:3px solid var(--brand);border-radius:3px;overflow:hidden;box-shadow:var(--shadow);cursor:pointer;transition:transform .14s,box-shadow .14s;display:flex;flex-direction:column;text-decoration:none;color:var(--ink);}
.ks-card:hover{text-decoration:none;}
.ks-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);}
/* 物件写真はリアプロ仕様(600x600)に合わせ正方形表示 */
.ks-photo{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;color:#fff;position:relative;font-size:42px;background-size:cover;background-position:center;}
.ks-photo .t{position:absolute;left:9px;top:9px;background:rgba(14,45,122,.72);font-size:11px;padding:3px 9px;border-radius:6px;}
.ks-photo .n{position:absolute;right:9px;top:9px;background:var(--accent);font-size:11px;font-weight:800;padding:3px 9px;border-radius:6px;}
.ks-body{padding:12px 14px;flex:1;display:flex;flex-direction:column;}
.ks-rent{font-size:21px;font-weight:900;color:var(--accent);}
.ks-rent small{font-size:12px;color:var(--muted);font-weight:500;}
.ks-name{font-size:14px;font-weight:700;margin:2px 0;}
.ks-meta{font-size:12px;color:var(--muted);}
.ks-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px;}
.ks-tag{font-size:10px;background:var(--brand);color:#fff;padding:2px 8px;border-radius:2px;font-weight:600;}
.ks-empty{grid-column:1/-1;text-align:center;padding:60px 20px;color:var(--muted);}
.ks-more{text-align:center;margin-top:20px;}
.ks-more button{background:#fff;border:1px solid var(--brand-2);color:var(--brand);padding:11px 30px;border-radius:2px;font-weight:700;cursor:pointer;}
.ks-more.hide{display:none;}

.ks-modal{position:fixed;inset:0;background:rgba(14,45,122,.45);display:none;align-items:center;justify-content:center;z-index:99999;padding:16px;}
.ks-modal.open{display:flex;}
.ks-mbox{background:#fff;border-radius:4px;max-width:560px;width:100%;max-height:90vh;overflow:auto;position:relative;}
.ks-mphoto{aspect-ratio:1/1;max-height:340px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:66px;background-size:cover;background-position:center;}

/* こだわり条件：カテゴリ折りたたみ */
.ks-fgroup{border-bottom:1px solid var(--line);}
.ks-fgroup:last-child{border-bottom:0;}
.ks-fgroup-h{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:13px;font-weight:700;color:var(--brand);padding:9px 0;user-select:none;}
.ks-fgroup-h::after{content:'▸';color:var(--muted);font-size:11px;transition:transform .15s;}
.ks-fgroup.open .ks-fgroup-h::after{transform:rotate(90deg);}
.ks-fgnum{margin-left:auto;font-size:11px;color:var(--muted);font-weight:500;}
.ks-fgroup-body{display:none;padding:0 0 8px 4px;}
.ks-fgroup.open .ks-fgroup-body{display:block;}
.ks-mbody{padding:20px 22px;}
.ks-mbody h2{margin:0 0 4px;font-size:18px;}
.ks-mrent{font-size:27px;font-weight:800;color:var(--brand);margin:6px 0;}
.ks-mtable{width:100%;border-collapse:collapse;margin:12px 0;font-size:13px;}
.ks-mtable th{text-align:left;background:var(--brand-soft);padding:8px 11px;width:92px;color:var(--brand);font-weight:700;border:1px solid var(--line);}
.ks-mtable td{padding:8px 11px;border:1px solid var(--line);}
.ks-mactions{display:flex;gap:10px;margin-top:14px;}
.ks-mactions a{flex:1;text-align:center;padding:13px;border-radius:11px;font-weight:800;text-decoration:none;}
.ks-mline{background:var(--line-green);color:#fff;}
.ks-mtel{background:var(--brand);color:#fff;}
.ks-mclose{position:absolute;top:12px;right:16px;background:rgba(14,45,122,.55);color:#fff;border:none;width:34px;height:34px;border-radius:50%;font-size:20px;cursor:pointer;z-index:2;}

.ks-mobtoggle{display:none;}
@media(max-width:820px){
  .ks-hero h2{font-size:20px;}
  .ks-layout{grid-template-columns:1fr;}
  .ks-filters{position:fixed;inset:0;z-index:99998;background:var(--bg);padding:16px;overflow:auto;display:none;}
  .ks-filters.open{display:block;}
  .ks-mobtoggle{display:inline-block;background:var(--brand);color:#fff;border:none;padding:9px 14px;border-radius:9px;font-weight:700;cursor:pointer;}
  .ks-closefilter{display:block;width:100%;background:var(--accent);color:#fff;border:none;padding:13px;border-radius:9px;font-weight:800;margin-top:8px;}
}
