
.thread-sidebar {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	width: 280px;
	background: #ffffff;
	border-right: 1px solid #e0e0e0;

	/*padding: 16px;*/
	/*overflow-y: auto;*/
	overflow: hidden; /* これで枠外のスクロールバーを隠します */

	transition: transform 0.3s ease;
	z-index: 1030;

}
.thread-content {
	margin-left: 280px;
	min-height: 100vh;
	transition: margin-left 0.3s ease;
}
.thread-overlay {
	position: fixed;
	inset: 0;
	background: rgba(0,0,0,0.5);
	z-index: 1020;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s ease;
}
body.thread-sidebar-closed .thread-sidebar { transform: translateX(-100%); }
body.thread-sidebar-closed .thread-content { margin-left: 0; }

/* スマホ対応：開いたときにサイドバーが上に被さる（thread-contentが縮まない） */
@media (max-width: 991px) {
	.thread-sidebar { transform: translateX(-100%); }
	.thread-content { margin-left: 0; } /* 常にフル幅 */
	body:not(.thread-sidebar-closed) .thread-sidebar { transform: translateX(0); }
	body:not(.thread-sidebar-closed) .thread-overlay { opacity: 1; pointer-events: auto; }
	/* thread-content の margin-left:280px を追加しない → 被さる挙動 */
}

.thread-hamburger { font-size: 24px; color: #5f6368; cursor: pointer; }
.thread-new-chat-btn {
	width: 100%;
	background: transparent;
	border: 1px solid #dadce0;
	border-radius: 8px;
	padding: 12px;
	text-align: center;
	color: #5f6368;
	margin-bottom: 20px;
}


.thread-chat-list .thread-list-group-item {
	border: none;
	padding: 10px 8px;
	border-radius: 8px;
	color: #5f6368;
}
.thread-chat-list .thread-list-group-item:hover {
	background: #e8f0fe;
}


.thread-sidebar-toggle {
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
	color: #5f6368;
}


