/*
Theme Name: 海鳥社 SWELL Child
Description: 海鳥社の投稿型を維持するSWELL子テーマ
Template: swell
Version: 0.3.18
*/

.kaicho-book-feature {
	display: grid;
	grid-template-columns: minmax(220px, 330px) minmax(0, 1fr);
	gap: clamp(2rem, 6vw, 5rem);
	align-items: center;
	max-width: 920px;
	margin: 2.5rem 0 5rem;
}
.kaicho-book-feature__image {
	display: grid;
	place-items: center;
	min-height: 330px;
	background: #f5f5f2;
	box-shadow: 12px 14px 25px rgba(0, 0, 0, .10);
}
.kaicho-book-feature__image img { width: 100%; max-height: 520px; object-fit: contain; }
.kaicho-book-feature__label { margin: 0 0 .75rem; color: #71695d; font-size: .8rem; letter-spacing: .18em; }
.kaicho-book-feature__title { margin: 0 0 1rem; font-size: clamp(1.7rem, 3vw, 2.45rem); line-height: 1.45; }
.kaicho-book-feature__title a, .kaicho-book-card__title a { color: inherit; text-decoration: none; }
.post_content .kaicho-book-feature__title,
.post_content .kaicho-book-card__title { background: none; color: #333; padding: 0; position: static; }
.post_content .kaicho-book-feature__title::before,
.post_content .kaicho-book-card__title::before { content: none; display: none; }
.kaicho-book-feature__excerpt { color: #555; font-size: .95rem; line-height: 1.9; }
.kaicho-book-feature__meta { margin: 1.25rem 0; color: #666; font-size: .84rem; line-height: 1.7; }
.kaicho-book-feature__link { display: inline-block; border-bottom: 1px solid currentColor; color: #3d3933; font-size: .9rem; text-decoration: none; }
.kaicho-books { margin-top: 1rem; }
.kaicho-books__head { display: flex; gap: 1rem; align-items: baseline; justify-content: space-between; margin-bottom: 1.5rem; border-bottom: 1px solid #dedbd4; }
.kaicho-books__head h2 { margin: 0 0 .75rem; font-size: 1.4rem; }
.kaicho-books__head p { margin: 0 0 .75rem; color: #777; font-size: .78rem; }
.kaicho-books-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(165px, 1fr));
	gap: 2.5rem 1.25rem;
	margin: 0 0 2.5rem;
}
.kaicho-book-card__image {
	display: grid;
	place-items: center;
	aspect-ratio: 2 / 3;
	background: #f5f5f2;
	color: #777;
}
.kaicho-book-card__image img { width: 100%; height: 100%; object-fit: contain; }
.kaicho-book-card__title { margin: .75rem 0 .35rem; font-size: 1rem; line-height: 1.55; }
.kaicho-book-card__meta { margin: 0; color: #666; font-size: .78rem; line-height: 1.6; }
@media (max-width: 599px) {
	.kaicho-book-feature { grid-template-columns: 1fr; gap: 1.5rem; margin: 1.5rem 0 3.5rem; }
	.kaicho-book-feature__image { width: min(75vw, 300px); min-height: 0; margin: 0 auto; }
	.kaicho-books__head { display: block; }
	.kaicho-books-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem .8rem; }
}

/* HOME: 石風社トップの情報構成を、海鳥社の既存データ量に合わせて簡潔にする。 */
.kaicho-home { margin-top: 0; }
/* HOMEの書籍スライダーは「サムネイル型リスト」の比率設定を使う。 */
#body_wrap.home #post_slider .c-postThumb__figure::before {
	padding-top: var(--thumb_posts_thumb_ratio);
}

/* 書籍アーカイブの見出しと、版元ドットコムへの案内。 */
.archive .c-pageTitle__subTitle { display: none; }
.kaicho-termTitleRow { align-items: flex-end; display: flex; gap: 1rem; justify-content: space-between; }
.kaicho-termTitleRow .c-pageTitle { min-width: 0; }
.kaicho-hanmoto-note { flex: 0 1 auto; font-size: .76rem; line-height: 1.5; margin: 0 0 .15em; text-align: right; }
.kaicho-hanmoto-note a { color: inherit; text-decoration: none; }
.kaicho-hanmoto-note a:hover { text-decoration: underline; }
@media (max-width: 599px) {
	.kaicho-termTitleRow { gap: .5rem; }
	.kaicho-hanmoto-note { display: none; }
}
.kaicho-home .post_content h2 { background: none !important; border: 0 !important; color: #222 !important; margin: 0; padding: 0 !important; position: static; font-size: clamp(1.45rem, 2.4vw, 2rem); }
.kaicho-home .post_content h2::before { content: none !important; display: none !important; }
.kaicho-home__section-head { align-items: baseline; border-bottom: 1px solid #d8d5ce; display: flex; justify-content: space-between; margin-bottom: 1.75rem; padding-bottom: .8rem; }
.kaicho-home__section-head > a { color: #555; font-size: .82rem; text-decoration: none; }
.kaicho-home__newbooks { margin-bottom: 4.5rem; }
.kaicho-home__book-row { display: grid; gap: clamp(1rem, 2.5vw, 2rem); grid-template-columns: repeat(5, minmax(0, 1fr)); }
.kaicho-home__book-image { align-items: center; background: #f5f5f2; display: flex; justify-content: center; min-height: 220px; }
.kaicho-home__book-image img { height: auto; max-height: 360px; max-width: 100%; object-fit: contain; }
.kaicho-home__book-title { font-size: .9rem; line-height: 1.55; margin: .75rem 0 0; }
.kaicho-home__book-title a { color: inherit; text-decoration: none; }
.kaicho-home__guide { border-bottom: 1px solid #d8d5ce; border-top: 1px solid #d8d5ce; display: grid; grid-template-columns: repeat(3, 1fr); margin-bottom: 4.5rem; }
.kaicho-home__guide a { color: #333; padding: 1.5rem clamp(1rem, 2vw, 2rem); text-decoration: none; }
.kaicho-home__guide a + a { border-left: 1px solid #d8d5ce; }
.kaicho-home__guide span, .kaicho-home__guide small { display: block; }
.kaicho-home__guide span { font-size: 1.05rem; margin-bottom: .3rem; }
.kaicho-home__guide small { color: #777; font-size: .76rem; }
.kaicho-home__feeds { display: grid; gap: clamp(2rem, 5vw, 5rem); grid-template-columns: repeat(2, minmax(0, 1fr)); margin-bottom: 5rem; }
.kaicho-home__feed ul { list-style: none; margin: 0; padding: 0; }
.kaicho-home__feed li { border-bottom: 1px solid #e4e1dc; line-height: 1.65; padding: .8rem 0; }
.kaicho-home__feed time { color: #777; display: inline-block; font-size: .78rem; margin-right: .8rem; }
.kaicho-home__feed li a { color: inherit; text-decoration: none; }

/* HOME: 最新一冊を主役に、残り八冊と固定ページ本文を続けて見せる。 */
.kaicho-homeBooks__feature { align-items: center; display: grid; gap: clamp(2rem, 7vw, 6rem); grid-template-columns: minmax(220px, 390px) minmax(0, 1fr); margin: clamp(1rem, 2vw, 2rem) 0 120px; }
.kaicho-homeBooks__featureCover, .kaicho-homeBooks__cardCover { align-items: center; background: #f5f5f2; display: flex; justify-content: center; }
.kaicho-homeBooks__featureCover { min-height: 420px; padding: 1.5rem; }
.kaicho-homeBooks__featureCover img { box-shadow: 12px 14px 25px rgb(0 0 0 / 12%); height: auto; max-height: 560px; max-width: 100%; width: min(100%, 350px); }
.kaicho-homeBooks__eyebrow { color: #71695d; font-size: .78rem; letter-spacing: .18em; margin: 0 0 .8rem; }
.kaicho-homeBooks__feature h1 { font-size: clamp(1.7rem, 3.2vw, 2.6rem); line-height: 1.45; margin: 0; }
.kaicho-homeBooks__feature h1 a, .kaicho-homeBooks__card h3 a { color: inherit; text-decoration: none; }
.kaicho-homeBooks__featureSubtitle { font-size: 1.05rem; line-height: 1.7; margin: .6rem 0 1.25rem; }
.kaicho-homeBooks__featureText { color: #555; line-height: 1.95; margin: 0 0 1.5rem; }
.kaicho-homeBooks__featureLink { border-bottom: 1px solid currentColor; color: #333; font-size: .9rem; text-decoration: none; }
.kaicho-homeBooks { margin-bottom: 0; }
.kaicho-homeBooks__head { align-items: baseline; border-bottom: 1px solid #d8d5ce; display: flex; justify-content: space-between; margin-bottom: 2rem; padding-bottom: .8rem; }
.kaicho-homeBooks__head h2 { font-size: clamp(1.35rem, 2.2vw, 1.8rem); margin: 0; }
.kaicho-homeBooks__head a { color: #555; font-size: .82rem; text-decoration: none; }
.kaicho-homeBooks__grid { display: grid; gap: clamp(1.5rem, 3vw, 3rem) clamp(1rem, 2vw, 2rem); grid-template-columns: repeat(4, minmax(0, 1fr)); }
.kaicho-homeBooks__archive { margin: 0; }
.kaicho-homeBooks__cardCover { min-height: 235px; padding: 1rem; }
.kaicho-homeBooks__cardCover img { height: auto; max-height: 320px; max-width: 100%; width: auto; }
.kaicho-homeBooks__card h3 { font-size: .92rem; font-weight: 500; line-height: 1.6; margin: .8rem 0 0; }
.kaicho-homeBooks__noCover { color: #999; font-size: .8rem; }
.kaicho-home__editable { border-top: 0; margin-top: 1rem; padding-top: clamp(3rem, 6vw, 5rem); }
.kaicho-home .post_content h2.kaicho-bookCard__title { background: none !important; border: 0 !important; color: #333 !important; font-family: inherit; font-size: clamp(.98rem, 1.45vw, 1.16rem); font-weight: 600; letter-spacing: .025em; line-height: 1.55; margin: 0; padding: 0 !important; position: static; }
@media (max-width: 799px) {
	.kaicho-homeBooks__feature { grid-template-columns: 1fr; }
	.kaicho-homeBooks__featureCover { margin: 0 auto; max-width: 330px; min-height: 0; width: min(78vw, 330px); }
	.kaicho-homeBooks__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.kaicho-homeBooks__cardCover { min-height: 175px; }
}

/* SWELL投稿一覧の追加レイアウト: みすず書房型の書籍カード */
.p-postList__title { font-size: .8em !important; }
.p-postList.-type-book { display: grid; gap: 2.75rem 1.15rem; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 2.25rem 0 0; }
.p-postList.-type-book .kaicho-bookCard { background: #f5f5f5; display: flex; flex-direction: column; margin: 0; min-width: 0; padding: 0 1.2rem .8rem; }
.kaicho-bookCard__cover { align-items: flex-end; display: flex; height: 160px; justify-content: center; margin: -25px 0 1.1rem; }
.kaicho-bookCard__cover img { border: 0; box-shadow: 0 12px 28px rgb(0 0 0 / 11%); display: block; height: auto; max-height: 320px; max-width: 72%; object-fit: contain; transition: transform .25s ease; width: 110px; }
@media (hover: hover) and (min-width: 992px) {
	.kaicho-bookCard__cover:hover img { transform: scale(1.3); transform-origin: center bottom; }
}
.kaicho-bookCard__body { display: flex; flex: 1; flex-direction: column; min-width: 0; }
.kaicho-bookCard__heading { border-bottom: 1px solid rgb(0 0 0 / 28%); padding-bottom: .5rem; }
.kaicho-bookCard__title { font-family: inherit; font-size: clamp(.98rem, 1.45vw, 1.16rem); font-weight: 600; letter-spacing: .025em; line-height: 1.55; margin: 0; }
.kaicho-bookCard__title a { color: #171717; text-decoration: none; }
.kaicho-bookCard__title a:hover, .kaicho-bookCard__authors a:hover { color: #734b28; text-decoration: underline; }
.kaicho-bookCard__subtitle { color: #333; font-size: .85em; line-height: 1.55; margin: .3rem 0 0; }
.kaicho-bookCard__authors { border-bottom: 1px solid rgb(0 0 0 / 28%); display: block; font-size: .78rem; line-height: 1.6; margin: 0; min-height: 0; padding: calc(.5rem - 1px) 0 .5rem; }
.kaicho-bookCard__authorLine { display: grid; grid-template-columns: max-content minmax(0, 1fr); max-width: 100%; }
.kaicho-bookCard__authors dt { color: #858585; flex: 0 0 auto; font-weight: 400; white-space: nowrap; }
.kaicho-bookCard__authors dt::after { content: '：'; }
.kaicho-bookCard__authors dd { margin: 0; min-width: 0; }
.kaicho-bookCard__authors a { color: #777; text-decoration: none; }
.kaicho-bookCard__authors a + a::before { color: #999; content: '・'; margin: 0 .25em; text-decoration: none; }
.kaicho-bookCard__spec { color: #888; font-family: Meiryo, "Yu Gothic", YuGothic, sans-serif; font-size: .88rem; line-height: 1.34; margin: .65rem 0 0; padding-top: 0; text-align: right; }
.kaicho-bookCard__spec span { display: block; }
.kaicho-bookCard__genre { align-self: flex-end; display: flex; font-family: Meiryo, "Yu Gothic", YuGothic, sans-serif; font-size: .72rem; justify-content: flex-end; line-height: 1.4; margin: auto 0 0; padding-top: .5em; }
.kaicho-bookCard__genre span { background: #fff; color: #333; padding: .25rem .45rem; }
.kaicho-author-detail .c-postTitle__ttl { text-align: center; }
.kaicho-author-detail .c-postTitle { align-items: stretch; flex-direction: column; }
.kaicho-author-detail .c-postTitle__date,
.kaicho-author-detail .p-articleMetas,
.kaicho-author-detail .p-articleFoot { display: none; }
.kaicho-author-reading { flex-basis: 100%; font-size: 1rem; line-height: 1.5; margin: .35rem 0 0; order: 2; text-align: center; width: 100%; }
.kaicho-author-books { margin-top: 4rem; }
.kaicho-author-books .c-secTitle { text-align: center; }
.kaicho-author-books .p-postList.-type-book { grid-template-columns: repeat(auto-fit, minmax(220px, 260px)); justify-content: center; margin-top: 4rem; }
.kaicho-manual-related-books { margin-top: 4rem; }
.kaicho-manual-related-books .c-secTitle { text-align: center; }
.kaicho-manual-related-books .p-postList.-type-book { grid-template-columns: repeat(auto-fit, minmax(220px, 260px)); justify-content: center; margin-top: 4rem; }
.kaicho-legacy-related-books { margin-top: 4rem; }
.kaicho-legacy-related-books .c-secTitle { text-align: center; }
.kaicho-legacy-related-books .p-postList.-type-book { grid-template-columns: repeat(auto-fit, minmax(220px, 260px)); justify-content: center; margin-top: 4rem; }

/* 書籍詳細: 石風社SWELLの「書影 + 書誌情報」構成を海鳥社のメタ項目へ合わせる。 */
.kaicho-bookDetail__head { display: grid; gap: clamp(2rem, 6vw, 5rem); grid-template-columns: minmax(180px, 330px) minmax(0, 1fr); margin: clamp(2rem, 5vw, 4rem) 0 4rem; }
.kaicho-bookDetail__cover { align-self: start; display: flex; justify-content: center; }
.kaicho-bookDetail__cover img { box-shadow: 12px 14px 25px rgb(0 0 0 / 12%); height: auto; max-height: 640px; max-width: 100%; width: 100%; }
.kaicho-bookDetail__title { font-size: clamp(1.45rem, 2.55vw, 2.1rem); font-weight: 600; letter-spacing: .04em; line-height: 1.45; margin: 0; }
.kaicho-bookDetail__subtitle { font-size: 1.08rem; line-height: 1.6; margin: .5rem 0 1.25rem; }
.kaicho-bookDetail__authors { border-bottom: 1px solid #ccc; border-top: 0; font-size: .95rem; margin: 1.25rem 0 0; padding: .55rem 0; }
.kaicho-bookDetail__authors > div { display: grid; grid-template-columns: 4.631579em minmax(0, 1fr); line-height: 1.7; }
.kaicho-bookDetail__authors dt { color: #777; font-weight: 400; white-space: nowrap; }
.kaicho-bookDetail__authors dt::after { content: ''; }
.kaicho-bookDetail__authors dd { margin: 0; min-width: 0; }
.kaicho-bookDetail__authors a { color: inherit; text-decoration: none; }
.kaicho-bookDetail__authors a:hover { text-decoration: underline; }
.kaicho-bookDetail__specs { border-top: 0; font-size: .88rem; line-height: 1.25; margin: 0; }
.kaicho-bookDetail__specs > div { border-bottom: 1px solid #ddd; display: grid; grid-template-columns: 5em minmax(0, 1fr); padding: .34rem 0; }
.kaicho-bookDetail__specs dt { color: #777; }
.kaicho-bookDetail__specs dd { margin: 0; }
.kaicho-bookDetail__terms { align-items: center; display: flex; flex-wrap: wrap; font-family: Meiryo, "Yu Gothic", YuGothic, sans-serif; font-size: .72rem; gap: .3rem; justify-content: flex-end; line-height: 1.35; margin: .8rem 0; text-align: right; }
.kaicho-bookDetail__termsLabel, .kaicho-bookDetail__terms a { background: #f3f3f3; color: #555; padding: .25rem .45rem; text-decoration: none; }
.kaicho-bookDetail__termsLabel { background: #e4e4e4; }
.kaicho-bookDetail__terms a:hover { background: #e7e7e7; text-decoration: underline; }
.kaicho-bookDetail__buy { margin-top: 1.5rem; }
.kaicho-bookDetail__hanmoto { background: #555; color: #fff; display: block; font-size: .9rem; padding: .8rem 1rem; text-align: center; text-decoration: none; }
.kaicho-bookDetail__hanmoto:hover { background: #333; color: #fff; }
.kaicho-bookDetail__stores { border-bottom: 1px solid #d5d5d5; }
.kaicho-bookDetail__stores summary { cursor: pointer; font-size: .9rem; list-style: none; padding: .85rem 0; text-align: center; }
.kaicho-bookDetail__stores summary::-webkit-details-marker { display: none; }
.kaicho-bookDetail__stores summary::after { content: '＋'; display: inline-block; margin-left: .5em; }
.kaicho-bookDetail__stores[open] summary::after { content: '−'; }
.kaicho-bookDetail__stores > div { display: grid; gap: .45rem; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0 0 1rem; }
.kaicho-bookDetail__stores a { background: #f1f1f1; color: inherit; font-size: .8rem; padding: .65rem .4rem; text-align: center; text-decoration: none; }

/* お知らせ一覧。投稿内容は管理画面、一覧の構成は archive-oshirase.php で管理する。 */
.kaicho-oshiraseArchive { margin-top: 2.5rem; }
.kaicho-oshiraseArchive__terms { border-bottom: 1px solid #ddd; display: flex; flex-wrap: wrap; gap: .45rem; margin-bottom: 2rem; padding-bottom: 1.25rem; }
.kaicho-oshiraseArchive__terms a, .kaicho-oshiraseCard__terms a { background: #f3f3f3; color: inherit; font-size: .8rem; padding: .35rem .6rem; text-decoration: none; }
.kaicho-oshiraseArchive__terms a:hover, .kaicho-oshiraseCard__terms a:hover { background: #e7e7e7; text-decoration: underline; }
.kaicho-oshiraseArchive__list { list-style: none; margin: 0; padding: 0; }
.kaicho-oshiraseCard { border-bottom: 1px solid #ddd; display: grid; gap: 1.25rem; grid-template-columns: minmax(110px, 180px) minmax(0, 1fr); padding: 1.5rem 0; }
.kaicho-oshiraseCard.-noThumbnail { grid-template-columns: 1fr; }
.kaicho-oshiraseCard__thumbnail { align-self: start; display: block; }
.kaicho-oshiraseCard__thumbnail img { display: block; height: auto; width: 100%; }
.kaicho-oshiraseCard__meta { align-items: center; color: #777; display: flex; flex-wrap: wrap; font-size: .8rem; gap: .5rem .75rem; }
.kaicho-oshiraseCard__terms { display: flex; flex-wrap: wrap; gap: .35rem; }
.kaicho-oshiraseCard__title a { color: inherit; text-decoration: none; }
.kaicho-oshiraseCard__title a:hover { text-decoration: underline; }
.kaicho-oshiraseCard__excerpt { color: #666; font-size: .9rem; line-height: 1.8; }
.kaicho-oshiraseCard__excerpt > :last-child { margin-bottom: 0; }
@media (max-width: 599px) { .kaicho-oshiraseCard { grid-template-columns: 90px minmax(0, 1fr); gap: .9rem; } }

.kaicho-bookDetail__stores a:hover { background: #e2e2e2; }
.kaicho-bookDetail__content, .kaicho-bookDetail__toc, .kaicho-bookDetail__authorProfiles { border-top: 0; margin-top: 4rem; padding-top: 0; }
.kaicho-bookDetail__preview { border-top: 0; margin-top: 4rem; padding-top: 0; }
.kaicho-bookDetail__previewImages { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); }
.kaicho-bookDetail__previewImages a { border: 1px solid #e0e0e0; display: block; }
.kaicho-bookDetail__previewImages img { display: block; height: auto; width: 100%; }
.kaicho-bookDetail__content h2, .kaicho-bookDetail__toc h2, .kaicho-bookDetail__authorProfiles > h2 { font-size: 1.25rem; margin: 0 0 1.25rem; }
.kaicho-bookDetail__introduction { line-height: 1.9; }
.kaicho-bookDetail__introduction > :first-child { margin-top: 0; }
.kaicho-bookDetail__introduction > :last-child { margin-bottom: 0; }
.kaicho-bookDetail__authorProfile + .kaicho-bookDetail__authorProfile { border-top: 1px solid #e0e0e0; margin-top: 2rem; padding-top: 2rem; }
.kaicho-bookDetail__authorProfile h3 { font-size: 1.1rem; margin: 0; }
.kaicho-bookDetail__authorProfile h3 a { color: inherit; text-decoration: none; }
.kaicho-bookDetail__authorReading { color: #666; font-size: .88rem; margin: .25rem 0 1rem; }
.kaicho-bookDetail__authorBio { font-size: .94rem; line-height: 1.9; }
.kaicho-bookDetail .kaicho-author-books { margin-top: 4rem; }
.kaicho-bookDetail .kaicho-author-books .p-postList.-type-book { grid-template-columns: repeat(auto-fit, minmax(220px, 260px)); justify-content: center; }

/* 本を探す: 旧ページの項目を残しつつ、検索結果は書籍カードで表示する。 */
.kaicho-bookSearch__form { background: #f5f5f5; margin: 0; padding: clamp(1.25rem, 3vw, 2.5rem); }
.kaicho-bookSearch__form h2, .kaicho-bookSearch__results > h2 { background: none !important; border: 0 !important; font-size: 1.1rem; margin: 0 0 .85rem; padding: 0 !important; }
.kaicho-bookSearch__form h2::before, .kaicho-bookSearch__results > h2::before { content: none !important; }
.kaicho-bookSearch__genres { border-bottom: 1px solid #d7d7d7; margin-bottom: 1.25rem; padding-bottom: 1rem; }
.kaicho-bookSearch__genres > div { display: flex; flex-wrap: wrap; gap: .45rem 1rem; }
.kaicho-bookSearch__genres label { font-size: .86rem; }
.kaicho-bookSearch__fields { display: grid; gap: .7rem 1.25rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.kaicho-bookSearch__fields label, .kaicho-bookSearch__options label { align-items: center; display: flex; font-size: .88rem; gap: .6rem; }
.kaicho-bookSearch__fields span { flex: 0 0 6em; }
.kaicho-bookSearch input[type="search"], .kaicho-bookSearch select { background: #fff; border: 1px solid #bbb; border-radius: 0; min-height: 2.3em; padding: .3em .5em; }
.kaicho-bookSearch input[type="search"] { min-width: 0; width: 100%; }
.kaicho-bookSearch__options { display: flex; flex-wrap: wrap; gap: .7rem 1.25rem; margin-top: 1.25rem; }
.kaicho-bookSearch__options select { margin-left: .25rem; }
.kaicho-bookSearch__note { color: #666; font-size: .78rem; margin: 1.25rem 0 0; }
.kaicho-bookSearch__submit { margin: 1.5rem 0 0; text-align: center; }
.kaicho-bookSearch__submit button { background: #4a4a4a; border: 0; color: #fff; cursor: pointer; font-size: .95rem; padding: .75rem 3.5rem; }
.kaicho-bookSearch__submit button:hover { background: #333; }
.kaicho-bookSearch__results { margin-top: 4rem; }
.kaicho-bookSearch__results > h2 small { color: #777; font-size: .75em; font-weight: 400; margin-left: .4em; }
.kaicho-bookSearch__results .page-numbers { display: flex; justify-content: center; list-style: none; margin: 2.5rem 0 0; padding: 0; }
.kaicho-bookSearch__results .page-numbers li { margin: 0 .2rem; }
.kaicho-bookstore__form { background:#f4f4f4; font-size:.8rem; margin:0 0 2.5rem; padding:.9rem 1rem; }
.kaicho-bookstore__categories, .kaicho-bookstore__options { align-items:center; display:flex; flex-wrap:wrap; gap:.35rem .8rem; }
.kaicho-bookstore__categories { border-bottom:1px solid #ddd; margin-bottom:.65rem; padding-bottom:.65rem; }
.kaicho-bookstore__form > div > span { color:#666; font-weight:700; margin-right:.2rem; }
.kaicho-bookstore__form label { white-space:nowrap; }
.kaicho-bookstore__form button { background:#555; border:0; color:#fff; cursor:pointer; font-size:.9em; margin-left:auto; padding:.45rem .8rem; }
.kaicho-bookstore__form button + button { margin-left:0; }
.kaicho-links { display:grid; gap:2.5rem clamp(1.5rem, 5vw, 5rem); grid-template-columns:repeat(2, minmax(0, 1fr)); }
.kaicho-links__group h2 { background:none !important; border-bottom:1px solid #d6d6d6 !important; font-size:1.15rem; margin:0 0 1rem; padding:0 0 .55rem !important; }
.kaicho-links__group h2::before { content:none !important; }
.kaicho-links__group ul { list-style:none; margin:0; padding:0; }
.kaicho-links__group li { border-bottom:1px solid #e5e5e5; padding:.7rem 0; }
.kaicho-links__group a { color:inherit; text-decoration:none; }
.kaicho-links__group a:hover { text-decoration:underline; }
.kaicho-links__group p { color:#777; font-size:.82rem; line-height:1.6; margin:.2rem 0 0; }
@media (max-width: 599px) {
	.kaicho-bookSearch__fields { grid-template-columns: 1fr; }
	.kaicho-bookSearch__fields span { flex-basis: 5.5em; }
	/* 自費出版料金表: 列構成を壊さず、画面内で横スクロールさせる。 */
	.self_body .self_table { border-collapse: collapse; display: block; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; white-space: nowrap; }
	.self_body .self_table th, .self_body .self_table td { font-size: .78rem; padding: .5em .6em; }
	.self_body .self_table + .self_table { margin-top: 1.75rem; }
	.kaicho-bookstore__form button { margin-left:0; }
	.kaicho-links { grid-template-columns:1fr; }
}
@media (min-width: 800px) and (max-width: 991px) {
	.p-postList.-type-book { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 4rem; margin-top: 1.625rem; }
	.kaicho-bookCard__cover { height: 140px; margin-top: -20px; }
	.kaicho-bookCard__cover img { max-width: 60%; width: 102px; }
}
@media (max-width: 799px) {
	.kaicho-bookDetail__head { gap: 1.75rem; grid-template-columns: 1fr; margin-top: 1.5rem; }
	.kaicho-bookDetail__cover img { max-height: none; max-width: min(82vw, 330px); width: min(82vw, 330px); }
	.kaicho-bookDetail__title { font-size: 1.55rem; }
	.kaicho-bookDetail__stores > div { grid-template-columns: 1fr; }
	.kaicho-home__book-row { display: flex; margin-right: calc(var(--swl-pad_post_content, 0px) * -1); overflow-x: auto; padding-bottom: 1rem; }
	.kaicho-home__book { flex: 0 0 160px; }
	.kaicho-home__book-image { min-height: 238px; }
	.kaicho-home__guide, .kaicho-home__feeds { grid-template-columns: 1fr; }
	.kaicho-home__guide a + a { border-left: 0; border-top: 1px solid #d8d5ce; }
	.p-postList.-type-book { column-gap: .7rem; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 1.125rem; row-gap: 3.25rem; }
	.p-postList.-type-book .kaicho-bookCard { padding: 0 .75rem .6rem; }
	.kaicho-bookCard__cover { height: 125px; margin: -15px 0 .75rem; }
	.kaicho-bookCard__cover img { max-height: 210px; max-width: 70%; width: 96px; }
	.kaicho-bookCard__heading { padding-bottom: .5rem; }
	.kaicho-bookCard__title { font-size: .9rem; }
	.kaicho-bookCard__subtitle { font-size: .76rem; margin-top: .25rem; }
	.kaicho-bookCard__authors { font-size: .69rem; min-height: 0; padding: calc(.4rem - 1px) 0 .4rem; }
	.kaicho-bookCard__spec { font-size: .77rem; line-height: 1.32; margin-top: .45rem; }
	.kaicho-bookCard__genre { font-size: .65rem; padding-top: .5em; }
}
