@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/
/***********************************
 * common
 ***********************************/
@media screen and (min-width: 1024px) {
/* ヘッダーにモバイルヘッダーを使用 */
  .mobile-menu-buttons {
    display: flex !important;
	top: 0;
    bottom: initial;
    justify-content: space-between;
    height: 80px;
  }

/* ヘッダーとスライダーの余白調整 */
	.top-content {
		margin-top: 48px;
	}
	
	/* ヘッダーとアイキャッチの余白調整 */
	.content-top {
		margin-top: 48px;
	}

	/* Firefoxのみ */
	@supports (-moz-appearance:none) {
		.top-content,
		.content-top {
			margin-top: 80px;
		}
	}
	/* Firefoxのみ */
	@media screen and (min--moz-device-pixel-ratio:0) {
		.top-content,
		.content-top {
			margin-top: 80px;
		}
	}
	
	/* Firefoxのみ */
	@-moz-document url-prefix() {
		.top-content,
		.content-top {
			margin-top: 80px;
		}
	}

/* ロゴのサイズ */
	li.logo-menu-button.menu-button {
		width: 305px;

	}
	
	/* ホバー時の挙動 */
	li.logo-menu-button.menu-button a,
	.mobile-menu-buttons .menu-button .menu-button-in {
		transition: opacity .3s;
	}
}

/* レスポンシブ時にロゴのサイズ保持 */
@media screen and (max-width: 1023px) {
    .logo-menu-button {
        flex-grow: 0;
        width: 305px !important;
    }
}


/* 基本headerメニュー非表示 */
.header-container {
	display: none;
}

/* headerメニューのレイアウト */
.header-content {
	display: flex;
	justify-content: center;
/* 	max-width: calc(1400px + 20px * 2); */
	margin-inline: auto;
	padding-inline: 20px;
	padding-block: 5px;
	background: #000;
	align-items: center;
}

/* headerの幅統一 */
.header-logo,
.header-logo .logo {
/* 	flex: 1; */
}

/* ロゴの大きさ調整 */
.header-logo .logo {
	display: block;
	width: 230px;
	transition: opacity .3s;
}

@media (max-width: 480px) {
	.header-logo .logo {
		width: 180px;
	}
}

.header-logo .logo:hover {
	opacity: .6;
}

/* headerの幅統一 */
.contact-button {
/*     display: flex;
    justify-content: flex-end;
    flex: 1; */
}

/* ボタンのレイアウト */
a.btn {
	color: #fff;
	background: #B0012D;
	border: 1px solid transparent;
/* 	padding-inline: 17px; */
}

@media (max-width: 768px) {
	a.btn {
		width: 345px;
		padding-inline: 17px;
	}
}

/* ボタンホバー時の挙動 */
a.btn:hover {
	color: #B0012D;
	background: #fff;
	border-color: currentcolor;
}

/* 新米クラブのFacebookボタンのcolor変更 */
.wp-block-cocoon-blocks-button-1.aligncenter.button-block.sns-link__button a.btn {
	background: #0866ff;
}

/* 新米クラブのFacebookボタンのcolor変更 */
.wp-block-cocoon-blocks-button-1.aligncenter.button-block.sns-link__button a.btn:hover {
	color: #0866ff;
	background: #fff;
}

/* e-honのボタンのレイアウト */
.btn-l {
	width: 450px;
	margin-inline: auto;
}

/* ボタンの余白 */
.wp-block-cocoon-blocks-button-1.button-block.service-btn a.btn {
	padding-block: 14px;
}

/* ボタンのレイアウト2 */
.wp-block-cocoon-blocks-button-1.button-block.service-btn._type2 a.btn {
	color: #fff;
	background: #e95018;	
}

/* ボタンホバー時の挙動 */
.wp-block-cocoon-blocks-button-1.button-block.service-btn._type2 a.btn:hover {
	color: #e95018;
	background: #fff;
	border-color: currentcolor;
}

/* ボタンのレイアウト3 */
.wp-block-cocoon-blocks-button-1.button-block.service-btn._type3 a.btn {
	background: #f0f8ff;
	border: 1px solid #333;
}

/* ボタンホバー時の挙動 */
.wp-block-cocoon-blocks-button-1.button-block.service-btn._type3 a.btn:hover {
	background: #333;
	color: #f0f8ff !important;
	border-color: currentcolor;
}

/* ボタンホバー時の挙動 */
a.btn:hover {
	border: 1px solid currentcolor;
	opacity: initial;
}

/* メニューお問い合わせ余白 */
.menu-contact__button {
	margin-top: 10px;
}

/* button大きさ調整 */
.menu-contact__button a {
	text-align: center;
	background: #B0012D;
	color: #fff !important;
	transition: ease-in-out .3s;
	border: 1px solid transparent;
	border-radius: 4px;
}

/* ボタンホバー時の挙動 */
.menu-contact__button a:hover {
	background: #fff;
	border-color: currentcolor;
	color: #B0012D !important;
}


/* a.button {
    display: inline-block;
    text-align: center;
	text-decoration: none;
	background: #B0012D;
	color: #fff;
	transition: ease-in-out .3s;
	border: 1px solid transparent;
	border-radius: 4px;
	padding: 14px 45px;
	font-weight: 700;
	margin-left: 172px;
} */

/* レスポンシブ時buttonの配置調整 */
/* @media (max-width: 768px) {
	a.button {
		margin-left: 0;
	}
} */

/* ボタンホバー時の挙動 */
/* a.button:hover {
	background: #fff;
	border-color: currentcolor;
	color: #B0012D;
} */

/* 文字レイアウト変更 */
h1.entry-title {
    color: #B0012D;
    font-size: 36px;
	padding-inline: 5rem;
}

/* single.pageでの文字のレイアウト変更 */
.single h1.entry-title {
	padding-inline: initial;
}

@media (max-width: 1024px) {
	h1.entry-title {
	padding-inline: 15px;
}
}

/* 文字レイアウト変更 */
h2.wp-block-heading.has-text-align-center {
	background: transparent;
	color: #333;
	padding-bottom: 1rem;
	position: relative;
	z-index: 2;
}

/* 文字色変更 */
h2.wp-block-heading.has-text-align-center .bold-red {
	color: #B0012D;
}

/* 疑似要素設定 */
h2.wp-block-heading.has-text-align-center::before,
h2.wp-block-heading.has-text-align-center::after {
	content: "";
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
}

/* 疑似要素画像配置 */
h2.wp-block-heading.has-text-align-center::before {
	background: url("https://books-naniwa.co.jp/wp-content/uploads/2024/11/74e75bb243ebbdd8e0740ea8477111ad.png") no-repeat center center / contain;
	width: 30px;
	height: 30px;
	top: -1rem;
	filter: drop-shadow(1px 1px 2px rgba(255, 255, 255, 0.8)) 
        drop-shadow(-1px -1px 2px rgba(255, 255, 255, 0.8));
}

@media (max-width: 480px) {
	h2.wp-block-heading.has-text-align-center::before {
		top: -1.5rem;
	}
}

/* 疑似要素下線 */
h2.wp-block-heading.has-text-align-center::after {
	width: 50px;
	height: 3px;
	bottom: 0;
	background: #B0012D;
	filter: drop-shadow(1px 1px 2px rgba(255, 255, 255, 0.8)) 
        drop-shadow(-1px -1px 2px rgba(255, 255, 255, 0.8));
}

/* serviceセクション文字を見やすくする */
h2.wp-block-heading.has-text-align-center.l-shadow.has-cocoon-white-color.has-text-color.has-link-color {
	text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.8), -1px -1px 2px rgba(255, 255, 255, 0.8);
}

/* 文字レイアウト変更 */
h2.wp-block-post-title a,
.article h2 {
	background: #B0012D;
	color: #fff;
}

/* ホバー時のアニメーション */
h2.wp-block-post-title a {
	transition: opacity .3s;
}

/* ホバー時のアニメーション */
h2.wp-block-post-title a:hover {
	opacity: .6;
}

/* 固定ページの幅調整 */
.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	max-width: 100%;
}

/* コンテント幅広げる */
.wrap {
	width: 100%;
}

/* メインコンテントとメニューサイドバーの配置調整 */
.content-in {
    display: flex !important;
    justify-content: space-between;
    flex-wrap: wrap;
    flex-direction: row-reverse;
}

/* メインコンテント幅調整 */
.no-sidebar .content .main,
.page-template-default .main {
	width: 80%;
	padding: 0;
}

/* メインの幅調整 */
.post-template-default .main,
.archive .main,
.category .main,
.blog .main,
.error404 .main {
	width: 80%;
}

/* メインの幅調整レスポンシブ */
@media (max-width: 1023px) {
	.no-sidebar .content .main {
	 width: 100%;		
	}
}

/* メインの幅調整レスポンシブ */
@media (max-width: 1255px) {
	.post-template-default .main,
	.page-template-default .main,
	.archive .main,
    .category .main,
	.blog .main,
	.error404 .main {
		width: 100%;
	}
	
	.home .no-sidebar .content .main {
		width: 80%;
	}
}

/* head-inset.phpで作成したヘッダーのレスポンシブ */
@media (max-width: 1023px) {
	.header-content {
		display: none;
	}
}

/* 固定ページh1非表示 */
.page-id-211 .entry-title,
.page-id-440 .entry-title,
.page-id-532 .entry-title,
.page-id-3 .entry-title,
.page-id-567 .entry-title,
.page-id-173 .entry-title,
.page-id-167 .entry-title,
.page-id-169 .entry-title,
.page-id-546 .entry-title,
.page-id-198 .entry-title {
	display: none;
}

/* 標準機能効かないためテーブルのボーダー見やすく */
table:not(.has-border-color) :where(th, td) {
    border: 1px solid #ddd;
}

/* 標準機能効かないためテーブルの行の背景 */
table {
    background: #eee;
}

/* トップの背景に余白ができないように */
.main {
	border: none;
}

/* モバイルヘッダーのレイアウト */
.mobile-menu-buttons {
	background: #000;
	box-shadow: none;
}

/* モバイルヘッダーのcolor */
label#navi-menu-open {
	color: #fff;
}

/* 目次非表示 */
.toc {
	display: none;
}

/* カードのスタイル変更 */
.new-entry-cards {
	display: grid !important;
    grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 768px) {
	.new-entry-cards {
	display: grid;
    grid-template-columns: repeat(1, 1fr);
}
}

/***********************************
 * ドロワーメニュー
 ***********************************/
/* 右からナビメニュー出現へ変更 */
.navi-menu-content {
  left: auto;
  right: 0;
  transform: translateX(101%);
}

/* ドロワーメニュー上部のレイアウト */
.menu-close-button {
	background: #B0012D;
	color: #fff;
}

/* ドロワーメニューのレイアウト */
.menu-drawer a {
	font-weight: 700;
    margin-top: 10px;
	position: relative;
    padding-left: 20px;
}

/* ドロワーメニューの疑似要素 */
.menu-drawer a::before {
    content: '\f152';
	font-family: "Font Awesome 5 Free";
	font-weight: 700;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
	position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
	color: #B0012D;
}

/* ドロワーメニュー個別レイアウト変更 */
li .menu-item-363 {
	text-align: center;
	margin-top: 10px;
}

/* ドロワーメニュー個別ボタンのレイアウト */
li .menu-item-363 a {
	display: block;
    text-align: center;
    text-decoration: none;
    background: #B0012D;
    color: #fff;
    border: 1px solid transparent;
    border-radius: 6px;
    padding: 8px 30px;
	margin-top: 20px;
}

/* ドロワーメニュー個別疑似要素削除 */
li .menu-item-363 a::before {
	display: none;
}


/***********************************
 * sidebar
 ***********************************/
/* sidebarの背景、文字変更 */
.sidebar h3 {
	background: #B0012D;
	color: #fff;
}

/* サイドバー幅調整 */
.no-sidebar .sidebar,
.post-template-default .sidebar,
.page-template-default .sidebar, 
.archive .sidebar,
.category .sidebar,
.blog .sidebar,
.error404 .sidebar {
    width: 19%;
	padding-block: 0;
}

/* サイドバー幅調整レスポンシブ */
@media (max-width: 1255px) {
 .home.page-template-default.page.page-id-10 .sidebar {
		width: 19%;
	    margin: 0;
	}
	
 .post-template-default .sidebar,
 .page-template-default .sidebar,
 .archive .sidebar,
 .category .sidebar,
 .blog .sidebar,
 .error404 .sidebar {
		width: 100%;
	}
  
  .sidebar {
	margin-block: 10px;	
	}
}

/* サイドバー幅調整レスポンシブ */
@media (max-width: 1023px) {
	.home.page-template-default.page.page-id-10 .sidebar {
		width: 100%;
		margin-block: 10px;
	}
	
	.no-mobile-sidebar .sidebar {
		display: block;
		width: 100%;
	}
}

/* サイドバー消えないように */
.no-sidebar .sidebar {
    display: block;
}

/* fontのレイアウト変更 */
#sidebar li a {
	font-weight: 700;
}

/* サイドバーホバー時の挙動 */
#sidebar li a:hover {
	background: initial;
	color: #B0012D;
}

/***********************************
 * top
 ***********************************/
/* 画像とスライダーのレイアウト */
.top-content {
  display: flex;
  background: url("https://books-naniwa.co.jp/wp-content/uploads/2024/11/663999b882a56a85df02eaa3f0edd5dd.png") no-repeat top center / cover;
  min-height: 950px;
}

@media (max-width: 768px) {
/* スマホ時上下へ */
  .top-content {
	  flex-direction: column-reverse;
	  align-items: center;
  }
}

/* スライダー画像画面 */
.slider-container {
/*   flex: 1; */
  width: 300px;
  margin: auto;
  border-radius: 10px;
  border: 1px solid #B0012D;
}

@media (max-width: 768px) {
/* スマホ時画像大きく */
	.slider-container {
		width: 300px;
		border-radius: 10px;
		border: 1px solid #B0012D;
		margin-top: 30px;
	}
}

/* スライダー角丸調整 */
.flex-viewport {
    border-radius: 10px;
}

/* スライダーテキスト画面 */
.text-container {
/*   flex: 1; */
  width: 50%;
  height: auto;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

/* 背景上の文章見えるように */
.text-container .top-title,
.text-container .top-text {
	  /* テキストに影をつける */
		text-shadow: 
    -1px -1px 3px rgba(0,0,0,0.5),
     1px -1px 3px rgba(0,0,0,0.5),
    -1px  1px 3px rgba(0,0,0,0.5),
     1px  1px 3px rgba(0,0,0,0.5);
	
  color: #fff;
}

/* スライダータイトル */
.text-container .top-title {
	font-size: 42px;
	font-weight: 700;
}

/* スライダーテキスト */
.text-container .top-text {
	font-size: 24px;
}

@media (max-width: 768px) {
/* スマホ時のレイアウト調整	 */
	.text-container {
		height: 45vh;
		width: 100%;
	}
}

/* スライダードットの色変更 */
#metaslider-id-45 .flexslider .flex-direction-nav li a {
	background: #B0012D !important;
}

/* スライダードットの色変更 */
#metaslider-id-45 .flexslider .flex-control-nav li a.flex-active {
    background: #B0012D !important;
}

/* スライダー横ボタンの配置 */
  a.flex-prev {
    left: -15px !important;
  }

/* スライダー横ボタンの配置 */
  a.flex-next {
	right: -15px !important;
  }

@media (max-width: 768px) {
/* スライダー横ボタンの配置 */
  a.flex-prev {
    left: -15px !important;
  }
/* スライダー横ボタンの配置 */
  a.flex-next {
	right: -15px !important;
  }
	/* スライダー画像の調整 */
	.metaslider .slides img {
		height: 45vh !important;
	}
}

/* スライダー下ポジションの起点 */
.metaslider .flexslider {
	position: relative;
}

/* スライダー画像高さ固定 */
.flexslider .slides img {
	height: 450px !important;
}

/* 余白なし */
.metaslider .flexslider {
	margin-bottom: 0 !important;
}

@media (max-width: 768px) {
/* スマホ時の余白調整 */
	.metaslider .flexslider {
		margin-bottom: 0 !important;
	}
}

/* ドットの配置 */
ol.flex-control-nav.flex-control-paging {
    position: absolute;
    bottom: 10px;
}

@media (max-width: 768px) {
	/* スマホ時のドットの配置調整 */
	ol.flex-control-nav.flex-control-paging {
    position: absolute;
    bottom: -30px;
  }
}

/* 投稿内容の間隔調整 */
 .new-entry-cards {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

@media (max-width: 768px) {
	.new-entry-cards {
		flex-direction: column;
		align-items: center;
	}
}

/* 投稿内容間隔均等 */
.post-card {
    flex: 1;
}

@media (max-width: 768px) {
	.post-card {
		flex: initial;
		width: 100%;
	}
}

/* 投稿タイトルのフォント */
.post-card-content h2.post-card-title {
    font-size: 20px;
	background: #fff;
	color: #333;
	padding: 0;
	font-weight: 700;
	margin-top: 5px;
	margin-bottom: 1rem;
}

/* 下線なし */
.post-card a {
	text-decoration: none;
}

/* 投稿テキスト部分の縦並び */
.post-card-content {
	display: flex;
	flex-direction: column;
}

/* 画像のがたつき調整 */
.post-card-thumbnail img {
/* 	width: 220px; */
	width: 100%;
/* 	height: 165px; */
	height: auto;
	object-fit: contain;	
}

@media (max-width: 768px) {
	.post-card-thumbnail img {
	 width: 100%;
	 height: auto;
	}
}

/* カテゴリータグのレイアウト */
.post-card-content span.aizuwakamatu,
.post-card-content span.tagajyou,
.post-card-content span.furukawa,
.post-card-content span.sale {
	text-align: center;
	font-size: 16px;
	border-radius: 3px;
	font-weight: 700;
}

/* カテゴリータグのレイアウト */
.post-card-content span.aizuwakamatu {
	background: #333;
	color: #fff;
	width: 90px;

}

/* カテゴリータグのレイアウト */
.post-card-content span.tagajyou {
	background: #F0F8FF;
	width: 75px;
	color: #333;
	border: 2px solid #333;
}

/* カテゴリータグのレイアウト */
.post-card-content span.furukawa {
	background: #B0012D;
	width: 60px;
	color: #fff;
}

/* カテゴリータグのレイアウト */
.post-card-content span.sale {
	background: #74043C;
	width: 140px;
	color: #fff;
}

/* 投稿日のフォント */
.post-card-content span.post-card-date {
	font-size: 14px;
	color: #333;
}

/* hover時のアニメーション遅延 */
.post-card a .post-card-content h2.post-card-title {
  transition: ease-in-out .3s;
}

/* hover時のカラー変更 */
.post-card a:hover .post-card-content h2.post-card-title {
	color: #B0012D;
}

/* NEWSのレイアウト変更 */
.wp-container-core-post-template-is-layout-1 {
    grid-template-columns: repeat(1, 1fr) !important;
}

/* NEWSのレイアウト調整 */
.wp-block-group.is-layout-flow.wp-block-group-is-layout-flow {
    padding: 0px !important;
}

/* @media screen and (max-width: 834px) {
    .article ul {
        padding-left: 0;
    }
} */

/* インスタレイアウト調整 */
.instagram-media {
	width: 100%;
	min-width: 235px !important;
}

@media (max-width: 1023px) {
	.store-content .is-layout-flex {
		gap: 1rem;
	}
}

/* 初期の日付非表示 */
.date-tags {
	display: none;
}

@media (max-width: 768px) {
	.flex-active-slide img {
		border-radius: 10px;
	}
}

/* storeの色分け */
.l-left__title {
	border-left-color: #333 !important;
}

/* storeの色分け */
.l-center__title {
	border-left-color: #F0F8FF !important;
}

/* storeの色分け */
.l-right__title {
	border-left-color: #B0012D !important;
}

/* storeの画像余白なし */
figure.wp-block-image.size-full.store-img {
	margin-bottom: 0;

}

/* store画像はみ出ないように */
figure.wp-block-image.size-full.store-img a {
	overflow: hidden;
}

/* storeのアニメーション遅延 */
figure.wp-block-image.size-full.store-img a img {
	transition: ease-in-out .3s;
}

/* storeのアニメーション */
figure.wp-block-image.size-full.store-img a:hover img {
	transform: scale(1.1);
}

/* storeの日付のフォント変更 */
.post-card-content span.post-card-date {
	font-weight: 700;
}

/* グループ時の余白調整 */
.home .l-container {
	margin-bottom: 0 !important;
	padding: 50px 5rem;
	border-radius: 0;
}

/* グループ時の余白調整のレスポンシブ */
@media (max-width: 1024px) {
	.home .l-container {
	margin-bottom: 0 !important;
	padding: 50px 15px;
	border-radius: 0;
}
}

/* グループ時の余白調整 */
.l-container {
	padding-inline: 5rem !important;
	border-radius: 0;
}

/* グループ時の余白調整のレスポンシブ */
@media (max-width: 1024px) {
	.l-container {
	padding-inline: 15px !important;
	border-radius: 0;
}
}

/* Serviceセクションの基点 */
.wp-block-group.l-container.l-background.is-layout-constrained.wp-block-group-is-layout-constrained {
	position: relative;
}

/* Serviceセクションの疑似要素背景 */
.wp-block-group.l-container.l-background.is-layout-constrained.wp-block-group-is-layout-constrained::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	background: url('https://books-naniwa.co.jp/wp-content/uploads/2024/12/b9d5deee25a5a25ab9aa576ff2220caa-scaled.jpg') no-repeat center center / cover;
	width: 100%;
	height: 100%;
	filter: brightness(50%);
}

/* Serviceセクションの疑似要素フィルター */
.wp-block-group.l-container.l-background.is-layout-constrained.wp-block-group-is-layout-constrained::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, 0.1);
	width: 100%;
	height: 100%;
	z-index: 1;
}

/* Serviceセクションのボタン前面へ */
.wp-block-cocoon-blocks-button-1.aligncenter.button-block {
	position: relative;
	z-index: 2;
}

/* 投稿一覧ボタンを中央寄せ */
.view-all-button {
	text-align: center;
}

/* 投稿一覧ボタンのレイアウト */
.view-all-button a {
	display: inline-block;
	text-decoration: none;
	color: #fff;
	background: #B0012D;
	border: 1px solid transparent;
	padding: 14px 45px;
	border-radius: 4px;
	font-size: 16px;
	font-weight: 700;
	transition: ease-in-out .3s;
}

/* 投稿一覧ボタンのホバー時の挙動 */
.view-all-button a:hover {
	color: #B0012D;
	background: #fff;
	border: 1px solid currentcolor;
}


/************************************
** 固定ページ
************************************/
/* googlemap大きさ調整 */
.map-content {
	width: 100%;
}

/* googlemap大きさ調整 */
.map-content iframe {
	width: 100%;
}

@media (min-width: 1441px) {
	/* googlemap大きさ調整 */
.map-content iframe {
	width: 100%;
	height: 26vw;
}
}

/************************************
** eyecatch
************************************/
/* アイキャッチ上部余白なくす */
@media (max-width: 786px) {
	.content-top{
	margin-top: 4px;
}
}

/* 固定ページeyecatchのレイアウト調整 */
.lower__top {
/*   margin-top: 80px; */
  margin-inline: auto;
  position: relative;
  width: 95%;
/*   height: 188px; */
  height: 50vw;
/*   border-radius: 12px; */
  overflow: hidden;
}

/* 固定ページeyecatchのレイアウト調整レスポンシブ */
@media screen and (min-width: 768px) {
  .lower__top {
/*     margin-top: 120px; */
	width: clamp(335px, 100%, 1920px);
/*     height: 340px; */
	height: 35vw;
  }
}

/* 固定ページeyecatchのレイアウト調整 */
.lower__top::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
/*   border-radius: 12px; */
  background: rgba(0, 0, 0, 0.2);
}

/* マスク外す */
section.lower__top.lower__top-net::before,
section.lower__top.lower__top-overdrive::before {
	background: initial;
}

/* 固定ページeyecatchのレイアウト調整 */
.lower__top-group {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  text-align: center;
}

/* 固定ページeyecatchのレイアウト調整 */
.lower__top-title {
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 4.8px;
  text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
}

/* 固定ページeyecatchのレイアウト調整レスポンシブ */
@media screen and (min-width: 768px) {
  .lower__top-title {
    font-size: 32px;
    letter-spacing: 3.2px;
	text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
  }
}

/* 固定ページeyecatchの背景 */
/* .lower__top-member {
  background: url('https://books-naniwa.co.jp/wp-content/uploads/2024/12/22456754_m-1.jpg') no-repeat center center/cover;
} */

/* 共通のアイキャッチ */
.lower__top-service,
/* .lower__top-dream, */
.lower__top-offer,
.lower__top-contact,
.lower__top-privacy {
	background: url('https://books-naniwa.co.jp/wp-content/uploads/2024/12/3364819b2862451e6ab6e7d093bb52f4-scaled.jpg') no-repeat center center / cover;
}

/* 夢グループのアイキャッチ */
.lower__top-dream {
	background: url('https://books-naniwa.co.jp/wp-content/uploads/2024/12/f11f47276a20a7be0d3e76185e1b7d5c.png') no-repeat center center / cover;
}

/* e-honのアイキャッチ */
.lower__top-net {
	background: url('https://books-naniwa.co.jp/wp-content/uploads/2024/12/cfa8b3e1fa50b36f2dba85e72feba21e.png') no-repeat center center / cover;
}

/* overdriveのアイキャッチ */
.lower__top-overdrive {
	background: url('https://books-naniwa.co.jp/wp-content/uploads/2024/12/1-1.png') no-repeat center center / contain;
}

/* 新米クラブのアイキャッチ */
.lower__top-new-rice {
	background: url('https://books-naniwa.co.jp/wp-content/uploads/2024/12/550c3c0ac36139715cc062551eaa4c62.png') no-repeat center center / cover;
}

/* 貸しスペースのアイキャッチ */
.lower__top-space {
	background: url('https://books-naniwa.co.jp/wp-content/uploads/Generatmag-scaled.jpg') no-repeat center 85% / cover;
}

/* 会社概要 */
.lower__top-about-us {
	background: url('https://books-naniwa.co.jp/wp-content/uploads/2024/12/1eff2d40156c28bc178d761063beeb2d.png') no-repeat center center / cover;
}

/* 固定ページeyecatchの背景 */
@media screen and (min-width: 768px) {
  .lower__top-member {
    background: url('https://books-naniwa.co.jp/wp-content/uploads/2024/12/22456754_m-1.jpg') no-repeat center center/cover;
  }
}

/************************************
** サービス
************************************/
/* フィルターに隠れないように */
.l-service__content{
	position: relative;
	z-index: 2;
}
/* ボタンの大きさを均一に */
.service-btn a {
	width: 180px;
}

@media (max-width: 1024px) {
	/* はみ出さないように */
	.service-btn a {
	width: initial;
}
}

@media (max-width: 781px) {
    /* 中央寄せ */
	.wp-block-cocoon-blocks-button-1.button-block.service-btn {
    text-align: center;
}
	/* ボタンの大きさを均一に */
	.service-btn a {
	width: 345px;
}
}

/* Serviceのh3のcolor変更 */
.l-border__color {
	border-left-color: #B0012D !important;
}

/* bookホバー時の挙動 */
figure.wp-block-image.size-full.book-service__link a {
	transition: opacity .3s;
	position: relative;
	z-index: 2;
}

/* bookホバー時の挙動 */
figure.wp-block-image.size-full.book-service__link a:hover {
	opacity: .6;
}

/************************************
** overdrive
************************************/
figure.wp-block-image.size-full.img-link a {
	transition: opacity .3s;
}

figure.wp-block-image.size-full.img-link a:hover {
	opacity: .6;
}

/************************************
** 新米クラブ
************************************/
/* 画像はみ出ないように */
figure.wp-block-image.size-full.link-img a {
	overflow: hidden;
}

/* アニメーション遅延 */
figure.wp-block-image.size-full.link-img a img {
	transition: ease-in-out .3s;
}

/* アニメーション */
figure.wp-block-image.size-full.link-img a:hover img {
	transform: scale(1.1);
}

/* 幅調整 */
.goods-table td:last-child {
	width: 30%;
}

/************************************
** 夢グループ
************************************/
/* aタグのcolor変更 */
.l-text__color a {
	color: #333;
	transition: ease-in-out .3s;
}

/* ホバー時の挙動 */
.l-text__color a:hover {
	color: #b0012d;
}
/************************************
** 会社概要
************************************/
/* 幅調整 */
.about-table td:first-child {
	width: 5%;
}

/* 幅調整 */
.about-table td:last-child {
	width: 10%;
}

/************************************
** 求人募集
************************************/
/* widget-areaのコード(ずんだもんの位置) */
/* ポジションの基点 */
.widget-positon {
	position: relative;
	width: 100%;
	height: 100%;
} 

/* ずんだもんプロフィール */
.widget-text {
	text-align: center;
	color: #fff;
	text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
	font-weight: 700;
}

/* レスポンシブ時にフォントサイズ */
@media (max-width: 768px) {
	.widget-text {
    font-size: 10px;
}
}

/* コンテントの配置 */
.widget-content {
	display: flex;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}

/* レスポンシブ時のレイアウト */
@media (max-width: 1024px) {
	.widget-content {
		width: 95%;
	}
}

/* テーブルブロックのレイアウト */
figure.wp-block-table.widget-block-table {
	margin-bottom: 0;
    flex: 1;
	inset-block: 0;
    margin-block: auto;
}

/* テーブルの大きさと位置 */
table.has-fixed-layout.wdget-table {
/* 	width: 60%; */
	width: 345px;
	margin-inline: auto;
}

/* レスポンシブ時の表示 */
@media (max-width: 1024px) {
	table.has-fixed-layout.wdget-table {
/* 	width: 93%; */
	width: 350px;
}
}

/* レスポンシブ時の表示 */
@media (max-width: 768px) {
	table.has-fixed-layout.wdget-table {
/* 	width: 93%; */
	width: 160px;
}
}

/* テキスト左寄せ */
tr.widget-tr {
    text-align: left;
}


/* レスポンシブ時にフォントサイズ */
@media (max-width: 768px) {
	tr.widget-tr {
    font-size: 10px;
	display: flex;
	flex-direction: column;
	}
	
	td.widget-td {
		width: 100% !important;
	}
}

/* テーブル幅調整 */
td.widget-td:last-child {
	width: 17%;
}

/* ずんだもんエリア */
.wedget-img {
	flex: 1 12%;
}

/* ずんだもんエリア */
@media (min-width: 1440px) {
	.wedget-img {
	flex: 1 25%;
}
}

/* ずんだもんエリア */
@media (max-width: 768px) {
	.wedget-img {
	flex: 1;
}
}

/* ずんだもん画像サイズ */
.wedget-img img {
	width: 40%;
}

/* レスポンシブ時ずんだもん画像サイズ */
@media (max-width: 768px) {
	.wedget-img img {
	width: 170px;
}
} 

/* レスポンシブ時ずんだもん画像サイズ */
@media (max-width: 480px) {
.wedget-img img {
	width: 130px;
}
}

/************************************
** contactフォーム
************************************/
/* 余白調整 */
.contact__inner {
 padding-inline: 15px;
}

@media screen and (min-width: 768px) {
  .contact__inner {
    max-width: 1400px;
    padding-inline: 20px;
    margin-inline: auto;
  }
}

/* タイトルのスタイル */
h2.contact-head-title {
	background: none;
	text-align: center;
	color: #B0012D;
	position: relative;
}

/* タイトルに疑似要素 */
h2.contact-head-title::after {
	position: absolute;
	content: "";
	width: 50px;
	height: 3px;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	background: #B0012D;
}

/* contactformのレイアウト */
.contact__items {
  margin-top: 32px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 32px;
}
@media screen and (min-width: 768px) {
  .contact__items {
    margin-top: 51px;
    max-width: 1000px;
    margin-inline: auto;
  }
}

/* headとinputのレイアウト */
.contact-control {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
}

@media screen and (min-width: 768px) {
  .contact-control {
    gap: 4px;
  }
}

/* headのレイアウト */
.contact-control__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}

@media screen and (min-width: 768px) {
  .contact-control__head {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    gap: 16px;
  }
}

/* ラベルのフォントサイズ */
@media screen and (min-width: 768px) {
  .contact__label {
    font-size: 18px;
  }
}

/* 必須のラベルのレイアウト */
.form-label__required {
  font-size: 12px;
  color: #fff;
  background: #B0012D;
  border-radius: 6px;
  padding: 2px 7px 3px 7px;
}
@media screen and (min-width: 768px) {
  .contact-control__input {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
}

/* 入力欄のレイアウト */
.contact__input {
  width: 100%;
  height: 56px;
  background: #fff;
  border: 1px solid #2f2f2f;
  font-size: 16px;
  padding: 16px;
  -webkit-transition: ease-in-out 0.3s;
  transition: ease-in-out 0.3s;
}

@media screen and (min-width: 768px) {
  .contact__input {
    height: 50px;
    padding: 13px 13px 14px 23px;
  }
}

/* 入力欄にフォーカスがあたったときのレイアウト */
.contact__input:focus {
  outline: #B0012D 1px;
  -webkit-box-shadow: 0px 0px 4px 0px #B0012D;
          box-shadow: 0px 0px 4px 0px #B0012D;
  border-color: #B0012D;
}

/* お問い合わせ欄のレイアウト */
.contact__textarea {
  width: 100%;
  background: #fff;
  height: 160px;
  resize: vertical;
  font-size: 16px;
/*   border: 1px solid #2f2f2f; */
  padding: 13px 13px 13px 16px;
  -webkit-transition: ease-in-out 0.3s;
  transition: ease-in-out 0.3s;
}

@media screen and (min-width: 768px) {
  .contact__textarea {
    padding: 13px 13px 14px 23px;
  }
}

/* テキストエリアにフォーカスがあたったときのレイアウト */
.contact__textarea:focus {
  outline: #B0012D 1px;
  -webkit-box-shadow: 0px 0px 4px 0px #B0012D;
          box-shadow: 0px 0px 4px 0px #B0012D;
  border-color: #B0012D;
}

/* 確認チェックボックスにフォーカスがあたったときのレイアウト */
input.form-confirmation:focus {
	  outline: #B0012D 1px;
  -webkit-box-shadow: 0px 0px 4px 0px #B0012D;
          box-shadow: 0px 0px 4px 0px #B0012D;
  border-color: #B0012D;
}

/* 確認チェックボックスのレイアウト */
span.wpcf7-list-item {
	margin-left: 0rem;
	margin-top: 1rem;
}

/* 確認チェックボックスのレイアウト */
@media (min-width: 1700px) {
	span.wpcf7-list-item {
	margin-left: 9em;
	margin-top: 1rem;
}
}

/* contactボタンの配置 */
.contact__button {
  margin-top: 40px;
  text-align: center;
}

/* contactボタンのレイアウト */
input[type=submit] {
    display: inline-block;
	width: 300px;
    min-width: 300px;
    padding: 15px 4px;
    background: #B0012D;
    color: #fff;
    font-size: 18px;
    letter-spacing: 0.9px;
    font-weight: 700;
    text-align: center;
    -webkit-transition: ease-in-out 0.3s;
    transition: ease-in-out 0.3s;
    position: relative;
	border: 1px solid transparent;
	border-radius: 4px;
}

/* 無効時のボタンレイアウト */
input[type=submit]:disabled {
	background: #EBEBE4;
	color: #808080;
	border-color: currentcolor;
}

/* 無効時にホバーが効かないように */
input[type=submit]:disabled:hover {
	cursor: not-allowed;
}

/* 無効時にホバーを効かないように */
input[type=submit]:not(:disabled):hover {
	background: #fff;
	color: #B0012D;
	border: 1px solid currentcolor;
}

/* ラジオボタンの余白調整 */
.contact__radio span.wpcf7-list-item:first-child {
	margin-left: 0;
}

/* 確認チェックボタンの配置調整 */
@media (max-width: 1024px) {
	span.wpcf7-form-control.wpcf7-acceptance span.wpcf7-list-item {
	margin-left: 0;
}
}

/* 送信ボタン下余白調整 */
.l-contact-box .contact__button {
	margin-bottom: 1.8rem !important;
}

/* 送信後メッセージ下の余白調整 */
.wpcf7 form .wpcf7-response-output {
	margin: 2em 0.5em 1rem !important;
}

/************************************
** 投稿ページ
************************************/
/* 投稿ページのアイキャッチ画像大きさ調整 */
.eye-catch img {
	width: 50%;
	margin-inline: auto;
	max-width: 100%;
	min-width: initial; 
}

/* 投稿ページのアイキャッチ画像大きさ調整レスポンシブ */
@media (max-width: 480px) {
	.eye-catch img {
		width: 100%;
	}
}

/* 投稿ページタグのフォント変更 */
span.cat-label.cat-label-1,
span.cat-label.cat-label-5,
span.cat-label.cat-label-6,
span.cat-label.cat-label-7 {
	font-weight: 700;
}

/* 投稿ページタグの背景変更 */
span.cat-label.cat-label-1 {
	background: #74043C;
}

/* 投稿ページタグの背景変更 */
span.cat-label.cat-label-5 {
	background: #333;
}

/* 投稿ページタグの背景変更 */
span.cat-label.cat-label-6 {
	background: #B0012D;
}

/* 投稿ページタグの背景変更 */
span.cat-label.cat-label-7 {
	background: #F0F8FF;
	color: #333;
	border: 2px solid #333;
}

/************************************
** footer
************************************/
/* 投稿者非表示 */
.author-info {
    display: none;
}

/* footer背景レイアウト */
.footer {
	background: url("https://books-naniwa.co.jp/wp-content/uploads/2024/11/663999b882a56a85df02eaa3f0edd5dd.png") no-repeat top center / cover;
	margin-top: 0;
	height: auto;
	position: relative; 
}

/* フッターリンクにかぶらないように */
.footer-widgets {
	margin-bottom: 4.8rem;
	justify-content: flex-end;
}

@media screen and (max-width: 1023px) {
	/* レイアウト変更 */
	.footer-widgets .widget_text {
		margin-bottom: 0;
	}
}

/* レスポンシブ時に表示、中央寄せへ */
@media screen and (max-width: 834px) {
    .footer-widgets {
        display: block;
        text-align: center;
		margin-bottom: 13rem;
    }
	
/* レイアウト変更 */
	.footer-widgets .widget_text {
		width: 300px;
		margin-inline: auto;
	}
}

.footer-left,
.footer-center,
.footer-right {
	width: initial;
	padding-inline: 8px;
}

/* footercopyレイアウト */
.footer-bottom.fdt-up-and-down.fnm-text-width.cf {
	width: 100%;
    position: absolute;
    bottom: 0;
    transform: translateX(-50%);
    left: 50%;
    color: #fff;
	text-shadow: -1px -1px 3px rgba(0,0,0,0.5), 1px -1px 3px rgba(0,0,0,0.5), -1px  1px 3px rgba(0,0,0,0.5), 1px  1px 3px rgba(0,0,0,0.5);
}

/* footer-naviのcolor変更 */
.navi-footer-in a {
	color: #fff;
}

/* footer-naviホバー時の挙動 */
.navi-footer-in a:hover {
	background: initial;
	color: #B0012D;
	text-shadow: -1px -1px 3px #fff, 1px -1px 3px #fff, -1px 1px 3px #fff, 1px 1px 3px #fff;
/* 	opacity: .6; */
}


/* footer-logoのレイアウト */
.footer aside#media_image-2 a {
	display: inline-block;
	transition: opacity .3s;
}

/* hover時の挙動 */
.footer aside#media_image-2 a:hover {
	opacity: .6;
}

/* 画像並びのレイアウト */
.footer-items {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

/* ホバー時の挙動 */
.footer-item__link {
	transition: opacity .3s;
	display: inline-block;
	width: 200px;
}

/* ホバー時の挙動 */
.footer-item__link:hover {
	opacity: .7;
}

/* afterの起点 */
.source-org.copyright {
	position: relative;
}

/* 疑似要素の配置 */
.source-org.copyright::after {
	content: "Move Your Heart　本のある暮らしはすてきだ";
	position: absolute;
	top: 0;
	width: 310px;
	height: auto;
	color: #fff;
}

@media screen and (max-width: 834px) {
/* レスポンシブ時の配置 */
	.source-org.copyright::after {
	top: -20px;
	left: 50%;
	transform: translateX(-50%);
}
/* 疑似要素がかぶらないように */
	.copyright {
    margin-top: 15px;
}
	
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}


/* 2025/11/7 追記 */
pre,
.has-text-align-left,
.main figure.wp-block-table {
	margin-left: 10px;
	margin-right: 10px;
}
body.page-id-167 table.has-fixed-layout.wdget-table td:first-child {
	width: 10%;
}

/* 2025/11/13 追記 */
.eye-catch-wrap .cat-label {
	display: none;
}
.post table td:first-child {
	background-color: #555;
	color: #fff;
	width: 25%;
}
/*834px以下*/
@media screen and (max-width: 834px){
	.post table td:first-child {
		width: 28%;
	}
}

/* 2025/12/23 追記 */
.lower__top-smartphone {
  background: url('https://books-naniwa.co.jp/wp-content/uploads/sumaho-scaled.jpg') no-repeat center 85% / cover;
}
span.xp {
	display: block;
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	margin-top: 100px;
}
#post-1212 .entry-title {
	display: none;
}
.post-card-content span {
	margin-bottom: 5px;
	display: inline-block;
	text-align: center;
    font-size: 16px;
    border-radius: 3px;
    font-weight: 700;
}
.post-card-content span.mobile {
	width: 120px;
	color: #fff;
	background-color: #403A8C;
}
.post-card-content span.rice {
	width: 90px;
	color: #000;
	background-color: #85EB80;
}