/* 記事作成用のコード設定 */
/* ▼サンプルコード用 */
pre,code{ text-align:left; background:#000; color:#fff; padding:10px; line-height:2;  }

pre {  position:relative; margin:50px auto 75px; }
code{ margin:0px; padding:0px; }

pre::before{
	content:"サンプルコード";
	display:inline-block;
	position:absolute;
	left:0px;
	top:-35px;
	background:#555;
	color:#fff;
	line-height:1;
	padding:10px;
}

pre { overflow-x:scroll; tab-size:3; }
pre::-webkit-scrollbar{height:10px;}/*バーの太さ*/
pre::-webkit-scrollbar-track{background:#dddddd;}/*バーの背景色*/
pre::-webkit-scrollbar-thumb{background:#2cc2e4;}/*バーの色*/

.left{ text-align: left; }
.right{ text-align: right; }
.center{ text-align: center; }

/* 強調タグ span */
/* 太字 */
.bold{ 
	font-weight:bold;
	color:#222;
}

/* マーカー＋太字 */
.marker{
	font-weight:bold;
    color: #222;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #ffff89));
    background: linear-gradient(transparent 70%, #ffff89 70%);
    background: -webkit-linear-gradient(transparent 70%, #ffff89 70%);
}

/* 文字色レッド */
.red-s{
	color:#ff4040;
}

/* 文字色レッド（太字） */
.red-b{
	color:#ff4040;
	font-weight:bold;
}

/* 文字色ブルー */
.blue-s{
	color:#427eff;
}

/* 文字色ブルー（太字） */
.blue-b{
	color:#427eff;
	font-weight:bold;
}

/* 太字(文字サイズ大ver)  */
.bold-ex{
	color:#222;
	font-size:180%;
	font-weight:bold;
}

/* 点滅タイプ  */
.blink{
	-webkit-animation:blinkset 1.5s ease-in-out infinite alternate;
	-moz-animation:blinkset 1.5s ease-in-out infinite alternate;
	animation:blinkset 1.5s ease-in-out infinite alternate;
}
@-webkit-keyframes blinkset{
	0%{ opacity:0; }
	100%{ opacity:1; }
}
@-moz-keyframes blinkset{
	0%{ opacity:0; }
	100%{ opacity:1; }
}
@keyframes blinkset{
	0%{ opacity:0; }
	100%{ opacity:1; }
}

/* 引用タグ */
blockquote{
	padding:25px !important;
	margin:40px 20px !important;
	border:2px solid #888;
	background:#ddd;
	position:relative;
}
blockquote cite{
	text-align:right;
	display:block;
	font-size:13px;
}
blockquote::before{
	content:"\f10d";
	font-family:FontAwesome;
	padding:10px;
	color:#fff;
	background:#888;
	text-align:center;
	position:absolute;
	top:-10px;
	left:-10px;
	border-radius:50%;
}

blockquote::after{
	content:"\f10e";
	font-family:FontAwesome;
	padding:10px;
	color:#fff;
	background:#888;
	text-align:center;
	position:absolute;
	bottom:-10px;
	right:-10px;
	border-radius:50%;
}

/* 表テーブル */
/*.center-contents table{
	min-width:75%;
	margin:20px auto;
	border-collapse:collapse;
}

.center-contents table th,
.center-contents table td{
	border:1px solid #ccc;
	padding:10px;
}
*/
.text-area table{
	min-width:75%;
	margin:20px auto;
	border-collapse:collapse;
}
.text-area table th,
.text-area table td{
	border:1px solid #ccc;
	padding:10px;
}

/* 内部リンク */
.link-txt{
	text-align:right;
}
/* 外部リンク */
.no-bottom{
	text-align:right;
}

/* リスト */
.list-d{
	list-style: disc !important;
	margin: 1em 0;
	padding-left: 40px;
}
.list-n{
	margin: 1em 0;
	padding-left: 40px;
	list-style: decimal !important;
}

/* よくある質問 */
.qanda{
	margin:25px 10px;
}
.qanda .link{
	text-align:right;
	margin:10px 0;
}
.qanda .link a:before{
	content:"\f0da";
	font-family:FontAwesome;
	margin-right:15px;
}
.qanda .question{
	font-size:20px;
	line-height:32px;
	font-weight:bold;
	padding:0px 20px 20px 65px;
	color: #888;
	border-bottom:2px solid #888;
	position:relative;
}
.qanda .question p { margin:0; }
.qanda .question::before{
	content:"Q";
	font-size:25px;
	line-height:20px;
	padding:10px;
	color:#888;
	background:#fff;
	border:3px solid #888;
	position:absolute;
	left:0px;
	top:-7px;
}
.qanda .answer{
	padding:10px 20px 25px 35px;
	position:relative;
	font-size:17px;
	line-height:26px;
}
.qanda .answer::before{
	content:"A";
	color:#fff;
	padding:10px;
	line-height:1;
	background:#888;
	position:absolute;
	left:-20px;
	top:25px;
}

/* ランキング */
.rankbox{
	position:relative;
	margin:80px 0px 40px 40px !important;
	padding-left: 95px !important;
    padding-right: 15px !important;
}
.rankbox::before{
	content:"";
	display:block;
	position:absolute;
	left:0;
	top:0;
	bottom:0;
	margin:auto;
	width:85px;
	height:85px;
	background-repeat:no-repeat;
}
.rankbox.rank1::before{ background-image:url("../img/rank1st.png"); }
.rankbox.rank2::before{ background-image:url("../img/rank2nd.png"); }
.rankbox.rank3::before{ background-image:url("../img/rank3rd.png"); }
.rankbox.rank4::before{ background-image:url("../img/rank4th.png"); }
.rankbox.rank5::before{ background-image:url("../img/rank5th.png"); }

/* 20191118 --- おすすめ商品 */
.recobox{
	border:3px solid #ff8842;
	padding:10px;
	margin:60px auto 30px;
	position:relative;
	display:block;
	font-size:17px;
}
.recobox .recobox_label{
	position:absolute;
	bottom:100%;
	left:-3px;
	display:block;
	background:#ff8842;
	color:#fff;
	font-weight:bold;
	padding:7px 15px;
	border-radius:3px 3px 0 0;
}
.recobox ul{
	margin:0px 5px;
}
.recobox li{
	list-style-position:inside;
	margin:7px 0;
	line-height:25px;
	text-indent:-22px;
	padding-left:25px;
}
.recobox li::before{
	content:"●";
	font-size:19px;
	margin-right:11px;
	color:#ff8842;
}

/* */
.bdbox{
	border:3px solid #ff8842;
	padding:10px;
	margin:30px auto;
	position:relative;
	display:block;
	font-size:17px;
}
.bdbox .bdbox_label{
	position:absolute;
	bottom:100%;
	left:-3px;
	display:block;
	background:#ff8842;
	color:#fff;
	font-weight:bold;
	padding:7px 15px;
	border-radius:3px 3px 0 0;
}
.bdbox ul{
	margin:0px 5px;
}
.bdbox li{
	list-style-position:inside;
	margin:7px 0;
	line-height:25px;
	text-indent:-22px;
	padding-left:25px;
}
.bdbox li::before{
	content:"●";
	font-size:19px;
	margin-right:11px;
	color:#ff8842;
}

/* リストボックス */
ul.list-disc{
	margin: 15px;
	padding: 15px;
}
ul.list-disc li{
	list-style: disc;
}
ul.list-disc.sepa{
	margin: 0;
}
ul.list-disc.sepa li{
	list-style: disc;
    margin: 10px 0;
    width: calc(33% - 10px);
	display: inline-block;
	vertical-align: top;
}
ul.list-disc.sepa li::before{
	content:"●";
	font-size: 12px;
	margin-right: 10px;
}

/* フローチャート */
.table.flow_chart{
	width: 100%;
	text-align: center;
	border-collapse: separate;
	table-layout: fixed;
	border-spacing: 10px 10px;
	margin-bottom: 30px;
}
.table.flow_chart th{
	background: #ccc;
}
table.flow_chart td{
	border: none;
	padding-bottom: 25px;
	vertical-align: top;
	position: relative;
}
table.flow_chart td:after{
	content:"";
	border:	25px solid transparent;
	border-top: 25px solid #ccc;
	position: absolute;
	top: 100px;
	left: 0;
	right: 0;
	margin: auto;
	width: 0px;
	height: 0px;
}
table.flow_chart td.not-arrow:after{
	content:"";
	all: initial
}
table.flow_chart td .tbl-wk{
	border: 1px solid #aaa;
	padding: 15px;
	height: 80px;
	text-align: left;
	border-radius: 5px;
}
table.flow_chart td .bg-blue{
	background: #9fadfc;
	padding: 20px;
	border-radius: 5px;
}
table.flow_chart td .bg-blue .fs20{
	font-size: 20px;
	font-weight: bold;
}

/* やり方 */
.how-to{
	margin:	30px 20px;
}
.how-to dt, .how-to dd{
	margin: 0;
	padding: 0;
}
.how-to dt{
	font-weight: bold;
	font-size: 18px;
}
.how-to dd ol{
	margin: 15px;
	padding: 0;
	counter-reset: number;
}
.how-to dd ol li{
    list-style: none;
    padding: 10px 0;
    text-indent: -40px;
    padding-left: 40px;
    border-bottom: 1px solid #ccc;
}
.how-to dd ol li:before{
	counter-increment: number;
	content: counter(number);
	margin-right: 20px;
	color: #fff;
    background: #ec8f04;
	border-radius: 50%;
	padding: 5px 8px;
}
/* チェックマーク付きリスト */
.checkbox{
	margin: 10px 25px;
	padding: 0;
}
.checkbox li{
	list-style: none;
	position: relative;
	padding-left: 10px;
	margin-bottom: 10px;
	font-weight: bold;
}
.checkbox li::before{
    content: "";
    display: inline-block;
    vertical-align: top;
    background: url(/img/li_checkbox.png);
    background-repeat: no-repeat;
    background-size: 20px;
    background-position: 0px 2px;
    width: 20px;
    height: 20px;
    margin-right: 10px;
}
/* リンクカード */
.linkcard{
	margin: 10px;
	border: 1px solid #ccc;
	padding: 10px;
}
.linkcard a{
	display: block;
} 
.linkcard .lc_img,
.linkcard .lc_txt{
	display: inline-block;
	vertical-align: middle;
}
.linkcard .lc_img{
	width: 110px;
	height: 110px;
	margin-right: 10px;
}
.linkcard .lc_img img{
	width: 100%;
	height: auto;
	object-fit: cover;
	margin: 0;
}
.linkcard .lc_txt{
	width: calc(100% - 125px);
}
.linkcard .lc_txt .lc_label{
	font-size: 20px;
	font-weight: bold;
}
.linkcard .lc_txt .lc_btn{
	display: inline-block;
	line-height: 1;
	text-align: right;
	float: right;
	padding: 10px;
	color: #fff;
	background: #3c76ff;
	border-radius: 5px;
}
/* テーブル表のクラス設定 */
/* セル背景色 */
.bg-gray{
	background: #f7f7f7;
}
.bg-blue{
	background: #b6daff;
}
.bg-red{
	background: #ffc1c1;
}
.bg-darkblue{
	background-color: #2977fb !important;
}
/* セル文字色 */
.txt-wh{
	color: #fff;
}