{"id":102,"date":"2025-06-08T11:50:48","date_gmt":"2025-06-08T02:50:48","guid":{"rendered":"https:\/\/tochikaokuchosashi.net\/?p=102"},"modified":"2025-06-08T11:52:45","modified_gmt":"2025-06-08T02:52:45","slug":"%e7%ac%ac6%e5%9b%9e-gemini%e5%8b%89%e5%bc%b7%e4%bc%9a","status":"publish","type":"post","link":"https:\/\/tochikaokuchosashi.net\/?p=102","title":{"rendered":"\u7b2c6\u56de Gemini\u52c9\u5f37\u4f1a"},"content":{"rendered":"\n<!DOCTYPE html>\n<html lang=\"ja\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>Gemini\u6700\u65b0\u6a5f\u80fd\u30a4\u30f3\u30bf\u30e9\u30af\u30c6\u30a3\u30d6\u30ac\u30a4\u30c9<\/title>\n    <script src=\"https:\/\/cdn.tailwindcss.com\"><\/script>\n    <script src=\"https:\/\/cdn.jsdelivr.net\/npm\/chart.js\"><\/script>\n    <link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n    <link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n    <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Noto+Sans+JP:wght@400;500;700&#038;display=swap\" rel=\"stylesheet\">\n    <!-- Chosen Palette: \"Calm Harmony\" - A warm neutral base (#f8f7f2) with a complementary slate blue (#475569) for text and UI elements, and a subtle coral accent (#f08080) for highlights and calls-to-action. -->\n    <!-- Application Structure Plan: A single-page, vertically scrolling \"interactive feature tour\" design was chosen over a direct report translation. This structure consists of a sticky top navigation for quick access and three distinct, thematic sections for each feature. Each section uses a two-column layout on larger screens: the left side provides a concise explanation, while the right side features an interactive simulation of the UI. This \"learn-by-doing\" approach was selected because it transforms passive reading into active engagement, making the functionality and benefits of each feature much clearer and more memorable for the user, thus maximizing usability and understanding. -->\n    <!-- Visualization & Content Choices:\n        1. Gmail-Calendar Link: Goal is to show simplicity. A step-by-step interactive mock-up of the Gmail UI was chosen over a static image or video. Interaction: User clicks \"Next\" to see the UI react, solidifying the process in their mind. Library: Vanilla JS for DOM manipulation.\n        2. AI-Powered Reply: Goal is to demonstrate AI's power and flexibility. A simulated compose window where users can click buttons to generate and then change the tone of a message was selected. Interaction: Buttons trigger text changes, instantly showing the \"refinement\" capability. Library: Vanilla JS.\n        3. Canvas Infographic: Goal is to visualize abstract data transformation. A Chart.js bar chart is dynamically generated on button click. Interaction: User action directly results in a data visualization appearing. Justification: This uses the required charting library to create a \"wow\" moment, making the abstract concept of \"infographic generation\" tangible and visually impressive.\n    -->\n    <!-- CONFIRMATION: NO SVG graphics used. NO Mermaid JS used. -->\n    <style>\n        body {\n            font-family: 'Noto Sans JP', sans-serif;\n            background-color: #f8f7f2;\n            color: #334155;\n        }\n        .chart-container {\n            position: relative;\n            width: 100%;\n            max-width: 600px;\n            margin-left: auto;\n            margin-right: auto;\n            height: 350px;\n            max-height: 400px;\n        }\n        @media (max-width: 768px) {\n            .chart-container {\n                height: 300px;\n            }\n        }\n        .smooth-scroll {\n            scroll-behavior: smooth;\n        }\n        .btn-primary {\n            @apply bg-[#f08080] text-white font-bold py-2 px-4 rounded-lg shadow-md hover:bg-[#d97070] transition-colors duration-300;\n        }\n        .btn-secondary {\n             @apply bg-slate-200 text-slate-700 font-bold py-2 px-4 rounded-lg hover:bg-slate-300 transition-colors duration-300;\n        }\n        .card {\n            @apply bg-white p-6 rounded-xl shadow-lg border border-gray-100;\n        }\n        .mock-email-highlight {\n            background-color: #fce7f3;\n            padding: 0 2px;\n            border-bottom: 2px solid #f08080;\n            cursor: pointer;\n        }\n    <\/style>\n<\/head>\n<body class=\"smooth-scroll\">\n\n    <header class=\"bg-white\/80 backdrop-blur-md sticky top-0 z-50 shadow-sm border-b border-gray-200\">\n        <nav class=\"container mx-auto px-4 sm:px-6 lg:px-8\">\n            <div class=\"flex items-center justify-between h-16\">\n                <h1 class=\"text-xl font-bold text-slate-800\">Gemini\u65b0\u6a5f\u80fd\u30ac\u30a4\u30c9<\/h1>\n                <div class=\"hidden sm:flex items-center space-x-4\">\n                    <a href=\"#feature1\" class=\"text-slate-600 hover:text-[#f08080] transition-colors\">\ud83d\udcc5 \u30ab\u30ec\u30f3\u30c0\u30fc\u9023\u643a<\/a>\n                    <a href=\"#feature2\" class=\"text-slate-600 hover:text-[#f08080] transition-colors\">\u270d\ufe0f AI\u8fd4\u4fe1\u652f\u63f4<\/a>\n                    <a href=\"#feature3\" class=\"text-slate-600 hover:text-[#f08080] transition-colors\">\ud83d\udcca \u30a4\u30f3\u30d5\u30a9\u30b0\u30e9\u30d5\u30a3\u30c3\u30af<\/a>\n                <\/div>\n            <\/div>\n        <\/nav>\n    <\/header>\n\n    <main class=\"container mx-auto px-4 sm:px-6 lg:px-8 py-12\">\n        <div class=\"text-center mb-16\">\n            <h2 class=\"text-3xl md:text-4xl font-bold text-slate-800 mb-4\">\u305d\u306e\u4f5c\u696d\u3001Gemini\u3067\u3082\u3063\u3068\u8ce2\u304f\u3002<\/h2>\n            <p class=\"max-w-3xl mx-auto text-slate-600\">\n                \u4eca\u56de\u306e\u52c9\u5f37\u4f1a\u3067\u306f\u3001\u65e5\u3005\u306e\u696d\u52d9\u3067\u5f79\u7acb\u3064Gemini\u306e\u6700\u65b0\u6a5f\u80fd\u30923\u3064\u53b3\u9078\u3057\u3066\u3054\u7d39\u4ecb\u3057\u307e\u3059\u3002\u30e1\u30fc\u30eb\u696d\u52d9\u3092\u52b9\u7387\u5316\u3059\u308bGmail\u306e\u4fbf\u5229\u6a5f\u80fd\u304b\u3089\u3001\u30c6\u30ad\u30b9\u30c8\u3092\u77ac\u6642\u306b\u8996\u899a\u5316\u3059\u308bGemini Canvas\u306e\u5f37\u529b\u306a\u65b0\u6a5f\u80fd\u307e\u3067\u3001\u660e\u65e5\u304b\u3089\u3059\u3050\u306b\u4f7f\u3048\u308b\u30c6\u30af\u30cb\u30c3\u30af\u3092\u30a4\u30f3\u30bf\u30e9\u30af\u30c6\u30a3\u30d6\u306b\u30de\u30b9\u30bf\u30fc\u3057\u307e\u3057\u3087\u3046\u3002\n            <\/p>\n        <\/div>\n\n        <div class=\"space-y-24\">\n            <section id=\"feature1\" class=\"pt-16 -mt-16\">\n                <div class=\"grid lg:grid-cols-2 gap-12 items-center\">\n                    <div>\n                        <h3 class=\"text-2xl font-bold text-slate-800 mb-4\">1. \u30e1\u30fc\u30eb\u304b\u3089\u4e00\u77ac\u3067\u4e88\u5b9a\u767b\u9332\uff01\u300c\u30ab\u30ec\u30f3\u30c0\u30fc\u9023\u643a\u300d<\/h3>\n                        <p class=\"text-slate-600 mb-6\">\n                            \u30e1\u30fc\u30eb\u3067\u5c4a\u3044\u305f\u6253\u3061\u5408\u308f\u305b\u6848\u5185\u3002\u3082\u3046\u30ab\u30ec\u30f3\u30c0\u30fc\u3092\u958b\u3044\u3066\u624b\u5165\u529b\u3059\u308b\u5fc5\u8981\u306f\u3042\u308a\u307e\u305b\u3093\u3002Gmail\u304c\u65e5\u6642\u3092\u81ea\u52d5\u3067\u8a8d\u8b58\u3057\u3001\u30af\u30ea\u30c3\u30af\u4e00\u3064\u3067\u4e88\u5b9a\u767b\u9332\u3092\u5b8c\u4e86\u3055\u305b\u307e\u3059\u3002\u3053\u306e\u30b7\u30df\u30e5\u30ec\u30fc\u30b7\u30e7\u30f3\u3067\u305d\u306e\u624b\u8efd\u3055\u3092\u4f53\u9a13\u3057\u3066\u304f\u3060\u3055\u3044\u3002\n                        <\/p>\n                        <div class=\"grid sm:grid-cols-3 gap-4 text-center\">\n                            <div class=\"card\"><span class=\"text-2xl\">\u23f1\ufe0f<\/span><p class=\"font-semibold mt-2\">\u6642\u9593\u77ed\u7e2e<\/p><\/div>\n                            <div class=\"card\"><span class=\"text-2xl\">\u2714\ufe0f<\/span><p class=\"font-semibold mt-2\">\u5165\u529b\u30df\u30b9\u9632\u6b62<\/p><\/div>\n                            <div class=\"card\"><span class=\"text-2xl\">\ud83d\udca1<\/span><p class=\"font-semibold mt-2\">\u767b\u9332\u6f0f\u308c\u9632\u6b62<\/p><\/div>\n                        <\/div>\n                    <\/div>\n                    <div class=\"card\">\n                        <div id=\"sim1-container\" class=\"bg-gray-50 p-4 rounded-lg min-h-[350px] flex flex-col justify-between\">\n                            <div class=\"border-b pb-2 mb-4\">\n                                <p class=\"font-bold\">\u4ef6\u540d: \u6b21\u56deMTG\u306e\u65e5\u7a0b\u306b\u3064\u304d\u307e\u3057\u3066<\/p>\n                                <p class=\"text-sm text-slate-500\">\u5dee\u51fa\u4eba: \u7530\u4e2d \u592a\u90ce<\/p>\n                            <\/div>\n                            <div id=\"sim1-step1\" class=\"flex-grow\">\n                                <p>\u304a\u4e16\u8a71\u306b\u306a\u3063\u3066\u304a\u308a\u307e\u3059\u3002<\/p>\n                                <p>\u5148\u65e5\u3054\u76f8\u8ac7\u3057\u305f\u4ef6\u3067\u3059\u304c\u3001<span class=\"mock-email-highlight\">\u6765\u9031\u91d1\u66dc\u65e5\u306e15\u6642\u304b\u3089<\/span>30\u5206\u307b\u3069\u304a\u6642\u9593\u3092\u3044\u305f\u3060\u304f\u3053\u3068\u306f\u53ef\u80fd\u3067\u3057\u3087\u3046\u304b\uff1f<\/p>\n                                <p>\u3054\u78ba\u8a8d\u306e\u307b\u3069\u3001\u3088\u308d\u3057\u304f\u304a\u9858\u3044\u3044\u305f\u3057\u307e\u3059\u3002<\/p>\n                            <\/div>\n                            <div id=\"sim1-step2\" class=\"hidden relative\">\n                                <div class=\"absolute bg-white shadow-xl rounded-lg p-4 border -top-24 left-10 w-64\">\n                                    <p class=\"font-bold\">\u4e88\u5b9a\u3092\u4f5c\u6210&#8230;<\/p>\n                                    <p class=\"text-sm text-slate-500\">\u91d1\u66dc\u65e5, 15:00<\/p>\n                                <\/div>\n                                <p>\u304a\u4e16\u8a71\u306b\u306a\u3063\u3066\u304a\u308a\u307e\u3059\u3002<\/p>\n                                <p>\u5148\u65e5\u3054\u76f8\u8ac7\u3057\u305f\u4ef6\u3067\u3059\u304c\u3001<span class=\"mock-email-highlight\">\u6765\u9031\u91d1\u66dc\u65e5\u306e15\u6642\u304b\u3089<\/span>30\u5206\u307b\u3069\u304a\u6642\u9593\u3092\u3044\u305f\u3060\u304f\u3053\u3068\u306f\u53ef\u80fd\u3067\u3057\u3087\u3046\u304b\uff1f<\/p>\n                                <p>\u3054\u78ba\u8a8d\u306e\u307b\u3069\u3001\u3088\u308d\u3057\u304f\u304a\u9858\u3044\u3044\u305f\u3057\u307e\u3059\u3002<\/p>\n                            <\/div>\n                            <div id=\"sim1-step3\" class=\"hidden flex-grow flex items-center justify-center\">\n                                <div class=\"bg-green-100 text-green-800 p-6 rounded-lg text-center shadow-inner\">\n                                    <span class=\"text-4xl\">\ud83d\uddd3\ufe0f<\/span>\n                                    <p class=\"font-bold mt-2\">\u30ab\u30ec\u30f3\u30c0\u30fc\u306b\u4e88\u5b9a\u3092\u8ffd\u52a0\u3057\u307e\u3057\u305f\uff01<\/p>\n                                <\/div>\n                            <\/div>\n                            <div class=\"text-right mt-4\">\n                                <button id=\"sim1-btn\" class=\"btn-primary\">\u30af\u30ea\u30c3\u30af\u3057\u3066\u4f53\u9a13 \u2192<\/button>\n                            <\/div>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/section>\n\n            <section id=\"feature2\" class=\"pt-16 -mt-16\">\n                <div class=\"grid lg:grid-cols-2 gap-12 items-center\">\n                     <div class=\"lg:order-2\">\n                        <h3 class=\"text-2xl font-bold text-slate-800 mb-4\">2. AI\u3067\u8fd4\u4fe1\u3092\u30ec\u30d9\u30eb\u30a2\u30c3\u30d7\uff01\u9032\u5316\u3057\u305f\u300c\u4f5c\u6210\u652f\u63f4\u300d<\/h3>\n                        <p class=\"text-slate-600 mb-6\">\n                            \u30e1\u30fc\u30eb\u306e\u8fd4\u4fe1\u6587\u4f5c\u6210\u306fAI\u306b\u304a\u4efb\u305b\u3002\u7c21\u5358\u306a\u6307\u793a\u3060\u3051\u3067\u3001\u72b6\u6cc1\u306b\u5fdc\u3058\u305f\u6587\u7ae0\u3092\u751f\u6210\u3057\u307e\u3059\u3002\u3055\u3089\u306b\u3001\u30dc\u30bf\u30f3\u4e00\u3064\u3067\u6587\u7ae0\u306e\u30c8\u30fc\u30f3\u3092\u5909\u66f4\u53ef\u80fd\u3002\u4e01\u5be7\u306a\u8868\u73fe\u304b\u3089\u7c21\u6f54\u306a\u8868\u73fe\u307e\u3067\u3001\u601d\u3044\u306e\u307e\u307e\u3067\u3059\u3002\n                        <\/p>\n                        <div class=\"grid sm:grid-cols-3 gap-4 text-center\">\n                            <div class=\"card\"><span class=\"text-2xl\">\u270d\ufe0f<\/span><p class=\"font-semibold mt-2\">\u6587\u7ae0\u4f5c\u6210\u306e\u6642\u77ed<\/p><\/div>\n                            <div class=\"card\"><span class=\"text-2xl\">\ud83c\udfa8<\/span><p class=\"font-semibold mt-2\">\u8868\u73fe\u529b\u306e\u5411\u4e0a<\/p><\/div>\n                            <div class=\"card\"><span class=\"text-2xl\">\ud83d\ude0c<\/span><p class=\"font-semibold mt-2\">\u5fc3\u7406\u7684\u8ca0\u62c5\u306e\u8efd\u6e1b<\/p><\/div>\n                        <\/div>\n                    <\/div>\n                    <div class=\"card lg:order-1\">\n                        <div class=\"bg-gray-50 p-4 rounded-lg\">\n                            <div class=\"mb-2\">\n                                <label class=\"font-bold text-sm text-slate-600\">\u3042\u306a\u305f\u306e\u6307\u793a (\u30d7\u30ed\u30f3\u30d7\u30c8):<\/label>\n                                <div class=\"bg-white p-2 mt-1 rounded border\">\u4f1a\u8b70\u65e5\u7a0b\u306e\u8abf\u6574\u306b\u611f\u8b1d\u3057\u3001\u627f\u8afe\u3059\u308b\u65e8\u3092\u4f1d\u3048\u308b<\/div>\n                            <\/div>\n                            <div class=\"text-center my-4\">\n                                <button id=\"sim2-generate-btn\" class=\"btn-primary\">\u270d\ufe0f AI\u3067\u4e0b\u66f8\u304d\u3092\u4f5c\u6210<\/button>\n                            <\/div>\n                            <div id=\"sim2-output\" class=\"hidden\">\n                                <label class=\"font-bold text-sm text-slate-600\">AI\u304c\u4f5c\u6210\u3057\u305f\u4e0b\u66f8\u304d:<\/label>\n                                <textarea id=\"sim2-textarea\" class=\"w-full h-32 bg-white p-2 mt-1 rounded border transition-all duration-300\" readonly><\/textarea>\n                                <div class=\"flex items-center space-x-2 mt-2\">\n                                    <p class=\"text-sm font-semibold\">\u30c8\u30fc\u30f3\u3092\u8abf\u6574:<\/p>\n                                    <button data-tone=\"formal\" class=\"btn-secondary text-sm px-3 py-1\">\u3088\u308a\u30d5\u30a9\u30fc\u30de\u30eb\u306b<\/button>\n                                    <button data-tone=\"casual\" class=\"btn-secondary text-sm px-3 py-1\">\u3088\u308a\u30ab\u30b8\u30e5\u30a2\u30eb\u306b<\/button>\n                                <\/div>\n                            <\/div>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/section>\n\n            <section id=\"feature3\" class=\"pt-16 -mt-16\">\n                <div class=\"grid lg:grid-cols-2 gap-12 items-center\">\n                    <div>\n                        <h3 class=\"text-2xl font-bold text-slate-800 mb-4\">3. \u30c6\u30ad\u30b9\u30c8\u304b\u3089\u77ac\u6642\u306b\u56f3\u89e3\uff01\u300c\u30a4\u30f3\u30d5\u30a9\u30b0\u30e9\u30d5\u30a3\u30c3\u30af\u4f5c\u6210\u300d<\/h3>\n                        <p class=\"text-slate-600 mb-6\">\n                            \u5831\u544a\u66f8\u3084\u30e1\u30e2\u3092\u3001\u898b\u6804\u3048\u306e\u826f\u3044\u56f3\u89e3\u8cc7\u6599\u306b\u3002Gemini Canvas\u3092\u4f7f\u3048\u3070\u3001\u30c6\u30ad\u30b9\u30c8\u60c5\u5831\u304b\u3089\u4e00\u77ac\u3067\u30a4\u30f3\u30d5\u30a9\u30b0\u30e9\u30d5\u30a3\u30c3\u30af\u3092\u751f\u6210\u3057\u307e\u3059\u3002\u30c7\u30b6\u30a4\u30f3\u30b9\u30ad\u30eb\u306f\u4e0d\u8981\u3002\u8907\u96d1\u306a\u60c5\u5831\u3082\u4e00\u76ee\u3067\u308f\u304b\u308b\u30d3\u30b8\u30e5\u30a2\u30eb\u306b\u5909\u308f\u308a\u307e\u3059\u3002\n                        <\/p>\n                        <div class=\"grid sm:grid-cols-3 gap-4 text-center\">\n                            <div class=\"card\"><span class=\"text-2xl\">\ud83c\udfa8<\/span><p class=\"font-semibold mt-2\">\u5c02\u9580\u77e5\u8b58\u304c\u4e0d\u8981<\/p><\/div>\n                            <div class=\"card\"><span class=\"text-2xl\">\ud83d\ude80<\/span><p class=\"font-semibold mt-2\">\u5287\u7684\u306a\u6642\u9593\u77ed\u7e2e<\/p><\/div>\n                            <div class=\"card\"><span class=\"text-2xl\">\ud83d\udcca<\/span><p class=\"font-semibold mt-2\">\u30a2\u30a4\u30c7\u30a2\u306e\u53ef\u8996\u5316<\/p><\/div>\n                        <\/div>\n                    <\/div>\n                     <div class=\"card\">\n                        <div class=\"bg-gray-50 p-4 rounded-lg min-h-[350px] flex flex-col items-center justify-center\">\n                            <div id=\"sim3-prompt\" class=\"w-full text-center\">\n                                 <p class=\"mb-4 text-slate-600\">\u4e0b\u306e\u30dc\u30bf\u30f3\u3092\u62bc\u3057\u3066\u3001\u30c6\u30ad\u30b9\u30c8\u304b\u3089\u30a4\u30f3\u30d5\u30a9\u30b0\u30e9\u30d5\u30a3\u30c3\u30af\u3092\u751f\u6210\u3059\u308b\u69d8\u5b50\u3092\u4f53\u9a13\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n                                 <p class=\"italic bg-white p-3 rounded-lg border mb-4\">\u300c\u30ea\u30e2\u30fc\u30c8\u30ef\u30fc\u30af\u306e\u30e1\u30ea\u30c3\u30c8\u30fb\u30c7\u30e1\u30ea\u30c3\u30c8\u306b\u95a2\u3059\u308b\u30a4\u30f3\u30d5\u30a9\u30b0\u30e9\u30d5\u30a3\u30c3\u30af\u3092\u4f5c\u6210\u300d<\/p>\n                                <button id=\"sim3-btn\" class=\"btn-primary\">\ud83d\udcca \u30a4\u30f3\u30d5\u30a9\u30b0\u30e9\u30d5\u30a3\u30c3\u30af\u3092\u751f\u6210<\/button>\n                            <\/div>\n                            <div id=\"sim3-chart-container\" class=\"hidden w-full chart-container\">\n                                <canvas id=\"infographicChart\"><\/canvas>\n                            <\/div>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/section>\n        <\/div>\n    <\/main>\n\n    <footer class=\"bg-slate-800 text-white mt-24\">\n        <div class=\"container mx-auto px-4 sm:px-6 lg:px-8 py-8 text-center\">\n            <p>&copy; 2025 Gemini\u52c9\u5f37\u4f1a. All rights reserved.<\/p>\n        <\/div>\n    <\/footer>\n\n    <script>\n        document.addEventListener('DOMContentLoaded', function() {\n            \/\/ Smooth scroll for nav links\n            document.querySelectorAll('a[href^=\"#\"]').forEach(anchor => {\n                anchor.addEventListener('click', function (e) {\n                    e.preventDefault();\n                    document.querySelector(this.getAttribute('href')).scrollIntoView({\n                        behavior: 'smooth'\n                    });\n                });\n            });\n            \n            \/\/ Simulation 1: Calendar Integration\n            const sim1Btn = document.getElementById('sim1-btn');\n            const sim1Step1 = document.getElementById('sim1-step1');\n            const sim1Step2 = document.getElementById('sim1-step2');\n            const sim1Step3 = document.getElementById('sim1-step3');\n            let sim1CurrentStep = 0;\n            \n            sim1Btn.addEventListener('click', () => {\n                sim1CurrentStep++;\n                if (sim1CurrentStep === 1) {\n                    sim1Step1.classList.add('hidden');\n                    sim1Step2.classList.remove('hidden');\n                    sim1Btn.textContent = '\u4e88\u5b9a\u3092\u4f5c\u6210 \u2192';\n                } else if (sim1CurrentStep === 2) {\n                    sim1Step2.classList.add('hidden');\n                    sim1Step3.classList.remove('hidden');\n                    sim1Btn.textContent = '\u30ea\u30bb\u30c3\u30c8';\n                } else {\n                    sim1CurrentStep = 0;\n                    sim1Step3.classList.add('hidden');\n                    sim1Step1.classList.remove('hidden');\n                    sim1Btn.textContent = '\u30af\u30ea\u30c3\u30af\u3057\u3066\u4f53\u9a13 \u2192';\n                }\n            });\n\n            \/\/ Simulation 2: AI Reply\n            const sim2GenerateBtn = document.getElementById('sim2-generate-btn');\n            const sim2Output = document.getElementById('sim2-output');\n            const sim2Textarea = document.getElementById('sim2-textarea');\n            const toneButtons = document.querySelectorAll('#sim2-output button[data-tone]');\n\n            const replies = {\n                default: '\u3054\u9023\u7d61\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059\u3002\\n\u65e5\u7a0b\u306e\u4ef6\u3001\u627f\u77e5\u3044\u305f\u3057\u307e\u3057\u305f\u3002\\n\u6765\u9031\u91d1\u66dc\u65e5\u306e15\u6642\u3088\u308a\u3001\u3088\u308d\u3057\u304f\u304a\u9858\u3044\u3044\u305f\u3057\u307e\u3059\u3002',\n                formal: '\u65e5\u7a0b\u8abf\u6574\u306e\u3054\u9023\u7d61\u3001\u8aa0\u306b\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059\u3002\\n\u3054\u63d0\u793a\u3044\u305f\u3060\u304d\u307e\u3057\u305f\u6765\u9031\u91d1\u66dc\u65e515\u6642\u3067\u554f\u984c\u3054\u3056\u3044\u307e\u305b\u3093\u3002\\n\u5f53\u65e5\u306f\u4f55\u5352\u3088\u308d\u3057\u304f\u304a\u9858\u3044\u7533\u3057\u4e0a\u3052\u307e\u3059\u3002',\n                casual: '\u3054\u9023\u7d61\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059\uff01\\n\u65e5\u7a0bOK\u3067\u3059\u3002\u6765\u9031\u91d1\u66dc15\u6642\u3001\u697d\u3057\u307f\u306b\u3057\u3066\u307e\u3059\u306d\uff01'\n            };\n\n            sim2GenerateBtn.addEventListener('click', () => {\n                sim2Output.classList.remove('hidden');\n                sim2Textarea.value = replies.default;\n            });\n            \n            toneButtons.forEach(button => {\n                button.addEventListener('click', () => {\n                    const tone = button.dataset.tone;\n                    sim2Textarea.value = replies[tone];\n                });\n            });\n            \n            \/\/ Simulation 3: Infographic\n            const sim3Btn = document.getElementById('sim3-btn');\n            const sim3Prompt = document.getElementById('sim3-prompt');\n            const sim3ChartContainer = document.getElementById('sim3-chart-container');\n            let infographicChart = null;\n            \n            sim3Btn.addEventListener('click', () => {\n                sim3Prompt.classList.add('hidden');\n                sim3ChartContainer.classList.remove('hidden');\n\n                if (infographicChart) {\n                    infographicChart.destroy();\n                }\n\n                const ctx = document.getElementById('infographicChart').getContext('2d');\n                infographicChart = new Chart(ctx, {\n                    type: 'bar',\n                    data: {\n                        labels: ['\u901a\u52e4\u6642\u9593\u30bc\u30ed', '\u5834\u6240\u306e\u81ea\u7531', '\u30b3\u30b9\u30c8\u524a\u6e1b', '\u81ea\u5df1\u7ba1\u7406\u80fd\u529b', '\u5b64\u72ec\u611f', '\u901a\u4fe1\u74b0\u5883'],\n                        datasets: [{\n                            label: '\u30e1\u30ea\u30c3\u30c8',\n                            data: [90, 85, 70, 0, 0, 0],\n                            backgroundColor: 'rgba(56, 189, 248, 0.6)',\n                            borderColor: 'rgba(56, 189, 248, 1)',\n                            borderWidth: 1\n                        },\n                        {\n                            label: '\u30c7\u30e1\u30ea\u30c3\u30c8',\n                            data: [0, 0, 0, 75, 80, 60],\n                            backgroundColor: 'rgba(240, 128, 128, 0.6)',\n                            borderColor: 'rgba(240, 128, 128, 1)',\n                            borderWidth: 1\n                        }]\n                    },\n                    options: {\n                        responsive: true,\n                        maintainAspectRatio: false,\n                        plugins: {\n                            title: {\n                                display: true,\n                                text: '\u30ea\u30e2\u30fc\u30c8\u30ef\u30fc\u30af\u306e\u30e1\u30ea\u30c3\u30c8\u30fb\u30c7\u30e1\u30ea\u30c3\u30c8',\n                                font: {\n                                    size: 18\n                                }\n                            },\n                            tooltip: {\n                                callbacks: {\n                                    label: function(context) {\n                                        let label = context.dataset.label || '';\n                                        if (label) {\n                                            label += ': ';\n                                        }\n                                        if (context.parsed.y !== null) {\n                                            label += context.parsed.y + '%';\n                                        }\n                                        return label;\n                                    }\n                                }\n                            }\n                        },\n                        scales: {\n                            y: {\n                                beginAtZero: true,\n                                max: 100,\n                                ticks: {\n                                    callback: function(value) {\n                                        return value + '%'\n                                    }\n                                }\n                            },\n                             x: {\n                                ticks: {\n                                    callback: function(value, index, values) {\n                                        const label = this.getLabelForValue(value);\n                                        return label.length > 5 ? label.substring(0, 5) + '\u2026' : label;\n                                    }\n                                }\n                            }\n                        }\n                    }\n                });\n                sim3Btn.textContent = \"\u518d\u751f\u6210\u3059\u308b\";\n                sim3Prompt.classList.remove('hidden');\n            });\n        });\n    <\/script>\n<\/body>\n<\/html>\n\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Gemini\u6700\u65b0\u6a5f\u80fd\u30a4\u30f3\u30bf\u30e9\u30af\u30c6\u30a3\u30d6\u30ac\u30a4\u30c9 Gemini\u65b0\u6a5f&hellip;<\/p>\n","protected":false},"author":1,"featured_media":77,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11,16,15],"tags":[8,18,19],"class_list":["post-102","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ai","category-gemini","category-google-workspace","tag-ai","tag-gemini","tag-google-workspace"],"_links":{"self":[{"href":"https:\/\/tochikaokuchosashi.net\/index.php?rest_route=\/wp\/v2\/posts\/102","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tochikaokuchosashi.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tochikaokuchosashi.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tochikaokuchosashi.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tochikaokuchosashi.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=102"}],"version-history":[{"count":1,"href":"https:\/\/tochikaokuchosashi.net\/index.php?rest_route=\/wp\/v2\/posts\/102\/revisions"}],"predecessor-version":[{"id":103,"href":"https:\/\/tochikaokuchosashi.net\/index.php?rest_route=\/wp\/v2\/posts\/102\/revisions\/103"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tochikaokuchosashi.net\/index.php?rest_route=\/wp\/v2\/media\/77"}],"wp:attachment":[{"href":"https:\/\/tochikaokuchosashi.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=102"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tochikaokuchosashi.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=102"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tochikaokuchosashi.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=102"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}