

:root {
    color-scheme: light dark;
}

body {
    margin: 0 0 520px 0;
    background-color: #f4f4f4;
    color: #000000;
    font-size: 16px;

    /* ★フォント適用（custom/preset/google 全対応） */
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", Meiryo, "Noto Sans JP", sans-serif;
}

body {
    background-color: light-dark(#f4f4f4, #f4f4f4);
    color: light-dark(#000000, #000000);
}

form input,
form textarea,
form select,
form button {
    color-scheme: light;

    /* ★フォーム類も同じフォントに */
    font-family: inherit;
}

a {
    color: #0000FF;
    color: light-dark(
        #0000FF,
        #0000FF    );
}
a:visited {
    color: #663399;
    color: light-dark(
        #663399,
        #663399    );
}
a:active {
    color: #FF0000;
    color: light-dark(
        #FF0000,
        #FF0000    );
}

.quote-text {
    color: #666666;
    color: light-dark(
        #666666,
        #666666    );
}

.comment-text {
    color: #333333;
    color: light-dark(
        #333333,
        #333333    );
}

.note-text {
    color: #333333;
    color: light-dark(
        #333333,
        #333333    );
}

.name {
    color: #007700;
    color: light-dark(
        #007700,
        #007700    );
}

.cap {
    color: #ff4500;
    color: light-dark(
        #ff4500,
        #ff4500    );
}

.deleted-message {
    color: #ff0000;
    color: light-dark(
        #ff0000,
        #ff0000    );
}

.error-message {
    color: #ff0000;
    color: light-dark(
        #ff0000,
        #ff0000    );
}

hr {
    border: none;
    border-top: 1px solid #000000;
    border-top-color: light-dark(
        #000000,
        #000000    );
}

.embed-post {
    background-color: #f4f4f4;
    color: #000000;
    background-color: light-dark(
        #f4f4f4,
        #f4f4f4    );
    color: light-dark(
        #000000,
        #000000    );
}

mark {
    background-color: transparent;
    color: inherit;
    margin: 0 5px;
}

/* パンくずリスト */
.breadcrumb {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 1rem;
    list-style: none;
    padding-left: 0;
}

.breadcrumb-item {
    display: flex;
    align-items: center;
}

.breadcrumb-item + .breadcrumb-item::before {
    display: inline-block;
    padding: 0 0.5rem;
    content: ">";
    vertical-align: middle;

    color: #000000;
    color: light-dark(
        #000000,
        #000000    );
}

/* 最後のパンくずリスト項目のリンクを無効にする */
.breadcrumb-item:last-child a {
    pointer-events: none;
    color: inherit;
    text-decoration: none;
}

/* 外部サイト埋め込み */
.embed-contents {
    position: relative;
    width: min(100%, 600px);
    max-width: 600px;
    box-sizing: border-box;
}

.nieru-external-embed {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: .65rem;
    margin: .5rem 0;
    padding: .75rem;
    border: 1px solid rgba(127, 127, 127, .35);
    border-radius: 8px;
    background: rgba(127, 127, 127, .06);
    overflow: hidden;
}

.nieru-external-embed--sensitive {
    border-color: rgba(180, 45, 45, .55);
    background: rgba(180, 45, 45, .07);
}

.nieru-external-embed--sensitive .nieru-external-embed-load {
    color: #a51f2d;
    background: rgba(255, 255, 255, .72);
}

.nieru-external-embed--amazon {
    grid-template-columns: 6rem minmax(0, 1fr);
    align-items: center;
    border-color: rgba(255, 153, 0, .55);
    background: rgba(255, 153, 0, .08);
}

.nieru-amazon-product-media {
    display: grid;
    width: 6rem;
    height: 6rem;
    place-items: center;
    overflow: hidden;
    border-radius: 6px;
    background: #fff;
}

.nieru-amazon-product-media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.nieru-amazon-product-mark {
    position: relative;
    display: grid;
    width: 3.25rem;
    height: 3.25rem;
    justify-self: center;
    place-items: center;
    border-radius: 8px;
    color: #fff;
    background: #232f3e;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1;
}

.nieru-amazon-product-mark::after {
    position: absolute;
    right: .55rem;
    bottom: .55rem;
    left: .55rem;
    height: 3px;
    border-radius: 2px;
    background: #ff9900;
    content: "";
}

.nieru-amazon-product-id,
.nieru-amazon-associate-label,
.nieru-amazon-price-notice,
.nieru-amazon-content-notice {
    display: block;
    color: inherit;
    font-size: .8rem;
    line-height: 1.4;
    opacity: .72;
    overflow-wrap: anywhere;
}

.nieru-amazon-product-title {
    display: -webkit-box;
    overflow: hidden;
    margin-bottom: .3rem;
    color: inherit;
    font-size: .95rem;
    font-weight: 700;
    line-height: 1.4;
    overflow-wrap: anywhere;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.nieru-amazon-product-price {
    display: block;
    margin-bottom: .2rem;
    color: #b12704;
    font-size: 1rem;
    line-height: 1.35;
}

.nieru-amazon-product-button {
    display: inline-flex;
    min-height: 2.35rem;
    align-items: center;
    justify-content: center;
    padding: .4rem .8rem;
    border: 1px solid #d47f00;
    border-radius: 6px;
    color: #111;
    background: #ffb33b;
    font: inherit;
    font-weight: 700;
    text-decoration: none;
}

.nieru-amazon-product-button:hover,
.nieru-amazon-product-button:focus-visible {
    background: #ff9900;
}

.nieru-amazon-associate-label {
    margin-top: .45rem;
}

.nieru-amazon-price-notice,
.nieru-amazon-content-notice {
    margin-top: .25rem;
    font-size: .7rem;
}

@media (max-width: 420px) {
    .nieru-external-embed--amazon {
        grid-template-columns: 4.75rem minmax(0, 1fr);
        padding: .65rem;
    }

    .nieru-amazon-product-media {
        width: 4.75rem;
        height: 4.75rem;
    }
}

.nieru-external-embed-thumbnail {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border-radius: 6px;
    background: rgba(127, 127, 127, .14);
}

.nieru-external-embed--vertical .nieru-external-embed-thumbnail {
    width: min(100%, 320px);
    aspect-ratio: 9 / 16;
}

.nieru-external-embed-body {
    min-width: 0;
}

.nieru-external-embed-label {
    display: block;
    margin: 0 0 .35rem;
    font-size: .95rem;
    line-height: 1.35;
}

.nieru-external-embed-summary,
.nieru-external-embed-error {
    margin: .35rem 0;
    overflow-wrap: anywhere;
    white-space: normal;
}

.nieru-external-embed-error {
    font-size: .88rem;
}

.nieru-external-embed-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .65rem;
    margin-top: .5rem;
}

.nieru-external-embed-load {
    min-height: 2.5rem;
    padding: .45rem .8rem;
    border: 1px solid currentColor;
    border-radius: 6px;
    color: inherit;
    background: transparent;
    font: inherit;
    font-weight: 600;
    cursor: pointer;
}

.nieru-external-embed-load:hover,
.nieru-external-embed-load:focus-visible {
    background: rgba(127, 127, 127, .12);
}

.nieru-external-embed-load:disabled {
    cursor: wait;
    opacity: .65;
}

.nieru-external-embed.is-loaded {
    display: block;
    padding: 0;
    border: 0;
    background: transparent;
    overflow: visible;
}

.nieru-external-embed-frame {
    display: block;
    width: 100%;
    max-width: 600px;
    border: 0;
    background: rgba(127, 127, 127, .08);
}

.nieru-external-embed-frame--video {
    aspect-ratio: 16 / 9;
    height: auto;
}

.nieru-external-embed-frame--vertical {
    width: min(100%, 360px);
    aspect-ratio: 9 / 16;
    height: auto;
    min-height: 480px;
}

.nieru-external-embed-frame--social {
    height: 560px;
}

.nieru-external-embed-frame--audio-compact {
    height: 152px;
}

.nieru-external-embed-frame--audio {
    height: 352px;
}

.nieru-external-embed-media {
    display: block;
    max-width: 100%;
}

.nieru-external-embed-media--image,
.nieru-external-embed-media--video {
    width: auto;
    max-height: min(70vh, 720px);
}

.nieru-external-embed-media--audio {
    width: 100%;
}

/* Floating video player */
html.nieru-floating-embed-enabled .nieru-floating-embed-placeholder {
    display: block;
    max-width: 100%;
    margin: .5rem 0;
}

html.nieru-floating-embed-enabled .nieru-floating-embed-placeholder[hidden] {
    display: none !important;
}

html.nieru-floating-embed-enabled .nieru-external-embed.is-loaded.nieru-floating-embed-active {
    position: fixed;
    right: max(12px, env(safe-area-inset-right));
    bottom: max(12px, env(safe-area-inset-bottom));
    z-index: 2147483000;
    width: min(420px, calc(100vw - 24px));
    max-width: none;
    max-height: calc(100vh - 24px);
    margin: 0;
    border-radius: 8px;
    background: #000;
    box-shadow: 0 12px 36px rgba(0, 0, 0, .38);
    overflow: hidden;
    isolation: isolate;
}

html.nieru-floating-embed-enabled .nieru-external-embed--vertical.is-loaded.nieru-floating-embed-active {
    width: min(220px, calc(100vw - 24px));
}

html.nieru-floating-embed-enabled .nieru-floating-embed-active .nieru-external-embed-frame {
    width: 100%;
    max-width: none;
}

html.nieru-floating-embed-enabled .nieru-floating-embed-control {
    display: none;
}

html.nieru-floating-embed-enabled .nieru-floating-embed-active .nieru-floating-embed-control {
    position: absolute;
    top: 8px;
    z-index: 2;
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .72);
    border-radius: 50%;
    color: #fff;
    background: rgba(0, 0, 0, .72);
    font: 700 22px/1 sans-serif;
    cursor: pointer;
}

html.nieru-floating-embed-enabled .nieru-floating-embed-active .nieru-floating-embed-return {
    right: 48px;
    font-size: 19px;
}

html.nieru-floating-embed-enabled .nieru-floating-embed-active .nieru-floating-embed-dismiss {
    right: 8px;
}

html.nieru-floating-embed-enabled .nieru-floating-embed-active .nieru-floating-embed-control:hover,
html.nieru-floating-embed-enabled .nieru-floating-embed-active .nieru-floating-embed-control:focus-visible {
    background: rgba(0, 0, 0, .92);
}

@media (max-width: 640px) {
    html.nieru-floating-embed-enabled .nieru-external-embed.is-loaded.nieru-floating-embed-active {
        right: max(8px, env(safe-area-inset-right));
        bottom: max(8px, env(safe-area-inset-bottom));
        width: min(320px, calc(100vw - 16px));
        max-height: calc(100vh - 16px);
    }

    html.nieru-floating-embed-enabled .nieru-external-embed--vertical.is-loaded.nieru-floating-embed-active {
        width: min(200px, calc(100vw - 16px));
    }
}

.nieru-external-embed-social-host {
    width: min(100%, 600px);
    max-width: 600px;
    margin: .5rem 0;
    overflow-wrap: anywhere;
}

.nieru-twitter-plaintext {
    white-space: pre-wrap;
}

.img-thumbnail,
.embed-youtube-img,
.embed-image,
.video-thumbnail {
    max-width: 128px;
    height: auto;
}

@media (max-width: 640px) {
    .nieru-external-embed {
        padding: .65rem;
    }

    .nieru-external-embed-frame--vertical {
        min-height: 440px;
    }

    .nieru-external-embed-frame--social {
        height: 520px;
    }
}

img.emoji {
    height: 1em;
    width: 1em;
    margin: 0 .05em 0 .1em;
    vertical-align: -0.1em;
}

img {
    max-height: 512px;
}

.blog-hero{position:relative;width:100%;min-height:320px;margin:0 0 24px;background-image:linear-gradient(135deg,#080808 0%,#260707 35%,#8f1018 68%,#180303 100%);background-size:cover;display:flex;align-items:center;justify-content:center;overflow:hidden}.blog-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(70,0,0,.38),rgba(0,0,0,.55))}.blog-hero__overlay{position:relative;z-index:1;width:min(100% - 32px,960px);padding:36px 24px;text-align:center;color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.8)}.blog-hero h1{margin:0 0 16px;font-size:clamp(28px,4vw,46px);line-height:1.3;font-weight:700}.blog-hero p{margin:0 auto;max-width:900px;font-size:clamp(15px,1.8vw,19px);line-height:1.8;font-weight:500}.threads{display:block;margin:0 0 10px;padding:14px 18px;border:1px solid #3d1115;border-left:4px solid #b51b25;border-radius:8px;background:linear-gradient(100deg,#171717,#241012);box-shadow:0 2px 7px rgba(0,0,0,.22)}.threads a{color:#f2d9db;text-decoration:none;font-weight:600}.threads a:hover{color:#fff;text-decoration:underline}.btn-spacing{display:inline-flex;flex-wrap:wrap;gap:8px}.btn-spacing a{display:inline-block;padding:7px 12px;border:1px solid #7c2028;border-radius:5px;background:#25090b;color:#f6dfe1;text-decoration:none}.btn-spacing a:hover{background:#9b111b;color:#fff}.threads{font-size:15px;line-height:1.7}@media (max-width:600px){.blog-hero{min-height:300px}.blog-hero__overlay{width:calc(100% - 20px);padding:28px 14px}.blog-hero h1{font-size:27px}.blog-hero p{font-size:15px}.threads{padding:12px 13px;margin-bottom:8px}.btn-spacing a{padding:6px 9px}}/* 掲示板全体：赤黒グラデーション */
html,
body {
  background-color: #090909 !important;
  background-image: linear-gradient(
    135deg,
    #050505 0%,
    #180303 30%,
    #650b12 55%,
    #1a0305 78%,
    #050505 100%
  ) !important;
  background-attachment: fixed !important;
  background-size: cover !important;
}

/* スレッド一覧：mixi風カード */
.threads {
  display: block;
  margin: 0 0 10px;
  padding: 14px 18px;
  border: 1px solid #451116;
  border-left: 4px solid #b51b25;
  border-radius: 8px;
  background: linear-gradient(
    100deg,
    rgba(18,18,18,.96),
    rgba(48,12,16,.96)
  );
  box-shadow: 0 2px 8px rgba(0,0,0,.35);
}

.threads a {
  color: #f5dfe1;
  text-decoration: none;
  font-weight: 600;
}

.threads a:hover {
  color: #fff;
  text-decoration: underline;
}

@media (max-width: 600px) {
  .threads {
    padding: 12px 13px;
    margin-bottom: 8px;
  }
}
/* ===== ヘッダーを元画像＋タイトル重ね表示に戻す ===== */

.blog-hero {
  position: relative !important;
  min-height: 320px !important;
  background-image: url("https://cdn.nieru.net/konkatuoyaji/admin/07b9864082.webp") !important;
  background-size: cover !important;
  background-position: center !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

.blog-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(
    90deg,
    rgba(0,0,0,.55),
    rgba(0,0,0,.15),
    rgba(0,0,0,.55)
  ) !important;
}

.blog-hero::after {
  display: none !important;
}

.blog-hero__overlay {
  position: relative !important;
  z-index: 2 !important;
  width: min(100% - 32px, 960px) !important;
  padding: 36px 24px !important;
  text-align: center !important;
  color: #fff !important;
  text-shadow: 0 2px 6px rgba(0,0,0,.85) !important;
}

/* ===== 掲示板本体は赤黒グラデーション ===== */

html,
body {
  background-color: #090909 !important;
  background-image: linear-gradient(
    135deg,
    #050505 0%,
    #180303 30%,
    #650b12 55%,
    #1a0305 78%,
    #050505 100%
  ) !important;
  background-attachment: fixed !important;
  background-size: cover !important;
}

/* ===== mixi風スレッドカード ===== */

.threads {
  display: block !important;
  margin: 0 0 10px !important;
  padding: 14px 18px !important;
  border: 1px solid #451116 !important;
  border-left: 4px solid #b51b25 !important;
  border-radius: 8px !important;
  background: linear-gradient(
    100deg,
    rgba(18,18,18,.96),
    rgba(48,12,16,.96)
  ) !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.35) !important;
}

.threads a {
  color: #f5dfe1 !important;
  text-decoration: none !important;
  font-weight: 600 !important;
}

.threads a:hover {
  color: #fff !important;
  text-decoration: underline !important;
}

@media (max-width: 600px) {
  .blog-hero {
    min-height: 260px !important;
  }

  .blog-hero__overlay {
    padding: 28px 14px !important;
  }

  .threads {
    padding: 12px 13px !important;
  }
}
/* ヘッダー画像を元の画像に戻す */
.blog-hero {
  background-image: url("https://cdn.nieru.net/konkatuoyaji/admin/07b9864082.webp") !important;
  background-size: cover !important;
  background-position: center !important;
}

/* 追加画像は表示しない */
.blog-hero::after {
  display: none !important;
}
/* 投稿本文を背景に埋もれないようにする */
body {
  color: #f5f5f5 !important;
}


.line-text {
  color: #ffffff !important;
  font-size: 16px;
  line-height: 1.8;
}

.line-text a {
  color: #ffd9dd !important;
}