@charset "UTF-8";
/*//////////////////////////////////////////////////

    お問い合わせ

//////////////////////////////////////////////////*/
/*//////////////////////////////////////////////////

	変数設定

//////////////////////////////////////////////////*/
/*===============================
// ブレイクポイント変数
/==============================*/
/*===============================
// カラー変数
/==============================*/
/*===============================
// フォント変数
/==============================*/
/*===============================
// フォントサイズ変数
/==============================*/
/*===============================
// トランジション
/==============================*/
/*//////////////////////////////////////////////////

	mixin設定

//////////////////////////////////////////////////*/
/*===============================
// ブレイクポイントの設定
/==============================*/
/*===============================
// 横幅の設定
// @include w_box(横幅にしたい数値) デフォルト1200px
/==============================*/
/*===============================
// 文字サイズの可変設定
// @include font(最小フォントサイズ, 最大フォントサイズ, 最小ブラウザサイズ, 最大ブラウザサイズ);
/==============================*/
/*===============================
// 文字サイズの可変を呼び出し
/==============================*/
/*===============================
// 表示切り替え設定
/==============================*/
/*===============================
// 文字行間の可変設定
// @include l_height(line-height,font-size);
/==============================*/
/*===============================
// 文字間隔の可変設定
// @include l_space(サイズ);
/==============================*/
/*===============================
// marginの可変設定
// @include margin(横幅, 上, 右, 下, 左);
/==============================*/
/*===============================
// paddingの可変設定
// @include padding(横幅, 上, 右, 下, 左);
/==============================*/
/*===============================
// positionの自動設定
// @include center(xy);上下左右中央
// @include center(x);左右中央
// @include center(y);上下中央
/==============================*/
/*===============================
// flexの自動設定
// @include flex_wrap;
/==============================*/
/*===============================
// flexの自動設定：align-items
// @include items(center);
// @include items(stretch);
// @include items(start);
// @include items(end);
/==============================*/
/*===============================
// flexの自動設定：justify-content
// @include justify(between);
// @include justify(center);
// @include justify(start);
// @include justify(end);
/==============================*/
/*===============================
// flex要素の幅設定
// @include flex_box(サイズ＆単位);　デフォルト48%
/==============================*/
/*===============================
// box-sizingの設定
// @include box;
/==============================*/
/*===============================
// ベンダープレフィックス設定
// @include prefix(border-radius, 10px);
/==============================*/
/*===============================
// 値にプレフィックスを付与
// @include value_prefix(display, flex);
/==============================*/
/*===============================
// border生成
// @include border(full);四方 デフォルト 1px solid
// @include border(top);上線 デフォルト 1px solid
// @include border(bottom);下線 デフォルト 1px solid
// @include border(left);左線 デフォルト 1px solid
// @include border(right);右線 デフォルト 1px solid
/==============================*/
/*===============================
// 角丸の設定
// @include radius(角丸のサイズ); デフォルト4px
/==============================*/
/*===============================
// 円の生成
// @include circle(円のサイズ);
/==============================*/
/*===============================
// 円の生成：可変
// @include v_circle; 親要素に横幅指定必須
/==============================*/
/*===============================
// くの字矢印の生成
// @include arrow(三角のサイズ,線の太さ); デフォルト4px,1px
/==============================*/
/*===============================
// 三角の生成
// @include triangle(向き,三角のサイズ,色);
/==============================*/
/*===============================
// 背景画像の生成
// @include back_image("画像パス");
/==============================*/
/*===============================
// グラデーションの生成
// @include gradient("最初の色,最後の色");
/==============================*/
/*===============================
// 文字の位置設定
// @include t_align(center);
// @include t_align(left);
// @include t_align(right);
/==============================*/
/*===============================
// object-fit設定
// @include ofi(contain);
// @include ofi(cover);
/==============================*/
#page_head {
  background-image: url("../../img/contact/page_head_sp.png");
}

#page_contents {
  background: #ffffff;
}
#page_contents .m-inner {
  padding-top: 3.5rem;
  padding-left: 0;
  padding-right: 0;
}
#page_contents .check_inner {
  padding-top: 4.23rem;
}
#page_contents .complete_inner {
  padding-top: 4.23rem;
}
#page_contents .complete_inner .sec_ttl {
  font-size: 1.9rem;
}
#page_contents .complete_inner .sec_txt {
  margin-top: 3.53rem;
  font-size: 1.5rem;
}

.sec_ttl {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
}

.sec_txt {
  margin-top: 1rem;
  font-size: 1.3rem;
  line-height: 1.875;
  letter-spacing: 0.02em;
  text-align: center;
}

input[type=text],
input[type=email],
input[type=tel],
textarea {
  padding: 1.25rem 1.56rem;
  width: 100%;
  font-size: 1.4rem;
  border: 1px solid #4e454a;
  border-radius: 0.5rem;
  box-sizing: border-box;
  transition: 0.4s ease border-color;
}
input[type=text]:focus-visible,
input[type=email]:focus-visible,
input[type=tel]:focus-visible,
textarea:focus-visible {
  border-color: #0e66b5;
  outline: 0;
}
input[type=text]::-moz-placeholder, input[type=email]::-moz-placeholder, input[type=tel]::-moz-placeholder, textarea::-moz-placeholder {
  color: #848484;
}
input[type=text]::placeholder,
input[type=email]::placeholder,
input[type=tel]::placeholder,
textarea::placeholder {
  color: #848484;
}
input[type=text].error,
input[type=email].error,
input[type=tel].error,
textarea.error {
  background: #fef3ea;
}

textarea {
  display: block;
  height: 24.286em;
  resize: vertical;
  min-width: 100%;
  min-height: 15em;
}

.form_intro {
  margin-bottom: 2rem;
  font-size: 1.4rem;
  line-height: 1.8em;
  letter-spacing: 0;
}

.message {
  margin-top: 3rem;
  margin-bottom: 3rem;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.579em;
  letter-spacing: 0.04em;
  color: #b10000;
}

.c_form_ttl {
  margin-bottom: 1.3rem;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5em;
  text-align: left;
}
.c_form_ttl .form_tag {
  margin-left: 1.8rem;
  padding: 0.55rem 0.8rem;
  font-size: 1.3rem;
  line-height: 1;
  border-radius: 0.5rem;
  color: #ffffff;
  background: #444;
  vertical-align: bottom;
}
.c_form_ttl .form_tag.requiered {
  background: #b10000;
}
.c_form_ttl.col-2 {
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
  justify-content: space-between;
  align-items: center;
  justify-content: flex-start;
}
.c_form_ttl.col-2 span {
  flex: 0 1 auto;
  width: auto;
}

.error_ms {
  display: block;
  margin-top: 1rem;
  font-size: 1.5rem;
  color: #b10000;
}

.c_form_list {
  border: 1px solid #4e454a;
  border-radius: 0.5rem;
  overflow: hidden;
}
.c_form_list .c_form_item .ttl {
  font-weight: 700;
}
.c_form_list.c_form_about .c_form_item .ttl,
.c_form_list.c_form_about .c_form_item .data {
  padding: 1.17rem 1.6rem;
  box-sizing: border-box;
}
.c_form_list.c_form_about .c_form_item .ttl {
  font-size: 1.7rem;
  color: #ffffff;
  background: #0e66b5;
}
.c_form_list.c_form_about .c_form_item .ttl p {
  letter-spacing: 0;
}
.c_form_list.c_form_about.error {
  background: #fef3ea;
}
.c_form_list.c_form_main {
  margin-bottom: 2.7rem;
}
.c_form_list.c_form_main .c_form_item {
  border-bottom: 1px solid #4e454a;
}
.c_form_list.c_form_main .c_form_item .ttl,
.c_form_list.c_form_main .c_form_item .data {
  padding: 1.4354rem 1.6rem;
  box-sizing: border-box;
}
.c_form_list.c_form_main .c_form_item .ttl {
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
  justify-content: space-between;
  align-items: baseline;
  font-size: 1.6rem;
  line-height: 1.8em;
  border-bottom: 1px solid #4e454a;
  color: #000000;
  background: #eff9ff;
}
.c_form_list.c_form_main .c_form_item .ttl .txt {
  flex: 0 1 auto;
  width: auto;
  margin-right: 1rem;
}
.c_form_list.c_form_main .c_form_item .ttl .txt span {
  font-size: 1.1rem;
  font-weight: 500;
}
.c_form_list.c_form_main .c_form_item .ttl .requiered {
  flex: 0 1 4rem;
  width: 4rem;
  height: 2.42rem;
  font-size: 1.3rem;
  line-height: 1.9em;
  text-align: center;
  border-radius: 0.5rem;
  color: #ffffff;
  background: #b10000;
}
.c_form_list.c_form_main .c_form_item .data {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.c_form_list.c_form_main .c_form_item .data p + p {
  margin-top: 1.7rem;
}
.c_form_list.c_form_main .c_form_item .data.mail_wrap {
  padding-left: 0;
  padding-right: 0;
}
.c_form_list.c_form_main .c_form_item .data.mail_wrap .mail_box {
  padding-left: 1.6rem;
  padding-right: 1.6rem;
}
.c_form_list.c_form_main .c_form_item .data.mail_wrap .mail_box .text {
  margin-bottom: 1.5em;
  font-size: 1.5rem;
  line-height: 1;
}
.c_form_list.c_form_main .c_form_item .data.mail_wrap .mail_box .text + .error_ms {
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.c_form_list.c_form_main .c_form_item .data.mail_wrap .mail_box + .mail_box {
  margin-top: 3rem;
  padding-top: 3rem;
  border-top: 1px solid #4e454a;
}
.c_form_list.c_form_main .c_form_item .data.tel_wrap input {
  width: calc((100% - 4.2rem) / 3);
}
.c_form_list.c_form_main .c_form_item .data.tel_wrap p {
  font-size: 0;
}
.c_form_list.c_form_main .c_form_item .data.tel_wrap p span {
  display: inline-block;
  margin: 0 0.45rem;
  width: 1.2rem;
  font-size: 1.2rem;
  vertical-align: middle;
}
.c_form_list.c_form_main .c_form_item:last-of-type {
  border-bottom: none;
}
.c_form_list.c_form_main.check {
  margin-top: 5rem;
}
.c_form_list.c_form_main.check .c_form_item .ttl {
  padding-top: 2.5rem;
  border-bottom: none;
  background: unset;
}
.c_form_list.c_form_main.check .c_form_item .data {
  padding-top: 0;
  padding-bottom: 2.5rem;
}
.c_form_list.c_form_main.check .c_form_item .data p {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.6em;
  letter-spacing: 0.092em;
}
.c_form_list.c_form_main.check .c_form_item .data.name_wrap {
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
  justify-content: space-between;
  justify-content: flex-start;
}
.c_form_list.c_form_main.check .c_form_item .data.name_wrap p {
  flex: 0 1 auto;
  width: auto;
}
.c_form_list.c_form_main.check .c_form_item .data.name_wrap p + p {
  margin-top: 0;
  margin-left: 1rem;
}
.c_form_list.c_form_main.check .c_form_item .data.mail_wrap {
  padding-left: 1.2rem;
  padding-right: 1.2rem;
}
.c_form_list + .c_form_ttl {
  margin-top: 3rem;
}

.f_label {
  display: block;
  padding: 0.8rem 0;
  position: relative;
}
.f_label input[type=radio] {
  margin: 0;
  width: 1.6rem;
  height: 1.6rem;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}
.f_label input[type=radio]:checked + .f_label-txt {
  color: #0e66b5;
}
.f_label input[type=radio]:checked + .f_label-txt::before {
  border-color: #0e66b5;
}
.f_label input[type=radio]:checked + .f_label-txt::after {
  opacity: 1;
}
.f_label .f_label-txt {
  display: inline-block;
  padding-left: 2.5rem;
  font-size: 1.6rem;
  font-weight: 700;
  position: relative;
}
.f_label .f_label-txt::before, .f_label .f_label-txt::after {
  content: "";
  transition: 0.4s ease all;
  position: absolute;
}
.f_label .f_label-txt::before {
  width: 2rem;
  height: 2rem;
  border: 2px solid #848484;
  border-radius: 50%;
  box-sizing: border-box;
  background: #ffffff;
  position: absolute;
  top: 0.35rem;
  left: 0;
}
.f_label .f_label-txt::after {
  width: 1.3rem;
  height: 1.3rem;
  border-radius: 50%;
  background: #0e66b5;
  position: absolute;
  top: 0.7rem;
  left: 0.35rem;
  opacity: 0;
}

.policy_wrap {
  height: 26rem;
  overflow-y: scroll;
  margin-bottom: 2rem;
  padding: 2.5rem 2.2rem;
  border: 1px solid #4e454a;
  border-radius: 0.5rem;
  box-sizing: border-box;
}
/* start 追加箇所 2026.06.09 */
.policy_wrap .policy_inner > *:last-child {
  margin-bottom: 0;
}
/* end 追加箇所 2026.06.09 */
.policy_wrap .policy_ttl {
  margin-bottom: 0.5em;
  padding-bottom: 0.5em;
  border-bottom: 1.5px solid #085080;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.5;
  text-align: left;
}
.policy_wrap .policy_top,
.policy_wrap .policy_list,
.policy_wrap .policy_bottom {
  font-size: 1.3rem;
  line-height: 1.8;
  letter-spacing: 0;
}
/* start 追加箇所 2026.06.09 */
.policy_wrap .policy_top a,
.policy_wrap .policy_list a,
.policy_wrap .policy_bottom a {
  display: inline;
  text-decoration: underline;
  text-underline-offset: 0.1em;
  color: #085080;
}
/* end 追加箇所 2026.06.09 */
.policy_wrap .policy_top {
  margin-bottom: 2.5em;
}
.policy_wrap .policy_list li {
  padding-left: 1em;
  text-indent: -1em;
}
.policy_wrap .policy_list li + li {
  margin-top: 1.5em;
}
.policy_wrap .policy_bottom {
  margin-top: 2em;
  text-align: right;
}
.policy_wrap .btn {
  margin-top: 3.5rem;
}

.policy_check {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 3rem;
  cursor: pointer;
  font-size: 1.5rem;
}
.policy_check input {
  margin: 0;
  width: 2rem;
  height: 2rem;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}
.policy_check input[type=checkbox]:checked + .txt .check::before {
  background: #0066b5;
}
.policy_check input[type=checkbox]:checked + .txt .check::after {
  opacity: 1;
}
.policy_check .txt {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.8rem;
  line-height: 1;
}
.policy_check .check {
  position: relative;
  display: inline-block;
  width: 2.5rem;
  aspect-ratio: 1;
}
.policy_check .check::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  aspect-ratio: 1;
  border-radius: 0.5rem;
  box-sizing: border-box;
  background: #FFF;
  border: 1px solid #0066b5;
  transition: 0.3s;
  content: "";
}
.policy_check .check::after {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  transform: translate(-50%, -75%) rotate(-45deg);
  width: 50%;
  aspect-ratio: 3/1;
  border-left: 3px solid #FFF;
  border-bottom: 3px solid #FFF;
  opacity: 0;
  transition: 0.3s;
  content: "";
}

.accept_wrap .accept_txt {
  margin-bottom: 1.6rem;
  font-size: 1.5rem;
  letter-spacing: 0.13em;
  text-align: center;
}
.accept_wrap .accept_txt a {
  display: inline;
  font-weight: 700;
  text-decoration: underline;
  color: #085080;
}

.btn {
  width: 26rem;
}
/* start 追加箇所 2026.06.09 */
.btn a,
.btn button {
  font-size: 1.5rem;
  font-weight: 700;
  border-color: #0066B5;
  color: #ffffff;
  background: #0066B5;
  transition: 0.4s ease border-color, 0.4s ease color, 0.4s ease background;
}
.btn a:disabled,
.btn button:disabled {
  border-color: #dfdfdf;
  color: #a3a3a3;
  background: #dfdfdf;
  pointer-events: none;
}
/* end 追加箇所 2026.06.09 */
.btn i {
  margin-right: 0.4em;
  font-size: 1.3rem;
}
.btn.back a,
.btn.back button {
  border-width: 2px;
  border-color: #0066B5;
  color: #0066B5;
  background: #ffffff;
}

.btn_wrap .btn + .btn {
  margin-top: 1.6rem;
}

/*------------------------------
		961px以上
------------------------------*/
@media screen and (min-width: 961px) {
  #page_head {
    background-image: url("../../img/contact/page_head.png");
  }
  #page_contents .m-inner {
    padding-top: 4.7rem;
  }
  #page_contents .check_inner {
    padding-top: 4.2rem;
  }
  #page_contents .complete_inner {
    padding-top: 4.2rem;
  }
  #page_contents .complete_inner .sec_ttl {
    font-size: 3.2rem;
  }
  #page_contents .complete_inner .sec_txt {
    margin-top: 4.2rem;
    font-size: 1.6rem;
  }
  .sec_ttl {
    font-size: 3.2rem;
  }
  .sec_txt {
    margin-top: 0.8rem;
    font-size: 1.6rem;
  }
  .sec_txt.comp {
    margin-top: 4.5rem;
  }
  input[type=text],
  input[type=email],
  input[type=tel],
  textarea {
    padding: 1.575rem 2rem;
    font-size: 2rem;
  }
  textarea {
    height: 37.2rem;
  }
  .form_intro {
    margin-bottom: 3.48rem;
    font-size: 1.6rem;
    line-height: 1.8em;
  }
  .message {
    margin-top: 3.3rem;
    margin-bottom: 3.3rem;
    font-size: 1.9rem;
    line-height: 1.579em;
  }
  .c_form_ttl {
    margin-bottom: 3.43rem;
    font-size: 2.2rem;
    line-height: 1.5em;
  }
  .c_form_ttl .form_tag {
    margin-left: 1.2rem;
    padding: 0.75rem 1.2rem;
    font-size: 1.6rem;
  }
  .error_ms {
    display: inline;
    margin-left: 3.6rem;
    font-size: 1.6rem;
  }
  .c_form_list.c_form_about .c_form_item .ttl,
  .c_form_list.c_form_about .c_form_item .data {
    padding: 2rem 2.8rem;
  }
  .c_form_list.c_form_about .c_form_item .ttl {
    padding-top: 0.8rem;
    padding-bottom: 0.8rem;
    font-size: 2.2rem;
    color: #ffffff;
    background: #0e66b5;
  }
  .c_form_list.c_form_about .c_form_item .label_wrap {
    display: flex;
    flex-flow: row wrap;
    align-content: flex-start;
    justify-content: space-between;
  }
  .c_form_list.c_form_about .c_form_item .label_wrap.col-1 .f_label {
    flex: 0 1 auto;
    width: auto;
  }
  .c_form_list.c_form_about .c_form_item .label_wrap.col-2 .f_label {
    flex: 0 1 47.0212766%;
    width: 47.0212766%;
    margin-top: 1rem;
  }
  .c_form_list.c_form_about .c_form_item .label_wrap.col-2 .f_label:nth-child(-n+2) {
    margin-top: 0;
  }
  .c_form_list.c_form_main {
    margin-bottom: 4.33rem;
  }
  .c_form_list.c_form_main .c_form_item {
    display: flex;
    flex-flow: row wrap;
    align-content: flex-start;
    justify-content: space-between;
  }
  .c_form_list.c_form_main .c_form_item .ttl,
  .c_form_list.c_form_main .c_form_item .data {
    padding: 4rem 2.8rem;
  }
  .c_form_list.c_form_main .c_form_item .ttl {
    flex: 0 1 30.6382979%;
    width: 30.6382979%;
    align-items: baseline;
    justify-content: space-between;
    font-size: 2.2rem;
    line-height: 1.5em;
    border-right: 1px solid #4e454a;
    border-bottom: none;
  }
  .c_form_list.c_form_main .c_form_item .ttl .txt span {
    font-size: 1.6rem;
  }
  .c_form_list.c_form_main .c_form_item .ttl .requiered {
    flex: 0 1 5.6rem;
    width: 5.6rem;
    height: 3.1rem;
    font-size: 1.6rem;
    line-height: 1.9377em;
  }
  .c_form_list.c_form_main .c_form_item .data {
    flex: 0 1 69.3617021%;
    width: 69.3617021%;
  }
  .c_form_list.c_form_main .c_form_item .data p + p {
    margin-top: 1.4rem;
  }
  .c_form_list.c_form_main .c_form_item .data.name_wrap {
    display: flex;
    flex-flow: row wrap;
    align-content: flex-start;
    justify-content: space-between;
  }
  .c_form_list.c_form_main .c_form_item .data.name_wrap p {
    flex: 0 1 45.4079908%;
    width: 45.4079908%;
  }
  .c_form_list.c_form_main .c_form_item .data.name_wrap p + p {
    margin-top: 0;
  }
  .c_form_list.c_form_main .c_form_item .data.mail_wrap .mail_box {
    padding-left: 2.8rem;
    padding-right: 2.8rem;
  }
  .c_form_list.c_form_main .c_form_item .data.mail_wrap .mail_box .text {
    margin-bottom: 1.1rem;
    font-size: 1.6rem;
    line-height: 2.2em;
  }
  .c_form_list.c_form_main .c_form_item .data.mail_wrap .mail_box .text + .error_ms {
    margin-top: 0;
    margin-bottom: 1.1rem;
  }
  .c_form_list.c_form_main .c_form_item .data.mail_wrap .mail_box .text_wrap {
    display: flex;
    flex-flow: row wrap;
    align-content: flex-start;
    justify-content: space-between;
    align-items: flex-end;
  }
  .c_form_list.c_form_main .c_form_item .data.mail_wrap .mail_box .text_wrap > * {
    flex: 0 1 auto;
    width: auto;
    display: block;
  }
  .c_form_list.c_form_main .c_form_item .data.mail_wrap .mail_box + .mail_box {
    margin-top: 4rem;
    padding-top: 3.32rem;
  }
  .c_form_list.c_form_main .c_form_item .data.tel_wrap input {
    width: calc((100% - 7.88rem) / 3);
  }
  .c_form_list.c_form_main .c_form_item .data.tel_wrap p span {
    margin-left: 1.17rem;
    margin-right: 1.17rem;
    width: 1.6rem;
    font-size: 1.6rem;
  }
  .c_form_list.c_form_main .c_form_item:last-of-type {
    border-bottom: none;
  }
  .c_form_list.c_form_main.check {
    margin-top: 4.3rem;
  }
  .c_form_list.c_form_main.check .c_form_item .ttl,
  .c_form_list.c_form_main.check .c_form_item .data {
    padding: 3.55rem 3.73rem;
  }
  .c_form_list.c_form_main.check .c_form_item .ttl {
    flex: 0 1 27.6595745%;
    width: 27.6595745%;
    border-right: none;
  }
  .c_form_list.c_form_main.check .c_form_item .ttl p {
    margin: 0;
    letter-spacing: 0.07em;
  }
  .c_form_list.c_form_main.check .c_form_item .data {
    flex: 0 1 72.3404255%;
    width: 72.3404255%;
  }
  .c_form_list.c_form_main.check .c_form_item .data p {
    font-size: 2rem;
  }
  .c_form_list.c_form_main.check .c_form_item .data.name_wrap p + p {
    margin-left: 1.5rem;
  }
  .c_form_list.c_form_main.check .c_form_item .data.mail_wrap {
    padding-left: 3.73rem;
    padding-right: 3.73rem;
  }
  .c_form_list + .c_form_ttl {
    margin-top: 3rem;
  }
  .f_label {
    padding: 0.8rem 0;
  }
  .f_label input[type=radio] {
    width: 2.5rem;
    height: 2.5rem;
  }
  .f_label .f_label-txt {
    padding-left: 3.6rem;
    font-size: 2rem;
  }
  .f_label .f_label-txt::before {
    width: 2.5rem;
    height: 2.5rem;
    border-width: 2px;
    top: 0.65rem;
    left: 0;
  }
  .f_label .f_label-txt::after {
    width: 1.7rem;
    height: 1.7rem;
    top: 1.05rem;
    left: 0.4rem;
  }
  .policy_wrap {
    height: 36rem;
    margin-bottom: 2rem;
    padding: 4rem 2.8rem;
  }
  .policy_wrap .policy_ttl {
    font-size: 2.2rem;
  }
  .policy_wrap .policy_top,
  .policy_wrap .policy_list,
  .policy_wrap .policy_bottom {
    font-size: 1.6rem;
    line-height: 2;
  }
  .policy_wrap .policy_list li + li {
    margin-top: 2em;
  }
  .policy_wrap .btn {
    margin-top: 4.2rem;
  }
  .policy_check {
    margin-bottom: 5rem;
    font-size: 1.8rem;
    line-height: 1;
  }
  .policy_check .txt {
    gap: 1rem;
  }
  .policy_check .check {
    width: 2.8rem;
  }
  .accept_wrap {
    padding: 4rem 2.8rem;
  }
  .accept_wrap .accept_txt {
    margin-bottom: 4rem;
    font-size: 1.6rem;
    line-height: 2em;
  }
  .btn {
    width: 30.6rem;
  }
  .btn a,
  .btn button {
    font-size: 1.8rem;
  }
  .btn a:hover,
  .btn button:hover {
    color: #ffffff;
    background: #0066B5;
  }
  .btn i {
    margin-right: 0.86rem;
    font-size: 1.3rem;
  }
  .btn.back a:hover,
  .btn.back button:hover {
    color: #0066B5;
    background: #ffffff;
  }
  .btn_wrap {
    display: flex;
    flex-flow: row wrap;
    align-content: flex-start;
    justify-content: space-between;
    justify-content: center;
  }
  .btn_wrap .btn {
    flex: 0 1 auto;
    width: auto;
    margin: 0;
  }
  .btn_wrap .btn a,
  .btn_wrap .btn button {
    width: 30.6rem;
  }
  .btn_wrap .btn + .btn {
    margin-top: 0;
    margin-left: 4.55rem;
  }
}