@charset "utf-8";

/* --------------------------------------------------

キャストカテゴリ、キャストシングル共通

-------------------------------------------------- */

.single #content {
	padding-top: 10px;
	border-top: solid 1px #333;
}

.page_nav {
	margin-bottom: 25px;
	text-align: right;
	font-size: 0.6em;
}

.single .contents {
	display: flex;
	justify-content: space-between;
	margin-bottom: 40px;
}

.single .wp-block-gallery {
	margin-bottom: 40px;
}

#sidebar {
	width: 238px;
}

.sidebar_head img {
	margin-bottom: 15px;
}

/* --------------------------------------------------

全店舗キャストカテゴリ
フロントページ共通

-------------------------------------------------- */

.cat_cast_all .cast_contents,
.cat_cast_all .cast_cat_list,
.front .cast_contents,
.front .cast_cat_list {
	width: 1250px;
}

.cat_cast_all .cast_cat_list li:nth-child(4n) {
	margin: 0 15px 30px 0;
}

.cat_cast_all .cast_cat_list li:nth-child(5n) {
	margin: 0 0 30px;
}

.front .cast_cat_list li,
.front .cast_cat_list li:nth-child(4n) {
	margin: 0 15px 0 0;
}

.front .cast_cat_list li:nth-child(5n) {
	margin: 0;
}

/* --------------------------------------------------

全店舗キャストカテゴリ
各店舗キャストカテゴリ共通

-------------------------------------------------- */

.cast_contents {
	width: 997px;
	display: flex;
	justify-content: space-between;
}

.cast_cat_list {
	width: 997px;
	overflow: hidden;
}

.cast_cat_list li {
	width: 238px;
	float: left;
	margin: 0 15px 30px 0;
}

.cast_cat_list li:nth-child(4n) {
	margin: 0 0 30px;
}

.cast_cat_list li span {
	display: block;
	width: 238px;
	margin-bottom: 5px;
}

.cast_cat_list li span img {
	height: auto;
	width: 100%;
}

.cast_cat_list li h2,
.cast_cat_list li h3 {
	margin: 0;
	padding: 0;
	border: none;
	font-size: 0.7em;
	font-weight: bold !important;
}

.cast_cat_list li h2 em,
.cast_cat_list li h3 em {
	font-size: 0.8em;
	font-style: normal;
	font-weight: normal;
}

/* ホバーアクション*/
.cast_cat_list li span a {
	position: relative;
	overflow: hidden;
}

.cast_cat_list li span a::before,
.cast_cat_list li span a::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	margin: auto;
	transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
	opacity: 0;
}

.cast_cat_list li span a::before {
	background: rgba(0, 0, 0,.3);
	height: 100%;
	width: 100%;
}

.cast_cat_list li span a::after {
	content: "VIEW MORE";
	display: flex;
	bottom: 0;
	right: 0;
	text-align: center;
	justify-content: center;
	align-items: center;
	color: #FFF;
	font-size: 0.9em;
}

.cast_cat_list li span a:hover::before,
.cast_cat_list li span a:hover::after {
	opacity: 1;
}

/* --------------------------------------------------

各店舗キャストシングルページ

-------------------------------------------------- */

.cast_ec {
	width: 500px;
	overflow:hidden;
}

.cast_ec img {
	width: 100%;
	height: auto;
}

.cast_info {
	width: 450px;
}

.cast_contents h2 {
	margin: 70px 0 30px;
	padding-bottom: 3px;
	border-bottom: solid 1px #333;
	font-size: 1.6em;
}

.cast_info .wp-block-post-featured-image {
	display: none;
}

.cast_info .profile {
	font-size: 0.6em;
}

.cast_info .profile li {
	margin-bottom: 12px;
	padding-bottom: 5px;
	border-bottom: dotted 1px #CCC;
}

.cast_info .profile_sns {
	display: flex;
	margin-top: 30px;
}

.cast_info .profile_sns li {
	width: 163px;
	margin: 0 10px 0 0;
	padding: 0;
	border: none;
}

.cast_info .profile_sns li a {
	height: 60px;
	width: 163px;
	display: block;
	background: #666;
	text-align: center;
	line-height: 60px;
	color: #FFF;
}

.cast_info .profile_sns li:nth-child(2) a {
	background: #D71518;
}

.cast_info .profile_sns li a:hover {
	opacity: 0.7;
	transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
}

/* --------------------------------------------------

新着情報シングル

-------------------------------------------------- */

.news_contents {
	width: 997px;
}

.sub_news_contents {
	margin-bottom: 40px;
	padding-bottom: 40px;
}

.news_contents .news_ec {
	height: 478px;
	overflow: hidden;
	margin-bottom: 20px;
}

.news_contents .news_ec img {
	height: auto;
	width: 100%;
}

.news_contents h2 {
	margin-bottom: 5px;
	padding-bottom: 5px;
	border-bottom: solid 1px #333;
	font-size: 1.3em;
	letter-spacing: 0;
}

.news_contents .post_date {
	display: block;
	margin-bottom: 20px;
	text-align: right;
	font-size: 0.6em;
}

.news_contents .txt {
	padding-bottom: 40px;
	border-bottom: solid 1px #333;
	font-size: 0.7em;
}

#sidebar h3 {
	margin-bottom: 15px;
	padding: 10px 20px;
	background: #efefef;
	border-left: solid 2px #333;
	font-size: 1em;
}

#sidebar .sidebar_menu_list {
	font-size: 0.7em;
}

#sidebar .archive_list li {
	margin-bottom: 3px;
	padding-bottom: 3px;
	border-bottom: dotted 1px #666;
}