@charset "UTF-8";
img {
  -webkit-user-drag: none;
  user-select: none;
}

a {
  text-decoration: none;
  color: unset;
}
a:visited {
  color: unset;
}
a:hover {
  text-decoration: underline;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.disFlex {
  display: flex;
  align-items: center;
}

.lineBreak {
  width: 100%;
  border-bottom: 0.4rem solid #F0F0F0;
  background-color: #F7F7F9;
}

select {
  padding: 0.4rem;
  border: none;
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: #717171;
  font-weight: 400;
  background: url(../images/btnArrowBottom16.svg) no-repeat 95% 50%;
}
select:focus-visible {
  outline: none;
  border: 1px solid #F0F0F0;
}
select:focus-visible option:focus-visible {
  outline: none;
  border: 1px solid #F0F0F0;
}
select:active, select:focus {
  outline: none;
  border: 1px solid #2D2D2D;
}
select option:active, select option:focus {
  outline: none;
  border: 1px solid #2D2D2D;
}

.selectBoxWrap .SelectBox {
  display: flex;
  align-items: center;
  padding-left: 1.6rem;
  width: 20rem;
  height: 4rem;
  color: #1d1d1d;
  font-size: 1.5rem;
  cursor: pointer;
}
.selectBoxWrap .SelectBox .btnArrowDown {
  margin-left: auto;
  margin-right: 0.8rem;
  display: inline-block;
  transition: transform 0.3s ease;
}
.selectBoxWrap .SelectBox .btnArrowDown.rotate img {
  transform: rotate(180deg);
}
.selectBoxWrap .SelectList {
  padding: 0.8rem;
  border: 1px solid #E4E4E4;
  background-color: #fff;
  display: none;
}
.selectBoxWrap .SelectList li {
  display: flex;
  align-items: center;
  padding-left: 1.6rem;
  width: calc(100% - 1.6rem);
  height: 4rem;
  font-size: 1.5rem;
  cursor: pointer;
}
.selectBoxWrap .SelectList li.hover {
  border-radius: 6px;
  background-color: #EDF1F5;
  color: #003675;
}

.scrollbar {
  overflow-y: auto;
}

.scrollbar::-webkit-scrollbar-track {
  background-color: #eee;
}

.scrollbar::-webkit-scrollbar {
  width: 0.8rem;
  background-color: #F5F5F5;
}

.scrollbar::-webkit-scrollbar-thumb {
  background-color: #ddd;
}

.scrollbarHori::-webkit-scrollbar-track {
  background-color: #eee;
}

.scrollbarHori::-webkit-scrollbar {
  height: 0.8rem;
  background-color: #F5F5F5;
}

.scrollbarHori::-webkit-scrollbar-thumb {
  background-color: #ddd;
}

.hashtag {
  cursor: pointer;
  margin-right: 0.8rem;
  margin-bottom: 0.8rem;
  float: left;
  border-radius: 100px;
}
.hashtag.medium {
  padding: 0.8rem 1.2rem;
  font-size: 1.4rem;
}
.hashtag.between {
  padding: 0.5rem 0.9rem;
  font-size: 1.3rem;
}
.hashtag.small {
  padding: 0.3rem 0.6rem;
  font-size: 1.2rem;
}
.hashtag.default, .hashtag.white {
  background-color: #fff;
  border: 1px solid #E4E4E4;
}
.hashtag.white {
  cursor: unset;
}
.hashtag.default:hover {
  box-shadow: 0 0 0 2px #3447D2 inset;
  transition-duration: 0.1s;
  border: 1px solid #3447D2;
}
.hashtag.blue {
  background-color: rgba(36, 107, 235, 0.8);
  border: 1px solid rgba(36, 107, 235, 0.8);
  color: #fff;
}
.hashtag.click {
  background-color: #3447D2;
  color: #fff;
  border: 1px solid #3447D2;
}
.hashtag.disabled {
  background-color: #F8F8F8;
  border: 1px solid #E4E4E4;
  color: #717171;
  cursor: default;
}

.moreViewBtn {
  display: flex;
  align-items: center;
  height: 2.4rem;
  font-size: 1.3rem;
  color: #3447D2;
  cursor: pointer;
}

.moreView_ReverBtn {
  display: flex;
  align-items: center;
  height: 2.4rem;
  font-size: 1.3rem;
  color: #1d1d1d;
  cursor: pointer;
}

.TitLg700 {
  font-size: 1.9rem;
  font-weight: 700;
}
.TitLg700 span {
  margin-left: 0.5rem;
  vertical-align: middle;
  cursor: pointer;
}

.TitSm700 {
  font-size: 1.5rem;
  font-weight: 700;
}

.TitSm500 {
  font-size: 1.5rem;
  font-weight: 500;
}

.Detail13gray400 {
  font-size: 1.3rem;
  font-weight: 300;
  color: #717171;
}

.Detail13blue400 {
  font-size: 1.3rem;
  font-weight: 400;
  color: #3447D2;
}

button {
  margin-top: 1.2rem;
  padding: 0.8rem;
  width: 100%;
  font-size: 1.3rem;
  background-color: #fff;
  border-radius: 0.4rem;
  color: #1d1d1d;
  border: 1px solid #E4E4E4;
  cursor: pointer;
  transition: 0.3s;
}
button:hover {
  background-color: #3447D2;
  color: #fff;
}
button.sm {
  padding: 0.4rem 0.8rem;
}
button.right {
  width: auto;
  margin-left: auto;
  padding: 0.8rem 1.6rem;
}
button.center {
  width: auto;
  margin-right: 2rem;
}
button.whiteBtn {
  background-color: #fff;
  color: #1d1d1d;
  border: none;
}
button.whiteBtn:hover {
  background-color: #fff;
  color: #1d1d1d;
}

button.defaultBtn {
  background-color: #F8F8F8;
}
button.defaultBtn:hover {
  background-color: #3447D2;
  color: #fff;
}

button.activeBtn {
  background-color: rgba(36, 107, 235, 0.8);
  color: #fff;
}
button.activeBtn:hover {
  background-color: #3447D2;
  color: #fff;
}

button.dagerBtn {
  background-color: #F8F8F8;
}
button.dagerBtn:hover {
  background-color: #FF1805;
  color: #fff;
}

button.grayBtn {
  background-color: #F8F8F8;
  color: #2D2D2D;
}
button.grayBtn:hover {
  background-color: #F8F8F8;
  color: #1d1d1d;
}

input[type=text], input[type=password] {
  margin-top: 1.2rem;
  padding: 0.8rem;
  width: 100%;
  font-size: 1.3rem;
  background-color: #F8F8F8;
  border: 1px solid #E4E4E4;
  box-sizing: border-box;
}
input[type=text]:active, input[type=password]:active {
  border: 1px solid #2D2D2D;
}
input[type=text].sm, input[type=password].sm {
  width: 16rem;
}
input[type=text].md, input[type=password].md {
  width: 24rem;
}
input[type=text].lg, input[type=password].lg {
  width: 32rem;
}

input[type=color] {
  padding: 0;
  width: 2.4rem; /* 정사각형으로 맞추기 */
  height: 2.4rem;
  border: none;
  border-radius: 50%; /* ← 동그랗게 만들기 */
  background: none;
  cursor: pointer;
  appearance: none; /* 브라우저 기본 스타일 제거 */
  -webkit-appearance: none; /* Safari용 */
}

/* Webkit 기반 브라우저(크롬, 사파리)용 내부 사각형 제거 */
input[type=color]::-webkit-color-swatch-wrapper {
  padding: 0;
}

input[type=color]::-webkit-color-swatch {
  border: none;
  border-radius: 50%; /* 내부 색상 부분도 동그랗게 */
}

.borderSelect {
  margin-top: 1.2rem;
  padding: 0.8rem;
  width: 100%;
  font-size: 1.3rem;
  background-color: #F8F8F8;
  border: 1px solid #E4E4E4;
  box-sizing: border-box;
  background-color: #fff;
}
.borderSelect:focus-visible {
  outline: none;
  border: 1px solid #F0F0F0;
}
.borderSelect option:focus-visible {
  outline: none;
  border: 1px solid #F0F0F0;
}
.borderSelect:active, .borderSelect:focus {
  outline: none;
  border: 1px solid #2D2D2D;
}
.borderSelect option:active, .borderSelect option:focus {
  outline: none;
  border: 1px solid #2D2D2D;
}
.borderSelect.sm {
  width: 16rem;
}
.borderSelect.md {
  width: 24rem;
}
.borderSelect.lg {
  width: 32rem;
}

textarea, .istTextarea {
  padding: 0.6rem;
  margin-top: 0.8rem;
  width: 100%;
  min-height: 8rem;
  resize: vertical;
  border: 1px solid #E4E4E4;
  box-sizing: border-box;
  font-size: 1.4rem;
  font-family: "Pretendard";
  font-weight: 300;
}

.centerModalWrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 901;
}
.centerModalWrap::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
}

.topModalWrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 901;
}
.topModalWrap .mdTxt {
  white-space: pre-line;
  line-height: initial;
}
.topModalWrap .topModal {
  padding: 2rem;
  position: absolute;
  left: 50%;
  top: 3rem;
  transform: translate(-50%, 0);
  background-color: #fff;
  border-radius: 0.8rem;
  box-shadow: 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 9px 28px 8px rgba(0, 0, 0, 0.05);
}
.topModalWrap .topModal.sm {
  width: 40rem;
}
.topModalWrap .topModal .foot {
  display: flex;
}
.topModalWrap .topModal .foot.btn {
  margin-top: 1rem;
  text-align: center;
  align-items: center;
  justify-content: center;
}
.topModalWrap .topModal .foot button {
  width: auto;
}

.centerModal {
  padding: 2rem;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  max-height: 80vh;
  overflow-y: auto;
  background-color: #fff;
  border-radius: 0.8rem;
  box-shadow: 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 9px 28px 8px rgba(0, 0, 0, 0.05);
}
.centerModal.sm {
  width: 40rem;
}
.centerModal.md {
  width: 60rem;
}
.centerModal.xl {
  width: 80rem;
}
.centerModal .head {
  display: flex;
  align-items: center;
  padding: 0.8rem;
  height: 2.4rem;
  font-size: 1.8rem;
  color: #1d1d1d;
  font-weight: 700;
  border-bottom: 1px solid #E4E4E4;
}
.centerModal .head .closeBtn {
  margin-left: auto;
  cursor: pointer;
}
.centerModal .body {
  padding: 1.2rem 0;
}
.centerModal .body .smTxt {
  font-size: 1.4rem;
  color: #555555;
}
.centerModal .body .smTxt li {
  margin-bottom: 0.8rem;
  line-height: 130%;
}
.centerModal .body .mdTxt {
  font-size: 1.6rem;
  color: #1d1d1d;
}
.centerModal .body.join label {
  display: block;
  margin-top: 1.2rem;
  font-size: 1.4rem;
  color: #1d1d1d;
}
.centerModal .body.join input[type=text], .centerModal .body.join input[type=password] {
  margin-top: 0.6rem;
}
.centerModal .foot {
  display: flex;
  align-items: center;
}
.centerModal .foot button {
  height: 4rem;
  font-weight: 600;
}
.centerModal .foot .oneBtnWrap {
  margin-top: 0;
  margin-left: auto;
  width: auto;
  min-width: 7rem;
}

.formGroup.error input {
  border: 1px solid #FF1805;
}

.errorMsg {
  display: block;
  margin: 0.6rem 0 0.4rem;
  font-size: 1.3rem;
  line-height: 130%;
  font-weight: 400;
  color: #FF1805;
}

span.txtNotice {
  font-size: 1.3rem;
  color: #FF1805;
  font-weight: 300;
}

span.txtInfo {
  font-size: 1.3rem;
  color: #003675;
  font-weight: 300;
  line-height: 2rem;
}

.twoBtnWrap {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}

.mgT0 {
  margin-top: 0;
}

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

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

html {
  font-size: 10px;
  font-family: "Pretendard", 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;
}

body {
  font-size: 1.6rem;
  overflow: hidden;
}

.hidden, .clone {
  display: none !important;
}

.header {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: 4rem;
  background-color: #1a4c9a;
  box-shadow: 2px 2px 16px 0px rgba(0, 0, 0, 0.08);
  z-index: 10;
}
.header .logo {
  margin-left: 1.6rem;
  font-size: 2.2rem;
  line-height: 2.2rem;
  color: #fff;
  font-weight: 700;
}
.header .logo a {
  text-decoration: none;
}
.header .logo a img.newLogo {
  width: 3rem;
  margin-bottom: -0.4rem;
}
.header .logo .subLogo {
  font-size: 1.8rem;
  font-weight: 600;
}
.header .globLang {
  display: flex;
  margin-left: auto;
  height: 100%;
}
.header .globLang .googleTrans {
  position: absolute;
  right: 23rem;
  bottom: 0.2rem;
  margin-left: auto;
  text-align: right;
}
.header .globLang .SelectBox {
  height: 100%;
  color: #D3E1FB;
  border-left: 1px solid rgba(211, 225, 251, 0.2705882353);
}
.header .globLang .SelectList {
  width: 20rem;
  border-radius: 0 0 0.4rem 0.4rem;
}
.header .globLang .icGlobal {
  margin-right: 0.8rem;
  width: 2rem;
  height: 2rem;
}
.header .globLang li.translate {
  width: 100%;
  margin-top: 0.8rem;
  padding-left: 0;
  height: auto;
}
.header .globLang li.translate p {
  margin: 0rem -0.8rem -0.8rem -0.8rem;
  padding: 0.8rem;
  width: 100%;
  font-size: 1.3rem;
  line-height: 140%;
  color: #8E8E8E;
  background-color: #F8F8F8;
  border-top: 1px solid #E4E4E4;
  font-weight: 400;
  border-radius: 0 0 0.4rem 0.4rem;
}
.header .globLang li.translate p .MBgoogleTrans {
  display: none;
}
.header .util {
  display: flex;
  align-items: center;
  margin-left: auto;
  margin-right: 0.8rem;
  gap: 0.6rem;
}
.header .util li a {
  padding: 0.4rem 0.8rem;
  font-size: 1.3rem;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.5);
  font-weight: 300;
}
.header .util li a.active {
  background-color: #fff;
  color: #3447D2;
  font-weight: 600;
  cursor: default;
  text-decoration: none;
}

.policyWrap {
  margin-top: 4.6rem;
  padding: 1.2rem;
}
.policyWrap input[type=text],
.policyWrap input[type=number] {
  margin-top: 0;
  background-color: #fff;
}
.policyWrap .backBtn {
  width: 2.4rem;
  height: 2.4rem;
  margin-right: 0.8rem;
  cursor: pointer;
}
.policyWrap .Detail13gray400 {
  margin: 0.8rem 0;
  line-height: 140%;
}
.policyWrap .TitSm700 {
  margin: 1.2rem 0 0.8rem;
}
.policyWrap .TitSm700:first-child {
  margin-top: 0;
}
.policyWrap .TitSm500 {
  margin-bottom: 0.8rem;
  font-size: 1.4rem;
  color: #2D2D2D;
}
.policyWrap .TitSm500.titSpan {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.policyWrap .TitSm500 .pixel-button {
  display: inline-flex;
  align-items: center;
  padding: 0.4rem 0.8rem;
  text-decoration: none;
  -webkit-font-smoothing: none;
  -moz-osx-font-smoothing: grayscale;
  image-rendering: pixelated;
  cursor: pointer;
}
.policyWrap .TitSm500 .pixel-button .icon-gear {
  font-size: 1.1em;
}
.policyWrap .TitSm500 .pixel-button .text {
  color: #3447D2;
}
.policyWrap .TitSm500 .pixel-button .icon-arrow {
  color: #3447D2;
  font-size: 1.1em;
}
.policyWrap .inputTotalWrap {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.policyWrap .inputTotalWrap .inputWrap {
  margin-bottom: 0;
}
.policyWrap .inputWrap {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin-bottom: 0.8rem;
}
.policyWrap .inputWrap:last-child {
  margin-bottom: 0;
}
.policyWrap .inputWrap.vertical {
  flex-direction: column;
  align-items: flex-start;
  gap: 0.4rem;
}
.policyWrap .inputWrap label {
  width: 8rem;
  font-size: 1.4rem;
  color: #2D2D2D;
  white-space: nowrap;
}
.policyWrap .inputWrap .borderSelect {
  margin-top: 0;
}
.policyWrap .shortLabel label {
  width: auto;
}
.policyWrap .btnClose.flexBtn {
  position: relative;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  border: 2px solid #5b5b5b;
}
.policyWrap .defaultDropdown {
  transition-duration: 0.1s;
  cursor: default;
}
.policyWrap .defaultDropdown > .disFlex {
  cursor: pointer;
  gap: 0.8rem;
  padding: 0.8rem;
}
.policyWrap .defaultDropdown > .disFlex:hover {
  cursor: pointer;
}
.policyWrap .defaultDropdown .justify {
  justify-content: space-between;
}
.policyWrap .defaultDropdown .TitSm500 {
  margin: 0;
}
.policyWrap .defaultDropdown .dropdownBtn {
  margin-left: auto;
  width: 2.4rem;
  height: 2.4rem;
  background-color: rgba(255, 255, 255, 0.9);
  border: 1px solid #E4E4E4;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.policyWrap .defaultDropdown .dropdownBtn:hover {
  background-color: #fff;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
.policyWrap .defaultDropdown .dropdownBtn img {
  width: 1.2rem;
  height: 1.2rem;
  transition: transform 0.3s ease;
  transform: rotate(90deg);
}
.policyWrap .defaultDropdown .dropdownBtn.active {
  border-color: #3447D2;
}
.policyWrap .defaultDropdown .dropdownBtn.active img {
  transform: rotate(-90deg);
}
.policyWrap .defaultDropdown:hover .editBtn, .policyWrap .defaultDropdown.hover .editBtn {
  display: block;
}
.policyWrap .defaultDropdown .optionSelectWrap {
  background-color: #fff;
}

#themeListPanel .btnClose.MBhide767 {
  display: none;
}

.inputWrap .ageBtnGroup {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 0.8rem;
  width: 100%;
}
.inputWrap .ageBtnGroup label.ageBtn {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  min-width: 0;
  cursor: pointer;
  transition: all 0.3s ease;
  background-color: #fff;
}
.inputWrap .ageBtnGroup label.ageBtn:hover {
  border-color: #4a90e2;
  transform: translateY(-0.2rem);
}
.inputWrap .ageBtnGroup label.ageBtn:focus-within {
  border-color: #4a90e2;
  outline: none;
}
.inputWrap .ageBtnGroup label.ageBtn input[type=radio], .inputWrap .ageBtnGroup label.ageBtn input[type=checkbox] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.inputWrap .ageBtnGroup label.ageBtn input[type=radio]:checked + .ageSwatch, .inputWrap .ageBtnGroup label.ageBtn input[type=checkbox]:checked + .ageSwatch {
  background-color: #3447D2;
  box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.2);
  color: #fff;
}
.inputWrap .ageBtnGroup label.ageBtn input[type=radio]:checked ~ .ageText, .inputWrap .ageBtnGroup label.ageBtn input[type=checkbox]:checked ~ .ageText {
  color: #3447D2;
  font-weight: 600;
}
.inputWrap .ageBtnGroup label.ageBtn .ageSwatch {
  display: grid;
  place-items: center;
  margin-bottom: 0;
  width: 100%;
  height: 100%;
  flex: 1 1 auto;
  border-radius: 0.4rem;
  border: 0.2rem solid #fff;
  background-color: #F9F9F9;
  border: 1px solid #E4E4E4;
  box-sizing: border-box;
  font-size: 1.3rem;
  line-height: 1.25;
  word-break: keep-all;
  white-space: normal;
  overflow-wrap: anywhere;
  text-align: center;
  padding: 0.8rem 0.4rem;
}
.inputWrap .ageBtnGroup label.ageBtn .ageSwatch br {
  display: block;
}
.inputWrap .ageBtnGroup label.ageBtn .ageSwatch * {
  white-space: inherit;
  overflow-wrap: inherit;
  word-break: inherit;
}
.inputWrap .ageBtnGroup label.ageBtn .ageSwatch:hover {
  border: 2px solid #3447D2;
  box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.2);
}
.inputWrap .ageBtnGroup.age5 {
  gap: 0.4rem 0.8rem;
}
.inputWrap .visually-hidden {
  position: absolute;
  width: 0.1rem;
  height: 0.1rem;
  padding: 0;
  margin: -0.1rem;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.inputWrap .ageText {
  margin-top: 0.4rem;
  font-size: 1.2rem;
  font-weight: 500;
  color: #333;
}

.addressSearchWrap {
  margin-bottom: 0.8rem;
  position: absolute;
  top: auto;
  left: 0;
  width: 100%;
  background-color: #FFFFFF;
  box-shadow: 2px 2px 6px 2px rgba(0, 0, 0, 0.06);
  box-sizing: border-box;
  z-index: 2;
}
.addressSearchWrap .address-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.8rem 1.6rem;
  background-color: #fff;
  cursor: pointer;
}
.addressSearchWrap .address-title .title-wrap {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  color: #1d1d1d;
}
.addressSearchWrap .address-container {
  border-top: 1px solid #E4E4E4;
  padding: 1.6rem 1.2rem 1.2rem;
  background-color: #fff;
}
.addressSearchWrap .address-container .searchWrap .disFlex {
  gap: 0.8rem;
}
.addressSearchWrap .address-container .searchWrap .disFlex * {
  height: 3.6rem;
  box-sizing: border-box;
  margin-top: 0.4rem;
}
.addressSearchWrap .address-container .searchWrap .disFlex .activeBtn {
  width: auto;
  word-break: keep-all;
  font-size: 1.4rem;
}
.addressSearchWrap .address-container .searchWrap .disFlex .borderSelect {
  width: 35%;
  text-overflow: ellipsis;
}
.addressSearchWrap .address-container .addressListWrap {
  margin-top: 1.6rem;
  height: 20rem;
  overflow-y: auto;
}
.addressSearchWrap .address-container .addressListWrap li {
  margin: 1.6rem 0;
  font-size: 1.4rem;
  color: #1d1d1d;
  line-height: 120%;
  cursor: pointer;
}
.addressSearchWrap .address-container .addressListWrap li:hover {
  color: #3447D2;
}
.addressSearchWrap .address-container .addressListWrap li.active {
  color: #3447D2;
}
.addressSearchWrap .addressSearchWrap:has(.address-container:not([style*="display: none"])) {
  box-shadow: 2px 6px 6px 2px rgba(0, 0, 0, 0.26);
}
.addressSearchWrap .line {
  display: none;
  height: 1px;
  margin: 1rem 0;
  background: rgba(255, 255, 255, 0.2);
  border: none;
}
.addressSearchWrap .optionBtn,
.addressSearchWrap .hashtagMapWrap {
  padding-bottom: 1rem;
}

.ageTreeWrap {
  padding: 0 0.8rem;
}
.ageTreeWrap .disFlex {
  align-items: flex-start;
}
.ageTreeWrap .disFlex .ageTreeMenu {
  flex-shrink: 0;
  width: 13rem;
  margin-right: 0.8rem;
}
.ageTreeWrap .disFlex .ageTreeMenu .treeMenu {
  min-height: 10rem;
  max-height: 40rem;
  overflow-y: auto;
}
.ageTreeWrap .disFlex .hashtagWrap {
  width: 100%;
}
.ageTreeWrap .disFlex .hashtagContainer {
  margin-top: 1.2rem;
  padding: 0.8rem;
  min-height: 10rem;
  max-height: 40rem;
  border-radius: 0.4rem;
  background-color: #F8F8F8;
  overflow-y: auto;
}
.ageTreeWrap .disFlex .hashtagContainer .noneTxt {
  font-size: 1.3rem;
  color: #717171;
}
.ageTreeWrap .disFlex .hashtagContainer .hashtag {
  margin: 0;
  float: left;
  margin-right: 0.4rem;
  margin-bottom: 0.8rem;
}
.ageTreeWrap .disFlex .hashtagContainer .hashtag:last-child {
  margin-bottom: 0;
}
.ageTreeWrap .disFlex .hashtagContainer .hashtag.default:hover {
  box-shadow: unset;
  transition-duration: unset;
  border: 1px solid #E4E4E4;
  cursor: default;
}

.ageSelectTreeMenu {
  list-style: none;
  padding: 0.4rem;
  margin: 1.2rem 0;
  max-height: 40rem;
  border-radius: 0.4rem;
  border: 1px solid #E4E4E4;
  font-size: 1.3rem;
}
.ageSelectTreeMenu .treeHead .themeBtnWrap {
  display: flex;
  margin: 0 0 0 auto;
}
.ageSelectTreeMenu .treeHead .themeBtnWrap .btn {
  margin-top: 0;
  white-space: nowrap;
}
.ageSelectTreeMenu .hoverCheck {
  background-color: #3447D2;
  border-color: #3447D2;
  width: 2.4rem;
  height: 2.4rem;
  border: 1px solid #E4E4E4;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.ageSelectTreeMenu .hoverCheck.off {
  background-color: #fff;
  border-color: #3447D2;
}
.ageSelectTreeMenu .hoverCheck img {
  width: 1.6rem;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader {
  position: relative;
  display: flex;
  align-items: center;
  margin: 0.4rem 0;
  padding: 0.4rem 0rem;
  border-radius: 0.4rem;
  cursor: pointer;
  transition: all 0.1s ease;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader:hover {
  background-color: #F8F8F8;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader.disabled {
  cursor: default;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader.disabled .textArea {
  opacity: 0.7;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader.disabled .hoverCheck {
  opacity: 1;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader.disabled:hover {
  background: transparent;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader .toggleArrow {
  width: 1.6rem;
  height: 1.6rem;
  flex-shrink: 0;
  cursor: pointer;
  transition: all 0.2s ease;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader .toggleArrow:hover:not(.disabled) {
  opacity: 0.8;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader .toggleArrow.disabled {
  cursor: not-allowed;
  opacity: 0.5;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader .categoryCheckbox {
  width: 1.6rem;
  height: 1.6rem;
  margin-right: 0.4rem;
  flex-shrink: 0;
  cursor: pointer;
  appearance: none;
  border: 2px solid #3447D2;
  border-radius: 0.3rem;
  background-color: #fff;
  position: relative;
  transition: all 0.2s ease;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader .categoryCheckbox:checked {
  background-color: #3447D2;
  border-color: #3447D2;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader .categoryCheckbox:checked::after {
  content: "✓";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  font-size: 1.2rem;
  font-weight: bold;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader .categoryCheckbox:indeterminate {
  background-color: #3447D2;
  border-color: #3447D2;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader .categoryCheckbox:indeterminate::after {
  content: "-";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  font-size: 1.2rem;
  font-weight: bold;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader .categoryCheckbox:hover:not(:disabled) {
  border-color: rgb(38.2862903226, 54.4516129032, 172.7137096774);
}
.ageSelectTreeMenu .treeCategory .treeItemHeader .categoryCheckbox:disabled {
  border-color: #ccc;
  background-color: #f5f5f5;
  cursor: not-allowed;
  opacity: 0.5;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader .itemContent {
  display: flex;
  align-items: center;
  flex: 1;
  gap: 0.4rem;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader .itemContent .imgBox {
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 0.4rem;
  overflow: hidden;
  margin-right: 0.4rem;
  flex-shrink: 0;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader .itemContent .imgBox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader .itemContent .textArea {
  flex: 1;
}
.ageSelectTreeMenu .treeCategory .treeItemHeader .itemContent .textArea .TitSm700 {
  font-size: 1.3rem;
  font-weight: 600;
  color: #1d1d1d;
}
.ageSelectTreeMenu .treeCategory .subMenu {
  display: none;
  background: #fff;
  border-radius: 0.4rem;
}
.ageSelectTreeMenu .treeCategory .subMenu.open {
  display: block;
  cursor: default;
}
.ageSelectTreeMenu .treeCategory .subMenu .treeSubItem {
  position: relative;
  margin-top: 0;
  padding: 0.8rem 0.8rem;
  padding-right: 0.4rem;
  border-radius: 0.8rem;
  transition: all 0.1s ease;
}
.ageSelectTreeMenu .treeCategory .subMenu .treeSubItem:hover {
  background: #F8F8F8;
}
.ageSelectTreeMenu .treeCategory .subMenu .treeSubItem.hover {
  border: 2px solid #3447D2;
}
.ageSelectTreeMenu .treeCategory .subMenu .treeSubItem .itemContent {
  display: flex;
  align-items: center;
  transition: all 0.2s ease;
  padding-left: 1.2rem;
}
.ageSelectTreeMenu .treeCategory .subMenu .treeSubItem .itemContent .treeIcon {
  width: 1.6rem;
  height: 1.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 0.4rem;
  flex-shrink: 0;
  font-size: 1.2rem;
  color: #717171;
}
.ageSelectTreeMenu .treeCategory .subMenu .treeSubItem .itemContent .imgBox {
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 0.4rem;
  margin-right: 0.8rem;
  flex-shrink: 0;
  overflow: hidden;
}
.ageSelectTreeMenu .treeCategory .subMenu .treeSubItem .itemContent .imgBox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ageSelectTreeMenu .treeCategory .subMenu .treeSubItem .itemContent .textArea {
  flex: 1;
}
.ageSelectTreeMenu .treeCategory .subMenu .treeSubItem .itemContent .textArea .TitSm700 {
  font-size: 1.3rem;
  font-weight: 500;
  color: #2D2D2D;
}
.ageSelectTreeMenu .treeCategory.collapsed .subMenu {
  display: none !important;
}

.treeMenu {
  list-style: none;
  padding: 0.8rem;
  margin: 1.2rem 0;
  border-radius: 0.8rem;
  border: 1px solid #F0F0F0;
  box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.08);
}
.treeMenu .treeHead .themeBtnWrap {
  display: flex;
  margin: 0 0 0 auto;
}
.treeMenu .treeHead .themeBtnWrap .btn {
  margin-top: 0;
  white-space: nowrap;
}
.treeMenu .hoverCheck {
  background-color: #3447D2;
  border-color: #3447D2;
  width: 2.4rem;
  height: 2.4rem;
  border: 1px solid #E4E4E4;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.treeMenu .hoverCheck.off {
  background-color: #fff;
  border-color: #3447D2;
}
.treeMenu .hoverCheck img {
  width: 1.6rem;
}
.treeMenu .treeCategory .treeItemHeader {
  position: relative;
  display: flex;
  align-items: center;
  padding: 0.8rem 0.4rem;
  border-radius: 0.8rem;
  cursor: pointer;
  transition: all 0.1s ease;
}
.treeMenu .treeCategory .treeItemHeader:hover {
  background-color: #F8F8F8;
}
.treeMenu .treeCategory .treeItemHeader.disabled {
  cursor: default;
}
.treeMenu .treeCategory .treeItemHeader.disabled .textArea {
  opacity: 0.7;
}
.treeMenu .treeCategory .treeItemHeader.disabled .hoverCheck {
  opacity: 1;
}
.treeMenu .treeCategory .treeItemHeader.disabled:hover {
  background: transparent;
}
.treeMenu .treeCategory .treeItemHeader .toggleIcon {
  width: 1.6rem;
  height: 1.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6rem;
  font-weight: 600;
  color: #3447D2;
  margin-right: 0.8rem;
  flex-shrink: 0;
  transition: all 0.2s ease;
}
.treeMenu .treeCategory .treeItemHeader .toggleIcon.disabled {
  color: #999999;
  cursor: not-allowed;
  opacity: 0.5;
}
.treeMenu .treeCategory .treeItemHeader .itemContent {
  display: flex;
  align-items: center;
  flex: 1;
  gap: 0.8rem;
}
.treeMenu .treeCategory .treeItemHeader .itemContent .imgBox {
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 0.4rem;
  overflow: hidden;
  margin-right: 0.4rem;
  flex-shrink: 0;
}
.treeMenu .treeCategory .treeItemHeader .itemContent .imgBox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.treeMenu .treeCategory .treeItemHeader .itemContent .textArea {
  flex: 1;
}
.treeMenu .treeCategory .treeItemHeader .itemContent .textArea .TitSm700 {
  font-size: 1.3rem;
  font-weight: 600;
  color: #1d1d1d;
}
.treeMenu .treeCategory .subMenu {
  display: none;
  background: #fff;
  border-radius: 0.4rem;
}
.treeMenu .treeCategory .subMenu.open {
  display: block;
  cursor: default;
}
.treeMenu .treeCategory .subMenu .treeSubItem {
  position: relative;
  margin-top: 0;
  padding: 0.8rem 0.8rem;
  padding-right: 0.4rem;
  border-radius: 0.8rem;
  transition: all 0.1s ease;
}
.treeMenu .treeCategory .subMenu .treeSubItem:hover {
  background: #F8F8F8;
}
.treeMenu .treeCategory .subMenu .treeSubItem.hover {
  border: 2px solid #3447D2;
}
.treeMenu .treeCategory .subMenu .treeSubItem .itemContent {
  display: flex;
  align-items: center;
  transition: all 0.2s ease;
  padding-left: 1.2rem;
  gap: 0.8rem;
}
.treeMenu .treeCategory .subMenu .treeSubItem .itemContent .treeIcon {
  width: 1.6rem;
  height: 1.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 0.4rem;
  flex-shrink: 0;
  font-size: 1.2rem;
  color: #717171;
}
.treeMenu .treeCategory .subMenu .treeSubItem .itemContent .imgBox {
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 0.4rem;
  margin-right: 0.8rem;
  flex-shrink: 0;
  overflow: hidden;
}
.treeMenu .treeCategory .subMenu .treeSubItem .itemContent .imgBox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.treeMenu .treeCategory .subMenu .treeSubItem .itemContent .textArea {
  flex: 1;
}
.treeMenu .treeCategory .subMenu .treeSubItem .itemContent .textArea .TitSm700 {
  font-size: 1.3rem;
  font-weight: 500;
  color: #2D2D2D;
}
.treeMenu .treeCategory .settingBtn, .treeMenu .treeCategory .hoverCheck {
  cursor: pointer;
}
.treeMenu .treeCategory .settingBtn.disabled {
  opacity: 0.3;
  pointer-events: none;
}
.treeMenu .treeCategory.collapsed .treeItemHeader .toggleIcon {
  transform: rotate(45deg);
}
.treeMenu .treeCategory.collapsed .subMenu {
  display: none !important;
}

.themeCheck label {
  font-size: 1.3rem;
  font-weight: 500;
  color: #2D2D2D;
}

.leftHeadTable, .topHeadTable {
  margin-bottom: 0.8rem;
  width: 100%;
  font-size: 1.3rem;
}
.leftHeadTable .TitSm500, .topHeadTable .TitSm500 {
  text-align: left;
}
.leftHeadTable th, .leftHeadTable td, .topHeadTable th, .topHeadTable td {
  padding: 0.8rem;
  border: 1px solid #F0F0F0;
  border-collapse: collapse;
  vertical-align: middle;
  line-height: 130%;
}
.leftHeadTable th, .topHeadTable th {
  background-color: #f6f9fc;
  font-weight: 600;
  color: #2D2D2D;
}
.leftHeadTable button, .topHeadTable button {
  margin-top: 0;
}

.leftHeadGrid {
  display: grid;
  border: 0.1rem solid #E4E4E4;
  width: 100%;
  box-shadow: 0 0 1.6rem 0 rgba(0, 0, 0, 0.04);
  box-sizing: border-box;
}
.leftHeadGrid .cell, .leftHeadGrid .cellheader {
  vertical-align: middle;
  display: flex;
  align-items: flex-start;
  padding: 1.2rem 0.8rem;
  border: 0.1rem solid #F0F0F0;
}
.leftHeadGrid .cell.row2Grid, .leftHeadGrid .cellheader.row2Grid {
  flex-direction: column;
  align-items: flex-start;
  gap: 0.8rem;
}
.leftHeadGrid .cellheader {
  background-color: rgba(247, 247, 249, 0.5);
  justify-content: left;
  align-items: flex-start;
}
.leftHeadGrid .cellheader label {
  margin-right: 0;
  font-size: 1.3rem;
}
.leftHeadGrid .cellheader.addCell {
  background: #fff;
}
.leftHeadGrid input[type=text], .leftHeadGrid select {
  margin-top: 0;
}
.leftHeadGrid select {
  width: 24rem;
}

.topHeadGrid {
  display: flex;
  flex-direction: column;
}
.topHeadGrid .row {
  grid-template-columns: 4rem 2fr 6rem 6rem;
  display: grid;
  align-items: center;
  border-bottom: 0.1rem solid #E4E4E4;
  font-size: 1.3rem;
  background-color: #fff;
}
.topHeadGrid .row.headerRow {
  background-color: #f6f9fc;
  width: 100%;
}
.topHeadGrid .row.headerRow .cell {
  font-weight: 600;
}
.topHeadGrid .cell {
  padding: 0.8rem 0.4rem;
  display: grid;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.topHeadGrid .cell.leftTxt {
  justify-content: flex-start;
}
.topHeadGrid .cell.twoBtnWrap {
  display: flex;
  align-items: center;
}
.topHeadGrid .clickTxt {
  color: #1d1d1d;
  text-decoration: underline;
  cursor: pointer;
}
.topHeadGrid .clickTxt:hover {
  color: #3447D2;
}
.topHeadGrid .btnWrap button {
  padding: 0.4rem 0.8rem;
  margin-right: 0.8rem;
}
.topHeadGrid .hoverCheck {
  background-color: #3447D2;
  border-color: #3447D2;
  width: 2.4rem;
  height: 2.4rem;
  border: 1px solid #E4E4E4;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s ease;
  flex-shrink: 0;
  background-image: url("../images/cate_tree_on.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.6rem 1.6rem;
}
.topHeadGrid .hoverCheck.off {
  background-color: #fff;
  border-color: #3447D2;
  background-image: url("../images/cate_tree_off.svg");
}
.topHeadGrid .hoverCheck img {
  width: 1.6rem;
}

/* colspan 효과 - 2칸 차지 */
.span-2 {
  grid-column: span 2;
}

/* colspan 효과 - 3칸 차지 */
.span-3 {
  grid-column: span 3;
}

/* colspan 효과 - 4칸 차지 (전체 너비) */
.span-4 {
  grid-column: span 4;
}

.noborder {
  border: none;
  box-shadow: none;
}
.noborder .cell, .noborder .cellheader {
  border: none;
  background-color: unset;
}

.twoInputWrap {
  display: flex;
  align-items: center;
  gap: 0.4rem;
}
.twoInputWrap label {
  font-size: 1.3rem;
  color: #555555;
}
.twoInputWrap input[type=range] {
  width: 100%;
}
.twoInputWrap input[type=color] {
  width: 100%;
  height: 2.4rem;
  padding: 0;
  border: 1px solid #ccc;
  border-radius: 6px;
  background: none;
  appearance: none;
  -webkit-appearance: none;
}
.twoInputWrap input[type=color]::-webkit-color-swatch-wrapper {
  padding: 0;
}
.twoInputWrap input[type=color]::-webkit-color-swatch {
  border: none;
  border-radius: 6px;
}

.populGraphWrap {
  width: 100%;
  height: 30rem;
  border-radius: 0.8rem;
  margin-bottom: 1.2rem;
}
.populGraphWrap.narrow {
  width: 36%;
}
.populGraphWrap.wide {
  width: 62%;
}
.populGraphWrap.wide.syncChartWrap {
  display: flex;
  flex-direction: column;
}
.populGraphWrap.wide.syncChartWrap div {
  flex: 1;
}
.populGraphWrap.wide.syncChartWrap div .syncChart {
  height: 10.5rem;
}
.populGraphWrap.wide.syncChartWrap .TitSm500.between {
  margin-left: 1rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.populGraphWrap.wide.syncChartWrap .TitSm500.between span {
  margin-right: 1rem;
}

.RightDetailInfo .TitSm500 {
  margin: 1.2rem 0 0.8rem;
  font-size: 1.4rem;
}
.RightDetailInfo .leftHeadTable {
  text-align: left;
}
.RightDetailInfo .topHeadTable {
  table-layout: fixed;
}
.RightDetailInfo .topHeadTable th, .RightDetailInfo .topHeadTable td {
  padding: 0.4rem 0.4rem;
  text-align: center;
  font-size: 1.3rem;
  white-space: nowrap;
}
.RightDetailInfo .topHeadTable td {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.RightDetailInfo .topHeadTable th:nth-child(1),
.RightDetailInfo .topHeadTable td:nth-child(1) {
  width: 10%;
}
.RightDetailInfo .topHeadTable th:nth-child(2),
.RightDetailInfo .topHeadTable td:nth-child(2) {
  width: 30%;
}
.RightDetailInfo .topHeadTable th:nth-child(3),
.RightDetailInfo .topHeadTable td:nth-child(3) {
  width: 25%;
}
.RightDetailInfo .topHeadTable th:nth-child(4),
.RightDetailInfo .topHeadTable td:nth-child(4) {
  width: 15%;
}
.RightDetailInfo .topHeadTable th:nth-child(5),
.RightDetailInfo .topHeadTable td:nth-child(5) {
  width: 20%;
}
.RightDetailInfo .tableWrap .moreViewBtn {
  justify-content: center;
}

@keyframes tableSlideIn {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.comparResult .dropdownMenu {
  padding-bottom: 1.2rem;
}
.comparResult .TitSm500, .comparResult label {
  margin: 1.2rem 0 0.8rem;
  font-size: 1.4rem;
}
.comparResult .topHeadGrid {
  margin: 0.8rem 0;
  border: 1px solid #E4E4E4;
  border-bottom: none;
  max-height: 28.5rem;
  overflow-y: auto;
}
.comparResult .topHeadGrid .row {
  grid-template-columns: 0.7fr 0.5fr 0.7fr 0.5fr 0.5fr 0.5fr;
}
.comparResult .topHeadGrid .row .cell {
  padding: 0.8rem;
}
.comparResult .topHeadGrid .row.headerRow .cell {
  padding: 1.2rem 0.8rem;
}
.comparResult .topHeadGrid .row.detailRow {
  display: block;
  background-color: #fbfbfb;
  animation: tableSlideIn 0.3s ease-out;
}
.comparResult .topHeadGrid .row.detailRow .detailContent {
  position: relative;
  padding: 1.6rem;
}
.comparResult .topHeadGrid .row.detailRow .detailContent .closeDetail {
  margin-top: 0;
  padding: 0;
  position: absolute;
  top: 0.8rem;
  right: 0.8rem;
  width: 2.4rem;
  height: 2.4rem;
  border: none;
  background: none;
  font-size: 2rem;
  cursor: pointer;
  color: #717171;
}
.comparResult .topHeadGrid .row.detailRow .detailContent .closeDetail:hover {
  color: #1d1d1d;
}
.comparResult .topHeadGrid .row.detailRow .detailContent .detailTitle {
  font-weight: 600;
  font-size: 1.4rem;
  margin-bottom: 0.8rem;
  color: #1d1d1d;
  line-height: 1.6;
}
.comparResult .topHeadGrid .row.detailRow .detailContent .detailAddr {
  font-size: 1.3rem;
  color: #717171;
  margin-bottom: 1.2rem;
}
.comparResult .topHeadGrid .row.detailRow .detailContent .detailDesc {
  font-weight: 500;
  font-size: 1.3rem;
  color: #1d1d1d;
  line-height: 1.6;
  margin-bottom: 0.8rem;
}
.comparResult .topHeadGrid .row.detailRow .detailContent .detailDesc:last-child {
  margin-bottom: 0;
}
.comparResult .topHeadGrid .row.detailRow .detailContent .detailDesc span {
  font-weight: 300;
  color: #2D2D2D;
}
.comparResult .topHeadGrid .tableBody .row.hover:hover {
  background-color: #fbfbfc;
  cursor: pointer;
}
.comparResult .compareContsTable .topHeadGrid .row {
  grid-template-columns: 0.7fr 0.7fr 0.7fr 0.3fr 0.3fr;
  cursor: pointer;
}
.comparResult .graphCompare {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1.2rem;
}
.comparResult .graphCompare .graphWrap {
  width: 48%;
}
.comparResult .graphCompare .graphWrap .rightBtn {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 10;
  width: auto;
}
.comparResult .graphCompareArea {
  display: block;
}
.comparResult .graphCompareArea .graphWrap {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1.2rem;
}
.comparResult .twoBtnWrap {
  font-size: 1.3rem;
  color: #555555;
}
.comparResult .selectWrap {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  margin-top: 1.2rem;
}
.comparResult .selectWrap span {
  font-size: 1.3rem;
  color: #555555;
}

.container {
  display: flex;
  height: calc(100vh - 4rem);
}

.leftAside {
  display: flex;
  position: relative;
  z-index: 2;
  transition: height 0.3s ease-in-out;
}
.leftAside .panerHideBtn {
  position: absolute;
  left: 30rem;
  top: 11rem;
  transform: none;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.4rem;
  height: 4.6rem;
  border-radius: 0px 4px 4px 0;
  background-color: #fff;
  box-shadow: 6px 2px 8px 0px rgba(0, 0, 0, 0.08);
  cursor: pointer;
}
.leftAside .panerHideBtn:has(img.rotate) {
  left: 0;
}
.leftAside .weatherModal {
  position: absolute;
  left: 8rem;
  bottom: 1.6rem;
  display: flex;
  gap: 2rem;
  padding: 1.6rem;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(2px);
  white-space: nowrap;
  z-index: 3;
}
.leftAside .weatherModal .temper {
  margin-top: 2rem;
  font-size: 2.5rem;
  font-weight: 700;
  color: #1d1d1d;
}
.leftAside .weatherModal .img img {
  width: 6rem;
}

.leftMenu {
  position: relative;
  width: 6.4rem;
  height: 100%;
  background-color: #fff;
  box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, 0.04);
  z-index: 3;
}
.leftMenu .btnAllmenu {
  margin: 1.2rem;
  width: 4rem;
  cursor: pointer;
}
.leftMenu .imgHistory {
  position: absolute;
  left: 1.2rem;
  bottom: 1.2rem;
  width: 4rem;
  z-index: 1;
}
.leftMenu .imgHistory .imgBox {
  margin-top: 0.8rem;
  width: 4rem;
  height: 4rem;
  border-radius: 0.8rem;
  border: 1px solid #F0F0F0;
  overflow: hidden;
  cursor: pointer;
}
.leftMenu .imgHistory .imgBox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.leftMenu .imgHistory::before {
  content: "";
  display: inline-block;
  margin-bottom: 0.4rem;
  width: 100%;
  height: 1px;
  border-top: 1px solid #F0F0F0;
}
.leftMenu .navIcon {
  position: relative;
  z-index: 2;
}
.leftMenu .navIcon > ul {
  margin-top: 2rem;
  text-align: center;
}
.leftMenu .navIcon > ul > li {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 3.2rem;
  margin-left: auto;
  margin-right: auto;
  width: 2.4rem;
  height: 2.4rem;
  cursor: pointer;
}
.leftMenu .navIcon > ul > li.hover {
  padding: 8px;
  justify-content: center;
  align-items: center;
  align-self: stretch;
  border-radius: 8px;
  background: #3447D2;
}
.leftMenu .navIcon > ul > li.hover img {
  filter: invert(100%) sepia(96%) saturate(15%) hue-rotate(276deg) brightness(106%) contrast(104%);
}
.leftMenu .navIcon > ul .moreBtn {
  margin-top: -1.6rem;
}
.leftMenu .navIcon > ul .moreBtn li {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 0.8rem;
}
.leftMenu .navIcon > ul .moreBtn li > span {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.8rem;
  width: 4rem;
  height: 4rem;
  background-color: #fff;
  box-shadow: 1px 1px 8px 0px rgba(0, 0, 0, 0.16);
  border-radius: 0.8rem;
  cursor: pointer;
}

.leftPanelWrap, .rightPanelWrap {
  display: flex;
}

.leftPanel, .archPanel, .archIstPanel, .archMyPanel {
  position: relative;
  width: 30rem;
  height: 100%;
  box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, 0.04);
  background-color: #fff;
  z-index: 1000;
}

.rightPanel {
  width: 35rem;
}

.topHeadFix {
  position: sticky;
  left: 0;
  top: 0;
  box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, 0.12);
  z-index: 2;
}

.optionSelectWrap {
  padding: 1.2rem;
  background-color: #F7F7F9;
}
.optionSelectWrap .backBtn {
  cursor: pointer;
}
.optionSelectWrap .TitSm700 {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.optionSelectWrap .btnClose {
  position: absolute;
  top: 0.6rem;
  right: 0.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 100px;
  background-color: #fff;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.16);
  cursor: pointer;
  z-index: 3;
}
.optionSelectWrap .btnClose:hover {
  box-shadow: 0 0 0 2px #E4E4E4 inset;
}
.optionSelectWrap .topBtnWrap {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.optionSelectWrap .topBtnWrap button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
}
.optionSelectWrap .topBtnWrap button:hover img {
  filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(288deg) brightness(102%) contrast(102%);
}
.optionSelectWrap .optionBtn {
  position: relative;
  margin-top: 1.2rem;
}
.optionSelectWrap .optionBtn .slide-container {
  position: relative;
  overflow: hidden;
  margin: 0 2.4rem;
}
.optionSelectWrap .optionBtn .slide-container .slide-wrapper {
  display: flex;
  gap: 0.8rem;
  transition: transform 0.3s ease;
}
.optionSelectWrap .optionBtn .slide-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2.4rem;
  height: 2.4rem;
  background-color: rgba(255, 255, 255, 0.9);
  border: 1px solid #E4E4E4;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 2;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.optionSelectWrap .optionBtn .slide-arrow:hover {
  background-color: #fff;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
.optionSelectWrap .optionBtn .slide-arrow.prev {
  left: -0.8rem;
}
.optionSelectWrap .optionBtn .slide-arrow.prev img {
  transform: rotate(180deg);
}
.optionSelectWrap .optionBtn .slide-arrow.next {
  right: -0.8rem;
}
.optionSelectWrap .optionBtn .slide-arrow img {
  width: 1.2rem;
  height: 1.2rem;
}
.optionSelectWrap .optionBtn .slide-arrow.disabled {
  opacity: 0.3;
  cursor: not-allowed;
  pointer-events: none;
}
.optionSelectWrap .optionBtn .btnWrap {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 5.6rem;
  text-align: center;
}
.optionSelectWrap .optionBtn .btnWrap span {
  display: inline-block;
  font-size: 1.4rem;
  color: #717171;
  padding: 0.8rem 0.4rem 0 0.4rem;
  font-weight: 500;
}
.optionSelectWrap .optionBtn .btnWrap:hover span, .optionSelectWrap .optionBtn .btnWrap.hover span {
  color: #3447D2;
  font-weight: 600;
}
.optionSelectWrap .optionBtn .theme1 .iconBtn {
  background: url(../images/theme1.svg) 50% 50% no-repeat;
  background-size: cover;
}
.optionSelectWrap .optionBtn .theme1:hover .iconBtn, .optionSelectWrap .optionBtn .theme1.hover .iconBtn {
  background: url(../images/theme1_hover.svg) 50% 50% no-repeat;
  background-size: cover;
}
.optionSelectWrap .optionBtn .theme2 .iconBtn {
  background: url(../images/theme2.svg) 50% 50% no-repeat;
  background-size: cover;
}
.optionSelectWrap .optionBtn .theme2:hover .iconBtn, .optionSelectWrap .optionBtn .theme2.hover .iconBtn {
  background: url(../images/theme2_hover.svg) 50% 50% no-repeat;
  background-size: cover;
}
.optionSelectWrap .optionBtn .theme3 .iconBtn {
  background: url(../images/theme3.svg) 50% 50% no-repeat;
  background-size: cover;
}
.optionSelectWrap .optionBtn .theme3:hover .iconBtn, .optionSelectWrap .optionBtn .theme3.hover .iconBtn {
  background: url(../images/theme3_hover.svg) 50% 50% no-repeat;
  background-size: cover;
}
.optionSelectWrap .optionBtn .theme4 .iconBtn {
  background: url(../images/theme4.svg) 50% 50% no-repeat;
  background-size: cover;
}
.optionSelectWrap .optionBtn .theme4:hover .iconBtn, .optionSelectWrap .optionBtn .theme4.hover .iconBtn {
  background: url(../images/theme4_hover.svg) 50% 50% no-repeat;
  background-size: cover;
}
.optionSelectWrap .optionBtn .roundBtn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 5.6rem;
  height: 5.6rem;
  border-radius: 0.8rem;
  cursor: pointer;
}
.optionSelectWrap .optionBtn .roundBtn img {
  width: 5.6rem;
}
.optionSelectWrap .hashtagMapWrap {
  display: block;
  margin-top: 1.6rem;
}
.optionSelectWrap .hashtagMapWrap .hashtag {
  margin-right: 0.4rem;
  margin-bottom: 0.4rem;
}
.optionSelectWrap .hashtagMapWrap::after {
  content: "";
  display: block;
  clear: both;
}
.optionSelectWrap .kwHeadWrap {
  display: flex;
  align-items: center;
  justify-content: unset;
}

.themeSearchWrap {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.themeSearchWrap form {
  width: 100%;
}
.themeSearchWrap input {
  height: 3.6rem;
}
.themeSearchWrap button {
  padding: 0.8rem 1.6rem;
  width: auto;
  height: 3.6rem;
  white-space: nowrap;
}

.travleListWrap {
  position: relative;
  padding: 1.2rem;
  overflow-y: auto;
}
.travleListWrap .bottomBtn {
  position: sticky;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
}

.listOptionWrap {
  display: flex;
  align-items: center;
}
.listOptionWrap .viewOption a {
  text-decoration: none;
}
.listOptionWrap .viewOption a.hover img, .listOptionWrap .viewOption a:hover img {
  filter: invert(51%) sepia(0%) saturate(11%) hue-rotate(142deg) brightness(90%) contrast(81%);
}
.listOptionWrap select {
  padding: 0.4rem 4rem 0.4rem 0.4rem;
  margin-left: auto;
  min-width: 8rem;
  font-size: 1.3rem;
}

.keywordClickWrap, .archClickWrap {
  margin-top: 1.6rem;
}
.keywordClickWrap .hashtagMapWrap, .archClickWrap .hashtagMapWrap {
  max-height: 7rem;
  overflow-y: auto;
}
.keywordClickWrap .moreViewBtn, .keywordClickWrap .moreView_ReverBtn, .archClickWrap .moreViewBtn, .archClickWrap .moreView_ReverBtn {
  margin-top: 0.8rem;
}

input[type=text].search-box {
  padding-right: 4rem;
  background-color: #fff;
  font-weight: 400;
}

.text-clear {
  position: relative;
}

.text-clear:after {
  content: "✚";
  display: block;
  width: 1.6rem;
  height: 1.6rem;
  position: absolute;
  z-index: 1;
  right: 0.8rem;
  top: -3.2rem;
  bottom: 0;
  margin: auto;
  padding: 0.5rem;
  text-align: center;
  color: #aaa;
  font-weight: normal;
  font-size: 1.4rem;
  cursor: pointer;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  background: #fff;
  border-radius: 50%;
  line-height: 1.6rem;
  -webkit-transition: 300ms all;
}

.text-clear:hover:after {
  color: tomato;
  -webkit-transition: 300ms all;
}

.search-box:not(:valid) ~ .text-clear {
  display: none;
}

.archListWrap {
  margin-top: 0.8rem;
}
.archListWrap .disFlexCont {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}
.archListWrap .disFlexCont > div {
  position: relative;
  flex: 1 1 40%;
  height: 8.8rem;
  border-radius: 0.8rem;
  overflow: hidden;
  cursor: pointer;
}
.archListWrap .disFlexCont > div:hover img {
  transform: scale(1.2);
  transition: transform 0.5s; /* Animation */
  animation-timing-function: ease;
}
.archListWrap .disFlexCont > div > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.archListWrap .disFlexCont > div.hover {
  box-sizing: border-box;
  border: 3px solid #3447D2;
}

.pagination {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0rem;
}
.pagination .page-navis {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.8rem;
}
.pagination .page-navis a {
  text-decoration: none;
}
.pagination .page-navis a:hover {
  color: #3447D2;
}
.pagination .page-navis .page-navi {
  display: flex;
  height: 3.2rem;
  padding: 0.6rem 0.8rem 0.6rem 0.4rem;
  justify-content: center;
  align-items: center;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 150%;
}
.pagination .page-navis .navi-next img {
  transform: rotate(180deg);
}
.pagination .page-links {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.6rem;
  font-size: 1.4rem;
}
.pagination .page-links input, .pagination .page-links button {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 0.8rem;
  width: 4rem;
  height: 4rem;
  text-align: center;
}
.pagination .page-links button {
  margin-top: 0;
  min-width: 4.8rem;
  width: auto;
  border: 1px solid #3447D2;
  color: #3447D2;
}
.pagination .page-links button:hover {
  color: #fff;
}

.cardListWrap {
  margin: 0 0 1.6rem;
}

.cardList {
  margin-top: 1.2rem;
  padding: 0.4rem;
  padding-right: 0.8rem;
  background-color: #fff;
  border-radius: 1.2rem;
  box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.08);
  transition-duration: 0.1s;
  border: 2px solid #fff;
  cursor: default;
}
.cardList:hover {
  box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.23);
  cursor: pointer;
}
.cardList.hover {
  border: 2px solid #3447D2;
}
.cardList .imgBox {
  position: relative;
  width: 10.8rem;
  height: 8.8rem;
  border-radius: 0.8rem;
  overflow: hidden;
  background-color: #fff;
}
.cardList .imgBox.disabled img {
  opacity: 50%;
}
.cardList .imgBox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.cardList .imgBox .btmLikeView .likeNum {
  margin-left: 0.4rem;
  gap: 0.2rem;
}
.cardList .imgBox .btmLikeView .likeNum > img {
  width: 1.6rem;
  height: 1.6rem;
  cursor: default;
}
.cardList .imgBox .btmLikeView .viewNum {
  margin-right: 0.4rem;
  gap: 0.2rem;
}
.cardList .textArea {
  position: relative;
  margin-top: 0.4rem;
  margin-left: 0.8rem;
  width: calc(100% - 10.8rem - 0.8rem);
  overflow: hidden;
}
.cardList .textArea .hashtag {
  display: inline-block;
  margin-bottom: 0rem;
  cursor: default;
  float: none;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.cardList .textArea .TitSm700 {
  margin-top: 0.4rem;
  width: 100%;
  font-size: 1.4rem;
  height: 3.4rem;
  line-height: 120%;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2; /*보여줄 줄의 수를 정함*/
  -webkit-box-orient: vertical; /*box의 배열 방향을 정함*/
}
.cardList .textArea .distance, .cardList .textArea .date {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  margin-top: 0.6rem;
  font-size: 1.2rem;
  color: #717171;
  font-weight: 500;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.cardList .textArea .date {
  margin-left: 0;
  gap: 0.4rem;
}
.cardList .textArea .editBtn {
  display: none;
  position: absolute;
  bottom: 0;
  right: 0;
  cursor: pointer;
}
.cardList:hover .editBtn, .cardList.hover .editBtn {
  display: block;
}
.cardList .moreText {
  margin-top: 0.8rem;
  padding: 0.4rem 0.4rem;
  border-top: 1px solid #F0F0F0;
  font-size: 1.3rem;
  color: #555555;
  line-height: 140%;
}
.cardList .moreText p {
  margin-top: 0rem !important;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3; /*보여줄 줄의 수를 정함*/
  -webkit-box-orient: vertical; /*box의 배열 방향을 정함*/
  font-weight: 300;
}
.cardList .moreText .moreBtn {
  display: flex;
  align-items: center;
  margin-top: 0.8rem;
  font-weight: 400;
  color: #3447D2;
  cursor: pointer;
}
.cardList .moreText .moreBtn > img {
  margin-left: auto;
}
.cardList .moreText .moreBtn:hover {
  font-weight: 600;
  transition: font-weight 0.2s;
}

.cardList_ThemeList {
  margin-top: 1.2rem;
  padding: 0.4rem;
  padding-right: 0.8rem;
  background-color: #fff;
  border-radius: 1.2rem;
  box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.08);
  transition-duration: 0.1s;
  border: 2px solid #fff;
  cursor: default;
}
.cardList_ThemeList:hover {
  box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.2);
  cursor: pointer;
}
.cardList_ThemeList.hover {
  border: 2px solid #3447D2;
}
.cardList_ThemeList .imgBox {
  flex-shrink: 0;
  position: relative;
  width: 5.6rem;
  height: 5.6rem;
  border-radius: 0.8rem;
  overflow: hidden;
  background-color: #fff;
}
.cardList_ThemeList .imgBox.disabled img {
  opacity: 50%;
}
.cardList_ThemeList .imgBox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.cardList_ThemeList .imgBox .btmLikeView .likeNum {
  margin-left: 0.4rem;
  gap: 0.2rem;
}
.cardList_ThemeList .imgBox .btmLikeView .likeNum > img {
  width: 1.6rem;
  height: 1.6rem;
  cursor: default;
}
.cardList_ThemeList .imgBox .btmLikeView .viewNum {
  margin-right: 0.4rem;
  gap: 0.2rem;
}
.cardList_ThemeList .textArea {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 5.6rem;
  position: relative;
  margin-left: 0.8rem;
  overflow: hidden;
}
.cardList_ThemeList .textArea .hashtag {
  display: inline-block;
  margin-bottom: 0rem;
  cursor: default;
  float: none;
}
.cardList_ThemeList .textArea .TitSm700 {
  width: 100%;
  font-size: 1.4rem;
  max-height: 3.4rem;
  line-height: 130%;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2; /*보여줄 줄의 수를 정함*/
  -webkit-box-orient: vertical; /*box의 배열 방향을 정함*/
}
.cardList_ThemeList .textArea .infoText {
  font-size: 1.4rem;
  color: #717171;
  font-weight: 300;
  line-height: 120%;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2; /*보여줄 줄의 수를 정함*/
  -webkit-box-orient: vertical; /*box의 배열 방향을 정함*/
}
.cardList_ThemeList .textArea .moreBtn {
  display: flex;
  align-items: end;
  gap: 0.4rem;
  margin-bottom: 0.2rem;
  font-size: 1.2rem;
  color: #3447D2;
  font-weight: 500;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.cardList_ThemeList .textArea .moreBtn:hover {
  font-weight: 600;
  transition: font-weight 0.2s;
}
.cardList_ThemeList .textArea .editBtn {
  display: none;
  position: absolute;
  bottom: 0;
  right: 0;
  cursor: pointer;
}
.cardList_ThemeList:hover .editBtn, .cardList_ThemeList.hover .editBtn {
  display: block;
}
.cardList_ThemeList .moreText {
  margin-top: 0.8rem;
  padding: 0.4rem 0.4rem;
  border-top: 1px solid #F0F0F0;
  font-size: 1.3rem;
  color: #555555;
  line-height: 140%;
}
.cardList_ThemeList .moreText p {
  margin-top: 0rem !important;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3; /*보여줄 줄의 수를 정함*/
  -webkit-box-orient: vertical; /*box의 배열 방향을 정함*/
  font-weight: 300;
}
.cardList_ThemeList .moreText .moreBtn {
  display: flex;
  align-items: center;
  margin-top: 0.8rem;
  font-weight: 400;
  color: #3447D2;
  cursor: pointer;
}
.cardList_ThemeList .moreText .moreBtn > img {
  margin-left: auto;
}

.cardList_ThemeGrid {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 1.2rem 0;
  margin-top: 1.2rem;
}
.cardList_ThemeGrid .gallBox {
  width: calc((100% - 2.4rem) / 4);
  min-width: calc((100% - 2.4rem) / 4);
  margin-bottom: 0;
}
.cardList_ThemeGrid .gallBox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.cardList_ThemeGrid::after {
  content: "";
  width: calc((100% - 2.4rem) / 4);
}
.cardList_ThemeGrid .tooltipImageItem {
  margin-bottom: 0;
  width: 6.4rem;
  height: 6.4rem;
  overflow: hidden;
  transition: height 0.3s ease;
  border-radius: 0.8rem;
}
.cardList_ThemeGrid .tooltipImageItem button {
  width: calc(100% - 0.8rem);
  white-space: nowrap;
  margin: 0.4rem;
  padding: 0.4rem;
  box-sizing: border-box;
  font-weight: 500;
  color: #3447D2;
  background-color: #fff;
  border: 1px solid #E4E4E4;
  border-radius: 0.4rem;
  opacity: 0;
  transform: translateY(-100%);
  transition: all 0.3s ease;
  cursor: pointer;
}
.cardList_ThemeGrid .tooltipImageItem button:hover {
  background-color: #3447D2;
  color: #fff;
}
.cardList_ThemeGrid .tooltipImageItem .tootipImgBox {
  width: 100%;
  box-shadow: unset;
}
.cardList_ThemeGrid .tooltipImageItem .tootipImgBox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.cardList_ThemeGrid .tooltipImageItem.hover .tootipImgBox img {
  padding: 0.2rem;
  box-sizing: border-box;
}
.cardList_ThemeGrid .tooltipImageItem.hover {
  width: 6.4rem;
  height: auto;
  border: 2px solid #3447D2;
  box-sizing: border-box;
  cursor: pointer;
}
.cardList_ThemeGrid .tooltipImageItem.hover button {
  opacity: 1;
  transform: translateY(0);
  white-space: normal;
  overflow-wrap: anywhere;
}
.cardList_ThemeGrid .tooltipImageItem:hover {
  box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.2);
  cursor: pointer;
}

.cardList_CateList {
  margin-top: -0.1rem;
  border-top: 1px solid #E4E4E4;
  border-bottom: 1px solid #E4E4E4;
  transition-duration: 0.1s;
  cursor: default;
}
.cardList_CateList > .disFlex {
  cursor: pointer;
}
.cardList_CateList > .disFlex:hover {
  cursor: pointer;
}
.cardList_CateList > .disFlex {
  gap: 0.8rem;
  background: rgba(247, 247, 249, 0.5019607843);
  padding: 0.8rem;
}
.cardList_CateList .imgBox {
  flex-shrink: 0;
  position: relative;
  width: 4rem;
  height: 4rem;
  border-radius: 0.8rem;
  overflow: hidden;
  background-color: #fff;
}
.cardList_CateList .imgBox.disabled img {
  opacity: 50%;
}
.cardList_CateList .imgBox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.cardList_CateList .imgBox .btmLikeView .likeNum {
  margin-left: 0.4rem;
  gap: 0.2rem;
}
.cardList_CateList .imgBox .btmLikeView .likeNum > img {
  width: 1.6rem;
  height: 1.6rem;
  cursor: default;
}
.cardList_CateList .imgBox .btmLikeView .viewNum {
  margin-right: 0.4rem;
  gap: 0.2rem;
}
.cardList_CateList .textArea {
  position: relative;
  overflow: hidden;
  flex: 1;
}
.cardList_CateList .textArea .TitSm700 {
  width: 100%;
  font-size: 1.4rem;
  max-height: 3.4rem;
  line-height: 130%;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2; /*보여줄 줄의 수를 정함*/
  -webkit-box-orient: vertical; /*box의 배열 방향을 정함*/
}
.cardList_CateList .textArea .editBtn {
  display: none;
  position: absolute;
  bottom: 0;
  right: 0;
  cursor: pointer;
}
.cardList_CateList .dropdownBtn {
  width: 2.4rem;
  height: 2.4rem;
  background-color: rgba(255, 255, 255, 0.9);
  border: 1px solid #E4E4E4;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.cardList_CateList .dropdownBtn:hover {
  background-color: #fff;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
.cardList_CateList .dropdownBtn img {
  width: 1.2rem;
  height: 1.2rem;
  transition: transform 0.3s ease;
  transform: rotate(90deg);
}
.cardList_CateList .dropdownBtn.active {
  border-color: #3447D2;
}
.cardList_CateList .dropdownBtn.active img {
  transform: rotate(-90deg);
}
.cardList_CateList:hover .editBtn, .cardList_CateList.hover .editBtn {
  display: block;
}
.cardList_CateList .moreText {
  margin-top: 0.8rem;
  padding: 0.4rem 0.4rem;
  border-top: 1px solid #F0F0F0;
  font-size: 1.3rem;
  color: #555555;
  line-height: 140%;
}
.cardList_CateList .moreText p {
  margin-top: 0rem !important;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3; /*보여줄 줄의 수를 정함*/
  -webkit-box-orient: vertical; /*box의 배열 방향을 정함*/
  font-weight: 300;
}
.cardList_CateList .moreText .moreBtn {
  display: flex;
  align-items: center;
  margin-top: 0.8rem;
  font-weight: 400;
  color: #3447D2;
  cursor: pointer;
}
.cardList_CateList .moreText .moreBtn > img {
  margin-left: auto;
}

.searchResultList .TitSm700 span {
  color: #3447D2;
}
.searchResultList .listOptionWrap {
  margin: 0.8rem 0;
}
.searchResultList .dropdownMenu {
  margin-bottom: 0.8rem;
}
.searchResultList .dropdownMenu .listOptionWrap {
  padding: 0 0.8rem;
}
.searchResultList .dropdownMenu .listOptionWrap .moreViewBtn {
  margin-left: auto;
}
.searchResultList .cardList_CateList > .disFlex {
  gap: 0.8rem;
}
.searchResultList .cardList_CateList > .disFlex .textArea.disFlex {
  gap: 0.4rem;
}
.searchResultList .cardList_CateList > .disFlex .textArea.disFlex .TitSm700 {
  width: auto;
}
.searchResultList .cardList_CateList > .disFlex .textArea.disFlex .hashtag {
  margin-right: 0;
  margin-bottom: 0;
  background-color: #717171;
  border: 0;
}
.searchResultList .dropdownMenu .cardList_ThemeList {
  margin: 0.8rem 0.4rem;
}
.searchResultList .dropdownMenu .cardList_ThemeList .textArea {
  min-height: 3.6rem;
}
.searchResultList .dropdownMenu .cardList {
  margin: 0.8rem 0.4rem;
  padding-left: 0.8rem;
}
.searchResultList .dropdownMenu .cardList .textArea {
  margin-top: 0;
  margin-left: 1.2rem;
}
.searchResultList .dropdownMenu .cardList .textArea .TitSm700 {
  margin-top: 0;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  max-height: fit-content;
}
.searchResultList .dropdownMenu .cardList .textArea .distance {
  margin-top: 0.4rem;
  gap: 0.2rem;
}
.searchResultList .dropdownMenu .cardList .textArea .distance .hashtag {
  margin-right: 0rem;
  white-space: unset;
  text-overflow: unset;
  overflow: unset;
}
.searchResultList .dropdownMenu .cardList .textArea .distance .text {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.pinBox {
  flex-shrink: 0;
  position: relative;
  width: 3.2rem;
  height: 4rem;
  z-index: 1;
}
.pinBox.color1 .pin {
  background: #3447D2;
}
.pinBox.color1 .pulse:after {
  box-shadow: 0 0 0.1rem 0.2rem #3447D2;
}
.pinBox.color2 .pin {
  background: #FF3872;
}
.pinBox.color2 .pulse:after {
  box-shadow: 0 0 0.1rem 0.2rem #FF3872;
}
.pinBox.color3 .pin {
  background: #01C386;
}
.pinBox.color3 .pulse:after {
  box-shadow: 0 0 0.1rem 0.2rem #01C386;
}
.pinBox.color4 .pin {
  background: #FFB902;
}
.pinBox.color4 .pulse:after {
  box-shadow: 0 0 0.1rem 0.2rem #FFB902;
}
.pinBox.color5 .pin {
  background: #01C386;
}
.pinBox.color5 .pulse:after {
  box-shadow: 0 0 0.1rem 0.2rem #01C386;
}
.pinBox .pin {
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 50% 50% 50% 0;
  position: absolute;
  transform: rotate(-45deg);
  left: 0%;
  top: 0%;
}
.pinBox .pin:after {
  content: "";
  width: 1.4rem;
  height: 1.4rem;
  margin: 0.8rem 0 0 0.8rem;
  position: absolute;
  border-radius: 50%;
}
.pinBox .pinNum {
  position: absolute;
  top: 0.8rem;
  left: 50%;
  font-size: 1.5rem;
  font-weight: 500;
  color: #fff;
  transform: translateX(-50%);
  z-index: 1;
}
.pinBox .bounce {
  animation-name: bounce;
  animation-fill-mode: both;
  animation-duration: 1s;
}
.pinBox .pulse {
  background: rgba(255, 255, 255, 0.6);
  border-radius: 50%;
  height: 1.4rem;
  width: 1.4rem;
  position: absolute;
  left: 0.9rem;
  bottom: -0.6rem;
  transform: rotateX(55deg);
  box-shadow: 0 0 1rem 1rem rgba(0, 0, 0, 0.25);
  z-index: -2;
}
.pinBox .pulse:after {
  content: "";
  border-radius: 50%;
  height: 4rem;
  width: 4rem;
  position: absolute;
  margin: -1.3rem 0 0 -1.3rem;
  animation: pulsate 1s ease-out;
  animation-iteration-count: infinite;
  opacity: 0;
  animation-delay: 1.1s;
}
@keyframes pulsate {
  0% {
    transform: scale(0.1, 0.1);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: scale(1.2, 1.2);
    opacity: 0;
  }
}
@keyframes bounce {
  0% {
    opacity: 0;
    transform: translateY(-200rem) rotate(-45deg);
  }
  60% {
    opacity: 1;
    transform: translateY(3rem) rotate(-45deg);
  }
  80% {
    transform: translateY(-1rem) rotate(-45deg);
  }
  100% {
    transform: translateY(0) rotate(-45deg);
  }
}

.themeBtnWrap {
  gap: 0.4rem;
}
.themeBtnWrap .btn {
  margin-top: 0.8rem;
  padding: 0.4rem;
}

.dropdownMenu {
  display: none;
  cursor: default;
  overflow: hidden;
}
.dropdownMenu.open {
  display: block;
  border-top: 1px solid #E4E4E4;
}
.dropdownMenu .themeBtnWrap .btn {
  cursor: pointer;
}
.dropdownMenu .textWrap {
  padding: 0.8rem;
  position: relative;
  font-size: 1.4rem;
  color: #717171;
  font-weight: 300;
  line-height: 120%;
  cursor: text;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3; /*보여줄 줄의 수를 정함*/
  -webkit-box-orient: vertical; /*box의 배열 방향을 정함*/
  transition: all 0.3s ease;
}

.cardList_CateList2 {
  margin-top: 1.6rem;
  padding: 0.4rem;
  padding-right: 0.8rem;
  transition-duration: 0.1s;
  cursor: default;
}
.cardList_CateList2 .disFlex {
  align-items: start;
}
.cardList_CateList2 .imgBox {
  flex-shrink: 0;
  position: relative;
  width: 5.6rem;
  height: 5.6rem;
  border-radius: 0.8rem;
  overflow: hidden;
  background-color: #fff;
}
.cardList_CateList2 .imgBox.disabled img {
  opacity: 50%;
}
.cardList_CateList2 .imgBox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.cardList_CateList2 .imgBox .btmLikeView .likeNum {
  margin-left: 0.4rem;
  gap: 0.2rem;
}
.cardList_CateList2 .imgBox .btmLikeView .likeNum > img {
  width: 1.6rem;
  height: 1.6rem;
  cursor: default;
}
.cardList_CateList2 .imgBox .btmLikeView .viewNum {
  margin-right: 0.4rem;
  gap: 0.2rem;
}
.cardList_CateList2 .textArea {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 5.6rem;
  position: relative;
  margin-left: 0.8rem;
  overflow: hidden;
}
.cardList_CateList2 .textArea .hashtag {
  display: inline-block;
  margin-bottom: 0rem;
  cursor: default;
  float: none;
}
.cardList_CateList2 .textArea .TitSm700 {
  width: 100%;
  font-size: 1.4rem;
  max-height: 3.4rem;
  line-height: 130%;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2; /*보여줄 줄의 수를 정함*/
  -webkit-box-orient: vertical; /*box의 배열 방향을 정함*/
}
.cardList_CateList2 .textArea .textWrap {
  position: relative;
  font-size: 1.4rem;
  color: #717171;
  font-weight: 300;
  line-height: 120%;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2; /*보여줄 줄의 수를 정함*/
  -webkit-box-orient: vertical; /*box의 배열 방향을 정함*/
  transition: all 0.3s ease;
}
.cardList_CateList2 .textArea .textWrap::after {
  content: "[더보기]";
  position: absolute;
  bottom: 0;
  right: 0;
  padding-left: 0.8rem;
  background: linear-gradient(to right, transparent, #fff 30%);
  color: #3447D2;
  font-weight: 500;
  cursor: pointer;
  font-size: 1.3rem;
}
.cardList_CateList2 .textArea .textWrap::after:hover {
  text-decoration: underline;
}
.cardList_CateList2 .textArea .textWrap.expanded {
  display: block;
  -webkit-line-clamp: unset;
}
.cardList_CateList2 .textArea .textWrap.expanded::after {
  content: "[숨기기]";
  position: absolute;
  bottom: 0;
  right: 0;
  padding-left: 0.8rem;
  background: linear-gradient(to right, transparent, #fff 30%);
  color: #3447D2;
  font-weight: 500;
  cursor: pointer;
  font-size: 1.3rem;
}
.cardList_CateList2 .textArea .textWrap.expanded::after:hover {
  text-decoration: underline;
}
.cardList_CateList2 .textArea .date {
  display: flex;
  align-items: end;
  gap: 0.4rem;
  font-size: 1.2rem;
  color: #3447D2;
  font-weight: 500;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.cardList_CateList2 .textArea .editBtn {
  display: none;
  position: absolute;
  bottom: 0;
  right: 0;
  cursor: pointer;
}
.cardList_CateList2:hover .editBtn, .cardList_CateList2.hover .editBtn {
  display: block;
}
.cardList_CateList2 .moreText {
  margin-top: 0.8rem;
  padding: 0.4rem 0.4rem;
  border-top: 1px solid #F0F0F0;
  font-size: 1.3rem;
  color: #555555;
  line-height: 140%;
}
.cardList_CateList2 .moreText p {
  margin-top: 0rem !important;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 3; /*보여줄 줄의 수를 정함*/
  -webkit-box-orient: vertical; /*box의 배열 방향을 정함*/
  font-weight: 300;
}
.cardList_CateList2 .moreText .moreBtn {
  display: flex;
  align-items: center;
  margin-top: 0.8rem;
  font-weight: 400;
  color: #3447D2;
  cursor: pointer;
}
.cardList_CateList2 .moreText .moreBtn > img {
  margin-left: auto;
}

.selectedThemePreview {
  padding: 1.2rem 1.2rem;
  background-color: #F7F7F9;
}
.selectedThemePreview .previewHeader {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.8rem;
}
.selectedThemePreview .previewHeader .TitSm500 {
  margin: 0;
  color: #717171;
}
.selectedThemePreview .previewHeader .moreBtn {
  display: inline-block;
  margin-top: 0;
  width: auto;
  font-size: 1.3rem;
  font-weight: 400;
  color: #1d1d1d;
  background-color: #fff;
  border: 1px solid #E4E4E4;
  border-radius: 0.4rem;
  white-space: nowrap;
  cursor: pointer;
  transition: 0.3s;
}
.selectedThemePreview .previewHeader .moreBtn:hover {
  background-color: #3447D2;
  color: #fff;
}
.selectedThemePreview .previewImageWrap {
  display: flex;
  gap: 0.8rem;
  padding-top: 0.4rem;
  overflow-x: hidden;
}
.selectedThemePreview .previewImageWrap .tooltipImageItem {
  overflow: visible;
}

.tooltipImageItem {
  position: relative;
  flex: 0 0 auto;
  width: 4rem;
  text-align: center;
  overflow: hidden;
  transition: all 0.3s ease;
}
.tooltipImageItem button {
  width: 100%;
  padding: 0.4rem;
  font-size: 1.1rem;
  font-weight: 500;
  color: #3447D2;
  background-color: #fff;
  border: 1px solid #E4E4E4;
  border-radius: 0 0 0.6rem 0.6rem;
  opacity: 0;
  transform: translateY(-100%);
  transition: all 0.3s ease;
  cursor: pointer;
}
.tooltipImageItem button:hover {
  background-color: #3447D2;
  color: #fff;
}
.tooltipImageItem:hover button {
  opacity: 1;
  transform: translateY(0);
}
.tooltipImageItem:hover .removeBtn {
  display: flex;
}

.tootipImgBox {
  position: relative;
  width: 4rem;
  height: auto;
  border-radius: 0.6rem;
  box-shadow: 0 0.2rem 0.8rem rgba(0, 0, 0, 0.1);
}
.tootipImgBox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.tootipImgBox .removeBtn {
  display: none;
  position: absolute;
  justify-content: center;
  align-items: center;
  top: -0.4rem;
  right: -0.4rem;
  width: 2rem;
  height: 2rem;
  background-color: #fff;
  border-radius: 50%;
  border: 1px solid #F0F0F0;
  box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.2);
  cursor: pointer;
  z-index: 10;
}
.tootipImgBox .removeBtn:hover {
  box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.4);
}
.tootipImgBox .removeBtn img {
  width: 1.2rem;
  height: 1.2rem;
}

.tootipTitle {
  display: none;
}

.select2Wrap {
  margin-top: 0.8rem;
}
.select2Wrap .selectWrapLine {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.select2Wrap .selectWrapLine select {
  width: 100%;
  height: 3.6rem;
  border: 1px solid #E4E4E4;
  background-color: #fff;
  padding: 0.8rem;
  font-size: 1.3rem;
  font-weight: 400;
}
.select2Wrap .themeSearchWrap {
  margin-top: -0.4rem;
}

.js-tooltip {
  position: fixed;
  padding: 0.6rem 1.2rem;
  background-color: rgba(0, 0, 0, 0.7);
  color: #fff;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 120%;
  border-radius: 0.4rem;
  white-space: nowrap;
  max-width: 20rem;
  text-overflow: ellipsis;
  overflow: hidden;
  z-index: 1000;
  pointer-events: none;
  box-shadow: 0 0.4rem 1.2rem rgba(0, 0, 0, 0.3);
  opacity: 0;
  transition: opacity 0.3s ease;
}
.js-tooltip.show {
  opacity: 1;
}

/* .tootipText용 동적 툴팁 스타일 (긴 텍스트 정보용) */
.js-tooltip.tootip-text-type {
  background-color: rgba(0, 0, 0, 0.9);
  color: white;
  padding: 1.2rem;
  border-radius: 0.8rem;
  box-shadow: 0 0.2rem 1rem rgba(0, 0, 0, 0.3);
  max-width: 35rem;
  min-width: 20rem;
  width: max-content;
  text-align: left;
  white-space: normal;
  word-wrap: break-word;
  line-height: 1.5;
}

.js-tooltip.tootip-text-type h3 {
  padding: 0;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1.4;
  color: white;
}

.js-tooltip.tootip-text-type p {
  margin: 0;
  padding: 0;
  font-size: 1.2rem;
  line-height: 1.5;
  color: #f0f0f0;
}

.categoryHead .selectedThemePreview {
  padding: 0;
  margin-top: 1.2rem;
}
.categoryHead .themeCateList {
  margin-top: 1.2rem;
}

.cardListCourse {
  margin-top: 1.2rem;
  height: 9.6rem;
  background-color: #1d1d1d;
  border-radius: 1.2rem;
  border: 1px solid #eee;
  overflow: hidden;
  cursor: pointer;
}

.cardListCourse, .workCourse {
  position: relative;
}
.cardListCourse .BGimg > img, .workCourse .BGimg > img {
  width: 100%;
  height: 9.6rem;
  object-fit: cover;
}
.cardListCourse .BGimgBlack, .workCourse .BGimgBlack {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: 0.5;
}
.cardListCourse .frontText, .workCourse .frontText {
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% - 3.2rem);
  padding: 1.2rem 1.6rem;
  height: calc(100% - 2.4rem);
}
.cardListCourse .frontText .TitSm700, .workCourse .frontText .TitSm700 {
  width: 100%;
  color: #fff;
  line-height: 120%;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2; /*보여줄 줄의 수를 정함*/
  -webkit-box-orient: vertical; /*box의 배열 방향을 정함*/
}
.cardListCourse .frontText .courseInfo, .workCourse .frontText .courseInfo {
  position: absolute;
  bottom: 1.6rem;
  left: 1rem;
  width: 100%;
  display: flex;
  align-items: center;
  gap: 0.8rem;
  font-size: 1.3rem;
  color: #fff;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.cardListCourse .frontText .courseInfo img, .workCourse .frontText .courseInfo img {
  width: auto;
  height: auto;
}
.cardListCourse .frontText .courseInfo span.tn, .workCourse .frontText .courseInfo span.tn {
  width: 15.7rem;
  display: -webkit-box;
  display: block;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 3;
  text-overflow: ellipsis;
  line-height: 120%;
}

.travMap .TitSm700::after {
  content: "";
  position: absolute;
  left: 1.6rem;
  bottom: 1.2rem;
  display: block;
  width: 3.2rem;
  height: 3.2rem;
  background: url(../images/icTravMap.svg) 5% 50% no-repeat;
}

.cardList.workCourse {
  padding-right: 0.4rem;
}
.cardList.workCourse .imgBox {
  width: 100%;
}
.cardList.workCourse .moreList {
  margin-top: 0.8rem;
  max-height: 19rem;
  overflow-y: auto;
  border-top: 1px solid #F0F0F0;
  font-size: 1.3rem;
  color: #555555;
  line-height: 140%;
}
.cardList.workCourse .listBox {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin: 0.8rem 0;
  padding: 0 0.8rem;
  height: 3.6rem;
  border: 1px solid #ddd;
  border-radius: 50px;
  box-shadow: 0px 1px 4px 0px rgba(0, 0, 0, 0.12);
  cursor: pointer;
}
.cardList.workCourse .listBox.hover {
  background-color: #3447D2;
  color: #fff;
  border: 1px solid #3447D2;
}
.cardList.workCourse .listBox.hover span img {
  filter: invert(100%) sepia(5%) saturate(1%) hue-rotate(240deg) brightness(106%) contrast(102%);
}
.cardList.workCourse .listBox span {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
}
.cardList.workCourse .listBox span img {
  transform: rotate(-90deg);
}
.cardList.workCourse .listBox p {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.cardList.workCourse .viewNum,
.mapImgModal .viewNum,
.archListWrap .disFlexCont > div .viewNum {
  margin-right: 0.4rem;
  display: flex;
  align-items: center;
  gap: 0.4rem;
  position: absolute;
  right: 1.2rem;
  bottom: 1.5rem;
}

.cardList.workCourse .viewNum span,
.mapImgModal .viewNum span,
.archListWrap .disFlexCont > div .viewNum span {
  font-size: 1.3rem;
  color: #fff;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.archListWrap .disFlexCont > div .viewNum {
  right: 0.4rem;
  bottom: 0.4rem;
}

.btmLikeView {
  display: flex;
  align-items: center;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 3.2rem;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.9) 100%);
  color: #fff;
  font-size: 1.2rem;
}
.btmLikeView .likeNum {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin-left: 0.8rem;
}
.btmLikeView .likeNum > img {
  cursor: pointer;
}
.btmLikeView .viewNum {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin-left: auto;
  margin-right: 0.8rem;
}

.detailPanel {
  position: relative;
  width: 32rem;
  box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, 0.04);
  background-color: #fff;
  overflow-y: auto;
  z-index: 1;
}
.detailPanel .btnFixed {
  position: fixed;
  width: 32rem;
  z-index: 1;
}
.detailPanel .btnClose {
  position: absolute;
  top: 0.8rem;
  right: 1.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.6rem;
  height: 3.6rem;
  border-radius: 100px;
  background-color: #fff;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.16);
  cursor: pointer;
  z-index: 3;
}
.detailPanel .btnClose:hover {
  box-shadow: 0 0 0 2px #E4E4E4 inset;
}
.detailPanel .detailImgWrap {
  position: relative;
  display: flex;
  width: 100%;
  height: 17.2rem;
  overflow: hidden;
  cursor: pointer;
}
.detailPanel .detailImgWrap .lgImg {
  width: 100%;
  height: 100%;
  box-shadow: 0 0 0 1px #fff inset;
  border: 1px solid #fff;
}
.detailPanel .detailImgWrap .lgImg .smImg {
  position: relative;
  float: left;
  width: 50%;
  height: 50%;
  background-color: blue;
}
.detailPanel .detailImgWrap .lgImg .smImg::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 0 0 1px #fff inset;
}
.detailPanel .detailImgWrap .lgImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.detailPanel .detailImgWrap .prev {
  position: absolute;
  width: 2.4rem;
  height: 2.4rem;
  bottom: 50%;
  left: 0.4rem;
}
.detailPanel .detailImgWrap .next {
  position: absolute;
  width: 2.4rem;
  height: 2.4rem;
  bottom: 50%;
  right: 0.4rem;
}
.detailPanel .detailImgWrap .slider-wrapper {
  display: flex;
  transition: transform 0.5s ease-in-out;
  height: 17.2rem;
  width: 31.2rem;
}
.detailPanel .detailImgWrap .contImg {
  width: 31.2rem;
  height: 100%;
  flex: 0 0 100%;
}
.detailPanel .descriptWrap {
  padding: 1.6rem 1.6rem 0.5rem 1.6rem;
}
.detailPanel .descriptWrap h1 {
  color: #2D2D2D;
  line-height: 120%;
}
.detailPanel .descriptWrap h2 {
  margin-top: 0.5rem;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 140%;
  color: #2D2D2D;
}
.detailPanel .descriptWrap p {
  margin: 1.6rem 0 0.8rem;
  line-height: 140%;
  font-size: 1.4rem;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 5; /*보여줄 줄의 수를 정함*/
  -webkit-box-orient: vertical; /*box의 배열 방향을 정함*/
}
.detailPanel .detailInfoWrap {
  padding: 0rem 1.6rem 1rem;
  font-size: 1.5rem;
  color: #555555;
  word-break: break-all;
}
.detailPanel .detailInfoWrap h3 {
  margin: 2rem 0 1rem;
  width: 100%;
  line-height: 30%;
  font-weight: 700;
  word-break: keep-all;
}
.detailPanel .detailInfoWrap p, .detailPanel .detailInfoWrap ul {
  margin: 1.2rem 0 1rem;
  width: 100%;
  font-size: 1.4rem;
  font-weight: 300;
  line-height: 140%;
  word-break: keep-all;
}
.detailPanel .detailInfoWrap ul li {
  margin-left: 2rem;
  line-height: 150%;
  list-style-type: disclosure-closed;
}
.detailPanel .detailInfoWrap .searchLinkBox {
  margin: 1.2rem 0 2.4rem;
  display: flex;
  align-items: center;
  border: 1px solid #E4E4E4;
  border-radius: 0.4rem;
}
.detailPanel .detailInfoWrap .searchLinkBox a {
  width: 33%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  border-right: 1px solid #E4E4E4;
  height: 4rem;
  font-size: 1.4rem;
}
.detailPanel .detailInfoWrap .searchLinkBox a:last-child {
  border-right: 0;
}
.detailPanel .detailInfoWrap .hashtagMapWrap {
  margin-top: 1.2rem;
}
.detailPanel .detailInfoWrap .hashtagMapWrap::after {
  content: "";
  display: block;
  clear: both;
}
.detailPanel .detailInfoWrap .addrCopy {
  width: 1.5rem;
  height: 1.5rem;
  padding-left: 0.3rem;
}
.detailPanel .detailInfoWrap .linkIcon {
  margin: 1.5rem 0 1rem;
  width: 100%;
  line-height: 30%;
  font-weight: 700;
  word-break: keep-all;
}
.detailPanel .detailInfoWrap .lineBreak {
  margin-left: -1.6rem;
  margin-right: -1.6rem;
  width: calc(100% + 3.2rem);
  margin-top: 1rem;
}

.courseCard .oneDayWrap {
  margin-top: 1.6rem;
}
.courseCard .tit {
  display: flex;
  align-items: center;
}
.courseCard .tit .hideBtn {
  margin-left: auto;
  transform: rotate(270deg);
  cursor: pointer;
}
.courseCard .tit .hideBtn.rever {
  transform: rotate(90deg);
}
.courseCard .CosListWrap {
  position: relative;
  margin-top: 0.8rem;
  width: 100%;
  height: 100%;
}
.courseCard .CosListWrap::before {
  content: "";
  position: absolute;
  left: 2.1rem;
  top: 0;
  display: inline-block;
  border: 1px solid #F0F0F0;
  height: 100%;
}
.courseCard .CosListWrap .cardWrap {
  position: relative;
}
.courseCard .CosListWrap .cosNumWrap {
  position: absolute;
  left: 1.2rem;
  top: 50%;
  transform: translate(0%, 0%);
}
.courseCard .CosListWrap .cosNumWrap .cosNum {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  font-size: 1.2rem;
  font-weight: 600;
  line-height: 150%;
  border-radius: 100px;
  color: #fff;
  background-color: #3447D2;
  box-shadow: 1px 2px 4px 0px rgba(0, 0, 0, 0.16);
}
.courseCard .CosListWrap .KmNum {
  position: absolute;
  left: 2.1rem;
  bottom: 0;
  transform: translate(-50%, 2.6rem);
  margin-left: -0.4rem;
  padding: 0 0.4rem;
  height: 2.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  border: 1px solid #F0F0F0;
  background: #F8F8F8;
  color: #555555;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 150%; /* 18px */
}
.courseCard .CosListWrap .cardList {
  margin-left: 4.4rem;
}
.courseCard .CosListWrap .cardList.hover {
  border: 2px solid #3447D2;
}

.leftAsideLogin {
  padding: 1.6rem;
  height: calc(100vh - 4rem);
  width: 24rem;
  background-color: #fff;
  z-index: 3;
}
.leftAsideLogin .btnAllmenu {
  margin: 0;
}
.leftAsideLogin .head {
  display: flex;
  align-items: center;
}
.leftAsideLogin .head .btnClose {
  margin-left: auto;
  cursor: pointer;
}
.leftAsideLogin h1 {
  margin: 1.6rem 0;
  font-size: 1.7rem;
  font-weight: 400;
  color: #717171;
}
.leftAsideLogin .list {
  margin-bottom: 1.6rem;
  cursor: pointer;
}
.leftAsideLogin .list .tit {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
.leftAsideLogin .list h2 {
  display: block;
  margin: 0.8rem 0;
  width: 100%;
  font-size: 1.5rem;
  color: #555555;
  font-weight: 300;
}
.leftAsideLogin .list .arrowBtn {
  margin-left: auto;
}
.leftAsideLogin .list .arrowOpen {
  margin-top: 0.8rem;
  padding: 0.8rem 0 0;
  border-top: 1px solid #F0F0F0;
}
.leftAsideLogin .list .arrowOpen.twoColumns {
  display: flex;
  flex-wrap: wrap;
  gap: 3%;
}
.leftAsideLogin .list .flexItem {
  margin-bottom: 0.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  width: 47%;
  padding: 0.8rem 0;
  background-color: #F8F8F8;
  border: 1px solid #E4E4E4;
  color: #555555;
  border-radius: 0.4rem;
}
.leftAsideLogin .list .flexItem.hover {
  background-color: #3447D2;
  color: #fff;
}
.leftAsideLogin .list.copyright .arrowOpen > div {
  display: flex;
  align-items: center;
  margin-bottom: 1.2rem;
  padding-left: 0.8rem;
  width: 100%;
}
.leftAsideLogin .list.copyright .arrowOpen > div > a:hover {
  color: #3447D2;
}
.leftAsideLogin .loginList {
  cursor: default;
}
.leftAsideLogin .loginList .joinTxt {
  padding: 0.8rem 0;
  font-size: 1.4rem;
  text-align: left;
  color: #3447D2;
  cursor: pointer;
}
.leftAsideLogin .loginList .alertLogin {
  padding: 0.8rem 0;
  font-size: 1.4rem;
  text-align: left;
  color: red;
}
.leftAsideLogin .loginList .orTxt {
  position: relative;
  font-size: 1.5rem;
  color: #717171;
  text-align: center;
}
.leftAsideLogin .loginList .orTxt .txt {
  display: inline-block;
  position: relative;
  background-color: #fff;
}
.leftAsideLogin .loginList .orTxt .bg {
  content: "";
  position: absolute;
  left: calc(50% - 2rem);
  height: 0;
  width: 4rem;
  height: 2rem;
  background-color: #fff;
}
.leftAsideLogin .loginList .orTxt:before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  height: 1px;
  background-color: #E4E4E4;
}
.leftAsideLogin .loginList .snsLogin {
  margin-bottom: 2rem;
}
.leftAsideLogin .loginList .snsLogin button {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.8rem;
  padding: 0.8rem;
  width: 100%;
  height: 4rem;
  border-radius: 0.4rem;
  font-size: 1.4rem;
  font-weight: 400;
  color: #fff;
}
.leftAsideLogin .loginList .snsLogin button.naver {
  background-color: #03C75A;
}
.leftAsideLogin .loginList .snsLogin button.kakao {
  background-color: #FEE500;
  color: #1d1d1d;
}
.leftAsideLogin .loginList .snsLogin button.facebook {
  background-color: #1A76F2;
}
.leftAsideLogin .loginList .snsLogin button.google {
  background-color: #fff;
  color: #1d1d1d;
}

.rangeSlide {
  margin-top: 1.6rem;
  width: 100%;
}
.rangeSlide .range {
  margin-left: 0.3rem;
  position: relative;
  width: 94%;
  height: 0.2rem;
}
.rangeSlide .range input {
  width: 100%;
  position: absolute;
  top: -0.1rem;
  height: 0;
  -webkit-appearance: none;
}
.rangeSlide .range input::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: 1.8rem;
  height: 1.8rem;
  margin: -0.8rem 0 0;
  border-radius: 50%;
  background: #3447D2;
  cursor: pointer;
}
.rangeSlide .range input::-moz-range-thumb {
  width: 1.8rem;
  height: 1.8rem;
  margin: -0.8rem 0 0;
  border-radius: 50%;
  background: #3447D2;
  cursor: pointer;
}
.rangeSlide .range input::-ms-thumb {
  width: 1.8rem;
  height: 1.8rem;
  margin: -0.8rem 0 0;
  border-radius: 50%;
  background: #3447D2;
  cursor: pointer;
}
.rangeSlide .range input::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.2rem;
  cursor: pointer;
  background: #3447D2;
}
.rangeSlide .range input::-moz-range-track {
  width: 100%;
  height: 0.2rem;
  cursor: pointer;
  background: #3447D2;
}
.rangeSlide .range input::-ms-track {
  width: 100%;
  height: 0.2rem;
  cursor: pointer;
  background: #3447D2;
}
.rangeSlide .range input:focus {
  background: none;
  outline: none;
}
.rangeSlide .range input::-ms-track {
  width: 100%;
  cursor: pointer;
  background: transparent;
  border-color: transparent;
  color: transparent;
}
.rangeSlide .range-labels {
  margin: 1.2rem -3.2rem 0px -0.7rem;
  padding: 0;
  list-style: none;
}
.rangeSlide .range-labels li {
  position: relative;
  float: left;
  margin-top: -1rem;
  padding: 1rem 0;
  width: 15%;
  text-align: center;
  color: #717171;
  font-size: 1.2rem;
  cursor: pointer;
  font-weight: 300;
}
.rangeSlide .range-labels li::before {
  position: absolute;
  top: -0.9rem;
  right: 0;
  left: 0;
  content: "";
  margin: 0 auto;
  width: 0.6rem;
  height: 0.6rem;
  background: #fff;
  border: 3px solid #3447D2;
  border-radius: 50%;
}
.rangeSlide .range-labels .active {
  color: #3447D2;
}
.rangeSlide .range-labels .selected::before {
  background: #3447D2;
}
.rangeSlide .range-labels .active.selected::before {
  display: none;
}

.mapContainer {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.mapContainer .mbArchHead {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 500;
  background-color: #fff;
  box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, 0.08);
}
.mapContainer .defaultBtn.on {
  background-color: #3447D2;
  color: #fff;
}
.mapContainer .defaultBtn:disabled {
  color: #E4E4E4;
  cursor: not-allowed;
}
.mapContainer .mapMiniModal {
  position: absolute;
  padding: 1.2rem;
  background-color: #fff;
  border-radius: 0.8rem;
  z-index: 901;
  height: auto;
}
.mapContainer .mapMiniModal .btnClose {
  position: absolute;
  top: 0.8rem;
  right: 0.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 100px;
  background-color: #fff;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.16);
  cursor: pointer;
  z-index: 3;
}
.mapContainer .mapMiniModal.dataCompareModal {
  left: 1rem;
  top: 10rem;
}
.mapContainer .mapMiniModal.dataCompareModal .twoBtnWrap {
  align-items: stretch;
}
.mapContainer .mapMiniModal.dataCompareModal .twoBtnWrap button {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100%;
  line-height: 1.3;
}
.mapContainer .mapMiniModal .dataCompareCont {
  padding: 0 0.4rem;
}
.mapContainer .mapMiniModal .dataCompareCont .disFlex {
  gap: 1.2rem;
  margin: 0.8rem 0;
}
.mapContainer .mapMiniModal .dataCompareCont h4 {
  margin: 1.2rem 0 0.8rem;
  font-size: 1.3rem;
  display: flex;
  align-items: center;
}
.mapContainer .mapMiniModal .dataCompareCont input[type=checkbox]:disabled + label {
  opacity: 0.4;
}
.mapContainer .mapMiniModal .dataCompareCont .mapSelectBtn {
  margin-top: 0;
  width: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 400;
  height: 2.5rem;
  box-sizing: border-box;
  border: 1px solid #bbb;
}
.mapContainer .mapMiniModal .dataCompareCont .mapSelectBtn:before {
  content: "";
  display: block;
  margin-left: 0;
  width: 1.6rem;
  height: 1.6rem;
  background-image: url("../images/icWorkPin.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.mapContainer .mapMiniModal .dataCompareCont .mapSelectBtn {
  /* &:hover{
      &:before{
          background-image: url('../images/icWorkPin_hover.svg');
      }
  } */
}
.mapContainer .mapMiniModal .dataCompareCont .mapSelectBtn.active {
  background-color: #3447D2;
  color: #fff;
}
.mapContainer .mapMiniModal .dataCompareCont .mapSelectBtn.active:before {
  background-image: url("../images/icWorkPin_hover.svg");
}
.mapContainer .mapMiniModal .dataCompareCont .mapSelectType {
  color: #1d1d1d;
  border: 1px solid #bbb;
  border-radius: 0.4rem;
  height: 2.5rem;
  box-sizing: border-box;
  font-size: 1.3rem;
}
.mapContainer .mapMiniModal .dataCompareCont .infoTxt {
  margin: 0.4rem 0;
  margin-left: 1rem;
  padding: 0.8rem;
  font-size: 1.3rem;
  font-weight: 400;
  line-height: 140%;
  color: #2D2D2D;
  background-color: #f8f9fa;
  border-radius: 0.4rem;
}
.mapContainer .mapMiniModal .dataCompareCont .distanceInput {
  margin-left: 1rem;
}
.mapContainer .mapMiniModal .dataCompareCont .distanceInput label {
  font-size: 1.3rem;
  color: #2D2D2D;
}
.mapContainer .mapMiniModal .dataCompareCont .distanceInput input {
  margin-top: 0;
  width: 12rem;
}
.mapContainer .mapMiniModal .dataCompareCont .mapSelectPlusBtnWrap {
  width: 100%;
  margin-top: 1rem;
}
.mapContainer .mapMiniModal .dataCompareCont .mapSelectPlusBtn {
  width: 100%;
  background-color: transparent;
  color: rgba(36, 107, 235, 0.8) !important;
  border: 1px solid rgba(36, 107, 235, 0.8);
  padding: 0.6rem;
  font-size: 1.6rem;
  font-weight: 600;
}
.mapContainer .mapMiniModal .twoBtnWrap button {
  margin-top: 0;
}
.mapContainer .mapMiniModal .twoBtnWrap button.grayBtn {
  white-space: nowrap;
}
.mapContainer .tit {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  border-bottom: 1px solid #E4E4E4;
  padding-bottom: 0.8rem;
}
.mapContainer .tit h4 {
  font-size: 1.4rem;
  font-weight: 700;
}
.mapContainer .tit .btnX {
  margin-left: auto;
  display: flex;
  align-items: center;
  cursor: pointer;
}
.mapContainer .mapDistSetBtn {
  position: absolute;
  left: 1rem;
  top: 1.2rem;
  display: flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.4rem 0.4rem 0.4rem 0.8rem;
  background-color: #fff;
  border-radius: 0.4rem;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.16);
  transition: all 0.3s ease;
  z-index: 1;
}
.mapContainer .mapDistSetBtn.expanded {
  z-index: 2;
}
.mapContainer .mapDistSetBtn .mapTypeSelect {
  width: 14rem;
  max-width: 40vw;
  min-width: 9rem;
  margin: 0.4rem 0;
  padding: 0.6rem 3rem 0.6rem 0.8rem;
  color: #1d1d1d;
  font-size: 1.4rem;
  border: 1px solid #bbb;
  border-radius: 0.4rem;
  background-image: url(../images/btnArrowBottom16.svg), linear-gradient(to right, transparent calc(100% - 2.6rem), #fff calc(100% - 2.6rem)), linear-gradient(to right, transparent calc(100% - 2.6rem), #e4e4e4 calc(100% - 2.55rem), #e4e4e4 calc(100% - 2.45rem), transparent calc(100% - 2.45rem));
  background-repeat: no-repeat;
  background-position: right 0.6rem center, 0 0, 0 0;
  background-size: 1.6rem 1.6rem, 100% 100%, 100% 100%;
  white-space: nowrap;
  text-align-last: left;
  direction: ltr;
}
.mapContainer .mapDistSetBtn label {
  font-size: 1.4rem;
  white-space: nowrap;
  color: #1d1d1d;
}
.mapContainer .mapDistSetBtn .gridWrap {
  display: flex;
  align-items: center;
  gap: 0.4rem;
}
.mapContainer .mapDistSetBtn button {
  margin-top: 0;
  padding: 0.4rem;
  width: auto;
  height: 2.6rem;
  font-size: 1.2rem;
  display: none;
  opacity: 0;
  transform: translateX(-10px);
  transition: all 0.3s ease;
  cursor: pointer;
}
.mapContainer .mapDistSetBtn button.activeBtn, .mapContainer .mapDistSetBtn button[data-opt=auto] {
  display: block;
  opacity: 1;
  transform: translateX(0);
}
.mapContainer .mapDistSetBtn img.arrow {
  width: 1.6rem;
  height: 1.6rem;
  transform: rotate(-180deg);
  cursor: pointer;
  transition: transform 0.3s ease;
}
.mapContainer .mapDistSetBtn.expanded button {
  display: block;
  opacity: 1;
  transform: translateX(0);
}
.mapContainer .mapDistSetBtn.expanded button:disabled {
  opacity: 0.3;
  pointer-events: none;
}
.mapContainer .mapDistSetBtn.expanded img.arrow {
  transform: rotate(0deg);
}
.mapContainer .mapDistSetBtn .separator {
  color: #E4E4E4;
}
.mapContainer .mapDistSetBtn .switchMini {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
}
.mapContainer .mapDistSetBtn .switchMini span {
  max-width: 7rem;
  display: inline-block;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.mapContainer .mapDistSetBtn .switchMini [type=checkbox] {
  appearance: none;
  position: relative;
  border: max(2px, 0.1em) solid gray;
  border-radius: 1.25em;
  width: 2.25em;
  height: 1.25em;
}
.mapContainer .mapDistSetBtn .switchMini [type=checkbox]::before {
  content: "";
  position: absolute;
  left: 0;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  transform: scale(0.8);
  background-color: gray;
  transition: left 150ms linear;
}
.mapContainer .mapDistSetBtn .switchMini [type=checkbox]:checked {
  background-color: rgba(36, 107, 235, 0.8);
  border-color: rgba(36, 107, 235, 0.8);
}
.mapContainer .mapDistSetBtn .switchMini [type=checkbox]:checked::before {
  background-color: white;
  left: 1em;
}
.mapContainer .mapDistSetBtn .switchMini [type=checkbox]:disabled {
  border-color: lightgray;
  opacity: 0.7;
  cursor: not-allowed;
}
.mapContainer .mapDistSetBtn .switchMini [type=checkbox]:disabled:before {
  background-color: lightgray;
}
.mapContainer .mapDistSetBtn .switchMini [type=checkbox]:disabled + span {
  opacity: 0.7;
  cursor: not-allowed;
}
.mapContainer .mapDistSetBtn .switchMini [type=checkbox]:focus-visible {
  outline-offset: max(2px, 0.1em);
  outline: max(2px, 0.1em) solid rgba(36, 107, 235, 0.8);
}
.mapContainer .mapDataCompareBtn {
  position: absolute;
  left: 1rem;
  top: 6.4rem;
}
.mapContainer .mapLegendBtn {
  position: absolute;
  left: 1rem;
  bottom: 1rem;
}
.mapContainer .mapLegendModal {
  left: 1rem;
  bottom: 5.4rem;
}
.mapContainer .mapLegendModal .policyWrap.LegendDetail {
  margin-top: 0;
  padding: 0;
}
.mapContainer .mapLegendModal .policyWrap.LegendDetail .disFlex {
  padding: 0;
  margin: 0.8rem 0;
}
.mapContainer .mapLegendModal .policyWrap.LegendDetail .inputWrap label {
  width: 6rem;
}
.mapContainer .mapLegendModal .policyWrap.LegendDetail .inputWrap label.widthAuto {
  width: auto;
}
.mapContainer .mapLegendModal .policyWrap.LegendDetail .inputWrap input[type=range] {
  width: 100%;
}
.mapContainer .mapLegendModal .wmsLabel {
  display: flex;
}
.mapContainer .mapLegendCont {
  margin: 0.8rem 0;
}
.mapContainer .mapLegendCont .subTit {
  margin: 1.2rem 0 0.8rem;
  font-size: 1.4rem;
}
.mapContainer .legendStyleEditModal {
  left: 1rem;
  bottom: 5.4rem;
  transform: unset;
}
.mapContainer .legendStyleEditModal .body {
  padding: 0.4rem 0;
}
.mapContainer .legendStyleEditModal .leftHeadGrid .cell, .mapContainer .legendStyleEditModal .leftHeadGrid .cellheader {
  padding: 0.4rem;
  align-items: center;
}

.swichTabWrap {
  position: absolute;
  left: 50%;
  top: 1.2rem;
  transform: translateX(-50%);
  font-size: 1.5rem;
}
.swichTabWrap .switch {
  --_switch-bg-clr: #fff;
  --_switch-padding: 0.4rem; /* padding around button*/
  --_slider-bg-clr: rgba(36, 107, 235, 0.8); /* slider color unchecked */
  --_slider-bg-clr-on: rgba(36, 107, 235, 0.8); /* slider color checked */
  --_slider-txt-clr: #ffffff;
  --_label-padding: 1.4rem 4rem; /* padding around the labels -  this gives the switch it's global width and height */
  --_switch-easing: cubic-bezier(
    0.47,
    1.64,
    0.41,
    0.8
  ); /* easing on toggle switch */
  color: white;
  width: fit-content;
  display: flex;
  justify-content: center;
  position: relative;
  border-radius: 9999px;
  cursor: pointer;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  position: relative;
  isolation: isolate;
}
.swichTabWrap .switch input[type=checkbox] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.swichTabWrap .switch > span {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  line-height: 1.25;
  white-space: normal;
  min-width: 0;
  transition: color 50ms ease-in-out 50ms, font-weight 50ms ease-in-out;
  padding: var(--_label-padding);
  color: #222; /* 비선택 - 검은색 */
  font-weight: 500;
}
.swichTabWrap .switch::before,
.swichTabWrap .switch::after {
  content: "";
  position: absolute;
  border-radius: inherit;
  transition: left 150ms ease-in-out;
}
.swichTabWrap {
  /* switch slider */
}
.swichTabWrap .switch::before {
  background-color: var(--_slider-bg-clr);
  top: var(--_switch-padding);
  bottom: var(--_switch-padding);
  left: var(--_switch-padding);
  width: calc(50% - var(--_switch-padding) * 2);
  transition: left 500ms var(--_switch-easing), background-color 500ms ease-in-out;
  z-index: -1;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.3), 0 1px rgba(255, 255, 255, 0.3);
}
.swichTabWrap {
  /* switch bg color */
}
.swichTabWrap .switch::after {
  background-color: var(--_switch-bg-clr);
  inset: 0;
  z-index: -2;
}
.swichTabWrap {
  /* switch hover & focus */
}
.swichTabWrap .switch:focus-within::after {
  inset: -0.25rem;
}
.swichTabWrap .switch.checked:hover > span:first-of-type,
.swichTabWrap .switch:not(.checked):hover > span:last-of-type {
  transition-delay: 0ms;
  transition-duration: 100ms;
}
.swichTabWrap {
  /* switch hover */
  /* checked - move slider to right */
}
.swichTabWrap .switch.checked::before {
  background-color: var(--_slider-bg-clr-on);
  left: calc(50% + var(--_switch-padding));
}
.swichTabWrap {
  /* 선택된 span만 흰색 + 굵게 */
}
.swichTabWrap .switch:not(.checked) > span:first-of-type,
.swichTabWrap .switch.checked > span:last-of-type {
  color: #fff;
  font-weight: 600;
}

#charmLeafletMap {
  z-index: 0;
}

.leaflet-pane {
  transition-property: unset;
  transition-duration: 0s;
  transition-timing-function: unset;
}

.mapCirclePin {
  pointer-events: none;
}

.mapCoursePin, .mapCirclePin, .hashtagMapWrap {
  z-index: 110;
}

.mapCoursePin {
  position: absolute;
  left: 20%;
  top: 20%;
}
.mapCoursePin .icCosPin {
  position: relative;
  width: 5rem;
  cursor: pointer;
}
.mapCoursePin .icCosPin .cosPinBG {
  width: 5rem;
}
.mapCoursePin .icCosPin .cosNum {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-50%, 0.7rem);
  width: 3.4rem;
  height: 3.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2rem;
  color: #fff;
  font-weight: 700;
}
.mapCoursePin .cosLine1 {
  margin-bottom: 2rem;
  width: 8rem;
  border-top: 1rem dotted #40A3DA;
  display: block;
}
.mapCoursePin .cosLine2 {
  margin-bottom: 2rem;
  width: 8rem;
  border-top: 1rem dotted #E961EC;
  display: block;
}
.mapCoursePin .cosLine3 {
  margin-bottom: 2rem;
  width: 8rem;
  border-top: 1rem dotted #FE9C28;
  display: block;
}
.mapCoursePin .cosLine4 {
  margin-bottom: 2rem;
  width: 8rem;
  border-top: 1rem dotted #6C57F2;
  display: block;
}

.onboardPop {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 2100;
}
.onboardPop .popClose {
  position: absolute;
  top: 2rem;
  right: 2rem;
  display: flex;
  width: 4.8rem;
  height: 4.8rem;
  justify-content: center;
  align-items: center;
  gap: 0.2rem;
  border-radius: 100px;
  background: var(--Color, #FFF);
  box-shadow: 4px 2px 8px 0px rgba(0, 0, 0, 0.36);
  z-index: 2;
  cursor: pointer;
}
.onboardPop .TopInfoLink {
  position: absolute;
  top: 6rem;
  right: 0rem;
  padding: 2rem;
  width: 38rem;
  max-height: calc(100vh - 38rem);
  overflow-y: auto;
  z-index: 1;
}
.onboardPop .TopInfoLink .infoWrap {
  margin-bottom: 3.2rem;
}
.onboardPop .TopInfoLink .infoWrap .popInfoText {
  width: 100%;
}
.onboardPop .TopInfoLink .tit {
  margin-bottom: 1.6rem;
  padding-bottom: 1.6rem;
  display: flex;
  align-items: center;
  gap: 0.8rem;
  border-bottom: 1px solid #fff;
}
.onboardPop .TopInfoLink .tit.aboutSeoul {
  border-bottom: 0px solid #fff;
  margin-bottom: 0.8rem;
  padding: 0.8rem;
}
.onboardPop .TopInfoLink .tit span {
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
}
.onboardPop .TopInfoLink .tit .goBtn {
  padding: 0.4rem 0.8rem;
  margin-left: auto;
  font-weight: 400;
  color: #fff;
  font-size: 1.3rem;
  border-radius: 30px;
  border: 2px solid #fff;
  cursor: pointer;
}
.onboardPop .TopInfoLink .script {
  color: #fff;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 130%;
}
.onboardPop .TopInfoLink .btnWrap {
  margin-top: 1.6rem;
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem 0.6rem;
}
.onboardPop .TopInfoLink .btnWrap .btn {
  display: inline-flex;
  padding: 0 1.2rem;
  justify-content: center;
  align-items: center;
  gap: 0.4rem;
  height: 3.2rem;
  border-radius: 50px;
  border: 0.2rem solid var(--Color, #FFF);
  cursor: pointer;
}
.onboardPop .TopInfoLink .btnWrap .btn p {
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
  color: #fff;
}
.onboardPop .TopInfoLink .btnWrap .btn span {
  width: 2rem;
  height: 2rem;
}
.onboardPop .TopInfoLink .btnWrap .btn span img.arrow {
  transform: rotate(-90deg);
  filter: invert(100%) sepia(96%) saturate(15%) hue-rotate(276deg) brightness(106%) contrast(104%);
}
.onboardPop .TopInfoLink .btnWrap.publicTrans .btn {
  padding: 0.4rem 1.2rem;
}

.btmBanner {
  position: relative;
  width: 100%;
  height: 20rem;
  box-shadow: -2px -2px 8px 3px rgba(0, 0, 0, 0.4);
  overflow: hidden;
}
.btmBanner .sild {
  height: calc(100% - 4rem);
  overflow-y: hidden;
}
.btmBanner .sild img {
  width: 100%;
  object-fit: cover;
}
.btmBanner .closeBar {
  position: absolute;
  left: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0 1.2rem;
  width: 100%;
  height: 3rem;
  background: rgba(0, 0, 0, 0.8);
}
.btmBanner .closeBar label {
  color: #fff;
  font-size: 1.3rem;
}
.btmBanner .closeBar .viewBtn {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  margin-left: auto;
  margin-right: 2rem;
  padding: 0.4rem 0.6rem;
  border-radius: 20px;
  font-size: 1.3rem;
  color: #fff;
  cursor: pointer;
}
.btmBanner .dot {
  position: absolute;
  left: calc(50% + 3px);
  bottom: 4.5rem;
  transform: translateX(-50%);
}
.btmBanner .dot > li {
  float: left;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #fff;
  margin-right: 6px;
  text-indent: -9999px;
  cursor: pointer;
}
.btmBanner .prev {
  position: absolute;
  width: 2rem;
  height: 2rem;
  bottom: 3rem;
  transform: translateY(-50%);
  left: 13rem;
  cursor: pointer;
}
.btmBanner .next {
  position: absolute;
  width: 2rem;
  height: 2rem;
  bottom: 3rem;
  transform: translateY(-50%);
  right: 13rem;
  cursor: pointer;
}
.btmBanner .dot > li.on {
  background-color: #4f97c3;
}
.btmBanner .panel img {
  vertical-align: top;
  border: none;
  width: 30rem;
  height: 20rem;
}
.btmBanner .btnClose {
  position: absolute;
  top: 0.8rem;
  right: 0.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.6rem;
  height: 3.6rem;
  border-radius: 100px;
  background-color: #fff;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.16);
  cursor: pointer;
  z-index: 3;
}
.btmBanner .btnClose:hover {
  box-shadow: 0 0 0 2px #E4E4E4 inset;
}

.mapCirclePin {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  /* Size and Background  */
}
.mapCirclePin .menu .pinClickIcon img {
  width: 2rem;
}
.mapCirclePin {
  /* Menu Items */
}
.mapCirclePin .menu {
  position: relative;
  width: 284px;
  height: 23.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.mapCirclePin .menu .pinClickIcon {
  position: absolute;
  left: 0;
  list-style: none;
  transition: 0.5s;
  transition-delay: calc(0.1s * var(--i));
  transform-origin: 140px;
  transform: rotate(0deg) translateX(110px);
  opacity: 0;
}
.mapCirclePin {
  /* Animations */
}
.mapCirclePin .menu.active .pinClickIcon {
  transform: rotate(calc(45deg * var(--i))) translateX(33px);
  opacity: 1;
}
.mapCirclePin .menu .pinClickIcon .icCircle {
  position: relative;
  transform: rotate(calc(-45deg * var(--i)));
}
.mapCirclePin .menu .pinClickIcon .icCircle .tooltiptext {
  visibility: hidden;
  padding: 0.6rem 0.8rem;
  background-color: #fff;
  color: #555555;
  font-size: 1.3rem;
  white-space: nowrap;
  border-radius: 0.4rem;
  transition-duration: 0.3s;
  opacity: 0;
  text-align: right;
  /* Position the tooltip */
  position: absolute;
  top: 50%;
  left: -16%;
  transform: translate(-100%, -50%);
  z-index: 1;
}
.mapCirclePin .menu .pinClickIcon .icCircle .tooltiptext.top {
  text-align: center;
  top: -16%;
  left: 50%;
  transform: translate(-50%, -100%);
}
.mapCirclePin .menu .pinClickIcon .icCircle .tooltiptext.right {
  text-align: left;
  top: 50%;
  left: unset;
  right: -16%;
  transform: translate(100%, -50%);
}
.mapCirclePin .menu .pinClickIcon .icCircle .tooltiptext::after {
  content: "";
  position: absolute;
  width: 0.8rem;
  height: 0.8rem;
  transition-delay: 0.5s;
  top: 0.8rem;
  background: #fff;
  right: calc(0% - 0.3rem);
  transform: rotate(45deg);
  border-radius: 2px;
  transition: 0.5s;
}
.mapCirclePin .menu .pinClickIcon .icCircle .tooltiptext.top::after {
  top: unset;
  bottom: -0.3rem;
  left: calc(50% - 0.3rem);
}
.mapCirclePin .menu .pinClickIcon .icCircle .tooltiptext.right::after {
  top: unset;
  bottom: 0.8rem;
  left: calc(0% - 0.3rem);
}
.mapCirclePin .menu .pinClickIcon .icCircle .icCircleInner {
  text-align: center;
  font-family: "Pretendard";
}
.mapCirclePin .menu .pinClickIcon .icCircle {
  background: rgba(52, 71, 210, 0.9);
  color: #333;
}
.mapCirclePin .menu .pinClickIcon .icCircle:hover {
  box-shadow: 0 0 10px rgba(52, 71, 210, 0.9), 0 0 30px rgba(52, 71, 210, 0.9), 0 0 50px rgba(52, 71, 210, 0.9);
}
.mapCirclePin .menu .pinClickIcon .icCircle .tooltiptext {
  opacity: 1;
  visibility: visible;
}
.mapCirclePin .menu .pinClickIcon .icCircle {
  background: rgba(52, 71, 210, 0.9);
  color: #333;
}
.mapCirclePin .menu .pinClickIcon .icCircle:hover {
  box-shadow: 0 0 10px rgba(52, 71, 210, 0.9), 0 0 30px rgba(52, 71, 210, 0.9), 0 0 50px rgba(52, 71, 210, 0.9);
}
.mapCirclePin .menu .pinClickIcon .icCircle .tooltiptext {
  opacity: 1;
  visibility: visible;
}
.mapCirclePin .menu .toggle {
  position: relative;
  width: 7.1rem;
  height: 8.3rem;
  color: white;
  display: flex;
  justify-content: center;
  text-align: center;
  z-index: 8;
  font-size: 2rem;
  transition: trasform 2.25s;
  cursor: pointer;
}
.mapCirclePin .menu .toggle .pinIcon {
  position: absolute;
  left: 50%;
  top: 0.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 7.1rem;
  height: 5.2rem;
  transform: translate(-50%, 0);
}
.mapCirclePin .menu .toggle .landName {
  position: absolute;
  bottom: -2.6rem;
  left: 50%;
  padding: 0.4rem 2rem;
  transform: translate(-50%, 0%);
  color: #fff;
  text-align: center;
  font-size: 16px;
  font-weight: 600;
  /*text-shadow: -1px 0px #fff, 0px 1px #fff, 1px 0px #fff, 0px -1px #fff;*/
  white-space: pre;
  background: rgba(52, 71, 210, 0.9);
  box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.16);
  border-radius: 50px;
  max-width: 30rem;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.navigation {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.menuToggle {
  position: relative;
}

.menuToggle.active2::before {
  transform: rotate(225deg);
}

.pinClickIcon:has(.menuToggle.active2) {
  z-index: 9;
}

.pinClickIcon:has(.icCircle:hover) {
  z-index: 9;
}

.moreMenu {
  position: absolute;
  padding: 1.6rem 3.2rem;
  width: auto;
  height: auto;
  background: #fff;
  border-radius: 70px;
  z-index: 6;
  transition: transform 0.5s, width 0.5s, height 0.5s;
  transition-delay: 0.5s, 0.5s, 0.5s;
  transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  visibility: hidden;
}

.menuToggle.active2 .moreMenu {
  padding: 1.6rem 3.2rem;
  width: auto;
  height: auto;
  z-index: 7;
  transform: translateY(-8rem);
  transition-delay: 0s, 0.7s, 0.7s;
  box-shadow: 0 15px 25px rgba(0, 0, 0, 0.1);
  transition: transform 0.5s, width 0.5s, height 0.5s;
  transition-delay: 0.5s, 0.5s, 0.5s;
  transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
  visibility: visible;
}

.moreMenu::before {
  content: "";
  position: absolute;
  width: 0px;
  height: 0px;
  background: #fff;
  left: calc(50% - 8px);
  bottom: 4px;
  transform: rotate(45deg);
  border-radius: 2px;
  transition: 0.5s;
}

.menuToggle.active2 .moreMenu::before {
  width: 1.6rem;
  height: 1.6rem;
  transition-delay: 0.5s;
  bottom: -0.4rem;
}

.moreMenu ul {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: start;
  gap: 2.4rem;
  padding: 0;
}

.moreMenu ul li {
  list-style: none;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-30px);
  transition: 0.25s;
  transition-delay: calc(0s + var(--i));
  text-align: center;
}
.moreMenu ul li img {
  width: 3.2rem !important;
}
.moreMenu ul li .label {
  margin-top: 0.4rem;
  display: inline-block;
  width: 100%;
  color: #717171;
  font-size: 1.4rem;
  font-weight: 500;
  text-align: center;
  white-space: nowrap;
  transition: 0s;
  transition-delay: 0s;
}
.moreMenu ul li:hover .label {
  color: #1d1d1d;
  font-weight: 400;
  transition: 0s;
  transition-delay: 0s;
  transition-duration: 0s;
}

.menuToggle.active2 .moreMenu ul li {
  opacity: 1;
  visibility: visible;
  transform: translateY(0px);
  transition-delay: calc(0.3s + var(--i));
}

.moreMenu ul li a {
  display: block;
  font-size: 2em;
  text-decoration: none;
  color: #555;
}

.moreMenu ul li a:hover {
  color: #ff216d !important;
  cursor: pointer;
}

.icCircleInner {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(50%, -12%);
}
.icCircleInner .img {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.2rem;
  min-width: 3.2rem;
  height: 3.2rem;
  border: 2px solid #fff;
  border-radius: 50px;
  background-color: rgba(52, 71, 210, 0.9);
  filter: drop-shadow(0px 1px 5px rgba(0, 0, 0, 0.1));
}
.icCircleInner .img.left {
  margin-left: unset;
}
.icCircleInner .bg {
  position: relative;
  padding: 0.4rem;
  height: 3.6rem;
  border-radius: 50px;
  background: rgba(255, 255, 255, 0.8);
  box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.16);
  cursor: pointer;
  border: 1px solid #4757d3;
}
.icCircleInner .bg .tit {
  padding: 0 2rem;
  max-width: 6rem;
  color: #1d1d1d;
  font-size: 1.5rem;
  text-align: center;
  word-break: keep-all;
  font-weight: 600;
  line-height: 1.3rem;
  text-overflow: ellipsis;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2; /*보여줄 줄의 수를 정함*/
  -webkit-box-orient: vertical; /*box의 배열 방향을 정함*/
}
.icCircleInner .bg .moreMenu {
  left: 50%;
  top: 0;
  transform: translate(-50%, -110%);
  border: 1px solid #4757d3;
}

.icCircleInner.navi .bg {
  display: flex;
  align-items: center;
  padding: 0 2rem;
  border: 1px solid #4757d3;
}
.icCircleInner.navi .img {
  margin: 0.4rem auto 0;
  cursor: pointer;
}

#archive {
  top: -3rem;
}

#roadView {
  top: 3rem;
}

#search {
  margin-left: -1.6rem;
}

.fiveTit {
  margin-top: -2rem;
}

.mapCirclePin .videoBox {
  position: absolute;
  top: 19rem;
  width: 50rem;
  height: auto;
  /* background-color: #fff;*/
}
.mapCirclePin .videoBox iframe {
  height: 30rem;
}

.switchBox {
  width: 40px;
  text-align: center;
  margin: 0 auto;
}

#switch {
  position: absolute;
  /* hidden */
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

.switch_label {
  position: relative;
  display: inline-block;
  margin: 0.4rem 0;
  width: 36px;
  height: 21px;
  background: #fff;
  border: 2px solid #C6C6C6;
  border-radius: 20px;
  transition: 0.2s;
  cursor: pointer;
}

.switch_label:hover {
  background: #F0F0F0;
}

.onf_btn {
  position: absolute;
  top: 3px;
  left: 3px;
  display: inline-block;
  width: 15px;
  height: 15px;
  border-radius: 20px;
  background: #C6C6C6;
  transition: 0.2s;
}

/* checking style */
#switch:checked + .switch_label {
  background: #3447D2;
  border: 2px solid #3447D2;
}

#switch:checked + .switch_label:hover {
  background: #3447D2;
}

/* move */
#switch:checked + .switch_label .onf_btn {
  left: 18px;
  background: #fff;
  box-shadow: 1px 2px 3px rgba(0, 0, 0, 0.1254901961);
}

.prev img, .next img {
  width: 100%;
  height: 100%;
  cursor: pointer;
}

.moreListWrap .btnContainer {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.moreListWrap .btnContainer .closeBtn {
  display: flex;
  align-items: center;
  height: 2.4rem;
  font-size: 1.3rem;
  color: #1d1d1d;
  cursor: pointer;
  padding-right: 0.5rem;
}

.ifCos {
  position: absolute;
  top: 4rem;
  left: 36.4rem;
  height: 100vh;
  z-index: 110;
}
.ifCos .headerTop {
  display: flex;
  align-items: center;
  padding: 0.8rem 0;
}
.ifCos .headerTop span {
  font-size: 1.5rem;
  font-weight: 600;
}
.ifCos .headerTop img, .ifCos .headerTop span {
  cursor: pointer;
}

.loadingPop {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: black;
  z-index: 2200;
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
}
.loadingPop .centerLoadingGraph {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../images/loading.gif) center center rgb(221, 221, 221);
  opacity: 0.2;
  text-align: center;
}

.menu {
  pointer-events: none;
}

.menu > * {
  pointer-events: all;
}

/*#alertJoinId, #alertJoinPw{
     padding:0.8rem 0;
     font-size:1.4rem;
     text-align: left;
     color:red;
 }*/
.joinIdGroup .disFlex {
  gap: 0.8rem;
}
.joinIdGroup button {
  margin-top: 0.6rem;
  padding: 0;
  width: 12rem;
  height: 3.2rem;
}

.mapModalTapWrap .panerTabs {
  position: relative;
  margin-top: 0.8rem;
}
.mapModalTapWrap .tabContWrap {
  margin: 1.2rem 0rem 1.6rem;
}
.mapModalTapWrap .tabContWrap a, .mapModalTapWrap .tabContWrap p {
  font-size: 1.3rem;
  font-weight: 400;
}
.mapModalTapWrap .searchLinkBox {
  display: flex;
  align-items: center;
  border: 1px solid #E4E4E4;
  border-radius: 0.4rem;
}
.mapModalTapWrap .searchLinkBox a {
  width: 33%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  border-right: 1px solid #E4E4E4;
  height: 4rem;
  font-size: 1.2rem;
  color: unset;
}
.mapModalTapWrap .searchLinkBox a:last-child {
  border-right: 0;
}

.slide_Img {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.slide_Img .sild {
  height: calc(100% - 4rem);
  overflow-y: hidden;
}
.slide_Img .sild img {
  width: 100%;
  object-fit: cover;
}
.slide_Img .closeBar {
  position: absolute;
  left: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0 1.2rem;
  width: 100%;
  height: 4rem;
  background: rgba(0, 0, 0, 0.8);
  box-sizing: border-box;
}
.slide_Img .closeBar label {
  color: #fff;
  font-size: 1.3rem;
}
.slide_Img .closeBar .viewBtn {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  margin-left: auto;
  padding: 0.4rem 0.6rem;
  border-radius: 20px;
  font-size: 1.3rem;
  color: #fff;
  cursor: pointer;
}
.slide_Img .dot {
  position: absolute;
  left: calc(50% + 3px);
  bottom: 53px;
  transform: translateX(-50%);
}
.slide_Img .dot > li {
  float: left;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #fff;
  margin-right: 6px;
  text-indent: -9999px;
  cursor: pointer;
}
.slide_Img .prev {
  position: absolute;
  width: 2rem;
  height: 2rem;
  bottom: 4rem;
  transform: translateY(-50%);
  left: 13rem;
  cursor: pointer;
}
.slide_Img .next {
  position: absolute;
  width: 2rem;
  height: 2rem;
  bottom: 4rem;
  transform: translateY(-50%);
  right: 13rem;
  cursor: pointer;
}
.slide_Img .dot > li.on {
  background-color: #4f97c3;
}
.slide_Img .panel img {
  vertical-align: top;
  border: none;
  width: 40rem;
  height: 24rem;
}

.mbArchHead {
  position: sticky;
  left: 0;
  top: 0;
  background-color: #fff;
  box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, 0.08);
  z-index: 1;
}

.archiTapWrap {
  position: relative;
}
.archiTapWrap .pageTit {
  padding: 1.6rem 1.6rem 0.8rem;
}

.pannelTitleWrap {
  border-bottom: 1px solid #E4E4E4;
}
.pannelTitleWrap .pdInner {
  padding: 1.2rem;
}
.pannelTitleWrap .Detail13gray400 {
  margin: 0.8rem 0 0;
  line-height: 140%;
}

.tooltipInfo {
  display: flex;
  align-items: center;
}
.tooltipInfo .tooltipImageItem {
  margin-left: auto;
  width: auto;
  cursor: pointer;
}
.tooltipInfo .tooltipImageItem .infoImg {
  width: 2.4rem;
  height: 2.4rem;
}
.tooltipInfo .tooltipImageItem .infoImg img {
  filter: invert(0.8);
}
.tooltipInfo .tooltipImageItem .tootipText {
  display: none;
}

.phoneNumWrap {
  display: flex;
  align-items: center;
  gap: 0.4rem;
}
.phoneNumWrap span {
  margin-top: 1.2rem;
}

.addressList {
  margin: 1.2rem 0 0.8rem;
  padding: 0.4rem 0.8rem;
  max-height: 20rem;
  text-align: center;
  border: 0.3rem dotted #E4E4E4;
  border-radius: 0.8rem;
}
.addressList li {
  margin: 0.8rem 0;
  text-align: left;
  cursor: pointer;
}
.addressList li h3 {
  font-size: 1.4rem;
  font-weight: 600;
  color: #1d1d1d;
}
.addressList li p {
  margin-top: 0.4rem;
  font-size: 1.3rem;
  color: #555555;
}
.addressList li:hover h3, .addressList li:hover p {
  color: #3447D2;
}
.addressList li.active h3, .addressList li.active p {
  color: #3447D2;
}
.addressList li.noData {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: default;
}
.addressList li.noData:hover p {
  color: #555555;
}

.marginBtm.bottomBtn {
  width: calc(100% - 2.4rem);
  margin: 1.2rem;
}

.archiContentsWrap {
  padding: 1.6rem;
}
.archiContentsWrap ul {
  margin-top: 0.8rem;
}
.archiContentsWrap ul li {
  margin-top: 0.8rem;
  font-size: 1.5rem;
  display: flex;
  align-items: center;
  gap: 0.8rem;
  color: #1d1d1d;
  line-height: 120%;
}
.archiContentsWrap ul li:hover {
  color: #3447D2;
}
.archiContentsWrap .infoImg {
  margin-left: auto;
  cursor: pointer;
}
.archiContentsWrap .infoImg img {
  width: 2rem;
  filter: invert(1);
}

.panerTabs {
  position: sticky;
  left: 0;
  top: 0;
  z-index: 1;
}
.panerTabs ul {
  display: flex;
  align-items: center;
  justify-content: space-evenly;
  width: 100%;
  background-color: #fff;
}
.panerTabs ul li {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 1rem;
  padding: 0.8rem;
  word-break: keep-all;
  text-align: center;
  font-size: 1.4rem;
  line-height: 110%;
  font-weight: 500;
  cursor: pointer;
  border-bottom: 0.4rem solid #F7F7F9;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.panerTabs ul li.active, .panerTabs ul li:hover {
  color: #3447D2;
  border-bottom: 0.4rem solid #3447D2;
}

.btnCloseApsol {
  position: absolute;
  top: 0.6rem;
  right: 0.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 100px;
  background-color: #fff;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.16);
  cursor: pointer;
  z-index: 3;
}
.btnCloseApsol:hover {
  box-shadow: 0 0 0 2px #E4E4E4 inset;
}

.introMain {
  position: relative;
  display: flex;
  z-index: 1;
}
.introMain article {
  position: relative;
  overflow: hidden;
  transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  flex: 1;
  z-index: 1;
  height: 73vh; /* 동적인 높이 지정 후 삭제*/
}
@media all and (min-width: 991px) {
  .introMain article:hover {
    box-shadow: 3px 4px 65px 0px rgba(0, 0, 0, 0.95);
    flex: 1.3;
    z-index: 2;
  }
  .introMain article:hover .bgImg {
    transform: scale(1);
    cursor: pointer;
  }
  .introMain article:hover .textWrap {
    color: #fff;
  }
  .introMain article:hover .textWrap h1 {
    transition: 1s;
    font-size: 4.3vw;
    color: #011637;
    -webkit-text-stroke: 1px #fff;
    text-shadow: 2px 4px 4px rgba(0, 0, 0, 0.4);
    transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  }
  .introMain article:hover .textWrap p {
    display: none;
  }
}
.introMain article .bgImg {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transform: scale(1.05);
}
.introMain article .textWrap {
  position: relative;
  margin: 4vw 1vw 1vw 4vw;
  transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  color: #fff;
}
.introMain article .textWrap h1 {
  font-size: 3.6vw;
  font-weight: 900;
}
.introMain article .textWrap h1 span {
  font-size: 2.2vw;
  font-weight: 700;
}
.introMain article .textWrap p {
  margin-top: 2.4rem;
  font-size: 1.5vw;
  line-height: 130%;
  font-weight: 400;
}
.introMain .introLeft .bgImg {
  background-color: #060606;
  background-image: url("../images/introMainLeft.png");
  background-size: cover;
}
@media all and (min-width: 991px) {
  .introMain .introLeft .bgImg:hover {
    background-image: url("../images/introMainLeft_hover.png");
    background-position: left top;
    transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  }
}
.introMain .introLeft .top10 {
  width: 76%;
  max-width: 72rem;
  position: absolute;
  left: 50%;
  bottom: 2rem;
  padding: 1.6rem;
  transform: translate(-50%, 0);
  border-radius: 0.8rem;
  border: 0.2rem solid #FFF;
  background: rgba(0, 0, 0, 0.4);
}
.introMain .introLeft .top10 h2 {
  font-size: 2.4rem;
  color: #fff;
  font-weight: 700;
  text-align: center;
}
.introMain .introLeft .top10 ul {
  margin-top: 1.6rem;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
}
.introMain .introLeft .top10 ul li {
  width: 10%;
  transition: 0.3s;
  border-radius: 0.8rem;
  overflow: hidden;
}
.introMain .introLeft .top10 ul li:hover {
  /*width:12%;
  min-width: 6.4rem;*/
  transition: 0.3s;
  text-shadow: 2px 4px 4px rgba(0, 0, 0, 0.4);
}
.introMain .introLeft .top10 ul li a img {
  width: 100%;
  transform: scale(0.9);
}
.introMain .introLeft .top10 ul li a img:hover {
  transform: scale(1);
}
.introMain .introRight .bgImg {
  background-color: #060606;
  background-image: url("../images/introMainRight.png");
  background-size: cover;
}
@media all and (min-width: 991px) {
  .introMain .introRight .bgImg:hover {
    background-image: url("../images/introMainRight_hover.png");
    background-position: left top;
    transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  }
}
.introMain .introGoogleTrans {
  position: absolute;
  right: 2rem;
  bottom: 2rem;
  display: inline-flex;
  padding: 1.2rem 1.6rem;
  align-items: center;
  gap: 0.8rem;
  border-radius: 8px;
  border: 2px solid #FFF;
  background: rgba(0, 0, 0, 0.4);
}
.introMain .introGoogleTrans p {
  font-size: 2rem;
  font-weight: 600;
  color: #fff;
}

.mainBannerBG {
  position: relative;
  width: 100%;
  background-color: #DDE4EC;
  z-index: 2;
}
.mainBannerBG .bannerInner {
  padding: 1.6rem 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.8rem;
}
.mainBannerBG .bannerInner > li {
  width: 15%;
  max-width: 258px;
  border-radius: 0.4rem;
  overflow: hidden;
}
.mainBannerBG .bannerInner > li > a {
  display: block;
  background-repeat: no-repeat;
  width: 100%;
  height: 0;
  padding-top: 31.007751938%;
  background-size: cover;
  transition: 0.5s;
}
.mainBannerBG .bannerInner > li.lastBanner > a {
  padding-top: 0;
  height: 100%;
}
.mainBannerBG .bannerInner > li.lastBanner > a img {
  width: 100%;
  height: 100%;
}
.mainBannerBG .bannerInner .banner01 {
  background-image: url("../images/mainBanner01.svg");
}
.mainBannerBG .bannerInner .banner01:hover {
  background-image: url("../images/mainBanner01_hover.svg");
}
.mainBannerBG .bannerInner .banner02 {
  background-image: url("../images/mainBanner02.svg");
}
.mainBannerBG .bannerInner .banner02:hover {
  background-image: url("../images/mainBanner02_hover.svg");
}
.mainBannerBG .bannerInner .banner03 {
  background-image: url("../images/mainBanner03.svg");
}
.mainBannerBG .bannerInner .banner03:hover {
  background-image: url("../images/mainBanner03_hover.svg");
}
.mainBannerBG .bannerInner .banner04 {
  background-image: url("../images/mainBanner04.svg");
}
.mainBannerBG .bannerInner .banner04:hover {
  background-image: url("../images/mainBanner04_hover.svg");
}
.mainBannerBG .bannerInner .banner05 {
  background-image: url("../images/mainBanner05.svg");
}
.mainBannerBG .bannerInner .banner05:hover {
  background-image: url("../images/mainBanner05_hover.svg");
}
.mainBannerBG .bannerInner .banner06 a {
  /*background-image: url("../images/mainBanner06.svg");

  &:hover{
      background-image: url("../images/mainBanner06_hover.svg");
  }*/
}

.mainFootBG {
  background-color: #21262e;
  width: 100%;
  font-family: "Pretendard";
}

.mainFoot {
  width: 120rem;
  height: 9rem;
  margin: 0 auto;
  padding: 0;
}

.mainFoot .clear {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.6rem;
}

.mainFoot li.con {
  margin-top: 2.4rem;
  display: flex;
  align-items: center;
  flex-flow: wrap;
  gap: 0.8rem;
}

.mainFoot li.con span {
  float: left;
}

.mainFoot li.con span.seoulLogo {
  width: 7.6rem;
  height: 4rem;
  background-size: 96px 33px !important;
  background: url(../images/logo_footer.png) -18px 0px no-repeat;
}

.mainFoot li.con span.txt {
  font-size: 3rem;
  color: #fff;
}

.mainFoot li.con span.txt2 {
  font-size: 1.4rem;
  color: rgba(255, 255, 255, 0.8);
}

.mainFoot li.line {
  display: block;
  float: left;
  margin-top: 3rem;
}

.mainFoot li.line span {
  display: block;
  width: 0.2rem;
  height: 3.1rem;
  margin-left: 0.4rem;
  background-color: rgba(255, 255, 255, 0.7);
}

.mainFoot li.con2 {
  margin-top: 1.6rem;
  font-size: 1.2rem;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.9rem;
}

.mainFoot li.con2 p {
  padding-top: 0;
}

.mainFoot li.con2 a {
  color: rgb(255, 255, 255);
}

.mainFoot li.con2 a:hover {
  color: #fff;
  text-decoration: underline;
}

/* 팝업 */
.overlay {
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1100;
  visibility: hidden;
  opacity: 0;
  transition: all 0.5s ease;
  color: black;
}

#openPopDiv_report {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 60rem;
  height: auto;
  color: black;
  font-size: 1.3rem;
  display: inline;
  width: 80%;
  background: #f4f4f6;
}
#openPopDiv_report .modal_content {
  width: 100%;
  box-sizing: border-box;
  height: auto;
}
#openPopDiv_report img {
  width: auto;
  max-width: 100%;
}
#openPopDiv_report .modal_footer_report {
  width: 100%;
  padding: 10px 0;
  font-size: 1.4rem;
}
#openPopDiv_report input[type=checkbox] {
  overflow: hidden;
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0, 0, 0, 0);
}
#openPopDiv_report input[type=checkbox] + label {
  margin-left: 12px;
  font-family: "맑은 고딕";
  font-size: 12px;
  display: inline-block;
  position: relative;
  line-height: 18px;
  cursor: pointer;
  user-select: none;
}
#openPopDiv_report input[type=checkbox] + label:before {
  content: "";
  display: inline-block;
  width: 1.3rem;
  height: 1.3rem;
  margin: -1px 4px 0 0;
  border: 1px solid #3587ba;
  background: #fff;
  line-height: 13px;
  text-align: center;
  vertical-align: middle;
}
#openPopDiv_report input[type=checkbox]:checked + label:before {
  content: "✔";
  font-size: 1.2rem;
  color: #3587ba;
}
#openPopDiv_report .close_report {
  position: absolute;
  bottom: 1.1rem;
  right: 1rem;
  color: #000000;
  cursor: pointer;
}

.themeCopyIcon {
  position: absolute;
  top: 1rem;
  right: 0.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
}

.mobileNav {
  display: none;
}

#contSubInfoWrap {
  overflow-x: hidden;
}

/* 주소 */
.map_addArea {
  display: flex;
  align-items: center;
  height: 3rem;
  background: rgba(0, 0, 0, 0.6);
  border-radius: 30px;
  vertical-align: middle;
  position: absolute;
  bottom: 1rem;
  z-index: 600;
  left: 25%;
  width: 50%;
}
.map_addArea .addTxt {
  padding: 0 0.8rem;
  flex-grow: 1;
  color: #fff;
  text-align: center;
  font-weight: 500;
  font-size: 1.4rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 1;
}
.map_addArea .moveSeoulBtn {
  flex-shrink: 0;
  margin-right: 0.6rem;
  padding: 0.4rem 0.8rem;
  background-color: #fff;
  color: #1d1d1d;
  font-size: 1.2rem;
  border-radius: 30px;
  cursor: pointer;
  font-weight: 700;
}
@media (max-width: 991px) {
  .map_addArea {
    left: 10%;
    width: 80%;
  }
  .map_addArea .addTxt {
    font-size: 14px;
  }
}

.context-menu {
  position: fixed;
  width: 300px; /* 적절한 너비 지정 */
  background-color: white;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4), 0 0 0 2px rgba(0, 0, 0, 0.1);
  border: 1px solid #eee;
  z-index: 1000; /* 다른 요소들 위에 보이도록 */
  padding: 16px;
  font-family: "Noto Sans KR", sans-serif; /* 예시 폰트 */
}
.context-menu .subTit {
  margin: 1.2rem 0 0.8rem;
  font-size: 1.4rem;
}
.context-menu {
  /* * SCSS 중첩 시작:
   * .context-menu .menu-header 와 동일
   */
}
.context-menu .menu-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #f0f0f0;
  padding-bottom: 10px;
  margin-bottom: 10px;
  /* .context-menu .menu-header h4 와 동일 */
}
.context-menu .menu-header h4 {
  margin: 0;
  font-size: 16px;
}
.context-menu {
  /* .context-menu .close-btn 와 동일 */
}
.context-menu .close-btn {
  cursor: pointer;
  font-size: 20px;
  color: #888;
}
.context-menu select {
  width: 100%;
  padding: 0.4rem 0.6rem;
  font-size: 1.3rem;
  border: 1px solid #ccc;
  border-radius: 6px;
  background-color: #fff;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  position: relative;
  background-image: url('data:image/svg+xml;utf8,<svg fill="%23888" height="12" viewBox="0 0 10 6" width="10" xmlns="http://www.w3.org/2000/svg"><path d="M0 0l5 6 5-6z"/></svg>');
  background-repeat: no-repeat;
  background-position: right 0.6rem center;
  background-size: 10px 6px;
}
.context-menu {
  /* ---------- 선택 옵션 hover ---------- */
}
.context-menu select option {
  padding: 0.4rem 0.6rem;
  font-size: 1.3rem;
}

select:not(.goog-te-combo) {
  padding-right: 3rem;
  background-image: url(../images/btnArrowBottom16.svg), linear-gradient(to right, transparent calc(100% - 2.6rem), #fff calc(100% - 2.6rem)), linear-gradient(to right, transparent calc(100% - 2.6rem), #e4e4e4 calc(100% - 2.55rem), #e4e4e4 calc(100% - 2.45rem), transparent calc(100% - 2.45rem));
  background-repeat: no-repeat;
  background-position: right 0.8rem center, 0 0, 0 0;
  background-size: 1.6rem 1.6rem, 100% 100%, 100% 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.shapePreview {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.4rem;
  height: 2.4rem;
  border: none;
  border-radius: 50%;
  background: none;
  font-size: 3rem;
  line-height: 1;
  flex-shrink: 0;
}
