body{
	font-family: 'Noto Sans JP', sans-serif;
	background-color: #f8f9fa;
	color: #333;
}

h1	{
	color:tomato;
	}

.main	{
	background-color:linen;
	
	}

.navbar-brand{
	color: #ffffff;
}

.nav-link {
	color: #ffffff; 
	font-size: 18px;
	font-weight: bold;
}

.navbar-toggler-icon {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba%28255, 255, 255, 1%29' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
/* ハンバーガーメニューアイコンのフォーカスアウトラインを削除 */
.navbar-toggler:focus {
	outline: none;
	box-shadow: none;
}



/* タイムラインのカスタムスタイル */
.timeline {
	position: relative;
	padding: 2rem 0;
	list-style: none;
}

/* 中央の縦線 */
.timeline::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	width: 2px;
	background: #003366; /* 大阪大学カラーに近い紺色 */
	transform: translateX(-50%);
}

.timeline-item {
	position: relative;
	margin-bottom: 3rem;
	width: 50%;
}

/* 左右交互に配置 */
.timeline-item:nth-child(odd) {
	padding-right: 3rem;
	text-align: right;
	left: 0;
}

.timeline-item:nth-child(even) {
	padding-left: 3rem;
	text-align: left;
	left: 50%;
}

/* タイムラインのドット */
.timeline-dot {
	position: absolute;
	top: 20px;
	width: 20px;
	height: 20px;
	background: #c5a059; /* アクセントのゴールド */
	border-radius: 50%;
	z-index: 1;
}

.timeline-item:nth-child(odd) .timeline-dot {
	right: -10px;
}

.timeline-item:nth-child(even) .timeline-dot {
	left: -10px;
}

/* カードのスタイル */
.card {
	border: none;
	box-shadow: 0 4px 15px rgba(0,0,0,0.1);
	transition: transform 0.3s ease;
}

.card:hover {
	transform: translateY(-5px);
}

.month-label {
	font-weight: bold;
	color: #003366;
	font-size: 1.2rem;
	margin-bottom: 0.5rem;
	display: block;
}

/* レスポンシブ対応（スマホでは1列に） */
@media (max-width: 768px) {
	.timeline::before {
		left: 20px;
	}
	.timeline-item {
		width: 100%;
		padding-left: 50px !important;
		padding-right: 0 !important;
		text-align: left !important;
		left: 0 !important;
	}
	.timeline-dot {
		left: 10px !important;
	}
}