@charset "UTF-8";
/*!===========================
style.cssはSassから生成されていますので、
直接編集しないようご注意ください。
===========================*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap");
html, body, p, ol, ul, li, dl, dt, dd, blockquote, figure, fieldset, legend, textarea, pre, iframe, hr, h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0; }

html {
  -webkit-text-size-adjust: 100%; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal; }

ul, ol {
  list-style: none; }

button, input, select, textarea {
  margin: 0; }

html, * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

*,
::before,
::after {
  background-repeat: no-repeat;
  box-sizing: inherit; }

img, embed, iframe, object, audio, video {
  height: auto;
  max-width: 100%; }

img {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  vertical-align: bottom; }

iframe {
  border: 0; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0;
  text-align: left; }

article,
aside,
figcaption,
figure,
footer,
header,
main,
nav,
section {
  display: block; }

a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects; }

a:active,
a:hover {
  outline-width: 0; }

b,
strong {
  font-weight: bold; }

.clear {
  clear: both; }

.cf:before, .cf:after {
  content: "";
  display: block; }

.cf:after {
  clear: both; }

.cf {
  zoom: 1;
  overflow: hidden; }

.fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100; }

.table_w {
  width: 100%;
  display: table;
  table-layout: fixed; }

.table_c {
  display: table-cell;
  vertical-align: top; }

.fa {
  display: inline-block;
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.align_center {
  text-align: center !important; }

.align_left {
  text-align: left !important; }

.align_right {
  text-align: right !important; }

.flex {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start; }

/* ===================================================================
	utility
=================================================================== */
.mt05 {
  margin-top: 5px; }

.mt10 {
  margin-top: 10px; }

.mt20 {
  margin-top: 20px; }

.mt30 {
  margin-top: 30px; }

.mt40 {
  margin-top: 40px; }

.mt50 {
  margin-top: 50px; }

.mt60 {
  margin-top: 60px; }

.txt_c {
  text-align: center; }

/* ===================================================================
	form
=================================================================== */
button,
input,
optgroup,
select,
textarea {
  margin: 0;
  font: inherit;
  color: inherit; }

button {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer; }

button[disabled],
html input[disabled] {
  cursor: default; }

button::-moz-focus-inner,
input::-moz-focus-inner {
  padding: 0;
  border: 0; }

input {
  line-height: normal; }

input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0; }

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

input[type="search"] {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  -webkit-appearance: textfield; }

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

fieldset {
  padding: .35em .625em .75em;
  margin: 0 2px;
  border: 1px solid #c0c0c0; }

legend {
  padding: 0;
  border: 0; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

@media only screen and (min-width: 769px) {
  .sp {
    display: none !important; } }
@media only screen and (max-width: 768px) {
  .pc {
    display: none !important; }

  .sp {
    display: block !important; } }
@keyframes shiny {
  0% {
    transform: scale(0) rotate(25deg);
    opacity: 0; }
  50% {
    transform: scale(1) rotate(25deg);
    opacity: 1; }
  100% {
    transform: scale(50) rotate(25deg);
    opacity: 0; } }
@keyframes animationbtn {
  0% {
    box-shadow: 0 3px 0 #d65f08;
    top: 0px; }
  10% {
    box-shadow: 0 0 0 #d65f08;
    top: 6px; }
  20% {
    box-shadow: 0 3px 0 #d65f08;
    top: 0px; }
  30% {
    box-shadow: 0 0 0 #d65f08;
    top: 6px; }
  40% {
    box-shadow: 0 3px 0 #d65f08;
    top: 0px; } }
.cta_btn {
  position: relative;
  -webkit-box-shadow: 0 3px 0 #d65f08;
  -moz-box-shadow: 0 3px 0 #d65f08;
  box-shadow: 0 3px 0 #d65f08;
  background: #fb700a;
  -moz-transition: 0.3s;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  -ms-transition: 0.3s;
  transition: 0.3s;
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  -o-border-radius: 5px;
  -ms-border-radius: 5px; }
  .cta_btn.shiny {
    overflow: hidden; }
    .cta_btn.shiny::after {
      content: '';
      position: absolute;
      top: -100px;
      left: -100px;
      width: 50px;
      height: 50px;
      background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, white 100%, rgba(255, 255, 255, 0) 0%);
      animation-name: shiny;
      animation-duration: 4s;
      animation-timing-function: ease-in-out;
      animation-iteration-count: infinite;
      pointer-events: none;
      z-index: 10; }
  .cta_btn a {
    display: block;
    text-decoration: none;
    line-height: 1.4;
    color: #fff !important;
    font-weight: 700;
    font-size: 18px;
    font-size: 1.8rem;
    text-align: center;
    padding: 20px; }
  .cta_btn.animation {
    animation: animationbtn 2s infinite; }

html, h1, h2, h3, h4, h5, p, ul, li, table, tr, th, td, dl, dt, dd {
  margin: 0;
  padding: 0; }

html {
  scroll-behavior: smooth; }

body {
  position: relative;
  font-family: 'Arial', sans-serif;
  letter-spacing: .02em;
  line-height: 130%;
  font-size: 13.5px;
  margin: 0;
  padding: 0;
  overflow-y: scroll;
  color: #65391f;
  background: url(../images/bgBody.gif) repeat-x #f0f0f0; }

li {
  list-style-type: none;
  list-style-position: outside; }

img {
  vertical-align: bottom; }

a {
  text-decoration: underline;
  color: #007130; }

a:visited {
  color: #03f;
  color: #007130; }

a:hover {
  color: #f66; }

a:focus {
  outline: none; }

a img {
  border: none; }

a:hover img {
  opacity: 0.8;
  _filter: alpha(opacity=80); }

ul, ol {
  list-style-type: none; }

footer, header, hgroup, menu, nav, section {
  display: block; }

img {
  border: 0;
  vertical-align: bottom; }

table {
  border-spacing: 0;
  empty-cells: show; }

hr {
  height: 0;
  border: 0;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #fff; }

footer .ft_menu .p_mark {
  padding: 20px;
  display: flex; }
  footer .ft_menu .p_mark .image {
    width: 60px; }
    footer .ft_menu .p_mark .image img {
      width: 100%; }
  footer .ft_menu .p_mark .pra_txt {
    width: calc(100% - 60px);
    padding-left: 10px;
    font-size: .7em; }
footer .ft_menu .ft_nav {
  margin: 0 auto;
  text-align: center;
  padding: 0 0 10px;
  border: none; }
  footer .ft_menu .ft_nav ul {
    display: flex;
    justify-content: space-around; }
  footer .ft_menu .ft_nav li {
    display: inline-block;
    width: auto !important; }
    footer .ft_menu .ft_nav li a {
      color: #333;
      font-size: .8em; }
footer .copyright {
  margin-top: 0px;
  text-align: center;
  padding: 5px 0;
  color: #fff;
  background: #4e99a3;
  background: -webkit-linear-gradient(to right, #1C9BA5 0%, #00A0E9 100%);
  background: linear-gradient(to right, #1C9BA5 0%, #00A0E9 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#4e99a3', endColorstr=' #4a9fe2', GradientType=1);
  font-size: .8em; }

.red {
  color: #F80004; }

.orange {
  color: #fb660c; }

.bgc_ffffff {
  background-color: #fff;
  margin-top: 15px; }

.bgc_f0f0f0 {
  background-color: #f0f0f0; }
  .bgc_f0f0f0 .day {
    position: absolute;
    display: flex;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    background: #e78976;
    padding: 5px 6px;
    color: #fff;
    font-weight: 700;
    text-align: center; }
    .bgc_f0f0f0 .day > .day-txt {
      display: block;
      width: 100%;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: .04em; }

.img_maru {
  width: 10%; }

.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

.clearfix {
  display: inline-block; }

.cf:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden; }

.cf {
  min-height: 1px; }

.sokujitu img {
  max-width: 100%;
  height: auto;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

.ancher_btn {
  text-align: center; }

.marker {
  background: linear-gradient(transparent 60%, #fdf129 60%); }

.header {
  position: relative;
  width: 100%;
  border-bottom: 1px solid #6BADD9;
  z-index: 100;
  background: #fff; }
  .header .header__pr {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: inline-block;
    padding: 5px 10px;
    border: 1px solid #999;
    border-radius: 5px;
    z-index: 10;
    right: 10px;
    font-size: 10px;
    background: #fff;
    line-height: 1; }
  .header .site_logo {
    width: 100%;
    box-sizing: border-box;
    padding: 5px; }
    .header .site_logo a {
      display: block;
      padding: 5px;
      width: 80%;
      box-sizing: border-box; }
      .header .site_logo a img {
        max-width: 100%; }

#fv #fv_inner {
  position: relative; }
  #fv #fv_inner img {
    width: 100%; }

.fv_top {
  position: absolute;
  top: 18%;
  left: 22%;
  font-size: 14px;
  font-weight: 600;
  color: #683E25;
  text-align: center; }

.main_ttl {
  background-color: #84bd4a;
  color: #fff;
  margin: 0 auto;
  text-align: center;
  padding: .5em 0;
  font-size: 18px;
  line-height: 1.3;
  background-size: 20px 20px;
  background-attachment: fixed;
  min-height: 60px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center; }
  .main_ttl > * {
    font-weight: 700; }
  .main_ttl span {
    color: #FEF500; }
  .main_ttl strong {
    font-size: 150%; }

.idx_list {
  padding: .8em 0.75em 2.5em;
  background: #fff; }
  .idx_list ul {
    margin-bottom: 1em; }
    .idx_list ul li {
      display: flex;
      align-items: center;
      padding: .5em .5em .5em 3.5em;
      border: solid 1px #e5e1df;
      border-top: none; }
      .idx_list ul li:nth-child(1) {
        background: transparent url("../images/ico_idx_rank_01.png") 0.4em center/35px no-repeat;
        border: solid 2px #d83457;
        background-color: #fffdea; }
      .idx_list ul li:nth-child(2) {
        background: transparent url("../images/ico_idx_rank_02.png") 0.4em center/35px no-repeat; }
      .idx_list ul li:nth-child(3) {
        background: transparent url("../images/ico_idx_rank_03.png") 0.4em center/35px no-repeat; }
      .idx_list ul li .img {
        width: 20%; }
      .idx_list ul li .txt {
        flex: 1;
        margin-left: .8em;
        font-size: 12px; }
        .idx_list ul li .txt > a {
          font-weight: 700;
          color: #440000;
          font-size: 16px; }
        .idx_list ul li .txt p span {
          color: #d83457;
          font-weight: 700; }

.section_worry .inner {
  padding: 1em;
  background: #fff; }
.section_worry h2 {
  margin-bottom: 2em;
  text-align: center; }
  .section_worry h2 img {
    max-width: 255px; }
.section_worry .worry_wrap {
  position: relative;
  margin-bottom: 1em;
  text-align: center; }
  .section_worry .worry_wrap > img {
    width: 30%;
    margin-right: 7%; }
  .section_worry .worry_wrap .fadein {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s ease, transform 0.8s ease; }
    .section_worry .worry_wrap .fadein.is-show {
      opacity: 1;
      transform: translateY(0); }
  .section_worry .worry_wrap .baloon {
    position: absolute;
    width: 37%; }
    .section_worry .worry_wrap .baloon:nth-child(2) {
      right: 0;
      top: 0; }
      .section_worry .worry_wrap .baloon:nth-child(2).is-show {
        transition-delay: 0s; }
    .section_worry .worry_wrap .baloon:nth-child(3) {
      left: 0;
      top: 26%;
      width: 39%; }
      .section_worry .worry_wrap .baloon:nth-child(3).is-show {
        transition-delay: 0.2s; }
    .section_worry .worry_wrap .baloon:nth-child(4) {
      right: 0;
      bottom: 0; }
      .section_worry .worry_wrap .baloon:nth-child(4).is-show {
        transition-delay: 0.4s; }
.section_worry .worry_txt {
  padding: 1em;
  border: solid 1px #e5e1df;
  border-radius: 5px; }
  .section_worry .worry_txt span {
    font-weight: 700;
    color: #d83457; }
  .section_worry .worry_txt p + p {
    margin-top: 15px; }

.section_intro .inner {
  padding: 1em;
  background: #fff; }
.section_intro .image {
  margin-bottom: 1em;
  text-align: center; }
  .section_intro .image img {
    width: 95%; }
.section_intro .lead {
  margin-bottom: 1em; }
  .section_intro .lead span {
    font-weight: 700;
    color: #d83457; }
  .section_intro .lead p + p {
    margin-top: 15px; }

.section_merit .inner {
  padding: 1em 1em 3em;
  background: #fff; }
.section_merit .item {
  margin-bottom: 1em; }
  .section_merit .item .head {
    position: relative;
    margin: 0 auto;
    padding: 1em;
    width: 95%;
    color: #65391f;
    font-weight: 700;
    border-radius: 100vmax;
    border: solid 1px #f69caf;
    background: #fff2f5;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 1; }
    .section_merit .item .head .num {
      font-size: 22px;
      color: #f69caf; }
    .section_merit .item .head strong {
      font-size: 18px;
      color: #d83457; }
  .section_merit .item .content {
    position: relative;
    margin-top: -2em;
    padding: 3.5em 1em 1em;
    border: solid 1px #f69caf;
    border-radius: 5px;
    background: #fffeed; }
    .section_merit .item .content .img {
      margin-bottom: 1em; }
    .section_merit .item .content .txt p + p {
      margin-top: 1em; }
    .section_merit .item .content .txt span {
      font-weight: 700;
      color: #d83457; }

.section_pickup {
  padding: 3em 1em;
  background: #fffeed; }
  .section_pickup .heading {
    margin-bottom: 1em;
    text-align: center; }
  .section_pickup .item_pickup {
    text-align: center; }
    .section_pickup .item_pickup .image {
      width: 60%;
      margin: 0 auto 1em; }
    .section_pickup .item_pickup .txt {
      font-size: 18px;
      line-height: 1.4; }
      .section_pickup .item_pickup .txt .head {
        color: #d83457;
        font-weight: 700;
        font-size: min(4.4vw, 20px);
        margin-bottom: .5em; }

.campaign_btn {
  position: relative;
  display: inline-block;
  margin: 1em auto;
  cursor: pointer; }
  .campaign_btn .copy_txt {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 44%;
    color: #fff;
    font-weight: 700;
    font-size: min(2.4vw, 18px); }
  .campaign_btn .coupon_code {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 23%;
    width: 100%;
    font-size: min(4vw, 24px);
    font-weight: 700; }
    .campaign_btn .coupon_code strong {
      font-size: 145%; }

.section_point .inner {
  padding: 1em;
  background: #fff; }
.section_point .item {
  margin-bottom: 1em; }
  .section_point .item .head {
    position: relative;
    margin: 0 auto;
    padding: 1em;
    width: 95%;
    color: #65391f;
    font-weight: 700;
    border-radius: 100vmax;
    border: solid 1px #f69caf;
    background: #fff2f5;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 1; }
    .section_point .item .head .num {
      font-size: 22px;
      color: #f69caf; }
    .section_point .item .head strong {
      font-size: 18px;
      color: #d83457; }
  .section_point .item .content {
    position: relative;
    margin-top: -2em;
    padding: 3.5em 1em 1em;
    border: solid 1px #f69caf;
    border-radius: 5px;
    background: #fffeed; }
    .section_point .item .content .img {
      margin-bottom: 1em; }
    .section_point .item .content .txt p + p {
      margin-top: 1em; }
    .section_point .item .content .txt span {
      font-weight: 700;
      color: #d83457; }

.section_ranking .inner {
  background: #fff;
  padding: 1em; }
.section_ranking .client_section .heading_top {
  position: relative;
  display: block;
  text-align: center;
  width: 100%;
  font-weight: 700;
  margin-bottom: 1em;
  padding: 0 .5em .5em; }
  .section_ranking .client_section .heading_top span {
    color: #e78976;
    font-size: 20px;
    color: #e78976; }
  .section_ranking .client_section .heading_top::before {
    position: absolute;
    bottom: 0;
    left: 15px;
    content: "";
    background-image: url(../images/left.png);
    background-size: cover;
    width: 30px;
    height: 35px; }
  .section_ranking .client_section .heading_top::after {
    position: absolute;
    bottom: 0;
    right: 15px;
    content: "";
    background-image: url(../images/right.png);
    background-size: cover;
    width: 30px;
    height: 35px; }
.section_ranking .client_section ul.slick-dots {
  padding: 0; }
.section_ranking .client_section ul li.each_client {
  margin-bottom: 15px; }
.section_ranking .client_section ul li:nth-child(1) .li_inner {
  background: #fffdea; }
.section_ranking .client_section ul li:nth-child(1) .name:before {
  background: transparent url(../images/ico_list_rank_01.png) no-repeat 0 0; }
.section_ranking .client_section ul li:nth-child(2) .name:before {
  background: transparent url(../images/ico_list_rank_02.png) no-repeat 0 0; }
.section_ranking .client_section ul li:nth-child(3) .name:before {
  background: transparent url(../images/ico_list_rank_03.png) no-repeat 0 0; }
.section_ranking .client_section ul li:nth-child(4) .name:before {
  background: transparent url(../images/ico_list_rank_04.png) no-repeat 0 0; }
.section_ranking .client_section ul li:nth-child(5) .name:before {
  background: transparent url(../images/ico_list_rank_05.png) no-repeat 0 0; }
.section_ranking .client_section ul li .remarks {
  padding: .4em 0 0; }
  .section_ranking .client_section ul li .remarks .item {
    color: #555;
    font-size: .73em;
    line-height: 1.25; }
.section_ranking .client_section ul li .li_inner {
  padding: 0;
  border: 2px solid #dbd7d5;
  position: relative; }
  .section_ranking .client_section ul li .li_inner .client_id .name {
    position: relative;
    border-bottom: 1px solid #dbd7d5;
    position: relative;
    padding: 5px .8em; }
    .section_ranking .client_section ul li .li_inner .client_id .name:before {
      content: "";
      position: absolute;
      top: 0;
      left: .5em;
      width: 13%;
      height: 100%;
      background-size: 100%; }
    .section_ranking .client_section ul li .li_inner .client_id .name a {
      display: block;
      text-decoration: none;
      color: #222;
      padding: 0.8em 0 0.5em 2.5em;
      font-size: 1.3em;
      letter-spacing: 0.08em;
      font-weight: bold;
      line-height: 1; }
  .section_ranking .client_section ul li .li_inner .client_id .read {
    text-align: center;
    color: #f30;
    font-weight: bold;
    font-size: 1.2em;
    line-height: 1.4;
    padding: .7em 0; }
  .section_ranking .client_section ul li .li_inner .image {
    width: 50%; }
    .section_ranking .client_section ul li .li_inner .image img {
      width: 100%; }
  .section_ranking .client_section ul li .li_inner .txt table {
    width: 100%;
    font-size: .85em;
    border: 1px solid #00a040;
    border-collapse: collapse;
    table-layout: fixed; }
    .section_ranking .client_section ul li .li_inner .txt table th {
      color: #00a040;
      background: #f2fcf5;
      font-weight: bold;
      border: 1px solid #00a040;
      padding: .5em;
      text-align: center;
      width: 20%; }
    .section_ranking .client_section ul li .li_inner .txt table td {
      color: #333;
      background: #fff;
      border: 1px solid #00a040;
      padding: .5em .2em; }
      .section_ranking .client_section ul li .li_inner .txt table td .icon {
        display: none; }
  .section_ranking .client_section ul li .li_inner .campaign {
    padding: 1em 0;
    text-align: center; }
    .section_ranking .client_section ul li .li_inner .campaign .campaigntxt {
      font-weight: 700;
      font-size: 13px; }
      .section_ranking .client_section ul li .li_inner .campaign .campaigntxt span {
        color: #d83457; }
    .section_ranking .client_section ul li .li_inner .campaign .campaign_btn .copy_txt {
      bottom: 43%; }
    .section_ranking .client_section ul li .li_inner .campaign .campaign_btn .coupon_code {
      font-size: min(3.8vw, 24px);
      bottom: 24%; }
  .section_ranking .client_section ul li .li_inner .osusumepoint {
    position: relative;
    border-radius: 4px;
    border: solid 1px #f88c4b;
    background: #fff;
    margin-top: 30px;
    margin-bottom: 1em;
    padding: 2em 1em 1em;
    position: relative; }
    .section_ranking .client_section ul li .li_inner .osusumepoint .ttl {
      position: absolute;
      top: -1em;
      left: 0; }
      .section_ranking .client_section ul li .li_inner .osusumepoint .ttl span {
        position: relative;
        display: inline-block;
        padding: .5em 1em .5em 3em;
        color: #fff;
        font-weight: 700;
        background: #f88c4b;
        border-radius: 100vmax; }
        .section_ranking .client_section ul li .li_inner .osusumepoint .ttl span::before {
          content: "";
          position: absolute;
          top: 50%;
          transform: translateY(-50%);
          left: 5px;
          width: 34px;
          height: 53px;
          background: url("../images/ico_loupe.png") center/contain no-repeat;
          z-index: 3; }
    .section_ranking .client_section ul li .li_inner .osusumepoint ul {
      padding: 0; }
      .section_ranking .client_section ul li .li_inner .osusumepoint ul li {
        padding: .2em .4em .2em 2.4em;
        font-weight: bold;
        background: url("../images/ico_check_or.png") 10px 5px/5% no-repeat; }
        .section_ranking .client_section ul li .li_inner .osusumepoint ul li span {
          color: #d83457; }
  .section_ranking .client_section ul li .li_inner .feature {
    position: relative;
    border-radius: 4px;
    border: solid 1px #f69caf;
    background: #fff;
    margin-top: 30px;
    margin-bottom: 1em;
    padding: 2em 1em 1em;
    position: relative; }
    .section_ranking .client_section ul li .li_inner .feature .ttl {
      position: absolute;
      top: -1em;
      left: 0; }
      .section_ranking .client_section ul li .li_inner .feature .ttl span {
        position: relative;
        display: inline-block;
        padding: .5em 1em .5em 3em;
        color: #fff;
        font-weight: 700;
        background: #f69caf;
        border-radius: 100vmax; }
        .section_ranking .client_section ul li .li_inner .feature .ttl span::before {
          content: "";
          position: absolute;
          top: 50%;
          transform: translateY(-50%);
          left: 5px;
          width: 34px;
          height: 53px;
          background: url("../images/ico_loupe.png") center/contain no-repeat;
          z-index: 3; }
    .section_ranking .client_section ul li .li_inner .feature ul {
      padding: 0 0 .8em; }
      .section_ranking .client_section ul li .li_inner .feature ul li {
        padding: .2em .4em .2em 2.4em;
        font-weight: bold;
        background: url("../images/ico_check_pk.png") 10px 5px/5% no-repeat; }
        .section_ranking .client_section ul li .li_inner .feature ul li span {
          color: #d83457; }
  .section_ranking .client_section ul li .li_inner .authorized {
    text-align: center; }

.vertical_section table td ul li {
  position: relative;
  padding-left: 1em;
  text-align: left; }
  .vertical_section table td ul li::before {
    content: "・";
    position: absolute;
    left: 0;
    top: 0; }
  .vertical_section table td ul li span {
    color: #d83457;
    font-weight: 700; }
.vertical_section table tr:nth-child(5) td {
  vertical-align: top; }
.vertical_section .remarks {
  color: #555;
  font-size: .73em;
  line-height: 1.25; }

.section_osusume .main_ttl {
  padding: .8em 0;
  background: #FF952A; }
  .section_osusume .main_ttl strong {
    font-size: 110%; }

.client_section .client_section_inner {
  padding: 0 1em 1em; }
.client_section .image_300 {
  text-align: center;
  margin-bottom: 10px; }
.client_section .sales_table {
  display: none;
  margin-top: 10px;
  position: relative; }
  .client_section .sales_table .lowest {
    position: absolute;
    top: -10px;
    left: -10px; }
    .client_section .sales_table .lowest img {
      width: 35px; }
  .client_section .sales_table table {
    border: solid 1px #e5e1df;
    width: 100%; }
    .client_section .sales_table table td {
      text-align: center;
      padding: 3px 0;
      border: solid 1px #e5e1df; }
    .client_section .sales_table table tr:nth-child(1) td.top_sales {
      background-color: #84bd4a; }
    .client_section .sales_table table tr:nth-child(1) td {
      background-color: #a49f9c;
      color: #fff;
      font-weight: bold; }
    .client_section .sales_table table tr:nth-child(2) td {
      background-color: #fff;
      color: #754d22; }
      .client_section .sales_table table tr:nth-child(2) td .store {
        margin-bottom: 10px; }
      .client_section .sales_table table tr:nth-child(2) td span {
        display: block; }
        .client_section .sales_table table tr:nth-child(2) td span img {
          width: 60px; }
        .client_section .sales_table table tr:nth-child(2) td span.rakuten {
          font-weight: bold; }
        .client_section .sales_table table tr:nth-child(2) td span.yahoo {
          font-weight: bold;
          color: #FF0232; }
        .client_section .sales_table table tr:nth-child(2) td span.amazon {
          font-weight: bold;
          color: #272727; }
.client_section .review_btn {
  position: relative; }
.client_section .clientbt {
  background-color: #fff;
  border: solid 1px #84BD4A; }
  .client_section .clientbt .accordion-header {
    position: relative;
    padding: .5em;
    font-weight: 700;
    color: #fff;
    text-align: center;
    background: #84BD4A; }
    .client_section .clientbt .accordion-header .icon {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: .5em; }
  .client_section .clientbt .accordion-content {
    padding: 1em; }
    .client_section .clientbt .accordion-content .thumb_btn {
      margin-top: 1em; }
  .client_section .clientbt h3 {
    background: #84bd4a;
    color: #fff;
    padding: 15px 0;
    font-size: 15px;
    font-weight: 700;
    text-align: center; }
  .client_section .clientbt .innerbt {
    padding: 15px 5px;
    align-items: center; }
    .client_section .clientbt .innerbt .leftbt, .client_section .clientbt .innerbt .rightbt {
      text-align: center;
      margin: 0 auto 20px; }
    .client_section .clientbt .innerbt .leftbt .tex, .client_section .clientbt .innerbt .rightbt .tex {
      font-size: 1.2em;
      color: #E88266;
      padding: 3px 0;
      font-weight: 700; }
    .client_section .clientbt .innerbt .leftbt img, .client_section .clientbt .innerbt .rightbt img {
      width: 90%;
      padding-bottom: 10px; }
    .client_section .clientbt .innerbt .leftbt .btn, .client_section .clientbt .innerbt .rightbt .btn {
      font-size: 17px;
      width: 100%;
      padding-top: 10px; }
    .client_section .clientbt .innerbt .leftbt .thumb_btn, .client_section .clientbt .innerbt .rightbt .thumb_btn {
      width: 90%; }
    .client_section .clientbt .innerbt .leftbt .thumb_btn a, .client_section .clientbt .innerbt .rightbt .thumb_btn a {
      width: 100%;
      padding-top: 10px;
      line-height: 1.3;
      padding: 10px 0; }
.client_section .free_shipping {
  text-align: center;
  font-size: 12px;
  line-height: 20px;
  color: #f38419;
  font-weight: 800; }

.link_invalid a {
  pointer-events: none; }
.link_invalid .thumb_btn, .link_invalid .thumb_btn.orange {
  animation: none;
  box-shadow: 0 6px 0 #8b8b8b; }
.link_invalid .thumb_btn a, .link_invalid .thumb_btn.orange a {
  background: #afafaf; }

.link_invalid.btn .thumb_btn,
.link_invalid.btn .thumb_btn.orange,
.link_invalid .official_btn .thumb_btn,
.link_invalid .official_btn .thumb_btn.orange {
  margin: 0 auto;
  box-shadow: none; }

.link_invalid.btn .thumb_btn a,
.link_invalid.btn .thumb_btn.orange a,
.link_invalid .official_btn .thumb_btn a,
.link_invalid .official_btn .thumb_btn.orange a {
  background: none;
  border-radius: 0;
  font-size: .8em;
  letter-spacing: -.05em;
  line-height: 1.3;
  color: #3b3b3b; }

.link_invalid .shiny__btn::before {
  content: none; }

.star_img {
  position: absolute;
  top: 1.2em;
  right: .5em;
  width: 100px; }

.comparisonBlc_inner {
  width: 100%;
  overflow: scroll; }
  .comparisonBlc_inner table {
    width: 850px;
    border-collapse: collapse;
    border-spacing: 0;
    table-layout: fixed; }
  .comparisonBlc_inner tr th, .comparisonBlc_inner tr td {
    width: 100px;
    vertical-align: middle;
    padding: 5px .5em;
    font-size: .9em;
    text-align: center;
    border: 1px solid #c8dbcd;
    box-sizing: border-box; }
    .comparisonBlc_inner tr th .icon, .comparisonBlc_inner tr td .icon {
      display: none; }
  .comparisonBlc_inner tr th:first-child, .comparisonBlc_inner tr td:first-child {
    position: sticky;
    top: 0;
    left: 0;
    z-index: 999;
    width: 150px; }
  .comparisonBlc_inner tr th:first-child:after, .comparisonBlc_inner tr td:first-child:after {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    width: 100%;
    height: 100%;
    border: 1px solid #c8dbcd;
    z-index: -1; }
  .comparisonBlc_inner tr th {
    background: #84bd4a;
    color: #fff; }
  .comparisonBlc_inner tr td {
    background: #fff; }
    .comparisonBlc_inner tr td .txt {
      display: none; }
    .comparisonBlc_inner tr td span img {
      width: 20px; }

.comparisonBlc .scrollguide {
  background: #222;
  color: #fff;
  line-height: 1;
  padding: .5em;
  font-size: .8em;
  text-align: right; }
  .comparisonBlc .scrollguide .remarks_wrap .remarks {
    font-size: .8em;
    color: #555;
    line-height: 1.4;
    font-weight: normal;
    padding-top: 3px; }

.accordion-content {
  display: none; }

.accordion-header {
  position: relative; }
  .accordion-header .icon {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: .5em;
    font-weight: 500;
    font-size: 30px; }
    .accordion-header .icon::before {
      content: '+'; }
  .accordion-header.is-open .icon::before {
    content: '−'; }
