@charset "utf-8";

/* Use cssVariable to migrate to web standards. */

/* color:var(--col_white); */

:root {
  --fontDefault: 'Noto Sans JP', serif;
  --fontRob: 'Roboto', sans-serif;
  --leading-trim: calc((1em - 1lh) / 2);
  --col_white: #fff;
  --color_text: #000;
  --color_01: #0773dd;
  --color_02: #e3f2fd;
  --color_03: #167fea;
  --color_04: #004ea2;
  --color_05: #ffe974;
}

@supports not (top: 1lh) {
  :root {
    --leading-trim: 0px;
  }
}

/*
【1】=======================================================================
基本
@custom-media --pc (min-width: 769px), print;
@custom-media --sp only screen and (max-width: 768px);
*/

/*
【2】=======================================================================
【SP縦横 : タブレット : PC】
@custom-media --pc (min-width: 1367px), print;
@custom-media --tb (min-width: 768px) and (max-width: 1366px);
@custom-media --sp only screen and (max-width: 767px);
*/

/*
【3】=======================================================================
【SP縦 ＆ それ以外版。SP横でSP縦デザイン見せるメリットってあまりない？】
@custom-media --pc (min-width: 1367px), print;
@custom-media --tb only screen and (min-width: 479px) and (max-width: 1366px);
@custom-media --sp only screen and (max-width: 478px);
*/

/* anyIdeas? 何かあれば更新するので一声。 */

@media (min-width: 769px),print {
  .only-sp {
    display: none;
  }
  .l_content {
    padding-right: 5px;
  }
  .link-blank {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px 32px;
  }
          .link-blank .c_btn.btn_type04.c_btn_blank a:after {
            width: 18px !important;
            height: 19px !important;
            background-size: contain;
            right: 30px;
          }
          .link-blank .c_btn.btn_type04.c_btn_blank a span {
            color: #0773dd;
          }
          .link-blank .c_btn.btn_type02 a:after {
            transform: rotate(135deg);
            right: 33px;
          }
        .link-blank .c_btn a span {
          font-weight: 500;
          font-size: 1.6rem;
          letter-spacing: 0.05em;
          padding-left: 25px;
        }
  .l-section {
    letter-spacing: 0.05em;
  }
    .l-section img {
      display: block;
      height: auto;
    }
        .l-section .c_btn a span {
          font-weight: 500;
          font-size: 1.6rem;
          letter-spacing: 0.05em;
          padding-left: 25px;
          color: #0773dd;
        }
  .l-article {
    padding-right: 6px;
  }
    .l-article .l-ttl {
      display: flex;
      align-items: flex-end;
      justify-content: center;
    }
      .l-article .l-ttl:before,
      .l-article .l-ttl:after {
        content: '';
        width: 3px;
        height: 28px;
        background: #0773dd;
      }
      .l-article .l-ttl:before {
        transform: rotate(-30deg);
      }
      .l-article .l-ttl:after {
        transform: rotate(30deg);
      }
      .l-article .l-ttl span {
        font-weight: 700;
        font-size: 1.8rem;
        line-height: 1.5;
        color: #0773dd;
        text-align: center;
        margin: 0 17px;
      }
        .l-article .l-ttl--line:before,
        .l-article .l-ttl--line:after {
          position: relative;
          bottom: 5px;
        }
    .l-article .flexbox {
      display: flex;
    }
      .l-article .flexbox-img {
        flex-shrink: 0;
        width: 194px;
        margin-right: 35px;
      }
      .l-article .flexbox-ctn {
        width: 100%;
        margin-top: -7px;
      }
      .l-article .dot li {
        line-height: 1.8;
        position: relative;
        padding-left: 13px;
      }
        .l-article .dot li:before {
          content: '';
          width: 4px;
          height: 4px;
          background: currentColor;
          border-radius: 50%;
          position: absolute;
          top: 12px;
          left: -1px;
        }
      .l-article .dot--02 {
        margin: 16px 11px 0;
      }
          .l-article .dot--02 li + li {
            margin-top: 9px;
          }
          .l-article .dot--color li:before {
            background: #0773dd;
          }
    .l-article .c_box {
      margin-top: 22px;
      border-radius: 0;
      padding: 25px 30px 12px;
    }
        .l-article .c_box .c_link_btn:after {
          right: -4px;
        }
        .l-article .c_box .c_link_blank:after {
          width: 12px;
          height: 12px;
          background-size: contain;
          top: 0;
          margin-left: 5px;
          margin-right: 14px;
        }
      .l-article .c_box li {
        margin-bottom: 11px;
      }
        .l-article .c_box li a {
          font-size: 1.6rem !important;
          color: #0773dd;
          line-height: 1.8;
          opacity: 1;
        }
    .l-article .bank {
      margin-top: 30px;
    }
      .l-article .bank-ttl {
        margin-bottom: 21px;
      }
    .l-article .table {
      border: 1px solid #d7d7d7;
    }
      .l-article .table dl {
        display: flex;
        font-size: 1.3rem;
        line-height: 1.8;
      }
        .l-article .table dl + dl {
          border-top: 1px solid #d7d7d7;
        }
        .l-article .table dl dt {
          display: flex;
          align-items: center;
          flex-shrink: 0;
          width: 195px;
          background: #f5f5f5;
          border-right: 1px solid #d7d7d7;
          padding: 6px 13px;
        }
        .l-article .table dl dd {
          width: 100%;
          letter-spacing: 0.05em;
          padding: 6px 11px;
        }
      .l-article .process-img {
        margin-top: 16px;
        margin-right: -1px;
      }
      .l-article .process-ctn {
        border: 20px solid #0773dd;
        padding: 35px 44px 44px;
        margin-top: 40px;
      }
        .l-article .process-ctn .steps {
          display: flex;
        }
          .l-article .process-ctn .steps + .steps {
            margin-top: 73px;
            position: relative;
          }
            .l-article .process-ctn .steps + .steps:before {
              content: '';
              width: 71px;
              height: 19px;
              background: #0773dd;
              clip-path: polygon(50% 100%, 0 0, 100% 0);
              position: absolute;
              top: -40px;
              left: 0;
              right: 0;
              margin: auto;
            }
          .l-article .process-ctn .steps-lf {
            flex-shrink: 0;
            width: 182px;
            margin-right: 32px;
            padding-top: 7px;
          }
            .l-article .process-ctn .steps-lf__ttl {
              color: #0773dd;
              margin-bottom: 12px;
            }
              .l-article .process-ctn .steps-lf__ttl .texten {
                display: flex;
                align-items: flex-end;
                justify-content: center;
              }
              .l-article .process-ctn .steps-lf__ttl .sm {
                font-family: 'Poppins', sans-serif;
                font-weight: 800;
                font-size: 1.6rem;
                line-height: 1;
                position: relative;
                top: -2px;
              }
              .l-article .process-ctn .steps-lf__ttl .md {
                font-family: 'Poppins', sans-serif;
                font-weight: 800;
                font-size: 2.4rem;
                line-height: 1;
                margin-left: 5px;
              }
              .l-article .process-ctn .steps-lf__ttl p {
                width: 100%;
                font-weight: 700;
                font-size: 2rem;
                line-height: 1.5;
                text-align: center;
                margin-top: 4px;
              }
          .l-article .process-ctn .steps-rg {
            width: 100%;
          }
            .l-article .process-ctn .steps-rg dl {
              line-height: 1.8;
            }
              .l-article .process-ctn .steps-rg dl + dl {
                margin-top: 20px;
              }
              .l-article .process-ctn .steps-rg dl dt {
                font-weight: 700;
                font-size: 1.8rem;
              }
                .l-article .process-ctn .steps-rg dl dd p {
                  margin-right: -10px;
                }
                  .l-article .process-ctn .steps-rg dl dd p + p {
                    margin-top: 5px;
                  }
                .l-article .process-ctn .steps-rg dl dd .small {
                  font-size: 1.2rem;
                }
                .l-article .process-ctn .steps-rg dl dd .noted {
                  padding-left: 1em;
                  text-indent: -1em;
                  margin-top: 0;
                }
                .l-article .process-ctn .steps-rg dl dd .groupbtn {
                  margin-top: 10px;
                }
                    .l-article .process-ctn .steps-rg dl dd .groupbtn .c_btn + .c_btn {
                      margin-top: 20px;
                    }
                    .l-article .process-ctn .steps-rg dl dd .groupbtn a span {
                      line-height: 1.4;
                    }
                      .l-article .process-ctn .steps-rg dl dd .groupbtn .btn_type04 a:after {
                        right: 32px;
                      }
                      .l-article .process-ctn .steps-rg dl dd .groupbtn .c_btn_blank a:after {
                        width: 18px !important;
                        height: 19px !important;
                        background-size: contain;
                        right: 27px;
                      }
    .l-article .trading {
      display: flex;
      align-items: flex-end;
      flex-wrap: wrap;
      gap: 32px;
    }
      .l-article .trading-items {
        width: calc(50% - 16px);
      }
        .l-article .trading-items .c_btn {
          margin-top: 14px;
        }
            .l-article .trading-items .c_btn a:after {
              right: 32px;
            }
            .l-article .trading-items .c_btn a span {
              color: #fff;
            }
    .l-article .grid {
      display: grid;
      gap: 24px 32px;
    }
      .l-article .grid .icon {
        background-repeat: no-repeat;
        background-size: contain;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 38px;
        margin: auto;
      }
        .l-article .grid .icon--01 {
          width: 21px;
          height: 20px;
          background-image: url('../images/icon_01.png?v6cf11498a26c82c540e0b97351ed39d1');
        }
        .l-article .grid .icon--02 {
          width: 28px;
          height: 30px;
          background-image: url('../images/icon_02.png?v8b00ca529d2f057a25219bcaacd3cdea');
        }
        .l-article .grid .icon--03 {
          width: 25px;
          height: 26px;
          background-image: url('../images/icon_03.png?v1c5fd8a40633103076118d5334934aa2');
        }
        .l-article .grid .icon--04 {
          width: 25px;
          height: 17px;
          background-image: url('../images/icon_04.png?v611a4daa55f5bb0216a3b7db8249fcd5');
        }
      .l-article .grid--02 {
        grid-template-columns: repeat(2, 1fr);
      }
            .l-article .grid--02 .btn_type04 a:after {
              right: 30px;
            }
      .l-article .grid--03 {
        grid-template-columns: repeat(3, 1fr);
      }
    .l-article .ranking {
      margin-top: 26px;
    }
      .l-article .ranking-ttl {
        font-weight: 700;
        margin-bottom: 15px;
      }
        .l-article .ranking .tab_wrapper_unique table.type02 {
          table-layout: fixed;
        }
            .l-article .ranking .tab_wrapper_unique table.type02 th:first-of-type {
              width: 145px;
            }
        .l-article .ranking .tab_wrapper_unique img {
          margin: auto;
        }
    .l-article .link-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
    }
      .l-article .link-grid__elm {
        transition: opacity 0.3s;
        will-change: opacity;
      }
        .l-article .link-grid__elm:hover {
          opacity: 0.7;
        }
        .l-article .link-grid__elm figure {
          height: 160px;
        }
        .l-article .link-grid__elm .c_link {
          font-size: 1.6rem;
          line-height: 1.8;
          letter-spacing: 0.05em;
          color: #0773dd;
          margin-top: 7px;
          text-underline-offset: 2px;
        }
}

@media only screen and (max-width: 768px) {
  .only-pc {
    display: none;
  }
  .link-blank {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
          .link-blank .c_btn.btn_type04.c_btn_blank a:after {
            width: 18px !important;
            height: 19px !important;
            background-size: contain;
            right: 19px;
          }
          .link-blank .c_btn.btn_type04.c_btn_blank a span {
            color: #0773dd;
          }
          .link-blank .c_btn.btn_type02 a:after {
            transform: rotate(135deg);
            right: 22px;
          }
        .link-blank .c_btn a span {
          font-weight: 500;
          font-size: 1.6rem;
          letter-spacing: 0.05em;
          padding-left: 25px;
        }
  .l-section {
    letter-spacing: 0.05em;
  }
    .l-section img {
      display: block;
      height: auto;
    }
      .l-section .c_btn a {
        padding-right: 15px;
      }
        .l-section .c_btn a span {
          font-weight: 500;
          font-size: 1.6rem;
          letter-spacing: 0.05em;
          color: #0773dd;
        }
    .l-article .l-ttl {
      display: flex;
      align-items: flex-end;
      justify-content: center;
    }
      .l-article .l-ttl:before,
      .l-article .l-ttl:after {
        content: '';
        width: 3px;
        height: 28px;
        background: #0773dd;
      }
      .l-article .l-ttl:before {
        transform: rotate(-30deg);
      }
      .l-article .l-ttl:after {
        transform: rotate(30deg);
      }
      .l-article .l-ttl span {
        font-weight: 700;
        font-size: 1.8rem;
        line-height: 1.5;
        color: #0773dd;
        margin: 0 10px;
        text-align: center;
      }
        .l-article .l-ttl--line:before,
        .l-article .l-ttl--line:after {
          position: relative;
          bottom: 5px;
        }
        .l-article .flexbox-img img {
          display: block;
          width: 100%;
        }
      .l-article .flexbox-ctn {
        font-size: 1.4rem;
        line-height: 1.8;
        margin-top: 15px;
      }
      .l-article .dot li {
        line-height: 1.8;
        position: relative;
        padding-left: 21px;
      }
        .l-article .dot li:before {
          content: '';
          width: 4px;
          height: 4px;
          background: currentColor;
          border-radius: 50%;
          position: absolute;
          top: 12px;
          left: 9px;
        }
      .l-article .dot--02 {
        margin: 13px 4px 0;
      }
        .l-article .dot--02 li {
          font-size: 1.6rem;
        }
          .l-article .dot--02 li .c_link {
            font-size: 1.6rem;
          }
          .l-article .dot--02 li + li {
            margin-top: 9px;
          }
          .l-article .dot--color li:before {
            background: #0773dd;
          }
    .l-article .c_box {
      margin-top: 17px;
      border-radius: 0;
      padding: 13px 20px 12px;
    }
        .l-article .c_box .c_link_btn:after {
          right: -3px;
        }
        .l-article .c_box .c_link_blank:after {
          width: 10px;
          height: 10px;
          background-size: contain;
          top: 0;
        }
        .l-article .c_box li a {
          color: #0773dd;
          line-height: 1.8;
          opacity: 1;
        }
    .l-article .bank {
      margin-top: 23px;
    }
      .l-article .bank-ttl {
        margin-bottom: 7px;
      }
    .l-article .table {
      border: 1px solid #d7d7d7;
    }
      .l-article .table dl {
        font-size: 1.3rem;
        line-height: 1.8;
      }
        .l-article .table dl + dl {
          border-top: 1px solid #d7d7d7;
        }
        .l-article .table dl dt {
          display: flex;
          align-items: center;
          background: #f5f5f5;
          border-bottom: 1px solid #d7d7d7;
          padding: 9px 10px;
        }
        .l-article .table dl dd {
          letter-spacing: 0.05em;
          padding: 8px 13px;
        }
          .l-article .table dl dd .c_link {
            font-size: 1.3rem;
          }
      .l-article .process-img {
        margin-top: 12px;
      }
      .l-article .process-ctn {
        border: 10px solid #0773dd;
        padding: 30px 22px;
        margin-top: 20px;
      }
          .l-article .process-ctn .steps + .steps {
            margin-top: 87px;
            position: relative;
          }
            .l-article .process-ctn .steps + .steps:before {
              content: '';
              width: 84px;
              height: 23px;
              background: #0773dd;
              clip-path: polygon(50% 100%, 0 0, 100% 0);
              position: absolute;
              top: -55px;
              left: 0;
              right: 0;
              margin: auto;
            }
          .l-article .process-ctn .steps-lf {
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 -10px 8px;
          }
            .l-article .process-ctn .steps-lf__ttl {
              color: #0773dd;
            }
              .l-article .process-ctn .steps-lf__ttl .texten {
                display: flex;
                align-items: flex-end;
                justify-content: center;
              }
              .l-article .process-ctn .steps-lf__ttl .sm {
                font-family: 'Poppins', sans-serif;
                font-weight: 800;
                font-size: 1.6rem;
                line-height: 1;
                position: relative;
                top: -2px;
              }
              .l-article .process-ctn .steps-lf__ttl .md {
                font-family: 'Poppins', sans-serif;
                font-weight: 800;
                font-size: 2.4rem;
                line-height: 1;
                margin-left: 5px;
              }
              .l-article .process-ctn .steps-lf__ttl p {
                width: 100%;
                font-weight: 700;
                font-size: 2rem;
                line-height: 1.5;
                text-align: center;
                margin-top: 4px;
              }
            .l-article .process-ctn .steps-lf__img {
              width: 110px;
              flex-shrink: 0;
              margin-left: 20px;
            }
          .l-article .process-ctn .steps-rg {
            width: 100%;
          }
            .l-article .process-ctn .steps-rg dl {
              line-height: 1.8;
            }
              .l-article .process-ctn .steps-rg dl + dl {
                margin-top: 20px;
              }
              .l-article .process-ctn .steps-rg dl dt {
                font-weight: 700;
                font-size: 1.8rem;
                margin-bottom: -2px;
              }
                .l-article .process-ctn .steps-rg dl dd p {
                  margin-right: -10px;
                }
                  .l-article .process-ctn .steps-rg dl dd p + p {
                    margin-top: 5px;
                  }
                .l-article .process-ctn .steps-rg dl dd .c_link {
                  font-size: 1.6rem;
                }
                .l-article .process-ctn .steps-rg dl dd .small {
                  font-size: 1.2rem;
                }
                .l-article .process-ctn .steps-rg dl dd .noted {
                  margin-top: 0;
                }
                .l-article .process-ctn .steps-rg dl dd .groupbtn {
                  margin-top: 13px;
                }
                    .l-article .process-ctn .steps-rg dl dd .groupbtn .c_btn + .c_btn {
                      margin-top: 16px;
                    }
                    .l-article .process-ctn .steps-rg dl dd .groupbtn a span {
                      line-height: 1.4;
                    }
                      .l-article .process-ctn .steps-rg dl dd .groupbtn .btn_type04 a:after {
                        right: 20px;
                      }
                      .l-article .process-ctn .steps-rg dl dd .groupbtn .c_btn_blank a:after {
                        width: 18px !important;
                        height: 19px !important;
                        background-size: contain;
                        right: 18px;
                      }
        .l-article .trading-items:not(:last-of-type) {
          margin-bottom: 30px;
        }
          .l-article .trading-items .c_btn.btn_type02 {
            margin-top: 12px;
          }
          .l-article .trading-items .c_btn.btn_type01 {
            margin-top: 20px;
          }
          .l-article .trading-items .c_btn a {
            min-height: 65px;
          }
            .l-article .trading-items .c_btn a:after {
              right: 20px;
            }
            .l-article .trading-items .c_btn a span {
              color: #fff;
            }
      .l-article .grid .c_btn + .c_btn {
        margin-top: 16px;
      }
      .l-article .grid .icon {
        background-repeat: no-repeat;
        background-size: contain;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 18px;
        margin: auto;
      }
        .l-article .grid .icon--01 {
          width: 21px;
          height: 20px;
          background-image: url('../images/icon_01.png?v6cf11498a26c82c540e0b97351ed39d1');
        }
        .l-article .grid .icon--02 {
          width: 28px;
          height: 30px;
          background-image: url('../images/icon_02.png?v8b00ca529d2f057a25219bcaacd3cdea');
        }
        .l-article .grid .icon--03 {
          width: 25px;
          height: 26px;
          background-image: url('../images/icon_03.png?v1c5fd8a40633103076118d5334934aa2');
        }
        .l-article .grid .icon--04 {
          width: 25px;
          height: 17px;
          background-image: url('../images/icon_04.png?v611a4daa55f5bb0216a3b7db8249fcd5');
        }
    .l-article .ranking {
      margin-top: 22px;
    }
      .l-article .ranking-ttl {
        font-weight: 700;
        font-size: 1.6rem;
        margin-bottom: 15px;
      }
        .l-article .ranking .tab_wrapper_unique table.type02 {
          table-layout: fixed;
        }
            .l-article .ranking .tab_wrapper_unique table.type02 th:first-of-type {
              width: 97px;
            }
            .l-article .ranking .tab_wrapper_unique table.type02 td:first-of-type {
              padding-inline: 0;
            }
        .l-article .ranking .tab_wrapper_unique img {
          margin: auto;
        }
      .l-article .link-grid__elm {
        display: block;
      }
        .l-article .link-grid__elm:not(:last-of-type) {
          margin-bottom: 18px;
        }
        .l-article .link-grid__elm .c_link {
          font-size: 1.6rem;
          line-height: 1.8;
          letter-spacing: 0.05em;
          color: #0773dd;
          margin-top: 4px;
          text-underline-offset: 2px;
        }
        .l-article .c_news_wrap li .txt {
          margin-top: 0;
          padding-right: 0;
        }
      .l-article .c_list li {
        padding-right: 10px;
      }
      .l-article .c_list .c_link {
        font-size: 1.6rem;
        line-height: 1.8;
      }
}
