.elementor-12 .elementor-element.elementor-element-dc92105{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-12 .elementor-element.elementor-element-2eca1c4{--display:flex;--padding-top:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-12 .elementor-element.elementor-element-fa22101{text-align:center;}.elementor-12 .elementor-element.elementor-element-fa22101 .elementor-heading-title{font-family:"Noto Sans JP", Sans-serif;font-size:24px;letter-spacing:1px;}.elementor-12 .elementor-element.elementor-element-47eb3bf{font-family:"Noto Sans JP", Sans-serif;font-size:14px;color:#356796;}.elementor-12 .elementor-element.elementor-element-47eb3bf a{color:#919191;}.elementor-12 .elementor-element.elementor-element-47eb3bf a:hover{color:#A7A7A7;}.elementor-12 .elementor-element.elementor-element-bca2bf7{--display:flex;--padding-top:0px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}@media(max-width:767px){.elementor-12 .elementor-element.elementor-element-2eca1c4{--padding-top:20px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-12 .elementor-element.elementor-element-fa22101 .elementor-heading-title{font-size:20px;}.elementor-12 .elementor-element.elementor-element-47eb3bf{padding:0px 20px 0px 20px;font-size:12px;}.elementor-12 .elementor-element.elementor-element-bca2bf7{--padding-top:0px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}}@media(min-width:768px){.elementor-12 .elementor-element.elementor-element-dc92105{--content-width:480px;}}/* Start custom CSS for shortcode, class: .elementor-element-c2c2c30 *//* =========================================
   Cards grid（常に2カラム）
========================================= */
.sekou-cards--onecol{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

/* =========================================
   Card
========================================= */
.sekou-card{
  border-radius: 18px;
  background: #fff;
  border: 1px solid #e5e7eb;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.08);
  overflow: hidden;
}

.sekou-card__link{
  display: block;
  color: inherit;
  text-decoration: none;
}

.sekou-card__image-wrap{
  position: relative;
  overflow: hidden;
}

.sekou-card__image,
.sekou-card__image--noimg{
  width: 100%;
  height: 220px;
  display: block;
  object-fit: cover;
}

.sekou-card__image--noimg{
  background: #e5e7eb;
}

/* tag */
.sekou-card__tag{
  position: absolute;
  top: 12px;
  right: 12px;
  padding: 4px 12px;
  border-radius: 999px;
  background: #2a5cab;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
}

/* body */
.sekou-card__body{
  position: relative;
  padding: 14px 16px 16px;
}

/* area */
.sekou-card__area{
  display: inline-block;
  padding: 3px 8px;
  border-radius: 999px;
  background: #e5e7eb;
  color: #4b5563;
  font-size: 11px;
  font-weight: 600;
  margin-bottom: 6px;
}

/* title */
.sekou-card__title{
  font-size: 18px;
  line-height: 1.4;
  margin: 4px 0 6px;
  font-weight: 700;
  color: #111827;

  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* text */
.sekou-card__text{
  font-size: 13px;
  line-height: 1.7;
  color: #4b5563;
  margin: 0;

  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* arrow */
.sekou-card__arrow{
  position: absolute;
  right: 16px;
  bottom: 14px;
  width: 32px;
  height: 32px;
  border-radius: 999px;
  background: #2a5cab;
  display: flex;
  align-items: center;
  justify-content: center;
}

.sekou-card__arrow::before{
  content: "→";
  color: #fff;
  font-size: 16px;
}

/* 矢印と被らないように（PC/スマホ共通で効かせる） */
.sekou-card__body{
  padding-bottom: 44px; /* 矢印分の下余白 */
}
.sekou-card__title,
.sekou-card__text{
  padding-right: 44px;  /* 矢印分の右余白 */
}

/* hover */
.sekou-card__link:hover .sekou-card__title{
  text-decoration: underline;
}
.sekou-card__link:hover .sekou-card__arrow{
  transform: translateX(2px);
  transition: transform .2s ease;
}

/* =========================================
   Mobile adjustments（2カラム維持）
========================================= */
@media (max-width: 600px){
  .sekou-cards--onecol{ gap: 12px; }
  .sekou-card{ border-radius: 14px; }

  .sekou-card__image,
  .sekou-card__image--noimg{
    height: 120px;
  }

  .sekou-card__body{ padding: 10px 10px 40px; } /* 下は矢印分 */
  .sekou-card__tag{
    top: 8px; right: 8px;
    padding: 3px 8px;
    font-size: 10px;
  }

  .sekou-card__area{
    font-size: 10px;
    padding: 2px 6px;
    margin-bottom: 4px;
  }

  .sekou-card__title{
    font-size: 13px;
    margin: 4px 0 4px;
    padding-right: 34px;
  }

  .sekou-card__text{
    font-size: 11px;
    padding-right: 34px;
  }

  .sekou-card__arrow{
    right: 10px;
    bottom: 10px;
    width: 26px;
    height: 26px;
  }
  .sekou-card__arrow::before{ font-size: 14px; }
}

/* =========================================
   Pagination（外枠なし・黒丸なし）
========================================= */
.sekou-pagination{
  margin-top: 28px;
  text-align: center;
}

.sekou-pagination ul.page-numbers{
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;

  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
}

.sekou-pagination ul.page-numbers > li{
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.sekou-pagination ul.page-numbers a.page-numbers,
.sekou-pagination ul.page-numbers span.page-numbers{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 40px !important;
  height: 40px !important;
  padding: 0 12px !important;

  border-radius: 999px !important;
  border: 1px solid #e5e7eb !important;
  background: #fff !important;
  color: #111827 !important;

  font-size: 13px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  box-shadow: 0 6px 14px rgba(15, 23, 42, 0.06) !important;
}

.sekou-pagination ul.page-numbers span.page-numbers.current{
  background: #2a5cab !important;
  border-color: #2a5cab !important;
  color: #fff !important;
}

.sekou-pagination ul.page-numbers span.page-numbers.dots{
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  min-width: auto !important;
  padding: 0 6px !important;
}

@media (max-width: 600px){
  .sekou-pagination{ margin-top: 22px; }

  .sekou-pagination ul.page-numbers a.page-numbers,
  .sekou-pagination ul.page-numbers span.page-numbers{
    min-width: 36px !important;
    height: 36px !important;
    padding: 0 10px !important;
    font-size: 12px !important;
  }
}/* End custom CSS */