@charset "utf-8";
/* CSS Document */
/*フォームのパーツのみのcss*/
.hiss {
      color: #c40500;
}
input[type=text], input[type=number], input[type=email], input[type=tel], input[type=mail], input[type=password], input[type=date], input[type=time] {
      padding: 4px;
      border-radius: 0;
      outline: none;
      -moz-appearance: none;
      appearance: none;
      -webkit-appearance: none;
      border: solid 1px #cccccc;
      /* width: 100%;*/
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      font-size: 1.6rem;
      background: var(--base-color0);
      color: var(--base-color4);
}
/*textarea*/
textarea {
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      outline: none;
      border-radius: 0;
      border: solid 1px #cccccc;
      padding: 4px;
      width: 100%;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      font-size: 1.6rem;
      height: 10em;
      /*resize:none; エリアの拡大禁止*/
      max-width: 100%;
      resize: vertical;
      max-height: 300px;
}
/*サイズ*/
.size_20 {
      width: 20%;
}
.size_30 {
      width: 30%;
}
.size_40 {
      width: 40%;
}
.size_50 {
      width: 50%;
}
.size_60 {
      width: 60%;
}
.size_70 {
      width: 70%;
}
.size_80 {
      width: 80%;
}
.size_80 {
      width: 80%;
}
.size_90 {
      width: 90%;
}
.size_100 {
      width: 100%;
}
.size_50_sp100 {
      width: 50%;
}
.size_60_sp100 {
      width: 60%;
}
.size_70_sp100 {
      width: 70%;
}
.size_80_sp100 {
      width: 80%;
}
.size_90_sp100 {
      width: 90%;
}
@media screen and (max-width: 960px) {
      .size_50_sp100 {
            width: 100%;
      }
      .size_60_sp100 {
            width: 100%;
      }
      .size_70_sp100 {
            width: 100%;
      }
      .size_80_sp100 {
            width: 100%;
      }
      .size_90_sp100 {
            width: 100%;
      }
}
/*ボタン*/
.fom_btn_area {
      padding-top: 5em;
      display: flex;
      justify-content: center;
}
.fom_btn_area > * + * {
      margin-left: 5%;
}
.f_btn > * {
      text-decoration: none;
      display: inline-flex;
      justify-content: center;
      border: solid 1px var(--col_main);
      padding: 0.5em 1em;
      color: #fff;
      background: var(--col_main);
      transition: 0.3s;
      box-sizing: border-box;
      border-radius: 0.5em;
      font-weight: bold;
      letter-spacing: 0.05em;
      font-size: 1.3em;
      box-shadow: 0 4px var(--col_main_d);
      min-width: 11em;
}
@media screen and (min-width: 961px), print {
      .f_btn > *:hover {
            opacity: 0.7;
      }
}
@media screen and (max-width: 680px) {
      .f_btn > * {
            font-size: 1.1em;
      }
}
/*ボタンカラー*/
.f_btn.btn_ora > * {
      border: solid 1px #f47f00;
      background: #f47f00;
      box-shadow: 0 4px #c66709;
}
.f_btn.btn_back > * {
      border: solid 1px var(--col_btn_back);
      background: var(--col_btn_back);
      box-shadow: 0 4px #6b6b6b;
}
/*押せない*/
.f_btn > *:disabled {
      border: solid 1px var(--col_btn_back);
      background: var(--col_btn_back);
      box-shadow: 0 4px #6b6b6b;
      color: #bababa;
      cursor: default;
}
@media screen and (min-width: 961px), print {
      .f_btn > *:disabled:hover {
            opacity: 1;
      }
}
/*refpac用フォーム構成css
========================================================================================================================================================*/
/*変数 var_____*/ :root {
      --col_btn: #6EA724;
      --col_btn_back: #898989;
      --col_radio: #6EA724;
      --col_check: #6EA724;
      --col_gray: #606060;
      --col_gray_l: #c8c8c8;
      --col_gray_l2: #888888;
      --col_main: #6EA724;
      --col_main_d: #3F7C1E;
      --col_main_l: #B6D391;
      --col_main_ll: #f6f9ef;
      --col_sub: #564336;
      --col_red: #dc2715; /*赤*/
      --bg_gray: #E7E7E7;
      --bg_gray_l: #f7f7f7;
}
.form_chenge {
      padding-top: 3em;
}
/*form_chenge_tab
---------------------------------------------------------------------*/
.form_chenge_tab {
      display: flex;
      justify-content: space-between;
}
.form_chenge_tab > * {
      line-height: 1.5;
      width: 100%;
      text-align: center;
      padding: 0.5em 1em;
      font-size: 1.4em;
      letter-spacing: 1px;
      font-weight: bold;
      cursor: pointer;
      border-radius: 0.2em 0.2em 0 0;
      /*      background: var(--col_gray_l);*/
      background: var(--bg_gray);
      color: #847f79;
      border-top: 3px solid var(--bg_gray);
      transition: all 0.15s ease;
}
.form_chenge_tab > *.is-active {
      background: var(--col_main_ll);
      color: var(--col_sub);
      border-top: 3px solid var(--col_main);
}
@media screen and (min-width: 961px), print {
      .form_chenge_tab > *:hover {
            background: var(--col_main_ll);
            color: var(--col_sub);
            border-top: 3px solid var(--col_main);
      }
}
@media screen and (max-width: 680px) {
      .form_chenge_tab > * {
            padding: 0.7em 1em;
            font-size: 1.2em;
            line-height: 1.3;
      }
}
/*form_chenge_title
---------------------------------------------------------------------*/
.form_chenge_title {
      font-size: 1.8em;
      font-size: 2.3rem;
      font-weight: bold;
      line-height: 1.4;
      letter-spacing: 0.05em;
      color: #564336;
      border-bottom: 2px solid var(--col_main_l);
      padding-bottom: 0.6em;
      margin-top: 1.5em;
      margin-bottom: 0.75em;
      position: relative;
}
.form_chenge_title:after {
      content: "";
      display: inline-block;
      width: 100px;
      height: 2px;
      background: var(--col_main);
      position: absolute;
      left: 0;
      bottom: -2px;
}
/*form_table_sub_title
---------------------------------------------------------------------*/
.form_table_sub_title {
      margin-top: 1.5em;
      background: var(--col_main);
      padding: 0.5em 1em;
      font-weight: bold;
      font-size: 1.2em;
      color: #fff;
}
@media screen and (max-width: 680px) {
      .form_table_sub_title {
            font-size: 1.1em;
            padding: 0.5em 0.5em;
      }
}
/*form_table_sub_title
---------------------------------------------------------------------*/
.panel {
      display: none;
}
.panel.is-active {
      display: block;
}
/*form_table
---------------------------------------------------------------------*/
.form_table table {
      table-layout: fixed;
      width: 100%;
}
.form_table table th, .form_table table td {
      padding: 1em;
      border-top: 1px solid #96847c;
}
.form_table table tr:last-child th, .form_table table tr:last-child td {
      border-bottom: 1px solid #96847c;
}
.form_table table th {
      width: 30%;
      background: var(--col_main_ll);
      color: var(--col_sub);
      font-weight: bold;
}
.form_table table td {
      width: 70%;
}
.form_table table td p + p {
      margin-top: 10px;
}
@media screen and (max-width: 680px) {
      .form_table table tr {
            display: block;
      }
      .form_table table th, .form_table table td {
            display: block;
      }
      .form_table table th {
            width: 100%;
            padding: 0.3em 0.5em;
      }
      .form_table table td {
            width: 100%;
            padding: 0.8em 0.5em 1.5em 0.5em;
      }
}
/*f_caption*/
.f_caption {
      margin-top: 1em;
      font-size: 0.9em;
}
/*form-aco
---------------------------------------------------------------------*/
.form-aco + * {
      display: none;
}
/*アコーディオンに伴うボタンの見た目変更*/
.form-aco.form_table_sub_title {
      position: relative;
      cursor: pointer;
}
.form-aco.form_table_sub_title:before, .form-aco.form_table_sub_title:after {
      content: "";
      display: inline-block;
      background: #fff;
      position: absolute;
      top: calc(1.2em + 2px);
      z-index: 2;
      transition: all 0.2s;
}
.form-aco.form_table_sub_title:before {
      width: 1.4em;
      height: 2px;
      right: 1em;
}
.form-aco.form_table_sub_title:after {
      height: 1.4em;
      width: 2px;
      top: calc(0.5em + 2px);
      right: calc(1.5em + 2px);
      transform: rotate(180deg);
}
.form-aco.form_table_sub_title.active:after {
      transform: rotate(90deg);
      opacity: 0;
}
/*r_checkbox
------------------------------------------------------------------*/
.r_checkbox {
      text-align: center;
      padding: 3em 0 0em 0;
}
@media screen and (max-width: 680px) {
      .r_checkbox {
            text-align: left;
      }
}
/*form_privacy_area
----------------------------------------------------------------------------------*/
.form_privacy_area {
      font-size: 1.4rem;
}
.form_privacy_b {
      height: 23em;
      border: solid 1px #6C6C6C;
      padding: 2em 0 2em 2em;
}
.form_privacy_inner {
      height: 100%;
      overflow-y: scroll;
      padding-right: 2em;
}
@media screen and (max-width: 680px) {
      .form_privacy_area {
            font-size: 1.3rem;
      }
      .form_privacy_b {
            padding: 1em 0 1em 1em;
      }
}
/*form_privacy_area　パーツ
----------------------------------------------------------------------------------*/
.form_privacy {
      text-align: center;
      font-size: 1.2em;
      font-weight: 600;
}
.fpb {
      font-weight: 600;
}