@charset "UTF-8";
.btn.xsmall {
  padding: 0 1rem;
  height: 2rem;
  line-height: 1.8rem;
  border: 1px solid;
  border-radius: 2rem;
  box-sizing: border-box;
  font-size: 1.2rem;
  font-weight: 400;
}

.btn.small {
  padding: 0 1.4rem;
  height: 3rem;
  line-height: 2.8rem;
  border: 1px solid;
  border-radius: 3rem;
  box-sizing: border-box;
  font-size: 1.2rem;
  font-weight: 400;
}

.btn.middle {
  padding: 0 2rem;
  height: 4rem;
  line-height: 3.8rem;
  border: 1px solid;
  border-radius: 4rem;
  box-sizing: border-box;
  font-size: 1.3rem;
  font-weight: 500;
}

.btn.large {
  padding: 0 2rem;
  height: 4rem;
  line-height: 3.8rem;
  border: 1px solid;
  border-radius: 4rem;
  box-sizing: border-box;
  font-size: 1.6rem;
  font-weight: 600;
}

.btn.xxsmall {
  padding: 0 1.2rem;
  height: 2.8rem;
  line-height: 2.6rem;
  border: 1px solid;
  border-radius: 2.8rem;
  box-sizing: border-box;
  font-size: 1.2rem;
  font-weight: 400;
}

.btn.xlarge {
  padding: 0 0rem;
  height: 6rem;
  line-height: 5.8rem;
  border: 1px solid;
  border-radius: 6rem;
  box-sizing: border-box;
  font-size: 1.6rem;
  font-weight: 400;
}

.btn.blue1 {
  background: #fff;
  border-color: #2580AD;
  color: #2580AD;
}

.btn.blue2 {
  background: #2580AD;
  border-color: #2580AD;
  color: #fff;
}

.btn.gray {
  background: #D8D8D8;
  border-color: #D8D8D8;
  color: #fff;
}

.btn.gray1 {
  background: #fff;
  border-color: #9E9E9E;
  color: #9E9E9E;
}

.btn.gray2 {
  background: #9E9E9E;
  border-color: #9E9E9E;
  color: #fff;
}

.btn.gray3 {
  background: #fff;
  border-color: #D8D8D8;
  color: #262626;
}

.btn.mono1 {
  background: #fff;
  border-color: #262626;
  color: #262626;
}

.btn.mono2 {
  background: #262626;
  border-color: #262626;
  color: #fff;
}

.btn.green1 {
  background: #fff;
  border-color: #2C9462;
  color: #2C9462;
}

.btn.green2 {
  background: #2C9462;
  border-color: #2C9462;
  color: #fff;
}

.btn.purple1 {
  background: #fff;
  border-color: #9957B0;
  color: #9957B0;
}

.btn.purple2 {
  background: #9957B0;
  border-color: #9957B0;
  color: #fff;
}

.btn.white {
  background: #fff;
  border-color: #fff;
  color: #262626;
}

.btn.grayblack {
  background: #2D2D2D;
  border-color: rgba(255, 255, 255, 0.05);
  color: rgba(255, 255, 255, 0.2);
}

.btn.grayblack2 {
  background: #2D2D2D;
  border-color: rgba(255, 255, 255, 0.1);
  color: #BBBCBC;
}

.btn.lightgray {
  background: #E8E8E8;
  border-color: #E8E8E8;
  color: #262626;
}

.btn.ra20 {
  border-radius: 2rem;
}

.btn.ra16 {
  border-radius: 1.6rem;
}

.btn.ra10 {
  border-radius: 1rem;
}

.btn.ra8 {
  border-radius: 0.8rem;
}

.btn.ra4 {
  border-radius: 0.4rem;
}

.ra20 {
  border-radius: 2rem;
}

.ra16 {
  border-radius: 1.6rem;
}

.ra10 {
  border-radius: 1rem;
}

.ra8 {
  border-radius: 0.8rem;
}

.ra4 {
  border-radius: 0.4rem;
}

.pad10 {
  padding: 1rem;
}

.pad15 {
  padding: 1.5rem;
}

.pad20 {
  padding: 2rem;
}

.pad25 {
  padding: 2.5rem;
}

.pad30 {
  padding: 3rem;
}

.pad40 {
  padding: 4rem;
}

.btn.ico1::before {
  background: url(../images/ico-logo-white.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 3.5rem;
  height: 2rem;
}
.btn.ico1:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico2::before {
  background: url(../images/ico-logo-blue.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 3.5rem;
  height: 2rem;
}
.btn.ico2:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico3::before {
  background: url(../images/ico-search.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico3:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico4::before {
  background: url(../images/ico-alarm.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico4:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico5::before {
  background: url(../images/ico_mypage.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico5:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico6::before {
  background: url(../images/ico_picture.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico6:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico7::before {
  background: url(../images/ico-arrow-left-white.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico7:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico8::before {
  background: url(../images/ico-arrow-left-black.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico8:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico9::before {
  background: url(../images/ico-close-white.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico9:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico10::before {
  background: url(../images/ico-close-black.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico10:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico11::before {
  background: url(../images/ico-arrow-right-black.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico11:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico12::before {
  background: url(../images/ico-search-black.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico12:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico13::before {
  background: url(../images/ico-search-white.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico13:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico14::before {
  background: url(../images/ico-share-black.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico14:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico15::before {
  background: url(../images/ico-share-white.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico15:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico16::before {
  background: url(../images/ico-arrow-right-blue.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico16:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico17::before {
  background: url(../images/ico-arrow-right-black-s.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico17:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico18::before {
  background: url(../images/ico-arrow-left-black-s.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico18:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico19::before {
  background: url(../images/ico-move.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico19:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico20::before {
  background: url(../images/bu-more.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 0.3rem;
  height: 1.5rem;
}
.btn.ico20:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico21::before {
  background: url(../images/ico-view.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1.2rem;
  height: 1.2rem;
}
.btn.ico21:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico22::before {
  background: url(../images/ico-view2.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1.2rem;
  height: 1.2rem;
}
.btn.ico22:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico23::before {
  background: url(../images/ico-copy.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1.4rem;
  height: 1.6rem;
}
.btn.ico23:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico24::before {
  background: url(../images/ico-call.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1.6rem;
  height: 1.6rem;
}
.btn.ico24:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico25::before {
  background: url(../images/ico-arrow-down-white_m.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1rem;
  height: 1rem;
}
.btn.ico25:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico26::before {
  background: url(../images/ico-arrow-right-white_m.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 0.6rem;
  height: 1rem;
}
.btn.ico26:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico27::before {
  background: url(../images/ico-refresh.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2.4rem;
  height: 2.4rem;
}
.btn.ico27:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico28::before {
  background: url(../images/ico-arrow-right-black2.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 0.6rem;
  height: 1rem;
}
.btn.ico28:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico29::before {
  background: url(../images/ico-set.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico29:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico30::before {
  background: url(../images/point1.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico30:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico31::before {
  background: url(../images/point2.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico31:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico32::before {
  background: url(../images/point3.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico32:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico33::before {
  background: url(../images/point4.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico33:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico34::before {
  background: url(../images/ico-arrow-left-white-s.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico34:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico35::before {
  background: url(../images/ico-arrow-right-white-s.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico35:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico36::before {
  background: url(../images/ico-share.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico36:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico37::before {
  background: url(../images/ico-graph.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.ico37:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico38::before {
  background: url(../images/ico-edit.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2.2rem;
  height: 2.2rem;
}
.btn.ico38:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.ico39::before {
  background: url(../images/ico-reply-more.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 0.4rem;
  height: 1.6rem;
}
.btn.ico39:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.icom1::before {
  background: url(../images/ico_more1.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.icom1:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.icom2::before {
  background: url(../images/ico_more2.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.icom2:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.icom3::before {
  background: url(../images/ico_more3.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.icom3:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.icom4::before {
  background: url(../images/ico_more4.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.icom4:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.icom5::before {
  background: url(../images/ico_more5.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.icom5:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.icom6::before {
  background: url(../images/ico_more6.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.icom6:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.icom7::before {
  background: url(../images/ico_more7.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.icom7:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.icom8::before {
  background: url(../images/ico_more8.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.icom8:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.icom9::before {
  background: url(../images/ico_more9.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.icom9:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.icom10::before {
  background: url(../images/ico_more10.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.icom10:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.btn.icom11::before {
  background: url(../images/ico_more11.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}
.btn.icom11:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.card.cico0::after {
  background: url(../images/card-none.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  overflow: hidden;
}
.card.cico0:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.card.cico1::after {
  background: url(../images/card-BC.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  overflow: hidden;
}
.card.cico1:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.card.cico2::after {
  background: url(../images/card-Citi.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  overflow: hidden;
}
.card.cico2:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.card.cico3::after {
  background: url(../images/card-Gwangju.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  overflow: hidden;
}
.card.cico3:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.card.cico4::after {
  background: url(../images/card-Hana.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  overflow: hidden;
}
.card.cico4:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.card.cico5::after {
  background: url(../images/card-Hyundai.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  overflow: hidden;
}
.card.cico5:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.card.cico6::after {
  background: url(../images/card-Jeju.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  overflow: hidden;
}
.card.cico6:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.card.cico7::after {
  background: url(../images/card-Jeonbuk.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  overflow: hidden;
}
.card.cico7:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.card.cico8::after {
  background: url(../images/card-KB.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  overflow: hidden;
}
.card.cico8:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.card.cico9::after {
  background: url(../images/card-Lotte.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  overflow: hidden;
}
.card.cico9:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.card.cico10::after {
  background: url(../images/card-Master.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  overflow: hidden;
}
.card.cico10:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.card.cico11::after {
  background: url(../images/card-NH.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  overflow: hidden;
}
.card.cico11:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.card.cico12::after {
  background: url(../images/card-Samsung.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  overflow: hidden;
}
.card.cico12:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.card.cico13::after {
  background: url(../images/card-Sinhan.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  overflow: hidden;
}
.card.cico13:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.card.cico14::after {
  background: url(../images/card-Suhyup.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  overflow: hidden;
}
.card.cico14:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.card.cico15::after {
  background: url(../images/card-Visa.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  overflow: hidden;
}
.card.cico15:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.card.cico16::after {
  background: url(../images/card-Woori.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  overflow: hidden;
}
.card.cico16:disabled {
  background-color: unset;
  border-color: unset;
  opacity: 0.5;
}

.slot.ico1::before {
  background: url(../images/ico-health1.svg) no-repeat;
  background-size: cover;
  position: absolute;
  left: 0.5rem;
  bottom: 0;
  content: "";
  display: block;
  width: 3.6rem;
  height: 3.6rem;
}

.slot.ico2::before {
  background: url(../images/ico-health2.svg) no-repeat;
  background-size: cover;
  position: absolute;
  left: 0.5rem;
  bottom: 0;
  content: "";
  display: block;
  width: 3.6rem;
  height: 3.6rem;
}

.slot.ico3::before {
  background: url(../images/ico-health3.svg) no-repeat;
  background-size: cover;
  position: absolute;
  left: 0.5rem;
  bottom: 0;
  content: "";
  display: block;
  width: 3.6rem;
  height: 3.6rem;
}

.slot.ico4::before {
  background: url(../images/ico-health4.svg) no-repeat;
  background-size: cover;
  position: absolute;
  left: 0.5rem;
  bottom: 0;
  content: "";
  display: block;
  width: 3.6rem;
  height: 3.6rem;
}

.slot.ico5::before {
  background: url(../images/ico-health6.svg) no-repeat;
  background-size: cover;
  position: absolute;
  left: 0.5rem;
  bottom: 0;
  content: "";
  display: block;
  width: 3.6rem;
  height: 3.6rem;
}

.slot.ico6::before {
  background: url(../images/ico-health5.svg) no-repeat;
  background-size: cover;
  position: absolute;
  left: 0.5rem;
  bottom: 0;
  content: "";
  display: block;
  width: 3.6rem;
  height: 3.6rem;
}

.slot.ico7::before {
  background: url(../images/ico-before.svg) no-repeat;
  background-size: cover;
  position: absolute;
  left: 0.5rem;
  bottom: 0;
  content: "";
  display: block;
  width: 5rem;
  height: 5rem;
}

.slot.ico8::before {
  background: url(../images/ico-care.svg) no-repeat;
  background-size: cover;
  position: absolute;
  left: 0.5rem;
  bottom: 0;
  content: "";
  display: block;
  width: 5rem;
  height: 5rem;
}

.slot.ico9::before {
  background: url(../images/ico-condition.svg) no-repeat;
  background-size: cover;
  position: absolute;
  left: 0.5rem;
  bottom: 0;
  content: "";
  display: block;
  width: 5rem;
  height: 5rem;
}

.icon.basicicon1::after {
  background: url(../images/ico-location2.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1.6rem;
  height: 2rem;
}

.icon.basicicon2::after {
  background: url(../images/ico-location3.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1.6rem;
  height: 1.6rem;
}

.icon.basicicon3::after {
  background: url(../images/ico-calendar.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1.6rem;
  height: 1.6rem;
}

.icon.basicicon4::after {
  background: url(../images/ico-hospital.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}

.icon.basicicon5::after {
  background: url(../images/ico-arrow-right-gray.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 0.6rem;
  height: 1rem;
}

.icon.basicicon6::after {
  background: url(../images/ico-plus2.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1rem;
  height: 1rem;
}

.icon.basicicon7::after {
  background: url(../images/ico-arrow-down-white_m.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1rem;
  height: 1rem;
}

.icon.basicicon8::after {
  background: url(../images/ico-plus3.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1.2rem;
  height: 1.2rem;
}

.icon.basicicon9::after {
  background: url(../images/ico-pickup.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}

.icon.basicicon10::after {
  background: url(../images/ico-arrow-down-black_m.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1rem;
  height: 1rem;
}

.icon.basicicon11::after {
  background: url(../images/ico-arrow-right-white_m.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 0.6rem;
  height: 1rem;
}

.icon.basicicon12::after {
  background: url(../images/ico-transform.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 0.9rem;
  height: 0.8rem;
}

.icon.basicicon13::after {
  background: url(../images/ico-transform2.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1.3rem;
  height: 1.2rem;
}

.icon.basicicon14::after {
  background: url(../images/ico-transform3.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 0.9rem;
  height: 0.8rem;
}

.icon.basicicon15::after {
  background: url(../images/ico-transform4.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1.2rem;
  height: 1.1rem;
}

.icon.basicicon16::after {
  background: url(../images/ico-arrow-down-gray_s.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1rem;
  height: 1rem;
}

.icon.basicicon17::after {
  background: url(../images/ico-today.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}

.icon.basicicon18::after {
  background: url(../images/ico-arrow-top-black.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1rem;
  height: 0.6rem;
}

.icon.basicicon19::after {
  background: url(../images/ico-chk.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1.1rem;
  height: 1.1rem;
}

.icon.basicicon20::after {
  background: url(../images/ico-arrow-down-gray2.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1rem;
  height: 0.6rem;
}

.icon.basicicon21::after {
  background: url(../images/ico-arrow-top-gray2.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1rem;
  height: 0.6rem;
}

.icon.basicicon22::after {
  background: url(../images/ico-arrow-right-gray2.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 0.6rem;
  height: 1rem;
}

.icon.basicicon23::after {
  background: url(../images/ico-health-edit1.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}

.icon.basicicon24::after {
  background: url(../images/ico-health-edit2.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}

.icon.basicicon25::after {
  background: url(../images/ico-health-edit3.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}

.icon.basicicon26::after {
  background: url(../images/ico-health-edit4.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}

.icon.basicicon27::after {
  background: url(../images/ico-health-edit5.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}

.icon.basicicon28::after {
  background: url(../images/ico-health-edit6.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}

.icon.basicicon29::after {
  background: url(../images/ico-graph2.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}

.icon.basicicon30::after {
  background: url(../images/ico-graph2.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}

.icon.basicicon31::after {
  background: url(../images/report_1.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}

.icon.basicicon32::after {
  background: url(../images/report_2.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}

.icon.basicicon33::after {
  background: url(../images/report_3.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}

.icon.basicicon34::after {
  background: url(../images/report_4.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}

.icon.basicicon35::after {
  background: url(../images/report_5.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 2rem;
  height: 2rem;
}

.badge.normal {
  padding: 0 1rem;
  line-height: 1.8rem;
  border: 1px solid;
  border-radius: 2rem;
  box-sizing: border-box;
  font-size: 1.2rem;
}

.badge.small {
  padding: 0 0.6rem;
  line-height: 1.8rem;
  border: 1px solid;
  border-radius: 2rem;
  box-sizing: border-box;
  font-size: 1rem;
}

.badge.blue {
  background: #2580AD;
  border-color: #2580AD;
  color: #fff;
}

.badge.mono {
  background: #262626;
  border-color: #262626;
  color: #fff;
}

.badge.out-blue {
  background: #fff;
  border-color: #2580AD;
  color: #2580AD;
}

.badge.out-mono {
  background: #fff;
  border-color: #262626;
  color: #262626;
}

.badge.out-purple {
  background: #fff;
  border-color: #9957B0;
  color: #9957B0;
}

.badge.out-gray {
  background: #fff;
  border-color: #BBBCBC;
  color: #BBBCBC;
}

/* Reset */
html, body, h1, h2, h3, h4, h5, h6, div, p, blockquote, pre, code, address, ul, ol, li, nav, section, article, header, footer, main, aside, dl, dt, dd, table, thead, tbody, tfoot, label, caption, th, td, form, fieldset, legend, hr, input, button, textarea, object, figure, figcaption {
  margin: 0;
  padding: 0;
}

body, input, select, textarea, button, img, fieldset {
  border: none;
}

ul, ol, li {
  list-style: none;
}

table {
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse;
  table-layout: fixed;
}

address, cite, code, em, i {
  font-style: normal; /*font-weight:normal;*/
}

label, img, input, select, textarea, button, a {
  vertical-align: middle;
}

u, ins, a {
  text-decoration: none;
  color: unset;
}

button {
  cursor: pointer;
  background-color: transparent;
  color: unset;
}

caption > div, legend, .hide {
  overflow: hidden;
  display: block;
  position: absolute;
  border: 0;
  width: 1px;
  height: 1px;
  clip: rect(1px, 1px, 1px, 1px);
}

/* Normalize */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
}

input[type=number] {
  -moz-appearance: textfield;
}

input[type=number],
input[type=text],
input[type=password],
input[type=url],
input[type=email],
input[type=tel],
input[type=date],
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 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 {
  -webkit-appearance: none;
}

html {
  touch-action: manipulation;
}

@font-face {
  font-family: "Pretendard";
  font-weight: 900;
  font-display: swap;
  src: local("Pretendard Black"), url("/fonts/pretendard/Pretendard-Black.woff2") format("woff2"), url("/fonts/pretendard/Pretendard-Black.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 800;
  font-display: swap;
  src: local("Pretendard ExtraBold"), url("/fonts/pretendard/Pretendard-ExtraBold.woff2") format("woff2"), url("/fonts/pretendard/Pretendard-ExtraBold.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 700;
  font-display: swap;
  src: local("Pretendard Bold"), url("/fonts/pretendard/Pretendard-Bold.woff2") format("woff2"), url("/fonts/pretendard/Pretendard-Bold.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 600;
  font-display: swap;
  src: local("Pretendard SemiBold"), url("/fonts/pretendard/Pretendard-SemiBold.woff2") format("woff2"), url("/fonts/pretendard/Pretendard-SemiBold.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 500;
  font-display: swap;
  src: local("Pretendard Medium"), url("/fonts/pretendard/Pretendard-Medium.woff2") format("woff2"), url("/fonts/pretendard/Pretendard-Medium.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 400;
  font-display: swap;
  src: local("Pretendard Regular"), url("/fonts/pretendard/Pretendard-Regular.woff2") format("woff2"), url("/fonts/pretendard/Pretendard-Regular.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 300;
  font-display: swap;
  src: local("Pretendard Light"), url("/fonts/pretendard/Pretendard-Light.woff2") format("woff2"), url("/fonts/pretendard/Pretendard-Light.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 200;
  font-display: swap;
  src: local("Pretendard ExtraLight"), url("/fonts/pretendard/Pretendard-ExtraLight.woff2") format("woff2"), url("/fonts/pretendard/Pretendard-ExtraLight.woff") format("woff");
}
@font-face {
  font-family: "Pretendard";
  font-weight: 100;
  font-display: swap;
  src: local("Pretendard Thin"), url("/fonts/pretendard/Pretendard-Thin.woff2") format("woff2"), url("/fonts/pretendard/Pretendard-Thin.woff") format("woff");
}
html {
  font-size: 10px;
  font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
  color: #262626;
  line-height: 1.4;
  word-break: keep-all;
}

body {
  font-size: 1rem;
}

* {
  font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
}

.h2 {
  font-size: 1.8rem;
  font-weight: 700;
}
.h2 .dot {
  position: relative;
  padding-left: 1.3rem;
}
.h2 .dot::before {
  content: "";
  position: absolute;
  left: 0.5rem;
  top: 50%;
  transform: translateY(-50%);
  width: 0.3rem;
  height: 0.3rem;
  background-color: #9E9E9E;
  border-radius: 50%;
}

.h3 {
  font-size: 1.6rem;
  font-weight: 600;
}

.word {
  word-break: break-all;
}

.txt {
  display: inline-block;
}
.txt__tip {
  font-size: 1.2rem;
  color: #9E9E9E;
}
.txt__error {
  font-size: 1.2rem;
  color: #FC4545;
}
.txt__number {
  font-size: 2.4rem;
}
.txt__number-lg {
  font-size: 3rem;
}
.txt__number-m {
  font-size: 2.8rem;
}
.txt__price, .txt__user, .txt__number {
  font-size: 2rem;
}
.txt__head {
  font-size: 1.8rem;
}
.txt__tit {
  font-size: 1.6rem;
}
.txt__text {
  font-size: 1.4rem;
}
.txt__desc {
  font-size: 1.3rem;
}
.txt__unit, .txt__xsmall {
  font-size: 1.2rem;
}
.txt__count {
  font-size: 1.6rem;
}
.txt-blue {
  color: #2580AD;
}
.txt-blue .txt-dot::before {
  background-color: #2580AD;
}
.txt-red {
  color: #F93232;
}
.txt-purple {
  color: #9957B0;
}
.txt-green {
  color: #2C9462;
}
.txt-black {
  color: #262626;
}
.txt-gray {
  color: #BBBCBC;
}
.txt-gray9E {
  color: #9E9E9E;
}
.txt-gray66 {
  color: #666666;
}
.txt-grayE8 {
  color: #E8E8E8;
}
.txt-grayD8 {
  color: #D8D8D8;
}
.txt-white {
  color: #fff;
}
.txt-underline {
  text-decoration: underline;
}
.txt__dot {
  position: relative;
  font-size: 1.4rem;
  line-height: 2rem;
  padding-left: 0.9rem;
  color: #9E9E9E;
}
.txt__dot::before {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  width: 0.3rem;
  height: 0.3rem;
  border-radius: 100%;
  background-color: #9E9E9E;
}

.walk_num {
  font-size: 3.4rem;
}

.black {
  font-weight: 900;
}

.regular {
  font-weight: 400 !important;
}

.medium {
  font-weight: 500 !important;
}

.smbold {
  font-weight: 600 !important;
}

.bold {
  font-weight: 700 !important;
}

.lh22 {
  line-height: 2.2rem;
}

.new {
  position: relative;
}
.new::after {
  content: "NEW";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-weight: 600;
  font-size: 1.2rem;
  color: #2C9462;
}

.align {
  display: flex;
}
.align.inline {
  display: inline-flex;
}
.align.right {
  justify-content: flex-end;
}
.align.center {
  justify-content: center;
}
.align.both {
  justify-content: space-between;
}
.align.bottom {
  position: fixed;
  left: 2rem;
  right: 2rem;
  bottom: 3rem;
}
.align.wrap {
  flex-wrap: wrap;
}
.align.col {
  flex-direction: column;
}
.align.vt {
  align-items: flex-start;
}
.align.vm {
  align-items: center;
}
.align.vb {
  align-items: flex-end;
}
.align-btn {
  display: flex;
  flex: 1;
  gap: 1rem;
}
.align-btn .btn {
  justify-content: center;
  flex: 1;
}
.align-btn .btn.end {
  justify-content: end;
}
.align-btn2 {
  display: flex;
  gap: 1rem;
}
.align-btn2 button:last-of-type {
  flex: 1;
}

.txt-left {
  text-align: left;
}
.txt-center {
  text-align: center;
}
.txt-right {
  text-align: right;
}

.flex-1 {
  flex: 1;
}
.flex-2 {
  flex: 2;
}
.flex-3 {
  flex: 3;
}

.shrink {
  flex-shrink: 0;
}

.gap4 {
  gap: 0.4rem;
}
.gap6 {
  gap: 0.6rem;
}
.gap10 {
  gap: 1rem;
}
.gap16 {
  gap: 1.6rem;
}
.gap20 {
  gap: 2rem;
}
.gap25 {
  gap: 2.5rem;
}

.mt0 {
  margin-top: 0rem;
}
.mt2 {
  margin-top: 0.2rem;
}
.mt3 {
  margin-top: 0.3rem;
}
.mt4 {
  margin-top: 0.4rem;
}
.mt5 {
  margin-top: 0.5rem;
}
.mt6 {
  margin-top: 0.6rem;
}
.mt8 {
  margin-top: 0.8rem;
}
.mt10 {
  margin-top: 1rem;
}
.mt12 {
  margin-top: 1.2rem;
}
.mt14 {
  margin-top: 1.4rem;
}
.mt15 {
  margin-top: 1.5rem;
}
.mt16 {
  margin-top: 1.6rem;
}
.mt18 {
  margin-top: 1.8rem;
}
.mt20 {
  margin-top: 2rem;
}
.mt24 {
  margin-top: 2.4rem;
}
.mt25 {
  margin-top: 2.5rem;
}
.mt28 {
  margin-top: 2.8rem;
}
.mt30 {
  margin-top: 3rem;
}
.mt32 {
  margin-top: 3.2rem;
}
.mt40 {
  margin-top: 4rem;
}
.mt48 {
  margin-top: 4.8rem;
}
.mt50 {
  margin-top: 5rem;
}
.mt60 {
  margin-top: 6rem;
}
.mt70 {
  margin-top: 7rem;
}
.mt100 {
  margin-top: 10rem;
}
.mt200 {
  margin-top: 20rem;
}

.mb0 {
  margin-bottom: 0rem;
}
.mb2 {
  margin-bottom: 0.2rem;
}
.mb6 {
  margin-bottom: 0.6rem;
}
.mb7 {
  margin-bottom: 0.7rem;
}
.mb10 {
  margin-bottom: 1rem;
}
.mb14 {
  margin-bottom: 1.4rem;
}
.mb20 {
  margin-bottom: 2rem;
}
.mb30 {
  margin-bottom: 3rem;
}
.mb40 {
  margin-bottom: 4rem;
}
.mb50 {
  margin-bottom: 5rem;
}

.ml0 {
  margin-left: 0rem;
}
.ml2 {
  margin-left: 0.2rem;
}
.ml3 {
  margin-left: 0.3rem;
}
.ml4 {
  margin-left: 0.4rem;
}
.ml5 {
  margin-left: 0.5rem;
}
.ml6 {
  margin-left: 0.6rem;
}
.ml8 {
  margin-left: 0.8rem;
}
.ml10 {
  margin-left: 1rem;
}
.ml55 {
  margin-left: 5.5rem;
}
.ml60 {
  margin-left: 6rem;
}

.mr0 {
  margin-right: 0rem;
}
.mr2 {
  margin-right: 0.2rem;
}
.mr3 {
  margin-right: 0.3rem;
}
.mr4 {
  margin-right: 0.4rem;
}
.mr6 {
  margin-right: 0.6rem;
}
.mr8 {
  margin-right: 0.8rem;
}
.mr10 {
  margin-right: 1rem;
}
.mr20 {
  margin-right: 2rem;
}

.pt10 {
  padding-top: 1rem;
}
.pt20 {
  padding-top: 2rem;
}
.pt30 {
  padding-top: 3rem;
}
.pt70 {
  padding-top: 7rem;
}
.pt100 {
  padding-top: 10rem;
}

.pl10 {
  padding-left: 1rem;
}
.pl20 {
  padding-left: 2rem;
}
.pl40 {
  padding-left: 4rem;
}

.pr0 {
  padding-right: 0rem;
}
.pr10 {
  padding-right: 1rem;
}
.pr15 {
  padding-right: 1.5rem;
}
.pr16 {
  padding-right: 1.6rem;
}
.pr20 {
  padding-right: 2rem;
}
.pr35 {
  padding-right: 3.5rem;
}
.pr40 {
  padding-right: 4rem;
}
.pr50 {
  padding-right: 5rem;
}

.pb6 {
  padding-bottom: 0.6rem;
}
.pb10 {
  padding-bottom: 1rem;
}
.pb15 {
  padding-bottom: 1.5rem;
}
.pb20 {
  padding-bottom: 2rem;
}
.pb30 {
  padding-bottom: 3rem;
}

.fullsize {
  width: calc(100% + 3.2rem);
  margin-left: -1.6rem;
}

.posi {
  position: relative;
}

.absol {
  position: absolute;
}

.header__right button.on::after {
  position: absolute;
  right: 0.2rem;
  top: 0.6rem;
  content: "";
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 100%;
  animation: dot 1.5s infinite;
}
@keyframes dot {
  50% {
    opacity: 40%;
  }
}

.header {
  position: relative;
  z-index: 100;
  transition: background 0.1s ease-in-out;
}
.header .h1 {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 1.6rem;
  font-weight: 500;
}
.header__nav {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 5rem;
  width: 100%;
}
.header__menu {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 5rem;
}
.header__menu::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  box-sizing: border-box;
  border-bottom: 1px solid;
  border-color: #fff;
  opacity: 10%;
}
.header__menu.alarm .menu .active .a {
  color: #262626;
}
.header__menu.alarm .menu .active .a:after {
  background-color: #262626;
  box-shadow: unset;
}
.header__menu.alarm .menu .a {
  text-shadow: unset;
  color: #BBBCBC;
  opacity: unset;
}
.header__menu.alarm::after {
  border-color: #E8E8E8;
  opacity: unset;
}
.header__sub {
  border-bottom: 1px solid #E8E8E8;
  padding-left: 2rem;
  padding-right: 2rem;
  padding-bottom: 2rem;
}
.header__left {
  padding-left: 0.7rem;
}
.header__left button {
  margin-right: 0.4rem;
}
.header__left button.ico1 {
  margin-left: 1.3rem;
}
.header__right {
  padding-right: 0.7rem;
}
.header__right button {
  width: 3.6rem;
  height: 3.6rem;
  margin-left: 0.4rem;
}
.header__right button.on {
  position: relative;
}
.header__right button.on::after {
  background-color: #fff;
}
.header.blue .header__main {
  background-color: #2580AD;
}
.header.blue .h1 {
  color: #fff;
}
.header.blue .header__menu::after {
  border-color: #262626;
  opacity: 40%;
}
.header.dark .header__main {
  background-color: #262626;
}
.header.dark .h1 {
  color: #fff;
}
.header.dark .header__right button.on::after {
  background-color: #2580AD;
}
.header.dark .btn.ico1::before {
  background: url(../images/ico-logo-blue.svg) no-repeat center center;
}
.header.dark .btn.ico8::before {
  background: url(../images/ico-arrow-left-white.svg) no-repeat center center;
  filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.5));
}
.header.dark .btn.ico10::before {
  background: url(../images/ico-close-white.svg) no-repeat center center;
  filter: drop-shadow(0px 0px 2px rgba(0, 0, 0, 0.5));
}
.header.dark .btn.ico12::before {
  background: url(../images/ico-search-white.svg) no-repeat center center;
  filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.5));
}
.header.light .header__main {
  background-color: transparent;
}
.header.light.hm .header__main .header__left,
.header.light.hm .header__main .header__right {
  filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.5));
}
.header.fixed {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
}
.header.fixed.light .header__main {
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
}
.header.fixed.light.hm .header__main {
  background: rgba(255, 255, 255, 0.15);
}
.header.fixed.blue .header__main {
  background: rgba(37, 128, 173, 0.8);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
}
.header.fixed.dark .header__main {
  background: rgba(38, 38, 38, 0.8);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
}

.menu {
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
  margin-left: 2rem;
  gap: 2.4rem;
}
.menu li {
  height: 100%;
}
.menu .active .a {
  position: relative;
  opacity: 100%;
}
.menu .active .a::after {
  position: absolute;
  left: 0;
  bottom: 0rem;
  content: "";
  background-color: #fff;
  width: 100%;
  height: 1px;
  z-index: 1;
  box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.5);
}
.menu .a {
  display: inline-flex;
  align-items: center;
  height: 100%;
  font-size: 1.6rem;
  font-weight: 700;
  color: #fff;
  opacity: 50%;
  text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.5);
}

.tab_date .swiper-pagination {
  position: relative;
  text-align: unset;
  transform: unset;
  bottom: unset;
  top: unset;
  left: unset;
  display: flex;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}
.tab_date .swiper-pagination span {
  display: inline-flex;
  align-items: center;
  padding-left: 1.4rem;
  padding-right: 1.4rem;
  height: 3rem;
  background-color: #D8D8D8;
  border-radius: 1.5rem;
  font-size: 1.2rem;
  color: #fff;
  font-weight: 500;
  width: auto;
  opacity: 1;
}
.tab_date .swiper-pagination span.swiper-pagination-bullet {
  margin: unset;
}
.tab_date .swiper-pagination span.swiper-pagination-bullet-active {
  background-color: #2580AD;
}

.popup {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  padding: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 200;
}
.popup__modal {
  z-index: 201;
  position: relative;
  width: 100%;
  padding: 3rem 2rem 2rem 2rem;
  border-radius: 2rem;
  background-color: #fff;
  text-align: center;
}
.popup__modal.event {
  padding: unset;
  width: unset;
  border-radius: unset;
  background-color: unset;
  filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.2));
}
.popup__modal.event .img_container {
  position: relative;
  width: 32rem;
  height: 35rem;
  border-radius: 0.8rem;
  overflow: hidden;
  background-color: #262626;
}
.popup__modal.event .img_container img {
  width: 100%;
  height: 100%;
}
.popup__modal.event .img_container .event_info {
  height: 5rem;
  line-height: 5rem;
  background-color: #262626;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 500;
}
.popup__modal.event .img_container .swiper-pagination-bullet {
  background-color: #fff;
  box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.5);
}
.popup__modal .h2 {
  position: relative;
  display: block;
  padding-top: 4.2rem;
  color: #2580AD;
  font-weight: 500;
}
.popup__modal .h2::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  background: url(../images/ico-logo-black.svg) no-repeat center center;
  background-size: cover;
  width: 5rem;
  height: 2.8rem;
}
.popup__modal img {
  display: block;
  margin: 0 auto;
  width: 10rem;
  height: auto;
}
.popup__modal .code {
  width: 16rem;
  height: 16rem;
  margin: 0 auto;
}
.popup__modal .code img {
  width: 100%;
}
.popup__toast {
  z-index: 201;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 3rem 2rem;
  border-radius: 2rem 2rem 0 0;
  background-color: #fff;
}
.popup__toast-img {
  z-index: 201;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
}
.popup__toast-img img {
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-sizing: border-box;
  overflow: hidden;
  border-radius: 2rem 2rem 0 0;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
.popup__toast img {
  display: block;
  margin: 0 auto;
  width: 10rem;
  height: auto;
}
.popup__control {
  position: absolute;
  left: 0;
  bottom: -3.8rem;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #fff;
  font-size: 1.4rem;
}
.popup__control-left input + label {
  color: #fff !important;
}
.popup__control-right button {
  color: #fff;
  font-size: 1.4rem;
}
.popup__close {
  position: absolute;
  right: 1.8rem;
  top: 1.8rem;
}
.popup__qr {
  z-index: 201;
  position: fixed;
  padding: 5rem 2rem 2rem 2rem;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}
.popup__qr .tit {
  position: relative;
  display: block;
  padding-top: 10.8rem;
  color: #fff;
  font-size: 1.8rem;
  text-align: center;
}
.popup__qr .tit::before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 30%;
  transform: translateX(-50%);
  background: url(../images/ico-logo-blue.svg) no-repeat center center;
  background-size: cover;
  width: 6.6rem;
  height: 3.8rem;
}
.popup__qr-bottom {
  position: absolute;
  bottom: 3rem;
  left: 2rem;
  right: 2rem;
}

.detail_list li {
  display: flex;
  justify-content: space-between;
  margin-bottom: 1rem;
}
.detail_list li.result {
  padding-top: 1.4rem;
  border-top: 1px solid #BBBCBC;
  margin-bottom: unset;
}
.detail_list li.result > * {
  font-size: 1.4rem;
  font-weight: 600;
  color: #2580AD;
}
.detail_list .lh {
  font-size: 1.3rem;
}
.detail_list .ld {
  font-size: 1.3rem;
  font-weight: 600;
}

.join_list li {
  padding-top: 1.4rem;
  display: flex;
  justify-content: space-between;
}
.join_list li.total {
  padding-top: unset;
  padding-bottom: 2rem;
  border-bottom: 1px solid #E8E8E8;
}
.join_list li.total > label {
  font-weight: 500;
  font-size: 1.4rem;
}
.join_list li.total + li {
  padding-top: 2rem;
}
.join_list li .required {
  position: relative;
  font-size: 1.3rem;
  padding-right: 1.4rem;
  color: #2580AD;
}
.join_list li .required::after {
  position: absolute;
  right: 0.6rem;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  width: 0.2rem;
  height: 0.2rem;
  border-radius: 100%;
  background-color: #BBBCBC;
}

.list__scroll {
  max-height: 28rem;
  overflow-y: scroll;
}

.dimmed-white, .dimmed {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 200;
  opacity: 50%;
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
}

.dimmed-qr {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 200;
}

.dimmed {
  display: block;
  background: #000;
}
.dimmed-white {
  display: block;
  background: #000;
}
.dimmed-qr {
  background: url(../images/bg_qr.png) no-repeat center/cover;
  max-width: 36rem;
  margin: 0 auto;
}
.dimmed-qr::before, .dimmed-qr::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: -1;
}
.dimmed-qr::before {
  left: 36rem;
  right: -100vw;
  background-color: rgba(0, 0, 0, 0.5);
  filter: blur(10);
  -webkit-filter: blur(10);
}
.dimmed-qr::after {
  left: -100vw;
  right: 36rem;
  background-color: rgba(0, 0, 0, 0.5);
  filter: blur(10);
  -webkit-filter: blur(10);
}

select, input[type=text], input[type=password], input[type=url], input[type=tel], input[type=email], input[type=number], input[type=search], input[type=date] {
  padding: 0 2rem;
  width: 100%;
  height: 4rem;
  border: 1px solid #D8D8D8;
  box-sizing: border-box;
  border-radius: 0.8rem;
  font-size: 1.3rem;
  color: #262626;
  outline: none;
}
select::-moz-placeholder, input[type=text]::-moz-placeholder, input[type=password]::-moz-placeholder, input[type=url]::-moz-placeholder, input[type=tel]::-moz-placeholder, input[type=email]::-moz-placeholder, input[type=number]::-moz-placeholder, input[type=search]::-moz-placeholder, input[type=date]::-moz-placeholder {
  color: #BBBCBC;
}
select::placeholder, input[type=text]::placeholder, input[type=password]::placeholder, input[type=url]::placeholder, input[type=tel]::placeholder, input[type=email]::placeholder, input[type=number]::placeholder, input[type=search]::placeholder, input[type=date]::placeholder {
  color: #BBBCBC;
}
select:disabled, input[type=text]:disabled, input[type=password]:disabled, input[type=url]:disabled, input[type=tel]:disabled, input[type=email]:disabled, input[type=number]:disabled, input[type=search]:disabled, input[type=date]:disabled {
  background-color: #F7F7F7;
  color: #BBBCBC;
}
select:focus, input[type=text]:focus, input[type=password]:focus, input[type=url]:focus, input[type=tel]:focus, input[type=email]:focus, input[type=number]:focus, input[type=search]:focus, input[type=date]:focus {
  border-color: #2580AD;
}

input[type=radio], input[type=checkbox] {
  overflow: hidden;
  display: block;
  position: absolute;
  border: 0;
  width: 1px;
  height: 1px;
  clip: rect(1px, 1px, 1px, 1px);
}
input[type=radio] + label, input[type=checkbox] + label {
  display: inline-block;
  padding-left: 3.4rem;
  line-height: 2.4rem;
  font-size: 1.3rem;
  color: #262626;
}

.check input[type=checkbox] {
  overflow: hidden;
  display: block;
  position: absolute;
  border: 0;
  width: 1px;
  height: 1px;
  clip: rect(1px, 1px, 1px, 1px);
}
.check input[type=checkbox] + label {
  display: inline-block;
  padding-left: 2.4rem;
  font-size: 0;
}

.label-box2 input[type=text], .label-box2 input[type=password], .label-box2 input[type=url], .label-box2 input[type=tel], .label-box2 input[type=email], .label-box2 input[type=number], .label-box2 input[type=search], .label-box2 input[type=date], .label-box input[type=time], .label-box input[type=text], .label-box input[type=password], .label-box input[type=url], .label-box input[type=tel], .label-box input[type=email], .label-box input[type=number], .label-box input[type=search], .label-box input[type=date] {
  padding: 1.2rem 2rem;
  width: 100%;
  height: 6.3rem;
  box-sizing: border-box;
  border-radius: 0.8rem;
  color: #262626;
  font-size: 1.4rem;
  font-weight: 600;
}
.label-box2 input[type=text]::-moz-placeholder, .label-box2 input[type=password]::-moz-placeholder, .label-box2 input[type=url]::-moz-placeholder, .label-box2 input[type=tel]::-moz-placeholder, .label-box2 input[type=email]::-moz-placeholder, .label-box2 input[type=number]::-moz-placeholder, .label-box2 input[type=search]::-moz-placeholder, .label-box2 input[type=date]::-moz-placeholder, .label-box input[type=time]::-moz-placeholder, .label-box input[type=text]::-moz-placeholder, .label-box input[type=password]::-moz-placeholder, .label-box input[type=url]::-moz-placeholder, .label-box input[type=tel]::-moz-placeholder, .label-box input[type=email]::-moz-placeholder, .label-box input[type=number]::-moz-placeholder, .label-box input[type=search]::-moz-placeholder, .label-box input[type=date]::-moz-placeholder {
  color: #9E9E9E;
}
.label-box2 input[type=text]::placeholder, .label-box2 input[type=password]::placeholder, .label-box2 input[type=url]::placeholder, .label-box2 input[type=tel]::placeholder, .label-box2 input[type=email]::placeholder, .label-box2 input[type=number]::placeholder, .label-box2 input[type=search]::placeholder, .label-box2 input[type=date]::placeholder, .label-box input[type=time]::placeholder, .label-box input[type=text]::placeholder, .label-box input[type=password]::placeholder, .label-box input[type=url]::placeholder, .label-box input[type=tel]::placeholder, .label-box input[type=email]::placeholder, .label-box input[type=number]::placeholder, .label-box input[type=search]::placeholder, .label-box input[type=date]::placeholder {
  color: #9E9E9E;
}
.label-box2 input[type=text]:disabled, .label-box2 input[type=password]:disabled, .label-box2 input[type=url]:disabled, .label-box2 input[type=tel]:disabled, .label-box2 input[type=email]:disabled, .label-box2 input[type=number]:disabled, .label-box2 input[type=search]:disabled, .label-box2 input[type=date]:disabled, .label-box input[type=time]:disabled, .label-box input[type=text]:disabled, .label-box input[type=password]:disabled, .label-box input[type=url]:disabled, .label-box input[type=tel]:disabled, .label-box input[type=email]:disabled, .label-box input[type=number]:disabled, .label-box input[type=search]:disabled, .label-box input[type=date]:disabled {
  border-color: #D8D8D8;
  color: #BBBCBC;
  background-color: #F7F7F7;
}

.label-box3 input[type=text], .label-box3 input[type=password], .label-box3 input[type=url], .label-box3 input[type=tel], .label-box3 input[type=email], .label-box3 input[type=number], .label-box3 input[type=search], .label-box3 input[type=date] {
  width: 100%;
  height: 6rem;
  box-sizing: border-box;
  border-radius: 0.8rem;
  color: #262626;
  font-size: 1.6rem;
  font-weight: 600;
}
.label-box3 input[type=text]::-moz-placeholder, .label-box3 input[type=password]::-moz-placeholder, .label-box3 input[type=url]::-moz-placeholder, .label-box3 input[type=tel]::-moz-placeholder, .label-box3 input[type=email]::-moz-placeholder, .label-box3 input[type=number]::-moz-placeholder, .label-box3 input[type=search]::-moz-placeholder, .label-box3 input[type=date]::-moz-placeholder {
  color: #9E9E9E;
}
.label-box3 input[type=text]::placeholder, .label-box3 input[type=password]::placeholder, .label-box3 input[type=url]::placeholder, .label-box3 input[type=tel]::placeholder, .label-box3 input[type=email]::placeholder, .label-box3 input[type=number]::placeholder, .label-box3 input[type=search]::placeholder, .label-box3 input[type=date]::placeholder {
  color: #9E9E9E;
}
.label-box3 input[type=text]:disabled, .label-box3 input[type=password]:disabled, .label-box3 input[type=url]:disabled, .label-box3 input[type=tel]:disabled, .label-box3 input[type=email]:disabled, .label-box3 input[type=number]:disabled, .label-box3 input[type=search]:disabled, .label-box3 input[type=date]:disabled {
  border-color: #D8D8D8;
  color: #BBBCBC;
  background-color: #F7F7F7;
}

input[type=checkbox].switch {
  -webkit-appearance: none;
}

.label-box {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.label-box input[type=text], .label-box input[type=password], .label-box input[type=url], .label-box input[type=tel], .label-box input[type=email], .label-box input[type=number], .label-box input[type=search], .label-box input[type=date] {
  padding-top: 3rem;
  outline: none;
  border: none;
  background-color: #fff;
}
.label-box input[type=time] {
  padding-top: 3rem;
  outline: none;
  border: none;
  color: white;
  background-color: #fff;
}
.label-box input[type=time]::-webkit-calendar-picker-indicator {
  display: block;
  top: 0;
  right: 0;
  height: 100%;
  width: 100%;
  position: absolute;
  background: transparent;
}
.label-box input[type=time]:focus, .label-box input[type=time]:valid {
  color: #262626;
}
.label-box input:focus + .label, .label-box input:valid + .label {
  border-color: #2580AD;
}
.label-box input:focus + .label .content, .label-box input:valid + .label .content {
  transform: translateY(-130%);
  font-size: 1.2rem;
  font-weight: 400;
  color: #9E9E9E;
  transition: transform 0.3s ease;
}
.label-box input:focus + .label .content em, .label-box input:valid + .label .content em {
  font-size: 1.2rem;
}
.label-box input:focus + .label .content .txt-dot, .label-box input:valid + .label .content .txt-dot {
  font-weight: 400;
}
.label-box label {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  border-radius: 0.8rem;
  border: 1px solid #D8D8D8;
  pointer-events: none;
  transition: all 0.3s ease;
}
.label-box .content {
  position: absolute;
  left: 2rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.4rem;
  font-weight: 600;
  color: #9E9E9E;
  transition: all 0.3s ease;
}
.label-box .content em {
  position: relative;
  font-size: 1.4rem;
  font-weight: 400;
  color: #9E9E9E;
  padding-left: 1.4rem;
}
.label-box .content em::before {
  position: absolute;
  left: 0.6rem;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  display: block;
  width: 0.2rem;
  height: 0.2rem;
  border-radius: 100%;
  background-color: #9E9E9E;
}
.label-box .content .txt-dot {
  font-weight: 600;
}
.label-box .unit {
  position: absolute;
  right: 2rem;
  bottom: 1.2rem;
  text-align: right;
  font-size: 1.4rem;
  font-weight: 600;
}
.label-box2 {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.label-box2 input[type=text], .label-box2 input[type=password], .label-box2 input[type=url], .label-box2 input[type=tel], .label-box2 input[type=email], .label-box2 input[type=number], .label-box2 input[type=search], .label-box2 input[type=date] {
  padding-top: 3rem;
  outline: none;
  border: none;
  background-color: #fff;
}
.label-box2 input[type=text] + .label, .label-box2 input[type=password] + .label, .label-box2 input[type=url] + .label, .label-box2 input[type=tel] + .label, .label-box2 input[type=email] + .label, .label-box2 input[type=number] + .label, .label-box2 input[type=search] + .label, .label-box2 input[type=date] + .label {
  border-color: #D8D8D8;
}
.label-box2 input[type=text] + .label .content, .label-box2 input[type=password] + .label .content, .label-box2 input[type=url] + .label .content, .label-box2 input[type=tel] + .label .content, .label-box2 input[type=email] + .label .content, .label-box2 input[type=number] + .label .content, .label-box2 input[type=search] + .label .content, .label-box2 input[type=date] + .label .content {
  transform: translateY(-125%);
  font-size: 1.2rem;
  font-weight: 400;
  color: #9E9E9E;
}
.label-box2 label {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  border-radius: 0.8rem;
  border: 1px solid #D8D8D8;
  pointer-events: none;
}
.label-box2 .content {
  position: absolute;
  left: 2rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.4rem;
  font-weight: 600;
  color: #9E9E9E;
  transition: all 0.3s ease;
}
.label-box2.label-unit input[type=text], .label-box2.label-unit input[type=password], .label-box2.label-unit input[type=url], .label-box2.label-unit input[type=tel], .label-box2.label-unit input[type=email], .label-box2.label-unit input[type=number], .label-box2.label-unit input[type=search], .label-box2.label-unit input[type=date] {
  padding-right: 6rem;
}
.label-box2.label-unit input:focus ~ .label-unit_right .close,
.label-box2.label-unit input:valid ~ .label-unit_right .close {
  right: 2rem;
}
.label-box3 {
  position: relative;
  width: 100%;
  height: 100%;
}
.label-box3 input[type=text], .label-box3 input[type=password], .label-box3 input[type=url], .label-box3 input[type=tel], .label-box3 input[type=email], .label-box3 input[type=number], .label-box3 input[type=search], .label-box3 input[type=date] {
  padding: 2.8rem 1.4rem 1.2rem 1.4rem;
  text-align: right;
  outline: none;
  border: none;
  background-color: #fff;
}
.label-box3 input:focus + .label, .label-box3 input:valid + .label {
  border-color: #2580AD;
}
.label-box3 label {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  border-radius: 0.8rem;
  border: 1px solid #D8D8D8;
  pointer-events: none;
}
.label-box3 .content {
  position: absolute;
  left: 1.4rem;
  top: 1.2rem;
  font-size: 1.3rem;
  font-weight: 600;
  color: #262626;
}
.label-box3 .unit {
  position: absolute;
  right: 1.4rem;
  bottom: 1.2rem;
  width: 2.5rem;
  text-align: right;
  font-size: 1.3rem;
  font-weight: 600;
}
.label-btn input[type=text], .label-btn input[type=password], .label-btn input[type=url], .label-btn input[type=tel], .label-btn input[type=email], .label-btn input[type=number] {
  padding-right: 6.8rem;
}
.label-btn_right {
  position: absolute;
  right: 1.4rem;
  top: 50%;
  transform: translateY(-50%);
}
.label-btn_right .circle {
  height: 4rem;
  width: 4rem;
  border-radius: 100%;
  font-weight: 600;
}
.label-btn_right .circle.btn::before {
  content: "확인";
}
.label-btn_right .circle.btn:disabled::before {
  display: none;
}
.label-btn_right .circle.btn:disabled:after {
  content: "확인";
}
.label-btn_right .circle.btn.certi::before {
  content: "인증";
}
.label-btn_right .circle.btn.certi:disabled::before {
  display: none;
}
.label-btn_right .circle.btn.certi:disabled:after {
  content: "인증";
}
.label-btn_right .circle.checked {
  background: url(../images/ico-check.svg) no-repeat center center;
  background-size: 1.2rem 1rem;
  background-color: #2580AD;
  height: 4rem;
  width: 4rem;
  border-radius: 100%;
  font-weight: 600;
}
.label-unit input[type=text], .label-unit input[type=password], .label-unit input[type=url], .label-unit input[type=tel], .label-unit input[type=email], .label-unit input[type=number] {
  padding-right: 9.5rem;
  font-size: 1.6rem;
  font-weight: 600;
}
.label-unit input:focus ~ .label-unit_right span, .label-unit input:valid ~ .label-unit_right span {
  color: #262626;
  position: absolute;
  right: 2rem;
  top: 4rem;
}
.label-unit input:focus ~ .label-unit_right .close, .label-unit input:valid ~ .label-unit_right .close {
  position: absolute;
  right: 6.5rem;
  bottom: 1.3rem;
  background: url(../images/ico-close-white.svg) no-repeat center center;
  background-size: 0.8rem 0.8rem;
  background-color: #D8D8D8;
  display: block;
  width: 2rem;
  height: 2rem;
  border-radius: 100%;
}
.label-unit input:focus ~ label .unit, .label-unit input:valid ~ label .unit {
  display: block;
}
.label-unit_right span {
  position: absolute;
  right: 2rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.6rem;
  color: #9E9E9E;
  font-weight: 600;
  line-height: 2.2rem;
}
.label-unit_right .close {
  display: none;
  transition: all 0.2s ease;
}
.label-unit label .blind {
  display: none;
}

input[type=checkbox] + label {
  background: url(../images/bg-chk-off.svg) no-repeat left top;
  background-size: 2.4rem 2.4rem;
}
input[type=checkbox]:checked + label {
  background: url(../images/bg-chk-on.svg) no-repeat left top;
  background-size: 2.4rem 2.4rem;
}
input[type=checkbox]:disabled + label {
  background: url(../images/bg-chk-disabled.svg) no-repeat left center;
  background-size: 2.4rem 2.4rem;
}
input[type=checkbox].switch {
  position: relative;
  display: inline-block;
  width: 4.8rem;
  height: 2.4rem;
  background-color: white;
  border-radius: 20px;
  box-sizing: border-box;
  border: 1px solid #D8D8D8;
  transition: 0.5s;
}
input[type=checkbox].switch:checked {
  background-color: #2580AD;
  border: 1px solid #2580AD;
}
input[type=checkbox].switch:checked::before {
  position: absolute;
  right: 0.3rem;
  top: 0.3rem;
  background-color: #fff;
  left: 2.7rem;
}
input[type=checkbox].switch::before {
  position: absolute;
  left: 0.3rem;
  top: 0.3rem;
  content: "";
  width: 1.6rem;
  height: 1.6rem;
  background-color: #D8D8D8;
  border-radius: 100%;
  transition: 0.5s;
}
input[type=checkbox].switch:disabled {
  background-color: #E8E8E8;
}
input[type=checkbox].switch:disabled::before {
  background-color: #fff;
}
input[type=radio] + label {
  background: url(../images/bg-radio-off.svg) no-repeat left center;
  background-size: 2.4rem 2.4rem;
}
input[type=radio]:checked + label {
  background: url(../images/bg-radio-on.svg) no-repeat left center;
  background-size: 2.4rem 2.4rem;
}
input[type=radio]:disabled + label {
  background: url(../images/bg-radio-disabled.svg) no-repeat left center;
  background-size: 2.4rem 2.4rem;
}
input.error {
  border-color: #FC4545 !important;
}
input.error + .label {
  border-color: #FC4545 !important;
}

textarea {
  padding: 2rem;
  width: 100%;
  border: 1px solid #D8D8D8;
  box-sizing: border-box;
  border-radius: 0.8rem;
  font-size: 1.3rem;
  color: #262626;
  outline: none;
}
textarea::-moz-placeholder {
  color: #9E9E9E;
}
textarea::placeholder {
  color: #9E9E9E;
}
textarea:disabled {
  background-color: #F7F7F7;
  color: #9E9E9E;
}
textarea:focus, textarea:valid {
  border-color: #2580AD;
}

.input-unit {
  position: relative;
}
.input-unit input {
  text-align: right;
}
.input-unit input::-moz-placeholder {
  text-align: left;
}
.input-unit input::placeholder {
  text-align: left;
}
.input-unit input.vlaue-blod {
  font-size: 1.6rem;
  font-weight: 600;
}
.input-unit input.vlaue-blod::-moz-placeholder {
  font-size: 1.3rem;
  font-weight: 400;
  color: #262626;
}
.input-unit input.vlaue-blod::placeholder {
  font-size: 1.3rem;
  font-weight: 400;
  color: #262626;
}
.input-unit span {
  position: absolute;
  right: 2rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.3rem;
  font-weight: 600;
}

.form-slot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-radius: 0.8rem;
  padding: 1.2rem 1.4rem;
  background: #F7F7F7;
  border: 1px solid #D8D8D8;
}
.form-slot.checked {
  border: 1px solid #2580AD;
}

.dark .label-box input:disabled + .label .content {
  color: #fff;
  opacity: 0.1;
}
.dark .label-box label {
  border: 1px solid rgba(255, 255, 255, 0.05);
}
.dark .label-unit input:focus ~ .label-unit_right span, .dark .label-unit input:valid ~ .label-unit_right span {
  color: #fff;
}
.dark .label-unit input:focus ~ .label-unit_right .close, .dark .label-unit input:valid ~ .label-unit_right .close {
  background: url(../images/ico-close-white.svg) no-repeat center center;
  background-size: 0.8rem 0.8rem;
  background-color: #9E9E9E;
}
.dark input[type=text], .dark input[type=password], .dark input[type=url], .dark input[type=tel], .dark input[type=email], .dark input[type=number], .dark input[type=search], .dark input[type=date] {
  background-color: #2D2D2D;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.05);
}
.dark input[type=text]::-moz-placeholder, .dark input[type=password]::-moz-placeholder, .dark input[type=url]::-moz-placeholder, .dark input[type=tel]::-moz-placeholder, .dark input[type=email]::-moz-placeholder, .dark input[type=number]::-moz-placeholder, .dark input[type=search]::-moz-placeholder, .dark input[type=date]::-moz-placeholder {
  color: rgba(255, 255, 255, 0.3);
}
.dark input[type=text]::placeholder, .dark input[type=password]::placeholder, .dark input[type=url]::placeholder, .dark input[type=tel]::placeholder, .dark input[type=email]::placeholder, .dark input[type=number]::placeholder, .dark input[type=search]::placeholder, .dark input[type=date]::placeholder {
  color: rgba(255, 255, 255, 0.3);
}
.dark input[type=text]:disabled, .dark input[type=password]:disabled, .dark input[type=url]:disabled, .dark input[type=tel]:disabled, .dark input[type=email]:disabled, .dark input[type=number]:disabled, .dark input[type=search]:disabled, .dark input[type=date]:disabled {
  color: rgba(255, 255, 255, 0.1);
}
.dark input[type=checkbox] + label {
  color: #fff;
  background: url(../images/dark-bg-chk-off.svg) no-repeat left center;
  background-size: 2.4rem 2.4rem;
}
.dark input[type=checkbox]:checked + label {
  background: url(../images/bg-chk-on.svg) no-repeat left center;
  background-size: 2.4rem 2.4rem;
}
.dark input[type=checkbox]:disabled + label {
  background: url(../images/dark-bg-chk-disabled.svg) no-repeat left center;
  background-size: 2.4rem 2.4rem;
}
.dark input[type=checkbox].switch {
  background-color: #2D2D2D;
  border: 1px solid rgba(255, 255, 255, 0.05);
  transition: 0.5s;
}
.dark input[type=checkbox].switch:checked {
  background-color: #2580AD;
  border: 1px solid #2580AD;
}
+ .dark input[type=checkbox].switch:checked::before {
  background-color: #fff;
}
.dark input[type=checkbox].switch::before {
  background-color: #fff;
}
.dark input[type=checkbox].switch:disabled {
  background-color: #2D2D2D;
  border: 1px solid #2D2D2D;
}
+ .dark input[type=checkbox].switch:disabled::before {
  background-color: rgba(255, 255, 255, 0.1);
}
.dark input[type=radio] + label {
  color: #fff;
  background: url(../images/dark-bg-radio-off.svg) no-repeat left center;
  background-size: 2.4rem 2.4rem;
}
.dark input[type=radio]:checked + label {
  background: url(../images/bg-radio-on.svg) no-repeat left center;
  background-size: 2.4rem 2.4rem;
}
.dark input[type=radio]:disabled + label {
  background: url(../images/dark-bg-radio-disabled.svg) no-repeat left center;
  background-size: 2.4rem 2.4rem;
}
.dark .form-slot {
  background: #2D2D2D;
  border: 1px solid rgba(255, 255, 255, 0.05);
}
.dark .form-slot.checked {
  background: rgba(37, 128, 173, 0.4);
  border: 1px solid rgba(255, 255, 255, 0.05);
}

.seach {
  position: relative;
}
.seach input[type=text] {
  padding-right: 7.5rem;
}
.seach .close {
  position: absolute;
  right: 4.5rem;
  top: 1rem;
  background: url(../images/ico-close-white.svg) no-repeat center center;
  background-size: 0.8rem 0.8rem;
  background-color: #D8D8D8;
  display: block;
  width: 2rem;
  height: 2rem;
  border-radius: 100%;
}
.seach .ico12 {
  position: absolute;
  right: 1.5rem;
  top: 1rem;
}

.inclose {
  position: relative;
}
.inclose input[type=text] {
  padding-right: 5rem;
}
.inclose .close {
  position: absolute;
  right: 2rem;
  top: 1rem;
  background: url(../images/ico-close-white.svg) no-repeat center center;
  background-size: 0.8rem 0.8rem;
  background-color: #D8D8D8;
  display: block;
  width: 2rem;
  height: 2rem;
  border-radius: 100%;
}
.inclose .ico12 {
  position: absolute;
  right: 1.5rem;
  top: 1rem;
}

.health_input {
  position: relative;
}
.health_input input[type=text], .health_input input[type=number] {
  font-size: 2rem;
  font-weight: 600;
  text-align: right;
  height: 5rem;
}
.health_input-icon.condition::before {
  background: url(../images/ico-condition.svg) center no-repeat;
}
.health_input-icon.care::before {
  background: url(../images/ico-care.svg) center no-repeat;
}
.health_input-icon::before {
  content: "";
  position: absolute;
  left: -6rem;
  top: 0;
  background: url(../images/ico-before.svg) center no-repeat;
  width: 5rem;
  height: 5rem;
}
.health_input::-moz-placeholder {
  color: #9E9E9E;
}
.health_input::placeholder {
  color: #9E9E9E;
}
.health_input .unit {
  position: absolute;
  right: 2rem;
  top: 1.6rem;
  font-size: 1.3rem;
  font-weight: 600;
}

.check {
  width: 100%;
}
.check input[type=checkbox] + label {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.check input:checked ~ .pill-icon::before {
  background: url(../images/ico-pill2.svg) no-repeat center center;
}

.food-info {
  position: relative;
}
.food-info input {
  height: 5rem;
  padding-left: 7.5rem;
  text-align: right;
  font-size: 2rem;
  font-weight: 600;
}
.food-info .content {
  position: absolute;
  left: 1.5rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.3rem;
  font-weight: 600;
}
.food-info .unit {
  position: absolute;
  right: 1.4rem;
  top: 50%;
  transform: translateY(-50%);
  font-size: 1.3rem;
  font-weight: 600;
}

.sleep_time input {
  height: 5rem;
  text-align: center;
  font-size: 2rem;
  font-weight: 600;
}
.sleep_time .unit {
  line-height: 5rem;
  font-size: 2rem;
  font-weight: 600;
  color: #9E9E9E;
  padding-left: 1rem;
  padding-right: 1rem;
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.btn:disabled {
  background-color: #D8D8D8;
  border-color: #D8D8D8;
  color: #fff;
}
.btn.full {
  width: 100%;
}
.btn-minus {
  background: url(../images/ico-minus.svg) no-repeat center center;
  background-size: 1rem 0.2rem;
  background-color: #262626;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 100%;
}
.btn-plus {
  background: url(../images/ico-plus.svg) no-repeat center center;
  background-size: 1rem 1rem;
  background-color: #262626;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 100%;
}
.btn-balloon {
  background: url(../images/btn-balloon.svg) no-repeat center;
  width: 6rem;
  height: 6rem;
  filter: drop-shadow(0px 5px 6px rgba(0, 0, 0, 0.3));
}
.btn-balloon2 {
  background: url(../images/btn-balloon2.svg) no-repeat center;
  width: 6rem;
  height: 6rem;
  filter: drop-shadow(0px 5px 6px rgba(0, 0, 0, 0.3));
}
.btn-balloon2 {
  background: url(../images/btn-balloon3.svg) no-repeat center;
  width: 6rem;
  height: 6rem;
  filter: drop-shadow(0px 5px 6px rgba(0, 0, 0, 0.3));
}
.btn-add {
  position: relative;
  padding-right: 2rem;
  font-size: 1.2rem;
  line-height: 2rem;
}
.btn-add::after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  background: url(../images/ico-arrow-right-black-s.svg) no-repeat center center;
  background-size: cover;
  width: 2rem;
  height: 2rem;
}
.btn-view {
  height: 3rem;
  padding: 0 1.4rem;
  background-color: #fff;
  border: 1px solid #262626;
  border-radius: 1.5rem;
  font-size: 1.2rem;
  font-weight: 500;
  box-sizing: border-box;
}
.btn-circle {
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
}
.btn-square {
  width: 4rem;
  height: 4rem;
  border-radius: 0.8rem;
}
.btn-square.green {
  background-color: #2C9462;
}
.btn.grayblack.focus {
  background: #2580AD;
  color: #fff;
}
.btn-pay::before {
  content: "";
  background: url(../images/btn-pay.svg) no-repeat center center;
  width: 100%;
  height: 100%;
  border-radius: 100%;
}
.btn-top {
  background: url(../images/btn-top.svg) no-repeat center;
  width: 4rem;
  height: 4rem;
}

.dark .btn:disabled {
  background-color: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.2);
}

.list {
  /* 2024.04.15 카단 - 뉴스,자유 게시판 */
}
.list-icon > li {
  position: relative;
  padding-left: 5.2rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  height: 100%;
}
.list-icon > li > div {
  min-height: 4rem;
}
.list-icon .ico-run__result {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
}
.list-icon .ico-run__result .btn.small {
  padding: 0 1rem;
}
.list-line > li + li {
  border-top: 1px solid #E8E8E8;
}
.list-line.list-bottom > li:last-child {
  border-bottom: 1px solid #E8E8E8;
}
.list-align > li {
  padding-top: unset;
  padding-bottom: unset;
}
.list-align > li + li {
  margin-top: 3rem;
}
.list-align > li.disabled {
  opacity: 0.4;
}
.list-space10 > li {
  padding-bottom: 1rem;
}
.list-space10 > li:last-child {
  padding-bottom: unset;
}
.list-space15 > li {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
.list-space15 > li:first-child {
  padding-top: 0;
}
.list-space20 > li {
  padding-bottom: 2rem;
}
.list-space20 > li + li {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.list-space-t20 > li + li {
  padding-top: 2rem;
}
.list-space-t30 > li + li {
  padding-top: 3rem;
}
.list-tline.blue {
  border-top: 1px solid #2580AD;
}
.list-tline.tl-t10 li:first-child {
  padding-top: 1rem;
}
.list-history li {
  padding-top: 3rem;
  padding-bottom: 3rem;
  border-bottom: 1px solid #E8E8E8;
}
.list-history li:first-child {
  padding-top: unset;
}
.list-history.bb li:last-child {
  padding-bottom: unset;
  border-bottom: none;
}
.list-dot {
  font-size: 0;
}
.list-dot > li {
  font-size: 1.3rem;
  display: inline-flex;
}
.list-dot > li span > * {
  font-size: inherit;
  font-weight: inherit;
}
.list-dot > li + li {
  padding-left: 1.4rem;
  position: relative;
}
.list-dot > li + li::before {
  position: absolute;
  left: 0.6rem;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  width: 0.2rem;
  height: 0.2rem;
  border-radius: 100%;
  background-color: #9E9E9E;
}
.list-dot.blue > li + li::before {
  background-color: #2580AD;
}
.list-dot.type2 > li + li {
  padding-left: 2.2rem;
}
.list-dot.type2 > li + li::before {
  position: absolute;
  left: 1rem;
  top: 50%;
  transform: translateY(-50%);
}
.list-ico2.topline {
  border-top: 1px solid #E8E8E8;
}
.list-ico2.topline > li:first-child {
  margin-top: 1rem;
}
.list-ico2 .ico-log > div {
  height: 2.4rem;
}
.list-ico2 > li {
  position: relative;
  padding-left: 3.4rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  height: 100%;
}
.list-ico2 > li span:first-child {
  min-width: 3.8rem;
  text-align: center;
}
.list-ico2.line {
  padding-bottom: 1rem;
}
.list-ico2.line > li + li {
  border-top: 1px solid #E8E8E8;
}
.list-ico2 .num {
  font-size: 2rem;
  font-weight: 600;
}
.list__circle {
  cursor: pointer;
}
.list__circle__info {
  position: relative;
}
.list__circle__content {
  padding-left: 6rem;
  min-height: 5rem;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
}
.list__circle__content.img30 {
  padding-left: 4rem;
  min-height: 3rem;
}
.list__circle__img {
  position: absolute;
  left: 0;
  top: 0;
  width: 5rem;
  height: 5rem;
  flex-shrink: 0;
}
.list__circle__img img {
  border-radius: 100%;
  box-shadow: 0 0 0 1px #E8E8E8;
  overflow: hidden;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.list__circle__img.img30 {
  width: 3rem;
  height: 3rem;
}
.list__circle__title {
  position: relative;
  padding-right: 6.6rem;
}
.list__circle__title b {
  display: block;
  font-size: 1.6rem;
  font-weight: 600;
}
.list__circle__title span {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  color: #2580AD;
  font-size: 1.3rem;
  font-weight: 600;
}
.list__circle__title span em {
  font-weight: 600;
}
.list__circle__category {
  font-size: 1.3rem;
}
.list__circle__desc {
  margin-top: 1rem;
  font-size: 1.3rem;
  color: #9E9E9E;
}
.list__circle.type-dark .list__circle__img img {
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.2);
}
.list__circle.type-dark .list__circle__title b {
  color: #fff;
}
.list__circle.type-dark .list__circle__category {
  color: #D8D8D8;
}
.list__square__info {
  position: relative;
}
.list__square__img {
  position: absolute;
  left: 0;
  top: 0;
  width: 10rem;
  height: 10rem;
  flex-shrink: 0;
}
.list__square__img img {
  border-radius: 0.9rem;
  box-shadow: 0 0 0 1px #E8E8E8;
  overflow: hidden;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.list__square__content {
  padding-left: 11.4rem;
  min-height: 10rem;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
}
.list__square__desc {
  font-size: 1.3rem;
}
.list__square__title {
  font-size: 1.4rem;
  font-weight: 600;
  word-wrap: break-word;
}
.list__square__price {
  font-size: 1.6rem;
  font-weight: 700;
  color: #2580AD;
}
.list__square__hash {
  display: inline-flex;
  flex-wrap: wrap;
  font-size: 1.3rem;
  gap: 0 1rem;
}
.list__square__hash li::before {
  content: "#";
}
.list__square.type-dark .list__square__desc {
  color: #D8D8D8;
}
.list__square.type-dark .list__square__title {
  color: #fff;
}
.list__square.type-dark .list__square__hash {
  color: #9E9E9E;
}
.list__detail__payment {
  gap: 0 1rem;
}
.list__detail__history {
  display: inline-flex;
  font-size: 1.3rem;
  color: #9E9E9E;
  gap: 0 0.6rem;
}
.list-map {
  max-width: 22.2rem;
  min-height: 8.5rem;
  padding: 1.4rem;
  border-radius: 1.4rem;
  background-color: #fff;
  filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.2));
}
.list-map.more {
  max-width: 5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.list-map .list__square__img {
  width: 6rem;
  height: 6rem;
}
.list-map .list__square__content {
  justify-content: space-between;
  padding-left: 7rem;
  min-height: 6rem;
}
.list-map .list__square__desc {
  font-size: 1.2rem;
}
.list-map .list__square__title {
  font-size: 1.3rem;
}
.list-map .list__square__price {
  font-size: 1.4rem;
}
.list-map .list__square__hash {
  font-size: 1.2rem;
}
.list__card {
  max-height: 28rem;
  overflow-y: scroll;
}
.list__card li + li {
  margin-top: 2rem;
}
.list__card .txt__desc {
  color: #9E9E9E;
}
.list-info {
  word-break: break-all;
}
.list-info > li {
  display: flex;
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}
.list-info > li + li {
  margin-top: 1.4rem;
}
.list-info__left {
  flex: 1;
  color: #BBBCBC;
  font-size: 1.3rem;
}
.list-info__right {
  flex: 1;
  color: #fff;
  font-size: 1.3rem;
  text-align: right;
}
.list-info.type2 li {
  align-items: center;
  min-height: 3rem;
  height: 100%;
}
.list-info.type3 > li + li {
  margin-top: 2rem;
}
.list-mypage > li + li {
  margin-top: 1rem;
}
.list-mypage > li .btn_my {
  min-height: 4rem;
  width: 100%;
}
.list-mypage .new {
  position: relative;
}
.list-mypage .new::after {
  content: "";
  position: absolute;
  right: -1rem;
  top: 0.3rem;
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 100%;
  background-color: #2580AD;
}
.list__time li + li {
  margin-top: 2rem;
}
.list__time .pill {
  position: relative;
  height: 4rem;
  padding-left: 5.2rem;
  padding-right: 3.6rem;
}
.list__time .pill .word {
  display: flex;
  height: 100%;
  align-items: center;
}
.list__time .pill-icon {
  position: absolute;
  left: 0;
  top: 0;
}
.list__time .pill-icon::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background: url(../images/ico-pill.svg) no-repeat center center;
  width: 4rem;
  height: 4rem;
}
.list__time .time {
  display: block;
  font-size: 1.4rem;
  color: #2580AD;
  font-weight: 600;
}
.list-desc {
  display: flex;
  justify-content: space-between;
  gap: 2rem;
}
.list-desc .tit {
  width: 6rem;
  flex-shrink: 0;
}
.list-desc .summary {
  word-break: break-all;
  text-align: right;
  font-weight: 600;
  font-size: 1.4rem;
}
.list-solid {
  display: flex;
}
.list-solid li {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}
.list-solid li + li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  border-left: 1px solid rgba(37, 128, 173, 0.1);
  width: 1px;
  height: 100%;
}
.list__news {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(1, 1fr);
  -moz-column-gap: 0.6rem;
       column-gap: 0.6rem;
  row-gap: 2.6rem;
}
.list__news__item {
  position: relative;
}
.list__news__item a {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  bottom: 0;
}
.list__board {
  display: flex;
  flex-direction: column;
}
.list__board__item {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding: 1.6rem 0;
}
.list__board__item:not(:nth-child(1)) {
  border-bottom: 1px solid #E8E8E8;
}
.list__board__item:nth-child(1) {
  border-top: 1px solid #E8E8E8;
  border-bottom: 1px solid #E8E8E8;
}
.list__board__item a {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  bottom: 0;
}
.list__board__item:has(.board__picture) .board__text {
  width: 25rem;
}

.post__title {
  font-size: 1.4rem;
  font-weight: 600;
}
.post__info {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  row-gap: 0.4rem;
}
.post__info p {
  position: relative;
}
.post__info p:not(:nth-last-child(1)) {
  padding-right: 0.8rem;
}
.post__info p:not(:nth-child(1)) {
  padding-left: 0.8rem;
}
.post__info p:not(:nth-child(1))::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 0.1rem;
  height: 1.2rem;
  background: #E8E8E8;
}

.news__img {
  width: 100%;
  height: 10.8rem;
  overflow: hidden;
  border-radius: 0.6rem;
}
.news__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.news__img__detail {
  width: 100%;
  height: 45rem;
  overflow: hidden;
}
.news__img__detail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.news__detail {
  padding: 2.5rem 2rem 0 2rem;
}
.news__contents {
  padding: 3rem 2rem 2rem 2rem;
}

.board__picture {
  background: url(/images/ico-picture.svg) no-repeat left center;
  background-size: 2rem 1.6rem;
  width: 2rem;
  height: 1.6rem;
  padding-right: 1rem;
}
.board__text {
  width: 28rem;
}
.board__reply {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  border: 1px solid #BBBCBC;
  color: #9E9E9E;
  border-radius: 1rem;
  line-height: 1;
  margin-left: auto;
}
.board__detail {
  padding: 0.8rem 2rem;
  background: #F7F7F7;
}
.board__contents {
  padding: 3rem 2rem 2rem 2rem;
}
.recent-keyword {
  display: inline-flex;
  -moz-column-gap: 0.6rem;
       column-gap: 0.6rem;
  width: 100%;
  overflow: auto;
}
.recent-keyword .keyword {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 2.4rem;
  padding: 0 2.4rem 0 1rem;
  background-color: #E9F2F7;
  border-radius: 1.2rem;
  font-size: 1.2rem;
  color: #2580AD;
  cursor: pointer;
}
.recent-keyword .keyword__close {
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  background: url(../images/ico-close-blue.svg) no-repeat center center;
  background-size: cover;
  width: 0.8rem;
  height: 0.8rem;
  cursor: pointer;
}

.terms li {
  font-size: 1.3rem;
}
.terms li + li {
  padding-top: 2rem;
}

.list-more {
  position: relative;
  padding-right: 2.3rem;
}
.list-more .more {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

.type__dark .list-line > li + li {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.pin {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.pin__visual {
  position: relative;
  flex: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.pin__visual .link {
  position: absolute;
  left: 50%;
  bottom: 2rem;
  transform: translateX(-50%);
}
.pin__logo {
  display: block;
  background: url(../images/ico-logo-black.svg) no-repeat center center;
  width: 6.6rem;
  height: 3.8rem;
}
.pin__tit {
  position: relative;
  display: block;
  font-size: 2rem;
  font-weight: 500;
  color: #2580AD;
}
.pin__desc {
  display: block;
  font-size: 1.3rem;
}
.pin__dot {
  display: inline-flex;
  gap: 2.4rem;
}
.pin__dot li {
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 100%;
  background-color: #BBBCBC;
}
.pin__dot li.active {
  background-color: #2580AD;
}
.pin__keyboard {
  flex: 1;
  padding: 2rem;
  background-color: #262626;
  border-radius: 2rem 2rem 0 0;
}
.pin__number {
  display: grid;
  grid-column-gap: 1rem;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: repeat(4, 1fr);
}
.pin__number li {
  min-height: 6rem;
}
.pin__number li .a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-size: 2.4rem;
  font-weight: 600;
  color: #fff;
}
.pin__number li .a.cancel {
  background: url(../images/ico-cancel.svg) no-repeat center;
}
.pin__number li .a:active::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
  background-color: #fff;
  opacity: 10%;
  transition: background-color 0.2s ease;
}

.alert__text {
  position: relative;
  display: inline-block;
  padding-left: 2.4rem;
  font-size: 1.3rem;
  line-height: 1.4;
  color: #fff;
  word-break: break-all;
}

.alert__success, .alert__fail {
  position: relative;
  border-radius: 1rem;
  padding: 1.2rem;
  display: flex;
  justify-content: center;
}

.alert {
  position: absolute;
  bottom: 0;
  padding: 2rem;
}
.alert > div + div {
  margin-top: 2rem;
}
.alert__fail {
  background: rgba(252, 69, 69, 0.8);
}
.alert__fail .alert__text::before {
  background: url(../images/alert-fail.svg) no-repeat center top;
  background-size: 1.8rem 1.8rem;
}
.alert__success {
  background: rgba(30, 167, 110, 0.8);
}
.alert__success .alert__text::before {
  background: url(../images/alert-success.svg) no-repeat center top;
  background-size: 1.8rem 1.8rem;
}
.alert__text::before {
  position: absolute;
  left: 0;
  top: 0;
  content: "";
  width: 1.8rem;
  height: 1.8rem;
}

.ico-call, .ico-run::after, .ico-message::after, .ico-card::after, .ico-hospital::after {
  height: 2rem;
  width: 2rem;
}

.ico-run::before, .ico-message::before, .ico-card::before, .ico-hospital::before {
  content: "";
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
}

.ico-camera::before, .ico-location::before, .ico-alarm1::before, .ico-log::before, .ico-time::before, .ico-distance::before, .ico-walk::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 2.4rem;
  width: 2.4rem;
  color: #4b4b4b;
}

.ico-hospital::before {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background-color: #2580AD;
}
.ico-hospital::after {
  position: absolute;
  left: 1rem;
  top: 50%;
  transform: translateY(-50%);
  background: url(../images/ico-hospital.svg) no-repeat center center;
  background-size: auto 100%;
  content: "";
}
.ico-card::before {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background-color: #2C9462;
}
.ico-card::after {
  position: absolute;
  left: 1rem;
  top: 50%;
  transform: translateY(-50%);
  background: url(../images/ico-card.svg) no-repeat center center;
  background-size: auto 100%;
  content: "";
}
.ico-message::before {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background-color: #9957B0;
}
.ico-message::after {
  position: absolute;
  left: 1rem;
  top: 50%;
  transform: translateY(-50%);
  background: url(../images/ico-message.svg) no-repeat center center;
  background-size: auto 100%;
  content: "";
}
.ico-run {
  padding-right: 9.6rem;
}
.ico-run::before {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.ico-run::after {
  position: absolute;
  left: 1rem;
  top: 50%;
  transform: translateY(-50%);
  background: url(../images/ico-run.svg) no-repeat center center;
  background-size: auto 100%;
  content: "";
}
.ico-run-1::before {
  background-color: #9957B0;
}
.ico-run-2::before {
  background-color: #2C9462;
}
.ico-run-3::before {
  background-color: #BBBCBC;
}
.ico-walk::before {
  background: url(../images/ico-walk.svg) no-repeat center center;
  background-size: auto 100%;
}
.ico-distance::before {
  background: url(../images/ico-distance.svg) no-repeat center center;
  background-size: auto 100%;
}
.ico-time::before {
  background: url(../images/ico-time.svg) no-repeat center center;
  background-size: auto 100%;
}
.ico-log::before {
  background: url(../images/ico-log.svg) no-repeat center center;
  background-size: auto 100%;
}
.ico-alarm1::before {
  background: url(../images/ico-alarm1.svg) no-repeat center center;
  background-size: auto 100%;
}
.ico-location::before {
  background: url(../images/ico-location.svg) no-repeat center center;
  background-size: auto 100%;
}
.ico-camera::before {
  background: url(../images/ico-camera.svg) no-repeat center center;
  background-size: auto 100%;
}
.ico-call {
  background: url(../images/ico-call.svg) no-repeat center center;
  background-size: auto 100%;
}
.ico-none::before {
  background: url(../images/ico-logo-gray.svg) no-repeat center center;
  background-size: auto 100%;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  width: 3rem;
  height: 1.8rem;
}
.ico-none2 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.ico-none2::before {
  background: url(../images/ico-logo-gray.svg) no-repeat center center;
  background-size: cover;
  content: "";
  width: 3rem;
  height: 1.8rem;
}
.ico-report {
  position: relative;
  display: block;
  width: 3rem;
  height: 3rem;
  background: #f7f7f7;
  border-radius: 100%;
}

.badge {
  display: inline-block;
}

.comment {
  position: relative;
  padding-left: 3.4rem;
  font-size: 1.2rem;
}
.comment::before {
  content: "";
  background: url(../images/ico-comment.svg) no-repeat center center;
  background-size: cover;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  display: block;
  width: 2.4rem;
  height: 2.4rem;
}

.tip {
  position: relative;
  padding-left: 2.2rem;
  font-size: 1.2rem;
  color: #9E9E9E;
}
.tip::before {
  content: "";
  background: url(../images/ico-comment2.svg) no-repeat center center;
  background-size: 1.6rem 1.6rem;
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 1.6rem;
  height: 1.6rem;
}

.icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.card {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.gallery {
  display: flex;
  gap: 1rem;
}
.gallery.list li {
  padding: 1.6rem 0;
}
.gallery.list li:first-child {
  padding-top: 0;
}
.gallery.list li + li {
  border-top: 1px solid #F7F7F7;
}
.gallery.list a {
  display: flex;
  gap: 1.6rem;
}
.gallery.list .gallery__thumb {
  width: 16rem;
  border-radius: 0.8rem;
}
.gallery.list .gallery__content {
  flex: 1;
  padding: 0;
  border: none;
  border-radius: 0;
}
.gallery .empty .gallery__slot {
  border: 1px dashed #E8E8E8;
  background: url(../images/ico-logo-gray.svg) no-repeat center center;
  background-size: 3rem 1.8rem;
  background-color: #fff;
}
.gallery__slot {
  padding: 1.2rem;
  border: 1px solid #F7F7F7;
  border-radius: 1rem;
  background-color: #F7F7F7;
  width: 10rem;
  min-height: 15rem;
}
.gallery__thumb {
  overflow: hidden;
  position: relative;
  margin: 1rem auto;
  width: 5.2rem;
  height: 5.2rem;
  border-radius: 100%;
  box-shadow: 0 0 0 1px #E8E8E8;
}
.gallery__thumb img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.gallery__category {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1.2rem;
  color: #2580AD;
}
.gallery__date {
  font-size: 1.4rem;
}
.gallery__name {
  font-size: 1.4rem;
  font-weight: 700;
}
.gallery__desc {
  font-size: 1.2rem;
}

.col2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: repeat(1, 1fr);
}

.col3 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: repeat(1, 1fr);
}

.col4 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-template-rows: repeat(1, 1fr);
}

.ellipsis1 {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 140%;
}

.ellipsis2 {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 140%;
}

.ellipsis3 {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-height: 140%;
}

.ellipsis1 {
  display: block;
}

.progress {
  display: flex;
  justify-content: center;
}
.progress .skill {
  position: relative;
  width: 20rem;
  height: 20rem;
}
.progress .skill .inner {
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  width: 20rem;
  height: 20rem;
  border-radius: 50%;
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  color: #fff;
  text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.5);
}
.progress .skill .inner img {
  width: 4rem;
  height: 4rem;
  filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.5));
}
.progress .skill .inner .today_walk {
  font-size: 1.3rem;
  font-weight: 500;
}
.progress .skill .inner .today_count {
  font-size: 3.4rem;
  font-weight: 900;
}
.progress .skill .inner .today_count b {
  font-size: 2rem;
  font-weight: 900;
}
.progress .skill .inner .arrow-down {
  position: relative;
  color: #fff;
  font-size: 1.2rem;
  text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.5);
}
.progress .skill .inner .arrow-down::after {
  content: "";
  display: block;
  width: 1rem;
  height: 1rem;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  background: url(../images/ico-arrow-down-white_m.svg) no-repeat center center;
  background-size: 1rem 1rem;
  text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.5);
}

circle {
  fill: none;
  width: 20rem;
  height: 20rem;
  stroke: #2580AD;
  stroke-dasharray: 620;
  stroke-dashoffset: 300;
  animation: anim 2s linear forwards;
}

svg {
  position: absolute;
  top: 0;
  left: 0;
  transform: rotate(-90deg);
  pointer-events: none;
}

.slider {
  position: relative;
  width: 100%;
  height: 0.4rem;
}
.slider input {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 0.4rem;
  -webkit-appearance: none;
  background-color: transparent;
  z-index: 99;
}
.slider input::-webkit-slider-thumb {
  position: relative;
  -webkit-appearance: none;
  width: 2rem;
  height: 2rem;
  background-color: #2580AD;
  border: 4px solid #fff;
  box-shadow: 0 0 0 1px #2580AD;
  border-radius: 50%;
  cursor: pointer;
}
.slider progress {
  width: 100%;
  height: 0.4rem;
  -webkit-appearance: none;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 10px;
  overflow: hidden;
}
.slider progress::-webkit-progress-bar {
  background-color: #E8E8E8;
}
.slider progress::-webkit-progress-value {
  background-color: #2580AD;
}
.slider__percent {
  display: flex;
  justify-content: space-between;
}

.progress-wrap {
  width: 100%;
}
.progress-report {
  width: 100%;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.progress-report.max::-webkit-progress-value {
  background: #F93232;
}
.progress-report::-webkit-progress-bar {
  background: #E8E8E8;
  border-radius: 10px;
}
.progress-report::-webkit-progress-value {
  border-radius: 10px;
  background: #2C9462;
}

.graph-comment {
  position: absolute;
  right: 0;
  top: 0;
}
.graph-info {
  position: relative;
  display: inline-flex;
  flex-direction: column;
  padding: 0.4rem 1rem;
  border-radius: 0.5rem;
  font-size: 1rem;
}
.graph-info.blue {
  color: #fff;
  background: #2580AD;
}
.graph-info.blue::before {
  border-top: 1rem solid #2580AD;
}
.graph-info.green {
  color: #2C9462;
  background: #fff;
  border: 1px solid #E8E8E8;
}
.graph-info.green::before {
  position: absolute;
  left: 50%;
  bottom: -2rem;
  transform: translateX(-50%);
  border-top: 1rem solid #E8E8E8;
}
.graph-info.green::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -1.8rem;
  transform: translateX(-50%);
  border-top: 1rem solid #fff;
  border-right: 0.8rem solid transparent;
  border-bottom: 1rem solid transparent;
  border-left: 0.8rem solid transparent;
}
.graph-info.red {
  color: #F93232;
  background: #fff;
  border: 1px solid #E8E8E8;
}
.graph-info.red::before {
  position: absolute;
  left: 50%;
  bottom: -2rem;
  transform: translateX(-50%);
  border-top: 1rem solid #E8E8E8;
}
.graph-info.red::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -1.8rem;
  transform: translateX(-50%);
  border-top: 1rem solid #fff;
  border-right: 0.8rem solid transparent;
  border-bottom: 1rem solid transparent;
  border-left: 0.8rem solid transparent;
}
.graph-info::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -1.8rem;
  transform: translateX(-50%);
  border-right: 0.8rem solid transparent;
  border-bottom: 1rem solid transparent;
  border-left: 0.8rem solid transparent;
}

.swiper.gallery {
  display: block;
  gap: unset;
}
.swiper.gallery .swiper-slide {
  width: unset;
}

.select__option.on .select__cont {
  border-bottom: unset;
}
.select__option.on .select__cont .ico25:before {
  transform: rotate(-180deg);
}
.select__option.on .select__updown {
  display: block;
  border-top: 1px solid #2580AD;
  border-bottom: 1px solid #2580AD;
}
.select__option .comment {
  padding-left: 2.2rem;
}
.select__option .comment::before {
  width: 1.6rem;
  height: 1.6rem;
}
.select__cont {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.3rem 0;
  cursor: pointer;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.select__updown {
  display: none;
  padding: 2rem 0;
}
.select__desc > span {
  position: relative;
  padding-left: 1.8rem;
  font-size: 1.2rem;
  color: #9E9E9E;
}
.select__desc > span + span {
  margin-left: 1.4rem;
}
.select__desc > span::before {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  display: block;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 0.2rem;
}
.select__desc > span.selected::before {
  background: #2580AD;
  border: 1px solid rgba(255, 255, 255, 0.1);
}
.select__desc > span.unselectable::before {
  background: #2D2D2D;
  border: 1px solid rgba(255, 255, 255, 0.05);
}
.select__name {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.select__name img {
  width: 5rem;
  height: 5rem;
  margin: 0 auto;
  border-radius: 100%;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.2);
  overflow: hidden;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.select__name .title {
  font-size: 2rem;
  font-weight: 700;
}
.select__product {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.select__product img {
  width: 10rem;
  height: 10rem;
  margin: 0 auto;
  border-radius: 100%;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.2);
  overflow: hidden;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.select__info {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.2rem 2rem;
  border-radius: 1rem;
  border: 1px solid rgba(255, 255, 255, 0.1);
}
.select__progress {
  display: flex;
  padding: 3rem 0;
}
.select__progress li {
  position: relative;
  padding-top: 3.2rem;
  display: flex;
  justify-content: center;
  flex-grow: 1;
}
.select__progress li.end::after {
  background-color: #2580AD;
}
.select__progress li.end span {
  color: #2580AD;
}
.select__progress li.ing::after {
  background-color: #fff;
}
.select__progress li.ing span {
  color: #fff;
}
.select__progress li.ing span:after {
  content: "";
  position: absolute;
  left: 50%;
  top: -3.2rem;
  transform: translateX(-50%);
  width: 2.4rem;
  height: 2.4rem;
  background-color: #fff;
  border-radius: 100%;
  animation: shine 2s infinite;
}
.select__progress li span {
  position: relative;
  display: inline-flex;
  color: #9E9E9E;
  font-size: 1.3rem;
}
.select__progress li::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 0.7rem;
  transform: translateX(-50%);
  border-radius: 100%;
  width: 1rem;
  height: 1rem;
  background-color: #9E9E9E;
  z-index: 1;
}
.select__progress li + li::before {
  content: "";
  position: absolute;
  right: 50%;
  top: 1.1rem;
  height: 0.1rem;
  width: 100%;
  background-color: #9E9E9E;
}
.select__progress li + li.ing::before {
  background-color: #2580AD;
}
.select__progress li + li.end::before {
  background-color: #2580AD;
}

@keyframes shine {
  0% {
    opacity: 0.2;
  }
  100% {
    opacity: 0;
  }
}
.calendar__title {
  padding: 0 3rem;
  font-size: 2rem;
  font-weight: 700;
}
.calendar__btn {
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 100%;
  background-color: #262626;
}
.calendar__btn:disabled {
  background-color: #D8D8D8 !important;
  opacity: 1 !important;
}
.calendar__time {
  grid-gap: 0.8rem 1rem;
}
.calendar__time li > span {
  height: 4rem;
  border-radius: 0.8rem;
  border: 1px solid rgba(255, 255, 255, 0.05);
  background-color: rgba(37, 128, 173, 0.4);
  box-sizing: border-box;
  font-size: 1.3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.calendar__time li > span.unselectable {
  background: #2D2D2D;
  color: #6C6C6C;
}
.calendar__time li > span.selected {
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: #2580AD;
}

.bbs__calendar {
  font-size: 1.3rem;
  color: #fff;
  text-align: center;
}
.bbs__calendar tr:first-child td {
  padding-top: 0;
}
.bbs__calendar tr td {
  padding: 0.1rem 0.3rem 0 0.3rem;
}
.bbs__calendar th {
  padding-bottom: 2rem;
}
.bbs__calendar td {
  height: 4rem;
  cursor: pointer;
}
.bbs__calendar td .calendar-date {
  display: flex;
  flex-direction: column;
  justify-content: start;
  min-width: 4rem;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  border: 1px solid rgba(255, 255, 255, 0);
  border-radius: 0.8rem;
}
.bbs__calendar td .calendar-date .num {
  padding-top: 0.4rem;
  line-height: 1.8rem;
}
.bbs__calendar td .calendar-date .text {
  line-height: 1.4rem;
  font-size: 1rem;
}
.bbs__calendar td .calendar-date.unselectable span {
  color: #9E9E9E;
}
.bbs__calendar td .calendar-date.off {
  background: #2D2D2D;
  border: 1px solid rgba(255, 255, 255, 0.05);
}
.bbs__calendar td .calendar-date.off span {
  opacity: 0.3;
}
.bbs__calendar td .calendar-date.selected {
  background-color: #2580AD;
  border: 1px solid rgba(255, 255, 255, 0.1);
  font-weight: 700;
}
.bbs__calendar td .calendar-date.today {
  color: #2C9462;
}
.bbs__calendar td .calendar-date.today.selected {
  color: #fff;
}
.bbs__calendar td .calendar-date.today.selected .text {
  font-weight: 400;
}
.bbs__check {
  font-size: 1.3rem;
  text-align: center;
}
.bbs__check th {
  color: #9E9E9E;
  font-weight: 400;
  padding-bottom: 1.2rem;
}
.bbs__check td {
  padding: 0.6rem;
}
.bbs__check td input[type=checkbox] + label {
  padding-left: unset;
  background: unset;
  background-size: unset;
  line-height: 3rem;
  width: 3rem;
  height: 3rem;
  border-radius: 100%;
}
.bbs__check td input[type=checkbox]:checked + label {
  position: relative;
  background: unset;
  background-size: unset;
}
.bbs__check td input[type=checkbox]:checked + label::after {
  content: "";
  background: url(../images/attend-chk.svg) no-repeat center center;
  background-size: 3rem 3rem;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: block;
  width: 3rem;
  height: 3rem;
}
.bbs__check td input[type=checkbox]:disabled + label {
  background: unset;
}
.bbs__check td.past input[type=checkbox] + label {
  color: #9E9E9E;
}
.bbs__check td.today input[type=checkbox] + label {
  background-color: rgba(37, 128, 173, 0.1);
  color: #2580AD;
}

.type__dark .calendar__title {
  color: #2580AD;
}
.type__dark .calendar__btn {
  background-color: #fff;
}
.type__dark .calendar__btn:disabled {
  background-color: #fff !important;
  opacity: 0.1 !important;
}

.day-box {
  padding: 1.2rem 2rem;
  border: 1px solid #D8D8D8;
  border-radius: 0.8rem;
}
.day-checkbox input[type=checkbox] {
  background: #D8D8D8;
}
.day-checkbox input[type=checkbox] + label {
  padding-left: unset;
  width: 3rem;
  height: 3rem;
  line-height: 3rem;
  text-align: center;
  background: #dbdbdb;
  color: #fff;
  border-radius: 100%;
}
.day-checkbox input[type=checkbox]:checked + label {
  background: #2580AD;
}
.day-checkbox input[type=checkbox]:checked + label::after {
  content: none;
}
.day-checkbox input[type=checkbox]:disabled + label {
  background: unset;
}

.box-slot {
  padding: 2rem;
  background-color: #fff;
  border-radius: 2rem;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.2);
}
.box-slot2 {
  padding: 3rem 2rem;
  background-color: rgba(37, 128, 173, 0.05);
  border-bottom: 1px solid rgba(37, 128, 173, 0.2);
}
.box-slot3 {
  padding: 2rem;
  background-color: rgba(37, 128, 173, 0.05);
  border-radius: 1rem;
}
.box-slot3.p15 {
  padding: 1.5rem;
}
.box-slot4 {
  padding: 2rem;
  background-color: #F7F7F7;
  border-radius: 1rem;
}
.box-slot5 {
  position: relative;
  min-height: 10rem;
  border-radius: 1rem;
  box-sizing: border-box;
  overflow: hidden;
}
.box-slot5::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: 1px solid rgba(38, 38, 38, 0.05);
  border-radius: 1rem;
  box-sizing: border-box;
}
.box-slot5 img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  min-width: 32rem;
}
.box-slot6 {
  background: #fff;
}
.box-slot7 {
  padding: 1.5rem 0;
  background-color: #F4F9FB;
}
.box-img img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.semit20 {
  border-radius: 2rem 2rem 0 0;
}

.semib20 {
  border-radius: 0 0 2rem 2rem;
}

.shadow {
  filter: drop-shadow(0 0 20px rgba(0, 0, 0, 0.05));
}

.qna__question {
  position: relative;
  margin-top: 2rem;
  padding-right: 2.7rem;
  display: flex;
  align-items: center;
  min-height: 2.4rem;
  height: auto;
  cursor: pointer;
}
.qna__question::after {
  content: "";
  position: absolute;
  right: 0rem;
  top: 50%;
  transform: translateY(-50%);
  background: url(../images/ico-plus1.svg) no-repeat center center;
  background-size: cover;
  width: 1rem;
  height: 1rem;
}
.qna__question.on::after {
  content: "";
  position: absolute;
  right: 0rem;
  top: 50%;
  transform: translateY(-50%);
  background: url(../images/ico-minus1.svg) no-repeat center center;
  background-size: cover;
  width: 1rem;
  height: 1rem;
}
.qna__question > p {
  position: relative;
  padding-left: 2rem;
  font-size: 1.3rem;
  min-height: 2.1rem;
}
.qna__question > p::before {
  content: "";
  position: absolute;
  left: 0rem;
  top: 0.3rem;
  background: url(../images/bg-question.png) no-repeat center center;
  background-size: cover;
  width: 1.1rem;
  height: 1.2rem;
  font-size: 1.6rem;
  font-weight: 700;
  color: #9957B0;
}
.qna__container {
  opacity: 0;
  height: 0;
  transition: opacity 0.2s ease 0s;
}
.qna__container > p {
  height: 0;
  opacity: 0;
}
.qna__answer {
  padding-bottom: 1.4rem;
  border-bottom: 1px solid #E8E8E8;
}
.qna__answer.open {
  position: relative;
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.qna__answer.open .qna__container {
  opacity: 1;
  height: auto;
  padding: 2rem;
  background-color: #F4F9FB;
  border-radius: 1rem;
}
.qna__answer.open .qna__container > p {
  position: relative;
  padding-left: 2rem;
  font-size: 1.3rem;
  min-height: 2.1rem;
  height: auto;
  opacity: 1;
}
.qna__answer.open .qna__container > p::before {
  content: "";
  position: absolute;
  left: 0rem;
  top: 0.4rem;
  background: url(../images/bg-answer.png) no-repeat center center;
  background-size: cover;
  width: 1.1rem;
  height: 1.2rem;
  font-size: 1.6rem;
  font-weight: 700;
  color: #9957B0;
}

hr {
  border: none;
}

.hr {
  border-top: 1px solid #E8E8E8;
}
.hr.ico_exchange {
  position: relative;
}
.hr.ico_exchange::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background: url(../images/exchange-gray.svg) no-repeat center center;
  background-size: 2rem 2rem;
  background-color: #fff;
  width: 4rem;
  height: 2rem;
}
.hr.ico_exchange.value::after {
  background: url(../images/exchange-blue.svg) no-repeat center center;
  background-size: 2rem 2rem;
  background-color: #fff;
}
.hr.light_blue {
  border-color: rgba(37, 128, 173, 0.2);
}

.link {
  cursor: pointer;
}
.link-terms {
  position: absolute;
  left: 3.4rem;
  top: 0.3rem;
}

.line {
  padding-bottom: 2rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.tline {
  border-top: 1px solid #E8E8E8;
}

.txt-dot {
  position: relative;
  padding-left: 1.4rem;
}
.txt-dot::before {
  content: "";
  position: absolute;
  left: 0.6rem;
  top: 50%;
  transform: translateY(-50%);
  background-color: #9E9E9E;
  width: 0.2rem;
  height: 0.2rem;
  border-radius: 50%;
}
.txt-dot.txt-grayBB::before {
  background-color: #BBBCBC;
}
.txt-dot.txt-gray66::before {
  background-color: #666666;
}
.txt-dot.white::before {
  background-color: #fff;
}
.txt-dot.blue::before {
  background-color: #2580AD;
}
.txt-dot.txt-black::before {
  background-color: #262626;
}
.txt-dot.txt-gray66::before {
  width: 0.3rem;
  height: 0.3rem;
}

.hold {
  opacity: 50%;
}

.count {
  position: relative;
  border: 1px solid #D8D8D8;
  border-radius: 0.8rem;
  padding: 2rem 4.4rem;
}
.count input[type=text],
.count input[type=number] {
  border: none;
  font-size: 2rem;
  font-weight: 600;
  height: 2rem;
  text-align: center;
  background-color: transparent;
}
.count .btn-minus {
  position: absolute;
  left: 2rem;
  top: 50%;
  transform: translateY(-50%);
}
.count .btn-plus {
  position: absolute;
  right: 2rem;
  top: 50%;
  transform: translateY(-50%);
}

.type__dark .count {
  position: relative;
  border: 1px solid rgba(255, 255, 255, 0.1);
}
.type__dark .count input[type=text],
.type__dark .count input[type=number] {
  color: #fff;
}
.type__dark .count button {
  background-color: #2580AD;
}
.type__dark .count button:disabled {
  opacity: 0.3;
}
.type__dark .count.type2 {
  padding: 1.2rem 4.4rem;
}
.type__dark .count.type2 .btn-minus {
  left: 1rem;
}
.type__dark .count.type2 .btn-plus {
  right: 1rem;
}

.ar_bk {
  position: relative;
}
.ar_bk::after {
  content: "";
  background: url(../images/ico-arrow-right-black2.svg) no-repeat right top;
  background-size: cover;
  position: absolute;
  right: 0;
  top: 0.5rem;
  width: 0.6rem;
  height: 1rem;
}

.dark.card.cico0::after {
  border: 1px solid rgba(255, 255, 255, 0.05);
  background: #2D2D2D url(../images/ico-logo-white2.svg) no-repeat center center;
}

.card.cico0::after {
  border: 1px solid #E8E8E8;
}

.state1 {
  color: #2580AD;
}
.state2 {
  color: #9957B0;
}
.state3 {
  color: #2C9462;
}
.state4 {
  color: #262626;
}

.chartarea img {
  width: auto;
  max-height: 18.9rem;
}

.payment {
  position: fixed;
  right: 2rem;
  bottom: 6rem;
  z-index: 10;
}

.top {
  position: fixed;
  left: 50%;
  transform: translateX(-50%);
  bottom: 3rem;
  z-index: 10;
}

.cursor {
  cursor: pointer;
}

.health-list .slot {
  position: relative;
  padding: 1rem;
  border-radius: 1rem;
  background-color: #f7f7f7;
}
.health-list .slot > * {
  display: block;
}
.health-edit__btn {
  width: 100%;
  display: flex;
  align-items: center;
  padding: 1rem 1.4rem;
  border-radius: 0.8rem;
  border: 1px solid #D8D8D8;
}
.health-edit__btn .txt-dot::before {
  background-color: #666666;
}
.health-edit :active .health-edit__btn {
  border: 1px solid #2580AD;
}
.health-edit :active .health-edit__btn .txt__desc {
  color: #2580AD;
}
.health-edit :active .health-edit__btn .txt-dot::before {
  background-color: #2580AD;
}
.health-edit :active .health-edit__btn .basicicon23::after {
  background-image: url(../images/ico-health-edit1-1.svg);
}
.health-edit :active .health-edit__btn .basicicon24::after {
  background-image: url(../images/ico-health-edit2-1.svg);
}
.health-edit :active .health-edit__btn .basicicon25::after {
  background-image: url(../images/ico-health-edit3-1.svg);
}
.health-edit :active .health-edit__btn .basicicon26::after {
  background-image: url(../images/ico-health-edit4-1.svg);
}
.health-edit :active .health-edit__btn .basicicon27::after {
  background-image: url(../images/ico-health-edit5-1.svg);
}
.health-edit :active .health-edit__btn .basicicon28::after {
  background-image: url(../images/ico-health-edit6-1.svg);
}

.today .txt__dot {
  color: #2580AD;
}
.today .txt__dot::before {
  background-color: #2580AD;
}
.today .slot {
  background-color: rgba(37, 128, 173, 0.05);
}
.today .slot.ico1::before {
  background-image: url(../images/ico-health1-1.svg);
}
.today .slot.ico2::before {
  background-image: url(../images/ico-health2-1.svg);
}
.today .slot.ico3::before {
  background-image: url(../images/ico-health3-1.svg);
}
.today .slot.ico4::before {
  background-image: url(../images/ico-health4-1.svg);
}
.today .slot.ico5::before {
  background-image: url(../images/ico-health6-1.svg);
}
.today .slot.ico6::before {
  background-image: url(../images/ico-health5-1.svg);
}

.food-desc {
  height: 6.6rem;
}
.food-desc.care {
  color: #F93232;
}
.food-desc.care .food-icon {
  background: url(../images/ico-food-care.svg);
}
.food-desc.condition {
  color: #2C9462;
}
.food-desc.condition .food-icon {
  background: url(../images/ico-food-condition.svg);
}
.food-icon {
  background: url(../images/ico-food.svg);
  width: 6rem;
  height: 6rem;
}
.food-edit__btn {
  width: 100%;
  padding: 1.6rem 2rem;
  border-radius: 0.8rem;
  border: 1px solid #D8D8D8;
}
.food-edit__btn:active {
  border: 1px solid #2580AD;
}
.food-edit__btn:active .food-edit__info b {
  color: #2580AD;
}
.food-edit__btn:active .ficon-1::before {
  background: url(../images/ico-food1-1.svg);
}
.food-edit__btn:active .ficon-2::before {
  background: url(../images/ico-food2-1.svg);
}
.food-edit__info {
  text-align: left;
}
.food-edit__info b {
  display: block;
  font-size: 1.6rem;
  font-weight: 600;
}
.food-edit__info span {
  display: block;
  padding-top: 0.2rem;
  font-size: 1.3rem;
  color: #9E9E9E;
}
.food-edit__ico {
  position: relative;
  padding-left: 5rem;
}
.food-edit__ico::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 4rem;
  height: 4rem;
}
.food-edit__ico.ficon-1::before {
  background: url(../images/ico-food1.svg);
}
.food-edit__ico.ficon-2::before {
  background: url(../images/ico-food2.svg);
}

.bg-grayf6 {
  background: #F6F6F6;
}

.bbs__write {
  font-size: 1.3rem;
  line-height: 1;
  color: #262626;
}
.bbs__write tr:first-child td {
  padding-top: 0;
}
.bbs__write tr:last-child td {
  padding-bottom: 0;
}
.bbs__write th {
  padding-top: 1.3rem;
  font-weight: 400;
  text-align: left;
  color: #262626;
  vertical-align: top;
  font-size: 1.3rem;
}
.bbs__write th span {
  color: #262626;
}
.bbs__write td {
  padding-bottom: 1rem;
  height: 4rem;
  color: #262626;
}
.bbs__write__address {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.bbs__write__address > div:first-child {
  display: flex;
  gap: 1rem;
}
.bbs__write__address > div:first-child input {
  flex: 1;
}
.bbs__write__address .btn {
  padding: 0 1.2rem;
  font-size: 1.4rem;
}

.pagination {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.pagination ul {
  display: flex;
  justify-content: center;
  align-items: center;
}
.pagination__item.disabled a {
  opacity: 0.6;
  pointer-events: none;
}
.pagination__link {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 3.6rem;
  height: 3.6rem;
  font-size: 1.4rem;
  color: #BBBCBC;
}
.pagination__link.active {
  color: #2580AD;
}

.remark:not(:nth-child(1)) {
  padding-bottom: 1.4rem;
  border-bottom: 1px solid #E8E8E8;
}
.remark button {
  width: 3.6rem;
  height: 3.6rem;
}
.remark.reply {
  position: relative;
  margin-left: 4rem;
}
.remark.reply > ::before {
  content: "";
  position: absolute;
  top: 0;
  left: -2.5rem;
  width: 1.8rem;
  height: 2rem;
  background: url(/images/ico-reply.svg) no-repeat left top;
}
.remark__bottom {
  width: 100vw;
  box-sizing: border-box;
  background: #2580AD;
  padding: 0.7rem 2rem;
  position: sticky;
  bottom: 0;
}
.remark__bottom textarea {
  border: 1px solid #D8D8D8;
  padding: 1.2rem 6rem 1.2rem 1.2rem;
  min-height: 4rem;
  max-height: 9.1rem;
}
.remark__bottom textarea::-webkit-scrollbar {
  display: none;
}
.remark__post {
  position: absolute;
  bottom: 1.2rem;
  right: 2.7rem;
  width: 4rem;
  height: 3rem;
  background: #2580AD;
  border-radius: 2rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.remark__post:disabled {
  visibility: hidden;
  opacity: 0;
  transition: 0.2s all;
}

.comment_container {
  width: 100vw;
  box-sizing: border-box;
  position: sticky;
  bottom: 0;
}

.on_reply {
  width: 100vw;
  box-sizing: border-box;
  background: #555555;
  padding: 1rem 2rem;
  color: #d8d8d8;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.on_reply button {
  background: url(../../../../public/images/ico-close-white.svg) no-repeat;
  background-size: cover;
  content: "";
  width: 1.2rem;
  height: 1.2rem;
}

.comment_input {
  box-sizing: border-box;
  background: #2580ad;
  padding: 0.7rem 2rem;
}

.comment_input textarea {
  border: 1px solid #d8d8d8;
  padding: 1.2rem 6rem 1.2rem 1.2rem;
  min-height: 4rem;
  max-height: 9.1rem;
}

.comment_input textarea::-webkit-scrollbar {
  display: none;
}

.slide-fade-enter-active {
  transition: all 0.3s ease-out;
}

.slide-fade-leave-active {
  transition: all 0.8s cubic-bezier(1, 0.5, 0.8, 1);
}

.slide-fade-enter-from,
.slide-fade-leave-to {
  transform: translateY(5px);
  opacity: 0;
}

.main {
  padding: 0 2rem 3rem 2rem;
}
.main__fixed {
  z-index: 100;
  position: sticky;
  top: 50px;
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  padding-left: 2rem;
  padding-right: 2rem;
  padding-bottom: 2rem;
}
.main__fixed.line {
  border-bottom: 1px solid #E8E8E8;
}
.main__full {
  height: 100%;
}
.main__full .h2 {
  text-align: center;
}
.main__full .h2.logo {
  position: relative;
  padding-top: 4.2rem;
}
.main__full .h2.logo::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  background: url(../images/ico-logo-black.svg) no-repeat center top;
  background-size: cover;
  display: block;
  width: 5rem;
  height: 2.8rem;
}

.thumb img {
  border-radius: 0.8rem;
  width: 100%;
}

.container {
  padding: 2rem 2rem 3rem;
}

.home__user {
  text-align: center;
  filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.5));
}
.home__user .level {
  font-size: 2rem;
  font-weight: 700;
  color: #fff;
}
.home__user .level > * {
  font-size: inherit;
  font-weight: inherit;
  color: inherit;
}
.home__user .name {
  color: #fff;
  font-size: 1.6rem;
}
.home__user .name b {
  font-size: 2rem;
  font-weight: 700;
}
.home__wrap {
  position: relative;
  width: 100%;
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.home__wrap .proposal {
  text-align: center;
  font-size: 1.8rem;
  color: #fff;
  text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.5);
}
.home__wrap .point {
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  padding-top: 2rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 3rem;
  color: #fff;
  text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.5);
}
.home__wrap .point__tit {
  position: relative;
  padding-left: 3.6rem;
  font-size: 1.3rem;
  font-weight: 500;
}
.home__wrap .point__tit::after {
  background: url(../images/ani_icon_point.gif) no-repeat center center;
  background-size: cover;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.5));
  content: "";
  width: 3rem;
  height: 3rem;
}
.home__wrap .point__amount {
  position: relative;
  display: flex;
  align-items: center;
  font-size: 1.3rem;
  padding-right: 1.2rem;
}
.home__wrap .point__amount strong {
  font-size: 2rem;
}
.home__wrap .point__amount::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  background: url(../images/ico-arrow-right-white_m.svg) no-repeat center center;
  background-size: cover;
  width: 0.6rem;
  height: 1rem;
}
.home__contents {
  background-color: #fff;
  padding: 2rem;
  border-radius: 2rem 2rem 0 0;
  box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.2);
}
.home__contents .reservation-none {
  display: flex;
  justify-content: center;
  color: #BBBCBC;
  padding: 2.4rem 0;
}
.home__contents .reservation-none .ico-none {
  position: relative;
  padding-left: 4rem;
}
.home__box {
  margin: 0 2rem;
}
.home__banner .banner1 {
  position: relative;
  border-radius: 1rem;
  overflow: hidden;
}
.home__banner .banner {
  position: relative;
  width: 100%;
  height: 8rem;
}
.home__banner .banner img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.home__banner .banner::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  border: 1px solid rgba(38, 38, 38, 0.05);
  border-radius: 1rem;
  box-sizing: border-box;
}
.home__banner__pagination {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  left: unset;
  width: 5rem;
  height: 2rem;
  border-radius: 1rem;
  background: rgba(38, 38, 38, 0.6);
  font-size: 1.2rem;
  color: #9E9E9E;
  line-height: 2rem;
}
.home__banner__pagination .swiper-pagination-current {
  color: #fff;
}
.home__banner__pagination .swiper-pagination-total {
  color: #9E9E9E;
}
.home__bg {
  background: url(../images/@thumb5.png) no-repeat top center;
  background-size: cover;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.home__bg::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: #000000;
  opacity: 0.2;
}
.home .container {
  padding: 0 2rem 3rem;
}

.login {
  display: block;
  width: 100%;
  height: 100vh;
}
.login__bg {
  z-index: -1;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background: url(../images/@thumb2.png) center/cover;
}
.login__bg::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: #000000;
  opacity: 0.2;
}
.login__content {
  display: block;
  padding: 3rem 2rem;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
}
.login__social {
  display: flex;
  justify-content: center;
  gap: 2rem;
}
.login__social li {
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
}
.login__social li .a {
  display: block;
  width: 100%;
  height: 100%;
}
.login__social-1 {
  background: url(../images/login1.svg) no-repeat center #03C75A;
}
.login__social-2 {
  background: url(../images/login2.svg) no-repeat center #FAE300;
}
.login__social-3 {
  background: url(../images/login3.svg) no-repeat center #CF0505;
}
.login__social-4 {
  background: url(../images/login4.svg) no-repeat center #fff;
}
.login__join {
  font-size: 1.3rem;
  color: #fff;
  text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.5);
}

.mylocation {
  padding: 1.5rem 2rem;
  background-color: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  box-sizing: border-box;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.view_link {
  position: fixed;
  right: 2rem;
  bottom: 2rem;
}
.view_link .ico21::before,
.view_link .ico22::before {
  margin-right: 0.6rem;
}

.map {
  z-index: -1;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}
.map img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

.marker {
  display: inline-block;
  filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.2));
  cursor: pointer;
}
.marker .face_marker {
  background: url(../images/ico-placeholder.svg) no-repeat center center;
  background-size: cover;
  display: inline-block;
  width: 2.6rem;
  height: 3rem;
  transform: scale(1);
}
.marker .placename {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 3rem;
  padding: 0 1.4rem;
  background-color: #fff;
  color: #2580AD;
  border: 1px solid #2580AD;
  border-radius: 1.5rem;
  box-sizing: border-box;
  font-size: 1.2rem;
  font-weight: 500;
}
.marker--focus .face_marker {
  background: url(../images/ico-placeholder2.svg) no-repeat center center;
  background-size: cover;
  transform: scale(1.2);
}
.marker--focus .placename {
  background-color: #2580AD;
  color: #fff;
}

.detail-page {
  height: 50rem;
}
.detail-page-slide img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.detail-page-bg {
  position: absolute;
  top: 0;
  height: 100%;
  width: 100%;
  background: linear-gradient(0deg, #262626 0%, rgba(38, 38, 38, 0) 50%);
}
.detail-page__title {
  position: absolute;
  left: 50%;
  bottom: 12.8rem;
  transform: translateX(-50%);
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.5);
  pointer-events: none;
  z-index: 5;
}
.detail-page__title .img {
  width: 5rem;
  height: 5rem;
  margin: 0 auto;
}
.detail-page__title .img img {
  border-radius: 100%;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.2);
  overflow: hidden;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.detail-page__title strong {
  font-size: 2.4rem;
  font-weight: 700;
  color: #fff;
  word-break: break-all;
  text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.5);
}
.detail-page__content {
  position: relative;
  z-index: 6;
  margin-top: -8.6rem;
  padding: 3rem 2rem;
}
.detail-page__content .price {
  font-size: 2.4rem;
  font-weight: 700;
  color: #fff;
  text-align: center;
}
.detail-page .swiper-pagination-bullet {
  width: 0.8rem;
  height: 0.8rem;
  background-color: #9E9E9E;
}
.detail-page .swiper-pagination-bullet-active {
  background-color: #2580AD;
}
.detail-page .swiper-pagination {
  bottom: 8.6rem;
}
.detail-page .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.detail-page .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 0.7rem;
}
.detail-page__info {
  position: relative;
  width: 100%;
  height: 100%;
  max-height: 100rem;
  overflow: hidden;
}
.detail-page__info::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 10rem;
  background: linear-gradient(180deg, rgba(38, 38, 38, 0) 0%, #262626 100%);
}
.detail-page__info img {
  width: 100%;
}
.detail-page__info--more {
  max-height: unset;
  overflow: unset;
}
.detail-page__info--more::after {
  content: "";
  width: unset;
  height: unset;
  background: unset;
}
.detail-Process {
  display: inline-flex;
}
.detail-Process li {
  position: relative;
}
.detail-Process li.end span {
  color: #2580AD;
}
.detail-Process li.end span::after {
  background-color: #2580AD;
}
.detail-Process li.ing span {
  color: #262626;
}
.detail-Process li.ing span::after {
  background-color: #262626;
}
.detail-Process li span {
  padding: 0 0.3rem 1rem 0.3rem;
  color: #9E9E9E;
  display: inline-block;
  text-align: center;
  min-width: 2.1rem;
  font-size: 1.2rem;
}
.detail-Process li span::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -3px;
  transform: translateX(-50%);
  border-radius: 100%;
  width: 0.6rem;
  height: 0.6rem;
  background-color: #9E9E9E;
  z-index: 1;
}
.detail-Process li + li span::before {
  content: "";
  position: absolute;
  left: -50%;
  bottom: 0;
  width: 2.6rem;
  height: 0.1rem;
  background-color: #9E9E9E;
}
.detail-Process li + li.ing span::before {
  background-color: #2580AD;
}
.detail-Process li + li.end span::before {
  background-color: #2580AD;
}

.schedule {
  padding: 2rem;
  border-radius: 1rem;
  background-color: #2D2D2D;
}
.schedule > ul li {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.schedule > ul li + li {
  margin-top: 1rem;
}
.schedule > ul li:last-child {
  margin-bottom: 1rem;
}
.schedule > ul + ul {
  padding-top: 1rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}
.schedule > ul:last-child li:last-child {
  margin-bottom: unset;
}

.place {
  overflow: hidden;
  height: 20rem;
  border-radius: 1rem;
  background-color: #BBBCBC;
}

.ico-event {
  background: url(../images/ani_icon_event.gif) no-repeat center center;
  background-size: cover;
  display: inline-flex;
  width: 3rem;
  height: 3rem;
}

.type__dark {
  background-color: #262626;
  min-height: 100vh;
  height: 100%;
}
.type__dark .header {
  background-color: #262626;
}
.type__dark .header.mslide {
  background-color: transparent;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
}
.type__dark .header.mslide.fixed {
  background-color: rgba(38, 38, 38, 0.8);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
}
.type__dark .header.mslide .header__main .header__left,
.type__dark .header.mslide .header__main .header__right {
  filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.5));
}
.type__dark .mylocation {
  background: rgba(255, 255, 255, 0.05);
}
.type__dark .mylocation .txt__text {
  color: #fff;
}
.type__dark .h2 {
  color: #fff;
}
.type__dark button:disabled {
  background-color: rgba(255, 255, 255, 0.1);
  border: none;
  color: rgba(255, 255, 255, 0.2);
}
.type__dark .detail-Process li.end span {
  color: #2580AD;
}
.type__dark .detail-Process li.end span::after {
  background-color: #2580AD;
}
.type__dark .detail-Process li.ing span {
  color: #fff;
}
.type__dark .detail-Process li.ing span::after {
  background-color: #fff;
}
.type__dark .detail-Process li span {
  color: #9E9E9E;
}
.type__dark .detail-Process li span::after {
  background-color: #9E9E9E;
}
.type__dark .detail-Process li + li span::before {
  background-color: #9E9E9E;
}
.type__dark .detail-Process li + li.ing span::before {
  background-color: #2580AD;
}
.type__dark .detail-Process li + li.end span::before {
  background-color: #2580AD;
}

.wallet__number {
  font-size: 2.4rem;
  font-weight: 700;
  color: #2580AD;
  word-wrap: break-word;
}

.wl_add {
  width: 12.5rem;
  text-align: right;
}

.inquiry_box {
  position: relative;
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  padding-left: 7.4rem;
  min-height: 5.4rem;
}
.inquiry_box::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background: url(../images/bg-inquiry.png) no-repeat left center;
  background-size: 5.4rem 5.4rem;
  width: 5.4rem;
  height: 5.4rem;
}

.waiting {
  position: relative;
  padding-left: 4rem;
  color: #9E9E9E;
  min-height: 3.6rem;
}
.waiting::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background: url(../images/ico-comment2.svg) no-repeat center center;
  background-size: 3rem 3rem;
  width: 3rem;
  height: 3rem;
}

.bottom_sheet {
  position: fixed;
  left: 0;
  right: 0;
  bottom: -50rem;
  padding: 3rem 2rem;
  backdrop-filter: blur(7.5px);
  -webkit-backdrop-filter: blur(7.5px);
  border-radius: 1.5rem 1.5rem 0 0;
  background: rgba(255, 255, 255, 0.8);
  filter: drop-shadow(0px 0px 6px rgba(0, 0, 0, 0.2));
  transition: bottom 0.4s ease-in-out;
}
.bottom_sheet.type-slide {
  padding: 0 0 2rem 0;
  background: transparent;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
.bottom_sheet.type-slide .swiper-wrapper .swiper-slide:first-child {
  padding-left: 2rem;
}
.bottom_sheet.type-slide .swiper-wrapper .swiper-slide:last-child {
  padding-right: 2rem;
}
.bottom_sheet.type-slide .swiper-slide {
  width: auto;
}

.bottom_btn {
  z-index: 100;
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 2rem;
  border-radius: 1.5rem 1.5rem 0 0;
  border: 1px solid rgba(38, 38, 38, 0.1);
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(7.5px);
  -webkit-backdrop-filter: blur(7.5px);
}
.bottom_btn.type2 {
  border-radius: unset;
  border: none;
  background: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.type__dark .bottom_btn {
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(38, 38, 38, 0.8);
}

.more__menu {
  width: 6rem;
  text-align: center;
}

.tab ul {
  display: flex;
  gap: 1rem;
}
.tab ul li {
  cursor: pointer;
  flex-shrink: 0;
}
.tab ul li span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 3rem;
  padding: 0 1.4rem;
  border-radius: 1.5rem;
  font-size: 1.2rem;
  font-weight: 500;
  color: #fff;
  background-color: #D8D8D8;
}
.tab ul li.active span {
  background-color: #2580AD;
}
.tab.scroll {
  width: 100%;
  overflow-x: scroll;
}
.tab-dark ul li span {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.2);
  border-color: rgba(255, 255, 255, 0.1);
}
.tab-dark ul li.active span {
  color: white;
}
.tab__menu li {
  width: 6rem;
}
.tab__menu button {
  width: 100%;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
}
.tab-txt {
  font-size: 1.8rem;
  font-weight: 700;
  color: #dbdbdb;
}
.tab-txt.active {
  color: #262626;
}
.tab-gray ul li span {
  color: #9E9E9E;
  border: 1px solid #9E9E9E;
  background-color: #f7f7f7;
}
.tab-gray ul li.active span {
  color: #2580AD;
  border: 1px solid #2580AD;
  background-color: #f7f7f7;
}

.bar {
  display: inline-flex;
  font-size: 1.1rem;
  color: #4b4b4b;
}
.bar li + li {
  display: flex;
  align-items: center;
  padding-left: 1.2rem;
}
.bar li + li::before {
  content: "";
  margin-right: 1.2rem;
  width: 1px;
  height: 1.1rem;
  background-color: #d7d7d7;
}
.bar-arrow {
  display: inline-flex;
  font-size: 1.4rem;
  color: #4b4b4b;
}
.bar-arrow li + li {
  display: flex;
  align-items: center;
  padding-left: 0.8rem;
}
.bar-arrow li + li::before {
  background: url(../images/ico_arrow_right) no-repeat;
  content: "";
  margin-right: 0.8rem;
  width: 0.6rem;
  height: 1.1rem;
}