.about_english_video_box_wrap {
    margin-bottom: -30px;
}

.mb-30px {
    margin-bottom: 30px;
}

/**
*   Adding loading of advanced submit button on center
*/
.ic2-fa-spin-blue {
    border: 3px solid var(--theme-color-primary-config-custom, #ff8000);
    border-radius: 50%;
    border-top: 3px solid #f3f3f3;
    width: 25px;
    height: 25px;
    display: block;
    position: absolute;
    left: calc(50% - 13px);
    animation: ic2-spin 1s linear infinite;
}

@keyframes ic2-spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.ic2-outlined-spin-blue-btn {
    position: relative;
}

.relative {
    position: relative;
}

.absolute {
    position: absolute;
}

.top-0 {
    top: 0;
}

.left-0 {
    left: 0;
}

.link_box_title_custom {
    display: flex;
    align-items: end;
    justify-content: center;
    gap: 5px;
}

.link_box_ranking_site_custom {
    position: relative;
}

.link_box_ranking_site_custom span {
    position: absolute;
    top: 41%;
    left: 46%;
    transform: translate(-50%, -50%);
    font-family: 'Inter', sans-serif;
    color: var(--theme-color-primary-config-custom, #ff8000);
    font-size: 12px;
    font-weight: 700;
    padding: 5px;
    border-radius: 50%;
}

.pc_hader_tel_block .pc_hader_tel_link {
    text-wrap: nowrap;
}
.tox.tox-tinymce-inline .tox-editor-header {
    top: 160px !important;
}
/* コラム絞り込み: 選択中のカテゴリー・タグ */
.column_category_search_link.is-current {
    box-shadow: 0 0 0 2px var(--theme-color-primary-config-custom, #123d83);
}
.column_tag_search_link.is-current {
    text-decoration: none !important;
    font-weight: 700 !important;
    color: var(--theme-color-primary-config-custom, #123d83) !important;
}

/* 人気求人特集: 画像未登録時の SVG アイコン */
.side_pick_job_list .side_pick_job_item .side_pick_job_link .side_pick_link_img.is-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff4e8;
}
.side_pick_link_img.is-icon img {
    width: 36%;
    max-width: 40px;
    height: auto;
}

/* フォーム背景を軽い WebP に差し替え (元は resources/sass の bg_form.png 866KB / bg_form_sp.png 2.5MB)。
   Sass を再ビルドせずに済むよう、ビルド後に読み込まれるこのファイルで上書きしている */
.common_register_block,
.common_register_btn_block {
  background-image: url(../images/common/bg_form.webp);
}
@media only screen and (max-width: 640px) {
  .common_register_btn_block {
    background-image: url(../images/common/bg_form_sp.webp);
  }
}

/* スマホで入力欄をタップしたときに画面が拡大されないようにする。
   iOS は文字サイズ 16px 未満の入力欄にフォーカスすると自動で拡大するため
   (viewport の maximum-scale / user-scalable=no は拡大縮小を妨げるので外した) */
@media only screen and (max-width: 840px) {
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="number"],
  input[type="password"],
  input[type="search"],
  input[type="date"],
  input:not([type]),
  select,
  textarea {
    font-size: 16px !important;
  }
}

/* 求人詳細の「この求人に応募する」(会員登録と同時に応募)。応募ボタンからスクロールしてきたとき固定ヘッダーに隠れないように */
#job_apply_register {
  scroll-margin-top: 100px;
}
.ks_register_apply_job {
  margin: 0 0 24px;
  padding: 16px 20px;
  border: 2px solid var(--theme-color-button-config-custom, #ff8000);
  border-radius: 8px;
  background: #fff8ee;
}
.ks_register_apply_job_label {
  margin: 0 0 4px;
  font-size: 13px;
  font-weight: 700;
  color: var(--theme-color-button-config-custom, #ff8000);
}
.ks_register_apply_job_name {
  margin: 0 0 6px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
}
.ks_register_apply_job_note {
  margin: 0;
  font-size: 13px;
  color: #555;
}
.ks_complete_applied_job a {
  font-weight: 700;
  text-decoration: underline;
}

/* トップのスライド1枚目 (img)。背景画像のスライドと同じ見え方にする */
.fv_slide_img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
@media only screen and (max-width: 840px) {
  .fv_slide_img {
    object-position: center right;
  }
}

/* 閲覧数 (50回を超えた求人・記事だけ出す。user/common/view_count.blade.php) */
.view_count {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  line-height: 1;
  color: #777;
  white-space: nowrap;
}
.view_count svg {
  flex-shrink: 0;
}
.view_count_inline {
  margin-left: 10px;
  vertical-align: middle;
}
.view_count_detail {
  align-self: center;
  margin-left: 4px;
  font-size: 13px;
}
.view_count_card {
  align-self: center;
  margin-top: 4px;
}
