/* =========================================================
基本設定
========================================================= */

*,
*::before,
*::after{
    box-sizing:border-box;
}

:root{
    --header-bg:#0b2545;
    --header-text:#f8fbff;
    --header-border:rgba(255,255,255,0.12);
    --header-hover:rgba(255,255,255,0.06);
    --header-line:rgba(255,255,255,0.72);

    --site-bg:#f3f5f7;
    --text:#1f2937;
    --text-soft:#6b7280;
    --link:#0f4c81;

    --card-bg:#ffffff;
    --card-border:#e5e7eb;
    --card-shadow:0 2px 6px rgba(0,0,0,0.08);
    --card-radius:10px;

    --sidebar-bg:#eef3f8;

    --container-max:1240px;
    --main-max:760px;

    --cookie-bar-height:90px;
}

html,
body{
    width:100%;
    max-width:100%;
    margin:0;
    padding:0;
    overflow-x:hidden;
}

body{
    font-family:
        -apple-system,
        BlinkMacSystemFont,
        "Hiragino Sans",
        "Yu Gothic",
        "YuGothic",
        "Meiryo",
        sans-serif;
    background:var(--site-bg);
    color:var(--text);
    font-size:16px;
    line-height:1.9;
}

img,
iframe,
video,
svg,
canvas{
    display:block;
    max-width:100%;
    height:auto;
}

table{
    display:block;
    width:100%;
    max-width:100%;
    overflow-x:auto;
    border-collapse:collapse;
    -webkit-overflow-scrolling:touch;
}

pre,
code{
    max-width:100%;
    overflow-x:auto;
    white-space:pre-wrap;
    word-break:break-word;
}

a,
p,
h1,
h2,
h3,
h4,
h5,
h6,
li,
span,
div,
td,
th{
    overflow-wrap:break-word;
    word-break:break-word;
}

a{
    color:var(--link);
    text-decoration:underline;
    text-decoration-thickness:1.5px;
    text-underline-offset:2px;
}

a:hover{
    opacity:.85;
}

/* =========================================================
共通カード
========================================================= */

.top-news,
.sub-news,
.sidebar-section,
.rss-news-block,
.rss-news-main,
.rss-news-sub-card{
    background:var(--card-bg);
    border:1px solid var(--card-border);
    border-radius:var(--card-radius);
    box-shadow:var(--card-shadow);
}

/* =========================================================
その他共通
========================================================= */

img[alt="友だち追加"]{
    height:36px !important;
    width:auto !important;
    max-width:none !important;
}

iframe,
.twitter-tweet,
.instagram-media,
.fb-post,
.fb-page,
.adsbygoogle{
    max-width:100% !important;
}