@charset "UTF-8";

/* CSS Document */

.cf7msm-ro {
  margin-top: 15px;
  display: block;
}

.noBr br {
  display: none;
}

@media print, screen and (min-width: 521px) {
  input:invalid {
    border: 2px dashed red;
  }

  .contact-top {
    position: relative;
    width: min(100vw, 1280px);
    height: min(23.4375vw, 300px);
  }
  .contact-top .title-box {
    width: min(30.625vw, 392px);
    float: left;
    height: min(23.4375vw, 300px);
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      sans-serif;
    padding-left: min(6.25vw, 80px);
  }
  .contact-top .title-box .title-en {
    font-size: min(2.8125vw, 36px);
    color: #ce2314;
    font-weight: 600;
    margin-top: min(8.046875vw, 103px);
  }
  .contact-top .title-box .title-jp {
    font-size: min(1.667188vw, 21.34px);
  }
  .contact-top .title-box .sub-title {
    color: #ce2314;
    font-size: min(1.146094vw, 14.67px);
    border: thin solid #ce2314;
    width: min(7.421875vw, 95px);
    height: auto;
    margin-top: min(2.34375vw, 30px);
    text-align: center;
  }

  .contact-top .recuruit-image {
    float: left;
  }
  .contact-message-box {
    width: min(100vw, 1280px);
    background-color: #000000;
  }
  .contact-message-box .message {
    color: #ffffff;
    width: min(84.375vw, 1080px);
    font-size: min(1.667188vw, 21.34px);
    margin-left: min(7.8125vw, 100px);
    padding: 40px 0;
    text-align: left;
  }
  #category-sm {
    height: auto;
    color: #ffffff;
    background-color: #ce2314;
    font-size: min(1.875vw, 24px);
    font-weight: 600;
    margin-left: min(3.125vw, 40px);
    margin-right: min(3.125vw, 40px);
    margin-top: min(6.25vw, 80px);
  }
  #category-sm .link {
    padding-top: min(1.5625vw, 20px);
    text-align: center;
    padding-bottom: min(1.5625vw, 20px);
    position: relative;
  }
  #category-sm .link .arrow {
    position: absolute;
    top: 0;
    right: min(1.5625vw, 20px);
    top: 50%;
    transform: translate(0, -50%);
  }
  #category-ot {
    height: auto;
    color: #ffffff;
    background-color: #ce2314;
    font-size: min(1.875vw, 24px);
    font-weight: 600;
    margin-left: min(3.125vw, 40px);
    margin-right: min(3.125vw, 40px);
    margin-top: min(6.25vw, 80px);
  }
  #category-ot .link {
    padding-top: min(1.5625vw, 20px);
    text-align: center;
    padding-bottom: min(1.5625vw, 20px);
    position: relative;
  }
  #category-ot .link .arrow {
    position: absolute;
    top: 0;
    right: min(1.5625vw, 20px);
    top: 50%;
    transform: translate(0, -50%);
  }
  .c-sendmagic-top {
    position: relative;
  }
  .c-sendmagic-top .c-sendmagic-image {
    position: relative;
  }

  .topImage {
    width: min(69.375vw, 888px);
  }

  .productImage {
    width: 100%;
  }

  .otherImage {
    width: 100%;
  }

  .c-sendmagic-top .title {
    position: absolute;
    color: #ffffff;
    top: min(14.0625vw, 180px);
    left: min(25.78125vw, 330px);
    z-index: 10;
    font-size: min(2.917188vw, 37.34px);
    text-shadow: 3px 3px 3px #000000;
    font-weight: 600;
  }
  .contact-message {
    color: #ce2314;
    text-align: center;
    margin-top: min(6.25vw, 80px);
    font-size: min(1.458594vw, 18.67px);
    font-weight: 600;
  }
  .contact-message2 {
    margin: 42px 0;
    text-align: center;
    font-size: min(1.875vw, 24px);
    font-weight: 600;
  }
  .input-form {
    color: #000000;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      sans-serif;
    font-size: min(1.458594vw, 18.67px);
    font-weight: 600;
    width: min(70.3125vw, 900px);
    margin-left: min(19.53125vw, 250px);
    margin-top: min(1.5625vw, 20px);
    position: relative;
  }
  .input-form .title {
    width: min(19.53125vw, 250px);
    height: min(4.6875vw, 60px);
    padding-top: min(1.5625vw, 20px);
    margin-top: min(1.5625vw, 20px);
    float: left;
  }
  .input-form .title .main {
    float: left;
  }
  .input-form .title .required {
    color: #ffffff;
    font-size: min(1.042188vw, 13.34px);
    background-color: #ce2314;
    width: min(3.515625vw, 45px);
    text-align: center;
    float: left;
    margin-left: min(0.390625vw, 5px);
    height: min(2.34375vw, 30px);
    padding-top: min(0.390625vw, 5px);
  }
  .input-form .input-area {
    height: min(4.6875vw, 60px);
    width: min(50.78125vw, 650px);
    margin-top: min(1.5625vw, 20px);
    border: none;
    background-color: #f4f3f2;
    padding-left: min(0.78125vw, 10px);
    padding-right: min(0.78125vw, 10px);
    float: right;
  }
  .input-form .input-area.input-area-name-total {
    background-color: #ffffff;
    padding: 0;
  }

  .input-form .input-area.input-area-name-total p {
    display: flex;
    justify-content: space-between;
  }

  .input-form .input-area.input-area-name-total p span {
    display: block;
  }

  .input-form .input-area-name {
    height: min(4.6875vw, 60px);
    width: min(24.609375vw, 315px);
    border: none;
    background-color: #f4f3f2;
    padding-left: min(0.78125vw, 10px);
    padding-right: min(0.78125vw, 10px);
    margin-top: min(0vw, 0px);
  }
  .input-form .input-area-check {
    width: min(50.78125vw, 650px);
    margin-top: min(2.34375vw, 30px);
    border: none;
    background-color: #f4f3f2;
    float: left;
    padding-left: min(0.78125vw, 10px);
    padding-top: min(0.78125vw, 10px);
    text-align: left;
  }
  .input-area-check label .checkbox {
    height: min(3.125vw, 40px);
  }
  .input-form .input-area-freetext {
    width: min(50.78125vw, 650px);
    margin-top: 5%;
    border: none;
    background-color: #f4f3f2;
    float: left;
    padding-top: 5%;
    padding-left: min(0.78125vw, 10px);
    padding-right: 3%;
    padding-bottom: 1%;
  }
  .input-form .privacy-msg {
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      sans-serif;
    font-size: min(1.458594vw, 18.67px);
    font-weight: 600;
    color: #000000;
    text-align: center;
    margin-top: min(4.6875vw, 60px);
    height: min(6.25vw, 80px);
    width: min(70.3125vw, 900px);
    float: left;
  }
  .input-form .privacy-box {
    text-align: left;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      sans-serif;
    font-size: min(1.042188vw, 13.34px);
    margin-top: min(3.125vw, 40px);
    padding-top: min(1.5625vw, 20px);
    border: thin solid #000000;
    height: min(15.625vw, 200px);
    overflow-x: scroll;
    overflow-y: scroll;
  }
  .input-form .privacy-box .about-privacy {
    text-align: center;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      sans-serif;
    font-size: min(1.458594vw, 18.67px);
  }
  .input-form .privacy-checkbox {
    padding-top: min(0vw, 0px);
    margin-top: min(3.125vw, 40px);
    margin-left: min(19.53125vw, 250px);
  }
  .input-form .buttons {
    width: min(50vw, 640px);
    margin-left: min(10.15625vw, 130px);
    margin-top: min(6.25vw, 80px);
  }
  .input-form .buttons .return-bt {
    width: min(23.4375vw, 300px);
    height: min(4.6875vw, 60px);
    text-align: center;
    margin-top: min(0vw, 0px);
    padding-top: min(1.171875vw, 15px);
    background-color: #ce2314;
    color: #ffffff;
    float: left;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      sans-serif;
    font-size: min(1.458594vw, 18.67px);
  }
  .input-form .buttons .send-bt {
    width: min(23.4375vw, 300px);
    height: min(4.6875vw, 60px);
    text-align: center;
    margin-top: min(0vw, 0px);
    background-color: #000000;
    color: #ffffff;
    float: right;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      sans-serif;
    font-size: min(1.458594vw, 18.67px);
  }
  .input-form .buttons .return-bt-middle {
    width: min(23.4375vw, 300px);
    height: min(4.6875vw, 60px);
    text-align: center;
    margin-top: min(6.25vw, 80px);
    padding-top: min(1.171875vw, 15px);
    background-color: #ce2314;
    color: #ffffff;
    float: left;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      sans-serif;
    font-size: min(1.458594vw, 18.67px);
  }
  .input-form .buttons .return-bt-middle-product,
  .input-form .buttons .return-bt-middle-recruit {
    width: min(23.4375vw, 300px);
    height: min(4.6875vw, 60px);
    text-align: center;
    margin-top: min(6.25vw, 80px);
    padding-top: min(0.546875vw, 7px);
    background-color: #ce2314;
    color: #ffffff;
    float: left;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      sans-serif;
    font-size: min(1.458594vw, 18.67px);
  }
  .input-form .buttons .send-bt-middle {
    width: min(23.4375vw, 300px);
    height: min(4.6875vw, 60px);
    text-align: center;
    margin-top: min(6.25vw, 80px);
    background-color: #000000;
    color: #ffffff;
    float: right;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      sans-serif;
    font-size: min(1.458594vw, 18.67px);
  }
}

@media only screen and (min-width: 0px) and (max-width: 520px) {
  input:invalid {
    border: 2px dashed red;
  }

  .contact-top {
    position: relative;
    width: 100%;
    display: block;
  }
  .contact-top .title-box {
    width: 100%;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      sans-serif;
    padding-left: 7%;
    padding-bottom: 5%;
  }
  .contact-top .title-box .title-en {
    font-size: 6vw;
    color: #ce2314;
    font-weight: 600;
    margin-top: 4%;
  }
  .contact-top .title-box .title-jp {
    font-size: 3vw;
  }

  .image-box {
    width: 100%;
    height: 100%;
  }

  .c-image {
    width: 100%;
    height: 100%;
  }

  #category-sm {
    width: 100%;
    color: #ffffff;
    font-size: 4.5vw;
    font-weight: 600;
    padding-left: 3%;
    padding-right: 3%;
    margin-top: 5%;
  }
  #category-sm .link {
    width: 100%;
    text-align: center;
    background-color: #ce2314;
  }

  #category-ot {
    width: 100%;
    color: #ffffff;
    font-weight: 600;
    padding-left: 3%;
    padding-right: 3%;
    margin-top: 5%;
    margin-bottom: 5%;
  }

  #category-ot .link {
    width: 100%;
    text-align: center;
    background-color: #ce2314;
  }

  .titlkeArea {
    position: relative;
    padding-top: 14px;
    padding-bottom: 10px;
    font-size: 14px;
  }

  .titlkeArea .arrow {
    position: absolute;
    top: 50%;
    right: 0px;
    transform: translate(-50%, -50%);
  }
  .contact-message-box {
    width: 100%;
    background-color: #000000;
    padding-left: 5%;
    padding-right: 5%;
    padding-top: 10%;
    padding-bottom: 10%;
    /* display: none !important; */
  }
  .contact-message-box.none {
    display: none !important;
  }
  .contact-message-box .message {
    color: #ffffff;
    width: 100%;
    font-size: 3vw;
    text-align: left;
  }
  .contact-message2 {
    margin: 42px 0;
    text-align: center;
    font-size: 24px;
    font-weight: 600;
  }
  .c-sendmagic-top {
    position: relative;
  }
  .c-sendmagic-top .c-sendmagic-image {
    position: relative;
  }
  .c-sendmagic-top .title {
    position: absolute;
    color: #ffffff;
    top: 40%;
    left: 7%;
    z-index: 10;
    font-size: 6vw;
    text-shadow: 3px 3px 3px #000000;
    font-weight: 600;
  }
  .contact-message {
    color: #ce2314;
    text-align: center;
    margin-top: 10%;
    font-size: 2.6vw;
    font-weight: 600;
  }
  .input-form {
    color: #000000;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      sans-serif;
    font-size: 18.67px;
    font-weight: 600;
    width: 100%;
    margin-left: 7%;
    margin-top: 5%;
    position: relative;
  }
  .input-form .title {
    width: 100%;
    padding-top: 2%;
    margin-top: 2%;
    float: left;
  }
  .input-form .title .main {
    float: left;
  }
  .input-form .title .required {
    color: #ffffff;
    font-size: 2.5vw;
    background-color: #ce2314;
    text-align: center;
    float: left;
    margin-left: 1%;
    padding: 1%;
    margin-top: 1%;
  }
  .input-form .title .required p {
    margin: 0;
  }

  .input-form .input-area {
    width: 85%;
    border: none;
    background-color: #f4f3f2;
    padding: 10px;
    float: left;
    margin-bottom: 1%;
  }

  .input-form .input-area.input-area-name-total {
    background-color: #ffffff;
    padding: 0;
  }

  .input-form .input-area.input-area-name-total p {
    display: flex;
    justify-content: space-between;
  }

  .input-form .input-area.input-area-name-total p span {
    display: block;
  }

  .input-form .input-area p {
    margin: 0;
  }
  .input-form .input-area-name {
    width: 95%;
    border: none;
    background-color: #f4f3f2;
    padding-right: 5%;
    margin-top: 0px;
    padding: 10px;
  }
  .input-form .input-area-check {
    width: 85%;
    border: none;
    background-color: #f4f3f2;
    float: left;
    padding-left: 5%;
    padding-top: 5%;
    text-align: left;
  }

  .input-form .input-area-freetext {
    width: 85%;
    margin-top: 5%;
    border: none;
    background-color: #f4f3f2;
    float: left;
    padding-top: 5%;
    padding-left: 5%;
    padding-right: 5%;
    padding-bottom: 10%;
  }

  .input-form .input-area-freetext p {
    margin: 0;
  }

  .input-form .input-area-freetext textarea {
    width: 100%;
  }
  .input-form .privacy-msg {
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      sans-serif;
    font-size: 2.6vw;
    font-weight: 600;
    color: #000000;
    text-align: left;
    margin-top: 10%;
    width: 84%;

    float: left;
  }
  .input-form .privacy-box {
    text-align: left;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      sans-serif;
    font-size: 2vw;
    margin-top: 5%;
    padding-top: 5%;
    border: thin solid #000000;
    height: 200px;
    width: 290px;
    overflow-x: scroll;
    overflow-y: scroll;
  }
  .input-form .privacy-box .about-privacy {
    text-align: center;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      sans-serif;
    font-size: 2.6vw;
  }
  .input-form .privacy-checkbox {
    padding-top: 0px;
    margin-top: 5%;
    margin-left: 5%;
    font-size: 2.6vw;
    width: 100%;
    text-align: left;
  }
  .input-form .buttons {
    width: 100%;
    padding-bottom: 5%;
    padding-top: 5%;
    margin-bottom: 5%;
    margin-left: -7%;
    clear: both;
  }
  .input-form .buttons p {
    margin: 0;
  }
  .input-form .buttons .return-bt {
    width: 60%;
    text-align: center;
    margin-top: 0px;
    padding-top: 1%;
    background-color: #ce2314;
    color: #ffffff;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      sans-serif;
    font-size: 2.4vw;
    margin: 0 auto;
    padding: 10px;
    margin-bottom: 10px;
    display: block;
  }
  .input-form .buttons .return-bt-middle,
  .input-form .buttons .return-bt-middle-product,
  .input-form .buttons .return-bt-middle-recruit {
    width: 60%;
    text-align: center;
    margin-top: 0px;
    padding-top: 1%;
    background-color: #ce2314;
    color: #ffffff;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      sans-serif;
    font-size: 2.4vw;
    margin: 0 auto;
    padding: 10px;
    margin-bottom: 10px;
    display: block;
  }

  .input-form .buttons .return-bt p {
    margin: 0;
  }

  .input-form .buttons .send-bt {
    width: 60%;
    text-align: center;
    margin-top: 0px;
    padding-top: 1%;
    background-color: #000000;
    color: #ffffff;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      sans-serif;
    font-size: 2.4vw;
    display: block;
    margin: 0 auto;
    padding: 10px;
  }
  .input-form .buttons .send-bt-middle {
    width: 60%;
    text-align: center;
    margin-top: 0px;
    padding-top: 1%;
    background-color: #000000;
    color: #ffffff;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,
      sans-serif;
    font-size: 2.4vw;
    display: block;
    margin: 0 auto;
    padding: 10px;
  }
  .input-form input,
  .input-form textarea {
    font-size: 0.9rem;
  }
  .input-form input[type="submit"] {
    border-radius: 0;
  }

  .email-size {
    width: 50%;
    height: 50%;
  }
}
