@charset "utf-8";
/* 全国地域別 起業家マップ / 制作: Center Light LLC
   親テーマ(.cb_content-category_list)の li/a スタイルが凡例に干渉するため、
   凡例は地図の下に横並びにし、干渉を打ち消す(!important で確実に上書き)。 */

.cl-jpmap{
  display:flex;flex-direction:column;align-items:center;gap:26px;
  max-width:760px;margin:0 auto;font-family:'Noto Sans JP',sans-serif;
}
.cl-jpmap-map{width:100%;max-width:520px;}
.cl-jpmap-svg{width:100%;height:auto;display:block;overflow:visible;}

/* 地図の地方(クリック領域) */
.cl-jpmap-region{cursor:pointer;outline:none;}
.cl-jpmap-region polygon,.cl-jpmap-region path{transition:fill .2s,filter .2s,stroke-width .2s;}
.cl-jpmap-region:hover,.cl-jpmap-region:focus,.cl-jpmap-region.is-hover{filter:brightness(.86) saturate(1.25);}
.cl-jpmap-region:hover polygon,.cl-jpmap-region:focus polygon,.cl-jpmap-region.is-hover polygon,
.cl-jpmap-region:hover path,.cl-jpmap-region:focus path,.cl-jpmap-region.is-hover path{stroke:#fff;stroke-width:1.3;}

/* 凡例(地図の下に横並び) */
.cl-jpmap .cl-jpmap-legend{
  display:flex !important;flex-wrap:wrap;justify-content:center;gap:10px;
  list-style:none;margin:0 !important;padding:0 !important;width:100%;
}
.cl-jpmap .cl-jpmap-legend li{
  float:none !important;width:auto !important;height:auto !important;
  margin:0 !important;padding:0 !important;list-style:none !important;
}
.cl-jpmap .cl-jpmap-legend li a{
  display:inline-flex !important;align-items:center;gap:8px;
  width:auto !important;height:auto !important;float:none !important;position:static !important;
  background:#fff !important;border:1px solid #ffedd5;border-radius:999px;
  padding:10px 18px !important;text-decoration:none;color:#1f2937;
  font-size:13px;font-weight:700;line-height:1.4 !important;white-space:nowrap;transition:.2s;
}
.cl-jpmap .cl-jpmap-legend li a:hover,
.cl-jpmap .cl-jpmap-legend li a.is-hover{
  border-color:#ff8800;color:#ff6600;background:#fff !important;
  box-shadow:0 8px 18px rgba(255,136,0,.12);transform:translateY(-2px);
}
.cl-jpmap .cl-jpmap-legend .cl-jpmap-sw{
  flex:0 0 14px;width:14px !important;height:14px !important;border-radius:4px;display:inline-block;
}

@media (max-width:520px){
  .cl-jpmap .cl-jpmap-legend li a{padding:9px 14px !important;font-size:12px;}
}

/* ===== トップ「こだわり条件から探す」の起業家検索フォーム(Center Light LLC) ===== */
.cl-front-search{
  max-width:980px; margin:36px auto 0; padding:28px 28px 30px;
  background:#fff; border-radius:18px; box-shadow:0 14px 44px rgba(0,0,0,.07); box-sizing:border-box;
}
/* 親テーマのヘッダー検索用スタイル(float・幅)を打ち消して3列グリッドに */
.cl-front-search form{
  display:grid !important; grid-template-columns:repeat(3,1fr) !important;
  gap:14px !important; align-items:stretch !important; width:100% !important; float:none !important;
}
.cl-front-search .header_search_inputs{
  float:none !important; width:auto !important; max-width:none !important; min-width:0 !important;
  margin:0 !important; padding:0 !important; position:relative; box-sizing:border-box;
}
.cl-front-search .header_search_keywords{ grid-column:1 / -1 !important; display:flex !important; }
.cl-front-search .header_search_button{ grid-column:1 / -1 !important; }

.cl-front-search input[type="text"],
.cl-front-search select{
  width:100% !important; height:54px !important; padding:0 16px !important;
  border:1.5px solid #e6e6e6 !important; border-radius:10px !important; background:#fff !important;
  font-size:15px !important; color:#333 !important; box-sizing:border-box !important; float:none !important; margin:0 !important;
}
.cl-front-search input[type="text"]:focus,
.cl-front-search select:focus{ border-color:var(--cl-primary,#ff8800) !important; outline:none !important; }
.cl-front-search select{
  -webkit-appearance:none !important; appearance:none !important; cursor:pointer; padding-right:40px !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23ff8800' d='M6 8L0 0h12z'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important; background-position:right 16px center !important;
}
/* キーワード欄と and/or トグル(横並び) */
.cl-front-search .header_search_keywords input[type="text"]{ flex:1 !important; border-radius:10px 0 0 10px !important; }
.cl-front-search .search_keywords_operator{
  display:flex !important; flex-direction:row !important; align-self:stretch; margin:0 !important; padding:0 !important;
  list-style:none !important; border:1.5px solid #e6e6e6; border-left:none; border-radius:0 10px 10px 0; overflow:hidden; width:auto !important;
}
.cl-front-search .search_keywords_operator li{
  display:flex !important; align-items:center; float:none !important; width:auto !important; margin:0 !important;
  padding:0 16px !important; font-size:13px; font-weight:700; color:#aaa; background:#f6f6f6; cursor:pointer; transition:.2s;
}
.cl-front-search .search_keywords_operator li.active{ background:var(--cl-primary,#ff8800); color:#fff; }
/* 検索ボタン(横幅いっぱい・橙) */
.cl-front-search .header_search_button input[type="submit"]{
  width:100% !important; height:56px !important; margin-top:2px !important;
  background:var(--cl-primary,#ff8800) !important; color:#fff !important; border:none !important; border-radius:10px !important;
  font-size:16px !important; font-weight:700 !important; letter-spacing:.08em; cursor:pointer; transition:opacity .2s;
}
.cl-front-search .header_search_button input[type="submit"]:hover{ opacity:.88; }
@media (max-width:768px){
  .cl-front-search{ padding:20px; }
  .cl-front-search form{ grid-template-columns:1fr !important; }
  .cl-front-search .header_search_keywords,
  .cl-front-search .header_search_button{ grid-column:auto !important; }
}

/* ===== 地方→都道府県アコーディオン ===== */
.cl-pref-acc{max-width:980px;margin:40px auto 0;padding:0 20px;}
.cl-pref-acc-lead{text-align:center;font-size:14px;color:#777;margin:0 0 22px;}
.cl-pref-acc-item{border:1px solid #f0e2d0;border-radius:10px;margin-bottom:10px;overflow:hidden;background:#fff;}
.cl-pref-acc-head{width:100%;display:flex;justify-content:space-between;align-items:center;padding:16px 22px;background:#fff;border:none;font-size:16px;font-weight:700;cursor:pointer;color:#333;transition:background .2s;}
.cl-pref-acc-head:hover{background:#fff8f0;}
.cl-pref-acc-icon{font-size:22px;line-height:1;color:#ff8800;transition:transform .25s;}
.cl-pref-acc-item.is-open .cl-pref-acc-icon{transform:rotate(45deg);}
.cl-pref-acc-body{display:none;padding:6px 22px 20px;}
.cl-pref-acc-item.is-open .cl-pref-acc-body{display:block;}
.cl-pref-acc-body ul{display:flex;flex-wrap:wrap;gap:9px;list-style:none;margin:0;padding:0;}
.cl-pref-acc-body li a{display:inline-block;padding:8px 16px;background:#fff4e6;border-radius:7px;text-decoration:none;color:#cc6600;font-size:14px;font-weight:600;transition:.2s;}
.cl-pref-acc-body li a:hover{background:#ff8800;color:#fff;}
.cl-pref-acc-body li a.cl-pref-all{background:#ff8800;color:#fff;}
@media (max-width:600px){
	.cl-pref-acc{margin-top:28px;}
	.cl-pref-acc-head{padding:14px 16px;font-size:15px;}
	.cl-pref-acc-body{padding:6px 16px 16px;}
	.cl-pref-acc-body li a{padding:7px 13px;font-size:13px;}
}

/* ===== 地域ボタンの都道府県ドロップダウン ===== */
.cl-jpmap .cl-jpmap-legend-dd{margin-top:18px !important;}
.cl-jpmap .cl-region-dd{position:relative;list-style:none;}
.cl-jpmap .cl-region-dd-btn{
  display:inline-flex;align-items:center;gap:8px;
  background:#fff;border:1px solid #ffedd5;border-radius:999px;
  padding:10px 18px;color:#1f2937;font-size:13px;font-weight:700;line-height:1.4;
  white-space:nowrap;cursor:pointer;transition:.2s;font-family:inherit;
}
.cl-jpmap .cl-region-dd-btn:hover{
  border-color:#ff8800;color:#ff6600;
  box-shadow:0 8px 18px rgba(255,136,0,.12);transform:translateY(-2px);
}
.cl-jpmap .cl-region-dd.is-open .cl-region-dd-btn{
  border-color:#ff8800;color:#ff6600;box-shadow:0 8px 18px rgba(255,136,0,.18);
}
.cl-jpmap .cl-region-dd .cl-jpmap-sw{flex:0 0 14px;width:14px;height:14px;border-radius:4px;display:inline-block;}
.cl-jpmap .cl-region-dd-caret{
  width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;
  border-top:5px solid #c9a06a;margin-left:2px;transition:transform .2s;
}
.cl-jpmap .cl-region-dd.is-open .cl-region-dd-caret{transform:rotate(180deg);border-top-color:#ff8800;}
.cl-jpmap .cl-region-dd-menu{
  position:absolute;top:calc(100% + 10px);left:50%;
  transform:translateX(-50%) translateY(-6px);
  min-width:190px;max-width:240px;max-height:320px;overflow:auto;
  background:#fff;border:1px solid #f0e2d0;border-radius:14px;
  box-shadow:0 16px 40px rgba(31,41,55,.16);padding:8px;
  opacity:0;visibility:hidden;transition:opacity .2s,transform .2s;z-index:40;
}
.cl-jpmap .cl-region-dd.is-open .cl-region-dd-menu{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);}
.cl-jpmap .cl-region-dd-menu::before{
  content:"";position:absolute;top:-7px;left:50%;transform:translateX(-50%) rotate(45deg);
  width:12px;height:12px;background:#fff;border-left:1px solid #f0e2d0;border-top:1px solid #f0e2d0;
}
.cl-jpmap .cl-region-dd .cl-region-dd-menu a{
  display:block !important;float:none !important;width:auto !important;
  background:transparent !important;border:0 !important;box-shadow:none !important;transform:none !important;
  padding:9px 14px !important;font-size:13px;font-weight:600;color:#444 !important;
  text-decoration:none;border-radius:9px !important;white-space:nowrap;transition:.15s;
}
.cl-jpmap .cl-region-dd .cl-region-dd-menu a:hover{background:#fff3e6 !important;color:#e67700 !important;transform:none !important;box-shadow:none !important;}
.cl-jpmap .cl-region-dd .cl-region-dd-menu .cl-region-dd-all{
  color:#e67700 !important;font-weight:800;border:0 !important;border-bottom:1px solid #f3eadf !important;
  border-radius:9px 9px 0 0 !important;margin-bottom:4px;
}
.cl-jpmap .cl-region-dd-lead{text-align:center;color:#9a9a9a;font-size:13px;margin:16px 0 0;}
@media (max-width:520px){
  .cl-jpmap .cl-region-dd-btn{padding:9px 14px;font-size:12px;}
  .cl-jpmap .cl-region-dd-menu{min-width:170px;max-width:80vw;}
}

/* ===== 地域ニュース ページネーション(さかのぼり) ===== */
.press-pager{display:flex;align-items:center;justify-content:center;gap:18px;margin:32px 0 8px;flex-wrap:wrap;}
.press-pager-link{display:inline-flex;align-items:center;font-size:14px;font-weight:700;color:#1c2b46;text-decoration:none;padding:10px 20px;border:1px solid #d0d5dd;border-radius:8px;transition:border-color .2s,color .2s,background .2s;}
.press-pager-link:hover{border-color:#ff8800;color:#d97706;background:#fff7ed;}
.press-pager-link.is-disabled{color:#bbb;border-color:#eee;background:#fafafa;cursor:default;pointer-events:none;}
.press-pager-now{font-size:14px;font-weight:700;color:#666;min-width:60px;text-align:center;}
@media (max-width:600px){.press-pager{gap:10px;}.press-pager-link{padding:9px 14px;font-size:13px;}}
