@charset "UTF-8";
@font-face {
  font-family: "Notosans";
  src: url("https://carrot.itembox.design/item/fulcro/feature/collection/2025/font/NotoSansJP.ttf") format("truetype"); }
@font-face {
  font-family: "OpenSans";
  src: url("https://carrot.itembox.design/item/fulcro/feature/collection/2025/font/OpenSans.ttf") format("truetype"); }
/*--------------------
共通設定
----------------------*/
* {
  padding: 0;
  margin: 0;
  box-shadow: none !important; }

.fs-l-page {
  overflow: visible !important; }

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom; }

a {
  text-decoration: none;
  color: #211815; }
  a.disabled {
    pointer-events: none;
    text-decoration: none; }
  a:hover {
    color: #211815;
    text-decoration: none; }
  a:visited {
    color: #211815;
    text-decoration: none; }

ul, ol {
  list-style: none; }

.pc {
  display: block; }
  @media screen and (max-width: 1200px) {
    .pc {
      display: none; } }

.sp {
  display: none; }
  @media screen and (max-width: 1200px) {
    .sp {
      display: block; } }

.wrapper {
  margin: 0 auto !important; }

#fulcro {
  background: #ffffff; }
  #fulcro.lp_wrapper {
    margin: 0 auto;
    box-sizing: border-box;
    padding: 0;
    letter-spacing: 0;
    color: #211815;
    font-size: 16px;
    text-align: left;
    letter-spacing: 1px;
    font-weight: 400;
    font-family: "Notosans";
    font-style: normal;
    position: relative; }
    #fulcro.lp_wrapper .mv {
      overflow: hidden; }
      @media screen and (max-width: 600px) {
        #fulcro.lp_wrapper .mv {
          height: auto; } }
      #fulcro.lp_wrapper .mv img {
        width: 100%;
        height: 100%;
        object-fit: cover; }
    #fulcro.lp_wrapper .brand {
      background: #b4b4b4;
      margin: 0 auto;
      padding: 5%; }
      @media screen and (max-width: 600px) {
        #fulcro.lp_wrapper .brand {
          padding: 10% 5%; } }
      #fulcro.lp_wrapper .brand .inner {
        width: fit-content;
        margin: 0 auto; }
        #fulcro.lp_wrapper .brand .inner h2 {
          font-size: 1.5em;
          margin-bottom: 1.0em;
          font-family: "OpenSans"; }
          @media screen and (max-width: 600px) {
            #fulcro.lp_wrapper .brand .inner h2 {
              font-size: 4.5vw; } }
        #fulcro.lp_wrapper .brand .inner p {
          font-size: 1.0em;
          line-height: 2.0;
          padding-left: 1.5em;
          position: relative; }
          @media screen and (max-width: 600px) {
            #fulcro.lp_wrapper .brand .inner p {
              font-size: 3.0vw; } }
          #fulcro.lp_wrapper .brand .inner p::before {
            content: "";
            top: 0;
            left: 0;
            width: .5px;
            height: 100%;
            position: absolute;
            background: #211815; }
    #fulcro.lp_wrapper .category {
      margin: 5% auto; }
      @media screen and (max-width: 600px) {
        #fulcro.lp_wrapper .category {
          margin: 2% auto; } }
      #fulcro.lp_wrapper .category ul {
        display: flex;
        align-items: center;
        justify-content: space-between;
        max-width: 1000px;
        width: 96%;
        margin: 0 auto; }
        @media screen and (max-width: 600px) {
          #fulcro.lp_wrapper .category ul {
            flex-wrap: wrap; } }
        #fulcro.lp_wrapper .category ul li {
          width: calc(100%/4 - 1%);
          position: relative; }
          @media screen and (max-width: 600px) {
            #fulcro.lp_wrapper .category ul li {
              width: calc(100%/2 - 1%);
              margin-bottom: 1%; } }
          #fulcro.lp_wrapper .category ul li div a {
            display: block;
            position: relative; }
            #fulcro.lp_wrapper .category ul li div a::after {
              content: "";
              top: 0;
              left: 0;
              position: absolute;
              width: 100%;
              height: 100%;
              background: rgba(0, 0, 0, 0.2);
              opacity: 0;
              z-index: +1;
              transition: .8s; }
            #fulcro.lp_wrapper .category ul li div a:hover::after {
              opacity: 1; }
            #fulcro.lp_wrapper .category ul li div a p {
              font-size: 1.0em;
              font-weight: 600;
              font-family: "OpenSans";
              color: #ffffff;
              position: absolute;
              bottom: 10%;
              left: 50%;
              text-align: center;
              width: 100%;
              transform: translateX(-50%);
              z-index: +2; }
              @media screen and (max-width: 600px) {
                #fulcro.lp_wrapper .category ul li div a p {
                  font-size: 3.5vw; } }
      #fulcro.lp_wrapper .category .all {
        max-width: 1000px;
        width: 96%;
        margin: 2.0em auto;
        text-align: right; }
        #fulcro.lp_wrapper .category .all a {
          font-size: 1.1em;
          line-height: 1.0;
          padding-right: 1.5em;
          position: relative; }
          @media screen and (max-width: 600px) {
            #fulcro.lp_wrapper .category .all a {
              font-size: 3.2vw; } }
          #fulcro.lp_wrapper .category .all a::after {
            content: "";
            position: absolute;
            width: 7px;
            height: 7px;
            top: 50%;
            right: 0.5em;
            border-bottom: 0.5px solid #211815;
            border-left: 0.5px solid #211815;
            transform: translateY(-50%) rotate(-135deg); }
            @media screen and (max-width: 600px) {
              #fulcro.lp_wrapper .category .all a::after {
                width: 5px;
                height: 5px; } }
    #fulcro.lp_wrapper section {
      max-width: 1000px;
      margin: 5% auto; }
      @media screen and (max-width: 600px) {
        #fulcro.lp_wrapper section {
          margin-bottom: 25%; } }
      #fulcro.lp_wrapper section h3 {
        font-family: "OpenSans";
        font-weight: 600;
        padding-left: 1.0em;
        font-size: 1.5em;
        margin-bottom: 1.0em; }
        @media screen and (max-width: 600px) {
          #fulcro.lp_wrapper section h3 {
            font-size: 4.5vw; } }
      #fulcro.lp_wrapper section .swiper-wrapper dl, #fulcro.lp_wrapper section .contents dl {
        margin: 1.5em auto 0;
        font-size: 0.8em;
        line-height: 1.8;
        width: 98%; }
        @media screen and (max-width: 600px) {
          #fulcro.lp_wrapper section .swiper-wrapper dl, #fulcro.lp_wrapper section .contents dl {
            font-size: 2.9vw; } }
        #fulcro.lp_wrapper section .swiper-wrapper dl dd, #fulcro.lp_wrapper section .contents dl dd {
          font-size: 100%; }
        #fulcro.lp_wrapper section .swiper-wrapper dl dt, #fulcro.lp_wrapper section .contents dl dt {
          font-size: 100%;
          white-space: nowrap;
          text-overflow: ellipsis;
          overflow: hidden; }
      #fulcro.lp_wrapper section.gray {
        padding: 2.0em 1.5em 0;
        background: #dbdbdb; }
        @media screen and (max-width: 600px) {
          #fulcro.lp_wrapper section.gray {
            padding: 2.0em 1.0em 0; } }
        #fulcro.lp_wrapper section.gray h3 {
          padding: 0; }
      #fulcro.lp_wrapper section .rank {
        counter-reset: rank;
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        flex-wrap: wrap; }
        #fulcro.lp_wrapper section .rank li {
          width: calc(100%/4 - 1%);
          position: relative;
          margin-bottom: 5%; }
          @media screen and (max-width: 600px) {
            #fulcro.lp_wrapper section .rank li {
              width: calc(100%/3 - 1%); }
              #fulcro.lp_wrapper section .rank li:nth-child(n+7) {
                display: none; } }
          #fulcro.lp_wrapper section .rank li::before {
            position: absolute;
            counter-increment: rank;
            content: counter(rank);
            top: 2%;
            left: 4%;
            font-size: 1.0em;
            font-family: "OpenSans";
            font-weight: 600; }
            @media screen and (max-width: 600px) {
              #fulcro.lp_wrapper section .rank li::before {
                font-size: 3.2vw; } }
          #fulcro.lp_wrapper section .rank li dl {
            margin: 1.0em auto 0;
            font-size: 0.8em;
            line-height: 1.8;
            width: 98%; }
            @media screen and (max-width: 600px) {
              #fulcro.lp_wrapper section .rank li dl {
                font-size: 2.8vw; } }
            #fulcro.lp_wrapper section .rank li dl dd {
              font-size: 100%; }
            #fulcro.lp_wrapper section .rank li dl dt {
              font-size: 100%;
              white-space: nowrap;
              text-overflow: ellipsis;
              overflow: hidden; }
      #fulcro.lp_wrapper section.seriesBox {
        margin-bottom: 10%; }
        @media screen and (max-width: 600px) {
          #fulcro.lp_wrapper section.seriesBox {
            margin-bottom: 15%; } }
      #fulcro.lp_wrapper section .all {
        margin: 1em auto;
        text-align: right; }
        @media screen and (max-width: 600px) {
          #fulcro.lp_wrapper section .all {
            width: 97%; } }
        #fulcro.lp_wrapper section .all.news {
          text-align: left; }
          @media screen and (max-width: 600px) {
            #fulcro.lp_wrapper section .all.news {
              text-align: right; } }
        #fulcro.lp_wrapper section .all a {
          font-size: 1.1em;
          line-height: 1.0;
          padding-right: 1.5em;
          position: relative; }
          @media screen and (max-width: 600px) {
            #fulcro.lp_wrapper section .all a {
              font-size: 3.2vw; } }
          #fulcro.lp_wrapper section .all a::after {
            content: "";
            position: absolute;
            width: 7px;
            height: 7px;
            top: 50%;
            right: 0.5em;
            border-bottom: 0.5px solid #211815;
            border-left: 0.5px solid #211815;
            transform: translateY(-50%) rotate(-135deg); }
            @media screen and (max-width: 600px) {
              #fulcro.lp_wrapper section .all a::after {
                width: 6px;
                height: 6px; } }
      #fulcro.lp_wrapper section .series_img {
        position: relative;
        margin-bottom: 1%; }
        #fulcro.lp_wrapper section .series_img img {
          object-fit: cover;
          max-width: none;
          width: 100%; }
        #fulcro.lp_wrapper section .series_img .txtBox {
          position: absolute;
          width: 100%;
          overflow-x: hidden;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%); }
          #fulcro.lp_wrapper section .series_img .txtBox h4 {
            font-size: 5.5em;
            font-family: "OpenSans";
            font-weight: 600;
            color: #fff;
            text-align: center; }
            @media screen and (max-width: 600px) {
              #fulcro.lp_wrapper section .series_img .txtBox h4 {
                font-size: 15vw; } }
          #fulcro.lp_wrapper section .series_img .txtBox p {
            font-size: 1.0em;
            text-align: center;
            color: #fff;
            margin-top: 1.5em; }
            @media screen and (max-width: 600px) {
              #fulcro.lp_wrapper section .series_img .txtBox p {
                font-size: 3.0vw; } }
      @media screen and (max-width: 600px) {
        #fulcro.lp_wrapper section.center {
          margin: 5% auto;
          width: 90%; } }
      #fulcro.lp_wrapper section.center h3 {
        padding: 0; }
      #fulcro.lp_wrapper section .newslist {
        max-width: 600px;
        display: flex;
        flex-direction: column; }
        #fulcro.lp_wrapper section .newslist a {
          display: block;
          padding: 1.0em 0;
          border-bottom: 1px solid #211815; }
          #fulcro.lp_wrapper section .newslist a p {
            font-size: .9em;
            line-height: 1.8; }
            @media screen and (max-width: 600px) {
              #fulcro.lp_wrapper section .newslist a p {
                font-size: 2.8vw; } }
            #fulcro.lp_wrapper section .newslist a p span {
              font-size: 80%; }
  #fulcro .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
  #fulcro .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 8px; }
  #fulcro .swiper-pagination-bullet {
    background-color: #ccc;
    height: 8px;
    width: 8px; }
