@charset "utf-8";

       
   
        /* 3×3グリッドレイアウト */
        .grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            grid-template-rows: repeat(3, 1fr);
            gap: 30px;
            margin-top: 40px;
            min-height: 800px;
        }

        .card {
            box-sizing: border-box;
            background: white;
            border-radius: 15px;
            padding: 25px 20px;
            box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
            position: relative;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            border: 3px solid #3498db;
            height: 100%;
            display: grid;
            grid-template-rows: auto 1fr auto;
            grid-template-areas: 
                "title"
                "content"
                "number";
            gap: 15px;
            text-align: left;
        }

        a.cardlink {
		text-decoration: none;
        }

        

        .card::before {
            content: '';
            position: absolute;
	background-image: url(../files/medias/icon/icon_pencil.png);
	background-size: contain;
            top: -20px;
            left: 50%;
            transform: translateX(-50%);
            width: 70px;
            height: 36px;
        }

         /*
        .card::before {
            content: '';
            position: absolute;
            top: -15px;
            left: 50%;
            transform: translateX(-50%);
            width: 40px;
            height: 30px;
            background: #f39c12;
            border-radius: 8px 8px 4px 4px;
            box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
        }
		.card::after {
            content: '';
            position: absolute;
            top: -10px;
            left: 50%;
            transform: translateX(-50%);
            width: 15px;
            height: 8px;
            background: white;
            border-radius: 2px;
        }
	*/


        .card-title {
            grid-area: title;
            color: #2c3e50;
            font-weight: 700;
            margin: 0;
            padding: 15px 0 10px 0;
            border-bottom: 2px solid #3498db;
            align-self: start;
            min-height: 70px;
            display: flex;
            align-items: center;
            line-height: 1.3;
        }

        .card-text {
            grid-area: content;
            color: #2c3e50;
            font-weight: 400;
            align-self: start;
        }

        .card-number {
            grid-area: number;
            font-size: 3rem !important;
            font-weight: bold;
            color: #3498db;
            opacity: 0.8;
            justify-self: end;
            align-self: end;
            z-index: 1;
        }



        /* 中央のハイライトカード（2行目2列目） */
        .highlight-card {
            background: linear-gradient(135deg, #3498db, #2980b9);
            color: white;
            border: none;
            text-align: center;
            display: grid;
            grid-template-rows: auto 1fr;
            grid-template-areas:
                "title"
                "content";
            gap: 15px;
            justify-items: center;
            align-items: center;
        }

        .highlight-card .card-title {
            color: white;
            font-size: 1.5rem !important;
            border-bottom: 2px solid white;
            text-align: center;
            padding: 15px 0 10px 0;
            min-height: 70px;
            display: flex;
            align-items: center;
            justify-content: center;
            line-height: 1.3;
        }

        .highlight-card .card-text {
            color: white;
            text-align: center;
        }

        .highlight-card .card-number {
            display: none;
        }

        /* タブレット（中サイズ画面） */
        @media (max-width: 1024px) {
            .grid {
                grid-template-rows: repeat(2, 1fr);
                min-height: 600px;
            }
            
            .card {
                min-height: 180px;
                padding: 20px 15px;
            }
            
            .card-title {
                min-height: 65px;
                padding: 12px 0 8px 0;
            }
            
            
            .card-number {
                font-size: 2.5rem !important;
            }
        }

        /* スマートフォン（小サイズ画面） */
        @media (max-width: 768px) {
            .grid {
                grid-template-columns: 1fr;
                grid-template-rows: repeat(9, auto);
                gap: 20px;
                min-height: auto;
            }
            
			
            .card {
                min-height: 160px;
                padding: 20px 15px;
                height: auto;
            }
            
            .card-title {
                font-size: 1rem;
            }
            
            .card-number {
                font-size: 2.5rem;
            }
            
            
        }

        /* 極小画面（480px以下） */
        @media (max-width: 480px) {
		
           .card.highlight-card {
		   display: none;
		   }
            
            .card-title {
                margin-bottom: 8px;
            }
            
            .card-number {
                font-size: 2rem !important;
            }
            
            
           
        }

        /* 大画面対応 */
        @media (min-width: 1200px) {
            .grid {
                gap: 35px;
                min-height: 900px;
            }
            
            .card {
                min-height: 220px;
                padding: 30px 25px;
            }
            
            .card-title {
                min-height: 75px;
                padding: 15px 0 10px 0;
            }
            
            
            .card-number {
                font-size: 3.5rem !important;
            }
        }
