/* FV箇条書き部分 */
.main-visual__text{
        width: 65%;
}

/* FVの3つ横並びアイコン部分 */
.bl_pont__icon {
    width: 65%;
}
.bl_pont__icon ul > li {
    line-height: 1.2rem;
          letter-spacing: -0.05em;

}
.bl_pont__text {
                width: 30%!important;
    margin: 2px 0 0 15px;
}


/* WordPressが自動で生成した空のpタグ(余白)を削除 */
p:empty {
    display: none;
}

/* pタグ下の余白を設定 */
.article-body p {
    margin-bottom: 20px !important;
}


/* 県内で〇〇対応中！部分  */
.bl_pont_box > .bl_pont_box__list-bkY {
    background: #FFFFFF;
}
.bl_pont_box > .bl_pont_box__list {
    line-height: 0.8em;
}
.bl_pont_box {
    border: solid 2px #DEAF7E;
}
.bl_pont_box > .bl_pont_box__list {
    border-right: solid 2px #DEAF7E;
}
.ly_point {
    padding-bottom: 10px;
}


/* フォントの太さ・背景色 */
body, input, textarea {
    font-family: "ヒラギノ角ゴ ProN W5", "Noto Sans JP", Meiryo, sans-serif;
    font-weight: 400;

    background-color: #ffffff;
}

/* h2: セクションの主見出し */
.article-body .orange-waku h2,
h2 {
  background: linear-gradient(135deg, #ef8212, #f6b26b);
  color: #ffffff;
  padding: 16px 24px;
  font-size: 22px;
  font-weight: 700;
  border-radius: 8px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  margin-bottom: 20px;
}


/* h3 */
.article-body .orange-waku h3, h3{
  background: linear-gradient(135deg, #ef8212, #f6b26b);
}


/* h4 */
.article-body .orange-waku h4, h4{
        background: #bbb;
}


/* h5 */
.article-body .orange-waku h5, h5{
  color: #EF8212;
}


/* hukidashi */
.balloon1-top {
        background: #f2e4ce;
}
.balloon1-top:before{
        border-bottom: 15px solid #f2e4ce;
}

/* accordion-list */
.accordion-list dt{
        background: #9fb1c9;
        border-radius: 10px 10px 10px 10px;

}



/* ------------------------ */
/* -----LP内お客様の声----- */
.voice-chat {
  max-width: 700px;
  font-size: 16px;
}
/* 吹き出し共通 */
.voice-chat__bubble {
  position: relative;
  margin: 1em 0;
  padding: 0.75em 1em;
  border-radius: 1em;
  max-width: 100%;
  box-shadow: 0 2px 6px rgba(0,0,0,0.05);
}

/* お客様側（左寄せ・オレンジ系） */
.voice-chat__bubble--customer {
  background: #FFF4E6;
  border: 1px solid #F5D1B4;
  margin-right: auto;
}
.voice-chat__bubble--customer::before {
  content: "";
  position: absolute;
  top: 1em;
  left: -0.5em;
  border: 6px solid transparent;
  border-right-color: #F5D1B4;
}






/* ------------------------ */
/*------- LP内 事例 -------*/
.testimonials {
  padding: 20px 10px;
  background-color: #fff9eb;
}
.testimonials__title {
  font-size: 1.8em;
  text-align: center;
  margin-bottom: 16px;
}
/* 横スクロールの設定 */
.testimonials__wrapper {
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  gap: 16px;
  padding-bottom: 8px; /* スクロールバーを避ける余白 */
}
/* スクロールスナップのターゲット */
.testimonial {
  flex: 0 0 80%;           /* 横幅を80%に（お好みで調整） */
  max-width: 300px;        /* 最大幅を設定してもOK */
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  scroll-snap-align: start;
  text-decoration: none;
  color: inherit;
  padding: 0px;
  box-sizing: border-box;
  transition: transform .2s;
}
/* タップ／ホバー時のほんのり拡大エフェクト */
.testimonial:hover,
.testimonial:focus {
  transform: translateY(-4px);
}
/* 画像＋テキストのレイアウト */
.testimonial__figure {
  margin: 0 0 0px;
  text-align: center;
}
.testimonial__img {
  width: 80px;
  height: 80px;
  object-fit: cover;
  border-radius: 50%;
  display: block;
  margin: 0 auto;
}
.testimonial__name {
  margin-top: 6px;
  font-weight: bold;
  font-size: 1em;
}
.testimonial__text {
  font-size: 0.9em;
  line-height: 1.4;
  color: #333;
  padding: 4px 16px 16px 16px;
  text-align: center;
}























/* ------------------------ */
/* ---------header-------- */
/* pc header */
.site-title {
    width: 40%;
}
/* sp header */
.sp_catch_wrapper{
        background: #FDF2D8;
  border-radius: 0px 0px 30px 30px;
}
.sp_catch {
        color: #6a6a6a;
        font-size: 76%;
        margin-top: 1px;
        text-align: center;
}







/* -------------------- */
/* -----  footer  ----- */
.footer_banner_tel{
        background: #EF8212;
}
.footer_banner_mail{
        background: #c9c7bb;
}
.footer_number{
        font-size: 20px!important;
        margin-top: inherit !important;
}
@media screen and (min-width: 640px) and (max-width: 767px) {
  /* バナーを横並びに */
  .footer_banner {
    display: flex;
    margin: 0;              /* 不要な余白リセット */
    padding: 0;
  }


  /* 左右それぞれを均等に */
  .footer_banner_mail,
  .footer_banner_tel {
    flex: 1;
    margin: 0;
  }

  /* 左側：メール相談 */
  .footer_banner_mail {
    background: #bdb8aa;                /* お好みのグレー系に */
  }
  /* 右側：電話相談 */
  .footer_banner_tel {
    background: #e87f16;                /* オレンジ系に */
  }

  /* リンク部分を縦中央揃えに */
  .footer_banner_mail a,
  .footer_banner_tel a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 72px;       /* 高さはお好みで調整 */
    text-decoration: none;
  }

  /* 上段テキスト */
  .footer_banner_mail .brown,
  .footer_banner_tel .brown {
    font-size: 14px;
    color: #333333;
    margin-bottom: 4px;
  }

  /* 下段テキスト */
  .footer_banner_mail .white,
  .footer_banner_tel .white {
    font-size: 20px;
    color: #ffffff;
    font-weight: bold;
  }

  /* 不要な矢印（up-arrow）が出ている場合は隠す */
  .keni-footer-panel_wrap .fn-footer-panel.is-active .page-top-sp {
    display: none;
  }
}






/* ------------------------------ */
/* ---お客様の声カテゴリページ--- */
.entry-list .entry_thumb {
    max-height: unset;
}






/* ---------------------------- */
/* -----お客様の声ページh2----- */
.testimonial_h2 {
  font-size: 16px !important;
}






/* ------------------------ */
/* ----- contactform7 ----- */

/*チェックボックスを改行*/
span.wpcf7-list-item {
display: block;
}

/* フォーム全体のスタイル */
.wpcf7 {
background-color: #f0f0f0; /* ライトグレー */
padding: 20px;
border-radius: 10px;
max-width: 600px;
margin: auto;
}

/* 送信ボタンの元の要素を消す */
input[type="submit"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
span.wpcf7-spinner {
  display: none;
}

/* 送信ボタンのスタイル */
.wpcf7-form input[type="submit"] {
background-color: #007BFF; /* ブルー */
color: white;
cursor: pointer;
transition: background-color 0.3s ease;
border: none;
}

.wpcf7-form input[type="submit"]:hover {
background-color: #0056b3; /* 濃いブルー */
}
.btn_send {
    text-align: center;

}

input[type="submit"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  font-size: 20px;
  font-weight: bold;
  width: 200px;
  padding: 10px;
  border-radius: 10px;
  background-color: #233b6c;
  border: none;
  color: #fff;
  cursor: pointer;
}

/* recapcha 消す */
.grecaptcha-badge { visibility: hidden; }



/* =========================================================================
   otasuke-plus.com  記事用CSS 追記スニペット 202607追記
   ========================================================================= */


/* =========================================================================
   ① 比較表 .comparison-table
   -------------------------------------------------------------------------
   記事内には性格の違う2種類の比較表があります。

     (a) 相場表（2列 / 例：捜索日数 → 総額の目安）
         → <table class="comparison-table">
     (b) 他社比較表（3列 / 項目・おたすけプラス・一般的な業者）
         → <table class="comparison-table" data-variant="vs">

   ・罫線／行間／余白／横スクロールなどの可読性まわりは (a)(b) 共通
   ・「2列目を黄色でハイライト」「2列目にティールの縦ライン」「3列前提の列幅」は
     おたすけプラス列を持つ (b) だけに効かせる（data-variant="vs" で限定）。
     (a) に効かせると「総額の目安」列まで黄色くなってしまうため。
   ・ヘッダー行はナチュラルセージ #7FA39A（白文字）
   ・表自身が横スクロールの器になるので、ページ全体は横スクロールしない

   ℹ 記事HTML側の inline style（width / padding / border-bottom /
     background など）は対応済みで、<table> <thead> <tbody> <tr> <th> <td>
     からは全て除去されています。以後も比較表のこれらのタグには
     inline style を付けないでください（付けるとこのCSSが負けます）。
     セル内の ◎△× 色分け用 <span style="color:…"> は残してOKです。

   ℹ (b) の目印に修飾クラス（例 .comparison-table--vs）ではなく
     data-variant 属性を使っているのは、scripts/final_gate.py が
     比較表の判定に literal な class="comparison-table" を使っており、
     クラスを増やすと比較表として認識されなくなるためです。
   ========================================================================= */

/* 表本体：横スクロールの器にする。thead / tbody 側で表レイアウトを復元 */
.comparison-table {
	display: block;
	width: 100%;
	max-width: 100%;
	margin: 1.5em 0;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	border-collapse: collapse;
	font-size: 0.95em;
	line-height: 1.6;
}

.comparison-table > thead,
.comparison-table > tbody {
	display: table;
	width: 100%;
	table-layout: fixed;
}

/* セル共通：余白・罫線・行間 */
.comparison-table th,
.comparison-table td {
	padding: 0.75em 0.6em;
	border: 1px solid #e6e1d5;
	line-height: 1.6;
	vertical-align: middle;
	/* テーマの table { word-break: break-all } による不自然な途中改行を戻す */
	word-break: normal;
	overflow-wrap: break-word;
}

/* 列幅：3列の他社比較表だけ、1列目（項目名）を広めに、2・3列目を均等にする。
   2列の相場表は幅指定なし＝上の table-layout: fixed による均等割りに任せる */
.comparison-table[data-variant="vs"] th:nth-child(1),
.comparison-table[data-variant="vs"] td:nth-child(1) {
	width: 28%;
}

.comparison-table[data-variant="vs"] th:nth-child(2),
.comparison-table[data-variant="vs"] td:nth-child(2),
.comparison-table[data-variant="vs"] th:nth-child(3),
.comparison-table[data-variant="vs"] td:nth-child(3) {
	width: 36%;
}

/* ヘッダー行：ナチュラルセージ（白文字） */
.comparison-table thead th {
	background-color: #7FA39A;
	border-color: #7FA39A;
	color: #ffffff;
	font-size: 0.95em;
	font-weight: 700;
	text-align: center;
}

.comparison-table thead th:nth-child(1) {
	text-align: left;
}

/* vs表のヘッダーも白文字を保証（古いCSS残存時の詳細度負けを防止） */
.comparison-table[data-variant="vs"] thead th {
	background-color: #7FA39A;
	color: #ffffff;
}

/* 1列目（項目名）：左寄せ・太字・ごく薄いベージュ */
.comparison-table tbody td:nth-child(1) {
	background-color: #faf8f3;
	color: #4a4a4a;
	font-weight: 700;
	text-align: left;
}

/* 2列目・3列目の中身は中央寄せ */
.comparison-table tbody td:nth-child(2),
.comparison-table tbody td:nth-child(3) {
	text-align: center;
}

/* 偶数行のごく薄い縞（読み違い防止） */
.comparison-table tbody tr:nth-child(even) td {
	background-color: #fafaf8;
}

.comparison-table tbody tr:nth-child(even) td:nth-child(1) {
	background-color: #f5f2ea;
}

/* --- 2列目（おたすけプラス列）のハイライト ---
   他社比較表（data-variant="vs"）限定。相場表の「総額の目安」列は対象外。
   縞のルールより後ろに置いて、奇数行・偶数行とも黄色が勝つようにしています。
   thead は全列共通の #7FA39A を維持し、ハイライトは tbody のみ */
.comparison-table[data-variant="vs"] tbody td:nth-child(2) {
	background-color: #fff8e1;
}

.comparison-table[data-variant="vs"] tbody tr:nth-child(even) td:nth-child(2) {
	background-color: #fff3cd;
}

/* 列の左右にティールの縦ラインを入れて「この列」であることを示す
   （border-color を上書きしないよう、ハイライト指定より後ろに置く） */
.comparison-table[data-variant="vs"] th:nth-child(2),
.comparison-table[data-variant="vs"] td:nth-child(2) {
	border-left: 2px solid #7FA39A;
	border-right: 2px solid #7FA39A;
}

/* 表直後の注記（※業者により対応は異なります）を小さく。
   注記が付くのは他社比較表だけなので、相場表の直後の本文には効かせない */
.comparison-table[data-variant="vs"] + p {
	margin-top: -0.5em;
	font-size: 0.85em;
	color: #777777;
}

/* 横スクロールが発生したときのスクロールバー（WebKit系） */
.comparison-table::-webkit-scrollbar {
	height: 6px;
}

.comparison-table::-webkit-scrollbar-track {
	background-color: #f1efe9;
	border-radius: 3px;
}

.comparison-table::-webkit-scrollbar-thumb {
	background-color: #cfc8b8;
	border-radius: 3px;
}


/* =========================================================================
   ② お客様の声カード .voice-cards / .voice-card
   -------------------------------------------------------------------------
   HTML構造:
     <div class="voice-cards">
       <div class="voice-card">
         <p class="voice-card__text">「〜」</p>
         <p class="voice-card__who">— 猫の飼い主様</p>
       </div>
     </div>
   ・上下パディング・行間・カード間マージンを詰めて縦長さを解消
   ・配色は既存の吹き出し .voice-chat__bubble--customer に合わせる
   ========================================================================= */

.voice-cards {
	margin: 1.5em 0;
}

.voice-card {
	margin: 0 0 0.6em;
	padding: 0.7em 0.9em;
	background-color: #FFF4E6;
	border: 1px solid #F5D1B4;
	border-left: 4px solid #ff8c00;
	border-radius: 0.4em;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.voice-card:last-child {
	margin-bottom: 0;
}

/* 声の本文：行間と余白を詰める */
.voice-card__text {
	margin: 0 0 0.25em;
	color: #3a3a3a;
	font-size: 0.95em;
	line-height: 1.65;
}

/* 話者：右寄せ・小さめ・グレー */
.voice-card__who {
	margin: 0;
	color: #8a8a8a;
	font-size: 0.8em;
	line-height: 1.4;
	text-align: right;
}

/* 既存の .article-body p { margin-bottom: 20px !important; } を打ち消す。
   !important は !important でしか上書きできないため、
   margin-bottom の1プロパティのみ限定で使用 */
.article-body .voice-card .voice-card__text {
	margin-bottom: 0.25em !important;
}

.article-body .voice-card .voice-card__who {
	margin-bottom: 0 !important;
}


/* =========================================================================
   ③ 捜索事例カード .testimonials 系（記事内向けの補正・追記）
   -------------------------------------------------------------------------
   ・既存の .testimonial__img（80px丸サムネイル）は書き換えません。
     記事側は <img> から class="testimonial__img" を外す前提で、
     .testimonial__figure img に対して新しいサムネイル指定を追記します。
   ・記事側には .testimonial__text がないため、
     画像＋figcaption だけでカードの高さが揃うようにしています。
   ・横スクロール（overflow-x + scroll-snap）は既存の挙動をそのまま活用。
   ========================================================================= */

/* カードを縦積みのフレックスにして、高さを揃える */
.testimonials__wrapper > .testimonial {
	display: flex;
	flex-direction: column;
	min-width: 13em; /* figcaption が1文字ずつ折り返さない最低幅を確保 */
	overflow: hidden; /* 画像の上角丸をカード側でも切り抜く */
}

.testimonials__wrapper .testimonial__figure {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	margin: 0;
}

/* 記事内サムネイル：カード幅いっぱい・アスペクト比固定・上角のみ丸 */
.testimonial__figure img {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	border-radius: 8px 8px 0 0;
}

/* キャプション（「3日で保護」等）：横幅を使い切り、途中で折り返させない */
.testimonials__wrapper .testimonial__figure figcaption {
	flex: 1 1 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0.6em 0.7em 0.75em;
	color: #4a4a4a;
	font-size: 0.95em;
	line-height: 1.4;
	text-align: center;
	white-space: nowrap;
}

/* スクロールできることが分かるようにスクロールバーを見せる（WebKit系） */
.testimonials__wrapper::-webkit-scrollbar {
	height: 6px;
}

.testimonials__wrapper::-webkit-scrollbar-track {
	background-color: #f3ece0;
	border-radius: 3px;
}

.testimonials__wrapper::-webkit-scrollbar-thumb {
	background-color: #e0c9a6;
	border-radius: 3px;
}

/* 右端のカードが少し見切れるよう、右に余白を足してスクロール量を稼ぐ */
.testimonials__wrapper::after {
	content: "";
	flex: 0 0 0.5em;
}


/* =========================================================================
   ④ FAQアコーディオン .faq-item（details / summary・JS不使用）
   -------------------------------------------------------------------------
   HTML構造:
     <details class="faq-item">
       <summary class="faq-item__q">質問文</summary>
       <div class="faq-item__a"><p>回答文</p></div>
     </details>
   ・右端の ＋ / − で「押したら開く」ことを一目で分かるようにする
   ・デフォルトの三角マーカーは非表示
   ・テーマ既存の .accordion-list 系とはクラス名が重ならないよう独立
   ========================================================================= */

.faq-item {
	margin: 0 0 0.6em;
	background-color: #ffffff;
	border: 1px solid #f0dcc0;
	border-radius: 0.4em;
	overflow: hidden;
}

.faq-item:last-child {
	margin-bottom: 0;
}

/* 質問行：ボタンらしく見せる */
.faq-item__q {
	position: relative;
	display: block;
	padding: 0.85em 3em 0.85em 1em;
	background-color: #FFF4E6;
	color: #3a3a3a;
	font-size: 1em;
	font-weight: 700;
	line-height: 1.55;
	cursor: pointer;
	list-style: none;
	transition: background-color 0.2s ease;
}

/* デフォルトの三角マーカーを消す */
.faq-item__q::-webkit-details-marker {
	display: none;
}

.faq-item__q:hover {
	background-color: #ffe9d2;
}

.faq-item__q:focus-visible {
	outline: 2px solid #ef8212;
	outline-offset: -2px;
}

/* ＋ / − インジケータ：同じ長さの棒を2本重ね、片方を回転させる */
.faq-item__q::before,
.faq-item__q::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 1em;
	width: 0.9em;
	height: 2px;
	background-color: #ef8212;
	border-radius: 1px;
	transform: translateY(-50%);
	transition: transform 0.25s ease;
}

/* 縦棒（90度回転）→ 閉じているときは ＋ に見える */
.faq-item__q::after {
	transform: translateY(-50%) rotate(90deg);
}

/* 開いているときは縦棒を横棒に重ねて − にする */
.faq-item[open] > .faq-item__q::after {
	transform: translateY(-50%) rotate(0deg);
}

.faq-item[open] > .faq-item__q {
	background-color: #ffe9d2;
}

/* 回答：背景を薄くし、左にアクセントとインデントを付けて質問と区別 */
.faq-item__a {
	padding: 0.9em 1em 0.9em 1.1em;
	background-color: #fffdf8;
	border-top: 1px solid #f0dcc0;
	border-left: 3px solid #ffd9a8;
	color: #4a4a4a;
	font-size: 0.95em;
	line-height: 1.75;
}

.faq-item__a p {
	margin: 0 0 0.8em;
}

.faq-item__a p:last-child {
	margin-bottom: 0;
}

/* 既存の .article-body p { margin-bottom: 20px !important; } を打ち消す */
.article-body .faq-item__a p {
	margin-bottom: 0.8em !important;
}

.article-body .faq-item__a p:last-child {
	margin-bottom: 0 !important;
}


/* =========================================================================
   ⑤ 記事内コンテンツ画像 .content-img
   -------------------------------------------------------------------------
   パイプラインで生成したH2セクション画像など、個別に幅を制限したい画像に
   class="content-img" を付ける。付けない画像はコンテンツ幅いっぱいのまま。
   スマホでは画面幅を活かすため 100% に戻す。
   ========================================================================= */

.content-img {
	display: block;
	max-width: 60%;
	height: auto;
	margin-left: auto;
	margin-right: auto;
}


/* =========================================================================
   スマホ表示の調整（既存に合わせて max-width: 640px）
   フォントサイズは px 直指定を避け em / % で指定
   ========================================================================= */
@media screen and (max-width: 640px) {

	/* ① 比較表：文字を少し小さく、項目名の列を広げて折り返しを減らす */
	.comparison-table {
		font-size: 0.85em;
	}

	.comparison-table th,
	.comparison-table td {
		padding: 0.6em 0.35em;
	}

	/* 列幅の再配分は3列の他社比較表だけ。2列の相場表は均等割りのまま */
	.comparison-table[data-variant="vs"] th:nth-child(1),
	.comparison-table[data-variant="vs"] td:nth-child(1) {
		width: 34%;
	}

	.comparison-table[data-variant="vs"] th:nth-child(2),
	.comparison-table[data-variant="vs"] td:nth-child(2),
	.comparison-table[data-variant="vs"] th:nth-child(3),
	.comparison-table[data-variant="vs"] td:nth-child(3) {
		width: 33%;
	}

	.comparison-table thead th {
		font-size: 0.92em;
	}

	.comparison-table[data-variant="vs"] + p {
		font-size: 0.8em;
	}

	/* ② お客様の声カード：さらに余白を詰める */
	.voice-card {
		padding: 0.6em 0.75em;
		margin-bottom: 0.5em;
	}

	.voice-card__text {
		font-size: 0.92em;
		line-height: 1.6;
	}

	.voice-card__who {
		font-size: 0.78em;
	}

	/* ③ 捜索事例カード：狭い画面でも見切れが出る幅に */
	.testimonials__wrapper > .testimonial {
		min-width: 11.5em;
	}

	.testimonials__wrapper .testimonial__figure figcaption {
		font-size: 0.9em;
	}

	/* ⑤ コンテンツ画像：スマホでは幅いっぱいに戻す */
	.content-img {
		max-width: 100%;
	}

	/* ④ FAQ：タップ領域は保ちつつ文字を少し小さく */
	.faq-item__q {
		padding: 0.8em 2.7em 0.8em 0.8em;
		font-size: 0.95em;
	}

	.faq-item__a {
		padding: 0.8em 0.8em 0.8em 0.9em;
		font-size: 0.9em;
		line-height: 1.7;
	}
}

/* ========================= 追記ここまで ========================= */



/* -------------------------------------------------------------------------
   ⑥ 注意書き（※表記・補足説明）  追加日: 2026-08-03
   -------------------------------------------------------------------------
   用途 : 画像の下や表の下に置く「※〜」の注釈
   使い方: <p class="article-note">※スタッフの判断により、使用機材は変わる場合がございます。</p>
   経緯 : これまで記事ごとに style="font-size:0.85em" 等をinlineで書いており、
          記事間で 0.7em / 0.85em が混在していた。クラス化して一元管理する。
   ------------------------------------------------------------------------- */
.article-body .article-note {
	font-size: 0.7em;
	color: #888;
	margin: 4px 0 16px;
	line-height: 1.6;
}

/* ========================= 追記ここまで ========================= */