.c-section {
  padding-top: 0 !important;
}

/* ============================================================ Form */
input { -webkit-appearance: none; appearance: none; border: none; margin: 0; padding: 0; }


/* ============================== Checkbox */
input:focus + label {
  outline: solid 1px #cf142b;
}

input#check-box[type=checkbox] { -webkit-appearance: checkbox; appearance: checkbox; }
input#check-box[type=checkbox] { display: inline-block; }
input#check-box[type=checkbox] + label { position: relative; display: inline-block; cursor: pointer; }

@media (min-width: 1px) {
  input#check-box[type=checkbox] { position: absolute; opacity: 0; margin: 0; }
  input#check-box[type=checkbox] + label { padding-left: 34px; }
  input#check-box[type=checkbox] + label::before { display: block; width: 24px; height: 24px; margin-top: -12px;
    position: absolute; top: 0.7em; left: 0;
    content: "";
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }

  input#check-box[type=checkbox] + label::before { border: 2px solid #999999;
    -webkit-border-radius: 6px;
    border-radius: 6px;
  }
  /* checked */
  input#check-box[type=checkbox]:checked + label::before { border: 2px solid #cf142b; }
  input#check-box[type=checkbox]:checked + label::after { display: block;
    position: absolute; top: 0.7em;
    content: "";
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  input#check-box[type=checkbox]:checked + label::after { width: 12px; height: 6px; margin-top: -4px;
    left: 6px;
    border-left: 3px solid #cf142b;
    border-bottom: 3px solid #cf142b;
    -ms-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
}

#agree {
  pointer-events: none;
  border: 1px solid #c9c9c9;
  background-color: #f6f6f6;
}

#agree span {
  color:#666666;
}

#agree img {
  display: none;
}

body:has(#check-box:checked) #agree {
  pointer-events: auto;
  border: none;
  background-color: #cf142b;
}

body:has(#check-box:checked) #agree span {
  color:#ffffff;
}

body:has(#check-box:checked) #agree img {
  display: block;
}