.top-page {
  /*! sanitize.css v4.1.0 | CC0 License | github.com/jonathantneal/sanitize.css */
  /* color */
  /* font-size */
  /* icon */ }
  .top-page article,
  .top-page aside,
  .top-page details,
  .top-page figcaption,
  .top-page figure,
  .top-page footer,
  .top-page header,
  .top-page main,
  .top-page menu,
  .top-page nav,
  .top-page section,
  .top-page summary {
    display: block; }
  .top-page audio,
  .top-page canvas,
  .top-page progress,
  .top-page video {
    display: inline-block; }
  .top-page audio:not([controls]) {
    display: none;
    height: 0; }
  .top-page template,
  .top-page [hidden] {
    display: none; }
  .top-page *,
  .top-page ::before,
  .top-page ::after {
    background-repeat: no-repeat;
    -webkit-box-sizing: inherit;
            box-sizing: inherit; }
  .top-page ::before,
  .top-page ::after {
    text-decoration: inherit;
    vertical-align: inherit; }
  .top-page html {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    cursor: default;
    font-family: sans-serif;
    line-height: 1.5;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%; }
  .top-page body {
    margin: 0; }
  .top-page h1 {
    font-size: 2em;
    margin: .67em 0; }
  .top-page code,
  .top-page kbd,
  .top-page pre,
  .top-page samp {
    font-family: monospace, monospace;
    font-size: 1em; }
  .top-page hr {
    height: 0;
    overflow: visible; }
  .top-page nav ol,
  .top-page nav ul {
    list-style: none; }
  .top-page abbr[title] {
    border-bottom: 1px dotted;
    text-decoration: none; }
  .top-page b,
  .top-page strong {
    font-weight: inherit; }
  .top-page b,
  .top-page strong {
    font-weight: bolder; }
  .top-page dfn {
    font-style: italic; }
  .top-page mark {
    background-color: #ff0;
    color: #000; }
  .top-page progress {
    vertical-align: baseline; }
  .top-page small {
    font-size: 83.3333%; }
  .top-page sub,
  .top-page sup {
    font-size: 83.3333%;
    line-height: 0;
    position: relative;
    vertical-align: baseline; }
  .top-page sub {
    bottom: -.25em; }
  .top-page sup {
    top: -.5em; }
  .top-page ::-moz-selection {
    background-color: #b3d4fc;
    color: #000;
    text-shadow: none; }
  .top-page ::selection {
    background-color: #b3d4fc;
    color: #000;
    text-shadow: none; }
  .top-page audio,
  .top-page canvas,
  .top-page iframe,
  .top-page img,
  .top-page svg,
  .top-page video {
    vertical-align: middle; }
  .top-page img {
    border-style: none; }
  .top-page svg {
    fill: currentColor; }
    .top-page svg:not(:root) {
      overflow: hidden; }
  .top-page a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects; }
    .top-page a:hover {
      outline-width: 0; }
  .top-page table {
    border-collapse: collapse;
    border-spacing: 0; }
  .top-page button,
  .top-page input,
  .top-page select,
  .top-page textarea {
    background-color: transparent;
    border-style: none;
    color: inherit;
    font-size: 1em;
    margin: 0; }
  .top-page button,
  .top-page input {
    overflow: visible; }
  .top-page button,
  .top-page select {
    text-transform: none; }
  .top-page button,
  .top-page html [type='button'],
  .top-page [type='reset'],
  .top-page [type='submit'] {
    -webkit-appearance: button; }
  .top-page ::-moz-focus-inner {
    border-style: none;
    padding: 0; }
  .top-page :-moz-focusring {
    outline: 1px dotted ButtonText; }
  .top-page fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: .35em .625em .75em; }
  .top-page legend {
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal; }
  .top-page textarea {
    overflow: auto;
    resize: vertical; }
  .top-page [type='checkbox'],
  .top-page [type='radio'] {
    padding: 0; }
  .top-page ::-webkit-inner-spin-button,
  .top-page ::-webkit-outer-spin-button {
    height: auto; }
  .top-page [type='search'] {
    -webkit-appearance: textfield;
    outline-offset: -2px; }
  .top-page ::-webkit-search-cancel-button,
  .top-page ::-webkit-search-decoration {
    -webkit-appearance: none; }
  .top-page ::-webkit-input-placeholder {
    color: inherit;
    opacity: .54; }
  .top-page ::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit; }
  .top-page [aria-busy='true'] {
    cursor: progress; }
  .top-page [aria-controls] {
    cursor: pointer; }
  .top-page [aria-disabled] {
    cursor: default; }
  .top-page a,
  .top-page area,
  .top-page button,
  .top-page input,
  .top-page label,
  .top-page select,
  .top-page textarea,
  .top-page [tabindex] {
    -ms-touch-action: manipulation;
    touch-action: manipulation; }
  .top-page [hidden][aria-hidden='false'] {
    clip: rect(0, 0, 0, 0);
    display: inherit;
    position: absolute; }
    .top-page [hidden][aria-hidden='false']:focus {
      clip: auto; }
  .top-page h1, .top-page h2, .top-page h3, .top-page h4, .top-page h5, .top-page h6 {
    margin: 0;
    font-weight: normal; }
  .top-page ul {
    margin: 0;
    padding: 0;
    list-style: none; }
  .top-page p {
    margin: 0; }
  .top-page a, .top-page a:visited {
    color: #222;
    text-decoration: none; }
  .top-page #app-sp {
    width: 100%;
    background: #f9f9f9;
    color: #222;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  .top-page .background--white {
    background-color: #fff; }
  .top-page .background--gray {
    background-color: #f7f6f5; }
  .top-page .top-button {
    position: fixed;
    right: 8px;
    bottom: 16px;
    z-index: 50;
    width: 50px;
    height: 50px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border: solid 2px #fff;
    border-radius: 50%;
    background-color: #bcb8b2; }
    .top-page .top-button:before {
      content: '';
      display: inline-block;
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      width: 9px;
      height: 9px;
      margin-top: -5px;
      border-top: 2px solid #bcb8b2;
      border-right: 2px solid #bcb8b2;
      -webkit-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
              transform: rotate(45deg);
      top: 54%;
      left: 50%;
      -webkit-transform: rotate(-45deg);
          -ms-transform: rotate(-45deg);
              transform: rotate(-45deg);
      width: 12px;
      height: 12px;
      margin-bottom: -6px;
      margin-left: -6px;
      border-top: 2px solid #fff;
      border-right: 2px solid #fff; }
  .top-page .section {
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    .top-page .section__title {
      display: block;
      line-height: 1.67;
      font-size: 18px;
      font-weight: bolder;
      text-align: center; }
      .top-page .section__title span {
        color: #bf0000;
        font-size: 22px; }
      .top-page .section__title--ribon {
        display: block;
        width: 100%;
        padding: 8px 0;
        background: #bcb8b2;
        color: #fff;
        font-weight: 200; }
    .top-page .section__description {
      line-height: 1.7;
      letter-spacing: 1.3px;
      font-size: 14px;
      font-weight: 300;
      text-align: center; }
    .top-page .section__tag {
      min-width: 110px;
      padding: 8px 16px;
      line-height: 1;
      border-radius: 3px;
      letter-spacing: 0.5px;
      color: #fff;
      font-size: 14px;
      font-weight: 200;
      text-align: center; }
      .top-page .section__tag--orange {
        background: #feb300; }
      .top-page .section__tag--crimson {
        background: #bf0000; }
      .top-page .section__tag--blue {
        background: #00289b; }
    .top-page .section__link {
      position: relative;
      display: block;
      width: 190px;
      margin: 0 auto;
      padding: 16px 0 16px 16px;
      line-height: 1;
      border-radius: 100px;
      border: solid 2px #dedad5;
      background: #fff;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      font-size: 14px;
      font-weight: 300;
      text-align: center; }
      .top-page .section__link:before {
        content: '';
        left: 46px;
        display: inline-block;
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%);
        width: 9px;
        height: 9px;
        margin-top: -5px;
        border-top: 2px solid #bcb8b2;
        border-right: 2px solid #bcb8b2;
        -webkit-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
                transform: rotate(45deg); }
      .top-page .section__link:active {
        background: #f4f2ee; }
    .top-page .section__note {
      margin-top: 48px;
      line-height: 1.5;
      font-size: 11px;
      text-align: center; }
    .top-page .section__image {
      text-align: center; }
      .top-page .section__image img {
        display: block;
        width: 100%;
        height: auto; }
    .top-page .section__firm-name {
      width: 100%;
      margin-top: 48px;
      line-height: 1.8;
      font-size: 11px;
      text-align: center; }
      .top-page .section__firm-name span {
        display: block; }
    .top-page .section__block {
      position: relative;
      padding: 32px 10px 48px; }
      .top-page .section__block .section__tag {
        position: absolute;
        top: -16px;
        left: 50%;
        -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
                transform: translateX(-50%); }
      .top-page .section__block .section__title {
        margin-bottom: 16px;
        line-height: 1.5;
        letter-spacing: 1.5px;
        font-size: 18px;
        font-weight: bolder; }
        .top-page .section__block .section__title small {
          font-size: 16px; }
        .top-page .section__block .section__title span {
          font-size: 24px; }
      .top-page .section__block .section__description {
        margin-bottom: 24px; }
      .top-page .section__block .section__link:before {
        width: 8px;
        height: 8px;
        margin-top: -4px; }
    .top-page .section--caption {
      padding: 40px 0; }
      .top-page .section--caption .section__title {
        margin-bottom: 8px;
        font-size: 20px; }
        .top-page .section--caption .section__title span {
          font-size: 20px;
          font-weight: bolder; }
    .top-page .section--increasing .section__image {
      margin-bottom: 24px; }
    .top-page .section--increasing .section__tag {
      position: relative;
      top: 0;
      width: 110px;
      margin-bottom: 32px; }
    .top-page .section--increasing .section__block .section__title {
      margin-bottom: 24px; }
    .top-page .section--using .section__image {
      padding: 24px 18% 48px; }
      .top-page .section--using .section__image + .section__block {
        padding: 40px 0 48px; }
        .top-page .section--using .section__image + .section__block .section__title {
          margin-bottom: 12px;
          line-height: 1.5; }
      .top-page .section--using .section__image .cashcard {
        padding-top: 16px; }
    .top-page .section--using .section__block {
      padding: 32px 0; }
      .top-page .section--using .section__block .section__title {
        margin-bottom: 8px; }
      .top-page .section--using .section__block--full-size {
        padding: 0; }
        .top-page .section--using .section__block--full-size .section__image {
          padding: 0; }
    .top-page .section--using .section__title {
      margin-bottom: 0; }
