.inquiry-head-title {
  font-size: 28px;
  font-weight: 700;
  letter-spacing: 0.6px;
  line-height: 1.45;
  color: var(--color-bg-black);
}

.inquiry-main-text {
  margin-top: 12px;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.5;
  color: var(--color-bg-black);
}

.inquiry-main-text.-is-center {
  text-align: center;
}

.inquiry-main-text + .inquiry-main-text {
  margin-top: 1.2em;
}

@media print,
screen and (min-width: 768px) {
  .inquiry-head-title {
    font-size: 36px;
  }
}

/*
---------------------------------------------------------------------
name: inquiry-online-box
オンラインの箱
---------------------------------------------------------------------
*/
.inquiry-online-box {
  background-color: #F1F4F6;
  margin-top: 40px;
  padding: 21px;
}

.inquiry-online-title {
  font-weight: 700;
  font-size: 20px;
  line-height: 1.5;
  color: var(--color-bg-black);
}

.inquiry-online-text {
  margin-top: 16px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--color-bg-black);
}

.inquiry-online-text > span {
  font-weight: 700;
}

.inquiry-online-box .page-online-btn {
  margin-top: 22px;
}

@media print,
screen and (min-width: 768px) {
  .inquiry-online-box {
    margin-top: 65px;
    padding: 44px 48px;
    display: flex;
    column-gap: 44px;
    align-items: center;
    justify-content: space-between;
  }

  .inquiry-online-title {
    font-size: 24px;
  }

  .inquiry-online-text {
    margin-top: 32px;
  }

  .inquiry-online-box .page-online-btn {
    margin: 0;
    flex-shrink: 0;
  }
}

/*
---------------------------------------------------------------------
name: inquiry-form-wrap
入力フォーム
---------------------------------------------------------------------
*/
.inquiry-form-wrap {
  margin-top: 40px;
}

.inquiry-form-box + .inquiry-form-box {
  margin-top: 24px;
}

.inquiry-form-box.-is-required .inquiry-form-title-span {
  position: relative;
}

.inquiry-form-box.-is-required .inquiry-form-title-span::after {
  content: "必須";
  position: absolute;
  width: 44px;
  height: 26px;
  top: 0;
  right: -52px;
  bottom: 0;
  margin: auto 0;
  background-color: #C62828;
  color: var(--color-white);
  font-size: 14px;
  font-weight: 400;
  display: grid;
  place-items: center;
}


.inquiry-form-title {
  color: var(--color-bg-black);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
}

.inquiry-form-title > .inquiry-form-title-span-gray {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.9;
  color: #6D6D6D;
}

.wpcf7-form-control-wrap {
  display: block;
}

.inquiry-form-content-inner {
  border-radius: 8px;
  overflow: hidden;
  min-height: 56px;
  margin-top: 12px;
  font-size: 16px;
  font-weight: 400;
  color: var(--color-bg-black);
}

.inquiry-form-content-inner.-is-gray {
  background-color: #F1F4F6;
  border: none;
  padding: 8px 12px;
}

.inquiry-form-content-inner textarea,
.inquiry-form-content-inner input {
  resize: none;
  width: 100%;
  display: block;
  padding: 0;
  border: none;
  border-radius: 8px;
  border-color: var(--color-bg-black);
  padding: 8px 12px;
  font-size: 16px;
  font-weight: 400;
  min-height: 56px;
  color: var(--color-bg-black);
  border: 1px solid #ccc;
  border-radius: 8px;
}

/* エラーメッセージ */
.wpcf7-not-valid-tip {
  color: #C62828;
  font-size: 14px;
  font-weight: 600;
  margin-top: 4px;
}

.inquiry-form-content-attention {
  font-size: 14px;
  font-weight: 400;
  color: #6D6D6D;
  margin-top: 4px;
}

/* 添付ファイルの箱 */
.js-inquiry-form-file input {
  display: none;
}

.inquiry-file-btn-box {
  margin-top: 24px;
  background-color: #6D6D6D;
  display: grid;
  place-items: center;
  width: 160px;
  height: 56px;
  border-radius: 28px;
  overflow: hidden;
}

.inquiry-file-btn {
  padding: 0;
  border: none;
  background-color: unset;
  color: var(--color-white);
  font-size: 16px;
  font-weight: 400;
  width: 100%;
  height: 100%;
  cursor: pointer;
}

.inquiry-file-name {
  margin-top: 16px;
  color: #6D6D6D;
  font-size: 16px;
  font-weight: 400;
}

@media print,
screen and (min-width: 768px) {
  .inquiry-form-wrap {
    margin-top: 65px;
  }

  .inquiry-form-box {
    display: grid;
    grid-template-columns: 192px auto;
    column-gap: 92px;
    align-items: flex-start;
  }

  .inquiry-form-box + .inquiry-form-box {
    margin-top: 16px;
  }

  .inquiry-form-box.-is-required .inquiry-form-title-span::after {
    display: none;
  }

  .inquiry-form-content-inner {
    margin-top: 0;
    position: relative;
    z-index: 10;
    overflow: visible;
  }

  .inquiry-form-content-inner.-is-gray {
    padding: 16px 12px;
  }

  .inquiry-form-box.-is-required .inquiry-form-content-inner::before {
    content: "必須";
    position: absolute;
    width: 44px;
    height: 26px;
    top: 0;
    left: -76px;
    background-color: #C62828;
    color: var(--color-white);
    font-size: 14px;
    font-weight: 400;
    display: grid;
    place-items: center;
    z-index: 5;
  }

  .inquiry-form-content-inner textarea,
  .inquiry-form-content-inner input {
    padding: 16px 12px;
  }

  /* エラーメッセージ */
  .wpcf7-not-valid-tip {
    margin-top: 8px;
  }

  .inquiry-form-content-attention {
    margin-top: 8px;
  }

  /* 添付ファイルの箱 */
  .inquiry-form-file-box {
    display: flex;
    align-items: center;
    column-gap: 24px;
    margin-top: 16px;
    justify-content: flex-start;
  }

  .inquiry-form-file-box .wpcf7-form-control-wrap {
    display: none;
  }

  .inquiry-file-btn-box {
    margin-top: 0;
    width: 186px;
    height: 64px;
    border-radius: 32px;
    transition: opacity var(--hover-duration) var(--hover-timing);
  }

  .inquiry-file-btn-box:hover {
    opacity: var(--hover-opacity);
  }

  .inquiry-file-name {
    margin-top: 0;
  }
}

/*
---------------------------------------------------------------------
name: inquiry-form-acceptance-box
個人情報保護法
---------------------------------------------------------------------
*/
.inquiry-form-acceptance-box {
  text-align: center;
  margin: 56px 0;
  font-size: 16px;
  font-weight: 400;
  color: var(--color-bg-black);
}

.inquiry-form-acceptance-box .wpcf7-list-item {
  margin-left: 0;
}

.inquiry-form-acceptance-box .wpcf7-list-item-label::before,
.inquiry-form-acceptance-box.wpcf7-list-item-label::after {
  display: none;
}

.inquiry-form-acceptance-box label {
  display: flex;
  align-items: center;
  column-gap: 16px;
}

.inquiry-form-acceptance-box input {
  width: 24px;
  height: 24px;
  border-radius: 3px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: relative;
  border: 2px solid var(--color-main-blue);
  cursor: pointer;
}

.inquiry-form-acceptance-box input:checked:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="14.932" height="10.656" viewBox="0 0 14.932 10.656"><path id="パス_799" data-name="パス 799" d="M13.87,0,5.337,8.533,1.062,4.258,0,5.32l5.338,5.336L11.31,4.684l3.622-3.622Z" transform="translate(0)" fill="%23006dd2"/></svg>');
  background-size: 14.932px 10.656px;
  background-position: center;
  background-repeat: no-repeat;
}

.inquiry-form-acceptance-link {
  color: var(--color-main-blue);
}


@media print,
screen and (min-width: 768px) {
  .inquiry-form-acceptance-box {
    margin: 54px 0;
  }

  .inquiry-form-acceptance-link {
    transition: opacity var(--hover-duration) var(--hover-timing);
  }

  .inquiry-form-acceptance-link:hover {
    opacity: var(--hover-opacity);
  }
}

/*
---------------------------------------------------------------------
name: inquiry-btn-box
ボタン
---------------------------------------------------------------------
*/
.wpcf7-spinner {
  display: none;
}

.inquiry-btn-box {
  margin-top: 25px;
  display: grid;
  row-gap: 24px;
  justify-content: center;
}

.inquiry-blue-btn,
.inquiry-gray-btn {
  width: 286px;
  height: 56px;
  display: grid;
  place-items: center;
  border-radius: 28px;
}

.inquiry-blue-btn input,
.inquiry-gray-btn input {
  display: none;
}

.inquiry-blue-btn {
  background-color: var(--color-main-blue);
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="22" height="16" viewBox="0 0 22 16"><path id="パス_754" data-name="パス 754" d="M21.854,8.49a.857.857,0,0,0,.059-.089.97.97,0,0,0,0-.8.844.844,0,0,0-.059-.088.99.99,0,0,0-.177-.238c-.008-.007-.01-.018-.018-.025l-8-7a1,1,0,0,0-1.317,1.5l6,5.248H1A1,1,0,0,0,1,9H18.339l-6,5.247a1,1,0,1,0,1.317,1.505l8-7c.008-.007.01-.017.018-.024a.99.99,0,0,0,.177-.238" transform="translate(0 0)" fill="%23fff"/></svg>');
  background-repeat: no-repeat;
  background-size: 22px 16px;
  background-position: center right 16px;
}

.inquiry-blue-btn.-is-center {
  margin-inline: auto;
  margin-top: 57px;
}

.inquiry-blue-btn:has(input:disabled) {
  pointer-events: none;
  opacity: var(--hover-opacity);
}

.inquiry-gray-btn {
  background-color: #6D6D6D;
}

.inquiry-blue-btn-text,
.inquiry-gray-btn-text {
  text-decoration: none;
  color: var(--color-white);
  font-size: 16px;
  font-weight: 400;
  height: 100%;
  width: 100%;
  display: grid;
  place-items: center;
  cursor: pointer;
}

@media print,
screen and (min-width: 768px) {
  .inquiry-btn-box {
    margin-top: 41px;
    row-gap: 0;
    grid-auto-flow: column;
    column-gap: 36px;
  }

  .inquiry-blue-btn,
  .inquiry-gray-btn {
    width: 306px;
    height: 64px;
    border-radius: 32px;
    transition: opacity var(--hover-duration) var(--hover-timing);
  }

  .inquiry-blue-btn:hover,
  .inquiry-gray-btn:hover {
    opacity: var(--hover-opacity);
  }

  .inquiry-blue-btn.-is-center {
    margin-top: 97px;
  }
}

.wpcf7-response-output {
  text-align: center;
  border: none !important;
  font-size: 20px;
  color: #C62828;
  font-weight: 700;
}