@charset "UTF-8";
/*
============================================================
# Utilities
============================================================
*/
/* u-contents (直下の要素にマージントップを付ける)
--------------------------------------------- */
.u-contents > * + * {
  margin-top: 1.5em;
}

.u-contents--min > * + * {
  margin-top: 1em;
}

/* Accessibility
--------------------------------------------- */
/* Text meant only for screen readers. */
.u-screen-reader-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  word-wrap: normal !important;
  border: 0;
}

.u-screen-reader-text:focus {
  top: 5px;
  left: 5px;
  z-index: 100000;
  display: block;
  width: auto;
  height: auto;
  padding: 15px 23px 14px;
  clip: auto !important;
  -webkit-clip-path: none;
          clip-path: none;
  font-size: 0.875rem;
  font-weight: 800;
  line-height: normal;
  color: #21759b;
  text-decoration: none;
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
  outline: 0;
}

/*
============================================================
# Plugins
============================================================
*/
/* contact-form-7
--------------------------------------------- */
/* 子要素 */
.wpcf7-list-item.first {
  margin: 0;
}

.wpcf7-list-item {
  margin: 0;
}

.wpcf7-list-item.last {
  margin: 0;
}

/* チェックボックス・ラジオボタンのコンテナー */
.wpcf7-form-control.wpcf7-checkbox,
.wpcf7-form-control.wpcf7-radio {
  display: flex;
  flex-flow: wrap row;
  gap: 0.6em 2em;
  align-items: flex-start;
  justify-content: flex-start;
}

/* コンタクトフォーム7のスピナーアニメーション用span 
送信ボタンと同じPに含まれる */
span.wpcf7-spinner {
  position: absolute;
  top: 0;
  right: -2rem;
  display: inline-block;
  width: 1.5rem;
  height: 1.5rem;
  margin: 0;
  pointer-events: none;
  background-color: #009f4d;
  opacity: 1;
}

span.wpcf7-spinner::before {
  background-color: #fff;
}

/* バリデード 必須未入力項目下の文章 */
.wpcf7-not-valid-tip {
  display: block;
  margin-top: 0.3em;
  font-size: 1em;
  font-weight: 700;
  color: #fe5500;
}

/* バリデード 送信ボタン下 完了時 */
.wpcf7 form.sent .wpcf7-response-output {
  font-weight: 700;
  color: #009f4d;
  border-color: #009f4d;
  border-width: 0.1875rem;
}

/* バリデード 送信ボタン下 未入力警告 */
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
  font-weight: 700;
  color: #fe5500;
  border-color: #fe5500;
  border-width: 0.1875rem;
}
