@charset "utf-8";

/* ============================================================
   kb-common.css — リセット・ユーティリティ（共通）
   旧: default.css + 各ファイルの共通部分
   ============================================================ */

/* ─────────────────────────────
   リセット
───────────────────────────── */
*, *::before, *::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    -webkit-text-size-adjust: 100%;
}

h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
    font-weight: normal;
}

address {
    font-style: normal;
}

img {
    border: none;
    vertical-align: top;
}

ul, ol {
    list-style-type: none;
}

dl dt img,
dl dd img,
ul li img,
ol li img {
    vertical-align: top;
}

article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary {
    display: block;
}

a {
    text-decoration: none;
}

/* ─────────────────────────────
   マージンユーティリティ
───────────────────────────── */
.mb0px  { margin-bottom: 0px   !important; }
.mb5px  { margin-bottom: 5px   !important; }
.mb10px { margin-bottom: 10px  !important; }
.mb15px { margin-bottom: 15px  !important; }
.mb20px { margin-bottom: 20px  !important; }
.mb25px { margin-bottom: 25px  !important; }
.mb30px { margin-bottom: 30px  !important; }
.mb35px { margin-bottom: 35px  !important; }
.mb40px { margin-bottom: 40px  !important; }
.mb45px { margin-bottom: 45px  !important; }
.mb50px { margin-bottom: 50px  !important; }

/* ─────────────────────────────
   テキスト寄せ
───────────────────────────── */
.txt-left   { text-align: left   !important; }
.txt-center { text-align: center !important; }
.txt-right  { text-align: right  !important; }

/* ─────────────────────────────
   フォントサイズ
───────────────────────────── */
.txt-10px { font-size: 10px !important; }
.txt-12px { font-size: 12px !important; }
.txt-14px { font-size: 14px !important; }
.txt-16px { font-size: 16px !important; }
.txt-18px { font-size: 18px !important; }
.txt-20px { font-size: 20px !important; }

/* ─────────────────────────────
   Clearfix
───────────────────────────── */
.clearfix:after {
    content: ".";
    display: block;
    height: 0px;
    clear: both;
    visibility: hidden;
}
.clear { clear: both; }

/* ─────────────────────────────
   PC / SP 出し分け（デフォルト PC）
───────────────────────────── */
.pc { display: block !important; }
.sp { display: none  !important; }
