/*====================================================================================================
//////////////////////////////////////////////////////////////////////////////////////////////////////

    version: 1.0
    created: 2026/10/20
    update : -

//////////////////////////////////////////////////////////////////////////////////////////////////////
====================================================================================================*/
@media (min-width: 1025px) {
  .pss-fair .pcHide {
    display: none;
  }
}
@media screen and (max-width: 1024px) {
  .pss-fair .spHide {
    display: none;
  }
}
.pss-fair .mv {
  color: #ffffff;
  text-align: center;
}
.pss-fair .mv .visual {
  position: relative;
}
.pss-fair .mv .bg img {
  width: 100%;
}
.pss-fair .mv .title {
  position: absolute;
  right: 0;
  left: 0;
}
.pss-fair .mv .title svg {
  display: block;
  margin-inline: auto;
  height: auto;
  aspect-ratio: 140/49.1;
  fill: #ffffff;
}
.pss-fair .mv .watch {
  position: absolute;
  left: 50%;
  translate: -50% 0;
}
.pss-fair .mv .inner {
  background-image: radial-gradient(65.906% 59.946% at 50% 50%, #314d6c, #263a50);
}
.pss-fair .mv .lead {
  margin-inline: auto;
  filter: drop-shadow(0 4px 20px rgba(0, 0, 0, 0.25));
}
.pss-fair .mv .lead span {
  display: block;
  background-image: linear-gradient(90deg, #fbcf00 0%, #fffcd1 25.02%, #faf2bf 31.02%, #efda92 41.02%, #dcb44b 56.02%, #d8aa38 60.02%, #f3e18b 87.02%, #fffcd1 100.02%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.pss-fair .mv .note {
  margin-block: min(24px, 6.1538461538vw) 0;
  font-size: 0.875rem;
  line-height: 2;
}
.pss-fair .mv .limited {
  padding-block: min(32px, 8.2051282051vw);
  background: #1f2b39;
  letter-spacing: 0.03em;
}
@media (min-width: 1025px) {
  .pss-fair .mv .title {
    top: 2.875vw;
  }
  .pss-fair .mv .title svg {
    width: min(194px, 12.125vw);
  }
  .pss-fair .mv .watch {
    top: 10.25vw;
    margin-inline-start: min(12.4px, 0.775vw);
  }
  .pss-fair .mv .watch img {
    width: min(325px, 20.3125vw);
  }
  .pss-fair .mv .inner {
    padding-block: min(160px, 10vw) min(80px, 5vw);
  }
  .pss-fair .mv .lead {
    max-width: min(1200px, 75vw);
  }
  .pss-fair .mv .lead .sub {
    font-size: 1.75rem;
    font-weight: 500;
    line-height: 1.25;
  }
  .pss-fair .mv .lead .main {
    font-size: 4rem;
    font-weight: 500;
    line-height: 1.25;
  }
  .pss-fair .mv .desc {
    margin-block: min(48px, 3vw) 0;
    font-size: 1.25rem;
    line-height: 2;
  }
  .pss-fair .mv .limited {
    font-size: 1.5rem;
    line-height: 1.25;
  }
}
@media screen and (max-width: 1024px) {
  .pss-fair .mv .title {
    top: 7.9487179487vw;
  }
  .pss-fair .mv .title svg {
    width: min(121px, 31.0256410256vw);
  }
  .pss-fair .mv .watch {
    top: 29.2307692308vw;
    margin-inline-start: min(9.5px, 2.4358974359vw);
  }
  .pss-fair .mv .watch img {
    width: min(213px, 54.6153846154vw);
  }
  .pss-fair .mv .inner {
    padding-block: min(96px, 24.6153846154vw) min(80px, 20.5128205128vw);
  }
  .pss-fair .mv .lead {
    width: fit-content;
  }
  .pss-fair .mv .lead .sub {
    font-size: 1.375rem;
    font-weight: 500;
    line-height: 1.25;
  }
  .pss-fair .mv .lead .main {
    font-size: 2.375rem;
    font-weight: 500;
    line-height: 1.25;
  }
  .pss-fair .mv .desc {
    margin-block: min(40px, 10.2564102564vw) 0;
    font-size: 1.125rem;
    line-height: 2;
  }
  .pss-fair .mv .limited {
    font-size: 0.9375rem;
    line-height: 1.25;
  }
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .pss-fair .mv .watch {
    top: 17.9487179487vw;
  }
  .pss-fair .mv .inner {
    padding-block-start: min(240px, 61.5384615385vw);
  }
}
.pss-fair .present {
  text-align: center;
}
.pss-fair .present .item:nth-of-type(1) {
  background-color: rgba(32, 54, 78, 0.1);
}
.pss-fair .present .item:nth-of-type(2) {
  background-color: rgba(32, 54, 78, 0.15);
}
.pss-fair .present .name {
  font-weight: 500;
}
.pss-fair .present .name span {
  display: inline-block;
}
.pss-fair .present .note {
  border-bottom: 1px solid #dcdcdc;
}
@media (min-width: 1025px) {
  .pss-fair .present .list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
  .pss-fair .present .item {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
    padding-block: min(110px, 6.875vw);
    padding-inline: min(20px, 1.25vw);
  }
  .pss-fair .present .name {
    font-size: 2rem;
    line-height: 1.75;
  }
  .pss-fair .present .name span {
    margin-block: 0 min(16px, 1vw);
    font-size: 1.25rem;
    line-height: 1.75;
  }
  .pss-fair .present figure {
    display: grid;
    place-items: center;
  }
  .pss-fair .present .item:nth-of-type(1) img {
    width: min(667px, 41.6875vw);
  }
  .pss-fair .present .item:nth-of-type(2) img {
    width: min(694px, 43.375vw);
  }
  .pss-fair .present .note {
    padding-block: min(40px, 2.5vw);
    font-size: 0.875rem;
    line-height: 2;
  }
}
@media screen and (max-width: 1024px) {
  .pss-fair .present .item {
    padding-block: min(55px, 14.1025641026vw) min(65px, 16.6666666667vw);
    padding-inline: min(20px, 5.1282051282vw);
  }
  .pss-fair .present .name {
    font-size: 1.25rem;
    line-height: 1.75;
  }
  .pss-fair .present .name span {
    margin-block: 0 min(10px, 2.5641025641vw);
    font-size: 1rem;
  }
  .pss-fair .present .note {
    padding-block: min(20px, 5.1282051282vw);
    padding-inline: min(20px, 5.1282051282vw);
    font-size: 0.75rem;
    line-height: 2;
  }
}
.pss-fair .stores .heading {
  text-align: center;
  font-weight: 700;
}
@media (min-width: 1025px) {
  .pss-fair .stores {
    margin-block: min(128px, 8vw) 0;
    margin-inline: auto;
    max-width: min(700px, 43.75vw);
  }
  .pss-fair .stores .heading {
    font-size: 2rem;
    line-height: 1.75;
  }
  .pss-fair .stores .list {
    margin-block: min(24px, 1.5vw) 0;
  }
  .pss-fair .stores .item:nth-of-type(n+2) {
    margin-block-start: min(50px, 3.125vw);
  }
}
@media screen and (max-width: 1024px) {
  .pss-fair .stores {
    margin-block: min(64px, 16.4102564103vw) 0;
    margin-inline: min(20px, 5.1282051282vw);
  }
  .pss-fair .stores .heading {
    font-size: 1.125rem;
    line-height: 1.75;
  }
  .pss-fair .stores .list {
    margin-block: min(20px, 5.1282051282vw) 0;
    margin-inline: auto;
    width: fit-content;
  }
  .pss-fair .stores .item:nth-of-type(n+2) {
    margin-block-start: min(30px, 7.6923076923vw);
  }
}
.pss-fair .banner .heading {
  text-align: center;
  font-weight: 700;
}
.pss-fair .banner .heading:lang(en) {
  font-family: "EB Garamond", serif;
  font-weight: 600;
  line-height: 1.55;
}
@media (min-width: 1025px) {
  .pss-fair .banner {
    margin-block: min(128px, 8vw);
    margin-inline: auto;
    max-width: min(1100px, 68.75vw);
  }
  .pss-fair .banner .heading {
    font-size: 2rem;
    line-height: 1.75;
  }
  .pss-fair .banner .link {
    margin-block: min(24px, 1.5vw) 0;
  }
  .pss-fair .banner .heading:nth-of-type(n+2) {
    margin-block-start: min(56px, 3.5vw);
  }
}
@media screen and (max-width: 1024px) {
  .pss-fair .banner {
    margin-block: min(64px, 16.4102564103vw);
    margin-inline: min(20px, 5.1282051282vw);
  }
  .pss-fair .banner .heading {
    font-size: 1.125rem;
    line-height: 1.75;
  }
  .pss-fair .banner .link {
    margin-block: min(16px, 4.1025641026vw) 0;
  }
  .pss-fair .banner .heading:nth-of-type(n+2) {
    margin-block-start: min(30px, 7.6923076923vw);
  }
}
