/* single-news */

main.site-main.single-news {
  max-width: 800px;
  width: 100%;
  margin: auto;
  padding: 5px;
  background: #fff;
  padding: 15px;
  border-radius: 8px;
  box-shadow: 0 2px 5px rgb(184 188 191);
  flex: 1; /* メインコンテンツが伸縮可能に */
}
.single-news-content h1.single-news-title {
  text-align: left;
  font-size: 1.6rem;
  margin-bottom: 20px;
}
.heading {
  padding: .5em .7em;
  border-left: 5px solid #2589d0;
  background-color: #f2f2f2;
  color: #333333;
}
/*
body.single-news_topics .single-news-thumbnail {
  max-width: 400px;
  height: auto;
  width: 100%;
  margin: 0 auto;
}
*/
body.single-news_topics .post-date {
  color: #888;
  font-size: 0.9rem;
  margin-bottom: 8%;
}
body.single-news_topics .view-archive .btn-view-archive {
  display: inline-block;
  margin-top: 20px;
  padding: 10px 20px;
  background-color: #28a745;
  color: white;
  text-decoration: none;
  border-radius: 5px;
}
body.single-news_topics .view-archive .btn-view-archive:hover {
  background-color: #218838;
}
body.single-news .single-news .post-date {
  text-align: left;
}
 .post-nav-btn {
  justify-content: space-evenly;
}
.prev-post,
.next-post {
  margin: 10px;
  color: #3cbfb3;
}
.prev-post a,
.next-post a {
  color: #05ab9c;
  text-decoration: none;
}
.prev-post a:hover,
.next-post a:hover {
  border-bottom: 1px solid #05ab9c;
}
.prev-post a:visited,
.next-post a:visited {
  color: #05ab9c;
}
.back-to-home {
  max-width: 300px;
  margin: auto;
  text-align: center;
  padding: 5px 10px;
  border-radius: 20px;
  background: rgba(220, 97, 3, 0.5);
}
.back-to-home a {
  color: #fff;
  text-decoration: none;
}

/* 投稿内のお問い合わせボタン */
body.news_topics-template-default .custom-button-wrapper {
  text-align: center;
  margin: 10% auto;
  padding: 10px;
  border: 4px dotted #73b3d1;
  border-radius: 20px;
  max-width:500px;
  width: 100%;
}
/* 固定文言 */
body.news_topics-template-default .custom-button-wrapper p {
  font-size: 1.2rem;
  font-weight: bold;
  margin: 10px 0;
}
body.news_topics-template-default .custom-button-wrapper a.custom-button {
  display: inline-block;
  padding: 10px 20px;
  font-size: 16px;
  color: #fff;
  background: #0073aa;
  border-radius: 10px;
  text-decoration: none;
}
body.news_topics-template-default .custom-button-wrapper a.custom-button:visited {
  color: #fff;
}
body.single-news .custom-button-wrapper a.custom-button:hover {
  background-color: #fff;
  color: #0073aa;
  border: 1px solid #0073aa;
}
/* トップへ戻る */
.back-to-top {
    text-align: center;
    margin-top: 20px;
}
.back-to-top-button {
    display: inline-block;
    padding: 10px 20px;
    background-color: #fff;
    color: #3cbfb3;
    text-decoration: none;
    border-radius: 30px;
    border: 2px solid #3cbfb3;
    font-size: 1rem;
}
.back-to-top-button:visited {
  all: unset;
  background-color: #fff;
  color: #3cbfb3;
}
.back-to-top-button:hover {
  color: #fff;
  background-color: #3cbfb3;
}
/* セミナーダイジェスト用一覧リスト */
.post-list-nav {
	padding: 10px; 
	border: 4px dotted #73b3d1; 
	border-radius: 20px; 
	max-width: 500px; 
	width: 100%; 
	margin: 10% auto 5%; 
	list-style-type: none;
}
.post-list-nav a:visited {
	color: inherit;
}
/*目次*/
.table-of-contents {
	padding: 10px; 
	border: 3px dotted #52a2e2; 
	border-radius: 10px; 
	max-width: 600px; 
	width: 100%; 
	margin: 8% 0; 
	list-style-type: none;
}
/*背景*/
.single-news_topics .bg-gray {
	margin: 5% auto;
	background: #fafafa;
	padding: 5px;
	border-radius: 10px;
}
/*ボーダー*/
.single-news_topics .border-blue {
	margin: 5% auto;
	border: 2px solid #88c0d6;
	border-radius: 10px;
	padding: 10px;
}

/* footerを常に下に固定させる */
/* 全体リセット */
html, body.news_topics-template-default {
  margin: 0;
  padding: 0;
  height: 100%; /* 必須: ビューポートの高さを確保 */
}

body.news_topics-template-default {
  display: flex;
  flex-direction: column;
  min-height:100vh;
}

/* メインコンテンツの可変領域 */
main {
  flex: 1;
  overflow: hidden;
}

/* フッターのスタイル */
body.news_topics-template-default footer {
  /*position:fixed;*/
  position:relative;
  bottom: 0;
  width: 100%;
}

@media (max-width: 768px) { 
  .single-news-content h1.single-news-title {
    font-size: 1.4rem;
  }
  .single-news-content p {
  margin: 10px 0;
  }
  body.news_topics-template-default .custom-button-wrapper p {
	  font-size: 1rem;
  }
}
@media (max-width: 480px) { 
  .single-news-content h1.single-news-title {
    font-size: 1.2rem;
  }
  .single-news-content p {
    font-size: 1rem;
    }
}