@charset "UTF-8";

@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");

.contents {
  color: #000000;
}

.contents a {
  text-decoration: none;
}

.contents img {
  width: 100%;

  max-width: 100%;

  height: auto;
}

.contents .u-min {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro",
    "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

.contents .c-ttl {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro",
    "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;

  text-align: center;

  position: relative;
}

@media screen and (min-width: 768px) {
  .contents .c-ttl {
    padding-bottom: 30px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .c-ttl {
    padding-bottom: 2.7777777778vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .c-ttl {
    padding-bottom: 8vw;
  }
}

.contents .c-ttl::after {
  position: absolute;

  content: "";

  display: block;

  background-color: #000;

  height: 1px;

  left: 50%;

  transform: translateX(-50%);

  bottom: 0;
}

@media screen and (min-width: 768px) {
  .contents .c-ttl::after {
    width: 44px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .c-ttl::after {
    width: 4.0740740741vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .c-ttl::after {
    width: 11.7333333333vw;
  }
}

.contents .c-ttl span {
  display: block;
}

@media screen and (min-width: 768px) {
  .contents .c-ttl-sub {
    font-size: 24px;

    line-height: 1;

    letter-spacing: 0.08em;

    font-weight: 500;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .c-ttl-sub {
    font-size: 2.2222222222vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .c-ttl-sub {
    font-size: calc(40 / 750 * 100vw);

    line-height: 1;

    letter-spacing: 0.08em;

    font-weight: 500;
  }
}

@media screen and (min-width: 768px) {
  .contents .c-ttl-sub {
    margin-bottom: 16px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .c-ttl-sub {
    margin-bottom: 1.4814814815vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .c-ttl-sub {
    margin-bottom: 4vw;
  }
}

@media screen and (min-width: 768px) {
  .contents .c-ttl-main {
    font-size: 40px;

    line-height: 1;

    letter-spacing: 0.08em;

    font-weight: 500;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .c-ttl-main {
    font-size: 3.7037037037vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .c-ttl-main {
    font-size: calc(56 / 750 * 100vw);

    line-height: 1;

    letter-spacing: 0.08em;

    font-weight: 500;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-kv {
    margin-bottom: 70px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-kv {
    margin-bottom: 6.4814814815vw;
  }
}

.contents .p-kv__ttl {
  display: flex;

  justify-content: center;
}

@media screen and (min-width: 768px) {
  .contents .p-kv__ttl {
    background: linear-gradient(to right, #e5edf7 0%, #e7e8e9 100%);
  }
}

@media screen and (min-width: 768px) {
  .contents .p-kv__ttl img {
    max-width: 1440px;
  }
}

@media screen and (min-width: 768px) {
  .contents .award_wrapper {
    max-width: 840px;

    margin: 70px auto;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .award_wrapper {
    max-width: 77.7777777778vw;

    margin: 6.4814814815vw auto;
  }
}

@media screen and (max-width: 767px) {
  .contents .award_wrapper {
    max-width: 92vw;

    margin: 9.33333vw auto;
  }
}

@media screen and (min-width: 768px) {
  .contents .award_img {
    width: 473.5px;

    margin: 0 auto 23px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .award_img {
    width: 43.8425925926vw;

    margin: 0 auto 2.1296296296vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .award_img {
    width: 92vw;

    margin: 0 auto 8vw;
  }
}

.contents .offer__txt {
  max-width: 660px;

  width: fit-content;

  margin-inline: auto;

  font-size: 0.65rem;

  line-height: 1.6666666667;

  letter-spacing: 0.02em;

  color: #5c656b;

  text-align: left;
}

.contents .offer__txt p {
  display: flex;
}

@media screen and (min-width: 768px) {
  .contents .offer__txt p {
    margin-left: -4px;
  }
}

@media screen and (max-width: 767px) {
  .contents .offer__txt p {
    margin-left: -1.07vw;
  }
}

@media screen and (min-width: 768px) {
  .contents .offer__txt p + p {
    margin-top: 5px;
  }
}

@media screen and (max-width: 767px) {
  .contents .offer__txt p + p {
    margin-top: 1.33vw;
  }
}

.contents .offer__txt p > span {
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .contents .offer__txt p > span {
    margin-right: 4px;
  }
}

@media screen and (max-width: 767px) {
  .contents .offer__txt p > span {
    margin-right: 1.07vw;
  }
}

.contents .p-link__list {
  display: flex;
}

@media screen and (min-width: 768px) {
  .contents .p-link__list {
    justify-content: center;

    column-gap: 2px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-link__list {
    column-gap: 0.1851851852vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-link__list {
    flex-wrap: wrap;

    justify-content: space-between;

    row-gap: 0.2666666667vw;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-link__list-item {
    width: 35%;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-link__list-item {
    width: 22.962962963vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-link__list-item {
    width: 49.8666666667%;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-link__list-item.item04 a {
    padding-top: 20px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-link__list-item.item04 a {
    padding-top: 1.8518518519vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-link__list-item.item04 a {
    padding-top: 6.4vw;
  }
}

.contents .p-link__list-item a {
  display: flex;

  justify-content: center;

  text-align: center;

  background-color: #5fa1b7;

  position: relative;

  color: #fff;
}

@media screen and (min-width: 768px) {
  .contents .p-link__list-item a {
    font-size: 14px;

    line-height: 1.4;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-link__list-item a {
    font-size: 1.2962962963vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-link__list-item a {
    font-size: calc(28 / 750 * 100vw);

    line-height: 1.4;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-link__list-item a {
    height: 81px;

    padding-top: 12px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-link__list-item a {
    height: 7.5vw;

    padding-top: 1.1111111111vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-link__list-item a {
    height: 21.7333333333vw;

    padding-top: 3.2vw;
  }
}

.contents .p-link__list-item a::after {
  position: absolute;

  content: "";

  display: block;

  background-repeat: no-repeat;

  background-size: contain;

  background-image: url(../img/ic-arrow-wh.png);

  left: 50%;

  transform: translateX(-50%);
}

@media screen and (min-width: 768px) {
  .contents .p-link__list-item a::after {
    width: 14px;

    height: 8px;

    bottom: 12px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-link__list-item a::after {
    width: 1.2962962963vw;

    height: 0.7407407407vw;

    bottom: 1.1111111111vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-link__list-item a::after {
    width: 2.6666666667vw;

    height: 1.6vw;

    bottom: 3.7333333333vw;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__ttl {
    margin-bottom: 35px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__ttl {
    margin-bottom: 6.4814814815vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__ttl {
    margin-bottom: 13.3333333333vw;
  }
}

.contents .p-lineup__bg {
  background-repeat: no-repeat;

  background-size: cover;
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__bg {
    background-image: url(../img/bg-lineup.jpg);

    padding: 68px 0 80px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__bg {
    padding: 6.2962962963vw 0 7.4074074074vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__bg {
    background-image: url(../img/bg-lineup-sp.jpg);

    padding: 13.3333333333vw 0;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item.item01 .p-lineup__item-ttl {
    white-space: nowrap;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item.item01 .box {
    margin-left: auto;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item.item02 .box,
  .contents .p-lineup__item.item04 .box {
    margin-left: auto;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item.item03 .p-lineup__item-ttl {
    white-space: nowrap;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__item.item02 .p-lineup__item-ttl,
  .contents .p-lineup__item.item03 .p-lineup__item-ttl,
  .contents .p-lineup__item.item04 .p-lineup__item-ttl {
    display: flex;

    align-items: center;

    justify-content: center;

    height: 106px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__item.item02 .p-lineup__item-ttl,
  .contents .p-lineup__item.item03 .p-lineup__item-ttl,
  .contents .p-lineup__item.item04 .p-lineup__item-ttl {
    height: 9.8148148148vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item.item05 {
    margin-top: 9.6vw;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__item.item05 .box-ttl {
    height: 52px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__item.item05 .box-ttl {
    height: 4.8148148148vw;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__item-ttl {
    font-size: 22px;

    line-height: 1.6;

    letter-spacing: 0.08em;

    font-weight: 500;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__item-ttl {
    font-size: 2.037037037vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item-ttl {
    font-size: calc(44 / 750 * 100vw);

    line-height: 1.8;

    letter-spacing: 0.08em;

    font-weight: 500;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__item-ttl {
    text-align: center;

    margin-bottom: 24px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__item-ttl {
    margin-bottom: 2.2222222222vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item-ttl {
    padding-left: 8.5333333333vw;

    margin-bottom: 4.8vw;

    padding-right: 7.4666666667vw;
  }
}

.contents .p-lineup__item-wrap {
  display: flex;
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__item-wrap {
    justify-content: center;

    column-gap: 12px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__item-wrap {
    column-gap: 1.1111111111vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item-wrap {
    flex-direction: column;
  }
}

.contents .p-lineup__item .box {
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__item .box {
    width: 325px;

    padding-bottom: 25px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__item .box {
    width: 30.0925925926vw;

    padding-bottom: 2.3148148148vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item .box {
    padding-bottom: 6.6666666667vw;

    margin: 0 auto;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item {
    width: 92vw;
  }
}

.contents .p-lineup__item .box img {
  display: block;
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__item .box img {
    margin-bottom: 15px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__item .box img {
    margin-bottom: 1.3888888889vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item .box img {
    margin-bottom: 4.4vw;
  }
}

.contents .p-lineup__item .box-category {
  display: flex;

  flex-wrap: wrap;
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__item .box-category {
    padding: 0 15px;

    margin-bottom: 10px;

    column-gap: 6px;

    row-gap: 5px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__item .box-category {
    padding: 0 1.3888888889vw;

    margin-bottom: 0.9259259259vw;

    column-gap: 0.5555555556vw;

    row-gap: 0.462962963vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item .box-category {
    padding: 0 4vw;

    margin-bottom: 2.4vw;

    column-gap: 1.4666666667vw;

    row-gap: 1.4666666667vw;
  }
}

.contents .p-lineup__item .box-category li {
  color: #5fa1b7;

  border: 1px solid #5fa1b7;
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__item .box-category li {
    font-size: 12px;

    line-height: 1;

    letter-spacing: 0em;

    font-weight: 400;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__item .box-category li {
    font-size: 1.1111111111vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item .box-category li {
    font-size: calc(24 / 750 * 100vw);

    line-height: 1;

    letter-spacing: 0em;

    font-weight: 400;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__item .box-category li {
    padding: 5px 8px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__item .box-category li {
    padding: 0.462962963vw 0.7407407407vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item .box-category li {
    padding: 1.3333333333vw 2.1333333333vw;
  }
}

.contents .p-lineup__item .box-ttl {
  text-align: center;
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__item .box-ttl {
    font-size: 16px;

    line-height: 1.6;

    letter-spacing: 0.08em;

    font-weight: 600;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__item .box-ttl {
    font-size: 1.4814814815vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item .box-ttl {
    font-size: calc(32 / 750 * 100vw);

    line-height: 1.6;

    letter-spacing: 0.08em;

    font-weight: 600;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__item .box-ttl {
    margin-bottom: 16px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__item .box-ttl {
    margin-bottom: 1.4814814815vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item .box-ttl {
    margin-bottom: 4vw;
  }
}

.contents .p-lineup__item .box-price {
  text-align: center;
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__item .box-price {
    font-size: 20px;

    line-height: 1;

    letter-spacing: 0.04em;

    font-weight: 400;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__item .box-price {
    font-size: 1.8518518519vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item .box-price {
    font-size: calc(40 / 750 * 100vw);

    line-height: 1;

    letter-spacing: 0.04em;

    font-weight: 400;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__item .box-price {
    margin-bottom: 16px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__item .box-price {
    margin-bottom: 1.4814814815vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item .box-price {
    margin-bottom: 4vw;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__item .box-price-yen {
    font-size: 16px;

    line-height: 1.25;

    letter-spacing: 0.04em;

    font-weight: 400;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__item .box-price-yen {
    font-size: 1.4814814815vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item .box-price-yen {
    font-size: calc(32 / 750 * 100vw);

    line-height: 1.25;

    letter-spacing: 0.04em;

    font-weight: 400;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__item .box-price-tax {
    font-size: 17px;

    line-height: 1.1764705882;

    letter-spacing: 0.04em;

    font-weight: 400;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__item .box-price-tax {
    font-size: 1.5740740741vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item .box-price-tax {
    font-size: calc(34 / 750 * 100vw);

    line-height: 1.1764705882;

    letter-spacing: 0.04em;

    font-weight: 400;
  }
}

.contents .p-lineup__item .box-btn {
  display: flex;

  align-items: center;

  background-color: #000;

  color: #fff;

  position: relative;

  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__item .box-btn {
    font-size: 16px;

    line-height: 1;

    letter-spacing: 0.08em;

    font-weight: 600;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__item .box-btn {
    font-size: 1.4814814815vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item .box-btn {
    font-size: calc(32 / 750 * 100vw);

    line-height: 1;

    letter-spacing: 0.08em;

    font-weight: 600;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__item .box-btn {
    width: 200px;

    height: 54px;

    padding-left: 27px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__item .box-btn {
    width: 18.5185185185vw;

    height: 5vw;

    padding-left: 2.5vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item .box-btn {
    width: 53.3333333333vw;

    height: 14.4vw;

    padding-left: 7.2vw;
  }
}

.contents .p-lineup__item .box-btn::after {
  position: absolute;

  content: "";

  display: block;

  background-repeat: no-repeat;

  background-size: contain;

  background-image: url(../img/ic-arrow-wh.png);

  top: 50%;

  transform: translateY(-50%) rotate(-90deg);
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__item .box-btn::after {
    width: 15px;

    height: 9px;

    right: 27px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__item .box-btn::after {
    width: 1.3888888889vw;

    height: 0.8333333333vw;

    right: 2.5vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__item .box-btn::after {
    width: 4vw;

    height: 2.4vw;

    right: 7.2vw;
  }
}

.contents .p-lineup__wrap {
  display: flex;
}

@media screen and (min-width: 768px) {
  .contents .p-lineup__wrap {
    justify-content: center;

    column-gap: 12px;

    margin-top: 60px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lineup__wrap {
    column-gap: 1.1111111111vw;

    margin-top: 5.5555555556vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lineup__wrap {
    flex-direction: column;

    margin-top: 9.6vw;

    row-gap: 9.6vw;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-series__bg {
    background-image: url(../img/bg-lineup.jpg);

    padding: 68px 0 80px;

    background-repeat: no-repeat;

    background-size: cover;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-series__bg {
    background-image: url(../img/bg-lineup-sp.jpg);

    padding: 13.3333333333vw 0;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-series {
    padding: 70px 0 0;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-series {
    padding: 6.4814814815vw 0 0;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-series {
    padding: 13.3333333333vw 0 0 !important;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-series__ttl {
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-series__ttl {
    margin-bottom: 2.7777777778vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-series__ttl {
    margin-bottom: 6.6666666667vw;
  }
}

.contents .p-series__lead {
  text-align: center;
}

@media screen and (min-width: 768px) {
  .contents .p-series__lead {
    font-size: 16px;

    line-height: 1.6;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-series__lead {
    font-size: 1.4814814815vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-series__lead {
    font-size: calc(28 / 750 * 100vw);

    line-height: 1.6;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-series__lead {
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-series__lead {
    margin-bottom: 2.7777777778vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-series__lead {
    margin-bottom: 6.6666666667vw;
  }
}

.contents .p-series__tabwrap {
  display: flex;

  justify-content: center;
}

@media screen and (min-width: 768px) {
  .contents .p-series__tabwrap {
    margin-bottom: 48px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-series__tabwrap {
    margin-bottom: 4.4444444444vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-series__tabwrap {
    margin-bottom: 8.9333333333vw;
  }
}

.contents .p-series__tab {
  cursor: pointer;

  display: flex;

  align-items: center;

  justify-content: center;

  text-align: center;

  position: relative;

  color: #aeb6c5;

  border: 1px solid #aeb6c5;

  border-right: none;
}

@media screen and (min-width: 768px) {
  .contents .p-series__tab {
    font-size: 14px;

    line-height: 1.5;

    letter-spacing: 0em;

    font-weight: 400;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-series__tab {
    font-size: 1.2962962963vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-series__tab {
    font-size: calc(22 / 750 * 100vw);

    line-height: 1.5;

    letter-spacing: 0em;

    font-weight: 400;
  }
}

.contents .p-series__tab {
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .contents .p-series__tab {
    width: 135px;

    height: 73px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-series__tab {
    width: 12.5vw;

    height: 6.7592592593vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-series__tab {
    width: 18.6666666667vw;

    height: 20.1333333333vw;
  }
}

.contents .p-series__tab::after {
  position: absolute;

  content: "";

  display: none;

  bottom: 0;

  left: 50%;

  transform: translate(-50%, 99%);

  clip-path: polygon(0 0, 100% 0, 50% 100%);
}

@media screen and (min-width: 768px) {
  .contents .p-series__tab::after {
    width: 15px;

    height: 8px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-series__tab::after {
    width: 1.3888888889vw;

    height: 0.7407407407vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-series__tab::after {
    width: 4vw;

    height: 2vw;
  }
}

.contents .p-series__tab.is-active {
  color: #fff;

  font-weight: 600;
}

.contents .p-series__tab.is-active::after {
  display: block;
}

.contents .p-series__tab.tab01.is-active {
  background-color: #f5bf56;

  border-color: #f5bf56;
}

.contents .p-series__tab.tab01.is-active::after {
  background-color: #f5bf56;
}

.contents .p-series__tab.tab02.is-active {
  background-color: #e3928d;

  border-color: #e3928d;
}

.contents .p-series__tab.tab02.is-active::after {
  background-color: #e3928d;
}

.contents .p-series__tab.tab03.is-active {
  background-color: #dbb886;

  border-color: #dbb886;
}

.contents .p-series__tab.tab03.is-active::after {
  background-color: #dbb886;
}

.contents .p-series__tab.tab04.is-active {
  background-color: #b78e7f;

  border-color: #b78e7f;
}

.contents .p-series__tab.tab04.is-active::after {
  background-color: #b78e7f;
}

.contents .p-series__tab.tab05 {
  border-right: 1px solid #aeb6c5;
}

.contents .p-series__tab.tab05.is-active {
  background-color: #aad3cf;

  border-color: #aad3cf;
}

.contents .p-series__tab.tab05.is-active::after {
  background-color: #aad3cf;
}

.contents .p-series__panel-wrap {
  position: relative;
}

@media screen and (max-width: 767px) {
  .contents .p-series__panel-wrap {
    padding-bottom: 9.0666666667vw;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-series__panel-wrap .swiper-button-next,
  .contents .p-series__panel-wrap .swiper-button-prev {
    display: none;

    background-image: url(../img/ic-next.png);

    width: 32px;

    height: 32px;

    background-size: contain;
  }

  .contents .p-series__panel-wrap .swiper-button-next {
    right: 64px;
  }

  .contents .p-series__panel-wrap .swiper-button-prev {
    transform: scale(-1, 1);

    left: 64px;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-series__panel-wrap .swiper-button-next,
  .contents .p-series__panel-wrap .swiper-button-prev {
    width: 8.5333333333vw;

    height: 8.5333333333vw;

    background-size: contain;

    margin: 0;

    background-image: url(../img/ic-next.png);

    top: 39%;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-series__panel-wrap .swiper-button-next {
    right: 3.2vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-series__panel-wrap .swiper-button-prev {
    left: 3.2vw;

    transform: scale(-1, 1);
  }
}

.contents .p-series__panel-wrap .swiper-button-next.swiper-button-disabled,
.contents .p-series__panel-wrap .swiper-button-prev.swiper-button-disabled {
  display: none;
}

@media screen and (min-width: 768px) {
  .contents .p-series__panel-wrap .swiper-pagination {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-series__panel-wrap .swiper-pagination {
    display: flex;

    justify-content: center;

    column-gap: 2.6666666667vw;

    bottom: 0;

    left: 50%;

    transform: translateX(-50%);
  }
}

.contents .p-series__panel-wrap .swiper-pagination .swiper-pagination-bullet {
  opacity: 1;

  border-radius: 0;

  margin: 0;

  width: 10.6666666667vw;

  height: 1.0666666667vw;

  background-color: #cccccc;
}

.contents
  .p-series__panel-wrap
  .swiper-pagination
  .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #666666;
}

.contents .p-series__panel .swiper-wrapper {
  display: flex;
}

@media screen and (min-width: 768px) {
  .contents .p-series__panel .swiper-wrapper {
    justify-content: center;

    column-gap: 25px;
  }

  .contents .p-series__panel.is-swiper-active .swiper-wrapper {
    justify-content: flex-start;

    column-gap: 0; /* Swiper起動時はgapを0、spaceBetweenに委譲 */
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-series__panel .swiper-wrapper {
    column-gap: 6.7592592593vw;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-series__panel-item {
    width: 325px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-series__panel-item {
    width: 18.5185185185vw;
  }
}

@media (min-width: 768px) {
  .p-series__panel-wrap .swiper-wrapper {
    margin: 0 auto;
  }

  .p-series__panel-wrap {
    max-width: 1105px; /* 325px × 3 + 25px × 2 */

    margin: 0 auto;

    overflow: hidden; /* 念のため */
  }

  .p-series__panel-wrap .swiper-slide {
    width: 325px !important;

    flex-shrink: 0;
  }
}

/*

.contents .p-series__panel-item img {

  display: block;

  margin-left: auto;

  margin-right: auto;

  width: auto;

}

@media screen and (min-width: 768px) {

  .contents .p-series__panel-item img {

    height: 180px;

  }

}

@media screen and (max-width: 1080px) and (min-width: 768px) {

  .contents .p-series__panel-item img {

    height: 16.6666666667vw;

  }

}

@media screen and (max-width: 767px) {

  .contents .p-series__panel-item img {

    height: 47.7333333333vw;

  }

}

.contents .p-series__panel-item .ttl {

  text-align: center;

}

@media screen and (min-width: 768px) {

  .contents .p-series__panel-item .ttl {

    font-size: 14px;

    line-height: 1;

    letter-spacing: 0.08em;

    font-weight: 600;

  }

}

@media screen and (max-width: 1080px) and (min-width: 768px) {

  .contents .p-series__panel-item .ttl {

    font-size: 1.2962962963vw;

  }

}

@media screen and (max-width: 767px) {

  .contents .p-series__panel-item .ttl {

    font-size: calc(32 / 750 * 100vw);

    line-height: 1;

    letter-spacing: 0.08em;

    font-weight: 600;

  }

}

@media screen and (min-width: 768px) {

  .contents .p-series__panel-item .ttl {

    margin: 30px 0 30px -50px;

    width: 300px;

  }

}

@media screen and (max-width: 1080px) and (min-width: 768px) {

  .contents .p-series__panel-item .ttl {

    margin: 2.7777777778vw 0 2.7777777778vw -4.6296296296vw;

    width: 27.7777777778vw;

  }

}

@media screen and (max-width: 767px) {

  .contents .p-series__panel-item .ttl {

    margin: 8vw 0;

  }

}

.contents .p-series__panel-item .btn {

  display: flex;

  align-items: center;

  background-color: #000;

  color: #fff;

  position: relative;

}

@media screen and (min-width: 768px) {

  .contents .p-series__panel-item .btn {

    font-size: 16px;

    line-height: 1;

    letter-spacing: 0.08em;

    font-weight: 600;

  }

}

@media screen and (max-width: 1080px) and (min-width: 768px) {

  .contents .p-series__panel-item .btn {

    font-size: 1.4814814815vw;

  }

}

@media screen and (max-width: 767px) {

  .contents .p-series__panel-item .btn {

    font-size: calc(32 / 750 * 100vw);

    line-height: 1;

    letter-spacing: 0.08em;

    font-weight: 600;

  }

}

@media screen and (min-width: 768px) {

  .contents .p-series__panel-item .btn {

    width: 200px;

    height: 54px;

    padding-left: 27px;

  }

}

@media screen and (max-width: 1080px) and (min-width: 768px) {

  .contents .p-series__panel-item .btn {

    width: 18.5185185185vw;

    height: 5vw;

    padding-left: 2.5vw;

  }

}

@media screen and (max-width: 767px) {

  .contents .p-series__panel-item .btn {

    margin: 0 auto;

    width: 53.3333333333vw;

    height: 14.4vw;

    padding-left: 7.2vw;

  }

}

.contents .p-series__panel-item .btn::after {

  position: absolute;

  content: "";

  display: block;

  background-repeat: no-repeat;

  background-size: contain;

  background-image: url(../img/ic-arrow-wh.png);

  top: 50%;

  transform: translateY(-50%) rotate(-90deg);

}

@media screen and (min-width: 768px) {

  .contents .p-series__panel-item .btn::after {

    width: 15px;

    height: 9px;

    right: 27px;

  }

}

@media screen and (max-width: 1080px) and (min-width: 768px) {

  .contents .p-series__panel-item .btn::after {

    width: 1.3888888889vw;

    height: 0.8333333333vw;

    right: 2.5vw;

  }

}

@media screen and (max-width: 767px) {

  .contents .p-series__panel-item .btn::after {

    width: 4vw;

    height: 2.4vw;

    right: 7.2vw;

  }

}

*/

.contents .p-timing__bg {
  background-color: #ebeff6;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__bg {
    padding: 60px 0 72px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__bg {
    padding: 5.5555555556vw 0 6.6666666667vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__bg {
    padding: 12vw 0;
  }
}

.contents .p-timing__inner {
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__inner {
    max-width: 1000px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__inner {
    max-width: 92.5925925926vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__inner {
    max-width: 92vw;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-timing__ttl {
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__ttl {
    margin-bottom: 2.7777777778vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__ttl {
    margin-bottom: 6.6666666667vw;
  }
}

.contents .p-timing__lead {
  text-align: center;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__lead {
    font-size: 16px;

    line-height: 1.6;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__lead {
    font-size: 1.4814814815vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__lead {
    font-size: calc(28 / 750 * 100vw);

    line-height: 1.6;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-timing__lead {
    margin-bottom: 72px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__lead {
    margin-bottom: 6.6666666667vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__lead {
    margin-bottom: 8vw;
  }
}

.contents .p-timing__wrap {
  display: flex;

  position: relative;

  z-index: 1;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__wrap {
    align-items: flex-start;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__wrap {
    flex-direction: column;

    padding-left: 4vw;
  }
}

.contents .p-timing__wrap::before {
  position: absolute;

  content: "";

  display: block;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__wrap::before {
    left: 0;

    width: 100%;

    height: 1px;

    top: 49.5px;

    background: linear-gradient(
      to right,
      #9b9fa3 0%,
      #9b9fa3 98%,
      transparent 100%
    );
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__wrap::before {
    top: 4.5833333333vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__wrap::before {
    height: 100%;

    width: 0.2666666667vw;

    background: linear-gradient(#9b9fa3 0%, #9b9fa3 98%, transparent 100%);

    top: 0;

    left: 17.1333333333vw;
  }
}

.contents .p-timing__item {
  position: relative;

  z-index: 1;

  text-align: center;
}

@media screen and (max-width: 767px) {
  .contents .p-timing__item.top {
    display: flex;

    flex-direction: row-reverse;

    justify-content: flex-end;

    align-items: center;

    column-gap: 3.7333333333vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__item.top .ttl {
    font-size: calc(36 / 750 * 100vw);

    line-height: 1;

    letter-spacing: 0.08em;

    font-weight: 600;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-timing__item.top .ttl {
    position: absolute;

    top: -12px;

    left: 50%;

    transform: translate(-50%, -100%);
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__item.top .ttl {
    top: -1.1111111111vw;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-timing__item.top img {
    display: block;

    margin: 0 auto;

    width: 100px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__item.top img {
    width: 9.2592592593vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__item.top img {
    width: 26.6666666667vw;
  }
}

.contents .p-timing__item.bottom {
  position: relative;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__item.bottom {
    padding-top: 140px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__item.bottom {
    padding-top: 12.962962963vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__item.bottom {
    margin: -3.2vw 0;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-timing__item.bottom:not(:last-of-type) {
    width: 165px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__item.bottom:not(:last-of-type) {
    width: 15.2777777778vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__item.bottom.bottom01 {
    margin-top: 6.6666666667vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__item.bottom.bottom01::after {
    width: 35.3333333333vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__item.bottom.bottom02::after {
    width: 29.6vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__item.bottom.bottom03::after {
    width: 15.7333333333vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__item.bottom.bottom04 {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__item.bottom.bottom04::after {
    width: 29.7333333333vw;
  }
}

.contents .p-timing__item.bottom::before,
.contents .p-timing__item.bottom::after {
  position: absolute;

  content: "";

  display: block;
}

.contents .p-timing__item.bottom::before {
  background-repeat: no-repeat;

  background-size: contain;

  background-image: url(../img/ic-check.png);

  z-index: 3;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__item.bottom::before {
    left: 50%;

    transform: translate(-50%, -50%);

    width: 30px;

    height: 30px;

    top: 50px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__item.bottom::before {
    width: 2.7777777778vw;

    height: 2.7777777778vw;

    top: 4.6296296296vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__item.bottom::before {
    width: 8vw;

    height: 8vw;

    top: 50%;

    transform: translate(-50%, -50%);

    left: 13.0666666667vw;
  }
}

.contents .p-timing__item.bottom::after {
  background-color: #8abecf;

  z-index: 1;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__item.bottom::after {
    left: 50%;

    transform: translateX(-50%);

    width: 2px;

    height: 67px;

    top: 65px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__item.bottom::after {
    width: 0.1851851852vw;

    height: 6.2037037037vw;

    top: 6.0185185185vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__item.bottom::after {
    height: 0.5333333333vw;

    top: 50%;

    transform: translateY(-50%);

    left: 17.0666666667vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__item.bottom .ttl {
    font-size: calc(28 / 750 * 100vw);

    line-height: 1;

    letter-spacing: 0.08em;

    font-weight: 600;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-timing__item.bottom .ttl {
    margin-top: 8px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__item.bottom .ttl {
    margin-top: 0.7407407407vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__item.bottom .ttl {
    margin-top: 2.1333333333vw;

    width: 47.3333333333vw;

    text-align: center;

    margin-left: auto;
  }
}

.contents .p-timing__item-imgwrap {
  display: flex;

  justify-content: center;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__item-imgwrap {
    column-gap: 10px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__item-imgwrap {
    column-gap: 0.9259259259vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__item-imgwrap {
    margin-left: auto;

    position: relative;

    z-index: 5;

    padding: 0 1.6vw;

    column-gap: 2.4vw;

    width: 47.3333333333vw;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-timing__item-imgwrap.wide {
    column-gap: 30px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__item-imgwrap.wide {
    column-gap: 2.7777777778vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__item-imgwrap.wide {
    column-gap: 5.3333333333vw;
  }
}

.contents .p-timing__item-imgwrap img {
  width: auto;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__item-imgwrap img {
    height: 100px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__item-imgwrap img {
    height: 9.2592592593vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__item-imgwrap img {
    height: 26.6666666667vw;
  }
}

.contents .p-timing__item .ttl {
  white-space: nowrap;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__item .ttl {
    font-size: 14px;

    line-height: 1;

    letter-spacing: 0.08em;

    font-weight: 600;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__item .ttl {
    font-size: 1.2962962963vw;
  }
}

.contents .p-timing__item .bnr {
  display: inline-block;

  background-color: #b6babf;

  color: #fff;

  white-space: nowrap;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__item .bnr {
    font-size: 12px;

    line-height: 1;

    letter-spacing: 0.08em;

    font-weight: 600;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__item .bnr {
    font-size: 1.1111111111vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__item .bnr {
    font-size: calc(28 / 750 * 100vw);

    line-height: 1;

    letter-spacing: 0.08em;

    font-weight: 600;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-timing__item .bnr {
    padding: 4px 12px;

    border-radius: 11px;

    margin-top: 10px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__item .bnr {
    padding: 0.3703703704vw 1.1111111111vw;

    border-radius: 1.0185185185vw;

    margin-top: 0.9259259259vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__item .bnr {
    padding: 1.3333333333vw 3.8666666667vw;

    border-radius: 3.2vw;

    position: absolute;

    z-index: 1;

    left: -1.6vw;

    transform: translateY(100%);

    bottom: -4.8vw;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-timing__note {
    margin-top: 30px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__note {
    margin-top: 2.7777777778vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__note {
    margin-top: 7.2vw;
  }
}

.contents .p-timing__note-txt {
  text-indent: -1em;

  padding-left: 1em;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__note-txt {
    font-size: 11px;

    line-height: 1.4;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__note-txt {
    font-size: 1.0185185185vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__note-txt {
    font-size: calc(22 / 750 * 100vw);

    line-height: 1.4;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-comparison {
    padding: 70px 0 100px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison {
    padding-bottom: 6.4814814815vw 0 9.2592592593vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison {
    padding: 13.3333333333vw 0;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__ttl {
    margin-bottom: 60px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison__ttl {
    margin-bottom: 5.5555555556vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__ttl {
    margin-bottom: 9.3333333333vw;
  }
}

.contents .p-comparison__inner {
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__inner {
    max-width: 1000px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison__inner {
    max-width: 92.5925925926vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__inner {
    padding-left: 4vw;
  }
}

.contents .p-comparison__tablewrap {
  overflow-x: auto;

  padding-bottom: 3px;
}

.contents .p-comparison__table {
  table-layout: fixed;

  border-collapse: collapse;

  width: 100%;

  position: relative;

  z-index: 1;
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__table::after {
    position: absolute;

    content: "";

    display: block;

    right: 0;

    transform: translateX(100%);

    width: 4vw;

    height: 1px;
  }
}

.contents .p-comparison__table thead th {
  border: 1px solid #bcc2c4;

  border-top: none;
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__table thead th {
    width: 250px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison__table thead th {
    width: 23.1481481481vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__table thead th {
    width: 57.0666666667vw;
  }
}

.contents .p-comparison__table thead th:first-of-type {
  border: none;

  background-color: #fff;

  position: sticky;

  left: 0;
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__table thead th:first-of-type {
    width: 98px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison__table thead th:first-of-type {
    width: 9.0740740741vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__table thead th:first-of-type {
    width: 22.5333333333vw;
  }
}

.contents .p-comparison__table thead th:first-of-type::before {
  position: absolute;

  content: "";

  top: -1px;

  left: -1px;

  width: calc(100% - 1px);

  height: calc(100% - 1px);

  border: 1px solid #fff;
}

.contents .p-comparison__table thead th.lockoil span::before {
  background-color: #f5bf56;
}

.contents .p-comparison__table thead th.lockoillight span::before {
  background-color: #f2d073;
}

.contents .p-comparison__table thead th.lockoilbloom span::before {
  background-color: #ff8f92;
}

.contents .p-comparison__table thead th.lockoilbloomlight span::before {
  background-color: #f4acc6;
}

.contents .p-comparison__table thead th.maegamilock span::before {
  background-color: #dbb886;
}

.contents .p-comparison__table thead th.volumelock span::before {
  background-color: #e3928d;
}

.contents .p-comparison__table thead th.straightlock span::before {
  background-color: #aad3cf;
}

.contents .p-comparison__table thead th.locktreatment span::before {
  background-color: #b78e7f;
}

.contents .p-comparison__table thead th.lockbalm span::before {
  background-color: #f5bf56;
}

.contents .p-comparison__table thead th.lockbalmlight span::before {
  background-color: #f2d073;
}

.contents .p-comparison__table thead th span {
  position: relative;

  display: flex;

  align-items: center;

  justify-content: center;

  color: #fff;

  text-align: center;

  width: 100%;
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__table thead th span {
    font-size: 14px;

    line-height: 1.4;

    letter-spacing: 0.02em;

    font-weight: 600;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison__table thead th span {
    font-size: 1.2962962963vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__table thead th span {
    font-size: calc(24 / 750 * 100vw);

    line-height: 1.4;

    letter-spacing: 0.02em;

    font-weight: 600;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__table thead th span {
    height: 55px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison__table thead th span {
    height: 5.0925925926vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__table thead th span {
    height: 12.6666666667vw;
  }
}

.contents .p-comparison__table thead th span::before,
.contents .p-comparison__table thead th span::after {
  position: absolute;

  content: "";

  display: block;
}

.contents .p-comparison__table thead th span::before {
  height: 100%;

  left: 50%;

  transform: translateX(-50%);

  top: 0;

  z-index: -1;
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__table thead th span::before {
    width: 246px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison__table thead th span::before {
    width: 22.7777777778vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__table thead th span::before {
    width: 56vw;
  }
}

.contents .p-comparison__table thead th span::after {
  background-repeat: no-repeat;

  background-size: contain;

  background-image: url(../img/ic-arrow-wh.png);

  top: 51%;

  transform: translateY(-50%) rotate(-90deg);
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__table thead th span::after {
    width: 18px;

    height: 11px;

    right: 10px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison__table thead th span::after {
    width: 1.6666666667vw;

    height: 1.0185185185vw;

    right: 0.9259259259vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__table thead th span::after {
    width: 3.7333333333vw;

    height: 2.2666666667vw;

    right: 2.4vw;
  }
}

.contents .p-comparison__table thead th .product {
  display: flex;

  align-items: center;

  justify-content: center;
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__table thead th .product {
    height: 170px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison__table thead th .product {
    height: 15.7407407407vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__table thead th .product {
    height: 38.8vw;
  }
}

.contents .p-comparison__table thead th .product img {
  width: auto;
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__table thead th .product img {
    height: 134px;
  }

  .contents .p-comparison__table thead th .product.balm img {
    height: 65px;

    margin-top: 70px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison__table thead th .product img {
    height: 12.4074074074vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__table thead th .product img {
    height: 30.5333333333vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__table thead th .product.balm img {
    height: 16vw;

    margin-top: 16vw;
  }
}

.contents .p-comparison__table tbody .ta-l td {
  text-align: left;
}

.contents .p-comparison__table tbody .va-t td {
  vertical-align: top;
}

.contents .p-comparison__table tbody th {
  position: sticky;

  left: 0;

  z-index: 1;
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__table tbody th {
    text-align: center;
    font-size: 13px;

    line-height: 1.4;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison__table tbody th {
    font-size: 1.2037037037vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__table tbody th {
    text-align: center;
    font-size: calc(22 / 750 * 100vw);

    line-height: 1.6363636364;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__table tbody th {
    width: 98px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison__table tbody th {
    width: 9.0740740741vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__table tbody th {
    width: 22.5333333333vw;
  }
}

.contents .p-comparison__table tbody th::before {
  position: absolute;

  content: "";

  display: block;

  background-color: #fff;

  top: -1px;

  left: 0;

  width: calc(100% - 1px);

  height: 100%;

  border: 1px solid #bcc2c4;

  z-index: -1;
}

.contents .p-comparison__table tbody th::after {
  position: absolute;

  content: "";

  display: block;

  background-color: #ededed;

  top: 50%;

  left: 50%;

  transform: translate(-49%, -50%);

  z-index: -1;
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__table tbody th::after {
    width: calc(100% - 5px);

    height: calc(100% - 5px);
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison__table tbody th::after {
    width: calc(100% - 0.462962963vw);

    height: calc(100% - 0.462962963vw);
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__table tbody th::after {
    width: calc(100% - 1.0666666667vw);

    height: calc(100% - 1.0666666667vw);
  }
}

.contents .p-comparison__table tbody td {
  text-align: center;

  border: 1px solid #bcc2c4;
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__table tbody td {
    font-size: 13px;

    line-height: 1.4;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison__table tbody td {
    font-size: 1.2037037037vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__table tbody td {
    font-size: calc(22 / 750 * 100vw);

    line-height: 1.6363636364;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__table tbody td {
    width: 250px;

    padding: 12px 10px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison__table tbody td {
    width: 23.1481481481vw;

    padding: 1.1111111111vw 0.9259259259vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__table tbody td {
    width: 57.0666666667vw;

    padding: 2.6666666667vw 2.1333333333vw;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__table tbody td.img {
    padding: 16px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison__table tbody td.img {
    padding: 1.4814814815vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__table tbody td.img {
    padding: 3.7333333333vw 4vw;
  }
}

.contents .p-comparison__table tbody td .ttl {
  display: block;

  font-weight: 600;
}

.contents .p-comparison__table tbody td .btn {
  display: flex;

  align-items: center;

  background-color: #000;

  color: #fff;

  position: relative;

  margin: 15px auto 0;

  justify-content: center;
}

.contents .p-comparison__table tbody td .btn a {
  color: #fff;
}

.contents .p-comparison__table tbody td .btn::after {
  position: absolute;

  content: "";

  display: block;

  background-repeat: no-repeat;

  background-size: contain;

  background-image: url(../img/ic-arrow-wh.png);

  top: 50%;

  transform: translateY(-50%) rotate(-90deg);
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__table tbody td .btn {
    width: 150px;

    height: 36px;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__table tbody td .btn::after {
    width: 15px;

    height: 9px;

    right: 15px;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__table tbody td .btn {
    width: 40vw;

    height: 9.6vw;

    margin-top: 4vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__table tbody td .btn::after {
    width: 3.2vw;

    height: 5.6vw;

    right: 2vw;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__table tbody td .note {
    font-size: 12px;

    line-height: 1.4;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison__table tbody td .note {
    font-size: 1.1111111111vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__table tbody td .note {
    font-size: calc(20 / 750 * 100vw);

    line-height: 1.4;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__note {
    margin-top: 24px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison__note {
    margin-top: 2.2222222222vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__note {
    margin-top: 4vw;
  }
}

.contents .p-comparison__note-txt {
  text-indent: -1em;

  padding-left: 1em;
}

@media screen and (min-width: 768px) {
  .contents .p-comparison__note-txt {
    font-size: 11px;

    line-height: 1.4;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-comparison__note-txt {
    font-size: 1.0185185185vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-comparison__note-txt {
    font-size: calc(22 / 750 * 100vw);

    line-height: 1.4;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

.contents .js-panel {
  display: none;
}

.contents .js-panel.is-active {
  display: block;
}

@media screen and (max-width: 767px) {
  .contents .is-pc {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .contents .is-sp {
    display: none;
  }
}

/*--------------------------

 buy now

----------------------------*/

@media (min-width: 768px) {
  section.regular .block-split {
    max-width: 1000px;

    margin: auto;

    margin-bottom: 40px;
  }

  section.regular .block-split .inner p.text-1 {
    text-align: center;

    font-size: 1.25rem;

    line-height: 1.33;

    letter-spacing: 1.12px;

    margin-bottom: 40px;
  }

  section.regular .block-split .inner-2 {
    display: flex;

    flex-wrap: wrap;

    justify-content: space-between;

    gap: 24px 0;
  }

  section.regular .block-split .btn-link {
    border: 1px solid #afb7bc;

    width: 480px;

    background-color: #fff;

    background-position: 90% center;

    background-size: 3% auto;

    background-repeat: no-repeat;
  }

  section.regular .block-split .btn-link:first-child {
    background-image: url("/assets/beauty/refa/haircare/products/lock_series/img/im-lockoil.png");
  }

  section.regular .block-split .btn-link:nth-child(2) {
    background-image: url("/assets/beauty/refa/haircare/products/lock_series/img/im-lockoillight.png");
  }

  section.regular .block-split .btn-link:nth-child(3) {
    background-image: url("/assets/beauty/refa/haircare/products/lock_series/img/im-lockoilbloom.png");
  }

  section.regular .block-split .btn-link:nth-child(4) {
    background-image: url("/assets/beauty/refa/haircare/products/lock_series/img/im-lockoilbloomlight.png");
  }

  section.regular .block-split .btn-link:nth-child(5) {
    background-image: url("/assets/beauty/refa/haircare/products/lock_series/img/im-straightlock.png");
  }

  section.regular .block-split .btn-link:nth-child(6) {
    background-image: url("/assets/beauty/refa/haircare/products/lock_series/img/im-maegamilock.png");
  }

  section.regular .block-split .btn-link:nth-child(7) {
    background-image: url("/assets/beauty/refa/haircare/products/lock_series/img/im-volumelock.png");
  }

  section.regular .block-split .btn-link:nth-child(8) {
    background-image: url("/assets/beauty/refa/haircare/products/lock_series/img/im-lockbalm.png");

    background-size: 6% auto;

    background-position: 91% center;
  }

  section.regular .block-split .btn-link:nth-child(9) {
    background-image: url("/assets/beauty/refa/haircare/products/lock_series/img/im-lockbalmlight.png");

    background-size: 6% auto;

    background-position: 91% center;
  }

  section.regular .block-split .block-right {
    margin-left: 40px;
  }

  section.regular .block-split .btn-link a {
    display: flex;

    align-items: center;

    justify-content: flex-start;

    text-decoration: none;

    width: 100%;

    min-height: 56px;

    font-size: 0.875rem;

    line-height: 1.4;

    letter-spacing: 0.6px;

    color: #000000;

    padding: 11px 20px 11px 20px;

    position: relative;

    text-align: center;
  }

  section.regular .block-split .btn-link a:after {
    content: "";

    background-image: url("/assets/beauty/refa/haircare/common/img/ic-arrow-gray.png");

    background-repeat: no-repeat;

    background-size: contain;

    width: 10px;

    height: 10px;

    display: block;

    position: absolute;

    right: 12px;
  }

  section.association {
    background-color: #f4f4f6;

    padding: 61px 0 60px 0;
  }

  section.association .head {
    text-align: center;

    font-size: 1.25rem;

    line-height: 1.33;

    letter-spacing: 0.08em;

    margin-bottom: 40px;
  }

  section.association .inner {
    width: 1000px;

    margin: auto;
  }

  section.association .inner-2 {
    display: flex;

    padding: 40px 40px 22px 40px;

    align-items: stretch;
  }

  section.association .inner .block-right,
  section.association .inner .block-left {
    background-color: #fff;

    position: relative;

    width: 480px;

    min-height: 242px;

    float: left;

    margin-bottom: 40px;
  }

  section.association .inner .block-left {
    margin-right: 40px;
  }

  section.association .text-1 {
    font-size: 1.0625rem;

    line-height: 1.5058823529;

    letter-spacing: 0.08em;

    margin-bottom: 8px;

    display: block;
  }

  section.association .text-2 {
    font-size: 0.875rem;

    line-height: 1.4;

    letter-spacing: 0.08em;

    margin-bottom: 16px;

    display: block;
  }

  section.association .text-3 {
    font-size: 0.875rem;

    line-height: 1.8;

    letter-spacing: 0.08em;

    color: #5c656b;

    display: block;
  }

  section.association .img-wrapper {
    width: 126px;
  }

  section.association .b-left {
    margin-right: 19px;
  }

  section.association .link {
    text-decoration: none;

    display: flex;

    right: 40px;

    bottom: 25px;

    font-weight: bold;

    font-size: 0.875rem;

    line-height: 1.4;

    letter-spacing: 0.08em;

    justify-content: flex-end;

    position: absolute;

    bottom: 21px;
  }

  section.association .link:after {
    content: "";

    background-image: url("/assets/beauty/refa/haircare/products/img/im-arrow-link.png");

    background-repeat: no-repeat;

    background-size: contain;

    width: 20px;

    height: 20px;

    display: block;

    margin-left: 6px;
  }

  section.support {
    background-color: #fff;

    margin: 60px 0;
  }

  section.support .inner {
    width: 720px;

    margin: auto;

    display: flex;

    padding: 40px 39px 35px 43px;

    border: 1px solid #8f999f;
  }

  section.support .inner .block-left,
  section.support .inner .block-right {
    width: 300px;
  }

  section.support .inner .block-left {
    margin-right: 38px;
  }

  section.support .inner .block-right {
    display: flex;

    align-items: center;
  }

  section.support .text-1 {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;

    font-size: 1.125rem;

    line-height: 1.4777777778;

    letter-spacing: 0.08em;

    margin-bottom: 10px;
  }

  section.support .text-2 {
    font-size: 0.875rem;

    line-height: 1.8;

    letter-spacing: 0.08em;

    color: #5c656b;
  }

  section.support .link {
    display: flex;

    align-items: center;

    justify-content: center;

    width: 300px;

    height: 56px;

    color: #fff;

    background-color: #010000;

    position: relative;

    text-decoration: none;

    font-size: 0.875rem;

    font-weight: bold;

    line-height: 1.4;

    letter-spacing: 0.08em;
  }

  section.support .link:before {
    content: "";

    background-image: url("/assets/beauty/refa/haircare/products/img/ic-support-wh.png");

    background-repeat: no-repeat;

    background-size: contain;

    width: 22px;

    height: 22px;

    display: block;

    position: relative;

    left: -7px;

    top: -2px;
  }

  section.support .link:after {
    content: "";

    background-image: url("/assets/beauty/refa/haircare/products/img/ic-arrow-white.png");

    background-repeat: no-repeat;

    background-size: contain;

    width: 14px;

    height: 14px;

    display: block;

    position: absolute;

    top: 50%;

    transform: translateY(-50%);

    right: 12px;
  }

  .clearfix:after {
    content: "";

    display: block;

    clear: both;
  }

  .clearfix:before {
    content: "";

    display: block;

    clear: both;
  }

  .clearfix {
    display: block;
  }
}

@media (min-width: 768px) and (max-width: 910px) {
  section.association .inner .block-right,
  section.association .inner .block-left {
    min-height: 277px;
  }
}

/*--------------------------

 TIPS

----------------------------*/

@media (min-width: 768px) {
  #refaHairTips {
    background-color: #f4f4f6;

    padding: 76px 0 79px 0;
  }

  #refaHairTips .block-inner {
    max-width: 1000px;

    margin: auto;
  }

  #refaHairTips .block-inner .caption {
    text-align: center;

    font-size: 1rem;

    color: #000000;

    line-height: 1.8;

    letter-spacing: 1.28px;

    margin-bottom: 31px;
  }

  #refaHairTips .block-inner-2 {
    text-align: center;
  }

  #refaHairTips .block-inner .picture-wrapper {
    text-align: center;

    margin-bottom: 39px;
  }

  #refaHairTips .block-inner .picture-wrapper {
    max-width: 720px;

    width: 100%;

    margin-left: auto;

    margin-right: auto;
  }

  #refaHairTips .block-title {
    text-align: center;

    margin-bottom: 40px;
  }

  #refaHairTips .block-title .sub {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;

    font-size: 1.5rem;

    line-height: 1.4;

    letter-spacing: 0.08em;

    display: block;
  }

  #refaHairTips .block-title .main {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;

    font-size: 2.5rem;

    line-height: 1.4;

    letter-spacing: 0.08em;

    display: block;
  }

  #refaHairTips .block-title:after {
    content: "";

    width: 44px;

    height: 1px;

    background-color: #3c4249;

    margin: 19px auto 0 auto;

    display: block;
  }

  #refaHairTips .btn-link {
    border: 1px solid #8f999f;

    width: 315px;

    margin: 30px auto 0 auto;
  }

  #refaHairTips .btn-link a {
    display: flex;

    align-items: center;

    justify-content: center;

    text-decoration: none;

    width: 100%;

    min-height: 56px;

    font-size: 0.875rem;

    line-height: 1.4;

    letter-spacing: 1.12px;

    color: #000000;

    padding: 10px 40px 10px 34px;

    position: relative;
  }

  #refaHairTips .btn-link a:after {
    content: "";

    background-image: url("/assets/beauty/refa/haircare/common/img/ic-arrow-gray.png");

    background-repeat: no-repeat;

    background-size: contain;

    width: 14px;

    height: 14px;

    display: block;

    position: absolute;

    right: 12px;
  }
}

/*--------------------------

 buy now

----------------------------*/

@media (min-width: 768px) and (max-width: 1079.98px) {
  body section.association {
    padding-left: 4vw;

    padding-right: 4vw;
  }

  body section.association .inner {
    width: auto;

    margin: auto;
  }

  body section.association .inner .block-right,
  body section.association .inner .block-left {
    width: 44.4444444444vw;
  }

  body section.association .img-wrapper {
    width: 11.6666666667vw;
  }

  body section.association .link {
    margin-left: 2.2222222222vw;
  }

  body section.association .inner-2 {
    padding-left: 4vw;

    padding-right: 4vw;
  }

  body section.support .inner {
    width: 66.6666666667vw;

    padding-left: 4vw;

    padding-right: 4vw;
  }

  body section.support .link {
    width: 27.7777777778vw;
  }

  body section.comparison {
    width: 77.7777777778vw;
  }

  body section.comparison .d-cell:nth-of-type(3n + 1) {
    width: 15.7407407407vw;
  }

  body section.comparison .d-cell:nth-of-type(3n + 2) {
    width: 31.0185185185vw;

    min-width: auto;
  }

  body section.comparison .d-cell:nth-of-type(3n) {
    width: 31.0185185185vw;

    min-width: auto;
  }

  body section.comparison .d-cell .product-wrapper {
    width: 12.037037037vw;
  }

  section.regular {
    max-width: auto;
  }

  section.regular .block-split .btn-link {
    border: 1px solid #afb7bc;

    width: 380px;

    margin: 0 auto;

    background-color: #fff;
  }

  section.regular .block-split .btn-link a {
    font-size: 0.75rem;

    line-height: 1.6333333333;
  }

  section.association .inner .block-left {
    margin-right: 1%;
  }
}

/*--------------------------

 buy now

----------------------------*/

@media (max-width: 767.98px) {
  section.regular {
    padding: 0 4vw 60px 4vw;
  }

  section.regular .block-split {
    width: 100%;

    margin: auto;
  }

  section.regular .block-split .inner p.text-1 {
    text-align: center;

    font-size: 1.1875rem;

    line-height: 1.4;

    letter-spacing: 1.12px;

    margin-bottom: 40px;
  }

  section.regular .block-split .btn-link {
    border: 1px solid #afb7bc;

    width: 100%;

    margin: 0 auto 13px;

    background-color: #fff;

    background-position: 88% center;

    background-size: 13.5px auto;

    background-repeat: no-repeat;
  }

  section.regular .block-split .btn-link:first-child {
    background-image: url("/assets/beauty/refa/haircare/products/lock_series/img/im-lockoil.png");
  }

  section.regular .block-split .btn-link:nth-child(2) {
    background-image: url("/assets/beauty/refa/haircare/products/lock_series/img/im-lockoillight.png");
  }

  section.regular .block-split .btn-link:nth-child(3) {
    background-image: url("/assets/beauty/refa/haircare/products/lock_series/img/im-lockoilbloom.png");
  }

  section.regular .block-split .btn-link:nth-child(4) {
    background-image: url("/assets/beauty/refa/haircare/products/lock_series/img/im-lockoilbloomlight.png");
  }

  section.regular .block-split .btn-link:nth-child(5) {
    background-image: url("/assets/beauty/refa/haircare/products/lock_series/img/im-straightlock.png");
  }

  section.regular .block-split .btn-link:nth-child(6) {
    background-image: url("/assets/beauty/refa/haircare/products/lock_series/img/im-maegamilock.png");
  }

  section.regular .block-split .btn-link:nth-child(7) {
    background-image: url("/assets/beauty/refa/haircare/products/lock_series/img/im-volumelock.png");
  }

  section.regular .block-split .btn-link:nth-child(8) {
    background-image: url("/assets/beauty/refa/haircare/products/lock_series/img/im-lockbalm.png");

    background-size: 6% auto;

    background-position: 89% center;
  }

  section.regular .block-split .btn-link:nth-child(9) {
    background-image: url("/assets/beauty/refa/haircare/products/lock_series/img/im-lockbalmlight.png");

    background-size: 6% auto;

    background-position: 89% center;
  }

  section.regular .block-split .btn-link a {
    display: flex;

    align-items: center;

    justify-content: flex-start;

    text-decoration: none;

    width: 100%;

    height: 56px;

    font-size: 0.875rem;

    line-height: 1.4;

    letter-spacing: 1.12px;

    color: #000000;

    padding: 11px 20px 11px 20px;

    position: relative;
  }

  section.regular .block-split .btn-link a:after {
    content: "";

    background-image: url("/assets/beauty/refa/haircare/common/img/ic-arrow-gray.png");

    background-repeat: no-repeat;

    background-size: contain;

    width: 10px;

    height: 10px;

    display: block;

    position: absolute;

    right: 12px;
  }

  section.association {
    background-color: #f4f4f6;

    padding: 40px 4vw 40px 4vw;
  }

  section.association .head {
    text-align: center;

    font-size: 1.1875rem;

    line-height: 1.4;

    letter-spacing: 0.08em;

    margin-bottom: 40px;
  }

  section.association .inner {
    margin: auto;
  }

  section.association .inner-2 {
    padding: 20px 4vw;

    align-items: stretch;

    display: flex;
  }

  section.association .inner .block-right,
  section.association .inner .block-left {
    background-color: #fff;

    position: relative;

    margin-bottom: 20px;
  }

  section.association .text-1 {
    font-size: 1.0625rem;

    line-height: 1.5058823529;

    letter-spacing: 0.08em;

    margin-bottom: 6px;

    display: block;
  }

  section.association .text-2 {
    font-size: 0.875rem;

    line-height: 1.4;

    letter-spacing: 0.08em;

    margin-bottom: 17px;

    display: block;
  }

  section.association .text-3 {
    font-size: 0.875rem;

    line-height: 1.8;

    letter-spacing: 0.08em;

    color: #5c656b;

    display: block;
  }

  section.association .img-wrapper {
    width: 126px;
  }

  section.association .b-left {
    margin-right: 16px;
  }

  section.association .b-left .img-wrapper {
    margin-bottom: 36px;
  }

  section.association .b-right .img-wrapper {
    margin-bottom: 37px;
  }

  section.association .inner .block-right .b-right .img-wrapper {
    margin-bottom: 56px;
  }

  section.association .link {
    text-decoration: none;

    display: flex;

    justify-content: flex-end;

    align-items: center;

    font-size: 0.875rem;

    font-weight: bold;

    line-height: 1.4;

    letter-spacing: 0.08em;
  }

  section.association .link:after {
    content: "";

    background-image: url("/assets/beauty/refa/haircare/products/img/im-arrow-link.png");

    background-repeat: no-repeat;

    background-size: contain;

    width: 20px;

    height: 20px;

    display: block;

    margin-left: 6px;
  }

  section.support {
    background-color: #fff;

    margin: 60px 4vw;
  }

  section.support .inner {
    margin: auto;

    padding: 27px 4vw 30px 4vw;

    border: 1px solid #8f999f;
  }

  section.support .inner .block-right {
    display: flex;

    align-items: center;
  }

  section.support .text-1 {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;

    font-size: 1.125rem;

    line-height: 1.4;

    letter-spacing: 0.08em;

    margin-bottom: 6px;
  }

  section.support .text-2 {
    font-size: 0.875rem;

    line-height: 1.8;

    letter-spacing: 0.08em;

    color: #5c656b;
  }

  section.support .link {
    display: flex;

    align-items: center;

    justify-content: center;

    height: 56px;

    color: #fff;

    background-color: #010000;

    position: relative;

    text-decoration: none;

    font-size: 0.875rem;

    font-weight: bold;

    line-height: 1.4;

    letter-spacing: 0.08em;

    width: 100%;

    margin-top: 8px;
  }

  section.support .link:before {
    content: "";

    background-image: url("/assets/beauty/refa/haircare/products/img/ic-support-wh.png");

    background-repeat: no-repeat;

    background-size: contain;

    width: 22px;

    height: 22px;

    display: block;

    position: relative;

    left: -13px;
  }

  section.support .link:after {
    content: "";

    background-image: url("/assets/beauty/refa/haircare/products/img/ic-arrow-white.png");

    background-repeat: no-repeat;

    background-size: contain;

    width: 14px;

    height: 14px;

    display: block;

    position: absolute;

    top: 50%;

    transform: translateY(-50%);

    right: 12px;
  }

  #refaHairTips {
    background-color: #f4f4f6;

    padding: 52px 4vw 60px 4vw;
  }

  #refaHairTips .block-inner {
    margin: auto;
  }

  #refaHairTips .block-inner .caption {
    font-size: 1rem;

    color: #000000;

    line-height: 1.8;

    letter-spacing: 0.083em;

    margin-bottom: 18px;
  }

  #refaHairTips .block-inner .picture-wrapper {
    text-align: center;

    margin-bottom: 27px;
  }

  #refaHairTips .block-inner .picture-wrapper {
    width: 100%;

    margin-left: auto;

    margin-right: auto;
  }

  #refaHairTips .block-title {
    text-align: center;

    margin-bottom: 34px;
  }

  #refaHairTips .block-title .sub {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;

    font-size: 1.25rem;

    line-height: 1.4;

    letter-spacing: 0.08em;

    display: block;

    margin-bottom: 7px;
  }

  #refaHairTips .block-title .main {
    font-family: "YuMincho Medium", "Yu Mincho Medium", serif;

    font-size: 1.75rem;

    line-height: 1.4;

    letter-spacing: 0.08em;

    display: block;
  }

  #refaHairTips .block-title:after {
    content: "";

    width: 44px;

    height: 1px;

    background-color: #3c4249;

    margin: 21px auto 0 auto;

    display: block;
  }

  #refaHairTips .btn-link {
    border: 1px solid #8f999f;

    width: 315px;

    margin: 0 auto 0 auto;
  }

  #refaHairTips .btn-link a {
    display: flex;

    align-items: center;

    justify-content: center;

    text-decoration: none;

    width: 100%;

    min-height: 56px;

    font-size: 0.875rem;

    line-height: 1.4;

    letter-spacing: 1.12px;

    color: #000000;

    padding: 10px 40px 10px 34px;

    position: relative;
  }

  #refaHairTips .btn-link a:after {
    content: "";

    background-image: url("/assets/beauty/refa/haircare/common/img/ic-arrow-gray.png");

    background-repeat: no-repeat;

    background-size: contain;

    width: 14px;

    height: 14px;

    display: block;

    position: absolute;

    right: 12px;
  }
}

/*--------------------------

  timing 2025.09.05 add START

----------------------------*/

@media screen and (max-width: 767px) {
  .contents .p-timing__ttl .c-ttl {
    padding-bottom: 6.6666666667vw;
  }

  .contents .p-timing__ttl .c-ttl-main {
    line-height: 1.4;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-timing__list {
    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: min(2.7777777778vw, 30px) min(5.5555555556vw, 60px);

    width: min(74.0740740741vw, 800px);

    margin-inline: auto;

    margin-bottom: min(1.8518518519vw, 20px);
  }

  .contents .p-timing__list > *:nth-last-child(1):nth-child(odd) {
    grid-column: 1 / -1;

    justify-self: center;

    max-width: 370px;
  }
}

.contents .p-timing__list__item {
  display: flex;

  flex-direction: column;
}

@media screen and (max-width: 767px) {
  .contents .p-timing__list__item {
    margin-bottom: 9.1145833333vw;
  }
}

.contents .p-timing__list__item .icn {
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__list__item .icn {
    width: min(11.1111111111vw, 120px);

    margin-bottom: min(0.7407407407vw, 8px);
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__list__item .icn {
    width: 31.25vw;

    margin-bottom: 2.0833333333vw;
  }
}

.contents .p-timing__list__item .img {
  display: flex;

  justify-content: center;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__list__item .img {
    column-gap: 10px;

    margin-bottom: min(1.3888888889vw, 15px);
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__list__item .img {
    column-gap: 0.9259259259vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__list__item .img {
    position: relative;

    z-index: 5;

    margin-bottom: 3.90625vw;

    padding: 0 1.6vw;

    column-gap: 2.4vw;
  }
}

.contents .p-timing__list__item .img img {
  width: auto;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__list__item .img img {
    height: 100px;
  }

  .contents .p-timing__list .p-timing__list__item:last-child .img img {
    height: 48px;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__list__item .img img {
    height: 9.2592592593vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__list__item .img img {
    height: 26.6666666667vw;
  }

  .contents .p-timing__list .p-timing__list__item:last-child .img img {
    height: 12.8vw;
  }
}

.contents .p-timing__list__item .timing {
  text-align: center;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__list__item .timing {
    font-size: 15px;

    line-height: 1.4933333333;

    letter-spacing: 0.08em;

    font-weight: 700;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__list__item .timing {
    font-size: 1.3888888889vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__list__item .timing {
    font-size: calc(30 / 750 * 100vw);

    line-height: 1.4933333333;

    letter-spacing: 0.08em;

    font-weight: 700;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-timing__list__item .timing {
    margin-bottom: min(1.3888888889vw, 15px);
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__list__item .timing {
    margin-bottom: 3.90625vw;
  }
}

.contents .p-timing__list__item .item {
  display: flex;

  align-items: flex-start;

  justify-content: flex-start;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__list__item .item {
    gap: min(1.3888888889vw, 15px);

    margin-bottom: min(1.3888888889vw, 15px);
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__list__item .item {
    gap: 3.90625vw;

    margin-bottom: 3.90625vw;
  }
}

.contents .p-timing__list__item .item dt {
  display: flex;

  align-items: center;

  justify-content: center;

  background-color: #8abecf;

  color: #fff;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__list__item .item dt {
    font-size: 12px;

    line-height: 1.8666666667;

    letter-spacing: 0.08em;

    font-weight: 500;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__list__item .item dt {
    font-size: 1.1111111111vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__list__item .item dt {
    font-size: calc(24 / 750 * 100vw);

    line-height: 1.8666666667;

    letter-spacing: 0.08em;

    font-weight: 500;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-timing__list__item .item dt {
    width: min(6.4814814815vw, 70px);

    height: min(2.3148148148vw, 25px);

    translate: 0 0.4em;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__list__item .item dt {
    width: 18.2291666667vw;

    height: 6.5104166667vw;
  }
}

.contents .p-timing__list__item .item dd {
  flex: 1;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__list__item .item dd {
    font-size: 14px;

    line-height: 1.6;

    letter-spacing: 0.08em;

    font-weight: 700;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__list__item .item dd {
    font-size: 1.2962962963vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__list__item .item dd {
    font-size: calc(28 / 750 * 100vw);

    line-height: 1.6;

    letter-spacing: 0.08em;

    font-weight: 700;
  }
}

.contents .p-timing__list__item .howto {
  display: flex;

  align-items: flex-start;

  margin-top: auto;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__list__item .howto {
    gap: min(1.3888888889vw, 15px);
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__list__item .howto {
    gap: 3.90625vw;
  }
}

.contents .p-timing__list__item .howto dt {
  display: flex;

  align-items: center;

  justify-content: center;

  background-color: #8abecf;

  color: #fff;

  translate: 0 0.2em;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__list__item .howto dt {
    font-size: 12px;

    line-height: 1.8666666667;

    letter-spacing: 0.08em;

    font-weight: 500;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__list__item .howto dt {
    font-size: 1.1111111111vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__list__item .howto dt {
    font-size: calc(24 / 750 * 100vw);

    line-height: 1.8666666667;

    letter-spacing: 0.08em;

    font-weight: 500;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-timing__list__item .howto dt {
    width: min(6.4814814815vw, 70px);

    height: min(2.3148148148vw, 25px);
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__list__item .howto dt {
    width: 18.2291666667vw;

    height: 6.5104166667vw;
  }
}

.contents .p-timing__list__item .howto dd {
  flex: 1;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__list__item .howto dd {
    font-size: 11px;

    line-height: 1.6;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__list__item .howto dd {
    font-size: 1.0185185185vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__list__item .howto dd {
    font-size: calc(22 / 750 * 100vw);

    line-height: 1.6;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-timing__list__item .howto dd {
    min-height: 4rem;
  }
}

.contents .p-timing__notes {
  text-indent: -1em;

  padding-left: 1em;
}

@media screen and (min-width: 768px) {
  .contents .p-timing__notes {
    font-size: 11px;

    line-height: 1.4;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-timing__notes {
    font-size: 1.0185185185vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-timing__notes {
    font-size: calc(22 / 750 * 100vw);

    line-height: 1.4;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-timing__notes {
    width: min(74.0740740741vw, 800px);

    margin-inline: auto;
  }
}

.contents .p-lockseries_finder {
  display: flex;

  margin-inline: auto;

  background-color: #e8eef0;
}

@media screen and (min-width: 768px) {
  .contents .p-lockseries_finder {
    width: min(74.0740740741vw, 800px);

    margin-top: 70px;

    margin-bottom: 70px;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lockseries_finder {
    flex-direction: column;

    width: 89.84375vw;

    margin-top: 14.3229166667vw;

    margin-bottom: 14.3229166667vw;
  }
}

.contents .p-lockseries_finder__img {
  flex: 1;
}

@media screen and (max-width: 767px) {
  .contents .p-lockseries_finder__img {
    height: 59.8958333333vw;
  }
}

.contents .p-lockseries_finder__img img {
  width: 100%;

  height: 100%;

  object-fit: cover;
}

.contents .p-lockseries_finder__txt {
  flex: 1;

  display: flex;

  align-items: center;

  justify-content: center;

  flex-direction: column;
}

@media screen and (min-width: 768px) {
  .contents .p-lockseries_finder__txt {
    padding: min(2.3148148148vw, 25px);
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lockseries_finder__txt {
    padding: 3.90625vw 1.953125vw 7.8125vw;
  }
}

.contents .p-lockseries_finder__txt .head {
  display: flex;

  align-items: center;

  justify-content: center;

  flex-direction: column;

  text-align: center;
}

@media screen and (min-width: 768px) {
  .contents .p-lockseries_finder__txt .head {
    margin-bottom: min(1.3888888889vw, 15px);
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lockseries_finder__txt .head {
    margin-bottom: 3.90625vw;
  }
}

.contents .p-lockseries_finder__txt .head__sub {
  display: block;
}

@media screen and (min-width: 768px) {
  .contents .p-lockseries_finder__txt .head__sub {
    font-size: 12px;

    line-height: 1.8666666667;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lockseries_finder__txt .head__sub {
    font-size: 1.1111111111vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lockseries_finder__txt .head__sub {
    font-size: calc(24 / 750 * 100vw);

    line-height: 1.8666666667;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-lockseries_finder__txt .head__sub {
    margin-bottom: min(0.2777777778vw, 3px);
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lockseries_finder__txt .head__sub {
    margin-bottom: 0.5208333333vw;
  }
}

.contents .p-lockseries_finder__txt .head__main {
  display: block;
}

@media screen and (min-width: 768px) {
  .contents .p-lockseries_finder__txt .head__main {
    font-size: 16px;

    line-height: 1.4;

    letter-spacing: 0.08em;

    font-weight: 700;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lockseries_finder__txt .head__main {
    font-size: 1.4814814815vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lockseries_finder__txt .head__main {
    font-size: calc(32 / 750 * 100vw);

    line-height: 1.4;

    letter-spacing: 0.08em;

    font-weight: 700;
  }
}

.contents .p-lockseries_finder__txt .txt {
  text-align: center;
}

@media screen and (min-width: 768px) {
  .contents .p-lockseries_finder__txt .txt {
    font-size: 12px;

    line-height: 1.6;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lockseries_finder__txt .txt {
    font-size: 1.1111111111vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lockseries_finder__txt .txt {
    font-size: calc(24 / 750 * 100vw);

    line-height: 1.6;

    letter-spacing: 0.08em;

    font-weight: 400;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-lockseries_finder__txt .txt {
    margin-bottom: min(2.3148148148vw, 25px);
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lockseries_finder__txt .txt {
    margin-bottom: 6.5104166667vw;
  }
}

.contents .p-lockseries_finder__txt .btn {
  position: relative;

  display: flex;

  align-items: center;

  justify-content: center;

  background-color: #5fa1b7;

  color: #fff;
}

@media screen and (min-width: 768px) {
  .contents .p-lockseries_finder__txt .btn {
    font-size: 16px;

    line-height: 1.4;

    letter-spacing: 0.08em;

    font-weight: 700;
  }
}

@media screen and (max-width: 1080px) and (min-width: 768px) {
  .contents .p-lockseries_finder__txt .btn {
    font-size: 1.4814814815vw;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lockseries_finder__txt .btn {
    font-size: calc(30 / 750 * 100vw);

    line-height: 1.4933333333;

    letter-spacing: 0.08em;

    font-weight: 700;
  }
}

@media screen and (min-width: 768px) {
  .contents .p-lockseries_finder__txt .btn {
    width: min(18.5185185185vw, 200px);

    height: min(5vw, 54px);
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lockseries_finder__txt .btn {
    width: 52.0833333333vw;

    height: 14.0625vw;
  }
}

.contents .p-lockseries_finder__txt .btn::after {
  content: "";

  position: absolute;

  display: block;

  margin-block: auto;

  rotate: 45deg;
}

@media screen and (min-width: 768px) {
  .contents .p-lockseries_finder__txt .btn::after {
    inset: 0 min(1.3888888889vw, 15px) 0 auto;

    width: min(0.7407407407vw, 8px);

    height: min(0.7407407407vw, 8px);

    border-top: min(0.1851851852vw, 2px) solid #fff;

    border-right: min(0.1851851852vw, 2px) solid #fff;
  }
}

@media screen and (max-width: 767px) {
  .contents .p-lockseries_finder__txt .btn::after {
    inset: 0 3.90625vw 0 auto;

    width: 2.34375vw;

    height: 2.34375vw;

    border-top: 0.5208333333vw solid #fff;

    border-right: 0.5208333333vw solid #fff;
  }
}

/*--------------------------

  timing 2025.09.05 add END

----------------------------*/ /*# sourceMappingURL=style.css.map */
