@charset "UTF-8";
/* ----------------------------------------------------------- */
/* color変数定義 */
/* ----------------------------------------------------------- */
body * {
  color: #314363;
}

/* サイトカラー */
body * {
  font-family: "IBM Plex Sans JP", sans-serif;
}

body {
  font-size: 0.9375rem;
} /* 15px */
ul, dl, ol {
  padding: 0;
  margin: 0;
}

li {
  list-style: none;
}

h1, h2, h3, h4, h5, h6, p, a, b, strong, span, li, dt, dd, td {
  color: #141414;
}

main {
  overflow: hidden;
}

a {
  text-decoration: none;
}

.mt_1rem {
  margin-top: 1rem;
}

.mb_1rem {
  margin-bottom: 1rem;
}

.my_1rem {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.pt_1rem {
  padding-top: 1rem;
}

.pb_1rem {
  padding-bottom: 1rem;
}

.py_1rem {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.mt_2rem {
  margin-top: 2rem;
}

.mb_2rem {
  margin-bottom: 2rem;
}

.my_2rem {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.pt_2rem {
  padding-top: 2rem;
}

.pb_2rem {
  padding-bottom: 2rem;
}

.py_2rem {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.mt_3rem {
  margin-top: 3rem;
}

.mb_3rem {
  margin-bottom: 3rem;
}

.my_3rem {
  margin-top: 3rem;
  margin-bottom: 3rem;
}

.pt_3rem {
  padding-top: 3rem;
}

.pb_3rem {
  padding-bottom: 3rem;
}

.py_3rem {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.mt_4rem {
  margin-top: 4rem;
}

.mb_4rem {
  margin-bottom: 4rem;
}

.my_4rem {
  margin-top: 4rem;
  margin-bottom: 4rem;
}

.pt_4rem {
  padding-top: 4rem;
}

.pb_4rem {
  padding-bottom: 4rem;
}

.py_4rem {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.mt_5rem {
  margin-top: 5rem;
}

.mb_5rem {
  margin-bottom: 5rem;
}

.my_5rem {
  margin-top: 5rem;
  margin-bottom: 5rem;
}

.pt_5rem {
  padding-top: 5rem;
}

.pb_5rem {
  padding-bottom: 5rem;
}

.py_5rem {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.mt_6rem {
  margin-top: 6rem;
}

.mb_6rem {
  margin-bottom: 6rem;
}

.my_6rem {
  margin-top: 6rem;
  margin-bottom: 6rem;
}

.pt_6rem {
  padding-top: 6rem;
}

.pb_6rem {
  padding-bottom: 6rem;
}

.py_6rem {
  padding-top: 6rem;
  padding-bottom: 6rem;
}

.mt_7rem {
  margin-top: 7rem;
}

.mb_7rem {
  margin-bottom: 7rem;
}

.my_7rem {
  margin-top: 7rem;
  margin-bottom: 7rem;
}

.pt_7rem {
  padding-top: 7rem;
}

.pb_7rem {
  padding-bottom: 7rem;
}

.py_7rem {
  padding-top: 7rem;
  padding-bottom: 7rem;
}

.mt_8rem {
  margin-top: 8rem;
}

.mb_8rem {
  margin-bottom: 8rem;
}

.my_8rem {
  margin-top: 8rem;
  margin-bottom: 8rem;
}

.pt_8rem {
  padding-top: 8rem;
}

.pb_8rem {
  padding-bottom: 8rem;
}

.py_8rem {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

.mt_9rem {
  margin-top: 9rem;
}

.mb_9rem {
  margin-bottom: 9rem;
}

.my_9rem {
  margin-top: 9rem;
  margin-bottom: 9rem;
}

.pt_9rem {
  padding-top: 9rem;
}

.pb_9rem {
  padding-bottom: 9rem;
}

.py_9rem {
  padding-top: 9rem;
  padding-bottom: 9rem;
}

.mt_10rem {
  margin-top: 10rem;
}

.mb_10rem {
  margin-bottom: 10rem;
}

.my_10rem {
  margin-top: 10rem;
  margin-bottom: 10rem;
}

.pt_10rem {
  padding-top: 10rem;
}

.pb_10rem {
  padding-bottom: 10rem;
}

.py_10rem {
  padding-top: 10rem;
  padding-bottom: 10rem;
}

.mt_11rem {
  margin-top: 11rem;
}

.mb_11rem {
  margin-bottom: 11rem;
}

.my_11rem {
  margin-top: 11rem;
  margin-bottom: 11rem;
}

.pt_11rem {
  padding-top: 11rem;
}

.pb_11rem {
  padding-bottom: 11rem;
}

.py_11rem {
  padding-top: 11rem;
  padding-bottom: 11rem;
}

.mt_12rem {
  margin-top: 12rem;
}

.mb_12rem {
  margin-bottom: 12rem;
}

.my_12rem {
  margin-top: 12rem;
  margin-bottom: 12rem;
}

.pt_12rem {
  padding-top: 12rem;
}

.pb_12rem {
  padding-bottom: 12rem;
}

.py_12rem {
  padding-top: 12rem;
  padding-bottom: 12rem;
}

.mt_13rem {
  margin-top: 13rem;
}

.mb_13rem {
  margin-bottom: 13rem;
}

.my_13rem {
  margin-top: 13rem;
  margin-bottom: 13rem;
}

.pt_13rem {
  padding-top: 13rem;
}

.pb_13rem {
  padding-bottom: 13rem;
}

.py_13rem {
  padding-top: 13rem;
  padding-bottom: 13rem;
}

.mt_14rem {
  margin-top: 14rem;
}

.mb_14rem {
  margin-bottom: 14rem;
}

.my_14rem {
  margin-top: 14rem;
  margin-bottom: 14rem;
}

.pt_14rem {
  padding-top: 14rem;
}

.pb_14rem {
  padding-bottom: 14rem;
}

.py_14rem {
  padding-top: 14rem;
  padding-bottom: 14rem;
}

.mt_15rem {
  margin-top: 15rem;
}

.mb_15rem {
  margin-bottom: 15rem;
}

.my_15rem {
  margin-top: 15rem;
  margin-bottom: 15rem;
}

.pt_15rem {
  padding-top: 15rem;
}

.pb_15rem {
  padding-bottom: 15rem;
}

.py_15rem {
  padding-top: 15rem;
  padding-bottom: 15rem;
}

.mt_16rem {
  margin-top: 16rem;
}

.mb_16rem {
  margin-bottom: 16rem;
}

.my_16rem {
  margin-top: 16rem;
  margin-bottom: 16rem;
}

.pt_16rem {
  padding-top: 16rem;
}

.pb_16rem {
  padding-bottom: 16rem;
}

.py_16rem {
  padding-top: 16rem;
  padding-bottom: 16rem;
}

.mt_17rem {
  margin-top: 17rem;
}

.mb_17rem {
  margin-bottom: 17rem;
}

.my_17rem {
  margin-top: 17rem;
  margin-bottom: 17rem;
}

.pt_17rem {
  padding-top: 17rem;
}

.pb_17rem {
  padding-bottom: 17rem;
}

.py_17rem {
  padding-top: 17rem;
  padding-bottom: 17rem;
}

.mt_18rem {
  margin-top: 18rem;
}

.mb_18rem {
  margin-bottom: 18rem;
}

.my_18rem {
  margin-top: 18rem;
  margin-bottom: 18rem;
}

.pt_18rem {
  padding-top: 18rem;
}

.pb_18rem {
  padding-bottom: 18rem;
}

.py_18rem {
  padding-top: 18rem;
  padding-bottom: 18rem;
}

.mt_19rem {
  margin-top: 19rem;
}

.mb_19rem {
  margin-bottom: 19rem;
}

.my_19rem {
  margin-top: 19rem;
  margin-bottom: 19rem;
}

.pt_19rem {
  padding-top: 19rem;
}

.pb_19rem {
  padding-bottom: 19rem;
}

.py_19rem {
  padding-top: 19rem;
  padding-bottom: 19rem;
}

.mt_20rem {
  margin-top: 20rem;
}

.mb_20rem {
  margin-bottom: 20rem;
}

.my_20rem {
  margin-top: 20rem;
  margin-bottom: 20rem;
}

.pt_20rem {
  padding-top: 20rem;
}

.pb_20rem {
  padding-bottom: 20rem;
}

.py_20rem {
  padding-top: 20rem;
  padding-bottom: 20rem;
}

@media screen and (min-width: 768px) {
  .mt_md_1rem {
    margin-top: 1rem !important;
  }
  .mb_md_1rem {
    margin-bottom: 1rem !important;
  }
  .pt_sm_1rem {
    padding-top: 1rem !important;
  }
  .pt_md_1rem {
    padding-top: 1rem !important;
  }
  .pb_md_1rem {
    padding-bottom: 1rem !important;
  }
  .mt_md_2rem {
    margin-top: 2rem !important;
  }
  .mb_md_2rem {
    margin-bottom: 2rem !important;
  }
  .pt_sm_2rem {
    padding-top: 2rem !important;
  }
  .pt_md_2rem {
    padding-top: 2rem !important;
  }
  .pb_md_2rem {
    padding-bottom: 2rem !important;
  }
  .mt_md_3rem {
    margin-top: 3rem !important;
  }
  .mb_md_3rem {
    margin-bottom: 3rem !important;
  }
  .pt_sm_3rem {
    padding-top: 3rem !important;
  }
  .pt_md_3rem {
    padding-top: 3rem !important;
  }
  .pb_md_3rem {
    padding-bottom: 3rem !important;
  }
  .mt_md_4rem {
    margin-top: 4rem !important;
  }
  .mb_md_4rem {
    margin-bottom: 4rem !important;
  }
  .pt_sm_4rem {
    padding-top: 4rem !important;
  }
  .pt_md_4rem {
    padding-top: 4rem !important;
  }
  .pb_md_4rem {
    padding-bottom: 4rem !important;
  }
  .mt_md_5rem {
    margin-top: 5rem !important;
  }
  .mb_md_5rem {
    margin-bottom: 5rem !important;
  }
  .pt_sm_5rem {
    padding-top: 5rem !important;
  }
  .pt_md_5rem {
    padding-top: 5rem !important;
  }
  .pb_md_5rem {
    padding-bottom: 5rem !important;
  }
  .mt_md_6rem {
    margin-top: 6rem !important;
  }
  .mb_md_6rem {
    margin-bottom: 6rem !important;
  }
  .pt_sm_6rem {
    padding-top: 6rem !important;
  }
  .pt_md_6rem {
    padding-top: 6rem !important;
  }
  .pb_md_6rem {
    padding-bottom: 6rem !important;
  }
  .mt_md_7rem {
    margin-top: 7rem !important;
  }
  .mb_md_7rem {
    margin-bottom: 7rem !important;
  }
  .pt_sm_7rem {
    padding-top: 7rem !important;
  }
  .pt_md_7rem {
    padding-top: 7rem !important;
  }
  .pb_md_7rem {
    padding-bottom: 7rem !important;
  }
  .mt_md_8rem {
    margin-top: 8rem !important;
  }
  .mb_md_8rem {
    margin-bottom: 8rem !important;
  }
  .pt_sm_8rem {
    padding-top: 8rem !important;
  }
  .pt_md_8rem {
    padding-top: 8rem !important;
  }
  .pb_md_8rem {
    padding-bottom: 8rem !important;
  }
  .mt_md_9rem {
    margin-top: 9rem !important;
  }
  .mb_md_9rem {
    margin-bottom: 9rem !important;
  }
  .pt_sm_9rem {
    padding-top: 9rem !important;
  }
  .pt_md_9rem {
    padding-top: 9rem !important;
  }
  .pb_md_9rem {
    padding-bottom: 9rem !important;
  }
  .mt_md_10rem {
    margin-top: 10rem !important;
  }
  .mb_md_10rem {
    margin-bottom: 10rem !important;
  }
  .pt_sm_10rem {
    padding-top: 10rem !important;
  }
  .pt_md_10rem {
    padding-top: 10rem !important;
  }
  .pb_md_10rem {
    padding-bottom: 10rem !important;
  }
  .mt_md_11rem {
    margin-top: 11rem !important;
  }
  .mb_md_11rem {
    margin-bottom: 11rem !important;
  }
  .pt_sm_11rem {
    padding-top: 11rem !important;
  }
  .pt_md_11rem {
    padding-top: 11rem !important;
  }
  .pb_md_11rem {
    padding-bottom: 11rem !important;
  }
  .mt_md_12rem {
    margin-top: 12rem !important;
  }
  .mb_md_12rem {
    margin-bottom: 12rem !important;
  }
  .pt_sm_12rem {
    padding-top: 12rem !important;
  }
  .pt_md_12rem {
    padding-top: 12rem !important;
  }
  .pb_md_12rem {
    padding-bottom: 12rem !important;
  }
  .mt_md_13rem {
    margin-top: 13rem !important;
  }
  .mb_md_13rem {
    margin-bottom: 13rem !important;
  }
  .pt_sm_13rem {
    padding-top: 13rem !important;
  }
  .pt_md_13rem {
    padding-top: 13rem !important;
  }
  .pb_md_13rem {
    padding-bottom: 13rem !important;
  }
  .mt_md_14rem {
    margin-top: 14rem !important;
  }
  .mb_md_14rem {
    margin-bottom: 14rem !important;
  }
  .pt_sm_14rem {
    padding-top: 14rem !important;
  }
  .pt_md_14rem {
    padding-top: 14rem !important;
  }
  .pb_md_14rem {
    padding-bottom: 14rem !important;
  }
  .mt_md_15rem {
    margin-top: 15rem !important;
  }
  .mb_md_15rem {
    margin-bottom: 15rem !important;
  }
  .pt_sm_15rem {
    padding-top: 15rem !important;
  }
  .pt_md_15rem {
    padding-top: 15rem !important;
  }
  .pb_md_15rem {
    padding-bottom: 15rem !important;
  }
  .mt_md_16rem {
    margin-top: 16rem !important;
  }
  .mb_md_16rem {
    margin-bottom: 16rem !important;
  }
  .pt_sm_16rem {
    padding-top: 16rem !important;
  }
  .pt_md_16rem {
    padding-top: 16rem !important;
  }
  .pb_md_16rem {
    padding-bottom: 16rem !important;
  }
  .mt_md_17rem {
    margin-top: 17rem !important;
  }
  .mb_md_17rem {
    margin-bottom: 17rem !important;
  }
  .pt_sm_17rem {
    padding-top: 17rem !important;
  }
  .pt_md_17rem {
    padding-top: 17rem !important;
  }
  .pb_md_17rem {
    padding-bottom: 17rem !important;
  }
  .mt_md_18rem {
    margin-top: 18rem !important;
  }
  .mb_md_18rem {
    margin-bottom: 18rem !important;
  }
  .pt_sm_18rem {
    padding-top: 18rem !important;
  }
  .pt_md_18rem {
    padding-top: 18rem !important;
  }
  .pb_md_18rem {
    padding-bottom: 18rem !important;
  }
  .mt_md_19rem {
    margin-top: 19rem !important;
  }
  .mb_md_19rem {
    margin-bottom: 19rem !important;
  }
  .pt_sm_19rem {
    padding-top: 19rem !important;
  }
  .pt_md_19rem {
    padding-top: 19rem !important;
  }
  .pb_md_19rem {
    padding-bottom: 19rem !important;
  }
  .mt_md_20rem {
    margin-top: 20rem !important;
  }
  .mb_md_20rem {
    margin-bottom: 20rem !important;
  }
  .pt_sm_20rem {
    padding-top: 20rem !important;
  }
  .pt_md_20rem {
    padding-top: 20rem !important;
  }
  .pb_md_20rem {
    padding-bottom: 20rem !important;
  }
}
@media screen and (min-width: 992px) {
  .mt_lg_1rem {
    margin-top: 1rem !important;
  }
  .mb_lg_1rem {
    margin-bottom: 1rem !important;
  }
  .my_lg_1rem {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .pt_lg_1rem {
    padding-top: 1rem !important;
  }
  .pb_lg_1rem {
    padding-bottom: 1rem !important;
  }
  .py_lg_1rem {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .mt_lg_2rem {
    margin-top: 2rem !important;
  }
  .mb_lg_2rem {
    margin-bottom: 2rem !important;
  }
  .my_lg_2rem {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important;
  }
  .pt_lg_2rem {
    padding-top: 2rem !important;
  }
  .pb_lg_2rem {
    padding-bottom: 2rem !important;
  }
  .py_lg_2rem {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
  }
  .mt_lg_3rem {
    margin-top: 3rem !important;
  }
  .mb_lg_3rem {
    margin-bottom: 3rem !important;
  }
  .my_lg_3rem {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .pt_lg_3rem {
    padding-top: 3rem !important;
  }
  .pb_lg_3rem {
    padding-bottom: 3rem !important;
  }
  .py_lg_3rem {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .mt_lg_4rem {
    margin-top: 4rem !important;
  }
  .mb_lg_4rem {
    margin-bottom: 4rem !important;
  }
  .my_lg_4rem {
    margin-top: 4rem !important;
    margin-bottom: 4rem !important;
  }
  .pt_lg_4rem {
    padding-top: 4rem !important;
  }
  .pb_lg_4rem {
    padding-bottom: 4rem !important;
  }
  .py_lg_4rem {
    padding-top: 4rem !important;
    padding-bottom: 4rem !important;
  }
  .mt_lg_5rem {
    margin-top: 5rem !important;
  }
  .mb_lg_5rem {
    margin-bottom: 5rem !important;
  }
  .my_lg_5rem {
    margin-top: 5rem !important;
    margin-bottom: 5rem !important;
  }
  .pt_lg_5rem {
    padding-top: 5rem !important;
  }
  .pb_lg_5rem {
    padding-bottom: 5rem !important;
  }
  .py_lg_5rem {
    padding-top: 5rem !important;
    padding-bottom: 5rem !important;
  }
  .mt_lg_6rem {
    margin-top: 6rem !important;
  }
  .mb_lg_6rem {
    margin-bottom: 6rem !important;
  }
  .my_lg_6rem {
    margin-top: 6rem !important;
    margin-bottom: 6rem !important;
  }
  .pt_lg_6rem {
    padding-top: 6rem !important;
  }
  .pb_lg_6rem {
    padding-bottom: 6rem !important;
  }
  .py_lg_6rem {
    padding-top: 6rem !important;
    padding-bottom: 6rem !important;
  }
  .mt_lg_7rem {
    margin-top: 7rem !important;
  }
  .mb_lg_7rem {
    margin-bottom: 7rem !important;
  }
  .my_lg_7rem {
    margin-top: 7rem !important;
    margin-bottom: 7rem !important;
  }
  .pt_lg_7rem {
    padding-top: 7rem !important;
  }
  .pb_lg_7rem {
    padding-bottom: 7rem !important;
  }
  .py_lg_7rem {
    padding-top: 7rem !important;
    padding-bottom: 7rem !important;
  }
  .mt_lg_8rem {
    margin-top: 8rem !important;
  }
  .mb_lg_8rem {
    margin-bottom: 8rem !important;
  }
  .my_lg_8rem {
    margin-top: 8rem !important;
    margin-bottom: 8rem !important;
  }
  .pt_lg_8rem {
    padding-top: 8rem !important;
  }
  .pb_lg_8rem {
    padding-bottom: 8rem !important;
  }
  .py_lg_8rem {
    padding-top: 8rem !important;
    padding-bottom: 8rem !important;
  }
  .mt_lg_9rem {
    margin-top: 9rem !important;
  }
  .mb_lg_9rem {
    margin-bottom: 9rem !important;
  }
  .my_lg_9rem {
    margin-top: 9rem !important;
    margin-bottom: 9rem !important;
  }
  .pt_lg_9rem {
    padding-top: 9rem !important;
  }
  .pb_lg_9rem {
    padding-bottom: 9rem !important;
  }
  .py_lg_9rem {
    padding-top: 9rem !important;
    padding-bottom: 9rem !important;
  }
  .mt_lg_10rem {
    margin-top: 10rem !important;
  }
  .mb_lg_10rem {
    margin-bottom: 10rem !important;
  }
  .my_lg_10rem {
    margin-top: 10rem !important;
    margin-bottom: 10rem !important;
  }
  .pt_lg_10rem {
    padding-top: 10rem !important;
  }
  .pb_lg_10rem {
    padding-bottom: 10rem !important;
  }
  .py_lg_10rem {
    padding-top: 10rem !important;
    padding-bottom: 10rem !important;
  }
  .mt_lg_11rem {
    margin-top: 11rem !important;
  }
  .mb_lg_11rem {
    margin-bottom: 11rem !important;
  }
  .my_lg_11rem {
    margin-top: 11rem !important;
    margin-bottom: 11rem !important;
  }
  .pt_lg_11rem {
    padding-top: 11rem !important;
  }
  .pb_lg_11rem {
    padding-bottom: 11rem !important;
  }
  .py_lg_11rem {
    padding-top: 11rem !important;
    padding-bottom: 11rem !important;
  }
  .mt_lg_12rem {
    margin-top: 12rem !important;
  }
  .mb_lg_12rem {
    margin-bottom: 12rem !important;
  }
  .my_lg_12rem {
    margin-top: 12rem !important;
    margin-bottom: 12rem !important;
  }
  .pt_lg_12rem {
    padding-top: 12rem !important;
  }
  .pb_lg_12rem {
    padding-bottom: 12rem !important;
  }
  .py_lg_12rem {
    padding-top: 12rem !important;
    padding-bottom: 12rem !important;
  }
  .mt_lg_13rem {
    margin-top: 13rem !important;
  }
  .mb_lg_13rem {
    margin-bottom: 13rem !important;
  }
  .my_lg_13rem {
    margin-top: 13rem !important;
    margin-bottom: 13rem !important;
  }
  .pt_lg_13rem {
    padding-top: 13rem !important;
  }
  .pb_lg_13rem {
    padding-bottom: 13rem !important;
  }
  .py_lg_13rem {
    padding-top: 13rem !important;
    padding-bottom: 13rem !important;
  }
  .mt_lg_14rem {
    margin-top: 14rem !important;
  }
  .mb_lg_14rem {
    margin-bottom: 14rem !important;
  }
  .my_lg_14rem {
    margin-top: 14rem !important;
    margin-bottom: 14rem !important;
  }
  .pt_lg_14rem {
    padding-top: 14rem !important;
  }
  .pb_lg_14rem {
    padding-bottom: 14rem !important;
  }
  .py_lg_14rem {
    padding-top: 14rem !important;
    padding-bottom: 14rem !important;
  }
  .mt_lg_15rem {
    margin-top: 15rem !important;
  }
  .mb_lg_15rem {
    margin-bottom: 15rem !important;
  }
  .my_lg_15rem {
    margin-top: 15rem !important;
    margin-bottom: 15rem !important;
  }
  .pt_lg_15rem {
    padding-top: 15rem !important;
  }
  .pb_lg_15rem {
    padding-bottom: 15rem !important;
  }
  .py_lg_15rem {
    padding-top: 15rem !important;
    padding-bottom: 15rem !important;
  }
  .mt_lg_16rem {
    margin-top: 16rem !important;
  }
  .mb_lg_16rem {
    margin-bottom: 16rem !important;
  }
  .my_lg_16rem {
    margin-top: 16rem !important;
    margin-bottom: 16rem !important;
  }
  .pt_lg_16rem {
    padding-top: 16rem !important;
  }
  .pb_lg_16rem {
    padding-bottom: 16rem !important;
  }
  .py_lg_16rem {
    padding-top: 16rem !important;
    padding-bottom: 16rem !important;
  }
  .mt_lg_17rem {
    margin-top: 17rem !important;
  }
  .mb_lg_17rem {
    margin-bottom: 17rem !important;
  }
  .my_lg_17rem {
    margin-top: 17rem !important;
    margin-bottom: 17rem !important;
  }
  .pt_lg_17rem {
    padding-top: 17rem !important;
  }
  .pb_lg_17rem {
    padding-bottom: 17rem !important;
  }
  .py_lg_17rem {
    padding-top: 17rem !important;
    padding-bottom: 17rem !important;
  }
  .mt_lg_18rem {
    margin-top: 18rem !important;
  }
  .mb_lg_18rem {
    margin-bottom: 18rem !important;
  }
  .my_lg_18rem {
    margin-top: 18rem !important;
    margin-bottom: 18rem !important;
  }
  .pt_lg_18rem {
    padding-top: 18rem !important;
  }
  .pb_lg_18rem {
    padding-bottom: 18rem !important;
  }
  .py_lg_18rem {
    padding-top: 18rem !important;
    padding-bottom: 18rem !important;
  }
  .mt_lg_19rem {
    margin-top: 19rem !important;
  }
  .mb_lg_19rem {
    margin-bottom: 19rem !important;
  }
  .my_lg_19rem {
    margin-top: 19rem !important;
    margin-bottom: 19rem !important;
  }
  .pt_lg_19rem {
    padding-top: 19rem !important;
  }
  .pb_lg_19rem {
    padding-bottom: 19rem !important;
  }
  .py_lg_19rem {
    padding-top: 19rem !important;
    padding-bottom: 19rem !important;
  }
  .mt_lg_20rem {
    margin-top: 20rem !important;
  }
  .mb_lg_20rem {
    margin-bottom: 20rem !important;
  }
  .my_lg_20rem {
    margin-top: 20rem !important;
    margin-bottom: 20rem !important;
  }
  .pt_lg_20rem {
    padding-top: 20rem !important;
  }
  .pb_lg_20rem {
    padding-bottom: 20rem !important;
  }
  .py_lg_20rem {
    padding-top: 20rem !important;
    padding-bottom: 20rem !important;
  }
}
.ws_no {
  white-space: nowrap;
}

.ms-n1 {
  margin-left: -0.25rem;
}

.ms-n2 {
  margin-left: -0.5rem;
}

.ms-n3 {
  margin-left: -1rem;
}

.ms-n4 {
  margin-left: -1.5rem;
}

.ms-n5 {
  margin-left: -3rem;
}

.mt-n1 {
  margin-top: -0.25rem;
}

.mt-n2 {
  margin-top: -0.5rem;
}

.mt-n3 {
  margin-top: -1rem;
}

.mt-n4 {
  margin-top: -1.5rem;
}

.mt-n5 {
  margin-top: -3rem;
}

.cMainBlue {
  color: #3fadd2;
}

.cSubBlue {
  color: #6180ad;
}

.cMainNavy {
  color: #314363;
}

.cSubNavy {
  color: #123c9b;
}

.cMainGold {
  color: #d7c291;
}

.cSubGold {
  color: #f3eddf;
}

.cGray {
  color: #dfe6ef;
}

.cBlack {
  color: #141414;
}

.cWhite {
  color: #ffffff;
}

.cRed {
  color: #f4321e;
}

.bg_cMainBlue {
  background-color: #3fadd2;
}

.bg_cMainGold {
  background-color: #d7c291;
}

.bg_cSubGold {
  background-color: #f3eddf;
}

.bg_cLightGold {
  background-color: #efe4c9;
}

.bg_cBalck {
  background-color: #141414;
}

.bg_cWhite {
  background-color: #ffffff;
}

.bg_cMensBlue {
  background-color: #2b4479;
}

.bg_grd_blue {
  background: linear-gradient(to right, #3fadd2 0%, #86cbe3 100%);
}

.bg_cLightRed {
  background-color: #f3795b;
}

.bg_grd_gold {
  background: linear-gradient(to right, #efe4c9 0%, #d7c291 100%);
}

.fc_zen_kaku_gothic {
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.fc_noto_serif {
  font-family: "Noto Serif JP", serif;
}

.fc_zen_old_mincho {
  font-family: "Zen Old Mincho", serif;
}

.fc_ibm_plex_sans {
  font-family: "IBM Plex Sans JP", sans-serif;
}

.fc_en {
  font-family: "Jost", sans-serif;
}

.fc_num {
  font-family: "Manrope", sans-serif;
}

.fc_num02 {
  font-family: "Lora", serif;
}

.italic {
  font-style: italic;
}

.t_shadow {
  text-shadow: 2px 2px 12px #21839E;
}

.fs_0 {
  font-size: 0;
}

.fs_10 {
  font-size: 0.625rem;
}

.fs_11 {
  font-size: 0.6875rem;
}

.fs_12 {
  font-size: 0.75rem;
}

.fs_13 {
  font-size: 0.8125rem;
}

.fs_14 {
  font-size: 0.875rem;
}

.fs_15 {
  font-size: 0.9375rem;
}

.fs_16 {
  font-size: 1rem;
}

.fs_17 {
  font-size: 1.0625rem;
}

.fs_18 {
  font-size: 1.125rem;
}

.fs_19 {
  font-size: 1.1875rem;
}

.fs_20 {
  font-size: 1.25rem;
}

.fs_21 {
  font-size: 1.3125rem;
}

.fs_22 {
  font-size: 1.375rem;
}

.fs_23 {
  font-size: 1.4375rem;
}

.fs_24 {
  font-size: 1.5rem;
}

.fs_25 {
  font-size: 1.5625rem;
}

.fs_26 {
  font-size: 1.625rem;
}

.fs_27 {
  font-size: 1.6875rem;
}

.fs_28 {
  font-size: 1.75rem;
}

.fs_29 {
  font-size: 1.8125rem;
}

.fs_30 {
  font-size: 1.875rem;
}

.fs_31 {
  font-size: 1.9375rem;
}

.fs_32 {
  font-size: 2rem;
}

.fs_33 {
  font-size: 2.0625rem;
}

.fs_34 {
  font-size: 2.125rem;
}

.fs_35 {
  font-size: 2.1875rem;
}

.fs_36 {
  font-size: 2.25rem;
}

.fs_37 {
  font-size: 2.3125rem;
}

.fs_38 {
  font-size: 2.375rem;
}

.fs_39 {
  font-size: 2.4375rem;
}

.fs_40 {
  font-size: 2.5rem;
}

.fs_41 {
  font-size: 2.5625rem;
}

.fs_42 {
  font-size: 2.625rem;
}

.fs_43 {
  font-size: 2.6875rem;
}

.fs_44 {
  font-size: 2.75rem;
}

.fs_45 {
  font-size: 2.8125rem;
}

.fs_46 {
  font-size: 2.875rem;
}

.fs_47 {
  font-size: 2.9375rem;
}

.fs_48 {
  font-size: 3rem;
}

.fs_49 {
  font-size: 3.0625rem;
}

.fs_50 {
  font-size: 3.125rem;
}

.fs_51 {
  font-size: 3.1875rem;
}

.fs_52 {
  font-size: 3.25rem;
}

.fs_53 {
  font-size: 3.3125rem;
}

.fs_54 {
  font-size: 3.375rem;
}

.fs_55 {
  font-size: 3.4375rem;
}

.fs_56 {
  font-size: 3.5rem;
}

.fs_57 {
  font-size: 3.5625rem;
}

.fs_58 {
  font-size: 3.625rem;
}

.fs_59 {
  font-size: 3.6875rem;
}

.fs_60 {
  font-size: 3.75rem;
}

.fs_61 {
  font-size: 3.8125rem;
}

.fs_62 {
  font-size: 3.875rem;
}

.fs_63 {
  font-size: 3.9375rem;
}

.fs_64 {
  font-size: 4rem;
}

.fs_65 {
  font-size: 4.0625rem;
}

.fs_66 {
  font-size: 4.125rem;
}

.fs_67 {
  font-size: 4.1875rem;
}

.fs_68 {
  font-size: 4.25rem;
}

.fs_69 {
  font-size: 4.3125rem;
}

.fs_70 {
  font-size: 4.375rem;
}

@media screen and (min-width: 768px) {
  .fs_md_10 {
    font-size: 0.625rem;
  }
  .fs_md_11 {
    font-size: 0.6875rem;
  }
  .fs_md_12 {
    font-size: 0.75rem;
  }
  .fs_md_13 {
    font-size: 0.8125rem;
  }
  .fs_md_14 {
    font-size: 0.875rem;
  }
  .fs_md_15 {
    font-size: 0.9375rem;
  }
  .fs_md_16 {
    font-size: 1rem;
  }
  .fs_md_17 {
    font-size: 1.0625rem;
  }
  .fs_md_18 {
    font-size: 1.125rem;
  }
  .fs_md_19 {
    font-size: 1.1875rem;
  }
  .fs_md_20 {
    font-size: 1.25rem;
  }
  .fs_md_21 {
    font-size: 1.3125rem;
  }
  .fs_md_22 {
    font-size: 1.375rem;
  }
  .fs_md_23 {
    font-size: 1.4375rem;
  }
  .fs_md_24 {
    font-size: 1.5rem;
  }
  .fs_md_25 {
    font-size: 1.5625rem;
  }
  .fs_md_26 {
    font-size: 1.625rem;
  }
  .fs_md_27 {
    font-size: 1.6875rem;
  }
  .fs_md_28 {
    font-size: 1.75rem;
  }
  .fs_md_29 {
    font-size: 1.8125rem;
  }
  .fs_md_30 {
    font-size: 1.875rem;
  }
  .fs_md_31 {
    font-size: 1.9375rem;
  }
  .fs_md_32 {
    font-size: 2rem;
  }
  .fs_md_33 {
    font-size: 2.0625rem;
  }
  .fs_md_34 {
    font-size: 2.125rem;
  }
  .fs_md_35 {
    font-size: 2.1875rem;
  }
  .fs_md_36 {
    font-size: 2.25rem;
  }
  .fs_md_37 {
    font-size: 2.3125rem;
  }
  .fs_md_38 {
    font-size: 2.375rem;
  }
  .fs_md_39 {
    font-size: 2.4375rem;
  }
  .fs_md_40 {
    font-size: 2.5rem;
  }
  .fs_md_41 {
    font-size: 2.5625rem;
  }
  .fs_md_42 {
    font-size: 2.625rem;
  }
  .fs_md_43 {
    font-size: 2.6875rem;
  }
  .fs_md_44 {
    font-size: 2.75rem;
  }
  .fs_md_45 {
    font-size: 2.8125rem;
  }
  .fs_md_46 {
    font-size: 2.875rem;
  }
  .fs_md_47 {
    font-size: 2.9375rem;
  }
  .fs_md_48 {
    font-size: 3rem;
  }
  .fs_md_49 {
    font-size: 3.0625rem;
  }
  .fs_md_50 {
    font-size: 3.125rem;
  }
  .fs_md_51 {
    font-size: 3.1875rem;
  }
  .fs_md_52 {
    font-size: 3.25rem;
  }
  .fs_md_53 {
    font-size: 3.3125rem;
  }
  .fs_md_54 {
    font-size: 3.375rem;
  }
  .fs_md_55 {
    font-size: 3.4375rem;
  }
  .fs_md_56 {
    font-size: 3.5rem;
  }
  .fs_md_57 {
    font-size: 3.5625rem;
  }
  .fs_md_58 {
    font-size: 3.625rem;
  }
  .fs_md_59 {
    font-size: 3.6875rem;
  }
  .fs_md_60 {
    font-size: 3.75rem;
  }
  .fs_md_61 {
    font-size: 3.8125rem;
  }
  .fs_md_62 {
    font-size: 3.875rem;
  }
  .fs_md_63 {
    font-size: 3.9375rem;
  }
  .fs_md_64 {
    font-size: 4rem;
  }
  .fs_md_65 {
    font-size: 4.0625rem;
  }
  .fs_md_66 {
    font-size: 4.125rem;
  }
  .fs_md_67 {
    font-size: 4.1875rem;
  }
  .fs_md_68 {
    font-size: 4.25rem;
  }
  .fs_md_69 {
    font-size: 4.3125rem;
  }
  .fs_md_70 {
    font-size: 4.375rem;
  }
}
@media screen and (min-width: 992px) {
  .fs_lg_10 {
    font-size: 0.625rem;
  }
  .fs_lg_11 {
    font-size: 0.6875rem;
  }
  .fs_lg_12 {
    font-size: 0.75rem;
  }
  .fs_lg_13 {
    font-size: 0.8125rem;
  }
  .fs_lg_14 {
    font-size: 0.875rem;
  }
  .fs_lg_15 {
    font-size: 0.9375rem;
  }
  .fs_lg_16 {
    font-size: 1rem;
  }
  .fs_lg_17 {
    font-size: 1.0625rem;
  }
  .fs_lg_18 {
    font-size: 1.125rem;
  }
  .fs_lg_19 {
    font-size: 1.1875rem;
  }
  .fs_lg_20 {
    font-size: 1.25rem;
  }
  .fs_lg_21 {
    font-size: 1.3125rem;
  }
  .fs_lg_22 {
    font-size: 1.375rem;
  }
  .fs_lg_23 {
    font-size: 1.4375rem;
  }
  .fs_lg_24 {
    font-size: 1.5rem;
  }
  .fs_lg_25 {
    font-size: 1.5625rem;
  }
  .fs_lg_26 {
    font-size: 1.625rem;
  }
  .fs_lg_27 {
    font-size: 1.6875rem;
  }
  .fs_lg_28 {
    font-size: 1.75rem;
  }
  .fs_lg_29 {
    font-size: 1.8125rem;
  }
  .fs_lg_30 {
    font-size: 1.875rem;
  }
  .fs_lg_31 {
    font-size: 1.9375rem;
  }
  .fs_lg_32 {
    font-size: 2rem;
  }
  .fs_lg_33 {
    font-size: 2.0625rem;
  }
  .fs_lg_34 {
    font-size: 2.125rem;
  }
  .fs_lg_35 {
    font-size: 2.1875rem;
  }
  .fs_lg_36 {
    font-size: 2.25rem;
  }
  .fs_lg_37 {
    font-size: 2.3125rem;
  }
  .fs_lg_38 {
    font-size: 2.375rem;
  }
  .fs_lg_39 {
    font-size: 2.4375rem;
  }
  .fs_lg_40 {
    font-size: 2.5rem;
  }
  .fs_lg_41 {
    font-size: 2.5625rem;
  }
  .fs_lg_42 {
    font-size: 2.625rem;
  }
  .fs_lg_43 {
    font-size: 2.6875rem;
  }
  .fs_lg_44 {
    font-size: 2.75rem;
  }
  .fs_lg_45 {
    font-size: 2.8125rem;
  }
  .fs_lg_46 {
    font-size: 2.875rem;
  }
  .fs_lg_47 {
    font-size: 2.9375rem;
  }
  .fs_lg_48 {
    font-size: 3rem;
  }
  .fs_lg_49 {
    font-size: 3.0625rem;
  }
  .fs_lg_50 {
    font-size: 3.125rem;
  }
  .fs_lg_51 {
    font-size: 3.1875rem;
  }
  .fs_lg_52 {
    font-size: 3.25rem;
  }
  .fs_lg_53 {
    font-size: 3.3125rem;
  }
  .fs_lg_54 {
    font-size: 3.375rem;
  }
  .fs_lg_55 {
    font-size: 3.4375rem;
  }
  .fs_lg_56 {
    font-size: 3.5rem;
  }
  .fs_lg_57 {
    font-size: 3.5625rem;
  }
  .fs_lg_58 {
    font-size: 3.625rem;
  }
  .fs_lg_59 {
    font-size: 3.6875rem;
  }
  .fs_lg_60 {
    font-size: 3.75rem;
  }
  .fs_lg_61 {
    font-size: 3.8125rem;
  }
  .fs_lg_62 {
    font-size: 3.875rem;
  }
  .fs_lg_63 {
    font-size: 3.9375rem;
  }
  .fs_lg_64 {
    font-size: 4rem;
  }
  .fs_lg_65 {
    font-size: 4.0625rem;
  }
  .fs_lg_66 {
    font-size: 4.125rem;
  }
  .fs_lg_67 {
    font-size: 4.1875rem;
  }
  .fs_lg_68 {
    font-size: 4.25rem;
  }
  .fs_lg_69 {
    font-size: 4.3125rem;
  }
  .fs_lg_70 {
    font-size: 4.375rem;
  }
}
@media screen and (min-width: 1200px) {
  .fs_xl_10 {
    font-size: 0.625rem;
  }
  .fs_xl_11 {
    font-size: 0.6875rem;
  }
  .fs_xl_12 {
    font-size: 0.75rem;
  }
  .fs_xl_13 {
    font-size: 0.8125rem;
  }
  .fs_xl_14 {
    font-size: 0.875rem;
  }
  .fs_xl_15 {
    font-size: 0.9375rem;
  }
  .fs_xl_16 {
    font-size: 1rem;
  }
  .fs_xl_17 {
    font-size: 1.0625rem;
  }
  .fs_xl_18 {
    font-size: 1.125rem;
  }
  .fs_xl_19 {
    font-size: 1.1875rem;
  }
  .fs_xl_20 {
    font-size: 1.25rem;
  }
  .fs_xl_21 {
    font-size: 1.3125rem;
  }
  .fs_xl_22 {
    font-size: 1.375rem;
  }
  .fs_xl_23 {
    font-size: 1.4375rem;
  }
  .fs_xl_24 {
    font-size: 1.5rem;
  }
  .fs_xl_25 {
    font-size: 1.5625rem;
  }
  .fs_xl_26 {
    font-size: 1.625rem;
  }
  .fs_xl_27 {
    font-size: 1.6875rem;
  }
  .fs_xl_28 {
    font-size: 1.75rem;
  }
  .fs_xl_29 {
    font-size: 1.8125rem;
  }
  .fs_xl_30 {
    font-size: 1.875rem;
  }
  .fs_xl_31 {
    font-size: 1.9375rem;
  }
  .fs_xl_32 {
    font-size: 2rem;
  }
  .fs_xl_33 {
    font-size: 2.0625rem;
  }
  .fs_xl_34 {
    font-size: 2.125rem;
  }
  .fs_xl_35 {
    font-size: 2.1875rem;
  }
  .fs_xl_36 {
    font-size: 2.25rem;
  }
  .fs_xl_37 {
    font-size: 2.3125rem;
  }
  .fs_xl_38 {
    font-size: 2.375rem;
  }
  .fs_xl_39 {
    font-size: 2.4375rem;
  }
  .fs_xl_40 {
    font-size: 2.5rem;
  }
  .fs_xl_41 {
    font-size: 2.5625rem;
  }
  .fs_xl_42 {
    font-size: 2.625rem;
  }
  .fs_xl_43 {
    font-size: 2.6875rem;
  }
  .fs_xl_44 {
    font-size: 2.75rem;
  }
  .fs_xl_45 {
    font-size: 2.8125rem;
  }
  .fs_xl_46 {
    font-size: 2.875rem;
  }
  .fs_xl_47 {
    font-size: 2.9375rem;
  }
  .fs_xl_48 {
    font-size: 3rem;
  }
  .fs_xl_49 {
    font-size: 3.0625rem;
  }
  .fs_xl_50 {
    font-size: 3.125rem;
  }
  .fs_xl_51 {
    font-size: 3.1875rem;
  }
  .fs_xl_52 {
    font-size: 3.25rem;
  }
  .fs_xl_53 {
    font-size: 3.3125rem;
  }
  .fs_xl_54 {
    font-size: 3.375rem;
  }
  .fs_xl_55 {
    font-size: 3.4375rem;
  }
  .fs_xl_56 {
    font-size: 3.5rem;
  }
  .fs_xl_57 {
    font-size: 3.5625rem;
  }
  .fs_xl_58 {
    font-size: 3.625rem;
  }
  .fs_xl_59 {
    font-size: 3.6875rem;
  }
  .fs_xl_60 {
    font-size: 3.75rem;
  }
  .fs_xl_61 {
    font-size: 3.8125rem;
  }
  .fs_xl_62 {
    font-size: 3.875rem;
  }
  .fs_xl_63 {
    font-size: 3.9375rem;
  }
  .fs_xl_64 {
    font-size: 4rem;
  }
  .fs_xl_65 {
    font-size: 4.0625rem;
  }
  .fs_xl_66 {
    font-size: 4.125rem;
  }
  .fs_xl_67 {
    font-size: 4.1875rem;
  }
  .fs_xl_68 {
    font-size: 4.25rem;
  }
  .fs_xl_69 {
    font-size: 4.3125rem;
  }
  .fs_xl_70 {
    font-size: 4.375rem;
  }
}
.fw_100 {
  font-weight: 100 !important;
}

.fw_200 {
  font-weight: 200 !important;
}

.fw_300 {
  font-weight: 300 !important;
}

.fw_400 {
  font-weight: 400 !important;
}

.fw_500 {
  font-weight: 500 !important;
}

.fw_600 {
  font-weight: 600 !important;
}

.fw_700 {
  font-weight: 700 !important;
}

.fw_800 {
  font-weight: 800 !important;
}

.fw_900 {
  font-weight: 900 !important;
}

h1, h2, h3, h4, h5, h6 {
  letter-spacing: 0.1rem;
}

p, span, li, tr, td, em {
  letter-spacing: 0.05rem;
}

.ls_n050rem {
  letter-spacing: -0.5rem;
}

.ls_n030rem {
  letter-spacing: -0.3rem;
}

.ls_n020rem {
  letter-spacing: -0.2rem;
}

.ls_n010rem {
  letter-spacing: -0.1rem;
}

.ls_n001rem {
  letter-spacing: -0.01rem;
}

.ls_000rem {
  letter-spacing: 0rem;
}

.ls_010rem {
  letter-spacing: 0.1rem;
}

.ls_015rem {
  letter-spacing: 0.15rem;
}

.ls_020rem {
  letter-spacing: 0.2rem;
}

.ls_025rem {
  letter-spacing: 0.25rem;
}

.ls_030rem {
  letter-spacing: 0.3rem;
}

.ls_035rem {
  letter-spacing: 0.35rem;
}

.ls_040rem {
  letter-spacing: 0.4rem;
}

.ls_045rem {
  letter-spacing: 0.45rem;
}

.ls_050rem {
  letter-spacing: 0.5rem;
}

p, span, li, tr, td {
  line-height: 1.9 !important;
}

.lh_000 {
  line-height: 0 !important;
}

.lh_010 {
  line-height: 0.1 !important;
}

.lh_025 {
  line-height: 0.25 !important;
}

.lh_025 {
  line-height: 0.25 !important;
}

.lh_050 {
  line-height: 0.5 !important;
}

.lh_100 {
  line-height: 1 !important;
}

.lh_110 {
  line-height: 1.1 !important;
}

.lh_120 {
  line-height: 1.2 !important;
}

.lh_130 {
  line-height: 1.3 !important;
}

.lh_140 {
  line-height: 1.4 !important;
}

.lh_150 {
  line-height: 1.5 !important;
}

.lh_160 {
  line-height: 1.6 !important;
}

.lh_170 {
  line-height: 1.7 !important;
}

.lh_180 {
  line-height: 1.8 !important;
}

.lh_190 {
  line-height: 1.9 !important;
}

.lh_200 {
  line-height: 2 !important;
}

.lh_250 {
  line-height: 2.5 !important;
}

.lh_300 {
  line-height: 3 !important;
}

.lh_350 {
  line-height: 3.5 !important;
}

.lh_md_120_nomal {
  line-height: 1.2 !important;
}
@media screen and (min-width: 768px) {
  .lh_md_120_nomal {
    line-height: 1.9 !important;
  }
}

@media screen and (min-width: 992px) {
  .lh_lg_250 {
    line-height: 2.5 !important;
  }
}

.w_1h {
  width: 1.5rem;
}

.w_2h {
  width: 2.5rem;
}

.w_3h {
  width: 3.5rem;
}

.w_4h {
  width: 4.5rem;
}

.w_5h {
  width: 5.5rem;
}

.w_6h {
  width: 6.5rem;
}

.w_7h {
  width: 7.5rem;
}

.w_8h {
  width: 8.5rem;
}

.w_9h {
  width: 9.5rem;
}

.w_10h {
  width: 10.5rem;
}

.w_11h {
  width: 11.5rem;
}

@media screen and (min-width: 768px) {
  .w_md_1h {
    width: 1.5rem;
  }
  .w_md_2h {
    width: 2.5rem;
  }
  .w_md_3h {
    width: 3.5rem;
  }
  .w_md_4h {
    width: 4.5rem;
  }
  .w_md_5h {
    width: 5.5rem;
  }
  .w_md_6h {
    width: 6.5rem;
  }
  .w_md_7h {
    width: 7.5rem;
  }
  .w_md_8h {
    width: 8.5rem;
  }
  .w_md_9h {
    width: 9.5rem;
  }
  .w_md_10h {
    width: 10.5rem;
  }
  .w_md_11h {
    width: 11.5rem;
  }
}
@media screen and (min-width: 992px) {
  .w_lg_1h {
    width: 1.5rem;
  }
  .w_lg_2h {
    width: 2.5rem;
  }
  .w_lg_3h {
    width: 3.5rem;
  }
  .w_lg_4h {
    width: 4.5rem;
  }
  .w_lg_5h {
    width: 5.5rem;
  }
  .w_lg_6h {
    width: 6.5rem;
  }
  .w_lg_7h {
    width: 7.5rem;
  }
  .w_lg_8h {
    width: 8.5rem;
  }
  .w_lg_9h {
    width: 9.5rem;
  }
  .w_lg_10h {
    width: 10.5rem;
  }
  .w_lg_11h {
    width: 11.5rem;
  }
}
@media screen and (min-width: 1200px) {
  .w_xl_1h {
    width: 1.5rem;
  }
  .w_xl_2h {
    width: 2.5rem;
  }
  .w_xl_3h {
    width: 3.5rem;
  }
  .w_xl_4h {
    width: 4.5rem;
  }
  .w_xl_5h {
    width: 5.5rem;
  }
  .w_xl_6h {
    width: 6.5rem;
  }
  .w_xl_7h {
    width: 7.5rem;
  }
  .w_xl_8h {
    width: 8.5rem;
  }
  .w_xl_9h {
    width: 9.5rem;
  }
  .w_xl_10h {
    width: 10.5rem;
  }
  .w_xl_11h {
    width: 11.5rem;
  }
}
.h_1h {
  height: 1.5rem;
}

.h_2h {
  height: 2.5rem;
}

.h_3h {
  height: 3.5rem;
}

.h_4h {
  height: 4.5rem;
}

.h_5h {
  height: 5.5rem;
}

.h_6h {
  height: 6.5rem;
}

.h_7h {
  height: 7.5rem;
}

.h_8h {
  height: 8.5rem;
}

.h_9h {
  height: 9.5rem;
}

.h_10h {
  height: 10.5rem;
}

.h_11h {
  height: 11.5rem;
}

@media screen and (min-width: 768px) {
  .h_md_1h {
    height: 1.5rem;
  }
  .h_md_2h {
    height: 2.5rem;
  }
  .h_md_3h {
    height: 3.5rem;
  }
  .h_md_4h {
    height: 4.5rem;
  }
  .h_md_5h {
    height: 5.5rem;
  }
  .h_md_6h {
    height: 6.5rem;
  }
  .h_md_7h {
    height: 7.5rem;
  }
  .h_md_8h {
    height: 8.5rem;
  }
  .h_md_9h {
    height: 9.5rem;
  }
  .h_md_10h {
    height: 10.5rem;
  }
  .h_md_11h {
    height: 11.5rem;
  }
}
@media screen and (min-width: 992px) {
  .h_lg_1h {
    height: 1.5rem;
  }
  .h_lg_2h {
    height: 2.5rem;
  }
  .h_lg_3h {
    height: 3.5rem;
  }
  .h_lg_4h {
    height: 4.5rem;
  }
  .h_lg_5h {
    height: 5.5rem;
  }
  .h_lg_6h {
    height: 6.5rem;
  }
  .h_lg_7h {
    height: 7.5rem;
  }
  .h_lg_8h {
    height: 8.5rem;
  }
  .h_lg_9h {
    height: 9.5rem;
  }
  .h_lg_10h {
    height: 10.5rem;
  }
  .h_lg_11h {
    height: 11.5rem;
  }
}
@media screen and (min-width: 1200px) {
  .h_xl_1h {
    height: 1.5rem;
  }
  .h_xl_2h {
    height: 2.5rem;
  }
  .h_xl_3h {
    height: 3.5rem;
  }
  .h_xl_4h {
    height: 4.5rem;
  }
  .h_xl_5h {
    height: 5.5rem;
  }
  .h_xl_6h {
    height: 6.5rem;
  }
  .h_xl_7h {
    height: 7.5rem;
  }
  .h_xl_8h {
    height: 8.5rem;
  }
  .h_xl_9h {
    height: 9.5rem;
  }
  .h_xl_10h {
    height: 10.5rem;
  }
  .h_xl_11h {
    height: 11.5rem;
  }
}
@media screen and (min-width: 1200px) {
  .container {
    max-width: 960px !important;
  }
}

.container575 {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-right: auto;
  margin-left: auto;
  max-width: 575px;
}

.container800 {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-right: auto;
  margin-left: auto;
  max-width: 800px;
}

.mrCalc50 {
  margin-right: calc(50% - 50vw);
}
@media screen and (min-width: 768px) {
  .mrCalc50 {
    margin: 0;
  }
}

.mrCalc_sm_50 {
  margin-right: calc(50% - 50vw);
}
@media screen and (min-width: 576px) {
  .mrCalc_sm_50 {
    margin: 0;
  }
}

.mlCalc50 {
  margin-left: calc(50% - 50vw);
}
@media screen and (min-width: 768px) {
  .mlCalc50 {
    margin: 0;
  }
}

.mlCalc_sm_50 {
  margin-left: calc(50% - 50vw);
}
@media screen and (min-width: 576px) {
  .mlCalc_sm_50 {
    margin: 0;
  }
}

.text_underLine {
  text-decoration: underline;
}

.text_underLine_white {
  text-decoration: underline;
  text-decoration-color: #ffffff;
}

.vertical {
  writing-mode: vertical-rl;
}

a:hover, a span:hover {
  color: #3fadd2;
}

a:hover.bnr_box {
  transform: scale(102%);
}

/*文字リンク白*/
a.link_White, a span.link_White {
  color: #ffffff !important;
}

a:hover.link_White, a:hover span.link_White {
  text-decoration: none;
  opacity: 0.8;
  transition: all 0.2s ease 0s;
}

/*透明度を下げる*/
a:hover.opacity {
  opacity: 0.8;
  transition: all 0.2s ease 0s;
  color: #314363;
}

.brd_cGold_1px_solid {
  border: 1px solid #d7c291;
}

.brd_cGold_1px_solid_t {
  border-top: 1px solid #d7c291;
}

.brd_cGold_1px_solid_b {
  border-bottom: 1px solid #d7c291;
}

.brd_cGold_1px_solid_tb {
  border-top: 1px solid #d7c291;
  border-bottom: 1px solid #d7c291;
}

.brd_cGold_1px_dotted_b {
  border-bottom: 1px dotted #d7c291;
}

.brd_cLightGold_1px_solid {
  border: 1px solid #f3eddf;
}

.brd_cLightGold_1px_solid_t {
  border-top: 1px solid #f3eddf;
}

.brd_cLightGold_1px_solid_b {
  border-bottom: 1px solid #f3eddf;
}

.brd_cLightGold_1px_solid_r {
  border-right: 1px solid #f3eddf;
}

.brd_cWhite_1px_solid_b {
  border-bottom: 1px solid #ffffff;
}

.brd_cWhite_1px_solid {
  border: 1px solid #ffffff;
}

.brd_cMainBlue_1px_solid {
  border: 1px solid #3fadd2;
}

.brd_cGray_1px_solid_b {
  border-bottom: 1px solid #dfe6ef;
}

.rounded5px {
  border-radius: 0.3125rem;
}

.rounded10px {
  border-radius: 0.625rem;
}

.rounded15px {
  border-radius: 0.9375rem;
}

.rounded18px {
  border-radius: 1.125rem;
}

.rounded_top10px {
  border-top-left-radius: 0.625rem;
  border-top-right-radius: 0.625rem;
}

.rounded_top15px {
  border-top-left-radius: 0.9375rem;
  border-top-right-radius: 0.9375rem;
}

.rounded_top18px {
  border-top-left-radius: 1.125rem;
  border-top-right-radius: 1.125rem;
}

.rounded_bt10px {
  border-bottom-left-radius: 0.625rem;
  border-bottom-right-radius: 0.625rem;
}

.rounded_bt15px {
  border-bottom-left-radius: 0.9375rem;
  border-bottom-right-radius: 0.9375rem;
}

.rounded_md {
  border-radius: 1rem;
}

.rounded_lg {
  border-radius: 2rem;
}

.bt_w100 {
  width: 100%;
  max-width: 400px;
  z-index: 1;
}

.btn_blue_trans {
  position: relative;
  background-color: transparent;
  color: #314363;
  text-align: center;
  letter-spacing: 0.2rem;
  width: 320px;
}
.btn_blue_trans a {
  display: block;
  color: #314363;
  transition: all 0.3s;
  border: 1px solid #6180ad;
  border-radius: 0.4rem;
  font-weight: 500;
  margin-bottom: 0;
  padding: 1em 0.5em;
  font-family: "IBM Plex Sans JP", sans-serif;
}
.btn_blue_trans a:hover {
  background-color: #314363;
  color: #ffffff !important;
  text-decoration: none;
  border-radius: 0.4rem;
}

#trouble .btn_blue_trans a {
  padding: 0.7em 0.5em;
}

.btn_blue_trans_2 {
  position: relative;
  background-color: transparent;
  color: #314363;
  text-align: center;
  letter-spacing: 0.2rem;
  width: 320px;
}
.btn_blue_trans_2 a {
  display: block;
  color: #314363;
  transition: all 0.3s;
  border: 1px solid #6180ad;
  border-radius: 0.4rem;
  font-weight: 500;
  margin-bottom: 0;
  padding: 1em 0.5em;
  font-family: "IBM Plex Sans JP", sans-serif;
}

.btn_white {
  position: relative;
  background-color: #ffffff;
  color: #314363;
  text-align: center;
  border-radius: 0.4rem;
  letter-spacing: 0.2rem;
  width: 320px;
}
.btn_white a {
  display: block;
  color: #314363;
  transition: all 0.3s;
  border-radius: 0.4rem;
  font-weight: 500;
  margin-bottom: 0;
  padding: 1em 0.5em;
}
.btn_white a span {
  font-family: "IBM Plex Sans JP", sans-serif;
  letter-spacing: 0.2rem;
}

.btn_gold {
  position: relative;
  background-color: #d7c291;
  text-align: center;
  border-radius: 0.4rem;
  letter-spacing: 0.2rem;
  width: 320px;
}
.btn_gold a {
  display: block;
  transition: all 0.3s;
  border-radius: 0.4rem;
  font-weight: 500;
  margin-bottom: 0;
  padding: 1em 0.5em;
}
.btn_gold a span {
  font-family: "IBM Plex Sans JP", sans-serif;
  letter-spacing: 0.2rem;
  color: #ffffff;
}
.btn_gold a span:hover {
  color: #ffffff !important;
  text-decoration: none;
  border-radius: 0.4rem;
  opacity: 0.6;
}

.btn_blue_half {
  position: relative;
  background-color: transparent;
  text-align: center;
  letter-spacing: 0.2rem;
  width: 200px;
}
.btn_blue_half a {
  display: block;
  color: #3fadd2;
  transition: all 0.3s;
  border: 1px solid #3fadd2;
  border-radius: 0.4rem;
  font-weight: 500;
  margin-bottom: 0;
  padding: 1em 0.5em;
}
.btn_blue_half a::before, .btn_blue_half a::after {
  content: "";
  position: absolute;
  right: 1em;
}
.btn_blue_half a::before {
  width: 1.8em;
  height: 1px;
  border-top: 1px solid #3fadd2;
  top: 50%;
}
.btn_blue_half a::after {
  width: 0.5em;
  height: calc(1em - 8px);
  border-top: 1px solid #3fadd2;
  transform: rotate(45deg);
  right: calc(1.5em - 8px);
  top: calc(50% - 3px);
}
.btn_blue_half a:hover {
  background-color: #3fadd2;
  color: #ffffff !important;
  text-decoration: none;
  border-radius: 0.4rem;
  padding: 1em 0.5em;
}
.btn_blue_half a:hover::before, .btn_blue_half a:hover::after {
  content: "";
  position: absolute;
  right: 1em;
}
.btn_blue_half a:hover::before {
  width: 1.8em;
  height: 1px;
  border-top: 1px solid #ffffff;
  top: 50%;
}
.btn_blue_half a:hover::after {
  width: 0.5em;
  height: calc(1em - 8px);
  border-top: 1px solid #ffffff;
  transform: rotate(45deg);
  right: calc(1.5em - 8px);
  top: calc(50% - 3px);
}

.btn_blue_download {
  position: relative;
  background-color: transparent;
  color: #6180ad;
  margin: 0 auto;
  text-align: center;
  border-radius: 0.4rem;
  max-width: 320px;
}
.btn_blue_download a {
  display: block;
  color: #314363;
  border: 1px solid #6180ad;
  border-radius: 0.4rem;
  transition: all 0.3s;
  border-radius: 0.4rem;
  font-weight: 500;
  margin-bottom: 0;
  padding: 1em 0.5em;
}
.btn_blue_download a span {
  letter-spacing: 0.2rem;
}
.btn_blue_download a::after {
  content: "";
  position: absolute;
  right: 1.2rem;
  margin: auto;
  width: 1.5rem;
  height: 1.5rem;
  background: url(../../_img/_common/icon_download.svg) no-repeat;
  background-size: 100%;
  margin-top: 2px;
}
.btn_blue_download a:hover {
  background-color: #314363;
  text-decoration: none;
  border-radius: 0.4rem;
}
.btn_blue_download a:hover span {
  color: #ffffff !important;
}

.icon_calender, .icon_calender_white, .icon_line, .icon_instagram, .icon_mail {
  position: relative;
  display: block;
}

.icon_calender::before, .icon_calender_white::before, .icon_line::before, .icon_instagram::before, .icon_mail::before {
  content: "";
  position: absolute;
  left: 15px;
  top: 0;
  width: 1.5rem;
  height: 1.6rem;
  margin-top: 2px;
}

.icon_calender::before {
  background: url(../../_img/_common/icon_calender_blue.svg) no-repeat;
  background-size: 100%;
  margin: -2px;
}

.icon_calender_white::before {
  background: url(../../_img/_common/icon_calender_white.svg) no-repeat;
  background-size: 100%;
  margin: 0px;
}

.icon_line::before {
  background: url(../../_img/_common/icon_line_blue.svg) no-repeat;
  background-size: 100%;
}

.icon_instagram::before {
  background: url(../../_img/_common/icon_instagram_blue.svg) no-repeat;
  background-size: 100%;
}

.icon_mail::before {
  background: url(../../_img/_common/icon_mail.svg) no-repeat;
  background-size: 100%;
}

.icon_tel_gold {
  position: relative;
  padding-left: 2.5rem !important;
  background-image: url(../../_img/_common/icon_tel_gold.svg);
  background-position: 2px 60%;
  background-repeat: no-repeat;
  background-size: auto 80%;
}

.icon_dial_gold {
  position: relative;
  padding-left: 2.5rem !important;
  background-image: url(../../_img/_common/icon_dial_gold.svg);
  background-position: 0px 55%;
  background-repeat: no-repeat;
  background-size: auto 50%;
}

.arrow {
  position: relative;
}
.arrow::before, .arrow::after {
  top: 0;
  bottom: 0;
  margin: auto;
}

.arrow_right_navy::before, .arrow_right_navy::after {
  content: "";
  position: absolute;
  right: 1em;
}
.arrow_right_navy::before {
  width: 1.8em;
  height: 1px;
  border-top: 1px solid #314363;
}
.arrow_right_navy::after {
  width: 0.5em;
  height: calc(1em - 8px);
  border-top: 1px solid #314363;
  transform: rotate(45deg);
  right: calc(1.5rem - 8px);
}
.arrow_right_navy:hover::before, .arrow_right_navy:hover::after {
  border-top: 1px solid #ffffff;
}

.arrow_right_blue::before, .arrow_right_blue::after {
  content: "";
  position: absolute;
  right: 1em;
}
.arrow_right_blue::before {
  width: 1.8em;
  height: 1px;
  border-top: 1px solid #3fadd2;
}
.arrow_right_blue::after {
  width: 0.5em;
  height: calc(1em - 8px);
  border-top: 1px solid #3fadd2;
  transform: rotate(45deg);
  right: calc(1.5rem - 8px);
}

.arrow_right_white::before, .arrow_right_white::after {
  content: "";
  position: absolute;
  right: 1em;
}
.arrow_right_white::before {
  width: 1.8em;
  height: 1px;
  border-top: 1px solid #ffffff;
}
.arrow_right_white::after {
  width: 0.5em;
  height: calc(1em - 8px);
  border-top: 1px solid #ffffff;
  transform: rotate(45deg);
  right: calc(1.5rem - 8px);
}
.arrow_right_up::before {
  content: "";
  position: absolute;
  right: 1.2rem;
  margin: auto;
  width: 1rem;
  height: 1rem;
  background: url(../../_img/_common/icon_arrow_up.svg) no-repeat;
  background-size: 100%;
}

.list_goldmark li {
  position: relative;
  padding-left: 1rem;
}
.list_goldmark li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  width: 10px;
  height: 10px;
  border-radius: 0 10px 10px 0;
  background: #d7c291;
}

.title_main {
  text-align: center;
}
.title_main span.parts_eng {
  position: relative;
  font-size: 20px;
  text-align: center;
  display: block;
  margin-bottom: 10px;
  color: #d7c291;
  font-family: "Jost", sans-serif;
}
.title_main span.parts_eng::before {
  content: "";
  position: absolute;
  width: 1.8em;
  border-top: 1px solid #d7c291;
  margin: 0 auto;
  bottom: 1px;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
.title_main h2 {
  font-size: 24px;
  letter-spacing: 0.1rem;
  font-family: "Noto Serif JP", serif;
}

.title_sub {
  text-align: center;
}
.title_sub span.parts_eng {
  position: relative;
  font-size: 20px;
  text-align: center;
  display: block;
  margin-bottom: 10px;
  color: #3fadd2;
  font-family: "Jost", sans-serif;
}
.title_sub span.parts_eng::before {
  content: "";
  position: absolute;
  width: 1.8em;
  border-top: 1px solid #3fadd2;
  margin: 0 auto;
  bottom: 1px;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
.title_sub h2 {
  font-size: 24px;
  letter-spacing: 0.1rem;
  font-family: "Noto Serif JP", serif;
}

.title_logo {
  text-align: center;
}
.title_logo span.parts_eng {
  position: relative;
  font-size: 20px;
  text-align: center;
  display: block;
  margin-bottom: 10px;
  color: #d7c291;
  font-family: "Jost", sans-serif;
}
.title_logo span.parts_eng::before {
  content: "";
  position: absolute;
  top: -20px;
  right: 0;
  left: 0;
  margin: 0 auto;
  background-image: url(../../_img/_common/parts_logo_top_blue.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 40px;
  height: 40px;
}
.title_logo span.parts_eng::after {
  content: "";
  position: absolute;
  width: 1.8em;
  border-top: 1px solid #d7c291;
  margin: 0 auto;
  bottom: 1px;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
.title_logo h2 {
  font-size: 24px;
  letter-spacing: 0.1rem;
  font-family: "Noto Serif JP", serif;
}

.title_vertical {
  font-size: 20px;
  position: relative;
  padding-left: 1rem;
}
.title_vertical::before {
  content: "";
  position: absolute;
  top: -2px;
  left: 0;
  border-left: 4px solid #3fadd2;
  height: 25px;
}

#price .title_vertical {
  font-size: 24px;
  position: relative;
  padding-left: 1rem;
}
#price .title_vertical::before {
  content: "";
  position: absolute;
  top: 0px;
  left: 0;
  border-left: 4px solid #3fadd2;
  height: 25px;
}

footer .bg_cMainBlue {
  position: relative;
  padding-bottom: 105px;
}
@media screen and (min-width: 1200px) {
  footer .bg_cMainBlue {
    padding-bottom: 85px;
  }
}

footer .copy {
  margin: 20px 0 0 0;
  font-size: 12px;
}

footer .footer_link li {
  font-size: 13px;
  font-weight: 500;
}

.footer_link li:not(:first-child) {
  border-left: 1px solid #dfe6ef;
}

.img_sns img {
  width: 30px;
  height: 30px;
}

#btn_pageTop {
  position: fixed;
  bottom: 80px;
  right: 10px;
  cursor: pointer;
  z-index: 2;
}

#btn_pageTop img {
  width: 40px;
  height: auto;
  opacity: 0.9;
  filter: alpha(opacity=90);
  -ms-filter: "alpha(opacity=90)";
}

.logo_mark_white {
  width: 70px;
  height: auto;
}
@media screen and (min-width: 992px) {
  .logo_mark_white {
    width: 100px;
  }
}

.logo_jap_white {
  width: 200px;
  height: auto;
}

.fixed-bottom {
  bottom: -1px;
  z-index: 200;
}

#foot-nav {
  margin-bottom: 0;
}

#foot-nav img {
  width: 25px;
  height: 25px;
}

#foot-nav .tel {
  position: relative;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #3fadd2;
}

#foot-nav .line, #foot-nav .web {
  position: relative;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #FFF;
  border-right: 1px solid #3fadd2;
}

#foot-nav li:last-child {
  border-right: none;
}

#bottom-fixed {
  visibility: hidden;
  opacity: 0;
  transition: all 0.65s;
  position: relative;
  z-index: 2;
}

#bottom-fixed.isActive {
  visibility: visible;
  opacity: 1;
  transition: all 0.65s;
}

#logo_head_sp {
  position: fixed;
  top: 0px;
  width: 100%;
  background: #FFF;
  z-index: 10;
  transition: 0.5s;
}

#logo_head_sp .logo_mark {
  width: 80px;
  height: auto;
}

#logo_head_sp .logo_jap {
  width: 160px;
  height: auto;
}

/* ハンバーガーメニュー:ボタン */
#navMenu {
  position: sticky;
  z-index: 3;
  top: 35px;
  right: 0px;
  cursor: pointer;
}

.openbtn1 {
  z-index: 10;
  top: 9px;
  right: 4px;
  cursor: pointer;
  position: fixed;
  border: 0;
  background: transparent;
  width: 60px;
  height: 60px;
}
@media screen and (min-width: 576px) {
  .openbtn1 {
    top: 2px;
  }
}

button.openbtn1:focus {
  outline: none;
}

.openbtn1 span {
  display: inline-block;
  transition: all 0.4s;
  position: absolute;
  right: 22px;
  height: 2px;
  background-color: #d7c291;
}

.openbtn1 span:nth-of-type(1) {
  top: 10px;
  width: 30px;
  right: 11px;
  z-index: 999;
}

.openbtn1 span:nth-of-type(2) {
  top: 17px;
  width: 30px;
  right: 11px;
}

.openbtn1.active {
  position: fixed;
  width: 55px;
  height: 55px;
  top: 2px;
  border-bottom: none;
  z-index: 10;
}

.openbtn1.active span:nth-of-type(1) {
  top: 14px;
  left: 10px;
  transform: translateY(6px) rotate(-25deg);
  width: 30px;
  background-color: #d7c291;
}

.openbtn1.active span:nth-of-type(2) {
  top: 26px;
  left: 10px;
  transform: translateY(-6px) rotate(25deg);
  width: 30px;
  background-color: #d7c291;
  background-color: #d7c291;
}

#g-nav {
  position: fixed;
  z-index: 5;
  top: 0;
  left: 100vw;
  width: 100%;
  height: 100vh;
  transition: all 0.5s;
  background: #FFFFFF;
}

#g-nav.panelactive,
#g-nav.panelactive2 {
  left: 0;
}

#g-nav.panelactive #g-nav-list,
#g-nav.panelactive2 #g-nav-list {
  position: fixed;
  width: 100%;
  height: 100vh;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

#g-nav p.logo {
  width: 100%;
  max-width: 460px;
  height: 60px;
  padding: 15px 80px 0 25px;
}

#g-nav .menulist {
  font-weight: 500;
}

#g-nav .menulist li {
  padding: 15px 0 15px 0px;
  border-bottom: 1px solid #dfe6ef;
  position: relative;
}

#g-nav .menulist li::before, #g-nav .menulist li::after {
  content: "";
  position: absolute;
  right: 1em;
}
#g-nav .menulist li::before {
  width: 1.8em;
  height: 1px;
  border-top: 1px solid #314363;
  bottom: 0;
  top: 50%;
}
#g-nav .menulist li::after {
  width: 0.4em;
  height: calc(1em - 8px);
  border-top: 1px solid #314363;
  transform: rotate(45deg);
  right: calc(1.5rem - 8px);
  top: calc(50% - 3px);
}
#g-nav .menulist li:hover::before, #g-nav .menulist li:hover::after {
  border-top: 1px solid #ffffff;
}

#g-nav .menulist li.accordion {
  padding: 0;
}

#g-nav .menulist li.accordion:nth-child(2)::before, #g-nav .menulist li.accordion:nth-child(2)::after, #g-nav .menulist li.accordion:nth-child(3)::before, #g-nav .menulist li.accordion:nth-child(3)::after {
  display: none;
}

#g-nav .menulist li:first-child {
  border-top: 1px solid #dfe6ef;
}

#g-nav-list.sp .top_menu li div img {
  max-height: 2rem;
  max-width: 2rem;
}

/* アコーディオンメニュー:ボタン */
#g-nav ul.content2 li.accordion:after {
  border-top: 0;
  border-right: 0;
}

#navMenu .toggle {
  display: none;
}

#navMenu .option {
  position: relative;
}

#navMenu label:hover.title {
  cursor: pointer;
  color: #3fadd2;
}

#navMenu .title {
  display: block;
  backface-visibility: hidden;
  transform: translateZ(0);
  transition: all 0.1s;
  padding: 15px 0 15px;
}

#navMenu .title::after,
#navMenu .title::before {
  content: "";
  position: absolute;
  right: 27px;
  top: calc(50% - 6px);
  width: 1px;
  height: 0.8em;
  background-color: #314363;
  transition: all 0.3s;
}

#navMenu .title::after {
  transform: rotate(90deg);
}

#navMenu .content2 {
  max-height: 0;
  overflow: hidden;
}

#navMenu .content2 li {
  position: relative;
  padding: 10px 0 10px;
  font-size: 14px;
}

#navMenu .content2 li:last-child {
  border-bottom: 0;
}

#navMenu .content2 li::before, #navMenu .content2 li::after {
  content: "";
  position: absolute;
}
#navMenu .content2 li::before {
  width: 1em;
  height: 1px;
  border-top: 1px solid #314363;
  top: 50%;
  left: 0.5rem;
}
#navMenu .content2 li::after {
  width: 0.4em;
  height: calc(1em - 8px);
  border-top: 1px solid #314363;
  transform: rotate(45deg);
  left: 1rem;
  top: calc(50% - 3px);
}

#navMenu .content2 li a {
  padding-left: 40px;
}

#navMenu .toggle:checked + .title + .content2 {
  max-height: 3000px;
  transition: all 0.5s;
}

#navMenu .toggle:checked + .title::before {
  transform: rotate(90deg) !important;
}

.header_pc_height {
  height: 120px;
}

.header {
  background-color: #ffffff;
  z-index: 100;
  position: fixed;
  top: 0;
  width: 100%;
  height: 120px;
}

.header_inner {
  max-width: 1200px;
  margin: 0 auto;
}

.header_btn {
  width: 120px;
  height: auto;
  padding: 7px 10px;
}

.logo {
  width: auto;
  height: 115px;
  padding: 10px 0;
}

#logo_head_pc .logo_jap {
  width: 210px;
  height: auto;
  margin-top: 15px;
}

.icon_tel_blue {
  position: relative;
  padding-left: 2.5rem !important;
  background-image: url(../../_img/_common/icon_tel_blue.svg);
  background-position: 12px 62%;
  background-repeat: no-repeat;
  background-size: auto 75%;
}

.icon_dial_blue {
  position: relative;
  padding-left: 2.5rem !important;
  background-image: url(../../_img/_common/icon_dial_blue.svg);
  background-position: 5px 53%;
  background-repeat: no-repeat;
  background-size: auto 50%;
}

.box_shadow {
  box-shadow: 0px 4px 4px rgba(97, 128, 173, 0.3);
}

#globalMenu {
  top: 100px;
  left: 0;
  width: 100%;
  z-index: 100;
  height: 40px;
}
#globalMenu ul {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  font-weight: 500;
}

#globalMenu > ul li a {
  width: 100%;
  padding: 0 10px 10px 10px;
  font-weight: 500;
}

#globalMenu ul.menulist li a {
  position: relative;
}
#globalMenu ul.menulist li a::after {
  position: absolute;
  content: "";
  width: calc(50% + 40px);
  left: 50%;
  height: 1px;
  background: #3fadd2;
  bottom: -2px;
  transform: translateX(-50%) scaleX(0);
  transform-origin: center bottom;
  transition: transform 0.3s;
}
#globalMenu ul.menulist li a:hover::after {
  transform: translateX(-50%) scaleX(1);
}

#globalMenu ul li.has-child .content,
#globalMenu ul li.has-child .content2 {
  position: absolute;
  z-index: 4;
  width: 100vw;
  visibility: hidden;
  opacity: 0;
  transition: all 0.3s;
  padding: 20px;
}

#globalMenu ul li.has-child .content {
  background-color: #FFFFFF;
}

#globalMenu ul li.has-child .content2 {
  background-color: #FFFFFF;
}

#globalMenu ul li.has-child .content, #globalMenu ul li.has-child .content2 {
  top: 115px;
  left: 0;
  margin-left: calc(50% - 50vw);
}

#globalMenu ul li.has-child .content .content_inner, #globalMenu ul li.has-child .content2 .content_inner {
  width: 80%;
  max-width: 1000px;
  margin: 0 auto;
}

#globalMenu ul li.has-child:hover .content,
#globalMenu ul li.has-child:hover .content,
#globalMenu ul li.has-child:active .content,
#globalMenu ul li.has-child:active .content,
#globalMenu ul li.has-child:hover .content2,
#globalMenu ul li.has-child:hover .content2,
#globalMenu ul li.has-child:active .content2,
#globalMenu ul li.has-child:active .content2 {
  visibility: visible;
  opacity: 1;
}

#globalMenu li.has-child .content .dropdown_menu li {
  position: relative;
  padding: 5px 0 5px 35px;
  margin-bottom: 8px;
}

#globalMenu ul li.has-child .content .orange ul li {
  width: 49%;
  margin-right: 8px;
}

#globalMenu ul li.has-child .content .orange ul li:nth-child(2n) {
  margin-right: 0;
}

#globalMenu ul li.has-child .content .dropdown_menu li::before, #globalMenu ul li.has-child .content .dropdown_menu li::after, #globalMenu ul li.has-child .content2 .dropdown_menu li::before, #globalMenu ul li.has-child .content2 .dropdown_menu li::after {
  content: "";
  position: absolute;
}
#globalMenu ul li.has-child .content .dropdown_menu li::before, #globalMenu ul li.has-child .content2 .dropdown_menu li::before {
  width: 1em;
  height: 1px;
  border-top: 1px solid #6180ad;
  left: 0;
  top: 50%;
}
#globalMenu ul li.has-child .content .dropdown_menu li::after, #globalMenu ul li.has-child .content2 .dropdown_menu li::after {
  width: 0.4em;
  height: calc(1em - 8px);
  border-top: 1px solid #6180ad;
  transform: rotate(45deg);
  left: 0.5rem;
  top: calc(50% - 3px);
}

#globalMenu li.has-child .content2 ul.dropdown_menu li {
  position: relative;
  padding: 5px 0 5px 35px;
  margin-bottom: 8px;
}

#globalMenu li.has-child .content ul.dropdown_menu li a::after, #globalMenu li.has-child .content2 ul.dropdown_menu li a::after {
  position: absolute;
  content: "";
  width: calc(50% + 80px);
  left: calc(50% - 22px);
  height: 1px;
  background: #3fadd2;
  bottom: -4px;
  transform-origin: center bottom;
  transition: transform 0.3s;
}

#globalMenu li.has-child .content ul.dropdown_menu li a:hover::after, #globalMenu li.has-child .content2 ul.dropdown_menu li a:hover::after {
  transform: translateX(-50%) scaleX(1);
}

#breadcrumbs {
  padding-bottom: 5px;
}

@media screen and (min-width: 1200px) {
  #breadcrumbs ol li span {
    color: #3fadd2;
  }
}

#breadcrumbs ol li:not(:last-child):after {
  content: "/";
  position: absolute;
  color: #616161;
  top: 50%;
  right: 6px;
  transform: translateY(-50%);
}
@media screen and (min-width: 1200px) {
  #breadcrumbs ol li:not(:last-child):after {
    color: #3fadd2;
  }
}

.point {
  background-image: url(../../_img/index/bg_point.png);
  background-size: 180px;
  width: 100%;
  background-repeat: no-repeat;
  background-position: center bottom;
  z-index: -1;
}

.point_circle_top {
  position: absolute;
  top: 10px;
  left: 0px;
  right: 0;
  margin: 0 auto;
}
.point_circle_top .point_inner_top::before {
  content: "";
  position: absolute;
  top: -10px;
  left: 0px;
  right: 0;
  margin: 0 auto;
  background-image: url(../../_img/index/bg_point_circle_01.png);
  background-size: 100% 100%;
  width: 130px;
  height: 130px;
  background-repeat: no-repeat;
  z-index: -1;
}

.point_circle_left {
  position: absolute;
  top: 130px;
  left: calc(50% - 130px);
  margin: 0 auto;
}
.point_circle_left .point_inner_left::before {
  content: "";
  position: absolute;
  top: -10px;
  left: -15px;
  margin: 0 auto;
  background-image: url(../../_img/index/bg_point_circle_02.png);
  background-size: 100% 100%;
  width: 130px;
  height: 130px;
  background-repeat: no-repeat;
  z-index: -1;
}

.point_circle_right {
  position: absolute;
  top: 130px;
  right: calc(50% - 140px);
  margin: 0 auto;
}
.point_circle_right .point_inner_right::before {
  content: "";
  position: absolute;
  top: -10px;
  right: -7px;
  margin: 0 auto;
  background-image: url(../../_img/index/bg_point_circle_03.png);
  background-size: 100% 100%;
  width: 130px;
  height: 130px;
  background-repeat: no-repeat;
  z-index: -1;
}

#eyecatch {
  margin-top: 0;
}

.eyecatch_inner {
  width: 100%;
  background: linear-gradient(to right, #3fadd2 0%, #86cbe3 100%);
  height: 200px;
  margin-bottom: 100px;
}

#datsumou_mens .eyecatch_inner {
  background: linear-gradient(to right, #2b4479 0%, #6683c0 100%);
}

.eyecatch_inner02 {
  width: 100%;
  height: 120px;
  background: linear-gradient(to right, #3fadd2 0%, #86cbe3 100%);
}
@media screen and (min-width: 768px) {
  .eyecatch_inner02 {
    height: 200px;
  }
}

.eyecatch_title {
  color: #ffffff;
  font-size: 28px;
  font-family: "Noto Serif JP", serif;
  position: absolute;
  top: 40px;
}
@media screen and (min-width: 768px) {
  .eyecatch_title {
    top: 80px;
  }
}

.eyecatch_image {
  position: absolute;
  top: 100px;
  right: 0;
  max-width: 360px;
}
@media screen and (min-width: 768px) {
  .eyecatch_image {
    width: 440px;
    max-width: unset;
  }
}

#spot .eyecatch_title, #ipl .eyecatch_title, #density .eyecatch_title {
  top: 20px;
}
@media screen and (min-width: 768px) {
  #spot .eyecatch_title, #ipl .eyecatch_title, #density .eyecatch_title {
    top: 60px;
  }
}

.list_recommend {
  padding: 1.2rem 1rem;
}
@media screen and (min-width: 992px) {
  .list_recommend {
    display: flex;
    flex-wrap: wrap;
  }
}
.list_recommend li {
  position: relative;
  padding: 4px 0 4px 30px;
}
@media screen and (min-width: 992px) {
  .list_recommend li {
    width: 50%;
  }
}
.list_recommend li::before {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  background-image: url(../../_img/_common/parts_check_gold.svg);
  background-size: contain;
  background-repeat: no-repeat;
  left: 0px;
  top: 8px;
  bottom: 0;
}

#datsumou_mens .list_recommend li::before {
  background-image: url(../../_img/_common/parts_check_mens.svg);
}

.line_halflogo {
  position: relative;
  border-top: 1px solid #d7c291;
  border-bottom: 1px solid #d7c291;
}
.line_halflogo::before, .line_halflogo::after {
  content: "";
  position: absolute;
}
.line_halflogo::before {
  top: -26px;
  right: 0;
  left: 0;
  margin: 0 auto;
  background-image: url(../../_img/_common/parts_logo_top.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 40px;
  height: 40px;
}
.line_halflogo::after {
  bottom: -41px;
  right: 0;
  left: 0;
  margin: 0 auto;
  background-image: url(../../_img/_common/parts_logo_bottom.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 40px;
  height: 40px;
}

.bg_grd_white_blue::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  background: linear-gradient(to bottom, #ffffff 0%, #3fadd2 100%);
  height: 200px;
  width: 100vw;
  margin-inline: calc(50% - 50vw);
  z-index: -1;
}

.img_machine {
  position: relative;
}
.img_machine::before {
  content: "";
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
}


.line_triangle {
  position: relative;
  border-top: 2px solid #d7c291;
  border-bottom: 2px solid #d7c291;
  padding: 30px 0;
}
.line_triangle::before, .line_triangle::after {
  content: "";
  position: absolute;
}
.line_triangle::before {
  top: -20px;
  right: 0;
  left: 0;
  margin: 0 auto;
  background-image: url(../../_img/_common/parts_triangle_top.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 70px;
  height: 70px;
}
.line_triangle::after {
  bottom: -70px;
  right: 0;
  left: 0;
  margin: 0 auto;
  background-image: url(../../_img/_common/parts_triangle_bottom.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 70px;
  height: 70px;
}

.bg_goldsand {
  position: relative;
  background-image: url(../../_img/_common/bg_goldsand_sp.jpg);
  background-position: top, right;
  background-size: cover;
}
@media screen and (min-width: 992px) {
  .bg_goldsand {
    background-image: url(../../_img/_common/bg_goldsand_pc.jpg);
  }
}

.feature_blue {
  position: absolute;
  top: -5px;
  left: 11px;
}
@media screen and (min-width: 992px) {
  .feature_blue {
    top: -15px;
    left: -80px;
  }
}
.feature_blue span {
  display: flex;
  z-index: 1;
  font-size: 42px;
  font-weight: 300;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
.feature_blue span::before {
  content: "";
  position: absolute;
  top: 3px;
  left: -10px;
  background-image: url(../../_img/_common/parts_feature_blue.svg);
  background-size: 100% 100%;
  width: 70px;
  height: 70px;
  background-repeat: no-repeat;
  z-index: -1;
}

.bg_aurora02 {
  position: relative;
  background-image: url(../../_img/_common/bg_aurora02_sp.jpg);
  background-position: left, right;
  background-size: cover;
}
@media screen and (min-width: 992px) {
  .bg_aurora02 {
    background-image: url(../../_img/_common/bg_aurora02_pc.jpg);
  }
}

.bg_aurora03 {
  position: relative;
  background-image: url(../../_img/_common/bg_aurora03_sp.jpg);
  background-position: left, right;
  background-size: cover;
}
@media screen and (min-width: 992px) {
  .bg_aurora03 {
    background-image: url(../../_img/_common/bg_aurora03_pc.jpg);
  }
}

.bg_aurora04 {
  position: relative;
  background-image: url(../../_img/_common/bg_aurora04_sp.jpg);
  background-position: left, right;
  background-size: cover;
}
@media screen and (min-width: 992px) {
  .bg_aurora04 {
    background-image: url(../../_img/_common/bg_aurora04_pc.jpg);
  }
}

.bg_aurora05 {
  position: relative;
  background-image: url(../../_img/_common/bg_aurora05_sp.jpg);
  background-position: left, right;
  background-size: cover;
}
@media screen and (min-width: 992px) {
  .bg_aurora05 {
    background-image: url(../../_img/_common/bg_aurora05_pc.jpg);
  }
}

.bg_aurora06 {
  position: relative;
  background-image: url(../../_img/_common/bg_aurora06_sp.jpg);
  background-position: left, right;
  background-size: cover;
}
@media screen and (min-width: 992px) {
  .bg_aurora06 {
    background-image: url(../../_img/_common/bg_aurora06_pc.jpg);
  }
}

@media screen and (min-width: 768px) {
  .plan_inner {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: 40px auto;
  }
}

@media screen and (min-width: 768px) {
  .plan_item1 {
    grid-column: 2/3;
    grid-row: 1/2;
  }
}

@media screen and (min-width: 768px) {
  .plan_item2 {
    grid-column: 1/2;
    grid-row: 1/2;
  }
}

@media screen and (min-width: 768px) {
  .plan_item3 {
    grid-column: 2/3;
    grid-row: 2/2;
  }
}

@media screen and (min-width: 768px) {
  .plan_item3.pepview {
    padding-top: 20px;
    grid-column: 2/3;
    grid-row: 2/2;
  }
}
@media screen and (min-width: 992px) {
  .plan_item3.pepview {
    padding-top: 0px;
  }
}

.list_effectandtreatment li {
  background-color: #3fadd2;
  color: #ffffff;
  padding: 0px 8px 0px 8px;
  border-radius: 0.4rem;
  margin: 0 5px 5px 0;
  height: 25px;
}

#products .list_effectandtreatment li {
  background-color: #3fadd2;
  color: #ffffff;
  padding: 0px 8px 0px 8px;
  border-radius: 0.4rem;
  margin: 0 5px 5px 0;
}

.bg_grd_white_trans {
  background: #ffffff; /* Old browsers */
  background: linear-gradient(to bottom, #ffffff 0%, rgba(255, 255, 255, 0.1) 100%);
  border-top-right-radius: 45px;
}

#price table.price_table {
  border-collapse: collapse;
  border-spacing: 0;
  border: none;
  table-layout: fixed;
  width: 100%;
}

#price table.price_table tr th.price_table_name {
  font-weight: 400;
  padding: 6px 8px;
  padding-block: 10px;
  width: 48%;
}
@media screen and (min-width: 992px) {
  #price table.price_table tr th.price_table_name {
    padding-left: 70px;
  }
}

#price table.price_table tr th.price_table_time {
  width: 12%;
  font-weight: 400;
  text-align: center;
}

#price table.price_table tr td.price_table_yen {
  padding: 6px 8px;
  text-align: end;
  font-size: 18px;
  font-family: "Manrope", sans-serif;
  letter-spacing: 0rem;
  width: 40%;
}
@media screen and (min-width: 992px) {
  #price table.price_table tr td.price_table_yen {
    padding-right: 70px;
  }
}

.price_nomal {
  border: 1px solid #6180ad;
  border-radius: 5px;
  font-size: 14px;
  padding: 1px 5px;
  margin-right: 5px;
  color: #6180ad;
}

.price_first {
  background-color: #3fadd2;
  border-radius: 5px;
  font-size: 14px;
  padding: 1px 6px;
  margin-right: 6px;
  color: #ffffff;
}

.price_cp {
  background-color: #ed992e;
  border-radius: 5px;
  color: #ffffff;
  font-size: 14px;
  padding: 1px 5px;
  margin-right: 5px;
}

.bg_grd_white_white::after {
  content: "";
  position: absolute;
  bottom: -65px;
  left: 0;
  background: linear-gradient(to bottom, #ffffff 0%, #ecf7fa 100%);
  height: 200px;
  width: 100vw;
  margin-inline: calc(50% - 50vw);
  z-index: -1;
}

.bg_lightblue {
  position: relative;
  background-image: url(../../_img/_common/bg_lightblue_sp.jpg);
  background-position: top, right;
  background-size: cover;
}
@media screen and (min-width: 992px) {
  .bg_lightblue {
    background-image: url(../../_img/_common/bg_lightblue_pc.jpg);
  }
}

.step_icon {
  position: absolute;
  top: -20px;
  left: 0;
  border: 1px solid #3fadd2;
  border-radius: 35px;
  width: 65px;
  height: 85px;
  text-align: center;
}

.step_title {
  position: absolute;
  bottom: 0;
  left: 78px;
}

.list_overview {
  margin-bottom: 50px;
}
@media screen and (min-width: 992px) {
  .list_overview {
    border-top: 1px solid #d7c291 !important;
    border-bottom: 1px solid #d7c291 !important;
    margin-bottom: 70px;
    padding: 30px 0 10px 70px;
  }
}

.list_overview li, .list_caution li, .list_unapproved li {
  position: relative;
  padding-left: 1rem;
}

.list_overview li::before, .list_caution li::before, .list_unapproved li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  width: 10px;
  height: 10px;
  border-radius: 0 10px 10px 0;
  background: #d7c291;
}

@media screen and (min-width: 992px) {
  .list_caution, .list_unapproved {
    padding-left: 80px;
  }
}

.list_caution li:last-child::before {
  display: none;
}

.list_caution_taboo p {
  position: relative;
  padding-left: 1rem;
  margin-bottom: 0;
}
.list_caution_taboo p::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}

.list_disc li {
  position: relative;
  padding-left: 1rem;
  margin-bottom: 0;
}
.list_disc li::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}

.under_triangle_gold::after {
  content: "";
  position: absolute;
  bottom: -2rem;
  right: 0;
  left: 0;
  margin: auto;
  -webkit-clip-path: polygon(50% 100%, 0 0, 100% 0);
          clip-path: polygon(50% 100%, 0 0, 100% 0);
  width: 100%;
  height: 2rem;
  background: linear-gradient(to right, #efe4c9 0%, #d7c291 100%);
}

@media screen and (min-width: 768px) {
  .list_trouble_treatment {
    display: flex;
    flex-wrap: wrap;
  }
}
.list_trouble_treatment li {
  position: relative;
}
@media screen and (min-width: 768px) {
  .list_trouble_treatment li {
    width: 33%;
    margin-bottom: 5px;
  }
}
.list_trouble_treatment li::before, .list_trouble_treatment li::after {
  content: "";
  position: absolute;
}
.list_trouble_treatment li::before {
  width: 1em;
  height: 1px;
  border-top: 1px solid #6180ad;
  top: 50%;
  left: 0.2rem;
}
.list_trouble_treatment li::after {
  width: 0.4em;
  height: calc(1em - 8px);
  border-top: 1px solid #6180ad;
  transform: rotate(45deg);
  left: 0.7rem;
  top: calc(50% - 3px);
}
.list_trouble_treatment a {
  text-decoration: underline;
  padding-left: 35px;
}
.list_trouble_treatment p {
  padding-left: 35px;
  margin-bottom: 0;
}

.arrow_treatment::before, .arrow_treatment::after {
  content: "";
  position: absolute;
  right: 1em;
}
.arrow_treatment::before {
  width: 1.8em;
  height: 1px;
  border-top: 1px solid #6180ad;
  bottom: 1.3rem;
}
.arrow_treatment::after {
  width: 0.5em;
  height: calc(1em - 8px);
  border-top: 1px solid #6180ad;
  transform: rotate(45deg);
  right: calc(1.5rem - 8px);
  bottom: 1.2rem;
}

.box_height {
  min-height: 320px;
}

.list_page_link {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
}
.list_page_link li {
  width: 50%;
  padding: 7px;
  height: 48px;
  position: relative;
  border: 1px solid #f3eddf;
}
.list_page_link li:nth-child(odd) {
  border-right: none;
}
.list_page_link li:nth-last-child(n+3) {
  border-bottom: none;
}
.list_page_link li:last-child {
  border-right: 1px solid #f3eddf;
}
.list_page_link li::after {
  content: "";
  position: absolute;
  top: calc(50% - 6px);
  left: calc(100% - 22px);
  display: inline-block;
  width: 8px;
  height: 8px;
  border-bottom: 2px solid #6180ad;
  border-right: 2px solid #6180ad;
  transform: rotate(45deg);
  border-radius: 1px;
}
.list_page_link li:hover {
  background-color: #f3eddf;
}
.list_page_link a:hover {
  color: #314363;
}

.list_trouble_recommend li {
  position: relative;
  padding: 0 0 5px 30px;
}
.list_trouble_recommend li::before {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  background-image: url(../../_img/_common/parts_check_blue.svg);
  background-size: contain;
  background-repeat: no-repeat;
  left: 0px;
  top: 6px;
  bottom: 0;
}

.trouble_img_bg {
  position: relative;
}
.trouble_img_bg::before {
  content: "";
  position: absolute;
  top: 0;
  background: linear-gradient(180deg, #3fadd2 100px, #d7c291 100px 120px);
  height: 120px;
  width: 100vw;
  margin-inline: calc(50% - 50vw);
  z-index: -1;
}
@media screen and (min-width: 576px) {
  .trouble_img_bg::before {
    background: linear-gradient(180deg, #3fadd2 200px, #d7c291 200px 220px);
    height: 220px;
  }
}
@media screen and (min-width: 768px) {
  .trouble_img_bg::before {
    background: linear-gradient(180deg, #3fadd2 130px, #d7c291 130px 150px);
    height: 150px;
    width: 10vw;
    left: -5%;
    margin-inline: unset;
  }
}
@media screen and (min-width: 992px) {
  .trouble_img_bg::before {
    background: linear-gradient(180deg, #3fadd2 160px, #d7c291 160px 180px);
    height: 180px;
  }
}

.list_treatment li {
  display: inline-block;
  color: #3fadd2;
  border: #3fadd2 1px solid;
  padding: 1px 5px 0px 5px;
  margin-bottom: 5px;
}

.box_height02 {
  min-height: 370px;
}

@media screen and (min-width: 992px) {
  .list_page_link_full {
    display: flex;
    flex-wrap: wrap;
  }
}
.list_page_link_full li {
  width: 100%;
  padding: 7px;
  height: 48px;
  position: relative;
  border-top: 1px solid #f3eddf;
  border-right: 1px solid #f3eddf;
  border-left: 1px solid #f3eddf;
}
@media screen and (min-width: 992px) {
  .list_page_link_full li {
    width: 33.3%;
  }
  .list_page_link_full li:not(:last-child) {
    border-right: none;
  }
}
.list_page_link_full li::after {
  content: "";
  position: absolute;
  top: calc(50% - 6px);
  left: calc(100% - 22px);
  display: inline-block;
  width: 8px;
  height: 8px;
  border-bottom: 2px solid #6180ad;
  border-right: 2px solid #6180ad;
  transform: rotate(45deg);
  border-radius: 1px;
}
.list_page_link_full li:hover {
  background-color: #f3eddf;
}
.list_page_link_full:last-child {
  border-bottom: 1px solid #f3eddf;
}
.list_page_link_full a:hover {
  color: #314363;
}

@media screen and (min-width: 992px) {
  .list_page_link_full02 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
}
.list_page_link_full02 li {
  width: 100%;
  padding: 7px;
  height: 48px;
  position: relative;
  border-top: 1px solid #f3eddf;
  border-right: 1px solid #f3eddf;
  border-left: 1px solid #f3eddf;
}
@media screen and (min-width: 992px) {
  .list_page_link_full02 li {
    width: 33.3%;
    border-bottom: 1px solid #f3eddf;
  }
  .list_page_link_full02 li:not(:last-child) {
    border-right: none;
  }
}
.list_page_link_full02 li::after {
  content: "";
  position: absolute;
  top: calc(50% - 6px);
  left: calc(100% - 22px);
  display: inline-block;
  width: 8px;
  height: 8px;
  border-bottom: 2px solid #6180ad;
  border-right: 2px solid #6180ad;
  transform: rotate(45deg);
  border-radius: 1px;
}
.list_page_link_full02 li:last-child {
  border-bottom: 1px solid #f3eddf;
}
.list_page_link_full02 li:hover {
  background-color: #f3eddf;
}
.list_page_link_full02 a:hover {
  color: #314363;
}

@media screen and (min-width: 768px) {
  .product_height {
    min-height: 85px;
  }
}

.pdInline10 {
  padding-inline: 10px;
}

.list_faq {
  line-height: 1.9;
  letter-spacing: 0.05rem;
  border-top: 1px solid #d7c291;
  background: #ffffff;
}
.list_faq:last-child {
  border-bottom: 1px solid #d7c291;
}

.list_faq_q {
  cursor: pointer;
  position: relative;
  padding: 20px 27px 20px 15px;
  font-weight: normal;
  line-height: 1.6 !important;
}
.list_faq_q::before, .list_faq_q::after {
  content: "";
  position: absolute;
  right: 10px;
  top: 40%;
  width: 2px;
  height: 0.8em;
  background-color: #d7c291;
  transition: all 0.3s;
}
.list_faq_q::after {
  transform: rotate(90deg);
}
.list_faq_q.open::before {
  transform: rotate(90deg);
}

.list_faq_a {
  padding: 0px 27px 20px 15px;
  line-height: 1.6 !important;
}
.list_faq_a a.link_underline {
  text-decoration: underline !important;
}

.faq_parent {
  border-top: #d7c291 1px solid;
}
.faq_parent:last-child {
  border-bottom: 1px solid #d7c291;
}
.faq_parent > dt {
  cursor: pointer;
  position: relative;
  padding: 15px 0px 15px 0px;
}
@media screen and (min-width: 768px) {
  .faq_parent > dt {
    padding-left: 40px;
  }
}
.faq_parent > dt::before, .faq_parent > dt::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 40%;
  width: 2px;
  height: 0.8em;
  background-color: #d7c291;
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  .faq_parent > dt::before, .faq_parent > dt::after {
    right: 30px;
  }
}
.faq_parent > dt::after {
  transform: rotate(90deg);
}
.faq_parent > dt.open::before {
  transform: rotate(90deg);
}
.faq_parent > dd {
  padding: 15px;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}
@media screen and (min-width: 576px) {
  .faq_parent > dd {
    margin: auto;
    max-width: 515px;
  }
}
@media screen and (min-width: 768px) {
  .faq_parent > dd {
    margin: auto;
    max-width: 695px;
    padding: 30px 45px;
  }
}
@media screen and (min-width: 992px) {
  .faq_parent > dd {
    margin: auto;
    max-width: 935px;
  }
}

@media screen and (min-width: 768px) {
  #faq .list_faq_q {
    padding-left: 25px;
  }
}
#faq .list_faq_q::before, #faq .list_faq_q::after {
  right: 20px;
}
@media screen and (min-width: 768px) {
  #faq .list_faq_q::before, #faq .list_faq_q::after {
    right: 30px;
  }
}

@media screen and (min-width: 768px) {
  #faq .list_faq_a {
    padding-left: 25px;
  }
}

.fuwafuwa {
  animation: fuwafuwa 3s infinite ease-in-out 0.8s alternate;
  display: inline-block;
  transition: 1.5s ease-in-out;
}

@keyframes fuwafuwa {
  0%, 40%, 80% {
    transform: scale(1);
  }
  20%, 60%, 100% {
    transform: scale(0.96);
  }
}
/*キャンペーンバナーホバー*/
a:hover .bnr_box {
  transform: scale(102%);
}

@keyframes hover_grad {
  0% {
    left: -100%;
  }
  100% {
    left: 0;
  }
}/*# sourceMappingURL=common.css.map */