@charset "utf-8";
        /* Base Reset */
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        :root {
            --slate-50: #f8fafc;
            --slate-100: #f1f5f9;
            --slate-200: #e2e8f0;
            --slate-300: #cbd5e1;
            --slate-400: #94a3b8;
            --slate-500: #64748b;
            --slate-600: #475569;
            --slate-700: #334155;
            --slate-800: #1e293b;
            --slate-900: #0f172a;
            --blue-600: #2563eb;
            --white: #ffffff;
        }
/* CSS Document */
.print,
.slidemenu { /*印刷時のみ表示*/ 
	display: none;
	visibility: hidden;}
.clear { clear:both;}
body {
	position: relative;
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	font-size: medium/*14px*/;
	line-height: 1.8;
    background-color: var(--slate-100);
    color: var(--slate-900);
	-webkit-font-smoothing: antialiased;
}
        .font-mono { font-family: 'JetBrains Mono', 'BIZ UDGothic', monospace; }
        .font-sans { font-family: 'Noto Sans JP', sans-serif; }
i, em { font-family: "Times New Roman", Times, serif;}
#resume em,
blockquote em {
	font-weight: bold;}
iframe {
	border-width: 0 !important;
}
section {
	width: 100%/*900px*/;
	min-height: 100%;
	position: relative;
	margin: 0 0 0 0;
	padding: 0 0 0 0;}
section#booklist {
	margin: 0 auto;
	padding: 5vw 0;
    background-color: var(--slate-200);
	}
section#otherInfo {
	padding: 0 0 5vw 0;}
section#errata {
	margin: 0 0;
	padding: 1px 10vw 5vw 10vw;
    background-image: 
        linear-gradient(to right, rgba(203, 213, 225, 0.5) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(203, 213, 225, 0.5) 1px, transparent 1px);
    background-size: 40px 40px;
    border-bottom: 1px solid var(--slate-300);
}

#footer_container { 
	margin-top: 0;
	margin-bottom: -30px;}

a { color: #420;}
	a rt { text-decoration: none;}
a:visited { color: #620}
	.pnavi a { color: #420}
	a.kino {
		/* display: inline-block !important; */
		margin: 0 auto;
		padding-right: 20px !important;
		width: fit-content;
		text-align: left;
		background: url("/events/2018_bookfair/img/popupk.png") right bottom no-repeat;
		background-size: 18px;}
	a.ndl {
		display: inline-block !important;
		width: 20px;
		height: 20px;
		vertical-align: middle;
		background:url("/img/ndldc.svg") right center no-repeat;
		background-size: contain;}

#resume table.layout a,
	#list .bookListTable a { display: inline;}
.mainCell .title a { display: inline-block !important;}
.open { display: inline-block;}

img { border: none;}
#about sup { color: #F30;}

/*************************************************/
h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: normal;
	line-height: 1.1 !important;
	font-family:  'Noto Serif JP', serif;}
h2 {
	width: 900px;
	margin: 1.3em auto .25em auto;
	padding: 0 0;
	font-size: 32px;
	color: #420/*#76240D*/;
	text-shadow: 1px 1px 1px #fff;
}
	h2 a { color: #000/*#000 #420 #76240D*/; border: none;}
.description {
		width: 900px;
		margin: .1em auto;
		padding: 0 0;
		color: #000;
		text-shadow: 1px 1px 1px #fff;}

/******************************************************************************
*******************************************************************************/
table#eyeCatch {
	width: 920px;
	margin: 10px auto 70px auto;
	font-size: 15px;
	line-height: 1.3;}
table#eyeCatch td { vertical-align: top;}
table#eyeCatch td.leftCell { text-align: left; width: 46%;}
table#eyeCatch td.rightCell { text-align: right;}
table#eyeCatch img {
	width: 100px;
	margin: 3px 0 0 0;}

table#eyeCatch .copy {
	width: 70%;
	text-align : left;
	color: #fff;
	text-shadow: 1px 1px 1px #000;}
table#eyeCatch td.rightCell .copy { float: right; padding-left: 15px;;}
table#eyeCatch td.leftCell .copy { float: left; padding-right: 5px;line-height: 1.5}


/*************************************
	#corner
*************************************/
div.corner {
	clear: both;
	width: 900px;
	margin: 0 auto;}
div.corner h3,
div.corner h4,
div.corner h5,
div.corner h6 {
	font-size: 100%;
	margin: 5px 0;
	padding: 0 0;
	line-height: 1.1;
	text-shadow: 1px 1px 1px #aaa;}
	div.corner table.textLayout h3,
	div.corner table.textLayout h4,
	div.corner table.textLayout h5,
	div.corner table.textLayout h6,
	div.corner div.textBox h3,
	div.corner div.textBox h4,
	div.corner div.textBox h5,
	div.corner div.textBox h6 {
		margin-left: 0;
		margin-top: 0;}

div.corner > h3, div.corner > h3 a, 
	div.corner > h4, div.corner > h4 a { 
		font-weight: bold;
		border: none !important;}
	div.corner > h3 { 
		font-size: 28px; 
		color: #000/*#76240D*/; 
		margin-top: 1em;}
	div.corner > h4, 
		div.corner > h4 a { 
			font-size: 24px; 
			color: #76240D;}

/**********************************************************************
	テキストボックスの共通仕様
**********************************************************************/
div.text a,
table.textLayout td .title a {
	text-decoration:none;}
.mainCell .title a,
	.mainCell .cover a,
	table.bookListTable td.title a{}
div.text a:hover,
	table.textLayout td a:hover {
	/*padding: 2px 2px*/;
	border: 1px solid #620/*#030*/;
	border-radius: 3px/*12px*/;}


/*************************************
	.text
*************************************/
div.text { line-height: 160%;}
div.text:after {
	content:"";
	display: block;
	clear: both;
}
div.text p {
	margin: .2em 0px .5em 0px;
	padding: 0 0 0 0;}
	div.text .note {
	display: block;
	margin: .5em 0px .5em 0px;
	padding: 0 0 0 0;
	font-size: 90%;
	color: #666;}
	div.text .mainCell .note {
		width: 140px;
		margin: 10px auto 0 auto;
		padding: 0 0 0 0;
		color: #000;
		text-align: left;
		font-size: 11px;}
	div.text p.description {
		width: auto;
		margin: .5em 0px .5em 0px;
		font-size: 1rem;
		text-shadow: 1px 1px 1px #fff;}
div.text ul {
	margin: .5em 0px .5em 0px;
	padding: 0 0 0 1.5em;}
div.text ul ul {
	margin: .3em 0em .3em 0;
	padding: 0 0 0 1.5em;}
	div.text ul ul li, div.text ol ul li { margin-left:0; padding-left:0;}
div.text ul ol {
	margin: .3em 1.5em .3em 2em;
	padding: 0 0 0 0;}
	div.text #hojp ul, 
	div.text #hojp li { 
		list-style:none;
		line-height: 1.4;
		margin-left: .25em;
		padding-left:0;}
		div.text #hojp li li { 
			font-weight:  normal;
			margin-left: .5em;}

div.text ul, div.text ol, div.text li { line-height: 1.5}

div.fnote {
  color: #000;
  font-size: 11px;
  line-height: 1.2;
  margin: 0 20px 0 20px;
  padding: .7em 0 0 .7em;
  border-top: 1px dotted #999;
}

div.text#resume blockquote { 
	margin: 1rem 0;}

/*************************************
	.textLayout
*************************************/
table.textLayout {
	width: 880px;
	border-collapse: collapse;
	margin: 15px auto 10px auto;
	padding: 0 0 0 0;}
table.textLayout th, table.textLayout td {
	vertical-align: middle;}
table.textLayout thead th {/*ヘッダ：見出し*/ 
	width: auto;
	text-align: center;
	font-weight: bold;}
table.textLayout tbody th {/*見出し側*/ 
	width: 11em;
	vertical-align: top;
	text-align: right;
	font-weight: normal;}
table.textLayout td {/*テキスト側*/}

div.corner table.textLayout th h3 {
	width: 10em;
	margin: .3em 0 0 0; padding: 0 0 0 0;
	line-height: 1.2;}
table.textLayout th h3 div {
	margin-bottom: 5px;
	font-size: 24px;
	font-weight: bold;}
table.textLayout th h3 small { 
	font-size: 20px;
	font-weight: normal;}
table.textLayout th h3 span { 
	font-size: 14px;
	font-weight: normal;
	display: block;
	margin: 0 0 0 0;}

div.corner table.textLayout td h4 { font-weight: bold; line-height: 1.2;}
table.textLayout td div {
	margin-top: 4px;
	margin-bottom: 5px;}
table.textLayout td div p {
	margin-top: 0;}

div.text table.textLayout ul,
	div.text table.textLayout ol {
	margin: .5em 0 .5em 1.3em;
	padding: 0 0 0 0;}
div.text table.textLayout ul ul,
div.text table.textLayout ol ul {
	margin: .3em 1.5em .3em 0;
	padding: 0 0 0 .5em;}

div.text table.textLayout#tocTable ul,
	div.text table.textLayout#tocTable ol {
	margin-left: 0 !important;
	padding-left: 0 !important;
	list-style: none !important;
	font-size: large;}
div.text table.textLayout#tocTable ul ul,
div.text table.textLayout#tocTable ol ul {
	margin-left:1em;
	padding-left: 1em;}

div.text table#popTable ul,
	div.text table#popTable li {
	margin-right: 0.5em;}

.alignR { text-align: right;}
.alignC { text-align: center;}
.alignL { text-align: left;}


/*************************************
	#info
*************************************/
div.text#info { 
	display: flex;
	line-height: 130%;
	}
#info table.textLayout { 
	margin: 1rem 0 0 1rem; 
	width: auto;
	order: 1;}
div.text#info table.textLayout th,
div.text#info table.textLayout td {
	padding: 15px 0;}
	div.text#info table.textLayout th {
		width: 7.5em;
		padding-right: 20px;
		color: var(--slate-900);
		font-family: 'Noto Serif JP', serif;
		font-weight: bold;
		font-size: 24px;}
a#kinoMap { 
	display: block;
	order: 2;
	width: 250px;
	margin: 0 0 0 20px;
	padding: 0 0 0 0;
	text-align: right;}

table.textLayout thead th, table.textLayout thead td,
	#info table.textLayout tbody th,#info table.textLayout tbody td,
	#profile table.textLayout tbody th,#profile table.textLayout tbody td {
	border-bottom: 1px dashed #fff;}
#info table.textLayout thead th div,
#profile table.textLayout thead th div {
	line-height:1.1;
	text-align: left;}
	#info table.textLayout thead th.leftCell div,
	#profile table.textLayout thead th.leftCell div {
		margin-left: 0px;
		margin-right: 10px;}
	#info table.textLayout thead th.rightCell div,
	#profile table.textLayout thead th.rightCell div {
		margin-left: 10px;
		margin-right: 0px;}

#info table.textLayout tbody td div,
#profile table.textLayout tbody td div {
	margin-top: 4px;
	margin-bottom: 5px;
	margin-left: 0px;}
	#info table.textLayout tbody td.leftCell div,
	#profile table.textLayout tbody td.leftCell div {
	margin-left: 0px;
	margin-right: 10px;}
	#info table.textLayout tbody td.rightCell div,
	#profile table.textLayout tbody td.rightCell div {
	margin-left: 10px;
	margin-right: 0px;}




/*************************************
	#resumeBox
*************************************/
/* ページ内リンクメニュー */
nav {
	position: sticky;
	z-index: 999;
	display: flex;
    justify-content: space-between;
    align-items: center;
	top: 0;
	left: 0;
	margin: 0 0;
    padding: 0.75rem 1.5rem;
	text-align: center;
    background-color: var(--slate-900);
    color: var(--white);
    font-family: 'JetBrains Mono', 'BIZ UDGothic', monospace, sans-serif; 
    font-size: small;
    letter-spacing: 0.15em;
}
nav > a { 
	display: block;}
ul#menu {
	display: flex;
	justify-content: center;
	align-items: center;
	list-style: none;}
	ul#menu, ul#menu li { 
		margin: 0 0;
		padding: 0 0;
		list-style: none;}
nav > a, 
nav > a:visited,
#menu a,
#menu a:visited {
	display: block;
	padding: 6px 20px 4px 20px;
	color: #fff;
	text-decoration: none;}
nav > a:hover,
#menu a:hover {
	color: #FFF;
	border: 1px solid #fff;
	border-radius: 3px;}
#menu a { margin: 0 auto;}


/*************************************/

table#pageDescriptionTable { 
	margin: 15px auto 0 auto;}
	table#pageDescriptionTable td { vertical-align: top;}
	table#pageDescriptionTable td.left {
		padding-right: 1em;
		color: #333;}
	table#pageDescriptionTable td.left p{
		margin-top: 0px;margin-bottom: 0;}
	
	table#pageDescriptionTable td.left div#participants {/*現在の申込者数*/
		color: #000;
		line-height: 1;
		vertical-align: bottom;}
	table#pageDescriptionTable td.left div#participants span {/*数字*/
		font-size: 50px;
		color: #0D3827/*#F3CE41*/;
		font-family:  'Noto Serif JP', serif;
		vertical-align: bottom;
		letter-spacing: -0.1em;}

table#pageDescriptionTable td.left ul {
	margin-top: .3em;
	margin-left: 1em;
	margin-bottom: .3em;
	padding-left:1.5em;}
table#pageDescriptionTable td.left ul li {
	margin-top:0;
	margin-bottom:0;
	padding-left:0;}

table#pageDescriptionTable td.right {
	width: /*450px*//*470px*/370px;}

/* 更新情報*/
table#updateTable {
		width: 100%;
		border-collapse: collapse;
		font-size: 12px;
		margin-bottom: 3px;
		font-family: 'JetBrains Mono', 'BIZ UDGothic', monospace;
		background-color: #fff;}
	table#updateTable th { 
		font-size: 100%;
		font-weight: normal;
		text-align: left;
		vertical-align: middle;
		padding: .3em .6em;
		color: #000;
		background-color: var(--slate-50);
		border: 1px solid var(--slate-200);
		}
	table#updateTable td {
		vertical-align: middle;
		border: 1px solid var(--slate-200);}
	table#updateTable dl {
		margin: 0 0;
		padding: .5em .7em 1em .7em;;
		max-height: 25rem;
		min-height: 15rem;
		overflow: auto;
		line-height: 1.3;}
	table#updateTable dt { 
		clear:both;
		margin: 0 0 0 0; padding: 0 0 0 0;
		width: 5.2em;
		float: left;
		font-weight: bold;
		white-space: nowrap;
		font-family: Arial, Helvetica, sans-serif;}
	table#updateTable dd { 
		margin-left: 5.7em;
		margin-bottom: 0.2em;
		padding:0;
		padding-left: 0;
		padding-bottom: .3em;
		color: #666;}
	table#updateTable dt:before {
		clear:both; }
	table#updateTable dd:after {
		clear:both;}


table#updateTable dd blockquote {
	margin: .3em 0 !important;
	padding: .4em .8em !important;
	text-indent: 0;
    border-radius: 4px;
    border: 1px solid #ddd;
	background-color: #fcfcfc;}
table#updateTable dd ul,
	table#updateTable dd ul li {
	margin:0 0 0 .7em;padding: 0 0 0 .1em;}
table#updateTable dd ol {
	margin:0 0 0 1em;padding: 0 0 0 1em;}


/**********************************************************************
	#info
**********************************************************************/
div.corner#info dl {
	margin: 15px 15px;}
div.corner#info dl dt { 
	width: 8em;
	margin: 0 0 0 0; padding: 0 0 0 0;
	float: left;}
div.corner#info dl dd { margin-left: 1em;}
div.corner#info dl ul {
	margin: .2em 0 0 1em;
	padding: 0 0 0 0;}
div.corner#info dl ul li{
	margin-left: 1em;}


.open { 
	font-size: 95%; 
	padding-left: .5em;
	/*font-weight: bold;*/}
	#list .open { 
	display: block;
	clear: both;
	padding: 1em 2em;
	/*font-weight: bold;*/}
	#list span.open { 
		display: inline;
		padding: 0em 0em;}
.open a { 
	color: #600;}
.showhide { display: none;}

/**********************************************************************
	#about
**********************************************************************/
#about table.textLayout td div {
	margin-top: 4px;
	margin-bottom: 10px;}
div.text#about table.textLayout ul,
div.text#about table.textLayout li {
	line-height: 1.2;}

/**********************************************************************
	#poster
**********************************************************************/
table#posterTable {
	width: 880px;
	margin: 0 auto 10px auto;
	border-collapse:separate;
	font-size: 12px;
	line-height: 1.2;}
	table#posterTable th,
	table#posterTable td { vertical-align: top;}
	table#posterTable th { text-align: right;width: 13em; padding: 3px 6px 3px 0;}
	table#posterTable td { width: 28%; padding: 3px 6px;}

div.corner#poster h3,
div.corner#poster h4 {
	margin-top: 1.5em;
	margin-bottom: 5px;
	font-size: 1.1;
	font-weight: bold;}
div.corner#poster blockquote { 
	margin: .5em 2em 1em 2em; 
	padding: 1em 2em;
	font-size: 12px;
	background-color:#fff;
	border: 1px dashed #ccc;}

/**********************************************************************
	.booklist 書籍リスト
**********************************************************************/
div.corner#list { 
	margin: 0 auto;
	padding: 0 0;}
div.corner#list h3, div#list blockquote { width: 100%;}

div.corner#list h3,
	div.corner#list h4,
	div.corner#list h5,
	div.corner#list h6 { 
		clear: both;
		font-weight: bold;}
div.corner#list h3 { margin-top: 1em;}
div.corner#list h4 { margin-top: 2em;}
div.corner#list h5 { margin-top: 2.5em; 
	padding: .3em .7em; font-weight: bold; 
	border-left: 4px double #420;
	border-bottom: 1px dotted #420;
	}
div.corner#list h6 { margin-top: 1em; font-weight: bold; border-left: 2px solid ; padding-left: .7em;}
div.corner#list h3 em {
	display: inline-block;
	vertical-align: sub;
	padding-right: .2em;
	font-size: 200%; 
	font-family: "Shimanami JIS2004", "Ryumin Medium KL", "Midashi Min MA31", "A1 Mincho"}
div.corner#list h3 span { 
	font-size: 1.2rem; 
	font-weight: normal;
	text-shadow: none;}
div#list blockquote {
	clear: both;
	margin: 20px 0;
	padding: 1.5em 2em;
	border: 1px solid #ddd;
	border-radius: 6px;
	background-color: rgba(256, 256, 256, 0.25);
	line-height: 2;
}
	div.corner#list blockquote h4 {
		margin-left: 20px;
		padding-bottom: .5em;
		font-family: inherit;
		font-size: medium;}
		div.corner#list blockquote > h4:nth-of-type(1) {
			margin-top: 20px;
		}
	div#list blockquote ol,
	div#list blockquote ul {
		margin: 0 0 0 2em;} 
	div#list blockquote dl {
		margin: 0 0 0 1.5em;padding: 0 0 0 0;} 
	div#list blockquote dt {
		margin: 0 0 0 0;padding: 0 0 0 0; font-weight: bold;}
	div#list blockquote dl dd {
		margin: 0 0 0 2.5em;padding: 0 0 0 0;}
div#list blockquote a {
	border-bottom: 1px dashed rgb(68, 34, 0, 0.25);}
	div#list blockquote a:hover {
		border-bottom: 1px solid;}
div#list blockquote .author {
	display: block;
	text-align: right;}
/*********************************************************************************************************************/
div.text#resume blockquote#hojp {
	margin: 0 0 10px 0;
    padding: 10px 20px;
    border: 1px solid #ddd;
    border-radius: 6px;
    background-color: #fff;
    line-height: 2;}
blockquote#hojp table.layout { width:100%; font-size: medium;}
blockquote#hojp table.layout td.cover { width: 24em;}
/*********************************************************************************************************************/

/* カバー付き書籍 */
div.mainCell {
	margin: 23px auto 0 auto;
	text-align:center;
	color: #000;
	font-size: large;
	line-height: 1.1;}
div.mainCell .cover {
	margin: 0 0 5px 0;}
	div.mainCell .cover img {
		width: 240px;
		border: 1px solid #ddd;}
div.mainCell .title {
	margin: 2px auto 1px auto;
	padding: 0 0;
	text-align: center;}
	div.mainCell .title span {
		display: block;}
div.mainCell .author,
	div.mainCell .publisher {
	width: fit-content;
	margin: 2px auto 1px auto;
	padding: 0 0;
	text-align: center;
	line-height: 1.3;}
	div.mainCell .author span.a_year {
		display: block;}

/* ブックリスト */
table.bookListTable {
	width: 100%;
	margin-top: 22px;
	font-size: medium;
	border-bottom: 1px dashed #ccc;
	/* background-color: rgba(256, 256, 256, 0.1); */}
table.bookListTable td {
	padding: 7px 2px;
	line-height:1.2;
	vertical-align: middle;
	border-top: 1px dashed #ccc;}
table.bookListTable td.a_author,
table.bookListTable td.a_title,
table.bookListTable td.a_publisher,
table.bookListTable td.a_year {}
table.bookListTable td.mainCell div.title span {
		display: inline; font-size: 12px; color:#FF3300; }
	/* セルの幅 */
table.bookListTable td.a_author {
	width: 12em;
	padding-left: .5em;}
table.bookListTable td.a_title {}
table.bookListTable td.a_publisher,
table.bookListTable td.a_year {}
	table.bookListTable td.a_publisher { 
		width: 11em;
		text-align:left;}
	table.bookListTable td.a_year { 
		width: 4em;
		text-align: center;}

div.tab {
	margin: 0 0 0 20px;
	font-size: 12px;
	color: #000;}
	div#list blockquote div.tab {
		margin: 0 0 .7em 30px;
		color: #444;}

        /*  罫線ありテーブル  */
table.lined { width:auto; margin: .5em 0 .5em 1em; border-collapse: collapse; font-size: small;border: 1px solid #999; line-height: 1.4em;}
	table.lined th, table.lined td { vertical-align: middle; border: 1px solid #ccc; padding: 3px 3px;}
	table.lined thead th { background-color:#eef;}
	table.lined thead td { font-weight: bold;background-color:#f6f6ff;}
	table.lined tbody th { font-weight: normal;background-color:#fdfdff;}

.alignLeft { text-align: left;}
.alignCenter { text-align: center;}
.alignRight { text-align: right;}

/****************************************************************************
	photos, links
****************************************************************************/

ul#links, ul#photos { 
	list-style: none;
	border: 1px solid transparent;
	margin: 0px 15px 10px 15px;
	padding: 0 0 0 0;}
ul#links li,
ul#photos li {
	list-style: none;
	display: inline-block;
	margin: 0 0 0 0;
	padding: 0 5px 0 0;
	}

div.corner .pnavi {
	clear: both;
	margin-right: 20px;
	font-size: smaller;
	text-align: right;}

/****************************************************************************
	pop
****************************************************************************/
div.text div.pop a { display: inline;}
div.pop {
	position:relative;
	clear: both;
	margin: 1rem 0 1rem 0;
	padding: 1.5rem 1.5rem;
	font-size: 20px;
	color: #444;
	line-height :1.4;
	border: 1px solid #ddd;
	border-radius: 4px;
	background-color: #ffe;
	background-image: url('../2019_bookfair/img/recommend2.png');
	background-position: top right ;
	background-repeat: no-repeat;
	font-family:  'Noto Serif JP', serif;
}
div.pop .title { 
	padding-right: 20px;
	line-height :1.1;
	color:#000;
	font-weight: bold;
	margin-bottom: .75rem;
	letter-spacing: -2px;}
	div.pop .title.roman { letter-spacing: 0px;}
div.pop .title i {  
	display: block;
	float: left;
	margin: 0 .5rem 1rem .1rem;
	letter-spacing: 0;}
div.pop .title em {
	letter-spacing: 0;}
div.pop p { 
	/*clear: both; */
	margin: 0 0; 
	padding: 0 0;}
div.pop span.name { 
	display: block; 
	text-align: right; 
	line-height:1.1;
	font-family:  'Noto Serif JP', serif;
	letter-spacing: -1px;}
div.pop span.name small { font-size: 1rem;}
div.pop p:after {
	display: block;
	content: "";
	clear: both;
}
div.pop div.photoBox { 
	float: left; 
	margin: 0 1em 0 0;}
div.pop div.photoBox img { 
	width: 175px;
	max-height:9em;}

span.popLayout {
	display: flex;
	width: 100%;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: stretch;
	margin: 5px 0;
	gap: 10px;
	}
div.pop.left, div.pop.right {
	display: block;
	margin: 0 0;
	flex-basis: 50%;
	flex-grow: 1;}
	div.pop.left { margin-right: 0;}
	div.pop.right { margin-left:0;}
div.pop.left p,
div.pop.right p { 
	margin: 0 0 0 0;} 



/* ゲストPOP書体 */
div.pop.guest { 
	background-image: url('../2019_bookfair/img/recommend1.png');
	line-height: 1.6;
	color: #000;}
div.pop.guest span.name { font-family: inherit;}

/****************************************************************************
	写真
****************************************************************************/

#photoBox { 
	width: 450px;
	float:right; 
	margin: 0 0 25px 25px;}
#photoBox img { 
	width: 100%;
	height: auto;
	box-shadow: 1px 1px 3px rgba(0,0,0,.5);}
/*
.fb-like.fb_iframe_widget { width: auto !important;}
.fb-like.fb_iframe_widget span,
	.fb-like.fb_iframe_widget span iframe {
	width: auto !important;}*/

/* 在庫僅少 */
.kinsho:before, .urikire:before { 
		display: inline-block;
		width: 47px;
		position: relative;
		top: 2px;}
	.kinsho:before { content: url('/img/icons/kinsho.gif')}
	.urikire:before { content: url('/img/icons/urikire.gif');}


/****************************************************************************
	誤植修正
****************************************************************************/
section#errata div.text.corner {}
table.textLayout.errata {
	width: 100%}
table.textLayout.errata th, 
	table.textLayout.errata td {
	vertical-align: middle;
	padding: .3em .6em;
	line-height: 1.2;
	border: 1px dashed #fff;}
table.textLayout.errata thead th, 
	table.textLayout.errata tbody th {
    width: auto;
    font-weight: normal;}
table.textLayout.errata thead th, 
	table.textLayout.errata thead td { 
	text-align: center;
	border: none;}
table.textLayout.errata tbody th { text-align: left;}
table.textLayout.errata th.erratum_section {
    padding: .2em 1em;
    color: #006;
    background-color: #f6f6f6;
    text-align: left;
    font-weight: normal;
    border-width: 1px 0px 1px 1px;
    border-color: #ccc #ccc #ccc #006;
    border-style: solid;}
table.textLayout.errata th.page {
	width: 5.5em;}
/****************************************************************************
	WEBフォント
****************************************************************************/
.popup:after, .top:after, .pageback:after, .amazon:after, .google:after, .map:after {}
.popup:after,
	.amazon:after {
    display: inline-block;
    margin-left: 0.1em;
    margin-right: 0.1em;
	font-family: 'WebHostingHub-Glyphs';
    background: none;
    font-style: normal;
    font-weight: normal;
	vertical-align: middle;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.popup:after { content: '\f332';}
.amazon:after { content: '\f527'}
/**/
.pdf:after {
	display: inline-block;
	font-family: FontAwesome;
    margin-left: 0.1em;
    margin-right: 0.1em;
    font-style: normal;
    font-weight: normal;
	vertical-align: middle;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.pdf:after { content: '\f1c1'}



/****************************************************************************
	#hero
****************************************************************************/
section#hero {
	margin: 0 0;
	padding: 20vh 10vw;
    background-image: 
        linear-gradient(to right, rgba(203, 213, 225, 0.5) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(203, 213, 225, 0.5) 1px, transparent 1px);
    background-size: 40px 40px;
    border-bottom: 1px solid var(--slate-300);
}
#hero-grid {
    display: grid;
    grid-template-columns: 25vw auto;
	grid-template-rows: 1fr auto auto auto auto auto;
    gap: 0 3vw;
	margin: 0 0;
	padding: 0 0;
}
#hero-grid > a { 
	display:block;
	grid-column: 1 / 2;
	grid-row   : 1 / 7;
    background: var(--white);
    padding: 2vw;
    border: 1px solid var(--slate-300);
    position: relative;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);}
	#hero-grid > a img { 
		width: 100%;
        height: auto;
        display: block;
	}
#hero-grid > h1, #hero-grid > h2,#hero-grid > h3,#hero-grid > h4,#hero-grid > h5 {
	grid-column: 2 / 3;
	margin: 0 0;
	padding: 0 0;
    line-height: 1.2;
}
#hero-grid > h4 {/* 酒井泰斗プロデュース */
    font-size: 2.5vw;
    font-weight: 400;
    color: var(--slate-500);
    margin-bottom: 1vw;}
#hero-grid > h1 {/* 日本政治学史からはじめる書棚散策 */
	width: 50vw;
	color: var(--slate-900);
    font-size: 4.5vw;
    font-weight: 700;
    margin-bottom: 1vw;}
	#hero-grid > h1 > span { font-size: 3.25vw;}
#hero-grid > h2 {/* 紀伊國屋書店新宿本店ブックフェア */
	color: var(--slate-900);
    font-size: 2.75vw;
    font-weight: 400;
    margin-bottom: 3vw;}
#hero-grid > h3 /* 2025年12月27日（土）～2026年1月31日（金） */,
#hero-grid > h5 {/* 企画協力：中央公論新社 */
	margin-bottom: 1vw;
	font-size: 2vw;
	color: var(--slate-500);
}
/****************************************************************************
	#entrance
****************************************************************************/
#entrance {
	margin: 0 auto;
	padding: 5vw 0
}
#resumeBox {

}
#resume {
}
#toc {
}
/****************************************************************************
	#booklist
****************************************************************************/
.toc {
	width: 80%;
	margin: 1em auto;
}
.toc td {
	width: 20%;
	text-align: center;
	padding: 1em auto;
}
.list ul {
	margin-left: 1.5em;
	padding-left: 0;
}
.list li {
	margin-left: 0em;
	padding-left: 0;
}
.blk blockquote p {
	margin: 0 0 .5em 0;
	padding: 0 0 0 0
}
table.lined.schedule th, table.lined.schedule td {
	vertical-align: middle;
}
iframe.hatena-counting-gadget-177643 {
	float: right;
	position: fixed;
	bottom: 5px;
	right: 5px;
	z-index: 10;
	opacity: 0.75;
}
