/* =====================================================
   company.css
   - 企業情報（一覧カード）ページ専用
   - 2カラムの間隔 / 高さ揃え
   - BOX内テキストの右切れ防止
===================================================== */

/* ===== 2-column list wrapper ===== */
.child_page_list{
  display:flex;
  flex-wrap:wrap;
  align-items:stretch;
  gap:20px; /* column/row gap */
}

/* Keep 2 columns with gap consideration */
.child_page_list > .child_page_block{
  box-sizing:border-box;
  display:flex;
  flex:0 0 calc(50% - 10px); /* half of gap */
  width:auto;

  /* important for flex text clipping issues */
  min-width:0;
}

/* Mobile: single column */
@media (max-width:768px){
  .child_page_list{
    gap:12px;
  }

  .child_page_list > .child_page_block{
    flex-basis:100%;
  }
}

/* ===== Card inner layout to equalize height ===== */
.child_page_blockInner{
  display:flex;
  flex-direction:column;
  width:100%;
  height:100%;
  min-width:0;
}

.child_page_blockInner .thumbImage{
  flex:0 0 auto;
}

.child_page_blockInner .childText{
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  min-width:0;
}

.child_page_blockInner .childText .moreLink{
  margin-top:auto;
}

/* =====================================================
   Fix: BOX inner text clipped on right
   - Theme may apply fixed width/nowrap/overflow rules
===================================================== */

.child_page_blockInner .childText,
.child_page_blockInner .childText p,
.child_page_blockInner .childText p a{
  max-width:100% !important;
  width:auto !important;
  min-width:0 !important;
}

.child_page_blockInner .childText p{
  overflow:visible !important;
}

.child_page_blockInner .childText p a{
  display:inline !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}