@charset "utf-8";

/* font download */
@import url('https://fonts.googleapis.com/css2?family=Kiwi+Maru:wght@400;500&family=M+PLUS+1p:wght@400;700&family=M+PLUS+Rounded+1c:wght@400;700&family=Noto+Sans+JP:wght@400;700&family=Noto+Serif+JP:wght@400;700&family=Sawarabi+Gothic&family=Shippori+Mincho:wght@400;700&family=Yusei+Magic&family=Zen+Kaku+Gothic+New:wght@400;700&family=Zen+Old+Mincho:wght@400;700&display=swap');

/* Root */
:root{
    --font-main: 'Noto Sans JP', sans-serif;
    --bg-color: #f5f6f8;
    --section-bg-color: #ffffff;
    --kago-bg-color: #ffffff;
    --bg-color-card: #f8fafc;
    --primary-color: #0066cc;
    --primary-hover: #0052a3;
    --accent-color: #e60012;
    --accent-hover: #cc0010;
    --border-color: #e0e0e0;
    --border-sub-color: #e2e8f0;
    --text-main: #333333;
    --text-sub: #595959;
    --btn-text-color: #ffffff;
    --pay-bg-color: #f0f4f8;
    --pay-border-color: #d0dbe5;
    --pay-text-color: #334e68;
    --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.06);
    --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.1);
    --shadow-footer-cartbtn: 0 4px 6px rgba(230, 0, 18, 0.3);
}

/*Standard Commerce*/
body.theme-1{
    --bg-color: #f5f6f8;
    --section-bg-color: #ffffff;
    --kago-bg-color: #ffffff;
    --bg-color-card: #f8fafc;
    --primary-color: #0066cc;
    --primary-hover: #0052a3;
    --accent-color: #e60012;
    --accent-hover: #cc0010;
    --border-color: #e0e0e0;
    --border-sub-color: #e2e8f0;
    --text-main: #333333;
    --text-sub: #595959;
    --btn-text-color: #ffffff;
    --pay-bg-color: #f0f4f8;
    --pay-border-color: #d0dbe5;
    --pay-text-color: #334e68;
    --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.06);
    --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.1);
    --shadow-footer-cartbtn: 0 4px 6px rgba(230, 0, 18, 0.3);
}

/*Tech & Business Conference*/
body.theme-2{
    --bg-color: #f8fafc;
    --section-bg-color: #ffffff;
    --kago-bg-color: #ffffff;
    --bg-color-card: #f1f5f9;
    --primary-color: #1B2F5D;
    --primary-hover: #1e293b;
    --accent-color: #10b981;
    --accent-hover: #059669;
    --border-color: #e2e8f0;
    --border-sub-color: #cbd5e1;
    --text-main: #1e293b;
    --text-sub: #64748b;
    --btn-text-color: #ffffff;
    --pay-bg-color: #ecfdf5;
    --pay-border-color: #a7f3d0;
    --pay-text-color: #065f46;
    --shadow-sm: 0 2px 8px rgba(15, 23, 42, 0.05);
    --shadow-md: 0 4px 12px rgba(15, 23, 42, 0.08);
    --shadow-footer-cartbtn: 0 4px 14px rgba(16, 185, 129, 0.35);
}


/*Rock Fest & Club Night*/
body.theme-3{
    --bg-color: #121212;
    --section-bg-color: #1e1e1e;
    --kago-bg-color: #818181;
    --bg-color-card: #2a2a2a;
    --primary-color: #ffffff;
    --primary-hover: #333333;
    --accent-color: #ff5500;
    --accent-hover: #e04b00;
    --border-color: #333333;
    --border-sub-color: #444444;
    --text-main: #ffffff;
    --text-sub: #EAE9E9;
    --btn-text-color: #ffffff;
    --pay-bg-color: #2d1a10;
    --pay-border-color: #5c2b0c;
    --pay-text-color: #ffb380;
    --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.4);
    --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.6);
    --shadow-footer-cartbtn: 0 4px 16px rgba(255, 85, 0, 0.5);
}

/*Classical & Performing Arts*/
body.theme-4{
    --bg-color: #fcfbf9;
    --section-bg-color: #ffffff;
    --kago-bg-color: #ffffff;
    --bg-color-card: #f7f4ef;
    --primary-color: #4a1525;
    --primary-hover: #360f1a;
    --accent-color: #c5a059;
    --accent-hover: #b08c46;
    --border-color: #e8e2d5;
    --border-sub-color: #f0ebe1;
    --text-main: #2b2625;
    --text-sub: #786f68;
    --btn-text-color: #ffffff;
    --pay-bg-color: #f4efe6;
    --pay-border-color: #dcd0bc;
    --pay-text-color: #5c4728;
    --shadow-sm: 0 2px 8px rgba(74, 21, 37, 0.05);
    --shadow-md: 0 4px 12px rgba(74, 21, 37, 0.08);
    --shadow-footer-cartbtn: 0 4px 12px rgba(197, 160, 89, 0.35);
}

/*Pop & Idol Live*/
body.theme-5{
    --bg-color: #faf5ff;
    --section-bg-color: #ffffff;
    --kago-bg-color: #ffffff;
    --bg-color-card: #f3e8ff;
    --primary-color: #6b21a8;
    --primary-hover: #581c87;
    --accent-color: #ec4899;
    --accent-hover: #db2777;
    --border-color: #e9d5ff;
    --border-sub-color: #f3e8ff;
    --text-main: #3b0764;
    --text-sub: #7e22ce;
    --btn-text-color: #ffffff;
    --pay-bg-color: #fce7f3;
    --pay-border-color: #fbcfe8;
    --pay-text-color: #831843;
    --shadow-sm: 0 2px 8px rgba(107, 33, 168, 0.06);
    --shadow-md: 0 4px 12px rgba(107, 33, 168, 0.1);
    --shadow-footer-cartbtn: 0 4px 14px rgba(236, 72, 153, 0.4);
}

/*Sports & Outdoor*/
body.theme-6{
    --bg-color: #f1f5f9;
    --section-bg-color: #ffffff;
    --kago-bg-color: #ffffff;
    --bg-color-card: #e2e8f0;
    --primary-color: #1e3a8a;
    --primary-hover: #1e40af;
    --accent-color: #eab308;
    --accent-hover: #ca8a04;
    --border-color: #cbd5e1;
    --border-sub-color: #e2e8f0;
    --text-main: #0f172a;
    --text-sub: #475569;
    --btn-text-color: #0f172a;
    --pay-bg-color: #fef9c3;
    --pay-border-color: #fde047;
    --pay-text-color: #713f12;
    --shadow-sm: 0 2px 8px rgba(30, 58, 138, 0.06);
    --shadow-md: 0 4px 12px rgba(30, 58, 138, 0.1);
    --shadow-footer-cartbtn: 0 4px 12px rgba(234, 179, 8, 0.4);
}


/*Family & Community*/
body.theme-7{
    --bg-color: #f7f9f6;
    --section-bg-color: #ffffff;
    --kago-bg-color: #ffffff;
    --bg-color-card: #e8f5e9;
    --primary-color: #2d6a4f;
    --primary-hover: #1b4332;
    --accent-color: #f97316;
    --accent-hover: #ea580c;
    --border-color: #d8f3dc;
    --border-sub-color: #e8f5e9;
    --text-main: #2d312e;
    --text-sub: #4b6b52;
    --btn-text-color: #ffffff;
    --pay-bg-color: #ffedd5;
    --pay-border-color: #fed7aa;
    --pay-text-color: #7c2d12;
    --shadow-sm: 0 2px 8px rgba(45, 106, 79, 0.05);
    --shadow-md: 0 4px 12px rgba(45, 106, 79, 0.08);
    --shadow-footer-cartbtn: 0 4px 12px rgba(249, 115, 22, 0.35);
}


/*Traditional & Local Festival*/
body.theme-8{
    --bg-color: #f8f6f0;
    --section-bg-color: #ffffff;
    --kago-bg-color: #ffffff;
    --bg-color-card: #f0ece1;
    --primary-color: #162447;
    --primary-hover: #1f4068;
    --accent-color: #d63447;
    --accent-hover: #b82032;
    --border-color: #e2dac8;
    --border-sub-color: #f0ece1;
    --text-main: #222222;
    --text-sub: #665e52;
    --btn-text-color: #ffffff;
    --pay-bg-color: #fbeced;
    --pay-border-color: #f7cad0;
    --pay-text-color: #7a1c27;
    --shadow-sm: 0 2px 8px rgba(22, 36, 71, 0.05);
    --shadow-md: 0 4px 12px rgba(22, 36, 71, 0.08);
    --shadow-footer-cartbtn: 0 4px 12px rgba(214, 52, 71, 0.35);
}

/*Food & Wine Festival*/
body.theme-9{
    --bg-color: #fdfbf7;
    --section-bg-color: #ffffff;
    --kago-bg-color: #ffffff;
    --bg-color-card: #f5efe6;
    --primary-color: #722f37;
    --primary-hover: #542229;
    --accent-color: #ff6b6b;
    --accent-hover: #ee5253;
    --border-color: #e6dcce;
    --border-sub-color: #f5efe6;
    --text-main: #332822;
    --text-sub: #736458;
    --btn-text-color: #ffffff;
    --pay-bg-color: #ffebeb;
    --pay-border-color: #ffcdd2;
    --pay-text-color: #992222;
    --shadow-sm: 0 2px 8px rgba(114, 47, 55, 0.05);
    --shadow-md: 0 4px 12px rgba(114, 47, 55, 0.08);
    --shadow-footer-cartbtn: 0 4px 12px rgba(255, 107, 107, 0.4);
}

/*Modern Clean & Trendy*/
body.theme-10{
    --bg-color: #f4f4f5;
    --section-bg-color: #ffffff;
    --kago-bg-color: #ffffff;
    --pay-bg-color: #ecfeff;
    --primary-color: #18181b;
    --primary-hover: #27272a;
    --accent-color: #06b6d4;
    --accent-hover: #0891b2;
    --border-color: #d4d4d8;
    --border-sub-color: #e4e4e7;
    --text-main: #18181b;
    --text-sub: #71717a;
    --btn-text-color: #ffffff;
    --bg-color-card: #e4e4e7;
    --pay-border-color: #a5f3fc;
    --pay-text-color: #155e75;
    --shadow-sm: 0 2px 8px rgba(24, 24, 27, 0.05);
    --shadow-md: 0 4px 12px rgba(24, 24, 27, 0.08);
    --shadow-footer-cartbtn: 0 4px 14px rgba(6, 182, 212, 0.4);
}

/* FontSet */
/* 1: Noto Sans JP */
body.fontset-1 {
    --font-main: 'Noto Sans JP', sans-serif;
    font-family: var(--font-main);
}

/* 2: Noto Serif JP */
body.fontset-2 {
    --font-main: 'Noto Serif JP', serif;
    font-family: var(--font-main);
}

/* 3: M PLUS 1p */
body.fontset-3 {
    --font-main: 'M PLUS 1p', sans-serif;
    font-family: var(--font-main);
}

/* 4: Sawarabi Gothic */
body.fontset-4 {
    --font-main: 'Sawarabi Gothic', sans-serif;
    font-family: var(--font-main);
}

/* 5: Zen Kaku Gothic New */
body.fontset-5 {
    --font-main: 'Zen Kaku Gothic New', sans-serif;
    font-family: var(--font-main);
}

/* 6: M PLUS Rounded 1c */
body.fontset-6 {
    --font-main: 'M PLUS Rounded 1c', sans-serif;
    font-family: var(--font-main);
}

/* 7: キウイ丸 */
body.fontset-7 {
    --font-main: 'Kiwi Maru', serif;
    font-family: var(--font-main);
}

/* 8: しっぽり明朝 */
body.fontset-8 {
    --font-main: 'Shippori Mincho', serif;
    font-family: var(--font-main);
}

/* 9: 油性マジック */
body.fontset-9 {
    --font-main: 'Yusei Magic', sans-serif;
    font-family: var(--font-main);
}

/* 10: Zen Old Mincho */
body.fontset-10 {
    --font-main: 'Zen Old Mincho', serif;
    font-family: var(--font-main);
}

/* ライブラリのスタイル継承を防ぐ */
i.fa, i.fas, i.far, i.fab, i.fa-solid, i[class*="fa-"] {
    font-style: normal !important;
}