@font-face {
  font-family: 'SpoqaHanSansNeo';
  font-style: 'normal';
  src: url('../font/SpoqaHanSansNeo-Regular.woff2');
}

html,
body,
div,
img,
table,
a {
  margin: 0;
  padding: 0;
  border: 0;
  box-sizing: border-box;
  width: 100%;
  display: block;
  position: relative;
  font-family: 'SpoqaHanSansNeo', sans-serif;
}

tr,
td {
  margin: 0;
  padding: 0;
}

.a1:link {
  color: #070707;
  text-decoration: none;
}

.a1:visited {
  color: #070707;
  text-decoration: none;
}

.a1:active {
  color: #070707;
  text-decoration: none;
}

.a1:hover {
  color: #3333ff;
  text-decoration: none;
}

/* --- page-specific (from former inline styles) --- */
.pc-header {
  background: #150f97;
  color: #fffeff;
  height: 79px;
}

.main--boxed {
  max-width: 1100px;
  margin: 0 auto;
}

.pc-header .header-logo {
  width: 198px;
  position: absolute;
  left: 0;
  top: 26px;
}

.header-nav--primary {
  width: 410px;
  position: absolute;
  left: 330px;
  top: 0;
  display: flex;
  justify-content: space-between;
}

.header-nav--primary > a:nth-child(1) {
  width: 80px;
  padding: 20px 15px 0 0;
}

.header-nav--primary > a:nth-child(2) {
  width: 91px;
}

.header-nav--primary > a:nth-child(3) {
  width: 75px;
}

.header-nav--primary > a:nth-child(4) {
  width: 106px;
}

.header-nav--primary > a:nth-child(5) {
  width: 91px;
}

.header-nav--utility {
  width: 228px;
  position: absolute;
  right: -10px;
  top: 0;
  display: flex;
  justify-content: space-between;
}

.header-nav--utility > a:nth-child(1) {
  width: 58px;
}

.header-nav--utility > a:nth-child(2) {
  width: 103px;
}

.header-nav--utility > a:nth-child(3) {
  width: 67px;
}

.content-wrap {
  margin-top: 70px;
}

.hero-left {
  width: 519px;
}

.hero-right {
  width: 366px;
  position: absolute;
  right: 0;
  top: 0;
}

.event-banner {
  margin: 10px 0 0 0;
}

.section-direct-best {
  margin: 60px 0 15px 0;
}

.direct-best-img {
  width: 347px;
}

.cards-row {
  margin: 30px 0 15px 0;
  display: flex;
  justify-content: space-between;
  gap: 10px;
  /* 본문(.main--boxed 1100px) 밖으로만 살짝 넓힘 — 카드 행만 */
  width: min(1200px, calc(100vw - 24px));
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}

.cards-row > a {
  flex: 1 1 0;
  min-width: 0;
}

.legal-note--pc {
  color: #bebebe;
  font-size: 15px;
  font-weight: 500;
  text-align: left;
  margin-top: -8px;
  margin-left: -12px;
}

.policy--skin {
  background: #f9f9f9;
  border: 1px solid #eff0f4;
  margin-top: 40px;
}

.policy-table {
  margin: 0 auto;
  width: 1300px;
  text-align: center;
  border-collapse: collapse;
  font-weight: 600;
  font-size: 14px;
}

.policy-table__row {
  height: 50px;
}

.policy-table td {
  width: 310px;
  border-left: 1px solid #eff0f4;
}

.policy-table td:last-child {
  border-right: 1px solid #eff0f4;
}

.foot--boxed {
  width: 1300px;
  margin: 0 auto;
  padding: 40px 0;
}

.foot__img {
  width: 661px;
}
