@charset "UTF-8";
/*//////////////////// 基本の共通のもの /////////////////////////*/
/* 背景、文字など */
/* ランキング用 */
/* ボタン */
/* インターフェース */
/* リセットCSS: ブラウザごとのデフォルトスタイルをリセット */
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

html, body {
  height: 100%;
}

body {
  line-height: 1.5;
  font-family: Arial, sans-serif;
}

img {
  border: 0;
}

li,
ol {
  list-style: none;
}

table {
  border-collapse: collapse;
}

button,
input,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  border: none;
  background: none;
  outline: none;
}

/*//////////////////// 基本の共通のもの /////////////////////////*/
.spnone {
  display: block;
}
@media only screen and (max-width: 576px) {
  .spnone {
    display: none;
  }
}

.pcnone {
  display: none;
}
@media only screen and (max-width: 576px) {
  .pcnone {
    display: block;
  }
}

.wrapper__inner,
.header__inner,
.contents-column__section,
.search--form,
.referrer__inner {
  width: 700px;
  margin: 0 auto;
  overflow: hidden;
  padding: 0;
}
@media only screen and (max-width: 576px) {
  .wrapper__inner,
  .header__inner,
  .contents-column__section,
  .search--form,
  .referrer__inner {
    width: 100%;
  }
}

#page-404 {
  margin: 5rem auto;
}

/*//////////////////// 基本の共通のもの /////////////////////////*/
/* 基本スタイル */
html {
  font-size: 62.5%;
}

body {
  color: #333;
  font-family: "din-2014, sans-serif", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "游ゴシック体", "Yu Gothic", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.5;
  font-size: 1.6rem;
}

a {
  text-decoration: none;
  color: #1b53c2;
}

a:link {
  color: #1b53c2;
}

a:visited {
  color: #1b53c2;
}

a:hover, a:active, a:focus {
  color: #1b53c2;
}

a:hover img {
  opacity: 0.7;
  transition: 0.3s ease-in-out;
}

input, button, select, textarea {
  font-family: inherit;
  font-size: inherit;
  margin: 0;
}

p {
  font-size: 1.5rem;
  line-height: 1.5;
}

li {
  font-size: 1.4rem;
}

dt {
  font-size: 1.5rem;
  line-height: 1.5;
}

dd {
  font-size: 1.4rem;
  line-height: 1.5;
}

th, td {
  font-size: 1.3rem;
  line-height: 1.5;
}

small {
  font-size: 80%;
}

img {
  height: auto;
  max-width: 100%;
  width: 100%;
  vertical-align: middle;
}

table {
  border-collapse: separate;
  border-spacing: 0;
  border-left: 1px solid #bfbfbf;
  border-top: 1px solid #bfbfbf;
  table-layout: fixed;
  width: 100%;
  word-break: break-all;
  word-wrap: break-word;
}
table th {
  background: #292929;
  border-right: 1px solid #bfbfbf;
  border-bottom: 1px solid #bfbfbf;
  font-size: 1.2rem;
  font-weight: bold;
  text-align: center;
  vertical-align: middle;
}
table td {
  background: #fff;
  border-right: 1px solid #bfbfbf;
  border-bottom: 1px solid #bfbfbf;
  font-size: 1.2rem;
  font-weight: bold;
  text-align: center;
  vertical-align: middle;
}

.accordion-content {
  display: none;
}

.pc-none {
  display: inline;
}
@media only screen and (max-width: 768px) and (min-width: 577px) {
  .pc-none {
    display: none;
  }
}
@media only screen and (max-width: 1200px) {
  .pc-none {
    display: none;
  }
}

.sp-none {
  display: none;
}
@media only screen and (max-width: 768px) and (min-width: 577px) {
  .sp-none {
    display: inline;
  }
}
@media only screen and (max-width: 1200px) {
  .sp-none {
    display: inline;
  }
}

/* ------------------------------------------------- *
 *        ＠テキスト
 * ------------------------------------------------- */
.red {
  color: #c11624;
  font-weight: bold;
}

.yellow {
  color: #ffe616;
  font-weight: bold;
}

.marker {
  background: linear-gradient(transparent 60%, #ffe616 0%);
  font-weight: bold;
}

.bold {
  font-weight: bold;
}

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

.text-red {
  color: #c11624;
  font-weight: blod;
}

/* ------------------------------------------------- *
 *        ＠共通の装飾
 * ------------------------------------------------- */
.common__title-box, .ranking__simple .ranking__title, .comparison__wrapper .comparison__title, .ranking__box .ranking__title, .pr__box .pr__title, .featured-contents .featured-contents__title {
  display: grid;
  text-align: center;
  font-size: 2.4rem;
  padding: 1rem;
  margin-bottom: 2.5rem;
  position: relative;
  color: #fff;
}
@media only screen and (max-width: 576px) {
  .common__title-box, .ranking__simple .ranking__title, .comparison__wrapper .comparison__title, .ranking__box .ranking__title, .pr__box .pr__title, .featured-contents .featured-contents__title {
    font-size: 2rem;
    margin-bottom: 1rem;
  }
}
.common__title-box::after, .ranking__simple .ranking__title::after, .comparison__wrapper .comparison__title::after, .ranking__box .ranking__title::after, .pr__box .pr__title::after, .featured-contents .featured-contents__title::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  border: solid transparent;
  border-width: 15px;
  pointer-events: none;
  height: 0;
  width: 0;
}
@media only screen and (max-width: 576px) {
  .common__title-box::after, .ranking__simple .ranking__title::after, .comparison__wrapper .comparison__title::after, .ranking__box .ranking__title::after, .pr__box .pr__title::after, .featured-contents .featured-contents__title::after {
    left: 45%;
  }
}

.common__sub-text, .ranking__simple .ranking__title .ranking__sub-text, .comparison__wrapper .comparison__title .comparison__sub-text, .ranking__box .ranking__title .ranking__sub-text, .pr__box .pr__title .pr__sub-text, .featured-contents .featured-contents__title .featured-contents__sub-text, .lp__wrapper .mainvisual .mainvisual__inner .title .sub-text {
  display: inline-block;
  position: relative;
  height: 30px;
  line-height: 35px;
  padding: 0 3rem;
  font-size: 1.8rem;
  text-align: center;
  box-sizing: border-box;
  margin: 0 auto 0.5rem;
}
@media only screen and (max-width: 576px) {
  .common__sub-text, .ranking__simple .ranking__title .ranking__sub-text, .comparison__wrapper .comparison__title .comparison__sub-text, .ranking__box .ranking__title .ranking__sub-text, .pr__box .pr__title .pr__sub-text, .featured-contents .featured-contents__title .featured-contents__sub-text, .lp__wrapper .mainvisual .mainvisual__inner .title .sub-text {
    height: 25px;
    line-height: 30px;
    font-size: 1.6rem;
    width: 70%;
  }
}
.common__sub-text:before, .ranking__simple .ranking__title .ranking__sub-text:before, .comparison__wrapper .comparison__title .comparison__sub-text:before, .ranking__box .ranking__title .ranking__sub-text:before, .pr__box .pr__title .pr__sub-text:before, .featured-contents .featured-contents__title .featured-contents__sub-text:before, .lp__wrapper .mainvisual .mainvisual__inner .title .sub-text:before, .common__sub-text:after, .ranking__simple .ranking__title .ranking__sub-text:after, .comparison__wrapper .comparison__title .comparison__sub-text:after, .ranking__box .ranking__title .ranking__sub-text:after, .pr__box .pr__title .pr__sub-text:after, .featured-contents .featured-contents__title .featured-contents__sub-text:after, .lp__wrapper .mainvisual .mainvisual__inner .title .sub-text:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  z-index: 1;
}

.text--box {
  margin-bottom: 2rem;
  background: #fff;
  padding: 2rem;
  box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.1);
}
@media only screen and (max-width: 576px) {
  .text--box {
    width: 90%;
    margin: 0 auto 2rem;
  }
}
.text--box .lead--text {
  font-size: 1.4rem;
}
.text--box .lead--text .red {
  color: #c11624;
  font-weight: bold;
}

.btn, .ranking__simple .ranking-simple__list .ranking-simple__item .ranking-simple__btn-cv a, .comparison-table table td .comparison__btn-cv a, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__box-btn .btn-cv a,
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__btn .btn-cv a, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__box-btn .btn-detail a,
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__btn .btn-detail a, .pr__box .pr-box__list .pr-box__item .pr-box__content .pr-box__btn .btn-cv a, .detail-box__item .btn-cv a {
  display: block;
  color: #fff;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  border-radius: 0.5rem;
  padding: 1.5rem 1rem;
  border-radius: 5rem;
}
.btn i, .ranking__simple .ranking-simple__list .ranking-simple__item .ranking-simple__btn-cv a i, .comparison-table table td .comparison__btn-cv a i, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__box-btn .btn-cv a i,
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__btn .btn-cv a i, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__box-btn .btn-detail a i,
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__btn .btn-detail a i, .pr__box .pr-box__list .pr-box__item .pr-box__content .pr-box__btn .btn-cv a i, .detail-box__item .btn-cv a i {
  padding-left: 1rem;
}
@media only screen and (max-width: 576px) {
  .btn, .ranking__simple .ranking-simple__list .ranking-simple__item .ranking-simple__btn-cv a, .comparison-table table td .comparison__btn-cv a, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__box-btn .btn-cv a,
  .ranking__box .ranking-box__list .ranking-box__item .ranking-box__btn .btn-cv a, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__box-btn .btn-detail a,
  .ranking__box .ranking-box__list .ranking-box__item .ranking-box__btn .btn-detail a, .pr__box .pr-box__list .pr-box__item .pr-box__content .pr-box__btn .btn-cv a, .detail-box__item .btn-cv a {
    font-size: 1.8rem;
    margin: 0 auto 0.5rem;
  }
}

.btn--primary, .ranking__simple .ranking-simple__list .ranking-simple__item .ranking-simple__btn-cv a, .comparison-table table td .comparison__btn-cv a, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__box-btn .btn-cv a,
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__btn .btn-cv a, .pr__box .pr-box__list .pr-box__item .pr-box__content .pr-box__btn .btn-cv a, .detail-box__item .btn-cv a {
  background: linear-gradient(180deg, rgb(207, 15, 29) 0%, rgb(212, 7, 32) 100%);
  border-bottom: 7px solid #890412;
  font-size: 2.2rem;
}
@media only screen and (max-width: 576px) {
  .btn--primary, .ranking__simple .ranking-simple__list .ranking-simple__item .ranking-simple__btn-cv a, .comparison-table table td .comparison__btn-cv a, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__box-btn .btn-cv a,
  .ranking__box .ranking-box__list .ranking-box__item .ranking-box__btn .btn-cv a, .pr__box .pr-box__list .pr-box__item .pr-box__content .pr-box__btn .btn-cv a, .detail-box__item .btn-cv a {
    font-size: 1.8rem;
  }
}

.btn--green, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__box-btn .btn-detail a,
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__btn .btn-detail a {
  background: linear-gradient(180deg, rgb(47, 179, 131) 0%, rgb(24, 168, 107) 100%);
  border-bottom: 7px solid #0f754e;
  font-size: 1.8rem;
  padding: 1.7rem 1rem;
}
@media only screen and (max-width: 576px) {
  .btn--green, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__box-btn .btn-detail a,
  .ranking__box .ranking-box__list .ranking-box__item .ranking-box__btn .btn-detail a {
    background: none;
    border-bottom: none;
    color: #1a3e86;
    font-size: 1.6rem;
    padding: 0;
    text-decoration: underline;
  }
}

.btn__container, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__box-btn,
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__btn {
  display: flex;
  justify-content: center;
}
@media only screen and (max-width: 576px) {
  .btn__container, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__box-btn,
  .ranking__box .ranking-box__list .ranking-box__item .ranking-box__btn {
    display: block;
  }
}

.point-box, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__content .ranking-box__main .ranking-box__point, .detail-box__item .detail-box__main .detail-box__point {
  width: 55%;
}
@media only screen and (max-width: 576px) {
  .point-box, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__content .ranking-box__main .ranking-box__point, .detail-box__item .detail-box__main .detail-box__point {
    width: 100%;
  }
}
.point-box dl, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__content .ranking-box__main .ranking-box__point dl, .detail-box__item .detail-box__main .detail-box__point dl {
  border-radius: 6px;
  outline: 2px solid #1b53c2;
  outline-offset: -2px;
}
.point-box dl dt, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__content .ranking-box__main .ranking-box__point dl dt, .detail-box__item .detail-box__main .detail-box__point dl dt {
  background: #1b53c2;
  border-radius: 6px 6px 0 0;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 700;
  padding: 0.5rem 1rem;
  text-align: center;
}
@media only screen and (max-width: 576px) {
  .point-box dl dt, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__content .ranking-box__main .ranking-box__point dl dt, .detail-box__item .detail-box__main .detail-box__point dl dt {
    font-size: 1.2rem;
  }
}
.point-box dl dd, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__content .ranking-box__main .ranking-box__point dl dd, .detail-box__item .detail-box__main .detail-box__point dl dd {
  background-color: #fff;
  margin-bottom: 0.5rem;
  padding: 1.5rem;
}
@media only screen and (max-width: 576px) {
  .point-box dl dd, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__content .ranking-box__main .ranking-box__point dl dd, .detail-box__item .detail-box__main .detail-box__point dl dd {
    padding: 1rem;
  }
}
.point-box dl dd li, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__content .ranking-box__main .ranking-box__point dl dd li, .detail-box__item .detail-box__main .detail-box__point dl dd li {
  background: url(../img/icon/icon-check.png) left -0.3rem no-repeat;
  background-size: 28px 28px;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.5;
  list-style: none;
  margin-bottom: 1rem;
  padding-left: 3rem;
}
@media only screen and (max-width: 576px) {
  .point-box dl dd li, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__content .ranking-box__main .ranking-box__point dl dd li, .detail-box__item .detail-box__main .detail-box__point dl dd li {
    background: url(../img/icon/icon-check.png) -5px top no-repeat;
    background-size: 20px 20px;
    padding-left: 1.5rem;
    font-size: 1.3rem;
  }
}
.point-box dl dd li:last-child, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__content .ranking-box__main .ranking-box__point dl dd li:last-child, .detail-box__item .detail-box__main .detail-box__point dl dd li:last-child {
  margin-bottom: 0;
}

.comment-box-common, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__comment, .detail-box__item .detail-box__comment {
  border: 1px solid #2bb17f;
  border-radius: 0.5rem;
  margin-bottom: 1.5rem;
}
.comment-box-common dt, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__comment dt, .detail-box__item .detail-box__comment dt {
  background: #2bb17f;
  border-radius: 6px 6px 0 0;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 700;
  padding: 0.5rem 1rem;
  position: relative;
  text-align: center;
}
@media only screen and (max-width: 576px) {
  .comment-box-common dt, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__comment dt, .detail-box__item .detail-box__comment dt {
    font-size: 1.3rem;
    padding: 0.5rem 1rem;
  }
}
.comment-box-common dt::after, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__comment dt::after, .detail-box__item .detail-box__comment dt::after {
  border: solid transparent;
  border-color: rgba(128, 195, 77, 0);
  border-top-color: #2bb17f;
  border-width: 8px;
  content: "";
  height: 0;
  left: 50%;
  margin-left: -8px;
  position: absolute;
  pointer-events: none;
  top: 100%;
  width: 0;
}
@media only screen and (max-width: 576px) {
  .comment-box-common dt::after, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__comment dt::after, .detail-box__item .detail-box__comment dt::after {
    border-width: 6px;
    margin-left: -6px;
  }
}
.comment-box-common dt i, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__comment dt i, .detail-box__item .detail-box__comment dt i {
  padding-right: 0.5rem;
  color: #ffe616;
}
.comment-box-common dd, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__comment dd, .detail-box__item .detail-box__comment dd {
  background: #fff;
  font-size: 1.4rem;
  line-height: 1.5;
  padding: 1.5rem;
}
@media only screen and (max-width: 576px) {
  .comment-box-common dd, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__comment dd, .detail-box__item .detail-box__comment dd {
    font-size: 1.3rem;
    padding: 1.5rem 1rem 1rem;
  }
}

.campaign-box-common, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__campaign, .detail-box__item .detail-box__campaign {
  border: 1px solid #af8a19;
  margin-bottom: 1.5rem;
}
.campaign-box-common dt, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__campaign dt, .detail-box__item .detail-box__campaign dt {
  background: #af8a19;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 700;
  padding: 0.5rem;
  text-align: center;
}
.campaign-box-common dt i, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__campaign dt i, .detail-box__item .detail-box__campaign dt i {
  padding-right: 1rem;
}
@media only screen and (max-width: 576px) {
  .campaign-box-common dt, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__campaign dt, .detail-box__item .detail-box__campaign dt {
    font-size: 1.3rem;
    padding: 0.5rem 1rem;
  }
}
.campaign-box-common dd, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__campaign dd, .detail-box__item .detail-box__campaign dd {
  font-size: 1.4rem;
  padding: 1rem;
}
@media only screen and (max-width: 576px) {
  .campaign-box-common dd, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__campaign dd, .detail-box__item .detail-box__campaign dd {
    font-size: 1.3rem;
  }
}

.cta-catch-common, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__cta-catch, .detail-box__item .detail-box__cta-catch {
  text-align: center;
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 0.5rem;
  width: 100%;
}
.cta-catch-common .text, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__cta-catch .text, .detail-box__item .detail-box__cta-catch .text {
  display: inline-block;
  position: relative;
  letter-spacing: normal;
}
.cta-catch-common .text:before, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__cta-catch .text:before, .detail-box__item .detail-box__cta-catch .text:before, .cta-catch-common .text:after, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__cta-catch .text:after, .detail-box__item .detail-box__cta-catch .text:after {
  position: absolute;
  top: calc(100% - 20px);
  content: "";
  display: inline-block;
  width: 25px;
  height: 25px;
}
.cta-catch-common .text:before, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__cta-catch .text:before, .detail-box__item .detail-box__cta-catch .text:before {
  left: -2.5rem;
  background: url(../img/icon/fukidashi_l.png) no-repeat;
  background-size: 16px;
}
.cta-catch-common .text:after, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__cta-catch .text:after, .detail-box__item .detail-box__cta-catch .text:after {
  right: -3rem;
  background: url(../img/icon/fukidashi_r.png) no-repeat;
  background-size: 16px;
}

.table_evaluation {
  margin: 1.5rem 0;
  width: 100%;
}
.table_evaluation th {
  background: #292929;
  color: #fff;
  font-size: 1.4rem;
  padding: 0.5rem 1rem;
  text-align: center;
  width: 50%;
}
@media only screen and (max-width: 576px) {
  .table_evaluation th {
    font-size: 1.1rem;
    padding: 0.5rem;
  }
}
.table_evaluation th.crypto-brand {
  width: 100%;
}
.table_evaluation td {
  background: #fff;
  font-size: 1.4rem;
  padding: 1rem;
  text-align: center;
  line-height: 1.2;
  vertical-align: middle;
}
@media only screen and (max-width: 576px) {
  .table_evaluation td {
    font-size: 1.2rem;
    padding: 0.5rem;
  }
}
.table_evaluation td.crypto-brand-icon img {
  width: 30px;
  margin: 0.2rem 0.6rem;
}
.table_evaluation .sub--item th {
  background: #4d4d4d;
}

.caution__text, .ranking__simple .ranking-simple__text-caution span, .pr__box .pr-box__text-caution span {
  font-size: 1rem;
  color: #818181;
  text-align: center;
}

/* ------------------------------------------------- *
*        ＠header
* ------------------------------------------------- */
header {
  background: #fff;
  border-bottom: 3px solid #f15518;
}
header .header__inner {
  overflow: hidden;
  padding: 1rem 0;
  display: flex;
  margin: auto;
}
@media only screen and (max-width: 576px) {
  header .header__inner {
    padding: 0.5rem 1rem;
  }
}
header .header__inner .header-logo img {
  width: 60%;
}
@media only screen and (max-width: 576px) {
  header .header__inner .header-logo img {
    width: 55%;
  }
}
header .header__inner .header-pr {
  width: 30%;
  margin-left: auto;
  text-align: right;
  font-size: 1.4rem;
}

/* ------------------------------------------------- *
*        ＠footer
* ------------------------------------------------- */
footer {
  width: 100%;
  background: #313131;
}
footer .footer__copyright {
  background: #f15518;
  color: #fff;
  font-size: 1.2rem;
  padding: 1rem;
  text-align: center;
}
footer .footer__inner {
  padding: 2rem;
}
@media only screen and (max-width: 576px) {
  footer .footer__inner {
    padding: 1.5rem 0.5rem;
  }
}
footer .footer__inner .footer__information {
  margin-bottom: 1.5rem;
  text-align: end;
}
@media only screen and (max-width: 576px) {
  footer .footer__inner .footer__information {
    text-align: center;
  }
}
footer .footer__inner .footer__information li {
  display: inline-block;
  font-size: 1.2rem;
  margin: 0 1.5rem;
  padding-left: 1rem;
  position: relative;
}
@media only screen and (max-width: 576px) {
  footer .footer__inner .footer__information li {
    margin: 0 0.5rem;
    font-size: 1rem;
  }
}
footer .footer__inner .footer__information li::before {
  border-top: 5px solid #fff;
  border-left: 5px solid transparent;
  transform: rotate(45deg);
  content: "";
  display: block;
  height: 0;
  left: 0;
  margin: -3px 0 0;
  position: absolute;
  top: 50%;
  width: 0;
}
footer .footer__inner .footer__information li a {
  color: #fff;
}

#scrolltop {
  background: #f15518;
  border-radius: 25px;
  bottom: 2rem;
  color: #fff;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 700;
  height: 50px;
  line-height: 7rem;
  opacity: 0.8;
  position: fixed;
  right: 2rem;
  text-align: center;
  width: 50px;
}
#scrolltop::after {
  content: "▲";
  font-size: 1.3rem;
  font-weight: 700;
  color: #fff;
  position: absolute;
  top: -1.8rem;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

/* ------------------------------------------------- *
*        ＠search
* ------------------------------------------------- */
.search--form {
  background: #fff;
  margin: 4rem auto;
}
@media only screen and (max-width: 576px) {
  .search--form {
    width: 95%;
    margin: 2rem auto;
  }
}
.search--form .searchform__block {
  border: 1px solid #1b53c2;
}
.search--form .searchform__block .searchform__title {
  background: #1b53c2;
  color: #fff;
  font-size: 2rem;
  padding: 1.5rem;
  text-align: center;
}
.search--form .searchform__block .searchform__inner {
  padding: 2rem 2rem 0;
}
@media only screen and (max-width: 576px) {
  .search--form .searchform__block .searchform__inner {
    padding: 1.5rem 1rem 0;
  }
}
.search--form .searchform__block .searchform__inner .searchform__fieldgroup {
  border-bottom: 2px dotted #e1efff;
  display: flex;
  padding-bottom: 1rem;
  margin-bottom: 1.5rem;
  align-items: center;
}
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__label {
  color: #1b53c2;
  font-size: 1.6rem;
  font-weight: bold;
  width: 20%;
}
@media only screen and (max-width: 576px) {
  .search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__label {
    font-size: 1.1rem;
    width: 32%;
  }
}
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input {
  width: 80%;
}
@media only screen and (max-width: 576px) {
  .search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input {
    width: 70%;
  }
}
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__radio-list,
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__checkbox-list {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__radio-list li,
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__checkbox-list li {
  width: 23.5%;
}
@media only screen and (max-width: 576px) {
  .search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__radio-list li,
  .search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__checkbox-list li {
    text-align: center;
    width: 48%;
  }
  .search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__radio-list li.wide,
  .search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__checkbox-list li.wide {
    width: auto;
  }
}
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__radio-list li label,
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__checkbox-list li label {
  display: flex;
  align-items: center;
  background: #fff;
  cursor: pointer;
  transition: background-color 0.3s, color 0.3s;
}
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__radio-list li label input[type=radio], .search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__radio-list li label input[type=checkbox],
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__checkbox-list li label input[type=radio],
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__checkbox-list li label input[type=checkbox] {
  display: none;
}
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__radio-list li label input[type=radio]:checked + span::before, .search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__radio-list li label input[type=checkbox]:checked + span::before,
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__checkbox-list li label input[type=radio]:checked + span::before,
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__checkbox-list li label input[type=checkbox]:checked + span::before {
  background: #ffe616;
  border: 2px solid #333;
}
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__radio-list li label span,
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__checkbox-list li label span {
  padding-left: 2rem;
  position: relative;
  font-size: 1.3rem;
  font-weight: bold;
}
@media only screen and (max-width: 576px) {
  .search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__radio-list li label span,
  .search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__checkbox-list li label span {
    font-size: 1.2rem;
    text-align: left;
    padding-left: 1.8rem;
  }
}
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__radio-list li label span::before,
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__checkbox-list li label span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  border: 2px solid #333;
  border-radius: 50%;
  background: #fff;
  transition: background-color 0.3s;
}
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__radio-list li label input[type=checkbox] + span::before,
.search--form .searchform__block .searchform__inner .searchform__fieldgroup .searchform__input .searchform__checkbox-list li label input[type=checkbox] + span::before {
  border-radius: 2px;
}
.search--form .searchform__block .searchform__toggle {
  display: block;
  color: #1b53c2;
  font-weight: bold;
  text-align: center;
  margin: 0.5rem auto 1.5rem;
}
.search--form .searchform__block .searchform__button {
  margin: 0 0 3rem;
  text-align: center;
}
@media only screen and (max-width: 576px) {
  .search--form .searchform__block .searchform__button {
    margin-bottom: 2rem;
  }
}
.search--form .searchform__block .searchform__button #submit-btn {
  background: #f15518;
  border: none;
  border-bottom: 7px solid #9d340a;
  border-radius: 5rem;
  color: #fff;
  cursor: pointer;
  display: block;
  font-size: 2.2rem;
  font-weight: 700;
  margin: 0 auto;
  padding: 1.5rem 1rem;
  width: 80%;
}
@media only screen and (max-width: 576px) {
  .search--form .searchform__block .searchform__button #submit-btn {
    font-size: 1.8rem;
    padding: 1.2rem 1rem;
  }
}

/* ------------------------------------------------- *
*        ＠Search kekka
* ------------------------------------------------- */
.searchkekka__title {
  background: #1b53c2;
  margin-bottom: 2rem;
  padding: 1.5rem;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
}
.searchkekka__title h2 {
  display: flex;
  font-size: 1.8rem;
  color: #fff;
  line-height: 1;
  align-items: baseline;
  justify-content: center;
}
.searchkekka__title h2 .searchkekka__main-text {
  margin-right: 0.5rem;
}
.searchkekka__title h2 .searchkekka__main-text i {
  padding-right: 0.5rem;
}
.searchkekka__title h2 .searchkekka__sub-text span {
  color: #ffe616;
  font-size: 3.6rem;
}

.searchkekka-item__list {
  margin-bottom: 4rem;
}
.searchkekka-item__list .searchkekka-item__inner {
  background: #fff;
  border: 2px solid #1b53c2;
  border-top: 8px solid #1b53c2;
  padding: 2rem;
  margin-bottom: 2rem;
}
@media only screen and (max-width: 576px) {
  .searchkekka-item__list .searchkekka-item__inner {
    padding: 1rem;
  }
}
.searchkekka-item__list .searchkekka-item__inner .searchkekka-item__title {
  border-bottom: 1px solid #1b53c2;
  margin-bottom: 1.5rem;
  padding-bottom: 1rem;
}
.searchkekka-item__list .searchkekka-item__inner .searchkekka-item__title h3 {
  display: flex;
  font-size: 3rem;
}
@media only screen and (max-width: 576px) {
  .searchkekka-item__list .searchkekka-item__inner .searchkekka-item__title h3 {
    font-size: 3rem;
  }
}
.searchkekka-item__list .searchkekka-item__inner .searchkekka-item__title h3 a {
  color: #333;
  text-decoration: none;
}
.searchkekka-item__list .searchkekka-item__inner .searchkekka-item__catch {
  font-size: 2rem;
  line-height: 1.5;
  margin-bottom: 1.5rem;
}
@media only screen and (max-width: 576px) {
  .searchkekka-item__list .searchkekka-item__inner .searchkekka-item__catch {
    font-size: 1.6rem;
    margin-bottom: 1rem;
  }
}
.searchkekka-item__list .searchkekka-item__inner .searchkekka-item__content .searchkekka-item__main {
  display: flex;
  margin-bottom: 1.5rem;
}
@media only screen and (max-width: 576px) {
  .searchkekka-item__list .searchkekka-item__inner .searchkekka-item__content .searchkekka-item__main {
    display: block;
  }
}
.searchkekka-item__list .searchkekka-item__inner .searchkekka-item__content .searchkekka-item__main .searchkekka-item__banner {
  width: 42%;
  margin-right: 1.5rem;
}
@media only screen and (max-width: 576px) {
  .searchkekka-item__list .searchkekka-item__inner .searchkekka-item__content .searchkekka-item__main .searchkekka-item__banner {
    width: 100%;
    margin: 0 auto 1rem;
  }
}
.searchkekka-item__list .searchkekka-item__inner .searchkekka-item__content .table_evaluation {
  margin: 0;
}
.searchkekka-item__list .searchkekka-item__inner .searchkekka-item__btn {
  display: block;
}
.searchkekka-item__list .searchkekka-item__inner .searchkekka-item__btn .btn-cv {
  width: 95%;
  margin: 0 auto 1rem;
}
@media only screen and (max-width: 576px) {
  .searchkekka-item__list .searchkekka-item__inner .searchkekka-item__btn .btn-cv {
    width: 100%;
  }
}
.searchkekka-item__list .searchkekka-item__inner .searchkekka-item__btn .btn-cv a {
  border-radius: 0.5rem;
  color: #fff;
  display: block;
  background: linear-gradient(180deg, rgb(207, 15, 29) 0%, rgb(212, 7, 32) 100%);
  border-bottom: 7px solid #890412;
  font-size: 2.2rem;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  padding: 1.5rem 1rem;
}
.searchkekka-item__list .searchkekka-item__inner .searchkekka-item__btn .btn-cv a i {
  padding-left: 1rem;
}
@media only screen and (max-width: 576px) {
  .searchkekka-item__list .searchkekka-item__inner .searchkekka-item__btn .btn-cv a {
    font-size: 1.8rem;
  }
}

.searchkekka__noresult {
  margin: 4rem auto;
}
@media only screen and (max-width: 576px) {
  .searchkekka__noresult {
    text-align: center;
  }
}

/* ------------------------------------------------- *
*        ＠Top page
* ------------------------------------------------- */
.top__mainvisual {
  background: transparent url(../img/mainvisual/mainvisual_bg.png) center center;
  text-align: center;
}
.top__mainvisual img {
  width: 900px;
  margin: 0 auto;
}
@media only screen and (max-width: 576px) {
  .top__mainvisual img {
    width: 100%;
  }
}

/* ------------------------------------------------- *
*        ＠簡易ランキング
* ------------------------------------------------- */
.ranking__simple {
  background: #e1efff;
  padding: 0 0 4rem;
}
@media only screen and (max-width: 576px) {
  .ranking__simple {
    padding-bottom: 0;
    background: #fff;
  }
}
.ranking__simple .ranking__title {
  background: #1b1b1b;
}
.ranking__simple .ranking__title::after {
  border-top-color: #1b1b1b;
}
.ranking__simple .ranking__title .ranking__sub-text {
  width: 20%;
  background: #ffe616;
  color: #1b1b1b;
}
@media only screen and (max-width: 576px) {
  .ranking__simple .ranking__title .ranking__sub-text {
    width: 55%;
  }
}
.ranking__simple .ranking__title .ranking__sub-text:before {
  top: 0;
  left: 0;
  border-width: 15px 0px 15px 5px;
  border-color: transparent transparent transparent #1b1b1b;
  border-style: solid;
}
.ranking__simple .ranking__title .ranking__sub-text:after {
  top: 0;
  right: 0;
  border-width: 15px 5px 15px 0px;
  border-color: transparent #1b1b1b transparent transparent;
  border-style: solid;
}
.ranking__simple .ranking__title-img {
  width: 500px;
  margin: 0 auto 1.5rem;
}
@media only screen and (max-width: 576px) {
  .ranking__simple .ranking__title-img {
    width: 100%;
    margin-bottom: 1rem;
  }
}
.ranking__simple .ranking-simple__list {
  margin: 0 auto 5rem;
  display: flex;
}
@media only screen and (max-width: 576px) {
  .ranking__simple .ranking-simple__list {
    margin-bottom: 0;
  }
}
.ranking__simple .ranking-simple__list .ranking-simple__item {
  background: #fff;
  display: flex;
  flex-direction: column;
  padding: 1.5rem 1rem;
  margin: 0 0.5rem;
  width: 33.3%;
}
@media only screen and (max-width: 576px) {
  .ranking__simple .ranking-simple__list .ranking-simple__item {
    width: 95%;
    padding: 1.5rem 0.5rem;
    margin: 0 auto;
  }
}
.ranking__simple .ranking-simple__list .ranking-simple__item .ranking-simple__icon-rank {
  width: 30%;
  margin: 0 auto 0.5rem;
}
.ranking__simple .ranking-simple__list .ranking-simple__item .ranking-simple__inner {
  max-width: 100%;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.ranking__simple .ranking-simple__list .ranking-simple__item .ranking-simple__inner .ranking-simple__banner {
  width: 100%;
  margin: 0 auto 1.5rem;
}
.ranking__simple .ranking-simple__list .ranking-simple__item .ranking-simple__inner .ranking-simple__logo {
  width: 90%;
  margin: 0 auto 1rem;
}
.ranking__simple .ranking-simple__list .ranking-simple__item .ranking-simple__inner .ranking-simple__label {
  font-size: 1.6rem;
  font-weight: bold;
  padding: 0 1rem;
  text-align: center;
  margin-bottom: 1rem;
}
.ranking__simple .ranking-simple__list .ranking-simple__item .ranking-simple__inner .ranking-simple__point {
  padding: 0 1rem;
  margin-bottom: 1.5rem;
}
.ranking__simple .ranking-simple__list .ranking-simple__item .ranking-simple__link-area {
  margin-top: auto;
}
.ranking__simple .ranking-simple__list .ranking-simple__item .ranking-simple__btn-cv {
  width: 90%;
  margin: auto;
}
.ranking__simple .ranking-simple__list .ranking-simple__item .ranking-simple__btn-cv a {
  font-size: 1.4rem;
}
.ranking__simple .ranking-simple__list .ranking-simple__item .ranking-simple__btn-cv a i {
  padding-left: 1rem;
}
.ranking__simple .ranking-simple__list .ranking-simple__item .ranking-simple__pr-text {
  font-size: 1.2rem;
  text-align: center;
  color: #878787;
  margin-bottom: 1rem;
}
.ranking__simple .ranking-simple__list .ranking-simple__item .ranking-simple__small-text {
  padding: 0 2rem;
}
.ranking__simple .caution__text, .ranking__simple .pr__box .pr-box__text-caution span, .pr__box .pr-box__text-caution .ranking__simple span, .ranking__simple .ranking-simple__text-caution span {
  margin: -1rem auto 1rem;
}
.ranking__simple .ranking-simple__list--onetop {
  flex-direction: column;
  margin-bottom: 2rem;
  width: 500px;
}
@media only screen and (max-width: 576px) {
  .ranking__simple .ranking-simple__list--onetop {
    width: 90%;
  }
}
.ranking__simple .ranking-simple__list--onetop .ranking-simple__item {
  width: 100%;
  margin: 0 auto 2rem;
  border: 1px solid #4a4a4a;
}
@media only screen and (max-width: 576px) {
  .ranking__simple .ranking-simple__list--onetop .ranking-simple__item {
    margin-bottom: 1rem;
  }
}
.ranking__simple .ranking-simple__list--onetop .ranking-simple__item a {
  text-align: center;
  text-decoration: underline;
}
.ranking__simple .ranking-simple__list--onetop .ranking-simple__item a h3 {
  font-size: 2rem;
  margin-bottom: 0.5rem;
}
.ranking__simple .ranking-simple__list--onetop .ranking-simple__item:first-child {
  background: #fff9c5;
  border: 2px solid #bda844;
}
.ranking__simple .ranking-simple__list--onetop .ranking-simple__item .ranking-simple__inner .ranking-simple__point li {
  background: url(../img/icon/icon-check.png) left -0.3rem no-repeat;
  background-size: 28px 28px;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.5;
  list-style: none;
  margin-bottom: 1rem;
  padding-left: 3rem;
}
@media only screen and (max-width: 576px) {
  .ranking__simple .ranking-simple__list--onetop .ranking-simple__item .ranking-simple__inner .ranking-simple__point li {
    background: url(../img/icon/icon-check.png) -5px top no-repeat;
    background-size: 20px 20px;
    padding-left: 1.3rem;
    font-size: 1.3rem;
  }
}
.ranking__simple .ranking-simple__list--onetop .ranking-simple__item .ranking-simple__inner .ranking-simple__point li:last-child {
  margin-bottom: 0;
}
.ranking__simple .ranking-simple__list--onetop .ranking-simple__item .ranking-simple__inner .ranking-simple__label {
  text-align: left;
  font-size: 1.4rem;
  margin-bottom: 1rem;
  font-weight: normal;
}
.ranking__simple .ranking-simple__list--onetop .ranking-simple__item .ranking-simple__btn-cv {
  width: 80%;
  margin: auto;
}
.ranking__simple .ranking-simple__list--onetop .ranking-simple__item .ranking-simple__btn-cv a {
  font-size: 1.8rem;
}
.ranking__simple .ranking-simple__text-caution span {
  display: block;
  margin-top: 0.5rem;
  text-align: left;
}

/* ------------------------------------------------- *
*        ＠比較表
* ------------------------------------------------- */
.comparison__wrapper {
  background: #e1efff;
  width: 100vw;
  padding: 0 0 2rem;
  margin-left: calc(-50vw + 50%);
}
@media only screen and (max-width: 576px) {
  .comparison__wrapper {
    width: 100%;
  }
}
.comparison__wrapper .comparison__title {
  background: #1b53c2;
}
.comparison__wrapper .comparison__title::after {
  border-top-color: #1b53c2;
}
.comparison__wrapper .comparison__title .comparison__sub-text {
  width: 20%;
  background: #fff;
  color: #1b53c2;
}
@media only screen and (max-width: 576px) {
  .comparison__wrapper .comparison__title .comparison__sub-text {
    width: 70%;
  }
}
.comparison__wrapper .comparison__title .comparison__sub-text:before {
  top: 0;
  left: 0;
  border-width: 15px 0 15px 5px;
  border-color: transparent transparent transparent #1b53c2;
  border-style: solid;
}
.comparison__wrapper .comparison__title .comparison__sub-text:after {
  top: 0;
  right: 0;
  border-width: 15px 5px 15px 0;
  border-color: transparent #1b53c2 transparent transparent;
  border-style: solid;
}

.comparison-table {
  margin: 0 auto 0.5rem;
  position: relative;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.comparison-table table {
  margin: 0 0 1.5rem;
  width: 100%;
  min-width: 800px;
}
.comparison-table table th, .comparison-table table td {
  font-size: 1.2rem;
  padding: 0.5rem;
}
.comparison-table table th {
  background: #1b53c2;
  color: #fff;
  vertical-align: middle;
  width: 135px;
}
@media only screen and (max-width: 576px) {
  .comparison-table table th {
    width: 120px;
  }
}
.comparison-table table th.item--name {
  position: sticky;
  left: -1px;
  z-index: 10;
  width: 140px;
}
.comparison-table table th.sub--ttl {
  width: 140px;
}
@media only screen and (max-width: 576px) {
  .comparison-table table th.sub--ttl {
    width: 160px;
  }
}
.comparison-table table th.col--short {
  width: 95px;
}
.comparison-table table th.col--text {
  width: 255px;
}
.comparison-table table th.col-btn {
  width: 95px;
}
.comparison-table table td {
  background-color: #fff;
  text-align: center;
  vertical-align: middle;
  padding: 1rem 0.5rem;
}
.comparison-table table td.item-name {
  position: sticky;
  left: -1px;
  vertical-align: middle;
  z-index: 10;
}
.comparison-table table td strong {
  color: #c11624;
}
.comparison-table table td small {
  font-size: 1rem;
}
.comparison-table table td .caution__text, .comparison-table table td .pr__box .pr-box__text-caution span, .pr__box .pr-box__text-caution .comparison-table table td span, .comparison-table table td .ranking__simple .ranking-simple__text-caution span, .ranking__simple .ranking-simple__text-caution .comparison-table table td span {
  font-size: 0.8rem;
}
.comparison-table table td .comparison__comp-name {
  font-size: 1.3rem;
  text-decoration: underline;
}
.comparison-table table td .comparison__banner {
  width: 80%;
}
.comparison-table table td .comparison__btn-cv {
  margin-bottom: 0.5rem;
}
.comparison-table table td .comparison__btn-cv a {
  font-size: 1.2rem;
  padding: 2rem 0.5rem;
  width: 100%;
  margin: auto;
  border-radius: 2rem;
}
.comparison-table table td .comparison__icon {
  width: 25px;
  display: block;
  margin: 0 auto 0.3rem;
}
.comparison-table table td .rank-icon {
  width: 25px;
  display: block;
  margin: 0 auto 0.3rem;
}
.comparison-table table td img {
  margin: 0 auto 0.5rem;
  width: 100px;
}
.comparison-table table td .comparison__label {
  display: block;
}
.comparison-table table .sub--item th {
  background: #3a70d9;
  color: #fff;
  font-size: 1.1rem;
}
.comparison-table table .rank-badge--pr {
  position: relative;
  display: block;
  background: #f15518;
  color: #fff;
  font-size: 1.1rem;
  font-weight: bold;
  padding: 0.5rem;
  border-radius: 1rem;
  margin-bottom: 1rem;
}
.comparison-table table .rank-badge--pr::after {
  content: "";
  position: absolute;
  bottom: -0.5rem;
  left: 50%;
  transform: translateX(-50%);
  border-style: solid;
  border-width: 1rem 1rem 0 1rem;
  border-color: #f15518 transparent transparent transparent;
}
.comparison-table table .rank-badge--pr i {
  padding-right: 0.2rem;
}
.comparison-table table .rank1 td {
  padding: 1rem;
  background: #fff9c5;
  border-top: 1px solid #bda844;
  border-bottom: 1px solid #bda844;
}
.comparison-table table .rank1.no-highlight td {
  background: #fff;
  border-top: none;
  border-bottom: 1px solid #bfbfbf;
}

.comparison__caution {
  font-size: 1rem;
  line-height: 1.3;
  color: #878787;
  text-align: right;
}
@media only screen and (max-width: 576px) {
  .comparison__caution {
    padding: 0 1rem;
  }
}

/* ------------------------------------------------- *
*        ＠ランキングカード
* ------------------------------------------------- */
.ranking__box {
  background: #f9f9f9;
  width: 100vw;
  padding: 0 0 5rem;
  margin-left: calc(-50vw + 50%);
}
@media only screen and (max-width: 576px) {
  .ranking__box {
    width: 100%;
  }
}
.ranking__box .ranking__title {
  background: #1b1b1b;
}
.ranking__box .ranking__title::after {
  border-top-color: #1b1b1b;
}
.ranking__box .ranking__title .ranking__sub-text {
  width: 30%;
  background: #ffe616;
  color: #1b1b1b;
}
@media only screen and (max-width: 576px) {
  .ranking__box .ranking__title .ranking__sub-text {
    width: 55%;
  }
}
.ranking__box .ranking__title .ranking__sub-text:before {
  top: 0;
  left: 0;
  border-width: 15px 0 15px 5px;
  border-color: transparent transparent transparent #1b1b1b;
  border-style: solid;
}
.ranking__box .ranking__title .ranking__sub-text:after {
  top: 0;
  right: 0;
  border-width: 15px 5px 15px 0;
  border-color: transparent #1b1b1b transparent transparent;
  border-style: solid;
}
.ranking__box .ranking-box__list {
  margin-bottom: 4rem;
}
.ranking__box .ranking-box__list .ranking-box__item {
  background: #fff;
  border: 2px solid #4a4a4a;
  border-top: 8px solid #4a4a4a;
  padding: 2rem;
  margin-bottom: 3rem;
}
.ranking__box .ranking-box__list .ranking-box__item:first-child {
  border: 2px solid #bda844;
  border-top: 8px solid #bda844;
}
.ranking__box .ranking-box__list .ranking-box__item:nth-child(2) {
  border: 2px solid #a09c9d;
  border-top: 8px solid #a09c9d;
}
@media only screen and (max-width: 576px) {
  .ranking__box .ranking-box__list .ranking-box__item {
    padding: 1rem;
  }
}
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__title {
  border-bottom: 1px solid #878787;
  margin-bottom: 1.5rem;
  padding-bottom: 1rem;
}
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__title h3 {
  display: flex;
  font-size: 2.4rem;
  align-items: center;
  margin: 0;
  line-height: 1.3;
}
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__title h3 a {
  color: #333;
  text-decoration: none;
}
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__title h3 .ranking-box__icon-rank {
  width: 35px;
  margin-right: 1rem;
  flex-shrink: 0;
}
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__title h3 .ranking-box__icon-rank img {
  display: block;
  width: 100%;
}
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__catch {
  font-size: 2rem;
  margin-bottom: 1rem;
}
@media only screen and (max-width: 576px) {
  .ranking__box .ranking-box__list .ranking-box__item .ranking-box__catch {
    font-size: 1.4rem;
    margin-bottom: 0.5rem;
  }
}
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__content .ranking-box__main {
  display: flex;
  margin-bottom: 1.5rem;
}
@media only screen and (max-width: 576px) {
  .ranking__box .ranking-box__list .ranking-box__item .ranking-box__content .ranking-box__main {
    display: block;
  }
}
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__content .ranking-box__main .ranking-box__banner {
  width: 42%;
  margin-right: 1.5rem;
}
@media only screen and (max-width: 576px) {
  .ranking__box .ranking-box__list .ranking-box__item .ranking-box__content .ranking-box__main .ranking-box__banner {
    width: 100%;
    margin: 0 auto 1rem;
  }
}
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__campaign dd {
  background: #fffbf1;
}
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__box-btn .btn-cv,
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__btn .btn-cv {
  width: 100%;
  margin-bottom: 1.5rem;
}
@media only screen and (max-width: 576px) {
  .ranking__box .ranking-box__list .ranking-box__item .ranking-box__box-btn .btn-cv,
  .ranking__box .ranking-box__list .ranking-box__item .ranking-box__btn .btn-cv {
    margin: 0 auto 0.5rem;
  }
}
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__box-btn .btn-detail,
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__btn .btn-detail {
  width: 10%;
}
@media only screen and (max-width: 576px) {
  .ranking__box .ranking-box__list .ranking-box__item .ranking-box__box-btn .btn-detail,
  .ranking__box .ranking-box__list .ranking-box__item .ranking-box__btn .btn-detail {
    width: 60%;
    margin: auto;
  }
}
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__btn {
  display: block;
}
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__btn .btn-cv, .ranking__box .ranking-box__list .ranking-box__item .ranking-box__btn .btn-detail {
  width: 100%;
  margin-right: 0;
  margin-bottom: 1rem;
  margin: auto;
}
.ranking__box .ranking-box__list .ranking-box__item .ranking-box__text-caution {
  font-size: 1.1rem;
  line-height: 1.3;
  color: #878787;
  text-align: right;
  margin-top: -1rem;
}
.ranking__box .ranking-box__list .ranking-box__item.ranking-box__item--recommend {
  border: 2px solid #f15518;
  border-top: 8px solid #f15518;
  background: #fffaf9;
}
.ranking__box .ranking-box__list .ranking-box__item.ranking-box__item--recommend + .ranking-box__item {
  border: 2px solid #bda844;
  border-top: 8px solid #bda844;
}
.ranking__box .ranking-box__list .ranking-box__item.ranking-box__item--recommend .ranking-box__title {
  border-bottom: 1px solid #f15518;
}
.ranking__box .ranking-box__list .ranking-box__item.ranking-box__item--recommend .ranking-box__icon-recommend {
  display: inline-flex;
  align-items: center;
  position: relative;
  background: #f15518;
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  padding: 1rem;
  margin-right: 2rem;
  white-space: nowrap;
  border-radius: 1rem;
}
.ranking__box .ranking-box__list .ranking-box__item.ranking-box__item--recommend .ranking-box__icon-recommend::after {
  content: "";
  position: absolute;
  right: -1rem;
  top: 50%;
  transform: translateY(-50%);
  border-style: solid;
  border-width: 0.9rem 0 0.9rem 1.5rem;
  border-color: transparent transparent transparent #f15518;
}
.ranking__box .ranking-box__list .ranking-box__item.ranking-box__item--recommend .ranking-box__icon-recommend i {
  padding-right: 0.5rem;
}
.ranking__box .ranking-box__list .ranking-box__item.ranking-box__item--recommend .ranking-box__content .ranking-box__main--recommend {
  display: block;
}
.ranking__box .ranking-box__list .ranking-box__item.ranking-box__item--recommend .ranking-box__content .ranking-box__main--recommend .ranking-box__banner {
  width: 100%;
  margin: 0 auto 1.5rem;
}
.ranking__box .ranking-box__list .ranking-box__item.ranking-box__item--recommend .ranking-box__content .ranking-box__main--recommend .ranking-box__point {
  width: 100%;
}

/* ------------------------------------------------- *
*        ＠PRボックス
* ------------------------------------------------- */
.pr__box {
  background: #fffbf1;
  padding: 0 0 5rem;
}
@media only screen and (max-width: 576px) {
  .pr__box {
    width: 100%;
  }
}
.pr__box .pr__title {
  background: #f15518;
}
.pr__box .pr__title::after {
  border-top-color: #f15518;
}
.pr__box .pr__title .pr__sub-text {
  width: 50%;
  background: #ffe616;
  color: #f15518;
}
@media only screen and (max-width: 576px) {
  .pr__box .pr__title .pr__sub-text {
    width: 55%;
  }
}
.pr__box .pr__title .pr__sub-text:before {
  top: 0;
  left: 0;
  border-width: 15px 0 15px 5px;
  border-color: transparent transparent transparent #f15518;
  border-style: solid;
}
.pr__box .pr__title .pr__sub-text:after {
  top: 0;
  right: 0;
  border-width: 15px 5px 15px 0;
  border-color: transparent #f15518 transparent transparent;
  border-style: solid;
}
.pr__box .pr__title .pr__title-img {
  margin-bottom: 1.5rem;
}
.pr__box .pr-box__list {
  width: 500px;
  margin: auto;
}
@media only screen and (max-width: 576px) {
  .pr__box .pr-box__list {
    width: 100%;
  }
}
.pr__box .pr-box__list .pr-box__item {
  background: #fff9c5;
  border: 2px solid #bda844;
}
.pr__box .pr-box__list .pr-box__item .pr-box__catch {
  background: #bda844;
  font-size: 2rem;
  color: #fff;
  margin-bottom: 1.5rem;
  padding: 2rem;
  text-align: center;
}
@media only screen and (max-width: 576px) {
  .pr__box .pr-box__list .pr-box__item .pr-box__catch {
    font-size: 1.6rem;
    margin-bottom: 1rem;
    padding: 1rem;
  }
}
.pr__box .pr-box__list .pr-box__item .pr-box__content {
  padding: 0 2rem 2rem;
}
.pr__box .pr-box__list .pr-box__item .pr-box__content .pr-box__banner {
  width: 100%;
  margin: 0 auto 1rem;
}
.pr__box .pr-box__list .pr-box__item .pr-box__content .pr-box__text {
  font-size: 1.4rem;
  margin-bottom: 1.5rem;
  background: #fff;
  padding: 1.5rem;
}
.pr__box .pr-box__list .pr-box__item .pr-box__content .pr-box__btn {
  display: flex;
  justify-content: center;
  margin-bottom: 1rem;
}
.pr__box .pr-box__list .pr-box__item .pr-box__content .pr-box__btn .btn-cv {
  width: 100%;
}
.pr__box .pr-box__list .pr-box__item .pr-box__content .pr-box__btn .btn-cv a {
  color: #fff;
  display: block;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  padding: 1.5rem 1rem;
  background: linear-gradient(180deg, rgb(207, 15, 29) 0%, rgb(212, 7, 32) 100%);
  border-bottom: 7px solid #890412;
  font-size: 2.2rem;
}
@media only screen and (max-width: 576px) {
  .pr__box .pr-box__list .pr-box__item .pr-box__content .pr-box__btn .btn-cv a {
    font-size: 1.8rem;
  }
}
.pr__box .pr-box__list .pr-box__item .pr-box__content .pr-box__btn .btn-cv a i {
  padding-left: 1rem;
}
.pr__box .pr-box__text-caution {
  margin-top: 0;
}
.pr__box .pr-box__text-caution span {
  display: block;
  text-align: left;
}

/* ------------------------------------------------- *
*        ＠コンテンツコラム
* ------------------------------------------------- */
.contents-column__section {
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  padding: 4rem 0;
}
@media only screen and (max-width: 576px) {
  .contents-column__section {
    width: 100%;
    padding: 2rem 0;
  }
}
.contents-column__section .wrapper__inner {
  margin: 0 auto 2rem;
  background: #fff;
  padding: 2rem;
  box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.1);
}
.contents-column__section .contents-column__title {
  background: #1b53c2;
  color: #fff;
  display: grid;
  font-size: 2.4rem;
  padding: 1rem;
  margin-bottom: 2rem;
  text-align: center;
}
@media only screen and (max-width: 576px) {
  .contents-column__section .contents-column__title {
    margin-bottom: 1rem;
    font-size: 2rem;
  }
}
.contents-column__section .contents-column__title .contents__sub-text {
  text-align: center;
  padding: 0.5rem 2rem;
  font-size: 1.8rem;
  border-bottom: 1px dotted #fff;
  color: #fff;
  box-sizing: border-box;
  margin-bottom: 1rem;
}
@media only screen and (max-width: 576px) {
  .contents-column__section .contents-column__title .contents__sub-text {
    font-size: 1.6rem;
  }
}
.contents-column__section .contents-column__title .contents__sub-text i {
  color: #ffe616;
  font-size: 2.2rem;
  padding-right: 1rem;
}
.contents-column__section .contents-column__content .contents-column__text {
  font-size: 1.6rem;
  margin-bottom: 1rem;
}
@media only screen and (max-width: 576px) {
  .contents-column__section .contents-column__content .contents-column__text {
    padding: 1rem;
  }
}
.contents-column__section .contents-column__content .contents-column__text--bold {
  font-weight: bold;
}
.contents-column__section .contents-column__content .contents-column__text--red {
  color: #c11624;
  font-weight: bold;
}
.contents-column__section .contents-column__content .content-box {
  display: flex;
  justify-content: center;
  margin: 2rem 0 1rem;
}
@media only screen and (max-width: 576px) {
  .contents-column__section .contents-column__content .content-box {
    display: block;
    margin-top: 0;
  }
}
.contents-column__section .contents-column__content .content-box .content-box__item {
  margin: 0 1rem;
  width: 33%;
}
@media only screen and (max-width: 576px) {
  .contents-column__section .contents-column__content .content-box .content-box__item {
    border-top: 1px solid #1b53c2;
    padding: 2rem 1rem;
    margin: 0;
    width: 100%;
  }
  .contents-column__section .contents-column__content .content-box .content-box__item .box__item--inner {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
.contents-column__section .contents-column__content .content-box .content-box__item .content-box__title {
  font-size: 2rem;
  color: #1b53c2;
  text-align: center;
}
@media only screen and (max-width: 576px) {
  .contents-column__section .contents-column__content .content-box .content-box__item .content-box__title {
    font-size: 1.8rem;
    margin: 0.5rem auto 1rem;
  }
}
.contents-column__section .contents-column__content .content-box .content-box__item .content-box__image {
  width: 80%;
  margin: 0 auto 1rem;
}
.contents-column__section .contents-column__content .content-box .content-box__item .content-box__image img {
  width: 100%;
}
@media only screen and (max-width: 576px) {
  .contents-column__section .contents-column__content .content-box .content-box__item .content-box__image {
    width: 35%;
    margin: 0 0.5rem 0 0;
  }
}
.contents-column__section .contents-column__content .content-box .content-box__item .content-box__text {
  font-size: 1.4rem;
}
@media only screen and (max-width: 576px) {
  .contents-column__section .contents-column__content .content-box .content-box__item .content-box__text {
    width: 65%;
    font-size: 1.2rem;
  }
}

.contents-column__section--preparation .contents-column__content .contents-column__text {
  margin-bottom: 4rem;
}
.contents-column__section--preparation .contents-column__content .content-box .content-box__item {
  border: 1px solid #1b53c2;
  padding: 4rem 2rem 2rem;
  margin: 0 0.5rem;
  position: relative;
}
@media only screen and (max-width: 576px) {
  .contents-column__section--preparation .contents-column__content .content-box .content-box__item {
    border: none;
    border-top: 1px solid #1b53c2;
    padding: 2rem 2rem 6rem;
    margin: 0;
  }
}
.contents-column__section--preparation .contents-column__content .content-box .content-box__item .content-box__number {
  position: absolute;
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
  width: 40px;
  height: 40px;
  background: #1b53c2;
  border-radius: 50%;
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
  line-height: 43px;
  color: #fff;
}
.contents-column__section--preparation .contents-column__content .content-box .content-box__item .content-box__title {
  color: #1b53c2;
}

.contents-column__section--step .contents-column__title {
  background: #f15518;
}
.contents-column__section--step .step-box {
  display: flex;
  justify-content: center;
}
.contents-column__section--step .step-box .step-box__item {
  width: 33%;
  margin: 0 0.5rem;
  border: 1px solid #f15518;
  border-radius: 1rem;
}
.contents-column__section--step .step-box .step-box__item .step-box__number {
  background: #f15518;
  border-radius: 1rem 1rem 0 0;
  color: #fff;
  text-align: center;
  font-size: 1.8rem;
  padding: 0.5rem;
  font-weight: bold;
}
.contents-column__section--step .step-box .step-box__item .step-box__image {
  width: 80%;
  margin: 1rem auto;
}
.contents-column__section--step .step-box .step-box__item .step-box__text {
  padding: 1rem;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
}
@media only screen and (max-width: 576px) {
  .contents-column__section--step .step-box .step-box__item .step-box__text {
    font-size: 1.4rem;
  }
}

@media only screen and (max-width: 576px) {
  .column-contents__section--bitcoin {
    padding: 0 1rem;
  }
}
.column-contents__section--bitcoin .wrapper__inner {
  background: #f9fffe;
}
@media only screen and (max-width: 576px) {
  .column-contents__section--bitcoin .wrapper__inner {
    padding: 1rem;
  }
}
.column-contents__section--bitcoin .contents-column__title {
  background: #1aa385;
}
@media only screen and (max-width: 576px) {
  .column-contents__section--bitcoin .contents-column__title {
    font-size: 1.6rem;
  }
}
.column-contents__section--bitcoin .column-contents__step-head {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1rem;
}
.column-contents__section--bitcoin .column-contents__steps {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin-bottom: 2rem;
}
@media only screen and (max-width: 576px) {
  .column-contents__section--bitcoin .column-contents__steps {
    grid-template-columns: 1fr;
  }
}
.column-contents__section--bitcoin .column-contents__step-card {
  background: #fff;
  border-radius: 1.5rem;
  padding: 1.5rem;
}
.column-contents__section--bitcoin .column-contents__step-label {
  display: inline-flex;
  align-items: baseline;
  justify-content: center;
  gap: 0.4rem;
  background: #1aa385;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 500;
  padding: 0.5rem 1rem;
  border-radius: 1rem;
  margin-bottom: 0;
  flex-shrink: 0;
}
.column-contents__section--bitcoin .column-contents__step-num {
  font-size: 1.5rem;
  font-weight: 700;
}
.column-contents__section--bitcoin .column-contents__step-title {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 0;
}
.column-contents__section--bitcoin .column-contents__step-icon {
  width: 80px;
  height: 80px;
  background: #e8f7f2;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 1.4rem;
  font-size: 3.2rem;
}
.column-contents__section--bitcoin .column-contents__step-desc {
  font-size: 1.3rem;
  font-weight: bold;
}
.column-contents__section--bitcoin .column-contents__check-ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin-bottom: 1rem;
}
.column-contents__section--bitcoin .column-contents__check-ttl h2 {
  font-size: 3.2rem;
  font-weight: bold;
}
@media only screen and (max-width: 576px) {
  .column-contents__section--bitcoin .column-contents__check-ttl h2 {
    font-size: 1.8rem;
  }
}
.column-contents__section--bitcoin .column-contents__check-badge {
  background: #1aa385;
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
@media only screen and (max-width: 576px) {
  .column-contents__section--bitcoin .column-contents__check-badge {
    width: 35px;
    height: 35px;
    font-size: 0.7rem;
  }
}
.column-contents__section--bitcoin .column-contents__chart-area {
  background: #fff;
}
.column-contents__section--bitcoin .column-contents__chart-img {
  width: 90%;
  margin: auto;
}
.column-contents__section--bitcoin .column-contents__chart-img img {
  width: 100%;
  display: block;
}
.column-contents__section--bitcoin .column-contents__cite {
  text-align: right;
  font-size: 1rem;
  color: #878787;
  padding: 0.5rem 1.5rem;
}
.column-contents__section--bitcoin .column-contents__cite a {
  color: #1a6eb5;
}
.column-contents__section--bitcoin .column-contents__news {
  background: #fff;
  padding: 1.5rem;
}
.column-contents__section--bitcoin .column-contents__news p {
  font-size: 1.3rem;
  margin-bottom: 1rem;
}
.column-contents__section--bitcoin .column-contents__news p:last-child {
  margin-bottom: 0;
}
.column-contents__section--bitcoin .column-contents__law-box {
  font-weight: bold;
  border: 1px solid #1aa385;
  border-left: 5px solid #1aa385;
  padding: 1rem;
  margin: 1rem 0;
  font-size: 1.3rem;
}

/* ------------------------------------------------- *
*        ＠コラム一覧
* ------------------------------------------------- */
.featured-contents {
  background: #e1efff;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  padding-bottom: 4rem;
}
@media only screen and (max-width: 576px) {
  .featured-contents {
    width: 100%;
    background: #fff;
  }
}
.featured-contents .featured-contents__title {
  background: #1b53c2;
}
.featured-contents .featured-contents__title::after {
  border-top-color: #1b53c2;
}
.featured-contents .featured-contents__title .featured-contents__sub-text {
  width: 20%;
  background: #fff;
  color: #1b53c2;
}
@media only screen and (max-width: 576px) {
  .featured-contents .featured-contents__title .featured-contents__sub-text {
    width: 55%;
  }
}
.featured-contents .featured-contents__title .featured-contents__sub-text:before {
  top: 0;
  left: 0;
  border-width: 15px 0 15px 5px;
  border-color: transparent transparent transparent #1b53c2;
  border-style: solid;
}
.featured-contents .featured-contents__title .featured-contents__sub-text:after {
  top: 0;
  right: 0;
  border-width: 15px 5px 15px 0;
  border-color: transparent #1b53c2 transparent transparent;
  border-style: solid;
}
.featured-contents .featured-contents__lists {
  display: flex;
  margin: auto;
  background: #fff;
  padding: 2rem;
}
@media only screen and (max-width: 576px) {
  .featured-contents .featured-contents__lists {
    padding: 0;
  }
}
.featured-contents .featured-contents__lists .featured-contents__list {
  width: 48%;
  box-sizing: border-box;
  margin: 0 1rem;
}
.featured-contents .featured-contents__lists .featured-contents__list .featured-contents__list-title {
  color: #1b53c2;
  font-size: 1.8rem;
  text-align: center;
  margin-bottom: 1.5rem;
  border-bottom: 1px dotted #1b53c2;
}
.featured-contents .featured-contents__lists .featured-contents__list .featured-contents__items {
  list-style-type: none;
  padding: 0;
}
.featured-contents .featured-contents__lists .featured-contents__list .featured-contents__items .featured-contents__item {
  margin-bottom: 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px dotted #eee;
}
.featured-contents .featured-contents__lists .featured-contents__list .featured-contents__items .featured-contents__item a {
  text-decoration: none;
  color: #333;
}
.featured-contents .featured-contents__lists .featured-contents__list .featured-contents__items .featured-contents__item a:hover {
  text-decoration: underline;
}
.featured-contents .archive-link {
  margin: 1rem auto;
}
.featured-contents .archive-link a {
  font-size: 1.2rem;
  padding: 1rem;
  display: block;
  text-align: center;
  color: #333;
}
.featured-contents .archive-link a i {
  padding-left: 0.5rem;
}

/* ------------------------------------------------- *
*        ＠single
* ------------------------------------------------- */
.detail-box__item {
  margin: 3rem auto 5rem;
}
@media only screen and (max-width: 576px) {
  .detail-box__item {
    width: 95%;
  }
}
.detail-box__item .detail-box__title {
  background: #f3f3f3;
  padding: 2rem;
  margin-bottom: 2rem;
}
@media only screen and (max-width: 576px) {
  .detail-box__item .detail-box__title {
    padding: 1.5rem;
    margin-bottom: 1.5rem;
  }
}
.detail-box__item .detail-box__title h1, .detail-box__item .detail-box__title a {
  font-size: 3rem;
  color: #333;
}
@media only screen and (max-width: 576px) {
  .detail-box__item .detail-box__title h1, .detail-box__item .detail-box__title a {
    font-size: 2.4rem;
  }
}
.detail-box__item .detail-box__catch {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 2rem;
}
.detail-box__item .detail-box__main {
  display: flex;
  margin-bottom: 1.5rem;
}
@media only screen and (max-width: 576px) {
  .detail-box__item .detail-box__main {
    display: block;
  }
}
.detail-box__item .detail-box__main .detail-box__banner {
  width: 42%;
  margin-right: 1.5rem;
}
@media only screen and (max-width: 576px) {
  .detail-box__item .detail-box__main .detail-box__banner {
    width: 100%;
    margin: 0 auto 1rem;
  }
}
@media only screen and (max-width: 576px) {
  .detail-box__item .detail-box__main .detail-box__point dl dt {
    font-size: 1.4rem;
  }
}
.detail-box__item .detail-box__campaign dd {
  background: #fffbf1;
}
.detail-box__item .btn-cv {
  margin-bottom: 2rem;
}
.detail-box__item .btn-cv a {
  width: 100%;
}

.detail-box__content {
  margin-bottom: 4rem;
}
.detail-box__content h2 {
  font-size: 2.6rem;
  font-weight: bold;
  background: #1b53c2;
  color: #fff;
  padding: 2rem;
  margin: 4rem auto 2.5rem;
}
@media only screen and (max-width: 576px) {
  .detail-box__content h2 {
    font-size: 2rem;
    padding: 1.5rem 2rem;
    margin: 2rem auto 1.5rem;
  }
}
.detail-box__content h3 {
  font-size: 2.2rem;
  font-weight: bold;
  background: #e8f0ff;
  padding: 1.5rem;
  margin: 3rem 0 1.5rem;
}
@media only screen and (max-width: 576px) {
  .detail-box__content h3 {
    font-size: 1.8rem;
  }
}
.detail-box__content h4 {
  font-size: 1.8rem;
  font-weight: bold;
  color: #1b53c2;
  border-left: 5px solid #1b53c2;
  padding: 0.5rem 1.5rem;
  margin: 2rem 0 1.5rem;
}
.detail-box__content h5 {
  font-size: 1.6rem;
  color: #333;
  font-weight: bold;
  padding-left: 0.5rem;
  margin: 1.5rem 0 1rem;
  position: relative;
}
.detail-box__content h5::before {
  content: "▶";
  color: #1b53c2;
  margin-right: 0.5rem;
  font-size: 1.2rem;
}
.detail-box__content table {
  border: solid 1px #ccc;
  padding: 1rem;
  margin: 2rem 0;
  width: 80%;
}
@media only screen and (max-width: 576px) {
  .detail-box__content table {
    width: 100%;
  }
}
.detail-box__content table th, .detail-box__content table td {
  font-size: 1.4rem;
  padding: 0.5rem 1rem;
  border: solid 1px #ccc;
  text-align: left;
}
.detail-box__content table th {
  background: #f3f3f3;
}
.detail-box__content ul {
  padding: 2rem;
}
.detail-box__content ul li {
  margin: 0.5rem 0;
  font-weight: bold;
}
.detail-box__content p {
  font-size: 1.4rem;
}

/* ------------------------------------------------- *
*        ＠column
* ------------------------------------------------- */
.archive-column {
  margin: 4rem auto;
}

.archive-column__title {
  font-size: 2.2rem;
  text-align: center;
  margin-bottom: 1.5rem;
  padding-bottom: 1rem;
  border-bottom: 1px dotted #1b53c2;
  display: grid;
}
.archive-column__title i {
  padding-bottom: 1rem;
}

@media only screen and (max-width: 576px) {
  .archive-column__block {
    width: 90%;
    margin: auto;
  }
}
.archive-column__block .archive-column__list {
  border-bottom: 1px solid #f9f9f9;
  margin: 1rem 0;
  padding: 1rem 0 2rem;
}
.archive-column__block .archive-column__list dt {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 1rem;
}
@media only screen and (max-width: 576px) {
  .archive-column__block .archive-column__list dt {
    font-size: 1.5rem;
  }
}
.archive-column__block .archive-column__list dt i {
  padding-right: 0.5rem;
}

.column-single {
  margin: 4rem auto 8rem;
}
.column-single .time {
  font-size: 1.2rem;
  text-align: right;
  margin-bottom: 2rem;
}
.column-single h1 {
  font-size: 2.5rem;
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px dotted #1b53c2;
}
.column-single h2 {
  background: #1b53c2;
  border-radius: 5px;
  color: #fff;
  font-size: 2rem;
  line-height: 1.6;
  margin: 3rem 0 2rem;
  padding: 1rem 1.5rem;
}
.column-single h3 {
  background: #e1efff;
  border-bottom: 3px solid #1b53c2;
  font-size: 1.8rem;
  line-height: 1.6;
  margin: 3rem 0 2rem;
  padding: 1rem;
}
.column-single h4 {
  color: #1b53c2;
  font-size: 1.8rem;
  line-height: 1.6;
  margin: 3rem 0 2rem;
}
.column-single p {
  font-size: 1.6rem;
  margin-bottom: 1.5rem;
}
.column-single span {
  background: #ffe616;
  color: #f15518;
  font-weight: 700;
}
.column-single ul, .column-single ol {
  margin: 3rem 0;
  padding-left: 2rem;
}
.column-single ul li, .column-single ol li {
  font-size: 1.6rem;
  line-height: 1.8;
  margin-bottom: 1rem;
}
.column-single ul li:last-child, .column-single ol li:last-child {
  margin-bottom: 0;
}
.column-single dl dt {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
  padding: 0 0.5rem;
}
.column-single dl dd {
  background: #f9f9f9;
  border-radius: 5px;
  font-size: 1.6rem;
  margin-bottom: 3rem;
  padding: 1.5rem 2rem;
}
.column-single .waku {
  border: 2px solid #ddd;
  font-size: 1.6rem;
  line-height: 1.6;
  margin: 3rem 0;
  padding: 2rem 2.5rem;
}
.column-single .waku p {
  margin: 0;
}
.column-single .waku ul, .column-single .waku ol {
  margin: 0;
}
.column-single .waku li {
  list-style: disc;
}
.column-single table {
  border-collapse: collapse;
  margin: 3rem 0;
  width: 100%;
}
.column-single table th {
  background: #f9f9f9;
  border: #ddd solid 1px;
  font-size: 1.5rem;
  padding: 1.3rem 1rem;
}
.column-single table td {
  border: #f9f9f9 solid 1px;
  font-size: 1.5rem;
  padding: 1.3rem 1rem;
}
.column-single .box-point {
  border: 3px solid #1a3e86;
  border-radius: 5px;
  margin: 2rem 0;
}
.column-single .box-point dt {
  background: #1a3e86;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 700;
  padding: 1rem 1.5rem;
}
.column-single .box-point dd {
  padding: 1rem 1.5rem;
}
.column-single .box-point dd p:last-child {
  margin-bottom: 0;
}
.column-single .bg-gray {
  background: #f9f9f9;
  border: solid 1px #ddd;
  border-radius: 5px;
  margin: 2rem 0;
  padding: 2rem;
}
.column-single .bg-gray ul, .column-single .bg-gray ol {
  margin-left: 2rem;
}
.column-single .bg-gray ul li, .column-single .bg-gray ol li {
  font-size: 1.5rem;
  margin-bottom: 1.5rem;
}
.column-single .bg-gray ul li:last-child, .column-single .bg-gray ol li:last-child {
  margin-bottom: 0;
}
.column-single .bg-yellow {
  background: #ffffed;
  border: solid 1px #ffe89c;
  border-radius: 5px;
  margin: 2rem 0;
  padding: 2rem;
}
.column-single .bg-yellow ul, .column-single .bg-yellow ol {
  margin-left: 2rem;
}
.column-single .bg-yellow ul li, .column-single .bg-yellow ol li {
  font-size: 1.5rem;
  margin-bottom: 1.5rem;
}
.column-single .bg-yellow ul li:last-child, .column-single .bg-yellow ol li:last-child {
  margin-bottom: 0;
}

/* ------------------------------------------------- *
*        ＠LP（特徴別LP）
* ------------------------------------------------- */
.lp__wrapper {
  background: #f9f9f9;
}
.lp__wrapper .mainvisual {
  margin-bottom: 1.5rem;
}
.lp__wrapper .mainvisual .mainvisual__inner {
  margin: 0 auto;
  width: 800px;
}
@media only screen and (max-width: 576px) {
  .lp__wrapper .mainvisual .mainvisual__inner {
    width: 100%;
  }
}
.lp__wrapper .mainvisual .mainvisual__inner .title {
  color: #fff;
  background: #1b53c2;
  padding: 2rem;
  line-height: 1.4;
  margin-bottom: 2.5rem;
  text-align: center;
  font-size: 2.4rem;
  display: grid;
}
.lp__wrapper .mainvisual .mainvisual__inner .title .big {
  font-size: 3.2rem;
}
.lp__wrapper .mainvisual .mainvisual__inner .title .sub-text {
  width: 40%;
  background: #fff;
  margin: 0 auto 1rem;
  color: #1b53c2;
}
@media only screen and (max-width: 576px) {
  .lp__wrapper .mainvisual .mainvisual__inner .title .sub-text {
    width: 100%;
  }
}
.lp__wrapper .mainvisual .mainvisual__inner .title .sub-text:before {
  top: 0;
  left: 0;
  border-width: 15px 0 15px 5px;
  border-color: transparent transparent transparent #1b53c2;
  border-style: solid;
}
.lp__wrapper .mainvisual .mainvisual__inner .title .sub-text:after {
  top: 0;
  right: 0;
  border-width: 15px 5px 15px 0;
  border-color: transparent #1b53c2 transparent transparent;
  border-style: solid;
}
.lp__wrapper .wrapper__main {
  margin: 0 auto 5rem;
}
@media only screen and (max-width: 576px) {
  .lp__wrapper .wrapper__main {
    width: 100%;
  }
}
.lp__wrapper .wrapper__main .ranking__simple {
  background: none;
  padding: 0;
}
.lp__wrapper .wrapper__main .ranking__box {
  padding: 3rem 0 0;
  width: 100%;
  margin: auto;
}
.lp__wrapper .wrapper__main .ranking__box .ranking__title--img img {
  margin: 0 auto 0.5rem;
}
.lp__wrapper .wrapper__main .ranking__box .ranking-box__list {
  margin-bottom: 0;
}
.lp__wrapper .wrapper__main .pr__box, .lp__wrapper .wrapper__main .contents-column {
  background: none;
  padding: 0;
}
.lp__wrapper .comparison__wrapper {
  background: none;
  width: 700px;
  margin: 0 auto;
}
@media only screen and (max-width: 576px) {
  .lp__wrapper .comparison__wrapper {
    width: 100%;
  }
}

/* ------------------------------------------------- *
*        ＠page（固定ページ）
* ------------------------------------------------- */
.page {
  margin: 2rem 0 5rem;
}
@media only screen and (max-width: 576px) {
  .page {
    padding: 0 1.5rem;
  }
}
.page h1 {
  font-size: 2.5rem;
  line-height: 1.6;
  margin-bottom: 3rem;
}
.page h3 {
  border-left: 5px solid #1a3e86;
  font-size: 1.7rem;
  line-height: 1.6;
  margin: 3rem 0 2rem;
  padding: 0.2rem 1rem;
}
.page ul, .page ol {
  margin: 2rem 0 4rem;
  padding-left: 2rem;
}
.page ul li, .page ol li {
  font-size: 1.5rem;
  line-height: 1.8;
  margin-bottom: 1rem;
}
.page ul li:last-child, .page ol li:last-child {
  margin-bottom: 0;
}
.page p {
  margin-bottom: 1.5rem;
  font-size: 1.4rem;
}

/* ------------------------------------------------- *
*        ＠page（リファラー）
* ------------------------------------------------- */
.referrer {
  text-align: center;
}
.referrer .referrer__inner {
  padding: 10rem 0;
}
@media only screen and (max-width: 576px) {
  .referrer .referrer__inner {
    padding: 5rem 2rem;
  }
}
.referrer .referrer__logo {
  width: 40%;
  margin: 3rem auto;
  text-align: center;
}
@media only screen and (max-width: 576px) {
  .referrer .referrer__logo {
    width: 50%;
  }
}
.referrer .referrer__logo img {
  margin: 0 auto;
}
.referrer .referrer__text {
  font-size: 1.5rem;
}
.referrer .referrer__text h2 {
  margin-bottom: 1rem;
}
.referrer .referrer__loading {
  width: 10%;
  margin: auto;
}
@media only screen and (max-width: 576px) {
  .referrer .referrer__loading {
    width: 20%;
  }
}
.referrer .referrer__loading img {
  margin: 4rem auto;
}
.referrer p {
  color: #333;
}
.referrer .referrer__marker {
  text-decoration: underline;
  color: #1b53c2;
  font-weight: bold;
}