@charset "UTF-8";

.shouhinWrap {
   display: none;
}

.aliceLiddell {
   display: block;
}

/* Scene 1 arrangement, story/event decoration and XD-specific compatibility.
   Image crop and per-image aspect ratios remain unchanged in index.html. */
.alicePage .imageRight {
   grid-template-columns: minmax(0, 1fr) minmax(0, .9fr);
}

.alicePage .imageRight>.imageFrame {
   grid-column: 2;
   grid-row: 1;
}

.alicePage .imageRight>.detailText {
   grid-column: 1;
   grid-row: 1;
}

.alicePage .wideImage {
   grid-template-columns: 1fr;
}

.alicePage .wideImage>.detailText {
   display: grid;
   grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
   column-gap: 35px;
   margin-top: 12px;
}

.alicePage .wideImage .detailHeading {
   grid-column: 2;
   grid-row: 1;
   text-align: right;
}

.alicePage .wideImage .detailCopy {
   grid-column: 1;
   grid-row: 1;
}

.alicePage .wideImage .detailNumber {
   grid-column: 2;
   text-align: right;
}

.alicePage .wideImage .detailTitle {
   grid-column: 2;
   text-align: right;
}

.alicePage .wideImage :is(.detailSubtitle, .detailMotif),
.alicePage .wideImage .detailBody {
   grid-column: 1;
}

.alicePage .wideImage .detailBody {
   grid-row: 1 / span 5;
   padding-top: 10px;
}

.alicePage .crownDetail .crownOrnament {
   width: 140px;
   max-width: 100%;
   margin: 24px 12px 0 auto;
}

.alicePage .ringClosing {
   text-align: center;
   font-size: 17px;
   margin-top: 55px;
}

.alicePage .poemText {
   text-align: center;
   font-size: 15px;
   line-height: 2.5;
   letter-spacing: .06em;
}

.alicePage .storyFlower {
   width: 165px;
   margin: 45px auto 0;
}

.alicePage .wearAccordionBtn span[data-xd-id] {
   display: inline;
}

.alicePage .eventContainer {
   text-align: center;
}

.alicePage .eventHeading {
   color: var(--alice-red);
   font-size: 25px;
   margin-bottom: 8px;
}

.alicePage .eventDate {
   color: var(--alice-gold);
   font-size: 55px;
   line-height: 1.4;
   margin: 25px 0;
}

.alicePage .eventName {
   color: var(--alice-red);
   font-size: 28px;
   margin: 20px 0;
}

.alicePage .eventText {
   font-size: 14px;
   line-height: 2.1;
   margin: 35px 0;
}

.alicePage .eventContainer>.placeholder {
   width: 79%;
   margin: 40px auto 25px;
}

.alicePage .eventPending {
   font-size: 12px;
}

.alicePage .closing {
   text-align: center;
   margin-top: 80px;
   font-size: 15px;
   line-height: 2;
}

.alicePage .closingEnglish {
   color: var(--alice-red);
   font-size: 25px;
}

.alicePage .brandName {
   font-size: 24px;
   margin-top: 30px;
}

@media screen and (max-width:587px) {
   .alicePage .wideImage>.detailText {
      column-gap: 18px;
   }

   .alicePage .poemText {
      font-size: 12px;
   }

   .alicePage .eventName {
      font-size: 22px;
   }

   .alicePage .eventText {
      font-size: 12px;
   }

   .alicePage .eventPending {
      font-size: 11px;
   }

   .alicePage .closingEnglish {
      font-size: 22px;
   }

}

/* Scene 1 mobile arrangement. Per-photo aspect ratios stay the same as PC. */
@media screen and (max-width:587px) {
   #mainTop.alicePage .crownDetail .crownOrnament {
      width: 96px;
      max-width: 100%;
      margin: 12px auto 20px;
      order: 4;
      flex-shrink: 0;
   }

   #mainTop.alicePage .crownDetail .detailBody {
      order: 5;
   }

   #mainTop.alicePage .wideImage>.detailText {
      display: flex;
      flex-direction: column;
      margin-top: 0;
   }

   #mainTop.alicePage .wideImage :is(.detailHeading, .detailCopy, .detailNumber, .detailTitle, .detailSubtitle, .detailMotif, .detailBody) {
      grid-column: auto;
      grid-row: auto;
      text-align: center;
   }

   #mainTop.alicePage .wideImage .detailBody {
      padding-top: 0;
   }

   #mainTop.alicePage .productDetail .imageFrame:has(picture) picture {
      display: contents;
   }

   #mainTop.alicePage .productDetail .imageFrame:has(picture) img {
      width: 100% !important;
      height: 100% !important;
      left: 0 !important;
      top: 0 !important;
      transform: none !important;
      transform-origin: center !important;
      object-fit: cover;
   }

   /* ハート */
   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/ring_1.webp"]) {
      border-radius: 50%;
      clip-path: none;
   }

   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/ring_1.webp"]) img {
      object-position: 50% 52%;
   }

   /* 時計 */
   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/ring_2.webp"]) {
      border-radius: 0;
   }

   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/ring_2.webp"]) img {
      object-position: 50% 50%;
   }

   /* 王冠 */
   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/ring_3.webp"]) {
      border-radius: 0;
      clip-path: none;
   }

   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/ring_3.webp"]) img {
      object-position: 50% 50%;
   }

   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/ring_3.webp"])::after {
      content: none;
   }

   /* クローバー */
   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/ring_4.webp"]) {
      border-radius: 0;
      clip-path: none;
   }

   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/ring_4.webp"]) img {
      object-position: 50% 50%;
   }

   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/ring_4.webp"])::after {
      content: none;
   }

   /* 白兎 */
   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/ring_5.webp"]) {
      border-radius: 50%;
      clip-path: none;
   }

   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/ring_5.webp"]) img {
      object-position: 50% 47%;
   }

   /* リボン × 青い光（寒色） */
   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/ring_6.webp"]) {
      border-radius: 0;
   }

   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/ring_6.webp"]) img {
      object-position: 50% 50%;
   }

   /* スカート刺繍 */
   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/skirt_3.webp"]) {
      border-radius: 0;
   }

   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/skirt_3.webp"]) img {
      object-position: 50% 50%;
   }

   /* 柄入りベルベットと金具 */
   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/pumps_2.webp"]) {
      border-radius: 0;
      clip-path: none;
   }

   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/pumps_2.webp"]) img {
      object-position: 63% 50%;
   }

   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/pumps_2.webp"])::after {
      content: none;
   }

   /* フリルカットインソール */
   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/pumps_4.webp"]) {
      border-radius: 0;
      clip-path: none;
   }

   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/pumps_4.webp"]) img {
      object-position: 50% 50%;
   }

   #mainTop.alicePage .productDetail .imageFrame:has(img[src="https://maylaclassic.com/maylaclassique/main/collection/aliceLiddell/aliceLiddell_scene1/img/pumps_4.webp"])::after {
      content: none;
   }

   #mainTop.alicePage .ringClosing {
      font-size: 16px;
      line-height: 2;
      margin-top: 36px;
   }

   #mainTop.alicePage .eventName {
      font-size: 20px;
      line-height: 1.6;
      overflow-wrap: normal;
      word-break: normal;
      line-break: strict;
      text-wrap: balance;
   }
}

/* Okiros Flos: decorative canvas; the original image remains the fallback. */
#mainTop.alicePage .storyEyeCanvas {
   position: absolute;
   inset: 0;
   width: 100%;
   height: 100%;
   pointer-events: none;
}

#mainTop.alicePage .storyEyeCanvas[hidden] {
   display: none;
}

#mainTop.alicePage .storyFlower:has(> .storyEyeCanvas:not([hidden]))>img {
   opacity: 0;
}

/* Scene text checked against the second board of the latest XD. */
#mainTop.alicePage .storySection .poemText {
   font-family: var(--alice-jp);
   color: #322c30;
   font-size: 14px;
   line-height: 2.2;
}

#mainTop.alicePage .ringSection .ringClosing {
   font-family: var(--alice-jp);
   color: #322c30;
}

#mainTop.alicePage .eventSection :is(.eventText, .closing) {
   font-family: var(--alice-jp);
   color: #322c30;
   font-size: 14px;
   line-height: 2;
}

#mainTop.alicePage .eventSection .eventHeading {
   font-family: var(--alice-en);
   color: #641b2c;
   font-weight: 400;
}

#mainTop.alicePage .eventSection .eventDate {
   font-family: Girassol, var(--alice-en);
   color: #947147;
   font-style: normal;
}

#mainTop.alicePage .eventSection :is(.eventName, .closingEnglish) {
   font-family: var(--alice-en);
   color: #641b2c;
   font-style: italic;
   font-weight: 400;
}

#mainTop.alicePage .eventSection .brandName {
   font-family: var(--alice-en);
   color: #322c30;
   font-weight: 400;
}

@media screen and (max-width:587px) {
   #mainTop.alicePage .storySection .poemText {
      font-size: 12px;
   }

   #mainTop.alicePage .eventSection :is(.eventText, .closing) {
      font-size: 12px;
   }
}

/* Ring decorations exported from the original XD; retain its pale colours. */
#mainTop.alicePage .crownDetail .crownOrnament {
   opacity: 0.21000699698925018;
}

#mainTop.alicePage .ringOrnament {
   float: right;
   width: 26%;
   max-width: 100px;
   margin: 0 0 15px 12px;
   pointer-events: none;
}

#mainTop.alicePage .ringOrnament img {
   display: block;
   width: 100%;
   height: auto;
}

#mainTop.alicePage .cloverOrnament {
   width: 32%;
   max-width: 120px;
}

#mainTop.alicePage .clockOrnament {
   float: none;
   width: 24%;
   max-width: 86px;
   margin: 15px 0 0 auto;
}

#mainTop.alicePage .ringDecorated .detailText::after {
   content: "";
   display: table;
   clear: both;
}

#mainTop.alicePage .ringDecorated .detailBody {
   clear: both;
}

@media screen and (max-width:587px) {
   #mainTop.alicePage .ringOrnament {
      float: none;
      width: 80px;
      max-width: 100%;
      margin: 12px auto 20px;
      order: 4;
      flex-shrink: 0;
   }

   #mainTop.alicePage .cloverOrnament {
      width: 88px;
   }

   #mainTop.alicePage .clockOrnament {
      width: 64px;
      order: 6;
   }

   #mainTop.alicePage .ringDecorated .detailBody {
      order: 5;
   }
}

/* Detail 02: XD photo/text balance and clock below the right-hand photo. */
@media screen and (min-width:588px) {
   #mainTop.alicePage .clockDetail {
      grid-template-columns: minmax(0, 1fr) minmax(0, 1.067fr);
      grid-template-rows: min-content 1fr;
      row-gap: 0;
   }

   #mainTop.alicePage .clockDetail>.detailText {
      grid-column: 1;
      grid-row: 1 / span 2;
      padding-top: 9.5%;
   }

   #mainTop.alicePage .clockDetail>.clockOrnament {
      grid-column: 2;
      grid-row: 2;
      justify-self: end;
      width: 26.85%;
      max-width: none;
      margin: 7.12% 2.80% 0 0;
   }
}

@media screen and (max-width:587px) {
   #mainTop.alicePage .clockDetail>.detailText {
      padding-bottom: 0;
   }

   #mainTop.alicePage .clockDetail>.clockOrnament {
      grid-column: auto;
      grid-row: auto;
      order: 2;
      width: 64px;
      max-width: 100%;
      margin: 12px auto 40px;
   }
}

/* All 13 Details: latest XD run hierarchy, scaled to the Bilitis body sizes. */
/* Adobe web family for the Ten Mincho text roles confirmed in the latest XD. */
#mainTop.alicePage {
   --alice-jp: "ten-mincho", "Noto Serif JP", serif;
}

#mainTop.alicePage :is(.introText, .poemText, .detailBody, .colorCaptionDescription, .colorCaptionName, .colorCaptionCatch, .ringClosing) {
   font-family: var(--alice-jp);
   font-weight: 400;
   font-style: normal;
}

@media screen and (min-width:588px) {
   #mainTop.alicePage .wideImage>.detailText {
      grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
   }
}

#mainTop.alicePage .productDetail .detailTitle .copyKeep {
   white-space: nowrap;
}

#mainTop.alicePage .seriesSection .productDetail .detailNumber {
   font-size: 35px;
   line-height: 1.2;
   letter-spacing: 0;
}

#mainTop.alicePage .seriesSection .productDetail .detailNumber .detailNumberPrefix {
   font-size: calc(63em / 83);
   vertical-align: baseline;
}

#mainTop.alicePage .seriesSection .productDetail .detailTitle {
   font-size: 28px;
   line-height: 1.5;
   letter-spacing: .03em;
   overflow-wrap: normal;
   word-break: normal;
   line-break: strict;
   text-wrap: balance;
}

#mainTop.alicePage .seriesSection .productDetail .detailTitleEnglish {
   font-size: 30px;
   font-weight: 700;
   letter-spacing: .02em;
}

#mainTop.alicePage .seriesSection .productDetail .detailTitle span {
   font-size: inherit;
   line-height: inherit;
   letter-spacing: inherit;
}

#mainTop.alicePage .seriesSection .productDetail .detailTitle .detailTitleLead {
   font-size: 17px;
}

#mainTop.alicePage .seriesSection .productDetail :is(.detailSubtitle, .detailMotif) {
   font-size: 13px;
   line-height: 1.8;
   letter-spacing: .03em;
}

@media screen and (max-width:587px) {
   #mainTop.alicePage .seriesSection .productDetail .detailNumber {
      font-size: 30px;
   }

   #mainTop.alicePage .seriesSection .productDetail .detailTitle {
      font-size: 24px;
   }

   #mainTop.alicePage .seriesSection .productDetail .detailTitleEnglish {
      font-size: 26px;
   }

   #mainTop.alicePage .seriesSection .productDetail .detailTitle .detailTitleLead {
      font-size: 14px;
   }

   #mainTop.alicePage .seriesSection .productDetail :is(.detailSubtitle, .detailMotif) {
      font-size: 12px;
      letter-spacing: .07em;
   }
}

/* Remove only the Story section background. */
#mainTop.alicePage section#story.storySection {
   background: transparent;
}

/* Wear intro: keep the full sentence within the content area. */
#mainTop.alicePage #wearing>.productIntro {
   width: 90%;
}

#mainTop.alicePage #wearing .introTitle .copyPhrase {
   display: inline-block;
   max-width: 100%;
   vertical-align: top;
}

/* Wear product labels and names match the Alice colour and text family. */
#mainTop.alicePage #wearing .wearProductItem .productCategory {
   background-color: var(--alice-red);
}

#mainTop.alicePage #wearing .wearProductItem .productInfo p {
   font-family: "ten-mincho", serif;
   font-weight: 400;
   font-style: normal;
}

/* The same breathing space between each product visual and its details. */
#mainTop.alicePage .productSection>.productContainer {
   margin-top: 75px;
}

@media screen and (max-width:587px) {
   #mainTop.alicePage .productSection>.productContainer {
      margin-top: 40px;
   }
}

/* Ring six Details: latest XD 2026-10-06; body scale 14 / 12 from Bilitis. */
#mainTop.alicePage .ringSection .productDetail {
   column-gap: 28px;
   --ring-body-size: 14px;
   --ring-title-size: 30px;
   --ring-title-gap: 20px;
   --ring-body-gap: 54px;
}

#mainTop.alicePage .ringSection .productDetail:has(.detailNumber[data-xd-id="6b12933c-1cfe-4cec-8649-2b74c0d92476"]) {
   --ring-body-gap: 136px;
}

#mainTop.alicePage .ringSection .productDetail.crownDetail {
   --ring-body-gap: 22px;
}

#mainTop.alicePage .ringSection .productDetail .detailTitleEnglish {
   font-size: var(--ring-title-size);
   line-height: calc(68 / 54);
   letter-spacing: 0;
   margin: 0 0 var(--ring-title-gap);
}

#mainTop.alicePage .ringSection .productDetail .detailSubtitle {
   font-size: calc(var(--ring-body-size) * 28 / 25);
   line-height: 1.7;
   letter-spacing: 0;
   margin: 0 0 0;
}

#mainTop.alicePage .ringSection .productDetail .detailMotif {
   font-size: var(--ring-body-size);
   line-height: 1.7;
   letter-spacing: 0;
   margin: 0;
}

#mainTop.alicePage .ringSection .productDetail .detailBody {
   font-size: var(--ring-body-size);
   line-height: 2.08;
   letter-spacing: 0;
   margin: var(--ring-body-gap) 0 0;
   padding-top: 0;
   overflow-wrap: normal;
   word-break: normal;
   line-break: strict;
}

#mainTop.alicePage .ringSection .productDetail .detailBody .copyLine {
   display: block;
   margin: 0;
   padding: 0;
   white-space: normal;
   text-wrap: pretty;
   font: inherit;
   letter-spacing: inherit;
}

#mainTop.alicePage .copyDash {
   display: inline-block;
   font: inherit;
   line-height: 1;
   letter-spacing: 0;
   position: relative;
   width: 2em;
   height: 1em;
   vertical-align: -.12em;
   white-space: nowrap;
   color: inherit;
   -webkit-text-fill-color: transparent;
   text-shadow: none;
}

#mainTop.alicePage .copyDash::after {
   content: "";
   position: absolute;
   left: 0;
   right: 0;
   top: 50%;
   border-top: 1px solid currentColor;
}

@media screen and (min-width:588px) {
   #mainTop.alicePage .ringSection .crownDetail .detailSubtitle {
      margin-top: var(--ring-title-gap);
   }
}

@media screen and (max-width:587px) {
   #mainTop.alicePage .ringSection .productDetail {
      --ring-body-size: 12px;
      --ring-title-size: 26px;
      --ring-title-gap: 17px;
      --ring-body-gap: 46px;
   }

   #mainTop.alicePage .ringSection .productDetail.crownDetail {
      --ring-body-gap: 46px;
   }

   #mainTop.alicePage .ringSection .productDetail:has(.detailNumber[data-xd-id="6b12933c-1cfe-4cec-8649-2b74c0d92476"]) {
      --ring-body-gap: 46px;
   }

   #mainTop.alicePage .ringSection .productDetail .detailBody {
      order: 4;
   }

   #mainTop.alicePage .ringSection .productDetail :is(.cloverOrnament, .rabbitOrnament, .crownOrnament) {
      order: 6;
   }

   #mainTop.alicePage .ringSection .crownDetail .detailSubtitle {
      margin-top: 0;
   }
}

/* Keep short grammatical phrases together within the narrowest detail column. */
#mainTop.alicePage .ringSection .productDetail .detailBody .copyKeep {
   font: inherit;
   letter-spacing: inherit;
   white-space: nowrap;
}

@media screen and (min-width:588px) {
   #mainTop.alicePage .ringSection .ringDecorated>.detailText {
      position: relative;
   }

   #mainTop.alicePage .ringSection .rabbitOrnament {
      position: absolute;
      float: none;
      top: -40px;
      right: 0;
      margin: 0;
   }
}

/* Unfinished 06: full-width centered copy beneath the PC photo and heading. */
#mainTop.alicePage .ringSection .productDetail.unfinishedDetail .detailBody {
   text-align: center;
}

@media screen and (min-width:588px) {
   #mainTop.alicePage .ringSection .productDetail.unfinishedDetail>.detailText {
      display: contents;
   }

   #mainTop.alicePage .ringSection .productDetail.unfinishedDetail .detailHeading {
      display: block;
      grid-column: 2;
      grid-row: 1;
      align-self: center;
      padding: 24px 0;
   }

   #mainTop.alicePage .ringSection .productDetail.unfinishedDetail .detailCopy {
      display: block;
      grid-column: 1 / -1;
      grid-row: 2;
   }

   #mainTop.alicePage .ringSection .productDetail.unfinishedDetail .detailBody {
      margin-top: 50px;
   }
}

/* Intro dash: optically centred in the actual Ten Mincho glyphs. */
#mainTop.alicePage .introTitle .copyDash {
   vertical-align: middle;
}

#mainTop.alicePage .introTitle .copyDash::after {
   top: calc(50% - .15em);
}

/* Crown detail: XD lines can use both columns on PC; mobile wraps remain unchanged. */
@media screen and (min-width:588px) {
   #mainTop.alicePage .ringSection .crownDetail .detailCopy {
      grid-column: 1 / -1;
   }
}