@charset "UTF-8";
.page.contact {
  /*リセット */
  /* チェックボックスデザイン */
}
.page.contact .main-contens {
  background-color: #f0f0f9;
  padding-bottom: 60px;
}
.page.contact .page-title {
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 4.9138888889;
  width: 96%;
  margin: 0 auto 40px;
  border-bottom: 1px solid #180097;
}
.page.contact .contact-text {
  color: #180097;
  text-align: center;
  font-size: 15px;
  letter-spacing: 0.05em;
  line-height: 2.5;
  margin-bottom: 60px;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
.page.contact .capacity-text {
  color: #180097;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 2.2222222222;
  text-align: center;
  margin-bottom: 100px;
}
.page.contact .form-check-area .form-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.page.contact .form-check-area label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.page.contact .form-check-area input[type=radio] {
  top: 0;
}
.page.contact .form-item {
  margin-bottom: 18px;
}
.page.contact .form-item.bk-color {
  background: #fff;
  padding: 30px;
}
.page.contact .form-item label {
  cursor: pointer;
}
.page.contact .form-item .wpcf7-list-item-label {
  color: #00196d;
  font-size: 15px;
  letter-spacing: 0.08em;
  font-weight: 500;
}
.page.contact .form-item-ttl {
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.7;
  position: relative;
}
.page.contact .form-item-ttl .address {
  margin-left: 0;
}
.page.contact .hiss {
  position: absolute;
  right: 0;
  top: 0;
  color: #ff6633;
}
.page.contact input[type=text] {
  background-color: #fff;
  display: block;
  width: 100%;
  height: 48px;
  padding: 10px;
  outline: none;
}
.page.contact input[type=email] {
  background-color: #fff;
  display: block;
  width: 100%;
  height: 48px;
  padding: 10px;
  outline: none;
}
.page.contact input[type=tel] {
  background-color: #fff;
  display: block;
  width: 100%;
  height: 48px;
  padding: 10px;
  outline: none;
}
.page.contact .select_wrapper .wpcf7-form-control-wrap {
  position: relative;
  width: 100%;
  max-width: 231px;
  display: block;
}
.page.contact .select_wrapper .wpcf7-form-control-wrap::after {
  content: "";
  position: absolute;
  right: 5%;
  height: 12px;
  top: 55%; /* 縦軸をセンタリングする */
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%); /* 縦軸をセンタリングする */
  border: 6px solid transparent;
  border-top: 12px solid #180097; /* 好みで色を変えてください */
}
.page.contact select {
  background-color: #fff;
  display: block;
  max-width: 231px;
  width: 100%;
  height: 48px;
  padding: 10px;
  border-radius: 7px;
  color: #180097;
  cursor: pointer;
  outline: none;
}
.page.contact textarea {
  padding: 10px;
  background-color: #fff;
  display: block;
  width: 100%;
  height: 154px;
}
.page.contact .radio-box {
  background-color: #fff;
  padding: 15px 0;
}
.page.contact .radio-box .wpcf7-radio {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.page.contact .form-confirm {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #180097;
  font-size: 15px;
}
.page.contact .form-confirm .wpcf7-list-item {
  width: 100%;
  margin: 0;
}
.page.contact .form-confirm .wpcf7-list-item-label::after {
  display: none;
}
.page.contact input[type=submit] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  cursor: pointer;
  width: 100%;
  height: 47px;
  background-color: #180097;
  text-align: center;
  color: #f0f0f9;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.1em;
  margin: 40px auto 30px;
  background-image: url(../img/contact/arrow.png);
  background-repeat: no-repeat;
  background-size: 10px 10px;
  background-position: 96% center;
}
.page.contact .policy-link {
  text-align: center;
  text-decoration: underline;
  font-size: 14px;
  letter-spacing: 0.1em;
  line-height: 2.5;
  font-weight: 500;
  display: block;
}
.page.contact .form-confirm {
  margin-top: 38px;
  font-size: 15px;
}
.page.contact .contact-info {
  margin-top: 92px;
}
.page.contact .contact-info {
  max-width: 300px;
  width: 100%;
  margin: auto;
  margin-top: 92px;
}
.page.contact input[type=checkbox] {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: middle;
}
.page.contact input[type=checkbox] {
  cursor: pointer;
  padding-left: 25px; /*label手前にチェックボックス用の余白を開ける*/
  vertical-align: middle;
  position: relative;
  top: -2px;
}
.page.contact input[type=checkbox]::before,
.page.contact input[type=checkbox]::after {
  content: "";
  display: block;
  position: absolute;
}
.page.contact input[type=checkbox]::before {
  background-color: #fff;
  border-radius: 0%;
  border: 1px solid #180097;
  width: 16px; /*チェックボックスの横幅*/
  height: 16px; /*チェックボックスの縦幅*/
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  top: 50%;
  left: 4px;
}
.page.contact input[type=checkbox]::after {
  border-bottom: 2px solid #180097; /*チェックの太さ*/
  border-left: 2px solid #180097; /*チェックの太さ*/
  opacity: 0; /*チェック前は非表示*/
  height: 5px; /*チェックの高さ*/
  width: 8px; /*チェックの横幅*/
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  top: -4px; /*チェック時の位置調整*/
  left: 8px; /*チェック時の位置調整*/
}
.page.contact input[type=checkbox]:checked::after {
  opacity: 1; /*チェック後表示*/
}
.page.contact input[type=radio] {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: middle;
}
.page.contact input[type=radio] {
  cursor: pointer;
  padding-left: 25px; /*label手前にチェックボックス用の余白を開ける*/
  vertical-align: middle;
  position: relative;
  top: -2px;
}
.page.contact input[type=radio]::before,
.page.contact input[type=radio]::after {
  content: "";
  display: block;
  position: absolute;
}
.page.contact input[type=radio]::before {
  background-color: #fff;
  border-radius: 0%;
  border: 1px solid #00196d;
  width: 16px; /*チェックボックスの横幅*/
  height: 16px; /*チェックボックスの縦幅*/
  border-radius: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  top: 50%;
  left: 4px;
}
.page.contact input[type=radio]::after {
  width: 10px; /*チェックボックスの横幅*/
  height: 10px; /*チェックボックスの縦幅*/
  background-color: #e95513;
  border-radius: 50%;
  top: 0%;
  bottom: 0;
  margin: auto;
  left: 7px;
  opacity: 0;
}
.page.contact input[type=radio]:checked::after {
  opacity: 1; /*チェック後表示*/
}
.page.contact .recapcha {
  width: 100%;
  margin-top: 20px;
  text-align: center;
}
.page.contact .recapcha p {
  color: #180097;
  line-height: 1.5;
  font-size: 12px;
}
.page.contact .form-confirm p {
  width: 100%;
}
.page.contact .form-confirm .wpcf7-list-item-label {
  margin-left: 5px;
}
.page.contact .wpcf7-response-output {
  color: #180097;
}
.page.contact .wpcf7 form.invalid .wpcf7-response-output, .page.contact .wpcf7 form.unaccepted .wpcf7-response-output, .page.contact .wpcf7 form.payment-required .wpcf7-response-output {
  border-color: #ff6633;
}
.page.contact .contact {
  position: relative;
  padding-top: 77px;
}
.page.contact .contact .contact-info-text {
  padding: 0 10px;
}
.page.contact .contact .partner-area-text {
  width: 95%;
}
.page.contact .contact .partner-logo-ul {
  width: 95%;
}
.page.contact .contact .special-sponsorship-max-text-list, .page.contact .contact .special-sponsorship-big-text-list, .page.contact .contact .special-sponsorship-medium-text-list, .page.contact .contact .special-sponsorship-normal-text-list {
  width: 33.33333%;
}
.page.contact .contact .form {
  padding-bottom: 105px;
}
.page.contact .contact .form-check-area .form-item {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.page.contact .contact .contact-info {
  max-width: 226px;
}
.page.contact .contact .recapcha {
  text-align: left;
}
.page.contact .contact .contact-ttl {
  max-width: 206px;
}
.page.contact .contact input[type=submit] {
  max-width: 307px;
}
.page.contact .contact .recapcha {
  max-width: 307px;
  margin: auto;
  margin-top: 10px;
}
.page.contact .contact .recapcha p {
  font-size: 11px;
}
.page.contact .contact input[type=checkbox]::after {
  top: 4px;
}
.page.contact .contact .wpcf7-checkbox {
  position: relative;
  left: -5px;
}
.page.contact .contact .contact-info-text {
  line-height: 1.8461538462;
  margin-top: 20px;
}
.page.contact .contact .contact-info-text .spv {
  display: inline-block;
}
.page.contact .contact .partner-area {
  padding-top: 60px;
}
.page.contact .contact .partner-area-title {
  margin-bottom: 25px;
}
.page.contact .contact .partner-logo-ul {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.page.contact .contact .partner-logo-list {
  width: 100%;
  margin-bottom: 15px;
}
.page.contact .contact .partner-logo-list:last-child {
  margin-bottom: 0;
}
.page.contact .contact .partner-separator-line {
  width: 95%;
  margin-bottom: 45px;
}
.page.contact .contact .partner-separator-line.second {
  margin-bottom: 35px;
}
.page.contact .contact .special-sponsorship-ul {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.page.contact .contact .special-sponsorship-list {
  width: 100%;
  margin-bottom: 35px;
}
.page.contact .contact .special-sponsorship-list:last-child {
  margin-bottom: 0;
}
.page.contact .contact .partner-area-text {
  width: 92%;
  letter-spacing: 0.113em;
  line-height: 1.6920659859;
}
.page.contact .contact .special-sponsorship-max-text-ul, .page.contact .contact .special-sponsorship-big-text-ul, .page.contact .contact .special-sponsorship-medium-text-ul, .page.contact .contact .special-sponsorship-normal-text-ul {
  width: 95%;
}
.page.contact .contact .special-sponsorship-max-text-list, .page.contact .contact .special-sponsorship-big-text-list {
  width: 100%;
  margin-bottom: 15px;
  text-align: center;
}
.page.contact .contact .special-sponsorship-medium-text-list, .page.contact .contact .special-sponsorship-normal-text-list {
  width: 50%;
  margin-bottom: 18px;
}
.page.contact .contact .form-item.bk-color .wpcf7-list-item {
  width: 100%;
}