body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    overflow-x: hidden; /* 横スクロールを無効化 */
}

.header {
    display: flex;
    align-items: center;
    justify-content: flex-start; /* ロゴとタイトルを左寄せ */
    padding: 20px;
}

.header .title {
    text-align: center; /* タイトルテキストを中央揃えにする */
    flex-grow: 1; /* タイトル部分を広げる */
    margin-left: 20px; /* タイトルを右に寄せる */
}

.header .logo {
    flex-shrink: 0; /* ロゴのサイズを固定 */
}

.header .logo img {
    width: 150px; /* ロゴのサイズをさらに大きくする */
    height: 150px; /* ロゴのサイズをさらに大きくする */
    border-radius: 50%;
}

.nav {
    display: flex;
    justify-content: space-between; /* ナビゲーションを均等に配置 */
    padding: 10px 20px; /* ナビゲーション全体のパディングを調整 */
    border-bottom: 4px solid #000; /* ナビゲーション下の線を太くする */
    flex-wrap: nowrap; /* ナビゲーションが横並びになるように */
    overflow-x: hidden; /* 横スクロールを無効化 */
}

.nav a {
    text-decoration: none;
    padding: 10px 10px; /* ナビゲーションリンクのパディングを調整 */
    border: 2px solid #000; /* ナビゲーションリンクのボーダーを太くする */
    font-size: 1em; /* ナビゲーションリンクのフォントサイズを調整 */
    white-space: nowrap; /* テキストが折り返さないように */
    text-align: center; /* リンクテキストを中央揃えにする */
    flex: 1; /* リンクを均等に配置 */
    margin: 0 5px; /* リンクの間にマージンを追加 */
}

.content {
    padding: 20px;
}

.main-text {
    text-align: center;
    margin-top: 50px;
}

.main-text p {
    margin: 10px 0;
}

.footer {
    padding: 20px;
}

.footer-line {
    border: none;
    border-top: 4px solid #000; /* 線のスタイルを太くする */
    margin: 20px 0; /* 線の前後にスペースを追加 */
    width: 100vw; /* 線の幅をビューポート全体に */
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}

.footer .logo-container {
    display: flex;
    align-items: center;
}

.footer .logo {
    margin-left: 20px; /* ロゴと線の間にスペースを追加 */
}

.footer .logo img {
    width: 120px; /* ロゴのサイズをさらに大きくする */
    height: 120px; /* ロゴのサイズをさらに大きくする */
}

.contact a {
    text-decoration: none;
    padding: 5px 10px;
    border: 1px solid #000;
}

/* 画像のサイズを変更するためのクラス */
.content-img {
    width: 100%; /* 必要に応じてサイズを変更 */
    max-width: 600px; /* 必要に応じてサイズを変更 */
    height: auto;
}

/* テキストを大きく太くするためのクラス */
.bold-text {
    font-size: 1.2em; /* 必要に応じてサイズを変更 */
    font-weight: bold;
}

/* メディアクエリ: スマートフォン向け */
@media (max-width: 600px) {
    .header .title {
        margin-left: 0;
        text-align: center;
    }

    .header .logo img {
        width: 100px;
        height: 100px;
    }

    .nav a {
        font-size: 0.8em;
        padding: 5px 5px;
        margin: 0 2px; /* スマートフォンでのリンクの間隔を調整 */
    }
}

/* メディアクエリ: タブレット向け */
@media (min-width: 601px) and (max-width: 1024px) {
    .header .title {
        text-align: center;
        margin-left: 0;
    }

    .nav a {
        font-size: 0.9em;
        padding: 8px 8px;
        margin: 0 3px; /* タブレットでのリンクの間隔を調整 */
    }
}

/* メディアクエリ: デスクトップ向け */
@media (min-width: 1025px) {
    .header .title {
        text-align: center;
        margin-left: 20px;
    }

    .nav a {
        font-size: 1em;
        padding: 10px 10px;
        margin: 0 5px; /* デスクトップでのリンクの間隔を調整 */
    }
}
