@charset "UTF-8";
/*=======================================
トップページ
=========================================*/
.p-top__kv {
  padding: 1.04167vw;
  position: relative; }
  .p-top__kv-kv {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0 5.20833vw;
    height: calc(100vh - 2.08333vw);
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
    .p-top__kv-kv .box1 {
      color: #fff;
      position: relative;
      z-index: 9; }
      .p-top__kv-kv .box1 .catch {
        font-size: clamp(72px, 4.16667vw, 104px);
        font-weight: 400;
        letter-spacing: 0.2em;
        line-height: 1.2;
        margin-bottom: 1.30208vw; }
        @media screen and (max-width: 767px) {
          .p-top__kv-kv .box1 .catch {
            font-size: clamp(56px, 21.33333vw, 104px); } }
      .p-top__kv-kv .box1 .en {
        font-size: clamp(9px, 0.52083vw, 13px);
        font-family: new-hero, "Noto Sans JP", YuGothic, "游ゴシック体", "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
        letter-spacing: 0.1em;
        line-height: 1.6; }
        @media screen and (max-width: 767px) {
          .p-top__kv-kv .box1 .en {
            font-size: clamp(7px, 2.66667vw, 13px); } }
    .p-top__kv-kv .movie {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      z-index: 1;
      border-radius: 2.08333vw;
      overflow: hidden; }
      .p-top__kv-kv .movie::before {
        display: block;
        content: "";
        position: absolute;
        left: 0;
        width: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.1) url(../img/top/mv_bg.gif) repeat 50% 50%;
        z-index: 2; }
      .p-top__kv-kv .movie video {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover; }
  .p-top__kv-pickup {
    position: absolute;
    right: 0;
    bottom: 1.04167vw;
    background: #EEEFF0;
    z-index: 19;
    padding: 1.04167vw;
    padding-bottom: 2.70833vw;
    border-radius: 1.04167vw 0 0 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 22.1875vw; }
    .p-top__kv-pickup > svg {
      width: 0;
      height: 0;
      position: absolute; }
    .p-top__kv-pickup:before, .p-top__kv-pickup:after {
      display: block;
      content: "";
      position: absolute;
      width: 2.08333vw;
      height: 2.08333vw;
      background: #EEEFF0;
      -webkit-clip-path: url(#path);
              clip-path: url(#path); }
    .p-top__kv-pickup:before {
      bottom: 0;
      right: 100%; }
    .p-top__kv-pickup:after {
      bottom: 100%;
      right: 1.04167vw; }
    .p-top__kv-pickup .pickup-slider {
      border-radius: 0.78125vw 0.78125vw 0 0;
      overflow: hidden; }
      .p-top__kv-pickup .pickup-slider li img {
        aspect-ratio: 59 / 23;
        -o-object-fit: cover;
           object-fit: cover;
        border-radius: 0.78125vw; }
      .p-top__kv-pickup .pickup-slider .link a {
        display: inline-block;
        color: #101010;
        text-decoration: none;
        font-size: clamp(14px, 0.78125vw, 20px); }
        @media screen and (max-width: 767px) {
          .p-top__kv-pickup .pickup-slider .link a {
            font-size: clamp(11px, 4vw, 20px); } }
        .p-top__kv-pickup .pickup-slider .link a[target='_blank']:after {
          display: inline-block;
          content: "";
          vertical-align: middle;
          background: url(../img/common/icon_blank.svg) no-repeat center;
          background-size: 0.98958vw;
          width: 0.98958vw;
          height: 0.98958vw;
          border-radius: 100%;
          overflow: hidden;
          -webkit-box-shadow: 0 0.15625vw 0.3125vw rgba(0, 0, 0, 0.161);
                  box-shadow: 0 0.15625vw 0.3125vw rgba(0, 0, 0, 0.161);
          margin-left: 0.83333vw; }
      .p-top__kv-pickup .pickup-slider .slick-slider {
        margin-bottom: 0; }
      .p-top__kv-pickup .pickup-slider .slick-dots {
        position: static;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end;
        margin-top: 1.875vw; }
        .p-top__kv-pickup .pickup-slider .slick-dots li {
          margin: 0;
          margin-left: 0.26042vw;
          width: auto;
          height: auto; }
          .p-top__kv-pickup .pickup-slider .slick-dots li button {
            width: 2.60417vw;
            height: 0.52083vw;
            border-radius: 0.52083vw;
            background: #fff;
            padding: 0; }
            .p-top__kv-pickup .pickup-slider .slick-dots li button:before {
              display: none; }
          .p-top__kv-pickup .pickup-slider .slick-dots li.slick-active button {
            background-color: #E50012; }

.p-top__products {
  padding-top: 13.54167vw;
  padding-bottom: 3.125vw;
  position: relative; }
  .p-top__products .icon {
    position: absolute;
    z-index: -1;
    -webkit-filter: blur(6px);
            filter: blur(6px);
    pointer-events: none;
    will-change: transform; }
    .p-top__products .icon.icon1 {
      top: 4.6875vw;
      right: 16.35417vw;
      width: 13.54167vw;
      -webkit-transform: translateY(var(--translateProd1));
              transform: translateY(var(--translateProd1)); }
    .p-top__products .icon.icon2 {
      top: 13.17708vw;
      left: 9.21875vw;
      width: 8.125vw;
      -webkit-transform: translateY(var(--translateProd2));
              transform: translateY(var(--translateProd2)); }
    .p-top__products .icon.icon3 {
      bottom: 23.54167vw;
      left: 0.9375vw;
      width: 20.20833vw;
      -webkit-transform: translateY(var(--translateProd3));
              transform: translateY(var(--translateProd3)); }

.p-top__concept {
  background: url(../img/top/concept_bg1.png) no-repeat center top;
  background-size: 100% auto;
  padding-top: 9.53125vw;
  padding-left: 0.52083vw;
  padding-right: 0.52083vw; }
  .p-top__concept .content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .p-top__concept .content .box1 {
      width: 46.4736%;
      border-radius: 1.04167vw;
      background: rgba(255, 255, 255, 0.5);
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-shadow: 0.52083vw 0.3125vw 0.52083vw rgba(0, 17, 43, 0.039);
              box-shadow: 0.52083vw 0.3125vw 0.52083vw rgba(0, 17, 43, 0.039); }
      .p-top__concept .content .box1 p {
        letter-spacing: 0.2em;
        line-height: 3;
        font-weight: 700; }
    .p-top__concept .content .detail {
      width: 53.1578%; }
      .p-top__concept .content .detail li {
        margin-bottom: 0.15625vw; }
        .p-top__concept .content .detail li:last-child {
          margin-bottom: 0; }
        .p-top__concept .content .detail li.okagami a {
          background-image: url(../img/top/concept_img1.jpg); }
        .p-top__concept .content .detail li.kiri a {
          background-image: url(../img/top/concept_img2.jpg); }
        .p-top__concept .content .detail li.gohan a {
          background-image: url(../img/top/concept_img3.jpg); }
        .p-top__concept .content .detail li.beika a {
          background-image: url(../img/top/concept_img4.jpg?v=20260203); }
      .p-top__concept .content .detail a {
        display: block;
        color: #fff;
        border-radius: 1.04167vw;
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
        text-decoration: none;
        padding: 3.64583vw 2.44792vw 3.125vw;
        position: relative;
        overflow: hidden; }
        .p-top__concept .content .detail a:before {
          display: block;
          content: "";
          position: absolute;
          left: 0;
          top: 0;
          width: 100%;
          height: 100%;
          z-index: 1;
          background: rgba(0, 0, 0, 0.5); }
        .p-top__concept .content .detail a > * {
          position: relative;
          z-index: 2; }
      .p-top__concept .content .detail .en {
        font-size: clamp(9px, 0.52083vw, 13px);
        font-weight: 700;
        font-family: new-hero, "Noto Sans JP", YuGothic, "游ゴシック体", "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
        margin-bottom: 0.52083vw;
        line-height: 1.5; }
        @media screen and (max-width: 767px) {
          .p-top__concept .content .detail .en {
            font-size: clamp(7px, 2.66667vw, 13px); } }
      .p-top__concept .content .detail .h {
        font-size: clamp(27px, 1.5625vw, 39px);
        font-weight: 700;
        margin-bottom: 1.97917vw;
        line-height: 1.5; }
        @media screen and (max-width: 767px) {
          .p-top__concept .content .detail .h {
            font-size: clamp(21px, 8vw, 39px); } }
      .p-top__concept .content .detail .l {
        line-height: 1.8; }

.p-top__campaign {
  padding: 15.83333vw 6.25vw 9.47917vw;
  position: relative; }
  .p-top__campaign .content .slick-slide {
    margin-right: 1.82292vw; }
  .p-top__campaign .content ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 40px 3.5%; }
    @media (min-width: 768px) {
      .p-top__campaign .content ul li {
        width: 31%; } }
    .p-top__campaign .content ul li a {
      display: block;
      text-decoration: none;
      color: #1B1B1B; }
    .p-top__campaign .content ul .img1 {
      margin-bottom: 1.25vw;
      border-radius: 1.04167vw;
      overflow: hidden; }
      .p-top__campaign .content ul .img1 img {
        width: 100%;
        aspect-ratio: 303/202;
        -o-object-fit: cover;
           object-fit: cover; }
    .p-top__campaign .content ul .period {
      display: inline-block;
      color: #fff;
      background: #E50012;
      padding: 0.10417vw 1.45833vw;
      font-size: clamp(14px, 0.83333vw, 21px);
      margin-bottom: 0.72917vw;
      line-height: 1.5;
      border-radius: 0.26042vw; }
      @media screen and (max-width: 767px) {
        .p-top__campaign .content ul .period {
          font-size: clamp(11px, 4.26667vw, 21px); } }
    .p-top__campaign .content ul .h {
      font-weight: 500;
      line-height: 1.8; }
      .p-top__campaign .content ul .h:after {
        display: inline-block;
        content: "";
        vertical-align: middle;
        margin-left: 0.83333vw;
        border-radius: 100%;
        width: 1.40625vw;
        height: 1.40625vw;
        background: url(../img/common/arrow_2.svg) no-repeat center;
        -webkit-box-shadow: 0 0.15625vw 0.3125vw rgba(0, 0, 0, 0.161);
                box-shadow: 0 0.15625vw 0.3125vw rgba(0, 0, 0, 0.161); }
    .p-top__campaign .content ul .close a {
      pointer-events: none; }
    .p-top__campaign .content ul .close .img1 {
      position: relative; }
      .p-top__campaign .content ul .close .img1:before {
        position: absolute;
        content: "本キャンペーンは終了しました";
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
        z-index: 2;
        color: #fff;
        background: rgba(0, 0, 0, 0.7);
        font-size: clamp(23px, 1.35417vw, 34px);
        font-weight: 700;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        text-align: center; }
        @media screen and (max-width: 767px) {
          .p-top__campaign .content ul .close .img1:before {
            font-size: clamp(18px, 6.93333vw, 34px); } }
    .p-top__campaign .content ul .close .period {
      background: #8F8F8F; }
  .p-top__campaign .icon {
    position: absolute;
    z-index: -1;
    pointer-events: none;
    will-change: transform; }
    .p-top__campaign .icon.icon1 {
      top: 11.77083vw;
      right: 5.98958vw;
      width: 8.125vw;
      -webkit-transform: translateY(var(--translateCamp1));
              transform: translateY(var(--translateCamp1)); }
    .p-top__campaign .icon.icon2 {
      top: 13.17708vw;
      left: 9.21875vw;
      width: 8.125vw;
      -webkit-transform: translateY(var(--translateCamp2));
              transform: translateY(var(--translateCamp2)); }

.p-top__enjoy {
  position: relative; }
  .p-top__enjoy .wrap {
    background: #E50012;
    color: #fff;
    padding: 10.41667vw 0 3.4375vw 3.125vw;
    border-radius: 1.04167vw;
    margin-left: 3.125vw;
    margin-right: 3.125vw; }
  .p-top__enjoy .block1 {
    margin-bottom: 3.125vw;
    margin-right: 3.125vw; }
    .p-top__enjoy .block1 ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; }
    .p-top__enjoy .block1 li {
      width: 48.2142%;
      margin-left: 3.5716%;
      border-radius: 1.04167vw;
      -webkit-box-shadow: 0 0.15625vw 0.3125vw rgba(0, 17, 43, 0.039);
              box-shadow: 0 0.15625vw 0.3125vw rgba(0, 17, 43, 0.039); }
      .p-top__enjoy .block1 li:nth-child(2n+1) {
        margin-left: 0; }
      .p-top__enjoy .block1 li img {
        border-radius: 1.04167vw; }
  .p-top__enjoy .block2 {
    padding: 2.96875vw 0 3.28125vw 4.53125vw;
    position: relative;
    margin-right: -3.125vw;
    position: relative; }
    .p-top__enjoy .block2:before {
      position: absolute;
      display: block;
      content: "";
      z-index: 1;
      left: 0;
      top: 0;
      border-radius: 1.04167vw 0 0 1.04167vw;
      width: calc(100% - 3.125vw);
      height: 100%;
      background: #D30011; }
    .p-top__enjoy .block2 .c-bnr1 {
      position: relative;
      z-index: 2; }
      .p-top__enjoy .block2 .c-bnr1 li {
        width: 22.91667vw; }
        .p-top__enjoy .block2 .c-bnr1 li .title img {
          width: clamp(16px, 2vw, 40px);
          aspect-ratio: 1 / 1;
          -o-object-fit: contain;
             object-fit: contain; }
    .p-top__enjoy .block2 .slick-slider {
      margin-bottom: 0; }
    .p-top__enjoy .block2 .slick-dots {
      margin-top: 1.875vw;
      padding: 0.625vw 0.9375vw;
      background: #BA000F;
      display: inline-block;
      border-radius: 1.82292vw;
      position: static;
      line-height: 0;
      text-align: left;
      width: auto;
      -webkit-box-sizing: border-box;
      box-sizing: border-box; }
      .p-top__enjoy .block2 .slick-dots li {
        display: inline-block;
        margin: 0;
        margin-right: 0.26042vw;
        width: auto;
        height: auto;
        line-height: 1; }
        .p-top__enjoy .block2 .slick-dots li button {
          width: 2.60417vw;
          height: 0.52083vw;
          border-radius: 0.52083vw;
          background: #fff; }
          .p-top__enjoy .block2 .slick-dots li button:before {
            display: none; }
        .p-top__enjoy .block2 .slick-dots li.slick-active button {
          background-color: #E50012; }
  .p-top__enjoy .icon {
    position: absolute;
    z-index: 0;
    pointer-events: none;
    will-change: transform; }
    .p-top__enjoy .icon.icon1 {
      top: -3.85417vw;
      left: 6.30208vw;
      width: 19.27083vw;
      -webkit-transform: translateY(var(--translateEnj1));
              transform: translateY(var(--translateEnj1)); }
    .p-top__enjoy .icon.icon2 {
      top: 7.70833vw;
      right: 0.05208vw;
      width: 7.60417vw;
      -webkit-transform: translateY(var(--translateEnj2));
              transform: translateY(var(--translateEnj2)); }

.p-top__brand {
  padding-top: 3.125vw;
  padding-bottom: 7.65625vw;
  position: relative;
  overflow: hidden; }
  .p-top__brand .content {
    max-width: 65.57292vw;
    margin-left: auto;
    margin-right: auto; }
    .p-top__brand .content ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
    .p-top__brand .content li {
      width: 48.3717%;
      margin-left: 3.2566%; }
      .p-top__brand .content li:nth-child(2n+1) {
        margin-left: 0; }
      .p-top__brand .content li a {
        display: block;
        color: #000;
        text-decoration: none; }
      .p-top__brand .content li .img1 {
        margin-bottom: 1.25vw; }
  .p-top__brand .icon {
    position: absolute;
    width: 100vh;
    height: 3em;
    pointer-events: none;
    overflow: hidden;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg); }
    .p-top__brand .icon.icon1 {
      bottom: -3em;
      right: 5.20833vw;
      -webkit-transform-origin: right top;
              transform-origin: right top; }
    .p-top__brand .icon.icon2 {
      top: -3em;
      left: 5.20833vw;
      -webkit-transform-origin: left bottom;
              transform-origin: left bottom; }
    .p-top__brand .icon span {
      color: #E50012;
      font-family: new-hero, "Noto Sans JP", YuGothic, "游ゴシック体", "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
      font-size: clamp(54px, 3.125vw, 78px);
      font-weight: 700;
      letter-spacing: 0.4em;
      line-height: 1; }
      @media screen and (max-width: 767px) {
        .p-top__brand .icon span {
          font-size: clamp(42px, 16vw, 78px); } }
    .p-top__brand .icon .slick-slider,
    .p-top__brand .icon .slick-list,
    .p-top__brand .icon .slick-track {
      width: 100%;
      height: 100% !important; }

.p-top__recruit {
  margin-left: 3.125vw;
  margin-right: 3.125vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 9.6875vw; }
  .p-top__recruit .img1 {
    width: 57.5791%;
    border-radius: 1.04167vw 0 0 1.04167vw;
    overflow: hidden; }
    .p-top__recruit .img1 img {
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover; }
  .p-top__recruit .block1 {
    width: 42.4219%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: #E50012;
    color: #fff;
    border-radius: 0 1.04167vw 1.04167vw 0;
    padding: 3.95833vw 1.5625vw 6.09375vw 3.85417vw; }
    .p-top__recruit .block1 .h {
      font-size: clamp(66px, 3.80208vw, 95px);
      line-height: 1.2;
      font-weight: 700;
      font-family: new-hero, "Noto Sans JP", YuGothic, "游ゴシック体", "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
      margin-bottom: 2.08333vw;
      letter-spacing: 0.4em; }
      @media screen and (max-width: 767px) {
        .p-top__recruit .block1 .h {
          font-size: clamp(51px, 19.46667vw, 95px); } }
    .p-top__recruit .block1 .c-btn1 {
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start; }

.p-top__news {
  background: #fff;
  border-radius: 1.5625vw 1.5625vw 0 0;
  padding: 1.5625vw 6.25vw 7.8125vw; }
  .p-top__news .content li {
    border-bottom: 1px solid #D5D5D5; }
    .p-top__news .content li:first-child {
      border-top: 1px solid #D5D5D5; }
    .p-top__news .content li a {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      padding-top: 1.5625vw;
      padding-bottom: 1.5625vw;
      color: #00091F;
      text-decoration: none; }
    .p-top__news .content li .date {
      width: 7.96875vw;
      font-size: clamp(16px, 0.9375vw, 23px); }
      @media screen and (max-width: 767px) {
        .p-top__news .content li .date {
          font-size: clamp(13px, 4.8vw, 23px); } }
    .p-top__news .content li .category {
      background: #E50012;
      color: #fff;
      font-size: clamp(16px, 0.9375vw, 23px);
      text-align: center;
      width: 6.77083vw;
      line-height: 1.5;
      border-radius: 0.26042vw;
      margin-right: 2.29167vw; }
      @media screen and (max-width: 767px) {
        .p-top__news .content li .category {
          font-size: clamp(13px, 4.8vw, 23px); } }
      .p-top__news .content li .category.information {
        background: #E50012; }
      .p-top__news .content li .category.campaign {
        background: #f08608; }
      .p-top__news .content li .category.company {
        background: #2a1e1e; }
      .p-top__news .content li .category.other {
        background: #666; }
    .p-top__news .content li .h {
      width: calc(100% - 17.03125vw);
      font-weight: 500; }

/* ----------------------------- スマホ（～767px） */
@media screen and (max-width: 767px) {
  .p-top__kv {
    padding: 2.66667vw; }
    .p-top__kv-kv {
      height: calc(100vh - 5.33333vw); }
      .p-top__kv-kv .box1 .catch {
        font-size: clamp(28px, 10.66667vw, 52px);
        line-height: 1.25; }
      .p-top__kv-kv .movie {
        border-radius: 5.33333vw; }
    .p-top__kv-pickup {
      width: 65.06667vw;
      bottom: 2.66667vw;
      padding: 4vw 5.33333vw 4.26667vw 4vw;
      border-radius: 4vw 0 0 0; }
      .p-top__kv-pickup:before, .p-top__kv-pickup:after {
        width: 5.33333vw;
        height: 5.33333vw; }
      .p-top__kv-pickup:after {
        right: 2.66667vw; }
      .p-top__kv-pickup .pickup-slider {
        border-radius: 1.86667vw 1.86667vw 0 0; }
        .p-top__kv-pickup .pickup-slider .slick-dots {
          margin-top: 4.26667vw;
          -webkit-box-pack: start;
              -ms-flex-pack: start;
                  justify-content: flex-start; }
          .p-top__kv-pickup .pickup-slider .slick-dots li {
            margin-left: 0;
            margin-right: 1.06667vw; }
            .p-top__kv-pickup .pickup-slider .slick-dots li button {
              width: 6.4vw;
              height: 1.86667vw;
              border-radius: 1.86667vw; }
  .p-top__products {
    padding-top: 26.66667vw;
    padding-bottom: 14.66667vw; }
    .p-top__products .icon {
      -webkit-filter: blur(3px);
              filter: blur(3px); }
      .p-top__products .icon.icon1 {
        top: 9.06667vw;
        right: 18.66667vw;
        width: 22.4vw;
        -webkit-transform: translateY(calc(var(--translateProd1)/3));
                transform: translateY(calc(var(--translateProd1)/3)); }
      .p-top__products .icon.icon2 {
        top: 28.8vw;
        left: 2.93333vw;
        width: 13.86667vw;
        -webkit-transform: translateY(calc(var(--translateProd2)/3));
                transform: translateY(calc(var(--translateProd2)/3)); }
      .p-top__products .icon.icon3 {
        width: 29.06667vw;
        left: 2.93333vw;
        bottom: 80vw;
        -webkit-transform: translateY(calc(var(--translateProd3)/3));
                transform: translateY(calc(var(--translateProd3)/3)); }
      .p-top__products .icon.icon4 {
        top: 45.86667vw;
        right: 3.2vw;
        width: 15.73333vw;
        -webkit-transform: translateY(calc(var(--translateProd4)/3));
                transform: translateY(calc(var(--translateProd4)/3)); }
  .p-top__concept {
    padding-top: 22.13333vw;
    padding-left: 2.66667vw;
    padding-right: 2.66667vw; }
    .p-top__concept .content {
      display: block; }
      .p-top__concept .content .box1 {
        width: auto;
        border-radius: 5.33333vw;
        -webkit-box-shadow: 2.66667vw 1.6vw 2.66667vw rgba(0, 17, 43, 0.039);
                box-shadow: 2.66667vw 1.6vw 2.66667vw rgba(0, 17, 43, 0.039);
        padding: 12.8vw 5.33333vw; }
      .p-top__concept .content .detail {
        width: auto; }
        .p-top__concept .content .detail li {
          margin-bottom: 0.26667vw; }
        .p-top__concept .content .detail a {
          border-radius: 5.33333vw;
          padding: 6.93333vw 5.86667vw 6.4vw; }
        .p-top__concept .content .detail .en {
          font-size: clamp(7px, 2.66667vw, 13px);
          margin-bottom: 0.8vw; }
        .p-top__concept .content .detail .h {
          font-size: clamp(13px, 4.8vw, 23px);
          margin-bottom: 4.8vw; }
        .p-top__concept .content .detail .l {
          font-size: clamp(10px, 3.73333vw, 18px); }
  .p-top__campaign {
    padding: 30.66667vw 5.33333vw 24vw; }
    .p-top__campaign .c-title1 {
      overflow: visible; }
    .p-top__campaign .content ul li:last-child {
      margin-bottom: 0; }
    .p-top__campaign .content ul li:nth-child(n+3) {
      display: none; }
    .p-top__campaign .content ul .img1 {
      margin-bottom: 4vw;
      border-radius: 5.33333vw; }
    .p-top__campaign .content ul .period {
      padding: 0.26667vw 1.86667vw;
      font-size: clamp(10px, 3.73333vw, 18px);
      margin-bottom: 2.66667vw;
      border-radius: 1.33333vw; }
    .p-top__campaign .content ul .h {
      font-size: clamp(11px, 4.26667vw, 21px); }
      .p-top__campaign .content ul .h:after {
        margin-left: 4.26667vw;
        width: 3.46667vw;
        height: 3.46667vw;
        -webkit-box-shadow: 0 0.8vw 1.6vw rgba(0, 0, 0, 0.161);
                box-shadow: 0 0.8vw 1.6vw rgba(0, 0, 0, 0.161); }
    .p-top__campaign .content ul .close .img1:before {
      font-size: clamp(11px, 4.26667vw, 21px); }
    .p-top__campaign .icon.icon1 {
      top: -211.73333vw;
      right: 5.33333vw;
      width: 12.26667vw;
      -webkit-transform: translateY(calc(var(--translateCamp1)/3));
              transform: translateY(calc(var(--translateCamp1)/3)); }
    .p-top__campaign .icon.icon2 {
      top: 26.13333vw;
      left: 3.73333vw;
      width: 12vw;
      -webkit-transform: translateY(calc(var(--translateCamp2)/3));
              transform: translateY(calc(var(--translateCamp2)/3)); }
  .p-top__enjoy {
    padding-left: 5.33333vw;
    padding-right: 5.33333vw; }
    .p-top__enjoy .wrap {
      border-radius: 5.33333vw;
      padding: 12vw 5.33333vw 11.73333vw;
      margin-left: 0;
      margin-right: 0; }
    .p-top__enjoy .block1 {
      margin-bottom: 9.33333vw;
      margin-right: 0; }
      .p-top__enjoy .block1 ul {
        display: block; }
      .p-top__enjoy .block1 li {
        width: auto;
        margin-left: 0;
        margin-bottom: 4vw;
        border-radius: 5.33333vw;
        -webkit-box-shadow: 0 0.8vw 1.6vw rgba(0, 17, 43, 0.039);
                box-shadow: 0 0.8vw 1.6vw rgba(0, 17, 43, 0.039); }
        .p-top__enjoy .block1 li:last-child {
          margin-bottom: 0; }
    .p-top__enjoy .block2 {
      padding: 4.26667vw 0 5.33333vw 4vw;
      margin-right: -10.66667vw; }
      .p-top__enjoy .block2:before {
        border-radius: 5.33333vw 0 0 5.33333vw;
        width: calc(100% - 5.33333vw); }
      .p-top__enjoy .block2 .c-bnr1 li {
        width: 58.66667vw; }
      .p-top__enjoy .block2 .slick-slider {
        margin-bottom: 0; }
      .p-top__enjoy .block2 .slick-dots {
        margin-top: 5.33333vw;
        padding: 1.33333vw 2.13333vw;
        border-radius: 9.33333vw; }
        .p-top__enjoy .block2 .slick-dots li {
          width: auto;
          margin-right: 1.33333vw;
          vertical-align: top; }
          .p-top__enjoy .block2 .slick-dots li button {
            width: 6.4vw;
            height: 1.86667vw;
            border-radius: 1.86667vw;
            padding: 0; }
    .p-top__enjoy .icon.icon1 {
      top: -6.93333vw;
      left: 18.93333vw;
      width: 36.8vw;
      -webkit-transform: translateY(calc(var(--translateEnj1)/3));
              transform: translateY(calc(var(--translateEnj1)/3)); }
    .p-top__enjoy .icon.icon2 {
      top: 15.46667vw;
      right: 0vw;
      width: 10.93333vw;
      -webkit-transform: translateY(calc(var(--translateEnj2)/3));
              transform: translateY(calc(var(--translateEnj2)/3)); }
  .p-top__brand {
    padding: 8vw 5.33333vw 18.66667vw; }
    .p-top__brand .content {
      max-width: initial; }
      .p-top__brand .content ul {
        display: block; }
      .p-top__brand .content li {
        width: auto;
        margin-left: 0;
        margin-bottom: 8vw; }
        .p-top__brand .content li:last-child {
          margin-bottom: 0; }
        .p-top__brand .content li .img1 {
          margin-bottom: 2.93333vw; }
    .p-top__brand .icon {
      z-index: -1;
      height: 1.5em; }
      .p-top__brand .icon span {
        font-size: clamp(17px, 6.4vw, 31px); }
  .p-top__recruit {
    margin-left: 5.33333vw;
    margin-right: 5.33333vw;
    display: block;
    margin-bottom: 21.33333vw; }
    .p-top__recruit .img1 {
      width: auto;
      border-radius: 5.33333vw 5.33333vw 0 0; }
      .p-top__recruit .img1 img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover; }
    .p-top__recruit .block1 {
      width: auto;
      border-radius: 0 0 5.33333vw 5.33333vw;
      padding: 0 4.8vw 6.13333vw; }
      .p-top__recruit .block1 .h {
        font-size: clamp(21px, 8vw, 39px);
        margin-top: -5.06667vw;
        margin-bottom: 2.66667vw;
        position: relative; }
      .p-top__recruit .block1 p {
        font-size: clamp(8px, 3.2vw, 16px); }
      .p-top__recruit .block1 .c-btn1 {
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: flex-start; }
  .p-top__news {
    border-radius: 5.33333vw 5.33333vw 0 0;
    padding: 8vw 5.33333vw 26.66667vw; }
    .p-top__news .content li a {
      padding-top: 4.8vw;
      padding-bottom: 4.8vw; }
    .p-top__news .content li .date {
      width: 22.4vw;
      font-size: clamp(8px, 3.2vw, 16px); }
    .p-top__news .content li .category {
      font-size: clamp(8px, 3.2vw, 16px);
      width: 19.2vw;
      border-radius: 1.33333vw;
      margin-right: 0; }
    .p-top__news .content li .h {
      width: 100%;
      margin-top: 1.33333vw; } }
