@charset "utf-8";
/* CSS:  Drs_Miku20: Sweet Snow Set _ SNOW MIKU 2026 */
:root {
  /*color*/
  --c-blu-drk: #20365a;
  --c-red-drk: #c34098;
  --c-sm26-red: #d2718a;
  --c-sm26-pink: #EF8FB4;
  --c-sm26-bwn: #855E66;
  --c-sm26-blu: #47c2cc;
  --c-sm26-yel: #ffee69;
  --c-sm26-link-def: #FFAE5E;
  --c-sm26-key-border: #ae838c;
  --c-sm26-news-bg-pnk: #f4b0c9;
  --c-sm26-news-bg-blu: #6eccd6;
  --c-sm26-article-fil: #EFE6D8;
  --c-sm26-txt-main: #6c727c;
  --c-sm26-txt-back: #C34098;
  --c-sm26-intro-bwn01: #9E7A7A;
  --c-sm26-intro-bwn02: #8e6a72;
  --c-sm26-bs-cmn: 0 0 7px 1px #efe6d8;
  /*font-size*/
  --fs: min(2.114vw,1rem);
  --rs: clamp(0.5rem, 1.042vw, 1rem);
}
/*-------------------------------
 Drs_Miku 20 _ base
---------------------------------*/
a,
a:hover{
  color: var(--c-sm26-link-def);
}
a:hover {
  text-decoration: underline;
}
a.linkButton {
  width: min(94%,64rem);
  padding: calc(var(--fs) * 1.8) 1em;
  margin: 0 auto;
  background: var(--color-link-cmn);
  border-radius: calc(var(--fs) * 6);
  color: #fff;
  font-size: calc(var(--fs) * 1.6);
  text-align: center;
  display: block;
}
a.linkButton.linkButton-anchorLink {
  background: var(--color-link-cmn-pnk);
}
a.linkButton:hover {
  color: #fff;
  filter: brightness(1.1);
}
p:has(a.linkButton) {
  margin-top: 1.5em;
}
/*link banner*/
.link-bnr {
  margin: 0.5em auto;
  background: #fff;
  box-shadow: var(--c-sm26-bs-cmn) 
}
figure.link-bnr figcaption {
  padding: 0.5em 1em;
  color: var(--c-sm26-txt-main);
  font-size: calc(var(--fs) * 1.0 + var(--rs) * 1.0);
  line-height: 1.4;
}
.link-bnr-arrw {
  padding: 0.5em;
  color: var(--c-sm26-link-def);
  display: inline-block;
}
.link-bnr-arrw::after {
  content: "\f054";
  margin-left: 0.25em;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
}
/*-------------------------------
 Drs_Miku 20
---------------------------------*/
#DrsMiku20Wrap {
  width: 100%;
  padding: 0 0 calc(var(--rs) * 8);
  background:
    url("/dd/special/piapro/image/event/ev_sm2026/bg_main03.png") 100% 60% / 100% auto repeat,
    url("/dd/special/piapro/image/event/ev_sm2026/bg_main02.png") 50% 50% / 100% auto repeat-y,
    url("/dd/special/piapro/image/event/ev_sm2026/bg_main01.png") 50% 50% / 100% auto repeat-y,
    #fefbf5
  ;
  color: var(--c-sm26-txt-main);
  font-family: "Zen Maru Gothic", "Noto Sans JP","sans-serif";
  line-height: 1.6;
  position: relative;
}
/*content*/
.DrsMiku20-content {
  width: min(100%, 96rem);
  margin: 0 auto;
  container-type: inline-size;
  position: relative;
}
.DrsMiku20-content + .DrsMiku20-content {
  margin-top: calc(var(--rs) * 2);
}
/*content inner*/
.DrsMiku20-contentInner{
  width: min(87.5%, 84rem);
  padding: 1em 0;
  margin: 0 auto;
}
/*-------------------------------
 Drs_Miku 20 _ top image
---------------------------------*/
#DrsMiku20Top {
  
}
#cntPrdctTopImg {
  width: 100%;
  margin-bottom: -52%;
  box-shadow: 0 0 100px 50px #fefbf5;
  position: relative;
  z-index: 0;
}
#cntPrdctTopImg::after {
  content: "";
  width: 100%;
  height: 55%;
  background: linear-gradient(0deg, #fefbf5 0%, transparent 100%);
  position: absolute;
  left: 0;
  bottom: 0;
}
/*teaser title*/
#DrsMiku20-tsr-title {
  width: 100%;
  text-align: center;
  filter: drop-shadow(0 0 5px #fff) drop-shadow(0 0 10px #fff) drop-shadow(0 0 15px #fff) drop-shadow(0 0 20px #fff);
  position: relative;
}
.tsr-title {
  margin-bottom: calc(var(--rs) * 1);
  color: var(--c-sm26-red);
  font-size: 4cqw;
  line-height: 1.1;
  text-shadow: 0 0 1px #fff, 0 0 5px #fff;
}
/*-------------------------------
 Drs_Miku 20 _ container
---------------------------------*/
.DrsMiku20-container {
  width: 100%  ;
  padding: 1em 0;
  margin: 1em auto;
  background: #fff;
  border-radius: calc(var(--rs) * 2);
  box-shadow: var(--c-sm26-bs-cmn), var(--c-sm26-bs-cmn);
  position: relative;
}
/*content text*/
.cont-text {
  padding: 0.25em 1.5em;
  font-size: calc(var(--rs) * 3);
  font-weight: bold;
  line-height: 1.6;
}
.cont-text > strong {
  color: var(--c-sm26-red);
  font-size: 125%;
}
/*-------------------------------
 Drs_Miku 20 _ content
---------------------------------*/
.cont-title {
  color: var(--c-sm26-intro-bwn02);
  font-family: "Arial", Gadget, "sans-serif";
  font-size: calc(var(--fs) * 2 + var(--rs) * 3);
  text-align: left;
}
/*event info*/
.cont-eventInfo {
  font-size: calc(var(--fs) * 1 + var(--rs) * 1.6);
  font-weight: bold;
  text-align: left;
}