@charset "UTF-8";
/* 基本設定
============================================================================ */
/* base > color
============================================================================================================ */
/* 基本色一覧*/
/*白*/
/*黒*/
/*灰色*/
/*紺色*/
/*黄*/
/*赤*/
/*青*/
:root {
  --color-primary: #19598B;
  --color-yellow: #fdd000;
  --color-red: #B60000;
  --color-recruit: #d6e3ff;
}

/* ============================================================================================================
   Figma (Hajime_CS) 追加分カラー
   ※ 既存変数は変更していません。Figma上に存在し、上記に無かったカラーのみ追記しています。
============================================================================================================ */
/* 黒 追加 */
/* Figma: ほぼ黒（DIC系スミ） */
/* 灰色 追加 */
/* Figma: ダークグレー */
/* Figma: ミドルグレー */
/* Figma: 青みグレー */
/* Figma: ライトグレー */
/* Figma: 明るいグレー */
/* Figma: 背景用グレー */
/* 紺色 追加 */
/* Figma: ディープネイビー */
/* Figma: ネイビーブルー */
/* Figma: ネイビーブルー(明) */
/* Figma: ダークネイビー */
/* Figma: ほぼ黒に近い紺 */
/* Figma: 深い紺 */
/* Figma: 濃紺(青紫寄り) */
/* Figma: 濃紺 */
/* 青 追加 */
/* Figma: ビビッドブルー */
/* Figma: ミディアムブルー */
/* Figma: スカイブルー系 */
/* Figma: くすみブルー */
/* Figma: 淡い青(背景) */
/* 赤 追加 */
/* Figma: ワインレッド */
/* Figma: 深い赤 */
/* Figma: ビビッドレッド */
/* ピンク */
/* Figma: マゼンタピンク */
/* Figma: サーモンピンク */
/* Figma: 淡いピンク */
/* オレンジ */
/* Figma: オレンジイエロー */
/* 黄 追加(クリーム) */
/* Figma: クリーム */
/* 金・山吹 */
/* Figma: くすみゴールド */
/* Figma: 山吹色 */
/* 茶 */
/* Figma: ダークブラウン */
/* Figma: ブラウン */
/* 緑 */
/* Figma: ダークグリーン */
/* Figma: モスグリーン */
/* Figma: ライトグリーン */
/* Figma: 黄緑 */
/* Figma: 淡い黄緑(背景) */
/* シアン / ミント */
/* Figma: ミントシアン */
/* Figma: 淡いミント */
/* 紫 */
/* Figma: ラベンダー */
:root {
  --drop-shadow: drop-shadow(
    0 0 6px color-mix(in srgb, black 55%, transparent)
  );
  --fontFamily-en: "Oswald", sans-serif;
  font-family: var(--fontFamily-en);
  --width-inner: 1060;
  --leading-trim: calc((1em - 1lh) / 2);
  --gutter: max(20px, calc(20 / 375 * 100%));
}

.font-serif {
  font-family: "YakuHanJP", "source-han-serif-jp-variable", sans-serif;
  font-weight: 600;
  font-variation-settings: "wght" 600;
  font-feature-settings: "halt" on;
}

/* mixin
============================================================================ */
/* フォントサイズをremに変換するmixin ($base-font-sizeはbase/_base.scssに)*/
/* フレックスボックス */
/* SCSS メディアクエリ */
/*最後の要素の余白リセット*/
/*
 * Mixin for placeholder
 * @include placeholderColor(#00ff00);
 */
figure {
  display: block;
  margin-block-start: 0;
  margin-block-end: 0;
  margin-inline-start: 0;
  margin-inline-end: 0;
}

img {
  vertical-align: bottom;
  line-height: 0;
  font-size: 0;
  backface-visibility: hidden;
}

/*-------------------------------------------------------------
display指定class

【only】
.pc-only / .tab-only / .pad-only / .sp-only /.se-only
.pctab-only / .tabsp-only / .sp-none

-------------------------------------------------------------*/
.pc-only {
  display: block !important;
}
@media (max-width: 1024px) {
  .pc-only {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .pc-only {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .pc-only {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .pc-only {
    display: none !important;
  }
}
.pc-only--flex {
  display: flex !important;
}
@media (max-width: 1024px) {
  .pc-only--flex {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .pc-only--flex {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .pc-only--flex {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .pc-only--flex {
    display: none !important;
  }
}

.tab-only {
  display: none !important;
}
@media (max-width: 1024px) {
  .tab-only {
    display: block !important;
  }
}
@media (max-width: 768px) {
  .tab-only {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .tab-only {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .tab-only {
    display: none !important;
  }
}
.tab-only--flex {
  display: none !important;
}
@media (max-width: 1024px) {
  .tab-only--flex {
    display: flex !important;
  }
}
@media (max-width: 768px) {
  .tab-only--flex {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .tab-only--flex {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .tab-only--flex {
    display: none !important;
  }
}

.pad-only {
  display: none !important;
}
@media (max-width: 1024px) {
  .pad-only {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .pad-only {
    display: block !important;
  }
}
@media (max-width: 767px) {
  .pad-only {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .pad-only {
    display: none !important;
  }
}
.pad-only--flex {
  display: none !important;
}
@media (max-width: 1024px) {
  .pad-only--flex {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .pad-only--flex {
    display: flex !important;
  }
}
@media (max-width: 767px) {
  .pad-only--flex {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .pad-only--flex {
    display: none !important;
  }
}

.sp-only {
  display: none !important;
}
@media (max-width: 1024px) {
  .sp-only {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .sp-only {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .sp-only {
    display: block !important;
  }
}
@media (max-width: 320px) {
  .sp-only {
    display: block !important;
  }
}
.sp-only--flex {
  display: none !important;
}
@media (max-width: 1024px) {
  .sp-only--flex {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .sp-only--flex {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .sp-only--flex {
    display: flex !important;
  }
}
@media (max-width: 320px) {
  .sp-only--flex {
    display: flex !important;
  }
}

.se-only {
  display: none !important;
}
@media (max-width: 1024px) {
  .se-only {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .se-only {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .se-only {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .se-only {
    display: block !important;
  }
}
.se-only--flex {
  display: none !important;
}
@media (max-width: 1024px) {
  .se-only--flex {
    display: none !important;
  }
}
@media (max-width: 768px) {
  .se-only--flex {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .se-only--flex {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .se-only--flex {
    display: flex !important;
  }
}

.pctab-only {
  display: block !important;
}
@media (max-width: 1024px) {
  .pctab-only {
    display: block !important;
  }
}
@media (max-width: 768px) {
  .pctab-only {
    display: block !important;
  }
}
@media (max-width: 767px) {
  .pctab-only {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .pctab-only {
    display: none !important;
  }
}
.pctab-only--flex {
  display: flex !important;
}
@media (max-width: 1024px) {
  .pctab-only--flex {
    display: flex !important;
  }
}
@media (max-width: 768px) {
  .pctab-only--flex {
    display: flex !important;
  }
}
@media (max-width: 767px) {
  .pctab-only--flex {
    display: none !important;
  }
}
@media (max-width: 320px) {
  .pctab-only--flex {
    display: none !important;
  }
}

.tabsp-only {
  display: none !important;
}
@media (max-width: 1024px) {
  .tabsp-only {
    display: block !important;
  }
}
@media (max-width: 768px) {
  .tabsp-only {
    display: block !important;
  }
}
@media (max-width: 767px) {
  .tabsp-only {
    display: block !important;
  }
}
@media (max-width: 320px) {
  .tabsp-only {
    display: block !important;
  }
}
.tabsp-only--flex {
  display: none !important;
}
@media (max-width: 1024px) {
  .tabsp-only--flex {
    display: flex !important;
  }
}
@media (max-width: 768px) {
  .tabsp-only--flex {
    display: flex !important;
  }
}
@media (max-width: 767px) {
  .tabsp-only--flex {
    display: flex !important;
  }
}
@media (max-width: 320px) {
  .tabsp-only--flex {
    display: flex !important;
  }
}

@media (max-width: 767px) {
  .sp-none {
    display: none;
  }
}
@media (max-width: 320px) {
  .sp-none {
    display: none;
  }
}

/* module > form
============================================================================ */
/*////////////////////////// 基本スタイル //////////////////////////*/
input[type=text],
input[type=email],
input[type=date],
input[type=tel],
select,
textarea {
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.05em;
  width: 100%;
  padding: 8px 16px 7px;
  min-height: auto;
  outline: none;
  background: var(--color-cf7-input, #f1f1f1);
  box-sizing: border-box;
  -webkit-appearance: none;
  /* ベンダープレフィックス(Google Chrome、Safari用) */
  -moz-appearance: none;
  /* ベンダープレフィックス(Firefox用) */
  vertical-align: bottom;
}
input[type=text]:-moz-placeholder, input[type=email]:-moz-placeholder, input[type=date]:-moz-placeholder, input[type=tel]:-moz-placeholder, select:-moz-placeholder, textarea:-moz-placeholder {
  color: #909090;
}
input[type=text]:placeholder-shown,
input[type=email]:placeholder-shown,
input[type=date]:placeholder-shown,
input[type=tel]:placeholder-shown,
select:placeholder-shown,
textarea:placeholder-shown {
  color: #909090;
}
input[type=text]::-webkit-input-placeholder,
input[type=email]::-webkit-input-placeholder,
input[type=date]::-webkit-input-placeholder,
input[type=tel]::-webkit-input-placeholder,
select::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #909090;
}
input[type=text]:-moz-placeholder,
input[type=email]:-moz-placeholder,
input[type=date]:-moz-placeholder,
input[type=tel]:-moz-placeholder,
select:-moz-placeholder,
textarea:-moz-placeholder {
  color: #909090;
  opacity: 1;
}
input[type=text]::-moz-placeholder,
input[type=email]::-moz-placeholder,
input[type=date]::-moz-placeholder,
input[type=tel]::-moz-placeholder,
select::-moz-placeholder,
textarea::-moz-placeholder {
  color: #909090;
  opacity: 1;
}
input[type=text]:-ms-input-placeholder,
input[type=email]:-ms-input-placeholder,
input[type=date]:-ms-input-placeholder,
input[type=tel]:-ms-input-placeholder,
select:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #909090;
}
@media (max-width: 767px) {
  input[type=text],
  input[type=email],
  input[type=date],
  input[type=tel],
  select,
  textarea {
    padding: 9px 12px 8px;
    font-size: 13px;
  }
}
input[type=text][aria-invalid=true],
input[type=email][aria-invalid=true],
input[type=date][aria-invalid=true],
input[type=tel][aria-invalid=true],
select[aria-invalid=true],
textarea[aria-invalid=true] {
  color: var(--color-red);
}

select option:checked {
  -webkit-appearance: base-select;
     -moz-appearance: base-select;
          appearance: base-select;
  background-color: var(--color-primary);
  color: white;
}

input[type=date] {
  max-width: 200px;
}

select {
  width: -moz-fit-content;
  width: fit-content;
  padding-right: 65px;
}

/*////////////////////////// テキストエリア //////////////////////////*/
textarea {
  height: 183px;
  overflow-y: scroll;
}

/*////////////////////////// セレクトボックス //////////////////////////*/
select {
  height: 43px;
  -webkit-appearance: none;
  /* ベンダープレフィックス(Google Chrome、Safari用) */
  -moz-appearance: none;
  /* ベンダープレフィックス(Firefox用) */
  appearance: none;
  /* 標準のスタイルを無効にする */
  position: relative;
  background-image: url("./img/common/arw_select.svg");
  background-repeat: no-repeat;
  background-size: 20px;
  background-position: center right 10px;
  box-sizing: border-box;
}

::-ms-expand {
  /* select要素のデザインを無効にする（IE用） */
  display: none;
}

.wpcf7-form {
  padding: 40px 7.7%;
  background: var(--color-cf7-bg, white);
}
@media (max-width: 767px) {
  .wpcf7-form {
    padding: 15px 15px 40px;
  }
}
.wpcf7-form .cf7-body {
  padding-left: 6.9%;
  padding-right: 6.9%;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-body {
    padding-left: unset;
    padding-right: unset;
  }
}
.wpcf7-form .cf7-error {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 10px;
  margin-bottom: 20px;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-error {
    margin-bottom: 10px;
    padding-top: 5px;
  }
}
.wpcf7-form .cf7-error__txt {
  border-radius: 8px;
  color: var(--color-red);
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.05em;
  background-color: #fed2d2;
  padding-left: 20px;
  padding-right: 20px;
  width: -moz-fit-content;
  width: fit-content;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-error__txt {
    font-size: 13px;
    letter-spacing: 0.03em;
  }
}
.wpcf7-form .cf7-note {
  font-size: 14px;
  color: var(--color-red);
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 8px;
  text-indent: -1em;
  padding-left: 1em;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-note {
    font-size: 12px;
  }
}
.wpcf7-form .cf7-note.cf7-note--first {
  margin-top: unset;
  text-align: right;
  margin-bottom: -5px;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-note.cf7-note--first {
    margin-bottom: 10px;
  }
}
.wpcf7-form .cf7-note + .cf7-term {
  margin-top: 16px;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-note + .cf7-term {
    margin-top: 12px;
  }
}
.wpcf7-form .cf7-heading-confirm {
  text-align: center;
  color: var(--color-primary);
  font-size: 40px;
  letter-spacing: 0.02em;
  line-height: 1.45;
  font-weight: 700;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-heading-confirm {
    font-size: 24px;
    padding-top: 20px;
  }
}
.wpcf7-form .cf7-heading {
  font-size: 20px;
  border-bottom: 1px solid #909090;
  font-weight: 600;
  line-height: 1.5;
  display: flex;
  align-items: center;
  -moz-column-gap: 5px;
       column-gap: 5px;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-heading {
    font-size: 15px;
  }
}
.wpcf7-form .cf7-heading:not(:first-of-type) {
  margin-top: 30px;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-heading:not(:first-of-type) {
    margin-top: 20px;
  }
}
.wpcf7-form .cf7-heading + .cf7-desc {
  margin-top: 8px;
}
.wpcf7-form .cf7-heading__star {
  color: var(--color-red);
  font-size: 14px;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-heading__star {
    font-size: 10px;
  }
}
.wpcf7-form .cf7-term {
  margin-top: 8px;
  font-size: 18px;
  font-weight: 600;
  display: flex;
  align-items: center;
  -moz-column-gap: 5px;
       column-gap: 5px;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-term {
    font-size: 14px;
    margin-top: 10px;
  }
}
.wpcf7-form .cf7-term.cf7-term--bar {
  border-bottom: 1px solid #909090;
}
.wpcf7-form .cf7-term.cf7-term--bar + .cf7-desc {
  margin-top: 8px;
}
.wpcf7-form .cf7-term__star {
  color: var(--color-red);
  font-size: 14px;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-term__star {
    font-size: 10px;
  }
}
.wpcf7-form .cf7-desc input[name=your-rs-attendee-position-other] {
  margin-top: 8px;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-desc input[name=your-rs-attendee-position-other] {
    margin-top: 6px;
  }
}
.wpcf7-form .cf7-desc.cf7-desc--birth {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  -moz-column-gap: 10px;
       column-gap: 10px;
  row-gap: 12px;
  width: 100%;
}
.wpcf7-form .cf7-desc.cf7-desc--birth > *:nth-child(1) {
  flex-basis: 138px;
}
.wpcf7-form .cf7-desc.cf7-desc--birth > *:nth-child(2) {
  flex-basis: 1em;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-desc.cf7-desc--birth > *:nth-child(2) {
    flex-basis: calc(100% - 200px);
  }
}
.wpcf7-form .cf7-desc.cf7-desc--birth > *:nth-child(3) {
  flex-basis: 102px;
}
.wpcf7-form .cf7-desc.cf7-desc--birth > *:nth-child(4) {
  flex-basis: 1em;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-desc.cf7-desc--birth > *:nth-child(4) {
    flex-basis: calc(100% - 200px);
  }
}
.wpcf7-form .cf7-desc.cf7-desc--birth > *:nth-child(5) {
  flex-basis: 102px;
}
.wpcf7-form .cf7-desc.cf7-desc--birth > *:nth-child(6) {
  flex-basis: 1em;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-desc.cf7-desc--birth > *:nth-child(6) {
    flex-basis: calc(100% - 200px);
  }
}
.wpcf7-form .cf7-desc.cf7-desc--delegate {
  margin-top: 24px;
  margin-bottom: 12px;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-desc.cf7-desc--delegate {
    margin-top: 16px;
    margin-bottom: 8px;
  }
}
.wpcf7-form .cf7-desc.cf7-desc--delegate .wpcf7-list-item {
  margin-left: 0;
  display: block;
}
.wpcf7-form .cf7-desc.cf7-desc--delegate .wpcf7-list-item-label {
  font-size: 14px;
  line-height: 1.8;
  letter-spacing: 0.04em;
  color: #081424;
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  white-space: pre-line;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-desc.cf7-desc--delegate .wpcf7-list-item-label {
    font-size: 12px;
    line-height: 1.6;
  }
}
.wpcf7-form .cf7-desc.cf7-desc--delegate .wpcf7-list-item-label:before {
  flex-shrink: 0;
  margin-top: 2px;
}
.wpcf7-form .cf7-desc.cf7-desc--delegate .wpcf7-list-item-label:after {
  top: 7px;
  left: 4px;
}
.wpcf7-form .cf7-subheading {
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.05em;
  font-weight: 600;
  margin-top: 16px;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-subheading + .cf7-desc {
    margin-top: 10px;
  }
}
.wpcf7-form-control-wrap {
  line-height: 1;
  display: block;
}
.wpcf7-form .wpcf7-radio {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  row-gap: 5px;
  -moz-column-gap: 30px;
       column-gap: 30px;
}
@media (max-width: 767px) {
  .wpcf7-form .wpcf7-radio {
    -moz-column-gap: 16px;
         column-gap: 16px;
    row-gap: 16px;
  }
}
.wpcf7-form .wpcf7-radio .wpcf7-list-item {
  margin-left: unset;
  position: relative;
  cursor: pointer;
}
.wpcf7-form .wpcf7-radio .wpcf7-list-item label {
  line-height: 1;
  display: block;
  cursor: pointer;
}
.wpcf7-form .wpcf7-radio .wpcf7-list-item-label {
  font-size: 18px;
  line-height: 1.4444444444;
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
}
@media (max-width: 767px) {
  .wpcf7-form .wpcf7-radio .wpcf7-list-item-label {
    font-size: 13px;
  }
}
.wpcf7-form .wpcf7-radio input[type=radio] {
  position: absolute;
  opacity: 0;
}
.wpcf7-form .wpcf7-radio input[type=radio] + .wpcf7-list-item-label:before {
  content: "";
  background: white;
  border-radius: 50%;
  border: 2px solid #909090;
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-right: 7px;
  vertical-align: top;
  cursor: pointer;
  text-align: center;
  transition: all 250ms ease;
}
@media (max-width: 767px) {
  .wpcf7-form .wpcf7-radio input[type=radio] + .wpcf7-list-item-label:before {
    width: 22px;
    height: 22px;
  }
}
.wpcf7-form .wpcf7-radio input[type=radio]:checked + .wpcf7-list-item-label:before {
  background-color: #19598B;
  box-shadow: inset 0 0 0 3px white;
  border-color: #2C628C;
}
.wpcf7-form .wpcf7-radio input[type=radio]:focus + .wpcf7-list-item-label:before {
  outline: none;
  border-color: #19598B;
}
.wpcf7-form .wpcf7-radio input[type=radio] + .wpcf7-list-item-label:empty:before {
  margin-right: 0;
}
.wpcf7-form .wpcf7-checkbox {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  -moz-column-gap: 30px;
       column-gap: 30px;
  row-gap: 10px;
}
@media (max-width: 767px) {
  .wpcf7-form .wpcf7-checkbox {
    -moz-column-gap: 16px;
         column-gap: 16px;
    row-gap: 16px;
  }
}
.wpcf7-form .wpcf7-checkbox .wpcf7-list-item {
  display: block;
  margin-left: unset;
}
.wpcf7-form .wpcf7-list-item-label {
  font-size: 18px;
  line-height: 1.4444444444;
  letter-spacing: 0em;
  cursor: pointer;
}
@media (max-width: 767px) {
  .wpcf7-form .wpcf7-list-item-label {
    font-size: 13px;
  }
}
.wpcf7-form input[type=checkbox] {
  position: absolute;
  opacity: 0;
}
.wpcf7-form input[type=checkbox] + .wpcf7-list-item-label {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  position: relative;
}
.wpcf7-form input[type=checkbox] + .wpcf7-list-item-label:before {
  content: "";
  display: inline-block;
  background: white;
  width: 22px;
  height: 22px;
  margin-right: 8px;
  border: solid 2px #909090;
  border-radius: 3px;
  cursor: pointer;
  transition: all 250ms ease;
}
.wpcf7-form input[type=checkbox] + .wpcf7-list-item-label:after {
  content: "";
  width: 14px;
  height: 13px;
  background-image: url(./img/common/icn_check-accept-white.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 7px;
  left: 4px;
  z-index: 1;
  opacity: 0;
  pointer-events: none;
}
.wpcf7-form input[type=checkbox]:checked + .wpcf7-list-item-label:after {
  opacity: 1;
}
.wpcf7-form input[type=checkbox]:checked + .wpcf7-list-item-label:before {
  background: var(--color-primary);
  border: solid 2px var(--color-primary);
}
.wpcf7-form input[type=checkbox]:focus + .wpcf7-list-item-label:before {
  outline: none;
  border-color: #3197ee;
}
.wpcf7-form input[type=checkbox] + .wpcf7-list-item-label:empty:before {
  margin-right: 0;
}
.wpcf7-form .form__row.file input[type=file] {
  display: none;
}
.wpcf7-form .form__row.file .form__col {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
}
.wpcf7-form .form__row.file .form__col .file_name {
  display: inline-block;
  word-break: break-all;
  line-height: 1.2;
  max-width: 40%;
  margin-left: 20px;
}
@media (max-width: 767px) {
  .wpcf7-form .form__row.file .form__col .file_name {
    max-width: 60%;
    margin-top: 5.3333333333vw;
    margin-left: 0;
  }
}
.wpcf7-form .form__row.file a {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.wpcf7-form .file_label {
  font-size: 16px;
  font-size: 1.1428571429rem;
}
.wpcf7-form .file_label:-moz-placeholder {
  color: #aaa;
}
.wpcf7-form .file_label:placeholder-shown {
  color: #aaa;
}
.wpcf7-form .file_label::-webkit-input-placeholder {
  color: #aaa;
}
.wpcf7-form .file_label:-moz-placeholder {
  color: #aaa;
  opacity: 1;
}
.wpcf7-form .file_label::-moz-placeholder {
  color: #aaa;
  opacity: 1;
}
.wpcf7-form .file_label:-ms-input-placeholder {
  color: #aaa;
}
.wpcf7-form .file_label {
  display: block;
  width: 172px;
  padding: 2px 7px;
  min-height: auto;
  border-radius: 10px;
  outline: none;
  text-align: center;
  background: #ddd;
  cursor: pointer;
}
@media (max-width: 767px) {
  .wpcf7-form .file_label {
    font-size: 14px;
    font-size: 7.4666666667vw;
    padding: 0 3.7333333333vw;
    border-radius: 4vw;
  }
}
.wpcf7-form .cf7-policy {
  background: var(--color-cf7-input, #f1f1f1);
  height: 228px;
  padding: 20px 24px;
  margin: 40px auto 0;
  overflow-x: hidden;
  overflow-y: auto;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-policy {
    margin-top: 20px;
  }
}
.wpcf7-form .cf7-policy .p-p .inner {
  font-size: 14px;
  line-height: 2;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-policy .p-p .inner {
    letter-spacing: 0.03em;
    font-size: 13px;
  }
}
.wpcf7-form .cf7-policy .p-p .inner h2 {
  font-size: 14px;
  font-weight: 600;
  line-height: 2;
}
@media (max-width: 767px) {
  .wpcf7-form .cf7-policy .p-p .inner h2 {
    letter-spacing: 0.03em;
    font-size: 13px;
  }
}
.wpcf7-form .accept {
  margin-top: 40px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  align-content: normal;
  flex-direction: row;
  -moz-column-gap: 4px;
       column-gap: 4px;
}
@media (max-width: 767px) {
  .wpcf7-form .accept {
    margin-top: 20px;
  }
}
.wpcf7-form .accept .wpcf7-list-item {
  margin: 0;
}
.wpcf7-form .accept .wpcf7-list-item-label {
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.05em;
}
.wpcf7-form .accept .wpcf7-list-item-label > a {
  font-weight: 700;
  color: #19598B;
  text-decoration: underline;
}
.wpcf7-form .accept > span.must {
  color: #B60000;
  font-size: 14px;
  font-weight: 700;
  line-height: 2;
  display: block;
}
@media (max-width: 767px) {
  .wpcf7-form .accept > span.must {
    font-size: 10px;
  }
}
.wpcf7-form .submit-buttons {
  margin-top: 20px;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  -moz-column-gap: 24px;
       column-gap: 24px;
}
@media (max-width: 767px) {
  .wpcf7-form .submit-buttons {
    flex-direction: column-reverse;
    -moz-column-gap: 0;
         column-gap: 0;
    row-gap: 12px;
  }
}
.wpcf7-form .submit-buttons > span.caution {
  color: #B60000;
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.05em;
  width: 175px;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: calc(100% + 20px);
  transform: translateY(-50%);
}
.wpcf7-form .wpcf7-not-valid-tip {
  margin-top: 8px;
}

/*///////////////// チェックボックス //////////////////////////*/
/*////////////////////////// ファイル添付 //////////////////////////*/
.page-contact.confirm .file_label {
  display: none;
}

/*////////////////////////// ボタン //////////////////////////*/
input[type=button],
input[type=reset],
input[type=submit] {
  cursor: pointer;
}

/*////////////////////////// 入力画面・確認画面 //////////////////////////*/
.wpcf7-spinner {
  display: none;
}

.resident-cancel__form input[type=radio] {
  position: absolute;
  opacity: 0;
}
.resident-cancel__form input[type=radio] + .wpcf7-list-item-label:before {
  content: "";
  background: white;
  border-radius: 50%;
  border: 2px solid #909090;
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-right: 7px;
  vertical-align: top;
  cursor: pointer;
  text-align: center;
  transition: all 250ms ease;
}
@media (max-width: 767px) {
  .resident-cancel__form input[type=radio] + .wpcf7-list-item-label:before {
    width: 22px;
    height: 22px;
  }
}
.resident-cancel__form input[type=radio]:checked + .wpcf7-list-item-label:before {
  background-color: #19598B;
  box-shadow: inset 0 0 0 3px white;
  border-color: #2C628C;
}
.resident-cancel__form input[type=radio]:focus + .wpcf7-list-item-label:before {
  outline: none;
  border-color: #19598B;
}
.resident-cancel__form input[type=radio] + .wpcf7-list-item-label:empty:before {
  margin-right: 0;
}
.resident-cancel__form input[type=checkbox] {
  position: absolute;
  opacity: 0;
}
.resident-cancel__form input[type=checkbox] + .wpcf7-list-item-label {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  align-content: normal;
  flex-direction: row;
  position: relative;
}
.resident-cancel__form input[type=checkbox] + .wpcf7-list-item-label:before {
  content: "";
  display: inline-block;
  background: white;
  width: 22px;
  height: 22px;
  margin-right: 8px;
  border: solid 2px #909090;
  border-radius: 3px;
  cursor: pointer;
  transition: all 250ms ease;
}
.resident-cancel__form input[type=checkbox] + .wpcf7-list-item-label:after {
  content: "";
  width: 14px;
  height: 13px;
  background-image: url(./img/common/icn_check-accept-white.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 7px;
  left: 4px;
  z-index: 1;
  opacity: 0;
  pointer-events: none;
}
.resident-cancel__form input[type=checkbox]:checked + .wpcf7-list-item-label:after {
  opacity: 1;
}
.resident-cancel__form input[type=checkbox]:checked + .wpcf7-list-item-label:before {
  background: var(--color-primary);
  border: solid 2px var(--color-primary);
}
.resident-cancel__form input[type=checkbox]:focus + .wpcf7-list-item-label:before {
  outline: none;
  border-color: #3197ee;
}
.resident-cancel__form input[type=checkbox] + .wpcf7-list-item-label:empty:before {
  margin-right: 0;
}/*# sourceMappingURL=style-form.css.map */