@charset "UTF-8";

/*色の設定
-----------------------------------------*/
:root
{
	--bluedeep: #92C4DA;
	--bluelight: #CFEAF5;
	--bluefont: #8fc5df;
	--red: #EE887E;
	--graylight: #F7F7F7;
}

/*ヘッダーリンク
-----------------------------------------*/
.sp-link
{
	display: flex;
	margin: 0 0 10px;
}

.sp-link a
{
	display: block;
	width: 50%;
	text-align: center;
	font-size: 14px;
	color: var(--bluefont);
	border-right: 1px solid var(--bluedeep)
}

.sp-link a:last-child
{
	border: none;
}

@media (max-width: 769px)
{
	.sp-link
	{
		margin: 10px 0 0;
	}
}

/*ページタイトル（短い）
-----------------------------------------*/
.page-title
{
	height: 150px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-top: 0;
}

.page-title img
{
	width: 100px;
	padding-bottom: 0;
}

.page-title p
{
	padding-top: 10px;
	padding-left: 1em;
}

@media (max-width: 769px)
{
	.page-title
	{
		display: block;
		padding-top: 15px;
		height: 130px;
	}

	.page-title p
	{
		padding-top: 0;
	}

	.page-title img
	{
		width: 70px;
		padding-bottom: 10px;
	}

	.page-title h1
	{
		padding: 0
	}
}

/* 左コンテンツ
-----------------------------------------*/
.left_column .area
{
	border: 1px solid var(--bluedeep);
	margin-bottom: 20px;
}

.left_column .area h2
{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 45px;
	background: var(--bluedeep);
	color: #fff;
}

.left_column .area h2 img
{
	height: 30px;
	width: auto;
	margin-left: 2em;
}

.left_column .ranking-wrapper
{
	border-bottom: 1px dashed var(--bluedeep);
	padding: 15px 10px 10px;
}

.left_column .ranking-wrapper:last-child
{
	border: none;
}

.left_column .simple-image
{
	width: 100%;
	text-align: center;
	margin-bottom: 5px;
}

.left_column .simple-image img
{
	width: 130px;
	height: 130px;
	object-fit: cover;
}

.left_column .ranking-wrapper p:nth-child(2)
{
	font-size: 15px;
	font-weight: bold;
	color: var(--red);
	line-height: 1;
	padding: 0;
	margin: 0;
}

.left_column .ranking-wrapper .more
{
	font-size: 12.5px;
	line-height: 1.3;
	padding-top: 5px;
}

.left_column .category li
{
	border-bottom: 1px dashed var(--bluedeep);
}

.left_column .category li:last-child
{
	border-bottom: none;
}

.left_column .category li ul li
{
	padding-left: 1em;
}

.left_column .category a
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 13px;
	height: 50px;
	font-size: 12px;
}

.left_column .category li.child:first-child
{
	border-top: 1px dashed var(--bluedeep);
}

.left_column .category li ul li a
{
	height: 10px;
	padding-bottom: 20px;
	position: relative;
}

.left_column .category .child a
{
	padding: 0 13px 0 3em;
}

.left_column .category a img
{
	width: 10px;
	height: 10px;
}

.left_column .archive li
{
	border-bottom: 1px dashed var(--bluedeep);
}

.left_column .archive li:last-child
{
	border-bottom: none;
}

.left_column .archive a
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 13px;
	height: 50px;
	font-size: 12px;
}

.left_column .archive li.child:first-child
{
	border-top: 1px dashed var(--bluedeep);
}

.left_column .archive .child a
{
	padding: 0 13px 0 3em;
}

.left_column .archive a img
{
	width: 10px;
	height: 10px;
}

.left_column .archive summary
{
	position: relative;
	display: block;
	list-style: none;
	font-size: 13px;
	padding: 0 13px 0 13px;
	height: 50px;
	line-height: 50px;
}

.left_column .archive summary::-webkit-details-marker
{
	display: none;
}

.left_column .archive summary::after
{
	position: absolute;
	content: '';
	top: 20px;
	right: 13px;
	width: 10px;
	height: 10px;
	background-image: url(../img/column/icon_plus.svg);
	background-repeat: no-repeat;
	background-size: contain;
	transition: all 0.3s 0s ease
}

.left_column .archive [open] summary::after
{
	background-image: url(../img/column/icon_minus.svg);
	top: 25px
}

.left_column .member li
{
	border-bottom: 1px dashed var(--bluedeep);
}

.left_column .member li:last-child
{
	border-bottom: none;
}

.left_column .member a
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 10px 8px 5px 8px;
	transition: all 0.3s 0s ease
}

.left_column .member a img
{
	width: 42px;
	height: 42px;
	object-fit: cover;
}

.left_column .member a p
{
	font-size: 11px;
	line-height: 1.4;
	letter-spacing: 0;
	display: block;
	width: calc(100% - 75px)
}

.left_column .member a p span
{
	color: var(--bluefont);
	display: block;
	font-size: 12px;
}

.left_column .member a img.icon
{
	width: 10px;
	height: 10px;
}

@media (max-width: 769px)
{
	.left_column .area
	{
		margin-bottom: 20px;
	}

	.left_column .area h2
	{
		height: 40px;
		padding: 0 5%;
		justify-content: flex-start;
	}

	.left_column .area h2 img
	{
		display: none;
	}

	.left_column .ranking-wrapper
	{
		display: flex;
		padding: 7px;
		position: relative;
		overflow: hidden;
	}

	.left_column .ranking-wrapper p:nth-child(2)
	{
		position: absolute;
		top: 0;
		left: 0;
		background: var(--red);
		color: #fff;
		font-weight: normal;
		font-size: 14px;
		padding: 3px 5px
	}

	.left_column .simple-image
	{
		width: 60px;
		height: 60px;
		margin-bottom: 0;
		margin-right: 10px;
	}

	.left_column .simple-image img
	{
		width: 60px;
		height: 60px;
	}

	.left_column .ranking-wrapper .more
	{
		display: block;
		width: calc(100% - 70px);
		font-size: 13.5px;
		line-height: 1.4;
	}

	.left_column .category a
	{
		height: 45px;
	}

	.left_column .archive a
	{
		height: 45px;
	}

	.left_column .archive summary
	{
		height: 45px;
		line-height: 45px;
	}

	.left_column .member a
	{
		padding: 7px 13px 7px 7px;
	}

	.left_column .member a img
	{
		width: 42px;
		height: 42px;
		object-fit: cover;
	}
}

/* single-column_member
-----------------------------------------*/
.tpl-member-title
{
	padding: 20px;
	background: #f1faff;
	margin-bottom: 30px;
}

.tpl-member-title .upper
{
	display: table;
	width: 100%;
}

.tpl-member-title .upper .photo
{
	display: table-cell;
	width: 125px;
}

.tpl-member-title .upper .photo img
{
	max-width: 125px;
	border-radius: 3px;
}

.tpl-member-title .upper .text-wrap
{
	display: table-cell;
	vertical-align: middle;
	padding-left: 15px;
}

.tpl-member-title .upper .text-wrap .title
{
	font-size: 22px;
	font-weight: bold;
	line-height: 1.2;
}

.tpl-member-title .upper .text-wrap .position
{
	font-size: 14px;
	font-weight: bold;
	line-height: 1.5;
	margin-top: 10px;
}

.tpl-member-title .bottom
{
	margin-top: 15px;
}

.tpl-member-title .bottom p
{
	font-size: 14px;
	line-height: 1.5;
}


/* 右コンテンツ
-----------------------------------------*/
.right_bn ul li
{
	margin-top: 10px;
}

.right_bn ul li:first-child
{
	margin-top: 0;
}

.right_bn ul li a
{
	border: 1px solid #f2f2f2;
	display: block;
	padding: 1px;
	text-align: center;
	height: 64px;
}

.right_bn ul li a img
{
	width: 100%;
	height: 60px;
	object-fit: contain;
}

@media (max-width: 769px)
{
	.right_bn ul
	{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	.right_bn ul li
	{
		width: 48.7%;
		margin-top: 0;
		margin-bottom: 10px;
	}
}

/* 中央コンテンツ
-----------------------------------------*/
.center_column
{
	margin-bottom: 100px;
}

.center_column .cafe
{
	border-radius: 20px;
}

/*カテゴリー別一覧*/
.center_column h2.tarm
{
	font-size: 30px;
	padding-left: 0.5em;
	border-left: 3px solid var(--bluedeep);
}

.center_column .item
{
	border: 1px dashed var(--bluedeep);
	padding: 13px 15px;
	margin-top: 20px;
}

.center_column .item .top
{
	display: flex;
	justify-content: space-between;
	margin-bottom: 15px;
}

.center_column .item .top .img
{
	width: 160px;
	margin-right: 10px;
}

.center_column .item .top .img img
{
	width: 160px;
	height: 90px;
	object-fit: cover;
}

.center_column .item .top .txt
{
	width: calc(100% - 175px);
}

.center_column .item .top .txt p.title
{
	font-weight: bold;
	color: var(--bluefont);
	line-height: 1.45;
}

.center_column .item .top .txt p.title span
{
	display: inline-block;
	font-weight: normal;
	color: #fff;
	font-size: 12px;
	text-align: center;
	letter-spacing: 0;
	line-height: 1;
	background: var(--red);
	padding: 3px 5px;
	margin-right: 3px;
}

.center_column .item .top .txt .outher
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 5px;
}

.center_column .item .top .txt .outher img
{
	width: 18px;
	height: 18px;
	object-fit: cover;
}

.center_column .item .top .txt .outher a
{
	display: flex;
	align-items: center;
	margin-right: 5px;
}

.center_column .item .top .txt .outher span.name
{
	font-size: 13px;
	line-height: 1;
	color: var(--bluefont);
	padding-left: 1em;
}

.center_column .item .top .txt .outher span.date
{
	white-space: nowrap;
	font-size: 12px;
	line-height: 1;
	letter-spacing: 0;
}

.center_column .item .bottom
{
	position: relative;
	padding-bottom: 45px;
	line-height: 1.5;
}

.center_column .item .bottom p
{
	line-height: 1.4;
}

.center_column .item .bottom::before
{
	position: absolute;
	content: '';
	left: 0;
	bottom: 0;
	width: 100%;
	height: 95px;
	transition: 0.3s;
	background: linear-gradient(rgba(255, 255, 255, 0) 0%, #fff 100%);
	z-index: 1;
}

.center_column .item .bottom a
{
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 0;
	width: 280px;
	height: 30px;
	line-height: 30px;
	border: 1px solid var(--bluedeep);
	border-radius: 5px;
	text-align: center;
	color: var(--bluefont);
	font-size: 13px;
	z-index: 2;
}

/*ページネーション*/
.pagination
{
	width: 90%;
	margin: 50px auto 0;
}

ul.page-numbers
{
	display: flex;
	justify-content: space-around;
}

ul.page-numbers .page-numbers
{
	padding: 2px 10px;
	display: block;
	font-size: 18px;
	font-weight: bold;
}

ul.page-numbers a.page-numbers
{
	padding: 2px 10px;
	display: block;
	font-size: 18px;
	font-weight: bold;
	color: var(--bluefont);
}

@media (max-width: 769px)
{
	.center_column
	{
		margin-bottom: 50px;
	}

	.center_column .cafe
	{
		display: block;
		margin-bottom: 20px;
	}

	/*カテゴリー別一覧*/
	.center_column h2.tarm
	{
		font-size: 20px;
	}

	.center_column .item
	{
		position: relative;
		padding: 7px;
		margin-top: 10px;
	}

	.center_column .item .top
	{
		margin-bottom: 0;
	}

	.center_column .item .top .img
	{
		width: 60px;
	}

	.center_column .item .top .img img
	{
		width: 60px;
		height: 60px;
	}

	.center_column .item .top .txt
	{
		width: calc(100% - 70px);
	}

	.center_column .item .top .txt p.title
	{
		font-size: 13.5px;
		font-weight: normal;
		line-height: 1.3;
		margin-bottom: 10px;
	}

	.center_column .item .top .txt p.title span
	{
		position: absolute;
		top: 0;
		left: 0;
		background: var(--red);
		color: #fff;
		font-weight: normal;
		font-size: 14px;
		padding: 3px 5px;
	}

	.center_column .item .top .txt .outher img
	{
		display: none;
	}

	.center_column .item .top .txt .outher span.name
	{
		font-size: 11px;
		padding-left: 0;
	}

	.center_column .item .top .txt .outher span.date
	{
		font-size: 11px;
	}

	.center_column .item .bottom
	{
		display: none;
	}

	.pagination
	{
		width: 100%;
		margin: 20px auto 0;
	}

	ul.page-numbers a.page-numbers
	{
		font-size: 16px;
	}
}


/* shingle-column.php
-----------------------------------------*/
/*冒頭*/
.heading .title
{
	padding: 0 10px;
}

.heading h1
{
	font-size: 22px;
	font-weight: bold;
	line-height: 1.3;
	color: var(--bluedeep)
}

.heading .outher
{
	display: flex;
	justify-content: space-between;
	padding: 0 10px;
	margin: 15px 0;
}

.heading .outher a
{
	width: calc(100% - 200px);
}

.heading .outher img
{
	width: 32px;
	height: 32px;
	border-radius: 3px;
	object-fit: cover;
}

.heading .outher .name
{
	font-size: 18px;
	line-height: 1.1;
	color: var(--bluefont);
	margin-left: 10px;
}

.heading .outher .date
{
	letter-spacing: 0;
	font-size: 16px;
}

.heading .share
{
	display: flex;
	border-top: 1px solid #ccc;
	padding: 15px 10px 0;
	font-size: 14px;
}

.heading .share ul
{
	display: flex;
	align-items: center;
}

.heading .img
{
	margin: 20px 0 20px;
}

.heading .img img
{
	max-width: 100%;
	max-height: 490px;
	padding: 0 10px;
	object-fit: cover;
}

.heading .heading_txt
{
	padding: 0 10px;
}

.heading .heading_txt p
{
	line-height: 1.8;
	font-size: 15.5px;
	margin-top: 0;
}

.heading .mokuji
{
	background: #fff;
	border: 4px solid var(--bluedeep);
	margin: 20px 10px 0;
	padding: 1.3em 2em 0.8em;
}

.heading .mokuji h2
{
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	color: var(--bluedeep);
	padding-bottom: 1em;
}

.heading .mokuji a p
{
	color: var(--bluedeep);
	text-decoration: underline;
	font-size: 15px;
	line-height: 1.5;
	padding-bottom: 0.5em;
}

/*本文*/
.cont
{
	padding: 0 10px;
}

.cont h2
{
	border-top: 1px solid var(--bluedeep);
	border-bottom: 1px dotted var(--bluedeep);
	padding: 25px 10px 21px;
	font-size: 20px;
	line-height: 1.5;
	color: var(--bluedeep);
	position: relative;
	margin: 30px auto 0;
}

.cont h2::before
{
	content: "";
	position: absolute;
	top: 3px;
	left: 0;
	width: 100%;
	display: block;
	border-top: 1px dotted var(--bluedeep);
}

.cont p
{
	line-height: 1.8;
	font-size: 15.5px;
	margin-top: 20px;
}

/*関連記事*/
.relative
{
	margin-top: 80px;
}

.relative h2
{
	font-size: 24px;
	font-weight: bold;
	color: var(--bluedeep);
	text-align: center;
	padding-bottom: 20px;
}

.relative ul
{
	border-top: 1px solid var(--bluefont);
	padding-top: 30px;
}

.relative ul li
{
	padding: 18px 18px 18px;
	border: 1px dotted var(--bluefont);
	display: flex;
	margin-bottom: 20px;
}

.relative_left
{
	width: 150px;
}

.relative_left img
{
	width: 110px;
	height: 80px;
	object-fit: cover;
}

.relative_right
{
	width: calc(100% - 150px);
}

.relative_right h3
{
	display: block;
	width: 100%;
	font-size: 16px;
	font-weight: bold;
	color: var(--bluedeep);
	line-height: 1.4;
}

.relative .outher
{
	margin-top: 5px;
}

.relative .outher a
{
	display: flex;
	justify-content: space-between;
	align-items: center;
	color: var(--bluedeep);
	font-size: 12px;
	letter-spacing: 0;
}

.relative .outher img
{
	width: 22px;
	height: 22px;
	object-fit: cover;
	margin-right: 5px;
}

.relative .outher .text-wrap
{
	width: calc(100% - 40px);
	display: flex;
}

.relative .outher .date
{
	font-size: 12px;
	letter-spacing: 0;
	padding-left: 5px;
}

@media (max-width: 769px)
{

	/*冒頭*/
	.heading h1
	{
		font-size: 18px;
	}

	.heading .outher
	{
		margin: 10px 0;
	}

	.heading .outher a
	{
		align-items: center;
	}

	.heading .outher img
	{
		width: 20px;
		height: 20px;
	}

	.heading .outher .name,
	.heading .outher .date
	{
		font-size: 13px;
	}

	.heading .img
	{
		margin: 10px 0;
	}

	.heading .heading_txt p
	{
		margin-top: 0;
		line-height: 1.6;
	}

	/*目次*/
	.heading .mokuji
	{
		padding: 25px 20px 15px;
		margin: 20px 10px;
	}

	.heading .mokuji h2
	{
		padding-bottom: 10px;
		font-size: 16px;
	}

	.heading .mokuji a p
	{
		font-size: 14px;
		padding-bottom: 10px;
	}

	/*本文*/
	.cont h2
	{
		font-size: 17px;
		padding: 20px 0 16px
	}

	.cont p
	{
		font-size: 14px;
		margin-top: 15px;
		line-height: 1.7;
	}

	/*関連記事*/
	.relative
	{
		margin-top: 40px;
	}

	.relative h2
	{
		font-size: 17px;
		padding-bottom: 10px;
	}

	.relative ul
	{
		padding-top: 15px;
	}

	.relative ul li
	{
		padding: 15px 10px 10px;
	}

	.relative_left
	{
		width: 85px;
	}

	.relative_left img
	{
		width: 70px;
	}

	.relative_right
	{
		width: calc(100% - 85px);
	}

	.relative_right h3
	{
		font-weight: normal;
		font-size: 14px;
	}
}