@charset "utf-8";

/*============================
MV
============================*/
.mv {
  height: 35.71vw;
  min-height: 4.00rem;
  max-height: 6.00rem;
  position: relative;
}
@media screen and (max-width: 640px) {
	.mv {
		min-height: 2.50rem;
		max-height: 3.50rem;
	}
}

.mv .bg_wrap {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}

.mv .bg_wrap::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  background-color: rgba(0,0,0,0.4);
}

.mv .bg_wrap img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.mv .txt_box {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  text-align: center;
  transform: translateY(-50%);
  z-index: 2;
  color: #FFF;
  text-shadow: 0 0.01rem 0.10rem rgba(0,0,0,0.28);
}

.mv .txt_box .ttl {
  font-size: 0.40rem;
  font-weight: 600;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 640px) {
	.mv .txt_box .ttl {
		font-size: 0.22rem;
		letter-spacing: 0.05em;
	}
}

.mv .txt_box .ttl span {
	font-size: 0.20rem;
	display: inline-block;
	padding: 0 0.10rem;
}
@media screen and (max-width: 640px) {
	.mv .txt_box .ttl span {
		font-size: 0.14rem;
		padding: 0 0.05rem;
	}
}

.mv .txt_box .catch {
  font-size: 0.18rem;
  font-weight: 500;
  line-height: 1.66;
  letter-spacing: 0.1em;
  padding-top: 0.28rem;
}
@media screen and (max-width: 640px) {
	.mv .txt_box .catch {
		font-size: 0.12rem;
		letter-spacing: 0.05em;
		padding-top: 0.15rem;
	}
}

/*============================
パンくずリスト
============================*/
/*============================
パンくずリスト
============================*/
.breadcrumb {
  padding: 0.20rem 0 0.60rem;
}

.breadcrumb .list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0 0.12rem;
  font-size: 0.12rem;
  font-weight: 500;
  width: 100%;    /* 幅を親に合わせる */
}

/* スマホ用設定 (640px以下) */
@media screen and (max-width: 640px) {
  .breadcrumb .list {
    gap: 0 0.10rem;
    font-size: 0.10rem;
    flex-wrap: nowrap;         /* スマホでは絶対に折り返さない */
    align-items: center;
    /* justify-content: flex-start; */
    overflow: hidden;          /* 全体の溢れを防止 */
  }
}

.breadcrumb .list .link {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;             /* 「トップ」などは縮ませない */
  white-space: nowrap;
}

.breadcrumb .list .link::after {
  content: "";
  width: 0.10rem;
  height: 1px;
  background-color: #999999;
  display: block;
  margin-left: 0.10rem;
}

@media screen and (max-width: 640px) {
  .breadcrumb .list .link::after {
    width: 0.06rem;
    margin-left: 0.06rem;
  }
}

.breadcrumb .list .link a {
  color: #145F81;
  text-decoration: underline;
}

.breadcrumb .list .current {
  flex-shrink: 1;             /* 幅が足りない時にこの要素が縮む */
  min-width: 0;               /* 省略を機能させるための魔法の1行 */
  overflow: hidden;
  text-overflow: ellipsis;    /* はみ出した文字を「…」にする */
  white-space: nowrap;        /* 改行させない */
}

/* ホバー設定 */
@media (hover: hover) {
  .breadcrumb .list .link a:hover {
    text-decoration: none;
  }
}

/*=======================
CMSページャー
=======================*/
.list_navi_wrap {
	text-align: center;
	font-size: 0.15rem;
	letter-spacing: 0.05em;
	padding:0.50rem 0;
}
@media screen and (max-width: 640px) {
	.list_navi_wrap {
		font-size: 0.14rem;
		padding:0.20rem 0 0.50rem;
	}
}

.list_navi_wrap .wp-pagenavi {
	display: flex;
	justify-content: center;
}
@media screen and (max-width: 599px) {
	.list_navi_wrap .wp-pagenavi {
		gap: 0 0.13rem;
	}
}

/* 現在のページ*/
.list_navi_wrap .wp-pagenavi .current {
	display: block;
	font-size: 0.20rem;
	color: #FFF;
	width: 0.50rem;
	line-height: 0;
	padding: 0.22rem 0 0.24rem;
	background-color: #145F81;
	margin: 0 0.08rem;
  border-radius: 50%;
}

@media screen and (max-width: 599px) {
	.list_navi_wrap .wp-pagenavi .current {
		font-size: 0.14rem;
		width: 0.30rem;
		padding: 0.15rem 0 0.17rem;
		margin: 0;
	}
}

/* 数字リンク*/
/*.list_navi_wrap .wp-pagenavi .page.larger {*/
.list_navi_wrap .wp-pagenavi .page {
	display: block;
	font-size: 0.20rem;
	color: #145F81;
	width: 0.50rem;
	line-height: 0;
	padding: 0.22rem 0 0.24rem;
	background-color: #F2F2F2;
	text-decoration: none;
	margin: 0 0.08rem;
  border-radius: 50%;
}

@media screen and (max-width: 599px) {
	.list_navi_wrap .wp-pagenavi .page {
		font-size: 0.14rem;
		width: 0.30rem;
		padding: 0.15rem 0 0.17rem;
		margin: 0;
	}

	.list_navi_wrap .wp-pagenavi .page.larger {
		/* display: none; */
	}
}

@media (hover: hover) {
	.list_navi_wrap .wp-pagenavi .page.larger:hover {
		background-color: #145F81;
		color: #FFF;
	}
}

/* 前のページ */
.list_navi_wrap .wp-pagenavi .previouspostslink {
	display: block;
	font-size: 0.16rem;
	color: #333;
	line-height: 0;
	padding: 0.24rem 0.20rem 0.26rem 0.30rem;
	text-decoration: none;
	margin: 0 0.08rem;
	position: relative;
	border: none;
}

@media screen and (max-width: 599px) {
	.list_navi_wrap .wp-pagenavi .previouspostslink {
		font-size: 0.13rem;
		padding: 0.15rem 0 0.17rem 0.15rem;
		margin: 0;
	}
}

.list_navi_wrap .wp-pagenavi .previouspostslink::before {
	content: "";
	width: 0.10rem;
	height: 0.16rem;
	background-image: url(../img/common/icon_prev.svg);
	background-position: left center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	transition: all 0.3s;
}

@media screen and (max-width: 599px) {
	.list_navi_wrap .wp-pagenavi .previouspostslink::before {
		height: 0.12rem;
		top: 46%;
	}
}

@media (hover: hover) {
	.list_navi_wrap .wp-pagenavi .previouspostslink:hover {
		color: #145F81;
	}
	.list_navi_wrap .wp-pagenavi .previouspostslink:hover::before {
		left: -0.06rem;
	}
}

/* 次のページ */
.list_navi_wrap .wp-pagenavi .nextpostslink {
	display: block;
	font-size: 0.16rem;
	color: #333;
	line-height: 0;
	padding: 0.24rem 0.30rem 0.26rem 0.20rem;
	text-decoration: none;
	margin: 0 0.08rem;
	position: relative;
	border: none;
}

@media screen and (max-width: 599px) {
	.list_navi_wrap .wp-pagenavi .nextpostslink {
		font-size: 0.13rem;
		padding: 0.15rem 0.15rem 0.17rem 0;
		margin: 0;
	}
}

.list_navi_wrap .wp-pagenavi .nextpostslink::after {
	content: "";
	width: 0.10rem;
	height: 0.16rem;
	background-image: url(../img/common/icon_next.svg);
	background-position: left center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	transition: all 0.3s;
}

@media screen and (max-width: 599px) {
	.list_navi_wrap .wp-pagenavi .nextpostslink::after {
		height: 0.12rem;
		top: 46%;
	}
}

@media (hover: hover) {
	.list_navi_wrap .wp-pagenavi .nextpostslink:hover {
		color: #145F81;
	}
	.list_navi_wrap .wp-pagenavi .nextpostslink:hover::after {
		right: -0.06rem;
	}
}


/* お知らせ詳細ページ下部のナビ */
.news_page_navi_wrap {
	margin-top: 0.60rem;
	padding: 0.35rem 0;
}
@media screen and (max-width: 640px) {
	.news_page_navi_wrap {
		margin-top: 0.20rem;
		padding: 0.35rem 0;
	}
}

.news_page_navi_wrap .list {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.news_page_navi_wrap .list .link {
	width: 33.3%;
}

.news_page_navi_wrap .list .link a {
	color: #111;
	font-size: 0.14rem;
	letter-spacing: 0.075em;
	text-decoration: none;
}

@media screen and (max-width: 640px) {
	.news_page_navi_wrap .list .link a {
		font-size: 0.13rem;
		letter-spacing: 0.05em;
	}
}

@media (hover: hover) {
	.news_page_navi_wrap .list .link a:hover {
		color: #1E77C3;
	}
}

.news_page_navi_wrap .list .link.prev {
	text-align: right;
}

@media screen and (max-width: 640px) {
	.news_page_navi_wrap .list .link.prev {
		text-align: left;
	}
}

.news_page_navi_wrap .list .link.prev a::before {
	content: "";
	width: 0.20rem;
	height: 0.14rem;
	background-image: url(../img/common/icon_prev.svg);
	background-position: left center;
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
	padding-right: 0.08rem;
	position: relative;
	top: 0.02rem;
	left: 0;
	transition: all 0.3s;
}

@media screen and (max-width: 640px) {
	.news_page_navi_wrap .list .link.prev a::before {
		width: 0.12rem;
		height: 0.12rem;
		padding-right: 0.06rem;
	}
}

.news_page_navi_wrap .list .link.home {
	text-align: center;
}

.news_page_navi_wrap .list .link.home a::before {
	content: "";
	width: 0.20rem;
	height: 0.14rem;
	background-image: url(../img/common/icon_home.svg);
	background-position: left center;
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
	padding-right: 0.08rem;
	position: relative;
	top: 0.02rem;
	left: 0;
	transition: all 0.3s;
}

@media screen and (max-width: 640px) {
	.news_page_navi_wrap .list .link.home a::before {
		width: 0.12rem;
		height: 0.12rem;
	}
}

.news_page_navi_wrap .list .link.next {
	text-align: left;
}

@media screen and (max-width: 640px) {
	.news_page_navi_wrap .list .link.next {
		text-align: right;
	}
}

.news_page_navi_wrap .list .link.next a::after {
	content: "";
	width: 0.20rem;
	height: 0.14rem;
	background-image: url(../img/common/icon_next.svg);
	background-position: right center;
	background-repeat: no-repeat;
	background-size: contain;
	display: inline-block;
	padding-left: 0.08rem;
	position: relative;
	top: 0.02rem;
	right: 0;
	transition: all 0.3s;
}

@media screen and (max-width: 640px) {
	.news_page_navi_wrap .list .link.next a::after {
		width: 0.12rem;
		height: 0.12rem;
		padding-left: 0.06rem;
	}
}