/* =========================================================
   MEISY / めれか
   統合カスタムCSS
========================================================= */


/* =========================================================
   1. 基本
========================================================= */

*,
*::before,
*::after {
  box-sizing: border-box;
}

img {
  max-width: 100%;
  height: auto;
}




/* =========================================================
   3. HOME 投稿リスト
========================================================= */

/*
ショートコード側で

PC 3列
SP 2列

を指定しているので、
CSS側ではカラム数を無理に変更しない。
*/


.home #main_content .p-postList__item {
  min-width: 0 !important;
}


.home #main_content .p-postList__link {
  color: #222222 !important;

  text-decoration: none !important;
}


.home #main_content .p-postList__thumb {
  overflow: hidden !important;

  background: #f5f5f5 !important;
}


.home #main_content .p-postList__thumb img {
  display: block !important;

  width: 100% !important;
  height: 100% !important;

  object-fit: cover !important;
}


.home #main_content .p-postList__title {
  margin-top: 7px !important;

  color: #222222 !important;

  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.55 !important;
}


.home #main_content .p-postList__meta {
  margin-top: 5px !important;

  color: #888888 !important;

  font-size: 10px !important;
}




/* =========================================================
   6. HOME スマホ
   サイドバーを上に表示
========================================================= */

@media screen and (max-width: 959px) {

  .home .l-content {
    display: flex !important;

    flex-direction: column !important;
  }


  .home #sidebar {
    order: -1 !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 0 30px !important;
  }


  .home #main_content {
    order: 0 !important;

    width: 100% !important;
  }

}


/* =========================================================
   7. HOME スマホ投稿一覧
========================================================= */

@media screen and (max-width: 767px) {

  .home .home-section-title,
  .home h2.home-section-title,
  .home h3.home-section-title {
    min-height: 44px !important;

    margin: 30px 0 14px !important;

    padding: 0 12px !important;

    border-radius: 0 0 13px 0 !important;

    font-size: 17px !important;
  }


  .home #main_content .p-postList__title {
    font-size: 12px !important;

    line-height: 1.5 !important;
  }


  .home #main_content .p-postList__meta {
    font-size: 9.5px !important;
  }

}


/* =========================================================
   8. カード画像3列
========================================================= */

/*
カラム全体の追加CSSクラス：
card-3col
*/

.wp-block-columns.card-3col,
.card-3col {
  display: grid !important;

  grid-template-columns:
    repeat(3, minmax(0, 1fr)) !important;

  gap: 18px 12px !important;

  width: 100% !important;

  margin-top: 20px !important;
  margin-bottom: 28px !important;
}


.card-3col > .wp-block-column,
.card-3col > * {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;

  margin: 0 !important;

  flex: none !important;
  flex-basis: auto !important;
}


.card-3col .wp-block-image,
.card-3col figure.wp-block-image {
  display: block !important;

  width: 100% !important;
  max-width: 100% !important;

  margin: 0 !important;
}


.card-3col .wp-block-image img,
.card-3col figure.wp-block-image img {
  display: block !important;

  width: 100% !important;
  max-width: 100% !important;

  height: auto !important;

  margin: 0 auto !important;

  object-fit: contain !important;
}


.card-3col figcaption {
  margin-top: 5px !important;

  font-size: 12px !important;
  line-height: 1.4 !important;

  text-align: center !important;
}


@media screen and (max-width: 767px) {

  .wp-block-columns.card-3col,
  .card-3col {
    grid-template-columns:
      repeat(3, minmax(0, 1fr)) !important;

    gap: 12px 5px !important;

    margin-top: 16px !important;
    margin-bottom: 22px !important;
  }


  .card-3col figcaption {
    margin-top: 4px !important;

    font-size: 10px !important;
    line-height: 1.35 !important;
  }

}


/* =========================================================
   9. 通常記事
========================================================= */

.single-post .post_content {
  color: #333333 !important;

  font-weight: 400 !important;

  -webkit-font-smoothing: antialiased;
}


.single-post .post_content p,
.single-post .post_content li,
.single-post .post_content td {
  font-weight: 400 !important;
}


.single-post .post_content strong,
.single-post .post_content b {
  font-weight: 700 !important;
}


.single-post .post_content h2 {
  font-weight: 700 !important;
}


.single-post .post_content h3 {
  font-weight: 600 !important;
}


/* =========================================================
   10. スマホ記事
========================================================= */

@media screen and (max-width: 767px) {

  body {
    font-size: 14px !important;
    line-height: 1.75 !important;
  }


  body.single-post .l-content {
    width: 100% !important;
    max-width: 100% !important;

    padding-left: 10px !important;
    padding-right: 10px !important;
  }


  body.single-post .l-mainContent,
  body.single-post .l-mainContent__inner,
  body.single-post .p-article,
  body.single-post .post_content {
    width: 100% !important;
    max-width: 100% !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    padding-left: 0 !important;
    padding-right: 0 !important;
  }


  .p-articleHead__title,
  .c-pageTitle {
    margin-top: 8px !important;
    margin-bottom: 10px !important;

    font-size: 21px !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;

    letter-spacing: 0 !important;
  }


  .p-articleHead__meta,
  .p-articleMetas,
  .c-postTimes,
  .c-postAuthor {
    font-size: 11px !important;

    line-height: 1.5 !important;
  }


  .p-breadcrumb {
    font-size: 10px !important;

    line-height: 1.5 !important;
  }


  body.single-post .post_content,
  body.single-post .post_content p,
  body.single-post .post_content li {
    font-size: 15.5px !important;

    line-height: 1.9 !important;
  }


  .post_content p {
    margin-top: 0 !important;
    margin-bottom: 15px !important;
  }


  .post_content h2 {
    margin-top: 30px !important;
    margin-bottom: 14px !important;

    padding: 9px !important;

    font-size: 18px !important;
    font-weight: 700 !important;

    line-height: 1.5 !important;
  }


  .post_content h3 {
    margin-top: 22px !important;
    margin-bottom: 11px !important;

    font-size: 16px !important;
    font-weight: 600 !important;

    line-height: 1.55 !important;
  }


  .post_content h4 {
    margin-top: 18px !important;
    margin-bottom: 9px !important;

    font-size: 15px !important;

    line-height: 1.5 !important;
  }


  .post_content table {
    width: 100% !important;

    font-size: 12.5px !important;

    line-height: 1.5 !important;
  }


  .post_content table th,
  .post_content table td {
    padding: 8px 7px !important;

    font-size: 12.5px !important;

    line-height: 1.5 !important;
  }


  .post_content .wp-block-table {
    overflow-x: auto !important;

    -webkit-overflow-scrolling: touch !important;
  }


  .post_content img {
    max-width: 100% !important;

    height: auto !important;
  }


  .post_content figcaption,
  .wp-element-caption {
    margin-top: 5px !important;

    color: #777777 !important;

    font-size: 11px !important;

    line-height: 1.5 !important;
  }


  .p-toc {
    margin-top: 18px !important;
    margin-bottom: 25px !important;
  }


  .p-toc__ttl {
    font-size: 15px !important;
  }


  .p-toc__list,
  .p-toc a {
    font-size: 13px !important;

    line-height: 1.7 !important;
  }

}


/* =========================================================
   11. 超小型スマホ
========================================================= */

@media screen and (max-width: 380px) {

  .p-articleHead__title,
  .c-pageTitle {
    font-size: 20px !important;
  }


  body.single-post .post_content,
  body.single-post .post_content p,
  body.single-post .post_content li {
    font-size: 13.5px !important;
  }


  .post_content h2 {
    font-size: 17px !important;
  }


  .post_content h3 {
    font-size: 15.5px !important;
  }


  .wp-block-columns.card-3col,
  .card-3col {
    grid-template-columns:
      repeat(3, minmax(0, 1fr)) !important;

    gap: 10px 4px !important;
  }

}


/* =========================================================
   12. Rinker
========================================================= */

.yyi-rinker-links li.amazonlink > a,
.yyi-rinker-links li.rakutenlink > a {
  font-size: 0 !important;
}


.yyi-rinker-links li.amazonlink > a::after {
  content: "Amazonで見る";

  font-size: 14px !important;
}


.yyi-rinker-links li.rakutenlink > a::after {
  content: "楽天市場で見る";

  font-size: 14px !important;
}


@media screen and (max-width: 767px) {

  .yyi-rinker-contents {
    font-size: 12px !important;
  }


  .yyi-rinker-title {
    font-size: 14px !important;

    line-height: 1.5 !important;
  }


  .yyi-rinker-links a {
    font-size: 12px !important;
  }

}


/* =========================================================
   13. i-mobile広告
========================================================= */

.imobile-pc {
  display: block !important;
}


.imobile-sp {
  display: none !important;
}


@media screen and (max-width: 767px) {

  .imobile-pc {
    display: none !important;
  }


  .imobile-sp {
    display: block !important;
  }

}


/* =========================================================
   14. 疑似BOX開封
========================================================= */

@media screen and (max-width: 767px) {

  #eb05-box-simulator {
    margin-top: 20px !important;
    margin-bottom: 20px !important;

    padding: 15px 9px !important;
  }


  #eb05-box-simulator .eb-title {
    font-size: 17px !important;

    line-height: 1.45 !important;
  }


  #eb05-box-simulator .eb-sub {
    font-size: 12px !important;
  }


  #eb05-box-simulator .eb-rarity {
    font-size: 11px !important;
  }


  #eb05-box-simulator .eb-cardname {
    font-size: 18px !important;
  }

}


/* =========================================================
   15. 固定PRバー
========================================================= */

.mereca-pr-fixed-simple {
  position: fixed;

  left: 0;
  bottom: 0;

  z-index: 9999;

  display: flex;

  align-items: center;
  justify-content: center;

  gap: 18px;

  width: 100%;

  padding: 12px 16px;

  background:
    linear-gradient(
      90deg,
      #081826,
      #123f59,
      #1687a7
    );

  color: #ffffff !important;

  text-decoration: none !important;

  box-shadow:
    0 -4px 18px rgba(0, 0, 0, .18);
}


.mereca-pr-fixed-text {
  font-size: 14px;
  font-weight: 700;

  line-height: 1.4;
}


.mereca-pr-fixed-more {
  flex: none;

  padding: 6px 12px;

  background: #ffffff;

  border-radius: 999px;

  color: #123f59;

  font-size: 11px;
  font-weight: 800;

  white-space: nowrap;
}


.mereca-pr-fixed-simple:hover {
  opacity: .94;
}


@media screen and (max-width: 767px) {

  .mereca-pr-fixed-simple {
    justify-content: space-between;

    gap: 8px;

    padding:
      9px
      8px
      calc(9px + env(safe-area-inset-bottom));
  }


  .mereca-pr-fixed-text {
    font-size: 10.5px;

    line-height: 1.35;
  }


  .mereca-pr-fixed-more {
    padding: 6px 8px;

    font-size: 9px;
  }

}


/* =========================================================
   16. ヘッダー補助
========================================================= */

/* 細い上部バーを非表示 */

.l-header__bar,
.c-headerBar,
[class*="headerBar"] {
  display: none !important;

  height: 0 !important;
  min-height: 0 !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 0 !important;
}


/*
PCヘッダー本体は
Code Snippets側の設定を使用。

スマホはロゴだけ中央表示。
*/


@media screen and (max-width: 959px) {

  #mereca-media-header {
    width: 100% !important;

    background: #ffffff !important;

    border-bottom: 1px solid #eeeeee !important;
  }


  #mereca-media-header .mereca-media-inner {
    display: block !important;

    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;

    padding: 14px 0 !important;

    text-align: center !important;
  }


  /* スマホでは文字と検索を非表示 */

  #mereca-media-header .mereca-media-copy,
  #mereca-media-header .mereca-media-search {
    display: none !important;
  }


  /* ロゴ中央 */

  #mereca-media-header .mereca-media-logo {
    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;

    margin: 0 auto !important;
    padding: 0 !important;
  }


  #mereca-media-header .mereca-media-logo a {
    display: inline-block !important;

    line-height: 0 !important;
  }


  #mereca-media-header .mereca-media-logo img {
    display: block !important;

    width: 220px !important;
    max-width: 65vw !important;

    height: auto !important;
    max-height: none !important;

    margin: 0 auto !important;

    object-fit: contain !important;
  }

}
