/******ランキングCSS(投稿・固定ページ)*******/
.ranking-list {list-style: none;padding-left: 0 !important;}
.ranking-list li {
    background: #ffffff;
    border-radius: 10px;
    -webkit-box-shadow: 0 0 5px 2px rgba(87,92,255,.15);
    box-shadow: 0 0 5px 2px rgb(216 216 228/50%);
    margin: auto;
    margin-bottom: 1em;
    padding-bottom: 1em;
}
.ranking-title {
    margin: 0 auto 1em auto;
    padding-top: 3em;
    text-align: center;
    line-height: 35px;
    font-weight: 600;
    font-size: 1rem;
    background-repeat: no-repeat;
    background-position: center;
    width: auto;
    height: 102px;
}
.ranking-title span {
    display: block;
    font-size: 2rem;
    font-family: 'meiryo';
    font-weight: 700;
    color: #2db4f8;
}
.ranking-list .imgbox {
    height: 200px;
}
.titlebox {
    background: #024067;
    padding: 0.7em 0.5em 0.7em 1em;
    border-radius: 10px 10px 0 0;
}
.titlebox span {
    color: #fff;
    font-weight: bolder;
    font-size: 1.7rem;
    font-family: 'meiryo';
    letter-spacing: 2px;
}
.Contractor_Box {
    display: flex;
    align-items: center;
    margin: 1em 1em 1.5em 1em;
}
.imgbox {
    overflow: hidden;
    width: 382px;
    height: 173px;
    margin-right: 10px;
}
.textbox {
    width: 52%;
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #DCDCDC;
    border-right: 1px solid #DCDCDC;
    color: #024067;
}
.textbox div:nth-of-type(2) {
    padding: 0 !important;
}
.textbox .colspan {
    display: flex;
}
.colspan .th {
    border-left: none;
}
.colspan:nth-of-type(2) .th, .colspan:nth-of-type(2) .td {
    border-bottom: 0;
}
.textbox .th:first-of-type {
    align-content: center;
}
.colspan .th, .colspan .td {
    align-content: center;
    text-align: center;
}
.th {
    width: 38%;
    font-weight: 700;
    background: #FAFAFA;
    padding: 5px;
    border-bottom: 1px solid #DCDCDC;
    border-left: 1px solid #DCDCDC;
}
.td {
    width: 62%;
    padding: 5px;
    background: #fff;
    border-left: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
}
.rankinfo th {width: 35%;}
.textinfo-pc, .textinfo-sp {
    text-align: center;
    font-weight: 700;
    font-size: 1rem;
    color: #024067;
    line-height: 1.7em;
}
.textinfo-sp {
    display: none;
}
.btnbox {
    width: 97%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    margin: auto;
    position: relative;
    padding: 8px;
}
.btnbox span, .btnbox a {text-decoration: none;}
.btnbox span, .btnbox a {
    padding: 12px 25px;
    position: relative;
    color: #fff;
    transition: .2s ease-in-out;
    font-weight: 700;
    border-radius: 5px;
    letter-spacing: 1px;
    text-align: center;
}
.btnbox span {
    background: #16b1ff;
    box-shadow: 0 4px 0 #096c9e;
    width: 60%;
}
.btnbox a {width: 50%;}
.btnbox.cat span{width: 100%;}
.btnbox a {
    background: #bfbfbf;
    box-shadow: 0 4px 0 #a3a3a3;
    margin: 0 .7em 0 0;
}
.btnbox span:hover, .btnbox a:hover  {
    transform: translateY(4px);
    box-shadow: 0px 0px 1px rgba(0,0,0,.2);
    cursor: pointer;
}

@keyframes shine {
    33% {left: 100%;}
    100% {left: 100%;}
  }
.btnbox span:after,.btnbox a:after {
   content: '';
   width: 8px;
   height: 8px;
   border-top: 3px solid #fff;
   border-right: 3px solid #fff;
   transform: rotate(45deg) translateY(-48%);
   position: absolute;
   top: 48%;
   right: 20px;
   border-radius: 1px;
   transition: .3s ease-in-out;
}

/*対応券種CSS*/
.types {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    margin: .5em auto .7em;
    border: 1px solid #dcdcdc;
    text-align: center;
    padding: 10px;
    background: #fff;
    align-items: baseline;
    width: 96%;
}
.types .td {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-around;
    font-size: 12px;
    color: #024067;
    margin: 5px 4px;
    width: auto;
    border: none;
    padding: 0;
}
.post_content div>:first-child.no-margin {
    margin-top: 5px !important;
}
.post_content div>:last-child.no-margin {
    margin-bottom: 5px !important;
}
.types .td img {
    width: 50px;
    height: 50px;
    margin: 3px 5px;
}
.infobox .types {
    border-color: #04acce;
}

@media screen and (max-width: 768px) {
    .ranking-list {padding: 0em !important;}
    .ranking-list li {padding: 1em;}
    .Contractor_Box {flex-direction: column;margin: 1em auto;}
    .imgbox, .textbox {width: 100%;}
    .imgbox {margin-bottom: 1em;}
    .ranking-list .imgbox {height: auto;}
    .textinfo-pc {display: none;}
    .textinfo-sp {display: inline-block;font-size: 14px;margin: 3px 0 3px 0;}
    .textinfo {font-size: 1rem;}
    .btnbox {font-size: 1rem; padding: 3px 0;}
    .btnbox.cat {flex-direction: column;}
    .btnbox span, .btnbox a {width: 100% !important;}
    .btnbox span {order: 1;}
    .btnbox a {order: 2;}
    .btnbox.cat span {margin-bottom: 0.7em !important; padding: 14px 25px;}
    .btnbox a {margin: 0.7em 0.5em 0 0.5em; padding: 7px 25px;}
    .titlebox {
        border-radius: 0;
        width: 95vw;
        left: 50%;
        transform: translateX(-50%);
        position: relative;
    }
    .types .td {
        font-size: 9px;
        margin: 2px 4px;
    }
    .types .td img {
        width: 30px;
        height: 30px;
        margin: 0;
    }
}
/******ブログカードCSS*******/
.swell-block-postLink.blogcard {margin: 2em 0 2em 0;}
.p-blogCard__inner.blogcard_in {box-shadow: 1px 2px 6px 2px rgba(0,0,0,.14);}
.p-blogCard__thumb.c-postThumb.blogcard {width: 32%;}
time.c-postTimes__posted.icon-posted.blogcard_time {font-size: 14px; padding-bottom: 4px;}
.blogcard_in {border-radius: 10px !important;padding: 18px;}
.p-blogCard__inner.blogcard_in:after {
    content: "続きを読む >";
    font-size: 0.9em;
    display: inline-block;
    position: absolute;
    bottom: 12px;
    right: 0;
    background: #2db4f8;
    color: #ffffff;
    font-weight: 400;
    padding: 0 7px 0 11px;
}
@media screen and (max-width: 540px) {
    .p-blogCard__thumb.c-postThumb.blogcard {text-align: center;}
    .p-blogCard__inner.blogcard_in {display: block;}
    .p-blogCard__thumb.c-postThumb.blogcard {width: 100%;}
    .blogcard_in {padding: 18px 18px 40px 18px;}
    .p-blogCard__inner.blogcard_in:after {font-size: 12px;}
}
/******広告詳細ページのアイキャッチ画像CSS*******/
.eyecatch-bottom {
    display: block;
    font-size: 1.2rem;
    margin-top: -1rem;
}
.eyecatch-bottom .jump {
    cursor: pointer;
    text-decoration: underline;
    color: #4f96f6;
}
@media screen and (max-width: 540px) {
    .eyecatch-bottom {text-align: center;}
}
/******広告詳細ページの広告詳細情報******/
.ads_box.clearfix {margin-top: 1em;}
table.info3 {margin-top: 1em;}
table.info3 caption {
    background: #008ce7;
    color: #fff;
    padding: 10px;
    font-size: 18px;
    font-weight: bold;
}
table.info3 th {
    background: #e5f4ff;
    border: solid 1px #3aa4ec;
}
table.info3 td {border: solid 1px #3aa4ec;}
@media screen and (max-width: 540px) {
    table.info3 th {
        background: #e5f4ff;
        border: solid 1px #3aa4ec;
        width: 33%;
    }
}
/****** 枠の装飾（list・box）*****/
.box1,.box18,.box20,.box26,.box27,.box28,.box29{
    margin: 2em 0;
    border: solid 3px #2681FF;
    border-radius: 8px;
}
.box1 .box-title,.box18 .box-title,.box20 .box-title,.box26 .box-title,.box27 .box-title,.box28 .box-title,.box29 .box-title {
    display: inline-block;
    position: relative;
    top: -14px;
    left: 10px;
    padding: 0 9px;
    margin: 0 7px;
    background: #fff;
    color: #2681FF;
    font-size: 19px;
    line-height: 1.4;
}
.box1 .box-title:before,.box18 .box-title:before,.box20 .box-title:before,.box26 .box-title:before,.box27 .box-title:before,.box28 .box-title:before,.box29 .box-title:before {
    padding-right: 4px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f02e";
}
.box1 .box-content,.box18 .box-content,.box20 .box-content,.box26 .box-content,.box27 .box-content,.box28 .box-content,.box29 .box-content {
    padding: 0 1.5em 24px;
}
.li-mainbdr ul,.li-mainbdr ol {border: 3px solid #2681ff;}
.ol-circle ol {
    padding: 1em 0.7em;
    counter-reset: number;
}
.entry-content :where(ul:not([class])),
.entry-content :where(ol:not([class])) {
    margin-bottom: 1.5em;
    padding: 1em 1em 1em 2.5em;
    border: solid 2px var(--sgb-list-border-color, #e8e8e8);
    background-color: var(--sgb-list-box-color, none);
    box-shadow: var(--sgb-list-box-shadow, none);
    color: var(--sgb-list-color, inherit);
    border-radius: 3px;
}
.ol-circle li {
    position: relative;
    padding: 0.5em 0 0.5em 34px;
    line-height: 1.5em;
}
.main-bc-before li:before {border-color: #2681FF;}
.ol-circle li:before {
    display: inline-block;
    position: absolute;
    left: 0;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background: #2681FF;
    color: #fff;
    font-family: "Quicksand",sans-serif;
    font-size: 15px;
    font-weight: 700;
    text-align: center;
    vertical-align: middle;
    line-height: 25px;
    content: counter(number);
    counter-increment: number;
}
.ol-circle ol {
    list-style-type: none !important;
    padding: 1em 0.7em;
    counter-reset: number;
}
/****** クチコミ表示（wom-chart・wom-comment） *****/
ul.review-list {list-style-type: none; padding: 0;}
/****** 追加シェアボタン *****/
.sharebox {display: flex;text-align:center;}
.share_td img {display: block;margin: 0 auto;}
.share_td {
    background: #e2f8fd;
    border: 1px solid #2ab5f4;
    border-radius: 5px;
    font-size: 0.7em;
    margin: 0 2px;
    padding: 6px 2px;
    width: calc(100% / 3);
}

/****** 記事中商標ロゴリストボタン *****/
.jump{cursor:pointer;}
.linklist_btn ul{
	display:flex;
	flex-wrap: wrap;
	list-style-type:none;
	margin: 0;
	padding: 0;
}
.linklist_btn li{
	margin:0;
	width: calc(100% / 3);
}
.linklist_btn .jump,.linklist_btn a{
	display:block;
	align-items: center;
    background: linear-gradient(to bottom,#fff 0%,#f0f2f2 100%);
    box-shadow: 2px 2px 2px #f6f7f7;
    border: 1px solid #ddd;
    border-radius: 5px;
	margin:3px;
	padding: 7px 4px 0px 4px;
	text-align:center;
	color:#767676;
}
.linklist_btn_name{display:block;}
.kaitori_btn_img img{
	transform: scale(.4);
    margin-bottom: -28px;
    border-radius: 12px;
    margin-top: -21px;
}
@media print, screen and (max-width: 768px) {
	.linklist_btn_name {display: none;}
}
@media print, screen and (min-width: 769px) {
	.linklist_btn_name {font-size: 0.9em;}
	.linklist_btn .jump,.linklist_btn a{margin: 7px;}
	.linklist_btn_img{display:inline-block; margin: 0.6em 3em 0;}
}
/****** nopage用の広告表示********/
.nopage_box {
    background: #e8f7ff;
    padding: 2em 1em;
    border: 1px solid #87aec2;
    border-radius: 10px;
}
figure.wp-block-image.size-full.is-resized.nopage {
    width: 56%;
    height: 56%;
    margin: auto;
}
.nopage_box_text {
    background-color: #fff;
    border: 1px solid #000;
    border-radius: 5px;
    position: relative;
    padding: 15px;
    margin-right: 2em;
}
.nopage_box_text:before {
    border: 10px solid transparent;
    border-right-color: #fff;
    border-left-width: 0;
    left: -9px;
    content: "";
    display: block;
    top: 40%;
    position: absolute;
    width: 0;
    z-index: 1;
}
.nopage_box_text:after {
    border: 10px solid transparent;
    border-right-color: #000;
    border-left-width: 0;
    left: -10px;
    content: "";
    display: block;
    top: 40%;
    position: absolute;
    width: 0;
}
.nopage_ttl {
    position: relative;
    background: linear-gradient(90deg, #ff7e4c, #ffca5b);
    text-align: center;
    width: 54%;
    color: #fff;
    font-size: 20px;
    padding: 8px 0px;
    font-weight: bold;
    margin: auto;
    border-radius: 4rem;
    margin-top: 2em;
    margin-bottom: 2em;
}
.nopage_ttl:after {
    border-top: 20px solid #ffa353;
    position: absolute;
    bottom: -14px;
    left: 50%;
    content: '';
    border-right: 20px solid transparent;
    border-left: 20px solid transparent;
    transform: translateX(-50%);
}
@media screen and (max-width: 540px) {
    figure.wp-block-image.size-full.is-resized.nopage {
        width: 40%;
        height: 40%;
        margin: auto;
    }
    .nopage_box_text {margin-right: 0;}
    .nopage_box_text:before {
        left: 50%;
        top: -15px;
        transform: rotate(90deg);
    }
    .nopage_box_text:after {
        left: 50%;
        top: -16px;
        transform: rotate(90deg);
    }
    .nopage_ttl {width: 100%; font-size: 15px;}
}
/******テーブル箇所*****/
.swell-block-capbox.cap_box.nopage_pick {width: 85%; margin: auto;}
ul.nopage_pick_box {list-style: none; padding-left: 0;}
li.nopage_pick_list {margin: 0em 0;}
li.nopage_pick_list:not(:last-child) {border-bottom: 1px solid #2db4f8;}
.nopage_pick_list_in {
    display: table;
    width: 100%;
    table-layout: fixed;
    background: #fff;
    padding: 4px 0 4px 10px;
}
.nopage_pick_list_in:before {
    position: absolute;
    display: block;
    content: "";
    width: 50px;
    height: 50px;
    background: url(https://no1credit.com/genkinka/wp-content/uploads/2024/02/icon_pick.png) no-repeat scroll left top;
    background-size: 50px 50px;
    top: 4px;
    left: 4px;
    z-index: 1;
}
.nopage_pick_list_img {
    display: table-cell;
    width: 30%;
    height: 100px;
    text-align: center;
    vertical-align: middle;
}
.nopage_pick_list_detail {
    display: table-cell;
    padding-left: 15px;
    vertical-align: middle;
    width: 70%;
    color: #4f96f6;
    font-weight: bold;
}
.nopage_pick_list_detail:after {
    content: "続きを読む >";
    font-size: 0.9em;
    display: inline-block;
    position: absolute;
    bottom: 12px;
    right: 0px;
    color: rgb(255, 255, 255);
    font-weight: 400;
    background: rgb(45, 180, 248);
    padding: 2px 7px 2px 11px;
}
.cap_box_content.nopage_pick_cont {padding: 0px !important;
}
@media screen and (max-width: 540px) {
    .swell-block-capbox.cap_box.nopage_pick {width: 100%;}
    .nopage_pick_list_in:before {
        width: 40px;
        height: 40px;
        background-size: 40px 40px;
    }
    .nopage_pick_list_detail:after {bottom: 0px;}
    .nopage_pick_list_img {height: 80px;} 
}
/******faqデザイン*******/
.faq dt {
    font-size: inherit;
    font-weight: 700;
    line-height: 1.5;
    margin: 0;
    padding: 1em 1em 1em 3em;
    position: relative;
    color: #024067;
}
.faq dd {
    line-height: 1.5;
    padding: 1em 1em 1em 3em;
    position: relative;
}
.faq dt:before {
    border-radius: 50%;
    bottom: unset;
    content: "Q";
    display: block;
    font-family: Arial,sans-serif;
    font-weight: 400;
    left: 0;
    line-height: 2;
    position: absolute;
    text-align: center;
    top: 0.75em;
    width: 2em;
    color: #ffffff;
    background: #024067;
}
.faq dd:before {
    border-radius: 50%;
    content: "A";
    display: block;
    color: #024067;
    font-family: Arial, sans-serif;
    left: 0;
    line-height: 2;
    position: absolute;
    text-align: center;
    top: 0.75em;
    width: 2em;
    border: solid 2px #024067;
    background: #fdc364;
    font-weight: 700;
}
/******フッター*******/
.w-footer {width: 80%;}
.footer_ttl {
    padding-bottom: 10px;
    position: relative;
    margin-bottom: 1em;
    border-bottom: 1px solid #ffffff;
    color: #004365;
    font-weight: bold;
}
.footer_ttl:before {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 24%;
    height: 1px;
    content: '';
    background: #000000;
}
.l-footer__widgetArea {
    background: #F1E1E1;
    padding-bottom: 1.4em;
    padding-top: 1.4em;
}
.footer_ttl a:hover {color: #ffffff;}
.footer_ttl a:after {
    font-family: icomoon;
    content: "\e921";
    margin-left: 0.4em;
    position: absolute;
    transition: all 0.2s ease;
}
.footer_ttl a:hover:after {margin-left: 0.7em; transition: 100ms;}
.footer_text_pref {color: #000000;}
.swell-block-linkList.is-style-default.-flex .swell-block-linkList__link:hover {text-decoration: none;}

@media screen and (min-width:767px) and ( max-width: 1280px) {
    .w-footer {width: 100%;}
  }
/*tableスクロール　CSS*/
.syousai {
    display: inline-block;
}
.is-style-sango-table-scroll-hint {
    white-space: nowrap;
    overflow: auto;
    border:1px #ddd solid;
  }
.is-style-sango-table-scroll-hint th {background: #ecf5ff; border-bottom:0;}
.is-style-sango-table-scroll-hint table {
    word-break: break-all;
    table-layout: fixed;
    border:none;
    display: block;
    margin-top:0!important;
    margin-bottom:0!important;
    max-height: 49vh;
  }
.is-style-sango-table-scroll-hint thead tr {text-align: center;}
.is-style-sango-table-scroll-hint thead th:first-child {
    position: sticky;
    left: 0;
    z-index: 3;
    border: none;
    top: 0;
    border-top: 1px solid #ebe6d3;
    border-right: 1px solid #ebe6d3;
  }
  .sticky-table-f thead tr:nth-child(2) th {
    z-index: 2;
    top: 43px;
    border-top: 1px solid #ebe6d3;
    border-right: 1px solid #ebe6d3;
}
.is-style-sango-table-scroll-hint tbody th:first-child {
    position: sticky;
    left: 0;
    z-index: 1;
    background: #f6fcff;
    padding: 7px 20px;
  }
.is-style-sango-table-scroll-hint tbody th {border-right: none;}
.is-style-sango-table-scroll-hint thead th {
    border-bottom: none;
    position: sticky;
    top: 0;
    z-index: 2;
  }
.sticky-table-f tbody th p {/*pタグ改行なしなし*/
    margin: 0;
    padding: 0;
    line-height: 1;
    display: inline;
}
.sticky-table-rank {max-width: 800px;}
.sticky-table-h {font-size: 0.8em;}
.sticky-table, .sticky-table-rank { line-height: 22px;}
.sticky-table-f {line-height: 30px;}
.sticky-table-h, .sticky-table-k {line-height: 28px;}
.sticky-table table, .sticky-table-rank table {overflow: scroll; height: 436px !important;}
.sticky-table-h table {overflow: scroll; height: 473px;}
.sticky-table-f table {overflow: scroll; height: 420px !important;}
.sticky-table-k table {overflow: scroll; height: 537px;}
.sticky-table td {padding: 0 17px; text-align: center;}
.sticky-table-rank th {padding: 0 33px;}
.sticky-table-k td {padding: 0px 20px;}
.sticky-table-k table tbody tr:has(input[type=checkbox]:checked),
.sticky-table-k table tbody tr:has(input[type=checkbox]:checked) th,
.sticky-table-f table tbody tr:has(input[type=checkbox]:checked),
.sticky-table-f table tbody tr:has(input[type=checkbox]:checked) th,
.sticky-table-rank table tbody tr:has(input[type=checkbox]:checked),
.sticky-table-rank table tbody tr:has(input[type=checkbox]:checked) th {background-color: #fff9eb;}
.sticky-table input[type=checkbox],
.sticky-table-k input[type=checkbox],
.sticky-table-rank input[type=checkbox],
.sticky-table-f input[type=checkbox] {margin-right: 1em;}
.scroll-hint-icon-wrap {z-index: 1;}

  @media print, screen and (max-width: 468px) {
    .is-style-sango-table-scroll-hint tbody th:first-child {padding: 7px 12px;}
    .sticky-table,.sticky-table-h,.sticky-table-f {font-size: .8em !important;}
    .sticky-table-h strong {font-size: 10pt;}
    .sticky-table table {height: 436px !important;}
    .sticky-table-rank table {height: 428px !important;}
    .sticky-table-h table {line-height: 24px; height: 436px !important;}
    .sticky-table-f table {line-height: 24px; height: 326px !important;}
    .sticky-table-f thead tr:nth-child(2) th {top: 39px;}
    .sticky-table-rank {line-height: 24px; font-size: .9em;}
    .sticky-table-rank th {padding: 0 9px;}
    .sticky-table th td {padding: 0 9px;}
    .sticky-table-k td {padding: 0px 20px;}
    .table-ato table {font-size: .8em;}
    .table-ato span {font-size: 10pt !important}
    .sticky-table-k {font-size: 0.8rem; height: 367px;}
    .sticky-table {overflow: scroll; height: 400px;}
  }
/********パンくずリスト********/
li.breadcrumb-item {margin: 0px 2px;}
.yoast_breadcrumb {
    font-size: 12px;
    padding-top: 10px;
    padding-bottom: 10px;
    display: flex;
    list-style: none;
    padding-left: var(--swl-pad_container, 0);
    padding-right: var(--swl-pad_container, 0);
}
.yoast_breadcrumb a {text-decoration: none; color: #494949;}
.yoast_breadcrumb+.l-content {padding-top: 0;}
li.breadcrumb-item:before {margin-right: 1px;}

@media screen and (max-width: 540px)  {
    .yoast_breadcrumb {overflow: scroll; white-space: nowrap;}
}  
