/* Old Blue
$cam: #383838;
$cbm: #36787b;
$ccm: #38527d;
*/
div#pallet div {
  width: 32px;
  height: 32px;
  display: inline-block;
  color: auto; }
div#pallet div:nth-child(01) {
  background-color: #b1471b; }
div#pallet div:nth-child(02) {
  background-color: #566e9c; }
div#pallet div:nth-child(03) {
  background-color: #93177b; }
div#pallet div:nth-child(04) {
  background-color: #e58056; }
div#pallet div:nth-child(05) {
  background-color: #a6b4ce; }
div#pallet div:nth-child(06) {
  background-color: #dd29ba; }
div#pallet div:nth-child(07) {
  background-color: #f5ccbb; }
div#pallet div:nth-child(08) {
  background-color: #dbe1eb; }
div#pallet div:nth-child(09) {
  background-color: #f2a9e3; }
div#pallet div:nth-child(10) {
  background-color: #fbece6; }
div#pallet div:nth-child(11) {
  background-color: #f2f4f8; }
div#pallet div:nth-child(12) {
  background-color: #fadff5; }
div#pallet div:nth-child(13) {
  background-color: #fef9f7; }
div#pallet div:nth-child(14) {
  background-color: #fbfbfd; }
div#pallet div:nth-child(15) {
  background-color: #fdf4fc; }

@font-face {
  font-family: 'Open Sans Light';
  font-style: normal;
  font-weight: 300;
  src: local("Open Sans Light"), local("OpenSans-Light"), url("fonts/OpenSans-Light.ttf") format("ttf"); }
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: local("Open Sans"), local("OpenSans"), url("fonts/OpenSans-Regular.ttf") format("ttf"); }
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: local("Open Sans Semibold"), local("OpenSans-Semibold"), url("fonts/OpenSans-SemiBold.ttf") format("ttf"); }
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: local("Open Sans Italic"), local("OpenSans-Italic"), url("fonts/OpenSans-Italic.ttf") format("ttf"); }
@font-face {
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 600;
  src: local("Open Sans Semibold Italic"), local("OpenSans-SemiboldItalic"), url("fonts/OpenSans-SemiBoldItalic.ttf") format("ttf"); }
* {
  box-sizing: border-box; }

html {
  background-image: linear-gradient(to bottom right, #fdebe4 0%, #fff 25%, #f9fbfe 75%, #f0f3f9 100%);
  font-family: "Open Sans";
  font-weight: 300;
  color: #2e3b54;
  line-height: 1.75em;
  padding: 0;
  margin: 0;
  min-height: 100%; }

body {
  padding: 24px 1em 5em 1em;
  margin: 0; }

div#toTop {
  position: fixed;
  right: 0;
  bottom: 0;
  border: 0.15rem black solid;
  border-bottom: none;
  border-right: none;
  border-radius: 0.8rem 0 0 0;
  background-color: white;
  padding: 0.1em 0.5em;
  cursor: pointer; }

div#archive {
  position: fixed;
  left: 0;
  bottom: 0;
  border: 0.15rem black solid;
  border-bottom: none;
  border-left: none;
  border-radius: 0 0.8rem 0 0;
  background-color: white;
  padding: 0.1em 0.5em; }

div#snow {
  background-image: url("snow.png");
  background-size: 400px 24px;
  background-repeat: repeat-x;
  width: 100%;
  height: 24px;
  position: absolute;
  top: 0;
  left: 0; }

div#logo {
  right: 0;
  text-align: center;
  padding-bottom: 2em; }

div#logo img {
  display: inline-block;
  border-radius: 1.5em;
  max-height: 40em;
  max-width: 90%;
  background-color: white;
  transition-duration: 0.3s; }

div#logo.small img {
  max-height: 15em; }

div#warning {
  color: white;
  padding: 0.5em;
  font-size: 1.3em;
  position: fixed;
  bottom: 0;
  left: 0;
  background-color: rgba(255, 0, 0, 0.5); }

div.center {
  text-align: center; }

a {
  color: #93177b; }

a:hover {
  color: #dd29ba;
  text-shadow: 0.1rem 0.1rem rgba(0, 0, 0, 0.15); }

h1, h2, h3, h4 {
  font-weight: 400;
  color: #b1471b; }

h1 {
  font-size: 1.65em;
  margin: 1.00em 0 0.75em 0; }

h2 {
  font-size: 1.40em;
  margin: 0.75em 0 0.50em 0; }

h3 {
  font-size: 1.10em;
  margin: 0.50em 0 0.25em 0; }

h4 {
  font-size: 0.95em;
  margin: 0.25em 0 0.00em 0; }

nav {
  text-align: center;
  line-height: 2.5em;
  font-size: 1.1em; }
  nav a {
    color: #b1471b;
    border-top: 0.1rem solid black;
    border-bottom: 0.1rem solid black;
    padding: 0.3em 1.2em;
    margin: 0em 1em;
    text-decoration: inherit;
    border-radius: 0.1rem; }
  nav a:hover {
    color: #e58056; }
  @media screen and (max-width: 1000px) {
    nav a {
      padding: 0.3em 0.3em;
      margin: 0em 0.2em; } }

.big {
  font-size: 1.2em; }

strong {
  font-weight: 600; }

p {
  max-width: 60em;
  margin-left: 1em; }

p::first-letter {
  font-size: 1.07em; }

section {
  padding: 1em 4em;
  padding-bottom: 7em;
  margin: auto;
  max-width: 60em; }
  @media screen and (max-width: 1000px) {
    section {
      padding: 1em; } }
  @media screen and (max-width: 500px) {
    section {
      padding: 1em 0em; } }

section img {
  max-width: 100%;
  box-shadow: 0.1rem 0.1rem 0.3rem 0px rgba(0, 0, 0, 0.3);
  border: 0.2rem solid rgba(255, 255, 225, 0.1);
  border-radius: 0.4rem; }

img.fright {
  float: right;
  max-width: 50%;
  margin: 0.7em; }

img.fleft {
  float: left;
  max-width: 50%;
  margin: 0.7em; }

@media screen and (max-width: 800px) {
  img.fright, img.fleft {
    max-width: 35%; } }
@media screen and (max-width: 600px) {
  img.fright, img.fleft {
    max-width: 25%; } }
@media screen and (max-width: 400px) {
  img.optional {
    display: none; } }
section#teachers > p {
  max-width: unset; }

section#teachers {
  width: 100%;
  max-width: 150em;
  text-align: center; }
  section#teachers article {
    display: inline-block;
    border: 0.125rem solid #fbece6;
    background: rgba(86, 110, 156, 0.05);
    border-radius: 0.5rem;
    width: 28em;
    max-width: 100%;
    height: 28em;
    margin: 0.5em 0.5em; }
  section#teachers div.text {
    position: absolute;
    z-index: 2;
    width: 28em;
    height: 28em;
    overflow: auto;
    text-align: left;
    background: rgba(255, 255, 255, 0.9);
    padding: 0.65em; }
  section#teachers div.img {
    position: absolute;
    width: 28em;
    height: 28em;
    padding: 0.65em; }
  section#teachers article img {
    height: 23em;
    object-fit: contain;
    background: white; }
  section#teachers a {
    padding: 0.2em; }
  section#teachers a i {
    font-size: 1.3em; }
  section#teachers h2 {
    line-height: 1em; }
  section#teachers h2 small {
    font-size: 0.6em; }
  section#teachers p {
    padding: 0.5em 0.25em;
    margin: 0; }

@media screen and (max-width: 30em) {
  section#teachers article {
    width: 25em; }
  section#teachers div.img {
    width: 25em; }
  section#teachers div.text {
    width: 25em; } }
@media screen and (max-width: 25em) {
  section#teachers article {
    width: 20em; }
  section#teachers div.img {
    width: 20em; }
  section#teachers div.text {
    width: 20em; } }
@media screen and (max-width: 20em) {
  section#teachers article {
    width: 15em; }
  section#teachers div.img {
    width: 15em; }
  section#teachers div.text {
    width: 15em; } }
div.coll2 {
  width: 100%; }

div.coll2 > div {
  width: 40%;
  display: inline-block;
  vertical-align: top;
  padding: 0 0.5em; }

table#prices {
  border: none;
  text-align: right; }

table#prices td {
  padding: 0.2em 0.4em; }

section#schedule {
  max-width: 90%;
  text-align: center; }

table#t_schedule {
  display: inline-block;
  vertical-align: top;
  padding: 0.2em; }

table#t_schedule {
  border-collapse: collapse;
  text-align: center;
  font-size: 1.2em; }
  table#t_schedule th, table#t_schedule td {
    border: 0.15rem solid black; }
  table#t_schedule thead {
    background-color: #f2f4f8;
    color: #dd29ba; }
  table#t_schedule tbody tr th {
    font-weight: normal;
    background-color: #f2f4f8; }
  table#t_schedule tbody tr.time {
    background-color: #fef9f7; }
  table#t_schedule td.l1 {
    background-color: rgba(0, 255, 0, 0.05); }
  table#t_schedule td.l2 {
    background-color: rgba(255, 255, 0, 0.05); }
  table#t_schedule td.l3 {
    background-color: rgba(255, 0, 0, 0.05); }
  table#t_schedule tbody tr.slot td {
    height: 6em;
    width: 10em;
    font-size: 1.0em; }
  table#t_schedule span {
    width: 100%;
    display: inline-block;
    text-align: center; }
  table#t_schedule div {
    display: inline-block;
    border: 0.15rem solid black; }
  table#t_schedule div:nth-child(1):before {
    display: block;
    content: "Small #1"; }
  table#t_schedule div:nth-child(2):before {
    display: block;
    content: "Small #2"; }
  table#t_schedule div:nth-child(3):before {
    display: block;
    content: "Main #1"; }
  table#t_schedule div:nth-child(4):before {
    display: block;
    content: "Main #1"; }
  table#t_schedule .hi_dis {
    background-color: rgba(255, 255, 0, 0.1); }

iframe.google_sheet {
  width: 100%;
  border: 1px solid;
  height: 60em;
  overflow: hidden; }
