.header {
    position: fixed;
    top: -50;
    left: 0;
    right: 0;
    height: 50px;
    background-color: rgba(255, 143, 38, 0.0); /* ヘッダーの背景色 */
    overflow: hidden; /* 内容がはみ出さないように */
    z-index: 1000; /* 必要に応じて適切なz-indexを設定 */
    opacity: 0; /* 初期状態は透明 */
    animation: slideIn 1s forwards; /* アニメーションを適用 */
    animation-delay: 2s; /* アニメーションの開始を2秒遅らせる */
}

@keyframes slideIn {
    from {
        top: -50px; /* 上部の外側からスライドイン開始 */
        opacity: 1; /* 初期状態は透明 */
    }
    to {
        top: 0; /* 上部にスライドイン完了 */
        opacity: 1; /* 初期状態は透明 */
    }
}

.blurry-band {
    position: absolute;
    top: -50;
    left: 0;
    right: 0;
    height: 50px; /* 帯の高さを設定 */
    background: rgba(255, 143, 38, 0.75); /* 帯の背景色（透明度付き） */
    backdrop-filter: blur(10px); /* 背景をぼかす効果 */
    -webkit-backdrop-filter: blur(10px); /* Safari向けの設定 */
    display: flex;
    align-items: center;
    justify-content: flex-start; /* アイコンを左寄せにするために変更 */
    padding: 0px; /* 帯内の余白を設定 */
}

.icon img {
    width: 125px; /* アイコンの幅を設定 */
    height: auto; /* 高さは自動調整 */
    margin-left: 8px; /* アイコンと帯の間隔を設定 */
    margin-top: 7.5px;
}



body {
    font-family: Arial, sans-serif;
    line-height: 1.6;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    overflow-x: hidden; /* 横スクロールを防ぐ */
    height: 100%; /* HTMLとボディ要素の高さを100%に設定 */
}

.video-background {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: -1;
}

.video-background video {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    transform: translate(-50%, -50%);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    z-index: -1;
}
.content-wrapper {
    position: relative;
    z-index: 1;
    padding-top: 50px; /* 必要に応じてこの値を変更して任意の位置に調整 */
}

.main-content {
    width: 90%;
    max-width: 1200px;
    margin: 20px auto;
    padding: 10px;
    border-radius: 10px;
    background-color: rgba(255, 255, 255, 0.0);
    margin-top: 150px;
    margin-bottom: 75px;
    animation: fadeIn2 2s forwards;
    animation-delay: 0s;
    opacity: 0;
}

@keyframes fadeIn2 {

    to {
        opacity: 1; /* フェードイン */
    }
}


.sub-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 90%;
    max-width: 1200px;
    margin: 20px auto;
    opacity: 0; /* 初期状態で透明 */
    animation: fadeIn 1s forwards; /* アニメーションを適用 */
    animation-delay: 2s; /* アニメーションの開始を2秒遅らせる */
}

.sub-content {
    flex: 1;
    min-width: 40%;
    margin: 10px;
    padding: 20px;
    border-radius: 10px;
    background-color: rgba(255, 255, 255, 0.5); /* 半透明の背景色を設定 */
    backdrop-filter: blur(10px); /* 背景のぼかし効果 */
    -webkit-backdrop-filter: blur(10px); /* Safari用の背景のぼかし効果 */
}

.empty-content {
    min-width: 40%;
    margin: 0px;
    padding: 20px;
    background-color: rgba(255, 255, 255, 0.0); /* 半透明の背景色を設定 */
}

.bottom-banner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;

    width: 100%;
    background-color: rgba(35, 24, 66, 0.8); /* 半透明の背景色を設定 */
    padding: 0px;
    position: static;
    bottom: 0;
    left: 0;
    box-sizing: border-box;
    margin-top: auto; /* バナーをページの最下部に配置 */

    opacity: 0; /* 初期状態で透明 */
    animation: fadeIn 1s forwards; /* 帯のフェードインアニメーションを適用 */
    animation-delay: 2s; /* アニメーションの開始を2秒遅らせる */
    backdrop-filter: blur(5px); /* 背景のぼかし効果 */
    -webkit-backdrop-filter: blur(10px); /* Safari用の背景のぼかし効果 */
}

.banner-right-content {
    flex: 1;
    min-width: 50.4%;
    margin: 10px;
    padding: 0px;
    border-radius: 10px;
    background-color: rgba(255, 255, 255, 0.0); /* 半透明の背景色を設定 */
    margin-top: 10px;  /* 上側の外側余白を5pxに設定 */
    margin-bottom: 0px; /* 下側の外側余白を5pxに設定 */
}

.banner-left-content {
    flex: 1;
    min-width: 47%;
    margin: 0px;
    padding: 0px;
    border-radius: 10px;
    background-color: rgba(255, 255, 255, 0.0); /* 半透明の背景色を設定 */
    margin-top: -8px;  /* 上側の外側余白を5pxに設定 */
    margin-bottom: 0px; /* 下側の外側余白を5pxに設定 */
}




/* フェードインアニメーション */
@keyframes fadeIn {
    to {
        opacity: 1;
    }
}







/* 文字詳細 */
h1, p1 {
    word-wrap: break-word;
    hyphens: auto;
    color: transparent;
}

h2, h3, p2, p3 {
    word-wrap: break-word;
    hyphens: auto;
    opacity: 0;
    color: transparent;
    animation: fadeIn 1s forwards; /* アニメーションを適用 */
    animation-delay: 2s; /* アニメーションの開始を2秒遅らせる */
}

.text-main-title-content {
    font-family: serif;
    font-size: 45px;
    color: white;
}

.text-main-content {
    font-family: serif;
    font-size: 22px;
    color: white;
}

.text-sub-title-content {
    font-size: 24px;
    color: rgb(65, 65, 70);
    margin-top: -0px; 
    margin-bottom: -0px; 
}

.text-sub-content {
    font-size: 18px;
    color: rgb(65, 65, 70);
}

.text-banner-title-content {
    font-size: 18px;
    color: white;
    text-align: center;
    align-items: center;
    padding-top: -200px;
}

.text-banner-content {
    font-size: 14px;
    color: white;
    align-items: left;
}

.text-with-shadow {
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.9);
}