@charset "utf-8";

/* ******************************************************************

	--article.css--

	1. Article setting（詳細ページ）
		1-1. ArticleHead styles
		1-2. ArticleBody styles
		1-3. ArticleFoot styles
		1-4. PostNav styles
		1-5. PostTag styles
		1-10. Other styles

****************************************************************** */

/*==================================================================
	1. Article setting
===================================================================*/
.section_article { }
.section_photo_article {
	border-bottom: 3px solid #D9D3C5;
	padding-bottom: 20px;
}

/* ------------------------------------------------------------------
	1-1. ArticleHead styles
-------------------------------------------------------------------*/
.article_head {
	margin-bottom: 30px;
}
.article_genre {
	margin-bottom: 10px;
	font-size: 16px;
	font-weight: 700;
	color: #00418F;
}
.article_title {
	font-size: 24px;
	color: #000;
}
.article_title.back {
	border-bottom: 1px solid #E8E3D6;
	padding-bottom: 20px;
	margin-bottom: 20px;
}
.article_title.back a {
	display: block;
	padding-left: 35px;
	color: inherit;
	position: relative;
}
.article_title.back a:hover {
	text-decoration: underline;
}
.article_title.back a:before {
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "\f053";
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	font-size: 16px;
	color: #679CDB;
}
.article_info {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	margin-top: 15px;
}
.article_meta {
	font-size: 12px;
	color: #707070;
}
.article_author {
	display: inline-block;
	padding-left: 20px;
	margin-right: 20px;
	position: relative;
  font-size: 15px;
}
.article_author:before {
	background: url(../img/author.svg) no-repeat left center;
	display: inline-block;
	content: '';
	width: 14px;
	height: 14px;
	position: absolute;
	top: 4px;
	left: 0;
}
.article_author a {
	text-decoration: underline;
	color: inherit;
}
.article_author a:hover {
	text-decoration: none;
}
.article_status {
	display: inline-block;
	padding-left: 20px;
	/*margin-left: 20px;*/
	position: relative;
}
.article_status.limited:before {
	background: url(../img/icon_key.svg) no-repeat left center;
	display: inline-block;
	content: '';
	width: 14px;
	height: 14px;
	position: absolute;
	top: 2px;
	left: 0;
}
.article_status.plus:before {
	background: url(../img/icon_key_free.svg) no-repeat left center;
	display: inline-block;
	content: '';
	width: 14px;
	height: 14px;
	position: absolute;
	top: 2px;
	left: 0;
}
.article_date {
	margin-top: 10px;
}
.article_head_tool {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin-left: auto;
	position: relative;
}
.article_head_tool_item {
	text-align: center;
	cursor: pointer;
}
.article_head_tool_item_clip {
	text-align: center;
	cursor: pointer;
}
.article_head_tool_item_clip .clip_button{
	display: flex;
	flex-direction: row;
	justify-content: center;
	margin: 0; /* PCとSPで値異なる注意 */
	padding: 5px 10px;
	background: #fff;
	color: #8B6F65;
	border: 1px solid #8B6F65;
	border-radius: 10px;
}
.article_head_tool_item_clip .clip_button.saved{
	background: #f0f0f0;
	color: #666;
	border: 1px solid #666;
}
.article_head_tool_item_clip .clip_button > img {
	width: 16px;
	margin-right: 3px;
}
.article_head_tool_item_clip .clip_button > span {
	font-size: 12px;
    font-weight: 700;
}
/*
.article_head_tool_item span {
	display: block;
	margin-top: 5px;
	font-size: 9px;
	font-weight: 700;
	line-height: 1;
	color: #5D503B;
}
*/
.article_head_tool .share_tooltip,
.article_head_tool .tooltip {
	margin-top: 10px;
	position: absolute;
	top: 100%;
	right: 0;
}

/* ------------------------------------------------------------------
	1-2. ArticleBody styles
-------------------------------------------------------------------*/
.article_body {
	padding-bottom: 20px;
}
.article_contents {
	font-size: 16px;
}
.article_contents > p {
	margin-bottom: 20px;
	line-height: 1.9;
}
.article_contents > div {
	margin-bottom: 20px;
	line-height: 1.9;
	word-break: break-all;
}

/* ------------------------------------------------------------------
	1-3. ArticleFoot styles
-------------------------------------------------------------------*/
.article_foot {
	padding: 10px 0;
}
.article_foot_tool {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.article_foot_tool_item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.article_foot_tool_item.action li {
	text-align: center;
	width: 40px;
}
.article_foot_tool_item.action li span {
	display: block;
	margin-top: 5px;
	font-size: 10px;
	font-weight: 500;
	line-height: 1;
	color: #99877A;
}
.article_foot_tool_item.action img {
	display: inline-block;
	height: 24px;
}
.article_foot_tool_item.share {
	margin-left: auto;
}
.article_foot_tool_item.share > li:not(:first-child) {
	margin-left: 15px;
}

.article_action_tool {
	position: relative;
}
.article_action_tool_item {
	cursor: pointer;
}
.article_action_tool .share_tooltip,
.article_action_tool .tooltip {
	width: 190px;
	margin-top: 15px;
	position: absolute;
	top: 10px;
	right: 0;
}
.article_action_list:not(:last-child) {
	border-bottom: 1px solid #E8E3D6;
	padding-bottom: 15px;
	margin-bottom: 15px;
}
.article_action_item:not(:last-child) {
	margin-bottom: 12px;
}
.article_action_icon {
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
}
.article_action_item a {
	display: block;
	color: inherit;
}
.article_action_item a:hover,
.article_action_item button:hover {
	text-decoration: underline;
}

/* ------------------------------------------------------------------
	1-4. ArticleNav styles（記事ナビゲーション）
-------------------------------------------------------------------*/
.section_article_nav {
	border-top: 3px solid #E8E3D6;
	border-bottom: 3px solid #E8E3D6;
	padding: 25px 0;
}
.article_nav {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.article_nav_item {
	width: 50%;
	padding: 15px 0;
}
.article_nav_item.prev {
	padding-right: 18px;
}
.article_nav_item.next {
	border-left: 2px solid #E8E3D6;
	padding-left: 16px;
}
.article_nav_item a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	color: inherit;
}
.article_nav_item a:hover .post_title {
	text-decoration: underline;
}
.article_nav_thm {
	background: #EDEDED;
	border-radius: 5px;
	overflow: hidden;
	width: 160px;
	margin-left: 15px;
	-webkit-box-flex: 0;
	-ms-flex: 0 0 160px;
	flex: 0 0 160px;
}
.article_nav_title {
	margin-bottom: 5px;
	font-weight: 500;
	color: #000;
}
.article_nav_title:after {
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	content: "\f054";
	margin-left: 5px;
	color: #679CDB;
}

/* ------------------------------------------------------------------
	1-5. PostTag styles（記事タグ）
-------------------------------------------------------------------*/
.section_article_tag {
/* 20231218 delete */
}
.section_article_tag .heading {
	margin-right: 15px;
}
.section_article_tag .tag_list {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
}
.section_article_tag .contents_text_link {
	margin-left: auto;
}

/* ------------------------------------------------------------------
	1-10. Other styles
-------------------------------------------------------------------*/
/* --------------------------------
	写真スライド（共通部分style）
--------------------------------*/
.article_slide_more {
	text-align: center;
	color: #FFF;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.1;
}
.article_slide_more a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	background: #99877A;
	width: 70px;
	height: 70px;
	color: inherit;
}
.article_slide_more a:hover {
	background: #F4EDE1;
	color: #5D503B;
}
.article_slide_more span {
	font-size: 12px;
	font-weight: 400;
}
.main_slide .post_thm,
.thumbnail_slide .post_thm {
	background: #EDEDED;
	border: none;
	border-radius: 0;
	float: none;
}
.main_slide .post_title {
	margin-top: 10px;
	font-size: 12px;
	font-weight: 400;
	color: #707070;
}
.thumbnail_slide_item.active .post_thm {
	border: 4px solid #00418F;
}
.thumbnail_slide .post_thm_bg {
	padding-top: 100%;
}

/* --------------------------------
	写真スライド（記事詳細用）
--------------------------------*/
.article_slide {
	width: 560px;
	margin: 0 auto 40px auto;
}
.article_slide_thm_wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 15px;
}
.article_slide .thumbnail_slide {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 490px;
}
.article_slide .thumbnail_slide_item {
	margin-right: 28px;
	width: calc( ( 100% - 140px ) / 5 );
}

/* --------------------------------
	写真スライド_小（記事詳細用）
--------------------------------*/
.article_slide_small {
	width: 300px;
	margin: 0 50px 50px 0;
	float: left;
	position: relative;
	z-index: 1;/* 本文にボカシがかかった際に重なるため指定 */
}
.article_slide_small .thumbnail_slide {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 250px;
}
.article_slide_small .thumbnail_slide_item {
	margin-right: 12.5px;
	width: calc( ( 100% - 50px ) / 4 );
}
.article_slide_small .article_slide_more {
	font-size: 12px;
}
.article_slide_small .article_slide_more a {
	width: 50px;
	height: 50px;
}
.article_slide_small .article_slide_more span {
	font-size: 11px;
}

/* --------------------------------
	写真スライド（写真詳細用）
--------------------------------*/
.photo_slide {
	width: 600px;
	margin: 0 auto;
}
.photo_slide_main_wrap {
	position: relative;
}
.photo_slide .main_slide .post_title {
	font-size: 14px;
	font-weight: 500;
	color: #000;
}
.photo_slide .thumbnail_slide {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-top: 20px;
}
.photo_slide .thumbnail_slide_item {
	margin: 0 16px 16px 0;
	width: calc( ( 100% - 112px ) / 8 );
}
.photo_slide .thumbnail_slide_item:nth-child(8n) {
	margin-right: 0;
}

/* ページネーションのスタイル */
.photo_slide_pagination {
	margin-bottom: 10px;
	text-align: right;
	font-size: 12px;
	font-weight: 500;
	color: #000;
}

/* 前ページ、次ページボタンのスタイル */
.photo_slide_btn a {
	background: rgba(0,0,0,.3);
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 64px;
}
.photo_slide_btn a:hover {
	background: rgba(0,0,0,.6);
}
.photo_slide_btn.prev a {
	left: -20px;
}
.photo_slide_btn.next a {
	right: -20px;
}
.photo_slide_btn a:after {
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	font-size: 16px;
	color: #FFF;
}
.photo_slide_btn.prev a:after {
	content: "\f053";
}
.photo_slide_btn.next a:after {
	content: "\f054";
}

/* --------------------------------
	写真（小）
--------------------------------*/
.article_attachment {
	width: 300px;
	float: left;
	margin: 0 20px 10px 0;
	position: relative;
	z-index: 1;/* 本文にボカシがかかった際に重なるため指定 */
}
.article_thm { }
.article_attachment figure:not(:first-child) {
	margin-top: 30px;
}
.article_attachment figcaption {
	margin-top: 10px;
	font-size: 12px;
	font-weight: 400;
	color: #707070;
}

/* --------------------------------
	写真挟み込み（photo_...）
--------------------------------*/
.article_contents .wrap > p {
	font-size: 14px;
	color: #707070;
	font-weight: 400;
	margin: 5px 15px 0;
	line-height: 1.5;
	text-align: center;
}
.article_contents h2 {
	font-size: 20px;
	margin-left:15px;
  margin-top:20px;
}
.article_contents .wrap {
	padding: 10px 0;
}

/* --------------------------------
	タイムライン
--------------------------------*/
time {
	font-size: 15px;
	color: #8c8c8c;
/*	margin-left: 15px; */
}
.article_contents h4 {
	font-size: 19px;
	margin-top: -5px;
	margin-bottom: -18px;
  color: #000000;
/*	margin-left: 15px; */
}

/* --------------------------------
	情報らんど
--------------------------------*/
.article_contents h5 {
    font-size: 18px;
    border-left: 4px solid #5388e6;
    padding-left: 12px;
    margin: 5px 0;
}
.article_contents h5 span {
    display: block;
    font-size: 14px;
}

/* --------------------------------
	ファイターズキャンプ
--------------------------------*/
.article_contents h6 {
    font-size: 20px;
    border-left: 4px solid #5388e6;
    padding-left: 12px;
    margin: 35px 0 5px;
}
.article_contents h6 span {
    display: block;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.9;
}

/* --------------------------------
	今、あなたにおすすめパーツ
--------------------------------*/
.article_rec {
	border: 1px solid #96887C;
	border-radius: 5px;
	padding: 15px;
	margin-top: 50px;
	position: relative;
}
.article_rec_title {
	background: #99877A;
	border-radius: 50px;
	position: absolute;
	top: -10px;
	left: 0;
	right: 0;
	margin: 0 auto;
	display: inline-block;
	text-align: center;
	color: #FFF;
	font-weight: 700;
}
.article_rec:before {
	background: #99877A;
	border-radius: 50px;
	content: "あわせて読みたい";
	position: absolute;
	top: -12px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	padding: 0 30px;
	text-align: center;
	color: #FFF;
	font-size: 14px;
	font-weight: 700;
	line-height: 24px;
}
.article_rec .post_title {
	font-size: 18px;
}
.article_rec .post_item {
	border: none;
	padding-bottom: 0;
	margin-bottom: 0;
}

/* --------------------------------
	記事中関連リンク
--------------------------------*/
.article_rec_normal {
	font-weight: 800!important;
	color: #0855d9!important;
	background: #ececec;
	padding: 10px 20px;
	border-radius: 8px;
  display: grid;
}
.post_item_nomal {
	display: flow-root;
}
.post_body_nomal {
	overflow: hidden;
	line-height: 1.6;
}
.rec-right-arrow:before {
	font-family: "Font Awesome 6 Free";
	content: "\f061";
	font-size: 17px;
	color: #0855d9!important;
	font-style: normal;
}

/* --------------------------------
	トップニュース
--------------------------------*/
.section_topnews .post_list-type_thm_bg-l .post_thm {
	width: 200px;
	margin-right: 20px;
}
.section_topnews .post_list-type_thm_bg-l .post_title {
	font-size: 20px;
}
.section_topnews .post_list-type_thm_bg-l .post_substr {
	margin: 10px 0;
}

/* --------------------------------
	注目の連載
--------------------------------*/
.section_series .series_head .post_thm {
	width: 200px;
	margin-right: 20px;
}
.section_series .series_head .post_title {
	font-size: 20px;
}
.section_series .series_head .post_substr {
	margin: 10px 0;
}

/* --------------------------------
	会員限定パーツ
--------------------------------*/
#smoke {
	position: relative;
	/*z-index: -1;*/
}
#smoke::before {
	background: linear-gradient(rgba(255,255,255,0) 0, #FFF 120px);
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 95px;
}
.limited_panel {
	background: #FFF;
	border: 1px solid #96887C;
	border-radius: 10px;
	padding: 35px 30px;
	text-align: center;
	clear: both;
}
.limited_title {
	margin-bottom: 10px;
	font-weight: 700;
	color: #000;
}
.limited_title:before {
	background: url(../img/icon_key.svg) no-repeat left center;
	display: inline-block;
	content: '';
	width: 14px;
	height: 14px;
	margin-right: 5px;
}
.limited_title.plus:before {
	background: url(../img/icon_key_free.svg) no-repeat left center;
}
.limited_count {
	margin-bottom: 15px;
	font-weight: 700;
	color: #8B6F65;
}
.limited_btn_wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.limited_btn {
	width: 250px;
	text-align: center;
	font-weight: 700;
}
.limited_btn:not(:first-child) {
	margin-left: 25px;
}
.limited_btn a {
	background: #00418F;
	border: 1px solid #00418F;
	border-radius: 5px;
	display: block;
	padding: 10px 0;
	color: #FFF;
}
.limited_btn a:hover {
	background: #FFF;
	color: #00418F;
}
.limited_btn a.limited_btn_disable {
	pointer-events: none;
	background: #a9a9a9;
	border: 1px solid #a9a9a9;
	border-radius: 5px;
	display: block;
	padding: 10px 0;
	color: #FFF;
}
/* 有料プランを見るボタン */
.limited_btn_02 a {
	background: #F58220;
	border: 1px solid #F58220;
}
.limited_btn_02 a:hover {
	background: #FFF;
	color: #F58220;
}

/* ログインして読むボタン */
.limited_btn_03 a {
	background: #FFF;
	border: 1px solid #96887C;
	color: #96887C;
}
.limited_btn_03 a:hover {
	background: #827369;
	color: #FFF;
}

.limited_btn_text {
	margin-top: 5px;
	font-size: 14px;
}

/* --------------------------------
	記者紹介パーツ
--------------------------------*/
.author_head {
	text-align: center;
}
.author_thm {
	width: 160px;
	margin: 0 auto 25px auto;
}
.author_thm img {
	border-radius: 50%;
}
.author_info {
	color: #707070;
}
.author_name {
	font-size: 18px;
	font-weight: 700;
  color: #333333;
}
.author_position {
	margin-top: 10px;
	font-size: 12px;
	font-weight: 500;
}
.author_sns {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin-top: 20px;
}
.author_sns li:not(:first-child) {
	margin-left: 10px;
}
.author_sns img {
	width: 30px;
}
.author_body {
	border-bottom: 1px solid #E8E3D6;
	padding: 20px 0;
}

/* --------------------------------
	罫囲み網掛け
--------------------------------*/
.keisen {
  border: 1px solid #ccc;
  padding: 10px 15px;
}
.amikake {
  background-color: #eeeeee;
  padding: 10px 15px;
}
.nutgraph {
  background-color: #eeeeee;
  margin:0 40px 20px;
  padding: 10px 22px;
  border-radius: 5px;
}

/* ------------------------------------------
	youtube記事埋め込み動画
 ------------------------------------------ */
.youtube-article {
  text-align: center;
  position: relative;
  width: 650px;
}
.youtube-article iframe{
  top: 0;
  right: 0;
  width: 560px !important;
  height: 315px !important;
}

.un_movie_wrapper {
    margin-top: 1em;
    background: #eee;
    padding: 20px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.un_movie {
    width: 100%;
    position: relative;
    padding-top: 56.25%;
}
.un_movie > iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}
/* ------------------------------------------
	youtube記事埋め込み下項目
 ------------------------------------------ */
.articlePageHead3Bg {
    background: #f7f9ff;
    margin-top: 20px;
    margin-bottom: 8px;
    font-size: 1.12rem;
    border-left: 4px solid #5388e6;
    padding: 0 0 0 6px;
}

/* ------------------------------------------
	親と子サンデー　本
 ------------------------------------------ */

.articleBody a, section .HS-articleBody a {
	color: #00c;
	font-weight: bold;
}

.book {
	margin: 5px 0 0;
	font-size: 1.1em;
}

.book dt {
    padding: 4px 10px;
    font-weight: bold;
    background-color: #ecfaec;
    border-left: 5px solid #43f737;
}
	
.book dd {
    padding: 10px 20px;
}

.book dd .detai dt {
    padding: 0;
    border-left: none;
    background: #fff;
}

.book .second {
   border-top: 1px dotted #DDD;
   padding-top:20px !important;;
}

.book dd .detai dd {
    margin: 0 0 10px 16px;
    padding: 0 0 10px;
    border-top: none;
    line-height: 1.8em;
}

.articleMovieBlock {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    margin-top: 15px;
}

.articleMovieItem {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}

/* ------------------------------------------
	写真特集
 ------------------------------------------ */
.photogallery-box ul.photo-s li {
    float: left;
    display: inline-block;
    height: 150px;
    width: 150px;
    margin: 0 20px 20px 0;
    text-align: center;
    letter-spacing: normal;
    background-color: #e5e5e5;
}
.photogallery-box ul.photo-s li:nth-of-type(4n) {
    margin-right: 0;
}
.photogallery-box .photo-s img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    font-family: "object-fit:contain;object-position:center;";
}
.photogallery-box .schoolName {
    background: #efefef;
    color: #000;
    margin: 15px 0;
    font-size: 1.25em;
    border-left: 5px solid #00418f;
    padding-left: 10px;
    font-weight: bold;
    clear: both;
}
.photogallery-box .consaSection {
    background: #525252;
    color: #ffffff;
    margin: 15px 0;
    font-size: 1.25em;
    border-left: 10px solid #e00000;
    padding-left: 10px;
    font-weight: bold;
}
ul.photo-s {
    display: inline-block;
    margin-top: 20px;
}
.lb-data .lb-caption {
  font-size: 18px !important;
  font-weight: normal !important;
  line-height: 1.3em !important;
  color: #fff;
}

/* ------------------------------------------
	脳活アコーディオン
 ------------------------------------------ */
.article-accordion {
    max-width: 100%;
    margin: 0 64px;
}
.article-accordion:not([open]) {
    margin-bottom: 7px;
    margin: 0 64px;
}
.article-accordion summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 0.1em 2em 0.1em 1em;
    border-left: 15px solid #ddeccd;
    background-color: #949494;
    color: #ffffff;
    font-weight: 600;
    cursor: pointer;
    font-size: 1.3rem;
}
.article-accordion summary::-webkit-details-marker {
    display: none;
}
.article-accordion summary::after{
    transform: translateY(-25%) rotate(45deg);
    width: 10px;
    height: 10px;
    margin-left: 10px;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
    content: '';
    transition: transform .3s;
}
.article-accordion[open] summary::after{
    transform: rotate(225deg);
}
.article-accordion p {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: 1em 2em 2em 2em;
    color: #333333;
    transition: transform .5s, opacity .5s;
}
.article-accordion[open] p {
    transform: none;
    opacity: 1;
}

/* ▼▼▼share_button▼▼▼ */
.share_tooltip{
	background: #FFF;
    border-radius: 8px;
    box-shadow: 0 3px 6px rgba(0,0,0,0.3);
    padding: 15px;
    width: 230px;
    z-index: 10;
	display: none;
	transition: 0.5s;
	text-align: left;
}
.article_clip_tool {
	position: relative;
}
.article_clip_tool_item {
	text-align: center;
	width: 54px;
	cursor: pointer;
}
.article_clip_tool_item img {
	width: 24px;
	height: 24px;
}
.article_clip_tool_item span {
	display: block;
	margin-top: 5px;
	font-size: 9px;
	font-weight: 700;
	line-height: 1;
	color: #5D503B;
}
.article_clip_tool .share_tooltip,
.article_clip_tool .tooltip {
	margin-top: 10px;
	position: absolute;
	top: 100%;
	right: 0;
}
.article_head_tool_item.share {
	display: flex;
}
.article_head_tool_item.share > li {
	margin-left: 15px;
}
.article_head_tool_item.share > img {
	max-width: 24px;
	height: 24px;
}
.share_tooltip .article_action_item a,
.share_tooltip .article_action_item button{
	display: flex;
}
/* ▲▲▲share_button▲▲▲ */

@media print {
	body {
	  zoom: 0.8;
	}
}

/* ------------------------------------------
	リロードボタン
 ------------------------------------------ */
.reload {
	cursor:pointer;
	-webkit-appearance: none;
	border-style:none;
	font-size:100%;
	font-weight:bold;
	color: #fff;
	margin:.5em .5em .5em 0;
	padding:.3em 0 .4em;
	width:200px;
	background:#929292;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	/* -webkit-box-shadow: 0 2px 2px 0 #666; */
	/* box-shadow: 0 2px 2px 0 #666; */
	text-shadow: 1px 1px 2px #2c2c2c;
}
.reload:hover {
	background-color: #65656588;
}

/* ------------------------------------------
	目次 20241031追加
 ------------------------------------------ */
.toc_container {
  background-color: #ececec;
  border-radius: 8px;
  color: #6e6e6e;
  margin: 0 40px 20px;
  padding: 15px 20px;
}
.toc_title {
  align-items: center;
  color: #424242;
/*  display: flex; */
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 12px;
  position: relative;
  text-align: center;	
}

.toc_container li {
  border-top: 1px solid rgba(47, 47, 47, .1);
  padding: 7px 10px;
  font-weight: 600;
  list-style: disc;
  list-style-position: inside;
}
.toc_list_number li {
  border-top: 1px solid rgba(47, 47, 47, .1);
  padding: 7px 10px;
  font-weight: 600;
  list-style: decimal-leading-zero;
  list-style-position: inside;
}
.toc_list li a,
.toc_list_number li a {
  color: #6e6e6e !important;
}
.toc_list li a:hover,
.toc_list_number a:hover {
    text-decoration: underline;
}