/* 
	Build Kobayashi CSS Stylesheet.
	2025/04/01　Tsukuma 改変
	(Old Style Sheetの内容とindex.html直接記載のCSSも統合・整理)
*/

/* === 基本設定 === */
body {
    /* background-color: #ffffe0; /* 旧スタイルで上書きされるためコメントアウト */
    /* line-height: 1.6; /* 旧スタイルで指定がないためコメントアウト */
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 100;
    font-style: normal;
    margin: 0;
    padding: 0;
    background-color: #ffffe0; /* 必要であればこちらを有効化 */
}

h1, h2, h3 {
    margin-top: 0;
    margin-bottom: 5px; /* h2は後述の指定で上書きされる可能性あり */
    line-height: 1.6;
}

h2 {
    margin-left: 1em; /* h2 固有のスタイル */
}

/* === ヘッダー・フッター === */
header, footer {
    background-color: #f0f0f0;
}

header {
    padding: 0px;
    max-width: 100%;
    border-bottom: none;
}

footer {
    text-align: center;
}

#headBox {
    display: flex;
    flex-wrap: wrap;
}

#footBox {
    padding: 0px;
    width: 100%;
}

#frame-bg-header {
    margin-bottom: 0;
}

#frame-bg-footer {
    margin-top: 0;
}


/* === レイアウト・ボックス === */
.main_wrap {
    padding: 20px;
}

.box-1 {
    margin-top: 0;
    padding-top: 0;
    text-align: left; /* Old Style Sheet の指定を追加 */
}

.box-1 h1, .box-1 h2, .box-1 h3 {
    margin-top: 0;
    margin-bottom: 0;
}

.linebox {
    border-left: none; /* Build Kobayashi CSS */
    display: inherit; /* Old Style Sheet */
    align-content: space-between; /* Old Style Sheet */
    padding-left: 10px; /* Old Style Sheet */
    border-bottom: 3px solid #70721D; /* Old Style Sheet */
    width: auto; /* Old Style Sheet */
}

.linebox img {
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
}

.linebox H1 { /* 注意: セレクタが大文字 H1 */
    font-family: "M PLUS Rounded 1c", sans-serif;
    letter-spacing: 5px;
    display: inline-block;
    vertical-align: middle;
}

/* === テキスト関連 === */
.text {
     text-align: left; /* Old Style Sheet で center に上書きされる */
    /* text-indent: 0; /* Old Style Sheet で指定がない */
    margin-top: 20px; /* Old Style Sheet */
    font-family: "M PLUS Rounded 1c", sans-serif; /* Old Style Sheet */
    font-weight: 300; /* Old Style Sheet */
    font-style: normal; /* Old Style Sheet */
}

.text H2 { /* 注意: セレクタが大文字 H2 */
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 700;
    font-style: normal;
}

.center-text {
    text-align: center;
}

.center-text h3 {
    margin-top: 0;
    margin-bottom: 0;
}

.text-small-spacing h1,
.text-small-spacing h2 {
    margin-top: 0;
    margin-bottom: 1px;
}

.text-indent-none {
    text-indent: 0;
    margin-left: 1em;
}

.left-align {
    margin-left: 1em;
}

.custom-text {
    font-size: 1.0em;
	font-weight: 600;
}

.campaign-title-small {
    font-size: 1.6em;
}

/* === ハイライト・色 === */
.highlight-red { color: red; }
.highlight-blue { color: blue; }
.highlight-green { color: #006400; }
.orange { color: #ffa500; } /* ゴールドのスタイル */


/* === ボタン・画像 === */
.btnBox {
    height: 40px;
    color: #FF6347; /* Old Style Sheet の指定を追加 */
}

.titleBox img {
    height: 40px;
}

.welcome_banner {
    border-bottom: none;
    width: 100%;
    height: auto;
}

.banner {
    text-align: center;
}

/* === 特殊ボックス (Gacha, Update) === */
/* 注意: 元のCSSで border: px solid ... は無効です。1pxなどに修正する必要があるかもしれません */
.gacha_box, .update_box {
    text-align: center;
    border: 1px solid #70721D; /* 例: 1px に修正 */
}

.gacha_box td, .update_box td {
    text-align: center;
    border: 2px solid #70721D;
}

.gacha_lineup_box img {
    width: 20%;
}


/* === レスポンシブ対応 === */
@media (max-width: 800px) { /* さらに小さい画面用 */
    .titleBox img {
        width: auto; /* 自動調整 */
    }

    .btntopBox { /* このクラスは通常時の定義がない */
        float: left;
        margin-top: 300px;
    }

    .linebox {
        margin-left: 0; /* 左マージンをなくす */
        /* width: auto; は通常時と同じなので省略可能 */
    }

    .linebox img {
        width: auto; /* 通常時の指定がないため追加 */
    }

    .banner img {
        width: 100%; /* バナーを画面幅に合わせる */
    }

    /* .gacha_lineup_box img は通常時と同じ width: 20% なので、メディアクエリ内での再定義は不要 */
    /*
    .gacha_lineup_box img {
        width: 20%;
    }
    */
}