@charset "UTF-8";
/* =========================================================
  공통 : reset(초기화) 공통 스타일시트
========================================================= */
*,
*::before,
*::after {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  scroll-behavior: smooth;
}

body {
  overflow-x: hidden;
}

/* 
:focus : 초점이 맞춰지면 무조건 작동 
:focus-visible : 사용자에게 초점 위치를 시각적으로 꼭 명시해 주어야 하는 상황"(예: 키보드 Tab 키 운용 시)에만 작동
*/
:focus, :focus-visible {
  outline-offset: 2px;
  outline: 2px solid #005fcc;
}

/*
:focus:not(:focus-visible) : 포커스(:focus)는 되었는데, 키보드 운용 상태(:focus-visible)는 아닐 때 = 마우스로 클릭했을 때
*/
:focus:not(:focus-visible) {
  outline: none;
}

p, div, span, a, th, td, li, label,
h1, h2, h3, h4, h5, h6, blockquote {
  word-break: break-all;
}

hr {
  display: none;
}

pre {
  overflow-x: scroll;
  font-size: 1rem;
}

ul,
ol,
li {
  list-style: none;
}

a {
  text-decoration: none;
  color: inherit;
}

input,
select,
textarea,
button {
  font: inherit;
  line-height: inherit;
  color: inherit;
  vertical-align: middle;
}

textarea {
  resize: vertical;
}

button {
  cursor: pointer;
  background: none;
  border: 0;
}

img,
video,
svg,
canvas,
picture {
  max-width: 100%;
  display: block;
  height: auto;
  vertical-align: middle;
}

#bo_v_con img,
#bo_v_con video,
#bo_v_con svg,
#bo_v_con canvas,
#bo_v_con picture {
  display: inline-block;
}

iframe {
  max-width: 100%;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

fieldset {
  border: 0;
}

input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-results-button,
input[type=search]::-webkit-search-results-decoration {
  display: none;
}