@charset "UTF-8";

/*汎用*/
.txt_red {
	color: #d66441;
}
/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#topics #inner_mainVis
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
#topics #inner_mainVis {
	line-height: 0;
	margin-bottom: 0;
	background: url(../images/topics/mainVis_img01.jpg) no-repeat;
	background-size: cover;
	display: flex;
	justify-content: center;
	align-items: center;
}
#topics #inner_mainVis .ttl {
	color: #fff;
	-moz-text-shadow: 0px 0px 14px rgba(255, 255, 255, 0.9);
	-webkit-text-shadow: 0px 0px 14px rgba(255, 255, 255, 0.9);
	-ms-text-shadow: 0px 0px 14px rgba(255, 255, 255, 0.9);
	text-shadow: 0px 0px 14px rgba(255, 255, 255, 0.9);
}
#topics #inner_mainVis .ttl_kana {
	display: block;
	letter-spacing: 0.08rem;
}

@media (min-width: 1000px){
	#topics #inner_mainVis {
		min-height: 400px;
		background-position: center;
	}
	#topics #inner_mainVis .ttl {
		font-size: 60px;
		line-height: 60px;
		height: 94px;
		margin-top: 23px;
		margin-left: 32px;
		letter-spacing: 0.1rem;
	}
	#topics #inner_mainVis .ttl_kana {
		font-size: 16px;
		line-height: 16px;
		margin-top: 20px;
	}
}
@media (max-width: 999px){
	#topics #inner_mainVis {
		min-height: 170px;
		background: url(../images/topics/sp/mainVis_img01.jpg) no-repeat;
		background-size: cover;
		background-position: center;
	}
	#topics #inner_mainVis .ttl {
		font-size: 31px;
		line-height: 30px;
		margin-top: 25px;
	}
	#topics #inner_mainVis .ttl_kana {
		font-size: 11px;
	}
}
/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#topics #main
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
#topics #main .flex_area {
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	box-sizing: border-box;
}

@media (min-width: 1000px){
	#topics #main .flex_area {
		width: 1000px;
		margin-top: 109px;
	}
}

@media (max-width: 999px){
	#topics #main .flex_area {
		width: auto;
	}

}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#topics .mein_area
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

#topics .mein_area .section_flex {
	display: flex;
	justify-content: flex-start;
	border-bottom: 1px solid #eee;
}
#topics .mein_area .section_flex:last-child {
	padding-bottom: 0;
	border-bottom: none;
}
#topics .mein_area .section_flex .txt_area {
	text-align: left;
}
#topics .mein_area .section_flex .tag_area {
	display: flex;
}
#topics .mein_area .section_flex .datetime {
	position: relative;
}
#topics .mein_area .section_flex .datetime::after {
	position: absolute;
	content: "";
	background: #000;
	margin: auto;
}
#topics .mein_area .section_flex .ttl {
	letter-spacing: 0.08rem;
}
#topics .mein_area .section_flex .txt {
	letter-spacing: 0.12rem;
}

@media (min-width: 1000px){
	#topics .mein_area {
		width: 720px;
		border-top: 1px solid #333;
	}
	#topics .mein_area .section_flex {
		padding: 20px 0;
	}
	#topics .mein_area .section_flex figure {
		width: 200px;
		margin-right: 22px;
	}
	#topics .mein_area .section_flex .txt_area {
		width: 496px;
	}
	#topics .mein_area .section_flex .tag_area {
		font-size: 14px;
		margin-bottom: 18px;
	}
	#topics .mein_area .section_flex .datetime {
		margin-right: 40px;
	}
	#topics .mein_area .section_flex .datetime::after {
		width: 1px;
		height: 12px;
		top: 0;
		bottom: 0;
		right: -20px;
	}
	#topics .mein_area .section_flex .ttl {
		font-size: 18px;
		margin-bottom: 13px;
		font-weight: bold;
	}
	#topics .mein_area .section_flex .txt {
		font-size: 16px;
		line-height: 30px;
	}

}
@media (max-width: 999px){
	#topics .mein_area {
		width: auto;
		margin: 8% 5.33% 0;
		border-top: 1px solid #eee;
		order: 1;
	}
	#topics .mein_area .section_flex {
		padding: 4% 0 5.3%;
	}
	#topics .mein_area .section_flex figure {
		min-width: 100px;
		min-height: 100px;
		margin-right: 4%;
	}
	#topics .mein_area .section_flex .txt_area {
		width: auto;
	}
	#topics .mein_area .section_flex .tag_area {
		font-size: 11px;
		margin-bottom: 17px;
	}
	#topics .mein_area .section_flex .datetime {
		margin-right: 19px;
	}
	#topics .mein_area .section_flex .datetime::after {
		width: 1px;
		height: 8px;
		top: 0;
		bottom: 0;
		right: -10px;
	}
	#topics .mein_area .section_flex .ttl {
		font-size: 14px;
		margin-bottom: 17px;
		letter-spacing: 0.06rem;
	}
	#topics .mein_area .section_flex .txt {
		font-size: 12px;
		line-height: 20px;
	}

}
/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#topics .sideber_area
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

/*ranking_area*/
@media (min-width: 1000px){
	#topics .sideber_area {
		width: 250px;
	}
}
@media (max-width: 999px){
	#topics .sideber_area {
		width: 100%;
		margin: 8% 5.33% 8.266%;
		order: 3;
	}
}

/*category_area*/
#topics .sideber_area .category_area .Category_ttl {
	border-top: 1px solid #333;
	border-bottom: 1px solid #333;
}
#topics .sideber_area .category_area .Category {
	text-align: left;
}
#topics .sideber_area .category_area .category .category_item {
	border-bottom: 1px solid #eee;
}
#topics .sideber_area .category_area .category .category_item:last-child {
	border-bottom: 1px solid #333;
}
@media (min-width: 1000px){
	#topics .sideber_area .category_area .Category_ttl {
		font-size: 20px;
		padding: 15px 0 8px;
	}
	#topics .sideber_area .category_area .category .category_item {
		font-size: 14px;
	}
	#topics .sideber_area .category_area .category .category_item a {
		display: block;
		padding: 16px 20px 12px 20px;
		letter-spacing: 0.1rem;
	}
}
@media (max-width: 999px){
	#topics .sideber_area .category_area .Category_ttl {
		font-size: 18px;
		padding: 12px 0 8px;
	}
	#topics .sideber_area .category_area .category .category_item {
		font-size: 14px;
		letter-spacing: 0.12rem;
	}
	#topics .sideber_area .category_area .category .category_item a {
		display: block;
		padding: 20px 26px 16px;
	}


}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#topics .pagenation
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
#topics .pagenation {
	display: flex;
	width: 100%;
	justify-content: space-between;
	border-top: 1px solid #333;
}
#topics .prev,
#topics .next {
	position: relative;
}
#topics .prev::before,
#topics .next::before {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	margin: auto;
	border-bottom: 1px solid #333;
	border-left: 1px solid #333;
}
#topics .prev::before {
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
}
#topics .next::before {
	transform: rotate(225deg);
	-webkit-transform: rotate(225deg);
	-ms-transform: rotate(225deg);
}
#topics .prev::after,
#topics .next::after {
	position: absolute;
	content: "";
	height: 1px;
	margin: auto;
	background: #333;
}

#topics .pagenation_no {
	display: flex;
	justify-content: center;
}
#topics .pagenation_no a {
	position: relative;
}
#topics .pagenation_no .page.stay::after {
	position: absolute;
	content: "";
	height: 1px;
	margin: auto;
	background: #333;
}

@media (min-width: 1000px){
	#topics .pagenation {
		margin-top: 30px;
		padding: 27px 0 117px;
		font-size: 16px;
	}
	#topics .prev {
		margin-left: 24px;
	}
	#topics .prev::before {
		width: 8px;
		height: 8px;
		left: -12px;
	}
	#topics .prev::after {
		width: 96px;
		left: -2px;
		bottom: -11px;
	}
	#topics .pagenation_no li {
		padding-right: 48px;
	}
	#topics .pagenation_no li:last-child {
		padding-right: 0;
	}
	#topics .pagenation_no .page.page.stay::after {
		width: 20px;
		left: -5px;
		bottom: -11px;
	}
	#topics .next {
		margin-right: 12px;
	}
	#topics .next::before {
		width: 8px;
		height: 8px;
		right: -12px;
	}
	#topics .next::after {
		width: 96px;
		left: 0;
		bottom: -11px;
	}
}
@media (max-width: 999px){
	#topics .pagenation {
		margin: 0 2.66% 0;
		margin-top: 20px;
		padding: 27px 0 49px;
		font-size: 15px;
		order: 2;
	}
	#topics .prev {
		margin-left: 10px;
	}
	#topics .prev::before {
		width: 5px;
		height: 5px;
		left: -7px;
	}
	#topics .prev::after {
		width: 35px;
		left: -2px;
		bottom: -5px;
	}
	#topics .pagenation_no li {
		padding-right: 26px;
	}
	#topics .pagenation_no li:last-child {
		padding-right: 0;
	}
	#topics .pagenation_no .page.page.stay::after {
		width: 22px;
		left: -5px;
		bottom: -5px;
	}
	#topics .next {
		margin-right: 10px;
	}
	#topics .next::before {
		width: 6px;
		height: 6px;
		right: -5px;
	}
	#topics .next::after {
		width: 35px;
		left: 0;
		bottom: -5px;
	}
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#topics.article .mein_area
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
#topics.article .mein_area {
	margin: 0 auto;
	border-top: none;
}
#topics.article .mein_area .tag_area {
	display: flex;
}
#topics.article .mein_area .datetime {
	position: relative;
}
#topics.article .mein_area .datetime::after {
	position: absolute;
	content: "";
	background: #000;
	margin: auto;
}
#topics.article .section_area01 .ttl_b {
	position: relative;
	letter-spacing: 0.2rem;
}
#topics.article section {
	margin: 0 auto;
}
#topics.article section .txt {
	text-align: left;
}
#topics.article .section_area02  {
	background: #f4f8de;
}
#topics.article .section_area02 .ttl_m,
#topics.article .section_area03 .ttl_m {
	font-weight: bold;
	letter-spacing: 0.2rem;
}
#topics.article .section_area02 .flex_area02,
#topics.article .section_area03 .flex_area03 {
	display: flex;
	justify-content: space-between;
}
#topics.article .section_area03  {
	background: #f7e5e0;
}
#topics.article .section_area01 .ttl_b::after {
	position: absolute;
	content: "";
	background: #b9c965;
	margin: auto;
}

#topics.article .sns_area {
	margin: 0 auto;
}
#topics.article .return_btn {
	border-top: 1px solid #333;
}
#topics.article .return_btn a {
	position: relative;
}
#topics.article .return_btn a::before {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	margin: auto;
	border-bottom: 1px solid #333;
	border-left: 1px solid #333;
}
#topics.article .return_btn a::before {
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
}
#topics.article .return_btn a::after {
	position: absolute;
	content: "";
	height: 1px;
	margin: auto;
	background: #333;
}

#topics.article .topics_txtarea {
	text-align: left;
	letter-spacing: 0.12rem;
}

@media (min-width: 1000px){
	#topics.article .mein_area {
		width: 1000px;
	}
	#topics.article .mein_area .main_img {
		margin-bottom: 24px;
	}
	#topics.article .mein_area .tag_area {
		font-size: 14px;
		margin-bottom: 30px;
		letter-spacing: 0.08rem;
	}
	#topics.article .mein_area .datetime {
		margin-right: 40px;
	}
	#topics.article .mein_area .datetime::after {
		width: 1px;
		height: 12px;
		top: 0;
		bottom: 0;
		right: -20px;
	}
	#topics.article .section_area01,
	#topics.article .section_area02,
	#topics.article .section_area03 {
		width: 800px;
		box-sizing: border-box;
	}
	#topics.article .section_area02{
		margin-bottom: 31px;
	}
	#topics.article .section_area02,
	#topics.article .section_area03 {
		padding: 24px 40px;
	}
	#topics.article .section_area03  {
		margin-bottom: 34px;
	}
	#topics.article .section_area01 .ttl_b {
		font-size: 30px;
		line-height: 33px;
		margin-bottom: 52px;
		letter-spacing: 0.12rem;
		font-weight: bold;
	}
	#topics.article .section_area01 .ttl_b::after {
		width: 100px;
		height: 2px;
		bottom: -30px;
		left: 0;
		right: 0;
	}
	#topics.article section .txt {
		font-size: 16px;
		line-height: 30px;
		margin-bottom: 45px;
		letter-spacing: 0.14rem;
	}
	#topics.article section .area01_txt01 {
		margin-bottom: 45px;
	}
	#topics.article .section_area02 .ttl_m,
	#topics.article .section_area03 .ttl_m {
		font-size: 24px;
		line-height: 40px;
		margin: 20px 0 30px;
	}
	#topics.article .section_area02 .l_area,
	#topics.article .section_area03 .l_area {
		width: 346px;
	}
	#topics.article .section_area02 .r_area,
	#topics.article .section_area03 .r_area {
		width: 346px;
	}
	#topics.article .section_area02 .flex_area02,
	#topics.article .section_area03 .flex_area03 {
		width: 720px;
		margin-top: 0;
		margin-bottom: 23px;
	}
	#topics.article .section_area03 .ttl_b {
		font-size: 20px;
		line-height: 30px;
		padding-bottom: 20px;
		margin-bottom: 21px;
	}
	#topics.article .topics_txtarea {
		font-size: 14px;
	}
	#topics.article .sns_area {
		margin-bottom: 46px;
	}
	#topics.article .sns_area li {
		max-width: 178px;
	}

	#topics.article .return_btn {
		font-size: 16px;
		width: 1000px;
		margin-bottom: 90px;
		padding-top: 26px;
	}
	#topics.article .return_btn a::before {
		width: 6px;
		height: 6px;
		left: -20px;
	}
	#topics.article .return_btn a::after {
		width: 97px;
		left: -10px;
		bottom: -13px;
	}
	#topics.article .topics_txtarea {
		width: 800px;
		margin: 0 auto 90px;
		font-size: 16px;
		letter-spacing: 0.12rem;
		line-height: 30px;
	}
	#topics.article .topics_txtarea .topics_area01 {
		margin-bottom: 45px;
	}
}
@media (max-width: 999px){
	#topics.article .mein_area {
		width: auto;
		margin: 0 5.333%;
	}
	#topics.article .mein_area .main_img {
		margin-right: calc(50% - 50vw);
		margin-left: calc(50% - 50vw);
		margin-bottom: 19px;
	}
	#topics.article .mein_area .tag_area {
		font-size: 12px;
		letter-spacing: 0.1rem;
		margin-bottom: 7px;

	}
	#topics.article .mein_area .datetime {
		margin-right: 11px;
	}
	#topics.article .mein_area .datetime::after {
		width: 1px;
		height: 9px;
		top: 0;
		bottom: 0;
		right: -7px;
	}
	#topics.article .section_area01,
	#topics.article .section_area02,
	#topics.article .section_area03 {
		width: auto;
		text-align: left;
	}
	#topics.article .section_area02,
	#topics.article .section_area03 {
		margin-right: calc(50% - 50vw);
		margin-left: calc(50% - 50vw);
		padding-right: calc(50vw - 50%);
		padding-left: calc(50vw - 50%);
		padding-top: 30px;
		padding-bottom: 30px;
	}
	#topics.article .section_area01 .ttl_b {
		font-size: 17px;
		line-height: 24px;
		margin-bottom: 42px;
		letter-spacing: 0.08rem;
		font-weight: bold;
	}
	#topics.article .section_area01 .ttl_b::after {
		width: 71px;
		height: 2px;
		bottom: -13px;
		left: 0;
		right: 0;
	}
	#topics.article section .txt {
		font-size: 12px;
		letter-spacing: 0.1rem;
		line-height: 20px;
		margin-bottom: 29px;
	}
	#topics.article .section_area02 .ttl_m,
	#topics.article .section_area03 .ttl_m {
		font-size: 16px;
		line-height: 25px;
		text-align: center;
		margin: 28px 0 41px;
	}
	#topics.article .section_area02 .txt {
		width: auto;
	}
	#topics.article .section_area02 figure {
		width: auto;
	}
	#topics.article .section_area02 figure.l_area,
	#topics.article .section_area03 figure.l_area {
		margin-bottom: 20px;
	}
	#topics.article .section_area02 .flex_area,
	#topics.article .section_area03 .flex_area {
		margin-bottom: 29px;
		flex-wrap: wrap;
		justify-content: center;
	}
	#topics.article .section_area02 .annotation,
	#topics.article .section_area03 .annotation {
		font-size: 11px;
		text-align: center;
		margin: 30px 0 0;
	}
	#topics.article .section_area03 .ttl_b {
		font-size: 15px;
		line-height: 20px;
		padding-bottom: 16px;
		margin-bottom: 20px;
	}
	#topics.article .topics_txtarea {
		font-size: 12px;
		line-height: 20px;
		margin: 40px 0 30px;
	}
	#topics.article .topics_txtarea .topics_area01 {
		margin-bottom: 29px;
	}
	#topics.article .sns_area {
		width: auto;
		margin: 0 5.33% 29px;
		flex-wrap: wrap;
	}
	#topics.article .sns_area li {
		max-width: 49%;
		margin-bottom: 7px;
	}
	#topics.article .sns_area li:nth-child(n+3) {
		margin-bottom: 0;
	}

	#topics.article .return_btn {
		font-size: 15px;
		width: auto;
		margin-bottom: 48px;
		padding-top: 28px;
	}
	#topics.article .return_btn a::before {
		width: 6px;
		height: 6px;
		left: -20px;
	}
	#topics.article .return_btn a::after {
		width: 74px;
		left: 0;
		bottom: -13px;
	}
}