#post-list{
    padding-top:0px;
    margin-top:10px;
}
.spContent #mainBody {
    padding-top:0px;
    margin-top:0;
}
.single .post.one-column{
	padding-top:30px;
}
.post-detail.one-column{
	border:none;
}
.swiper-slide{
	height:auto;
}
.topKv__wrapper{
	padding-bottom:0;
}
html .swiper-slide{
	padding-top:4.5em;
}
.topKv__txt{
	margin-bottom:10px;
}
html .topKv__num{
	font-size:8vw;
	top:-10.5vw;
}
html .topKv__txt {
    font-size: 4.8vw;
}
.json2.contents-wrapper, .json3.contents-wrapper {
    padding-left: 0px;
    padding-right: 0px;
}
.tracking-wider,
h3.sp a,
h3.sp span{
	font-size:calc(6px);
	letter-spacing:0em;
	line-height:1.65em;
	text-align:left;
	font-weight:bold;
}
.sp.title{
	margin-top:10px;
	margin-bottom:10px;
	padding:0 0px;
	font-size:8px;
	letter-spacing:-0.1em;
	line-height:1.25em;
	font-weight:bold;
}
.read-more{
	letter-spacing:0.1em;
	line-height:1.25em;
	font-size:5px;
	text-align:left;	
	padding:3px 5px;
	border-radius:2px;
}
.sp.excerpt{
	padding:0px;
	letter-spacing:0em;
	line-height:1.65em;
	font-size:5px;
	text-align:left;
	padding:0 0px;
}
.triangle {
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 2.5px solid transparent;
    border-bottom: 2.5px solid transparent;
    border-left: 4px solid #6F6F6F;
}

.sp.other{
	padding:0;
}
.sp.other .inline-flex.shrink-0{
	display:none;
}
.sp.other .company{
	font-size:6px;
	letter-spacing:0.1em;
	line-height:1.85em;
	text-align:right;
}
.sp.other .name{
	font-size:5.5px;
	letter-spacing:0.1em;
	line-height:1.85em;
	text-align:right;
}
.json3.contents-wrapper,
.json2.contents-wrapper{
	padding:20px;
}
.card-block{
	position:relative;

}
.card-wrap{
	height:100%;

}
.sp.wrap{
	height:auto;
	padding:0 5px;
}
.sp.bottom-content{
	height:auto;
	display:block;
}
.sp.content{
	height:auto;

}
.sp.more-wrap{
	text-align:right;
	position:absolute;
	bottom:10px;
	right:10px;
}
html .swiper-slide {
  padding-top:13vw;
}

html #post-list1{
	padding-top:10px;
}
html #post-list2{
	padding-top:0px;
	padding-bottom:10px;
}
#post-list2,
#post-list1{
	flex-wrap: wrap;         /* 折り返しを許可 */
	display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: center;
    align-items: stretch;
    padding: 0px;
    gap:10px;
    background: #f4f4f4;
}
.absolute.inset-0.z-0.overflow-hidden,
.before\:transition-opacity:before,
.after\:bg-reactionOverlay:after{
	display:none;
}
#post-list2 .contents,
#post-list1 .contents{
	display:block;
	max-width:calc(33.333% - 10px);
	flex: 0 0 calc(33.333% - 10px); /* 3つ並べる。gap分引く */
	box-sizing: border-box;
	background: #ccc;
	text-align: center;
	padding: 0px;
	background-color:transparent;
	background-color:white;
	padding:0;
	margin-left:-5px;
	margin-right:-5px;
	min-height:223px;
	}
.sp.images .w-full.overflow-hidden{
  aspect-ratio: 16 / 9; /* 例えば 16:9 に固定 */
  width: 100%;          /* お好みで調整 */
  overflow: hidden;
  position: relative;
}
.sp.images .w-full.overflow-hidden img{
  width: 100%;
  height: 100%;
  object-fit: cover;    /* アスペクト比を保ちつつ拡大・切り抜き */
  object-position: center;
}
.blockb .json2 .grid,
.blockb .json3 .grid{
	display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-content: center;
    justify-content: center;
    align-items: stretch;
}
.blockb #post-list1.json2 .grid .contents,
.blockb #post-list2.json3 .grid .contents{
	max-width: calc(33.333%);
	flex:auto;
}
.json2.contents-wrapper .inner, .json3.contents-wrapper .inner{
	padding:0;
	gap:11px;
	box-sizing:border-box;
}