@charset "UTF-8";

/* h1装飾  */
.contact_h1_area {
  display: inline-block;
  margin-top: 0rem;
  z-index: 2;
  position: relative;
padding-top: 0;
top: 0;
left: 0;
right: 100%;
transform: translate(-20%, 20%);

}
.h1_haichi {
  margin-right: 5%;
  max-width: 1920px;
margin-left: auto;
margin-right: auto;
}
.h1_haichi h1 {
  margin-bottom:0;
    }
    .h1_haichi img {
      max-width: 50%;
      }

/*  h1英語 */
.contact_h1_en {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(30%,130%);
}

.contact_h1_en img {
  width: 100%;
}

@media (min-width:750px) {
  .contact_h1_area {
  top: 0;
  left: 50%;
  transform: translate(-50%, 40%);
  margin-bottom: 0rem;
  padding-top: 0;
  }
  .h1_haichi h1 {
  margin-bottom:0;
  }
  .h1_haichi img {
  max-width: 40%;
  }

  .contact_h1_en {
    position: absolute;
    top: 50%;
    left: 50%;
    bottom: auto;
    left: auto;
    transform: translate(50%,140%);
  }

  .contact_h1_en img {
    width: 30%;
  }
}

@media (min-width:1000px) {
  .contact_h1_area {
  transform: translate(-50%, 40%);
  }
  .h1_haichi img {
  max-width: 70%;
  }

  .contact_h1_en {
    position: absolute;
    top: 50%;
    left: 50%;
    bottom: auto;
    left: auto;
    transform: translate(70%,300%);
  }

  .contact_h1_en img {
    width: 40%;
  }
}

@media (min-width:1400px) {
.contact_h1_area {
  margin-top: 0;
  transform: translate(-50%, 60%);
}
.h1_haichi img {
  max-width: 90%;
  }
  
  .contact_h1_en {
    position: absolute;
    top: 50%;
    left: 50%;
    bottom: auto;
    left: auto;
    transform: translate(80%,300%);
  }

  .contact_h1_en img {
    width: 50%;
  }
}

.top_nami_area {
  background: url(images/contact_nami_sp.svg);
background-size: 100%;
background-repeat: no-repeat;
background-position: 0 6%;
padding-top: 40%;
}

@media (min-width:750px) {
.top_nami_area {
  background: url(images/contact_nami.svg);
background-size: 100%;
background-repeat: no-repeat;
background-position: 0 10%;
padding-top: 35%;
}
}

.container-content {
  width: 85%;
  margin: 0 auto 2rem auto;
}

.kakomi {
background-color:#ecfde6;
}

.kakomi p {
font-size:1.2rem;
}

h2 {
font-size:1.5rem;
border-bottom:dotted #090 1px;
}

strong {
color:#000;
}

.form_area {
  margin: 2rem 0;
  padding: 0 15px 35px 15px;
  background-color: #f1f1f1;
  border: 2px solid #fff;
  border-radius: 20px;
  width: 100%;
  margin: 0 auto;
}

form {
  text-align: left;
  padding: 0 0;
}

h3 {
  text-align: left;
  margin: 20px 0 0 0;
}

.h3 {
  margin: 1rem 0;
  font-size: 1.3rem;
  font-weight: bold;
  font-family: arial, sans-serif;
  text-align: center;
  text-align: left;
  margin: 20px 0 0 0;
}

/* 必須項目 */
.form_area strong {
  color: red;
  margin-left: 0.5rem;
  font-size: 0.9rem;
}

/* フォーム入力欄 */
input[type="password"],
input[type="text"],
input[type="tel"],
input[type="email"] {
  box-sizing: border-box;
  width: 100%;
  padding: 15px;
  margin: 3px 0;
  font-size: 0.9rem;
  border: 1px solid #ccc;
  border-radius: 5px;
}

@media (min-width:750px) {

input#zip3 {
  width: 30%;
}

}

select {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  text-transform: none;
}

select {
  display: block;
  width: 100%;
  padding: 0.575rem 2.25rem 0.575rem 0.75rem;
  -moz-padding-start: calc(0.75rem - 3px);
  font-size: 1rem;
  line-height: 1.5;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 16px 12px;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input[name="zip"] {
  width: unset;
}

/* 備考欄 */
textarea {
  box-sizing: border-box;
  padding: 15px;
  width: 100%;
  font-family: sans-serif;
  font-size: 0.9rem;
  border: 2px solid #ccc;
}

/*フォームボタン*/
.form_btn {
  margin-top: 2rem;
  text-align: center;
}

input[type="submit"] {
  display: inline-block;
  padding: 1rem 2rem;
  color: #fff;
  font-size: 1rem;
  border: unset;
  border-radius: 100vh;
  background-color: #39f;
}

input[type="submit"]:hover {
  background-color: #06f;
}

@media (min-width:600px) {

  /* メールフォーム */
  .form_area {
    padding: 20px 60px 35px 60px;
  }

}

  .form_area p {
    margin: 0;
    padding: 0;
  }
