:root {
	--color-bg: #f7f8e4;
	--color-accent: #285296;
	--color-accent2: #C19C48;
	--color-grass: #a1ddbf;

	--height-header: 112px;
	--width-container: 1280px;
	--padd-sides: 25px;
	/*----2025.7.11 追加----*/
	--color-topics-title:#000000; /* 記事タイトルの色指定 */
	--return-button-top:40px;		/* 戻るボタンの上マージン指定 */
	--box-margin-all: 20px 40px 20px 40px; /* 2025.7.18 追加 Top left bottom right [1em:20px]  */
	/*--(ページネーション色指定:pageとcurrentを逆転させる)--*/
	--current-button-border:0px;	/* ボタンの縁取り 0px:縁なし */	
	--button-back-color:#c5b67c;	/* beige:#c5b67c navy:#285296 */
	--button-font-color:#fff;
	--button-font-size:16px;
	--button-margin-size:0px;
}

/* 共有部品 */
/*----------------------------------------------------------------

------------------------------------------------------------------*/
.news-link-a {	/*下線なし*/
	color:  black;
	display: block;
	margin-left: 15px;
	margin-right: 20px;
	margin-top:0px;
	margin-bottom:0px;
	text-decoration: none;
	text-align:left;
	height:auto;
	align-items:center;
	overflow-wrap: break-word;
	min-width: 0;
	width:95%;
}
/* ボタン*/

/*--------------------------------------------------------------------
ページネーション 表示中のページの色 2025.7.11
---------------------------------------------------------------------*/
/* ボタン*/

.page_button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 45px;
    height: 60px;
    background: var(--button-back-color);
    font-size: var(--button-font-size);
    color: var(--button-font-color);
    font-weight: normal;
    transition: all 0.15s linear;
    border: var(--button-back-color) solid 2px;
    border-radius: 50%;
	text-decoration: none;
	margin-right:var(--button-margin-size);
	margin-left:var(--button-margin-size);
}
.page_button.isActive {
    background: #285296;
    color: #fff;
    pointer-events: none;
}

.current_button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 45px;
    height: 60px;
    background:  var(--button-font-color);
    font-size: var(--button-font-size);
    color:  var(--button-back-color);
    font-weight:normal;
    transition: all 0.15s linear;
	border: var(--current-button-border) solid #c5b67c;
    border-radius: 50%;
	text-decoration: none;
	margin-right:var(--button-margin-size);
	margin-left:var(--button-margin-size);
}
.current_button.isActive {
    background: #285296;
    color: #fff;
    pointer-events: none;
}

.page_dot {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 25px;
    height: 60px;
    /* background:  var(--button-font-color); */
    font-size: var(--button-font-size);
    color:  var(--button-back-color);
    font-weight:normal;
    transition: all 0.15s linear;
	/* border: var(--current-button-border) solid #c5b67c; */
    /* border-radius: 50%; */
	text-decoration: none;
	margin-top:7px;
	margin-right:var(--button-margin-size);
	margin-left:var(--button-margin-size);
}

.page_button_return {
	-moz-appearance: none;
	-webkit-appearance: none;
	-ms-appearance: none;
	appearance: none;
	-moz-transition: all 0.2s ease-in-out;
	-webkit-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	background-color: #c5b67c;
	/* background-color: #A00000; */
	border: 0;
	border-radius: 3.5em;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	height: 3.5em;
	line-height: 3.5em;
	outline: 0;
	padding: 0 2em 0 2em;
	position: relative;
	text-align: center;
	text-decoration: none;
	margin-top:var(--return-button-top);
}
/*----------------------------------------------------------------------

-----------------------------------------------------------------------*/
.chevron-right {
   display:flex;
 	position: relative;
	padding-right: 35px;
	border-bottom: 1px dotted #000;
	padding-top:5px;
	padding-bottom:5px;
	--color: black;
	--size: 10px;
}
.chevron-right::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  width: var(--size);
  height: var(--size);
  border-top: 2px solid var(--color);
  border-right: 2px solid var(--color);
  transform: translateY(-50%) rotate(45deg);
  transition: right 0.2s ease-in-out;
}
.chevron-right:hover::after {
  right: 15px;
}

.chevron-right .news-link {	
	display: block;
	line-height: 1.8;
    padding-bottom: 5px;
    padding-top: 0px;
	width:95%;
	text-align: left;
	color:var(--color-topics-title);
	overflow-wrap: break-word;
	min-width: 0;
}
.chevron-right .news-link:hover {	/*下線表示*/
  text-decoration: underline;
}

.chevron-right .news-item {	/* 追加 2025.7.11  */
  display:flex;
	line-height: 1.8;
    padding-bottom: 30px;
    padding-top: 20px;
	align-items:center;
}

/*-------------------------------------------------------------
Topics 詳細ページ用 2025.7.11
--------------------------------------------------------------*/
.topics-item {	/*　共通タイトル行ブロック　*/
  	display:grid;
	position: relative;
	padding-right: 35px;
	margin-top:0px;
	padding-bottom: 0px;
	padding-top:0px;
	--color: black;
	--size: 10px;
}

.topics-item .news-link {	
	line-height: 1.8;
    padding-bottom: 30px;
    padding-top: 20px;
	width:95%;
	text-align: left;
	color:var(--color-topics-title);
}
.topics-item  dl dd {
	margin-left: 1em;
	line-height: 4;
	display: flex;
}

.news-item {	/* 追加 2025.7.11  */
  display:grid;
	line-height: 1.8;
    padding-bottom: 30px;
    padding-top: 20px;
	width:95%;
	text-align: left;
	color:var(--color-topics-title);
}

.topics-list-link{
 	display:flex;
	position: relative;	
	margin-top:70px;
	width:95%;
	text-align: center;
}

/*--------------------------------
詳細頁のchevronを取り外すテスト    (サイズを変えると変化する 2025.7.22 )
--------------------------------*/
.topics-detail-line {
   display:flex;
   /* flex-direction: row;*/
	position: relative;
	padding-right: 0px;
}
.topics-detail-line dl {
	margin-top: 0 !important;
	align-items: center !important;
}

.topics-detail-line .news-date{
	display: flex;
	font-size: 15px;
	padding-top: 0.3em;
	width:200px;
	height:auto;
	align-items: center;
}

.topics-detail-line .news-nolink {	
	line-height: 1.8;
    padding-bottom: 0px;
    padding-top: 0px;
	text-align: left;
	color:var(--color-topics-title);
	overflow-wrap: break-word;
	min-width: 0;
	font-weight: bold;
}
.topics-detail-line .news-item {	/* 追加 2025.7.11  */
  display:flex;
	line-height: 1.8;
    padding-bottom: 30px;
    padding-top: 20px;
	align-items:center;
	overflow-wrap: break-word;
}

.detail-content{
	display:block;
	text-align:left;
	margin-block:30px;
	margin-right:0px;
	border-right:1px;
	background-color:#fff;	
	overflow-wrap: break-word;	
	min-width: 0;	
}

/*お知らせ一覧*/
.page-news .title-container h2 {
	font-size: 2.5rem;
	padding-bottom: 8px;
}
.page-news .title-container div {
	font-size: 15px;
	font-weight: bold;
}

/*-------------------------------------------------------------

--------------------------------------------------------------*/

.news-date-category-block1 {
	display: flex;
	flex-direction: row;  /* 日付と未分類を縦並び */
  width:120px;
	gap: 0px;
}

.news-date-category-block1 .news-date{
	font-size: 15px;
	padding-top: 0em;
  	width:120px;
	height:auto;
	align-items: center;
}
.news-date-category-block1 .news-date dl dt{
	font-size: 15px;
	padding-top: 0em;
  	width:120px;
	height:auto;
	align-items: center;
}

.dt-bold {
	font-size: 32px;
    font-weight: bold;
	overflow-wrap: break-word;
}
dt {
    display: flex;
	height:auto;
	align-items: center;
    /* unicode-bidi: isolate; */
}
/*-------------------------------------------------------------*/
.news-contents {
	flex: 4;
	display: flex;
	flex-direction: row;
	gap: 9px;
}
.news-contents dl dd {
	line-height: 1.8;
	font-size: 0.95rem !important;
	font-weight: bold;
	flex: 1;
    margin-top: 0.5em;
	margin-bottom: 0.5em;
}

.news-contents dl dd span.dt-bold {
	font-size: 1.15rem;
	word-break: break-all;
	margin-top: 8px;
}

/*-------------------------------------------------------------*/
.new-all-block dl {
	margin-top: 0 !important;
	align-items: center !important;
}

.new-all-block dl dt {
	margin-bottom: 0;
}

.new-all-block dl dt span {
	margin-bottom: 0 !important;
}

.new-all-block dl dd {
	margin-left: 1em;
	line-height: 4;
	display: flex;
}

.post-pictures-topic {
  display:flex;
}
.post-pictures-topic img {
  max-width: 100%;
  height: auto;
}

/* Topics */

#topics {
	background: #f5f6f7;
}

#topics h2 {
	color: #000;
}

#topics h3 {
	color: #000;
	font-weight: normal;
}

#topics .txt-s1 {
	font-weight: normal;
}

#topics .txt-s2 {
	font-size: 70%;
	line-height: 2;
}

#topics .txt-s3 {
	font-size: 80%;
	line-height: 2;
	text-align: left;
	width: 75%;
	margin: 0 auto;
}

@media screen and (max-width: 575px) {
	.chevron-right{
		flex-direction: column;
	}
	.topics-detail-line{
		flex-direction: column;		
	}
}

/* 2025.7.22 追加 */
@media screen and (max-width: 1100px) {


	.accordion {
		width: 100%;
		position: absolute;
		top: 2.5em;
		right: 0;
		z-index: 99999;
	}

	.accordion p {
		display: block;
		position: absolute;
		top: -56px;
		right: 10px;
		width: 40px;
		height: 40px;
		cursor: pointer;
	}

	.accordion p span {
		background: url("../../images/s-menu.png") no-repeat;
		background-size: contain;
		display: block;
		width: 40px;
		height: 40px;
		text-indent: -9999px;
	}

	#nav {
		display: none;
		position: absolute;
		top: 0px;
		right: 0;
		width: 102%;
		z-index: 99999;
	}

	#nav ul li {
		display: block;
		margin-left: none;
		width: 100%;
		height: 44px;
		background: #000000;
		font-size: 14px;
		text-align: center;
		border-bottom: 1px solid #666;
	}
}

.box {
	background: #fff;
	color: #39454b;
	 padding: var(--box-margin-all);    /*2025.7.17 padding なし*/
}

@media screen and (max-width: 736px) {
.box {
	 padding: var(--box-margin-all);    /*2025.7.17 padding なし*/
}
#topics.style-topics{
	padding-right:0px;
	padding-left:0px;
}

}

/* 2025.7.17 追加 */
/* p,
ul,
ol,
dl,
table {
	margin-bottom: 0em;
}   */
