@charset "UTF-8";
.container {
  margin: 0 auto;
  width: min(750px, 100%);
}
#contact {
  background-color: #fff;
  padding: min(40px, 5.3333333333vw);
  border-radius: min(10px, 1.3333333333vw);
  box-shadow: 0 0 min(20px, 2.6666666667vw) rgba(0, 0, 0, 0.1);
  text-align: left;
}
#contact .form-cover {
  margin-bottom: min(60px, 8vw);
}
#contact legend {
  font-weight: 700;
}
#contact fieldset {
  border: none;
}
#contact fieldset > div:not(:first-child):not(:last-child) {
  display: grid;
  row-gap: min(30px, 4vw);
}
#contact fieldset > div:not(:first-child) {
  margin-top: min(30px, 4vw);
}
#contact .title {
  text-align: center;
  font-size: min(60px, 8vw);
  margin-bottom: min(64px, 8.5333333333vw);
}
#contact .label {
  display: grid;
  grid-template-columns: repeat(2, max-content);
  align-items: center;
  -moz-column-gap: min(10px, 1.3333333333vw);
  column-gap: min(10px, 1.3333333333vw);
}
#contact .label label {
  font-size: min(32px, 4.2666666667vw);
  font-weight: 600;
}
#contact .label span {
  color: #fff;
  font-size: min(24px, 3.2vw);
  padding: min(6px, 0.8vw) min(10px, 1.3333333333vw);
  border-radius: min(10px, 1.3333333333vw);
}
#contact .required {
  background-color: #f44336;
  font-weight: 700;
}
#contact .policy {
  display: grid;
  grid-template-columns: repeat(4, max-content);
  align-items: center;
  margin: min(30px, 4vw) 0 min(60px, 8vw);
}
#contact .policy span {
  margin-left: min(10px, 1.3333333333vw);
  color: #fff;
  font-size: min(24px, 3.2vw);
  padding: min(6px, 0.8vw) min(10px, 1.3333333333vw);
  border-radius: min(10px, 1.3333333333vw);
}
#contact .policy label {
  font-size: min(32px, 4.2666666667vw);
}
#contact .policy a {
  text-decoration: underline;
  font-weight: 600;
}
#contact input,
#contact select,
#contact textarea {
  width: calc(100% - min(20px, 2.6666666667vw));
  height: min(96px, 12.8vw);
  padding: min(16px, 2.1333333333vw) min(24px, 3.2vw);
  border: min(2px, 0.2666666667vw) solid #ccc;
  border-radius: min(6px, 0.8vw);
  font-size: min(36px, 4.8vw);
}
#contact input[type="checkbox"] {
  padding: 0;
  width: min(40px, 5.3333333333vw);
  height: min(40px, 5.3333333333vw);
  margin-right: min(20px, 2.6666666667vw);
  appearance: auto;
}
#contact select {
  border: min(2px, 0.2666666667vw) solid #ccc;
  border-radius: min(6px, 0.8vw);
  font-size: min(36px, 4.8vw);
  background: #fff;
}
#contact .submit {
  width: calc(100% - min(20px, 2.6666666667vw));
  margin: min(40px, 5.3333333333vw) 0;
}
#contact .submit:hover {
  background-color: #0fd7f9;
}
#contact .submit input {
  width: 100%;
  font-size: min(40px, 5.3333333333vw);
  color: #fff;
  font-weight: 700;
  background: #00bcd4;
  border: none;
}
#contact .submit input:hover {
  background: #0fd7f9;
}
#contact .submit input .optional {
  background-color: #78909c;
  font-weight: 700;
}
#contact textarea {
  height: min(160px, 21.3333333333vw);
}
