@charset "UTF-8";

.inner {
  width: 92vw;
  max-width: 1472px;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .inner {
    width: 91.4666666667vw;
  }
}

.inner2 {
  width: 85.25vw;
  max-width: 1364px;
  margin-inline: auto;
}

.l-sectionInner {
  margin-inline: auto;
  max-width: 1544px;
  padding-inline: 90px;
}
@media screen and (max-width: 1024px) {
  .l-sectionInner {
    padding-inline: 50px;
  }
}
@media screen and (max-width: 768px) {
  .l-sectionInner {
    padding-inline: 16px;
    max-width: 600px;
  }
}

.l-sectionInnerWide {
  margin-inline: auto;
  max-width: 1650px;
  padding-inline: 62px;
}
@media screen and (max-width: 1024px) {
  .l-sectionInnerWide {
    padding-inline: 50px;
  }
}
@media screen and (max-width: 768px) {
  .l-sectionInnerWide {
    padding-inline: 16px;
    max-width: 600px;
  }
}

body, main {
  overflow-x: clip;
  width: 100vw;
}

html.is-fixed,
html.is-fixed body {
  height: 100%;
  overflow: hidden;
}

address {
  font-style: normal;
}

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

.sp-show {
  display: none;
}
@media screen and (max-width: 374px) {
  .sp-show {
    display: block;
  }
}

.md-none {
  display: block;
}
@media screen and (max-width: 768px) {
  .md-none {
    display: none;
  }
}

.md-show {
  display: none;
}
@media screen and (max-width: 768px) {
  .md-show {
    display: block;
  }
}

@media screen and (max-width: 1024px) {
  .lg-none {
    display: none;
  }
}

.lg-show {
  display: none;
}
@media screen and (max-width: 1024px) {
  .lg-show {
    display: block;
  }
}

@media screen and (max-width: 1279px) {
  .xl-none {
    display: none !important;
  }
}

.xl-show {
  display: none;
}
@media screen and (max-width: 1279px) {
  .xl-show {
    display: block;
  }
}

.uppercase {
  text-transform: uppercase;
}

a[href^="tel:"] {
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  a[href^="tel:"] {
    pointer-events: auto;
  }
}

a {
  transition: opacity 0.3s;
}
a:hover {
  opacity: 0.7;
}

/* Remove default padding */
ul,
ol {
  padding: 0;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Set core root defaults */
html {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul {
  list-style: none;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

a {
  text-decoration: none;
}

/* Make images easier to work with */
img {
  max-width: 100%;
  display: block;
  width: 100%;
}

/* Natural flow and rhythm in articles by default */
article > * + * {
  margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Blur images when they have no alt attribute */
img:not([alt]) {
  filter: blur(10px);
}

/* フォームリセット */
input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type=checkbox],
input[type=radio] {
  display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

.title-container {
  position: relative;
  opacity: 0;
  transform: translateX(-120%) skewX(-30deg);
  transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.8s ease;
  will-change: transform, opacity;
  /* 共通装飾 */
}
.title-container.is-visible {
  opacity: 1;
  transform: translateX(-100px) skewX(-30deg);
}
@media screen and (max-width: 768px) {
  .title-container.is-visible {
    transform: translateX(-80px) skewX(-30deg);
  }
}
.title-container .title-container__deco {
  position: absolute;
  top: 0;
  right: -55px;
  width: 20px;
  height: 100%;
  z-index: -1;
  background: transparent;
  opacity: 0;
  transition: background 0ms 0.2s, opacity 0.2s ease;
}
@media screen and (max-width: 768px) {
  .title-container .title-container__deco {
    display: none;
  }
}
.title-container.is-visible .title-container__inner {
  background: #022A50;
}
.title-container.is-visible .title-container__inner .title-text__container {
  color: #FFFFFF;
  opacity: 1;
  margin-left: 164px;
  transform: skewX(22deg);
}
@media screen and (max-width: 768px) {
  .title-container.is-visible .title-container__inner .title-text__container {
    margin-left: 100px;
  }
}
.title-container.is-visible .title-container__deco {
  background: #022A50;
  opacity: 1;
}
.title-container .logo {
  position: absolute;
  top: -30px;
  aspect-ratio: 600/136;
  -o-object-fit: cover;
     object-fit: cover;
  width: 300px;
  height: auto;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .title-container .logo {
    position: relative;
    top: 0;
    height: 24px;
    width: auto;
    transform: skewX(10deg);
  }
}
.title-container .section-title {
  font-size: min(4.625vw, 74px);
  letter-spacing: 0.03em;
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.2509803922);
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  .title-container .section-title {
    font-size: 8vw;
    transform: skewX(10deg);
  }
}
.title-container .section-title .title-small {
  letter-spacing: -0.08em;
}
@media screen and (max-width: 768px) {
  .title-container .section-title .title-small {
    letter-spacing: 0.03em;
  }
}
.title-container .section-title .title-number {
  letter-spacing: -0.2em;
}
@media screen and (max-width: 768px) {
  .title-container .section-title .title-number {
    letter-spacing: -0.08em;
  }
}
.title-container .section-title .title-short {
  margin-left: -2vw;
}
@media screen and (max-width: 768px) {
  .title-container .section-title .title-short {
    margin-left: -3.7333333333vw;
  }
}
.title-container .sub-title {
  font-size: min(2.338125vw, 37.41px);
  line-height: 1.2;
  letter-spacing: 0.03em;
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 8px;
  margin-left: 12px;
}
@media screen and (max-width: 768px) {
  .title-container .sub-title {
    margin-top: -12px;
    margin-left: 0;
    font-size: 3.7333333333vw;
    transform: skewX(10deg);
  }
}
.title-container .sub-title::after {
  position: absolute;
  content: "";
  width: 11.6875vw;
  height: 1.17px;
  top: 50%;
  translate: 0 -50%;
  right: -13vw;
  background: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .title-container .sub-title::after {
    width: 21.3333333333vw;
    height: 1px;
    right: -23vw;
    top: 40%;
  }
}
.title-container .dot {
  position: relative;
}
.title-container .dot::before {
  position: absolute;
  content: "・";
  left: 50%;
  translate: -50% 0;
  font-size: 1.5vw;
  top: -1.0625vw;
  color: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .title-container .dot::before {
    top: -2.1333333333vw;
    font-size: 3vw;
  }
}
.title-container.title-container--business {
  z-index: 2;
  width: 81.25vw;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--business {
    width: 160vw;
  }
}
.title-container.title-container--business .title-text__container {
  padding-block: 44px;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--business .title-text__container {
    padding-block: 12px;
  }
}
.title-container.title-container--business .sub-title::after {
  width: 10vw;
  right: -11vw;
}
.title-container.title-container--flow {
  z-index: 2;
  top: -150px;
  width: 81.8vw;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--flow {
    width: 122vw;
  }
}
.title-container.title-container--flow .title-text__container {
  padding-block: 41px 51px;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--flow .title-text__container {
    transform: initial;
    padding-block: 12px 9px;
  }
}
.title-container.title-container--flow .section-title {
  margin-left: 10px;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--flow .section-title {
    margin-left: 2px;
  }
}
@media screen and (max-width: 768px) {
  .title-container.title-container--flow .sub-title {
    margin-left: 6px;
  }
  .title-container.title-container--flow .sub-title::after {
    width: 35vw;
    right: -36vw;
  }
}
.title-container.title-container--data {
  width: 83.6vw;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--data {
    width: 121vw;
  }
}
.title-container.title-container--data .title-text__container {
  padding-block: 45px 35px;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--data .title-text__container {
    padding-block: 12px;
  }
}
.title-container.title-container--data .section-title {
  margin-left: 10px;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--data .section-title {
    margin-left: -1px;
  }
}
.title-container.title-container--benefit {
  width: 82vw;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--benefit {
    width: 101vw;
  }
}
.title-container.title-container--benefit .title-text__container {
  padding-block: 41px 47px;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--benefit .title-text__container {
    padding-block: 13px 11px;
  }
}
@media screen and (max-width: 768px) {
  .title-container.title-container--benefit .title-text__container .section-title {
    margin-left: 2px;
  }
}
.title-container.title-container--benefit .title-text__container .sub-title {
  margin-left: 19px;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--benefit .title-text__container .sub-title {
    margin-top: -18px;
    margin-left: 0;
  }
  .title-container.title-container--benefit .title-text__container .sub-title::after {
    width: 13.333333vw;
    right: -15.5vw;
    top: 50%;
  }
}
.title-container.title-container--message {
  width: 86.2vw;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--message {
    width: 160vw;
  }
}
.title-container.title-container--message .title-text__container {
  padding-block: 44px 35px;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--message .title-text__container {
    padding-block: 12.5px 10px;
  }
}
.title-container.title-container--message .section-title {
  margin-left: 51px;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--message .section-title {
    margin-left: -2px;
  }
}
.title-container.title-container--person {
  width: 81.5vw;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--person {
    width: 117.8vw;
  }
}
.title-container.title-container--person .title-text__container {
  padding-block: 41px 48px;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--person .title-text__container {
    padding-block: 12px 10px;
  }
}
.title-container.title-container--person .sub-title {
  margin-left: 19px;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--person .sub-title {
    margin-top: -16px;
    margin-left: 0;
  }
}
.title-container.title-container--person .sub-title span {
  letter-spacing: -0.51em;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--person .sub-title span {
    letter-spacing: -0.49em;
  }
}
.title-container.title-container--faq {
  width: 81.7vw;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--faq {
    width: 121.5vw;
  }
}
.title-container.title-container--faq .title-text__container {
  padding-block: 41px 48px;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--faq .title-text__container {
    padding-block: 13px 9.8px;
  }
}
.title-container.title-container--faq .sub-title {
  color: #FFFFFF;
  margin-left: 19px;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--faq .sub-title {
    margin-top: -16px;
    margin-left: -4px;
  }
}
.title-container.title-container--faq .sub-title::after {
  right: -12vw;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--faq .sub-title::after {
    right: -21vw;
  }
}
.title-container.title-container--faq .sub-title span {
  letter-spacing: -0.51em;
}
@media screen and (max-width: 768px) {
  .title-container.title-container--faq .sub-title span {
    letter-spacing: -0.49em;
  }
}

@keyframes scrollText {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

.inview.fadeup {
  opacity: 0;
  transition-duration: 0.5s;
  transform: translateY(40px);
}

.inview.fadeup2 {
  transition-delay: 0.3s;
}

.inview.fadeup3 {
  transition-delay: 0.6s;
}

.inview.fadeup4 {
  transition-delay: 0.9s;
}

.inview.fadeup5 {
  transition-delay: 1.2s;
}

.inview.fadeup.active {
  opacity: 1;
  transform: translateY(0px);
}

.inview.slidein {
  opacity: 0;
  transition-duration: 0.5s;
  transform: translateX(-100px);
}

.inview.slidein.active {
  opacity: 1;
  transform: translateX(0px);
}

.inview.slidein1 {
  transition-delay: 0.2s;
}

.inview.slidein2 {
  transition-delay: 0.4s;
}

.business__bg-upper {
  position: relative;
  display: none;
}
@media screen and (max-width: 1279px) {
  .business__bg-upper {
    display: block;
  }
  .business__bg-upper::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 79.3333333333vw;
    left: 0;
    top: -70px;
    background-image: url(../img/business/bg-sp.webp);
    background-repeat: no-repeat;
    background-size: cover;
    box-sizing: initial;
  }
}
@media screen and (max-width: 1279px) and (max-width: 768px) {
  .business__bg-upper {
    top: 0;
  }
}
@media screen and (max-width: 1279px) and (max-width: 499px) {
  .business__bg-upper {
    top: 30px;
  }
}

.business__bg-middle {
  position: relative;
  display: none;
}
@media screen and (max-width: 1279px) {
  .business__bg-middle {
    display: block;
  }
  .business__bg-middle::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 730px;
    left: 0;
    top: -35px;
    background: linear-gradient(180deg, rgba(1, 111, 254, 0) 0%, #016FFE 100%);
    box-sizing: initial;
  }
}

.bg-business-thoughts {
  position: relative;
  z-index: 1;
}
.bg-business-thoughts::after {
  box-sizing: initial;
  position: absolute;
  content: "";
  width: 100%;
  height: 800px;
  top: -380px;
  left: 0;
  background: linear-gradient(360deg, rgba(1, 111, 254, 0) 0%, #016FFE 100%);
  pointer-events: none;
}
@media screen and (max-width: 1279px) {
  .bg-business-thoughts::after {
    height: 184px;
    top: -148px;
    background: linear-gradient(180deg, rgba(1, 111, 254, 0) -10.26%, #0C1132 87.03%);
    mix-blend-mode: overlay;
  }
}

.bg-thoughts-flow {
  position: relative;
  width: 100%;
  height: 0;
}
.bg-thoughts-flow::before {
  position: absolute;
  content: "";
  width: 500px;
  height: 800px;
  left: 0;
  top: -500px;
  background: url(../img/bg/bg-img.webp) center center/cover no-repeat;
  z-index: 2;
  mix-blend-mode: lighten;
}
@media screen and (max-width: 1279px) {
  .bg-thoughts-flow::before {
    width: 300px;
    height: 300px;
    top: -100px;
  }
}
.bg-thoughts-flow .bg-thoughts-flow__box {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 450px;
  background: linear-gradient(180deg, #022A50 0%, #016FFE 100%);
}
@media screen and (max-width: 768px) {
  .bg-thoughts-flow .bg-thoughts-flow__box {
    height: 100px;
  }
}

.bg-flow-benefit__upper {
  position: relative;
}
.bg-flow-benefit__upper::after {
  position: absolute;
  content: "";
  width: 100vw;
  height: 4869px;
  top: 0;
  left: 0;
  background: linear-gradient(360deg, rgba(1, 111, 254, 0) 0%, #016FFE 100%);
  box-sizing: initial;
  z-index: 0;
}
@media screen and (max-width: 768px) {
  .bg-flow-benefit__upper::after {
    height: 0;
  }
}

.bg-benefit__lower.xl-show {
  position: relative;
}
@media screen and (max-width: 768px) {
  .bg-benefit__lower.xl-show::after {
    position: absolute;
    content: "";
    width: 100vw;
    height: calc(100% + 450px);
    bottom: 0;
    left: 0;
    background: linear-gradient(360deg, rgba(1, 111, 254, 0) 0%, rgba(1, 111, 254, 0.5) 14.78%);
    box-sizing: initial;
  }
}

.bg-data__upper {
  position: relative;
}
@media screen and (max-width: 1024px) {
  .bg-data__upper::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 400px;
    left: 0;
    top: -100px;
    background: linear-gradient(360deg, rgba(1, 111, 254, 0) 70%, #016FFE 100%);
    box-sizing: border-box;
    z-index: 1;
  }
}

.bg-benefit-message {
  background: linear-gradient(360deg, rgba(1, 111, 254, 0) 0%, rgba(1, 111, 254, 0.5) 103.9%);
}
@media screen and (max-width: 1024px) {
  .bg-benefit-message {
    background: transparent;
  }
}

.business {
  position: relative;
  padding-block: 160px 123px;
  overflow-x: hidden;
}
@media screen and (max-width: 768px) {
  .business {
    padding-block: 70px 75px;
  }
}
.business::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: url(../img/business/bg.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% top;
  z-index: 1;
  mix-blend-mode: multiply;
}
@media screen and (max-width: 1279px) {
  .business::after {
    top: -55px;
    background-image: none;
  }
}
.business .title-container {
  z-index: 2;
}
.business .business__bg-lower {
  display: none;
}
@media screen and (max-width: 1279px) {
  .business .business__bg-lower {
    position: absolute;
    bottom: 0;
    display: block;
    background: linear-gradient(360deg, rgba(1, 111, 254, 0) 0%, #016FFE 100%);
    width: 100%;
    height: calc(100% - 650px);
    z-index: 0;
  }
}
.business .cards {
  position: relative;
  z-index: 2;
  margin-top: 64px;
  display: flex;
  max-width: 1600px;
  margin-inline: auto;
}
@media screen and (max-width: 1600px) {
  .business .cards {
    margin-inline: 3.8vw 0;
  }
}
@media screen and (max-width: 1279px) {
  .business .cards {
    flex-direction: column;
    margin-top: 44px;
  }
}
.business .card {
  position: relative;
}
@media screen and (max-width: 1279px) {
  .business .card:not(:first-child) {
    margin-top: 4vw;
  }
}
.business .card__img {
  position: relative;
  margin-left: 3.8vw;
  height: 17.070625vw;
}
@media screen and (max-width: 1279px) {
  .business .card__img {
    margin-inline: auto 4.2666666667vw;
    width: 74.3626666667vw;
    height: initial;
  }
}
.business .card__img img {
  width: auto;
  height: 100%;
  aspect-ratio: 775/547;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1279px) {
  .business .card__img img {
    width: 100%;
    height: auto;
  }
}
.business .card__img::before {
  position: absolute;
  content: "";
  width: 12.1125vw;
  height: 12.1125vw;
  max-width: 193.8px;
  max-height: 193.8px;
  left: -25%;
  top: 50%;
  translate: 0 -50%;
  z-index: 2;
}
@media screen and (max-width: 1279px) {
  .business .card__img::before {
    width: 31.008vw;
    height: 31.008vw;
    left: -21%;
    top: 41%;
  }
}
.business .card__img p {
  position: absolute;
  font-family: "Noto Serif JP", sans-serif;
	font-display: swap;
  font-size: clamp(3.313rem, 2.643rem + 2.86vw, 5.5rem);
  line-height: 1;
  letter-spacing: -0.02em;
  top: 50%;
  right: -1%;
  translate: 0 -50%;
  white-space: nowrap;
  transform: skewX(-9.5deg);
}
@media screen and (max-width: 1279px) {
  .business .card__img p {
    transform: skewX(-8deg);
  }
}
.business .card__img p span {
  font-size: clamp(2.188rem, 1.747rem + 1.88vw, 3.625rem);
}
.business .card1 .card__img::before {
  background: url(../img/business/title1.webp) center center/contain no-repeat;
  left: -22%;
}
@media screen and (max-width: 1279px) {
  .business .card1 .card__img::before {
    left: -21%;
    top: 41%;
  }
}
.business .card1 .card__img p {
  right: 4%;
}
@media screen and (max-width: 1279px) {
  .business .card1 .card__img p {
    right: 14.4%;
  }
}
@media screen and (max-width: 1279px) {
  .business .card1 .card__img img {
    aspect-ratio: 558/394;
  }
}
.business .card2 .card__img {
  margin-left: 5.3vw;
}
@media screen and (max-width: 1279px) {
  .business .card2 .card__img {
    margin-left: auto;
    width: 76.6746666667vw;
  }
}
.business .card2 .card__img::before {
  background: url(../img/business/title2.webp) center center/contain no-repeat;
  left: -20%;
  top: 55%;
}
@media screen and (max-width: 1279px) {
  .business .card2 .card__img::before {
    left: -18%;
    top: 45%;
  }
}
.business .card2 .card__img p {
  right: 10%;
}
@media screen and (max-width: 1279px) {
  .business .card2 .card__img p {
    right: 16.4%;
    top: 53%;
  }
}
@media screen and (max-width: 1279px) {
  .business .card2 .card__img img {
    aspect-ratio: 576/407;
  }
}
.business .card3 .card__img {
  margin-left: 4vw;
}
@media screen and (max-width: 1279px) {
  .business .card3 .card__img {
    margin-left: auto;
  }
}
.business .card3 .card__img::before {
  background: url(../img/business/title3.webp) center center/contain no-repeat;
}
@media screen and (max-width: 1279px) {
  .business .card3 .card__img::before {
    left: -21%;
    top: 41%;
  }
}
.business .card3 .card__img p {
  right: -4%;
}
@media screen and (max-width: 1279px) {
  .business .card3 .card__img p {
    right: 12.2%;
    top: 51.5%;
  }
}
@media screen and (max-width: 1279px) {
  .business .card3 .card__img img {
    aspect-ratio: 558/395;
  }
}
.business .card__body {
  position: relative;
  padding-block: 27px 40px;
  line-height: 1.38;
  letter-spacing: 0.03em;
  color: #171717;
  z-index: 2;
  transform: skewX(-9.5deg);
}
@media screen and (max-width: 1279px) {
  .business .card__body {
    height: auto;
    width: 100%;
    padding: 17px 6.1333333333vw 17.51px 6.9333333333vw;
  }
}
@media screen and (max-width: 768px) {
  .business .card__body {
    transform: skewX(-8deg);
  }
}
.business .card__body .card__body-deco {
  position: absolute;
  content: "";
  width: 10px;
  height: 100%;
  left: -2%;
  top: 0;
  background: linear-gradient(180deg, #2E83D2 0%, #331E93 100%);
  z-index: 2;
}
@media screen and (max-width: 1279px) {
  .business .card__body .card__body-deco {
    width: 2.6666666667vw;
  }
}
.business .card__body::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: #FFFFFF;
  z-index: 2;
}
.business .card__body h3 {
  position: relative;
  z-index: 3;
  color: #3347CE;
  font-size: clamp(1.25rem, -1.25rem + 3.13vw, 1.875rem);
  line-height: 1.38;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 1279px) {
  .business .card__body h3 {
    font-size: clamp(1.25rem, 1.059rem + 0.82vw, 1.875rem);
  }
}
@media screen and (max-width: 374px) {
  .business .card__body h3 {
    font-size: 17px;
  }
}
.business .card__body .card__text {
  position: relative;
  z-index: 3;
  margin-top: 6px;
  font-size: min(1.125vw, 18px);
  line-height: 1.38;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 1279px) {
  .business .card__body .card__text {
    margin-top: 2px;
    font-size: clamp(0.875rem, 0.798rem + 0.33vw, 1.125rem);
  }
}
.business .card1 {
  width: 30.03128125vw;
}
@media screen and (max-width: 1279px) {
  .business .card1 {
    width: 92%;
  }
}
@media screen and (max-width: 1279px) {
  .business .card1 .card__img {
    margin-inline: auto 0;
  }
}
@media screen and (max-width: 768px) {
  .business .card1 .card__img {
    margin-inline: auto -3.7vw;
  }
}
@media screen and (max-width: 1279px) {
  .business .card1 .card__img::before {
    left: -11%;
  }
}
@media screen and (max-width: 768px) {
  .business .card1 .card__img::before {
    left: -21%;
  }
}
.business .card1 .card__body {
  min-width: 93.448388%;
  padding-inline: 16px 25.6px;
}
@media screen and (max-width: 1600px) {
  .business .card1 .card__body {
    width: 93.448388%;
    padding-inline: 1vw 1.6vw;
  }
}
@media screen and (max-width: 1279px) {
  .business .card1 .card__body {
    width: 84.5%;
    margin-left: 7%;
    padding: 14px 4.2666666667vw 14px 3.7333333333vw;
  }
}
.business .card2 {
  width: 33.071875vw;
  margin-left: 1.5625vw;
}
@media screen and (max-width: 1279px) {
  .business .card2 {
    margin-left: 0;
    width: 92%;
  }
}
@media screen and (max-width: 1279px) {
  .business .card2 .card__img {
    margin-inline: auto 0;
  }
}
@media screen and (max-width: 768px) {
  .business .card2 .card__img {
    margin-inline: auto -3.733333vw;
  }
}
@media screen and (max-width: 1279px) {
  .business .card2 .card__img::before {
    left: -11%;
  }
}
@media screen and (max-width: 768px) {
  .business .card2 .card__img::before {
    left: -19%;
  }
}
.business .card2 .card__body {
  min-width: 96%;
  padding-inline: 1.625vw 1vw;
}
@media screen and (max-width: 1600px) {
  .business .card2 .card__body {
    width: 96%;
    padding-inline: 26px 16px;
  }
}
@media screen and (max-width: 1279px) {
  .business .card2 .card__body {
    width: 88%;
    margin-left: 5.6%;
    padding: 14px 0px 14px 2.2666666667vw;
  }
}
@media screen and (max-width: 768px) {
  .business .card2 .card__body {
    transform: skewX(-9.5deg);
  }
}
.business .card3 {
  width: 28.71909375vw;
  margin-left: 1.6875vw;
}
@media screen and (max-width: 1279px) {
  .business .card3 {
    margin-left: 0;
    width: 95%;
  }
}
@media screen and (max-width: 768px) {
  .business .card3 {
    width: 92%;
  }
}
@media screen and (max-width: 1279px) {
  .business .card3 .card__img {
    margin-inline: auto 2.4vw;
  }
}
@media screen and (max-width: 768px) {
  .business .card3 .card__img {
    margin-inline: auto -3.733333vw;
  }
}
@media screen and (max-width: 1279px) {
  .business .card3 .card__img::before {
    left: -11%;
  }
}
@media screen and (max-width: 768px) {
  .business .card3 .card__img::before {
    left: -21%;
  }
}
.business .card3 .card__body {
  min-width: 93.448388%;
  padding-inline: 26px 33px;
}
@media screen and (max-width: 1600px) {
  .business .card3 .card__body {
    width: 93.448388%;
    padding-inline: 1.625vw 2.0625vw;
  }
}
@media screen and (max-width: 1279px) {
  .business .card3 .card__body {
    padding: 9.5px 1.666667vw 9.5px 2.666667vw;
    width: 85%;
    margin-left: 6.5%;
  }
}

.thoughts {
  position: relative;
  z-index: 0;
  background: linear-gradient(180deg, #000000 25.24%, #022A50 100%);
  padding-bottom: 273px;
}
@media screen and (max-width: 768px) {
  .thoughts {
    padding-bottom: 186px;
  }
}
.thoughts .hero {
  position: relative;
}
.thoughts .hero__video-wrap {
  position: sticky;
  top: 150px;
  aspect-ratio: 560/315;
  z-index: 0;
  overflow: hidden;
  mix-blend-mode: hard-light;
  width: 85.25vw;
  max-width: 1364px;
  height: auto;
  margin-inline: auto;
  -webkit-mask-image: linear-gradient(to bottom, transparent, black 20%, black 80%, transparent);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-image: linear-gradient(to bottom, transparent, black 20%, black 80%, transparent);
  mask-repeat: no-repeat;
  mask-size: cover;
}
@media screen and (max-width: 768px) {
  .thoughts .hero__video-wrap {
    top: 0;
    width: 100vw;
    height: auto;
    aspect-ratio: 530/942;
  }
}
.thoughts .hero__video {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
  opacity: 0.5;
  z-index: -2;
}
@media screen and (max-width: 768px) {
  .thoughts .hero__video {
    aspect-ratio: 530/942;
    height: auto;
  }
}
.thoughts .hero__content {
  position: relative;
  z-index: 1;
  padding-bottom: 273px;
  width: 85.25vw;
  max-width: 1364px;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .thoughts .hero__content {
    padding-bottom: 186px;
  }
}
.thoughts .section-title {
  margin-top: -120px;
  font-size: clamp(1.625rem, 1.051rem + 2.45vw, 3.5rem);
  letter-spacing: -0.02em;
  transform: skewX(-10deg);
}
@media screen and (max-width: 768px) {
  .thoughts .section-title {
    text-align: center;
  }
}
@media screen and (max-width: 499px) {
  .thoughts .section-title {
    font-size: clamp(1.25rem, 0.583rem + 4.33vw, 1.625rem);
  }
  .thoughts .section-title span {
    white-space: nowrap;
  }
}
.thoughts .thoughts-text {
  font-family: "Noto Sans JP", sans-serif;
	font-display: swap;
  font-weight: 500;
  font-size: clamp(0.875rem, 0.741rem + 0.57vw, 1.313rem);
  line-height: 2.1;
  letter-spacing: 0.08em;
  margin-inline: 2vw;
}
@media screen and (max-width: 768px) {
  .thoughts .thoughts-text {
    margin-inline: 5%;
  }
}
.thoughts .thoughts-text1 {
  margin-top: 66px;
}
@media screen and (max-width: 768px) {
  .thoughts .thoughts-text1 {
    margin-top: 6vw;
  }
}
.thoughts .thoughts-text2 {
  margin-top: 64px;
}
@media screen and (max-width: 768px) {
  .thoughts .thoughts-text2 {
    margin-top: 3.069333vw;
  }
}
.thoughts .thoughts-text3 {
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .thoughts .thoughts-text3 {
    margin-inline: 0;
  }
}
.thoughts .p-media {
  padding-top: 80px;
  max-width: 100%;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 1279px) {
  .thoughts .p-media {
    flex-direction: column-reverse;
    padding-top: 37px;
  }
}
.thoughts .p-media__img {
  width: 49.3%;
  height: auto;
}
@media screen and (max-width: 1279px) {
  .thoughts .p-media__img {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
  }
}
.thoughts .p-media__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 1327/994;
}
.thoughts .p-media__body {
  width: 48%;
  margin-top: 20px;
  padding: 8px 0 10px 10px;
}
@media screen and (max-width: 1279px) {
  .thoughts .p-media__body {
    width: 100%;
    margin-top: 37px;
    padding: 0;
  }
}
.thoughts .recruit__marquee {
  margin-top: 131px;
  font-family: "microsoft-sans-serif", sans-serif;
	font-display: swap;
  color: #58A0E4;
  font-weight: 400;
  font-size: clamp(3rem, 0.857rem + 9.14vw, 10rem);
  line-height: 1;
  letter-spacing: -0.02em;
  white-space: nowrap;
  z-index: 2;
  animation: scrollText 5s linear infinite;
}
.thoughts .recruit__marquee span {
  display: inline-block;
  transform: skewX(-10deg);
}
@media screen and (max-width: 768px) {
  .thoughts .recruit__marquee {
    margin-top: 64px;
  }
}
.thoughts .thoughts-bg__upper::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 65%;
  opacity: 0.3;
  left: 0;
  top: 0;
  background: linear-gradient(180deg, #000000 3.5%, #000000 74%, #000000 100%);
  box-sizing: initial;
  z-index: 1;
}
.thoughts .thoughts-bg__lower::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 35%;
  left: 0;
  bottom: 0;
  background: linear-gradient(180deg, #000000 25.24%, #022A50 100%);
  opacity: 0.5;
  padding-bottom: 30px;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .thoughts .thoughts-bg__lower::after {
    padding-bottom: 50px;
  }
}

.flow {
  position: relative;
  padding-bottom: 162px;
  z-index: 0;
}
@media screen and (max-width: 768px) {
  .flow {
    padding-bottom: 48px;
    background: #FFFFFF;
  }
}
@media screen and (max-width: 768px) {
  .flow::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    left: 0;
    top: 30%;
    box-sizing: initial;
    background: linear-gradient(360deg, rgba(1, 111, 254, 0) 0%, #016FFE 50%);
    z-index: -1;
    pointer-events: none;
  }
}
.flow .flow__img {
  position: absolute;
  margin-inline: auto 0;
  width: 59.4375vw;
  height: auto;
  z-index: 0;
  right: 0;
  top: -18px;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .flow .flow__img {
    width: 85.3vw;
    height: auto;
    top: -69px;
    right: -2%;
  }
}
.flow .flow__img img {
  width: 100%;
  height: 100%;
  aspect-ratio: 1902/1058;
  -o-object-fit: cover;
     object-fit: cover;
}
.flow .md-none {
  display: block;
}
@media screen and (max-width: 768px) {
  .flow .md-none {
    display: none;
  }
}
.flow .md-show {
  display: block;
}
@media screen and (max-width: 768px) {
  .flow .md-show {
    display: none;
  }
}
.flow .cards {
  margin-top: 9px;
  margin-inline: 5.8vw;
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, 1fr);
}
@media screen and (max-width: 1279px) {
  .flow .cards {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 768px) {
  .flow .cards {
    grid-template-columns: repeat(1, 1fr);
    margin: 43px 7.3vw 0 7.8vw;
  }
}
.flow .card-wrapper {
  position: relative;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 1;
  transform: skewX(-17.5deg);
}
@media screen and (max-width: 768px) {
  .flow .card-wrapper {
    grid-row: span 1;
    transform: skewX(-6.5deg);
  }
}
.flow .card {
  padding: 0;
  background-color: #FFFFFF;
  z-index: 0;
  box-shadow: 3px 4px 4px 0px rgba(0, 0, 0, 0.1490196078);
}
@media screen and (max-width: 768px) {
  .flow .card {
    z-index: 2;
  }
}
.flow .card__category {
  width: 100%;
  padding-block: 1.25vw 1vw;
  background: #004C92;
  font-size: clamp(1.5rem, 1.194rem + 1.31vw, 2.5rem);
  line-height: 1;
  letter-spacing: -0.02em;
}
@media screen and (max-width: 768px) {
  .flow .card__category {
    width: -moz-fit-content;
    width: fit-content;
    padding: 6px 31px 5px 24px;
    font-size: 6.4vw;
    white-space: nowrap;
  }
}
.flow .card__category h3 {
  font-size: clamp(1.5rem, 1.194rem + 1.31vw, 2.5rem);
  line-height: 1;
  letter-spacing: -0.02em;
  margin-inline: auto;
  width: -moz-fit-content;
  width: fit-content;
  transform: skewX(10deg);
}
@media screen and (max-width: 768px) {
  .flow .card__category h3 {
    font-size: 6.4vw;
    transform: skewX(-3deg);
  }
}
.flow .card__body {
  transform: skewX(10deg);
}
@media screen and (max-width: 768px) {
  .flow .card__body {
    transform: skewX(0deg);
    padding: 0 3vw;
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .flow .card__body__upper {
    display: flex;
    align-items: center;
    -moz-column-gap: 8px;
         column-gap: 8px;
  }
}
.flow .card__img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 30%;
  margin: 27px auto 0 8.5vw;
  transform: skewX(10deg);
}
@media screen and (max-width: 1279px) {
  .flow .card__img {
    margin-inline: auto;
  }
}
@media screen and (max-width: 768px) {
  .flow .card__img {
    width: 11.5786666667vw;
    height: 100%;
    margin: auto;
  }
}
.flow .card__text {
  color: #171717;
  line-height: 2.1;
  font-size: clamp(0.875rem, 0.818rem + 0.24vw, 1.063rem);
  transform: skewX(6deg);
}
@media screen and (max-width: 768px) {
  .flow .card__text {
    flex: 1;
    padding: 0;
    line-height: 1.6;
    font-size: 3.7333333333vw;
  }
}
.flow .card__text.card__text1 {
  position: relative;
  display: block;
  padding: 10px 2.5vw 18px 2.2vw;
}
@media screen and (max-width: 768px) {
  .flow .card__text.card__text1 {
    padding: 10px 0vw 7px 0.2vw;
  }
}
.flow .card__text.card__text1::after {
  position: absolute;
  content: "";
  width: 85%;
  height: 1px;
  background: #004C92;
  bottom: 9px;
  left: 45%;
  translate: -50% 0;
}
@media screen and (max-width: 1279px) {
  .flow .card__text.card__text1::after {
    width: 93%;
    left: 49%;
  }
}
@media screen and (max-width: 768px) {
  .flow .card__text.card__text1::after {
    width: 121%;
    left: 39%;
    bottom: 0;
  }
}
.flow .card__text.card__text2 {
  padding: 0px 1vw 36px 0.25vw;
}
@media screen and (max-width: 768px) {
  .flow .card__text.card__text2 {
    padding: 7px 0vw 14px 2.6vw;
  }
}
.flow .card1 .card__img {
  aspect-ratio: 1/1;
  width: 6.7075vw;
}
@media screen and (max-width: 768px) {
  .flow .card1 .card__img {
    width: 11.5786666667vw;
  }
}
@media screen and (max-width: 768px) {
  .flow .card1 .card__text1 {
    width: 82.233432382%;
  }
}
.flow .card2 .card__img {
  aspect-ratio: 1/1;
  width: 6.375vw;
}
@media screen and (max-width: 768px) {
  .flow .card2 .card__img {
    width: 11.4666666667vw;
  }
}
.flow .card2 .card__text1 {
  padding-top: 15px;
}
@media screen and (max-width: 768px) {
  .flow .card2 .card__text1 {
    width: 83.1412003074%;
  }
}
.flow .card3 .card__img {
  aspect-ratio: 1/1;
  width: 6.77125vw;
}
@media screen and (max-width: 768px) {
  .flow .card3 .card__img {
    width: 11.4666666667vw;
  }
}
@media screen and (max-width: 768px) {
  .flow .card3 .card__text1 {
    width: 82.4213880039%;
  }
}
.flow .card4 .card__img {
  aspect-ratio: 112/129;
  width: 5.653125vw;
  margin-left: 9.1vw;
}
@media screen and (max-width: 1279px) {
  .flow .card4 .card__img {
    margin-left: auto;
  }
}
@media screen and (max-width: 768px) {
  .flow .card4 .card__img {
    width: 11.4666666667vw;
  }
}
.flow .card4 .card__text1 {
  padding-top: 15px;
}
@media screen and (max-width: 768px) {
  .flow .card4 .card__text1 {
    width: 84.4870429535%;
  }
}
.flow .card4 .card__text2 {
  padding-right: 2vw;
}

.data {
  margin-top: -30px;
  padding-top: 30px;
  position: relative;
  padding-bottom: 17px;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  background-image: url(../img/data/bg.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
  mix-blend-mode: hard-light;
}
@media screen and (max-width: 768px) {
  .data {
    background: transparent;
    padding-bottom: 103px;
  }
}
.data::before {
  position: absolute;
  content: "";
  width: 66vw;
  height: 53.125vw;
  right: -7.4375vw;
  top: -13.5vw;
  background: url(../img/data/bg-img.webp) center center/contain no-repeat;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .data::before {
    z-index: -1;
  }
}
@media screen and (max-width: 768px) {
  .data::after {
    position: absolute;
    content: "";
    width: 129.5466666667vw;
    height: 86.1066666667vw;
    left: 50%;
    translate: -50% 0;
    bottom: 0;
    background: url(../img/data/bg.webp) bottom center no-repeat;
    background-size: 100%;
    z-index: -1;
    mix-blend-mode: hard-light;
  }
}
.data .title-container {
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .data .data-box {
    margin-top: 32.56px;
  }
}
.data .data-box__container {
  margin-inline: 10% 10.7%;
  margin-top: -42px;
}
@media screen and (max-width: 1024px) {
  .data .data-box__container {
    margin: 0;
  }
}
.data .data-box {
  position: relative;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, #0069AE 0%, #013C83 100%);
  border: 2px solid #fff;
  border-radius: 6px;
  box-shadow: 16px 30px 30px 0px rgba(2, 42, 80, 0.2117647059);
  -webkit-clip-path: polygon(0% 112px, 65% 112px, 73% 0%, 100% 0%, 100% 100%, 0% 100%);
          clip-path: polygon(0% 112px, 65% 112px, 73% 0%, 100% 0%, 100% 100%, 0% 100%);
  overflow: hidden;
}
@media screen and (max-width: 1024px) {
  .data .data-box {
    -webkit-clip-path: polygon(0% 0%, 40% 0%, 51% 45px, 100% 44px, 100% 100%, 0% 100%);
            clip-path: polygon(0% 0%, 40% 0%, 51% 45px, 100% 44px, 100% 100%, 0% 100%);
  }
}
.data .data-box .data-box-ear {
  position: absolute;
  top: 0;
  left: 0;
  width: calc(73.08% + 2px);
  border-top: 112px solid #FFFFFF;
  border-right: 6.4vw solid transparent;
}
@media screen and (max-width: 1024px) {
  .data .data-box .data-box-ear {
    right: 0;
    left: inherit;
    width: calc(59.8% + 2px);
    border-top: 44px solid #FFFFFF;
    border-left: 10.95vw solid transparent;
    border-right: 0;
  }
}
.data .data-box .data-box__inner {
  padding-block: 212px 101px;
  max-width: 910px;
  margin-inline: auto;
}
@media screen and (max-width: 1024px) {
  .data .data-box .data-box__inner {
    padding-block: 44px 62px;
    max-width: calc(100% - 8.5333333333vw);
  }
}
@media screen and (max-width: 768px) {
  .data .data-box .data-box__inner {
    max-width: 98%;
  }
}
.data .data-box .cards {
  position: relative;
  display: flex;
  justify-content: space-between;
  margin-left: 1.3vw;
}
@media screen and (max-width: 1024px) {
  .data .data-box .cards {
    margin-left: 0;
    width: 100%;
  }
}
.data .data-box .cards:not(:first-child) {
  margin-top: 33px;
}
@media screen and (max-width: 1024px) {
  .data .data-box .cards:not(:first-child) {
    margin-top: 0;
  }
}
@media screen and (max-width: 374px) {
  .data .data-box .cards:not(:first-child) {
    margin-top: 10px;
  }
}
.data .data-box .cards::after {
  position: absolute;
  content: "";
  width: 2px;
  height: 107%;
  left: 46.5%;
  translate: -50% 0;
  top: -3%;
  background: #FFFFFF;
  transform: rotate(20deg);
}
@media screen and (max-width: 1279px) {
  .data .data-box .cards::after {
    height: 136.86px;
    width: 1.79px;
    left: 47.5%;
    translate: -50% 0;
    top: 8%;
    transform: rotate(10.52deg);
  }
}
@media screen and (max-width: 1024px) {
  .data .data-box .cards::after {
    transform: rotate(35deg);
  }
}
@media screen and (max-width: 374px) {
  .data .data-box .cards::after {
    top: 13%;
    transform: rotate(52deg);
  }
}
.data .data-box .p-media {
  display: flex;
  align-items: center;
  -moz-column-gap: 7px;
       column-gap: 7px;
}
.data .data-box .p-media-left {
  width: 50%;
}
@media screen and (max-width: 1279px) {
  .data .data-box .p-media-left {
    width: 45%;
  }
}
@media screen and (max-width: 1024px) {
  .data .data-box .p-media-left {
    padding-bottom: 66px;
    align-items: start;
    width: 100%;
  }
}
.data .data-box .p-media-right {
  width: 44.5%;
  padding-left: 7px;
}
@media screen and (max-width: 1279px) {
  .data .data-box .p-media-right {
    width: 45%;
  }
}
@media screen and (max-width: 1024px) {
  .data .data-box .p-media-right {
    position: absolute;
    right: 3.2vw;
    bottom: 0;
    align-items: end;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media screen and (max-width: 374px) {
  .data .data-box .p-media-right {
    bottom: -15px;
  }
}
.data .data-box .p-media__img {
  position: relative;
  width: 100px;
  height: 100px;
}
@media screen and (max-width: 1024px) {
  .data .data-box .p-media__img {
    width: 50px;
    height: 50px;
  }
}
.data .data-box .p-media__img img {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  aspect-ratio: 1/1;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .data .data-box .p-media__body {
    position: relative;
    margin-left: 16vw;
  }
  .data .data-box .p-media__body::before {
    position: absolute;
    content: "";
    width: 13.3333333333vw;
    height: 13.3333333333vw;
    left: -15.4666666667vw;
    top: 50%;
    translate: 0 -50%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50% 50%;
  }
  .data .data-box .p-media__body.p-media__body1::before {
    background-image: url(../img/data/data1.webp);
  }
  .data .data-box .p-media__body.p-media__body2::before {
    background-image: url(../img/data/data2.webp);
  }
  .data .data-box .p-media__body.p-media__body3::before {
    background-image: url(../img/data/data3.webp);
  }
  .data .data-box .p-media__body.p-media__body4::before {
    background-image: url(../img/data/data4.webp);
  }
  .data .data-box .p-media__body.p-media__body5::before {
    background-image: url(../img/data/data5.webp);
  }
  .data .data-box .p-media__body.p-media__body6::before {
    background-image: url(../img/data/data6.webp);
  }
  .data .data-box .p-media__body.p-media__body7::before {
    background-image: url(../img/data/data7.webp);
  }
  .data .data-box .p-media__body.p-media__body8::before {
    background-image: url(../img/data/data8.webp);
  }
  .data .data-box .p-media__body.p-media__body9::before {
    background-image: url(../img/data/data9.webp);
  }
  .data .data-box .p-media__body.p-media__body10::before {
    background-image: url(../img/data/data10.webp);
  }
}
.data .data-box .p-media__head {
  font-family: "Noto Sans JP", sans-serif;
	font-display: swap;
  font-weight: 500;
  font-size: clamp(0.875rem, 0.798rem + 0.33vw, 1.125rem);
  line-height: 1.3;
  letter-spacing: 0;
  padding: 0 3px 1px 3px;
  background-color: #F3EB12;
  color: #171717;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 1024px) {
  .data .data-box .p-media__head {
    padding: 0 5px;
  }
}
.data .data-box .p-media__data {
  font-size: clamp(2.813rem, 2.449rem + 1.55vw, 4rem);
  line-height: 1.2;
  letter-spacing: -0.02em;
  font-style: italic;
  margin-top: -8px;
  padding-left: 5px;
}
@media screen and (max-width: 1024px) {
  .data .data-box .p-media__data {
    position: relative;
    margin-top: 0px;
    padding-left: 0px;
  }
}
.data .data-box .p-media__data span {
  padding-left: 5px;
  font-size: clamp(0.875rem, 0.684rem + 0.82vw, 1.5rem);
  font-style: normal;
}
.data .data-box .p-media__txt {
  font-family: "Noto Sans JP", sans-serif;
	font-display: swap;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.3;
  letter-spacing: 0;
  margin-top: -7px;
}
@media screen and (max-width: 1024px) {
  .data .data-box .p-media__txt {
    font-size: clamp(0.75rem, 0.409rem + 1.45vw, 1.5rem);
    text-indent: -1em;
    padding-left: 1em;
  }
}
@media screen and (max-width: 374px) {
  .data .data-box .p-media__txt {
    font-size: 10px;
  }
}
@media screen and (max-width: 1024px) {
  .data .data-box .cards1 .p-media__data span {
    padding-left: 0;
    position: absolute;
    display: inline-block;
    right: 3px;
    bottom: -2.4vw;
    transform: skewX(-9deg);
  }
}
@media screen and (max-width: 499px) {
  .data .data-box .cards1 .p-media__data span {
    bottom: -7px;
  }
}
@media screen and (max-width: 1024px) {
  .data .data-box .cards1 .p-media__txt {
    margin-top: 24px;
  }
}
@media screen and (max-width: 768px) {
  .data .data-box .cards1 .p-media__txt {
    margin-top: 2vw;
  }
}
@media screen and (max-width: 374px) {
  .data .data-box .cards1 .p-media-right .p-media__body2::before {
    top: 70%;
  }
}
@media screen and (max-width: 1024px) {
  .data .data-box .cards2::after {
    top: 6%;
  }
  .data .data-box .cards2 .p-media-left {
    padding-bottom: 57px;
  }
  .data .data-box .cards2 .p-media-left .p-media__data span {
    padding-inline: 0 5px;
  }
  .data .data-box .cards2 .p-media-left .p-media__txt {
    margin-top: -4px;
  }
  .data .data-box .cards2 .p-media-right {
    right: -1px;
    bottom: -5px;
  }
  .data .data-box .cards2 .p-media-right .p-media__data span {
    padding-inline: 0 5px;
  }
  .data .data-box .cards2 .p-media-right .p-media__txt {
    margin-top: -4px;
  }
  .data .data-box .cards3::after {
    top: 13%;
  }
  .data .data-box .cards3 .p-media-left {
    padding-bottom: 68px;
  }
  .data .data-box .cards3 .p-media-left .p-media__data span {
    padding-inline: 0 5px;
  }
  .data .data-box .cards3 .p-media-left .p-media__txt {
    margin-top: -4px;
  }
  .data .data-box .cards3 .p-media-right {
    bottom: -5px;
    right: 0.3vw;
  }
  .data .data-box .cards3 .p-media-right .p-media__data span {
    padding-inline: 0 5px;
  }
  .data .data-box .cards3 .p-media-right .p-media__txt {
    margin-top: -4px;
  }
  .data .data-box .cards4::after {
    top: 0;
  }
  .data .data-box .cards4 .p-media-left {
    padding-bottom: 62px;
  }
  .data .data-box .cards4 .p-media-left .p-media__data span {
    padding-inline: 1px 0;
  }
  .data .data-box .cards4 .p-media-left .p-media__txt {
    margin-top: -4px;
  }
  .data .data-box .cards4 .p-media-right {
    bottom: -6px;
  }
  .data .data-box .cards4 .p-media-right .p-media__data span {
    padding-inline: 2px;
  }
  .data .data-box .cards4 .p-media-right .p-media__txt {
    margin-top: -4px;
  }
  .data .data-box .cards5 .p-media-left {
    padding-bottom: 49px;
  }
  .data .data-box .cards5 .p-media-left .p-media__data span {
    padding-inline: 1px 0;
  }
  .data .data-box .cards5 .p-media-left .p-media__txt {
    margin-top: -4px;
  }
  .data .data-box .cards5 .p-media-right {
    right: 2.2vw;
  }
  .data .data-box .cards5 .p-media-right .p-media__data span {
    padding-inline: 2px;
  }
  .data .data-box .cards5 .p-media-right .p-media__txt {
    margin-top: -4px;
  }
}
.data .recruit__marquee {
  margin-top: -15px;
  font-family: "microsoft-sans-serif", sans-serif;
	font-display: swap;
  font-weight: 400;
  font-size: clamp(3rem, 0.857rem + 9.14vw, 10rem);
  line-height: 1;
  letter-spacing: -0.02em;
  white-space: nowrap;
  animation: scrollText 5s linear infinite;
}
@media screen and (max-width: 768px) {
  .data .recruit__marquee {
    display: none;
  }
}
.data .recruit__marquee span {
  display: inline-block;
  transform: skewX(-10deg);
}

.benefit-upper__container {
  position: relative;
  padding-block: 190px 62px;
  overflow: hidden;
  background: linear-gradient(360deg, rgba(0, 180, 254, 0) 0%, #009FFE 100%);
}
@media screen and (max-width: 768px) {
  .benefit-upper__container {
    padding-block: 52px 28px;
    background: #FFFFFF;
  }
}
.benefit-upper__container::before {
  box-sizing: border-box;
  position: absolute;
  content: "";
  right: 241px;
  top: -239px;
  width: 918px;
  height: 2400px;
  transform: skewX(-28.5deg);
  background: linear-gradient(359.98deg, #016FFE 0.04%, rgba(2, 42, 80, 0.2) 99.96%);
  z-index: 0;
}
@media screen and (max-width: 768px) {
  .benefit-upper__container::before {
    width: 242px;
    height: 886px;
    top: 0px;
  }
}
.benefit-upper__container .title-container {
  position: relative;
  z-index: 1;
}
.benefit-upper__container .p-benefitManga {
  position: relative;
  margin-block: clamp(40px, 5.8vw, 92px) 0px;
  overflow-x: hidden;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .benefit-upper__container .p-benefitManga {
    margin-top: -33px;
  }
}
.benefit-upper__container .p-benefitManga .benefit__upper {
  position: relative;
  z-index: 1;
  margin-block: 60px 50px;
  display: flex;
  justify-content: center;
  -moz-column-gap: 4.375vw;
       column-gap: 4.375vw;
}
@media screen and (max-width: 1024px) {
  .benefit-upper__container .p-benefitManga .benefit__upper {
    flex-direction: column;
  }
}
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container {
  position: relative;
  padding-bottom: 5vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-left: 3.125vw;
}
@media screen and (max-width: 1024px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container {
    margin-left: 0;
    padding-bottom: 41.88px;
  }
}
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .comic__text {
  font-size: min(1.375vw, 22px);
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-align: center;
  color: #00498C;
  background-color: #fff;
  border-radius: 16px;
  padding: 16px;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container .comic__text {
    font-size: clamp(1rem, 0.885rem + 0.49vw, 1.375rem);
  }
}
@media screen and (max-width: 768px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container .comic__text {
    font-size: clamp(1rem, -0.455rem + 7.27vw, 1.25rem);
    margin-inline: 30px;
  }
}
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .comic__text::before {
  content: "";
  position: absolute;
  bottom: -16px;
  left: 50%;
  transform: translateX(-50%);
  width: 30px;
  height: 30px;
  background-color: #fff;
  -webkit-clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
          clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
}
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn {
  margin-top: 24px;
}
@media screen and (max-width: 768px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn {
    margin-top: 35px;
  }
}
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-wrapper {
  position: relative;
  --turn-w: calc(465 / 1600 * 100vw);
  inline-size: var(--turn-w);
  aspect-ratio: 800/1135;
  block-size: auto;
}
@media screen and (max-width: 1024px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-wrapper {
    --turn-w: 350px;
  }
}
@media screen and (max-width: 768px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-wrapper {
    --turn-w: 266px;
  }
}
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-slide {
  display: none;
}
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-stage {
  position: relative;
  inline-size: 100%;
  block-size: 100%;
}
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-wrapper {
  max-inline-size: calc(var(--turn-min) * 2 - 1px);
}
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-wrapper,
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-stage {
  position: relative;
  overflow: hidden;
}
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-stage .page {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-stage .page img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-pagination {
  position: absolute;
  color: #59C8FE;
  font-size: 1.25vw;
  line-height: 1.5;
  letter-spacing: 0;
  top: inherit;
  left: 50%;
  translate: -50% 0;
  bottom: 0px;
  padding: 0 2.5vw;
  border-radius: 100px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 8px;
       column-gap: 8px;
  font-size: 1.25vw;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-pagination {
    padding: 0 23.14px;
    font-size: 11.57px;
  }
}
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-pagination .current-page {
  color: #022A50;
  font-size: 2vw;
}
@media screen and (max-width: 768px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-pagination .current-page {
    font-size: 18.51px;
  }
}
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-prev,
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-next {
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  float: left;
  cursor: pointer;
  width: 3.125vw;
  height: 3.125vw;
  z-index: 10;
  transition: all 0.3s ease;
}
@media screen and (max-width: 1024px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-prev,
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-next {
    max-width: 50px;
    max-height: 50px;
    top: calc(50% + 25px);
    width: 7.712vw;
    height: 7.712vw;
  }
}
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-prev:not(.disabled):hover,
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-next:not(.disabled):hover {
  transform: scale(1.2);
}
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-prev {
  left: clamp(-70px, 108.5714px - 8.92857vw, -20px);
}
@media screen and (max-width: 1279px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-prev {
    left: -14px;
  }
}
@media screen and (max-width: 1024px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-prev {
    left: calc(50% - 260px);
  }
}
@media screen and (max-width: 768px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-prev {
    left: calc(50% - clamp(170px, 40vw, 190px));
  }
}
@media screen and (max-width: 374px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-prev {
    left: calc(50% - clamp(9.938rem, 5.863rem + 20.37vw, 10.625rem));
  }
}
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-next {
  right: clamp(-70px, 108.5714px - 8.92857vw, -20px);
}
@media screen and (max-width: 1279px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-next {
    right: -14px;
  }
}
@media screen and (max-width: 1024px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-next {
    right: calc(50% - 260px);
  }
}
@media screen and (max-width: 768px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-next {
    right: calc(50% - clamp(170px, 40vw, 190px));
  }
}
@media screen and (max-width: 374px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-next {
    right: calc(50% - clamp(9.938rem, 5.863rem + 20.37vw, 10.625rem));
  }
}
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-prev::after,
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-next::after {
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  height: 3.125vw;
  width: 3.125vw;
  margin: auto;
  background-image: url(../img/benefit/arrow.webp);
  display: block;
  clear: both;
}
@media screen and (max-width: 1024px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-prev::after,
  .benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-next::after {
    max-width: 50px;
    max-height: 50px;
    width: 7.712vw;
    height: 7.712vw;
  }
}
.benefit-upper__container .p-benefitManga .benefit__upper .comic__container .turn-button-prev::after {
  transform: rotate(180deg);
}
.benefit-upper__container .p-benefitManga .benefit__upper .turn-button-prev.disabled,
.benefit-upper__container .p-benefitManga .benefit__upper .turn-button-next.disabled {
  opacity: 0.2;
  pointer-events: none !important; /* クリック無効 */
  cursor: default; /* 矢印のカーソルを通常に */
}
.benefit-upper__container .p-benefitManga .benefit__upper .text__container {
  position: relative;
  z-index: 1;
  background: rgba(255, 255, 255, 0.8980392157);
  padding: 2.8125vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-right: 40px;
}
@media screen and (max-width: 1024px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .text__container {
    width: 85.25vw;
    margin-inline: auto;
    margin-top: 30.18px;
  }
}
@media screen and (max-width: 768px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .text__container {
    width: 91.4666666667vw;
  }
}
.benefit-upper__container .p-benefitManga .benefit__upper .p-media {
  max-width: 100%;
  display: flex;
  align-items: center;
  -moz-column-gap: 8px;
       column-gap: 8px;
  opacity: 0.3;
}
.benefit-upper__container .p-benefitManga .benefit__upper .p-media.is-active {
  opacity: 1;
}
.benefit-upper__container .p-benefitManga .benefit__upper .p-media:hover {
  cursor: pointer;
}
.benefit-upper__container .p-benefitManga .benefit__upper .p-media:not(:first-child) {
  margin-top: clamp(24px, 2.5vw, 40px);
}
@media screen and (max-width: 1024px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .p-media:not(:first-child) {
    margin-block: 10px;
  }
}
@media screen and (max-width: 1024px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .p-media {
    display: none;
  }
  .benefit-upper__container .p-benefitManga .benefit__upper .p-media.is-active {
    display: flex;
    margin-block: 0;
    padding-block: 15px;
  }
}
.benefit-upper__container .p-benefitManga .benefit__upper .p-media__head {
  padding: 10px;
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0;
  background-color: #2E83D2;
  white-space: nowrap;
  color: #fff;
  font-weight: 700;
}
@media screen and (max-width: 1024px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .p-media__head {
    font-size: clamp(0.75rem, 0.461rem + 1.23vw, 1.25rem);
  }
}
.benefit-upper__container .p-benefitManga .benefit__upper .p-media__txt {
  font-size: 1.25vw;
  line-height: 1.5;
  letter-spacing: 0;
  font-weight: 700;
  color: #171717;
}
@media screen and (max-width: 1024px) {
  .benefit-upper__container .p-benefitManga .benefit__upper .p-media__txt {
    font-size: clamp(1rem, 0.856rem + 0.62vw, 1.25rem);
  }
}
.benefit-upper__container .benefit__text {
  position: relative;
  z-index: 1;
  font-size: min(1.375vw, 22px);
  line-height: 1;
  color: #022A50;
  text-align: center;
  border: 1px solid #016FFE;
  background-color: #FFFFFF;
  padding: 20px 20px 16px 20px;
  border: 1px solid #016FFE;
}
@media screen and (max-width: 1024px) {
  .benefit-upper__container .benefit__text {
    padding: 15px 1.8666666667vw;
    width: 85.25vw;
    margin-inline: auto;
    font-size: clamp(1rem, 0.847rem + 0.65vw, 1.5rem);
    text-align: left;
    line-height: 1.3;
  }
}
@media screen and (max-width: 768px) {
  .benefit-upper__container .benefit__text {
    width: 91.4666666667vw;
  }
}

.benefit-lower {
  position: relative;
  z-index: 1;
  padding-bottom: 223px;
}
.benefit-lower.md-none {
  background: linear-gradient(360deg, rgba(1, 111, 254, 0) 0%, rgba(1, 111, 254, 0.5) 103.9%);
}
@media screen and (max-width: 768px) {
  .benefit-lower {
    background: url(../img/benefit/bg-sp.webp) center bottom/contain no-repeat;
    padding-bottom: 48vw;
  }
}
.benefit-lower .benefit-lower__inner .life-event {
  position: relative;
  max-width: 1364px;
  padding: 4.3% 2.5% 6% 2.5%;
  color: #022A50;
  background: rgba(255, 255, 255, 0.8980392157);
}
@media screen and (max-width: 768px) {
  .benefit-lower .benefit-lower__inner .life-event {
    padding: 0;
    background: transparent;
  }
}
.benefit-lower .benefit-lower__inner .life-event__step {
  position: relative;
  width: 11.25vw;
  max-width: 180px;
  height: 11.25vw;
  max-height: 180px;
  color: #FFFFFF;
  background-color: #007bff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(0.875rem, 0.378rem + 2.12vw, 2.5rem);
  line-height: 1.2;
  letter-spacing: 0;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .benefit-lower .benefit-lower__inner .life-event__step {
    width: 16vw;
    height: 16vw;
  }
}
.benefit-lower .benefit-lower__inner .life-event__step .label1 {
  font-size: clamp(0.625rem, 0.357rem + 1.14vw, 1.5rem);
}
.benefit-lower .benefit-lower__inner .life-event__step .label2 {
  font-size: clamp(0.875rem, 0.378rem + 2.12vw, 2.5rem);
}
.benefit-lower .benefit-lower__inner .life-event__step.life-event__step-deco::before {
  position: absolute;
  white-space: pre;
  content: "祝い金\a受給!";
  font-size: min(1vw, 16px);
  line-height: 1.5;
  letter-spacing: 0;
  color: #1F1F1F;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 5vw;
  height: 5vw;
  max-width: 80px;
  max-height: 80px;
  left: -25%;
  top: 50%;
  translate: 0 -50%;
  background: #F3EB12;
  border-radius: 50%;
  z-index: 1;
}
.benefit-lower .benefit-lower__inner .life-event__step.life-event__step--start {
  background-color: #4dc3ff;
}
.benefit-lower .benefit-lower__inner .life-event__step.life-event__step--end {
  background-color: #003366;
}
.benefit-lower .benefit-lower__inner .life-event__content {
  position: relative;
  display: flex;
  flex-direction: column;
}
.benefit-lower .benefit-lower__inner .life-event-line__container {
  position: absolute;
  width: 85.9813084112%;
  height: 1156px;
  top: 193px;
  left: 50%;
  translate: -50% 0;
  pointer-events: none;
}
.benefit-lower .benefit-lower__inner .life-event__list {
  margin-top: 16px;
  margin-left: 2.141361%;
}
@media screen and (max-width: 768px) {
  .benefit-lower .benefit-lower__inner .life-event__list {
    margin-top: 0;
    margin-left: 0;
  }
}
.benefit-lower .benefit-lower__inner .life-event__block {
  display: flex;
  align-items: center;
  width: 100%;
  justify-content: space-between;
  max-width: 1284px;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .benefit-lower .benefit-lower__inner .life-event__block {
    flex-direction: column;
    padding: 20px 10px 18px 10px;
    background: rgba(255, 255, 255, 0.8);
  }
}
.benefit-lower .benefit-lower__inner .life-event__block:not(:last-child) {
  border-bottom: 1px solid #1F1F1F;
}
@media screen and (max-width: 768px) {
  .benefit-lower .benefit-lower__inner .life-event__block:not(:last-child) {
    border: none;
  }
}
@media screen and (max-width: 768px) {
  .benefit-lower .benefit-lower__inner .life-event__block:not(:first-child) {
    margin-top: 21px;
  }
}
.benefit-lower .benefit-lower__inner.md-none .life-event__anno {
  display: flex;
  justify-content: start;
  font-weight: 400;
  font-size: min(0.875vw, 14px);
  line-height: 1.5;
  letter-spacing: 0;
  margin-top: 8px;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block1 {
  position: relative;
  padding-bottom: 14px;
  height: 404px;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block1 .life-event__text {
  margin-left: 4.984423676%;
  width: 80.9968847352%;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block1 .life-event__text .life-event__anno-left,
.benefit-lower .benefit-lower__inner.md-none .life-event__block1 .life-event__text .life-event__anno-right {
  width: 50%;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block2 {
  height: 274px;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block2 .life-event__step2 {
  margin-inline: 23.3644859813% 3.1152647975%;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block2 .life-event__title {
  height: auto;
  min-height: 44px;
  padding-block: 6px;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block2 .life-event__text {
  width: 59.5015576324%;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block3 {
  height: 290px;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block3 .life-event__text {
  width: 38.3177570093%;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block3 .life-event__text1 .life-event__title {
  margin-top: -25px;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block3 .life-event__text1 .flex:last-child {
  margin-top: 15px;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block3 .life-event__text2 .life-event__title {
  margin-top: -20px;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block3 .life-event__list {
  margin-left: 5%;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block3 .life-event__step3 {
  margin-left: 3.23053%;
  margin-top: -23px;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block4 {
  height: 260px;
  justify-content: end;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block4 .life-event__text {
  margin-inline: auto 0;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block4 .life-event__list {
  margin-left: 5%;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block4 .life-event__step4 {
  margin-inline: 3.1152647975% 20.2492211838%;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block5 {
  height: 260px;
  justify-content: end;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block5 .life-event__text {
  margin-inline: auto 0;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block5 .life-event__list {
  margin-left: 7%;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block5 .life-event__step5 {
  margin-inline: 3.1152647975% 0;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block6 {
  padding-top: 42px;
  align-items: start;
  -moz-column-gap: 1.7912772586%;
       column-gap: 1.7912772586%;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block6 .life-event__list {
  margin-top: 24px;
  margin-left: 0;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block6 .life-event__list > div {
  margin-top: 16px;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block6 .life-event__text1 {
  width: 23.753894081%;
  min-width: 160px;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block6 .life-event__text1 .life-event__desc {
  margin-left: 7%;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block6 .life-event__text2 {
  width: 45.7165109034%;
}
@media screen and (max-width: 1024px) {
  .benefit-lower .benefit-lower__inner.md-none .life-event__block6 .life-event__text2 {
    width: auto;
  }
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block6 .life-event__text2 .life-event__desc {
  margin-left: 4%;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block6 .life-event__text3 {
  width: 26.9470404984%;
  min-width: 160px;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block6 .life-event__text3 .life-event__desc {
  margin-top: 17px;
  text-indent: -0.2em;
  padding-left: 0.2em;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block6 .life-event6--flex {
  display: flex;
  width: 100%;
}
.benefit-lower .benefit-lower__inner.md-none .life-event__block6 .life-event6--flex div {
  width: 50%;
}
.benefit-lower .benefit-lower__inner .life-event__title {
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-inline: 1vw;
  font-size: clamp(1rem, 0.847rem + 0.65vw, 1.5rem);
  line-height: 1.5;
  letter-spacing: 0;
  color: #1F1F1F;
  background: #FFF9B0;
  border: 1px solid #004C92;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 768px) {
  .benefit-lower .benefit-lower__inner .life-event__title {
    background: transparent;
    border: none;
    font-family: "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
		font-display: swap;
    line-height: 1.5;
    letter-spacing: 0;
    display: flex;
    align-items: center;
  }
}
.benefit-lower .benefit-lower__inner .flex {
  display: flex;
  align-items: center;
}
.benefit-lower .benefit-lower__inner .cafe {
  margin-top: 8px;
}
.benefit-lower .benefit-lower__inner .life-event__head {
  font-size: clamp(1rem, 0.923rem + 0.33vw, 1.25rem);
  line-height: 1.5;
  letter-spacing: 0;
}
.benefit-lower .benefit-lower__inner .life-event__head:not(:first-child) {
  margin-top: 8px;
}
.benefit-lower .benefit-lower__inner .life-event__desc {
  font-weight: 400;
  font-size: clamp(0.625rem, 0.51rem + 0.49vw, 1rem);
  line-height: 1.5;
  margin-top: 8px;
}
@media screen and (max-width: 768px) {
  .benefit-lower .benefit-lower__inner .life-event__desc {
    margin-top: -2px;
  }
}
.benefit-lower .benefit-lower__inner .flex .life-event__desc {
  margin-top: 0;
  margin-left: 1.5%;
}
@media screen and (max-width: 768px) {
  .benefit-lower .life-event-title__container {
    display: flex;
    width: 100%;
    -moz-column-gap: 4px;
         column-gap: 4px;
    align-items: center;
  }
  .benefit-lower .head__container {
    width: 100%;
    background: #004C92;
    color: #FFFFFF;
    padding: 8px;
  }
  .benefit-lower .head__container:not(:first-child) {
    margin-top: 3px;
  }
  .benefit-lower .life-event__text {
    width: 100%;
    margin-top: 6px;
  }
  .benefit-lower .life-event__deco {
    margin-top: 6px;
    font-size: 4.2666666667vw;
    line-height: 1.5;
    letter-spacing: 0;
    color: #1F1F1F;
    background: #F3EB12;
    padding: 2.51px;
    margin-inline: 0 auto;
  }
  .benefit-lower .life-event__title2 {
    margin-top: 3px;
    font-size: 4.2666666667vw;
    line-height: 1.5;
    letter-spacing: 0;
  }
  .benefit-lower .life-event__block2 .head__container {
    padding: 6px 7px;
  }
  .benefit-lower .life-event__block3 .head__container {
    padding: 6px 7px;
  }
  .benefit-lower .life-event__block3 .life-event__desc {
    margin-top: -3px;
  }
  .benefit-lower .life-event__block3 .head__container2 {
    padding: 9px 7px 7px 7px;
  }
  .benefit-lower .life-event__block3 .head__container3 {
    margin-top: 6px;
  }
  .benefit-lower .life-event__block5 .life-event__title {
    white-space: nowrap;
    letter-spacing: -0.04em;
  }
}
@media screen and (max-width: 768px) and (max-width: 374px) {
  .benefit-lower .life-event__block5 .life-event__title {
    white-space: initial;
  }
}
@media screen and (max-width: 768px) {
  .benefit-lower .life-event__block5 .life-event__text {
    margin-top: 8px;
  }
  .benefit-lower .life-event__block5 .head__container:not(:first-child) {
    margin-top: 6px;
  }
  .benefit-lower .life-event__block.life-event__block6 {
    margin-top: 30px;
    padding: 0 !important;
    background: transparent !important;
  }
  .benefit-lower .life-event__block.life-event__block6 .life-event__text {
    margin-top: 0;
    padding: 18px 14px 10px 14px;
    background: rgba(255, 255, 255, 0.8);
  }
  .benefit-lower .life-event__block.life-event__block6 .life-event__text:not(:first-child) {
    margin-top: 21px;
  }
  .benefit-lower .life-event__block.life-event__block6 .life-event__title {
    font-size: 20px;
    line-height: 1.5;
    letter-spacing: 0;
  }
  .benefit-lower .life-event__block.life-event__block6 .life-event__head {
    margin-top: 16px;
    background: #022A50;
    color: #FFFFFF;
    text-align: center;
    padding-block: 3px 2px;
    width: 100%;
    margin-inline: auto;
  }
  .benefit-lower .life-event__block.life-event__block6 .life-event__head1 {
    margin-top: 10px;
  }
  .benefit-lower .life-event__block.life-event__block6 .life-event__anno {
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: 0;
    color: #1F1F1F;
  }
  .benefit-lower .life-event__block.life-event__block6 .life-event__desc {
    color: #1F1F1F;
    font-family: "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
		font-display: swap;
    font-weight: 400;
    font-size: 12px;
    line-height: 1.5;
    letter-spacing: 0;
    margin-block: 16px 10px;
  }
  .benefit-lower .life-event__block.life-event__block6 .life-event__desc span {
    font-weight: 700;
    font-size: 16px;
    padding-left: 6px;
  }
  .benefit-lower .life-event__block.life-event__block6 .life-event__desc ul {
    margin-inline: 22px 9px;
  }
  .benefit-lower .life-event__block.life-event__block6 .life-event__desc li {
    position: relative;
  }
  .benefit-lower .life-event__block.life-event__block6 .life-event__desc li:not(:last-child) {
    padding-bottom: 8px;
  }
  .benefit-lower .life-event__block.life-event__block6 .life-event__desc li::before {
    position: absolute;
    top: 8px;
    left: -11px;
    width: 4px;
    aspect-ratio: 1;
    content: "";
    border-radius: 50%;
    background-color: #1F1F1F;
  }
  .benefit-lower .life-event__block.life-event__block6 .life-event__desc2 ul {
    margin-top: 8px;
  }
}

.cta2 {
  position: relative;
  padding-block: 24px 24.4px;
  background: #F3EB12;
  z-index: 1;
}
.cta2::before {
  position: absolute;
  content: "";
  bottom: 0;
  z-index: 1;
}
.cta2 h2 {
  position: absolute;
  width: -moz-fit-content;
  width: fit-content;
  top: -105px;
  right: 8vw;
  font-size: clamp(1rem, 0.082rem + 3.92vw, 4rem);
  line-height: 1.2;
  letter-spacing: 0.03em;
  color: #022A50;
  transform: skewX(-10deg);
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .cta2 h2 {
    right: inherit;
    left: 4.2666666667vw;
    line-height: 1.4;
    letter-spacing: 0.03em;
    top: -25.0666666667vw;
    left: 6%;
    color: black;
    -webkit-text-stroke: 8px #FFFFFF;
    text-stroke: 8px #FFFFFF;
    paint-order: stroke;
  }
}
.cta2::before {
  width: 28.13875vw;
  height: 24.15375vw;
  left: -0.5%;
  background: url(../img/cta/men.webp) center center/cover no-repeat;
}
@media screen and (max-width: 768px) {
  .cta2::before {
    width: 66.6666666667vw;
    height: 61.3333333333vw;
    top: -49.8666666667vw;
    left: initial;
    right: -1.666667vw;
    z-index: 1;
  }
}
.cta2 .cta__lower {
  position: relative;
  margin-top: -25px;
  background-color: #F3EB12;
  padding-block: 58px 35px;
}
@media screen and (max-width: 768px) {
  .cta2 .cta__lower {
    z-index: 1;
    margin-top: -24px;
    padding-block: 24px 0px;
  }
}
.cta2 .inner-cta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-left: 12.4375%;
  margin-right: 4%;
  max-width: 1600px;
}
@media screen and (max-width: 1279px) {
  .cta2 .inner-cta {
    margin-right: 15px;
  }
}
@media screen and (max-width: 768px) {
  .cta2 .inner-cta {
    flex-direction: column;
    margin-inline: auto;
    width: 82.6666666667vw;
  }
}
.cta2 .cta-title__container {
  position: relative;
  background-image: url(../img/cta/fukidashi.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
  z-index: 4;
  width: auto;
  height: 100%;
  max-height: 75px;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .cta2 .cta-title__container {
    background-image: url(../img/cta/fukidashi-sp.webp);
    width: 100%;
    max-height: initial;
  }
}
.cta2 .cta-title {
  font-size: clamp(0.938rem, 0.188rem + 1.56vw, 1.75rem);
  line-height: 1.2;
  letter-spacing: 0.03em;
  color: #3347CE;
  transform: skewX(-10deg);
  padding: 16px 16px 16px 32px;
}
@media screen and (max-width: 1600px) {
  .cta2 .cta-title {
    padding: 1vw 1vw 1vw 2vw;
  }
}
@media screen and (max-width: 768px) {
  .cta2 .cta-title {
    width: 84vw;
    height: 16.1333333333vw;
    font-size: 5.3333333333vw;
    padding: 3.0053333333vw 3.2986666667vw;
  }
}
.cta2 .button {
  z-index: 4;
}
@media screen and (max-width: 768px) {
  .cta2 .button {
    width: 100%;
    padding-left: 8.3870967742%;
  }
}
.cta2 .button1 {
  margin-left: 4vw;
}
@media screen and (max-width: 768px) {
  .cta2 .button1 {
    margin-left: 0;
    margin-top: -1px;
  }
}
@media screen and (max-width: 768px) {
  .cta2 .button2 {
    margin-top: 8px;
  }
}
.cta2 .button2::hover {
  color: #FFFFFF;
}

.message {
  position: relative;
}
.message::after {
  position: absolute;
  content: "";
  width: 925px;
  height: 1985px;
  transform: skewX(29deg);
  left: 22%;
  top: 0;
  background: linear-gradient(359.98deg, #016FFE 0.04%, rgba(1, 111, 254, 0.2) 99.96%);
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .message::after {
    width: 224px;
    height: 1200px;
    transform: skewX(29.5deg);
    left: 54%;
    top: 0;
  }
}
.message .message__bg {
  position: relative;
  width: 100%;
  height: 100%;
  padding-top: 160px;
}
@media screen and (max-width: 768px) {
  .message .message__bg {
    padding-top: 27px;
  }
}
.message .message__bg::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 80%;
  left: 0;
  bottom: 0;
  background: linear-gradient(360deg, #016FFE 0%, rgba(1, 111, 254, 0) 100%);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom;
}
.message .message__bg::after {
  position: absolute;
  content: "";
  width: 87.5625vw;
  height: 102.3125vw;
  max-width: 1401px;
  max-height: 1637px;
  right: 0;
  bottom: 0;
  background: url(../img/message/bg.webp) center center/cover no-repeat;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .message .message__bg::after {
    width: 75.7333333333vw;
    height: 87.8vw;
    bottom: initial;
    top: -47px;
    background-image: url(../img/message/bg-sp.webp);
  }
}
.message .message__inner {
  padding-top: 66px;
}
@media screen and (max-width: 768px) {
  .message .message__inner {
    padding-top: 16px;
  }
}
.message .message__text {
  font-size: min(2.1875vw, 35px);
  line-height: 1.2;
  letter-spacing: 0.03em;
  color: #3347CE;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  padding-top: 1vw;
  transform: skewX(-10deg);
  margin-left: 9.8125vw;
}
@media screen and (max-width: 1024px) {
  .message .message__text {
    font-size: clamp(1.125rem, 0.8rem + 1.39vw, 2.188rem);
    padding-top: 20px;
  }
}
@media screen and (max-width: 768px) {
  .message .message__text {
    margin-inline: auto;
    padding-top: 2.333333vw;
  }
}
.message .message__text::after {
  position: absolute;
  content: "";
  width: 35.490625vw;
  height: 6.7vw;
  left: 50%;
  translate: -50% 0;
  top: 0;
  background: url(../img/message/fukidashi.webp) center center/cover no-repeat;
  z-index: -1;
  transform: skewX(10deg);
}
@media screen and (max-width: 1024px) {
  .message .message__text::after {
    width: 500px;
    height: 94.3911244167px;
  }
}
@media screen and (max-width: 768px) {
  .message .message__text::after {
    width: 75.712vw;
    height: 14.2933333333vw;
    background: url(../img/message/fukidashi-sp.webp) center center/cover no-repeat;
  }
}
.message .message__text.inview.fadeup {
  transform: skewX(-10deg) translateY(40px);
}
.message .message__text.inview.fadeup.active {
  transform: skewX(-10deg) translateY(0px);
}
.message .message-man {
  position: absolute;
  bottom: -79px;
  right: 2px;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .message .message-man {
    bottom: -13px;
    right: 0;
  }
}
.message .message-man img {
  aspect-ratio: 1500/1714;
  -o-object-fit: cover;
     object-fit: cover;
  height: 53.5625vw;
  max-height: 857px;
  width: auto;
}
@media screen and (max-width: 768px) {
  .message .message-man img {
    aspect-ratio: 246/388;
    height: 51.7333333333vw;
  }
}
.message .message-faqs__container {
  position: relative;
  margin-top: 22px;
  padding-top: 3.125vw;
  margin-left: -2vw;
  background-image: url(../img/message/iphone.webp);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50% 50%;
  width: 58.663125vw;
}
@media screen and (max-width: 768px) {
  .message .message-faqs__container {
    margin-top: 15px;
    padding-top: 8vw;
    margin-inline: auto;
    width: 100%;
    height: 167.7vw;
    background-image: url(../img/message/iphone-sp.webp);
  }
}
.message .message-faqs {
  position: relative;
  padding-top: 2vw;
  padding-inline: 1.25vw;
  height: 67.5vw;
  width: 82%;
  margin: 6.25vw auto 0;
  display: flex;
}
@media screen and (max-width: 768px) {
  .message .message-faqs {
    padding-inline: 0;
    padding-top: 5vw;
  }
}
.message .message-faqs-content {
  width: calc(100% - 1vw);
  padding-inline: 0.5vw 1.25vw;
  overflow-y: scroll;
  height: 100%;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
@media screen and (max-width: 768px) {
  .message .message-faqs-content {
    padding-inline: 1.2vw 2.1vw;
    height: 238%;
    width: calc(100% - 2.096vw);
  }
}
.message .message-faqs-content::-webkit-scrollbar {
  display: none;
}
.message .custom-scrollbar {
  margin-top: 44px;
  height: calc(100% - 44px);
  width: 1vw;
  background: #FFFFFF;
  position: relative;
  flex-shrink: 0;
  opacity: 1;
  transition: none;
}
@media screen and (max-width: 768px) {
  .message .custom-scrollbar {
    height: 232%;
    width: 2.096vw;
    margin-top: 14px;
  }
}
.message .custom-thumb {
  background-color: #022A50;
  width: 100%;
  height: 17.5vw;
  position: absolute;
  top: 0;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .message .custom-thumb {
    height: 28.616vw;
  }
}
.message .message-faq:not(:first-child) {
  margin-top: 2.75vw;
}
@media screen and (max-width: 768px) {
  .message .message-faq:not(:first-child) {
    margin-top: 6vw;
  }
}
.message .message-faq:last-child {
  padding-bottom: 2.75vw;
}
.message .p-card {
  display: flex;
}
@media screen and (max-width: 768px) {
  .message .p-card {
    justify-content: space-between;
  }
}
.message .p-card:not(:first-child) {
  margin-top: 2.3vw;
}
@media screen and (max-width: 768px) {
  .message .p-card:not(:first-child) {
    margin-top: 4.3vw;
  }
}
.message .p-card__img {
  display: flex;
  align-items: center;
  justify-content: center;
}
.message .p-card__img img {
  aspect-ratio: 184/185;
  -o-object-fit: cover;
     object-fit: cover;
  width: 5.625vw;
  height: 5.625vw;
}
@media screen and (max-width: 768px) {
  .message .p-card__img img {
    aspect-ratio: 1/1;
    width: 9.0373333333vw;
    height: 9.0373333333vw;
  }
}
.message .p-card__body {
  width: 38vw;
  display: flex;
  align-items: center;
  border-radius: 1.5vw;
}
@media screen and (max-width: 768px) {
  .message .p-card__body {
    width: 85.7%;
    padding: 1.6vw 4.5333333333vw 2.6666666667vw 1.8666666667vw;
  }
}
.message .p-card__text {
  font-family: "Noto Sans JP", sans-serif;
	font-display: swap;
  font-weight: 500;
  font-size: clamp(0.813rem, 0.602rem + 0.9vw, 1.5rem);
  line-height: 1.85;
  letter-spacing: 0;
}
.message .message-question {
  margin-top: 4vw;
  margin-inline: 0 auto;
}
.message .message-question .p-card__body {
  color: #1F1F1F;
  margin-left: 0.625vw;
  background-color: #FFFFFF;
  padding: 1.0625vw 0.9vw 0.525vw 1vw;
  box-shadow: 0px 0.97px 0.97px 0px rgba(8, 39, 199, 0.2509803922);
}
@media screen and (max-width: 768px) {
  .message .message-question .p-card__body {
    margin-left: 0;
    padding: 1.0625vw 3.9vw 2.525vw 1.7vw;
  }
}
.message .message-answer {
  margin-inline: auto 0;
  justify-content: end;
}
@media screen and (max-width: 768px) {
  .message .message-answer {
    justify-content: space-between;
  }
}
@media screen and (max-width: 768px) {
  .message .message-answer .message-faqs-content {
    padding-inline: 0.3vw 2.1vw;
  }
}
.message .message-answer .p-card__img {
  margin-left: 0.625vw;
}
@media screen and (max-width: 768px) {
  .message .message-answer .p-card__img {
    margin-left: 0;
  }
}
.message .message-answer .p-card__body {
  background-color: #022A50;
  color: #FFFFFF;
  padding: 1.5vw 1vw 1.3vw 1.5vw;
  border: 3px solid #F3EB12;
  box-shadow: 0px 3px 6px 0px #234168;
}
@media screen and (max-width: 768px) {
  .message .message-answer .p-card__body {
    border: 2px solid #F3EB12;
    padding: 2.0625vw 3.9vw 3.525vw 1.7vw;
  }
}

.on-site {
  position: relative;
  z-index: 1;
  background-image: url(../img/on-site/bg.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
  padding-block: 122px 122px;
}
@media screen and (max-width: 768px) {
  .on-site {
    padding-block: 32px 47px;
  }
}
.on-site .on-site__container {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .on-site .on-site__container {
    flex-direction: column;
    width: 91.4666666667vw;
  }
}
.on-site .section-title {
  font-family: "Noto Serif JP", sans-serif;
	font-display: swap;
  font-weight: 700;
  font-size: clamp(2.25rem, 1.093rem + 2.41vw, 3.5rem);
  letter-spacing: -0.02em;
  transform: skewX(-10deg);
  margin-left: 2.8%;
}
@media screen and (max-width: 768px) {
  .on-site .section-title {
    font-size: 9.0666666667vw;
    margin-left: -0.2%;
  }
}
.on-site .on-site__movie {
  aspect-ratio: 560/310;
  -o-object-fit: cover;
     object-fit: cover;
  width: auto;
  height: 31.4375vw;
  max-height: 503px;
  margin-left: 20px;
}
@media screen and (max-width: 768px) {
  .on-site .on-site__movie {
    margin-left: 0;
    margin-top: 31.48px;
    width: 100%;
    height: auto;
  }
}

.person {
  position: relative;
  padding-block: 194px 160px;
}
@media screen and (max-width: 768px) {
  .person {
    padding-block: 78px 80px;
  }
}
.person::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 140%;
  height: 110%;
  background: linear-gradient(0deg, rgba(1, 111, 254, 0) 0%, #016FFE 100%);
  background-blend-mode: overlay;
  z-index: -2;
  pointer-events: none;
}
.person::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(0deg, rgba(1, 111, 254, 0) 0%, #016FFE 100%), url("../img/person/person_bg.webp") no-repeat center center/cover;
  background-blend-mode: overlay;
  z-index: -1;
  pointer-events: none;
  will-change: transform;
  transform: translateY(0);
  mask-image: linear-gradient(to top, transparent 0%, black 40%, black 90%, transparent 100%);
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
  -webkit-mask-image: linear-gradient(to top, transparent 0%, black 40%, black 90%, transparent 100%);
  -webkit-mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  .person::before {
    background-position: bottom right;
  }
}
.person .p-person {
  padding-top: 1px;
  margin-top: 9px;
}
@media screen and (max-width: 768px) {
  .person .p-person {
    margin-top: -183px;
  }
}
.person .p-person__cardWrap {
  margin-top: 100px;
  display: flex;
  justify-content: space-between;
  width: 100%;
  gap: 5px;
  padding-inline: 67px 66px;
}
@media screen and (max-width: 1024px) {
  .person .p-person__cardWrap {
    margin-top: 52px;
    flex-direction: column;
    gap: 40px;
    padding-inline: 14px 18px;
  }
}
.person .p-person__card {
  max-width: 700px;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .person .p-person__card {
    margin-inline: auto;
  }
}
.person .p-person__cardImgWrap {
  position: relative;
  margin-inline: 7px clamp(0px, 3.3vw, 53px);
}
@media screen and (max-width: 1024px) {
  .person .p-person__cardImgWrap {
    margin-inline: 0;
  }
}
.person .p-person__cardImgText {
  position: absolute;
  top: 21px;
  left: 12px;
  display: flex;
  flex-direction: column;
  gap: clamp(6px, 1vw, 16px);
}
@media screen and (max-width: 1279px) {
  .person .p-person__cardImgText {
    top: 0;
    left: -5px;
    gap: clamp(5px, 1vw, 16px);
  }
}
.person .p-person__cardImgText .u-skew {
  display: inline-block;
  width: -moz-fit-content;
  width: fit-content;
  background-color: #fff;
  padding-block: clamp(2px, 0.625vw, 10px);
  color: #171717;
  font-size: clamp(22px, 2.1vw, 33px);
  line-height: 1.4;
  letter-spacing: -0.02em;
  transform: skewX(-8deg);
}
@media screen and (max-width: 1024px) {
  .person .p-person__cardImgText .u-skew {
    font-size: clamp(22px, 3vw, 30px);
    padding-block: 4.5px 2px;
    letter-spacing: 0.08em;
  }
}
.person .p-person__cardImgText .u-skew1 {
  padding-inline: 0.7225vw;
}
@media screen and (max-width: 768px) {
  .person .p-person__cardImgText .u-skew1 {
    margin-left: 10px;
  }
}
.person .p-person__cardImgText .u-skew2 {
  padding-inline: 2.423125vw;
}
@media screen and (max-width: 768px) {
  .person .p-person__cardImgText .u-skew2 {
    padding-inline: 1.5vw;
  }
}
.person .p-person__cardImgText .u-skew3 {
  margin-left: -6px;
  padding-inline: 0.7225vw;
}
@media screen and (max-width: 768px) {
  .person .p-person__cardImgText .u-skew3 {
    margin-left: 7px;
    padding-inline: 1.5vw;
  }
}
.person .p-person__cardImgText .u-skew4 {
  margin-left: -5px;
  padding-inline: 1.423125vw;
}
@media screen and (max-width: 768px) {
  .person .p-person__cardImgText .u-skew4 {
    margin-left: 1px;
    padding-inline: 1.5vw;
  }
}
.person .p-person__cardImg {
  max-width: 645px;
  width: 100%;
}
.person .p-person__cardImg img {
  width: 100%;
  height: auto;
}
.person .p-person__cardText {
  margin-top: -50px;
  margin-inline: auto 0;
  width: 79.0697674419%;
  max-width: 510px;
  min-width: 300px;
  padding: 24px 40px;
  padding: clamp(8px, 1.5vw, 24px) clamp(16px, 2.5vw, 40px);
  background: #FFF;
  box-shadow: 16px 30px 30px 0px rgba(2, 42, 80, 0.21);
  position: relative;
  z-index: 1;
  min-height: 344px;
  height: auto;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 1279px) {
  .person .p-person__cardText {
    width: 89%;
    margin-top: -25px;
    margin-inline: auto;
    min-height: auto;
    padding: 3vw 4.2666666667vw 1.8vw 4.2666666667vw;
  }
}
.person .p-person__cardText p {
  color: #171717;
  font-family: "Noto Sans JP", sans-serif;
	font-display: swap;
  font-size: clamp(14px, 1.6vw, 20px);
  font-weight: 500;
  line-height: 1.85;
}

.faq {
  /* 本文のスムーズ開閉 */
  /* ＋↔ーアニメーション */
}
.faq .p-faq__accordion {
  margin-top: 100px;
}
@media screen and (max-width: 768px) {
  .faq .p-faq__accordion {
    margin-top: 40px;
  }
}
.faq .c-accordionWrap {
  display: flex;
  flex-direction: column;
  gap: clamp(12.5px, 2.5vw, 40px);
  align-items: center;
}
@media screen and (max-width: 768px) {
  .faq .c-accordionWrap {
    gap: 23.5px;
  }
}
.faq .c-accordionWrap summary {
  display: block;
}
.faq .c-accordionWrap summary::-webkit-details-marker {
  display: none;
}
.faq .c-accordion {
  position: relative;
  max-width: 1100px;
  width: 100%;
  border-radius: clamp(3.7px, 0.75vw, 12px);
  background: #BCD9FF;
}
.faq .c-accordion.is-opened .c-accordion__headButton::before {
  transform: translate(-50%, -50%) rotate(0deg);
}
.faq .c-accordion__head {
  padding: clamp(16px, 1.5vw, 24px) clamp(8px, 1.5vw, 24px);
}
@media screen and (max-width: 768px) {
  .faq .c-accordion__head {
    padding: clamp(16px, 1.5vw, 24px) clamp(8px, 1.5vw, 24px) 12px clamp(8px, 1.5vw, 24px);
  }
}
.faq .c-accordion__headWrapper {
  cursor: pointer;
  display: flex;
  flex-direction: row;
  gap: clamp(7.5px, 1.5vw, 24px);
  align-items: center;
}
.faq .c-accordion__headItem:last-child {
  margin-left: auto;
}
.faq .c-accordion__headIcon {
  width: clamp(25px, 5vw, 80px);
  height: clamp(25px, 5vw, 80px);
  flex-shrink: 0;
}
.faq .c-accordion__headText {
  font-size: clamp(1.25rem, 0.982rem + 1.14vw, 2.125rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  background: linear-gradient(180deg, #2E83D2 0%, #331E93 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.faq .c-accordion__headText2 {
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .faq .c-accordion__headText:nth-child(2) {
    width: 150%;
  }
}
.faq .c-accordion__headButton {
  position: relative;
  width: clamp(29px, 3vw, 46px);
  height: clamp(29px, 3vw, 46px);
  transition: transform 0.3s ease;
}
.faq .c-accordion__headButton::before,
.faq .c-accordion__headButton::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: clamp(15px, 2.5vw, 36px);
  height: clamp(2px, 0.3vw, 4px);
  content: "";
  background: linear-gradient(180deg, #2E83D2 0%, #331E93 100%);
  border-radius: 50px;
  transition: transform 0.3s;
  transform: translate(-50%, -50%);
}
.faq .c-accordion__headButton::before {
  transform: translate(-50%, -50%) rotate(90deg);
  background: linear-gradient(90deg, #2E83D2 0%, #331E93 100%);
}
.faq .c-accordion.is-opened .c-accordion__headButton::before {
  transform: translate(-50%, -50%);
}
.faq .c-accordion__bodyWrapper {
  padding: 0 clamp(8px, 1.5vw, 24px) clamp(16px, 1.5vw, 24px) clamp(36px, 7.1vw, 114px);
}
.faq .c-accordion__bodyText {
  color: #171717;
  font-size: clamp(0.875rem, 0.684rem + 0.82vw, 1.5rem);
  font-weight: 700;
  line-height: 2.1;
  letter-spacing: -0.02em;
}
.faq .c-accordion__body {
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  transition: max-height 0.4s ease, opacity 0.4s ease;
}
.faq .c-accordion[open] .c-accordion__body {
  max-height: 500px;
  opacity: 1;
}
.faq .c-accordion__headButton {
  position: relative;
  width: 48px;
  height: 48px;
  transition: transform 0.3s ease;
}
.faq .c-accordion__headButton::before,
.faq .c-accordion__headButton::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: clamp(15px, 2.3vw, 36px);
  height: clamp(2px, 0.3vw, 4px);
  background: linear-gradient(180deg, #2E83D2 0%, #331E93 100%);
  border-radius: 50px;
  transition: transform 0.3s ease;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 768px) {
  .faq .c-accordion__headButton::before,
  .faq .c-accordion__headButton::after {
    left: auto;
    right: -7px;
  }
}
.faq .c-accordion__headButton::before {
  transform: translate(-50%, -50%) rotate(90deg);
  background: linear-gradient(90deg, #2E83D2 0%, #331E93 100%);
}
.faq .c-accordion.is-opened .c-accordion__headButton::before {
  transform: translate(-50%, -50%) rotate(0deg);
}

.footer {
  overflow-x: hidden;
}
.footer .footer__upper .c-slider {
  display: flex;
  position: relative;
  flex-direction: column;
  width: 100%;
  margin-top: 121px;
  overflow: hidden;
  gap: 32px;
  --item-width: clamp(183px, 32vw, 514px);
  --item-margin: clamp(10px, 1.8vw, 29px);
  --total-items: 9;
}
@media screen and (max-width: 768px) {
  .footer .footer__upper .c-slider {
    margin-top: 40px;
    gap: 13px;
  }
}
.footer .footer__upper .c-slider__wrapTop, .footer .footer__upper .c-slider__wrapBottom {
  display: flex;
  animation: slideLoop 50s linear infinite;
}
.footer .footer__upper .c-slider__wrapBottom {
  animation-direction: reverse;
}
.footer .footer__upper .c-slider__item {
  box-sizing: border-box;
  flex: 0 0 auto;
  width: var(--item-width);
  margin-right: var(--item-margin);
}
.footer .footer__upper .c-slider__item img {
  display: block;
  width: 100%;
  height: auto;
}
@keyframes slideLoop {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc((var(--item-width) + var(--item-margin)) * var(--total-items) * -1));
  }
}
.footer .footer__lower {
  position: relative;
  padding-block: 22px 221px;
  background-color: #FFFFFF;
}
.footer .footer__lower::after {
  position: absolute;
  content: "";
  left: 50%;
  translate: -50% 0;
  bottom: 0;
  width: 100%;
  height: 65%;
  background: url(../img/footer/bg.webp);
  background-repeat: no-repeat;
  background-size: cover;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .footer .footer__lower {
    padding-block: 40px 105px;
  }
}
.footer .footer__lower .footer__lower__container {
  position: relative;
  z-index: 1;
  margin-inline: auto;
}
.footer .footer__lower .footer-title__container {
  margin-top: 178px;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  transform: rotate(-8.5deg);
}
@media screen and (max-width: 768px) {
  .footer .footer__lower .footer-title__container {
    margin-top: 19px;
  }
}
.footer .footer__lower .footer-title {
  opacity: 1;
  line-height: 1;
  letter-spacing: 0;
  transform: skewX(-8.5deg);
}
.footer .footer__lower .footer-title .footer-title__bg {
  display: block;
  background: #072681;
  width: -moz-fit-content;
  width: fit-content;
}
.footer .footer__lower .footer-title .footer-title1 {
  padding-top: 7px;
  font-size: clamp(1.438rem, 0.596rem + 3.59vw, 4.188rem);
  line-height: 1.1;
  transform: skewX(-5deg);
  color: #072681;
}
@media screen and (max-width: 768px) {
  .footer .footer__lower .footer-title .footer-title1 {
    padding-top: 0.5333333333vw;
    font-size: 6.1733333333vw;
  }
}
.footer .footer__lower .footer-title .footer-title2 {
  font-size: clamp(3.313rem, 1.361rem + 8.33vw, 9.688rem);
  transform: skewX(-5deg);
  margin-left: 6px;
  color: #072681;
}
@media screen and (max-width: 768px) {
  .footer .footer__lower .footer-title .footer-title2 {
    font-size: 14.2453333333vw;
    margin-left: 0.8vw;
  }
}
.footer .footer__lower .footer-title .footer-title3 {
  font-size: clamp(2.5rem, 1.046rem + 6.2vw, 7.25rem);
}
@media screen and (max-width: 768px) {
  .footer .footer__lower .footer-title .footer-title3 {
    font-size: 10.6826666667vw;
  }
}
.footer .footer__lower .footer-title .footer-title4 {
  font-size: clamp(2.5rem, 1.046rem + 6.2vw, 7.25rem);
  padding-left: 6px;
  margin-left: -6px;
}
@media screen and (max-width: 768px) {
  .footer .footer__lower .footer-title .footer-title4 {
    font-size: 10.6826666667vw;
  }
}
.footer .footer__lower .footer-title .footer-title5 {
  font-size: clamp(2.5rem, 1.065rem + 6.12vw, 7.188rem);
  letter-spacing: -0.07em;
  margin-left: -0.625vw;
  padding-right: 0.9375vw;
}
@media screen and (max-width: 768px) {
  .footer .footer__lower .footer-title .footer-title5 {
    font-size: 10.5653333333vw;
    margin-left: -1.625vw;
  }
}
.footer .footer__lower .footer-title .footer-title6 {
  font-size: clamp(3.313rem, 1.361rem + 8.33vw, 9.688rem);
  letter-spacing: 0.04em;
  margin-left: 6px;
}
@media screen and (max-width: 768px) {
  .footer .footer__lower .footer-title .footer-title6 {
    font-size: 14.2453333333vw;
    margin-left: 0;
  }
}
.footer .footer__lower .footer-title .footer-title__upper {
  display: flex;
  align-items: center;
  margin-left: 10px;
}
@media screen and (max-width: 768px) {
  .footer .footer__lower .footer-title .footer-title__upper {
    margin-left: 2.1333333333vw;
  }
}
.footer .footer__lower .footer-title .footer-title__middle {
  margin: -15px 0 0 -13px;
  padding: 8px 2.8vw 0px 0.1vw;
}
@media screen and (max-width: 768px) {
  .footer .footer__lower .footer-title .footer-title__middle {
    margin: -20px 0 0 0.266667vw;
    padding: 4px 3.5vw 0;
  }
}
@media screen and (max-width: 768px) {
  .footer .footer__lower .footer-title .footer-title__middle .footer-title3 {
    margin-left: -1.4vw;
  }
}
.footer .footer__lower .footer-title .footer-title__lower {
  margin: -9px 0 0 -1vw;
  padding: 8px 0.9vw 14px 0.15vw;
}
@media screen and (max-width: 1279px) {
  .footer .footer__lower .footer-title .footer-title__lower {
    margin-top: -10px;
  }
}
@media screen and (max-width: 768px) {
  .footer .footer__lower .footer-title .footer-title__lower {
    margin: -19px 0 0 0;
    padding: 3px 0.8vw 0.15vw;
  }
}
.footer .footer__lower .footer-title .footer-title__yellow {
  color: #F3EB12;
}
.footer .footer__lower .cta-box {
  margin-top: 97px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .footer .footer__lower .cta-box {
    margin-top: 21px;
  }
}
.footer .footer__lower .cta-box-title {
  font-size: 61.52px;
  line-height: 1.2;
  letter-spacing: 0.03em;
}
.footer .footer__lower .button0 {
  display: none;
}
@media screen and (max-width: 768px) {
  .footer .footer__lower .button0 {
    margin-top: 55px;
    display: flex;
    padding: 2.992vw;
    font-size: 5.3333333333vw;
    line-height: 1.2;
    letter-spacing: 0.03em;
    text-align: center;
    color: #3347CE;
    width: 82.6666666667vw;
    height: 16.1333333333vw;
    background: url(../img/footer/fukidashi.webp) center center/cover no-repeat;
  }
  .footer .footer__lower .button0 span {
    transform: skewX(-10deg);
  }
}
.footer .footer__lower .button {
  width: 46.25vw;
  height: 8.856875vw;
  padding: 1.85vw 5.0875vw;
  font-size: clamp(1.125rem, 0.551rem + 2.45vw, 3rem);
}
.footer .footer__lower .button::after {
  width: 6.200625vw;
  height: 6.200625vw;
  right: 1.705vw;
}
.footer .footer__lower .button:hover {
  transform: scale(1.1);
}
.footer .footer__lower .button1 {
  margin-top: 7.5625vw;
  min-width: 310px;
  min-height: 49px;
}
@media screen and (max-width: 768px) {
  .footer .footer__lower .button1 {
    padding-left: 7%;
    margin-top: 0;
    width: 82.6666666667vw;
    height: 13.0666666667vw;
  }
}
.footer .footer__lower .button2 {
  margin-top: 1vw;
  min-width: 310px;
  min-height: 49px;
}
@media screen and (max-width: 768px) {
  .footer .footer__lower .button2 {
    padding-left: 7%;
    margin-top: 8.41px;
    width: 82.6666666667vw;
    height: 13.0666666667vw;
  }
}
@media screen and (max-width: 374px) {
  .footer .footer__lower .button0, .footer .footer__lower .button1, .footer .footer__lower .button2 {
    width: 85vw;
    min-width: initial;
    min-height: initial;
  }
}