@media only screen and (min-width: 992px) {
  .t-logoPc60 .siteTitle__logo {
    height: 90px;
    padding: 10px 0;
  }
}
@media only screen and (min-width: 992px) {
  .menuBtn__link {
    height: 90px;
    line-height: 90px;
  }
}
@media only screen and (min-width: 992px) {
  .l-main {
    width: calc(74% - 40px);
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 768px) {
  .l-main {
    width: calc(74% - 30px);
    margin-bottom: 0;
  }
  .l-sidebar {
    width: 26%;
  }
}

@media only screen and (max-width: 1024px) {
  .siteTitle__logo {
		height: 90px;
		padding: 10px 0;
	}
  .l-wrapper {
    display: block;
  }
  .l-main {
    width: 100%;
    margin-bottom: 3em;
  }
  .l-sidebar {
    width: 100%;
  }
}
@media only screen and (max-width: 1023px) {
  .t-logoSp30 .siteTitle__logo {
    height: 80px;
  }
}

html.home-front .l-headerBottom .container {
  max-width: 100%;
}

html.home-front .subsidy-search.container {
  max-width: 1170px;
  background: white;
	border-radius: 12px;
	padding: 2rem;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
	border: 1px solid var(--border);
}

.menuBtn__link {
  background: #025cb2;
}
.bottomFooter__topBtn {
  background-color: #025cb2;
}

h2.wp-block-heading {
  font-size: 20px;
  border-left: 4px solid #0070c0;
  padding-left: 10px;
  margin: 1.5em 0 1em;
  font-weight: bold;
  color: #222;
}

.pager__item {
  color: #025cb2;
  border: none;
  margin: 0 0.1rem;
}

/* ページネーション：リンク色 */
.pagination .pager__item a.page-numbers {
  color: #025cb2; /* 通常リンク色（例） */
  text-decoration: none;
}

/* ホバー時 */
.pagination .pager__item a.page-numbers:hover {
  color: #fff; /* ホバー色（例） */
  background-color: #025cb2;
  border: none;
}

/* 現在ページ */
.pagination .pager__item-current,
.pagination .pager__item:hover {
  color: #fff;
  background-color: #025cb2; /* 現在ページ背景色 */
}

/* Prev / Next */
.pagination .pager__item-prev a,
.pagination .pager__item-next a {
  color: #025cb2;
  display: inline-block;
}

/* Prev/Next の擬似要素がホバー判定を邪魔しないようにする */
.pagination .pager__item-prev::before,
.pagination .pager__item-next::before {
  pointer-events: none;
}


/* Prev/Next は li:hover でも白＋背景を維持する */
.pagination .pager__item-prev:hover a,
.pagination .pager__item-next:hover a {
  color: #fff;
  background-color: #025cb2;
  border: none;
}


.pagination .pager__item.pager__item-prev.is-disabled,
.pagination .pager__item.pager__item-next.is-disabled {
  display: none;
}

.page-numbers.dots {
  color: #025cb2;
  border: none;
}

.wp-block-search__label {
  display: none;
}
/*
.searchBtn,
.widget_search {
  display: none !important;
}
*/
.eyecatch-main,
.eyecatch .eyecatch__link img {
	display: none;
}
.related__item .eyecatch {
	max-width: fit-content;
}
.eyecatch:before {
	padding-top: 0;
}
.eyecatch__cat {
	position: relative;
  display: block;
	max-width: 100%;
}
.related h2.heading {
  margin-bottom: 52px;
}

/*-------------------------------------------------------------*/
.subsidy-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 360px));
  /*grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));*/
  gap: 24px;
}

.card-link {
  text-decoration: none;
  color: inherit;
}

.subsidy-card {
  display: block;
  height: 100%;
  background: #fff;
  border: 2px solid #cee7fe;
  border-radius: 4px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  transition: all 0.3s ease;
  overflow: hidden;
}

.subsidy-card:hover {
  border: 2px solid #0376e4;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0.08);
}

.subsidy-table {
  width: 100%;
  border-collapse: collapse;
}

.subsidy-table th,
.subsidy-table td {
  /*padding: 12px;*/
  /*border: 1px solid #eee;*/
  font-size: 14px;
  vertical-align: top;
}

.subsidy-table th {
  background-color: #f8f8f8;
  width: 30%;
  font-weight: bold;
}
.subsidy-table td {
  overflow: hidden;
}


/*-------------------------------------------------------------*/
@media only screen and (min-width: 992px) {
  .divider {
    margin-top: 30px;
    margin-bottom: 60px;
    margin-left: auto;
    margin-right: auto;
    padding: 30px 0;
    background-color: #025cb2/*#f5f9ff*/;
  }
}
@media only screen and (max-width: 991px) {
  .divider {
    margin-left: auto;
    margin-right: auto;
  }
}
.divider {
  margin-top: 0;
  margin-bottom: 40px;
  padding: 42px 0 22px;
}

.swiper-slide {
  height: auto;
  display: flex;
  align-items: stretch;
}

/*-----------------------------*/
/* Swiper 全体の高さを確保 */
.swiper-carousel {
  position: relative;
  padding-bottom: 0 /*32px;*/ /* ページネーション用の余白を確保 */
}

/* ページネーションの位置調整 */
.swiper-paginationBottom0 {
  position: absolute;
  bottom: 10px;
  left: 0;
  width: 100%;
  text-align: center;
  z-index: 2;
}

.swiper-pagination-bullet {
  background: #b5dafe;
}
.swiper-pagination-bullet-active {
  background: #7ffede;
}

/* === 上部 Swiper：見出しなしナビ（右寄せ） === */
.popular-swiper-controls{
  display:flex;
  justify-content:flex-end;
  gap:.5em;
  margin: 2.5rem 0 .5rem;
  padding-right: 10px;
}

.popularSwiper-prev,
.popularSwiper-next{
  width:40px;
  height:40px;
  background-color:#fff;
  border:2px solid #ccc;
  border-radius:4px;
  cursor:pointer;
  background-image:url(./assets/ic-arrow.svg);
  background-repeat:no-repeat;
  background-position:center;
  background-size:10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
}

.popularSwiper-next{ transform: rotate(180deg); }

/* 小さめ端末ではやや縮小 */
@media (max-width: 480px){
  .popularSwiper-prev,
  .popularSwiper-next{ width:36px; height:36px; }
}



/*-----------------------------*/
.subsidy-card {
  /*max-width: 380px;*/
  height: 100%;
  display: flex;
  flex-direction: column;
}

.subsidy-title,
.subsidy-excerpt,
.subsidy-price {
  padding: 12px;
}

.subsidy-title {
  color: #0376e4;
  background-color: #e3f6fc;
}

.subsidy-title {
  position: relative;
  line-height: 1.4;
  z-index: 1;
  font-size: 18.86px;
}
.subsidy-excerpt {
  position: relative;
  line-height: 1.4;
  z-index: 1;
}
.subsidy-price {
  margin-top: 10px;
  border-top: 1px solid #ddd;
}

.subsidy-price {
  display: flex;
  align-items: center;
  gap: 0.5em;
  font-size: 14px;
}

.subsidy-price.ellipsis {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.subsidy-price.full {
  white-space: normal;
  overflow: visible;
}

.subsidy-price .label {
  font-weight: bold;
  color: #333;
}

.subsidy-price .amount {
  overflow: hidden;
  white-space: nowrap;
  width: 7em;
  text-overflow: ellipsis;
  font-weight: 600;
  color: #0070c0;
}


.home-front .subsidy-title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp:2;
  overflow: hidden;
  height: 2.4em;
  height: 44px;
  min-height: 2.4em;
}
.home-front .subsidy-news .subsidy-title {
  height: 68px;
}

.home-front .subsidy-excerpt {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  overflow: hidden;
  height: 5em;
}
.home-front .subsidy-news .subsidy-excerpt {
  height: 93px;
}


/*-------------------------------------------------------------*/
.wp-block-table td, .wp-block-table th {
  border: unset;
}
.wp-block-table th {
  width: 160px;
}

@media (max-width: 767px) {
  .content table th,
  .wp-block-table th {
    width: 25%;
  }
}

/*-------------------------------------------------------------*/
.heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  margin-bottom: 36px;
  padding-bottom: 24px;
  border-bottom: 1px dashed #014280;
}
.heading .section-title {
  margin: 0 0 0 10px;
  font-size: 32px;
}

/*-------------------------------------------------------------*/
.subsidy-search h3 {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 40px;
  margin-right: 40px;
  padding: 0 0 0 13px;
  background-color: #025cb2;
  color: #fff;
  font-size: 16px;
}
.subsidy-search h3:after {
  position: absolute;
  display: block;
  content: "";
  height: 40px;
  width: 20px;
  top: 0;
  right: -19px;
  border-radius: 0 100% 100% 0% / 0 50% 50% 0;
  background-color: #025cb2;
}

.subsidy-search-form {
  display: flex;
  flex-wrap: no-wrap;
  gap: 1em;
  margin-bottom: 2em;
}
.subsidy-search-form label {
  font-weight: bold;
}
.subsidy-search-form select {
  padding: 0.5em;
  border-radius: 6px;
  border: 2px solid #D7DFE7;
  font-size: 1.4em;
}
.subsidy-search-form select {
  width: fit-content;
  text-align: center;
}
.subsidy-search button {
  width: 100%;
  margin: 1em 0 2em;
  background-color: #025cb2;
	border: none;
	border-radius: 30px;
	color: #fff;
	font-size: 1.4em;
	padding: .8em;
  transition: all 0.3s ease;
}
.subsidy-search button:hover {
  background-color: #0376e4;
  cursor: pointer;
}

/* --- Pills base --- */
.sgp-pills-fieldset{border:0;padding:0;margin:0}
.sgp-pills{display:flex;flex-wrap:wrap;gap:10px}
.sgp-radio{position:absolute;left:-9999px}

.sgp-pill{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 40px;
  padding:.55rem .95rem;
  border-radius:999px;
  border:2px solid #D7DFE7;
  background-color:#fff;
  color:#111827;
  font-weight: bold;
  line-height:1;
  cursor:pointer;
  user-select:none;
  transition: all 0.3s ease;
}
/* Hover（ホバー中は薄く強調） */
.sgp-pill:hover,
.sgp-pill.is-hover { border-color:#1967D2; background-color:#e3f6fc }

/* Active（選択中は強い色＋リング） */
.sgp-pill.is-active{
  background-color:#e3f6fc; color:#0376e4; border-color:#0376e4;
  box-shadow: 0 0 0 2px rgba(25,103,210,.15);
}
/* Active + Hover（やや明るく） */
.sgp-pill.is-active:hover,
.sgp-pill.is-active.is-hover{ background:#fff; color:#0376e4; border-color:#1f71e3; }

/* Pressed感（クリック瞬間） 
.sgp-pill:active{ transform: scale(0.98); }*/

/* Keyboard focus（Tab移動での視認性） */
.sgp-radio:focus-visible + .sgp-pill{
  box-shadow: 0 0 0 2px rgba(25,103,210,.35);
  border-color:#1967D2;
}

/* 余白が窮屈な場合は親で調整 */
/* .subsidy-search-form .sgp-pills{gap:8px} */




/*.areaBlock {

}*/
.areaBlock .inner {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 25px;
}
.areaBlock label {
  margin-right: 10px;
  font-size: 1.2em;
}

.subsidy-tags {
  margin-top: 4px;
  padding: 1em;
  border: 1px solid #ccc;
  border-radius: 8px;
}

.subsidy-tags legend {
  font-weight: bold;
  margin-bottom: 1em;
  font-size: 1.1em;
}

.subsidy-tags label {
  display: inline-block;
  width: 22%;
  margin: 0.5em 1%;
  vertical-align: top;
  white-space: nowrap;
}

@media (max-width: 768px) {
  .subsidy-tags label {
    width: 48%;
    margin: 0.5em 1%;
  }
}
@media (max-width: 767px) {
  .subsidy-search-form {
    flex-wrap: wrap;
  }
}

/*-------------------------------------------------------------*/
.subsidy-news {
  margin-top: 3em;
  padding: 3em 0;
  background: #f5f9ff;
}
.subsidy-news .container {
  padding: 0;
  margin: 0 auto;
  max-width: 1170px;
}
.subsidy-news .heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 36px;
  padding-bottom: 24px;
  border-bottom: 1px dashed #014280;
}
.subsidy-news .slick-arrows {
  display: flex;
  gap: 0.5em;
}
.subsidy-news .slick-prev,
.subsidy-news .slick-next {
  width: 40px;
  height: 40px;
  background-color: #fff;
  background-image: url(./assets/ic-arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 10px;
  border: 2px solid #ccc;
  border-radius: 4px;
  cursor: pointer;
}
.subsidy-news .slick-next {
  transform: rotate(180deg);
}
.subsidy-news-slide {
  padding: 0 10px;
}

.slick-arrows {
  display: flex;
  gap: 0.5em;
  padding-right: 10px;
}
.slick-prev, .slick-next {
  position: relative;
  display: flex;
  width: 40px;
  height: 40px;
  justify-content: center;
  align-items: center;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
  background-color: #fff;
  border-radius: 4px;
  cursor: pointer;
  border: 2px solid #ccc;
  background-image: url(./assets/ic-arrow.svg);
  background-repeat: no-repeat;
  background-size: 10px;
  background-position: center;
}
.slick-prev {
  left: 0;
}
.slick-next {
  right: 0;
  transform: rotate(180deg);
}
.slick-prev:before,
.slick-next:before {
  content: "";
  font-size: 0;
}


.subsidy-related .container {
  padding: 0;
}


.widget.widget_categories ul li,
.widget.widget_nav_menu ul.menu li {
	border-color: #fff;
}

.widget.widget_categories ul li a,
.widget.widget_nav_menu ul.menu li a {
	background: #025cb2;
}

.widget.widget_categories ul li a:hover,
.widget.widget_nav_menu ul.menu li a:hover {
	background: #e3f6fc;
  color: #0376e4;
}



@media only screen and (min-width: 992px) {
	.u-none-pc {
		display: block !important;
	}
}

@media only screen and (max-width: 1024px) {
  .subsidy-related .container {
    margin-left: 0;
    margin-right: 0;
  }
  .subsidy-grid {
    grid-template-columns: repeat(auto-fit, minmax(280px, 360px));
    gap: 18px;
  }
}

/* 補助金アーカイブ & 地域タクソノミーは1カラム表示に */
body.post-type-archive-subsidy .l-sidebar,
body.tax-region .l-sidebar {
  display: none !important;
}

.l-main--full {
  width: 100% !important;
  max-width: 100% !important;
}

/* THE THOR 側が .l-wrapper のレイアウトを維持する場合の保険 */
body.post-type-archive-subsidy .l-wrapper,
body.tax-region .l-wrapper {
  display: block !important;
}




/* 一時対応：ドット非表示、矢印のみ */
.swiper-container.swiper-carousel .swiper-pagination{ display:none !important; }

.divider {
	padding: 42px 0;
  background-color: #025cb2 /*#f5f9ff*/;
}



.swiper-carousel .swiper-button-next,
.swiper-carousel .swiper-button-prev {
  display: grid;
  place-content: center;
  width: 6.4rem;
  height: 6.4rem;
  cursor: pointer;
  -webkit-transition: var(--transition);
  transition: var(--transition);
  top: 50%;
	transform: translate(0, -50%);
  bottom: auto;
  --swiper-navigation-size: 48px;
 
}
.swiper-button-next::before,
.swiper-button-prev::before {
	position: absolute;
  width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: "";
	border-radius: 50%;
}
.swiper-button-prev::before,
.swiper-button-next::before {
	background-color: #025cb2;
  opacity: .6;
}

.swiper-button-prev::after,
.swiper-button-next::after {
  width: 1.5rem;
	height: 1.5rem;
  color: #fff;
  content: "";
	border: solid #fff;
	border-width: 3px 3px 0 0;
}
.swiper-button-prev::after {
  margin-left: 0.8rem;
  -webkit-transform: rotate(-45deg);
	transform: rotate(-135deg);
}
.swiper-button-next::after {
  margin-right: 0.8rem;
  -webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}


@media only screen and (max-width: 767px) {
  .divider {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}



/* ---------------------------------------------------------------------------------------------------------------------- */
/* enquete
-------------------------------------------------------------- */
.enquete {
    width: 70%;
    margin: 0 auto 5em;
}
.enquete dt {
    margin-bottom: 0;
    padding-bottom: 0;
    background-color: transparent;
    font-weight: bold;
}
.enquete dd {
    margin: 0 0 20px;
    border: none;
    border-bottom: 1px dotted #ddd;
}
.enquete #form01, #form02 {
  width: 100%;
}
.enquete .wpcf7-list-item {
  display: inline-flex;
}
.enquete .wpcf7-radio input {
  width: 20px;
  margin-right: 10px;
} 
.enquete .form__group__label__optional {
    position: relative;
    margin-right: 1.2em;
    padding: 0.25em 0.9em;
    border: 1px solid #555;
    background: #fff;
    color: #555;
    font-size: 0.8em;
    font-weight: normal;
}
.enquete .form__group__label__required {
    position: relative;
    margin-right: 1.2em;
    padding: 0.25em 0.9em;
    background: #555;
    color: #fff;
    font-size: 0.8em;
    font-weight: normal;
}
.enquete input,
.enquete textarea {
  width: 100%;
  padding: 11px;
  border: 1px solid #ddd;
  border-radius: 4px;
  font-size: inherit;
}
.enquete input::placeholder {
  color: #888;
}
/* 旧Edge対応 */
.enquete input::-ms-input-placeholder {
  color: #888;
}
/* IE対応 */
.enquete input:-ms-input-placeholder {
  color: #888;
}
.enquete input:focus::-webkit-input-placeholder,
.enquete textarea:focus::-webkit-input-placeholder {
  color: transparent;
}
.enquete input:focus::-moz-placeholder,
.enquete textarea:focus::-moz-placeholder {
  color: transparent;
}
.enquete input:focus::-ms-input-placeholder,
.enquete textarea:focus::-ms-input-placeholder {
  color: transparent;
}
.enquete input:focus::placeholder,
.enquete textarea:focus::placeholder {
  color: transparent;
}

.enquete .btSubmit {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1em 0;
}
.enquete .btSubmit .bt {
  width: auto;
  padding: 0.6em 1em;
  font-size: 1.6em;
}
.enquete .btSubmit .bt.back {
    margin-left: 2.0em;
}
.enquete button,
.enquete input[type="button"],
.enquete input[type="submit"] {
    /*background-color: #222;
    border: 0;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    -webkit-box-shadow: none;
    box-shadow: none;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 800;
    line-height: 1;
    padding: 1em 2em;
    text-shadow: none;
    -webkit-transition: background 0.2s;
    transition: background 0.2s;*/
}
.enquete input + button,
.enquete input + input[type="button"],
.enquete input + input[type="submit"] {
    /*padding: 0.75em 2em;*/
}

.enquete button.secondary,
.enquete input[type="reset"],
.enquete input[type="button"].secondary,
.enquete input[type="reset"].secondary,
.enquete input[type="submit"].secondary {
    /*background-color: #ddd;
    color: #222;*/
}

.enquete button:hover,
.enquete button:focus,
.enquete input[type="button"]:hover,
.enquete input[type="button"]:focus,
.enquete input[type="submit"]:hover,
.enquete input[type="submit"]:focus {
    /*background: #767676;*/
}

.enquete button.secondary:hover,
.enquete button.secondary:focus,
.enquete input[type="reset"]:hover,
.enquete input[type="reset"]:focus,
.enquete input[type="button"].secondary:hover,
.enquete input[type="button"].secondary:focus,
.enquete input[type="reset"].secondary:hover,
.enquete input[type="reset"].secondary:focus,
.enquete input[type="submit"].secondary:hover,
.enquete input[type="submit"].secondary:focus {
    /*background: #bbb;*/
}

@media screen and (max-width: 767px) {
    .enquete {
        width: 90%;
    }
}


h1.voice.archive-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  margin-bottom: 36px;
  padding-bottom: 24px;
  border-bottom: 1px dashed #014280;
  font-size: 2.4rem;
}

