@charset "UTF-8";
/* ------------------------------
　　お問い合わせ
------------------------------ */
.contact-form,
.comeback-form {
  width: 100%;
  padding: 0;
  list-style: none; }
  .contact-form td, .contact-form th,
  .comeback-form td,
  .comeback-form th {
    padding: 15px 0; }
    @media screen and (max-width: 767px) {
      .contact-form td, .contact-form th,
      .comeback-form td,
      .comeback-form th {
        display: block; } }
  @media screen and (min-width: 768px) {
    .contact-form th,
    .comeback-form th {
      width: 30%;
      text-align: left; } }
  @media screen and (max-width: 767px) {
    .contact-form th,
    .comeback-form th {
      border: 0;
      text-align: left;
      padding-bottom: 0; } }

.comeback-form-group {
  border-bottom: 1px solid #FF9505;
  padding: 1em 0 1.5em; }
  .comeback-form-group.-last {
    border-bottom: none; }

.contact-form-label {
  display: block;
  text-align: left;
  margin: 0;
  padding: 10px 10px 0 10px;
  font-weight: normal;
  color: #20A0E3;
  font-weight: bold; }

.comeback-form-label {
  display: block;
  text-align: left;
  margin: 0;
  padding: 10px 10px 0 10px;
  font-weight: bold; }

.contact-form-control,
.comeback-form-control {
  display: block;
  padding: 10px; }

.contact-form-grid {
  margin: 0 -5px; }

.contact-form-col,
.acms-entry .contact-form-col {
  margin: 0 0 10px 0;
  padding: 0 5px; }
  .contact-form-col:last-child,
  .acms-entry .contact-form-col:last-child {
    margin: 0; }

@media screen and (min-width: 768px) {
  .contact-form {
    display: table;
    width: 100%; }

  .contact-form-group {
    display: table-row; }

  .contact-form-label,
  .contact-form-control {
    display: table-cell; }

  .contact-form-label {
    width: 25%;
    padding: 25px 15px 15px 15px;
    vertical-align: top; }

  .contact-form-control {
    width: 75%;
    padding: 15px; }

  .contact-form-col {
    margin: 0; } }
.contact-box input[type="text"],
.contact-box input[type="number"],
.contact-box input[type="email"],
.contact-box input[type="tel"],
.contact-box textarea {
  border: 1px solid #CBEBFC;
  border-radius: 3px;
  background: #fff;
  box-shadow: none;
  padding: 1em 1.5em !important; }
  .contact-box input[type="text"]:hover,
  .contact-box input[type="number"]:hover,
  .contact-box input[type="email"]:hover,
  .contact-box input[type="tel"]:hover,
  .contact-box textarea:hover {
    border: 1px solid rgba(0, 0, 0, 0.2); }

.comeback-box input[type="text"],
.comeback-box input[type="number"],
.comeback-box input[type="email"],
.comeback-box input[type="tel"],
.comeback-box textarea {
  border: 1px solid #A7A7AA;
  border-radius: 3px;
  background: #fff;
  box-shadow: none;
  padding: 1em 1.5em !important; }
  .comeback-box input[type="text"]:hover,
  .comeback-box input[type="number"]:hover,
  .comeback-box input[type="email"]:hover,
  .comeback-box input[type="tel"]:hover,
  .comeback-box textarea:hover {
    border: 1px solid rgba(0, 0, 0, 0.2); }

/* 送信ボタン
------------------------------ */
.form-btn-box {
  margin: 0 10px;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center; }
  .form-btn-box .btn-form, .form-btn-box .btn-back {
    display: inline-block;
    background: #FF9D00;
    border: none;
    border-radius: 60px;
    padding: 1.5em;
    color: #fff;
    width: 100%;
    font-weight: bold;
    font-size: 24px;
    max-width: 420px;
    margin: 2em auto; }
  .form-btn-box .form-btn {
    width: 45%;
    margin: 2em 1em; }
    @media screen and (max-width: 767px) {
      .form-btn-box .form-btn {
        width: 80%; } }
    .form-btn-box .form-btn .btn-form, .form-btn-box .form-btn .btn-back {
      margin: 0; }

.form-btn-return {
  float: left; }

.form-btn-send {
  float: right; }

@media screen and (min-width: 768px) {
  .form-btn-return {
    float: none; }

  .form-btn-send {
    float: none;
    max-width: 360px;
    width: 100%; } }
/* ラベル
------------------------------ */
.label-required {
  margin: 0 5px;
  padding: 2px 1em;
  color: #FFF;
  font-size: 14px;
  border-radius: 1em;
  background: #51C0FA;
  line-height: 1.2;
  font-weight: normal;
  border-radius: 1em;
  font-weight: bold; }

.label-required-red {
  margin: 0 5px 0 1.5em;
  padding: 2px 1em;
  color: #CC4848;
  font-size: 13px;
  border-radius: 1em;
  border: 1px solid #CC4848;
  line-height: 1.2;
  font-weight: normal;
  border-radius: 1em; }

@media screen and (min-width: 768px) {
  .label-required {
    float: right; } }
/* フォーム要素
------------------------------ */
.contact-box select,
.comeback-box select {
  background-color: #fff; }
  .contact-box select[required]:required,
  .comeback-box select[required]:required {
    border: 1px solid #C49511; }
  .contact-box select.focused:invalid,
  .comeback-box select.focused:invalid {
    border: 1px solid #c41134; }
  .contact-box select[required]:valid,
  .comeback-box select[required]:valid {
    border: 1px solid #A7A7AA; }
.contact-box input[required]:required,
.contact-box textarea[required]:required,
.comeback-box input[required]:required,
.comeback-box textarea[required]:required {
  background: #FFFDEB; }
.contact-box input.focused:invalid,
.contact-box textarea.focused:invalid,
.comeback-box input.focused:invalid,
.comeback-box textarea.focused:invalid {
  background: #FFEBEE; }
.contact-box input[required]:valid,
.contact-box textarea[required]:valid,
.comeback-box input[required]:valid,
.comeback-box textarea[required]:valid {
  background: #FFF; }
.contact-box input[type="text"],
.contact-box input[type="password"],
.contact-box input[type="datetime"],
.contact-box input[type="datetime-local"],
.contact-box input[type="date"],
.contact-box input[type="month"],
.contact-box input[type="time"],
.contact-box input[type="week"],
.contact-box input[type="number"],
.contact-box input[type="email"],
.contact-box input[type="url"],
.contact-box input[type="search"],
.contact-box input[type="tel"],
.comeback-box input[type="text"],
.comeback-box input[type="password"],
.comeback-box input[type="datetime"],
.comeback-box input[type="datetime-local"],
.comeback-box input[type="date"],
.comeback-box input[type="month"],
.comeback-box input[type="time"],
.comeback-box input[type="week"],
.comeback-box input[type="number"],
.comeback-box input[type="email"],
.comeback-box input[type="url"],
.comeback-box input[type="search"],
.comeback-box input[type="tel"] {
  font-size: 16px;
  padding: 14px 5px 10px 5px; }
.contact-box textarea,
.comeback-box textarea {
  font-size: 16px;
  padding: 5px 5px 4px; }
.contact-box select,
.comeback-box select {
  font-size: 16px;
  padding: 11px 30px 11px 10px;
  vertical-align: top; }
