/* ======================================================================================

    color

====================================================================================== */
  
  /* --- default --- */
  .clr-def,
  .clr-def-bf::before,
  .clr-def-af::after,
  a {
    color: #ffffff;
    fill: #ffffff;
  }
  .cf_form table input::placeholder,
  .cf_form table textarea::placeholder {
    color: #ffffff59;
  }
  .bg_clr-def,
  .bg_clr-def-bf::before,
  .bg_clr-def-af::after,
  .list-def li p::before,
  .slider .slick-dots li:not(.slick-active) button {
    background-color: #ffffff;
  }
  .bdr_clr-def,
  .bdr_clr-def-bf::before,
  .bdr_clr-def-af::after,
  .cf_form .cf_rc .wpcf7-list-item-label::before,
  .cf_form .acceptance input[type="checkbox"] {
    border-color: #ffffff;
  }
  .list-def li > *,
  .tbl-def th,
  .tbl-def td,
  main .posts-news .post {
    border-color: #ffffff26;
  }
  @media screen and (max-width: 560px) {
    .clr-def-sp,
    .clr-def-bf-sp::before,
    .clr-def-af-sp::after {
      color: #ffffff;
    }
  }

  /* --- body --- */
  .clr-body,
  .clr-body-bf::before,
  .clr-body-af::after {
    color: #151515;
    fill: #151515;
  }
  .bg_clr-body,
  .bg_clr-body-bf::before,
  .bg_clr-body-af::after {
    background-color: #151515;
  }
  .bdr_clr-body,
  .bdr_clr-body-bf::before,
  .bdr_clr-body-af::after {
    border-color: #151515;
  }

  /* --- body sub --- */
  .clr-body_sub,
  .clr-body_sub-bf::before,
  .clr-body_sub-af::after {
    color: #1e1e1d;
    fill: #1e1e1d;
  }
  .bg_clr-body_sub,
  .bg_clr-body_sub-bf::before,
  .bg_clr-body_sub-af::after {
    background-color: #1e1e1d;
  }
  .bdr_clr-body_sub,
  .bdr_clr-body_sub-bf::before,
  .bdr_clr-body_sub-af::after {
    border-color: #1e1e1d;
  }

  /* --- main --- */
  .clr-main,
  .clr-main-bf::before,
  .clr-main-af::after,
  .list-def li h4,
  .tbl-def tbody th {
    color: #e8c547;
    fill: #e8c547;
  }
  .bg_clr-main,
  .bg_clr-main-bf::before,
  .bg_clr-main-af::after,
  .list-def li h4::before,
  .slider .slick-dots li.slick-active button {
    background-color: #e8c547;
  }
  .iziModal .iziModal-header {
    background-color: #e8c547 !important;
  }
  .bdr_clr-main,
  .bdr_clr-main-bf::before,
  .bdr_clr-main-af::after,
  .tbl-def,
  .tbl-def thead tr,
  .slider .slick-arrow,
  .slider .slick-arrow::before {
    border-color: #e8c547;
  }
  .modal_list--item {
    border-color: #e8c547 !important;
  }
  .cf_form input:focus,
  .cf_form select:focus,
  .cf_form textarea:focus {
    outline: 1px #e8c547 solid;
    border: none !important;
  }
  @media screen and (min-width: 961px) {
    .hov_clr-main:hover {
      color: #e8c547;
      fill: #e8c547;
    }
  }

  /* --- wht --- */
  .clr-wht,
  .clr-wht-bf::before,
  .clr-wht-af::after {
    color: #fff;
    fill: #fff;
  }
  .bg_clr-wht,
  .bg_clr-wht-bf::before,
  .bg_clr-wht-af::after,
  .slider .slick-arrow::after {
    background-color: #fff;
  }
  .bdr_clr-wht,
  .bdr_clr-wht-bf::before,
  .bdr_clr-wht-af::after {
    border-color: #fff;
  }

  /* --- blk --- */
  .clr-blk,
  .clr-blk-bf::before,
  .clr-blk-af::after {
    color: #151515;
    fill: #151515;
  }
  .bg_clr-blk,
  .bg_clr-blk-bf::before,
  .bg_clr-blk-af::after {
    background-color: #151515;
  }
  .bdr_clr-blk,
  .bdr_clr-blk-bf::before,
  .bdr_clr-blk-af::after {
    border-color: #151515;
  }

/* ##############################################################################

    CUSTOM

############################################################################## */

/* common
*************************************************** */
  rt {
    position: relative;
    top: -4px;
  }
  :root{
    --gold-1:#f6e27a;
    --gold-2:#e8c547;
    --gold-3:#d4af37; /* 定番ゴールド */
    --gold-4:#b88700;
    --gold-5:#7a5c00;
  }

  .grad-gld{
    background: linear-gradient(135deg,
      var(--gold-1) 0%,
      var(--gold-2) 20%,
      var(--gold-3) 40%,
      var(--gold-2) 60%,
      var(--gold-4) 80%,
      var(--gold-5) 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-weight: 700;
    text-shadow: 0 2px 4px rgba(0,0,0,.35);
  }
  @media (max-width: 960px) {
    .footer .sns_list {
      display: none;
    }
  }

/* hero
*************************************************** */
  .hero .hero--catch {
    width: 100%;
    max-width: 100%;
    background: linear-gradient(
      to top,
      rgba(0,0,0,.7) 30%,
      rgba(0,0,0,0) 100%
    );
    padding-top: 200px;
    padding-bottom: 80px;
    padding-left: 120px;
    padding-right: 120px;
    column-gap: 56px;
  }
  .hero .hero--catch p {
    translate: 0 -18px;
    letter-spacing: .2em;
  }
  @media (max-width: 1280px) {
    .hero .hero--catch {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
      row-gap: 40px;
      padding-left: 80px;
      padding-right: 80px;
    }
    .hero .hero--catch > * {
      width: 100%;
    }
  }
  @media (max-width: 768px) {
    .hero .hero--catch {
      padding-left: 24px;
      padding-right: 24px;
    }
  }
  @media (max-width: 560px) {
    .hero .hero--catch {
      padding-bottom: 32px;
    }
  }

/* framing
*************************************************** */
  #framing {
    background-color: #000;
    overflow: hidden;
  }
  #framing .bg_bloc::before {
    opacity: .6;
  }
  #framing .bg iframe {
    width: 100vw;
    height: 54vw;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
  }
  @media (max-width: 1200px) {
    #framing .bg {
      height: calc(54vw - 80px*2);
    }
    #framing .bg::before {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 20%;
      background: linear-gradient(
        to top,
        rgba(0,0,0,1) 0%,
        rgba(0,0,0,0) 100%
      );
    }
    #framing .bg iframe {
      top: -80px;
      translate: -50% 0;
    }
  }
  @media (max-width: 960px) {
    #framing .sect_ttl-jp {
      line-height: 2em;
    }
    #framing .bg {
      height: calc(54vw - 60px*2);
    }
    #framing .bg iframe {
      top: -60px;
    }
  }
  @media (max-width: 560px) {
    #framing .sect_ttl-jp {
      letter-spacing: .05em;
    }
    #framing .bg {
      height: calc(54vw - 90px);
    }
    #framing .bg iframe {
      top: -54px;
    }
  }

/* about
*************************************************** */
  @media (max-width: 560px) {
    #about .sect_ttl-jp {
      line-height: 2em;
    }
  }

/* features
*************************************************** */
  #features .column_list--item .txtarea::before {
    height: 100%;
    opacity: 1;
    z-index: -1;
  }

/* specs_pricing
*************************************************** */
  #specs_pricing .flx .head2 {
    width: 216px;
  }
  @media (max-width: 960px) {
    #specs_pricing .flx .head2 {
      width: 100%;
    }
  }

/* gallery
*************************************************** */
  #gallery.slider-b .slick-list {
    padding-bottom: 0;
  }
