/*
Theme Name: Career Point
Theme URI: https://careerpoint.works/
Description: キャリアポイント求人サイト（WordPress完全移行用）
Version: 1.1.2
Author: 株式会社YouKe'Ns
Text Domain: careerpoint
*/

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');

:root { --ink:#455560; --accent:#06a7ff; --bg:#eaf0f5; --text:#333; }
* { box-sizing:border-box; }
body { margin:0; font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif; color:var(--text); background:#fff; line-height:1.7; }
img { max-width:100%; height:auto; }
a { color:var(--accent); text-decoration:none; }
a:hover { opacity:.8; }
.inner { width:min(1180px, calc(100% - 32px)); margin:0 auto; }
.site-header { background:#fff; border-bottom:1px solid #ddd; position:relative; z-index:5; }
.site-header .inner { display:flex; align-items:center; gap:24px; min-height:80px; flex-wrap:wrap; }
.logo img { display:block; height:46px; width:auto; }
.nav { display:flex; gap:16px; flex-wrap:wrap; flex:1; }
.nav a { color:var(--ink); font-weight:700; }
.btn-accent { background:var(--accent); color:#fff !important; padding:12px 18px; display:inline-block; text-align:center; }
.header-cta { white-space:nowrap; }
.main-v { min-height:420px; padding:48px 0; background:url("https://careerpoint.works/common/images/main-v01.png") no-repeat left center; background-size:cover; position:relative; overflow:hidden; }
.main-v .wrap { position:relative; width:100%; }
.main-v-title { width:50%; margin:0 0 0 auto; }
.main-v-title > p { margin:0; font-size:20px; letter-spacing:.1em; font-weight:700; font-style:italic; text-align:center; }
.main-v-title > img { margin:20px auto; display:block; }
.main-v-title > div { text-align:center; color:#727171; font-size:22px; letter-spacing:.1em; }
.main-v .btn-entry { width:50%; margin:1.5rem 0 0 auto; text-align:center; }
.main-v .btn-entry a { min-width:300px; padding:20px 0; }
.btn-entry-sp { display:none; }
.home .wp-block-html { margin:0; }
.content01 { padding:60px 0; }
.content-title01 { text-align:center; margin:0 0 40px; }
.content-title01 img { display:block; margin:0 auto 12px; }
.content-title01 span { display:block; font-size:18px; letter-spacing:.08em; }
.content-title02 { text-align:center; margin-bottom:20px; }
.content-title02 span { font-size:18px; font-weight:700; padding:0 10px 10px; display:inline-block; border-bottom:1px solid #000; }
.service-list { display:flex; justify-content:space-between; gap:24px; list-style:none; padding:0; margin:0; }
.service-list li { flex:1; }
.service-list h3 { color:var(--ink); font-size:22px; line-height:1.4; text-align:center; margin:20px 0; }
.service-list p { font-size:15px; line-height:1.8; }
.content02 { background:var(--bg); padding:60px 0; }
.search-visual { display:flex; justify-content:space-around; gap:40px; flex-wrap:wrap; }
.map-wrap { width:450px; max-width:100%; }
.map-wrap ul { list-style:none; margin:40px 0 0; padding:0; height:349px; background:url("https://careerpoint.works/common/images/map.png") no-repeat center; background-size:contain; position:relative; }
.map-wrap li { position:absolute; transform:translate(-50%,-50%); }
.map-wrap .tochigi { top:15%; left:56%; }
.map-wrap .gunma { top:15%; left:23%; }
.map-wrap .ibaraki { top:36%; right:2%; transform:translate(0,-50%); }
.map-wrap .saitama { top:46%; left:35%; }
.map-wrap .tokyo { top:60%; left:27%; }
.map-wrap .chiba { bottom:18%; right:5%; transform:none; }
.map-wrap .kanagawa { bottom:12%; left:22%; transform:none; }
.map-wrap a { font-size:14px; padding:5px 16px; background:#fff; color:var(--ink); border:1px solid var(--ink); display:inline-block; }
.map-wrap a:hover { background:var(--ink); color:#fff; }
.job-wrap ul { list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.job-wrap img { display:block; width:100%; max-width:360px; }
.content03 { padding:80px 0 40px; }
.pickup-list { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.pickup-card { background:#fff; color:var(--text); position:relative; box-shadow:0 3px 5px rgba(0,0,0,.12); display:block; }
.pickup-card .img-wrap img { width:100%; height:150px; object-fit:cover; }
.pickup-card .tag-work { position:absolute; top:0; left:0; background:var(--ink); color:#fff; font-size:12px; padding:2px 8px; max-width:90%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.pickup-card .text-wrap { padding:10px 13px 16px; }
.pickup-card .title { margin:0; font-weight:700; color:var(--ink); }
.center-btn { text-align:center; margin:40px 0 0; }
.btn02 { width:250px; margin:0 auto; background:var(--ink); color:#fff !important; display:inline-flex; justify-content:center; align-items:center; min-height:60px; }
.page-hero { background:url("https://careerpoint.works/common/images/subpage_mv.png") no-repeat center; background-size:cover; min-height:160px; display:flex; align-items:center; }
.page-hero h1 { color:var(--ink); margin:24px 0; }
.page-body { padding:40px 0 60px; }
.page-illust { display:block; max-width:360px; margin:16px 0; }
.flow-list { list-style:none; padding:0; margin:0; display:grid; gap:20px; }
.flow-list li { background:var(--bg); padding:20px 24px; }
.flow-step { color:var(--accent); font-weight:700; }
.faq-list dt { font-weight:700; margin:24px 0 8px; }
.faq-list dd { margin:0; padding:0 0 8px; }
.sitemap-list { line-height:2.2; }
.google-map { margin-top:24px; }
.search-panel { background:var(--bg); padding:24px; margin:24px 0; }
.search-panel label { display:inline-block; margin:4px 12px 4px 0; }
.search-panel details { margin:8px 0; }
.search-panel summary { cursor:pointer; font-weight:700; }
.job-list { display:grid; gap:16px; }
.job-item { border:1px solid #ddd; padding:16px; display:grid; grid-template-columns:160px 1fr; gap:16px; }
.job-item .job-thumb { width:160px; height:110px; object-fit:cover; background:#f3f3f3; }
.job-item h2 { margin:0 0 8px; font-size:18px; }
.job-item .job-body { min-width:0; }
.meta { color:#666; font-size:13px; }
.detail-table { width:100%; border-collapse:collapse; }
.detail-table th, .detail-table td { border:1px solid #c8c8c8; padding:14px; vertical-align:top; text-align:left; }
.detail-table th { width:180px; background:#eaeaea; }
.content05 { padding:60px 0; background:url("https://careerpoint.works/common/images/footer-bg.png") no-repeat center; background-size:cover; }
.content05 .contact-wrap { width:min(680px,100%); margin-left:auto; text-align:center; }
.site-footer { background:var(--ink); color:#fff; padding:32px 0; }
.site-footer a { color:#fff; margin-right:12px; }
.footer-logo img { height:40px; width:auto; }
.form-table { width:100%; }
.form-table th { width:180px; text-align:left; vertical-align:top; padding:8px; }
.form-table input, .form-table textarea, .form-table select { width:100%; padding:8px; }
.notice { background:#e8f7e8; padding:12px; margin:16px 0; }
.pagination { display:flex; gap:8px; margin:24px 0; flex-wrap:wrap; }
@media (max-width:980px){ .pickup-list{grid-template-columns:repeat(2,1fr);} }
@media (max-width:650px){
  .site-header .inner{min-height:auto;padding:12px 0;}
  .header-cta{width:100%;}
  .main-v{padding-top:51.55%;background-image:url("https://careerpoint.works/common/images/main-v01-sp.png");}
  .main-v .wrap{top:auto;left:auto;transform:none;}
  .main-v-title{width:60%;}
  .main-v-title > p, .main-v-title > div{font-size:3.5vw;}
  .main-v-title > img{width:70%;margin:10px auto;}
  .main-v .btn-entry{display:none;}
  .btn-entry-sp{display:block;padding:10px;text-align:center;}
  .btn-entry-sp a{display:block;padding:20px 0;}
  .service-list{flex-direction:column;}
  .service-list .img_wrap{width:60%;margin:0 auto;}
  .map-wrap{width:100%;}
  .map-wrap ul{height:auto;background:none;margin-top:0;display:flex;flex-wrap:wrap;gap:8px;}
  .map-wrap li{position:static;transform:none;width:48%;}
  .map-wrap a{display:block;text-align:center;}
  .pickup-list{grid-template-columns:1fr;}
  .job-item{grid-template-columns:1fr;}
  .detail-table th{width:auto;display:block;}
  .detail-table td{display:block;}
}
