.sec-01 .container h3 {
  font-size: var(--f3);
  line-height: var(--l3);
  margin-bottom: 1.875rem;
}
@media only screen and (max-width: 767px) {
  .sec-01 .container h3 {
    margin-bottom: 1.25rem;
  }
}
.sec-01 .container form {
  width: 37.5rem;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  .sec-01 .container form {
    width: 100%;
  }
}
.sec-01 .container form fieldset {
  border: none;
}
.sec-01 .container form fieldset + fieldset {
  margin-top: 1.25rem;
}
.sec-01 .container form fieldset legend {
  display: block;
  height: 0;
  overflow: hidden;
}
.sec-01 .container form fieldset p + p {
  margin-top: 1.25rem;
}
.sec-01 .container form fieldset .required:after {
  content: "*";
  color: #E74C3C;
}
.sec-01 .container form fieldset label:not(.cb) {
  font-size: var(--f7);
  line-height: var(--l7);
  display: block;
  position: relative;
  font-weight: 500;
  margin-bottom: 0.3125rem;
}
.sec-01 .container form fieldset label + input {
  height: 2rem;
  width: 100%;
  border: none;
  border-bottom: 0.0625rem solid var(--line2);
  font-size: var(--f8);
  line-height: var(--l8);
}
.sec-01 .container form fieldset label + input::-moz-placeholder {
  font-size: 0.875rem;
}
.sec-01 .container form fieldset label + input::placeholder {
  font-size: 0.875rem;
}
.sec-01 .container form fieldset textarea {
  width: 100%;
  height: 11.875rem;
  border: 0.0625rem solid var(--line2);
  resize: none;
}
.sec-01 .container form fieldset input:focus, .sec-01 .container form fieldset textarea:focus {
  outline: none;
}
.sec-01 .container form fieldset input[type=checkbox] {
  display: none;
}
.sec-01 .container form fieldset input[type=checkbox]:checked + label.cb-box {
  border-color: var(--main);
  background: var(--main) url(../../../images/check-w.svg) no-repeat center center/1.125rem auto;
}
.sec-01 .container form fieldset label.cb-box {
  display: inline-block;
  width: 1.375rem;
  height: 1.375rem;
  border: 1px solid var(--line2);
  border-radius: 0.3125rem;
  vertical-align: middle;
  margin-right: 0.3125rem;
}
.sec-01 .container form fieldset span {
  font-size: var(--f8);
  line-height: var(--l8);
  vertical-align: middle;
}
.sec-01 .container form fieldset span strong {
  cursor: pointer;
  font-weight: 700;
}
.sec-01 .container form input[type=submit] {
  margin-top: 1.875rem;
}

.sec-popup {
  display: none;
}
.sec-popup.active {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.3);
}
.sec-popup.active .popup {
  position: relative;
  width: 31.25rem;
  height: 37.5rem;
  padding: 1.25rem;
  background: #fff;
}
@media only screen and (max-width: 767px) {
  .sec-popup.active .popup {
    width: 20rem;
    height: 31.25rem;
  }
}
.sec-popup.active .popup .close {
  position: absolute;
  bottom: calc(100% + 0.625rem);
  right: 0;
  font-size: 1.875rem;
  line-height: 1;
  color: #fff;
  cursor: pointer;
}
.sec-popup.active .popup .content {
  overflow-y: scroll;
  height: 100%;
  width: 100%;
  padding-right: 0.625rem;
}
.sec-popup.active .popup .content::-webkit-scrollbar {
  width: 0.3125rem;
}
.sec-popup.active .popup .content::-webkit-scrollbar-thumb {
  background-color: var(--line1);
}
.sec-popup.active .popup .content::-webkit-scrollbar-track {
  background: var(--bg3);
}
.sec-popup.active .popup .content article {
  display: none;
  line-height: 1.75;
}
.sec-popup.active .popup .content article h4 {
  font-size: var(--f6);
  line-height: var(--l6);
  margin-bottom: 0.625rem;
}