a {
	display: block;
}

img {
  width: 100%;
}

.price {
  width: fit-content;
  margin-inline: auto;
  text-align: center;
}

.price-text {
  color: #c1272d;
  font-family: "garamond-premier-pro", serif;
  font-weight: 400;
  text-align: center;
  font-size: clamp(10px, 3vw, 16px);
  letter-spacing: 0;
}

.price-btn {
  background-color: #c1272d;
  width: clamp(45px, 10vw, 55px);
  aspect-ratio: 109.1819 / 26.873;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 10%;
  margin-inline: auto;
  border-radius: 100px;
  color: #FFF;
  font-family: "garamond-premier-pro", serif;
  font-weight: 400;
  font-size: clamp(6px, 1.3vw, 8px);
  letter-spacing: 0;
  line-height: 1;
  padding-top: 3%;
}

.fade {
  opacity: 0;
  transition: opacity 1s ease;
}

.fade.show {
  opacity: 1;
}

.lp-contents {
  background-color: #fff4fa;
  color: #303f75;
  font-family: "source-han-sans-japanese", sans-serif;
  font-weight: 500;
}

.pc-bg {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  justify-content: space-between;
}

.pc-left {
  width: calc((100% - 550px) / 2);
  position: relative;
}

.pc-left-head {
  margin-top: 42%;
  margin-inline: auto;
  width: fit-content;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.pc-left-head img {
  width: 22%;
  display: block;
  transform: rotate(30deg);
}

.pc-left-head span {
  margin-top: 6%;
  font-family: "liana", script;
  font-weight: 400;
  font-size: clamp(30px, 2.2vw, 40px);
  letter-spacing: 0;
}

.pc-left-head p {
  margin-top: 6%;
  width: fit-content;
  font-size: clamp(10px, 0.8vw, 15px);
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  letter-spacing: -0.05em;
}

.pc-left-foot {
  position: absolute;
  bottom: 10%;
  left: 0;
  width: 100%;
}

.pc-left-foot p {
  text-align: center;
  font-family: "garamond-premier-pro", serif;
  font-weight: 700;
  font-size: clamp(16px, 1.5vw, 26px);
  letter-spacing: 0;
}

.pc-logo {
  width: 48%;
  margin-top: 5%;
  margin-inline: auto;
}

.pc-right {
  margin-top: 21%;
  width: calc((100% - 550px) / 2);
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.pc-right-link {
  margin-bottom: 13%;
}

.pc-right-link a {
  position: relative;
  padding-top: 13%;
}

.pc-right-link-title {
  width: fit-content;
  color: #303f75;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 300;
}

.pc-right-link-head {
  display: flex;
  justify-content: center;
  gap: 3%;
  position: absolute;
  top: 0;
  left: 0;
}

.pc-right-link-head img {
  width: 9%;
  transform: translateY(-35%);
}

.pc-right-link-head span {
  font-family: "liana", script;
  font-weight: 400;
  font-size: clamp(8px, 0.75vw, 14px);
}

.pc-all-items {
  margin-top: 2%;
  text-align: center;
}

.pc-all-items img {
  width: 22%;
}

.pc-all-items a {
  margin-top: 3%;
  width: fit-content;
  margin-inline: auto;
  color: #c1272d;
  position: relative;
  font-family: "garamond-premier-pro", serif;
  font-weight: 400;
  font-size: clamp(11px, 1.4vw, 21px);
  letter-spacing: -0.02em;
}

.pc-all-items a::before {
  content: "";
  width: 100%;
  height: 1px;
  border-top: 1px solid #c1272d;
  position: absolute;
  bottom: 0;
  left: 0;
}

.pc-all-items a::after {
  content: "";
  width: 100%;
  height: 1px;
  border-top: 1px solid #c1272d;
  position: absolute;
  bottom: -24%;
  left: 0;
}

.main-contents {
  margin-inline: auto;
  max-width: 550px;
  width: 100%;
  height: auto;
  overflow: hidden;
  z-index: 10;
  background-color: #FFF;
  position: relative;
}

@media (max-width: 1200px) {
  .pc-bg {
    display: none;
  }
}

.mv {
  position: relative;
  opacity: 0;
  transition: opacity 3s ease;
  transition-delay: 0.5s;
}

.mv.show {
  opacity: 1;
}

.mv a {
  position: relative;
  width: 106%;
  margin-left: -2%;
  margin-top: -4.4%;
  aspect-ratio: 1147.7685 / 1578.7987;
  overflow: hidden;
}

.mv-title {
  position: absolute;
  bottom: 14.8%;
  left: 26%;
  font-family: "liana", script;
  font-weight: 400;
  font-size: clamp(16px, 4.6vw, 26px);
  letter-spacing: 0.08em;
  color: #4d4d4d;
}

.intro {
  margin-top: 8%;
  text-align: center;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-size: clamp(8px, 2.8vw, 15px);
  letter-spacing: -0.07em;
  line-height: 1.7;
  color: #4d4d4d;
}

.navy-dress {
  margin-top: 26%;
}

.navy-dress-title {
  color: #303f75;
  position: relative;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 300;
  text-align: center;
  opacity: 1;
}

.navy-dress-title span {
  font-family: "liana", script;
  font-weight: 400;
  font-size: clamp(16px, 5vw, 26px);
}

.navy-dress-title .split-text span {
  margin-top: 3.5%;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 300;
  font-size: clamp(8px, 2vw, 12px);
  letter-spacing: 0.12em;
  opacity: 0;
  transition: opacity 0.5s ease;
}

.navy-dress-title .split-text.show span {
  opacity: 1;
}

.navy-dress-title::before {
  content: "";
  width: 21%;
  aspect-ratio: 234.067 / 217.0978;
  background: url(../images/ribbon.svg) center center / contain no-repeat;
  position: absolute;
  top: -188%;
  left: 4%;
  opacity: 0;
  transition: opacity 1s ease;
}

.navy-dress-title::after {
  content: "";
  width: 13%;
  aspect-ratio: 137.8867 / 165.3063;
  background: url(../images/strawberry.svg) center center / contain no-repeat;
  position: absolute;
  bottom: -134%;
  right: 3%;
  opacity: 0;
  transition: opacity 1s ease;
  transition-delay: 0.5s;
  z-index: 2;
}

.navy-dress-title.show::before,
.navy-dress-title.show::after {
  opacity: 1;
}

.navy-dress1-img {
  margin-top: 8%;
  width: 104%;
  margin-left: -2%;
}

.navy-dress2-img {
  margin-top: 9%;
  width: 102%;
  margin-left: -1%;
}

.navy-dress3 {
  margin-top: 11%;
  position: relative;
  opacity: 1;
}

.navy-dress3::before {
  content: "";
  width: 31.1%;
  aspect-ratio: 340.9723 / 363.3965;
  background: url(../images/strawberry-ribbon3.svg) center center / contain no-repeat;
  position: absolute;
  top: 1%;
  left: 6%;
  opacity: 0;
  transition: opacity 1s ease;
  z-index: 2;
  pointer-events: none;
}

.navy-dress3.show::before {
  opacity: 1;
}

.navy-dress3::after {
  content: "";
  width: 5%;
  aspect-ratio: 49.5559 / 50.505;
  background: url(../images/flower.svg) center center / contain no-repeat;
  position: absolute;
  top: 30.6%;
  left: 34%;
  transform: scaleX(-1) rotate(-62deg);
  opacity: 0;
  transition: opacity 1s ease;
  transition-delay: 0.5s;
  pointer-events: none;
}

.navy-dress3.show::after {
  opacity: 1;
}

.navy-dress3-text {
  margin-left: 45.5%;
  font-family: "garamond-premier-pro", serif;
  font-weight: 400;
  color: #303f75;
  font-size: clamp(10px, 3vw, 16px);
  letter-spacing: 0;
  line-height: 1.3;
}

.navy-dress3-img {
  margin-top: 4%;
  margin-left: 29%;
  position: relative;
  width: 67%;
}

.navy-dress3-img::before {
  content: "";
  width: 15%;
  aspect-ratio: 49.5559 / 50.505;
  background: url(../images/flower.svg) center center / contain no-repeat;
  position: absolute;
  bottom: 28%;
  left: -31%;
  opacity: 0;
  transition: opacity 1s ease;
  transition-delay: 1s;
}

.show .navy-dress3-img::before {
  opacity: 1;
}

.navy-dress3-img::after {
  content: "";
  width: 8%;
  aspect-ratio: 49.5559 / 50.505;
  background: url(../images/flower.svg) center center / contain no-repeat;
  position: absolute;
  bottom: -15.7%;
  left: -21%;
  transform: scaleX(-1) rotate(-67deg);
  opacity: 0;
  transition: opacity 1s ease;
  transition-delay: 1.5s;
}

.show .navy-dress3-img::after {
  opacity: 1;
}

.navy-dress3-price {
  margin-top: 8%;
}

.girly-dress {
  margin-top: 24%;
  position: relative;
}

.girly-dress::before {
  content: "";
  width: 20%;
  aspect-ratio: 212.8659 / 266.4304;
  background: url(../images/strawberry-ribbon2.svg) center center / contain no-repeat;
  position: absolute;
  top: -3.1%;
  right: 7%;
}

.girly-dress-title {
  color: #303f75;
  position: relative;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 300;
  text-align: center;
}

.girly-dress-title span{
  font-family: "liana", script;
  font-weight: 400;
  font-size: clamp(16px, 5vw, 26px);
}

.girly-dress-title .split-text span {
  margin-top: 3.5%;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 300;
  font-size: clamp(8px, 2vw, 12px);
  letter-spacing: 0.12em;
  opacity: 0;
  transition: opacity 0.5s ease;
}

.girly-dress-title .split-text.show span {
  opacity: 1;
}

.girly-dress1-img {
  margin-top: 4.7%;
  position: relative;
  width: 105%;
  margin-left: -2%;
}

.girly-dress1-img::before {
  content: "";
  width: 17%;
  aspect-ratio: 234.067 / 217.0978;
  background: url(../images/ribbon.svg) center center / contain no-repeat;
  position: absolute;
  top: -9%;
  left: 8%;
  transform: rotate(10deg);
  z-index: 2;
}

.girly-dress2 {
  margin-top: 12%;
  display: flex;
  padding-inline: 5%;
}

.girly-dress2-left {
  width: 33%;
  margin-top: 26%;
  padding-right: 6%;
}

.girly-dress2-left img {
  margin-inline: auto;
  width: 73%;
  display: block;
}

.girly-dress2-img {
  width: 67%;
}

.girly-dress2 .price {
  margin-top: 38%;
}

.girly-dress3 {
  margin-top: 11%;
  padding-inline: 6%;
  display: flex;
  position: relative;
  opacity: 1;
}

.girly-dress3::before {
  content: "";
  width: 4.4%;
  aspect-ratio: 46.0846 / 48.0964;
  background: url(../images/strawberry.svg) center center / contain no-repeat;
  position: absolute;
  top: 8%;
  right: 22.3%;
  transform: rotate(119deg);
  opacity: 0;
  transition: opacity 1s ease;
  transition-delay: 0.5s;
}

.show.girly-dress3::before {
  opacity: 1;
}

.girly-dress3-img {
  width: 68%;
}

.girly-dress3-price {
  width: 32%;
  display: flex;
  align-items: center;
  position: relative;
  padding-left: 5%;
  padding-bottom: 10%;
}

.girly-dress3-price::before {
  content: "";
  width: 11%;
  aspect-ratio: 49.5559 / 50.505;
  background: url(../images/flower.svg) center center / contain no-repeat;
  position: absolute;
  bottom: 37%;
  left: 79%;
  opacity: 0;
  transition: opacity 1s ease;
  transition-delay: 1s;
}

.show .girly-dress3-price::before {
  opacity: 1;
}

.girly-dress3-price::after {
  content: "";
  width: 25%;
  aspect-ratio: 74.5368 / 71.5801;
  background: url(../images/ribbon.svg) center center / contain no-repeat;
  position: absolute;
  bottom: 1%;
  left: 36%;
  transform: rotate(45deg);
  opacity: 0;
  transition: opacity 1s ease;
  transition-delay: 1.5s;
}

.show .girly-dress3-price::after {
  opacity: 1;
}

.movie {
  margin-top: 16%;
  text-align: center;
  background-color: #fff;
  color-scheme: normal;
  contain: paint;
}

.movie video {
  width: 82%;
  mix-blend-mode: normal;
  color-scheme: normal;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.girly-dress4 {
  margin-top: 10%;
  width: 105%;
  margin-left: -1%;
  position: relative;
}

.girly-dress4 a {
  position: relative;
}

.girly-dress4::before {
  content: "";
  width: 9.3%;
  aspect-ratio: 46.0846 / 48.0964;
  background: url(../images/strawberry.svg) center center / contain no-repeat;
  position: absolute;
  top: 4.8%;
  left: 12%;
  transform: rotate(-86deg);
  animation: yurayura 1s steps(2) infinite;
  z-index: 2;
  pointer-events: none;
}

@keyframes yurayura {
  0%   { rotate: 0deg; }
  100%  { rotate: 20deg; }
}

.girly-dress4::after {
  content: "";
  width: 10%;
  aspect-ratio: 49.5559 / 50.505;
  background: url(../images/flower.svg) center center / contain no-repeat;
  position: absolute;
  bottom: 11.5%;
  right: 13%;
  transform: rotate(50deg);
  animation: yurayura2 1s steps(2) infinite;
  pointer-events: none;
}

@keyframes yurayura2 {
  0%   { rotate: 20deg; }
  100%  { rotate: 0deg; }
}

.girly-dress4 a span {
  position: absolute;
  bottom: 7.2%;
  left: 26%;
  font-family: "garamond-premier-pro", serif;
  font-weight: 400;
  color: #303f75;
  font-size: clamp(8px, 3vw, 16px);
  letter-spacing: 0;
  line-height: 1.2;
}

.girly-dress5 {
  margin-top: 21%;
  position: relative;
  opacity: 1;
  padding-inline: 4%;
}

.girly-dress5::before {
  content: "";
  width: 27%;
  aspect-ratio: 74.5368 / 71.5801;
  background: url(../images/ribbon.svg) center center / contain no-repeat;
  position: absolute;
  top: -13%;
  right: 3%;
  transform: rotate(40deg);
  opacity: 0;
  transition: opacity 1s ease;
}

.show.girly-dress5::before {
  opacity: 1;
}

.girly-dress5 a.fade {
  opacity: 0;
  transform: translateY(5%);
  transition: opacity 1s ease, transform 1s ease;
}

.girly-dress5 a.fade.show {
  opacity: 1;
  transform: none;
}

.girly-dress5 a {
  position: relative;
}

.girly-dress5 a::before {
  content: "";
  width: 101%;
  aspect-ratio: 1006.7275 / 117.4141;
  background: url(../images/girly-dress5-text.svg) center center / contain no-repeat;
  position: absolute;
  top: 11%;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}

.girly-dress6 {
  margin-top: 6%;
  padding-left: 10%;
  padding-right: 3%;
  display: flex;
  position: relative;
  opacity: 1;
}

.girly-dress6::before {
  content: "";
  width: 32%;
  aspect-ratio: 340.9723 / 363.3965;
  background: url(../images/strawberry-ribbon3.svg) center center / contain no-repeat;
  position: absolute;
  top: 0;
  left: 7%;
  opacity: 0;
  transition: opacity 1s ease;
}

.show.girly-dress6::before {
  opacity: 1;
}

.girly-dress6-left {
  width: 45%;
  margin-top: 56%;
  display: flex;
  flex-direction: column;
  gap: 22%;
}

.girly-dress6-img {
  width: 55%;
}

.footer-info {
  margin-top: 23%;
  text-align: center;
  position: relative;
}

.footer-info::before {
  content: "";
  width: 10%;
  aspect-ratio: 102.0149 / 93.0717;
  background: url(../images/all-items.svg) center center / contain no-repeat;
  position: absolute;
  top: -17%;
  left: 50%;
  transform: translateX(-50%);
}

a.footer-all-items {
  color: #c1272d;
  position: relative;
  font-family: "garamond-premier-pro", serif;
  font-weight: 400;
  display: inline-block;
  font-size: clamp(11px, 3.8vw, 21px);
  letter-spacing: 0;
}

.footer-all-items::before {
  content: "";
  width: 100%;
  height: 1px;
  border-top: 1px solid #c1272d;
  position: absolute;
  bottom: 0;
  left: 0;
}

.footer-all-items::after {
  content: "";
  width: 100%;
  height: 1px;
  border-top: 1px solid #c1272d;
  position: absolute;
  bottom: -24%;
  left: 0;
}

.footer-img {
  margin-top: 13%;
  position: relative;
  width: 106%;
  margin-left: -2%;
  aspect-ratio: 1080 / 627.4;
  overflow: hidden;
}

.footer-sns {
  text-align: left;
  position: absolute;
  top: 7%;
  right: 0;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  color: #c1272d;
  width: 30%;
}

.footer-sns p {
  font-size: clamp(10px, 3.3vw, 18px);
  letter-spacing: 0.02em;
}

.footer-sns ul {
  margin-top: 9%;
  margin-left: 4%;
}

.footer-sns ul li {
  margin-top: 2%;
}

.footer-sns a {
  margin-top: 10%;
  margin-left: 4%;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  color: #c1272d;
  display: flex;
  align-items: center;
  letter-spacing: 0;
  gap: 5%;
  font-size: clamp(8px, 2vw, 10px);
}

.footer-sns  img {
  width: 11%;
}