/* ===== Display Toggle Overrides ===== */
/* sf-hidden は display:none!important なので、!important でオーバーライド */

/* タブレットブロック: 768px で表示 */
@media screen and (max-width: 768px) {
  [data-s-04befdb8-bc5c-41a9-a55c-a2ba0dc04e8b] { display: flex !important; }
  [data-s-20bde45a-3e5b-4e61-b2b8-baa32a3b3cf0] { display: flex !important; }
  [data-s-2076075b-7123-4040-9830-cc57e36bc5f5] { display: flex !important; }
  [data-s-c4e24610-748f-4e37-a084-b3f5a92b9ba8] { display: flex !important; }
}
/* タブレットブロック: 480px で非表示に戻す */
@media screen and (max-width: 480px) {
  [data-s-04befdb8-bc5c-41a9-a55c-a2ba0dc04e8b] { display: none !important; }
  [data-s-20bde45a-3e5b-4e61-b2b8-baa32a3b3cf0] { display: none !important; }
  [data-s-2076075b-7123-4040-9830-cc57e36bc5f5] { display: none !important; }
}
/* モバイルブロック: 480px で表示 */
@media screen and (max-width: 480px) {
  [data-s-b3f529e8-e44a-4304-a8d9-e2e03f52fd5c] { display: flex !important; }
  [data-s-0c69baaf-fece-47ea-bb7c-cb8d0b5d157f] { display: flex !important; }
  [data-s-d3a3b74f-cc73-4646-bce8-30bf3d87647a] { display: flex !important; }
  [data-s-1276d974-d31a-4087-9cb4-c3e38e358671] { display: flex !important; }
}


/* ===== Search Service — Tablet (768px) ===== */

.biz-search-tablet {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 60px;
  width: 100%;
  max-width: 1320px;
  padding: 80px 30px;
  box-sizing: border-box;
}

.biz-search-tablet__heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}

.biz-search-tablet__en {
  margin: 0;
  font-family: Inter, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.2;
  color: #000;
}

.biz-search-tablet__ja {
  margin: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.6;
  color: #000;
}

.biz-search-tablet__body {
  display: flex;
  flex-direction: column;
  gap: 60px;
  width: 100%;
}

.biz-search-tablet__section {
  display: flex;
  flex-direction: column;
  gap: 28px;
  width: 100%;
}

.biz-search-tablet__subheading {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
}

.biz-search-tablet__line {
  display: block;
  width: 4px;
  height: 38px;
  background: #FF0000;
  flex-shrink: 0;
}

.biz-search-tablet__subheading p {
  margin: 0;
  font-family: Lato, sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5;
  color: #000;
}

.biz-search-tablet__cards {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  background: #fff;
  padding: 40px 20px;
  box-sizing: border-box;
}

.biz-search-tablet__card {
  display: flex;
  flex-direction: column;
  position: relative;
  width: calc(50% - 8px);
  background: #000;
  text-decoration: none;
  overflow: hidden;
}

.biz-search-tablet__card-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.15);
  opacity: 0;
  z-index: 2;
  transition: opacity 480ms cubic-bezier(0.19, 1, 0.22, 1);
}

.biz-search-tablet__card:hover .biz-search-tablet__card-overlay {
  opacity: 1;
}

.biz-search-tablet__card-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  position: relative;
  z-index: 1;
}

.biz-search-tablet__card-label span {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: #fff;
  line-height: 1.4;
}

.biz-search-tablet__card-label img {
  width: 12px;
  height: auto;
  flex-shrink: 0;
}

.biz-search-tablet__card-img {
  width: 100%;
  height: auto;
  display: block;
}


/* ===== Search Service — Mobile (<=480px) ===== */

.biz-search-sp {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 40px;
  width: 100%;
  padding: 70px 20px;
  box-sizing: border-box;
}

.biz-search-sp__heading {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
}

.biz-search-sp__en {
  margin: 0;
  font-family: Inter, sans-serif;
  font-size: 44px;
  font-weight: 700;
  line-height: 1.2;
  color: #000;
}

.biz-search-sp__ja {
  margin: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.0;
  color: #000;
}

.biz-search-sp__body {
  display: flex;
  flex-direction: column;
  gap: 60px;
  width: 100%;
}

.biz-search-sp__section {
  display: flex;
  flex-direction: column;
  gap: 28px;
  width: 100%;
}

.biz-search-sp__subheading {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
}

.biz-search-sp__line {
  display: block;
  width: 4px;
  height: 38px;
  background: #FF0000;
  flex-shrink: 0;
}

.biz-search-sp__subheading p {
  margin: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.5;
  color: #000;
}

.biz-search-sp__cards-wrap {
  background: #fff;
  padding: 40px 20px;
  box-sizing: border-box;
}

.biz-search-sp__cards {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.biz-search-sp__card {
  display: flex;
  flex-direction: column;
  position: relative;
  width: 100%;
  background: #000;
  text-decoration: none;
  overflow: hidden;
}

.biz-search-sp__card-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 1;
  transform: scale(0, 1);
  transform-origin: center left;
  z-index: 2;
  transition: transform 420ms cubic-bezier(0.445, 0.05, 0.55, 0.95),
              opacity 420ms cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.biz-search-sp__card:hover .biz-search-sp__card-overlay {
  opacity: 0.4;
  transform: scale(1, 1);
}

.biz-search-sp__card-label {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px 40px 0 0;
  position: absolute;
  bottom: 0;
  left: 0;
  background: #fff;
  z-index: 1;
}

.biz-search-sp__card-label span {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: #000;
  line-height: 1.3;
  letter-spacing: 0.02em;
}

.biz-search-sp__card-label img {
  width: 16px;
  height: auto;
  flex-shrink: 0;
  transition: transform 420ms cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.biz-search-sp__card:hover .biz-search-sp__card-label img {
  transform: translateX(7px);
}

.biz-search-sp__card-img {
  width: 100%;
  height: auto;
  display: block;
}


/* ===== Topics — Mobile CTA (<=768px) ===== */

.biz-topics-sp-cta {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
}

.biz-topics-sp-cta span {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: #000;
  transition: color 480ms cubic-bezier(0.19, 1, 0.22, 1);
}

.biz-topics-sp-cta img {
  width: 10px;
  height: auto;
  transition: filter 480ms cubic-bezier(0.19, 1, 0.22, 1);
}

[data-s-c4e24610-748f-4e37-a084-b3f5a92b9ba8]:hover .biz-topics-sp-cta span {
  color: #fff;
}

[data-s-c4e24610-748f-4e37-a084-b3f5a92b9ba8]:hover .biz-topics-sp-cta img {
  filter: brightness(0) invert(1);
}
