@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
.top_ttl {
  width: 85%;
  margin: 0 auto; }

.top_list .top_ttl {
  height: auto !important;
  display: block;
  overflow: hidden;
  background: #1D4495;
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  padding: 6px 0;
  width: 100%;
  margin: 0;
  text-align: center;
  color: #fff; }
  .top_list .top_ttl p {
    font-size: 12px;
    line-height: 1.1; }
.top_list li .inner {
  border: 1px solid #1D4495;
  border-radius: 8px;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
  padding: 0 !important; }
.top_list li .wrap {
  padding: 5px; }
  .top_list li .wrap img {
    margin: 0 auto 7px !important; }
.top_list li .name {
  font-size: 10px;
  line-height: 1.3;
  margin: 0 auto 5px;
  text-decoration: underline;
  font-weight: bold;
  min-height: 26px; }
.top_list li .official_btn {
  color: #fff;
  font-size: 12px;
  height: 34px;
  background: #FF312B;
  line-height: 34px;
  font-weight: bold;
  border-radius: 30px;
  border-bottom: 4px solid #D20201; }

.sortable-table {
  width: 920px !important; }
  .sortable-table thead tr {
    position: relative; }
  .sortable-table thead th {
    background: #1D4495 !important;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 11.2px !important;
    font-weight: bold; }
    .sortable-table thead th:first-child {
      position: sticky;
      top: 0;
      left: 0; }
  .sortable-table tbody tr:first-child td {
    color: #E8344B;
    background-color: #FFF8C1 !important; }
    .sortable-table tbody tr:first-child td p {
      font-weight: bold; }
  .sortable-table tbody tr td {
    vertical-align: top !important;
    padding: 5px !important;
    padding-top: 25px !important; }
    .sortable-table tbody tr td img {
      margin: 0 0 6px;
      height: auto; }
    .sortable-table tbody tr td .ico {
      position: relative;
      z-index: 0 !important; }
      .sortable-table tbody tr td .ico img {
        width: 22px !important; }
    .sortable-table tbody tr td .image p {
      font-size: 10px; }
    .sortable-table tbody tr td p {
      font-family: "Noto Sans JP", sans-serif;
      font-size: 11.2px !important;
      font-weight: 500; }
    .sortable-table tbody tr td:nth-child(6), .sortable-table tbody tr td:nth-child(7), .sortable-table tbody tr td:nth-child(8) {
      vertical-align: middle !important; }
  .sortable-table tbody tr {
    position: relative; }
    .sortable-table tbody tr td:first-child {
      width: 120px;
      padding: 3px !important;
      padding-top: 22px !important;
      position: sticky;
      top: 0;
      left: 0;
      border-left: 1px solid #ccc;
      z-index: 5 !important; }
  .sortable-table tbody tr:nth-child(1) td:first-child {
    background: #FFF8C1 url("../../img/nisa/rank1.png") center 2px/25px 20px no-repeat !important; }
  .sortable-table tbody tr:nth-child(2) td:first-child {
    background: #fff url("../../img/nisa/rank2.png") center 2px/25px 20px no-repeat; }
  .sortable-table tbody tr:nth-child(3) td:first-child {
    background: #fff url("../../img/nisa/rank3.png") center 2px/25px 20px no-repeat; }
  .sortable-table tbody tr:nth-child(4) td:first-child {
    background: #fff url("../../img/nisa/rank4.png") center 2px/25px 20px no-repeat; }
  .sortable-table tbody tr:nth-child(5) td:first-child {
    background: #fff url("../../img/nisa/rank5.png") center 2px/25px 20px no-repeat; }
  .sortable-table .official_btn a {
    padding: 20px 0;
    border-radius: 5px;
    color: #fff !important;
    background: #E8344B !important; }

.client_archive .overview table tr:nth-child(5) th {
  background: #BDAE34; }

.client_archive .overview table tr:nth-child(6) td {
  line-height: 1.4; }

.client_archive {
  margin-top: 20px; }
  .client_archive br.archive {
    display: none; }
  .client_archive .remarks {
    padding-top: .25em; }
    .client_archive .remarks p {
      font-size: .8em;
      color: #888; }
  .client_archive .client_wrap {
    border: 1px solid #1D4495;
    border-radius: 3px; }
    .client_archive .client_wrap .client_name {
      background: #1D4495;
      padding: 7px 10px 7px 60px;
      position: relative; }
      .client_archive .client_wrap .client_name::before {
        content: "";
        position: absolute;
        width: 41px;
        height: 73px;
        background-repeat: no-repeat;
        background-position: center top;
        background-size: 100% auto;
        left: 10px;
        top: -5px;
        pointer-events: none;
        z-index: 10; }
      .client_archive .client_wrap .client_name a {
        color: #fff;
        text-decoration: none;
        font-size: 4.5vw;
        font-weight: 700; }
  .client_archive .client_inner {
    padding: 20px 10px 30px; }
  .client_archive > ul > li {
    margin-top: 25px; }
    .client_archive > ul > li .heading {
      font-size: 14.5px !important; }
    .client_archive > ul > li:first-child {
      margin-top: 0; }
    .client_archive > ul > li:nth-child(1) .client_wrap {
      background: #fffcea; }
    .client_archive > ul > li:nth-child(1) .client_name::before {
      background-image: url("../../nisa/img/rank_01.png"); }
    .client_archive > ul > li:nth-child(1) .overview .left .point {
      background-image: url("img/point_01.png"); }
    .client_archive > ul > li:nth-child(2) .client_name::before {
      background-image: url("../../nisa/img/rank_02.png"); }
    .client_archive > ul > li:nth-child(2) .overview .left .point {
      background-image: url("img/point_02.png"); }
    .client_archive > ul > li:nth-child(3) .client_name::before {
      background-image: url("../../nisa/img/rank_03.png"); }
    .client_archive > ul > li:nth-child(3) .overview .left .point {
      background-image: url("img/point_03.png"); }
    .client_archive > ul > li:nth-child(4) .client_name::before {
      background-image: url("../../nisa/img/rank_04.png"); }
    .client_archive > ul > li:nth-child(4) .overview .left .point {
      background-image: url("img/point_04.png"); }
    .client_archive > ul > li:nth-child(5) .client_name::before {
      background-image: url("../../nisa/img/rank_05.png"); }
    .client_archive > ul > li:nth-child(5) .overview .left .point {
      background-image: url("img/point_05.png"); }
    .client_archive > ul > li th, .client_archive > ul > li td {
      font-size: 12px;
      padding: 6px 0 !important;
      height: auto !important; }
    .client_archive > ul > li td {
      padding: 10px 0 !important; }
  .client_archive .headline {
    text-align: center;
    font-weight: 700;
    color: #E8344B;
    font-size: 4vw;
    line-height: 1.4; }
  .client_archive .overview {
    display: flex;
    flex-flow: wrap;
    justify-content: flex-start; }
    .client_archive .overview .left {
      width: 200px;
      margin: auto;
      margin-top: 10px; }
      .client_archive .overview .left .point {
        width: 145px;
        height: 29px;
        margin: 8px auto 0;
        background-repeat: no-repeat;
        background-position: center center;
        background-size: 100% auto; }
    .client_archive .overview .right {
      width: 100%;
      margin-top: 10px; }
      .client_archive .overview .right td {
        position: relative;
        padding: 20px 0 !important;
        min-height: 40px !important; }
      .client_archive .overview .right .ico {
        width: 30px;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        opacity: .2; }
        .client_archive .overview .right .ico img {
          width: 100%;
          height: auto; }
  .client_archive .feature {
    margin-top: 25px;
    background: #fff;
    border: 1px solid #ffee54;
    border-radius: 2px;
    position: relative; }
    .client_archive .feature .ttl {
      font-size: 17px;
      font-weight: 700;
      letter-spacing: 0.04em;
      padding: 5px;
      text-align: center;
      color: #1D4495;
      background: #ffee54;
      border-top-left-radius: 3px;
      border-top-right-radius: 3px;
      margin-bottom: 0; }
    .client_archive .feature .wrap {
      padding: 0 10px 5px;
      background: #FFEE54; }
    .client_archive .feature ul li {
      margin: 0;
      position: relative;
      padding-left: 40px;
      text-align: center;
      background: #fff;
      padding: 15px 0;
      /*&::before {
          content:"";
          position: absolute;
          width:30px;
          height:100%;
          background-image: url("img/ico_check.png");
          background-repeat: no-repeat;
          background-position: center top;
          background-size:100% auto;
          left:0;
          top:0;
          pointer-events: none;
          z-index: 10;
      }*/ }
      .client_archive .feature ul li:not(:last-child):after {
        display: block;
        content: "";
        width: 100%;
        height: 30px;
        background: url("../../nisa/img/part_line.png") center/100.5% 100% no-repeat;
        position: absolute;
        left: 0;
        bottom: -15px;
        z-index: 2; }
      .client_archive .feature ul li:first-child {
        margin-top: 0; }
      .client_archive .feature ul li .heading {
        font-size: 12px !important;
        font-weight: 700;
        display: inline-block;
        background: #F3EB18;
        width: 96%;
        /*background: linear-gradient(transparent 60%, #ffee53 60%);*/
        color: #111;
        border-radius: 30px;
        padding: 0 0 0 35px;
        /* text-shadow: 0 0 2px #000;*/
        text-align: left;
        height: 30px;
        line-height: 30px;
        position: relative;
        letter-spacing: -0.06em; }
        .client_archive .feature ul li .heading span {
          position: absolute;
          top: 0;
          left: 0;
          display: inline-block;
          padding: 0;
          margin: 0;
          border-radius: 30px;
          font-size: 1em;
          letter-spacing: 0.02em;
          line-height: 30px;
          width: 30px;
          color: #fff;
          background: #00659F;
          text-shadow: none;
          transform: translateY(-1px);
          text-align: center; }
      .client_archive .feature ul li p {
        text-align: left;
        margin: 8px 30px 0; }
        .client_archive .feature ul li p span {
          font-weight: 700;
          color: #ff0000; }
  .client_archive .detail_items {
    margin-top: 10px;
    display: flex;
    flex-flow: wrap;
    justify-content: space-between; }
    .client_archive .detail_items .detail_item {
      width: 32.5%;
      background: #f5f5f5;
      border: 1px solid #eee;
      border-radius: 5px;
      padding: 0 5px 5px; }
    .client_archive .detail_items .heading {
      text-align: center;
      height: 32px;
      padding-top: 9px; }
      .client_archive .detail_items .heading.single {
        padding-top: 9px; }
      .client_archive .detail_items .heading span {
        display: inline-block;
        position: relative;
        font-size: 2.8vw;
        font-weight: 700;
        color: #1D4495;
        padding-left: 24px;
        line-height: 1; }
        .client_archive .detail_items .heading span::before {
          content: "";
          background-repeat: no-repeat;
          background-position: center top;
          background-size: 100% auto;
          left: 0;
          position: absolute;
          top: 50%;
          transform: translateY(-50%);
          pointer-events: none; }
        .client_archive .detail_items .heading span small {
          font-size: 75%; }
      .client_archive .detail_items .heading.commission span {
        padding-left: 16px; }
        .client_archive .detail_items .heading.commission span::before {
          background-image: url("../../nisa/img/ico_commission.png");
          width: 10px;
          height: 13px; }
      .client_archive .detail_items .heading.accumulation span {
        padding-left: 18px; }
        .client_archive .detail_items .heading.accumulation span::before {
          background-image: url("../../nisa/img/ico_accumulation.png");
          width: 16px;
          height: 12px; }
      .client_archive .detail_items .heading.growth span {
        padding-left: 18px; }
        .client_archive .detail_items .heading.growth span::before {
          background-image: url("../../nisa/img/ico_growth.png");
          width: 16px;
          height: 11px; }
      .client_archive .detail_items .heading.credit span {
        padding-left: 22px; }
        .client_archive .detail_items .heading.credit span::before {
          background-image: url("../../nisa/img/ico_credit.png");
          width: 16px;
          height: 11px; }
      .client_archive .detail_items .heading.point span {
        padding-left: 18px; }
        .client_archive .detail_items .heading.point span::before {
          background-image: url("../../nisa/img/ico_point.png");
          width: 13px;
          height: 13px; }
    .client_archive .detail_items .content {
      margin-top: 7px;
      background: #fff;
      border: 1px solid #eee;
      border-radius: 3px;
      padding: 8px 5px;
      text-align: center; }
      .client_archive .detail_items .content .ico {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -moz-opacity: 0.12;
        opacity: 0.12; }
      .client_archive .detail_items .content p {
        line-height: 1.3;
        font-size: 17px; }
    .client_archive .detail_items ul {
      display: flex;
      flex-flow: wrap;
      justify-content: space-between; }
      .client_archive .detail_items ul li {
        margin-left: 10px; }
        .client_archive .detail_items ul li:first-child {
          margin-left: 0; }
    .client_archive .detail_items.detail_01 .content {
      padding: 10px 15px;
      position: relative; }
      .client_archive .detail_items.detail_01 .content p {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        width: 95%; }
    .client_archive .detail_items.detail_02 {
      margin-top: 6px; }
      .client_archive .detail_items.detail_02 .detail_item {
        width: 48.5%;
        padding: 5px; }
        .client_archive .detail_items.detail_02 .detail_item .heading {
          height: auto;
          padding: 0 0 5px 0; }
        .client_archive .detail_items.detail_02 .detail_item .content {
          margin-top: 0; }
          .client_archive .detail_items.detail_02 .detail_item .content p {
            margin-top: 0;
            font-size: 13px; }
  .client_archive .detail {
    margin-top: 8px; }
    .client_archive .detail .other, .client_archive .detail .point {
      border-radius: 3px;
      overflow: hidden;
      border: 1px solid #449dec;
      background: #fff; }
      .client_archive .detail .other .heading, .client_archive .detail .point .heading {
        text-align: center;
        color: #fff;
        font-size: 18px;
        font-weight: 700;
        padding: 4px 0;
        background: #449dec; }
      .client_archive .detail .other .detail_inner, .client_archive .detail .point .detail_inner {
        padding: 10px; }
    .client_archive .detail .other {
      margin-top: 8px; }
      .client_archive .detail .other table {
        width: 100%; }
        .client_archive .detail .other table th, .client_archive .detail .other table td {
          border-bottom: 1px solid #d6d6d6;
          padding: 5px 0;
          width: 25%;
          font-size: 14px; }
        .client_archive .detail .other table tr:first-child th,
        .client_archive .detail .other table tr:first-child td {
          padding-top: 0; }
        .client_archive .detail .other table tr:last-child th,
        .client_archive .detail .other table tr:last-child td {
          padding-bottom: 0;
          border: none; }
        .client_archive .detail .other table th {
          width: 9em;
          color: #1a7bd0; }
        .client_archive .detail .other table td {
          padding-left: 10px;
          position: relative; }
        .client_archive .detail .other table .ico {
          width: 17px;
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          opacity: .2; }
    .client_archive .detail .point {
      margin-top: 8px;
      border-color: #e5c804; }
      .client_archive .detail .point .heading {
        background: #e5c804; }
      .client_archive .detail .point .detail_inner {
        font-size: 17px;
        line-height: 1.7; }
      .client_archive .detail .point span {
        font-weight: 700;
        color: #E8344B; }
    .client_archive .detail .review {
      overflow: hidden;
      margin-top: 8px;
      margin-bottom: 10px;
      position: relative; }
      .client_archive .detail .review .ttl {
        color: #1D4495;
        font-size: 21px;
        font-weight: 700;
        text-align: center;
        padding: 10px; }
      .client_archive .detail .review .review_inner {
        margin: auto;
        padding: 20px;
        background: #fff;
        border: #1D4495 2px solid;
        border-radius: 10px; }
        .client_archive .detail .review .review_inner .review_slides .slick-track {
          display: flex; }
        .client_archive .detail .review .review_inner .review_slides .review_slide {
          height: auto; }
          .client_archive .detail .review .review_inner .review_slides .review_slide .status {
            display: flex;
            align-items: center;
            margin-bottom: 10px; }
            .client_archive .detail .review .review_inner .review_slides .review_slide .status .ico {
              margin-right: 20px;
              width: 80px;
              height: 80px;
              background-size: contain; }
            .client_archive .detail .review .review_inner .review_slides .review_slide .status .age {
              position: relative;
              font-size: 14px; }
            .client_archive .detail .review .review_inner .review_slides .review_slide .status.male .ico {
              background-image: url("/nisa/img/review_ico_m.png"); }
            .client_archive .detail .review .review_inner .review_slides .review_slide .status.male .age::after {
              content: "男性";
              margin-left: 10px; }
            .client_archive .detail .review .review_inner .review_slides .review_slide .status.women .ico {
              background-image: url("/nisa/img/review_ico_w.png"); }
            .client_archive .detail .review .review_inner .review_slides .review_slide .status.women .age::after {
              content: "女性";
              margin-left: 10px; }
            .client_archive .detail .review .review_inner .review_slides .review_slide .status .star::before {
              position: relative;
              color: #e5c804;
              font-size: 18px; }
            .client_archive .detail .review .review_inner .review_slides .review_slide .status .star::after {
              font-weight: 700;
              color: #ff0000;
              margin-left: 5px; }
            .client_archive .detail .review .review_inner .review_slides .review_slide .status .star.star5::before {
              content: "★★★★★"; }
            .client_archive .detail .review .review_inner .review_slides .review_slide .status .star.star5::after {
              content: "5"; }
            .client_archive .detail .review .review_inner .review_slides .review_slide .status .star.star4::before {
              content: "★★★★☆"; }
            .client_archive .detail .review .review_inner .review_slides .review_slide .status .star.star4::after {
              content: "4"; }
            .client_archive .detail .review .review_inner .review_slides .review_slide .status .star.star3::before {
              content: "★★★☆☆"; }
            .client_archive .detail .review .review_inner .review_slides .review_slide .status .star.star3::after {
              content: "3"; }
          .client_archive .detail .review .review_inner .review_slides .review_slide .txt {
            margin: 0 auto;
            font-size: 14px;
            line-height: 1.769; }
    .client_archive .detail .slick-dots li {
      width: 10px;
      height: 10px;
      margin: 0 5px; }
      .client_archive .detail .slick-dots li button {
        width: 10px;
        height: 10px;
        padding: 0;
        background: #fff;
        border: 1px solid #1D4495;
        border-radius: 50%; }
        .client_archive .detail .slick-dots li button::before {
          content: none; }
      .client_archive .detail .slick-dots li.slick-active button {
        background: #1D4495; }
    .client_archive .detail .quote {
      margin-top: 10px;
      text-align: right;
      font-size: 11px; }
  .client_archive .cta {
    margin-top: 10px;
    text-align: center; }
    .client_archive .cta .cta_btn {
      margin: auto; }
  .client_archive .btn {
    padding-top: 0 !important;
    text-align: center !important; }
    .client_archive .btn .txt {
      font-size: 14px;
      font-weight: bold;
      color: #E8344B;
      text-align: center;
      letter-spacing: .075em;
      display: inline-block !important;
      line-height: 1;
      padding: 4px 40px;
      border-radius: 40px;
      background: #fff;
      position: relative;
      z-index: 2 !important;
      border: 1.5px solid #E8344B;
      margin-bottom: -8px; }
      .client_archive .btn .txt::before {
        position: absolute;
        bottom: -9px;
        left: 50%;
        transform: translateX(-50%);
        display: block;
        content: "";
        background: url("../../nisa/img/arrow_bottom.png") center/cover no-repeat;
        width: 20px;
        height: 10px;
        z-index: 2; }
  .client_archive .shiny_btn {
    position: relative !important;
    margin: 0 auto !important;
    margin-top: -8px !important;
    width: 650px;
    position: relative;
    z-index: 0 !important; }
    .client_archive .shiny_btn a {
      display: block;
      padding: 20px 0 !important;
      width: 100%;
      font-size: 20px;
      z-index: 0 !important; }

.img.img_bg {
  margin-top: 5px; }
  .img.img_bg .marker {
    font-size: 15px;
    color: #E8344B;
    font-weight: bold;
    text-align: center;
    display: inline-block;
    margin: 0; }

.section_chance {
  margin: 10px 0 0 !important; }

.recommend_heading {
  font-size: 17px !important;
  padding: 10px 0 !important; }

.page_osusume2 .section04 .client_box li table td {
  font-weight: bold !important; }
