diff --git a/fff/09_yohou/style.css b/fff/09_yohou/style.css index c340245..4064907 100644 --- a/fff/09_yohou/style.css +++ b/fff/09_yohou/style.css @@ -1,4 +1,3 @@ -/* 背景 */ body { margin: 0; padding: 0; @@ -10,34 +9,59 @@ sans-serif; line-height: 1.8; + + background-color: #fff7ea; + + background-image: url("bg_sakana.png"); + background-repeat: no-repeat; + + background-position: center bottom; + + background-size: 110%; + + /* スクロールしても背景が残る */ + background-attachment: fixed; } -/* カード */ +/* 背景の上に白 */ +body::before { + content: ""; + position: fixed; + inset: 0; + + background: rgba(255, 253, 248, 0.55); + + /* これがないとレイヤーが逆になる */ + z-index: -1; +} + +/* card */ .card { - max-width: 420px; + max-width: 440px; margin: 32px auto; padding: 28px 24px; - background: rgba(255, 255, 255, 0.9); + background: rgba(255, 255, 255, 0.90); + backdrop-filter: blur(8px); - border-radius: 20px; - - box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12); + border-radius: 22px; + box-shadow: 0 12px 34px rgba(0, 0, 0, 0.16); } -/* タイトル */ +/* 題名 */ h1 { margin: 0 0 6px 0; - font-size: 1.6rem; + font-size: 1.7rem; text-align: center; - font-weight: 700; + font-weight: 800; + letter-spacing: 0.03em; } /* 日にち */ #date { text-align: center; - font-size: 1rem; - opacity: 0.8; + font-size: 1.05rem; + opacity: 0.85; margin-bottom: 14px; } @@ -48,37 +72,53 @@ align-items: center; gap: 10px; - font-size: 1.2rem; + font-size: 1.25rem; margin-bottom: 18px; } #weatherIcon { - font-size: 1.8rem; + font-size: 1.9rem; } -/* fish area */ +/* fish */ .fish { text-align: center; margin: 22px 0 18px 0; } .fish .label { - font-size: 1rem; - opacity: 0.75; + font-size: 1.05rem; + opacity: 0.78; margin-bottom: 6px; } #fishName { - font-size: 2.4rem; - font-weight: 800; + font-size: 2.6rem; + font-weight: 900; letter-spacing: 0.04em; + line-height: 1.2; + + text-shadow: 0 2px 0 rgba(0, 0, 0, 0.06); + + animation: pop 0.35s ease-out; +} + +@keyframes pop { + from { + transform: translateY(4px) scale(0.98); + opacity: 0.65; + } + to { + transform: translateY(0) scale(1); + opacity: 1; + } } /* 理由 */ #reason { padding-left: 1.2em; margin: 0; - font-size: 1.05rem; + font-size: 1.08rem; } #reason li { @@ -88,11 +128,21 @@ /* スマホ対応 */ @media (max-width: 480px) { .card { - margin: 20px 14px; + margin: 18px 14px; padding: 24px 20px; } + h1 { + font-size: 1.55rem; + } + #fishName { - font-size: 2.1rem; + font-size: 2.25rem; + } + + /* スマホは背景が大きすぎると邪魔なので少し控えめ */ + body { + background-size: 120%; + background-position: center 82%; } }