/** * 卒業生カード ブロックのフロントエンド表示用スタイル */ :root { --primary-color: #78909c; --secondary-color: #60d0b8; /* グラデーションの調整 */ --accent-color: #56C596; --light-bg: #f8f9fa; --dark-gray: #454545; --medium-gray: #777; --light-gray: #eee; --card-radius: 16px; } /* カード全体のコンテナ */ .wp-block-theme-graduate-card.graduate-card { margin: 0 0 1.5rem; width: 100%; border-radius: 12px; overflow: hidden; box-shadow: 0 4px 20px rgba(0,0,0,0.06); transition: transform 0.3s ease, box-shadow 0.3s ease; /* ホバー効果 */ &:hover { transform: translateY(-5px); box-shadow: 0 10px 30px rgba(0,0,0,0.12); /* スタッフカードに合わせる */ } .graduate-card-header { background: linear-gradient(to right, var(--primary-color), var(--secondary-color)); color: #fff; padding: 25px; } .graduate-info { width: 100%; display: flex; align-items: center; } .graduate-info-text { flex: 1; min-width: 0; margin-right: 15px; order: 1; .graduate-name, .graduate-name-en { background-color: transparent; border: none; box-shadow: none; padding: 0; } .graduate-title { font-size: 14px; font-weight: 500; margin: 0 0 5px; opacity: 0.9; color: #fff; } .graduate-name { color: #fff; display: block; font-size: 24px; font-weight: 700; margin: 0 0 5px; line-height: 1.2; } .graduate-name-en { color: rgba(255, 255, 255, 0.85); font-size: 14px; font-style: italic; margin: 0; } .graduate-occupation { color: #fff; display: block; font-size: 14px; font-weight: 700; margin-top: 5px; opacity: 0.9; } } .graduate-image-wrapper { align-items: center; background-color: rgba(255, 255, 255, 0.2); border: 3px solid #fff; border-radius: 50%; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15); display: flex; height: 100px; justify-content: center; overflow: hidden; width: 100px; flex-shrink: 0; transition: transform 0.3s ease; order: 2; margin-left: auto; &:hover { transform: scale(1.05); } } .graduate-image { height: 100%; object-fit: cover; width: 100%; } .graduate-card-body { background: #fff; display: flex; flex-direction: column; flex-grow: 1; padding: 30px; } .graduate-quote-title { font-size: 18px; font-weight: 600; line-height: 1.4; margin: 0 0 25px; position: relative; padding-left: 20px; border-left: 3px solid var(--accent-color); color: var(--dark-gray); } .graduate-profile { font-size: 15px; line-height: 1.8; color: #555; margin: 0 0 20px; p { margin: 0 0 15px; &:last-child { margin: 0; } } } .graduate-career { margin: auto 0 0; font-size: 14px; font-weight: 400; color: var(--medium-gray); border-top: 1px solid var(--light-gray); padding-top: 15px; .career-label { font-weight: 600; margin-right: 5px; } } } /* レスポンシブ対応 */ @media (max-width: 767px) { .wp-block-theme-graduate-card.graduate-card { .graduate-card-header { padding: 20px; } .graduate-info { flex-direction: column; align-items: center; text-align: center; } .graduate-info-text { order: 2; padding-right: 0; margin-top: 15px; margin-right: 0; } .graduate-image-wrapper { order: 1; position: relative; right: auto; top: auto; transform: none; margin-bottom: 10px; margin-left: 0; &:hover { transform: none; } } .graduate-card-body { padding: 20px; } .graduate-quote-title { font-size: 16px; margin: 0 0 20px; } .graduate-profile { font-size: 14px; } } }