@charset "UTF-8";
@media screen and (max-width: 766px) {
  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; }

  article h1 {
    margin-bottom: 30px; }

  .guidance {
    width: 90%;
    margin: 0 auto 30px; }
    .guidance p {
      font-size: 1em;
      line-height: 1.75em; }

  .form {
    width: 90%;
    margin: 0 auto 30px; }
    .form form > dl {
      margin-bottom: 15px; }
      .form form > dl dt {
        width: 100%;
        padding: 15px 15px 0;
        line-height: 1em;
        font-size: 1em;
        font-family: 'Noto Sans Japanese', sans-serif;
        font-weight: bold;
        border: 1px solid #43312d;
        border-bottom: 0;
        position: relative; }
      .form form > dl dt.required:after {
        position: relative;
        content: "必須";
        top: -3px;
        margin-left: 10px;
        letter-spacing: 0.1em;
        padding: 5px 8px;
        line-height: 1em;
        border-radius: 10px;
        text-align: center;
        background: #fd5d65;
        color: #fff;
        font-size: 0.7em;
        font-weight: normal; }
      .form form > dl dd {
        width: 100%;
        padding: 15px;
        line-height: 1em;
        border: 1px solid #43312d;
        border-top: 0;
        border-bottom: 0; }
        .form form > dl dd label {
          display: block;
          margin-bottom: 10px;
          font-size: 1.1em;
          letter-spacing: 0.1em;
          display: -webkit-box;
          display: -moz-box;
          display: -ms-flexbox;
          display: -webkit-flex;
          display: flex;
          position: relative;
          cursor: pointer;
          line-height: 1.25em; }
          .form form > dl dd label input {
            opacity: 0;
            position: absolute;
            left: 0;
            top: 0;
            width: 20px;
            height: 20px;
            z-index: 10;
            display: block; }
          .form form > dl dd label input + span {
            display: block;
            width: 20px;
            height: 20px;
            border-radius: 50%;
            margin-right: 5px;
            border: 1px solid #43312d;
            position: relative;
            z-index: 1; }
          .form form > dl dd label input:checked + span {
            background: #ed9300;
            border: 0; }
        .form form > dl dd label:hover {
          color: #ed9300; }
          .form form > dl dd label:hover input + span {
            border: 1px solid #ed9300; }
        .form form > dl dd label:last-child {
          margin-bottom: 0; }
        .form form > dl dd input[type="text"],
        .form form > dl dd input[type="email"] {
          padding: 10px;
          font-size: 1.2em;
          line-height: 1em;
          letter-spacing: 0.1em;
          border: 2px solid #dad4d2;
          width: 100%;
          background: #fff; }
        .form form > dl dd textarea {
          padding: 10px;
          font-size: 1.2em;
          line-height: 1.5em;
          letter-spacing: 0.1em;
          border: 2px solid #dad4d2;
          width: 100%;
          height: 200px;
          background: #fff; }
        .form form > dl dd input[type="text"]:focus {
          border: 2px solid #ed9300;
          color: #ed9300; }
        .form form > dl dd dl {
          display: -webkit-box;
          display: -moz-box;
          display: -ms-flexbox;
          display: -webkit-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          -moz-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
          -o-flex-wrap: wrap;
          flex-wrap: wrap;
          position: relative; }
          .form form > dl dd dl dt,
          .form form > dl dd dl dd {
            border: 0;
            padding: 10px 0; }
          .form form > dl dd dl dt {
            border: 0;
            padding-bottom: 0; }
          .form form > dl dd dl dt:nth-last-of-type(1),
          .form form > dl dd dl dd:nth-last-of-type(1) {
            border-bottom: 0; }
      .form form > dl > dt:nth-of-type(odd),
      .form form > dl > dd:nth-of-type(odd) {
        background: #fff; }
      .form form > dl > dd:last-of-type {
        border-bottom: 1px solid #43312d; }
    .form input[type="submit"] {
      display: block;
      width: 80%;
      height: 45px;
      background: #9ccc1d;
      font-size: 1.2em;
      border-radius: 5px;
      font-family: 'Noto Sans Japanese', sans-serif;
      font-weight: bold;
      color: #fff;
      margin: 0 auto 15px;
      cursor: pointer;
      box-shadow: 0px 5px 1px 0px #8eb42a;
      position: relative; }
    .form input[type="submit"]:hover {
      top: 4px;
      box-shadow: 0px 1px 1px 0px #8eb42a; }
    .form input[type="submit"] + a {
      display: block;
      text-align: center; } }
