
.ribbon {
	position: absolute;
	display: inline-block;
	top: -5px;
	left: 15px;
	background: url(../img/past-results-img/base_tag.png) bottom right no-repeat #0050aa;
	border-radius: 0 0 4px 4px; -webkit-border-radius: 0 0 4px 4px;
	-moz-border-radius: 0 0 4px 4px; -ms-border-radius: 0 0 4px 4px;
	padding: 8px 20px;
	font-size: 16px;
	color: #fff;
}
.ktag {
	width: 80px;
	height: 18px;
	background: #000;
	border-radius: 12px;
	-webkit-border-radius:12px; -moz-border-radius:12px; -ms-border-radius:12px;
	padding: 6px 0 0;
	margin: 0;
	font-size: 12px;
	color: #fff;
	text-align: center;
}

ul.sns { position: absolute; top: 8px; right: 15px; }
ul.sns li { float: left; height: 21px; margin-left: 10px; }
ul.sns li:first-child { margin: -1px 0 0; }

/* --------------------------------------------------------------------------
 past-results
-------------------------------------------------------------------------- */

.results {
	position: relative;
	background: #fff;
	border: solid 5px #e2efff;
	border-radius: 3px;
	-moz-border-radius: 3px; -webkit-border-radius: 3px; -ms-border-radius: 3px;
	padding: 40px 32px 32px;
	margin: 0 0 32px;
}
.results.voice { border: solid 5px #d5feee; }
.results.voice .ribbon { background: url(../img/past-results-img/base_tag.png) bottom right no-repeat #00aa68; }

.results dl { border-bottom: dotted 2px #0050aa; padding: 40px 0; }
.results.voice dl { border-bottom: dotted 2px #00aa68; }
.results dl:last-child { border: none; padding: 40px 0 10px; }
.results dl a { display: block; text-decoration: none; }
.results dl a:hover { filter:alpha(opacity=80); -moz-opacity:0.8; opacity:0.8; }

.results dt {
	float: left;
	width: 114px;
	background: #efefef;
	border: solid 2px #0050aa;
	border-radius: 3px;
	-moz-border-radius: 3px; -webkit-border-radius: 3px; -ms-border-radius: 3px;
	font-size: 15px;
	color: #0050aa;
	text-align: center;
	padding: 7px 0 5px;
	margin-right: 24px;
}
.results.voice dt { border: solid 2px #00aa68; color: #00aa68; }
.results dd { float: left; width: 600px; color: #333; }
.results dd h4 { font-size: 24px; color: #0050aa; margin: 0 0 12px; }
.results.voice dd h4 { color: #00aa68; }

/* --------------------------------------------------------------------------
 past-results: detail
-------------------------------------------------------------------------- */

.results.detail { background: #e2efff; padding: 40px 0 2px; margin: 0; }
.results.voice.detail { background: #d5feee; }

.results.detail dl { border: none; padding: 24px 32px 32px; }

.results .case { background: #fff; padding: 32px 32px 64px; word-wrap: break-word;}
.results .case h5 {
	font-size: 18px;
	border-bottom: dotted 1px #bbb;
	padding: 0 0 8px;
	margin: 64px 0 24px;
}
.results .case h5:first-child { margin: 0 0 24px; }
.results .case.success h5 { color: #0050aa; }
.results .case.voice h5 { color: #00aa68; }
.results .case p { font-size: 16px; }

ul.payback {
	display: table;
	background: #f0f0f0;
	border-radius: 8px;
	-webkit-border-radius: 8px; -moz-border-radius: 8px; -ms-border-radius: 8px;
	padding: 24px 52px;
	margin: 0 0 24px;
}
ul.payback li { display: table-cell; vertical-align: bottom; line-height: 1.0em; }
ul.payback li.snd { font-size: 18px; padding: 0 10px; }
ul.payback li.trd { font-size: 54px; font-weight: 600; color: #f0020e; line-height: 0.7em; }
ul.payback li.trd100 { font-size: 34px; font-weight: 600; color: #f0020e; line-height: 0.7em; }
ul.payback li.fth { font-size: 18px; font-weight: 600; color: #f0020e; text-align: center; }
ul.payback li.fth span { display: block; font-size: 12px; color: #333; }
ul.payback li.arr { padding: 0 50px; vertical-align: middle; }

.results.detail .consultant { position: absolute; bottom: -5px; left: 10px; z-index: 99; }
.results.detail .point { display: table; margin: 7px 0 0 46px; }
.results.detail .point p {
	display: table-cell;
	vertical-align: middle;
	padding: 0 32px 0 10px;
}
.results.detail .point p.ttl {
	background: #f8f8f8;
	font-size: 18px;
	padding: 0 10px 0 28px;
	white-space: nowrap;
}

/* --------------------------------------------------------------------------
 past-results: pager
-------------------------------------------------------------------------- */

ul.pager { width: 280px; margin: 50px auto 60px; }
ul.pager li { float: left; font-size: 18px; text-align: center; }
ul.pager li a i { margin: 2px 10px 0 0; }
ul.pager li a {
	display: block;
	width: 85px;
	height: 32px;
	border-radius: 4px;
	-webkit-border-radius: 4px; -moz-border-radius: 4px; -ms-border-radius: 4px;
	padding: 4px 0 0;
	font-size: 18px;
	color: #fff;
	text-decoration: none;
	text-align: center;
}
ul.pager li a:hover { filter:alpha(opacity=80); -moz-opacity:0.8; opacity:0.8; }
ul.pager li.prev a { background: #d4d4d4; }
ul.pager li.prev.success a { background: #0050aa; }
ul.pager li.prev.voice a { background: #00aa68; }
ul.pager li.next a { background: #d4d4d4; }
ul.pager li.next.success a { background: #0050aa; }
ul.pager li.next.voice a { background: #00aa68; }
ul.pager li.current a.current-link { width: 110px; }
ul.pager li.current.success a.current-link { color: #0050aa; }
ul.pager li.current.voice a.current-link { color: #00aa68; }
ul.pager li.type a {
	width: 280px;
	margin: 24px 0 0;
	background: #00aa68;
	border-radius: 16px;
	-webkit-border-radius: 16px; -moz-border-radius: 16px; -ms-border-radius: 16px;
}
ul.pager li.type.success a { background: #0050aa; }
ul.pager li.type.voice a { background: #00aa68; }


/* --------------------------------------------------------------------------
 columns: category navigation
-------------------------------------------------------------------------- */

ul.category {
	float: right;
	width: 176px;
	border: solid 1px #d4e1f1;
	border-radius: 8px;
	-webkit-border-radius: 8px; -moz-border-radius: 8px; -ms-border-radius: 8px;
	background: #f1f5fa;
}
ul.category li:first-child { padding: 18px 18px 14px; color: #0050aa; }
ul.category li a {
	display: block;
	padding: 12px;
	font-size: 12px;
	color: #888;
	line-height: 1.0em;
	background: #fff;
	border-top: solid 1px #d4e1f1;
	text-decoration: none;
}
ul.category li a.current {
	background: #eee;
}
ul.category li:last-child a {
	border-radius: 0 0 8px 8px; -webkit-border-radius: 0 0 8px 8px;
	-moz-border-radius: 0 0 8px 8px; -ms-border-radius: 0 0 8px 8px;
}
ul.category li a:hover {
	color: #0050aa;
	filter:alpha(opacity=70); -moz-opacity:0.7; opacity:0.7;
}
/* --------------------------------------------------------------------------
 columns: base
-------------------------------------------------------------------------- */

.columns {
	position: relative;
	width: 548px;
	border: solid 6px #f0f0f0;
	border-radius: 6px;
	-webkit-border-radius:6px; -moz-border-radius:6px; -ms-border-radius:6px;
	padding: 32px;
	margin: 0 0 32px;
	background: #fff;
}
.columns.detail { width: 612px; background: #f0f0f0; padding: 60px 0 0; }
.columns.detail .ribbon { background: url(../img/past-results-img/base_tag.png) bottom right no-repeat #999999; }

.columns h2 { font-size: 20px; border-bottom: dotted 1px #bbb; padding: 0 0 24px; }
.columns.detail h1 { font-size: 28px; color: #0050aa; padding: 0 32px 24px; border: none; }
.columns.detail h2 { font-size: 24px; color: #0050aa; padding: 30px 0 16px; border: none; }
.banner a { display: block; width: 624px; margin: 0 0 32px; }
.banner a:hover { filter:alpha(opacity=80); -moz-opacity:0.8; opacity:0.8; }

/* --------------------------------------------------------------------------
 columns: pager
-------------------------------------------------------------------------- */

.columns .pager { text-align: center; margin: 48px 0 24px; }
.columns .pager a {
	border: solid 1px #d2d2d2;
	border-radius: 4px;
	-webkit-border-radius: 4px; -moz-border-radius: 4px; -ms-border-radius: 4px;
	background: #fff;
	padding: 8px 12px;
	line-height: 1.0em;
	font-size: 14px;
	color: #0050aa;
	margin-right: 4px;
	text-decoration: none;
}
.columns .pager a.ten {
	padding: 8px 8px;
}
.columns .pager a.hundred {
	padding: 8px 4px;
}
.columns .pager a:first-child { margin: 0 18px 0 0; padding: 9px 24px; }
.columns .pager a:last-child { margin: 0 0 0 18px; padding: 9px 24px; }
.columns .pager a.current, .columns .pager a:hover {
	background: #0050aa;
	color: #fff;
	border: solid 1px #0050aa;
	border-radius: 4px;
	-webkit-border-radius: 4px; -moz-border-radius: 4px; -ms-border-radius: 4px;
}

/* --------------------------------------------------------------------------
 columns: list / detail
-------------------------------------------------------------------------- */

.journal {
	padding: 24px 0;
	border-bottom: dotted 1px #bbb;
}
.journal h3 { font-size: 24px; color: #0050aa; margin: 0 0 32px; font-weight: 300; }
.journal img { float: left; max-width: 128px; max-height: 128px; width: auto; height: auto;}
.journal div { float: right; width: 396px; }
.journal p { display: block; }
.journal .tag {
	display: inline-block;
	padding: 6px 10px 4px;
	margin: 32px 0px 0px 5px;
	color: #999;
	font-size: 11px;
	border: solid 1px #bbb;
	border-radius: 4px;
	-webkit-border-radius: 4px; -moz-border-radius: 4px; -ms-border-radius: 4px;
}
.journal .title {
	text-decoration: none;
}
.journal .title:hover {
    text-decoration: underline;
}

.proc { background: #fff; padding: 32px; word-wrap: break-word;}
.proc h3 { font-size: 19px; margin: 30px 0 16px; font-weight: 300; }
.proc h3:first-child { margin: 0 0 12px; }
.proc h4 {
	font-size: 17px;
	border-bottom: dotted 1px #bbb;
	padding: 0 0 7px;
	margin: 30px 0 16px;
	color: #0050aa;
}
.proc h5 {
	font-size: 20px;
	border-bottom: dotted 1px #bbb;
	padding: 0 0 7px;
	margin: 30px 0 16px;
	color: #0050aa;
}
.proc p { font-size: 16px; }
.proc img { max-width: 548px; height: auto;}
/*.proc ol, .proc ul {
	margin: 10px 0 0 0;
}*/
/*.proc li { font-size: 20px; }*/
.proc table, .proc td, .proc th {
	border-color: #000;
	border-style: solid;
	border-width: 1px 1px 1px 1px;
	padding: 4px;
	border-collapse: collapse;
}
.proc th {
	text-align: center;
  white-space: nowrap;
}
.proc .w10 {
	width: 10%;
}
.proc .w20 {
	width: 20%;
}
.proc .w30 {
	width: 30%;
}

/* 2021/1/22以降 カスタムここから */

/* 見出し */
.columns.detail .proc .custom h1 {
    font-size: 28px;
    color: #0050aa;
    padding: 0 32px 24px;
    border: none;
}
.columns.detail .proc .custom h2 {
    font-size: 24px;
    margin: 30px 0 16px;
    padding: 0.1rem 1rem;
    border-left: 9px solid #0050aa;
}
.proc .custom h3:before {
    position: absolute;
    bottom: -4px;
    left: 0;
    width: 20%;
    height: 4px;
    content: '';
    background: #f0020e;
}
.proc .custom h3 {
    font-size: 19px;
    margin: 30px 0 16px;
    position: relative;
    padding: 0.4rem 0.5rem;
    border-bottom: 4px solid #00428c;
}
.proc .custom h4 {
    font-size: 17px;
}

.proc pre {
    font-family: 'Roboto','ヒラギノ角ゴシック',Hiragino Sans,'ヒラギノ角ゴ ProN','Hiragino Kaku Gothic ProN','メイリオ',Meiryo,'游ゴシック',Yu Gothic,sans-serif;
}

/* 赤太文字 */
.custom strong {
    color: #f0020e;
}

/* リンク装飾（右寄せ） */
.custom p.link {
    font-size: 14px;
    text-align: right;
    padding: 12px 0;
}

/* テーブル */

/* table01
縦横、どちらも見出しがあるタイプの表に使用。SPではまとめて1カラムに表示される。 */

table.table01 {
  width: 100%;
  border: none;
	border-right:#00428c solid 1px;
  border-collapse: collapse;
  margin: 14px 0px 28px 0px;
}
table.table01 thead th {
	background:#00428c;
	color:#FFF;
  padding:10px 15px;
  border: none;
	border-right:#FFF solid 1px;
	border-bottom:#FFF solid 1px;
  text-align: center;
  font-weight: 700;
  font-size: 14px;
}
table.table01 thead th:last-child {
	border-right:#00428c solid 1px;
}
table.table01 tbody th {
	background:#00428c;
	color:#FFF;
  padding:10px 15px;
  border: none;
	border-bottom:#FFF solid 1px;
  vertical-align:top;
  text-align: center;
  font-weight: 700;
  min-width: 62px;
  font-size: 14px;
  white-space: normal;
}
table.table01 tbody tr:last-child th {
	border-bottom:#00428c solid 1px;
}
table.table01 tbody td {
	background:#FFF;
	padding:10px 15px;
	border: none;
	border-left:#00428c solid 1px;
	border-bottom:#00428c solid 1px;
	vertical-align:top;
}
table.table01 tbody td p {
    margin: 0px;
    font-size: 14px;
}

/* table02 上にだけ見出しがある（横長）の表に使用。1番左の列が固定されて、はみ出た部分は横スクロールされる。 */

table.table02 {
  margin: 0;
}
table.table02 p {
	padding: 2px;
  margin: 0;
  line-height: initial;
  margin: 0.8em 0;
}
table.table02 thead tr p {
    font-weight: 700;
    margin: 0.3em 0;
}
.table-scroll {
    margin: 14px 10px 7px 10px;
}
table.table02 thead,
table.table02 thead th {
    background: #00428c;
    color: #fff;
    border-color: #fff;
    text-align: left;
}
table.table02 th.fixed01,
table.table02 thead th.fixed02,
table.table02 td {
	vertical-align: middle;
	padding: 0 5px;
	border: 1px solid #ccc;
	min-width: 110px;
    white-space: nowrap;
}
table.table02 td {
	min-width: 100px;
}
table.table02 th.fixed01 {
	position: sticky;
	left: 0;
	background: #fff;
  text-align: left;
  white-space: normal;
}
table.table02 thead th.fixed02 {
	position: sticky;
	left: 0;
}
table.table02 th.fixed01:before,
table.table02 thead th.fixed02:before {
	content: "";
	position: absolute;
	top: -1px;
	left: -1px;
	width: 100%;
	height: 100%;
	border: 1px solid #ccc;
}

/* リストタグ調整 */
.proc .custom ol {
	counter-reset: count 0;
}

.proc .custom ol {
	margin: 10px 0;
}

.proc .custom ol li:before {
	content: counter(count) ". ";
  counter-increment: count 1;
}

.proc .custom ul {
	margin: 10px 0 0 20px;
}

.proc .custom ul li {
    list-style-type: disc;
}

.proc .custom ol li, .proc .custom ul li {
	margin-bottom: 5px;
	font-size: 16px;
}


/* 目次 */
#toc_container {
  margin: 30px auto;
  background: #f9f9f9;
  border: 1px solid #aaa;
  padding: 10px;
  display: table;
}

#toc_container p.toc_title {
  text-align: center;
  font-weight: 700;
  margin-top: 10px;
  padding: 0;
}

#toc_container span.toc_toggle {
  font-weight: 400;
  font-size: 90%;
}

#toc_container a {
  text-decoration: none;
  text-shadow: none;
}

#toc_container p.toc_title+ul.toc_list {
  margin-top: 0.7em;
}

#toc_container.no_bullets li, #toc_container.no_bullets ul, #toc_container.no_bullets ul li, .toc_widget_list.no_bullets, .toc_widget_list.no_bullets li {
  background: 0 0;
  list-style-type: none;
  list-style: none;
  padding: 2px 10px;
  font-size: 14px;
}

/* 目次余白修正 */
.toc_title2 {
  /* padding-top: 10px;
  margin-top: -10px; */
}

/* --------------------------------------------------------------------------
 columns: popular lists
-------------------------------------------------------------------------- */

.popular {
	width: 622px;
	border: solid 1px #d4e1f1;
	border-radius: 8px;
	-webkit-border-radius: 8px; -moz-border-radius: 8px; -ms-border-radius: 8px;
	background: #f1f5fa;
}
.popular h2 {
	font-size: 18px;
	font-weight: 500;
	color: #0050aa;
	padding: 16px 32px 12px;
	border-bottom: solid 1px #d4e1f1;
}
.popular .list {
	background: #fff;
	padding: 32px 32px 24px;
	border-radius: 0 0 7px 7px; -webkit-border-radius: 0 0 7px 7px;
	-moz-border-radius: 0 0 7px 7px; -ms-border-radius: 0 0 7px 7px;
}
.popular .list dl { padding: 20px 0; border-top: dotted 1px #bbb; }
.popular .list dl a { text-decoration: none; color: #888888; }
.popular .list dl p.title { margin: 0 0 10px;}
.popular .list dl:hover { filter:alpha(opacity=80); -moz-opacity:0.8; opacity:0.8; }
.popular .list dl:first-child { border: none; padding: 0 0 20px; }
.popular .list dt { display: block; width: 64px; min-height: 64px; }
.popular .list dd { margin: -64px 0 0 80px; line-height: 1.2em; }
.popular .list dl img { max-width: 64px; max-height: 64px; width: auto; height: auto;}

.columsdatetime {
  font-size: 11px;
  padding: 0 32px 5px;
  color: #888;
  text-align: right;
}

/* --------------------------------------------------------------------------
 目次plugin　レイアウトカスタマイズ
-------------------------------------------------------------------------- */
/* Rich Table of Contents */
button.rtoc_open_close.rtoc_open {
	display: none;
}
.rtoc-mokuji-content .rtoc-mokuji li>a {
	color: #0050aa !important;
	text-decoration: underline !important;
}
.rtoc-mokuji-content #rtoc-mokuji-title {
	padding: 30px 64px 0 !important;
	font-size: 18px !important;
}

/* --------------------------------------------------------------------------
WordPressを5.9にアップグレードしたら、記事一覧で表示が崩れてしまったのでその対応
-------------------------------------------------------------------------- */
.columns .aligncenter {
  clear: none;
}

/* --------------------------------------------------------------------------
著者情報
-------------------------------------------------------------------------- */
.authorWrap {
	background-color: #f8f8f8;
	margin: 40px auto 50px;
	padding:25px 15px 35px 15px;
}

.authorWrap p.authorLead {
	font-size: 24px !important;
	color: #333333;
	text-align: center;
	margin-bottom: 20px;
}

.procSection {
	display: flex;
	margin: 0 auto;
	align-items: center;
}

.authorImage {
	width: 113px;
	height: 128px;
	margin-right: 24px;
}

.authorName {
	font-size: 18px;
	margin-bottom: 15px;
}

.authorBox p.authorText {
	text-align: justify;
}

/* SP版非表示 */
.authorWrapSp {
	display: none;
}