@media screen and (min-width: 480px) {
  #contents {
    max-width: 1000px;
  }
  #contents > p {
    width: 90%;
    margin: 20px;
  }
  form#input {
    width: 440px;
    min-width: 400px;
    margin: 20px 20px;
    padding: 20px 20px;
    border: solid;
    border-radius: 0.5em;
  }
  #input dl dt {
    width: 120px;
    padding: 10px 0;
    margin-right: 10px;
    float: left;
    clear: both;
  }
  #input dl dd {
    padding: 10px 0;
    font-size: 16px;
  }
  input[type="date"] {
    font-size: 16px;
  }
  #name {
    height: 20px;
  }
  .button {
    display: inline-block;
    font-size: 16px;
    cursor: pointer;
    padding: 12px 12px;
    line-height: 1em;
    transition : .3s;
    color: #ffffff;
    background: #7f878f;
    box-shadow: 0px 0px 3px #c8c8cb;
  }
  .button:hover {
    box-shadow: none;
  }
  #credit {
    margin: 10px 20px;
  }
  #credit details {
    width: 80%;
  }
  details > p {
    font-size: 80%;
  }

  img#maparea {
    height: 70%;
  }
  #harerun {
    width: 100px;
    height: 80px;
    position: absolute;
    top: 100px;
    left: 50px;
  }
}
@media screen and (max-width: 479px) {
  #contents {
    max-width: 375px;
  }
  #contents > p {
    width: 90%;
    margin: 20px;
  }
  form#input {
    max-width: 100%;
    margin: 20px 20px;
    padding: 20px 20px;
    border: solid;
    border-radius: 0.5em;
  }
  #input dl dt {
    width: 50%;
    padding: 10px 0;
    margin-right: 10px;
    float: left;
    clear: both;
  }
  #input dl dd {
    padding: 10px 0;
    font-size: 16px;
  }
  input[type="date"] {
    font-size: 16px;
  }
  #name, #birth {
    height: 48px;
  }
  .button {
    display: inline-block;
    font-size: 16px;
    height: 48px;
    cursor: pointer;
    padding: 12px 12px;
    line-height: 1em;
    transition : .3s;
    color: #ffffff;
    background: #7f878f;
    box-shadow: 0px 0px 3px #c8c8cb;
  }
  .button:hover {
    box-shadow: none;
  }
  #credit {
    margin: 10px 20px;
  }
  #credit details {
    width: 80%;
  }
  details > p {
    font-size: 80%;
  }

  #harerun {
    width: 25%;
    height: auto;
    position: relative;
  }
  img#maparea {
	margin: -30px 0px;
    max-width: 100%;
    height: auto;
  }
}
@media print {
  img#maparea {
    height: 70%;
  }
  #harerun {
    width: 100px;
    height: 80px;
    position: absolute;
    top: 100px;
    left: 50px;
  }
  #footer a {
    color: #fff;
    text-decoration: none;
  }
}
