@charset "utf-8";
@font-face {
  font-family: "fontello";
  src: url("../../font/fontello.eot?45259564");
  src: url("../../font/fontello.eot?45259564#iefix") format("embedded-opentype"),
    url("../../font/fontello.woff?45259564") format("woff"),
    url("../../font/fontello.ttf?45259564") format("truetype"),
    url("../../font/fontello.svg?45259564#fontello") format("svg");
  font-weight: normal;
  font-style: normal;
}

#review h1.pageTtl span {
  background-image: url(https://img.undernavi.com/chugoku/club-ador/parts/title_review.png);
}

#review #content > section > .inner {
  padding: 10px;
  text-align: left;
}

/*お店の点数*/
.point {
  padding: 15px 20px;
  margin-bottom: 20px;
  border: 1px solid #999;
}

.point .chart {
  float: left;
  width: 250px;
  padding: 10px 20px;
  margin-right: 30px;
  background: #fff;
  text-align: center;
}

.point .inner {
  overflow: hidden;
}

.point h4 {
  margin-bottom: 10px;
  font-weight: bold;
  font-size: 123.1%;
}

.point .star {
  margin-bottom: 30px;
}

.point .star li {
  float: left;
  width: 50%;
  width: -webkit-calc((100% - 15px) / 2);
  width: calc((100% - 15px) / 2);
  margin: 0 15px 10px 0;
  white-space: nowrap;
  font-size: 0;
}

.point .star li:nth-child(even) {
  margin-right: 0;
}

.point .star li strong {
  display: inline-block;
  width: 7em;
  font-size: 16px;
  vertical-align: middle;
}

.point .star li span {
  position: relative;
  overflow: hidden;
  display: inline-block;
  width: 6em;
  color: #fec002;
  white-space: nowrap;
  text-indent: 100%;
  vertical-align: middle;
  font-size: 18px;
}
.point .star li span::before {
  content: "\e80b\e809\e809\e809\e809"; /*0.5*/
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -0.5em;
  color: #fec002;
  font-family: "fontello";
  letter-spacing: 0.2em;
  text-indent: 0;
}
.point .star li span.p05::before {
  content: "\e80b\e809\e809\e809\e809";
} /*0.5*/
.point .star li span.p10::before {
  content: "\e808\e809\e809\e809\e809";
} /*1.0*/
.point .star li span.p15::before {
  content: "\e808\e80b\e809\e809\e809";
} /*1.5*/
.point .star li span.p20::before {
  content: "\e808\e808\e809\e809\e809";
} /*2.0*/
.point .star li span.p25::before {
  content: "\e808\e808\e80b\e809\e809";
} /*2.5*/
.point .star li span.p30::before {
  content: "\e808\e808\e808\e809\e809";
} /*3.0*/
.point .star li span.p35::before {
  content: "\e808\e808\e808\e80b\e809";
} /*3.5*/
.point .star li span.p40::before {
  content: "\e808\e808\e808\e808\e809";
} /*4.0*/
.point .star li span.p45::before {
  content: "\e808\e808\e808\e808\e80b";
} /*4.5*/
.point .star li span.p50::before {
  content: "\e808\e808\e808\e808\e808";
} /*5.0*/

.point .total {
  padding: 15px;
  border: 1px solid #ccccca;
  background: #f0f7ff;
  text-align: center;
  font-size: 131%;
}

.point .total span {
  font-size: 30px;
  font-weight: bold;
  color: #f00;
}

.sort {
  margin-bottom: 20px;
  text-align: center;
  font-size: 0;
}

.sort li {
  display: inline-block;
  font-size: 13px;
}

.sort li:not(:first-child)::before {
  content: "｜";
  margin: 0 1em;
}

/*口コミ一覧*/
.reviewlist {
  position: relative;
  margin: 0 10px 20px;
}

.reviewlist li {
  padding: 15px;
  margin-bottom: 15px;
  border: 1px solid #999;
}

.reviewlist li figure {
  float: left;
  width: 60px;
  margin: 0 20px 10px 0;
  text-align: center;
  font-size: 85%;
}

.reviewlist li figure span {
  display: block;
  overflow: hidden;
  width: 100%;
  height: 60px;
  margin-bottom: 10px;
}

.reviewlist li figure img {
  max-width: 100%;
}

.reviewlist li .inner {
  overflow: hidden;
}

.reviewlist li .inner h4 {
  margin-bottom: 5px;
  font-size: 116%;
  font-weight: bold;
}

.reviewlist li .inner h4 small {
  margin-left: 1em;
  font-size: 11px;
  font-weight: normal;
  color: #777;
}

.reviewlist li > .alignR {
  clear: both;
}

.reviewlist li > .alignR span {
  font-weight: bold;
}

.reviewlist.close li:not([class="closemsg"]) {
  -webkit-filter: blur(3px);
  filter: blur(3px);
}

.reviewlist:not([class*="close"]) li.closemsg {
  display: none;
}

.reviewlist li.closemsg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  border: none;
  background: transparent;
}

.reviewlist li.closemsg a {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 80%;
  height: 50px;
  line-height: 50px;
  margin: auto;
  background: #efefef;
  border: solid 1px #999;
  color: #000;
  text-decoration: none;
  text-align: center;
  font-size: 131%;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .reviewlist li.closemsg:not(:target) {
    background-color: #dddddd\9;
    background-color: #dddddd;
  }
} /* IE10 */

/*************************************************************************************************

口コミ新設

****************************************************************************************************/
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.jc_sb {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.ai_c {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.flex_wrap {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#review #content > section > .inner.rv_inner {
  padding: 30px 20px;
}
#sort_form::after {
  content: "";
  display: inline-block;
  border: 6px solid transparent;
  border-top-color: transparent;
  border-top-style: solid;
  border-top-width: 6px;
  border-top: 11px solid #000;
  position: absolute;
  right: 10px;
  top: 40%;
  pointer-events: none;
}

.sortLink {
  margin-bottom: 20px;
}
.sortLink li {
  width: calc(100% / 3);
  font-size: 16px;
  background: #f5f5f5 !important;
  margin-right: 5px;
  border-radius: 5px 5px 0px 0;
}
.sortLink li a {
  display: block;
  padding: 10px;
  text-align: center;
  text-decoration: none;
  color: #333;
}
.sortLink li.current a {
  position: relative;
  background: #c80037;
  color: #fff;
  border-radius: 5px 5px 0 0;
}

.sortLink li.current a::after {
  content: "";
  display: inline-block;
  position: absolute;
  left: calc(50% - 10px);
  bottom: -20px;
  border: 10px solid transparent;
  border-top: 10px solid #c80037;
}
.modal_box {
  position: relative;
}
.review_write {
  color: #c90037 !important;
  font-size: 20px;
  font-weight: bold;
  border: solid 1px #c90037;
  border-radius: 30px;
  text-align: center;
  padding: 15px 0;
  width: 600px;
  margin: 0 auto 20px;
  cursor: pointer;
  display: block;
  text-decoration: none !important;
}
.review_write:hover,
.review_write a:hover {
  text-decoration: underline !important;
}
#modal {
  position: absolute;
  top: 60px;
  left: 220px;
  z-index: 999;
  width: 420px;
  padding: 20px;
  background: #fff;
  box-shadow: 0 0 5px #999;
}
.evaluation {
  text-align: center;
}
.evaluation li:first-child {
  margin-bottom: 5px;
}
.evaluation li {
  width: 340px;
  margin: auto;
  text-align: ;
  text-align: left;
}
.eva_item {
  font-size: 20px;
  font-weight: bold;
  margin-right: 20px;
}
.eva_el.star_icon {
  display: inline-block;
  font-size: 20px;
  vertical-align: top;
}
.eva_star {
  font-size: 20px;
  font-weight: bold;
  float: right;
}

.eva_star {
  font-size: 20px;
  font-weight: bold;
  float: right;
}
.point .star li span.p35::before,
.star_icon.p35::before,
.star_icon.p36::before,
.star_icon.p37::before,
.star_icon.p38::before,
.star_icon.p39::before {
  content: "\e808\e808\e808\e80b\e809";
}

.star_icon {
  position: relative;
  width: 6.5em;
  color: #000;
  white-space: nowrap;
  text-indent: 100%;
  vertical-align: middle;
  font-size: 15px;
  font-weight: bold;
}
.star_icon::before {
  content: "\e80b\e809\e809\e809\e809";
  position: absolute;
  top: 0;
  left: 0;
  color: #fec002;
  font-family: "fontello";
  letter-spacing: 0.2em;
  text-indent: 0;
}
.star_icon.p05::before,
.star_icon.p06::before,
.star_icon.p07::before,
.star_icon.p08::before,
.star_icon.p09::before {
  content: "\e80b\e809\e809\e809\e809";
} /*0.5*/

.star_icon.p10::before,
.star_icon.p11::before,
.star_icon.p12::before,
.star_icon.p13::before,
.star_icon.p14::before {
  content: "\e808\e809\e809\e809\e809";
} /*1.0*/

.star_icon.p015::before,
.star_icon.p016::before,
.star_icon.p017::before,
.star_icon.p01::before,
.star_icon.p019::before {
  content: "\e808\e80b\e809\e809\e809";
} /*1.5*/

.star_icon.p20::before,
.star_icon.p21::before,
.star_icon.p22::before,
.star_icon.p23::before,
.star_icon.p24::before {
  content: "\e808\e808\e809\e809\e809";
} /*2.0*/

.star_icon.p25::before,
.star_icon.p26::before,
.star_icon.p27::before,
.star_icon.p28::before,
.star_icon.p29::before {
  content: "\e808\e808\e80b\e809\e809";
} /*2.5*/

.star_icon.p30::before,
.star_icon.p31::before,
.star_icon.p32::before,
.star_icon.p33::before,
.star_icon.p34::before {
  content: "\e808\e808\e808\e809\e809";
} /*3.0*/

.star_icon.p35::before,
.star_icon.p36::before,
.star_icon.p37::before,
.star_icon.p38::before,
.star_icon.p39::before {
  content: "\e808\e808\e808\e80b\e809";
} /*3.5*/

.star_icon.p40::before,
.star_icon.p41::before,
.star_icon.p42::before,
.star_icon.p43::before,
.star_icon.p44::before {
  content: "\e808\e808\e808\e808\e809";
} /*4.0*/

.star_icon.p45::before,
.star_icon.p46::before,
.star_icon.p47::before,
.star_icon.p48::before,
.star_icon.p49::before {
  content: "\e808\e808\e808\e808\e80b";
} /*4.5*/

.star_icon.p50::before {
  content: "\e808\e808\e808\e808\e808";
} /*5.0*/

.review_form {
  /*width: 200px;*/
  margin-left: auto;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
#sort_form::after {
  content: "";
  display: inline-block;
  border: 6px solid transparent;
  border-top-color: transparent;
  border-top-style: solid;
  border-top-width: 6px;
  border-top: 11px solid #000;
  position: absolute;
  right: 10px;
  top: 40%;
  pointer-events: none;
}
.review_form select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  line-height: 30px;
  padding: 0 5px;
  border: 1px solid #d9d9d9;
  font-size: 13px;
  vertical-align: middle;
  width: 200px;
  margin-left: 120px;
}
.r_name {
  font-size: 17px;
  font-weight: bold;
  margin-bottom: 5px;
}
.r_name a {
  text-decoration: none;
}
.good_icon {
  margin-right: 10px;
}
.gb_icon img {
  margin-right: 10px;
}
.gb_icon em {
  font-size: 16px;
  font-weight: bold;
}
.comment {
  font-size: 15px;
}

.date {
  font-size: 12px;
}
.comment a {
  color: #c80037;
  font-weight: bold;
  text-decoration: underline;
  font-size: 13px;
}
#reviewlist figure {
  width: 100px;
  height: 100px;
  overflow: hidden;
}
#reviewlist figure img {
  max-width: 100%;
}
#reviewlist .bt_box.flex figure {
  width: 40px;
  height: 40px;
  overflow: hidden;
}
.bt_box02 .l_prf {
  font-size: 12px;
}
#reviewlist ul li {
  border-bottom: 1px solid #e5e5e5;
  margin-bottom: 15px;
  padding-bottom: 15px;
}
.l_s_name a {
  font-size: 14px;
  font-weight: bold;
  text-decoration: none;
}

.bt_box.flex figure {
  margin-right: 10px;
}
.reviewlist_el {
  width: 840px;
  margin-left: 15px;
}
.modal_box .btnarea {
  margin: 0 auto 0;
  text-align: center;
}
.modal_box .btn {
  display: inline-block;
  width: 140px;
  background: #efefef;
  text-align: center;
}
.modal_box .btn a {
  padding: 10px;
  display: block;
  color: #333;
  text-decoration: none;
  font-size: 13px;
}
.modal_box:not(:last-child) {
  margin-right: 10px;
}
.btn input[type="submit"] {
  font-size: 15px;
  color: #000;
  display: block;
  width: 100%;
  padding: 6px !important;
  border: none;
  padding: 5px;
  height: 35px;
  cursor: pointer;
}
.modal_box input[type="text"],
.modal_box input[type="password"] {
  height: 24px;
  width: 100%;
}
.review_mdl_list li {
  margin-bottom: 10px;
}
.review_mdl_list li:last-child {
  text-align: center;
}

.review_mdl_list li:last-child input {
  margin-right: 10px;
  vertical-align: middle;
}
.member_login .closebtn {
  position: absolute;
  top: -60px;
  right: 0px;
}
.closebtn {
  text-align: center;
  padding: 20px 0 0;
  font-weight: bold;
  font-size: 15px;
  cursor: pointer;
}
.review_mdl_list li:last-child {
  font-size: 16px;
}
.btn a:hover,
.btn input[type="submit"]:hover,
.submit button:hover {
  opacity: 0.7;
}
.review_ttl {
  font-weight: bold;
  font-size: 15px;
}
#modal.member_login {
  width: 95%;
  left: 10px;
  position: fixed;
  width: 800px;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(calc(-50% - 0.5px));
  z-index: 999;
  color: #000 !important;
}
.title03 {
  color: #c90037;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
}
.review_write_select {
  width: 200px;
  position: relative;
}
.satisfaction {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 7px;
  display: block;
}
.level_satisfaction img {
  vertical-align: middle;
  display: inline-block;
}

.star_box select {
  border: none;
  color: #fec002;
  font-size: 42px;
  padding: 0;
  margin: 0 0 0 -10px;
  line-height: 40px;
}
.star_box option {
  font-size: 16px;
}
.sta_g {
  color: gray;
}
.star_g {
  color: gold;
}
.reviewdetail .level {
  border: none;
  color: #fec002;
  font-size: 35px;
  letter-spacing: 11px;
}
select {
  border: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  line-height: 30px;
  padding: 0 5px;
  border: 1px solid #d9d9d9;
  font-size: 13px;
  vertical-align: middle;
}
.modal_box .title_input input {
  width: 600px;
  margin-right: 10px;
  height: 32px;
  line-height: 32px;
  font-size: 15px;
}
.check {
  color: #c90037;
  font-weight: bold;
  font-size: 15px;
}
.textarea_comment textarea {
  font-size: 15px;
}
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: 110px;
  padding: 5px;
  border: 1px solid #d9d9d9;
  font-size: 13px;
}
input[type="text"],
input[type="password"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  line-height: 24px;
  padding: 0 5px;
  border: 1px solid #d9d9d9;
  border-radius: 0;
  font-size: 13px;
  vertical-align: middle;
}
.terms {
  background: #f6f6f6;
  padding: 10px;
  font-size: 14px;
  height: 60px;
  overflow-y: scroll;
}
.tems_box {
  text-align: center;
}
.tems_btn,
.submit {
  text-align: center;
}
.tems_btn {
  display: inline-block;
  margin: 0 10px 20px;
}
.tems_btn input[type="checkbox"] {
  width: 20px;
  height: 20px;
  -moz-transform: scale(1.4);
  -webkit-transform: scale(1.4);
  transform: scale(1.4);
  display: none;
}
.check_box {
  font-size: 16px;
  padding-left: 30px;
  position: relative;
}
input[type="checkbox"]:checked + .check_box::before {
  background-color: red;
}
.check_box::before {
  background-color: white;
  border: 2px solid red;
  content: "";
  display: block;
  position: absolute;
  top: 2px;
  left: 0;
  height: 16px;
  width: 16px;
}
input[type="checkbox"]:checked + .check_box::after {
  border-bottom: 2px solid white;
  border-right: 2px solid white;
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  left: 5px;
  height: 11px;
  width: 6px;
  transform: rotate(40deg);
}
.reviewlist_el:hover a {
  text-decoration: underline;
}
.submit button {
  background: #c90037;
  border: none;
  color: #fff;
  width: 370px;
  height: 45px;
  line-height: 45px;
  border-radius: 5px;
  font-size: 17px;
}
.post_fix button {
  background: #999999;
  border: none;
  color: #fff;
  width: 370px;
  height: 45px;
  line-height: 45px;
  border-radius: 5px;
  font-size: 17px;
  display: block;
  text-align: center;
  text-decoration: none;
}

.errMsg {
  color: #ff1d0c;
  margin-bottom: 10px;
  padding: 10px;
  border: solid 2px #ff1d0c;
  font-size: 15px;
}
#overlay {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.6);
  display: none;
  z-index: 1;
}
.review_write_select::after {
  content: "";
  display: inline-block;
  border: 6px solid transparent;
  border-top-color: transparent;
  border-top-style: solid;
  border-top-width: 6px;
  border-top: 11px solid #000;
  position: absolute;
  right: 10px;
  top: 40%;
  pointer-events: none;
}

span.triangle {
  position: absolute;
  right: 90px;
  top: -20px;
  display: inline-block;
  width: 40px;
  height: 40px;
  background: #fff;
  transform: rotate(45deg);
  box-shadow: 0 0 5px #999;
}
span.triangle::after {
  content: "";
  position: absolute;
  right: -22px;
  top: 20px;
  display: inline-block;
  width: 70px;
  height: 30px;
  background: #fff;
  transform: rotate(-45deg);
}
/*********************************************************************

review_write_confirm

**********************************************************************/

.lady_write_ttl {
  position: relative;
  margin-bottom: 20px;
  color: #c90037;
  font-size: 20px;
  font-weight: bold;
}
.reviewdetail .rev_n {
  font-size: 15px;
  font-weight: bold;
  color: #c90037;
}
.reviewdetail .review_box {
  background: #f6f6f6;
  padding: 20px;
  margin-bottom: 40px;
  font-size: 15px;
}
.reviewdetail .review_comment {
  line-height: 1.4;
  height: 350px;
  overflow-y: scroll;
}
.reviewdetail .satisfaction {
  margin-right: 20px;
  font-size: 15px;
  font-weight: bold;
}

.reviewdetail .rev_ttl {
  font-size: 15px;
  font-weight: bold;
}

.reviewdetail .level_satisfaction.mb20 {
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
}
.lady_write_ttl02 {
  font-weight: bold;
  font-size: 20px;
}
.reviewdetail_end .end_comment {
  font-size: 15px;
  margin-bottom: 50px;
}
.reviewdetail_end .review_btn {
  width: 90%;
  margin: 0 auto;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.review_btn.flex.jc_sb a {
  width: 340px;
}
.review_btn.flex.jc_sb .btn {
  width: auto;
}
.reviewdetail_end .btn a {
  background: #333333;
  color: #fff;
  width: 360px;
  height: 42px;
  display: block;
  text-align: center;
  line-height: 42px;
  border-radius: 5px;
  text-decoration: none;
  padding: 0;
}
.reviewdetail_end .btn a:hover,
.post_fix:hover {
  opacity: 0.7;
}
.ajax_pager .now {
  margin: 10px 0;
  font-size: 16px;
}
.ajax_pager .now span.big {
  font-size: 1.4em;
  color: #c90037;
}
.ajax_pager .now span {
  font-weight: bold;
}

.rating {
  line-height: 1;
  color: gold;
  font-size: 32px;
}

.rating input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.rating label {
  display: inline-block;
}

.rating input:focus + label {
  outline: 1px solid currentColor;
}

.rating input:checked + label ~ label {
  color: grey;
}
#modal,
#modal02 {
  color: #000 !important;
}
.review_input_txt {
  margin: 0 0 20px;
}

.q {
  margin-bottom: 20px;
  display: grid;
  gap: 10px;
  justify-content: center;
}
.q__text {
  font-weight: bold;
  text-align: center;
  font-size: 16px;
}
.q__checkboxes {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.textarea_comment {
  height: 110px;
  margin-bottom: 5px;
}
@media screen and (max-width: 1400px) {
  #modal.member_login {
  }
  .title03 {
    margin-bottom: 5px;
  }
  .mb20.textarea_comment textarea {
    height: 100px;
  }
  .review_write_select {
    margin-bottom: 10px;
  }
  .tems_btn.mb20 {
    margin-bottom: 10px;
  }
  .terms {
    height: 50px;
  }
  .reviewdetail .review_comment {
    height: 100px;
  }
}
/********************************************************

IEのみ適応

********************************************************/
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop,
  #modal {
    transform: translate(-50%, -50%);
  }
}

/*position:fixedが効かないの初期化*/
.sb-slide,
#sb-site,
.sb-site-container,
.sb-slidebar {
  transform: none !important;
}

/* 返信コメント
----------------------------------------------*/
.review_reply {
  margin-top: 10px;
}
.replay_ttl.mb10::before {
  content: "";
  display: inline-block;
  width: 27px;
  height: 27px;
  background: url(https://img.undernavi.com/front/pc/area/pref/review/icon_reply.png)
    center top / contain no-repeat;
  vertical-align: middle;
  margin-right: 10px;
}
.review_btn {
  display: block;
  width: 31%;
  margin: 0 auto;
  color: #333 !important;
  border: 1px solid #ccc;
  text-align: center;
  box-sizing: border-box;
  padding: 10px 0;
  border-radius: 5px;
  margin-bottom: 15px;
  text-decoration: none !important;
  font-size: 16px;
}
