        
        /* ★★★ 追加したCSS ★★★ */
        .rules {
            background-color: #f9f9f9; /* 薄いグレーの背景 */
            border: 1px solid #ddd;   /* 枠線 */
            border-radius: 8px;       /* 角を丸くする */
            padding: 1.5em;           /* 内側の余白 */
            margin-bottom: 2em;       /* 下の要素との間隔 */
            text-align: left;         /* テキストを左揃えに */
        }
        
        .rules h2 {
            font-size: 1.1em;
            color: #333;
            margin-top: 0;
            margin-bottom: 1em;
            text-align: center;
        }
        .rules ul {
            margin: 0;
        }
        .rules li {
            font-size: 0.9em;
            line-height: 1.7;
            margin: 0.5em 0;
        }
        /* ★★★ ここまで ★★★ */

        .input-group {
            margin-bottom: 1.5em;
        }

        label {
            display: block;
            margin-bottom: 0.5em;
            font-weight: bold;
            color: #555;
        }

        #birthday {
            width: 100%;
            padding: 0.8em;
            border: 1px solid #ccc;
            border-radius: 6px;
            box-sizing: border-box;
            font-size: 1em;
        }

        #calculate-btn {
            background-color: #007bff;
            color: white;
            border: none;
            padding: 0.9em 1.5em;
            border-radius: 6px;
            font-size: 1.1em;
            font-weight: bold;
            cursor: pointer;
            transition: background-color 0.3s, transform 0.1s;
        }
        
        #calculate-btn:hover {
            background-color: #0056b3;
        }

        #calculate-btn:active {
            transform: scale(0.98);
        }

        .result-area {
            margin-top: 2em;
            display: none;
        }

        .result-area h2 {
            color: #555;
            font-size: 1.2em;
            margin-bottom: 0.5em;
        }

        #result-display a {
            text-decoration: underline;
        }
        
        #result-display p {
            font-size: 6em;
            font-weight: bold;
            color: #000000;
            margin: 0;
            padding: 0.2em 0 0;
            text-align: center;
            line-height: 1 !important;
        }

        #result-display p.link {
            font-size: 1.2rem !important;
            font-weight: normal;
            margin: 0 0 2em;
            padding: 0em;
        }