@charset "UTF-8";
/*=======================================
	breakpoint
=======================================*/
/*=======================================
	hover
=======================================*/
/*=======================================
	中央配置
=======================================*/
/*=======================================
	可変レスポンシブ
=======================================*/
/* PC */
/* TB */
/* SP */
/*=======================================
	ブラウザ別
=======================================*/
/* Safari */
/* Firefox */
/*-------------------------
- base

▼ 入力画面
- form_sec
- contact_item
- 必須/任意アイコン
- 記入例
- セレクトボックス
- 郵便番号で自動入力
- inquiry_box
- 個人情報の取り扱いについて
- 確認ボタン
- メールが届かない方へ
- エラー画面テキスト

▼ 確認・完了画面
- form_sec
- 確認・戻るボタン
-------------------------*/
/*=======================================
　base
=======================================*/
body:has(.inquiry) {
  background: url("../img/inquiry/cloud_bg.svg") no-repeat center 64.5714285714vw, -webkit-gradient(linear, left top, left bottom, from(#1cc3fb), color-stop(25.92%, #d8fffe), color-stop(92.46%, #7ee2fd), to(#d8fffe));
  background: url("../img/inquiry/cloud_bg.svg") no-repeat center 64.5714285714vw, linear-gradient(#1cc3fb 0%, #d8fffe 25.92%, #7ee2fd 92.46%, #d8fffe 100%);
  background-size: 100% auto;
  min-height: 100vh;
}
body:has(.inquiry) .inquiry .contents_ttl_area {
  margin-bottom: 8.0714285714vw;
}
@media screen and (max-width: 768px) {
  body:has(.inquiry) .inquiry .contents_ttl_area {
    margin-bottom: 14.6666666667vw;
  }
}
body:has(.inquiry) .inquiry .contents_ttl_area .contents_ttl_txt {
  left: 49%;
}

@media screen and (max-width: 768px) {
  .bg_cloud_wrapper .bg_cloud:nth-of-type(6),
  .bg_cloud_wrapper .bg_cloud:nth-of-type(7),
  .bg_cloud_wrapper .bg_cloud:nth-of-type(8) {
    display: none;
  }
}

/* 入力画面
--------------------------------------------------------- */
/* labelタグ 指マークトリ */
label {
  cursor: auto !important;
}

.contact_ttl {
  font-family: var(--murecho);
  font-weight: 500;
  font-size: 2.1428571429vw;
  color: #183251;
  margin-bottom: 1.4285714286vw;
}
@media screen and (max-width: 768px) {
  .contact_ttl {
    font-size: 4.8vw;
    margin-bottom: 5.3333333333vw;
  }
}

/*=======================================
　form_sec
=======================================*/
.form_sec {
  margin-bottom: 8.7857142857vw;
}
@media screen and (max-width: 768px) {
  .form_sec {
    margin-bottom: 16vw;
  }
}
.form_sec .inner {
  max-width: 65vw;
}
@media screen and (max-width: 768px) {
  .form_sec .inner {
    max-width: inherit;
  }
}
.form_sec .inner .contact_lead_txt01 {
  font-family: var(--zenmarugothic);
  font-weight: 500;
  font-size: 1.2857142857vw;
  letter-spacing: 0.03em;
  line-height: 1.777;
  text-align: center;
  margin-bottom: 3.4285714286vw;
}
@media screen and (max-width: 768px) {
  .form_sec .inner .contact_lead_txt01 {
    font-size: 3.7333333333vw;
    margin-bottom: 6.4vw;
  }
}
.form_sec .inner .contact_lead_txt02 {
  font-family: var(--murecho);
  font-weight: 700;
  font-size: 2.1428571429vw;
  text-align: center;
  color: #183251;
  margin-bottom: 5.7142857143vw;
  line-height: 1.466;
}
@media screen and (max-width: 768px) {
  .form_sec .inner .contact_lead_txt02 {
    font-size: 5.3333333333vw;
    margin-bottom: 10.6666666667vw;
  }
}

/*=======================================
　contact_item
=======================================*/
.contact_item {
  display: table;
  width: 100%;
  table-layout: fixed;
  word-break: break-all;
  margin-bottom: 8.8571428571vw;
}
@media screen and (max-width: 640px) {
  .contact_item {
    margin-bottom: 16vw;
  }
}
.contact_item dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .contact_item dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.9285714286vw;
  }
}
.contact_item dl:not(:last-child) {
  margin-bottom: 2.8571428571vw;
}
@media screen and (max-width: 768px) {
  .contact_item dl:not(:last-child) {
    margin-bottom: 8vw;
  }
}
.contact_item dl dt {
  font-family: var(--zenmarugothic);
  font-weight: 500;
  font-size: 1.4285714286vw;
  height: 4.5vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 32.41%;
  gap: 1.2857142857vw;
}
@media screen and (max-width: 768px) {
  .contact_item dl dt {
    width: 100%;
    line-height: 1;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 2.6666666667vw;
    height: auto;
    font-size: 4.2666666667vw;
  }
}
.contact_item dl dt label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  gap: 1.2857142857vw;
}
@media screen and (max-width: 768px) {
  .contact_item dl dt label {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 2.6666666667vw;
  }
}
.contact_item dl dd {
  width: 64.61%;
  min-height: 4.5vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: var(--zenmarugothic);
  font-weight: 500;
  font-size: 1.4285714286vw;
  line-height: 1.45;
}
@media screen and (max-width: 768px) {
  .contact_item dl dd {
    width: 100%;
    font-size: 4.2666666667vw;
  }
}
.contact_item dl dd .h-adr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1.4285714286vw;
}
@media screen and (max-width: 768px) {
  .contact_item dl dd .h-adr {
    width: 100%;
    gap: 5.3333333333vw;
  }
}
.contact_item dl dd .h-adr > span {
  position: relative;
  top: 1em;
}
.contact_item dl dd text-checker-element {
  display: none;
}
.contact_item dl.address_postal, .contact_item dl:last-child {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.contact_item input[type=text],
.contact_item input[type=email],
.contact_item input[type=tel],
.contact_item textarea,
.contact_item select {
  width: 100%;
  height: 4.5vw;
  padding: 0 2.1428571429vw;
  background: #fff;
  border: 0.0714285714vw solid #333;
  border-radius: 0.2857142857vw;
  font-size: 1.4285714286vw;
}
@media screen and (max-width: 768px) {
  .contact_item input[type=text],
  .contact_item input[type=email],
  .contact_item input[type=tel],
  .contact_item textarea,
  .contact_item select {
    border: 0.2666666667vw solid #333;
    height: 12vw;
    padding: 0 4vw;
    border-radius: 1.0666666667vw;
    font-size: 4.2666666667vw;
  }
}
.contact_item textarea {
  resize: vertical;
  height: 9.7857142857vw;
  padding-top: 1.3571428571vw;
  padding-bottom: 1.3571428571vw;
}
@media screen and (max-width: 768px) {
  .contact_item textarea {
    height: 36.5333333333vw;
    padding: 1em;
  }
}

/*=======================================
　必須/任意アイコン
=======================================*/
.mk_icon {
  font-size: 1.1428571429vw;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 50vw;
  width: 5.4285714286vw;
  height: 2vw;
  padding-bottom: 0.0714285714vw;
}
@media screen and (max-width: 768px) {
  .mk_icon {
    font-size: 3.2vw;
    width: 12.8vw;
    height: 4.8vw;
    padding-bottom: 0.2666666667vw;
  }
}
.mk_icon.must_mk {
  background: #FF9B37;
}
.mk_icon.opt_mk {
  background: #858585;
}

/*=======================================
　記入例
=======================================*/
::-webkit-input-placeholder {
  font-family: var(--zenmarugothic);
  font-weight: 500;
  font-size: 1.4285714286vw;
  color: #aeaeae;
}
::-moz-placeholder {
  font-family: var(--zenmarugothic);
  font-weight: 500;
  font-size: 1.4285714286vw;
  color: #aeaeae;
}
:-ms-input-placeholder {
  font-family: var(--zenmarugothic);
  font-weight: 500;
  font-size: 1.4285714286vw;
  color: #aeaeae;
}
::-ms-input-placeholder {
  font-family: var(--zenmarugothic);
  font-weight: 500;
  font-size: 1.4285714286vw;
  color: #aeaeae;
}
::placeholder {
  font-family: var(--zenmarugothic);
  font-weight: 500;
  font-size: 1.4285714286vw;
  color: #aeaeae;
}
@media screen and (max-width: 768px) {
  ::-webkit-input-placeholder {
    font-size: 4.2666666667vw;
  }
  ::-moz-placeholder {
    font-size: 4.2666666667vw;
  }
  :-ms-input-placeholder {
    font-size: 4.2666666667vw;
  }
  ::-ms-input-placeholder {
    font-size: 4.2666666667vw;
  }
  ::placeholder {
    font-size: 4.2666666667vw;
  }
}

select {
  font-family: var(--zenmarugothic);
  font-weight: 500;
  font-size: 1.4285714286vw;
  color: #333;
}
@media screen and (max-width: 768px) {
  select {
    font-size: 4.2666666667vw;
  }
}
select:invalid {
  color: #aeaeae;
}
select option {
  color: #333;
}

/*=======================================
　セレクトボックス
=======================================*/
label:has(.selectbox) {
  position: relative;
}
label:has(.selectbox)::after {
  content: "";
  width: 1.2142857143vw;
  height: 0.9285714286vw;
  display: inline-block;
  background: #183251;
  position: absolute;
  top: 1.7857142857vw;
  right: 2.1428571429vw;
  -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
          clip-path: polygon(0 0, 100% 0, 50% 100%);
}
@media screen and (max-width: 768px) {
  label:has(.selectbox)::after {
    width: 3.2vw;
    height: 2.6666666667vw;
    top: 4.8vw;
    right: 4vw;
  }
}

/*=======================================
　郵便番号で自動入力
=======================================*/
.address_postal label:has(.p-postal-code), .address_postal label:has(.p-region) {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.address_postal .p-postal-code, .address_postal .p-region {
  width: 16.6428571429vw !important;
}
@media screen and (max-width: 768px) {
  .address_postal .p-postal-code, .address_postal .p-region {
    width: 53.3333333333vw !important;
  }
}
.address_postal .selectbox {
  position: relative;
}
.address_postal label {
  width: 100%;
}

/*=======================================
　inquiry_box
=======================================*/
.inquiry_box {
  background: #fff;
  border: 0.0714285714vw solid #707070;
  padding: 2.1428571429vw;
}
@media screen and (max-width: 768px) {
  .inquiry_box {
    padding: 5.3333333333vw;
  }
}

/*=======================================
　個人情報の取り扱いについて
=======================================*/
.privacy_area {
  margin-bottom: 8.8571428571vw;
}
@media screen and (max-width: 768px) {
  .privacy_area {
    margin-bottom: 16vw;
  }
}
.privacy_area .checkbox_privacy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1em;
  position: relative;
  padding-left: 2.5vw;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  font-family: var(--zenmarugothic);
  font-weight: 500;
  font-size: 1.4285714286vw;
  cursor: pointer !important;
}
@media screen and (max-width: 768px) {
  .privacy_area .checkbox_privacy {
    font-size: 4.2666666667vw;
    padding-left: 6.6666666667vw;
  }
}
.privacy_area .checkbox_privacy:has(.ajax_form_txt_error) {
  margin-bottom: 2.1428571429vw;
}
@media screen and (max-width: 768px) {
  .privacy_area .checkbox_privacy:has(.ajax_form_txt_error) {
    margin-bottom: 5.3333333333vw;
  }
}
.privacy_area .checkbox_privacy .ajax_form_txt_error {
  bottom: -1.7857142857vw !important;
}
@media screen and (max-width: 768px) {
  .privacy_area .checkbox_privacy .ajax_form_txt_error {
    bottom: -5.3333333333vw !important;
  }
}
.privacy_area .checkbox_privacy .checkbox {
  display: none;
}
.privacy_area .checkbox_privacy .checkmark {
  position: absolute;
  top: 0.4285714286vw;
  left: 0;
  height: 1.3571428571vw;
  width: 1.4285714286vw;
  background: #fff;
  border: 0.0714285714vw solid #979797;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 768px) {
  .privacy_area .checkbox_privacy .checkmark {
    height: 4vw;
    width: 4vw;
    top: 0.8vw;
  }
}
.privacy_area .checkbox_privacy .checkmark::after {
  border-right: 0.1428571429vw solid #181a2e;
  border-bottom: 0.1428571429vw solid #181a2e;
  content: "";
  display: block;
  width: 0.5vw;
  height: 0.7857142857vw;
  left: 0.4285714286vw;
  opacity: 0;
  position: absolute;
  top: 0.0714285714vw;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
  .privacy_area .checkbox_privacy .checkmark::after {
    border-right: 0.5333333333vw solid #181a2e;
    border-bottom: 0.5333333333vw solid #181a2e;
    width: 1.3333333333vw;
    height: 2.9333333333vw;
    left: 1.3333333333vw;
    top: 0;
  }
}
.privacy_area .checkbox_privacy input:checked ~ .checkmark::after {
  opacity: 1;
}
.privacy_area .checkbox_privacy .ajax_form_txt_error {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  bottom: 0;
  width: 100%;
  pointer-events: none;
}
.privacy_area .inquiry_box {
  text-align: center;
}
.privacy_area .txt {
  font-family: var(--zenmarugothic);
  font-weight: 500;
  font-size: 1.4285714286vw;
  margin-bottom: 1.4285714286vw;
  line-height: 1.45;
}
@media screen and (max-width: 768px) {
  .privacy_area .txt {
    font-size: 3.7333333333vw;
    margin-bottom: 5.3333333333vw;
  }
}
.privacy_area .txt a {
  text-decoration: underline;
  color: #2800FF;
  text-underline-offset: 0.7142857143vw;
}
@media screen and (max-width: 768px) {
  .privacy_area .txt a {
    text-underline-offset: 0.8vw;
  }
}

/*=======================================
　確認ボタン
=======================================*/
.link_area {
  margin-bottom: 0;
}
@media screen and (max-width: 640px) {
  .link_area {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 5.3333333333vw;
  }
}
.link_area .link_btn {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.link_area .link_btn input[type=button] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: none;
  border: none;
  padding: 0;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
  cursor: pointer;
  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;
  text-align: center;
}
@media (min-width: 769px) and (hover: hover) and (pointer: fine) {
  .link_area .link_btn:hover {
    opacity: 0.8;
  }
}
@media (min-width: 769px) and (-ms-high-contrast: none), (min-width: 769px) and (-ms-high-contrast: active) {
  .link_area .link_btn:hover {
    opacity: 0.8;
  }
}

/*=======================================
　メールが届かない方へ
=======================================*/
.inquiry_about .inner {
  max-width: 65vw;
}
@media screen and (max-width: 768px) {
  .inquiry_about .inner {
    max-width: inherit;
  }
}
.inquiry_about .inquiry_box {
  background: #0493dc;
  padding: 2.8571428571vw;
  border: none;
}
@media screen and (max-width: 768px) {
  .inquiry_about .inquiry_box {
    padding: 5.3333333333vw;
  }
}
.inquiry_about .inquiry_box .contact_ttl {
  color: #fff;
  text-align: center;
}
.inquiry_about .inquiry_box p {
  font-family: var(--zenmarugothic);
  font-weight: 500;
  font-size: 1.4285714286vw;
  letter-spacing: 0.03em;
  line-height: 1.6;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .inquiry_about .inquiry_box p {
    font-size: 4.2666666667vw;
  }
}

/*=======================================
　エラー画面テキスト
=======================================*/
.ajax_form_txt_error {
  font-family: var(--zenmarugothic);
  font-weight: 500;
  font-size: 1.1428571429vw;
  color: #ff9b37;
  margin-top: 0.2857142857vw;
}
@media screen and (max-width: 768px) {
  .ajax_form_txt_error {
    font-size: 3.7333333333vw;
  }
}

/* 確認・完了画面
--------------------------------------------------------- */
/*=======================================
　form_sec
=======================================*/
.form_sec.bg_on .inner {
  background: #fff;
  max-width: 75.9285714286vw;
  border-radius: 1.0714285714vw;
  padding: 7.1428571429vw 11.0714285714vw;
}
@media screen and (max-width: 768px) {
  .form_sec.bg_on .inner {
    padding: 8vw 5%;
    max-width: inherit;
  }
}
.form_sec.bg_on .inner .contact_item {
  margin: 0 auto 8.1428571429vw;
}
@media screen and (max-width: 768px) {
  .form_sec.bg_on .inner .contact_item {
    margin: 0 auto 16vw;
  }
}
.form_sec.bg_on .inner .contact_item .contact_lead_txt01 {
  margin-bottom: 0;
}
.form_sec.bg_on .inner .contact_item dl dt {
  width: 39.1%;
}
@media screen and (max-width: 768px) {
  .form_sec.bg_on .inner .contact_item dl dt {
    width: 100%;
  }
}
.form_sec.bg_on .inner .contact_item dl dd {
  width: 58.92%;
}
@media screen and (max-width: 768px) {
  .form_sec.bg_on .inner .contact_item dl dd {
    width: 100%;
  }
}

/*=======================================
　確認/戻るボタン
=======================================*/
.link_area .link_btn.return {
  background: #183251;
  color: #fff;
}
.link_area .link_btn.return input {
  padding-right: 1.8571428571vw;
}
@media screen and (max-width: 768px) {
  .link_area .link_btn.return input {
    padding-right: 6.9333333333vw;
  }
}
.link_area .link_btn .arrow {
  z-index: -1;
}/*# sourceMappingURL=inquiry.css.map */