@charset "UTF-8";

/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Prevent adjustments of font size after orientation changes in IE and iOS.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 * 2. Add the correct display in IE.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  /* 1 */
  display: block;
}

/**
 * Add the correct display in IE 9-.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Add the correct display in IE 10-.
 * 1. Add the correct display in IE.
 */
template,
[hidden] {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  display: block;
  /* アンカータグをブロック要素に *
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover {
  outline-width: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/* Forms
   ========================================================================== */
/**
 * 1. Change font properties to `inherit` in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
select,
textarea {
  font: inherit;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Restore the font weight unset by the previous rule.
 */
optgroup {
  font-weight: bold;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  appearance: button;
  /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on OS X.
 */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: inherit;
  line-height: inherit;
  vertical-align: top;
  margin: 0;
  padding: 0;
}


@media screen and (-webkit-min-device-pixel-ratio:0) {

  *,
  *::before,
  *::after {
    box-sizing: border-box;
    font-size: inherit;
    line-height: inherit;
    vertical-align: top;
    margin: 0;
    padding: 0;
  }
}

html {
  font-size: 62.5%;
  width: 100%;
  height: 100%;
}

body {
  font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  line-height: 1;
  color: #4d4d4d;
  background: white;
  width: 100%;
  height: 100%;
  position: relative;
}

@media screen and (min-width: 828px) {
  body {
    font-size: 2.6rem;
  }
}

@media screen and (max-width: 828px) {
  body {
    font-size: 3.5vw;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: normal;
  margin: 0;
}

p {
  line-height: 1.6;
}

a {
  color: #1374ce;
  text-decoration: none;
  display: inline;
}

a:hover {
  text-decoration: underline;
}

figure {
  margin: 0;
}

img {
  max-width: 100%;
  width: auto;
  height: auto;
}

ul,
ol {
  list-style: none;
}

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

hr {
  border-color: #ccc;
  border-style: solid;
  border-width: 1px 0 0;
}

@media screen and (min-width: 828px) {
  hr {
    margin: 60px 0;
  }
}

@media screen and (max-width: 828px) {
  hr {
    margin: 24px 0;
  }
}

button,
input,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  font-family: sans-serif;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type="submit"],
input[type="button"],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

::selection {
  color: white;
  background: #f8a227;
}

::-moz-selection {
  color: white;
  background: #f8a227;
}

.l-header {
  background: #28b8d7;
  z-index: 1;
  position: relative;
}

.l-header__logo {
  text-align: center;
  padding: 30px 0;
}

@media screen and (max-width: 750px) {
  .l-header__logo {
    padding: 4% 0;
  }

  .l-header__logo img {
    width: 30%;
  }
}

.l-contents__wrap {
  position: relative;
  overflow-x: hidden;
  max-width: 750px;
  margin: auto;
  background: white;
}

.l-contents {
  position: relative;
  padding: 0 4%;
  margin: 8% 0;
}

.l-footer {
  background: #808080;
  text-align: center;
  padding: 8%;
  margin-top: 8%;
  padding-bottom: 8.5rem;
}

.l-footer_info {
  background: #808080;
  text-align: center;
  padding: 8%;
  margin-top: 8%;
}

.l-footer__public {
  display: flex;
  justify-content: space-between;
  margin: 0 0 8% 0;
}

.l-footer__public-ncac,
.l-footer__public-caa {
  width: 48%;
  padding: 4%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.l-footer__public-ncac {
  background: #fff1d7;
}

.l-footer__public-caa {
  background: white;
}

.l-footer-nav {
  display: flex;
  justify-content: center;
}

.l-footer-nav__item {
  margin: 0 2%;
}

.l-footer-nav__link {
  color: white;
  line-height: 1;
  font-size: 2.0rem;
}

@media screen and (max-width: 750px) {
  .l-footer-nav__link {
    font-size: 2.6vw;
  }
}

.l-footer__copyright {
  margin-top: 4%;
}

.l-footer__copyright small {
  line-height: 1;
  color: white;
  font-size: 2.0rem;
  display: block;
}

@media screen and (max-width: 750px) {
  .l-footer__copyright small {
    font-size: 2.6vw;
  }
}

.c-button__wrap {
  position: relative;
  margin-bottom: 4%;
}

.c-button__wrap::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 2em;
  position: absolute;
  bottom: -8%;
  left: 0;
  z-index: 0;
}

.c-button {
  display: block;
  text-align: center;
  font-weight: bold;
  padding: 4%;
  line-height: 1;
  color: white;
  background: linear-gradient(to right, #26add6 0%, #1876da 100%);
  border: 0;
  width: 100%;
  appearance: none;
  font-size: 3.2rem;
  cursor: pointer;
  border-radius: 2em;
  position: relative;
  z-index: 1;
}

.c-button.is-icon::before {
  content: "";
  width: 1em;
  height: 1em;
  display: inline-block;
  margin-right: 2%;
  background: url(../images/search.png) center center/1em no-repeat;
}

@media screen and (max-width: 750px) {
  .c-button {
    font-size: 4.4vw;
  }
}

.c-table {
  width: 100%;
  border: 2px solid #ccc;
}

.c-table th {
  color: #4d4d4d;
  width: 50%;
  padding: 4%;
  text-align: center;
  font-weight: normal;
  vertical-align: middle;
  border: 2px solid #eee;
  background: #f9f9f9;
}

.c-table td {
  color: #4d4d4d;
  width: 50%;
  padding: 4%;
  border: 2px solid #eee;
  text-align: center;
}

.c-app-table {
  margin: 8% 0;
  width: 100%;
}

.c-app-table th {
  background: #f9f9f9;
  border: 1px solid #eee;
  padding: 10px;
  font-size: 2.0rem;
  text-align: center;
}

.c-app-table td {
  border: 1px solid #eee;
  padding: 10px;
  font-size: 2.0rem;
  text-align: center;
  vertical-align: middle;
}

@media screen and (max-width: 750px) {

  .c-app-table th,
  .c-app-table td {
    font-size: 2.8vw;
    padding: 1.2vw;
  }
}

.c-app-table__icon {
  width: 20%;
}

.c-app-table__icon-link img {
  border-radius: 10%;
}

.c-app-table__icon-link.is-border img {
  border: 2px solid #ddd;
}

@media screen and (max-width: 750px) {
  .c-app-table__icon-link.is-border img {
    border: 1px solid #ddd;
  }
}

.c-app-table__name {
  margin-top: 4%;
}

.c-app-table__name a {
  color: #4d4d4d;
  position: relative;
  display: block;
  line-height: 1.2;
}

.c-app-table__name a img {
  width: 1.0em;
  height: 1.0em;
}

.c-app-table__purpose {
  width: 12%;
  font-weight: bold;
}

.c-app-table__purpose-love {
  color: #ff667f;
}

.c-app-table__purpose-play {
  color: #41c9d5;
}

.c-app-table__purpose-marriage {
  color: #fbbc43;
}

.c-app-table__age {
  width: 25%;
}

.c-app-table__fee {
  width: 25%;
}

.c-app-table__btn-item:not(:first-of-type) {
  margin-top: 12%;
}

.c-app-table__btn-item .c-button {
  margin-top: 0;
}

.c-title {
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  color: #f8a227;
  margin-top: 2rem;
  margin-bottom: .5rem;
}

@media screen and (max-width: 750px) {
  .c-title {
    font-size: 4.2vw;
  }
}

.c-title__line {
  line-height: 1.5;
  font-weight: bold;
  border-bottom: 4px solid #1374ce;
  padding: 0 0 2% 0;
  margin: 4% 0;
}

@media screen and (max-width: 750px) {
  .c-title__line {
    border-bottom: 2px solid #1374ce;
  }
}

.carousel {
  height: 16em;
  width: 100%;
  overflow: hidden;
  text-align: center;
  position: relative;
  padding: 0;
  list-style: none;
  font-size: 0.5em !important;
}

.carousel__controls,
.carousel__activator {
  display: none;
}

.carousel__activator:nth-of-type(1):checked~.carousel__track {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
}

.carousel__activator:nth-of-type(1):checked~.carousel__slide:nth-of-type(1) {
  -webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, transform 0.5s;
  transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s;
  top: 0;
  left: 0;
  right: 0;
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

.carousel__activator:nth-of-type(1):checked~.carousel__controls:nth-of-type(1) {
  display: block;
  opacity: 1;
}

.carousel__activator:nth-of-type(1):checked~.carousel__indicators .carousel__indicator:nth-of-type(1) {
  opacity: 1;
}

.carousel__activator:nth-of-type(2):checked~.carousel__track {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}

.carousel__activator:nth-of-type(2):checked~.carousel__slide:nth-of-type(2) {
  -webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, transform 0.5s;
  transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s;
  top: 0;
  left: 0;
  right: 0;
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

.carousel__activator:nth-of-type(2):checked~.carousel__controls:nth-of-type(2) {
  display: block;
  opacity: 1;
}

.carousel__activator:nth-of-type(2):checked~.carousel__indicators .carousel__indicator:nth-of-type(2) {
  opacity: 1;
}

.carousel__activator:nth-of-type(3):checked~.carousel__track {
  -webkit-transform: translateX(-200%);
  transform: translateX(-200%);
}

.carousel__activator:nth-of-type(3):checked~.carousel__slide:nth-of-type(3) {
  -webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, transform 0.5s;
  transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s;
  top: 0;
  left: 0;
  right: 0;
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

.carousel__activator:nth-of-type(3):checked~.carousel__controls:nth-of-type(3) {
  display: block;
  opacity: 1;
}

.carousel__activator:nth-of-type(3):checked~.carousel__indicators .carousel__indicator:nth-of-type(3) {
  opacity: 1;
}

.carousel__activator:nth-of-type(4):checked~.carousel__track {
  -webkit-transform: translateX(-300%);
  transform: translateX(-300%);
}

.carousel__activator:nth-of-type(4):checked~.carousel__slide:nth-of-type(4) {
  -webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, transform 0.5s;
  transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s;
  top: 0;
  left: 0;
  right: 0;
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

.carousel__activator:nth-of-type(4):checked~.carousel__controls:nth-of-type(4) {
  display: block;
  opacity: 1;
}

.carousel__activator:nth-of-type(4):checked~.carousel__indicators .carousel__indicator:nth-of-type(4) {
  opacity: 1;
}

.carousel__activator:nth-of-type(5):checked~.carousel__track {
  -webkit-transform: translateX(-400%);
  transform: translateX(-400%);
}

.carousel__activator:nth-of-type(5):checked~.carousel__slide:nth-of-type(5) {
  -webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, transform 0.5s;
  transition: opacity 0.5s, transform 0.5s, -webkit-transform 0.5s;
  top: 0;
  left: 0;
  right: 0;
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

.carousel__activator:nth-of-type(5):checked~.carousel__controls:nth-of-type(5) {
  display: block;
  opacity: 1;
}

.carousel__activator:nth-of-type(5):checked~.carousel__indicators .carousel__indicator:nth-of-type(5) {
  opacity: 1;
}

.carousel__control {
  height: 30px;
  width: 30px;
  margin-top: -15px;
  top: 50%;
  position: absolute;
  display: block;
  cursor: pointer;
  border-width: 5px 5px 0 0;
  border-style: solid;
  border-color: #000;
  opacity: 0.35;
  outline: 0;
  z-index: 3;
}

.carousel__control:hover {
  opacity: 1;
}

.carousel__control--backward {
  left: 10px;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

.carousel__control--forward {
  right: 10px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.carousel__indicators {
  position: absolute;
  bottom: 20px;
  width: 100%;
  text-align: center;
}

.carousel__indicator {
  height: 15px;
  width: 15px;
  border-radius: 100%;
  display: inline-block;
  z-index: 2;
  cursor: pointer;
  opacity: 0.35;
  margin: 0 2.5px 0 2.5px;
}

.carousel__indicator:hover {
  opacity: 0.75;
}

.carousel__track {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 0;
  margin: 0;
  -webkit-transition: -webkit-transform 0.5s ease 0s;
  transition: -webkit-transform 0.5s ease 0s;
  transition: transform 0.5s ease 0s;
  transition: transform 0.5s ease 0s, -webkit-transform 0.5s ease 0s;
}

.carousel__track .carousel__slide {
  display: block;
  top: 0;
  left: 0;
  right: 0;
  opacity: 1;
}

.carousel__track .carousel__slide:nth-of-type(1) {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
}

.carousel__track .carousel__slide:nth-of-type(2) {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

.carousel__track .carousel__slide:nth-of-type(3) {
  -webkit-transform: translateX(200%);
  transform: translateX(200%);
}

.carousel__track .carousel__slide:nth-of-type(4) {
  -webkit-transform: translateX(300%);
  transform: translateX(300%);
}

.carousel__track .carousel__slide:nth-of-type(5) {
  -webkit-transform: translateX(400%);
  transform: translateX(400%);
}

.carousel--scale .carousel__slide {
  -webkit-transform: scale(0);
  transform: scale(0);
}

.carousel__slide {
  height: 100%;
  position: absolute;
  overflow-y: auto;
  opacity: 0;
  background: #ebf9fa;
  padding: 4% 6%;
  text-align: left;
}

/**
  * Theming
*/
.carousel-container {
  display: inline-block;
}

.carousel__slide {
  overflow: hidden;
}

.carousel--thumb .carousel__indicator {
  height: 30px;
  width: 30px;
}

.carousel__indicator {
  background-color: #000;
}

.p-top__text {
  margin: 4% 0;
  line-height: 1.8;
  font-size: 0.9em;
}

.p-top__text span {
  color: #f8a227;
  font-weight: bold;
}

.p-top__img {
  margin: 4% 0;
  text-align: center;
}

.p-top__img img {
  max-width: 100%;
  display: inline-block;
  margin-bottom: 1rem;
}

.p-top__head-title {
  font-weight: bold;
  font-size: 3.6rem;
  text-align: center;
  line-height: 1.5;
}

@media screen and (max-width: 750px) {
  .p-top__head-title {
    font-size: 4.8vw;
  }
}

.p-top__head-title2 {
  font-weight: bold;
  font-size: 3.6rem;
  text-align: center;
  line-height: 1.5;
  margin-top: 2rem;
}

@media screen and (max-width: 750px) {
  .p-top__head-title2 {
    font-size: 4.8vw;
  }
}

.p-top__search-wrap {
  background: #f0f8fa;
  padding: 4%;
}

.p-top__search {
  display: flex;
  justify-content: left;
  flex-wrap: wrap;
}

.p-top__search-item {
  width: 48%;
  margin: 4% 0 0 4%;
}

.p-top__search-item:nth-of-type(-n + 2) {
  margin-top: 0;
}

.p-top__search-item:nth-of-type(2n-1) {
  margin-left: 0;
}

.p-top__search-item-wide {
  width: 100%;
}

.p-top__search-item-wide:not(:first-child) {
  margin-top: 4%;
}

.p-top__search-select {
  background: white;
  position: relative;
}

.p-top__search-select::before {
  content: "▼";
  width: 1em;
  height: 1em;
  text-align: center;
  position: absolute;
  top: 50%;
  right: 5%;
  margin-top: -0.5em;
  font-size: 2rem;
}

.p-top__search-select select {
  display: block;
  cursor: pointer;
  padding: 16% 5% 5%;
  position: relative;
  width: 100%;
  border: 0;
  background: transparent;
  appearance: none;
}

@media screen and (max-width: 750px) {
  .p-top__search-select::before {
    font-size: 2.8vw;
  }
}

.p-top__search-select-label {
  font-size: 2rem;
  color: #1374ce;
  position: absolute;
  top: 14%;
  left: 5%;
  font-weight: bold;
}

@media screen and (max-width: 750px) {
  .p-top__search-select-label {
    font-size: 2.8vw;
  }
}

.p-top__app-head {
  position: relative;
  padding: 4% 4% 1% 16%;
  line-height: 1.4;
  margin: 8% 0 1%;
  font-weight: bold;
  font-size: 3.2rem;
  border-bottom: 4px dotted #ccc;
}

.p-top__app-head span {
  position: absolute;
  color: white;
  top: 0;
  left: 0;
  text-align: center;
  line-height: 100px;
  width: 82px;
  height: 72px;
  display: block;
  background: url(../images/rank.png) center center/contain no-repeat;
}

.p-top__app-head:nth-of-type(1) span {
  background: url(../images/rank1.png) center center/contain no-repeat;
}

.p-top__app-head:nth-of-type(2) span {
  background: url(../images/rank1.png) center center/contain no-repeat;
}

.p-top__app-head:nth-of-type(3) span {
  background: url(../images/rank2.png) center center/contain no-repeat;
}

.p-top__app-head:nth-of-type(4) span {
  background: url(../images/rank3.png) center center/contain no-repeat;
}

@media screen and (max-width: 750px) {
  .p-top__app-head {
    font-size: 4.4vw;
  }

  .p-top__app-head span {
    width: 11vw;
    height: 9.6vw;
    line-height: 13.5vw;
  }
}

.p-top__app-info {
  background: #f0f8fa;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  color: #4d4d4d;
  padding: 4%;
}

.p-top__app-info:hover {
  text-decoration: none;
}

.p-top__app-icon {
  width: 16%;
}

.p-top__app-icon img {
  border-radius: 10%;
}

.p-top__app-icon.is-border img {
  border: 2px solid #ddd;
}

.p-top__app-detail {
  width: 84%;
  padding-left: 4%;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
  .p-top__app-detail {
    width: 84%;
    padding-left: 4%;
  }
}

.p-top__app-tag {
  margin: -2% 0 0 -2%;
}

.p-top__app-tag li {
  font-size: 2rem;
  display: inline-block;
  padding: 2%;
  background: #4d4d4d;
  margin: 2% 0 0 2%;
  color: white;
}

@media screen and (max-width: 750px) {
  .p-top__app-tag li {
    font-size: 2.8vw;
  }
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
  .p-top__app-tag {
    margin: -2% 0 0 -2%;
  }

  .p-top__app-tag li {
    font-size: 2rem;
    display: inline-block;
    padding: 2%;
    background: #4d4d4d;
    margin: 2% 0 0 2%;
    color: white;
  }

  @media screen and (max-width: 750px) {
    .p-top__app-tag li {
      font-size: 2.8vw;
    }
  }
}

.p-top__app-text {
  margin-top: 2%;
  color: #1374ce;
  font-weight: bold;
}

.p-top__app-star {
  color: #ffb619;
}

.p-top__app-star-num {
  color: #808080;
}

.p-top__app-title-wrap {
  text-align: center;
  margin: 0 0 4% 0;
}

.p-top__app-title-wrap:not(:first-child) {
  margin: 4% 0;
}

.p-top__app-title {
  display: inline-block;
  vertical-align: bottom;
  font-weight: bold;
  position: relative;
  line-height: 32px;
  vertical-align: bottom;
}

.p-top__app-title::before,
.p-top__app-title::after {
  content: "";
  display: block;
  width: 0.1%;
  height: 100%;
  background: #4d4d4d;
  position: absolute;
  top: 0;
}

.p-top__app-title::before {
  transform: rotate(-45deg);
  left: -4%;
}

.p-top__app-title::after {
  transform: rotate(45deg);
  right: -4%;
}

.p-top__app-title span {
  color: #f8a227;
  font-size: 3.2rem;
  vertical-align: bottom;
}

@media screen and (max-width: 750px) {
  .p-top__app-title {
    font-size: 3.4vw;
    line-height: 4.4vw;
  }

  .p-top__app-title span {
    font-size: 4.4vw;
  }
}

.p-top__app-list {
  background: #fff9e5;
  padding: 6%;
  margin-top: 4%;
}

.p-top__app-list li {
  position: relative;
  padding-left: 1em;
  line-height: 1.2;
}

.p-top__app-list li span {
  font-weight: bold;
}

.p-top__app-list li::before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}

.p-top__app-list li:not(:first-child) {
  margin-top: 4%;
}

.p-top__app-dl-title-wrap {
  text-align: center;
  margin-top: 4%;
}

.p-top__app-dl-title {
  display: inline-block;
  vertical-align: bottom;
  font-weight: bold;
  position: relative;
  color: #1374ce;
}

.p-top__app-dl-title::before,
.p-top__app-dl-title::after {
  content: "";
  display: block;
  width: 1%;
  height: 100%;
  background: #1374ce;
  position: absolute;
  top: 0;
}

.p-top__app-dl-title::before {
  transform: rotate(-30deg);
  left: -8%;
}

.p-top__app-dl-title::after {
  transform: rotate(30deg);
  right: -8%;
}

.p-top__app-dl-caption {
  color: #999;
  text-align: center;
  margin-top: 2%;
  font-size: 1.8rem;
}

@media screen and (max-width: 750px) {
  .p-top__app-dl-caption {
    font-size: 2.4vw;
  }
}

.p-top__app-review-head {
  background: #28b8d7;
  color: white;
  padding: 2% 4%;
  font-weight: bold;
  display: inline-block;
  border-radius: 0.6em 0.6em 0 0;
}

.p-top__app-review-body {
  background: #f0f8fa;
  padding: 4% 0;
}

.p-top__app-review-item {
  margin: 0 4%;
}

.p-top__app-review-item:not(:first-child) {
  border-top: 4px dotted #ccc;
  margin: 4% 4% 0;
  padding-top: 4%;
}

.p-top__app-review-title {
  font-weight: bold;
}

.p-top__app-review-slide-wrap {
  position: relative;
}

.p-top__app-review-slide-item {
  padding: 0 2%;
}

.p-top__app-review-slider-prev,
.p-top__app-review-slider-next {
  display: block;
  width: 56px;
  height: 56px;
  line-height: 56px;
  text-align: center;
  color: white;
  background: #4d4d4d;
  position: absolute;
  top: 50%;
  margin-top: -28px;
  z-index: 100;
  border-radius: 50%;
  font-size: 2.4rem;
  cursor: pointer;
}

.p-top__app-review-slider-prev::before,
.p-top__app-review-slider-next::before {
  content: "▲";
}

@media screen and (max-width: 750px) {

  .p-top__app-review-slider-prev,
  .p-top__app-review-slider-next {
    width: 7.2vw;
    height: 7.2vw;
    line-height: 7.2vw;
    margin-top: -3.6vw;
    font-size: 3vw;
  }
}

.p-top__app-review-slider-prev {
  transform: rotate(-90deg);
  left: -2%;
}

.p-top__app-review-slider-next {
  transform: rotate(90deg);
  right: -2%;
}

.p-top__app-check {
  display: none;
}

.p-top__app-toggle {
  position: relative;
  z-index: 0;
  height: 200px;
  overflow: hidden;
  transition: height 0.3s ease;
}

.p-top__app-toggle::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, white 80%, white 100%);
  z-index: 1;
}

.p-top__app-check:checked+.p-top__app-toggle {
  height: auto;
  /**overflow: auto;*/
}

.p-top__app-check:checked+.p-top__app-toggle::before,
.p-top__app-check:checked+.p-top__app-toggle::after {
  display: none;
}

.p-top__app-toggle-button {
  display: block;
  width: 40%;
  margin: 0 auto;
  background: #333;
  color: white;
  line-height: 2.4em;
  border-radius: 1.2em;
  text-align: center;
  z-index: 2;
  margin-bottom: 8%;
  position: relative;
}

.p-top__app-toggle-button::before {
  content: "詳細を見る";
}

.p-top__app-check:checked+.p-top__app-toggle+.p-top__app-toggle-button {
  display: none;
}

.p-top__genre-rank-head {
  padding: 0.5em 1em;
  text-align: center;
  font-weight: bold;
  line-height: 1.5;
  margin-top: 4%;
  background: #f8a227;
  color: white;
}

.p-top__genre-rank-body {
  padding: 4%;
  border: solid #f8a227;
  border-width: 0 8px 8px;
}

@media screen and (max-width: 750px) {
  .p-top__genre-rank-body {
    border-width: 0 4px 4px;
  }
}

.p-top__genre-rank:not(:first-of-type) {
  margin-top: 4%;
  padding-top: 4%;
  border-top: 1px solid #ccc;
}

.p-top__genre-rank__app {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.p-top__genre-rank-icon {
  padding-top: 2.5rem;
  width: 20%;
}

.p-top__genre-rank-icon_test img {
  width: 100%;
  border-radius: 10%;
}

.p-top__genre-rank-icon img {
  width: 100%;
  border-radius: 10%;
}

.p-top__genre-rank-icon.is-border img {
  border: 2px solid #ddd;
}

.p-top__genre-rank-detail {
  width: 76%;
}


.p-top__genre-rank-title {
  font-size: 3.2rem;
  line-height: 1;
  font-weight: bold;
  color: #f8a227;
  line-height: 1.5;
}

.p-top__genre-rank-title span {
  display: inline-block;
  /*padding-left: 1.8em;*/
  color: #ffb619;
  position: relative;
}

/* .p-top__genre-rank-title span::before {
      content: "";
      width: 1.5em;
      height: 1.5em;
      background: url(../images/ic_genre_rank.png) center center/1.5em no-repeat;
      position: absolute;
      top: 0;
      left: 0;
      display: block; }*/
@media screen and (max-width: 750px) {
  .p-top__genre-rank-title {
    font-size: 4.2vw;
  }
}

.p-top__genre-rank-button {
  display: block;
  color: white;
  background: #28b8d7;
  margin-top: 4%;
  padding: 0.6em 1em;
  text-align: center;
}

.p-top__genre-rank-text {
  margin-top: 4%;
}


.u-block {
  display: block;
}

.u-inline-block {
  display: inline-block;
}

.u-inline {
  display: inline;
}

.u-hidden {
  display: none;
}

@media screen and (max-width: 828px) {
  .u-variable {
    display: block;
  }
}

@media screen and (min-width: 828px) {
  .u-variable {
    display: inline-block;
  }
}

@media screen and (max-width: 828px) {
  .u-pc-only {
    display: none !important;
  }
}

@media screen and (min-width: 828px) {
  .u-tablet-only {
    display: none !important;
  }
}

/**
 * 追加箇所.
 background: linear-gradient(to right, #388ad6 0%, #2465c9 100%);
 */
.table-title {
  font-size: 4.2vw;
  margin-top: 8%;
  margin-bottom: 4%;
  text-align: center;
  font-weight: bold;
  line-height: 1.3;
}

.table-app-list {
  margin: 4% 0 30px 0;
  table-layout: fixed;
  width: 100%;
}

.is-small {
  font-size: 1rem;
}

.is-grey {
  background: grey;
}

.table-app-list th {
  font-size: 2.8vw;
  padding: 1.8vw 1.2vw;
  background: #FCEBCA;
  border: 1px solid #eee;
  text-align: center;
  width: 20%;
}

.table-app-list td {
  font-size: 2.8vw;
  padding: 1.8vw 1.2vw;
  border: 1px solid #eee;
  vertical-align: middle;
  text-align: center;
}

.flowchart-title {
  font-size: 3.5vw;
  font-weight: bold;
  text-align: center;
}

.flowchart-title span {
  font-size: 4.5vw;
  color: #ffa500;
}

.flowchart-wrap-top {
  margin-top: 4%;
}

.flowchart-head-wrap {
  text-align: center;
  color: white;
  background: #ffa500;
  position: relative;
  font-size: 4.2vw;
  padding: 0.5% 4%;
  font-weight: bold;
  letter-spacing: 0.07em;
  padding: 2vw;
}

.flowchart-wrap {
  padding: 0 4%;
  background: #f7f7f7;
}

.flowchart-item {
  overflow: hidden;
  display: flex;
  justify-content: space-between;
}

.border-line {
  border-bottom: 0.5px solid #808080;
}

.flowchart-text {
  font-size: 3.2vw;
  line-height: 1.6;
  width: 40%;
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  font-weight: bold;
}

.flowchart-app-wrap {
  width: 60%;
}

.flowchart-app {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 15px 0%;
  color: #000;
}

.flowchart-app-icon {
  border: 0.5px solid #ddd;
  border-radius: 10%;
}

.flowchart-app-icon img {
  max-width: 40px;
  width: 40px;
  height: 40px;
}

.flowchart-app-name {
  letter-spacing: -1.5px;
  width: 68%;
  line-height: 1.8;
  padding: 0 2em 0 0em;
  background: url(../images/link_yellow.png);
  background-position: right;
  background-repeat: no-repeat;
  background-size: 4vw;
}

.c-button {
  -webkit-animation: blink 2s infinite;
  animation: blink 2s infinite-webkit-box-shadow, 0 5px 0 #bd2a5e;
  box-shadow: 0 0px 0 #bd2a5e;
}

@-webkit-keyframes blink {

  0%,
  50%,
  to {
    opacity: .5
  }

  25%,
  75% {
    opacity: 1
  }
}

@keyframes blink {

  0%,
  50%,
  to {
    opacity: .5
  }

  25%,
  75% {
    opacity: 1
  }
}

@-webkit-keyframes blink1 {
  0% {
    opacity: 0
  }

  to {
    opacity: 1
  }
}

@keyframes blink1 {
  0% {
    opacity: 0
  }

  to {
    opacity: 1
  }
}

.mini {
  margin-top: 12%;
  font-size: 1rem;
}

.p-top__app-tag li {
  white-space: nowrap;
}

.p-lp__app-dl-title-wrap {
  text-align: center;
  margin: 4% 0
}

.p-lp__app-dl-title {
  display: inline-block;
  vertical-align: bottom;
  font-weight: 700;
  position: relative;
  font-size: 1.4rem;
}

.p-lp__app-dl-title:after,
.p-lp__app-dl-title:before {
  content: "";
  display: block;
  width: .5%;
  height: 100%;
  background: #f8a227;
  position: absolute;
  top: 0
}

.p-lp__app-dl-title:before {
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
  left: -3%
}

.p-lp__app-dl-title:after {
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
  right: -3%
}

.p-lp__app-dl-title span {
  vertical-align: bottom;
  color: #f8a227;
}

.p-lp__flowchart-wrap:not(:first-child) {
  margin-top: 4%;
}

.p-lp__flowchart-wrap {
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.p-lp__flowchart-app-icon {
  width: 20%;
}

.p-lp__flowchart-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  color: #fff;
  width: 16%;
  background: #ff667f;
  position: relative;
  font-size: 1.8rem;
  border-radius: 16px 0 0 16px;
}

.p-lp__flowchart-head:after {
  content: "";
  position: absolute;
  top: 0;
  right: -20%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 20%;
  height: 100%;
  background: -webkit-gradient(linear, right top, left bottom, color-stop(50%, hsla(0, 0%, 100%, 0)), color-stop(50.1%, #1876da)) no-repeat 0 0/100% 50.1%, -webkit-gradient(linear, right bottom, left top, color-stop(50%, hsla(0, 0%, 100%, 0)), color-stop(50.1%, #1876da)) no-repeat 100% 100%/100% 50.1%;
  background: linear-gradient(to bottom left, hsla(0, 0%, 100%, 0) 50%, #1876da 50.1%) no-repeat 0 0/100% 50.1%, linear-gradient(to top left, hsla(0, 0%, 100%, 0) 50%, #1876da 50.1%) no-repeat 100% 100%/100% 50.1%;
}

.p-lp__flowchart-wrap.is-yellow .p-lp__flowchart-head:after {
  background: -webkit-gradient(linear, right top, left bottom, color-stop(50%, hsla(0, 0%, 100%, 0)), color-stop(50.1%, #f8a227)) no-repeat 0 0/100% 50.1%, -webkit-gradient(linear, right bottom, left top, color-stop(50%, hsla(0, 0%, 100%, 0)), color-stop(50.1%, #f8a227)) no-repeat 100% 100%/100% 50.1%;
  background: linear-gradient(to bottom left, hsla(0, 0%, 100%, 0) 50%, #f8a227 50.1%) no-repeat 0 0/100% 50.1%, linear-gradient(to top left, hsla(0, 0%, 100%, 0) 50%, #f8a227 50.1%) no-repeat 100% 100%/100% 50.1%;
}

@media screen and (max-width: 750px) {}

.p-lp__flowchart-head {
  font-size: 4.2vw;
  border-radius: 8px 0 0 8px;
}

.p-lp__flowchart-wrap.is-yellow .p-lp__flowchart-head {
  background: #f8a227;
}

.p-lp__flowchart-wrap.is-yellow .p-lp__flowchart-text {
  background: #fabd67;
}

.p-lp__flowchart-wrap.is-blue .p-lp__flowchart-head {
  background: #1876da;
}

.p-lp__flowchart-wrap.is-blue .p-lp__flowchart-text {
  background: #26add6;
}

@media screen and (max-width: 750px) {}

.p-lp__flowchart-text {
  font-size: 3vw;
}

.p-lp__flowchart-text:after {
  content: "";
  position: absolute;
  top: 0;
  right: -12%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 12%;
  height: 100%;
  background: -webkit-gradient(linear, right top, left bottom, color-stop(50%, hsla(0, 0%, 100%, 0)), color-stop(50.1%, #26add6)) no-repeat 0 0/100% 50.1%, -webkit-gradient(linear, right bottom, left top, color-stop(50%, hsla(0, 0%, 100%, 0)), color-stop(50.1%, #26add6)) no-repeat 100% 100%/100% 50.1%;
  background: linear-gradient(to bottom left, hsla(0, 0%, 100%, 0) 50%, #26add6 50.1%) no-repeat 0 0/100% 50.1%, linear-gradient(to top left, hsla(0, 0%, 100%, 0) 50%, #26add6 50.1%) no-repeat 100% 100%/100% 50.1%;
}

.p-lp__flowchart-wrap.is-yellow .p-lp__flowchart-text:after {
  background: -webkit-gradient(linear, right top, left bottom, color-stop(50%, hsla(0, 0%, 100%, 0)), color-stop(50.1%, #fabd67)) no-repeat 0 0/100% 50.1%, -webkit-gradient(linear, right bottom, left top, color-stop(50%, hsla(0, 0%, 100%, 0)), color-stop(50.1%, #fabd67)) no-repeat 100% 100%/100% 50.1%;
  background: linear-gradient(to bottom left, hsla(0, 0%, 100%, 0) 50%, #fabd67 50.1%) no-repeat 0 0/100% 50.1%, linear-gradient(to top left, hsla(0, 0%, 100%, 0) 50%, #fabd67 50.1%) no-repeat 100% 100%/100% 50.1%;
}

.p-lp__flowchart-text {
  line-height: 1.2;
  width: 30%;
  background: #ff667f;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #fff;
  text-align: center;
  font-size: 1.2rem;
}

.p-lp__flowchart-app-wrap {
  width: 70%;
}

.p-lp__flowchart-wrap.is-yellow .p-lp__flowchart-app {
  background: url(../images/ic_yellow.webp) right 1% center/1em no-repeat;
}

.p-lp__flowchart-wrap.is-blue .p-lp__flowchart-app {
  background: url(../images/ic_blue.webp) right 1% center/1em no-repeat;
}

.p-lp__flowchart-app {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 4% 2% 4% 10%;
  color: #000;
}

.p-lp__flowchart-app-icon img {
  border-radius: 10%;
}

.p-lp__flowchart-app-name {
  width: 76%;
}

.p-lp__flowchart {
  width: 80%;
}

.p-lp__flowchart-item {
  border-radius: 16px;
  overflow: hidden;
  background: #c4fcf0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

@media screen and (max-width: 750px) {
  .p-lp__flowchart-item {
    border-radius: 8px;
  }
}

.p-lp__flowchart-wrap.is-yellow .p-lp__flowchart-item {
  background: #fce3be;
}

.p-lp__flowchart-item:nth-child(n+2) {
  margin-top: 0.5rem;
}

/**
 * 削除箇所.
.c-button__wrap::after background: linear-gradient(to right, #388ad6 0%, #2465c9 100%);
 */
.p-top__head-title:after {
  content: "PR";
  padding: 0.4rem;
  border-radius: 0.5rem;
  font-size: 0.7em;
  vertical-align: middle;
}

.p-top3table__head {
  text-align: center;
  font-size: 1.5rem;
  line-height: 1.5;
  margin-bottom: 1.3rem;
  font-weight: bold;
}

.p-top3table__head span {
  color: #f8a227;
}

@media screen and (max-width: 719px) {
  .p-top3table__head {
    font-size: 1.4rem;
  }
}

.p-top3table {
  border-collapse: collapse;
  margin-bottom: .6rem;
}

.p-top3table thead tr th {
  text-align: center;
  font-size: 1.8rem;
  border-radius: 1rem 1rem 0 0;
  background: #f8a227;
  color: white;
  border: 0;
}

@media screen and (max-width: 719px) {
  .p-top3table thead tr th {
    font-size: 1.6rem;
  }
}

.p-top3table tbody tr th {
  border: 1px solid #f0f0f0;
  background: #f0f0f0;
  text-align: center;
  padding: 0.8rem;
  padding: .8rem;
  font-weight: bold;
}

@media screen and (max-width: 719px) {
  .p-top3table tbody tr th {
    padding: .4rem;
  }
}

.p-top3table tbody tr td {
  border: 1px solid #f0f0f0;
  padding: .8rem;
  text-align: center;
  width: 33.33%;
  font-weight: bold;
}

@media screen and (max-width: 719px) {
  .p-top3table tbody tr td {
    padding: .6rem;
  }
}

.p-top3table tbody tr td .c-button {
  line-height: 1.3;
}

@media screen and (max-width: 719px) {
  .p-top3table tbody tr td .c-button {
    padding: 0.5rem;
    font-size: 1.1rem;
  }
}

.p-top3table__point {
  min-height: 6.4rem;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: column;
  list-style: none;
  margin: 0;
  padding: 0;
}

.p-top3table__point br {
  display: none;
}

@media screen and (max-width: 719px) {
  .p-top3table__point li {
    font-size: 1.2rem;
    display: block;
    line-height: 1.3;
  }

  .p-top3table__point li:not(:first-child) {
    margin-top: .5rem;
  }

  .p-top3table__point li br {
    display: block;
  }
}

.p-top3table__rank__no {
  position: relative;
  display: block;
  margin: auto;
}

@media screen and (min-width: 720px) {
  .p-top3table__rank__no {
    max-width: 5rem;
    min-width: 5rem;
  }
}

@media screen and (max-width: 719px) {
  .p-top3table__rank__no {
    max-width: 3.5rem;
    min-width: 3.5rem;
  }
}

.p-top3table__rank__no img,
.p-top3table__rank__no svg {
  width: 100%;
  height: auto;
}

.p-top3table__rank__svg-1 {
  fill: #ffd900;
}

.p-top3table__rank__svg-2 {
  fill: #a5c8d4;
}

.p-top3table__rank__svg-3 {
  fill: #d38c59;
}

.p-top3table__rank__icon {
  max-width: 8rem;
  min-width: 8rem;
  max-height: 8rem;
  min-height: 8rem;
  margin: 0 auto 1.5rem;
  overflow: hidden;
  border-radius: 2rem;
  border: 1px solid #dbdbdb;
}

.p-top3table__rank__icon img {
  max-width: inherit;
  width: 8rem;
  height: 8rem;
  object-fit: cover;
}

.p-top3table__rank__name {
  font-weight: 700;
  color: #F5515A;
}

.p-top3table__change {
  display: flex;
  list-style: none;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}

.p-top3table__change>* {
  width: 33%;
  text-align: center;
}

.p-top__app-dl-title-noline {
  font-weight: 700;
  color: #1374ce;
}

.responsive-video {
  max-width: 100%;
  height: auto;
  width: 100%;
}

.image-link {
  position: relative;
  display: inline-block;
}

.overlay-link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  /* 画像より手前に表示 */
  background-color: transparent;
  /* 背景を透明に */
}

.p-top3table {
  border-collapse: collapse;
  margin-bottom: .6rem;
}

.p-top3table thead tr th {
  text-align: center;
  font-size: 1.8rem;
  border-radius: 1rem 1rem 0 0;
  background: #f5515a;
  color: white;
  border: 0;
}

@media screen and (max-width: 719px) {
  .p-top3table thead tr th {
    font-size: 1.6rem;
  }
}

.p-top3table tbody tr th {
  border: 1px solid #f0f0f0;
  background: #f0f0f0;
  text-align: center;
  padding: 0.8rem;
  padding: .8rem;
  font-weight: bold;
}

@media screen and (max-width: 719px) {
  .p-top3table tbody tr th {
    padding: .4rem;
  }
}

.p-top3table tbody tr td {
  border: 1px solid #f0f0f0;
  padding: .8rem;
  text-align: center;
  width: 33.33%;
  font-weight: bold;
}

@media screen and (max-width: 719px) {
  .p-top3table tbody tr td {
    padding: .6rem;
    font-size: 1.0rem;
  }
}

.p-top3table tbody tr td .c-button {
  line-height: 1.3;
}

@media screen and (max-width: 719px) {
  .p-top3table tbody tr td .c-button {
    padding: 0.5rem;
    font-size: 1.1rem;
  }
}

.p-top3table__point {
  min-height: 6.4rem;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: column;
  list-style: none;
  margin: 0;
  padding: 0;
}

.p-top3table__point br {
  display: none;
}

@media screen and (max-width: 719px) {
  .p-top3table__point li {
    font-size: 1.0rem;
    display: block;
    line-height: 1.3;
  }

  .p-top3table__point li:not(:first-child) {
    margin-top: .5rem;
  }

  .p-top3table__point li br {
    display: block;
  }
}

.p-top3table__point.--doublecircle {
  background: url(../images/state-doublecircle.webp) center center/5rem no-repeat;
}

.p-top3table__point.--circle {
  background: url(../images/state-circle.webp) center center/5rem no-repeat;
}

.p-top3table__point.--triangle {
  background: url(../images/state-triangle.webp) center center/5rem no-repeat;
}

.p-top3table__rank__no {
  position: relative;
  display: block;
  margin: auto;
}

@media screen and (min-width: 720px) {
  .p-top3table__rank__no {
    max-width: 5rem;
    min-width: 5rem;
  }
}

@media screen and (max-width: 719px) {
  .p-top3table__rank__no {
    max-width: 3.5rem;
    min-width: 3.5rem;
  }
}

.p-top3table__rank__no img,
.p-top3table__rank__no svg {
  width: 100%;
  height: auto;
}

.p-top3table__rank__no span {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center;
  color: white;
  font-size: 1.2rem;
  font-weight: bold;
  padding-top: 0.9rem;
}

.p-top3table__rank__svg-1 {
  fill: #ffd900;
}

.p-top3table__rank__svg-2 {
  fill: #a5c8d4;
}

.p-top3table__rank__svg-3 {
  fill: #d38c59;
}

.p-top3table__rank__svg {
  fill: #fabd67;
}

.p-top3table__rank__icon {
  max-width: 8rem;
  min-width: 8rem;
  max-height: 8rem;
  min-height: 8rem;
  margin: 0 auto 1.5rem;
  overflow: hidden;
  border-radius: 2rem;
  border: 1px solid #dbdbdb;
}

.p-top3table__rank__icon img {
  max-width: inherit;
  width: 8rem;
  height: 8rem;
  object-fit: cover;
}

.p-top3table__rank__name {
  font-weight: 700;
  color: #F5515A;
}

.p-top3table__change {
  display: flex;
  list-style: none;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}

.p-top3table__change>* {
  width: 33%;
  text-align: center;
}

/* Flocss Theme 外部ライブラリのCSS上書き等 */
.icon-container {
  display: flex;
  text-align: center;
  /* 中央揃え */
  justify-content: center;
  align-items: center;
  margin-bottom: 7rem;
}

.icon {
  max-width: 6rem;
  min-width: 6rem;
  max-height: 6rem;
  min-height: 6rem;
  margin: 0 auto 1.5rem;
  display: flex;
  flex-direction: column;
  /* 要素を縦方向に配置 */
  align-items: center;
  /* 中央揃え */
  margin: 1.5rem;
}

.icon img {
  border-radius: 2rem;
  /* 画像の角の曲げ具合を設定（半径10pxで角丸にする）*/
  max-width: inherit;
  width: 8rem;
  height: 8rem;
  object-fit: cover;
  /* 要素にフィットさせる */
  border-radius: 2rem;
  border: 1px solid #dbdbdb;
}

.icon p {
  font-weight: 700;
  color: #F5515A;
  margin-top: 2rem;
  /* アイコンと名前の間隔 */
}

.icon-app__name {
  font-weight: 700;
  color: #F5515A;
}

.c-recommend-app__icon {
  max-width: 8rem;
  min-width: 8rem;
  max-height: 8rem;
  min-height: 8rem;
  margin: 0 auto 1.5rem;
  overflow: hidden;
  border-radius: 2rem;
  border: 1px solid #dbdbdb;
}

.c-recommend-app__icon img {
  max-width: inherit;
  width: 8rem;
  height: 8rem;
  object-fit: cover;
}

.small-font {
  font-size: 1.0rem;
}

div.fixed-box-yoko {
  width: auto;
  max-height: 600px;
  margin-top: -8px;
  background: #fff;
  overflow: auto;
}

table.yoko {
  width: auto;
}

table.yoko th,
table.yoko td {
  height: 10px;
  vertical-align: middle;
  padding: 10 15px;
  text-align: center;
}

.fixed01 {
  position: sticky;
  top: 0;
  background: #ffffff;
  width: auto;
  height: 100px;
}



table.yoko .fixed01:before,
table.yoko .fixed02:before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: auto;
  height: 100%;
  border: 1px solid #eaeaea;
}


/* iPhone SE向けのスタイル */
@media only screen and (max-width: 320px) {
  .colspan-cell {
    top: 136px;
    /* 適切な値に調整 */
  }
}

/* iPhone 11 Pro Maxなど大画面向けのスタイル */
@media only screen and (min-width: 414px) {
  .colspan-cell {
    top: 152px;
    /* 適切な値に調整 */
  }
}

.colspan_text {
  text-align: center;
}

.Matching__lineTitle {
  margin: 0 0 6rem 0;
  text-align: center;
  font-size: 3.6rem;
  font-weight: 700
}

.Matching__lineTitle span {
  display: inline-block;
  position: relative
}

.Matching__lineTitle span::before,
.Matching__lineTitle span::after {
  content: "";
  position: absolute;
  top: 0;
  display: inline-block;
  width: .2rem;
  height: 100%;
  background-color: #000;
  -webkit-transform: rotate(-60deg);
  transform: rotate(-60deg)
}

.Matching__lineTitle span::before {
  left: -1em;
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg)
}

.Matching__lineTitle span::after {
  right: -1em;
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg)
}

.--red .Matching__lineTitle span::before,
.--red .Matching__lineTitle span::after {
  background-color: #f2556f
}

.--blue .Matching__lineTitle span::before,
.--blue .Matching__lineTitle span::after {
  background-color: #53adff
}

.Matching__appInfo__badge {
  margin: 3rem auto;
  width: 38rem
}

.Matching__appTable__wrap {
  overflow-x: scroll;
  overflow-y: hidden
}

.Matching__appTable {
  white-space: nowrap;
  border: 1px solid #d8d8d8;
  border-collapse: collapse
}

.Matching__appTable th,
.Matching__appTable td {
  border: 1px solid #d8d8d8;
  border-collapse: collapse;
  padding: 2rem;
  font-size: 2.4rem;
  text-align: center;
  vertical-align: middle
}

.Matching__appTable th span,
.Matching__appTable td span {
  display: block
}

.Matching__appTable th {
  text-align: center;
  color: #fff;
  font-weight: 700
}

.--red .Matching__appTable th {
  background-color: #f2556f
}

.--blue .Matching__appTable th {
  background-color: #53adff
}

.Matching__appIcon {
  width: 10rem;
  height: 10rem;
  margin: 0 auto
}

.Matching__appName {
  font-size: 2.4rem;
  margin-top: .5rem
}

.Matching__reputation {
  color: #f2556f;
  line-height: 1.4
}

.Matching__star {
  --percent: calc(var(--rating) / 5 * 100%);
  color: #f1bf5a;
  line-height: 1.4
}

.Matching__star::before {
  content: "★★★★★";
  background: -webkit-gradient(linear, left top, right top, from(#f5a925), to(#e6e6e6));
  background: -webkit-linear-gradient(left, #f5a925 var(--percent), #e6e6e6 var(--percent));
  background: linear-gradient(90deg, #f5a925 var(--percent), #e6e6e6 var(--percent));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent
}

.Matching__button {
  color: #fff;
  display: block;
  text-align: center;
  padding: 1em;
  border-radius: 1.5em;
  font-size: 2.4rem;
  line-height: 1;
  font-weight: 700;
  position: relative
}

.Matching__button+.Matching__button {
  margin-top: 2rem
}

.Matching__button.--gradBlue {
  background: -webkit-gradient(linear, left top, right top, from(#609bff), to(#63e5f1));
  background: -webkit-linear-gradient(left, #609bff 0%, #63e5f1 100%);
  background: linear-gradient(90deg, #609bff 0%, #63e5f1 100%)
}

.--blue .Matching__button.--gradRed {
  background: #F6416C
}

.--red .Matching__button.--gradRed {
  background: -webkit-gradient(linear, left top, right top, from(#43e97b), to(#38f9d7));
  background: -webkit-linear-gradient(left, #43e97b 0%, #38f9d7 100%);
  background: linear-gradient(90deg, #43e97b 0%, #38f9d7 100%)
}

@-webkit-keyframes blink {

  0%,
  50%,
  to {
    opacity: .5
  }

  25%,
  75% {
    opacity: 1
  }
}

@keyframes blink {

  0%,
  50%,
  to {
    opacity: .5
  }

  25%,
  75% {
    opacity: 1
  }
}

@-webkit-keyframes blink1 {
  0% {
    opacity: 0
  }

  to {
    opacity: 1
  }
}

@keyframes blink1 {
  0% {
    opacity: 0
  }

  to {
    opacity: 1
  }
}

.--red .Matching__button {
  background-color: #d8d8d8
}

.--blue .Matching__button {
  background-color: #d8d8d8
}

.Matching__button.--black {
  background: #333
}

.Matching__button.--large {
  font-size: 2.8rem;
  padding: 1.5em;
  display: inline-block;
  border-radius: 2.5em
}

.Matching__button.--large.--arrow,
.Matching__button.--large.--download {
  padding: 1.5em 4em
}

.Matching__button.--large.--arrow::after,
.Matching__button.--large.--download::after {
  width: 4em;
  background-size: 3.3rem
}

.Matching__button.--arrow,
.Matching__button.--download {
  padding: 1em 2.5em 1em 1.5em
}

.Matching__button.--arrow::after,
.Matching__button.--download::after {
  content: "";
  display: block;
  position: absolute;
  width: 2.5em;
  height: 100%;
  top: 0;
  right: 0;
  background-position: center;
  background-size: 1.65rem;
  background-repeat: no-repeat
}

.Matching__button.--arrow::after {
  background-image: url(../img/arrow.png)
}

.Matching__button.--download::after {
  background-image: url(../img/icon_link_white.png)
}

.table-container {
  width: 100%;
  overflow: auto;
  margin-bottom: 4rem;
}

table {
  border-collapse: collapse;
  width: auto;
}

th,
td {
  padding: 10px;
  text-align: left;
  border: 1px solid #eee;
  /* データセルのみに線を追加 */
  border-bottom: 2px solid #eee;
  /* 横線の太さと色を指定 */
}

th {
  position: sticky;
  top: 0;
  background-color: #f8a228;
  text-align: center;
  white-space: nowrap;
  color: #ffffff;
}

td {
  white-space: nowrap;
  text-align: center;
  vertical-align: middle;
  /* テキストを垂直中央揃えにする */
  font-size: 1.1rem;
  line-height: 2rem;
  font-weight: bold;
}

th:first-child {
  left: 0;
  z-index: 1;
}

td:first-child {
  position: sticky;
  left: 0;
  z-index: 1;
  background-color: #fff9e5;
}

.resize-image {
  width: 6rem;
  /* 幅を指定 */
  height: auto;
  /* 高さを自動に調整 */
  margin-bottom: 0.5rem;
  border-radius: 1rem;
  margin-top: 0.5rem;
}

td.bold-text {
  font-weight: bold;
}

.table-text {
  font-weight: bold;
  font-size: 1.1rem;
}

.b-button {
  display: block;
  text-align: center;
  font-weight: bold;
  padding: 1rem;
  line-height: 1;
  color: white;
  background: linear-gradient(to right, #26add6 0%, #1876da 100%);
  width: 100%;
  appearance: none;
  font-size: 3.2rem;
  cursor: pointer;
  border-radius: 10px;
  position: relative;
  z-index: 1;
}

.b-button.is-icon::before {
  content: "";
  width: 1em;
  height: 1em;
  display: inline-block;
  margin-right: 2%;
  background: url(../images/search.png) center center/1em no-repeat;
}

@media screen and (max-width: 750px) {
  .b-button {
    font-size: 1rem;
  }
}

.table-list {
  display: flex;
  align-items: center;
  justify-content: space-around;
  /* 2つの列を均等に配置 */
  margin: 0rem;
  padding: 0rem;
  flex-wrap: wrap;
}

.table-list>* {
  /* width: 33%; */
  text-align: center;
}

.table-list img {
  max-width: inherit;
  width: 3rem;
  height: 3rem;
  object-fit: cover;
}

.star {
  color: #ffd900;
}

.bule {
  color: #1876da;
  font-weight: bolder;
}

.red {
  color: #F5515A;
  font-weight: bolder;
  font-size: 1.3rem;
}

.image-container {
  position: relative;
  display: inline-block;
}

.counter {
  position: absolute;
  top: -0.5rem;
  right: 0;
  width: 30px;
  height: 30px;
  background-color: #f00;
  /* 円形のオブジェクトの色 */
  border-radius: 50%;
  /* 円形にする */
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  /* 数字の色 */
  font-weight: bold;
}

.center {
  text-align: center;
  margin-top: 1rem;
  font-size: 1.5rem;
}

.p-lp__text{
  margin-top: 1rem;
}

.p-lp__text span {
  background: linear-gradient(transparent 50%, #fffab4 50%);
  display: inline;
  font-weight: bold;
}

.p-lp__text span>span {
  color: #ffbc09;
}

.gray_text {
  font-size: 1rem;
  text-align: center;
  color: gray;
}

.carousel_2 {
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  margin-bottom: 1.8rem;
  /* その他のスタイル */
}

.carousel_2-item {
  scroll-snap-align: start;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 85%;
  padding-right: 1rem;
  /* その他のスタイル */
}



/* 上位掲載の王冠 */
.c-hw-rank {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 0;
  margin: 0;
}

@media screen and (min-width: 720px) {
  .c-hw-rank {
    margin-bottom: 1.5rem;
  }
}

@media screen and (max-width: 719px) {
  .c-hw-rank {
    margin-bottom: 1.2rem;
  }
}

.c-hw-rank__no {
  position: relative;
}

@media screen and (min-width: 720px) {
  .c-hw-rank__no {
    max-width: 5rem;
    min-width: 5rem;
    margin-right: 1.5rem;
  }
}

@media screen and (max-width: 719px) {
  .c-hw-rank__no {
    max-width: 3.5rem;
    min-width: 3.5rem;
    margin-right: 1rem;
  }
}

.c-hw-rank__no img,
.c-hw-rank__no svg {
  width: 100%;
  height: auto;
}

.c-hw-rank__no span {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center;
  color: white;
  font-size: 1.2rem;
  font-weight: bold;
  padding-top: 0.6rem;
}

.c-hw-rank__svg-1 {
  fill: #ffd900;
}

.c-hw-rank__svg-2 {
  fill: #b7b7b7;
}

.c-hw-rank__svg-3 {
  fill: #d38c59;
}

.c-hw-rank__svg {
  fill: #4870ff;
}

.c-hw-rank__text {
  color: #191919;
  font-weight: 700;
  line-height: 1.5;
}

@media screen and (min-width: 720px) {
  .c-hw-rank__text {
    font-size: 2.4rem;
  }
}

@media screen and (max-width: 719px) {
  .c-hw-rank__text {
    font-size: 2rem;
  }
}

.c-hw-rank__no_top {
  position: relative;
}

@media screen and (min-width: 720px) {
  .c-hw-rank__no_top {
    max-width: 5rem;
    min-width: 5rem;
    margin-right: 1.5rem;
  }
}

@media screen and (max-width: 719px) {
  .c-hw-rank__no_top {
    max-width: 3.2rem;
    min-width: 3.2rem;
    margin-right: 1rem;
    margin-bottom: 4px;
  }
}

.c-hw-rank__no_top img,
.c-hw-rank__no_top svg {
  width: 100%;
  height: auto;
}

.c-hw-rank__no_top span {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center;
  color: white;
  font-size: 1.1rem;
  font-weight: bold;
  padding-top: 1rem;
  padding-right: 1px;
}

.c-hw-rank__svg-1 {
  fill: #ffd900;
}

.c-hw-rank__svg-2 {
  fill: #b7b7b7;
}

.c-hw-rank__svg-3 {
  fill: #d38c59;
}

.c-hw-rank__svg-4 {
  fill: #f8a228;
}

.c-review_rank {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  font-size: 0.9em;
}

.c-review__label_rank {
  font-weight: 600;
  color: #5f5f5f;
  font-size: 1em;
  margin-top: -0.5rem;
}

.c-review__sep_rank {
  font-weight: 600;
  color: #5f5f5f;
  margin-top: -0.5rem;
}

.c-review__point_rank {
  font-weight: 600;
  color: #5f5f5f;
  margin-top: -0.5rem;
}

.c-review__stars_rank {
  margin-left: 0.5rem;
  margin-top: -0.5rem;
}

.c-review-stars img {
  width: 1.4rem;
  height: auto;
  vertical-align: baseline;
}

/* アコーディオンボタン */
.p-lp__toggle-head-check {
  display: none
}

.p-lp__toggle-head-check:checked+.p-lp__toggle-head::after {
  transform: rotate(0deg)
}

.p-lp__toggle-head-check:checked+.p-lp__toggle-head+.p-lp__toggle-body {
  display: block
}

.p-lp__toggle-head {
  background: #ffa500;
  text-align: center;
  font-weight: bold;
  margin-top: 4%;
  padding: 4%;
  color: white;
  font-size: 2.8rem;
  cursor: pointer;
  width: 100%;
  display: block;
  user-select: none;
  position: relative
}

.p-lp__toggle-head::after {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background: url(../images/ic_arrow.webp) center center/contain no-repeat;
  position: absolute;
  top: 50%;
  right: 4%;
  margin-top: -0.5em;
  transform: rotate(180deg)
}

@media screen and (max-width: 750px) {
  .p-lp__toggle-head {
    font-size: 3.6vw
  }
}

.p-lp__toggle-body {
  display: none;
  user-select: none;
  padding: 4%;
  border: solid #ffa500;
  border-width: 0 4px 4px 4px
}

@media screen and (max-width: 750px) {
  .p-lp__toggle-body {
    border-width: 0 2px 2px 2px
  }
}

.p-lp__app-review-text {
  background: #f5f5f5;
  padding: 2%;
  margin-top: 1%;
}

.p-lp__app-review-text span {
  font-weight: bold
}

@media screen and (max-width: 750px) {
  .p-lp__app-review-text {
    font-size: 14px;
    text-align: center;
    margin-bottom: 8px;
    font-weight: bold;
  }
}

.lineup-text {
  margin-bottom: 8%;
}

.p-lp__app-review-comment {
  background: #fff7f8;
  padding: 4%;
  margin-top: 6%;
  position: relative;
  border-radius: 16px
}

@media screen and (max-width: 750px) {
  .p-lp__app-review-comment {
    border-radius: 8px
  }
}

.p-lp__app-review-comment-title {
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 1;
  color: #e3a613
}

@media screen and (max-width: 750px) {
  .p-lp__app-review-comment-title {
    font-size: 4.2vw
  }
}

.p-lp__app-review-comment-text {
  margin-top: 2%
}

.p-lp__app-review-table {
  border: 2px solid #f5f5f5;
  width: 100%;
  margin-top: 4%
}

.p-lp__app-review-table th,
.p-lp__app-review-table td {
  padding: 2%;
  border: 2px solid #e5e5e5
}

.p-lp__app-review-table th {
  background: #f5f5f5;
  font-weight: normal;
  text-align: left;
  font-weight: bold
}

.p-lp__app-review-table td {
  border-bottom: 2px solid #f5f5f5
}

.p-lp__app-review-table-rank {
  color: #f02f7c;
  font-weight: bold
}

.p-lp__app-review-table-star {
  color: #fbbc43;
  overflow: hidden;
  display: inline-block
}

/* テストLP用修正ポイント */
.p-top__genre-rank-body-test {
  padding: 4% 2%;
  border: solid #f8a227;
  border-width: 0 8px 8px;
}

/* テストLP用修正ポイント */
@media screen and (max-width: 750px) {
  .p-top__genre-rank-body-test {
    border-width: 0 4px 4px;
  }
}

/* テストLP用修正ポイント */
.p-top__genre-rank__app_test {
  display: flex;
  justify-content: center;
  align-items: center;
}

/* テストLP用修正ポイント */
.p-top__genre-rank-icon_test {
  padding-top: 0;
  padding-right: 10px;
  width: 20%;
}

/* テストLP用修正ポイント */
.p-top__genre-rank-detail_test {
  width: 72%;
}

/* 修正ポイント */
.p-top__genre-rank-text-test {
  margin-top: 4%;
  line-height: 1.8;
  text-align: center;
}

.small-text {
  font-size: 12px;
}

.p-top__genre-rank-text-test span {
  font-size: 13px;
}

/* OSによるLPの出し分け */
.iphone .android-lp {
  display: none;
}

.android .ios-lp {
  display: none;
}

.mac .android-lp {
  display: none;
}

.win .ios-lp {
  display: none;
}
