@charset "utf-8";
@font-face{
	/*
	 NeniypeMinchoは、SIL Open Font License 1.1で公開されている【源暎ちくご明朝（げんえい築五みんちょう） Ver 3.1】をサブセット化したもの 
	*/
	font-family:"NeniyeMincho";
	src: local("Noto Serif JP"), url("font/NeniMin-Regular.woff2") format("woff2");
	font-weight:normal;
	font-display:swap;
}
@font-face{
	font-family:"NeniyeMincho";
	font-weight:bold;
	font-display:swap;
	src: local("Noto Serif JP"), url("font/NeniMin-Regular.woff2") format("woff2");
}
:root{
	color-scheme: light dark;
	font-size:clamp(13px, 1.12vi + 10.8px, 22px);
	/* 18px;*/
	--text-color:light-dark(oklch(3.4% 0.34 0), oklch(70% 0.01 240));
	--bgcolor:light-dark(#f9f8f0, oklch(22% 0.04 230));
	--text-color-sub:dimgray;
	--ac-color:light-dark(oklch(30% 0.3 0), oklch(65% 0.5 120));
	--lineheight:1.8rem;
}
body{
	font-family:"NeniyeMincho","Iowan","Iowan Old Style","Palatino","Yu Mincho","YuMincho",serif;
	width:92%;
	margin:calc(var(--lineheight)*3) auto calc(var(--lineheight)) auto;
	padding:1rem 0;
	max-width:38rem;
	background-color:var(--bgcolor);
	color:var(--text-color);
	counter-reset:number 0;
}
h1{
	font-size:1.4rem;
	text-align:center;
	text-wrap:balance;
}
h2{
	font-size:1.2rem;
	padding:0;
	margin:calc((var(--lineheight)*2 - 1.2rem)/2) 0;
	text-align:center;
}
header+h2{
	margin-top:calc(var(--lineheight)*3 - 1.2rem);
}
header+p{
	margin-top:calc(var(--lineheight)*3);
}

p{
	line-height:var(--lineheight);
	margin:0;
	text-indent:1rem;
	text-align:left;
}
p::first-letter{
	font-feature-settings:"palt";
}
p:has(> img){
	text-indent:0;
}
p > img{
	width:100%;
	height:auto;
	border-radius:0.34rem;
}
header+p,h2+p,hr+p{
	text-indent:0;
}
hr{
	margin:calc(var(--lineheight)) 0;
	border:none;
	height:1px;
	background-image:linear-gradient(to right,transparent,#ddc,transparent);
}
header>p,footer,nav{
	font-family:"Palatino","Times New Roman",serif;
	text-align:center;
	font-style:italic;
	text-indent:0;
}
footer{
	margin:calc(var(--lineheight)*2) 0;
	color:var(--text-color-sub);
}
ul{
	list-style:none;
	margin-left:0;
	padding-left:2rem;
}
ul li{
	line-height:var(--lineheight);
	text-indent:-1rem;
}
ol.dream{
	margin:var(--lineheight) 0;
	padding:0;
	padding:0;
	list-style:none;
}
ol.dream li time{
	font-family:"Iowan","Iowan Old Style","Palatino",serif;
	font-style:italic;
	color:var(--text-color-sub);
	font-variant-numeric: oldstyle-nums;
}
ol.dream li{
	line-height:var(--lineheight);
	padding:0;
	margin:calc(var(--lineheight)/4) 0;
}
ol.dream > li > a >h3{
	font-size:1rem;
	font-weight:normal;
	margin:0;
	padding:0;
	order:-2;
}
ol.dream > li>a:link{
	text-decoration-style:none;
	text-decoration-color:transparent;
	text-decoration-thickness:0;
}
ol.dream > li> a{
	display:flex;
	justify-content:space-between;
}
ol.dream > li> a::after{
	content:"";
	order:-1;
	flex-grow:2;
	background:linear-gradient(
	to bottom,
	transparent 0 49.5%,
	var(--text-color-sub) 50% 51%,
	transparent 51% 100%);
	margin:0 0.5rem;
}
ol.dream li a:hover > time{
	color:var(--ac-color);
	text-decoration-color:var(--ac-color);
	text-decoration-thickness:1px;
}

article a:link[href^=http]::after, a:visited[href^=http]::after{
counter-increment: number 1;
content:" *" counter(number) ") ";
font-size:0.6rem;
color:var(--ac-color);
vertical-align:super;
}

article a:link::after, a:visited::after{
counter-increment: number 1;
content:" †" counter(number) " ";
font-size:0.6rem;
color:var(--ac-color);
vertical-align:super;
}
a:link{
	color:var(--text-color);
	text-decoration-skip-ink:none;
	text-decoration-thickness:0px;
	text-underline-offset:0.2rem;
	text-decoration-style:none;
	text-decoration-color:var(--text-color--sub);
}
a:visited{
	color:var(--text-color);
}
a:hover{
	color:var(--ac-color);
	text-decoration-skip-ink:none;
	text-decoration-thickness:0.5px;
	text-underline-offset:0.2rem;
	text-decoration-style:solid;
	text-decoration-color:var(--ac-color);
	text-decoration-thickness:1px;
}
rt{
	font-size:0.45rem;
}