youtube_live_calendar/public/css/schedule.css

108 lines
1.9 KiB
CSS

body {
font-family: 'Noto Sans JP', Arial, sans-serif;
background-color: #f0f0f0;
color: #333;
margin: 0;
padding: 0;
}
.schedule-container {
width: 100%;
max-width: 1200px;
margin: 0 auto;
padding: 20px;
background-color: white;
border-radius: 8px;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}
.date-header {
font-size: 1.8em;
font-weight: bold;
color: #222;
margin: 20px 0;
border-bottom: 2px solid #333;
padding-bottom: 10px;
}
.banners {
display: flex;
flex-wrap: wrap;
gap: 20px;
}
.banner {
display: flex;
flex-direction: row;
align-items: center;
text-decoration: none;
color: black;
background-color: #ffffff;
border: 1px solid #ddd;
border-radius: 8px;
overflow: hidden;
flex: 1 1 calc(50% - 13px);
max-width: calc(50% - 13px);
min-width: 550px; /* デフォルトはPC向け */
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
transition: transform 0.2s, box-shadow 0.2s;
}
.banner:hover {
transform: scale(1.02);
box-shadow: 0 6px 10px rgba(0, 0, 0, 0.15);
border-color: #444;
}
/* 1時間以内のバナーを強調表示 */
.banner.highlight-live {
background-color: #ffe5e5; /* 明るい赤系 */
border-color: #ff4d4d; /* 濃い赤 */
}
.banner.highlight-live .details {
color: #a10000; /* 赤系の文字色 */
}
/* サムネイル部分 */
.thumbnail img {
width: 150px;
height: auto;
object-fit: cover;
border-right: 1px solid #ddd;
}
.details {
padding: 10px;
flex: 1;
}
.time-channel {
font-size: 1em;
margin-bottom: 5px;
color: #333;
}
.title {
font-size: 1.2em;
font-weight: bold;
color: #222;
}
.header-spacer {
height: 60px;
}
.main-content {
background-color: #f9f9f9;
}
/* スマホや縦長画面の場合 */
@media (max-width: 768px) {
.banner {
flex: 1 1 100%; /* 横幅を画面いっぱいにする */
max-width: 100%;
min-width: 100%;
}
}