/* おみくじ本体パーツ */
.fortune {
  box-sizing: border-box;
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(2px);
  display: block;
  position: relative;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  font-style: normal;
  filter: drop-shadow(0 4px 4px #8888);
}
.fortune__headArea {
  padding: 1rem 2rem;
  background: linear-gradient(rgba(255, 255, 255, 0), rgba(192, 192, 192, 0.1));
}
.fortune__bodyArea {
  padding: 2rem 1rem;
}
.fortune__headBox {
  border: 3px double #890106;
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-around;
  align-items: center;
}
.fortune__lotNumber {
  writing-mode: vertical-rl;
  transform: rotate(90deg);
}
.fortune__lotNumber__digits {
  display: inline-block;
  transform: rotate(-90deg);
}
.fortune__head {
  writing-mode: vertical-rl;
  transform: rotate(90deg);
  font-family: "Yuji Syuku", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: x-large;
}
.fortune__bodyBox {
  border: 6px double #890106;
  padding: 4px;
}
.fortune__titleBox {
  border-top: 2px solid #890106;
  border-bottom: 2px solid #890106;
  margin: 8px 0;
  padding: 4px 0;
  display: flex;
  justify-content: space-around;
  align-items: center;
}
.fortune__titleBox__title {
  font-size: x-large;
  font-weight: 700;
}
.fortune__overviewContainer {
  margin: 1em 4px 0 4px;
  display: flex;
  justify-content: center;
}
.fortune__overviewContent {
  height: 6em;
  writing-mode: vertical-rl;
  line-height: 1.7em;
  font-size: large;
}
.fortune__detailsContainer {
  margin: 1rem 4px;
  display: flex;
  justify-content: center;
}
.fortune__detailsContent {
  max-width: 100%;
  height: 16em;
  writing-mode: vertical-rl;
  line-height: 1.5em;
  font-size: medium;
}
/* おみくじ運勢項目パーツ */
.detailFortune {
  display: flex;
  justify-content: left;
}
.detailFortune__label {
  flex-shrink: 0;
}
.detailFortune__label::after {
  content: "：";
}
/* タイトルフキダシパーツ */
.titleBalloon {
  box-sizing: border-box;
  position: relative;
  background: linear-gradient(0, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0) 100%);
  padding: 1rem;
  text-align: center;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-style: normal;
  font-size: x-large;
  filter: drop-shadow(0 4px 4px #fff8);
}
.titleBalloon::after {
  display: block;
  position: absolute;
  bottom: -30px;
  left: calc(50% - 16px);
  border: 16px solid transparent;
  border-top-color: #fff;
  content: "";
}
/* 画面内配置：コンテナ位置・幅指定 */
.result__characterContainer,
.result__titleContainer,
.result__fortuneContainer {
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  width: 720px;
  max-width: calc(100% - 2rem);
}
/* 画面内配置 */
.result__arbitraryWrapper {
  position: relative;
}
.result__characterContainer {
  position: absolute;
  top: 0;
  bottom: 0;
}
.result__characterContent {
  position: sticky;
  top: 0;
  display: flex;
  flex-direction: row-reverse; /* 右寄せか左寄せかはここで決める */
}
.result__characterImgBox {
  width: 450px;
  max-width: 100%;
  filter: drop-shadow(0 4px 4px #8888);
}
img.result__characterImg {
  display: block;
  width: 100%;
  transform: translateY(50%) scale(2);
}
.result__titleContainer {
  position: relative;
}
.result__titleContent {
  padding: 1rem 0;
  margin: 0 auto;
}
.result__fortuneContainer {
  position: relative;
  padding: 1rem 0;
  display: flex;
  gap: 1rem;
  flex-direction: row; /* 右寄せか左寄せかはここで決める */
}
.result__fortuneContent {
  flex-shrink: 0;
  width: 270px;
  max-width: 100%;
}
.result__fortuneMetaDataColumn {
  flex-grow: 1;
  display: flex;
  gap: 1rem;
  flex-direction: column;
  justify-content: flex-end;
}
@media (max-width: 540px) {
  .result__characterContent {
    position: sticky;
    top: calc(10lvh - 1rem);
    display: flex;
    justify-content: center;
  }
  .result__characterImgBox {

  }
  .result__fortuneContainer {
    flex-direction: column;
    padding-top: 60lvh;
  }
  .result__fortuneContent {
    margin: 0 auto;
  }
  .result__fortuneMetaDataColumn {
    min-height: 90lvh;
  }
}
/* キャラ紹介パーツ */
.fortuneNavigatorName {
  backdrop-filter: blur(4px);
  background: rgba(255, 255, 255, 0.8);
  border: 3px double #890106;
  font-size: large;
  text-align: center;
}
/*操作パネルパーツ */
.fortuneNavigation {
  backdrop-filter: blur(4px);
  background: rgba(255, 255, 255, 0.8);
  border-radius: 1rem;
  padding: 0.5rem;
  text-align: center;
}
.fortuneNavigation__note {
  font-size: small;
}
.fortuneNavigation__small {
  display: block;
  font-size: small;
}
.fortuneNavigation__buttonArea {
  display: flex;
  gap: 0.5rem;
  justify-content: space-between;
  margin: 0.5rem 0;
}
.fortuneNavigation__buttonArea button {
  display: block;
  flex-grow: 1;
  width: calc(50% - 0.25rem);
}
/* ボタンスタイル */
button#resultHistoryButton,
button#resultResetButton {
  color: inherit;
  cursor: pointer;
  font: inherit;
  font-size: medium;
}
