@charset "UTF-8";


/*
//  2026.1
//  ヘッダーメニューの調整に伴うスタイル
// ============================================= */
@media(max-width: 1400px) {
  .menuStyle2 .site-header .main-navigation .menu li a {
    font-size: 14px;
  }
}
@media(max-width: 1199px) and (min-width: 768px) {
  .main-navigation a {
    padding: 0;
  }
  .main-navigation .menu li:not(:last-child) {
    padding-right: 6px;
  }
  .menuStyle2 .site-header .main-navigation .menu li a {
    font-size: 13px;
  }
}

/*
//  2025.2
//  フォームの調整に伴うスタイル
// ============================================= */

/*
//  共通
// --------------------------------------------- */
form label {
  cursor: pointer;
}

/*
//  MW WP Form設定分 上書き
//  （現状との干渉対策で、CF7内に限る）
// --------------------------------------------- */
.wpcf7 .entry-form .mwform-checkbox-field-text {
  display: inline;
}
.wpcf7 *[class*="form__group--itemname"] > label {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.25em;
}
@media (min-width: 1025px) {
  .wpcf7 *[class*="form__group--itemname"] > label {
    justify-content: end;
  }
}
@media (max-width: 1024px) {
  .wpcf7 *[class*="form__group--itemname"] > label {
    width: fit-content;
  }
}

.wpcf7 .submit-confirm-btn[disabled] {
  filter: grayscale(1);
  opacity: 0.3;
}
.wpcf7 .submit-confirm-btn[disabled]:hover {
  transform: revert;
  background: #21253e;
  color: #fff;
}

/*
//  Contact Form 7
// --------------------------------------------- */

/*  チェックボックスの外観
// --------------------------------------------- */
.wpcf7-checkbox {
  display: grid;
  gap: 0.75em 0;
}
.wpcf7-list-item {
  margin: 0;
}

.entry__checkbox--item input[type=checkbox],
.contact__checkbox--item input[type=checkbox] {
  display: inline-block;
  position: relative;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-appearance: none;
  appearance: none;
  background: #fff;
  border: 0;
  border-radius: 3px;
  cursor: pointer;
  margin: 0.4rem 7px 0.4rem 0;
  vertical-align: -0.6rem;
  width: 20px;
  height: 20px;
  color: #D8D8D8;
}
.entry__checkbox--item input[type=checkbox]::before,
.contact__checkbox--item input[type=checkbox]::before {
  content: '✓';
  position: absolute;
  left: 0;
  top: -2px;
  width: 0;
}
.entry__checkbox--item input[type=checkbox]:checked,
.entry__checkbox--item input[type=checkbox]:indeterminate,
.contact__checkbox--item input[type=checkbox]:checked,
.contact__checkbox--item input[type=checkbox]:indeterminate {
  background: #21253E;
  color: #fff;
}

/*  select
// --------------------------------------------- */
select.wpcf7-select {
  position: relative;
  appearance: none;
  background: #fff;
  cursor: pointer;
  line-height: 1.8;
}
.wpcf7-form-control-wrap:has(select.wpcf7-select)::after {
  --arrow-size: 0.6em;
  content: '';
  display: block;
  aspect-ratio: 1/1;
  position: absolute;
  top: calc(50% - var(--arrow-size) / 2);
  right: 1em;
  transform: rotate(45deg);
  border-width: 0 1px 1px 0;
  border-color: #000;
  border-style: solid;
  height: var(--arrow-size);
  width: var(--arrow-size);
}

/*  ローダー（スピナー）
// --------------------------------------------- */
div.wpcf7 .ajax-loader,
.wpcf7-spinner {
  display: block;
  visibility: visible;
  background: none;
  margin: 10px 0 0;
  width: auto;
  height: auto;
}
div.wpcf7 .ajax-loader::before,
.wpcf7-spinner::before {
  content: "";
  position: static;
  background: none;
  animation: none;
}
/* 見えなくする */
.wpcf7 form.submitting div.wpcf7 .ajax-loader::before,
.wpcf7 form.submitting .wpcf7-spinner::before,
.wpcf7 form.sent div.wpcf7 .ajax-loader::before,
.wpcf7 form.sent .wpcf7-spinner::before,
.wpcf7 form.failed div.wpcf7 .ajax-loader::before,
.wpcf7 form.failed .wpcf7-spinner::before,
.wpcf7 form.aborted div.wpcf7 .ajax-loader::before,
.wpcf7 form.aborted .wpcf7-spinner::before,
.wpcf7 form.spam div.wpcf7 .ajax-loader::before,
.wpcf7 form.spam .wpcf7-spinner::before,
.wpcf7 form.invalid div.wpcf7 .ajax-loader::before,
.wpcf7 form.invalid .wpcf7-spinner::before,
.wpcf7 form.unaccepted
div.wpcf7 .ajax-loader::before,
.wpcf7 form.unaccepted .wpcf7-spinner::before {
  margin: 0;
  height: 0;
}

/*  アラート表示
// --------------------------------------------- */
.wpcf7 form .wpcf7-response-output {
  border: 0;
  text-align: center;
}
.wpcf7 form.submitting div.wpcf7 .ajax-loader::before,
.wpcf7 form.submitting .wpcf7-spinner::before {
  content: "処理中です…";
  display: block;
  border-radius: 0;
  background: #ccc;
  margin: 30px auto 0;
  padding: 0.25em 0;
  width: auto;
  height: auto;
  text-align: center;
}
.wpcf7 form.sent .wpcf7-response-output {
  background-color: rgb(26 160 37 /0.2); /* Green */
}

.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
  background-color: rgb(192 11 11 /0.15); /* Red */
}

.wpcf7 form.spam .wpcf7-response-output {
  background-color: #fdd1ba; /* Orange */
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
  background-color: #fae8b7; /* Yellow */
}

/*
//  reCAPTCHAバッジ
// --------------------------------------------- */
.grecaptcha-badge {
  bottom: 90px !important;
}



/*
//  2026.1
//  LinkRouteBiz追加時の追記
// ============================================= */
.linkroutebiz-link {
  cursor: pointer;
}
