@charset "UTF-8";
@import 'googlep.css';
@import 'googlep2.css';
:root {
  /* 웨딩& defalt */
  --max-width: 1400px;
  --base-color: #ffcccc;
  --input-defalt-col:#ffcccc;
  /*장례 */
  --funeral-base-color: #999999;
  --funeral-input-defalt-col: #999999;
  /* 돌잔치 */
  --baby-base-color: #1ec4c4;
  --baby-input-defalt-col: #1ec4c4;
}

@font-face {
  font-family: "Noto Sans KR";
  font-style: normal;
  font-weight: 100;
  src: url(//fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Thin.woff2) format("woff2"), url(//fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Thin.woff) format("woff"), url(//fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Thin.otf) format("opentype");
}
@font-face {
  font-family: "Noto Sans KR";
  font-style: normal;
  font-weight: 300;
  src: url(//fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Light.woff2) format("woff2"), url(//fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Light.woff) format("woff"), url(//fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Light.otf) format("opentype");
}
@font-face {
  font-family: "Noto Sans KR";
  font-style: normal;
  font-weight: 400;
  src: url(//fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Regular.woff2) format("woff2"), url(//fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Regular.woff) format("woff"), url(//fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Regular.otf) format("opentype");
}
@font-face {
  font-family: "Noto Sans KR";
  font-style: normal;
  font-weight: 500;
  src: url(//fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Medium.woff2) format("woff2"), url(//fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Medium.woff) format("woff"), url(//fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Medium.otf) format("opentype");
}
@font-face {
  font-family: "Noto Sans KR";
  font-style: normal;
  font-weight: 700;
  src: url(//fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Bold.woff2) format("woff2"), url(//fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Bold.woff) format("woff"), url(//fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Bold.otf) format("opentype");
}
@font-face {
  font-family: "Noto Sans KR";
  font-style: normal;
  font-weight: 900;
  src: url(//fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Black.woff2) format("woff2"), url(//fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Black.woff) format("woff"), url(//fonts.gstatic.com/ea/notosanskr/v2/NotoSansKR-Black.otf) format("opentype");
}
@font-face {
  font-family: "Chosun";
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/ChosunGs.ttf") format("truetype");
}
@font-face {
  font-family: "parisienne";
  src: url("../fonts/Parisienne-Regular.ttf") format("truetype");
  font-weight: 500;
}
@font-face {
  font-family: "sebangGd";
  src: url("../fonts/SEBANG Gothic Bold.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "scdream";
  src: url("../fonts/SCDream1.otf") format("opentype");
  font-weight: normal;
  font-style: normal;
}
*::-webkit-scrollbar {
  width: 5px;
  height: 5px;
}

*::-webkit-scrollbar-thumb {
  background-color: var(--base-color);
  background-clip: padding-box;
}

* {
  box-sizing: border-box;
  font-family: "Nanum Brush Script", "Noto Sans KR", sans-serif, "Courier New", Courier, monospace;
  max-width: 100%;
}

body {
  width: 100%;
  min-height: 100vh;
  display: inline-flex;
  flex-direction: column;
  justify-content: flex-start;
}

html, body {
  margin: 0;
  /* font-family: "Noto Sans KR", sans-serif, 'Courier New', Courier, monospace; */
  font-family: "Nanum Brush Script", cursive;
  font-size: 12px;
  /* scroll-snap-type: y mandatory; */
  scroll-behavior: smooth;
}

html:has(body.setup), body.setup {
  font-size: 12px;
}
input {
  font-size: 1.6rem;
}

label {
  font-size: 1.8rem;
}

.body-mx-container {
  width: 100%;
  /* background: linear-gradient(208deg, #ffffff, #f0fbff); */
  background: radial-gradient(#f3edff, transparent);
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: row;
  padding: 20px 10px;
  max-width: 100%;
  z-index: 0;
}

.wedding .body-mx-container {
  background: linear-gradient(208deg, #fff1f1, #ebebeb);
}

.body-container {
  /* position: relative; */
  max-width: var(--max-width);
  min-height: calc(100vh - 120px);
  width: 100%;
  /* background-color: #F1F1F1; */
  display: flex;
  align-items: center;
  flex-direction: column;
  padding: 0 10px;
  box-sizing: border-box;
  overflow-x: hidden;
}

.body-line-wrap {
  box-shadow: 0 4px 9px rgba(135, 135, 135, 0.168627451);
  border-radius: 8px;
}

.body-content {
  max-width: var(--max-width);
  width: 100%;
  background-color: #fff;
  min-height: 300px;
  border-radius: 14px;
  padding: 20px;
  z-index: 1;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.0588235294);
}

.body-content .impact-text-col + label {
  font-family: none;
}

.mini-body-content {
  max-width: 450px;
  width: 100%;
  background-color: #f9f9f9;
  min-height: 300px;
  border-radius: 14px;
  box-shadow: -5px -4px 6px #ffffff, 5px 5px 11px #c7c7c7;
}

.wedding-info-container {
  overflow: hidden;
  flex: 1 1 350px;
}

#visit_member_form {
  flex: 1;
}

.item-container {
  padding: 20px;
}

.lock-box {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  position: absolute;
  background: rgba(255, 255, 255, 0.0705882353);
  -webkit-backdrop-filter: saturate(1) blur(5px);
          backdrop-filter: saturate(1) blur(5px);
  width: 100%;
  height: 140px;
  font-size: 3rem;
  left: 0;
  top: 0;
  transition: all 0.35s;
  cursor: pointer;
}

.lock-box:hover {
  font-size: 1rem;
}

.lock-box:hover::after {
  content: "로그인이 필요한 서비스 입니다.";
  position: relative;
}

.c-g-row-3 {
  display: grid;
  grid-template-columns: 1fr 0.4fr 0.3fr;
}

.w-box > span:nth-of-type(1),
.m-box > span:nth-of-type(1) {
  font-size: 1.8rem;
}

.w-box > span:nth-of-type(2),
.m-box > span:nth-of-type(2) {
  font-family: "parisienne";
  letter-spacing: 5px;
  font-size: 1.4rem;
}

.qkdaudfhr-box > h5 {
  font-family: "parisienne";
  letter-spacing: 5px;
  font-size: 2.4rem;
  /* font-weight: bold; */
  color: #7E7E7E;
}

.mail-paper {
  background: white;
  padding: 10px;
  /* border-radius: 4px; */
  /* border: 1px solid #ededed; */
  color: black;
  border-left: unset;
  border-right: unset;
  box-shadow: 2px 2px 20px rgba(203, 203, 203, 0.4117647059);
  /* flex: 1; */
  overflow: hidden;
  transition: all 0.75s;
  white-space: nowrap;
  text-overflow: ellipsis;
  flex-basis: auto;
  width: 300px;
  flex-flow: wrap;
  align-items: self-end;
  border-radius: 18px;
}
.mail-paper > p {
  white-space: break-spaces;
  font-family: "Franklin Gothic Medium", "Arial Narrow", Arial, sans-serif;
  font-size: 1.2rem;
  line-height: 1.8rem;
}
.mail-paper:hover {
  height: auto;
  padding: 10px 10px 20px 10px;
  /* animation: fit-content 1s linear; */
}

.mail-paper * {
  font-family: "Nanum Brush Script", cursive;
  margin: 0;
}

.like-wrap .material-icons {
  font-family: "Material Icons";
  cursor: pointer;
}

.paper-label {
  font-size: 1.6rem;
}

.mail-user {
  position: sticky;
  bottom: 0;
  border-top: 1px solid #efefef;
  background: url(../img/item/flower1.png) no-repeat right/200px, #fdf4fd;
  height: 30px;
  border-radius: 0;
}

.like-icon {
  display: inline-flex;
  width: 50px;
  height: 50px;
  cursor: pointer;
  background: url(../img/btn/like.jpg) no-repeat;
  background-position: center;
  background-size: contain;
}
.like-icon.active {
  background: url(../img/btn/like_active.png) no-repeat;
  background-position: center;
  background-size: contain;
}

.wed-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  background: url("../img/item/flower1.svg") no-repeat;
  /* background-image: linear-gradient(-450deg,#EFB3B1 10%,#FF8894 90%); */
  background-size: contain;
  background-position: center;
  color: black;
  /* border: 1px solid gainsboro; */
  border: unset;
  white-space: nowrap;
  border-radius: 100%;
  height: 100%;
  font-size: 2rem;
  font-family: "Nanum Brush Script";
  cursor: pointer;
  border-radius: 14px;
  /* box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.258); */
  transition: all 0.35s;
}

.wed-btn.tlrrnjs-btn {
  background: url("../img/item/tlrrnjs.png") no-repeat;
  /* background-image: linear-gradient(-450deg,#EFB3B1 10%,#FF8894 90%); */
  background-size: cover;
  background-position: top;
  border-radius: 14px;
  overflow: hidden;
  filter: hue-rotate(290deg);
}

.wed-btn.tlrrnjs-btn:hover {
  background-position: bottom;
  filter: hue-rotate(160deg);
}

.wed-btn.item {
  /* background-image: linear-gradient(450deg,#FDBD7F,#F8D4B0); */
}

.wed-btn.suc {
  color: #3A3A3A;
  /* background-image: linear-gradient(-450deg,#E1C4C4,#F7EDED); */
  /* -webkit-text-stroke-width: 1px; */
  /* -webkit-text-stroke-color: #E0C7C7; */
  font-weight: bold;
  /* border: 1px solid #ff77003b; */
}

.quick-dash-btn {
  font-size: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  background: #e19d6e;
  padding: 20px;
  border-radius: 8px;
  color: white;
  cursor: pointer;
  border: 4px double white;
  box-shadow: 0 0 0;
  transition: all 0.35s;
}

.wed-btn:hover {
  /* background-position: 100% -00%; */
  /* box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.187); */
  filter: drop-shadow(2px 7px 11px rgba(255, 0, 217, 0.39));
}

.scope-2 {
  grid-template-columns: 1fr 0.4fr;
}

.name-box {
  counter-reset: num;
  flex-wrap: nowrap;
  overflow: auto;
  z-index: 1;
  padding-top: 50px;
  padding-bottom: 20px;
  overflow-y: hidden;
}

.guest-book-name {
  -webkit-writing-mode: vertical-lr;
  font-size: 40px;
  max-width: 59px;
  position: relative;
  letter-spacing: 20px;
  flex: 1;
  font-size: 2rem;
  color: #7E7E7E;
  display: flex;
  align-items: center;
  font-family: "Chosun", "Nanum Myeongjo", serif;
  cursor: pointer;
  border-radius: 8px;
  white-space: nowrap;
}
.guest-book-name.remote {
  background: rgba(255, 140, 140, 0.0901960784);
}
.guest-book-name.remote::after {
  content: "🪂";
  position: absolute;
  font-size: 0.9rem;
  letter-spacing: 0;
  -webkit-writing-mode: initial;
  border-radius: 14px;
  padding: 0 5px;
  top: -10px;
  right: 0;
}

label.guest-book-name::before {
  counter-increment: num;
  content: counter(num);
  -webkit-writing-mode: initial;
  font-size: 1.1rem;
  border: 1px solid #f1b3d0;
  color: #f1b3d0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  border-radius: 100%;
  padding: 0px;
  letter-spacing: 0;
  width: 30px;
  height: 30px;
  position: absolute;
  top: -40px;
}

.quick-dash-btn:hover,
.guest-book-name:hover {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.381);
}

.info-content-box {
  height: 100%;
  justify-content: space-around;
  font-size: 1.8rem;
  color: #333333;
}

.impact-text-col {
  color: #ECBDB8;
}

.input-important {
  position: relative;
}

.input-important::after {
  content: "*";
  color: rgb(255, 117, 202);
  font-weight: bold;
  font-size: 1.4rem;
  margin-left: 5px;
}

.qkdaudfhr-box::before {
  content: "";
  background: url("../img/item/flower3.png") no-repeat;
  position: absolute;
  width: 300px;
  height: 100%;
  left: 0;
  top: 0;
  pointer-events: none;
  z-index: 0;
}

.qkdaudfhr-box::after {
  /* content: ''; */
  background: url("../img/item/stamp.svg") no-repeat;
  position: absolute;
  width: 100px;
  height: 100px;
  right: 30px;
  bottom: 30px;
  pointer-events: none;
  z-index: -1;
}

.main-deco::after {
  content: "";
  background: url("../img/item/flower1.svg") no-repeat;
  background-position: top right, bottom;
  background-size: 219px 219px, 600px 30px;
  position: absolute;
  width: 600px;
  height: 249px;
  right: 30px;
  bottom: 30px;
  pointer-events: none;
  z-index: -1;
}

.main-deco::before {
  content: "";
  background: url("../img/item/flower2.svg") no-repeat;
  position: absolute;
  width: 174px;
  height: 105px;
  left: 30px;
  bottom: 30px;
  z-index: -1;
  pointer-events: none;
}

.photo-box {
  width: 100%;
  max-width: 620px;
  flex: 1;
  padding: 10px;
  align-self: center;
}

.photo-wrap {
  overflow: auto;
  max-width: 400px;
  border: 1px solid gainsboro;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0);
  backdrop-filter: blur(6px) saturate(0.5);
  -webkit-backdrop-filter: blur(6px) saturate(0.5);
}

.photo-card {
  height: 515px;
  /* position: relative; */
  /* justify-content: center; */
}

.card-deco {
  font-family: "parisienne";
  font-size: 1.2rem;
  display: flex;
  align-items: flex-end;
  flex-direction: column;
  justify-content: flex-end;
  /* top: 5%; */
  width: 300px;
  min-width: 300px;
  height: 480px;
  margin-right: unset !important;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.119);
  padding: 10px 15px;
}

.card-deco > span {
  font-family: "parisienne";
}

.card-deco1 {
  /* left: 80px; */
  /* background: url('../img/user/gallery_urls_20231030_192212_952.jpg') no-repeat,white; */
  background: white;
  background-size: 280px 400px;
  background-position: center 10px;
  /* transform: rotate(-5deg); */
  /* animation: img-focus 1s linear backwards alternate-reverse; */
}

.card-deco2 {
  /* left: 120px; */
  /*background: url('../img/user/gallery_urls_20231030_192001_180.jpg') no-repeat,white;*/
  background: white;
  background-size: 280px 400px;
  background-position: center 10px;
  /* transform: rotate(-2deg); */
  /* animation: img-focus 1s 1s linear backwards alternate-reverse; */
}

.card-deco3 {
  /* left: 170px; */
  /*background: url('../img/user/gallery_urls_20231030_192018_778.jpg') no-repeat,white;*/
  background: white;
  background-size: 280px 400px;
  background-position: center 10px;
  /* transform: rotate(1deg); */
  /* animation: img-focus 1s 2s linear backwards alternate-reverse; */
}

.card-deco4 {
  /* left: 210px; */
  /*background: url('../img/user/gallery_urls_20231030_192212_952.jpg') no-repeat,white;*/
  background: white;
  background-size: 280px 400px;
  background-position: center 10px;
  /* animation: img-focus 1s 3s linear backwards alternate-reverse; */
  /* transform: rotate(8deg); */
}

.card-deco > img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.card-deco:hover {
  z-index: 2;
  transform: rotate(0deg);
}

@keyframes img-focus {
  from {
    left: 0%;
    z-index: 2;
  }
  to {
    z-index: 2;
    left: 10%;
    transform: rotate(0deg);
  }
}
.card-memo-box {
  background: white;
  padding: 10px;
  border-radius: 14px;
  flex: 1;
  width: 100%;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.0509803922);
  box-sizing: border-box;
}

.card-memo-box > span {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  position: relative;
  font-style: italic;
  padding: 5px 5px;
  font-size: 1.8rem;
}

.card-memo-box > span::before {
  content: "👰‍♀️🤵";
  /* position: absolute; */
  width: 75px;
  /* height: 5px; */
  border-radius: 100%;
  /* background: red; */
}

.alarm-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
  color: #b1b1b1;
}
.alarm-btn.active {
  color: #ff5288;
  animation: bell 1s cubic-bezier(0.68, 0.65, 0.36, 0.37) infinite alternate;
}
.alarm-btn.active::after {
  content: "";
  position: absolute;
  background: rgba(255, 82, 137, 0.1647058824);
  width: 0px;
  height: 0px;
  transition: all 0.35s;
  border-radius: 100%;
  animation: alarm-wave 2.5s linear infinite;
}
.alarm-btn.active::before {
  content: "";
  position: absolute;
  border: 1px solid rgba(255, 82, 137, 0.1647058824);
  width: 0px;
  height: 0px;
  transition: all 0.35s;
  border-radius: 100%;
  animation: alarm-wave2 2.5s linear infinite;
}

@keyframes bell {
  from {
    transform: rotate(5deg);
  }
  to {
    transform: rotate(-5deg);
  }
}
@keyframes alarm-wave {
  0% {
    width: 0px;
    height: 0px;
    opacity: 1;
  }
  90% {
    width: 30px;
    height: 30px;
    opacity: 1;
  }
  100% {
    width: 30px;
    height: 30px;
    opacity: 0;
  }
}
@keyframes alarm-wave2 {
  0% {
    width: 0px;
    height: 0px;
    opacity: 1;
  }
  90% {
    width: 40px;
    height: 40px;
    opacity: 1;
  }
  100% {
    width: 40px;
    height: 40px;
    opacity: 0;
  }
}
.money-btn {
  font-family: "parisienne";
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2392156863);
  padding: 5px;
  background: #00598f;
  color: white;
  border-radius: 4px;
  font-size: small;
}

.money-btn:nth-of-type(1) {
  opacity: 0.5;
}

.money-btn:nth-of-type(2) {
  opacity: 0.8;
}

.login-box * {
  /* font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif; */
}

.login-box {
  gap: 10px;
}

.login-box > input:not([type=button]) {
  max-width: 100%;
  box-sizing: border-box;
}
.login-box > label {
  white-space: nowrap;
  min-width: 50px;
  font-weight: bold;
  color: #7c7c7c;
}

.login-btn {
  background: #a884ef;
  border: unset;
  color: white;
  width: 100%;
  padding: 11px;
  cursor: pointer;
  border-radius: 8px;
  box-sizing: border-box;
  font-size: 1.8rem;
}

.login-btn[value^=삭제] {
  background: linear-gradient(0deg, #915656, #a91f1f);
}

.wedding .login-btn {
  background: #ff8556;
}

.check-btn {
  background: cornflowerblue;
  color: white;
  border: unset;
  cursor: pointer;
  border-radius: 8px;
  padding: 11px;
  width: -moz-fit-content;
  width: fit-content;
  align-self: flex-end;
  font-size: 1.5rem;
}

.event-list-container {
  overflow: auto;
  background: rgba(255, 255, 255, 0);
  /* border-radius: 20px; */
  padding: 15px;
  border-top: 1px solid gainsboro;
  /* border-bottom: 1px solid gainsboro; */
  backdrop-filter: blur(4px) saturate(0.5);
  -webkit-backdrop-filter: blur(4px) saturate(0.5);
}

.event-btn {
  background: black;
  color: white;
  position: relative;
  padding: 20px;
  border-radius: 10px;
  cursor: pointer;
  width: 300px;
  /* min-width: 300px; */
  height: 380px !important;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0px 0px rgba(0, 0, 0, 0.1803921569);
  transition: all 0.35s;
  z-index: 1;
  border: 1px solid #585858;
  overflow: hidden;
  flex-direction: column;
}
.event-btn p {
  font-size: 2rem;
}

.event-btn::after {
  content: "";
  background: url("../img/item/flower4.png") no-repeat;
  display: flex;
  background-size: cover;
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: -1;
  opacity: 0.5;
}

.event-btn:hover {
  box-shadow: 0 10px 6px rgba(0, 0, 0, 0.1803921569);
}

.event-btn.장례식 {
  background: #262626;
}

.event-btn.장례식::after {
  content: "";
  background: url("../img/item/flower5.jpg") no-repeat;
  background-size: cover;
}

.event-btn.돌잔치 {
  background: #000000;
}

.event-btn.돌잔치::after {
  content: "";
  background: url("../img/item/100day.jpg") no-repeat;
  background-size: 100% 100%;
}

.event-btn > p {
  margin: 0;
  font-size: 2.6rem;
  font-weight: bold;
  font-family: "Nanum Brush Script", cursive, serif;
}

.license-wrap {
  display: flex;
  background: rgba(255, 255, 255, 0.2588235294);
  width: 100%;
  justify-content: center;
  border-radius: 8px;
  -webkit-backdrop-filter: blur(3px) saturate(0.5);
          backdrop-filter: blur(3px) saturate(0.5);
  border-top: 1px solid #c9c9c9;
  color: white;
}
.license-wrap > label {
  color: #cfcfcf;
}

.event-ins-btn {
  width: 100%;
  padding: 10px;
  border-radius: 10px;
  border: unset;
  background: linear-gradient(45deg, #0b0c20, #c93f3f);
  color: white;
  cursor: pointer;
  font-weight: bold;
  font-size: 1.5rem;
}

.sign-sub-box > span {
  display: inline-flex;
  align-items: center;
  position: relative;
  cursor: pointer;
  color: #8f8f8f;
  font-size: 1.8rem;
  transition: all 0.35s;
}

.sign-sub-box > span:hover {
  color: #ff8556;
}

.sign-sub-box > span::after {
  content: "";
  position: absolute;
  right: -10px;
  width: 1px;
  height: 15px;
  background: #a7a7a7;
}

.sign-sub-box > span:last-of-type:after {
  content: unset;
}

input:not([type]):focus:not([readonly]), input[type=text]:not(.browser-default):focus:not([readonly]), input[type=password]:not(.browser-default):focus:not([readonly]), input[type=email]:not(.browser-default):focus:not([readonly]), input[type=url]:not(.browser-default):focus:not([readonly]), input[type=time]:not(.browser-default):focus:not([readonly]), input[type=date]:not(.browser-default):focus:not([readonly]), input[type=datetime]:not(.browser-default):focus:not([readonly]), input[type=datetime-local]:not(.browser-default):focus:not([readonly]), input[type=tel]:not(.browser-default):focus:not([readonly]), input[type=number]:not(.browser-default):focus:not([readonly]), input[type=search]:not(.browser-default):focus:not([readonly]), textarea.materialize-textarea:focus:not([readonly]) {
  border-bottom: 1px solid #a884ef;
  box-shadow: 0 1px 0 0 #a884ef;
}

.btn-container button {
  background: cornflowerblue;
  color: white;
  font-family: initial;
  padding: 5px 10px;
  border: unset;
  border-radius: 4px;
  cursor: pointer;
  display: flex;
  align-items: center;
  white-space: nowrap;
}

.search-wraper {
  position: relative;
  width: 200px;
}

.search-wraper > input {
  border: 1px solid gainsboro;
  border-left: unset;
  border-right: unset;
  padding: 0 30px;
}

.search-wraper > input + label {
  position: absolute;
  right: 0;
}

footer {
  position: relative;
  bottom: 0;
  /* left: 10px; */
  max-width: 100%;
  font-family: "parisienne";
  font-size: 1.2rem;
  z-index: 0;
}

.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
  /* background: #5d5d5d08; */
  justify-self: center;
  /* backdrop-filter: saturate(1.2) blur(8px); */
  padding: 0 10px;
  border-radius: 105px;
  /* border-top: 1px solid #818181; */
  /* border-right: 1px solid #818181; */
}

.event-list-container .swiper-pagination-bullet {
  background: #ebebeb;
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.7);
  transition: all 0.35s;
}

.event-list-container .swiper-pagination-bullet-active {
  background: #000000;
  width: 70px !important;
  border-radius: 8px !important;
  transition: all 0.35s !important;
}

canvas.sakura-canvas {
  z-index: -1;
  width: 100vw;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  max-width: 100vw;
  max-height: 100%;
  pointer-events: none;
}

.collapsible {
  font-size: 2rem;
}

.collapsible-header {
  background: #021c4b;
}

.body-list-item {
  position: relative;
}

.input-field {
  position: relative;
  margin-top: 1rem;
  margin-bottom: 20px;
  display: flex;
  padding: 5px;
  border: 1px solid gainsboro;
  border-radius: 7px;
}

.input-field > label {
  left: 10px;
  transform: translateY(8px) scale(1);
}

.input-field > label.active {
  text-align: center;
  background: white;
  left: 10px;
  border-radius: 8px;
  top: 2px;
}

.input-field > input {
  border: unset !important;
  padding: 0 10px !important;
}

.event-item-wrap {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  width: 310px;
  height: -moz-fit-content;
  height: fit-content;
  /* height: 400px; */
  overflow: hidden;
}

.event-item-card-box {
  font-size: 2rem;
  width: 100%;
  /* height: 365px; */
  height: -moz-fit-content;
  height: fit-content;
  border-radius: 28px;
}

.event-item-card-box > img {
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
  height: 100%;
}

.event-ins-btn {
  margin: 1rem;
}
.event-ins-btn-marquee {
  font-weight: 600;
  border: none;
  overflow: hidden;
  transition: 0.3s;
  width: 100%;
  padding: 5px 10px;
  border-radius: 8px;
  cursor: pointer;
  font-weight: bold;
  font-size: 2rem;
  background: linear-gradient(45deg, #0b0c20, #c93f3f);
  color: white;
}
.event-ins-btn-marquee:hover {
  transform: scale(1.1);
}
.event-ins-btn-marquee span {
  display: block;
  padding: 0 20px;
  animation: move-left 2s linear infinite;
}
.event-ins-btn-marquee span::after {
  position: absolute;
  content: attr(data-text);
  top: 0;
  left: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}

#vLog {
  font-size: 2rem;
  min-height: 280px;
  border: 1px solid gainsboro;
}

.qr-container {
  position: relative;
  padding: 10px;
  box-shadow: 0 0 8px gainsboro;
  border-radius: 8px;
  align-self: flex-end;
  margin-top: 20px;
}

.qr-container::after {
  content: "📸카메라로 비춰보세요!!";
  position: absolute;
  white-space: nowrap;
  text-shadow: 2px 4px 3px rgba(0, 0, 0, 0.2196078431);
  right: 0;
  color: black;
  top: 0;
  font-size: 2rem;
  transform: translate(-60px, -20px) rotate(-15deg);
}
.qr-container::before {
  content: "🎉축하메세지를 남길 수 있어요";
  position: absolute;
  color: #c74848;
  white-space: nowrap;
  text-shadow: 2px 4px 3px rgba(0, 0, 0, 0.2196078431);
  right: 0;
  top: 0;
  font-size: 2rem;
  transform: translate(-120px, 50px) rotate(-16deg);
}

.dash-img-wrap img {
  height: 740px;
  -o-object-fit: contain;
     object-fit: contain;
  background: white;
  box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.301);
  border-radius: 18px;
}

.wedding-dash-img-container {
  position: sticky;
  top: 30px;
  width: 20vw;
  max-width: 100%;
  gap: 10px;
  position: sticky;
  top: 60px;
}

.dropdown-content li > a, .dropdown-content li span {
  padding: 10px;
  font-family: "parisienne";
  font-size: 1.1rem;
}

.dropdown-content li > a > i {
  color: #ffcfe2;
}

@keyframes move-left {
  to {
    transform: translateX(-100%);
  }
}
.cencle-btn {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 25px;
  height: 25px;
  background: #f9f9f9;
  color: #b32323;
  text-shadow: 0px 3px 2px rgba(0, 0, 0, 0.2901960784);
  top: -5px;
  right: 0;
  cursor: pointer;
  border-radius: 100%;
  box-shadow: -3px -3px 2px white, 3px 3px 4px rgba(0, 0, 0, 0.2);
}

@media (max-width: 1920px) {
  .body-content {
    padding: 20px 20px;
  }
  input:not([type]), input[type=text]:not(.browser-default), input[type=password]:not(.browser-default), input[type=email]:not(.browser-default), input[type=url]:not(.browser-default), input[type=time]:not(.browser-default), input[type=date]:not(.browser-default), input[type=datetime]:not(.browser-default), input[type=datetime-local]:not(.browser-default), input[type=tel]:not(.browser-default), input[type=number]:not(.browser-default), input[type=search]:not(.browser-default), textarea.materialize-textarea {
    height: 3.2rem;
  }
  .guest-book-name {
    font-size: 1.8rem;
  }
  #remoteVisitMemberContainer {
    justify-content: center !important;
  }
}
.dropdown-content {
  max-height: 400px;
}
.dropdown-content > div:first-child {
  position: sticky;
  top: 0;
  background: white;
  border-bottom: 1px solid gainsboro;
}

@media (max-width: 1200px) {
  input:not([type]), input[type=text]:not(.browser-default), input[type=password]:not(.browser-default), input[type=email]:not(.browser-default), input[type=url]:not(.browser-default), input[type=time]:not(.browser-default), input[type=date]:not(.browser-default), input[type=datetime]:not(.browser-default), input[type=datetime-local]:not(.browser-default), input[type=tel]:not(.browser-default), input[type=number]:not(.browser-default), input[type=search]:not(.browser-default), textarea.materialize-textarea {
    height: 3rem;
  }
  footer {
    position: relative;
    padding: 30px 10px;
  }
  .search-wraper {
    position: relative;
    width: calc(100% - 120px);
  }
  .guest-book-name {
    font-size: 1.8rem;
  }
}
@media (max-width: 900px) {
  html, body {
    font-size: 10px;
  }
  .photo-box {
    min-width: unset;
    justify-content: center;
    overflow: hidden;
  }
  .card-deco {
    left: unset;
  }
  .event-list-container {
    padding: 15px 0;
  }
  .wedding-dash-img-container {
    width: 100%;
  }
  .mail-paper {
    flex: 1 1 100%;
    width: 100%;
    flex-basis: unset;
  }
  .dropdown-content {
    width: 100% !important;
    left: 0 !important;
  }
}