@charset "UTF-8";
/* PC*/
/* TABLET*/
/* SP*/
body {
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
  font-weight: 500;
}

body:not(.document):not(.-contact):not(.-thanks) main {
  padding-bottom: 0;
}

.cv-simulation {
  padding-bottom: max(10.6666666667vw, 40px);
}
.cv-simulation .inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.cv-simulation .cv-simulation__button {
  display: block;
  width: 100%;
  cursor: pointer;
  filter: drop-shadow(0 max(1.0666666667vw, 4px) max(2.1333333333vw, 8px) rgba(0, 0, 0, 0.5));
  transform: translateZ(0);
}
@media screen and (min-width: 920px) {
  .cv-simulation {
    padding-bottom: min(5.2173913043vw, 48px);
  }
  .cv-simulation .cv-simulation__button {
    width: min(78.2608695652vw, 720px);
    filter: drop-shadow(0 min(0.4347826087vw, 4px) min(0.8695652174vw, 8px) rgba(0, 0, 0, 0.5));
  }
  .cv-simulation .cv-simulation__button:hover, .cv-simulation .cv-simulation__button:focus {
    opacity: 0.7;
  }
}

.cv-document {
  background: #DDEAFF;
}
.cv-document .inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-block: max(6.4vw, 24px);
}
.cv-document .cv-document__button {
  display: block;
  cursor: pointer;
  width: max(80vw, 300px);
  filter: drop-shadow(0 max(2.1333333333vw, 8px) max(4.2666666667vw, 16px) rgba(0, 0, 0, 0.25));
  transform: translateZ(0);
}

.fv {
  display: flex;
  align-items: center;
  position: relative;
  background: #002672;
  height: max(130.6666666667vw, 490px);
  padding-block: 0 !important;
}
@media screen and (min-width: 920px) {
  .fv {
    height: min(75.2173913043vw, 692px);
  }
  .fv .fv__thumbnail {
    width: auto;
    height: 100%;
    margin: 0 auto;
  }
}
.fv .inner {
  position: absolute;
  top: 0;
  left: 50%;
  width: max(87.2vw, 327px);
  height: 100%;
  transform: translateX(-50%);
}
@media screen and (min-width: 920px) {
  .fv .inner {
    width: min(96.5217391304vw, 888px);
  }
}
.fv .fv__tagline {
  position: absolute;
  top: max(9.6vw, 36px);
  left: 0;
  width: max(86.6666666667vw, 325px);
}
@media screen and (min-width: 920px) {
  .fv .fv__tagline {
    top: min(9.4565217391vw, 87px);
    width: min(50.4347826087vw, 464px);
  }
}
.fv .fv__eyecatch {
  position: absolute;
  top: max(4.2666666667vw, 16px);
  left: max(1.0666666667vw, 4px);
  color: #fff;
  font-size: max(3.2vw, 12px);
  font-weight: 700;
  line-height: 1.15;
}
@media screen and (min-width: 920px) {
  .fv .fv__eyecatch {
    top: min(31.5217391304vw, 290px);
    left: 0;
    background: #000;
    font-size: min(2.1739130435vw, 20px);
    padding: min(0.4347826087vw, 4px) min(0.8695652174vw, 8px);
    text-align: center;
  }
}
.fv .award {
  position: absolute;
  left: 0;
  right: 0;
  bottom: max(5.3333333333vw, 20px);
}
@media screen and (min-width: 920px) {
  .fv .award {
    right: auto;
    bottom: min(3.4782608696vw, 32px);
  }
}
.fv .award .award__list {
  display: flex;
  justify-content: center;
  gap: max(2.6666666667vw, 10px);
}
@media screen and (min-width: 920px) {
  .fv .award .award__list {
    gap: min(2.8260869565vw, 26px);
  }
}
.fv .award .award__list .award__item {
  width: max(27.7333333333vw, 104px);
  height: max(29.3333333333vw, 110px);
  filter: drop-shadow(0 min(0.2173913043vw, 2px) min(0.2173913043vw, 2px) rgba(0, 0, 0, 0.25));
  transform: translateZ(0);
}
@media screen and (min-width: 920px) {
  .fv .award .award__list .award__item {
    width: min(17.7173913043vw, 163px);
    height: min(18.8043478261vw, 173px);
    filter: drop-shadow(0 min(0.4347826087vw, 4px) min(0.4347826087vw, 4px) rgba(0, 0, 0, 0.25));
  }
}
.fv .award .award__text {
  font-size: max(2.6666666667vw, 10px);
  font-weight: 500;
  color: #000;
}
@media screen and (min-width: 920px) {
  .fv .award .award__text {
    color: #fff;
    font-size: min(1.0869565217vw, 10px);
  }
}
.fv .fv__cv {
  position: absolute;
  left: 0;
  right: 0;
}
.fv .fv__cv a {
  display: block;
}
@media screen and (min-width: 920px) {
  .fv .fv__cv {
    right: auto;
    top: min(39.2391304348vw, 361px);
    width: min(34.0217391304vw, 313px);
  }
}
.fv .fv__profile {
  position: absolute;
  top: max(50.6666666667vw, 190px);
  right: 0;
  width: max(24.2666666667vw, 91px);
}
@media screen and (min-width: 920px) {
  .fv .fv__profile {
    top: min(13.9130434783vw, 128px);
    right: 0;
    width: min(12.0652173913vw, 111px);
  }
}

.fv2 {
  display: flex;
  align-items: center;
  position: relative;
  background: #002672;
  height: max(130.6666666667vw, 490px);
  padding-block: 0 !important;
}
@media screen and (min-width: 920px) {
  .fv2 {
    height: min(75.2173913043vw, 692px);
  }
  .fv2 .fv2__thumbnail {
    width: auto;
    height: 100%;
    margin: 0 auto;
  }
}
.fv2 .inner {
  position: absolute;
  top: 0;
  left: 50%;
  width: max(87.2vw, 327px);
  height: 100%;
  transform: translateX(-50%);
}
@media screen and (min-width: 920px) {
  .fv2 .inner {
    width: min(96.5217391304vw, 888px);
  }
}
.fv2 .fv2__tagline {
  position: absolute;
  top: max(4.8vw, 18px);
  left: 0;
  right: 0;
  margin-inline: auto;
  width: max(73.8666666667vw, 277px);
}
@media screen and (min-width: 920px) {
  .fv2 .fv2__tagline {
    top: min(9.347826087vw, 86px);
    right: auto;
    width: min(43.152173913vw, 397px);
  }
}
.fv2 .fv2__eyecatch {
  position: absolute;
  top: max(37.3333333333vw, 140px);
  left: 0;
  width: max(10.4vw, 39px);
}
@media screen and (min-width: 920px) {
  .fv2 .fv2__eyecatch {
    top: min(26.7391304348vw, 246px);
    width: min(41.9565217391vw, 386px);
  }
}
.fv2 .award {
  position: absolute;
  left: 0;
  right: 0;
  bottom: max(5.3333333333vw, 20px);
}
@media screen and (min-width: 920px) {
  .fv2 .award {
    right: auto;
    bottom: min(3.4782608696vw, 32px);
  }
}
.fv2 .award .award__list {
  display: flex;
  justify-content: center;
  gap: max(2.6666666667vw, 10px);
}
@media screen and (min-width: 920px) {
  .fv2 .award .award__list {
    gap: min(2.8260869565vw, 26px);
  }
}
.fv2 .award .award__list .award__item {
  width: max(27.7333333333vw, 104px);
  height: max(29.3333333333vw, 110px);
  filter: drop-shadow(0 min(0.2173913043vw, 2px) min(0.2173913043vw, 2px) rgba(0, 0, 0, 0.25));
  transform: translateZ(0);
}
@media screen and (min-width: 920px) {
  .fv2 .award .award__list .award__item {
    width: min(17.7173913043vw, 163px);
    height: min(18.8043478261vw, 173px);
    filter: drop-shadow(0 min(0.4347826087vw, 4px) min(0.4347826087vw, 4px) rgba(0, 0, 0, 0.25));
  }
}
.fv2 .award .award__text {
  font-size: max(2.6666666667vw, 10px);
  font-weight: 500;
  color: #000;
}
@media screen and (min-width: 920px) {
  .fv2 .award .award__text {
    color: #fff;
    font-size: min(1.0869565217vw, 10px);
  }
}
.fv2 .fv2__cv {
  position: absolute;
  left: 0;
  right: 0;
}
.fv2 .fv2__cv a {
  display: block;
}
@media screen and (min-width: 920px) {
  .fv2 .fv2__cv {
    right: auto;
    top: min(40.1086956522vw, 369px);
    width: min(34.0217391304vw, 313px);
  }
}
.fv2 .fv2__profile {
  position: absolute;
  top: max(50.6666666667vw, 190px);
  right: 0;
  width: max(24.2666666667vw, 91px);
}
@media screen and (min-width: 920px) {
  .fv2 .fv2__profile {
    top: min(13.9130434783vw, 128px);
    right: 0;
    width: min(12.0652173913vw, 111px);
  }
}

.interview {
  background: #DDEAFF;
}
@media screen and (max-width: 919px) {
  .interview {
    padding-block: max(4.2666666667vw, 16px) max(10.6666666667vw, 40px) !important;
  }
}
.interview .inner {
  width: max(91.4666666667vw, 343px);
  padding-inline: 0;
}
@media screen and (min-width: 920px) {
  .interview .inner {
    width: min(69.5652173913vw, 640px);
    box-sizing: content-box;
  }
}
.interview .sec__title {
  width: 100%;
  color: #025CF7;
  background: #fff;
  font-size: max(4vw, 15px);
  margin-bottom: max(4.2666666667vw, 16px);
  padding-block: max(1.0666666667vw, 4px);
  line-height: 1.33;
}
@media screen and (min-width: 920px) {
  .interview .sec__title {
    font-size: min(2.0652173913vw, 19px);
    margin-bottom: min(1.3043478261vw, 12px);
    padding-block: min(0.652173913vw, 6px);
    line-height: 1;
  }
}
.interview .youtube__wrap {
  width: 100%;
  padding-top: 56.25%;
  position: relative;
  background: #73828B;
}
@media screen and (min-width: 920px) {
  .interview .youtube__wrap {
    width: min(69.5652173913vw, 640px);
  }
}
.interview .youtube__wrap iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
}
.interview .interview__text {
  margin: max(3.2vw, 12px) 0;
  font-weight: bold;
  letter-spacing: -0.015em;
}
@media screen and (min-width: 920px) {
  .interview .interview__text {
    margin: min(1.3043478261vw, 12px) 0;
    letter-spacing: 0;
  }
}
.interview .interview__company {
  margin-bottom: max(2.1333333333vw, 8px);
  font-weight: 500;
  font-size: max(3.4666666667vw, 13px);
  color: #73828B;
}
@media screen and (min-width: 920px) {
  .interview .interview__company {
    margin-bottom: min(0.8695652174vw, 8px);
    font-size: min(1.4130434783vw, 13px);
  }
}
.interview .interview__category {
  display: inline-flex;
  margin: 0 auto 0 0;
  padding: max(1.0666666667vw, 4px) max(2.1333333333vw, 8px);
  font-weight: 500;
  font-size: max(3.4666666667vw, 13px);
  color: #fff;
  line-height: 1;
  background: #025CF7;
  border-radius: max(0.5333333333vw, 2px);
}
@media screen and (min-width: 920px) {
  .interview .interview__category {
    padding: min(0.4347826087vw, 4px) min(0.8695652174vw, 8px);
    font-size: min(1.4130434783vw, 13px);
    border-radius: min(0.2173913043vw, 2px);
  }
}
.interview .interview__inner {
  width: 100%;
  margin-inline: auto;
  padding: 0 max(4.8vw, 18px);
}
@media screen and (min-width: 920px) {
  .interview .interview__inner {
    max-width: 1080px;
    padding: 0 min(1.25vw, 16px);
  }
}
.interview .interview__list {
  display: flex;
  flex-direction: column;
  gap: max(8.5333333333vw, 32px);
  flex: 1;
}
@media screen and (min-width: 920px) {
  .interview .interview__list {
    flex-direction: row;
    justify-content: center;
    gap: min(2.6086956522vw, 24px);
  }
}
.interview .interview__item {
  text-align: center;
}
@media screen and (min-width: 920px) {
  .interview .interview__item {
    flex-basis: calc(100% - min(2.6086956522vw, 24px) / 2);
  }
}
@media screen and (max-width: 919px) {
  .interview .interview__item .sec__title {
    margin-bottom: max(7.4666666667vw, 28px);
  }
}
@media screen and (min-width: 920px) {
  .interview .interview__item .sec__title {
    line-height: 1.4;
  }
}
.interview .interview__item .youtube__wrap {
  width: 100%;
}

@media screen and (max-width: 919px) {
  .worries {
    padding-block: max(10.6666666667vw, 40px) max(6.4vw, 24px) !important;
  }
}
.worries .worries__wrap {
  background: #025CF7;
  border-radius: max(4.2666666667vw, 16px);
  padding: max(8.5333333333vw, 32px) max(6.4vw, 24px);
}
@media screen and (min-width: 920px) {
  .worries .worries__wrap {
    border-radius: min(1.7391304348vw, 16px);
    padding: min(5.2173913043vw, 48px) min(4.347826087vw, 40px) min(3.4782608696vw, 32px);
  }
}
.worries .worries__title {
  color: #fff;
  font-size: max(6.1333333333vw, 23px);
  margin-bottom: max(5.3333333333vw, 20px);
  line-height: 1.2;
  text-align: center;
}
.worries .worries__title em {
  color: #FFE945;
}
@media screen and (min-width: 920px) {
  .worries .worries__title {
    font-size: min(3.9130434783vw, 36px);
    margin-bottom: min(3.4782608696vw, 32px);
  }
}
.worries .worries__body {
  position: relative;
}
.worries .worries__body .worries__thumbnail {
  position: absolute;
  z-index: 1;
}
@media screen and (max-width: 919px) {
  .worries .worries__body {
    height: max(97.6vw, 366px);
    margin-bottom: max(5.3333333333vw, 20px);
  }
  .worries .worries__body .worries__baloon {
    background: #fff;
    border-radius: max(10.6666666667vw, 40px);
    padding: max(9.0666666667vw, 34px) max(6.1333333333vw, 23px) max(8.2666666667vw, 31px) max(4.2666666667vw, 16px);
  }
  .worries .worries__body .worries__list {
    display: flex;
    flex-direction: column;
    gap: max(3.2vw, 12px);
  }
  .worries .worries__body .worries__list .worries__item {
    color: #000;
    font-size: max(4.2666666667vw, 16px);
    font-weight: 700;
    line-height: 1.2;
  }
  .worries .worries__body .worries__list .worries__item::before {
    content: "・";
  }
  .worries .worries__body .worries__thumbnail {
    bottom: 0;
    left: max(17.8666666667vw, 67px);
    width: max(41.8666666667vw, 157px);
    height: max(53.8666666667vw, 202px);
  }
}
@media screen and (min-width: 920px) {
  .worries .worries__body .worries__list {
    position: relative;
    width: min(86.5217391304vw, 796px);
    height: min(42.2826086957vw, 389px);
    margin-bottom: min(3.4782608696vw, 32px);
  }
  .worries .worries__body .worries__list .worries__item {
    position: absolute;
    z-index: 2;
  }
  .worries .worries__body .worries__list .worries__item.worry1 {
    width: min(30.2173913043vw, 278px);
    height: min(12.1739130435vw, 112px);
    top: 0;
    left: min(10.7608695652vw, 99px);
  }
  .worries .worries__body .worries__list .worries__item.worry2 {
    width: min(30.2173913043vw, 278px);
    height: min(12.0652173913vw, 111px);
    top: min(5.5434782609vw, 51px);
    right: min(2.6086956522vw, 24px);
  }
  .worries .worries__body .worries__list .worries__item.worry3 {
    width: min(31.3043478261vw, 288px);
    height: min(10.4347826087vw, 96px);
    top: min(13.8043478261vw, 127px);
    left: 0;
  }
  .worries .worries__body .worries__list .worries__item.worry4 {
    width: min(30.2173913043vw, 278px);
    height: min(11.5217391304vw, 106px);
    top: min(25.8695652174vw, 238px);
    right: 0;
  }
  .worries .worries__body .worries__list .worries__item.worry5 {
    width: min(30.2173913043vw, 278px);
    height: min(11.847826087vw, 109px);
    bottom: 0;
    left: min(4.2391304348vw, 39px);
  }
  .worries .worries__body .worries__thumbnail {
    top: min(11.3043478261vw, 104px);
    left: min(31.7391304348vw, 292px);
    width: min(23.8043478261vw, 219px);
    height: min(27.5vw, 253px);
  }
}
.worries .worries__cv .cta__button {
  filter: drop-shadow(0 max(2.1333333333vw, 8px) max(6.4vw, 24px) rgba(0, 0, 0, 0.33));
  transform: translateZ(0);
}
@media screen and (max-width: 919px) {
  .worries .worries__cv .cta__button {
    width: 100%;
  }
}
@media screen and (min-width: 920px) {
  .worries .worries__cv {
    width: min(33.5869565217vw, 309px);
    height: min(9.4565217391vw, 87px);
    margin: 0 auto;
  }
  .worries .worries__cv .cta__button {
    filter: drop-shadow(0 min(0.8695652174vw, 8px) min(2.6086956522vw, 24px) rgba(0, 0, 0, 0.33));
  }
}

.problems {
  background: #DDEAFF;
}
@media screen and (min-width: 920px) {
  .problems {
    padding-block: min(10.4347826087vw, 96px) !important;
  }
}
@media screen and (max-width: 919px) {
  .problems .sec__title {
    font-size: max(7.2vw, 27px);
    margin: 0 auto max(17.0666666667vw, 64px) 0;
    text-align: left;
  }
}
@media screen and (min-width: 920px) {
  .problems .sec__title {
    margin-bottom: min(6.9565217391vw, 64px);
  }
}
.problems .problems__list {
  display: flex;
  flex-direction: column;
  gap: max(12.8vw, 48px);
}
@media screen and (min-width: 920px) {
  .problems .problems__list {
    gap: min(10.4347826087vw, 96px);
  }
}
.problems .problems__item {
  display: flex;
  flex-direction: column-reverse;
  gap: max(10.6666666667vw, 40px);
}
@media screen and (min-width: 920px) {
  .problems .problems__item {
    flex-direction: row;
    justify-content: space-between;
    gap: min(4.347826087vw, 40px);
  }
}
@media screen and (min-width: 920px) {
  .problems .problems__list li:nth-of-type(odd) .problems__item {
    flex-direction: row-reverse;
  }
}
.problems .problems__body {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 920px) {
  .problems .problems__body {
    gap: min(2.6086956522vw, 24px);
  }
}
.problems .problems__title {
  display: flex;
  align-items: center;
  font-size: max(10.6666666667vw, 40px);
  font-weight: 900;
  margin-bottom: max(4.2666666667vw, 16px);
  line-height: 1.15;
}
.problems .problems__title span {
  color: #025CF7;
  font-size: 1.2em;
}
@media screen and (min-width: 920px) {
  .problems .problems__title {
    gap: min(1.7391304348vw, 16px);
    font-size: min(4.347826087vw, 40px);
    margin-bottom: 0;
  }
}
.problems .problems__caption {
  font-size: max(5.8666666667vw, 22px);
  font-weight: 900;
  margin-bottom: max(4.2666666667vw, 16px);
  line-height: 1.15;
}
@media screen and (min-width: 920px) {
  .problems .problems__caption {
    font-size: min(3.2608695652vw, 30px);
    margin-bottom: 0;
  }
}
.problems .problems__attention {
  position: relative;
  color: #fff;
  background: #025CF7;
  font-size: max(5.3333333333vw, 20px);
  font-weight: 700;
  margin-bottom: max(3.2vw, 12px);
  text-align: center;
  border-radius: max(4.2666666667vw, 16px);
  line-height: max(16vw, 60px);
}
.problems .problems__attention::after {
  position: absolute;
  display: block;
  aspect-ratio: 24/16;
  content: "";
  clip-path: polygon(50% 100%, 100% 0, 0 0);
  transform: rotate(-90deg);
  background: #025CF7;
  width: max(6.4vw, 24px);
  right: max(22.1333333333vw, 83px);
  bottom: calc(-1 * max(1.6vw, 6px));
}
.problems .problems__attention em {
  color: #FFE945;
}
@media screen and (min-width: 920px) {
  .problems .problems__attention {
    width: min(43.4782608696vw, 400px);
    font-size: min(2.6086956522vw, 24px);
    font-weight: 900;
    margin-bottom: 0;
    border-radius: min(1.7391304348vw, 16px);
    line-height: min(6.9565217391vw, 64px);
  }
  .problems .problems__attention::after {
    width: min(2.6086956522vw, 24px);
    right: min(13.6956521739vw, 126px);
    bottom: calc(-1 * min(0.8695652174vw, 8px));
  }
}
.problems .problems__text {
  line-height: 1.45;
}
.problems .problems__text p + p {
  margin-top: 1em;
}
@media screen and (max-width: 919px) {
  .problems .problems__text {
    padding-inline: max(2.1333333333vw, 8px);
  }
}
.problems .problems__thumbnail {
  filter: drop-shadow(0 max(2.1333333333vw, 8px) max(4.2666666667vw, 16px) rgba(45, 75, 136, 0.4));
  transform: translateZ(0);
}
@media screen and (min-width: 920px) {
  .problems .problems__thumbnail {
    filter: drop-shadow(0 min(0.8695652174vw, 8px) min(1.7391304348vw, 16px) rgba(45, 75, 136, 0.4));
  }
}
@media screen and (min-width: 920px) {
  .problems .problems__thumbnail {
    flex-shrink: 0;
    width: min(43.4782608696vw, 400px);
  }
}
.problems .problems__result {
  position: relative;
}
.problems .problems__result::before {
  content: "";
  display: block;
  width: auto;
  height: max(17.3333333333vw, 65px);
  aspect-ratio: 225/83;
  margin-block: max(8.5333333333vw, 32px);
  margin-inline: auto;
  background: center/contain no-repeat url("../img/problems_arrow.svg");
}
@media screen and (min-width: 920px) {
  .problems .problems__result::before {
    height: min(8.9130434783vw, 82px);
    margin-block: min(3.4782608696vw, 32px);
  }
}
.problems .problems__result .result__item {
  display: flex;
  flex-direction: column;
  background: #fff;
  gap: max(4.2666666667vw, 16px);
  padding: max(8.5333333333vw, 32px) max(6.4vw, 24px);
  border-radius: max(4.2666666667vw, 16px);
  box-shadow: 0 max(2.1333333333vw, 8px) max(4.2666666667vw, 16px) rgba(45, 75, 136, 0.4);
}
@media screen and (min-width: 920px) {
  .problems .problems__result .result__item {
    box-shadow: 0 min(0.8695652174vw, 8px) min(1.7391304348vw, 16px) rgba(45, 75, 136, 0.4);
  }
}
@media screen and (min-width: 920px) {
  .problems .problems__result .result__item {
    flex-direction: row;
    justify-content: space-between;
    gap: min(2.6086956522vw, 24px);
    padding: min(4.347826087vw, 40px);
    border-radius: min(1.7391304348vw, 16px);
  }
}
.problems .problems__result .result__caption {
  color: #025CF7;
  font-size: max(4.8vw, 18px);
  font-weight: 900;
  line-height: 1;
}
@media screen and (min-width: 920px) {
  .problems .problems__result .result__caption {
    font-size: min(2.1739130435vw, 20px);
  }
}
.problems .problems__result .result__title {
  color: #000;
  font-size: max(10.6666666667vw, 40px);
  font-weight: 900;
  line-height: 1.4;
  margin-block: max(1.0666666667vw, 4px) max(6.4vw, 24px);
}
@media screen and (min-width: 920px) {
  .problems .problems__result .result__title {
    font-size: min(3.2608695652vw, 30px);
    margin-block: min(0.8695652174vw, 8px) min(2.6086956522vw, 24px);
  }
}
.problems .problems__result .result__text p + p {
  margin-top: 1em;
}
@media screen and (min-width: 920px) {
  .problems .problems__result .result__thumbnail {
    width: min(39.347826087vw, 362px);
    flex-shrink: 0;
  }
}

.about .about__column {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: max(8.5333333333vw, 32px);
}
@media screen and (min-width: 920px) {
  .about .about__column {
    flex-direction: row;
    justify-content: space-between;
    gap: 0;
  }
}
.about .sec__title {
  margin: 0;
  letter-spacing: -0.04em;
  text-align: left;
}
.about .sec__title span {
  display: block;
  font-size: max(4.2666666667vw, 16px);
  font-weight: 700;
}
@media screen and (min-width: 920px) {
  .about .sec__title span {
    font-size: min(2.1739130435vw, 20px);
  }
}
.about .about__body {
  display: flex;
  flex-direction: column;
  gap: max(6.4vw, 24px);
}
.about .about__body .about__text {
  font-size: max(4vw, 15px);
}
.about .about__body .about__text p + p {
  margin-top: 1em;
}
.about .about__body .about__text em {
  font-weight: inherit;
  text-decoration: underline;
}
@media screen and (min-width: 920px) {
  .about .about__body {
    gap: min(4.347826087vw, 40px);
  }
  .about .about__body .about__text {
    font-size: min(1.7391304348vw, 16px);
    font-weight: 700;
  }
}
.about .about__chart {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 920px) {
  .about .about__chart {
    width: min(46.9565217391vw, 432px);
  }
}
.about .about__list {
  display: flex;
  flex-direction: column;
  gap: max(4.2666666667vw, 16px);
  margin-block: max(17.0666666667vw, 64px) max(8.5333333333vw, 32px);
}
.about .about__list .about__item {
  filter: drop-shadow(0 max(2.1333333333vw, 8px) max(4.2666666667vw, 16px) rgba(45, 75, 136, 0.4));
  transform: translateZ(0);
}
@media screen and (min-width: 920px) {
  .about .about__list .about__item {
    filter: drop-shadow(0 min(0.8695652174vw, 8px) min(1.7391304348vw, 16px) rgba(45, 75, 136, 0.4));
  }
}
@media screen and (max-width: 919px) {
  .about .about__list {
    width: 100%;
    aspect-ratio: 327/120;
  }
}
@media screen and (min-width: 920px) {
  .about .about__list {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 0;
    margin-block: min(8.6956521739vw, 80px) min(4.347826087vw, 40px);
  }
  .about .about__list .about__item.about-achievements {
    width: min(50.652173913vw, 466px);
  }
  .about .about__list .about__item.about-data {
    width: min(41.5217391304vw, 382px);
  }
}

@media screen and (max-width: 919px) {
  .feature {
    padding-top: 0 !important;
  }
}
.feature .feature__list {
  display: flex;
  flex-direction: column;
  gap: max(6.4vw, 24px);
}
@media screen and (min-width: 920px) {
  .feature .feature__list {
    flex-direction: row;
    width: 100%;
    margin: 0 auto;
    gap: min(0.8695652174vw, 8px);
  }
  .feature .feature__list > li {
    flex-basis: calc((100% - min(0.8695652174vw, 8px) * 3) / 4);
  }
}
.feature .feature__item {
  display: flex;
  flex-direction: column-reverse;
  background: #fff;
  overflow: hidden;
  border-radius: max(4.2666666667vw, 16px);
  box-shadow: 0 max(2.1333333333vw, 8px) max(4.2666666667vw, 16px) rgba(45, 75, 136, 0.4);
}
@media screen and (min-width: 920px) {
  .feature .feature__item {
    width: 100%;
    margin: 0 auto;
    border-radius: min(1.7391304348vw, 16px);
    box-shadow: 0 min(0.8695652174vw, 8px) min(1.7391304348vw, 16px) rgba(45, 75, 136, 0.4);
  }
}
.feature .feature__body {
  padding: max(5.3333333333vw, 20px) max(6.4vw, 24px) max(6.4vw, 24px);
}
@media screen and (min-width: 920px) {
  .feature .feature__body {
    padding: min(2.6086956522vw, 24px) min(1.7391304348vw, 16px);
  }
}
.feature .feature__title {
  font-size: max(7.4666666667vw, 28px);
  font-weight: 900;
  text-align: center;
}
@media screen and (min-width: 920px) {
  .feature .feature__title {
    font-size: min(3.0434782609vw, 28px);
  }
}
.feature .feature__caption {
  color: #000;
  background: #FFE945;
  font-size: max(4.2666666667vw, 16px);
  font-weight: 700;
  margin-block: max(1.0666666667vw, 4px) max(6.4vw, 24px);
  text-align: center;
}
@media screen and (min-width: 920px) {
  .feature .feature__caption {
    font-size: min(1.4130434783vw, 13px);
    font-weight: 900;
    margin-block: min(0.8695652174vw, 8px) min(2.1739130435vw, 20px);
  }
}
.feature .feature__text {
  font-weight: 400;
  line-height: 1.4;
}

@media screen and (min-width: 920px) {
  .comparison .inner {
    align-items: center;
    flex-direction: column;
  }
}
.comparison .comparison__thumbnail {
  margin-bottom: max(8.5333333333vw, 32px);
}
@media screen and (min-width: 920px) {
  .comparison .comparison__thumbnail {
    width: 100%;
    margin: 0 min(4.347826087vw, 40px) 0 0;
  }
}

.client {
  color: #fff;
  background: #025CF7;
  text-align: center;
  padding-block: max(3.7333333333vw, 14px) max(6.4vw, 24px) !important;
}
@media screen and (min-width: 920px) {
  .client {
    padding-block: min(1.5217391304vw, 14px) min(2.6086956522vw, 24px) !important;
  }
}
.client .client__title {
  font-size: max(5.3333333333vw, 20px);
  margin-bottom: max(1.0666666667vw, 4px);
  line-height: 1.1;
  letter-spacing: 0.03em;
}
.client .client__title em {
  font-size: 1.6em;
}
@media screen and (min-width: 920px) {
  .client .client__title {
    font-size: min(2.1739130435vw, 20px);
    margin-bottom: min(0.4347826087vw, 4px);
  }
}
.client .client__catch {
  font-size: max(4.2666666667vw, 16px);
  line-height: 1.5;
}
@media screen and (min-width: 920px) {
  .client .client__catch {
    font-size: min(1.7391304348vw, 16px);
  }
}
.client .client__list {
  display: flex;
  flex-direction: column;
  gap: max(2.1333333333vw, 8px);
  margin-top: max(3.7333333333vw, 14px);
}
@media screen and (min-width: 920px) {
  .client .client__list {
    gap: min(0.8695652174vw, 8px);
    margin-top: min(1.5217391304vw, 14px);
  }
}
.client .client__list .client__item {
  width: 100%;
  height: max(22.4vw, 84px);
}
@media screen and (min-width: 920px) {
  .client .client__list .client__item {
    height: min(14.1304347826vw, 130px);
  }
}
.client .client__list .client__item span {
  display: block;
  width: 100%;
  height: 100%;
  background-size: auto 100%;
  background-repeat: repeat-x;
}
.client .client__list .client__item:nth-of-type(1) span {
  background-image: url("../img/client_1-sp.png");
  animation: scroll-left-1-sp 60s infinite linear;
}
@media screen and (min-width: 920px) {
  .client .client__list .client__item:nth-of-type(1) span {
    background-image: url("../img/client_1-pc.png");
    animation: scroll-left-1-pc 60s infinite linear;
  }
}
.client .client__list .client__item:nth-of-type(2) span {
  background-image: url("../img/client_2-sp.png");
  animation: scroll-right-sp 60s infinite linear;
}
@media screen and (min-width: 920px) {
  .client .client__list .client__item:nth-of-type(2) span {
    background-image: url("../img/client_2-pc.png");
    animation: scroll-right-pc 60s infinite linear;
  }
}
@media screen and (min-width: 920px) {
  .client .client__list .client__item:nth-of-type(3) {
    display: none;
  }
}
.client .client__list .client__item:nth-of-type(3) span {
  background-image: url("../img/client_3-sp.png");
  animation: scroll-left-2 60s infinite linear;
}

@keyframes scroll-left-1-sp {
  from {
    background-position-x: 0;
  }
  to {
    background-position-x: max(-209.0666666667vw, -784px);
  }
}
@keyframes scroll-left-1-pc {
  from {
    background-position-x: 0;
  }
  to {
    background-position-x: max(-492.8vw, -1848px);
  }
}
@keyframes scroll-left-2 {
  from {
    background-position-x: 0;
  }
  to {
    background-position-x: max(-238.9333333333vw, -896px);
  }
}
@keyframes scroll-right-pc {
  from {
    background-position-x: max(-448vw, -1680px);
  }
  to {
    background-position-x: 0;
  }
}
@keyframes scroll-right-sp {
  from {
    background-position-x: max(-209.0666666667vw, -784px);
  }
  to {
    background-position-x: 0;
  }
}
.case {
  background: #DDEAFF;
}
.case .inner {
  display: block;
}
@media screen and (min-width: 920px) {
  .case .inner {
    display: flex;
  }
}
.case .case__list {
  display: block;
  margin: 0 auto;
}
@media screen and (min-width: 920px) {
  .case .case__list {
    display: flex;
    flex-direction: column;
    width: 100%;
    justify-content: center;
    flex-direction: row;
    flex-wrap: wrap;
    gap: min(2.6086956522vw, 24px);
  }
  .case .case__list > li {
    width: min(30.4347826087vw, 280px);
  }
}
.case .case__list .case__item {
  display: block;
  width: 100%;
  margin-bottom: max(3.2vw, 12px);
  background: #fff;
  border-radius: max(4vw, 15px);
  overflow: hidden;
  box-shadow: 0 max(2.1333333333vw, 8px) max(4.2666666667vw, 16px) rgba(45, 75, 136, 0.4);
}
@media screen and (min-width: 920px) {
  .case .case__list .case__item {
    box-shadow: 0 min(0.8695652174vw, 8px) min(1.7391304348vw, 16px) rgba(45, 75, 136, 0.4);
  }
}
@media screen and (min-width: 920px) {
  .case .case__list .case__item {
    margin-bottom: 0;
    border-radius: min(1.7391304348vw, 16px);
  }
}
.case .case__list .case__item .case__details {
  padding: max(5.3333333333vw, 20px) max(3.2vw, 12px);
}
@media screen and (min-width: 920px) {
  .case .case__list .case__item .case__details {
    padding: min(1.7391304348vw, 16px);
  }
}
.case .case__list .case__item .case__details .case__text {
  margin-bottom: max(4.2666666667vw, 16px);
  color: #000;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (min-width: 920px) {
  .case .case__list .case__item .case__details .case__text {
    font-size: min(1.5217391304vw, 14px);
    margin-bottom: min(2.7173913043vw, 25px);
    letter-spacing: 0;
  }
}
.case .case__list .case__item .case__details .case__company {
  margin-bottom: max(4.2666666667vw, 16px);
  font-weight: 700;
  font-size: max(3.4666666667vw, 13px);
  color: #536F9F;
}
@media screen and (min-width: 920px) {
  .case .case__list .case__item .case__details .case__company {
    margin-bottom: min(2.7173913043vw, 25px);
    font-size: min(1.5217391304vw, 14px);
  }
}
.case .case__list .case__item .case__details .case__meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.case .case__list .case__item .case__details .case__category {
  display: inline-flex;
  margin: 0 auto 0 0;
  padding: max(1.0666666667vw, 4px) max(2.1333333333vw, 8px);
  font-weight: 700;
  font-size: max(3.4666666667vw, 13px);
  color: #fff;
  line-height: 1;
  background: #025CF7;
  border-radius: max(0.5333333333vw, 2px);
}
@media screen and (min-width: 920px) {
  .case .case__list .case__item .case__details .case__category {
    padding: min(0.4347826087vw, 4px) min(0.8695652174vw, 8px);
    font-size: min(1.4130434783vw, 13px);
    border-radius: min(0.2173913043vw, 2px);
  }
}
.case .case__slide .slick-slide {
  width: 80vw;
  height: auto;
  position: relative;
  overflow: hidden;
  margin: 0 10vw;
}
.case .case__slide .slick-slide img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.case .case__slide .slick-arrow {
  cursor: pointer;
  border: none;
  outline: none;
  font-size: 0;
  position: absolute;
  top: 180px;
  z-index: 1;
  width: 48px;
  height: 48px;
  background: transparent;
}
.case .case__slide .slick-arrow::before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border: 1px solid #09000d;
  border-width: 3px 3px 0 0;
  position: absolute;
  top: 12px;
  transform: rotate(45deg);
}
.case .case__slide .slick-next {
  right: -24px;
}
.case .case__slide .slick-next::before {
  left: 12px;
}
.case .case__slide .slick-prev {
  left: -24px;
}
.case .case__slide .slick-prev::before {
  border-width: 0 0 3px 3px;
  right: 12px;
}
@media screen and (min-width: 920px) {
  .case .case__cv {
    margin-top: min(5.2173913043vw, 48px);
  }
}
.case .case__cv .cta__button {
  position: relative;
  color: #fff;
  background: #025CF7;
  margin-inline: auto;
  z-index: 0;
}
.case .case__cv .cta__button::after {
  display: block;
  content: "";
  aspect-ratio: 1/1;
  background: center/contain no-repeat url("../img/icon_link.svg");
  position: absolute;
  top: 50%;
  right: max(4.2666666667vw, 16px);
  width: max(7.4666666667vw, 28px);
  transform: translateY(-50%);
  z-index: 2;
  filter: invert(89%) sepia(86%) saturate(0%) hue-rotate(257deg) brightness(102%) contrast(101%);
}
@media screen and (min-width: 920px) {
  .case .case__cv .cta__button::after {
    right: min(1.7391304348vw, 16px);
    width: min(3.0434782609vw, 28px);
  }
}
.case .case__body {
  margin-bottom: max(6.4vw, 24px);
  color: #000;
  font-size: max(3.7333333333vw, 14px);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 10;
  line-clamp: 10;
  overflow: hidden;
  text-overflow: ellipsis;
  max-height: 14em; /* 10行 * 1.4 */
  line-height: 1.4;
  transition: max-height 2s ease;
}
.case .case__body div + div {
  margin-top: 1.4em;
}
@media screen and (min-width: 920px) {
  .case .case__body {
    font-size: min(1.5217391304vw, 14px);
    margin-bottom: min(2.6086956522vw, 24px);
  }
}
@supports (-webkit-touch-callout: none) {
  .case {
    /* iOS Safariでのズレ解消 */
  }
  .case .case__body {
    max-height: 13.6em;
  }
}
.case .case__body.expanded {
  -webkit-line-clamp: unset;
  line-clamp: 10;
  max-height: 9999px;
  display: block;
}
.case .case__before .case__before__title::before {
  content: "💦";
}
.case .case__effect .case__effect__title::before {
  content: "🔆";
}
.case .case__effect .case__effect__list > li::before {
  content: "✅";
}
.case .case__effect .case__effect__list > li > span {
  font-weight: 700;
}
.case .case__effect .case__effect__list > li li {
  position: relative;
  padding-left: 1em;
}
.case .case__effect .case__effect__list > li li::before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}
.case .case__voice .case__voice__title::before {
  content: "🗣️";
}
.case .case__voice .case__voice__list li + li {
  margin-top: 1.4em;
}
.case .case__toggle {
  display: block;
  width: fit-content;
  cursor: pointer;
  color: #536F9F;
  background: none;
  font-size: max(4.2666666667vw, 16px);
  font-weight: 700;
  margin-inline: auto;
  margin-bottom: max(6.4vw, 24px);
  transition: all 0.3s ease;
}
.case .case__toggle::after {
  display: inline-block;
  content: "";
  width: max(4.2666666667vw, 16px);
  height: max(2.1333333333vw, 8px);
  margin: auto 0 auto max(3.2vw, 12px);
  background: center/contain no-repeat url("../img/case_arrow.svg");
}
@media screen and (min-width: 920px) {
  .case .case__toggle {
    font-size: min(1.7391304348vw, 16px);
    margin-bottom: min(2.6086956522vw, 24px);
  }
  .case .case__toggle::after {
    width: min(1.7391304348vw, 16px);
    height: min(0.8695652174vw, 8px);
    margin-left: min(1.3043478261vw, 12px);
  }
}
.case .case__toggle.fade-out {
  opacity: 0;
  height: 0;
  margin-block: 0;
  pointer-events: none;
}

.faq {
  background: #F4F4F4;
}
@media screen and (max-width: 919px) {
  .faq {
    padding-block: max(12.8vw, 48px) !important;
  }
}
.faq .fap__list {
  display: flex;
  flex-direction: column;
  gap: max(3.2vw, 12px);
}
@media screen and (min-width: 920px) {
  .faq .fap__list {
    width: 100%;
    margin: 0 auto;
    gap: min(1.3043478261vw, 12px);
  }
}
.faq .fap__list .faq__item .faq__wrap {
  background: #fff;
  border-radius: max(3.2vw, 12px);
  box-shadow: 0 max(1.0666666667vw, 4px) max(2.1333333333vw, 8px) rgba(0, 0, 0, 0.4);
}
@media screen and (min-width: 920px) {
  .faq .fap__list .faq__item .faq__wrap {
    border-radius: min(1.3043478261vw, 12px);
    box-shadow: 0 min(0.4347826087vw, 4px) min(0.8695652174vw, 8px) rgba(0, 0, 0, 0.4);
  }
}
.faq .fap__list .faq__item .faq__wrap .faq__question {
  display: flex;
  padding: max(3.2vw, 12px);
  align-items: center;
  color: #000;
  font-weight: bold;
  text-align: justify;
  cursor: pointer;
}
@media screen and (min-width: 920px) {
  .faq .fap__list .faq__item .faq__wrap .faq__question {
    padding: min(1.4130434783vw, 13px) min(2.6086956522vw, 24px);
    font-size: min(2.1739130435vw, 20px);
  }
}
.faq .fap__list .faq__item .faq__wrap .faq__question::before {
  content: "Q.";
  margin: auto max(3.2vw, 12px) auto 0;
  font-size: max(5.3333333333vw, 20px);
  font-weight: 900;
  color: #025CF7;
  flex-shrink: 0;
  line-height: 1;
}
@media screen and (min-width: 920px) {
  .faq .fap__list .faq__item .faq__wrap .faq__question::before {
    margin: auto min(1.3043478261vw, 12px) auto 0;
    font-size: min(2.1739130435vw, 20px);
  }
}
.faq .fap__list .faq__item .faq__wrap .faq__question::after {
  content: "";
  width: max(4.2666666667vw, 16px);
  height: max(2.1333333333vw, 8px);
  margin: auto 0 auto max(3.2vw, 12px);
  background-image: url("../img/arrow-faq.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  flex-shrink: 0;
  line-height: 1;
  transition: transform 0.4s;
}
@media screen and (min-width: 920px) {
  .faq .fap__list .faq__item .faq__wrap .faq__question::after {
    width: min(1.7391304348vw, 16px);
    height: min(0.8695652174vw, 8px);
    margin: auto 0 auto min(1.3043478261vw, 12px);
  }
}
.faq .fap__list .faq__item .faq__wrap .faq__question span {
  margin-right: auto;
}
.faq .fap__list .faq__item .faq__wrap .faq__answer {
  display: none;
}
.faq .fap__list .faq__item .faq__wrap .faq__answer .faq__body {
  display: flex;
  padding: max(3.2vw, 12px);
  color: #000;
  font-size: max(3.4666666667vw, 13px);
  font-weight: 400;
  text-align: justify;
  border-top: max(0.2666666667vw, 1px) solid #DCDEE0;
}
@media screen and (min-width: 920px) {
  .faq .fap__list .faq__item .faq__wrap .faq__answer .faq__body {
    padding: min(1.4130434783vw, 13px) min(2.6086956522vw, 24px);
    font-size: min(1.7391304348vw, 16px);
    border-top: min(0.1086956522vw, 1px) solid #DCDEE0;
  }
}
.faq .fap__list .faq__item .faq__wrap .faq__answer .faq__body::before {
  content: "A.";
  margin: auto max(3.2vw, 12px) auto 0;
  font-size: max(5.3333333333vw, 20px);
  font-weight: 900;
  color: #025CF7;
  flex-shrink: 0;
  line-height: 1;
}
@media screen and (min-width: 920px) {
  .faq .fap__list .faq__item .faq__wrap .faq__answer .faq__body::before {
    margin: auto min(1.3043478261vw, 12px) auto 0;
    font-size: min(2.1739130435vw, 20px);
  }
}
.faq .fap__list .faq__item .faq__wrap.-active .faq__question::after {
  transform: rotateX(180deg);
}

.form {
  padding: max(12.8vw, 48px) 0 calc(max(12.8vw, 48px) + max(2.6666666667vw, 10px));
  background: #DDEAFF;
}
@media screen and (min-width: 920px) {
  .form {
    margin-bottom: 0;
    padding: min(6.9565217391vw, 64px) 0;
  }
}

.cv.-fixed {
  display: none;
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  background: #025CF7;
  padding-block: max(2.6666666667vw, 10px) max(4.2666666667vw, 16px);
  bottom: 0;
}
.cv.-fixed .cv__caption {
  font-size: max(3.4666666667vw, 13px);
  font-weight: 500;
  line-height: 1.23;
}
.cv.-fixed .cv__link {
  font-size: max(5.3333333333vw, 20px);
  height: max(14.4vw, 54px) !important;
}
@media screen and (min-width: 920px) {
  .cv.-fixed {
    display: none !important;
  }
}
.cv.-fixed.-active {
  display: block;
}
.cv.-fixed.-inactive {
  display: none;
}