@import url("https://fonts.googleapis.com/css2?family=Albert+Sans:ital,wght@0,100..900;1,100..900&family=LINE+Seed+JP:wght@100;400;700;800&family=Noto+Sans+JP:wght@100..900&display=swap");
/*** The new CSS reset - version 1.5.1 (last updated 1.3.2022) ***/
body {
  margin: 0;
  padding: 0;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

a,
button {
  cursor: revert;
  color: inherit;
}

h1, h2, h3, h4, h5, h6, p {
  margin: 0;
}

ol,
ul,
menu {
  list-style: none;
  padding: 0;
  margin: 0;
}

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

table {
  border-collapse: collapse;
}

textarea {
  white-space: revert;
}

meter {
  -webkit-appearance: revert;
  appearance: revert;
}

::placeholder {
  color: unset;
}

:where([hidden]) {
  display: none;
}

:where([contenteditable]) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
}

:where([draggable=true]) {
  -webkit-user-drag: element;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  color: #231F20;
}
@media screen and (min-width: 767px) {
  body {
    background-color: #ccc;
  }
}

.body-wrapper {
  position: relative;
  overflow-x: hidden;
  background: #fff;
  max-width: min(540px, 100vw);
  margin: auto;
}

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

a, button {
  text-decoration: none;
  color: inherit;
  transition: all 0.3s;
}
@media screen and (min-width: 767px) {
  a:hover, button:hover {
    opacity: 0.7;
  }
}

/*--------------
common
--------------*/
.l-inner {
  margin: 0 auto;
  width: min(487.3846153846px, 90.2564102564vw);
}

.c-title {
  text-align: center;
  color: #393F3E;
  position: relative;
  padding-bottom: min(9.6923076923px, 1.7948717949vw);
}
.c-title-main {
  display: block;
  font-size: min(32.8153846154px, 6.0769230769vw);
  line-height: 1.2;
  letter-spacing: 0em;
  font-weight: 700;
}
.c-title-sub {
  display: block;
  font-size: min(22.9707692308px, 4.2538461538vw);
  line-height: 1.1995177818;
  letter-spacing: 0em;
  font-weight: 700;
}
.c-title::after {
  position: absolute;
  content: "";
  display: block;
  background-color: #017867;
  width: min(52.6153846154px, 9.7435897436vw);
  height: min(2.7692307692px, 0.5128205128vw);
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

.c-btn-primary {
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #FE750C;
  color: #fff;
  box-shadow: 0px 3.15224px 0px #C44F00;
  border-radius: min(43.6430769231px, 8.0820512821vw);
  width: min(393.2307692308px, 72.8205128205vw);
  height: min(58.1538461538px, 10.7692307692vw);
  font-size: min(29.0769230769px, 5.3846153846vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.c-btn-totop {
  margin-inline: auto;
  background: #F7941F;
  color: #fff;
  box-shadow: 0px 1px 0px #612002;
  border-radius: min(43.6464px, 8.0826666667vw);
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(168.9230769231px, 31.2820512821vw);
  height: min(42.9230769231px, 7.9487179487vw);
}

.c-card {
  background-color: #fff;
  border: 1px solid #C3C9CD;
  box-shadow: 2px 4px 4px rgba(0, 0, 0, 0.25);
  border-radius: min(14.5384615385px, 2.6923076923vw);
  padding: min(22.1538461538px, 4.1025641026vw) 0 min(36px, 6.6666666667vw);
}
.c-card__header {
  padding: 0 min(16.6153846154px, 3.0769230769vw);
  margin-bottom: min(33.2307692308px, 6.1538461538vw);
}
.c-card__title {
  position: relative;
  padding-left: min(51.2307692308px, 9.4871794872vw);
  font-size: min(25.4630769231px, 4.7153846154vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.c-card__title::before {
  position: absolute;
  content: "";
  display: block;
  left: min(2.7692307692px, 0.5128205128vw);
  top: max(-12.4615384615px, -2.3076923077vw);
  width: min(38.7692307692px, 7.1794871795vw);
  height: min(51.2307692308px, 9.4871794872vw);
  background-repeat: no-repeat;
  background-size: contain;
}
.c-card__star {
  display: flex;
  align-items: center;
  margin-left: min(38.7692307692px, 7.1794871795vw);
  margin-top: min(6.9230769231px, 1.2820512821vw);
  column-gap: min(4.1538461538px, 0.7692307692vw);
}
.c-card__star-icon {
  position: relative;
  display: flex;
  width: min(121.8461538462px, 22.5641025641vw);
  font-size: min(22.8461538462px, 4.2307692308vw);
  line-height: 1;
  letter-spacing: 0.08em;
  font-weight: 700;
}
.c-card__star-base {
  color: #fff;
  width: min(121.8461538462px, 22.5641025641vw);
}
.c-card__star-rating {
  position: absolute;
  top: 0;
  left: 0;
  color: #FFCD2E;
  overflow: hidden;
  white-space: nowrap;
}
.c-card__star-num {
  font-family: "LINE Seed JP", sans-serif;
  font-size: min(19.3846153846px, 3.5897435897vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.c-card__visual {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: min(13.8461538462px, 2.5641025641vw);
}
.c-card__thumb {
  width: min(218.7692307692px, 40.5128205128vw);
}
.c-card__thumb img {
  display: block;
}
.c-card__spec {
  width: min(218.7692307692px, 40.5128205128vw);
  table-layout: fixed;
  border-radius: min(7.2692307692px, 1.3461538462vw);
  border-collapse: separate;
  border-right: 0.5px solid #838383;
  border-spacing: 0;
}
.c-card__spec tr:first-of-type th {
  border-top-left-radius: min(7.2692307692px, 1.3461538462vw);
}
.c-card__spec tr:first-of-type td {
  border-top: 0.5px solid #838383;
  border-top-right-radius: min(7.2692307692px, 1.3461538462vw);
}
.c-card__spec tr:last-of-type th {
  border-bottom: none;
  border-bottom-left-radius: min(7.2692307692px, 1.3461538462vw);
}
.c-card__spec tr:last-of-type td {
  border-bottom-right-radius: min(7.2692307692px, 1.3461538462vw);
}
.c-card__spec th {
  width: min(110.7692307692px, 20.5128205128vw);
  background-color: #017867;
  color: #fff;
  border-bottom: 0.5px solid #838383;
  font-size: min(17.6815384615px, 3.2743589744vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.c-card__spec td {
  text-align: center;
  border-bottom: 0.5px solid #838383;
  width: min(108px, 20vw);
  padding: min(6.2307692308px, 1.1538461538vw) 0;
  font-size: min(17.6815384615px, 3.2743589744vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.c-card__spec td .u-color--orange {
  font-size: min(22.0846153846px, 4.0897435897vw);
}
.c-card__spec td .u-color--orange .percent {
  font-size: min(15.7846153846px, 2.9230769231vw);
}
.c-card__brands {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  column-gap: min(2.7692307692px, 0.5128205128vw);
  padding: 0 min(1.3846153846px, 0.2564102564vw);
  row-gap: min(2.7692307692px, 0.5128205128vw);
}
.c-card__brands img {
  width: auto;
}
.c-card__brands .dbarai,
.c-card__brands .softbank,
.c-card__brands .aupay,
.c-card__brands .onebank {
  height: min(20.7692307692px, 3.8461538462vw);
}
.c-card__brands .vandlecard {
  height: min(19.9384615385px, 3.6923076923vw);
}
.c-card__brands .paidy {
  height: min(15.2307692308px, 2.8205128205vw);
}
.c-card__brands .paypay {
  height: min(17.4461538462px, 3.2307692308vw);
}
.c-card__brands .merpay {
  height: min(22.1538461538px, 4.1025641026vw);
}
.c-card__brands .creditcard {
  height: min(10.3846153846px, 1.9230769231vw);
}
.c-card__brands .kyash {
  height: min(25.6153846154px, 4.7435897436vw);
}
.c-card__points {
  box-shadow: 0px 1.80571px 1.80571px rgba(0, 0, 0, 0.25);
  border: 1px solid #269C44;
  background-color: #FFFDE9;
  width: min(437.5384615385px, 81.0256410256vw);
  border-radius: min(6.2307692308px, 1.1538461538vw);
  overflow: hidden;
  margin: min(31.8461538462px, 5.8974358974vw) auto 0;
}
.c-card__points-title {
  text-align: center;
  background-color: #269C44;
  color: #FFFDE9;
  padding: min(15.2307692308px, 2.8205128205vw) 0 min(15.2307692308px, 2.8205128205vw) min(16.6153846154px, 3.0769230769vw);
  font-size: min(27.6923076923px, 5.1282051282vw);
  line-height: 1;
  letter-spacing: -0.02em;
  font-weight: 700;
}
.c-card__points-list {
  padding: min(19.3846153846px, 3.5897435897vw) 0 min(24.9230769231px, 4.6153846154vw) min(31.8461538462px, 5.8974358974vw);
}
.c-card__points-list li {
  display: flex;
  align-items: center;
  column-gap: min(6.3692307692px, 1.1794871795vw);
  color: #2C2C2C;
}
.c-card__points-list li:not(:last-of-type) {
  margin-bottom: min(13.8461538462px, 2.5641025641vw);
}
.c-card__points-list li::before {
  content: "";
  display: block;
  width: min(30.9461538462px, 5.7307692308vw);
  height: min(30.9461538462px, 5.7307692308vw);
  background: center/contain no-repeat url(../img/common/check-gr.png);
}
.c-card__points-list li .txt {
  font-size: min(22.0153846154px, 4.0769230769vw);
  line-height: 0.9937106918;
  letter-spacing: 0em;
  font-weight: 700;
}
.c-card__points-list li .txt span {
  color: #269C44;
}
.c-card__review {
  margin-top: min(11.0769230769px, 2.0512820513vw);
}
.c-card__review-head {
  text-align: center;
  width: max-content;
  margin: 0 auto;
  cursor: pointer;
}
.c-card__review-head .txt {
  display: inline-flex;
  align-items: center;
  align-items: center;
  color: #0015FF;
  padding-bottom: min(4.1538461538px, 0.7692307692vw);
  border-bottom: 0.5px solid #0015FF;
  column-gap: min(2.7692307692px, 0.5128205128vw);
  font-size: min(14.1923076923px, 2.6282051282vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.c-card__review-head .txt::after {
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/common/arrow-bl.png);
  width: min(12.4615384615px, 2.3076923077vw);
  height: min(5.5384615385px, 1.0256410256vw);
}
.c-card__review-content {
  padding-top: min(48.4615384615px, 8.9743589744vw);
}
.c-card__review-item {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: min(12.4615384615px, 2.3076923077vw);
  color: #2C2C2C;
  margin-bottom: min(41.5384615385px, 7.6923076923vw);
}
.c-card__review-item .icon {
  width: min(105.2307692308px, 19.4871794872vw);
}
.c-card__review-item .body {
  width: min(268.6153846154px, 49.7435897436vw);
}
.c-card__review-item .body-info {
  border-bottom: 1px solid #88E1AD;
  padding-bottom: min(2.7692307692px, 0.5128205128vw);
  margin-bottom: min(5.5384615385px, 1.0256410256vw);
  font-size: min(16.6153846154px, 3.0769230769vw);
  line-height: 1.3333333333;
  letter-spacing: 0em;
  font-weight: 400;
}
.c-card__review-item .body-txt {
  font-size: min(16.6153846154px, 3.0769230769vw);
  line-height: 1.3;
  letter-spacing: 0em;
  font-weight: 400;
}
.c-card__action {
  margin-top: min(23.5384615385px, 4.358974359vw);
}

.c-search__bg {
  background: top center/cover no-repeat url(../img/common/bg_search.jpg);
  padding: min(55.3846153846px, 10.2564102564vw) 0 min(22.1538461538px, 4.1025641026vw);
}
.c-search__title {
  display: flex;
  margin-left: min(24.9230769231px, 4.6153846154vw);
  margin-bottom: min(20.7692307692px, 3.8461538462vw);
  width: min(481.8461538462px, 89.2307692308vw);
}
.c-search .select-box {
  background-color: #fff;
  border: 2px solid #017867;
  width: min(487.3846153846px, 90.2564102564vw);
  margin: 0 auto;
  border-radius: min(20.7692307692px, 3.8461538462vw);
  padding: min(26.3076923077px, 4.8717948718vw) min(23.5384615385px, 4.358974359vw) min(47.0769230769px, 8.7179487179vw);
}
.c-search .select-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #2C2C2C;
}
.c-search .select-row:not(:last-of-type) {
  border-bottom: 1px solid #017867;
  padding-bottom: min(16.6153846154px, 3.0769230769vw);
  margin-bottom: min(16.6153846154px, 3.0769230769vw);
}
.c-search .select-title {
  flex: 1;
  font-size: min(20.7692307692px, 3.8461538462vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.c-search .select-wrap {
  position: relative;
  width: min(175.8461538462px, 32.5641025641vw);
}
.c-search .select-wrap::after {
  position: absolute;
  content: "";
  display: block;
  width: min(14.5384615385px, 2.6923076923vw);
  height: min(6.2307692308px, 1.1538461538vw);
  background: center/contain no-repeat url(../img/common/arrow-select.png);
  top: 50%;
  transform: translateY(-50%);
  right: min(5.5384615385px, 1.0256410256vw);
  pointer-events: none;
}
.c-search .select-wrap select {
  cursor: pointer;
  width: 100%;
  height: min(30.4615384615px, 5.641025641vw);
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border: 0.5px solid #7B7B7B;
  padding: 0 min(5.5384615385px, 1.0256410256vw);
  font-size: min(20.7692307692px, 3.8461538462vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.c-search__btn {
  border: none;
  margin: min(41.5384615385px, 7.6923076923vw) auto 0;
  font-family: "Noto Sans JP", sans-serif;
  cursor: pointer;
}

.c-campaign {
  margin-bottom: min(27.6923076923px, 5.1282051282vw);
  position: relative;
}
.c-campaign__label {
  position: absolute;
  color: #fff;
  width: min(249.2307692308px, 46.1538461538vw);
  height: min(36px, 6.6666666667vw);
  background: center/contain no-repeat url(../img/index/bg_campaign.png);
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0;
  left: 50%;
  transform: translate(-50%, -40%);
  z-index: 1;
  font-size: min(18.7476923077px, 3.4717948718vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.c-campaign__body {
  border: 1.5px solid #FF6B6B;
  padding: min(27.6923076923px, 5.1282051282vw) min(34.6153846154px, 6.4102564103vw) min(22.1538461538px, 4.1025641026vw);
  border-radius: min(11.5338461538px, 2.1358974359vw);
  width: min(383.5384615385px, 71.0256410256vw);
  margin: 0 auto;
}
.c-campaign__sub {
  color: #1B1464;
  padding-left: min(16.6153846154px, 3.0769230769vw);
  font-size: min(16.3246153846px, 3.0230769231vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.c-campaign__sub .num {
  font-size: min(25.0892307692px, 4.6461538462vw);
}
.c-campaign__main {
  margin-top: max(-11.0769230769px, -2.0512820513vw);
  color: #1B1464;
  font-size: min(25.6707692308px, 4.7538461538vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.c-campaign__main .accent {
  position: relative;
  z-index: 1;
  color: #F35528;
  font-size: min(26.3215384615px, 4.8743589744vw);
  -webkit-text-stroke: min(4.1538461538px, 0.7692307692vw) #fff;
  text-stroke: min(4.1538461538px, 0.7692307692vw) #fff;
  paint-order: stroke;
}
.c-campaign__main .accent .num {
  font-family: "LINE Seed JP", sans-serif;
  font-size: min(45.6923076923px, 8.4615384615vw);
}
.c-campaign__main .accent::before {
  position: absolute;
  content: "";
  display: block;
  width: min(184.1538461538px, 34.1025641026vw);
  height: min(8.1px, 1.5vw);
  left: 0;
  bottom: 0;
  background-color: #FFEB8C;
  z-index: -1;
}

.u-en {
  font-family: "Albert Sans", sans-serif;
}

.u-color--orange {
  color: #FE750C;
}

.js-accordion-body {
  display: none;
}

/*--------------
header
--------------*/
.l-header {
  height: min(59.5384615385px, 11.0256410256vw);
  padding-top: min(6.9230769231px, 1.2820512821vw);
}
.l-header__logo {
  display: block;
  margin: 0 auto;
  width: min(202.1538461538px, 37.4358974359vw);
}

/*--------------
footer
--------------*/
.l-footer {
  padding: min(13.8461538462px, 2.5641025641vw) 0 min(27.6923076923px, 5.1282051282vw);
}
.l-footer__logo {
  display: block;
  margin: 0 auto;
  width: min(202.1538461538px, 37.4358974359vw);
}
.l-footer__list {
  display: flex;
  justify-content: center;
  margin-top: min(24.9230769231px, 4.6153846154vw);
  column-gap: min(13.8461538462px, 2.5641025641vw);
}
.l-footer__list li {
  display: flex;
}
.l-footer__list li a {
  color: #616161;
  font-size: min(11.0769230769px, 2.0512820513vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 500;
}
.l-footer__copyright {
  text-align: center;
  color: #616161;
  margin-top: min(20.7692307692px, 3.8461538462vw);
  font-size: min(11.0769230769px, 2.0512820513vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 400;
}

/*--------------
index
--------------*/
.fv {
  display: flex;
}

.result {
  margin-bottom: min(69.2307692308px, 12.8205128205vw);
}
.result_box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: min(56.7692307692px, 10.5128205128vw);
  border-radius: min(5.5384615385px, 1.0256410256vw);
  background: #017867;
  border: 2px solid #017867;
  margin: min(37.3846153846px, 6.9230769231vw) 0 min(31.8461538462px, 5.8974358974vw);
  padding: 0 min(26.3076923077px, 4.8717948718vw);
}
.result_box .result_h2 {
  color: #fff;
  font-size: min(22.1538461538px, 4.1025641026vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.result_box a {
  text-decoration: underline;
  color: #fff;
  font-size: min(13.8461538462px, 2.5641025641vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 500;
}
.result .c-card__title {
  padding-left: 0;
}
.result .c-card__title::before {
  display: none;
}
.result .c-card__star {
  margin-left: 0;
}

.ranking__bg {
  background-color: #EDEDED;
  padding: min(23.5384615385px, 4.358974359vw) 0 min(34.6153846154px, 6.4102564103vw);
}
.ranking__title {
  width: min(487.3846153846px, 90.2564102564vw);
  margin-left: min(33.2307692308px, 6.1538461538vw);
  margin-bottom: min(18px, 3.3333333333vw);
}
.ranking .rank_body {
  margin-bottom: min(31.8461538462px, 5.8974358974vw);
}
.ranking .rank_body.rank-1 .c-card__title::before {
  background-image: url(../img/index/ranking1.png);
}
.ranking .rank_body.rank-2 .c-card__title::before {
  background-image: url(../img/index/ranking2.png);
}
.ranking .rank_body.rank-3 .c-card__title::before {
  background-image: url(../img/index/ranking3.png);
}
.ranking .rank_body.rank-4 .c-card__title::before {
  background-image: url(../img/index/ranking4.png);
}
.ranking .rank_body.rank-5 .c-card__title::before {
  background-image: url(../img/index/ranking5.png);
}

.p-special__bg {
  background: center/cover no-repeat url(../img/index/bg_special.jpg);
  padding: min(27.6923076923px, 5.1282051282vw) 0 min(51.2307692308px, 9.4871794872vw);
}
.p-special__title {
  text-align: center;
  margin-bottom: min(27.6923076923px, 5.1282051282vw);
}
.p-special__title-sub {
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(452.7692307692px, 83.8461538462vw);
  height: min(56.7692307692px, 10.5128205128vw);
  border-radius: min(50.5938461538px, 9.3692307692vw);
  margin: 0 auto min(8.3076923077px, 1.5384615385vw);
  background-color: #269C44;
  color: #fff;
  font-size: min(30.4061538462px, 5.6307692308vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-special__title-main {
  color: #269C44;
  font-size: min(55.5507692308px, 10.2871794872vw);
  line-height: 1;
  letter-spacing: -0.04em;
  font-weight: 700;
}
.p-special__title-main small {
  font-size: min(51.4938461538px, 9.5358974359vw);
}
.p-special__card {
  padding: min(54px, 10vw) 0 min(58.1538461538px, 10.7692307692vw);
}
.p-special__card-title {
  text-align: center;
  margin-bottom: min(38.7692307692px, 7.1794871795vw);
  font-size: min(33.2307692308px, 6.1538461538vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-special__btn {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  align-items: center;
  margin: min(29.0769230769px, 5.3846153846vw) auto 0;
  width: min(393.2307692308px, 72.8205128205vw);
  height: min(87.2307692308px, 16.1538461538vw);
  border-radius: min(43.6430769231px, 8.0820512821vw);
  background-color: #FE750C;
  color: #fff;
  box-shadow: 0px 3.15224px 0px #C44F00;
}
.p-special__btn-sub {
  font-size: min(19.3846153846px, 3.5897435897vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
  width: min(263.0769230769px, 48.7179487179vw);
  border-bottom: 1px solid #fff;
  padding-bottom: min(6.9230769231px, 1.2820512821vw);
  margin-bottom: min(6.9230769231px, 1.2820512821vw);
}
.p-special__btn-main {
  font-size: min(27.6923076923px, 5.1282051282vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}

.p-point__bg {
  background-color: #EDEDED;
  padding: min(22.1538461538px, 4.1025641026vw) 0 min(41.5384615385px, 7.6923076923vw);
}
.p-point__title {
  text-align: center;
  margin-bottom: min(22.1538461538px, 4.1025641026vw);
}
.p-point__title-sub {
  -webkit-text-stroke: min(8.3076923077px, 1.5384615385vw) rgba(1, 120, 103, 0.9607843137);
  text-stroke: min(8.3076923077px, 1.5384615385vw) rgba(1, 120, 103, 0.9607843137);
  paint-order: stroke;
  display: block;
  color: #fff;
  margin-bottom: min(8.3076923077px, 1.5384615385vw);
  font-size: min(45.5261538462px, 8.4307692308vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-point__title-main {
  -webkit-text-stroke: min(9.9692307692px, 1.8461538462vw) rgba(1, 120, 103, 0.9607843137);
  text-stroke: min(9.9692307692px, 1.8461538462vw) rgba(1, 120, 103, 0.9607843137);
  paint-order: stroke;
  display: block;
  color: #FFF999;
  font-size: min(53.5292307692px, 9.9128205128vw);
  line-height: 1;
  letter-spacing: -0.02em;
  font-weight: 700;
}
.p-point__item {
  background-color: #fff;
  border: 1px solid #017867;
}
.p-point__item:not(:last-of-type) {
  margin-bottom: min(38.7692307692px, 7.1794871795vw);
}
.p-point__head {
  cursor: pointer;
  background-color: #017867;
  display: flex;
  align-items: flex-start;
  padding: min(16.6153846154px, 3.0769230769vw) min(26.3076923077px, 4.8717948718vw);
  column-gap: min(16.6153846154px, 3.0769230769vw);
}
.p-point__head.is-opne .p-point__head-icon::after {
  height: 0;
}
.p-point__head-txt {
  flex: 1;
  color: #fff;
  font-size: min(27.6923076923px, 5.1282051282vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-point__head-icon {
  width: min(22.1538461538px, 4.1025641026vw);
  height: min(22.1538461538px, 4.1025641026vw);
  position: relative;
  margin-top: min(6.9230769231px, 1.2820512821vw);
}
.p-point__head-icon::before, .p-point__head-icon::after {
  position: absolute;
  content: "";
  display: block;
  background-color: #fff;
  transition: all 0.3s;
}
.p-point__head-icon::before {
  width: 100%;
  height: min(2.0769230769px, 0.3846153846vw);
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}
.p-point__head-icon::after {
  width: min(2.0769230769px, 0.3846153846vw);
  height: 100%;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.p-point__content {
  padding: min(18px, 3.3333333333vw) min(26.3076923077px, 4.8717948718vw) min(30.4615384615px, 5.641025641vw);
  display: flex;
  align-items: flex-end;
  justify-content: center;
  column-gap: min(6.9230769231px, 1.2820512821vw);
}
.p-point__image {
  width: min(180px, 33.3333333333vw);
}
.p-point__desc {
  flex: 1;
  font-size: min(19.3846153846px, 3.5897435897vw);
  line-height: 1.63;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-point__steps {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: min(26.3076923077px, 4.8717948718vw) min(26.3076923077px, 4.8717948718vw) min(31.8461538462px, 5.8974358974vw);
}
.p-point__step {
  position: relative;
}
.p-point__step:not(:last-of-type)::after {
  position: absolute;
  content: "";
  display: block;
  width: min(11.0769230769px, 2.0512820513vw);
  height: min(20.7692307692px, 3.8461538462vw);
  transform: translateX(100%);
  background-color: #017867;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  right: max(-9.6923076923px, -1.7948717949vw);
  bottom: min(44.3076923077px, 8.2051282051vw);
}
.p-point__step-num {
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "LINE Seed JP", sans-serif;
  width: min(29.0769230769px, 5.3846153846vw);
  height: min(29.0769230769px, 5.3846153846vw);
  border-radius: min(2.7692307692px, 0.5128205128vw);
  margin: 0 auto min(6.9230769231px, 1.2820512821vw);
  background-color: #017867;
  color: #fff;
  font-size: min(18px, 3.3333333333vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-point__step-box {
  text-align: center;
  background-color: #EEEEEE;
  width: min(126px, 23.3333333333vw);
  height: min(108px, 20vw);
  border-radius: min(6.9230769231px, 1.2820512821vw);
  padding: min(8.3076923077px, 1.5384615385vw) 0;
}
.p-point__step-title {
  position: relative;
  padding-bottom: min(2.7692307692px, 0.5128205128vw);
  margin-bottom: min(5.5384615385px, 1.0256410256vw);
  font-size: min(19.3846153846px, 3.5897435897vw);
  line-height: 1.63;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-point__step-title::after {
  position: absolute;
  content: "";
  display: block;
  width: min(96.9230769231px, 17.9487179487vw);
  height: 1px;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  background-color: #017867;
}
.p-point__step-txt {
  font-size: min(18px, 3.3333333333vw);
  line-height: 1.12;
  letter-spacing: -0.01em;
  font-weight: 400;
}
.p-point__step-txt .arrow {
  display: inline-block;
  background-color: #231F20;
  width: min(6.9230769231px, 1.2820512821vw);
  height: min(12.4615384615px, 2.3076923077vw);
  margin: 0 min(5.5384615385px, 1.0256410256vw);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.p-point__merit {
  position: relative;
  padding: min(20.7692307692px, 3.8461538462vw) min(26.3076923077px, 4.8717948718vw) min(22.1538461538px, 4.1025641026vw);
}
.p-point__merit-list {
  position: relative;
  z-index: 2;
}
.p-point__merit-item {
  display: flex;
  align-items: center;
  column-gap: min(9.6923076923px, 1.7948717949vw);
}
.p-point__merit-item:not(:last-of-type) {
  margin-bottom: min(15.2307692308px, 2.8205128205vw);
}
.p-point__merit-num {
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "LINE Seed JP", sans-serif;
  width: min(29.0769230769px, 5.3846153846vw);
  height: min(29.0769230769px, 5.3846153846vw);
  border-radius: min(2.7692307692px, 0.5128205128vw);
  background-color: #017867;
  color: #fff;
  font-size: min(18px, 3.3333333333vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-point__merit-txt {
  font-size: min(22.1538461538px, 4.1025641026vw);
  line-height: 1.12;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-point__merit-txt span {
  color: #F7941F;
}
.p-point__merit-image {
  display: flex;
  position: absolute;
  z-index: 1;
  width: min(207.6923076923px, 38.4615384615vw);
  right: 0;
  bottom: min(24.9230769231px, 4.6153846154vw);
}

.p-column__bg {
  background-color: #F5FED8;
  padding: min(52.6153846154px, 9.7435897436vw) 0;
}
.p-column__title {
  text-align: center;
  margin-bottom: min(41.5384615385px, 7.6923076923vw);
}
.p-column__title-sub {
  display: block;
  width: min(448.6153846154px, 83.0769230769vw);
  height: min(69.2307692308px, 12.8205128205vw);
  margin: 0 auto min(16.6153846154px, 3.0769230769vw);
  color: #fff;
  background: center/contain no-repeat url(../img/index/fukidashi.png);
  padding-top: min(9.6923076923px, 1.7948717949vw);
  font-size: min(36.72px, 6.8vw);
  line-height: 1.0003770739;
  letter-spacing: 0em;
  font-weight: 900;
}
.p-column__title-main {
  -webkit-text-stroke: min(6.9230769231px, 1.2820512821vw) rgba(1, 120, 103, 0.9607843137);
  text-stroke: min(6.9230769231px, 1.2820512821vw) rgba(1, 120, 103, 0.9607843137);
  paint-order: stroke;
  color: #fff;
  font-size: min(40.6938461538px, 7.5358974359vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-column__list {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: min(22.1538461538px, 4.1025641026vw);
}
.p-column__item {
  width: min(434.7692307692px, 80.5128205128vw);
}
.p-column__item a {
  background-color: #fff;
  border: min(2.7692307692px, 0.5128205128vw) solid #017867;
  border-radius: min(4.1538461538px, 0.7692307692vw);
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: min(70.6153846154px, 13.0769230769vw);
  padding: 0 min(20.7692307692px, 3.8461538462vw);
  font-size: min(19.3846153846px, 3.5897435897vw);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-column__item a::after {
  content: "";
  display: block;
  width: min(13.8461538462px, 2.5641025641vw);
  height: min(26.3076923077px, 4.8717948718vw);
  background: center/contain no-repeat url(../img/common/arrow-gr.png);
}

/*--------------
ranking
--------------*/
.p-ranking {
  margin: min(38.7692307692px, 7.1794871795vw) auto min(70.6153846154px, 13.0769230769vw);
}
.p-ranking__table {
  table-layout: fixed;
  width: min(425.0769230769px, 78.7179487179vw);
  margin: min(27.6923076923px, 5.1282051282vw) auto min(58.1538461538px, 10.7692307692vw);
}
.p-ranking__table tr:first-of-type th {
  border-top: 1px solid #017867;
}
.p-ranking__table tr:first-of-type td {
  border-top: 1px solid #BEBEBE;
}
.p-ranking__table th {
  text-align: left;
  border-bottom: 1px solid #017867;
  padding: min(6.9230769231px, 1.2820512821vw);
  width: min(124.6153846154px, 23.0769230769vw);
  font-size: min(18.3046153846px, 3.3897435897vw);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-ranking__table td {
  border-bottom: 1px solid #BEBEBE;
  padding: min(13.8461538462px, 2.5641025641vw) min(9.6923076923px, 1.7948717949vw);
  font-size: min(18.3046153846px, 3.3897435897vw);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 500;
}

/*--------------
privacy
--------------*/
.p-privacy {
  margin-top: min(38.7692307692px, 7.1794871795vw);
}
.p-privacy__inner {
  margin: min(16.6153846154px, 3.0769230769vw) auto min(27.6923076923px, 5.1282051282vw);
  max-width: min(415.3846153846px, 76.9230769231vw);
}
.p-privacy__inner h2 {
  color: #017867;
  font-size: min(19.6892307692px, 3.6461538462vw);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 700;
  margin-top: min(29.0769230769px, 5.3846153846vw);
}
.p-privacy__inner ol, .p-privacy__inner ul {
  margin-top: min(29.0769230769px, 5.3846153846vw);
}
.p-privacy__inner p, .p-privacy__inner li {
  font-size: min(19.6892307692px, 3.6461538462vw);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-privacy__inner .mt0 {
  margin-top: 0 !important;
}

/*--------------
company
--------------*/
.p-company {
  margin: min(41.5384615385px, 7.6923076923vw) auto min(45.6923076923px, 8.4615384615vw);
}
.p-company__list {
  width: min(390.4615384615px, 72.3076923077vw);
  margin: min(48.4615384615px, 8.9743589744vw) auto min(58.1538461538px, 10.7692307692vw);
}
.p-company__list dt {
  background-color: #F4F4F4;
  border-left: 2px solid #017867;
  padding: min(6.9230769231px, 1.2820512821vw) min(22.1538461538px, 4.1025641026vw);
  font-size: min(11.3953846154px, 2.1102564103vw);
  line-height: 1.5018226002;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-company__list dd {
  margin: 0;
  padding: min(9.6923076923px, 1.7948717949vw) min(5.5384615385px, 1.0256410256vw);
  font-size: min(9.7476923077px, 1.8051282051vw);
  line-height: 1.9005681818;
  letter-spacing: 0em;
  font-weight: 400;
}

/*--------------
columnpage
--------------*/
.p-columnpage {
  padding: min(43.2px, 8vw) 0;
}
.p-columnpage__inner {
  margin: 0 auto;
  max-width: min(468px, 86.6666666667vw);
}
.p-columnpage h1 {
  background-color: #FFEFE7;
  padding: min(9.36px, 1.7333333333vw) min(7.2px, 1.3333333333vw);
  margin-bottom: min(28.8px, 5.3333333333vw);
  font-size: min(32.4px, 6vw);
  line-height: 1.1555555556;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-columnpage h1 + p {
  margin-bottom: min(36px, 6.6666666667vw);
}
.p-columnpage h2 {
  margin: min(28.8px, 5.3333333333vw) 0 min(14.4px, 2.6666666667vw);
  padding: min(11.88px, 2.2vw) min(7.2px, 1.3333333333vw);
  border-top: 1px solid #F68446;
  border-bottom: 1px solid #F68446;
  font-size: min(25.2px, 4.6666666667vw);
  line-height: 1.4857142857;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-columnpage h3 {
  padding: min(7.2px, 1.3333333333vw);
  margin: min(28.8px, 5.3333333333vw) 0 min(14.4px, 2.6666666667vw);
  border-bottom: 1px solid #F68446;
  color: #F68446;
  font-size: min(25.2px, 4.6666666667vw);
  line-height: 1.4857142857;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-columnpage p, .p-columnpage li {
  font-size: min(21.6px, 4vw);
  line-height: 1.6;
  letter-spacing: 0em;
  font-weight: 400;
  padding: 0 min(7.2px, 1.3333333333vw);
}
.p-columnpage .c-btn-totop {
  margin-top: min(49.8461538462px, 9.2307692308vw);
}