/* フォントなどの指定 */

/*
Arial	シンプルで読みやすいサンセリフ体	font-family: Arial, sans-serif;
Helvetica	洗練されたデザイン（Mac向け）	font-family: Helvetica, sans-serif;
Verdana	幅広で読みやすいサンセリフ体	font-family: Verdana, sans-serif;
Georgia	高級感のあるセリフ体	font-family: Georgia, serif;
Times New Roman	伝統的なセリフ体（新聞風）	font-family: "Times New Roman", serif;
Courier New	等幅フォント（タイプライター風）	font-family: "Courier New", monospace;
Trebuchet MS	モダンでスタイリッシュなサンセリフ体	font-family: "Trebuchet MS", sans-serif;
Comic Sans MS	手書き風でカジュアルな印象	font-family: "Comic Sans MS", sans-serif;
*/

body {
    margin: 0;
    padding: 0;
    font-family: "Arial", sans-serif;
    font-size: 16px;
    line-height: 1.5;
    word-break: keep-all;
}

/* codeタグの設定 */

code {
    word-break: keep-all;
    word-wrap: normal;
    white-space: pre;
}

/****************************************************************
ヘッダー部
position: fixed と display: flex により、位置固定+スクロール
*/

.header {
    display: flex;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    backdrop-filter: blur(2px);
    background-color: rgba(0, 0, 0, 0.8);
    color: #fff;
    padding: 15px;
    justify-content: space-between;
    align-items: center;
    z-index: 1000;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    opacity: 1;
}

.header .site-title {
    /* サイト名を大きく */
    font-size: 36px;
    font-weight: bold;
}

.header .site-title a {
    color: #fff;
    text-decoration: none;
}

.header nav a {
    margin-right: 15px;
    color: #fff;
    text-decoration: none;
}

.header nav a:last-child {
    margin-right: 32px;
}

.header nav a:hover {
    text-decoration: underline;
}

.header form {
    padding: 0px 40px 0px 0px;
}

/****************************************************************
中心部
*/

.content {
    /* デフォルトの高さ */
    margin-top: 60px;
    margin-bottom: 60px;
    /* パディング */
    padding: 20px;
}

/****************************************************************
フッター部
*/

.footer {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: #f8f9fa;
    color: #333;
    padding: 15px;
    font-size: 14px;
    border-top: 1px solid #ddd;
    z-index: 1000;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.footer div.footer-contents {
    text-align: left;
    align-items: left;
    justify-content: left;
}

/* フッター部のセクション全体を横並びに */
.footer div.footer-contents div.links {
    display: flex;
    gap: 30px; /* セクション間の余白 */
}

/* フッター部の各セクション */
.footer div.footer-contents section.links {
    display: flex;
    flex-direction: column; /* リンクを縦並びに */
}

/* フッター部の各リンク */
.footer div.footer-contents section.links a.link {
    text-decoration: none;
    color: #007bff;
}

/* フッター部のリンクのホバー時。何かやりたいかも？ */
.footer div.footer-contents section.links a.link:hover {
    text-decoration: underline;
}

/* フッター部のアクセス時刻部分 */
.footer div.footer-contents .accessed-time {
    margin-top: 10px;
    font-size: 13px;
}

/* 時刻の表記 */

.accessed-time {
    font-family: inherit;
    font-size: inherit;
    color: inherit;
}

.accessed-time .date {
    font-size: inherit;
}

/* 時差 */
.accessed-time .offset {
    /* 半透明設定 */
    opacity: 0.7;
    /* 見た目を少し変える */
    font-style: italic;
}

/* その他汎用 */

table {
    border-collapse: collapse;
    margin-top: 10px;
}
table, th, td {
    border: 1px solid #ddd;
}
th, td {
    padding: 8px;
    text-align: left;
}
th {
    background-color: #f4f4f4;
}
a {
    color: #007BFF;
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}
