@charset "UTF-8";
/*--------------------------
バイト評判
---------------------------*/
.review {
  position: relative;
  margin-top: 20px;
}
.review img {
  max-width: 100%;
  max-height: 100%;
}
.review .box {
  margin-bottom: 60px;
}
.review .wrap {
  margin-bottom: 30px;
  background: #45AAFF;
}
.review .wrap_top {
  margin-bottom: 0;
  padding-bottom: 15px;
  background: url("/images/tnews/smartphone/baito/ranking/bg_repute.png") repeat left top/4.5px auto, url("/images/tnews/baito/ranking/bg_repute_icon.png") repeat-y center top -30px;
}
.review .wrap_top .box_button {
  margin: 0 20px;
}
.review .wrap_pale {
  background: url("/images/tnews/smartphone/baito/ranking/bg_pale.png") repeat left top/3px auto;
}
.review .no_review p {
  padding: 20px 0 30px;
  font-size: 14px;
  text-align: center;
}
.review #box_alert {
  margin: 10px 0 20px;
  background: #FFF;
  border: 3px solid #fcc;
}
.review .close_alert_image {
  width: 120px;
  min-height: 75px;
  text-align: center;
}
.review .close_alert_message {
  min-height: 75px;
  padding: 0;
  text-align: left;
  vertical-align: middle;
}
.review .nothing {
  border: solid 1px #999;
  background-color: #F5F5F5;
  text-align: center;
  padding: 40px;
  margin: 10px 15px;
}
.review_headline {
  margin-bottom: 15px;
  font-size: 32px;
  line-height: 1;
  text-shadow: 2px 2px 1px #004680;
}
.review_heading01 {
  margin: 0 0 25px;
  padding-top: 15px;
  border-top: 5px solid #46aaff;
  font-size: 24px;
  font-weight: bold;
}
.review_heading01 span {
  display: inline-block;
  margin: 0 10px;
  font-size: 14px;
}
.review_heading01 span:last-child {
  margin-right: 0;
}
.review_heading02 {
  margin: 0 10px 15px;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  text-shadow: 2px 2px 1px #004680;
}
.review_heading02 span {
  display: inline-block;
  margin: 0 10px;
  font-size: 14px;
}
.review_heading02 span:last-child {
  margin-right: 0;
}
.review_heading03 {
  margin: 0 0 20px;
  font-size: 24px;
  font-weight: bold;
}
.review_heading03 span {
  display: inline-block;
  margin: 0 10px;
  font-size: 14px;
}
.review_heading03 span:last-child {
  margin-right: 0;
}
.review_sub_head {
  margin: 0 0 15px;
  font-size: 20px;
  font-weight: bold;
}
.review_head {
  padding: 50px 30px 45px;
  color: #fff;
  text-align: center;
}
.review_head_search {
  display: block;
  position: relative;
  margin: 20px auto 15px;
  padding: 10px 40px 10px 10px;
  border: 2px solid #46aaff;
  border-radius: 2px;
  background: #fff;
  color: #888;
  font-size: 16px;
  text-align: left;
}
.review_head_search::before {
  display: block;
  position: absolute;
  top: 50%;
  right: 15px;
  width: 20px;
  height: 20px;
  transform: translateY(-50%);
  background: url("/images/tnews/smartphone/home/sprite.png") no-repeat 0 -50px;
  background-size: 300px auto;
  content: "";
}
.review_head_search:hover {
  text-decoration: none;
}
.review_head .link {
  position: relative;
  margin-right: 7px;
  color: #fff;
  font-size: 12px;
  text-decoration: underline;
}
.review_head .link::after {
  display: block;
  position: absolute;
  top: 50%;
  right: -15px;
  margin-top: -5px;
  border-width: 5px 0 5px 7px;
  border-style: solid;
  border-color: transparent #fff;
  content: "";
}
.review_desc {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
}
.review_search {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px;
}
.review_search::after {
  display: none;
}
.review_search_box {
  display: block;
  position: relative;
  width: calc(100% - 130px);
  padding: 10px 40px 10px 15px;
  border: 2px solid #46aaff;
  border-radius: 4px;
  background: #fff;
  color: #888;
  font-size: 14px;
  letter-spacing: -.05em;
  box-sizing: border-box;
}
.review_search_box::before {
  display: block;
  position: absolute;
  top: 50%;
  right: 10px;
  width: 20px;
  height: 20px;
  transform: translateY(-50%) scale(0.9);
  background: url("/images/tnews/smartphone/home/sprite.png") no-repeat 0 -50px;
  background-size: 300px auto;
  content: "";
}
.review_search_link {
  color: #fff;
  font-size: 12px;
  display: inline-block;
  width: 130px;
  padding-left: 10px;
  margin: -10px 0;
}
.review_search_anchor {
  position: relative;
  margin-right: 7px;
  color: #fff;
  font-size: 12px;
  text-decoration: underline;
}
.review_search_anchor::after {
  display: block;
  position: absolute;
  top: 50%;
  right: -15px;
  margin-top: -5px;
  border-width: 7px 5px 0 5px;
  border-style: solid;
  border-color: #fff transparent;
  content: "";
}
.review_info {
  display: flex;
  flex-wrap: wrap;
  margin: 15px 10px;
  padding: 0;
  list-style: none;
}
.review_info li {
  position: relative;
  padding-left: 20px;
  margin-right: 30px;
  font-size: 12px;
}
.review_info li::before {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.review_info .area::before {
  display: block;
  width: 15px;
  height: 15px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat -45px -15px / 150px auto;
  content: "";
}
.review_info .station::before {
  display: block;
  width: 15px;
  height: 15px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat -60px -15px / 150px auto;
  content: "";
}
.review_info .type::before {
  display: block;
  width: 15px;
  height: 15px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat -75px -15px / 150px auto;
  content: "";
}
.review_info .corp {
  width: 100%;
  margin-top: 5px;
  box-sizing: border-box;
}
.review_info .corp::before {
  display: block;
  width: 15px;
  height: 15px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat -30px -15px / 150px auto;
  content: "";
}
.review_info a {
  text-decoration: underline;
}
.review_user_info {
  display: flex;
  align-items: center;
  margin: 0 0 20px;
}
.review_user_info .image {
  width: 100px;
  min-width: 100px;
  margin-right: 20px;
}
.review_user_info .data {
  flex-grow: 1;
  padding-bottom: 5px;
}
.review_user_info p {
  margin-bottom: 8px;
  font-size: 12px;
}
.review_user_info span {
  font-size: 26px;
}
.review_data {
  display: flex;
  align-items: center;
  margin: 10px;
}
.review > .review_data * {
  font-size: 26px;
}
.review_star {
  display: flex;
  align-items: center;
  height: 28px;
  padding-top: 2px;
  color: #f29d00;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
}
.review_star img {
  display: block;
  max-height: 30px;
  margin: -2px 6px 0 0;
}
.review_user {
  position: relative;
  margin-left: 40px;
  padding-left: 35px;
  color: #46aaff;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
}
.review_user::before {
  display: block;
  width: 30px;
  height: 30px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat -30px -30px / 300px auto;
  content: "";
}
.review_user::before {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -15px;
}
.review_tag {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 10px;
  padding: 0;
  list-style: none;
}
.review_tag li {
  margin-bottom: 2px;
  padding: 5px 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
  color: #777;
  font-size: 11px;
  line-height: 1;
}
.review_tag li:not(:last-child) {
  margin-right: 4px;
}
.review_nav {
  display: flex;
  margin: 0;
  padding: 0;
  border: 1px solid #e0e0e0;
  list-style: none;
}
.review_nav li {
  box-sizing: border-box;
}
.review_nav a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 25%;
  padding: 5px 0 5px 10px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  box-sizing: border-box;
}
.review_nav a:not(:last-child) {
  border-right: 1px solid #e0e0e0;
}
.review_nav a:hover {
  text-decoration: none;
  opacity: .7;
}
.review_nav i {
  display: block;
  position: absolute;
  top: 50%;
  left: 10px;
  width: 20px;
  height: 20px;
  margin-top: -10px;
}
.review_nav .ico_top::before {
  display: block;
  width: 20px;
  height: 20px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat 0 -40px / 200px auto;
  content: "";
}
.review_nav .ico_ranking::before {
  display: block;
  width: 20px;
  height: 20px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat -20px -40px / 200px auto;
  content: "";
}
.review_nav .ico_review::before {
  display: block;
  width: 20px;
  height: 20px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat -40px -40px / 200px auto;
  content: "";
}
.review_nav .ico_job::before {
  display: block;
  width: 20px;
  height: 20px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat -60px -40px / 200px auto;
  content: "";
}
.review_nav .count {
  display: block;
  width: 70px;
  margin: 0 auto;
  padding: 3px 0;
  border-radius: 20px;
  background: #e62817;
  color: #fff;
  font-size: 11px;
  font-weight: normal;
  line-height: 1;
}
.review #article-body {
  padding: 10px 0;
}
.review_list {
  padding: 15px 0;
}
.review_list.wrap {
  margin-bottom: 60px;
}
.review_data + .review_list {
  margin-top: 20px;
}
.review_refine {
  position: relative;
  margin: 0 -5px 20px;
  padding: 0 10px 20px;
  border-bottom: 2px solid #46aaff;
}
.review_refine::before, .review_refine::after {
  display: block;
  position: absolute;
  bottom: -15px;
  left: 50%;
  transform: translateX(-50%);
  border-width: 15px 20px 0;
  border-style: solid;
  border-color: #46aaff transparent;
  content: "";
}
.review_refine::after {
  bottom: -12.5px;
  border-color: #fff transparent;
  visibility: visible;
}
.review_refine ul {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}
.review_refine li {
  position: relative;
  margin-top: 1px;
  padding: 8px 0 8px 10px;
  background: #f5f5f5;
  font-size: 14px;
  box-sizing: border-box;
}
.review_refine li:nth-child(even) {
  width: calc(50% - 1px);
  margin-right: 1px;
}
.review_refine li:nth-child(odd) {
  width: 50%;
}
.review_refine li:first-child {
  width: 100%;
  margin: 0;
}
.review_refine li:not(.is-current):hover {
  opacity: .7;
}
.review_refine li.is-current {
  background: #46aaff;
  color: #fff;
}
.review_refine li a {
  display: block;
  width: calc(100% - 45px);
  height: calc(100% - 14px);
  position: absolute;
  top: 0px;
  left: 0px;
  padding: 14px 0 0 45px;
}
.review_refine .review_category {
  margin-right: 8px;
  border: 5px solid #fff;
  border-radius: 50%;
  background-color: #fff;
  vertical-align: -8px;
}
.review_refine_box {
  padding: 0 5px;
}
.review_wrapper {
  position: relative;
  width: 635px;
  margin: 0 auto 20px;
  padding: 10px 5px 5px;
  border-radius: 4px;
  background: #fff;
  box-sizing: border-box;
}
.review_wrapper .rank {
  position: absolute;
  top: 0;
  left: 10px;
  width: 58px;
  margin-right: 10px;
  color: #999;
  font-size: 15px;
  text-align: center;
}
.review_wrapper .rank img {
  width: 58px;
}
.review_wrapper .rank strong {
  display: block;
  width: 47px;
  height: 43px;
  padding-top: 15px;
  background: url(/images/tnews/baito/ranking/bg_rank.png) no-repeat left top;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}
.review_wrapper .title {
  display: flex;
  align-items: center;
  min-height: 55px;
  padding-left: 75px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.3;
}
.review_wrapper .station {
  font-size: 11px;
  text-align: right;
}
.review_wrapper .review_image,
.review_wrapper .review_data,
.review_wrapper .review_tag {
  margin: 10px 5px;
}
.review_wrapper .review_image img {
  width: 100%;
}
.review_wrapper .more {
  text-align: right;
}
.review_wrapper .link {
  display: inline-block;
  margin: 0 5px 15px;
  padding: 0 10px 0 0;
  background: transparent;
  color: #333;
  font-size: 11px;
  text-align: right;
  text-decoration: underline;
}
.review_wrapper .link::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 0;
  height: 0;
  margin-top: -5px;
  border-width: 5px 0 5px 7px;
  border-style: solid;
  border-color: transparent #46aaff;
  background: none;
  content: "";
}
.review_wrapper .link:hover {
  background: none;
  text-decoration: none;
}
.review_wrapper .more:last-child .link {
  margin: 5px 0 0;
}
.review_wrapper .box_button {
  margin: 0;
}
.review_box {
  width: 615px;
  margin: 0 auto 15px;
  padding: 10px 15px;
  border-radius: 4px;
  background: #f5f5f5;
  box-sizing: border-box;
}
.review_box:last-child {
  margin-bottom: 0;
}
.review_box .name {
  margin: -10px -15px 10px;
  padding: 8px 15px;
  border-radius: 4px 4px 0 0;
  background: #e6e6e6;
  font-size: 13px;
  font-weight: bold;
  line-height: 1.2;
}
.review_box .category {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
  padding-bottom: 8px;
  border-bottom: 2px dotted #888;
  font-size: 16px;
  font-weight: bold;
}
.review_box .category i {
  margin-right: 5px;
}
.review_box .date {
  font-size: 12px;
  line-height: 1;
  text-align: right;
}
.review_box .inner {
  display: flex;
}
.review_box .image {
  width: 100px;
  min-width: 100px;
  margin-right: 20px;
}
.review_body {
  flex-grow: 1;
}
.review_body:first-child .review_comment::before {
  display: none;
}
.review_comment {
  position: relative;
  margin-top: 10px;
  padding: 25px 10px 10px;
  border-radius: 4px;
  background: #fff;
  box-shadow: 2px 2px 1px #ccc;
}
.review_comment::before {
  display: block;
  position: absolute;
  top: 25px;
  left: -7px;
  border-width: 5px 7px 5px 0;
  border-style: solid;
  border-color: transparent #fff;
  content: "";
}
.review_comment p:not([class]) {
  font-size: 12px;
}
.review_comment p.blur, .user_status span.blur {
  font-size: 12px;
  opacity: 0.4;
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.4);
  color: transparent;
  margin: 0;
}
.review_comment div.login {
  position: absolute;
  text-align: center;
  left: 7px;
  right: 7px;
  top: 24px;
  background: rgba(0,0,0, .05);
  bottom: 7px;
  border-radius: 4px;
  line-height: 4;

}
.review_comment div.login {
  position: absolute;
  text-align: center;
  left: 7px;
  right: 7px;
  top: 24px;
  background: rgba(0,0,0, .05);
  bottom: 7px;
  border-radius: 4px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.review_comment div.login span {
  z-index: 1;
  display: block;
}
.review_comment_tag {
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
  padding: 4px 10px;
  border-radius: 4px 0 4px 0;
  color: #fff;
  font-size: 10px;
  line-height: 1;
}
.review_comment_good {
  background: #ff5b4d;
}
.review_comment_bad {
  background: #0077cc;
}
.review_comment a {
  display: inline-block;
  margin-left: 1em;
  color: #2caff1;
  text-decoration: underline;
}
.review .user_status {
  margin-top: 10px;
  color: #555;
  font-size: 10px;
  text-align: right;
}
.review_category {
  display: inline-block;
  position: relative;
  width: 18px;
  height: 18px;
  vertical-align: -2px;
}
.review_category::before {
  display: block;
  width: 18px;
  height: 18px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat 0 0 / 180px auto;
  content: "";
}
.review_category::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.review_category00::before {
  background-position: 0 0;
}
.review_category01::before {
  background-position: -18px 0;
}
.review_category02::before {
  background-position: -36px 0;
}
.review_category03::before {
  background-position: -54px 0;
}
.review_category04::before {
  background-position: -72px 0;
}
.review_category05::before {
  background-position: -90px 0;
}
.review_category06::before {
  background-position: -108px 0;
}
.review_category07::before {
  background-position: -126px 0;
}
.review_category08::before {
  background-position: -144px 0;
}
.review_like {
  display: inline-block;
  position: relative;
  top: 0;
  right: 0;
  margin: 0 0 -3px auto;
  padding: 6px 5px 5px 25px;
  border: 1px solid #999;
  border-radius: 2px;
  background: #fff;
  color: #999;
  font-size: 12px;
  font-weight: normal;
  line-height: 1;
  white-space: nowrap;
}
.review_like::before {
  display: block;
  width: 15px;
  height: 15px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat -60px -30px / 150px auto;
  content: "";
}
.review_like::before {
  position: absolute;
  top: 50%;
  left: 5px;
  transform: translateY(-50%);
}
.review_like:hover {
  text-decoration: none;
  opacity: .7;
}
.review_like.is-liked {
  border-color: #46aaff;
  color: #46aaff;
}
.review_like.is-liked::before {
  background-position: -75px -30px;
}

.box_button {
  margin: 0 10px;
}
.box_button_multiple {
  display: flex;
  justify-content: space-between;
}
.box_button_multiple:after {
  display: none;
}
.box_button_bottom {
  margin-bottom: -20px;
  padding: 20px;
  background: rgba(255, 255, 255, 0.7);
}

.button_review {
  display: block;
  padding: 15px 0;
  border: 1px solid #46aaff;
  border-radius: 3px;
  background: #fff;
  color: #333;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}
.button_review::before {
  display: inline-block;
  width: 26px;
  height: 26px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat 0 -26px / 260px auto;
  content: "";
}
.button_review::before {
  margin-right: 10px;
  vertical-align: -6px;
}
.button_review:hover {
  text-decoration: none;
  opacity: .7;
}
.button_review_s {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(50% - 5px);
  padding: 15px 0 13px;
  border: 1px solid #46aaff;
  border-radius: 3px;
  background: #fff;
  color: #333;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  box-sizing: border-box;
}
.button_review_s::before {
  display: inline-block;
  width: 26px;
  height: 26px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat 0 -26px / 260px auto;
  content: "";
}
.button_review_s::before {
  margin: -2px 8px 0 0;
}
.button_review_s:hover {
  text-decoration: none;
  opacity: .7;
}

.button_more {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(50% - 25px);
  padding: 10px;
  border-radius: 3px;
  background: #46aaff;
  color: #fff;
  font-size: 16px;
  line-height: 1.2;
  text-align: center;
}
.button_more::before, .button_more::after {
  display: none;
}
.button_more:hover {
  text-decoration: none;
  opacity: .7;
}
.button_more_link {
  display: block;
  position: relative;
  padding: 13px 0;
  border: 2px solid #46aaff;
  border-radius: 25px;
  background: #fff;
  color: #46aaff;
  font-size: 16px;
  text-align: center;
}
.button_more_link::after {
  position: absolute;
  top: 50%;
  right: 15px;
  width: 10px;
  height: 18px;
  margin-top: -8px;
  transform: scale(0.7);
  background: url(/images/tnews/smartphone/sprite.png?20190701) no-repeat left -120px/400px auto;
  content: "";
}
.button_more_link:hover {
  text-decoration: none;
  opacity: .7;
}

.button_job {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(50% - 5px);
  padding: 15px 0 13px;
  border-radius: 3px;
  background: #ff6a18;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  line-height: 28px;
  text-align: center;
  box-sizing: border-box;
}
.button_job::before {
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat 0 -80px / 200px auto;
  content: "";
}
.button_job::before {
  margin: -4px 10px 0 0;
}
.button_job:hover {
  text-decoration: none;
  opacity: .7;
}

.search_review {
  margin: 60px 0 0;
  padding: 20px 15px;
}
.search_review .title {
  position: relative;
  margin-bottom: 15px;
  padding-left: 30px;
  font-size: 20px;
  font-weight: bold;
}
.search_review .title::before {
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 20px;
  height: 20px;
  transform: translateY(-50%);
  background: url("/images/tnews/smartphone/home/sprite.png") no-repeat 0 -50px;
  background-size: 300px auto;
  content: "";
}
.search_review ul {
  display: flex;
  justify-content: space-between;
  margin: 0;
  padding: 0;
  list-style: none;
}
.search_review ul::after {
  display: none;
}
.search_review li {
  width: calc((100% - 15px) / 4);
}
.search_review a {
  display: block;
  padding: 15px 0 10px;
  border: 1px solid #e0e0e0;
  background: #fff;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}
.search_review a:hover {
  text-decoration: none;
  opacity: .7;
}
.search_review i {
  display: block;
  position: relative;
  width: 40px;
  height: 40px;
  margin: 0 auto 8px;
}
.search_review .ico_job::before {
  display: block;
  width: 40px;
  height: 40px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat -40px -160px / 400px auto;
  content: "";
}
.search_review .ico_area::before {
  display: block;
  width: 40px;
  height: 40px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat -80px -160px / 400px auto;
  content: "";
}
.search_review .ico_station::before {
  display: block;
  width: 40px;
  height: 40px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat -120px -160px / 400px auto;
  content: "";
}
.search_review .ico_campus::before {
  display: block;
  width: 40px;
  height: 40px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat -160px -160px / 400px auto;
  content: "";
}

.ranking_link {
  margin: 0 0 20px;
  padding: 40px;
  background: #e3f2fd;
}
.ranking_link_title {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}
.ranking_link ul {
  display: flex;
  justify-content: space-between;
  margin: 15px 10px 0;
  padding: 0;
  list-style: none;
}
.ranking_link ul::after {
  display: none;
}
.ranking_link li {
  width: calc((100% - 30px) / 3);
}
.ranking_link a {
  display: block;
  padding: 15px 0;
  border: 1px solid #e0e0e0;
  background: #fff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}
.ranking_link a:hover {
  text-decoration: none;
  opacity: .7;
}
.ranking_link .ico_job_c,
.ranking_link .ico_corp_c,
.ranking_link .ico_store_c {
  display: block;
  position: relative;
  width: 57px;
  height: 57px;
  margin: 0 auto 10px;
  background: url("/images/tnews/smartphone/baito/ranking/sprite.png") no-repeat -285px -228px/570px auto;
  z-index: 2;
}
.ranking_link .ico_corp_c {
  background-position: -342px -228px;
}
.ranking_link .ico_store_c {
  background-position: -399px -228px;
}

.seo_contents {
  padding: 25px 20px;
  border: 5px solid #e0e0e0;
  background: #fff;
  font-size: 14px;
}
.seo_contents_title {
  margin-bottom: 15px;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
}

/* 特長　*/
.features {
  margin-bottom: 40px;
}
.features .inner {
  position: relative;
  padding: 10px;
  background: #f5f5f5;
}
.features_more {
  position: absolute;
  right: 10px;
  bottom: 10px;
  left: 10px;
  height: 20px;
  padding-top: 70px;
  background: linear-gradient(to bottom, rgba(245, 245, 245, 0) 10%, #f5f5f5 70%);
  font-size: 12px;
  text-align: center;
  text-decoration: underline;
  cursor: pointer;
}
.features_more::after {
  display: inline-block;
  height: auto;
  margin-left: 5px;
  color: #46aaff;
  font-size: 10px;
  content: "▼";
  visibility: visible;
}
.features_box {
  display: flex;
  justify-content: space-between;
  padding: 10px;
  border-radius: 4px;
  background: #fff;
}
.features_box:not(:first-child) {
  margin-top: 10px;
}
.features_box::after {
  display: none;
}
.features_text {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.features_text::after {
  display: none;
}
.features_text .image {
  width: 70px;
  min-width: 70px;
  margin-right: 20px;
}
.features_text p {
  flex-grow: 1;
  font-size: 18px;
  font-weight: bold;
}
.features_text p span {
  display: block;
  font-size: 15px;
  font-weight: normal;
}
.features_slider {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 10px;
  width: 290px;
  padding: 10px;
  border-radius: 4px;
  background: url("/images/tnews/smartphone/baito/ranking/bg_gauge.png") repeat left top/4.5px auto;
}
.features_slider::after {
  display: none;
}
.features_slider .gauge {
  position: relative;
  width: 290px;
  height: 20px;
  margin: 0 auto 10px;
  background: url("/images/tnews/smartphone/baito/ranking/img_gauge.png") no-repeat center top/290px 20px;
}
.features_slider .gauge::before {
  position: absolute;
  top: 50%;
  width: 45px;
  height: 10px;
  transform: translateY(-50%);
  border-radius: 5px;
  content: "";
}
.features_slider .gauge_1::before {
  left: 8px;
}
.features_slider .gauge_2::before {
  left: 65px;
}
.features_slider .gauge_3::before {
  left: 123px;
}
.features_slider .gauge_4::before {
  left: 180px;
}
.features_slider .gauge_5::before {
  left: 238px;
}
.features_slider p {
  color: #333;
  font-size: 10px;
}
.features_slider p:first-of-type::before {
  display: inline-block;
  transform: rotate(-90deg);
  color: #666;
  content: "▲";
}
.features_slider p:last-of-type::after {
  display: inline-block;
  transform: rotate(90deg);
  color: #666;
  content: "▲";
}
.features_01 {
  color: #c93a40;
}
.features_01 .gauge::before {
  background: #c93a40;
}
.features_02 {
  color: #cc528b;
}
.features_02 .gauge::before {
  background: #cc528b;
}
.features_03 {
  color: #0074bf;
}
.features_03 .gauge::before {
  background: #0074bf;
}
.features_04 {
  color: #a0c238;
}
.features_04 .gauge::before {
  background: #a0c238;
}
.features_05 {
  color: #de9610;
}
.features_05 .gauge::before {
  background: #de9610;
}
.features_06 {
  color: #9460a0;
}
.features_06 .gauge::before {
  background: #9460a0;
}
.features_07 {
  color: #65ace4;
}
.features_07 .gauge::before {
  background: #65ace4;
}
.features_08 {
  color: #56a764;
}
.features_08 .gauge::before {
  background: #56a764;
}
.features_09 {
  color: #d16b16;
}
.features_09 .gauge::before {
  background: #d16b16;
}
.features_list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.features_list li {
  display: flex;
  border: 2px solid #888;
  border-radius: 4px;
  background: #fff;
  font-size: 14px;
}
.features_list li:not(:first-child) {
  margin-top: 10px;
}
.features_list div {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50%;
  height: 40px;
  padding: 0 5px;
  color: #888;
  line-height: 1.2;
  text-align: center;
  box-sizing: border-box;
}
.features_list div:first-child {
  border-right: 1px solid #888;
}
.features_list div:last-child {
  border-left: 1px solid #888;
}
.features .is-selected {
  position: relative;
  padding-left: 30px;
  color: #46aaff;
  font-weight: bold;
}
.features .is-selected::before {
  display: block;
  width: 20px;
  height: 20px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat -120px -40px / 200px auto;
  content: "";
}
.features .is-selected::before {
  position: absolute;
  top: 50%;
  left: 20px;
  transform: translateY(-50%);
}

/*--------------------------
口コミ投稿
---------------------------*/
.review_post {
  margin-top: 10px;
  padding-bottom: 30px;
}
.review_post .headline {
  border-color: #c12f00;
  background: #ff6a00;
}
.review_post .title {
  padding: 5px 0 13px;
  font-size: 20px;
}
.review_post .box_form {
  width: 800px;
}
.review_post .parent {
  width: 200px;
}
.review_post .text {
  margin: 13px 0;
}
.review_post .text + .form {
  margin-top: 0;
}
.review_post .text_question {
  margin: 0 0 10px;
  font-size: 14px;
}
.review_post .text_indent {
  padding-left: 1em;
  font-size: 12px;
  text-indent: -1em;
}
.review_post .text_s {
  font-size: 12px;
}
.review_post .form input + input {
  margin-top: 0;
}
.review_post .form input + p {
  padding-top: 15px;
}
.review_post .box_button input {
  padding: 0;
}
.review_post_star ol {
  margin: 0;
  padding: 0;
  list-style: none;
}
.review_post_star li {
  display: inline-block;
  cursor: pointer;
}
.review_post_star img {
  height: 40px;
}
.review_post_star .star_on,
.review_post_star .star_off {
  width: 41px;
  vertical-align: baseline;
}
#main .review_post_star_text {
  position: relative;
  margin-top: 15px;
  padding: 12px 15px 10px;
  border-radius: 5px;
  background: #fff5e5;
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
}
#main .review_post_star_text::before {
  position: absolute;
  top: -10px;
  left: 10px;
  border-width: 0 10px 10px;
  border-style: solid;
  border-color: #fff5e5 transparent;
  content: "";
}
dd .review_post_star p {
  margin: 10px 0 0;
}
.review_post_star.confirm img {
  display: inline-block;
  height: 20px;
  margin-right: 5px;
  vertical-align: -4px;
}
.review_post .button_next {
  min-width: 300px;
  border-color: #c12f00;
  background: #ff6a00;
}
.review_post .button_next:hover {
  background: #ff8833;
}
.review_post .button_decision {
  border-color: #c12f00;
  background: #ff6a00;
}
.review_post .button_decision:hover {
  background: #ff8833;
}
.review_post p a {
  color: #276ec4;
  text-decoration: underline;
}
.review_post_heading {
  padding: 30px 0;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}
.review_post_heading::before, .review_post_heading::after {
  display: inline-block;
  margin: 0 10px;
  content: "|";
}
.review_post_heading::before {
  transform: rotate(-45deg);
}
.review_post_heading::after {
  transform: rotate(45deg);
}
.complete .text {
  width: 500px;
  margin: 20px auto;
  font-size: 14px;
  line-height: 1.6;
}
.complete .text + .more_post {
  margin-top: 30px;
}
.review_post .more_post {
  width: 570px;
  margin: 10px auto;
  padding: 15px 10px;
  border: 10px solid #f5f5f5;
  font-size: 14px;
  text-align: center;
}
.review_post .more_post .box_button {
  width: 400px;
  margin: 10px auto 0;
}
.review_post .more {
  margin-top: 30px;
}
.review_post .more .link {
  width: 600px;
  margin: 10px auto;
  border: 1px solid #46aaff;
  border-radius: 25px;
  background: #fff;
  color: #46aaff;
  text-decoration: none;
}
.review_post .more .link::after {
  right: 15px;
  transform: scale(0.7);
}
.review_post .more .link:hover {
  opacity: .7;
}

.select_feature {
  margin: 0;
  padding: 0 0 0 20px;
  list-style: none;
}
.select_feature:after {
  display: none;
}
.select_feature li {
  display: flex;
  position: relative;
  width: 518px;
  border: 2px solid #46aaff;
  border-radius: 4px;
}
.select_feature li:not(:first-child) {
  margin-top: 10px;
}
.select_feature label {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50%;
  height: 48px;
  padding: 0 8px;
  background: #f2f2f2;
  color: #666;
  font-size: 14px;
  line-height: 1.2;
  text-align: center;
  box-sizing: border-box;
  cursor: pointer;
}
.select_feature label:first-of-type {
  border-right: 1px solid #46aaff;
}
.select_feature label:last-of-type {
  border-left: 1px solid #46aaff;
}
.select_feature :checked + label {
  background: #46aaff;
  color: #fff;
}
.select_feature input {
  position: absolute;
  opacity: 0;
}
.select_feature i {
  position: absolute;
  top: 50%;
  left: -24px;
  transform: translateY(-50%);
  font-size: 18px;
  font-weight: bold;
}
.select_feature_confirm {
  margin: 0;
  padding: 0;
  list-style: none;
}
.select_feature_confirm li:not(:first-child) {
  margin-top: 5px;
}

.review_category_button {
  display: flex;
  flex-wrap: wrap;
  width: 542px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.review_category_button li {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc((100% - 15px) / 4);
  height: 40px;
  padding: 0 2px;
  border-radius: 4px;
  background: #f5f5f5;
  color: #999;
  font-size: 13px;
  font-weight: normal;
  line-height: 1.2;
  text-align: center;
  box-shadow: 0 2px 0 #ccc;
  box-sizing: border-box;
}
.review_category_button li:nth-child(n+5) {
  margin-top: 5px;
}
.review_category_button li:not(:nth-child(4n)) {
  margin-right: 5px;
}
.review_category_button li.is-select {
  background: #ff6a00;
  color: #fff;
  box-shadow: 0 2px 0 #c12f00;
}

#descriptions {
  margin-top: 30px;
  padding: 0;
}
#descriptions li {
  list-style: none;
}
#descriptions .review_input_tag label {
  min-width: auto;
  padding-right: 0;
}

.review_input {
  margin-top: 30px;
}
.review_input:first-child {
  margin-top: 0;
}
.review_post .review_input_desc {
  margin: -5px 0 0;
  padding-left: 18px;
  font-size: 13px;
  text-indent: -18px;
}
.review_post .review_input_desc::before {
  display: inline-block;
  width: 13px;
  height: 13px;
  margin-right: 5px;
  border-radius: 50%;
  background: #ff6a00;
  color: #fff;
  font-size: 10px;
  font-weight: bold;
  text-align: center;
  text-indent: 0;
  content: "？";
}
.review_input_box {
  margin-top: 15px;
}
.review_input_tag {
  display: inline-block;
  padding: 8px 15px;
  border-radius: 4px 4px 0 0;
  color: #fff;
  font-size: 13px;
  font-weight: normal;
  line-height: 1;
}
.review_input textarea {
  width: 100%;
  height: 100px;
  max-height: 100px;
  margin-top: -2px;
  padding: 15px;
  border-width: 2px;
  border-style: solid;
  border-radius: 0 4px 4px 4px;
  font-size: 12px;
  overflow: auto;
  box-sizing: border-box;
}
.review_input_text {
  width: 100%;
  margin-top: -2px;
  padding: 5px 5px 0;
  border-width: 2px 0 0;
  border-style: solid;
  box-sizing: border-box;
}
.review_input_data {
  display: flex;
  justify-content: flex-end;
  width: 100%;
  margin-top: 5px;
}
.review_post .review_input_count {
  margin: 0;
  font-size: 11px;
}
.review_input .error {
  flex-grow: 1;
  margin: -3px auto 0 0;
  color: #e60012;
  font-size: 14px;
  font-weight: bold;
}
.review_input .error::before {
  display: inline-block;
  width: 13px;
  height: 13px;
  margin-right: 5px;
  border-radius: 50%;
  background: #e60012;
  color: #fff;
  font-size: 10px;
  font-weight: bold;
  text-align: center;
  content: "！";
}
.review_input_good .review_input_tag {
  background: #ff5b4d;
}
.review_input_good .review_input_text,
.review_input_good textarea {
  border-color: #ff5b4d;
}
.review_input_good .review_input_count span {
  color: #ff5b4d;
}
.review_input_bad .review_input_tag {
  background: #0077cc;
}
.review_input_bad .review_input_text,
.review_input_bad textarea {
  border-color: #0077cc;
}
.review_input_bad .review_input_count span {
  color: #0077cc;
}

.search_shop_word {
  display: flex;
}
.search_shop input[type="text"] {
  flex-grow: 1;
  border-right: 0;
  border-radius: 4px 0 0 4px;
  font-size: 16px;
}
.search_shop .button_search {
  position: relative;
  width: 60px;
  height: 48px;
  padding: 12px 0 11px;
  border: none;
  border-radius: 0 4px 4px 0;
  background: #5c5c5c;
  color: #fff;
  font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック",sans-serif;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  box-sizing: border-box;
}
.search_shop .condition_list {
  width: 600px;
  margin: 0 auto;
}
.search_shop .condition_list p {
  margin-bottom: 10px;
  font-size: 14px;
  font-weight: bold;
}
.search_shop .condition_list ul {
  margin: 0;
  padding: 0;
  border-top: 1px solid #d6d6d6;
  list-style: none;
}
.search_shop .condition_list li {
  border-bottom: 1px solid #d6d6d6;
}
.search_shop .condition_list .condition {
  display: block;
  position: relative;
  padding: 15px 40px 15px 15px;
  font-size: 15px;
  font-weight: bold;
}
.search_shop .condition_list .condition::after {
  position: absolute;
  top: 50%;
  right: 15px;
  width: 10px;
  height: 18px;
  margin-top: -8px;
  background: url(/images/tnews/smartphone/sprite.png?20190701) no-repeat left -120px/400px auto;
  content: "";
}
.search_shop .condition_list .condition:hover {
  color: #46aaff;
  text-decoration: none;
}
.search_shop .no_match {
  width: 600px;
  margin: 34px auto;
  text-align: left;
}
.search_shop .no_match .text_indent {
  margin: 0 20px;
}
.search_shop .more {
  text-align: right;
}
.search_shop .link_text {
  display: inline-block;
  margin: 0 20px;
  padding: 0 10px 0 0;
  background: transparent;
  font-size: 14px;
  text-align: right;
  text-decoration: underline;
}
.search_shop .link_text::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 0;
  height: 0;
  margin-top: -5px;
  border-width: 5px 0 5px 7px;
  border-style: solid;
  border-color: transparent #46aaff;
  background: none;
  content: "";
}
.search_shop .link_text:hover {
  background: none;
  text-decoration: none;
}

/*--------------------------
マイページ
---------------------------*/
.review > .headline {
  border-color: #c12f00;
  background: #ff6a00;
  text-align: left;
}

.my_review {
  margin: 20px 0;
  padding: 15px 20px 20px;
  border: 1px solid #e0e0e0;
}
.my_review .review_heading01 {
  margin: 0;
}
.my_review .review_data {
  margin: -5px 0 20px;
}
.my_review .review_data .review_star {
  font-size: 26px;
}
.my_review .review_data img {
  margin-top: -6px;
}
.my_review .review_liked {
  display: inline-block;
  position: relative;
  align-self: center;
  top: 0;
  right: 0;
  margin: 0 0 -3px auto;
  padding-left: 20px;
  background: #fff;
  color: #46aaff;
  font-size: 12px;
  font-weight: normal;
  line-height: 1;
  white-space: nowrap;
}
.my_review .review_liked::before {
  display: block;
  width: 15px;
  height: 15px;
  background: url(/images/tnews/smartphone/baito/ranking/sprite.png) no-repeat -75px -30px / 150px auto;
  content: "";
}
.my_review .review_liked::before {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.my_review .review_liked span {
  display: inline-block;
  position: relative;
  margin-left: 10px;
  padding: 8px 10px;
  border: 1px solid #46aaff;
  border-radius: 2px;
  line-height: 1;
}
.my_review .review_liked span::before, .my_review .review_liked span::after {
  display: block;
  position: absolute;
  top: 50%;
  left: -5px;
  transform: translateY(-50%);
  border-width: 5px 7px 5px 0;
  border-style: solid;
  border-color: transparent #fff;
  content: "";
}
.my_review .review_liked span::before {
  left: -7px;
  border-color: transparent #46aaff;
}
.my_review .button_more {
  flex-grow: 1;
  margin: 0;
}
.my_review .button_more.disable {
  background-color: lightgrey;
}
.my_review .button_review_s {
  margin-left: 5px;
}
.my_review + .box_button {
  margin: 60px 20px;
}

.review_inquiry {
  margin-bottom: 60px;
  text-align: center;
}
.review_inquiry .link {
  position: relative;
  margin-right: 7px;
  color: #333;
  font-size: 13px;
  line-height: 2;
}
.review_inquiry .link::after {
  display: block;
  position: absolute;
  top: 50%;
  right: -15px;
  margin-top: -5px;
  border-width: 5px 0 5px 7px;
  border-style: solid;
  border-color: transparent #46aaff;
  content: "";
}

/*--------------------------
汎用検索
---------------------------*/
.ranking_search {
  margin-top: 40px;
  padding: 8px;
  background: #f5f6f7;
}
.ranking_search .tab {
  position: relative;
  margin: 0 0 -1px;
  padding: 0;
  list-style: none;
  z-index: 1;
}
.ranking_search .tab::before {
  display: block;
  position: absolute;
  bottom: 0;
  left: 1px;
  width: 589px;
  border-top: 1px dashed #fff;
  content: "";
  z-index: 2;
}
.ranking_search .tab li {
  float: left;
  margin-right: 10px;
}
.ranking_search .tab a {
  display: block;
  position: relative;
  width: 288px;
  padding: 10px 0;
  border: 1px solid #c6c5c4;
  border-radius: 2px 2px 0 0;
  background: #fff;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
}
.ranking_search .tab strong {
  font-size: 17px;
}
.ranking_search .tab .active a::before {
  position: absolute;
  top: -1px;
  right: -1px;
  left: -1px;
  border-top: 3px solid #21aff8;
  border-radius: 2px 2px 0 0;
  content: "";
}
.ranking_search .tab .active a::after {
  position: absolute;
  bottom: -1px;
  right: -1px;
  left: -1px;
  border-top: 1px solid #fff;
  border-radius: 2px 2px 0 0;
  content: "";
}
.ranking_search i {
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-right: 15px;
  background-image: url(/images/tnews/baito/ranking/sprite.png);
  vertical-align: -10px;
}
.ranking_search .ico_job_tab {
  background-position: -550px 0;
}
.ranking_search .ico_corp_tab {
  background-position: -600px 0;
}
.ranking_search .ico_store_tab {
  background-position: -700px 0;
}
.ranking_search .active .ico_job_tab {
  background-position: -100px 0;
}
.ranking_search .active .ico_corp_tab {
  background-position: -650px 0;
}
.ranking_search .active .ico_store_tab {
  background-position: -750px 0;
}
.ranking_search .button_search {
  position: relative;
  width: 400px;
  margin-left: 8px;
  padding: 14px 0;
  border: none;
  background: #22b0f8;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  text-shadow: 0 0 2px #b1b4b5;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
}
.ranking_search .button_search::before {
  display: block;
  position: absolute;
  top: 50%;
  right: 11px;
  width: 6px;
  height: 6px;
  margin-top: -4px;
  transform: rotate(45deg);
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #fff;
  content: "";
}

.ranking {
  margin-top: 20px;
}
.ranking .headline {
  padding-left: 0;
  border-top: 3px solid #21aff8;
  border-left: 0;
  background: #fff;
  color: #717171;
}
.ranking .ico_search {
  display: inline-block;
  width: 27px;
  height: 27px;
  margin-right: 20px;
  background: url(/images/tnews/baito/ranking/sprite.png) no-repeat left top;
  vertical-align: -4px;
}
.ranking .ico_job,
.ranking .ico_area,
.ranking .ico_station,
.ranking .ico_campus {
  display: inline-block;
  width: 38px;
  height: 38px;
  margin-right: 10px;
  background-image: url(/images/tnews/baito/ranking/sprite.png);
  vertical-align: -12px;
}
.ranking .ico_job {
  background-position: -50px 0;
}
.ranking .ico_area {
  background-position: -150px 0;
}
.ranking .ico_station {
  background-position: -250px 0;
}
.ranking .ico_campus {
  background-position: -350px 0;
}
.ranking .ico_job_s,
.ranking .ico_area_s,
.ranking .ico_station_s,
.ranking .ico_campus_s {
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-right: 8px;
  background-image: url(/images/tnews/baito/ranking/sprite.png);
  vertical-align: -10px;
}
.ranking .ico_job_s {
  background-position: -100px 0;
}
.ranking .ico_area_s {
  background-position: -200px 0;
}
.ranking .ico_station_s {
  background-position: -300px 0;
}
.ranking .ico_campus_s {
  background-position: -400px 0;
}
.ranking .ico_area_l,
.ranking .ico_station_l,
.ranking .ico_campus_l {
  display: inline-block;
  width: 57px;
  height: 57px;
  margin-right: 8px;
  background-image: url(/images/tnews/baito/ranking/sprite.png);
  vertical-align: -10px;
}
.ranking .ico_area_l {
  background-position: 0 -100px;
}
.ranking .ico_station_l {
  background-position: -100px -100px;
}
.ranking .ico_campus_l {
  background-position: -200px -100px;
}
.ranking .button_clear {
  width: 160px;
  padding: 14px 0;
  border: none;
  background: #ccc;
  font-size: 14px;
  font-weight: bold;
}

.ranking_tab_content {
  padding-bottom: 50px;
  border: 1px solid #c6c5c4;
  background: #fff;
}

.ranking_search_condition {
  width: 100%;
  margin-bottom: 30px;
}
.ranking_search_condition th {
  width: 90px;
  padding: 32px 30px 25px 40px;
  border-bottom: 1px solid #e7e9ec;
  font-size: 15px;
  text-align: left;
  vertical-align: top;
}
.ranking_search_condition th + td {
  width: 553px;
}
.ranking_search_condition td {
  padding: 25px 45px 25px 0;
  border-bottom: 1px solid #e7e9ec;
}
.ranking_search_condition tr:last-child th,
.ranking_search_condition tr:last-child td {
  border-bottom: 0;
}
.ranking_search_condition a {
  display: inline-block;
  position: relative;
  width: 122px;
  padding: 12px 20px 12px 15px;
  border: 1px solid #c6c5c4;
  color: #266cc4;
  font-size: 12px;
  text-align: center;
}
.ranking_search_condition a:hover {
  background: #f5f5f5;
  text-decoration: none;
}
.ranking_search_condition a::before {
  display: block;
  position: absolute;
  top: 50%;
  right: 11px;
  width: 4px;
  height: 4px;
  margin-top: -3px;
  transform: rotate(45deg);
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #266cc4;
  content: "";
}

/* 企業検索 */
.search_corp {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: center;
  align-items: center;
  padding: 30px 25px;
}

.search_corp p {
  width: 120px;
  font-size: 17px;
  font-weight: bold;
}

.search_corp .input_wrap {
  position: relative;
  width: -webkit-calc(100% - 120px);
  width: calc(100% - 120px);
}

.search_corp input[type=text] {
  box-sizing: border-box;
  width: 100%;
  padding: 10px 130px 10px 15px;
}

.search_corp .button_submit {
  position: absolute;
  top: 0;
  right: 0;
  width: 120px;
  padding: 10px 0;
  border: none;
  background: #353535;
  background: linear-gradient(to right, #353535 0%, #666 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#353535', endColorstr='#666',GradientType=1 );
  /* IE6-9 */
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  text-shadow: 0 0 2px #333;
}

#company_search_result {
  width: 100%;
}
#company_search_result p {
  width: auto;
  margin-top: 20px;
  margin-left: 120px;
  font-size: 9px;
  font-weight: normal;
  color: blue;
}
#company_search_result .list_check {
  width: 100%;
  margin: 30px 0 0 0;
}

/* 場所検索 */
.list_mode_button {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  position: absolute;
  top: 10px;
  right: 80px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.list_mode_button a {
  display: none;
  width: 245px;
  margin-left: 12px;
  padding: 8px 0;
  border: 1px solid #c6c5c4;
  border-radius: 2px;
  background: #fff;
  color: #333;
  font-size: 14px;
  text-align: center;
  box-shadow: 0 2px 1px rgba(195, 195, 195, 0.35);
}

.list_mode_button a:hover {
  border-color: #21aff8;
  text-decoration: none;
}

.box_slide {
  display: none;
  position: relative;
}

.box_slide .txt_attention {
  margin: 20px 25px;
}

.list_mode {
  display: -webkit-flex;
  display: flex;
  justify-content: center;
  -webkit-justify-content: center;
  margin: 40px 0 0;
  padding: 0;
  list-style: none;
}

.list_mode a {
  display: block;
  width: 210px;
  margin: 0 25px;
  padding: 30px 0;
  border: 1px solid #ccc;
  border-radius: 2px;
  font-size: 14px;
  font-weight: bold;
  line-height: 32px;
  text-align: center;
}

.list_mode a:hover {
  border-color: #21aff8;
  text-decoration: none;
}

.ranking .list_mode i {
  display: block;
  margin: 0 auto 20px;
}

.list_mode strong {
  display: block;
  font-size: 20px;
}

/* チェックボックスリスト */
.ranking .list_check {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ranking .list_check li {
  width: 25%;
  margin-top: 20px;
}

.ranking .list_check li:nth-child(-n+4) {
  margin-top: 0;
}

.ranking .list_check label,
.ranking .check_all label {
  display: block;
  position: relative;
  padding: 0 20px 0 22px;
  cursor: pointer;
}

.ranking .list_check label::before,
.ranking .check_all label::before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 16px;
  height: 16px;
  background: url(/images/tnews/baito/ranking/sprite.png) no-repeat -450px 0;
  content: "";
}

.ranking .list_check .selected::before,
.ranking .check_all .selected::before {
  background-position: -500px 0;
}

.ranking .list_check label input,
.ranking .check_all label input {
  position: absolute;
  filter: opacity(0);
  opacity: 0;
}

/*
クローラー画面
--------------------------*/
.ranking_map_box {
  position: relative;
  margin: 10px 8px 8px;
  padding-bottom: 75px;
  border: 1px solid #c6c5c4;
  box-shadow: 0 0 0 8px #f5f6f7;
}

.ranking .link_prev {
  display: inline-block;
  position: relative;
  margin-left: .5em;
  padding: 5px 20px 5px 15px;
  border: 1px solid #c6c5c4;
  border-radius: 30px;
  color: #266cc4;
  font-size: 11px;
  font-weight: normal;
  line-height: 1.2;
  vertical-align: 2px;
}

.ranking .link_prev::before,
.ranking .link_prev::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 11px;
  width: 4px;
  height: 4px;
  margin-top: -3px;
  transform: rotate(45deg);
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #266cc4;
  content: "";
}

.ranking .link_prev::after {
  right: 8px;
}

.ranking .link_prev:hover {
  background: #f5f5f5;
  text-decoration: none;
}

.ranking_map_box .heading {
  padding: 15px 25px;
  border-bottom: 1px solid #c6c5c4;
  background: none;
  font-size: 17px;
}

.ranking .search_other {
  position: absolute;
  top: 20px;
  right: 20px;
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: right;
}

.ranking .search_other li {
  display: inline-block;
  margin-left: 10px;
  font-size: 11px;
}

/* リンク一覧 */
.list_primary {
  margin: 0 50px;
  padding: 0;
  list-style: none;
}

.list_primary > li {
  margin: 30px 0 0;
  padding: 0 10px 20px;
  border-bottom: 1px dashed #c6c5c4;
}

.list_primary_title {
  display: inline-block;
  margin: 0 0 15px;
  font-size: 16px;
  font-weight: bold;
}

a.list_primary_title::before {
  display: inline-block;
  border-width: 4px 6px;
  border-style: solid;
  border-color: transparent transparent transparent #46aaff;
  content: "";
  vertical-align: 2px;
}

span.list_primary_title::before {
  display: inline-block;
  border-width: 4px 6px;
  border-style: solid;
  border-color: transparent transparent transparent #46aaff;
  content: "";
  vertical-align: 2px;
}

.list_secondary {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  margin: 10px 50px;
  padding: 0;
  list-style: none;
}

.list_primary .list_secondary {
  margin: 0;
}

.list_secondary.list_check {
  margin: 20px 0 0 20px;
}

.list_secondary li {
  width: 25%;
  margin-top: 20px;
}

.list_secondary a {
  display: block;
  position: relative;
  padding: 0 15px;
  color: #266cc4;
}

.list_secondary a::before {
  display: block;
  position: absolute;
  top: .5em;
  left: 0;
  width: 4px;
  height: 4px;
  transform: rotate(45deg);
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #8d8d8d;
  content: "";
}

/* 都道府県一覧 */
.list_prefecture {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: center;
  align-items: center;
  margin: 0  65px;
  padding: 0 0 30px;
  border-bottom: 1px dashed #c6c5c4;
}

.list_prefecture dt {
  margin: 30px 0 0;
  width: 180px;
  font-size: 16px;
  font-weight: bold;
}

.list_prefecture dd {
  margin: 30px 0 0;
  width: -webkit-calc(100% - 180px);
  width: calc(100% - 180px);
}

.list_prefecture ul {
  display: -webkit-flex;
  display: flex;
  margin: 0;
  padding: 0;
  list-style: none;
}

.list_prefecture li {
  margin-right: 35px;
  font-size: 13px;
}

.list_prefecture li:last-child {
  margin-right: 0;
}

.list_prefecture a {
  color: #266cc4;
}

/*
モーダル
--------------------------*/
#cboxLoadedContent {
  background: #f5f6f7;
}

#cboxClose {
  top: 10px;
  right: 10px;
  width: 40px;
  height: 40px;
  background: #21aff8;
  color: #fff;
  font-size: 30px;
  line-height: 40px;
  text-align: center;
  text-indent: 0;
}

.modal_wrap {
  margin: 0;
  padding: 10px;
}

.modal_headline {
  position: relative;
  width: 290px;
  height: 53px;
  margin-bottom: -1px;
  padding-top: 2px;
  border: 1px solid #c6c5c4;
  border-bottom-color: #fff;
  border-radius: 2px 2px 0;
  background: #fff;
  font-size: 20px;
  font-weight: bold;
  line-height: 53px;
  text-align: center;
  z-index: 2;
}

.modal_headline::before {
  position: absolute;
  top: -1px;
  right: -1px;
  left: -1px;
  border-top: 3px solid #21aff8;
  border-radius: 2px 2px 0 0;
  content: "";
}

.modal_headline span {
  font-size: 16px;
}

.modal_heading {
  height: 25px;
  margin: 0 25px;
  padding: 15px 0 10px;
  border-bottom: 1px solid #e7e9ec;
  font-size: 17px;
  font-weight: bold;
  line-height: 25px;
}

.modal_heading .link_prev {
  position: relative;
  top: -1px;
  vertical-align: top;
}

.modal_content {
  position: relative;
  margin: 0;
  height: 438px;
  padding-bottom: 82px;
  border: 1px solid #c6c5c4;
  background: #fff;
}

.modal_content_place {
  height: 412px;
  padding-bottom: 108px;
}

.modal_overflow {
  overflow: auto;
}

.modal_content .list_check {
  margin: 30px 50px 0;
}

.modal_footer {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: flex-start;
  position: absolute;
  right: 25px;
  bottom: 0;
  left: 25px;
  padding: 15px 0 30px;
  border-top: 1px solid #e7e9ec;
}

.modal_content_place .modal_footer {
  padding-bottom: 40px;
}

.modal_footer::after {
  display: none;
}

.modal_footer dl {
  width: -webkit-calc(100% - 400px);
  width: calc(100% - 400px);
  margin: 0 15px;
  line-height: 1.2;
}

.modal_footer dt {
  margin: 5px 0 0;
  font-weight: bold;
}

.modal_footer dd {
  margin: 5px 0 0;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.ranking .button_decision {
  position: relative;
  width: 210px;
  padding: 14px 0;
  border: none;
  background: #353535;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  text-shadow: 0 0 2px #333;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
}

.ranking .button_decision::before {
  display: block;
  position: absolute;
  top: 50%;
  right: 11px;
  width: 6px;
  height: 6px;
  margin-top: -4px;
  transform: rotate(45deg);
  border-width: 1px 1px 0 0;
  border-style: solid;
  border-color: #fff;
  content: "";
}

.modal_footer p {
  position: absolute;
  right: 0;
  bottom: 5px;
  font-size: 12px;
}
