#strategyHeader {
  width: 100% !important;
  height: calc(var(--vh) * 100) !important;
  max-height: 950px;
  background: url(/newgraduate/img/strategy/kv.jpg) 50% 0 no-repeat;
  background-size: cover;
  padding: 150px 0 80px;
  color: #fff;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
}
#strategyHeader::before {
  content: "";
  width: 841px;
  aspect-ratio: 841/478;
  background: url(/newgraduate/img/common/decoration.svg) 0 0 no-repeat;
  background-size: cover;
  position: absolute;
  top: -120px;
  right: -325px;
  z-index: 1;
  opacity: 0.5;
}
#strategyHeader::after {
  content: "";
  width: 841px;
  aspect-ratio: 841/478;
  background: url(/newgraduate/img/common/decoration.svg) 0 0 no-repeat;
  background-size: cover;
  position: absolute;
  bottom: -140px;
  left: -445px;
  z-index: 1;
  opacity: 0.5;
}
@media screen and (min-width: 1600px) {
  #strategyHeader::before {
    width: 52.5625%;
    right: -20.3125%;
  }
  #strategyHeader::after {
    width: 52.5625%;
    left: -27.8125%;
  }
}
@media screen and (max-width: 1376px) {
  #strategyHeader::before {
    width: 61.1191860465%;
    right: -23.6191860465%;
  }
  #strategyHeader::after {
    width: 61.1191860465%;
    left: -32.3401162791%;
  }
}
#strategyHeader div.inner {
  max-width: 1220px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}
#strategyHeader div.inner > div {
  width: 100%;
  max-width: 880px;
  margin: 0 20px 0 auto;
}
#strategyHeader h2 {
  display: flex;
  flex-direction: column;
  font-size: min(4.4vw, 4.4rem);
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.1em;
}
#strategyHeader h2 span {
  line-height: 13px;
  margin-bottom: 20px;
}
#strategyHeader h2 span img {
  width: auto;
}
#strategyHeader h3 {
  font-size: min(3.6vw, 3.6rem);
  line-height: 1.5;
}
#strategyHeader h3 + p {
  max-width: 850px;
  font-size: min(1.5vw, 1.5rem);
  margin-top: 15px;
}

#StrategySec div.inner {
  max-width: 1220px;
}
#StrategySec div.starategyBox {
  display: flex;
  justify-content: space-between;
  margin-top: 90px;
}
#StrategySec div.starategyBox div.talkBox {
  width: 50%;
}
#StrategySec div.starategyBox div.talkBox h3 {
  display: inline;
  font-size: min(3.2vw, 3.2rem);
  font-weight: 700;
  background-size: 100% 2px;
  background-position: bottom;
  background-repeat: no-repeat;
  padding-bottom: 5px;
}
#StrategySec div.starategyBox div.talkBox dl {
  display: grid;
  grid-template-columns: 4em calc(100% - 4em);
  gap: 40px 0;
  margin-top: 30px;
  font-size: min(1.5vw, 1.5rem);
}
#StrategySec div.starategyBox div.talkBox dl dt {
  font-weight: 700;
  color: #0D85FF;
}
#StrategySec div.starategyBox div.talkBox dl dt:nth-of-type(2n) {
  color: #4DD8C9;
}
#StrategySec div.starategyBox div.figBox {
  width: 46.6%;
}
#StrategySec div.starategyBox div.figBox figure {
  width: max(100% + 20px, 100% + (var(--vw) * 100 - 1180px) / 2);
  margin-right: min(-20px, (1180px - var(--vw) * 100) / 2);
}
#StrategySec div.starategyBox div.figBox > div {
  background: #E2F1FF;
  padding: 20px;
  font-size: min(1.4vw, 1.4rem);
}
#StrategySec div.starategyBox div.figBox h4 {
  display: flex;
  flex-direction: column;
  font-size: min(1.8vw, 1.8rem);
  margin-bottom: 0.5em;
}
#StrategySec div.starategyBox div.figBox h4::after {
  content: "";
  width: 90px;
  height: 2px;
  background: #0D85FF;
}
#StrategySec div.starategyBox:nth-of-type(2) div.figBox figure {
  margin-right: auto;
  margin-left: min(-20px, (1180px - var(--vw) * 100) / 2);
}
#StrategySec div.starategyBox:nth-of-type(2) div.figBox > div {
  background: #EFFDFB;
}
#StrategySec div.starategyBox:nth-of-type(2) div.figBox h4::after {
  background: #74EBDE;
}
#StrategySec div.starategyBox:nth-of-type(2) div.talkBox h3 {
  font-size: min(2.4vw, 2.4rem);
}
#StrategySec div.starategyBox.single {
  display: block;
}
#StrategySec div.starategyBox.single > figure {
  width: max(100% + 20px, 100% + (var(--vw) * 100 - 1180px) / 2);
  margin-right: calc((1180px - var(--vw) * 100) / 2);
}
#StrategySec div.starategyBox.single div.talkBox {
  width: 100%;
  margin-top: 90px;
}
#StrategySec div.starategyBox.single div.talkBox h3 {
  font-size: min(2.4vw, 2.4rem);
}
#StrategySec .btmImg {
  margin-top: 110px;
}

@media screen and (max-width: 767px) {
  #strategyHeader {
    background: url(/newgraduate/img/strategy/kv_sp.jpg) 50% 0 no-repeat;
    background-size: cover;
    padding: 80px 0 20px;
    min-height: 500px;
  }
  #strategyHeader::before {
    width: 342px;
    top: -50px;
    right: -130px;
  }
  #strategyHeader::after {
    width: 342px;
    bottom: -60px;
    left: -155px;
  }
  #strategyHeader div.inner {
    max-width: 1220px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
  }
  #strategyHeader div.inner > div {
    margin: 0;
    letter-spacing: -0.01em;
  }
  #strategyHeader h2 {
    font-size: 2.4rem;
  }
  #strategyHeader h2 span {
    line-height: 13px;
    margin-bottom: 15px;
  }
  #strategyHeader h2 span img {
    width: 248px;
  }
  #strategyHeader h3 {
    font-size: 1.8rem;
    padding-bottom: 3px;
  }
  #strategyHeader h3 + p {
    font-size: 1.5rem;
    margin-top: 15px;
  }
  #StrategySec div.inner {
    padding: 0 20px;
  }
  #StrategySec h3 img {
    width: auto;
  }
  #StrategySec div.starategyBox {
    flex-direction: column;
    margin-top: 30px;
  }
  #StrategySec div.starategyBox div.talkBox {
    width: 100%;
  }
  #StrategySec div.starategyBox div.talkBox h3 {
    font-size: 1.8rem;
  }
  #StrategySec div.starategyBox div.talkBox dl {
    margin-top: 20px;
    font-size: 1.5rem;
  }
  #StrategySec div.starategyBox div.figBox {
    width: calc(100% + 50px);
    margin: 30px -25px 0;
  }
  #StrategySec div.starategyBox div.figBox figure {
    width: 100%;
    margin: 0;
  }
  #StrategySec div.starategyBox div.figBox > div {
    background: #E2F1FF;
    padding: 20px;
    font-size: 1.4rem;
  }
  #StrategySec div.starategyBox div.figBox h4 {
    font-size: 1.5rem;
  }
  #StrategySec div.starategyBox:nth-of-type(2) {
    margin-top: 0;
  }
  #StrategySec div.starategyBox:nth-of-type(2) div.figBox {
    margin-bottom: 30px;
  }
  #StrategySec div.starategyBox:nth-of-type(2) div.figBox figure {
    margin: 0;
  }
  #StrategySec div.starategyBox:nth-of-type(2) div.talkBox h3 {
    font-size: 1.8rem;
  }
  #StrategySec div.starategyBox.single {
    display: block;
  }
  #StrategySec div.starategyBox.single > figure {
    width: calc(100% + 50px);
    margin: 30px -25px 0;
  }
  #StrategySec div.starategyBox.single div.talkBox {
    width: 100%;
    margin-top: 30px;
  }
  #StrategySec div.starategyBox.single div.talkBox h3 {
    font-size: 1.8rem;
  }
  #StrategySec .btmImg {
    margin-top: 30px;
  }
}