/* ===================================================
   1. カスタムフォントの読み込み (@font-face)
   =================================================== */

/* Figtree */
@font-face {
    font-family: 'Figtree';
    src: url('./fonts/Figtree/static/Figtree-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Figtree';
    src: url('./fonts/Figtree/static/Figtree-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Figtree';
    src: url('./fonts/Figtree/static/Figtree-Italic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

/* League Spartan */
@font-face {
    font-family: 'League Spartan';
    src: url('./fonts/League_Spartan/static/LeagueSpartan-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'League Spartan';
    src: url('./fonts/League_Spartan/static/LeagueSpartan-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* Libertinus Sans */
@font-face {
    font-family: 'Libertinus Sans';
    src: url('./fonts/Libertinus_Sans/LibertinusSans-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Libertinus Sans';
    src: url('./fonts/Libertinus_Sans/LibertinusSans-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Libertinus Sans';
    src: url('./fonts/Libertinus_Sans/LibertinusSans-Italic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}

/* Shippori Mincho */
@font-face {
    font-family: 'Shippori Mincho';
    src: url('./fonts/Shippori_Mincho/ShipporiMincho-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Shippori Mincho';
    src: url('./fonts/Shippori_Mincho/ShipporiMincho-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Shippori Mincho';
    src: url('./fonts/Shippori_Mincho/ShipporiMincho-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Shippori Mincho';
    src: url('./fonts/Shippori_Mincho/ShipporiMincho-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Shippori Mincho';
    src: url('./fonts/Shippori_Mincho/ShipporiMincho-ExtraBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

/* ===================================================
   2. クラス名の定義（※Elementorの優先度に負けないよう !important を付与）
   =================================================== */

.font-figtree,
.font-figtree * {
    font-family: 'Figtree', sans-serif !important;
}

.font-league,
.font-league * {
    font-family: 'League Spartan', sans-serif !important;
}

.font-libertinus,
.font-libertinus * {
    font-family: 'Libertinus Sans', sans-serif !important;
}

.font-shippori,
.font-shippori * {
    font-family: 'Shippori Mincho', serif !important;
}