/*
 * filename: contact.css
 * version: 1.0
 */
#main.contact {
  margin-bottom: 60px;
}
@media screen and (min-width: 768px) {
  #main.contact {
    margin-bottom: 80px;
  }
}
@media screen and (min-width: 1100px) {
  #main.contact {
    margin-bottom: 100px;
  }
}
#main.contact > .sec1 {
  height: auto;
  width: 100%;
}
#main.contact > .sec1 > .inner {
  height: auto;
  width: 100%;
  margin: 0 auto;
  max-width: calc(450px + 16%);
  padding: 0 8%;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner {
    max-width: 768px;
    padding: 0 50px;
  }
}
@media screen and (min-width: 1100px) {
  #main.contact > .sec1 > .inner {
    max-width: 850px;
    padding: 0 50px;
  }
}
#main.contact > .sec1 > .inner > .box1 {
  height: auto;
  width: 100%;
  margin-bottom: 60px;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box1 {
    margin-bottom: 85px;
  }
}
#main.contact > .sec1 > .inner > .box1 > .par {
  height: auto;
  width: 100%;
  font-size: 16px;
  letter-spacing: .05em;
  line-height: 29px;
  text-align: center;
}
#main.contact > .sec1 > .inner > .box2 {
  height: auto;
  width: 100%;
  margin-bottom: 85px;
}
#main.contact > .sec1 > .inner > .box2 > .box1 {
  height: auto;
  width: 100%;
  margin-bottom: 25px;
}
@media screen and (min-width: 768px) {
#main.contact > .sec1 > .inner > .box2 > .box1 {
/*  20200317修正  */
  margin-bottom: 40px;
/*  ここまで  */
}
}
#main.contact > .sec1 > .inner > .box2 > .box1 > .phd {
  height: auto;
  width: 100%;
  font-size: 21px;
  font-weight: 700;
  letter-spacing: .05em;
  text-align: center;
}
/*追記20200317*/
#main.contact > .sec1 > .inner > .box2 > .box1 > h3.phd {
    margin-bottom: 25px;
}
#main.contact > .sec1 > .inner > .box2 > .box1 > .phd .txt {
    height: auto;
    width: auto;
    border-bottom: 4px solid #dddddd;
    display: inline-block;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: .05em;
    line-height: 29px;
    padding-bottom: 10px;
}
/*ここまで*/
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box2 > .box1 > .phd {
    font-size: 23px;
    margin-bottom: 40px;
}
/*追記20200317*/
  #main.contact > .sec1 > .inner > .box2 > .box1 > .phd .txt {
    font-size: 26px;
    line-height: 38px;
}
/*ここまで*/
}
#main.contact > .sec1 > .inner > .box2 > .box2 {
  height: auto;
  width: 100%;
  border: 2px solid #ba0025;
  border-radius: 6px;
  padding: 30px 15px;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box2 > .box2 {
    padding: 37.5px 0;
  }
}
#main.contact > .sec1 > .inner > .box2 > .box2 > .lst {
  height: auto;
  width: 100%;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box2 > .box2 > .lst {
    display: flex;
  }
}
#main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm {
  height: auto;
  width: 100%;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm {
/*20200317修正*/
    width: 100%;
/*ここまで*/
  }
}
#main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm:not(:last-of-type) {
  margin-bottom: 60px;
  position: relative;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm:not(:last-of-type) {
    margin-bottom: 0;
  }
}
#main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm:not(:last-of-type)::after {
  background-color: #aaaaaa;
  content: '';
  display: block;
  height: 2px;
  left: 0;
  position: absolute;
  top: calc(100% + 28px);
  width: 100%;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm:not(:last-of-type)::after {
    height: 100%;
    left: 100%;
    top: 0;
    width: 2px;
  }
}
#main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt1 {
  height: auto;
  width: 100%;
  display: block;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .05em;
  margin-bottom: 12.5px;
  text-align: center;
}
/*20200317追記*/
@media screen and (min-width: 768px) {
#main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt1.agt {
  margin-bottom: 14px;
    }
}
#main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt1 .lnk {
    color: #ba0025;
}
#main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt1 .lnk::after {
    background: url(https://www.mitsuhashi-corp.co.jp/images/cn/ico_extlnk.svg) center center no-repeat;
    background-size: contain;
    content: '';
    display: inline-block;
    height: 12.5px;
    margin-left: 3px;
    width: 12.5px;
}
/*ここまで*/
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt1 {
    font-size: 19px;
    margin-bottom: 22.5px;
  }
/*20200317追記*/
      #main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt1 .lnk {
    transition: opacity 0.35s;
  }
  #main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt1 .lnk:hover {
    opacity : .7;
  }
/*ここまで*/
}
#main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt2 {
  height: auto;
  width: 100%;
  align-items: center;
  display: flex;
  justify-content: center;
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt2 {
/* 20200317修正 margin-bottom: 17.5px;*/
  }
}
#main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt2 > .wd1 {
  background-color: #ba0025;
  color: #ffffff;
  display: block;
  font-size: 12px;
  font-weight: 700;
  height: auto;
  letter-spacing: .05em;
  margin-right: 5px;
  padding: 6.5px 0;
  text-align: center;
  width: 60px;
}
#main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt2 > .wd1.agt{
  width: 88px;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt2 > .wd1 {
    margin-right: 10px;
  }
}
#main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt2 > .wd2 {
  height: auto;
  width: auto;
  display: block;
  font-size: 23px;
  font-weight: 700;
  letter-spacing: .05em;
}
/* 20200317追記　*/
@media screen and (max-width: 340px) {
  #main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt2 > .wd2 {
    font-size: 19px;
}
}
/* ここまで */
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt2 > .wd2 {
    font-size: 26px;
  }
}
#main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt3 {
  height: auto;
  width: 100%;
  display: block;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .05em;
  text-align: center;
}
/* 20200317追記 */
#main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt4 {
  height: auto;
  width: 100%;
  align-items: center;
  display: flex;
  justify-content: center;
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt4 {
    margin-bottom: 17.5px;
  }
}
#main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt4 > .wd1 {
  background-color: #ba0025;
  color: #ffffff;
  display: block;
  font-size: 12px;
  font-weight: 700;
  height: auto;
  letter-spacing: .05em;
  margin-right: 5px;
  padding: 6.5px 0;
  text-align: center;
  width: 60px;
}
#main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt4 > .wd1.agt{
  width: 88px;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt4 > .wd1 {
    margin-right: 10px;
  }
}
#main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt4 > .wd2 {
  height: auto;
  width: auto;
  display: block;
  font-size: 23px;
  font-weight: 700;
  letter-spacing: .05em;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box2 > .box2 > .lst > .itm > .txt4 > .wd2 {
    font-size: 26px;
  }
}
/*ここまで*/
#main.contact > .sec1 > .inner > .box3 {
  height: auto;
  width: 100%;
}
#main.contact > .sec1 > .inner > .box3 > .box1 {
  height: auto;
  width: 100%;
  margin-bottom: 25px;
}
#main.contact > .sec1 > .inner > .box3 > .box1 > .phd {
  height: auto;
  width: 100%;
  font-size: 21px;
  font-weight: 700;
  letter-spacing: .05em;
  text-align: center;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box3 > .box1 > .phd {
    font-size: 23px;
  }
}
#main.contact > .sec1 > .inner > .box3 > .box2 {
  height: auto;
  width: 100%;
}
#main.contact > .sec1 > .inner > .box3 > .box2 .frm {
  height: auto;
  width: 100%;
}
#main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst {
  height: auto;
  width: 100%;
  border-bottom: 2px solid #ba0025;
  border-top: 2px solid #ba0025;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst:after {
    clear: both;
    content: '';
    display: block;
  }
}
#main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .trm {
  height: auto;
  width: 100%;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: .05em;
  padding: 17.5px 0 0;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .trm {
    clear: both;
    float: left;
    padding: 34px 0 0; /* modified on 20200317 */
    width: 230px;
  }
}
#main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .trm:not(:first-of-type) {
  border-top: 1px solid #dddddd;
}
#main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .trm > .req {
  border: 1px solid #ba0025;
  color: #ba0025;
  display: inline-block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .05em;
  margin-left: 8px;
  padding: 6px 9px;
  transform: translateY(-6px); /* added on 20200317 */
  vertical-align: top; /* modified on 20200317 */
}
#main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .dsc {
  height: auto;
  width: 100%;
  padding: 12.5px 0 15px;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .dsc {
    float: left;
    padding: 20px 0;
    width: calc(100% - 230px);
  }
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .dsc:not(:first-of-type) {
    border-top: 1px solid #dddddd;
  }
}
#main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .dsc input, #main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .dsc textarea {
  height: auto;
  width: 100%;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border: 1px solid #838383;
  display: block;
  font-family: "Noto Sans JP", sans-serif; /* added on 20200317 */
  font-size: 14px;
  letter-spacing: .05em;
  line-height: 29px;
  padding: 2px 10px;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .dsc input, #main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .dsc textarea {
    font-size: 16px;
    padding: 6px 15px;
  }
}
#main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .dsc input::-webkit-input-placeholder {
  color: #aaaaaa;
}
#main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .dsc input:-moz-placeholder {
  color: #aaaaaa;
}
#main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .dsc input::-moz-placeholder {
  color: #aaaaaa;
}
#main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .dsc input:-ms-input-placeholder {
  color: #aaaaaa;
}
#main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .dsc input.type2::-webkit-input-placeholder {
  font-size: 10px;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .dsc input.type2::-webkit-input-placeholder {
    font-size: 13px;
  }
}
#main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .dsc input.type2:-moz-placeholder {
  font-size: 10px;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .dsc input.type2:-moz-placeholder {
    font-size: 13px;
  }
}
#main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .dsc input.type2::-moz-placeholder {
  font-size: 10px;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .dsc input.type2::-moz-placeholder {
    font-size: 13px;
  }
}
#main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .dsc input.type2:-ms-input-placeholder {
  font-size: 10px;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box3 > .box2 .frm > .lst > .dsc input.type2:-ms-input-placeholder {
    font-size: 13px;
  }
}
#main.contact > .sec1 > .inner > .box3 > .box2 .frm > .par {
  height: auto;
  width: 100%;
  margin-top: 30px;
}
#main.contact > .sec1 > .inner > .box3 > .box2 .frm > .par input {
  height: auto;
  width: 100%;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: #ba0025;
  border: none;
  border-radius: 0;
  color: #ffffff;
  cursor: pointer; /* added on 20200317 */
  display: block;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .05em;
  outline: none;
  padding: 16px 0;
  text-align: center;
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box3 > .box2 .frm > .par input {
    margin: 0 auto;
    transition: opacity 0.35s;
    width: 285px;
  }
}
@media screen and (min-width: 768px) {
  #main.contact > .sec1 > .inner > .box3 > .box2 .frm > .par input:hover {
    opacity: .7;
  }
}
#main.contact > .sec1 > .inner > .box3 > .box2 .ajax-loader {
  display: none;
}
#main.contact > .sec1 > .inner > .box3 > .box2 .wpcf7-not-valid-tip {
  margin: 10px 0 0;
  color: #ba0025;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
}
#main.contact > .sec1 > .inner > .box3 > .box2 .wpcf7-mail-sent-ok,
#main.contact > .sec1 > .inner > .box3 > .box2 .wpcf7-mail-sent-ng,
#main.contact > .sec1 > .inner > .box3 > .box2 .wpcf7-acceptance-missing,
#main.contact > .sec1 > .inner > .box3 > .box2 .wpcf7-spam-blocked,
#main.contact > .sec1 > .inner > .box3 > .box2 .wpcf7-validation-errors {
  border: none;
}
#main.contact > .sec1 > .inner > .box3 > .box2 .wpcf7-mail-sent-ok {
  display: none;
}
#main.contact > .sec1 > .inner > .box3 > .box2 .wpcf7-response-output {
  height: auto;
  width: 100%;
  border: none;
  color: #ba0025;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  margin: 15px 0 0;
  padding: 0;
  text-align: center;
}
.grecaptcha-badge { visibility: hidden; }