@charset "UTF-8";
/* ------------------------------------------------- *
 *        ＠リセットCSS　　　　　　　　　　　　　　　　　　
 * ------------------------------------------------- */
ul {
  padding: 0;
  margin: 0; }

li {
  list-style: none; }

h1 {
  padding: 0;
  margin: 0; }

h1, h2, h3, h4, h5 {
  font-size: 20px;
  padding: 0;
  margin: 0; }
  @media only screen and (max-width: 767px) {
    h1, h2, h3, h4, h5 {
      font-size: 18px; } }

p {
  line-height: 1.7;
  font-size: 15px;
  padding: 0;
  margin: 0; }
  @media only screen and (max-width: 767px) {
    p {
      font-size: 14px; } }

a {
  color: #337ab7;
  text-decoration: none; }

dd {
  margin: 0; }

img {
  display: block; }

table {
  width: 100%;
  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; }

th, td {
  padding: 8px;
  border-right: 1px solid #DDD;
  border-bottom: 1px solid #DDD; }

* {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Lucida Grande", "Meiryo", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

/* ------------------------------------------------- *
 *        ＠Bootstrap　　　　　　　　　　　　　　　　　　
 * ------------------------------------------------- */
.visible-xs,
.visible-sm,
.visible-md,
.visible-lg {
  display: none !important; }

@media (max-width: 767px) {
  .visible-xs {
    display: block !important; } }
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important; } }
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important; } }
@media (min-width: 1200px) {
  .visible-lg {
    display: block !important; } }
@media (max-width: 767px) {
  .hidden-xs {
    display: none !important; } }
@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important; } }
@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important; } }
@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important; } }
/* ------------------------------------------------- *
 *        ＠レイアウトCSS　　　　　　　　　　　　　　　　　　
 * ------------------------------------------------- */
body {
  background-color: #fff;
  margin: 0; }

#wrap {
  max-width: 960px;
  margin: 0 auto; }
  @media only screen and (max-width: 992px) {
    #wrap {
      margin: 0 15px; } }
  @media only screen and (max-width: 767px) {
    #wrap {
      padding: 0;
      margin: 0; } }

#main {
  width: 100%;
  float: left; }
  @media only screen and (max-width: 767px) {
    #main {
      width: 100%;
      float: none; } }

.main-top {
  width: 100%;
  float: left; }
  @media only screen and (max-width: 767px) {
    .main-top {
      width: 100%;
      float: none; } }

#main-w {
  overflow: hidden;
  width: 100%; }

.inner {
  max-width: 960px;
  margin: 0 auto; }

/* ------------------------------------------------- *
 *        ＠マルチクラスCSS　　　　　　　　　　　　　　　　　　
 * ------------------------------------------------- */
.img-w {
  width: 100%;
  height: auto; }

/* テキスト関係 */
.txt-red {
  color: red;
  font-weight: bold; }

.txt-marker {
  background-image: linear-gradient(transparent 50%, #ffff00 50%);
  font-weight: bold; }

.txt-waku {
  border: 7px solid #53b4c5;
  padding: 30px;
  margin-bottom: 30px; }
  @media only screen and (max-width: 767px) {
    .txt-waku {
      padding: 20px; } }

.txt-red-waku {
  margin: 0 7px 0 2px;
  padding: 0.2em 0.5em;
  color: red;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.1em;
  border-radius: 17px;
  background-color: #fff; }

/*　各セクションのタイトルに使用 */
.section-title {
  background: #004572;
  font-size: 18px;
  color: #FFF;
  padding: 12px 16px; }
  @media only screen and (max-width: 767px) {
    .section-title {
      padding: 16px;
      font-size: 15px;
      line-height: 1.2; } }
  .section-title a {
    color: #fff;
    text-decoration: underline; }
    .section-title a:hover {
      text-decoration: none; }

/*　各アーティクル要素のタイトルに使用(アーティクル→それ単体だけでもコンテンツとして成り立つもの */
.article-title {
  font-size: 28px;
  background-color: #F3F3F3;
  border-radius: 10px;
  padding: 16px 20px;
  line-height: 1.2;
  margin-bottom: 16px;
  color: #333;
  font-weight: bold; }
  @media only screen and (max-width: 767px) {
    .article-title {
      font-size: 20px; } }

.clearfix::after {
  content: '';
  display: block;
  clear: both; }

.wf-Lato {
  font-family: 'Lato', serif; }

.wf-Lora {
  font-family: 'Lora', serif; }

.wf-BarLow {
  font-family: 'Barlow Semi Condensed', sans-serif; }

/* ------------------------------------------------- *
 *        ＠モジュールCSS（単体で使いまわす部分）
 * ------------------------------------------------- */
#pan {
  margin-bottom: 16px;
  font-size: 12px; }

#page-top {
  position: fixed;
  bottom: 32px;
  right: 0;
  display: none; }
  #page-top a {
    display: block; }

/* 子カテゴリリスト */
.cat-child-list {
  margin-bottom: 24px;
  overflow: hidden; }
  @media only screen and (max-width: 767px) {
    .cat-child-list {
      margin-bottom: 0; } }
  .cat-child-list li {
    width: 50%;
    float: left; }
    @media only screen and (max-width: 767px) {
      .cat-child-list li {
        width: 100%;
        float: none; } }
    .cat-child-list li a {
      display: block;
      padding: 16px;
      border: 1px solid #DDD; }
      @media only screen and (max-width: 767px) {
        .cat-child-list li a {
          padding: 10px; } }

/* 口コミリスト */
.kuti-list-box {
  margin-bottom: 24px; }
  .kuti-list-box h2 {
    font-size: 20px;
    margin-bottom: 16px; }
  .kuti-list-box li {
    border-top: 1px solid #DDD;
    padding: 16px 0; }
  .kuti-list-box .rate {
    overflow: hidden; }
    .kuti-list-box .rate p {
      float: left;
      padding-right: 8px; }
    .kuti-list-box .rate img {
      width: auto;
      height: 16px; }
  .kuti-list-box .title {
    font-weight: bold; }
  .kuti-list-box .txt {
    font-size: 13px; }
    .kuti-list-box .txt a {
      text-decoration: underline;
      padding-left: 16px; }

/* 口コミボックス */
.kuti-rating-box {
  font-weight: bold;
  margin-bottom: 15px;
  overflow: hidden; }
  @media only screen and (max-width: 767px) {
    .kuti-rating-box {
      margin-bottom: 10px; } }
  .kuti-rating-box .rating-star {
    float: left; }
    @media only screen and (max-width: 767px) {
      .kuti-rating-box .rating-star {
        font-size: 12px;
        margin-right: 10px; } }
    .kuti-rating-box .rating-star .star {
      height: 21px;
      padding-left: 130px; }
      @media only screen and (max-width: 767px) {
        .kuti-rating-box .rating-star .star {
          padding-left: 87px; } }
  .kuti-rating-box .rating-count {
    float: left;
    padding-left: 15px; }
    @media only screen and (max-width: 767px) {
      .kuti-rating-box .rating-count {
        padding-left: 0;
        font-size: 12px; } }

.kutikomi-box {
  background: #DDD;
  padding: 15px 15px 1px 15px;
  margin-bottom: 30px; }
  @media only screen and (max-width: 767px) {
    .kutikomi-box {
      padding: 5px 5px 1px 5px; } }
  .kutikomi-box .item {
    background: #FFF;
    padding: 17px 20px 20px 20px;
    border: 1px solid #DDD;
    overflow: hidden;
    margin-bottom: 15px;
    background: url("../img/bg/bg-note.png"); }
    @media only screen and (max-width: 767px) {
      .kutikomi-box .item {
        padding: 15px;
        margin-bottom: 5px; } }
    .kutikomi-box .item .title {
      font-size: 18px;
      font-weight: bold;
      margin-bottom: 10px; }
      @media only screen and (max-width: 767px) {
        .kutikomi-box .item .title {
          font-size: 14px;
          margin-bottom: 5px; } }
    .kutikomi-box .item .head {
      width: 100%;
      height: 21px;
      padding-left: 130px;
      margin-bottom: 15px; }
      @media only screen and (max-width: 767px) {
        .kutikomi-box .item .head {
          font-size: 14px;
          padding-left: 90px;
          height: 16px;
          margin-bottom: 10px; } }
    .kutikomi-box .item p {
      margin-bottom: 0 !important;
      font-size: 13px !important;
      margin-top: 0 !important; }
      @media only screen and (max-width: 767px) {
        .kutikomi-box .item p {
          font-size: 11px !important; } }

/*　星・画像　*/
.star_05 {
  background: url("../img/icon/rate-0.5.png") left center/120px no-repeat; }
  @media only screen and (max-width: 767px) {
    .star_05 {
      background-size: 80px; } }

.star_10 {
  background: url("../img/icon/rate-1.png") left center/120px no-repeat; }
  @media only screen and (max-width: 767px) {
    .star_10 {
      background-size: 80px; } }

.star_15 {
  background: url("../img/icon/rate-1.5.png") left center/120px no-repeat; }
  @media only screen and (max-width: 767px) {
    .star_15 {
      background-size: 80px; } }

.star_20 {
  background: url("../img/icon/rate-2.png") left center/120px no-repeat; }
  @media only screen and (max-width: 767px) {
    .star_20 {
      background-size: 80px; } }

.star_25 {
  background: url("../img/icon/rate-2.5.png") left center/120px no-repeat; }
  @media only screen and (max-width: 767px) {
    .star_25 {
      background-size: 80px; } }

.star_30 {
  background: url("../img/icon/rate-3.png") left center/120px no-repeat; }
  @media only screen and (max-width: 767px) {
    .star_30 {
      background-size: 80px; } }

.star_35 {
  background: url("../img/icon/rate-3.5.png") left center/120px no-repeat; }
  @media only screen and (max-width: 767px) {
    .star_35 {
      background-size: 80px; } }

.star_40 {
  background: url("../img/icon/rate-4.png") left center/120px no-repeat; }
  @media only screen and (max-width: 767px) {
    .star_40 {
      background-size: 80px; } }

.star_45 {
  background: url("../img/icon/rate-4.5.png") left center/120px no-repeat; }
  @media only screen and (max-width: 767px) {
    .star_45 {
      background-size: 80px; } }

.star_50 {
  background: url("../img/icon/rate-5.png") left center/120px no-repeat; }
  @media only screen and (max-width: 767px) {
    .star_50 {
      background-size: 80px; } }

.kutikomi-box .item .img {
  float: left;
  width: 10%;
  height: 70px; }
.kutikomi-box .item .face-bad {
  background: url("../img/icon/face_0.5.png") left center/contain no-repeat; }
.kutikomi-box .item .face-normal {
  background: url("../img/icon/face_3.5.png") left center/contain no-repeat; }
.kutikomi-box .item .face-god {
  background: url("../img/icon/face_4.png") left center/contain no-repeat; }
.kutikomi-box .item p {
  width: 90%;
  float: right;
  padding-left: 15px;
  position: relative;
  margin-bottom: 0; }

/* ページネーション */
.pagination-area .navigation {
  width: 100%;
  text-align: center;
  padding: 16px 0; }
.pagination-area .nav-links a {
  display: inline-block;
  padding: 8px 12px; }
.pagination-area .nav-links .page-numbers {
  border: 1px solid #DDD;
  padding: 8px 12px;
  background: #EFEFEF; }
.pagination-area .nav-links .current {
  background: #004572;
  color: #FFF; }

/*　もっと見るボタン */
.btn-more {
  text-align: center;
  font-size: 17px;
  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%); }
  .btn-more a {
    color: #333;
    display: block;
    padding: 15px 0;
    font-weight: bold;
    font-size: 14px; }

/* ------------------------------------------------- *
 *        ＠TOP
 * ------------------------------------------------- */
.top-main-visual {
  background: #100A2C;
  margin: 0 auto 18px; }
  @media only screen and (max-width: 767px) {
    .top-main-visual {
      margin-bottom: 8px; } }
  .top-main-visual img {
    margin: auto;
    max-width: 100%; }

.choice {
  text-align: center;
  font-weight: bold;
  font-size: 1.5rem;
  margin-top: 4rem; }
  @media only screen and (max-width: 767px) {
    .choice {
      font-size: 1.2rem;
      margin-top: 2rem; } }

.enter-box {
  display: flex;
  justify-content: space-evenly;
  margin: 2rem auto 6rem; }
  @media only screen and (max-width: 767px) {
    .enter-box {
      display: block;
      margin: 1rem auto 3rem; } }
  .enter-box a {
    display: block;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    width: 400px;
    margin: auto;
    padding: 1rem;
    font-weight: bold;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    z-index: 1;
    font-size: 1.5rem;
    line-height: 1.4;
    border-radius: 5px;
    box-shadow: 0 0.2rem 0.5rem rgba(0, 0, 0, 0.2); }
    @media only screen and (max-width: 767px) {
      .enter-box a {
        margin-bottom: 1rem;
        width: 90%;
        font-size: 1.3rem; } }
    .enter-box a::before {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      transform: translateX(-100%);
      transition: all .3s;
      z-index: -1; }
    .enter-box a:hover {
      color: #fff; }
      .enter-box a:hover::before {
        transform: translateX(0); }
    .enter-box a span {
      font-size: 1.8rem;
      display: block; }
      @media only screen and (max-width: 767px) {
        .enter-box a span {
          font-size: 1.6rem; } }
  .enter-box a.male {
    color: #fff;
    background: #232F5F; }
    .enter-box a.male::before {
      background-color: #5062AB; }
  .enter-box a.female {
    color: #fff;
    background: #FF87A0; }
    .enter-box a.female::before {
      background-color: #FFC9D2; }

/* ------------------------------------------------- *
*        ＠header
* ------------------------------------------------- */
#head {
  height: 73px;
  background: #fff;
  border-bottom: 3px solid #004572;
  /* .inner */ }
  @media only screen and (max-width: 767px) {
    #head {
      height: 45px;
      margin-bottom: 0;
      border-bottom: 1px solid #004572; } }
  #head .inner {
    position: relative;
    overflow: hidden;
    /* .h-logo a */
    /* .h-link */
    /*PR表記*/ }
    #head .inner .h-logo a {
      display: block;
      width: 25%;
      float: left;
      padding: 5px 0 0 0; }
      @media only screen and (max-width: 767px) {
        #head .inner .h-logo a {
          padding: 5px 0 0 10px;
          width: 25%; } }
      #head .inner .h-logo a img {
        width: 80%;
        height: auto;
        max-width: 250px; }
        @media only screen and (max-width: 767px) {
          #head .inner .h-logo a img {
            width: 100%; } }
    #head .inner .h-link {
      width: 33%;
      float: right; }
      @media only screen and (max-width: 767px) {
        #head .inner .h-link {
          width: 100%; } }
      #head .inner .h-link ul {
        overflow: hidden;
        width: 100%;
        height: 70px;
        border-left: solid 1px rgba(0, 160, 233, 0.4); }
        @media only screen and (max-width: 767px) {
          #head .inner .h-link ul {
            display: block;
            height: auto; } }
        @media only screen and (max-width: 767px) {
          #head .inner .h-link ul li {
            border-bottom: 1px solid #004572; } }
        #head .inner .h-link ul li a {
          display: block;
          position: relative;
          float: left;
          width: 12%;
          height: 70px;
          padding: 0;
          text-decoration: none;
          color: #004572;
          font-size: 10px;
          line-height: 1.2;
          font-weight: bold;
          text-align: center;
          letter-spacing: -0.05em; }
          @media only screen and (max-width: 767px) {
            #head .inner .h-link ul li a {
              float: none;
              display: block;
              width: 100%;
              height: 50px;
              font-size: 16px;
              padding: 0;
              text-align: left; } }
          #head .inner .h-link ul li a span {
            display: block;
            padding-top: 3px;
            color: #004572;
            font-size: 14px; }
            @media only screen and (max-width: 767px) {
              #head .inner .h-link ul li a span {
                display: inline;
                font-size: 14px; } }
        #head .inner .h-link ul .link-rank a {
          width: 33.3%;
          height: 70px;
          display: block;
          padding: 36px 0 0;
          background: url(../img/icon/icon-rank.png) no-repeat center top 7px;
          background-size: 26px; }
          #head .inner .h-link ul .link-rank a:hover {
            opacity: 0.7; }
          @media only screen and (max-width: 767px) {
            #head .inner .h-link ul .link-rank a {
              width: 100%;
              height: 60px;
              margin: 0;
              padding: 20px 0 0 48px;
              border: none;
              background-size: 32px;
              background-position: left 8px center;
              background-color: #fff; } }
        #head .inner .h-link ul .link-onayami a {
          width: 32.3%;
          height: 70px;
          display: block;
          padding: 36px 0 0;
          background: url(../img/icon/icon-rank.png) no-repeat center top 7px;
          background-size: 26px;
          border-left: solid 1px rgba(0, 84, 255, 0.4); }
          #head .inner .h-link ul .link-onayami a:hover {
            opacity: 0.7; }
          @media only screen and (max-width: 767px) {
            #head .inner .h-link ul .link-onayami a {
              width: 100%;
              height: 60px;
              margin: 0;
              padding: 20px 0 0 48px;
              border: none;
              background-size: 32px;
              background-position: left 8px center;
              background-color: #fff; } }
        #head .inner .h-link ul .link-search a {
          width: 33.3%;
          height: 70px;
          display: block;
          padding: 36px 0 0;
          background: url(../img/icon/icon-search.png) no-repeat center top 7px;
          background-size: 26px;
          border-right: solid 1px rgba(0, 84, 255, 0.4);
          border-left: solid 1px rgba(0, 84, 255, 0.4); }
          #head .inner .h-link ul .link-search a:hover {
            opacity: 0.7; }
          @media only screen and (max-width: 767px) {
            #head .inner .h-link ul .link-search a {
              width: 100%;
              height: 60px;
              margin: 0;
              padding: 20px 0 0 48px;
              border: none;
              background-size: 32px;
              background-position: left 8px center;
              background-color: #fff; } }
        #head .inner .h-link ul .link-type-m a,
        #head .inner .h-link ul .link-type-o a,
        #head .inner .h-link ul .link-type-u a,
        #head .inner .h-link ul .link-type-mixed a,
        #head .inner .h-link ul .link-type-young a,
        #head .inner .h-link ul .link-type-goodbye a {
          width: 12%;
          height: 70px;
          display: block;
          margin: 0 auto;
          padding: 36px 0 0; }
          #head .inner .h-link ul .link-type-m a:hover,
          #head .inner .h-link ul .link-type-o a:hover,
          #head .inner .h-link ul .link-type-u a:hover,
          #head .inner .h-link ul .link-type-mixed a:hover,
          #head .inner .h-link ul .link-type-young a:hover,
          #head .inner .h-link ul .link-type-goodbye a:hover {
            color: #fff;
            /*text-shadow: 1px 1px 1px #444;*/ }
            #head .inner .h-link ul .link-type-m a:hover span,
            #head .inner .h-link ul .link-type-o a:hover span,
            #head .inner .h-link ul .link-type-u a:hover span,
            #head .inner .h-link ul .link-type-mixed a:hover span,
            #head .inner .h-link ul .link-type-young a:hover span,
            #head .inner .h-link ul .link-type-goodbye a:hover span {
              color: #fff; }
          @media only screen and (max-width: 767px) {
            #head .inner .h-link ul .link-type-m a,
            #head .inner .h-link ul .link-type-o a,
            #head .inner .h-link ul .link-type-u a,
            #head .inner .h-link ul .link-type-mixed a,
            #head .inner .h-link ul .link-type-young a,
            #head .inner .h-link ul .link-type-goodbye a {
              width: 100%;
              height: 60px;
              padding: 12px 0 0 48px;
              margin: 0;
              color: #fff;
              line-height: 1.1;
              text-shadow: 1px 1px 1px #444;
              border: none; }
              #head .inner .h-link ul .link-type-m a span,
              #head .inner .h-link ul .link-type-o a span,
              #head .inner .h-link ul .link-type-u a span,
              #head .inner .h-link ul .link-type-mixed a span,
              #head .inner .h-link ul .link-type-young a span,
              #head .inner .h-link ul .link-type-goodbye a span {
                color: #fff;
                font-size: 14px; }
              #head .inner .h-link ul .link-type-m a .catch,
              #head .inner .h-link ul .link-type-o a .catch,
              #head .inner .h-link ul .link-type-u a .catch,
              #head .inner .h-link ul .link-type-mixed a .catch,
              #head .inner .h-link ul .link-type-young a .catch,
              #head .inner .h-link ul .link-type-goodbye a .catch {
                width: 12em;
                margin: 4px 0 0;
                padding: 4px 0 0 2px;
                color: #fff;
                font-size: 11px;
                line-height: 1;
                letter-spacing: 0.05em;
                border-top: solid 1px #fff; } }
        #head .inner .h-link ul .link-type-m a {
          background-image: url(../img/icon/icon-hage-m2.png);
          background-repeat: no-repeat;
          background-position: center top 5px;
          background-size: 30px;
          background-color: rgba(133, 175, 241, 0.5); }
          #head .inner .h-link ul .link-type-m a:hover {
            background-image: url(../img/icon/icon-hage-m.png);
            background-color: #1a52c6; }
          @media only screen and (max-width: 767px) {
            #head .inner .h-link ul .link-type-m a {
              background-image: url(../img/icon/icon-hage-m.png);
              background-repeat: no-repeat;
              background-size: 32px;
              background-position: left 8px top 15px;
              background-color: #1a52c6; } }
        #head .inner .h-link ul .link-type-o a {
          background-image: url(../img/icon/icon-hage-o2.png);
          background-repeat: no-repeat;
          background-position: center top 5px;
          background-size: 30px;
          background-color: rgba(253, 237, 165, 0.5); }
          #head .inner .h-link ul .link-type-o a:hover {
            background-image: url(../img/icon/icon-hage-o.png);
            background-color: #e8c10a; }
          @media only screen and (max-width: 767px) {
            #head .inner .h-link ul .link-type-o a {
              background-image: url(../img/icon/icon-hage-o.png);
              background-repeat: no-repeat;
              background-size: 32px;
              background-position: left 8px top 15px;
              background-color: #e8c10a; } }
        #head .inner .h-link ul .link-type-u a {
          background-image: url(../img/icon/icon-hage-u2.png);
          background-repeat: no-repeat;
          background-position: center top 5px;
          background-size: 30px;
          background-color: rgba(252, 171, 158, 0.5); }
          #head .inner .h-link ul .link-type-u a:hover {
            background-image: url(../img/icon/icon-hage-u.png);
            background-color: #ed381a; }
          @media only screen and (max-width: 767px) {
            #head .inner .h-link ul .link-type-u a {
              background-image: url(../img/icon/icon-hage-u.png);
              background-repeat: no-repeat;
              background-size: 32px;
              background-position: left 8px top 15px;
              background-color: #ed381a; } }
        #head .inner .h-link ul .link-type-mixed a {
          background-image: url(../img/icon/icon-hage-mixed2.png);
          background-repeat: no-repeat;
          background-position: center top 5px;
          background-size: 30px;
          background-color: rgba(150, 238, 141, 0.5); }
          #head .inner .h-link ul .link-type-mixed a:hover {
            background-image: url(../img/icon/icon-hage-mixed.png);
            background-color: #12a103; }
          @media only screen and (max-width: 767px) {
            #head .inner .h-link ul .link-type-mixed a {
              background-image: url(../img/icon/icon-hage-mixed.png);
              background-repeat: no-repeat;
              background-size: 32px;
              background-position: left 8px top 15px;
              background-color: #12a103; } }
        #head .inner .h-link ul .link-type-young a {
          background-image: url(../img/icon/icon-hage-young2.png);
          background-repeat: no-repeat;
          background-position: center top 5px;
          background-size: 30px;
          background-color: rgba(193, 166, 94, 0.5); }
          #head .inner .h-link ul .link-type-young a:hover {
            background-image: url(../img/icon/icon-hage-young.png);
            background-color: #80600a; }
          @media only screen and (max-width: 767px) {
            #head .inner .h-link ul .link-type-young a {
              background-image: url(../img/icon/icon-hage-young.png);
              background-repeat: no-repeat;
              background-size: 32px;
              background-position: left 8px top 15px;
              background-color: #80600a; } }
        #head .inner .h-link ul .link-type-goodbye a {
          background-image: url(../img/icon/icon-hage-goodbye2.png);
          background-repeat: no-repeat;
          background-position: center top 5px;
          background-size: 30px;
          background-color: rgba(180, 242, 255, 0.5); }
          #head .inner .h-link ul .link-type-goodbye a:hover {
            background-image: url(../img/icon/icon-hage-goodbye.png);
            background-color: #00b0d6; }
          @media only screen and (max-width: 767px) {
            #head .inner .h-link ul .link-type-goodbye a {
              background-image: url(../img/icon/icon-hage-goodbye.png);
              background-repeat: no-repeat;
              background-size: 32px;
              background-position: left 8px top 15px;
              background-color: #00b0d6; } }
    #head .inner .box-search-form {
      float: right;
      margin: 20px 20px 0; }
      @media only screen and (max-width: 767px) {
        #head .inner .box-search-form {
          background: #fff;
          float: inherit;
          margin: 0;
          padding: 20px; } }
      #head .inner .box-search-form input[type="text"] {
        border: 1px solid #aaa;
        border-radius: 3px 0 0 3px;
        padding: 3px 5px; }
      #head .inner .box-search-form input[type="submit"] {
        cursor: pointer;
        background: url(../img/icon/icon-search-w.png) center center no-repeat #004572;
        background-size: 15px 15px;
        border: none;
        border-radius: 0 3px 3px 0;
        color: #fff;
        height: 28px;
        outline: none;
        margin-left: -6px;
        width: 30px; }
    #head .inner .pr-header {
      font-size: 16px;
      position: absolute;
      left: 20%;
      bottom: 0.5rem; }
      @media only screen and (max-width: 767px) {
        #head .inner .pr-header {
          left: 25%; } }

/* #head */
/* ------------------------------------------------- *
*        ＠sidebar
* ------------------------------------------------- */
#sidebar {
  width: 29%;
  float: right;
  padding-left: 24px;
  /*　記事ランキング */
  /*　記事カテゴリリスト */
  /*　記事カテゴリリスト */
  /*　商品一覧 */ }
  @media only screen and (max-width: 767px) {
    #sidebar {
      display: none;
      width: 100%;
      float: none;
      padding-left: 0;
      margin: -10px auto 5px; } }
  #sidebar .sub-box {
    background: #fff;
    margin: 0 auto 5px; }
    @media only screen and (max-width: 767px) {
      #sidebar .sub-box {
        margin: 0;
        padding: 0;
        border-top: none; } }
    #sidebar .sub-box .sub-box-title {
      font-size: 16px;
      font-weight: bold;
      padding: 10px;
      border-bottom: 1px solid #DDD; }
      @media only screen and (max-width: 767px) {
        #sidebar .sub-box .sub-box-title {
          font-size: 14px; } }
  #sidebar .side-column-rank #popular-post .sub-article {
    line-height: 1.4;
    font-size: 11px;
    font-weight: bold;
    padding: 8px 0;
    border-bottom: 1px solid #DDD;
    overflow: hidden; }
    @media only screen and (max-width: 767px) {
      #sidebar .side-column-rank #popular-post .sub-article {
        padding: 8px; } }
    #sidebar .side-column-rank #popular-post .sub-article .sub-sum {
      width: 30%;
      float: left; }
      @media only screen and (max-width: 767px) {
        #sidebar .side-column-rank #popular-post .sub-article .sub-sum {
          width: 20%; } }
      #sidebar .side-column-rank #popular-post .sub-article .sub-sum img {
        width: 100%;
        height: auto; }
    #sidebar .side-column-rank #popular-post .sub-article .sub-txt {
      width: 70%;
      float: left;
      padding-left: 8px; }
      @media only screen and (max-width: 767px) {
        #sidebar .side-column-rank #popular-post .sub-article .sub-txt {
          width: 80%; } }
      #sidebar .side-column-rank #popular-post .sub-article .sub-txt p {
        font-size: 12px;
        margin-bottom: 4px;
        line-height: 1.6; }
      #sidebar .side-column-rank #popular-post .sub-article .sub-txt .view {
        text-align: right;
        font-size: 10px;
        color: #BBB; }
  #sidebar .side-column-cat li {
    border-bottom: 1px solid #DDD; }
    #sidebar .side-column-cat li:last-child {
      border: none; }
    #sidebar .side-column-cat li a {
      padding: 10px;
      display: block;
      font-size: 14px; }
  #sidebar .side-archive li {
    border-bottom: 1px solid #DDD;
    padding: 10px;
    font-size: 14px;
    color: #337ab7; }
    #sidebar .side-archive li:last-child {
      border: none; }
  #sidebar .side-list {
    /*　ボタン：総合評価ランキング　*/
    /* ボタン内・矢印アイコン */
    /* 矢印アイコン揺れ */
    /*.link-rank-sougou.arrow a:before {
      -webkit-animation-name:arrow;
      -webkit-animation-duration:1.2s;
      -webkit-animation-iteration-count:infinite;
      -webkit-animation-timing-function:ease;
    }
    @-webkit-keyframes arrow {
      0% {-webkit-transform:translate(-7px, 0);}
      100% {-webkit-transform:translate(0, 0);}
    }*/
    /* ボタン内・ライトニング */
    /*.link-rank-sougou a:after {
      display:block;
      position:absolute;
      z-index:-1;
      left:-30%;
      top:-50%;
      content:"";
      width:100px;
      height:200px;
      -webkit-transform:rotate(30deg);
      transform:rotate(30deg);
      background:-webkit-gradient(linear, left bottom, right bottom, color-stop(0%,rgba(255,255,255,0)), color-stop(50%,rgba(255,255,255,1)),color-stop(100%,rgba(255,255,255,0)));
      background:linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%,rgba(255,255,255,0) 100%);
      -webkit-animation:lightning 2.5s infinite linear;
      animation:lightning 2.5s infinite linear;
    }
    @keyframes lightning {
      0% {left: -20%;}
      20% {left: 120%;}
      100% {left: 120%;}
    }
    @-webkit-keyframes lightning {
      0% {left: -20%;}
      20% {left: 120%;}
      100% {left: 120%;}
    }*/
    /*　タイプ別カテゴリー */
    /* .link-rank-title-box */ }
    @media only screen and (max-width: 767px) {
      #sidebar .side-list {
        padding: 0 10px;
        margin: 0 auto; } }
    #sidebar .side-list .title {
      font-size: 18px;
      font-weight: bold;
      margin-bottom: 8px;
      border-bottom: solid 1px #555; }
      @media only screen and (max-width: 767px) {
        #sidebar .side-list .title {
          padding: 5px 0;
          font-size: 14px;
          text-align: center; } }
    #sidebar .side-list .link-rank-sougou a {
      position: relative;
      display: block;
      width: 100%;
      margin: 0 auto 16px;
      padding: 1.25em 0 1.25em 1.25em;
      color: #fff;
      display: block;
      font-size: 20px;
      font-weight: bold;
      line-height: 1.3;
      text-align: left;
      text-decoration: none;
      text-shadow: 0 0 5px rgba(255, 255, 255, 0.8), 1px 1px 2px black;
      vertical-align: middle;
      outline: 1px solid rgba(255, 255, 255, 0.75);
      outline-offset: -5px;
      border-radius: 5px;
      cursor: pointer;
      box-sizing: border-box;
      overflow: hidden;
      z-index: 2;
      transition: color 0.3s, background-color 0.3s, box-shadow 0.3s, transform 0.3s;
      transition: .25s linear; }
      @media only screen and (max-width: 767px) {
        #sidebar .side-list .link-rank-sougou a {
          margin: 0 auto 5px;
          font-size: 1.5em; } }
    #sidebar .side-list .link-rank-sougou a:before {
      content: "\f138";
      font-family: "fontawesome";
      font-weight: normal;
      font-size: 1.25em;
      margin-top: -.625em;
      position: absolute;
      right: 20px;
      top: 50%; }
    #sidebar .side-list .link-rank-sougou.color-green a {
      background: #009900;
      box-shadow: 0 6px 0 #005500; }
    #sidebar .side-list .link-rank-sougou.color-green a:hover {
      background-color: #009900;
      box-shadow: 0 6px 0 #005500;
      transform: translateY(2px);
      animation: flashingO 1s;
      /* マウスオン発光 */ }
    #sidebar .side-list .link-rank-sougou.color-green a:active {
      background-color: #007700;
      box-shadow: 0 2px 0 #003300;
      transform: translateY(6px);
      transition-duration: 0.1s; }
@keyframes flashingO {
  0% {
    background-color: #009900; }
  10% {
    background-color: #c7ffc7; }
  100% {
    background-color: #009900; } }
@-webkit-keyframes flashingO {
  0% {
    background-color: #009900; }
  10% {
    background-color: #c7ffc7; }
  100% {
    background-color: #009900; } }
    #sidebar .side-list .link-rank-title {
      width: 100%;
      margin: 0 auto;
      padding: 0;
      background-color: #dcb83e; }
      #sidebar .side-list .link-rank-title figure {
        width: 100%;
        margin: 0 auto;
        padding: 0; }
        #sidebar .side-list .link-rank-title figure img {
          width: 100%;
          height: auto; }
    #sidebar .side-list .link-rank-title-box {
      margin: 0 auto;
      padding: 4px 4px 0;
      border: solid 3px #dcb83e;
      border-top: none; }
      @media only screen and (max-width: 767px) {
        #sidebar .side-list .link-rank-title-box {
          margin: 0 auto 20px;
          overflow: hidden;
          padding: 10px 10px 4px;
          border: solid 3px #dcb83e;
          border-top: none;
          /*border-bottom-left-radius:5px;
          border-bottom-right-radius:5px;*/ } }
      #sidebar .side-list .link-rank-title-box .link-rank-m a,
      #sidebar .side-list .link-rank-title-box .link-rank-o a,
      #sidebar .side-list .link-rank-title-box .link-rank-u a,
      #sidebar .side-list .link-rank-title-box .link-rank-mixed a,
      #sidebar .side-list .link-rank-title-box .link-rank-young a,
      #sidebar .side-list .link-rank-title-box .link-rank-goodbye a {
        overflow: hidden;
        width: 100%;
        display: block;
        margin: 0 auto 4px;
        padding: 12px 4px 10px 66px;
        color: #000;
        font-size: 16px;
        font-weight: bold;
        text-decoration: none;
        line-height: 1.3;
        letter-spacing: 0.1em;
        transition: .1s; }
        @media only screen and (max-width: 767px) {
          #sidebar .side-list .link-rank-title-box .link-rank-m a,
          #sidebar .side-list .link-rank-title-box .link-rank-o a,
          #sidebar .side-list .link-rank-title-box .link-rank-u a,
          #sidebar .side-list .link-rank-title-box .link-rank-mixed a,
          #sidebar .side-list .link-rank-title-box .link-rank-young a,
          #sidebar .side-list .link-rank-title-box .link-rank-goodbye a {
            float: left;
            display: block;
            width: 32%;
            padding: 55px 0 5px;
            margin: 0 2% 2% 0;
            color: #fff;
            font-size: 10px;
            text-align: center;
            line-height: 1.3;
            letter-spacing: -0.03em;
            text-shadow: 1px 1px 1px #444;
            box-sizing: border-box;
            border-radius: 5px; } }
        #sidebar .side-list .link-rank-title-box .link-rank-m a span,
        #sidebar .side-list .link-rank-title-box .link-rank-o a span,
        #sidebar .side-list .link-rank-title-box .link-rank-u a span,
        #sidebar .side-list .link-rank-title-box .link-rank-mixed a span,
        #sidebar .side-list .link-rank-title-box .link-rank-young a span,
        #sidebar .side-list .link-rank-title-box .link-rank-goodbye a span {
          font-size: 24px;
          font-weight: bold;
          letter-spacing: 0.2em;
          line-height: 1; }
          @media only screen and (max-width: 767px) {
            #sidebar .side-list .link-rank-title-box .link-rank-m a span,
            #sidebar .side-list .link-rank-title-box .link-rank-o a span,
            #sidebar .side-list .link-rank-title-box .link-rank-u a span,
            #sidebar .side-list .link-rank-title-box .link-rank-mixed a span,
            #sidebar .side-list .link-rank-title-box .link-rank-young a span,
            #sidebar .side-list .link-rank-title-box .link-rank-goodbye a span {
              font-size: 14px; } }
        #sidebar .side-list .link-rank-title-box .link-rank-m a:hover,
        #sidebar .side-list .link-rank-title-box .link-rank-o a:hover,
        #sidebar .side-list .link-rank-title-box .link-rank-u a:hover,
        #sidebar .side-list .link-rank-title-box .link-rank-mixed a:hover,
        #sidebar .side-list .link-rank-title-box .link-rank-young a:hover,
        #sidebar .side-list .link-rank-title-box .link-rank-goodbye a:hover {
          color: #fff;
          text-shadow: 1px 1px 1px #444; }
      #sidebar .side-list .link-rank-title-box .link-rank-m a {
        opacity: 0.7;
        background-image: url(../img/icon/icon-hage-m2.png);
        background-repeat: no-repeat;
        background-position: left 8px  center;
        background-size: 50px;
        background-color: rgba(133, 175, 241, 0.5); }
        #sidebar .side-list .link-rank-title-box .link-rank-m a:hover {
          opacity: 1;
          background-image: url(../img/icon/icon-hage-m.png);
          background-color: #1a52c6; }
        @media only screen and (max-width: 767px) {
          #sidebar .side-list .link-rank-title-box .link-rank-m a {
            opacity: 1;
            background-image: url(../img/icon/icon-hage-m.png);
            background-position: center top 7px;
            background-size: 42px;
            background-color: #1a52c6; } }
      #sidebar .side-list .link-rank-title-box .link-rank-o a {
        opacity: 0.7;
        background-image: url(../img/icon/icon-hage-o2.png);
        background-repeat: no-repeat;
        background-position: left 8px  center;
        background-size: 50px;
        background-color: rgba(253, 237, 165, 0.5); }
        #sidebar .side-list .link-rank-title-box .link-rank-o a:hover {
          opacity: 1;
          background-image: url(../img/icon/icon-hage-o.png);
          background-color: #e8c10a; }
        @media only screen and (max-width: 767px) {
          #sidebar .side-list .link-rank-title-box .link-rank-o a {
            opacity: 1;
            background-image: url(../img/icon/icon-hage-o.png);
            background-color: #e8c10a;
            background-position: center top 7px;
            background-size: 42px; } }
      #sidebar .side-list .link-rank-title-box .link-rank-u a {
        opacity: 0.7;
        background-image: url(../img/icon/icon-hage-u2.png);
        background-repeat: no-repeat;
        background-position: left 8px  center;
        background-size: 50px;
        background-color: rgba(252, 171, 158, 0.5); }
        #sidebar .side-list .link-rank-title-box .link-rank-u a:hover {
          opacity: 1;
          background-image: url(../img/icon/icon-hage-u.png);
          background-color: #ed381a; }
        @media only screen and (max-width: 767px) {
          #sidebar .side-list .link-rank-title-box .link-rank-u a {
            opacity: 1;
            margin: 0 0 2% 0;
            background-image: url(../img/icon/icon-hage-u.png);
            background-color: #ed381a;
            background-position: center top 7px;
            background-size: 42px; } }
      #sidebar .side-list .link-rank-title-box .link-rank-mixed a {
        opacity: 0.7;
        background-image: url(../img/icon/icon-hage-mixed2.png);
        background-repeat: no-repeat;
        background-position: left 8px  center;
        background-size: 50px;
        background-color: rgba(150, 238, 141, 0.5); }
        #sidebar .side-list .link-rank-title-box .link-rank-mixed a:hover {
          opacity: 1;
          background-image: url(../img/icon/icon-hage-mixed.png);
          background-color: #12a103; }
        @media only screen and (max-width: 767px) {
          #sidebar .side-list .link-rank-title-box .link-rank-mixed a {
            opacity: 1;
            background-image: url(../img/icon/icon-hage-mixed.png);
            background-color: #12a103;
            background-position: center top 7px;
            background-size: 42px; } }
      #sidebar .side-list .link-rank-title-box .link-rank-young a {
        opacity: 0.7;
        background-image: url(../img/icon/icon-hage-young2.png);
        background-repeat: no-repeat;
        background-position: left 8px  center;
        background-size: 50px;
        background-color: rgba(193, 166, 94, 0.5); }
        #sidebar .side-list .link-rank-title-box .link-rank-young a:hover {
          opacity: 1;
          background-image: url(../img/icon/icon-hage-young.png);
          background-color: #80600a; }
        @media only screen and (max-width: 767px) {
          #sidebar .side-list .link-rank-title-box .link-rank-young a {
            opacity: 1;
            background-image: url(../img/icon/icon-hage-young.png);
            background-color: #80600a;
            background-position: center top 7px;
            background-size: 42px; } }
      #sidebar .side-list .link-rank-title-box .link-rank-goodbye a {
        opacity: 0.7;
        background-image: url(../img/icon/icon-hage-goodbye2.png);
        background-repeat: no-repeat;
        background-position: left 8px  center;
        background-size: 50px;
        background-color: rgba(180, 242, 255, 0.5); }
        #sidebar .side-list .link-rank-title-box .link-rank-goodbye a:hover {
          opacity: 1;
          background-image: url(../img/icon/icon-hage-goodbye.png);
          background-color: #00b0d6; }
        @media only screen and (max-width: 767px) {
          #sidebar .side-list .link-rank-title-box .link-rank-goodbye a {
            opacity: 1;
            margin: 0 0 2% 0;
            background-image: url(../img/icon/icon-hage-goodbye.png);
            background-color: #00b0d6;
            background-position: center top 7px;
            background-size: 42px; } }
    #sidebar .side-list ul {
      overflow: hidden;
      padding-bottom: 5px;
      margin-bottom: 5px;
      border-bottom: 1px solid #c1def1; }
      #sidebar .side-list ul:last-child {
        border-bottom: none; }
        @media only screen and (max-width: 767px) {
          #sidebar .side-list ul:last-child {
            border-bottom: 1px solid #dddddd; } }
    #sidebar .side-list ul a {
      font-size: 12px !important; }
      #sidebar .side-list ul a li {
        float: left;
        width: auto;
        height: 50px;
        margin: 5px 0;
        color: #337ab7; }
        #sidebar .side-list ul a li:first-child {
          overflow: hidden;
          width: 50px;
          height: 50px;
          padding: 10px;
          /*border-radius:5px;*/
          border: solid 1px #c1def1; }
          @media only screen and (max-width: 767px) {
            #sidebar .side-list ul a li:first-child {
              width: 45px;
              height: 45px; } }
          #sidebar .side-list ul a li:first-child img {
            width: 500%;
            height: auto;
            margin-left: -200%;
            margin-top: -200%; }
            @media only screen and (max-width: 767px) {
              #sidebar .side-list ul a li:first-child img {
                width: 600%;
                margin-left: -250%;
                margin-top: -250%; } }
        #sidebar .side-list ul a li:last-child {
          width: 75%;
          padding: 0 0 0 5px;
          font-weight: bold; }
          @media only screen and (max-width: 767px) {
            #sidebar .side-list ul a li:last-child {
              height: 45px;
              padding: 0 0 0 8px; } }

/* sidevarの子例スクロール */
.pc-side-nav-fixed {
  top: 2%;
  max-width: 260px;
  position: fixed; }

/* 目次 */
.fixed-side {
  position: fixed;
  top: 30px;
  left: auto;
  max-width: 260px;
  box-shadow: 0px 5px 30px rgba(0, 0, 0, 0.2); }

.mokuji {
  background: #fff;
  box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.1); }
  .mokuji h4 {
    position: relative;
    padding: 1em 1em 0.8em;
    color: #6C501B;
    font-size: 96%;
    font-weight: bold;
    background: #FDD835;
    text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.5); }
    .mokuji h4 .closeBtn {
      cursor: pointer;
      position: absolute;
      top: 11px;
      right: 12px;
      font-size: 1.5em;
      -webkit-transition: 0.2s;
      -moz-transition: 0.2s;
      transition: 0.2s;
      -webkit-transform: rotate(45deg);
      -moz-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
      -o-transform: rotate(45deg);
      transform: rotate(45deg);
      -webkit-transform-origin: center;
      -moz-transform-origin: center;
      -ms-transform-origin: center;
      -o-transform-origin: center;
      transform-origin: center; }
      .mokuji h4 .closeBtn .active {
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg); }
  .mokuji .mokujiInner {
    border: 1px solid #ddd;
    border-top: none; }
  .mokuji li {
    overflow: hidden;
    position: relative;
    cursor: pointer;
    width: 100%;
    height: 100%;
    list-style: none;
    -webkit-transition: 0.2s;
    -moz-transition: 0.2s;
    transition: 0.2s;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    .mokuji li a {
      display: block;
      padding: 1em;
      color: #333;
      font-size: 75%;
      line-height: 1.5;
      text-decoration: none; }
  .mokuji ol {
    padding: 0; }
    .mokuji ol ol {
      display: none; }
      .mokuji ol ol li {
        padding-left: 1em; }
      .mokuji ol ol ol li {
        padding-left: 2em; }

.mokuji ul.mokujiShare li {
  list-style: none;
  text-align: center;
  background: #f2f2f2; }

.mokuji > ol li.accordion .inner a {
  padding-left: 0; }

.mokuji li:hover {
  background: #f2f2f2; }

.mokuji li.current {
  background: #FFECB3; }

.mokuji li.active {
  background: #f00; }

.mokuji li.current a {
  color: #6C501B;
  font-weight: bold; }

.mokuji li.accordion {
  padding: 0; }
  .mokuji li.accordion .inner {
    display: table;
    width: 100%;
    table-layout: fixed; }
  .mokuji li.accordion a {
    display: table-cell;
    width: 100%;
    text-indent: 0;
    padding: 1em;
    vertical-align: middle; }
  .mokuji li.accordion .accBtn {
    display: table-cell;
    width: 30px;
    margin-top: 12px;
    font-size: 1.5em;
    text-indent: 0;
    color: #fff;
    background: #555;
    text-align: center;
    vertical-align: middle; }

/* ------------------------------------------------- *
*        ＠特集一覧
* ------------------------------------------------- */
.special-box {
  background: #FFF;
  overflow: hidden;
  -webkit-box-shadow: 0 0 1em rgba(0, 0, 0, 0.15);
  box-shadow: 0 0 1em rgba(0, 0, 0, 0.15);
  margin-bottom: 24px;
  padding: 8px; }
  @media only screen and (max-width: 767px) {
    .special-box {
      margin: 0;
      padding: 0; } }
  .special-box .item {
    padding: 8px;
    overflow: hidden; }
    @media only screen and (max-width: 767px) {
      .special-box .item {
        border-bottom: 1px solid #DDD;
        padding: 8px; } }
    .special-box .item img {
      width: 100%;
      height: auto;
      margin-bottom: 5px; }
      @media only screen and (max-width: 767px) {
        .special-box .item img {
          width: 25%;
          float: left;
          padding-right: 8px;
          margin: 0; } }
    .special-box .item a {
      display: block; }
      .special-box .item a:hover {
        text-decoration: none; }
    .special-box .item p {
      line-height: 1.2; }
    .special-box .item .title {
      font-weight: bold;
      margin-bottom: 2px; }
    .special-box .item .description {
      color: #888;
      font-size: 13px; }

/* ------------------------------------------------- *
*        ＠案件テーブル(横長)
* ------------------------------------------------- */
.comp-table-w {
  margin-top: 30px; }
  .comp-table-w th {
    text-align: center;
    background: #EFEFEF; }
  .comp-table-w .comp-img {
    width: 30%;
    float: left; }
    .comp-table-w .comp-img img {
      width: 100%;
      height: auto; }
  .comp-table-w .comp-txt {
    width: 70%;
    float: left;
    padding-left: 10px; }
    .comp-table-w .comp-txt .comp-title {
      font-weight: bold;
      line-height: 1.2;
      margin-bottom: 5px !important; }
    .comp-table-w .comp-txt .comp-catch {
      line-height: 1.2;
      margin-bottom: 0 !important;
      font-size: 12px; }
  .comp-table-w .cv {
    width: 100%;
    height: auto; }

/* ------------------------------------------------- *
*        ＠案件テーブル(カード型)
* ------------------------------------------------- */
.comp-table-card {
  background: #EFEFEF;
  padding: 8px 0 1px 0; }
  .comp-table-card .comp-item {
    width: 96%;
    margin: 0 auto;
    border: 1px solid #DDD;
    border-bottom: 2px solid #DDD;
    background: #FFF;
    margin-bottom: 8px; }
    .comp-table-card .comp-item .comp-title {
      padding: 8px 10px; }
    .comp-table-card .comp-item .comp-catch {
      background: #bf2f71;
      padding: 4px 8px;
      line-height: 1.2;
      color: #FFF;
      font-size: 12px; }
    .comp-table-card .comp-item .comp-spec {
      padding: 8px;
      overflow: hidden;
      background: url(../img/btn/btn-top-sp01.gif) no-repeat right center;
      background-size: 30px; }
      .comp-table-card .comp-item .comp-spec .comp-img {
        width: 30%;
        float: left;
        padding-right: 8px; }
      .comp-table-card .comp-item .comp-spec table {
        width: 60%;
        float: left; }
        .comp-table-card .comp-item .comp-spec table th {
          padding: 2px 5px;
          font-size: 10px;
          font-weight: normal;
          background: #f3f3f3; }
        .comp-table-card .comp-item .comp-spec table td {
          padding: 2px 5px;
          font-size: 10px; }

/* ------------------------------------------------- *
 *        ＠検索ボックス
 * ------------------------------------------------- */
.main-search {
  background: #FFF;
  -webkit-box-shadow: 0 0 1em rgba(0, 0, 0, 0.15);
  box-shadow: 0 0 1em rgba(0, 0, 0, 0.15);
  margin-bottom: 20px;
  padding-bottom: 10px;
  /*h3{
    font-size: 21px;
    line-height: 1.3;
    background:#E1E1E1;
    padding:15px;}
  */ }
  @media only screen and (max-width: 767px) {
    .main-search {
      margin: 0; } }
  .main-search .main-search_in {
    padding: 12px 16px 16px;
    overflow: hidden; }
    @media only screen and (max-width: 767px) {
      .main-search .main-search_in {
        background: #f1f1f1;
        padding: 5px 10px; } }
  .main-search .search-main-box table.sele {
    width: 100%;
    margin-bottom: 12px;
    border: none;
    border: solid 1px rgba(0, 160, 233, 0.5);
    border-left: none; }
    @media only screen and (max-width: 767px) {
      .main-search .search-main-box table.sele {
        width: 98%;
        margin: 5px auto;
        padding: 5px;
        border: none; } }
    .main-search .search-main-box table.sele th {
      width: 16%;
      padding: 10px;
      font-size: 14px;
      border: none;
      border-left: solid 1px rgba(0, 160, 233, 0.5);
      border-right: solid 1px rgba(0, 160, 233, 0.5);
      background-color: rgba(0, 160, 233, 0.1);
      padding: 12px 0;
      color: #004572; }
      @media only screen and (max-width: 767px) {
        .main-search .search-main-box table.sele th {
          display: none; } }
    .main-search .search-main-box table.sele td {
      padding: 10px;
      font-size: 12px;
      border: none;
      border-top: none;
      border-left: none;
      border-right: none; }
      @media only screen and (max-width: 767px) {
        .main-search .search-main-box table.sele td {
          display: inline;
          width: 100%;
          border: none;
          margin: 5px auto;
          padding: 5px 5px 5px 1em;
          text-align: left; }
          .main-search .search-main-box table.sele td span {
            color: #004572;
            font-weight: bold; } }
      .main-search .search-main-box table.sele td select {
        width: 100%;
        margin: 5px auto;
        color: #000;
        font-size: 14px;
        height: 32px;
        line-height: 32px;
        text-align: left;
        text-indent: 3px;
        vertical-align: middle;
        cursor: pointer;
        border: 1px solid #ccc;
        border-radius: 5px;
        background: #f1f1f1; }
        @media only screen and (max-width: 767px) {
          .main-search .search-main-box table.sele td select {
            width: 75%;
            height: 26px;
            line-height: 26px; } }
  .main-search .accordion {
    width: 100%;
    margin: 5px auto 0px;
    padding: 13px 0;
    font-size: 16px;
    font-weight: bold;
    line-height: 1;
    color: #fff;
    text-shadow: 1px 1px 1px #222;
    text-align: center;
    background-color: #0e37af; }
    @media only screen and (max-width: 767px) {
      .main-search .accordion {
        width: 98%;
        margin: 5px auto 0px;
        padding: 8px 0; } }
  .main-search .accordion:after {
    content: "▼";
    padding-left: 5px; }
  .main-search .accordion.open:after {
    content: "▲"; }
  .main-search .main-search-table {
    margin-bottom: 15px;
    text-align: left; }
    .main-search .main-search-table table {
      width: 100%;
      margin-bottom: 5px;
      border: none; }
      @media only screen and (max-width: 767px) {
        .main-search .main-search-table table {
          width: 98%;
          margin: 0 auto; } }
    .main-search .main-search-table th {
      width: 16%;
      padding: 10px;
      font-size: 14px;
      background-color: rgba(0, 160, 233, 0.2);
      border: solid 1px rgba(0, 160, 233, 0.5);
      border-top: none;
      padding: 12px 0;
      color: #004572; }
      @media only screen and (max-width: 767px) {
        .main-search .main-search-table th {
          display: block;
          width: 100%;
          border: none;
          font-size: 12px;
          text-align: left;
          padding: 4px 0 4px 0.75em; } }
    .main-search .main-search-table td {
      overflow: hidden;
      padding: 10px;
      font-size: 12px;
      border: solid 1px rgba(0, 160, 233, 0.5);
      border-top: none;
      border-left: none;
      border-right: none; }
      @media only screen and (max-width: 767px) {
        .main-search .main-search-table td {
          display: block;
          width: 100%;
          border: none;
          padding: 4px 0 4px 0.5em;
          text-align: left; } }
      .main-search .main-search-table td select {
        width: 100%;
        padding: 5px 3px; }
      .main-search .main-search-table td li {
        display: inline-block;
        margin-bottom: 3px; }
        @media only screen and (max-width: 767px) {
          .main-search .main-search-table td li {
            margin: 0 0 5px; } }
        .main-search .main-search-table td li input {
          margin-right: 5px; }
        .main-search .main-search-table td li label {
          font-weight: normal;
          display: inline-block;
          max-width: 100%;
          font-size: 14px;
          line-height: 1.6;
          cursor: pointer; }
          @media only screen and (max-width: 767px) {
            .main-search .main-search-table td li label {
              letter-spacing: -0.05em;
              font-size: 12px;
              line-height: 1.5; } }
  .main-search .submit-area {
    width: 100%;
    clear: both;
    position: relative; }
  .main-search .send #submit-btn {
    display: block;
    width: 316px;
    height: 70px;
    border: 0;
    background: url(../img/btn/btn-search.gif) left top no-repeat;
    filter: hue-rotate(-190deg);
    text-indent: -9898px;
    font-size: 0px;
    line-height: 0px;
    cursor: pointer;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    margin-top: 15px;
    background-size: contain; }
    @media only screen and (max-width: 767px) {
      .main-search .send #submit-btn {
        color: #fff;
        font-size: 16px;
        height: 45px;
        margin: 5px auto 10px;
        text-indent: -5em;
        font-weight: 700;
        border-color: #ff6e02;
        width: 98%;
        border-width: 1px;
        border-style: solid;
        background: -moz-linear-gradient(top, #ff8e39 0%, #ff6e02 50%, #ff8e39 100%);
        background: -webkit-gradient(linear, left top, left bottom, color-stop(1, #ff8e39), color-stop(0.5, #ff6e02), color-stop(0, #ff8e39));
        background: -webkit-linear-gradient(top, #ff8e39 0%, #ff6e02 50%, #ff8e39 100%);
        background: -o-linear-gradient(top, #ff8e39 0%, #ff6e02 50%, #ff8e39 100%);
        background: -ms-linear-gradient(top, #ff8e39 0%, #ff6e02 50%, #ff8e39 100%);
        background: linear-gradient(to bottom, #ff8e39 0%, #ff6e02 50%, #ff8e39 100%);
        -webkit-box-shadow: 0 2px 1px rgba(255, 255, 255, 0.3) inset;
        -moz-box-shadow: 0 2px 1px rgba(255, 255, 255, 0.3) inset;
        -o-box-shadow: 0 2px 1px rgba(255, 255, 255, 0.3) inset;
        box-shadow: 0 2px 1px rgba(255, 255, 255, 0.3) inset;
        display: block;
        padding: 10px 5px 10px 25px;
        -webkit-border-radius: 50px;
        -moz-border-radius: 50px;
        border-radius: 50px;
        text-shadow: 0 1px 1px rgba(0, 0, 0, 0.4);
        text-align: center; } }
  .main-search .result-box {
    position: absolute;
    bottom: 0;
    right: 30px; }
    @media only screen and (max-width: 767px) {
      .main-search .result-box {
        background: #FFF;
        padding: 2px 5px;
        border-radius: 50px;
        bottom: 8px;
        right: 16px;
        width: 70px;
        text-align: center; } }
    .main-search .result-box #result {
      font-size: 26px;
      color: #f36956;
      font-weight: 700; }
      @media only screen and (max-width: 767px) {
        .main-search .result-box #result {
          font-size: 14px; } }
    .main-search .result-box p {
      font-size: 20px; }
      @media only screen and (max-width: 767px) {
        .main-search .result-box p {
          font-size: 12px; } }

.wrap-top {
  padding-bottom: 3rem; }

/* 並び替えボックス */
.comp-table-sp-selectbox {
  overflow: hidden;
  padding: 2%; }
  .comp-table-sp-selectbox p {
    width: 20%;
    float: left;
    margin-top: 5px;
    margin: 0; }
  .comp-table-sp-selectbox select {
    width: 45%;
    float: left;
    height: 25px; }
  .comp-table-sp-selectbox button {
    width: 30%;
    float: right;
    height: 25px; }

/* ------------------------------------------------- *
 *        ＠検索ボックス(口コミ)
 * ------------------------------------------------- */
.main-search-kuti {
  background: #FFF;
  -webkit-box-shadow: 0 0 1em rgba(0, 0, 0, 0.15);
  box-shadow: 0 0 1em rgba(0, 0, 0, 0.15);
  margin-bottom: 24px;
  padding: 16px; }
  .main-search-kuti .kuti-count {
    margin-bottom: 15px; }
  .main-search-kuti .kuti-form-box {
    margin-bottom: 15px;
    border: 1px solid #DDD; }
    .main-search-kuti .kuti-form-box .col-2 {
      width: 50%;
      float: left;
      display: flex; }
      @media only screen and (max-width: 767px) {
        .main-search-kuti .kuti-form-box .col-2 {
          width: 100%;
          float: none;
          border-bottom: 1px solid #DDD; } }
      .main-search-kuti .kuti-form-box .col-2 .koumoku {
        width: 30%;
        float: left;
        background: #EFEFEF;
        padding: 10px; }
      .main-search-kuti .kuti-form-box .col-2 .value {
        width: 70%;
        float: left;
        padding: 10px; }
      .main-search-kuti .kuti-form-box .col-2 select {
        width: 100%; }
    .main-search-kuti .kuti-form-box .col-1 {
      width: 100%;
      clear: both;
      display: flex;
      border-top: 1px solid #DDD; }
      @media only screen and (max-width: 767px) {
        .main-search-kuti .kuti-form-box .col-1 {
          border: none; } }
      .main-search-kuti .kuti-form-box .col-1 .koumoku {
        width: 15%;
        float: left;
        background: #EFEFEF;
        padding: 10px; }
        @media only screen and (max-width: 767px) {
          .main-search-kuti .kuti-form-box .col-1 .koumoku {
            width: 30%; } }
      .main-search-kuti .kuti-form-box .col-1 .value {
        width: 85%;
        float: left;
        padding: 10px; }
        @media only screen and (max-width: 767px) {
          .main-search-kuti .kuti-form-box .col-1 .value {
            width: 70%; } }
      .main-search-kuti .kuti-form-box .col-1 li {
        width: 50%;
        float: left; }
        @media only screen and (max-width: 767px) {
          .main-search-kuti .kuti-form-box .col-1 li {
            width: 100%;
            float: none; } }
  .main-search-kuti .kuti-submit #submit {
    display: block;
    width: 70%;
    height: 50px;
    border: 0;
    background: url(../img/btn/btn-simulation.png) center no-repeat;
    text-indent: -9898px;
    font-size: 0px;
    line-height: 0px;
    cursor: pointer;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    background-size: contain; }
    @media only screen and (max-width: 767px) {
      .main-search-kuti .kuti-submit #submit {
        background: url(../img/btn/btn-simulation_sp.png) center no-repeat;
        background-size: contain;
        width: 100%; } }

/* ------------------------------------------------- *
*        ＠ランキング（category）
* ------------------------------------------------- */
#cat-rank {
  /* .cat-description */ }
  #cat-rank .main-visual img {
    width: 100%;
    height: auto;
    margin-bottom: 16px; }
    @media only screen and (max-width: 767px) {
      #cat-rank .main-visual img {
        margin-bottom: 0; } }
  #cat-rank .main-visual-type {
    background: #0e37af;
    width: 100%;
    height: 80px;
    margin-bottom: 16px; }
    @media only screen and (max-width: 767px) {
      #cat-rank .main-visual-type {
        height: 60px;
        margin-bottom: 15px; } }
    #cat-rank .main-visual-type p {
      margin: 0 auto;
      padding: 0;
      text-align: center;
      font-size: 24px;
      font-weight: bold;
      line-height: 80px;
      letter-spacing: 0.15em;
      color: #fff;
      text-shadow: 1px 1px 1px #444; }
      #cat-rank .main-visual-type p.icon-m {
        background-image: url(../img/icon/icon-hage-m.png);
        background-repeat: no-repeat;
        background-position: left 25px top 8px;
        background-size: 65px; }
        @media only screen and (max-width: 767px) {
          #cat-rank .main-visual-type p.icon-m {
            background-position: left 10px top 8px;
            background-size: 45px; } }
      #cat-rank .main-visual-type p.icon-o {
        background-image: url(../img/icon/icon-hage-o.png);
        background-repeat: no-repeat;
        background-position: left 25px top 8px;
        background-size: 65px; }
        @media only screen and (max-width: 767px) {
          #cat-rank .main-visual-type p.icon-o {
            background-position: left 10px top 8px;
            background-size: 45px; } }
      #cat-rank .main-visual-type p.icon-u {
        background-image: url(../img/icon/icon-hage-u.png);
        background-repeat: no-repeat;
        background-position: left 25px top 8px;
        background-size: 65px; }
        @media only screen and (max-width: 767px) {
          #cat-rank .main-visual-type p.icon-u {
            background-position: left 10px top 8px;
            background-size: 45px; } }
      #cat-rank .main-visual-type p.icon-mixed {
        background-image: url(../img/icon/icon-hage-mixed.png);
        background-repeat: no-repeat;
        background-position: left 25px top 8px;
        background-size: 65px; }
        @media only screen and (max-width: 767px) {
          #cat-rank .main-visual-type p.icon-mixed {
            background-position: left 10px top 8px;
            background-size: 45px; } }
      #cat-rank .main-visual-type p.icon-young {
        background-image: url(../img/icon/icon-hage-young.png);
        background-repeat: no-repeat;
        background-position: left 25px top 8px;
        background-size: 65px; }
        @media only screen and (max-width: 767px) {
          #cat-rank .main-visual-type p.icon-young {
            background-position: left 10px top 8px;
            background-size: 45px; } }
      #cat-rank .main-visual-type p.icon-goodbye {
        background-image: url(../img/icon/icon-hage-goodbye.png);
        background-repeat: no-repeat;
        background-position: left 25px top 8px;
        background-size: 65px; }
        @media only screen and (max-width: 767px) {
          #cat-rank .main-visual-type p.icon-goodbye {
            background-position: left 10px top 8px;
            background-size: 45px; } }
      @media only screen and (max-width: 767px) {
        #cat-rank .main-visual-type p {
          padding: 5px 0 5px 15px;
          font-size: 14px;
          line-height: 1.4;
          letter-spacing: 0.05em; } }
      #cat-rank .main-visual-type p span {
        font-size: 36px;
        padding: 0 8px; }
        @media only screen and (max-width: 767px) {
          #cat-rank .main-visual-type p span {
            font-size: 22px; } }
  #cat-rank .cat-description {
    padding: 12px 20px;
    background: #FFF;
    border: dotted 3px #a0d2f4;
    margin-bottom: 16px;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      #cat-rank .cat-description {
        margin-bottom: 0;
        padding: 16px;
        border: none; } }
    #cat-rank .cat-description p {
      font-size: 22px;
      font-weight: bold;
      line-height: 1.3; }
      @media only screen and (max-width: 767px) {
        #cat-rank .cat-description p {
          font-size: 12px; } }
      #cat-rank .cat-description p .big {
        font-size: 30px;
        color: #006dfe;
        padding: 0 3px; }
        @media only screen and (max-width: 767px) {
          #cat-rank .cat-description p .big {
            font-size: 16px; } }
    #cat-rank .cat-description table {
      margin: 12px auto 0;
      font-size: 12px;
      border: none; }
      @media only screen and (max-width: 767px) {
        #cat-rank .cat-description table {
          margin: 8px auto 0;
          font-size: 11px; } }
    #cat-rank .cat-description th {
      background: #c4e7ff;
      border: none;
      border-bottom: solid 1px #fff;
      width: 13%; }
      @media only screen and (max-width: 767px) {
        #cat-rank .cat-description th {
          display: block;
          border-bottom: none;
          width: 100%;
          text-align: left;
          padding: 2px 0 2px 0.5em; } }
    #cat-rank .cat-description td {
      background: white;
      border: none;
      border-bottom: solid 1px #fff;
      text-align: left; }
      @media only screen and (max-width: 767px) {
        #cat-rank .cat-description td {
          display: block;
          border-bottom: none;
          width: 100%;
          padding: 2px 0 6px 0.5em; } }
    #cat-rank .cat-description .accordion {
      width: 10em;
      margin: 5px auto 0;
      padding: 4px 3px;
      font-size: 11px;
      line-height: 1;
      color: #fff;
      background-color: #006dfe;
      border-radius: 8px; }
    #cat-rank .cat-description .accordion:after {
      content: "▼";
      padding-left: 3px; }
    #cat-rank .cat-description .accordion.open:after {
      content: "▲"; }
  #cat-rank .cat-description-type-m,
  #cat-rank .cat-description-type-o,
  #cat-rank .cat-description-type-u,
  #cat-rank .cat-description-type-mixed,
  #cat-rank .cat-description-type-young,
  #cat-rank .cat-description-type-goodbye {
    margin: 0 auto 24px;
    padding: 12px 20px;
    background: #fff;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      #cat-rank .cat-description-type-m,
      #cat-rank .cat-description-type-o,
      #cat-rank .cat-description-type-u,
      #cat-rank .cat-description-type-mixed,
      #cat-rank .cat-description-type-young,
      #cat-rank .cat-description-type-goodbye {
        margin: 0 10px 16px;
        padding: 12px 12px;
        border: none; } }
    #cat-rank .cat-description-type-m p,
    #cat-rank .cat-description-type-o p,
    #cat-rank .cat-description-type-u p,
    #cat-rank .cat-description-type-mixed p,
    #cat-rank .cat-description-type-young p,
    #cat-rank .cat-description-type-goodbye p {
      font-size: 18px;
      font-weight: normal;
      line-height: 1.5; }
      @media only screen and (max-width: 767px) {
        #cat-rank .cat-description-type-m p,
        #cat-rank .cat-description-type-o p,
        #cat-rank .cat-description-type-u p,
        #cat-rank .cat-description-type-mixed p,
        #cat-rank .cat-description-type-young p,
        #cat-rank .cat-description-type-goodbye p {
          font-size: 14px; } }
      #cat-rank .cat-description-type-m p span,
      #cat-rank .cat-description-type-o p span,
      #cat-rank .cat-description-type-u p span,
      #cat-rank .cat-description-type-mixed p span,
      #cat-rank .cat-description-type-young p span,
      #cat-rank .cat-description-type-goodbye p span {
        font-weight: bold;
        color: red;
        padding: 0 3px; }
  #cat-rank .cat-description-type-m {
    border: dotted 2px #1a52c6; }
  #cat-rank .cat-description-type-o {
    border: dotted 2px #e8c10a; }
  #cat-rank .cat-description-type-u {
    border: dotted 2px #ed381a; }
  #cat-rank .cat-description-type-mixed {
    border: dotted 2px #12a103; }
  #cat-rank .cat-description-type-young {
    border: dotted 2px #80600a; }
  #cat-rank .cat-description-type-goodbye {
    border: dotted 2px #00b0d6; }

/* #cat-rank */
.section-rank-tyousa {
  padding: 30px;
  background: #FFF;
  border: dotted 3px #e1e1e1;
  margin-bottom: 30px; }
  .section-rank-tyousa li {
    line-height: 1.7;
    font-size: 12px; }

/*ランキングのボックスレイアウト */
.rank-box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  background-color: #fff;
  padding: 2rem; }
  @media only screen and (max-width: 767px) {
    .rank-box {
      margin: 0 auto;
      padding: 0;
      display: block; } }

.item {
  position: relative;
  width: 100%;
  margin: 0 auto 45px;
  overflow: hidden;
  padding: 0 0 20px;
  text-align: center;
  /* 商品タイトル・総合評価 */
  /* .item-title-box */
  /* 個別の大枠 */
  /* waku */ }
  @media only screen and (max-width: 767px) {
    .item {
      width: 100%;
      margin: 0 auto;
      padding: 0;
      box-sizing: border-box;
      border: none; } }
  .item .item-title-box {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    padding: 4px 15px;
    border: 1px solid #004572;
    border-top: 8px solid #004572;
    /* 商品タイトル */
    /* 総合評価 */ }
    @media only screen and (max-width: 767px) {
      .item .item-title-box {
        border: none;
        border-bottom: 1px solid #004572;
        border-top: 8px solid #004572;
        margin: 0 auto 5px;
        padding: 0;
        background: none;
        display: block; } }
    @media only screen and (max-width: 767px) {
      .item .item-title-box .item-head {
        display: block; } }
    .item .item-title-box .item-head a {
      display: flex;
      justify-content: space-between;
      align-items: center;
      text-decoration: underline; }
      .item .item-title-box .item-head a:hover {
        text-decoration: none; }
    .item .item-title-box .item-head h2 {
      padding: 0 0 0 80px;
      font-size: 24px;
      line-height: 2.5; }
      @media only screen and (max-width: 767px) {
        .item .item-title-box .item-head h2 {
          padding: 0 0 0 57px;
          font-size: 20px; } }
    .item .item-title-box .rank-number {
      position: absolute;
      top: 0;
      left: 15px;
      width: 60px; }
      @media only screen and (max-width: 767px) {
        .item .item-title-box .rank-number {
          width: 40px;
          left: 10px; } }
    .item .item-title-box .item-general-rate {
      display: flex;
      justify-content: center;
      align-items: center;
      line-height: 1;
      letter-spacing: 0;
      margin-top: 0;
      padding: 0 15px 2px;
      color: #000;
      border-radius: 10px;
      background-color: #fff; }
      @media only screen and (max-width: 767px) {
        .item .item-title-box .item-general-rate {
          margin-top: 0;
          padding: 0 0 2px;
          border-radius: 0;
          border-bottom: solid 1px #004572; } }
      .item .item-title-box .item-general-rate .general-rate-hyouka {
        margin: 4px 0 0;
        padding: 0.3em;
        font-size: 20px;
        font-weight: bold;
        border-radius: 5px;
        border: solid 1px #000; }
        @media only screen and (max-width: 767px) {
          .item .item-title-box .item-general-rate .general-rate-hyouka {
            margin-top: 2px;
            padding: 0.5em;
            font-size: 11px; } }
      .item .item-title-box .item-general-rate .general-rate-stars {
        margin: 0 10px;
        font-size: 32px; }
        @media only screen and (max-width: 767px) {
          .item .item-title-box .item-general-rate .general-rate-stars {
            margin: 0;
            font-size: 20px; } }
      .item .item-title-box .item-general-rate .general-rate-rank {
        margin: 4px 0 0;
        padding: 0;
        font-size: 36px;
        font-weight: bold;
        font-family: 'Barlow Semi Condensed', sans-serif;
        color: #c00; }
        @media only screen and (max-width: 767px) {
          .item .item-title-box .item-general-rate .general-rate-rank {
            margin-top: 2px;
            font-size: 20px; } }
  .item .waku {
    margin: 0 auto;
    padding: 20px 25px 20px;
    border: 1px solid #004572;
    border-top: none;
    box-sizing: border-box;
    /* 画像・価格 */
    /* ３ポイント */
    /* 口コミ */
    /* ボタン類 */
    /* リアルタイム購買人数 */
    /* realtime-number */ }
    @media only screen and (max-width: 767px) {
      .item .waku {
        padding: 0 10px 30px;
        border: none; } }
    .item .waku .item-in {
      margin-bottom: 25px;
      vertical-align: top;
      border: none; }
      @media only screen and (max-width: 767px) {
        .item .waku .item-in {
          margin-bottom: 15px; } }
      .item .waku .item-in .item-img {
        width: 30%;
        float: left;
        margin-top: 6px;
        margin-bottom: 0;
        padding: 0;
        border: none; }
        @media only screen and (max-width: 767px) {
          .item .waku .item-in .item-img {
            display: block;
            width: 50%;
            margin-left: 25%;
            border: none;
            text-align: center; } }
        .item .waku .item-in .item-img img {
          width: 100%;
          height: auto; }
          .item .waku .item-in .item-img img:hover {
            opacity: 0.75; }
          @media only screen and (max-width: 767px) {
            .item .waku .item-in .item-img img {
              width: 80%;
              margin: 0 auto; } }
      .item .waku .item-in .item-info {
        width: 70%;
        float: right;
        margin: 0 auto;
        padding-left: 24px;
        border: none; }
        @media only screen and (max-width: 767px) {
          .item .waku .item-in .item-info {
            display: block;
            width: 100%;
            margin: 0;
            padding: 0; } }
        .item .waku .item-in .item-info table.rank-price {
          width: 100%;
          margin: 0 auto 10px;
          padding: 0;
          font-size: 20px;
          line-height: 1.3;
          border: none;
          border: solid 1px rgba(67, 159, 208, 0.4);
          border-bottom: none; }
          .item .waku .item-in .item-info table.rank-price th {
            width: 6.5em;
            padding: 5px 0 5px 0.7em;
            text-align: left;
            font-weight: bold;
            background-color: rgba(198, 232, 255, 0.4);
            border: none;
            border-bottom: solid 1px rgba(67, 159, 208, 0.4); }
            @media only screen and (max-width: 767px) {
              .item .waku .item-in .item-info table.rank-price th {
                width: 6em;
                padding: 8px 0 8px 0.35em;
                font-size: 11px; } }
          .item .waku .item-in .item-info table.rank-price td {
            text-align: left;
            padding: 5px 0 5px 0.5em;
            font-weight: normal;
            line-height: 1.3;
            border: none;
            border-bottom: solid 1px rgba(67, 159, 208, 0.4);
            font-size: 17px; }
            @media only screen and (max-width: 767px) {
              .item .waku .item-in .item-info table.rank-price td {
                padding: 8px 0 8px 0.35em;
                font-size: 12px; } }
            .item .waku .item-in .item-info table.rank-price td p.baseprice {
              font-size: 22px; }
              @media only screen and (max-width: 767px) {
                .item .waku .item-in .item-info table.rank-price td p.baseprice {
                  font-size: 15px; } }
              .item .waku .item-in .item-info table.rank-price td p.baseprice .shippingfee {
                font-size: 14px; }
                @media only screen and (max-width: 767px) {
                  .item .waku .item-in .item-info table.rank-price td p.baseprice .shippingfee {
                    font-size: 12px; } }
            .item .waku .item-in .item-info table.rank-price td p.saleprice {
              font-size: 30px;
              color: #f00;
              line-height: 1.2; }
              @media only screen and (max-width: 767px) {
                .item .waku .item-in .item-info table.rank-price td p.saleprice {
                  font-size: 20px; } }
              .item .waku .item-in .item-info table.rank-price td p.saleprice i {
                font-size: 24px;
                font-weight: bold;
                font-style: normal; }
                @media only screen and (max-width: 767px) {
                  .item .waku .item-in .item-info table.rank-price td p.saleprice i {
                    font-size: 12px; } }
              .item .waku .item-in .item-info table.rank-price td p.saleprice .tax {
                font-size: 16px; }
                @media only screen and (max-width: 767px) {
                  .item .waku .item-in .item-info table.rank-price td p.saleprice .tax {
                    font-size: 14px; } }
            @media only screen and (max-width: 767px) {
              .item .waku .item-in .item-info table.rank-price td p.shippingfee {
                font-size: 12px; } }
            .item .waku .item-in .item-info table.rank-price td span.regular {
              font-size: 16px;
              font-weight: normal; }
              @media only screen and (max-width: 767px) {
                .item .waku .item-in .item-info table.rank-price td span.regular {
                  font-size: 11px; } }
            .item .waku .item-in .item-info table.rank-price td.bottle-form span {
              padding: 2px 7px;
              border-radius: 3px;
              color: #BBB;
              background: #f3f3f3;
              border: 1px solid #d6d6d6;
              font-size: 12px; }
              @media only screen and (max-width: 767px) {
                .item .waku .item-in .item-info table.rank-price td.bottle-form span {
                  font-size: 11px;
                  padding: 2px 3px; } }
              .item .waku .item-in .item-info table.rank-price td.bottle-form span.on {
                background: #439fd0 !important;
                color: #FFF;
                font-weight: bold;
                border-color: #439fd0 !important; }
    .item .waku .three-point {
      margin: 0 auto 40px;
      padding: 0 10px;
      /* ul */ }
      @media only screen and (max-width: 767px) {
        .item .waku .three-point {
          margin: 0 auto 25px;
          padding: 0 5px; } }
      .item .waku .three-point ul {
        width: 100%;
        margin: 0 auto;
        padding: 1.2em 0.75em;
        background-color: rgba(214, 235, 255, 0.6);
        box-shadow: 0px 0px 0px 10px rgba(214, 235, 255, 0.6);
        border: dashed 2px white; }
        @media only screen and (max-width: 767px) {
          .item .waku .three-point ul {
            padding: 0.5em 0.5em;
            background-color: rgba(214, 235, 255, 0.6);
            box-shadow: 0px 0px 0px 5px rgba(214, 235, 255, 0.6);
            border: dashed 2px white; } }
        .item .waku .three-point ul li {
          position: relative;
          font-size: 22px;
          text-align: left;
          line-height: 1.4;
          margin-bottom: 12px;
          padding-left: 30px; }
          .item .waku .three-point ul li:last-child {
            margin-bottom: 0; }
          @media only screen and (max-width: 767px) {
            .item .waku .three-point ul li {
              margin-bottom: 8px;
              padding-left: 20px;
              font-size: 14px; } }
          .item .waku .three-point ul li:before {
            position: absolute;
            left: 0;
            top: 3px;
            content: '\f046 ';
            color: #0090d2;
            font-family: 'FontAwesome';
            font-size: 24px;
            line-height: 1; }
            @media only screen and (max-width: 767px) {
              .item .waku .three-point ul li:before {
                font-size: 16px; } }
    .item .waku .item-kuti {
      margin: 0 auto 30px;
      padding: 0;
      /* .item-kuti-box */ }
      @media only screen and (max-width: 767px) {
        .item .waku .item-kuti {
          margin: 0 auto 20px;
          padding: 0; } }
      .item .waku .item-kuti .item-kuti-title {
        width: 100%;
        margin: 0 auto;
        padding: 10px 0 10px 10px;
        color: #fff;
        font-size: 18px;
        font-weight: bold;
        text-align: left;
        line-height: 1;
        border-top: solid 1px #004572;
        border-bottom: solid 1px #004572;
        background-color: #004572; }
        @media only screen and (max-width: 767px) {
          .item .waku .item-kuti .item-kuti-title {
            text-align: center;
            font-size: 14px;
            padding: 7px 1px; } }
      .item .waku .item-kuti .item-kuti-box {
        position: relative;
        width: 100%;
        margin: 20px auto 0;
        padding: 15px;
        border-radius: 0;
        font-size: 14px; }
        @media only screen and (max-width: 767px) {
          .item .waku .item-kuti .item-kuti-box {
            margin: 15px auto 0; } }
        .item .waku .item-kuti .item-kuti-box.good {
          padding: 15px;
          border: solid 1px #cccccc;
          background-color: rgba(255, 202, 111, 0); }
          @media only screen and (max-width: 767px) {
            .item .waku .item-kuti .item-kuti-box.good {
              padding: 10px 10px 0; } }
          .item .waku .item-kuti .item-kuti-box.good .catch-icon {
            transform: rotate(-10deg);
            position: absolute;
            top: -20px;
            left: -20px;
            width: auto;
            height: 50px;
            display: flex;
            align-items: center;
            justify-content: flex-start;
            border-radius: 7px;
            border: solid 3px #f60;
            background-color: #fff;
            margin: 0;
            padding: 0 10px;
            text-align: left;
            line-height: 1; }
            @media only screen and (max-width: 767px) {
              .item .waku .item-kuti .item-kuti-box.good .catch-icon {
                top: -10px;
                left: -5px;
                padding: 0 8px;
                height: 36px;
                border: solid 2px #f60; } }
            .item .waku .item-kuti .item-kuti-box.good .catch-icon figure {
              margin: 0;
              padding: 0;
              text-align: left; }
              .item .waku .item-kuti .item-kuti-box.good .catch-icon figure img {
                width: 100%;
                height: auto; }
                @media only screen and (max-width: 767px) {
                  .item .waku .item-kuti .item-kuti-box.good .catch-icon figure img {
                    width: 70%; } }
            .item .waku .item-kuti .item-kuti-box.good .catch-icon p {
              margin: 0;
              padding: 0 0 0 10px;
              font-size: 32px;
              font-weight: bold;
              color: #000; }
              @media only screen and (max-width: 767px) {
                .item .waku .item-kuti .item-kuti-box.good .catch-icon p {
                  font-size: 22px;
                  padding: 0 0 0 1px; } }
          .item .waku .item-kuti .item-kuti-box.good .title {
            display: flex;
            align-items: center;
            margin: 0 0 5px;
            padding: 3px 3px 3px 0.5em;
            font-size: 14px;
            font-weight: bold;
            background-color: rgba(235, 233, 229, 0.6);
            float: none;
            width: 100%; }
            @media only screen and (max-width: 767px) {
              .item .waku .item-kuti .item-kuti-box.good .title {
                font-size: 12px; } }
            .item .waku .item-kuti .item-kuti-box.good .title img {
              width: 60%;
              margin-right: 10px; }
              @media only screen and (max-width: 767px) {
                .item .waku .item-kuti .item-kuti-box.good .title img {
                  width: 50%;
                  margin: auto; } }
        .item .waku .item-kuti .item-kuti-box.bad {
          border: solid 1px #cccccc;
          background-color: rgba(0, 0, 255, 0); }
          @media only screen and (max-width: 767px) {
            .item .waku .item-kuti .item-kuti-box.bad {
              padding: 10px 10px 0; } }
          .item .waku .item-kuti .item-kuti-box.bad .catch-icon {
            transform: rotate(10deg);
            position: absolute;
            top: -10px;
            right: -20px;
            width: auto;
            height: 50px;
            display: flex;
            align-items: center;
            justify-content: flex-start;
            border-radius: 7px;
            border: solid 3px #cccccc;
            background-color: #fff;
            margin: 0;
            padding: 0 10px;
            text-align: left;
            line-height: 1; }
            @media only screen and (max-width: 767px) {
              .item .waku .item-kuti .item-kuti-box.bad .catch-icon {
                top: -10px;
                right: -5px;
                padding: 0 8px;
                height: 36px;
                border: solid 2px #2788db; } }
            .item .waku .item-kuti .item-kuti-box.bad .catch-icon figure {
              margin: 0;
              padding: 0;
              text-align: left; }
              .item .waku .item-kuti .item-kuti-box.bad .catch-icon figure img {
                width: 100%;
                height: auto; }
                @media only screen and (max-width: 767px) {
                  .item .waku .item-kuti .item-kuti-box.bad .catch-icon figure img {
                    width: 70%; } }
            .item .waku .item-kuti .item-kuti-box.bad .catch-icon p {
              margin: 0;
              padding: 0 0 0 10px;
              font-size: 32px;
              font-weight: bold;
              color: #000; }
              @media only screen and (max-width: 767px) {
                .item .waku .item-kuti .item-kuti-box.bad .catch-icon p {
                  font-size: 22px;
                  padding: 0 0 0 1px; } }
          .item .waku .item-kuti .item-kuti-box.bad .title {
            display: flex;
            align-items: center;
            margin: 0 0 5px;
            padding: 3px 3px 3px 0.5em;
            font-size: 14px;
            font-weight: bold;
            background-color: rgba(235, 233, 229, 0.6);
            float: none;
            width: 100%; }
            @media only screen and (max-width: 767px) {
              .item .waku .item-kuti .item-kuti-box.bad .title {
                font-size: 12px; } }
            .item .waku .item-kuti .item-kuti-box.bad .title img {
              width: 60%;
              margin-right: 10px; }
              @media only screen and (max-width: 767px) {
                .item .waku .item-kuti .item-kuti-box.bad .title img {
                  width: 50%;
                  margin: auto; } }
        @media only screen and (max-width: 767px) {
          .item .waku .item-kuti .item-kuti-box {
            padding: 20px 15px 15px; } }
        .item .waku .item-kuti .item-kuti-box ul {
          margin-bottom: 0;
          padding-bottom: 10px; }
          .item .waku .item-kuti .item-kuti-box ul li.item-kuti-each {
            background-color: inherit;
            border: none;
            text-align: left;
            margin: 0 0 25px;
            padding: 0; }
            @media only screen and (max-width: 767px) {
              .item .waku .item-kuti .item-kuti-box ul li.item-kuti-each {
                font-size: 12px;
                margin-bottom: 0;
                padding-bottom: 0; } }
            .item .waku .item-kuti .item-kuti-box ul li.item-kuti-each span.idt {
              display: block;
              margin: 0 0 7px;
              padding-top: 0;
              font-size: 12px;
              font-weight: bold; }
              @media only screen and (max-width: 767px) {
                .item .waku .item-kuti .item-kuti-box ul li.item-kuti-each span.idt {
                  margin: 5px 0 10px;
                  padding-top: 0;
                  font-size: 11px; } }
            .item .waku .item-kuti .item-kuti-box ul li.item-kuti-each .con {
              width: 100%;
              margin: 0 auto;
              padding: 0 15px;
              font-size: 16px; }
              @media only screen and (max-width: 767px) {
                .item .waku .item-kuti .item-kuti-box ul li.item-kuti-each .con {
                  margin: 5px 0 10px;
                  padding-top: 0;
                  font-size: 11px; } }
            .item .waku .item-kuti .item-kuti-box ul li.item-kuti-each:last-child {
              margin-bottom: 0; }
    .item .waku .cv-area,
    .item .waku .cv-area2 {
      text-align: center;
      clear: both;
      display: flex;
      justify-content: space-between;
      margin-bottom: 40px;
      /* ボタン：詳しくはこちら */
      /* ボタン内・矢印アイコン */
      /*@keyframes lightning3 {
        0% {left: -20%;}
        20% {left: 120%;}
        100% {left: 120%;}
      }
      @-webkit-keyframes lightning3 {
        0% {left: -20%;}
        20% {left: 120%;}
        100% {left: 120%;}
      }*/
      /* 基本ボタン（赤） */
      /* ボタン：公式サイトはこちら */
      /* ボタン内・矢印アイコン */
      /* 緑ボタン */ }
      @media only screen and (max-width: 767px) {
        .item .waku .cv-area,
        .item .waku .cv-area2 {
          display: block;
          margin-bottom: 30px; } }
      .item .waku .cv-area .btn-more3,
      .item .waku .cv-area2 .btn-more3 {
        width: 38%; }
        @media only screen and (max-width: 767px) {
          .item .waku .cv-area .btn-more3,
          .item .waku .cv-area2 .btn-more3 {
            width: 100%;
            margin-bottom: 8px;
            margin-top: -10px; } }
      .item .waku .cv-area .btn-more3 a,
      .item .waku .cv-area2 .btn-more3 a {
        position: relative;
        display: block;
        width: 100%;
        margin: 0 auto 20px;
        padding: 0.7em 2em 0.8em 1em;
        color: #fff;
        display: block;
        font-size: 24px;
        font-weight: bold;
        line-height: 1.3;
        text-align: center;
        text-decoration: none;
        text-shadow: 0 0 5px rgba(255, 255, 255, 0.8), 1px 1px 2px black;
        vertical-align: middle;
        outline: 1px solid rgba(255, 255, 255, 0.75);
        outline-offset: -5px;
        border-radius: 5px;
        cursor: pointer;
        box-sizing: border-box;
        overflow: hidden;
        z-index: 2;
        transition: color 0.3s, background-color 0.3s, box-shadow 0.3s, transform 0.3s;
        transition: .25s linear; }
        @media only screen and (max-width: 767px) {
          .item .waku .cv-area .btn-more3 a,
          .item .waku .cv-area2 .btn-more3 a {
            width: 96%;
            padding: 0.75em 2em 0.75em 1em;
            font-size: 1.1rem; } }
      .item .waku .cv-area .btn-more3 a:before,
      .item .waku .cv-area2 .btn-more3 a:before {
        content: "\f138";
        font-family: "fontawesome";
        font-weight: normal;
        font-size: 1.5em;
        margin-top: -.625em;
        position: absolute;
        right: 20px;
        top: 50%; }
      .item .waku .cv-area .btn-more3 a:after,
      .item .waku .cv-area2 .btn-more3 a:after {
        display: block;
        position: absolute;
        z-index: -1;
        left: -30%;
        top: -50%;
        content: "";
        width: 100px;
        height: 200px;
        -webkit-transform: rotate(30deg);
        transform: rotate(30deg);
        /*background:-webkit-gradient(linear, left bottom, right bottom, color-stop(0%,rgba(255,255,255,0)), color-stop(50%,rgba(255,255,255,1)),color-stop(100%,rgba(255,255,255,0)));
        background:linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%,rgba(255,255,255,0) 100%);*/
        /*-webkit-animation:lightning3 2.5s infinite linear;
        animation:lightning3 2.5s infinite linear;*/ }
      .item .waku .cv-area .btn-more3 a,
      .item .waku .cv-area2 .btn-more3 a {
        background: #ccc;
        box-shadow: 0 6px 0 #777; }
      .item .waku .cv-area .btn-more3 a:hover,
      .item .waku .cv-area2 .btn-more3 a:hover {
        background-color: #ccc;
        box-shadow: 0 6px 0 #777;
        transform: translateY(2px);
        animation: flashing3 1s;
        /* マウスオン発光 */ }
      .item .waku .cv-area .btn-more3 a:active,
      .item .waku .cv-area2 .btn-more3 a:active {
        color: #fff;
        background-color: #icon-checked;
        box-shadow: 0 2px 0 #777;
        transform: translateY(6px);
        transition-duration: 0.1s; }
      .item .waku .cv-area .cv,
      .item .waku .cv-area2 .cv {
        width: 60%;
        margin: auto; }
        @media only screen and (max-width: 767px) {
          .item .waku .cv-area .cv,
          .item .waku .cv-area2 .cv {
            width: 100%;
            padding-left: 0; } }
      .item .waku .cv-area .cv a,
      .item .waku .cv-area2 .cv a {
        position: relative;
        display: block;
        width: 100%;
        margin: 0 auto 20px;
        padding: 0.51em 2em 0.51em 1em;
        color: #fff;
        display: block;
        font-size: 1.8rem;
        font-weight: bold;
        line-height: 1.3;
        text-align: center;
        text-decoration: none;
        text-shadow: 0 0 5px rgba(255, 255, 255, 0.8), 1px 1px 2px black;
        vertical-align: middle;
        outline: 1px solid rgba(255, 255, 255, 0.75);
        outline-offset: -5px;
        border-radius: 5px;
        cursor: pointer;
        box-sizing: border-box;
        overflow: hidden;
        z-index: 2;
        transition: color 0.3s, background-color 0.3s, box-shadow 0.3s, transform 0.3s;
        transition: .25s linear; }
        @media only screen and (max-width: 767px) {
          .item .waku .cv-area .cv a,
          .item .waku .cv-area2 .cv a {
            width: 96%;
            padding: 0.75em 2.5em 0.75em 1em;
            font-size: 1.1rem;
            margin-bottom: 30px; } }
      .item .waku .cv-area .cv a:before,
      .item .waku .cv-area2 .cv a:before {
        content: "\f138";
        font-family: "fontawesome";
        font-weight: normal;
        font-size: 1.5em;
        margin-top: -.625em;
        position: absolute;
        right: 20px;
        top: 50%; }
      .item .waku .cv-area .cv a:after,
      .item .waku .cv-area2 .cv a:after {
        display: block;
        position: absolute;
        z-index: -1;
        left: -30%;
        top: -50%;
        content: "";
        width: 100px;
        height: 200px;
        -webkit-transform: rotate(30deg);
        transform: rotate(30deg);
        background: -webkit-gradient(linear, left bottom, right bottom, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(50%, white), color-stop(100%, rgba(255, 255, 255, 0)));
        background: linear-gradient(left, rgba(255, 255, 255, 0) 0%, white 50%, rgba(255, 255, 255, 0) 100%);
        -webkit-animation: lightning 2.5s infinite linear;
        animation: lightning2 2.5s infinite linear; }
@keyframes lightning2 {
  0% {
    left: -20%; }
  20% {
    left: 120%; }
  100% {
    left: 120%; } }
@-webkit-keyframes lightning2 {
  0% {
    left: -20%; }
  20% {
    left: 120%; }
  100% {
    left: 120%; } }
      .item .waku .cv-area .cv a,
      .item .waku .cv-area2 .cv a {
        background: #ff0000;
        box-shadow: 0 6px 0 #aa0000; }
      .item .waku .cv-area .cv a:hover,
      .item .waku .cv-area2 .cv a:hover {
        background-color: #ff0000;
        box-shadow: 0 6px 0 #aa0000;
        transform: translateY(2px);
        animation: flashing2 1s;
        /* マウスオン発光 */ }
      .item .waku .cv-area .cv a:active,
      .item .waku .cv-area2 .cv a:active {
        color: #fff;
        background-color: #c50000;
        box-shadow: 0 2px 0 #440000;
        transform: translateY(6px);
        transition-duration: 0.1s; }
@keyframes flashing2 {
  0% {
    background-color: #ff0000; }
  10% {
    background-color: #ffc8c8; }
  100% {
    background-color: #ff0000; } }
@-webkit-keyframes flashing2 {
  0% {
    background-color: #ff0000; }
  10% {
    background-color: #ffc8c8; }
  100% {
    background-color: #ff0000; } }
    .item .waku .cv-area2 .btn-more3 {
      margin: 0 auto;
      width: 50%; }
    .item .waku .realtime-number {
      /*animation: topNumFadeIn 3s ease 0s infinite alternate;*/
      position: relative;
      text-align: center;
      font-weight: bold;
      font-size: 18px;
      background-color: rgba(252, 171, 158, 0.3);
      border-radius: 5px;
      margin: 20px auto 10px;
      padding: 8px 5px;
      line-height: 1.3;
      width: 100%; }
      .item .waku .realtime-number:before {
        content: "";
        position: absolute;
        top: -30px;
        left: 70%;
        margin-left: -15px;
        border: 15px solid transparent;
        border-bottom: 15px solid rgba(252, 171, 158, 0.3); }
      @media only screen and (max-width: 767px) {
        .item .waku .realtime-number {
          font-size: 12px;
          margin: 10px auto 10px;
          padding: 5px 2px; }
          .item .waku .realtime-number:before {
            content: "";
            position: absolute;
            top: -17px;
            left: 50%;
            margin-left: -9px;
            border: 9px solid transparent;
            border-bottom: 9px solid rgba(252, 171, 158, 0.3); } }
      .item .waku .realtime-number span.num {
        font-size: 22px;
        color: red; }
        @media only screen and (max-width: 767px) {
          .item .waku .realtime-number span.num {
            font-size: 16px; } }
@keyframes topNumFadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
  .item .img {
    float: left;
    width: 35%; }
    @media only screen and (max-width: 767px) {
      .item .img {
        padding-right: 10px;
        width: 40%; } }
  .item .time {
    color: #333;
    float: left;
    font-size: 13px;
    margin-bottom: 5px;
    text-align: left;
    width: 65%; }
    @media only screen and (max-width: 767px) {
      .item .time {
        font-size: 12px;
        width: 60%; } }
  .item p.title {
    float: left;
    font-size: 18px;
    font-weight: 700;
    text-align: left;
    width: 65%; }
    @media only screen and (max-width: 767px) {
      .item p.title {
        font-size: 16px;
        width: 60%; } }
  .item p.text {
    color: #333;
    float: left;
    font-size: 15px;
    margin-top: 10px;
    text-align: left;
    width: 65%; }
    @media only screen and (max-width: 767px) {
      .item p.text {
        font-size: 13px;
        margin-top: 5px;
        width: 60%; } }

/* item */
.column-list-qa {
  margin-top: 20px; }
  .column-list-qa .item {
    margin: 0 auto 20px; }
  .column-list-qa .img img {
    max-width: 100%;
    height: auto; }

/* item PR用 */
.rank-pr {
  background: #fff; }
  .rank-pr .item-title-box {
    border: 1px solid #F2332E;
    border-top: 8px solid #F2332E; }
    @media only screen and (max-width: 767px) {
      .rank-pr .item-title-box {
        border-right: none;
        border-left: none; } }
  .rank-pr .waku {
    border: 1px solid #F2332E;
    border-top: none; }
    @media only screen and (max-width: 767px) {
      .rank-pr .waku {
        border: none; } }

/* ------------------------------------------------- *
*        ＠口コミ-子（category）
* ------------------------------------------------- */
#cat-kuti-child {
  background: #FFF;
  padding: 32px;
  border: 1px solid #DDD;
  margin-bottom: 24px; }
  @media only screen and (max-width: 767px) {
    #cat-kuti-child {
      margin: 0;
      padding: 16px; } }
  #cat-kuti-child .cat-title {
    font-size: 25px;
    margin-bottom: 24px; }
    @media only screen and (max-width: 767px) {
      #cat-kuti-child .cat-title {
        margin-bottom: 16px; } }
  #cat-kuti-child .cat-description {
    margin-bottom: 24px; }
    @media only screen and (max-width: 767px) {
      #cat-kuti-child .cat-description {
        margin-bottom: 16px; } }
    @media only screen and (max-width: 767px) {
      #cat-kuti-child .cat-description P {
        font-size: 12px; } }
  #cat-kuti-child .comp-description {
    margin-bottom: 24px;
    overflow: hidden; }
    #cat-kuti-child .comp-description .comp-img {
      width: 40%;
      float: left;
      margin-bottom: 24px; }
      @media only screen and (max-width: 767px) {
        #cat-kuti-child .comp-description .comp-img {
          margin-bottom: 16px; } }
    #cat-kuti-child .comp-description .comp-speck {
      width: 60%;
      float: left;
      padding-left: 16px;
      margin-bottom: 24px; }
      @media only screen and (max-width: 767px) {
        #cat-kuti-child .comp-description .comp-speck {
          margin-bottom: 16px; } }
      #cat-kuti-child .comp-description .comp-speck th {
        background: #EFEFEF; }
    #cat-kuti-child .comp-description .cv-area {
      text-align: center;
      margin: 0 auto;
      clear: both; }
      #cat-kuti-child .comp-description .cv-area img {
        width: 70%;
        margin: 0 auto; }
        @media only screen and (max-width: 767px) {
          #cat-kuti-child .comp-description .cv-area img {
            width: 100%; } }

/* ------------------------------------------------- *
*        ＠タイプ別比較-親（category）
* ------------------------------------------------- */
/* ------------------------------------------------- *
*        ＠タイプ別比較-子（category）
* ------------------------------------------------- */
#cat-type-child .cat-description {
  padding: 16px 32px;
  background: #FFF;
  border: 1px solid #DDD;
  margin-bottom: 32px; }
  @media only screen and (max-width: 767px) {
    #cat-type-child .cat-description {
      padding: 16px;
      margin: 0;
      border: none; } }
  #cat-type-child .cat-description p {
    margin-bottom: 16px; }
    @media only screen and (max-width: 767px) {
      #cat-type-child .cat-description p {
        font-size: 14px; } }
  #cat-type-child .cat-description .more {
    text-align: center; }
    #cat-type-child .cat-description .more a {
      padding: 10px 0;
      display: block;
      background: #EFEFEF;
      width: 80%;
      margin: 0 auto;
      border: 1px solid #DDD; }
#cat-type-child #more-txt {
  padding: 16px 32px 32px 32px;
  background: #FFF;
  border: 1px solid #DDD;
  margin-bottom: 32px; }
  @media only screen and (max-width: 767px) {
    #cat-type-child #more-txt {
      padding: 16px;
      margin: 0;
      border: none; } }
  #cat-type-child #more-txt h3 {
    font-size: 20px;
    font-weight: bold;
    margin: 16px 0 16px 0; }
    @media only screen and (max-width: 767px) {
      #cat-type-child #more-txt h3 {
        font-size: 18px;
        margin: 0 0 10px 0; } }
  #cat-type-child #more-txt p {
    margin-bottom: 16px; }

/* ------------------------------------------------- *
*        ＠記事（category）
* ------------------------------------------------- */
#cat-column h1 {
  font-size: 24px;
  margin-bottom: 24px; }
  @media only screen and (max-width: 767px) {
    #cat-column h1 {
      font-size: 18px;
      line-height: 1.3;
      font-weight: bold;
      margin-bottom: 0;
      padding: 8px; } }
#cat-column .cat-title {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 24px; }
  @media only screen and (max-width: 767px) {
    #cat-column .cat-title {
      font-size: 18px;
      margin-bottom: 0; } }
#cat-column .cat-description {
  padding: 32px;
  background: #F1F1F1;
  margin-bottom: 24px; }
  @media only screen and (max-width: 767px) {
    #cat-column .cat-description {
      margin-bottom: 0;
      padding: 16px; } }
  #cat-column .cat-description p {
    font-size: 14px; }
    @media only screen and (max-width: 767px) {
      #cat-column .cat-description p {
        font-size: 12px; } }

/* ------------------------------------------------- *
*        ＠検索（category）
* ------------------------------------------------- */
/* ------------------------------------------------- *
*        ＠検索結果（category）
* ------------------------------------------------- */
#cat-search-kekka {
  margin-bottom: 24px;
  /* .search-table-w */ }
  #cat-search-kekka .cate-description_in {
    padding: 16px;
    margin-bottom: 12px;
    background: #FFF;
    /*border: 1px solid #DDD;*/ }
  #cat-search-kekka .search-table-w {
    /* .kekka-buttons */
    /* .kekka */
    /* .kekka-image */
    /* .kekka-name */
    /* .kekka-lists */ }
    #cat-search-kekka .search-table-w .kekka-buttons {
      margin: 0 auto 12px;
      text-align: center; }
      #cat-search-kekka .search-table-w .kekka-buttons button {
        margin-right: 3px;
        padding: 8px 1.25em 8px 1.5em;
        font-size: 16px;
        font-weight: normal;
        line-height: 1;
        color: #666;
        border-radius: 8px;
        border: solid 1px #666;
        background-color: #fff; }
        #cat-search-kekka .search-table-w .kekka-buttons button:hover {
          color: #004572;
          border: solid 1px #004572;
          background-color: rgba(198, 232, 255, 0.4); }
        #cat-search-kekka .search-table-w .kekka-buttons button:after {
          display: inline-block;
          width: 0;
          height: 0;
          border-left: 6px solid transparent;
          border-right: 6px solid transparent;
          border-bottom: 6px solid transparent;
          border-top: 6px solid transparent;
          content: "";
          position: relative;
          top: -6px;
          right: -5px; }
        #cat-search-kekka .search-table-w .kekka-buttons button.asc:after {
          width: 0;
          height: 0;
          border-left: 6px solid transparent;
          border-right: 6px solid transparent;
          border-top: 6px solid #f00;
          content: "";
          position: relative;
          top: 6px;
          right: -5px; }
        #cat-search-kekka .search-table-w .kekka-buttons button.desc:after {
          width: 0;
          height: 0;
          border-left: 6px solid transparent;
          border-right: 6px solid transparent;
          border-bottom: 6px solid #f00;
          content: "";
          position: relative;
          top: -6px;
          right: -5px; }
    #cat-search-kekka .search-table-w .kekka {
      margin-bottom: 24px;
      border: none;
      border-top: dotted 1px #004572; }
      #cat-search-kekka .search-table-w .kekka td {
        vertical-align: top;
        border: none;
        border-bottom: dotted 1px #004572;
        padding: 25px 8px 25px; }
    #cat-search-kekka .search-table-w .kekka-image {
      width: 15%;
      /* 総合評価 */ }
      #cat-search-kekka .search-table-w .kekka-image img {
        width: 100%;
        height: auto;
        margin-bottom: 0;
        padding: 5px 10px;
        border: solid 1px rgba(67, 159, 208, 0.5);
        background-color: #fff; }
      #cat-search-kekka .search-table-w .kekka-image .kekka-general-rate {
        display: block;
        width: 100%;
        line-height: 1;
        letter-spacing: 0;
        margin: 0 auto;
        padding: 15px 2px 5px;
        color: #000;
        text-align: center;
        border-top: none;
        background-color: #fff; }
        #cat-search-kekka .search-table-w .kekka-image .kekka-general-rate .general-rate-hyouka {
          width: 100%;
          margin: 0 auto;
          padding: 0.3em 1em;
          font-size: 12px;
          font-weight: bold;
          border-radius: 5px;
          border: solid 1px #000;
          background-color: white; }
        #cat-search-kekka .search-table-w .kekka-image .kekka-general-rate .general-rate-stars {
          margin: 0 auto;
          padding: 0;
          font-size: 20px; }
        #cat-search-kekka .search-table-w .kekka-image .kekka-general-rate .general-rate-rank {
          margin: 0;
          padding: 0;
          font-size: 20px;
          font-weight: bold;
          font-family: 'Barlow Semi Condensed', sans-serif;
          color: #c00; }
    #cat-search-kekka .search-table-w .kekka-name {
      margin: 0;
      padding: 10px;
      width: 42%;
      font-size: 14px; }
      #cat-search-kekka .search-table-w .kekka-name .comp-name {
        color: #fff;
        text-indent: 0.5em;
        font-size: 16px;
        font-weight: bold;
        margin: 0;
        padding: 3px 1px;
        background-color: #004572; }
      #cat-search-kekka .search-table-w .kekka-name a {
        color: #fff; }
      #cat-search-kekka .search-table-w .kekka-name table {
        margin: 0 auto;
        padding: 0;
        line-height: 1.3;
        border: none;
        border: solid 1px rgba(67, 159, 208, 0.4);
        border-bottom: none; }
        #cat-search-kekka .search-table-w .kekka-name table th {
          width: 6em;
          padding: 4px 0 4px 8px;
          text-align: left;
          font-size: 14px;
          background-color: rgba(198, 232, 255, 0.4);
          border: none;
          border-bottom: solid 1px rgba(67, 159, 208, 0.4); }
        #cat-search-kekka .search-table-w .kekka-name table td {
          padding: 4px 0 4px 8px;
          border: none;
          border-bottom: solid 1px rgba(67, 159, 208, 0.4); }
          #cat-search-kekka .search-table-w .kekka-name table td p {
            font-size: 14px; }
            #cat-search-kekka .search-table-w .kekka-name table td p.saleprice {
              color: #f00; }
    #cat-search-kekka .search-table-w .kekka-lists {
      width: 43%;
      /* .kekka-three-point */ }
      #cat-search-kekka .search-table-w .kekka-lists .kekka-three-point {
        margin: 7px auto 15px;
        padding: 0;
        /* ul */ }
        @media only screen and (max-width: 767px) {
          #cat-search-kekka .search-table-w .kekka-lists .kekka-three-point {
            margin: 0 auto 30px;
            padding: 0 5px; } }
        #cat-search-kekka .search-table-w .kekka-lists .kekka-three-point ul {
          width: 100%;
          margin: 0 auto;
          padding: 0.5em;
          background-color: rgba(214, 235, 255, 0.6);
          box-shadow: 0px 0px 0px 7px rgba(214, 235, 255, 0.6);
          border: dashed 2px white; }
          @media only screen and (max-width: 767px) {
            #cat-search-kekka .search-table-w .kekka-lists .kekka-three-point ul {
              padding: 0.5em 0.5em;
              background-color: rgba(214, 235, 255, 0.6);
              box-shadow: 0px 0px 0px 5px rgba(214, 235, 255, 0.6);
              border: dashed 2px white; } }
          #cat-search-kekka .search-table-w .kekka-lists .kekka-three-point ul li {
            position: relative;
            font-size: 16px;
            text-align: left;
            line-height: 1.3;
            margin-bottom: 10px;
            padding-left: 20px; }
            #cat-search-kekka .search-table-w .kekka-lists .kekka-three-point ul li:last-child {
              margin-bottom: 0; }
            @media only screen and (max-width: 767px) {
              #cat-search-kekka .search-table-w .kekka-lists .kekka-three-point ul li {
                margin-bottom: 8px;
                padding-left: 20px;
                font-size: 14px; } }
            #cat-search-kekka .search-table-w .kekka-lists .kekka-three-point ul li:before {
              position: absolute;
              left: 0;
              top: 3px;
              content: '\f046 ';
              color: #0090d2;
              font-family: 'FontAwesome';
              font-size: 16px;
              line-height: 1; }
              @media only screen and (max-width: 767px) {
                #cat-search-kekka .search-table-w .kekka-lists .kekka-three-point ul li:before {
                  font-size: 16px; } }

/* #cat-search-kekka */
/* ボタン：詳しくはこちら */
.btn-more4 {
  width: 100%; }

.btn-more4 a {
  position: relative;
  display: block;
  width: 100%;
  margin: 0 auto;
  padding: 1em 1em;
  color: #fff;
  display: block;
  font-size: 1.2em;
  font-weight: bold;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
  text-shadow: 0 0 5px rgba(255, 255, 255, 0.8), 1px 1px 2px black;
  vertical-align: middle;
  outline: 1px solid rgba(255, 255, 255, 0.75);
  outline-offset: -5px;
  border-radius: 5px;
  cursor: pointer;
  box-sizing: border-box;
  overflow: hidden;
  z-index: 2;
  transition: color 0.3s, background-color 0.3s, box-shadow 0.3s, transform 0.3s;
  transition: .25s linear; }
  @media only screen and (max-width: 767px) {
    .btn-more4 a {
      font-size: 1.1em; } }

/* ボタン内・矢印アイコン */
.btn-more4 a:before {
  content: "\f138";
  font-family: "fontawesome";
  font-weight: normal;
  font-size: 1.5em;
  position: absolute;
  right: 20px;
  top: 20%; }

/* 矢印アイコン揺れ */
.btn-more4.arrow4 a:before {
  -webkit-animation-name: arrow4;
  -webkit-animation-duration: 1.2s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-timing-function: ease; }

@-webkit-keyframes arrow4 {
  0% {
    -webkit-transform: translate(-7px, 0); }
  100% {
    -webkit-transform: translate(0, 0); } }
.btn-more4 a:after {
  display: block;
  position: absolute;
  z-index: -1;
  left: -30%;
  top: -50%;
  content: "";
  width: 100px;
  height: 200px;
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
  background: -webkit-gradient(linear, left bottom, right bottom, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(50%, white), color-stop(100%, rgba(255, 255, 255, 0)));
  background: linear-gradient(left, rgba(255, 255, 255, 0) 0%, white 50%, rgba(255, 255, 255, 0) 100%);
  /*-webkit-animation:lightning4 2.5s infinite linear;
  animation:lightning4 2.5s infinite linear;*/ }

/*@keyframes lightning4 {
  0% {left: -20%;}
  20% {left: 120%;}
  100% {left: 120%;}
}
@-webkit-keyframes lightning4 {
  0% {left: -20%;}
  20% {left: 120%;}
  100% {left: 120%;}
}*/
/* 基本ボタン */
.btn-more4 a {
  background: #ff9900;
  box-shadow: 0 6px 0 #c86300; }

.btn-more4 a:hover {
  background-color: #ff9900;
  box-shadow: 0 6px 0 #c86300;
  transform: translateY(2px);
  animation: flashing4 1s;
  /* マウスオン発光 */ }

.btn-more4 a:active {
  color: #fff;
  background-color: #ff8800;
  box-shadow: 0 2px 0 #a75300;
  transform: translateY(6px);
  transition-duration: 0.1s; }

@keyframes flashing4 {
  0% {
    background-color: #ff9900; }
  10% {
    background-color: #ffe7cf; }
  100% {
    background-color: #ff9900; } }
@-webkit-keyframes flashing4 {
  0% {
    background-color: #ff9900; }
  10% {
    background-color: #ffe7cf; }
  100% {
    background-color: #ff9900; } }
/* ＊＊＊＊＊＊＊＊＊＊
　　検索結果テーブル（SP)
＊＊＊＊＊＊＊＊＊＊　 */
.kekka-h {
  font-size: 16px; }
  .kekka-h span {
    font-size: 16px;
    padding: 3px 6px;
    letter-spacing: -0.05em; }

.search-table-sp .item {
  width: 100%;
  margin: 0 auto 15px;
  background-color: #fff;
  padding: 10px 0;
  /* 個別の大枠 */
  /* ３ポイント */
  /* 口コミ */
  /* ボタン：詳しくはこちら */
  /* ボタン内・矢印アイコン */
  /* 矢印アイコン揺れ */
  /*@keyframes lightning5 {
    0% {left: -20%;}
    20% {left: 120%;}
    100% {left: 120%;}
  }
  @-webkit-keyframes lightning5 {
    0% {left: -20%;}
    20% {left: 120%;}
    100% {left: 120%;}
  }*/
  /* 基本ボタン（赤） */ }
  .search-table-sp .item h2 {
    font-size: 14px;
    background-color: #004572;
    margin-bottom: 3px;
    padding: 6px 2px 6px; }
    .search-table-sp .item h2 a {
      color: #fff; }
  .search-table-sp .item .waku {
    padding: 0 10px 35px;
    border: none;
    box-sizing: border-box;
    /* 画像・総合評価・価格 */ }
    .search-table-sp .item .waku .comp-in {
      margin: 8px auto;
      vertical-align: top;
      border: none; }
      .search-table-sp .item .waku .comp-in .comp-img {
        width: 30%;
        float: left;
        margin: 0;
        padding: 0;
        border: none; }
        .search-table-sp .item .waku .comp-in .comp-img img {
          width: 100%;
          height: auto; }
    .search-table-sp .item .waku .comp-info {
      width: 70%;
      float: right;
      margin: 0 auto;
      padding: 0;
      border: none; }
    .search-table-sp .item .waku .general-rate {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin: -8px 0 4px;
      padding: 0;
      line-height: 1;
      letter-spacing: -0.05em;
      color: #000; }
    .search-table-sp .item .waku .general-rate-hyouka {
      margin-top: 10px;
      padding: 0.5em;
      font-size: 11px;
      font-weight: bold;
      border-radius: 5px;
      border: solid 1px #000; }
    .search-table-sp .item .waku .general-rate-stars {
      margin: 0 0 0 -10px;
      font-size: 18px; }
    .search-table-sp .item .waku .general-rate-rank {
      margin: 6px 0 0 0;
      font-size: 20px;
      font-weight: bold;
      font-family: 'Barlow Semi Condensed', sans-serif;
      color: #c00; }
    .search-table-sp .item .waku table.comp-rank-price {
      width: 100%;
      margin: 0 auto 10px;
      padding: 0;
      font-size: 17px;
      line-height: 1.1;
      border: none;
      border: solid 1px rgba(67, 159, 208, 0.4);
      border-bottom: none; }
      .search-table-sp .item .waku table.comp-rank-price th {
        width: 5em;
        padding: 3px 0 3px 0.25em;
        text-align: left;
        font-size: 11px;
        font-weight: bold;
        background-color: rgba(198, 232, 255, 0.4);
        border: none;
        border-bottom: solid 1px rgba(67, 159, 208, 0.4); }
      .search-table-sp .item .waku table.comp-rank-price td {
        text-align: left;
        line-height: 1.1;
        padding: 3px 0 3px 0.25em;
        font-weight: bold;
        border: none;
        border-bottom: solid 1px rgba(67, 159, 208, 0.4); }
        .search-table-sp .item .waku table.comp-rank-price td .baseprice {
          font-size: 12px; }
        .search-table-sp .item .waku table.comp-rank-price td .saleprice {
          font-size: 12px;
          color: #f00;
          line-height: 1.2; }
          .search-table-sp .item .waku table.comp-rank-price td .saleprice i {
            font-size: 11px;
            font-weight: bold;
            font-style: normal; }
        .search-table-sp .item .waku table.comp-rank-price td .regular {
          font-weight: normal;
          font-size: 11px; }
  .search-table-sp .item .comp-three-point {
    margin: 0 auto 10px;
    padding: 0 5px;
    /* ul */ }
    .search-table-sp .item .comp-three-point ul {
      width: 100%;
      margin: 0 auto;
      padding: 0.5em 0.5em;
      background-color: rgba(214, 235, 255, 0.6);
      box-shadow: 0px 0px 0px 5px rgba(214, 235, 255, 0.6);
      border: dashed 2px white; }
      .search-table-sp .item .comp-three-point ul li {
        position: relative;
        font-size: 14px;
        text-align: left;
        line-height: 1.4;
        margin-bottom: 8px;
        padding-left: 20px; }
        .search-table-sp .item .comp-three-point ul li:last-child {
          margin-bottom: 0; }
        .search-table-sp .item .comp-three-point ul li:before {
          position: absolute;
          left: 0;
          top: 3px;
          content: '\f046 ';
          color: #0090d2;
          font-family: 'FontAwesome';
          font-size: 16px;
          line-height: 1; }
  .search-table-sp .item .com-kuti {
    margin: 0 auto 25px;
    padding: 0;
    /* .com-kuti-box */ }
    @media only screen and (max-width: 767px) {
      .search-table-sp .item .com-kuti {
        margin: 0 auto 20px;
        padding: 0; } }
    .search-table-sp .item .com-kuti .com-kuti-title {
      width: 100%;
      margin: 0 auto;
      padding: 10px 0 10px 10px;
      color: #fff;
      font-size: 18px;
      font-weight: bold;
      text-align: left;
      line-height: 1;
      border-top: solid 1px #004572;
      border-bottom: solid 1px #004572;
      background-color: #004572; }
      @media only screen and (max-width: 767px) {
        .search-table-sp .item .com-kuti .com-kuti-title {
          text-align: center;
          font-size: 14px;
          padding: 7px 1px; } }
    .search-table-sp .item .com-kuti .com-kuti-box {
      position: relative;
      width: 96%;
      margin: 40px auto 0;
      padding: 15px;
      border-radius: 0;
      font-size: 14px; }
      @media only screen and (max-width: 767px) {
        .search-table-sp .item .com-kuti .com-kuti-box {
          margin: 25px auto 0; } }
      .search-table-sp .item .com-kuti .com-kuti-box.good {
        padding: 15px;
        border: solid 1px #ffca6f;
        background-color: rgba(255, 202, 111, 0); }
        @media only screen and (max-width: 767px) {
          .search-table-sp .item .com-kuti .com-kuti-box.good {
            padding: 28px 10px 0; } }
        .search-table-sp .item .com-kuti .com-kuti-box.good .catch-icon {
          transform: rotate(-10deg);
          position: absolute;
          top: -20px;
          left: -20px;
          width: auto;
          height: 50px;
          display: flex;
          align-items: center;
          justify-content: flex-start;
          border-radius: 7px;
          border: solid 3px #f60;
          background-color: #fff;
          margin: 0;
          padding: 0 10px;
          text-align: left;
          line-height: 1; }
          @media only screen and (max-width: 767px) {
            .search-table-sp .item .com-kuti .com-kuti-box.good .catch-icon {
              top: -10px;
              left: -5px;
              padding: 0 8px;
              height: 36px;
              border: solid 2px #f60; } }
          .search-table-sp .item .com-kuti .com-kuti-box.good .catch-icon figure {
            margin: 0;
            padding: 0;
            text-align: left; }
            .search-table-sp .item .com-kuti .com-kuti-box.good .catch-icon figure img {
              width: 100%;
              height: auto; }
              @media only screen and (max-width: 767px) {
                .search-table-sp .item .com-kuti .com-kuti-box.good .catch-icon figure img {
                  width: 70%; } }
          .search-table-sp .item .com-kuti .com-kuti-box.good .catch-icon p {
            margin: 0;
            padding: 0 0 0 10px;
            font-size: 32px;
            font-weight: bold;
            color: #000; }
            @media only screen and (max-width: 767px) {
              .search-table-sp .item .com-kuti .com-kuti-box.good .catch-icon p {
                font-size: 22px;
                padding: 0 0 0 1px; } }
        .search-table-sp .item .com-kuti .com-kuti-box.good .title {
          margin: 0 0 5px;
          padding: 3px 3px 3px 0.5em;
          font-size: 14px;
          font-weight: bold;
          background-color: rgba(255, 202, 111, 0.6); }
          @media only screen and (max-width: 767px) {
            .search-table-sp .item .com-kuti .com-kuti-box.good .title {
              font-size: 12px; } }
      .search-table-sp .item .com-kuti .com-kuti-box.bad {
        border: solid 1px rgba(0, 153, 255, 0.5);
        background-color: rgba(0, 0, 255, 0); }
        @media only screen and (max-width: 767px) {
          .search-table-sp .item .com-kuti .com-kuti-box.bad {
            padding: 28px 10px 0; } }
        .search-table-sp .item .com-kuti .com-kuti-box.bad .catch-icon {
          transform: rotate(10deg);
          position: absolute;
          top: -10px;
          right: -20px;
          width: auto;
          height: 50px;
          display: flex;
          align-items: center;
          justify-content: flex-start;
          border-radius: 7px;
          border: solid 3px #2788db;
          background-color: #fff;
          margin: 0;
          padding: 0 10px;
          text-align: left;
          line-height: 1; }
          @media only screen and (max-width: 767px) {
            .search-table-sp .item .com-kuti .com-kuti-box.bad .catch-icon {
              top: -10px;
              right: -5px;
              padding: 0 8px;
              height: 36px;
              border: solid 2px #2788db; } }
          .search-table-sp .item .com-kuti .com-kuti-box.bad .catch-icon figure {
            margin: 0;
            padding: 0;
            text-align: left; }
            .search-table-sp .item .com-kuti .com-kuti-box.bad .catch-icon figure img {
              width: 100%;
              height: auto; }
              @media only screen and (max-width: 767px) {
                .search-table-sp .item .com-kuti .com-kuti-box.bad .catch-icon figure img {
                  width: 70%; } }
          .search-table-sp .item .com-kuti .com-kuti-box.bad .catch-icon p {
            margin: 0;
            padding: 0 0 0 10px;
            font-size: 32px;
            font-weight: bold;
            color: #000; }
            @media only screen and (max-width: 767px) {
              .search-table-sp .item .com-kuti .com-kuti-box.bad .catch-icon p {
                font-size: 22px;
                padding: 0 0 0 1px; } }
        .search-table-sp .item .com-kuti .com-kuti-box.bad .title {
          margin: 0 0 5px;
          padding: 3px 3px 3px 0.5em;
          font-size: 14px;
          font-weight: bold;
          background-color: rgba(0, 153, 255, 0.3); }
          @media only screen and (max-width: 767px) {
            .search-table-sp .item .com-kuti .com-kuti-box.bad .title {
              font-size: 12px; } }
      @media only screen and (max-width: 767px) {
        .search-table-sp .item .com-kuti .com-kuti-box {
          padding: 20px 15px 15px; } }
      .search-table-sp .item .com-kuti .com-kuti-box ul {
        margin-bottom: 0;
        padding-bottom: 10px; }
        .search-table-sp .item .com-kuti .com-kuti-box ul li.com-kuti-each {
          background-color: inherit;
          border: none;
          text-align: left;
          margin: 0 0 25px;
          padding: 0; }
          @media only screen and (max-width: 767px) {
            .search-table-sp .item .com-kuti .com-kuti-box ul li.com-kuti-each {
              font-size: 12px;
              margin-bottom: 0;
              padding-bottom: 0; } }
          .search-table-sp .item .com-kuti .com-kuti-box ul li.com-kuti-each span.idt {
            display: block;
            margin: 0 0 7px;
            padding-top: 0;
            font-size: 12px;
            font-weight: bold; }
            @media only screen and (max-width: 767px) {
              .search-table-sp .item .com-kuti .com-kuti-box ul li.com-kuti-each span.idt {
                margin: 5px 0 10px;
                padding-top: 0;
                font-size: 11px; } }
          .search-table-sp .item .com-kuti .com-kuti-box ul li.com-kuti-each .con {
            width: 100%;
            margin: 0 auto;
            padding: 0 15px;
            font-size: 16px; }
            @media only screen and (max-width: 767px) {
              .search-table-sp .item .com-kuti .com-kuti-box ul li.com-kuti-each .con {
                margin: 5px 0 10px;
                padding-top: 0;
                font-size: 11px; } }
  .search-table-sp .item .comp-cv {
    padding: 8px 0 16px; }
  .search-table-sp .item .comp-cv5 {
    padding: 8px 0 16px; }
  .search-table-sp .item .comp-cv5 a {
    position: relative;
    display: block;
    width: 96%;
    margin: 0 auto 5px;
    padding: 0.75em 2em 0.75em 1em;
    color: #fff;
    display: block;
    font-size: 1.1em;
    font-weight: bold;
    line-height: 1.3;
    text-align: center;
    text-decoration: none;
    text-shadow: 0 0 5px rgba(255, 255, 255, 0.8), 1px 1px 2px black;
    vertical-align: middle;
    outline: 1px solid rgba(255, 255, 255, 0.75);
    outline-offset: -5px;
    border-radius: 5px;
    cursor: pointer;
    box-sizing: border-box;
    overflow: hidden;
    z-index: 2;
    transition: color 0.3s, background-color 0.3s, box-shadow 0.3s, transform 0.3s;
    transition: .25s linear; }
  .search-table-sp .item .comp-cv5 a:before {
    content: "\f138";
    font-family: "fontawesome";
    font-weight: normal;
    font-size: 1.5em;
    margin-top: -.625em;
    position: absolute;
    right: 20px;
    top: 50%; }
  .search-table-sp .item .comp-cv5.arrow5 a:before {
    -webkit-animation-name: arrow5;
    -webkit-animation-duration: 1.2s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease; }
@-webkit-keyframes arrow5 {
  0% {
    -webkit-transform: translate(-7px, 0); }
  100% {
    -webkit-transform: translate(0, 0); } }
  .search-table-sp .item .comp-cv5 a:after {
    display: block;
    position: absolute;
    z-index: -1;
    left: -30%;
    top: -50%;
    content: "";
    width: 100px;
    height: 200px;
    -webkit-transform: rotate(30deg);
    transform: rotate(30deg);
    /*background:-webkit-gradient(linear, left bottom, right bottom, color-stop(0%,rgba(255,255,255,0)), color-stop(50%,rgba(255,255,255,1)),color-stop(100%,rgba(255,255,255,0)));
    background:linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%,rgba(255,255,255,0) 100%);
    -webkit-animation:lightning5 2.5s infinite linear;
    animation:lightning5 2.5s infinite linear;*/ }
  .search-table-sp .item .comp-cv5 a {
    background: #ff9900;
    box-shadow: 0 6px 0 #c86300; }
  .search-table-sp .item .comp-cv5 a:hover {
    background-color: #ff9900;
    box-shadow: 0 6px 0 #c86300;
    transform: translateY(2px);
    animation: flashing5 1s;
    /* マウスオン発光 */ }
  .search-table-sp .item .comp-cv5 a:active {
    color: #fff;
    background-color: #ff8800;
    box-shadow: 0 2px 0 #a75300;
    transform: translateY(6px);
    transition-duration: 0.1s; }
@keyframes flashing5 {
  0% {
    background-color: #ff9900; }
  10% {
    background-color: #ffe7cf; }
  100% {
    background-color: #ff9900; } }
@-webkit-keyframes flashing5 {
  0% {
    background-color: #ff9900; }
  10% {
    background-color: #ffe7cf; }
  100% {
    background-color: #ff9900; } }
  .search-table-sp .item .comp-realtime {
    /*animation: topNumFadeIn 3s ease 0s infinite alternate;*/
    position: relative;
    text-align: center;
    font-weight: bold;
    font-size: 12px;
    background-color: rgba(252, 171, 158, 0.3);
    border-radius: 5px;
    margin: 0 auto;
    padding: 5px 2px;
    line-height: 1.3;
    width: 100%; }
    .search-table-sp .item .comp-realtime:before {
      content: "";
      position: absolute;
      top: -17px;
      left: 50%;
      margin-left: -9px;
      border: 9px solid transparent;
      border-bottom: 9px solid rgba(252, 171, 158, 0.3); }
    .search-table-sp .item .comp-realtime span.num {
      font-size: 16px;
      color: red; }
@keyframes topNumFadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
/* ------------------------------------------------- *
*        ＠記事（single）
* ------------------------------------------------- */
#single-column {
  background: #FFF;
  padding: 32px;
  border: 1px solid #EEE;
  margin-bottom: 32px;
  /* 関連記事 */ }
  @media only screen and (max-width: 767px) {
    #single-column {
      padding: 12px;
      margin-bottom: 0;
      border: none; } }
  #single-column .single-column-in {
    text-align: justify;
    text-justify: inter-ideograph;
    /*　目次 */ }
    #single-column .single-column-in .title-bottom-area {
      display: flex;
      justify-content: space-between;
      margin-bottom: 16px; }
      #single-column .single-column-in .title-bottom-area .author {
        font-size: 14px; }
        @media only screen and (max-width: 767px) {
          #single-column .single-column-in .title-bottom-area .author {
            font-size: 12px; } }
        #single-column .single-column-in .title-bottom-area .author img {
          vertical-align: middle;
          display: initial; }
          @media only screen and (max-width: 767px) {
            #single-column .single-column-in .title-bottom-area .author img {
              width: 25px; } }
      #single-column .single-column-in .title-bottom-area .time {
        font-size: 14px; }
        @media only screen and (max-width: 767px) {
          #single-column .single-column-in .title-bottom-area .time {
            font-size: 12px; } }
    #single-column .single-column-in .main-visual {
      margin-bottom: 32px; }
      @media only screen and (max-width: 767px) {
        #single-column .single-column-in .main-visual {
          margin: 0 -12px 16px -12px; } }
      #single-column .single-column-in .main-visual img {
        width: 100%;
        height: auto; }
    #single-column .single-column-in ul, #single-column .single-column-in ol {
      margin-bottom: 32px; }
    #single-column .single-column-in dl {
      margin-bottom: 32px; }
    #single-column .single-column-in dt {
      font-size: 14px;
      line-height: 1.7; }
    #single-column .single-column-in dd {
      font-size: 14px;
      line-height: 1.7; }
    #single-column .single-column-in img {
      max-width: 100%;
      height: auto; }
    #single-column .single-column-in h1 {
      font-size: 30px;
      line-height: 1.4;
      margin-bottom: 24px; }
      @media only screen and (max-width: 767px) {
        #single-column .single-column-in h1 {
          font-size: 18px;
          line-height: 1.3;
          font-weight: bold;
          margin-bottom: 16px; } }
    #single-column .single-column-in h2 {
      font-size: 26px;
      background-color: #F3F3F3;
      border-radius: 10px;
      padding: 16px 20px;
      line-height: 1.3;
      margin: 32px 0 24px 0;
      color: #333; }
      @media only screen and (max-width: 767px) {
        #single-column .single-column-in h2 {
          font-size: 18px; } }
    #single-column .single-column-in h3 {
      font-weight: bold;
      margin: 0;
      border-top: 2px solid #000;
      border-bottom: 2px solid #000;
      font-size: 22px;
      line-height: 1.2;
      padding: 16px 0 16px 0;
      margin-bottom: 32px; }
      @media only screen and (max-width: 767px) {
        #single-column .single-column-in h3 {
          font-size: 16px; } }
    #single-column .single-column-in h4 {
      font-size: 16px;
      margin: 24px 0 10px 0;
      line-height: 1.2; }
    #single-column .single-column-in p {
      font-size: 15px;
      line-height: 1.95;
      margin-bottom: 32px;
      letter-spacing: 0.05em;
      text-align: justify;
      text-justify: inter-ideograph; }
      @media only screen and (max-width: 767px) {
        #single-column .single-column-in p {
          line-height: 1.7;
          font-size: 14px;
          margin-bottom: 32px; } }
    #single-column .single-column-in ul {
      border: 3px solid #ddd;
      border-radius: 5px;
      width: 100%;
      margin-bottom: 32px;
      padding: 24px; }
      @media only screen and (max-width: 767px) {
        #single-column .single-column-in ul {
          margin-bottom: 32px;
          width: 100%;
          padding: 15px; } }
      #single-column .single-column-in ul li {
        color: #222;
        line-height: 1.6em;
        padding: 8px 20px;
        background: url(../img/icon/icon-checked.png) no-repeat center left;
        display: block;
        background-size: 20px;
        padding-left: 30px;
        margin-bottom: 5px;
        border-bottom: 1px dotted #ddd; }
        @media only screen and (max-width: 767px) {
          #single-column .single-column-in ul li {
            padding-right: 0;
            font-size: 14px;
            padding: 0 20px 8px 32px; } }
        #single-column .single-column-in ul li:last-child {
          border-bottom: none;
          margin-bottom: 0;
          padding-bottom: 0; }
    #single-column .single-column-in dl dt {
      font-size: 15px;
      line-height: 1.5;
      font-weight: bold;
      margin-bottom: 5px; }
      @media only screen and (max-width: 767px) {
        #single-column .single-column-in dl dt {
          margin: 0 0 5px 0;
          font-size: 14px; } }
    #single-column .single-column-in dl dd {
      font-size: 15px;
      line-height: 1.5;
      background: #F9F9F9;
      padding: 15px;
      margin-bottom: 24px; }
      @media only screen and (max-width: 767px) {
        #single-column .single-column-in dl dd {
          margin: 0 0 20px 0;
          font-size: 14px;
          padding: 16px; } }
    #single-column .single-column-in table th {
      background: #EFEFEF; }
    #single-column .single-column-in hr {
      margin: 30px 0; }
    #single-column .single-column-in .waku {
      padding: 30px;
      border: 1px solid #DDD;
      font-size: 16px;
      line-height: 1.8;
      margin-bottom: 30px; }
      #single-column .single-column-in .waku p {
        margin: 0; }
      @media only screen and (max-width: 767px) {
        #single-column .single-column-in .waku {
          padding: 20px; } }
    #single-column .single-column-in #toc_container {
      border: 1px solid #DDD;
      padding: 16px; }
      @media only screen and (max-width: 767px) {
        #single-column .single-column-in #toc_container {
          width: 100%; } }
      #single-column .single-column-in #toc_container ul {
        width: 100%;
        margin: 0;
        border: none;
        padding: 4px 16px; }
        #single-column .single-column-in #toc_container ul li {
          padding: 0;
          margin: 0;
          border-bottom: none; }
      #single-column .single-column-in #toc_container a {
        font-size: 14px; }
        @media only screen and (max-width: 767px) {
          #single-column .single-column-in #toc_container a {
            font-size: 12px; } }
  #single-column .kanren-kizi {
    overflow: hidden; }
    #single-column .kanren-kizi img {
      width: 100%;
      height: auto; }
    #single-column .kanren-kizi h3 {
      border: none;
      font-size: 14px;
      line-height: 1.4; }
      @media only screen and (max-width: 767px) {
        #single-column .kanren-kizi h3 {
          font-size: 12px;
          font-weight: bold; } }
      #single-column .kanren-kizi h3:after {
        position: static;
        background: none; }
    #single-column .kanren-kizi .top {
      display: flex;
      justify-content: space-between;
      border-bottom: 1px solid #DDD; }
      #single-column .kanren-kizi .top .first {
        border-right: 1px solid #EEE;
        padding-right: 16px; }
      #single-column .kanren-kizi .top .second {
        padding-left: 16px; }
      #single-column .kanren-kizi .top .item {
        width: 50%;
        float: left; }
        #single-column .kanren-kizi .top .item img {
          margin-bottom: 8px; }
        #single-column .kanren-kizi .top .item h3 {
          margin-bottom: 16px; }
    #single-column .kanren-kizi .bottom {
      clear: both; }
      #single-column .kanren-kizi .bottom .item {
        overflow: hidden;
        padding: 8px 0;
        border-bottom: 1px solid #EEE; }
        #single-column .kanren-kizi .bottom .item .img {
          width: 20%;
          float: left; }
          @media only screen and (max-width: 767px) {
            #single-column .kanren-kizi .bottom .item .img {
              width: 35%; } }
        #single-column .kanren-kizi .bottom .item .txt {
          width: 78%;
          float: right; }
          @media only screen and (max-width: 767px) {
            #single-column .kanren-kizi .bottom .item .txt {
              width: 65%;
              padding-left: 8px; } }

/* ------------------------------------------------- *
*        ＠案件詳細記事（single）
* ------------------------------------------------- */
#single-comp {
  margin-bottom: 30px;
  /* comp-both */
  /* comp-points */
  /* .comp-points */
  /*　comp-kuti　*/
  /*comp-speck*/
  /* ボタン：公式サイトはこちら */
  /* ボタン内・矢印アイコン */
  /* 緑ボタン */ }
  @media only screen and (max-width: 767px) {
    #single-comp {
      margin-bottom: 0; } }
  #single-comp h1 {
    font-size: 26px; }
    @media only screen and (max-width: 767px) {
      #single-comp h1 {
        padding: 8px 0 8px 8px;
        font-size: 20px; } }
  #single-comp .single-comp-in {
    padding: 20px 25px;
    background: #FFF;
    border: 1px solid #439fd0; }
    @media only screen and (max-width: 767px) {
      #single-comp .single-comp-in {
        padding: 10px;
        border: none;
        box-sizing: border-box; } }
  #single-comp .comp-both {
    clear: both;
    margin: 0 auto 35px;
    overflow: hidden; }
    @media only screen and (max-width: 767px) {
      #single-comp .comp-both {
        margin: 0 auto 20px; } }
    #single-comp .comp-both .comp-both-img {
      width: 25%;
      float: left;
      border: solid 1px #c1def1; }
      #single-comp .comp-both .comp-both-img img {
        width: 100%;
        height: auto; }
      @media only screen and (max-width: 767px) {
        #single-comp .comp-both .comp-both-img {
          float: left;
          border: solid 1px #c1def1; } }
    #single-comp .comp-both .comp-both-hyouka {
      width: 73%;
      float: right;
      padding: 0;
      margin: 0; }
      #single-comp .comp-both .comp-both-hyouka .rank-rating {
        display: flex;
        justify-content: left;
        align-items: center;
        line-height: 1;
        letter-spacing: 0;
        margin: -5px auto 12px;
        padding: 0 10px 7px;
        border-bottom: dotted 1px rgba(0, 69, 114, 0.5);
        color: #000; }
        @media only screen and (max-width: 767px) {
          #single-comp .comp-both .comp-both-hyouka .rank-rating {
            margin: 0 auto 8px;
            padding: 0 0 8px; } }
        #single-comp .comp-both .comp-both-hyouka .rank-rating .rankrating_hyouka {
          margin-top: 8px;
          padding: 0.5em;
          font-size: 20px;
          font-weight: bold;
          border-radius: 5px;
          border: solid 1px #000; }
          @media only screen and (max-width: 767px) {
            #single-comp .comp-both .comp-both-hyouka .rank-rating .rankrating_hyouka {
              margin-top: 6px;
              padding: 0.4em;
              font-size: 11px; } }
        #single-comp .comp-both .comp-both-hyouka .rank-rating .general-rate-stars {
          font-size: 34px; }
          @media only screen and (max-width: 767px) {
            #single-comp .comp-both .comp-both-hyouka .rank-rating .general-rate-stars {
              margin: 0 -10px;
              font-size: 18px; } }
        #single-comp .comp-both .comp-both-hyouka .rank-rating .general-rate-rank {
          margin: 4px 0 0 0;
          font-size: 40px;
          font-weight: bold;
          font-family: 'Barlow Semi Condensed', sans-serif;
          color: #c00; }
          @media only screen and (max-width: 767px) {
            #single-comp .comp-both .comp-both-hyouka .rank-rating .general-rate-rank {
              margin: 6px 0 0 0;
              font-size: 18px; } }
      #single-comp .comp-both .comp-both-hyouka .item-price {
        font-size: 18px;
        margin-bottom: 18px;
        padding-left: 8px;
        line-height: 1.3; }
        @media only screen and (max-width: 767px) {
          #single-comp .comp-both .comp-both-hyouka .item-price {
            font-size: 14px;
            margin-bottom: 0;
            padding-left: 5px;
            line-height: 1.4; } }
        #single-comp .comp-both .comp-both-hyouka .item-price .shippingfee {
          font-size: 16px; }
          @media only screen and (max-width: 767px) {
            #single-comp .comp-both .comp-both-hyouka .item-price .shippingfee {
              display: block;
              font-size: 12px; } }
        #single-comp .comp-both .comp-both-hyouka .item-price .after {
          color: #e40a0a;
          font-size: 18px; }
          @media only screen and (max-width: 767px) {
            #single-comp .comp-both .comp-both-hyouka .item-price .after {
              font-size: 16px;
              padding-top: 8px;
              line-height: 22px; } }
        #single-comp .comp-both .comp-both-hyouka .item-price b {
          font-size: 32px; }
          @media only screen and (max-width: 767px) {
            #single-comp .comp-both .comp-both-hyouka .item-price b {
              font-size: 22px; } }
        #single-comp .comp-both .comp-both-hyouka .item-price .text {
          font-size: 14px;
          font-weight: normal; }
          @media only screen and (max-width: 767px) {
            #single-comp .comp-both .comp-both-hyouka .item-price .text {
              font-size: 11px; } }
        #single-comp .comp-both .comp-both-hyouka .item-price .baseprice {
          background-color: #ccc; }
          @media only screen and (max-width: 767px) {
            #single-comp .comp-both .comp-both-hyouka .item-price .baseprice {
              padding: 3px 0px 0px;
              width: 80px;
              text-align: center;
              margin-bottom: 5px; } }
        #single-comp .comp-both .comp-both-hyouka .item-price .saleprice {
          background-color: #FAD2D2; }
          @media only screen and (max-width: 767px) {
            #single-comp .comp-both .comp-both-hyouka .item-price .saleprice {
              padding: 3px 0px 0px;
              width: 80px;
              text-align: center;
              margin-bottom: 5px; } }
  #single-comp .comp-points {
    width: 100%;
    text-align: left;
    /* .comp-points-three */
    /* comp-points-description */ }
    #single-comp .comp-points .comp-points-three {
      margin: 0 auto 45px;
      padding: 0 10px;
      /* ul */ }
      @media only screen and (max-width: 767px) {
        #single-comp .comp-points .comp-points-three {
          margin: 0 auto 30px;
          padding: 0 5px; } }
      #single-comp .comp-points .comp-points-three ul {
        width: 100%;
        margin: 0 auto;
        padding: 1.2em 0.75em;
        background-color: rgba(214, 235, 255, 0.6);
        box-shadow: 0px 0px 0px 10px rgba(214, 235, 255, 0.6);
        border: dashed 2px white; }
        @media only screen and (max-width: 767px) {
          #single-comp .comp-points .comp-points-three ul {
            padding: 0.5em 0.5em;
            background-color: rgba(214, 235, 255, 0.6);
            box-shadow: 0px 0px 0px 5px rgba(214, 235, 255, 0.6);
            border: dashed 2px white; } }
        #single-comp .comp-points .comp-points-three ul li {
          position: relative;
          font-size: 22px;
          text-align: left;
          line-height: 1.4;
          margin-bottom: 12px;
          padding-left: 30px; }
          #single-comp .comp-points .comp-points-three ul li:last-child {
            margin-bottom: 0; }
          @media only screen and (max-width: 767px) {
            #single-comp .comp-points .comp-points-three ul li {
              margin-bottom: 8px;
              padding-left: 20px;
              font-size: 14px; } }
          #single-comp .comp-points .comp-points-three ul li:before {
            position: absolute;
            left: 0;
            top: 3px;
            content: '\f046 ';
            color: #0090d2;
            font-family: 'FontAwesome';
            font-size: 24px;
            line-height: 1; }
            @media only screen and (max-width: 767px) {
              #single-comp .comp-points .comp-points-three ul li:before {
                font-size: 16px; } }
    #single-comp .comp-points .comp-points-description {
      position: relative;
      margin: 0 auto 45px;
      padding: 0.5em 0.5em 0.25em;
      border: solid 1px rgba(255, 88, 88, 0.8);
      /* .comp-points-description-title */
      /* .comp-points-description-box */ }
      @media only screen and (max-width: 767px) {
        #single-comp .comp-points .comp-points-description {
          margin: 0 auto 20px;
          padding: 0.1em 0.1em; } }
      #single-comp .comp-points .comp-points-description .comp-points-description-title {
        width: auto;
        position: absolute;
        display: inline-block;
        top: -11px;
        left: 10px;
        padding: 0 10px;
        line-height: 1;
        font-size: 18px;
        font-weight: bold;
        background-color: #fff;
        color: #ff5858;
        font-weight: bold; }
        @media only screen and (max-width: 767px) {
          #single-comp .comp-points .comp-points-description .comp-points-description-title {
            top: -12px;
            left: 10px;
            font-size: 12px;
            padding: 4px 5px;
            color: #fff;
            background-color: #ff5858; } }
      #single-comp .comp-points .comp-points-description .comp-points-description-box {
        margin: 0;
        padding: 15px; }
        @media only screen and (max-width: 767px) {
          #single-comp .comp-points .comp-points-description .comp-points-description-box {
            padding: 20px 15px 8px; } }
        #single-comp .comp-points .comp-points-description .comp-points-description-box p {
          margin: 0;
          padding: 0;
          font-size: 16px;
          line-height: 1.6; }
          @media only screen and (max-width: 767px) {
            #single-comp .comp-points .comp-points-description .comp-points-description-box p {
              font-size: 12px; } }
  #single-comp .comp-kuti {
    margin: 0 auto 45px;
    padding: 0;
    /* .comp-kuti-box */ }
    @media only screen and (max-width: 767px) {
      #single-comp .comp-kuti {
        margin: 0 auto 20px;
        padding: 0; } }
    #single-comp .comp-kuti .comp-kuti-title {
      width: 100%;
      margin: 0 auto;
      padding: 10px 0 10px 10px;
      color: #fff;
      font-size: 18px;
      text-align: left;
      font-weight: bold;
      line-height: 1;
      border-top: solid 1px #004572;
      border-bottom: solid 1px #004572;
      background-color: #004572; }
      @media only screen and (max-width: 767px) {
        #single-comp .comp-kuti .comp-kuti-title {
          text-align: center;
          font-size: 14px;
          padding: 7px 1px; } }
    #single-comp .comp-kuti .comp-kuti-box {
      position: relative;
      width: 96%;
      margin: 40px auto 0;
      padding: 15px;
      border-radius: 0;
      font-size: 14px; }
      @media only screen and (max-width: 767px) {
        #single-comp .comp-kuti .comp-kuti-box {
          margin: 15px auto 0; } }
      #single-comp .comp-kuti .comp-kuti-box.good {
        padding: 15px;
        border: solid 1px #cccccc;
        background-color: rgba(255, 202, 111, 0); }
        @media only screen and (max-width: 767px) {
          #single-comp .comp-kuti .comp-kuti-box.good {
            padding: 10px 10px 0; } }
        #single-comp .comp-kuti .comp-kuti-box.good .catch-icon {
          transform: rotate(-10deg);
          position: absolute;
          top: -20px;
          left: -20px;
          width: auto;
          height: 50px;
          display: flex;
          align-items: center;
          justify-content: flex-start;
          border-radius: 7px;
          border: solid 3px #f60;
          background-color: #fff;
          margin: 0;
          padding: 0 10px;
          text-align: left;
          line-height: 1; }
          @media only screen and (max-width: 767px) {
            #single-comp .comp-kuti .comp-kuti-box.good .catch-icon {
              top: -10px;
              left: -5px;
              padding: 0 8px;
              height: 36px;
              border: solid 2px #f60; } }
          #single-comp .comp-kuti .comp-kuti-box.good .catch-icon figure {
            margin: 0;
            padding: 0;
            text-align: left; }
            #single-comp .comp-kuti .comp-kuti-box.good .catch-icon figure img {
              width: 100%;
              height: auto; }
              @media only screen and (max-width: 767px) {
                #single-comp .comp-kuti .comp-kuti-box.good .catch-icon figure img {
                  width: 70%; } }
          #single-comp .comp-kuti .comp-kuti-box.good .catch-icon p {
            margin: 0;
            padding: 0 0 0 10px;
            font-size: 32px;
            font-weight: bold;
            color: #000; }
            @media only screen and (max-width: 767px) {
              #single-comp .comp-kuti .comp-kuti-box.good .catch-icon p {
                font-size: 22px;
                padding: 0 0 0 1px; } }
        #single-comp .comp-kuti .comp-kuti-box.good .title {
          display: flex;
          align-items: center;
          margin: 0 0 5px;
          padding: 3px 3px 3px 0.5em;
          font-size: 14px;
          font-weight: bold;
          background-color: rgba(235, 233, 229, 0.6); }
          @media only screen and (max-width: 767px) {
            #single-comp .comp-kuti .comp-kuti-box.good .title {
              font-size: 12px; } }
          #single-comp .comp-kuti .comp-kuti-box.good .title img {
            width: 60%;
            margin-right: 10px; }
            @media only screen and (max-width: 767px) {
              #single-comp .comp-kuti .comp-kuti-box.good .title img {
                width: 50%;
                margin: auto; } }
      #single-comp .comp-kuti .comp-kuti-box.bad {
        border: solid 1px #cccccc;
        background-color: rgba(0, 0, 255, 0); }
        @media only screen and (max-width: 767px) {
          #single-comp .comp-kuti .comp-kuti-box.bad {
            padding: 10px 10px 0; } }
        #single-comp .comp-kuti .comp-kuti-box.bad .catch-icon {
          transform: rotate(10deg);
          position: absolute;
          top: -10px;
          right: -20px;
          width: auto;
          height: 50px;
          display: flex;
          align-items: center;
          justify-content: flex-start;
          border-radius: 7px;
          border: solid 3px #2788db;
          background-color: #fff;
          margin: 0;
          padding: 0 10px;
          text-align: left;
          line-height: 1; }
          @media only screen and (max-width: 767px) {
            #single-comp .comp-kuti .comp-kuti-box.bad .catch-icon {
              top: -10px;
              right: -5px;
              padding: 0 8px;
              height: 36px;
              border: solid 2px #2788db; } }
          #single-comp .comp-kuti .comp-kuti-box.bad .catch-icon figure {
            margin: 0;
            padding: 0;
            text-align: left; }
            #single-comp .comp-kuti .comp-kuti-box.bad .catch-icon figure img {
              width: 100%;
              height: auto; }
              @media only screen and (max-width: 767px) {
                #single-comp .comp-kuti .comp-kuti-box.bad .catch-icon figure img {
                  width: 70%; } }
          #single-comp .comp-kuti .comp-kuti-box.bad .catch-icon p {
            margin: 0;
            padding: 0 0 0 10px;
            font-size: 32px;
            font-weight: bold;
            color: #000; }
            @media only screen and (max-width: 767px) {
              #single-comp .comp-kuti .comp-kuti-box.bad .catch-icon p {
                font-size: 22px;
                padding: 0 0 0 1px; } }
        #single-comp .comp-kuti .comp-kuti-box.bad .title {
          display: flex;
          align-items: center;
          margin: 0 0 5px;
          padding: 3px 3px 3px 0.5em;
          font-size: 14px;
          font-weight: bold;
          background-color: rgba(235, 233, 229, 0.6); }
          @media only screen and (max-width: 767px) {
            #single-comp .comp-kuti .comp-kuti-box.bad .title {
              font-size: 12px; } }
          #single-comp .comp-kuti .comp-kuti-box.bad .title img {
            width: 60%;
            margin-right: 10px; }
            @media only screen and (max-width: 767px) {
              #single-comp .comp-kuti .comp-kuti-box.bad .title img {
                width: 50%;
                margin: auto; } }
      @media only screen and (max-width: 767px) {
        #single-comp .comp-kuti .comp-kuti-box {
          padding: 20px 15px 15px; } }
      #single-comp .comp-kuti .comp-kuti-box ul {
        margin-bottom: 0;
        padding-bottom: 10px; }
        #single-comp .comp-kuti .comp-kuti-box ul li.comp-kuti-each {
          background-color: inherit;
          border: none;
          text-align: left;
          margin: 0 0 25px;
          padding: 0; }
          @media only screen and (max-width: 767px) {
            #single-comp .comp-kuti .comp-kuti-box ul li.comp-kuti-each {
              font-size: 12px;
              margin-bottom: 0;
              padding-bottom: 0; } }
          #single-comp .comp-kuti .comp-kuti-box ul li.comp-kuti-each span.idt {
            display: block;
            margin: 0 0 7px;
            padding-top: 0;
            font-size: 12px;
            font-weight: bold; }
            @media only screen and (max-width: 767px) {
              #single-comp .comp-kuti .comp-kuti-box ul li.comp-kuti-each span.idt {
                margin: 5px 0 10px;
                padding-top: 0;
                font-size: 11px; } }
          #single-comp .comp-kuti .comp-kuti-box ul li.comp-kuti-each .con {
            width: 100%;
            margin: 0 auto;
            padding: 0 15px;
            font-size: 16px; }
            @media only screen and (max-width: 767px) {
              #single-comp .comp-kuti .comp-kuti-box ul li.comp-kuti-each .con {
                margin: 5px 0 10px;
                padding-top: 0;
                font-size: 11px; } }
  #single-comp .comp-speck {
    width: 100%;
    margin: 0 auto 45px;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      #single-comp .comp-speck {
        margin: 0 auto 30px; } }
    #single-comp .comp-speck .outline {
      padding: 5px 5px 5px 10px;
      font-size: 20px;
      font-weight: bold;
      color: #fff;
      border: solid 1px #c6e8ff;
      background-color: #004572; }
      @media only screen and (max-width: 767px) {
        #single-comp .comp-speck .outline {
          padding: 4px 0 4px 8px;
          font-size: 16px; } }
    #single-comp .comp-speck table {
      border: solid 1px #c6e8ff;
      border-bottom: none;
      margin-bottom: 30px;
      padding-bottom: 0; }
      @media only screen and (max-width: 767px) {
        #single-comp .comp-speck table {
          margin-bottom: 20px; } }
      #single-comp .comp-speck table th {
        background-color: rgba(198, 232, 255, 0.4);
        border-left: none;
        border-bottom: solid 1px #c6e8ff;
        width: 25%; }
        @media only screen and (max-width: 767px) {
          #single-comp .comp-speck table th {
            width: 100%;
            display: block;
            padding: 4px 0 4px 0.5em;
            font-size: 12px; } }
      #single-comp .comp-speck table td {
        border-bottom: solid 1px #c6e8ff;
        border-right: none;
        width: 75%; }
        @media only screen and (max-width: 767px) {
          #single-comp .comp-speck table td {
            width: 100%;
            display: block;
            padding: 4px 0 4px 0.5em;
            font-size: 12px; } }
        #single-comp .comp-speck table td .small {
          display: block;
          font-size: 12px;
          margin-bottom: 0; }
          @media only screen and (max-width: 767px) {
            #single-comp .comp-speck table td .small {
              font-size: 11px; } }
        #single-comp .comp-speck table td span {
          padding: 2px 7px;
          border-radius: 3px;
          color: #BBB;
          background: #f3f3f3;
          border: 1px solid #d6d6d6;
          font-size: 12px; }
          @media only screen and (max-width: 767px) {
            #single-comp .comp-speck table td span {
              font-size: 14px;
              padding: 2px 5px; } }
        #single-comp .comp-speck table td.bottle-form {
          padding: 7px 0 7px 0.5em; }
          #single-comp .comp-speck table td.bottle-form span {
            padding: 2px 7px;
            border-radius: 3px;
            color: #BBB;
            background: #f3f3f3;
            border: 1px solid #d6d6d6;
            font-size: 12px; }
            @media only screen and (max-width: 767px) {
              #single-comp .comp-speck table td.bottle-form span {
                font-size: 11px;
                padding: 2px 3px; } }
            #single-comp .comp-speck table td.bottle-form span.on {
              background: #439fd0 !important;
              color: #FFF;
              font-weight: bold;
              border-color: #439fd0 !important; }
  #single-comp .comp-cv-btn {
    text-align: center;
    margin: 0 auto 12px; }
    #single-comp .comp-cv-btn img {
      width: 100%;
      height: auto; }
      @media only screen and (max-width: 767px) {
        #single-comp .comp-cv-btn img {
          width: 100%; } }
  #single-comp .comp-cv-btn2 {
    width: 54%;
    margin: auto;
    margin-bottom: 55px; }
    @media only screen and (max-width: 767px) {
      #single-comp .comp-cv-btn2 {
        width: 100%; } }
  #single-comp .comp-cv-btn2 a {
    position: relative;
    display: block;
    width: 100%;
    margin: 0 auto 20px;
    padding: 0.51em 2em 0.51em 1em;
    color: #fff;
    display: block;
    font-size: 1.8em;
    font-weight: bold;
    line-height: 1.3;
    text-align: center;
    text-decoration: none;
    text-shadow: 0 0 5px rgba(255, 255, 255, 0.8), 1px 1px 2px black;
    vertical-align: middle;
    outline: 1px solid rgba(255, 255, 255, 0.75);
    outline-offset: -5px;
    border-radius: 5px;
    cursor: pointer;
    box-sizing: border-box;
    overflow: hidden;
    z-index: 2;
    transition: color 0.3s, background-color 0.3s, box-shadow 0.3s, transform 0.3s;
    transition: .25s linear; }
    @media only screen and (max-width: 767px) {
      #single-comp .comp-cv-btn2 a {
        width: 96%;
        padding: 0.75em 2.5em 0.75em 1em;
        font-size: 1.1em; } }
  #single-comp .comp-cv-btn2 a:before {
    content: "\f138";
    font-family: "fontawesome";
    font-weight: normal;
    font-size: 1.5em;
    margin-top: -.625em;
    position: absolute;
    right: 20px;
    top: 50%; }
  #single-comp .comp-cv-btn2 a:after {
    display: block;
    position: absolute;
    z-index: -1;
    left: -30%;
    top: -50%;
    content: "";
    width: 100px;
    height: 200px;
    -webkit-transform: rotate(30deg);
    transform: rotate(30deg);
    background: -webkit-gradient(linear, left bottom, right bottom, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(50%, white), color-stop(100%, rgba(255, 255, 255, 0)));
    background: linear-gradient(left, rgba(255, 255, 255, 0) 0%, white 50%, rgba(255, 255, 255, 0) 100%);
    -webkit-animation: lightning2 2.5s infinite linear;
    animation: lightning2 2.5s infinite linear; }
@keyframes lightning2 {
  0% {
    left: -20%; }
  20% {
    left: 120%; }
  100% {
    left: 120%; } }
@-webkit-keyframes lightning2 {
  0% {
    left: -20%; }
  20% {
    left: 120%; }
  100% {
    left: 120%; } }
  #single-comp .comp-cv-btn2 a {
    background: #ff0000;
    box-shadow: 0 6px 0 #aa0000; }
  #single-comp .comp-cv-btn2 a:hover {
    background-color: #ff0000;
    box-shadow: 0 6px 0 #aa0000;
    transform: translateY(2px);
    animation: flashing2 1s;
    /* マウスオン発光 */ }
  #single-comp .comp-cv-btn2 a:active {
    color: #fff;
    background-color: #c50000;
    box-shadow: 0 2px 0 #440000;
    transform: translateY(6px);
    transition-duration: 0.1s; }
@keyframes flashing2 {
  0% {
    background-color: #ff0000; }
  10% {
    background-color: #ffc8c8; }
  100% {
    background-color: #ff0000; } }
@-webkit-keyframes flashing2 {
  0% {
    background-color: #ff0000; }
  10% {
    background-color: #ffc8c8; }
  100% {
    background-color: #ff0000; } }
  #single-comp .comp-realtime-number {
    /*animation: topNumFadeIn 3s ease 0s infinite alternate;*/
    position: relative;
    text-align: center;
    font-weight: bold;
    font-size: 18px;
    background-color: rgba(252, 171, 158, 0.2);
    border-radius: 5px;
    margin: 0 auto 45px;
    padding: 8px 5px;
    line-height: 1.3;
    width: 100%; }
    #single-comp .comp-realtime-number:before {
      content: "";
      position: absolute;
      top: -30px;
      left: 50%;
      margin-left: -15px;
      border: 15px solid transparent;
      border-bottom: 15px solid rgba(252, 171, 158, 0.2); }
    @media only screen and (max-width: 767px) {
      #single-comp .comp-realtime-number {
        font-size: 12px;
        margin: 0 auto 30px;
        padding: 5px 2px; }
        #single-comp .comp-realtime-number:before {
          content: "";
          position: absolute;
          top: -17px;
          left: 50%;
          margin-left: -9px;
          border: 9px solid transparent;
          border-bottom: 9px solid rgba(252, 171, 158, 0.2); } }
    #single-comp .comp-realtime-number span.num {
      font-size: 22px;
      color: red; }
      @media only screen and (max-width: 767px) {
        #single-comp .comp-realtime-number span.num {
          font-size: 16px; } }
@keyframes topNumFadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
/* ------------------------------------------------- *
*        ＠口コミ記事（single）
* ------------------------------------------------- */
#single-kuti {
  padding: 30px;
  background: #FFF;
  border: 1px solid #DDD;
  margin-bottom: 30px; }
  @media only screen and (max-width: 767px) {
    #single-kuti {
      padding: 15px;
      margin: 0; } }
  #single-kuti .kuti-coment {
    overflow: hidden; }
    #single-kuti .kuti-coment .title {
      font-weight: bold;
      margin-bottom: 5px; }
    #single-kuti .kuti-coment .img {
      width: 30%;
      float: left; }
      #single-kuti .kuti-coment .img img {
        width: 100%;
        height: auto; }
    #single-kuti .kuti-coment .txt {
      width: 70%;
      float: left;
      padding-left: 15px;
      padding: 30px;
      background: #fff3ea;
      padding: 20px;
      position: relative; }
      #single-kuti .kuti-coment .txt span {
        font-weight: bold; }
      #single-kuti .kuti-coment .txt:after {
        border-right: 12px solid #fff3ea;
        border-top: 12px solid transparent;
        border-bottom: 12px solid transparent;
        content: '';
        margin-top: -10px;
        position: absolute;
        left: -12px;
        top: 50%; }

/* ------------------------------------------------- *
*        ＠info記事（single）
* ------------------------------------------------- */
/* 案件情報 */
.info-under-comp {
  overflow: hidden;
  margin-bottom: 24px;
  /* SP */ }
  .info-under-comp .comp-img {
    width: 30%;
    float: left;
    margin-bottom: 10px; }
    .info-under-comp .comp-img img {
      width: 100%;
      height: auto; }
  .info-under-comp .star {
    margin-bottom: 5px; }
  .info-under-comp img {
    margin-top: -5px;
    margin-right: 10px; }
    @media only screen and (max-width: 767px) {
      .info-under-comp img {
        width: 100px; } }
  .info-under-comp .comp-speck {
    width: 70%;
    float: left;
    padding-left: 15px;
    margin-bottom: 10px; }
    @media only screen and (max-width: 767px) {
      .info-under-comp .comp-speck {
        padding-left: 5px; } }
    .info-under-comp .comp-speck th {
      background: #EFEFEF; }
      @media only screen and (max-width: 767px) {
        .info-under-comp .comp-speck th {
          padding: 2px 5px;
          font-size: 12px;
          font-weight: normal;
          width: 40%; } }
    @media only screen and (max-width: 767px) {
      .info-under-comp .comp-speck td {
        padding: 2px 5px;
        font-size: 12px; } }
  .info-under-comp .comp-description {
    clear: both;
    line-height: 1.6em;
    margin: 15px 0;
    background: #fff7f1;
    border: 2px solid #ffc79d;
    padding: 10px; }
    .info-under-comp .comp-description .catch {
      font-weight: bold;
      margin-bottom: 10px;
      font-size: 14px; }
  .info-under-comp .cv-btn {
    text-align: center; }
    .info-under-comp .cv-btn img {
      width: 70%;
      height: auto; }
      @media only screen and (max-width: 767px) {
        .info-under-comp .cv-btn img {
          width: 100%; } }
  .info-under-comp .first-catch {
    font-size: 12px;
    font-weight: bold; }

/* ------------------------------------------------- *
*        ＠記事下のCTA
* ------------------------------------------------- */
/* 商品表示 */
.column-cta-product-box .item {
  border: 1px solid #EEE;
  padding: 16px;
  margin-bottom: 24px;
  overflow: hidden; }
  @media only screen and (max-width: 767px) {
    .column-cta-product-box .item {
      padding: 8px; } }
  .column-cta-product-box .item a {
    display: block; }
    .column-cta-product-box .item a:hover {
      text-decoration: none; }
  .column-cta-product-box .item .title {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 16px;
    color: #337ab7;
    text-decoration: underline; }
    @media only screen and (max-width: 767px) {
      .column-cta-product-box .item .title {
        font-size: 14px;
        margin-bottom: 8px; } }
  .column-cta-product-box .item .img img {
    width: 100%;
    height: auto;
    margin-bottom: 16px; }
    @media only screen and (max-width: 767px) {
      .column-cta-product-box .item .img img {
        margin-bottom: 8px; } }
  .column-cta-product-box .item .spec {
    margin-bottom: 16px; }
    @media only screen and (max-width: 767px) {
      .column-cta-product-box .item .spec {
        margin-bottom: 8px; } }
    .column-cta-product-box .item .spec th {
      background: #EEE; }
      @media only screen and (max-width: 767px) {
        .column-cta-product-box .item .spec th {
          font-size: 11px;
          padding: 4px; } }
    @media only screen and (max-width: 767px) {
      .column-cta-product-box .item .spec td {
        font-size: 11px;
        padding: 4px; } }
  .column-cta-product-box .item .txt {
    line-height: 1.6em;
    margin-bottom: 16px;
    color: #222; }
    @media only screen and (max-width: 767px) {
      .column-cta-product-box .item .txt {
        font-size: 12px;
        margin-bottom: 8px; } }

.column-cta-product-box-col1 .item .img {
  width: 30%;
  float: left; }
.column-cta-product-box-col1 .item .spec {
  width: 70%;
  float: left;
  padding-left: 16px; }
  @media only screen and (max-width: 767px) {
    .column-cta-product-box-col1 .item .spec {
      padding-left: 8px; } }
.column-cta-product-box-col1 .item .txt {
  clear: both; }

.column-cta-product-box-col2 {
  display: flex;
  justify-content: space-between; }
  @media only screen and (max-width: 767px) {
    .column-cta-product-box-col2 {
      display: block; } }
  .column-cta-product-box-col2 .item {
    width: 49%; }
    @media only screen and (max-width: 767px) {
      .column-cta-product-box-col2 .item {
        width: 100%;
        background: url(../img/btn/btn-top-sp01.gif) no-repeat right;
        background-size: 8%;
        background-position: 100% 55%;
        margin-bottom: 8px; } }
    @media only screen and (max-width: 767px) {
      .column-cta-product-box-col2 .item .img {
        width: 30%;
        float: left;
        margin-bottom: 0; } }
    @media only screen and (max-width: 767px) {
      .column-cta-product-box-col2 .item .txt {
        width: 70%;
        float: left;
        padding: 0 24px 0 8px;
        margin-bottom: 0; } }

.column-cta-product-box-col3 {
  display: flex;
  justify-content: space-between; }
  @media only screen and (max-width: 767px) {
    .column-cta-product-box-col3 {
      display: block; } }
  .column-cta-product-box-col3 .item {
    width: 32%;
    padding: 8px; }
    @media only screen and (max-width: 767px) {
      .column-cta-product-box-col3 .item {
        width: 100%;
        background: url(../img/btn/btn-top-sp01.gif) no-repeat right;
        background-size: 8%;
        background-position: 100% 55%;
        margin-bottom: 8px; } }
    @media only screen and (max-width: 767px) {
      .column-cta-product-box-col3 .item .img {
        width: 30%;
        float: left;
        margin-bottom: 0; } }
    @media only screen and (max-width: 767px) {
      .column-cta-product-box-col3 .item .txt {
        width: 70%;
        float: left;
        padding: 0 24px 0 8px;
        margin-bottom: 0; } }

/*　特定ページ */
.column-cta-page-box {
  padding: 32px;
  margin-bottom: 24px;
  border: 3px solid #EEE;
  background: url(../img/bg/bg-cta.png);
  background-size: cover; }
  @media only screen and (max-width: 767px) {
    .column-cta-page-box {
      padding: 16px; } }
  .column-cta-page-box .title {
    text-align: center;
    font-weight: bold;
    margin-bottom: 32px;
    font-size: 16px; }
    @media only screen and (max-width: 767px) {
      .column-cta-page-box .title {
        margin-bottom: 16px;
        font-size: 14px; } }
  .column-cta-page-box .txt {
    margin-bottom: 32px;
    font-size: 14px;
    line-height: 1.7; }
    @media only screen and (max-width: 767px) {
      .column-cta-page-box .txt {
        margin-bottom: 16px;
        font-size: 12px; } }
  .column-cta-page-box .cv-btn a {
    padding: 24px;
    display: block;
    background: #FF8401;
    border-radius: 70px;
    color: #FFF;
    text-align: center;
    font-size: 16px;
    text-decoration: underline;
    border-bottom: 6px solid #D0720F;
    font-weight: bold;
    text-shadow: 0px -1px 1px #666; }
    @media only screen and (max-width: 767px) {
      .column-cta-page-box .cv-btn a {
        padding: 16px;
        font-size: 14px; } }

/* 検索フォーム */
/* 特定ページ誘導 */
/* ------------------------------------------------- *
*        ＠口コミ検索結果(archive))
* ------------------------------------------------- */
#archive-kuti-search-kekka {
  background: #FFF;
  padding: 32px;
  margin-bottom: 24px;
  -webkit-box-shadow: 0 0 1em rgba(0, 0, 0, 0.15);
  box-shadow: 0 0 1em rgba(0, 0, 0, 0.15); }
  #archive-kuti-search-kekka .description {
    text-align: center;
    background: #1f236a;
    padding: 10px;
    color: #FFF; }
    #archive-kuti-search-kekka .description p {
      font-size: 20px; }
    #archive-kuti-search-kekka .description span {
      font-weight: bold; }
  #archive-kuti-search-kekka .triangle {
    width: 0px;
    height: 0px;
    border-top: solid 20px #1f236a;
    border-right: solid 35px transparent;
    border-bottom: solid 30px transparent;
    border-left: solid 35px transparent;
    margin: 0 auto; }
  #archive-kuti-search-kekka .select-koumoku {
    margin-bottom: 30px; }
    #archive-kuti-search-kekka .select-koumoku th {
      width: 30%;
      background: #EFEFEF;
      text-align: center; }
    #archive-kuti-search-kekka .select-koumoku td li {
      width: 25%;
      display: inline; }

/* ------------------------------------------------- *
*        ＠footer
* ------------------------------------------------- */
#footer {
  clear: both; }
  #footer .footer-content {
    padding: 15px;
    background: #ededed;
    overflow: hidden;
    padding: 30px 0; }
    #footer .footer-content .f-logo {
      width: 200px;
      margin: 0 auto 32px; }
      #footer .footer-content .f-logo img {
        margin: 0 auto; }
    #footer .footer-content .f-link {
      text-align: center; }
      #footer .footer-content .f-link li {
        display: inline-block; }
        #footer .footer-content .f-link li a {
          padding: 0 10px;
          display: block;
          color: #333;
          text-decoration: underline; }
  #footer .f-link-sp {
    background: #bad7ea;
    text-align: center;
    padding-top: 15px; }
    #footer .f-link-sp .f-logo {
      width: 120px;
      margin: 0 auto 16px; }
    #footer .f-link-sp a {
      color: #333;
      text-decoration: underline;
      font-size: 12px;
      padding: 5px 0;
      display: block; }
  #footer .copy {
    text-align: center;
    color: #6a6763;
    padding: 15px;
    background: #bad7ea; }
    #footer .copy .page-top {
      margin-bottom: 10px; }
      #footer .copy .page-top a {
        color: #FFF;
        display: block;
        padding: 10px;
        background: #464545; }

/* ------------------------------------------------- *
*        ＠固定ページ
* ------------------------------------------------- */
/* ------------------------------------------------- *
*        ＠お気に入りぺージ
* ------------------------------------------------- */
#page-favorite .favorite-description {
  background: #FFF; }
  #page-favorite .favorite-description .inner {
    padding: 15px 30px;
    margin-bottom: 30px;
    border: 1px solid #DDD; }
#page-favorite .favorite-table img {
  width: 100%; }
#page-favorite .favorite-table .more {
  text-align: center;
  font-size: 17px;
  margin-bottom: 5px;
  background: #53b4c5;
  border-radius: 4px;
  width: 100%;
  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%); }
  #page-favorite .favorite-table .more a {
    color: #333;
    display: block;
    padding: 10px 0 8px 0;
    font-weight: bold;
    font-size: 16px; }
#page-favorite .favorite-table .cv {
  text-indent: -9999px; }
  #page-favorite .favorite-table .cv a {
    background: url(../img/btn/btn-cv-spuare-long.gif) no-repeat;
    padding: 30px;
    display: block;
    background-size: contain;
    width: 100%; }

/* ------------------------------------------------- *
*        ＠404
* ------------------------------------------------- */
#page-404 {
  background: #FFF;
  padding: 120px 60px;
  border: 1px solid #DDD;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    #page-404 {
      padding: 30px;
      height: 100vh; } }
  #page-404 .title {
    font-size: 30px;
    font-weight: bold; }
    @media only screen and (max-width: 767px) {
      #page-404 .title {
        font-size: 25px;
        margin-bottom: 10px; } }
  #page-404 .sub-txt a {
    text-decoration: underline; }

/* ------------------------------------------------- *
*        ＠reページ
* ------------------------------------------------- */
#main-w-re {
  height: 100vh;
  background: #FFF; }
  #main-w-re #main-w-re-in {
    max-width: 600px;
    margin: 0 auto;
    padding-top: 30vh;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      #main-w-re #main-w-re-in {
        padding-top: 20vh; } }
  #main-w-re #main-w-re-logo {
    margin-bottom: 15px; }
    #main-w-re #main-w-re-logo img {
      max-width: 200px;
      margin: 0 auto; }
  #main-w-re p {
    margin-bottom: 15px; }
  #main-w-re .loading {
    margin: 0 auto 15px; }
  #main-w-re h2 {
    font-weight: bold;
    margin-bottom: 15px;
    font-size: 22px; }
    @media only screen and (max-width: 767px) {
      #main-w-re h2 {
        font-size: 16px; } }
  #main-w-re #main-w-re-link a {
    text-decoration: underline; }

/* ------------------------------------------------- *
*        ＠その他
* ------------------------------------------------- */
/* トップページ：検索の見出し */
.oval {
  margin: 0;
  font-size: 22px;
  color: #fff;
  padding: 12px 0 12px 58px;
  line-height: 1;
  background-image: url(../img/icon/btn-icon.png);
  background-repeat: no-repeat;
  background-position: left 10px center;
  background-size: auto; }
  @media only screen and (max-width: 767px) {
    .oval {
      margin: 0 10px;
      padding: 12px 0 8px 38px;
      font-size: 14px;
      background-position: left 8px center;
      background-size: 24px; } }
  .oval.search {
    background-color: #00a0e9;
    border: solid 3px #00a0e9; }
    @media only screen and (max-width: 767px) {
      .oval.search {
        margin-bottom: 0;
        padding: 8px 0 8px 38px;
        border: solid 2px #00a0e9; } }
  .oval.list {
    margin-bottom: 8px;
    background-color: #00a0e9;
    border: solid 3px #00a0e9; }
    @media only screen and (max-width: 767px) {
      .oval.list {
        padding: 8px 0 8px 38px;
        border: solid 2px #00a0e9; } }

/*
.realtime-number {
  position: relative;
  text-align: center;
  font-weight: bold;
  font-size: 14px;
  border: 1px solid #aaa;
  border-radius: 5px;
  margin: 0 auto;
  padding: 5px;
  box-sizing: border-box;
  line-height: 1.3;
  width: 90%;
  span.num{
    font-size: 16px;
    color:red;}
}
*/
/* ------------------------------------------------- *
*        ＠ハンバーガーメニュー
* ------------------------------------------------- */
#nav-drawer {
  position: relative; }

/*チェックボックス等は非表示に*/
.nav-unshown {
  display: none; }

/*アイコンのスペース*/
#nav-open {
  float: right;
  margin: 10px 15px 0 0;
  display: inline-block;
  width: 30px;
  height: 28px;
  vertical-align: middle; }

/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span,
#nav-open span:before,
#nav-open span:after {
  position: absolute;
  height: 4px;
  /*線の太さ*/
  width: 30px;
  /*長さ*/
  border-radius: 3px;
  background: #004572;
  display: block;
  content: '';
  cursor: pointer; }

#nav-open span:before {
  bottom: -10px; }

#nav-open span:after {
  bottom: -20px; }

/*口コミ評価*/
/*閉じる用の薄黒カバー*/
#nav-close {
  display: none;
  /*はじめは隠しておく*/
  position: fixed;
  z-index: 99;
  top: 0;
  /*全体に広がるように*/
  right: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  opacity: 0;
  transition: .3s ease-in-out; }

/*中身*/
#nav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 9999;
  /*最前面に*/
  width: 70%;
  /*右側に隙間を作る（閉じるカバーを表示）*/
  max-width: 300px;
  /*最大幅（調整してください）*/
  height: 100%;
  background: #004572;
  /*背景色*/
  transition: .3s ease-in-out;
  /*滑らかに表示*/
  -webkit-transform: translateX(105%);
  transform: translateX(105%);
  /*右に隠しておく*/ }

/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
  display: block;
  /*カバーを表示*/
  opacity: .5; }

#nav-input:checked ~ #nav-content {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
  /*中身を表示（左へスライド）*/
  box-shadow: 6px 0 25px rgba(0, 0, 0, 0.15); }

@media screen and (min-width: 768px) {
  #nav-open {
    display: none; } }
/*タブ*/
.tab-area {
  display: flex;
  justify-content: space-around;
  cursor: pointer;
  padding-top: 15px; }
  .tab-area .tab {
    font-size: 15px;
    width: 180px;
    padding: 40px 0px 3px;
    line-height: 1.3;
    border-radius: 6px 6px 0 0;
    background-color: #004572;
    text-align: center;
    color: white; }
    @media only screen and (max-width: 767px) {
      .tab-area .tab {
        padding: 38px 0px 5px;
        line-height: 15px;
        font-size: 12px;
        width: 20%; } }
  .tab-area .mzi {
    background: url(../img/icon/icon-hage-m.png) no-repeat center 8px #004572;
    background-size: 28px; }
    @media only screen and (max-width: 767px) {
      .tab-area .mzi {
        background-size: 24px; } }
  .tab-area .ozi {
    background: url(../img/icon/icon-hage-o.png) no-repeat center 8px #004572;
    background-size: 28px; }
    @media only screen and (max-width: 767px) {
      .tab-area .ozi {
        background-size: 24px; } }
  .tab-area .uzi {
    background: url(../img/icon/icon-hage-u.png) no-repeat center 8px #004572;
    background-size: 28px; }
    @media only screen and (max-width: 767px) {
      .tab-area .uzi {
        background-size: 24px; } }
  .tab-area .mix {
    background: url(../img/icon/icon-hage-mixed.png) no-repeat center 8px #004572;
    background-size: 28px; }
    @media only screen and (max-width: 767px) {
      .tab-area .mix {
        background-size: 24px; } }
  .tab-area .young {
    background: url(../img/icon/icon-hage-young.png) no-repeat center 8px #004572;
    background-size: 28px; }
    @media only screen and (max-width: 767px) {
      .tab-area .young {
        background-size: 24px; } }
  .tab-area .tab.active {
    background: #85aff1;
    color: #222e3e;
    border: none;
    font-weight: bold;
    margin-top: -8px;
    font-size: 16px;
    line-height: 1.2; }
    @media only screen and (max-width: 767px) {
      .tab-area .tab.active {
        font-size: 13px;
        line-height: 14px; } }
  .tab-area .tab.mzi.active {
    background: url(../img/icon/icon-hage-m2.png) no-repeat center 11px #7FCAEA;
    background-size: 28px;
    padding-top: 43px; }
    @media only screen and (max-width: 767px) {
      .tab-area .tab.mzi.active {
        background-size: 24px; } }
  .tab-area .tab.ozi.active {
    background: url(../img/icon/icon-hage-o2.png) no-repeat center 11px #7FCAEA;
    background-size: 28px;
    padding-top: 43px; }
    @media only screen and (max-width: 767px) {
      .tab-area .tab.ozi.active {
        background-size: 24px; } }
  .tab-area .tab.uzi.active {
    background: url(../img/icon/icon-hage-u2.png) no-repeat center 11px #7FCAEA;
    background-size: 28px;
    padding-top: 43px; }
    @media only screen and (max-width: 767px) {
      .tab-area .tab.uzi.active {
        background-size: 24px; } }
  .tab-area .tab.mix.active {
    background: url(../img/icon/icon-hage-mixed2.png) no-repeat center 11px #7FCAEA;
    background-size: 28px;
    padding-top: 43px; }
    @media only screen and (max-width: 767px) {
      .tab-area .tab.mix.active {
        background-size: 24px; } }
  .tab-area .tab.young.active {
    background: url(../img/icon/icon-hage-young2.png) no-repeat center 11px #7FCAEA;
    background-size: 28px;
    padding-top: 43px; }
    @media only screen and (max-width: 767px) {
      .tab-area .tab.young.active {
        background-size: 24px; } }

.content-area {
  font-size: 30px;
  text-align: center; }
  .content-area .content {
    display: none; }
  .content-area .content.show {
    display: block; }

/* ------------------------------------------------- *
*        ＠記事LP（single）
* ------------------------------------------------- */
#single-lp {
  max-width: 760px;
  margin: 0 auto;
  background-color: #fff; }
  #single-lp .main-visual {
    margin-bottom: 2rem; }
    @media only screen and (max-width: 767px) {
      #single-lp .main-visual {
        margin-bottom: 1rem; } }
    #single-lp .main-visual img {
      width: 100%;
      height: auto; }
  #single-lp .single-lp-in {
    padding: 0 2.5rem; }
    @media only screen and (max-width: 767px) {
      #single-lp .single-lp-in {
        padding: 0; } }
  #single-lp section {
    background: #FFF;
    margin-bottom: 4rem;
    text-align: justify;
    text-justify: inter-ideograph; }
    @media only screen and (max-width: 767px) {
      #single-lp section {
        padding: 12px;
        margin-bottom: 0;
        border: none; } }
    #single-lp section h2.h2-lp {
      border-top: 2px solid #004572;
      border-bottom: 2px solid #004572;
      font-size: 24px;
      margin: 2rem 0 1.5rem;
      padding: 1rem;
      letter-spacing: 0.05em; }
      @media only screen and (max-width: 767px) {
        #single-lp section h2.h2-lp {
          margin-top: 2.5rem;
          padding: 0.5rem; } }
      #single-lp section h2.h2-lp:first-child {
        margin-top: 6rem; }
        @media only screen and (max-width: 767px) {
          #single-lp section h2.h2-lp:first-child {
            margin-top: 2.5rem;
            font-size: 18px; } }
    #single-lp section h2.h2-fukidashi {
      background: #2084c5;
      border: none;
      color: #fff;
      padding: 1rem;
      position: relative;
      text-align: center;
      font-size: 24px;
      letter-spacing: 0.05rem; }
      @media only screen and (max-width: 767px) {
        #single-lp section h2.h2-fukidashi {
          font-size: 20px; } }
      #single-lp section h2.h2-fukidashi::after {
        border: 14px solid transparent;
        border-top: 14px solid #2084c5;
        content: "";
        left: 50%;
        margin-left: -14px;
        position: absolute;
        top: calc(100% - 4px); }
    #single-lp section h3 {
      background: #d7e2f2;
      color: #004572;
      font-size: 20px;
      margin: 1.5rem 0 2rem;
      padding: 10px 20px; }
      @media only screen and (max-width: 767px) {
        #single-lp section h3 {
          font-size: 16px; } }
    #single-lp section h4 {
      border-left: 5px solid #004572;
      font-size: 17px;
      margin: 2rem 0 1rem;
      padding: .2rem .5rem; }
    #single-lp section p {
      margin-bottom: 2.8rem;
      font-size: 16px;
      line-height: 2;
      letter-spacing: 0.05em; }
      @media only screen and (max-width: 767px) {
        #single-lp section p {
          letter-spacing: 0em;
          margin-bottom: 2.5rem; } }
      #single-lp section p:last-child {
        margin-bottom: 0; }
      #single-lp section p a {
        text-decoration: underline; }
        #single-lp section p a:hover {
          text-decoration: none; }
    #single-lp section .main-txt {
      font-size: 18px; }
      @media only screen and (max-width: 767px) {
        #single-lp section .main-txt {
          font-size: 16px;
          letter-spacing: 0; } }
    #single-lp section .img-center {
      margin: 1.6rem auto 3rem;
      max-width: 80%; }
      @media only screen and (max-width: 767px) {
        #single-lp section .img-center {
          max-width: 90%; } }
    #single-lp section table {
      margin: 2rem 0; }
      #single-lp section table tr:first-child td {
        padding: 3px;
        vertical-align: middle; }
      #single-lp section table th {
        background: #ecf5fa;
        font-size: 14px;
        text-align: center;
        letter-spacing: 0.05rem; }
        @media only screen and (max-width: 767px) {
          #single-lp section table th {
            font-size: 11px; } }
      #single-lp section table td {
        font-size: 15px;
        text-align: center;
        vertical-align: top;
        letter-spacing: 0.05rem; }
        @media only screen and (max-width: 767px) {
          #single-lp section table td {
            font-size: 13px; } }
        #single-lp section table td.middle {
          vertical-align: middle; }
      #single-lp section table .ico_excellent {
        color: #ED5647;
        font-size: 22px; }
      #single-lp section table .ico_good {
        color: #F5A727;
        font-size: 22px; }
      #single-lp section table .ico_usually {
        color: #3aaf23;
        font-size: 22px; }
      #single-lp section table .ico-rank {
        margin: 0 auto;
        width: 28%; }
      #single-lp section table .ico-rating {
        margin: 0 auto;
        width: 40px; }
      #single-lp section table .img-thumbnail {
        margin: 0 auto;
        width: 80%; }
      #single-lp section table .cv-area .cv {
        text-align: center; }
        #single-lp section table .cv-area .cv a {
          background: #ff0000;
          border-radius: 4px;
          box-shadow: 1px 3px 0 #aa0000;
          color: #fff;
          display: inline-block;
          font-weight: 700;
          font-size: 15px;
          margin: 10px 0;
          padding: 5px 5px 5px 25px;
          position: relative; }
          @media only screen and (max-width: 767px) {
            #single-lp section table .cv-area .cv a {
              font-size: 13px;
              line-height: 1.3;
              padding: 5px 3px 5px 10px; } }
          #single-lp section table .cv-area .cv a::before {
            content: "\f138";
            font-family: "fontawesome";
            font-weight: normal;
            font-size: 1em;
            position: absolute;
            left: 8px;
            top: 25%; }
            @media only screen and (max-width: 767px) {
              #single-lp section table .cv-area .cv a::before {
                font-size: .8em;
                left: 3px;
                top: 38%; } }
          #single-lp section table .cv-area .cv a.font-small {
            font-size: 14px;
            letter-spacing: 0; }
            @media only screen and (max-width: 767px) {
              #single-lp section table .cv-area .cv a.font-small {
                font-size: 11px; } }
    #single-lp section .btn-cv {
      margin: 3rem 0 4rem;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        #single-lp section .btn-cv {
          margin: 2rem 0 1rem; } }
      #single-lp section .btn-cv a {
        background: #F6871C;
        border-radius: 40px;
        color: #fff;
        display: inline-block;
        font-size: 20px;
        font-weight: 700;
        overflow: hidden;
        padding: .5rem 4rem .5rem;
        position: relative;
        width: 65%; }
        @media only screen and (max-width: 767px) {
          #single-lp section .btn-cv a {
            font-size: 18px;
            padding: .5rem 2rem .5rem;
            width: 100%; } }
        #single-lp section .btn-cv a::before {
          animation: lightning2 2.5s infinite linear;
          background: -webkit-gradient(linear, left bottom, right bottom, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(50%, white), color-stop(100%, rgba(255, 255, 255, 0)));
          background: linear-gradient(left, rgba(255, 255, 255, 0) 0%, white 50%, rgba(255, 255, 255, 0) 100%);
          content: "";
          display: block;
          height: 200px;
          left: -30%;
          position: absolute;
          top: -50%;
          transform: rotate(30deg);
          width: 100px;
          -webkit-animation: lightning 2.5s infinite linear;
          -webkit-transform: rotate(30deg);
          z-index: 1; }
@keyframes lightning2 {
  0% {
    left: -20%; }
  20% {
    left: 120%; }
  100% {
    left: 120%; } }
@-webkit-keyframes lightning2 {
  0% {
    left: -20%; }
  20% {
    left: 120%; }
  100% {
    left: 120%; } }
        #single-lp section .btn-cv a::after {
          content: "\f138";
          font-family: "fontawesome";
          font-weight: normal;
          font-size: 1.4em;
          margin-top: -.625em;
          position: absolute;
          right: 25px;
          top: 54%; }
    #single-lp section .waku-blue {
      border: 1px solid #ccc;
      border-radius: 5px;
      margin: 2rem 0;
      padding: 1rem;
      background: #ecf5fa; }
      @media only screen and (max-width: 767px) {
        #single-lp section .waku-blue {
          padding: .5rem;
          border: 1px solid #004572; } }
      #single-lp section .waku-blue ul {
        padding-left: 1.5rem; }
      #single-lp section .waku-blue li {
        font-size: 17px;
        list-style: disc;
        margin-bottom: .7rem;
        letter-spacing: 0.07em; }
        @media only screen and (max-width: 767px) {
          #single-lp section .waku-blue li {
            font-size: 14px; } }
        #single-lp section .waku-blue li:last-child {
          margin-bottom: 0; }
    #single-lp section .voice {
      background: #fff;
      padding: 1.5rem; }
  #single-lp section.bg_color {
    background: #FFFFED;
    padding: 2rem;
    padding-top: 0;
    border: solid 1px #F6871C;
    border-radius: 7px;
    margin-bottom: 2rem; }
    @media only screen and (max-width: 767px) {
      #single-lp section.bg_color {
        margin-bottom: .7rem;
        padding: 0 1rem;
        padding-top: 0; } }
    #single-lp section.bg_color h3 {
      background-color: #FFFFED;
      color: #F6871C;
      font-size: 21px;
      letter-spacing: 0.05em;
      padding: 10px 0; }
      @media only screen and (max-width: 767px) {
        #single-lp section.bg_color h3 {
          font-size: 18px;
          margin: 1rem 0; } }
    #single-lp section.bg_color p {
      margin-bottom: 2rem; }
    #single-lp section.bg_color ul {
      margin-bottom: 2rem; }
      #single-lp section.bg_color ul li {
        margin-bottom: .4rem;
        letter-spacing: 0.05em; }
  #single-lp .rank-box {
    margin: 3rem 0; }
    #single-lp .rank-box .item {
      margin: 0;
      padding: 0; }
    #single-lp .rank-box .item-general-rate {
      padding: 0 5px 2px; }
      @media only screen and (max-width: 767px) {
        #single-lp .rank-box .item-general-rate {
          display: none; } }
    #single-lp .rank-box .general-rate-hyouka {
      font-size: 14px; }
    #single-lp .rank-box .general-rate-stars {
      font-size: 20px;
      margin: 0 5px; }
    #single-lp .rank-box .shortcode-star-rating {
      padding: 0 5px; }
    #single-lp .rank-box .general-rate-rank {
      font-size: 25px; }
    #single-lp .rank-box .item-in {
      margin: 0; }
      @media only screen and (max-width: 767px) {
        #single-lp .rank-box .item-in {
          padding: 0 1rem; } }
    #single-lp .rank-box .rank-price {
      margin: 0; }
      #single-lp .rank-box .rank-price th, #single-lp .rank-box .rank-price td {
        text-align: left; }
        #single-lp .rank-box .rank-price th .price, #single-lp .rank-box .rank-price td .price {
          font-size: 22px; }
    @media only screen and (max-width: 767px) {
      #single-lp .rank-box .waku {
        padding: 0;
        border: 1px solid #004572; } }
    #single-lp .rank-box .saleprice {
      margin-bottom: 0;
      font-size: 24px; }
      #single-lp .rank-box .saleprice i {
        font-size: 14px; }
    #single-lp .rank-box .three-point {
      margin: 30px 0 20px; }
      @media only screen and (max-width: 767px) {
        #single-lp .rank-box .three-point {
          margin: 20px 10px; } }
      #single-lp .rank-box .three-point ul li {
        font-size: 18px; }
        @media only screen and (max-width: 767px) {
          #single-lp .rank-box .three-point ul li {
            font-size: 14px; } }
    #single-lp .rank-box .cv-area {
      margin: 20px 0; }
    #single-lp .rank-box .cv a {
      margin: 0 auto 10px; }
  #single-lp .item-kuti {
    margin: 30px 0; }
    #single-lp .item-kuti .item-kuti-title {
      background-color: #004572;
      border-top: solid 1px #004572;
      border-bottom: solid 1px #004572;
      color: #fff;
      font-size: 18px;
      font-weight: bold;
      line-height: 1;
      margin: 0 auto;
      padding: 10px 0 10px 10px;
      text-align: left;
      width: 100%; }
      @media only screen and (max-width: 767px) {
        #single-lp .item-kuti .item-kuti-title {
          font-size: 14px;
          padding: 7px 1px;
          text-align: center; } }
    #single-lp .item-kuti .item-kuti-box.good,
    #single-lp .item-kuti .item-kuti-box.bad {
      border: solid 1px #ccc;
      margin-top: 20px;
      padding: 15px; }
      @media only screen and (max-width: 767px) {
        #single-lp .item-kuti .item-kuti-box.good,
        #single-lp .item-kuti .item-kuti-box.bad {
          padding: 10px; } }
      #single-lp .item-kuti .item-kuti-box.good ul li.item-kuti-each,
      #single-lp .item-kuti .item-kuti-box.bad ul li.item-kuti-each {
        margin: 0 0 25px;
        padding: 0; }
        #single-lp .item-kuti .item-kuti-box.good ul li.item-kuti-each:last-child,
        #single-lp .item-kuti .item-kuti-box.bad ul li.item-kuti-each:last-child {
          margin-bottom: 0; }
        #single-lp .item-kuti .item-kuti-box.good ul li.item-kuti-each p,
        #single-lp .item-kuti .item-kuti-box.bad ul li.item-kuti-each p {
          margin-bottom: 0; }
      #single-lp .item-kuti .item-kuti-box.good .title,
      #single-lp .item-kuti .item-kuti-box.bad .title {
        align-items: center;
        background-color: rgba(235, 233, 229, 0.6);
        display: flex;
        font-size: 14px;
        font-weight: bold;
        margin: 0 0 5px;
        padding: 3px 3px 3px 0.5em; }
        @media only screen and (max-width: 767px) {
          #single-lp .item-kuti .item-kuti-box.good .title,
          #single-lp .item-kuti .item-kuti-box.bad .title {
            font-size: 12px; } }
        #single-lp .item-kuti .item-kuti-box.good .title img,
        #single-lp .item-kuti .item-kuti-box.bad .title img {
          margin-right: 10px;
          width: 60%; }
      #single-lp .item-kuti .item-kuti-box.good .idt,
      #single-lp .item-kuti .item-kuti-box.bad .idt {
        display: block;
        font-size: 12px;
        font-weight: bold;
        margin: 0 0 7px;
        padding-top: 0; }
        @media only screen and (max-width: 767px) {
          #single-lp .item-kuti .item-kuti-box.good .idt,
          #single-lp .item-kuti .item-kuti-box.bad .idt {
            font-size: 11px;
            margin: 5px 0 10px;
            padding-top: 0; } }
      #single-lp .item-kuti .item-kuti-box.good .con,
      #single-lp .item-kuti .item-kuti-box.bad .con {
        font-size: 16px;
        margin: 0 auto;
        padding: 0 15px;
        width: 100%; }
        @media only screen and (max-width: 767px) {
          #single-lp .item-kuti .item-kuti-box.good .con,
          #single-lp .item-kuti .item-kuti-box.bad .con {
            font-size: 11px;
            margin: 5px 0 10px;
            padding-top: 0; } }
  @media only screen and (max-width: 767px) {
    #single-lp .item .item-title-box {
      padding: 0px;
      background: none;
      display: block;
      border: 1px solid #004572;
      border-top: 8px solid #004572;
      margin: auto;
      border-bottom: none; } }

.login {
  background: url(../img/bg/bg-login.jpg) no-repeat;
  background-size: cover; }

/*# sourceMappingURL=design.css.map */
