:root {
    /*トップページ：サムネイルの横幅*/
    --thumbnail-width: 150px;
    /*トップページ：サムネイルの縦幅*/
    --thumbnail-height: 150px;

    /*検索ページ：サムネイルの横幅*/
    --search-thumbnail-width: 100px;
    /*検索ページ：サムネイルの縦幅*/
    --search-thumbnail-height: 100px;

    /*サムネイルの色*/
    --thumbnail-back-color: #eee;
    --thumbnail-font-color: #999;

    /*タグ クラウドのバックカラー&文字色*/
    --tag-cloud-back-color: #a0a0a0;
    --tag-cloud-font-color: #fff;
    --tag-cloud-back-color-hover: #777;
    --tag-cloud-font-color-hover: #fff;

    /* 基本背景色 */
    --background-color: #f0f0f0;
    --base-back-color: #FFF;

    /* ストライプ */
body {
  background-image: repeating-linear-gradient(
    45deg,
    #e6e6e6,
    #e6e6e6 10px,
    var(--background-color) 10px,
    var(--background-color) 20px
  );
  background-attachment: fixed;
}

 
    /* 基本 文字色 */
    --base-text-color: #4D4535;
    --base-light-color: #777;

    --link-color: #FF9933;
    --link-hover-color: #999;


    /* トップページ背景色 */
    --index-back-color: #FBFCFD;

    /* ヘッダー部背景色 */
    --header-back-color: var(--base-back-color);
    --header-link-color: #777;
    --header-link-color-hover: #999;

    /* テキスト記事サムネイル用背景 */
    --background-text-thumb: url("../resource/text-back1.png");

    /* NSFW記事 サムネイル用背景 */
    --background-nsfw-thumb: url('../resource/nsfw.png');
}

/* ユーザー定義クラス 
　　トップページ・記事内で {s クラス名}~{/s} と記述することで、
　　<span class="user_クラス名">～</span>と同様の動作を行うことができます。

　　よく利用したい文字の色などのスタイルをクラスとして定義しておくと便利です。

    .user_から始まる名前でクラスを定義してください。
    たとえば.user_redクラスは {s red}～{/s}で使用できます。
*/
.user_red {
    color: #f00;
}

.user_green {
    color: #0f0;
}

.user_blue {
    color: #00f;
}

.user_bold {
    font-weight: 800;
}

/* 本文用の余白設定 */
.innerspace {
    padding: 0 20px;
    box-sizing: border-box; /* 枠からはみ出さない */
}

.box {
  background-image: repeating-linear-gradient(90deg, #e97f12, #e97f12 12px, transparent 12px, transparent 16px), repeating-linear-gradient(180deg, #e97f12, #e97f12 12px, transparent 12px, transparent 16px), repeating-linear-gradient(90deg, #e97f12, #e97f12 12px, transparent 12px, transparent 16px), repeating-linear-gradient(180deg, #e97f12, #e97f12 12px, transparent 12px, transparent 16px);
  background-position: left top, right top, left bottom, left top;
  background-repeat: repeat-x, repeat-y, repeat-x, repeat-y;
  background-size: 100% 3px, 3px 100%, 100% 3px, 3px 100%;
 /* 追加：上下左右に10pxの余白を作る */
  padding: 10px; 
}

/* 画像関連 */
.instraction-image {
    border-radius: 5px;
}

.view-image {
    border-radius: 5px;
}

/* グローバルヘッダー */
#global-header {
    background-color: var(--base-back-color);
    color: #a0a0a0;
    max-width: 900px;
    margin: 0 auto 0 auto;
}

#global-header a {
    color: #a0a0a0;
}

/* Markdown関連 */
ul.md {
    list-style: inside disc
}

ol.md {
    margin-left: 1.5em;
}

p.md {
    margin-bottom: 1em;
}

blockquote.md {
    border-left: 3px solid #CCC;
    padding-left: 1em;
}

code.md {
    background-color: #DDD;
    padding: 2px
}

pre.md code {
    display: block;
    overflow-x: scroll;
    background-color: #DDD;
    padding: 1em;
    border-radius: 5px;
    line-height: 1.3em;
    margin: 0.5em;
}

table.md {
    border: 1px solid #ccc;
    border-collapse: collapse;
    border-radius: 5px;
    margin: 0.5em;
}

table.md td,
table.md th {
    border: 1px solid #ccc;
    padding: 10px;
}

table.md th {
    background-color: #f0f0f0;
    font-weight: bold;
}

/* 小説表示 */
.novel-body {
    font-size: 1em;
}

.novel-body-in {
    line-height: 200%;
}

.twitter-share-button {
    display: none;
}

 /*追記分*/
h2.under {
  /*線の種類（実線） 太さ 色*/
  border-bottom: solid 3px #FFC778;
}

*{ font-family: "Hiragino Maru Gothic ProN", "Yu Gothic", sans-serif; }

/* ボタンを包む親要素の指定 */
.button-container {
  display: flex;            /* レイアウトを自由にする設定 */
  justify-content: center;  /* 左右の中央に配置 */
  padding: 20px 0;          /* 上下に少し余裕を持たせる（お好みで） */
  width: 100%;              /* 横幅いっぱいに広げる */
}

/* ボタン自体の指定（HTMLに直接書いていたスタイルをこちらにまとめます） */
.clap-button {
  display: inline-block;
  background-color: #E97F12;
  color: #FFFFFF;
  padding: 10px 60px;
  text-decoration: none;
  border-radius: 4px;
  font-weight: bold;
  cursor: pointer;
  transition: opacity 0.3s; /* マウスを乗せた時にふわっとさせる演出 */
}

.clap-button:hover {
  opacity: 0.8;             /* マウスを乗せた時に少し薄くする */
}

 /* 管理時、コンソールバーを常に上にくっつける */
#console-header {position:fixed;background-color: #000; opacity: 75%;}

 /* 同人ページの設定 */
/* 外枠：上下中央寄せを有効に */
.book-container {
  display: flex;
  gap: 30px;
  margin-bottom: 50px; /* 項目間の余白を少し広めに */
  align-items: center;  /* ★重要：画像と文字を上下中央で揃える */
}

/* 画像：250pxを維持 */
/* 外枠：上下中央寄せを有効に */
.book-container {
  display: flex;
  gap: 30px;
  margin-bottom: 30px; /* 1列の時の下の余白 */
  align-items: center;  /* 画像と文字を上下中央で揃える */
  
  /* --- 背景の設定 --- */
  background-color: #eee; /* ごく薄いグレーを背景に */
  border-radius: 8px;     /* 角を少し丸くする */

/* --- 内側の余白（背景色の中の隙間） --- */
  padding: 1.5rem; /* 1remから少し増やしてよりゆったりさせました */

  /* --- 外側の余白（画面端や上下の箱との隙間） --- */
  margin: 1.5rem;  /* ★これで上下左右に「画面の端」からの余裕が生まれます */
  
  /* パソコンで広がりすぎないように最大幅を決めるのがおすすめ */
  max-width: 850px; 
  /* marginの左右をautoにすると、広い画面で中央に寄ります */
  margin-left: auto;
  margin-right: auto;
}

/* 画像：250pxを維持 */
.book-image img {
  width: 250px;
  height: auto;
  display: block;
 box-shadow: 0 4px 8px rgba(0,0,0,0.1); /* 軽い影 */
}

/* テキスト：少ない文字数でもバランスが取れるように */
.book-content {
  flex: 1;
}

.book-title {
  font-size: 1.4rem;   /* 少し大きくして存在感を出す */
  font-weight: bold;
  margin: 0 0 15px 0;
  color: #333;
}

.book-description {
  font-size: 1rem;
  line-height: 1.8;    /* 行間を広げてスカスカ感を軽減 */
  margin: 0;
  color: #555;
}

/* --- レスポンシブ設定 --- */
@media (max-width: 600px) {
  .book-container {
    flex-direction: column;
    text-align: center;
    gap: 15px;
    margin: 1rem; /* スマホでは外側の余白を少し詰めると画面を広く使えます */
    padding: 1rem;
  }
  .book-image img {
    width: 100%;
    max-width: 250px;
  }
}

/* INDEXページの幅設定 */
#index-base {
  max-width: 900px;
  width: 100%;
  margin: 0 auto;
}

/* 幅が広いときだけバナーを右に寄せる */
@media (min-width: 1200px) {
    #link_banner {
    width: 200px;
    position: relative;
    left: 680px;
    }
}

#header {
max-width: 900px;
margin: 0 auto 0 auto;
}

/*個別の記事ページの幅の変更・角丸処理をなくして上下ピッチリにしたもの*/
#base {
max-width: 900px;
margin: 0 auto 0 auto;
display: flex;
min-height: calc(100vh - 3em);
flex-direction: column;
border-radius: 0px;
padding: 1em;
 }