@charset "utf-8";

/*------全体-------*/

body{
	margin:0px;
	padding:0px;
	background-color: #e7e8f2;
	font-size:13px;
	text-align:center;
	font-family: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	box-sizing: border-box;
}

a:link, a:visited {
	color: #1122cc;
	text-decoration: none;
	display: inline-block;
}
a:hover {
	text-decoration: underline;
	color: #dd0000;
}

#container{
	max-width: 1000px;
    width: 100%;
	margin:0 auto;
	word-break: break-word;
	border-style:solid;
	border-color:gray;
	border-width:0px 1px 1px 1px;
	padding:0px;
	background-color: #ffffff;
}

#header{
	height: 133px;
	background-color:#415ca2;
	text-align: left;
}

#main{
	text-align:center;
}

#main_right{
	width:270px;
	padding:20px 0px;
	float: left;
	text-align:left;
	box-sizing: border-box;
}

#main_left{
    float: left;
    padding:0px 20px 0px 50px;
    width: 730px;
    text-align:left;
    border-right: 1px solid #bbbbbb;
    box-sizing: border-box;
    }

#footer{

}

/*************
/* ロゴ
*************/
#header .logo{
	float:left;
	padding:20px 0 0 15px;
	position: relative;
	top: 18px;
}

.logo a{
	font-size:20px;
	font-weight:bold;
	line-height:1;
	color:#fff;
	font-family:"Palatino Linotype", "Book Antiqua", Palatino, serif;
}

.logo span{
	font-size:12px;
	font-weight:normal;
}

#header h1,
#header .site-description{
	font-size:11px;
	color:#fff;
	top: 8px;
	position: relative;
}

/*************
/* お問い合わせ
*************/

#content {
	width: 600px;
	text-align: center;
	border-right: 1px solid #bbbbbb;
	margin-bottom: 10px;
}

nav{
	text-align: center;
}
nav ul{
	margin: 0 ;
	padding: 0 ;
}
nav ul{
	display: flex;
	justify-content: center;
}

nav li{
	list-style: none;
	width: auto;
	min-width: 90px;
}
nav li:not(:last-child){
	border-right:2px solid #ddd;
}
nav a{
	text-decoration: none;
	color: #333;
}
nav a.current{
	color: #00B0F0;
	border-bottom:2px solid #00B0F0;
}
nav a:hover{
	color:#F7CB4D;
	border-bottom:2px solid #F7CB4D;
}


/* サイド画面 */
.sidebody {
	margin: 1.5em 8px;
	line-height: 130%;
	font-size: smaller;
}
.sidebody ul {
	margin: 0 0 0 1.5em;
	padding: 0;
}
.side-ttl {
	border-left: 4px solid #2E7D32;
	padding-left: 7px;
	margin: 1em 0;
	font-weight: bold;
}

/*------カレンダー-------*/

#cal{
	width:175px;
	margin-bottom:10px;
}

#cal td{
	text-align:center;
	font-size:11px;
	font-family:"Verdana","ＭＳ Ｐゴシック";
}

#cal .w{
	width:25px;
	font-weight:bold;
	font-family:"Verdana","ＭＳ Ｐゴシック";
}

/*------アーカイブ等-------*/

#news,#comment,#category,#archive{
	width:100%;
	margin-bottom:20px;
}

#news{
	margin-top:20px;
}

.mi{
	font-weight:bold;
	margin-bottom:4px;
}

.lines{
	margin-bottom:4px;
	font-size:11px;
	font-family:"Verdana","ＭＳ Ｐゴシック";

}

/*------部分-------*/

#midasi{
	font-size:15px;
	font-family:Arial;
	padding:0px;
	margin-top:50px;
}


#mlink_last,#mlink_next{
	font-size:8px;
	font-weight:bold;
	position:relative;
	bottom:2px;
}

#mlink{
	font-size:11px;
	font-weight:bold;
}

#navi{
	text-align:center;
	width:100%;
	margin-bottom:8px;
}
#navi_prev{
	padding:0px;
	float:left;
	width:45%;
	text-align:right;
}
#navi_main{
	padding:0px;
	float:left;
	width:10%;
	font-size:11px;
	font-family:"Verdana","ＭＳ Ｐゴシック";
}
#navi_next{
	padding:0px;
	float:left;
	width:45%;
	text-align:left;
}

.cl{
  /* display消す */
}

.cl::after {
  content: "";
  display: block;
  clear: both;
}

#pdf{
	font-size:11px;
	font-weight:bold;
}

#comkaku{
	font-size:11px;
	font-weight:bold;
	margin-bottom:4px;
}

#konotb{
	font-size:11px;
	margin-top:10px;
	font-weight:bold;
}

#kono{
	font-size:11px;
	font-weight:bold;
	margin-bottom:10px;
}

#iconwin{
	position:absolute;
	top:0px;
	left:0px;
	border-style:solid;
	border-width:1px;
	width:156px;
	height:auto;
	border-color:#999999;
	background-color:#ffffff;
}

#result{
	position:absolute;
	top:0px;
	left:0px;
	border-style:solid;
	border-width:1px;
	width:250px;
	height:150px;
	border-color:#999999;
	background-color:#ffffff;
	word-break:break-all;
	visibility:hidden;
	padding-top:10px;
}

#count{
	margin-top:10px;
}

/*------記事-------*/


/* 記事タイトル */
.subject {
	font-weight: bold;
	font-size: larger;
	padding: 2px 2px;
	margin: 0 0 1em;
	letter-spacing: 1px;
	color: #4d8d4b;
}

.kiji .date{
	text-align:left;
	font-size:10px;
	margin-bottom:10px;
	color: #006600;
}
.kiji .toukou{
	text-align:right;
	font-size:13px;
	margin-bottom:6px;
	font-family:"Arial","ＭＳ Ｐゴシック";
	padding-right: 5px;
}

.kiji .message{
	line-height:140%;
	margin-top:14px;
	margin-bottom:6px;
}

.kiji{
	border-bottom-width:2px;
	border-bottom-style:dotted;
	border-bottom-color:#666666;
	margin-bottom:10px;
}


.res{
	margin-bottom:20px;
	border-bottom-width:2px;
	border-bottom-style:dotted;
	border-bottom-color:#666666;
}

.res .toukou{
	text-align:right;
	font-size:11px;
}

.res .message{
	line-height:130%;
}

#page{
	text-align:center;
	font-size:11px;
	font-family:"Verdana","ＭＳ Ｐゴシック";
}

.tb{
	margin-bottom:10px;
}

/*------フォント-------*/

.s{
	font-size:11px
}

.s2{
	font-size:11px;
	font-weight:bold
}

.b{
	font-weight:bold
}

.in{
	border-style:solid;
	border-color:#B6B6B6;
	border-width:1px;
	margin-bottom:4px;
}

h1,h3{
	margin:0px;
	padding:0px;
}

/*------ページ-------*/

ul.pagelink{
	list-style-type: none;
	margin: 0;
}

ul.pagelink li{
	float: left;
}

ul.pagelink a, ul.pagelink li.current{
	display: block;
	width: 30px;
	line-height: 30px;
	text-align: center;
	text-decoration: none;
	border-style: solid;
	border-color: #000;
	border-width: 1px;
	margin-right: 5px;
	padding:1px;
	font-size: 13px;
	background-color: #eee;
}

ul.pagelink a:hover{
	background-color: #F0F0F0;
}

ul.pagelink:after{
	display: block;
	clear: both;
	content: '';
}

ul.pagelink li.current{
	font-weight:bold;
}


div#page {
	position: relative;
	overflow: hidden;
}

div#page ul {
	float:left;
	left:50%;
	position:relative;
	padding:0px;
}

div#page li {
	float:left;
	left:-50%;
	position:relative;
}


@media screen and (max-width:600px){
	body{
		line-height: 150%;
		font-size:15px;
	}
	#container{
		width:100%;
		margin:0 auto;
		word-break: break-word;
		border-width:0px;
		padding:0px;
	}

	#header{
		box-sizing: border-box;
		width:100%;
	}

	#main{
		text-align:center;
		display: flex;
		flex-direction: column;
	}

	#main_left{
		box-sizing: border-box;
		width:100%;
		padding:10px;
		order: 1;
	}

	#main_right{
		box-sizing: border-box;
		width:100%;
		padding:0px;
		order: 2;
	}

	#cal{
		width:90%;
	}
	
	#cal td{
		font-size: inherit;
	}
	#cal .w{
		width:14%;

	}

	#navi{
		width:100%;
	}
	#navi_prev{
		width:40%;
	}
	#navi_main{
		font-size: inherit;
		width:20%;
	}
	#navi_next{
		width:40%;
	}
	
	#midasi{
		font-size: inherit;
		padding:0px;
		margin-top:20px;
	}


	#mlink_last,#mlink_next{
		font-size:13px;
	}

	#mlink{
		font-size:13px;
	}

	#comkaku{
		font-size: inherit;
	}

	#konotb{
		font-size: inherit;
	}

	#kono{
		font-size: inherit;
	}

	.subject h3{
		font-size:15px;
	}

	.res .toukou{
		font-size: inherit;
	}


	#page{
		font-size:13px;
	}

	.s{
		font-size:13px
	}

	.s2{
		font-size:13px;
	}


	.kiji .date{
		font-size:13px;
		margin-bottom: 3px;
	}
	.kiji .toukou{
		font-size:13px;
	}
	.kiji .message{
		line-height:140%;
		margin-top:14px;
		margin-bottom:6px;
	}

	.kiji{
		padding:0px 10px 0px 10px;
	}

	.res{
		margin-bottom:20px;
	}



	.res .message{
		line-height:130%;
	}


	.tb{
		margin-bottom:10px;
	}
	
	#kono,#comkaku,#resfo{
		margin-left: 10px;
	}
	
	.lines{
		font-size: inherit;
	}
	
	#content {
		width: 100%;
	}
}

.article-title {
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 15px;
}

.article-body {
  line-height: 1.8;
  font-size: 16px;
}

.breadcrumb {
  font-size: 12px;
  margin-bottom: 10px;
  color: #777;
}

/* 2026-05-26 ブログ表示調整
   ・記事本文を少し大きく
   ・カテゴリー項目を12pxに
   ・2カラムの縦線を下まで伸ばす
   ・記事上部へ戻るボタンを表示
-------------------------------------------------- */
#main{
	display: flex;
	align-items: stretch;
}

#main_left{
	float: none;
	border-right: 1px solid #bbbbbb;
}

#main_right{
	float: none;
}

/* ナビ周辺だけに出ていた短い縦線を消し、2カラムの区切り線に統一 */
#content{
	border-right: 0;
}

.kiji .message{
	font-size: 15px;
	line-height: 1.8;
}

#category .lines,
#category .lines a{
	font-size: 12px;
	line-height: 1.6;
}

#article-top{
	position: relative;
	top: -10px;
}

#page-top{
	position: fixed;
	right: 18px;
	bottom: 18px;
	z-index: 9999;
	padding: 10px 13px;
	background: #415ca2;
	color: #ffffff;
	font-size: 13px;
	line-height: 1;
	border-radius: 999px;
	text-decoration: none;
	box-shadow: 0 2px 8px rgba(0,0,0,0.25);
}

#page-top:visited{
	color: #ffffff;
}

#page-top:hover{
	background: #2E7D32;
	color: #ffffff;
	text-decoration: none;
}

@media screen and (max-width:600px){
	#main{
		display: flex;
		flex-direction: column;
	}

	#main_left{
		border-right: 0;
	}

	#content{
		border-right: 0;
	}

	.kiji .message{
		font-size: 16px;
		line-height: 1.8;
	}

	#category .lines,
	#category .lines a{
		font-size: 12px;
	}

	#page-top{
		right: 12px;
		bottom: 12px;
		padding: 9px 12px;
	}
}

/* 2026-05-27 和モダン化デザイン調整
   ・生成り背景、深緑/朱色アクセント
   ・記事とサイドバーをカード型に
   ・ヘッダー/ナビ/見出しを現代的に整理
   ・2カラム間の縦線はメイン下部まで伸ばす
-------------------------------------------------- */
:root{
	--wm-bg: #f6f1e7;
	--wm-paper: #fffdf8;
	--wm-paper-strong: #ffffff;
	--wm-ink: #2f2b24;
	--wm-muted: #746b5f;
	--wm-line: #e2d8c9;
	--wm-green: #23483a;
	--wm-green-light: #3f6f5a;
	--wm-vermilion: #b64b35;
	--wm-shadow: 0 12px 28px rgba(72, 54, 34, 0.09);
}

html{
	scroll-behavior: smooth;
}

body{
	background:
		radial-gradient(circle at top left, rgba(182, 75, 53, 0.08), transparent 320px),
		linear-gradient(180deg, #faf7ef 0%, var(--wm-bg) 100%);
	color: var(--wm-ink);
	font-size: 15px;
	line-height: 1.75;
	font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
}

a:link,
a:visited{
	color: var(--wm-green);
	text-decoration: none;
}

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

#container{
	max-width: 1080px;
	border: 0;
	background: rgba(255,255,255,0.72);
	box-shadow: 0 18px 45px rgba(52, 39, 24, 0.10);
}

#header{
	height: auto;
	min-height: 154px;
	padding: 0 32px;
	box-sizing: border-box;
	background:
		linear-gradient(135deg, rgba(35,72,58,0.96), rgba(63,111,90,0.92)),
		linear-gradient(90deg, rgba(255,255,255,0.08) 1px, transparent 1px);
	background-size: auto, 28px 28px;
	display: flex;
	align-items: center;
	text-align: left;
}

#header .logo{
	float: none;
	position: static;
	padding: 0;
}

.logo a{
	font-family: "Yu Mincho", "Hiragino Mincho ProN", "YuMincho", serif;
	font-size: 30px;
	line-height: 1.25;
	letter-spacing: 0.08em;
	color: #fffaf1;
	text-shadow: 0 2px 12px rgba(0,0,0,0.18);
}

.logo a:hover{
	color: #fffaf1;
	text-decoration: none;
}

.logo span{
	display: inline-block;
	margin-top: 8px;
	font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
	font-size: 13px;
	font-weight: normal;
	letter-spacing: 0.16em;
	opacity: 0.9;
}

#header h1,
#header .site-description{
	position: static;
	margin-top: 12px;
	font-size: 13px;
	font-weight: normal;
	line-height: 1.7;
	color: rgba(255,255,255,0.86);
}

#main{
	display: flex;
	align-items: stretch;
	gap: 24px;
	padding: 28px 30px 34px;
	box-sizing: border-box;
	text-align: left;
}

#main_left{
	float: none;
	flex: 1 1 auto;
	min-width: 0;
	width: auto;
	padding: 0 24px 0 0;
	border-right: 1px solid var(--wm-line);
	box-sizing: border-box;
}

#main_right{
	float: none;
	flex: 0 0 250px;
	width: 250px;
	padding: 0;
	box-sizing: border-box;
}

#content{
	width: 100%;
	margin-bottom: 20px;
	border-right: 0;
	text-align: left;
}

nav{
	margin-bottom: 12px;
	text-align: left;
}

/* 御朱印道本体とメニューのフォントを統一 */
#content > nav,
#content > nav a{
	font-family: "Hiragino Sans", "Yu Gothic", "YuGothic", Meiryo, sans-serif;
}

nav ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 8px;
	margin: 0;
	padding: 0;
}

nav li{
	min-width: 0;
	width: auto;
}

nav li:not(:last-child){
	border-right: 0;
}

nav a:link,
nav a:visited{
	display: block;
	padding: 8px 13px;
	border: 1px solid var(--wm-line);
	border-radius: 999px;
	background: var(--wm-paper);
	color: var(--wm-green);
	font-size: 13px;
	font-weight: bold;
	line-height: 1.2;
	text-decoration: none;
}

nav a:hover{
	border-color: rgba(182,75,53,0.35);
	background: #fff7ed;
	color: var(--wm-vermilion);
	text-decoration: none;
}

.breadcrumb{
	margin: 12px 0 18px;
	color: var(--wm-muted);
	font-size: 12px;
}

.breadcrumb a{
	color: var(--wm-muted);
	text-decoration: none;
}

.breadcrumb a:hover{
	color: var(--wm-vermilion);
	text-decoration: underline;
}

#navi{
	margin: 0 0 18px;
	padding: 10px 0;
	border-top: 1px solid var(--wm-line);
	border-bottom: 1px solid var(--wm-line);
	color: var(--wm-muted);
}

#navi_main{
	font-size: 12px;
	letter-spacing: 0.08em;
}

.kiji{
	margin: 0 0 32px;
	padding: 28px 30px 24px;
	border: 1px solid rgba(226,216,201,0.95);
	border-bottom: 1px solid rgba(226,216,201,0.95);
	border-radius: 20px;
	background: var(--wm-paper-strong);
	box-shadow: var(--wm-shadow);
}

.subject{
	position: relative;
	margin: 0 0 18px;
	padding: 0 0 14px;
	border-bottom: 1px solid var(--wm-line);
	color: var(--wm-green);
	font-family: "Yu Mincho", "Hiragino Mincho ProN", "YuMincho", serif;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.45;
	letter-spacing: 0.04em;
}

.subject::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: -1px;
	width: 64px;
	height: 2px;
	background: var(--wm-vermilion);
}

.subject h3{
	font-size: inherit;
	line-height: inherit;
}

.kiji .message{
	margin-top: 18px;
	margin-bottom: 18px;
	color: var(--wm-ink);
	font-size: 16px;
	line-height: 1.95;
}

.kiji .message p{
	margin-top: 0;
	margin-bottom: 1.2em;
}

.kiji .message img{
	max-width: 100%;
	height: auto;
	border-radius: 12px;
}

.kiji .date{
	font-size: 12px;
	color: var(--wm-green-light);
}

.kiji .toukou{
	margin-top: 18px;
	padding-top: 12px;
	padding-right: 0;
	border-top: 1px solid var(--wm-line);
	color: var(--wm-muted);
	font-size: 12px;
	font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
}

.res,
.tb{
	padding: 18px;
	border: 1px solid var(--wm-line);
	border-radius: 14px;
	background: var(--wm-paper);
}

#kono,
#konotb,
#comkaku{
	color: var(--wm-green);
	font-size: 14px;
}

.sidebody{
	margin: 0 0 18px;
	padding: 18px;
	border: 1px solid var(--wm-line);
	border-radius: 18px;
	background: var(--wm-paper-strong);
	box-shadow: 0 8px 22px rgba(72,54,34,0.07);
	color: var(--wm-ink);
	font-size: 13px;
	line-height: 1.75;
}

.sidebody img{
	max-width: 100%;
	height: auto;
	border-radius: 12px;
}

.sidebody p{
	margin: 12px 0;
}

.sidebody ul{
	margin: 0;
	padding: 0;
	list-style: none;
}

.sidebody li{
	padding: 7px 0;
	border-bottom: 1px dashed var(--wm-line);
}

.sidebody li:last-child{
	border-bottom: 0;
}

.side-ttl,
.mi{
	position: relative;
	margin: 0 0 12px;
	padding: 0 0 9px 14px;
	border-left: 0;
	border-bottom: 1px solid var(--wm-line);
	color: var(--wm-green);
	font-size: 15px;
	font-weight: bold;
	line-height: 1.4;
	letter-spacing: 0.04em;
}

.side-ttl::before,
.mi::before{
	content: "";
	position: absolute;
	left: 0;
	top: 0.34em;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--wm-vermilion);
}

.lines{
	margin: 0;
	font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
	font-size: 12px;
	line-height: 1.5;
}

#category .lines a:link,
#category .lines a:visited{
	display: block;
	padding: 6px 0;
	border-bottom: 1px dashed var(--wm-line);
	color: var(--wm-ink);
	font-size: 12px;
	text-decoration: none;
}

#category .lines a:hover{
	color: var(--wm-vermilion);
	text-decoration: none;
}

input[type="text"],
input[type="password"],
textarea,
.in{
	max-width: 100%;
	padding: 8px 9px;
	border: 1px solid var(--wm-line);
	border-radius: 8px;
	box-sizing: border-box;
	background: #fffefb;
	font-family: inherit;
	font-size: 14px;
}

input[type="button"],
input[type="submit"]{
	padding: 8px 14px;
	border: 0;
	border-radius: 999px;
	background: var(--wm-green);
	color: #fff;
	font-weight: bold;
	cursor: pointer;
}

input[type="button"]:hover,
input[type="submit"]:hover{
	background: var(--wm-vermilion);
}

#page{
	font-size: 13px;
}

ul.pagelink a,
ul.pagelink li.current{
	border-color: var(--wm-line);
	border-radius: 999px;
	background: var(--wm-paper);
	color: var(--wm-green);
}

ul.pagelink a:hover{
	background: #fff7ed;
	color: var(--wm-vermilion);
}

#footer{
	background: var(--wm-green);
	color: rgba(255,255,255,0.82);
}

#foot-box{
	padding: 18px;
	font-size: 12px;
	text-align: center;
}

#article-top{
	position: relative;
	top: -18px;
}

#page-top{
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 9999;
	padding: 11px 15px;
	border: 1px solid rgba(255,255,255,0.35);
	border-radius: 999px;
	background: rgba(35,72,58,0.94);
	color: #fffaf1;
	font-size: 13px;
	font-weight: bold;
	line-height: 1;
	text-decoration: none;
	box-shadow: 0 10px 24px rgba(35,72,58,0.28);
}

#page-top:visited{
	color: #fffaf1;
}

#page-top:hover{
	background: var(--wm-vermilion);
	color: #ffffff;
	text-decoration: none;
}

.ta-c{
	text-align: center;
}

@media screen and (max-width: 700px){
	body{
		font-size: 15px;
		line-height: 1.8;
	}

	#container{
		width: 100%;
		box-shadow: none;
	}

	#header{
		min-height: 132px;
		padding: 22px 18px;
	}

	.logo a{
		font-size: 24px;
	}

	.logo span,
	#header h1,
	#header .site-description{
		font-size: 12px;
	}

	#main{
		display: flex;
		flex-direction: column;
		gap: 18px;
		padding: 16px 12px 24px;
	}

	#main_left{
		width: 100%;
		padding: 0;
		border-right: 0;
		order: 1;
	}

	#main_right{
		width: 100%;
		flex: none;
		padding: 0;
		order: 2;
	}

	nav ul{
		gap: 7px;
	}

	nav a:link,
	nav a:visited{
		padding: 8px 10px;
		font-size: 12px;
	}

	#navi_prev,
	#navi_next{
		width: 38%;
	}

	#navi_main{
		width: 24%;
	}

	.kiji{
		padding: 20px 16px 18px;
		border-radius: 16px;
	}

	.subject{
		font-size: 21px;
	}

	.kiji .message{
		font-size: 16px;
		line-height: 1.9;
	}

	.sidebody{
		padding: 16px;
	}

	#page-top{
		right: 12px;
		bottom: 12px;
		padding: 10px 12px;
		font-size: 12px;
	}
}
.midashi {
  font-size: 1.15em;
  font-weight: bold;
  margin: 18px 0 8px;
  padding: 8px 12px;
  border-left: 5px solid #8b5a2b;
  background: #f7f3ec;
  line-height: 1.5;
}


/* 2026-06-08 記事本文内の見出し・表の余白調整
   見出しと表の余白は各要素のmarginで調整する
   h2は「通常版」と「装飾版」を使い分け、h3は装飾なしにする
-------------------------------------------------- */

/* 通常のh2：装飾なし。記事本文の中だけに限定 */
.kiji .message h2{
	display: block;
	clear: both;
	box-sizing: border-box;
	margin: 1.45em 0 0.65em;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--wm-green, #23483a);
	font-family: "Yu Mincho", "Hiragino Mincho ProN", "YuMincho", serif;
	font-size: 1.28em;
	font-weight: bold;
	line-height: 1.45;
	letter-spacing: 0.03em;
}

/* 装飾ありh2：記事本文で <h2 class="h2-deco">見出し</h2> と書く */
.kiji .message h2.h2-deco,
.kiji .message h2.deco,
.kiji .message h2.midashi-h2{
	padding: 0.58em 0.85em;
	border-left: 5px solid var(--wm-vermilion, #b64b35);
	border-bottom: 1px solid var(--wm-line, #e2d8c9);
	background: #f7f3ec;
	color: var(--wm-green, #23483a);
}

/* h3：装飾なし。小見出しとして余白と太さだけ整える */
.kiji .message h3{
	display: block;
	clear: both;
	box-sizing: border-box;
	margin: 1.15em 0 0.45em;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--wm-ink, #2f2b24);
	font-family: inherit;
	font-size: 1.1em;
	font-weight: bold;
	line-height: 1.45;
	letter-spacing: normal;
}

.kiji .message h2:first-child,
.kiji .message h3:first-child{
	margin-top: 0;
}

/* 2026-09-16: 明示した <br> は表示する。
   隣接セレクターは途中のテキストも無視するため、h2 + br 等を隠すと
   見出し後の本文の最初の改行まで消える。不要な空行は本文側で調整する。 */

.kiji .message .midashi{
	box-sizing: border-box;
	clear: both;
	margin: 1.45em 0 0.65em;
}

.kiji .message .midashi:first-child{
	margin-top: 0;
}

/* 記事本文内の表だけを整える。カレンダーやサイドバーの表には影響させない */
.kiji .message table{
	width: 100%;
	max-width: 100%;
	margin: 1.15em 0;
	border-collapse: collapse;
	border-spacing: 0;
	background: #fffefb;
	font-size: 0.95em;
	line-height: 1.6;
}

.kiji .message th,
.kiji .message td{
	height: auto;
	padding: 8px 10px;
	border: 1px solid var(--wm-line, #e2d8c9);
	vertical-align: top;
	line-height: 1.55;
}

.kiji .message th{
	background: #f7f3ec;
	color: var(--wm-green, #23483a);
	font-weight: bold;
	text-align: left;
}

.kiji .message table p{
	margin-top: 0;
	margin-bottom: 0.6em;
}

.kiji .message table p:last-child{
	margin-bottom: 0;
}

.kiji .message hr{
	clear: both;
	margin: 1.5em 0;
	border: 0;
	border-top: 1px solid var(--wm-line, #e2d8c9);
}

@media screen and (max-width: 700px){
	.kiji .message h2{
		font-size: 1.2em;
	}

	.kiji .message h3{
		font-size: 1.05em;
	}

	.kiji .message table{
		display: block;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.kiji .message th,
	.kiji .message td{
		white-space: normal;
	}
}


/* 2026-09-06 ブログトップ記事カード
   トップページとページ送り先だけを、全文表示ではなく一覧カードにする。 */
.blog-card{
	display:flex;
	gap:18px;
	margin:0 0 18px;
	padding:16px;
	border:1px solid #d9dfda;
	border-left:4px solid #4d8d4b;
	border-radius:8px;
	background:#fff;
	box-shadow:0 2px 8px rgba(0,0,0,0.06);
	box-sizing:border-box;
}

.blog-card-image-link{
	flex:0 0 190px;
	width:190px;
	align-self:flex-start;
}

.blog-card-image{
	display:block;
	width:190px;
	height:142px;
	object-fit:cover;
	border-radius:6px;
	background:#f2f2f2;
}

.blog-card-body{
	flex:1 1 auto;
	min-width:0;
}

.blog-card-date{
	margin:0 0 6px;
	font-size:12px;
	line-height:1.5;
	color:#777;
}

.blog-card-title{
	margin:0 0 10px;
	padding:0;
	font-size:18px;
	line-height:1.55;
	font-weight:bold;
	font-family:"Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
}

.blog-card-title a:link,
.blog-card-title a:visited{
	display:inline;
	color:#2f5d50;
	text-decoration:none;
}

.blog-card-title a:hover{
	color:#b24b32;
	text-decoration:underline;
}

.blog-card-excerpt{
	margin:0;
	font-size:14px;
	line-height:1.8;
	color:#444;
}

.blog-card-more{
	margin-top:12px;
	text-align:right;
}

.blog-card-more a:link,
.blog-card-more a:visited{
	padding:6px 10px;
	border:1px solid #4d8d4b;
	border-radius:999px;
	color:#2f5d50;
	font-size:13px;
	line-height:1.4;
	text-decoration:none;
}

.blog-card-more a:hover{
	background:#f1f6f2;
	text-decoration:none;
}

@media screen and (max-width:600px){
	.blog-card{
		display:block;
		padding:12px;
		margin-bottom:14px;
	}

	.blog-card-image-link,
	.blog-card-image{
		width:100%;
	}

	.blog-card-image-link{
		display:block;
		margin-bottom:12px;
	}

	.blog-card-image{
		height:auto;
		aspect-ratio:4 / 3;
	}

	.blog-card-title{
		font-size:17px;
		line-height:1.55;
	}

	.blog-card-excerpt{
		font-size:14px;
		line-height:1.75;
	}
}
/* 駐車場情報全体の枠組み */
.shrine-parking-info {
    border: 1px solid #ccc;
    padding: 20px;
    border-radius: 8px;
    background-color: #fafafa;
    margin: 20px 0;
    font-family: sans-serif;
}

/* 概要ボックス */
.shrine-parking-info .summary-box {
    background-color: #e8f5e9;
    border-left: 5px solid #4caf50;
    padding: 10px 15px;
    margin-bottom: 20px;
}
.shrine-parking-info .main-point {
    margin: 0;
    font-size: 1.1em;
}

/* 見出し */
.shrine-parking-info h2 {
    border-bottom: 2px solid #333;
    padding-bottom: 5px;
    margin-top: 0;
}
.shrine-parking-info h3 {
    border-left: 4px solid #333;
    padding-left: 10px;
    margin-top: 20px;
}

/* 基本情報のテーブル */
.shrine-parking-info .info-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
}
.shrine-parking-info .info-table th, 
.shrine-parking-info .info-table td {
    border: 1px solid #ddd;
    padding: 10px;
    text-align: left;
}
.shrine-parking-info .info-table th {
    background-color: #eeeeee;
    width: 25%;
}

/* リスト関係 */
.shrine-parking-info .sub-text {
    font-size: 0.9em;
    color: #666;
}
.shrine-parking-info ul {
    padding-left: 20px;
}
.shrine-parking-info li {
    margin-bottom: 10px;
    line-height: 1.5;
}
