@charset "UTF-8";

/*======================================================

    基本設定

======================================================*/

/*  〇〇  */


@media screen and (max-width: 1366px) {

}

@media screen and (max-width: 768px) {

}

/*======================================================

    〇〇

======================================================*/

/*  〇〇  */


.inner_wrap {
  width: 100%;
  max-width: 1206px;
  margin: 0 auto;
  padding: 120px 20px;
}


.wp-block-fsb-flexible-spacer {
  margin: 0;
}


@media screen and (max-width: 1366px) {

}

@media screen and (max-width: 768px) {

}

/*上書き用CSS*/
.wp-block-button__link{border-radius:0;}
.wp-block-table td, .wp-block-table th{border:none;}
.wp-contents .wp-block-columns{align-items:center !important;}
.page-id-17 .wp-block-group{background:none;}
/*======================================================

    お問い合わせ

======================================================*/

/*  〇〇  */
.contact_tel_contents {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 常に3列 */
  gap: 40px;
  margin: 0 auto;
  box-sizing: border-box;
}

.contact_tel_box {
  background-color: #fff;
  padding: 20px;
  flex: 1 1 calc(33.333% - 40px); /* PCで3列配置 */
  box-sizing: border-box;
}

.contact_tel_title {
  position: relative;
  font-weight: 500;
  padding-bottom: 20px;
  border-bottom: 1px solid #bcbcbc;
  font-size: 16px;
  line-height: 1.4;
}

.contact_tel {
  position: relative;
  font-size: 28px;
  font-weight: 500;
  text-align: center;
  height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 15px;
}

.contact_tel img {
  width: 24px;
  margin-right: 6px;
  vertical-align: middle;
}

@media screen and (max-width: 768px) {
  .contact_tel_contents {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }

  .contact_tel_box:nth-child(5) {
    justify-self: center;
    width: 100%;
  }
}

@media screen and (max-width: 550px) {
  .contact_tel_contents {
    grid-template-columns: 1fr;
  }

  .contact_tel_box:nth-child(5) {
    grid-column: auto;
    width: 100%;
  }
}

/*======================================================

    404

======================================================*/

/*  〇〇  */
.error404 .sub-mv {
  height: 90px;
  padding: 0;
}
.error404 .cta {
  display: none;
}
.error-404 {
  text-align: center;
}

.error-title {
  font-size: 60px;
  font-weight: 500;
  color: #25263F;
  margin-bottom: 70px;
}

.error-message {
  font-size: 34px;
  font-weight: 500;
  color: #25263F;
  margin-bottom: 40px;
}

.error-desc {
  font-size: 16px;
  font-weight: 400;
  color: #000;
  line-height: 1.8;
  margin-bottom: 60px;
}

.btn {
  display: inline-block;
  padding: 20px;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  transition: 0.3s;
  position: relative;
  max-width: 280px;
  width: 100%;
}

.btn_navy .btn {
  background-color: #25263F;
  border: 1px solid #25263F;
}
.btn_navy .btn:hover {
  background-color: inherit;
  color: #25263F;
}

.btn_navy .btn::after {
  content: "";
  width: 7px;
  aspect-ratio: 6.694 / 11.266;
  display: block;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="6.694" height="11.266" viewBox="0 0 6.694 11.266"><path id="パス_233" data-name="パス 233" d="M583.735,3803.205l5.1,5.1-5.1,5.1" transform="translate(-583.204 -3802.675)" fill="none" stroke="%23fff" stroke-width="1.5"/></svg>');
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  right: 20px;
  translate: 0 -50%;
}
.btn_navy .btn:hover:after {
  content: "";
  width: 7px;
  aspect-ratio: 6.694 / 11.266;
  display: block;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="6.694" height="11.266" viewBox="0 0 6.694 11.266"><path id="パス_233" data-name="パス 233" d="M583.735,3803.205l5.1,5.1-5.1,5.1" transform="translate(-583.204 -3802.675)" fill="none" stroke="%2325263F" stroke-width="1.5"/></svg>');
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  right: 20px;
  translate: 0 -50%;
}

@media screen and (max-width: 768px) {

.error404 .sub-mv {
  height: 55px;
}

.error-title {
  font-size: 40px;
  margin-bottom: 40px;
}

.error-message {
  font-size: 24px;
  margin-bottom: 40px;
}

.error-desc {
  font-size: 16px;
  margin-bottom: 60px;
}

.btn {
  display: inline-block;
  padding: 20px;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  transition: 0.3s;
  position: relative;
  max-width: 280px;
  width: 100%;
}

.btn_navy .btn {
  background-color: #25263F;
  border: 1px solid #25263F;
}
.btn_navy .btn:hover {
  background-color: inherit;
  color: #25263F;
}

.btn_navy .btn::after {
  content: "";
  width: 7px;
  aspect-ratio: 6.694 / 11.266;
  display: block;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="6.694" height="11.266" viewBox="0 0 6.694 11.266"><path id="パス_233" data-name="パス 233" d="M583.735,3803.205l5.1,5.1-5.1,5.1" transform="translate(-583.204 -3802.675)" fill="none" stroke="%23fff" stroke-width="1.5"/></svg>');
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  right: 20px;
  translate: 0 -50%;
}
.btn_navy .btn:hover:after {
  content: "";
  width: 7px;
  aspect-ratio: 6.694 / 11.266;
  display: block;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="6.694" height="11.266" viewBox="0 0 6.694 11.266"><path id="パス_233" data-name="パス 233" d="M583.735,3803.205l5.1,5.1-5.1,5.1" transform="translate(-583.204 -3802.675)" fill="none" stroke="%2325263F" stroke-width="1.5"/></svg>');
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  right: 20px;
  translate: 0 -50%;
}

}

/*======================================================

    お問い合わせ

======================================================*/

/* reset */
.contactform select,
.contactform input[type="reset"] {
  background-color: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
  appearance: none;
  color: #000;
}
.contactform select {
  position: relative;
  padding: 2px 4px;
}
.select_box > div {
  position: relative;
}
.select_box > div::after {
  content: '';
  position: absolute;
  background: url(../assets/images/icon_arrow_gray.svg) center top / contain no-repeat;
  width: 17px;
  height: 10px;
  top: 50%;
  right: 20px;
  margin-top: -5px;
}

.contactform select,
.contactform textarea,
.contactform input {
  border: 1px solid #DCDCDC;
}

/* cf7のトップレベルの要素 */
/* .wpcf7 {} */

/* form */
.contactform form > div {
  width: 100%;
}
form > div:not(:last-child) {
  margin: 0 0 24px 0;
}
.contactform form select,
.contactform form input,
.contactform form textarea {
  width: 100%;
  padding: 12px 20px;
  background: #fff;
  border: 1px solid #DCDCDC;
  font-size: 16px;
}
.contactform form textarea {
  height: 140px;
}
.contactform #your-select {
  font-size: 16px;
}
.contactform form ::placeholder {
  font-size: 16px;
  color: #767676;
}
.contactform select option:first-child {
  display: none;
}
.contactform select option {
  color: #000;
}
/* フォームページ上部のテキスト */
.contactform .form-content-top {
  padding: 5px 0 0;
}
.contactform .form-content__inner {
  padding-top: 11px;
  padding-bottom: 11px;
  padding-left: 24px;
  padding-right: 24px;
  margin: 0 auto;
  max-width: 1248px;
}
.contactform .form-title {
  font-size: 22px;
  font-weight: 500;
  color: #2b55a0;
}
.contactform .cf7-form-row {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 8%;
}
/* 各入力欄の横幅 */
/*
御社名
お名前・ご担当者名
市町村以下
E-mail
 */
.cf7-form-row:nth-of-type(1) .cf7-form-input-wrapper,
.cf7-form-row:nth-of-type(2) .cf7-form-input-wrapper,
.cf7-form-row:nth-of-type(3) .cf7-form-input-wrapper,
.cf7-form-row:nth-of-type(4) .cf7-form-input-wrapper,
.cf7-form-row:nth-of-type(7) .cf7-form-input-wrapper,
.cf7-form-row:nth-of-type(9) .cf7-form-input-wrapper {
  max-width: 600px;
}
/*
郵便番号
都道府県
電話番号
 */
.cf7-form-row:nth-of-type(5) .cf7-form-input-wrapper,
.cf7-form-row:nth-of-type(6) .cf7-form-input-wrapper,
.cf7-form-row:nth-of-type(8) .cf7-form-input-wrapper {
  max-width: 300px;
}
.cf7-form-row > label,
.cf7-form-row > div {
  width: 100%;
}
.cf7-form-row > label {
  display: flex;
  cursor: pointer;
  color: #000;
  padding: 0;
  width: 204px;
  justify-content: space-between;
  font-size: 16px;
  font-weight: 500;
  min-width: 204px;
  align-items: center;
}
/* textareaのラベルを除き、inputの縦幅に対して中央位置に揃える */
/* .cf7-form-row > label {
} */
/* 必須マーク */
.cf7-form-row > label > span {
  display: grid;
  place-content: center;
  background: #d71418;
  border: 1px solid #cc0000;
  color: #fff;
  margin: 0;
  font-size: 12px;
  width: 40px;
  min-width: min-content;
  height: 21px;
}
.cf7-form-row.responce {
  margin: 0;
}
.cf7-form-row.submit {
  flex-direction: column;
  padding: 50px 0 0 0;
  margin: 0;
}

/* 送信するボタン */
/* appleデバイス用リセット */
.contactform input[type="submit"],
.contactform input[type="button"] {
  appearance: none;
  border-radius: 0;
}
.contactform input[type="submit"],
.contactform input[type="button"] {
  display: block;
  width: 100%;
  max-width: 280px;
  margin: auto;
  font-weight: 400;
  transition: all 0.4s;
  padding: 17px 20px;
  font-size: 16px;
  cursor: pointer;
}
.contactform input[type="submit"] {
  background-color: #25263F;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="6.694" height="11.266" viewBox="0 0 6.694 11.266"><path id="パス_233" data-name="パス 233" d="M583.735,3803.205l5.1,5.1-5.1,5.1" transform="translate(-583.204 -3802.675)" fill="none" stroke="%23fff" stroke-width="1.5"/></svg>');
  background-repeat: no-repeat;
  background-position: right 20px center;
  border: 1px solid #25263F;
  color: #fff;
}
.contactform input[type="button"] {
  background: #fff;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="6.694" height="11.266" viewBox="0 0 6.694 11.266"><path d="M588.835,3803.205l-5.1,5.1 5.1,5.1" transform="translate(-583.204 -3802.675)" fill="none" stroke="%23000" stroke-width="1.5"/></svg>');
  background-repeat: no-repeat;
  background-position: left 20px center;
  border: 1px solid #25263F;
  color: #000;
}

@media screen and (max-width: 768px){
.contactform input[type="submit"],
.contactform input[type="button"] {
  max-width: 100%;
	}
}
.wpcf7 .wpcf7-submit:disabled {
  border: #a3a3a3 1px solid;
  background-color: #a3a3a3;
  transition: unset;
  color: #fff;
  pointer-events: none;
}
.wpcf7 .wpcf7-submit:disabled:hover,
.wpcf7 .wpcf7-submit:disabled:focus {
  border: #a3a3a3 1px solid;
  background-color: inherit;
  color: #a3a3a3;
}
.contactform input[type="submit"]:hover,
.contactform input[type="submit"]:focus{
  background-color: inherit;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="6.694" height="11.266" viewBox="0 0 6.694 11.266"><path id="パス_233" data-name="パス 233" d="M583.735,3803.205l5.1,5.1-5.1,5.1" transform="translate(-583.204 -3802.675)" fill="none" stroke="%2325263F" stroke-width="1.5"/></svg>');
  background-repeat: no-repeat;
  background-position: right 20px center;
  color: #25263F;
  border: 1px solid currentColor;
}
.contactform input[type="button"]:hover,
.contactform input[type="button"]:focus {
  background-color: #888;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="6.694" height="11.266" viewBox="0 0 6.694 11.266"><path d="M588.835,3803.205l-5.1,5.1 5.1,5.1" transform="translate(-583.204 -3802.675)" fill="none" stroke="%23fff" stroke-width="1.5"/></svg>');
  background-repeat: no-repeat;
  background-position: left 20px center;
  color: #fff;
  border: 1px solid #888;
}

/* スピナー */
.wpcf7-spinner {
  /* display: block; */
  display: none;
  margin: auto;
  width: 20px;
  height: 20px;
}
/* 承認同意チェック */
.cf7-form-row.acceptance {
  width: 100%;
  padding: 30px 30px 0;
  margin: 0;
}
.cf7-form-row.acceptance > div {
  width: 100%;
  text-align: center;
  margin: 0;
}
.cf7-form-row.acceptance .wpcf7-list-item {
  margin: 0;
}
.cf7-form-row.acceptance .wpcf7-list-item label {
  margin: 0;
  cursor: pointer;
  display: flex;
  align-items: first baseline;
}
.cf7-form-row.acceptance .wpcf7-list-item label input {
  cursor: pointer;
}
.cf7-form-row.acceptance .wpcf7-list-item label input,
.cf7-form-row.acceptance .wpcf7-list-item label span {
  display: inline-block;
  width: auto;
}
.cf7-form-row.acceptance .wpcf7-list-item label span {
  margin: 0 0 0 8px;
  font-size: 16px;
  text-align: left;
  font-weight: 400;
  color: #000;
}
.cf7-form-row.acceptance .wpcf7-list-item label span a {
  color: #2b55a0;
  font-weight: 600;
  text-decoration: underline;
}
.cf7-form-row.acceptance .wpcf7-list-item label span a:hover {
  opacity: 0.8;
}
.wpcf7-list-item-label::before,
.wpcf7-list-item-label::after {
  display: none;
}
/* 承認のチェックボックスをカスタマイズ */
.cf7-form-row.acceptance input[type="checkbox"] {
  position: relative;
  margin: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  /* 隣接するテキストのfont-sizeとあわせる */
  height: 16px;
  padding: 0 0 0 18px;
}
.cf7-form-row.acceptance input[type="checkbox"]::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 20px;
  height: 20px;
  border: 1px solid #b2b2b2;
  background: #fff;
}
.cf7-form-row.acceptance input[type="checkbox"]::after {
  position: absolute;
  top: 3px;
  left: 6px;
  content: "";
  width: 7px;
  height: 11px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(45deg);
  opacity: 0;
}
.cf7-form-row.acceptance input[type="checkbox"]:hover:before,
.cf7-form-row.acceptance input[type="checkbox"]:focus:before {
  border: 1px solid #b2b2b2;
}
.cf7-form-row.acceptance input[type="checkbox"]:checked::before {
  background: #187FC4;
}
.cf7-form-row.acceptance input[type="checkbox"]:checked::after {
  opacity: 1;
}
/* 送信ボタン押下後の各種メッセージ */
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
  width: 100%;
  text-align: center;
  margin: 10px 0;
  padding: 4px 8px;
}
/* 各入力欄毎に表示されるエラーメッセージ */
.wpcf7-not-valid-tip {
  /* 必要に応じてスタイリングする */
  font-weight: 400;
  font-size: 14px;
  padding-left: 4px;
}
/* ラジオボタン生成時のクラスに向けてのスタイル */
/* .wpcf7-radio{
} */
/* ラジオボタンをカスタマイズ */
.wpcf7-radio label {
  cursor: pointer;
}
.wpcf7-radio input[type="radio"] {
  position: relative;
  margin: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  /* 隣接するテキストのfont-sizeとあわせる */
  height: 16px;
  padding: 0 0 0 18px;
}
.wpcf7-radio input[type="radio"]::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 20px;
  height: 20px;
  border: 1px solid #b2b2b2;
  border-radius: 50%;
  background: #fff;
}
.wpcf7-radio input[type="radio"]::after {
  position: absolute;
  top: 5px;
  left: 5px;
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  opacity: 0;
}
.wpcf7-radio input[type="radio"]:hover:before,
.wpcf7-radio input[type="radio"]:focus:before {
  border: 1px solid #b2b2b2;
}
.wpcf7-radio input[type="radio"]:checked::after {
  background: #006DB6;
}
.wpcf7-radio input[type="radio"]:checked::after {
  opacity: 1;
}
.wpcf7-list-item {
  display: inline-block;
  margin: 0;
}
.wpcf7-list-item.first{
  padding-right: 20px;
}
.wpcf7-radio label {
  display: flex;
  align-items: center;
  padding: 4px 8px 4px 0px;
  font-size: 16px;
}
/* ラジオボタンの項目名 */
.wpcf7-radio label span {
  width: fit-content;
  margin-left: 8px;
}
/* ラジオボタンのチェック部分 */
.wpcf7-radio label input {
  width: fit-content;
}
[data-name="your-selected-radio-check01"] {
  display: inline-block;
}
.contactform input[type="reset"] {
  transition: 0.4s;
  font-size: 12px;
  width: fit-content;
  display: block;
  margin: 12px auto 0;
  border-bottom: 1px solid #F4F4F4;
}
.contactform input[type="reset"]:hover,
.contactform input[type="reset"]:focus {
  border-bottom: 1px solid #000;
}
/* 個人情報同意文 */
.cf7-form-row.privacy-policy {
  width: 100%;
  margin: 60px 0 0 0;
}
.privacy-policy__title {
  text-align: left;
  font-size: 16px;
}
.privacy-policy__title p {
  font-size: 16px;
  font-weight: 400;
  color: #000;
  margin: 0;
  margin-bottom: 20px;
}
/*詳細度の関係で下記はdiv.privacy-policy__innerと指定します */
.cf7-form-row .privacy-policy__inner {
  width: 100%;
}
.privacy-policy__text-box {
  padding: 16px 20px 20px 20px;
  width: 100%;
  height: 260px;
  overflow-y: auto;
  background: #fff;
  border: 1px solid #DCDCDC;
}
.privacy-policy__inner-title {
  font-size: 16px;
  line-height: 1.75;
  margin: 0;
}
.privacy-policy__text-box p {
  font-size: 16px;
}
.privacy-policy__item {
  text-indent: -1.1em;
  padding-left: 1.3em;
  margin-top: 16px;
  line-height: 1.75;
}

.wpcf7 .wpcf7-not-valid-tip {
  font-size: 0;
  line-height: 0;
  position: relative;
}
.wpcf7 .wpcf7-not-valid-tip::before {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  position: absolute;
  top: 3px;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 15 15"><g transform="translate(0.146)"><g transform="translate(-0.146)" fill="%23db0000" stroke="%23db0000" stroke-width="1"><circle cx="7.5" cy="7.5" r="7.5" stroke="none"/><circle cx="7.5" cy="7.5" r="7" fill="none"/></g><path d="M228.19,127.18a.374.374,0,0,0,.1.2.267.267,0,0,0,.2.094.282.282,0,0,0,.305-.29l.611-4.7a3.078,3.078,0,0,0,.016-.352.978.978,0,0,0-.243-.642.85.85,0,0,0-.689-.29.834.834,0,0,0-.7.3.988.988,0,0,0-.235.635,3.282,3.282,0,0,0,.016.352Z" transform="translate(-221.157 -118.187)" fill="%23fff"/><path d="M228.036,335.095a.947.947,0,1,0-.948-.948.94.94,0,0,0,.274.666A.9.9,0,0,0,228.036,335.095Z" transform="translate(-220.682 -323.107)" fill="%23fff"/></g></svg>') center/contain no-repeat;
}
.wpcf7 .wpcf7-form-control-wrap[data-name="your-select"] .wpcf7-not-valid-tip::after {
  content: "お問い合わせ種別を入力してください";
  font-size: 13px;
  line-height: 1.6;
  margin-left: 18px;
}
.wpcf7 .wpcf7-form-control-wrap[data-name="your-company-name"] .wpcf7-not-valid-tip::after {
  content: "御社名を入力してください";
  font-size: 13px;
  line-height: 1.6;
  margin-left: 18px;
}
.wpcf7 .wpcf7-form-control-wrap[data-name="your-name"] .wpcf7-not-valid-tip::after {
  content: "お名前・ご担当者名を入力してください";
  font-size: 13px;
  line-height: 1.6;
  margin-left: 18px;
}
.wpcf7 .wpcf7-form-control-wrap[data-name="your-telephone-number"] .wpcf7-not-valid-tip::after {
  content: "電話番号を入力してください";
  font-size: 13px;
  line-height: 1.6;
  margin-left: 18px;
}
.wpcf7 .wpcf7-form-control-wrap[data-name="your-email"] .wpcf7-not-valid-tip::after {
  content: "E-mailを入力してください";
  font-size: 13px;
  line-height: 1.6;
  margin-left: 18px;
}
.wpcf7 .wpcf7-form-control-wrap[data-name="your-selected-radio-check01"] .wpcf7-not-valid-tip::after {
  content: "ご連絡方法を入力してください";
  font-size: 13px;
  line-height: 1.6;
  margin-left: 18px;
}
.wpcf7 .wpcf7-form-control-wrap[data-name="your-message"] .wpcf7-not-valid-tip::after {
  content: "お問い合わせ内容を入力してください";
  font-size: 13px;
  line-height: 1.6;
  margin-left: 18px;
}

  /* 確認画面用スタイル *******************/
.form-content__text{
  margin:16px 0 0 0;
}
.cf7-form-confirm-wrapper{
  width: 100%;
}
.cf7-form-confirm-buttons{
  display: flex;
  justify-content: space-between;
  gap: 10px 0;
  max-width: 980px;
  flex-wrap: wrap;
}

/* 戻るボタン */
/* 送信ボタン */
/* スピナーを下側に移動させるため、左右ボタンの表示領域を狭めた上で、各ボタンの幅をいっぱいに保つ */
.cf7-form-confirm-buttons .wpcf7-previous,
.cf7-form-confirm-buttons .wpcf7-submit{
  max-width: unset;
  width: 40.9%;
  margin: 0 4.5%;
}




/* サンクス画面用スタイル *******************/
.form-thanks{
  padding: 60px 0 120px;
}
.form-thanks__inner{
  max-width: 1248px;
  padding: 20px 24px;
  margin: auto;
}
.form-thanks__text01{
  font-size: 24px;
  font-weight: 500;
  color: #2b55a0;
}
.form-thanks__text02{
  font-size: 16px;
  margin: 24px 0 0 0;
}
.top-link-wrapper{
  margin: 48px auto 0;
  max-width: 400px;
}
.top-link{
  border-radius: 50px;
  padding: 20px;
  background: #fff;
  border: 1px solid #b2b2b3;
  color: #000;
  transition: opacity ease .4s;
  width: 100%;
  display: block;
  text-align: center;
}
.top-link:focus,
.top-link:hover {
  opacity: .6;
}
@media screen and (max-width: 767px) {

  /* フォーム(cf7含む) *******************/
  .contactform .cf7-form-row {
    flex-direction: column;
    align-items: flex-start !important;
    gap: 8px;
  }
  .contactform form select {
    padding-right: 40px;
  }
  /* 各入力欄の横幅 */
  /*
  御社名
  お名前・ご担当者名
  市町村以下
  E-mail
  */
  .cf7-form-row:nth-of-type(2) .cf7-form-input-wrapper,
  .cf7-form-row:nth-of-type(3) .cf7-form-input-wrapper,
  .cf7-form-row:nth-of-type(6) .cf7-form-input-wrapper,
  .cf7-form-row:nth-of-type(8) .cf7-form-input-wrapper {
    max-width: unset;
  }
  /*
  郵便番号
  都道府県
  電話番号
    */
  .cf7-form-row:nth-of-type(4) .cf7-form-input-wrapper,
  .cf7-form-row:nth-of-type(5) .cf7-form-input-wrapper,
  .cf7-form-row:nth-of-type(7) .cf7-form-input-wrapper {
    max-width: 79.5107%;
  }
  .cf7-form-row > label {
    justify-content: flex-start;
    gap: 10px;
  }
  /* 確認画面用スタイル *******************/
  .form-content__text{
    margin:16px 0 0 0;
  }
  .cf7-form-confirm-wrapper{
    width: 100%;
  }
  .cf7-form-confirm-buttons{
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    gap: 20px;
    margin: 0 auto;
    width: 100%;
    max-width: 100%;
  }
  .cf7-form-confirm-buttons .wpcf7-previous,
  .cf7-form-confirm-buttons .wpcf7-submit{
    width: 100%;
    margin: 0;
  }

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

  /* フォーム(cf7含む) *******************/
  .form-content-top {
    padding: 16px 0 0 0;
  }
  .contactform .cf7-form-row {
    gap: 8px;
    align-items: flex-start;
  }
  .contactform form ::placeholder {
    font-size: 16px;
  }
  .wpcf7-radio label span {
    font-size: 14px;
  }
  .wpcf7-list-item.first {
    padding-right: 4px;
  }
  .cf7-form-row > label {
    font-size: 14px;
  }
  .form-title {
    font-size: 16px;
  }
  .contactform form > div:not(:last-child) {
    margin: 0px 0 24px 0;
  }
  .contactform form select,
  .contactform form input,
  .contactform form textarea {
    padding: 3px 8px 7px;
    display: flex;
  }
  .contactform form select {
    padding-right: 45px;
  }
  .wpcf7-radio span:nth-of-type(2) {
    margin-left: 12px;
  }
  .contactform form textarea {
    height: 120px;
  }
  .cf7-form-row.privacy-policy {
    /* padding: 29px 0 0 0; */
  }
  .privacy-policy__title {
    font-size: 14px;
    padding: 20px 0 11px 0;
    line-height: 1.571;
  }
  .privacy-policy__text-box {
    padding: 16px 20px 20px 20px;
    height: 220px;
  }
  .privacy-policy__inner-title {
    font-size: 14px;
  }
  .privacy-policy__item {
    margin-top: 22px;
    line-height: 1.571;
    font-size: 14px;
  }
  .cf7-form-row.acceptance {
    padding: 0;
    margin: 37px 0 0 0;
  }
  .cf7-form-row.acceptance .wpcf7-list-item label span {
    margin: 0 0 0px 17px;
    line-height: 1.429;
  }
  .cf7-form-row.acceptance input[type="checkbox"] {
    position: relative;
    height: 16px;
    padding: 0 0 0 18px;
  }
  .cf7-form-row.acceptance input[type="checkbox"]::before {
    top: 0;
    left: 0;
    width: 25px;
    height: 25px;
  }
  .cf7-form-row.acceptance input[type="checkbox"]::after {
    top: 3px;
    left: 8px;
    width: 8px;
    height: 14px;
  }
  .cf7-form-row.submit {
    padding: 11px 0 0 0;
  }
  .contactform input[type="submit"],
  .contactform input[type="button"]{
    /* font-size: 13px; */
  }
  .contactform input[type="reset"] {
    font-size: 14px;
  }
  /* サンクス画面用スタイル *******************/
  .form-thanks{
    padding: 20px 0 80px;
  }
  .form-thanks__text01{
    font-size: 18px;
  }
  .form-thanks__text02{
    font-size: 14px;
  }
  .top-link{
    font-size: 13px;
  }
}

/*======================================================

    検索結果

======================================================*/

/*  〇〇  */
.search_box article {
  border-bottom: 1px solid #d4d4d4;
  padding-bottom: 20px;
}
.search_box > a:not(:first-of-type) article {
  padding-top: 20px;
}
.search_box h4 {
  margin: 0 0 16px 0;
  border-bottom: 1px solid #f4f4f4;
  display: inline-block;
}

.search_box a:hover {
  opacity: 1;
}
.search_box a:hover h4 {
  border-bottom: 1px solid;
}

.search_box .text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  text-overflow: ellipsis;
  word-break: break-all;
}

.pagination {
  text-align: center;
  margin: 60px 0;
  font-size: 16px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  align-items: center;
}

.pagination .page-numbers {
  display: inline-block;
  margin: 0 4px;
  padding: 9px 0px;
  color: #000;
  border: 1px solid #000;
  transition: background 0.3s, color 0.3s;
  width: 44px;
  height: 44px;
}

.pagination .page-numbers:hover {
  background: #000;
  color: #fff;
}

.pagination .current {
  background: #000;
  color: #fff;
  border-color: #000;
}

.pagination .dots {
  display: inline-block;
  margin: 0 6px;
  color: #000;
}

.pagination .prev,
.pagination .next {
  font-weight: bold;
}

@media screen and (max-width: 1366px) {

}

@media screen and (max-width: 768px) {

}