@charset "UTF-8";
/*
# =================================================================
# お問い合わせページ
# =================================================================*/
#contact .mv {
  height: 400px;
}
#contact .mv .inner {
  padding: 200px 0 0 0;
}
#contact .mv .inner h2 {
  font-size: 20px;
  font-weight: 400;
  color: #fff;
  text-align: center;
  line-height: 1;
  letter-spacing: .12em;
}
#contact .mv .inner h2 > span:nth-of-type(1) {
  margin: 0 0 13px 0;
  font-family: "Montserrat", sans-serif;
  font-size: 60px;
  font-weight: 700;
  letter-spacing: .06em;
}
#contact .mv .inner h2 > span:nth-of-type(2) {
  display: block;
}
#contact main > .contents {
  padding: 0 0 150px 0;
  background: url(../../img/common/bg2.jpg) repeat-y center top / 100%;
}
#contact .mv {
  background: url(../img/mvBg1.jpg) no-repeat center center / cover;
}
#contact .contents .inner {
  max-width: 1000px;
  width: 90%;
  margin: 0 auto;
}
#contact .contents .inner > p {
  margin: 0 0 50px 0;
  text-align: center;
}
#contact .contents .inner .boxContactForm {
  border-top: 1px solid #c7c7c7;
  display: flex;
  flex-wrap: wrap;
}
#contact .contents .inner .boxContactForm.end {
  margin: 0 0 150px 0;
  border-bottom: 1px solid #c7c7c7;
}
#contact .contents .inner .boxContactForm .ttl {
  width: 175px;
  padding: 49px 0 40px 0;
}
#contact .contents .inner .boxContactForm .icon {
  width: 50px;
  padding: 44px 0 40px 0;
}
#contact .contents .inner .boxContactForm .icon span {
  width: 50px;
  padding: 7px 0;
  background: #001491;
  color: #fff;
  text-align: center;
  line-height: 1;
  display: block;
}
#contact .contents .inner .boxContactForm .inputForm {
  width: calc(100% - 225px);
  padding: 40px 0 40px 25px;
}
#contact .contents .inner .boxContactForm .inputForm.type2 {
  padding: 47px 0 40px 25px;
}
#contact .contents .inner .boxContactForm .inputForm input {
  width: 100%;
  padding: 10px;
  background: #fff;
}
#contact .contents .inner .boxContactForm .inputForm input.type2 {
  width: 110px;
}
#contact .contents .inner .boxContactForm .inputForm ul {
  margin: 0 0 45px 0;
  display: flex;
  align-items: center;
}
#contact .contents .inner .boxContactForm .inputForm ul li {
  margin: 0 30px 0 0;
}
#contact .contents .inner .boxContactForm .inputForm ul li:nth-last-of-type(1) {
  margin: 0;
}
#contact .contents .inner .boxContactForm .inputForm input[type=radio] {
  width: 20px;
  height: 20px;
  margin: 0 10px 0 0;
  padding: 0;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #464646;
  position: relative;
  top: -1px;
  appearance: none;
}
#contact .contents .inner .boxContactForm .inputForm input[type=radio]:checked {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #001491;
  border: 3px solid #fff;
}
#contact .contents .inner .boxContactForm .inputForm textarea {
  width: 100%;
  height: 250px;
  padding: 8px;
  background: #fff;
  font-size: 16px;
  resize: none;
}
#contact .contents .inner .boxContactForm .inputForm span {
  padding: 20px 0;
  display: block;
}
#contact .contents .inner .boxContactForm.end .inputForm span {
  padding: 0 0 20px 0;
  display: inline-block;
}
#contact .contents .inner .boxPrivacy {
  margin: 0 0 150px 0;
  text-align: center;
}
#contact .contents .inner .boxPrivacy h4 {
  margin: 0 0 25px 0;
}
#contact .contents .inner .boxPrivacy .txt {
  height: 250px;
  margin: 0 0 45px 0;
  padding: 30px;
  background: #fff;
  text-align: left;
  overflow-y: scroll;
}
#contact .contents .inner .boxPrivacy .txt p {
  margin: 0 0 28px 0;
  font-size: 14px;
  line-height: 1.6;
}
#contact .contents .inner .boxPrivacy .txt p:nth-last-of-type(1) {
  margin: 0;
}
#contact .contents .inner .boxPrivacy .txt h5 {
  margin: 0 0 8px 0;
  font-family: "MFW-HiraKakuStdN-W6";
  font-size: 14px;
  font-weight: 600;
  color: #001491;
}
#contact .contents .inner .boxPrivacy .txt a {
  margin: 0 0 28px 0;
  font-family: "MFW-HiraKakuStdN-W6";
  font-size: 14px;
  font-weight: 600;
  color: #001491;
  text-decoration: underline;
  display: inline-block;
}
#contact .contents .inner .boxPrivacy input[type=checkbox] {
  width: 20px;
  height: 20px;
  margin: 0 10px 0 0;
  padding: 0;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #464646;
  position: relative;
  top: -1px;
  appearance: none;
}
#contact .contents .inner .boxPrivacy input[type=checkbox]:checked {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #001491;
  border: 3px solid #fff;
}
#contact .contents .inner .btnSubmit {
  width: 340px;
  height: 60px;
  margin: 0 auto;
  text-align: center;
  position: relative;
}
/*#contact .contents .inner .btnSubmit::before {
  content: '';
  width: 13px;
  height: 1px;
  background: #fff;
  position: absolute;
  top: 28px;
  right: 30px;
  transition: .3s ease-in-out;
}
#contact .contents .inner .btnSubmit:hover::before {
  width: 18px;
  right: 25px;
}
#contact .contents .inner .btnSubmit::after {
  content: '';
  width: 7px;
  height: 13px;
  background: url(../../img/common/iconArrow1.svg) no-repeat left top / 7px;
  position: absolute;
  top: 22px;
  right: 30px;
  transition: .3s ease-in-out;
}
#contact .contents .inner .btnSubmit:hover::after {
  right: 25px;
}*/
#contact .contents .inner .btnSubmit input[type=submit] {
  width: 340px;
  height: 60px;
  margin: 0 0 15px 0;
  background: #1eb4d2;
  color: #fff;
  letter-spacing: .06em;
}

.thanks {
  text-align: center;
  line-height: 1.8;
}
.thanks .caution {
  margin: 30px 0 0 0;
  font-size: 15px;
  color: #c00;
}
.thanks .caution a {
  color: #c00;
  text-decoration: underline;
}
/*
# =================================================================
# レスポンシブ要素
# =================================================================*/
/* 4K:2560px */
/* PC:1920px */

/* laptop NotePC L */
@media screen and (max-width: 1440px) {
}

/* laptop NotePC */
@media screen and (max-width: 1024px) {
}

/* tablet */
@media screen and (max-width: 768px) {
  #contact .mv .inner h2 > span:nth-of-type(1) {
    font-size: 50px;
  }
  #contact main > .contents {
    padding: 50px 0 100px 0;
    background: url(../../img/common/bg2.jpg) repeat-y center top / 1920px;
  }
  #contact .contents .inner .boxContactForm.end {
    margin: 0 0 100px 0;
  }
  #contact .contents .inner .boxContactForm .ttl {
    padding: 49px 0 20px 0;
  }
  #contact .contents .inner .boxContactForm .icon {
    width: calc(100% - 175px);
    padding: 44px 0 20px 0;
  }
  #contact .contents .inner .boxContactForm .icon span {
    margin: 0 0 0 auto;
  }
  #contact .contents .inner .boxContactForm .inputForm {
    width: 100%;
    padding: 0 0 40px 0;
  }
  #contact .contents .inner .boxContactForm .inputForm.type2 {
    padding: 0 0 40px 0;
  }
  #contact .contents .inner .boxContactForm .inputForm ul {
    margin: 0 0 20px 0;
  }
  #contact .contents .inner .boxPrivacy {
    margin: 0 0 100px 0;
  }
  #contact .contents .inner .btnSubmit::before {
    transition: none
  }
  #contact .contents .inner .btnSubmit:hover::before {
    width: 13px;
    right: 30px;
  }
  #contact .contents .inner .btnSubmit::after {
    transition: none
  }
  #contact .contents .inner .btnSubmit:hover::after {
    right: 30px;
  }
}

/* mobile L */
@media screen and (max-width: 480px) {
  #contact .mv {
    height: 250px;
  }
  #contact .mv .inner {
    padding: 115px 0 0 0;
  }
  #contact .mv .inner h2 {
    font-size: 4vw;
  }
  #contact .mv .inner h2 > span:nth-of-type(1) {
    font-size: 8.1vw;
  }
  #contact main > .contents {
    padding: 40px 0 50px 0;
  }
  #contact .mv {
    background: url(../img/mvBg1_sp.jpg) no-repeat center center / cover;
  }
  #contact .contents .inner > p {
    margin: 0 0 20px 0;
    font-size: 4.2vw;
    text-align: left;
    line-height: 1.6;
  }
  #contact .contents .inner .boxContactForm.end {
    margin: 0 0 50px 0;
  }
  #contact .contents .inner .boxContactForm .ttl {
    padding: 24px 0 15px 0;
  }
  #contact .contents .inner .boxContactForm .ttl h3 {
    font-size: 4.2vw;
  }
  #contact .contents .inner .boxContactForm .icon {
    padding: 19px 0 15px 0;
  }
  #contact .contents .inner .boxContactForm .icon span {
    font-size: 4.1vw;
  }
  #contact .contents .inner .boxContactForm .inputForm.type2 {
    padding: 0 0 20px 0;
  }
  #contact .contents .inner .boxContactForm .inputForm input {
    font-size: 4.2vw;
  }
  #contact .contents .inner .boxContactForm .inputForm span {
    font-size: 3.9vw;
  }
  #contact .contents .inner .boxContactForm .inputForm ul li {
    margin: 0 8vw 0 0;
  }
  #contact .contents .inner .boxContactForm .inputForm ul li label {
    font-size: 4.2vw;
  }
  #contact .contents .inner .boxContactForm .inputForm textarea {
    height: 200px;
    font-size: 4.2vw;
  }
  #contact .contents .inner .boxPrivacy {
    margin: 0 0 40px 0;
  }
  #contact .contents .inner .boxPrivacy h4 {
    font-size: 4.2vw;
  }
  #contact .contents .inner .boxPrivacy .txt {
    height: 340px;
    margin: 0 0 40px 0;
    padding: 15px;
  }
  #contact .contents .inner .boxPrivacy .txt h5 {
    font-size: 3.8vw;
  }
  #contact .contents .inner .boxPrivacy .txt p {
    font-size: 3.8vw;
  }
  #contact .contents .inner .boxPrivacy label {
    font-size: 4.2vw;
  }
  #contact .contents .inner .btnSubmit {
    width: 100%;
  }
  #contact .contents .inner .btnSubmit input[type=submit] {
    font-size: 4.2vw;
  }
  .thanks {
    margin: 35px 0 0 0;
    font-size: 3.6vw;
  }
  .thanks .caution {
    font-size: 3.6vw;
  }
  .thanks .caution a {
  }
}

/* mobile M */
@media screen and (max-width: 375px) {
}

/* mobile S */
@media screen and (max-width: 320px) {
}
