.site {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  width: 96%;
  margin: 0 auto;
}
  .site_head {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    height: 70px;
    margin-bottom: 5px;
    color: #767171;
  }
  .site_head_logo {
    width: 20%;
    margin: 0 10px;
  }
  .site_head_name {
    font-size: 20px;
  }

.site_upper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
  align-items: center;
}

.site_block_name {
    padding: 5px 10px;
    background: #AF1D31;
    font-size: 20px;
    font-weight: bold;
    position: relative;


}

.site_block_title {
  color: #fff;
}

.site_block_wrap {
  background: #AF1D31;
}

.site-block-head-star {
  width: 88%;
  padding-left: 10px;
  color: #AF1D31;
  font-size: 18px;
  font-weight: bold;
  line-height: 1em;
  background: #AF1D31;
  padding: 0 10px 10px 10px;
  margin-left: auto;

}
  .site-block-head-star>span {
    display: inline-block;
    margin-right: 8px;
    padding: 5px 8px;
    font-size: 16px;
    font-weight: bold;
  }

  .site-block-head-wrap{
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border-radius: 10px;
    margin-left: 5px;
    margin-right: 5px;

  }

  .site-star-wrap {
    color: #ff3600;


  }
    .site-block-head-wrap>span {
      display: inline-block;
      padding: 5px 0;
      font-weight: bold;
      display: flex;
      align-items: center;

    }

  .site-block-head-text {
    color: #ff0000;
    font-weight: bold;
    margin: 10px 5px;
    font-size: 20px;
  }

  @media screen and (min-width: 765px) {
    .site_upper {
      flex-wrap: nowrap;
    }

    .site_block_wrap {
      display: flex;
      align-items: center;
    }

    .site_block_name {
      width: 100%;
      padding: 10px;
    }

    .site-block-head-star {
      padding: 2px;
      width: 80%;

    }

    .site-block-head-wrap{
      padding: 0;
    }
  }
  .site_upper_banner {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 8px;
  }
    .site_upper_banner_img {
      width: 100%;
      max-height: 120px;
      object-fit: contain;
      margin-top: 5px;
    }

  .site_upper_mainimg {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 90%;
    margin: 0 auto 8px;
  }
  @media screen and (max-width: 767px) {
    .site_upper_mainimg {
      width: 100%;
    }
  }
    .site_upper_mainimg img {
      width: 100%;
      /* max-height: 200px; */
      max-height: 400px;
    }

  .site_upper_right {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 10px auto;
    width: 100%;  }
    table.site_upper_table {
      table-layout: fixed;
      width: 100%;
      margin-bottom: 12px;
      border: solid 1px #9c9c9c;
      color: #fff;
    }
      .site_upper_table tr {
        height: 2.2em;
      }
        .site_upper_table th {
          width: 30%;
          padding: 0 2px;
          background: #AF1D31;
          border: solid 1px #9c9c9c;
          font-size: 12px;
          font-weight: initial;
        }
        .site_upper_table td {
          width: 30%;
          border: solid 1px #9c9c9c;
          text-align: center;
          line-height: 1.1rem;
          font-size: 14px;
          color: #595959;

        }
          .site_upper_table td img{
            width: 20%;
          }
    .site_tags {
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-start;
      width: 100%;
      padding: 1%;
    }
      .site_tags_item {
        display: none;
        justify-content: center;
        align-items: center;
        width: 32%;
        height: 30px;
        margin: 0 0.5% 3px;
        background: #AF1D31;
        border-radius: 3px;
        text-align: center;
        color: #fff;
        font-size: 3.5vw;
        font-weight: bold;
      }
        .site_tags_item.on {
          display: inline-flex;
        }

  .site_currency-pair {
    width: 100%;
    border: solid 1px #ccc;
    box-shadow: 2px 1px 4px #ccc;
    color: #555;
    text-align: center;
  }
    .site_currency-pair_list {
      display: flex;
      justify-content: flex-start;
      align-items: center;
      overflow-x: auto;
      width: 100%;
      height: 110px;
      padding-bottom: 8px;
    }
      .site_currency-pair_list_item {
        display: flex;
        flex: 1 0 30%;
        flex-wrap: wrap;
        justify-content: center;
        align-content: space-between;
        align-items: flex-start;
        max-width: 30%;
        min-width: 30%;
        height: 80px;
        margin-left: 1%;
        padding: 3px;
        background: #fafafa;
        border: solid 1px #aaa;
      }
        .site_currency-pair_list_item_name {
          width: 100%;
          text-align: center;
          font-size: 13px;
        }
        .site_currency-pair_list_item_img {
          width: 32px;
          object-fit: contain;
          border: solid 1px #ccc;
        }
        .site_currency-pair_list_item_spread {
          width: 100%;
          text-align: center;
          font-weight: bold;
        }

  .site_point {
    width: 100%;
    margin: 5px auto;
  }
    .site_point_head {
      display: flex;
      align-items: center;
      height: 1.8em;
      padding-left: 8px;
      background-color: #F2E644;
      border-top-left-radius: 8px;
      border-top-right-radius: 8px;
      font-size: 20px;
      font-weight: bold;
    }
      .site_point_head_img {
        width: 30px;
        height: 30px;
        margin-right: 8px;
      }
    .site_point_text {
      padding: 8px;
      border: solid 2px #F2E644;
      font-size: 18px;
    }

  .site_images {
    width: 100%;
  }
    .site_images_carousel {
      position: relative;
      left: 10px;
      width: 100%;
    }
      .site_images_carousel_item {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 320px;
      }
        .site_images_carousel_item_img {
          object-fit: contain;
        }


  .site_campaign {
    width: 100%;
    margin: 5px auto;
    padding-bottom: 5px;
    background: url(../images/campaign_bg_pic.png);
    border-radius: 10px;
  }
    .site_campaign_head {
      padding: 8px;
      text-align: center;
      color: #fff;
      font-size: 20px;
      font-weight: bold;
    }
    .site_campaign_text {
      width: 95%;
      margin: 0 auto 0.6em;
      padding: 10px;
      background: #fafafa;
      border-radius: 10px;
    }

  .site_reviews {
    width: 100%;
  }
    .site_reviews_head {
      width: 100%;
      background: #F2E644;
      border-top-left-radius: 8px;
      border-top-right-radius: 8px;
      text-align: center;
      font-size: 20px;
      font-weight: bold;
    }
    .site_reviews_list {
      width: 100%;
      border: solid 2px #F2E644;
    }
      .site_reviews_list_item {
        position: relative;
        width: 92%;
        margin: 8px 2% 8px 6%;
        padding: 5px;
        border: solid 3px #F2A672;
        font-size: 14px;
      }
        .site_reviews_list_item::before {
          content: "";
          position: absolute;
          top: 10px;
          left: -40px;
          border: solid 20px transparent;
          border-top-width: 12px;
          border-bottom-width: 12px;
          border-right-color: #F2A672;
        }
        .site_reviews_list_item::after {
          content: "";
          position: absolute;
          top: 12px;
          left: -32px;
          border: solid 18px transparent;
          border-top-width: 10px;
          border-bottom-width: 10px;
          border-right-color: #fff;
        }

.site_button_jump {
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 40px;
  margin: 8px auto;
  background: #AF1D31;
  border-radius: 10px;
  color: #fff;
  font-size: 5vw;
  font-weight: bold;
  text-decoration: none;
}
  .site_button_jump--campaign {
    width: 95%;
    margin: 8px auto 0;
    background: #F2E644;
    color: #333;
    box-shadow: 0 3px 3px #B77000;
  }

a.site-button-detail {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 90%;
  height: 55px;
  margin-bottom: 10px;
  padding: 0.3em;
  background: #55acd1;
  color: #fff;
  font-size: 1.1rem;
  font-weight: bold;
  text-decoration: none;
}
  .site-button-detail img {
    width: 36px;
    height: 36px;
    margin-left: 10px;
  }

.site-content {
  width: 100%;
  margin: 30px auto;
}
  .site-content-text {
    width: 100%;
    margin-bottom: 8px;
    padding: 5px 10px;
    line-height: 1.5em;
  }
    .site-content-text img {
      display: block;
      max-width: 100%;
      max-height: 30vh;
      margin: 5px auto;
    }

  .icon_mobile {
    margin: 0 5px;
  }


@media screen and (min-width: 765px) {
  .site_head_name {
    font-size: 26px;
  }
  .site_upper {
    flex-wrap: wrap;
  }
  .site_upper_right {
    width: 100%;
  }
    .site_upper_table th {
      font-size: 16px;
    }
      .site_upper_table td img{
        width: 12%;
      }

  .site_tags_item {
    font-size: 14px;
  }
  .site_currency-pair_list_item {
    max-width: 15%;
    min-width: 15%;
  }

  .site_images_carousel {
    left: 218px;
  }

  .site_point,
  .site_campaign {
    width: 80%;
    margin-bottom: 15px;
  }
  .site_reviews {
    width: 95%;
  }

  .site-content {
    width: 100%;
  }

  .site_button_jump {
    width: 100%;
    font-size: 18px;
    margin-top: 10px;
  }

}

.site-table__wrapper {
  overflow-x: auto;
  border: solid 1px #9c9c9c;
  border-bottom: none;
  font-size: 62.5%; /* def 1rem = 10px */
  margin: 0 auto 10px;
  max-width: 96.6vw;
}


.compare-table {
  border-spacing: 0;
  width: max-content;
  font-size: 1.2em;
}

  .compare-table__th,
  .compare-table__td {
    padding: 0.6em 0.2em;
    border: solid 1px #9c9c9c;
    border-top: none;
  }
  .compare-table__th--bottom,
  .compare-table__td--bottom {
    border-bottom: none;
  }
  .compare-table__th {
    position: sticky;
    left: 0;
    min-width: 80px;
    background: #FFF2CD;
    border: solid 1px #9c9c9c;
    border-left: none;
  }

  .compare-table__td {
    width: 40vw;
    max-width: 55px;
    background: #fff;
    text-align: center;
    font-size: 10px;
  }

  .compare-table__th--glay,
  .compare-table__td--glay
  {
    background: #E5E8EA;
    border: solid 1px #9c9c9c;
    border-top: none;
    border-left: none;
    font-weight: bold;
  }

  .site_currency_img_wrap{
    margin: 0 auto;
  }


  @media screen and (min-width: 658px){
    .compare-table__th {
      width: 120px;
      max-width: 120px;
    }

    .compare-table__td {
      width: 120px;
      max-width: 120px;
      font-size: 12px;
    }

    .site-table__wrapper {
      max-width: 719px;
      margin: 0 auto 17px;
    }


  }

  .site_content_title {
    width: 100%;
    margin-bottom: 5px;
    padding: 6px 12px;
    background: #AF1D31;
    color: #fff;
    font-size: 24px;
    font-weight: bold;
  }

  .site-content-head {
    margin: 8px 0;
    padding-left: 32px;
    background: left no-repeat url(/images/check.png);
    background-size: 28px;
    border-bottom: solid 5px #AF1D31;
    font-size: 20px;
    font-weight: bold;
  }

  .button {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    flex: 2;
    height: 40px;
    background: #03b403;
    box-shadow:0 5px 0 #008000;
    border-radius: 10px;
    text-align: center;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    text-decoration: none;
    margin-bottom: 15px;
  }


  .company_content_wrap {
    width: 100%;
    margin: 10px 0 20px;
  }
    .company_content_header {
      width: 100%;
      margin-bottom: 5px;
      padding: 6px 12px;
      background: #AF1D31;
      color: #fff;
      font-size: 24px;
      font-weight: bold;
    }

    .company_content_wrap h3 {
      margin: 8px 0;
      padding-left: 32px;
      background: left no-repeat url(/images/check.png);
      background-size: 28px;
      border-bottom: solid 5px #2774cc;
      font-size: 20px;
    }
    .company_content_wrap h4 {
      margin: 6px 0;
      padding-left: 5px;
      border-left: solid 5px #2774cc;
      font-size: 18px;
    }

  .flow {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    width: 98%;
    margin: 5px auto;
  }
    .flow__step {
      display: grid;
      grid-template-columns: 42px 1fr;
      grid-template-rows: auto 200px auto;
      border: solid 1px #aaa;
    }
      .flow__num {
        grid-column: 1/2;
        grid-row: 1/2;
        display: flex;
        justify-content: center;
        align-items: center;
        background: #AF1D31;
        color: #fff;
        font-size: 28px;
        font-weight: bold;
      }
      .flow__head {
        grid-column: 2/3;
        grid-row: 1/2;
        display: flex;
        align-items: center;
        padding-left: 1em;
        font-size: 20px;
        font-weight: bold;
      }
      .flow__img {
        grid-column: 1/-1;
        display: block;
        max-height: 100%;
        margin: auto;
      }
      .flow__text {
        grid-column: 1/-1;
        padding: 0.7em 1em;
        font-size: 14px;
      }
  @media screen and (min-width: 768px) {
    .flow {
      grid-template-columns: 1fr 1fr;
      gap: 15px;
    }
  }

  @media screen and (max-width: 320px) {
    .site-block-head-star {
      font-size: 14px;
    }

  }


