/* Google FontsからNoto Sans JPをインポート */ @import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap'); * { box-sizing: border-box; } body { background-color: #f0f2f5; font-family: 'Noto Sans JP', sans-serif; color: #333; margin: 0; padding: 0; } .header { background: linear-gradient(135deg, #A70028, #8b0020); color: white; padding: 15px 0; /* ★ 上下のpaddingを20pxから15pxに縮小 */ text-align: center; box-shadow: 0 4px 6px rgba(0,0,0,0.1); } .header h1 { margin: 0; font-size: 1.8em; /* ★ 少しだけフォントサイズを縮小 */ } .container { width: 90%; max-width: 800px; margin: 20px auto; /* ★ 上下のmarginを30pxから20pxに縮小 */ padding: 0 20px; } .logo { max-height: 50px; /* ★ ロゴの高さを60pxから50pxに縮小 */ margin-bottom: 5px; /* ★ ロゴ下のmarginを10pxから5pxに縮小 */ } .card { background-color: white; border-radius: 12px; box-shadow: 0 4px 8px rgba(0,0,0,0.1); padding: 20px; /* ★ 内側のpaddingを25pxから20pxに縮小 */ margin-bottom: 15px; /* ★ カード下のmarginを20pxから15pxに縮小 */ } .card h2 { color: #1A2753; border-bottom: 2px solid #A70028; padding-bottom: 8px; /* ★ paddingを10pxから8pxに縮小 */ margin-top: 0; margin-bottom: 15px; /* ★ 見出し下のmarginを追加調整 */ } .btn { display: block; background-color: #1A2753; color: white; padding: 12px 20px; border-radius: 8px; text-decoration: none; font-weight: bold; text-align: center; transition: background-color 0.3s, transform 0.2s; margin-bottom: 15px; /* ★ ボタンごとの下の余白を15pxに設定 */ } /* 最後のボタンだけ下の余白をなくす */ .btn:last-child { margin-bottom: 0; } .btn:hover { background-color: #2c3e8a; transform: translateY(-2px); text-decoration: none; color: white; } .logout-link { display: block; text-align: center; margin-top: 15px; /* ★ marginを20pxから15pxに縮小 */ color: #666; font-weight: normal; } .fade-in-element { opacity: 0; transform: translateY(20px); transition: opacity 0.8s ease-out, transform 0.8s ease-out; } .fade-in-element.is-visible { opacity: 1; transform: translateY(0); } /* ★★★ Q&Aセクション用のスタイルを追加 ★★★ */ .qa-section { margin-top: 25px; } .qa-item { margin-bottom: 10px; border: 1px solid #ddd; border-radius: 8px; overflow: hidden; /* 角丸をキレイに見せるため */ } .qa-question { background-color: #f7f7f7; padding: 12px 15px; cursor: pointer; font-weight: bold; display: flex; justify-content: space-between; align-items: center; } /* 矢印のスタイル */ .qa-question::after { content: '▼'; font-size: 0.8em; transition: transform 0.3s; } /* 開いているときの矢印 */ .qa-question.active::after { transform: rotate(180deg); } .qa-answer { padding: 15px; background-color: #fff; display: none; /* 初期状態では答えを隠す */ border-top: 1px solid #ddd; } /*ログインフォーム用のスタイルを追加*/ .login-form { display: flex; flex-direction: column; /* 要素を縦に並べる */ align-items: center; /* 中央揃え */ } .login-form label { font-weight: bold; margin-bottom: 15px; } .login-form input[type="password"] { width: 100%; max-width: 300px; padding: 10px; border: 1px solid #ccc; border-radius: 8px; margin-bottom: 20px; text-align: center; } .login-form .btn { width: 100%; max-width: 300px; } /* エラーメッセージ用のスタイルを追加*/ .error-message { color: #A70028; /* チームカラーの赤 */ font-weight: bold; margin-bottom: 15px; } p { word-wrap: break-word; } hr { border: none; /* 元の線をリセット */ border-top: 2px solid #333; /* 2pxの太さの黒い線 */ margin: 25px 0; /* 上下の余白を調整 */ } /* ★★★ AI質問フォームのtextareaスタイルを追加 ★★★ */ .login-form textarea { width: 100%; max-width: 600px; /* 横幅を広くする */ min-height: 80px; /* 縦幅を広げる */ padding: 12px; border: 1px solid #ccc; border-radius: 8px; margin-bottom: 20px; font-size: 1em; /* フォントサイズを調整 */ resize: vertical; /* 縦方向のリサイズのみ許可 */ font-family: 'Noto Sans JP', sans-serif; /* フォントを統一 */ }