


.ui-v1 .uvb-flow{ padding-top: clamp(8px, 1vw, 16px); }
.ui-v1 .uvb-flow__list{
  max-width: 460px;
  margin: clamp(20px, 3vw, 32px) auto 0;
  padding: 0;
  list-style: none;
}
.ui-v1 .uvb-flow__step{
  padding: 10px 0;
  text-align: center;
}
.ui-v1 .uvb-flow__step + .uvb-flow__step::before{
  content: "↓";
  display: block;
  margin: 2px auto 10px;
  font-size: 13px;
  line-height: 1;
  color: var(--color-accent);
}
.ui-v1 .uvb-flow__num{
  display: block;
  margin-bottom: 4px;
  font-family: var(--font-serif-en, inherit);
  font-size: 13px;
  letter-spacing: .16em;
  color: var(--color-muted);
}
.ui-v1 .uvb-flow__text{
  font-family: var(--font-serif-jp);
  font-size: clamp(15px, 1.3vw, 17px);
  color: var(--color-text);
}
.ui-v1 .uvb-flow__triad{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  margin: 8px 0 0;
  padding: 14px 0;
  list-style: none;
  border-top: 1px solid var(--color-line-soft);
  border-bottom: 1px solid var(--color-line-soft);
}
.ui-v1 .uvb-flow__triad li{
  font-family: var(--font-serif-jp);
  font-size: clamp(14.5px, 1.2vw, 16px);
  color: var(--color-text-soft);
}
@media (min-width: 640px){
  .ui-v1 .uvb-flow__triad{
    flex-direction: row;
    justify-content: center;
    gap: clamp(24px, 4vw, 48px);
  }
}

.ui-v1 .uvb-flow__step--mirai{
  margin-top: 4px;
  padding-top: 22px;
  border-top: 1px solid var(--color-line);
}



.ui-v1 .sys-page #western .label,
.ui-v1 .sys-page #indian .label,
.ui-v1 .sys-page #four-pillars .label{
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .22em;
  
  color: var(--color-text);
}


.ui-v1 .method-page .mtd-triad section.section{
  padding-block: clamp(40px, 5vw, 64px);
}
@media (min-width: 1024px){
  .ui-v1 .method-page .mtd-triad{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
  }
  .ui-v1 .method-page .mtd-triad section.section{
    padding-block: clamp(48px, 5vw, 72px);
    padding-inline: clamp(20px, 2.5vw, 32px);
  }
}


.ui-v1 .method-page .cc-card__svg .mra-frame{ fill: none; stroke: var(--color-line); stroke-width: 1; }
.ui-v1 .method-page .cc-card__svg .mra-box{ fill: var(--color-bg); stroke: var(--color-text-soft); stroke-width: 1.2; }
.ui-v1 .method-page .cc-card__svg .mra-box--accent{ stroke: var(--color-accent); stroke-width: 1.2; }
.ui-v1 .method-page .cc-card__svg .mra-box--accent-lg{ stroke: var(--color-accent); stroke-width: 1.5; }
.ui-v1 .method-page .cc-card__svg .mra-line{ stroke: var(--color-line); stroke-width: 1; }
.ui-v1 .method-page .cc-card__svg .mra-line--accent{ stroke: var(--color-accent); stroke-width: 1; }
.ui-v1 .method-page .cc-card__svg .mra-line--dashed{ stroke: var(--color-accent); stroke-width: 1; stroke-dasharray: 3 5; }
.ui-v1 .method-page .cc-card__svg .mra-kicker{
  font-family: var(--font-serif-en);
  font-size: 11px;
  letter-spacing: .08em;
  fill: var(--color-accent);
  text-anchor: start;
}
.ui-v1 .method-page .cc-card__svg .mra-note{
  font-family: var(--font-serif-jp);
  font-size: 12.5px;
  fill: var(--color-muted);
  text-anchor: middle;
}
.ui-v1 .method-page .cc-card__svg .mra-label{
  font-family: var(--font-serif-jp);
  font-size: 14px;
  fill: var(--color-text-soft);
  text-anchor: middle;
}
.ui-v1 .method-page .cc-card__svg .mra-label--sm{ font-size: 13px; }
.ui-v1 .method-page .cc-card__svg .mra-label--lg{ font-size: 14.5px; fill: var(--color-text); }
.ui-v1 .method-page .cc-card__svg .mra-label--accent{ fill: var(--color-text); }


.ui-v1 .iv-viewer .cc-card__svg .mra-frame{ fill: none; stroke: var(--color-line); stroke-width: 1; }
.ui-v1 .iv-viewer .cc-card__svg .mra-box{ fill: var(--color-bg); stroke: var(--color-text-soft); stroke-width: 1.2; }
.ui-v1 .iv-viewer .cc-card__svg .mra-box--accent{ stroke: var(--color-accent); stroke-width: 1.2; }
.ui-v1 .iv-viewer .cc-card__svg .mra-box--accent-lg{ stroke: var(--color-accent); stroke-width: 1.5; }
.ui-v1 .iv-viewer .cc-card__svg .mra-line{ stroke: var(--color-line); stroke-width: 1; }
.ui-v1 .iv-viewer .cc-card__svg .mra-line--accent{ stroke: var(--color-accent); stroke-width: 1; }
.ui-v1 .iv-viewer .cc-card__svg .mra-line--dashed{ stroke: var(--color-accent); stroke-width: 1; stroke-dasharray: 3 5; }
.ui-v1 .iv-viewer .cc-card__svg .mra-kicker{
  font-family: var(--font-serif-en);
  font-size: 11px;
  letter-spacing: .08em;
  fill: var(--color-accent);
  text-anchor: start;
}
.ui-v1 .iv-viewer .cc-card__svg .mra-note{
  font-family: var(--font-serif-jp);
  font-size: 12.5px;
  fill: var(--color-muted);
  text-anchor: middle;
}
.ui-v1 .iv-viewer .cc-card__svg .mra-label{
  font-family: var(--font-serif-jp);
  font-size: 14px;
  fill: var(--color-text-soft);
  text-anchor: middle;
}
.ui-v1 .iv-viewer .cc-card__svg .mra-label--sm{ font-size: 13px; }
.ui-v1 .iv-viewer .cc-card__svg .mra-label--lg{ font-size: 14.5px; fill: var(--color-text); }
.ui-v1 .iv-viewer .cc-card__svg .mra-label--accent{ fill: var(--color-text); }


.ui-v1 .method-page .mtd-icon{
  display: block;
  
  width: 48px;
  height: 48px;
  margin: 0 auto 8px;
  color: var(--color-text-soft);
  fill: none;
  stroke: currentColor;
  stroke-width: 1.3;
  stroke-linecap: round;
  stroke-linejoin: round;
}


.ui-v1 .method-page .mtd-emblem{
  display: block;
  width: clamp(120px, 11vw, 160px);
  height: auto;
  margin: 4px auto 12px;
}


.ui-v1 .method-page .sys-chart__figure{
  overflow: visible;
}
.ui-v1 .method-page .sys-chart__figure img{
  width: 100%;
  max-width: 100%;
  height: auto;
}
@media (max-width: 640px){
  .ui-v1 .method-page .sys-chart__figure img{
    width: 100%;
    max-width: 100%;
  }
}


.ui-v1 .method-page .mtd-calc-block{
  margin-top: clamp(32px, 4vw, 48px);
  padding-top: clamp(32px, 4vw, 48px);
  border-top: 1px solid var(--color-line);
}
.ui-v1 .method-page .mtd-calc-block:first-of-type{
  margin-top: clamp(20px, 2.6vw, 28px);
  padding-top: 0;
  border-top: 0;
}


.ui-v1 .method-page .next-nav,
.ui-v1 .sys-page .next-nav,
.ui-v1 .examples-page .next-nav{
  margin-top: clamp(48px, 6vw, 72px);
}


.ui-v1 .examples-page section.section--ivory{
  padding-block: clamp(56px, 7vw, 108px);
}


.method-page .mtd-always { margin-top: clamp(56px, 8vw, 96px); }
.method-page .mtd-always > .body { margin-bottom: clamp(48px, 7vw, 80px); }


.ui-v1 .method-from-home{ margin: 0; padding: calc(var(--header-h) + 14px) var(--gutter) 0; font-size: 14px; }
.ui-v1 .method-return{ padding-top: clamp(40px, 5vw, 64px); padding-bottom: clamp(40px, 5vw, 64px); }
.ui-v1 .method-return .cta{ inline-size: auto; }

.ui-v1 .method-more{ margin: clamp(28px, 4vw, 40px) auto 0; max-width: 720px; border-top: 1px solid var(--color-line); border-bottom: 1px solid var(--color-line); }
.ui-v1 .method-more + .method-more{ margin-top: 0; border-top: 0; }
.ui-v1 .method-more__summary{ display: flex; align-items: baseline; justify-content: space-between; gap: 14px; padding: 18px 2px; cursor: pointer; list-style: none; font-family: var(--font-serif-jp); font-size: 16.5px; letter-spacing: .04em; color: var(--color-text); }
.ui-v1 .method-more__summary::-webkit-details-marker{ display: none; }
.ui-v1 .method-more__icon{ flex: 0 0 auto; color: var(--color-muted-soft); }
.ui-v1 .method-more[open] .method-more__icon{ transform: rotate(45deg); }
.ui-v1 .method-more__summary:focus-visible{ outline: 2px solid var(--color-focus); outline-offset: 2px; }
.ui-v1 .method-more__body{ padding: 0 2px 28px; }
.ui-v1 .method-more .home-method__arts{ margin: 0; display: grid; gap: 12px; }
.ui-v1 .method-more .home-method__art{ padding: 14px 18px; background: var(--color-bg); border: 1px solid var(--color-line); text-align: left; }
.ui-v1 .method-more .home-method__art dt{ font-family: var(--font-serif-jp); font-size: 16.5px; color: var(--color-text); }
.ui-v1 .method-more .home-method__art dd{ margin: 4px 0 0; font-size: 15.5px; line-height: 1.9; color: var(--color-text-soft); }
.ui-v1 .method-return__label{ text-align: center; }


.ui-v1 .uvb-flow__text + .uvb-flow__triad{ margin-top: 10px; }

.ui-v1 .method-page .mtd-merge{ margin-top: clamp(28px, 3.6vw, 44px); }

.ui-v1 .method-page .method-birth-time__note{ margin-top: clamp(28px, 3.6vw, 44px); }
.ui-v1 .method-page .method-birth-time__note + .split__cta{ margin-top: clamp(18px, 2.4vw, 26px); }

.ui-v1 .method-page .mtd-principles-lead{ margin-bottom: clamp(36px, 5vw, 60px); }


.ui-v1 .method-page .mr-flow{ padding-top: clamp(8px, 1vw, 16px); }
.ui-v1 .method-page .mr-flow__container{ max-width: calc(690px + var(--gutter) * 2); }
.ui-v1 .method-page .mr-sheet{ margin: clamp(20px, 3vw, 32px) auto 0; background: #faf7ef; color: #4e4438; padding: 48px 42px 0; font-family: var(--font-serif-jp); text-align: left; }
.ui-v1 .method-page .mr-sheet *{ box-sizing: border-box; }
.ui-v1 .method-page .mr-label{ margin: 0 0 13px; font-family: var(--font-serif-en); font-size: 13px; letter-spacing: .33em; color: #8f7856; text-align: center; }
.ui-v1 .method-page .mr-title{ margin: 0; font-family: var(--font-serif-jp); font-size: 27px; font-weight: 400; line-height: 1.6; letter-spacing: .08em; text-align: center; color: #4e4438; }
.ui-v1 .method-page .mr-rule{ display: flex; align-items: center; gap: 10px; margin: 21px auto 28px; max-width: 120px; color: #b29a70; }
.ui-v1 .method-page .mr-rule::before, .ui-v1 .method-page .mr-rule::after{ content: ""; height: 1px; background: #cbb891; flex: 1; }
.ui-v1 .method-page .mr-rule span{ width: 6px; height: 6px; border: 1px solid #b29a70; transform: rotate(45deg); }
.ui-v1 .method-page .mr-input{ margin: 0 0 23px; text-align: center; font-size: 14px; line-height: 1.8; color: #4e4438; }
.ui-v1 .method-page .mr-input small{ display: block; margin-top: 7px; font-size: 13px; color: #62584c; }
.ui-v1 .method-page .mr-steps{ margin: 0; padding: 0; list-style: none; }
.ui-v1 .method-page .mr-step{ padding: 24px 0; border-top: 1px solid #d8c8aa; display: grid; grid-template-columns: 35px minmax(0, 1fr); gap: 15px; }
.ui-v1 .method-page .mr-num{ font-family: var(--font-serif-en); font-size: 28px; font-weight: 400; line-height: 1.4; color: #a18a64; }
.ui-v1 .method-page .mr-step__body{ min-width: 0; }
.ui-v1 .method-page .mr-step__title{ margin: 0 0 9px; font-family: var(--font-serif-jp); font-size: 19px; font-weight: 500; line-height: 1.65; letter-spacing: .015em; color: #4e4438; }
.ui-v1 .method-page .mr-copy{ margin: 0; font-size: 14px; line-height: 1.95; color: #4e4438; }
.ui-v1 .method-page .mr-symbols{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; margin: 20px 0 0; padding: 0; list-style: none; }
.ui-v1 .method-page .mr-symbol{ min-width: 0; padding: 0 4px; text-align: center; font-size: 13px; line-height: 1.7; color: #4e4438; }
.ui-v1 .method-page .mr-symbol + .mr-symbol{ border-left: 1px solid #e0d6c3; }
.ui-v1 .method-page .mr-symbol img{ display: block; width: 56px; height: 56px; margin: 0 auto 9px; object-fit: contain; mix-blend-mode: multiply; }
.ui-v1 .method-page .mr-symbol small{ display: block; margin-top: 3px; font-family: var(--font-serif-en); font-size: 13px; letter-spacing: .08em; color: #8d7c64; }
.ui-v1 .method-page .mr-note{ margin: 12px 0 0; font-size: 13px; line-height: 1.8; color: #62584c; }
.ui-v1 .method-page .mr-step--personal{ margin: 0 -15px; padding: 25px 15px; background: #f2ece4; border-top: 1px solid #d8c8aa; }
.ui-v1 .method-page .mr-finish{ padding: 32px 0 23px; text-align: center; }
.ui-v1 .method-page .mr-finish__title{ margin: 0 0 8px; font-family: var(--font-serif-jp); font-size: 23px; font-weight: 400; letter-spacing: .09em; line-height: 1.6; color: #4e4438; }
.ui-v1 .method-page .mr-finish__text{ margin: 0; font-size: 13px; line-height: 1.8; color: #62584c; }
.ui-v1 .method-page .mr-photo{ margin: 0 -42px; }
.ui-v1 .method-page .mr-photo img{ display: block; width: 100%; height: auto; aspect-ratio: 1.45; object-fit: cover; object-position: center top;  }
.ui-v1 .method-page .mr-caption{ margin: 0; padding: 13px 8px 19px; font-size: 13px; letter-spacing: .06em; text-align: center; color: #62584c; }
@media (max-width: 479px){
  .ui-v1 .method-page .mr-flow__container{ padding-inline: 0; }
  .ui-v1 .method-page .mr-sheet{ padding: 32px 20px 0; }
  .ui-v1 .method-page .mr-title{ font-size: 22px; }
  .ui-v1 .method-page .mr-step{ gap: 10px; grid-template-columns: 27px minmax(0, 1fr); padding: 22px 0; }
  .ui-v1 .method-page .mr-step__title{ font-size: 17px; }
  .ui-v1 .method-page .mr-num{ font-size: 25px; }
  .ui-v1 .method-page .mr-symbols{ grid-column: 1 / -1; }
  .ui-v1 .method-page .mr-symbol{ font-size: 13px; padding: 0; }
  .ui-v1 .method-page .mr-symbol small{ font-size: 13px; letter-spacing: 0; }
  .ui-v1 .method-page .mr-step--personal{ margin: 0 -8px; padding: 22px 8px; }
  .ui-v1 .method-page .mr-photo{ margin: 0 -20px; }
}



.ui-v1 .method-page .page-hero .h-major + .body{ margin-top: clamp(22px, 3vw, 34px); }
.ui-v1 .method-page .mtd3__list{ list-style: none; margin: clamp(32px, 4.4vw, 56px) auto 0; padding: 0; display: grid; gap: clamp(32px, 5vw, 44px); max-width: 440px; text-align: center; }
.ui-v1 .method-page .mtd3__name{ margin: 0; font-family: var(--font-serif-jp); font-weight: 500; font-size: clamp(18px, 1.5vw, 21px); line-height: 1.6; letter-spacing: .04em; color: var(--color-text); }
.ui-v1 .method-page .mtd3__desc{ margin: 10px 0 0; font-size: 16px; line-height: 1.9; color: var(--color-text); text-align: left; text-wrap: pretty; }
@media (min-width: 900px){
  .ui-v1 .method-page .mtd3__list{ grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: none; gap: clamp(28px, 3.4vw, 48px); align-items: start; }
}
.ui-v1 .method-page .mtd3__more{ margin-top: clamp(40px, 5.4vw, 64px); }
.ui-v1 .method-page .mtd3__charts{ display: grid; gap: clamp(24px, 3.4vw, 40px); }
.ui-v1 .method-page .method-more__body > .sys-chart{ margin-top: 0; }
.ui-v1 .method-page .method-birth-time__links{ display: flex; flex-wrap: wrap; justify-content: center; gap: 0 28px; }
.ui-v1 .method-page .mtd-calc{ padding-top: 0; }
.ui-v1 .method-page .mtd-calc__lead{ margin: 0; text-align: center; }
.ui-v1 .method-page .mtd-calc .mtd-calc-block{ text-align: center; }
.ui-v1 .method-page .mtd-calc .mtd-calc-block .sys-tech-list{ margin-top: clamp(14px, 2vw, 20px); text-align: left; }
.ui-v1 .method-page .mtd-calc-notes{ max-width: 560px; margin: clamp(18px, 2.4vw, 26px) auto 0; text-align: left; }

.ui-v1 .method-page .body p,
.ui-v1 .method-page p.body,
.ui-v1 .method-page .method-more .home-method__art dd,
.ui-v1 .method-page .method-more .sys-tech-list li,
.ui-v1 .method-page .method-more .sys-detail__list dd{ color: var(--color-text); }


.ui-v1 .method-page .mtd-hero{ background: #faf7ef; padding-top: calc(var(--header-h) + clamp(28px, 4vw, 56px)); padding-bottom: clamp(32px, 4.4vw, 60px); }
.ui-v1 .method-page .mr-flow{ background: #FFFEFC; padding-top: clamp(28px, 3.6vw, 48px); padding-bottom: clamp(44px, 5.4vw, 76px); }
.ui-v1 .method-page .mr-flow .mr-sheet{ margin-top: 0; }
.ui-v1 .method-page .mtd3{ background: #FFFEFC; padding-top: clamp(8px, 1.4vw, 20px); padding-bottom: clamp(52px, 6.2vw, 88px); }
.ui-v1 .method-page .mtd-birth{ background: #F2F0EC; padding-top: clamp(48px, 6vw, 84px); padding-bottom: 0; } 
.ui-v1 .method-page .mtd-calc{ background: #F2F0EC; padding-top: 0; padding-bottom: clamp(52px, 6.2vw, 88px); }
.ui-v1 .method-page .mtd-end{ background: #faf7ef; padding-block: clamp(48px, 6vw, 84px); }
.ui-v1 .method-page .mtd-end__cta{ margin: 0; }

@media (max-width: 479px){
  .ui-v1 .method-page .mtd-hero{ padding-bottom: clamp(20px, 6vw, 28px); }
  .ui-v1 .method-page .mr-flow{ padding-top: 0; }
}

.ui-v1 .method-page .mtd3 .head-block, .ui-v1 .method-page .mtd-birth .head-block{ margin-bottom: clamp(18px, 2.4vw, 28px); }
.ui-v1 .method-page .mtd3__list{ margin-top: clamp(28px, 3.6vw, 44px); }
.ui-v1 .method-page .mtd3__more{ margin-top: clamp(32px, 4.2vw, 48px); }

.ui-v1 .method-page .mtd-lead{ text-align: left; }
.ui-v1 .method-page .mtd-lead p{ line-height: 1.9; text-wrap: pretty; }
.ui-v1 .method-page .method-birth-time__links{ justify-content: flex-start; margin-top: clamp(14px, 2vw, 20px); }
.ui-v1 .method-page .mtd-birth .method-more{ margin-top: clamp(24px, 3vw, 36px); }
.ui-v1 .method-page .mtd-calc .method-more{ margin-top: 0; border-top: 0; }

.ui-v1 .method-page .method-more{ border-top-color: #d8c8aa; border-bottom-color: #d8c8aa; }
.ui-v1 .method-page .mtd-calc .mtd-calc-block{ border-top-color: #d8c8aa; }
.ui-v1 .method-page .method-more .home-method__art{ border-color: #d8c8aa; }
.ui-v1 .method-page .mtd-calc .sys-detail__list div + div{ border-top-color: #e0d6c3; }

.ui-v1 .method-page .method-from-home{ background: #faf7ef; }
.ui-v1 .method-page .method-from-home:not([hidden]) + .mtd-hero{ padding-top: clamp(24px, 3.4vw, 40px); }
