/* ===========================================================
finance
============================================================= */

img {
  width: initial;
}

main {
  margin-bottom: 100px;
}

section {
  padding: 0;
}

#otoku h1 {
  margin-bottom: 40px;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.5;
  color: #333;
  text-align: center;
}

#otoku #a01 h2 {
  margin-bottom: 7px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
  color: #333;
  text-align: center;
}

.clear {
  clear: both;
}

.sp {
  display: none;
}

.pcVisible {
  display: block;
}

.spVisible {
  display: none;
}

@media all and (max-width: 767px) {
  .sp {
    display: block;
  }

  .pcVisible {
    display: none;
  }

  .spVisible {
    display: block;
  }
}

@media all and (min-width: 768px) {
  #otoku .catchBunner,
  #otoku .functionA {
    margin: 0 0 2rem;
  }

  #otoku .catchBunner,
  #otoku .functionA,
  #otoku .functionB,
  #otoku .functionC {
    box-sizing: border-box;
    overflow: hidden;
  }

  #otoku h3 {
    display: block;
    line-height: 230%;
    color: #004098;
  }

  #otoku .cpnImage,
  #otoku .cpnFlow {
    display: flex;
    margin: 40px 0 0;
  }

  #otoku .cpnImage li,
  #otoku .cpnFlow li,
  #otoku .cpnPartner li {
    position: relative;
  }

  #otoku .cpnImage li,
  #otoku .cpnFlow li {
    margin-right: 10px;
  }

  #otoku .cpnImage,
  #otoku .cpnFlow {
    justify-content: left;
  }

  #otoku .cpnImage .plusIcon,
  #otoku .cpnFlow .flowIcon {
    position: absolute;
  }

  #otoku .cpnImage .plusIcon {
    top: 0;
    right: -30px;
    bottom: 0;
    z-index: 2;
    width: 50px;
    margin: auto;
  }

  #otoku .cpnFlow .flowIcon {
    top: 35%;
    right: -25px;
    z-index: 2;
  }

  #otoku .mainTitle {
    margin-bottom: 20px;
    font-size: 1.5rem;
    font-weight: 700;
  }

  #otoku .mainTitle .pcNum {
    margin: 0 1rem 0 0;
    font-size: 3.5rem;
  }

  #otoku .spNum {
    display: none;
  }

  #otoku .mainTitle .yellow-Underline {
    border-bottom: #ff0 5px solid;
  }

  #otoku .cpnPartner li {
    width: calc((100% - 30px) / 4);
    margin: 0 10px 10px 0;
    background: #fff;
    border: #203d95 2px solid;
    border-radius: 5px;
    box-shadow: 0 0 3px rgb(0 0 0 / 30%);
  }

  #otoku .cpnPartner li a {
    box-sizing: border-box;
    display: block;
    padding: 15px;
  }

  #otoku .cpnPartner li a:hover {
    text-decoration: none;
    opacity: 0.8;
  }

  #otoku .cpnPartner li:nth-child(4n) {
    margin: 0 0 10px;
  }

  #otoku .cpnPartner li .linkText {
    display: block;
    font-weight: bold;
    text-align: right;
  }

  #otoku .cpnPartner li h4 {
    margin: 0 0 0.5rem;
    font-weight: bold;
    color: #004098;
    text-align: center;
  }

  #otoku .subTitle {
    padding-left: 20px;
    font-size: 1.4rem;
    background-position: 0 50%;
    background-size: 12px;
  }

  #otoku .cpnLimited li {
    margin: 0 0 1rem;
  }

  #otoku .explainText {
    margin: 40px 0 0;
    font-size: 1.2rem;
    font-weight: bold;
  }

  #otoku .cpnPartner {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    -ms-flex-pack: start;
    margin: 20px 0 0;
  }

  #otoku .cpnPartner li .partnerLogo {
    margin: 0 0 0.5rem;
    text-align: center;
  }

  #otoku .tmoneyCam h2 {
    margin-bottom: 0;
  }
}

@media all and (max-width: 767px) {
  #otoku .cpnPartner li {
    width: calc((100% - 10px) / 2);
    margin: 0 10px 10px 0;
  }

  #otoku .cpnPartner li:nth-child(even) {
    margin-right: 0;
  }
}

@media all and (max-width: 767px) {
  #otoku .catchBunner,
  #otoku .functionA {
    padding: 0 0 2rem;
  }

  #otoku .catchBunner img,
  #otoku .cpnImage .spPointImg,
  #otoku .cpnFlow .spPointImg,
  #otoku .cpnLimited .partnerLogo {
    width: 100%;
  }

  #otoku .cpnImage,
  #otoku .cpnFlow {
    margin: 1rem 0;
  }

  #otoku .catchBunner,
  #otoku .functionA,
  #otoku .functionB,
  #otoku .functionC {
    box-sizing: border-box;
    overflow: hidden;
  }

  #otoku .spTitles {
    display: flex;
    display: flex;
    align-items: center;
    margin: 0 15px;
  }

  #otoku h3 {
    display: block;
    color: #004098;
  }

  #otoku .mainTitle {
    text-align: left;
  }

  #otoku .mainTitle .pcNum {
    display: none;
  }

  #otoku .mainTitle .maintxt {
    display: block;
    line-height: 1;
  }

  #otoku .mainTitle span {
    font-size: 1.3rem;
  }

  #otoku .spNum {
    margin: 0 1rem 0 0;
    font-size: 3.3rem;
  }

  #otoku .cpnImage li,
  #otoku .cpnFlow li,
  #otoku .cpnPartner li {
    position: relative;
    margin: 0 10px 10px;
  }

  #otoku .cpnImage .plusIcon,
  #otoku .cpnFlow .flowIcon {
    position: absolute;
  }

  #otoku .cpnImage .plusIcon {
    right: 0;
    bottom: -5.6%;
    left: 0;
    z-index: 2;
    width: 9%;
    height: auto;
    margin: auto;
  }

  #otoku .cpnFlow .flowIcon {
    right: 0;
    bottom: -16%;
    left: 0;
    z-index: 2;
    width: 13%;
    height: auto;
    margin: auto;
  }

  #otoku .mainTitle {
    font-size: 1.5rem;
    font-weight: 700;
  }

  #otoku .mainTitle .num {
    margin: 0 1rem 0 0;
    font-size: 3.5rem;
  }

  #otoku .mainTitle .yellow-Underline {
    border-bottom: #ff0 5px solid;
  }

  #otoku .cpnPartner li {
    width: 49%;
    margin: 0 0 10px;
    background: #fff;
    border: #203d95 2px solid;
    border-radius: 5px;
    box-shadow: 0 0 3px rgb(0 0 0 / 30%);
  }

  #otoku .cpnPartner li:nth-child(2n) {
    margin: 0 0 10px;
  }

  #otoku .cpnPartner li a {
    display: block;
    padding: 15px;
    text-decoration: none;
  }

  #otoku .cpnPartner li .linkText {
    display: block;
    font-weight: bold;
    text-align: right;
  }

  #otoku .cpnPartner li h4 {
    margin: 0 0 0.5rem;
    font-size: 0.9rem;
    font-weight: bold;
    color: #004098;
    text-align: center;
  }

  #otoku .functionB p {
    margin: 10px 10px 0;
  }

  #otoku .cpnLimited {
    margin: 0 10px;
  }

  #otoku .cpnLimited li {
    margin: 0 0 1rem;
  }

  #otoku .explainText {
    font-size: 1rem;
    font-weight: bold;
  }

  #otoku .cpnPartner {
    display: flex;
    display: flexbox;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 1rem 10px;
    -ms-flex-pack: justify;
  }

  #otoku .cpnPartner li .partnerLogo {
    margin: 0 0 0.5rem;
    text-align: center;
  }
}

/* ----- */

#otoku .cpnFlow li {
  counter-increment: number 1;
}

#otoku .cpnFlow li::before {
  position: absolute;
  top: -15px;
  right: 0;
  left: 0;
  display: block;
  width: 90px;
  height: 30px;
  margin: auto;
  font-size: 18px;
  font-weight: 700;
  line-height: 26px;
  text-align: center;
  content: "STEP" counter(number);
  background: #fff;
  border: 3px solid #dadada;
  border-radius: 15px;
}

.functionA {
  text-align: center;
}

.functionA .main-img {
  max-width: 515px;
  margin: 0 auto 40px;
}

.functionB {
  padding: 40px 0 0;
  text-align: center;
}

.functionB .main-img {
  max-width: 545px;
  margin: 0 auto 40px;
}

#otoku .cpnFlow {
  max-width: 680px;
  margin: 30px auto 0;
}

@media all and (max-width: 767px) {
  .functionB {
    padding: 0;
  }

  .cpnImage img {
    width: 100%;
  }

  #otoku .cpnFlow li::after {
    position: absolute;
    right: 0;
    bottom: -24px;
    left: 0;
    box-sizing: border-box;
    width: 1px;
    height: 1px;
    margin: auto;
    content: "";
    border: 12px solid transparent;
    border-left: 16px solid #dadada;
    transform: rotate(90deg);
  }

  #otoku .cpnFlow li:nth-of-type(4)::after {
    display: none;
  }

  #otoku .cpnFlow li:nth-of-type(n + 2) {
    margin-top: 40px;
  }
}

@media all and (min-width: 576px) {
  .footer-banner-quicpay a img {
    width: 468px;
    height: 60px;
  }
}

@media all and (max-width: 576px) {
  .footer-banner-quicpay a img {
    width: 100%;
    max-width: 320px;
  }
}

/* Service banner area */
.sba-multiple .mrn12,
.sba-multiple .mxn12 {
  margin-right: -12px !important;
}

.sba-multiple .mln12,
.sba-multiple .mxn12 {
  margin-left: -12px !important;
}

.sba-multiple .mb20,
.sba-multiple .my20 {
  margin-bottom: 20px !important;
}

.sba-multiple .pr12,
.sba-multiple .px12 {
  padding-right: 12px !important;
}

.sba-multiple .pl12,
.sba-multiple .px12 {
  padding-left: 12px !important;
}

.sba-multiple .text-label_base {
  color: #333 !important;
}

.sba-multiple .block {
  display: block !important;
}

.sba-multiple .rounded-5 {
  border-radius: 5px !important;
}

.sba-multiple .bg-white {
  background-color: #fff !important;
}

.sba-multiple .mb100,
.sba-multiple .my100 {
  margin-bottom: 100px !important;
}

.sba-multiple .mb36,
.sba-multiple .my36 {
  margin-bottom: 36px !important;
}

.sba-multiple .text-primary {
  color: #203d95 !important;
}

.sba-multiple .fs17,
.sba-multiple .fz17 {
  font-size: 17px !important;
}

.sba-multiple .fs14,
.sba-multiple .fz14 {
  font-size: 14px !important;
}

.sba-multiple .fs10,
.sba-multiple .fz10 {
  font-size: 10px !important;
}

.sba-multiple .pt8,
.sba-multiple .py8 {
  padding-top: 8px !important;
}

.sba-multiple .pt6,
.sba-multiple .py6 {
  padding-top: 6px !important;
}

.sba-multiple .fs10,
.sba-multiple .fz10 {
  font-size: 10px !important;
}

.sba-multiple .pl6,
.sba-multiple .px6 {
  padding-left: 6px !important;
}

.sba-multiple .col4 {
  width: 33.33333333%;
}

.sba-multiple {
  font-family: "Helvetica Neue", Arial, "Yu Gothic 游ゴシックYuGothic" Medium, YuGothic, "游ゴシック体", "Hiragino Kaku Gothic ProN", Meiryo,
    sans-serif;
  font-size: 14px;
  color: #333;
  background-color: #fff;
}

.sba-multiple .row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: center;
  width: initial;
}

.sba-multiple .row div a {
  padding: 20px 8px 20px 15px !important;
}

@media only screen and (min-width: 1040px) {
  .sba-multiple .l-hide,
  .sba-multiple .m-show,
  .sba-multiple .s-show {
    display: none !important;
  }

  .sba-multiple [class*=" hover-"] {
    transition: 128ms;
  }

  .sba-multiple .hover-trigger:hover.hover-opacity-70,
  .sba-multiple .hover-trigger:hover .hover-opacity-70 {
    opacity: 0.7;
  }
}

@media only screen and (min-width: 769px) and (max-width: 1039px) {
  .sba-multiple .container {
    padding-right: 25px;
    padding-left: 25px;
  }

  .sba-multiple [class^="hover-"],
  .sba-multiple [class*=" hover-"] {
    transition: 128ms;
  }
}

.sba-multiple .box-shadow {
  box-shadow: 0 0 3px rgb(0 0 0 / 30.2%);
}

.sba-multiple .s-full {
  width: 100%;
  height: 100%;
}

.sba-multiple .fc {
  justify-content: center;
}

.sba-multiple .f {
  display: flex;
}

.sba-multiple .flex-fixed {
  flex-grow: 0;
  flex-shrink: 0;
}

.sba-multiple .container {
  max-width: 1040px;
  margin-right: auto;
  margin-left: auto;
}

.sba-multiple .max-width-960 {
  max-width: 960px;
}

.sba-multiple .text-center {
  text-align: center;
}

.sba-multiple .fbw {
  justify-content: space-between;
}

.sba-multiple .fm {
  align-items: center;
}

.sba-multiple .w-full {
  width: 100%;
}

.sba-multiple .w70 {
  width: 70px;
}

.sba-multiple .fl {
  justify-content: flex-start;
}

.icon-arrow_right::before {
  content: "\f101";
}

.sba-multiple .object-fit-contain {
  object-fit: contain;
}

.sba-multiple .word-break-all {
  word-break: break-all;
}

.sba-multiple .lh15 {
  line-height: 1.5;
}

.sba-multiple .bold {
  font-weight: 700;
}

.sba-multiple .letter-spacing-0_05em {
  letter-spacing: 0.05em;
}

.sba-multiple .lh16 {
  line-height: 1.6;
}

.sba-multiple .ts-xxl {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
}

@media only screen and (max-width: 768px) {
  .sba-multiple .s-mb60 {
    margin-bottom: 60px !important;
  }

  .sba-multiple .container {
    padding-right: 14px;
    padding-left: 14px;
  }

  .sba-multiple .s-ts-m {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.5;
  }

  .sba-multiple .s-mx0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .sba-multiple .s-mb0 {
    margin-bottom: 0 !important;
  }

  .sba-multiple .s-px0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .sba-multiple .s-col12 {
    width: 100%;
  }

  .sba-multiple .s-pb20 {
    padding-bottom: 20px !important;
  }

  .sba-multiple .s-fs12 {
    font-size: 12px !important;
  }
}
