@charset "utf-8";

/* css Reset */
body {
  margin: 0;
  padding: 0;
  font-family: 'noto';
  letter-spacing: -0.5px;
  font-size: min(25px, calc(25 * var(--vw)));
  font-weight: 500;
  color: #1e2023;
  -webkit-text-size-adjust: none;
  -ms-text-size-adjust: none;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
p,
div,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
li,
dl,
dt,
dd,
table,
th,
td,
form,
fieldset,
legend,
input,
textarea,
select,
button,
code,
label,
em,
span,
strong {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  color: inherit;
  word-break: keep-all;
}
form {
  display: inline;
  margin: 0;
}
img,
fieldset {
  border: 0;
}
hr {
  display: none;
}
li {
  list-style: none;
}
em,
address {
  font-style: normal;
}
label,
input,
select,
textarea {
  vertical-align: middle;
  -webkit-appearance: none;
}
legend {
  position: absolute;
  left: -5000px;
  font-size: 0;
  overflow: hidden;
}
table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}
caption {
  position: relative;
  left: -5000px;
  height: 0;
  line-height: 0;
  text-indent: -5000px;
  overflow: hidden;
}
a:link,
a:active,
a:visited,
a {
  text-decoration: none;
  font: inherit;
  color: inherit;
}
a:hover {
  text-decoration: none;
  color: inherit;
}
label,
input,
button,
select,
img {
  vertical-align: middle;
}
button {
  cursor: pointer;
  outline: none;
  background: none;
}
input[type='button'],
input[type='text'],
input[type='image'],
input[type='submit'],
input[type='password'],
input[type='tel'],
input[type='number'],
select,
textarea {
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0;
  box-sizing: border-box;
}
input[type='checkbox'] {
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
}
input[type='radio'] {
  -webkit-appearance: radio;
  -moz-appearance: radio;
}
textarea {
  resize: none;
  box-sizing: border-box;
}
select {
  box-sizing: border-box;
}
select::-ms-expand {
  display: none;
}

body,
html {
  height: 100%;
}

@font-face {
  font-weight: 700;
  font-style: normal;
  font-family: 'noto';
  src: url(../fonts/NotoSansKR-Bold.woff) format('woff');
}
@font-face {
  font-weight: 500;
  font-style: normal;
  font-family: 'noto';
  src: url(../fonts/NotoSansKR-Medium.woff) format('woff');
}

input::placeholder {
  font-size: min(22px, calc(22 * var(--vw)));
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 1000px #2a2a2a inset !important;
  -webkit-text-fill-color: #fff !important;
  transition: background-color 9999s ease-in-out 0s;
}

::-webkit-scrollbar {
  width: 6px;
  height: 6px;
  border: 6px solid #a8a9ab;
}
::-webkit-scrollbar-button:start:decrement,
::-webkit-scrollbar-button:end:increment {
  display: block;
  height: 10px;
  background: #1c1c1c;
}
::-webkit-scrollbar-track {
  background: #a8a9ab;
  -webkit-border-radius: 10px;
  border-radius: 10px;
  -webkit-box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.2);
}
::-webkit-scrollbar-thumb {
  height: 50px;
  width: 6px;
  background: #fff;
  -webkit-border-radius: 8px;
  border-radius: 8px;
  -webkit-box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.1);
}

:root {
  --vw: calc(100vw / 880);
}

header {
  display: flex;
  align-items: center;
  justify-content: center;
  height: min(410px, calc(410 * var(--vw)));
  background: url(../images/had_bg.jpg) no-repeat 50% 50%;
}
header h1 {
  width: min(591px, calc(591 * var(--vw)));
  height: min(354px, calc(354 * var(--vw)));
  font-size: 0;
  background: url(../images/had_txt.png) no-repeat 50% 50% / contain;
}
.body {
  max-width: min(883px, calc(883 * var(--vw)));
  margin: min(20px, calc(20 * var(--vw))) auto 0;
  padding: 0 min(30px, calc(30 * var(--vw))) min(100px, calc(100 * var(--vw)));
}
.form {
  position: relative;
  margin-top: min(40px, calc(40 * var(--vw)));
  text-align: center;
}
h2 {
  margin-bottom: min(21px, calc(21 * var(--vw)));
  font-size: min(32px, calc(32 * var(--vw)));
  font-weight: 700;
}
h2:after {
  margin-left: min(10px, calc(10 * var(--vw)));
  margin-right: 0;
}
h2:after,
h2:before,
h3:before {
  position: relative;
  top: max(-4px, calc(-4 * var(--vw)));
  content: '';
  display: inline-block;
  width: min(22px, calc(22 * var(--vw)));
  height: min(21px, calc(21 * var(--vw)));
  margin-right: min(10px, calc(10 * var(--vw)));
  vertical-align: middle;
  background: url(../images/ic_bullet.png) no-repeat 50% 50% / contain;
}
h3 {
  font-size: min(32px, calc(32 * var(--vw)));
  font-weight: 700;
}
.button {
  margin-top: min(64px, calc(64 * var(--vw)));
  text-align: center;
}
.button button {
  width: min(448px, calc(448 * var(--vw)));
  height: min(88px, calc(88 * var(--vw)));
  font-size: 0;
  background: url(../images/btn.png) no-repeat 50% 50% / contain;
}
.form label {
  position: absolute;
  top: max(-16px, calc(-16 * var(--vw)));
  margin-left: min(16px, calc(16 * var(--vw)));
  font-size: min(20px, calc(20 * var(--vw)));
  color: #9e9e9e;
  background: #fff;
}
.form select {
  width: min(546px, calc(546 * var(--vw)));
  height: min(56px, calc(56 * var(--vw)));
  padding-left: min(24px, calc(24 * var(--vw)));
  font-size: min(18px, calc(18 * var(--vw)));
  border: 1px solid #cbcbcb;
  border-radius: min(6px, calc(6 * var(--vw)));
  background: url(../images/ic_sel.jpg) no-repeat right min(10px, calc(10 * var(--vw))) center /
    min(10px, calc(10 * var(--vw))) auto;
}
.input {
  max-width: min(546px, calc(546 * var(--vw)));
  margin: 0 auto;
}
.input input {
  width: 100%;
  height: min(118px, calc(118 * var(--vw)));
  padding: 0 min(24px, calc(24 * var(--vw)));
  background-color: #fff;
  border: min(2px, calc(2 * var(--vw))) solid #cbcbcb;
  border-radius: min(60px, calc(60 * var(--vw)));
  box-shadow: 0 min(9px, calc(9 * var(--vw))) 0 #e8e8e8;
  text-align: center;
  outline: none;
  box-sizing: border-box;
  transition: all 0.2s ease-in-out;
  font-size: min(28px, calc(28 * var(--vw)));
}
.input input::placeholder {
  color: #9e9e9e;
  font-size: min(28px, calc(28 * var(--vw)));
}
.input input:focus {
  border-color: #a0a0a0;
}
#couponForm {
  display: block;
}
.msg {
  margin-top: min(24px, calc(24 * var(--vw)));
  text-align: center;
  font-size: min(24px, calc(24 * var(--vw)));
  color: #d64000;
}
.msg.ok {
  color: #1a7f37;
}
.list {
  text-align: center;
}
.list ul {
  display: inline-block;
  margin-top: min(60px, calc(60 * var(--vw)));
  margin-bottom: min(97px, calc(97 * var(--vw)));
  line-height: min(42px, calc(42 * var(--vw)));
  text-align: left;
}
.list li {
  position: relative;
  padding-left: min(24px, calc(24 * var(--vw)));
}
.list li:before {
  content: '';
  position: absolute;
  top: min(19px, calc(19 * var(--vw)));
  left: 0;
  width: min(10px, calc(10 * var(--vw)));
  height: min(10px, calc(10 * var(--vw)));
  background: #000;
  border-radius: 100%;
}
.list li ~ li {
  margin-top: min(16px, calc(16 * var(--vw)));
}
.list li strong {
  font-weight: 700;
}
.txtg h3 {
  margin-left: min(6px, calc(6 * var(--vw)));
  margin-bottom: min(24px, calc(24 * var(--vw)));
}
.txtg .txt {
  display: flex;
  align-items: center;
  gap: min(10px, calc(10 * var(--vw)));
  margin-left: min(38px, calc(38 * var(--vw)));
  margin-bottom: min(50px, calc(50 * var(--vw)));
  text-align: center;
}
.txtg .txt i {
  display: block;
  width: min(15px, calc(15 * var(--vw)));
  height: min(16px, calc(16 * var(--vw)));
  background: url(../images/ic_arrow.png) no-repeat 50% 50% / contain;
}
.txtg .txt br {
  display: none;
}
.txtg .img img {
  width: 100%;
}
.txtg .img ~ .img {
  margin-top: min(40px, calc(40 * var(--vw)));
}

@media (max-width: 720px) {
  header {
    height: min(420px, calc(420 * var(--vw)));
    background: url(../images/had_bg_mo.jpg) no-repeat 50% 50% / cover;
  }
  .list li:before {
    width: 4px;
    height: 4px;
  }
  .txtg .txt {
    justify-content: space-around;
  }
  .txtg .txt br {
    display: block;
  }

  :root {
    --vw: calc(100vw / 720);
  }
}
