@charset "UTF-8";
/* CSS Document */

#contact{
    padding: 5em 0 1em 0;
}
#contact h3{
    font-size: 1.8rem;
    font-weight: 500;
    padding-bottom: 0.6em;
}
#contact .telbox{
    border-bottom: 1px solid #d1d1d1;
    text-align: left;
    padding-bottom: 3em;
    margin-right: 16em;
}
#contact .telbox .tel{
    font-size: 2.8rem;
    font-weight: 600;
    line-height: 1;
font-family: 'LINESeedJP', sans-serif;
    padding: 0.4em 0 0.3em 0;
}

#contact #form{
    text-align: left;
    padding-top: 3em;
}
#contact #form .txt{
    padding-bottom: 4em;
}
#form dl{
    display: flex;
padding-bottom: 2em;
    width: 65em;
}
#form dt{
    font-weight: 500;
    position: relative;
    width: 16em;
    text-align: left;
    padding-top: 0.5em;
}
#form dt.req::after{
    content: "必須";
    display: block;
    color: #fff;
    background-color: #e03173;
    font-size: 1.4rem;
    border-radius: 0.2em;
    width: 3em;
    text-align: center;
    position: absolute;
    right: 2em;
    top: 0.8em;
}
#form dd{
    flex: 1;
    text-align: left;
}

#form dd a{
    text-decoration: underline;
}
#form dd.check{
    text-align: center;
}
#form dd.check p{
    text-align: left;
    text-indent: -1.5em;
    padding: 1em 0 2em 1.5em;
    line-height: 1.4;
}
input[type="checkbox"] {
  border-radius: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
input[type="checkbox"] {
  position: relative;
  width: 1.1em;
  height: 1.1em;
  border: 1px solid #484848;
    margin-right: 0.5em;
}

input[type="checkbox"]:checked:before {
  position: absolute;
  top: 0.03em;
  left: 0.3em;
  transform: rotate(50deg);
  width: 0.4em;
  height: 0.8em;
  border-right: 2px solid #484848;
  border-bottom: 2px solid #484848;
  content: '';
}

#form input[type="text"],#form input[type="email"],#form input[type="tel"],#form textarea {
    background-color: #ececec;
    font-size: 1.6rem;
    border: none;
    padding: 1em 2em;
    border-radius: 0.3em;
    width: 100%;
}
#form button{
    border: none;
    color: #fff;
    font-weight: 500;
    font-size: 1.8rem;
    width: 20em;
    padding: 1em 0;
    border-radius: 0.3em;
    margin: 3em auto 0 auto;
    cursor: pointer;
    background-image: linear-gradient(90deg, #494949 0%, #494949 50%, #41a4fd 50%, #0ef4ff 100%);
  background-size: 200% 100%;
      transition: all 0.3s ease-out;
}

div.mfp_buttons button#mfp_button_cancel{
    border: none;
    color: #fff;
    font-weight: 500;
    font-size: 1.8rem;
    width: 20em;
    padding: 1em 0;
    border-radius: 0.3em;
    margin: 3em auto 0 auto;
    cursor: pointer;
    background-image: linear-gradient(90deg, #999999 0%, #999999 50%, #41a4fd 50%, #0ef4ff 100%);
  background-size: 200% 100%;
      transition: all 0.3s ease-out;
}
#form button:hover, div.mfp_buttons button#mfp_button_cancel:hover{
    background-position: -100%;
}

#mailformpro .mfp_element_submit {
  border-radius: 0.3em;
  text-shadow: none;
  font-size: 1.8rem;
}
#mailformpro .mfp_element_submit:hover {
box-shadow: none;
opacity: 1;
}
#mfp_overlay_inner h4{
text-align: center;
font-size: 2rem;
padding-bottom: 2em;
}

#foot_con{
    display: none;
}
#footer{
    margin-top: 7em;
    padding-top: 8em;
}


#contact .thanks #form{
    padding-top: 0;
}
#contact #form .txt{
    padding-bottom: 3em;
}
#contact .thanks .telbox{
    border-bottom: none;
    border-top: 1px solid #d1d1d1;
    padding-top: 3em;
}


div#mfp_phase_confirm h4 {
  font-size: 2rem;
  padding: 3em 0 1em 0;
    text-align: left;
}table#mfp_confirm_table {
  width: 65em;
  border-bottom: solid 1px #d1d1d1;
}
table#mfp_confirm_table tr th, table#mfp_confirm_table tr td {
  font-size: 1.6rem;
  border-top: solid 1px #d1d1d1;
  padding: 1em;
    line-height: 1.8;
}
div.mfp_buttons {
  padding: 0;
  width: 65em;
}
.mfp_element_submit, .mfp_element_reset, .mfp_element_button, button.mfp_next, button.mfp_prev {
  text-shadow: none;
}

@media only screen and (max-width: 768px) {

#contact{
    padding: 5em 0 1em 0;
}

#contact h3{
}
#contact .telbox{
    padding-bottom: 2em;
    margin-right: 0;
}

#contact #form{
    text-align: left;
    padding-top: 2em;
}
#contact #form .txt{
    padding-bottom: 4em;
} 
    
#form dl{
    display: block;
padding-bottom: 2em;
    width: 100%;
}
#form dt{
    width: 100%;
    padding: 0 0 0.7em 0;
}
#form dt.req::after{
    right: 0;
    top: 0.4em;
}
#form dd{
}
#form dd.check p{
    padding: 0 0 1em 1.5em;
}

#form input[type="text"],#form input[type="email"],#form input[type="tel"],#form textarea {
    padding: 1em;
}
#form button{
    width: 100%;
}


table#mfp_confirm_table {
  width: 100%;
}
table#mfp_confirm_table tr th, table#mfp_confirm_table tr td {
    display: block;
    width: 100%;
}
table#mfp_confirm_table tr td {
  border-top: none;
  padding: 0 1em 1em 1em;
}
table#mfp_confirm_table tr th {
  padding: 1em 1em 0.5em 1em;
}
div.mfp_buttons {
  padding: 0;
  width: 100%;
}
#form button#mfp_button_cancel{
margin-top: 0.3em;
}
    
#footer{
    margin-top: 7em;
    padding-top: 6em;
}
    
}