.content {
  flex: 1;
  max-width: 100%;
  padding: 2em;
  box-sizing: border-box;
}


:root {
    --color-bg: #fdfdfd;
    --color-text: #5a3e3e;
    --color-nav-bg: #242424;
    --color-nav-text: #cfcfcf;
    --color-nav-hover: #ffdd57;
}

/* シンプルな点線ボックス */
.dotted-box {
  border: 2px dotted #a08a81;   /* 点線＆色は既存カラーに合わせた */
  background-color: #fffdf8;    /* ほんのりクリーム色 */
  padding: 0.8em 1.2em;
  margin: 0em 0;
  border-radius: 6px;
  line-height:1 .6;
  max-width: 800px;
}

/* 箇条書き茶色ボックス */
.example-box {
    border: 1px dashed #a08a81;
    background-color: #e7e1dd;
    padding: 0.6em 2em;
    /* margin: 1em 0; */
    font-size: 0.9em;
    line-height: 1.4;
    border-radius: 4px;
    max-width: 800px;
    width: 100%;
    margin-left: 3em;
    margin-bottom: 0em;}



body {
  margin: 0;
  font-family: sans-serif;
  display: flex;
  height: 100vh;
  background-color: var(--color-bg);
  color: var(--color-text);
}

nav {
  width: 220px;
  background: var(--color-nav-bg);
  color: #cfcece;
  padding: 1rem;
}

nav a {
  display: block;
  color: #b9aaa4;
  /* margin: 0 rem 0; */
  text-decoration: none;
}

nav a:hover {
  color: var(--color-nav-hover);
  text-decoration: underline;
}

iframe {
  flex: 1;
  border: none;
  height: 100%;
}

/* 中央揃え */
.center-box {
  width: 100%;
  padding: 2em;
  box-sizing: border-box;
}

/* QA セクション全体 */
.qa {
  margin: 2em 0;
  border-top: 1px solid #ccc;
}

/* 質問部分 */
.qa .question {
  font-weight: bold;
  background-color: #f5f5f5;
  padding: 0.8em;
  border-left: 4px solid #3b5998;
  margin-top: 1em;
  cursor: pointer;
  transition: background-color 0.2s;
}

.qa .question:hover {
  background-color: #e9e9e9;
}

/* 回答部分 */
.qa .answer {
  padding: 0.8em;
  background-color: #fff;
  border-left: 4px solid #ccc;
  display: none; /* デフォルト非表示 */
  animation: fadeIn 0.3s ease-in-out;
}

/* アニメーション */
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}



/* 画像だけ中央寄せに */
.img {
  display: flex;
  justify-content: center;
  margin: 2em 0;
}

.img img {
  width: 60%;
}


body {
  margin: 0;
  background: url('your-background.jpg') center / cover fixed no-repeat;
  position: relative;
  overflow-x: hidden;
}

.fog-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 1); /* 真っ白で覆っておく */
  pointer-events: none;
  z-index: 0;
  transition: background 0.3s ease-out;
}

.dialog {
  font-size: 1.2rem;
  color: #aaa;
  margin: 1.5rem 0;
  line-height: 1.6;
  max-width: 100%;
}

.dialog-left {
  text-align: left;
}
.dialog-right {
  text-align: right;
}
.dialog-center {
  text-align: center;
}


.center-logo img {
  max-width: 90%;
  height: auto;
}

#project span.disabled-link {
  color: #999;
  cursor: default;
  text-decoration: none;
  margin: 0 0.5em;
  display: inline-block;
}


/* ================================
   目次（TOC）エリア
================================ */
.toc {
  background: #faf7f2;
  max-width: 800px;
  padding: 1rem 1.8rem;
  border-radius: 10px;
  border: 1px solid #dcd4c8;
  margin-bottom: 2rem;
  margin-left: 3em;

}

.toc-desc {
  margin: 0 0 1rem 0;
  font-size: 0.95rem;
  color: #555;
}

/* 各カテゴリー */
.toc-block h3 {
  margin: 0.8rem 0 0.4rem 0;
  font-size: 1.1rem;
  font-weight: bold;
}

/* 子項目（リスト） */
.toc-block ul {
  margin: 0 0 0.8rem 1.2rem;
  padding: 0;
  list-style: none;
}

.toc-block ul li {
  margin: 0.2rem 0;
  font-size: 0.95rem;
  line-height: 1.4;
}

/* リンクの見え方 */
.toc a {
  color: #7a3535;
  text-decoration: none;
}
.toc a:hover {
  text-decoration: underline;
  color: #2e4b73;
}

/* ぎゅっと詰まった間隔が大事！ */
.toc-block ul li a {
  padding-left: 0.3rem;
}

/* スマホ対策：余白調整 */
@media (max-width: 600px) {
  .toc {
    padding: 1.2rem 1.2rem;
  }
}


/* ================================
   更新履歴の枠線
================================ */

/* 好きなフォント・文字サイズをここで設定 */
:root {
  --frame-font-family: "ヒラギノ角ゴ ProN", sans-serif;
  --frame-font-size: 14px;
}

/* 点線の枠 */
.dotted-frame {
  width: 800px;                 /* 横幅固定 */
  border: 2px dotted #333;      /* 点線の枠 */
  padding: 16px;                /* 内側の余白（お好みで） */
  box-sizing: border-box;       /* 幅計算をわかりやすく */

  font-family: var(--frame-font-family);
  font-size: var(--frame-font-size);
}

