.outline {
  margin-top: 2em!important;
}

.content{
  letter-spacing: 0.05em;
}

.content a:hover {
  font-weight: inherit;
  text-decoration: underline;
}

.content .sitecard {
    margin-bottom: 2rem;
}

a.btn__link:hover,a.afTagBox__btnAf:hover {
  text-decoration: none;
  font-weight: bold;
}

table.compare-table {
  font-size: 0.8em;
  border:none;
  counter-reset: ranking;
}

table.compare-table th, table.compare-table td{
  border-left:none;
}

table.compare-table td {
  text-align: center;
}

.content .tableScroll table.compare-table th {
  position: sticky;
  left: 0px;
  min-width: 100px;
  z-index: 3;
}

td.compare-img{
  position:relative;
}

table.compare-table.ranking td.compare-img:before {
  counter-increment: ranking;
  content: counter(ranking);
  position: absolute;
  border-radius: 50%;
  top: 3px;
  left: 3px;
  background: #bfbfbf;
  color: #fff;
  height: 24px;
  width: 24px;
  text-align: center;
  line-height: 24px;
  z-index:2;
}

table.compare-table.ranking td.compare-img:nth-child(2):before{
  background:#ecd357;
}

table.compare-table.ranking td.compare-img:nth-child(3):before{
  background:#a9c6d5;
}

table.compare-table.ranking td.compare-img:nth-child(4):before{
  background:#c58459;
}

.compare-table .btn__custom {
    padding: 5px 25px 5px 15px;
    font-size: 1.2rem;
}

.compare-table ol, .compare-table ul {
    text-align: left;
}

.product-list.ranking {
  padding: 30px 0;
}

.ranking .product-header,.ranking h3.product-name{
  margin-top:0;
  padding-top:0;
}

.ranking section {
  margin-top: 60px;
}

.ranking h3 {
  border: none;
  padding: 10px 0;
}

.ranking h3:before {
  content:none;
}

.ranking .rank {
  background: #bfbfbf;
  color: #fff;
  display: inline-block;
  font-weight: bold;
  padding: 0.1em 0.5em;
  line-height: 1.4em;
  width: 4em;
  text-align: center;
  margin-bottom: 0.5em;
}

.ranking section:last-child .rank{
  background:#ecd357;
}

.ranking section:nth-last-child(2) .rank{
  background:#a9c6d5;
}

.ranking section:nth-last-child(3) .rank{
  background:#c58459;
}

.search-results-section>section {
  border-top: 1px dotted #ddd;
  padding-top: 4.5rem;
}

.product-body {
  display: flex;
}

.product-img img {
  max-width: 300px;
  margin:0!important;
  box-shadow: 0px 0px 1px #ddd;
}

.product-company {
  text-align: right;
  font-size: 1rem;
  color: #888;
  margin-top: 0!important;
}

table.product-chart {
  margin-top: 0;
  font-size: 1.2rem;
  width: 100%;
  max-width: 378px;
  margin-left: 20px;
}

.product-feature {
  font-size: 0.8em;
}

.content .btn__link-primary.btn__custom{
  background-color: #007fc3;
}

.content .afTagBox__btnAf.btn__custom{
  background-color: #e24f2b;
  color:#fff;
}

.content .bgc-custom {
  background-color: #007fc3;
}

.content .brc-custom {
    border-color: #007fc3;
}

.rate:after {
  content: '★★★★★';
  display: inline-block;
  overflow: hidden;
  color: orange;
  white-space:nowrap;
  width: 100%;
}

.ct-num {
  width: 2.5em;
  text-align: right;
  font-weight:bold;
  padding-right: 1em;
}

.viral__contents .heading {
  text-shadow: 0px 0px 3px #000;
}

.profile__author img,.archiveHead__authorImg img {
  border: 1px solid #ddd;
}

.content .searchandfilter ul>li:before{
  content:"";
}

.searchandfilter>ul{
  margin:0 !important;
  padding:2rem !important;
  background:#f6f7f8;
}
.searchandfilter>ul>li>ul{
  margin:0 !important;
  padding:0 !important;
}
.searchandfilter li{
  margin:0 !important;
  padding:0 !important;
}
.searchandfilter>ul>li{
  padding:1rem 0 !important;
}
.searchandfilter>ul>li:first-child{
  padding-top:0 !important;
}
.searchandfilter>ul>li:not(:last-child){
  border-bottom: 1px solid #eee;
}
.searchandfilter h4{
  font-size:1.4rem !important;
  margin:0 0 1rem 0 !important;
  padding:0 !important;
  border:none;
}
.searchandfilter h4:after{
  content:none;
}
.searchandfilter ul li:before{
  display:none !important;
}
.sf-field-category ul, .sf-field-post-meta-sp-conditions ul {
  display: flex;
  flex-wrap: wrap;
}
.sf-field-category ul>li input, .sf-field-post-meta-sp-conditions ul>li input{
  display:none;
}
.sf-field-category ul>li label, .sf-field-post-meta-sp-conditions ul>li label{
  cursor: pointer !important;
  padding:.2em .4em !important;
  border-radius: 4px;
  background-color:#ddd;
  border:1px solid #ddd;
  font-size:1.3rem;
  margin:0 1rem 1rem 0;
  display: flex;
  align-items: center;
}
.searchandfilter ul li .sf-input-checkbox:checked + .sf-label-checkbox{
  background-color: #edc729;
  border-color: #a2850b;
}
.searchandfilter ul li .sf-count{
  font-size: 0.8rem;
  padding-left: 0.2em;
}
.sf-field-reset {
  display: flex !important;
  justify-content: flex-end;
  font-size: 1.3rem;
}
select.sf-input-select{
  padding:.4rem 1.6rem .4rem .4rem;
  color:#555;
  font-size: 1.4rem;
  background-color:#fff;
  border:1px solid #ccc;
  border-radius: 4px;
  overflow: hidden;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
}
.searchandfilter>ul>li.sf-field-search label{
  width:60%;
}
input.sf-input-text{
  padding:.4rem;
  color:#555;
  background-color:#fff;
  border:1px solid #ccc;
  border-radius: 4px;
  overflow: hidden;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
select.sf-input-select:focus, input.sf-input-text:focus{
  outline:none;
  border:1px solid #a2850b7a;
}
.searchandfilter>ul>li>label{
  position:relative;
}
.searchandfilter>ul>li>label::after{
  content: '';
  width: 5px;
  height: 5px;
  border: 0px;
  border-bottom: solid 2px #b4b3b3;
  border-right: solid 2px #b4b3b3;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 11px;
  margin-top: -5px;
}
.searchandfilter>ul>li.sf-field-search>label::after{
  content: none;
}
.search-title {
  padding: 1rem;
  background-color: #c4a85a;
  font-weight: bold;
  color: #ffffff;
}
.search-noresults{
  margin:2rem 0 8rem;
  padding:2rem;
  background-color:#fff6f6;
  color:#a25151;
  font-weight:bold;
}
.search-results-num {
  padding: .5rem 1rem;
  background-color: #f6f7f8;
  border-radius: 4px;
  margin-top: 1rem;
  font-size:1rem;
}
summary {
  cursor: pointer;
  outline:none;
}
.search-results-num span {
  font-size: 1.6rem;
  color: #b2384e;
  font-weight:bold
}
.sub-info{
  background:#eee;
  padding:1em !important;
}
input.search-filter-reset {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  padding-top: 0;
  color: #666;
}
input.search-filter-reset:hover{
  text-decoration: underline;
}
li.sf-field-reset {
  margin-top: 1.4rem!important;
}
.abj-mark{
    text-align: center;	
	margin:20px 0;
}

.abj-mark p {
    text-align: left;
    margin-top: 10px;
    font-size: 0.8em;
    line-height: 1.4em;
}

.footer-bottom-link{
	color:#BFBFBF;
	font-size: 0.9em;
	margin:3em 0 2em;
}

.footer-bottom-link ul {
    list-style: none;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
	margin-bottom:1em;
}

.footer-bottom-link ul li {
    padding: 0 1em;
}

.footer-bottom-link ul li+li {
    border-left: 1px solid #3c3c3c;
}

.reviews {
    padding: 1.4em;
    display: flex;
    border-radius: 4px;
	border:1px solid #ccd6dd;
}

.reviews div {
    margin-top: 0;
}

.reviews-reviewer {
    flex-shrink: 0;
    text-align: center;
    margin-right: 20px;
    width: 5em;
}

.reviews-reviewer img {
    border-radius: 50%;
    width: 4em;
	border:1px solid #ccd6dd !important;
}

.reviews .reviewer-name {
    font-size: 0.7em;
    margin-top: 0.8em;
    line-height: 1.2em;
	color:#657786;
}

.content .reviewer-name a, .content .reviewer-name a:hover {
    color: inherit;
    text-decoration: none;
    font-weight: bold;
}

.reviews-text {
    font-size: 0.8em;
    color: #6d7982;
    font-weight: bold;
}

.product-table th,.product-chart th {
    white-space: nowrap;
}

.mask-black::after {
    background-color: rgba(0,0,0,.7);
}

.icon-pr img {
    vertical-align: text-bottom;
}

.pr-wrapper {
    text-align: right;
    padding-right: 10px;
}

.content .sitecard:after{
	content:url(https://www.moneypost.jp/lab/tenshoku/wp-content/uploads/icon-pr.png);
	position:absolute;
	top:4px;
	right:8px;
}

@media only screen and (max-width: 767px){
  .content div.product-body{
    flex-wrap: wrap;
    margin:0;
  }
table.product-chart th {
    min-width: 80px;
}
	.product-img {
    flex-basis: 100%;
    max-width:100%;
    margin: 1em 0 !important;
    text-align:center;
  }
  table.product-chart {
    flex-basis: 100%;
    max-width: 400px;
    margin: 0 auto;
  }
  .searchandfilter>ul>li>label{
    width:100%;
  }
  .searchandfilter ul li {
    width: 100%;
  }
  .content .tableScroll:after {
    content: 'スクロールできます>>';
    position: absolute;
    font-size: 1.1rem;
    right: 0;
  }

.footer-bottom-link ul {
    display: block;
    margin-bottom: 1em;
    text-align: center;
}
	
.footer-bottom-link ul li {
    display: inline;
    line-height: 2em;
}
	
}

@media (min-width: 768px){
  .sf-field-category ul>li label:hover, .sf-field-post-meta-sp-conditions ul>li label:hover{
    background-color: #edc72975;
    border-color: #a2850b7a;
  }
  .searchandfilter>ul>li{
    display: flex;
    align-items: baseline;
  }
  .searchandfilter h4 {
    flex-basis: 21%;
    flex-shrink: 0;
  }
  .searchandfilter>ul>li:last-child {
    padding-bottom: .5rem !important;
  }
  .pc-size60{
    width:60% !important;	
  }	
  
}
