@charset "UTF-8";
/* ↓↓↓公開時は消す↓↓↓ */
.pane-left-menu {
  display: none; }

.pane-topic-path {
  display: none; }

/* ↑↑↑公開時は消す↑↑↑ */
@media screen and (max-width: 767px) {
  .page-genre .pc {
    display: none; } }
.page-genre .sp {
  display: none; }
  @media screen and (max-width: 767px) {
    .page-genre .sp {
      display: block; } }
.page-genre .block-genre-page {
  padding: 0 5%; }

@media screen and (max-width: 767px) {
  .block-brand-detail .block-brand-detail--image {
    width: calc(100% + 11.11%);
    margin: 0 -5.555%; } }
.block-brand-detail .block-brand-overview {
  /*max-width: 800px;
  margin-bottom: 120px;
  border-bottom: 1px solid #ddd;*/ }
  @media screen and (max-width: 767px) {
    .block-brand-detail .block-brand-overview {
      margin-bottom: 60px; } }
  @media screen and (max-width: 767px) {
    .block-brand-detail .block-brand-overview .block-brand-name {
      display: flex;
      align-items: center;
      padding: 20px 0; } }
  @media screen and (max-width: 767px) {
    .block-brand-detail .block-brand-overview .block-brand-name figure {
      width: 30%; } }
  .block-brand-detail .block-brand-overview .block-brand-title {
    padding-left: 60px;
    /*font-family: "游ゴシック体",YuGothic,"Yu Gothic M","游ゴシック Medium","Yu Gothic Medium","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN W3",HiraKakuProN-W3,"ヒラギノ角ゴ ProN","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;*/ }
    @media screen and (max-width: 767px) {
      .block-brand-detail .block-brand-overview .block-brand-title {
        padding-left: 10%;
        width: 70%;
        font-size: 5.6vw;
        margin: 0;
        font-weight: normal; } }
    .block-brand-detail .block-brand-overview .block-brand-title span {
      margin-top: 20px;
      /*margin: 0 0 10px;*/ }
      @media screen and (max-width: 767px) {
        .block-brand-detail .block-brand-overview .block-brand-title span {
          font-size: 13px;
          font-weight: normal;
          display: block;
          line-height: 1.7;
          margin-top: 10px; } }
    .block-brand-detail .block-brand-overview .block-brand-title .ruby {
      color: #777;
      font-size: 12px;
      margin: 0 0 3px;
      letter-spacing: 1px; }
  @media screen and (max-width: 767px) {
    .block-brand-detail .block-brand-overview .block-brand-lead {
      margin-top: 0; } }

.brand-content {
  max-width: 640px;
  margin: 0 auto;
  padding-bottom: 20px; }
  .brand-content .inner section {
    opacity: 0;
    transform: translate(0, 20px);
    -webkit-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1); }
    .brand-content .inner section.animate {
      opacity: 1;
      transform: translate(0, 0); }
    .brand-content .inner section h2, .brand-content .inner section h3, .brand-content .inner section h4 {
      line-height: 1.7;
      font-family: "游ゴシック体",YuGothic,"Yu Gothic M","游ゴシック Medium","Yu Gothic Medium","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN W3",HiraKakuProN-W3,"ヒラギノ角ゴ ProN","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif; }
    .brand-content .inner section h2 {
      font-size: 32px;
      margin: 0 0 50px;
      font-weight: bold; }
      @media screen and (max-width: 767px) {
        .brand-content .inner section h2 {
          font-size: 5.6vw;
          margin-bottom: 0; } }
    .brand-content .inner section h3 {
      margin: 80px 0 30px;
      position: relative;
      font-weight: bold;
      padding-top: 180px; }
      @media screen and (max-width: 767px) {
        .brand-content .inner section h3 {
          font-size: 5.0vw;
          padding-top: 120px;
          margin-top: 60px; } }
      .brand-content .inner section h3::before {
        content: "";
        -webkit-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
        transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
        display: block;
        background: #b3b3b3;
        position: absolute;
        /*width: 100px;
        height: 1px;
        top: 20px;
        left: -120px;*/
        width: 1px;
        height: 0;
        top: -20px;
        left: 50%;
        opacity: 0; }
        @media screen and (max-width: 767px) {
          .brand-content .inner section h3::before {
            /*width: 1px;*/
            /*top: 0;
            left: 50%;
            transform: translate(-50%, 0);*/ } }
      .brand-content .inner section h3.animate::before {
        height: 150px;
        top: 0;
        opacity: 1; }
        @media screen and (max-width: 767px) {
          .brand-content .inner section h3.animate::before {
            height: 100px; } }
    .brand-content .inner section p {
      margin-top: 30px; }
      @media screen and (max-width: 767px) {
        .brand-content .inner section p {
          margin-bottom: 0;
          font-size: 15px;
          line-height: 2.2; } }
    .brand-content .inner section figure {
      margin-top: 30px;
      line-height: 1; }
      .brand-content .inner section figure figcaption {
        font-size: 14px;
        color: #888;
        line-height: 1.4;
        padding-left: 1em;
        text-indent: -1em;
        margin: 10px 0 0; }
        @media screen and (max-width: 767px) {
          .brand-content .inner section figure figcaption {
            font-size: 13px; } }
        .brand-content .inner section figure figcaption::before {
          content: "△"; }
      .brand-content .inner section figure img {
        vertical-align: top; }
    .brand-content .inner section .block-brand-message-title {
      margin-top: 0;
      margin-bottom: 60px; }
      @media screen and (max-width: 767px) {
        .brand-content .inner section .block-brand-message-title {
          font-family: "Noto Sans JP",sans-serif;
          position: relative;
          margin: 0 0 30px;
          font-size: 3.2vw; }
          .brand-content .inner section .block-brand-message-title::after {
            content: "";
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            width: 80%;
            height: 1px;
            margin: auto;
            background: #000; } }
  .brand-content .detail-area {
    /*background: #eee;*/
    padding: 35px;
    font-size: 13px;
    margin-top: 100px;
    border: 1px solid #000;
    position: relative; }
    @media screen and (max-width: 767px) {
      .brand-content .detail-area {
        padding: 7vw; } }
    .brand-content .detail-area dt {
      font-size: 14px;
      font-weight: bold;
      margin-bottom: 20px;
      /* border-bottom: 1px solid #000; */
      /* padding-bottom: 15px; */
      line-height: 1;
      position: absolute;
      top: -40px;
      left: 20px;
      background: #000;
      color: #fff;
      text-align: center;
      line-height: 1;
      z-index: 2;
      padding: 15px 10px;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      letter-spacing: 4px; }
      @media screen and (max-width: 767px) {
        .brand-content .detail-area dt {
          font-size: 3.4vw;
          left: 4vw;
          padding: 4vw 2.5vw; } }
    .brand-content .detail-area dd {
      padding-left: 40px; }
      @media screen and (max-width: 767px) {
        .brand-content .detail-area dd {
          padding-left: 10vw; } }
      .brand-content .detail-area dd a {
        -webkit-transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
        transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
        opacity: 1; }
        .brand-content .detail-area dd a:hover {
          opacity: 0.6;
          text-decoration: none; }
      .brand-content .detail-area dd p {
        /*color: #666;*/ }
        @media screen and (max-width: 767px) {
          .brand-content .detail-area dd p {
            margin: 0; } }
        .brand-content .detail-area dd p a {
          color: #666;
          display: inline-block;
          text-decoration: underline; }
          .brand-content .detail-area dd p a:hover {
            text-decoration: none; }
          @media screen and (max-width: 767px) {
            .brand-content .detail-area dd p a {
              margin-left: 0; } }
        .brand-content .detail-area dd p .name {
          display: block;
          font-size: 16px;
          font-weight: bold;
          margin-bottom: 10px; }
      .brand-content .detail-area dd .sns-area {
        margin-top: 20px;
        display: flex;
        align-items: center; }
        @media screen and (max-width: 767px) {
          .brand-content .detail-area dd .sns-area {
            justify-content: space-between;
            flex-wrap: wrap; } }
        @media screen and (max-width: 767px) {
          .brand-content .detail-area dd .sns-area li {
            width: 49%; } }
        .brand-content .detail-area dd .sns-area li a {
          color: #666;
          display: flex;
          align-items: center; }
          .brand-content .detail-area dd .sns-area li a img {
            width: 20px; }
          .brand-content .detail-area dd .sns-area li a span {
            display: inline-block;
            padding-left: 10px;
            line-height: 1.5; }
        .brand-content .detail-area dd .sns-area li + li {
          margin-left: 25px; }
          @media screen and (max-width: 767px) {
            .brand-content .detail-area dd .sns-area li + li {
              margin-left: 0; } }
        @media screen and (max-width: 767px) {
          .brand-content .detail-area dd .sns-area li:nth-child(n+3) {
            margin-top: 10px; } }

.anchor-point {
  margin-top: -72px;
  padding-top: 72px;
  display: block; }
  @media screen and (max-width: 767px) {
    .anchor-point {
      margin-top: 0;
      padding-top: 0; } }

.block-genre-page--goods,
.block-genre-page--header-freespace {
  margin: 0; }
