@charset "UTF-8";
.color-red {
  color: #e87000;
}

@font-face {
  font-weight: 300;
  font-family: "Noto Sans JP";
  src: url("./NotoSansJP-Light.woff2") format("woff2");
  font-display: swap;
}
@font-face {
  font-weight: 400;
  font-family: "Noto Sans JP";
  src: url("./NotoSansJP-Regular.woff2") format("woff2");
  font-display: swap;
}
@font-face {
  font-weight: 600;
  font-family: "Noto Sans JP";
  src: url("./NotoSansJP-SemiBold.woff2") format("woff2");
  font-display: swap;
}
@font-face {
  font-weight: 700;
  font-family: "Noto Sans JP";
  src: url("./NotoSansJP-Bold.woff2") format("woff2");
  font-display: swap;
}
@font-face {
  font-weight: 900;
  font-family: "Noto Sans JP";
  src: url("./NotoSansJP-Black.woff2") format("woff2");
  font-display: swap;
}
@font-face {
  font-weight: 700;
  font-family: "Roboto";
  src: url("./Roboto-Bold.woff2") format("woff2");
  font-display: swap;
}
body {
  min-height: 100vh;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  background: #ffffff;
  color: #023b53;
  font-size: 20px;
  line-height: 1.8;
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 0.012em;
  -webkit-tap-highlight-color: transparent; /* モバイルでのタップ時のハイライトを消す */
  touch-action: manipulation;
}
@media screen and (max-width: 1199px) {
  body {
    font-size: 15px;
  }
}

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

img, video {
  display: block;
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

video {
  border: none;
  box-shadow: none;
  outline: none;
}

a {
  display: inline-block;
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}

ul, ol {
  list-style: none;
}

:focus {
  outline: 2px solid #1976d2; /* フォーカスが見えるように */
}

.main {
  overflow-x: hidden;
}

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

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

.section_colored {
  background-color: #f3f7fb;
}

.section_main-color {
  background-color: #05a1e4;
}

.section_inner {
  max-width: 1152px;
  padding: 120px 20px;
  margin-inline: auto;
}
@media screen and (max-width: 1199px) {
  .section_inner {
    max-width: 768px;
    padding: 64px 20px;
  }
}

.section_title {
  font-weight: 700;
  font-size: 40px;
  line-height: 1.4;
  letter-spacing: 0.02em;
  text-align: center;
}
@media screen and (max-width: 1199px) {
  .section_title {
    font-size: 24px;
  }
}

@media screen and (max-width: 1199px) {
  .section_title.fz-18 {
    font-size: 18px;
  }
}

.section_subtitle {
  margin-bottom: 20px;
  color: #05a1e4;
  font-weight: 700;
  font-size: 18px;
  text-align: center;
}

.section_hr {
  margin: 60px 0;
  border-color: rgba(15, 38, 48, 0.1);
}
@media screen and (max-width: 1199px) {
  .section_hr {
    margin: 32px 0;
  }
}

.section_body {
  display: grid;
  -webkit-box-align: center;
          align-items: center;
  margin-bottom: 60px;
  grid-template-columns: 1fr 1fr;
  -webkit-column-gap: 60px;
     -moz-column-gap: 60px;
          column-gap: 60px;
}
@media screen and (max-width: 1199px) {
  .section_body {
    margin-bottom: 32px;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
  }
}

.section_content {
  align-self: end;
  grid-column: 1;
  grid-row: 1;
}
@media screen and (max-width: 1199px) {
  .section_content {
    grid-column: 1;
    grid-row: 1;
  }
}

.section_content_title {
  font-weight: 700;
  font-size: 32px;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 1199px) {
  .section_content_title {
    font-size: 18px;
  }
}

.section_content_text {
  margin-top: 24px;
  margin-bottom: 32px;
}
@media screen and (max-width: 1199px) {
  .section_content_text {
    margin-top: 16px;
  }
}

.section_content_link {
  display: block;
  align-self: start;
  grid-column: 1/span 2;
  grid-row: 2;
}
@media screen and (max-width: 1199px) {
  .section_content_link {
    margin-top: 32px;
    justify-self: end;
    grid-column: 1;
    grid-row: 3;
  }
}

.section_image {
  justify-self: center;
  grid-column: 2;
  grid-row: 1/3;
}
@media screen and (max-width: 1199px) {
  .section_image {
    width: 211px;
    grid-column: 1;
    grid-row: 2;
  }
}

@media screen and (max-width: 1199px) {
  .send .section_image, .protect .section_image {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: center;
            justify-content: center;
    width: 100%;
  }
}

@media screen and (max-width: 1199px) {
  .send .section_image img, .protect .section_image img {
    width: 100%;
  }
}

.link {
  color: #05a1e4;
  font-weight: 700;
  font-size: 15px;
}

.c-grad-text {
  background: url(data:image/webp;base64,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) no-repeat center/cover;
  -webkit-background-clip: text;
          background-clip: text;
  color: transparent;
  font-weight: 700;
  letter-spacing: 0.03em;
}

.accordion_wrapper {
  margin-top: 24px;
  border: 1px solid rgba(15, 38, 48, 0.1);
  border-radius: 8px;
  background-color: #ffffff;
}
@media screen and (max-width: 1199px) {
  .accordion_wrapper {
    margin-top: 12px;
  }
}

.accordion_title {
  position: relative;
  padding: 48px;
  font-weight: 700;
  font-size: 24px;
  letter-spacing: 0;
  cursor: pointer;
}
@media screen and (max-width: 1199px) {
  .accordion_title {
    padding: 20px;
    font-size: 15px;
  }
}

.accordion_title::before, .accordion_title::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 64px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 18px;
  height: 2px;
  border-radius: 4px;
  background-color: #05a1e4;
  content: "";
}
@media screen and (max-width: 1199px) {
  .accordion_title::before, .accordion_title::after {
    right: 25px;
    width: 14px;
  }
}

.accordion_title::after {
  top: 49%;
  right: 65px;
  content: "";
  -webkit-transition: rotate 0.3s ease;
  transition: rotate 0.3s ease;
  rotate: 90deg;
}
@media screen and (max-width: 1199px) {
  .accordion_title::after {
    top: 49.5%;
    right: 26px;
  }
}

.accordion_wrapper.is-open .accordion_title::after {
  top: 50%;
  right: 64px;
  rotate: 0deg;
}
@media screen and (max-width: 1199px) {
  .accordion_wrapper.is-open .accordion_title::after {
    right: 26px;
  }
}

.accordion {
  display: none;
  padding: 48px;
  padding-top: 0;
  gap: 40px;
}
@media screen and (max-width: 1199px) {
  .accordion {
    padding: 20px;
    padding-top: 0;
  }
}

.accordion_inner {
  display: -webkit-box;
  display: flex;
  gap: 40px;
}
@media screen and (max-width: 1199px) {
  .accordion_inner {
    -webkit-box-align: start;
            align-items: flex-start;
    gap: 20px;
  }
}

.accordion_image {
  flex-shrink: 0;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  width: 211px;
}
.accordion_image.vary-card {
  width: 230px;
  margin-inline: -9px;
  margin-bottom: -20px;
}
@media screen and (max-width: 1199px) {
  .accordion_image {
    width: 106px;
  }
  .accordion_image.vary-card {
    width: 122px;
    margin-inline: 0 -5px;
    margin-bottom: -5px;
  }
}

.accordion_content {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: center;
          justify-content: center;
}

.accordion_text {
  font-size: 18px;
}
@media screen and (max-width: 1199px) {
  .accordion_text {
    font-size: 15px;
  }
}

.accordion_text span {
  display: block;
  font-size: 12px;
  line-height: 1.6;
}
@media screen and (max-width: 1199px) {
  .accordion_text span {
    font-size: 10px;
  }
}

.accordion_link {
  margin-top: 32px;
  text-align: right;
}
@media screen and (max-width: 1199px) {
  .accordion_link {
    margin-top: 16px;
  }
}

.text-left {
  text-align: left;
}

.loading-overlay {
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}
.loading-overlay.is-hide {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}

.header {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  height: 64px;
  padding: 0 32px;
}

.header_inner {
  display: -webkit-box;
  display: flex;
  width: 100%;
  max-width: 1352px;
  margin-inline: auto;
}

.header_logo {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
}

.header_logo img {
  -o-object-fit: contain;
     object-fit: contain;
}

.header_logo img:last-child {
  height: 22px;
}

.header_logo img:first-child {
  -webkit-transform: translateY(2px);
          transform: translateY(2px);
}

.fv {
  padding: 36px 0 131px;
}
@media screen and (max-width: 1199px) {
  .fv {
    padding: 32px 20px 64px;
  }
}

.fv_inner {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: justify;
          justify-content: space-between;
  position: relative;
  width: min(100%, 1360px);
  padding-inline: 84px;
  height: 720px;
  margin-inline: auto;
}
@media screen and (max-width: 1199px) {
  .fv_inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    height: auto;
    gap: 16px;
    padding-inline: 0;
  }
}

@media screen and (max-width: 1199px) {
  .fv_text-wrapper {
    display: contents;
  }
}

.fv_text {
  width: 504px;
  margin-top: 16px;
  text-align: center;
}
@media screen and (max-width: 1199px) {
  .fv_text {
    margin-top: 0;
  }
}

.fv_subtitle {
  color: #05a1e4;
  font-weight: 700;
  font-size: 20px;
}
@media screen and (max-width: 1199px) {
  .fv_subtitle {
    font-size: 15px;
  }
}

.fv_title {
  margin-right: -32px;
  margin-left: -32px;
  font-weight: 700;
  font-size: 60px;
  line-height: 1.4;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1199px) {
  .fv_title {
    font-size: 32px;
  }
}

.fv_download_wrapper {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-align: center;
          align-items: center;
  position: relative;
  width: 512px;
  margin-top: 48px;
  text-align: center;
}
@media screen and (max-width: 1199px) {
  .fv_download_wrapper {
    -webkit-box-ordinal-group: 4;
            order: 3;
    width: 100%;
    margin-top: 12px;
  }
}

.fv_gooddesign {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  width: 322px;
}
@media screen and (max-width: 1199px) {
  .fv_gooddesign {
    width: 258px;
    margin-inline: auto;
  }
}

.fv_download {
  position: absolute;
  top: 74px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 159px;
  height: 33px;
  padding-top: 8px;
  border-radius: 4px;
  background-color: #023b53;
  color: #ffffff;
  font-weight: 700;
  font-size: 15px;
  line-height: 1;
}
@media screen and (max-width: 1199px) {
  .fv_download {
    display: grid;
    top: 54px;
    width: 132px;
    height: 30px;
    font-size: 12px;
    place-items: center;
  }
}

.fv_download::after {
  display: block;
  position: absolute;
  bottom: -5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 0;
  height: 0;
  border-width: 5px 6px 0 6px;
  border-style: solid;
  border-color: #023b53 transparent transparent transparent;
  content: "";
}

.fv-image {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: end;
          align-items: flex-end;
  position: relative;
  width: min(100%, 568px);
  padding-block: 40px;
}
@media screen and (max-width: 1199px) {
  .fv-image {
    padding-block: 0;
  }
}

.fv-image-app {
  position: relative;
  z-index: 1;
  width: 304px;
  aspect-ratio: 304/616;
}
@media screen and (max-width: 1199px) {
  .fv-image-app {
    width: 201px;
  }
}

.fv-image-card {
  position: absolute;
  bottom: 64px;
}
@media screen and (max-width: 1199px) {
  .fv-image-card {
    bottom: 42px;
  }
}

.fv-image-card-main {
  width: 320px;
  aspect-ratio: 320/396;
}
@media screen and (max-width: 1199px) {
  .fv-image-card-main {
    width: 211px;
  }
}

.fv-image-card-sub {
  position: absolute;
  top: -120px;
  right: -44px;
  width: 207px;
  aspect-ratio: 207/167;
}
@media screen and (max-width: 1199px) {
  .fv-image-card-sub {
    top: -80px;
    right: -29px;
    width: 137px;
  }
}

.fv_links {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  margin-top: 38px;
  padding: 24px;
  border-radius: 8px;
  background-color: #f3f7fb;
}
@media screen and (max-width: 1199px) {
  .fv_links {
    max-width: 350px;
    margin-top: 30px;
    padding: 20px;
    padding-top: 28px;
    gap: 16px;
    margin-inline: auto;
  }
}

.fv_links_bubble {
  position: absolute;
  top: 56px;
  right: -32px;
}
@media screen and (max-width: 1199px) {
  .fv_links_bubble {
    top: -12px;
    width: 100px;
    height: 100px;
  }
}

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

@media screen and (max-width: 1199px) {
  .fv_links a {
    width: 147px;
  }
}

.fv_links_note {
  margin-top: 16px;
  font-size: 12px;
}

.fv_links_sp {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-align: center;
          align-items: center;
  position: relative;
  padding: 16px 0;
  background-color: #ffffff;
}
.fv_download_wrapper .fv_links_sp {
  width: min(100%, 310px);
}
@media screen and (min-width: 1200px) {
  .fv_links_sp {
    display: none;
  }
}

.fv_links_sp a {
  display: block;
  width: 100%;
  max-width: 400px;
  padding: 12px 20px;
  border-radius: 8px;
  box-shadow: 0 3px 6px 0 rgba(0, 28, 41, 0.0784313725);
  background-color: #0F2630;
  color: #fbfbfb;
  font-weight: 600;
  font-size: 16px;
  line-height: 32px;
  text-align: center;
  margin-inline: auto;
}

.fv_links_bubble_sp {
  position: relative;
  z-index: 1;
  width: 136px;
  aspect-ratio: 136/43;
  margin-bottom: -12px;
}

.fv_links_sp.btn_fixed {
  opacity: 0;
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 10;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
  padding: 16px;
  box-shadow: 0 -1px 5px 0 rgba(15, 38, 48, 0.08);
  background-color: #ffffff;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.btn_fixed.show {
  opacity: 1;
  -webkit-transform: translateY(0px);
          transform: translateY(0px);
}

.fv-image.aos-animate {
  -webkit-animation: fade-up 0.5s 0.5s both ease-out;
          animation: fade-up 0.5s 0.5s both ease-out;
}
.fv-image.aos-animate .fv-image-app {
  -webkit-animation: slide-left 0.5s 1.3s both ease-out;
          animation: slide-left 0.5s 1.3s both ease-out;
}
@media screen and (max-width: 1199px) {
  .fv-image.aos-animate .fv-image-app {
    -webkit-animation: slide-left-sp 0.5s 1.3s both ease-out;
            animation: slide-left-sp 0.5s 1.3s both ease-out;
  }
}
.fv-image.aos-animate .fv-image-card {
  -webkit-animation: fade-slide-right 0.5s 1.3s both ease-out;
          animation: fade-slide-right 0.5s 1.3s both ease-out;
}
@media screen and (max-width: 1199px) {
  .fv-image.aos-animate .fv-image-card {
    -webkit-animation: fade-slide-right-sp 0.5s 1.3s both ease-out;
            animation: fade-slide-right-sp 0.5s 1.3s both ease-out;
  }
}
.fv-image.aos-animate .fv-image-card-sub {
  -webkit-animation: fadein 0.5s 1.8s both;
          animation: fadein 0.5s 1.8s both;
}

.fv_text, .fv_seal, .fv_download_wrapper {
  opacity: 0;
  -webkit-animation: fadein 0.5s forwards;
          animation: fadein 0.5s forwards;
}

.fv_text {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}

.fv_download_wrapper {
  -webkit-animation-delay: 1.8s;
          animation-delay: 1.8s;
}

@-webkit-keyframes slide-left {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-20%);
            transform: translateX(-20%);
  }
}

@keyframes slide-left {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-20%);
            transform: translateX(-20%);
  }
}
@-webkit-keyframes fade-slide-right {
  from {
    opacity: 0;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    opacity: 1;
    -webkit-transform: translateX(50%);
            transform: translateX(50%);
  }
}
@keyframes fade-slide-right {
  from {
    opacity: 0;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    opacity: 1;
    -webkit-transform: translateX(50%);
            transform: translateX(50%);
  }
}
@-webkit-keyframes slide-left-sp {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-35%);
            transform: translateX(-35%);
  }
}
@keyframes slide-left-sp {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-35%);
            transform: translateX(-35%);
  }
}
@-webkit-keyframes fade-slide-right-sp {
  from {
    opacity: 0;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    opacity: 1;
    -webkit-transform: translateX(30%);
            transform: translateX(30%);
  }
}
@keyframes fade-slide-right-sp {
  from {
    opacity: 0;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    opacity: 1;
    -webkit-transform: translateX(30%);
            transform: translateX(30%);
  }
}
@-webkit-keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes fade-up {
  from {
    opacity: 0;
    -webkit-transform: translateY(40px);
            transform: translateY(40px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes fade-up {
  from {
    opacity: 0;
    -webkit-transform: translateY(40px);
            transform: translateY(40px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.section-bg {
  background: url(./bg-program_pc.webp) no-repeat center/cover;
}
@media screen and (max-width: 768px) {
  .section-bg {
    background: url(./bg-program_sp.webp) no-repeat center right 35%/cover;
  }
}

.section_header {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-align: center;
          align-items: center;
  gap: 20px;
}

.section_logo {
  width: 81px;
  aspect-ratio: 81/100;
}
@media screen and (max-width: 1199px) {
  .section_logo {
    display: none;
  }
}

.section_lead {
  margin-top: 12px;
  font-size: 18px;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 1199px) {
  .section_lead {
    line-height: 1.8;
    margin-block: -8px;
  }
}

.section_body-program {
  display: -webkit-box;
  display: flex;
  width: 100%;
  position: relative;
}
@media screen and (max-width: 768px) {
  .section_body-program {
    margin-inline: auto;
    width: min(100%, 350px);
    padding-bottom: 56px;
  }
}

.vary-program-item {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  -webkit-box-align: center;
          align-items: center;
  gap: 60px;
}
@media screen and (max-width: 1199px) {
  .vary-program-item {
    gap: 48px;
  }
}
@media screen and (max-width: 768px) {
  .vary-program-item {
    display: -webkit-box;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    gap: 32px;
    width: min(100%, 350px);
    padding-bottom: 48px;
  }
}

.vary-program-item_texts {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  gap: 24px;
  padding-bottom: 92px;
}
@media screen and (max-width: 768px) {
  .vary-program-item_texts {
    gap: 12px;
    padding-bottom: 0;
  }
}

.vary-program-item_title {
  font-size: 32px;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 1199px) {
  .vary-program-item_title {
    font-size: 18px;
  }
}

.vary-program-item_desc {
  font-size: 20px;
  line-height: 1.8;
  letter-spacing: 0.012em;
}
@media screen and (max-width: 1199px) {
  .vary-program-item_desc {
    font-size: 15px;
  }
}

.vary-program-item_link {
  margin-top: 8px;
  font-size: 18px;
}
@media screen and (max-width: 1199px) {
  .vary-program-item_link {
    margin-top: 0;
    font-size: 15px;
  }
}
@media screen and (max-width: 768px) {
  .vary-program-item_link {
    position: absolute;
    bottom: 0;
    right: 16px;
  }
}

.vary-program-buttons {
  position: absolute;
  left: 0;
  bottom: 102px;
  width: min(100%, 232px);
  height: 32px;
}
.vary-program-buttons .splide__arrow {
  width: 32px;
  height: 32px;
  border-radius: 0;
  background: none;
}
.vary-program-buttons .splide__arrow:disabled {
  opacity: 0.15;
  cursor: not-allowed;
}
.vary-program-buttons .splide__arrow img {
  width: 100%;
  height: 100%;
}
.vary-program-buttons .splide__arrow--prev {
  left: 0;
}
.vary-program-buttons .splide__arrow--next {
  right: 0;
}
.vary-program-buttons .splide__pagination {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  gap: 24px;
  position: static;
  height: 100%;
}
.vary-program-buttons .splide__pagination li {
  display: -webkit-box;
  display: flex;
  width: 12px;
  height: 12px;
  margin: 0;
}
.vary-program-buttons .splide__pagination__page {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  background: #023B53;
  opacity: 0.15;
}
.vary-program-buttons .splide__pagination__page.is-active {
  opacity: 1;
  -webkit-transform: none;
          transform: none;
}
@media screen and (max-width: 1199px) {
  .vary-program-buttons {
    bottom: 72px;
    width: min(100%, 188px);
    height: 24px;
  }
  .vary-program-buttons .splide__arrow {
    width: 24px;
    height: 24px;
  }
  .vary-program-buttons .splide__pagination li {
    width: 10px;
    height: 10px;
  }
}
@media screen and (max-width: 768px) {
  .vary-program-buttons {
    bottom: -56px;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.voice_reviews_note {
  margin-top: 12px;
  font-size: 13px;
  text-align: center;
}
@media screen and (max-width: 1199px) {
  .voice_reviews_note {
    font-size: 10px;
  }
}

.voice_upper {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-align: center;
          align-items: center;
  gap: 20px;
}
@media screen and (max-width: 1199px) {
  .voice_upper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-align: center;
            align-items: center;
    gap: 32px;
  }
  .voice_upper .section_title {
    text-align: center;
  }
}

@media screen and (max-width: 1199px) {
  .voice_list_wrapper {
    overflow-x: scroll;
  }
}

.voice_list {
  display: -webkit-box;
  display: flex;
  margin-top: 60px;
  gap: 24px;
}
@media screen and (max-width: 1199px) {
  .voice_list {
    width: 872px;
    margin-top: 32px;
  }
}

.voice_item {
  display: -webkit-box;
  display: flex;
  -webkit-box-flex: 1;
          flex: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: justify;
          justify-content: space-between;
  position: relative;
  padding: 32px;
  border-radius: 8px;
  border: 1px solid rgba(15, 38, 48, 0.1);
  background-color: #ffffff;
}
@media screen and (max-width: 1199px) {
  .voice_item {
    flex-shrink: 0;
    padding: 20px;
  }
}

.voice_image {
  position: absolute;
  right: 0;
  bottom: 0;
}
@media screen and (max-width: 1199px) {
  .voice_image {
    width: 60px;
    height: 60px;
  }
}

.voice_text {
  font-size: 15px;
  line-height: 1.6;
}

.features_text {
  margin-top: 32px;
  text-align: center;
}
@media screen and (max-width: 1199px) {
  .features_text {
    margin-top: 20px;
  }
}

.features_list {
  display: -webkit-box;
  display: flex;
  gap: 16px;
  margin-top: 60px;
}
@media screen and (max-width: 1199px) {
  .features_list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    margin-top: 32px;
  }
}

.features_item {
  -webkit-box-flex: 1;
          flex: 1;
  position: relative;
}

.features_item:first-child .features_item_link {
  margin-left: 0;
}

.features_item:last-child .features_item_link {
  margin-right: 0;
}

.features_item_link {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  gap: 16px;
  height: 100%;
  padding: 24px;
  border-radius: 8px;
  border: 1px solid rgba(15, 38, 48, 0.1);
  background-color: #ffffff;
}
@media screen and (max-width: 1199px) {
  .features_item_link {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-direction: row;
    -webkit-box-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
            align-items: center;
    gap: 8px;
    width: 100%;
    margin: 0;
  }
}

.features_list-title {
  font-size: 22px;
  line-height: 1;
}
@media screen and (max-width: 1199px) {
  .features_list-title {
    font-size: 18px;
  }
}

.features_list-text {
  font-size: 14px;
  line-height: 1.6;
  margin-top: 16px;
}
@media screen and (max-width: 1199px) {
  .features_list-text {
    font-size: 12px;
  }
}

.features_list-icon {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  margin-top: auto;
}
@media screen and (max-width: 1199px) {
  .features_list-icon {
    min-width: 24px;
    margin-top: unset;
    margin-left: 8px;
  }
}

.features-link {
  display: block;
  margin-top: 4%;
  font-size: 18px;
  text-align: center;
}
@media screen and (max-width: 1199px) {
  .features-link {
    margin-top: 32px;
    font-size: 15px;
    text-align: right;
  }
}

.carousel_container {
  --dot-color: #00A7DB;
  margin-top: 60px;
  width: 100vw;
  margin-inline: calc(50% - 50vw);
}
.carousel_container.jsb {
  --dot-color: #D73C85;
}
.carousel_container.kmb {
  --dot-color: #E77F00;
}
@media screen and (max-width: 1199px) {
  .carousel_container {
    margin-top: 32px;
  }
}
.carousel_container .splide__pagination {
  gap: 30px;
  margin-top: 60px;
  position: relative;
}
@media screen and (max-width: 1199px) {
  .carousel_container .splide__pagination {
    gap: 20px;
    margin-top: 32px;
  }
}
.carousel_container .splide__pagination__page {
  width: 12px;
  height: 12px;
  margin: 0;
  background: rgba(15, 38, 48, 0.15);
}
.carousel_container .splide__pagination__page.is-active {
  background: var(--dot-color);
  -webkit-transform: none;
          transform: none;
}
@media screen and (max-width: 1199px) {
  .carousel_container .splide__pagination__page {
    width: 8px;
    height: 8px;
  }
}

.carousel_item {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  width: min(100%, 700px);
  aspect-ratio: 16/9;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid rgba(2, 59, 83, 0.15);
}
.carousel_item.cm-video iframe {
  width: 100%;
  height: 100%;
}

.carousel_item-desc {
  margin-top: 8px;
  font-size: 16px;
  font-weight: 600;
  text-align: center;
}
@media screen and (max-width: 1199px) {
  .carousel_item-desc {
    font-size: 14px;
  }
}

.flow_list {
  display: -webkit-box;
  display: flex;
  margin-top: 60px;
  gap: 24px;
}
@media screen and (max-width: 1199px) {
  .flow_list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -webkit-box-align: center;
            align-items: center;
    margin-top: 32px;
  }
}

.flow_item {
  -webkit-box-flex: 1;
          flex: 1;
  padding: 32px;
  border-radius: 8px;
  background-color: #ffffff;
  text-align: center;
}
@media screen and (max-width: 1199px) {
  .flow_item {
    width: 100%;
    padding: 20px;
  }
}

.flow_step {
  color: #05a1e4;
  font-weight: 700;
  font-size: 15px;
}

.flow_item_title {
  font-size: 24px;
}
@media screen and (max-width: 1199px) {
  .flow_item_title {
    font-size: 18px;
  }
}

.flow_links {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  gap: 16px;
}
@media screen and (max-width: 1199px) {
  .flow_links {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
            flex-direction: row;
  }
}

.flow_links a {
  width: 226px;
}
@media screen and (max-width: 1199px) {
  .flow_links a {
    width: 147px;
  }
}

.flow_links img {
  width: 100%;
}

.flow_image {
  display: grid;
  height: 181px;
  margin-top: 32px;
  place-items: center;
}
@media screen and (max-width: 1199px) {
  .flow_image {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: center;
            justify-content: center;
    height: auto;
  }
}

.flow_text {
  margin-top: 24px;
  font-size: 15px;
}
@media screen and (max-width: 1199px) {
  .flow_text {
    margin-top: 20px;
  }
}

.flow_link {
  display: block;
  margin-top: 24px;
  text-align: right;
}
@media screen and (max-width: 1199px) {
  .flow_link {
    margin-top: 20px;
  }
}

.others_list {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  margin-top: 60px;
  gap: 32px;
}
@media screen and (max-width: 1199px) {
  .others_list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    margin-top: 32px;
    gap: 16px;
  }
}

.others_item {
  width: 100%;
  border: 1px solid rgba(15, 38, 48, 0.1);
  border-radius: 8px;
}

.others_link {
  width: 100%;
}

.faq .section_title {
  margin-bottom: 32px;
}

.faq_link {
  display: block;
  margin-top: 60px;
  font-size: 18px;
  text-align: center;
}
@media screen and (max-width: 1199px) {
  .faq_link {
    margin-top: 32px;
    font-size: 15px;
    text-align: right;
  }
}

.faq_question, .faq_answer_text {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
}

.faq_question {
  padding-right: 100px;
}
@media screen and (max-width: 1199px) {
  .faq_question {
    padding-right: 50px;
  }
}

.faq_question span {
  margin-right: 16px;
  color: #05a1e4;
  font-weight: 700;
  font-size: 32px;
  font-family: "SF Pro Text", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
@media screen and (max-width: 1199px) {
  .faq_question span {
    font-size: 20px;
  }
}

.faq_answer_text span {
  margin-right: 16px;
  font-weight: 700;
  font-size: 32px;
  font-family: "SF Pro Text", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
@media screen and (max-width: 1199px) {
  .faq_answer_text span {
    margin-right: 8px;
    font-size: 20px;
  }
}

.contact_content {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-align: center;
          align-items: center;
  margin-top: 48px;
  padding: 40px 48px;
  border-radius: 8px;
  background-color: #ffffff;
  text-align: center;
  gap: 16px;
}
@media screen and (max-width: 1199px) {
  .contact_content {
    margin-top: 32px;
    padding: 20px;
  }
}

.contact_name {
  font-size: 18px;
  line-height: 1;
}
@media screen and (max-width: 1199px) {
  .contact_name {
    font-size: 15px;
  }
}

.contact_number {
  color: #05a1e4;
  font-weight: 700;
  font-size: 48px;
  line-height: 1;
  font-family: "SF Pro Text", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
@media screen and (max-width: 1199px) {
  .contact_number {
    font-size: 32px;
  }
}

.contact_text {
  font-size: 15px;
}
@media screen and (max-width: 1199px) {
  .contact_text {
    font-size: 12px;
  }
}

.contact_text_small {
  margin-top: -14px;
  font-size: 13px;
}
@media screen and (max-width: 1199px) {
  .contact_text_small {
    font-size: 11px;
  }
}

.download {
  color: #ffffff;
}

.download_inner {
  padding: 54px 20px;
}

.download_title {
  font-weight: 700;
  font-size: 32px;
  line-height: 1.4;
}
@media screen and (max-width: 1199px) {
  .download_title {
    font-size: 18px;
  }
}

.download_links.sp-none {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  width: 500px;
  margin-top: 60px;
  padding: 24px 32px;
  border-radius: 8px;
  background-color: rgba(255, 255, 255, 0.1294117647);
  margin-inline: auto;
}
@media screen and (max-width: 1199px) {
  .download_links.sp-none {
    display: none;
    width: 100%;
    margin-top: 32px;
    padding: 20px;
    gap: 16px;
  }
}

@media screen and (max-width: 1199px) {
  .download_links a {
    width: 147px;
  }
}

.download_links_sp {
  padding: 16px 0;
  background-color: #05a1e4;
}

.download_links_note {
  margin-top: 16px;
  font-size: 12px;
}

.download_note {
  margin-top: 48px;
  font-size: 13px;
  text-align: center;
}
@media screen and (max-width: 1199px) {
  .download_note {
    margin-top: 32px;
    font-size: 10px;
  }
}

@media screen and (max-width: 1199px) {
  .footer {
    padding-bottom: 70px;
  }
}

.footer_inner {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  padding: 32px 20px;
  color: rgba(15, 38, 48, 0.58);
  font-size: 10px;
  line-height: 2;
  letter-spacing: 0.06em;
  text-align: center;
  gap: 24px;
}