@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Roboto+Condensed:wght@400;700&family=Roboto:wght@400;500;700&display=swap");
/* ========================================
 *  Font Family
 * ======================================== */
/* ========================================
 *  Font size
 * ======================================== */
/* ==============================
 *   Color
 *==============================*/
/* ========================================
 *  Setting
 * ======================================== */
body {
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
  color: #222222;
  letter-spacing: 0.05em;
  position: relative;
}

a {
  outline: none;
  text-decoration: none;
  color: #00519B;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
a:hover {
  opacity: 0.6;
}

ul, ol, li {
  list-style: none;
}

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

img {
  max-width: 100%;
  height: auto;
}

/* ========================================
 *  Btn
 * ======================================== */
.btn, .btn--white {
  display: inline-block;
  max-width: 380px;
  width: 100%;
  text-align: center;
  border-radius: 100px;
  padding: 10px 20px;
  position: relative;
  border: 3px solid #00519B;
  background: #00519B;
  color: #ffffff;
  font-weight: bold;
  font-size: 18px;
  font-size: 1.125rem;
}
.btn:hover, .btn--white:hover {
  color: #00519B;
  background: #ffffff;
  opacity: 1;
}
.btn::after, .btn--white::after {
  content: url("../img/arrow-white.svg");
  position: absolute;
  right: 5%;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.btn:hover::after, .btn--white:hover::after {
  content: url("../img/arrow-blue.svg");
}
.btn--white {
  border: 3px solid #00519B;
  background: #ffffff;
  color: #00519B;
  padding: 13px 0;
}
@media screen and (max-width: 768px) {
  .btn--white {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
.btn--white:hover {
  color: #ffffff;
  background: #00519B;
}
.btn--white::after {
  content: url("../img/arrow-blue.svg");
}
.btn--white:hover::after {
  content: url("../img/arrow-white.svg");
}
.btn .btn-marker, .btn--white .btn-marker {
  display: inline-block;
  background: #ffffff;
  color: #00519B;
  margin: 0 8px 0 0;
  padding: 2px 7px 5px 7px;
  border-radius: 3px;
}
@media screen and (max-width: 768px) {
  .btn, .btn--white {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}
.btn:hover .btn-marker, .btn--white:hover .btn-marker {
  background: #00519B;
  color: #ffffff;
}

/* ========================================
 *  Badge
 * ======================================== */
.badge {
  line-height: 1.6em;
  padding: 0 2em;
  color: #00519B;
  background-color: #ffffff;
  border: 2px solid currentColor;
  border-radius: 100px;
  display: inline-block;
}

/* ========================================
*  block
* ======================================== */
.main {
  padding: 80px 0 0;
  position: relative;
}
.main.pd-none {
  padding: 0 0 0;
}
@media screen and (max-width: 1080px) {
  .main {
    padding: 60px 0 0;
  }
}
@media screen and (max-width: 768px) {
  .main {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

.sec-inner {
  width: 1200px;
  max-width: 100%;
  margin: 0 auto;
  position: relative;
}
@media screen and (max-width: 1280px) {
  .sec-inner {
    width: 100%;
    padding: 0 30px;
  }
}
@media screen and (max-width: 768px) {
  .sec-inner {
    padding: 0 20px;
  }
}

.caution {
  font-size: 14px;
  font-size: 0.875rem;
}
@media screen and (max-width: 768px) {
  .caution {
    font-size: 12px;
    font-size: 0.75rem;
  }
}

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

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

.kome {
  vertical-align: text-top;
  font-size: 0.5em;
}

.txt-right {
  text-align: right;
}

.secondary-block {
  padding: 80px 0;
}
.secondary-block .sec-txt {
  line-height: 1.8;
  margin: 0 0 15px;
}
.secondary-block .sec-txt:last-child {
  margin: 0;
}
.secondary-block .indent {
  text-indent: 1em;
}
.secondary-block .sec-list--num {
  counter-reset: number 0;
}
.secondary-block .sec-list--num .list-item {
  line-height: 1.8;
  margin: 0 0 15px;
  padding-left: 1.5em;
  position: relative;
}
.secondary-block .sec-list--num .list-item::before {
  counter-increment: number 1;
  content: counter(number) ".";
  position: absolute;
  left: 0;
}
.secondary-block .sec-list--num .list-item:last-child {
  margin: 0;
}
.secondary-block .sub-list--num {
  counter-reset: number 0;
  margin: 15px 0 0;
}
.secondary-block .sub-list--num .sub-list-item {
  line-height: 1.8;
  margin: 0 0 10px;
  padding-left: 2em;
  position: relative;
}
.secondary-block .sub-list--num .sub-list-item::before {
  counter-increment: number 1;
  content: "(" counter(number) ")";
  position: absolute;
  left: 0;
}
.secondary-block .sub-list--num .sub-list-item:last-child {
  margin: 0;
}
.secondary-block .txt-block {
  margin: 0 0 60px;
}
@media screen and (max-width: 768px) {
  .secondary-block {
    padding: 40px 0 50px;
  }
  .secondary-block .txt-block {
    margin: 0 0 40px;
  }
}

/* ========================================
*  heading
* ======================================== */
.main-heading {
  padding: 60px 0;
  background: #F6FAFD;
}
.main-heading h1 {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  font-size: 32px;
  font-size: 2rem;
  line-height: 1.4;
  text-align: left;
}
@media screen and (max-width: 1280px) {
  .main-heading {
    padding: 60px 30px;
  }
}
@media screen and (max-width: 768px) {
  .main-heading {
    padding: 40px 20px;
  }
  .main-heading h1 {
    width: 100%;
    max-width: 100%;
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.sec-heading {
  font-size: 40px;
  font-size: 2.5rem;
  line-height: 1.6;
  text-align: center;
  position: relative;
  padding: 0 0 40px;
  margin: 0 0 60px;
}
.sec-heading::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 60px;
  height: 4px;
  background: #00519B;
}
@media screen and (max-width: 768px) {
  .sec-heading {
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1.4;
    padding: 0 0 30px;
    margin: 0 0 40px;
  }
  .sec-heading::after {
    content: "";
    width: 50px;
    height: 4px;
  }
}

.sec-heading-s {
  font-size: 22px;
  font-size: 1.375rem;
  font-weight: bold;
  line-height: 1.4;
  margin: 0 0 30px;
  padding: 0 0 0 1em;
  position: relative;
}
.sec-heading-s::before {
  content: "";
  width: 4px;
  height: 100%;
  background: #00519B;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .sec-heading-s {
    font-size: 18px;
    font-size: 1.125rem;
    margin: 0 0 20px;
  }
}

.sec-heading-ss {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
  line-height: 1.4;
  margin: 0 0 15px;
}

/* ========================================
 *  Header
 * ======================================== */
.header {
  background: #ffffff;
  width: 100%;
  -webkit-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.1019607843);
          box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.1019607843);
  position: relative;
  top: 0;
  left: 0;
  z-index: 5;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.header.header-fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  padding-top: 10px;
}
.header .header-inner {
  height: 80px;
  padding: 0 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.header .header-logo {
  width: 300px;
}
.header .header-nav-list {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 1079px) {
  .header .header-nav-list .nav-login {
    position: absolute;
    top: -30px;
    right: 0;
  }
}
.header .header-nav-list .nav-item {
  display: none;
  margin: 0 40px 0 0;
}
.header .header-nav-list .nav-item a {
  font-size: 15px;
  font-size: 0.9375rem;
  color: #222222;
  font-weight: bold;
}
.header .header-nav-list .nav-btn {
  margin: 0 15px 0 0;
}
.header .header-nav-list .nav-btn:last-child {
  margin: 0;
}
.header .header-nav-list .nav-btn .btn, .header .header-nav-list .nav-btn .btn--white {
  font-size: 15px;
  font-size: 0.9375rem;
  padding: 10px 40px;
}
.header .header-nav-list .nav-login a {
  font-weight: bold;
  display: inline-block;
  padding: 5px 40px;
  background: url(../img/icon_human.svg) center left/auto no-repeat;
}
@media screen and (min-width: 1079px) {
  .header .header-nav-list .nav-login a {
    font-size: 12px;
    color: black;
    display: block;
    font-weight: normal;
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDkuMC1jMDAwIDc5LjE3MWMyN2ZhYiwgMjAyMi8wOC8xNi0yMjozNTo0MSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDI0LjAgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjEzMzcwQjZFNzZENjExRUQ5MkNCQjdGOThDRDEwREIyIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjEzMzcwQjZGNzZENjExRUQ5MkNCQjdGOThDRDEwREIyIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MTMzNzBCNkM3NkQ2MTFFRDkyQ0JCN0Y5OENEMTBEQjIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MTMzNzBCNkQ3NkQ2MTFFRDkyQ0JCN0Y5OENEMTBEQjIiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6P5OmPAAAA3klEQVR42mJkQAVsZmZmE/j4+JIfPXrEBhKQk5P79enTp7mnTp0qAHJ/MWAB/mpqav8tLCxmAdkiSOIiIDGQHEgNhiY7O7u/aBrQgQhUDVwzG9Q0fJrgmqFq2ZiBfprMxcV14cmTJyuRFHgCsSoQ30HT+E1VVVVaSkrKjcHFxeUnFts8lZSU/kMNwLAVrAdqNTaAUzNIDxMhTwEDJAarBA6nGoBsc3d3P4jLqcwiIiJSsrKyrsDA2YxkS6+4uPj7nTt32qPrAsbphB8/fpwlOzooSgBkJTlGchM5QIABAIwRXmX/gGXrAAAAAElFTkSuQmCC) right no-repeat;
    padding: 5px 20px 7px 0;
  }
  .header .header-nav-list .nav-login a br {
    display: none;
  }
}
@media screen and (max-width: 1080px) {
  .header .header-inner {
    height: 60px;
    padding: 0 15px;
  }
  .header .header-logo {
    width: 200px;
  }
  .header .header-nav-list {
    display: block;
  }
  .header .header-nav-list .nav-item {
    display: list-item;
    margin: 0 0 30px;
  }
  .header .header-nav-list .nav-item a {
    font-size: 16px;
    font-size: 1rem;
  }
  .header .header-nav-list .nav-btn {
    margin: 0 0 20px;
  }
  .header .header-nav-list .nav-btn:last-child {
    margin: 0;
  }
  .header .header-nav-list .nav-btn .btn, .header .header-nav-list .nav-btn .btn--white {
    font-size: 16px;
    font-size: 1rem;
    padding: 15px 20px;
  }
  .header .header-nav-list .nav-login {
    padding-top: 30px;
    padding-bottom: 30px;
    border-left: none;
    border-top: 1px solid #C2C2C2;
  }
  .header .header-nav-list .nav-login a {
    padding-top: 0;
    padding-bottom: 0;
    position: relative;
    left: 20px;
    line-height: 1.7;
  }
  .header .sp-nav-btn {
    display: block;
    position: fixed;
    z-index: 3;
    right: 10px;
    top: 8px;
    width: 42px;
    height: 42px;
    cursor: pointer;
    text-align: center;
  }
  .header .sp-nav-btn span {
    display: block;
    position: absolute;
    width: 24px;
    height: 2px;
    left: 8px;
    background: #00519B;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
  }
  .header .sp-nav-btn span:nth-child(1) {
    top: 12px;
  }
  .header .sp-nav-btn span:nth-child(2) {
    top: 20px;
  }
  .header .sp-nav-btn span:nth-child(3) {
    top: 28px;
  }
  .header .sp-nav-btn.active span:nth-child(1) {
    top: 20px;
    left: 8px;
    background: #00519B;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .header .sp-nav-btn.active span:nth-child(2),
  .header .sp-nav-btn.active span:nth-child(3) {
    top: 20px;
    background: #00519B;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .header .header-nav {
    display: block;
    position: fixed;
    z-index: 10;
    top: 60px;
    left: 0;
    color: #fff;
    background: rgb(255, 255, 255);
    text-align: center;
    width: 100%;
    height: 100%;
    padding: 30px 30px;
    opacity: 0;
    visibility: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
    -webkit-perspective: 1000;
            perspective: 1000;
  }
  .header .header-nav.open {
    opacity: 1;
    visibility: visible;
  }
}

/* ========================================
 *  Top
 * ======================================== */
/* mv */
.mv {
  max-width: 1960px;
  overflow: hidden;
  position: relative;
  margin: auto;
  padding: 0 0 120px;
}
.mv::before {
  content: "";
  display: block;
  border-radius: 50%;
  background: #A0D2F0;
  width: 560px;
  height: 560px;
  position: absolute;
  top: -270px;
  left: -250px;
  z-index: -2;
}
.mv::after {
  content: "";
  display: block;
  border-radius: 50%;
  background: #D8EDF9;
  width: 1060px;
  height: 1060px;
  position: absolute;
  bottom: 0;
  right: -300px;
  z-index: -3;
}
.mv .mv-inner {
  width: 1300px;
  max-width: 100%;
  margin: 0 auto;
  position: relative;
  padding: 0 50px 0;
}
.mv .mv-main {
  margin: 70px 0 0;
  max-width: 600px;
  width: 100%;
  position: relative;
}
.mv .mv-main h1 {
  font-size: 38px;
  font-size: 2.375rem;
  line-height: 1.4;
  margin: 0 0 30px;
  white-space: nowrap;
}
.mv .mv-main h1 .copy-l {
  font-size: 60px;
  font-size: 3.75rem;
}
.mv .mv-main h1 .copy-m {
  font-size: 46px;
  font-size: 2.875rem;
  color: #00519B;
}
.mv .mv-main h1 .copy-kome {
  font-size: 14px;
  font-size: 0.875rem;
  vertical-align: text-top;
}
.mv .mv-main .mv-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.mv .mv-main .mv-btn .btn, .mv .mv-main .mv-btn .btn--white {
  max-width: 100%;
  width: 100%; /* ボタン1つの時 */
}
.mv .mv-main .mv-btn-bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 15px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 420px) {
  .mv .mv-main .mv-btn-bottom {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    gap: 8px 0;
  }
}
.mv .mv-main .mv-btn-bottom .btn, .mv .mv-main .mv-btn-bottom .btn--white {
  width: 49%;
  font-size: 16px;
  font-size: 1rem;
}
.mv .mv-main .mv-cap {
  font-size: 12px;
  font-size: 0.75rem;
  margin: 20px 0 0;
}
.mv .mv-img {
  position: absolute;
  top: 0;
  left: calc(100% + 175px);
  z-index: -1;
}
.mv .mv-img img {
  max-width: 775px;
}
.mv .mv-txt {
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.6;
  margin: 0 0 40px;
}
@media screen and (max-width: 1280px) {
  .mv::before {
    content: none;
  }
  .mv::after {
    width: 800px;
    height: 800px;
    right: -410px;
    top: -280px;
  }
}
@media screen and (max-width: 1080px) {
  .mv {
    padding: 0 0 40px;
  }
  .mv::after {
    width: 800px;
    height: 800px;
    right: -410px;
    top: -470px;
  }
  .mv::before {
    content: "";
    width: 320px;
    height: 320px;
    position: absolute;
    top: -30%;
    left: -50%;
    z-index: -1;
  }
  .mv .mv-inner {
    width: 80%;
    padding: 50px 50px 40px;
  }
  .mv .mv-main {
    margin: 0 auto 0;
    min-width: 100%;
    width: 100%;
  }
  .mv .mv-main h1 {
    text-align: center;
    white-space: inherit;
  }
  .mv .mv-main h1 .sp-only {
    display: block;
  }
  .mv .mv-main .mv-txt {
    text-align: center;
  }
  .mv .mv-main .mv-btn {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .mv .mv-main .mv-btn .btn, .mv .mv-main .mv-btn .btn--white {
    width: 100%;
    padding: 15px 20px;
    margin: 0 0 15px;
  }
  .mv .mv-main .mv-btn-bottom {
    width: 100%;
    margin-top: 15px;
  }
  .mv .mv-main .mv-btn-bottom .btn, .mv .mv-main .mv-btn-bottom .btn--white {
    width: 49%;
    font-size: 14px;
    font-size: 0.875rem;
  }
  .mv .mv-main .mv-btn-bottom .btn:last-child, .mv .mv-main .mv-btn-bottom .btn--white:last-child {
    margin: 0;
  }
}
@media screen and (max-width: 1080px) and (max-width: 420px) {
  .mv .mv-main .mv-btn-bottom .btn, .mv .mv-main .mv-btn-bottom .btn--white {
    width: 80%;
  }
}
@media screen and (max-width: 1080px) {
  .mv .mv-main .mv-cap {
    font-size: 12px;
    font-size: 0.75rem;
    margin: 20px 0 0;
  }
}
@media screen and (max-width: 1080px) {
  .mv .mv-img {
    width: 100%;
    margin: 0 auto 20px;
    position: static;
    top: auto;
    right: auto;
    z-index: 1;
  }
  .mv .mv-img img {
    max-width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .mv .mv-main h1 {
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 1.4;
    margin: 0 0 15px;
  }
  .mv .mv-main h1 .copy-l {
    font-size: 34px;
    font-size: 2.125rem;
  }
  .mv .mv-main h1 .copy-m {
    font-size: 26px;
    font-size: 1.625rem;
    color: #00519B;
  }
  .mv .mv-main h1 .copy-kome {
    font-size: 8px;
    font-size: 0.5rem;
    vertical-align: text-top;
  }
  .mv .mv-main .mv-txt {
    font-size: 14px;
    font-size: 0.875rem;
    margin: 0 0 15px;
  }
  .mv::after {
    content: "";
    width: 400px;
    height: 400px;
    position: absolute;
    top: 25%;
    right: -50%;
  }
  .mv .mv-inner {
    width: 100%;
    padding: 50px 25px 40px;
  }
}

.mv--simple {
  height: 280px;
  padding: 15px 30px;
  position: absolute;
  left: 0;
  right: 0;
  background-color: #E1F0F8;
}
@media screen and (max-width: 768px) {
  .mv--simple {
    height: 190px;
  }
}

.bread {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .bread {
    font-size: 13px;
  }
}
.bread__item:not(:first-child) {
  margin-left: 1em;
}
.bread__item:not(:first-child)::before {
  content: "＞";
  color: #91969E;
  margin-right: 1em;
}
.bread > *:first-child .bread__link {
  color: #91969E;
}

/* about */
.about {
  margin: 0 0 120px;
}
.about .read-txt {
  line-height: 1.8;
  text-align: center;
  margin: 0 0 60px;
}
.about .step-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.about .step-list .step-list-item {
  width: 20%;
  position: relative;
}
.about .step-list .step-list-item:last-child .step-img::after {
  content: none;
}
.about .step-list .step-img {
  background: #D8EDF9;
  border-radius: 50%;
  width: 100%;
  height: 0;
  padding-top: 100%;
  margin: 0 auto;
  position: relative;
}
.about .step-list .step-img::after {
  content: url(../img/arrow-blue-large.svg);
  position: absolute;
  right: -20%;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.about .step-list .step-img .step-heading {
  font-size: 30px;
  font-size: 1.875rem;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: bold;
  text-align: center;
  position: absolute;
  top: -0.5em;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
}
.about .step-list .step-img .step-heading span {
  font-size: 40px;
  font-size: 2.5rem;
  font-family: "Roboto", sans-serif;
  font-weight: bold;
  color: #00519B;
  display: inline-block;
  margin: 0 0 0 0.1em;
}
.about .step-list .step-img img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
          transform: translateY(-50%) translateX(-50%);
}
.about .step-list .step-txt {
  font-weight: bold;
  text-align: center;
  margin: 20px 0 0;
}
@media screen and (max-width: 1080px) {
  .about {
    margin: 0 0 50px;
  }
  .about .step-list .step-list-item {
    width: 23%;
    margin: 0 0 50px;
  }
  .about .step-list .step-img::after {
    content: none;
  }
  .about .step-list .step-img img {
    -webkit-transform: translateY(-50%) translateX(-50%) scale(0.8);
            transform: translateY(-50%) translateX(-50%) scale(0.8);
  }
  .about .pc-tab-only {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .about {
    margin: 0 0 90px;
  }
  .about .read-txt {
    text-align: left;
    margin: 0 0 60px;
  }
  .about .step-list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .about .step-list .step-list-item {
    width: 48%;
    margin: 0 0 80px;
  }
  .about .step-list .step-list-item:last-child {
    margin: 0 0 0;
  }
  .about .step-list .step-list-item:last-child .step-txt::after {
    content: none;
  }
  .about .step-list .step-img::after {
    content: none;
  }
  .about .step-list .step-img .step-heading {
    font-size: 26px;
    font-size: 1.625rem;
  }
  .about .step-list .step-img .step-heading span {
    font-size: 34px;
    font-size: 2.125rem;
  }
}
@media screen and (max-width: 480px) {
  .about {
    margin: 0 0 40px;
  }
  .about .step-list .step-list-item {
    margin: 0 0 30px;
  }
  .about .step-list .step-img .step-heading {
    font-size: 22px;
    font-size: 1.375rem;
  }
  .about .step-list .step-img .step-heading span {
    font-size: 32px;
    font-size: 2rem;
  }
  .about .step-list .step-img img {
    -webkit-transform: translateY(-50%) translateX(-50%) scale(0.6);
            transform: translateY(-50%) translateX(-50%) scale(0.6);
  }
  .about .step-txt {
    font-size: 14px;
    font-size: 0.875rem;
    margin: 15px 0 0;
  }
}

/* feature */
.feature {
  margin: -120px 0 0;
  padding: 120px 0 100px;
  /* table */
}
.feature .feature-wrap {
  border: 2px solid #00519B;
  border-radius: 16px;
  padding: 90px 80px 100px;
}
.feature .feature-heading {
  font-size: 40px;
  font-size: 2.5rem;
  vertical-align: center;
  color: #00519B;
  background: #ffffff;
  position: absolute;
  top: -0.7em;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background: #fff;
  padding: 0 30px;
  min-width: 11em;
}
.feature .feature-heading span .heading-txt {
  font-size: 30px;
}
.feature .feature-heading img {
  position: relative;
  width: 400px;
  margin-right: 10px;
  top: 6px;
}
@media screen and (max-width: 1200px) {
  .feature .feature-heading {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media screen and (max-width: 880px) {
  .feature .feature-heading {
    height: 50px;
  }
}
.feature .feature-block, .feature .feature-block--col1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 0 60px;
}
.feature .feature-block--col1 {
  display: block;
  width: 100%;
}
.feature .feature-detail, .feature .feature-block--col1 .feature-detail {
  width: 48%;
}
.feature .feature-detail .feature-detail-sub {
  background: #00519B;
  border-radius: 100px;
  min-width: 140px;
  display: inline-block;
  font-size: 18px;
  font-size: 1.125rem;
  font-family: "Roboto Condensed", sans-serif;
  color: #ffffff;
  font-weight: bold;
  line-height: 30px;
  text-align: center;
  margin: 0 0 20px;
}
.feature .feature-detail .sub-num {
  font-size: 26px;
  font-size: 1.625rem;
  font-family: "Roboto", sans-serif;
  display: inline-block;
  margin: 0 0 0 0.2em;
}
.feature .feature-detail .feature-detail-heading {
  font-size: 30px;
  font-size: 1.875rem;
  line-height: 1.4;
  margin: 0 0 30px;
}
.feature .feature-detail .feature-detail-txt {
  line-height: 1.8;
}
.feature .feature-block--col1 .feature-detail {
  width: 100%;
}
.feature .feature-img {
  width: 48%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.feature .feature-compare {
  margin: 60px 0 0;
}
.feature .feature-compare .caution {
  margin: 15px 0 0;
}
.feature .feature-block-sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-flow: row-reverse;
          flex-flow: row-reverse;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.feature .feature-block-sub .feature-sub-detail {
  width: 60%;
}
.feature .feature-block-sub .feature-sub-detail-img {
  width: 34%;
  max-width: 350px;
}
.feature .feature-block-sub .feature-sub-heading {
  font-size: 30px;
  font-size: 1.875rem;
  position: relative;
  padding: 0 0 30px;
  margin: 0 0 40px;
  font-size: 1.7rem;
}
.feature .feature-block-sub .feature-sub-heading::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 60px;
  height: 3px;
  background: #00519B;
}
.feature .feature-block-sub .feature-sub-txt {
  line-height: 1.8;
}
.feature .compare-table {
  width: 100%;
  border-collapse: separate;
}
.feature .compare-table thead th {
  font-size: 20px;
  font-size: 1.25rem;
  color: #ffffff;
  text-align: center;
  vertical-align: middle;
  background: #A7A7A7;
  border-top: 2px solid #C2C2C2;
  border-right: 2px solid #ffffff;
  padding: 15px 10px;
  width: 19.5%;
}
.feature .compare-table thead th:first-child {
  border-left: 2px solid #C2C2C2;
  border-right: none;
  border-radius: 16px 0 0 0;
  width: 22%;
}
.feature .compare-table thead th:last-child {
  border-right: 2px solid #C2C2C2;
  border-radius: 0 16px 0 0;
}
.feature .compare-table thead th.apollo {
  border-right: none;
  background: #00519B;
  position: relative;
}
.feature .compare-table thead th.apollo img {
  height: auto;
  width: 100px;
}
.feature .compare-table thead th.apollo::before {
  content: "";
  width: 100%;
  height: 20px;
  background: #00519B;
  border-radius: 16px 16px 0 0;
  position: absolute;
  top: -20px;
  left: 0;
}
.feature .compare-table thead th .balloon {
  position: absolute;
  top: -35px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: inline-block;
  padding: 2px 0 7px;
  line-height: 1.2;
  width: 80%;
  max-width: 100%;
  color: #222222;
  font-size: 15px;
  font-size: 0.9375rem;
  text-align: center;
  background: #F8DF00;
}
.feature .compare-table thead th .balloon::before {
  content: "";
  position: absolute;
  top: 90%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 0;
  height: 0;
  border: 10px solid transparent;
  border-top-color: #F8DF00;
}
.feature .compare-table thead th .balloon .kome {
  font-size: 11px;
  font-size: 0.6875rem;
  vertical-align: text-top;
}
.feature .compare-table tbody tr:nth-child(even) th,
.feature .compare-table tbody tr:nth-child(even) td {
  background: #F3F3F3;
}
.feature .compare-table tbody th {
  font-size: 16px;
  font-size: 1rem;
  padding: 15px 15px;
  text-align: center;
  vertical-align: middle;
  font-weight: bold;
  border-right: 2px solid #C2C2C2;
  border-left: 2px solid #C2C2C2;
}
.feature .compare-table tbody th:first-child {
  border-right: none;
}
.feature .compare-table tbody td {
  font-size: 20px;
  font-size: 1.25rem;
  padding: 15px 15px;
  text-align: center;
  vertical-align: middle;
  font-weight: bold;
  border-right: 2px solid #C2C2C2;
}
.feature .compare-table tbody td.apollo {
  color: #00519B;
  border-right: 3px solid #00519B;
  border-left: 3px solid #00519B;
}
.feature .compare-table tbody td.apollo.price {
  font-size: 18px;
  font-size: 1.125rem;
}
.feature .compare-table tbody td.apollo.price span {
  font-size: 34px;
  font-size: 2.125rem;
}
.feature .compare-table tbody td.price {
  font-size: 15px;
  font-size: 0.9375rem;
}
.feature .compare-table tbody td.price span {
  font-family: "Roboto", sans-serif;
  font-size: 20px;
  font-size: 1.25rem;
}
.feature .compare-table tbody tr:last-child th {
  border-bottom: 2px solid #C2C2C2;
  border-radius: 0 0 0 16px;
}
.feature .compare-table tbody tr:last-child td {
  border-bottom: 2px solid #C2C2C2;
}
.feature .compare-table tbody tr:last-child td:last-child {
  border-radius: 0 0 16px 0;
}
.feature .compare-table tbody tr:last-child td.apollo {
  border-bottom: 3px solid #00519B;
}
.feature .compare-table thead tr th.space,
.feature .compare-table tbody tr td.space {
  background: none;
  border: none;
  width: 0.2%;
}
@media screen and (max-width: 1080px) {
  .feature .feature-wrap {
    padding: 70px 40px 70px;
  }
  .feature .feature-detail, .feature .feature-block--col1 .feature-detail {
    width: 65%;
  }
  .feature .feature-img {
    width: 32%;
  }
  .feature .feature-block--col1 .feature-detail {
    width: 100% !important;
  }
}
@media screen and (max-width: 768px) {
  .feature {
    margin: -80px 0 0;
    padding: 80px 0 70px;
    /* table */
  }
  .feature .feature-wrap {
    padding: 70px 15px 50px;
  }
  .feature .feature-heading {
    font-size: 24px;
    font-size: 1.5rem;
    top: -0.75em;
    padding: 0 15px;
    width: 70%;
  }
  .feature .feature-heading span .heading-txt {
    font-size: 20px;
  }
  .feature .feature-block, .feature .feature-block--col1 {
    display: block;
    margin: 0 0 40px;
  }
  .feature .feature-detail, .feature .feature-block--col1 .feature-detail {
    width: 100%;
  }
  .feature .feature-detail .feature-detail-sub {
    min-width: 120px;
    font-size: 15px;
    font-size: 0.9375rem;
    line-height: 26px;
    margin: 0 0 20px;
  }
  .feature .feature-detail .sub-num {
    font-size: 18px;
    font-size: 1.125rem;
    font-family: "Roboto", sans-serif;
    display: inline-block;
    margin: 0 0 0 0.2em;
  }
  .feature .feature-detail .feature-detail-heading {
    font-size: 22px;
    font-size: 1.375rem;
    margin: 0 0 20px;
  }
  .feature .feature-detail .feature-detail-txt {
    line-height: 1.8;
    margin: 0 0 10px;
  }
  .feature .feature-img {
    margin: 0 auto;
    width: 100%;
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
  }
  .feature .feature-block-sub {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .feature .feature-block-sub .feature-sub-detail {
    margin: 0;
    width: 100%;
  }
  .feature .feature-block-sub .feature-sub-detail-img {
    width: 80%;
    max-width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .feature .feature-block-sub .feature-sub-heading {
    font-size: 20px;
    font-size: 1.25rem;
    padding: 0 0 20px;
    margin: 0 0 30px;
  }
  .feature .feature-block-sub .feature-sub-heading::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 40px;
    height: 3px;
    background: #00519B;
  }
  .feature .feature-block-sub .feature-sub-txt {
    line-height: 1.8;
    margin: 0 0 30px;
  }
  .feature .compare-table {
    width: 100%;
    border-collapse: separate;
  }
  .feature .compare-table thead th {
    font-size: 12px;
    font-size: 0.75rem;
    padding: 15px 10px;
    width: 21%;
  }
  .feature .compare-table thead th:first-child {
    border-radius: 12px 0 0 0;
    width: 16%;
  }
  .feature .compare-table thead th:last-child {
    border-radius: 0 12px 0 0;
  }
  .feature .compare-table thead th.apollo::before {
    content: "";
    width: 100%;
    height: 13px;
    background: #00519B;
    border-radius: 10px 10px 0 0;
    position: absolute;
    top: -13px;
    left: 0;
  }
  .feature .compare-table thead th .balloon {
    position: absolute;
    top: -30px;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    display: inline-block;
    padding: 5px 0 7px;
    line-height: 1.2;
    color: #222222;
    font-size: 10px;
    font-size: 0.625rem;
    text-align: center;
    background: #F8DF00;
  }
  .feature .compare-table thead th .balloon::before {
    content: "";
    position: absolute;
    top: 90%;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-top-color: #F8DF00;
  }
  .feature .compare-table thead th .balloon .kome {
    font-size: 10px;
    font-size: 0.625rem;
    vertical-align: text-top;
  }
  .feature .compare-table tbody th {
    font-size: 10px;
    font-size: 0.625rem;
    padding: 10px 3px;
  }
  .feature .compare-table tbody td {
    font-size: 14px;
    font-size: 0.875rem;
    padding: 10px 3px;
  }
  .feature .compare-table tbody td.apollo.price {
    font-size: 12px;
    font-size: 0.75rem;
  }
  .feature .compare-table tbody td.apollo.price span {
    font-size: 16px;
    font-size: 1rem;
  }
  .feature .compare-table tbody td.price {
    font-size: 12px;
    font-size: 0.75rem;
  }
  .feature .compare-table tbody td.price span {
    font-size: 14px;
    font-size: 0.875rem;
    display: block;
  }
  .feature .compare-table tbody tr:last-child th {
    border-radius: 0 0 0 12px;
  }
  .feature .compare-table tbody tr:last-child td:last-child {
    border-radius: 0 0 12px 0;
  }
  .feature .compare-table thead tr th.space,
  .feature .compare-table tbody tr td.space {
    width: 0.5%;
  }
}

/* plan */
.plan {
  padding: 100px 0 120px;
  background: #F6FAFD;
}
.plan .plan-detail-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.plan .plan-detail {
  width: 24%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  background: #ffffff;
  border-radius: 16px;
  position: relative;
}
.plan .plan-detail::after {
  content: "";
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 2px solid #C2C2C2;
  border-radius: 16px;
}
.plan .plan-detail dt {
  font-size: 20px;
  font-size: 1.25rem;
  color: #ffffff;
  text-align: center;
  font-weight: bold;
  padding: 20px 10px;
  position: relative;
  border-radius: 16px 16px 0 0;
}
.plan .plan-detail.free dt {
  background: #A7A7A7;
}
.plan .plan-detail.regular dt {
  background: #69B8E8;
}
.plan .plan-detail.business dt {
  background: #5597D4;
}
.plan .plan-detail.enterprise dt {
  background: #00519B;
}
.plan .plan-detail.regular::after {
  border: 3px solid #69B8E8;
}
.plan .plan-detail dd {
  min-height: 70px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 14px;
  font-size: 0.875rem;
  padding: 15px 15px;
}
.plan .plan-detail dd .item-heading {
  text-align: left;
}
.plan .plan-detail dd .item-txt {
  font-weight: bold;
  text-align: right;
}
.plan .plan-detail dd .mark {
  font-size: 20px;
  font-size: 1.25rem;
}
.plan .plan-detail dd:nth-child(odd) {
  background: #F3F3F3;
}
.plan .plan-detail dd:last-child {
  border-radius: 0 0 16px 16px;
  background: #ffffff;
}
.plan .plan-detail .price {
  display: inline;
  text-align: center;
  min-height: 96px;
}
.plan .plan-detail .price .monthly-txt {
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  margin: 0 0 5px;
}
.plan .plan-detail .price .price-txt {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
}
.plan .plan-detail .price .price-txt span {
  font-family: "Roboto", sans-serif;
  font-size: 34px;
  font-size: 2.125rem;
}
.plan .plan-detail.enterprise .price .price-txt {
  font-size: 22px;
  font-size: 1.375rem;
}
.plan .plan-detail .balloon {
  position: absolute;
  top: -25px;
  left: 50%;
  z-index: 1;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: inline-block;
  padding: 5px 0 7px;
  line-height: 1.2;
  min-width: 160px;
  max-width: 100%;
  color: #222222;
  font-size: 15px;
  font-size: 0.9375rem;
  text-align: center;
  background: #F8DF00;
}
.plan .plan-detail .balloon::before {
  content: "";
  position: absolute;
  top: 90%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 0;
  height: 0;
  border: 10px solid transparent;
  border-top-color: #F8DF00;
}
.plan .plan-detail .btn, .plan .plan-detail .btn--white {
  font-size: 15px;
  font-size: 0.9375rem;
  padding: 10px 20px;
  display: block;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.plan .caution {
  margin: 15px 0 0;
}
@media screen and (max-width: 1080px) {
  .plan .plan-detail-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .plan .plan-detail-list .plan-detail {
    width: 49%;
    margin: 0 0 50px;
  }
}
@media screen and (max-width: 768px) {
  .plan {
    padding: 60px 0 60px;
  }
  .plan .plan-detail-list .plan-detail {
    width: 100%;
    margin: 0 0 40px;
  }
  .plan .plan-detail-list .plan-detail:last-child {
    margin: 0;
  }
}

/* step */
.step {
  padding: 100px 0 160px;
}
.step .step-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.step .step-heading {
  font-size: 30px;
  font-size: 1.875rem;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: bold;
  text-align: center;
  margin: 0 0 15px;
}
.step .step-heading span {
  font-size: 40px;
  font-size: 2.5rem;
  font-family: "Roboto", sans-serif;
  font-weight: bold;
  color: #00519B;
  display: inline-block;
  margin: 0 0 0 0.1em;
}
.step .step-list-item {
  width: 21%;
  border: 2px solid #00519B;
  border-radius: 16px;
  padding: 20px 20px;
  position: relative;
}
.step .step-list-item:last-child::after {
  content: none;
}
.step .step-list-item::after {
  content: url(../img/arrow-blue-large.svg);
  position: absolute;
  right: -17%;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.step .step-list-item .btn, .step .step-list-item .btn--white {
  font-size: 15px;
  font-size: 0.9375rem;
  display: block;
  margin: 20px auto 0;
  padding: 10px 10px;
}
.step .step-txt {
  font-size: 15px;
  font-size: 0.9375rem;
}
@media screen and (max-width: 768px) {
  .step {
    padding: 60px 0 90px;
  }
  .step .step-list {
    display: block;
  }
  .step .step-heading {
    font-size: 22px;
    font-size: 1.375rem;
    margin: 0 0 10px;
  }
  .step .step-heading span {
    font-size: 32px;
    font-size: 2rem;
  }
  .step .step-list-item {
    width: 100%;
    padding: 20px 15px;
    margin: 0 0 40px;
  }
  .step .step-list-item:last-child {
    margin: 0;
  }
  .step .step-list-item::after {
    content: url(../img/arrow-blue-large.svg);
    position: absolute;
    width: 30px;
    top: auto;
    bottom: -30px;
    left: 50%;
    -webkit-transform: translateX(-50%) rotate(90deg);
            transform: translateX(-50%) rotate(90deg);
  }
  .step .step-txt {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

/* transactions */
@media screen and (max-width: 768px) {
  .transactions .sec-inner {
    padding: 0 10px;
  }
}
.transactions .transactions-wrap {
  background: #ffffff;
  border-radius: 16px;
  padding: 30px 60px 60px;
}
@media screen and (max-width: 768px) {
  .transactions .transactions-wrap {
    padding: 0px;
  }
}
.transactions th {
  padding: 20px 20px;
  text-align: right;
  border-right: solid 1px #ccc;
  border-bottom: solid 1px #ccc;
  font-weight: normal;
  width: 30%;
}
@media screen and (max-width: 768px) {
  .transactions th {
    border-right: none;
    font-weight: bold;
    padding: 20px 0 10px;
    display: block;
    width: 100%;
    word-wrap: break-word;
    text-align: left;
    font-weight: bold;
  }
}
.transactions tr:last-child th {
  border-bottom: none;
}
.transactions tr:last-child td {
  border-bottom: none;
}
.transactions td {
  padding: 20px 20px;
  border-bottom: solid 1px #ccc;
}
@media screen and (max-width: 768px) {
  .transactions td {
    padding: 10px 0px 20px 5px;
    display: block;
    width: 100%;
    word-wrap: break-word;
  }
}
@media screen and (max-width: 768px) {
  .transactions td a {
    word-break: break-all;
  }
}

/* function */
.function {
  padding: 100px 0 120px;
  background: #E1F0F8;
}
.function .function-wrap {
  background: #ffffff;
  border-radius: 16px;
  padding: 30px 60px 60px;
}
.function .function-list dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid #A7A7A7;
  padding: 30px 0;
}
.function .function-list dt {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
  width: 25%;
  min-width: 220px;
}
.function .function-list dt.signature, .function .function-list dt.simple {
  font-size: 20px;
  font-size: 1.25rem;
  position: relative;
  padding-left: 70px;
}
.function .function-list dt.signature::before, .function .function-list dt.simple::before {
  position: absolute;
  width: 60px;
  height: 100%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.function .function-list dt.signature::before {
  content: url(../img/function-icon01.svg);
}
.function .function-list dt.simple::before {
  content: url(../img/function-icon02.svg);
}
.function .function-list dd {
  width: 75%;
}
.function .function-list dd p {
  text-align: left;
  line-height: 1.6;
}
.function .function-list dd .list-ttl {
  font-weight: bold;
  margin: 20px 0;
  padding: 0 0 0 1em;
  position: relative;
  font-size: 16px;
  font-size: 1rem;
}
.function .function-list dd .list-ttl::before {
  content: "";
  width: 4px;
  height: 100%;
  background: #00519B;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.function .function-list dd .list-num {
  counter-reset: number 0;
}
.function .function-list dd .list-num li {
  font-size: 15px;
  font-size: 0.9375rem;
  font-weight: bold;
  margin-bottom: 10px;
  padding-left: 1.5em;
  position: relative;
}
.function .function-list dd .list-num li::before {
  counter-increment: number 1;
  content: counter(number) ".";
  position: absolute;
  left: 0;
}
.function .function-list dd .list-num li p {
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: normal;
  margin-top: 5px;
}
@media screen and (max-width: 768px) {
  .function {
    padding: 60px 0 60px;
  }
  .function .function-wrap {
    padding: 20px 20px 30px;
  }
  .function .function-list dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 30px 0;
  }
  .function .function-list dt {
    font-size: 16px;
    font-size: 1rem;
    width: 100%;
    min-width: 100%;
    margin: 0 0 15px;
  }
  .function .function-list dt.signature, .function .function-list dt.simple {
    font-size: 18px;
    font-size: 1.125rem;
    padding-left: 50px;
  }
  .function .function-list dt.signature::before, .function .function-list dt.simple::before {
    position: absolute;
    width: auto;
    height: auto;
    left: -10px;
    -webkit-transform: translateY(-25%) scale(0.7);
            transform: translateY(-25%) scale(0.7);
  }
  .function .function-list dd {
    width: 100%;
  }
  .function .function-list dd p {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

/* info */
.info {
  padding: 100px 0;
  background: #F6FAFD;
}
.info.--archive {
  padding: 60px 0 130px;
  background-color: #ffffff;
}
@media screen and (max-width: 768px) {
  .info.--archive {
    padding-top: 70px;
  }
}
@media screen and (max-width: 768px) {
  .info {
    padding: 60px 0 110px;
  }
}
.info-inner {
  grid-template-columns: 220px 1fr;
  grid-template-rows: auto auto 1fr;
  gap: 0 75px;
}
@media screen and (min-width: 769px) {
  .info-inner {
    display: grid;
  }
}
.info-inner > *:first-child {
  grid-column: 1/2;
  grid-row: 1/2;
}
.info-inner > *:nth-child(2) {
  grid-column: 2/3;
  grid-row: 1/4;
}
.info-inner > *:last-child {
  grid-column: 1/2;
  grid-row: 2/3;
}
.info-tab-menu {
  margin: 0 0 70px;
}
@media screen and (max-width: 768px) {
  .info-tab-menu {
    border: 2px solid #CECECE;
    border-radius: 10px;
    overflow: hidden;
    padding: 0;
  }
}
.info-tab-menu-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 50px 90px;
  background-color: #ffffff;
  border-radius: 10px;
}
@media screen and (max-width: 768px) {
  .info-tab-menu-list {
    border-radius: 0;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 0;
  }
}
.info-tab-menu-list > * {
  width: 100%;
}
@media screen and (max-width: 768px) {
  .info-tab-menu-list > * {
    border-top: 1px solid #CECECE;
  }
}
@media screen and (min-width: 768px) {
  .info-tab-menu-list > *:not(:first-child) {
    margin-left: 20px;
  }
}
@media screen and (max-width: 768px) {
  .info-tab-menu-list.sp-only {
    display: none;
  }
}
.info-tab-btn {
  display: block;
  text-align: center;
  padding: 15px 20px;
  position: relative;
  background: #ffffff;
  color: #818181;
  font-weight: bold;
  font-size: 16px;
  font-size: 1rem;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (min-width: 768px) {
  .info-tab-btn {
    border-radius: 100px;
    border: 3px solid #C2C2C2;
  }
}
@media screen and (max-width: 768px) {
  .info-tab-btn {
    padding: 10px 20px;
    color: #333;
  }
}
.info-tab-btn::after {
  content: url("../img/arrow-gray.svg");
  position: absolute;
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
}
@media screen and (max-width: 768px) {
  .info-tab-btn::after {
    content: none;
  }
}
@media screen and (min-width: 768px) {
  .info-tab-btn:hover {
    color: #ffffff;
    background: #C2C2C2;
    opacity: 1;
  }
}
.info-tab-btn:hover::after {
  content: url("../img/arrow-white.svg");
}
.info-tab-btn.active {
  color: #00519B;
}
@media screen and (min-width: 768px) {
  .info-tab-btn.active {
    border: 3px solid #00519B;
  }
  .info-tab-btn.active::after {
    content: url("../img/arrow-blue.svg");
  }
}
.info-tab-btn.active:hover {
  color: #00519B;
  background: #ffffff;
}
.info-tab-btn.active:hover::after {
  content: url("../img/arrow-blue.svg");
}
@media screen and (min-width: 768px) {
  .info-tab-btn.sp-only {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .info-tab-btn.sp-only::after {
    content: url("../img/arrow-blue.svg");
    -webkit-transform-origin: center center;
            transform-origin: center center;
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }
  .info-tab-menu.is-active .info-tab-btn.sp-only::after {
    -webkit-transform: translateY(-50%) rotate(-90deg);
            transform: translateY(-50%) rotate(-90deg);
  }
}
@media screen and (min-width: 769px) {
  .info-title {
    text-align: left;
  }
  .info-title::after {
    left: 0;
    -webkit-transform: none;
            transform: none;
  }
}
@media screen and (max-width: 768px) {
  .info-title {
    padding-bottom: 25px;
    margin-bottom: 55px;
  }
  .info.--archive .info-title {
    margin-bottom: 35px;
  }
}
.info-post {
  padding-bottom: 35px;
  border-bottom: 2px solid #C2C2C2;
}
@media screen and (max-width: 768px) {
  .info-post {
    padding-bottom: 40px;
  }
}
.info-post + .info-post {
  margin-top: 35px;
}
@media screen and (max-width: 768px) {
  .info-post + .info-post {
    margin-top: 40px;
  }
}
.info-post-title {
  font-size: 1.25em;
  line-height: 1.6;
  color: #00519B;
  margin-bottom: 0.6em;
}
.info-post.is-important .info-post-title {
  color: #EF3253;
}
.info-post-content {
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .info-post-content {
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  .info-post-list {
    margin-bottom: 50px;
  }
}
.info-post .badge {
  margin-left: 1.25em;
  margin-bottom: 1.5625em;
}
@media screen and (max-width: 768px) {
  .info-post .badge {
    font-size: 14px;
    margin-left: 0.6em;
    margin-bottom: 1.8571428571em;
  }
}
.info-post.is-important .badge {
  color: #EF3253;
}

/* qa */
.qa {
  padding: 100px 0 120px;
  background: #ffffff;
}
.qa .qa-list dl {
  background: #ffffff;
  padding: 30px 30px;
  border-radius: 16px;
  border: 2px solid #C2C2C2;
  margin-bottom: 20px;
}
.qa .qa-list dt {
  font-weight: bold;
  font-size: 20px;
  font-size: 1.25rem;
  position: relative;
  padding: 0 60px 0 60px;
  display: block;
  width: 100%;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.qa .qa-list dt::before {
  content: url(../img/qa-icon-q.svg);
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.qa .qa-list dt::after {
  content: url(../img/arrow-qa.svg);
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.qa .qa-list dt.open::after {
  content: url(../img/arrow-qa.svg);
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: rotate(-180deg) translateY(50%);
          transform: rotate(-180deg) translateY(50%);
}
.qa .qa-list dt:hover {
  opacity: 0.6;
}
.qa .qa-list dd {
  display: none;
  position: relative;
  padding: 5px 50px 10px 60px;
  margin-top: 30px;
}
.qa .qa-list dd::before {
  content: url(../img/qa-icon-a.svg);
  position: absolute;
  left: 0;
  top: 20px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.qa .qa-list dd p {
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.6;
  margin-bottom: 15px;
}
.qa .qa-list dd p:last-child {
  margin-bottom: 0;
}
.qa .qa-tab-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 0 50px;
}
.qa .qa-tab-menu .qa-tab-btn {
  display: block;
  width: 22%;
  margin: 0 0.5%;
  text-align: center;
  border-radius: 100px;
  padding: 15px 20px;
  position: relative;
  border: 3px solid #C2C2C2;
  background: #ffffff;
  color: #818181;
  font-weight: bold;
  font-size: 16px;
  font-size: 1rem;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.qa .qa-tab-menu .qa-tab-btn::after {
  content: url("../img/arrow-gray.svg");
  position: absolute;
  right: 5%;
  top: 25%;
  -webkit-transform: rotate(90deg) translateY(25%);
          transform: rotate(90deg) translateY(25%);
}
.qa .qa-tab-menu .qa-tab-btn:hover {
  color: #ffffff;
  background: #C2C2C2;
  opacity: 1;
}
.qa .qa-tab-menu .qa-tab-btn:hover::after {
  content: url("../img/arrow-white.svg");
}
.qa .qa-tab-menu .qa-tab-btn.active {
  border: 3px solid #00519B;
  color: #00519B;
}
.qa .qa-tab-menu .qa-tab-btn.active::after {
  content: url("../img/arrow-blue.svg");
}
.qa .qa-tab-menu .qa-tab-btn.active:hover {
  color: #00519B;
  background: #ffffff;
}
.qa .qa-tab-menu .qa-tab-btn.active:hover::after {
  content: url("../img/arrow-blue.svg");
}
.qa .qa-tab-detail {
  display: none;
}
.qa .qa-tab-detail.active {
  display: block;
}
@media screen and (max-width: 768px) {
  .qa {
    padding: 60px 0 60px;
  }
  .qa .qa-list dl {
    padding: 20px 20px;
    margin-bottom: 20px;
  }
  .qa .qa-list dt {
    font-size: 16px;
    font-size: 1rem;
    padding: 0 30px 0 40px;
  }
  .qa .qa-list dt::before {
    content: url(../img/qa-icon-q.svg);
    position: absolute;
    left: -10px;
    top: 50%;
    -webkit-transform: translateY(-50%) scale(0.8);
            transform: translateY(-50%) scale(0.8);
  }
  .qa .qa-list dt::after {
    content: url(../img/arrow-qa.svg);
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-35%) scale(0.8);
            transform: translateY(-35%) scale(0.8);
    -webkit-transition: 0.4s;
    transition: 0.4s;
  }
  .qa .qa-list dt.open::after {
    content: url(../img/arrow-qa.svg);
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: rotate(180deg) translateY(55%) scale(0.8);
            transform: rotate(180deg) translateY(55%) scale(0.8);
  }
  .qa .qa-list dd {
    padding: 5px 10px 10px 40px;
    margin-top: 20px;
  }
  .qa .qa-list dd::before {
    content: url(../img/qa-icon-a.svg);
    position: absolute;
    left: -10px;
    top: 20px;
    -webkit-transform: translateY(-50%) scale(0.8);
            transform: translateY(-50%) scale(0.8);
  }
  .qa .qa-list dd p {
    font-size: 14px;
    font-size: 0.875rem;
    margin-bottom: 15px;
  }
  .qa .qa-tab-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0 0 20px;
  }
  .qa .qa-tab-menu .qa-tab-btn {
    display: block;
    width: 49%;
    margin: 0 0 15px;
    padding: 10px 20px;
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

/* ========================================
 *  フォーム関連
 * ======================================== */
.contact .form-block dl,
.download .form-block dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 25px 0;
  border-bottom: 1px dotted #C2C2C2;
}
.contact .form-block dl dt,
.download .form-block dl dt {
  width: 32%;
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  text-align: left;
}
.contact .form-block dl dd,
.download .form-block dl dd {
  width: 65%;
  font-size: 16px;
  font-size: 1rem;
}
.contact .form-block dl input[type=text], .contact .form-block dl input[type=email], .contact .form-block dl textarea,
.download .form-block dl input[type=text],
.download .form-block dl input[type=email],
.download .form-block dl textarea {
  width: 100%;
  max-width: 100%;
  border: 2px solid #C2C2C2;
  padding: 15px 15px;
  border-radius: 12px;
}
.contact .form-block dl .form-item-name,
.download .form-block dl .form-item-name {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.contact .form-block dl .form-item-name > :first-child,
.download .form-block dl .form-item-name > :first-child {
  margin: 0 15px 0 0;
}
.contact .form-block dl .mwform-tel-field,
.download .form-block dl .mwform-tel-field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.contact .form-block dl .mwform-tel-field input,
.download .form-block dl .mwform-tel-field input {
  width: 25%;
  margin: 0 10px 0 10px;
}
.contact .form-block dl .mwform-tel-field input:first-child,
.download .form-block dl .mwform-tel-field input:first-child {
  margin: 0 10px 0 0;
}
.contact .form-block dl .mwform-tel-field input:last-child,
.download .form-block dl .mwform-tel-field input:last-child {
  margin: 0 0 0 10px;
}
.contact .form-block dl .form-required,
.download .form-block dl .form-required {
  display: inline-block;
  vertical-align: bottom;
  margin: 0 0 0 10px;
  padding: 5px 8px;
  border-radius: 6px;
  background: #00519B;
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1;
  color: #ffffff;
}
.contact .form-block dl .form-error,
.download .form-block dl .form-error {
  display: block;
  margin: 10px 0 0;
  font-size: 15px;
  font-size: 0.9375rem;
}
.contact .form-block dl .error,
.download .form-block dl .error {
  color: #db0000;
  font-size: 15px;
  font-size: 0.9375rem;
}
.contact .form-block dl .error::before,
.download .form-block dl .error::before {
  content: "※";
}
.contact .form-btn-block,
.download .form-btn-block {
  display: block;
  margin: 60px auto;
}
.contact .form-btn-block input,
.download .form-btn-block input {
  display: block;
  margin: 40px auto 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.contact .form-btn-block input.btn:disabled, .contact .form-btn-block input.btn--white:disabled,
.download .form-btn-block input.btn:disabled,
.download .form-btn-block input.btn--white:disabled {
  opacity: 0.4;
  cursor: default;
}
.contact .form-btn-block input.btn:disabled:hover, .contact .form-btn-block input.btn--white:disabled:hover,
.download .form-btn-block input.btn:disabled:hover,
.download .form-btn-block input.btn--white:disabled:hover {
  background: #00519B;
  color: #ffffff;
  cursor: default;
}
.contact .form-btn-block input.btn:disabled:hover ::after, .contact .form-btn-block input.btn--white:disabled:hover ::after,
.download .form-btn-block input.btn:disabled:hover ::after,
.download .form-btn-block input.btn--white:disabled:hover ::after {
  content: url("../img/arrow-white.svg");
}
.contact .mw_wp_form_confirm .form-btn,
.download .mw_wp_form_confirm .form-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.contact .mw_wp_form_confirm .form-btn input:first-child,
.download .mw_wp_form_confirm .form-btn input:first-child {
  margin: 0 15px 0 0;
}
.contact .mw_wp_form_confirm .form-btn input:last-child,
.download .mw_wp_form_confirm .form-btn input:last-child {
  margin: 0;
}
@media screen and (max-width: 768px) {
  .contact .form-block dl,
  .download .form-block dl {
    display: block;
    padding: 25px 0;
    border-bottom: 1px dotted #C2C2C2;
  }
  .contact .form-block dl dt,
  .download .form-block dl dt {
    width: 100%;
    font-size: 16px;
    font-size: 1rem;
    margin: 0 0 15px;
  }
  .contact .form-block dl dd,
  .download .form-block dl dd {
    width: 100%;
    font-size: 15px;
    font-size: 0.9375rem;
  }
  .contact .form-block dl .form-item-name,
  .download .form-block dl .form-item-name {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .contact .form-block dl .form-item-name > :first-child,
  .download .form-block dl .form-item-name > :first-child {
    margin: 0 15px 0 0;
  }
  .contact .form-block dl input[type=text], .contact .form-block dl input[type=email], .contact .form-block dl textarea,
  .download .form-block dl input[type=text],
  .download .form-block dl input[type=email],
  .download .form-block dl textarea {
    width: 100%;
    max-width: 100%;
    border: 2px solid #C2C2C2;
    padding: 15px 15px;
    border-radius: 12px;
  }
  .contact .form-block dl .form-error,
  .download .form-block dl .form-error {
    display: block;
    margin: 10px 0 0;
    font-size: 14px;
    font-size: 0.875rem;
  }
  .contact .form-block dl .error,
  .download .form-block dl .error {
    color: #db0000;
    font-size: 14px;
    font-size: 0.875rem;
  }
  .contact .form-block dl .error::before,
  .download .form-block dl .error::before {
    content: "※";
  }
  .contact .form-btn-block,
  .download .form-btn-block {
    display: block;
    margin: 60px auto;
  }
  .contact .form-btn-block input,
  .download .form-btn-block input {
    display: block;
    margin: 40px auto 0;
  }
  .contact .mw_wp_form_confirm .form-btn,
  .download .mw_wp_form_confirm .form-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .contact .mw_wp_form_confirm .form-btn input:first-child,
  .download .mw_wp_form_confirm .form-btn input:first-child {
    margin: 0 15px 0 0;
  }
  .contact .mw_wp_form_confirm .form-btn input:last-child,
  .download .mw_wp_form_confirm .form-btn input:last-child {
    margin: 0;
  }
}

/* ========================================
 *  cta
 * ======================================== */
.cta {
  background: url(../img/bg-cta.png) #80C9F5 no-repeat center 8%/1060px;
  padding: 60px 0;
}
.cta .cta-block {
  border: 3px solid #ffffff;
  padding: 50px 50px;
}
.cta .cta-txt {
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
  margin: 0 0 30px;
}
.cta .cta-txt span {
  color: #00519B;
}
.cta .cta-btn {
  /*  ボタン1つの時 */
  min-width: 450px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 10px;
}
.cta .cta-btn .cta-btn-bottom {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 15px;
}
.cta .cta-btn .cta-btn-bottom .btn, .cta .cta-btn .cta-btn-bottom .btn--white {
  width: 49%;
  font-size: 16px;
  font-size: 1rem;
}
@media screen and (max-width: 768px) {
  .cta {
    background: url(../img/bg-cta.png) #80C9F5 no-repeat center -110%/150vw;
    padding: 20px 0;
  }
  .cta .cta-block {
    border: 3px solid #ffffff;
    padding: 40px 25px 30px;
  }
  .cta .cta-txt {
    font-size: 20px;
    font-size: 1.25rem;
    margin: 0 0 30px;
  }
  .cta .cta-btn {
    width: 100%;
    min-width: 100%;
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 420px) {
  .cta .cta-btn {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    gap: 8px 0;
  }
}
@media screen and (max-width: 768px) {
  .cta .cta-btn .btn, .cta .cta-btn .btn--white {
    margin-bottom: 8px;
  }
  .cta .cta-btn .btn--white {
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .cta .cta-btn .cta-btn-top {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .cta .cta-btn .cta-btn-top .btn, .cta .cta-btn .cta-btn-top .btn--white {
    width: 100%;
    max-width: 100%;
    margin: 0 0 15px;
  }
}
@media screen and (max-width: 768px) {
  .cta .cta-btn .cta-btn-bottom {
    width: 100%;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 0;
  }
  .cta .cta-btn .cta-btn-bottom .btn, .cta .cta-btn .cta-btn-bottom .btn--white {
    width: 100%;
    max-width: 100%;
    font-size: 15px;
    font-size: 0.9375rem;
    margin-bottom: 15px;
  }
}

/* ========================================
 *  Footer
 * ======================================== */
.footer {
  padding: 70px 0;
  position: relative;
}
.footer .footer-logo {
  margin: 0 0 50px;
  width: 300px;
}
.footer .footer-nav {
  margin: 0 0 50px;
}
.footer .footer-nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.footer .footer-nav-list .nav-item {
  margin: 0 40px 0 0;
}
.footer .footer-nav-list .nav-item a {
  font-size: 15px;
  font-size: 0.9375rem;
  color: #222222;
  font-weight: bold;
}
.footer .footer-sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.footer .footer-sub-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.footer .footer-sub-list .sub-item {
  margin: 0 40px 0 0;
}
.footer .footer-sub-list .sub-item a {
  font-size: 14px;
  font-size: 0.875rem;
  color: #222222;
}
.footer .footer-copy {
  margin-left: auto;
  font-size: 12px;
  font-size: 0.75rem;
}
@media screen and (max-width: 768px) {
  .footer {
    padding: 40px 0 30px;
  }
  .footer .footer-logo {
    margin: 0 0 40px;
  }
  .footer .footer-nav {
    margin: 0 0 40px;
  }
  .footer .footer-nav-list {
    display: block;
  }
  .footer .footer-nav-list .nav-item {
    margin: 0 0 20px 0;
  }
  .footer .footer-nav-list .nav-item a {
    font-size: 15px;
    font-size: 0.9375rem;
    color: #222222;
    font-weight: bold;
  }
  .footer .footer-sub {
    display: block;
  }
  .footer .footer-sub-list {
    display: block;
    margin: 0 0 50px;
  }
  .footer .footer-sub-list .sub-item {
    margin: 0 0 20px 0;
  }
  .footer .footer-sub-list .sub-item a {
    font-size: 13px;
    font-size: 0.8125rem;
  }
  .footer .footer-copy {
    margin-left: 0;
    font-size: 10px;
    font-size: 0.625rem;
    text-align: center;
  }
}

.pagetop {
  position: fixed;
  right: 30px;
  bottom: 60px;
  z-index: 10;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  opacity: 0;
  visibility: hidden;
}
.pagetop.active {
  opacity: 1;
  visibility: visible;
}
@media screen and (max-width: 768px) {
  .pagetop {
    position: fixed;
    right: 15px;
    bottom: 40px;
    width: 60px;
  }
}

.c-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 500;
  margin-top: 70px;
}
@media screen and (max-width: 768px) {
  .c-pagination {
    margin-top: 50px;
  }
}
.c-pagination > *:not(:first-child) {
  margin-left: 10px;
}
.c-pagination__item {
  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;
  font-size: 21px;
  width: 50px;
  height: 50px;
  line-height: 1;
  text-align: center;
  border-radius: 10px;
  border: 3px solid #C2C2C2;
  color: #C2C2C2;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (max-width: 768px) {
  .c-pagination__item {
    font-size: 14px;
    width: 42px;
    height: 42px;
  }
}
.c-pagination__item:hover {
  opacity: 0.6;
}
.c-pagination__item.m-current {
  pointer-events: none;
  color: #ffffff;
  background-color: #00519B;
  border-color: #00519B;
}
.c-pagination__item.m-prev, .c-pagination__item.m-next {
  border: none;
}
.c-pagination__item.m-prev::after, .c-pagination__item.m-next::after {
  content: url(../img/arrow.svg);
}
.c-pagination__item.m-prev {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.mail-img {
  max-width: 25%;
}
@media screen and (max-width: 768px) {
  .mail-img {
    max-width: 50%;
  }
}

/* ========================================
 *  download
 * ======================================== */
.download-thanks-text {
  text-align: center;
}
@media screen and (max-width: 768px) {
  .download-thanks-text {
    text-align: left;
  }
}
.download-thanks-img {
  width: 32%;
  display: block;
  margin: auto;
  border-radius: 8px;
}
@media screen and (max-width: 768px) {
  .download-thanks-img {
    width: 90%;
  }
}
.download-thanks-btn {
  display: block;
  margin: 20px auto 0;
}/*# sourceMappingURL=style.css.map */