/* Box sizing rules */
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
*::before, *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

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

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role=list],
ol[role=list] {
  list-style: none;
}

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

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

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

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

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

/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  * {
    -webkit-animation-duration: 0.01ms !important;
            animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    -webkit-transition-duration: 0.01ms !important;
            transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
  *::before, *::after {
    -webkit-animation-duration: 0.01ms !important;
            animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    -webkit-transition-duration: 0.01ms !important;
            transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
/* style */
li {
  list-style: none;
}

a {
  text-decoration: none;
}

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

:where([hidden]:not([hidden=until-found])) {
  display: none !important;
}

:where(html) {
  -webkit-text-size-adjust: none;
  color-scheme: dark light;
}

@supports not (min-block-size: 100dvb) {
  :where(html) {
    block-size: 100%;
  }
}
@media (prefers-reduced-motion: no-preference) {
  :where(html:focus-within) {
    scroll-behavior: smooth;
  }
}
:where(body) {
  block-size: 100%;
  block-size: 100dvb;
  line-height: 1.5;
  font-family: system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}

:where(input, button, textarea, select) {
  font: inherit;
  color: inherit;
}

:where(textarea) {
  resize: vertical;
  resize: block;
}

:where(button, label, select, summary, [role=button], [role=option]) {
  cursor: pointer;
}

:where(:disabled) {
  cursor: not-allowed;
}

:where(label:has(> input:disabled), label:has(+ input:disabled)) {
  cursor: not-allowed;
}

:where(button) {
  border-style: solid;
}

:where(a) {
  text-underline-offset: 0.2ex;
}

:where(ul, ol) {
  list-style: none;
}

:where(img, svg, video, canvas, audio, iframe, embed, object) {
  display: block;
}

:where(img, picture, svg) {
  max-inline-size: 100%;
  block-size: auto;
}

:where(p, h1, h2, h3, h4, h5, h6) {
  overflow-wrap: break-word;
}

:where(h1, h2, h3) {
  line-height: calc(1em + 0.5rem);
}

:where(hr) {
  border: none;
  -webkit-border-before: 1px solid;
          border-block-start: 1px solid;
  color: inherit;
  block-size: 0;
  overflow: visible;
}

:where(:focus-visible) {
  outline: 2px solid var(--focus-color, Highlight);
  outline-offset: 2px;
}

:where(.visually-hidden:not(:focus, :active, :focus-within, .not-visually-hidden)) {
  clip-path: inset(50%) !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden !important;
  position: absolute !important;
  white-space: nowrap !important;
  border: 0 !important;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  height: 100%;
  font-size: max(12px, 1.0582010582vw);
  font-weight: 400;
  background: #fff;
  scroll-behavior: smooth;
}
html.no-scroll {
  overflow: hidden !important;
}
html:focus-within {
  scroll-behavior: auto;
}
@media screen and (min-width: 1513px) {
  html {
    font-size: 16px;
  }
}
@media screen and (max-width: 1000px) {
  html {
    font-size: 1.2307692308vw;
  }
}
@media screen and (max-width: 768px) {
  html {
    font-size: 4.0712468193vw;
  }
}

body {
  font-family: "Noto Sans JP", sans-serif;
  color: #333333;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
body * {
  scroll-margin-top: 6.25rem;
}
@media screen and (max-width: 768px) {
  body * {
    scroll-margin-top: 3.97rem;
  }
}
body main {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

ul,
ol {
  padding-left: 0;
  margin: 0;
}

li {
  letter-spacing: 0;
}

dd,
dt {
  letter-spacing: 0;
}

th,
td {
  letter-spacing: 0;
}

h1,
h2,
h3,
h4,
h5 {
  letter-spacing: 0;
}

select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
  cursor: pointer;
  border: none;
}

option {
  cursor: pointer;
}

input,
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  outline: none;
}

input {
  border: none;
}

table {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  word-break: break-all;
  word-wrap: break-all;
  border-collapse: collapse;
}

a {
  color: #333333;
}

/* =============================================
layout
============================================= */
.pc {
  display: block !important;
}
@media screen and (max-width: 768px) {
  .pc {
    display: none !important;
  }
}

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

.container_s {
  width: 100%;
  max-width: 61.875rem;
  padding: 0 1.25rem;
  margin: 0 auto;
}

.container_m {
  width: 100%;
  max-width: 81.875rem;
  padding: 0 1.25rem;
  margin: 0 auto;
}

main > section {
  padding: 8rem 0;
}
@media screen and (max-width: 768px) {
  main > section {
    padding: 4rem 0;
  }
}

.bg_primary {
  background: #F6F6F6;
}

/* =============================================
text
============================================= */
.text_right {
  text-align: right;
}

.color_white {
  color: #fff;
}

.text_secondary {
  color: #5CC2D7;
}

.text_number {
  font-family: "Helvetica Neue", "Inter", sans-serif;
}

.line_accent {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(60%, rgba(242, 134, 42, 0.4)));
  background: linear-gradient(transparent 50%, rgba(242, 134, 42, 0.4) 60%);
  font-weight: normal;
}

.line_gray {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(60%, rgba(173, 173, 173, 0.4)));
  background: linear-gradient(transparent 50%, rgba(173, 173, 173, 0.4) 60%);
}

.text_underline {
  text-decoration: underline;
  color: #00437C;
}

sup {
  font-size: 0.75rem;
}

.note {
  font-size: 0.75rem !important;
}
@media screen and (max-width: 768px) {
  .note {
    font-size: 0.65rem !important;
  }
}

/* =============================================
title
============================================= */
.heading_ttl_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
  gap: 0.5rem;
}
.heading_ttl_box .dots {
  color: #5CC2D7;
  background-image: radial-gradient(circle at center, #5CC2D7 15%, transparent 15%);
  background-position: top right;
  background-repeat: repeat-x;
  background-size: 1em 1em;
  padding-top: 0.65em;
}

.heading_md {
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 180%;
  letter-spacing: 0.05rem;
  text-align: center;
  margin-bottom: 3rem;
}
@media screen and (max-width: 768px) {
  .heading_md {
    font-size: 1.85rem;
    letter-spacing: 0.025rem;
    margin-bottom: 2rem;
  }
}
.heading_md .text_number {
  font-size: 3.375rem;
}
@media screen and (max-width: 768px) {
  .heading_md .text_number {
    font-size: 2.5rem;
  }
}
.heading_md .bubble {
  display: inline-block;
  position: relative;
  padding-bottom: 1.44rem;
  margin-bottom: 1rem;
}
.heading_md .bubble::after {
  content: "";
  width: 100%;
  height: 0.657rem;
  background: url("../img/icon/line_bubble.svg") no-repeat center center/contain;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .heading_md .bubble::after {
    width: 80%;
  }
}

.heading_ms {
  font-size: 2rem;
  font-weight: 700;
  line-height: 160%;
  letter-spacing: 0.04rem;
  margin-bottom: 2rem;
}
@media screen and (max-width: 768px) {
  .heading_ms {
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
  }
}

.heading_xs {
  font-size: 1.625rem;
  font-weight: 700;
  line-height: 160%;
  letter-spacing: 0.0325rem;
}
@media screen and (max-width: 768px) {
  .heading_xs {
    font-size: 1.25rem;
  }
}

/* =============================================
button
============================================= */
.btn_cta {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1.5rem 3.125rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 6.25rem;
  border: 3px solid #FFF;
  background: #F2862A;
  font-size: 1.375rem;
  font-weight: 700;
  color: #fff;
  position: relative;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.btn_cta:hover {
  background: #F0984E;
  -webkit-box-shadow: 0px 0px 10px 0px #FFF;
          box-shadow: 0px 0px 10px 0px #FFF;
}
.btn_cta::after {
  content: "";
  width: 2.1875rem;
  height: 2.1875rem;
  background: url("../img/icon/arrow_w.svg") no-repeat center center/contain;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 1.38rem;
}
@media screen and (max-width: 768px) {
  .btn_cta::after {
    width: 1.75rem;
    height: 1.75rem;
    right: 1rem;
  }
}

.btn_main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0.9375rem 2.875rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 6.25rem;
  background: #F2862A;
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: 0.0225rem;
  color: #fff;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}
.btn_main:hover {
  background: #F0984E;
}

/* =============================================
table
============================================= */
table {
  width: 100%;
}
table.basic tr {
  border-bottom: 1px solid #DDDDDD;
  font-size: 1rem;
  line-height: 210%;
  letter-spacing: 0.02rem;
}
table.basic tr th {
  width: 16.375rem;
  padding: 1.875rem 0rem;
  text-align: left;
  vertical-align: top;
}
@media screen and (max-width: 768px) {
  table.basic tr th {
    display: block;
    width: 100%;
    padding-bottom: 0;
  }
}
table.basic tr td {
  padding: 1.875rem 0rem;
}
@media screen and (max-width: 768px) {
  table.basic tr td {
    display: block;
    width: 100%;
    padding-top: 1rem;
  }
}

/* =============================================
header
============================================= */
header {
  width: 100%;
  height: 6.25rem;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}
@media screen and (max-width: 768px) {
  header {
    height: 3.97rem;
  }
}
header.scrolled {
  background-color: #fff;
  -webkit-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}
header .header_inner {
  width: 100%;
  height: 100%;
  padding: 0 2.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 768px) {
  header .header_inner {
    padding: 0 0.94rem;
  }
}
@media screen and (max-width: 768px) {
  header .header_inner .header_logo {
    width: 10rem;
  }
}
header .header_inner .header_nav_wrap {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
header .header_inner .header_nav_wrap .btn_action {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 1.125rem 3.125rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
  border-radius: 6.25rem;
  background: #F2862A;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
header .header_inner .header_nav_wrap .btn_action:hover {
  opacity: 0.6;
}
@media screen and (max-width: 768px) {
  header .header_inner .header_nav_wrap .btn_action {
    padding: 0.65rem 1rem;
    font-size: 0.875rem;
  }
}

/* =============================================
footer
============================================= */
footer {
  width: 100%;
}
footer .footer_inner {
  padding: 4.13rem 0 1.13rem;
  text-align: center;
}
footer .footer_inner .footer_cont_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 3.69rem;
}
footer .footer_inner .footer_cont_wrap .footer_logo {
  width: 28.16813rem;
}
@media screen and (max-width: 768px) {
  footer .footer_inner .footer_cont_wrap .footer_logo {
    width: 15rem;
  }
}
footer .footer_inner .footer_cont_wrap .footer_logo a {
  display: block;
}
footer .footer_inner .footer_cont_wrap .footer_logo img {
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
footer .footer_inner .copyright {
  font-size: 0.75rem;
  font-weight: 300;
}

/* =============================================
banner
============================================= */
.banner_cta {
  width: 100%;
  padding: 5.31rem 0 !important;
  background: url("../img/common/bg_banner_cta.webp") no-repeat center center/cover;
  position: relative;
}
@media screen and (max-width: 768px) {
  .banner_cta {
    padding: 3rem 0 !important;
  }
}
.banner_cta::before {
  content: "";
  width: 100%;
  height: 100%;
  background: rgba(0, 67, 124, 0.7);
  position: absolute;
  top: 0;
  left: 0;
}
.banner_cta .banner_inner {
  width: 100%;
  max-width: 73.505rem;
  padding: 0 0.94rem;
  margin: 0 auto;
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 3rem;
}
@media screen and (max-width: 768px) {
  .banner_cta .banner_inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.banner_cta .campaign_cont_wrap {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 3rem 1.875rem 1.875rem;
  background: #fff;
  border-radius: 0.625rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .banner_cta .campaign_cont_wrap {
    width: 100%;
    padding: 2rem 0.75rem 0.75rem;
  }
}
.banner_cta .campaign_cont_wrap .main_ttl {
  width: 33.5rem;
  padding: 0.625rem 1.875rem;
  border-radius: 3.125rem;
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0.025rem;
  text-align: center;
  color: #F2862A;
  background: #FCE7D4;
  position: absolute;
  left: 0;
  right: 0;
  top: -1.25rem;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .banner_cta .campaign_cont_wrap .main_ttl {
    width: 90%;
    font-size: 1rem;
    padding: 0.5rem;
  }
}
.banner_cta .campaign_cont_wrap .cont_box .main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.23rem;
  margin-bottom: 0.81rem;
}
.banner_cta .campaign_cont_wrap .cont_box .main .card {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.3;
}
@media screen and (max-width: 768px) {
  .banner_cta .campaign_cont_wrap .cont_box .main .card {
    font-size: 0.75rem;
  }
}
.banner_cta .campaign_cont_wrap .cont_box .main .plate {
  font-size: 1rem;
  font-weight: 700;
  padding: 0.5rem 0.1875rem;
  border: 1px solid #F2862A;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  line-height: 1.125rem;
  color: #F2862A;
}
@media screen and (max-width: 768px) {
  .banner_cta .campaign_cont_wrap .cont_box .main .plate {
    font-size: 0.875rem;
    padding: 0.375rem 0.1rem;
  }
}
.banner_cta .campaign_cont_wrap .cont_box .main .present {
  font-size: 1.625rem;
  font-weight: 700;
  letter-spacing: 0.0325rem;
}
@media screen and (max-width: 768px) {
  .banner_cta .campaign_cont_wrap .cont_box .main .present {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.25rem;
    font-size: 0.95rem;
    letter-spacing: 0;
    line-height: 1.3;
  }
}
.banner_cta .campaign_cont_wrap .cont_box .main .present .price {
  font-size: 3.875rem;
  letter-spacing: 0.0775rem;
  color: #F2862A;
  font-family: "Helvetica Neue", "Inter", sans-serif;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .banner_cta .campaign_cont_wrap .cont_box .main .present .price {
    font-size: 2.8rem;
    letter-spacing: 0;
  }
}
.banner_cta .campaign_cont_wrap .badge {
  width: 5.5625rem;
  height: 5.5625rem;
  -o-object-fit: contain;
     object-fit: contain;
  position: absolute;
  top: -2.44rem;
  right: -0.5rem;
}
@media screen and (max-width: 768px) {
  .banner_cta .campaign_cont_wrap .badge {
    width: 3.54775rem;
    height: 3.70831rem;
    top: -0.5rem;
    right: -0.65rem;
  }
}
.banner_cta .cta_btn_wrap {
  width: 28.625rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .banner_cta .cta_btn_wrap {
    width: 100%;
  }
}
.banner_cta .cta_btn_wrap .sub_ttl {
  color: #fff;
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 1rem;
}

/* =============================================
main visual
============================================= */
.sec_mv {
  width: 100%;
  height: 53.1875rem;
  padding: 6.75rem 0 0 !important;
  background: url("../img/top/bg_mv.webp") no-repeat center center/cover;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .sec_mv {
    height: 46.3125rem;
    padding: 3.97rem 0 0 !important;
    background: url("../img/top/bg_mv.webp") no-repeat 80% center/cover;
  }
}
.sec_mv::before {
  content: "";
  width: 100%;
  height: 100%;
  background: rgba(236, 251, 255, 0.85);
  position: absolute;
  top: 0;
  left: 0;
}
.sec_mv .mv_inner {
  width: 100%;
  height: 100%;
  max-width: 81.875rem;
  padding: 0 1.25rem;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 0 0.94rem;
  }
}
.sec_mv .mv_inner .mv_cont_wrap {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_cont_wrap {
    width: 100%;
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
    padding: 1rem 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    height: 100%;
  }
}
.sec_mv .mv_inner .mv_cont_wrap .main_cc {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1.5rem;
  margin-bottom: 1.25rem;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_cont_wrap .main_cc {
    gap: 0.5rem;
    margin-bottom: 0.875rem;
  }
}
.sec_mv .mv_inner .mv_cont_wrap .main_cc .text {
  display: inline;
  font-size: 2.5rem;
  font-weight: 700;
  letter-spacing: 0.05rem;
  line-height: 1.25;
  display: inline;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0%, #fff));
  background: linear-gradient(transparent 0%, #fff 0%);
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_cont_wrap .main_cc .text {
    font-size: 0.98rem;
  }
}
.sec_mv .mv_inner .mv_cont_wrap .main_cc .text.size_s {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 0.25rem;
  height: 3rem;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_cont_wrap .main_cc .text.size_s {
    font-size: 1.625rem;
    height: 1.8rem;
  }
}
.sec_mv .mv_inner .mv_cont_wrap .main_cc .text.size_l {
  font-size: 3.875rem;
  font-weight: 700;
  letter-spacing: 0.0775rem;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_cont_wrap .main_cc .text.size_l {
    letter-spacing: 0;
    font-size: 2.5rem;
    line-height: 1.6;
  }
}
.sec_mv .mv_inner .mv_cont_wrap .main_cc .text .text_number {
  color: #5CC2D7;
  font-size: 4.5rem;
  font-weight: 700;
  line-height: 0.9;
  letter-spacing: 0.09rem;
  background: #fff;
  border-radius: 50rem;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_cont_wrap .main_cc .text .text_number {
    font-size: 3rem;
  }
}
.sec_mv .mv_inner .mv_cont_wrap .sub_cc {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 210%;
  letter-spacing: 0.025rem;
  margin-bottom: 1.88rem;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_cont_wrap .sub_cc {
    font-size: 1rem;
    line-height: 170%;
    text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF, -1px 1px 0 #FFF, 1px -1px 0 #FFF, 0px 1px 0 #FFF, -1px 0 #FFF, -1px 0 0 #FFF, 1px 0 0 #FFF;
  }
}
.sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap {
  width: 37.1875rem;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap {
    width: 100%;
  }
}
.sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .btn_mv {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1rem 3.125rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.3125rem;
  border-radius: 6.25rem;
  background: #F2862A;
  -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);
          box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);
  color: #fff;
  position: relative;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  line-height: 1;
}
.sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .btn_mv:hover {
  background: #F0984E;
  -webkit-box-shadow: 0px 0px 10px 0px #FFF;
          box-shadow: 0px 0px 10px 0px #FFF;
}
.sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .btn_mv::after {
  content: "";
  width: 2.1875rem;
  height: 2.1875rem;
  background: url("../img/icon/arrow_w.svg") no-repeat center center/contain;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 1.38rem;
}
.sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .btn_mv .sub {
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0.02rem;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .btn_mv .sub {
    font-size: 0.75rem;
  }
}
.sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .btn_mv .main {
  font-size: 1.625rem;
  font-weight: 700;
  letter-spacing: 0.0325rem;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .btn_mv .main {
    font-size: 1.15rem;
  }
}
.sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .banner_mv {
  width: 100%;
  padding: 1rem 1.25rem;
  border-radius: 0.625rem;
  background: #FFF;
  -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
  margin-top: 0.63rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .banner_mv {
    padding: 0.75rem;
  }
}
.sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .banner_mv::after {
  content: "";
  width: 1.25rem;
  height: 1.0825317547rem;
  background: #ffffff;
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
  position: absolute;
  left: 0;
  right: 0;
  top: -1rem;
  margin: auto;
}
.sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .banner_mv .badge {
  width: 5.18269rem;
  height: 5.41719rem;
  -o-object-fit: contain;
     object-fit: contain;
  position: absolute;
  top: -0.63rem;
  right: -1rem;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .banner_mv .badge {
    width: 3.54775rem;
    height: 3.70831rem;
    right: -0.65rem;
  }
}
.sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .banner_mv .main_ttl {
  padding: 0.3125rem 0rem;
  border-radius: 3.125rem;
  background: #FCE7D4;
  text-align: center;
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: 0.0225rem;
  color: #F2862A;
  margin-bottom: 0.97rem;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .banner_mv .main_ttl {
    font-size: 0.875rem;
    margin-bottom: 0.5rem;
    line-height: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .banner_mv .main_ttl sup {
  color: #333333;
  font-size: 0.75rem;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .banner_mv .main_ttl sup {
    font-size: 0.65rem;
  }
}
.sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .banner_mv .cont_box .main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.23rem;
  margin-bottom: 0.81rem;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .banner_mv .cont_box .main {
    margin-bottom: 0.5rem;
  }
}
.sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .banner_mv .cont_box .main .card {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.3;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .banner_mv .cont_box .main .card {
    font-size: 0.75rem;
  }
}
.sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .banner_mv .cont_box .main .plate {
  font-size: 1rem;
  font-weight: 700;
  padding: 0.375rem 0.1875rem;
  border: 1px solid #F2862A;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  line-height: 1.125rem;
  color: #F2862A;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .banner_mv .cont_box .main .plate {
    font-size: 0.875rem;
    padding: 0.375rem 0.1rem;
  }
}
.sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .banner_mv .cont_box .main .present {
  font-size: 1.625rem;
  font-weight: 700;
  letter-spacing: 0.0325rem;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .banner_mv .cont_box .main .present {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.25rem;
    font-size: 0.95rem;
    letter-spacing: 0;
    line-height: 1.3;
  }
}
.sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .banner_mv .cont_box .main .present .price {
  font-size: 3.875rem;
  letter-spacing: 0.0775rem;
  color: #F2862A;
  font-family: "Helvetica Neue", "Inter", sans-serif;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_cont_wrap .mv_btn_wrap .banner_mv .cont_box .main .present .price {
    font-size: 2.8rem;
    letter-spacing: 0;
  }
}
.sec_mv .mv_inner .mv_img_wrap {
  width: 32.8125rem;
  height: 100%;
  padding-right: 1.25rem;
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_img_wrap {
    width: 100%;
    height: 100%;
    padding: 0 0.5rem;
  }
}
.sec_mv .mv_inner .mv_img_wrap .inner {
  width: 100%;
  height: 100%;
  position: relative;
}
.sec_mv .mv_inner .mv_img_wrap .inner .mv_img01 {
  width: 17.75rem;
  height: 21.8125rem;
  top: 0;
  left: 0;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_img_wrap .inner .mv_img01 {
    width: 7.4375rem;
    height: 9.13975rem;
    top: 8.29rem;
    left: auto;
    right: 1.69rem;
  }
}
.sec_mv .mv_inner .mv_img_wrap .inner .mv_img02 {
  width: 19.0625rem;
  height: 25.875rem;
  top: 8.44rem;
  right: 0;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_img_wrap .inner .mv_img02 {
    width: 9.0625rem;
    height: 10.97363rem;
    top: 15.56rem;
    left: 2.31rem;
    right: auto;
  }
}
.sec_mv .mv_inner .mv_img_wrap .inner .mv_img03 {
  width: 15rem;
  height: 16.75rem;
  bottom: 3.31rem;
  left: 3.12rem;
}
@media screen and (max-width: 768px) {
  .sec_mv .mv_inner .mv_img_wrap .inner .mv_img03 {
    width: 7.812rem;
    height: 8.375rem;
    top: 20.69rem;
    left: auto;
    right: 2.38rem;
  }
}
.sec_mv .mv_inner .mv_img_wrap .inner figure {
  position: absolute;
}
.sec_mv .mv_inner .mv_img_wrap .inner img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 1.875rem;
}

/* =============================================
page
============================================= */
.sec_catchcopy {
  padding: 4rem 0 11rem !important;
  text-align: center;
  background: url("../img/top/bg_about.webp") no-repeat center center/cover;
  position: relative;
}
@media screen and (max-width: 768px) {
  .sec_catchcopy {
    padding: 3rem 0 8rem !important;
  }
}
.sec_catchcopy::before {
  content: "";
  width: 100%;
  height: 100%;
  background: rgba(51, 51, 51, 0.7);
  position: absolute;
  top: 0;
  left: 0;
}
.sec_catchcopy .heading_md {
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .sec_catchcopy .heading_md {
    font-size: 1.5rem;
  }
}

.sec_about {
  position: relative;
  overflow: hidden;
  padding-top: 10.38rem !important;
  padding-bottom: 0 !important;
  margin-top: -8.38rem;
}
@media screen and (max-width: 768px) {
  .sec_about {
    padding-top: 5rem !important;
  }
}
.sec_about::before {
  content: "";
  display: block;
  width: 115.01vw;
  height: 100%;
  background: #fff;
  border-radius: 60vw 60vw 0px 0px/18.29vw 18.29vw 0px 0px;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  overflow: hidden;
}
.sec_about .about_cont_wrap {
  position: relative;
  z-index: 1;
}
.sec_about .about_cont_wrap p {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 240%;
  letter-spacing: 0.025rem;
}
@media screen and (max-width: 768px) {
  .sec_about .about_cont_wrap p {
    font-size: 1rem;
  }
}

.sec_reason {
  position: relative;
}
.sec_reason::before {
  content: "";
  width: 20.625rem;
  height: 45.8125rem;
  background: url("../img/top/bg_logo_left.webp") no-repeat center center/cover;
  position: absolute;
  top: -33rem;
  left: 0;
}
@media screen and (max-width: 768px) {
  .sec_reason::before {
    width: 30vw;
    height: 58vw;
    background: url(../img/top/bg_logo_left.webp) no-repeat 0% center/contain;
    top: -43rem;
  }
}
.sec_reason::after {
  content: "";
  width: 21.875rem;
  height: 46.1875rem;
  background: url("../img/top/bg_logo_right.webp") no-repeat center center/cover;
  position: absolute;
  top: -30rem;
  right: 0;
}
@media screen and (max-width: 768px) {
  .sec_reason::after {
    width: 30vw;
    height: 70vw;
    background: url(../img/top/bg_logo_right.webp) no-repeat 100% center/contain;
    top: -42rem;
  }
}
.sec_reason .heading_md {
  position: relative;
  z-index: 1;
}
.sec_reason .reason_col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3.75rem;
}
@media screen and (max-width: 768px) {
  .sec_reason .reason_col {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.5rem;
  }
}
.sec_reason .reason_col:not(:last-of-type) {
  margin-bottom: 6rem;
}
@media screen and (max-width: 768px) {
  .sec_reason .reason_col:not(:last-of-type) {
    margin-bottom: 4rem;
  }
}
.sec_reason .reason_col .cont_wrap {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (max-width: 768px) {
  .sec_reason .reason_col .cont_wrap .ttl_box {
    text-align: center;
  }
}
.sec_reason .reason_col .cont_wrap .ttl_box .tag_ttl {
  padding: 0.75rem 1.125rem 0.5rem 1.125rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #00437C;
  border-radius: 3.125rem;
  border: 2px solid #00437C;
  font-family: "Josefin Sans", sans-serif;
  color: #fff;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 1.25rem;
}
@media screen and (max-width: 768px) {
  .sec_reason .reason_col .cont_wrap .ttl_box .tag_ttl {
    font-size: 0.875rem;
  }
}
.sec_reason .reason_col .cont_wrap p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 210%;
  letter-spacing: 0.02rem;
}
.sec_reason .reason_col .img_wrap {
  width: 34.75rem;
  height: auto;
}
@media screen and (max-width: 768px) {
  .sec_reason .reason_col .img_wrap {
    width: 100%;
  }
}
.sec_reason .reason_col .img_wrap img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.sec_fund {
  background: -webkit-gradient(linear, left top, left bottom, from(#ECFBFF), to(#F6FDFF));
  background: linear-gradient(180deg, #ECFBFF 0%, #F6FDFF 100%);
}
.sec_fund .fund_col_wrap {
  margin-bottom: 2rem;
}
.sec_fund .fund_col {
  padding: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.88rem;
  background: #fff;
  border-radius: 1.25rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .sec_fund .fund_col {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 1.5rem 1.15rem;
    gap: 1rem;
  }
}
.sec_fund .fund_col .badge {
  width: 7.5rem;
  height: 7.5rem;
  position: absolute;
  right: -1.81rem;
  top: -3.75rem;
}
@media screen and (max-width: 1000px) {
  .sec_fund .fund_col .badge {
    right: 0;
  }
}
@media screen and (max-width: 768px) {
  .sec_fund .fund_col .badge {
    width: 5rem;
    height: 5rem;
    top: -0.5rem;
    right: -0.5rem;
  }
}
.sec_fund .fund_col .badge img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.sec_fund .fund_col .img_wrap {
  width: 32.78856rem;
  height: auto;
}
@media screen and (max-width: 768px) {
  .sec_fund .fund_col .img_wrap {
    width: 100%;
  }
}
.sec_fund .fund_col .img_wrap img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.sec_fund .fund_col .cont_wrap {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.sec_fund .fund_col .cont_wrap .fund_ttl_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  margin-bottom: 1.25rem;
}
@media screen and (max-width: 768px) {
  .sec_fund .fund_col .cont_wrap .fund_ttl_box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 0.65rem;
  }
}
.sec_fund .fund_col .cont_wrap .fund_ttl_box .fund_name {
  font-size: 2.125rem;
  font-weight: 700;
  letter-spacing: 0.0425rem;
}
@media screen and (max-width: 768px) {
  .sec_fund .fund_col .cont_wrap .fund_ttl_box .fund_name {
    font-size: 1.75rem;
  }
}
.sec_fund .fund_col .cont_wrap .fund_ttl_box .tag_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
}
.sec_fund .fund_col .cont_wrap .fund_ttl_box .tag_box .tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 0.75rem 1.25rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 3.125rem;
  border: 2px solid #00437C;
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.0875rem;
  line-height: 1;
  color: #00437C;
}
@media screen and (max-width: 768px) {
  .sec_fund .fund_col .cont_wrap .fund_ttl_box .tag_box .tag {
    font-size: 0.75rem;
    padding: 0.5rem 1.25rem;
  }
}
.sec_fund .fund_col .cont_wrap .fund_info_box {
  border: 1px solid #DDDDDD;
  border-radius: 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.sec_fund .fund_col .cont_wrap .fund_info_box .info_box_wrap {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-top: 1px solid #DDDDDD;
}
@media screen and (max-width: 768px) {
  .sec_fund .fund_col .cont_wrap .fund_info_box .info_box_wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1rem;
  }
}
.sec_fund .fund_col .cont_wrap .fund_info_box .info_box_wrap .arrow {
  width: 4.25rem;
}
@media screen and (max-width: 768px) {
  .sec_fund .fund_col .cont_wrap .fund_info_box .info_box_wrap .arrow {
    width: 2.5rem;
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg);
  }
}
.sec_fund .fund_col .cont_wrap .fund_info_box .info_box_wrap .arrow img {
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.sec_fund .fund_col .cont_wrap .fund_info_box .info_box {
  padding: 1.3rem 0;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.15rem;
}
@media screen and (max-width: 768px) {
  .sec_fund .fund_col .cont_wrap .fund_info_box .info_box {
    gap: 0.875rem;
  }
}
.sec_fund .fund_col .cont_wrap .fund_info_box .info_box.rate {
  width: 50%;
  border-right: 1px solid #DDDDDD;
}
.sec_fund .fund_col .cont_wrap .fund_info_box .info_box.rate .cont .value {
  color: #F2862A;
}
.sec_fund .fund_col .cont_wrap .fund_info_box .info_box.period {
  width: 50%;
}
.sec_fund .fund_col .cont_wrap .fund_info_box .info_box.amount {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.sec_fund .fund_col .cont_wrap .fund_info_box .info_box .ttl {
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0.1125rem;
}
@media screen and (max-width: 768px) {
  .sec_fund .fund_col .cont_wrap .fund_info_box .info_box .ttl {
    font-size: 0.875rem;
  }
}
.sec_fund .fund_col .cont_wrap .fund_info_box .info_box .cont .value {
  font-size: 2.625rem;
  font-weight: 700;
  letter-spacing: 0.0525rem;
  font-family: "Helvetica Neue", "Inter", sans-serif;
  line-height: 1;
}
.sec_fund .fund_col .cont_wrap .fund_info_box .info_box .cont .unit {
  font-size: 1.625rem;
}
@media screen and (max-width: 768px) {
  .sec_fund .fund_col .cont_wrap .fund_info_box .info_box .cont .unit {
    font-size: 1.25rem;
  }
}

.sec_voice .voice_col_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.875rem;
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  .sec_voice .voice_col_wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 0;
  }
}
.sec_voice .voice_col_wrap .voice_col {
  width: calc((100% - 2.24rem) / 3);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.12rem;
  padding: 4.375rem 1.875rem 3.125rem 1.875rem;
  background: -webkit-gradient(linear, left top, left bottom, from(#ECFBFF), to(#F6FDFF));
  background: linear-gradient(180deg, #ECFBFF 0%, #F6FDFF 100%);
  border-radius: 1.875rem;
}
@media screen and (max-width: 768px) {
  .sec_voice .voice_col_wrap .voice_col {
    width: 100%;
    padding: 4.375rem 0.94rem 3.125rem 0.94rem;
    margin-top: 5rem;
  }
}
.sec_voice .voice_col_wrap .voice_col .icon_box {
  margin-top: -9.5rem;
  text-align: center;
}
.sec_voice .voice_col_wrap .voice_col .icon_box .icon {
  width: 7.5rem;
  height: 7.5rem;
  border-radius: 50rem;
  overflow: hidden;
}
.sec_voice .voice_col_wrap .voice_col .icon_box .icon img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.sec_voice .voice_col_wrap .voice_col .icon_box .name {
  margin-top: 0.62rem;
}
.sec_voice .voice_col_wrap .voice_col .ttl {
  font-size: 1rem;
  font-weight: 700;
  line-height: 180%;
  letter-spacing: 0.02rem;
  margin-bottom: 0.875rem;
}
.sec_voice .voice_col_wrap .cont_box {
  width: 100%;
  font-size: 1rem;
  font-weight: 400;
  line-height: 210%;
  letter-spacing: 0.02rem;
}
.sec_voice .voice_col_wrap .cont_box .position {
  color: #00437C;
  margin-bottom: 1.25rem;
}

.sec_trouble {
  background: #F6F6F6;
  position: relative;
  padding-bottom: 6rem !important;
}
@media screen and (max-width: 768px) {
  .sec_trouble {
    padding-bottom: 3rem !important;
  }
}
.sec_trouble::after {
  content: "";
  width: 100%;
  height: 10.625rem;
  background: #F6F6F6;
  clip-path: polygon(100% 0, 0 0, 50% 100%);
  position: absolute;
  top: 100%;
  left: 0;
}
@media screen and (max-width: 768px) {
  .sec_trouble::after {
    height: 3.625rem;
  }
}
.sec_trouble .trouble_col_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 4.91rem;
}
@media screen and (max-width: 768px) {
  .sec_trouble .trouble_col_wrap {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 1rem;
  }
}
.sec_trouble .trouble_col_wrap .trouble_col {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (max-width: 768px) {
  .sec_trouble .trouble_col_wrap .trouble_col {
    width: calc((100% - 1rem) / 2);
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
  }
  .sec_trouble .trouble_col_wrap .trouble_col:last-of-type {
    width: 50%;
  }
}
.sec_trouble .trouble_col_wrap .trouble_col .thumb {
  width: 17.5rem;
  height: 8.75rem;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .sec_trouble .trouble_col_wrap .trouble_col .thumb {
    width: 100%;
    height: auto;
  }
}
.sec_trouble .trouble_col_wrap .trouble_col .thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.sec_trouble .trouble_col_wrap .trouble_col .cont_box {
  background: #fff;
  padding: 2.5rem 1.25rem;
  border-radius: 1.25rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .sec_trouble .trouble_col_wrap .trouble_col .cont_box {
    width: 100%;
    padding: 1.25rem 0.65rem;
  }
}
@media screen and (max-width: 768px) {
  .sec_trouble .trouble_col_wrap .trouble_col .cont_box.heading_xs {
    font-size: 1rem;
  }
}

.sec_solution {
  padding-top: 19rem !important;
  padding-bottom: 0 !important;
  position: relative;
}
@media screen and (max-width: 768px) {
  .sec_solution {
    padding-top: 8rem !important;
  }
}
.sec_solution::before {
  content: "";
  width: 20.625rem;
  height: 45.8125rem;
  background: url("../img/top/bg_logo_left.webp") no-repeat center center/cover;
  position: absolute;
  top: 10rem;
  left: 0;
}
@media screen and (max-width: 768px) {
  .sec_solution::before {
    width: 30vw;
    height: 58vw;
    background: url(../img/top/bg_logo_left.webp) no-repeat 0% center/contain;
    top: 6rem;
  }
}
.sec_solution::after {
  content: "";
  width: 21.875rem;
  height: 46.1875rem;
  background: url("../img/top/bg_logo_right.webp") no-repeat center center/cover;
  position: absolute;
  top: 12rem;
  right: 0;
}
@media screen and (max-width: 768px) {
  .sec_solution::after {
    width: 30vw;
    height: 70vw;
    background: url(../img/top/bg_logo_right.webp) no-repeat 100% center/contain;
    top: 7rem;
  }
}
.sec_solution .solution_cont_wrap p {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 240%;
  letter-spacing: 0.025rem;
}
@media screen and (max-width: 768px) {
  .sec_solution .solution_cont_wrap p {
    font-size: 1rem;
  }
}

.sec_point .point_col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3.75rem;
}
@media screen and (max-width: 768px) {
  .sec_point .point_col {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.5rem;
  }
}
.sec_point .point_col:not(:last-of-type) {
  margin-bottom: 6rem;
}
@media screen and (max-width: 768px) {
  .sec_point .point_col:not(:last-of-type) {
    margin-bottom: 4rem;
  }
}
.sec_point .point_col .cont_wrap {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (max-width: 768px) {
  .sec_point .point_col .cont_wrap .ttl_box {
    text-align: center;
  }
}
.sec_point .point_col .cont_wrap .ttl_box .tag_ttl {
  padding: 0.75rem 1.125rem 0.5rem 1.125rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #00437C;
  border-radius: 3.125rem;
  border: 2px solid #00437C;
  font-family: "Josefin Sans", sans-serif;
  color: #fff;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 1.25rem;
}
@media screen and (max-width: 768px) {
  .sec_point .point_col .cont_wrap .ttl_box .tag_ttl {
    font-size: 0.875rem;
  }
}
.sec_point .point_col .cont_wrap p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 210%;
  letter-spacing: 0.02rem;
}
.sec_point .point_col .img_wrap {
  width: 34.75rem;
  height: auto;
}
@media screen and (max-width: 768px) {
  .sec_point .point_col .img_wrap {
    width: 100%;
  }
}
.sec_point .point_col .img_wrap img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.sec_flow .flow_col_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.125rem;
}
@media screen and (max-width: 768px) {
  .sec_flow .flow_col_wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.sec_flow .flow_col_wrap .flow_col {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 5.625rem 1.25rem 1.875rem 1.25rem;
  border-radius: 1.875rem;
  border: 3px solid #DDDDDD;
  background: #FFF;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.25rem;
}
.sec_flow .flow_col_wrap .flow_col .thumb {
  width: 8.125rem;
  height: 8.125rem;
}
.sec_flow .flow_col_wrap .flow_col .thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.sec_flow .flow_col_wrap .flow_col .step {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 8.75rem;
  padding: 1rem 0rem 0.625rem 0rem;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 1.875rem 0rem 1.875rem 0rem;
  background: #00437C;
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0.025rem;
  color: #fff;
  font-family: "Josefin Sans", sans-serif;
  position: absolute;
  top: -3px;
  left: -3px;
}
.sec_flow .flow_col_wrap .flow_col .des_box {
  text-align: center;
}
.sec_flow .flow_col_wrap .flow_col .des_box .btn_wrap {
  margin-top: 0.81rem;
}
.sec_flow .flow_col_wrap .flow_col .des_box .btn_wrap .sub_ttl {
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.015rem;
  color: #F2862A;
  margin-bottom: 0.44rem;
}

.sec_faq {
  background: -webkit-gradient(linear, left top, left bottom, from(#ECFBFF), to(#F6FDFF));
  background: linear-gradient(180deg, #ECFBFF 0%, #F6FDFF 100%);
}
.sec_faq .faq_col_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.875rem;
}
.sec_faq .faq_col_wrap .faq_col {
  background: #fff;
  padding: 2.5rem;
  border-radius: 1.25rem;
}
@media screen and (max-width: 768px) {
  .sec_faq .faq_col_wrap .faq_col {
    padding: 1.5rem 1.25rem;
  }
}
.sec_faq .faq_col_wrap .faq_col .ttl {
  color: #00437C;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.88rem;
  margin-bottom: 1.25rem;
}
.sec_faq .faq_col_wrap .faq_col .ttl .icon {
  width: 1.5625rem;
  font-size: 1.75rem;
  font-weight: 500;
  font-family: "Helvetica Neue", "Inter", sans-serif;
  text-align: center;
}
.sec_faq .faq_col_wrap .faq_col .cont_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.88rem;
}
.sec_faq .faq_col_wrap .faq_col .cont_box .icon {
  width: 1.5625rem;
  font-size: 1.75rem;
  font-weight: 500;
  color: #5CC2D7;
  font-family: "Helvetica Neue", "Inter", sans-serif;
  text-align: center;
}
.sec_faq .faq_col_wrap .faq_col .cont_box p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 210%;
  letter-spacing: 0.02rem;
}

.sec_outline #outline-campaign {
  margin-bottom: 8rem;
}/*# sourceMappingURL=user_style.css.map */