@charset "UTF-8";
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: 700;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

html {
  font-size: 62.5%;
}

body {
  background: #fff;
  color: #333;
  font-family: "Zen Kaku Gothic New", sans-serif, メイリオ, Meiryo, verdana, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, Osaka, ＭＳ\ Ｐゴシック, MS PGothic, Sans-Serif;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img {
  vertical-align: bottom;
}

ul li {
  list-style: none;
}

input[type=text],
input[type=tel],
input[type=checkbox],
input[type=submit],
button,
select,
textarea {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
}
input[type=text]::-moz-placeholder, input[type=tel]::-moz-placeholder, input[type=checkbox]::-moz-placeholder, input[type=submit]::-moz-placeholder, button::-moz-placeholder, select::-moz-placeholder, textarea::-moz-placeholder {
  color: #909090;
}
input[type=text]::placeholder,
input[type=tel]::placeholder,
input[type=checkbox]::placeholder,
input[type=submit]::placeholder,
button::placeholder,
select::placeholder,
textarea::placeholder {
  color: #909090;
}

input::-ms-clear {
  display: none;
}

input:focus::-moz-placeholder {
  color: transparent;
}

input:focus::placeholder {
  color: transparent;
}

textarea:focus::-moz-placeholder {
  color: transparent;
}

textarea:focus::placeholder {
  color: transparent;
}

body {
  color: #000;
  line-height: 1.5;
}

a {
  transition: color 0.2s ease-out;
}
a:link {
  color: #000;
  text-decoration: underline;
}
a:visited {
  color: #000;
  text-decoration: underline;
}
a:hover {
  color: #000;
  text-decoration: none;
}
a:active {
  color: #000;
}

/* ======================================================
	共通keyframes
====================================================== */
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* ======================================================
	PC用設定
====================================================== */
@media print, screen and (min-width: 768px) {
  img {
    max-width: 100%;
  }
  .sp {
    display: none !important;
  }
  .wrapper {
    padding-top: 74px;
  }
  /* header ====================*/
  header.header {
    box-sizing: border-box;
    position: fixed;
    z-index: 100;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0 20px;
    background: #FFF;
    border-bottom: 1px solid #C9DEF4;
  }
  header.header .header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1100px;
    height: 74px;
    margin: 0 auto;
  }
  header.header .header__title {
    height: 44px;
    background: url("../img/logo.png") left center no-repeat;
    background-size: contain;
  }
  header.header .header__title a {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    padding-left: 50px;
    text-decoration: none;
    color: #062A60;
  }
  header.header .header__title a span {
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
  }
  header.header .header__menu {
    display: none;
  }
  header.header .header__nav {
    display: block !important;
  }
  header.header .header__nav .header__nav-inner {
    display: flex;
    align-items: center;
  }
  header.header .header__nav .header__menu {
    display: none;
  }
  header.header .header__nav ul.header__nav-list {
    display: flex;
    align-items: center;
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item {
    margin-left: 30px;
    font-size: 14px;
    font-weight: 500;
    color: #062A60;
    line-height: 1;
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item a {
    display: block;
    position: relative;
    padding: 10px 0;
    text-decoration: none;
    color: #062A60;
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 2px;
    background: #062A60;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1);
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item a:hover::after {
    transform: scaleX(1);
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item a:not(:hover)::after {
    transform-origin: right;
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item--scroll {
    display: none;
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item--about {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 15px;
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item--about::before {
    content: "｜";
    margin-right: 15px;
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item--inquiry {
    margin-left: 25px;
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item--inquiry a {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    height: 40px;
    padding: 0 20px;
    text-decoration: none;
    color: #fff;
    border-radius: 100vmax;
    background: linear-gradient(135deg, #00A99D 0%, #0064C8 100%);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
    transition: all 0.2s;
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item--inquiry a:hover {
    opacity: 0.8;
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item--inquiry a::before {
    content: "";
    display: block;
    width: 18px;
    height: 12px;
    background: url("../img/ic_mail_white.svg") left center no-repeat;
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item--inquiry a::after {
    content: none;
  }
  /* inquiry ====================*/
  .inquiry {
    padding: 0 20px;
  }
  .inquiry .inquiry__inner {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    max-width: 1100px;
    margin: 0 auto;
    padding: 35px 40px 40px;
    border-radius: 15px;
    background: linear-gradient(101deg, #062A60 0%, #0064C8 58%, #00A99D 100%);
  }
  .inquiry .inquiry__block p.inquiry__title {
    font-size: 32px;
    font-weight: 900;
    color: #FFF;
  }
  .inquiry .inquiry__block p.inquiry__text {
    margin-top: 20px;
    font-size: 16px;
    font-weight: 700;
    color: #D0E0F2;
  }
  .inquiry .inquiry__btn-area .inquiry__btn {
    overflow: hidden;
    width: 240px;
    height: 60px;
    border-radius: 100vmax;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
  }
  .inquiry .inquiry__btn-area .inquiry__btn a {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    gap: 8px;
    position: relative;
    width: 100%;
    height: 100%;
    padding-left: 65px;
    text-align: center;
    text-decoration: none;
    font-size: 21px;
    font-weight: 700;
    color: #062A60;
    line-height: 1;
    background: #fff;
    transition: all 0.2s;
  }
  .inquiry .inquiry__btn-area .inquiry__btn a::before, .inquiry .inquiry__btn-area .inquiry__btn a::after {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 9px);
    left: 30px;
    width: 27px;
    height: 18px;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    transition: all 0.2s;
  }
  .inquiry .inquiry__btn-area .inquiry__btn a::before {
    background-image: url("../img/ic_mail_navy.svg");
  }
  .inquiry .inquiry__btn-area .inquiry__btn a::after {
    background-image: url("../img/ic_mail_blue.svg");
    opacity: 0;
  }
  .inquiry .inquiry__btn-area .inquiry__btn a:hover {
    color: #0467CB;
  }
  .inquiry .inquiry__btn-area .inquiry__btn a:hover::after {
    opacity: 1;
  }
  /* pagetop ====================*/
  .pagetop {
    opacity: 0;
    position: fixed;
    z-index: 98;
    right: 20px;
    bottom: 20px;
    pointer-events: none;
    transition: opacity 0.25s ease;
  }
  .pagetop.show {
    opacity: 1;
    pointer-events: auto;
  }
  .pagetop a {
    display: block;
    width: 60px;
    height: 60px;
    background-color: #062A60;
    background-image: url("../img/pagetop.svg");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    border-radius: 100vmax;
    transition: background-color 0.15s ease;
  }
  .pagetop a:hover {
    background-color: rgba(6, 42, 96, 0.8);
  }
  .pagetop a span {
    font-size: 1px;
    opacity: 0;
  }
  /* footer ====================*/
  footer.footer {
    margin-top: 80px;
    padding: 30px;
    background: #EDF9FF;
  }
  footer.footer .footer__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1100px;
    margin: 0 auto;
  }
  footer.footer .footer__title {
    height: 44px;
    background: url("../img/logo.png") left center no-repeat;
    background-size: contain;
  }
  footer.footer .footer__title a {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    padding-left: 50px;
    text-decoration: none;
    color: #062A60;
  }
  footer.footer .footer__title a span {
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
  }
  footer.footer p.footer__address {
    margin-top: 14px;
    font-size: 14px;
    font-weight: 500;
    color: #062A60;
    line-height: 1.7;
  }
  footer.footer ul.footer__nav-list {
    display: flex;
    align-items: center;
  }
  footer.footer ul.footer__nav-list li.footer__nav-item {
    font-size: 13px;
    font-weight: 500;
    color: #062A60;
    line-height: 1;
  }
  footer.footer ul.footer__nav-list li.footer__nav-item + li.footer__nav-item::before {
    content: "｜";
    margin-right: 15px;
  }
  footer.footer ul.footer__nav-list li.footer__nav-item {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 15px;
  }
  footer.footer ul.footer__nav-list li.footer__nav-item a {
    position: relative;
    padding: 10px 0;
    text-decoration: none;
    color: #062A60;
  }
  footer.footer ul.footer__nav-list li.footer__nav-item a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 2px;
    background: #062A60;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1);
  }
  footer.footer ul.footer__nav-list li.footer__nav-item a:hover::after {
    transform: scaleX(1);
  }
  footer.footer ul.footer__nav-list li.footer__nav-item a:not(:hover)::after {
    transform-origin: right;
  }
  footer.footer p.footer__copyright {
    margin-top: 30px;
    text-align: right;
    font-size: 12px;
    font-weight: 500;
    color: #062A60;
    line-height: 1;
  }
  h2.section__title span {
    display: block;
    margin: 0 30px;
    text-align: center;
    font-size: 38px;
    font-weight: 900;
    color: #062A60;
    line-height: 1;
    white-space: nowrap;
  }
  h3.section__title {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 18px;
    margin-top: 90px;
  }
  h3.section__title::after {
    content: "";
    display: block;
    width: 60px;
    height: 4px;
    border-radius: 4px;
    background: #062A60;
  }
  h3.section__title span {
    color: #062A60;
    text-align: center;
    font-size: 28px;
    font-weight: 900;
    line-height: 1;
  }
  p.section__title {
    margin-top: 40px;
    font-size: 20px;
    font-weight: 700;
  }
  p.section__text {
    font-size: 16px;
    font-weight: 400;
    line-height: 2;
  }
  p.section__text--center {
    margin-top: 40px;
    text-align: center;
  }
  p.section__text--right {
    text-align: right;
  }
  p.section__text--lead {
    margin-top: 40px;
    text-align: center;
    font-size: 28px;
    font-weight: 500;
    letter-spacing: 2px;
    line-height: 1.5;
  }
  p.section__text--lead strong {
    color: #0064C8;
  }
  p.section__text--note {
    font-size: 12px;
  }
  ul.disc__list li.disc__list-item {
    box-sizing: border-box;
    position: relative;
    padding-left: 0.75em;
    font-size: 16px;
  }
  ul.disc__list li.disc__list-item:before {
    content: "•";
    position: absolute;
    top: 0;
    left: 0;
  }
  body.top header.header .header__nav ul.header__nav-list li.header__nav-item--top {
    display: none;
  }
  body.top header.header .header__nav ul.header__nav-list li.header__nav-item--scroll {
    display: block;
  }
  body.top .mainvisual {
    padding: 60px 20px;
    background: linear-gradient(180deg, #EDF9FF 0%, #F5FCFF 50%);
  }
  body.top .mainvisual .mainvisual__inner {
    display: flex;
    justify-content: space-between;
    gap: 40px;
    width: 100%;
    max-width: 1100px;
    margin-inline: auto;
  }
  body.top .mainvisual .mainvisual__block--intro {
    width: 480px;
  }
  body.top .mainvisual .mainvisual__block--overview {
    box-sizing: border-box;
    width: calc(100% - 520px);
    padding: 30px;
    background: #FFF;
    border-radius: 15px;
    box-shadow: 0 0 20px 0 rgba(0, 100, 200, 0.15);
  }
  body.top .mainvisual p.mainvisual__intro-text {
    box-sizing: border-box;
    width: 100%;
    padding: 10px 20px;
    text-align: center;
    font-size: 18px;
    font-weight: 700;
    color: #FFF;
    background: #0064C8;
    border-radius: 15px;
  }
  body.top .mainvisual p.mainvisual__catch {
    margin-top: 28px;
    font-size: 38px;
    font-weight: 900;
    color: #062A60;
    line-height: 1.6;
  }
  body.top .mainvisual p.mainvisual__catch span {
    display: block;
  }
  body.top .mainvisual p.mainvisual__catch span strong {
    color: #0064C8;
  }
  body.top .mainvisual p.mainvisual__lead {
    margin-top: 60px;
    font-size: 16px;
    font-weight: 700;
    line-height: 2;
  }
  body.top .mainvisual p.mainvisual__lead br {
    display: none;
  }
  body.top .mainvisual .mainvisual__btn-area {
    display: flex;
    gap: 20px;
    margin-top: 60px;
  }
  body.top .mainvisual .mainvisual__btn-area .mainvisual__btn {
    overflow: hidden;
    height: 56px;
    border-radius: 100vmax;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
    transition: all 0.2s;
  }
  body.top .mainvisual .mainvisual__btn-area .mainvisual__btn a {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    height: 100%;
    padding: 20px;
    text-decoration: none;
    font-size: 16px;
    font-weight: 700;
    color: #FFF;
    line-height: 1;
    transition: all 0.2s;
  }
  body.top .mainvisual .mainvisual__btn-area .mainvisual__btn a:hover {
    opacity: 0.8;
  }
  body.top .mainvisual .mainvisual__btn-area .mainvisual__btn a::before {
    content: "";
    display: block;
    width: 20px;
    height: 14px;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
  }
  body.top .mainvisual .mainvisual__btn-area .mainvisual__btn--platform a {
    background: linear-gradient(97deg, #0064C8 0%, #062A60 100%);
  }
  body.top .mainvisual .mainvisual__btn-area .mainvisual__btn--platform a::before {
    background-image: url("../img/ic_book_white.svg");
  }
  body.top .mainvisual .mainvisual__btn-area .mainvisual__btn--inquiry a {
    background: linear-gradient(135deg, #00A99D 0%, #0064C8 100%);
  }
  body.top .mainvisual .mainvisual__btn-area .mainvisual__btn--inquiry a::before {
    background-image: url("../img/ic_mail_white.svg");
  }
  body.top .mainvisual p.mainvisual__overview-title {
    padding: 10px 20px;
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 900;
    color: #0064C8;
    line-height: 1;
    background: #EDF9FF;
    border-radius: 100vmax;
  }
  body.top .mainvisual p.mainvisual__overview-lead {
    margin-top: 15px;
    text-align: center;
    font-size: 14px;
    font-weight: 700;
    color: #062A60;
    line-height: 1.7;
  }
  body.top .mainvisual ul.mainvisual__list {
    overflow: hidden;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
    padding-top: 30px;
  }
  body.top .mainvisual ul.mainvisual__list li.mainvisual__list-item {
    box-sizing: border-box;
    position: relative;
    padding: 25px 5px 15px 5px;
    border: 1px solid #C9DEF4;
    border-radius: 8px;
  }
  body.top .mainvisual ul.mainvisual__list li.mainvisual__list-item::after {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 5px);
    right: -16px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 10px;
    border-color: transparent transparent transparent #00A99D;
  }
  body.top .mainvisual ul.mainvisual__list li.mainvisual__list-item p.mainvisual__list-num {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    left: calc(50% - 15px);
    top: -15px;
    width: 30px;
    height: 30px;
    color: #FFF;
    text-align: center;
    font-family: Inter;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 1;
    background: #062A60;
    border-radius: 100vmax;
  }
  body.top .mainvisual ul.mainvisual__list li.mainvisual__list-item figure.mainvisual__list-img {
    display: table;
    margin: 0 auto;
  }
  body.top .mainvisual ul.mainvisual__list li.mainvisual__list-item p.mainvisual__list-title {
    margin-top: 10px;
    text-align: center;
    font-size: 16px;
    font-weight: 700;
    color: #062A60;
    line-height: 1.2;
  }
  body.top .mainvisual ul.mainvisual__list li.mainvisual__list-item p.mainvisual__list-text {
    margin-top: 10px;
    text-align: center;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.5;
  }
  body.top .mainvisual p.mainvisual__overview-text {
    margin-top: 20px;
    padding: 10px 15px;
    font-size: 14px;
    font-weight: 400;
    line-height: 2;
    background: rgba(228, 246, 245, 0.86);
    border-radius: 8px;
  }
  body.top .section {
    padding: 60px 20px;
  }
  body.top .section .section__inner {
    max-width: 1100px;
    margin-inline: auto;
  }
  body.top h2.section__title {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  body.top h2.section__title::before, body.top h2.section__title::after {
    content: "";
    display: block;
    width: 78px;
    height: 6px;
    flex-shrink: 0;
    background: #062A60;
  }
  body.top h2.section__title::before {
    border-radius: 6px 0 0 6px;
  }
  body.top h2.section__title::after {
    border-radius: 0 6px 6px 0;
  }
  body.top .platform ul.platform__point-list,
  body.top .platform ul.platform__support-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
    margin-top: 40px;
  }
  body.top .platform ul.platform__point-list li.platform__point-item,
  body.top .platform ul.platform__point-list li.platform__support-item,
  body.top .platform ul.platform__support-list li.platform__point-item,
  body.top .platform ul.platform__support-list li.platform__support-item {
    padding: 30px;
    background: #E4F6F5;
    border-radius: 15px;
  }
  body.top .platform p.platform__point-title {
    display: flex;
    align-items: center;
    gap: 20px;
  }
  body.top .platform p.platform__point-title img.platform__point-icon {
    display: block;
    width: 120px;
    aspect-ratio: 1/1;
    border-radius: 10px;
  }
  body.top .platform p.platform__point-title span {
    font-size: 22px;
    font-weight: 900;
    color: #062A60;
  }
  body.top .platform p.platform__point-text {
    margin-top: 15px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.75;
  }
  body.top .platform p.platform__support-title {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    font-size: 22px;
    font-weight: 900;
    color: #20406A;
    line-height: 1;
  }
  body.top .platform p.platform__support-title strong.platform__support-num {
    font-family: Inter;
    font-size: 32px;
    color: #0064C8;
    line-height: 1.12;
  }
  body.top .platform p.platform__support-subtitle {
    display: table;
    margin: 10px auto 0;
    padding: 5px 15px;
    text-align: center;
    color: #0064C8;
    text-align: center;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    background: #FFF;
    border-radius: 100vmax;
  }
  body.top .platform figure.platform__support-img {
    display: table;
    margin: 15px auto 0;
  }
  body.top .platform figure.platform__support-img img {
    width: 230px;
  }
  body.top .platform p.platform__support-caption {
    margin-top: 15px;
    text-align: center;
    font-size: 18px;
    font-weight: 700;
    color: #20406A;
    line-height: 1;
  }
  body.top .platform p.platform__support-text {
    margin-top: 15px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.75;
  }
  body.top .study {
    background: linear-gradient(180deg, #EDF9FF 0%, #F5FCFF 50%);
  }
  body.top .study ul.study__list {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
    margin-top: 40px;
  }
  body.top .study ul.study__list li.study__item {
    background: #FFF;
    border-radius: 15px;
    box-shadow: 0 0 20px 0 rgba(0, 100, 200, 0.15);
  }
  body.top .study ul.study__list li.study__item p.study__item-num {
    padding: 9px 16px;
    text-align: center;
    font-family: Inter;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    color: #FFF;
    background: #062A60;
    border-radius: 15px 15px 0 0;
  }
  body.top .study ul.study__list li.study__item figure.study__item-img {
    display: table;
    margin: 25px auto 0;
  }
  body.top .study ul.study__list li.study__item figure.study__item-img img {
    width: 150px;
  }
  body.top .study ul.study__list li.study__item p.study__item-title {
    margin: 25px 30px 0;
    padding-top: 20px;
    text-align: center;
    font-size: 20px;
    font-weight: 900;
    color: #062A60;
    border-top: 5px solid #E4F6F5;
  }
  body.top .study ul.study__list li.study__item p.study__item-text {
    margin: 10px 30px 25px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.75;
  }
  body.top .study .study__case {
    margin-top: 40px;
    background: #FFF;
    border-radius: 15px;
    box-shadow: 0 0 20px 0 rgba(0, 100, 200, 0.15);
  }
  body.top .study .study__case p.study__case-title {
    padding: 9px 16px;
    text-align: center;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    color: #FFF;
    background: #062A60;
    border-radius: 15px 15px 0 0;
  }
  body.top .study .study__case .study__case-layout {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 40px;
    padding: 40px;
  }
  body.top .study .study__case p.study__case-text {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.75;
  }
  body.top .study .study__case ul.study__case-tag-list {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 40px;
  }
  body.top .study .study__case ul.study__case-tag-list li.study__case-tag-item {
    padding: 10px 20px;
    text-align: center;
    font-size: 13px;
    font-weight: 700;
    color: #062A60;
    line-height: 1;
    background: #FFF;
    border: 1px solid #C9DEF4;
    border-radius: 100vmax;
  }
  body.top .service .service__support-layout {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 40px;
    margin-top: 40px;
  }
  body.top .service .service__support-layout .service__support-block {
    padding: 30px;
    background: #FFF;
    border: 2px solid #C9DEF4;
    border-radius: 15px;
  }
  body.top .service .service__support-layout .service__support-title {
    height: 26px;
    padding-left: 40px;
    font-size: 20px;
    font-weight: 900;
    color: #062A60;
    line-height: 1.2;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: 30px 26px;
  }
  body.top .service .service__support-layout .service__support-title--check {
    background-image: url("../../img/top/service_ic01.svg");
  }
  body.top .service .service__support-layout .service__support-title--data {
    background-image: url("../../img/top/service_ic02.svg");
  }
  body.top .service .service__support-layout ul.service__check-list {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 13px;
    margin-top: 20px;
  }
  body.top .service .service__support-layout ul.service__check-list li.service__check-item {
    box-sizing: border-box;
    width: 100%;
    padding: 16px 5px 17px 38px;
    font-size: 16px;
    font-weight: 700;
    color: #062A60;
    line-height: 1.3;
    background: url("../img/ic_check.svg") left 12px center no-repeat;
    background-size: 20px 20px;
    border: 1px solid #C9DEF4;
    border-radius: 8px;
  }
  body.top .service .service__support-layout ul.service__data-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px;
    margin-top: 20px;
  }
  body.top .service .service__support-layout ul.service__data-list li.service__data-item {
    padding: 20px;
    border: 1px solid #C9DEF4;
    border-radius: 8px;
  }
  body.top .service .service__support-layout ul.service__data-list li.service__data-item p.service__data-title {
    font-size: 20px;
    font-weight: 900;
    color: #0064C8;
    line-height: 1;
  }
  body.top .service .service__support-layout ul.service__data-list li.service__data-item p.service__data-text {
    margin-top: 10px;
    font-size: 14px;
    font-weight: 400;
  }
  body.top .service .service__support-layout p.service__support-text {
    margin-top: 20px;
    padding: 15px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.7;
    border-radius: 8px;
    background: #E4F6F5;
  }
  body.top .service ul.service__recommend-list {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    margin-top: 40px;
    padding: 30px 0;
    background: #E4F6F5;
    border-radius: 15px;
  }
  body.top .service ul.service__recommend-list li.service__recommend-item + .service__recommend-item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
    height: 100%;
    background: #fff;
    border-radius: 100vmax;
  }
  body.top .service ul.service__recommend-list li.service__recommend-item {
    position: relative;
    padding: 10px 20px;
  }
  body.top .service ul.service__recommend-list li.service__recommend-item figure.service__recommend-img {
    width: 70px;
    margin: 0 auto;
  }
  body.top .service ul.service__recommend-list li.service__recommend-item p.service__recommend-text {
    margin-top: 10px;
    text-align: center;
    font-size: 16px;
    font-weight: 700;
    color: #062A60;
  }
  body.top .service ul.service__flow-list {
    overflow: hidden;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 30px 52px;
    margin-top: 40px;
    padding-top: 6px;
  }
  body.top .service ul.service__flow-list li.service__flow-item {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
    aspect-ratio: 1/1;
    border: 2px solid #C9DEF4;
    border-radius: 100vmax;
  }
  body.top .service ul.service__flow-list li.service__flow-item::after {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 5px);
    right: -35px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 10px;
    border-color: transparent transparent transparent #00A99D;
  }
  body.top .service ul.service__flow-list li.service__flow-item p.service__flow-label {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: -8px;
    left: calc(50% - 45px);
    width: 90px;
    height: 30px;
    font-size: 18px;
    font-family: Inter;
    font-weight: 700;
    color: #FFF;
    background: #00A99D;
    border-radius: 100vmax;
  }
  body.top .service ul.service__flow-list li.service__flow-item p.service__flow-num {
    text-align: center;
    font-family: Inter;
    font-size: 40px;
    font-weight: 900;
    color: #0064C8;
    line-height: 0.9;
  }
  body.top .service ul.service__flow-list li.service__flow-item p.service__flow-title {
    text-align: center;
    font-size: 20px;
    font-weight: 900;
    color: #20406A;
    white-space: nowrap;
  }
  body.top .service .service__comic {
    margin-top: 40px;
    background: #FFF;
    border-radius: 15px;
    box-shadow: 0 0 20px 0 rgba(0, 100, 200, 0.15);
  }
  body.top .service .service__comic p.service__comic-title {
    padding: 9px 16px;
    text-align: center;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    color: #FFF;
    background: #062A60;
    border-radius: 15px 15px 0 0;
  }
  body.top .service .service__comic figure.service__comic-img {
    padding: 40px;
  }
  body.top .service .service__comic figure.service__comic-img img {
    display: block;
    margin: 0 auto;
    border: 1px solid #E0E0E0;
  }
  body.top .service p.service__date {
    margin-top: 40px;
    text-align: right;
    font-size: 14px;
    font-weight: 400;
  }
  body.about {
    background: linear-gradient(180deg, #EDF9FF 0%, #F5FCFF 50%);
  }
  body.about .section {
    padding: 60px 20px;
  }
  body.about .section .section__inner {
    max-width: 880px;
    margin-inline: auto;
  }
  body.about p.section__text {
    margin-top: 40px;
  }
  body.about ul.overview__list {
    margin-top: 40px;
    border-top: 1px solid #B8DFF5;
  }
  body.about ul.overview__list li {
    display: flex;
    padding: 15px 0;
    border-bottom: 1px solid #B8DFF5;
  }
  body.about ul.overview__list li p.overview__label {
    width: 7em;
    font-size: 16px;
    font-weight: 400;
    line-height: 2;
  }
  body.about ul.overview__list li p.overview__value {
    width: calc(100% - 7em);
    font-size: 16px;
    font-weight: 400;
    line-height: 2;
  }
  body.about ul.guidance__list {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 30px;
    margin-top: 40px;
  }
  body.about ul.guidance__list li.guidance__list-item {
    overflow: hidden;
    background: #FFF;
    border-radius: 100vmax;
    filter: drop-shadow(0 0 20px rgba(0, 100, 200, 0.15));
  }
  body.about ul.disc__list {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 1em;
    margin-top: 40px;
    padding: 40px;
    background: #FFF;
    border-radius: 15px;
    box-shadow: 0 0 20px 0 rgba(0, 100, 200, 0.15);
  }
  body.about figure.about__img {
    margin-top: 40px;
    padding: 40px 0;
    background: #FFF;
    border-radius: 15px;
    box-shadow: 0 0 20px 0 rgba(0, 100, 200, 0.15);
  }
  body.about figure.about__img img {
    display: table;
    margin-inline: auto;
  }
  body.about figure.about__img a {
    display: block;
    margin-top: 1em;
    text-align: right;
    font-size: 12px;
    color: #0064C8;
  }
  body.privacypolicy {
    background: linear-gradient(180deg, #EDF9FF 0%, #F5FCFF 50%);
  }
  body.privacypolicy .section {
    padding: 60px 20px;
  }
  body.privacypolicy .section .section__inner {
    max-width: 880px;
    margin-inline: auto;
  }
  body.privacypolicy h2.section__title + p.section__text {
    margin-top: 60px;
  }
  body.privacypolicy p.section__text + p.section__text {
    margin-top: 1em;
  }
  body.privacypolicy ul.disc__list {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 1em;
    margin-top: 1.5em;
  }
  body.form {
    background: linear-gradient(180deg, #EDF9FF 0%, #F5FCFF 50%);
  }
  body.form .section {
    padding: 60px 20px 0;
  }
  body.form .section .section__inner {
    max-width: 700px;
    margin-inline: auto;
  }
  body.form p.notice {
    margin-top: 20px;
    text-align: center;
    font-size: 14px;
    color: #cd1a00;
  }
  body.form dl.form + dl.form {
    margin-top: 20px;
  }
  body.form dl.form {
    margin: 40px auto 0;
  }
  body.form dl.form dt {
    display: flex;
    align-items: center;
    height: 20px;
    font-size: 14px;
    font-weight: 700;
    color: #062A60;
    line-height: 1;
  }
  body.form dl.form dt span.ic__required {
    color: #cd1a00;
  }
  body.form dl.form dd {
    box-sizing: border-box;
    width: 100%;
    margin-top: 10px;
  }
  body.form dl.form dd input[type=text],
  body.form dl.form dd input[type=tel] {
    box-sizing: border-box;
    width: 100%;
    height: 50px;
    padding: 10px 15px;
    font-size: 16px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    background: #fff;
    border: 1px solid #C9DEF4;
    border-radius: 8px;
  }
  body.form dl.form dd textarea {
    box-sizing: border-box;
    width: 100%;
    padding: 10px 15px;
    font-size: 16px;
    font-family: "Zen Kaku Gothic New", sans-serif;
    line-height: 1.7;
    background: #fff;
    border: 1px solid #C9DEF4;
    border-radius: 8px;
  }
  body.form dl.form dd p.error {
    margin-top: 5px;
    font-size: 12px;
    color: #cd1a00;
  }
  body.form dl.form.confirm dt span.ic__required {
    display: none;
  }
  body.form dl.form.confirm dd {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 50px;
    padding: 10px 15px;
    font-size: 16px;
    background: #fff;
    border: 1px solid #C9DEF4;
    border-radius: 4px;
  }
  body.form .btn__area {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin: 40px auto 0;
  }
  body.form .btn__area button.btn__submit {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 260px;
    height: 56px;
    padding: 20px;
    font-size: 16px;
    font-weight: 700;
    color: #FFF;
    line-height: 1;
    border-radius: 100vmax;
    background: linear-gradient(135deg, #00A99D 0%, #0064C8 100%);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
    transition: all 0.2s;
  }
  body.form .btn__area button.btn__submit:hover {
    opacity: 0.8;
  }
  body.form .btn__back {
    display: table;
    margin: 40px auto 0;
  }
  body.form .btn__back a {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 260px;
    height: 56px;
    padding: 20px;
    text-decoration: none;
    font-size: 16px;
    font-weight: 700;
    color: #FFF;
    line-height: 1;
    border-radius: 100vmax;
    background: linear-gradient(135deg, #00A99D 0%, #0064C8 100%);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
    transition: all 0.2s;
  }
  body.form .btn__back a:hover {
    opacity: 0.8;
  }
}
@media (min-width: 768px) and (max-width: 1139px) {
  body.top .platform p.platform__point-title {
    flex-direction: column;
  }
  body.top .platform p.platform__point-title br {
    display: none;
  }
  body.top .platform p.platform__support-title {
    flex-direction: column;
  }
  body.top .service ul.service__recommend-list li.service__recommend-item p.service__recommend-text br {
    display: none;
  }
  body.top .service ul.service__flow-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-width: 512px;
    margin-inline: auto;
  }
}
@media (min-width: 768px) and (max-width: 1079px) {
  body.top .wrapper {
    padding-top: 120px;
  }
  body.top header.header .header__inner {
    flex-direction: column;
    justify-content: center;
    height: 120px;
  }
  body.top header.header .header__nav {
    margin-top: 5px;
  }
  body.top header.header .header__nav ul.header__nav-list li.header__nav-item + li.header__nav-item {
    margin-left: 15px;
  }
  body.top header.header .header__nav ul.header__nav-list li.header__nav-item + li.header__nav-item--inquiry {
    margin-left: 20px;
  }
  body.top .mainvisual .mainvisual__inner {
    flex-direction: column;
  }
  body.top .mainvisual .mainvisual__block--intro, body.top .mainvisual .mainvisual__block--overview {
    width: 100%;
  }
  body.top .mainvisual p.mainvisual__intro-text {
    display: table;
    width: auto;
    margin: 0 auto;
  }
  body.top .mainvisual p.mainvisual__intro-text br {
    display: none;
  }
  body.top .mainvisual p.mainvisual__catch {
    text-align: center;
  }
  body.top .mainvisual p.mainvisual__catch br {
    display: none;
  }
  body.top .mainvisual p.mainvisual__lead {
    margin-top: 28px;
    text-align: center;
  }
  body.top .mainvisual p.mainvisual__lead br {
    display: block;
  }
  body.top .mainvisual .mainvisual__btn-area {
    justify-content: center;
  }
  body.top .mainvisual p.mainvisual__overview-lead br {
    display: none;
  }
}
@media (min-width: 768px) and (max-width: 899px) {
  body.top .study ul.study__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
/* ======================================================
	SP用設定
====================================================== */
@media screen and (max-width: 767px) {
  body.fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  img {
    width: 100%;
  }
  .pc {
    display: none !important;
  }
  .wrapper {
    padding-top: 16.92vw;
  }
  /* header ====================*/
  header.header {
    box-sizing: border-box;
    position: fixed;
    z-index: 100;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0 5.13vw;
    background: #FFF;
    border-bottom: 1px solid #C9DEF4;
  }
  header.header .header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 16.92vw;
    margin: 0 auto;
  }
  header.header .header__title {
    height: 9.23vw;
    background: url("../img/logo.png") left center no-repeat;
    background-size: contain;
  }
  header.header .header__title a {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    padding-left: 10.26vw;
    text-decoration: none;
    color: #062A60;
  }
  header.header .header__title a span {
    font-size: 4.10vw;
    font-weight: 700;
    line-height: 1;
  }
  header.header .header__menu {
    display: block;
    position: fixed;
    z-index: 99;
    top: 6.67vw;
    right: 3.85vw;
    width: 7.18vw;
    height: 4.62vw;
    cursor: pointer;
  }
  header.header .header__menu span {
    display: block;
    position: absolute;
    top: 1.79vw;
    left: 0;
    width: 7.69vw;
    height: 0.51vw;
    background: #062A60;
    transition: all 0.2s;
  }
  header.header .header__menu span:nth-child(1) {
    transform: translateY(-2.05vw);
  }
  header.header .header__menu span:nth-child(2) {
    opacity: 1;
  }
  header.header .header__menu span:nth-child(3) {
    transform: translateY(2.05vw);
  }
  header.header .header__menu.open span:nth-child(1) {
    transform: rotate(-45deg) translateY(0.00vw);
  }
  header.header .header__menu.open span:nth-child(2) {
    opacity: 0;
  }
  header.header .header__menu.open span:nth-child(3) {
    transform: rotate(45deg) translateY(0.00vw);
  }
  header.header .header__nav {
    box-sizing: border-box;
    display: none;
    position: fixed;
    z-index: 98;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding-top: 16.92vw;
    opacity: 0;
    transition: opacity 0.25s ease;
  }
  header.header .header__nav.open {
    opacity: 1;
  }
  header.header .header__nav .header__nav-inner {
    box-sizing: border-box;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    position: relative;
    z-index: 0;
    height: 100%;
    padding: 0 5.13vw 10.26vw;
    background: #fff;
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item {
    margin-bottom: 3.85vw;
    font-size: 3.59vw;
    font-weight: 500;
    color: #062A60;
    line-height: 1;
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item a {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    position: relative;
    height: 14.36vw;
    padding: 2.56vw 3.85vw;
    text-decoration: none;
    font-size: 4.10vw;
    font-weight: 700;
    color: #062A60;
    line-height: 1;
    border-radius: 2.05vw;
    background: #EDF9FF;
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item a::after {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 1.79vw);
    right: 3.85vw;
    width: 2.56vw;
    height: 3.59vw;
    background: url("../img/ic_arrow.svg") left center no-repeat;
    background-size: contain;
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item--scroll {
    display: none;
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item--scroll a::after {
    transform: rotate(90deg);
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item--about {
    margin-top: 3.85vw;
    padding-top: 3.85vw;
    border-top: 1px solid #C9DEF4;
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item--inquiry {
    margin-top: 5.13vw;
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item--inquiry a {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 14.36vw;
    padding: 5.13vw;
    gap: 2.05vw;
    text-decoration: none;
    font-size: 4.10vw;
    font-weight: 700;
    color: #FFF;
    line-height: 1;
    background: linear-gradient(135deg, #00A99D 0%, #0064C8 100%);
    border-radius: 100vmax;
    box-shadow: 0 0 2.56vw 0 rgba(0, 0, 0, 0.2);
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item--inquiry a::before {
    content: "";
    display: block;
    width: 4.62vw;
    height: 3.08vw;
    background: url("../img/ic_mail_white.svg") left center no-repeat;
  }
  header.header .header__nav ul.header__nav-list li.header__nav-item--inquiry a::after {
    content: none;
  }
  /* inquiry ====================*/
  .inquiry {
    padding: 0 5.13vw;
  }
  .inquiry .inquiry__inner {
    box-sizing: border-box;
    padding: 5.13vw 3.85vw 7.69vw 3.85vw;
    border-radius: 3.85vw;
    background: linear-gradient(101deg, #062A60 0%, #0064C8 58%, #00A99D 100%);
  }
  .inquiry .inquiry__block p.inquiry__title {
    text-align: center;
    font-size: 6.67vw;
    font-weight: 900;
    color: #FFF;
  }
  .inquiry .inquiry__block p.inquiry__text {
    margin-top: 5.13vw;
    font-size: 4.10vw;
    font-weight: 700;
    color: #D0E0F2;
  }
  .inquiry .inquiry__btn-area {
    margin-top: 5.13vw;
  }
  .inquiry .inquiry__btn-area .inquiry__btn {
    overflow: hidden;
    width: 100%;
    height: 15.38vw;
    border-radius: 100vmax;
    box-shadow: 0 0 2.56vw 0 rgba(0, 0, 0, 0.2);
  }
  .inquiry .inquiry__btn-area .inquiry__btn a {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2.05vw;
    position: relative;
    width: 100%;
    height: 100%;
    text-align: center;
    text-decoration: none;
    font-size: 5.38vw;
    font-weight: 700;
    color: #062A60;
    line-height: 1;
    background: #fff;
  }
  .inquiry .inquiry__btn-area .inquiry__btn a::before {
    content: "";
    display: block;
    width: 6.92vw;
    height: 4.62vw;
    background: url("../img/ic_mail_navy.svg") left center no-repeat;
    background-size: contain;
  }
  /* pagetop ====================*/
  .pagetop {
    opacity: 0;
    position: fixed;
    z-index: 98;
    right: 3.85vw;
    bottom: 3.85vw;
    pointer-events: none;
    transition: opacity 0.25s ease;
  }
  .pagetop.show {
    opacity: 1;
    pointer-events: auto;
  }
  .pagetop a {
    display: block;
    width: 10.26vw;
    height: 10.26vw;
    background-color: #062A60;
    background-image: url("../img/pagetop.svg");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    border-radius: 100vmax;
    transition: background-color 0.15s ease;
  }
  .pagetop a:hover {
    background-color: rgba(6, 42, 96, 0.8);
  }
  .pagetop a span {
    font-size: 1px;
    opacity: 0;
  }
  /* footer ====================*/
  footer.footer {
    margin-top: 10.26vw;
    padding: 7.69vw 5.13vw;
    background: #EDF9FF;
  }
  footer.footer .footer__title {
    height: 9.23vw;
    background: url("../img/logo.png") left center no-repeat;
    background-size: contain;
  }
  footer.footer .footer__title a {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    padding-left: 10.26vw;
    text-decoration: none;
    color: #062A60;
  }
  footer.footer .footer__title a span {
    font-size: 4.10vw;
    font-weight: 700;
    line-height: 1;
  }
  footer.footer p.footer__address {
    margin-top: 3.85vw;
    font-size: 3.59vw;
    font-weight: 500;
    color: #062A60;
    line-height: 1;
  }
  footer.footer ul.footer__nav-list {
    display: flex;
    align-items: center;
    margin-top: 3.85vw;
  }
  footer.footer ul.footer__nav-list li.footer__nav-item {
    font-size: 3.59vw;
    font-weight: 500;
    color: #062A60;
    line-height: 1;
  }
  footer.footer ul.footer__nav-list li.footer__nav-item + li.footer__nav-item::before {
    content: "｜";
  }
  footer.footer ul.footer__nav-list li.footer__nav-item {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  footer.footer ul.footer__nav-list li.footer__nav-item a {
    text-decoration: none;
    color: #062A60;
  }
  footer.footer p.footer__copyright {
    margin-top: 3.85vw;
    font-size: 2.56vw;
    font-weight: 500;
    color: #062A60;
    line-height: 1;
  }
  h2.section__title span {
    display: block;
    margin: 0 2.56vw;
    text-align: center;
    font-size: 6.15vw;
    font-weight: 900;
    color: #062A60;
    line-height: 1;
    white-space: nowrap;
  }
  h3.section__title {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 4.62vw;
    margin-top: 17.95vw;
  }
  h3.section__title::after {
    content: "";
    display: block;
    width: 15.38vw;
    height: 1.03vw;
    border-radius: 1.03vw;
    background: #062A60;
  }
  h3.section__title span {
    color: #062A60;
    text-align: center;
    font-size: 5.64vw;
    font-weight: 900;
    line-height: 1;
  }
  p.section__title {
    margin-top: 5.13vw;
    font-size: 4.62vw;
    font-weight: 700;
  }
  p.section__text {
    font-size: 4.10vw;
    font-weight: 400;
    line-height: 2;
  }
  p.section__text--center {
    margin-top: 5.13vw;
  }
  p.section__text--right {
    text-align: right;
  }
  p.section__text--lead {
    margin-top: 5.13vw;
    text-align: center;
    font-size: 5.64vw;
    font-weight: 500;
    line-height: 1.5;
  }
  p.section__text--lead span {
    white-space: nowrap;
  }
  p.section__text--lead strong {
    color: #0064C8;
  }
  p.section__text--note {
    font-size: 3.08vw;
  }
  ul.disc__list li.disc__list-item {
    box-sizing: border-box;
    position: relative;
    padding-left: 0.75em;
    font-size: 4.10vw;
  }
  ul.disc__list li.disc__list-item:before {
    content: "•";
    position: absolute;
    top: 0;
    left: 0;
  }
  body.top header.header .header__nav ul.header__nav-list li.header__nav-item--top {
    display: none;
  }
  body.top header.header .header__nav ul.header__nav-list li.header__nav-item--scroll {
    display: block;
  }
  body.top .mainvisual {
    padding: 10.26vw 5.13vw;
    background: linear-gradient(180deg, #EDF9FF 0%, #F5FCFF 50%);
  }
  body.top .mainvisual .mainvisual__inner {
    gap: 10.26vw;
    width: 100%;
    margin-inline: auto;
  }
  body.top .mainvisual .mainvisual__block--overview {
    box-sizing: border-box;
    margin-top: 7.69vw;
    padding: 5.13vw 3.85vw;
    background: #FFF;
    border-radius: 3.85vw;
    box-shadow: 0 0 5.13vw 0 rgba(0, 100, 200, 0.15);
  }
  body.top .mainvisual p.mainvisual__intro-text {
    box-sizing: border-box;
    width: 100%;
    padding: 2.56vw;
    text-align: center;
    font-size: 4.10vw;
    font-weight: 700;
    color: #FFF;
    white-space: nowrap;
    background: #0064C8;
    border-radius: 3.85vw;
  }
  body.top .mainvisual p.mainvisual__catch {
    margin-top: 5.13vw;
    text-align: center;
    font-size: 7.18vw;
    font-weight: 900;
    color: #062A60;
    line-height: 1.6;
  }
  body.top .mainvisual p.mainvisual__catch span {
    display: block;
  }
  body.top .mainvisual p.mainvisual__catch span strong {
    color: #0064C8;
  }
  body.top .mainvisual p.mainvisual__lead {
    margin-top: 3.85vw;
    font-size: 4.10vw;
    font-weight: 700;
    line-height: 2;
  }
  body.top .mainvisual p.mainvisual__lead br {
    display: none;
  }
  body.top .mainvisual .mainvisual__btn-area {
    margin-top: 5.13vw;
  }
  body.top .mainvisual .mainvisual__btn-area .mainvisual__btn + .mainvisual__btn {
    margin-top: 5.13vw;
  }
  body.top .mainvisual .mainvisual__btn-area .mainvisual__btn {
    overflow: hidden;
    width: 100%;
    height: 14.36vw;
    border-radius: 100vmax;
    box-shadow: 0 0 2.56vw 0 rgba(0, 0, 0, 0.2);
  }
  body.top .mainvisual .mainvisual__btn-area .mainvisual__btn a {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2.05vw;
    width: 100%;
    height: 100%;
    padding: 5.13vw;
    text-decoration: none;
    font-size: 4.10vw;
    font-weight: 700;
    color: #FFF;
    line-height: 1;
  }
  body.top .mainvisual .mainvisual__btn-area .mainvisual__btn a::before {
    content: "";
    display: block;
    width: 5.13vw;
    height: 3.59vw;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
  }
  body.top .mainvisual .mainvisual__btn-area .mainvisual__btn--platform a {
    background: linear-gradient(97deg, #0064C8 0%, #062A60 100%);
  }
  body.top .mainvisual .mainvisual__btn-area .mainvisual__btn--platform a::before {
    background-image: url("../img/ic_book_white.svg");
  }
  body.top .mainvisual .mainvisual__btn-area .mainvisual__btn--inquiry a {
    background: linear-gradient(135deg, #00A99D 0%, #0064C8 100%);
  }
  body.top .mainvisual .mainvisual__btn-area .mainvisual__btn--inquiry a::before {
    background-image: url("../img/ic_mail_white.svg");
  }
  body.top .mainvisual p.mainvisual__overview-title {
    padding: 2.56vw 5.13vw;
    text-align: center;
    font-size: 4.62vw;
    font-style: normal;
    font-weight: 900;
    color: #0064C8;
    line-height: 1.3;
    background: #EDF9FF;
    border-radius: 100vmax;
  }
  body.top .mainvisual p.mainvisual__overview-lead {
    margin-top: 3.85vw;
    font-size: 3.59vw;
    font-weight: 700;
    color: #062A60;
    line-height: 1.7;
  }
  body.top .mainvisual ul.mainvisual__list {
    overflow: hidden;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5.13vw 7.69vw;
    padding-top: 7.69vw;
  }
  body.top .mainvisual ul.mainvisual__list li.mainvisual__list-item {
    box-sizing: border-box;
    position: relative;
    padding: 6.41vw 1.28vw 3.85vw 1.28vw;
    border: 1px solid #C9DEF4;
    border-radius: 2.05vw;
  }
  body.top .mainvisual ul.mainvisual__list li.mainvisual__list-item::after {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 1.28vw);
    right: -5.64vw;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 1.54vw 0 1.54vw 2.56vw;
    border-color: transparent transparent transparent #00A99D;
  }
  body.top .mainvisual ul.mainvisual__list li.mainvisual__list-item p.mainvisual__list-num {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    left: calc(50% - 3.85vw);
    top: -3.85vw;
    width: 7.69vw;
    height: 7.69vw;
    color: #FFF;
    text-align: center;
    font-family: Inter;
    font-size: 4.62vw;
    font-style: normal;
    font-weight: 700;
    line-height: 1;
    background: #062A60;
    border-radius: 100vmax;
  }
  body.top .mainvisual ul.mainvisual__list li.mainvisual__list-item figure.mainvisual__list-img {
    display: table;
    margin: 0 auto;
  }
  body.top .mainvisual ul.mainvisual__list li.mainvisual__list-item p.mainvisual__list-title {
    margin-top: 2.56vw;
    text-align: center;
    font-size: 4.10vw;
    font-weight: 700;
    color: #062A60;
    line-height: 1.2;
  }
  body.top .mainvisual ul.mainvisual__list li.mainvisual__list-item p.mainvisual__list-text {
    margin-top: 2.56vw;
    text-align: center;
    font-size: 3.08vw;
    font-weight: 400;
    line-height: 1.5;
  }
  body.top .mainvisual p.mainvisual__overview-text {
    margin-top: 5.13vw;
    padding: 2.56vw 3.85vw;
    font-size: 3.59vw;
    font-weight: 400;
    line-height: 2;
    background: rgba(228, 246, 245, 0.86);
    border-radius: 2.05vw;
  }
  body.top .section {
    padding: 10.26vw 5.13vw;
  }
  body.top h2.section__title {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  body.top h2.section__title::before, body.top h2.section__title::after {
    content: "";
    display: block;
    width: 5.13vw;
    height: 1.54vw;
    flex-shrink: 0;
    background: #062A60;
  }
  body.top h2.section__title::before {
    border-radius: 1.54vw 0 0 1.54vw;
  }
  body.top h2.section__title::after {
    border-radius: 0 1.54vw 1.54vw 0;
  }
  body.top .platform ul.platform__point-list,
  body.top .platform ul.platform__support-list {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 5.13vw;
    margin-top: 5.13vw;
  }
  body.top .platform ul.platform__point-list li.platform__point-item,
  body.top .platform ul.platform__point-list li.platform__support-item,
  body.top .platform ul.platform__support-list li.platform__point-item,
  body.top .platform ul.platform__support-list li.platform__support-item {
    padding: 5.13vw 3.85vw;
    background: #E4F6F5;
    border-radius: 3.85vw;
  }
  body.top .platform p.platform__point-title {
    display: flex;
    align-items: center;
    gap: 2.56vw;
  }
  body.top .platform p.platform__point-title img.platform__point-icon {
    display: block;
    width: 20.51vw;
    aspect-ratio: 1/1;
    border-radius: 2.56vw;
  }
  body.top .platform p.platform__point-title span {
    font-size: 5.13vw;
    font-weight: 900;
    color: #062A60;
  }
  body.top .platform p.platform__point-text {
    margin-top: 3.85vw;
    font-size: 4.10vw;
    font-weight: 400;
    line-height: 1.75;
  }
  body.top .platform p.platform__support-title {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2.05vw;
    font-size: 5.13vw;
    font-weight: 900;
    color: #20406A;
    line-height: 1;
  }
  body.top .platform p.platform__support-title strong.platform__support-num {
    font-family: Inter;
    font-size: 7.18vw;
    color: #0064C8;
    line-height: 1.12;
  }
  body.top .platform p.platform__support-subtitle {
    display: table;
    margin: 2.56vw auto 0;
    padding: 1.28vw 3.85vw;
    text-align: center;
    color: #0064C8;
    text-align: center;
    font-size: 3.33vw;
    font-weight: 700;
    line-height: 1;
    background: #FFF;
    border-radius: 100vmax;
  }
  body.top .platform figure.platform__support-img {
    display: table;
    margin: 3.85vw auto 0;
  }
  body.top .platform figure.platform__support-img img {
    width: 46.15vw;
  }
  body.top .platform p.platform__support-caption {
    margin-top: 3.85vw;
    text-align: center;
    font-size: 4.62vw;
    font-weight: 700;
    color: #20406A;
    line-height: 1;
  }
  body.top .platform p.platform__support-text {
    margin-top: 3.85vw;
    font-size: 4.10vw;
    font-weight: 400;
    line-height: 1.75;
  }
  body.top .study {
    background: linear-gradient(180deg, #EDF9FF 0%, #F5FCFF 50%);
  }
  body.top .study ul.study__list {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 5.13vw;
    margin-top: 7.69vw;
  }
  body.top .study ul.study__list li.study__item {
    background: #FFF;
    border-radius: 3.85vw;
    box-shadow: 0 0 5.13vw 0 rgba(0, 100, 200, 0.15);
  }
  body.top .study ul.study__list li.study__item p.study__item-num {
    padding: 2.31vw 4.10vw;
    text-align: center;
    font-family: Inter;
    font-size: 5.13vw;
    font-weight: 700;
    line-height: 1;
    color: #FFF;
    background: #062A60;
    border-radius: 3.85vw 3.85vw 0 0;
  }
  body.top .study ul.study__list li.study__item figure.study__item-img {
    display: table;
    margin: 5.13vw auto 0;
  }
  body.top .study ul.study__list li.study__item figure.study__item-img img {
    width: 38.46vw;
  }
  body.top .study ul.study__list li.study__item p.study__item-title {
    margin: 5.13vw 3.85vw 0;
    padding-top: 5.13vw;
    text-align: center;
    font-size: 5.13vw;
    font-weight: 900;
    color: #062A60;
    border-top: 1.28vw solid #E4F6F5;
  }
  body.top .study ul.study__list li.study__item p.study__item-text {
    margin: 2.56vw 3.85vw 5.13vw;
    font-size: 4.10vw;
    font-weight: 400;
    line-height: 1.75;
  }
  body.top .study .study__case {
    margin-top: 7.69vw;
    background: #FFF;
    border-radius: 3.85vw;
    box-shadow: 0 0 5.13vw 0 rgba(0, 100, 200, 0.15);
  }
  body.top .study .study__case p.study__case-title {
    padding: 2.31vw 4.10vw;
    text-align: center;
    font-size: 5.13vw;
    font-weight: 700;
    line-height: 1.3;
    color: #FFF;
    background: #062A60;
    border-radius: 3.85vw 3.85vw 0 0;
  }
  body.top .study .study__case .study__case-layout {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 5.13vw;
    padding: 5.13vw 3.85vw;
  }
  body.top .study .study__case p.study__case-text {
    font-size: 4.10vw;
    font-weight: 400;
    line-height: 1.75;
  }
  body.top .study .study__case ul.study__case-tag-list {
    display: flex;
    flex-wrap: wrap;
    gap: 2.56vw;
    margin-top: 5.13vw;
  }
  body.top .study .study__case ul.study__case-tag-list li.study__case-tag-item {
    padding: 2.56vw 3.85vw;
    text-align: center;
    font-size: 3.33vw;
    font-weight: 700;
    color: #062A60;
    line-height: 1;
    background: #FFF;
    border: 1px solid #C9DEF4;
    border-radius: 100vmax;
  }
  body.top .service .service__support-layout {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 5.13vw;
    margin-top: 5.13vw;
  }
  body.top .service .service__support-layout .service__support-block {
    padding: 5.13vw 3.85vw;
    background: #FFF;
    border: 0.51vw solid #C9DEF4;
    border-radius: 3.85vw;
  }
  body.top .service .service__support-layout .service__support-title {
    height: 6.67vw;
    padding-left: 10.26vw;
    font-size: 5.13vw;
    font-weight: 900;
    color: #062A60;
    line-height: 1.2;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: 7.69vw 6.67vw;
  }
  body.top .service .service__support-layout .service__support-title--check {
    background-image: url("../../img/top/service_ic01.svg");
  }
  body.top .service .service__support-layout .service__support-title--data {
    background-image: url("../../img/top/service_ic02.svg");
  }
  body.top .service .service__support-layout ul.service__check-list {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 2.56vw;
    margin-top: 5.13vw;
  }
  body.top .service .service__support-layout ul.service__check-list li.service__check-item {
    box-sizing: border-box;
    width: 100%;
    padding: 2.31vw 1.28vw 2.56vw 9.74vw;
    font-size: 4.10vw;
    font-weight: 700;
    color: #062A60;
    line-height: 1.3;
    background: url("../img/ic_check.svg") left 3.08vw center no-repeat;
    background-size: 5.13vw 5.13vw;
    border: 1px solid #C9DEF4;
    border-radius: 2.05vw;
  }
  body.top .service .service__support-layout ul.service__data-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 3.85vw;
    margin-top: 5.13vw;
  }
  body.top .service .service__support-layout ul.service__data-list li.service__data-item {
    padding: 3.85vw;
    border: 1px solid #C9DEF4;
    border-radius: 2.05vw;
  }
  body.top .service .service__support-layout ul.service__data-list li.service__data-item p.service__data-title {
    font-size: 5.13vw;
    font-weight: 900;
    color: #0064C8;
    line-height: 1;
  }
  body.top .service .service__support-layout ul.service__data-list li.service__data-item p.service__data-text {
    margin-top: 2.56vw;
    font-size: 3.59vw;
    font-weight: 400;
  }
  body.top .service .service__support-layout p.service__support-text {
    margin-top: 5.13vw;
    padding: 3.85vw;
    font-size: 4.10vw;
    font-weight: 700;
    line-height: 1.7;
    border-radius: 2.05vw;
    background: #E4F6F5;
  }
  body.top .service ul.service__recommend-list {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 7.69vw;
    margin-top: 5.13vw;
    padding: 5.13vw 3.85vw;
    background: #E4F6F5;
    border-radius: 3.85vw;
  }
  body.top .service ul.service__recommend-list li.service__recommend-item + .service__recommend-item::before {
    content: "";
    position: absolute;
    left: 0;
    top: -3.85vw;
    bottom: 0;
    width: 100%;
    height: 0.77vw;
    background: #fff;
    border-radius: 100vmax;
  }
  body.top .service ul.service__recommend-list li.service__recommend-item {
    display: flex;
    align-items: center;
    gap: 2.56vw;
    position: relative;
  }
  body.top .service ul.service__recommend-list li.service__recommend-item figure.service__recommend-img {
    width: 12.05vw;
  }
  body.top .service ul.service__recommend-list li.service__recommend-item p.service__recommend-text {
    font-size: 4.10vw;
    font-weight: 700;
    color: #062A60;
  }
  body.top .service ul.service__flow-list {
    overflow: hidden;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 3.85vw 5.13vw;
    margin-top: 5.13vw;
    padding-top: 1.54vw;
  }
  body.top .service ul.service__flow-list li.service__flow-item {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
    aspect-ratio: 1/1;
    border: 0.51vw solid #C9DEF4;
    border-radius: 100vmax;
  }
  body.top .service ul.service__flow-list li.service__flow-item::after {
    content: "";
    display: block;
    position: absolute;
    top: calc(50% - 1.28vw);
    right: -4.62vw;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 1.54vw 0 1.54vw 2.56vw;
    border-color: transparent transparent transparent #00A99D;
  }
  body.top .service ul.service__flow-list li.service__flow-item p.service__flow-label {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: -2.05vw;
    left: calc(50% - 7.69vw);
    width: 15.38vw;
    height: 5.13vw;
    font-size: 3.08vw;
    font-family: Inter;
    font-weight: 700;
    color: #FFF;
    background: #00A99D;
    border-radius: 100vmax;
  }
  body.top .service ul.service__flow-list li.service__flow-item p.service__flow-num {
    text-align: center;
    font-family: Inter;
    font-size: 9.74vw;
    font-weight: 900;
    color: #0064C8;
    line-height: 0.9;
  }
  body.top .service ul.service__flow-list li.service__flow-item p.service__flow-title {
    text-align: center;
    font-size: 4.10vw;
    font-weight: 900;
    color: #20406A;
    white-space: nowrap;
  }
  body.top .service .service__comic {
    margin-top: 7.69vw;
    background: #FFF;
    border-radius: 3.85vw;
    box-shadow: 0 0 5.13vw 0 rgba(0, 100, 200, 0.15);
  }
  body.top .service .service__comic p.service__comic-title {
    padding: 2.31vw 4.10vw;
    text-align: center;
    font-size: 5.13vw;
    font-weight: 700;
    line-height: 1.3;
    color: #FFF;
    background: #062A60;
    border-radius: 3.85vw 3.85vw 0 0;
  }
  body.top .service .service__comic figure.service__comic-img {
    padding: 5.13vw 3.85vw;
  }
  body.top .service .service__comic figure.service__comic-img img {
    display: block;
    margin: 0 auto;
    border: 1px solid #E0E0E0;
  }
  body.top .service p.service__date {
    margin-top: 5.13vw;
    text-align: right;
    font-size: 3.59vw;
    font-weight: 400;
  }
  body.about {
    background: linear-gradient(180deg, #EDF9FF 0%, #F5FCFF 50%);
  }
  body.about .section {
    padding: 10.26vw 5.13vw;
  }
  body.about p.section__text {
    margin-top: 5.13vw;
  }
  body.about ul.overview__list {
    margin-top: 7.69vw;
    border-top: 1px solid #B8DFF5;
  }
  body.about ul.overview__list li {
    display: flex;
    padding: 3.85vw 0;
    border-bottom: 1px solid #B8DFF5;
  }
  body.about ul.overview__list li p.overview__label {
    width: 7em;
    font-size: 4.10vw;
    font-weight: 400;
    line-height: 2;
  }
  body.about ul.overview__list li p.overview__value {
    width: calc(100% - 7em);
    font-size: 4.10vw;
    font-weight: 400;
    line-height: 2;
  }
  body.about ul.guidance__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2.56vw;
    margin-top: 5.13vw;
    padding: 0 7.69vw;
  }
  body.about ul.guidance__list li.guidance__list-item {
    overflow: hidden;
    width: calc((100% - 7.69vw) / 3);
    background: #FFF;
    border-radius: 100vmax;
    filter: drop-shadow(0 0 5.13vw rgba(0, 100, 200, 0.15));
  }
  body.about ul.disc__list {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 1em;
    margin-top: 5.13vw;
    padding: 5.13vw 3.85vw;
    background: #FFF;
    border-radius: 3.85vw;
    box-shadow: 0 0 5.13vw 0 rgba(0, 100, 200, 0.15);
  }
  body.about figure.about__img {
    margin-top: 5.13vw;
    padding: 5.13vw 0;
    background: #FFF;
    border-radius: 3.85vw;
    box-shadow: 0 0 5.13vw 0 rgba(0, 100, 200, 0.15);
  }
  body.about figure.about__img img {
    display: table;
    margin-inline: auto;
  }
  body.about figure.about__img a {
    display: block;
    margin-top: 1em;
    text-align: right;
    font-size: 2.56vw;
    color: #0064C8;
  }
  body.privacypolicy {
    background: linear-gradient(180deg, #EDF9FF 0%, #F5FCFF 50%);
  }
  body.privacypolicy .section {
    padding: 10.26vw 5.13vw;
  }
  body.privacypolicy h2.section__title + p.section__text {
    margin-top: 10.26vw;
  }
  body.privacypolicy p.section__text + p.section__text {
    margin-top: 1em;
  }
  body.privacypolicy ul.disc__list {
    display: grid;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 1em;
    margin-top: 1.5em;
  }
  body.form {
    background: linear-gradient(180deg, #EDF9FF 0%, #F5FCFF 50%);
  }
  body.form .section {
    padding: 10.26vw 5.13vw 0;
  }
  body.form .section .section__inner {
    max-width: 179.49vw;
    margin-inline: auto;
  }
  body.form p.notice {
    margin-top: 5.13vw;
    text-align: center;
    font-size: 3.59vw;
    color: #cd1a00;
  }
  body.form dl.form + dl.form {
    margin-top: 5.13vw;
  }
  body.form dl.form {
    margin: 5.13vw auto 0;
  }
  body.form dl.form dt {
    display: flex;
    align-items: center;
    height: 5.13vw;
    font-size: 3.59vw;
    font-weight: 700;
    color: #062A60;
    line-height: 1;
  }
  body.form dl.form dt span.ic__required {
    color: #cd1a00;
  }
  body.form dl.form dd {
    box-sizing: border-box;
    width: 100%;
    margin-top: 2.56vw;
  }
  body.form dl.form dd input[type=text],
  body.form dl.form dd input[type=tel] {
    box-sizing: border-box;
    width: 100%;
    height: 12.82vw;
    padding: 2.56vw 3.85vw;
    font-size: 4.10vw;
    font-family: "Zen Kaku Gothic New", sans-serif;
    background: #fff;
    border: 1px solid #C9DEF4;
    border-radius: 2.05vw;
  }
  body.form dl.form dd textarea {
    box-sizing: border-box;
    width: 100%;
    padding: 2.56vw 3.85vw;
    font-size: 4.10vw;
    font-family: "Zen Kaku Gothic New", sans-serif;
    line-height: 1.7;
    background: #fff;
    border: 1px solid #C9DEF4;
    border-radius: 2.05vw;
  }
  body.form dl.form dd p.error {
    margin-top: 1.28vw;
    font-size: 3.08vw;
    color: #cd1a00;
  }
  body.form dl.form.confirm dt span.ic__required {
    display: none;
  }
  body.form dl.form.confirm dd {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 12.82vw;
    padding: 2.56vw 3.85vw;
    font-size: 4.10vw;
    background: #fff;
    border: 1px solid #C9DEF4;
    border-radius: 1.03vw;
  }
  body.form .btn__area {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3.85vw;
    margin: 7.69vw auto 0;
  }
  body.form .btn__area form {
    width: 100%;
  }
  body.form .btn__area button.btn__submit {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 14.36vw;
    padding: 5.13vw 10.26vw;
    font-size: 4.10vw;
    font-weight: 700;
    color: #FFF;
    line-height: 1;
    border-radius: 100vmax;
    background: linear-gradient(135deg, #00A99D 0%, #0064C8 100%);
    box-shadow: 0 0 2.56vw 0 rgba(0, 0, 0, 0.2);
  }
  body.form .btn__back {
    display: table;
    margin: 7.69vw auto 0;
  }
  body.form .btn__back a {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 14.36vw;
    padding: 5.13vw 10.26vw;
    text-decoration: none;
    font-size: 4.10vw;
    font-weight: 700;
    color: #FFF;
    line-height: 1;
    border-radius: 100vmax;
    background: linear-gradient(135deg, #00A99D 0%, #0064C8 100%);
    box-shadow: 0 0 2.56vw 0 rgba(0, 0, 0, 0.2);
  }
}/*# sourceMappingURL=style.css.map */