@charset "UTF-8";
/* PC */
@media screen and (min-width:768px) {
}
/* SP */
@media screen and (max-width:767px) {
	.l-inner{
		padding: 0 5.33vw;
	}
}


/*------------------------
タブ
------------------------*/
.select-cat-wrap{

}
.select-cat-wrap .current a{
	background: #000;
}
.select-cat-wrap li a{
	border: 1px solid var(--opaW);
	display: flex;
	align-items: center;
	justify-content: center;
	letter-spacing: 0.1em;
}
.select-cat-wrap .current a{
	border: 1px solid #000;
}
/* PC */
@media screen and (min-width:768px) {
	.select-cat-wrap{
		margin-bottom: 30px;
		flex-wrap: wrap;
	}
	.select-cat-wrap ul{
		display: flex;
		gap: 10px 12px;
	}
	.select-cat-wrap li a{
		font-size: 17px;
		min-width: 105px;
		padding: 0 5px 2px;
		height: 38px;
		border-radius: 50px;
	}	
}
/* SP */
@media screen and (max-width:767px) {
	.select-cat-wrap {
		/* 右端まで表示領域を広げる */
		width: calc(100% + 5.33vw);
		padding-bottom: 0.267vw;
		margin-bottom:8vw;
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}

	.select-cat-wrap::-webkit-scrollbar {
		display: none;
	}

	.select-cat-wrap ul {
		display: flex;
		align-items: center;
		gap: 2.0vw;
		width: max-content;
		padding-right: 5.33vw;
	}

	.select-cat-wrap li {
		flex-shrink: 0;
	}

	.select-cat-wrap li a {
		min-width:20.36vw;
		height: 8.533vw;
		padding: 0 4vw .53vw ;
		border-radius: 999px;
		color: #fff;
		line-height: 1;
		white-space: nowrap;
	}



}

/*------------------------
記事
------------------------*/
.article-wrap article a{
	border-top: 1px solid rgba(255, 255, 255, .12);
}
.article-wrap article:last-child {
    border-bottom: 1px solid rgba(255, 255, 255, .12);
}	
.article-wrap article .img img{
	display: block;
	width:100%;
	height:100%;
	object-fit: cover;
	object-position: center top; 
}
.article-wrap article .img .noimg {
	object-position: center center; 
}
.article-wrap article h2 {
	font-weight: normal;
}
.article-wrap article .date-wrap{
	display: flex;
	align-items: center;
}

.article-wrap article .cat {
	white-space: nowrap;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--opaW);
}
.article-wrap article .date {
	white-space: nowrap;
}


/* PC */
@media screen and (min-width:768px) {
	.article-wrap article a {
		display: flex;
		align-items: start;
		gap: 30px;
		padding: 20px  90px 20px 15px;
		transition: background .25s ease, opacity .25s ease, transform .25s ease, box-shadow .25s ease;
				z-index: 1;
	}
	.article-wrap article .img{
		width: clamp(
			140px,
			calc(140px + (100vw - 1200px) * 0.075),
			170px
		);
		height: auto;
		aspect-ratio: 1 / 1;
	}

	.article-wrap article a:hover {
		transform: translateY(-3px);
		box-shadow: 0 10px 20px rgba(0, 0, 0, .45);
		background: rgba(35, 35, 35, 1);
		border-top: none;
	}
	.article-wrap article h2 {
		font-size: 18px;
	}
	.article-wrap article .text-area{
		padding-top: 20px;
		flex:1
	}
	.article-wrap article .date-wrap{
		margin-bottom:17px;
	}
	.article-wrap article .date {
		font-size: 16px;
		width:6.5em;
	}
	.article-wrap article .cat {
    min-width: 84px;
    height: 30px;
    padding: 0 15px;
    font-size: 14px;
	}
}
	/* SP */
@media screen and (max-width:767px) {
		.article-wrap article a {
		display: flex;
		align-items: flex-start;
		gap: 3.74vw;
		padding: 5.86vw 0;
		color: #fff;
	}

	.article-wrap article:last-child {
		border-bottom: 1px solid rgba(255, 255, 255, 0.12);
	}

	.article-wrap article .img {
		width: 18.67vw;
		height: 20vw;
		flex: 0 0 18.67vw;
		overflow: hidden;
	}
	.article-wrap article .text-area {
		flex: 1;
		min-width: 0;
	}

	.article-wrap article .date-wrap {
		min-height: 6.4vw;
		margin-bottom: 2.32vw;
		gap: 2.67vw;
		font-weight: 400;
		line-height: 1;
	}

	.article-wrap article .date {
		width: auto;
		font-size: 3.2vw;
	}
	.article-wrap article .cat-wrap {
		display: flex;
		flex-wrap: wrap;
		gap: 1.6vw;
	}

	.article-wrap article .cat {
		min-width: 18vw;
		height: 6.4vw;
		padding: 0 2.13vw .267vw;
		font-size: 3.2vw;
	}

	.article-wrap article h2 {
		line-height: 1.55;
		overflow-wrap: anywhere;
	}
}

/*------------------------
header
------------------------*/
/* PC */
@media screen and (min-width:768px) {
}
/* SP */
@media screen and (max-width:767px) {
}

/*------------------------
header
------------------------*/
/* PC */
@media screen and (min-width:768px) {
}
/* SP */
@media screen and (max-width:767px) {
}
