@charset "UTF-8";

.entry-title_p
{
	margin-bottom: 0;
}

#links
{
	padding-top: 0;
}

#links > div
{
	transform: translateY(-5px);
}

#title
{
	background-image: url(https://ko.dougukan.jp/_img/bg.jpg);
	background-size:75%;
	background-position: 50%;
}

#title > div
{
	padding-bottom: 0;
	padding-right:0;
	padding-left:0;
}

#title figure
{
	position:absolute;
	top: 0;
	right: 0;
	height: 100%;
	aspect-ratio: 228 / 140;
}
#title figure > img
{
	aspect-ratio: 228 / 140;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

#title .text
{
	font-family: 'Zen-B', serif;
	font-weight: 700;
	padding: max(2rem, 3vw) 2rem;
}
#title h2
{
	font-size: clamp(2rem, 4vw, 3rem);
	display:flex;
	align-items: flex-end;
	line-height: 1;
}

#title h2 .abc
{
	font-size: max(.7rem, .5em);
	margin-left: .7em;
}
#title .text .kana
{
	margin-top: .25em;
	font-size: clamp(1rem, 4vw, 1.5rem);
}

#main
{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	padding-top: 4vw;
	padding-bottom: 4vw;
}

#subnavi
{
	position:sticky;
	top: 5rem;
	max-width: 20rem;
}

.page_dir span._l,
.page_dir span._r,
.page_dir a._l,
.page_dir a._r
{
	margin: 1rem 0;
}

#subnavi a.box
{
	width: 100%;
	margin-top: .5em;
	text-align: center;
	white-space: normal;
}

#subnavi a._dir
{
	white-space: nowrap;
	font-size: 1rem;
	font-family: 'Zen-B', serif;
	font-weight: 700;
	padding-top: .75em;
	padding-bottom: .75em;
	line-height: 1;
}

#subnavi a._dir._n
{
	color: rgb(150, 150, 150);
}

#subnavi a._dir span.num
{
	margin-right: 1em;
}

#subnavi a._dir span.title
{
	white-space: normal;
	letter-spacing: normal;
}

#subnavi a._dir .subject
{
	width: 16.5rem;
    display: flex;
    flex-direction: row;
}

#subnavi a._dir + a._dir
{
	border-top: 1px solid rgb(150, 150, 150);
}

#content
{
	margin-left: 5vw;
	max-width: 600px;
}

#content h1
{
	margin-bottom: max(2rem, 3vw);
}

#content h1 .num
{
	margin-right: .5em;
}

#content .border
{
	border-bottom: 1px solid;
	display:block;
	width: 2rem;
	-webkit-transition: all 1s ease;
	-moz-transition: all 1s ease;
	-ms-transition: all 1s ease;
	-o-transition: all 1s ease;
	transition: all 1s ease;
}
.end #content .border
{
	transition-delay: .2s;
	width: 100%;
}
#content .border:after,
#content .border:before
{
	content:"";
	position:absolute;
	display:block;
	background-size:cover;
	background-position:50%;
	width: 6px;
	height: 10px;
	bottom: -5.5px;
	background-image:url(https://ko.dougukan.jp/_img/anchor.svg);
}

#content .border:after
{
	right:0;
	transform:rotate(180deg);
	transform-origin:center;
}

#content h3
{
	margin-bottom: 1em;
}

#content div.content > div + div
{
	margin-top: max(2rem, 3vw);
}

#content div.content > div > div + div
{
	margin-top: max(1.5rem, 2vw);
}

#content .cap
{
	font-size: .9em;
	color: rgb(100, 100, 100);
}

#content > div > ul
{
	margin-top: max(3rem, 5vw);
	font-size: .9em;
}

#content > div > ul li
{
	list-style: none;
	padding-left: 0;
}

#content > div >ul:not([class]):not([id]) li:before
{
	display:none;
}

.endline
{
	margin: 5vw 0 2vw;
}

.prev_next
{
	width: 100%;
	display: flex;
	justify-content:space-between;
}

.prev_next .page_dir > a
{
	cursor:pointer;
	display:flex;
}

.prev_next .page_dir span._r,
.prev_next .page_dir span._l
{
	width: 2rem;
}

body:not(.touch) .prev_next .page_dir > a:hover span._r._s
{
	transform:translateX(0rem);
}
body:not(.touch) .prev_next .page_dir > a:hover span._l._s
{
	transform: translateX(0rem) rotate(180deg);
}

/*//////////////////////////////////////////////////////////////////////////////////
///////////////////////////////// MEDIA SCREEN ////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////*/

@media screen and (max-width: 800px)
{
	#main
	{
		flex-direction:column-reverse;
	}
	#content
	{
		margin-left:0;
		margin-bottom: 3vw;
		max-width: 100%;
	}
	#subnavi
	{
		position:relative;
		top: 0;
		width: 100%;
		margin-bottom: 3vw;
	}
}

@media screen and (max-width: 500px)
{
	#title figure
	{
		position:relative;
		width: 100%;
	}
}