@charset "UTF-8";
/*
|----------------------------------------
| base
|----------------------------------------
*/
.bl_fluid {
  display: none !important;
}
html {
  font-family: "Noto Sans JP", sans-serif, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic";
  max-width: 500px;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0.02em;
  color: var(--color-text-primary);
  margin-left: auto;
  margin-right: auto;
  height: 100vh;
}

img {
  display: inline-block;
  max-width: 100%;
}

video {
  display: block;
  max-width: 100%;
}

input {
  display: block;
  background-color: #fff;
  letter-spacing: 0.02em;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type=time] {
  position: relative;
}

input[type=time]::-webkit-calendar-picker-indicator {
  position: absolute;
  opacity: 0;
  width: 100%;
}

select {
  cursor: pointer;
  letter-spacing: 0.02em;
}

textarea {
  display: block;
  background-color: #fff;
  padding: 1em 0.5em;
  resize: none;
  letter-spacing: 0.02em;
  width: 100%;
  white-space: pre-wrap;
  overflow: hidden;
}

a:hover {
  opacity: 0.8;
}

button {
  font-weight: 500;
  border: none;
}
button:hover {
  opacity: 0.8;
}
button:disabled:hover {
  opacity: 1;
}
button:active {
  opacity: 1;
}

[v-cloak] {
  display: none !important;
}
html {
  max-width: 100%;
}

body {
  position: relative;
  height: 100%;
  overflow: hidden;
}

body::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: fixed;
  background-color: var(--color-primary-200);
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 0;
}

body.no_bg::after {
  content: none;
}

.bl_inner {
  max-width: 500px;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-left: auto;
  margin-right: auto;
  z-index: 2;
  background-color: #fff;
  overflow: hidden;
  position: fixed;
  height: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.bl_left,
.bl_right {
  width: calc((100% - 500px) / 2);
  position: fixed;
  height: 100%;
  top: 0;
  overflow: hidden;
  z-index: 20;
}

.bl_left {
  left: 0;
}

.bl_left_logo {
  max-width: 360px;
  width: 80%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -150%);
          transform: translate(-50%, -150%);
  -webkit-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
  -webkit-filter: blur(0px);
          filter: blur(0px);
}

.bl_left_logo.js_hide {
  opacity: 0;
  -webkit-filter: blur(15px);
          filter: blur(15px);
}

.bl_right {
  right: 0;
}

.bl_right_scroll {
  width: 20px;
  position: absolute;
  bottom: 108px;
  left: 14px;
  -webkit-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
  -webkit-filter: blur(0px);
          filter: blur(0px);
}

.bl_right_scroll.js_hide {
  opacity: 0;
  -webkit-filter: blur(15px);
          filter: blur(15px);
}

.bl_right_scrollTop {
  width: 50px;
  position: absolute;
  bottom: 130px;
  right: 30px;
  -webkit-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
  -webkit-filter: blur(0px);
          filter: blur(0px);
}

.bl_right_scrollTop.js_hide {
  opacity: 0;
  -webkit-filter: blur(15px);
          filter: blur(15px);
}

@-webkit-keyframes loop {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}

@keyframes loop {
  0% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@-webkit-keyframes loop2 {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
}
@keyframes loop2 {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-200%);
            transform: translateX(-200%);
  }
}
.bl_movingTxt {
  width: 100%;
  position: absolute;
  overflow: hidden;
  height: 90px;
  display: block;
  z-index: 2;
}

.bl_movingTxt.bl_movingTxt__top {
  top: -18px;
  left: 0;
}

.bl_movingTxt.bl_movingTxt__bottom {
  bottom: -18px;
  left: 0;
}

.bl_movingTxt_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.bl_movingTxt__top .bl_movingTxt_list > .bl_movingTxt_item:nth-of-type(odd) {
  -webkit-animation: loop 200s -100s linear infinite;
          animation: loop 200s -100s linear infinite;
}

.bl_movingTxt__top .bl_movingTxt_list > .bl_movingTxt_item:nth-of-type(even) {
  -webkit-animation: loop2 200s linear infinite;
          animation: loop2 200s linear infinite;
}

.bl_movingTxt__bottom .bl_movingTxt_list > .bl_movingTxt_item:nth-of-type(odd) {
  animation: loop 200s -100s linear infinite reverse;
}

.bl_movingTxt__bottom .bl_movingTxt_list > .bl_movingTxt_item:nth-of-type(even) {
  animation: loop2 200s linear infinite reverse;
}

.bl_movingTxt_item {
  display: block;
  max-width: none;
  width: auto;
  height: 90px;
}

@-webkit-keyframes fluidrotate {
  0% {
    border-radius: 50% 50% 50% 50%/50% 50% 50% 50%;
  }
  10% {
    border-radius: 30% 70% 80% 20%/50% 50% 50% 50%;
  }
  20% {
    border-radius: 80% 20% 70% 30%/50% 50% 50% 50%;
  }
  30% {
    border-radius: 20% 80% 30% 70%/50% 50% 50% 50%;
  }
  40% {
    border-radius: 70% 30% 20% 80%/50% 50% 50% 50%;
  }
  50% {
    border-radius: 50% 50% 80% 20%/50% 50% 50% 50%;
  }
  60% {
    border-radius: 80% 20% 50% 50%/50% 50% 50% 50%;
  }
  70% {
    border-radius: 20% 80% 50% 50%/50% 50% 50% 50%;
  }
  80% {
    border-radius: 50% 50% 20% 80%/50% 50% 50% 50%;
  }
  90% {
    border-radius: 70% 30% 80% 20%/50% 50% 50% 50%;
  }
  100% {
    border-radius: 50% 50% 50% 50%/50% 50% 50% 50%;
  }
}

@keyframes fluidrotate {
  0% {
    border-radius: 50% 50% 50% 50%/50% 50% 50% 50%;
  }
  10% {
    border-radius: 30% 70% 80% 20%/50% 50% 50% 50%;
  }
  20% {
    border-radius: 80% 20% 70% 30%/50% 50% 50% 50%;
  }
  30% {
    border-radius: 20% 80% 30% 70%/50% 50% 50% 50%;
  }
  40% {
    border-radius: 70% 30% 20% 80%/50% 50% 50% 50%;
  }
  50% {
    border-radius: 50% 50% 80% 20%/50% 50% 50% 50%;
  }
  60% {
    border-radius: 80% 20% 50% 50%/50% 50% 50% 50%;
  }
  70% {
    border-radius: 20% 80% 50% 50%/50% 50% 50% 50%;
  }
  80% {
    border-radius: 50% 50% 20% 80%/50% 50% 50% 50%;
  }
  90% {
    border-radius: 70% 30% 80% 20%/50% 50% 50% 50%;
  }
  100% {
    border-radius: 50% 50% 50% 50%/50% 50% 50% 50%;
  }
}
@-webkit-keyframes fluidrotate2 {
  0% {
    border-radius: 50% 50% 50% 50%/50% 50% 50% 50%;
  }
  10% {
    border-radius: 70% 30% 80% 20%/60% 40% 50% 50%;
  }
  20% {
    border-radius: 50% 50% 20% 80%/50% 50% 50% 50%;
  }
  30% {
    border-radius: 20% 80% 50% 50%/40% 60% 50% 50%;
  }
  40% {
    border-radius: 80% 20% 50% 50%/60% 40% 50% 50%;
  }
  50% {
    border-radius: 50% 50% 80% 20%/50% 50% 50% 50%;
  }
  60% {
    border-radius: 70% 30% 20% 80%/40% 60% 50% 50%;
  }
  70% {
    border-radius: 30% 70% 30% 70%/60% 40% 50% 50%;
  }
  80% {
    border-radius: 80% 20% 70% 30%/40% 60% 50% 50%;
  }
  90% {
    border-radius: 20% 80% 80% 20%/60% 40% 50% 50%;
  }
  100% {
    border-radius: 50% 50% 50% 50%/50% 50% 50% 50%;
  }
}
@keyframes fluidrotate2 {
  0% {
    border-radius: 50% 50% 50% 50%/50% 50% 50% 50%;
  }
  10% {
    border-radius: 70% 30% 80% 20%/60% 40% 50% 50%;
  }
  20% {
    border-radius: 50% 50% 20% 80%/50% 50% 50% 50%;
  }
  30% {
    border-radius: 20% 80% 50% 50%/40% 60% 50% 50%;
  }
  40% {
    border-radius: 80% 20% 50% 50%/60% 40% 50% 50%;
  }
  50% {
    border-radius: 50% 50% 80% 20%/50% 50% 50% 50%;
  }
  60% {
    border-radius: 70% 30% 20% 80%/40% 60% 50% 50%;
  }
  70% {
    border-radius: 30% 70% 30% 70%/60% 40% 50% 50%;
  }
  80% {
    border-radius: 80% 20% 70% 30%/40% 60% 50% 50%;
  }
  90% {
    border-radius: 20% 80% 80% 20%/60% 40% 50% 50%;
  }
  100% {
    border-radius: 50% 50% 50% 50%/50% 50% 50% 50%;
  }
}
@-webkit-keyframes imageBlur {
  from {
    opacity: 0;
    -webkit-filter: blur(15px);
    -moz-filter: blur(15px);
    -ms-filter: blur(15px);
    -o-filter: blur(15px);
    filter: blur(15px);
  }
  to {
    opacity: 1;
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -ms-filter: blur(0px);
    -o-filter: blur(0px);
    filter: blur(0px);
  }
}
@keyframes imageBlur {
  from {
    opacity: 0;
    -webkit-filter: blur(15px);
    -moz-filter: blur(15px);
    -ms-filter: blur(15px);
    -o-filter: blur(15px);
    filter: blur(15px);
  }
  to {
    opacity: 1;
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -ms-filter: blur(0px);
    -o-filter: blur(0px);
    filter: blur(0px);
  }
}
.bl_fluid {
  width: 40vw;
  height: 40vw;
  max-width: 340px;
  max-height: 340px;
  overflow: hidden;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
  -webkit-filter: blur(0px);
          filter: blur(0px);
}

.bl_fluid.js_hide {
  opacity: 0;
  -webkit-filter: blur(15px);
          filter: blur(15px);
}

.bl_fluid img {
  position: absolute;
}

#__bs_notify__ {
  display: none !important;
}

/*
|----------------------------------------
| helper
|----------------------------------------
*/
/*
* mixins
*/
/*
* helper
*/
.hp_db_n {
  display: none !important;
}

.hp_lh_1 {
  line-height: 1;
}

.hp_ta_c {
  text-align: center;
}

.hp_ta_r {
  text-align: right;
}

.hp_fw_b {
  font-weight: 600;
}

.hp_d_b {
  display: block !important;
}

.hp_d_ib {
  display: inline-block;
}

.hp_ais_c {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.hp_fw_w {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.hp_c_black {
  color: #000;
}

.hp_dis_f {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.hp_jusc_sb {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.hp_fled_col {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.hp_flex_1 {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.hp_colG_1rem {
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
}

.hp_rowG_1rem {
  row-gap: 1rem;
}

.hp_d_none {
  display: none;
}

.hp_margin_Xcenter {
  margin-right: auto;
  margin-left: auto;
}

.hp_flex_yC {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.hp_flex_column_xC {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.hp_op_0 {
  opacity: 0 !important;
}

.hp_900inner {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}

.hp_880inner {
  max-width: 880px;
  margin-left: auto;
  margin-right: auto;
}

.hp_innerPad {
  padding-left: 16px;
  padding-right: 16px;
}

.hp_hasBorderBtm {
  border-bottom: 1px solid;
}

.hp_bg_gla {
  background-color: var(--color-primary);
  color: #fff;
}

.hp_ff_num {
  font-family: "Noto Sans", "Noto Sans JP", sans-serif, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic";
}

.hp_fz_1-5em {
  font-size: 1.5em;
}

.hp_scale_1-2 {
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}

.hp_sepa_2line {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.hp_c_default {
  color: #2F2F2F !important;
}

.hp_d_none {
  display: none !important;
}

/*
|----------------------------------------
| element
|----------------------------------------
*/
/*
|----------------------------------------
| block
|----------------------------------------
*/
.bl_page {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
}
.bl_page.bl_page__bg_white {
  background-color: #ffffff;
}
.bl_page.bl_page__bg_gray {
  background-color: #f5f5f5;
}

.bl_page_head {
  height: fit-content;
  min-height: 62px;
  width: 100%;
  background-color: #fff;
  z-index: 8;
  border-bottom: 1px solid #d0d0d0;
  position: sticky;
  top: 0;
}
.bl_page_head.bl_page_head__short {
    height: 50px;
    min-height: 50px;
}
.bl_page_head_search {
  position: absolute;
  width: 22px;
  height: 21px;
  background-size: contain;
  background-repeat: no-repeat;
  top: 51%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 20px;
  filter: brightness(0) saturate(100%) invert(61%) sepia(3%) 
        saturate(107%) hue-rotate(187deg) brightness(95%) contrast(90%);

}

.bl_page_head.bl_page_head__logo {
  height: 50px;
  min-height: 50px;
}
.bl_page_head.bl_page_head__logo .bl_page_head__logo_img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  height: 15px;
  width: auto;
}

.bl_page_head_back {
  position: absolute;
  left: 22px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 16px;
  height: 16px;
}
.bl_page_head_back img {
  display: block;
}

.bl_overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(10px);
  top: 0;
  left: 0;
  z-index: 10;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.bl_modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: rgba(0, 0, 0, 0.7);
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

/*
* はい・いいえで確認するモーダル
*/
.bl_confirmModal {
  background: #fff;
  position: fixed;
  z-index: 20;
  border-radius: 6px;
  min-width: 270px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.bl_confirmModal .bl_confirmModal_msg {
  padding: 30px 20px;
  text-align: center;
}
.bl_confirmModal .bl_confirmModal_msg_ttl {
  font-weight: bold;
  text-align: center;
  padding-bottom: 10px;
  font-size: 16px;
}
.bl_confirmModal .bl_confirmModal_btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-top: 1px solid;
}
.bl_confirmModal .bl_confirmModal_btns > a {
  width: 50%;
  text-align: center;
  padding: 8px 0;
}
.bl_confirmModal .bl_confirmModal_btns > a:first-child {
  border-right: 1px solid;
}
.bl_confirmModal .bl_confirmModal_btns > form {
  display: block;
  width: 50%;
  text-align: center;
}
.bl_confirmModal .bl_confirmModal_btns > form button {
  font-weight: normal;
  width: 100%;
  padding: 8px 0;
  display: block;
}


/*
* お知らせモーダル
*/
.bl_newsModal {
  background: #fff;
  position: fixed;
  z-index: 20;
  border-radius: 6px;
  width: 80%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.bl_newsModal .bl_newsModal_msg {
  padding: 30px 20px;
  text-align: center;
}
.bl_newsModal .bl_newsModal_msg_ttl {
  font-weight: bold;
  text-align: center;
  padding-bottom: 10px;
  font-size: 16px;
}
.bl_newsModal .bl_newsModal_msg_link {
  color: #508ff3;
}
.bl_newsModal .bl_newsModal_btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-top: 1px solid;
}
.bl_newsModal .bl_newsModal_btns > a {
  width: 50%;
  text-align: center;
  padding: 8px 0;
}
.bl_newsModal .bl_newsModal_btns > a:first-child {
  border-right: 1px solid;
}
.bl_newsModal .bl_newsModal_btns > form {
  display: block;
  width: 50%;
  text-align: center;
}
.bl_newsModal .bl_newsModal_btns > form button {
  font-weight: normal;
  width: 100%;
  padding: 8px 0;
  display: block;
}


/*
* エラーが発生したときのモーダル
*/
.bl_errorModal {
  background: #fff;
  position: fixed;
  z-index: 20;
  border-radius: 6px;
  min-width: 246px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.bl_errorModal .bl_errorModal_ttl {
  text-align: center;
  font-weight: 600;
  font-size: 16px;
  padding-top: 24px;
}
.bl_errorModal .bl_errorModal_msg {
  padding: 14px 20px 24px;
  text-align: center;
}
.bl_errorModal .bl_errorModal_btn {
  border-top: 1px solid;
}
.bl_errorModal .bl_errorModal_btn > a {
  display: block;
  width: 100%;
  text-align: center;
  padding: 10px 0;
  font-weight: 500;
}

/*
* ログインセキュリティ系アラート（アカウントロック・IPブロック・レート制限）
* フォーム上部に表示する重大度高めのバナー（APP-1581）
*/
.bl_loginSecurityAlert {
  width: 100%;
  margin: 0 auto 16px;
  background-color: #FFF7F7;
  border: 1px solid var(--color-text-gray);
  border-radius: 8px;
  padding: 14px 18px;
  color: var(--color-text-primary);
  font-size: 13px;
  word-break: keep-all;
}
.bl_loginSecurityAlert .bl_loginSecurityAlert_ttl {
  font-weight: 600;
  font-size: 14px;
  color: var(--color-caution-red);
  margin-bottom: 6px;
}
.bl_loginSecurityAlert .bl_loginSecurityAlert_msg {
  color: var(--color-text-secondary);
  font-size: 13px;
  line-height: 1.5;
}
/* スマホ幅は keep-all を解除し、句読点間が画面幅を超える文言のはみ出しを回避 */
@media screen and (max-width: 500px) {
  .bl_loginSecurityAlert {
    word-break: normal;
  }
}

#particles-js {
  position: fixed;
  /*描画固定*/
  z-index: 1;
  /*描画を一番下に*/
  width: 100%;
  height: -webkit-fill-available;
  max-width: 712px;
  -webkit-transform: translateX(-16px);
          transform: translateX(-16px);
}

.bl_page_main {
  overflow-y: auto;
  overflow-x: hidden;
  padding-bottom: 50px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  position: relative;
}

.bl_flexCol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.bl_flexCol .bl_flexCol_flex1 {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.bl_footer {
  height: 80px;
  -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
  background-color: #FAFAFA;
  width: 100%;
  max-width: 500px;
  padding-left: 58px;
  padding-right: 58px;
  position: sticky;
  bottom: 0;
  z-index: 3;
}
.bl_footer .bl_footer_nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  -webkit-column-gap: 34px;
     -moz-column-gap: 34px;
          column-gap: 34px;
  padding-top: 18px;
  padding-bottom: 18px;
}
.bl_footer .bl_footer_nav_item {
  width: 112px;
  height: 100%;
  row-gap: 4px;
  letter-spacing: 0em;
  position: relative;
}
.bl_linkIcon_img_pinkBorder {
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: none;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.bl_linkIcon_img_pinkBorder + .bl_linkIcon_txt {
  color: var(--color-primary) !important;
}
.bl_footer .bl_footer_nav_item .bl_footer_unread_icon {
  position: absolute;
  top: -7px;
  right: 5px;
  width: 20px;
}
.bl_footer .bl_footer_nav_item .bl_linkIcon_img {
  display: block;
  width: auto;
  height: 28px;
  max-width: 100%;
  max-height: 100%;
}
.bl_footer .bl_footer_nav_item .bl_linkIcon_txt {
  font-size: 10px;
  font-weight: 700;
  color: #959595;
  padding-top: 2px;
}
.bl_footer .bl_footer_nav_item_unreadNum {
  width: 20px;
  height: 20px;
  position: absolute;
  top: -10px;
  right: 8px;
}
.bl_footer {
  padding-left: 30px;
  padding-right: 30px;
  height: 88px;
}
.bl_footer .bl_footer_nav {
  -webkit-column-gap: 28px;
     -moz-column-gap: 28px;
          column-gap: 28px;
  padding-top: 18px;
  padding-bottom: 18px;
}
.bl_footer .bl_footer_nav_item {
  width: calc((100% - 102px) / 4);
  height: auto;
  padding-bottom: 5px;
  min-height: 57px;
}
.bl_footer .bl_linkIcon .bl_linkIcon_txt {
  font-size: 10px;
}
.bl_footer .bl_footer_nav_item .bl_linkIcon_img {
  height: 24px;
}
/* タップフィードバック */
.bl_footer .bl_footer_nav_item:active {
  opacity: 0.7;
  transition: none;
}

@-webkit-keyframes GradietionAnimation {
  0% {
    background-position: 0% 0%;
  }
  25% {
    background-position: 25% 25%;
  }
  50% {
    background-position: 50% 50%;
  }
  75% {
    background-position: 75% 75%;
  }
  100% {
    background-position: 100% 100%;
  }
}

@keyframes GradietionAnimation {
  0% {
    background-position: 0% 0%;
  }
  25% {
    background-position: 25% 25%;
  }
  50% {
    background-position: 50% 50%;
  }
  75% {
    background-position: 75% 75%;
  }
  100% {
    background-position: 100% 100%;
  }
}
.fade-enter-active,
.fade-leave-active {
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.fade-enter-from,
.fade-leave-to {
  opacity: 0;
}

.fade-enter-to,
.fade-leave-from {
  opacity: 1;
}

.slow-fade-enter-active,
.slow-fade-leave-active {
  -webkit-transition: all 2s;
  transition: all 2s;
}

.slow-fade-enter-from,
.slow-fade-leave-to {
  opacity: 0;
}

.slow-fade-enter-to,
.slow-fade-leave-from {
  opacity: 1;
}

.fade-up-enter-active,
.fade-up-leave-active {
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.fade-up-enter-from,
.fade-up-leave-to {
  opacity: 0;
}

.fade-up-enter-from {
  -webkit-transform: translateY(16px);
          transform: translateY(16px);
}

.fade-up-enter-to {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.fade-up-enter-to,
.fade-up-leave-from {
  opacity: 1;
}

.slide-up-enter-active,
.slide-up-leave-active {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.slide-up-enter-from {
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
}

.slide-up-enter-to {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.slide-up-leave-from {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.slide-up-leave-to {
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
}

.opacity-enter-active,
.opacity-leave-active {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}

.opacity-enter-from {
  opacity: 0;
}

.opacity-enter-to {
  opacity: 1;
}

.opacity-leave-from {
  opacity: 1;
}

.opacity-leave-to {
  opacity: 0;
}

.bl_loginBtn_unit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 30px;
}

.bl_loginBtn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 60px;
  background-color: #fff;
  border-radius: 30px;
  position: relative;
  font-size: 15px;
  letter-spacing: 0.18em;
  -webkit-box-shadow: 0 15px 20px rgba(0, 0, 0, 0.1);
          box-shadow: 0 15px 20px rgba(0, 0, 0, 0.1);
}
.bl_loginBtn.bl_loginBtn__glade {
  color: var(--color-primary);
}
.bl_loginBtn.bl_loginBtn__skeletonGlade {
  background-color: transparent;
  color: #fff;
  border: 1px solid;
}
.bl_loginBtn.bl_loginBtn__line {
  background-color: #24be50;
  color: #fff;
}
.bl_loginBtn.bl_loginBtn__apple {
  color: #fff;
  background-color: #000;
}
.bl_loginBtn .bl_loginBtn_icon {
  width: 25px;
  position: absolute;
  left: 24px;
}
.bl_loginBtn .bl_loginBtn_num_icon {
  display: block;
  width: 26px;
  position: absolute;
  right: -4px;
  top: -10px;
}

.bl_linkIcon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: flex-end;
}
.bl_linkIcon .bl_linkIcon_img {
  display: block;
}
.bl_linkIcon .bl_linkIcon_txt {
  font-size: 13px;
  text-align: center;
  white-space: nowrap;
}

.bl_lv1_minTxt {
  font-size: 10px;
}

.bl_lv2_minTxt {
  font-size: 12px;
  padding-top: 32px;
  text-align: center;
}

.bl_lv2_minTxt_attention {
  position: relative;
}

.bl_lv2_minTxt_attention::before {
  content:"";
  width: 14px;
  height: 14px;
  background: url('../images/attention.svg')no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: -10px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.bl_largeBtn {
  display: block;
  width: 100%;
  height: 50px;
  border-radius: 25px;
  padding-left: 15px;
  padding-right: 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: 500;
  font-size: 16px;
}

.bl_largeBtn.bl_largeBtn__gla {
  background: var(--color-primary-dark);
  color: #fff;
}
.bl_largeBtn.bl_largeBtn__glaOra {
  background: -webkit-gradient(linear, left top, right top, from(#f4a467), to(#fdc261));
  background: linear-gradient(to right, #f4a467, #fdc261);
  color: #fff;
}

.bl_largeBtn.bl_largeBtn__glaOutline {
  background-color: #fff;
  color: var(--color-primary);
  border: 2px solid var(--color-primary);
}
.bl_largeBtn.bl_largeBtn__gray {
  background: #f5f5f5;
  color: #828282;
}
.bl_largeBtn.bl_largeBtn__bluePurple {
  background: #ADC4FA;
  color: #fff;
}

.bl_largeBtn.bl_largeBtn__grayOut {
  background: #E3E4E8;
  color: #90929F;
}
.bl_largeBtn.bl_largeBtn__grayOutline {
  background-color: #fff;
  color: #90929F;
  border: 2px solid #E3E4E8;
}

.bl_largeBtn.bl_largeBtn__hasLeftIcon .bl_largeBtn_txt {
  display: inline-block;
  padding-left: 30px;
  padding-right: 10px;
  position: relative;
}
.bl_largeBtn.bl_largeBtn__hasLeftIcon .bl_largeBtn_lIcon {
  position: absolute;
  left: 0;
  top: calc(50% - 9px);
  height: 18px;
}

.bl_blockBtn {
  display: block;
  width: 100%;
  height: 50px;
  border-radius: 25px;
  padding-left: 15px;
  padding-right: 15px;
  font-weight: 500;
  font-size: 16px;
  color: #A3A3A3;
  border: 2px solid #CBCBCB;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.bl_blockBtn.bl_blockBtn__blocking {
  background-color: #fff;
  border-color: #FF4D4F;
  color: #FF4D4F;
}

.bl_unblockBtn {
  display: block;
  width: 100%;
  height: 50px;
  border-radius: 25px;
  padding-left: 15px;
  padding-right: 15px;
  font-weight: 500;
  font-size: 16px;
  color: #E60000;
  border: 2px solid #E60000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.bl_btn {
  display: block;
  width: 245px;
  height: 44px;
  border-radius: 22px;
  background-color: #F0F0F0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-left: 15px;
  padding-right: 15px;
  color: #828282;
}

.bl_btn.bl_btn__glade {
  background-color: var(--color-primary);
  color: #fff;
}

.bl_btn.bl_btn__gladeOutline {
  background-color: #fff;
  color: var(--color-primary);
  border: 2px solid  var(--color-primary);
}

.bl_floatingBtn_wrapper {
  /* position: sticky; */
  position: static;
  bottom: -35px;
  padding-top: 20px;
  z-index: 2;
  max-width: 500px;
  width: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 10px;
}
.bl_floatingBtn_wrapper .bl_floatingBtn {
  position: static;
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
.bl_floatingBtn_wrapper_02 {
  position: fixed;
  bottom: 97px;
  display: flex;
  width: 100%;
  padding: 0 16px;
  column-gap: 10px;
  z-index: 2;
  justify-content: center;
}
.bl_storeFixedBtn {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 5px;
  height: 48px;
  font-weight: 600;
  position: relative;
}
.bl_storeFixedBtn_like {
  width: 30%;
  border: 1px solid #ececec;
  background: #fff;
  color: #7b7f80;
  padding-left: 15px;
}
@media screen and (max-width: 500px) {
  .bl_storeFixedBtn_like {
      padding-left: 20px;
  }
}
.bl_storeFixedBtn_like:before {
  content: '';
  display: inline-block;
  background-image: url(../images/like_store.svg);
  background-repeat: no-repeat;
  width: 20px;
  height: 20px;
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-40%);
}
@media screen and (max-width: 500px) {
  .bl_storeFixedBtn_like:before {
      left: 12px;
  }
}
.bl_storeFixedBtn_like.bl_heartBtn__active {
  color: #fff;
  border: none;
  background: -webkit-gradient(linear, left top, right top, from(#ff7775), to(#ff8b69));
  background: linear-gradient(to right, #ff7775, #ff8b69);
}
.bl_storeFixedBtn_like.bl_heartBtn__active:before {
  filter: brightness(200%);
}
.bl_storeFixedBtn_likeFin {
  display: none;
}
.bl_storeFixedBtn_like.bl_heartBtn__active span {
  display: block;
}
.bl_storeFixedBtn_experience {
  width: 90%;
  background: -webkit-gradient(linear, left top, right top, from(#f4a467), to(#fdc261));
  background: linear-gradient(to right, #f4a467, #fdc261);
  color: #fff;
}
.bl_storeFixedBtn_experience:before {
  content: '';
  display: inline-block;
  background-image: url(../images/experience.svg);
  background-repeat: no-repeat;
  width: 20px;
  height: 25px;
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-40%);
}
@media screen and (max-width: 500px) {
  .bl_storeFixedBtn_experience:before {
      left: 13px;
  }
}
.bl_storeFixedBtn_complete_trial_entry {
  width: 90%;
  background: #AAB0BF;
  color: #fff;
}
.bl_floatingBtn {
  position: fixed;
  bottom: 97px;
  z-index: 2;
  max-width: 500px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: calc(100% - 20px);
}


.bl_floatingBtn.bl_floatingBtn__2btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.bl_floatingBtn.bl_floatingBtn__2btns > a, .bl_floatingBtn.bl_floatingBtn__2btns > button {
  width: 48%;
}
.bl_floatingBtn.bl_floatingBtn__2btns2Rows {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  flex-wrap: wrap;
  row-gap: 14px;
}
.bl_floatingBtn.bl_floatingBtn__2btns2Rows > a, .bl_floatingBtn.bl_floatingBtn__2btns2Rows > button {
  width: 48%;
}

.bl_heartBtn {
  display: inline-block;
  width: 40px;
  height: 40px;
  border-radius: 20px;
  /* background-color: #fff; */
  /* -webkit-box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; */
  background-image: url('../images/like_hart.svg');
  background-color: initial;
}
.bl_heartBtn.bl_heartBtn__active {
  background-image: url('../images/like_hart_active.svg');
  width: 40px;
  height: 40px;
  background-size: 84%;
  background-position: center;
  background-repeat: no-repeat;
}
.bl_heartBtn svg {
  display: none !important;
}
/* .bl_heartBtn svg {
  width: 20px;
  height: 18px;
  fill: #e8e8e8;
} */

/* .bl_heartBtn.bl_heartBtn__active svg {
  fill: #DBCFF5;
} */

.bl_squareBtn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #828282;
  font-weight: 500;
  background: #fff;
  border: 2px solid #828282;
  border-radius: 5px;
  height: 51px;
  font-size: 14px;
  width: 100%;
  border-radius: 30px;
}
.bl_squareBtn img{
  display: block;
  width: fit-content;
  height: 16px;
  filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(33deg) brightness(109%) contrast(102%)
}

.bl_profPhotoUploadModal .bl_profPhotoUploadModal_cont {
  position: fixed;
  width: 100%;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  z-index: 12;
  border-radius: 20px 20px 0 0;
  padding: 30px 30px 20px;
}
.bl_profPhotoUploadModal .bl_profPhotoUploadModal_cont_inner {
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
}
.bl_profPhotoUploadModal .bl_profPhotoUploadModal_heading {
  text-align: center;
  font-weight: 600;
  font-size: 16px;
  padding-bottom: 24px;
}
.bl_profPhotoUploadModal .bl_profPhotoUploadModal_ngSample_unit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 30px;
     -moz-column-gap: 30px;
          column-gap: 30px;
  padding-bottom: 15px;
}
.bl_profPhotoUploadModal .bl_profPhotoUploadModal_ngSample {
  width: 86px;
  position: relative;
}
.bl_profPhotoUploadModal .bl_profPhotoUploadModal_ngSample:after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transform: translate(45%, -35%);
          transform: translate(45%, -35%);
  width: 34px;
  height: 34px;
  background-image: url("../images/xbtn_red.svg");
  background-size: contain;
}
.bl_profPhotoUploadModal .bl_profPhotoUploadModal_ngSample img {
  width: 100%;
}
.bl_profPhotoUploadModal .bl_squareBtn {
  max-width: 500px;
  background: #9B9B9B;
  color: #FFFFFF;
  border: none;
}

.bl_profPhotoUploadModal_memo {
  font-size: 11px;
  color: #828282;
  text-align: center;
}

/* 写真アップロードモーダル（GirlProfileEdit.vue統一） */
.photo-upload-modal__overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  top: 0;
  left: 0;
  z-index: 10;
  transition: all 0.3s;
  inset: 0;
}
.photo-upload-modal__content {
  position: fixed;
  top: 50%;
  transform: translate(-50%,-50%);
  left: 50%;
  border-radius: 16px 16px 0 0;
  padding: 24px;
  z-index: 101;
  max-width: 390px;
  width: 100%;
}
.photo-upload-modal__inner {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.photo-upload-modal__ng-sample {
  display: flex;
  justify-content: center;
}
.photo-upload-modal__ng-sample img {
  max-width: 100%;
  height: auto;
}
.photo-upload-modal__action-list {
  background: #FFFFFF;
  border-radius: 10px;
  overflow: hidden;
}
.photo-upload-modal__action-item {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 12px 14px;
  background: none;
  border: none;
  cursor: pointer;
  font-size: 14px;
  font-weight: 600;
  color: #333333;
  text-align: left;
}
.photo-upload-modal__action-item + .photo-upload-modal__action-item {
  border-top: 1px solid #F0F0F0;
}
.photo-upload-modal__action-item--danger {
  color: var(--color-caution-red);
}
.photo-upload-modal__action-icon {
  width: 22px;
  height: 22px;
  flex-shrink: 0;
}
.photo-upload-modal__action-text {
  flex: 1;
}
.photo-upload-modal__cancel-btn {
  display: block;
  width: 100%;
  margin-top: 6px;
  padding: 14px;
  background: #929292;
  border: none;
  border-radius: 30px;
  font-size: 14px;
  font-weight: 500;
  color: #fff;
  text-align: center;
  cursor: pointer;
}

.bl_profPhotoUpload_plus {
  position: absolute;
  top: -10px;
  right: -10px;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-image: url(/images/gray_plus_icon.svg);
  background-size: cover;
  pointer-events: none;
}

.bl_profPhotoUpload {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  max-width: 334px;
}
.bl_profPhotoUpload .bl_profPhotoUpload_mainPhoto {
  max-width: 390px;
  max-height: 390px;
  padding: 0;
  width: 100vw;
  height: 100vw;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
.bl_profPhotoUpload .bl_profPhotoUpload_mainPhoto,
.bl_profPhotoUpload .bl_profPhotoUpload_subPhoto {
  display: block;
  background-image: url("../images/bl_profPhotoUpload_subPhoto.svg");
  background-color: #f4f4f4;
  background-repeat: no-repeat;
  background-size: contain;
  position: relative;
}

.bl_profPhotoUpload .bl_profPhotoUpload_mainPhoto:after,
.bl_profPhotoUpload .bl_profPhotoUpload_subPhoto:after {
  content: "";
  content:none;
  position: absolute;
  top: -15px;
  right: 0;
  -webkit-transform: translate(40%, 0%);
          transform: translate(40%, 0%);
  background-image: url("../images/gray_plus_icon.svg");
  width: 32px;
  height: 32px;
  background-size: cover;
  background-repeat: no-repeat;
}
.bl_profPhotoUpload .bl_profPhotoUpload_mainPhoto.is-active:after,
.bl_profPhotoUpload .bl_profPhotoUpload_subPhoto.is-active:after {
  background-image: url("../images/pink_x_icon.svg");
}
.bl_profPhotoUpload .bl_profPhotoUpload_mainPhoto .bl_profPhotoUpload_subPhoto,
.bl_profPhotoUpload .bl_profPhotoUpload_subPhoto .bl_profPhotoUpload_subPhoto {
  padding-top: 28%;
}
.bl_profPhotoUpload .bl_profPhotoUpload_mainPhoto {
  width: 100%;
  padding-top: 76%;
  margin-bottom: 24px;
  border: 2px solid #fff;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.15);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.15);
}
.bl_profPhotoUpload .bl_profPhotoUpload_subPhoto_unit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 16px;
     -moz-column-gap: 16px;
          column-gap: 16px;
  row-gap: 32px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.bl_profPhotoUpload .bl_profPhotoUpload_subPhoto {
  width: calc((100% - 32px) / 3);
  padding-top: calc((100% - 32px) / 3);
  border-radius: 10px;
}

.bl_profPhotoUpload.bl_profPhotoUpload__store .bl_profPhotoUpload_mainPhoto {
  max-height: 292.5px;
}
.bl_profPhotoUpload.bl_profPhotoUpload__store .bl_profPhotoUpload_mainPhoto:after,
.bl_profPhotoUpload.bl_profPhotoUpload__store .bl_profPhotoUpload_subPhoto:after {
  background-image: url("../images/purple_plus_icon.svg?20250729");
}
.bl_profPhotoUpload.bl_profPhotoUpload__store .bl_profPhotoUpload_subPhoto {
  padding-top: calc((100% - 32px) * 0.75 / 3);
}

.bl_whWrapper {
  background-color: #fff;
  border-radius: 16px;
  -webkit-box-shadow: 0 0 12px 2px rgba(0, 0, 0, 0.06);
          box-shadow: 0 0 12px 2px rgba(0, 0, 0, 0.06);
}

.bl_hasLike {
  color: var(--color-primary);
  position: relative;
  padding-left: 15px;
  font-size: 12px;
}
.bl_hasLike:before {
  content: "";
  width: 10px;
  height: 10px;
  background-image: url("../images/good.svg?20250729");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 0;
  top: calc(50% - 5px);
}

.swiper-pagination-bullet-active {
  background-color: #EFB4DA;
}

.swiper-pagination-bullet {
  width: 20px;
  height: 3px;
  border-radius: 1.5px;
}

.bl_bgGrayInput {
  background-color: #F5F5F5;
  border-radius: 4px;
}

.bl_searchResultHead {
  padding-top: 20px;
}

.bl_searchResultHead_number {
  text-align: center;
}

.bl_searchResultHead_refine {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  row-gap: 4px;
}
.bl_searchResultHead_refine > span {
  display: block;
  font-weight: 500;
  padding-right: 18px;
  position: relative;
}
.bl_searchResultHead_refine > span:after {
  content: "/";
  position: absolute;
  right: 6px;
}
.bl_searchResultHead_refine > span:last-child {
  padding-right: 0;
}
.bl_searchResultHead_refine > span:last-child:after {
  content: none;
}

.bl_select_wrapper {
  position: relative;
}
.bl_select_wrapper > select, .bl_select_wrapper > input {
  width: 100%;
}
.bl_select_wrapper::after {
  content: "";
  background-image: url("../images/select_r_arrow.svg");
  width: 14px;
  height: 14px;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  pointer-events: none;
}

.bl_lv2_ttl {
  font-size: 20px;
}

.bl_lv3_ttl {
  font-size: 18px;
}

.bl_lv4_ttl {
  font-size: 16px;
}

.bl_msgList {
  padding-top: 20px;
}
.bl_page_head_search_area {
  position: relative;
  width: 60px;
}
.bl_page_tabHeadArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}
.bl_page_tabHeadArea.bl_page_tabHeadArea__hasSearch {
}
.bl_page_tabHeadArea.bl_page_tabHeadArea__hasSearch .bl_msgList_tab {
  width: calc(50% - 30px);
}

.bl_msgList_tab {
  background-color: #fff;
  width: 50%;
  min-height: 62px;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: 600;
}
.bl_msgList_tab.active {
  position: relative;
}
.bl_msgList_tab.active:after {
  content: "";
  display: block;
  width: 100%;
  height: 3px;
  background-color: var(--color-primary);
  position: absolute;
  bottom: -1px;
}


.bl_msgLink {
  padding: 12px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 14px;
     -moz-column-gap: 14px;
          column-gap: 14px;
  border-bottom: 1px solid #d0d0d0;
  position: relative;
  align-items: center;
}
.bl_msgLink.bl_msgLink__hasScout {
  padding-bottom: 26px;
}
.bl_msgLink_Img {
  display: block;
  min-width: 60px;
  width: 60px;
  height: 60px;
  border-radius: 30px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #d0d0d0;
}
.bl_msgLink_Img.bl_msgLink_Img__has_vip {
  position: relative;
  overflow: hidden;
}
.bl_msgLink_Img.bl_msgLink_Img__has_vip::after {
  content: '';
  display: block;
  width: 100%;
  padding-top: 20%;
  background-image: url("../images/vip_bg_icon.svg");
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  bottom: 0;
}
.bl_msgLink_vipIcon {
  height: 14px;
}

.bl_msgLink_txt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-top: 6px;
  width: calc(100% - 77px);
}
.bl_msgLink_area {
  color: #fff;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.125em;
  line-height: 20px;
  height: fit-content;
  padding: 0 7px 1px;
  text-align: center;
  border-radius: 4px;
  background: linear-gradient(to right, #EFB1D9, #E775BE);
  width: fit-content;
  margin-bottom: 4px;
  margin-right: 10px;
}
.bl_msgLink_info {
  display: flex;
  align-items: center; /* 垂直方向の中央揃え */
}
.bl_msgLink_trial_entry {
  color: #fff;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.125em;
  line-height: 20px;
  height: fit-content;
  padding: 0 7px 1px;
  text-align: center;
  border-radius: 4px;
  background: linear-gradient(to right, #f4a467, #fdc261);
  width: fit-content;
  margin-bottom: 4px;
}
.bl_msgLink_name {
  font-weight: 600;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  display: flex;
  flex-direction: column;
  word-break: break-all;
  word-wrap: break-word;
  position: relative;
  width: fit-content;
  min-width: 4em;
}
/* .bl_msgLink_name.bl_msgLink_name__has_girlRank {
  padding-left: 19px;
} */
.bl_msgLink_girlRankIcon {
  display: none !important; /* 0224-1010 CSSでランクバッジを非表示化 */
  position: absolute;
  width: 1.2em;
  left: 0;
  top: calc(50% - 0px);
  transform: translateY(-50%);
}
.bl_msgLink_scoutman {
  width: fit-content;
  font-size: 11px;
  position: absolute;
  right: 2px;
  top: auto;
  bottom: 6px;
  display: flex;
}
.bl_msgLink_scoutman span {
  width: fit-content;
}
.bl_msgLink_scoutman_img {
  width: 16.6px !important;
  height: 16.6px;
  border-radius: 8.8px;
  background-size: cover;
  background-position: center;
  margin-right: 5px;
}

.bl_msgLink_msg {
  color: #9a9a9a;
  font-size: 12px;
  padding-top: 2px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  word-break: break-all;
  word-wrap: break-word;
  padding-right: 25px;
}

.bl_msgLink_modi {
  font-size: 11px;
  color: #B2B2B2;
  position: absolute;
  right: 1px;
  top: 15%;
}

.bl_msgLink_unreadNum {
  display: block;
  width: 22px;
  height: 22px;
  position: absolute;
  right: 1px;
  top:calc(50% - 5px)
}
.bl_msgLink.bl_msgLink__hasScout .bl_msgLink_unreadNum {
}

.bl_msgLink.bl_msgLink__offer .bl_msgLink_msg {
  -webkit-line-clamp: 2;
}

.bl_msgLink_tagArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 4px;
     -moz-column-gap: 4px;
          column-gap: 4px;
  padding-top: 6px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  row-gap: 4px;
}

.bl_tag_unit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-column-gap: 6px;
     -moz-column-gap: 6px;
          column-gap: 6px;
  row-gap: 6px;
}

.bl_tag {
  color: var(--color-primary);
  border: 1px solid var(--color-primary);
  font-size: 11px;
  padding: 0.1em 0.7em 0.1em;
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 9px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

.bl_tag__white {
  color: #050505;
  background-color: #fff;
  border-color: transparent;
}

.bl_tag__gray {
  color: #B2B2B2;
  border-color: #B2B2B2;
}

.bl_tag__blue {
  color: var(--color-primary);
  border-color: var(--color-primary);
}

.bl_msgHead {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  flex-wrap: wrap;
  height: auto !important;
  padding: 10px 0 ;

}
.bl_msgHead_main {
  width: fit-content;
  margin: 0 auto;
  max-width: calc(100% - 40px);
}
.bl_msgHead_main.bl_msgHead_main__doubleName {
  display: flex;
  flex-direction: column;
  row-gap: 10px;
}

.bl_msgHead_scoutman {
  width: 100%;
  display: flex;
  justify-content: right;
  padding-right: 12px;
}
.bl_msgHead_scoutman a{
  font-size: 12px;
  /* color: #508ff3; */
  display: flex;
}
.bl_msgHead_scoutman_img {
  width: 18px;
  height: 18px;
  border-radius: 9px;
  background-size: cover;
  background-position: center;
  margin-right: 5px;
}

.bl_msgHead_delete {
  height: 24px;
  display: block;
  position: absolute;
  top: calc(50% - 15px);
  right: 22px;
}
.bl_msgHead_delete img {
  display: block;
  height: 100%;
}
.bl_msgDetailPage .bl_msgHead {
  position: relative;
}
.bl_msgDetailPage .bl_msgHead .bl_imgAndName {
  margin-left: 50px;
  left: 0;
}
.bl_msgDetailPage .bl_msgHead .bl_prof_status_icon {
  margin-bottom: 0;
  margin-right: 22px;
}

.bl_imgAndName {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 14px;
     -moz-column-gap: 14px;
          column-gap: 14px;
  position: relative;
}
.bl_imgAndName.bl_imgAndName__store {
  flex-wrap: wrap;
  width: calc(100% - 56px);
  padding-right: 10px;
  row-gap: 3px;
  margin-left: 56px;
  
}
.bl_imgAndName_area {
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.125em;
  line-height: 18px;
  height: fit-content;
  padding: 0 7px 1px;
  text-align: center;
  border-radius: 4px;
  background: linear-gradient(to right, #EFB1D9, #E775BE);
  width: fit-content;
  margin-bottom: 2px;
}

.bl_imgAndName_img {
  display: block;
  width: 30px;
  min-width: 30px;
  height: 30px;
  border-radius: 50%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #d0d0d0;
}
.bl_imgAndName_img.bl_imgAndName_img__has_vip {
  position: relative;
  overflow: hidden;
}
.bl_imgAndName_img.bl_imgAndName_img__has_vip::after {
  content: '';
  display: block;
  width: 100%;
  padding-top: 20%;
  background-image: url("../images/vip_bg_icon.svg");
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  bottom: 0;
}
.bl_imgAndName_img_vipIcon {
  height: 10px;
}

.bl_imgAndName_name {
  font-weight: 600;
  word-break: break-all;
}

.bl_msgDetail {
  padding-top: 20px;
}

.bl_msgDetail_date {
  color: #B2B2B2;
  font-size: 10px;
  background-color: #F0F0F0;
  padding: 0 0.8em;
  height: 20px;
  border-radius: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 8px;
}

.bl_userImg {
  display: block;
  width: 30px;
  height: 30px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 15px;
}

.bl_message {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-column-gap: 8px;
     -moz-column-gap: 8px;
          column-gap: 8px;
  margin-bottom: 16px;
  width: 86%;
  margin-left: 0;
  margin-right: auto;
  padding-bottom: 18px;
  position: relative;
}

.bl_message_user {
  margin-bottom: 2px;
  background-size: cover;
  background-color: #d0d0d0;
  min-width: 30px;
}

.bl_message_cont {
  background-color: #EDEDED;
  padding: 1em 0.8em;
  line-height: 1.7;
  border-radius: 10px 10px 10px 0px;
  font-size: 12px;
  white-space: pre-line;
  word-break: break-all;
}
.bl_message_cont a {
  color: #508ff3;
  text-decoration: underline;
}

.bl_message_time {
  font-size: 10px;
  color: #B2B2B2;
  padding-bottom: 4px;
}
.bl_message_read {
  font-size: 10px;
  color: #B2B2B2;
  position: absolute;
  bottom: 0;
  right: 38px;
}
.bl_message.bl_message__mine .bl_message_read {
  color: var(--color-primary);
}
.bl_message_read.bl_message_read__noIcon {
  right: 0;
}

.bl_message.bl_message__mine {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  margin-right: 0;
  margin-left: auto;
}
.bl_message.bl_message__mine .bl_message_cont {
  background-color: #FFE6EC;
  color: var(--color-text-primary);
  border-radius: 10px 10px 0px 10px;
}
.bl_message.bl_message__mine .bl_message_time {
  color: var(--color-primary);
}

.bl_message.bl_message__storeMine .bl_message_cont {
  background-color: #EDEEFF;
}
.bl_message.bl_message__storeMine .bl_message_time {
  color: #C9CCFF;
}

.bl_offerMsg_wrapper {
  position: relative;
  display: flex;
  align-items: flex-end;
  flex-direction: row;
  column-gap: 8px;
  margin-bottom: 16px;
  padding-bottom: 18px;
}
.bl_offerMsg_wrapper.bl_offerMsg_wrapper__mine {
  flex-direction: row-reverse;
}
.bl_offerMsg {
  max-width: calc(80% - 38px);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-color: #fff;
  border: 1px solid #C7C7C7;
  border-radius: 10px 10px 10px 10px;
  font-size: 12px;
  /* margin-bottom: 16px; */
  margin-left: 38px;
  margin-right: 0;
  padding: 1em 0.8em;
  line-height: 1.7;
}

.bl_offerMsg.bl_offerMsg__mine {
  margin-right: 38px;
  margin-left: 0;
  margin-bottom: 0;
}

.bl_offerMsg_salary {
  font-size: 14px;
  font-weight: 600;
}

.bl_offerMsg_salary_num {
  font-size: 16px;
}

.bl_msgInputForm {
  padding: 14px 0;
  padding-right: 12px;
  /* -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1); */
  background-color: #fff;
  width: 100%;
  max-width: 500px;
  position: sticky;
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  -webkit-column-gap: 6px;
     -moz-column-gap: 6px;
          column-gap: 6px;
  /* -webkit-box-align: center; */
      /* -ms-flex-align: center; */
          /* align-items: center; */
  max-height: 60vh;
  overflow-y: auto;
  align-items: flex-start;
  transition: all 0.5s;
}
.bl_msgDetailPage_bottom {
  -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
    background-color: #fff;
  position: relative;
}
.bl_msgDetailPage_noPlanCover {
  position: fixed;
  width: 100%;
  height: 115px;
  z-index: 3;
  bottom: 0;
  left: 0;
}
.bl_msgDetailPage_bottom.bl_msgDetailPage_bottom__has_offerResTmp .bl_msgInputForm {
  padding-top: 5px;
}
.bl_msgInputTemplate {
  height: 45px;
}
.bl_msgInputForm > button {
  margin-top: 6.5px;
}
.bl_msgInputForm_previewPhoto > img {
  width: auto !important;
  max-width: 50% !important;
  max-height: 200px !important;
}
.bl_msgInput {
  min-height: 42px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  background-color: #F0F0F0;
  border-radius: 21px;
  padding: 1em 1em;
  font-size: 12px;
  max-height:50vh;
  overflow-y: auto;
}
.bl_msgInput::-webkit-input-placeholder {
  color: #B2B2B2;
  /* line-height: 28px; */
}
.bl_msgInput::-moz-placeholder {
  color: #B2B2B2;
  /* line-height: 28px; */
}
.bl_msgInput:-ms-input-placeholder {
  color: #B2B2B2;
  /* line-height: 28px; */
}
.bl_msgInput::-ms-input-placeholder {
  color: #B2B2B2;
  /* line-height: 28px; */
}
.bl_msgInput::placeholder {
  color: #B2B2B2;
  /* line-height: 28px; */
}

.bl_msgImageUpload,
.bl_msgSubmit {
  display: block;
  width: calc(24px * 1.4);
  height: calc(18px * 1.4);
}
.bl_msgImageUpload img,
.bl_msgSubmit img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 90%;
}

.bl_pickUpSlider {
  background-image: url("../images/pickup_bg.jpg?20250729");
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: 0 0;
}
.bl_pickUpSlider .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  display: none !important;
}
.bl_pickUpSlider .swiper-pagination-bullet-active {
  background-color: #C7BBF7;
}
.bl_pickUpSlider .swiper-pagination {
  bottom: 0 !important;
}

.bl_pickUpSlider_head {
  height: 65px;
  padding-top: 5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.bl_pickUpSlider_ttl {
  font-size: 20px;
  color: #fff;
  letter-spacing: 0.06em;
  padding-left: 24px;
  padding-right: 24px;
  background-image: url("../images/kirakira.png");
  background-position: 0 2px;
  background-size: 100% auto;
  background-repeat: no-repeat;
}
.bl_pickUpSlider_ttl .min {
  font-size: 17px;
}

.bl_pickUpSlider_body {
  padding-bottom: 28px;
}

.bl_pickUpSlider_slide {
  /* padding-top: calc((74% - 32px) * 0.75 / 1); */
  position: relative;
  border-radius: 10px;
  overflow: hidden;
  aspect-ratio: 4 / 3;
}

.bl_pickUpSlider_slide_img {
  position: absolute;
  height: 100%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  filter: brightness(0.7);
}
.bl_pickUpSlider_slide_areaTag {
  color: #fff;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.125em;
  line-height: 20px;
  height: fit-content;
  padding: 0 7px 0.3px 20px;
  text-align: center;
  border-radius: 4px;
  background: linear-gradient(to right, #EFB1D9, #E775BE);
  width: fit-content;
  margin-bottom: 4px;
  position: absolute;
  top: 9px;
  left: 9px;
}
.bl_pickUpSlider_slide_areaTag img {
  position: absolute;
  width: 9px;
  top: 49%;
  transform: translateY(-50%);
  left: 5px;
}
.bl_pickUpSlider_slide_cont {
  position: absolute;
  left: 10px;
  bottom: 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 8px;
}
.bl_pickUpSlider_slide_cont .bl_tag {
  font-size: 10px;
}

.bl_pickUpSlider_slide_ttl {
  color: #fff;
  padding-right: 10px;
  font-size: 16px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.bl_pickUpSlider_slide_salary {
  color: #fff;
  font-size: 10px;
}

.bl_pickUpSlider_slide_tags {
  padding-right: 10px;
  max-height: 45px;
  overflow: hidden;
}

.bl_storeSalary {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 11px;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  -webkit-column-gap: 2px;
     -moz-column-gap: 2px;
          column-gap: 2px;
}
.bl_storeSalary .bl_storeSalary_num {
  font-size: 22px;
  font-weight: 600;
  color: var(--color-primary);
  line-height: 1;
}

.bl_storeList {
  padding-top: 22px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 20px;
}

.bl_storeCard {
  background-color: #fff;
  padding-top: 18px;
  padding-bottom: 20px;
  border-radius: 4px;
  -webkit-box-shadow: 0 0 12px 2px rgba(0, 0, 0, 0.06);
          box-shadow: 0 0 12px 2px rgba(0, 0, 0, 0.06);
}
.bl_storeCard > * {
  padding-left: 14px;
  padding-right: 14px;
}
.bl_storeCard .swiper-slide {
  /* padding-top: calc((51% - 32px) * 0.75); */
  position: relative;
  border-radius: 10px;
  overflow: hidden;
  aspect-ratio: 4 / 3;
}
.bl_storeCard .swiper-slide > img {
  position: absolute;
  min-height: 100%;
  min-width: 100%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.bl_storeCard .swiper-button-next,
.bl_storeCard .swiper-button-prev {
  height: 18px;
  width: 18px;
  margin-top: 0;
  top: 50%;
}
.bl_storeCard .swiper-button-next:after,
.bl_storeCard .swiper-button-prev:after {
  font-size: 18px;
  color: rgba(255, 255, 255, 0.7);
  height: 18px;
  line-height: 1;
  content: "";
  width: 20px;
  height: 20px;
  background-image: url("../images/store-card-icon.png");
  background-size: 100%;
  background-repeat: no-repeat;
}
.bl_storeCard .swiper-button-prev:after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.bl_storeCard .bl_storeCard_ttl {
  font-size: 19px;
  font-weight: 600;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.bl_storeCard .bl_storeCard_tags {
  padding-top: 10px;
}
.bl_storeCard .bl_storeCard_imgs {
  padding-top: 12px;
  padding-left: 12px;
}
.bl_storeCard .bl_storeCard_salary {
  padding-top: 14px;
}
.bl_storeCard_wrap {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.bl_storeCard .bl_storeCard_info {
  padding-top: 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 6px;
}
.bl_storeCard .bl_storeCard_desc {
  font-size: 13px;
  padding-top: 12px;
  margin-top: 10px;
  border-top: 1px dashed var(--color-primary);
  word-wrap: break-word;
  display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 10;
    overflow: hidden;
}
.bl_storeCard .bl_storeCard_bottom {
  padding-top: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 8px;
     -moz-column-gap: 8px;
          column-gap: 8px;
}
.bl_storeCard .bl_storeCard_bottom .bl_largeBtn {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: 40px;
}

.bl_minIconAndTxt {
  font-size: 13px;
  line-height: 1.2;
  position: relative;
  line-height: 1.6;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
}
.bl_minIconAndTxt .bl_minIconAndTxt_icon {
  display: block;
  height: auto;
  width: 14px;
}
.bl_storeCard_address.bl_minIconAndTxt .bl_minIconAndTxt_icon {
  width: auto;
  height: 16px;
  padding-left: 2.2px;
  padding-right: 1px;
}
.bl_searchModal .bl_searchModal_cont {
  position: fixed;
  background-color: #fff;
  overflow-y: auto;
  width: 100%;
  height: calc(100% - 30px);
  bottom: 0;
  left: 0;
  z-index: 12;
  border-radius: 20px 20px 0 0;
  padding: 64px 10px 30px;
}
.bl_searchModal .bl_searchModal_close {
  width: 18px;
  height: 18px;
  position: absolute;
  top: 20px;
  right: 24px;
}
.bl_searchModal_freeWard_multiRow_wrapper {
  display: flex;
  flex-direction: column;
  row-gap: 10px;
  padding-bottom: 25px;
}
.bl_searchModal .bl_searchModal_freeWard {
  padding-bottom: 28px;
}
.bl_searchModal_freeWard_multiRow_wrapper .bl_searchModal_freeWard {
  padding-bottom: 0;
}
.bl_searchModal .bl_searchModal_freeWard_heading {
  padding-bottom: 12px;
  padding-left: 10px;
}
.bl_searchModal .bl_searchModal_freeWard_input {
  background-color: #f5f5f5;
  width: calc(100% - 20px);
  padding: 6px 1em;
  border-radius: 16px;
  margin-left: 10px;
  margin-right: 10px;
}
.bl_searchModal .bl_searchModal_freeWard_input::-webkit-input-placeholder {
  font-size: 10px;
  color: #B2B2B2;
}
.bl_searchModal .bl_searchModal_freeWard_input::-moz-placeholder {
  font-size: 10px;
  color: #B2B2B2;
}
.bl_searchModal .bl_searchModal_freeWard_input:-ms-input-placeholder {
  font-size: 10px;
  color: #B2B2B2;
}
.bl_searchModal .bl_searchModal_freeWard_input::-ms-input-placeholder {
  font-size: 10px;
  color: #B2B2B2;
}
.bl_searchModal .bl_searchModal_freeWard_input::placeholder {
  font-size: 10px;
  color: #B2B2B2;
}
.bl_searchModal .bl_searchModal_freeWard_input.bl_searchModal_freeWard_input__idsTextarea {
  min-height: 33px;
  padding-top: 7px;
  padding-bottom: 5px;
}
.bl_searchModal_freeWard_memo {
  font-size: 12px;
  color: #B2B2B2;
  padding: 8px 5px 0;
  padding-top: 8px;
  padding-left: 20px;
}
.bl_searchModal .bl_searchModal_refine_heading {
  padding-bottom: 12px;
  padding-left: 10px;
}
.bl_searchModal .bl_searchModal_refine_row {
  border-top: 1px solid #f5f5f5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 16px;
     -moz-column-gap: 16px;
          column-gap: 16px;
}
.bl_searchModal .bl_searchModal_refine_row_head,
.bl_searchModal .bl_searchModal_refine_row_body {
  padding-top: 13px;
  padding-bottom: 13px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.bl_searchModal .bl_searchModal_refine_row_head {
  padding-left: 10px;
  width: 45%;
  font-size: 13px;
}
.bl_searchModal .bl_searchModal_refine_row_body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  color: var(--color-primary);
}
.bl_searchModal .bl_searchModal_refine_row_body input[type=text],
.bl_searchModal .bl_searchModal_refine_row_body input[type=number] {
  padding: 0.3em 0.5em;
  width: 100%;
  color: var(--color-primary);
}
.bl_searchModal .bl_searchModal_refine_row.bl_searchModal_refine_row__col {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.bl_searchModal .bl_searchModal_refine_row.bl_searchModal_refine_row__col .bl_searchModal_refine_row_body {
  padding-left: 20px;
  padding-top: 0;
}
.bl_searchModal .bl_searchModal_refine_row_body_nest {
  padding-left: 1.5em;
  padding-bottom: 1.5em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 5px;
  width: 100%;
}
.bl_searchModal .bl_searchModal_refine_row_body_nestHeading {
  font-weight: bold;
  padding-bottom: 10px;
}
.bl_searchModal .bl_searchModal_tags input[type=checkbox]:not(:checked) + label.bl_tag {
  color: #B2B2B2;
  border-color: #B2B2B2;
}
.bl_searchModal .bl_searchModal_btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 8px;
     -moz-column-gap: 8px;
          column-gap: 8px;
  padding-top: 12px;
}
.bl_searchModal .bl_searchModal_resetBtn {
  width: 85px;
  color: #B2B2B2;
  border: 2px solid #B2B2B2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 25px;
  font-size: 13px;
}

.bl_searchModal.bl_searchModal__store .bl_searchModal_refine_row_body {
  color: var(--color-primary);
}
.bl_searchModal.bl_searchModal__store .bl_searchModal_refine_row_body input[type=text],
.bl_searchModal.bl_searchModal__store .bl_searchModal_refine_row_body input[type=number] {
  color: var(--color-primary);
}
.bl_searchModal.bl_searchModal__store .bl_checkboxUnit label:before {
  background-image: url("../images/purple_check_icon.svg?20250729");
}

.bl_girlsList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-column-gap: 16px;
     -moz-column-gap: 16px;
          column-gap: 16px;
  row-gap: 22px;
}

.bl_girlLink {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 10px;
  width: calc((100% - 32px) / 3);
}
.bl_girlLink:hover {
  opacity: 1;
}
.bl_girlLink .bl_girlLink_img {
  width: 100%;
  padding-top: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 50%;
  background-color: #d0d0d0;
}
.bl_girlLink .bl_girlLink_img.bl_girlLink_img__has_vip {
  position: relative;
  overflow: hidden;
}
.bl_girlLink .bl_girlLink_img.bl_girlLink_img__has_vip::after {
  content: '';
  display: block;
  width: 100%;
  padding-top: 20%;
  background-image: url("../images/vip_bg_icon.svg");
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  bottom: 0;
}
.bl_girlLink_await_scroll_complete {
  visibility: hidden;
  opacity: 0;
}
.bl_girlLink .bl_girlLink_vipIcon {
  display: block;
  height: 24px;
  margin: 6px auto 0;
}
.bl_girlLink .bl_girlLink_name {
  position: absolute;
  width: fit-content;
  margin: 0 auto;
  padding: 2px 5px 3px;
  font-size: 9px;
  top: 122px;
  left: 28%;
  transform: translateX(-50%);
  border-radius: 10px;
  background-color: #fff;
  box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.26);
  white-space: nowrap;
}
@media screen and (max-width: 500px) {
  .bl_girlLink .bl_girlLink_name {
    top: 23vw;
  }
}
.bl_girlLink .bl_girlLink_rankIcon {
  display: none !important; /* 0224-1001 CSSでランクバッジを非表示化 */
  width: 1.3em;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.bl_girlLink .bl_girlLink_info {
  text-align: center;
  font-size: 10px;
}
.bl_girlLink_info__nearestStation {
  font-size: 10px;
  margin-top: 3px;
}
.bl_girlLink .bl_girlLink_motivation {
  text-align: center;
  font-size: 9px;
  margin: 6px auto 0;
  width: fit-content;
  padding: 3px 10px 3px;
  border-radius: 11px;
  line-height: 1;
}
.bl_girlLink_motivation.bl_girlLink_motivation__blue {
  color: #fff;
  background-color: var(--color-primary-dark);
  border: 1px solid var(--color-primary-dark);
}
.bl_girlLink_motivation.bl_girlLink_motivation__pink {
  color: #fff;
  background-color: var(--color-primary-dark);
  border: 1px solid var(--color-primary-dark);
}
.bl_girlLink_motivation.bl_girlLink_motivation__white {
  color: #9B9B9B;
  background-color: #fff;
  border: 1px solid #A6A6A6;
}
.bl_girlLink_motivation.bl_girlLink_motivation__gray {
  color: #9B9B9B;
  background-color: #E8E8E8;
  border: 1px solid #E8E8E8;
}
.bl_girlLink .bl_girlLink_comment {
  font-size: 10px;
}
.bl_girlLink .bl_girlLink_check {
  position: absolute;
  z-index: 2;
}
.bl_girlLink .bl_girlLink_check input[type=checkbox] {
  display: none;
}
.bl_girlLink .bl_girlLink_check label {
  display: block;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid #B2B2B2;
  background: #fff;
}
.bl_girlLink .bl_girlLink_check input:checked + label {
  background-image: url("../images/purple_check_icon.svg?20250729");
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: center;
  border-color: transparent;
  background-color: transparent;
}
.bl_girlLink .bl_girlLink_check.bl_girlLink_check__3col label {
  width: 28px;
  height: 28px;
}
.bl_girlLink .bl_girlLink_hopeOfReceiving {
  font-size: 10px;
  padding-top: 4px;
  text-align: center;
  color: var(--color-primary);
}
.bl_girlLink_hopeOfReceiving_cont {
  display: flex;
  column-gap: 1px;
  align-items: baseline;
  justify-content: center;
}
.bl_girlLink .bl_girlLink_hopeOfReceiving .hp_ff_num {
  font-size: 1.2em;
}
.bl_girlLink .bl_girlLink_newAndHotIcon {
  width: 56px;
  height: auto;
  position: absolute;
  top: -25px;
  left: -10px;
}
@media screen and (max-width: 500px) {
  .bl_girlLink .bl_girlLink_newAndHotIcon {
    width: 48px;
    top: -20px;
  }
}
.bl_girlLink .bl_girlLink_newIcon {
  width: 40px;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 500px) {
  .bl_girlLink .bl_girlLink_newIcon {
    width: 34px;
    top: -2px;
  }
}
.bl_girlLink .bl_girlLink_hotIcon {
  width: 40px;
  height: auto;
  position: absolute;
  top: -13px;
  left: 0;
}
@media screen and (max-width: 500px) {
  .bl_girlLink .bl_girlLink_hotIcon {
    width: 34px;
  }
}
.bl_girlLink .bl_girlLink_favoBtn {
  position: absolute;
  top: 47%;
  right: 0;
}
@media screen and (max-width: 500px) {
  .bl_girlLink .bl_girlLink_favoBtn {
    top: 21vw;
    right: 0;
  }
}
.bl_girlLink .bl_girlLink_enterdStatus {
  font-size: 12px;
  text-align: center;
  font-weight: bold;
  padding-top: 3px;
}
.bl_girlLink .bl_girlLink_employmentOfferStatus {
  display: block;
  height: 22px;
  width: auto;
  margin: 5px auto 0;
}


.bl_favoBtn {
  width: 38px;
  height: 38px;
  border-radius: 19px;
  background-color: #fff;
  -webkit-box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 500px) {
  .bl_favoBtn {
    width: 34px;
    height: 34px;
    border-radius: 17px;
  }
}
.bl_favoBtn:hover {
  opacity: 1;
}
.bl_favoBtn > svg {
  width: 60%;
  height: auto;
  fill: #E8E8E8;
}
.bl_favoBtn.bl_favoBtn__active svg {
  fill: #F4E282;
}

.bl_girlsList.bl_girlsList__2col {
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
  row-gap: 26px;
}
.bl_girlsList.bl_girlsList__2col .bl_girlLink {
  width: calc((100% - 40px) / 3);
}

.bl_recoGirlsSlider {
  background-image: url("../images/reco-girls-slider-bg.png?20250729");
  background-repeat: no-repeat;
  background-size: 150% auto;
  background-position: center bottom;
}
.bl_recoGirlsSlider .bl_recoGirlsSlider_head {
  height: 65px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.bl_recoGirlsSlider .bl_recoGirlsSlider_ttl {
  color: #fff;
  font-size: 20px;
  padding-right: 20px;
  background-image: url(../images/icon-fire.svg);
  background-size: 16px 21.6px;
  background-position: center right;
  background-repeat: no-repeat;
}
.bl_recoGirlsSlider .bl_recoGirlsSlider_body {
  padding-bottom: 50px;
}
.bl_recoGirlsSlider .bl_recoGirlsSlider_slide.bl_girlLink .bl_girlLink_vipIcon{
  height: 18px;
}
.bl_recoGirlsSlider .swiper-pagination {
  bottom: 18px;
}
.bl_recoGirlsSlider .swiper-pagination-bullet {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #fff;
  opacity: 1;
}
.bl_recoGirlsSlider .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #C7BBF7;
}
.bl_recoGirlsSlider .bl_girlLink_name {
  font-weight: 500;
  line-height: 1.1;
  font-size: 9px;
  white-space: nowrap;
  top: 95px;
}
@media screen and (max-width:500px) {
  .bl_recoGirlsSlider .bl_girlLink_name {
    top:17vw;
  }
  
}

.bl_profileWithdrawal {
  margin-top: 20px;
}

.bl_inputError {
  font-size: 12px;
  color: #FF0000;
  display: block;
  padding-top: 2px;
}

.bl_noneMsg {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  color: #B2B2B2;
  line-height: 1.6;
  padding-top: 40px;
  padding-bottom: 40px;
}

.bl_checkboxUnit label {
  display: block;
  padding: 0.25em 0;
  padding-left: 20px;
  color: #d0d0d0;
  -webkit-transition: color 0.1s;
  transition: color 0.1s;
  position: relative;
  cursor: pointer;
  margin: 0.4em 0;
}
.bl_checkboxUnit label:before {
  -webkit-transition: opacity 0.1s;
  transition: opacity 0.1s;
  content: "";
  position: absolute;
  background-image: url("../images/pink_check_icon.svg?20250729");
  width: 14px;
  height: 14px;
  background-size: cover;
  background-repeat: no-repeat;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  opacity: 0;
}
.bl_checkboxUnit input {
  display: none !important;
}
.bl_checkboxUnit input:checked + label:before {
  opacity: 1;
}

.bl_checkboxUnit.bl_checkboxUnit__maxH_200 {
  overflow-y: scroll;
  max-height: 200px;
}

.bl_profPhotoUpload .bl_profPhotoUpload_error {
  padding-bottom: 4px;
  padding-top: 0;
  -webkit-transform: translateY(-10px);
          transform: translateY(-10px);
  width: 100%;
  text-align: center;
}

.bl_betweenIcon {
  width: 100%;
}

.bl_grayPage {
  background-color: #f5f5f5;
}
.bl_grayPage__no_gray {
  background-color: #fff;
}

.bl_grayPage_back {
  background-color: #fff;
  height: 50px;
  min-height: 50px;
  position: sticky;
  top: 0;
  z-index: 3;
  border-bottom: 1px solid #d0d0d0;
}

.bl_grayPage_back_btn {
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 24px;
}
.bl_grayPage_back_btn > img {
  display: block;
  width: 100%;
  height: 100%;
}
.bl_grayPage_threeDots {
  position: absolute;
  right: 11px;
  top: 50%;
  transform: translateY(-50%);
  width: auto;
  height: 30px;
  padding: 6px 13px;
}
.bl_grayPage_threeDots > img {
  display: block;
  width: 100%;
  height: 100%;
}
.bl_grayPage_cont {
  padding-top: 36px;
}

.bl_grayPage_ttl {
  /* font-size: 16px; */
  font-size: 20px;
  text-align: center;
  font-weight: 600;
}

.bl_grayPage_body {
  padding-top: 30px;
}

.bl_grayPage_post {
  font-size: 13px;
}
.bl_grayPage_post p {
  margin-bottom: 1rem;
  line-height: 1.6;
}
.bl_grayPage_post h2 {
  font-size: 15.6px;
  font-weight: bold;
  padding-left: 14px;
  position: relative;
  margin-bottom: 1rem;
}
.bl_grayPage_post h2:before {
  content: "";
  display: block;
  height: 1em;
  width: 4px;
  background-color: var(--color-primary);
  position: absolute;
  left: 0;
  top: 5px;
}
.bl_grayPage_post .bl_grayPage_post_h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.bl_grayPage_post .bl_grayPage_post_h2 > span:nth-of-type(1) {
  white-space: nowrap;
  padding-right: 4px;
}
.bl_grayPage_post .bl_grayPage_post_2colTable {
  background-color: #fff;
  table-layout: fixed;
  width: 100%;
  font-size: 12px;
  margin-bottom: 1.1rem;
}
.bl_grayPage_post .bl_grayPage_post_2colTable tr {
  border: 1px solid;
}
.bl_grayPage_post .bl_grayPage_post_2colTable th, .bl_grayPage_post .bl_grayPage_post_2colTable td {
  padding: 6px 10px;
}
.bl_grayPage_post .bl_grayPage_post_2colTable th {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: normal;
}
.bl_grayPage_post .bl_grayPage_post_2colTable .bl_grayPage_post_2colTable_thIcon {
  padding-right: 4px;
}
.bl_grayPage_post .bl_grayPage_post_2colTable td {
  display: table-cell;
  border-left: 1px solid;
}
.bl_grayPage_post .bl_grayPage_post_2colTable td a {
  word-wrap: break-word;
}

.bl_grayPage_post .bl_grayPage_post_ul {
  margin: 0.5em 0;
}
.bl_grayPage_post .bl_grayPage_post_ul > li {
  padding-top: 0.2em;
  padding-bottom: 0.2em;
  padding-left: 1.25em;
  position: relative;
}
.bl_grayPage_post .bl_grayPage_post_ul > li::before {
  content: '・';
  position: absolute;
  left: 0;
}
.bl_input {
  padding: 0.5em 0.5em 0.5em 1em;
}
.bl_input::-webkit-input-placeholder {
  color: #A3A3A3;
  font-size: 13px;
}
.bl_input::-moz-placeholder {
  color: #A3A3A3;
  font-size: 13px;
}
.bl_input:-ms-input-placeholder {
  color: #A3A3A3;
  font-size: 13px;
}
.bl_input::-ms-input-placeholder {
  color: #A3A3A3;
  font-size: 13px;
}
.bl_input::placeholder {
  color: #A3A3A3;
  font-size: 13px;
}

.bl_textarea {
  padding: 1em;
}
.bl_textarea::-webkit-input-placeholder {
  color: #A3A3A3;
  font-size: 13px;
}
.bl_textarea::-moz-placeholder {
  color: #A3A3A3;
  font-size: 13px;
}
.bl_textarea:-ms-input-placeholder {
  color: #A3A3A3;
  font-size: 13px;
}
.bl_textarea::-ms-input-placeholder {
  color: #A3A3A3;
  font-size: 13px;
}
.bl_textarea::placeholder {
  color: #A3A3A3;
  font-size: 13px;
}

/*
* 問い合わせフォーム
*/
.bl_contactForm {
  display: block;
}

.bl_contactForm_block_unit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 44px;
}

.bl_contactForm_block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 10px;
}

.bl_contactForm_block_head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 6px;
     -moz-column-gap: 6px;
          column-gap: 6px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.bl_contactForm_block_requireLabel {
  font-size: 10px;
  color: #fff;
  background-color: #FF4D4F;
  line-height: 1.5;
  padding-bottom: 2px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  text-align: center;
  width: 38px;
  font-weight: 400;
}
.bl_contactForm_block_optionalLabel {
  font-size: 10px;
  color: #fff;
  background-color: #adadad;
  line-height: 1.5;
  padding-bottom: 2px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  text-align: center;
  width: 38px;
  font-weight: 400;
}

.bl_contactForm_block_body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 4px;
}

.bl_contactForm_block_name {
  font-size: 16px;
  padding-bottom: 1px;
}

.bl_contactForm_input {
  width: 100%;
  min-height: 50px;
}

.bl_contactForm_textarea {
  min-height: 300px;
}

.bl_inputError {
  padding-left: 1em;
}

.bl_contactForm_agreeBlock {
  padding-top: 30px;
}
.bl_contactForm_agreeBlock input[type=checkbox] {
  display: none;
}
.bl_contactForm_agreeBlock label {
  padding-left: 34px;
  padding-right: 34px;
  text-align: center;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  font-weight: 600;
  letter-spacing: 0.04em;
  position: relative;
}
.bl_contactForm_agreeBlock label:before {
  content: "";
  position: absolute;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  left: 0;
  top: 50%;
  border: 1px solid;
  border-color: #D1D1D1;
  background-color: #fff;
  border-radius: 3px;
}
.bl_contactForm_agreeBlock label:after {
  content: "";
  position: absolute;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 18px;
  height: 9px;
  margin-top: -9px;
  top: 50%;
  left: 3px;
  opacity: 0;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  border-bottom: 3px solid;
  border-left: 3px solid;
  border-color: #2f2f2f;
}
.bl_contactForm_agreeBlock input[type=checkbox]:checked + label:after {
  opacity: 1;
}
.bl_contactForm_agreeBlock a {
  border-bottom: 1px solid;
}
.bl_contactForm_agreeBlock .bl_inputError {
  padding-top: 4px;
  display: block;
  text-align: center;
}

.bl_contactForm_submit {
  padding-top: 45px;
}

/*
* 問い合わせ確認
*/
.bl_contactConfirm {
  display: block;
}

.bl_contactConfirm_block_unit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 16px;
}

.bl_contactConfirm_block {
  border-bottom: 1px solid #B2B2B2;
  padding-bottom: 9px;
}

.bl_contactConfirm_block_head {
  font-weight: bold;
  padding-bottom: 5px;
}

.bl_contactConfirm_submit {
  padding-top: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 15px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.bl_contactConfirm_back {
  border-bottom: 1px solid #B2B2B2;
  display: inline-block;
}

/*
* 入店・退店処理モーダル
*/
.bl_enterLeaveModal .bl_enterLeaveModal_cont {
  position: fixed;
  background-color: #fff;
  overflow-y: auto;
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  bottom: 0;
  left: 0;
  z-index: 50;
  border-radius: 20px 20px 0 0;
  padding: 64px 10px 30px;
}
.bl_enterLeaveModal .bl_enterLeaveModal_ttl {
  font-size: 16px;
  font-weight: 600;
  text-align: center;
  padding-bottom: 40px;
}
.bl_enterLeaveModal .bl_enterLeaveModal_date {
  padding-bottom: 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 4px;
     -moz-column-gap: 4px;
          column-gap: 4px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.bl_enterLeaveModal .bl_enterLeaveModal_date_select {
  position: relative;
  min-width: 68px;
  display: block;
  font-size: 18px;
  border-bottom: 1px solid #d0d0d0;
  padding-left: 10px;
  padding-right: 10px;
}
.bl_enterLeaveModal .bl_enterLeaveModal_date_select:after {
  content: "";
  position: absolute;
  background-image: url(../images/select_bottom_arrow.svg);
  width: 24px;
  height: 24px;
  background-size: cover;
  background-repeat: no-repeat;
  right: 1px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  pointer-events: none;
}
.bl_enterLeaveModal .bl_enterLeaveModal_date_select select {
  padding: 4px 26px 2px 10px;
  letter-spacing: 0.1em;
  min-width: 86px;
  text-align: center;
}
.bl_enterLeaveModal .bl_enterLeaveModal_btn:disabled {
  background: #f5f5f5;
  color: #bbb;
}

/*
* ブロック処理モーダル
*/
.bl_storeDetailMenuModal .bl_storeDetailMenuModal_cont {
  position: fixed;
  background-color: #fff;
  overflow-y: auto;
  width: 100%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  bottom: 0;
  left: 0;
  z-index: 12;
  border-radius: 20px 20px 0 0;
  padding: 30px 20px 30px;
}
.bl_storeDetailMenuModal .bl_storeDetailMenuModal_cont_menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 20px;
}
.bl_storeDetailMenuModal .bl_storeDetailMenuModal_menuBtn {
  border: 2px solid #EBEBEB;
  color: #828282;
  border-radius: 4px;
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 50px;
}
.bl_storeDetailMenuModal .bl_storeDetailMenuModal_menuBtn.cancel {
  background-color: #F5F5F5;
  border-color: #F5F5F5;
}

.bl_blockingMenu .bl_blockingMenu_ttl {
  font-size: 16px;
  font-weight: 600;
  text-align: center;
  padding-bottom: 22px;
}
.bl_blockingMenu .bl_blockingMenu_memo {
  color: #B2B2B2;
  padding-bottom: 20px;
}
.bl_blockingMenu .bl_blockBtn,
.bl_blockingMenu .bl_unblockBtn {
  margin-bottom: 20px;
}

.bl_threeDotsForMenu {
  position: absolute;
  top: 22px;
  right: 22px;
  width: 4px;
  height: 20px;
  background-image: url("../images/three-dots.svg");
  background-repeat: no-repeat;
  background-size: 100%;
  z-index: 3;
}
.bl_threeDotsForMenu.bl_threeDotsForMenu__gray {
    background-image: url("../images/three-dots-gray.svg");
}
.bl_threeDotsForMenuCont {
  min-width: 180px;
  min-height: 200px;
  position: fixed;
  right: 5px;
  top: 5px;
  z-index: 9;
  background: #fff;
  border-radius: 5px;
  overflow: hidden;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}
.bl_threeDotsForMenuCont_head {
  height: 50px;
  border-bottom: 1px solid #B2B2B2;
}
.bl_threeDotsForMenuCont_close {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 14px;
  height: 14px;
  background-image: url('../images/three-dots-close.svg');
  background-size: contain;
  background-repeat: no-repeat;
}
.bl_threeDotsForMenuCont_list {
  
}
.bl_threeDotsForMenuCont_list_item {
  height: 42px;
  display: flex;
  align-items: center;
  padding-left: 14px;
  padding-right: 14px;
  font-weight: 600;
  border-bottom: 1px solid #B2B2B2;
}
/* .bl_threeDotsForMenuCont_list > .bl_threeDotsForMenuCont_list_item:last-child {
  border-bottom: none;
} */
.bl_page_head.bl_page_head__short .bl_threeDotsForMenu {
    width: 4px;
    height: 20px;
    right: 20px;
    top: 15px;
}
/*
|----------------------------------------
| ページ
|----------------------------------------
*/
/*
  *  ログイン
  */
.bl_loginPage {
  width: 100%;
  min-height: 100vh;
  background-color: var(--color-primary);
  /* background-attachment: fixed;
  background-size: cover;
  background-position: center;
  position: relative;
  overflow-y: hidden;
  background-size: 130% 130%;
  background-attachment: fixed;
  -webkit-animation: GradietionAnimation 8s linear infinite;
          animation: GradietionAnimation 8s linear infinite;
  -webkit-animation-direction: alternate;
          animation-direction: alternate; */
  padding-left: 20px;
  padding-right: 20px;
}
@media screen and (max-height:700px) {
  .bl_loginPage {
    padding-bottom: 0px;
    overflow-y: auto;
  }
  .bl_loginPage .bl_loginBtn:last-child {
    margin-bottom: 60px;
  }
  .bl_loginPage .bl_loginPage_bottom_memo {
    margin-bottom: 60px;
    font-size: 12.6px;
  }
}
@media screen and (max-height:760px) {
  .bl_loginPage.bl_loginPage__storeLogin {
    padding-bottom: 0px;
    overflow-y: auto;
  }
  .bl_loginPage.bl_loginPage__storeLogin .bl_loginBtn:last-child {
    margin-bottom: 60px;
  }
}



.bl_loginPage .bl_loginPage_backLink {
  position: absolute;
  top: 20px;
  left: 20px;
  color: #fff;
  font-size: 13px;
  padding-left: 1.5em;
  z-index: 9;
}
.bl_loginPage .bl_loginPage_backLink:before {
  content: "〈";
  position: absolute;
  left: 0;
}
.bl_loginPage .bl_loginPage_inner {
  padding-top: 80px;
  padding-bottom: 80px;
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
  min-height: 100vh;
  -webkit-transition: padding 1s;
  transition: padding 1s;
}
.bl_loginPage .bl_loginPage_inner.bl_loginPage_inner__top {
  padding-bottom: 120px;
  padding-top: 140px;
}
.bl_loginPage .bl_loginPage_logo {
  padding-bottom: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.bl_loginPage .bl_loginPage_logo .bl_loginPage_logo_img {
  display: block;
  width: 26vw;
  max-width: 250px;
}
.bl_loginPage .bl_loginPage_loginTxt {
  color: #fff;
  text-align: center;
  font-size: 13px;
}
.bl_loginPage .bl_loginPage_bottom {
  color: #fff;
  margin-top: auto;
  text-align: center;
  font-size: 13px;
  padding-top: 40px;
}
.bl_loginPage .bl_loginPage_cont {
  margin-top: auto;
  margin-bottom: auto;
}
/*
* 店舗ログイン
*/
.bl_storeLoginForm {
  padding-top: 50px;
  padding-bottom: 50px;
  background-color: rgba(255, 255, 255, 0.4);
}
.bl_storeLoginForm .bl_storeLoginFrom_head {
  color: #fff;
  text-align: center;
  font-weight: 600;
  font-size: 17px;
  margin-bottom: 20px;
}
.bl_storeLoginForm .bl_storeLoginFrom_body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 10px;
}
.bl_storeLoginForm .bl_storeLoginForm_item {
  width: 84%;
  margin-left: auto;
  margin-right: auto;
}
.bl_storeLoginForm .bl_storeLoginForm_item label {
  color: #fff;
  display: block;
  font-size: 12px;
  padding-bottom: 4px;
}
.bl_storeLoginForm .bl_storeLoginForm_item .bl_storeLoginForm_input {
  width: 100%;
  height: 40px;
  padding-left: 0.5em;
}
.bl_storeLoginForm .bl_storeLoginForm_item .bl_storeLoginForm_input:disabled {
  background-color: var(--color-natural-gray-200);
  cursor: not-allowed;
}

.bl_storeLoginBtn {
  margin-top: 24px;
}

.bl_storeLogin_forgetLink {
  font-size: 10px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  color: #fff;
  border-bottom: 1px solid;
  margin-top: 10px;
}

/*
* サイトマップ
*/
.bl_sitemapPage {
  background-color: #f5f5f5;
  padding-top: 60px;
  padding-left: 60px;
  padding-right: 60px;
}
.bl_sitemapPage .bl_sitemapPage_ttl {
  font-size: 35px;
  text-align: center;
  padding-bottom: 40px;
}
.bl_sitemapPage .bl_sitemapPage_storeRegister {
  padding-top: 50px;
}
.bl_sitemapPage .bl_sitemapPage_storeRegister p {
  font-size: 12px;
  text-align: center;
}

.bl_sitemap .bl_sitemap_item_unit {
  -webkit-column-gap: 30px;
     -moz-column-gap: 30px;
          column-gap: 30px;
  row-gap: 60px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
.bl_sitemap .bl_sitemap_item_unit .bl_sitemap_item {
  row-gap: 8px;
  margin-left: auto;
  margin-right: auto;
  /* width: calc((310px - 60px) / 3); */
}
.bl_sitemap .bl_sitemap_item_unit .bl_sitemap_item img {
  max-width: 50px;
}
.bl_sitemap .bl_sitemap_item_unit .bl_sitemap_item.bl_sitemap_item--quick-offer img {
  height: 5.4vw;
}
@media screen and (min-width:500px) {
  .bl_sitemap .bl_sitemap_item_unit .bl_sitemap_item.bl_sitemap_item--quick-offer img {
    height: 32px;
  }
}
/*
* 初期プロフィール入力
*/
.bl_initProfilePage {
  padding-bottom: 20px;
}
.bl_initProfilePage .bl_initProfilePage_head {
  position: sticky;
  top: 0;
  z-index: 2;
  background-color: #fff;
  width: calc(100% + 32px);
  transform: translateX(-16px);
  min-height: 75px;
  border-bottom: solid 2px #f4f4f4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.bl_initProfilePage .bl_profPhotoUpload .bl_profPhotoUpload_mainPhoto {
  height: auto !important;
  padding-top: 100%;
}
.bl_initProfilePage .bl_profPhotoUpload .bl_profPhotoUpload_subPhoto {
  padding-top: calc((100% - 32px) / 3);
  background-position: center;
  border: 2px solid var(--color-primary);
}
.bl_initProfilePage .bl_initProfilePage_largeAreaHeading {
  padding-bottom: 16px;
  font-weight: bold;
}
.bl_initProfilePage .bl_storeCard {
  font-size: 14px;
}
.bl_initProfilePage .bl_storeCard .bl_storeCard_ttl {
  font-size: 14px;
}
.bl_initProfilePage .bl_minIconAndTxt {
  font-size: 11px;
}
.bl_initProfilePage .bl_largeBtn {
  font-size: 14px;
}

.bl_initProfile {
  padding: 40px 0 0;
  color: #282828;
  font-size: 16px;
  font-weight: 700;
}
@media screen and (min-width: 501px) {
    .bl_initProfile {
        padding: 70px 0 0;
    }
}
.bl_initProfile .bl_initProfile_inner {
  height: 100%;
}
.bl_initProfile .bl_initProfile_item_ttl {
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 0.044em;
  text-align: center;
  margin-bottom: 63px;
  color: #282828;
    
}
.bl_initProfile .bl_initProfile_item_ttl span {
  display: block;
  font-size: 15px;
  padding-top: 14px;
  color: #676767;
}
.bl_initProfile_section_ttl {
  margin-top: 12px;
  margin-bottom: 18px;
  font-weight: 600;
  font-size: 16px;
  color: #282828;
}
.bl_initProfile_section_ttl--flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.bl_initProfile_section_ttl_reset {
    font-size: 12px;
    color: var(--color-primary);
}
.bl_initProfile_section_ttl_subText {
    font-size: 12px;
    color: var(--color-natural-gray-400);
    margin-left: 10px;
}
.bl_initProfile .bl_initProfile_item_cont {
  padding: 0px 18px 30px;
  height: 400px;
}
.bl_initProfile .bl_initProfile_item_cont.bl_initProfile_item_cont__wide {
  padding-left: 0;
  padding-right: 0;
}
.bl_initProfile .bl_initProfile_cont_memo {
  padding-top: 12px;
  font-size: 12px;
  line-height: 1.8;
  color: #2F2F2F;
  font-weight: 400;
}
.bl_initProfile_cont_memo .bl_initProfile_cont_memo_red {
  color: red;
}
.bl_initProfile_section__agreement {
  margin-top: 16px;
  border-top: 1px solid #e0e0e0;
  padding-top: 20px;
}

.bl_customCheckbox {
  display: flex;
  align-items: flex-start; /* 複数行テキストでも頭を揃える */
  margin-bottom: 15px;
}

/* ネイティブのチェックボックスは非表示 */
.bl_customCheckbox_input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

/* ラベルにアイコン用の余白を確保 */
.bl_customCheckbox_label {
  position: relative;
  padding-left: 28px;      /* アイコン幅＋余白 */
  font-size: 12px;
  line-height: 1.6;
  color: #333;
  cursor: pointer;
}

/* 未チェック時のアイコン（グレー） */
.bl_customCheckbox_label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
transform: translateY(-50%);
  width: 20px;
  height: 20px;
  background-image: url("/images/profile_icon_check_gray.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* チェック時のアイコン（ピンク） */
.bl_customCheckbox_input:checked + .bl_customCheckbox_label::before {
    background-image: url("/images/profile_icon_check_pink.svg");
}

/* リンクのスタイル（任意・既存デザインに合わせて調整） */
.bl_customCheckbox_label a {
    text-decoration: none;
    color: var(--color-primary);
}
.bl_initProfile_section_option-ttl {
  color: #939393;
  margin: 42px auto;
  border-top: dashed 2px #939393;
}
.bl_initProfile_section_option-ttl span {
  display: block;
  margin: -14px auto;
  width: fit-content;
  padding: 0 10px;
  background: #fff;
}

.bl_initProfile .bl_initProfile_cont_skipFlg {
  display: flex;
  column-gap: 6px;
  font-size: 13px;
  color: #444;
  justify-content: center;
  margin-right: 19px;
  margin-top: 20px;
}
.bl_initProfile .bl_initProfile_cont_skipFlg label {
  padding-bottom: 2px;
}


.bl_initProfile .bl_initProfile_fullname {
  display: flex;
  column-gap: 10px;
}
.bl_initProfile .bl_initProfile_fullname .bl_initProfile_input.bl_initProfile_input__freeWard {
  flex: 1;
}
.bl_initProfile .bl_initProfile_fullname .bl_initProfile_input.bl_initProfile_input__freeWard input {
  font-size: 16px;
  padding-right: 5px;
}
.bl_initProfile .bl_initProfile_born {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.bl_initProfile .bl_initProfile_born > p {
  padding-left: 4px;
  padding-right: 4px;
}
.bl_initProfile .bl_initProfile_hopeOfReceiving {
  /* display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 14px;
     -moz-column-gap: 14px;
          column-gap: 14px;
  -webkit-box-align: center;
      -ms-flex-align: center; 
          align-items: center;*/
  display: flex;
  column-gap: 14px;
  row-gap: 14px;
  flex-wrap: wrap;
}
.bl_initProfile .bl_initProfile_hopeOfReceiving >  input {
  display: none !important;
}
.bl_initProfile .bl_initProfile_hopeOfReceiving > label {
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 600;
  font-size: 13px;
  line-height: 1.2;
  /* padding: 0.25em 0; */
  color: #bbb;
  border: 2px solid #bbb;
  border-radius: 4px;
  height: 72px;
  transition:  all 0.2s;
  cursor: pointer;
  width: calc(50% - 7px);
}
.bl_initProfile .bl_initProfile_hopeOfReceiving > input:checked + label {
  color: var(--color-primary);
  border: 2px solid var(--color-primary);
  font-weight: 600;
}
.bl_initProfile .bl_initProfile_input {
  display: block;
  font-size: 14px;
  position: relative;
  background: #f4f4f4;
  border-radius: 5px;
}
.bl_initProfile .bl_initProfile_input input {
  font-size: 14px;
  display: block;
  max-width: 100%;
  color: #282828;
  font-weight: 400;
}

.bl_initProfile .bl_initProfile_input input::-webkit-input-placeholder {
  color: var(--color-natural-gray-400); 
  font-weight: 500;
  font-size: 13px;
}
.bl_initProfile .bl_initProfile_input input::-moz-placeholder {
  color: var(--color-natural-gray-400); 
  font-weight: 500;
  font-size: 13px;
}
.bl_initProfile .bl_initProfile_input input:-ms-input-placeholder {
  color: var(--color-natural-gray-400); 
  font-weight: 500;
  font-size: 13px;
}
.bl_initProfile .bl_initProfile_input input::-ms-input-placeholder {
  color: var(--color-natural-gray-400); 
  font-weight: 500;
  font-size: 13px;
}
.bl_initProfile .bl_initProfile_input input::placeholder {
  color: var(--color-natural-gray-400); 
  font-weight: 500;
  font-size: 13px;
}
.bl_initProfile .bl_initProfile_input select {
  width: 100%;
  font-size: 14px;
  font-weight: 500;
  text-align: left;
  padding: 13px 16px 13px 16px;
}
.bl_initProfile .bl_initProfile_input select.is-placeholder {
  color: var(--color-natural-gray-400); 
  font-size: 13px;
}
.bl_initProfile_input.bl_initProfile_input__select.experience,
.bl_initProfile_input.bl_initProfile_input__select.salary,
.area-selector__display,
.bl_initProfile_input.bl_initProfile_input__select.residence,
.bl_initProfile_input.bl_initProfile_input__select.desiredSalary,
.bl_initProfile_input.bl_initProfile_input__select.desiredShift,
.bl_initProfile_input.bl_initProfile_input__select.motivation,
.bl_initProfile_input.bl_initProfile_input__select.height,
.bl_initProfile_input.bl_initProfile_input__select.body {
  position: relative;
}
.bl_initProfile_input.bl_initProfile_input__select.experience::after,
.bl_initProfile_input.bl_initProfile_input__select.salary::after,
.area-selector__display::after,
.bl_initProfile_input.bl_initProfile_input__select.residence::after,
.bl_initProfile_input.bl_initProfile_input__select.desiredSalary::after,
.bl_initProfile_input.bl_initProfile_input__select.desiredShift::after,
.bl_initProfile_input.bl_initProfile_input__select.motivation::after,
.bl_initProfile_input.bl_initProfile_input__select.height::after,
.bl_initProfile_input.bl_initProfile_input__select.body::after {
  content: "";
  position: absolute;
  background-image: url(../images/select_bottom_arrow.svg);
  filter: brightness(0) saturate(100%) invert(70%) sepia(54%) saturate(1316%) hue-rotate(299deg) brightness(102%) contrast(104%);
  width: 24px;
  height: 24px;
  background-size: cover;
  background-repeat: no-repeat;
  right: 8px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  pointer-events: none;
}
.bl_initProfile .bl_initProfile_input .bl_xBtn {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.bl_initProfile .bl_initProfile_input.bl_initProfile_input__freeWard input {
  width: 100%;
  font-weight: 500;
  padding: 13px 16px;
  padding-right: 10px;
  background: #f4f4f4;
  border-radius: 8px;
}
/* .bl_initProfile .bl_initProfile_input.bl_initProfile_input__freeWard input::-webkit-input-placeholder {
  font-size: 15px;
}
.bl_initProfile .bl_initProfile_input.bl_initProfile_input__freeWard input::-moz-placeholder {
  font-size: 15px;
}
.bl_initProfile .bl_initProfile_input.bl_initProfile_input__freeWard input:-ms-input-placeholder {
  font-size: 15px;
}
.bl_initProfile .bl_initProfile_input.bl_initProfile_input__freeWard input::-ms-input-placeholder {
  font-size: 15px;
}
.bl_initProfile .bl_initProfile_input.bl_initProfile_input__freeWard input::placeholder {
  font-size: 15px;
} */
.bl_initProfile .bl_initProfile_input.bl_initProfile_input__bornY, .bl_initProfile .bl_initProfile_input.bl_initProfile_input__bornM, .bl_initProfile .bl_initProfile_input.bl_initProfile_input__bornD {
  position: relative;
  min-width: 68px;
  width: calc((100% - 40px) / 3);
}
.bl_initProfile .bl_initProfile_input.bl_initProfile_input__bornY::after, .bl_initProfile .bl_initProfile_input.bl_initProfile_input__bornM::after, .bl_initProfile .bl_initProfile_input.bl_initProfile_input__bornD::after {
  content: "";
  position: absolute;
  background-image: url(../images/select_bottom_arrow.svg);
  filter: brightness(0) saturate(100%) invert(70%) sepia(54%) saturate(1316%) hue-rotate(299deg) brightness(102%) contrast(104%);
  width: 24px;
  height: 24px;
  background-size: cover;
  background-repeat: no-repeat;
  right: 8px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  pointer-events: none;
}
.bl_initProfile .bl_initProfile_input.bl_initProfile_input__bornY select, .bl_initProfile .bl_initProfile_input.bl_initProfile_input__bornM select, .bl_initProfile .bl_initProfile_input.bl_initProfile_input__bornD select {
  padding: 13px 16px 13px 16px;
  letter-spacing: 0.1em;
}
.bl_initProfile .bl_initProfile_input.bl_initProfile_input__bornY.empty select, .bl_initProfile .bl_initProfile_input.bl_initProfile_input__bornM.empty select, .bl_initProfile .bl_initProfile_input.bl_initProfile_input__bornD.empty select {
  color: var(--color-natural-gray-400);
  font-size: 14.8px;
}
.bl_initProfile .bl_initProfile_input.bl_initProfile_input__checkbox {
  border-bottom: none;
  overflow-y: auto;
  /* max-height: calc(100vh - 280px); */
  /* height: 100%; */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 8px;
  height: 340px;
}
.bl_initProfile .bl_initProfile_input.bl_initProfile_input__checkbox > input {
  display: none !important;
}
.bl_initProfile .bl_initProfile_input.bl_initProfile_input__checkbox label {
  display: block;
  font-weight: 600;
  font-size: 20px;
  padding: 0.25em 0;
  padding-left: 30px;
  color: #D0D0D0;
  -webkit-transition: color 0.1s;
  transition: color 0.1s;
  position: relative;
  cursor: pointer;
}
.bl_initProfile .bl_initProfile_input.bl_initProfile_input__checkbox label:before {
  -webkit-transition: opacity 0.1s;
  transition: opacity 0.1s;
  content: "";
  position: absolute;
  background-image: url("../images/pink_check_icon.svg?20250729");
  width: 20px;
  height: 20px;
  background-size: cover;
  background-repeat: no-repeat;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  opacity: 0;
}
.bl_initProfile .bl_initProfile_input.bl_initProfile_input__checkbox input:checked + label {
  color: var(--color-primary);
}
.bl_initProfile .bl_initProfile_input.bl_initProfile_input__checkbox input:checked + label:before {
  opacity: 1;
}
.bl_initProfile .bl_initProfile_input .bl_initProfile_input_hopeOfReceiving {
  width: 96%;
}
.bl_initProfile .bl_initProfile_input .bl_initProfile_input_hopeOfReceiving select {
  text-align: left;
  padding: 10px 20px;
}

.bl_initProfile .bl_initProfile_nextBtn {
  color: #fff;
  bottom: 0;
  background-color:var(--color-primary-dark);
  -webkit-transition: all 0.6s;
  transition: all 0.6s;
}
.bl_initProfile .bl_initProfile_nextBtn:disabled {
  background: #f5f5f5;
  color: #bbb;
  -webkit-transition: all 0.6s;
  transition: all 0.6s;
}
.bl_initProfile .bl_initProfile_nextBtn.is-loading {
  background: #ccc;
  color: #888;
  cursor: not-allowed;
  opacity: 0.7;
  -webkit-transition: all 0.6s;
  transition: all 0.6s;
}
.bl_initProfile .bl_initProfile_nextBtn.bl_initProfile_nextBtn__blocking {
  margin-bottom: 30px;
  width: calc(100% - 32px);
}
.bl_initProfile .bl_initProfile_nextBtn.bl_initProfile_nextBtn__blocking:after {
  content: "";
  display: block;
  height: 30px;
  width: 100%;
  position: absolute;
  bottom: -30px;
  background-color: #fff;
}

.bl_initProfile_nextBtn.bl_initProfile_nextBtn__area {
  position: fixed;
  width:calc(100% - 20px);
  left:10px;
  bottom:20px;
}
.bl_initProfile_nextBtn.bl_initProfile_nextBtn__area::after {
  content:'';
  width:calc(100% - 20px);
  height: 24px;
  background-color: #fff;
  position: absolute;
  left:10px;
  bottom: -24px;
}
.bl_initProfile .bl_initProfile_item_cont.bl_initProfile_item_cont__area {
  height: auto;
  padding-bottom:60px;
}
.bl_initProfile .bl_initProfile_item_cont.bl_initProfile_item_cont__area > .bl_checkboxUnit {
  display: flex;
  flex-direction: column;
  row-gap: 15px;
}
.bl_initProfile .bl_initProfile_item_cont.bl_initProfile_item_cont__area > .bl_checkboxUnit > label {
  padding: 10px;
  text-align: center;
  border: 2px solid #bbb;
  border-radius: 4px;
  width: 100%;
  margin: 0;
  font-weight: 500;
  color: #bbb;
}
.bl_initProfile .bl_initProfile_item_cont.bl_initProfile_item_cont__area > .bl_checkboxUnit label:before {
  content: none !important;
}
.bl_initProfile .bl_initProfile_item_cont.bl_initProfile_item_cont__area input[type=radio]:checked + label {
  border: none;
  background-color: var(--color-primary);
  
  color: #fff;
}

.bl_initProfile_item_cont__area_area .bl_checkboxUnit {
  display: flex;
  flex-wrap: wrap;
  column-gap: 12px;
  row-gap: 12px;
}
.bl_initProfile_item_cont__area_area > .bl_checkboxUnit > label {
  padding: 8px;
  text-align: center;
  border: 2px solid #bbb;
  border-radius: 4px;
  width: calc(50% - 6px);
  margin: 0;
  font-weight: 500;
  color: #bbb;
}
.bl_initProfile_item_cont__area_area > .bl_checkboxUnit label:before {
  content: none !important;
}
.bl_initProfile .bl_initProfile_item_cont__area_area input[type=checkbox]:checked + label,
.bl_initProfile .bl_initProfile_item_cont__area_area input[type=radio]:checked + label
{
  color: var(--color-primary);
  border: 2px solid var(--color-primary);
}


.bl_initProfile .bl_initProfile_searchForBlocking {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 10px;
     -moz-column-gap: 10px;
          column-gap: 10px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.bl_initProfile .bl_initProfile_searchForBlocking input {
  background-color: #f5f5f5;
  width: 100%;
  padding: 1px 1em;
  height: 44px;
  border-radius: 22px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 14px;
}
.bl_initProfile .bl_initProfile_searchForBlocking input::-webkit-input-placeholder {
  color: #B2B2B2;
}
.bl_initProfile .bl_initProfile_searchForBlocking input::-moz-placeholder {
  color: #B2B2B2;
}
.bl_initProfile .bl_initProfile_searchForBlocking input:-ms-input-placeholder {
  color: #B2B2B2;
}
.bl_initProfile .bl_initProfile_searchForBlocking input::-ms-input-placeholder {
  color: #B2B2B2;
}
.bl_initProfile .bl_initProfile_searchForBlocking input::placeholder {
  color: #B2B2B2;
}
.bl_initProfile .bl_initProfile_searchForBlocking a {
  display: block;
  width: 28px;
  height: 28px;
  background-repeat: no-repeat;
  background-image: url("../images/icon_search.png");
  background-size: 100%;
}

.bl_initProfilePage .bl_fixedNav {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  max-width: 500px;
  margin: 0 auto;
  background: #f8faf8;
  display: flex;
  padding: 20px 0;
  box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  padding-left: 10px;
  padding-right: 10px;
}

.bl_initProfilePage .bl_fixedNav_btn {
  flex: 1;
  margin: 0 auto;
  padding: 12px 16px;
  border: none;
  border-radius: 30px;
  font-size: 16px;
  text-align: center;
  height: 48px;
  max-width: 359px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  letter-spacing: 0.07em;
}

.bl_initProfilePage .bl_fixedNav_btn--back {
  flex: inherit;
  background: #e5e5e5;
  color: #666;
  margin-right: 10px;
  width: 48px;
  position: relative;
}
.bl_initProfilePage .bl_fixedNav_btn--back::before {
  content: "";
  width: 14px;
  height: 14px;
  border-left: solid 3px #fff;
  border-bottom: solid 3px #fff;
  position: absolute;
  top: calc(50% - 0.5px);
  left: calc(50% + 2px);
  transform: translate(-50%, -50%)rotate(45deg);
}

.bl_initProfilePage .bl_fixedNav_btn--back:hover {
  background: #e0e0e0;
}

.bl_initProfilePage .bl_fixedNav_btn--next,
.bl_initProfilePage .bl_fixedNav_btn--submit {
  background: var(--color-primary-dark);
  color: #fff;
}

.bl_initProfilePage .bl_fixedNav_btn--next:hover,
.bl_initProfilePage .bl_fixedNav_btn--submit:hover {
  background: var(--color-primary-dark);
}

.bl_initProfilePage .bl_fixedNav_btn:disabled {
  background: #d9d9d9;
  color: #fff;
  cursor: not-allowed;
}

.bl_initProfilePage .bl_fixedNav_btn:disabled:hover {
  background: #e0e0e0;
}

.bl_initProfilePage .bl_progress_header {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 10px;
  gap: 5px;
}

.bl_initProfilePage .bl_progress_icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
}

.bl_initProfilePage .bl_progress_title {
  font-size: 12px;
  font-weight: 600;
  color: #676767;
}

.bl_initProfilePage .bl_progress_count {
  font-size: 12px;
  font-weight: 600;
  color: #676767;
  margin-left: 10px;
}

.bl_initProfilePage .bl_blocking_tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
  margin-bottom: 16px;
}

.bl_initProfilePage .bl_blocking_tag {
  display: inline-flex;
  align-items: center;
  background-color: #fff;
  border: 1px solid #ff84a1;
  border-radius: 5px;
  padding: 6px 6px;
  font-size: 14px;
  color: #ff84a1;
}

.bl_initProfilePage .bl_blocking_tag_text {
  margin-right: 8px;
  padding-left: 4px;
}

.bl_initProfilePage .bl_blocking_tag_type {
  font-size: 12px;
  opacity: 0.7;
}

.bl_initProfilePage .bl_blocking_tag_remove {
  background: none;
  color: var(--color-primary);
  font-size: 12px;
  font-weight: bold;
  cursor: pointer;
  padding: 0;
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  transition: background-color 0.2s;
  border: solid 1px var(--color-primary);
}

.bl_initProfilePage .bl_blocking_tag_remove:hover {
  background-color: var(--color-primary);
  color: white;
}

.bl_initProfilePage .bl_blocking_list {
  max-height: 200px;
  overflow-y: auto;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  margin-top: 16px;
}

.bl_initProfilePage .bl_blocking_item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  border-bottom: 1px solid #f0f0f0;
  cursor: pointer;
  transition: background-color 0.2s;
  font-weight: 500;
}

.bl_initProfilePage .bl_blocking_item:hover {
  background-color: #f8f8f8;
}

.bl_initProfilePage .bl_blocking_item:last-child {
  border-bottom: none;
}

.bl_initProfilePage .bl_blocking_item_info {
  display: flex;
  align-items: center;
  flex: 1;
}

.bl_initProfilePage .bl_blocking_item_label {
  background-color: #ff84a1;
  color: white;
  font-size: 12px;
  padding: 4px 8px;
  border-radius: 7px;
  margin-right: 12px;
  min-width: 36px;
  text-align: center;
  white-space: nowrap;
}

.bl_initProfilePage .bl_blocking_item_label.group {
  background-color: #303030;
}

.bl_initProfilePage .bl_blocking_item_name {
  font-size: 14px;
  color: #7e7e7e;
}

.bl_initProfilePage .bl_blocking_item_check {
  width: 24px;
  height: 24px;
  border: 2px solid #ddd;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  color: white;
  transition: all 0.2s;
}

.bl_initProfilePage .bl_blocking_item_check.active {
  background-color: #ff84a1;
  border-color: #ff84a1;
}




/*
  * 初期プロフィール入力 完了
  */
.bl_initProfileCompletePage {
  background-color: var(--color-primary);
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
  position: relative;
  overflow-y: hidden;
  background-size: 130% 130%;
  background-attachment: fixed;
  -webkit-animation: GradietionAnimation 8s linear infinite;
          animation: GradietionAnimation 8s linear infinite;
  -webkit-animation-direction: alternate;
          animation-direction: alternate;
  color: #fff;
  position: relative;
  height: -webkit-fill-available;
}
.bl_initProfileCompletePage .bl_initProfileCompletePage_cont {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center;
  width: 300px;
}
.bl_initProfileCompletePage .bl_initProfileCompletePage_ttl {
  font-size: 22px;
  font-weight: 600;
  padding-bottom: 20px;
}
.bl_initProfileCompletePage .bl_initProfileCompletePage_desc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 20px;
}
.bl_initProfileCompletePage .bl_initProfileCompletePage_goBtn {
  background-color: #fff;
  color: var(--color-primary);
  font-weight: 600;
  position: absolute;
  bottom: 20px;
  left:10px;
  width: calc(100% - 20px);
}
.bl_initProfileCompletePage .bl_initProfileCompletePage_lineBtn {
  background-color: #24be50;
  color: #fff;
  font-weight: 600;
  position: absolute;
  bottom: 90px;
  left:10px;
  width: calc(100% - 20px);
}


/*
* マイページ（女性）
*/
.bl_profilePage .bl_profilePage_bcInfo {
  margin-top: 10px;
  padding-top: 30px;
  padding-bottom: 50px;
}
.bl_profilePage .bl_profilePage_bcInfo_list {
  padding-top: 20px;
}

.bl_profile .bl_profile_photo {
  max-width: 390px;
  max-height: 390px;
  width: 100vw;
  height: 100vw;
  margin-left: auto;
  margin-right: auto;
  background-color: #D4D4D4;
}
.bl_profile .bl_profile_photo .swiper-slide {
  height: 100%;
  width: 100%;
  overflow: hidden;
  position: relative;
  background-size: cover;
  background-position: center;
}

.bl_profile .bl_profile_photo_thum {
    /* max-width: 390px; */
    max-height: 390px;
    width: 100vw;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0px;
    position: relative;
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 15px;
}
.bl_profile .bl_profile_photo_thum .swiper-slide {
    background-size: cover;
    background-position: center;
    height: 102px;
    border-radius: 15px;
}

.bl_profile_photo_thum .swiper-button-next,
.bl_profile_photo_thum .swiper-button-prev,
.bl_storeDetail_photo_thum .swiper-button-next,
.bl_storeDetail_photo_thum .swiper-button-prev {
  display: none !important;
}
.bl_storeDetail .bl_storeDetail_photo_thum .swiper-button-next[tabindex="-1"],
.bl_storeDetail .bl_storeDetail_photo_thum .swiper-button-prev[tabindex="-1"],
.bl_storeDetail .bl_storeDetail_photo_thum .swiper-button-next[tabindex="-1"],
.bl_storeDetail .bl_storeDetail_photo_thum .swiper-button-prev[tabindex="-1"] {
  /* display: none; */
}


.bl_profile .bl_profile_txt {
  text-align: center;
  padding-top: 15px;
  padding-bottom: 25px;
  position: relative;
}
.bl_profile .bl_profile_name {
  position: relative;
  font-size: 22px;
}
.bl_profile .bl_profile_name_txt {
  font-size: 22px;
  font-weight: 600;
}
.bl_profile .bl_profile_name_txt_last {
  padding-right: 0.2em;
}
.bl_profile .bl_profile_name_txt_first {
  
}
.bl_profile .bl_profile_name .bl_profile_name_rankIcon{
  display: none !important; /* 0224-1001 CSSでランクバッジを非表示化 */
  position: absolute;
  width: 1em;
  left: 5px;
  top: calc(50% + 1px);
  transform: translateY(-50%);
}
.bl_profile .bl_profile_info {
  font-size: 13px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 1rem;
     -moz-column-gap: 1rem;
          column-gap: 1rem;
}
.bl_profile .bl_profile_name {
  position: relative;
  padding-left: 40px;
  padding-right: 40px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}
.bl_profile .bl_profile_name_hasLike {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.bl_profile .bl_profile_comment {
  padding-top: 16px;
}
.bl_profile .bl_profile_favoBtn {
  position: absolute;
  top: 15px;
  right: 10px;
}

.bl_profileList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 14px;
  margin-left: auto;
  margin-right: auto;
}
.bl_profileList .bl_profileList_row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 16px;
     -moz-column-gap: 16px;
          column-gap: 16px;
}
.bl_profileList .bl_profileList_head {
  width: 40%;
  padding-left: 6px;
}
.bl_profileList .bl_profileList_body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  color: var(--color-primary);
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  word-wrap: break-word;
  width: calc(60% - 16px);
  /* text-align: right; */
}
.bl_profileList .bl_profileList_body a {
  color: #508ff3;
  width: fit-content;
}
.bl_profileList_body .bl_profileList_body_fullname {
  display: flex;
  column-gap: 10px;
}
.bl_profileList_body .bl_profileList_body_fullname .bl_bgGrayInput {
  flex: 1;
}
.bl_profileList .bl_profileList_body_affiliater {
  display: flex;
  flex-wrap: wrap;
}
.bl_profileList .bl_profileList_body_affiliater_img {
  width: 20px;
  height: 20px;
  border-radius: 10px;
  background-size: cover;
  background-position: center;
  margin-right: 5px;
}

.bl_profileList .bl_profileList_body_hopeOfReceiving.bl_select_wrapper {
  /* width: calc(100% - 30.5px); */
  padding: 0 6px;
}
.bl_profileList .bl_profileList_body_hopeOfReceiving.bl_select_wrapper::after {
  right: 14px;
}
.bl_profileList_body_hopeOfReceiving_yen {
  width: 33.5px;
}

.bl_profileList .bl_profileList_body_nest {
  padding-left: 1.5em;
  padding-bottom: 1.5em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 5px;
  width: 100%;
}
.bl_profileList .bl_profileList_body_nest:last-child {
  padding-bottom: 0;
}
.bl_profileList .bl_profileList_body_nestHeading {
  font-weight: bold;
  padding-bottom: 10px;
}

.bl_profileList .bl_profileList_body_photoLogBtn {
  color: #828282;
  font-weight: 400;
  background: #fff;
  border: 1px solid #828282;
  border-radius: 5px;
  padding: 4px 8px;
}

.bl_profileList .bl_profileList_row.bl_profileList_row__col {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.bl_profileList .bl_profileList_row.bl_profileList_row__col .bl_profileList_head {
  width: 100%;
}
.bl_profileList .bl_profileList_row.bl_profileList_row__col .bl_profileList_body {
  width: 100%;
  padding-top: 0;
  padding-left: 20px;
}
.bl_profileList .bl_profileList_tags input[type=checkbox]:not(:checked) + label.bl_tag {
  color: #b2b2b2;
  border-color: #b2b2b2;
}
.bl_profileList .bl_profileList_row.bl_profileList_row__hasError {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.bl_profileList .bl_profileList_row_error {
  width: 100%;
}

.bl_profileList .bl_profileList_row .bl_profileList_row_error:last-child {
  padding-bottom: 13px;
}

.bl_profileList .bl_profileList_row__col_error {
  width: 100%;
  padding-left: 20px;
  padding-bottom: 4px;
}
.bl_profileList .bl_profileList_row__col_error:last-child {
  padding-bottom: 13px;
}

.bl_profileList.bl_profileList__e {
  row-gap: 0;
}
.bl_profileList.bl_profileList__e .bl_profileList_row {
  border-bottom: 1px solid #f5f5f5;
}
.bl_profileList.bl_profileList__e > .bl_profileList_row:last-child {
  border-bottom: none;
}
.bl_profileList.bl_profileList__e .bl_profileList_head,
.bl_profileList.bl_profileList__e .bl_profileList_body {
  padding-top: 13px;
  padding-bottom: 13px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.bl_profileList.bl_profileList__e .bl_profileList_body {
  padding-right: 6px;
  overflow-y: auto;
  overflow-x: hidden;
  position: relative;
}
.bl_profileList.bl_profileList__e .bl_profileList_body.bl_profileList_body_has_progressNum {
  padding-right: 36px;
}
.bl_profileList.bl_profileList__e .bl_profileList_body.bl_profileList_body__col {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.bl_profileList.bl_profileList__e input[type=text],
.bl_profileList.bl_profileList__e input[type=time],
.bl_profileList.bl_profileList__e input[type=number],
.bl_profileList.bl_profileList__e input[type=email],
.bl_profileList.bl_profileList__e input[type=tel],
.bl_profileList.bl_profileList__e textarea,
.bl_profileList.bl_profileList__e select {
  padding: 0.5em 0.5em;
  width: 100%;
  color: var(--color-primary);
}
.bl_profileList.bl_profileList__e *::-webkit-input-placeholder {
  color: #B2B2B2;
}
.bl_profileList.bl_profileList__e *::-moz-placeholder {
  color: #B2B2B2;
}
.bl_profileList.bl_profileList__e *:-ms-input-placeholder {
  color: #B2B2B2;
}
.bl_profileList.bl_profileList__e *::-ms-input-placeholder {
  color: #B2B2B2;
}
.bl_profileList.bl_profileList__e *::placeholder {
  color: #B2B2B2;
}
.bl_profileList.bl_profileList__e .bl_checkboxUnit input:checked + label {
  color: var(--color-primary);
}
.bl_profileList.bl_profileList__e .bl_profileList_body_bornY,
.bl_profileList.bl_profileList__e .bl_profileList_body_bornM,
.bl_profileList.bl_profileList__e .bl_profileList_body_bornD {
  margin-right: 2px;
}
.bl_profileList.bl_profileList__e .bl_profileList_body_bornY select,
.bl_profileList.bl_profileList__e .bl_profileList_body_bornM select,
.bl_profileList.bl_profileList__e .bl_profileList_body_bornD select {
  padding-top: 0.2em;
  padding-bottom: 0.2em;
}
.bl_profileList.bl_profileList__e .bl_profileList_body_bornM,
.bl_profileList.bl_profileList__e .bl_profileList_body_bornD {
  margin-left: 2px;
}
.bl_profileList.bl_profileList__e .bl_profileList_body_progress {
  position: absolute;
  right: 2px;
  font-size: 13px;
  font-weight: bold;
  color: #6F2855;
  /* top: 20.4px; */
}

/*
* お店 マイページ
*/
.bl_profileList.bl_profileList__store .bl_profileList_body {
  color: var(--color-primary);
}

/*
* お店 マイページ編集
*/
.bl_profileList.bl_profileList__e.bl_profileList__store .bl_profileList_body {
  color: var(--color-primary);
}
.bl_profileList.bl_profileList__e.bl_profileList__store input[type=text],
.bl_profileList.bl_profileList__e.bl_profileList__store input[type=time],
.bl_profileList.bl_profileList__e.bl_profileList__store input[type=number],
.bl_profileList.bl_profileList__e.bl_profileList__store textarea,
.bl_profileList.bl_profileList__e.bl_profileList__store select {
  color: var(--color-primary);
}
.bl_profileList.bl_profileList__e.bl_profileList__store .bl_checkboxUnit input:checked + label:before {
  background-image: url("../images/purple_check_icon.svg?20250729");
}
.bl_profileList.bl_profileList__e.bl_profileList__store .bl_checkboxUnit input:checked + label {
  color: var(--color-primary);
}

/*
* マイページ(編集)
*/
.bl_profileEPage {
  padding-bottom: 70px;
}
.bl_profileEPage .bl_profileEPage_top {
  padding-bottom: 30px;
}
.bl_profileEPage .bl_profileEPage_mainPhoto {
  max-width: 390px;
  max-height: 390px;
  width: 100vw;
  height: 100vw;
  margin-left: auto;
  margin-right: auto;
}
.bl_profileEPage .bl_profPhotoUpload .bl_profPhotoUpload_subPhoto {
  background-size: cover;
  background-position: center;
}
.bl_profileEPage .bl_profileEPage_bcInfo {
  margin-top: 10px;
  padding-bottom: 50px;
}
.bl_profileEPage .bl_profileEPage_photo.bl_profPhotoUpload {
  width: 100%;
  max-width: 100%;
}
.bl_profileEPage .bl_profileEPage_photo.bl_profPhotoUpload .bl_profPhotoUpload_mainPhoto {
  padding: 0;
  width: 100vw;
  height: 75vw;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  border: none;
  background-size: cover;
  background-position: center;
}
.bl_profileEPage .bl_profileEPage_photo.bl_profPhotoUpload .bl_profPhotoUpload_mainPhoto:after {
  display: none;
}
.bl_profileEPage .bl_profileEPage_photo.bl_profPhotoUpload .bl_profPhotoUpload_mainPhoto a {
  position: absolute;
  bottom: 30px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background: var(--color-primary-dark);
  color: #fff;
}
.bl_profileEPage .bl_profileEPage_photo.bl_profPhotoUpload .bl_profPhotoUpload_subPhoto_unit {
  padding: 0 35px;
  max-width: 460px;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 40px;
}
.bl_profileEPage .bl_profileEPage_comment {
  border-radius: 4px;
  width: 100%;
  max-width: 460px;
  margin-left: auto;
  margin-right: auto;
  height: 120px;
  padding: 0 35px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  row-gap: 5px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.bl_profileEPage .bl_profileEPage_comment textarea {
  width: 100%;
  min-height: 120px;
}
.bl_profileEPage .bl_profileEPage_comment_error.bl_inputError {
  padding-left: 0;
}
.bl_profileEPage .bl_profileEPage_bcInfo {
  padding-top: 35px;
}
.bl_profileEPage.bl_storeMypageEdit .bl_profPhotoUploadModal_cont {
  background-color: #fff;
  top: auto;
  bottom: 0;
  transform: none;
}
.bl_profileEPage.bl_storeMypageEdit .bl_profPhotoUploadModal_cont .bl_squareBtn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #828282;
    font-weight: 500;
    background: #fff;
    border: 2px solid #828282;
    border-radius: 5px;
    height: 40px;
    font-size: 14px;
    width: 100%;
}
.bl_profileEPage.bl_storeMypageEdit .bl_profPhotoUploadModal_cont .bl_squareBtn img {
  filter: none;
}
@media screen and (max-width: 500px) {
  .bl_profileEPage.bl_girlMypageEdit .bl_profileEPage_photo.bl_profPhotoUpload .bl_profPhotoUpload_mainPhoto {
    height: 100vw;
  }
}


/*
* 女性詳細ページ
*/
.bl_girlDetailPage {
  /* padding-bottom: 80px; */
}

/*
* 退会完了ページ
*/
.bl_withdrawalPage .bl_withdrawalPage_ttl {
  font-size: 18px;
  line-height: 79px;
  text-align: center;
  border-bottom: 1px solid;
}
.bl_withdrawalPage .bl_withdrawalPage_desc {
  padding-top: 38px;
  padding-bottom: 38px;
  text-align: center;
  line-height: 2;
}

/*
* お店詳細ページ
*/
.bl_storeDetailPage .bl_storeDetailPage_bcInfo {
  margin-top: 10px;
  padding-top: 30px;
  padding-bottom: 50px;
}
.bl_storeDetailPage .bl_storeDetailPage_bcInfo .bl_profileList {
  padding-top: 20px;
}
.bl_storeDetailPage .swiper-pagination-bullet-active {
  background-color: var(--color-primary);
}

/*
* お店詳細ページ（女性が見たページのみ特定する用）
*/
.bl_storeDetailForGirlPage {
  padding-bottom: 80px;
}

/*
* お店 検索結果
*/
.bl_storeDetail .bl_storeDetail_photo {
  max-width: 500px;
  width: 100vw;
  /* max-height: 375px; */
  /* height: 75vw; */
  margin-left: auto;
  margin-right: auto;
  aspect-ratio: 4 / 3;
}
.bl_storeDetail .bl_storeDetail_photo .swiper-slide {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.bl_storeDetail .bl_storeDetail_photo_thum {
    max-width: 500px;
    width: 100vw;
    /* max-height: 390px; */
    margin-left: auto;
    margin-right: auto;
    margin-top: 20px;
    padding-bottom: 15px;
    padding-left: 1rem;
}
.bl_storeDetail .bl_storeDetail_photo_thum .swiper-slide {
    background-size: cover;
    background-position: center;
    /* height: 76px; */
    aspect-ratio: 4 / 3;
    border-radius: 15px;
}



@media screen and (max-width: 500px) {
  .bl_profile_photo_thum,
  .bl_storeDetail_photo_thum {
    padding-left: 12px;
    padding-right: 2px;
  }
  .bl_girlDetailPage .bl_profile .bl_profile_photo_thum .swiper-slide,
  .bl_profile .bl_profile_photo_thum .swiper-slide {
    /* height: 26vw; */
  }
  .bl_storeDetail .bl_storeDetail_photo_thum .swiper-slide {
    /* height: 21vw; */
  }
}

.bl_storeDetail .bl_storeDetail_txt {
  padding-top: 15px;
  padding-bottom: 20px;
  padding-left: 1rem;
  padding-right: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 10px;
  position: relative;
}
.bl_storeDetail .bl_storeDetail_name {
  font-size: 22px;
  font-weight: 600;
  padding-right: 50px;
}
.bl_storeDetail .bl_storeDetail_subInfo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 5px;
}
.bl_storeDetail .bl_storeDetail_desc {
  font-size: 13px;
  word-wrap: break-word;
}
.bl_storeDetail .bl_storeDetail_heart {
  position: absolute;
  top: 12px;
  right: 15px;
}
.bl_storeDetail_employmentOfferStatus {
  display: block;
  height: 30px;
  width: fit-content;
  margin: 10px auto;
}

/*
* いいねされた女の子一覧
* お気入り一覧
*/
.bl_likedGirlsPage,
.bl_favoriteGirlsPage {
  padding-bottom: 80px;
}

.bl_likedGirlsPage_head h1,
.bl_favoriteGirlsPage_head h1 {
  height: 90px;
  font-size: 16px;
  font-weight: 600;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/*
* 女の子一覧
*/
.bl_girlListPage .bl_girlListPage_list {
  padding-top: 20px;
}
.bl_girlListPage .bl_searchResultHead {
  background-color: #F5F5F5;
  padding: 10px 14px;
  font-size: 13px;
}

/*
* 店舗 オファー一覧
*/
.bl_storeOfferListtPage .bl_msgLink_msg{
  -webkit-line-clamp: 99;
}
.bl_storeOfferListtPage .bl_msgLink_msg > span:first-child{
  padding-bottom: 6px;
  font-weight: 600;
}

/*
* オファー作成
*/
.bl_createOfferPage {
  background-image: url("../images/reco-girls-slider-bg.png?20250729");
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: center top;
  padding-bottom: 20px;
}
.bl_createOfferPage_heading {
  min-height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  background-color: #fff;
  font-size: 16px;
  padding-top: 14px;
  padding-bottom: 15px;
  border-top: 1px solid #d0d0d0;
}
.bl_createOfferForm {
  padding-top: 24px;
  padding-bottom: 80px;
}
.bl_createOfferForm .bl_createOfferForm_msg {
  padding-top: 20px;
}
.bl_createOfferForm a {
  color: #508ff3;
}
.bl_createOfferForm .bl_createOfferForm_targetOpenBtn {
  color: var(--color-primary);
}
.bl_createOfferForm_memo {
  font-size: 11px;
  margin-top: 10px;
  line-height: 1.5;
}
.bl_createOfferForm_memo_mini {
  font-size: 10px;
  color: #828282;
}
.bl_createOfferForm_memo p {
  padding: 2px 0;
}
.bl_createOfferForm .bl_createOfferForm_templateSelect {
  display: flex;
  column-gap: 10px;
  align-items: center;
  padding-top: 14px;
}
.bl_createOfferForm .bl_createOfferForm_templateSelect_label {
  font-size: 13px;
  padding-bottom: 0;
}
.bl_createOfferForm .bl_createOfferForm_templateSelect_selectWrapper {
  flex: 1;
  background-color: #fff;
  padding: 5px 10px 5px 7px;
  border-radius: 3px;
}
.bl_createOfferForm .bl_createOfferForm_templateSelect_select {
  font-size: 12px;
  vertical-align: baseline;
}
.bl_createOfferForm label {
  display: block;
  font-size: 16px;
  font-weight: 600;
  padding-bottom: 6px;
  color: var(--color-text-primary);
}
.bl_createOfferForm input::-webkit-input-placeholder, .bl_createOfferForm textarea::-webkit-input-placeholder {
  color: #B2B2B2;
  font-size: 0.875em;
}
.bl_createOfferForm input::-moz-placeholder, .bl_createOfferForm textarea::-moz-placeholder {
  color: #B2B2B2;
  font-size: 0.875em;
}
.bl_createOfferForm input:-ms-input-placeholder, .bl_createOfferForm textarea:-ms-input-placeholder {
  color: #B2B2B2;
  font-size: 0.875em;
}
.bl_createOfferForm input::-ms-input-placeholder, .bl_createOfferForm textarea::-ms-input-placeholder {
  color: #B2B2B2;
  font-size: 0.875em;
}
.bl_createOfferForm input::placeholder,
.bl_createOfferForm textarea::placeholder {
  color: #B2B2B2;
  font-size: 0.875em;
}
.bl_createOfferForm input#salary,
.bl_createOfferForm input#content
 {
  width: 100%;
  height: 50px;
  border-radius: 4px;
  padding-left: 1em;
}
.bl_createOfferForm input#label {
  width: 100%;
  height: 50px;
  border-radius: 4px;
  padding-left: 1em;
}
.bl_createOfferForm textarea#msg {
  width: 100%;
  line-height: 1.7;
  border-radius: 4px;
}

.bl_createOfferForm_linkBtn {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  margin-top: 15px;
  font-size: 10px;
  color: #B2B2B2;
}

.bl_createOfferForm_tempCheck {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 6px;
     -moz-column-gap: 6px;
          column-gap: 6px;
  font-size: 10px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-top: 20px;
  padding-bottom: 10px;
  color: #b2b2b2;
}
.bl_createOfferForm_tempCheck label {
  border-bottom: 1px solid;
}

.bl_createOfferForm_targetOpenBtn {
  display: block;
  background-color: #fff;
  width: 100%;
  font-size: 15px;
  text-align: center;
  margin-top: 40px;
  padding: 10px;
  color: var(--color-primary);
  position: relative;
}
.bl_createOfferForm_targetOpenBtn:after {
  content: "";
  display: block;
  width: 8px;
  height: 14px;
  background-image: url("../images/left-arrow_blue.svg");
  background-size: cover;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 14px;
}

.bl_createOfferForm_target {
  position: fixed;
  z-index: 9;
  background-color: #fff;
  width: 100%;
  height: 100%;
  top: 0;
  left: 150%;
  overflow-y: auto;
  padding-bottom: 30px;
  -webkit-transition: all 0.6s;
  transition: all 0.6s;
  max-width: 500px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.bl_createOfferForm_target.js_open {
  left: 50%;
}

.bl_createOfferForm_target_head {
  height: 50px;
  position: relative;
}

.bl_createOfferForm_target_backBtn {
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 24px;
}
.bl_createOfferForm_target_backBtn > img {
  width: 100%;
  height: 100%;
}

.bl_createOfferForm_target_body {
  padding-top: 40px;
  padding-left: 16px;
  padding-right: 16px;
}

/*
* オファー作成 確認
*/
.bl_createOfferConfirmPage {
  padding-bottom: 90px;
}
.bl_createOfferConfirmPage .bl_createOfferConfirmPage_ttl {
  padding-top: 20px;
  padding-bottom: 15px;
  text-align: center;
  font-size: 16px;
  font-weight: 600;
}

.bl_createOfferConfirmForm .bl_createOfferConfirmForm_cont {
  background-color: #fff;
  padding: 18px 15px 60px;
}
.bl_createOfferConfirmForm .bl_createOfferConfirmForm_salary,
.bl_createOfferConfirmForm .bl_createOfferConfirmForm_msg {
  padding-top: 18px;
}
.bl_createOfferConfirmForm .bl_createOfferConfirmForm_salary h2,
.bl_createOfferConfirmForm .bl_createOfferConfirmForm_msg h2 {
  font-size: 16px;
  font-weight: 600;
  padding-bottom: 4px;
}
.bl_createOfferConfirmForm .bl_createOfferConfirmForm_salary {
  padding-bottom: 21px;
  border-bottom: 1px solid #B2B2B2;
}
.bl_createOfferConfirmForm .bl_createOfferForm_tempNameInput {

}
.bl_createOfferConfirmForm .bl_createOfferForm_tempNameInput input {
  width: 90%;
  padding: 10px;
  border-radius: 4px;
  margin: 0 auto 16px;
}
.bl_createOfferConfirmForm .bl_createOfferForm_tempNameInput input::placeholder {
  color: #B2B2B2;
  text-align: center;
}

/*
* 完了系ページ
*/
.bl_compPage {
  position: relative;
}
.bl_compPage .bl_compPage_txt {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  top: 42%;
  width: 100%;
  text-align: center;
}
.bl_compPage .bl_compPage_ttl {
  font-weight: 600;
  font-size: 16px;
  padding-bottom: 16px;
}
.bl_compPage .bl_compPage_desc {
  letter-spacing: 0.044em;
  line-height: 1.7;
}

/*
* 店舗アカウント発行
*/
.bl_createStorePage {
  padding-top: 46px;
}
.bl_createStorePage .createStorePage_ttl {
  font-size: 20px;
  text-align: center;
  font-weight: 500;
}
.bl_createStorePage .bl_createStoreForm {
  padding-top: 26px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 20px;
}
.bl_createStorePage .bl_createStoreForm_label {
  display: block;
  padding-bottom: 6px;
  font-weight: 500;
}
.bl_createStorePage .bl_createStoreForm_input {
  width: 100%;
  height: 50px;
  border-radius: 4px;
  padding-left: 1em;
}
.bl_createStorePage .bl_createStoreForm_confP {
  background-color: #fff;
  width: 100%;
  height: 50px;
  border-radius: 4px;
  padding-left: 1em;
}

/*
* お気に入り店舗一覧
* 紹介一覧
*/
.bl_likeStoresPage .bl_likeStoresPage_head,
.bl_affiliateReferredListPage .bl_affiliateReferredListPage_head {
  padding-top: 24px;
}

/*
* 受けたオファー一覧
*/
.bl_msgListPage.bl_msgListPage__offer .bl_msgListPage_head {
  padding-top: 24px;
}


/*
* やりとり監視一覧
*/
.bl_msgCehckListPage .bl_msgLink {
  align-items: center;
}
.bl_msgCehckListPage .bl_msgLink_Img {
  min-width: 50px;
  width: 50px;
  height: 50px;
}
.bl_msgCehckListPage .bl_msgLink_name {
  /* padding-right: 74px; */
  font-size: 13px;
}
.bl_msgCehckListPage .bl_msgLink_msg {
  -webkit-line-clamp: 1;
}
.bl_msgLink_doubleName {
  padding-right: 70px;
}
.bl_msgLink_doubleName .bl_msgLink_name{
  line-height: 1.4;
}
.bl_msgLink_doubleName_separate {
  font-size: 10px;
  line-height: 1;
}
.bl_msgCehckListPage .bl_msgLink_unreadNum {
}
.bl_msgCehckListPage .bl_msgLink_txt {
  width: calc(100% - 154px);
}
.bl_msgCehckListPage .bl_msgLink.bl_msgLink__hasScout .bl_msgLink_unreadNum {
}

.bl_msgCehckListPage .bl_msgLink_scoutman {
  /* top: 34.5px; */
}
.bl_msgLink.bl_msgLink__hasEmploymentOffer {
  padding-bottom: 14px;
}
.bl_msgLink_employmentOfferStatus {
  position: absolute;
  font-size: 10px;
  bottom: 2px;
  left: 0;
  padding-left: 13px;
}
.bl_msgLink_employmentOfferStatus::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 5px;
  background-color: #000;
  position: absolute;
  top: 2.5px;
  left: 0;
}
.bl_msgLink_employmentOfferStatus.bl_msgLink_employmentOfferStatus__1 {
  color: #FFB347;
}
.bl_msgLink_employmentOfferStatus.bl_msgLink_employmentOfferStatus__1::before {
  background-color: #FFB347;
}
.bl_msgLink_employmentOfferStatus.bl_msgLink_employmentOfferStatus__2 {
  color: var(--color-primary);
}
.bl_msgLink_employmentOfferStatus.bl_msgLink_employmentOfferStatus__2::before {
  background-color: var(--color-primary);
}
.bl_msgLink_employmentOfferStatus.bl_msgLink_employmentOfferStatus__3 {
  color: #3ECAD3;
}
.bl_msgLink_employmentOfferStatus.bl_msgLink_employmentOfferStatus__3::before {
  background-color: #3ECAD3;
}

.bl_msgLink_employmentOfferStatus.bl_msgLink_employmentOfferStatus__4 {

}
.bl_msgLink_employmentOfferStatus.bl_msgLink_employmentOfferStatus__4::before {

}


/*
* お問い合わせ
*/
.bl_contactPage .bl_contactPage_desc {
  font-size: 16px;
  padding-bottom: 28px;
}
.bl_contactPage .bl_contactPage_memo {
  font-size: 13px;
  line-height: 1.8;
}
.bl_contactPage .bl_contactPage_form {
  padding-top: 55px;
}

/*
* 管理者 在籍状況一覧
* 管理者 オファー状況CSVダウンロード
*/
.bl_enrollmentPage,
.bl_offerStatusCsvPage {
  padding-top: 46px;
  padding-bottom: 120px;
}

.bl_enrollmentPage_ttl,
.bl_offerStatusCsvPage_ttl {
  font-size: 20px;
  text-align: center;
  font-weight: 500;
  padding-bottom: 30px;
}

.bl_enrollmentPage_cont
.bl_offerStatusCsvPage_cont {
  padding-top: 50px;
  padding-left: 10px;
  padding-right: 10px;
}

.bl_enrollmentTable_wrapper {
  overflow: auto;
}

.bl_enrollmentTable {
  overflow: auto;
  max-width: 100%;
  min-width: 500px;
  font-size: 13px;
  line-height: 1.6;
}
.bl_enrollmentTable thead th {
  color: #2F2F2F;
  background-color: #B2B2B2;
  text-align: center;
  border-right: 1px solid #fff;
  padding: 10px 4px;
}
.bl_enrollmentTable thead tr > th:last-child {
  border-right: none;
}
.bl_enrollmentTable thead .bl_enrollmentTable_storeTh {
  width: 164px;
}
.bl_enrollmentTable thead .bl_enrollmentTable_girlTh {
  width: 164px;
}
.bl_enrollmentTable thead .bl_enrollmentTable_enterByStoreTh {
  width: 152px;
}
.bl_enrollmentTable thead .bl_enrollmentTable_enterBtGirlTh {
  width: 152px;
}
.bl_enrollmentTable thead .bl_enrollmentTable_releaseTh {
  width: 102px;
}
.bl_enrollmentTable tbody td {
  border-right: 1px solid #fff;
  padding: 14px 12px;
}
.bl_enrollmentTable tbody tr > td:last-child {
  border-right: none;
}
.bl_enrollmentTable tbody tr:nth-child(odd) td {
  background-color: #fff;
}
.bl_enrollmentTable tbody .enrollmentTable_releaseTd {
  vertical-align: middle;
  text-align: center;
}
.bl_enrollmentTable .enrollmentTable_releaseBtn {
  border-bottom: 1px solid;
}

/*
* 運営 オファー状況CSVダウンロード
*/
.bl_offerStatusCsvPage_txt {
  padding-bottom: 40px;
  text-align: center;
}
.bl_offerStatusCsvPage_select {
  display: flex;
  align-items: center;
  column-gap: 10px;
  padding-bottom: 40px;
}
.bl_offerStatusCsvPage_select_ttl {
  font-weight: 600;
}
.bl_offerStatusCsvPage_select_input {
  background: #fff;
  padding: 10px;
  border-radius: 4px;
  
}

/*
* 運営会社
*/
.bl_companyTable {
  width: 100%;
}
.bl_companyTable .bl_companyTable_row {
  border-bottom: 1px solid #000;
}
.bl_companyTable .bl_companyTable_head,
.bl_companyTable .bl_companyTable_body {
  padding-top: 20px;
  padding-bottom: 20px;
}
.bl_companyTable .bl_companyTable_head {
  min-width: 124px;
  padding-left: 14px;
  padding-right: 10px;
}

.bl_404Page {
  position: relative;
}
.bl_404Page .bl_404Page_txt {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  top: 42%;
  width: 100%;
  text-align: center;
}
.bl_404Page .bl_404Page_ttl {
  font-weight: 600;
  font-size: 38px;
  color: #B2B2B2;
  letter-spacing: 0.06em;
  padding-bottom: 6px;
}
.bl_404Page .bl_404Page_subTtl {
  font-size: 16px;
  font-weight: 600;
  padding-bottom: 30px;
}
.bl_404Page .bl_404Page_desc {
  letter-spacing: 0.044em;
  line-height: 1.7;
}

/*
* 部分的適応
*/
.bl_msgDetailPage_main {
  padding-bottom: 0;
}
@media screen and (max-width: 500px) {
  html {
    font-size: 14px;
    height: -webkit-fill-available;
    overflow-y: auto;
  }
  body {
    height: -webkit-fill-available;
    overflow-y: auto;
  }
  .bl_inner {
    position: static;
    transform: translateX(0);
  }
  
  .bl_left,
  .bl_right,
  .bl_movingTxt {
    display: none !important;
  }
  .hp_sp_none {
    display: none;
  }
  .hp_innerPad {
    padding-left: 10px;
    padding-right: 10px;
  }
  .hp_sp_innerPad {
    padding-left: 25px;
    padding-right: 25px;
  }
  .bl_footer {
    padding-left: 9%;
    padding-right: 9%;
    height: 88px;
  }
  .bl_footer .bl_footer_nav {
    -webkit-column-gap: 34px;
       -moz-column-gap: 34px;
            column-gap: 34px;
    padding-top: 18px;
    padding-bottom: 18px;
  }
  .bl_footer .bl_footer_nav_item {
    width: calc((100% - 48px) / 4);
    height: auto;
  }
  .bl_footer .bl_footer_nav_item .bl_linkIcon_img {
    height: 25px;
  }
  .bl_loginBtn_unit {
    row-gap: 15px;
  }
  .bl_loginBtn {
    height: 50px;
    border-radius: 25px;
    width: 100%;
    min-height: 50px;
  }
  .bl_linkIcon .bl_linkIcon_txt {
    font-size: 10px;
  }
  .bl_floatingBtn_wrapper {
    /* padding-bottom: 80px; */
  }
  .bl_floatingBtn {
    /* bottom: 92px; */
  }
  .bl_squareBtn {
    font-size: 13px;
  }
  .bl_profPhotoUpload .bl_profPhotoUpload_mainPhoto:after,
  .bl_profPhotoUpload .bl_profPhotoUpload_subPhoto:after {
    content:none;
    width: 30px;
    height: 30px;
  }
  .bl_loginPage {
    background-size: 120% 120%;
    -webkit-animation: GradietionAnimation 12s linear infinite;
            animation: GradietionAnimation 12s linear infinite;
  }
  .bl_loginPage .bl_loginPage_backLink {
    font-size: 12px;
    top: 15px;
    left: 10px;
  }
  .bl_loginPage .bl_loginPage_inner {
    padding-top: 80px;
    padding-left: 10px;
    padding-right: 10px;
  }
  .bl_loginPage .bl_loginPage_inner.bl_loginPage_inner__top {
    padding-bottom: 120px;
  }
  .bl_loginPage .bl_loginPage_logo .bl_loginPage_logo_img {
    width: 60vw;
    height: auto;
  }
  .bl_loginPage .bl_loginPage_loginTxt {
    font-size: 12px;
  }
  .bl_loginPage .bl_loginPage_bottom {
    font-size: 10px;
  }
  .bl_loginPage .bl_loginPage_cont {
    margin-top: 0;
    margin-bottom: 0;
  }
  .bl_sitemapPage {
    padding-top: 46px;
    padding-left: 40px;
    padding-right: 40px;
  }
  .bl_sitemapPage .bl_sitemapPage_ttl {
    font-size: 18px;
    padding-bottom: 34px;
  }
  .bl_sitemap .bl_sitemap_item_unit {
    row-gap: 30px;
  }
  .bl_sitemap .bl_sitemap_item_unit .bl_sitemap_item {
    width: calc((310px - 60px) / 3);
    justify-content: flex-start;
  }
  .bl_sitemap .bl_sitemap_item_unit .bl_sitemap_item img {
    max-width: none;
    height: 32px;
    width: auto;
  }
  .bl_initProfile .bl_initProfile_input.bl_initProfile_input__checkbox {
    /* max-height: calc(100vh - 310px); */
    height: 300px;
  }
}
@media screen and (max-width: 833px) {
  .bl_left_logo,
  .bl_fluid {
    display: none;
  }
}
@media screen and (min-width: 500px) {
  .hp_pc_none {
    display: none;
  }
  .bl_profPhotoUploadModal .bl_profPhotoUploadModal_cont {
    width: 500px;
    left: calc(50% - 250px);
  }
  .bl_searchModal .bl_searchModal_cont {
    width: 500px;
    left: calc(50% - 250px);
  }
  .bl_girlLink {
    width: calc((100% - 48px) / 4);
  }
  .bl_girlsList.bl_girlsList__2col .bl_girlLink {
    width: calc((100% - 40px) / 3);
  }
  .bl_enterLeaveModal .bl_enterLeaveModal_cont {
    width: 500px;
    left: calc(50% - 250px);
  }
  .bl_storeDetailMenuModal .bl_storeDetailMenuModal_cont {
    width: 500px;
    left: calc(50% - 250px);
  }
}
@media screen and (min-width: 501px) and (max-width: 744px) {
  .bl_girlLink {
    width: calc((100% - 48px) / 4);
  }
  .bl_girlsList.bl_girlsList__2col .bl_girlLink {
    width: calc((100% - 40px) / 3);
  }
}
@media screen and (max-height: 800px) and (min-width: 769px) {
  .bl_loginPage_inner {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .bl_loginPage_logo .bl_loginPage_logo_img {
    width: 19vw;
  }
}

.bl_loginPage .bl_loginBtn {
  width: 100%;
  /* min-height: 60px; */
}

.bl_managerHomePage .bl_loginBtn {
  min-height: 50px;
}

/* LINE相談バナー */
.bl_sitemapPage .lineSoudan_banner {
  /* position: fixed; */
  display: block;
  /* width: 90%;
  left: 5%;
  bottom: 174px; */
}
.bl_sitemapPage .humaribition_banner {
  /* position: fixed; */
  display: block;
  /* width: 90%;
  left: 5%; */
  /* bottom: 70px; */
}
.bl_sitemapPage .bl_sitemapPage_banners {
  position: fixed;
  width: 90%;
  left: 5%;
  bottom: 70px;
  display: flex;
  flex-direction: column;
  row-gap: 14px;
}
@media screen and (max-width:500px) and (max-height:720px) {
  .bl_sitemapPage {
    padding-bottom: 280px;
  }
}
@media screen and (min-width:501px) and (max-height:940px) {
  .bl_sitemapPage {
    padding-bottom: 300px;
  }
}
.bl_profilePage_linesoudan {
  display: block;
  margin-top: 20px;
  
}
.bl_right_linesoudan {
  display: block;
  width: 70px;
  position: absolute;
  bottom: 30px;
  left: 50px;
  transition: all 1s ease-in-out;
}
@media screen and (max-width:739px) {
  .bl_right_linesoudan {
    display: none;
  }
}
.bl_right_linesoudan img {
  display: block;
}
.bl_right_linesoudan.js_hide {
  opacity: 0;
  -webkit-filter: blur(15px);
          filter: blur(15px);
}
.bl_storeListPage_linesoudan_wrapper {
  position: sticky;
  bottom: -40px;
  height: 67px;
  width: 60px;
  margin-left: auto;
  margin-right: 10px;
  z-index: 2;
}
.bl_storeListPage_linesoudan {
  display: block;
  width: 100%;
}
.bl_storeListPage_linesoudan img {
  display: block;
}
@media screen and (min-width:740px) {
  .bl_storeListPage_linesoudan_wrapper {
    display: none;
  }
}


/* マイページ内の？アイコン */
.bl_profileList_head .bl_profileList_head_qIcon {
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  background-image: url('../images/question.svg');
  background-size: contain;
  top: 50%;
  transform: translateY(-50%);
  left: 115px;
}
.bl_profileList_head .bl_profileList_head_photoLogo,
.bl_profileList_body .bl_profileList_head_photoLogo
{
  width: 35px;
  height: 35px;
  border-radius: 100%;
  margin-right: 12px;
  background-size: cover;
  background-position: center;
}
.bl_storeDetailMenuModal_cont_menu_question {
  position: relative;
  padding-left: 26px;
  color: #828282;
  font-size: 12px;
}
.bl_storeDetailMenuModal_cont_menu_question:after {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  background-image: url('../images/question.svg');
  background-size: contain;
  top: 50%; 
  transform: translateY(-50%);
  left: 0;
}

/* ブロック一覧ページ ？アイコン */
.bl_likeStoresPage_head .bl_lv4_ttl,
.bl_affiliateReferredListPage_head .bl_lv4_ttl
{
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
  padding: 0 40px;
  position: relative;
}
.bl_likeStoresPage_head .bl_profileList_head_qIcon,
.bl_affiliateReferredListPage_head  .bl_profileList_head_qIcon
{
  display: block;
  width: 18px;
  height: 18px;
  position: absolute;
  background-image: url('../images/question.svg');
  background-size: contain;
  top: 53%; 
  transform: translateY(-50%);
  right: 0;
}
/* マイページ編集の見出し 注釈(複数選択可など) */
.bl_profileList_head .bl_profileList_head_memo {
  font-size: 12px;
  margin-top: 10px;
  color: #999;
}


/*
* アドバイザーページ
*/
.bl_advisorsList {
  column-gap: 22px;
  row-gap: 28px;
  display: flex;
  flex-wrap: wrap;
}

.bl_advisorsList.bl_advisorsList__center {
  justify-content: center;
}

.bl_advisorsListPage_cont_fixedAdvisor {
  margin-bottom: 28px;
}

.bl_advisorLink {
  width: calc((100% - 40px) / 3);
  display: flex;
  flex-direction: column;
  row-gap: 10px;
}

.bl_advisorLink_img {
  width: 100%;
  padding-top: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 50%;
}

.bl_advisorLink_name {
  font-weight: 600;
  text-align: center;
}

.bl_advisorLink_section {
  padding-bottom: 12px;
}

.bl_advisorLink_txt > .bl_advisorLink_section:first-of-type{
  padding-top: 8px;
}

.bl_advisorLink_txt > .bl_advisorLink_section:last-of-type {
  padding-bottom: 0;
}

.bl_advisorLink_section_head {
  font-size: 11px;
  font-weight: 600;
  padding-left: 1em;
  position: relative;
}

.bl_advisorLink_section_head::before {
  content: '';
  display: block;
  width: 7px;
  height: 7px;
  border-radius: 3.5px;
  background-color: var(--color-primary);
  position: absolute;
  left: 0;
  top: calc(50% - 3.2px);
}

.bl_advisorLink_section_cont {
  font-size: 10px;
}

@media screen and (max-width: 500px) {
  .bl_advisorLink {
    width: calc((100% - 22px) / 2);
  }
}

.bl_advisorDetail {
  display: flex;
  flex-direction: column;
  row-gap: 18px;
}

.bl_advisorDetail_img {
  display: block;
  width: 100%;
  padding-top: 78.9333%;
  background-size: cover;
  background-position: top 0 center;
  background-repeat: no-repeat;
}

.bl_advisorDetail_name {
  font-size: 22px;
  font-weight: 600;
  padding-bottom: 10px;
}

.bl_advisorDetail_comment {
  line-height: 1.7;
}

.bl_advisorDetail_info {
  padding-top: 30px;
}
.bl_advisorsListPage {
  padding-bottom: 40px;
}
.bl_advisorsListPage_bottomBtn_wrapper {
  padding-top: 30px;
}
.bl_advisorsListPage_bottomBtn {
  display: block;
  width: 100%;
}
.bl_profile_rank {
  padding-top: 20px;
  font-weight: 600;
  line-height: 1.7;
}
.bl_profile_rank > p {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 2px;
}
.bl_profile_rank > p > img {
  display: inline-block;
  width: 21px;
}
.bl_profile_vip {
  text-align: left;
  font-size: 14px;
  padding-top: 20px;
  padding-right: 10px;
  padding-left: 10px;
}
.bl_profile_vip_icon {
  display: block;
  height: 30px;
  margin: 6px auto 16px;
}

.bl_profile_vip p,
.bl_initProfile_item.bl_initProfile_item__vip p {
  font-weight: bold;
  text-align: center;
  margin-bottom: 10px;
  /* color: #a58654; */
  line-height: 1.6;
}
.bl_initProfile_item.bl_initProfile_item__vip p {
  font-size: 16px;
  margin-bottom: 18px;
}
.bl_profile_vip ul,
.bl_initProfile_item.bl_initProfile_item__vip ul {
  font-size: 12px;
  background: #f7f6f6;
  padding: 0.8em;
  border-radius: 16px;
}
.bl_profile_vip ul li,
.bl_initProfile_item.bl_initProfile_item__vip ul li {
  padding-top: 0.4em;
  padding-bottom: 0.4em;
  padding-left: 1.25em;
  position: relative;
}
.bl_profile_vip ul li::before,
.bl_initProfile_item.bl_initProfile_item__vip ul li::before {
  content: '・';
  position: absolute;
  left: 0;
}


/*
* クーポンページ
*/
.bl_couponsList {
  display: flex;
  column-gap: 10px;
  row-gap: 8px;
  flex-wrap: wrap;
}
.bl_couponLink {
  width: calc((100% - 10px) / 2);
}

.bl_couponLink_img {
  display: block;
  width: 100%;
  padding-top: 119.2708%;
  background-size: cover;
  background-position: top 0 center;
  background-repeat: no-repeat;
  border-radius: 6px;
}

.bl_couponDetailPage {
  background-color: #000 !important;
  padding-bottom: 0 !important;
}

.bl_couponDetail_mv {
  display: block;
  width: 100%;
  padding-top: 119.2708%;
  background-size: cover;
  background-position: top 0 center;
  background-repeat: no-repeat;
}
.bl_couponDetail_cont {
  background-color: #000;
  color: #fff;
  padding-top: 20px;
  padding-bottom: 140px;
}

.bl_couponDetail_cont_desc a,
.bl_couponDetail_cont_url a,
.bl_couponDetail_cont_address a {
  color: #3354DE;
}
.bl_couponDetail_cont_provider {
  font-weight: 600;
}
.bl_couponDetail_cont_ttl {
  padding-top: 20px;
  padding-bottom: 16px;
  font-size: 18px;
  font-weight: 600;
}
.bl_couponDetail_cont_expiration {
  font-weight: 600;
  font-size: 15px;
  padding-bottom: 22px;
}
.bl_couponDetail_cont_desc {
  font-size: 13px;
  padding-bottom: 13px;
}
.bl_couponDetail_cont_url {
  font-size: 13px;
}
.bl_couponDetail_cont_address {
  font-size: 13px;
}
.bl_couponDetail_cont_tel {
  font-size: 13px;
}
.bl_couponDetaiBottom {
  padding-top: 30px;
  padding-bottom: 30px;
  background-image: url("../images/coupon-detail-bottom-bg.png");
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  bottom: 54px;
  color: #331648;
  width: 100%;
  text-align: center;
  font-size: 16px;
  font-weight: 700;
}



.bl_webMeetingBanner {
  background-color: #fff;
  height: 100%;
  width: 100%;
  max-width: 430px;
  margin: 0 auto;
  background-image: url('../images/webmeeting_banner_bg.jpg');
  background-size: 100% auto;
  background-position: 0 0;
  background-repeat: repeat;
  position: relative;
  overflow: hidden;
  min-height: 650px;
  display: flex;
  align-items: center;
}
@media screen and (min-width: 400px)  {
  .bl_webMeetingBanner {
    background-position: 0 -40px;
  }
}
.bl_webMeetingBanner_cont {
  width: 100%;
  /* position: absolute; */
  /* bottom: 0; */
  /* width: 100%; */
  /* background-color: #fff; */

}
.bl_webMeetingBanner_cont_img {
  padding-top: 105%;
  position: relative;
  background-image: url('../images/webmeeting_banner.png');
  background-size: contain;
  background-position: bottom 0px center;
  background-repeat: no-repeat;
}
.bl_webMeetingBanner_cont_img > img {
}
.bl_webMeetingBanner_cont_btns {
  padding: 0 30px 20px;
  display: flex;
  flex-direction: column;
  row-gap: 16px;
}
.bl_webMeetingBanner_cont_telBtn {
  position: relative;
}
.bl_webMeetingBanner_cont_telBtn_icon {
  position: absolute;
  top: 50%;
  left: 16px;
  transform: translateY(-50%);
  width: 18px;

}


/*
* 使い方ページ リスト
*/
.bl_howToList {
  display: flex;
  flex-direction: column;
  row-gap: 12px;
}
.bl_howToList_link {
  display: flex;
  align-items: center;
  height: 54px;
  background-color: #fff;
  font-size: 15px;
  font-weight: bold;
  border-radius: 4px;
  position: relative;
  padding-left: 25px;
  width: 100%;
  letter-spacing: 0.08em;
}
.bl_howToList_link:after {
  content: '';
  display: block;
  height: 15px;
  width: 15px;
  position: absolute;
  background-image: url('../images/howtouse_link_icon.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  right: 20px;
}

.bl_howToDetail,
.bl_beginners {
  background-color: #fff;
  padding: 30px 18px 56px;
}
.bl_howToDetail_ttl,
.bl_beginners_ttl {
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.08em;
  text-align: center;
  padding-bottom: 30px;
}
.bl_howToDetail_subTtl,
.bl_beginners_subTtl
  {
  font-size: 15.6px;
  font-weight: bold;
  padding-left: 10px;
  position: relative;
  margin-bottom: 1rem;
}
.bl_howToDetail_subTtl:before,
.bl_beginners_subTtl:before
{
  content: "";
  display: block;
  height: 1em;
  width: 4px;
  background-color: var(--color-primary);
  position: absolute;
  left: 0;
  top: 4.5px;
}
.bl_howToDetail_lead {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.666;
  word-break: break-all;
  display: flex;
  flex-direction: column;
  row-gap: 5px;
  padding-bottom: 20px;
}
.bl_howToDetail_cont {
  display: flex;
  flex-direction: column;
  row-gap: 20px;
}
.bl_howToDetail_cont_block {
  
}
.bl_howToDetail_cont_img {
  display: block;
  width: 100%;
  padding-top: 10px;
}
.bl_howToDetail_cont_img > * {
  display: block;
  width: 100%;
}
.bl_howToDetail_cont_txt {
  font-size: 12px;
  font-weight: 500;
  padding-left: 36px;
  position: relative;
}
.bl_howToDetail_cont_txt:before {
  content:'';
  display: block;
  font-size: 12px;
  font-weight: 500;
  position: absolute;
  left: 0;
  top: 0;
}
.bl_howToDetail_cont > .bl_howToDetail_cont_block:nth-of-type(1) .bl_howToDetail_cont_txt:before {
  content: '(1)';
}
.bl_howToDetail_cont > .bl_howToDetail_cont_block:nth-of-type(2) .bl_howToDetail_cont_txt:before {
  content: '(2)';
}
.bl_howToDetail_cont > .bl_howToDetail_cont_block:nth-of-type(3) .bl_howToDetail_cont_txt:before {
  content: '(3)';
}
.bl_howToDetail_cont > .bl_howToDetail_cont_block:nth-of-type(4) .bl_howToDetail_cont_txt:before {
  content: '(4)';
}
.bl_howToDetail_cont > .bl_howToDetail_cont_block:nth-of-type(5) .bl_howToDetail_cont_txt:before {
  content: '(5)';
}
.bl_howToDetail_cont > .bl_howToDetail_cont_block:nth-of-type(6) .bl_howToDetail_cont_txt:before {
  content: '(6)';
}
.bl_howToDetail_cont > .bl_howToDetail_cont_block:nth-of-type(7) .bl_howToDetail_cont_txt:before {
  content: '(7)';
}
.bl_howToDetail_cont > .bl_howToDetail_cont_block:nth-of-type(8) .bl_howToDetail_cont_txt:before {
  content: '(8)';
}
.bl_howToDetail_cont > .bl_howToDetail_cont_block:nth-of-type(9) .bl_howToDetail_cont_txt:before {
  content: '(9)';
}
.bl_howToDetail_cont > .bl_howToDetail_cont_block:nth-of-type(10) .bl_howToDetail_cont_txt:before {
  content: '(10)';
}
.bl_howToDetail_cont_txt.bl_howToDetail_cont_txt__no_num {
  padding-left: 0;
}
.bl_howToDetail_cont_txt.bl_howToDetail_cont_txt__no_num::before {
  content: none !important;
}
.bl_howToDetail_cont_txt_caution {
  display: block;
  color: #EA0005;
  padding-left: 20px;
  position: relative;
  margin-bottom: 4px;
}
.bl_howToDetail_cont_txt_caution:before {
  content: '';
  display: block;
  background-image: url('../images/red_caution.png');
  width: 16px;
  height: 16px;
  background-size: contain;
  background-position: center;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.bl_howToDetail_cont_txt a,
.bl_beginners_cont a {
  display: inline-block;
  width: fit-content;
  color: #508ff3;
  border-bottom: 1px solid;
  padding: 4px 0;
}

.bl_postIndex {
  background-color: #F8F8F8;
  padding: 18px 20px;
}
.bl_postIndex_ttl {
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  padding-bottom: 12px;
}
.bl_postIndex_list {
  display: flex;
  flex-direction: column;
  row-gap: 8px;
}
.bl_postIndex_list_item {
  padding-left: 14px;
  position: relative;
  font-size: 13px;
  font-weight: 600;
}
.bl_postIndex_list_item:before {
  content: '';
  display: block;
  width: 6px;
  height: 6px;
  background-color: var(--color-primary);
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 10.4px;
}
.bl_postIndex_list_item > a {
  display: block;
  width: fit-content;
  padding: 2px 0;
}
.bl_postIndex_list_childList {
  padding-left: 20px;
  display: flex;
  flex-direction: column;
  row-gap: 8px;
  font-weight: 500;
  padding: 6px;
}
.bl_beginners_cont {
  padding-top: 40px;
  display: flex;
  flex-direction: column;
  row-gap: 40px;
}
.bl_beginners_cont p {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.666;
  word-break: break-all;
}
.bl_beginners_cont_lead {
  padding-bottom: 16px;
}
.bl_beginners_cont_block {
  padding-bottom: 22px;
}
.bl_beginners_cont_section > .bl_beginners_cont_block:last-child {
  padding-bottom: 0;
}
.bl_beginners_cont_block_ttl {
  font-weight: 600;
  padding-bottom: 8px;
}
.bl_beginners_cont_block  picture {
  display: block;
  width: 100%;
  padding-top: 10px;
}
.bl_beginners_cont_block  picture > * {
  display: block;
  width: 100%;
}

.bl_beginners_message {
  font-size: 12px;
  padding-bottom: 22px;
}
.bl_beginners_message_head {
  padding-bottom: 8px;
}
.bl_beginners_message_body {
  border: 1px solid #DDDDDD;
  background-color: #F8F8F8;
  padding: 12px;
  border-radius: 6px;
}
.bl_beginners * {
  scroll-margin-top: 65px;
}

.bl_profile_progress {
  width: 250px;
  padding: 24px 0 24px;
  margin: 0 auto;
}
.bl_profile_progress_inner {
  display: flex;
  flex-direction: column;
  row-gap: 20px;
  align-items: center;
}
.bl_profile_progress_heading {
  text-align: center;
  font-size: 15px;
  color: #6F2855;
  font-weight: bold;
}
.bl_profile_progress_bar {
  width: 100%;
  height: 14px;
  
  position: relative;
}
.bl_profile_progress_bar_bg {
  display: block;
  width: 100%;
  height: 100%;
  background-color: var(--color-primary);
  position: relative;
  overflow: hidden;
  border-radius: 7px;
}
.bl_profile_progress_bar_bg_color {
  display: block;
  height: 100%;
  background-color: #EBEBEB;
  position: absolute;
  right: 0;
}
.bl_profile_progress_bar_icon {
  width: 33px;
  display: block;
  position: absolute;
  top: -10px;
  transform: translateX(50%);
}
.bl_profile_lv4_ttl_has_progress {
  position: relative;
}
.bl_profile_lv4_ttl_has_progress_num {
  position: absolute;
  right: 36px;
  font-size: 13px;
  font-weight: bold;
  color: #6F2855;
}
.bl_profile_employmentOfferStatus {
  display: block;
  height: 30px;
  width: fit-content;
  margin: 10px auto;
}


/* 店舗オファー詳細ページではメッセージ送信欄を非表示 */
.bl_msgDetailPage.bl_msgDetailPage__offer .bl_msgDetailPage_bottom {
  display: none !important;
}
.bl_msgDetailPage.bl_msgDetailPage__offer .bl_msgInputForm{
  display: none !important;
}
.bl_initProfile_progress_bar_wrapper {
  width: calc(100% - 80px);
  margin-left: auto;
  margin-right: auto;
  /* transform: translateY(-55px); */
}
.bl_initProfile_progress_bar_txt {
  font-size: 14px;
  text-align: center;
  font-weight: 600;
  padding-bottom: 10px;
  letter-spacing: 0.2em;
}
.bl_initProfile_progress_bar {
  width: 100%;
  height: 7px;
  position: relative;
}
.bl_initProfile_progress_bar_bg {
  display: block;
  width: 100%;
  height: 100%;
  background-color: var(--color-primary-dark);
  position: relative;
  /* overflow: hidden; */
  /* border-radius: 3px; */
  border-radius: 5px;
}
.bl_initProfile_progress_bar_bg_color {
  display: block;
  height: 100%;
  background-color: #EBEBEB;
  position: absolute;
  right: 0;
  border-radius: 0 5px 5px 0;
}
.bl_initProfile_progress_bar_bg_color::before {
  content: "";
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: var(--color-primary-dark);
  position: absolute;
  top: 50%;
  left: -10px;
  transform: translateY(-50%);
}

.bl_msgDetailPage_main_employmentOfferStatus {
  width: 100%;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #F2F2F2;
}
.bl_msgDetailPage_main_employmentOfferStatus.bl_msgDetailPage_main_employmentOfferStatus__state_1 {
  color: #FFB347;
}
.bl_msgDetailPage_main_employmentOfferStatus.bl_msgDetailPage_main_employmentOfferStatus__state_2 {
  color: var(--color-primary);
}
.bl_msgDetailPage_main_employmentOfferStatus.bl_msgDetailPage_main_employmentOfferStatus__state_3 {
  color: #3ECAD3;
}
.bl_msgDetailPage_main_employmentOfferStatus.bl_msgDetailPage_main_employmentOfferStatus__state_4 {
  
}
.bl_msgDetailPage_main_employmentOfferStatus.bl_msgDetailPage_main_employmentOfferStatus__state_isEntered {
  color: var(--color-primary);
}
.bl_msgList_employmentOfferStatusHeading {
  font-size: 15.6px;
  font-weight: bold;
  padding-left: 10px;
  position: relative;
  margin: 1rem 0 0.2rem;
}
.bl_msgList_employmentOfferStatusHeading::before {
  content: "";
  display: block;
  height: 1em;
  width: 4px;
  position: absolute;
  left: 0;
  top: 4.5px;
}

.bl_msgList_employmentOfferStatusHeading.bl_msgList_employmentOfferStatusHeading__green::before{
  background-color: var(--color-primary);
}
.bl_msgList_employmentOfferStatusHeading.bl_msgList_employmentOfferStatusHeading__blue::before{
  background-color:#3ECAD3;
  /* background-color: var(--color-cyan); */
}
.bl_msgList_employmentOfferStatusHeading.bl_msgList_employmentOfferStatusHeading__orange::before{
  /* background-color: var(--color-orange); */
  background-color: #FFB347;
}
.bl_msgList_employmentOfferStatusHeading.bl_msgList_employmentOfferStatusHeading__gray::before{
  /* background-color: var(--color-natural-gray-400); */
  background-color: #A8A8A8;
}

.unansewered_employment_offer {
  position: fixed;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  top: 0;
  left: 0;
  z-index: 10;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.unansewered_employment_offer_cont {
  position: fixed;
  width: 90%;
  height: fit-content;
  padding: 20px 15px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #fff;
  z-index: 11;
  border-radius: 10px;
}
.unansewered_employment_offer_cont h2 {
  font-size: 18px;
  font-weight: 600;
  text-align: center;
  line-height: 1.5;
  margin-bottom: 5px;
}
.unansewered_employment_offer_cont .bl_storeCard {
  -webkit-box-shadow: none;
  box-shadow: none;
  padding-left: 0;
  padding-right: 0;
}
.unansewered_employment_offer_cont .bl_storeCard .swiper-slide {
  border-radius: 4px;
  background-size: cover;
}
.unansewered_employment_offer_cont .bl_storeCard .bl_storeCard_imgs {
  padding-left: 0;
}
.unansewered_employment_offer_cont_store_name {
  font-size: 14px;
  font-weight: 600;
  padding-left: 0;
}
.unansewered_employment_offer_cont_specialDeal {
  display: block;
  width: 100%;
  margin-bottom: 20px;
}
.unansewered_employment_offer_cont_amazon {
  display: block;
  width: 100%;
  margin-bottom: 12px;
}
.unansewered_employment_offer_cont_amazon img {
  display: block;
  width: 100%;
}
.unansewered_employment_offer_cont_amazon span {
  font-size: 10px;
}
.unansewered_employment_offer_cont_btns {
  padding-top: 10px;
  display: flex;
  flex-direction: column;
  row-gap: 15px;
  
}
.unansewered_employment_offer_cont_btns > form {
  display: block;
  width: 100%;
}
.unansewered_employment_offer_cont_btns > form > button {
  width: 100%;
  height: 46px;
  border-radius: 25px;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.unansewered_employment_offer_cont_btns_accept {
  background-color: var(--color-primary);
  color: #fff;
}
.unansewered_employment_offer_cont_btns_reject {
  background-color: #fff;
  color: #A3A3A3;
  border: 2px solid #CBCBCB;
}
.unansewered_employment_offer_cont_btns_consider {
  background-color: #fff;
  color: #A3A3A3;
  border: 2px solid #CBCBCB;
}


/*
* オファー定型文
*/
/* オファー定型文一覧 */
.bl_offerTemplateListPage {
  
}
.bl_offerTemplateListPage_head h1 {
  height: 90px;
  font-size: 16px;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
}
.bl_offerTemplateListPage_head_actions {
  padding-bottom: 16px;
  margin-top: -10px;
}
.bl_offerTemplateListPage_head_btn_new {
  display: block;
  width: fit-content;
  font-size: 14px;
  color: #508ff3;
  border-bottom: 1px solid;
  margin-left: auto;
  margin-right: 4px;
  font-weight: 500;
}

.bl_offerTemplateList {
  display: flex;
  flex-direction: column;
  row-gap: 20px;
}
.bl_offerTemplateList_item {
  background-color: #fff;
  padding-top: 18px;
  padding-bottom: 20px;
  border-radius: 4px;
  -webkit-box-shadow: 0 0 12px 2px rgba(0, 0, 0, 0.06);
  box-shadow: 0 0 12px 2px rgba(0, 0, 0, 0.06);
}
.bl_offerTemplateList_item > * {
  padding-left: 14px;
  padding-right: 14px;
}
.bl_offerTemplateList_item_head {
  border-bottom: 1px dashed #E5E5E5;
  padding-bottom: 10px;
}
.bl_offerTemplateList_item_head_label,
.bl_offerTemplateList_item_body_msg_label {
  padding-bottom: 4px;
  font-weight: 600;
  font-size: 13px;
}
.bl_offerTemplateList_item_head_cont {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.bl_offerTemplateList_item_body {
  padding-top: 10px;
}
.bl_offerTemplateList_item_body_msg {}
.bl_offerTemplateList_item_body_msg_cont {
  font-size: 13px;
  word-wrap: break-word;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 10;
  overflow: hidden;
}
.bl_offerTemplateList_item_body_btn {
  padding-top: 20px;
  display: flex;
  column-gap: 10px;
}
.bl_offerTemplateList_item_body_btn_edit,
.bl_offerTemplateList_item_body_btn_delete,
.bl_offerTemplateList_item_body_btn_search,
.bl_offerTemplateList_item_body_btn form {
  width: calc(50% - 5px);
  height: 40px;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
  border-radius: 20px;
  padding-left: 15px;
  padding-right: 15px;
}
.bl_offerTemplateList_item_body_btn form {
    padding-left: initial;
    padding-right: initial;
  }
.bl_offerTemplateList_item_body_btn_edit {
  background-color: #fff;
  color: #7A7A7A;
  border: 2px solid #7A7A7A;
}
.bl_offerTemplateList_item_body_btn_delete {
  background-color: #fff;
  color: #FF4D4F;
  border: 2px solid #FF4D4F;
}
.bl_offerTemplateList_item_body_btn_search {
  background-color: var(--color-primary-dark);
  color: #fff;
  width: 100%;
}
.bl_qrCodePage {
  background-color: var(--color-primary);
}
.bl_qrCode {
  position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.bl_qrCode_cont {
  width: 76vw;
  display: flex;
  flex-direction: column;
  row-gap: 12px;
  max-width: 300px;
}
.bl_qrCode_img_wrapper {
  border-radius: 16px;
  padding: 44px 44px 54px 44px;
  background: #fff;
  position: relative;
}
.bl_qrCode_img {
  border-radius: 8px;
}
.bl_qrCode_img_wrapper::after {
  content: '';
  background-image: url(/images/icon.ico);
  position: absolute;
  width: 38px;
  height: 38px;
  background-color: #fff;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-size: 26px;
  background-repeat: no-repeat;
  border-radius: 8px;
  padding: 8px;
  background-position: center;
}
.bl_qrCode_img_link {
  width: 100%;
  background-color: #fff;
  border-radius: 8px;
  padding: 20px;
  text-align: center;
  color: #999;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 6px;
}
.bl_qrCode_img_link > img {
  display: block;
  width: 20px;
}
.bl_qrCode_img_link > span {
  padding-right: 10px;
}
.bl_qrCode_imgTxt {
  font-size: 20px;
  font-weight: 600;
  color: #acb0f3;
  position: absolute;
  bottom: 14px;
  left: 50%;
  transform: translateX(-50%);
  letter-spacing: 0.06em;
}
.bl_msgInputTemplate {
  display: flex;
  justify-content: space-between;
  column-gap: 16px;
  align-items: center;
  padding: 10px 10px 0px 10px;
  width: 100%;
}
.bl_msgInputTemplate > .bl_select_wrapper {
  flex: 1;
}
.bl_msgInputTemplate > .bl_select_wrapper select {
  height: 100%;
  padding: 7px;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: 12px;
}
.bl_msgInputTemplate > button {
  padding: 7px 12px;
  background: #fff;
  color: #B2B2B2;
  border: 1px solid #ccc;
  font-size: 12px;
  border-radius: 4px;
}
.bl_msgInputTemplate > button.js_active {
  background: var(--color-primary);
  color: #fff;
  border: 1px solid var(--color-primary);
}
.bl_msgInputTemplate > a {
  font-size: 11px;
  color: #508ff3;
  margin-left: 20px;
}

/* オファーポイント */
.bl_offerPoint_wrp {
  padding: 40px 0;
}
.bl_offerPoint_store.bl_imgAndName {
  padding-left: 15px;
  padding-right: 15px;
  padding-bottom: 20px;
}
.bl_offerPoint_store.bl_imgAndName .bl_imgAndName_img {
  width: 40px;
  min-width: 40px;
  height: 40px;
}
.bl_offerPoint_store.bl_imgAndName .bl_imgAndName_name {
  font-size: 18px;
}
.bl_offerPointTotal {
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
  padding: 0 15px;
}
.bl_offerPointTotalHead {
  font-size: 20px;
  font-weight: 600;
}
.bl_offerPointTotalData {
  font-size: 20px;
  font-weight: 600;
  position: relative;
}
.bl_offerPointNormal {
  background-color: #fff;
  padding: 10px 15px;
  display: flex;
  justify-content: space-between;
  border-radius: 5px;
  margin-bottom: 20px;
}
.bl_offerPointNormalHead {
  font-size: 16px;
  font-weight: 600;
}
.bl_offerPointNormalData {
  font-size: 16px;
  font-weight: 600;
}
.bl_offerPointLimited {
  background-color: #fff;
  padding: 10px 15px;
  border-radius: 5px;
}
.bl_offerPointLimitedFlx {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #B2B2B2;
  padding-bottom: 10px;
}
.bl_offerPointLimitedFlx .bl_offerPointLimitedHead {
  font-size: 16px;
  font-weight: 600;
}
.bl_offerPointLimitedFlx .bl_offerPointLimitedData {
  font-size: 16px;
  font-weight: 600;
}
.bl_offerPointLimitedContent {
  margin: 10px 0;
}
.bl_offerPointLimitedDay {
  display: flex;
  justify-content: space-between;
  margin: 10px 0;
}
.bl_offerPointLimitedDay .bl_offerPointLimitedHead {
  font-size: 14px;
  color: #B2B2B2;
}
.bl_offerPointLimitedDay .bl_offerPointLimitedData {
  font-size: 14px;
  font-weight: 600;
  color: #B2B2B2;
}
.bl_offerPointLimitedDayMore {
  font-size: 14px;
  color: #B2B2B2;
  text-align: center;
}
.bl_offerPointLimitedDayMore:after {
  display: inline-block;
  content: '';
  background-image: url(../images/down-arrow.svg);
  background-repeat: no-repeat;
  width: 10px;
  height: 12px;
  margin-left: 5px;
  margin-top: 20px;
}
.bl_userRow_unit {
  
}
.bl_userRow {
  padding-top: 12px;
  padding-bottom: 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 14px;
  -moz-column-gap: 14px;
  column-gap: 14px;
  border-bottom: 1px solid #d0d0d0;
  position: relative;
  align-items: center;
}
.bl_userRow.bl_userRow__inactive {
  background-color: #eee;
}

.bl_userRow_img {
  display: block;
  min-width: 60px;
  width: 60px;
  height: 60px;
  border-radius: 30px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #d0d0d0;
}
.bl_userRow_name {
  font-weight: 600;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  display: flex;
  flex-direction: column;
  word-break: break-all;
  word-wrap: break-word;
  position: relative;
  width: fit-content;
  min-width: 4em;
  line-height: 1;
  padding-bottom: 2px;
}
.bl_userRow_info {
  font-size: 12px;
  line-height: 1;
  padding-top: 6px;
  color: #555;
}
.bl_userRow_rightBudge {
  font-size: 13px;
  color: #555;
  font-weight: 500;
  position: absolute;
  right: 11px;
  top: calc(50% + 8px);
  transform: translateY(-50%);
}
.bl_userRow_date {
  font-size: 11px;
  color: #B2B2B2;
  position: absolute;
  right: 11px;
  top: 15%;
}


/*
* PWA 
*/
@media screen and (max-width: 500px) {
  .PF_PWA .bl_footer {
    min-height: 88px;
    height: auto;
    padding-bottom: 30px;
  }
}
/* 運営 追加オファー状況管理 */
.bl_confirmModal.bl_deleteExtraOfferRecortConfirmModal .bl_confirmModal_msg > div {
  text-align: left;
  width: fit-content;
  margin: 0 auto 5px;
  
}
.bl_confirmModal.bl_deleteExtraOfferRecortConfirmModal .bl_confirmModal_msg > div > p {
  display: flex;
}
.bl_confirmModal.bl_deleteExtraOfferRecortConfirmModal .bl_confirmModal_msg > div > p > span {
  display: block;
  min-width: 60px;
  /* padding: 40px 0; */
}
.bl_offerPointTotal {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
    padding: 0 13px;
}
.bl_offerPointTotalHead {
    font-size: 20px;
    font-weight: 600;
}
.bl_offerPointTotalData {
    font-size: 20px;
    font-weight: 600;
    position: relative;
}
.bl_offerPointNormal {
    background-color: #fff;
    padding: 10px 15px;
    display: flex;
    justify-content: space-between;
    border-radius: 5px;
    margin-bottom: 20px;
}
.bl_offerPointNormalHead {
    font-size: 16px;
    font-weight: 600;
}
.bl_offerPointNormalData {
    font-size: 16px;
    font-weight: 600;
}
.bl_offerPointLimited {
    background-color: #fff;
    padding: 10px 15px;
    border-radius: 5px;
}
.bl_offerPointLimitedFlx {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #B2B2B2;
    padding-bottom: 10px;
}
.bl_offerPointLimitedFlx .bl_offerPointLimitedHead {
    font-size: 16px;
    font-weight: 600;
}
.bl_offerPointLimitedFlx .bl_offerPointLimitedData {
    font-size: 16px;
    font-weight: 600;
}
.bl_offerPointLimitedContent {
    margin: 10px 0;
}
.bl_offerPointLimitedDay {
    display: flex;
    justify-content: space-between;
    margin: 10px 0;
}
.bl_offerPointLimitedDay .bl_offerPointLimitedHead {
    font-size: 14px;
    color: #B2B2B2;
}
.bl_offerPointLimitedDay .bl_offerPointLimitedData {
    font-size: 14px;
    font-weight: 600;
    color: #B2B2B2;
}
.bl_offerPointLimitedDayMore {
    font-size: 14px;
    color: #B2B2B2;
    text-align: center;
}
.bl_offerPointLimitedDayMore:after {
    display: inline-block;
    content: '';
    background-image: url(../images/down-arrow.svg);
    background-repeat: no-repeat;
    width: 10px;
    height: 12px;
    margin-left: 5px;
    margin-top: 20px;
}
.bl_offerPointPlan {
  font-size: 20px;
  font-weight: 600;
  margin-bottom:40px;
  padding-left: 13px;
}

/* 体験入店モーダル */
.bl_v2ConfirmModal {
  width: 85%;
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  background-color: #fff;
  z-index: 11;
  border-radius: 15px;
  text-align: center;
}
.bl_v2ConfirmModal_textArea {
  padding: 30px 20px 20px;
}
.bl_v2ConfirmModal_ttl {
  font-size: 17px;
  font-weight: 600;
  color: #19223F;
  margin-bottom: 13px;
}
.bl_v2ConfirmModal_msg {
  font-size: 13px;
  color: #90929F;
  margin-bottom: 30px;
}
.bl_v2ConfirmModal_notice {
  display: inline-block;
  color: var(--color-primary);
  margin-top: 10px;
}
.bl_v2ConfirmModal_notice_gray {
  display: inline-block;
  color: #90929F;
  margin-top: 10px;
}
.bl_v2ConfirmModal_btn {
  width: 255px;
  height: 40px;
  color: #fff;
  line-height: 40px;
  border-radius: 20px;
  margin: 0 auto;
}
@media screen and (max-width: 500px) {
  .bl_v2ConfirmModal_btn {
      width: 100%;
  }
}
.bl_v2ConfirmModal_btn a {
  display: block;
}
.bl_v2ConfirmModal_btn_v {
  background-color: var(--color-primary-dark);
}
.bl_v2ConfirmModal_btn_o {
  background: -webkit-gradient(linear, left top, right top, from(#f4a467), to(#fdc261));
  background: linear-gradient(to right, #f4a467, #fdc261);
}
.bl_v2ConfirmModal_btn_outline_gray {
  background: #fff;
  border: 1px solid #90929F;
  color: #90929F;
}
.bl_v2ConfirmModal_bottom {
  background-color: #E3E4E8;
  border-radius: 0 0 15px 15px;
  color: #90929F;
  padding: 10px 0 15px;
}
.bl_v2ConfirmModal_bottom a {
  display: block;
}

/*
|----------------------------------------
| ポップアップモーダル スタイリング
|----------------------------------------
*/

/**
* モーダルの共通スタイル（新UIのモーダルです）
* bl_alertModal, .bl_confirmModal, .bl_v2ConfirmModalで使用
*/
.bl_modal {
  /* width: 78%; */
  /* max-width: 304px; */
  width: 304px;
  position: fixed;
  left: 50%;
  top: 48%;
  transform: translate(-50%,-50%);
  background-color: #fff;
  z-index: 11;
  border-radius: 18px;
  text-align: center;
}
.bl_modal_textArea {
  padding: 30px 20px 25px;
}
.bl_modal_ttl {
  font-size: 17px;
  font-weight: 600;
  color: #19223F;
  margin-bottom: 10px;
}
.bl_modal_msg {
  font-size: 13px;
  color: #90929F;
  margin-bottom: 16px;
}
.bl_modal_msg__red {
  color: #FF4D4F;
}
.bl_modal_notice {
  display: inline-block;
  color: var(--color-primary);
  margin-top: 10px;
}
.bl_modal_notice_gray {
  display: inline-block;
  color: #90929F;
  margin-top: 10px;
}
.bl_modal_notice_red {
  display: inline-block;
  color: #FF4D4F;
  margin-top: 10px;
}
.bl_modal_btn {
  display: block;
  width: 255px;
  height: 40px;
  color: #fff;
  line-height: 40px;
  border-radius: 20px;
  margin: 0 auto;
}
@media screen and (max-width: 500px) {
  .bl_modal_btn {
      width: 92%;
  }
}

/**
* 注意書き/エラー表示モーダル
*/
.bl_alertModal {}

/*
* 店舗向けポップアップ
*/
/* 店舗向けポップアップ一覧 */
.bl_storePopupListPage_head h1 {
  height: 90px;
  font-size: 16px;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
}
.bl_storePopupListPage_head_actions {
  padding-bottom: 16px;
  margin-top: -10px;
}
.bl_storePopupListPage_head_btn_new {
  display: block;
  width: fit-content;
  font-size: 14px;
  color: #508ff3;
  border-bottom: 1px solid;
  margin-left: auto;
  margin-right: 4px;
  font-weight: 500;
}
.bl_storePopupList {
  display: flex;
  flex-direction: column;
  row-gap: 20px;
}
.bl_storePopupList_item {
  background-color: #fff;
  padding-top: 18px;
  padding-bottom: 20px;
  border-radius: 4px;
  -webkit-box-shadow: 0 0 12px 2px rgba(0, 0, 0, 0.06);
  box-shadow: 0 0 12px 2px rgba(0, 0, 0, 0.06);
}
.bl_storePopupList_item > * {
  padding-left: 14px;
  padding-right: 14px;
}
.bl_storePopupList_item_head {
  border-bottom: 1px dashed #E5E5E5;
  padding-bottom: 10px;
}
.bl_storePopupList_item_head_label,
.bl_storePopupList_item_body_msg_label {
  padding-bottom: 4px;
  font-weight: 600;
  font-size: 13px;
}
.bl_storePopupList_item_head_cont {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.bl_storePopupList_item_body {
  padding-top: 10px;
}
.bl_storePopupList_item_body_msg_cont {
  font-size: 13px;
  word-wrap: break-word;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 10;
  overflow: hidden;
}
.bl_storePopupList_item_body_btn {
  padding-top: 20px;
  display: flex;
  column-gap: 10px;
}
.bl_storePopupList_item_body_btn_edit,
.bl_storePopupList_item_body_btn_delete {
  width: calc(50% - 5px);
  height: 40px;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
  border-radius: 20px;
  padding-left: 15px;
  padding-right: 15px;
}
.bl_storePopupList_item_body_btn_edit {
  background-color: #fff;
  color: #7A7A7A;
  border: 2px solid #7A7A7A;
}
.bl_storePopupList_item_body_btn_delete {
  background-color: #fff;
  color: #E60000;
  border: 2px solid #E60000;
}
/* ポップアップ */
.bl_popup {
  transition-property: opacity;
  transition-duration: 0.5s;
  background: #fff;
  position: fixed;
  z-index: 40;
  border-radius: 6px;
  max-height: 90%;
  width: 90%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  overflow-y: hidden;
  flex-direction: column;
  box-sizing: border-box;
}
.bl_popup_bg_cover{
	position: fixed;
	background: rgba(0, 0, 0, .5);
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 30;
}
.bl_popup_header {
  font-weight: bold;
  font-size: 15px;
  display: flex;
  border-radius: 6px 6px 0px 0px;
  flex-direction: row-reverse;
  background-color: var(--color-primary);
  color: white;
  height: 50px;
  justify-content: center;
  align-items: center;
}
.bl_popup_msg {
  padding: 20px 10px 0 10px;
  text-align: center;
}
.bl_popup_sub, .bl_popup_text {
  text-align: justify;
  overflow-y: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
  max-height: 300px;
  padding: 20px;
  box-sizing: border-box;
  white-space: pre-wrap;
  word-wrap: break-word;
}
.bl_popup_text > a {
  font-size: 14px;
  color: #508ff3;
}
.bl_popup_sub {
  border-bottom: 1px solid var(--color-primary);
  font-weight: bold;
  max-height: 150px;
}
.bl_popup_btns {
  display: -webkit-box;
  display: flex;
  color: #90929F;;
  padding: 10px 0;
  box-sizing: border-box;
  flex-shrink: 0;
  background: #E3E4E8;
}
.bl_popup .bl_popup_btns > a {
  width: 50%;
  text-align: center;
  padding: 8px 0;
  box-sizing: border-box;
}
.bl_popup .bl_popup_btns > a:first-child {
  border-right: 1px solid;
}
.bl_popup .bl_popup_btns > form {
  display: block;
  width: 50%;
  text-align: center;
}
.bl_popup .bl_popup_btns > form button {
  font-weight: normal;
  width: 100%;
  padding: 8px 0;
  display: block;
}
.bl_popup_checkbox {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 10px 0;
}
.bl_popup_checkbox label {
  margin-left: 8px;
  font-size: 14px;
}

/* 他店舗入店中のお知らせモーダル */
.bl_enterGirlModal {
  background: #fff;
  position: fixed;
  z-index: 20;
  border-radius: 12px;
  min-width: 330px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.bl_enterGirlModal_ttl {
  text-align: center;
  font-weight: 600;
  font-size: 16px;
  padding-top: 24px;
}
.bl_enterGirlModal_btn {
  background-color: #e3e4e8;
  border-bottom-right-radius: 12px;
  border-bottom-left-radius: 12px;
  display: block;
  width: 100%;
  text-align: center;
  padding: 10px 0;
  font-weight: 500;
  color: #9799a5;
}
.bl_enterGirlModal_msg {
  padding: 14px 20px 24px;
  text-align: center;
  color: #9799a5;
}
.entered_store_banner {
  /* position: absolute;
  top: 58px;
  z-index: 10;
  padding: 2.5px;
  left: 50%;
  transform: translateX(-50%);
  width: 94%;
  border-radius: 12px;
  box-shadow: 0px 4px 5px rgba(0, 0, 0, 0.2);
  background-color: var(--color-primary); */
  display: none; /* バナー機能廃止のため非表示 */
}
.entered_store_banner_content{
  background: #ffffff;
  border-radius: 10px;
  padding: 5px;
}
.entered_store_banner_inner {
  display: flex;
  align-items: center;
  margin: 3px;
}
.entered_store_info_mark {
  width: 45px;
  margin-left: 18px;
  margin-right: 30px;
}
.entered_store_banner_text {
  color: #aaaaaa;
  font-weight: 200;
  text-align: left;
  font-size: 10px;
  overflow-wrap: break-word;
  width: 65%;
  box-sizing: border-box;
}
.entered_store_name {
  font-size: 18px;
  padding-bottom: 7px;
}
.bl_v2ConfirmModal {
  width: 85%;
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  background-color: #fff;
  z-index: 11;
  border-radius: 15px;
  text-align: center;
}
.bl_v2ConfirmModal_textArea {
  padding: 30px 20px 20px;
}
.bl_v2ConfirmModal_ttl {
  font-size: 16px;
  font-weight: 600;
  color: #19223F;
  margin-bottom: 13px;
}
.bl_v2ConfirmModal_msg {
  font-size: 13px;
  color: #90929F;
  margin-bottom: 30px;
}
.bl_v2ConfirmModal_notice {
  display: inline-block;
  color: var(--color-primary);
  margin-top: 10px;
}
.bl_v2ConfirmModal_bottom {
  background-color: #E3E4E8;
  border-radius: 0 0 15px 15px;
  color: #90929F;
  padding: 10px 0 15px;
}
.bl_v2ConfirmModal_bottom a {
  display: block;
}


.fade-button-slide-enter-active,
.fade-button-slide-leave-active {
  transition: opacity 0.3s, transform 0.3s;
}
.fade-button-slide-enter-from,
.fade-button-slide-leave-to {
  opacity: 0;
  transform: translateY(20px);
}


.bl_loading {
  height: 94%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.spinner {
  width: 44px;
  height: 44px;
  border: 4px solid #ccc;
  border-top-color: var(--color-primary);
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* 経験店舗タグのスタイル */
.bl_experienceShop_tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
}

.bl_experienceShop_tag {
  display: inline-flex;
  align-items: center;
  background-color: #fff;
  border: 1px solid var(--color-primary);
  border-radius: 5px;
  padding: 6px 6px;
  font-size: 14px;
  color: var(--color-primary);
}

.bl_experienceShop_tag_text {
  margin-right: 8px;
  padding-left: 4px;
}

.bl_experienceShop_tag_remove {
  background: none;
  color: var(--color-primary);
  font-size: 12px;
  font-weight: bold;
  cursor: pointer;
  padding: 0;
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  transition: background-color 0.2s;
  border: solid 1px var(--color-primary);
}

.bl_experienceShop_tag_remove:hover {
  background-color: var(--color-primary);
  color: white;
}



/* チップスタイル */
.bl_chipGroup {
  display: flex;
  flex-wrap: wrap;
  gap: 11px;
  margin-top: 15px;
  margin-bottom: 25px;
}

.bl_chip_input {
  display: none;
}

.bl_chip {
  display: inline-block;
  padding: 12px 20px;
  border: 1px solid #ddd;
  border-radius: 25px;
  background: #fff;
  color: #A8A8A8;
  cursor: pointer;
  transition: all 0.3s ease;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.2;
}

 .bl_chip--selected {
    width: 100%;
    display: flex;
    align-items: center;
    column-gap: 10px;
    padding: 12px 10px;
 }

/* hoverスタイルはポインティングデバイス使用時のみ適用 */
@media (hover: hover) and (pointer: fine) {
  .bl_chip:hover {
    border-color: var(--color-primary);
    background: #fff5f5;
  }
}
.bl_chip_icon{
    width:20px;
}
/* ベーススタイル（共通部分） */
.bl_chip_icon.mask {
  width: 20px;
  height: 20px;
  display: inline-block;
  background-color: currentColor;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}

/* 各項目に応じた個別クラス */
.bl_chip_icon--payback {
  -webkit-mask-image: url("../images/profile_point_icon01.svg");
  mask-image: url("../images/profile_point_icon01.svg");
}

.bl_chip_icon--environment {
  -webkit-mask-image: url("../images/profile_point_icon02.svg");
  mask-image: url("../images/profile_point_icon02.svg");
}

.bl_chip_icon--no_quota {
  -webkit-mask-image: url("../images/profile_point_icon03.svg");
  mask-image: url("../images/profile_point_icon03.svg");
}

.bl_chip_icon--near_home {
  -webkit-mask-image: url("../images/profile_point_icon04.svg");
  mask-image: url("../images/profile_point_icon04.svg");
}

.bl_chip_icon--shift {
  -webkit-mask-image: url("../images/profile_point_icon05.svg");
  mask-image: url("../images/profile_point_icon05.svg");
}

.bl_chip_icon--support {
  -webkit-mask-image: url("../images/profile_point_icon06.svg");
  mask-image: url("../images/profile_point_icon06.svg");
}

.bl_chip_icon--dorm {
  -webkit-mask-image: url("../images/profile_point_icon07.svg");
  mask-image: url("../images/profile_point_icon07.svg");
}

.bl_chip_icon--interior {
  -webkit-mask-image: url("../images/profile_point_icon08.svg");
  mask-image: url("../images/profile_point_icon08.svg");
}

.bl_chip_icon--fame {
  -webkit-mask-image: url("../images/profile_point_icon09.svg");
  mask-image: url("../images/profile_point_icon09.svg");
}


/* ラベルのcolor切替で、アイコン色も追従 */
.bl_chip_input:checked + .bl_chip {
  color: var(--color-primary-solid);
}
.bl_chip_input:checked + .bl_chip {
  background: var(--color-primary-100);
  color: var(--color-primary-solid);
  border-color: var(--color-primary-solid);
}

/* .bl_chip_input:checked + .bl_chip:hover {
  background: var(--color-primary-100);
  border-color: var(--color-primary);
} */

.whitespace-nowrap {
  white-space: nowrap;
}

/* ==================================================
   プラン変更機能拡張用CSS（2025/07追加）
   ================================================== */

/* 変更方法選択コンテナ */
.bl_planChange_methodContainer {
  background: #f8f9fa;
}


/* ラジオボタンオプションのホバー効果 */
.bl_planChange_radioOption:hover {
  border-color: var(--color-primary-dark) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
}

.bl_planChange_radioOption.active {
  border-color: var(--color-primary-dark) !important;
  background: #f8f9fa !important;
}

/* プラン変更ボタンの無効化状態 */
.bl_planChange_submitBtn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  background: #ccc !important;
}

/* 確認ダイアログのスタイル拡張 */
.bl_planChange_typeImmediate {
  /* color: #ff6b35 !important; */
  font-weight: 500;
}

.bl_planChange_typeScheduled {
  font-weight: bold;
}

.bl_planChange_noticeHeader {
  background: rgb(255 77 79 / 0.1);
}


.bl_planChange_btnCancel:hover {
  background: #f5f5f5 !important;
  border-color: #ccc !important;
}

.bl_planChange_btnPrimary:hover {
  background: var(--color-primary-dark) !important;
  opacity: 0.9;
}

.bl_planChange_btnPrimary:disabled {
  background: #ccc !important;
  cursor: not-allowed !important;
}

/* レスポンシブ対応 */
@media (max-width: 768px) {
  .bl_planChangeMethod {
    margin: 16px -8px !important;
    padding: 12px !important;
  }
  
  .bl_planChange_radioOption {
    flex-direction: column !important;
    text-align: left !important;
  }
  
  .bl_planChange_radioInput {
    margin-right: 0 !important;
    margin-bottom: 8px !important;
  }

  .bl_planConfirm {
    /* max-width: 90vw !important; */
    padding: 16px !important;
  }

  .bl_planConfirm_actions {
    /* flex-direction: column !important; */
    /* gap: 8px !important; */
  }

  .bl_planChange_btnPrimary,
  .bl_planChange_btnCancel {
    width: 100% !important;
  }
}





/**
* TOP (今はLPからの新規登録フォームのみ)
*/
.bl_homePage {
  background-color: var(--color-primary);
  min-height: 100vh;
}

/* TOP LPからのフォーム */
.lp-form {
    background: #FF84A1;
    position: relative;
    min-height: 100svh;
}
.lp-form__bg {
  position: absolute;
  inset: 0;                /* top/right/bottom/left: 0 の短縮 */
  background: #FF84A1 url('../images/login_lp_fv.jpg');
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: top;
  pointer-events: none;
  z-index: 0;              /* コンテンツより下層 */
  opacity: 1;              /* 初期：画像見せる */
  transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1);
  overflow: hidden;
}
@media screen and (max-height: 770px) {
    .lp-form__bg {
        background-position: 100% -60px;
    }
}
.lp-form__bg::after {
  content: '';
  display: block;
  width: calc(100% + 2px);
  height: 422px;
  position: absolute;
  left: -1px;
  right: 0;
  bottom: 0px;
  background-image: url('../images/login_lp_fv_bottom.png');
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: top;
  pointer-events: none;
  z-index: 0;              /* コンテンツより下層 */
  opacity: 1;              /* 初期：画像見せる */
}
/* 画面の高さが760pxを下回ったら位置を調整 */
@media (max-height: 760px) {

}

/* コンテンツ側を前面に */
#lpRegistrationApp {
  position: relative;
  z-index: 1;
}
.lp-form__container {
  position: absolute!important;
  left: 15px;
  right: 15px;
  bottom: 30px; /* 初期＝選択画面は下から40px */
}
.lp-form__header {
    margin-bottom: 18px;
}

.lp-form__header-logo {
    display: block;
    margin: 0 auto 17px;
    width: 20%;
}
.lp-form__header-title {
    display: block;
    margin: 0 auto;
    width: 78%;
}

/* ==================================================
   Store point icons styling (2025/11追加)
================================================== */
.bl_chip--storePoint {
  display: flex !important;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 12px;
}

.bl_chip--storePoint .bl_chip_icon {
  width: 20px;
  height: 20px;
  display: inline-block;
  vertical-align: middle;
}

.bl_chip--storePoint span {
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
}

.bl_chip_input:disabled + .bl_chip--storePoint {
  opacity: 0.5;
  cursor: not-allowed;
}

/* hoverスタイルはポインティングデバイス使用時のみ適用 */
@media (hover: hover) and (pointer: fine) {
  .bl_chip--storePoint:hover {
    border-color: var(--color-primary-solid);
    background: #fff5f5;
  }
}

.bl_chip_input:checked + .bl_chip--storePoint {
  background: var(--color-primary-100);
  color: var(--color-primary-solid);
  border-color: var(--color-primary-solid);
}

/* チェック済み + hoverスタイルもポインティングデバイス使用時のみ適用 */
@media (hover: hover) and (pointer: fine) {
  .bl_chip_input:checked + .bl_chip--storePoint:hover {
    background: var(--color-primary-100);
    border-color: var(--color-primary-solid);
  }
}

.bl_chip_input:checked + .bl_chip--storePoint .bl_chip_icon {
  filter: brightness(0) saturate(100%) invert(48%) sepia(82%) saturate(1932%) hue-rotate(318deg) brightness(102%) contrast(102%);
}


.textarea--template {
  min-height: 320px;
}