body {
    background: #ffffff;
    font-size: 16px;
}

.container {
    border : 0px solid #7EA2D3;
    padding: 0;
}

.content-form {}

.form-column {
    border      : 1px solid #909090;
    padding     : 0 0 20px 0;
    margin      : 0 0 -1px 0;
}

.form-column .form-column {
    border: none;
}

.form-column .form-column + .form-column{
     border-top: 1px solid #909090;
}

.form-column .form-column:last-child{
    padding-bottom: 0;
}

.form-column.form-column-radio{
  padding-bottom: 15px
}
.form-column-radio .input-group{
  display: flex;
  flex-wrap :wrap;
  gap: 20px;
  align-items: center;
  margin: 20px 15px 0 15px;
}

@media (min-width: 601px){
  .form-column-radio .input-group{
    gap: 30px;
  }
}

.message-block {
    margin-bottom: 1em;
}

.form-column>label {
    margin-bottom: 0px;
    border-bottom: 1px solid #909090;
    background-color: #FCF9F0;
    padding     : 10px 15px;

}

.badge {
    color        : #FF0000;
    font-weight  : 500; 
    display      : inline-block;
    border-radius: 3px;
    text-align   : center;
    margin-left  : 10px;
    font-size    : 12px;
}

form input[type=text],
form input[type=num],
form input[type=email],
form input[type=password],
form input[type=tel],
form textarea,
form select{
    padding      : 5px 1%;
    font-size    : 16px;
    border       : 1px solid #909090;
    margin: 20px 15px 0 15px;
    max-width: none;
    width: calc(100% - 30px);
}

@media (min-width: 601px){
  form input[type=text],
  form input[type=num],
  form input[type=email],
  form input[type=password],
  form input[type=tel]{
    width: 475px;
  }
  form select{
    width: auto;
  }
}


form select {
    padding: 5px 1%;
}

.input-group label {
    margin-bottom: 5px;
}


#form-container .button-group{
    margin-top: 60px;
}
.button-group {
    text-align: center;
    position: relative;
    width: 100%;
}

.button-group .button-confirm,
.button-group .button-submit {
    padding    : 20px 10px;
    color      : #fff;
    font-weight: bold;
    border: 1px solid #E60012;
    border-radius: 9999px;
    width: 300px;
    max-width: 100%;
    color: #E60012;
    transition: background-color 0.3s;
}

.button-group .button-confirm:hover,
.button-group .button-submit:hover{
    color: #FFFFFF;
    background-color: #E60012;
    transition: background-color 0.3s;
}

.button-group .button-back {
    padding: 0;
    border: none;
    position: absolute;
    left: 0px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 14px;
    font-weight: normal;
    color: #333;
    width: auto;
    border-radius: 0;
}
.button-group .button-back::before{
    content: "";
    display: inline-block;
    border-style: solid;
    border-width: 5px 6px 5px 0;
    border-color: transparent #000 transparent transparent;
    margin-right: 10px;
}
.help-block{
  display: none;
}


.form-column-checkbox .input-group {
    margin: 20px 15px 0 15px;
}

.form-column-checkbox a{
    text-decoration: underline;
    text-decoration-color: #707070;
}

input[type="checkbox"]{
  position: relative;
  cursor: pointer;
  margin-right: 10px;
}

input[type="checkbox"]::before {
  position: absolute;
  background: #E5BD4F;
  top: 50%;
  left: 3px;
  -webkit-transform: translateY(-50%) scale(0, 0);
  transform: translateY(-50%) scale(0, 0);
  width: 12px;
  height: 12px;
  content: '';
  -webkit-transition: -webkit-transform 0.2s cubic-bezier(0.45, 1.8, 0.5, 0.75);
  transition: -webkit-transform 0.2s cubic-bezier(0.45, 1.8, 0.5, 0.75);
  transition: transform 0.2s cubic-bezier(0.45, 1.8, 0.5, 0.75);
  transition: transform 0.2s cubic-bezier(0.45, 1.8, 0.5, 0.75), -webkit-transform 0.2s cubic-bezier(0.45, 1.8, 0.5, 0.75);
  z-index: 1
}

input[type="checkbox"]:checked::before {
  -webkit-transform: translateY(-50%) scale(1, 1);
  transform: translateY(-50%) scale(1, 1)
}

input[type="checkbox"]::after {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: -3px;
  width: 24px;
  height: 24px;
  content: '';
  border: 1px solid #707070;
  background: #fff
}

input[type="radio"] {
    position: relative;
    cursor: pointer;
    margin-right: 10px
}

input[type="radio"]::before {
    position: absolute;
    background: #E5BD4F;
    top: 50%;
    left: 3px;
    -webkit-transform: translateY(-50%) scale(0, 0);
    transform: translateY(-50%) scale(0, 0);
    width: 12px;
    height: 12px;
    content: '';
    -webkit-transition: -webkit-transform 0.2s cubic-bezier(0.45, 1.8, 0.5, 0.75);
    transition: -webkit-transform 0.2s cubic-bezier(0.45, 1.8, 0.5, 0.75);
    transition: transform 0.2s cubic-bezier(0.45, 1.8, 0.5, 0.75);
    transition: transform 0.2s cubic-bezier(0.45, 1.8, 0.5, 0.75), -webkit-transform 0.2s cubic-bezier(0.45, 1.8, 0.5, 0.75);
    border-radius: 50%;
    z-index: 1
}

input[type="radio"]:checked::before {
    -webkit-transform: translateY(-50%) scale(1, 1);
    transform: translateY(-50%) scale(1, 1)
}

input[type="radio"]::after {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: -3px;
    width: 24px;
    height: 24px;
    content: '';
    border: 1px solid #909090;
    border-radius: 50%;
    background: #fff
}
input[type="radio"]:not(:checked) + span{
  color: #909090;
}

@media (max-width: 600px){
  .option-text{
    font-size: 13px;
  }
}

.option-text{
  font-size: 16px;
}


#confirmation-container .form-column:not(.form-column-zip-code-autofill){
  display: flex;
  border: none;
  padding: 30px 0;
}
#confirmation-container .form-column-zip-code-autofill{
    border: none;
    padding-bottom: 0;
}
#confirmation-container .form-column-zip-code-autofill .form-column:last-child{
    margin-bottom: 0;
}
#confirmation-container .form-column > label{
    flex: 0 0 250px;
    background: none;
    border: none;
    margin: 0;
    padding: 0;
}
#confirmation-container .form-column:not(:last-child){
    border-bottom: 1px solid #E4BC58;
}
#confirmation-container .form-column:first-child{
    border-bottom: 1px solid #E4BC58;
}
#confirmation-container .form-column-recaptcha{
  border: none !important;
}
#confirmation-container .form-column input,
#confirmation-container .form-column textarea{
    margin: 0;
}
#confirmation-container .preview-block{
    padding: 0;
}

#confirmation-container .button-group{
  margin-top: 60px;
}


@media (max-width: 600px){
  #confirmation-container .button-group{
    padding-top: 50px;
    margin-top: 30px;
  }
  #confirmation-container .button-group .button-back {
    position: absolute;
    top: 0;
    left: 0;
    transform: none;
  }
  #confirmation-container .button-group .button-back::before{
    content: "";
    display: inline-block;
    border-style: solid;
    border-width: 5px 6px 5px 0;
    border-color: transparent #000 transparent transparent;
    margin-right: 10px;
  }
  #confirmation-container .form-column:not(.form-column-zip-code-autofill){
    display: block;
    padding: 15px 0;
  }
  #confirmation-container .form-column > label{
    flex: inherit;
  }
  #confirmation-container .preview-block{
    margin-top: 10px
  }
}

.form-column-recaptcha > div{
  margin-left: auto;
  margin-right: auto;
}

#confirmation-container .form-column[data-column="メールアドレス（確認用）"]{
  display: none
}