/*
Theme Name: Twenty Sixteen Bookstore
Description: Twenty Sixteenの子テーマ（書籍紹介ページ用）
Author: 入明国語塾
Template: twentysixteen
Version: 1.0
*/
/* ===== 書籍一覧 ===== */

/* /book/ だけ Twenty Sixteen の狭い本文幅を解除 */
.post-type-archive-book .site-content {
	padding-left: 4%;
	padding-right: 4%;
}

.post-type-archive-book .content-area {
	float: none;
	margin: 0;
	width: 100%;
}

.post-type-archive-book .site-main {
	max-width: 1400px;
	margin: 0 auto;
}

/* Twenty Sixteen 標準の余計な幅・余白を解除 */
.post-type-archive-book .site-main > article {
	margin-bottom: 0;
}

.post-type-archive-book .page-header {
	border-top: 0;
	margin: 0 0 25px;
	padding-top: 0;
}

.post-type-archive-book .page-title {
	font-size: 24px;
}

/* 本棚 */
.book-grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 32px 22px;
}

/* 一冊分 */
.book-card {
	margin: 0;
	min-width: 0;
}

.book-card__link {
	display: block;
	color: inherit;
	text-decoration: none;
	box-shadow: none;
}

/* 書影 */
.book-card__cover {
	aspect-ratio: 2 / 3;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #f5f5f5;
	overflow: hidden;
}

.book-card__cover img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

/* 書名 */
.book-card__title {
	font-size: 15px;
	font-weight: 600;
	line-height: 1.4;
	margin: 8px 0 2px;
}

/* 著者 */
.book-card__author {
	font-size: 12px;
	line-height: 1.4;
	color: #777;
	margin: 0;
}

/* タブレット */
@media screen and (max-width: 1000px) {
	.book-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 28px 18px;
	}
}

/* スマホ */
@media screen and (max-width: 600px) {
	.post-type-archive-book .site-content {
		padding-left: 15px;
		padding-right: 15px;
	}

	.book-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 24px 12px;
	}

	.book-card__title {
		font-size: 13px;
	}

	.book-card__author {
		font-size: 11px;
	}
}
/* ===== 書籍詳細ページ ===== */

.single-book .site-content {
	padding-left: 5%;
	padding-right: 5%;
}

.single-book .book-single-area {
	float: none;
	margin: 0;
	width: 100%;
}

.single-book .site-main {
	max-width: 1050px;
	margin: 0 auto;
}

.book-single {
	margin: 0;
}

.book-single__top {
	display: grid;
	grid-template-columns: 280px 1fr;
	gap: 50px;
	align-items: start;
}

.book-single__cover img {
	display: block;
	width: 100%;
	height: auto;
}

.book-single__title {
	font-size: 32px;
	line-height: 1.35;
	margin: 0 0 10px;
}

.book-single__author {
	font-size: 18px;
	margin: 0 0 30px;
	color: #555;
}

.book-single__metadata {
	margin: 0 0 30px;
}

.book-single__metadata > div {
	display: grid;
	grid-template-columns: 80px 1fr;
	border-bottom: 1px solid #ddd;
	padding: 10px 0;
}

.book-single__metadata dt {
	font-weight: bold;
}

.book-single__metadata dd {
	margin: 0;
}

.book-single__buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.book-button {
	display: inline-block;
	padding: 12px 22px;
	border: 2px solid #333;
	font-weight: bold;
	text-decoration: none;
	box-shadow: none;
}

.book-button:hover {
	opacity: .75;
}

.book-single__section {
	max-width: 760px;
	margin: 55px 0 0;
}

.book-single__section h2 {
	font-size: 22px;
	margin-bottom: 20px;
}

.book-single__introduction {
	font-size: 16px;
	line-height: 1.9;
}

.book-single__back {
	margin-top: 60px;
}

/* スマホ */
@media screen and (max-width: 700px) {

	.single-book .site-content {
		padding-left: 20px;
		padding-right: 20px;
	}

	.book-single__top {
		grid-template-columns: 1fr;
		gap: 25px;
	}

	.book-single__cover {
		max-width: 220px;
		margin: 0 auto;
	}

	.book-single__title {
		font-size: 25px;
	}

	.book-single__author {
		font-size: 16px;
		margin-bottom: 20px;
	}

	.book-single__buttons {
		display: block;
	}

	.book-button {
		display: block;
		text-align: center;
		margin-bottom: 10px;
	}
}
/* ===== 書籍分類ページ ===== */

.tax-grade .site-content,
.tax-book_type .site-content,
.tax-book_tag .site-content {
	padding-left: 4%;
	padding-right: 4%;
}

.tax-grade .content-area,
.tax-book_type .content-area,
.tax-book_tag .content-area {
	float: none;
	margin: 0;
	width: 100%;
}

.tax-grade .site-main,
.tax-book_type .site-main,
.tax-book_tag .site-main {
	max-width: 1400px;
	margin: 0 auto;
}

.tax-grade .page-header,
.tax-book_type .page-header,
.tax-book_tag .page-header {
	border-top: 0;
	margin: 0 0 25px;
	padding-top: 0;
}

.book-taxonomy-back {
	margin-top: 50px;
}
/* ==================================================
   入明書店 看板
   ================================================== */

.iriake-bookstore-header {
    margin: 0 0 55px;
    padding: 35px 10px 30px;
    text-align: center;
}

/* 「入明書店」 */
.iriake-bookstore-header__name {
    font-family:
        "Yu Mincho",
        "YuMincho",
        "Hiragino Mincho ProN",
        "Hiragino Mincho Pro",
        serif;

    font-size: 46px;
    font-weight: 600;
    letter-spacing: 0.18em;
    line-height: 1.3;
}

/* 下の細い線 */
.iriake-bookstore-header__line {
    width: 70px;
    height: 2px;
    margin: 18px auto;
    background: #333;
}

/* 説明 */
.iriake-bookstore-header__description {
    margin: 0;
    font-size: 14px;
    letter-spacing: 0.08em;
    color: #666;
}


/* スマホ */

@media screen and (max-width: 600px) {

    .iriake-bookstore-header {
        margin-bottom: 35px;
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .iriake-bookstore-header__name {
        font-size: 32px;
    }

    .iriake-bookstore-header__description {
        font-size: 12px;
    }
}
/* ==================================================
   入明書店 看板・最終調整
   ================================================== */

.iriake-bookstore-header__name {
    font-size: 60px;
    font-weight: 700;
    letter-spacing: 0.22em;
    line-height: 1.3;
}

.iriake-bookstore-header__line {
    width: 100px;
    height: 3px;
    margin: 22px auto;
    background: #333;
}

.iriake-bookstore-header__description {
    margin: 0;
    font-size: 16px;
    letter-spacing: 0.08em;
    color: #555;
}

/* アフィリエイト表記 */
.iriake-bookstore-header__affiliate {
    max-width: 650px;
    margin: 28px auto 0;
    padding-top: 14px;
    border-top: 1px solid #ddd;

    font-size: 11px;
    line-height: 1.7;
    color: #888;
}

.iriake-bookstore-header__affiliate p {
    margin: 0;
}


/* スマホ */
@media screen and (max-width: 600px) {

    .iriake-bookstore-header__name {
        font-size: 40px;
        letter-spacing: 0.16em;
    }

    .iriake-bookstore-header__description {
        font-size: 13px;
    }

    .iriake-bookstore-header__affiliate {
        margin-top: 20px;
        font-size: 10px;
    }
}
/* ==================================================
   書籍詳細ページ：入明書店ヘッダー
   ================================================== */

.book-single__store-header {
    margin: 0 0 55px;
    padding: 0 0 25px;
    text-align: center;
    border-bottom: 1px solid #ddd;
}

/* 「入明書店」 */
.book-single__store-name {
    display: inline-block;

    font-family:
        "Yu Mincho",
        "YuMincho",
        "Hiragino Mincho ProN",
        "Hiragino Mincho Pro",
        serif;

    font-size: 36px;
    font-weight: 700;
    letter-spacing: 0.18em;
    line-height: 1.3;

    color: #222;
    text-decoration: none;
    box-shadow: none;
}

.book-single__store-name:hover,
.book-single__store-name:focus {
    color: #555;
}

/* サブタイトル */
.book-single__store-description {
    margin: 10px 0 0;
    font-size: 13px;
    letter-spacing: 0.08em;
    color: #666;
}

/* アフィリエイト表記 */
.book-single__affiliate {
    max-width: 650px;
    margin: 18px auto 0;

    font-size: 10px;
    line-height: 1.7;
    color: #888;
}

.book-single__affiliate p {
    margin: 0;
}


/* スマホ */
@media screen and (max-width: 600px) {

    .book-single__store-header {
        margin-bottom: 35px;
    }

    .book-single__store-name {
        font-size: 30px;
    }

    .book-single__store-description {
        font-size: 12px;
    }

    .book-single__affiliate {
        font-size: 9px;
    }
}
.iriake-bookstore-header__about {
    margin: 8px 0 0;
    font-size: 12px;
}

.iriake-bookstore-header__about a {
    color: #777;
    text-decoration: underline;
}
/* ==================================================
   入明書店：フリーワード検索
   ================================================== */

.book-search-form {
    display: flex;
    width: 100%;
    max-width: 720px;
    margin: 0 0 42px;
}

.book-search-form__input {
    flex: 1;
    min-width: 0;
    height: 46px;
    padding: 8px 14px;

    border: 1px solid #aaa;
    border-right: 0;

    background: #fff;

    font-size: 15px;
}

.book-search-form__button {
    width: 90px;
    height: 46px;

    padding: 0;

    border: 0;

    background: #333;
    color: #fff;

    font-size: 14px;
    font-weight: 600;

    cursor: pointer;
}

.book-search-form__button:hover {
    background: #555;
}


/* 検索結果 */

.book-search-result-header {
    margin: -18px 0 32px;
    font-size: 14px;
    color: #555;
}

.book-search-result-header p {
    margin: 0;
}

.book-search-no-results {
    margin: 30px 0 60px;
}


/* 検索結果側の「入明書店」 */

.iriake-bookstore-header__name a {
    color: inherit;
    text-decoration: none;
    box-shadow: none;
}


/* スマホ */

@media screen and (max-width: 600px) {

    .book-search-form {
        margin-bottom: 32px;
    }

    .book-search-form__input {
        height: 44px;
        font-size: 14px;
    }

    .book-search-form__button {
        width: 70px;
        height: 44px;
    }
}
/* ==================================================
   入明書店：分類から探す
   ================================================== */

.book-browse {
    max-width: 900px;
    margin: -10px 0 50px;
}

.book-browse__group {
    display: grid;
    grid-template-columns: 130px 1fr;
    gap: 15px;
    align-items: start;
    margin-bottom: 14px;
}

.book-browse__title {
    margin: 7px 0 0;
    font-size: 14px;
    font-weight: 600;
}

.book-browse__links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.book-browse__link {
    display: inline-block;
    padding: 7px 15px;

    border: 1px solid #bbb;
    border-radius: 3px;

    background: #fff;
    color: #444;

    font-size: 13px;
    line-height: 1.4;

    text-decoration: none;
    box-shadow: none;
}

.book-browse__link:hover,
.book-browse__link:focus {
    border-color: #555;
    color: #111;
}


/* スマホ */

@media screen and (max-width: 600px) {

    .book-browse {
        margin-bottom: 35px;
    }

    .book-browse__group {
        display: block;
        margin-bottom: 20px;
    }

    .book-browse__title {
        margin: 0 0 9px;
    }

    .book-browse__link {
        padding: 7px 11px;
        font-size: 12px;
    }
}