@media screen and (min-width: 1200px) {
  /* .nav-left {
    margin-left: 15vw;
  } */
}

@media screen and (max-width: 900px) {
  /*******************
  * header
  **********************/
  .header-top {
    padding-top: 15px;
    padding-bottom: 15px;
  }
  .header-title h1 {
    font-size: var(--fz-30);
  }
  .pc-header-menu {
    display: none;
  }
  .sp-header-menu {
    display: block;
  }
  .header-contact {
    display: none;
  }
  .mv .main-copy {
    font-size: var(--fz-30);
  }
}

@media screen and (max-width: 834px) {
  /******************
  * base
  ******************/
  :root {
    --sec-pt: 80px;
    --sec-pb: 80px;
    --sp-50: 40px;
    /* --sp-40: 30px; */
  }
  .sp-br {
    display: block;
  }

  /*******************
  * top
  *******************/
  /* mv-top */
  .mv {
    height: 50vw;
  }
  /* reason */
  .reason-wrapper .group {
    flex-direction: column;
    align-items: center;
  }
  .reason-wrapper h3.sp {
    display: block;
  }
  .reason-wrapper h3.pc {
    display: none;
  }
  .reason-wrapper .left {
    max-width: 600px;
    width: 100%;
  }
  .reason-wrapper .left img {
    margin-top: 20px;
  }
  .reason-wrapper .right {
    margin-left: 0;
    max-width: 600px;
    width: 100%;
  }
  /* example */
  .example-wrapper .group {
    grid-template-columns: 1fr 1fr;
    justify-items: center;
    gap: 40px 20px;
  }
  /* promise */
  #promise .group {
    flex-direction: column;
  }
  #promise .item {
    width: 100%;
  }
  #promise img {
    width: 30%;
  }

  /*********************
  * introduction
  ***********************/
  /* caution-top */
  #caution-top .group {
    flex-direction: column;
  }
  #caution-top .left {
    width: 100%;
  }
  #caution-top .right {
    margin-left: 0;
  }
  #caution-top .caution-img {
    max-width: 80px;
    width: 20%;
    display: block;
    margin: 0 auto;
  }
  #caution-top .right .caution-head {
    margin-top: var(--sp-50);
  }
  /* caution-bottom */
  #caution-bottom .group {
    flex-direction: column;
  }
  #caution-bottom .right {
    margin-left: 0;
    margin-top: var(--sp-50);
    width: 100%;
  }
  #caution-bottom .right img {
    display: block;
    margin: 0 auto;
    max-width: 280px;
    width: 45%;
  }
  /* d-rey-chip */
  #d-rey-chip .features {
    flex-wrap: wrap;
    justify-content: center;
  }
  #d-rey-chip .features .item {
    width: 50%;
  }
  #d-rey-chip .exchange {
    flex-direction: column;
  }
  #d-rey-chip .exchange .left {
    /* margin-top: var(--sp-20); */
    width: 70%;
  }
  #d-rey-chip .exchange .right {
    margin-left: 0;
    margin-top: var(--sp-20);
    width: 70%;
  }
  /* difference */
  .difference-table th,
  .difference-table td {
    display: block;
    width: 100%;
  }
  .difference-table th {
    padding-top: 2em;
  }
  .difference-table td {
    padding-top: 0.5em;
  }
  /* option */
  #difference .group {
    align-items: center;
  }
  /* ifmc */
  #ifmc .group {
    gap: 25px;
  }
  /* merit */
  .merit p {
    margin-left: 30px;
  }
  /********************
  * product 
  ********************/
  .page-link a:not(:first-of-type) {
    margin-left: 15px;
  }
  /********************
  * example
  *******************/
  .category-filter .group {
    justify-content: center;
  }
  .filter-button {
    width: 48%;
  }
  /*********************
  * company 
  **********************/
  .company-table th {
    display: block;
    width: 100%;
  }
  .company-table td {
    display: block;
    width: 100%;
    padding-top: 0;
  }
  /********************
  * contact
  *********************/
  .contact div {
    flex-direction: column;
    align-items: start;
    border-bottom: 0;
  }
  .contact dt {
    width: 100%;
  }
  .contact dt.form7-require::after {
    position: static;
    display: inline-block;
    transform: translateY(0);
    margin-left: 1em;
  }
  .contact dd {
    width: 100%;
    margin-top: 1em;
  }
}

@media screen and (max-width: 480px) {
  /******************
  * base
  ******************/
  :root {
    --sec-pt: 70px;
    --sec-pb: 70px;
  }
  .s-sp-br {
    display: block;
  }
  /*******************
  * header
  **********************/
  .header-top {
    padding-top: 10px;
    padding-bottom: 10px;
  }
  .title-copy {
    display: none;
  }
  .sp-menu-btn {
    width: 40px;
    height: 40px;
    right: 10px;
    top: 10px;
  }
  /*****************
  * top
  ******************/
  /* mv-top */
  .mv {
    height: 60vw;
  }
  /* news */
  .news-item {
    flex-direction: column;
    align-items: start;
  }
  .news-content {
    margin-left: 0;
  }
  /* reason */
  .reason-wrapper h3.sp {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .reason-wrapper span {
    margin-right: 0;
    margin-bottom: 1em;
  }
  /* contact-section */
  #contact p {
    width: fit-content;
    margin: 0 auto;
  }

  #contact p.bottom {
    text-align: left;
  }

  /****************
  * introduction
  ******************/
  /* point */
  #point li p {
    padding-left: 0;
  }
  #point .point::before {
    max-width: 50px;
    margin-right: 15px;
  }
  /* d-rey-chip */
  #d-rey-chip .features .item {
    width: 100%;
  }
  #d-rey-chip .exchange .left {
    width: 100%;
  }
  #d-rey-chip .exchange .right {
    width: 100%;
  }
  /* option */
  #difference .group {
    flex-direction: column;
  }
  #difference .group .left {
    width: 100%;
  }
  #difference .group .right {
    width: 90%;
    margin-top: 20px;
  }
  /* ifmc */
  #ifmc .group {
    gap: 10px;
  }
  /* merit */
  .merit .group img {
    width: 20%;
  }
  .merit p {
    margin-left: 20px;
  }
  /********************
  * product 
  ********************/
  .page-link a:not(:first-of-type) {
    margin-left: 10px;
  }
  .product-top {
    flex-direction: column;
  }
  .product-top .left {
    max-width: 100%;
  }
  .product-top .right {
    margin-left: 0;
    width: 100%;
    margin-top: 1em;
  }
  #dt04 .group {
    flex-direction: column;
  }
  #dt04 .group img {
    width: 100%;
  }
  #dt04 .group img + img {
    margin-top: 1em;
  }
  /* fee */
  #fee .request {
    flex-direction: column;
    justify-content: space-evenly;
  }
  /***********************
  * contact 
  **********************/
  #contact-form .note {
    width: 100%;
  }
  #contact-form .wpcf7-radio label {
    display: flex;
    align-items: center;
  }
  #contact-form .wpcf7-radio label span {
    margin-left: 5px;
  }
}

@media screen and (max-width: 768px) {
}
