@charset "UTF-8";
/* l-header
---------------------------------------------------------------------------- */
.l-header__inner {
  padding-inline: 2.0833333333% 2.6041666667%;
}

.l-header-box {
  display: flex;
  align-items: center;
  gap: 0 2rem;
}

.l-header-box-txt {
  font-size: 2rem;
  line-height: 1.44;
  letter-spacing: 0.05em;
  font-weight: 700;
  color: #032B7A;
}

@media screen and (max-width: 767px) {
  .l-header__inner {
    padding-inline: 5.3333333333vw;
  }
  .l-header-box {
    display: block;
  }
  .l-header-box-txt {
    display: none;
  }
}
/* l-gnav
---------------------------------------------------------------------------- */
.l-gnav__nav._ai {
  gap: 0 min(2.0833333333vw, 36px);
}

.l-gnav__nav-list._ai {
  gap: 0 min(1.875vw, 36px);
}

.l-gnav-button {
  width: min(18.6111111111vw, 268px);
  margin-bottom: 0.5rem;
}

.l-gnav-btn {
  width: 100%;
  height: 5.6rem;
  border-radius: 10vmax;
  border: 0.3rem solid currentColor;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  background-image: linear-gradient(180deg, #FEB202 0, #F18627 100%);
  background-repeat: no-repeat;
  box-shadow: 0 0.5rem 0 #A55103;
  transition: transform 0.3s ease 0s, box-shadow 0.3s ease 0s;
}
.l-gnav-btn:hover {
  transform: translateY(0.5rem);
  box-shadow: 0 0 0 #A55103;
  opacity: 1;
}

.l-gnav-btn ._icon {
  display: none;
}

.l-gnav-btn ._txt {
  font-size: 1.6rem;
  line-height: 2.0625;
  font-weight: 700;
  padding-bottom: 0.3rem;
}

@media screen and (max-width: 767px) {
  .l-gnav__nav._ai {
    gap: initial;
  }
  .l-gnav__nav-list._ai {
    gap: initial;
  }
  .l-gnav-button {
    width: 100%;
    margin-bottom: initial;
    margin-top: 8vw;
  }
  .l-gnav-btn {
    height: 20.5333333333vw;
    border-width: 1.0666666667vw;
    gap: 0 2.6666666667vw;
    box-shadow: 0 1.3333333333vw 0 #A55103;
  }
  .l-gnav-btn:hover {
    transform: translateY(1.3333333333vw);
  }
  .l-gnav-btn ._icon {
    display: block;
    width: 6.4vw;
    height: 4.8vw;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url(./../../images/ai/icn_mail.svg);
    margin-top: 0.5333333333vw;
  }
  .l-gnav-btn ._txt {
    font-size: 4.8vw;
    padding-bottom: 0.5333333333vw;
  }
}
/* l-footer
---------------------------------------------------------------------------- */
.l-footer {
  padding-block: 1.3rem;
  background-color: #393939;
}

.l-footer-inner {
  padding-inline: 2rem;
}

.l-footer-copy {
  font-size: 1.2rem;
  line-height: 1;
  letter-spacing: 0.03em;
  font-weight: 500;
  color: #fff;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .l-footer {
    padding-block: 3.4666666667vw;
  }
  .l-footer-inner {
    padding-inline: 5.3333333333vw;
  }
  .l-footer-copy {
    font-size: 3.2vw;
  }
}
/* l-following-bnr
---------------------------------------------------------------------------- */
.l-following-bnr {
  display: none;
}

/* 下層ページ共通（m-ai）
---------------------------------------------------------------------------- */
/* m-ai-ttl
---------------------------------------------------------------------------- */
.m-ai-ttl {
  width: fit-content;
  margin-inline: auto;
  position: relative;
}

.m-ai-ttl-en {
  font-family: "orpheus-pro-condensed", sans-serif;
  font-size: 22.2rem;
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 700;
  line-height: 0.75;
  text-transform: uppercase;
  text-align: center;
}
.m-ai-ttl-en._reason, .m-ai-ttl-en._writer, .m-ai-ttl-en._flow, .m-ai-ttl-en._contact {
  color: rgba(227, 237, 255, 0.6);
}
.m-ai-ttl-en._works, .m-ai-ttl-en._faq {
  color: #EBEBEB;
}
.m-ai-ttl-en._plan {
  color: #fff;
}

.m-ai-ttl-sub-jp {
  position: absolute;
  top: 6rem;
  left: 50%;
  transform: translateX(-50%);
  font-size: 2rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 900;
  text-align: center;
  width: max-content;
  padding-block: 0.8rem;
  padding-inline: 1.85rem;
  border-radius: 0.4rem;
  background-color: #fff;
  filter: drop-shadow(0 0 1rem rgba(24, 67, 151, 0.18));
}
.m-ai-ttl-sub-jp span {
  display: inline-block;
  background-image: linear-gradient(180deg, #FEB202 0, #F18627 100%);
  background-repeat: no-repeat;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.m-ai-ttl-sub-jp em {
  font-family: "Bebas Neue", sans-serif;
  font-size: 4.2rem;
  line-height: 0.8;
  display: inline-block;
  margin-inline: 0.1em;
}
.m-ai-ttl-sub-jp small {
  display: inline-block;
  transform: rotate(10deg);
}

.m-ai-ttl-sub-jp::after {
  content: "";
  position: absolute;
  top: calc(100% - 1px);
  left: 50%;
  transform: translateX(-50%);
  width: 2.4rem;
  height: 1.5rem;
  background-color: #fff;
  clip-path: polygon(50% 1.5rem, 0% 0%, 2.4rem 0%);
}

.m-ai-ttl-jp {
  font-size: 4.6rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 900;
  text-align: center;
  margin-top: -5rem;
  background-image: linear-gradient(180deg, #1043AC 0, #032B7A 100%);
  background-repeat: no-repeat;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 767px) {
  .m-ai-ttl-en {
    font-size: 23.7333333333vw;
    letter-spacing: 0.05em;
  }
  .m-ai-ttl-en._contact {
    letter-spacing: normal;
  }
  @supports (-moz-appearance: none) {
    .m-ai-ttl-en._contact {
      letter-spacing: -0.005em;
    }
  }
  @supports (-webkit-hyphens: none) {
    .m-ai-ttl-en._contact {
      letter-spacing: -0.005em;
    }
  }
  .m-ai-ttl-sub-jp {
    top: 13.8666666667vw;
    font-size: 4.8vw;
    padding-block: 2.5333333333vw;
    padding-inline: 5.2vw;
    border-radius: 1.0666666667vw;
    filter: drop-shadow(0 0 2.6666666667vw rgba(24, 67, 151, 0.18));
  }
  .m-ai-ttl-sub-jp em {
    font-size: 10.6666666667vw;
  }
  .m-ai-ttl-sub-jp._flow {
    padding-block: 1.6vw 1.0666666667vw;
  }
  .m-ai-ttl-sub-jp::after {
    width: 6.4vw;
    height: 4vw;
    clip-path: polygon(50% 4vw, 0% 0%, 6.4vw 0%);
  }
  .m-ai-ttl-jp {
    font-size: 9.6vw;
    line-height: 1.3333333333;
    margin-top: -7.2vw;
  }
  .m-ai-ttl-jp._reason, .m-ai-ttl-jp._writer, .m-ai-ttl-jp._flow {
    margin-top: 10.6666666667vw;
  }
  .m-ai-ttl-jp._flow {
    letter-spacing: 0.03em;
  }
  .m-ai-ttl-jp._writer {
    font-size: 8vw;
    line-height: 1.6;
    letter-spacing: normal;
  }
  .m-ai-ttl-jp._writer ._ib {
    display: inline-block;
  }
}
/* m-ai-btn
---------------------------------------------------------------------------- */
.m-ai-btn {
  width: 100%;
  height: 10rem;
  border-radius: 10vmax;
  border: 0.4rem solid currentColor;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 1.5rem;
  background-image: linear-gradient(180deg, #FEB202 0, #F18627 100%);
  background-repeat: no-repeat;
  box-shadow: 0 0.6rem 0 #A55103;
  transition: transform 0.3s ease 0s, box-shadow 0.3s ease 0s;
}
.m-ai-btn:hover {
  transform: translateY(0.6rem);
  box-shadow: 0 0 0 #A55103;
  opacity: 1;
}

.m-ai-btn ._icon {
  width: 3rem;
  height: 2.25rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(./../../images/ai/icn_mail.svg);
  margin-top: 0.3rem;
}

.m-ai-btn ._txt {
  font-size: 2.6rem;
  line-height: 1.5;
  font-weight: 700;
  padding-bottom: 0.3rem;
}

@media screen and (max-width: 767px) {
  .m-ai-btn {
    height: 20.5333333333vw;
    border-width: 1.0666666667vw;
    gap: 0 2.6666666667vw;
    box-shadow: 0 1.3333333333vw 0 #A55103;
  }
  .m-ai-btn:hover {
    transform: translateY(1.3333333333vw);
  }
  .m-ai-btn ._icon {
    width: 6.4vw;
    height: 4.8vw;
    margin-top: initial;
  }
  .m-ai-btn ._txt {
    font-size: 4.8vw;
    padding-bottom: 0.5333333333vw;
  }
}
/* m-ai-cta
---------------------------------------------------------------------------- */
.m-ai-cta {
  padding-block: 6rem 6.3rem;
  position: relative;
}

.m-ai-cta::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(./../../images/ai/bg_cta_pc.png);
}

.m-ai-cta-container {
  width: fit-content;
  margin-left: auto;
}

.m-ai-cta-ttl {
  font-size: 4.6rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 900;
  color: #fff;
}
.m-ai-cta-ttl ._wrap {
  background-color: #fff;
  padding-inline: 0.2em;
  margin-inline: 0.1em;
}
.m-ai-cta-ttl em {
  background-image: linear-gradient(180deg, #1043AC 0, #032B7A 100%);
  background-repeat: no-repeat;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.m-ai-cta-ttl ._surprise {
  display: inline-block;
  transform: rotate(10deg);
}

.m-ai-cta-lists {
  display: flex;
  gap: 0 2rem;
  margin-top: 2.7rem;
}

.m-ai-cta-list {
  display: flex;
  align-items: center;
  gap: 0 1.4rem;
  font-size: 1.8rem;
  line-height: 1.6666666667;
  letter-spacing: 0.05em;
  font-weight: 900;
  color: #fff;
  padding-bottom: 0.8rem;
  border-bottom: 0.2rem solid rgba(255, 255, 255, 0.6);
}
.m-ai-cta-list ._icon {
  flex-shrink: 0;
  width: 2.6rem;
  height: 2.6rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(./../../images/ai/icn_check.svg);
}

.m-ai-cta-wrapper {
  display: flex;
  align-items: center;
  gap: 0 3.5rem;
  margin-top: 5rem;
}

.m-ai-cta-button {
  width: 52rem;
}

.m-ai-cta-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.9rem;
  margin-top: 1rem;
}

.m-ai-cta-wrap-telBox {
  display: flex;
  align-items: center;
  gap: 0 1rem;
}

.m-ai-cta-wrap-telBox-img {
  width: 8.1rem;
  aspect-ratio: 81/46;
}
.m-ai-cta-wrap-telBox-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.m-ai-cta-wrap-telBox-link {
  font-family: "Bebas Neue", sans-serif;
  font-size: 6rem;
  line-height: 1;
  font-weight: 500;
  line-height: 0.75;
  color: #fff;
  pointer-events: none;
}

.m-ai-cta-wrap-box {
  display: flex;
  align-items: center;
  gap: 0 1rem;
}

.m-ai-cta-wrap-box-ttl {
  font-size: 1.6rem;
  line-height: 1.8125;
  letter-spacing: 0.05em;
  font-weight: 700;
  padding-block: 0.1rem 0.3rem;
  padding-inline: 1rem;
  color: #fff;
  border: 1px solid currentColor;
}

.m-ai-cta-wrap-box-txt {
  font-size: 1.6rem;
  line-height: 1.8125;
  letter-spacing: 0.05em;
  font-weight: 700;
  color: #fff;
}

@media screen and (max-width: 767px) {
  .m-ai-cta {
    padding-block: 56vw 10.6666666667vw;
  }
  .m-ai-cta::after {
    background-image: url(./../../images/ai/bg_cta_sp.png);
  }
  .m-ai-cta-container {
    width: 100%;
  }
  .m-ai-cta-ttl {
    font-size: 8vw;
    line-height: 1.6;
  }
  .m-ai-cta-lists {
    flex-direction: column;
    gap: 4.8vw;
    margin-top: 4vw;
  }
  .m-ai-cta-list {
    align-items: flex-start;
    gap: 0 2.6666666667vw;
    font-size: 4.2666666667vw;
    line-height: 1.75;
    padding-bottom: 2.1333333333vw;
    border-bottom-width: 0.5333333333vw;
  }
  .m-ai-cta-list ._icon {
    width: 6.4vw;
    height: 6.4vw;
    margin-top: 0.5333333333vw;
  }
  .m-ai-cta-wrapper {
    flex-direction: column;
    gap: 6.6666666667vw;
    margin-top: 8vw;
  }
  .m-ai-cta-button {
    width: 100%;
  }
  .m-ai-cta-wrap {
    gap: 2.9333333333vw;
    margin-top: initial;
  }
  .m-ai-cta-wrap-telBox {
    gap: 0 1.3333333333vw;
  }
  .m-ai-cta-wrap-telBox-img {
    width: 20vw;
  }
  .m-ai-cta-wrap-telBox-link {
    font-size: 13.8666666667vw;
    pointer-events: auto;
  }
  @supports (-moz-appearance: none) {
    .m-ai-cta-wrap-telBox-link {
      font-size: 13.3333333333vw;
    }
  }
  @supports (-webkit-hyphens: none) {
    .m-ai-cta-wrap-telBox-link {
      font-size: 13.3333333333vw;
    }
  }
  .m-ai-cta-wrap-box {
    gap: 0 2.6666666667vw;
  }
  .m-ai-cta-wrap-box-ttl {
    font-size: 3.7333333333vw;
    line-height: 1.7857142857;
    padding-block: initial;
    padding-inline: 2.6666666667vw;
  }
  .m-ai-cta-wrap-box-txt {
    font-size: 3.7333333333vw;
    line-height: 1.7857142857;
  }
}
/* p-mv
---------------------------------------------------------------------------- */
.p-mv {
  padding-block: min(3.3854166667vw, 65px) min(4.1666666667vw, 80px);
  position: relative;
}

.p-mv::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(./../../images/ai/bg_mv_pc.png);
}

.p-mv-container {
  width: 100%;
  max-width: 1920px;
  margin-inline: auto;
  padding-inline: min(7.8125vw, 150px) min(2.6041666667vw, 50px);
}

.p-mv-wrapper {
  display: flex;
  align-items: flex-end;
  gap: 0 min(4.9479166667vw, 95px);
}

.p-mv-wrap {
  flex-shrink: 0;
}

.p-mv-wrap-txt {
  font-size: 2rem;
  line-height: 1.45;
  letter-spacing: 0.05em;
  font-weight: 700;
  font-size: min(1.0416666667vw, 20px);
  padding-block: min(0.5208333333vw, 10px) min(0.625vw, 12px);
  padding-inline: min(0.78125vw, 15px);
  border-radius: 1rem;
  background-color: #fff;
  width: fit-content;
  filter: drop-shadow(0 0 1rem rgba(24, 67, 151, 0.18));
  position: relative;
}
.p-mv-wrap-txt em {
  background-image: linear-gradient(180deg, #FEB202 0, #F18627 100%);
  background-repeat: no-repeat;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.p-mv-wrap-txt small {
  font-size: min(0.8333333333vw, 16px);
  display: inline-block;
  margin-left: 0.1em;
}

.p-mv-wrap-txt::after {
  content: "";
  position: absolute;
  top: calc(100% - 1px);
  left: min(9.1145833333vw, 175px);
  width: min(1.3541666667vw, 26px);
  aspect-ratio: 26/23;
  clip-path: polygon(0 0, 0% 100%, 100% 0);
  background-color: #fff;
}

.p-mv-wrap-read {
  font-size: 3.5rem;
  line-height: 1.6285714286;
  letter-spacing: 0.05em;
  font-weight: 700;
  font-size: min(1.8229166667vw, 35px);
  margin-top: min(1.8229166667vw, 35px);
}
.p-mv-wrap-read ._underLine {
  display: inline-block;
  background-image: linear-gradient(to bottom, transparent 60%, #FEFF46 60%);
  background-repeat: no-repeat;
  margin-right: 0.3em;
}
.p-mv-wrap-read small {
  font-size: min(1.4583333333vw, 28px);
}
.p-mv-wrap-read em {
  display: inline-block;
  font-size: 3.5rem;
  line-height: 1.7428571429;
  letter-spacing: 0.05em;
  font-weight: 900;
  font-size: min(1.8229166667vw, 35px);
  background-image: linear-gradient(180deg, #032B7A 0, #1043AC 100%);
  background-repeat: no-repeat;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-left: -0.5em;
}

.p-mv-wrap-ttl {
  font-size: 6rem;
  line-height: 1.7666666667;
  letter-spacing: 0.05em;
  font-weight: 700;
  font-size: min(3.125vw, 60px);
  margin-top: min(0.5208333333vw, 10px);
}
.p-mv-wrap-ttl small {
  font-size: min(2.96875vw, 57px);
  margin-right: 0.1em;
}
.p-mv-wrap-ttl ._fz {
  font-size: 4.8rem;
  line-height: 1.4583333333;
  letter-spacing: 0.05em;
  font-weight: 700;
  font-size: min(2.5vw, 48px);
}
.p-mv-wrap-ttl ._surprise {
  display: inline-block;
  transform: rotate(10deg);
  font-family: "Poppins", sans-serif;
  font-size: min(3.4895833333vw, 67px);
  margin-left: -0.2em;
}
.p-mv-wrap-ttl ._wrap {
  display: block;
  margin-top: max(-15px, -0.78125vw);
}

.p-mv-wrap-ttl em {
  display: inline-block;
  font-size: 6.5rem;
  line-height: 1;
  letter-spacing: 0.05em;
  font-weight: 900;
  font-size: min(3.3854166667vw, 65px);
  color: #fff;
  background-image: linear-gradient(180deg, #1043AC 0, #032B7A 100%);
  background-repeat: no-repeat;
  padding-block: min(0.4166666667vw, 8px) min(0.6770833333vw, 13px);
  padding-inline: 0.2em;
  margin-right: 0.1em;
}

.p-mv-wrap-images {
  display: flex;
  gap: 0 min(0.5208333333vw, 10px);
  margin-top: min(1.0416666667vw, 20px);
}

.p-mv-wrap-image._01 {
  width: min(12.5vw, 240px);
  aspect-ratio: 240/132;
}

.p-mv-wrap-image._02 {
  width: min(15.2083333333vw, 292px);
  aspect-ratio: 292/132;
}

.p-mv-wrap-image._03 {
  width: min(15.625vw, 300px);
  aspect-ratio: 300/132;
}

.p-mv-wrap-image {
  height: min(6.875vw, 132px);
}
.p-mv-wrap-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.p-mv-button {
  width: 52rem;
  margin-right: 2rem;
}

@media screen and (max-width: 767px) {
  .p-mv {
    padding-block: 8vw 9.6vw;
    padding-inline: 5.3333333333vw 4vw;
  }
  .p-mv::after {
    background-image: url(./../../images/ai/bg_mv_sp.png);
  }
  .p-mv-container {
    max-width: initial;
    padding-inline: initial;
  }
  .p-mv-wrapper {
    flex-direction: column;
    align-items: initial;
    gap: 42.6666666667vw;
  }
  .p-mv-wrap-txt {
    font-size: 3.7333333333vw;
    line-height: 1.4285714286;
    padding-block: 1.3333333333vw 1.3333333333vw;
    padding-inline: 3.2vw;
    border-radius: 2.6666666667vw;
    filter: drop-shadow(0 0 2.6666666667vw rgba(24, 67, 151, 0.18));
  }
  .p-mv-wrap-txt em {
    font-size: 4.2666666667vw;
    line-height: 1.5;
  }
  .p-mv-wrap-txt small {
    font-size: 2.9333333333vw;
    line-height: 1.4545454545;
  }
  .p-mv-wrap-txt::after {
    left: 22.6666666667vw;
    width: 3.3333333333vw;
  }
  .p-mv-wrap-read {
    font-size: 5.6vw;
    line-height: 1.5238095238;
    margin-top: 4vw;
  }
  .p-mv-wrap-read small {
    font-size: 4.8vw;
  }
  .p-mv-wrap-read em {
    font-size: 4.8vw;
    line-height: 1.7777777778;
  }
  .p-mv-wrap-ttl {
    font-size: 7.4666666667vw;
    line-height: 1.7857142857;
    letter-spacing: -0.055em;
    margin-top: 0.5333333333vw;
  }
  @supports (-moz-appearance: none) {
    .p-mv-wrap-ttl {
      letter-spacing: -0.1em;
    }
  }
  .p-mv-wrap-ttl small {
    font-size: 7.2vw;
  }
  .p-mv-wrap-ttl ._fz {
    font-size: 6.1333333333vw;
    line-height: 1.4782608696;
  }
  .p-mv-wrap-ttl ._surprise {
    font-size: 8.2666666667vw;
    margin-left: -0.2em;
  }
  @supports (-moz-appearance: none) {
    .p-mv-wrap-ttl ._surprise {
      margin-left: -0.1em;
    }
  }
  .p-mv-wrap-ttl ._wrap {
    margin-top: -2.6666666667vw;
  }
  .p-mv-wrap-ttl em {
    font-size: 8vw;
    letter-spacing: 0.05em;
    padding-block: 0.8vw 1.3333333333vw;
  }
  .p-mv-wrap-images {
    flex-wrap: wrap;
    justify-content: center;
    gap: 0 1.4925373134%;
    margin-top: 1.3333333333vw;
  }
  .p-mv-wrap-image._01 {
    width: 44.776119403%;
  }
  .p-mv-wrap-image._02 {
    width: 53.7313432836%;
  }
  .p-mv-wrap-image._03 {
    width: 55.8208955224%;
  }
  .p-mv-wrap-image {
    height: 21.8666666667vw;
  }
  .p-mv-button {
    width: 100%;
    margin-right: initial;
  }
}
/* p-worry
---------------------------------------------------------------------------- */
.p-worry {
  padding-block: 8rem 7rem;
  position: relative;
}

.p-worry::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(./../../images/ai/bg_worry_pc.png);
}

.p-worry-group {
  width: 100%;
  max-width: 94.5rem;
  padding-block: 4rem;
  padding-inline: 8rem;
  margin-inline: auto;
  background-color: #fff;
  border-radius: 1rem;
  box-shadow: 0 0.3rem 1.4rem rgba(126, 68, 0, 0.2);
}

.p-worry-ttl {
  text-align: center;
  width: fit-content;
  margin-inline: auto;
  padding-inline: 9.5rem 4rem;
  position: relative;
  margin-top: 9.5rem;
}
.p-worry-ttl em {
  font-size: 4.6rem;
  line-height: 1.347826087;
  letter-spacing: 0.05em;
  font-weight: 700;
  color: #032B7A;
  -webkit-text-stroke: 1rem #fff;
  paint-order: stroke;
  margin-right: 0.5rem;
}
.p-worry-ttl span {
  font-size: 3.4rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 700;
}

.p-worry-ttl::before,
.p-worry-ttl::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.p-worry-ttl::before {
  left: 0;
  width: 7.5rem;
  aspect-ratio: 75/87;
  background-image: url(./../../images/ai/icn_worry_ttl_left.svg);
  filter: drop-shadow(0 0 0.6rem rgba(0, 0, 0, 0.16));
}

.p-worry-ttl::after {
  right: 0;
  width: 4.4rem;
  aspect-ratio: 34/48;
  background-image: url(./../../images/ai/icn_worry_ttl_right.svg);
}

.p-worry-items {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0 3rem;
  margin-top: 4.2rem;
}

.p-worry-item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  row-gap: 0;
  align-items: center;
  justify-items: center;
  padding-block: 2rem 3rem;
  padding-inline: 3rem;
  background-color: #fff;
}

.p-worry-item-ttl {
  font-size: 2rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 700;
  color: #032B7A;
  text-align: center;
  margin-bottom: 1.5rem;
}

.p-worry-item-img._01 {
  width: 15.85rem;
  aspect-ratio: 158.5/96;
}

.p-worry-item-img._02 {
  width: 11.3rem;
  aspect-ratio: 113/107;
}

.p-worry-item-img._03 {
  width: 14.4rem;
  aspect-ratio: 144/96;
}

.p-worry-item-img._04 {
  width: 15.25rem;
  aspect-ratio: 152.5/116.5;
}

.p-worry-item-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.p-worry-item-txt {
  font-size: 1.8rem;
  line-height: 1.5;
  letter-spacing: 0.03em;
  font-weight: 500;
  text-align: center;
  margin-top: 1.8rem;
}

.p-worry-block {
  margin-top: 16rem;
}

.p-worry-block-txt {
  font-size: 3.2rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 700;
  color: #032B7A;
  background-color: #fff;
  padding-inline: 1.4rem;
  padding-block: 0.6rem;
  border-radius: 1rem;
  width: fit-content;
  filter: drop-shadow(0 0 1rem rgba(24, 67, 151, 0.18));
  position: relative;
}
.p-worry-block-txt small {
  font-size: 2.8rem;
}

.p-worry-block-txt::after {
  content: "";
  position: absolute;
  top: calc(100% - 1px);
  left: 9rem;
  width: 2.1rem;
  aspect-ratio: 21/17;
  clip-path: polygon(0 0, 0% 100%, 100% 0);
  background-color: #fff;
}

.p-worry-block-read {
  font-size: 4.6rem;
  line-height: 1.347826087;
  letter-spacing: 0.05em;
  font-weight: 700;
  margin-top: 4.5rem;
}
.p-worry-block-read small {
  font-size: 3.4rem;
  margin-inline: 0.4em;
}
.p-worry-block-read ._fz {
  font-size: 3.4rem;
}

.p-worry-block-read em {
  display: inline-block;
  color: #fff;
  background-image: linear-gradient(180deg, #1043AC 0, #032B7A 100%);
  background-repeat: no-repeat;
  padding-inline: 0.2em;
  padding-block: 0.05em 0.15em;
}
.p-worry-block-read em ._fzSmall {
  font-size: 3.6rem;
}
.p-worry-block-read em ._colorOrange {
  color: #FEB202;
}
.p-worry-block-read em ._num {
  display: inline-block;
  font-family: "Bebas Neue", sans-serif;
  font-size: 6rem;
  line-height: 1;
  margin-left: 0.15em;
}

.p-worry-block-read ._ruby {
  display: inline-block;
  background-image: linear-gradient(180deg, #FEB202 0, #F18627 100%);
  background-repeat: no-repeat;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 0 1rem rgba(255, 255, 255, 0.8));
  position: relative;
  margin-top: 2.4rem;
  margin-right: 0.1em;
}
.p-worry-block-read ._ruby::before {
  content: attr(data-ruby);
  position: absolute;
  top: -0.7em;
  left: 0;
  right: 0;
  font-size: 0.8em;
  letter-spacing: 0.3em;
  margin-left: 0.1em;
  background-clip: initial;
  -webkit-background-clip: initial;
  -webkit-text-fill-color: initial;
  color: #F18825;
}

@media screen and (max-width: 767px) {
  .p-worry {
    padding-block: 10.6666666667vw 8vw;
  }
  .p-worry::after {
    background-image: url(./../../images/ai/bg_worry_sp.png);
  }
  .p-worry-group {
    padding-block: 5.3333333333vw;
    padding-inline: 5.3333333333vw;
    border-radius: 2.6666666667vw;
    box-shadow: 0 0.8vw 3.7333333333vw rgba(126, 68, 0, 0.2);
  }
  .p-worry-ttl {
    padding-inline: initial;
    margin-top: 16vw;
  }
  .p-worry-ttl em {
    font-size: 10.6666666667vw;
    -webkit-text-stroke: 2.6666666667vw #fff;
    margin-right: 1.3333333333vw;
  }
  .p-worry-ttl span {
    font-size: 8vw;
    padding-right: 8vw;
  }
  .p-worry-ttl::before,
  .p-worry-ttl::after {
    transform: initial;
  }
  .p-worry-ttl::before {
    top: -5.3333333333vw;
    left: -6.1333333333vw;
    width: 15.4666666667vw;
    filter: drop-shadow(0 0 1.6vw rgba(0, 0, 0, 0.16));
  }
  .p-worry-ttl::after {
    top: initial;
    bottom: 0.8vw;
    right: 0;
    width: 9.3333333333vw;
  }
  .p-worry-items {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.6666666667vw 2.9333333333vw;
    margin-top: 6.6666666667vw;
  }
  .p-worry-item {
    padding-block: 3.4666666667vw 4vw;
    padding-inline: 4vw;
  }
  .p-worry-item-ttl {
    font-size: 4.2666666667vw;
    line-height: 1.5;
    margin-bottom: 1.8666666667vw;
  }
  .p-worry-item-img._01 {
    width: 24vw;
  }
  .p-worry-item-img._02 {
    width: 15.0666666667vw;
  }
  .p-worry-item-img._03 {
    width: 21.8666666667vw;
  }
  .p-worry-item-img._04 {
    width: 18.6666666667vw;
  }
  .p-worry-item-txt {
    font-size: 3.4666666667vw;
    line-height: 1.5;
    margin-top: 1.8666666667vw;
  }
  .p-worry-block {
    margin-top: 40.5333333333vw;
  }
  .p-worry-block-txt {
    font-size: 5.3333333333vw;
    padding-inline: 3.2vw;
    padding-block: 1.6vw;
    border-radius: 2.6666666667vw;
    filter: drop-shadow(0 0 2.6666666667vw rgba(24, 67, 151, 0.18));
  }
  .p-worry-block-txt small {
    font-size: 4.8vw;
  }
  .p-worry-block-txt::after {
    left: 17.3333333333vw;
    width: 3.7333333333vw;
  }
  .p-worry-block-read {
    font-size: 8.5333333333vw;
    line-height: 1.3125;
    margin-top: 5.3333333333vw;
  }
  .p-worry-block-read small {
    font-size: 6.1333333333vw;
  }
  .p-worry-block-read ._fz {
    font-size: 6.1333333333vw;
  }
  .p-worry-block-read em {
    font-size: 8.2666666667vw;
    line-height: 1.4516129032;
    padding-bottom: 0.8vw;
    margin-bottom: 2.6666666667vw;
  }
  .p-worry-block-read em ._fzSmall {
    font-size: 6.4vw;
  }
  .p-worry-block-read em ._num {
    font-size: 10.9333333333vw;
  }
  .p-worry-block-read ._ruby {
    filter: drop-shadow(0 0 2.6666666667vw rgba(255, 255, 255, 0.8));
    margin-top: 1.3333333333vw;
  }
}
/* p-achievement
---------------------------------------------------------------------------- */
.p-achievement {
  padding-block: 8.5rem 10rem;
  background-color: #F5F5F5;
}

.p-achievement-ttl {
  font-size: 4.6rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 700;
  text-align: center;
  background-image: linear-gradient(180deg, #1043AC 0, #032B7A 100%);
  background-repeat: no-repeat;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.p-achievement-block {
  padding-block: 6rem;
  padding-inline: 15rem;
  background-color: #fff;
  border-radius: 1rem;
  box-shadow: 0 0 1rem rgba(24, 67, 151, 0.18);
  margin-top: 5rem;
}

.p-achievement-block-img {
  width: 100%;
  aspect-ratio: 900/405;
}
.p-achievement-block-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

@media screen and (max-width: 767px) {
  .p-achievement {
    padding-block: 10.6666666667vw 13.3333333333vw;
  }
  .p-achievement-ttl {
    font-size: 8vw;
    line-height: 1.6;
  }
  .p-achievement-block {
    padding-block: 4.8vw;
    padding-inline: 5.3333333333vw;
    border-radius: 2.6666666667vw;
    box-shadow: 0 0 2.6666666667vw rgba(24, 67, 151, 0.18);
    margin-top: 6.1333333333vw;
  }
  .p-achievement-block-img {
    cursor: pointer;
    aspect-ratio: 300/140;
    position: relative;
  }
  .p-achievement-block-img::after {
    content: "";
    position: absolute;
    bottom: -2.6666666667vw;
    right: -2.6666666667vw;
    z-index: 1;
    width: 10.6666666667vw;
    aspect-ratio: 1;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url(./../../images/ai/icn_magnifying_glass.svg);
    pointer-events: none;
  }
}
/* p-modal
---------------------------------------------------------------------------- */
.p-modal {
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s, visibility 0.5s;
  cursor: pointer;
}

.p-modal-content {
  display: block;
  width: 50%;
  cursor: default;
}

.p-modal-close {
  position: absolute;
  top: 1rem;
  right: 1rem;
  color: #fff;
  font-size: 4rem;
  font-weight: 700;
  cursor: pointer;
}

@media screen and (max-width: 767px) {
  .p-modal-content {
    width: 95%;
  }
  .p-modal-close {
    top: 2.6666666667vw;
    right: 2.6666666667vw;
    font-size: 10.6666666667vw;
  }
}
/* p-reason
---------------------------------------------------------------------------- */
.p-reason {
  padding-bottom: 12rem;
  position: relative;
}

.p-reason::before,
.p-reason::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.p-reason::before {
  z-index: -4;
  height: calc(100% - 34.25rem);
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(./../../images/ai/bg_reason_pc.png);
}

.p-reason::after {
  z-index: -5;
  background-color: #fff;
}

.p-reason-items {
  display: flex;
  flex-direction: column;
  gap: 6rem;
  margin-top: 4.8rem;
}

.p-reason-item:nth-child(odd) .p-reason-item-wrapper {
  flex-direction: row-reverse;
}

.p-reason-item-wrapper {
  display: flex;
  align-items: center;
  gap: 0 4.7rem;
}

.p-reason-item-wrap {
  flex: 1;
}

.p-reason-item-wrap-box {
  display: flex;
  align-items: center;
  gap: 0 1.5rem;
}
.p-reason-item-wrap-box._01 {
  gap: 0 1rem;
}

.p-reason-item-wrap-box-num {
  font-family: "Bebas Neue", sans-serif;
  font-size: 4.2rem;
  line-height: 1;
  font-weight: 700;
  line-height: 0.75;
  color: #fff;
  width: 7rem;
  aspect-ratio: 1;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: linear-gradient(180deg, #FEB202 0, #F18627 100%);
  background-repeat: no-repeat;
  border: 0.3rem solid currentColor;
  box-shadow: 0 0 0.6rem rgba(0, 0, 0, 0.18);
  padding-top: 0.2rem;
}

.p-reason-item-wrap-box-ttl {
  flex: 1;
  font-size: 3rem;
  line-height: 1.5;
  font-weight: 900;
  color: #032B7A;
}

.p-reason-item-wrap-txt {
  font-size: 1.8rem;
  line-height: 1.8;
  letter-spacing: 0.03em;
  font-weight: 500;
  margin-top: 2rem;
}
.p-reason-item-wrap-txt em {
  font-weight: 900;
  background-image: linear-gradient(to bottom, transparent 60%, #FEFF46 60%);
  background-repeat: no-repeat;
  margin-inline: 0.4em;
}

.p-reason-item-wrap-lists {
  display: flex;
  gap: 0 1rem;
  margin-top: 2rem;
}

.p-reason-item-wrap-list {
  width: 15.6rem;
  padding-block: 0.7rem 1rem;
  border-radius: 0.5rem;
  background-image: linear-gradient(180deg, #1042AA 0, #042D7E 100%);
  background-repeat: no-repeat;
}

.p-reason-item-wrap-list-txt {
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 900;
  color: #fff;
  text-align: center;
  padding-top: 2.3rem;
  position: relative;
}

.p-reason-item-wrap-list-txt::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 2.1rem;
  aspect-ratio: 21/16;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(./../../images/ai/icn_crown.svg);
}

.p-reason-item-img {
  width: 51.2rem;
  aspect-ratio: 512/307;
}
.p-reason-item-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.p-reason-item-box {
  width: 100%;
  max-width: 100rem;
  margin-inline: auto;
  background-color: #fff;
  padding-block: 2rem;
  padding-inline: 6rem;
  border: 1px solid #DEDEDE;
  margin-top: 3rem;
}

.p-reason-item-box-ttl {
  width: 15rem;
  padding-block: 0.35rem;
  font-size: 1.5rem;
  line-height: 1.5;
  font-weight: 900;
  color: #fff;
  text-align: center;
  background-image: linear-gradient(180deg, #1043AC 0, #032B7A 100%);
  background-repeat: no-repeat;
}

.p-reason-item-box-lists {
  margin-top: 1rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0 5rem;
}

.p-reason-item-box-list {
  min-width: 29.5rem;
  font-size: 1.8rem;
  line-height: 1.8;
  letter-spacing: 0.03em;
  font-weight: 500;
  padding-left: 1.8rem;
  position: relative;
}

.p-reason-item-box-list::before {
  content: "";
  position: absolute;
  top: 1.3rem;
  left: 0;
  width: 0.8rem;
  aspect-ratio: 1;
  border-radius: 50%;
  background-color: #032B7A;
}

.p-reason-block {
  padding-block: 5rem 15rem;
  padding-inline: 10rem;
  margin-top: 9rem;
  position: relative;
  filter: drop-shadow(0 0 1rem rgba(24, 67, 151, 0.18));
}

.p-reason-block::before,
.p-reason-block::after {
  content: "";
  position: absolute;
}

.p-reason-block::before {
  inset: 0;
  z-index: -3;
  background-color: #fff;
  clip-path: polygon(100% 0, 100% calc(100% - 10rem), 50% 100%, 0 calc(100% - 10rem), 0 0);
}

.p-reason-block::after {
  bottom: -2.8rem;
  left: 50%;
  transform: translateX(-50%);
  width: 8.6rem;
  aspect-ratio: 86/140;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(./../../images/ai/icn_arrow_bottom_pc.svg);
}

.p-reason-block-img {
  position: absolute;
  top: -3.5rem;
  left: 8.7rem;
  z-index: -2;
  width: 33.5rem;
  aspect-ratio: 335/243;
}
.p-reason-block-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.p-reason-block-ttl {
  font-size: 3.4rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 900;
  width: fit-content;
  margin-left: auto;
}
.p-reason-block-ttl ._fzSmall {
  font-size: 3rem;
  margin-left: 0.25em;
}
.p-reason-block-ttl ._box {
  padding-block: 0.05rem;
  padding-inline: 1.2rem;
  color: #fff;
  background-image: linear-gradient(180deg, #1043AC 0, #032B7A 100%);
  background-repeat: no-repeat;
}
.p-reason-block-ttl small {
  margin-inline: 0.2em;
}
.p-reason-block-ttl em {
  display: inline-block;
  font-size: 4.6rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 900;
  color: #032B7A;
  background-image: linear-gradient(to bottom, transparent 60%, #FEFF46 60%);
  background-repeat: no-repeat;
  margin-inline: 0.25em;
  margin-top: 0.8rem;
}

.p-reason-block-boxes {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 5rem;
  margin-top: 3rem;
}

.p-reason-block-box {
  border-radius: 1rem;
  overflow: hidden;
  position: relative;
}

.p-reason-block-box::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: 100%;
}

.p-reason-block-box._01::after {
  background-image: url(./../../images/ai/bg_reason_block_box01_pc.png);
}

.p-reason-block-box._02::after {
  background-image: url(./../../images/ai/bg_reason_block_box02_pc.png);
}

.p-reason-block-box-ttl {
  font-size: 2.4rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 900;
  color: #fff;
  text-align: center;
  padding-block: 1.2rem;
  padding-inline: 1rem;
  background-color: #393939;
  position: relative;
}

.p-reason-block-box-ttl::after {
  content: "";
  position: absolute;
  top: calc(100% - 1px);
  left: 50%;
  transform: translateX(-50%);
  width: 2rem;
  height: 1rem;
  background-color: #393939;
  clip-path: polygon(50% 1rem, 0% 0%, 2rem 0%);
}

.p-reason-block-box-lists {
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
  padding-block: 2rem 3rem;
  padding-inline: 4.5rem;
}

.p-reason-block-box-list {
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-weight: 700;
  padding-left: 3.5rem;
  position: relative;
}

.p-reason-block-box-list::before {
  content: "";
  position: absolute;
  top: 0.7rem;
  left: 0;
  width: 2rem;
  aspect-ratio: 1;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(./../../images/ai/icn_cross_mark.svg);
}

.p-reason-pro {
  margin-top: 5.7rem;
}

.p-reason-pro-speech {
  font-size: 3.2rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 700;
  color: #fff;
  background-color: #032B7A;
  padding-block: 0.6rem;
  padding-inline: 1.4rem;
  border-radius: 1rem;
  width: fit-content;
  margin-inline: auto;
  position: relative;
}
.p-reason-pro-speech small {
  font-size: 2.8rem;
}

.p-reason-pro-speech::after {
  content: "";
  position: absolute;
  top: calc(100% - 1px);
  left: 9.5rem;
  width: 2.1rem;
  height: 1.8rem;
  background-color: #032B7A;
  clip-path: polygon(0 0, 0% 100%, 100% 0);
}

.p-reason-pro-ttl {
  font-size: 4.6rem;
  line-height: 1.347826087;
  letter-spacing: 0.05em;
  font-weight: 900;
  text-align: center;
  width: fit-content;
  padding-inline: 7rem;
  margin-inline: auto;
  margin-top: 2.8rem;
  position: relative;
}
.p-reason-pro-ttl em {
  display: inline-block;
  background-image: linear-gradient(180deg, #FEB202 0, #F18627 100%);
  background-repeat: no-repeat;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.p-reason-pro-ttl small {
  font-size: 3.4rem;
  margin-inline: 0.2em;
}
.p-reason-pro-ttl span {
  display: inline-block;
  transform: rotate(10deg);
  font-size: 5rem;
  margin-left: 0.1em;
}

.p-reason-pro-ttl::before,
.p-reason-pro-ttl::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 4.8rem;
  aspect-ratio: 48/82;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(./../../images/ai/icn_reason_pro_ttl.svg);
}

.p-reason-pro-ttl::before {
  left: 0;
}

.p-reason-pro-ttl::after {
  right: 0;
  transform: scaleX(-1);
}

.p-reason-pro-box {
  display: flex;
  align-items: center;
  gap: 0 3.5rem;
  width: 100%;
  max-width: 100rem;
  padding-block: 3.6rem;
  padding-inline: 4.6rem;
  border-radius: 4rem 1rem 1rem 1rem;
  border: 0.4rem solid #F18825;
  background-color: #FCF9F2;
  margin-inline: auto;
  margin-top: 4rem;
  position: relative;
}

.p-reason-pro-box::before {
  content: "";
  position: absolute;
  top: -0.45rem;
  left: -0.45rem;
  z-index: 1;
  width: 4rem;
  aspect-ratio: 1;
  background: linear-gradient(135deg, #E3EDFF 50%, #F18825 50%);
}

.p-reason-pro-txt {
  flex: 1;
  font-size: 2rem;
  line-height: 1.8;
  letter-spacing: 0.03em;
  font-weight: 500;
}
.p-reason-pro-txt em {
  font-weight: 900;
  color: #fff;
  background-color: #F18825;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  padding-inline: 0.2em;
  margin-inline: 0.1em;
  word-break: normal;
}

.p-reason-pro-box-img {
  width: 26rem;
  aspect-ratio: 260/165;
}
.p-reason-pro-box-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.p-reason-relief {
  margin-top: 10rem;
}

.p-reason-relief-ttlWrap {
  padding-left: 9rem;
}

.p-reason-relief-ttl {
  font-size: 4.6rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 900;
  text-align: center;
  width: fit-content;
  padding-block: 0.3rem 0.4rem;
  padding-inline: 5rem 2.5rem;
  background-color: #fff;
  border-radius: 0.4rem;
  margin-inline: auto;
  position: relative;
  filter: drop-shadow(0 0 1rem rgba(24, 67, 151, 0.18));
}
.p-reason-relief-ttl span {
  display: inline-block;
  background-image: linear-gradient(180deg, #1043AC 0, #032B7A 100%);
  background-repeat: no-repeat;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.p-reason-relief-ttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -8.5rem;
  transform: translateY(-50%);
  width: 12rem;
  aspect-ratio: 1;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(./../../images/ai/img_reason_relief_ttl.png);
}

.p-reason-relief-ttl::after {
  content: "";
  position: absolute;
  top: calc(100% - 1px);
  left: 44%;
  transform: translateX(-50%);
  width: 4rem;
  height: 2rem;
  background-color: #fff;
  clip-path: polygon(50% 2rem, 0% 0%, 4rem 0%);
}

.p-reason-relief-txt {
  font-size: 1.8rem;
  line-height: 1.8;
  letter-spacing: 0.03em;
  font-weight: 700;
  color: #fff;
  text-align: center;
  margin-top: 4.5rem;
}

.p-reason-relief-wrap {
  width: 100%;
  max-width: 89rem;
  margin-inline: auto;
  margin-top: 5rem;
}

.p-reason-relief-wrap-ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 1.2rem;
}

.p-reason-relief-wrap-ttl ._icon {
  display: inline-block;
  width: 4.2rem;
  height: 4.2rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(./../../images/ai/ico_reason_relief_wrap_ttl.svg);
}

.p-reason-relief-wrap-ttl ._txt {
  font-size: 3rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 900;
  color: #fff;
  padding-bottom: 0.3rem;
  border-bottom: 0.3rem solid currentColor;
}
.p-reason-relief-wrap-ttl ._txt small {
  font-size: 2.4rem;
}

.p-reason-relief-wrap-lists {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1rem;
  margin-top: 3rem;
}

.p-reason-relief-wrap-list {
  font-size: 1.8rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 900;
  color: #fff;
  background-color: #032B7A;
  border-radius: 0.4rem;
  padding-block: 1.2rem 1.4rem;
  padding-inline: 2.4rem;
  display: flex;
  align-items: center;
  gap: 0 1rem;
  width: fit-content;
}

.p-reason-relief-wrap-list span {
  display: inline-block;
  width: 2.4rem;
  height: 2.4rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(./../../images/ai/icn_check_circle.svg);
}

.p-reason-relief-wrap-box {
  display: flex;
  align-items: center;
  gap: 0 3rem;
  padding-block: 2.3rem;
  padding-inline: 6rem 4rem;
  border-radius: 1rem;
  overflow: hidden;
  margin-top: 4rem;
  position: relative;
}

.p-reason-relief-wrap-box::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  background-position: left top;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(./../../images/ai/bg_reason_relief_box_pc.png);
}

.p-reason-relief-wrap-box-point {
  width: 10.4rem;
  height: 10.4rem;
  background-color: #F18825;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

.p-reason-relief-wrap-box-point::before,
.p-reason-relief-wrap-box-point::after {
  content: "";
  position: absolute;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.p-reason-relief-wrap-box-point::before {
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 6.6rem;
  aspect-ratio: 66/18;
  background-image: url(./../../images/ai/icn_reason_relief_point_01.svg);
}

.p-reason-relief-wrap-box-point::after {
  bottom: -0.5rem;
  right: -3rem;
  z-index: -1;
  width: 6rem;
  aspect-ratio: 26/20;
  background-image: url(./../../images/ai/icn_reason_relief_point_02.svg);
}

.p-reason-relief-wrap-box-point-txt {
  font-size: 2rem;
  line-height: 1.3;
  letter-spacing: 0.05em;
  font-weight: 900;
  color: #fff;
  text-align: center;
}
.p-reason-relief-wrap-box-point-txt small {
  font-size: 1.7rem;
}
.p-reason-relief-wrap-box-point-txt em {
  display: inline-block;
  font-family: "Bebas Neue", sans-serif;
  font-size: 3.1rem;
  line-height: 1;
}

.p-reason-relief-wrap-box-txt {
  flex: 1;
  font-size: 2rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-weight: 700;
}
.p-reason-relief-wrap-box-txt em {
  font-weight: 900;
  color: #F18825;
}

@media screen and (max-width: 767px) {
  .p-reason {
    padding-bottom: 13.3333333333vw;
  }
  .p-reason::before {
    height: calc(100% - 41.3333333333vw);
    background-position: center top;
    background-image: url(./../../images/ai/bg_reason_sp.png);
  }
  .p-reason-items {
    gap: 10.4vw;
    margin-top: 9.3333333333vw;
  }
  .p-reason-item:nth-child(odd) .p-reason-item-wrapper {
    flex-direction: column;
  }
  .p-reason-item-wrapper {
    flex-direction: column;
    gap: initial;
  }
  .p-reason-item-wrap {
    display: contents;
  }
  .p-reason-item-wrap-box {
    align-self: flex-start;
    gap: 0 2.6666666667vw;
    order: 1;
  }
  .p-reason-item-wrap-box._01 {
    gap: 0 2.6666666667vw;
  }
  .p-reason-item-wrap-box-num {
    font-size: 8vw;
    width: 13.3333333333vw;
    border-width: 0.8vw;
    box-shadow: 0 0 1.6vw rgba(0, 0, 0, 0.18);
    padding-top: 0.5333333333vw;
  }
  .p-reason-item-wrap-box-ttl {
    font-size: 6.4vw;
    line-height: 1.5;
    letter-spacing: 0.05em;
    word-break: normal;
  }
  .p-reason-item-wrap-txt {
    font-size: 4.2666666667vw;
    line-height: 1.75;
    order: 3;
    margin-top: 5.3333333333vw;
  }
  .p-reason-item-wrap-lists {
    align-self: stretch;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 1.8666666667vw;
    order: 4;
    margin-top: 4.5333333333vw;
  }
  .p-reason-item-wrap-list {
    width: 100%;
    padding-block: 1.3333333333vw 1.6vw;
    border-radius: 1.3333333333vw;
  }
  .p-reason-item-wrap-list-txt {
    font-size: 3.2vw;
    line-height: 1.5;
    padding-top: 4vw;
  }
  .p-reason-item-wrap-list-txt::before {
    width: 3.7333333333vw;
  }
  .p-reason-item-img {
    width: 100%;
    order: 2;
    margin-top: 4vw;
  }
  .p-reason-item-box {
    max-width: initial;
    padding-block: 5.3333333333vw;
    padding-inline: 5.3333333333vw;
    margin-top: 4.5333333333vw;
  }
  .p-reason-item-box-ttl {
    width: 40vw;
    padding-block: 0.9333333333vw;
    font-size: 4vw;
  }
  .p-reason-item-box-lists {
    margin-top: 1.3333333333vw;
    flex-direction: column;
    flex-wrap: nowrap;
    gap: 0.5333333333vw;
  }
  .p-reason-item-box-list {
    min-width: initial;
    font-size: 4.2666666667vw;
    padding-left: 4.8vw;
  }
  .p-reason-item-box-list::before {
    top: 3.2vw;
    width: 2.1333333333vw;
  }
  .p-reason-block {
    padding-block: 5.3333333333vw 21.3333333333vw;
    padding-inline: 5.3333333333vw;
    margin-top: 9.3333333333vw;
    filter: drop-shadow(0 0 2.6666666667vw rgba(24, 67, 151, 0.18));
  }
  .p-reason-block::before {
    clip-path: polygon(100% 0, 100% calc(100% - 10.6666666667vw), 50% 100%, 0 calc(100% - 10.6666666667vw), 0 0);
  }
  .p-reason-block::after {
    bottom: -5.6vw;
    width: 18.1333333333vw;
    aspect-ratio: 68/88;
    background-image: url(./../../images/ai/icn_arrow_bottom_sp.svg);
  }
  .p-reason-block-img {
    top: 9.3333333333vw;
    left: 2.1333333333vw;
    width: 41.8666666667vw;
  }
  .p-reason-block-ttl {
    font-size: 5.0666666667vw;
  }
  .p-reason-block-ttl ._fzSmall {
    font-size: 4.5333333333vw;
    margin-left: initial;
    display: inline-block;
    margin-bottom: 1.3333333333vw;
  }
  .p-reason-block-ttl ._box {
    padding-block: 0.1333333333vw;
    padding-inline: 1.8666666667vw;
  }
  .p-reason-block-ttl em {
    font-size: 6.4vw;
    line-height: 1.625;
    margin-top: 0.5333333333vw;
  }
  .p-reason-block-boxes {
    grid-template-columns: 1fr;
    gap: 5.3333333333vw;
    margin-top: 4.5333333333vw;
  }
  .p-reason-block-box {
    border-radius: 2.6666666667vw;
  }
  .p-reason-block-box._01::after {
    background-image: url(./../../images/ai/bg_reason_block_box01_sp.png);
  }
  .p-reason-block-box._02::after {
    background-image: url(./../../images/ai/bg_reason_block_box02_sp.png);
  }
  .p-reason-block-box-ttl {
    font-size: 5.3333333333vw;
    line-height: 1.5;
    padding-block: 2.6666666667vw;
    padding-inline: 2.6666666667vw;
  }
  .p-reason-block-box-ttl::after {
    width: 4.2666666667vw;
    height: 2.1333333333vw;
    clip-path: polygon(50% 2.1333333333vw, 0% 0%, 4.2666666667vw 0%);
  }
  .p-reason-block-box-lists {
    gap: 1.4666666667vw;
    padding-block: 5.3333333333vw 4.8vw;
    padding-inline: 6.1333333333vw 2.6666666667vw;
  }
  .p-reason-block-box-list {
    font-size: 4.2666666667vw;
    line-height: 1.75;
    letter-spacing: 0.03em;
    padding-left: 5.3333333333vw;
  }
  .p-reason-block-box-list::before {
    top: 2.1333333333vw;
    width: 3.7333333333vw;
  }
  .p-reason-pro {
    margin-top: 13.8666666667vw;
  }
  .p-reason-pro-speech {
    font-size: 4.8vw;
    padding-block: 2.6666666667vw;
    padding-inline: 3.7333333333vw;
    border-radius: 2.6666666667vw;
  }
  .p-reason-pro-speech small {
    font-size: 4.2666666667vw;
  }
  .p-reason-pro-speech::after {
    left: 17.3333333333vw;
    width: 3.7333333333vw;
    height: 3.2vw;
  }
  .p-reason-pro-ttl {
    font-size: 6.9333333333vw;
    line-height: 1.15;
    padding-inline: 12vw;
    margin-top: 4vw;
  }
  .p-reason-pro-ttl small {
    font-size: 5.3333333333vw;
  }
  .p-reason-pro-ttl span {
    font-size: 8vw;
  }
  .p-reason-pro-ttl::before,
  .p-reason-pro-ttl::after {
    width: 8.8vw;
  }
  .p-reason-pro-box {
    flex-direction: column;
    gap: 5.3333333333vw;
    max-width: initial;
    padding-block: 5.0666666667vw;
    padding-inline: 5.3333333333vw;
    border-radius: 5.3333333333vw 2.6666666667vw 2.6666666667vw 2.6666666667vw;
    border-width: 1.0666666667vw;
    margin-top: 3.4666666667vw;
  }
  .p-reason-pro-box::before {
    top: -1.2vw;
    left: -1.2vw;
    width: 6.4vw;
  }
  .p-reason-pro-txt {
    font-size: 4.2666666667vw;
    line-height: 1.75;
  }
  .p-reason-pro-box-img {
    width: 42.1333333333vw;
  }
  .p-reason-relief {
    margin-top: 24vw;
  }
  .p-reason-relief-ttlWrap {
    padding-left: initial;
  }
  .p-reason-relief-ttl {
    font-size: 8vw;
    line-height: 1.2;
    width: 100%;
    padding-block: 12vw 3.2vw;
    padding-inline: 4vw;
    border-radius: 1.0666666667vw;
    filter: drop-shadow(0 0 2.6666666667vw rgba(24, 67, 151, 0.18));
  }
  .p-reason-relief-ttl::before {
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 21.3333333333vw;
  }
  .p-reason-relief-ttl::after {
    left: 50%;
    width: 10.6666666667vw;
    height: 5.3333333333vw;
    clip-path: polygon(50% 5.3333333333vw, 0% 0%, 10.6666666667vw 0%);
  }
  .p-reason-relief-txt {
    font-size: 4.2666666667vw;
    line-height: 1.75;
    text-align: left;
    margin-top: 8.5333333333vw;
  }
  .p-reason-relief-wrap {
    max-width: initial;
    margin-top: 4.8vw;
  }
  .p-reason-relief-wrap-ttl {
    justify-content: initial;
    gap: 0 2.6666666667vw;
  }
  .p-reason-relief-wrap-ttl ._icon {
    width: 9.6vw;
    height: 9.6vw;
  }
  .p-reason-relief-wrap-ttl ._txt {
    font-size: 5.3333333333vw;
    padding-bottom: 0.8vw;
    border-bottom-width: 0.5333333333vw;
  }
  .p-reason-relief-wrap-ttl ._txt small {
    font-size: 4.8vw;
  }
  .p-reason-relief-wrap-lists {
    display: grid;
    grid-template-areas: "list01 list01" "list02 list02" "list03 list06" "list04 list04" "list05 list05";
    grid-template-columns: auto auto;
    justify-content: initial;
    gap: 2.6666666667vw;
    margin-top: 5.3333333333vw;
  }
  .p-reason-relief-wrap-lists > :nth-child(1) {
    grid-area: list01;
  }
  .p-reason-relief-wrap-lists > :nth-child(2) {
    grid-area: list02;
  }
  .p-reason-relief-wrap-lists > :nth-child(3) {
    grid-area: list03;
  }
  .p-reason-relief-wrap-lists > :nth-child(4) {
    grid-area: list04;
  }
  .p-reason-relief-wrap-lists > :nth-child(5) {
    grid-area: list05;
  }
  .p-reason-relief-wrap-lists > :nth-child(6) {
    grid-area: list06;
  }
  .p-reason-relief-wrap-list {
    font-size: 4.2666666667vw;
    border-radius: 1.0666666667vw;
    padding-block: 2.4vw 2.9333333333vw;
    padding-inline: 4vw;
    gap: 0 2.6666666667vw;
  }
  @supports (-moz-appearance: none) {
    .p-reason-relief-wrap-list {
      padding-inline: 3.4666666667vw;
    }
  }
  @supports (-webkit-hyphens: none) {
    .p-reason-relief-wrap-list {
      padding-inline: 3.4666666667vw;
    }
  }
  .p-reason-relief-wrap-list span {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
  }
  .p-reason-relief-wrap-box {
    gap: 0 4.5333333333vw;
    padding-block: 4.8vw;
    padding-inline: 5.3333333333vw;
    border-radius: 2.6666666667vw;
    margin-top: 5.3333333333vw;
  }
  .p-reason-relief-wrap-box::after {
    background-image: url(./../../images/ai/bg_reason_relief_box_sp.png);
  }
  .p-reason-relief-wrap-box-point {
    width: 19.2vw;
    height: 19.2vw;
  }
  .p-reason-relief-wrap-box-point::before {
    top: -0.8vw;
    width: 13.3333333333vw;
  }
  .p-reason-relief-wrap-box-point::after {
    bottom: -1.8666666667vw;
    right: -5.8666666667vw;
    width: 12vw;
  }
  .p-reason-relief-wrap-box-point-txt {
    font-size: 3.4666666667vw;
    line-height: 1.3846153846;
  }
  .p-reason-relief-wrap-box-point-txt small {
    font-size: 2.9333333333vw;
  }
  .p-reason-relief-wrap-box-point-txt em {
    font-size: 5.3333333333vw;
  }
  .p-reason-relief-wrap-box-txt {
    font-size: 4.2666666667vw;
    line-height: 1.75;
  }
}
/* p-writer
---------------------------------------------------------------------------- */
.p-writer {
  padding-bottom: 7rem;
  background-color: #fff;
  overflow: hidden;
}

.p-writer-swiper {
  overflow: visible;
}

.p-writer-swiper-container {
  position: relative;
  padding-bottom: 5rem;
  margin-top: 7rem;
}

.p-writer-swiper-slide {
  width: 96rem;
  padding-block: 3rem 4rem;
  padding-inline: 5rem;
  border-top: 1rem solid #1043AC;
  border-radius: 1rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(./../../images/ai/bg_writer_slide.png);
  background-color: #F5F5F5;
  box-shadow: 0 0.3rem 2rem rgba(24, 67, 151, 0.3);
}

.p-writer-swiper-slide-box {
  display: flex;
  align-items: flex-start;
  gap: 0 3rem;
}

.p-writer-swiper-slide-box-img {
  width: 14rem;
  aspect-ratio: 1;
  border-radius: 50%;
  overflow: hidden;
}
.p-writer-swiper-slide-box-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.p-writer-swiper-slide-box-wrap {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.p-writer-swiper-slide-box-name {
  display: flex;
  align-items: baseline;
  gap: 0 1.5rem;
}

.p-writer-swiper-slide-box-name-jp {
  font-size: 3.4rem;
  line-height: 1.3235294118;
  letter-spacing: 0.05em;
  font-weight: 900;
  color: #032B7A;
}

.p-writer-swiper-slide-box-name-en {
  font-family: "Noto Serif JP", serif;
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-weight: 700;
  color: #F18825;
}

.p-writer-swiper-slide-box-wrap-txtBox {
  margin-left: 3rem;
  padding-block: 1.7rem;
  padding-inline: 2rem;
  background-color: #fff;
  border-radius: 1rem;
  position: relative;
}

.p-writer-swiper-slide-box-wrap-txtBox::before {
  content: "";
  position: absolute;
  top: 1.5rem;
  right: calc(100% - 1px);
  width: 2.9rem;
  aspect-ratio: 29/17;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(./../../images/ai/icn_writer_swiper_speec_bubble.svg);
}

.p-writer-swiper-slide-box-wrap-txt {
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.03em;
  font-weight: 500;
}

.p-writer-swiper-slide-items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.2rem 4rem;
  margin-top: 3rem;
}

.p-writer-swiper-slide-item {
  display: flex;
  flex-direction: column;
}

.p-writer-swiper-slide-item-ttl {
  width: fit-content;
  height: 2.8rem;
  padding-inline: 1.5rem;
  background-image: linear-gradient(180deg, #1043AC 0, #032B7A 100%);
  background-repeat: no-repeat;
  font-size: 1.4rem;
  line-height: 1;
  font-weight: 900;
  color: #fff;
  text-align: center;
  align-content: center;
  margin-bottom: 0.5rem;
}

.p-writer-swiper-slide-item-txt {
  font-size: 1.4rem;
  line-height: 1.8;
  letter-spacing: 0.03em;
  font-weight: 500;
}

.p-writer-swiper-slide-item-txtLarge {
  font-size: 1.6rem;
  line-height: 1.575;
  letter-spacing: 0.03em;
  font-weight: 500;
}

.p-writer-swiper-slide-item-txtSmall {
  font-size: 1.3rem;
  line-height: 1.9384615385;
  letter-spacing: 0.03em;
  font-weight: 400;
  padding-left: 4em;
  text-indent: -4em;
  margin-top: 0.3rem;
}

.p-writer-swiper-slide-item-list {
  font-size: 1.4rem;
  line-height: 1.8;
  letter-spacing: 0.03em;
  font-weight: 500;
  padding-left: 1em;
  text-indent: -1em;
}

.p-writer-swiper-slide-group {
  padding-block: 1.5rem;
  padding-inline: 2rem;
  background-color: #fff;
  margin-top: 3rem;
}

.p-writer-swiper-slide-group-ttl {
  font-size: 1.4rem;
  line-height: 1.8;
  letter-spacing: 0.03em;
  font-weight: 700;
  color: #F18825;
  margin-bottom: 1rem;
}

.p-writer-swiper-slide-group-txt {
  font-size: 1.4rem;
  line-height: 1.8;
  letter-spacing: 0.03em;
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  .p-writer {
    padding-bottom: 12.8vw;
  }
  .p-writer-swiper-container {
    padding-bottom: 18.6666666667vw;
    margin-top: 7.2vw;
  }
  .p-writer-swiper-slide {
    width: 100%;
    padding-block: 5.3333333333vw 5.8666666667vw;
    padding-inline: 5.3333333333vw;
    border-top-width: 2.6666666667vw;
    border-radius: 2.6666666667vw;
    box-shadow: 0 0 5.3333333333vw rgba(24, 67, 151, 0.18);
  }
  .p-writer-swiper-slide-box {
    display: grid;
    grid-template-areas: "img name" "txtBox txtBox";
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 5.3333333333vw;
  }
  .p-writer-swiper-slide-box-img {
    grid-area: img;
    width: 26.6666666667vw;
  }
  .p-writer-swiper-slide-box-wrap {
    display: contents;
  }
  .p-writer-swiper-slide-box-name {
    grid-area: name;
    flex-direction: column;
    align-items: initial;
    gap: 2.6666666667vw;
  }
  .p-writer-swiper-slide-box-name-jp {
    font-size: 6.4vw;
  }
  .p-writer-swiper-slide-box-name-en {
    font-size: 3.7333333333vw;
  }
  .p-writer-swiper-slide-box-wrap-txtBox {
    grid-area: txtBox;
    margin-left: initial;
    padding-block: 2.6666666667vw;
    padding-inline: 5.3333333333vw;
    border-radius: 2.6666666667vw;
  }
  .p-writer-swiper-slide-box-wrap-txtBox::before {
    top: -3.2vw;
    right: initial;
    left: 8.5333333333vw;
    width: 7.4666666667vw;
    transform: rotate(90deg);
  }
  .p-writer-swiper-slide-box-wrap-txt {
    font-size: 4.2666666667vw;
  }
  .p-writer-swiper-slide-items {
    grid-template-columns: 1fr;
    gap: 4.5333333333vw;
    margin-top: 5.3333333333vw;
  }
  .p-writer-swiper-slide-item-ttl {
    height: 7.7333333333vw;
    padding-inline: 4vw;
    font-size: 4vw;
    margin-bottom: 2.1333333333vw;
  }
  .p-writer-swiper-slide-item-txt {
    font-size: 4.2666666667vw;
    line-height: 1.8;
  }
  .p-writer-swiper-slide-item-txtLarge {
    font-size: 4.2666666667vw;
    line-height: 1.8;
  }
  .p-writer-swiper-slide-item-txtSmall {
    font-size: 3.4666666667vw;
    line-height: 1.9384615385;
    margin-top: -0.8vw;
  }
  .p-writer-swiper-slide-item-list {
    font-size: 3.7333333333vw;
  }
  .p-writer-swiper-slide-group {
    padding-block: 3.4666666667vw;
    padding-inline: 4vw;
    margin-top: 4.5333333333vw;
  }
  .p-writer-swiper-slide-group-ttl {
    font-size: 3.7333333333vw;
    margin-bottom: 1.3333333333vw;
  }
  .p-writer-swiper-slide-group-txt {
    font-size: 3.7333333333vw;
  }
}
/* swiper
---------------------------------------------------------------------------- */
.p-writer-swiper {
  overflow: visible;
}

.p-writer-swiper .p-writer-swiper-slide {
  height: auto;
  opacity: 0.5;
  transition: opacity 0.3s ease 0s;
}
.p-writer-swiper .p-writer-swiper-slide.swiper-slide-active {
  opacity: 1;
}

.p-writer-swiper-container .swiper-button-next,
.p-writer-swiper-container .swiper-button-prev {
  top: 46%;
  z-index: 1;
  width: 7.2rem;
  height: 7.2rem;
  border-radius: 50%;
  color: #fff;
  background-image: linear-gradient(180deg, #FEB202 0, #F18627 100%);
  background-repeat: no-repeat;
  transition: filter 0.3s ease 0s;
}

.p-writer-swiper-container .swiper-button-next {
  right: 10%;
  transform: translate(50%, -50%);
}

.p-writer-swiper-container .swiper-button-prev {
  left: 10%;
  transform: translate(-50%, -50%);
}

.p-writer-swiper-container .swiper-button-next::after,
.p-writer-swiper-container .swiper-button-prev::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1.5rem;
  height: 1.5rem;
  border-top: 0.4rem solid currentColor;
  border-right: 0.4rem solid currentColor;
}

.p-writer-swiper-container .swiper-button-next::after {
  left: 45%;
  transform: translate(-50%, -50%) rotate(45deg);
}

.p-writer-swiper-container .swiper-button-prev::after {
  left: 55%;
  transform: translate(-50%, -50%) rotate(-135deg);
}

@media (any-hover: hover) {
  .p-writer-swiper-container .swiper-button-next:hover,
  .p-writer-swiper-container .swiper-button-prev:hover {
    filter: brightness(1.05);
  }
}
.p-writer-swiper-container .swiper-horizontal > .swiper-pagination-bullets,
.p-writer-swiper-container .swiper-pagination-bullets.swiper-pagination-horizontal,
.p-writer-swiper-container .swiper-pagination-custom,
.p-writer-swiper-container .swiper-pagination-fraction {
  bottom: 0;
  z-index: 0;
}

.p-writer-swiper-container .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.p-writer-swiper-container .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  width: 1.5rem;
  height: 1.5rem;
  background-color: #fff;
  border: 0.2rem solid #ABABAB;
  margin: 0 1rem;
  opacity: 1;
}
.p-writer-swiper-container .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active,
.p-writer-swiper-container .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #ABABAB;
}

@media screen and (max-width: 767px) {
  .p-writer-swiper .p-writer-swiper-slide.swiper-slide-next {
    opacity: 0.5;
  }
  .p-writer-swiper-container .swiper-button-next,
  .p-writer-swiper-container .swiper-button-prev {
    top: initial;
    bottom: 0;
    width: 13.3333333333vw;
    height: 13.3333333333vw;
    transform: initial;
  }
  .p-writer-swiper-container .swiper-button-next {
    right: calc(50% - 26.6666666667vw);
  }
  .p-writer-swiper-container .swiper-button-prev {
    left: calc(50% - 26.6666666667vw);
  }
  .p-writer-swiper-container .swiper-button-next::after,
  .p-writer-swiper-container .swiper-button-prev::after {
    width: 2.4vw;
    height: 2.4vw;
    border-top-width: 0.8vw;
    border-right-width: 0.8vw;
  }
  .p-writer-swiper-container .swiper-horizontal > .swiper-pagination-bullets,
  .p-writer-swiper-container .swiper-pagination-bullets.swiper-pagination-horizontal,
  .p-writer-swiper-container .swiper-pagination-custom,
  .p-writer-swiper-container .swiper-pagination-fraction {
    bottom: 3.4666666667vw;
  }
  .p-writer-swiper-container .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
  .p-writer-swiper-container .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    width: 3.2vw;
    height: 3.2vw;
    margin: 0 1.6vw;
  }
}
/* p-plan
---------------------------------------------------------------------------- */
.p-plan {
  padding-bottom: 12rem;
  background-color: #E3EDFF;
}

.p-plan-container {
  padding-block: 5rem 5rem;
  padding-inline: 5rem;
  border-radius: 1rem;
  overflow: hidden;
  box-shadow: 0 0 2rem rgba(0, 0, 0, 0.18);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(./../../images/ai/bg_plan_container_pc.png);
  margin-top: 4.5rem;
  position: relative;
}

.p-plan-container::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 1rem;
  background-color: #1042AA;
}

.p-plan-wrapper {
  display: flex;
  align-items: center;
  gap: 0 4.5rem;
}

.p-plan-wrap {
  display: flex;
  align-items: center;
  gap: 0 2rem;
}

.p-plan-wrap-txt {
  width: 14.7rem;
  height: 3.7rem;
  background-color: #fff;
  border: 1px solid #DEDEDE;
  border-radius: 10vmax;
  font-size: 2rem;
  line-height: 1;
  letter-spacing: 0.05em;
  font-weight: 900;
  color: #F18627;
  text-align: center;
  align-content: center;
  margin-top: 3.5rem;
}

.p-plan-wrap-box {
  display: flex;
  align-items: center;
  gap: 0 1.5rem;
}

.p-plan-wrap-box-price {
  font-family: "Bebas Neue", sans-serif;
  font-size: 11.2rem;
  line-height: 1;
  font-weight: 700;
  background-image: linear-gradient(180deg, #FEB202 0, #F18627 100%);
  background-repeat: no-repeat;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.p-plan-wrap-box-txt {
  display: flex;
  flex-direction: column;
}
.p-plan-wrap-box-txt ._txt01 {
  font-size: 2rem;
  line-height: 1;
  font-weight: 900;
}
.p-plan-wrap-box-txt ._txt02 {
  font-size: 4rem;
  line-height: 1.45;
  font-weight: 900;
}

.p-plan-wrapper-lists {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.p-plan-wrapper-list {
  font-size: 1.4rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-weight: 500;
  padding-left: 1em;
  text-indent: -1em;
}

.p-plan-hedge {
  margin-top: 3.3rem;
}

.p-plan-hedge-ttl {
  font-size: 3rem;
  line-height: 1.4666666667;
  letter-spacing: 0.05em;
  font-weight: 900;
  color: #032B7A;
  padding-left: 2rem;
  position: relative;
}

.p-plan-hedge-ttl::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0.6rem;
  height: 100%;
  background-image: linear-gradient(180deg, #FEB202 0, #F18627 100%);
  background-repeat: no-repeat;
}

.p-plan-hedge-items {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0 2rem;
  margin-top: 2rem;
}

.p-plan-hedge-item {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 14.9rem;
  border-radius: 1rem;
  overflow: hidden;
  background-color: #fff;
  box-shadow: 0 0 1rem rgba(24, 67, 151, 0.18);
}

.p-plan-hedge-item-ttl {
  height: 5.1rem;
  background-image: linear-gradient(180deg, #1043AC 0, #032B7A 100%);
  background-repeat: no-repeat;
  font-size: 1.8rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 900;
  color: #fff;
  text-align: center;
  align-content: center;
}

.p-plan-hedge-item-box {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.p-plan-hedge-item-box-txt {
  display: flex;
  align-items: baseline;
  gap: 0 0.5rem;
}
.p-plan-hedge-item-box-txt ._num {
  font-family: "Bebas Neue", sans-serif;
  font-size: 5rem;
  line-height: 1;
  font-weight: 700;
  color: #032B7A;
}
.p-plan-hedge-item-box-txt ._txt {
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 900;
}

.p-plan-hedge-item-box-txtSmall {
  font-size: 1.4rem;
  line-height: 1.4285714286;
  letter-spacing: 0.05em;
  font-weight: 500;
}

.p-plan-hedge-txt {
  font-size: 1.4rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-weight: 500;
  padding-left: 1em;
  text-indent: -1em;
  margin-top: 1.5rem;
}

.p-plan-block {
  display: flex;
  width: 100%;
  height: 20rem;
  background-color: #fff;
  border: 0.4rem solid #032B7A;
  border-radius: 1rem;
  margin-top: 4.7rem;
}

.p-plan-block-ttl {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 30.4rem;
  height: 100%;
  background-image: linear-gradient(180deg, #1043AC 0, #032B7A 100%);
  background-repeat: no-repeat;
  position: relative;
}

.p-plan-block-ttl::after {
  content: "";
  position: absolute;
  top: 50%;
  left: calc(100% - 1px);
  transform: translateY(-50%);
  width: 1.8rem;
  height: 4.7rem;
  clip-path: polygon(1.8rem 50%, 0% 0%, 0% 4.7rem);
  background-image: linear-gradient(90deg, #1043AC 0, #032B7A 100%);
  background-repeat: no-repeat;
}

.p-plan-block-ttl em {
  font-size: 3.2rem;
  line-height: 1.34375;
  letter-spacing: 0.05em;
  font-weight: 900;
  color: #fff;
  position: relative;
}
.p-plan-block-ttl em::before {
  content: "";
  position: absolute;
  top: -1.5rem;
  left: -2rem;
  width: 2.2rem;
  aspect-ratio: 22/17;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(./../../images/ai/icn_plan_block_ttl.svg);
}
.p-plan-block-ttl em span {
  display: inline-block;
  transform: rotate(10deg);
}

.p-plan-block-wrap {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-inline: 4rem 0;
}

.p-plan-block-wrap-txt01 {
  font-size: 1.8rem;
  line-height: 1.6666666667;
  letter-spacing: 0.05em;
  font-weight: 700;
}
.p-plan-block-wrap-txt01 em {
  display: inline-block;
  color: #032B7A;
  margin-right: 0.1em;
}
.p-plan-block-wrap-txt01 small {
  font-size: 1.4rem;
}

.p-plan-block-wrap-txt02 {
  font-size: 2.8rem;
  line-height: 1.6071428571;
  letter-spacing: 0.05em;
  font-weight: 900;
  margin-block: 0.3rem;
}
.p-plan-block-wrap-txt02 em {
  font-size: 3.6rem;
  display: inline-block;
  background-image: linear-gradient(180deg, #1043AC 0, #032B7A 100%);
  background-repeat: no-repeat;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-inline: 0.1em;
}
.p-plan-block-wrap-txt02 em small {
  font-size: 2.8rem;
}

.p-plan-block-wrap-txt03 {
  font-size: 1.8rem;
  line-height: 1.6666666667;
  letter-spacing: 0.05em;
  font-weight: 700;
}

.p-plan-group {
  width: 100%;
  max-width: 89rem;
  margin-inline: auto;
  margin-top: 7rem;
  position: relative;
}

.p-plan-group-container {
  background-color: #FCF9F2;
  border: 0.4rem solid #F18825;
  border-radius: 1rem;
  overflow: hidden;
}

.p-plan-group-box {
  height: 7.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: linear-gradient(180deg, #FEB202 0, #F18627 100%);
  background-repeat: no-repeat;
  position: relative;
}

.p-plan-group-box::after {
  content: "";
  position: absolute;
  top: calc(100% - 1px);
  left: 50%;
  transform: translateX(-50%);
  width: 4.65rem;
  height: 1.9rem;
  clip-path: polygon(50% 1.9rem, 0% 0%, 4.65rem 0%);
  background-image: linear-gradient(180deg, #F18627 0, #FEB202 100%);
  background-repeat: no-repeat;
}

.p-plan-group-box-ttl {
  display: flex;
  align-items: center;
  gap: 0 1.8rem;
  padding-inline: 3.3rem;
  position: relative;
}

.p-plan-group-box-ttl::before,
.p-plan-group-box-ttl::after {
  content: "";
  position: absolute;
  top: 0;
  width: 1.83rem;
  aspect-ratio: 18.3/20.05;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(./../../images/ai/icn_plan_group_box_ttl.svg);
}

.p-plan-group-box-ttl::before {
  left: 0;
}

.p-plan-group-box-ttl::after {
  transform: scale(-1, 1);
  right: 0;
}

.p-plan-group-box-ttl ._txt01 {
  font-size: 2rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 700;
  color: #032B7A;
  background-color: #fff;
  border-radius: 10vmax;
  padding-block: 0.4rem;
  padding-inline: 1.2rem 1rem;
}

.p-plan-group-box-ttl ._txt02 {
  font-size: 3.2rem;
  line-height: 1.34375;
  letter-spacing: 0.05em;
  font-weight: 900;
  color: #fff;
}

.p-plan-group-wrapper {
  display: flex;
  align-items: center;
  gap: 0 3rem;
  padding-block: 2.5rem 3.5rem;
  padding-inline: 6.6rem 5rem;
}

.p-plan-group-wrapper-img {
  width: 13.45rem;
  aspect-ratio: 134.5/133.8;
}
.p-plan-group-wrapper-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  filter: drop-shadow(0 0 1rem rgba(24, 67, 151, 0.18));
}

.p-plan-group-wrap {
  flex: 1;
}

.p-plan-group-wrap-read ._box {
  display: inline-block;
  font-size: 3rem;
  line-height: 1.2;
  letter-spacing: 0.05em;
  font-weight: 900;
  color: #fff;
  background-color: #F18825;
  padding-inline: 0.8rem;
  margin-right: 0.5rem;
}
.p-plan-group-wrap-read ._underline {
  background-image: linear-gradient(to bottom, transparent 60%, #FEFF46 60%);
  background-repeat: no-repeat;
  margin-inline: 0.5rem;
}
.p-plan-group-wrap-read ._num {
  display: inline-block;
  font-family: "Bebas Neue", sans-serif;
  font-size: 8.9rem;
  line-height: 1;
  font-weight: 700;
  background-image: linear-gradient(180deg, #FEB202 0, #F18627 100%);
  background-repeat: no-repeat;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.p-plan-group-wrap-read ._fzLarge {
  font-size: 3.5rem;
  line-height: 1.4571428571;
  font-weight: 900;
  margin-left: 1rem;
}
.p-plan-group-wrap-read ._fz {
  display: inline-block;
  font-size: 3rem;
  line-height: 1.4666666667;
  letter-spacing: 0.05em;
  font-weight: 900;
}
.p-plan-group-wrap-read small {
  font-size: 2.6rem;
  line-height: 1.3846153846;
  letter-spacing: 0.05em;
  font-weight: 900;
}

.p-plan-group-lists {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-top: 1.2rem;
}

.p-plan-group-list {
  font-size: 1.4rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-weight: 500;
  padding-left: 1em;
  text-indent: -1em;
}

@media screen and (max-width: 767px) {
  .p-plan {
    padding-bottom: 12.5333333333vw;
  }
  .p-plan-container {
    padding-block: 9.8666666667vw 8vw;
    padding-inline: 5.3333333333vw;
    border-radius: 2.6666666667vw;
    box-shadow: 0 0 5.3333333333vw rgba(0, 0, 0, 0.18);
    margin-top: 8vw;
  }
  .p-plan-container::before {
    height: 2.6666666667vw;
  }
  .p-plan-wrapper {
    flex-direction: column;
    align-items: initial;
    gap: 3.4666666667vw;
  }
  .p-plan-wrap {
    gap: 0 3.4666666667vw;
  }
  @supports (-moz-appearance: none) {
    .p-plan-wrap {
      gap: 0 1.3333333333vw;
    }
  }
  .p-plan-wrap-txt {
    width: 25.3333333333vw;
    height: 6.9333333333vw;
    font-size: 4.2666666667vw;
    margin-top: 2.6666666667vw;
  }
  @supports (-moz-appearance: none) {
    .p-plan-wrap-txt {
      width: 24vw;
    }
  }
  .p-plan-wrap-box {
    flex: 1;
    gap: 0 1.8666666667vw;
  }
  .p-plan-wrap-box-price {
    font-size: 16vw;
  }
  @supports (-webkit-hyphens: none) {
    .p-plan-wrap-box-price {
      letter-spacing: -0.03em;
    }
  }
  @supports (-moz-appearance: none) {
    .p-plan-wrap-box-price {
      letter-spacing: -0.03em;
    }
  }
  .p-plan-wrap-box-txt ._txt01 {
    font-size: 3.2vw;
  }
  .p-plan-wrap-box-txt ._txt02 {
    font-size: 6.4vw;
    line-height: 1.4583333333;
  }
  .p-plan-wrapper-lists {
    gap: 1.3333333333vw;
  }
  .p-plan-wrapper-list {
    font-size: 3.7333333333vw;
  }
  .p-plan-hedge {
    margin-top: 7.2vw;
  }
  .p-plan-hedge-ttl {
    font-size: 6.4vw;
    line-height: 1.5;
    padding-left: 4vw;
  }
  .p-plan-hedge-ttl::before {
    width: 1.6vw;
  }
  .p-plan-hedge-items {
    grid-template-columns: 1fr;
    gap: 4vw;
    margin-top: 5.3333333333vw;
  }
  .p-plan-hedge-item {
    height: auto;
    border-radius: 2.6666666667vw;
    box-shadow: 0 0 2.6666666667vw rgba(24, 67, 151, 0.18);
  }
  .p-plan-hedge-item-ttl {
    height: 12.5333333333vw;
    font-size: 4.8vw;
  }
  .p-plan-hedge-item-box {
    padding-block: 3.4666666667vw;
  }
  .p-plan-hedge-item-box-txt {
    gap: 0 1.3333333333vw;
  }
  .p-plan-hedge-item-box-txt ._num {
    font-size: 13.3333333333vw;
  }
  .p-plan-hedge-item-box-txt ._txt {
    font-size: 4.2666666667vw;
  }
  .p-plan-hedge-item-box-txtSmall {
    font-size: 3.7333333333vw;
  }
  .p-plan-hedge-txt {
    font-size: 3.7333333333vw;
    margin-top: 4.5333333333vw;
  }
  .p-plan-block {
    flex-direction: column;
    height: auto;
    border-width: 1.0666666667vw;
    border-radius: 2.6666666667vw;
    margin-top: 7.2vw;
  }
  .p-plan-block-ttl {
    width: 100%;
    height: auto;
    padding-block: 6.6666666667vw 7.2vw;
  }
  .p-plan-block-ttl::after {
    top: calc(100% - 1.3333333333vw);
    left: 50%;
    transform: translate(-50%, 0);
    width: 11.7333333333vw;
    height: 5.0666666667vw;
    clip-path: polygon(50% 5.0666666667vw, 0% 0%, 11.7333333333vw 0%);
  }
  .p-plan-block-ttl em {
    font-size: 5.0666666667vw;
    line-height: 1.5263157895;
    text-align: center;
    padding-left: 0.8vw;
  }
  .p-plan-block-ttl em::before {
    top: -2.6666666667vw;
    left: -3.2vw;
    width: 4.9333333333vw;
  }
  .p-plan-block-ttl em span {
    font-size: 6.4vw;
    line-height: 1;
  }
  .p-plan-block-wrap {
    padding-block: 7.2vw 5.8666666667vw;
    padding-inline: 4.2666666667vw;
  }
  .p-plan-block-wrap-txt01 {
    font-size: 4.2666666667vw;
    line-height: 1.75;
  }
  .p-plan-block-wrap-txt01 small {
    font-size: 3.7333333333vw;
  }
  .p-plan-block-wrap-txt02 {
    font-size: 5.3333333333vw;
    line-height: 1.5;
    margin-block: 2.1333333333vw 1.3333333333vw;
  }
  .p-plan-block-wrap-txt02 em {
    font-size: 6.4vw;
    display: inline;
  }
  .p-plan-block-wrap-txt02 em small {
    font-size: 5.3333333333vw;
  }
  .p-plan-block-wrap-txt03 {
    font-size: 4.2666666667vw;
    line-height: 1.75;
  }
  .p-plan-group {
    max-width: 78.6666666667vw;
    margin-top: 18.6666666667vw;
  }
  .p-plan-group-container {
    border-width: 1.0666666667vw;
    border-radius: 2.6666666667vw;
  }
  .p-plan-group-box {
    height: 27.4666666667vw;
  }
  .p-plan-group-box::after {
    width: 7.8533333333vw;
    height: 3.4133333333vw;
    clip-path: polygon(50% 3.4133333333vw, 0% 0%, 7.8533333333vw 0%);
  }
  .p-plan-group-box-ttl {
    flex-direction: column;
    align-items: center;
    gap: 0.5333333333vw;
    padding-inline: initial;
  }
  .p-plan-group-box-ttl::before,
  .p-plan-group-box-ttl::after {
    content: none;
  }
  .p-plan-group-box-ttl ._txt01 {
    font-size: 4vw;
    line-height: 1.9333333333;
    padding-block: 1.0666666667vw;
    padding-inline: 4vw 2.6666666667vw;
  }
  .p-plan-group-box-ttl ._txt02 {
    font-size: 6.9333333333vw;
    line-height: 1.3846153846;
  }
  .p-plan-group-wrapper {
    justify-content: center;
    gap: initial;
    padding-block: 6.6666666667vw 6.1333333333vw;
    padding-inline: 4vw;
  }
  .p-plan-group-wrapper-img {
    position: absolute;
    top: -8vw;
    left: -5.3333333333vw;
    width: 21.3333333333vw;
  }
  .p-plan-group-wrapper-img img {
    filter: drop-shadow(0 0 2.6666666667vw rgba(0, 0, 0, 0.16));
  }
  .p-plan-group-wrap {
    display: contents;
  }
  .p-plan-group-wrap-read ._box {
    font-size: 5.3333333333vw;
    line-height: 1.15;
    padding-inline: 1.3333333333vw;
    margin-right: 1.3333333333vw;
  }
  .p-plan-group-wrap-read ._underline {
    margin-inline: 0 1.3333333333vw;
  }
  .p-plan-group-wrap-read ._num {
    font-size: 15.4666666667vw;
    margin-block: 4vw 0.2666666667vw;
  }
  .p-plan-group-wrap-read ._fzLarge {
    font-size: 5.8666666667vw;
    line-height: 1.4545454545;
    margin-left: 2.6666666667vw;
  }
  .p-plan-group-wrap-read ._fz {
    font-size: 4.8vw;
    line-height: 1.5555555556;
    margin-left: 1.8666666667vw;
  }
  .p-plan-group-wrap-read small {
    font-size: 4.8vw;
    line-height: 1.5555555556;
  }
  .p-plan-group-wrap-read ._sptac {
    display: block;
    text-align: center;
  }
  .p-plan-group-lists {
    gap: 1.3333333333vw;
    margin-top: 3.4666666667vw;
  }
  .p-plan-group-list {
    font-size: 3.7333333333vw;
  }
}
/* p-flow
---------------------------------------------------------------------------- */
.p-flow {
  padding-bottom: 12rem;
}

.p-flow-items {
  display: flex;
  justify-content: space-between;
  gap: 0 3rem;
  margin-top: 5.5rem;
}

.p-flow-item {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  position: relative;
}

.p-flow-item:not(:first-child)::before,
.p-flow-item:not(:first-child)::after {
  content: "";
  position: absolute;
}

.p-flow-item:not(:first-child)::before {
  top: 2.4rem;
  right: 50%;
  z-index: -1;
  width: 135%;
  height: 0.2rem;
  background-color: #DEDEDE;
}

.p-flow-item:not(:first-child)::after {
  bottom: 7.2rem;
  left: -4.8rem;
  width: 2rem;
  height: 3.5rem;
  clip-path: polygon(2rem 50%, 0% 0%, 0% 3.5rem);
  background-image: linear-gradient(90deg, #FEB202 0, #F18627 100%);
  background-repeat: no-repeat;
}

.p-flow-item-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}

.p-flow-item-box-num {
  font-family: "Bebas Neue", sans-serif;
  font-size: 3rem;
  line-height: 1;
  font-weight: 700;
  line-height: 0.75;
  color: #fff;
  width: 5rem;
  aspect-ratio: 1;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: linear-gradient(180deg, #1043AC 0, #032B7A 100%);
  background-repeat: no-repeat;
  border: 0.3rem solid currentColor;
  box-shadow: 0 0 0.6rem rgba(0, 0, 0, 0.18);
  padding-top: 0.2rem;
}

.p-flow-item-box-ttl {
  font-size: 2rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 900;
  color: #032B7A;
  text-align: center;
}

.p-flow-item-img {
  width: 18rem;
  aspect-ratio: 1;
  border-radius: 0.4rem;
  overflow: hidden;
}
.p-flow-item-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

@media screen and (max-width: 767px) {
  .p-flow {
    padding-bottom: 13.3333333333vw;
  }
  .p-flow-items {
    flex-wrap: wrap;
    justify-content: center;
    gap: 5.3333333333vw 6.1538461538%;
    margin-top: 8.2666666667vw;
  }
  .p-flow-item {
    justify-content: space-between;
    gap: 2.6666666667vw;
    width: 46.9230769231%;
  }
  .p-flow-item:not(:first-child)::before {
    content: none;
  }
  .p-flow-item:not(:first-child)::after {
    bottom: 8.5333333333vw;
    left: -5.3333333333vw;
    width: 5.3333333333vw;
    height: 9.3333333333vw;
    clip-path: polygon(5.3333333333vw 50%, 0% 0%, 0% 9.3333333333vw);
  }
  .p-flow-item:nth-child(3)::after {
    content: none;
  }
  .p-flow-item-box {
    flex-direction: row;
    align-items: initial;
    gap: 0 2.6666666667vw;
  }
  .p-flow-item-box._05 {
    justify-content: center;
  }
  .p-flow-item-box-num {
    font-size: 6.1333333333vw;
    width: 10.6666666667vw;
    border-width: 0.8vw;
    box-shadow: 0 0 1.6vw rgba(0, 0, 0, 0.18);
    padding-top: 0.5333333333vw;
    align-self: center;
  }
  .p-flow-item-box-ttl {
    font-size: 4.8vw;
    line-height: 1.5;
    text-align: left;
    align-content: center;
  }
  .p-flow-item-img {
    width: 26.6666666667vw;
    border-radius: 1.0666666667vw;
    align-self: center;
  }
}
/* p-faq
---------------------------------------------------------------------------- */
.p-faq {
  padding-bottom: 12rem;
}

.p-faq-container {
  max-width: 100rem;
  margin-inline: auto;
  margin-top: 5.5rem;
}

.p-faq-accordion {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

.p-faq-accordion-item {
  background-color: #fff;
  border-radius: 0.3rem;
  overflow: hidden;
  box-shadow: 0 0 1rem rgba(24, 67, 151, 0.18);
}

.p-faq-accordion-title {
  cursor: pointer;
  font-size: 1.8rem;
  line-height: 1.8;
  letter-spacing: 0.03em;
  font-weight: 700;
  width: 100%;
  align-content: center;
  padding-block: 1.6rem;
  padding-inline: 6rem 7rem;
  background-color: #E3EDFF;
  user-select: none;
  -webkit-user-select: none;
  position: relative;
}

.p-faq-accordion-title::before {
  content: "Q";
  position: absolute;
  top: 47%;
  left: 2rem;
  transform: translateY(-50%);
  font-size: 3rem;
  line-height: 1.3;
  font-weight: 900;
  background-image: linear-gradient(180deg, #1043AC 0, #032B7A 100%);
  background-repeat: no-repeat;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.p-faq-accordion-title.open .p-faq-accordion-icon {
  transform: translateY(-50%) rotate(45deg);
}

.p-faq-accordion-icon {
  display: inline-block;
  position: absolute;
  top: 55%;
  right: 3rem;
  width: 1.5rem;
  aspect-ratio: 1;
  border-top: 0.3rem solid #032B7A;
  border-left: 0.3rem solid #032B7A;
  transform: translateY(-50%) rotate(225deg);
  transform-origin: 50% 40%;
  transition: transform 0.3s ease, top 0.3s ease;
}

.p-faq-accordion-content {
  display: none;
  padding-block: 1.8rem;
  padding-inline: 6rem 3rem;
  position: relative;
}

.p-faq-accordion-content-txt {
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.03em;
  font-weight: 500;
}
.open .p-faq-accordion-content-txt::before {
  top: 2rem;
}

.p-faq-accordion-content-txt::before {
  content: "A";
  position: absolute;
  top: 0.5rem;
  left: 2rem;
  font-size: 3rem;
  line-height: 1;
  font-weight: 900;
  background-image: linear-gradient(180deg, #FEB202 0, #F18627 100%);
  background-repeat: no-repeat;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  transition: top 0.3s ease-in-out;
}

.p-faq-accordion-content-txt-item,
.p-faq-accordion-content-txt-list {
  padding-left: 1em;
  text-indent: -1em;
}

.p-faq-accordion-content-txt-box {
  padding-left: 5.5em;
  text-indent: -5.5em;
}

@media screen and (max-width: 767px) {
  .p-faq {
    padding-bottom: 13.3333333333vw;
  }
  .p-faq-container {
    max-width: initial;
    margin-top: 7.4666666667vw;
  }
  .p-faq-accordion {
    gap: 5.3333333333vw;
  }
  .p-faq-accordion-item {
    border-radius: 0.8vw;
    box-shadow: 0 0 2.6666666667vw rgba(24, 67, 151, 0.18);
  }
  .p-faq-accordion-title {
    font-size: 4.2666666667vw;
    line-height: 1.75;
    padding-block: 3.7333333333vw;
    padding-inline: 14.1333333333vw 16vw;
  }
  .p-faq-accordion-title::before {
    left: 5.3333333333vw;
    font-size: 6.9333333333vw;
  }
  .p-faq-accordion-icon {
    right: 5.3333333333vw;
    width: 4vw;
    border-width: 0.8vw;
  }
  .p-faq-accordion-content {
    padding-block: 3.7333333333vw;
    padding-inline: 14.1333333333vw 5.3333333333vw;
  }
  .p-faq-accordion-content-txt {
    font-size: 4.2666666667vw;
    line-height: 1.75;
  }
  .open .p-faq-accordion-content-txt::before {
    top: 3.2vw;
  }
  .p-faq-accordion-content-txt::before {
    font-size: 6.9333333333vw;
    top: 1.3333333333vw;
    left: 5.3333333333vw;
  }
}
/* 下層ページ共通（m-contact）
---------------------------------------------------------------------------- */
/* m-contact
---------------------------------------------------------------------------- */
.m-contact {
  padding-bottom: 10rem;
  position: relative;
}

.m-contact::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  background-color: #fff;
}

.m-contact-txt {
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.03em;
  font-weight: 400;
  text-align: center;
  margin-top: 4.5rem;
}

.m-contact-items {
  display: flex;
  justify-content: center;
  gap: 0 17rem;
  margin-top: 4rem;
}

.m-contact-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  position: relative;
}

.m-contact-item:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 2.2rem;
  left: 50%;
  z-index: -1;
  width: 21.5rem;
  height: 0.3rem;
  background-color: #D7D8DA;
}

.m-contact-item-num {
  width: 4.7rem;
  height: 4.7rem;
  border-radius: 50%;
  background-color: #F6F7F8;
  border: 0.3rem solid #D7D8DA;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.m-contact-item-num span {
  font-size: 1.8rem;
  line-height: 1;
  letter-spacing: 0.06em;
  font-weight: 700;
}
.m-contact-item-num._current {
  border: none;
}

.m-contact-item-num._current::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(./../../images/ai/icn_check_circle_contact.svg);
}

.m-contact-item-txt {
  font-size: 2rem;
  line-height: 1.4;
  letter-spacing: 0.05em;
  font-weight: 700;
}

.m-contact-thanks {
  margin-top: 4rem;
}

.m-contact-thanks-ttl {
  font-size: 2.4rem;
  line-height: 1.5;
  font-weight: 700;
  text-align: center;
}

.m-contact-thanks-txt {
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.03em;
  font-weight: 400;
  text-align: center;
  margin-top: 2rem;
}

.m-contact-thanks-button {
  margin-top: 4rem;
}
.m-contact-thanks-button .c-btn {
  margin-inline: auto;
}

@media screen and (max-width: 767px) {
  .m-contact {
    padding-bottom: 21.3333333333vw;
  }
  .m-contact-txt {
    font-size: 4.2666666667vw;
    line-height: 1.75;
    margin-top: 6.4vw;
  }
  .m-contact-items {
    justify-content: space-between;
    gap: 0 5.3333333333vw;
    margin-top: 5.3333333333vw;
  }
  .m-contact-item {
    gap: 2.6666666667vw;
  }
  .m-contact-item:not(:last-child)::after {
    top: 5.8666666667vw;
    width: 32vw;
    height: 0.8vw;
  }
  .m-contact-item-num {
    width: 12.5333333333vw;
    height: 12.5333333333vw;
    border-width: 0.8vw;
  }
  .m-contact-item-num span {
    font-size: 4.8vw;
  }
  .m-contact-item-txt {
    font-size: 4.8vw;
  }
  .m-contact-thanks {
    margin-top: 5.3333333333vw;
  }
  .m-contact-thanks-ttl {
    font-size: 5.3333333333vw;
  }
  .m-contact-thanks-txt {
    font-size: 4.2666666667vw;
    text-align: left;
    margin-top: 5.3333333333vw;
  }
  .m-contact-thanks-button {
    margin-top: 5.3333333333vw;
  }
}
/* m-contactForm（フォーム）
---------------------------------------------------------------------------- */
.m-contactForm {
  width: 100%;
  max-width: 100rem;
  background-color: #F6F7F8;
  border-radius: 1rem;
  margin-inline: auto;
  margin-top: 4rem;
}

.m-contactForm-container {
  padding-block: 6rem;
  padding-inline: 18rem;
}

.m-contactForm-items {
  display: flex;
  flex-direction: column;
  gap: 3.75rem;
}

.m-contactForm-item {
  display: flex;
  flex-direction: column;
  gap: 1.3rem;
}

.m-contactForm-label {
  display: flex;
  align-items: center;
  gap: 0 2rem;
}

.m-contactForm-label-str {
  font-size: 1.8rem;
  line-height: 1.5555555556;
  letter-spacing: 0.05em;
  font-weight: 700;
}
.m-contactForm-label-str span {
  font-size: 1.4rem;
}

.m-contactForm-label-any,
.m-contactForm-label-required {
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.06em;
  font-weight: 700;
  padding-block: 0.4rem 0.6rem;
  padding-inline: 0.7rem;
  color: #fff;
  background-color: #D21708;
}

.m-contactForm-label-any {
  background-color: #9E9E9E;
}

.m-contactForm-inputBox {
  width: 100%;
}

.m-contactForm-inputBox.inputBox--confirm {
  font-size: 1.6rem;
  line-height: 1.625;
  letter-spacing: 0.06em;
  font-weight: 400;
}

.m-contactForm-input.input--text,
.m-contactForm-input.input--email {
  font-size: 1.6rem;
  line-height: 1.625;
  letter-spacing: 0.06em;
  font-weight: 400;
  width: 100%;
  padding-block: 1.2rem;
  padding-inline: 2rem;
  border: 1px solid #D7D8DA;
  background-color: #fff;
  border-radius: 0.4rem;
}

.m-contactForm-input::placeholder {
  font-size: 1.6rem;
  color: #D7D8DA;
}

.m-contactForm-input.input--textarea {
  resize: vertical;
  white-space: pre-wrap;
  min-height: 20rem;
  padding: 1rem;
}

.m-contactForm-read {
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.03em;
  font-weight: 400;
  text-align: center;
  margin-top: 3.5rem;
}
.m-contactForm-read a {
  font-weight: 700;
  text-decoration: underline;
  color: #032B7A;
}
.m-contactForm-read a:hover {
  text-decoration: none;
}

.m-contactForm-button {
  width: 32.5rem;
  margin-inline: auto;
  position: relative;
}

.m-contactForm-button::after {
  content: "";
  position: absolute;
  top: 42%;
  right: 2.5rem;
  z-index: 1;
  width: 0.9rem;
  aspect-ratio: 1;
  border-top: 0.3rem solid #fff;
  border-right: 0.3rem solid #fff;
  transform: rotate(45deg);
  transition: transform 0.3s ease;
  pointer-events: none;
}

.m-contactForm-button:hover::after {
  transform: translateY(0.6rem) rotate(45deg);
}

.m-contactForm-button [type=submit] {
  font-size: 2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #fff;
  width: 100%;
  height: 6.8rem;
  background-image: linear-gradient(180deg, #FEB202 0, #F18627 100%);
  background-repeat: no-repeat;
  border: 0.3rem solid #fff;
  border-radius: 10vmax;
  box-shadow: 0 0.6rem 0 #A55103;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-right: 1rem;
  cursor: pointer;
}
.m-contactForm-button [type=submit]:hover {
  transform: translateY(0.6rem);
  box-shadow: 0 0 0 #A55103;
}

@media screen and (max-width: 767px) {
  .m-contactForm {
    max-width: initial;
    border-radius: 2.6666666667vw;
    margin-top: 8vw;
  }
  .m-contactForm-container {
    padding-block: 8vw 10.1333333333vw;
    padding-inline: 5.3333333333vw;
  }
  .m-contactForm-items {
    gap: 6.1333333333vw;
  }
  .m-contactForm-item {
    gap: 3.2vw;
  }
  .m-contactForm-label {
    gap: 0 5.3333333333vw;
  }
  .m-contactForm-label.label--email, .m-contactForm-label.label--tel {
    justify-content: space-between;
    gap: 0 1.3333333333vw;
  }
  .m-contactForm-label-str {
    font-size: 4.8vw;
  }
  .m-contactForm-label-str span {
    font-size: 3.7333333333vw;
  }
  @supports (-moz-appearance: none) {
    .m-contactForm-label-str span {
      font-size: 3.4666666667vw;
    }
  }
  @supports (-webkit-hyphens: none) {
    .m-contactForm-label-str span {
      font-size: 3.4666666667vw;
    }
  }
  .m-contactForm-label-any,
  .m-contactForm-label-required {
    font-size: 3.7333333333vw;
    padding-block: 1.0666666667vw 1.6vw;
    padding-inline: 1.8666666667vw;
  }
  .m-contactForm-inputBox.inputBox--confirm {
    font-size: 4.2666666667vw;
  }
  .m-contactForm-input.input--text,
  .m-contactForm-input.input--email {
    font-size: 4.2666666667vw;
    padding-block: 3.2vw;
    padding-inline: 5.3333333333vw;
    border-radius: 1.0666666667vw;
  }
  .m-contactForm-input::placeholder {
    font-size: 4.2666666667vw;
  }
  .m-contactForm-input.input--textarea {
    min-height: 53.3333333333vw;
    padding: 2.6666666667vw;
  }
  .m-contactForm-read {
    font-size: 4.2666666667vw;
    line-height: 1.75;
    text-align: left;
    margin-top: 5.3333333333vw;
  }
  .m-contactForm-button {
    width: 100%;
  }
  .m-contactForm-button::after {
    top: 44%;
    right: 8vw;
    width: 2.4vw;
    border-top-width: 0.8vw;
    border-right-width: 0.8vw;
  }
  .m-contactForm-button:hover::after {
    transform: translateY(1.6vw) rotate(45deg);
  }
  .m-contactForm-button [type=submit] {
    font-size: 4.8vw;
    line-height: 1.5555555556;
    height: 18.1333333333vw;
    border-width: 0.8vw;
    box-shadow: 0 1.6vw 0 #A55103;
    padding-right: 4.8vw;
  }
  .m-contactForm-button [type=submit]:hover {
    transform: translateY(1.6vw);
  }
}
/* p-contactForm-button
---------------------------------------------------------------------------- */
.p-contactForm-button {
  margin-top: 4rem;
}

.p-contactForm-buttonArea {
  position: relative;
  margin-top: 4rem;
}

.p-contactForm-button-reverse {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: fit-content;
  height: auto;
}

.p-contactForm-button-reverse::before {
  content: "";
  position: absolute;
  top: 1rem;
  left: 0.5rem;
  z-index: 1;
  width: 0.8rem;
  aspect-ratio: 1;
  border-left: 0.2rem solid #032B7A;
  border-bottom: 0.2rem solid #032B7A;
  transform: rotate(45deg);
  pointer-events: none;
}

.p-contactForm-button-reverse [type=button] {
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-weight: 700;
  color: #032B7A;
  padding-left: 2rem;
  border-bottom: 1px solid currentColor;
  background-color: initial;
  cursor: pointer;
  transition: opacity 0.3s ease 0s;
}
.p-contactForm-button-reverse [type=button]:hover {
  border-color: transparent;
  opacity: 0.8;
}

@media screen and (max-width: 767px) {
  .p-contactForm-button {
    margin-top: 5.3333333333vw;
  }
  .p-contactForm-buttonArea {
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    gap: 8vw;
    margin-top: 6.4vw;
  }
  .p-contactForm-button-reverse {
    position: relative;
    top: initial;
    left: initial;
    transform: initial;
  }
  .p-contactForm-button-reverse::before {
    top: 2.6666666667vw;
    left: 1.3333333333vw;
    width: 2.1333333333vw;
    border-width: 0.5333333333vw;
  }
  .p-contactForm-button-reverse [type=button] {
    font-size: 4.2666666667vw;
    padding-left: 5.3333333333vw;
  }
}
/* wpcf7
---------------------------------------------------------------------------- */
.m-contactForm-inputBox .wpcf7-not-valid-tip {
  font-size: 1.4rem !important;
  line-height: 1.6428571429;
  letter-spacing: 0.06em;
  color: #D21708;
  margin-top: 0.8rem;
}

.m-contactForm-input.wpcf7-not-valid {
  background-color: #FBECEA;
}

.wpcf7-list-item {
  margin: 0 !important;
}

/* contactform7のclass */
.wpcf7-spinner {
  display: none !important;
}

.wpcf7-spinner::before {
  display: none !important;
}

.wpcf7 form .wpcf7-response-output {
  display: none !important;
}

/* .wpcf7-not-valid-tip {
        display: none !important;
  } */
.wpcf7 form.sent .wpcf7-response-output {
  display: none !important;
}

div.wpcf7 .ajax-loader {
  display: none !important;
}

.wpcf7-mail-sent-ok {
  display: none !important;
}

.wpcf7-form-control-wrap {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .wpcf7-not-valid-tip {
    font-size: 3.7333333333vw !important;
    margin-top: 2.1333333333vw;
  }
}
/* p-worry-group（記事制作実績・サイト数の数字をアニメーションで表示）
---------------------------------------------------------------------------- */
.p-worry-group__content {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: 0 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-worry-group__content {
    flex-direction: column;
    gap: 5.3333333333vw;
  }
}
.p-worry-group__content .box, .p-worry-group__content .box2 {
  position: relative;
  z-index: 1;
}
.p-worry-group__content .box {
  width: 40.7rem;
  max-width: 100%;
}
@media screen and (max-width: 767px) {
  .p-worry-group__content .box {
    width: 100%;
  }
}
.p-worry-group__content .box2 {
  width: 35.2rem;
  max-width: 100%;
}
@media screen and (max-width: 767px) {
  .p-worry-group__content .box2 {
    width: 100%;
  }
}
.p-worry-group__content .title {
  background: linear-gradient(to bottom, rgb(254, 178, 2) 0%, rgb(241, 134, 39) 100%);
  color: #ffffff;
  display: flex;
  justify-content: center;
  font-size: 2rem;
  font-weight: 900;
  align-items: center;
  border-radius: 100vh;
  padding: 0.3em 0 0.4em;
}
@media screen and (max-width: 767px) {
  .p-worry-group__content .title {
    font-size: 4.2666666667vw;
  }
}
.p-worry-group__content .title .icn {
  margin-left: 0.5em;
}
.p-worry-group__content .title .icn img {
  display: block;
}
@media screen and (max-width: 767px) {
  .p-worry-group__content .title .icn img {
    width: 5.3333333333vw;
  }
}
.p-worry-group__content .text {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  font-weight: 900;
  color: #FF7200;
  margin-top: 1rem;
  line-height: 1.1;
}
@media screen and (max-width: 767px) {
  .p-worry-group__content .text {
    margin-top: 1.8666666667vw;
  }
}
.p-worry-group__content .text .unit {
  font-size: 3rem;
  margin-left: 1rem;
}
@media screen and (max-width: 767px) {
  .p-worry-group__content .text .unit {
    font-size: 5.8666666667vw;
    margin-left: 1.3333333333vw;
  }
}
.p-worry-group__content .odometer-inside {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  font-weight: 900;
  color: #FF7200;
  margin-top: 1rem;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .p-worry-group__content .odometer-inside {
    margin-top: 1.8666666667vw;
  }
}
.p-worry-group__content .odometer-digit {
  font-size: 6rem;
  border-radius: 0.8rem;
  border: 0.2rem solid #DEDEDE;
  width: 5.3rem;
  display: flex;
  justify-content: center;
  margin-left: 0.6rem;
  padding: 0.4rem 0 0.6rem;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .p-worry-group__content .odometer-digit {
    font-size: 11.4666666667vw;
    width: 10.1333333333vw;
    border-width: 0.5333333333vw;
    margin-left: 1.3333333333vw;
    padding: 0.5333333333vw 0 1.8666666667vw;
  }
}
.p-worry-group__content .odometer-digit:first-of-type {
  margin-left: 0;
}
.p-worry-group__content .odometer-digit-inner {
  padding: 0.4rem 0 0.6rem;
}
@media screen and (max-width: 767px) {
  .p-worry-group__content .odometer-digit-inner {
    padding: 0.5333333333vw 0 1.8666666667vw;
  }
}
.p-worry-group__content .odometer-value {
  display: block !important;
  text-align: center !important;
  width: 100%;
  height: 100%;
}
.p-worry-group__content .odometer-digit-spacer {
  display: block !important;
  text-align: center !important;
  width: 100%;
  height: 100%;
}
.p-worry-group__content .odometer-formatting-mark {
  font-size: 5rem;
  margin-left: 0.4rem;
}
@media screen and (max-width: 767px) {
  .p-worry-group__content .odometer-formatting-mark {
    font-size: 9.6vw;
    margin-left: 1.3333333333vw;
  }
}
.p-worry-group__content .odometer-formatting-mark + .odometer-digit {
  margin-left: 0.4rem;
}
@media screen and (max-width: 767px) {
  .p-worry-group__content .odometer-formatting-mark + .odometer-digit {
    margin-left: 1.3333333333vw;
  }
}
