.container{
  border: none;
  color: #031020;
  max-width: 1000px;
  padding: 0 4vw;
}
.sechead-h2 {
  border-bottom: 3px solid #CB5366;
  font-size: 4.8vw;
  font-weight: bold;
  padding-top: 12.33vw;
  margin-bottom: 8vw;
  padding-bottom: 1.07vw;
  color: #031020;
}
.preview-block {
    padding-top: 30px;
    padding-bottom: 7px;
    margin-bottom: 0;
}

@media (min-width: 769px) {
  .container{
    padding: 0;
  }
  .sechead-h2 {
    font-size: 20px;
  padding-top: 100px;
    margin: 0 0 34px;
    padding-bottom: 8px;
  }
}
.caption{
  margin-top: 0.5em;
  font-size: 92%;
  text-indent: -1em;
  padding-left: 1em;
}
.caption::before{
  content: "※";
  display: inline-block;
  text-indent: 0;
}
.form-column-name,
.form-column-zip-code-jp,
.form-column-text,
.form-column-tel,
.form-column-email{
  position: relative;
  border-bottom: dotted 1px #CCCCCC;
  padding: 1.4em 0;
  margin-bottom: 0;
}
.form-column-name label,
.form-column-zip-code-jp label,
.form-column-text label,
.form-column-tel label,
.form-column-email label{
  font-size: 108%;
}
.badge-required{
  color: #fff;
  background-color: #B20C0C;
  padding: 0.3em 0.5em;
  line-height: 1em;
  border-radius: 0.2em;
  font-size: 78%;
  vertical-align: middle;
  font-weight: normal;
}
.form-column .description-block{
  color: #222222;
}
.form-column input[type="text"],
.form-column input[type="tel"],
.form-column input[type="email"]{
  border: solid 1px #D9E1E1;
  padding: 0.5em 1em;
  border-radius: 0.2em;
}
.form-column label + input[type="text"]{
  width: 100%;
}
@media (min-width: 769px) {
  .form-column-name,
  .form-column-zip-code-jp,
  .form-column-text,
  .form-column-tel,
  .form-column-email{
    border-bottom: dotted 2px #CCCCCC;
  }
  .form-column-name label,
  .form-column-zip-code-jp label,
  .form-column-text label,
  .form-column-tel label,
  .form-column-email label{
    position: absolute;
    left: 0;
    top: 1.3em;
  }
  .form-column label + input,
  .form-column label + .input-group,
  .form-column input + .description-block{
    margin-left: 430px;
  }
  .badge-required{
    font-size: 100%;
  }
  .form-column label + input[type="text"]{
    width: 540px;
  }
}
.form-headline{
  text-align: center;
  margin: 4em 0 2em;
  line-height: 2em;
  font-size: 108%;
}
.attentionTxt{
  border: solid 1px #CCCCCC;
  padding: 1.5em 2em;
  overflow-y: scroll;
  height: 10em;
}
fieldset{
  border: none;
  text-align: center;
  font-size: 108%;
  margin: 2em 0;
}
fieldset .label{
  display: none;
}
.input-group label{
  cursor: pointer;
}
.input-group input[type="checkbox"]{
  width: 1.2em;
  height: 1.2em;
  cursor: pointer;
  vertical-align: text-bottom;
  border-radius: 0.1em;
  margin-right: 0.2em;
}
.button-group{
  text-align: center;
  padding-bottom: 2em;
}
.button-group button{
  margin: 1em 2em;
  background: #CB5366;
  box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.3);
  border-radius: 4px;
  border-radius: 9999px;
  color: #fff;
  display: inline-block;
  position: relative;
  font-weight: bold;
  padding: 1.5em 3em;
  min-width: 80vw;
  text-align: center;
  font-size: 3.8vw;
}
.button-group button::after{
  content: "";
  display: block;
  width: 0.5em;
  height: 0.5em;
  border-top:solid 2px #fff;
  border-right:solid 2px #fff;
  transform: rotate(45deg);
  position: absolute;
  right: 2em;
  top: calc(50% - 0.25em);
}
@media (min-width: 769px) {
  .button-group button{
    font-size: 18px;
    padding: 1em 4em;
    min-width: 5em;
  }
}