/**共通**/
:root {
  --color-navy: #073e87;
  --color-navy-dark: #043574;
  --color-blue: #245fa1;
  --color-coral: #f15536;
  --color-yellow: #ffc934;
  --color-text: #1c2937;
  --color-white: #fff;
  --content-width: 1080px;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  color: var(--color-text);
  background: var(--color-white);
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  -webkit-font-smoothing: antialiased;
}

img {
  display: block;
  max-width: 100%;
}

a {
  color: inherit;
  text-decoration: none;
}

@media screen and (min-width: 501px) {
  .sp {
    display:none;
  }
}

@media screen and (max-width: 500px) {
  .pc {
    display:none;
  }
}
/**header**/
.site-header{background:#fff;display:flex;align-items:center;border-bottom:1px solid #eee;padding: 10px 0;}
.header-inner{width:1280px;margin:auto;padding:10px 24px;display: flex;justify-content: space-between;align-items: center;}
.logo{width: 200px;}
.logo img {width: 100%;}
.label{display:inline-block;background:#fff;color:#111;padding:14px 0 14px 14px;font-weight:700;font-size:18px;line-height:1.4;position:relative;}
.label::before {content: "";position: absolute;inset: 0;padding: 3px;background: linear-gradient(90deg,#918027 0%,#EADC95 50%,#928127 100%);
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
}
.label span{background: linear-gradient(
  90deg,
  #918027 0%,
  #EADC95 50%,
  #928127 100%
);padding:13px 17px;margin-left:6px
}

@media screen and (max-width: 500px) {
  .header-inner{
    flex-direction: column;
  }
  .label {
    margin-top:15px;
  }
}


/* =========================================================
   FV：若手営業育成事例集
   他セクションと干渉しないよう .sales-fv 配下で完結
   ========================================================= */
.sales-fv,
.sales-fv * {
  box-sizing: border-box;
}

.sales-fv {
  --sales-fv-navy: #051f50;
  --sales-fv-blue: #88c7ef;
  --sales-fv-orange: #ff6a00;
  width: 100%;
  background: #fff;
  color: var(--sales-fv-navy);
  font-family: "Noto Sans JP", "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-feature-settings: "palt" 0;
}

.sales-fv__inner {
  display: grid;
  grid-template-columns: minmax(0, 54%) minmax(0, 46%);
  width: min(100%, 1200px);
  min-height: 650px;
  margin-inline: auto;
}

.sales-fv__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: 64px 46px 64px 0;
}

.sales-fv__eyebrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: fit-content;
  padding: 0 10px 8px;
  margin-top: 20px;
  border-bottom: 3px solid var(--sales-fv-blue);
  font-size: 28px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: .05em;
  white-space: nowrap;
}

.sales-fv__title {
  margin: 0;
  font-size: clamp(38px, 4.1vw, 45px);
  font-weight: 800;
  line-height: 1.52;
  letter-spacing: .015em;
}

.sales-fv__lead-wrap {
  display: flex;
  align-items: center;
  gap: 24px;
  margin: 28px 0 0;
}

.sales-fv__lead-image {
  flex-shrink: 0;
  width: 120px;
}

.sales-fv__lead-image img {
  display: block;
  width: 100%;
  height: auto;
}

.sales-fv__lead {
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  line-height: 2;
  letter-spacing: 0.03em;
}

/* スマホ */
@media screen and (max-width: 767px) {
  .sales-fv__lead-wrap {
    flex-direction:column;
    gap: 14px;
    margin-top: 20px;
  }

  .sales-fv__lead-image {
    width: 132px;
  }

  .sales-fv__lead {
    font-size: 14px;
    line-height: 1.9;
    text-align: left;
  }
}

.sales-fv__cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 58px;
  align-items: center;
  gap: 18px;
  width: 100%;
  max-width: 600px;
  min-height: 76px;
  margin-top: 34px;
  padding: 10px 14px 10px 28px;
  border-radius: 12px;
  background: var(--sales-fv-orange);
  box-shadow: 0 8px 18px rgb(255 106 0 / 18%);
  color: #fff;
  font-size: clamp(18px, 1.75vw, 23px);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: .02em;
  text-align: center;
  text-decoration: none;
  transition: transform .2s ease, filter .2s ease, box-shadow .2s ease;
}

.sales-fv__cta:hover {
  filter: brightness(.95);
  transform: translateY(-2px);
  box-shadow: 0 12px 24px rgb(255 106 0 / 25%);
}

.sales-fv__cta:focus-visible {
  outline: 3px solid var(--sales-fv-blue);
  outline-offset: 4px;
}

.sales-fv__cta-icon {
  position: relative;
  display: grid;
  place-items: center;
  width: 58px;
  aspect-ratio: 1;
  border-radius: 50%;
  background: #fff;
}

.sales-fv__cta-icon::before {
  content: "";
  width: 17px;
  height: 17px;
  border-top: 4px solid var(--sales-fv-orange);
  border-right: 4px solid var(--sales-fv-orange);
  transform: translateX(-3px) rotate(45deg);
}

.sales-fv__cta-icon::after {
  content: "";
  position: absolute;
  width: 25px;
  height: 4px;
  border-radius: 999px;
  background: var(--sales-fv-orange);
}

.sales-fv__visual {
  position: relative;
  min-width: 0;
  min-height: 650px;
  overflow: hidden;
}

.sales-fv__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

@media (max-width: 1240px) {
  .sales-fv__content {
    padding-left: 32px;
    padding-right: 32px;
  }
}

@media (max-width: 900px) {
  .sales-fv__inner {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .sales-fv__content {
    align-items: center;
    padding: 56px 24px 48px;
    text-align: center;
  }

  .sales-fv__eyebrow {
    margin-bottom: 28px;
  }

  .sales-fv__title {
    font-size: clamp(34px, 7vw, 48px);
    line-height: 1.45;
  }

  .sales-fv__lead {
    font-size: 18px;
  }

  .sales-fv__visual {
    min-height: 0;
    aspect-ratio: 16 / 10;
  }
}

@media (max-width: 560px) {
  .sales-fv__content {
    padding: 42px 20px 36px;
  }

  .sales-fv__eyebrow {
    gap: 8px;
    margin-bottom: 24px;
    font-size: 20px;
  }

  .sales-fv__eyebrow::before,
  .sales-fv__eyebrow::after {
    height: 22px;
  }

  .sales-fv__title {
    font-size: clamp(29px, 8.5vw, 40px);
    line-height: 1.45;
  }

  .sales-fv__lead {
    margin-top: 22px;
    font-size: 15px;
    line-height: 1.9;
  }

  .sales-fv__cta {
    grid-template-columns: minmax(0, 1fr) 46px;
    gap: 10px;
    min-height: 66px;
    margin-top: 28px;
    padding: 9px 10px 9px 16px;
    border-radius: 9px;
    font-size: 20px;
  }

  .sales-fv__cta-icon {
    width: 46px;
  }

  .sales-fv__cta-icon::before {
    width: 13px;
    height: 13px;
    border-width: 3px;
  }

  .sales-fv__cta-icon::after {
    width: 20px;
    height: 3px;
  }

  .sales-fv__visual {
    aspect-ratio: 4 / 3;
  }
}

@media (prefers-reduced-motion: reduce) {
  .sales-fv__cta {
    transition: none;
  }
}

/* =========================================================
   営業育成の課題セクション
   他セクションと干渉しないよう .sales-problem 配下で完結
   ========================================================= */
.sales-problem,
.sales-problem * {
  box-sizing: border-box;
}

.sales-problem {
  --sales-problem-navy: #062454;
  --sales-problem-blue: #c3d6e8;
  --sales-problem-pale: #edf7ff;
  --sales-problem-orange: #ff6a00;
  width: 100%;
  padding: 58px 24px 66px;
  background: linear-gradient(135deg, #f8fcff 0%, #eaf6ff 52%, #f5fbff 100%);
  color: var(--sales-problem-navy);
  font-family: "Noto Sans JP", "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-feature-settings: "palt" 0;
}

.sales-problem__inner {
  width: min(100%, 1200px);
  margin-inline: auto;
}

.sales-problem__header {
  text-align: center;
}

.sales-problem__label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin: 0 0 14px;
  color: var(--sales-problem-orange);
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .06em;
}

.sales-problem__label::before,
.sales-problem__label::after {
  content: "";
  display: block;
  width: 24px;
  height: 2px;
  background: currentColor;
}

.sales-problem__title {
  margin: 0;
  font-size: clamp(28px, 3vw, 38px);
  font-weight: 800;
  line-height: 1.45;
  letter-spacing: .03em;
}

.sales-problem__check-panel {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr);
  gap: 48px;
  margin-top: 30px;
  padding: 30px 48px 26px;
  border: 1px solid #a9bfd4;
  border-radius: 12px;
  background: rgb(255 255 255 / 82%);
}

.sales-problem__check-list {
  display: flex;
  flex-direction: column;
  gap: 18px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.sales-problem__check-list li {
  position: relative;
  min-height: 38px;
  padding-left: 54px;
  color: #101820;
  font-size: clamp(16px, 1.55vw, 19px);
  font-weight: 600;
  line-height: 1.75;
}

.sales-problem__check-list li::before {
  content: "";
  position: absolute;
  top: 1px;
  left: 0;
  width: 38px;
  height: 38px;
  border: 2px solid var(--sales-problem-orange);
  border-radius: 50%;
}

.sales-problem__check-list li::after {
  content: "";
  position: absolute;
  top: 11px;
  left: 12px;
  width: 12px;
  height: 7px;
  border-bottom: 2px solid var(--sales-problem-orange);
  border-left: 2px solid var(--sales-problem-orange);
  transform: rotate(-45deg);
}

.sales-problem__result-label {
  position: relative;
  width: min(210px, 60%);
  margin: 24px auto 26px;
  padding: 9px 20px;
  border-radius: 999px;
  background: var(--sales-problem-orange);
  color: #fff;
  font-size: 21px;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
}

.sales-problem__result-label::after {
  content: "";
  position: absolute;
  top: calc(100% - 1px);
  left: 50%;
  width: 0;
  height: 0;
  border-top: 17px solid var(--sales-problem-orange);
  border-right: 17px solid transparent;
  border-left: 17px solid transparent;
  transform: translateX(-50%);
}

.sales-problem__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.sales-problem__card {
  min-width: 0;
  padding: 20px 20px 26px;
  border: 1px solid #a9bfd4;
  border-radius: 8px;
  background: rgb(255 255 255 / 76%);
}

.sales-problem__icon {
  display: block;
  width: 132px;
  height: 132px;
  margin: 0 auto 10px;
  object-fit: contain;
}

.sales-problem__card-title {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: baseline;
  gap: 18px;
  margin: 0;
  color: var(--sales-problem-navy);
  font-size: clamp(18px, 1.75vw, 22px);
  font-weight: 800;
  line-height: 1.45;
}

.sales-problem__number {
  position: relative;
  color: var(--sales-problem-orange);
  font-size: 24px;
  line-height: 1.2;
}

.sales-problem__number::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -7px;
  left: 0;
  height: 2px;
  background: var(--sales-problem-orange);
}

.sales-problem__text {
  margin: 22px 0 0;
  color: #101820;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.9;
}

@media (max-width: 960px) {
  .sales-problem__check-panel {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .sales-problem__cards {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .sales-problem__card {
    display: grid;
    grid-template-columns: 130px minmax(0, 1fr);
    column-gap: 22px;
    align-items: center;
  }

  .sales-problem__icon {
    grid-row: 1 / 3;
    margin: 0;
  }

  .sales-problem__text {
    margin-top: 12px;
  }
}

@media (max-width: 600px) {
  .sales-problem {
    padding: 44px 18px 48px;
  }

  .sales-problem__label {
    font-size: 15px;
  }

  .sales-problem__title {
    font-size: 27px;
  }

  .sales-problem__check-panel {
    margin-top: 24px;
    padding: 24px 20px;
  }

  .sales-problem__check-list {
    gap: 16px;
  }

  .sales-problem__check-list li {
    min-height: 32px;
    padding-left: 44px;
    font-size: 15px;
    line-height: 1.7;
  }

  .sales-problem__check-list li br {
    display: none;
  }

  .sales-problem__check-list li::before {
    width: 32px;
    height: 32px;
  }

  .sales-problem__check-list li::after {
    top: 9px;
    left: 10px;
    width: 11px;
    height: 6px;
  }

  .sales-problem__result-label {
    margin-top: 22px;
    margin-bottom: 28px;
    font-size: 18px;
  }

  .sales-problem__card {
    display: block;
    padding: 22px 20px 26px;
  }

  .sales-problem__icon {
    width: 118px;
    height: 118px;
    margin: 0 auto 12px;
  }

  .sales-problem__card-title {
    gap: 14px;
    font-size: 19px;
  }

  .sales-problem__number {
    font-size: 22px;
  }

  .sales-problem__text {
    margin-top: 20px;
    font-size: 14px;
  }
}

/* =========================================================
   若手が営業育成に求めていること
   他セクションと干渉しないよう .sales-research 配下で完結
   ========================================================= */
.sales-research,
.sales-research * {
  box-sizing: border-box;
}

.sales-research {
  --sales-research-navy: #06245a;
  --sales-research-blue: #348df0;
  --sales-research-pale: #edf7ff;
  --sales-research-orange: #f75a0a;
  width: 100%;
  padding: 54px 24px 68px;
  background: #e5f5fd;
  color: var(--sales-research-navy);
  font-family: "Noto Sans JP", "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-feature-settings: "palt" 0;
}

.sales-research__inner {
  width: min(100%, 1200px);
  margin-inline: auto;
}

.sales-research__header {
  text-align: center;
}

.sales-research__label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin: 0 0 12px;
  color: var(--sales-research-orange);
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .14em;
}

.sales-research__label::before,
.sales-research__label::after {
  content: "";
  width: 28px;
  height: 2px;
  background: currentColor;
}

.sales-research__title {
  margin: 0;
  font-size: clamp(32px, 3.65vw, 48px);
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: .025em;
}

.sales-research__intro {
  margin: 12px 0 0;
  font-size: clamp(16px, 1.55vw, 19px);
  font-weight: 600;
  line-height: 1.8;
  letter-spacing: .02em;
}

.sales-research__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 20px;
}

.sales-research__card {
  min-width: 0;
  padding: 20px 16px 16px;
  border: 1px solid var(--sales-research-blue);
  border-radius: 9px;
  background: #fff;
}

.sales-research__card-title {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 22px;
  margin: 0 6px 14px;
  font-size: clamp(20px, 2vw, 27px);
  font-weight: 800;
  line-height: 1.45;
}

.sales-research__number {
  color: var(--sales-research-orange);
  font-size: clamp(38px, 4vw, 52px);
  font-weight: 800;
  line-height: 1;
}

.sales-research__chart-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 320px;
  overflow: hidden;
  background: #fff;
}

.sales-research__chart {
  display: block;
  width: 100%;
  height: auto;
  max-height: 370px;
  object-fit: contain;
}

.sales-research__source {
  margin: 8px 4px 12px;
  color: #161616;
  font-size: 12px;
  line-height: 1.55;
}

.sales-research__summary {
  display: grid;
  grid-template-columns: 78px minmax(0, 1fr);
  align-items: center;
  gap: 18px;
  min-height: 158px;
  padding: 14px 18px;
  border-radius: 9px;
  background: #e5f5fd;
}

.sales-research__summary-icon {
  display: block;
  width: 72px;
  height: 72px;
  object-fit: contain;
}

.sales-research__summary p {
  margin: 0;
  font-size: clamp(14px, 1.25vw, 16px);
  font-weight: 600;
  line-height: 1.85;
}

@media (max-width: 980px) {
  .sales-research__intro br {
    display: none;
  }

  .sales-research__grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .sales-research__chart-wrap {
    min-height: 0;
  }

  .sales-research__chart {
    max-height: none;
  }
}

@media (max-width: 600px) {
  .sales-research {
    padding: 44px 18px 50px;
  }

  .sales-research__label {
    font-size: 15px;
  }

  .sales-research__title {
    font-size: 29px;
  }

  .sales-research__intro {
    font-size: 15px;
    line-height: 1.75;
  }

  .sales-research__grid {
    margin-top: 24px;
  }

  .sales-research__card {
    padding: 18px 12px 12px;
  }

  .sales-research__card-title {
    gap: 14px;
    margin-inline: 2px;
    font-size: 19px;
  }

  .sales-research__number {
    font-size: 38px;
  }

  .sales-research__source {
    margin-top: 10px;
    font-size: 10px;
  }

  .sales-research__summary {
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 12px;
    min-height: 0;
    padding: 16px 14px;
  }

  .sales-research__summary-icon {
    width: 52px;
    height: 52px;
  }

  .sales-research__summary p {
    font-size: 13px;
    line-height: 1.75;
  }

  .sales-research__summary p br {
    display: none;
  }
}

/* =========================================================
   若手の期待とOJT任せの見え方の対比
   他セクションと干渉しないよう .sales-comparison 配下で完結
   ========================================================= */
.sales-comparison,
.sales-comparison * {
  box-sizing: border-box;
}

.sales-comparison {
  --sales-comparison-navy: #06265b;
  --sales-comparison-blue: #1659a7;
  --sales-comparison-orange: #f75c0b;
  width: 100%;
  padding: 48px 24px 50px;
  background: #ffffff;
  color: var(--sales-comparison-navy);
  font-family: "Noto Sans JP", "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-feature-settings: "palt" 0;
}

.sales-comparison__inner {
  width: min(100%, 1200px);
  margin-inline: auto;
}

.sales-comparison__title {
  margin: 0 0 28px;
  font-size: clamp(32px, 3.65vw, 46px);
  font-weight: 800;
  line-height: 1.4;
  text-align: center;
  letter-spacing: .025em;
}

.sales-comparison__headings,
.sales-comparison__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 54px minmax(0, 1fr);
  gap: 14px;
}

.sales-comparison__headings {
  margin: 0 34px 14px;
}

.sales-comparison__headings p {
  margin: 0;
  padding: 10px 18px;
  border-radius: 5px;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.35;
  text-align: center;
}

.sales-comparison__headings p:nth-child(1) {
  background: var(--sales-comparison-blue);
  color: #fff;
}

.sales-comparison__headings p:nth-child(2) {
  border: 1px solid #82ace0;
  background: #fff;
  color: var(--sales-comparison-navy);
}

.sales-comparison__headings p:nth-child(3) {
  background: var(--sales-comparison-orange);
  color: #fff;
}

.sales-comparison__headings p:nth-child(2) {
  grid-column: 2 / 3;
  width: max-content;
  justify-self: center;
  transform: translateX(0);
}

.sales-comparison__headings p:nth-child(3) {
  grid-column: 3 / 4;
}

.sales-comparison__rows {
  display: grid;
  gap: 10px;
}

.sales-comparison__row {
  align-items: stretch;
}

.sales-comparison__need,
.sales-comparison__reality {
  display: grid;
  align-items: center;
  min-width: 0;
  min-height: 126px;
  border-radius: 7px;
  background: rgb(255 255 255 / 85%);
}

.sales-comparison__need {
  grid-template-columns: 46px 108px minmax(0, 1fr);
  gap: 12px;
  padding: 12px 20px;
  border: 1px solid #83b2e0;
}

.sales-comparison__reality {
  grid-template-columns: 108px minmax(0, 1fr);
  gap: 18px;
  padding: 12px 28px;
  border: 1px solid #f4aa7a;
}

.sales-comparison__number {
  color: var(--sales-comparison-orange);
  font-size: 30px;
  font-weight: 800;
  line-height: 1;
}

.sales-comparison__need img,
.sales-comparison__reality img {
  display: block;
  width: 104px;
  height: 104px;
  object-fit: contain;
}

.sales-comparison__need p,
.sales-comparison__reality p {
  margin: 0;
  font-size: clamp(17px, 1.65vw, 21px);
  font-weight: 700;
  line-height: 1.65;
}

.sales-comparison__arrow {
  position: relative;
  align-self: center;
  width: 34px;
  height: 4px;
  justify-self: center;
  border-radius: 999px;
  background: var(--sales-comparison-navy);
}

.sales-comparison__arrow::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -1px;
  width: 16px;
  height: 16px;
  border-top: 4px solid var(--sales-comparison-navy);
  border-right: 4px solid var(--sales-comparison-navy);
  transform: translateY(-50%) rotate(45deg);
}

.sales-comparison__note {
  margin: 16px 0 22px;
  font-size: clamp(16px, 1.5vw, 19px);
  font-weight: 700;
  line-height: 1.75;
  text-align: center;
}

.sales-comparison__question {
  position: relative;
  padding: 20px 24px;
  border-radius: 5px;
  background: linear-gradient(135deg, #073371 0%, #061f53 100%);
  color: #fff;
  text-align: center;
}

.sales-comparison__question::before {
  content: "";
  position: absolute;
  top: -17px;
  left: 50%;
  border-right: 18px solid transparent;
  border-bottom: 0;
  border-left: 18px solid transparent;
  border-top: 18px solid var(--sales-comparison-orange);
  transform: translateX(-50%);
}

.sales-comparison__question p {
  margin: 0;
  font-size: clamp(23px, 2.4vw, 31px);
  font-weight: 700;
  line-height: 1.5;
}

.sales-comparison__question strong {
  color: var(--sales-comparison-orange);
  font-size: 1.35em;
  font-weight: 800;
}

@media (max-width: 980px) {
  .sales-comparison__headings {
    display: none;
  }

  .sales-comparison__rows {
    gap: 22px;
  }

  .sales-comparison__row {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .sales-comparison__need::before,
  .sales-comparison__reality::before {
    grid-column: 1 / -1;
    margin: -12px -20px 0;
    padding: 7px 14px;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
  }

  .sales-comparison__need::before {
    content: "若手が求めていること";
    background: var(--sales-comparison-blue);
  }

  .sales-comparison__reality::before {
    content: "OJTだけに任されていると、若手にはこう見える";
    margin-right: -28px;
    margin-left: -28px;
    background: var(--sales-comparison-orange);
  }

  .sales-comparison__arrow {
    width: 4px;
    height: 25px;
  }

  .sales-comparison__arrow::after {
    top: auto;
    right: 50%;
    bottom: -1px;
    transform: translateX(50%) rotate(135deg);
  }
}

@media (max-width: 600px) {
  .sales-comparison {
    padding: 40px 18px 44px;
  }

  .sales-comparison__title {
    margin-bottom: 24px;
    font-size: 28px;
    text-align: left;
  }

  .sales-comparison__need,
  .sales-comparison__reality {
    min-height: 0;
  }

  .sales-comparison__need {
    grid-template-columns: 38px 78px minmax(0, 1fr);
    gap: 8px;
    padding: 12px 12px 16px;
  }

  .sales-comparison__reality {
    grid-template-columns: 78px minmax(0, 1fr);
    gap: 10px;
    padding: 12px 14px 16px;
  }

  .sales-comparison__need::before {
    margin-right: -12px;
    margin-left: -12px;
  }

  .sales-comparison__reality::before {
    margin-right: -14px;
    margin-left: -14px;
  }

  .sales-comparison__number {
    font-size: 24px;
  }

  .sales-comparison__need img,
  .sales-comparison__reality img {
    width: 76px;
    height: 76px;
  }

  .sales-comparison__need p,
  .sales-comparison__reality p {
    font-size: 14px;
    line-height: 1.65;
  }

  .sales-comparison__need p br,
  .sales-comparison__reality p br,
  .sales-comparison__note br {
    display: none;
  }

  .sales-comparison__note {
    font-size: 14px;
    text-align: left;
  }

  .sales-comparison__question {
    padding: 18px 14px;
  }

  .sales-comparison__question p {
    font-size: 20px;
  }
}

/* =========================================================
   OJTと学びのサイクル
   他セクションと干渉しないよう .sales-solution 配下で完結
   ========================================================= */
.sales-solution,
.sales-solution * {
  box-sizing: border-box;
}

.sales-solution {
  --sales-solution-navy: #062454;
  --sales-solution-blue: #2d669c;
  --sales-solution-pale: #edf7ff;
  --sales-solution-orange: #f7681d;
  width: 100%;
  padding: 38px 24px 48px;
  background: #e5f5fd;
  color: var(--sales-solution-navy);
  font-family: "Noto Sans JP", "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-feature-settings: "palt" 0;
}

.sales-solution__inner {
  width: min(100%, 1200px);
  margin-inline: auto;
}

.sales-solution__header {
  text-align: center;
}

.sales-solution__label {
  margin: 0 0 16px;
  color: var(--sales-solution-orange);
  font-size: 18px;
  font-weight: 700;
  letter-spacing: .12em;
}

.sales-solution__title {
  display: flex;
  flex-direction: column;
  gap: 7px;
  margin: 0;
  font-size: clamp(27px, 3.15vw, 42px);
  font-weight: 800;
  line-height: 1.4;
  letter-spacing: .02em;
}

.sales-solution__title-small {
  font-size: .64em;
}

.sales-solution__title strong {
  display: inline-block;
  color: var(--sales-solution-orange);
  font-size: 1.35em;
  font-weight: 800;
  line-height: 1.18;
  border-bottom: 3px solid currentColor;
}

.sales-solution__intro {
  margin: 24px 0 0;
  font-size: clamp(15px, 1.5vw, 18px);
  font-weight: 600;
  line-height: 1.9;
}

.sales-solution__message {
  margin: 24px auto 30px;
  padding: 18px 24px;
  border-radius: 7px;
  background: #ffffff;
  color: #151515;
  text-align: center;
}

.sales-solution__message p {
  margin: 0;
  font-size: clamp(14px, 1.4vw, 17px);
  font-weight: 600;
  line-height: 1.7;
}

.sales-solution__message .sales-solution__message-title {
  margin-bottom: 2px;
  color: var(--sales-solution-blue);
  font-size: clamp(21px, 2.4vw, 30px);
  font-weight: 800;
}

.sales-solution__steps-title {
  margin: 0 0 20px;
  font-size: clamp(24px, 2.7vw, 34px);
  font-weight: 800;
  line-height: 1.45;
  text-align: center;
  letter-spacing: .03em;
}

.sales-solution__steps-wrap {
  position: relative;
  padding-bottom: 55px;
}

.sales-solution__steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 40px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.sales-solution__step {
  position: relative;
  min-width: 0;
  min-height: 330px;
  padding: 18px 18px 22px;
  border: 1px solid #89b8df;
  border-radius: 7px;
  background: #fff;
  text-align: center;
}

.sales-solution__step:not(:last-child)::before,
.sales-solution__step:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 50%;
  z-index: 1;
}

.sales-solution__step:not(:last-child)::before {
  left: calc(100% + 6px);
  width: 28px;
  height: 4px;
  border-radius: 999px;
  background: var(--sales-solution-navy);
  transform: translateY(-2px);
}

.sales-solution__step:not(:last-child)::after {
  left: calc(100% + 22px);
  width: 15px;
  height: 15px;
  border-top: 4px solid var(--sales-solution-navy);
  border-right: 4px solid var(--sales-solution-navy);
  transform: translateY(-8px) rotate(45deg);
}

.sales-solution__step-label {
  margin: 0;
  color: var(--sales-solution-orange);
  font-size: 17px;
  font-weight: 700;
  line-height: 1.4;
}

.sales-solution__icon {
  display: block;
  width: 135px;
  height: 135px;
  margin: 4px auto 6px;
  object-fit: contain;
}

.sales-solution__step h4 {
  margin: 0;
  font-size: clamp(17px, 1.55vw, 20px);
  font-weight: 800;
  line-height: 1.5;
}

.sales-solution__step > p:last-child {
  margin: 10px 0 0;
  color: #151515;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.8;
}

.sales-solution__cycle {
  position: absolute;
  right: 11%;
  bottom: 7px;
  left: 11%;
  height: 38px;
  border-right: 3px solid var(--sales-solution-navy);
  border-bottom: 3px solid var(--sales-solution-navy);
  border-left: 3px solid var(--sales-solution-navy);
  border-radius: 0 0 12px 12px;
}

.sales-solution__cycle::before {
  content: "";
  position: absolute;
  bottom: 26px;
  left: -8px;
  width: 14px;
  height: 14px;
  border-top: 3px solid var(--sales-solution-navy);
  border-left: 3px solid var(--sales-solution-navy);
  transform: rotate(45deg);
}

.sales-solution__cycle span {
  position: absolute;
  bottom: -9px;
  left: 50%;
  padding: 0 22px;
  background: #fff;
  color: var(--sales-solution-orange);
  font-size: 19px;
  font-weight: 700;
  white-space: nowrap;
  transform: translateX(-50%);
}

@media (max-width: 1040px) {
  .sales-solution__steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
  }

  .sales-solution__step {
    min-height: 310px;
  }

  .sales-solution__step::before,
  .sales-solution__step::after,
  .sales-solution__cycle {
    display: none;
  }

  .sales-solution__steps-wrap {
    padding-bottom: 0;
  }
}

@media (max-width: 600px) {
  .sales-solution {
    padding: 38px 18px 46px;
  }

  .sales-solution__label {
    font-size: 15px;
  }

  .sales-solution__title {
    font-size: 25px;
  }

  .sales-solution__title-small {
    font-size: .76em;
  }

  .sales-solution__title strong {
    font-size: 1.2em;
  }

  .sales-solution__intro br {
    display: none;
  }

  .sales-solution__message {
    padding: 16px;
  }

  .sales-solution__message .sales-solution__message-title {
    font-size: 21px;
  }

  .sales-solution__steps-title {
    font-size: 24px;
  }

  .sales-solution__steps {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .sales-solution__step {
    min-height: 0;
    padding: 18px 18px 22px;
  }

  .sales-solution__icon {
    width: 118px;
    height: 118px;
  }
}

/* =========================================================
   若手営業育成の企業事例
   他セクションと干渉しないよう .sales-case 配下で完結
   ========================================================= */
.sales-case,
.sales-case * {
  box-sizing: border-box;
}

.sales-case {
  --sales-case-navy: #062454;
  --sales-case-border: #9db6ce;
  --sales-case-orange: #f5660d;
  width: 100%;
  padding: 38px 24px 54px;
  background: linear-gradient(135deg, #f7fcff 0%, #e8f6ff 55%, #f2faff 100%);
  color: var(--sales-case-navy);
  font-family: "Noto Sans JP", "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-feature-settings: "palt" 0;
}

.sales-case__inner {
  width: min(100%, 1200px);
  margin-inline: auto;
}

.sales-case__header {
  text-align: center;
}

.sales-case__label {
  margin: 0 0 14px;
  color: var(--sales-case-orange);
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .04em;
}

.sales-case__title {
  margin: 0;
  font-size: clamp(30px, 3.25vw, 42px);
  font-weight: 800;
  line-height: 1.45;
  letter-spacing: .02em;
}

.sales-case__intro {
  margin: 12px 0 0;
  font-size: clamp(15px, 1.45vw, 18px);
  font-weight: 600;
  line-height: 1.8;
  letter-spacing: .02em;
}
.sales-case__box {
  background:#fff;
  padding: 24px 34px;
  border-radius: 7px;
  margin-top:20px;
}
.sales-case__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
ul.sales-case-logo {
  display:flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 89%;
  margin: 0 auto;
}
ul.sales-case-logo li{
  width: 33%;
}
.sales-case__card {
  display: flex;
  min-width: 0;
  overflow: hidden;
  flex-direction: column;
  border: 1px solid var(--sales-case-border);
  border-radius: 7px;
  background: #fff;
}

.sales-case__image {
  display: block;
  width: 100%;
  aspect-ratio: 1.7 / 1;
  object-fit: cover;
  object-position: center;
  height: auto;
}

.sales-case__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
  padding: 14px 16px 16px;
}

.sales-case__company {
  margin: 0 0 8px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5;
}

.sales-case__body h3 {
  width: 100%;
  margin: 0;
  padding-bottom: 13px;
  border-bottom: 1px solid var(--sales-case-orange);
  font-size: clamp(19px, 1.85vw, 23px);
  font-weight: 800;
  line-height: 1.55;
}

@media (max-width: 940px) {
  .sales-case__grid {
    grid-template-columns: 1fr;
    max-width: 720px;
    margin-inline: auto;
  }

  .sales-case__card {
    display: grid;
    grid-template-columns: minmax(250px, 42%) minmax(0, 1fr);
  }

  .sales-case__image {
    height: 100%;
    min-height: 360px;
    aspect-ratio: auto;
  }
}

@media (max-width: 640px) {
  .sales-case {
    padding: 38px 18px 48px;
  }

  .sales-case__label {
    font-size: 15px;
  }

  .sales-case__title {
    font-size: 28px;
  }

  .sales-case__title br,
  .sales-case__intro br {
    display: none;
  }

  .sales-case__grid {
    margin-top: 24px;
  }

  .sales-case__card {
    display: flex;
  }

  .sales-case__image {
    min-height: 0;
    aspect-ratio: 16 / 10;
  }

  .sales-case__body h3 {
    font-size: 20px;
  }
}

/* =========================================================
   資料ダウンロードセクション
   他セクションと干渉しないよう .sales-download 配下で完結
   ========================================================= */
.sales-download,
.sales-download * {
  box-sizing: border-box;
}

.sales-download {
  --sales-download-navy: #062454;
  --sales-download-blue: #2b63b1;
  --sales-download-orange: #f76500;
  width: 100%;
  padding: 30px 24px 42px;
  background: linear-gradient(135deg, #062b62 0%, #031c48 100%);
  color: var(--sales-download-navy);
  font-family: "Noto Sans JP", "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-feature-settings: "palt" 0;
}

.sales-download__inner {
  width: min(100%, 1200px);
  margin-inline: auto;
}

.sales-download__header {
  color: #fff;
  text-align: center;
}

.sales-download__label {
  margin: 0 0 12px;
  color: var(--sales-download-orange);
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .14em;
}

.sales-download__title {
  margin: 0;
  font-size: clamp(30px, 3.25vw, 42px);
  font-weight: 800;
  line-height: 1.45;
  letter-spacing: .025em;
}

.sales-download__panel {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(380px, .95fr);
  gap: 26px;
  margin-top: 22px;
  padding: 24px 34px;
  border-radius: 7px;
  background: linear-gradient(135deg, #fff 0%, #edf7ff 100%);
}

.sales-download__information {
  display: flex;
  min-width: 0;
  flex-direction: column;
}

.sales-download__document {
  display: grid;
  grid-template-columns: 270px minmax(0, 1fr);
  align-items: center;
  gap: 30px;
}

.sales-download__cover {
  display: block;
  width: 100%;
  height: auto;
  max-height: 300px;
  object-fit: contain;
  filter: drop-shadow(7px 9px 7px rgb(0 25 60 / 18%));
}

.sales-download__document h3 {
  margin: 0;
  font-size: clamp(24px, 2.55vw, 33px);
  font-weight: 800;
  line-height: 1.55;
}

.sales-download__lists {
  display: grid;
  grid-template-columns: minmax(0, .9fr) 1px minmax(0, 1.1fr);
  gap: 22px;
  margin-top: 24px;
}

.sales-download__lists::before {
  content: "";
  grid-column: 2;
  grid-row: 1;
  width: 1px;
  height: 100%;
  background: #cdddeb;
}

.sales-download__list-block--contents {
  grid-column: 1;
  grid-row: 1;
}

.sales-download__list-block--recommended {
  grid-column: 3;
  grid-row: 1;
}

.sales-download__list-block h3 {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 15px;
  font-size: 17px;
  font-weight: 800;
  line-height: 1.4;
}

.sales-download__list-block h3 img {
  width: 42px;
  height: 42px;
  object-fit: contain;
}

.sales-download__list-block ul {
  display: grid;
  gap: 13px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.sales-download__list-block li {
  position: relative;
  padding-left: 26px;
  color: #111;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.65;
}

.sales-download__list-block li::before {
  content: "";
  position: absolute;
  top: 5px;
  left: 3px;
  width: 12px;
  height: 7px;
  border-bottom: 3px solid currentColor;
  border-left: 3px solid currentColor;
  transform: rotate(-45deg);
}

.sales-download__list-block--contents li::before {
  color: var(--sales-download-orange);
}

.sales-download__list-block--recommended li::before {
  color: var(--sales-download-blue);
}

.sales-download__form {
  align-self: stretch;
  padding: 22px 24px 18px;
  border: 1px solid #849db7;
  border-radius: 5px;
  background: rgb(255 255 255 / 88%);
}

.sales-download__form-header {
  margin-bottom: 14px;
  text-align: center;
}

.sales-download__form-header h3 {
  margin: 0;
  font-size: 23px;
  font-weight: 800;
  line-height: 1.4;
}

.sales-download__form-header p {
  margin: 5px 0 0;
  color: #333;
  font-size: 13px;
}

.sales-download__field + .sales-download__field {
  margin-top: 10px;
}

.sales-download__field label {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 5px;
  color: #111;
  font-size: 14px;
  font-weight: 700;
}

.sales-download__required,
.sales-download__optional {
  padding: 2px 5px;
  border-radius: 2px;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.2;
}

.sales-download__required {
  background: var(--sales-download-orange);
}

.sales-download__optional {
  background: #8b8b8b;
}

.sales-download__field input {
  display: block;
  width: 100%;
  height: 38px;
  padding: 7px 10px;
  border: 1px solid #aaa;
  border-radius: 2px;
  background: #fff;
  color: #111;
  font: inherit;
}

.sales-download__field input:focus {
  border-color: var(--sales-download-blue);
  outline: 2px solid rgb(43 99 177 / 22%);
  outline-offset: 1px;
}

.sales-download__consent {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 14px 0;
  color: #333;
  font-size: 12px;
  line-height: 1.4;
}

.sales-download__consent input {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: var(--sales-download-orange);
}

.sales-download__submit {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 48px;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 62px;
  padding: 8px 10px 8px 20px;
  border: 0;
  border-radius: 3px;
  background: var(--sales-download-orange);
  color: #fff;
  cursor: pointer;
  font: inherit;
  font-size: 17px;
  font-weight: 700;
  transition: filter .2s ease, transform .2s ease;
}

.sales-download__submit:hover {
  filter: brightness(.94);
  transform: translateY(-1px);
}

.sales-download__submit:focus-visible {
  outline: 3px solid #79b9ed;
  outline-offset: 3px;
}

.sales-download__submit-icon {
  position: relative;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #fff;
}

.sales-download__submit-icon::before,
.sales-download__submit-icon::after {
  content: "";
  position: absolute;
  top: 50%;
}

.sales-download__submit-icon::before {
  left: 13px;
  width: 22px;
  height: 3px;
  border-radius: 999px;
  background: var(--sales-download-orange);
  transform: translateY(-50%);
}

.sales-download__submit-icon::after {
  right: 12px;
  width: 12px;
  height: 12px;
  border-top: 3px solid var(--sales-download-orange);
  border-right: 3px solid var(--sales-download-orange);
  transform: translateY(-50%) rotate(45deg);
}

.sales-download__form-note {
  margin: 12px 0 0;
  color: #555;
  font-size: 11px;
  line-height: 1.5;
  text-align: center;
}

@media (max-width: 1020px) {
  .sales-download__panel {
    grid-template-columns: 1fr;
  }

  .sales-download__form {
    width: min(100%, 620px);
    margin-inline: auto;
  }
}

@media (max-width: 720px) {
  .sales-download {
    padding: 34px 18px 42px;
  }

  .sales-download__title br {
    display: none;
  }

  .sales-download__panel {
    padding: 24px 18px;
  }

  .sales-download__document {
    grid-template-columns: 1fr;
    gap: 18px;
    text-align: center;
  }

  .sales-download__cover {
    width: 160px;
    margin-inline: auto;
  }

  .sales-download__lists {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .sales-download__lists::before {
    display: none;
  }

  .sales-download__list-block--contents,
  .sales-download__list-block--recommended {
    grid-column: 1;
    grid-row: auto;
  }
}

@media (max-width: 480px) {
  .sales-download__label {
    font-size: 14px;
  }

  .sales-download__title {
    font-size: 27px;
  }

  .sales-download__document h3 {
    font-size: 23px;
  }

  .sales-download__form {
    padding: 20px 16px 16px;
  }

  .sales-download__form-header h3 {
    font-size: 21px;
  }

  .sales-download__submit {
    font-size: 15px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .sales-download__submit {
    transition: none;
  }
}

/* =========================================================
   フッター上部セクション
   ========================================================= */


.about {
  background: #e8ecfc;
  padding:60px 0;
}
.about p {
  font-size:18px;
  line-height:28px;
}
.about-card {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 36px;
  align-items: center;
  padding: 38px;
  border-radius: 8px;
  background: #fff;
  margin-bottom: 60px;
}
.about-card p { 
  font-weight: 500;
  font-size: 16px;
  text-align: left;
  margin-bottom:20px;
  line-height: 24px;
}
.about-card img {
  width:100%;
} 
.about-card a {
  text-decoration:underline;
} 
.about-card .client_logo {
  display:grid;
  grid-auto-flow: column;
  grid-template-columns: 1fr 1fr 1fr;
}
@media(max-width:500px){
  .about-card {
      grid-template-columns: 1fr;
    }
  .about-card .client_logo {
    display: grid;
    grid-auto-flow: row;
    grid-template-columns: auto;
    gap: 30px;}
  .about-card .client_logo img {width:80%;margin: 0 auto;}
}

.series_list {
  display:flex;
  justify-content:space-between;margin-top:20px;
}
a.series_list_items {
  width:32%;
}
a.series_list_items:hover {
  opacity:0.7;
}
.series_list_items img{
  width:100%;
}

@media(max-width:500px){
  .series_list {
    flex-direction:column;
  }
  a.series_list_items {
    width:100%;
  }
}

h3.section-title {
  font-size: 32px;
  font-weight: 800;
  text-align: center;
    margin-bottom: 20px;
}
@media(max-width:500px){
  h3.section-title {font-size:24px;}
  .series_list {
    flex-direction:column;
  }
}

.narrow {
  width: min(900px, calc(100% - 40px));
  margin: 0 auto;
}
@media(max-width:500px){
  .container,.narrow {
    width: 90%;
    margin: 0 auto;
  }
}

.floating-cta{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:99;
  background:#ff6a00;
  color:#fff;
  text-decoration:none;
  font-weight:700;
  padding:16px 24px;
  border-radius:999px;
  box-shadow:0 8px 20px rgba(0,0,0,.22)
}

@media(max-width:500px){
  .floating-cta{
    left:16px;right:16px;text-align:center}
}

.footer{background: #1d4381;padding: 20px 0;}
.footer-inner{width: 96%;max-width: 1280px;margin: 0 auto;display: flex;justify-content: space-between;}
.footer-inner ul {display: flex;}
.footer-inner ul li{color: #ffffff;font-size: 14px;margin-right: 16px;}
.footer-inner ul li a:visited{color: #ffffff;}

@media(max-width:500px){
  .footer{margin-bottom:100px;}
}