@charset "UTF-8";

/* Weglot sidebar switcher: fixed at sidebar bottom, outside tk-themesidebar */
.tk-weglot-sidebar-fixed {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 300px;
    min-height: 44px;
    padding: 0 0 0 16px;
    z-index: 9999;
    background-color: #fff;
    display: flex;
    align-items: center;
}
.tk-weglot-sidebar-fixed .weglot-container,
.tk-weglot-sidebar-fixed .weglot_switcher {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}
.tk-weglot-sidebar-fixed .weglot_switcher,
.tk-weglot-sidebar-fixed .weglot_switcher *,
.tk-weglot-sidebar-fixed .wg-li,
.tk-weglot-sidebar-fixed .wg-drop {
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}
/* Weglot固定バー(56px)分、asidenavbarの高さを縮めてlogoutが隠れないようにする */
.tk-themesidebar .tk-asidenavbar {
    height: calc(100vh - 506px) !important; /* 386px + 56px Weglot + 64px banner */
}
@media (max-width: 1199px) {
    .tk-weglot-sidebar-fixed {
        width: 80px;
        padding: 0;
    }
}
@media (max-width: 991px) {
    /* デフォルトは非表示。サイドバーが開いたときのみ表示 */
    .tk-weglot-sidebar-fixed {
        display: none;
    }
    /* .wr-expanded がつくとサイドバーがスライドインするので、その兄弟要素として表示 */
    .tk-themesidebar.wr-expanded ~ .tk-weglot-sidebar-fixed {
        display: flex;
        width: 300px;
        padding: 0 0 0 16px;
    }
    /* サイドバー非表示時: Weglotバーなし → 元の高さ */
    .tk-themesidebar .tk-asidenavbar {
        height: calc(100vh - 394px) !important; /* 330px + 64px banner */
    }
    /* サイドバー表示時: Weglotバーあり(44px) → 高さを縮めてlogoutを隠れないように */
    .tk-themesidebar.wr-expanded .tk-asidenavbar {
        height: calc(100vh - 438px) !important; /* 330px + 44px Weglot + 64px banner */
    }
}

/* Weglotデフォルトフローティングボタンを非表示 */
body .wg-default {
    display: none !important;
}

/* カスタム Weglot スイッチャー（DNSプロキシ環境用） */
.wg-custom-switcher {
    position: relative;
    display: inline-flex;
    align-items: center;
}
.wg-cs-current {
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    padding: 6px 10px;
    border-radius: 4px;
    font-size: 13px;
    color: #333;
    user-select: none;
    white-space: nowrap;
}
.wg-cs-current:hover {
    background: #f5f5f5;
}
.wg-cs-arrow {
    display: inline-block;
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 5px solid #666;
    margin-left: 2px;
    transition: transform 0.2s;
}
.wg-custom-switcher.wg-cs-open .wg-cs-arrow {
    transform: rotate(180deg);
}
.wg-cs-list {
    position: absolute;
    bottom: 100%;
    left: 0;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
    list-style: none;
    margin: 0 0 4px 0;
    padding: 4px 0;
    min-width: 130px;
    display: none;
    z-index: 10000;
}
.wg-custom-switcher.wg-cs-open .wg-cs-list {
    display: block;
}
.wg-cs-list li a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 12px;
    color: #333;
    text-decoration: none;
    font-size: 13px;
    white-space: nowrap;
}
.wg-cs-list li a:hover {
    background: #f5f5f5;
    color: #333;
}

/* トップバナー */
.pb-themesection:has(.tk-hero-banner-four) {
    background: #fff;
}
.tk-hero-banner-four .tk-homebanner_content h1 {
    max-width: 960px;
}
.tk-homebanner_content h1 {
    font: 600 3.6rem / 1.25em "Helvetica Neue", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Arial, "Noto Sans JP", Meiryo, sans-serif;
}
.pb-themesection .tk-homebanner_content h1 span {
  color: #fff !important;
  margin: 0;
}
.tk-hero-banner-four .banner-paragraph-text-color {
    max-width: 640px;
}
.tk-hero-banner-four .tk-tag {
    background: #F7F7F7;
}
.tk-hero-banner-four .tk-tag:hover {
  background: #FF385C !important;
  color: #fff !important;
}
/* トップバー */
.tk-header:has(.tk-header-topbar) {
    background: #F7F7F7;
}
.tk-header-topbar {
    background: #F7F7F7;
}
.tk-header-topbar-text{
  color: #353648;
}

/* ヘッダー */
@media (min-width: 1200px) {
  .tk-headerwrap{
    display: grid;
    grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); /* 左=1fr | 中央=nav | 右=1fr */
    align-items: center;
    gap: 16px;
  }
  .tk-navbar {
      margin-left: 0;
  }
}

.tk-logo a img {
    max-height: 54px;
}

.tk-navbarnav > li > a {
    font: 600 0.9375rem / 1.6666666667em "Helvetica Neue", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Arial, "Noto Sans JP", Meiryo, sans-serif;
}

.tk-navbar .navbar-toggler {
    color: #ff385c;
    border-radius: 0;
    background: none !important;
    background-color: none;
}

.navbar-toggler {
    font-size: 2rem;
    padding: 0;
}
@media (max-width: 767px) {
  .tk-header:has(.tk-header-topbar) > .container-fluid .tk-headerwrap {
    padding: 14px 15px;
}
.tk-logo a img {
    max-height: 42px;
}
}

/* フッター */
.tk-footer {
    background: #F7F7F7;
}
.tk-topfooter::after{
  background: #F7F7F7;
}

.tk-footerlogo a img {
    height: 54px;
}

/* 対象を “テキストリンク” に限定 */
.tk-footer .tk-fwidget_list a,
.tk-footer .tk-copyrights-list a,
.tk-footer .tk-fwidget_contact_list a {
  position: relative;           /* ← これが重要 */
  display: inline-block;        /* 下線の幅をテキスト幅に */
  text-decoration: none;
  color: #222222;
}

/* 下線の擬似要素 */
.tk-footer .tk-fwidget_list a::after,
.tk-footer .tk-copyrights-list a::after,
.tk-footer .tk-fwidget_contact_list a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;                 /* 文字とぶつかる場合は -2px などで微調整 */
  width: 100%;
  height: 2px;
  background-color: currentColor;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
  pointer-events: none;
}

/* hover しても色は変えない（常に #222） */
.tk-footer .tk-fwidget_list a:hover,
.tk-footer .tk-copyrights-list a:hover,
.tk-footer .tk-fwidget_contact_list a:hover {
  color: #222222 !important;   /* テーマの色上書き */
}

/* ホバー時：左→右へ伸長 */
.tk-footer .tk-fwidget_list a:hover::after,
.tk-footer .tk-copyrights-list a:hover::after,
.tk-footer .tk-fwidget_contact_list a:hover::after {
  transform: scaleX(1);
  color: #222222;
}

/* ロゴやSNSは除外（念のため） */
.tk-footer .tk-footerlogo a::after,
.tk-footer .tk-socialicons a::after {
  content: none;
}
.tk-footer a:visited{
  color:#6A6A6A !important;
}
.tk-footer_info .tk-description p,
.tk-footer .tk-fwidget_title strong,
.tk-fwidget_title h5,
.tk-fwidget_contact_list li i,
.tk-fwidget_contact_list li > span{
  color: #222222;
}
.tk-fcopyright_info{
    color: #222222;
}
.tk-socialicons > li > a > i {
    color: #222222;
}

@media (min-width: 1200px) {
  .tk-footer_info .tk-description{
    margin-right:50px;
  }
}

@media (max-width: 991px) {
    .tk-footer-copywrapper .tk-fcopyright_info {
        font-size: 12px;
    }
}
@media (max-width: 767px) {
    .tk-footer-copywrapper {
        padding: 0 !important;
    }
  .tk-fcopyright_list ul {
    font-size: 14px;
  }
}
@media (max-width: 420px) {
    .tk-footer-copywrapper {
        padding: 0 !important;
    }
}

/* トップページ*/
@media (max-width: 767px) {
.tk-hero-banner-four {
    padding: 30px 0 0 0;
}
.tk-tag {
  font-size: 12px;
}
.pb-themesection:has(.tk-expolreproject) {
  padding: 30px 10px;
}
.tk-section-accordion .accordion-button,
.tk-accordion-body p{
  font-size:16px;
}
  .tk-homepage.wr-overxhidden .pb-themesection:has(.tk-faqs-section){
    padding: 30px 10px;
  }
}
@media (max-width: 640px) {
  .tk-cardproject figure {
      bottom: 0;
    }
}

@media (max-width: 767px) {
.tk-scetiondb {
    padding: 30px 0;
}
}
.tk-employment-section{
  padding: 50px 0;
}

/* ページ*/
.tk-scetiondb {
    padding: 50px 0;
}

/* プロジェクト一覧 */

.tk-searchproject-section .container-fruid {
    padding-left: 0;
    margin-left: 0;
}

@media (min-width: 1200px) {
.tk-searchproject-section .container-fruid .row {
    margin-left: calc(var(--bs-gutter-x) * .5);
    margin-right: calc(var(--bs-gutter-x) * .5);
}
.row.main-projects{
  margin-right: calc(-.5 * var(--bs-gutter-x)) !important;
  margin-left: calc(-.5 * var(--bs-gutter-x))!important;
  padding-right: 0 !important;
  padding-left: 0 !important;
}
.tk-main-projects{
  padding-right: 0 !important;
  padding-left: 0 !important;
}
.tk-sidebar{
  min-width: 240px;
  }
.tk-sort.tk-searchproject{
  padding-right: 20px;
  }
.tk-main-projects{
  padding-right: 30px;
  }
}

@media (max-width: 767px) {
.tk-searchproject-section .container-fruid .row{
  margin-left: 0;
  margin-right: 0;
}
}

.tk-sort.tk-searchproject {
    padding-top: 20px !important;
}

.comboTreeDropDownContainer li {
    padding-left: 0
}

.pb-themesection:has(.tk-hero-banner-four) ~ .pb-themesection .tk-employment-section .tk-section_title p {
    display: none;
}

.tk-verified-info h5 {
    font-size: 16px;
}

/* プロジェクトカード */

.tk-verified-info h5 {
    font-size: 16px;
}

.project-slider, .tk-project-img {
  margin-bottom: 0 !important;
}
.swiper-wrapper {
    transition-timing-function: ease-in-out !important;
}
/* 上品でぬるっとしたカード感 */
.project-slider .splide__slide img {
  transition: transform 1s ease-in-out, opacity 1s ease-in-out;
  transform: scale(1);
  opacity: 1;
}

/* ホバー中（再生中）は軽くズーム＆フェード */
.project-slider.is-hovering .splide__slide.is-active img {
  transform: scale(1.02);
  opacity: 0.95;
}

/* 矢印・ドットを少しだけフェードアウトしてコンテンツ主役に */
.project-slider.is-hovering .splide__arrows,
.project-slider.is-hovering .splide__pagination {
  opacity: 0.2;
  transition: opacity 0.6s ease;
}

.tk-template-view .address {
  display: block;               /* または inline-block */
  max-width: 100%;             /* 幅を明示的に指定（重要） */
  flex: 0 1 auto;
  white-space: nowrap;          /* 折り返さない */
  overflow: hidden;             /* はみ出しを隠す */
  text-overflow: ellipsis;
  min-width: 0;/* 省略記号を表示 */
}

/* プロジェクト詳細 */
.tk-sidebar-title .tk-project-tag + h3 {
    font-size: 18px;
}

/* Livewire の height ゆらぎの影響を遮断する箱 */
.sticky-container {
    position: relative;
    min-height: 600px;
    height: auto;
    overflow: visible !important;
}

/* sticky 自体の安定化 */
.sticky-content {
    position: sticky;
    top: 16px;
    overflow: visible !important;
    will-change: transform;  /* ← Chrome の再計算バグを防止 */
}

/* sticky の境界要素は overflow hidden が必要 */
.tk-project-wrapper.cta,
.tk-project-box.tk-projectprice {
    overflow: hidden !important;
    contain: unset !important;
}


.tk-project-section .row {
    height: auto !important;
    min-height: auto !important;
}

@media (min-width: 1200px) {
.tk-project-wrapper.main{
  margin-right:50px;
}
}

#project-detail-slider img {
    border-radius: 10px;
}

.tk-project-price span.tk-proposal-tag-able{
    border: 1px solid #FF385C;
    background-color: #FF385C;
    color: #FFF;
}
.tk-project-price span.tk-proposal-tag-enable{
    border: 1px solid #147B58;
    background-color: #147B58;
    color: #FFF;
}

.tk-servicedetailtitle > h3 {
    margin-top: 10px;
}

.tk-jobdescription h1{
  font-size:20px;
  font-weight: 400;
  line-height: 1.25;
}
.tk-jobdescription h2{
  font-size:24px;
  font-weight: 400;
  line-height: 1.25;
}
.tk-jobdescription h3{
  font-size:20px;
  font-weight: 400;
  line-height: 1.25;
}
.tk-jobdescription p{
  font-size:16px;
}
.tk-verified-info > a {
    width: 100%;
    margin-bottom: 5px;
    line-height: 1.25;
}
.tk-servicedetailtitle span.tk-proposal-status{
  font-size: 14px !important;
  font-weight: 400 !important;
}
.tk-servicedetailtitle span.tk-proposal-tag-able{
    border: 1px solid #FF385C;
    background-color: #FF385C;
    color: #FFF;
}
.tk-servicedetailtitle span.tk-proposal-tag-enable{
    border: 1px solid #147B58;
    background-color: #147B58;
    color: #FFF;
}

.tk-project-holder .company-profile{
  margin:30px 0;
  padding:30px 0;
}

@media (max-width: 767px) {
.tk-servicedetailtitle > h3 {
    font-size: 20px;
}
.tk-project-title h3 {
    font-size: 20px;
}
.tk-project-title h4 {
    font-size: 20px;
}
}

/* プロジェクトページ　企業ブロック */

.tk-projectinfo_description{
  border-top:1px solid #eee;
  margin-top:10px;
}
.tk-projectinfo_description ul{
  padding-left: 0;
}
.tk-projectinfo_description ul ul{
  margin-left: 0;
}

.company-profile .tk-checkout-info {
  display: flex;
  align-items: center;       /* 全体を縦中央揃え */
  justify-content: flex-start;
  gap: 40px;
  flex-wrap: nowrap;         /* 折り返しなし（PC） */
  border-top:1px solid #eee;
}

.company-profile .tk-checkout-info li {
  display: flex;
  align-items: center;       /* アイコン・テキスト・数字を垂直中央揃え */
  gap: 8px;
  line-height: 1;          /* 行の高さを統一 */
  font-size: 16px;
  margin: 0;
  padding: 0;
}

.company-profile .tk-checkout-info li + li {
  margin-top:0 !important;
}

.company-profile .tk-checkout-info .tk-total-title {
  display: flex;
  align-items: center;
  gap: 6px;
  font-weight: 500;
  color: #222;
  line-height: 1;
}

.company-profile .tk-checkout-info li span {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  height: 40px;
}

@media (max-width: 767px) {
.tk-projectinfo_title {
    margin-bottom: 10px;
}
}

/* ボタン */
.company-profile .tk-checkout-info .tk-btn {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  background: #ff3b57;
  color: #fff;
  margin-top:0;
  padding: 10px 20px;
  border-radius: 8px;
  font-weight: 600;
  text-decoration: none;
  transition: background 0.3s ease;
  height: 40px;              /* 他の要素と高さを揃える */
  line-height: 1;
}

.company-profile .tk-checkout-info .tk-btn i {
  margin-left: 6px;
  font-size: 13px;
  line-height: 1;
}

.company-profile .tk-checkout-info .tk-btn:hover {
  background: #e8354e;
}

/* スマホ対応 */
@media (max-width: 1399px) {
 .company-profile  .tk-checkout-info {
    flex-wrap: wrap;
    gap: 16px;
  }
}

/* クライアント ダッシュボード */
.tk-green-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 30px;
    width: 90px;
    height: 90px;
    border-radius: 60px;
}

.tk-clients-section .swiper-slide img{
  max-width:160px;
}

/*# sourceMappingURL=main.css.map */
.tk-btn-disabled {
  background: #d1d5db;
  border-color: #d1d5db;
  color: #6b7280;
  cursor: not-allowed;
  pointer-events: none;
}

.tk-btn-disabled:hover,
.tk-btn-disabled:focus {
  background: #d1d5db;
  border-color: #d1d5db;
  color: #6b7280;
}

/* インフルエンサーページ */
.tk-sideprofile figure img {
    height: 130px;
    object-fit: cover;
}

.tk-project-guidelines__content ul li{
  color:rgba(8,19,26,0.6588235294117647);
}

.tk-employerproject-title .tk-price-two span,
.tk-employerproject-title .tk-price-two h4{
  display:none;
}

.tk-project-detail-list > li:first-child {
  display: none;
}
.tk-projectinfo_description h1,
.tk-projectinfo_description h2,
.tk-projectinfo_description h3{
  font-size:20px;
}

/* ログインーページ */
.tk-login-info img {
    max-width: 200px;
}
.tk-themeform__wrap {
    max-width: 600px;
}
.tk-login-note {
    font-size: 14px;
}
@media (max-width: 767px) {
    .form-group_action {
        display: flex;
        flex-direction: column;
        align-items: flex-start !important; /* ← 左寄せ */
        gap: 8px;
    }

    .form-group_action .tk-password-clr_light {
        display: block;
        width: 100%;               /* ← 100%幅で左端に揃う */
        text-align: left !important;          /* ← 左寄せ */
        margin-left: 0 !important;            /* 念のため */
    }
}
@media (max-width: 480px) {
    .tk-login-content {
        padding: 0;
    }
}


/* メッセージのコンタクトリストのコメントアウト */

.at-chat-tab #contact_list {
  display:none;
}

.at-sidebarhead_search {
  display:none!important;
}

.tb-tablepaymethod img {
  display: none;
}

/* ダッシュボード */

.tk-themeform__wrap{
  max-width: fit-content;
}

.tk-template-view {
    width: 100%;
}

/* ログイン */
.tk-login-info img {
    max-width: 200px;
}
.tk-login-note {
  margin-top: 30px;
  font-size: 0.95rem;
  line-height: 1.6;
}

.link-underline { text-decoration: underline; }

.tk-projectinfo_description ul ul{
  margin-left:0;
}

.tk-project-table-info .icon-check,
.tk-project-table-info .tk-btn-outline {
  background-color: #ffffff;
  color: #676767;
  margin-top: 4px;
  font-size: 14px;
}

.tk-project-table-content a.tk-success-tag,
.tk-project-table-content a.tk-success-tag:hover {
  background-color: #147B58!important;
}

.tk-original-button-flex {
  display: flex;
  flex-direction: column;
  margin-left: auto;
  align-items: flex-end;
}

.tk-original-button-message-flex {
  display: flex;
  justify-content: flex-end;
}

.tk-original-button-flex a.tk-start-chat,
.tk-original-button-flex a.tk-start-chat:hover {
  border: 1px solid #147B58;
  background-color: #ffffff!important;
  margin-right: 12px;
}

.tk-original-button-flex .tk-start-chat i {
  color: #147B58;
}


@media (min-width: 1920px) {
    .col-xxxl {
        flex:1 0 0%
    }

    .row-cols-xxxl-auto>* {
        flex: 0 0 auto;
        width: auto
    }

    .row-cols-xxxl-1>* {
        flex: 0 0 auto;
        width: 100%
    }

    .row-cols-xxxl-2>* {
        flex: 0 0 auto;
        width: 50%
    }

    .row-cols-xxxl-3>* {
        flex: 0 0 auto;
        width: 33.3333333333%
    }

    .row-cols-xxxl-4>* {
        flex: 0 0 auto;
        width: 25%
    }

    .row-cols-xxxl-5>* {
        flex: 0 0 auto;
        width: 20%
    }

    .row-cols-xxxl-6>* {
        flex: 0 0 auto;
        width: 16.6666666667%
    }

    .col-xxxl-auto {
        flex: 0 0 auto;
        width: auto
    }

    .col-xxxl-1 {
        flex: 0 0 auto;
        width: 8.33333333%
    }

    .col-xxxl-2 {
        flex: 0 0 auto;
        width: 16.66666667%
    }

    .col-xxxl-3 {
        flex: 0 0 auto;
        width: 25%
    }

    .col-xxxl-4 {
        flex: 0 0 auto;
        width: 33.33333333%
    }

    .col-xxxl-5 {
        flex: 0 0 auto;
        width: 41.66666667%
    }

    .col-xxxl-6 {
        flex: 0 0 auto;
        width: 50%
    }

    .col-xxxl-7 {
        flex: 0 0 auto;
        width: 58.33333333%
    }

    .col-xxxl-8 {
        flex: 0 0 auto;
        width: 66.66666667%
    }

    .col-xxxl-9 {
        flex: 0 0 auto;
        width: 75%
    }

    .col-xxxl-10 {
        flex: 0 0 auto;
        width: 83.33333333%
    }

    .col-xxxl-11 {
        flex: 0 0 auto;
        width: 91.66666667%
    }

    .col-xxxl-12 {
        flex: 0 0 auto;
        width: 100%
    }

    .offset-xxxl-0 {
        margin-left: 0
    }

    .offset-xxxl-1 {
        margin-left: 8.33333333%
    }

    .offset-xxxl-2 {
        margin-left: 16.66666667%
    }

    .offset-xxxl-3 {
        margin-left: 25%
    }

    .offset-xxxl-4 {
        margin-left: 33.33333333%
    }

    .offset-xxxl-5 {
        margin-left: 41.66666667%
    }

    .offset-xxxl-6 {
        margin-left: 50%
    }

    .offset-xxxl-7 {
        margin-left: 58.33333333%
    }

    .offset-xxxl-8 {
        margin-left: 66.66666667%
    }

    .offset-xxxl-9 {
        margin-left: 75%
    }

    .offset-xxxl-10 {
        margin-left: 83.33333333%
    }

    .offset-xxxl-11 {
        margin-left: 91.66666667%
    }

    .g-xxxl-0,.gx-xxxl-0 {
        --bs-gutter-x: 0
    }

    .g-xxxl-0,.gy-xxxl-0 {
        --bs-gutter-y: 0
    }

    .g-xxxl-1,.gx-xxxl-1 {
        --bs-gutter-x: .25rem
    }

    .g-xxxl-1,.gy-xxxl-1 {
        --bs-gutter-y: .25rem
    }

    .g-xxxl-2,.gx-xxxl-2 {
        --bs-gutter-x: .5rem
    }

    .g-xxl-2,.gy-xxxl-2 {
        --bs-gutter-y: .5rem
    }

    .g-xxxl-3,.gx-xxxl-3 {
        --bs-gutter-x: 1rem
    }

    .g-xxxl-3,.gy-xxxl-3 {
        --bs-gutter-y: 1rem
    }

    .g-xxxl-4,.gx-xxxl-4 {
        --bs-gutter-x: 1.5rem
    }

    .g-xxxl-4,.gy-xxxl-4 {
        --bs-gutter-y: 1.5rem
    }

    .g-xxxl-5,.gx-xxxl-5 {
        --bs-gutter-x: 3rem
    }

    .g-xxxl-5,.gy-xxxl-5 {
        --bs-gutter-y: 3rem
    }
}


html {
    overflow-x: hidden;
}
body.wr-overxhidden {
    overflow-x: visible !important; /* ← 上書きで sticky の scroll container を戻す */
}

/* ✅ sticky の親 column を確実に開放して sticky を復活させる */
.col-lg-5.col-xl-4 {
   position: sticky;
  top:20px;
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
    overflow: visible !important;
}

.sticky-container {
    position: static !important;
}

@media (min-width: 1200px) {
  .col-lg-5.col-xl-4 {
      align-self: flex-start !important;
  }
}

.tk-project-wrapper.cta,
.tk-project-box.tk-projectprice {
    overflow: visible !important;
}
/* 会員登録タブ */
.tk-signup-tabs {
    width: 50%;
    --signup-tab-height: 42px;
    position: relative;
    gap: 4px;
    margin-bottom: 20px;
    padding: 3px;
    border: 0;
    border-radius: 999px;
    background: #F9E8EB;
}
.tk-signup-tabs .nav-item {
    z-index: 2;
    flex: 1;
}
.tk-signup-tabs .nav-link {
    width: 100%;
    border: 0;
    color: #5F4B50;
    height: var(--signup-tab-height);
    font: 600 14px/1 "Helvetica Neue", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Arial, "Noto Sans JP", Meiryo, sans-serif;
    border-radius: 999px;
    background: transparent;
    transition: color 0.25s ease;
}
.tk-signup-tabs .nav-link:hover,
.tk-signup-tabs .nav-link:focus,
.tk-signup-tabs .nav-link.active {
    border: 0;
    color: #fff;
    background: #FF385C;
}
.tk-signup-tabs .tk-signup-tabs__indicator {
    position: absolute;
    top: 3px;
    bottom: 3px;
    left: 3px;
    width: calc(50% - 2.5px);
    border-radius: 999px;
    pointer-events: none;
    background: #FF385C;
    box-shadow: 0 4px 12px rgba(47, 31, 35, 0.1);
    transform: translateX(calc(100% * var(--signup-active-index, 0)));
    transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1);
}
.tk-signup-tabs[data-active-index="0"] { --signup-active-index: 0; }
.tk-signup-tabs[data-active-index="1"] { --signup-active-index: 1; }

@media (max-width: 575px) {
    .tk-signup-tabs {
        --signup-tab-height: 38px;
    }
}

/* Dashboard messenger unread badge (visible on all pages; LaraGuppy .at-notify only loads on /messenger) */
.tk-unread-badge--hidden {
    display: none !important;
}
.tk-unread-badge {
    display: inline-block;
    min-width: 1.2em;
    padding: 0.2em 0.5em;
    font-size: 0.7rem;
    font-weight: 600;
    line-height: 1.2;
    text-align: center;
    border-radius: 999px;
    background: #FF385C;
    color: #fff;
    vertical-align: middle;
    margin-left: 4px;
}
/* Activity unread badge next to buttons/links (proposal list, buyer projects, seller projects) */
.tk-project-activity-btn,
.tk-activity-link-with-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    text-decoration: none;
}
.tk-project-activity-btn .tk-unread-badge,
.tk-activity-link-with-badge .tk-unread-badge {
    margin-left: 0;
}
/* Activity unread: easier to scan (proposal list, buyer/seller project lists) */
.tk-project-activity-btn .tk-unread-badge:not(.tk-unread-badge--hidden),
.tk-activity-link-with-badge .tk-unread-badge:not(.tk-unread-badge--hidden) {
    font-size: 0.8125rem;
    min-width: 1.35rem;
    min-height: 1.35rem;
    padding: 0.2em 0.45em;
    font-weight: 700;
    line-height: 1.15;
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.95);
}
/* Sidebar cache-clear banner */
.tk-sidebar-banner-item {
    pointer-events: none;
}
.tk-sidebar-banner {
    margin: 12px 0;
    padding: 10px 12px;
    background-color: #fff8e1;
    border: 1px solid #ffe082;
    border-radius: 6px;
    font-size: 0.8rem;
    line-height: 1.6;
    color: #5d4037;
    white-space: normal;
    word-break: break-word;
    pointer-events: auto;
}
.tk-sidebar-banner a {
    display: inline !important;
    width: auto !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: none !important;
    white-space: normal !important;
    color: #e65100 !important;
    text-decoration: underline !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    pointer-events: auto;
}
.tk-themesidebar.tk-menufold .tk-sidebar-banner-item {
    display: none;
}