/* =========================================================
   たまごっちパラダイス風 カスタムCSS（パステル＆さりげない縁取り版）
   ========================================================= */

/* やさしいパステルカラー定義 */
:root {
  --tama-pastel-pink: #f482a9;    /* やわらかいパステルピンク */
  --tama-pastel-yellow: #fff282;  /* 明るいイエロー */
  --tama-pastel-blue: #61d5ff;    /* パステルソーダブルー */
  --tama-pastel-purple: #ae7aff;  /* ラベンダーパープル */
  --tama-pastel-bg: #fffce8;      /* 優しいアイボリー背景 */
  --tama-text-dark: #2f1d33;      /* 自然になじむ暗めの文字色 */
  --tama-text-shadow: rgba(47, 29, 51, 0.45); /* さりげない影用カラー */
}

/* ---------------------------------------------------------
   1. 大見出し（* 記号 / .content-head / .mu__h-large）
   ⇒ 【パステルピンク×さりげない文字影】たまご型フレーム
   --------------------------------------------------------- */
/* メインエリア */
.content-head,
.mu__h-large,
.main .content-head,
.main .mu__h-large,
.main .mu.markup .mu__h-large {
  color: #ffffff !important;
  background-color: var(--tama-pastel-pink) !important;
  
  border-radius: 25px 25px 25px 8px !important;
  position: relative !important;
  box-sizing: border-box !important;
  width: 100% !important;
  
  padding: 12px 20px 12px 42px !important;
  border: none !important;
  
  /* イエローのやわらかい枠線 */
  outline: 4px solid var(--tama-pastel-yellow) !important;
  outline-offset: -6px !important;
  box-shadow: 0 4px 0px var(--tama-pastel-purple) !important;
  
  font-weight: 800 !important;
  font-size: 1.05em !important;
  line-height: 1.5 !important;
  letter-spacing: 0.03em !important;
  
  /* ★主張しすぎない1方向の自然なドロップシャドウで文字を浮き立たせる */
  text-shadow: 1px 1.5px 0px var(--tama-text-shadow) !important;
  margin: 16px 0 14px 0 !important;
}

/* ★サイドメニュー内の大見出し（微縮小） */
.menu .mu__h-large,
.side .mu__h-large,
.menu .menu__head strong.mu__h-large,
.side .menu__head strong.mu__h-large {
  padding: 10px 16px 10px 36px !important;
  font-size: 14px !important;
  outline-width: 3px !important;
  outline-offset: -5px !important;
}

/* 文字色および折り返し保証 */
.content-head *,
.mu__h-large * {
  color: #ffffff !important;
  word-break: break-word !important;
  text-shadow: 1px 1.5px 0px var(--tama-text-shadow) !important;
}

/* 先頭につく、イエローのたまごアイコン */
.content-head:before, .mu__h-large:before {
  content: "" !important;
  position: absolute !important;
  left: 14px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 14px !important;
  height: 18px !important;
  background-color: var(--tama-pastel-yellow) !important;
  border-radius: 50% 50% 50% 50% / 60% 60% 40% 40% !important;
  box-shadow: 0 0 0 2px #ffffff !important;
}

.content-head:after, .mu__h-after {
  display: none !important;
}

/* ---------------------------------------------------------
   2. 中見出し（** 記号 / .mu__h-middle）
   ⇒ 【すっきり読める濃色テキスト】パステルブルー太枠カード
   --------------------------------------------------------- */
/* メインエリア */
.mu__h-middle,
.main .mu.markup .mu__h-middle {
  color: var(--tama-text-dark) !important;
  background-color: var(--tama-pastel-bg) !important;
  
  display: flex !important;
  align-items: center !important;
  box-sizing: border-box !important;
  width: 100% !important;
  min-height: 40px;
  padding: 8px 16px 8px 18px !important;
  line-height: 1.4;
  margin: 12px 0 !important;
  
  border: 3px solid var(--tama-pastel-blue) !important;
  border-left: 8px solid var(--tama-pastel-blue) !important;
  border-radius: 12px !important;
  box-shadow: 0 3px 0px rgba(97, 213, 255, 0.35) !important;
  
  font-weight: 800 !important;
  font-size: 0.98em !important;
}

/* ★サイドメニュー内の中見出し（微縮小） */
.menu .mu__h-middle,
.side .mu__h-middle,
.menu .menu__head strong.mu__h-middle,
.side .menu__head strong.mu__h-middle {
  min-height: 36px !important;
  padding: 6px 12px 6px 14px !important;
  font-size: 0.98em !important;
  border-width: 2px !important;
  border-left-width: 6px !important;
}

/* ---------------------------------------------------------
   3. 小見出し（*** 記号 / .mu__h-little）
   ⇒ 【さりげない影つき白文字】パステルラベンダーのボタン風
   --------------------------------------------------------- */
/* メインエリア */
.mu__h-little,
.main .mu.markup .mu__h-little {
  color: #ffffff !important;
  background-color: var(--tama-pastel-purple) !important;
  
  display: inline-flex !important;
  align-items: center !important;
  padding: 5px 16px 5px 28px !important;
  min-height: 28px;
  box-sizing: border-box !important;
  position: relative !important;
  margin: 10px 0 !important;
  
  border: none !important;
  border-radius: 16px !important;
  box-shadow: 0 3px 0px #8247db !important;
  
  font-size: 0.92em !important;
  font-weight: 800 !important;
  
  /* ★小見出しもさりげない立体シャドウに変更 */
  text-shadow: 1px 1px 0px rgba(47, 29, 51, 0.35) !important;
}

/* ★サイドメニュー内の小見出し（微縮小） */
.menu .mu__h-little,
.side .mu__h-little,
.menu .menu__head strong.mu__h-little,
.side .menu__head strong.mu__h-little {
  min-height: 26px !important;
  font-size: 0.92em !important;
  padding: 3px 12px 3px 24px !important;
}

/* 左端の星アイコン */
.mu__h-little:before {
  content: "★" !important;
  position: absolute !important;
  left: 8px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  color: var(--tama-pastel-yellow) !important;
  font-size: 12px !important;
}

/* ---------------------------------------------------------
   4. サイドメニュー全体の設定
   --------------------------------------------------------- */
.side,
.menu {
  font-size: 14px !important;
}
.wrap {
  width: 450px;
  margin: 0 auto;
}

.p1,
.p2,
.p2_full,
.p2_none,
.p3,
.p3_full,
.p3_none,
.p4,
.p4_full,
.p4_none,
.p5,
.bro1,
.bor2 {
  position: relative;
  display: block;
  font-size: 12px;
}

.p1 .mu__table {
  position: relative;
}
.p1 .mu__table:before {
  position: absolute;
  content: "";
  left: -10px;
  top: -4px;
  display: block;
  width: 2px;
  height: 36px;
  background: #aaa;
}
.p1 .mu__table:after {
  position: absolute;
  content: "";
  left: -10px;
  top: 32px;
  display: block;
  width: 10px;
  height: 2px;
  background: #aaa;
}
.p1 .mu__table table {
  width: 100%;
  border: solid 1px #aaa;
}

.p1 > .mu__table:after,
.p1 > .mu__table:before {
  display: none;
}

.p2,
.p2_full,
.p2_none {
  margin-left: 20px;
}

.p2:before,
.p2_full:before {
  content: "";
  position: absolute;
  left: -10px;
  top: 0;
  display: block;
  width: 2px;
  background: #aaa;
}

.p2:before {
  height: 100%;
}

.p2_full:before {
  height: calc(100% - 64px);
}

.p3,
.p3_full,
.p3_none {
  margin-left: 20px;
}

.p3:before,
.p3_full:before {
  content: "";
  position: absolute;
  left: -10px;
  top: 0;
  display: block;
  width: 2px;
  height: calc(100% - 64px);
  background: #aaa;
}

.p3_full:before {
  height: 100%;
}

.p4,
.p4_none {
  margin-left: 20px;
}

.p4:before {
  content: "";
  position: absolute;
  left: -10px;
  top: 0;
  display: block;
  width: 2px;
  height: calc(100% - 64px);
  background: #aaa;
}

.p5 {
  margin-left: 20px;
}

.p5:before {
  content: "";
  position: absolute;
  left: -10px;
  top: 0;
  display: block;
  width: 2px;
  height: calc(100% - 64px);
  background: #aaa;
}

.p1 .mu__table {
  margin-bottom: 4px;
}

.p1 td {
  padding: 4px !important;
  border-color: #bbb !important;
}

.p1 td:first-child {
  width: 50px;
  height: 50px;
  border-right: none;
}

.p1 td:last-child {
  height: 50px;
  border-left: none;
}

.p1 td {
  background: #fff0f0 !important;
}

.p2 td,
.p2_full td,
.p2_none td {
  background: #fff4e5 !important;
}

.p3 td,
.p3_full td,
.p3_none td {
  background: #f7ffe0 !important;
}

.p4 td,
.p4_full td,
.p4_none td {
  background: #eaf7ff !important;
}

.p5 td,
.p5_full td,
.p5_none td {
  background: #f7edff !important;
}

.p1 img, .p2 img, .p3 img, .p4 img, .p5 img {
  display: block;
  width: 50px !important;
}

.p1 span {
  display: block !important;
}
/* 表組み用独自CSS */
.list-2 .mu__list, .list-3 .mu__list, .list-4 .mu__list, .list-5 .mu__list, .list-6 .mu__list {
display:-webkit-box; display:-ms-flexbox; display:flex;
}
.list-2 .mu__list, .list-3 .mu__list, .list-4 .mu__list, .list-5 .mu__list {
 -ms-flex-wrap: wrap; flex-wrap: wrap; width: 100%; box-sizing: border-box; border-left: solid 1px #243456; border-top: solid 1px #243456; }
.list-2 .mu__list li, .list-3 .mu__list li, .list-4 .mu__list li, .list-5 .mu__list li {
 -webkit-box-align: center; -ms-flex-align: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; align-items: center; margin: 0; padding: 5px; box-sizing: border-box; text-align: center; font-size: 12px; border-right: solid 1px #777777; border-bottom: solid 1px #777777; list-style: none !important;
}
.list-2 > p, .list-3 > p, .list-4 > p, .list-5 > p {
 margin: 0; padding: 6px; text-align: center; font-size: 12px; background: #274a78; border: solid 1px#243456; border-bottom: none;
 color: white;
}
/* LIST-2 ～ LIST-5 */
.list-2 li {
 -ms-flex-preferred-size: 50%; flex-basis: 50%;
}
.list-3 li {
 -ms-flex-preferred-size: 33.33%; flex-basis: 33.33%;
}
.list-4 li {
 -ms-flex-preferred-size: 25%; flex-basis: 25%;
}
.list-5 li {
 -ms-flex-preferred-size: 20%; flex-basis: 20%;
}
/* 1行目ぶち抜き */
.list-2 .list-2_top .mu__list li:first-child, .list-3 .list-3_top .mu__list li:first-child, .list-3 .list-4_top .mu__list li:first-child, .list-3 .list-5_top .mu__list li:first-child {
 -ms-flex-preferred-size: 100%; flex-basis: 100%;
}
/* 1行目を見出しの様な見た目に変更 */
.list-2 .list-2_head li:nth-child(1), .list-2 .list-2_head li:nth-child(2), .list-3 .list-3_head li:nth-child(1), .list-3 .list-3_head li:nth-child(2), .list-3 .list-3_head li:nth-child(3), .list-4 .list-4_head li:nth-child(1), .list-4 .list-4_head li:nth-child(2), .list-4 .list-4_head li:nth-child(3), .list-4 .list-4_head li:nth-child(4), .list-5 .list-5_head li:nth-child(1), .list-5 .list-5_head li:nth-child(2), .list-5 .list-5_head li:nth-child(3), .list-5 .list-5_head li:nth-child(4), .list-5 .list-5_head li:nth-child(5) {
 background: #274a78;
}
/* テーブルの左セルの固定 */
.chara_status_list tr td:first-child {
 position:absolute;
}
.chara_status_list .mu__table table tr:nth-child(even) td:first-child,
.chara_status_list .mu__table table tr:nth-child(odd) td:first-child {
 background:rgba(255,255,255,0);border-bottom:none;border-left:none;border-right:none;color:#00b;
}
.chara_status_list .mu__table table tr td:first-child {
 text-shadow:0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff,0 0 5px #fff;
}
.chara_status_list .mu__table img {
 vertical-align: top;
}
.chara_status_list .mu__table td,
.chara_status_list .mu__table th {
    margin: 0px;
    padding: 5px;
}