@charset "UTF-8";
/*お問い合わせ*/
.ttl_wrap {
  background: url(../images/contact/contact_top_p.jpg) no-repeat center center/cover;
}

span.hs {
  color: #C46C6C;
}

button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  border: none;
  box-sizing: border-box;
  opacity: 1;
  cursor: pointer;
}

::placeholder {
  font-family: "游ゴシック体", "Yu Gothic", "YuGothic", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo, Osaka", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  font-size: 16px;
  color: #666;
  font-weight: 500;
  letter-spacing: 0.09em;
}

::-webkit-input-placeholder {
  color: #666;
  opacity: 1;
}

:-moz-placeholder {
  color: #666;
}

::-moz-placeholder {
  color: #666;
  opacity: 1;
}

:-ms-input-placeholder {
  color: #666;
}

:placeholder-shown {
  color: #666;
}

:focus::-webkit-input-placeholder {
  color: transparent;
}

:focus:-moz-placeholder {
  color: transparent;
}

:focus::-moz-placeholder {
  color: transparent;
}

.contact_box {
  width: 614px;
  margin: 80px auto 0;
}

.contact_box li {
  position: relative;
}

.contact_box li .ttl {
  font-weight: bold;
}

.contact_box li:not(:nth-of-type(1)) {
  margin-top: 35px;
}

.contact_box li label {
  position: absolute;
  opacity: 1;
  top: 23px;
  left: 23px;
  line-height: 1.2em;
  pointer-events: none;
}

.contact_box li > input[type="text"],
.contact_box li > input[type="tel"],
.contact_box li > input[type="email"],
.contact_box li > textarea,
.contact_box li > input[type="password"] {
  width: 100%;
  border: 0;
  padding: 20px 20px 20px 20px;
  background: #F0F0ED;
  font-family: "游ゴシック体", "Yu Gothic", "YuGothic", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo, Osaka", "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  font-size: 16px;
  color: #666;
}

.contact_box li > input[type="text"]:focus,
.contact_box li > input[type="tel"]:focus,
.contact_box li > input[type="email"]:focus,
.contact_box li > textarea:focus,
.contact_box li > input[type="password"]:focus {
  outline: 0;
}

.contact_box li > input[type="text"]:focus + label,
.contact_box li > input[type="tel"]:focus + label,
.contact_box li > input[type="email"]:focus + label,
.contact_box li > textarea:focus + label,
.contact_box li > input[type="password"]:focus + label {
  opacity: 0;
}

.contact_box li > input[type="text"]:valid + label,
.contact_box li > input[type="tel"]:valid + label,
.contact_box li > input[type="email"]:valid + label,
.contact_box li > textarea:valid + label,
.contact_box li > input[type="password"]:valid + label {
  opacity: 0;
}

.contact_box li > input[type="text"]:invalid:not(:focus):not(:placeholder-shown) + label,
.contact_box li > input[type="tel"]:invalid:not(:focus):not(:placeholder-shown) + label,
.contact_box li > input[type="email"]:invalid:not(:focus):not(:placeholder-shown) + label,
.contact_box li > textarea:invalid:not(:focus):not(:placeholder-shown) + label,
.contact_box li > input[type="password"]:invalid:not(:focus):not(:placeholder-shown) + label {
  opacity: 0;
}

.contact_box li textarea {
  height: 245px;
  display: block;
}

.contact_box .pd4 {
  padding: 0 40px;
}

.btn_wrap {
  margin: 100px auto 0;
  width: 430px;
}

.btn_wrap button {
  width: 100%;
  padding: 20px 0;
  text-align: center;
  color: #fff;
  font-size: 16px;
  font-family: "游ゴシック体", "Yu Gothic", "YuGothic", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ";
}

.btn_wrap button.submit, .btn_wrap button.reset {
  background: #555555;
}

.btn_wrap button.sosin {
  background: #678E6C;
  margin-top: 30px;
}

.btn_wrap button:hover {
  opacity: 0.8;
}

.ghome {
  margin: 100px auto 0;
  width: 430px;
}

.ghome a {
  display: block;
  padding: 20px 0;
  background: #555555;
  text-align: center;
  color: #fff;
}

#confirm {
  margin-top: -70px;
  padding-top: 70px;
}

@media (max-width: 999px) and (min-width: 641px) {
  ::placeholder {
    font-size: 1.6vw;
  }
  .contact_box {
    width: 61.4vw;
    margin: 8vw auto 0;
  }
  .contact_box li:not(:nth-of-type(1)) {
    margin-top: 3.5vw;
  }
  .contact_box li label {
    top: 2.3vw;
    left: 2.3vw;
  }
  .contact_box li > input[type="text"],
  .contact_box li > input[type="tel"],
  .contact_box li > input[type="email"],
  .contact_box li > textarea,
  .contact_box li > input[type="password"] {
    padding: 2vw 2vw 2vw 2vw;
    font-size: 1.6vw;
  }
  .contact_box li textarea {
    height: 24.5vw;
  }
  .contact_box .pd4 {
    padding: 0 4vw;
  }
  .btn_wrap {
    margin: 10vw auto 0;
    width: 43vw;
  }
  .btn_wrap button {
    padding: 2vw 0;
    color: #fff;
    font-size: 1.6vw;
  }
  .btn_wrap button.sosin {
    margin-top: 3vw;
  }
  .ghome {
    margin: 10vw auto 0;
    width: 430vw;
  }
  .ghome a {
    padding: 2vw 0;
  }
  #confirm {
    margin-top: -7vw;
    padding-top: 7vw;
  }
}

@media (max-width: 640px) {
  .ttl_wrap {
    background: url(../images/contact/contact_top_s.jpg) no-repeat center center/cover;
  }
  ::placeholder {
    font-size: 3.12vw;
  }
  .contact_box {
    width: 78.12vw;
    margin: 9.3vw auto 0;
  }
  .contact_box li:not(:nth-of-type(1)) {
    margin-top: 9vw;
  }
  .contact_box li label {
    top: 4.5vw;
    left: 4.5vw;
  }
  .contact_box li > input[type="text"],
  .contact_box li > input[type="tel"],
  .contact_box li > input[type="email"],
  .contact_box li > textarea,
  .contact_box li > input[type="password"] {
    width: 100%;
    border: 0;
    padding: 3.9vw 3.9vw 3.9vw 3.9vw;
    font-size: 3.12vw;
  }
  .contact_box li textarea {
    height: 65.6vw;
  }
  .contact_box .pd4 {
    padding: 0 3vw;
  }
  .btn_wrap {
    margin: 18.7vw auto 0;
    width: 67.2vw;
  }
  .btn_wrap button {
    padding: 3.9vw 0;
    font-size: 3.12vw;
  }
  .btn_wrap button.sosin {
    margin-top: 4.6vw;
  }
  .btn_wrap button:hover {
    opacity: 1;
  }
  .btn_wrap button.submit {
    padding: 3.9vw 0;
    font-size: 3.12vw;
  }
  .ghome {
    margin: 18.7vw auto 0;
    width: 67.2vw;
  }
  .ghome a {
    padding: 3.9vw 0;
  }
  #confirm {
    margin-top: -60px;
    padding-top: 60px;
  }
}
