@charset "utf-8";

/* Woneum base
   Scope: global document defaults, typography application, containers, and motion guards. */
html { scroll-behavior: smooth; }
body { color: var(--we-color-text); background: var(--we-color-background, #f6efe4); font-family: var(--we-font-main); font-size: var(--we-font-size-base); font-weight: var(--we-font-weight-base); }
html,
body {
  max-width: 100%;
  overflow-x: clip;
}
@supports not (overflow: clip) {
  html,
  body {
    overflow-x: visible;
  }
}
body,
button,
input,
select,
textarea,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--we-font-main);
}
h1,
h2,
h3,
h4,
h5,
h6,
#container_title,
.we-homeHero h2,
.we-homeSection__head h2,
.we-kicker {
  font-family: var(--we-font-heading);
  font-weight: var(--we-font-weight-heading);
}
#container_title,
.we-content h1,
.we-content h2,
.woneum-content h1,
.woneum-content h2,
#ctt_con h1,
#ctt_con h2 {
  font-size: var(--we-font-size-heading);
}
#container,
.ctt_admin,
.woneum-content,
.we-content,
.we-homeSection,
.bo_v_con,
.tbl_head01,
.tbl_wrap {
  font-family: var(--we-font-content);
  font-size: var(--we-font-size-content);
  font-weight: var(--we-font-weight-content);
}
a { transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .25s var(--we-ease); }
.we-shell { box-sizing: border-box; width: min(100%, calc(var(--we-layout-max) + var(--we-gutter) * 2)); margin-inline: auto; padding-inline: var(--we-gutter); }

#wrapper { min-height: 500px; }
#container_wr { max-width: var(--we-layout-max); }
#container { width: 100%; max-width: none; }
#aside { display: none; }
#container_title { margin: 0; padding: 54px 0 30px; border: 0; font-size: clamp(30px, 4vw, 50px); }

.we-js .we-reveal { opacity: 0; transform: translateY(28px); transition: opacity .8s ease, transform .8s var(--we-ease); }
.we-js .we-reveal.is-visible { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
  .we-js .we-reveal { opacity: 1; transform: none; }
}

#wrapper,
#container_wr,
#container {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

@media (max-width: 640px) {
  #hd,
  #wrapper,
  #ft,
  #hd_pop,
  #hd_wrapper,
  #tnb .inner,
  #gnb .gnb_wrap,
  #container_wr,
  #container,
  #ft_wr,
  .we-shell {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }
}
