@media (min-width: 481px) {
	#wrapper{
		display: flex;
		width: var(--pcwidth);
		margin: 0 auto;
	}
}

#category_container_wrapper{
	width: 200px;
	box-sizing: border-box;
	padding: 5px 10px 5px 0px;
}
@media screen and (max-width: 480px) {
	#category_container_wrapper{
		
		margin-top: -70px;/*　カテゴリの上の空白 */
		width: 100%;
		padding: 0;
	}
}
#category_container_wrapper h3{
	box-sizing: border-box;
	padding: 5px 10px;
	background: var(--maincolor);
	color: #333;
	margin-top: 15px;
	margin-bottom: 10px;
	border-radius: 5px;
}
@media screen and (max-width: 480px) {
	#category_container_wrapper h3{
		border-radius: 100px;
		margin: 10px 15px;
		padding: 5px 20px;
	}
}




/* カテゴリここから */
#category_container_wrapper ul{
	list-style-type: none;
}
#category_container_wrapper li{
	line-height: 2.0;
}

.jsCategoryBtn {
	cursor: pointer;
  border-radius: 5px;
  box-sizing: border-box;
}
.jsCategoryBtn:hover {
	color: white;
  background-color: var(--maincolor-blue);
  
}
.jsCategoryBtn.categorySelected{
	background: var(--maincolor-blue);
	color: white;
}
/* カテゴリPC */
@media screen and (min-width: 481px) {
	/* 子の li（親の ul の中にさらにある ul の li） */
	.categoryList-ul > li > ul > li:nth-child(n) {
		padding-left: 30px;
		position: relative;
		font-size: 1.4rem;
	}
	
	.categoryList-ul > li > ul > li::before {
	  content: "…";
	  position: absolute;
	  left: 15px;
	  color: #666;
	  font-size: 0.9em;
	}
	
	.jsCategoryBtn{
		padding: 3px 5px;
	}
	/* 子 li マークはそのまま */
/*
	.categoryList-ul > li > ul > li {
	  position: relative;
	  padding-left: 30px;
	  font-size: 1.4rem;
	}
*/
}
	
	
	
	
	

/* スマホのみ横並び */
@media screen and (max-width: 768px) {
/*
  .categoryList-ul ul {
    display: contents;
  }

  .categoryList-ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }

  .categoryList-ul li {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
*/
}




@media screen and (max-width: 480px) {
	#jsCategoryListUl{
		display: flex;      /* 横並び */
		flex-wrap: wrap;    /* 折り返し可 */
		gap: 1rem;          /* 間隔 */
		padding: 0 15px;
	}
	.categoryList-li{
		position: relative;
		background-color: white;
		font-size: 1.4rem;
		border-radius: 5px;
		line-height: 1.6;
	}
	
	.jsCategoryBtn{
		padding-left: 1.5rem;
		padding-right: 5px;
	}
	.categoryList-li.tier_1{
		border: 1px solid var(--maincolor-blue);
		color: var(--maincolor-blue);
	}
	.categoryList-li.tier_1::before{
		content: '#';
		position: absolute;
		left: 0;                    /* 左端に固定 */
		top: 50%;                   /* 縦中央 */
		transform: translateY(-50%);/* 正確に中央揃え */
		color: var(--maincolor-blue);
		padding-left: 5px
	}
	.categoryList-li.categorySelected.tier_1::before{
		color: white;
	}
		/* # の色も hover に合わせて白に */
	#category_container_wrapper .tier_1:hover::before {
		color: #fff;
		background-color: var(--maincolor-blue);
		}
	/* アクティブ時の背景と文字色 */
	#category_container_wrapper .tier_1:active {
		background-color: var(--maincolor-blue);
		color: #fff;
	}
	
	/* アクティブ時の # も白に */
	#category_container_wrapper .tier_1:active::before {
		color: #fff;
	}

		
	/* tier_2 基本 */
	.categoryList-li.tier_2 {
		border: 1px solid #1b7bca;
		color: #1b7bca;
	}
	/* tier_2 疑似要素 # */
	#category_container_wrapper .tier_2::before {
		content: '#';
		position: absolute;
		left: 0;                    
		top: 50%;                   
		transform: translateY(-50%);/* 正確に中央揃え */
		color: #1b7bca;
		padding-left: 5px;
	}
	/* tier_2 hover  */
	#category_container_wrapper .tier_2:hover {
		background-color: var(--maincolor-blue);
		border-color:  var(--maincolor-blue);
		color: #fff;               /* 文字白 */
	}
	/* tier_2  疑似要素も一緒に白く */
	#category_container_wrapper .tier_2:hover::before {
		color: #fff;
	}
		
}


/* カテゴリここまで */


#article_container-wrapper {
  width: 100%;
  max-width: 800px;
  box-sizing: border-box;
  padding: 20px;
  border-radius: 5px;
  margin: 0 auto; /* 中央寄せ */
}


ul#articlelist_container{
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	list-style-type: none;
	 box-sizing: border-box;
}
ul#articlelist_container li:hover{
	transition: opacity 0.3s; /* フェードを滑らかに */
	}
ul#articlelist_container li{
	border-radius: 5px;
	box-sizing: border-box;
	width: calc((100% - 20px) / 3);
	cursor: pointer;
	background-color: white;
}

/* スマホサイズは1カラム */
@media screen and (max-width: 600px) {
  ul#articlelist_container li {
    width: 100%;      /* 余白を含めた幅になる */
    max-width: 100%;
  }
}

ul#articlelist_container li:hover{
	opacity: 0.7;
}
.thumbnailImgBox{
	width: 100%;
	/*

	height: 150px;
	display: flex;
  justify-content: center;
  align-items: center;
*/
	
}
ul#articlelist_container li img {
	width: 100%;
	border-radius: 5px 5px 0 0 ;
	height: 150px;
	object-fit: cover; 
	display: block; 
}
ul#articlelist_container li img {
	width: 100%;
	height: 150px;
	object-fit: cover;
	display: block;
}
@media screen and (max-width: 600px) {
  ul#articlelist_container li img {
    height: 150px;  /* 高さ自動で縦横比維持 */
  }
}

ul#articlelist_container li h3 {
	font-size: 1em;
	min-height: 2em;
	line-height: 1em;
	padding: 10px 10px;
	margin-bottom: 5px; 
}
#articlelist_container p{
	padding: 0px 10px 10px 10px;
	font-size: 13px;
	color: #c0c0c0;
}
#articlelist_container p .category{
	background-color: white;
	border: 1px solid var(--maincolor-link);
	color: var(--maincolor-link);
	border-radius: 5px;
	padding: 2px 5px;
	font-size: 1.0rem;
	margin-left: 5px;
}

/* ブログタイトル */
.blog-title {
  width: 100%;
  background-color: #bddfed;
}
.blog-title img{
	height: 35px;
}
.blog-title a {
	transition: opacity 0.3s; /* フェードを滑らかに */
}
.blog-title a:hover {
	opacity: 0.7; /* 半透明に */
}
.blog-title-inner {
  max-width: 1000px;
  margin: 0 auto;   /* 中央寄せ */
  padding: 1.0rem 1.0rem 1.0rem 0.5rem;    /* 余白 */
  
    display: flex;
  justify-content: space-between; /* 左右に分ける */
  align-items: center;  
}
.blog-left {
  text-align: left;
}
.blog-right {
  text-align: right;
  color: #333;
  font-size: 1.4rem;
}
.blog-left {
  position: relative;
  display: inline-block;
}

.blog-left a {
  display: inline-block;
  position: relative;
}

.blog-left a::after {
  content: "ツクヨミ深掘り！";           /* 吹き出し内の文字 */
  position: absolute;
  top: 50%;
  left: 100%;
  transform: translateY(-50%);
  margin-left: 15px;

  background: #fff;           /* 吹き出し背景 白 */
  color: #333;                 /* 吹き出し文字 赤 */
  font-size: 10px;
  padding: 6px 10px;
  border-radius: 100px;
  white-space: nowrap;
}
/* しっぽ部分 */
.blog-left a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  transform: translateY(-50%) rotate(180deg);
  margin-left: 10px;

  border-width: 10px 0 10px 12px; 
  border-style: solid;
  border-color: transparent transparent transparent #fff; /* 左向きの白三角 */
}

@media screen and (max-width: 768px) {
	.blog-title {
		margin-top: 70px;
		padding-left: 5px;
	}
	.blog-title img{
		height: 40px;
		}
  .blog-title-inner {
    max-width: 100%;  /* 制限解除 */
    padding: 1rem;    /* 必要なら調整 */
  }
}