<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";
/**▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼　デバイス毎の条件分岐　▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼**/
/**▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲ デバイス毎の条件分岐（触らない） ▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲**/
/* ------------------------------------------------- *
 *        ＠LP
 * ------------------------------------------------- */
.mainvisual-wrapper {
  margin: auto;
  width: 1000px; }
  @media only screen and (max-width: 767px) {
    .mainvisual-wrapper {
      width: 100%; } }

.l-lp-mainvisual .mainvisual-bg {
  background: url(../img/visual/bg-title.png) center no-repeat, url(../img/visual/main-visual-cat-rank-bg.jpg) center no-repeat;
  background-size: 1000px 255px,cover;
  border-bottom: 1px solid #d42306;
  height: 255px;
  position: relative;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    .l-lp-mainvisual .mainvisual-bg {
      background: url(../img/visual/main-visual-cat-rank-bg-sp.jpg) center no-repeat;
      background-size: cover;
      height: 200px; } }
  .l-lp-mainvisual .mainvisual-bg .center {
    position: absolute;
    top: 48%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    font-weight: bold;
    width: 100%; }
    @media only screen and (max-width: 767px) {
      .l-lp-mainvisual .mainvisual-bg .center {
        top: 50%; } }
    .l-lp-mainvisual .mainvisual-bg .center .flex {
      display: flex;
      align-items: center;
      justify-content: space-around;
      width: 400px;
      margin: auto; }
      @media only screen and (max-width: 767px) {
        .l-lp-mainvisual .mainvisual-bg .center .flex {
          justify-content: flex-start;
          margin: 0 0 0 4rem;
          width: auto; } }
    .l-lp-mainvisual .mainvisual-bg .center .year {
      background: #bc3804;
      color: #fff;
      font-size: 2rem;
      padding: 0.8rem 2rem;
      border-radius: 25px;
      line-height: 1.4; }
      @media only screen and (max-width: 767px) {
        .l-lp-mainvisual .mainvisual-bg .center .year {
          font-size: 1.4rem;
          padding: 0.5rem 1rem;
          margin: auto 0.6rem; } }
    .l-lp-mainvisual .mainvisual-bg .center .subtitle {
      color: #bc3804;
      font-size: 5.3rem;
      line-height: 1.5; }
      @media only screen and (max-width: 767px) {
        .l-lp-mainvisual .mainvisual-bg .center .subtitle {
          font-size: 2.6rem; } }
    .l-lp-mainvisual .mainvisual-bg .center p.txt {
      color: #efe20e;
      font-size: 7rem;
      line-height: 1.1;
      text-shadow: 2px 2px 0 #c9252b, -2px -2px 0 #c9252b, -2px 2px 0 #c9252b, 2px -2px 0 #c9252b, 0px 2px 0 #c9252b,  0 -2px 0 #c9252b, -2px 0 0 #c9252b, 2px 0 0 #c9252b;
      letter-spacing: .1rem; }
      @media only screen and (max-width: 767px) {
        .l-lp-mainvisual .mainvisual-bg .center p.txt {
          font-size: 3.5rem;
          line-height: 1.2;
          padding: 1rem 3rem; } }

.description {
  margin-bottom: 2rem; }
  @media only screen and (max-width: 767px) {
    .description {
      background: #f7f9ff;
      border: solid 1px #dcdee3;
      border-radius: 5px;
      margin-bottom: 1rem;
      padding: 1rem; } }
  @media only screen and (max-width: 767px) {
    .description p {
      font-size: 1.4rem;
      line-height: 1.6; } }

.title-oomidashi {
  background: #666666;
  border-radius: 5px;
  color: #fff;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
  margin: 3rem 0;
  padding: 2rem;
  position: relative;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    .title-oomidashi {
      font-size: 1.8rem;
      padding: 1rem 1.5rem; } }
  .title-oomidashi::after {
    border-color: rgba(255, 85, 72, 0);
    border: solid transparent;
    border-top-color: #666666;
    border-width: 10px;
    content: " ";
    height: 0;
    left: 50%;
    margin-left: -10px;
    position: absolute;
    pointer-events: none;
    top: 100%;
    width: 0; }

.box-osusume {
  border: 4px solid #666666;
  border-radius: 6px;
  box-shadow: 0 1px 4px #ccc;
  margin: 3rem 0; }
  @media only screen and (max-width: 767px) {
    .box-osusume {
      margin: 2rem 0; } }
  .box-osusume .ttl-osusume {
    background: url(../img/icon/ico-osusume.png) 1rem 45% no-repeat #666666;
    background-size: 25px 25px;
    border-radius: 2px 2px 0 0;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 700;
    padding: .5rem 1rem .5rem 4.3rem; }
  .box-osusume .wrap {
    display: flex;
    padding: 1.5rem; }
    @media only screen and (max-width: 767px) {
      .box-osusume .wrap {
        padding: 1rem 1rem 1.5rem; } }
    .box-osusume .wrap .box-left {
      width: 30%; }
    .box-osusume .wrap .box-right {
      padding-left: 3rem;
      width: 70%; }
      @media only screen and (max-width: 767px) {
        .box-osusume .wrap .box-right {
          padding-left: 2rem; } }
      .box-osusume .wrap .box-right .title {
        font-size: 2.2rem;
        font-weight: 700;
        line-height: 1.3;
        margin-bottom: 1.5rem; }
        @media only screen and (max-width: 767px) {
          .box-osusume .wrap .box-right .title {
            font-size: 1.8rem;
            margin-bottom: 1rem; } }
      .box-osusume .wrap .box-right .catch {
        font-size: 1.8rem;
        font-weight: 700;
        line-height: 1.5;
        margin-bottom: 1.5rem; }
        @media only screen and (max-width: 767px) {
          .box-osusume .wrap .box-right .catch {
            font-size: 1.5rem;
            margin-bottom: 1rem; } }
        .box-osusume .wrap .box-right .catch span {
          font-size: 1.5rem;
          font-weight: normal; }
          @media only screen and (max-width: 767px) {
            .box-osusume .wrap .box-right .catch span {
              font-size: 1.3rem; } }
      .box-osusume .wrap .box-right .btn-cv {
        border-radius: 6px;
        box-shadow: 0 4px 0 #ac1800;
        overflow: hidden; }
        .box-osusume .wrap .box-right .btn-cv a {
          background: #d42306;
          background: linear-gradient(180deg, #e73b1f 50%, #d43706 100%);
          border-radius: 6px;
          box-shadow: 0 4px 0 #ac1800;
          bottom: 0;
          color: #fff;
          display: block;
          font-size: 2.2rem;
          font-weight: 700;
          padding: 1.8rem 1rem;
          position: relative;
          text-align: center;
          text-decoration: none; }
          @media only screen and (max-width: 767px) {
            .box-osusume .wrap .box-right .btn-cv a {
              font-size: 1.8rem; } }
          .box-osusume .wrap .box-right .btn-cv a::before {
            animation: shiny-btn1 3s ease-in-out infinite;
            background-color: #fff;
            content: '';
            display: inline-block;
            height: 100%;
            left: 0;
            position: absolute;
            top: -180px;
            width: 30px; }
@-webkit-keyframes shiny-btn1 {
  0% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0; }
  80% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0.5; }
  81% {
    -webkit-transform: scale(4) rotate(45deg);
    opacity: 1; }
  100% {
    -webkit-transform: scale(50) rotate(45deg);
    opacity: 0; } }
.lp .box-osusume .wrap {
  padding: 1.5rem 3rem;
  justify-content: space-between; }
  @media only screen and (max-width: 767px) {
    .lp .box-osusume .wrap {
      padding: 1rem 1rem 1.5rem; } }
  .lp .box-osusume .wrap .box-left {
    width: 25%; }
    @media only screen and (max-width: 767px) {
      .lp .box-osusume .wrap .box-left {
        width: 30%; } }
  .lp .box-osusume .wrap .box-right {
    padding-left: 0;
    width: 74%; }
    @media only screen and (max-width: 767px) {
      .lp .box-osusume .wrap .box-right {
        padding-left: 2rem;
        width: 70%; } }
    .lp .box-osusume .wrap .box-right .btn-cv {
      margin: auto;
      width: 70%; }
      @media only screen and (max-width: 767px) {
        .lp .box-osusume .wrap .box-right .btn-cv {
          width: 100%; } }

.block-ranking {
  margin-bottom: 6rem; }
  .block-ranking h5 {
    border-left: 5px solid #d42306;
    font-size: 1.8rem;
    margin: 4rem 0 2rem;
    padding: 0.5rem 1rem; }
  .block-ranking .box-spec {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    .block-ranking .box-spec table {
      width: 49%; }
      @media only screen and (max-width: 767px) {
        .block-ranking .box-spec table {
          width: 100%; } }
      .block-ranking .box-spec table .th-title {
        background: #d42306;
        color: #fff; }
      .block-ranking .box-spec table .th-main {
        width: 40%; }

.block-ranking.detail .box-rank .title h3 {
  padding-left: 0; }

.box-rank {
  border-radius: 6px;
  box-shadow: 0 1px 4px #ccc;
  margin-bottom: 2rem; }
  @media only screen and (max-width: 767px) {
    .box-rank {
      border: none;
      border-bottom: 1px solid #bfbfbf;
      border-top: 1px solid #bfbfbf; } }
  .box-rank .box {
    margin-bottom: 2rem;
    padding: 1rem 1.5rem 2.5rem; }
    @media only screen and (max-width: 767px) {
      .box-rank .box {
        margin-bottom: 0;
        padding: .5rem 1rem 2rem; } }
    .box-rank .box h4 {
      font-size: 1.8rem;
      line-height: 1.5;
      margin-bottom: 1.5rem; }
      @media only screen and (max-width: 767px) {
        .box-rank .box h4 {
          font-size: 1.3rem; } }
    .box-rank .box .reason {
      margin: 2rem 0 1.5rem; }
      .box-rank .box .reason dt {
        background: #1a3e86;
        color: #fff;
        font-size: 1.6rem;
        font-weight: 700;
        padding: 0.6rem 1rem;
        text-align: center; }
        @media only screen and (max-width: 767px) {
          .box-rank .box .reason dt {
            font-size: 1.4rem; } }
      .box-rank .box .reason dd {
        border: 1px solid #1a3e86;
        padding: 1.5rem; }
        @media only screen and (max-width: 767px) {
          .box-rank .box .reason dd {
            padding: 1rem; } }
        .box-rank .box .reason dd ul {
          background: none;
          padding: 0; }
  .box-rank .banner {
    padding: 0 1.5rem 1.5rem 0; }
  .box-rank .banner img {
    margin: 0 auto;
    display: block; }
  .box-rank .box-campaign dl {
    border-radius: 6px;
    outline: 2px solid #ff951e;
    outline-offset: -2px; }
    .box-rank .box-campaign dl dt {
      background: #ff951e;
      border-radius: 6px 6px 0 0;
      color: #fff;
      font-size: 1.6rem;
      font-weight: 700;
      padding: .5rem 1rem;
      text-align: center; }
    .box-rank .box-campaign dl dd {
      font-size: 1.5rem;
      font-weight: 700;
      margin-bottom: 1.5rem;
      padding: 1.5rem; }
  .box-rank .btn-tab {
    border-bottom: 4px solid #666;
    display: flex;
    margin-top: 1rem; }
    .box-rank .btn-tab .tab-btn {
      border: 1px solid #666;
      border-bottom: none;
      border-radius: 6px 6px 0 0;
      color: #666;
      cursor: pointer;
      font-size: 1.4rem;
      font-weight: 700;
      margin-right: .5rem;
      padding: .6rem 1rem; }
      .box-rank .btn-tab .tab-btn.active {
        background: #666;
        color: #fff; }
  .box-rank .tab-contents {
    display: none; }
    .box-rank .tab-contents.active {
      display: block; }
    .box-rank .tab-contents table {
      margin-top: 0; }
    .box-rank .tab-contents .table-spread th {
      font-size: 1.1rem;
      width: 12.5%; }
      @media only screen and (max-width: 767px) {
        .box-rank .tab-contents .table-spread th {
          font-size: 1rem; } }
    .box-rank .tab-contents .table-spread td {
      font-size: 1.3rem;
      vertical-align: top; }
      @media only screen and (max-width: 767px) {
        .box-rank .tab-contents .table-spread td {
          font-size: 1.2rem; } }
      .box-rank .tab-contents .table-spread td img {
        margin: 0 auto .5rem;
        width: 25px; }
      .box-rank .tab-contents .table-spread td small {
        font-size: 1rem; }
    .box-rank .tab-contents .text-caution {
      font-size: 1rem;
      line-height: 1.3; }
    .box-rank .tab-contents .table-swap td {
      font-size: 1.3rem;
      vertical-align: top; }
      @media only screen and (max-width: 767px) {
        .box-rank .tab-contents .table-swap td {
          font-size: 1.2rem; } }
      .box-rank .tab-contents .table-swap td img {
        margin: 0 auto .5rem;
        width: 25px; }
    .box-rank .tab-contents .box-review {
      background: #f2f4f7;
      margin-bottom: 1.5rem;
      padding: 1.5rem; }
      @media only screen and (max-width: 767px) {
        .box-rank .tab-contents .box-review {
          background: none;
          padding: 0; } }
      .box-rank .tab-contents .box-review li {
        background: #fff;
        border-radius: 5px;
        box-shadow: 0 1px 3px #eee;
        margin-bottom: 1.5rem;
        padding: 2rem; }
        @media only screen and (max-width: 767px) {
          .box-rank .tab-contents .box-review li {
            background: #f2f4f7;
            padding: 1.5rem; } }
        .box-rank .tab-contents .box-review li:last-child {
          margin-bottom: 0; }
        .box-rank .tab-contents .box-review li dl {
          display: flex;
          flex-wrap: wrap; }
          .box-rank .tab-contents .box-review li dl dt {
            color: #666;
            font-size: 1.2rem;
            padding-right: 1.5rem;
            text-align: center;
            width: 15%; }
            @media only screen and (max-width: 767px) {
              .box-rank .tab-contents .box-review li dl dt {
                font-size: 1rem;
                width: 20%; } }
            .box-rank .tab-contents .box-review li dl dt .img-user img {
              margin: 0 auto .5rem; }
          .box-rank .tab-contents .box-review li dl dd {
            font-size: 1.5rem;
            line-height: 1.8;
            width: 85%; }
            @media only screen and (max-width: 767px) {
              .box-rank .tab-contents .box-review li dl dd {
                font-size: 1.4rem;
                width: 80%; } }
  .box-rank .text-amendment {
    font-size: 1.4rem;
    line-height: 1.6; }
  .box-rank .title {
    background: #d42306;
    border-radius: 6px 6px 0 0;
    margin-bottom: 1rem;
    padding: 1rem 1.5rem; }
    @media only screen and (max-width: 767px) {
      .box-rank .title {
        padding: 1rem; } }
    .box-rank .title h3 {
      color: #fff;
      font-size: 2.8rem;
      line-height: 1.8;
      padding-left: 6.5rem;
      position: relative; }
      @media only screen and (max-width: 767px) {
        .box-rank .title h3 {
          font-size: 2rem;
          padding-left: 4rem; } }
      .box-rank .title h3 .icon-rank {
        display: block;
        left: 0;
        position: absolute;
        top: .5rem; }
        @media only screen and (max-width: 767px) {
          .box-rank .title h3 .icon-rank {
            top: 0;
            width: 40px; } }
        .box-rank .title h3 .icon-rank img {
          display: inline-block; }
          @media only screen and (max-width: 767px) {
            .box-rank .title h3 .icon-rank img {
              width: 75%; } }
      .box-rank .title h3 a {
        color: #fff;
        text-decoration: none; }
    .box-rank .title h3.ranking-none {
      padding-left: .5rem; }
      @media only screen and (max-width: 767px) {
        .box-rank .title h3.ranking-none {
          padding-left: .5rem; } }
    .box-rank .title .star-pc {
      color: #fff;
      font-size: 1.4rem;
      font-weight: 700;
      line-height: 1.2; }
      @media only screen and (max-width: 767px) {
        .box-rank .title .star-pc {
          display: none; } }
      .box-rank .title .star-pc strong {
        color: #fff;
        font-size: 2.2rem; }
        @media only screen and (max-width: 767px) {
          .box-rank .title .star-pc strong {
            font-size: 1.5rem; } }
        .box-rank .title .star-pc strong img {
          display: inline-block;
          margin: .5rem 1rem 0 0;
          width: 65%; }
  .box-rank .catch {
    background: #fcf499;
    margin-bottom: 1rem;
    padding: 1.3rem 1.5rem; }
    @media only screen and (max-width: 767px) {
      .box-rank .catch {
        padding: 1rem 0.8rem; } }
    .box-rank .catch small {
      font-size: 1.2rem; }
  .box-rank .point dl {
    border-radius: 6px;
    outline: 2px solid #148656;
    outline-offset: -2px; }
    .box-rank .point dl dt {
      background: #148656;
      border-radius: 6px 6px 0 0;
      color: #fff;
      font-size: 1.6rem;
      font-weight: 700;
      padding: .5rem 1rem;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        .box-rank .point dl dt {
          font-size: 1.2rem; } }
      .box-rank .point dl dt span {
        padding-left: 3rem;
        position: relative; }
        .box-rank .point dl dt span img {
          left: 0;
          position: absolute; }
    .box-rank .point dl dd {
      margin-bottom: .5rem;
      padding: 1.5rem; }
      @media only screen and (max-width: 767px) {
        .box-rank .point dl dd {
          padding: 1rem; } }
      .box-rank .point dl dd li {
        background: url(../img/icon/icon-check.png) left -0.3rem no-repeat;
        background-size: 28px 28px;
        font-size: 1.5rem;
        line-height: 1.5;
        list-style: none;
        margin-bottom: 1rem;
        padding: 0 0 0 3rem; }
        @media only screen and (max-width: 767px) {
          .box-rank .point dl dd li {
            background: url(../img/icon/icon-check.png) -5px top no-repeat;
            background-size: 20px 20px;
            font-size: 1.3rem;
            padding: 0 0 0 1.5rem; } }
        .box-rank .point dl dd li:last-child {
          margin-bottom: 0; }
  .box-rank .point ul {
    margin: 0;
    padding-left: 0; }
  .box-rank table {
    border-left: 1px solid #bfbfbf;
    border-top: 1px solid #bfbfbf;
    margin-bottom: 1.5rem;
    margin-top: 2rem;
    width: 100%; }
    .box-rank table th {
      background: #f8f8f8;
      border-bottom: 1px solid #bfbfbf;
      border-right: 1px solid #bfbfbf;
      font-size: 1.2rem;
      font-weight: 700;
      padding: .5rem;
      text-align: center;
      width: 14.2%;
      vertical-align: middle; }
      @media only screen and (max-width: 767px) {
        .box-rank table th {
          font-size: 1.1rem;
          padding: .5rem .2rem; } }
      .box-rank table th small {
        font-size: 1.1rem; }
        @media only screen and (max-width: 767px) {
          .box-rank table th small {
            font-size: 1rem;
            font-weight: normal; } }
      .box-rank table th.th-sub {
        background: #fcfcfc;
        font-size: 1.1rem;
        font-weight: normal; }
    .box-rank table td {
      border-bottom: 1px solid #bfbfbf;
      border-right: 1px solid #bfbfbf;
      font-size: 1.4rem;
      padding: .8rem 1rem;
      text-align: center;
      vertical-align: middle; }
      @media only screen and (max-width: 767px) {
        .box-rank table td {
          font-size: 1.2rem;
          padding: .5rem .2rem; } }
      .box-rank table td .img-icon {
        margin: auto;
        width: 30px; }
      .box-rank table td .icon {
        margin: 0 auto; }
      .box-rank table td.text-rate {
        color: #ab0419;
        font-size: 2.4rem;
        font-weight: 700; }
        .box-rank table td.text-rate small {
          font-size: 1.5rem; }
      .box-rank table td small {
        font-size: 1rem; }
  .box-rank .text-caution {
    font-size: 1rem;
    line-height: 1.3; }
  .box-rank .table-commission th {
    font-size: 1.3rem;
    width: 20%; }
    @media only screen and (max-width: 767px) {
      .box-rank .table-commission th {
        font-size: 1.1rem; } }
    .box-rank .table-commission th small {
      font-size: 1rem; }
      @media only screen and (max-width: 767px) {
        .box-rank .table-commission th small {
          display: block; } }
  .box-rank .table-commission td {
    font-weight: 700; }
    @media only screen and (max-width: 767px) {
      .box-rank .table-commission td {
        font-size: 1.1rem;
        padding: .5rem; } }
    .box-rank .table-commission td strong {
      font-size: 1.8rem; }
      @media only screen and (max-width: 767px) {
        .box-rank .table-commission td strong {
          font-size: 1.5rem; } }
  .box-rank .table-information th {
    font-size: 1.5rem;
    vertical-align: middle; }
    @media only screen and (max-width: 767px) {
      .box-rank .table-information th {
        font-size: 1.1rem; } }
  .box-rank .table-information td {
    text-align: left;
    vertical-align: middle; }
    @media only screen and (max-width: 767px) {
      .box-rank .table-information td {
        font-size: 1.2rem; } }
  .box-rank .comment {
    border: 1px solid #666666;
    border-radius: 6px; }
    .box-rank .comment dt {
      background-color: #666666;
      border-radius: 6px 6px 0 0;
      color: #fff;
      font-size: 1.6rem;
      font-weight: 700;
      padding: .5rem 1rem;
      position: relative;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        .box-rank .comment dt {
          font-size: 1.3rem;
          padding: .8rem 1rem; } }
      .box-rank .comment dt span {
        padding-left: 3.5rem;
        position: relative; }
        .box-rank .comment dt span img {
          left: 0;
          position: absolute; }
      .box-rank .comment dt::after {
        border: solid transparent;
        border-color: rgba(128, 195, 77, 0);
        border-top-color: #666666;
        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: 767px) {
          .box-rank .comment dt::after {
            border-width: 6px;
            margin-left: -6px; } }
    .box-rank .comment dd {
      font-size: 1.4rem;
      line-height: 1.5;
      padding: 2rem 1.5rem; }
      @media only screen and (max-width: 767px) {
        .box-rank .comment dd {
          font-size: 1.3rem;
          padding: 1.5rem 1rem 1rem; } }
      .box-rank .comment dd ul {
        padding-left: 2rem; }
        @media only screen and (max-width: 767px) {
          .box-rank .comment dd ul {
            padding-left: 1.5rem; } }
        .box-rank .comment dd ul li {
          margin-bottom: 1rem; }
          @media only screen and (max-width: 767px) {
            .box-rank .comment dd ul li {
              font-size: 1.3rem;
              margin-bottom: .5rem; } }
          .box-rank .comment dd ul li:last-child {
            margin-bottom: 0; }
  .box-rank .campaign {
    margin: 2rem 0; }
    @media only screen and (max-width: 767px) {
      .box-rank .campaign {
        margin: 2rem 0 1rem; } }
    .box-rank .campaign dt {
      background: #8217c0;
      color: #fff;
      font-size: 1.5rem;
      font-weight: 700;
      padding: .5rem 1rem;
      position: relative;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        .box-rank .campaign dt {
          font-size: 1.4rem; } }
      .box-rank .campaign dt::before, .box-rank .campaign dt::after {
        content: '';
        height: 0px;
        position: absolute;
        width: 0px; }
      .box-rank .campaign dt::before {
        border-width: 16px 0px 16px 8px;
        border-color: transparent transparent transparent #fff;
        border-style: solid;
        left: 0;
        top: 0; }
      .box-rank .campaign dt::after {
        border-width: 16px 8px 16px 0px;
        border-color: transparent #fff transparent transparent;
        border-style: solid;
        right: 0;
        top: 0; }
    .box-rank .campaign dd {
      font-size: 1.6rem;
      font-weight: 700;
      padding: 1.5rem 0 0; }
      @media only screen and (max-width: 767px) {
        .box-rank .campaign dd {
          font-size: 1.4rem;
          padding: 1rem 0 0; } }
      .box-rank .campaign dd span {
        font-size: 1.4rem;
        font-weight: normal; }
        @media only screen and (max-width: 767px) {
          .box-rank .campaign dd span {
            font-size: 1.2rem; } }
  .box-rank .review {
    background: #f7f7f7;
    border: 1px solid #ccc;
    border-radius: 5px;
    margin-bottom: 1.5rem;
    padding: 1rem 2rem; }
    @media only screen and (max-width: 767px) {
      .box-rank .review {
        padding: 1.3rem 1rem; } }
    @media only screen and (max-width: 767px) {
      .box-rank .review .list-review {
        position: relative; } }
    @media only screen and (max-width: 767px) {
      .box-rank .review .list-review li img {
        padding-right: 1rem; } }
    .box-rank .review .list-review .box-review {
      padding: 0 1rem 0 1.5rem; }
      @media only screen and (max-width: 767px) {
        .box-rank .review .list-review .box-review {
          padding: 0; } }
    .box-rank .review .reviewer {
      font-size: 1.2rem;
      font-weight: 700;
      margin-bottom: .8rem; }
      .box-rank .review .reviewer small {
        font-size: 1.1rem;
        font-weight: normal; }
      .box-rank .review .reviewer .star {
        display: inline-block;
        margin: 0 0 0 1rem;
        width: 9rem; }
        @media only screen and (max-width: 767px) {
          .box-rank .review .reviewer .star {
            margin: 0 0 0 .5rem; } }
        .box-rank .review .reviewer .star img {
          display: inline-block; }
          @media only screen and (max-width: 767px) {
            .box-rank .review .reviewer .star img {
              padding-right: 0; } }
      .box-rank .review .reviewer strong {
        color: #d40720;
        font-size: 1.4rem;
        margin-left: 1rem; }
        @media only screen and (max-width: 767px) {
          .box-rank .review .reviewer strong {
            margin-left: .5rem; } }
    .box-rank .review .review_purpose {
      display: flex;
      margin: .5rem 0;
      flex-wrap: wrap; }
      .box-rank .review .review_purpose dt {
        background: #1a3e86;
        border-radius: 4px;
        color: #fff;
        font-size: 1.2rem;
        font-weight: 700;
        margin-right: 1%;
        text-align: center;
        width: 6%; }
        @media only screen and (max-width: 767px) {
          .box-rank .review .review_purpose dt {
            margin-right: 2%;
            width: 12%; } }
      .box-rank .review .review_purpose dd {
        width: 93%; }
        @media only screen and (max-width: 767px) {
          .box-rank .review .review_purpose dd {
            width: 86%; } }
    .box-rank .review p {
      font-size: 1.3rem; }
    .box-rank .review .btn-review {
      position: relative;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        .box-rank .review .btn-review {
          position: inherit; } }
      .box-rank .review .btn-review a {
        background: #023691;
        background: linear-gradient(180deg, #023691 0%, #022a77 100%);
        border-radius: 6px;
        bottom: 0;
        color: #fff;
        font-size: 1.4rem;
        font-weight: 700;
        height: 3.5rem;
        left: 0;
        margin: auto;
        margin-left: 1rem;
        padding: 1rem;
        position: absolute;
        right: 0;
        text-decoration: none;
        top: 0; }
        @media only screen and (max-width: 767px) {
          .box-rank .review .btn-review a {
            border-radius: 5px;
            bottom: inherit;
            font-size: 1.1rem;
            height: auto;
            left: inherit;
            margin-left: 0;
            padding: .5rem 1rem;
            top: -.3rem; } }
  .box-rank .box-btn {
    justify-content: center;
    margin: 2rem 0; }
    .box-rank .box-btn .btn-shosai a {
      border: 1px solid #1a3e86;
      border-radius: 6px;
      bottom: 0;
      color: #1a3e86;
      display: block;
      font-size: 1.8rem;
      font-weight: 700;
      margin-top: .3rem;
      padding: 1.8rem 1rem;
      text-align: center;
      text-decoration: none;
      width: 90%; }
      @media only screen and (max-width: 767px) {
        .box-rank .box-btn .btn-shosai a {
          font-size: 1.4rem;
          padding: 2rem 1rem; } }
    .box-rank .box-btn .btn-cv {
      border-radius: 6px;
      overflow: hidden; }
      .box-rank .box-btn .btn-cv a {
        background: #171fc0;
        background: linear-gradient(180deg, #171fc0 50%, #13199c 100%);
        border-radius: 6px;
        box-shadow: 0 4px 0 #0a0f7b;
        bottom: 0;
        color: #fff;
        display: block;
        font-size: 2.2rem;
        font-weight: 700;
        padding: 1.8rem 1rem;
        position: relative;
        text-align: center;
        text-decoration: none; }
        @media only screen and (max-width: 767px) {
          .box-rank .box-btn .btn-cv a {
            font-size: 1.8rem; } }
        .box-rank .box-btn .btn-cv a::before {
          animation: shiny-btn1 3s ease-in-out infinite;
          background-color: #fff;
          content: '';
          display: inline-block;
          height: 100%;
          left: 0;
          position: absolute;
          top: -180px;
          width: 30px; }
@-webkit-keyframes shiny-btn1 {
  0% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0; }
  80% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0.5; }
  81% {
    -webkit-transform: scale(4) rotate(45deg);
    opacity: 1; }
  100% {
    -webkit-transform: scale(50) rotate(45deg);
    opacity: 0; } }
  .box-rank .btn-cv-long {
    border-radius: 6px;
    box-shadow: 0 4px 0 #0a0f7b;
    margin: 2rem auto 1rem;
    overflow: hidden;
    width: 70%; }
    @media only screen and (max-width: 767px) {
      .box-rank .btn-cv-long {
        width: 100%; } }
    .box-rank .btn-cv-long a {
      background: #171fc0;
      background: linear-gradient(180deg, #171fc0 50%, #13199c 100%);
      border-radius: 6px;
      box-shadow: 0 4px 0 #0a0f7b;
      bottom: 0;
      color: #fff;
      display: block;
      font-size: 2.2rem;
      font-weight: 700;
      padding: 1.8rem 1rem;
      position: relative;
      text-align: center;
      text-decoration: none; }
      @media only screen and (max-width: 767px) {
        .box-rank .btn-cv-long a {
          font-size: 1.8rem; } }
      .box-rank .btn-cv-long a::before {
        animation: shiny-btn1 3s ease-in-out infinite;
        background-color: #fff;
        content: '';
        display: inline-block;
        height: 100%;
        left: 0;
        position: absolute;
        top: -180px;
        width: 30px; }
@-webkit-keyframes shiny-btn1 {
  0% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0; }
  80% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0.5; }
  81% {
    -webkit-transform: scale(4) rotate(45deg);
    opacity: 1; }
  100% {
    -webkit-transform: scale(50) rotate(45deg);
    opacity: 0; } }
  .box-rank .btn-shosai.w-100 {
    margin: 2rem auto 0; }
    .box-rank .btn-shosai.w-100 a {
      border: 1px solid #1a3e86;
      border-radius: 6px;
      bottom: 0;
      color: #1a3e86;
      display: block;
      font-size: 1.8rem;
      font-weight: 700;
      margin-top: .3rem;
      padding: 1.8rem 1rem;
      text-align: center;
      text-decoration: none;
      width: 100%; }
      @media only screen and (max-width: 767px) {
        .box-rank .btn-shosai.w-100 a {
          font-size: 1.4rem;
          padding: 1.5rem 1rem; } }

.box-rank.osusume .box {
  padding: 1rem 1.5rem; }
  @media only screen and (max-width: 767px) {
    .box-rank.osusume .box {
      padding: .5rem 1rem 2rem; } }
.box-rank.osusume .title h3 .icon-rank {
  left: -2.1rem;
  top: -1.6rem;
  width: 80px; }
  @media only screen and (max-width: 767px) {
    .box-rank.osusume .title h3 .icon-rank {
      left: -1.6rem;
      top: -1.4rem;
      width: 90px; } }
.box-rank.osusume .banner {
  padding: 0 1.5rem 0 0; }
.box-rank.osusume .list-point {
  margin: 0;
  padding-left: 0; }
  .box-rank.osusume .list-point li {
    background: url(../img/icon/icon-check.png) left 0.5rem no-repeat;
    background-size: 28px 28px;
    border-bottom: 1px dotted #CCC;
    margin-bottom: 0;
    padding: 0.6rem 0 0.6rem 3rem; }
    @media only screen and (max-width: 767px) {
      .box-rank.osusume .list-point li {
        background: url(../img/icon/icon-check.png) left 0.4rem no-repeat;
        background-size: 25px 25px;
        padding: .4rem 0 .4rem 2.5rem;
        font-size: 1.3rem; } }
.box-rank.osusume .campaign {
  margin: 2rem 0 0; }
  .box-rank.osusume .campaign dt {
    background: #8217c0; }
.box-rank.osusume .table-l {
  padding-right: 1rem; }
  @media only screen and (max-width: 767px) {
    .box-rank.osusume .table-l {
      padding-right: 0; } }
.box-rank.osusume .table-r {
  padding-left: 1rem; }
  @media only screen and (max-width: 767px) {
    .box-rank.osusume .table-r {
      padding-left: 0; } }
.box-rank.osusume table {
  margin: 2rem 0 0; }
  .box-rank.osusume table th {
    font-size: 1.1rem;
    padding: 0.2rem 0.3rem; }
    .box-rank.osusume table th small {
      font-size: 1rem; }
  .box-rank.osusume table .th-sub {
    font-size: 1rem; }
  .box-rank.osusume table td {
    padding: .5rem .3rem; }
    @media only screen and (max-width: 767px) {
      .box-rank.osusume table td {
        font-size: 1.2rem; } }

.txt-caution {
  margin: 2rem auto; }
  .txt-caution li {
    color: #666;
    font-size: 1rem;
    line-height: 1.3;
    list-style: none;
    margin-bottom: .3rem; }

.txt-caution-adjustment {
  margin: 3rem auto -1rem; }
  @media only screen and (max-width: 767px) {
    .txt-caution-adjustment {
      margin: 1rem auto -1rem; } }

.box-survey {
  color: #888;
  margin-bottom: 4rem; }
  @media only screen and (max-width: 767px) {
    .box-survey {
      padding: 0 1rem; } }
  .box-survey dt {
    font-size: 1.2rem;
    font-weight: 500;
    margin-bottom: 0.5rem; }
  .box-survey dd {
    font-size: 1.2rem; }
  .box-survey ul {
    margin-left: 2rem; }
    .box-survey ul li {
      font-size: 1.2rem;
      list-style: disc; }

.title-ranking {
  background: #d42306;
  border-bottom: none;
  color: #fff;
  display: block;
  font-size: 2rem;
  margin: 3rem 0 2rem;
  padding: 2rem 1.5rem;
  position: relative;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    .title-ranking {
      padding: 1.5rem; } }
  .title-ranking span {
    padding-left: 3rem;
    position: relative; }
  .title-ranking img {
    display: inline-block;
    margin-right: .5rem;
    position: absolute;
    width: 24px; }
  @media only screen and (max-width: 767px) {
    .title-ranking {
      font-size: 1.8rem;
      margin: 0 0 2rem;
      white-space: nowrap; } }
  .title-ranking::after {
    border: solid transparent;
    border-color: rgba(128, 195, 77, 0);
    border-top-color: #d42306;
    border-width: 8px;
    content: '';
    height: 0;
    left: 50%;
    margin-left: -8px;
    position: absolute;
    pointer-events: none;
    top: 100%;
    width: 0; }

.block-ranking.popular {
  border: 8px solid #666666;
  outline: 1px solid #1b53c2;
  outline-offset: -8px; }
  .block-ranking.popular .box-rank {
    border: none;
    box-shadow: none;
    margin-bottom: 1rem; }
  .block-ranking.popular .title {
    background: #666666;
    border-bottom: 5px solid #1b53c2;
    margin-bottom: 1rem;
    padding: 1.2rem 1.5rem .6rem; }
    @media only screen and (max-width: 767px) {
      .block-ranking.popular .title {
        padding: 1rem 1.5rem; } }
  .block-ranking.popular .box {
    border-bottom: none;
    margin-bottom: 0;
    padding: .5rem 1.5rem 2rem; }

.block-review .box-rank {
  border: none;
  box-shadow: none; }

.lp-content .article-txtarea-waku {
  border-radius: 6px;
  box-shadow: 0 1px 4px #ccc;
  margin-bottom: 3rem;
  padding: 1rem 1.5rem 2.5rem; }
  .lp-content .article-txtarea-waku .title-tyumidashi {
    border-bottom: 1px solid #666666;
    border-left: 6px solid #666666;
    font-size: 2rem;
    font-weight: 700;
    margin: 3rem 0 2rem;
    padding: 1rem; }
    .lp-content .article-txtarea-waku .title-tyumidashi:first-child {
      margin-top: 1.5rem; }
.lp-content .section-title-big {
  background: #d42306;
  border-radius: 6px 6px 0 0;
  color: #fff;
  font-size: 2.2rem;
  font-weight: 700;
  margin: 4rem 0 0;
  padding: 2rem; }
  @media only screen and (max-width: 767px) {
    .lp-content .section-title-big {
      font-size: 2rem;
      padding: 1.5rem; } }
.lp-content .title-txt-big {
  border-top: 1px solid #d42306;
  border-bottom: 1px solid #d42306;
  color: #d42306;
  font-size: 2.4rem;
  font-weight: 700;
  margin: 3rem 0 0;
  padding: 1.5rem;
  text-align: center; }
.lp-content .title-sub {
  color: #d42306;
  font-size: 1.8rem;
  font-weight: 700;
  margin: 2.5rem 0 1.5rem; }
.lp-content p {
  margin-bottom: 1.5rem; }
.lp-content table {
  border-top: 1px solid #DDD;
  border-left: 1px solid #DDD;
  margin: 2rem 0 3rem;
  width: 100%; }
  .lp-content table th {
    background: #F3F3F3;
    border-bottom: 1px solid #DDD;
    border-right: 1px solid #DDD;
    font-size: 1.4rem;
    padding: 1rem; }
  .lp-content table td {
    border-bottom: 1px solid #DDD;
    border-right: 1px solid #DDD;
    font-size: 1.4rem;
    padding: 1rem; }
.lp-content .txt-matome {
  background: #fdfce4;
  border: 1px solid #d42306;
  border-top: 5px solid #d42306;
  margin: 3rem 0 1rem;
  padding: 2rem; }
  .lp-content .txt-matome .title {
    color: #d42306;
    font-size: 2.2rem;
    font-weight: 700;
    margin-bottom: 1.5rem; }
    @media only screen and (max-width: 767px) {
      .lp-content .txt-matome .title {
        font-size: 1.8rem; } }
  .lp-content .txt-matome ul {
    margin: 0; }
    .lp-content .txt-matome ul li:last-child {
      margin-bottom: 0; }
  .lp-content .txt-matome p:last-child {
    margin-bottom: 0; }
.lp-content .img-right {
  float: right;
  margin-left: 2em;
  margin-bottom: 1em; }
.lp-content .next-btn {
  text-align: center; }
  .lp-content .next-btn a {
    border: 2px solid #d42306;
    border-radius: 6px;
    box-shadow: 0 4px 0 #d42306;
    font-size: 2rem;
    font-weight: 700;
    display: block;
    line-height: 1.3;
    margin: 2rem auto 3rem;
    padding: 2rem 1.5rem;
    width: 60%; }
    @media only screen and (max-width: 767px) {
      .lp-content .next-btn a {
        width: 80%; } }
    .lp-content .next-btn a span {
      padding-left: 2rem;
      position: relative; }
      .lp-content .next-btn a span::before {
        border-top: 8px solid #d42306;
        border-left: 8px solid transparent;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        content: "";
        display: block;
        height: 0;
        left: 0;
        margin: -3px 0 0;
        position: absolute;
        top: 50%;
        width: 0; }
.lp-content .box-waku {
  border: 1px solid #DDD;
  margin: 2rem 0;
  padding: 3rem; }
  @media only screen and (max-width: 767px) {
    .lp-content .box-waku {
      padding: 1.5rem; } }
  .lp-content .box-waku ul {
    margin: 0; }
.lp-content ul, .lp-content ol {
  margin: 3rem 0;
  padding-left: 2rem; }
  .lp-content ul li, .lp-content ol li {
    font-size: 1.5rem;
    line-height: 1.6;
    margin-bottom: 1.5rem; }
.lp-content .list-none {
  padding-left: 0; }
  .lp-content .list-none li {
    list-style: none; }
.lp-content .sumaho-info-box {
  overflow: hidden; }
  .lp-content .sumaho-info-box .img-sumaho {
    float: left;
    width: 30%; }
    @media only screen and (max-width: 767px) {
      .lp-content .sumaho-info-box .img-sumaho {
        float: none;
        width: 100%; } }
    @media only screen and (max-width: 767px) {
      .lp-content .sumaho-info-box .img-sumaho img {
        margin: 0 auto 1rem;
        width: 60%; } }
  .lp-content .sumaho-info-box .point-area {
    float: left;
    padding: 0 2rem;
    width: 45%; }
    @media only screen and (max-width: 767px) {
      .lp-content .sumaho-info-box .point-area {
        float: none;
        padding: 0;
        width: 100%; } }
    .lp-content .sumaho-info-box .point-area .point {
      background: #d42306;
      color: #FFF;
      font-size: 1.8rem;
      padding: 1rem 1.5rem; }
      @media only screen and (max-width: 767px) {
        .lp-content .sumaho-info-box .point-area .point {
          font-size: 1.4rem; } }
    .lp-content .sumaho-info-box .point-area ul {
      border: 1px solid #EEE;
      margin: 0 0 2rem;
      padding: 1rem 1.5rem; }
      .lp-content .sumaho-info-box .point-area ul li {
        font-size: 1.6rem;
        list-style: none; }
        @media only screen and (max-width: 767px) {
          .lp-content .sumaho-info-box .point-area ul li {
            font-size: 1.3rem;
            margin-bottom: .5rem; } }
        .lp-content .sumaho-info-box .point-area ul li:last-child {
          margin-bottom: 0; }
    .lp-content .sumaho-info-box .point-area p {
      margin: 0; }
  .lp-content .sumaho-info-box .spec {
    float: left;
    margin-top: -1rem;
    width: 25%; }
    @media only screen and (max-width: 767px) {
      .lp-content .sumaho-info-box .spec {
        float: none;
        margin-top: 1rem;
        width: 100%; } }
    .lp-content .sumaho-info-box .spec table {
      margin: 0 0 3rem; }
    .lp-content .sumaho-info-box .spec th, .lp-content .sumaho-info-box .spec td {
      font-size: 1.2rem; }
.lp-content .title-push {
  font-size: 2.4rem;
  font-weight: 700;
  border-bottom: 3px solid #666666;
  line-height: 1.3;
  margin: 3rem 0;
  padding: 1rem;
  position: relative;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    .lp-content .title-push {
      font-size: 1.8rem; } }
  .lp-content .title-push::after {
    border-width: 10px 10px 0 10px;
    border-style: solid;
    border-color: #666666 transparent transparent transparent;
    bottom: -10px;
    content: '';
    height: 0;
    left: 50%;
    margin-left: -5px;
    position: absolute;
    width: 0; }
.lp-content .img-right {
  float: right;
  margin-bottom: 1rem;
  margin-left: 2rem; }
  @media only screen and (max-width: 767px) {
    .lp-content .img-right {
      float: none;
      height: auto;
      margin-left: 0;
      width: 100% !important; } }
.lp-content .img-left {
  float: left;
  margin-bottom: 1rem;
  margin-right: 2rem; }
  @media only screen and (max-width: 767px) {
    .lp-content .img-left {
      float: none;
      height: auto;
      margin-right: 0;
      width: 100% !important; } }
.lp-content .col-2-box {
  display: flex;
  justify-content: space-between;
  margin-bottom: 3rem; }
  @media only screen and (max-width: 767px) {
    .lp-content .col-2-box {
      display: block; } }
  .lp-content .col-2-box .item {
    width: 48.5%; }
    @media only screen and (max-width: 767px) {
      .lp-content .col-2-box .item {
        margin-bottom: 1.5rem;
        width: 100%; } }
.lp-content .pair-select-box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 4rem; }
  @media only screen and (max-width: 767px) {
    .lp-content .pair-select-box {
      margin-bottom: 2rem; } }
  .lp-content .pair-select-box .item {
    width: 15%; }
    @media only screen and (max-width: 767px) {
      .lp-content .pair-select-box .item {
        margin-bottom: 1.3rem;
        width: 31%; } }
    .lp-content .pair-select-box .item a {
      border-radius: 4px;
      border: 1px solid #DDD;
      box-shadow: 0 4px 0 #b6b6b6;
      background: -webkit-linear-gradient(top, white 0%, #f4f4f4 47%, #e2e2e2 100%);
      background: linear-gradient(to bottom, white 0%, #f4f4f4 47%, #e2e2e2 100%);
      color: #333;
      display: block;
      font-size: 1.3rem;
      padding: 1rem;
      text-align: center;
      text-decoration: underline; }
      .lp-content .pair-select-box .item a img {
        margin: auto; }

/* meta用LPコンテンツ sougou-ranking-fba*/
.content__area {
  background: #fffee0;
  border-radius: 10px;
  letter-spacing: .08rem;
  margin: 3rem auto 4rem;
  text-align: center;
  padding: 2rem 3rem 1rem;
  position: relative; }
  @media only screen and (max-width: 767px) {
    .content__area {
      margin: 2rem auto 0rem;
      padding: 1rem; } }
  .content__area h2 img {
    margin-bottom: 4rem; }
    @media only screen and (max-width: 767px) {
      .content__area h2 img {
        margin-bottom: 2rem; } }
  .content__area .content__box {
    align-items: stretch;
    display: flex;
    justify-content: space-around;
    margin-bottom: 2rem; }
    @media only screen and (max-width: 767px) {
      .content__area .content__box {
        display: block; } }
    .content__area .content__box .content__box--01, .content__area .content__box .content__box--02, .content__area .content__box .content__box--03 {
      background: #fff;
      border: 2px solid #3cbe7d;
      border-radius: 8px;
      box-shadow: 2px 2px 0px 3px #3cbe7d;
      display: flex;
      flex-direction: column;
      font-weight: bold;
      justify-content: center;
      padding: 3rem .8rem 2rem;
      position: relative;
      width: 30%; }
      @media only screen and (max-width: 767px) {
        .content__area .content__box .content__box--01, .content__area .content__box .content__box--02, .content__area .content__box .content__box--03 {
          margin-bottom: 1.2rem;
          padding: 2.5rem .8rem 1rem;
          width: 100%; } }
      .content__area .content__box .content__box--01 .number, .content__area .content__box .content__box--02 .number, .content__area .content__box .content__box--03 .number {
        background: #F5E362;
        border: solid #1A1F71 1px;
        border-radius: 15px;
        display: block;
        font-size: 1.2rem;
        left: 0;
        letter-spacing: .08rem;
        line-height: 1.6;
        margin: 0 auto .7rem;
        padding: .3rem .8rem;
        position: absolute;
        top: -1rem;
        right: 0;
        width: 100px; }
        @media only screen and (max-width: 767px) {
          .content__area .content__box .content__box--01 .number, .content__area .content__box .content__box--02 .number, .content__area .content__box .content__box--03 .number {
            width: 85px; } }
      .content__area .content__box .content__box--01 .txt, .content__area .content__box .content__box--02 .txt, .content__area .content__box .content__box--03 .txt {
        font-size: 1.7rem;
        line-height: 1.3; }
        @media only screen and (max-width: 767px) {
          .content__area .content__box .content__box--01 .txt, .content__area .content__box .content__box--02 .txt, .content__area .content__box .content__box--03 .txt {
            font-size: 1.5rem; } }
    .content__area .content__box .triangle {
      align-self: center;
      border-top: 10px solid transparent;
      border-bottom: 10px solid transparent;
      border-left: 12px solid #3cbe7d;
      height: 0;
      margin-left: .5rem;
      width: 0; }
      @media only screen and (max-width: 767px) {
        .content__area .content__box .triangle {
          border-left: 12px solid transparent;
          border-right: 12px solid transparent;
          border-top: 10px solid #3cbe7d;
          margin: 0 auto .5rem; } }
  .content__area .content__point {
    background: #fff;
    border-radius: 10px;
    box-shadow: 2px 2px 2px #ccc;
    margin: 4rem auto 3rem;
    padding: 3rem 2rem; }
    @media only screen and (max-width: 767px) {
      .content__area .content__point {
        margin: 2rem auto 1rem;
        padding: 2rem .5rem 1rem; } }
    .content__area .content__point h3 {
      font-size: 2.4rem;
      margin-bottom: 3rem; }
      @media only screen and (max-width: 767px) {
        .content__area .content__point h3 {
          font-size: 1.8rem;
          line-height: 1.3;
          margin-bottom: 1rem; } }
    .content__area .content__point .point__box {
      display: flex;
      justify-content: space-around; }
      @media only screen and (max-width: 767px) {
        .content__area .content__point .point__box {
          flex-wrap: wrap; } }
      .content__area .content__point .point__box .point__box--01, .content__area .content__point .point__box .point__box--02, .content__area .content__point .point__box .point__box--03, .content__area .content__point .point__box .point__box--04 {
        background-color: #ffea55;
        border-radius: 50%;
        width: 210px;
        height: 210px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        margin: 0 auto 10px;
        text-align: center; }
        @media only screen and (max-width: 767px) {
          .content__area .content__point .point__box .point__box--01, .content__area .content__point .point__box .point__box--02, .content__area .content__point .point__box .point__box--03, .content__area .content__point .point__box .point__box--04 {
            height: 155px;
            width: 155px; } }
        .content__area .content__point .point__box .point__box--01 img, .content__area .content__point .point__box .point__box--02 img, .content__area .content__point .point__box .point__box--03 img, .content__area .content__point .point__box .point__box--04 img {
          margin-bottom: .5rem;
          width: 80px; }
          @media only screen and (max-width: 767px) {
            .content__area .content__point .point__box .point__box--01 img, .content__area .content__point .point__box .point__box--02 img, .content__area .content__point .point__box .point__box--03 img, .content__area .content__point .point__box .point__box--04 img {
              width: 60px; } }
        .content__area .content__point .point__box .point__box--01 p, .content__area .content__point .point__box .point__box--02 p, .content__area .content__point .point__box .point__box--03 p, .content__area .content__point .point__box .point__box--04 p {
          font-size: 1.3rem;
          line-height: 1.3; }
          @media only screen and (max-width: 767px) {
            .content__area .content__point .point__box .point__box--01 p, .content__area .content__point .point__box .point__box--02 p, .content__area .content__point .point__box .point__box--03 p, .content__area .content__point .point__box .point__box--04 p {
              font-size: 1rem;
              line-height: 1.2; } }
          .content__area .content__point .point__box .point__box--01 p strong, .content__area .content__point .point__box .point__box--02 p strong, .content__area .content__point .point__box .point__box--03 p strong, .content__area .content__point .point__box .point__box--04 p strong {
            color: #da1a1a;
            display: block;
            font-size: 1.5rem;
            margin-bottom: .3rem; }
            @media only screen and (max-width: 767px) {
              .content__area .content__point .point__box .point__box--01 p strong, .content__area .content__point .point__box .point__box--02 p strong, .content__area .content__point .point__box .point__box--03 p strong, .content__area .content__point .point__box .point__box--04 p strong {
                font-size: 1.2rem; } }
          .content__area .content__point .point__box .point__box--01 p span, .content__area .content__point .point__box .point__box--02 p span, .content__area .content__point .point__box .point__box--03 p span, .content__area .content__point .point__box .point__box--04 p span {
            font-weight: bold; }
  .content__area p.content__txt {
    font-size: 2.6rem; }
  .content__area h4 {
    font-size: 1.6rem; }
  .content__area::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border-top: 30px solid #fffee0;
    border-right: 130px solid transparent;
    border-left: 130px solid transparent;
    z-index: -1; }

@media only screen and (max-width: 767px) {
  .content__rankingttl {
    margin-bottom: .5rem; } }

/* オススメ1枠(特集ページなどで使用) */
.osusume-1-box {
  /*スマホ*/ }
  .osusume-1-box li {
    list-style: none; }
  .osusume-1-box a {
    text-decoration: none !important; }
  .osusume-1-box .item {
    width: 100%;
    background: #FFF;
    border: 1px solid #EEE;
    position: relative; }
    .osusume-1-box .item .item-img img {
      width: 100%;
      height: auto; }
    .osusume-1-box .item .item-img span {
      color: red; }
    .osusume-1-box .item h2 {
      background: #53b4c5;
      color: #FFF; }
    .osusume-1-box .item .item-tag {
      clear: both; }
      .osusume-1-box .item .item-tag li {
        width: 48%;
        float: left;
        border: 1px solid #BBBBBB;
        background: #EFEFEF;
        color: #BBBBBB;
        margin: 1%;
        padding: 2px 5px;
        font-size: 12px; }
      .osusume-1-box .item .item-tag .○, .osusume-1-box .item .item-tag .on {
        color: #0d96a6;
        border: 1px solid #0d96a6;
        background: #f4ffff;
        font-weight: 900; }
    .osusume-1-box .item .cv-area {
      text-align: center;
      overflow: hidden;
      width: 70%;
      margin: 0 auto;
      display: flex;
      justify-content: space-between; }
      .osusume-1-box .item .cv-area .more {
        width: 30%;
        text-align: center; }
        .osusume-1-box .item .cv-area .more a {
          border: 1px solid #1a3e86;
          border-radius: 6px;
          bottom: 0;
          color: #1a3e86;
          display: block;
          font-size: 1.6rem;
          font-weight: 700;
          padding: 1.4rem 1rem;
          text-align: center; }
      .osusume-1-box .item .cv-area .btn-cv {
        width: 68%;
        margin: auto; }
        .osusume-1-box .item .cv-area .btn-cv a {
          background: linear-gradient(180deg, #171fc0 50%, #13199c 100%);
          border-radius: 6px;
          color: #fff;
          display: block;
          font-size: 2.2rem;
          font-weight: 700;
          text-align: center;
          padding: 1.3rem 1rem; }
  .osusume-1-box .item-pc {
    margin-bottom: 30px;
    position: relative;
    width: 99%;
    margin: 0 auto 30px; }
    .osusume-1-box .item-pc .icon-osusume {
      position: absolute;
      top: -6px;
      left: -7px;
      width: 90px; }
    .osusume-1-box .item-pc .item-in {
      padding: 15px;
      overflow: hidden;
      border: 3px solid #d42306;
      border-top: none; }
    .osusume-1-box .item-pc h2 {
      padding: 10px 30px 10px 80px;
      font-size: 25px;
      background: #d42306;
      background-size: 8px 8px; }
    .osusume-1-box .item-pc .item-point {
      padding: 0.5rem 2rem 0.5rem 6rem;
      margin-bottom: 15px;
      background: #fcf499 url(../img/icon/icon-point.png) no-repeat left center;
      background-position-x: 10px; }
      .osusume-1-box .item-pc .item-point p {
        margin-bottom: 0 !important; }
      .osusume-1-box .item-pc .item-point span {
        color: red;
        font-weight: bold; }
    .osusume-1-box .item-pc .item-img {
      width: 22%;
      float: left;
      margin-bottom: 15px; }
    .osusume-1-box .item-pc .item-info {
      width: 78%;
      float: right;
      padding-left: 15px; }
      .osusume-1-box .item-pc .item-info .txt1 {
        font-size: 18px !important;
        font-weight: bold;
        color: #385587;
        margin-bottom: 0.7rem !important; }
      .osusume-1-box .item-pc .item-info ul {
        margin: 0rem;
        padding-left: 0rem; }
        .osusume-1-box .item-pc .item-info ul br {
          display: none; }
      .osusume-1-box .item-pc .item-info li {
        font-size: 16px;
        line-height: 1.4;
        border-bottom: 1px dotted #CCC;
        padding: 5px 0;
        margin-bottom: 0.5rem; }
        .osusume-1-box .item-pc .item-info li span {
          background-color: #FFFFB6;
          color: #EB5404;
          font-weight: bold; }
        .osusume-1-box .item-pc .item-info li:last-child {
          border: none; }
      .osusume-1-box .item-pc .item-info .item-camp {
        float: none;
        margin-top: 15px;
        width: 100%;
        padding: 15px 15px 15px 60px;
        margin-bottom: 15px;
        background: #fff4f6 url(../img/icon/icon-camp.png) no-repeat left center;
        background-position-x: 10px;
        border: 1px solid #ffcdd8;
        color: #df365d;
        font-weight: bold; }
        .osusume-1-box .item-pc .item-info .item-camp p {
          margin-bottom: 0rem; }
    .osusume-1-box .item-pc .item-spec-box {
      overflow: hidden;
      clear: both;
      display: -webkit-flex;
      display: flex;
      justify-content: space-between; }
    .osusume-1-box .item-pc .item-spec {
      width: 49%;
      float: left; }
      .osusume-1-box .item-pc .item-spec table {
        width: 100%;
        margin-bottom: 10px !important;
        border-collapse: separate;
        border-spacing: 0px;
        table-layout: fixed;
        word-break: break-all;
        word-wrap: break-word;
        border-top: 1px solid #DDD;
        border-left: 1px solid #DDD;
        background: #FFF; }
        .osusume-1-box .item-pc .item-spec table tbody {
          vertical-align: middle; }
      .osusume-1-box .item-pc .item-spec th {
        vertical-align: middle;
        text-align: center;
        padding: 2px 0;
        width: 40%;
        color: #5e5854;
        font-size: 12px;
        font-weight: normal; }
      .osusume-1-box .item-pc .item-spec td {
        vertical-align: middle;
        background: #FFF;
        text-align: center;
        padding: 5px;
        font-size: 13px;
        color: #5e5854;
        line-height: 1; }
        .osusume-1-box .item-pc .item-spec td img {
          width: 30px;
          margin: auto; }
        .osusume-1-box .item-pc .item-spec td p {
          font-weight: bold;
          margin-bottom: 0rem; }
      .osusume-1-box .item-pc .item-spec small {
        font-size: 10px; }
      .osusume-1-box .item-pc .item-spec .txt-big {
        font-size: 20px !important;
        font-weight: bold; }
      .osusume-1-box .item-pc .item-spec .th-sub {
        background: #FFF;
        font-size: 11px; }
      .osusume-1-box .item-pc .item-spec .td-sub {
        background: #fcfcfc;
        font-size: 12px; }
  .osusume-1-box .item-sp {
    margin-bottom: 15px;
    width: 96%;
    margin: 0 auto 10px;
    position: relative; }
    .osusume-1-box .item-sp .icon-osusume {
      position: absolute;
      top: -5px;
      left: -6px;
      width: 80px; }
    .osusume-1-box .item-sp .item-in {
      padding: 10px;
      border: 3px solid #d42306;
      border-top: none; }
    .osusume-1-box .item-sp a {
      text-decoration: none !important; }
    .osusume-1-box .item-sp h2 {
      padding: 10px 30px 10px 60px;
      font-size: 16px;
      background-color: #d42306;
      background-size: 8px 8px; }
    .osusume-1-box .item-sp .rank-number {
      position: absolute;
      top: 0;
      left: 15px;
      width: 40px; }
    .osusume-1-box .item-sp .item-img {
      width: 25%;
      float: left; }
    .osusume-1-box .item-sp .item-catch {
      width: 72%;
      float: right;
      color: #e94343;
      font-weight: bold;
      font-size: 13px;
      line-height: 1.4; }
    .osusume-1-box .item-sp .item-point {
      clear: both;
      margin-bottom: 5px; }
      .osusume-1-box .item-sp .item-point ul {
        margin: auto;
        padding: 0; }
      .osusume-1-box .item-sp .item-point li {
        font-size: 12px;
        line-height: 1.5;
        border-bottom: 1px dotted #CCC;
        padding: 2px 0;
        margin: auto; }
        .osusume-1-box .item-sp .item-point li:last-child {
          border: none; }
        .osusume-1-box .item-sp .item-point li span {
          color: #EB5404;
          font-weight: bold; }
    .osusume-1-box .item-sp .item-tag {
      overflow: hidden;
      margin-bottom: 5px; }
      .osusume-1-box .item-sp .item-tag ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin: auto;
        padding: 0; }
      .osusume-1-box .item-sp .item-tag li {
        width: 32.5%;
        font-size: 10px;
        padding: 0 2px;
        margin: 0;
        margin-bottom: 5px; }
    .osusume-1-box .item-sp .item-spec {
      overflow: hidden;
      clear: both;
      margin-bottom: 7px; }
      .osusume-1-box .item-sp .item-spec .th {
        font-size: 9px;
        width: 46%;
        float: left;
        color: #999;
        font-weight: bold;
        padding-top: 3px; }
      .osusume-1-box .item-sp .item-spec .td {
        width: 53%;
        font-size: 12px;
        float: right;
        color: #5e5854;
        font-weight: bold; }
      .osusume-1-box .item-sp .item-spec .tr {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        overflow: hidden;
        border-bottom: 1px dotted #CCC;
        padding: 3px 0; }
      .osusume-1-box .item-sp .item-spec .fl, .osusume-1-box .item-sp .item-spec .fr {
        width: 50%; }
    .osusume-1-box .item-sp .item-camp {
      margin: 10px 0; }
      .osusume-1-box .item-sp .item-camp p {
        font-size: 12px; }
    .osusume-1-box .item-sp .cv-area {
      width: 100%; }
      .osusume-1-box .item-sp .cv-area .more {
        padding: 0;
        width: 30%; }
        .osusume-1-box .item-sp .cv-area .more a {
          font-size: 11px;
          padding: 1rem; }
      .osusume-1-box .item-sp .cv-area .btn-cv {
        width: 68%; }
        .osusume-1-box .item-sp .cv-area .btn-cv a {
          font-size: 1.6rem;
          padding: 1rem; }

/* オススメ1枠コンパクト(特集ページなどで使用) */
.osusume-1-box-small .item-pc {
  width: 100%;
  background: #FFF;
  border: 1px solid #EEE;
  position: relative;
  margin-bottom: 30px;
  position: relative; }
  .osusume-1-box-small .item-pc a {
    text-decoration: none !important; }
@media only screen and (max-width: 767px) {
  .osusume-1-box-small .item-sp {
    position: relative; } }
.osusume-1-box-small .item-sp a {
  text-decoration: none !important; }
.osusume-1-box-small h2 {
  padding: 10px 30px 10px 80px;
  font-size: 25px;
  background: #d42306;
  background-size: 8px 8px;
  color: #FFF; }
  @media only screen and (max-width: 767px) {
    .osusume-1-box-small h2 {
      padding: 10px 30px 10px 60px;
      font-size: 16px; } }
.osusume-1-box-small .icon-osusume {
  position: absolute;
  top: -5px;
  left: -6px;
  width: 80px; }
.osusume-1-box-small .item-in {
  padding: 10px;
  box-shadow: 0 1px 4px #ccc;
  border: solid 1px #d42306;
  border-top: none;
  overflow: hidden; }
  @media only screen and (max-width: 767px) {
    .osusume-1-box-small .item-in .item-catch {
      width: 72%;
      float: right;
      color: #e94343;
      font-weight: bold;
      font-size: 13px;
      line-height: 1.5; } }
.osusume-1-box-small .item-img {
  width: 20%;
  float: left;
  padding-right: 2%; }
  @media only screen and (max-width: 767px) {
    .osusume-1-box-small .item-img {
      width: 25%; } }
  .osusume-1-box-small .item-img img {
    width: 100%;
    height: auto; }
.osusume-1-box-small .item-spec {
  width: 20%;
  float: left; }
  @media only screen and (max-width: 767px) {
    .osusume-1-box-small .item-spec {
      float: none;
      width: 100%;
      overflow: hidden;
      clear: both;
      margin-bottom: 7px; } }
  .osusume-1-box-small .item-spec table {
    margin: 0 !important; }
  .osusume-1-box-small .item-spec th {
    font-size: 12px !important; }
  @media only screen and (max-width: 767px) {
    .osusume-1-box-small .item-spec .tr {
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      overflow: hidden;
      border-bottom: 1px dotted #CCC;
      padding: 3px 0; }
      .osusume-1-box-small .item-spec .tr .fl, .osusume-1-box-small .item-spec .tr .fr {
        width: 50%; }
        .osusume-1-box-small .item-spec .tr .fl .th, .osusume-1-box-small .item-spec .tr .fr .th {
          font-size: 9px;
          width: 46%;
          float: left;
          color: #999;
          font-weight: bold;
          padding-top: 3px; }
        .osusume-1-box-small .item-spec .tr .fl .td, .osusume-1-box-small .item-spec .tr .fr .td {
          width: 53%;
          font-size: 12px;
          float: right;
          color: #5e5854;
          font-weight: bold; } }
.osusume-1-box-small .item-info {
  width: 58%;
  float: right; }
  .osusume-1-box-small .item-info p {
    font-size: 16px;
    line-height: 1.9;
    margin-bottom: 30px; }
    .osusume-1-box-small .item-info p span {
      color: #f44027;
      font-weight: 700; }
.osusume-1-box-small .cv-area {
  display: flex;
  justify-content: space-between; }
  .osusume-1-box-small .cv-area .more {
    width: 25%; }
    @media only screen and (max-width: 767px) {
      .osusume-1-box-small .cv-area .more {
        width: 30%; } }
    .osusume-1-box-small .cv-area .more a {
      border: 1px solid #1a3e86;
      border-radius: 6px;
      bottom: 0;
      color: #1a3e86;
      display: block;
      font-size: 1.6rem;
      font-weight: 700;
      padding: 1.4rem 1rem;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        .osusume-1-box-small .cv-area .more a {
          font-size: 1.1rem;
          padding: 1rem; } }
  .osusume-1-box-small .cv-area .btn-cv {
    width: 73%; }
    @media only screen and (max-width: 767px) {
      .osusume-1-box-small .cv-area .btn-cv {
        width: 68%; } }
    .osusume-1-box-small .cv-area .btn-cv a {
      background: linear-gradient(180deg, #171fc0 50%, #13199c 100%);
      bottom: 0;
      color: #fff;
      display: block;
      font-size: 2rem;
      font-weight: 700;
      padding: 1.4rem 1rem;
      text-align: center;
      border-radius: 6px; }
      @media only screen and (max-width: 767px) {
        .osusume-1-box-small .cv-area .btn-cv a {
          font-size: 1.4rem;
          padding: 1rem; } }
    .osusume-1-box-small .cv-area .btn-cv img {
      width: 100%;
      height: auto; }

/*FX口座開設ランキング　all-ranking用*/
.all-ranking-box .box-rank .title {
  background: #666666; }
  .all-ranking-box .box-rank .title h3 .icon-rank img {
    width: 115%; }
    @media only screen and (max-width: 767px) {
      .all-ranking-box .box-rank .title h3 .icon-rank img {
        width: 100%; } }
  .all-ranking-box .box-rank .title h3 a {
    margin-top: 1rem;
    display: block; }
    @media only screen and (max-width: 767px) {
      .all-ranking-box .box-rank .title h3 a {
        margin-top: 0;
        margin-left: 0.5rem; } }
  .all-ranking-box .box-rank .title .star-pc {
    margin-top: 1rem; }
.all-ranking-box .box-rank .box h4 {
  background: #666666;
  color: #fff; }
.all-ranking-box .box-rank .point dl {
  outline: 2px solid #666666; }
.all-ranking-box .box-rank .point dt {
  background: #666666; }
.all-ranking-box .box-rank .campaign dt {
  background: #d42306; }
.all-ranking-box .box-rank .btn-cv-long {
  border-radius: 6px;
  box-shadow: 0 4px 0 #b41b02;
  margin: 2rem auto 1rem;
  overflow: hidden;
  width: 70%; }
  @media only screen and (max-width: 767px) {
    .all-ranking-box .box-rank .btn-cv-long {
      width: 100%; } }
  .all-ranking-box .box-rank .btn-cv-long a {
    background: #b41b02;
    background: linear-gradient(0deg, #b41b02 8%, #d42306 100%);
    border-radius: 6px;
    box-shadow: 0 4px 0 #0a0f7b;
    bottom: 0;
    color: #fff;
    display: block;
    font-size: 2.2rem;
    font-weight: 700;
    padding: 1.8rem 1rem;
    position: relative;
    text-align: center;
    text-decoration: none; }
    @media only screen and (max-width: 767px) {
      .all-ranking-box .box-rank .btn-cv-long a {
        font-size: 1.8rem; } }
    .all-ranking-box .box-rank .btn-cv-long a::before {
      animation: shiny-btn1 3s ease-in-out infinite;
      background-color: #fff;
      content: '';
      display: inline-block;
      height: 100%;
      left: 0;
      position: absolute;
      top: -180px;
      width: 30px; }
@-webkit-keyframes shiny-btn1 {
  0% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0; }
  80% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0.5; }
  81% {
    -webkit-transform: scale(4) rotate(45deg);
    opacity: 1; }
  100% {
    -webkit-transform: scale(50) rotate(45deg);
    opacity: 0; } }
.all-ranking-box .rank-list {
  background: #fff;
  margin: 4rem auto;
  border: 2px solid #ddd;
  border-radius: 8px;
  box-shadow: 0 1px 4px #ccc; }
  @media only screen and (max-width: 767px) {
    .all-ranking-box .rank-list {
      margin: 0rem auto 3rem; } }
  .all-ranking-box .rank-list p {
    font-weight: bold;
    text-align: center;
    color: #fff;
    padding: 1rem;
    font-size: 2.4rem;
    background: #666666 url(../img/icon/icon_crown.png) no-repeat left 28% bottom 2rem;
    background-size: 4%;
    border-radius: 6px 6px 0px 0px; }
    @media only screen and (max-width: 767px) {
      .all-ranking-box .rank-list p {
        background: #666666 url(../img/icon/icon_crown.png) no-repeat left 19% bottom 1.4rem;
        background-size: 7%;
        font-size: 1.8rem; } }
  .all-ranking-box .rank-list ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 2rem 2rem 0rem 2rem; }
    @media only screen and (max-width: 767px) {
      .all-ranking-box .rank-list ul {
        padding: 1rem 1rem 0rem 1rem; } }
    .all-ranking-box .rank-list ul li {
      font-size: 1.8rem;
      background: #3038C7;
      width: 30%;
      text-align: center;
      padding: 1.2rem;
      margin-bottom: 2rem;
      font-weight: bold;
      box-shadow: 0 3px 0 #0b106d;
      border-radius: 6px;
      list-style: none; }
      @media only screen and (max-width: 767px) {
        .all-ranking-box .rank-list ul li {
          font-size: 1.2rem;
          width: 32%;
          padding: 1rem 0.5rem;
          margin-bottom: 1rem; } }
      .all-ranking-box .rank-list ul li a:link, .all-ranking-box .rank-list ul li a:visited {
        color: #fff;
        text-decoration: none; }
.all-ranking-box .explanation {
  background: #FFF;
  border: 1px solid #CCC;
  padding: 2rem;
  font-size: 1.5rem;
  margin: 3rem auto;
  border-radius: 6px;
  box-shadow: 0 1px 4px #ccc;
  line-height: 1.4; }
  @media only screen and (max-width: 767px) {
    .all-ranking-box .explanation {
      margin: 2rem 0rem;
      padding: 1rem !important;
      font-size: 1.4rem; } }
.all-ranking-box .box-rank .campaign {
  margin: 1rem 0; }

#rank01, #rank02, #rank03, #rank04, #rank05, #rank06, #rank07 {
  background: #3038C7;
  color: #fff;
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  padding: 1.8rem 1rem;
  position: relative;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    #rank01, #rank02, #rank03, #rank04, #rank05, #rank06, #rank07 {
      font-size: 2rem;
      margin: 0 -1rem;
      padding: .8rem 0rem; } }
  #rank01:after, #rank02:after, #rank03:after, #rank04:after, #rank05:after, #rank06:after, #rank07:after {
    position: absolute;
    content: '';
    top: 100%;
    left: 45%;
    border: 25px solid transparent;
    border-top: 20px solid #3038C7;
    width: 0;
    height: 0; }
    @media only screen and (max-width: 767px) {
      #rank01:after, #rank02:after, #rank03:after, #rank04:after, #rank05:after, #rank06:after, #rank07:after {
        border: 15px solid transparent;
        border-top: 15px solid #3038C7; } }
  #rank01 .rank-txt, #rank02 .rank-txt, #rank03 .rank-txt, #rank04 .rank-txt, #rank05 .rank-txt, #rank06 .rank-txt, #rank07 .rank-txt {
    position: relative; }
    #rank01 .rank-txt:before, #rank02 .rank-txt:before, #rank03 .rank-txt:before, #rank04 .rank-txt:before, #rank05 .rank-txt:before, #rank06 .rank-txt:before, #rank07 .rank-txt:before {
      content: '';
      display: inline-block;
      width: 25px;
      height: 52px;
      background-image: url(../img/icon/icon-kanban-left.png);
      background-repeat: no-repeat;
      background-size: contain;
      margin-right: 1rem;
      vertical-align: middle; }
      @media only screen and (max-width: 767px) {
        #rank01 .rank-txt:before, #rank02 .rank-txt:before, #rank03 .rank-txt:before, #rank04 .rank-txt:before, #rank05 .rank-txt:before, #rank06 .rank-txt:before, #rank07 .rank-txt:before {
          width: 20px;
          height: 45px; } }
    #rank01 .rank-txt:after, #rank02 .rank-txt:after, #rank03 .rank-txt:after, #rank04 .rank-txt:after, #rank05 .rank-txt:after, #rank06 .rank-txt:after, #rank07 .rank-txt:after {
      content: '';
      display: inline-block;
      width: 25px;
      height: 52px;
      background-image: url(../img/icon/icon-kanban-right.png);
      background-repeat: no-repeat;
      background-size: contain;
      margin-left: 1rem;
      vertical-align: middle; }
      @media only screen and (max-width: 767px) {
        #rank01 .rank-txt:after, #rank02 .rank-txt:after, #rank03 .rank-txt:after, #rank04 .rank-txt:after, #rank05 .rank-txt:after, #rank06 .rank-txt:after, #rank07 .rank-txt:after {
          width: 20px;
          height: 45px; } }

.allrank-img {
  margin: 6rem auto 2rem; }
  @media only screen and (max-width: 767px) {
    .allrank-img {
      margin: 3rem -1rem 2rem; } }
  .allrank-img img {
    width: 100%; }

.title-table-hikaku {
  background: url(../img/icon/icon-hikaku.png) 1.2rem 45% no-repeat #d42306;
  background-size: 23px;
  border-radius: 6px;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 1.5rem;
  padding: 1.3rem 2rem 1.3rem 4.5rem; }

.tab-box {
  margin-bottom: 2rem; }
  .tab-box .tab-btn {
    border-bottom: 3px solid #4b4b4b;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    .tab-box .tab-btn .btn {
      border: 1px solid #4b4b4b;
      border-bottom: none;
      border-radius: 6px 6px 0 0;
      color: #4b4b4b;
      cursor: pointer;
      font-size: 1.4rem;
      font-weight: 700;
      padding: .5rem 1rem 1.5rem;
      position: relative;
      text-align: center;
      width: 32.6%; }
      .tab-box .tab-btn .btn.active {
        background: #4b4b4b;
        color: #fff; }
        .tab-box .tab-btn .btn.active::after {
          border-bottom: 2px solid #fff;
          border-right: 2px solid #fff; }
      .tab-box .tab-btn .btn::after {
        border-bottom: 2px solid #4b4b4b;
        border-right: 2px solid #4b4b4b;
        bottom: .8rem;
        content: "";
        display: block;
        height: 8px;
        left: 50%;
        position: absolute;
        transform: rotate(45deg);
        width: 8px; }
  .tab-box .tab_panel {
    display: none; }
    .tab-box .tab_panel.active {
      display: block; }

@media only screen and (max-width: 767px) {
  .table-scroll {
    border-left: 1px solid #c5c5c5;
    overflow-x: scroll !important;
    position: relative; } }

.table-hikaku {
  border-collapse: separate;
  border-left: 1px solid #c5c5c5;
  border-top: 1px solid #c5c5c5;
  border-spacing: 0px;
  width: 100%; }
  @media only screen and (max-width: 767px) {
    .table-hikaku {
      border-left: none;
      min-width: 1170px; } }
  @media only screen and (max-width: 767px) {
    .table-hikaku .sticky {
      border-left: 1px solid #c5c5c5;
      left: -1px;
      padding: .6rem .8rem;
      position: sticky; } }
  .table-hikaku .sticky02 {
    white-space: nowrap; }
    @media only screen and (max-width: 767px) {
      .table-hikaku .sticky02 {
        left: 109px;
        padding: .6rem .8rem;
        position: sticky; } }
  .table-hikaku th {
    background: #eee;
    border-bottom: 1px solid #c5c5c5;
    border-right: 1px solid #c5c5c5;
    font-size: 1.2rem;
    font-weight: 700;
    padding: .6rem;
    vertical-align: middle; }
    @media only screen and (max-width: 767px) {
      .table-hikaku th {
        white-space: nowrap; } }
  .table-hikaku td {
    background: #fff;
    border-bottom: 1px solid #c5c5c5;
    border-right: 1px solid #c5c5c5;
    font-size: 1.2rem;
    padding: .6rem;
    text-align: center;
    vertical-align: middle; }
    @media only screen and (max-width: 767px) {
      .table-hikaku td {
        height: auto; } }
    .table-hikaku td img {
      margin: auto; }
    .table-hikaku td .icon-rank {
      width: 30px; }
    .table-hikaku td .img-logo {
      margin: 0 auto .3rem;
      width: 100px; }
      @media only screen and (max-width: 767px) {
        .table-hikaku td .img-logo {
          width: 90px; } }
    .table-hikaku td .img-icon {
      width: 30px; }
    .table-hikaku td .camp {
      text-align: left; }
    .table-hikaku td .text-shosai {
      white-space: nowrap; }
    .table-hikaku td .text-cv {
      font-size: 1.3rem;
      font-weight: 700;
      padding-left: 1.2rem;
      position: relative; }
      .table-hikaku td .text-cv::before {
        border-top: solid 2px #d42306;
        border-right: solid 2px #d42306;
        content: '';
        display: block;
        height: 6px;
        left: 0;
        margin: -3px 0 0;
        position: absolute;
        top: 48%;
        transform: rotate(45deg);
        width: 6px;
        -webkit-transform: rotate(45deg); }
    .table-hikaku td .text-shosai {
      font-size: 1.3rem; }
    .table-hikaku td .btn-cv a {
      background: #171fc0;
      background: linear-gradient(180deg, #171fc0 50%, #13199c 100%);
      border-radius: 5px;
      box-shadow: 0 4px 0 #0a0f7b;
      color: #fff;
      display: block;
      font-size: 1.2rem;
      font-weight: 700;
      padding: 0.5rem;
      text-decoration: none;
      white-space: nowrap; }
    .table-hikaku td .text-shosai {
      color: #232323; }
    .table-hikaku td.text-rate {
      color: #ab0419;
      font-size: 2rem;
      font-weight: 700; }
      .table-hikaku td.text-rate small {
        font-size: 1.5rem; }

/* 比較タブ無　調整 */
.comparison h2 {
  background: #d42306;
  color: #fff;
  padding: 1.5rem 2rem;
  text-align: center;
  border-radius: 8px 8px 0 0;
  position: sticky;
  left: 0px;
  font-size: 2.5rem;
  letter-spacing: .08rem; }
  @media only screen and (max-width: 767px) {
    .comparison h2 {
      font-size: 1.8rem;
      padding: 1rem; } }
  .comparison h2 span {
    font-size: 1.6rem; }
.comparison .table-hikaku th.comp {
  position: sticky;
  left: -1px; }
.comparison .table-hikaku td {
  line-height: 1.2; }
  .comparison .table-hikaku td.comp {
    position: sticky;
    left: -1px; }
  .comparison .table-hikaku td img {
    margin: 0 auto .5rem;
    width: 30px; }
  .comparison .table-hikaku td .img-logo {
    width: 100px; }

.btn-morerank {
  border: 1px solid #222;
  border-radius: 5px;
  cursor: pointer;
  display: block;
  font-size: 1.4rem;
  font-weight: 700;
  margin: 1.5rem auto 2rem;
  padding: 1rem;
  text-align: center;
  width: 60%; }
  @media only screen and (max-width: 767px) {
    .btn-morerank {
      width: 65%; } }
  .btn-morerank button {
    cursor: pointer; }

.title-fx-chart {
  background: url(../img/icon/ico-chart.png) 1.2rem 45% no-repeat #4b4b4b;
  background-size: 23px;
  border-radius: 6px;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 700;
  margin-top: 5rem;
  padding: 1rem 2rem 1rem 4.5rem; }
  @media only screen and (max-width: 767px) {
    .title-fx-chart {
      margin-top: 3rem; } }

.img-chart {
  background: url(../img/visual/img-chart.png) center top no-repeat;
  background-size: contain;
  display: block;
  height: 511px;
  margin: 2rem auto;
  position: relative;
  width: 500px; }
  @media only screen and (max-width: 767px) {
    .img-chart {
      height: 350px;
      width: 100%; } }
  .img-chart .btn-01 {
    right: 2%;
    position: absolute;
    top: 19.5%;
    width: 180px; }
    @media only screen and (max-width: 767px) {
      .img-chart .btn-01 {
        right: 0;
        top: 13%;
        width: 140px; } }
  .img-chart .btn-02 {
    right: 5%;
    position: absolute;
    top: 31.5%;
    width: 115px; }
    @media only screen and (max-width: 767px) {
      .img-chart .btn-02 {
        right: 3%;
        top: 27%;
        width: 95px; } }
  .img-chart .btn-03 {
    right: 17%;
    position: absolute;
    top: 43%;
    width: 135px; }
    @media only screen and (max-width: 767px) {
      .img-chart .btn-03 {
        right: 13%;
        top: 40.5%;
        width: 110px; } }
  .img-chart .btn-04 {
    right: 36%;
    position: absolute;
    top: 54%;
    width: 135px; }
    @media only screen and (max-width: 767px) {
      .img-chart .btn-04 {
        right: 36%;
        top: 53%;
        width: 105px; } }
  .img-chart .btn-05 {
    left: 8%;
    position: absolute;
    top: 24%;
    width: 145px; }
    @media only screen and (max-width: 767px) {
      .img-chart .btn-05 {
        left: 5%;
        top: 16%;
        width: 120px; } }
  .img-chart .btn-06 {
    left: 22%;
    position: absolute;
    top: 36.5%;
    width: 135px; }
    @media only screen and (max-width: 767px) {
      .img-chart .btn-06 {
        left: 17%;
        top: 32%;
        width: 115px; } }
  .img-chart .btn-07 {
    left: 5%;
    position: absolute;
    top: 48%;
    width: 145px; }
    @media only screen and (max-width: 767px) {
      .img-chart .btn-07 {
        left: 0;
        top: 47%;
        width: 115px; } }
  .img-chart .btn-08 {
    left: 25%;
    position: absolute;
    bottom: 20%;
    width: 140px; }
    @media only screen and (max-width: 767px) {
      .img-chart .btn-08 {
        left: 21%;
        bottom: 18%;
        width: 115px; } }
  .img-chart .btn-10 {
    left: 14%;
    position: absolute;
    bottom: 8%;
    width: 135px; }
    @media only screen and (max-width: 767px) {
      .img-chart .btn-10 {
        left: 10%;
        bottom: 3%;
        width: 110px; } }

.block-commentary .title-commentary {
  background: #4b4b4b;
  color: #fff;
  font-size: 2.4rem;
  font-weight: 700;
  margin: 0 0 3rem;
  padding: 1.3rem 1rem 2rem;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    .block-commentary .title-commentary {
      margin: 0 -1rem 3rem; } }
  .block-commentary .title-commentary small {
    display: inline-block;
    font-size: 1.6rem;
    margin-bottom: .8rem;
    padding: 0 2rem;
    position: relative; }
    .block-commentary .title-commentary small::before {
      background: url(../img/lp/arrow-left2.png) left center no-repeat;
      background-size: 18px 18px;
      content: "";
      display: block;
      height: 18px;
      left: 0;
      position: absolute;
      top: 0;
      width: 18px; }
    .block-commentary .title-commentary small::after {
      background: url(../img/lp/arrow-right2.png) left center no-repeat;
      background-size: 18px 18px;
      content: "";
      display: block;
      height: 18px;
      position: absolute;
      right: 0;
      top: 0;
      width: 18px; }
.block-commentary h2 {
  border-left: 6px solid #148656;
  font-size: 2rem;
  line-height: 1.5;
  margin: 2rem 0;
  padding: .5rem 1rem; }
  .block-commentary h2 small {
    color: #148656;
    display: block;
    font-size: 1.4rem; }
.block-commentary h3 {
  background: #cdf1e2;
  font-size: 1.8rem;
  margin: 2rem 0;
  padding: 1rem;
  text-align: center; }
.block-commentary h4 {
  font-size: 1.8rem;
  margin: 4rem 0 2rem;
  text-align: center; }
  .block-commentary h4 span {
    display: inline-block;
    padding-left: 3rem;
    position: relative; }
    .block-commentary h4 span::before {
      background: url(../img/lp/arrow-left.png) left center no-repeat;
      background-size: 22px 22px;
      content: "";
      display: block;
      height: 22px;
      left: -2rem;
      position: absolute;
      top: 0;
      width: 22px; }
    .block-commentary h4 span::after {
      background: url(../img/lp/arrow-right.png) left center no-repeat;
      background-size: 22px 22px;
      content: "";
      display: block;
      height: 22px;
      position: absolute;
      right: -2rem;
      top: 0;
      width: 22px; }
    .block-commentary h4 span img {
      left: 0;
      position: absolute;
      width: 20px; }
.block-commentary h5 {
  background: #4b4b4b;
  color: #fff;
  font-size: 1.8rem;
  margin: 3rem 0 2rem;
  padding: 1rem 1rem 1rem 4rem;
  position: relative; }
  .block-commentary h5 img {
    left: 1rem;
    position: absolute;
    top: .8rem;
    width: 20px; }
.block-commentary p {
  font-size: 1.6rem;
  margin-bottom: 1.5rem; }
.block-commentary table {
  border-left: 1px solid #c5c5c5;
  border-top: 1px solid #c5c5c5;
  margin: 3rem 0;
  width: 100%; }
  .block-commentary table th {
    background: #eee;
    border-bottom: 1px solid #c5c5c5;
    border-right: 1px solid #c5c5c5;
    font-size: 1.3rem;
    font-weight: 700;
    padding: .6rem; }
  .block-commentary table td {
    background: #fff;
    border-bottom: 1px solid #c5c5c5;
    border-right: 1px solid #c5c5c5;
    font-size: 1.5rem;
    font-weight: 700;
    padding: .6rem;
    text-align: center;
    vertical-align: middle; }
    .block-commentary table td small {
      font-size: 1rem; }
    .block-commentary table td img {
      margin: auto;
      width: 30px; }
.block-commentary .point dl {
  border-radius: 6px;
  outline: 2px solid #148656;
  outline-offset: -2px; }
  .block-commentary .point dl dt {
    background: #148656;
    border-radius: 6px 6px 0 0;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 700;
    padding: .5rem 1rem;
    text-align: center; }
    .block-commentary .point dl dt span {
      padding-left: 3rem;
      position: relative; }
      .block-commentary .point dl dt span img {
        left: 0;
        position: absolute; }
  .block-commentary .point dl dd {
    margin-bottom: 1.5rem;
    padding: 1.5rem; }
    .block-commentary .point dl dd ul {
      margin: 0;
      padding-left: 0; }
      .block-commentary .point dl dd ul li {
        background: url(../img/icon/icon-check.png) left -0.3rem no-repeat;
        background-size: 28px 28px;
        font-size: 1.5rem;
        line-height: 1.5;
        list-style: none;
        margin-bottom: 1rem;
        padding: 0 0 0 3rem; }
        .block-commentary .point dl dd ul li:last-child {
          margin-bottom: 0; }
.block-commentary .list-term {
  margin: 3rem 0 5rem; }
  .block-commentary .list-term dt {
    background: #cdf1e2;
    border-left: 5px solid #148656;
    display: inline-block;
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: 1rem;
    padding: .4rem 1rem; }
  .block-commentary .list-term dd {
    font-size: 1.5rem;
    line-height: 1.7;
    margin-bottom: 1.5rem; }
.block-commentary .list-banner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  margin-bottom: 4rem; }
  @media only screen and (max-width: 767px) {
    .block-commentary .list-banner {
      display: block;
      margin-top: 2rem; } }
  .block-commentary .list-banner li {
    width: 32%; }
    @media only screen and (max-width: 767px) {
      .block-commentary .list-banner li {
        margin-bottom: 1rem;
        width: 100%; } }
.block-commentary .img-simulation {
  margin: auto;
  width: 50%; }
  @media only screen and (max-width: 767px) {
    .block-commentary .img-simulation {
      width: 100%; } }
.block-commentary .text-up dt, .block-commentary .text-down dt {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: .5rem; }
.block-commentary .text-up dd, .block-commentary .text-down dd {
  font-size: 1.6rem;
  line-height: 1.7;
  margin-bottom: 2rem; }
.block-commentary .title-more {
  color: #d42306;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    .block-commentary .title-more {
      font-size: 1.6rem; } }
  .block-commentary .title-more small {
    font-size: 1.4rem; }

@media only screen and (max-width: 767px) {
  .list-banner {
    margin-top: 3rem; }
    .list-banner li:nth-child(odd) {
      margin-right: 0 !important;
      padding-right: .5rem; }
    .list-banner li:nth-child(even) {
      padding-left: .5rem; } }

.pr15 {
  padding-right: 1.5rem; }
  @media only screen and (max-width: 767px) {
    .pr15 {
      padding-right: 0; } }

.pr3 {
  padding-right: 3rem; }
  @media only screen and (max-width: 767px) {
    .pr3 {
      padding-right: 0; } }

/*オーバーレイ*/
@media only screen and (max-width: 767px) {
  .overlay {
    display: block;
    position: relative; }
    .overlay #btn-rank {
      position: fixed;
      bottom: 0px;
      display: block;
      background-color: rgba(255, 255, 255, 0.8);
      height: 75px;
      right: 0;
      width: 100%;
      padding: 1.2rem 1rem; }
      .overlay #btn-rank p {
        font-weight: bold;
        font-size: 16px; }
      .overlay #btn-rank .item a {
        text-decoration: none; }
      .overlay #btn-rank .item h2 {
        background: #0F2173;
        color: #fff;
        padding: 1rem;
        border-radius: 6px;
        font-size: 20px;
        text-align: center;
        width: 80%;
        font-weight: bold; } }
/*特集一覧*/
.special-box .tit-obi h3 {
  background: url(../img/icon/ico-hnav05.png) 1rem center no-repeat #4b4b4b;
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
  padding: 1.5rem 2rem 1.5rem 5rem;
  margin-bottom: 2rem; }
.special-box section {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  .special-box section .item {
    flex-basis: 48%; }
    .special-box section .item a {
      text-decoration: none; }
      .special-box section .item a .title {
        color: #fff;
        font-weight: bold;
        padding: 1.5rem 0rem;
        font-size: 2.3rem;
        letter-spacing: .05rem;
        text-align: center;
        border-radius: 15px;
        margin-bottom: 1rem; }
        @media only screen and (max-width: 767px) {
          .special-box section .item a .title {
            font-size: 1.7rem;
            margin-bottom: 0.5rem; } }
      .special-box section .item a .title-1 {
        background: #3377D3; }
      .special-box section .item a .title-2 {
        background: #F0A734; }
      .special-box section .item a .title-3 {
        background: #13A065; }
      .special-box section .item a .title-4 {
        background: #5394ED; }
      .special-box section .item a .title-5 {
        background: #F4BE18; }
      .special-box section .item a .title-6 {
        background: #EE663A; }
      .special-box section .item a .description {
        letter-spacing: .05rem;
        line-height: 1.5;
        color: #333; }
        @media only screen and (max-width: 767px) {
          .special-box section .item a .description {
            font-size: 1.3rem; } }

/*ポップアップ*/
.popup-area {
  background: #fff;
  border-radius: 5px;
  box-shadow: 0 0 4px 4px rgba(0, 0, 0, 0.4);
  display: none;
  left: 50%;
  padding: 2rem 1.5rem;
  position: fixed;
  text-align: center;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
  width: 300px;
  z-index: 9999; }
  @media only screen and (max-width: 767px) {
    .popup-area {
      width: 75%; } }
  .popup-area .popup-area-in a {
    color: #333; }
  .popup-area .popup-area-in img {
    margin: auto;
    border: solid 1px #888;
    width: 100%; }
  .popup-area button {
    position: absolute;
    top: -13%;
    border-radius: 25px;
    width: 35px;
    height: 35px;
    right: 0%;
    border: none;
    background: #ccc; }
    .popup-area button p {
      font-size: 2rem;
      line-height: 0.9 !important; }
      @media only screen and (max-width: 767px) {
        .popup-area button p {
          padding: 0px; } }

/*ポップアップ背景*/
.cover-eml {
  background: rgba(0, 0, 0, 0.3);
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 999;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }

/*-- ランキング（systemtrade-ranking）
--------------------------------------------------------------------------------*/
#wrap {
  background: #f5f1f0; }
  @media only screen and (max-width: 767px) {
    #wrap {
      background: #fff; } }
  #wrap .inner-contents {
    padding: 0px;
    overflow: hidden;
    max-width: 820px;
    margin: 0 auto;
    /*共通css */
    /*-- 案件一覧テーブル
    --------------------------------------------------------------------------------*/
    /*-- みだし
    -----------------------------------------------------------------------------*/
    /*ランキングのボックスレイアウト */
    /*-- 特集ページのコラム部分
    --------------------------------------------------------------------------------*/
    /*-- 案件テーブル(ロゴのみ)
    --------------------------------------------------------------------------------*/
    /*-- オススメボックス
    --------------------------------------------------------------------------------*/ }
    #wrap .inner-contents .visible-xs {
      display: none; }
    @media only screen and (max-width: 767px) {
      #wrap .inner-contents .hidden-xs {
        display: none; }
      #wrap .inner-contents .visible-xs {
        display: block; }
      #wrap .inner-contents .block-search .block-search-button {
        padding-bottom: 3.5rem; }
      #wrap .inner-contents .txt-caution {
        width: 90%;
        margin: 2rem auto; } }
    #wrap .inner-contents table {
      width: 100%;
      border-collapse: separate;
      border-spacing: 0px;
      border-top: 1px solid #DDD;
      border-left: 1px solid #DDD; }
    #wrap .inner-contents th, #wrap .inner-contents td {
      border-right: 1px solid #DDD;
      border-bottom: 1px solid #DDD; }
    #wrap .inner-contents th {
      background: #f3f3f3; }
    #wrap .inner-contents a {
      text-decoration: none; }
    #wrap .inner-contents li {
      list-style: none; }
    #wrap .inner-contents .block-search, #wrap .inner-contents .comp-table {
      background: #fff; }
    #wrap .inner-contents .txt-marker {
      background: linear-gradient(transparent 50%, #FFFFB6 50%); }
    #wrap .inner-contents .comparison-table {
      margin: 3rem 0; }
      @media only screen and (max-width: 767px) {
        #wrap .inner-contents .comparison-table {
          margin: 0; } }
    #wrap .inner-contents .table-scroll {
      overflow-x: scroll;
      margin-bottom: 1rem; }
      @media only screen and (max-width: 767px) {
        #wrap .inner-contents .table-scroll {
          margin: 0 0 3rem 0; } }
      #wrap .inner-contents .table-scroll h2 {
        background: #d42306;
        color: #fff;
        padding: 1.5rem 2rem;
        text-align: center;
        border-radius: 8px 8px 0 0;
        position: sticky;
        left: 0px;
        font-size: 2rem; }
      #wrap .inner-contents .table-scroll table {
        min-width: 1200px;
        table-layout: fixed;
        width: 100%; }
        #wrap .inner-contents .table-scroll table a {
          text-decoration: underline; }
      #wrap .inner-contents .table-scroll th {
        padding: 0;
        font-size: 1.2rem;
        padding: 1rem 0;
        text-align: center; }
      #wrap .inner-contents .table-scroll td {
        text-align: center;
        background: #fff;
        font-size: 1.2rem;
        font-weight: 700;
        min-width: 60px;
        padding: 5px;
        width: 60px;
        vertical-align: middle; }
        @media only screen and (max-width: 767px) {
          #wrap .inner-contents .table-scroll td {
            font-size: 1.1rem; } }
        #wrap .inner-contents .table-scroll td .img-icon {
          display: block;
          margin: 0 auto 3px;
          width: 20px; }
        #wrap .inner-contents .table-scroll td .img-rank {
          width: 94%;
          margin: auto; }
        #wrap .inner-contents .table-scroll td .refbutton {
          display: block;
          background: linear-gradient(180deg, #171fc0 50%, #13199c 100%);
          border-radius: 4px;
          box-shadow: 0 4px 0 #0a0f7b;
          color: #FFF;
          font-weight: bold;
          font-size: 1.2rem;
          padding: 1.2rem 0 0.9rem; }
          @media only screen and (max-width: 767px) {
            #wrap .inner-contents .table-scroll td .refbutton {
              padding: 0.7rem 0 0.5rem; } }
        #wrap .inner-contents .table-scroll td small {
          font-size: 1rem;
          font-weight: normal; }
      #wrap .inner-contents .table-scroll .th-comp {
        position: sticky;
        left: -1px; }
      #wrap .inner-contents .table-scroll .td-comp {
        position: sticky;
        left: -1px; }
        #wrap .inner-contents .table-scroll .td-comp a {
          text-decoration: underline; }
        #wrap .inner-contents .table-scroll .td-comp img {
          width: 84%;
          display: block;
          margin: auto; }
      #wrap .inner-contents .table-scroll .td-comp a {
        text-decoration: underline; }
      #wrap .inner-contents .table-scroll .td-comp {
        text-align: left; }
      #wrap .inner-contents .table-scroll .td-score {
        font-size: 1.1rem;
        color: #FF0000;
        background: #ffffbc; }
        #wrap .inner-contents .table-scroll .td-score p {
          white-space: nowrap; }
        #wrap .inner-contents .table-scroll .td-score span {
          font-size: 2rem;
          letter-spacing: -0.08rem; }
      #wrap .inner-contents .table-scroll .td-osusume {
        font-size: 1.1rem; }
      #wrap .inner-contents .table-scroll .sort {
        background: #f2f4f7 url(../img/icon/icon-asc.png) no-repeat right center;
        background-position: 94%;
        padding-right: 15px; }
    #wrap .inner-contents .table_caution {
      font-size: 1.0rem; }
      @media only screen and (max-width: 767px) {
        #wrap .inner-contents .table_caution {
          margin: 0 2rem 1.5rem; } }
    #wrap .inner-contents .section-midashi {
      position: relative;
      font-weight: bold;
      font-size: 3.2rem;
      text-align: center;
      line-height: 1.4;
      padding: 6rem 0 3rem 0; }
      #wrap .inner-contents .section-midashi::before {
        width: 7.25rem;
        height: 7.25rem;
        z-index: 1;
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        background-image: url(../img/ct_bg_pink02.png);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center;
        transform: rotate(-90deg); }
      #wrap .inner-contents .section-midashi::after {
        width: 7.25rem;
        height: 7.25rem;
        z-index: 1;
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        background-image: url(../img/ct_bg_pink02.png);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center; }
    @media only screen and (max-width: 767px) {
      #wrap .inner-contents .section-midashi {
        padding: 3rem 0 2rem 0; } }
    #wrap .inner-contents .sec-title {
      text-align: center;
      color: #FFF;
      padding: 2rem;
      position: relative;
      margin: 0 auto 4rem auto;
      padding: 2rem;
      background: #4c74bb;
      width: 100%; }
      #wrap .inner-contents .sec-title h2 {
        font-size: 2.4rem;
        color: #fff;
        font-weight: bold; }
      #wrap .inner-contents .sec-title p {
        font-size: 1.6rem;
        color: #fff;
        padding: 0 0 0.5rem 0;
        font-weight: bold;
        text-decoration: underline; }
      #wrap .inner-contents .sec-title::after {
        top: 100%;
        left: 50%;
        border: solid transparent;
        content: " ";
        height: 0;
        width: 0;
        position: absolute;
        pointer-events: none;
        border-color: rgba(255, 85, 72, 0);
        border-top-color: #4c74bb;
        border-width: 20px;
        margin-left: -20px; }
    #wrap .inner-contents .rank-point {
      margin: 0 5%;
      position: relative; }
      #wrap .inner-contents .rank-point p {
        font-size: 1.4rem;
        margin: 2rem 0;
        letter-spacing: 0.15rem;
        line-height: 1.95; }
      #wrap .inner-contents .rank-point .text-link {
        text-align: center;
        text-decoration: underline; }
      #wrap .inner-contents .rank-point .text-big {
        font-size: 2rem;
        font-weight: bold; }
      #wrap .inner-contents .rank-point .inner {
        background: #fff;
        margin: 3rem 0;
        padding: 1% 5%;
        border: 2px solid #4c74bb;
        border-radius: 8px;
        box-shadow: 0 0.5rem 0.5rem rgba(0, 0, 0, 0.2); }
      #wrap .inner-contents .rank-point::before, #wrap .inner-contents .rank-point::after {
        content: '';
        position: absolute;
        width: 0;
        height: 0;
        border-style: solid; }
      #wrap .inner-contents .rank-point::before {
        z-index: 2;
        bottom: -0.7em;
        left: 50%;
        margin-left: -10px;
        border-width: 14px 14px 0;
        border-color: #fff transparent; }
      #wrap .inner-contents .rank-point::after {
        z-index: 1;
        bottom: calc(-0.7em - 3px);
        left: 50%;
        margin-left: -8px;
        border-width: 12px 12px 0;
        border-color: #4c74bb transparent transparent; }
      @media only screen and (max-width: 767px) {
        #wrap .inner-contents .rank-point .text-big {
          font-size: 1.8rem;
          font-weight: bold; }
        #wrap .inner-contents .rank-point p {
          line-height: 1.95; }
        #wrap .inner-contents .rank-point br {
          display: none; } }
    #wrap .inner-contents .rank-box {
      background: #fff;
      margin-bottom: 3rem; }
      #wrap .inner-contents .rank-box .item {
        background: #fff;
        padding: 0 5rem 5rem 5rem; }
        #wrap .inner-contents .rank-box .item .item-title {
          display: flex;
          border-top: 2px solid #222;
          border-bottom: 2px solid #222;
          background: #ededed;
          margin: 0 0 3rem 0; }
          #wrap .inner-contents .rank-box .item .item-title .item-title-rank {
            padding: 2rem 1.5rem;
            font-weight: bold;
            background: #fff; }
            #wrap .inner-contents .rank-box .item .item-title .item-title-rank .rank {
              font-size: 3.6rem;
              color: #FF0000; }
            #wrap .inner-contents .rank-box .item .item-title .item-title-rank .text {
              font-size: 1.4rem;
              color: #222; }
          #wrap .inner-contents .rank-box .item .item-title .name {
            padding: 0;
            margin: 2rem;
            font-size: 2.4rem;
            background: none;
            color: #222;
            font-weight: bold;
            text-shadow: 0 0 black; }
            #wrap .inner-contents .rank-box .item .item-title .name a {
              text-decoration: underline;
              color: #222; }
        #wrap .inner-contents .rank-box .item .item-visual {
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between;
          margin: 0 0 1.5rem 0; }
        #wrap .inner-contents .rank-box .item .item-img {
          background-color: #efefef;
          width: 57%; }
          #wrap .inner-contents .rank-box .item .item-img img {
            width: 100%;
            height: auto;
            margin: auto;
            display: block; }
          #wrap .inner-contents .rank-box .item .item-img .item-img_textarea {
            display: flex; }
          #wrap .inner-contents .rank-box .item .item-img .text {
            font-size: 1.25rem;
            color: #222;
            padding: 1rem;
            font-weight: bold;
            line-height: 1.6;
            width: 70%; }
          #wrap .inner-contents .rank-box .item .item-img .item-button {
            width: 30%;
            padding: 1rem;
            font-size: 1.1rem;
            background: #171fc0;
            text-shadow: -1px -1px 0 #05084b;
            height: 40px;
            color: #FFF;
            font-weight: bold;
            border-radius: 4px;
            margin: 1rem;
            text-align: center; }
        #wrap .inner-contents .rank-box .item .item-info {
          width: 40%; }
          #wrap .inner-contents .rank-box .item .item-info .item-spec {
            text-align: center; }
            #wrap .inner-contents .rank-box .item .item-info .item-spec th {
              font-size: 1.3rem;
              width: 60%;
              font-weight: bold;
              padding: 1rem 0; }
            #wrap .inner-contents .rank-box .item .item-info .item-spec td {
              width: 40%;
              font-size: 1.3rem; }
        #wrap .inner-contents .rank-box .item .item-txt {
          font-size: 1.4rem;
          line-height: 1.95;
          color: #444;
          position: relative;
          margin: 4rem 0 2rem; }
          #wrap .inner-contents .rank-box .item .item-txt h3 {
            font-weight: bold;
            line-height: 1.4; }
          #wrap .inner-contents .rank-box .item .item-txt p {
            margin: 2rem 0 2rem -8%;
            line-height: 1.9; }
          #wrap .inner-contents .rank-box .item .item-txt ul {
            border-radius: 0 0 5px 5px;
            padding: 4rem 2rem 1rem 2rem;
            box-shadow: 0 0.5rem 0.5rem rgba(0, 0, 0, 0.2);
            border-radius: 5px;
            border-top: 1px solid #ccc; }
          #wrap .inner-contents .rank-box .item .item-txt li {
            background: url(../img/icon/icon-check.png) no-repeat 4px 5px;
            background-size: 2rem;
            line-height: 1.6;
            padding: 0.5rem 1rem 1.5rem 3rem;
            font-size: 1.6rem;
            letter-spacing: 0.1rem; }
            #wrap .inner-contents .rank-box .item .item-txt li h3 {
              font-size: 2.4rem;
              font-weight: bold; }
            #wrap .inner-contents .rank-box .item .item-txt li p {
              font-weight: 100;
              margin: 3rem 0 3rem -4%; }
          #wrap .inner-contents .rank-box .item .item-txt .title {
            position: absolute;
            top: -2rem;
            width: 100%;
            left: 2.5rem; }
            #wrap .inner-contents .rank-box .item .item-txt .title span {
              text-align: center;
              font-size: 1.4rem;
              color: #FFF;
              background: #3cbe7d;
              padding: 0.5rem 2.5rem;
              border-radius: 5px;
              font-weight: bold;
              justify-content: center;
              display: inline-block; }
        #wrap .inner-contents .rank-box .item .item-camp {
          margin: 0px 0 1.5rem 0;
          float: none;
          width: 100%;
          background: none;
          border: 0;
          padding: 0; }
          #wrap .inner-contents .rank-box .item .item-camp p {
            font-size: 1.8rem;
            border: 2px solid #171fc0;
            border-radius: 8px;
            padding: 1rem;
            position: relative;
            line-height: 1.2;
            font-weight: bold;
            color: #171fc0;
            text-align: center; }
            #wrap .inner-contents .rank-box .item .item-camp p::after {
              z-index: 1;
              bottom: calc(-0.5em - 2px);
              left: 50%;
              margin-left: -7px;
              border-width: 9px 9px 0;
              border-color: #171fc0 transparent transparent;
              content: '';
              position: absolute;
              width: 0;
              height: 0;
              border-style: solid; }
            #wrap .inner-contents .rank-box .item .item-camp p::before {
              content: '';
              position: absolute;
              width: 0;
              height: 0;
              border-style: solid;
              z-index: 2;
              bottom: -0.45em;
              left: 50%;
              margin-left: -6px;
              border-width: 8px 8px 0;
              border-color: #fff transparent; }
        #wrap .inner-contents .rank-box .item .cv-area {
          width: 100%; }
          #wrap .inner-contents .rank-box .item .cv-area .more {
            padding: 0;
            width: 34%; }
            #wrap .inner-contents .rank-box .item .cv-area .more a {
              font-size: 11px; }
          #wrap .inner-contents .rank-box .item .cv-area .cv {
            width: 64%; }
        #wrap .inner-contents .rank-box .item .cv-bt {
          margin: 0 0 2rem 0; }
          #wrap .inner-contents .rank-box .item .cv-bt .button {
            text-align: center;
            margin: 0 0 1rem 0; }
            #wrap .inner-contents .rank-box .item .cv-bt .button a {
              color: #fff;
              font-weight: bold;
              font-size: 2.4rem;
              border-radius: 8px;
              padding: 2.3rem 2rem 1.9rem 2rem;
              background: linear-gradient(180deg, #171fc0 50%, #13199c 100%);
              display: block;
              box-shadow: 0 4px 0 #0a0f7b; }
            #wrap .inner-contents .rank-box .item .cv-bt .button br {
              display: none; }
          #wrap .inner-contents .rank-box .item .cv-bt .text {
            text-align: center;
            font-size: 1.1rem; }
        @media only screen and (max-width: 767px) {
          #wrap .inner-contents .rank-box .item {
            padding: 5% 5% 8% 5%; }
            #wrap .inner-contents .rank-box .item .item-txt {
              margin: 4rem 0 2rem 0; }
            #wrap .inner-contents .rank-box .item .item-title {
              margin: 0 0 2rem 0; }
            #wrap .inner-contents .rank-box .item .item-img {
              width: 100%; }
            #wrap .inner-contents .rank-box .item .item-txt .title {
              text-align: center;
              left: 0; }
              #wrap .inner-contents .rank-box .item .item-txt .title span {
                border-radius: 50px; }
            #wrap .inner-contents .rank-box .item .item-txt ul {
              padding: 4rem 1rem 1rem 1rem; }
            #wrap .inner-contents .rank-box .item .item-info {
              width: 100%; }
            #wrap .inner-contents .rank-box .item .item-spec table {
              margin-bottom: 7px; }
            #wrap .inner-contents .rank-box .item .item-camp p {
              font-size: 1.3rem;
              text-align: left; }
            #wrap .inner-contents .rank-box .item .txt-caution {
              text-align: right;
              padding: 0; }
            #wrap .inner-contents .rank-box .item .cv-bt .button a {
              font-size: 2.2rem;
              line-height: 1.4;
              padding: 1.8rem 2rem 1.4rem 2rem; }
            #wrap .inner-contents .rank-box .item .cv-bt .button br {
              display: block; } }
      #wrap .inner-contents .rank-box .item-sp {
        width: 100%;
        margin: -20px auto 5px;
        margin-bottom: 10px; }
        #wrap .inner-contents .rank-box .item-sp .item-in {
          padding: 5%; }
        #wrap .inner-contents .rank-box .item-sp .item-title {
          display: flex;
          border-top: 2px solid #222;
          border-bottom: 2px solid #222;
          margin: 0 5%;
          background: #ededed; }
          #wrap .inner-contents .rank-box .item-sp .item-title .item-title-rank {
            padding: 1.5rem 1.5rem;
            font-weight: bold;
            background: #fff; }
            #wrap .inner-contents .rank-box .item-sp .item-title .item-title-rank .rank {
              font-size: 3.6rem;
              color: #FF0000; }
            #wrap .inner-contents .rank-box .item-sp .item-title .item-title-rank .text {
              font-size: 1.4rem;
              color: #222; }
          #wrap .inner-contents .rank-box .item-sp .item-title .name {
            padding: 0;
            margin: 24px 0 0 2rem;
            font-size: 2.4rem;
            background: none;
            color: #222;
            font-weight: bold;
            text-shadow: 0 0 black; }
            #wrap .inner-contents .rank-box .item-sp .item-title .name a {
              text-decoration: underline;
              color: #222; }
        #wrap .inner-contents .rank-box .item-sp .item-img {
          margin-bottom: 2rem;
          background-color: #efefef; }
          #wrap .inner-contents .rank-box .item-sp .item-img .item-img_textarea {
            display: flex; }
          #wrap .inner-contents .rank-box .item-sp .item-img img {
            width: 100%;
            height: 172px;
            margin: auto;
            display: block; }
          #wrap .inner-contents .rank-box .item-sp .item-img .text {
            font-size: 1.25rem;
            color: #222;
            padding: 1rem;
            font-weight: bold;
            line-height: 1.6;
            width: 70%; }
          #wrap .inner-contents .rank-box .item-sp .item-img .item-button {
            width: 30%;
            padding: 1rem;
            font-size: 1.1rem;
            background: #3cbe7d;
            color: #FFF;
            font-weight: bold;
            border-radius: 4px;
            margin: 1rem;
            text-align: center; }
        #wrap .inner-contents .rank-box .item-sp .item-info {
          width: 100%; }
          #wrap .inner-contents .rank-box .item-sp .item-info .item-spec {
            overflow: hidden;
            margin-bottom: 7px; }
            #wrap .inner-contents .rank-box .item-sp .item-info .item-spec .th {
              font-size: 1.5rem;
              width: 50%;
              float: left;
              color: #999;
              font-weight: bold; }
            #wrap .inner-contents .rank-box .item-sp .item-info .item-spec .td {
              width: 50%;
              font-size: 1.6rem;
              float: right;
              color: #333;
              font-weight: bold; }
              #wrap .inner-contents .rank-box .item-sp .item-info .item-spec .td img {
                width: 20px; }
            #wrap .inner-contents .rank-box .item-sp .item-info .item-spec .tr {
              overflow: hidden;
              border-bottom: 1px dotted #CCC;
              padding: 1rem 0;
              display: -webkit-flex;
              display: flex;
              align-items: center; }
        #wrap .inner-contents .rank-box .item-sp .item-txt {
          clear: both;
          font-size: 1.4rem;
          line-height: 1.95;
          color: #444;
          position: relative;
          margin: 4rem 0 0 0; }
          #wrap .inner-contents .rank-box .item-sp .item-txt h3 {
            font-weight: bold;
            line-height: 1.4; }
          #wrap .inner-contents .rank-box .item-sp .item-txt p {
            margin: 2rem 0 2rem -8%;
            line-height: 1.9; }
          #wrap .inner-contents .rank-box .item-sp .item-txt ul {
            border: 1.5px solid #444;
            border-radius: 5px;
            margin: 2rem 0;
            padding: 4rem 1rem 1rem 1rem; }
          #wrap .inner-contents .rank-box .item-sp .item-txt li {
            background: url(../img/icon/icon-check.png) no-repeat 4px 5px;
            background-size: 2rem;
            line-height: 1.6;
            padding: 0.5rem 1rem 1.5rem 3rem;
            font-size: 1.5rem; }
          #wrap .inner-contents .rank-box .item-sp .item-txt span {
            background-color: #FFFFB6;
            color: #EB5404;
            font-weight: bold; }
          #wrap .inner-contents .rank-box .item-sp .item-txt .title {
            position: absolute;
            top: -2rem;
            width: 100%;
            text-align: center; }
            #wrap .inner-contents .rank-box .item-sp .item-txt .title span {
              text-align: center;
              font-size: 1.4rem;
              color: #FFF;
              background: #4c74bb;
              padding: 0.5rem 2.5rem;
              border: 1px solid #222;
              border-radius: 50px;
              font-weight: bold;
              justify-content: center;
              display: inline-block; }
        #wrap .inner-contents .rank-box .item-sp .item-txt-long {
          color: #444;
          font-size: 1.4rem;
          line-height: 1.4em;
          margin-bottom: 10px; }
          #wrap .inner-contents .rank-box .item-sp .item-txt-long p {
            font-size: 1.4rem; }
        #wrap .inner-contents .rank-box .item-sp .item-tag {
          overflow: hidden;
          margin: 2rem 0; }
          #wrap .inner-contents .rank-box .item-sp .item-tag li {
            width: 32.3%;
            font-size: 9px;
            padding: 2px 3px 1px 3px;
            margin: 0.5%; }
        #wrap .inner-contents .rank-box .item-sp .table-spec th {
          font-size: 10px;
          line-height: 1.3;
          padding: 3px;
          text-align: center; }
        #wrap .inner-contents .rank-box .item-sp .table-spec .th-sub {
          background: #fcfcfc; }
        #wrap .inner-contents .rank-box .item-sp .table-spec td {
          font-size: 13px;
          font-weight: bold;
          line-height: 1.3;
          padding: 3px;
          text-align: center; }
          #wrap .inner-contents .rank-box .item-sp .table-spec td small {
            font-size: 10px;
            color: #8C8C8C;
            display: block;
            font-weight: normal; }
        #wrap .inner-contents .rank-box .item-sp .table-spec .txt-big {
          font-size: 15px; }
        #wrap .inner-contents .rank-box .item-sp .txt-caution {
          padding: 0.2rem 0 2rem 0;
          text-align: right; }
        #wrap .inner-contents .rank-box .item-sp .item-camp {
          margin: 0px 0 1.5rem 0;
          float: none;
          width: 100%;
          background: none;
          border: 0;
          padding: 0; }
          #wrap .inner-contents .rank-box .item-sp .item-camp p {
            font-size: 1.3rem;
            border: 2px solid #3cbe7d;
            border-radius: 8px;
            padding: 1rem;
            position: relative;
            line-height: 1.2;
            font-weight: bold;
            color: #3cbe7d; }
            #wrap .inner-contents .rank-box .item-sp .item-camp p::after {
              z-index: 1;
              bottom: calc(-0.5em - 3px);
              left: 50%;
              margin-left: -7px;
              border-width: 9px 9px 0;
              border-color: #3cbe7d transparent transparent;
              content: '';
              position: absolute;
              width: 0;
              height: 0;
              border-style: solid; }
            #wrap .inner-contents .rank-box .item-sp .item-camp p::before {
              content: '';
              position: absolute;
              width: 0;
              height: 0;
              border-style: solid;
              z-index: 2;
              bottom: -0.5em;
              left: 50%;
              margin-left: -6px;
              border-width: 8px 8px 0;
              border-color: #fff transparent; }
        #wrap .inner-contents .rank-box .item-sp .cv-area {
          width: 100%; }
          #wrap .inner-contents .rank-box .item-sp .cv-area .more {
            padding: 0;
            width: 34%; }
            #wrap .inner-contents .rank-box .item-sp .cv-area .more a {
              font-size: 11px; }
          #wrap .inner-contents .rank-box .item-sp .cv-area .cv {
            width: 64%; }
        #wrap .inner-contents .rank-box .item-sp .cv-bt {
          margin: 0 0 2rem 0; }
          #wrap .inner-contents .rank-box .item-sp .cv-bt .button {
            text-align: center;
            margin: 0 0 1rem 0; }
            #wrap .inner-contents .rank-box .item-sp .cv-bt .button a {
              color: #fff;
              font-weight: bold;
              font-size: 2rem;
              border-radius: 8px;
              padding: 1.5rem 2rem 1.2rem 2rem;
              background: linear-gradient(180deg, #171fc0 50%, #13199c 100%);
              display: block;
              box-shadow: 0 4px 0 #0a0f7b; }
          #wrap .inner-contents .rank-box .item-sp .cv-bt .text {
            text-align: center;
            font-size: 1.1rem; }
      #wrap .inner-contents .rank-box #rank-acc {
        text-align: center;
        padding: 0 0 5rem 0; }
        #wrap .inner-contents .rank-box #rank-acc .inner {
          margin: auto;
          padding: 1.5rem;
          width: 70%;
          border: 1px solid #222;
          border-radius: 8px;
          font-size: 1.6rem;
          font-weight: bold; }
      #wrap .inner-contents .rank-box .toggle {
        display: none; }
    @media only screen and (max-width: 767px) {
      #wrap .inner-contents .rank-box .item .cv-area .more a {
        padding: 8px 0;
        box-shadow: 0 2px 0 #b6b6b6; }
      #wrap .inner-contents .rank-box .item-sp {
        margin: 0px auto 1rem;
        border: 0; } }
    #wrap .inner-contents .special-column {
      background: #fff;
      display: inline-block;
      width: 100%; }
      #wrap .inner-contents .special-column .inner {
        margin: 0 5rem; }
      #wrap .inner-contents .special-column h3 {
        margin: 2rem 0;
        font-size: 2.4rem;
        padding: 2rem;
        line-height: 1.4;
        border-radius: 8px;
        background: #f3f3f3; }
      #wrap .inner-contents .special-column h4 {
        margin: 3rem 0;
        font-size: 2rem;
        font-weight: bold;
        border-top: 1px solid #093076;
        padding: 1.5rem;
        border-bottom: 1px solid #093076; }
      #wrap .inner-contents .special-column p {
        margin: 2rem 0;
        font-size: 1.5rem;
        letter-spacing: 0.15rem;
        line-height: 1.95; }
      #wrap .inner-contents .special-column ul {
        margin: 3rem 0; }
      #wrap .inner-contents .special-column small {
        font-size: 1rem; }
      #wrap .inner-contents .special-column .ranking-button {
        text-align: center;
        margin: 0 0 5rem 0; }
        #wrap .inner-contents .special-column .ranking-button a {
          color: #fff;
          font-weight: bold;
          font-size: 1.8rem;
          border-radius: 8px;
          line-height: 1.4;
          padding: 2.3rem 2rem 1.9rem 2rem;
          background: linear-gradient(180deg, #171fc0 50%, #13199c 100%);
          display: block;
          box-shadow: 0 4px 0 #0a0f7b; }
        @media only screen and (max-width: 767px) {
          #wrap .inner-contents .special-column .ranking-button {
            margin: 0 0 .5rem; } }
      #wrap .inner-contents .special-column .detail-column {
        text-align: right;
        margin: -3rem 0 3rem 0; }
        #wrap .inner-contents .special-column .detail-column a {
          font-size: 1.3rem;
          color: #222;
          text-decoration: underline; }
      @media only screen and (max-width: 767px) {
        #wrap .inner-contents .special-column .inner {
          margin: 0 5%; }
        #wrap .inner-contents .special-column h3 {
          font-size: 1.8rem;
          padding: 1.5rem 2rem; } }
      #wrap .inner-contents .special-column .txt-matome {
        background: #fdfce4;
        border: 1px solid #d42306;
        border-top: 5px solid #d42306;
        margin: 3rem 0 2rem;
        padding: 2rem; }
        #wrap .inner-contents .special-column .txt-matome .title {
          color: #d42306;
          font-size: 2.2rem;
          font-weight: 700;
          margin-bottom: 1.5rem; }
          @media only screen and (max-width: 767px) {
            #wrap .inner-contents .special-column .txt-matome .title {
              font-size: 1.8rem; } }
        #wrap .inner-contents .special-column .txt-matome ul {
          margin: 0; }
          #wrap .inner-contents .special-column .txt-matome ul li:last-child {
            margin-bottom: 0; }
        #wrap .inner-contents .special-column .txt-matome p:last-child {
          margin-bottom: 0; }
      #wrap .inner-contents .special-column .title-txt-big {
        text-align: center;
        position: relative;
        padding: 1.5rem 2rem;
        font-size: 2.0rem;
        margin-bottom: 30px;
        color: #fff;
        font-weight: bold;
        line-height: 1.4;
        background: #ff7d7d;
        border-radius: 8px; }
        #wrap .inner-contents .special-column .title-txt-big::after {
          top: 95%;
          left: 50%;
          border: solid transparent;
          content: " ";
          height: 0;
          width: 0;
          position: absolute;
          pointer-events: none;
          border-color: rgba(255, 85, 72, 0);
          border-top-color: #ff7d7d;
          border-width: 20px;
          margin-left: -20px; }
    #wrap .inner-contents .comp-table {
      margin-bottom: 3rem;
      padding: 0 0 3rem 0; }
      #wrap .inner-contents .comp-table ul {
        display: flex;
        flex-wrap: wrap;
        padding: 0% 0% 0% 0;
        max-width: 720px;
        margin: auto;
        justify-content: space-between; }
      #wrap .inner-contents .comp-table li {
        width: 48%;
        margin: 0 0 4% 0;
        position: relative; }
        #wrap .inner-contents .comp-table li a {
          border-radius: 5px;
          padding: 3.5rem 1rem;
          background: #fff;
          display: block;
          height: 6rem;
          box-shadow: 0 0.5rem 0.5rem rgba(0, 0, 0, 0.2); }
          @media only screen and (max-width: 767px) {
            #wrap .inner-contents .comp-table li a {
              padding: 2rem 1rem; } }
        #wrap .inner-contents .comp-table li img {
          width: 50%;
          display: block;
          margin: auto;
          position: absolute;
          transform: translate(-50%, -50%);
          top: 50%;
          left: 50%; }
        #wrap .inner-contents .comp-table li img.logo-54 {
          width: 30%; }
        @media only screen and (max-width: 767px) {
          #wrap .inner-contents .comp-table li img.logo-54 {
            width: 50%; } }
    @media only screen and (max-width: 767px) {
      #wrap .inner-contents .comp-table ul {
        margin: 0 4%; }
        #wrap .inner-contents .comp-table ul li img {
          width: 65%; } }
    #wrap .inner-contents .osusume-box .osusume-item {
      border: 1px solid #222;
      border-radius: 8px;
      box-shadow: 0 0.5rem 0.5rem rgba(0, 0, 0, 0.2);
      margin: 0 0 2rem 0; }
      #wrap .inner-contents .osusume-box .osusume-item a {
        padding: 2rem;
        display: block;
        color: #222; }
      #wrap .inner-contents .osusume-box .osusume-item ul {
        margin: 0; }
      #wrap .inner-contents .osusume-box .osusume-item li {
        font-size: 1.6rem;
        line-height: 1.95;
        background: url(../img/icon/icon-check.png) no-repeat 0px 5px;
        background-size: 2rem;
        padding: 0 0 0 3rem; }
      #wrap .inner-contents .osusume-box .osusume-item .item-flex {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; }
      #wrap .inner-contents .osusume-box .osusume-item .item-title {
        font-size: 2.4rem;
        font-weight: bold;
        margin: 0 0 1.5rem 0; }
      #wrap .inner-contents .osusume-box .osusume-item .item-visual {
        width: 20%; }
        #wrap .inner-contents .osusume-box .osusume-item .item-visual img {
          width: 100%; }
      #wrap .inner-contents .osusume-box .osusume-item .item-txt {
        width: 77%; }
      @media only screen and (max-width: 767px) {
        #wrap .inner-contents .osusume-box .osusume-item a {
          padding: 1.5rem; }
        #wrap .inner-contents .osusume-box .osusume-item li {
          font-size: 1.2rem; }
        #wrap .inner-contents .osusume-box .osusume-item .item-title {
          font-size: 1.8rem; }
        #wrap .inner-contents .osusume-box .osusume-item .item-visual {
          width: 27%; }
        #wrap .inner-contents .osusume-box .osusume-item .item-txt {
          width: 70%; } }

/* /////////ランキング（systemtrade-ranking) end ////////////*/
/*--ＤＭＭ特単用　おすすめ
--------------------------------------------------------------------------------*/
.recommend {
  margin: 3rem auto 4rem;
  background: #ffffcc;
  border-radius: 5px;
  box-shadow: rgba(0, 0, 0, 0.2) 0rem 0.2rem 0.5rem;
  padding: 1rem 0; }
  @media only screen and (max-width: 767px) {
    .recommend {
      margin: 0 auto 3rem;
      width: 98%;
      padding: .5rem 0;
      border-radius: 10px; } }
  .recommend .recommend__mainttlbox {
    background: #FFFFCC;
    color: #FF0000;
    margin: auto;
    text-align: center;
    padding: .5rem 0; }
    @media only screen and (max-width: 767px) {
      .recommend .recommend__mainttlbox {
        padding: 0; } }
    .recommend .recommend__mainttlbox .recommend__mainttl {
      text-align: center;
      font-size: 2.8rem;
      letter-spacing: .3rem;
      display: flex;
      justify-content: center;
      align-items: center;
      background: #FFFFCC;
      color: #FF0000; }
      @media only screen and (max-width: 767px) {
        .recommend .recommend__mainttlbox .recommend__mainttl {
          display: block;
          line-height: 1.2;
          margin: .3rem auto .5rem;
          letter-spacing: .08rem; } }
      .recommend .recommend__mainttlbox .recommend__mainttl::before, .recommend .recommend__mainttlbox .recommend__mainttl::after {
        content: '';
        width: 3px;
        height: 35px;
        background-color: #FFC857; }
        @media only screen and (max-width: 767px) {
          .recommend .recommend__mainttlbox .recommend__mainttl::before, .recommend .recommend__mainttlbox .recommend__mainttl::after {
            display: none; } }
      .recommend .recommend__mainttlbox .recommend__mainttl::before {
        transform: rotate(-35deg);
        margin-right: 20px; }
      .recommend .recommend__mainttlbox .recommend__mainttl::after {
        transform: rotate(35deg);
        margin-left: 20px; }
      .recommend .recommend__mainttlbox .recommend__mainttl .pc-none {
        display: none; }
        @media only screen and (max-width: 767px) {
          .recommend .recommend__mainttlbox .recommend__mainttl .pc-none {
            display: block; } }
    .recommend .recommend__mainttlbox .fa-crown::before {
      color: #FFC857;
      font-size: 20px;
      padding-bottom: .5rem; }
  .recommend .recommend__box {
    width: 92%;
    border-radius: 5px;
    margin: auto;
    letter-spacing: .05rem; }
    @media only screen and (max-width: 767px) {
      .recommend .recommend__box {
        width: 100%; } }
    .recommend .recommend__box .recommend__ttl {
      background: #ff7d7d;
      padding: 1.5rem 1rem;
      font-size: 1.8rem;
      color: #fff;
      font-weight: bold;
      text-align: center;
      letter-spacing: .08rem;
      line-height: 1.2; }
      @media only screen and (max-width: 767px) {
        .recommend .recommend__box .recommend__ttl {
          padding: 1rem .2rem;
          font-size: 1.6rem; } }
    .recommend .recommend__box .recommend__logo {
      margin: 2rem auto 1rem; }
      @media only screen and (max-width: 767px) {
        .recommend .recommend__box .recommend__logo {
          margin: 1rem auto;
          text-align: center; } }
      .recommend .recommend__box .recommend__logo img {
        width: 90px; }
        @media only screen and (max-width: 767px) {
          .recommend .recommend__box .recommend__logo img {
            margin: auto;
            width: 130px; } }
    .recommend .recommend__box .recommend__inner {
      padding: 0 0 1rem;
      display: flex;
      justify-content: space-between; }
      @media only screen and (max-width: 767px) {
        .recommend .recommend__box .recommend__inner {
          display: block;
          padding: 0 .8rem 1rem; } }
      .recommend .recommend__box .recommend__inner .recommend__name-area {
        width: 40%; }
        @media only screen and (max-width: 767px) {
          .recommend .recommend__box .recommend__inner .recommend__name-area {
            width: 75%;
            margin: 0rem auto 1rem; }
            .recommend .recommend__box .recommend__inner .recommend__name-area p {
              text-align: center; } }
        .recommend .recommend__box .recommend__inner .recommend__name-area a {
          color: #333;
          font-weight: bold; }
      .recommend .recommend__box .recommend__inner .recommend__txt-area {
        width: 57%;
        background: #fff;
        padding: 1rem;
        border-radius: 5px; }
        @media only screen and (max-width: 767px) {
          .recommend .recommend__box .recommend__inner .recommend__txt-area {
            width: 100%;
            margin: 0 auto .5rem;
            padding: .5rem;
            font-weight: bold; } }
        .recommend .recommend__box .recommend__inner .recommend__txt-area ul li {
          font-size: 1.5rem;
          line-height: 1.5;
          margin-bottom: 2rem;
          text-indent: -2.5rem;
          list-style: none;
          padding-left: 3rem; }
          @media only screen and (max-width: 767px) {
            .recommend .recommend__box .recommend__inner .recommend__txt-area ul li {
              line-height: 1.4;
              margin-bottom: 1rem;
              font-size: 1.4rem; } }
          .recommend .recommend__box .recommend__inner .recommend__txt-area ul li::before {
            content: "\f14a";
            color: #4CFF4C;
            font-family: "Font Awesome 6 Free";
            font-weight: 900;
            font-size: 20px;
            padding-right: .8rem; }
          .recommend .recommend__box .recommend__inner .recommend__txt-area ul li:last-child {
            margin-bottom: 0; }
          .recommend .recommend__box .recommend__inner .recommend__txt-area ul li span.red {
            color: #FF0000;
            font-weight: bold; }
          .recommend .recommend__box .recommend__inner .recommend__txt-area ul li span.underline {
            text-decoration: underline; }
          .recommend .recommend__box .recommend__inner .recommend__txt-area ul li small {
            font-size: 1rem; }
        .recommend .recommend__box .recommend__inner .recommend__txt-area ul p {
          font-size: 1.3rem;
          line-height: 1.4;
          padding: 0 1rem; }
          @media only screen and (max-width: 767px) {
            .recommend .recommend__box .recommend__inner .recommend__txt-area ul p {
              font-size: 1.2rem; } }
    .recommend .recommend__box .recommend__cv-btn {
      width: 60%;
      background: #3cbe7d;
      border-bottom: #396736 4px solid;
      border-radius: 5px;
      text-align: center;
      margin: 1rem auto 2.5rem;
      position: relative; }
      @media only screen and (max-width: 767px) {
        .recommend .recommend__box .recommend__cv-btn {
          width: 90%;
          margin: 0rem auto 1.5rem; } }
      .recommend .recommend__box .recommend__cv-btn a {
        display: block;
        width: 100%;
        color: #fff;
        font-size: 1.6rem;
        font-weight: bold;
        padding: 1.5rem; }
        @media only screen and (max-width: 767px) {
          .recommend .recommend__box .recommend__cv-btn a {
            padding: 2rem 1.5rem; } }
      .recommend .recommend__box .recommend__cv-btn::after {
        border-top: solid 3px #fff;
        border-right: solid 3px #fff;
        -webkit-transform: rotate(45deg);
        content: "";
        display: block;
        height: 8px;
        right: 2rem;
        position: absolute;
        top: 40%;
        transform: rotate(45deg);
        width: 8px; }
    .recommend .recommend__box .recommend__caution {
      font-size: 1rem;
      margin: 2rem 4rem 1rem;
      color: #9D9A9A; }
      @media only screen and (max-width: 767px) {
        .recommend .recommend__box .recommend__caution {
          margin: 1rem 2rem; } }

/* サイドバー無い場合のおすすめ枠調整 */
.lp .recommend {
  width: 85%; }
  @media only screen and (max-width: 767px) {
    .lp .recommend {
      width: 98%; } }

.recommend-txt {
  font-size: .9rem;
  text-align: center;
  margin-bottom: .5rem;
  border-width: 1px;
  background: #ff0000;
  color: #fff; }
  @media only screen and (max-width: 767px) {
    .recommend-txt {
      font-size: 1rem;
      font-weight: bold; } }

/* 比較表別デザイン用調整 */
.comparison .table-hikaku td.comp .recommend-txt {
  margin-bottom: .2rem; }
.comparison .table-hikaku td.comp .comp-inner {
  display: flex;
  align-items: center; }
  .comparison .table-hikaku td.comp .comp-inner div {
    margin-right: .1rem; }
    .comparison .table-hikaku td.comp .comp-inner div .fa-crown:before {
      font-size: 20px;
      color: #FFC857; }
    .comparison .table-hikaku td.comp .comp-inner div span.icon-badge {
      position: absolute;
      left: 13%;
      top: 61%;
      font-size: .8rem;
      font-weight: bold; }
      @media only screen and (max-width: 767px) {
        .comparison .table-hikaku td.comp .comp-inner div span.icon-badge {
          left: 12%;
          top: 62%; } }
.comparison .table-hikaku tr:first-child td {
  background-color: #ffffcc; }
.comparison .table-hikaku td .img-logo {
  margin: auto; }

/*# sourceMappingURL=lp.css.map */
</pre></body></html>