/* 基本設定 */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  padding: 50px;
  background-color: #f8f9fa;
  color: #222;
  -webkit-font-smoothing: antialiased;
  font-feature-settings: "palt"; /* 文字詰め */
}

h1 {
  font-family: sans-serif;
  font-size: 24px;
  margin-bottom: 20px;
  text-align: center;
  color: #666;
}

h2 {
  font-family: sans-serif;
  font-size: 20px;
  margin-bottom: 50px;
  text-align: center;
  color: #666;
}

#02{padding-top:-100px; margin-top:-10em;}

/* 各項目のスタイル */
.font-item {
  background: #fff;
  padding: 30px;
  margin-bottom: 30px;
  border-radius: 8px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.05);
}

.label {
  font-family: sans-serif;
  font-size: 13px;
  color: #555;
  margin-bottom: 15px;
  border-bottom: 1px solid #eee;
  padding-bottom: 5px;
}

/* サンプル文字のサイズと太さ */
.sample {
  font-size: 32px; /* 大きめに設定 */
  line-height: 1.2;
  margin-bottom: 2px;
  word-break: break-all;
}
span{display: inline-block; width:120px; font-size: 15px; font-family: Noto Sans JP; font-weight: 400;}
.mokuji{width:100%; margin-bottom: 20px;}
.mokuji p{ display:block; font-size:14px; padding:4px 0px; border-bottom:1px solid #ccc;}
.mokuji p:first-child {border-top: 1px solid #ccc;}
.mokuji p a{text-decoration: none;}
.mokuji p span{font-size: 14px; font-weight: 600; padding-left: 2em;;}


.clfix:after{
  content: "."; 
  display: block; 
  height: 0; 
  font-size:0;	
  clear: both; 
  visibility:hidden;
}


.fw-100 { font-weight: 100; }
.fw-200 { font-weight: 200; }
.fw-300 { font-weight: 300; }
.fw-400 { font-weight: 400; }
.fw-500 { font-weight: 500; }
.fw-600 { font-weight: 600; }
.fw-700 { font-weight: 700; }
.fw-800 { font-weight: 800; }
.fw-900 { font-weight: 900; }

/* フォントの割り当て */
.noto-sans { font-family: 'Noto Sans JP', sans-serif; }
.noto-serif { font-family: 'Noto Serif JP', serif; }
.m-plus1 { font-family: 'M PLUS 1', sans-serif; }
.m-plus2 { font-family: 'M PLUS 2', sans-serif; }
.m-plusr { font-family: 'M PLUS Rounded 1c', sans-serif; }
.zen-kaku { font-family: 'Zen Kaku Gothic New', sans-serif; }
.zen-maru { font-family: 'Zen Maru Gothic', sans-serif; }
.biz-gothic { font-family: 'BIZ UDPGothic', sans-serif; }
.biz-mincho { font-family: 'BIZ UDPMincho', serif; }
.y-syuku { font-family: 'Yuji Syuku', serif; }
.k-maru { font-family: 'Kiwi Maru', sans-serif; }
.klee { font-family: 'Klee One', sans-serif; }
.shippori { font-family: 'Shippori Mincho', serif; }
.murecho { font-family: 'Murecho', sans-serif; }
.mix-inter { font-family: 'Inter', 'Noto Sans JP', sans-serif; }
.zen-kure { font-family: 'Zen Kurenaido', sans-serif; }
.shippori-an { font-family: 'Shippori Antique', sans-serif; }
.inter { font-family: 'Inter', sans-serif; }
.montserrat { font-family: 'Montserrat', sans-serif; }
.playfair { font-family: 'Playfair Display', serif; }
.oswald { font-family: 'Oswald', sans-serif; }
.roboto { font-family: 'Roboto', sans-serif; }
.lora { font-family: 'Lora', serif; }
.jost { font-family: 'Jost', sans-serif; }
.poppins { font-family: 'Poppins', sans-serif; }
.crimson { font-family: 'Crimson Pro', serif; }
.pt-serif { font-family: 'PT Serif', serif; }
.ibm-plex { font-family: "IBM Plex Sans JP", sans-serif; }
.zen-oldmin { font-family: "Zen Old Mincho", serif;}

/* イタリック用のクラス */
.italic {
  font-style: italic;
}
/* 混植設定 */
.mix-montserrat { font-family: 'Montserrat', 'Noto Sans JP', sans-serif; }



/* 印刷用設定 */
@media print {
  /* 1. 背景色を白、文字色を黒にしてインクを節約 */
  body {
    background-color: white !important;
    color: black !important;
    padding: 0;
  }

  /* 2. 不要な要素（ヘッダーやボタン等）があれば隠す */
  /* 例: .nav, .footer { display: none; } */

  /* 3. 各フォント項目のまとまりがページをまたがないようにする */
  .font-item {
    page-break-inside: avoid; /* 項目の途中でページが切れるのを防ぐ */
    box-shadow: none !important; /* 印刷では影は不要 */
    border: 1px solid #ccc; /* 影の代わりに薄い枠線を引く */
    margin-bottom: 20px;
    padding: 15px;
  }

  /* 4. 印刷時は文字サイズを少し調整（A4に収まりやすく） */
  .sample {
    font-size: 24pt; /* 画面より少し小さめに設定 */
  }

  h1 {
    font-size: 18pt;
    margin-bottom: 20px;
  }

  .mokuji { display:none;}

}
