.main-content{
  max-width: 1024px;
  margin: 0 auto;
  padding: 2.0rem 0.1rem 6.0rem;
}
.form-content{
  max-width: 700px;
  margin: 0 auto;
}
@media screen and (max-width:640px){
  .main-content{
      margin: 0 1.0rem;
  }
}
h1{
  font-size: 2.8rem;
  font-size: 28px;
  line-height: 1.2;
  margin: 1.6rem 0;
  width: calc(100% - 160px);
  padding-left: 160px;
  text-align: center;
}

.error_message{
  color: #FF3E01;
  font-weight: bold;
  display: block;
}
dl{
  margin: 2.0rem 0;
  font-size: 1.4rem;
  font-size: 14px;
}
dl input[type="text"]{
  width: 100%;
}
.confirm-btn-bloc{
  justify-content:space-around;
}
@media screen and (min-width: 641px){
  .confirm-btn-bloc > form{
      width: 44%;
  }
}
.confirm-btn-bloc input[type="submit"]{
  width: 100%;
  margin-bottom: 2.0rem;
}
.first-performance{
font-size: 1.6rem;
font-size: 16px;
font-weight: bold;
}
.first-performance span{
font-size: 1.2rem;
font-size: 12px;
font-weight: normal;
}
.return-mail{
font-size: 2.0rem;
font-size: 20px;
}
/* ================================= */
/* dl table Layout */
/* ================================= */
dl{
  display:flex;
  flex-wrap: wrap;
  border-bottom: 1px dotted #6B645F;
  border-top: none;
}
dt{
  background: #FFF9FC;
  width: 30%;
  padding: 10px;
  box-sizing: border-box;
  text-align: center;
  border-top: 1px dotted #6B645F; 
}
dd{
  padding: 10px;
  margin: 0;
/*   border-left: 1px solid #ccc;*/
  border-top: 1px dotted #6B645F;  
  width: 70%;
/*   background: #fff; */
  box-sizing: border-box;
}
@media screen and (max-width: 640px) {
  dl{
    flex-flow: column nowrap;
  }
  dd{
      border-top: none;
  }
  dt,
  dd{
    width: 100%;
  }
  dd{
    border-left: none;
  }
}
/* ================================= */
/* Form Appearance */
/* ================================= */
/*Appearance Reset*/
/*elase radio, checkbox and pulldown arrow */
input, button, textarea, select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
/*Appearnce Reset + alpha*/
input, button, textarea, select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/* Placeholder text color */
/* Chrome */
::-webkit-input-placeholder {
  color: #3498db;
}
input:focus::-webkit-input-placeholder,
textarea:focus::-webkit-input-placeholder {
    color: transparent;
    transition: .1s;
}
/* Firefox */
::-moz-placeholder {
  color: #3498db;
}
input:focus:-moz-placeholder,
textarea:focus:-moz-placeholder {
    color: transparent;
    transition: .1s;
}

/* IE */
:-ms-input-placeholder {
  color: #3498db;
}
input:focus::placeholder,
textarea:focus::placeholder {
    color: transparent;
    transition: .1s;
}


/* Border for text and text */
input[type="text"],
textarea{
  border: 1px solid #aaa;
  padding: .5em;
}
/* @focus */
input[type="text"]:focus,
textarea:focus{
  box-shadow: 0 0 7px #1abc9c;
    border: 1px solid #1abc9c;
}

label {
    margin-right: 1.5em;
}
/* checkbox */
.checkbox input[type="checkbox"] {
display: none;
}
.checkbox label {
position: relative;
display: inline-block;
padding: 3px 3px 3px 22px;
cursor: pointer;
-webkit-transition: all .2s;
transition: all .2s;
}
.checkbox label::before,
.checkbox label::after {
position: absolute;
content: '';
-webkit-transition: all .2s;
transition: all .2s;
}
.checkbox label::before {
top: 50%;
left: 0;
width: 14px;
height: 14px;
margin-top: -8px;
background: #f4f4f4;
border: 1px solid #ccc;
border-radius: 3px;
}
.checkbox label::after {
opacity: 0;
top: 50%;
left: 3px;
width: 8px;
height: 4px;
margin-top: -4px;
border-left: 2px solid #3498db;
border-bottom: 2px solid #3498db;
-webkit-transform: rotate(-45deg) scale(.5);
transform: rotate(-45deg) scale(.5);
}
.checkbox label:hover::before {
background: #fff;
}
.checkbox input[type="checkbox"]:checked + label::before {
background: #fff;
border: 1px solid #3498db;
}
.checkbox input[type="checkbox"]:checked + label::after {
opacity: 1;
-webkit-transform: rotate(-45deg) scale(1);
transform: rotate(-45deg) scale(1);
}
/* input button */
input[type="submit"]{
  background: #D57DAA;
  border: none;
  padding: 0.8rem 8.0rem;
  color: #FFF;
  border-radius: 0.2rem;
  cursor: pointer;
}
input[type="submit"]:hover{
  background: #d85aa4;
  color: #FFF;
}
@media screen and (max-width: 640px){
  input[type="submit"]{
      width: 100%;
  }
}
/* Radio button */
.radio input[type="radio"] {
display: none;
}
.radio label {
position: relative;
display: inline-block;
padding: 3px 3px 3px 20px;
cursor: pointer;
}
.radio label::before,
.radio label::after {
position: absolute;
content: '';
top: 50%;
border-radius: 100%;
-webkit-transition: all .2s;
transition: all .2s;
}
.radio label::before {
left: 0;
width: 16px;
height: 16px;
margin-top: -8px;
background: #f3f3f3;
border: 1px solid #ccc;
}
.radio label:hover::before {
background: #fff;
}
.radio label::after {
opacity: 0;
left: 4px;
width: 8px;
height: 8px;
margin-top: -4px;
background: #3498db;
-webkit-transform: scale(2);
transform: scale(2);
}
.radio input[type="radio"]:checked + label::before {
background: #fff;
border: 1px solid #3498db;
}
.radio input[type="radio"]:checked + label::after {
opacity: 1;
-webkit-transform: scale(1);
transform: scale(1);
}


button{
background: #D57DAA;
border: none;
padding: 0.6rem 8.0rem;
color: #fff;
font-size: 1.6rem;
font-size: 16px;
cursor: pointer;
border-radius: 0.2rem;
display: block;
margin: 1rem auto;
}
@media screen and (max-width: 640px){
button{
    width: 100%;
}
}
button:hover{
background: #d85aa4;
}
/* Privacy policy */
.privacy-policy{
line-height: 1.2;
border: 1px solid #ccc;
padding: 0.8rem 1.2rem 0;
}
.privacy-policy .privacy-policy-title{
font-weight: bold;
}
.privacy-policy p{
margin-bottom: 0.8rem;
}
p.ended-message{
font-size: 2.2rem;
font-size: 20px;
color: #FF3E01;
font-weight: bold;
text-align: center;
}
input[type="button"].ended{
background: #ccc;
cursor: default;
color: #000;
border: none;
padding: 0.8rem 8.0rem;
border-radius: 0.2rem;
cursor: default;

}
input[type="button"]:hover{
background: #ccc;
}