/* =========================================================
  HouseHR LP final layer
  Loaded after style-lp.css, fv-fix.css and testlp-fix.css.
  Keep this file small: only final layout decisions that must win.
========================================================= */

body.househr-lp {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic", Meiryo, sans-serif !important;
  letter-spacing: 0 !important;
}

body.househr-lp button,
body.househr-lp input,
body.househr-lp select,
body.househr-lp textarea {
  font-family: inherit !important;
}

/* ---- Typography cleanup: readable, consistent, not decorative ---- */
body.househr-lp article[data-househr-testlp="1"],
body.househr-lp article[data-househr-testlp="1"] * {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic", Meiryo, sans-serif !important;
}

body.househr-lp .heading__title em,
body.househr-lp .heading__subtitle,
body.househr-lp .umj-sec-head__sub,
body.househr-lp .umj-sec-head__main,
body.househr-lp .card__title,
body.househr-lp .card__inner p,
body.househr-lp #adviser p,
body.househr-lp #adviser-sp p,
body.househr-lp #service p,
body.househr-lp #support p,
body.househr-lp #case p,
body.househr-lp #cases p,
body.househr-lp #flow p,
body.househr-lp #faq p,
body.househr-lp #contact p,
body.househr-lp #job-guides p,
body.househr-lp #jobtypes p,
body.househr-lp #bottom-column p,
body.househr-lp #ai-tools p {
  font-style: normal !important;
  letter-spacing: 0 !important;
}

body.househr-lp .heading__subtitle,
body.househr-lp .umj-sec-head__sub {
  color: #ff7a00 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

body.househr-lp .heading__title,
body.househr-lp .heading__title em,
body.househr-lp .umj-sec-head__main {
  color: #071f3f !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
}

body.househr-lp #service .card__inner p,
body.househr-lp #adviser .card__inner p,
body.househr-lp #adviser-sp .card__inner p,
body.househr-lp #cases .umj-case__text,
body.househr-lp #flow .umj-flow__text,
body.househr-lp #faq .umj-faq__answer,
body.househr-lp #contact .form__label,
body.househr-lp #contact .form__labelGroup-label,
body.househr-lp #contact .wpcf7-list-item label {
  color: rgba(15, 23, 42, .78) !important;
  font-size: 14.5px !important;
  font-weight: 500 !important;
  line-height: 1.8 !important;
}

body.househr-lp #service.service {
  padding: 72px 0 76px !important;
  background: #fff !important;
}

body.househr-lp #service .cardGrid {
  gap: 22px !important;
  max-width: 1080px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.househr-lp #service .cardGrid__col {
  min-width: 0 !important;
}

body.househr-lp #service .card.card--outline {
  height: 100% !important;
  border: 1px solid rgba(11, 74, 162, .12) !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
  box-shadow: 0 18px 36px rgba(2, 6, 23, .07) !important;
}

body.househr-lp #service .card__inner {
  padding: 26px 22px 28px !important;
}

body.househr-lp #service .card__illust {
  margin-bottom: 18px !important;
}

body.househr-lp #service .card__illust img {
  max-height: 150px !important;
  object-fit: contain !important;
}

body.househr-lp #service .card__title {
  color: #0b4aa2 !important;
  font-size: 19px !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
}

body.househr-lp #service .card__title::after {
  height: 2px !important;
  margin-top: 14px !important;
  background: linear-gradient(90deg, #0b4aa2 0%, rgba(11, 74, 162, .18) 100%) !important;
}

/* ---- Final form position: FAQ immediately followed by consultation form ---- */
body.househr-lp #contact.section.contact {
  padding: 64px 0 !important;
  background: #f7fafc !important;
}

body.househr-lp #faq + script + #contact,
body.househr-lp #faq + #contact {
  margin-top: 0 !important;
}

/* ---- Job guide / job type rails: compact horizontal, never tall wrapped clouds ---- */
body.househr-lp #job-guides.umj-jobtypes,
body.househr-lp #jobtypes.umj-jobtypes {
  padding: 50px 0 !important;
  border-top: 1px solid rgba(11, 74, 162, .08) !important;
  background: #ffffff !important;
}

body.househr-lp #jobtypes.umj-jobtypes {
  background: linear-gradient(180deg, #f4f9ff 0%, #ffffff 100%) !important;
}

body.househr-lp #job-guides .container,
body.househr-lp #jobtypes .container {
  max-width: 1100px !important;
}

body.househr-lp #job-guides .umj-sec-head,
body.househr-lp #jobtypes .umj-sec-head {
  margin: 0 0 10px !important;
  text-align: center !important;
}

body.househr-lp #job-guides .umj-jobtypes__lead,
body.househr-lp #jobtypes .umj-jobtypes__lead {
  max-width: 720px !important;
  margin: 0 auto 20px !important;
  text-align: center !important;
  color: rgba(15, 23, 42, .74) !important;
  font-size: 14.5px !important;
  line-height: 1.75 !important;
}

body.househr-lp #job-guides .umj-jobtypes__list,
body.househr-lp #jobtypes .umj-jobtypes__list {
  display: grid !important;
  grid-auto-flow: column !important;
  grid-template-rows: repeat(2, 34px) !important;
  grid-auto-columns: max-content !important;
  justify-content: start !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: 980px !important;
  max-height: 84px !important;
  margin: 0 auto !important;
  padding: 2px 6px 12px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  list-style: none !important;
  scroll-snap-type: x proximity !important;
  overscroll-behavior-x: contain !important;
  -webkit-overflow-scrolling: touch !important;
  flex: none !important;
  flex-wrap: nowrap !important;
}

body.househr-lp #job-guides .umj-jobtypes__list > li,
body.househr-lp #jobtypes .umj-jobtypes__list > li {
  display: block !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  scroll-snap-align: start !important;
}

body.househr-lp #job-guides .umj-jobtype,
body.househr-lp #jobtypes .umj-jobtype {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 0 !important;
  height: 36px !important;
  min-height: 36px !important;
  padding: 0 14px !important;
  border: 1px solid rgba(11, 74, 162, .22) !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #0a2f5c !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  text-decoration: none !important;
  box-shadow: 0 8px 18px rgba(11, 74, 162, .06) !important;
  transform: none !important;
}

body.househr-lp #job-guides .umj-jobtype::after,
body.househr-lp #jobtypes .umj-jobtype::after {
  content: "›" !important;
  margin-left: 7px !important;
  color: #ff7a00 !important;
  font-weight: 900 !important;
}

body.househr-lp #jobtypes .umj-sec-cta {
  margin-top: 16px !important;
}

/* ---- Bottom column: real one-row horizontal slider, compact cards ---- */
body.househr-lp #bottom-column.umj-bottom-column {
  padding: 44px 0 48px !important;
  border-top: 1px solid rgba(11, 74, 162, .08) !important;
  background:
    linear-gradient(180deg, #ffffff 0%, #f3f8ff 100%) !important;
}

body.househr-lp #bottom-column .container {
  max-width: 1100px !important;
}

body.househr-lp #bottom-column .umj-bottom-column__head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin: 0 0 18px !important;
}

body.househr-lp #bottom-column .umj-bottom-column__head .umj-sec-head {
  margin: 0 !important;
  text-align: left !important;
}

body.househr-lp #bottom-column .umj-bottom-column__head .umj-sec-head__sub {
  font-size: 13px !important;
}

body.househr-lp #bottom-column .umj-bottom-column__head .umj-sec-head__main {
  font-size: clamp(24px, 2.2vw, 30px) !important;
}

body.househr-lp #bottom-column .umj-bottom-column__all {
  flex: 0 0 auto !important;
  color: #0b4aa2 !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

body.househr-lp #bottom-column .umj-bottom-column__rail {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  gap: 12px !important;
  width: 100% !important;
  max-height: 136px !important;
  margin: 0 !important;
  padding: 2px 2px 12px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  list-style: none !important;
  scroll-snap-type: x mandatory !important;
  overscroll-behavior-x: contain !important;
  -webkit-overflow-scrolling: touch !important;
}

body.househr-lp #bottom-column .umj-bottom-column__card {
  flex: 0 0 320px !important;
  width: 320px !important;
  max-width: 320px !important;
  min-width: 320px !important;
  margin: 0 !important;
  padding: 0 !important;
  scroll-snap-align: start !important;
}

body.househr-lp #bottom-column .umj-bottom-column__link {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  width: 100% !important;
  height: 118px !important;
  min-height: 118px !important;
  overflow: hidden !important;
  border: 1px solid rgba(15, 23, 42, .10) !important;
  border-radius: 12px !important;
  background: #fff !important;
  text-decoration: none !important;
  box-shadow: 0 12px 26px rgba(2, 6, 23, .08) !important;
}

body.househr-lp #bottom-column .umj-bottom-column__thumb {
  display: block !important;
  flex: 0 0 118px !important;
  width: 118px !important;
  height: 118px !important;
  min-height: 118px !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
  background: #f3f7fb !important;
}

body.househr-lp #bottom-column .umj-bottom-column__thumb img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
  background: #f3f7fb !important;
}

body.househr-lp #bottom-column .umj-bottom-column__body {
  display: flex !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 7px !important;
  padding: 10px 12px !important;
}

body.househr-lp #bottom-column .umj-bottom-column__title {
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 3 !important;
  overflow: hidden !important;
  color: #0a2f5c !important;
  font-size: 13.5px !important;
  font-weight: 900 !important;
  line-height: 1.5 !important;
}

body.househr-lp #bottom-column .umj-bottom-column__more {
  color: #ff7a00 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}

/* ---- Free AI tools: resume and photo at equal visual weight ---- */
body.househr-lp #ai-tools.umj-ai-tools {
  padding: 58px 0 70px !important;
  border-top: 1px solid rgba(11, 74, 162, .08) !important;
  background:
    radial-gradient(circle at 8% 0%, rgba(14, 165, 233, .12), transparent 30%),
    linear-gradient(180deg, #f7fbff 0%, #ffffff 100%) !important;
}

body.househr-lp #ai-tools .umj-sec-head {
  margin-bottom: 8px !important;
}

body.househr-lp .umj-ai-tools__lead {
  max-width: 680px !important;
  margin: 0 auto 22px !important;
  text-align: center !important;
  color: rgba(15, 23, 42, .74) !important;
  font-size: 14.5px !important;
  line-height: 1.8 !important;
}

body.househr-lp .umj-ai-tools__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
  max-width: 1040px !important;
  margin: 0 auto !important;
}

body.househr-lp .umj-ai-tool-card {
  display: grid !important;
  grid-template-columns: minmax(210px, .88fr) minmax(0, 1fr) !important;
  gap: 18px !important;
  align-items: center !important;
  min-height: 260px !important;
  padding: 22px !important;
  border: 1px solid rgba(11, 74, 162, .14) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 16px 38px rgba(2, 6, 23, .08) !important;
}

body.househr-lp .umj-ai-tool-card__visual {
  min-height: 210px !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg, #eef7ff, #ffffff) !important;
  border: 1px solid rgba(11, 74, 162, .10) !important;
  overflow: hidden !important;
}

body.househr-lp .umj-ai-tool-card__visual--doc {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 12px !important;
  padding: 22px !important;
}

body.househr-lp .umj-ai-doc__title {
  color: #0a2f5c !important;
  font-size: 20px !important;
  font-weight: 900 !important;
}

body.househr-lp .umj-ai-doc__line {
  display: block !important;
  width: 100% !important;
  height: 10px !important;
  border-radius: 999px !important;
  background: #dbe8f5 !important;
}

body.househr-lp .umj-ai-doc__line--short {
  width: 68% !important;
}

body.househr-lp .umj-ai-doc__chip {
  width: fit-content !important;
  padding: 6px 10px !important;
  border-radius: 999px !important;
  background: rgba(255, 122, 0, .14) !important;
  color: #c45a00 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

body.househr-lp .umj-ai-tool-card__visual--photo {
  display: grid !important;
  grid-template-columns: 1fr 38px 1fr !important;
  gap: 10px !important;
  align-items: center !important;
  padding: 12px !important;
}

body.househr-lp .umj-ai-tool-card__visual--photo figure {
  margin: 0 !important;
  overflow: hidden !important;
  border-radius: 12px !important;
  background: #eef5fb !important;
}

body.househr-lp .umj-ai-tool-card__visual--photo img {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 4 / 5 !important;
  object-fit: cover !important;
}

body.househr-lp .umj-ai-tool-card__visual--photo figcaption {
  padding: 5px 2px !important;
  text-align: center !important;
  color: #0a2f5c !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

body.househr-lp .umj-ai-tool-card__visual--photo > span {
  display: grid !important;
  place-items: center !important;
  width: 36px !important;
  height: 36px !important;
  border-radius: 999px !important;
  background: #0b4aa2 !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

body.househr-lp .umj-ai-tool-card__body {
  min-width: 0 !important;
}

body.househr-lp .umj-ai-tool-card__label {
  display: inline-flex !important;
  margin-bottom: 10px !important;
  padding: 5px 9px !important;
  border-radius: 999px !important;
  background: rgba(11, 74, 162, .10) !important;
  color: #0b4aa2 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

body.househr-lp .umj-ai-tool-card h3 {
  margin: 0 0 10px !important;
  color: #0a2f5c !important;
  font-size: clamp(18px, 1.8vw, 24px) !important;
  font-weight: 900 !important;
  line-height: 1.45 !important;
}

body.househr-lp .umj-ai-tool-card p {
  margin: 0 0 16px !important;
  color: rgba(15, 23, 42, .72) !important;
  font-size: 14.5px !important;
  line-height: 1.8 !important;
}

body.househr-lp .umj-ai-tool-card .umj-cta {
  min-width: 190px !important;
}

/* ---- Logo sliders/grids: consistent logo visibility ---- */
body.househr-lp .logoList,
body.househr-lp .logoLoop,
body.househr-lp [class*="logoList"],
body.househr-lp [class*="logoLoop"] {
  align-items: center !important;
}

body.househr-lp .logoList__item,
body.househr-lp .logoLoop__item,
body.househr-lp [class*="logoList"] > li,
body.househr-lp [class*="logoLoop"] > li {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 160px !important;
  min-height: 82px !important;
  padding: 12px 16px !important;
  background: #fff !important;
  border-radius: 10px !important;
}

body.househr-lp .logoList__item img,
body.househr-lp .logoLoop__item img,
body.househr-lp [class*="logoList"] > li img,
body.househr-lp [class*="logoLoop"] > li img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 138px !important;
  max-height: 52px !important;
  object-fit: contain !important;
}

@media (max-width: 640px) {
  body.househr-lp #job-guides .umj-jobtypes__list,
  body.househr-lp #jobtypes .umj-jobtypes__list {
    grid-template-rows: repeat(3, 32px) !important;
    max-height: 112px !important;
  }

  body.househr-lp #bottom-column .umj-bottom-column__head {
    display: block !important;
  }

  body.househr-lp #bottom-column .umj-bottom-column__all {
    display: inline-block !important;
    margin-top: 8px !important;
  }

  body.househr-lp #bottom-column .umj-bottom-column__card {
    flex-basis: 288px !important;
    width: 288px !important;
    min-width: 288px !important;
    max-width: 288px !important;
  }

  body.househr-lp .umj-ai-tools__grid {
    grid-template-columns: 1fr !important;
  }

  body.househr-lp .umj-ai-tool-card {
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
  }

  body.househr-lp .umj-ai-tool-card__visual {
    min-height: 190px !important;
  }
}
