@charset "UTF-8";
/*=======================================
商品紹介
=========================================*/
.is-concept .l-pagetitle .cover {
  background-image: url(../img/concept/pagetitle_img1.jpg); }

.p-concept {
  padding-top: 5.10417vw; }
  .p-concept__content {
    margin-left: 6.25vw;
    margin-right: 6.25vw;
    margin-bottom: 13.95833vw;
    position: relative;
    z-index: 1; }
    .p-concept__content .lead {
      text-align: center;
      padding: 5.625vw 1.5625vw;
      font-size: clamp(22px, 1.25vw, 31px);
      letter-spacing: 0.1em;
      font-weight: 700;
      position: relative; }
      @media screen and (max-width: 767px) {
        .p-concept__content .lead {
          font-size: clamp(17px, 6.4vw, 31px); } }
      .p-concept__content .lead:before {
        display: block;
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        z-index: -1;
        width: 100%;
        height: 31.25vw;
        background: #fff;
        border-radius: 1.04167vw;
        -webkit-box-shadow: 0.52083vw 0.3125vw 0.52083vw rgba(0, 0, 0, 0.05);
                box-shadow: 0.52083vw 0.3125vw 0.52083vw rgba(0, 0, 0, 0.05); }
    .p-concept__content .content {
      max-width: 66.66667vw;
      margin-left: auto;
      margin-right: auto; }
      .p-concept__content .content li {
        margin-bottom: 2.08333vw; }
        .p-concept__content .content li:last-child {
          margin-bottom: 0; }
        .p-concept__content .content li.okagami a {
          background-image: url(../img/concept/content_img1.jpg); }
        .p-concept__content .content li.kiri a {
          background-image: url(../img/concept/content_img2.jpg); }
        .p-concept__content .content li.gohan a {
          background-image: url(../img/concept/content_img3.jpg); }
        .p-concept__content .content li.beika a {
          background-image: url(../img/concept/content_img4.jpg?v=20260203); }
      .p-concept__content .content a {
        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-align: start;
            -ms-flex-align: start;
                align-items: flex-start;
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat;
        color: #fff;
        border-radius: 1.5625vw;
        position: relative;
        overflow: hidden;
        text-decoration: none;
        padding: 3.54167vw 4.32292vw 3.64583vw; }
        .p-concept__content .content a:before, .p-concept__content .content a:after {
          display: block;
          content: "";
          position: absolute; }
        .p-concept__content .content a:before {
          background: rgba(0, 0, 0, 0.4);
          left: 0;
          top: 0;
          width: 100%;
          height: 100%;
          z-index: 1; }
        .p-concept__content .content a:after {
          z-index: 2;
          top: 0;
          bottom: 0;
          right: 0;
          left: 0;
          margin: auto;
          width: calc(100% - 4.16667vw);
          height: calc(100% - 3.125vw);
          background: url(../img/concept/icon_1.svg) no-repeat left top, url(../img/concept/icon_2.svg) no-repeat right bottom;
          background-size: 2.96875vw 2.5vw; }
        .p-concept__content .content a > * {
          position: relative;
          z-index: 3; }
      .p-concept__content .content .en {
        background: #fff;
        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;
        padding: 0.10417vw 0.72917vw;
        color: #E50012;
        border-radius: 1.04167vw;
        margin-bottom: 0.41667vw; }
        @media screen and (max-width: 767px) {
          .p-concept__content .content .en {
            font-size: clamp(7px, 2.66667vw, 13px); } }
      .p-concept__content .content .h {
        font-size: clamp(29px, 1.66667vw, 42px);
        font-weight: 700;
        margin-bottom: 1.77083vw;
        line-height: 1.5; }
        @media screen and (max-width: 767px) {
          .p-concept__content .content .h {
            font-size: clamp(22px, 8.53333vw, 42px); } }
      .p-concept__content .content .l {
        line-height: 1.8; }
      .p-concept__content .content .c-btn1 {
        margin-top: 1.5625vw; }

/* ----------------------------- スマホ（～767px） */
@media screen and (max-width: 767px) {
  .p-concept {
    padding-top: 13.33333vw; }
    .p-concept__content {
      margin-left: 5.33333vw;
      margin-right: 5.33333vw;
      margin-bottom: 48vw; }
      .p-concept__content .lead {
        text-align: left;
        padding: 6.66667vw 5.33333vw 10.66667vw;
        font-size: clamp(11px, 4.26667vw, 21px); }
        .p-concept__content .lead:before {
          height: 120vw;
          background: #fff;
          border-radius: 2.66667vw;
          -webkit-box-shadow: 1.33333vw 0.8vw 1.33333vw rgba(0, 0, 0, 0.05);
                  box-shadow: 1.33333vw 0.8vw 1.33333vw rgba(0, 0, 0, 0.05); }
      .p-concept__content .content {
        max-width: initial;
        margin-left: 5.33333vw;
        margin-right: 5.33333vw; }
        .p-concept__content .content li {
          margin-bottom: 5.33333vw; }
          .p-concept__content .content li:last-child {
            margin-bottom: 0; }
        .p-concept__content .content a {
          border-radius: 2.66667vw;
          padding: 8vw 5.33333vw; }
          .p-concept__content .content a:after {
            width: calc(100% - 5.33333vw);
            height: calc(100% - 5.33333vw);
            background-size: 8vw auto; }
        .p-concept__content .content .en {
          font-size: clamp(7px, 2.66667vw, 13px);
          padding: 0.26667vw 3.73333vw;
          border-radius: 5.33333vw;
          margin-bottom: 1.6vw; }
        .p-concept__content .content .h {
          font-size: clamp(14px, 5.33333vw, 26px);
          margin-bottom: 6.4vw; }
        .p-concept__content .content .c-btn1 {
          margin-top: 4vw;
          width: 100%; }
          .p-concept__content .content .c-btn1 .anchor {
            padding-left: 4vw;
            line-height: 1.5;
            font-size: clamp(13px, 0.72917vw, 18px); } }
          @media screen and (max-width: 767px) and (max-width: 767px) {
            .p-concept__content .content .c-btn1 .anchor {
              font-size: clamp(10px, 3.73333vw, 18px); } }
