body {
    margin: 0;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    justify-content: space-between;
    background: #fffaf0;
}
header {
    text-align: center;
    padding: 30px 0;
}	

header img {
    max-width: 50%;
    height: auto;
}
main {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.button-row {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0px;
    width: min(66vw, 900px);
    margin-bottom: 20px;
}
.side-img {
    width: 75%;
    height: auto;
    display: block;
    margin: 0 auto;
}
.center-banner {
    text-align: center;
}
.center-banner img {
    width: 450px;
    height: 69px;
    display: block;
    margin: 0 auto;
}
footer {
    text-align: center;
    padding: 6px 0;
    background: #696969;
}
.footer {
    text-align: center;
}
footer text{
	text-align: center;
	font-size:13px;
	padding: 6px 0;
}
footer p {
    font-size: 8px;
    color: #ffffff;
    margin: 0;
}

/* ====== header 上下テキスト ====== */
.header-text-top,
.header-text-bottom {
    text-align: center;
    margin: 10px 0;
}
.header-text-top {
    font-size: 20px;
    font-weight: bold;
    font-family: "Helvetica", "Arial", sans-serif;
}
.header-text-bottom {
    font-size: 16px;
    font-family: "Georgia", "serif";
    color: #555;
}

/* ===== ホバーアニメーション ===== */
.c-bnr.bg {
    position: relative;
    overflow: hidden;
    border-radius: 11px; /* ← オーバーレイにも同じ角丸を適用 */
}
.c-bnr.bg img {
    border-radius: 11px; /* ← 画像にも同じ角丸を適用 */
}
.c-bnr.bg::before,
.c-bnr.bg::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
    opacity: 0;
    border-radius: 13px; /* ← 画像にも同じ角丸を適用 */
}
.c-bnr.bg::before {
    background: rgba(0,0,0,.20);
    width: 75%;
    height: auto;
}
.c-bnr.bg::after {
    /*content: "やってみよう！";*/
    color: #ff3300;
    font-size: 30px;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 10px; /* ← オーバーレイにも同じ角丸を適用 */
}
.c-bnr.bg:hover::before,
.c-bnr.bg:hover::after {
    opacity: 1;
}
/* ===== バナー専用ホバーアニメーション（黒・テキストなし・角丸） ===== */
.c-bnr.dark {
    position: relative;
    overflow: hidden;
    display: inline-block;
    border-radius: 10px; /* ← 角を丸く（値は好みで調整可能） */
}
.c-bnr.dark img {
    display: block;
    border-radius: 10px; /* ← 画像にも同じ角丸を適用 */
}
.c-bnr.dark::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,.20); /* 黒の半透明 */
    opacity: 0;
    transition: opacity .3s cubic-bezier(0.45, 0, 0.55, 1);
    border-radius: 10px; /* ← オーバーレイにも同じ角丸を適用 */
}
.c-bnr.dark:hover::before {
    opacity: 1;
}

/* ===== タブUI（横長デザイン） ===== */
.tabs {
    display: flex;
    justify-content: center;
    gap: 6px;
    margin-bottom: 25px;
    width: 100%;
}

.tab {
    flex: 1;
    max-width: 400px;
    padding: 14px 10px;
    border: none;
    border-radius: 10px 10px 0 0;
    background: #e0e0e0;
    cursor: pointer;
    font-size: 15px;
    font-weight: bold;
}

.tab.active {
    background: #001e43;
    color: #fff;
}

/* ===== タブ表示制御 ===== */
.tab-content {
    display: none;
    width: 100%;
    justify-content: center;
}

.tab-content.active {
    display: flex;
}

/* ===== ボタン3列 ===== */
.button-row {
    display: flex;
    justify-content: center;
    gap: 10px;
    width: min(90vw, 400px);
}

/* タブの中身を「横並び」から「縦並び」に変更して、ボタンが下に落ちるようにする */
.tab-content.active {
    flex-direction: column; /* 縦に積む命令 */
    align-items: center;    /* 中央に寄せる */
}

/* 横長ボタン専用の幅設定 */
.wide-row {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-top: 10px; /* 上の3つのボタンとの隙間 */
}

.wide-btn {
    width: min(90vw, 900px); /* 上のボタン列と同じ最大幅にする */
}

.wide-btn img {
    width: 50%;  /* 画像を横長に広げる */
    height: auto;
    display: block;
}
