/* CTAのスタイル */
.tcd_cta { display:block; width:830px; text-decoration:none !important; max-width:100%; margin-top:var(--tcd-block-cta-margin-top-pc) !important; margin-bottom:var(--tcd-block-cta-margin-bottom-pc) !important; }
.tcd_cta .image_area { position:relative; overflow:hidden; width:100%; height:auto; aspect-ratio:830 / 200; }
.tcd_cta .image { position:absolute; top:0; left:0; width:100%; height:100%; z-index:1; object-fit:cover; }
.tcd_cta .overlay { position:absolute; top:0; left:0; width:100%; height:100%; z-index:2; }
.tcd_cta .content { position:absolute; top:0; left:0; width:100%; height:100%; z-index:3; padding:40px; display:flex; flex-direction:column; justify-content:center; gap:20px 0; color:#fff; }
.tcd_cta .sub_title { font-size:16px !important; font-weight:500; line-height:1.5; margin-top:calc(0.5em - 0.5lh); margin-bottom:calc(0.5em - 0.5lh); }
.tcd_cta .title { font-size:24px !important; font-weight:600; line-height:1.5; margin-top:calc(0.5em - 0.5lh); margin-bottom:calc(0.5em - 0.5lh); }
.tcd_cta .desc { font-size:16px !important; line-height:2.4; border:1px solid #ddd; margin-top:-1px; padding:40px; color:#000; }
@media (max-width: 767px) {
  .tcd_cta { margin-top:var(--tcd-block-cta-margin-top-sp) !important; margin-bottom:var(--tcd-block-cta-margin-bottom-sp) !important; }
  .tcd_cta .image_area { height:160px; }
  .tcd_cta .content { padding:20px; gap:10px 0; }
  .tcd_cta .title { font-size:18px !important; }
  .tcd_cta .sub_title { font-weight:500; font-size:12px !important; }
  .tcd_cta .desc { font-size:14px !important; line-height:2; padding:20px; }
}
