/* TW-Kai / 全字庫正楷體 Webfonts
 * Upstream: https://data.gov.tw/dataset/5961 2026-05-05
 * Generated CSS; do not edit manually.
 * Chunk size: 256 codepoints.
 */

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-000000.woff2') format('woff2');
  unicode-range: U+0000-00FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-000100.woff2') format('woff2');
  unicode-range: U+0100-01FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-000200.woff2') format('woff2');
  unicode-range: U+0200-02FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-000300.woff2') format('woff2');
  unicode-range: U+0300-03FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-000400.woff2') format('woff2');
  unicode-range: U+0400-04FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-000500.woff2') format('woff2');
  unicode-range: U+0500-05FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-000600.woff2') format('woff2');
  unicode-range: U+0600-06FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-000700.woff2') format('woff2');
  unicode-range: U+0700-07FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-000900.woff2') format('woff2');
  unicode-range: U+0900-09FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-000a00.woff2') format('woff2');
  unicode-range: U+0A00-0AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-000b00.woff2') format('woff2');
  unicode-range: U+0B00-0BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-000c00.woff2') format('woff2');
  unicode-range: U+0C00-0CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-000d00.woff2') format('woff2');
  unicode-range: U+0D00-0DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-000e00.woff2') format('woff2');
  unicode-range: U+0E00-0EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-000f00.woff2') format('woff2');
  unicode-range: U+0F00-0FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-001000.woff2') format('woff2');
  unicode-range: U+1000-10FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-001100.woff2') format('woff2');
  unicode-range: U+1100-11FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-001200.woff2') format('woff2');
  unicode-range: U+1200-12FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-001300.woff2') format('woff2');
  unicode-range: U+1300-13FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-001400.woff2') format('woff2');
  unicode-range: U+1400-14FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-001500.woff2') format('woff2');
  unicode-range: U+1500-15FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-001600.woff2') format('woff2');
  unicode-range: U+1600-16FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-001700.woff2') format('woff2');
  unicode-range: U+1700-17FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-001800.woff2') format('woff2');
  unicode-range: U+1800-18FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-001900.woff2') format('woff2');
  unicode-range: U+1900-19FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-001d00.woff2') format('woff2');
  unicode-range: U+1D00-1DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-001e00.woff2') format('woff2');
  unicode-range: U+1E00-1EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-001f00.woff2') format('woff2');
  unicode-range: U+1F00-1FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-002000.woff2') format('woff2');
  unicode-range: U+2000-20FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-002100.woff2') format('woff2');
  unicode-range: U+2100-21FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-002200.woff2') format('woff2');
  unicode-range: U+2200-22FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-002300.woff2') format('woff2');
  unicode-range: U+2300-23FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-002400.woff2') format('woff2');
  unicode-range: U+2400-24FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-002500.woff2') format('woff2');
  unicode-range: U+2500-25FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-002600.woff2') format('woff2');
  unicode-range: U+2600-26FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-002700.woff2') format('woff2');
  unicode-range: U+2700-27FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-002800.woff2') format('woff2');
  unicode-range: U+2800-28FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-002900.woff2') format('woff2');
  unicode-range: U+2900-29FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-002a00.woff2') format('woff2');
  unicode-range: U+2A00-2AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-002b00.woff2') format('woff2');
  unicode-range: U+2B00-2BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-002e00.woff2') format('woff2');
  unicode-range: U+2E00-2EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-002f00.woff2') format('woff2');
  unicode-range: U+2F00-2FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-003000.woff2') format('woff2');
  unicode-range: U+3000-30FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-003100.woff2') format('woff2');
  unicode-range: U+3100-31FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-003200.woff2') format('woff2');
  unicode-range: U+3200-32FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-003300.woff2') format('woff2');
  unicode-range: U+3300-33FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-003400.woff2') format('woff2');
  unicode-range: U+3400-34FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-003500.woff2') format('woff2');
  unicode-range: U+3500-35FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-003600.woff2') format('woff2');
  unicode-range: U+3600-36FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-003700.woff2') format('woff2');
  unicode-range: U+3700-37FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-003800.woff2') format('woff2');
  unicode-range: U+3800-38FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-003900.woff2') format('woff2');
  unicode-range: U+3900-39FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-003a00.woff2') format('woff2');
  unicode-range: U+3A00-3AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-003b00.woff2') format('woff2');
  unicode-range: U+3B00-3BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-003c00.woff2') format('woff2');
  unicode-range: U+3C00-3CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-003d00.woff2') format('woff2');
  unicode-range: U+3D00-3DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-003e00.woff2') format('woff2');
  unicode-range: U+3E00-3EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-003f00.woff2') format('woff2');
  unicode-range: U+3F00-3FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-004000.woff2') format('woff2');
  unicode-range: U+4000-40FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-004100.woff2') format('woff2');
  unicode-range: U+4100-41FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-004200.woff2') format('woff2');
  unicode-range: U+4200-42FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-004300.woff2') format('woff2');
  unicode-range: U+4300-43FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-004400.woff2') format('woff2');
  unicode-range: U+4400-44FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-004500.woff2') format('woff2');
  unicode-range: U+4500-45FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-004600.woff2') format('woff2');
  unicode-range: U+4600-46FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-004700.woff2') format('woff2');
  unicode-range: U+4700-47FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-004800.woff2') format('woff2');
  unicode-range: U+4800-48FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-004900.woff2') format('woff2');
  unicode-range: U+4900-49FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-004a00.woff2') format('woff2');
  unicode-range: U+4A00-4AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-004b00.woff2') format('woff2');
  unicode-range: U+4B00-4BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-004c00.woff2') format('woff2');
  unicode-range: U+4C00-4CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-004d00.woff2') format('woff2');
  unicode-range: U+4D00-4DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-004e00.woff2') format('woff2');
  unicode-range: U+4E00-4EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-004f00.woff2') format('woff2');
  unicode-range: U+4F00-4FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-005000.woff2') format('woff2');
  unicode-range: U+5000-50FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-005100.woff2') format('woff2');
  unicode-range: U+5100-51FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-005200.woff2') format('woff2');
  unicode-range: U+5200-52FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-005300.woff2') format('woff2');
  unicode-range: U+5300-53FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-005400.woff2') format('woff2');
  unicode-range: U+5400-54FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-005500.woff2') format('woff2');
  unicode-range: U+5500-55FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-005600.woff2') format('woff2');
  unicode-range: U+5600-56FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-005700.woff2') format('woff2');
  unicode-range: U+5700-57FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-005800.woff2') format('woff2');
  unicode-range: U+5800-58FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-005900.woff2') format('woff2');
  unicode-range: U+5900-59FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-005a00.woff2') format('woff2');
  unicode-range: U+5A00-5AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-005b00.woff2') format('woff2');
  unicode-range: U+5B00-5BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-005c00.woff2') format('woff2');
  unicode-range: U+5C00-5CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-005d00.woff2') format('woff2');
  unicode-range: U+5D00-5DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-005e00.woff2') format('woff2');
  unicode-range: U+5E00-5EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-005f00.woff2') format('woff2');
  unicode-range: U+5F00-5FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-006000.woff2') format('woff2');
  unicode-range: U+6000-60FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-006100.woff2') format('woff2');
  unicode-range: U+6100-61FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-006200.woff2') format('woff2');
  unicode-range: U+6200-62FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-006300.woff2') format('woff2');
  unicode-range: U+6300-63FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-006400.woff2') format('woff2');
  unicode-range: U+6400-64FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-006500.woff2') format('woff2');
  unicode-range: U+6500-65FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-006600.woff2') format('woff2');
  unicode-range: U+6600-66FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-006700.woff2') format('woff2');
  unicode-range: U+6700-67FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-006800.woff2') format('woff2');
  unicode-range: U+6800-68FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-006900.woff2') format('woff2');
  unicode-range: U+6900-69FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-006a00.woff2') format('woff2');
  unicode-range: U+6A00-6AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-006b00.woff2') format('woff2');
  unicode-range: U+6B00-6BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-006c00.woff2') format('woff2');
  unicode-range: U+6C00-6CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-006d00.woff2') format('woff2');
  unicode-range: U+6D00-6DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-006e00.woff2') format('woff2');
  unicode-range: U+6E00-6EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-006f00.woff2') format('woff2');
  unicode-range: U+6F00-6FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-007000.woff2') format('woff2');
  unicode-range: U+7000-70FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-007100.woff2') format('woff2');
  unicode-range: U+7100-71FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-007200.woff2') format('woff2');
  unicode-range: U+7200-72FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-007300.woff2') format('woff2');
  unicode-range: U+7300-73FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-007400.woff2') format('woff2');
  unicode-range: U+7400-74FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-007500.woff2') format('woff2');
  unicode-range: U+7500-75FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-007600.woff2') format('woff2');
  unicode-range: U+7600-76FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-007700.woff2') format('woff2');
  unicode-range: U+7700-77FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-007800.woff2') format('woff2');
  unicode-range: U+7800-78FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-007900.woff2') format('woff2');
  unicode-range: U+7900-79FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-007a00.woff2') format('woff2');
  unicode-range: U+7A00-7AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-007b00.woff2') format('woff2');
  unicode-range: U+7B00-7BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-007c00.woff2') format('woff2');
  unicode-range: U+7C00-7CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-007d00.woff2') format('woff2');
  unicode-range: U+7D00-7DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-007e00.woff2') format('woff2');
  unicode-range: U+7E00-7EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-007f00.woff2') format('woff2');
  unicode-range: U+7F00-7FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-008000.woff2') format('woff2');
  unicode-range: U+8000-80FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-008100.woff2') format('woff2');
  unicode-range: U+8100-81FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-008200.woff2') format('woff2');
  unicode-range: U+8200-82FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-008300.woff2') format('woff2');
  unicode-range: U+8300-83FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-008400.woff2') format('woff2');
  unicode-range: U+8400-84FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-008500.woff2') format('woff2');
  unicode-range: U+8500-85FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-008600.woff2') format('woff2');
  unicode-range: U+8600-86FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-008700.woff2') format('woff2');
  unicode-range: U+8700-87FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-008800.woff2') format('woff2');
  unicode-range: U+8800-88FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-008900.woff2') format('woff2');
  unicode-range: U+8900-89FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-008a00.woff2') format('woff2');
  unicode-range: U+8A00-8AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-008b00.woff2') format('woff2');
  unicode-range: U+8B00-8BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-008c00.woff2') format('woff2');
  unicode-range: U+8C00-8CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-008d00.woff2') format('woff2');
  unicode-range: U+8D00-8DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-008e00.woff2') format('woff2');
  unicode-range: U+8E00-8EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-008f00.woff2') format('woff2');
  unicode-range: U+8F00-8FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-009000.woff2') format('woff2');
  unicode-range: U+9000-90FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-009100.woff2') format('woff2');
  unicode-range: U+9100-91FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-009200.woff2') format('woff2');
  unicode-range: U+9200-92FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-009300.woff2') format('woff2');
  unicode-range: U+9300-93FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-009400.woff2') format('woff2');
  unicode-range: U+9400-94FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-009500.woff2') format('woff2');
  unicode-range: U+9500-95FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-009600.woff2') format('woff2');
  unicode-range: U+9600-96FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-009700.woff2') format('woff2');
  unicode-range: U+9700-97FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-009800.woff2') format('woff2');
  unicode-range: U+9800-98FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-009900.woff2') format('woff2');
  unicode-range: U+9900-99FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-009a00.woff2') format('woff2');
  unicode-range: U+9A00-9AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-009b00.woff2') format('woff2');
  unicode-range: U+9B00-9BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-009c00.woff2') format('woff2');
  unicode-range: U+9C00-9CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-009d00.woff2') format('woff2');
  unicode-range: U+9D00-9DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-009e00.woff2') format('woff2');
  unicode-range: U+9E00-9EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-009f00.woff2') format('woff2');
  unicode-range: U+9F00-9FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-00a000.woff2') format('woff2');
  unicode-range: U+A000-A0FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-00a100.woff2') format('woff2');
  unicode-range: U+A100-A1FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-00a200.woff2') format('woff2');
  unicode-range: U+A200-A2FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-00a300.woff2') format('woff2');
  unicode-range: U+A300-A3FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-00a400.woff2') format('woff2');
  unicode-range: U+A400-A4FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-00c200.woff2') format('woff2');
  unicode-range: U+C200-C2FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-00f900.woff2') format('woff2');
  unicode-range: U+F900-F9FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-00fa00.woff2') format('woff2');
  unicode-range: U+FA00-FAFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-00fb00.woff2') format('woff2');
  unicode-range: U+FB00-FBFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-00fc00.woff2') format('woff2');
  unicode-range: U+FC00-FCFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-00fd00.woff2') format('woff2');
  unicode-range: U+FD00-FDFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-00fe00.woff2') format('woff2');
  unicode-range: U+FE00-FEFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-00ff00.woff2') format('woff2');
  unicode-range: U+FF00-FFFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-020000.woff2') format('woff2');
  unicode-range: U+20000-200FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-020100.woff2') format('woff2');
  unicode-range: U+20100-201FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-020200.woff2') format('woff2');
  unicode-range: U+20200-202FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-020300.woff2') format('woff2');
  unicode-range: U+20300-203FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-020400.woff2') format('woff2');
  unicode-range: U+20400-204FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-020500.woff2') format('woff2');
  unicode-range: U+20500-205FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-020600.woff2') format('woff2');
  unicode-range: U+20600-206FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-020700.woff2') format('woff2');
  unicode-range: U+20700-207FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-020800.woff2') format('woff2');
  unicode-range: U+20800-208FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-020900.woff2') format('woff2');
  unicode-range: U+20900-209FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-020a00.woff2') format('woff2');
  unicode-range: U+20A00-20AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-020b00.woff2') format('woff2');
  unicode-range: U+20B00-20BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-020c00.woff2') format('woff2');
  unicode-range: U+20C00-20CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-020d00.woff2') format('woff2');
  unicode-range: U+20D00-20DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-020e00.woff2') format('woff2');
  unicode-range: U+20E00-20EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-020f00.woff2') format('woff2');
  unicode-range: U+20F00-20FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-021000.woff2') format('woff2');
  unicode-range: U+21000-210FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-021100.woff2') format('woff2');
  unicode-range: U+21100-211FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-021200.woff2') format('woff2');
  unicode-range: U+21200-212FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-021300.woff2') format('woff2');
  unicode-range: U+21300-213FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-021400.woff2') format('woff2');
  unicode-range: U+21400-214FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-021500.woff2') format('woff2');
  unicode-range: U+21500-215FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-021600.woff2') format('woff2');
  unicode-range: U+21600-216FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-021700.woff2') format('woff2');
  unicode-range: U+21700-217FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-021800.woff2') format('woff2');
  unicode-range: U+21800-218FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-021900.woff2') format('woff2');
  unicode-range: U+21900-219FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-021a00.woff2') format('woff2');
  unicode-range: U+21A00-21AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-021b00.woff2') format('woff2');
  unicode-range: U+21B00-21BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-021c00.woff2') format('woff2');
  unicode-range: U+21C00-21CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-021d00.woff2') format('woff2');
  unicode-range: U+21D00-21DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-021e00.woff2') format('woff2');
  unicode-range: U+21E00-21EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-021f00.woff2') format('woff2');
  unicode-range: U+21F00-21FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-022000.woff2') format('woff2');
  unicode-range: U+22000-220FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-022100.woff2') format('woff2');
  unicode-range: U+22100-221FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-022200.woff2') format('woff2');
  unicode-range: U+22200-222FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-022300.woff2') format('woff2');
  unicode-range: U+22300-223FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-022400.woff2') format('woff2');
  unicode-range: U+22400-224FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-022500.woff2') format('woff2');
  unicode-range: U+22500-225FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-022600.woff2') format('woff2');
  unicode-range: U+22600-226FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-022700.woff2') format('woff2');
  unicode-range: U+22700-227FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-022800.woff2') format('woff2');
  unicode-range: U+22800-228FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-022900.woff2') format('woff2');
  unicode-range: U+22900-229FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-022a00.woff2') format('woff2');
  unicode-range: U+22A00-22AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-022b00.woff2') format('woff2');
  unicode-range: U+22B00-22BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-022c00.woff2') format('woff2');
  unicode-range: U+22C00-22CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-022d00.woff2') format('woff2');
  unicode-range: U+22D00-22DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-022e00.woff2') format('woff2');
  unicode-range: U+22E00-22EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-022f00.woff2') format('woff2');
  unicode-range: U+22F00-22FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-023000.woff2') format('woff2');
  unicode-range: U+23000-230FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-023100.woff2') format('woff2');
  unicode-range: U+23100-231FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-023200.woff2') format('woff2');
  unicode-range: U+23200-232FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-023300.woff2') format('woff2');
  unicode-range: U+23300-233FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-023400.woff2') format('woff2');
  unicode-range: U+23400-234FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-023500.woff2') format('woff2');
  unicode-range: U+23500-235FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-023600.woff2') format('woff2');
  unicode-range: U+23600-236FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-023700.woff2') format('woff2');
  unicode-range: U+23700-237FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-023800.woff2') format('woff2');
  unicode-range: U+23800-238FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-023900.woff2') format('woff2');
  unicode-range: U+23900-239FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-023a00.woff2') format('woff2');
  unicode-range: U+23A00-23AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-023b00.woff2') format('woff2');
  unicode-range: U+23B00-23BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-023c00.woff2') format('woff2');
  unicode-range: U+23C00-23CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-023d00.woff2') format('woff2');
  unicode-range: U+23D00-23DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-023e00.woff2') format('woff2');
  unicode-range: U+23E00-23EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-023f00.woff2') format('woff2');
  unicode-range: U+23F00-23FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-024000.woff2') format('woff2');
  unicode-range: U+24000-240FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-024100.woff2') format('woff2');
  unicode-range: U+24100-241FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-024200.woff2') format('woff2');
  unicode-range: U+24200-242FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-024300.woff2') format('woff2');
  unicode-range: U+24300-243FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-024400.woff2') format('woff2');
  unicode-range: U+24400-244FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-024500.woff2') format('woff2');
  unicode-range: U+24500-245FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-024600.woff2') format('woff2');
  unicode-range: U+24600-246FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-024700.woff2') format('woff2');
  unicode-range: U+24700-247FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-024800.woff2') format('woff2');
  unicode-range: U+24800-248FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-024900.woff2') format('woff2');
  unicode-range: U+24900-249FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-024a00.woff2') format('woff2');
  unicode-range: U+24A00-24AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-024b00.woff2') format('woff2');
  unicode-range: U+24B00-24BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-024c00.woff2') format('woff2');
  unicode-range: U+24C00-24CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-024d00.woff2') format('woff2');
  unicode-range: U+24D00-24DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-024e00.woff2') format('woff2');
  unicode-range: U+24E00-24EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-024f00.woff2') format('woff2');
  unicode-range: U+24F00-24FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-025000.woff2') format('woff2');
  unicode-range: U+25000-250FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-025100.woff2') format('woff2');
  unicode-range: U+25100-251FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-025200.woff2') format('woff2');
  unicode-range: U+25200-252FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-025300.woff2') format('woff2');
  unicode-range: U+25300-253FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-025400.woff2') format('woff2');
  unicode-range: U+25400-254FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-025500.woff2') format('woff2');
  unicode-range: U+25500-255FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-025600.woff2') format('woff2');
  unicode-range: U+25600-256FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-025700.woff2') format('woff2');
  unicode-range: U+25700-257FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-025800.woff2') format('woff2');
  unicode-range: U+25800-258FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-025900.woff2') format('woff2');
  unicode-range: U+25900-259FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-025a00.woff2') format('woff2');
  unicode-range: U+25A00-25AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-025b00.woff2') format('woff2');
  unicode-range: U+25B00-25BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-025c00.woff2') format('woff2');
  unicode-range: U+25C00-25CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-025d00.woff2') format('woff2');
  unicode-range: U+25D00-25DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-025e00.woff2') format('woff2');
  unicode-range: U+25E00-25EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-025f00.woff2') format('woff2');
  unicode-range: U+25F00-25FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-026000.woff2') format('woff2');
  unicode-range: U+26000-260FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-026100.woff2') format('woff2');
  unicode-range: U+26100-261FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-026200.woff2') format('woff2');
  unicode-range: U+26200-262FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-026300.woff2') format('woff2');
  unicode-range: U+26300-263FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-026400.woff2') format('woff2');
  unicode-range: U+26400-264FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-026500.woff2') format('woff2');
  unicode-range: U+26500-265FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-026600.woff2') format('woff2');
  unicode-range: U+26600-266FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-026700.woff2') format('woff2');
  unicode-range: U+26700-267FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-026800.woff2') format('woff2');
  unicode-range: U+26800-268FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-026900.woff2') format('woff2');
  unicode-range: U+26900-269FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-026a00.woff2') format('woff2');
  unicode-range: U+26A00-26AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-026b00.woff2') format('woff2');
  unicode-range: U+26B00-26BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-026c00.woff2') format('woff2');
  unicode-range: U+26C00-26CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-026d00.woff2') format('woff2');
  unicode-range: U+26D00-26DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-026e00.woff2') format('woff2');
  unicode-range: U+26E00-26EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-026f00.woff2') format('woff2');
  unicode-range: U+26F00-26FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-027000.woff2') format('woff2');
  unicode-range: U+27000-270FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-027100.woff2') format('woff2');
  unicode-range: U+27100-271FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-027200.woff2') format('woff2');
  unicode-range: U+27200-272FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-027300.woff2') format('woff2');
  unicode-range: U+27300-273FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-027400.woff2') format('woff2');
  unicode-range: U+27400-274FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-027500.woff2') format('woff2');
  unicode-range: U+27500-275FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-027600.woff2') format('woff2');
  unicode-range: U+27600-276FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-027700.woff2') format('woff2');
  unicode-range: U+27700-277FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-027800.woff2') format('woff2');
  unicode-range: U+27800-278FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-027900.woff2') format('woff2');
  unicode-range: U+27900-279FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-027a00.woff2') format('woff2');
  unicode-range: U+27A00-27AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-027b00.woff2') format('woff2');
  unicode-range: U+27B00-27BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-027c00.woff2') format('woff2');
  unicode-range: U+27C00-27CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-027d00.woff2') format('woff2');
  unicode-range: U+27D00-27DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-027e00.woff2') format('woff2');
  unicode-range: U+27E00-27EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-027f00.woff2') format('woff2');
  unicode-range: U+27F00-27FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-028000.woff2') format('woff2');
  unicode-range: U+28000-280FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-028100.woff2') format('woff2');
  unicode-range: U+28100-281FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-028200.woff2') format('woff2');
  unicode-range: U+28200-282FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-028300.woff2') format('woff2');
  unicode-range: U+28300-283FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-028400.woff2') format('woff2');
  unicode-range: U+28400-284FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-028500.woff2') format('woff2');
  unicode-range: U+28500-285FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-028600.woff2') format('woff2');
  unicode-range: U+28600-286FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-028700.woff2') format('woff2');
  unicode-range: U+28700-287FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-028800.woff2') format('woff2');
  unicode-range: U+28800-288FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-028900.woff2') format('woff2');
  unicode-range: U+28900-289FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-028a00.woff2') format('woff2');
  unicode-range: U+28A00-28AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-028b00.woff2') format('woff2');
  unicode-range: U+28B00-28BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-028c00.woff2') format('woff2');
  unicode-range: U+28C00-28CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-028d00.woff2') format('woff2');
  unicode-range: U+28D00-28DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-028e00.woff2') format('woff2');
  unicode-range: U+28E00-28EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-028f00.woff2') format('woff2');
  unicode-range: U+28F00-28FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-029000.woff2') format('woff2');
  unicode-range: U+29000-290FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-029100.woff2') format('woff2');
  unicode-range: U+29100-291FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-029200.woff2') format('woff2');
  unicode-range: U+29200-292FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-029300.woff2') format('woff2');
  unicode-range: U+29300-293FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-029400.woff2') format('woff2');
  unicode-range: U+29400-294FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-029500.woff2') format('woff2');
  unicode-range: U+29500-295FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-029600.woff2') format('woff2');
  unicode-range: U+29600-296FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-029700.woff2') format('woff2');
  unicode-range: U+29700-297FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-029800.woff2') format('woff2');
  unicode-range: U+29800-298FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-029900.woff2') format('woff2');
  unicode-range: U+29900-299FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-029a00.woff2') format('woff2');
  unicode-range: U+29A00-29AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-029b00.woff2') format('woff2');
  unicode-range: U+29B00-29BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-029c00.woff2') format('woff2');
  unicode-range: U+29C00-29CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-029d00.woff2') format('woff2');
  unicode-range: U+29D00-29DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-029e00.woff2') format('woff2');
  unicode-range: U+29E00-29EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-029f00.woff2') format('woff2');
  unicode-range: U+29F00-29FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02a000.woff2') format('woff2');
  unicode-range: U+2A000-2A0FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02a100.woff2') format('woff2');
  unicode-range: U+2A100-2A1FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02a200.woff2') format('woff2');
  unicode-range: U+2A200-2A2FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02a300.woff2') format('woff2');
  unicode-range: U+2A300-2A3FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02a400.woff2') format('woff2');
  unicode-range: U+2A400-2A4FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02a500.woff2') format('woff2');
  unicode-range: U+2A500-2A5FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02a600.woff2') format('woff2');
  unicode-range: U+2A600-2A6FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02a700.woff2') format('woff2');
  unicode-range: U+2A700-2A7FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02a800.woff2') format('woff2');
  unicode-range: U+2A800-2A8FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02a900.woff2') format('woff2');
  unicode-range: U+2A900-2A9FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02aa00.woff2') format('woff2');
  unicode-range: U+2AA00-2AAFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02ab00.woff2') format('woff2');
  unicode-range: U+2AB00-2ABFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02ac00.woff2') format('woff2');
  unicode-range: U+2AC00-2ACFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02ad00.woff2') format('woff2');
  unicode-range: U+2AD00-2ADFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02ae00.woff2') format('woff2');
  unicode-range: U+2AE00-2AEFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02af00.woff2') format('woff2');
  unicode-range: U+2AF00-2AFFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02b000.woff2') format('woff2');
  unicode-range: U+2B000-2B0FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02b100.woff2') format('woff2');
  unicode-range: U+2B100-2B1FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02b200.woff2') format('woff2');
  unicode-range: U+2B200-2B2FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02b300.woff2') format('woff2');
  unicode-range: U+2B300-2B3FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02b400.woff2') format('woff2');
  unicode-range: U+2B400-2B4FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02b500.woff2') format('woff2');
  unicode-range: U+2B500-2B5FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02b600.woff2') format('woff2');
  unicode-range: U+2B600-2B6FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02b700.woff2') format('woff2');
  unicode-range: U+2B700-2B7FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02b800.woff2') format('woff2');
  unicode-range: U+2B800-2B8FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02b900.woff2') format('woff2');
  unicode-range: U+2B900-2B9FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02ba00.woff2') format('woff2');
  unicode-range: U+2BA00-2BAFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02bb00.woff2') format('woff2');
  unicode-range: U+2BB00-2BBFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02bc00.woff2') format('woff2');
  unicode-range: U+2BC00-2BCFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02bd00.woff2') format('woff2');
  unicode-range: U+2BD00-2BDFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02be00.woff2') format('woff2');
  unicode-range: U+2BE00-2BEFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02bf00.woff2') format('woff2');
  unicode-range: U+2BF00-2BFFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02c000.woff2') format('woff2');
  unicode-range: U+2C000-2C0FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02c100.woff2') format('woff2');
  unicode-range: U+2C100-2C1FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02c200.woff2') format('woff2');
  unicode-range: U+2C200-2C2FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02c300.woff2') format('woff2');
  unicode-range: U+2C300-2C3FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02c400.woff2') format('woff2');
  unicode-range: U+2C400-2C4FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02c500.woff2') format('woff2');
  unicode-range: U+2C500-2C5FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02c600.woff2') format('woff2');
  unicode-range: U+2C600-2C6FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02c700.woff2') format('woff2');
  unicode-range: U+2C700-2C7FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02c800.woff2') format('woff2');
  unicode-range: U+2C800-2C8FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02c900.woff2') format('woff2');
  unicode-range: U+2C900-2C9FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02ca00.woff2') format('woff2');
  unicode-range: U+2CA00-2CAFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02cb00.woff2') format('woff2');
  unicode-range: U+2CB00-2CBFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02cc00.woff2') format('woff2');
  unicode-range: U+2CC00-2CCFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02cd00.woff2') format('woff2');
  unicode-range: U+2CD00-2CDFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02ce00.woff2') format('woff2');
  unicode-range: U+2CE00-2CEFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02d100.woff2') format('woff2');
  unicode-range: U+2D100-2D1FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02d300.woff2') format('woff2');
  unicode-range: U+2D300-2D3FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02dc00.woff2') format('woff2');
  unicode-range: U+2DC00-2DCFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02de00.woff2') format('woff2');
  unicode-range: U+2DE00-2DEFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02e100.woff2') format('woff2');
  unicode-range: U+2E100-2E1FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02e700.woff2') format('woff2');
  unicode-range: U+2E700-2E7FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02e800.woff2') format('woff2');
  unicode-range: U+2E800-2E8FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02ea00.woff2') format('woff2');
  unicode-range: U+2EA00-2EAFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02f800.woff2') format('woff2');
  unicode-range: U+2F800-2F8FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02f900.woff2') format('woff2');
  unicode-range: U+2F900-2F9FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-02fa00.woff2') format('woff2');
  unicode-range: U+2FA00-2FAFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-030100.woff2') format('woff2');
  unicode-range: U+30100-301FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-030e00.woff2') format('woff2');
  unicode-range: U+30E00-30EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-031300.woff2') format('woff2');
  unicode-range: U+31300-313FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-031600.woff2') format('woff2');
  unicode-range: U+31600-316FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-031700.woff2') format('woff2');
  unicode-range: U+31700-317FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-031800.woff2') format('woff2');
  unicode-range: U+31800-318FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-031900.woff2') format('woff2');
  unicode-range: U+31900-319FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-031a00.woff2') format('woff2');
  unicode-range: U+31A00-31AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-031b00.woff2') format('woff2');
  unicode-range: U+31B00-31BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-031c00.woff2') format('woff2');
  unicode-range: U+31C00-31CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-031d00.woff2') format('woff2');
  unicode-range: U+31D00-31DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-031e00.woff2') format('woff2');
  unicode-range: U+31E00-31EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-031f00.woff2') format('woff2');
  unicode-range: U+31F00-31FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-032000.woff2') format('woff2');
  unicode-range: U+32000-320FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-032100.woff2') format('woff2');
  unicode-range: U+32100-321FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-032200.woff2') format('woff2');
  unicode-range: U+32200-322FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-032300.woff2') format('woff2');
  unicode-range: U+32300-323FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-032500.woff2') format('woff2');
  unicode-range: U+32500-325FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-032b00.woff2') format('woff2');
  unicode-range: U+32B00-32BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-032e00.woff2') format('woff2');
  unicode-range: U+32E00-32EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-033000.woff2') format('woff2');
  unicode-range: U+33000-330FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f0000.woff2') format('woff2');
  unicode-range: U+F0000-F00FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f0100.woff2') format('woff2');
  unicode-range: U+F0100-F01FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f0200.woff2') format('woff2');
  unicode-range: U+F0200-F02FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f0300.woff2') format('woff2');
  unicode-range: U+F0300-F03FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f0400.woff2') format('woff2');
  unicode-range: U+F0400-F04FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f0500.woff2') format('woff2');
  unicode-range: U+F0500-F05FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f0600.woff2') format('woff2');
  unicode-range: U+F0600-F06FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f0700.woff2') format('woff2');
  unicode-range: U+F0700-F07FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f0800.woff2') format('woff2');
  unicode-range: U+F0800-F08FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f0a00.woff2') format('woff2');
  unicode-range: U+F0A00-F0AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f1000.woff2') format('woff2');
  unicode-range: U+F1000-F10FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f1200.woff2') format('woff2');
  unicode-range: U+F1200-F12FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f1700.woff2') format('woff2');
  unicode-range: U+F1700-F17FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f1c00.woff2') format('woff2');
  unicode-range: U+F1C00-F1CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f1d00.woff2') format('woff2');
  unicode-range: U+F1D00-F1DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f1e00.woff2') format('woff2');
  unicode-range: U+F1E00-F1EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f2200.woff2') format('woff2');
  unicode-range: U+F2200-F22FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f2c00.woff2') format('woff2');
  unicode-range: U+F2C00-F2CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f3a00.woff2') format('woff2');
  unicode-range: U+F3A00-F3AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f4c00.woff2') format('woff2');
  unicode-range: U+F4C00-F4CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f4d00.woff2') format('woff2');
  unicode-range: U+F4D00-F4DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f5200.woff2') format('woff2');
  unicode-range: U+F5200-F52FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f5500.woff2') format('woff2');
  unicode-range: U+F5500-F55FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f5b00.woff2') format('woff2');
  unicode-range: U+F5B00-F5BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f5d00.woff2') format('woff2');
  unicode-range: U+F5D00-F5DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f6000.woff2') format('woff2');
  unicode-range: U+F6000-F60FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f6100.woff2') format('woff2');
  unicode-range: U+F6100-F61FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f6200.woff2') format('woff2');
  unicode-range: U+F6200-F62FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f7100.woff2') format('woff2');
  unicode-range: U+F7100-F71FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f7200.woff2') format('woff2');
  unicode-range: U+F7200-F72FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f7800.woff2') format('woff2');
  unicode-range: U+F7800-F78FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f8c00.woff2') format('woff2');
  unicode-range: U+F8C00-F8CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f8e00.woff2') format('woff2');
  unicode-range: U+F8E00-F8EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f8f00.woff2') format('woff2');
  unicode-range: U+F8F00-F8FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f9000.woff2') format('woff2');
  unicode-range: U+F9000-F90FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f9100.woff2') format('woff2');
  unicode-range: U+F9100-F91FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f9200.woff2') format('woff2');
  unicode-range: U+F9200-F92FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f9300.woff2') format('woff2');
  unicode-range: U+F9300-F93FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f9400.woff2') format('woff2');
  unicode-range: U+F9400-F94FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f9500.woff2') format('woff2');
  unicode-range: U+F9500-F95FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f9600.woff2') format('woff2');
  unicode-range: U+F9600-F96FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f9700.woff2') format('woff2');
  unicode-range: U+F9700-F97FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f9800.woff2') format('woff2');
  unicode-range: U+F9800-F98FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f9900.woff2') format('woff2');
  unicode-range: U+F9900-F99FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f9a00.woff2') format('woff2');
  unicode-range: U+F9A00-F9AFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f9b00.woff2') format('woff2');
  unicode-range: U+F9B00-F9BFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f9c00.woff2') format('woff2');
  unicode-range: U+F9C00-F9CFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f9d00.woff2') format('woff2');
  unicode-range: U+F9D00-F9DFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f9e00.woff2') format('woff2');
  unicode-range: U+F9E00-F9EFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0f9f00.woff2') format('woff2');
  unicode-range: U+F9F00-F9FFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fa000.woff2') format('woff2');
  unicode-range: U+FA000-FA0FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fa100.woff2') format('woff2');
  unicode-range: U+FA100-FA1FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fa200.woff2') format('woff2');
  unicode-range: U+FA200-FA2FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fa300.woff2') format('woff2');
  unicode-range: U+FA300-FA3FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fa400.woff2') format('woff2');
  unicode-range: U+FA400-FA4FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fa500.woff2') format('woff2');
  unicode-range: U+FA500-FA5FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fa600.woff2') format('woff2');
  unicode-range: U+FA600-FA6FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fa700.woff2') format('woff2');
  unicode-range: U+FA700-FA7FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fa800.woff2') format('woff2');
  unicode-range: U+FA800-FA8FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fa900.woff2') format('woff2');
  unicode-range: U+FA900-FA9FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0faa00.woff2') format('woff2');
  unicode-range: U+FAA00-FAAFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fab00.woff2') format('woff2');
  unicode-range: U+FAB00-FABFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fac00.woff2') format('woff2');
  unicode-range: U+FAC00-FACFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fad00.woff2') format('woff2');
  unicode-range: U+FAD00-FADFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fae00.woff2') format('woff2');
  unicode-range: U+FAE00-FAEFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0faf00.woff2') format('woff2');
  unicode-range: U+FAF00-FAFFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fb000.woff2') format('woff2');
  unicode-range: U+FB000-FB0FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fb100.woff2') format('woff2');
  unicode-range: U+FB100-FB1FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fb200.woff2') format('woff2');
  unicode-range: U+FB200-FB2FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fb300.woff2') format('woff2');
  unicode-range: U+FB300-FB3FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fb400.woff2') format('woff2');
  unicode-range: U+FB400-FB4FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fb500.woff2') format('woff2');
  unicode-range: U+FB500-FB5FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fb600.woff2') format('woff2');
  unicode-range: U+FB600-FB6FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fb700.woff2') format('woff2');
  unicode-range: U+FB700-FB7FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fb800.woff2') format('woff2');
  unicode-range: U+FB800-FB8FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fb900.woff2') format('woff2');
  unicode-range: U+FB900-FB9FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fba00.woff2') format('woff2');
  unicode-range: U+FBA00-FBAFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fbb00.woff2') format('woff2');
  unicode-range: U+FBB00-FBBFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fbc00.woff2') format('woff2');
  unicode-range: U+FBC00-FBCFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fbd00.woff2') format('woff2');
  unicode-range: U+FBD00-FBDFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fbe00.woff2') format('woff2');
  unicode-range: U+FBE00-FBEFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fbf00.woff2') format('woff2');
  unicode-range: U+FBF00-FBFFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fc000.woff2') format('woff2');
  unicode-range: U+FC000-FC0FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fc100.woff2') format('woff2');
  unicode-range: U+FC100-FC1FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fc200.woff2') format('woff2');
  unicode-range: U+FC200-FC2FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fc300.woff2') format('woff2');
  unicode-range: U+FC300-FC3FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fc400.woff2') format('woff2');
  unicode-range: U+FC400-FC4FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fc500.woff2') format('woff2');
  unicode-range: U+FC500-FC5FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fc600.woff2') format('woff2');
  unicode-range: U+FC600-FC6FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fc700.woff2') format('woff2');
  unicode-range: U+FC700-FC7FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fc800.woff2') format('woff2');
  unicode-range: U+FC800-FC8FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fc900.woff2') format('woff2');
  unicode-range: U+FC900-FC9FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fca00.woff2') format('woff2');
  unicode-range: U+FCA00-FCAFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fcb00.woff2') format('woff2');
  unicode-range: U+FCB00-FCBFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fcc00.woff2') format('woff2');
  unicode-range: U+FCC00-FCCFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fcd00.woff2') format('woff2');
  unicode-range: U+FCD00-FCDFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fce00.woff2') format('woff2');
  unicode-range: U+FCE00-FCEFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fcf00.woff2') format('woff2');
  unicode-range: U+FCF00-FCFFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fd000.woff2') format('woff2');
  unicode-range: U+FD000-FD0FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fd100.woff2') format('woff2');
  unicode-range: U+FD100-FD1FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fd200.woff2') format('woff2');
  unicode-range: U+FD200-FD2FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fd300.woff2') format('woff2');
  unicode-range: U+FD300-FD3FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fd400.woff2') format('woff2');
  unicode-range: U+FD400-FD4FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fd500.woff2') format('woff2');
  unicode-range: U+FD500-FD5FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fd600.woff2') format('woff2');
  unicode-range: U+FD600-FD6FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fd700.woff2') format('woff2');
  unicode-range: U+FD700-FD7FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fd800.woff2') format('woff2');
  unicode-range: U+FD800-FD8FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fd900.woff2') format('woff2');
  unicode-range: U+FD900-FD9FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fda00.woff2') format('woff2');
  unicode-range: U+FDA00-FDAFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fdb00.woff2') format('woff2');
  unicode-range: U+FDB00-FDBFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fdc00.woff2') format('woff2');
  unicode-range: U+FDC00-FDCFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fdd00.woff2') format('woff2');
  unicode-range: U+FDD00-FDDFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fde00.woff2') format('woff2');
  unicode-range: U+FDE00-FDEFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fdf00.woff2') format('woff2');
  unicode-range: U+FDF00-FDFFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fe000.woff2') format('woff2');
  unicode-range: U+FE000-FE0FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fe100.woff2') format('woff2');
  unicode-range: U+FE100-FE1FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fe200.woff2') format('woff2');
  unicode-range: U+FE200-FE2FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0ff800.woff2') format('woff2');
  unicode-range: U+FF800-FF8FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0ff900.woff2') format('woff2');
  unicode-range: U+FF900-FF9FF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0ffa00.woff2') format('woff2');
  unicode-range: U+FFA00-FFAFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0ffb00.woff2') format('woff2');
  unicode-range: U+FFB00-FFBFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0ffc00.woff2') format('woff2');
  unicode-range: U+FFC00-FFCFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0ffd00.woff2') format('woff2');
  unicode-range: U+FFD00-FFDFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0ffe00.woff2') format('woff2');
  unicode-range: U+FFE00-FFEFF;
}

@font-face {
  font-family: 'TW-Kai';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/TWKai-400-0fff00.woff2') format('woff2');
  unicode-range: U+FFF00-FFFFF;
}
