*,
:before,
:after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
  min-width: 0
}

html {
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
  line-height: 1.15
}

body {
  margin: 0
}

main {
  display: block
}

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0
}

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

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none
}

dt {
  font-weight: 700
}

dd {
  margin-left: 0
}

hr {
  box-sizing: content-box;
  clear: both;
  height: 0;
  color: inherit;
  border-top-width: 1px;
  margin: 0;
  overflow: visible
}

pre {
  font-family: monospace;
  font-size: inherit
}

address {
  font-style: inherit
}

a {
  color: inherit;
  background-color: #0000;
  -webkit-text-decoration: none;
  text-decoration: none
}

abbr[title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted
}

b,
strong {
  font-weight: bolder
}

code,
kbd,
samp {
  font-family: monospace;
  font-size: inherit
}

small {
  font-size: 80%
}

sub,
sup {
  vertical-align: baseline;
  font-size: 75%;
  line-height: 0;
  position: relative
}

sub {
  bottom: -.25em
}

sup {
  top: -.5em
}

svg,
img,
embed,
object,
iframe {
  vertical-align: bottom
}

button,
input,
optgroup,
select,
textarea {
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  text-align: inherit;
  text-transform: inherit;
  background: 0 0;
  border-radius: 0;
  margin: 0;
  padding: 0
}

button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default
}

:-moz-focusring {
  outline: auto
}

select:disabled {
  opacity: inherit
}

option {
  padding: 0
}

fieldset {
  min-width: 0;
  margin: 0;
  padding: 0
}

legend {
  padding: 0
}

progress {
  vertical-align: baseline
}

textarea {
  overflow: auto
}

[type=number]::-webkit-inner-spin-button {
  height: auto
}

[type=number]::-webkit-outer-spin-button {
  height: auto
}

[type=search] {
  outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}

[type=number] {
  -moz-appearance: textfield
}

label[for] {
  cursor: pointer
}

details {
  display: block
}

summary {
  display: list-item
}

[contenteditable]:focus {
  outline: auto
}

table {
  border-color: inherit;
  border-collapse: collapse
}

caption {
  text-align: left
}

td,
th {
  vertical-align: top;
  padding: 0
}

th {
  text-align: left;
  font-weight: 700
}

html {
  scroll-behavior: smooth;
  scrollbar-gutter: stable;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  scroll-padding-top: 5rem;
  overflow-x: clip
}

html:has(body.is-scrollLock) {
  overflow-y: hidden
}

body {
  background-color: #fff;
  background-color: var(--c-background);
  color: var(--c-text);
  font-family: LINE Seed JP, sans-serif;
  font-weight: 400;
  line-height: 1.5;
  font-family: var(--f-default);
  letter-spacing: .025em;
  line-break: strict;
  word-wrap: anywhere;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: relative
}

body.is-scrollLock {
  overflow: hidden
}

img {
  vertical-align: middle;
  max-width: 100%;
  height: auto
}

picture {
  display: block
}

input,
button,
textarea {
  font-family: LINE Seed JP, sans-serif;
  font-family: var(--f-default)
}

.visually-hidden {
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  position: absolute !important;
  overflow: hidden !important
}

:root {
  --c-black: #000;
  --c-white: #fff;
  --c-background: var(--c-white);
  --c-text: #333;
  --c-yellow: #e19e1c;
  --c-main-100: #5972ca;
  --c-main-200: #072d5f;
  --c-bg-100: #c6f6f7;
  --c-bg-200: #75daec;
  --c-border: #9dc0d9;
  --c-tag-navy: #0072b2;
  --c-tag-orange: #e69f00;
  --c-tag-teal: #009e73;
  --c-tag-purple: #cc79a7;
  --c-tag-yellow: #f0e442;
  --c-btn: #0dc1fd;
  --c-link: var(--c-main-100);
  --c-link-hover: var(--c-main-200);
  --c-red: #e8433a;
  --c-blue-dark: #015ead;
  --c-sns-bg: #d2d3b0;
  --c-footer-bg: var(--c-main-200);
  --z-fixed: 1030;
  --z-modal: 1050;
  --f-default: "LINE Seed JP", sans-serif;
  --f-line-seed: "LINE Seed JP", sans-serif;
  --s-container-inline: 1.25rem;
  --s-container-block: 5rem
}

@media (width<=767.98px) {
  :root {
    --s-container-inline: 1.25rem;
    --s-container-block: 3.75rem
  }
}

@media (width>=768px) and (width<=1199.98px) {
  :root {
    --s-container-inline: 2.5rem
  }
}

@media (width>=1200px) {
  :root {
    --s-container-inline: max(2.5rem, calc((100vw - 77.5rem) / 2))
  }
}

.container {
  padding: 5rem 1.25rem;
  padding: var(--s-container-block) var(--s-container-inline)
}

@media (width<=767.98px) {
  .container {
    padding: 3.75rem 1.25rem;
    padding: 3.75rem var(--s-container-inline)
  }
}

.container_sm {
  padding: 3.75rem 1.25rem;
  padding: 3.75rem var(--s-container-inline)
}

.container_800 {
  width: 100%;
  max-width: 50rem;
  margin-left: auto;
  margin-right: auto
}

.section_title {
  color: var(--c-main-200);
  font-size: 3.375rem;
  font-weight: 700;
  line-height: 1
}

@media (width<=767.98px) {
  .section_title {
    font-size: 1.875rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.2
  }
}

.section_subtitle {
  color: var(--c-main-200);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5
}

.btn {
  color: var(--c-white);
  width: 25rem;
  height: 4.375rem;
  white-space: nowrap;
  background: linear-gradient(#36d0ff 0%, #05abdf 100%);
  border-radius: 2.5rem;
  justify-content: center;
  align-items: center;
  gap: .5rem;
  font-size: 1.25rem;
  font-weight: 700;
  -webkit-text-decoration: none;
  text-decoration: none;
  display: inline-flex;
  box-shadow: 0 .625rem .3125rem #5d71b866, inset 0 -.3125rem .75rem #00506e66, inset 0 .3125rem .625rem #ffffff8c
}

.btn img {
  flex-shrink: 0;
  width: 1rem;
  height: 1rem
}

@media (hover:hover) {
  .btn {
    transition: transform .15s ease-out, box-shadow .15s ease-out
  }

  .btn:hover {
    transform: translateY(.1875rem);
    box-shadow: 0 .25rem .1875rem #5d71b84d, inset 0 -.3125rem .75rem #00506e66, inset 0 .3125rem .625rem #ffffff8c
  }
}

@media (width<=767.98px) {
  .btn {
    width: 100%;
    max-width: 25rem;
    height: 3.75rem;
    font-size: 1rem
  }
}

.btn_sm {
  color: var(--c-white);
  width: fit-content;
  height: 2.6875rem;
  white-space: nowrap;
  background: linear-gradient(#36d0ff 0%, #05abdf 100%);
  border-radius: 2.5rem;
  justify-content: center;
  align-items: center;
  gap: .5rem;
  padding: .625rem 2.5rem;
  font-size: .875rem;
  font-weight: 700;
  line-height: 1;
  -webkit-text-decoration: none;
  text-decoration: none;
  display: inline-flex;
  box-shadow: 0 .375rem .3125rem #6f6c8a33, inset 0 -.25rem .625rem #00506e59, inset 0 .25rem .5rem #ffffff80
}

.btn_sm img {
  flex-shrink: 0;
  width: .875rem;
  height: .875rem
}

@media (hover:hover) {
  .btn_sm {
    transition: transform .15s ease-out, box-shadow .15s ease-out
  }

  .btn_sm:hover {
    transform: translateY(.125rem);
    box-shadow: 0 .125rem .125rem #6f6c8a26, inset 0 -.25rem .625rem #00506e59, inset 0 .25rem .5rem #ffffff80
  }
}

.visually_hidden {
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden
}

@media (width<=991.98px) {
  .pc_only {
    display: none !important
  }
}

@media (width>=992px) {
  .sp_only {
    display: none !important
  }
}

@media (width<=767.98px) {
  .pc_tab_only {
    display: none !important
  }
}

@media (width>=992px) {
  .tab_only {
    display: none !important
  }
}

@media (width<=767.98px) {
  .tab_only {
    display: none !important
  }
}

.programs_difficulty_note {
  border: .0625rem solid #9dc0d9;
  border: .0625rem solid var(--c-border);
  background: #fff6;
  border-radius: .5rem;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  padding: 1rem 1.25rem
}

.programs_difficulty_note .programs_difficulty_note_title {
  margin-bottom: .75rem;
  font-size: .75rem;
  font-weight: 700
}

.programs_difficulty_note .programs_difficulty_note_list {
  flex-direction: column;
  gap: .5rem;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex
}

.programs_difficulty_note .programs_difficulty_note_item {
  align-items: flex-start;
  gap: .8rem;
  font-size: .75rem;
  line-height: 1.5;
  display: flex
}

.programs_difficulty_note .programs_difficulty_note_stars {
  flex-shrink: 0;
  align-items: center;
  gap: .125rem;
  margin-top: .05rem;
  line-height: 1;
  display: flex
}

.programs_difficulty_note .programs_difficulty_note_stars img {
  width: .875rem;
  height: .875rem;
  display: block
}

main {
  position: relative;
  container-type: inline-size
}

.shapedividers_com-3579 {
  position: relative;
  overflow: hidden;
  container-type: inline-size
}

.shapedividers_com-3579:before {
  z-index: 3;
  pointer-events: none;
  content: "";
  background-image: url("data:image/svg+xml;charset=utf8, <svg preserveAspectRatio=\"xMidYMin slice\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 2001 77\"><g fill=\"%23acecf1\"><path opacity=\".5\" d=\"M1993 31v22l-19 11-19-11V31l19-11 19 11zM1942 6v11l-10 5-10-5V6l10-6 10 6z\"/><path opacity=\".75\" d=\"M1961 25v16l-14 8-14-8V25l14-8 14 8zM1969 8v8l-7 4-6-4V8l6-4 7 4z\"/><path opacity=\".5\" d=\"M1871 31v22l19 11 19-11V31l-19-11-19 11z\"/><path opacity=\".75\" d=\"M1903 25v16l14 8 14-8V25l-14-8-14 8zM1895 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M1855 31v22l-19 11-19-11V31l19-11 19 11zM1803 6v11l-9 5-10-5V6l10-6 9 6z\"/><path opacity=\".75\" d=\"M1823 25v16l-14 8-14-8V25l14-8 14 8zM1831 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M1733 31v22l19 11 19-11V31l-19-11-19 11z\"/><path opacity=\".75\" d=\"M1765 25v16l14 8 14-8V25l-14-8-14 8zM1757 8v8l6 4 7-4V8l-7-4-6 4z\"/><path opacity=\".5\" d=\"M1717 31v22l-19 11-19-11V31l19-11 19 11zM1665 6v11l-9 5-10-5V6l10-6 9 6z\"/><path opacity=\".75\" d=\"M1685 25v16l-14 8-14-8V25l14-8 14 8zM1693 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M1594 31v22l19 11 20-11V31l-20-11-19 11z\"/><path opacity=\".75\" d=\"M1626 25v16l14 8 15-8V25l-15-8-14 8zM1618 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M1579 31v22l-19 11-20-11V31l20-11 19 11zM1527 6v11l-10 5-9-5V6l9-6 10 6z\"/><path opacity=\".75\" d=\"M1547 25v16l-14 8-15-8V25l15-8 14 8zM1555 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M1456 31v22l19 11 19-11V31l-19-11-19 11z\"/><path opacity=\".75\" d=\"M1488 25v16l14 8 14-8V25l-14-8-14 8zM1480 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M1441 31v22l-20 11-19-11V31l19-11 20 11zM1389 6v11l-10 5-9-5V6l9-6 10 6z\"/><path opacity=\".75\" d=\"M1408 25v16l-14 8-14-8V25l14-8 14 8zM1416 8v8l-6 4-7-4V8l7-4 6 4z\"/><path opacity=\".5\" d=\"M1318 31v22l19 11 19-11V31l-19-11-19 11z\"/><path opacity=\".75\" d=\"M1350 25v16l14 8 14-8V25l-14-8-14 8zM1342 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M1302 31v22l-19 11-19-11V31l19-11 19 11zM1251 6v11l-10 5-10-5V6l10-6 10 6z\"/><path opacity=\".75\" d=\"M1270 25v16l-14 8-14-8V25l14-8 14 8zM1278 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M1180 31v22l19 11 19-11V31l-19-11-19 11z\"/><path opacity=\".75\" d=\"M1212 25v16l14 8 14-8V25l-14-8-14 8zM1204 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M1164 31v22l-19 11-19-11V31l19-11 19 11zM1112 6v11l-9 5-10-5V6l10-6 9 6z\"/><path opacity=\".75\" d=\"M1132 25v16l-14 8-14-8V25l14-8 14 8zM1140 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M1041 31v22l20 11 19-11V31l-19-11-20 11z\"/><path opacity=\".75\" d=\"M1074 25v16l14 8 14-8V25l-14-8-14 8zM1066 8v8l6 4 7-4V8l-7-4-6 4z\"/><path opacity=\".5\" d=\"M1026 31v22l-19 11-20-11V31l20-11 19 11zM974 6v11l-9 5-10-5V6l10-6 9 6z\"/><path opacity=\".75\" d=\"M994 25v16l-14 8-14-8V25l14-8 14 8zM1002 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M903 31v22l19 11 20-11V31l-20-11-19 11z\"/><path opacity=\".75\" d=\"M935 25v16l14 8 15-8V25l-15-8-14 8zM927 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M888 31v22l-20 11-19-11V31l19-11 20 11zM836 6v11l-10 5-9-5V6l9-6 10 6z\"/><path opacity=\".75\" d=\"M856 25v16l-15 8-14-8V25l14-8 15 8zM864 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M765 31v22l19 11 19-11V31l-19-11-19 11z\"/><path opacity=\".75\" d=\"M797 25v16l14 8 14-8V25l-14-8-14 8zM789 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M749 31v22l-19 11-19-11V31l19-11 19 11zM698 6v11l-10 5-9-5V6l9-6 10 6z\"/><path opacity=\".75\" d=\"M717 25v16l-14 8-14-8V25l14-8 14 8zM725 8v8l-7 4-6-4V8l6-4 7 4z\"/><path opacity=\".5\" d=\"M627 31v22l19 11 19-11V31l-19-11-19 11z\"/><path opacity=\".75\" d=\"M659 25v16l14 8 14-8V25l-14-8-14 8zM651 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M611 31v22l-19 11-19-11V31l19-11 19 11zM560 6v11l-10 5-10-5V6l10-6 10 6z\"/><path opacity=\".75\" d=\"M579 25v16l-14 8-14-8V25l14-8 14 8zM587 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M489 31v22l19 11 19-11V31l-19-11-19 11z\"/><path opacity=\".75\" d=\"M521 25v16l14 8 14-8V25l-14-8-14 8zM513 8v8l7 4 6-4V8l-6-4-7 4z\"/><path opacity=\".5\" d=\"M473 31v22l-19 11-19-11V31l19-11 19 11zM421 6v11l-9 5-10-5V6l10-6 9 6z\"/><path opacity=\".75\" d=\"M441 25v16l-14 8-14-8V25l14-8 14 8zM449 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M350 31v22l20 11 19-11V31l-19-11-20 11z\"/><path opacity=\".75\" d=\"M382 25v16l15 8 14-8V25l-14-8-15 8zM374 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M335 31v22l-19 11-20-11V31l20-11 19 11zM283 6v11l-10 5-9-5V6l9-6 10 6z\"/><path opacity=\".75\" d=\"M303 25v16l-14 8-14-8V25l14-8 14 8zM311 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M212 31v22l19 11 20-11V31l-20-11-19 11z\"/><path opacity=\".75\" d=\"M244 25v16l14 8 14-8V25l-14-8-14 8zM236 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M197 31v22l-20 11-19-11V31l19-11 20 11zM145 6v11l-10 5-9-5V6l9-6 10 6z\"/><path opacity=\".75\" d=\"M164 25v16l-14 8-14-8V25l14-8 14 8zM173 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M74 31v22l19 11 19-11V31L93 20 74 31z\"/><path opacity=\".3\" d=\"M53 9v15l13 7 13-7V9L66 1 53 9zM191 9v15l13 7 13-7V9l-13-8-13 8zM330 9v15l13 7 13-7V9l-13-8-13 8zM468 9v15l13 7 13-7V9l-13-8-13 8zM606 9v15l13 7 13-7V9l-13-8-13 8zM744 9v15l13 7 13-7V9l-13-8-13 8zM883 9v15l12 7 13-7V9l-13-8-12 8zM1021 9v15l13 7 13-7V9l-13-8-13 8zM1159 9v15l13 7 13-7V9l-13-8-13 8zM1297 9v15l13 7 13-7V9l-13-8-13 8zM1435 9v15l13 7 13-7V9l-13-8-13 8zM1574 9v15l13 7 12-7V9l-12-8-13 8zM1712 9v15l13 7 13-7V9l-13-8-13 8zM1850 9v15l13 7 13-7V9l-13-8-13 8z\"/><path opacity=\".75\" d=\"M106 25v16l14 8 14-8V25l-14-8-14 8zM98 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M58 31v22L39 64 20 53V31l19-11 19 11z\"/><path opacity=\".75\" d=\"M34 8v8l-7 4-6-4V8l6-4 7 4z\"/><path d=\"M2001 77V62l-21-12-24 14-23-14-23 14-24-14-23 14-23-14-23 14-24-14-23 14-23-14-24 14-23-14-23 14-23-14-24 14-23-14-23 14-24-14-23 14-23-14-23 14-24-14-23 14-23-14-24 14-23-14-23 14-23-14-24 14-23-14-23 14-24-14-23 14-23-14-23 14-24-14-23 14-23-14-24 14-23-14-23 14-23-14-24 14-23-14-23 14-24-14-23 14-23-14-24 14-23-14-23 14-23-14-24 14-23-14-23 14-24-14-23 14-23-14-23 14-24-14-23 14-23-14-24 14-23-14-23 14-23-14-24 14-23-14-23 14-24-14-23 14-23-14-24 14-23-14-23 14-23-14-24 14-23-14-23 14-24-14-23 14-23-14-23 14-24-14L0 64v13h2001z\"/><path opacity=\".75\" d=\"M12 49L0 42V23l12-6 14 8v16l-14 8z\"/><path opacity=\".3\" d=\"M2001 31l-13-7V9l13-8v30z\"/></g></svg>");
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: 100% min(6.875cqw, 8rem);
  position: absolute;
  inset: -.1vw
}

@media (width<=767.98px) {
  .shapedividers_com-3579:before {
    background-size: 100% 3.75rem
  }
}

.page_mv {
  align-items: center;
  height: 20.75rem;
  display: flex;
  position: relative;
  overflow: hidden
}

@media (width<=991.98px) {
  .page_mv {
    height: 14rem
  }
}

@media (width<=767.98px) {
  .page_mv {
    height: 9.5rem
  }
}

.page_mv .page_mv_bg {
  position: absolute;
  inset: 0
}

.page_mv .page_mv_bg picture {
  width: 100%;
  height: 100%;
  display: block
}

.page_mv .page_mv_bg img {
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  width: 100%;
  height: 100%
}

.page_mv .page_mv_inner {
  z-index: 1;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-left: var(--s-container-inline);
  padding-right: var(--s-container-inline);
  width: 100%;
  margin-top: -4rem;
  margin-left: auto;
  margin-right: auto;
  position: relative
}

@media (width<=991.98px) {
  .page_mv .page_mv_inner {
    margin-top: -1.5rem
  }
}

@media (width<=767.98px) {
  .page_mv .page_mv_inner {
    margin-top: -2.25rem
  }
}

.page_mv .page_mv_en {
  color: var(--c-white);
  text-shadow: 0 .625rem .625rem #773f6366;
  font-size: 4.75rem;
  font-weight: 700;
  line-height: 1
}

@media (width<=991.98px) {
  .page_mv .page_mv_en {
    font-size: 2.75rem
  }
}

@media (width<=767.98px) {
  .page_mv .page_mv_en {
    font-size: 2rem
  }
}

.page_mv .page_mv_ja {
  color: var(--c-white);
  text-shadow: 0 .325rem .325rem #773f6366;
  margin-top: .75rem;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1
}

@media (width<=991.98px) {
  .page_mv .page_mv_ja {
    font-size: .875rem
  }
}

@media (width<=767.98px) {
  .page_mv .page_mv_ja {
    margin-top: .5rem;
    font-size: .875rem
  }
}

.site_header {
  z-index: 1030;
  z-index: var(--z-fixed);
  background-color: #fff;
  background-color: var(--c-white);
  width: 100%;
  position: sticky;
  top: 0;
  overflow: visible;
  box-shadow: 0 .0625rem .25rem #0000000f;
  container-type: inline-size
}

.site_header .site_header_inner {
  justify-content: space-between;
  align-items: center;
  max-width: 90rem;
  height: max(4rem, min(5.556cqw, 5rem));
  margin-left: auto;
  margin-right: auto;
  padding-left: max(1rem, min(1.667cqw, 1.5rem));
  padding-right: max(1rem, min(1.667cqw, 1.5rem));
  display: flex
}

@media (width<=991.98px) {
  .site_header .site_header_inner {
    height: auto;
    padding: .5rem .625rem
  }
}

.site_header .site_header_logo {
  align-items: center;
  gap: max(.75rem, min(1.389cqw, 1.25rem));
  display: flex
}

@media (width<=991.98px) {
  .site_header .site_header_logo {
    gap: .5rem
  }
}

.site_header .site_header_logo_sa {
  width: max(8rem, min(12.847cqw, 11.5625rem));
  height: auto;
  display: block
}

@media (hover:hover) {
  .site_header .site_header_logo_sa {
    transition: scale .2s ease-out
  }

  .site_header .site_header_logo_sa:hover {
    scale: 1.03
  }
}

@media (width<=991.98px) {
  .site_header .site_header_logo_sa {
    width: 6.9375rem
  }
}

.site_header .site_header_logo_jst {
  width: max(7rem, min(11.458cqw, 10.3125rem));
  height: auto;
  display: block
}

@media (hover:hover) {
  .site_header .site_header_logo_jst {
    transition: scale .2s ease-out
  }

  .site_header .site_header_logo_jst:hover {
    scale: 1.03
  }
}

@media (width<=991.98px) {
  .site_header .site_header_logo_jst {
    width: 6.9375rem
  }
}

.site_header .site_header_nav {
  align-items: center;
  gap: max(.25rem, min(.556cqw, .5rem));
  display: flex
}

@media (width<=991.98px) {
  .site_header .site_header_nav {
    display: none
  }
}

.site_header .site_header_nav_list {
  align-items: center;
  list-style: none;
  display: flex
}

.site_header .site_header_nav_item a {
  color: var(--c-text);
  white-space: nowrap;
  justify-content: center;
  align-items: center;
  padding: max(.4rem, min(.722cqw, .65rem));
  font-size: max(.75rem, min(.972cqw, .875rem));
  font-weight: 700;
  line-height: 1;
  -webkit-text-decoration: none;
  text-decoration: none;
  display: flex
}

@media (hover:hover) {
  .site_header .site_header_nav_item a {
    transition: color .2s ease-out
  }

  .site_header .site_header_nav_item a:hover {
    color: var(--c-main-100)
  }
}

.site_header .site_header_search {
  background-color: #0dc1fd;
  background-color: var(--c-btn);
  color: var(--c-white);
  white-space: nowrap;
  border-radius: 1.5rem;
  align-items: center;
  gap: max(.2rem, min(.278cqw, .25rem));
  padding: max(.5rem, min(.833cqw, .75rem)) max(.6rem, min(1.111cqw, 1rem));
  font-size: max(.75rem, min(.972cqw, .875rem));
  font-weight: 700;
  line-height: 1;
  -webkit-text-decoration: none;
  text-decoration: none;
  display: flex;
  box-shadow: 0 .25rem .125rem #c9cbd2cc, inset 0 -.25rem .625rem #21627ab3, inset 0 .25rem .25rem #f7feffcc
}

.site_header .site_header_search img {
  flex-shrink: 0;
  width: max(1rem, min(1.389cqw, 1.25rem));
  height: max(1rem, min(1.389cqw, 1.25rem))
}

@media (hover:hover) {
  .site_header .site_header_search {
    transition: transform .15s ease-out, box-shadow .15s ease-out
  }

  .site_header .site_header_search:hover {
    transform: translateY(.125rem);
    box-shadow: 0 .125rem .0625rem #c9cbd299, inset 0 -.25rem .625rem #21627ab3, inset 0 .25rem .25rem #f7feffcc
  }
}

.site_header_search {
  cursor: pointer;
  background: 0 0;
  border: none
}

.gsc-modal-background-image {
  pointer-events: none !important
}

.site_header_search_panel {
  z-index: calc(1030 + 1);
  z-index: calc(var(--z-fixed) + 1);
  -webkit-backdrop-filter: blur(.3125rem);
  backdrop-filter: blur(.3125rem);
  background-color: #201a3980;
  flex-direction: column;
  align-items: center;
  gap: .75rem;
  padding: 1rem 1.25rem 2rem;
  display: none;
  position: fixed;
  inset: max(4rem, min(5.556vw, 5rem)) 0 0;
  overflow: hidden
}

@media (width<=991.98px) {
  .site_header_search_panel {
    padding-top: .75rem;
    top: 3.25rem
  }
}

body.is_search_open .site_header_search_panel {
  display: flex
}

.site_header_search_panel .gcse-search {
  width: 100%;
  max-width: 50rem
}

.site_header_search_panel .gsc-control-cse {
  background: 0 0 !important;
  border: none !important;
  padding: 0 !important
}

@media (width<=991.98px) {
  .site_header_search_panel .gsc-control-cse {
    width: 100% !important
  }
}

.site_header_search_panel form.gsc-search-box {
  position: absolute !important;
  top: -624.938rem !important;
  left: -624.938rem !important
}

.site_header_search_panel .gsc-above-wrapper-area {
  display: none !important
}

.site_header_search_panel .gsc-results-wrapper-overlay {
  transition: none !important;
  animation: none !important
}

.site_header_search_panel .gsc-results-wrapper-visible {
  background: #fff;
  background: var(--c-white);
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-y: contain;
  touch-action: pan-y;
  border-radius: .625rem;
  max-height: calc(100dvh - max(4rem, min(5.556vw, 5rem)) - 10.75rem);
  overflow-y: auto;
  margin-top: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  transition: none !important;
  animation: none !important;
  left: 0 !important;
  right: 0 !important
}

@media (width<=991.98px) {
  .site_header_search_panel .gsc-results-wrapper-visible {
    max-height: calc(100dvh - 9.25rem)
  }
}

.site_header_search_panel .gsc-branding,
.site_header_search_panel .gcsc-branding-clickable,
.site_header_search_panel.is_results_collapsed .gsc-results-wrapper-visible,
.site_header_search_panel.is_results_collapsed .gsc-modal-background-image {
  display: none !important
}

.site_header_search_panel_form {
  border: .0625rem solid #9dc0d9;
  border: .0625rem solid var(--c-border);
  background: #fff;
  background: var(--c-white);
  border-radius: .625rem;
  align-items: center;
  gap: .75rem;
  width: 100%;
  max-width: 50rem;
  height: 3.25rem;
  padding-left: 1rem;
  padding-right: 1rem;
  display: flex;
  box-shadow: 0 .25rem .75rem #0000001a
}

.site_header_search_panel_submit {
  cursor: pointer;
  background: 0 0;
  border: none;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  padding: 0;
  display: flex
}

.site_header_search_panel_submit img {
  filter: brightness(0)opacity(.45);
  width: 1.25rem;
  height: 1.25rem
}

@media (hover:hover) {
  .site_header_search_panel_submit:hover img {
    opacity: .7
  }
}

.site_header_search_panel_input {
  color: var(--c-text);
  min-width: 0;
  background: 0 0;
  border: none;
  outline: none;
  flex: 1;
  align-self: stretch;
  font-size: 1rem
}

.site_header_search_panel_input::placeholder {
  color: #aaa
}

.site_header_search_panel_input::-webkit-search-cancel-button {
  appearance: none
}

.site_header_search_panel_clear {
  cursor: pointer;
  color: #aaa;
  background: 0 0;
  border: none;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  padding: 0;
  font-size: 1.5rem;
  line-height: 1;
  display: none
}

.site_header_search_panel_form:has(.site_header_search_panel_input:not(:-moz-placeholder-shown)) .site_header_search_panel_clear {
  display: flex
}

.site_header_search_panel_form:has(.site_header_search_panel_input:not(:placeholder-shown)) .site_header_search_panel_clear {
  display: flex
}

@media (hover:hover) {
  .site_header_search_panel_clear:hover {
    color: var(--c-text)
  }
}

.site_header_search_panel_close {
  cursor: pointer;
  background: #0dc1fd;
  background: var(--c-btn);
  color: var(--c-white);
  white-space: nowrap;
  border: none;
  border-radius: 1.5rem;
  justify-content: center;
  align-items: center;
  gap: .375rem;
  padding: max(.75rem, min(1.111vw, 1rem)) 1.25rem;
  font-size: max(.75rem, min(.972vw, .875rem));
  font-weight: 700;
  line-height: 1;
  display: flex;
  box-shadow: 0 .25rem .375rem #00000040, inset 0 -.25rem .625rem #21627ab3, inset 0 .25rem .25rem #f7feffcc
}

@media (hover:hover) {
  .site_header_search_panel_close {
    transition: transform .15s ease-out, box-shadow .15s ease-out
  }

  .site_header_search_panel_close:hover {
    transform: translateY(.125rem);
    box-shadow: 0 .125rem .125rem #0000002e, inset 0 -.25rem .625rem #21627ab3, inset 0 .25rem .25rem #f7feffcc
  }
}

.hamburger_search_results {
  opacity: 0;
  z-index: calc(1030 + 2);
  z-index: calc(var(--z-fixed) + 2);
  pointer-events: none;
  flex-direction: column;
  align-items: stretch;
  gap: .625rem;
  padding: .75rem .625rem 1.5rem;
  transition: opacity .15s;
  display: flex;
  position: fixed;
  inset: 3.25rem 0 0;
  overflow: hidden
}

body.is_hamburger_search .hamburger_search_results {
  opacity: 1;
  pointer-events: auto
}

.hamburger_search_results .gcse-search {
  width: 100%
}

.hamburger_search_results .gsc-control-cse {
  background: 0 0 !important;
  border: none !important;
  width: 100% !important;
  padding: 0 !important
}

.hamburger_search_results form.gsc-search-box {
  position: absolute !important;
  top: -624.938rem !important;
  left: -624.938rem !important
}

.hamburger_search_results .gsc-above-wrapper-area {
  display: none !important
}

.hamburger_search_results .gsc-results-wrapper-overlay {
  transition: none !important;
  animation: none !important
}

.hamburger_search_results .gsc-results-wrapper-visible {
  background: #fff;
  background: var(--c-white);
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-y: contain;
  touch-action: pan-y;
  border-radius: .625rem;
  max-height: calc(100dvh - 5.5rem);
  overflow-y: auto;
  margin-top: 0 !important;
  transition: none !important;
  animation: none !important
}

.hamburger_search_results .gsc-branding,
.hamburger_search_results .gcsc-branding-clickable {
  display: none !important
}

.site_header_actions {
  align-items: center;
  display: none
}

@media (width<=991.98px) {
  .site_header_actions {
    display: flex
  }
}

.hamburger {
  cursor: pointer;
  background: #0dc1fd;
  background: var(--c-btn);
  border: none;
  border-radius: 1.5rem;
  flex-direction: column;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  gap: .25rem;
  width: 3rem;
  height: 2.25rem;
  display: none;
  box-shadow: 0 .25rem .125rem #c9cbd2cc, inset 0 -.25rem .625rem #21627ab3, inset 0 .25rem .25rem #f7feffcc
}

@media (width<=991.98px) {
  .hamburger {
    display: flex
  }
}

@media (hover:hover) {
  .hamburger {
    transition: transform .15s ease-out, box-shadow .15s ease-out
  }

  .hamburger:hover {
    transform: translateY(.125rem);
    box-shadow: 0 .125rem .0625rem #c9cbd299, inset 0 -.25rem .625rem #21627ab3, inset 0 .25rem .25rem #f7feffcc
  }
}

body.is_hamburger_search .hamburger {
  opacity: .4;
  pointer-events: none
}

.hamburger_bar {
  background-color: #fff;
  background-color: var(--c-white);
  border-radius: .0625rem;
  width: 1rem;
  height: .125rem;
  transition: transform .25s, opacity .25s;
  display: block
}

.hamburger.is_open .hamburger_bar:first-child {
  transform: translateY(.375rem)rotate(45deg)
}

.hamburger.is_open .hamburger_bar:nth-child(2) {
  opacity: 0
}

.hamburger.is_open .hamburger_bar:nth-child(3) {
  transform: translateY(-.375rem)rotate(-45deg)
}

body.is_search_open {
  overflow: hidden
}

body:has(.hamburger.is_open) {
  overflow: hidden
}

body:has(.hamburger.is_open) .site_header {
  width: 100%;
  position: fixed;
  top: 0
}

body.is_search_open:not(.does-not-exist) .site_header {
  width: 100%;
  position: fixed;
  top: 0
}

.hamburger_menu {
  z-index: calc(1030 - 1);
  z-index: calc(var(--z-fixed) - 1);
  display: none;
  position: fixed;
  inset: 0
}

body:has(.hamburger.is_open) .hamburger_menu {
  display: block
}

.hamburger_menu_overlay {
  -webkit-backdrop-filter: blur(.3125rem);
  backdrop-filter: blur(.3125rem);
  background: #201a3980;
  position: absolute;
  inset: 0
}

.hamburger_menu_panel {
  z-index: 1;
  background: #fff;
  background: var(--c-white);
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-y: contain;
  border-radius: 0 0 1.25rem 1.25rem;
  flex-direction: column;
  gap: .625rem;
  max-height: calc(100dvh - 3.25rem);
  padding: .625rem .625rem 1.25rem;
  display: flex;
  position: absolute;
  top: 3.25rem;
  left: 0;
  right: 0;
  overflow-y: auto
}

.hamburger_menu_panel > nav {
  flex-shrink: 0
}

.hamburger_menu_search {
  border: .0625rem solid #9dc0d9;
  border: .0625rem solid var(--c-border);
  background: #f1f4ff;
  border-radius: .375rem;
  flex-shrink: 0;
  align-items: center;
  gap: .75rem;
  height: 3.75rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  display: flex
}

.hamburger_menu_search img {
  filter: invert(38%)sepia(10%)saturate(600%)hue-rotate(202deg);
  flex-shrink: 0
}

.hamburger_menu_search input {
  color: var(--c-text);
  min-width: 0;
  background: 0 0;
  border: none;
  outline: none;
  flex: 1;
  align-self: stretch;
  font-size: 1rem
}

.hamburger_menu_search input::placeholder {
  color: #aaa
}

.hamburger_menu_search input::-webkit-search-cancel-button {
  appearance: none
}

.hamburger_menu_search_clear {
  cursor: pointer;
  color: #aaa;
  background: 0 0;
  border: none;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  padding: 0;
  font-size: 1.5rem;
  line-height: 1;
  display: none
}

.hamburger_menu_search:has(.hamburger_menu_search_input:not(:-moz-placeholder-shown)) .hamburger_menu_search_clear {
  display: flex
}

.hamburger_menu_search:has(.hamburger_menu_search_input:not(:placeholder-shown)) .hamburger_menu_search_clear {
  display: flex
}

.hamburger_menu_nav {
  list-style: none
}

.hamburger_menu_nav_link {
  border-bottom: .0625rem solid #9dc0d9;
  border-bottom: .0625rem solid var(--c-border);
  color: #201a39;
  align-items: center;
  width: 100%;
  padding: 1.25rem .625rem;
  font-size: .875rem;
  font-weight: 500;
  line-height: 1;
  -webkit-text-decoration: none;
  text-decoration: none;
  display: flex
}

@media (hover:hover) {
  .hamburger_menu_nav_link {
    transition: color .2s ease-out
  }

  .hamburger_menu_nav_link:hover {
    color: var(--c-main-100)
  }
}

.hamburger_menu_nav > li:last-child .hamburger_menu_nav_link {
  border-bottom: none
}

picture:has(.home_deco_robot) {
  top: -5rem;
  right: 1.875rem;
  right: calc(var(--s-container-inline) + .625rem);
  width: 8vw;
  max-width: 8.5rem;
  position: absolute
}

@media (width>=768px) and (width<=1199.98px) {
  picture:has(.home_deco_robot) {
    width: 12vw;
    max-width: 6.5rem;
    top: -4.5rem;
    right: 3vw
  }
}

@media (width<=767.98px) {
  picture:has(.home_deco_robot) {
    width: 15.5vw;
    max-width: 5rem;
    top: -2.5rem;
    left: 83vw
  }
}

.home_deco_robot {
  width: 100%;
  height: auto;
  display: block
}

.site_footer {
  background-color: #072d5f;
  background-color: var(--c-footer-bg);
  padding: 7.5rem 1.25rem;
  padding: 7.5rem var(--s-container-inline);
  color: var(--c-white);
  flex-direction: column;
  gap: 1.875rem;
  display: flex;
  position: relative
}

@media (width<=767.98px) {
  .site_footer {
    padding: 3.75rem 1.25rem;
    padding: 3.75rem var(--s-container-inline)
  }
}

.site_footer .site_footer_inner {
  justify-content: space-between;
  align-items: flex-start;
  gap: 2rem;
  display: flex
}

@media (width<=991.98px) {
  .site_footer .site_footer_inner {
    flex-direction: column;
    gap: 1.875rem
  }
}

.site_footer .site_footer_left {
  flex-direction: column;
  flex: 1;
  gap: 1.5rem;
  display: flex
}

.site_footer .site_footer_logo {
  width: fit-content;
  display: block
}

@media (hover:hover) {
  .site_footer .site_footer_logo {
    transition: scale .2s ease-out
  }

  .site_footer .site_footer_logo:hover {
    scale: 1.03
  }
}

.site_footer .site_footer_logo img {
  width: 15rem;
  height: auto
}

@media (width<=767.98px) {
  .site_footer .site_footer_logo img {
    width: 11.25rem
  }
}

.site_footer .site_footer_nav_list {
  grid-column-gap: 1.25rem;
  -moz-column-gap: 1.25rem;
  grid-template-rows: repeat(2, auto);
  grid-template-columns: repeat(3, auto);
  justify-content: start;
  column-gap: 1.25rem;
  list-style: none;
  display: grid
}

@media (width<=1199.98px) {
  .site_footer .site_footer_nav_list {
    grid-template-rows: repeat(3, auto);
    grid-template-columns: repeat(2, auto)
  }
}

@media (width<=767.98px) {
  .site_footer .site_footer_nav_list {
    grid-template-columns: repeat(2, 1fr)
  }
}

.site_footer .site_footer_nav_item a {
  color: var(--c-white);
  white-space: nowrap;
  align-items: center;
  padding: .75rem;
  font-size: .875rem;
  font-weight: 700;
  line-height: 1;
  -webkit-text-decoration: none;
  text-decoration: none;
  display: flex
}

@media (hover:hover) {
  .site_footer .site_footer_nav_item a {
    transition: opacity .2s ease-out
  }

  .site_footer .site_footer_nav_item a:hover {
    opacity: .75
  }
}

@media (width<=767.98px) {
  .site_footer .site_footer_nav_item a {
    white-space: normal;
    padding: .5rem
  }
}

.site_footer .site_footer_contact {
  background-color: #fff3;
  border-radius: .5rem;
  flex-direction: column;
  flex: 0 auto;
  gap: .25rem;
  min-width: 0;
  padding: 1.5rem 2rem;
  display: flex
}

@media (width<=991.98px) {
  .site_footer .site_footer_contact {
    width: 100%
  }
}

@media (width<=767.98px) {
  .site_footer .site_footer_contact {
    gap: .625rem;
    padding: 1rem 1.5rem
  }
}

.site_footer .site_footer_contact_header {
  flex-direction: column;
  gap: .25rem;
  display: flex
}

.site_footer .site_footer_contact_title {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5
}

@media (width<=767.98px) {
  .site_footer .site_footer_contact_title {
    font-size: 1rem
  }
}

.site_footer .site_footer_contact_office {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5
}

.site_footer .site_footer_contact_office br {
  display: none
}

@media (width<=1199.98px) {
  .site_footer .site_footer_contact_office br {
    display: inline
  }
}

@media (width<=767.98px) {
  .site_footer .site_footer_contact_office {
    font-size: .875rem
  }
}

.site_footer .site_footer_contact_rows {
  flex-direction: column;
  gap: .25rem;
  display: flex
}

.site_footer .site_footer_contact_row {
  align-items: center;
  gap: .5rem;
  display: flex
}

.site_footer .site_footer_contact_label {
  border: .0625rem solid #fff;
  border: .0625rem solid var(--c-white);
  white-space: nowrap;
  border-radius: .3125rem;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  padding: .3125rem .375rem;
  font-size: .6875rem;
  font-weight: 700;
  line-height: 1;
  display: inline-flex
}

.site_footer .site_footer_contact_value {
  word-break: break-all;
  font-size: .875rem;
  font-weight: 700;
  line-height: 1.5
}

@media (width<=767.98px) {
  .site_footer .site_footer_contact_value {
    font-size: .75rem
  }
}

.site_footer .site_footer_contact_hours {
  font-size: .75rem;
  font-weight: 700;
  line-height: 1.5
}

.site_footer .site_footer_contact_hours br {
  display: none
}

@media (width<=767.98px) {
  .site_footer .site_footer_contact_hours br {
    display: inline
  }
}

.site_footer .site_footer_sns {
  gap: 1.25rem;
  display: flex
}

.site_footer .site_footer_sns_item {
  background-color: #fff;
  background-color: var(--c-white);
  border-radius: 1.5rem;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  -webkit-text-decoration: none;
  text-decoration: none;
  transition: opacity .2s;
  display: flex
}

@media (hover:hover) {
  .site_footer .site_footer_sns_item:hover {
    opacity: .85
  }
}

.site_footer .site_footer_bottom {
  border-top: .0625rem solid #cacaca33;
  justify-content: space-between;
  align-items: center;
  padding-top: 1.875rem;
  display: flex
}

@media (width<=991.98px) {
  .site_footer .site_footer_bottom {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.875rem;
    padding-top: 1.25rem
  }
}

.site_footer .site_footer_policy_list {
  flex-wrap: wrap;
  list-style: none;
  display: flex
}

@media (width<=767.98px) {
  .site_footer .site_footer_policy_list {
    flex-direction: column
  }
}

.site_footer .site_footer_policy_item a {
  color: var(--c-white);
  white-space: nowrap;
  align-items: center;
  gap: .25rem;
  padding: .75rem .75rem .75rem 0;
  font-size: .75rem;
  font-weight: 700;
  line-height: 1;
  -webkit-text-decoration: none;
  text-decoration: none;
  display: flex
}

@media (hover:hover) {
  .site_footer .site_footer_policy_item a {
    transition: opacity .2s ease-out
  }

  .site_footer .site_footer_policy_item a:hover {
    opacity: .75
  }
}

@media (width<=767.98px) {
  .site_footer .site_footer_policy_item a {
    padding: .625rem 0
  }
}

.site_footer .site_footer_copyright {
  white-space: nowrap;
  font-size: .75rem;
  font-weight: 400;
  line-height: 1
}

.shapedividers_com-1603 {
  position: relative;
  overflow: clip
}

.shapedividers_com-1603:before {
  z-index: 3;
  pointer-events: none;
  content: "";
  background-image: url("data:image/svg+xml;charset=utf8, <svg preserveAspectRatio=\"xMidYMin slice\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 2001 77\"><g fill=\"%23c6ecf7\"><path opacity=\".5\" d=\"M1993 31v22l-19 11-19-11V31l19-11 19 11zM1942 6v11l-10 5-10-5V6l10-6 10 6z\"/><path opacity=\".75\" d=\"M1961 25v16l-14 8-14-8V25l14-8 14 8zM1969 8v8l-7 4-6-4V8l6-4 7 4z\"/><path opacity=\".5\" d=\"M1871 31v22l19 11 19-11V31l-19-11-19 11z\"/><path opacity=\".75\" d=\"M1903 25v16l14 8 14-8V25l-14-8-14 8zM1895 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M1855 31v22l-19 11-19-11V31l19-11 19 11zM1803 6v11l-9 5-10-5V6l10-6 9 6z\"/><path opacity=\".75\" d=\"M1823 25v16l-14 8-14-8V25l14-8 14 8zM1831 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M1733 31v22l19 11 19-11V31l-19-11-19 11z\"/><path opacity=\".75\" d=\"M1765 25v16l14 8 14-8V25l-14-8-14 8zM1757 8v8l6 4 7-4V8l-7-4-6 4z\"/><path opacity=\".5\" d=\"M1717 31v22l-19 11-19-11V31l19-11 19 11zM1665 6v11l-9 5-10-5V6l10-6 9 6z\"/><path opacity=\".75\" d=\"M1685 25v16l-14 8-14-8V25l14-8 14 8zM1693 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M1594 31v22l19 11 20-11V31l-20-11-19 11z\"/><path opacity=\".75\" d=\"M1626 25v16l14 8 15-8V25l-15-8-14 8zM1618 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M1579 31v22l-19 11-20-11V31l20-11 19 11zM1527 6v11l-10 5-9-5V6l9-6 10 6z\"/><path opacity=\".75\" d=\"M1547 25v16l-14 8-15-8V25l15-8 14 8zM1555 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M1456 31v22l19 11 19-11V31l-19-11-19 11z\"/><path opacity=\".75\" d=\"M1488 25v16l14 8 14-8V25l-14-8-14 8zM1480 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M1441 31v22l-20 11-19-11V31l19-11 20 11zM1389 6v11l-10 5-9-5V6l9-6 10 6z\"/><path opacity=\".75\" d=\"M1408 25v16l-14 8-14-8V25l14-8 14 8zM1416 8v8l-6 4-7-4V8l7-4 6 4z\"/><path opacity=\".5\" d=\"M1318 31v22l19 11 19-11V31l-19-11-19 11z\"/><path opacity=\".75\" d=\"M1350 25v16l14 8 14-8V25l-14-8-14 8zM1342 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M1302 31v22l-19 11-19-11V31l19-11 19 11zM1251 6v11l-10 5-10-5V6l10-6 10 6z\"/><path opacity=\".75\" d=\"M1270 25v16l-14 8-14-8V25l14-8 14 8zM1278 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M1180 31v22l19 11 19-11V31l-19-11-19 11z\"/><path opacity=\".75\" d=\"M1212 25v16l14 8 14-8V25l-14-8-14 8zM1204 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M1164 31v22l-19 11-19-11V31l19-11 19 11zM1112 6v11l-9 5-10-5V6l10-6 9 6z\"/><path opacity=\".75\" d=\"M1132 25v16l-14 8-14-8V25l14-8 14 8zM1140 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M1041 31v22l20 11 19-11V31l-19-11-20 11z\"/><path opacity=\".75\" d=\"M1074 25v16l14 8 14-8V25l-14-8-14 8zM1066 8v8l6 4 7-4V8l-7-4-6 4z\"/><path opacity=\".5\" d=\"M1026 31v22l-19 11-20-11V31l20-11 19 11zM974 6v11l-9 5-10-5V6l10-6 9 6z\"/><path opacity=\".75\" d=\"M994 25v16l-14 8-14-8V25l14-8 14 8zM1002 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M903 31v22l19 11 20-11V31l-20-11-19 11z\"/><path opacity=\".75\" d=\"M935 25v16l14 8 15-8V25l-15-8-14 8zM927 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M888 31v22l-20 11-19-11V31l19-11 20 11zM836 6v11l-10 5-9-5V6l9-6 10 6z\"/><path opacity=\".75\" d=\"M856 25v16l-15 8-14-8V25l14-8 15 8zM864 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M765 31v22l19 11 19-11V31l-19-11-19 11z\"/><path opacity=\".75\" d=\"M797 25v16l14 8 14-8V25l-14-8-14 8zM789 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M749 31v22l-19 11-19-11V31l19-11 19 11zM698 6v11l-10 5-9-5V6l9-6 10 6z\"/><path opacity=\".75\" d=\"M717 25v16l-14 8-14-8V25l14-8 14 8zM725 8v8l-7 4-6-4V8l6-4 7 4z\"/><path opacity=\".5\" d=\"M627 31v22l19 11 19-11V31l-19-11-19 11z\"/><path opacity=\".75\" d=\"M659 25v16l14 8 14-8V25l-14-8-14 8zM651 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M611 31v22l-19 11-19-11V31l19-11 19 11zM560 6v11l-10 5-10-5V6l10-6 10 6z\"/><path opacity=\".75\" d=\"M579 25v16l-14 8-14-8V25l14-8 14 8zM587 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M489 31v22l19 11 19-11V31l-19-11-19 11z\"/><path opacity=\".75\" d=\"M521 25v16l14 8 14-8V25l-14-8-14 8zM513 8v8l7 4 6-4V8l-6-4-7 4z\"/><path opacity=\".5\" d=\"M473 31v22l-19 11-19-11V31l19-11 19 11zM421 6v11l-9 5-10-5V6l10-6 9 6z\"/><path opacity=\".75\" d=\"M441 25v16l-14 8-14-8V25l14-8 14 8zM449 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M350 31v22l20 11 19-11V31l-19-11-20 11z\"/><path opacity=\".75\" d=\"M382 25v16l15 8 14-8V25l-14-8-15 8zM374 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M335 31v22l-19 11-20-11V31l20-11 19 11zM283 6v11l-10 5-9-5V6l9-6 10 6z\"/><path opacity=\".75\" d=\"M303 25v16l-14 8-14-8V25l14-8 14 8zM311 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M212 31v22l19 11 20-11V31l-20-11-19 11z\"/><path opacity=\".75\" d=\"M244 25v16l14 8 14-8V25l-14-8-14 8zM236 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M197 31v22l-20 11-19-11V31l19-11 20 11zM145 6v11l-10 5-9-5V6l9-6 10 6z\"/><path opacity=\".75\" d=\"M164 25v16l-14 8-14-8V25l14-8 14 8zM173 8v8l-7 4-7-4V8l7-4 7 4z\"/><path opacity=\".5\" d=\"M74 31v22l19 11 19-11V31L93 20 74 31z\"/><path opacity=\".3\" d=\"M53 9v15l13 7 13-7V9L66 1 53 9zM191 9v15l13 7 13-7V9l-13-8-13 8zM330 9v15l13 7 13-7V9l-13-8-13 8zM468 9v15l13 7 13-7V9l-13-8-13 8zM606 9v15l13 7 13-7V9l-13-8-13 8zM744 9v15l13 7 13-7V9l-13-8-13 8zM883 9v15l12 7 13-7V9l-13-8-12 8zM1021 9v15l13 7 13-7V9l-13-8-13 8zM1159 9v15l13 7 13-7V9l-13-8-13 8zM1297 9v15l13 7 13-7V9l-13-8-13 8zM1435 9v15l13 7 13-7V9l-13-8-13 8zM1574 9v15l13 7 12-7V9l-12-8-13 8zM1712 9v15l13 7 13-7V9l-13-8-13 8zM1850 9v15l13 7 13-7V9l-13-8-13 8z\"/><path opacity=\".75\" d=\"M106 25v16l14 8 14-8V25l-14-8-14 8zM98 8v8l7 4 7-4V8l-7-4-7 4z\"/><path opacity=\".5\" d=\"M58 31v22L39 64 20 53V31l19-11 19 11z\"/><path opacity=\".75\" d=\"M34 8v8l-7 4-6-4V8l6-4 7 4z\"/><path d=\"M2001 77V62l-21-12-24 14-23-14-23 14-24-14-23 14-23-14-23 14-24-14-23 14-23-14-24 14-23-14-23 14-23-14-24 14-23-14-23 14-24-14-23 14-23-14-23 14-24-14-23 14-23-14-24 14-23-14-23 14-23-14-24 14-23-14-23 14-24-14-23 14-23-14-23 14-24-14-23 14-23-14-24 14-23-14-23 14-23-14-24 14-23-14-23 14-24-14-23 14-23-14-23 14-24-14-23 14-23-14-24 14-23-14-23 14-23-14-24 14-23-14-23 14-24-14-23 14-23-14-24 14-23-14-23 14-23-14-24 14-23-14-23 14-24-14-23 14-23-14-24 14-23-14-23 14-23-14-24 14-23-14-23 14-24-14-23 14-23-14-23 14-24-14L0 64v13h2001z\"/><path opacity=\".75\" d=\"M12 49L0 42V23l12-6 14 8v16l-14 8z\"/><path opacity=\".3\" d=\"M2001 31l-13-7V9l13-8v30z\"/></g></svg>");
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-size: 100% min(6.875cqw, 8rem);
  position: absolute;
  inset: -.1vw
}

@media (width<=767.98px) {
  .shapedividers_com-1603:before {
    background-size: 100% 3.75rem
  }
}

.programs_badge {
  white-space: nowrap;
  border-radius: .1875rem;
  justify-content: center;
  align-items: center;
  padding: .3125rem .375rem;
  font-size: .45rem;
  font-weight: 700;
  line-height: 1;
  display: inline-flex
}

.programs_badge_code {
  color: var(--c-text);
  background-color: #e1e5f2
}

.programs_badge_earth {
  background-color: #009e73;
  background-color: var(--c-tag-teal);
  color: var(--c-white)
}

.programs_badge_town {
  background-color: #cc79a7;
  background-color: var(--c-tag-purple);
  color: var(--c-text)
}

.programs_badge_learn {
  background-color: #f0e442;
  background-color: var(--c-tag-yellow);
  color: var(--c-text)
}

.programs_badge_food {
  background-color: #e69f00;
  background-color: var(--c-tag-orange);
  color: var(--c-text)
}

.programs_badge_talk {
  background-color: #0072b2;
  background-color: var(--c-tag-navy);
  color: var(--c-white)
}

.timetable {
  --timetable-time-col: 6.5rem;
  background: linear-gradient(#acecf1 0%, #c0bbe6 100%);
  position: relative;
  overflow-x: clip
}

.timetable .programs_deco_ai {
  top: 17rem;
  right: -2.75rem;
  right: calc(var(--s-container-inline) - 4rem);
  width: 11.48cqw;
  max-width: 10.3rem;
  transform: rotate(10deg)
}

@media (width<=991.98px) {
  .timetable .programs_deco_ai {
    top: 18.5rem;
    right: -.75rem;
    right: calc(var(--s-container-inline) - 2rem);
    width: 13cqw;
    max-width: 11rem
  }
}

@media (width<=767.98px) {
  .timetable .programs_deco_ai {
    top: 1rem;
    right: .25rem;
    right: calc(var(--s-container-inline) - 1rem);
    width: 20cqw;
    max-width: 7rem
  }
}

.timetable .programs_deco_book {
  top: 88%;
  left: -6.75rem;
  left: calc(var(--s-container-inline) - 8rem);
  width: 17.36cqw;
  max-width: 15.6rem
}

@media (width<=991.98px) {
  .timetable .programs_deco_book {
    left: -3.75rem;
    left: calc(var(--s-container-inline) - 5rem)
  }
}

@media (width<=767.98px) {
  .timetable .programs_deco_book {
    width: 23.1cqw;
    max-width: 6.5rem;
    top: 90.5%;
    left: -.875rem
  }
}

.timetable .timetable_inner {
  padding-bottom: 0
}

.timetable .timetable_heading {
  margin-bottom: 1.5rem
}

@media (width<=767.98px) {
  .timetable .timetable_heading {
    margin-bottom: .62rem;
    font-size: 1.25rem
  }
}

.timetable .timetable_sticky_top {
  z-index: 100;
  padding-bottom: 4.5rem;
  position: sticky;
  top: calc(max(3.925rem, min(5.556cqw, 5rem)) + .625rem)
}

@media (width<=991.98px) {
  .timetable .timetable_sticky_top {
    top: 3.875rem
  }
}

.timetable .timetable_tabs {
  gap: .75rem;
  margin-bottom: 1.25rem;
  display: flex
}

@media (width<=767.98px) {
  .timetable .timetable_tabs {
    gap: .5rem;
    margin-bottom: .62rem
  }
}

.timetable .timetable_tab {
  filter: drop-shadow(0 .625rem .3125rem #6db2df66);
  cursor: pointer;
  color: #615f64;
  background-color: #bec2d1;
  border: none;
  border-radius: .625rem;
  justify-content: center;
  align-items: flex-end;
  gap: .125rem;
  min-width: 12.5rem;
  padding: 1.25rem 1.5rem;
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1;
  display: inline-flex;
  box-shadow: inset 0 -.25rem .625rem #84868fb3, inset 0 .25rem .25rem #fdfdfecc
}

.timetable .timetable_tab .timetable_tab_venue {
  color: inherit;
  text-align: left;
  white-space: nowrap;
  flex-shrink: 0;
  align-self: center;
  margin-right: .375rem;
  font-size: .6875rem;
  line-height: 1.3
}

@media (width<=767.98px) {
  .timetable .timetable_tab .timetable_tab_venue {
    font-size: max(.4375rem, min(2.2cqw, .5625rem))
  }
}

.timetable .timetable_tab .timetable_tab_date {
  white-space: nowrap
}

@media (hover:hover) {
  .timetable .timetable_tab {
    transition: color .15s
  }

  .timetable .timetable_tab:hover {
    color: var(--c-main-100)
  }

  .timetable .timetable_tab:hover .timetable_tab_day {
    background-color: #5972ca;
    background-color: var(--c-main-100)
  }
}

.timetable .timetable_tab.is_active {
  background-color: #0dc1fd;
  background-color: var(--c-btn);
  color: var(--c-white);
  box-shadow: inset 0 -.25rem .625rem #21627ab3, inset 0 .25rem .25rem #f7feffcc
}

.timetable .timetable_tab.is_active .timetable_tab_day {
  background-color: #fff;
  background-color: var(--c-white);
  color: var(--c-blue-dark)
}

.timetable .timetable_tab.is_active .timetable_tab_sun {
  color: var(--c-red)
}

@media (width<=767.98px) {
  .timetable .timetable_tab {
    flex: 1;
    min-width: 0;
    padding: .9375rem 1rem;
    font-size: max(.875rem, min(4cqw, 1.375rem))
  }
}

.timetable .timetable_tab .timetable_tab_day {
  color: #bec2d1;
  background-color: #615f64;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 1.375rem;
  height: 1.375rem;
  font-size: .875rem;
  font-weight: 700;
  line-height: 1.5;
  transition: background-color .15s;
  display: inline-flex
}

@media (width<=767.98px) {
  .timetable .timetable_tab .timetable_tab_day {
    width: max(.875rem, min(3.2cqw, 1.125rem));
    height: max(.875rem, min(3.2cqw, 1.125rem));
    font-size: max(.5625rem, min(2.2cqw, .75rem))
  }
}

.timetable .timetable_link_note {
  margin-top: -4.5rem;
  margin-bottom: 1rem;
  font-size: .75rem;
  line-height: 1.5
}

@media (width<=767.98px) {
  .timetable .timetable_link_note {
    font-size: .6875rem
  }
}

.timetable .timetable_venues {
  grid-template-rows: 4.3125rem;
  grid-template-columns: var(--timetable-time-col) repeat(5, 13.7rem);
  z-index: 99;
  will-change: transform;
  border-bottom: .0625rem solid #9dc0d9;
  border-bottom: .0625rem solid var(--c-border);
  border-radius: 1.25rem 1.25rem 0 0;
  margin-bottom: -.0625rem;
  display: grid;
  position: sticky;
  top: calc(max(3.925rem, min(5.556cqw, 5rem)) + 4.25rem)
}

@media (width>=768px) and (width<=991.98px) {
  .timetable .timetable_venues {
    margin-left: -2.5rem;
    margin-right: -2.5rem;
    top: 7.5rem
  }
}

@media (width<=767.98px) {
  .timetable .timetable_venues {
    grid-template-rows: 3.5rem;
    margin-left: -1.25rem;
    margin-right: -1.25rem;
    top: 6.5rem
  }
}

.timetable .timetable_venues {
  background-image: linear-gradient(90deg, #9dc0d9 .0625rem, #0000 .0625rem), linear-gradient(90deg, #9dc0d9 .0625rem, #0000 .0625rem), linear-gradient(90deg, #9dc0d9 .0625rem, #0000 .0625rem), linear-gradient(90deg, #9dc0d9 .0625rem, #0000 .0625rem), linear-gradient(90deg, #9dc0d9 .0625rem, #0000 .0625rem);
  background-image: linear-gradient(to right, var(--c-border) .0625rem, transparent .0625rem), linear-gradient(to right, var(--c-border) .0625rem, transparent .0625rem), linear-gradient(to right, var(--c-border) .0625rem, transparent .0625rem), linear-gradient(to right, var(--c-border) .0625rem, transparent .0625rem), linear-gradient(to right, var(--c-border) .0625rem, transparent .0625rem);
  background-position: var(--timetable-time-col) 0, calc(var(--timetable-time-col) + 68.5rem * 1 / 5) 0, calc(var(--timetable-time-col) + 68.5rem * 2 / 5) 0, calc(var(--timetable-time-col) + 68.5rem * 3 / 5) 0, calc(var(--timetable-time-col) + 68.5rem * 4 / 5) 0;
  width: calc(var(--timetable-time-col) + 70.5rem);
  background-color: #e7f2fc;
  background-repeat: no-repeat;
  background-size: .0625rem 100%;
  padding-right: 2rem;
  overflow-x: clip
}

@media (width<=767.98px) {
  .timetable .timetable_venues {
    background-position: 4rem 0, 17.7rem 0, 31.4rem 0, 45.1rem 0, 58.8rem 0;
    grid-template-columns: 4rem repeat(5, 13.7rem);
    width: 74.5rem;
    min-width: 73rem
  }
}

.timetable .timetable_panel {
  background-color: #e7f2fc;
  border-radius: 0 0 1.25rem 1.25rem;
  max-width: 77rem;
  overflow: hidden
}

@media (width<=991.98px) {
  .timetable .timetable_panel {
    margin-left: -1.25rem;
    margin-right: -1.25rem;
    margin-left: calc(-1 * var(--s-container-inline));
    margin-right: calc(-1 * var(--s-container-inline));
    max-width: none
  }
}

.timetable .timetable_scroll {
  width: 100%;
  padding-bottom: 4rem;
  overflow: auto clip
}

.timetable .timetable_grid {
  grid-template-rows: repeat(32, 3.75rem);
  grid-template-columns: var(--timetable-time-col) repeat(5, 13.7rem);
  background-image: linear-gradient(90deg, #9dc0d9 .0625rem, #0000 .0625rem), linear-gradient(90deg, #9dc0d9 .0625rem, #0000 .0625rem), linear-gradient(90deg, #9dc0d9 .0625rem, #0000 .0625rem), linear-gradient(90deg, #9dc0d9 .0625rem, #0000 .0625rem), linear-gradient(90deg, #9dc0d9 .0625rem, #0000 .0625rem);
  background-image: linear-gradient(to right, var(--c-border) .0625rem, transparent .0625rem), linear-gradient(to right, var(--c-border) .0625rem, transparent .0625rem), linear-gradient(to right, var(--c-border) .0625rem, transparent .0625rem), linear-gradient(to right, var(--c-border) .0625rem, transparent .0625rem), linear-gradient(to right, var(--c-border) .0625rem, transparent .0625rem);
  background-position: var(--timetable-time-col) 0, calc(var(--timetable-time-col) + 68.5rem * 1 / 5) 0, calc(var(--timetable-time-col) + 68.5rem * 2 / 5) 0, calc(var(--timetable-time-col) + 68.5rem * 3 / 5) 0, calc(var(--timetable-time-col) + 68.5rem * 4 / 5) 0;
  width: calc(var(--timetable-time-col) + 70.5rem);
  background-repeat: no-repeat;
  background-size: .0625rem 100%;
  padding-right: 2rem;
  display: grid
}

@media (width<=767.98px) {
  .timetable .timetable_grid {
    background-position: 4rem 0, 17.7rem 0, 31.4rem 0, 45.1rem 0, 58.8rem 0;
    grid-template-columns: 4rem repeat(5, 13.7rem);
    width: 74.5rem;
    min-width: 73rem
  }
}

.timetable .timetable_grid .timetable_time_label:first-child,
.timetable .timetable_grid .timetable_hour_sep:nth-child(2) {
  grid-row: 1
}

.timetable .timetable_grid .timetable_time_label:nth-child(3),
.timetable .timetable_grid .timetable_hour_sep:nth-child(4) {
  grid-row: 5
}

.timetable .timetable_grid .timetable_time_label:nth-child(5),
.timetable .timetable_grid .timetable_hour_sep:nth-child(6) {
  grid-row: 9
}

.timetable .timetable_grid .timetable_time_label:nth-child(7),
.timetable .timetable_grid .timetable_hour_sep:nth-child(8) {
  grid-row: 13
}

.timetable .timetable_grid .timetable_time_label:nth-child(9),
.timetable .timetable_grid .timetable_hour_sep:nth-child(10) {
  grid-row: 17
}

.timetable .timetable_grid .timetable_time_label:nth-child(11),
.timetable .timetable_grid .timetable_hour_sep:nth-child(12) {
  grid-row: 21
}

.timetable .timetable_grid .timetable_time_label:nth-child(13),
.timetable .timetable_grid .timetable_hour_sep:nth-child(14) {
  grid-row: 25
}

.timetable .timetable_grid .timetable_time_label:nth-child(15),
.timetable .timetable_grid .timetable_hour_sep:nth-child(16) {
  grid-row: 29
}

.timetable .timetable_venue {
  color: var(--c-main-200);
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: .5rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  display: flex
}

@media (width<=767.98px) {
  .timetable .timetable_venue {
    padding: .3125rem .25rem;
    font-size: .75rem
  }
}

.timetable .timetable_time_label {
  border-top: .0625rem solid #9dc0d9;
  border-top: .0625rem solid var(--c-border);
  color: var(--c-main-200);
  grid-column: 1;
  justify-content: flex-end;
  align-items: flex-start;
  padding: .25rem .5rem 0 0;
  font-size: .6875rem;
  font-weight: 700;
  line-height: 1;
  display: flex
}

@media (width<=767.98px) {
  .timetable .timetable_time_label {
    padding-left: .5rem
  }
}

.timetable .timetable_hour_sep {
  border-top: .0625rem solid #9dc0d9;
  border-top: .0625rem solid var(--c-border);
  pointer-events: none;
  grid-column: 2/-1
}

.timetable .timetable_item {
  z-index: 1;
  background-color: #fff;
  background-color: var(--c-white);
  border-left: .1875rem solid #0000;
  border-radius: .5rem;
  flex-direction: column;
  align-items: flex-start;
  gap: .5rem;
  margin: .25rem;
  padding: 1.25rem;
  -webkit-text-decoration: none;
  text-decoration: none;
  display: flex;
  position: relative;
  overflow: hidden
}

.timetable .timetable_item .timetable_item_top {
  justify-content: space-between;
  align-items: center;
  gap: .5rem;
  width: 100%;
  display: flex
}

.timetable .timetable_item .timetable_item_bookmark {
  z-index: 1;
  cursor: pointer;
  border: .0625rem solid #9dc0d9;
  border: .0625rem solid var(--c-border);
  background-color: #fff;
  background-color: var(--c-white);
  color: var(--c-main-100);
  width: 2.25rem;
  height: 1.5rem;
  border-radius: 1.25rem;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  padding: 0;
  display: flex;
  position: relative
}

.timetable .timetable_item .timetable_item_bookmark svg {
  flex-shrink: 0;
  width: .75rem;
  height: .75rem
}

@media (hover:hover) {
  .timetable .timetable_item .timetable_item_bookmark {
    transition: background-color .2s ease-out
  }
}

.timetable .timetable_item .timetable_item_link {
  color: inherit;
  -webkit-text-decoration: none;
  text-decoration: none
}

.timetable .timetable_item .timetable_item_link:after {
  border-radius: inherit;
  content: "";
  position: absolute;
  inset: 0
}

.timetable .timetable_item:has(.programs_badge_earth) {
  border-left-color: #009e73;
  border-left-color: var(--c-tag-teal)
}

.timetable .timetable_item:has(.programs_badge_food) {
  border-left-color: #e69f00;
  border-left-color: var(--c-tag-orange)
}

.timetable .timetable_item:has(.programs_badge_town) {
  border-left-color: #cc79a7;
  border-left-color: var(--c-tag-purple)
}

.timetable .timetable_item:has(.programs_badge_learn) {
  border-left-color: #f0e442;
  border-left-color: var(--c-tag-yellow)
}

.timetable .timetable_item:has(.programs_badge_talk) {
  border-left-color: #0072b2;
  border-left-color: var(--c-tag-navy)
}

@media (hover:hover) {
  .timetable .timetable_item:hover .timetable_item_bookmark {
    background-color: #5972ca;
    background-color: var(--c-main-100);
    color: var(--c-white)
  }
}

.timetable .timetable_item .timetable_item_time {
  color: var(--c-text);
  font-size: .75rem;
  font-weight: 700;
  line-height: 1
}

.timetable .timetable_item .timetable_item_badges {
  flex-wrap: wrap;
  align-items: flex-start;
  gap: .25rem;
  margin-top: -.1rem;
  display: flex
}

.timetable .timetable_item .timetable_item_badges .programs_badge {
  font-size: .625rem
}

.timetable .timetable_item .timetable_item_title {
  color: var(--c-text);
  width: 100%;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  font-size: .875rem;
  font-weight: 700;
  line-height: 1.2;
  display: -webkit-box;
  overflow: hidden
}

.timetable .timetable_item .timetable_item_org {
  color: var(--c-text);
  width: 100%;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  font-size: .75rem;
  line-height: 1.2;
  display: -webkit-box;
  overflow: hidden
}

.timetable .timetable_item .timetable_item_difficulty {
  color: var(--c-text);
  align-items: center;
  gap: .25rem;
  font-size: .625rem;
  line-height: 1;
  display: flex
}

.timetable .timetable_item .timetable_item_stars {
  align-items: center;
  gap: .125rem;
  display: flex
}

.timetable .timetable_item .timetable_item_stars img {
  width: .75rem;
  height: .75rem;
  display: block
}

.timetable .timetable_download {
  padding: 3rem 1.25rem 10rem;
  padding: 3rem var(--s-container-inline) 10rem;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1rem;
  display: flex
}

@media (width<=767.98px) {
  .timetable .timetable_download {
    padding: 2rem 1.25rem 7.5rem;
    padding: 2rem var(--s-container-inline) 7.5rem
  }
}

.timetable .timetable_download .btn {
  filter: drop-shadow(0 .625rem .3125rem #8176b666);
  background: #0dc1fd;
  background: var(--c-btn);
  width: auto;
  min-width: 30rem;
  padding-left: 1.75rem;
  padding-right: 1.75rem;
  box-shadow: inset 0 -.25rem .625rem #21627ab3, inset 0 .25rem .25rem #f7feffcc
}

@media (hover:hover) {
  .timetable .timetable_download .btn:hover {
    box-shadow: inset 0 -.25rem .625rem #21627ab3, inset 0 .25rem .25rem #f7feffcc
  }
}

@media (width<=767.98px) {
  .timetable .timetable_download .btn {
    width: 100%;
    min-width: 0
  }
}

.timetable .timetable_download .timetable_download_pdf {
  background-color: #fff;
  background-color: var(--c-white);
  color: var(--c-btn);
  border-radius: .25rem;
  justify-content: center;
  align-items: center;
  padding: .25rem .375rem;
  font-size: .75rem;
  font-weight: 700;
  line-height: 1;
  display: inline-flex
}

[class^=programs_deco_] {
  pointer-events: none;
  position: absolute
}

.programs_list {
  background: linear-gradient(#c6ecf7 0%, #c5f2dc 100%);
  position: relative;
  overflow-x: clip
}

.programs_list .programs_deco_saturn {
  top: 3rem;
  right: -2.75rem;
  right: calc(var(--s-container-inline) - 4rem);
  width: 14.58cqw;
  max-width: 13.1rem
}

@media (width<=991.98px) {
  .programs_list .programs_deco_saturn {
    top: 2rem
  }
}

@media (width<=767.98px) {
  .programs_list .programs_deco_saturn {
    top: 0;
    right: -.75rem;
    right: calc(var(--s-container-inline) - 2rem);
    width: 22cqw;
    max-width: 7.6rem
  }
}

.programs_list .programs_floor_panels {
  background-color: #e7f2fc;
  border-radius: 1.25rem;
  flex-direction: column;
  gap: 2.5rem;
  padding: 3.7rem 2.5rem;
  display: flex;
  position: relative
}

@media (width<=991.98px) {
  .programs_list .programs_floor_panels {
    margin-left: -1.25rem;
    margin-right: -1.25rem;
    margin-left: calc(-1 * var(--s-container-inline));
    margin-right: calc(-1 * var(--s-container-inline))
  }
}

@media (width<=767.98px) {
  .programs_list .programs_floor_panels {
    gap: 1.5rem;
    padding: 1rem
  }
}

.programs_list .programs_floor_panels .programs_deco_quantum {
  width: 16cqw;
  max-width: 14.4rem;
  bottom: -7rem;
  left: -3.75rem
}

@media (width<=991.98px) {
  .programs_list .programs_floor_panels .programs_deco_quantum {
    width: 23cqw;
    max-width: 18rem
  }
}

@media (width<=767.98px) {
  .programs_list .programs_floor_panels .programs_deco_quantum {
    display: none
  }
}

.programs_list .programs_badge {
  font-size: .8125rem;
  font-weight: 400
}

@media (width<=767.98px) {
  .programs_list .programs_badge {
    font-size: .625rem
  }
}

.programs_list .programs_list_heading {
  margin-bottom: 1.25rem
}

@media (width<=767.98px) {
  .programs_list .programs_list_heading {
    margin-bottom: .62rem;
    font-size: 1.25rem
  }
}

.programs_list .programs_floor_tabs {
  z-index: 10;
  gap: .75rem;
  margin-bottom: 1.25rem;
  display: flex;
  position: sticky;
  top: calc(max(3.925rem, min(5.556cqw, 5rem)) + .625rem)
}

@media (width<=991.98px) {
  .programs_list .programs_floor_tabs {
    top: 3.875rem
  }
}

@media (width<=767.98px) {
  .programs_list .programs_floor_tabs {
    gap: .5rem;
    margin-bottom: .62rem
  }
}

.programs_list [data-floor-panel] {
  scroll-margin-top: calc(max(4rem, min(5.556cqw, 5rem)) + 7rem)
}

@media (width<=767.98px) {
  .programs_list [data-floor-panel] {
    scroll-margin-top: 9rem
  }
}

.programs_list .programs_floor_tab {
  filter: drop-shadow(0 .625rem .3125rem #6db2df66);
  cursor: pointer;
  color: #615f64;
  background-color: #bec2d1;
  border: none;
  border-radius: .625rem;
  justify-content: center;
  align-items: center;
  gap: .375rem;
  min-width: 12.5rem;
  padding: 1.25rem 1.5rem;
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1;
  display: inline-flex;
  box-shadow: inset 0 -.25rem .625rem #84868fb3, inset 0 .25rem .25rem #fdfdfecc
}

.programs_list .programs_floor_tab .programs_floor_tab_venue {
  color: inherit;
  text-align: left;
  white-space: nowrap;
  flex-shrink: 0;
  font-size: .6875rem;
  line-height: 1.3
}

@media (width<=57.25rem) {
  .programs_list .programs_floor_tab .programs_floor_tab_venue {
    font-size: max(.5rem, min(1.6cqw, .5625rem))
  }
}

@media (width<=767.98px) {
  .programs_list .programs_floor_tab .programs_floor_tab_venue {
    font-size: max(.375rem, min(1.8cqw, .5625rem))
  }
}

@media (hover:hover) {
  .programs_list .programs_floor_tab {
    transition: color .15s
  }

  .programs_list .programs_floor_tab:hover {
    color: var(--c-main-100)
  }
}

.programs_list .programs_floor_tab.is_active {
  background-color: #0dc1fd;
  background-color: var(--c-btn);
  color: var(--c-white);
  box-shadow: inset 0 -.25rem .625rem #21627ab3, inset 0 .25rem .25rem #f7feffcc
}

@media (width<=57.25rem) {
  .programs_list .programs_floor_tab {
    flex: 1;
    min-width: 0;
    padding-left: .5rem;
    padding-right: .5rem
  }
}

@media (width<=767.98px) {
  .programs_list .programs_floor_tab {
    height: max(2.5rem, min(12cqw, 3.125rem));
    padding: .9375rem max(.5rem, min(2.5cqw, .75rem));
    font-size: max(.75rem, min(3.5cqw, 1.375rem))
  }
}

.programs_list .programs_floor_tab .programs_floor_tab_label {
  white-space: nowrap
}

.programs_list .programs_floor_panel {
  flex-direction: column;
  gap: 1.875rem;
  display: flex
}

@media (width<=767.98px) {
  .programs_list .programs_floor_panel {
    gap: 1.25rem
  }
}

.programs_list .programs_floor_map_wrap {
  background-color: #e7f2fc;
  border-radius: 1.25rem;
  grid-template-columns: 5.5rem 1fr 5.5rem;
  align-items: start;
  display: grid
}

@media (width<=991.98px) {
  .programs_list .programs_floor_map_wrap {
    padding: 0;
    display: flex
  }
}

.programs_list .programs_floor_map_wrap .programs_floor_label {
  color: var(--c-main-200);
  font-size: 4rem;
  font-weight: 700;
  line-height: 1
}

@media (width<=991.98px) {
  .programs_list .programs_floor_map_wrap .programs_floor_label {
    flex-shrink: 0;
    padding: 0 .75rem 0 0
  }
}

@media (width<=767.98px) {
  .programs_list .programs_floor_map_wrap .programs_floor_label {
    font-size: 8cqw
  }
}

.programs_list .programs_floor_map_wrap .programs_floor_map {
  width: 100%;
  min-width: 0;
  max-width: 47.1875rem;
  margin-left: auto;
  margin-right: auto
}

@media (width<=991.98px) {
  .programs_list .programs_floor_map_wrap .programs_floor_map {
    margin-left: 0;
    margin-left: initial;
    margin-right: 0;
    margin-right: initial;
    flex: 1
  }
}

.programs_list .programs_group_container {
  flex-direction: column;
  gap: 1.88rem;
  display: flex
}

@media (width<=767.98px) {
  .programs_list .programs_group_container {
    gap: 1.25rem
  }
}

.programs_list .programs_group {
  flex-direction: column;
  gap: 1rem;
  display: flex
}

.programs_list .programs_group_header {
  color: var(--c-text);
  align-items: center;
  gap: .625rem;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5;
  display: flex
}

@media (width<=767.98px) {
  .programs_list .programs_group_header {
    flex-wrap: wrap;
    font-size: 1.0625rem
  }
}

.programs_list .programs_group_count {
  font-size: .75rem
}

.programs_list .program_cards {
  grid-gap: .625rem;
  grid-template-columns: repeat(3, 1fr);
  gap: .625rem;
  padding-left: .375rem;
  display: grid
}

@media (width<=991.98px) {
  .programs_list .program_cards {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media (width<=767.98px) {
  .programs_list .program_cards {
    grid-template-columns: 1fr
  }
}

.programs_list .program_card {
  background-color: #fff;
  background-color: var(--c-white);
  color: var(--c-text);
  border-left: .375rem solid #0000;
  border-radius: .5rem;
  flex-direction: column;
  padding: 1.25rem 1.25rem 1.75rem;
  display: flex;
  position: relative
}

.programs_list .program_card:has(.programs_badge_earth) {
  border-left-color: #009e73;
  border-left-color: var(--c-tag-teal)
}

.programs_list .program_card:has(.programs_badge_town) {
  border-left-color: #cc79a7;
  border-left-color: var(--c-tag-purple)
}

.programs_list .program_card:has(.programs_badge_learn) {
  border-left-color: #f0e442;
  border-left-color: var(--c-tag-yellow)
}

.programs_list .program_card:has(.programs_badge_food) {
  border-left-color: #e69f00;
  border-left-color: var(--c-tag-orange)
}

.programs_list .program_card:has(.programs_badge_talk) {
  border-left-color: #0072b2;
  border-left-color: var(--c-tag-navy)
}

@media (hover:hover) {
  .programs_list .program_card:hover .program_card_bookmark {
    background-color: #5972ca;
    background-color: var(--c-main-100);
    color: var(--c-white)
  }
}

.programs_list .program_card .program_card_top {
  justify-content: space-between;
  align-items: center;
  gap: .5rem;
  display: flex
}

.programs_list .program_card .program_card_badges {
  flex-wrap: wrap;
  flex: 1;
  gap: .25rem;
  min-width: 0;
  display: flex
}

.programs_list .program_card .program_card_badges .programs_badge {
  text-align: left;
  white-space: normal
}

.programs_list .program_card .program_card_link {
  color: inherit;
  -webkit-text-decoration: none;
  text-decoration: none
}

.programs_list .program_card .program_card_link:after {
  border-radius: inherit;
  content: "";
  position: absolute;
  inset: 0
}

.programs_list .program_card .program_card_bookmark {
  z-index: 1;
  cursor: pointer;
  border: .0625rem solid #9dc0d9;
  border: .0625rem solid var(--c-border);
  background-color: #fff;
  background-color: var(--c-white);
  color: #5972ca;
  border-radius: 1.25rem;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 2rem;
  padding: 0;
  display: flex;
  position: relative
}

.programs_list .program_card .program_card_bookmark svg {
  flex-shrink: 0;
  width: .75rem;
  height: .75rem
}

@media (hover:hover) {
  .programs_list .program_card .program_card_bookmark {
    transition: background-color .2s ease-out
  }
}

@media (width<=767.98px) {
  .programs_list .program_card .program_card_bookmark {
    width: 2rem;
    height: 1.375rem
  }
}

.programs_list .program_card .program_card_title {
  color: var(--c-text);
  margin-top: .5rem;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.2
}

@media (width<=767.98px) {
  .programs_list .program_card .program_card_title {
    font-size: 1.125rem
  }
}

.programs_list .program_card .program_card_subtitle {
  color: var(--c-text);
  margin-top: .5rem;
  font-size: .875rem;
  font-weight: 700;
  line-height: 1.5
}

@media (width<=767.98px) {
  .programs_list .program_card .program_card_subtitle {
    font-size: .75rem
  }
}

.programs_list .program_card .program_card_desc {
  color: var(--c-text);
  margin-top: .75rem;
  font-size: .75rem;
  line-height: 1.5
}

@media (width<=767.98px) {
  .programs_list .program_card .program_card_desc {
    font-size: .625rem
  }
}

.programs_list .program_card .program_card_meta {
  flex-direction: column;
  gap: .75rem;
  margin-top: .75rem;
  display: flex
}

@media (width<=767.98px) {
  .programs_list .program_card .program_card_meta {
    gap: .5rem
  }
}

.programs_list .program_card .program_card_datetime {
  color: var(--c-text);
  font-size: .875rem;
  line-height: 1.5
}

@media (width<=767.98px) {
  .programs_list .program_card .program_card_datetime {
    font-size: .75rem
  }
}

.programs_list .program_card .program_card_difficulty {
  color: var(--c-text);
  align-items: center;
  gap: .25rem;
  font-size: .75rem;
  line-height: 1.5;
  display: flex
}

.programs_list .program_card .program_card_difficulty_label {
  white-space: nowrap
}

.programs_list .program_card .program_card_stars {
  align-items: center;
  gap: .25rem;
  display: flex
}

.programs_list .program_card .program_card_stars img {
  width: 1rem;
  height: 1rem;
  display: block
}

.programs_list .programs_list_download {
  flex-wrap: wrap;
  justify-content: center;
  gap: 1rem;
  margin-top: 2.5rem;
  display: flex
}

@media (width<=767.98px) {
  .programs_list .programs_list_download {
    margin-top: 1.5rem
  }
}

.programs_list .programs_list_download .btn {
  filter: drop-shadow(0 .625rem .3125rem #8176b666);
  background: #0dc1fd;
  background: var(--c-btn);
  width: auto;
  min-width: 30rem;
  padding-left: 1.75rem;
  padding-right: 1.75rem;
  box-shadow: inset 0 -.25rem .625rem #21627ab3, inset 0 .25rem .25rem #f7feffcc
}

@media (hover:hover) {
  .programs_list .programs_list_download .btn:hover {
    box-shadow: inset 0 -.25rem .625rem #21627ab3, inset 0 .25rem .25rem #f7feffcc
  }
}

@media (width<=767.98px) {
  .programs_list .programs_list_download .btn {
    width: 100%;
    min-width: 0
  }
}

.programs_list .programs_list_download .timetable_download_pdf {
  background-color: #fff;
  background-color: var(--c-white);
  color: var(--c-btn);
  border-radius: .25rem;
  justify-content: center;
  align-items: center;
  padding: .25rem .375rem;
  font-size: .75rem;
  font-weight: 700;
  line-height: 1;
  display: inline-flex
}