@charset "UTF-8";
/* Scss Document */
#mv {
  padding: 40px 0 !important; }
  @media (min-width: 768px) {
    #mv {
      padding: 70px 0 !important; } }

#waveCanvas {
  position: fixed;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: -1; }

textarea {
  line-height: 1.5 !important; }

input::placeholder, textarea::placeholder {
  color: #757575; }

select.is-empty {
  color: #757575; }

#contact {
  margin: 0 auto 60px; }
  #contact .lead {
    margin-bottom: 20px;
    line-height: 1.75;
    margin-bottom: 40px; }
  #contact table tr:not(:last-child) {
    border: none; }
  #contact table tr th {
    border-right: 1px solid #006bce;
    text-align: right;
    vertical-align: top;
    padding-left: 0; }
  #contact table tr td .part {
    margin: 0; }
    #contact table tr td .part:not(:last-child) {
      margin: 0 0 1em; }
  @media (min-width: 960px) {
    #contact .box_wrap {
      max-width: 740px;
      width: 100%; } }

#form .step {
  display: flex;
  align-items: center;
  grid-gap: 20px;
  justify-content: center;
  margin-bottom: 40px; }
  #form .step div:not(.line) {
    width: 40px;
    height: 40px;
    border-radius: 40px;
    box-sizing: border-box;
    border: 1px solid #006bce;
    display: flex;
    align-items: center;
    justify-content: center; }
    #form .step div:not(.line) .text {
      font-size: .75rem; }
    #form .step div:not(.line).ac {
      background-color: #006bce; }
      #form .step div:not(.line).ac .text {
        color: #FFFFFF; }
  #form .step div.line {
    width: 30px;
    height: 1px;
    background-color: #006bce; }
#form .form_body .select {
  position: relative; }
  #form .form_body .select:after {
    content: '▼';
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 1em;
    font-size: .8rem;
    height: fit-content;
    margin: auto;
    color: #757575;
    pointer-events: none; }
#form .form_body .part .label {
  width: 100%;
  display: flex;
  align-items: center; }
  #form .form_body .part .label.req:after {
    content: '必須';
    display: inline-block;
    color: #e00025;
    padding-left: 1em; }
#form .form_body .part.address .cont .code {
  display: flex;
  align-items: center;
  grid-gap: 10px; }
#form .form_body .part.address .cont .in > div:not(:last-child) {
  margin-bottom: 20px; }
#form .form_body .part.check .cont {
  display: flex;
  justify-content: center; }
#form .form_body .part.check label {
  margin: 0 auto; }
@media (min-width: 768px) {
  #form .form_body .part.address .cont .code {
    max-width: 240px; }
    #form .form_body .part.address .cont .code input[name="code1"] {
      width: 100px; }
    #form .form_body .part.address .cont .code input[name="code2"] {
      width: 140px; } }
@media (min-width: 960px) {
  #form .box_wrap {
    max-width: 740px;
    width: 100%; }
  #form .form_body .part {
    display: block; }
    #form .form_body .part > .label {
      position: static; }
    #form .form_body .part.address .cont .code {
      max-width: 240px; }
      #form .form_body .part.address .cont .code input[name="code1"] {
        width: 70px; }
      #form .form_body .part.address .cont .code input[name="code2"] {
        width: 80px; } }

#form.confirm .to_link {
  margin-top: 40px; }
  @media (min-width: 768px) {
    #form.confirm .to_link {
      margin-top: 100px; } }
  #form.confirm .to_link input.a {
    width: 230px;
    background: #006bce !important;
    border: none; }
    #form.confirm .to_link input.a:hover {
      background: #0081CC !important; }
#form.confirm .step {
  margin-bottom: 60px; }
  @media (min-width: 768px) {
    #form.confirm .step {
      margin-bottom: 100px; } }
#form.confirm .formTable tbody {
  display: flex;
  flex-wrap: wrap; }
  #form.confirm .formTable tbody tr {
    border-bottom: none !important;
    width: 100%;
    line-height: 2; }
    #form.confirm .formTable tbody tr:last-of-type {
      display: none; }
    #form.confirm .formTable tbody tr:not(:last-child) {
      margin-bottom: 30px; }
    #form.confirm .formTable tbody tr th, #form.confirm .formTable tbody tr td {
      padding: 0; }
    #form.confirm .formTable tbody tr th {
      width: 120px; }
      @media (min-width: 768px) {
        #form.confirm .formTable tbody tr th {
          width: 180px; } }
#form.send .step {
  margin-bottom: 60px; }
  @media (min-width: 768px) {
    #form.send .step {
      margin-bottom: 100px; } }
#form.send .msg {
  margin-bottom: 40px; }
  @media (min-width: 768px) {
    #form.send .msg {
      margin-bottom: 100px; } }
