/** * pdf-card ブロックのフロントエンド表示用スタイル */ :root { --primary-color: #78909c; --secondary-color: #607d8b; --accent-color: #56c596; --light-bg: #f8f9fa; --dark-gray: #454545; --medium-gray: #777; --light-gray: #eee; --shadow: 0 4px 20px rgba(0, 0, 0, 0.08); --card-radius: 8px; } /* PDFカードブロックスタイル */ .pdf-card-block { margin: 0 0 1.5rem; .pdf-card { display: flex; flex-direction: column; background-color: #fff; border-radius: var(--card-radius); overflow: hidden; box-shadow: var(--shadow); transition: transform 0.3s ease, box-shadow 0.3s ease; height: 100%; /* カードの高さを統一 */ &:hover { transform: translateY(-5px); box-shadow: 0 10px 30px rgba(0,0,0,0.12); } } .pdf-card-header { background: var(--primary-color); padding: 15px 25px; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; position: relative; color: white; font-size: 18px; font-weight: 600; line-height: 1.4; } .pdf-card-body { padding: 25px; display: flex; flex-direction: column; align-items: center; background-color: #fff; flex-grow: 1; /* 残りのスペースを埋める */ justify-content: center; /* 中央に配置 */ } .pdf-link-container { display: flex; align-items: center; padding: 10px 0; } .pdf-icon { display: flex; align-items: center; justify-content: center; color: var(--accent-color); margin: 0 10px 0 0; svg { width: 24px; height: 24px; } } .pdf-link { color: var(--accent-color); text-decoration: none; font-weight: 500; font-size: 16px; position: relative; &:hover { text-decoration: underline; } &:focus { outline: 2px solid var(--accent-color); outline-offset: 2px; } } .pdf-missing { color: #999; font-size: 14px; font-style: italic; margin: 10px 0 0; } /* レスポンシブデザイン */ @media (max-width: 767px) { .pdf-card-header { padding: 15px 20px; font-size: 16px; } .pdf-card-body { padding: 20px; } .pdf-link { font-size: 15px; } .pdf-icon svg { width: 20px; height: 20px; } } } /* 古いグリッドシステムの互換性維持 */ /* グリッドレイアウト用スタイル */ .grid-container { display: grid; grid-template-columns: repeat(12, 1fr); gap: 20px; /* グリッドアイテム */ .g-col-1 { grid-column: span 1; } .g-col-2 { grid-column: span 2; } .g-col-3 { grid-column: span 3; } .g-col-4 { grid-column: span 4; } .g-col-5 { grid-column: span 5; } .g-col-6 { grid-column: span 6; } .g-col-7 { grid-column: span 7; } .g-col-8 { grid-column: span 8; } .g-col-9 { grid-column: span 9; } .g-col-10 { grid-column: span 10; } .g-col-11 { grid-column: span 11; } .g-col-12 { grid-column: span 12; } /* モバイル表示調整 */ @media (max-width: 767px) { .g-col-md-1, .g-col-md-2, .g-col-md-3, .g-col-md-4, .g-col-md-5, .g-col-md-6 { grid-column: span 12; } } /* タブレット・デスクトップ表示調整 */ @media (min-width: 768px) { .g-col-md-1 { grid-column: span 1; } .g-col-md-2 { grid-column: span 2; } .g-col-md-3 { grid-column: span 3; } .g-col-md-4 { grid-column: span 4; } .g-col-md-5 { grid-column: span 5; } .g-col-md-6 { grid-column: span 6; } .g-col-md-7 { grid-column: span 7; } .g-col-md-8 { grid-column: span 8; } .g-col-md-9 { grid-column: span 9; } .g-col-md-10 { grid-column: span 10; } .g-col-md-11 { grid-column: span 11; } .g-col-md-12 { grid-column: span 12; } } } .wp-block-theme-pdf-card { width: 100%; box-sizing: border-box; margin-bottom: 2rem; }