@charset "UTF-8";
/* 
 * 全域變數
 */
:root {
  --ff-default: "Berkshire Swash", "Noto Serif TC", cursive;
  --ff-serif: "Noto Serif TC", "Noto Serif CJK TC", serif;
  --fs-head-title: clamp(1.5rem, 2.5vw, 2rem);
  --fs-head-subtitle: clamp(1.25rem, 2.5vw, 1.5rem);
  --fs-head-text: clamp(1.125rem, 2.5vw, 1.375rem);
  --fs-list-title: 1.5rem;
  --fs-list-text: 1rem;
  --fs-message-text: clamp(1rem, 2.5vw, 1.125rem);
  --fz-h1: clamp(1.625rem, 2.5vw, 2rem);
  --fz-h2: clamp(1.4125rem, 2.5vw, 1.875rem);
  --fz-h3: clamp(1.375rem, 2.5vw, 1.625rem);
  --fz-h4: clamp(1.25rem, 2.5vw, 1.5rem);
  --fz-h5: clamp(1.1875rem, 2vw, 1.4125rem);
  --fz-h6: clamp(1.125rem, 1.8vw, 1.375rem);
  --fz-sm: 0.9375em;
  --color-default: #111111;
  --color-primary: #83b7d7;
  --color-secondary: #3f74ad;
  --color-gray-lv1: #111111;
  --color-gray-lv2: #555555;
  --color-white: #ffffff;
  --color-brand-cream: #fbf4ea;
  --color-brand-cream-deep: #f2e3c1;
  --color-brand-brown: #471a14;
  --color-brand-curry: #c9742b;
  --color-brand-saffron: #e0a93f;
  --color-brand-green: #1c5a4a;
  --color-brand-green-deep: #123f33;
  --h-header: 166px;
  --h-header-scrolled: 85px;
}
@media (max-width: 1023.98px) {
  :root {
    --h-header: 80px;
    --h-header-scrolled: 60px;
  }
}
:root {
  --w-container: 1480px;
  --plyr-control-spacing: 10px;
  --plyr-color-main: #c22020;
  --article-title: #000;
  --kanban-title: #fff;
  --kanban-subtitle: #000000;
  --kanban-text: #ddd;
  --kanban-button: #222;
  --kanban-pagination: #fff;
  --kanban-pagination-active: #222;
}

/* 
 * Reset
 */
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-tap-highlight-color: transparent;
}
*:before, *:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

img {
  border: 0;
  text-decoration: none;
  vertical-align: top;
  max-width: 100%;
}

a {
  color: #000;
  outline: none;
}

a, a:visited, a:hover, a:focus, a:active {
  text-decoration: none;
}

input, textarea, select, button {
  font-size: 1rem;
  font-weight: 400;
}

textarea, input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0;
}

input, textarea, select {
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  border: none;
  font-size: 1rem;
  border-radius: 0;
}

input, textarea, select, input[type=radio], input[type=checkbox] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

textarea {
  resize: vertical;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  margin: 0;
  padding: 0;
}

p {
  line-height: inherit;
  margin: 0;
  padding: 0;
}

span {
  display: inline-block;
}

label {
  font-weight: inherit;
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
}

input, button, textarea, select, optgroup, option {
  font-family: inherit;
  font-size: inherit;
  font-size: 100%;
  font-style: inherit;
  font-weight: inherit;
  outline: 0;
}

::-webkit-input-placeholder, ::-moz-placeholder, :-ms-input-placeholder, :-moz-placeholder {
  color: #888;
  font-size: 15px;
  opacity: 1;
}

.reset {
  margin: 0;
  padding: 0;
  list-style: none;
  border: 0;
  border-spacing: 0;
  border-collapse: collapse;
}

.reset input, .reset label, .reset select {
  vertical-align: middle;
}

input[type=date]::-webkit-inner-spin-button {
  display: none;
  -webkit-appearance: none;
}

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

html {
  font-size: 16px;
}

body {
  position: relative;
  overflow-x: hidden;
  width: 100%;
  margin: 0;
  padding: 0;
  font-size: 16px;
  color: #000;
  font-family: var(--ff-default);
  font-weight: 500;
  scroll-behavior: smooth;
}

body {
  color: #231815;
  padding-top: 80px;
}
@media (max-width: 639px) {
  body {
    padding-top: 60px;
  }
}

a {
  color: #231815;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}
a:hover {
  color: #83b7d7;
}

.list__current {
  color: #83b7d7;
}