@charset "UTF-8";
/*
Theme Name: grape trend SP
Author URI: http://trend.grapee.jp/
Description: 動画メディア
Author: grape Co.,Ltd.
Author URI: https://trend.grapee.co.jp/
Version: 1.0
*/

:root {
	--single-bg-color: #fcfcfc;
	--single-head-img-link: #ebebeb;
	--single-head-img-linkbg: rgba(0, 0, 0, 0.7);
	--single-meta-text: #868686;
	--single-link: #669;
	--single-link-hover: #3e3e7a;
	--single-blockquote: #f0f0f0;
	--single-gray-text: #868686;
	--single-gray-text2: #666;
	--single-headline-bg: #f4f4f4;
	--single-headline-border: #dcdcdc;
	--single-headline-point: #aaa;
	--single-border-color: #ccc;
	--single-title-color: #0a0a0a;
	--single-comment-border: #dcdcdc;
	--gallery-thumbs-bg: #efefef;
	--gallery-thumbs-border: #444;
	--gallery-thumbs-active: #929292;
	--gallery-arrow: #999;
	--gallery-backlink: #999;
	--single-nextlink-btn: #dd462b;
	--single-nextpage-btn: #ffeaaf;
	--single-nextpage-icon: #d2aa79;
	--single-table-border: #ccc;
	--single-table-th: #f4f4f4;
}

/* -- page -- */

/* パンくず */
#breadcrumb {
	margin: 16px 0;
	display: flex;
	align-items: flex-start;
	color: #666666;
	font-size: 1.1rem;
	width: 100%;
}
#breadcrumb a {
	color: #666666;
	text-decoration: none;
}
#breadcrumb li:after {
	content: ">";
	display: inline-block;
	padding-right: 5px;
	padding-left: 5px;
}
#breadcrumb li:first-child:after {
	padding-left: 0px;
}
#breadcrumb li:last-child:after {
	content: "";
}

/* Related Article */

#related_list {
	margin: 36px 0 20px;
}
#related_list h2,
#related_list h3 {
	font-size: 1.6rem;
	font-weight: bold;
	border-left: #b163a3 4px solid;
	padding: 3px 0 3px 10px;
	text-transform: uppercase;
	margin: 0 0 18px;
	background-color: #fff;
	color: #333;
}
#related_list ul {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: left;
}
#related_list ul li {
	padding: 0 6px 18px !important;
}

#related_list ul li figure {
	/*	width: 165px; 4カラム
	height: 103px;*/
	width: 224px;
	height: 140px;
	overflow: hidden;
}
#related_list ul li figure img {
	width: 100%;
	height: auto;
}
#related_list ul li h3,
#related_list ul li h4,
#related_list ul li p.title {
	width: 224px;
	font-size: 1.4rem;
	line-height: 1.5;
	margin-top: 5px;
}
#related_list ul li .sponsored {
	padding-left: 5px;
}
#related_list ul li img.icon_pr2 {
	margin-left: 3px;
	vertical-align: middle;
}

#related_list ul li h3 a,
#related_list ul li h4 a,
#related_list ul li p.title a {
	color: #000;
	font-weight: bold;
	text-decoration: none;
}

/* -- single -- */
/* 記事本文 */

article.single-page {
	padding-top: 16px;
}
article.single-page .icon_category {
	display: inline-block;
	background-color: rgba(0, 0, 0, 0.8);
	color: #fff;
	font-size: 1rem;
	line-height: 1;
	padding: 4px 4px 4px;
	vertical-align: middle;
	text-transform: uppercase;
	margin-right: 10px;
}
article.single-page .entry_title {
}
article.single-page .entry_title h1 {
	font-size: 2.8rem;
	line-height: 1.6;
	font-weight: normal;
	margin: -5px 0 16px;
}
article.single-page h1 a {
	color: #333;
	text-decoration: none;
}
article.single-page .entry_title p {
	font-size: 1.1rem;
	color: #666;
}
article.single-page .entry_title p a {
	color: #666;
	text-decoration: underline;
}
article.single-page .entry_title p.sponsor_tag,
article.single-page .entry_title p.grapeshop_tag {
	float: right;
}
article.single-page .entry_title p.sponsor_tag a,
article.single-page .entry_title p.grapeshop_tag a {
	color: #666;
	text-decoration: none;
}
article.single-page .entry_title p.entry_tags {
	margin: 16px 0 8px;
	line-height: 1;
	font-size: 1.2rem;
}
article.single-page .entry_title p.entry_tags a {
	display: inline-block;
	border: #ccc 1px solid;
	padding: 6px;
	color: #333;
	text-decoration: none;
	margin-right: 10px;
	margin-bottom: 8px;
}
article.single-page .entry_sns {
	margin: 0 0 16px;
}
article.single-page .entry_sns p {
	display: flex;
	gap: 10px;
}
article.single-page .entry_sns p a {
	display: inline-block;
	color: #fff;
	font-size: 1.1rem;
	line-height: 1;
	padding: 10px 10px 10px 20px;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
	width: 130px;
	flex-grow: 1;
}
article.single-page .entry_sns p a:hover {
	color: #fff;
	text-decoration: none;
	opacity: 0.8;
}
article.single-page .entry_sns a.btn_fb {
	background: url(img/sns-facebook.svg) var(--sns-facebook) 4px center no-repeat;
	background-size: 20px auto;
}
article.single-page .entry_sns a.btn_tw {
	background: url(img/sns-twitter-x.svg) var(--sns-twitter) 8px center no-repeat;
	background-size: 12px auto;
}
article.single-page .entry_sns a.btn_line {
	background: url(img/sns-line.svg) var(--sns-line) 4px center no-repeat;
	background-size: 20px auto;
}
article.single-page .entry_sns a.btn_hatena {
	background: url(img/sns-hatena.svg) var(--sns-hatena) 8px center no-repeat;
	background-size: 12px auto;
}
article.single-page .entry_sns a.btn_ulcom {
	background: url(img/sns-comment.svg) var(--sns-usercomment) 8px center
		no-repeat;
	background-size: 15px auto;
}

.caption_affiliate {
	background-color: #f5f5f5;
	color: #777;
	font-size: 11px;
	padding: 0.8em 1em;
	line-height: 1.6;
	border: 0.5px #e2e2e2 solid;
}

/* コメント欄 */
#ul_comment {
	border: #dcdcdc 1px solid;
	margin: 36px 0px 30px;
	padding: 20px;
}

article.single-page figure {
	text-align: center;
	margin: 0 0 25px;
}
article.single-page figure img {
	width: 100%;
	height: auto;
}
article.single-page figure img[src*="default.png"],
article.single-page figure img[src*="no-image"] {
	display: none;
}
article.single-page figure p.image-cite {
	text-align: right;
	font-size: 1.2rem;
	line-height: 1.5;
	color: #666;
	margin: 8px 0 0;
	box-sizing: border-box;
}
article.single-page figure p.image-cite a {
	color: #666;
	text-decoration: none;
}

a sup {
	vertical-align: text-bottom;
	display: inline-block;
	padding-bottom: 0px;
	border-bottom: #009 1px solid;
	margin-bottom: 1px;
}

/*メディア配置*/

article.single-page .omny,
article.single-page .tiktok,
article.single-page .youtube {
	margin: 25px 0;
	text-align: center;
}
article.single-page .twitter {
	margin-bottom: 25px;
}
article.single-page .instagram,
article.single-page .ameba {
	text-align: center;
	width: 600px;
	margin: 0 auto 25px;
}
article.single-page .ameba div {
	margin: auto;
}

article.single-page .facebook {
	text-align: center;
	margin-bottom: 25px;
}
article.single-page .vine {
	position: relative;
	padding-bottom: 100%;
	padding-top: 20px;
	height: 0;
	overflow: hidden;
	margin-bottom: 25px;
	text-align: center;
}
article.single-page .imgur {
	text-align: center;
	margin: 0 10px 25px 10px;
}
article.single-page .image {
	text-align: center;
	margin: 25px 0;
}
article.single-page .image video,
article.single-page .image img {
	max-width: 640px;
	height: auto;
	margin-left: auto;
	margin-right: auto;
}
article.single-page .image p.image-cite {
	width: 640px;
	text-align: right;
	font-size: 1.2rem;
	line-height: 1.5;
	color: #666;
	margin: 8px auto 0;
	box-sizing: border-box;
}
article.single-page .image p.image-cite a {
	color: #666;
	text-decoration: none;
}
article.single-page .txt-box .image video,
article.single-page .txt-box .image img {
	max-width: 100%;
}
article.single-page .txt-box .image p.image-cite {
	width: 100%;
}
#main_list article.single-page .entry_main img.first {
	display: none;
}
#main_list article.single-page .entry_main h2 {
	display: block;
	margin: 25px 0;
	padding: 5px 20px 5px 9px;
	font-size: 2rem;
	line-height: 1.6;
	font-weight: bold;
	text-align: left;
	color: #000;
	background-color: #f4f4f4;
	border-left: #dcdcdc 6px solid;
	text-transform: none;
}
article.single-page .entry_main h3 {
	margin: 25px 20px 25px 15px;
	padding: 3px 0px 3px 6px;
	border-left: #dcdcdc 4px solid;
	font-size: 1.8rem;
	font-weight: bold;
	text-align: left;
	text-transform: none;
}
article.single-page .entry_main h4 {
	margin: 25px 25px;
	padding: 3px 0px 3px;
	font-size: 1.7rem;
	font-weight: bold;
	text-align: left;
}
article.single-page .entry_main h4:before {
	content: " ";
	width: 12px;
	height: 12px;
	background-color: #aaa;
	border-radius: 50%;
	display: inline-block;
	vertical-align: middle;
	margin: 0px 6px 3px 0;
}

article.single-page .entry_main p {
	margin: 25px 25px;
	line-height: 1.8;
	font-size: 1.6rem;
}
article.single-page p a {
	color: #000099;
	text-decoration: underline;
}
article.single-page p a:hover {
	text-decoration: none;
}
article.single-page p.small,
article.single-page .small {
	font-size: 1.4rem;
	color: #666;
}
article.single-page b {
	font-weight: bold;
}
article.single-page ul {
	list-style: disc outside;
	margin-bottom: 20px;
	line-height: 1.7;
	margin-left: 30px;
}
article.single-page ol {
	list-style: decimal outside;
	margin-bottom: 20px;
	line-height: 1.7;
	margin-left: 33px;
}
article.single-page li {
	margin-left: 20px;
	margin-bottom: 10px;
	line-height: 1.7;
	text-align: left;
	display: list-item;
	font-size: 1.6rem;
}
article.single-page li a {
	color: #000099;
}

article.single-page ul.small li {
	font-size: 1.4rem;
	color: #666;
	margin-bottom: 5px;
}
article.single-page ul.small li.none {
	margin-left: -20px;
	list-style: none;
}

article.single-page hr {
	display: block;
	border: 0;
	height: 4px;
	background-image: url(img/obj_line.png);
	background-repeat: repeat-x;
	margin: 20px 5px;
	background-size: 5px 5px;
	-webkit-background-size: 5px 5px;
}

/* txt-box */
article.single-page .txt-box {
	border: 1px solid #cccccc;
	padding: 0 20px;
	box-sizing: border-box;
	margin: 25px 20px;
}
article.single-page .txt-box p {
	margin: 20px 0;
	padding: 0;
}
article.single-page .txt-box p a {
	text-decoration: underline;
}
article.single-page .txt-box p a:hover {
	text-decoration: underline;
}
article.single-page .txt-box ul,
article.single-page .txt-box ol {
	margin-top: 20px;
	margin-left: 0;
}
article.single-page .txt-box.kadomaru {
	border-radius: 10px;
	padding: 0 20px;
}
article.single-page .txt-box > .txt-box {
	margin-left: 0;
	margin-right: 0;
}
article.single-page .txt-box.futoblue {
	border-color: #cce5ff;
	border-width: 3px;
	margin-left: 17px;
	margin-right: 17px;
}
article.single-page .txt-box.futogray {
	border-color: #eee;
	border-width: 3px;
	margin-left: 17px;
	margin-right: 17px;
}

.quote {
	margin: 25px 20px;
}
.quote blockquote {
	padding: 10px;
	border: #cccccc 1px solid;
	background-color: #f4f4f4;
	position: relative;
}
.quote blockquote:before {
	content: "“";
	font-size: 6rem;
	font-family: "Hiragino Mincho ProN", serif;
	line-height: 1;
	color: #9c9c9c;
	position: absolute;
	left: 5px;
	top: 4px;
}
article.single-page .quote blockquote p {
	margin: 20px 20px;
	padding: 0;
}
article.single-page .quote blockquote ul,
article.single-page .quote blockquote ol {
	margin-top: 20px;
}

cite {
	display: block;
	text-align: right;
	font-size: 1.2rem;
	color: #666666;
	margin: 5px 0 0;
	font-style: normal;
}
cite a {
	color: #666666;
	text-decoration: none;
}
.twitter blockquote,
.facebook blockquote {
	padding: 20px 20px 20px;
	margin: 20px;
	border: #cccccc 1px solid;
	background-color: #f4f4f4;
	position: relative;
	font-size: 14px;
	text-align: center;
}
article.single-page .entry_main .twitter blockquote p,
article.single-page .entry_main .facebook blockquote p {
	font-size: 16px;
	margin: 0 0 15px;
	text-align: left;
}
article.single-page .entry_main .twitter blockquote a,
article.single-page .entry_main .facebook blockquote a {
	color: #333;
}

/* 目次 */

article.single-page .outline {
	border: #cccccc 4px double;
	padding: 1em 1em 0.5em;
	margin: 2em 0;
}
article.single-page .outline .outline__title {
	display: block;
	margin-bottom: 0.5em;
}
article.single-page .outline ul {
	margin-left: 0;
	margin-bottom: 0;
}
article.single-page .outline ul ul {
	margin-top: 8px;
	list-style: circle;
}
body:not(#money) article.single-page .outline {
	font-size: 0.875em;
}
article.single-page .outline.h2 ul ul {
	display: none;
}

/* nextpage_links */

.page-links {
	margin: 25px 0 15px;
}
.page-links p {
	text-align: center;
	width: 93.75%;
	margin: 10px auto;
}
.page-links p span {
	text-align: center;
	display: inline-block;
	padding: 7px 12px;
	margin: 0 5px;
	border-radius: 3px;
	background-color: #b163a3;
	color: #fff;
	font-weight: bold;
}
.page-links p a span {
	background-color: #ccc;
	color: #333;
}
.page-links p span span {
	padding: 0;
	margin: 0;
}

.page-links p a.nextlink {
	font-weight: bold;
	font-size: 1.062em;
	color: #fff;
	text-align: center;
	text-decoration: none;
	display: block;
	background: #dd462b;
	width: 50%;
	margin: 12px auto 15px;
	padding: 0.8em 0 0.7em 0;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

.page-links p a.nextpage {
	display: flex;
	text-align: center;
	text-decoration: none;
	font-size: 1.062em;
	font-weight: bold;
	color: #000;
	background-color: #ffeaaf;
	padding: 0.6em 0.5em 0.4em;
	margin: 12px auto 15px;
	justify-content: center;
	/*border-bottom: #deb121 3px solid;*/
}
.page-links p a.nextpage span {
	display: inline-block;
	text-align: left;
	padding: 0;
	margin: 0;
	background-color: transparent;
	color: #000;
}
.page-links p a.nextpage span:first-child {
	margin: 0 1em 0 0;
	white-space: nowrap;
}
.page-links p a.nextpage span:first-child:before {
	content: " ";
	display: inline-block;
	background-image: url(img/icon_nextpage.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-color: #d2aa79;
	width: 20px;
	height: 22px;
	border-radius: 3px;
	vertical-align: text-bottom;
	margin: 0 5px 0 0;
}
/* 出典 */
article.single-page dl {
	font-size: 1.2rem;
	color: #666666;
	margin-top: 10px;
	margin-bottom: 17px;
	padding: 12px 20px;
	border-top: 1px solid #eee;
	border-bottom: 1px solid #eee;
	text-align: left;
}
article.single-page dt {
	display: inline-block;
	margin-right: 10px;
}
article.single-page dd {
	display: inline;
}
article.single-page dd a {
	color: #666;
	text-decoration: none;
}

/*profile*/

article.single-page .profile {
	padding: 18px;
	position: relative;
	border-top: #ccc 1px solid;
	margin: 0 0 25px 0;
}
article.single-page .profile img {
	float: left;
	margin: 0 18px 0 0;
}
article.single-page .profile .name,
article.single-page .profile h1 {
	margin-bottom: 10px;
	font-weight: 600;
	line-height: 1.4;
	font-size: 1.4rem;
}
article.single-page .profile p {
	margin: 0;
	font-size: 1.2rem;
	line-height: 1.5;
	overflow: hidden;
}
article.single-page .profile:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

/* post-profile */

article.single-page .post-profile {
	padding: 18px 18px 0;
	position: relative;
	border-top: #ccc 1px solid;
	margin: 0 0 25px 0;
}
#main_list article.single-page .entry_main .post-profile h2 {
	margin-bottom: 10px;
	font-weight: 600;
	line-height: 1.4;
	font-size: 1.4rem;
	background-color: transparent;
	border: none;
	padding: 0;
	margin: 0 0 0 120px;
}
article.single-page .post-profile p {
	margin: 0;
	font-size: 1.2rem;
	line-height: 1.5;
	overflow: hidden;
}
article.single-page .post-profile dl {
	border: none;
	padding: 0;
	margin: 0;
}
article.single-page .post-profile dl img {
	width: 100%;
	height: auto;
}
article.single-page .post-profile dl dd.post-profile__image {
	width: 100px;
	float: left;
	margin-top: -20px;
	padding-right: 20px;
}
article.single-page .post-profile dl dt.post-profile__name-wrapper {
	padding-top: 3px;
}
article.single-page
	.post-profile
	dl
	dt.post-profile__name-wrapper
	.post-profile__name {
	font-weight: bold;
	font-size: 1.3rem;
}

/* blogcard */

/* ブログカード */
article.single-page a.blogcard {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	margin: 25px 4px;
	padding: 0;
	border: #ccc 1px solid;
	box-sizing: border-box;
	color: #333;
	text-decoration: none;
}
article.single-page a.blogcard:after {
	content: "";
	display: block;
	width: 16px;
	height: 16px;
	border-bottom: #964485 4px solid;
	border-right: #964485 4px solid;
	transform: rotate(310deg);
	margin: 0 18px 0 0;
}
article.single-page a.blogcard:hover {
	opacity: 0.6;
}
article.single-page a.blogcard figure {
	width: 180px;
	height: auto;
	position: relative;
	overflow: hidden;
	text-align: center;
	margin: 0;
	position: relative;
}
article.single-page a.blogcard figure:before {
	content: "";
	display: block;
	padding-top: 75%; /* 4:3 */
}
article.single-page a.blogcard figure img {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

article.single-page a.blogcard p {
	width: calc(100% - 235px);
	margin: 0;
}
article.single-page a.blogcard p .title {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
article.single-page a.blogcard p span {
	display: block;
	font-size: 1.3rem;
	color: #666;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

/* ギャラリー */

.gallery-thumbs {
	background-color: var(--gallery-thumbs-bg);
	padding: 2rem;
}
article.single-page .gallery-thumbs p {
	margin: 0 0 0.5rem;
	font-size: 1.2rem;
}
.gallery-thumbs ul.gallery {
	margin: 0 0 0 2px;
	padding: 0;
	list-style: none;
	display: block;
	height: 95px;
	overflow: hidden;
}
article.single-page .gallery-thumbs ul.gallery li {
	margin: 0;
	width: calc(100% / 6);
	padding: 2px;
	box-sizing: border-box;
	float: left;
}
article.single-page .gallery-thumbs figure {
	margin-bottom: 0;
}
article.single-page .gallery-thumbs ul.gallery li img {
	display: block;
}
article.single-page .gallery-thumbs .btn_galmore {
	width: 50%;
	text-align: center;
	background-color: #fff;
	border: #ccc 2px solid;
	color: #009;
	padding: 6px;
	font-size: 1.4rem;
	margin: 5px auto;
}
article.single-page .gallery-thumbs .btn_galmore:hover {
	cursor: pointer;
	opacity: 0.6;
}

/* 本文内ギャラリーボタン */

article.single-page a.goto_gallery {
	position: relative;
	display: block;
}
article.single-page a.goto_gallery:after {
	content: " ";
	display: block;
	background-color: rgba(0, 0, 0, 0.95);
	color: #fff;
	width: 35px;
	height: 35px;
	background-image: url(img/goto_gallery.png?2);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 60% auto;
	margin: 0 0 0 auto;
	border-radius: 5px;
	opacity: 0.6;
	position: absolute;
	left: 40px;
	bottom: 5px;
}
article.single-page a.goto_gallery:hover:after {
	opacity: 0.8;
}
article.single-page a.btn_goto_gallery {
	display: flex;
	background-color: #e3e3e3;
	text-align: center;
	align-items: center;
	justify-content: center;
	width: 350px;
	margin: 0.8em auto 0;
	text-decoration: none;
	padding: 3px 0;
	font-size: 1.6rem;
}
article.single-page a.btn_goto_gallery:before {
	content: " ";
	display: inline-block;
	width: 35px;
	height: 35px;
	background-image: url(img/btn_goto_gallery.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 60% auto;
	margin: 0 8px 0 0;
}
article.single-page a.btn_goto_gallery:hover {
	opacity: 0.6;
}

article.single-page a.goto_gallery + p.wp-caption-text > a.btn_goto_gallery {
	border-left: #fff 40px solid;
}
article.single-page .image {
	display: flex;
	flex-direction: column;
}
article.single-page .image a.goto_gallery {
	order: 1;
}
article.single-page .image a.goto_gallery + p.image-cite,
article.single-page .image a.btn_goto_gallery + p.image-cite {
	order: 2;
}
article.single-page .image a.btn_goto_gallery {
	order: 3;
}

/* WPアソシエイトポストR2用 */
.wpap-tpl-detail {
	margin-left: auto !important;
	margin-right: auto !important;
}
.wpap-tpl-with-detail {
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 1em !important;
}
.wpap-tpl-detail .wpap-link,
.wpap-tpl-detail .wpap-link:hover {
	box-shadow: none !important;
	padding: 1em !important;
}
.wpap-tpl-with-detail .wpap-link,
.wpap-tpl-with-detail .wpap-price,
.wpap-tpl-detail .wpap-price {
	padding: 0 !important;
	margin: 5px 0 0 !important;
}
.wpap-tpl-with-detail p.wpap-title,
.wpap-tpl-detail p.wpap-title,
.wpap-tpl-detail p.wpap-title:hover {
	margin: 0 0 5px !important;
}
.wpap-tpl-with-detail .wpap-image,
.wpap-tpl-detail .wpap-image {
	margin-bottom: 0 !important;
}

/* ----- ボタン ----- */
.entry_main a.btn {
	font-weight: bold;
	color: #fff;
	text-align: center;
	text-decoration: none;
	display: inline-block;
	background: #ff7e80;
	margin: 5px 10px;
	padding: 10px 15px 8px;
	border-bottom: 3px solid #e47072;
	border-top: none;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
}
.entry_main a.btn.btn_normal {
	font-size: 1.6rem;
	display: block;
	margin: 5px auto;
	max-width: 50%;
}
.entry_main a.btn.btn_large {
	display: block;
	margin: 5px auto;
	max-width: 50%;
	font-size: 2rem;
}
.entry_main a.btn.green,
.entry_main a.btn.btn_normal.green,
.entry_main a.btn.btn_large.green {
	background-color: #7fd26e;
	border-bottom-color: #5fab4f;
}
.entry_main a.btn.blue,
.entry_main a.btn.btn_normal.blue,
.entry_main a.btn.btn_large.blue {
	background-color: #77c0f9;
	border-bottom-color: #609fd0;
}
.entry_main a.btn.purple,
.entry_main a.btn.btn_normal.purple,
.entry_main a.btn.btn_large.purple {
	background-color: #b163a3;
	border-bottom-color: #964485;
}
.entry_main a.btn:hover {
	border-bottom: 3px solid transparent !important;
	border-top: none;
	transform: translateY(3px);
}

.entry_main a.btn.ad {
	position: relative;
	margin-top: 50px;
	margin-bottom: 40px;
}
.entry_main a.btn.ad:before {
	content: "\5b\41\44\5d";
	display: block;
	position: absolute;
	top: -23px;
	left: 0;
	width: 100%;
	text-align: center;
	font-size: 10px;
	font-weight: normal;
	color: #ccc;
}
.entry_main a.btn.hulu,
.entry_main a.btn.btn_normal.hulu,
.entry_main a.btn.btn_large.hulu {
	background-color: #66aa33;
	border-bottom-color: #3c661f;
}
.entry_main a.btn.yellow,
.entry_main a.btn.btn_normal.yellow,
.entry_main a.btn.btn_large.yellow {
	background-color: #ffd814;
	border-bottom-color: #e2c81f;
	color: #333;
}
.entry_main a.btn.orange,
.entry_main a.btn.btn_normal.orange,
.entry_main a.btn.btn_large.orange {
	background-color: #ffa41c;
	border-bottom-color: #d18b2b;
	color: #333;
}
.entry_main .btn_affiliate > a.rakuten,
.entry_main a.btn.rakuten,
.entry_main a.btn.btn_normal.rakuten,
.entry_main a.btn.btn_large.rakuten {
	background-color: #bf0000;
	border-bottom-color: #870909;
	color: #fff;
}
.entry_main .btn_affiliate {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 10px;
	max-width: 420px;
	margin-left: auto !important;
	margin-right: auto !important;
}
.entry_main .btn_affiliate > a {
	font-weight: bold;
	color: #fff;
	text-align: center;
	text-decoration: none;
	display: block;
	background: #ccc;
	padding: 10px 15px 8px;
	border-bottom: 3px solid #999;
	border-top: none;
	width: calc(50% - 10px);
	box-sizing: border-box;
	margin: 0 !important;
	line-height: 1.4;
	border-radius: 8px;
}
.entry_main .btn_affiliate > a:hover {
	transform: translateY(3px);
	border-bottom: 3px solid transparent !important;
}
.entry_main .btn_affiliate > a:first-child {
	width: 100%;
}
.entry_main .btn_affiliate > a:last-child:not(:nth-child(2n + 1)) {
	width: 100%;
}
.entry_main .btn_affiliate > a.amazon,
.entry_main a.btn.amazon,
.entry_main a.btn.btn_normal.amazon,
.entry_main a.btn.btn_large.amazon {
	background-color: #ffd814;
	border-bottom-color: #e2c81f;
	color: #222;
}
.entry_main .btn_affiliate > a.yahoo,
.entry_main a.btn.yahoo,
.entry_main a.btn.btn_normal.yahoo,
.entry_main a.btn.btn_large.yahoo {
	background-color: #ff9b07;
	border-bottom-color: #d38108;
	color: #fff;
}
/* ボタン内PR */
.entry_main a.btn.pr {
	position: relative;
}
.entry_main a.btn.pr:before {
	content: "\50\52";
	display: inline-block;
	font-size: 10px;
	font-weight: normal;
	color: #fff;
	border: #fff 1px solid;
	border-radius: 3px;
	line-height: 1;
	position: absolute;
	left: 15px;
	top: 15px;
	padding: 3px 5px 2px;
	opacity: 0.5;
}

/* ----- 表組み ----- */
/* new table */

.entry_main table {
	width: calc(100% - 30px);
	max-width: calc(100% - 30px);
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 1.5rem;
	line-height: 1.6;
	margin: 25px auto;
}
.entry_main table caption {
	text-align: left;
	padding: 2px 0px 1px 5px;
	border-left: var(--main-color) 5px solid;
	margin: 0 0 8px;
}
.entry_main table th,
.entry_main table td {
	padding: 8px 10px 6px;
	border: var(--single-table-border) 1px solid;
}
.entry_main table th {
	background-color: var(--single-table-th);
	font-weight: bold;
	text-align: center;
}
.entry_main table td.gray {
	background-color: var(--single-table-th);
}
.entry_main table th.center,
.entry_main table td.center {
	text-align: center;
}

/* 枠線 */
.entry_main table.frame th {
	padding: 8px 10px 6px;
	border: 1px solid var(--single-table-border);
	background-color: var(--single-table-th);
	font-weight: bold;
	text-align: left;
}
.entry_main table.frame td {
	padding: 8px 10px 6px;
	border: 1px solid var(--single-table-border);
}
/* 下線 */
.entry_main table.line th {
	padding: 8px 10px 6px;
	border-bottom: 1px solid var(--single-table-border);
	font-weight: bold;
	text-align: left;
}
.entry_main table.line td {
	padding: 8px 10px 6px;
	border-bottom: 1px solid var(--single-table-border);
}
.entry_main table.line tr:first-child th,
.entry_main table.line tr:first-child td {
	border-top: 1px solid var(--single-table-border);
}
.entry_main table.line th + td,
.entry_main table.line th + th,
.entry_main table.line td + td {
	border-left: 1px dotted var(--single-table-border);
}
.entry_main table.frame th.center,
.entry_main table.frame td.center,
.entry_main table.line th.center,
.entry_main table.line td.center,
.entry_main table.frame.center th,
.entry_main table.frame.center td,
.entry_main table.line.center th,
.entry_main table.line.center td {
	text-align: center;
}

/* tablepress */
.tablewrap {
	margin: 25px 15px;
}
article.single-page .entry_main table.tablepress {
	margin: 25px auto;
	border-top: var(--single-table-border) 1px solid;
	height: 1px;
}
article.single-page .entry_main .tablewrap table,
article.single-page .entry_main .tablewrap table.tablepress {
	margin: 0;
	height: 1px;
	width: 100%;
	max-width: 100%;
}
article.single-page .entry_main .tablewrap table td,
article.single-page .entry_main .tablewrap table th,
article.single-page .entry_main table.tablepress td,
article.single-page .entry_main table.tablepress th {
	height: 100%;
}
article.single-page .entry_main .tablewrap table th,
article.single-page .entry_main table.tablepress th {
	background-color: var(--single-table-th);
}
table.tablepress.all_center td,
table.tablepress.all_center th,
.all_center table.tablepress td,
.all_center table.tablepress th {
	text-align: center;
	vertical-align: middle;
}
.th-1 tr.row-1 td,
.th-1 tr.row-1 th,
.th-2 tr.row-2 td,
.th-2 tr.row-2 th,
.th-3 tr.row-3 td,
.th-3 tr.row-3 th,
.th-4 tr.row-4 td,
.th-4 tr.row-4 th,
.th-5 tr.row-5 td,
.th-5 tr.row-5 th,
.th-6 tr.row-6 td,
.th-6 tr.row-6 th,
.th-7 tr.row-7 td,
.th-7 tr.row-7 th,
.th-8 tr.row-8 td,
.th-8 tr.row-8 th,
.th-9 tr.row-9 td,
.th-9 tr.row-9 th,
.th-10 tr.row-10 td,
.th-10 tr.row-10 th {
	background-color: var(--single-table-th);
	font-weight: bold;
	text-align: center;
	vertical-align: middle;
}

table.tablepress.col-1_center td.column-1,
table.tablepress.col-2_center td.column-2,
table.tablepress.col-3_center td.column-3,
table.tablepress.col-4_center td.column-4,
table.tablepress.col-5_center td.column-5,
table.tablepress.col-6_center td.column-6,
table.tablepress.col-7_center td.column-7,
table.tablepress.col-8_center td.column-8,
table.tablepress.col-9_center td.column-9,
table.tablepress.col-10_center td.column-10,
table.tablepress.col-11_center td.column-11,
table.tablepress.col-12_center td.column-12,
table.tablepress.col-13_center td.column-13,
table.tablepress.col-14_center td.column-14,
table.tablepress.col-15_center td.column-15,
table.tablepress.col-16_center td.column-16,
table.tablepress.col-17_center td.column-17,
table.tablepress.col-18_center td.column-18,
table.tablepress.col-19_center td.column-19 {
	text-align: center;
	vertical-align: middle;
}

.tablepress span.center {
	display: flex;
	height: 100%;
	justify-content: center;
	align-items: center;
}
.tablepress span.left {
	display: flex;
	height: 100%;
	justify-content: flex-start;
	align-items: center;
}
.tablepress span.right {
	display: flex;
	height: 100%;
	justify-content: flex-end;
	align-items: center;
}
.tablepress span.color {
	display: flex;
	height: calc(100% + 14px);
	margin: -8px -10px -6px;
	box-sizing: border-box;
}
.tablepress span.color.gray {
	background-color: var(--single-table-th);
}
.tablepress span.color.main {
	background-color: var(--main-color);
}
.tablepress span.color.point {
	background-color: var(--main-color);
}
.tablepress span.color.gray-border {
	border: var(--single-table-border) 3px solid;
}
.tablepress span.color.main-border {
	border: var(--main-color) 3px solid;
}
.tablepress span.color.point-border {
	border: var(--main-color) 3px solid;
}
.tablepress span.txt-color_pont {
	color: var(--main-color);
}
.entry_main td a.btn {
	margin-left: auto;
	margin-right: auto;
}

table.tablepress td img,
article.single-page table td img {
	max-width: 100px;
	height: auto;
	/*padding-right: 50px;*/
}
article.single-page table td img.w150 {
	max-width: 150px;
}
article.single-page table td img.w200 {
	max-width: 200px;
}

article.single-page table.small td,
article.single-page table.small th {
	font-size: 1.2rem;
	color: var(--text-color);
}
article.single-page table.center td,
article.single-page table.center th {
	text-align: center;
}

table.table_1col-30 td:first-child,
table.table_1col-30 th:first-child {
	width: 30%;
}

table.table_odd-20 td:nth-child(odd),
table.table_odd-20 th:nth-child(odd) {
	width: 20%;
}

table.table_fixed {
	table-layout: fixed;
}
article.single-page table.table_fixed td img {
	max-width: 100%;
	height: auto;
}

.tablewrap.scroll {
	overflow-x: auto;
	padding-bottom: 1em;
	-webkit-overflow-scrolling: touch;
}
/*スクロールバー全体の高さ*/
.tablewrap.scroll::-webkit-scrollbar {
	height: 4px;
}
/*スクロールバー全体の背景*/
.tablewrap.scroll::-webkit-scrollbar-track {
	background: #eee;
}
/*スクロールバーの動く部分*/
.tablewrap.scroll::-webkit-scrollbar-thumb {
	background: #aaa;
	border: none;
}
/*スクロールバーの動く部分のホバー（マウスオーバー）*/
.tablewrap.scroll::-webkit-scrollbar-thumb:hover {
	background: #999;
}

.tablewrap.scroll td,
.tablewrap.scroll th {
	white-space: nowrap;
}

/* ranking */

table.ranking td:first-child {
	width: 2em;
	text-align: center;
}
table.ranking td:nth-child(2) {
	width: 30%;
}
article.single-page table.ranking td img {
	max-width: 100%;
	height: auto;
	/*padding-right: 50px;*/
}

/* codeブロック */

.entry_main code {
	background-color: #eee;
	padding: 8px;
}
.entry_main code.block {
	display: block;
	padding: 1em;
	margin: 25px 20px;
	font-size: 0.8em;
	line-height: 1.6;
	border-radius: 4px;
	border: #999 1px solid;
	background-color: #333;
	color: #f7db5b;
}

/* ボックス */

.entry_main div.box_color {
	background-color: #f7f7f7;
	border-radius: 4px;
	margin: 25px 20px;
	padding: 1px 5px;
}
.entry_main div.box_color.notice {
	background-color: #fff0c5;
	border: #fbcf53 1px solid;
}
.entry_main div.box_color.caution {
	background-color: #ffebeb;
	border: #ffa0a0 1px solid;
}
article.single-page .box_color ul,
article.single-page .box_color ol {
	margin-top: 20px;
	margin-left: 15px;
}
article.single-page .box_color a,
article.single-page .box_color li a {
	color: #333;
}
.entry_main div.box_color.green {
	background-color: rgba(95, 171, 78, 0.05);
	border: #5fab4f 2px solid;
}
.entry_main div.box_color.blue {
	background-color: rgba(96, 159, 208, 0.05);
	border: #609fd0 2px solid;
}
.entry_main div.box_color.point {
	margin-top: -20px;
}
article.single-page .entry_main div.box_color.green h4 {
	margin: -1px -5px;
	padding: 10px;
	background-color: #5fab4e;
	color: #fff;
	font-weight: normal;
}
article.single-page .entry_main div.box_color.green h4:before {
	display: none;
}
article.single-page .entry_main h3.blue {
	border-color: #609fd0;
}

/* マーカー */
.marker_pink {
	background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #ffdfef 0%)
		repeat scroll 0 0;
}
.marker_yellow {
	background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #ffffbc 0%)
		repeat scroll 0 0;
}
.marker_blue {
	background: rgba(0, 0, 0, 0) linear-gradient(transparent 60%, #cce5ff 0%)
		repeat scroll 0 0;
}

/* 吹き出し */

.box_bubble {
	display: flex;
	margin: 25px 0;
	align-items: center;
}
.box_bubble figure {
	width: 100px;
	max-width: 100px;
	min-width: 100px;
	text-align: center;
	margin: 0px !important;
}
.box_bubble figure img {
	border-radius: 50%;
	border: #e2e2e2 1px solid;
	box-sizing: border-box;
}
.box_bubble figure.square img {
	border-radius: 4px;
}
.box_bubble figure > figcaption {
	text-align: center;
	margin: 5px 0 0;
	font-size: 10px;
}
.box_bubble > p {
	border: #ccc 1px solid;
	max-width: calc(100% - 105px);
	margin: 0 25px !important;
	padding: 15px;
	border-radius: 8px;
	position: relative;
	background-color: #fff;
}
.box_bubble > p:before {
	content: " ";
	display: block;
	width: 20px;
	height: 20px;
	border-left: #ccc 1px solid;
	border-bottom: #ccc 1px solid;
	background-color: #fff;
	position: absolute;
	left: -11px;
	top: calc(50% - 11px);
	transform: rotate(45deg);
}
.box_bubble.right {
	flex-direction: row-reverse;
}
.box_bubble.right > p:before {
	left: auto;
	right: -11px;
	transform: rotate(-135deg);
}
.box_bubble figure.color img {
	border: #ccc 4px solid;
}
.box_bubble figure.color.red img {
	border-color: #e62022;
}
.box_bubble figure.color.blue img {
	border-color: #3ab7ff;
}
.box_bubble figure.color.green img {
	border-color: #3bd546;
}
.box_bubble figure.color.yellow img {
	border-color: #ffc300;
}
.box_bubble figure.color.pink img {
	border-color: #ff98bf;
}
.box_bubble figure.color.grape img {
	border-color: #b163a3;
}

.box_bubble.double:not(.right) figure + figure {
	margin-left: 10px !important;
}
.box_bubble.double.right {
	flex-direction: row;
	justify-content: flex-end;
}
.box_bubble.double.right figure:first-child {
	order: 2;
}
.box_bubble.double.right figure + figure {
	margin-left: 10px !important;
	order: 3;
}
.box_bubble.double.right p {
	order: 1;
}

/* == writer_info == */

#main_list.archive.writer h1.category_title {
	font-size: 2.4rem;
	border-bottom: none;
}
.writer_info {
	text-align: center;
}
.single-page .writer_info figure,
.writer_info figure {
	display: block;
	margin: 0 auto;
	width: 88px;
	height: 88px;
}
.single-page .writer_info figure img,
.writer_info figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
	display: block !important;
}
.writer_info .writer_info_name {
	text-align: center;
	margin: 10px auto;
	font-weight: bold;
	font-size: 2rem;
}
.writer_info .writer_info_text {
	text-align: left;
	max-width: 500px;
	margin: 0 auto 10px;
	display: inline-block;
	font-size: 1.5rem;
	line-height: 1.5;
	color: var(--single-gray-text2);
}
.writer_info .writer_genre {
	display: flex;
	justify-content: center;
	margin: 10px auto 30px;
	font-size: 1.4rem;
}
.writer_info .writer_genre span,
.writer_info .writer_genre a {
	display: inline-block;
	background: url(img/icon_tags.png) left center no-repeat;
	color: var(--text-color);
	text-decoration: none;
	padding: 0 0 0 15px;
	margin-right: 10px;
}
.writer_info .writer_genre a:hover {
	opacity: 0.5;
}
.writer_info .writer_links {
	display: flex;
	justify-content: center;
	margin: 10px auto;
	font-size: 1.6rem;
}
.writer_info .writer_links li {
	margin-left: 1em;
	padding-left: 1em;
	border-left: var(--text-color) 1px solid;
}
.writer_info .writer_links li:first-child {
	margin-left: 0;
	padding-left: 0;
	border-left: none;
}
.writer_info .writer_links a {
	color: var(--text-color);
}
.writer_title {
	margin: 50px 0 10px;
	font-size: 2rem;
}

.single-page .writer_info {
	margin: 2em 0;
}
.single-page .writer_info > a {
	display: flex;
	align-items: center;
	text-decoration: none;
	color: var(--text-color);
	border: var(--single-border-color) 1px solid;
	padding: 1em;
	transition: all 0.2s;
}
.single-page .writer_info > a:after {
	content: "";
	width: 15px;
	height: 15px;
	border-radius: 2px;
	border-right: var(--single-gray-text) 3px solid;
	border-top: var(--single-gray-text) 3px solid;
	transform: rotate(45deg);
	margin: 0 0 0 auto;
	opacity: 0.23;
}
.single-page .writer_info > a:hover,
.single-page .writer_info > a:hover:after {
	opacity: 1;
}
.single-page .writer_info figure {
	margin: 0 12px 0 0;
}
.single-page .writer_info .writer_info_detail {
	width: calc(100% - 100px - 20px);
}
.single-page .writer_info .writer_info_name {
	font-size: 1.6rem;
	text-align: left;
	margin: 0 !important;
}
.single-page .writer_info .writer_info_text {
	max-width: none;
	font-size: 1.4rem;
	color: var(--single-gray-text2);
	text-align: left;
	margin: 0 !important;
}
.single-page .writer_info .writer_genre {
	margin: 0 !important;
	justify-content: flex-start;
	list-style: none;
}
.single-page .writer_info .writer_genre li {
	margin: 0 !important;
	font-size: 1.4rem;
}
/* for creator / writer */
.box_writer,
.box_creator {
	padding: 16px;
	margin: 0 0 25px;
	border: var(--single-border-color) 1px solid;
	display: grid;
	grid-template-columns: 100px auto;
	grid-template-rows: auto;
	grid-column-gap: 16px;
	grid-row-gap: 0px;
}
.box_creator_wrap {
	padding: 16px;
	margin: 0 0 25px;
	border: var(--single-border-color) 1px solid;
}
.box_creator_wrap .box_creator {
	border: none;
	padding: 0;
	margin: 0;
}
.box_creator_wrap .box_creator + .box_creator {
	border-top: var(--single-border-color) 1px solid;
	padding-top: 16px;
	margin-top: 16px;
}
.box_writer_img,
.box_creator_img {
	margin-bottom: 0 !important;
}
.box_writer_img img,
.box_creator_img img {
	width: 100%;
	height: auto;
	aspect-ratio: 1;
	border-radius: 50%;
}
.box_writer_txt,
.box_creator_txt {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}
.box_creator_txt-group {
	font-weight: 700;
	font-size: 14px !important;
	margin: 0 8px 0 0 !important;
	color: color-mix(in srgb, #000 35%, var(--single-gray-text2));
}
.box_writer_txt-name,
.box_creator_txt-name {
	font-weight: 700 !important;
	font-size: 18px !important;
	margin: 0 !important;
	color: color-mix(in srgb, #000 35%, var(--single-gray-text2));
}
.box_writer_txt-profile,
.box_creator_txt-profile {
	font-size: 14px !important;
	line-height: 1.4 !important;
	margin: 0 !important;
	color: color-mix(in srgb, #000 35%, var(--single-gray-text2));
	width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.box_writer_txt-profile br,
.box_creator_txt-profile br {
	display: none;
}
.box_writer_txt-profilelink,
.box_creator_txt-profilelink {
	font-size: 12px !important;
	margin: 0 0 0 auto !important;
	line-height: 1 !important;
}
.box_writer_txt-profilelink a,
.box_creator_txt-profilelink a {
	color: var(--text-color) !important;
	text-decoration: none !important;
	display: inline-flex;
	grid-template-columns: 1em auto;
	grid-template-rows: auto;
	grid-column-gap: 3px;
	grid-row-gap: 0px;
	align-items: center;
	border-bottom: transparent 1px solid;
	border: var(--text-color) 1px solid;
	border-radius: 20px;
	padding: 5px 10px;
	margin: 0 !important;
	opacity: 0.8;
}
.box_writer_txt-profilelink a::before,
.box_creator_txt-profilelink a::before {
	content: "";
	width: 1em;
	height: 1em;
	background-image: url(img/icon_creator-profnote.png);
	background-repeat: no-repeat;
	background-size: contain;
}
.box_creator_txt-snslink {
	display: block;
	font-size: 12px !important;
}
.box_creator_txt-snslink a {
	color: var(--sns-link);
}
.box_creator_txt-snslink span:nth-child(n + 2) {
	display: none;
}

/* ラベル付きブログカード */
article.single-page .box-labelcard {
	--label-color: #333;
	--label-color_border: #ccc;
	--label-color_img: url(img/label_icon-check.png);
	position: relative;
	margin: 2em auto 1.5em;
	padding: 0.8em 0.6em 0.6em;
	border: var(--label-color_border) 1px solid;
	border-radius: 4px;
	max-width: 660px;
	box-sizing: border-box;
}
article.single-page .box-labelcard .box-labelcard_label {
	position: absolute;
	top: -1em;
	left: 0.8em;
	background-color: var(--label-color);
	color: #fff;
	padding: 5px 8px 3px;
	font-size: 0.75em;
	font-weight: 700;
	display: flex;
	line-height: 1;
	align-items: center;
}
article.single-page .box-labelcard .box-labelcard_label:before {
	content: "";
	display: block;
	width: 1em;
	height: 1em;
	background-image: var(--label-color_img);
	background-repeat: no-repeat;
	background-size: contain;
	margin-right: 5px;
	margin-bottom: 1px;
}
article.single-page .box-labelcard .box-labelcard_link {
	display: grid;
	grid-template-columns: 120px 1fr;
	grid-template-rows: 1fr;
	grid-column-gap: 0.7em;
	grid-row-gap: 0px;
	align-items: center;
	color: #333;
	text-decoration: none;
	margin-top: 5px;
}
article.single-page .box-labelcard .box-labelcard_image {
	margin: 0;
}
article.single-page .box-labelcard h3.box-labelcard_title {
	margin: 0;
	padding: 0;
	border: none;
	font-size: 0.9em;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
article.single-page .box-labelcard .box-labelcard_excerpt {
	margin: 0.6em 0 0;
	font-size: 0.7em;
	line-height: 1.4;
	opacity: 0.7;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
article.single-page .box-labelcard.icon-arrow {
	--label-color_img: url(img/label_icon-arrow.png);
}
article.single-page .box-labelcard.icon-finger {
	--label-color_img: url(img/label_icon-finger.png);
}
article.single-page .box-labelcard.icon-light {
	--label-color_img: url(img/label_icon-light.png);
}
article.single-page .box-labelcard.purple {
	--label-color: #b163a3;
	--label-color_border: #b163a3;
}
article.single-page .box-labelcard.red {
	--label-color: #ff7e80;
	--label-color_border: #ff7e80;
}
article.single-page .box-labelcard.blue {
	--label-color: #77c0f9;
	--label-color_border: #77c0f9;
}
article.single-page .box-labelcard.green {
	--label-color: #7fd26e;
	--label-color_border: #7fd26e;
}

/* ----- attachment ----- */

.attachment .single-page .entry_title h1 {
	font-size: 2rem;
}
.attachment .single-page a.backlink {
	display: block;
	border: var(--gallery-backlink) 2px solid;
	color: var(--gallery-backlink);
	text-decoration: none;
	text-align: center;
	padding: 1em;
}

article.single-page .entry_main .wp-caption-text p,
.wp-block-image figcaption {
	margin: 5px 0;
	font-size: 1.2rem;
	color: var(--single-gray-text2);
}
.attachment article.single-page .entry_main .wp-caption-text p,
.attachment .wp-block-image figcaption {
	width: 100%;
	text-align: left;
}

.entry_main .swiper-container {
	width: 100%;
}
.entry_main .swiper-container.slider {
	height: auto;
	/*width: calc(100% + 60px);
	margin-left: -30px;
	margin-right: -30px;*/
	width: 100%;
	position: relative;
	overflow: hidden;
	transition: all 0.5s;
}
.attachment .entry_main .swiper-container.slider .splide__track {
	margin-left: 5%;
	margin-right: 5%;
}
.attachment .entry_main .swiper-container.slider .splide__list {
	align-items: flex-start;
	transition: all 0.5s;
}
.attachment .entry_main .swiper-container.slider .wp-block-image {
	height: auto;
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.entry_main .swiper-container.slider .wp-block-image img {
	max-height: 100%;
	object-fit: contain;
}
.entry_main .swiper-button-next:after,
.swiper-button-prev:after {
	font-size: 24px;
}
.attachment .entry_main .swiper-button-next,
.attachment .entry_main .swiper-button-prev {
	color: var(--gallery-arrow);
	height: 100%;
	margin-top: 0;
	top: 0;
}
.attachment .entry_main .splide__arrows {
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	/*z-index: 10;*/
}
.attachment .entry_main .splide__arrows button {
	text-indent: -9999px;
	overflow: hidden;
	border: none;
	background-color: transparent;
	position: relative;
	width: 30px;
	height: 100%;
	transform: translate(0);
}
.attachment .entry_main .splide__arrows button[disabled] {
	opacity: 0.5;
	pointer-events: none;
}
.attachment .entry_main .splide__arrows button::before {
	content: "";
	position: absolute;
	left: 10px;
	width: 15px;
	height: 15px;
	display: block;
	border-left: var(--gallery-arrow) 2px solid;
	border-bottom: var(--gallery-arrow) 2px solid;
	transform: rotate(45deg);
}
.attachment .entry_main .splide__arrows .splide__arrow--next::before {
	transform: rotate(225deg);
	left: auto;
	right: 10px;
}
.attachment .entry_main .splide__arrows button:hover {
	cursor: pointer;
}
.entry_main .swiper-button-next,
.entry_main .swiper-container-rtl .swiper-button-prev {
	right: 0;
}
.entry_main .swiper-button-next:hover,
.entry_main .swiper-container-rtl .swiper-button-prev:hover {
	right: -5px;
}
.entry_main .swiper-button-prev,
.entry_main .swiper-container-rtl .swiper-button-next {
	left: 0;
}
.entry_main .swiper-button-prev:hover,
.entry_main .swiper-container-rtl .swiper-button-next:hover {
	left: -5px;
}

.entry_main .slider-thumbnail.splide {
	background-color: var(--gallery-thumbs-bg);
	padding: 2rem;
	box-sizing: border-box;
}
article.single-page .entry_main .slider-thumbnail.splide p {
	margin: 0 0 0.5rem;
	font-size: 1.2rem;
}
.entry_main .slider-thumbnail.splide .splide__track .splide__slide {
	height: 100%;
	opacity: 0.5;
	overflow: hidden;
	width: 100px !important;
}
.attachment .entry_main .slider-thumbnail.splide .splide__track {
	padding-bottom: 10px;
	overflow: scroll;
}
.entry_main .slider-thumbnail.splide .wp-block-image {
	margin: 0;
	border: var(--gallery-thumbs-bg) 1px solid;
	width: 100% !important;
}
.entry_main .slider-thumbnail.splide .wp-block-image:hover {
	cursor: pointer;
	border-color: var(--gallery-thumbs-border);
}
.attachment
	.entry_main
	.slider-thumbnail.splide
	.splide__track
	.splide__slide.thumActive
	.wp-block-image {
	border-color: var(--gallery-thumbs-active) !important;
}
.attachment .entry_main .slider-thumbnail.splide .wp-block-image img {
	vertical-align: bottom;
	width: 100%;
	height: 100%;
}
.attachment
	.entry_main
	.slider-thumbnail.splide
	.splide__track
	.splide__slide.thumActive {
	opacity: 1;
	border-color: var(--gallery-thumbs-active) !important;
}

/* ----- creator list link ----- */
.creator_list {
	display: flex;
	flex-wrap: wrap;
	gap: 1em 2em;
	margin-bottom: 50px;
}
.creator_list > br {
	display: none;
}
.box_writer.link,
.box_creator.link {
	display: block;
	padding: 0;
	width: calc(50% - 1em);
	border: none;
	margin: 0;
}
.box_writer.link a,
.box_creator.link a {
	padding: 8px;
	display: grid;
	grid-template-columns: 60px auto;
	grid-template-rows: auto;
	grid-column-gap: 10px;
	grid-row-gap: 0px;
	text-decoration: none;
	position: relative;
}
.box_writer.link a:hover,
.box_creator.link a:hover {
	opacity: 0.6;
}
.box_writer.link .box_writer_txt,
.box_creator.link .box_creator_txt {
	gap: 4px;
	flex-direction: column;
	align-items: flex-start;
}
.box_writer.link .box_writer_txt-name,
.box_creator.link .box_creator_txt-group,
.box_creator.link .box_creator_txt-name {
	line-height: 1.1 !important;
}
.box_creator.link:has(.box_creator_txt-group) .box_creator_txt-profile {
	-webkit-line-clamp: 1;
}
.box_creator.link .box_creator_txt-profile,
.box_writer.link .box_writer_txt-profile {
	-webkit-line-clamp: 2;
	line-height: 1.4 !important;
}

#main_list.page article.single-page .entry_main h2.creator_heading {
	margin: 50px 0 10px;
	padding-bottom: 8px;
	border-bottom: #333 1px solid;
	font-size: 1.3em;
	border-left: none;
	background-color: transparent;
}
#main_list.page article.single-page .entry_main h3.creator_heading {
	font-weight: 700;
	margin: 45px 0 10px;
	border-left: none;
}

/* detail */
.creator_detail .box_creator {
	border: none;
	align-items: start;
	grid-template-columns: 120px auto;
	grid-column-gap: 24px;
	margin-bottom: -1em;
}
.creator_detail .creator_title {
	margin: 50px 0 10px;
	font-size: 2rem;
	line-height: 24px;
}
.creator_detail h1.creator_title {
	margin-top: 10px;
	padding: 16px 0;
	font-size: 2.4rem;
	border-bottom: #333 1px solid;
}
.creator_detail .creator_title:has(strong) {
	margin-top: 16px;
	margin-bottom: 0;
}
.creator_detail .creator_title strong {
	display: block;
	font-size: 1.2rem;
	padding: 0 0 2px;
	border-bottom: #333 1px solid;
}
.creator_detail .box_creator_txt {
	display: block;
}
.creator_detail .box_creator_txt-group {
	font-weight: 500;
}
.creator_detail .box_creator_txt-name {
	margin: 8px 0 !important;
}
.creator_detail .creator_title:has(strong) + p,
.creator_detail > p,
.creator_detail > ul {
	font-size: 1.5rem;
	line-height: 1.5;
	margin: 1em 0;
}
.creator_detail > ul li {
	margin: 0.5em 0;
}
.creator_detail .creator_links {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
.creator_detail .creator_links li {
	margin: 0 0 0.5em 0.8em;
	padding-left: 0.8em;
	border-left: #222 1px solid;
	font-size: 1.3rem;
	line-height: 1.2 !important;
}
.creator_detail .creator_links li:first-child {
	margin-left: 0;
	padding-left: 0;
	border-left: none;
}
.creator_detail .creator_links li a {
	color: #222;
	line-height: 1.2 !important;
}
.creator_detail.list h2.creator_title {
	border-bottom: #333 1px solid;
	padding-bottom: 18px;
	margin-top: 3em;
}
.creator_detail.list .box_creator {
	margin: 0;
	padding: 32px 16px;
}
.creator_detail.list .box_creator + .box_creator {
	border-top: #ccc 1px solid;
}
