@charset "UTF-8";
/*responsive----------------------------------------------------*/
/*color*/
.pc {
  display: block; }
  @media (max-width: 1024px) {
    .pc {
      display: none; } }
  @media (max-width: 599px) {
    .pc {
      display: none; } }

.tab {
  display: block; }
  @media (max-width: 1024px) {
    .tab {
      display: block; } }
  @media (max-width: 599px) {
    .tab {
      display: none; } }

.tab_and_sp_only {
  display: none; }
  @media (max-width: 1024px) {
    .tab_and_sp_only {
      display: block; } }
  @media (max-width: 599px) {
    .tab_and_sp_only {
      display: block; } }

.sp {
  display: none !important; }
  @media (max-width: 1024px) {
    .sp {
      display: block; } }
  @media (max-width: 599px) {
    .sp {
      display: block; } }

.sp_only {
  display: none; }
  @media (max-width: 599px) {
    .sp_only {
      display: block; } }

/*header*/
header {
  /* position: fixed; */
  position: absolute;
  display: flex;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 9999;
  align-items: center;
  background: rgba(255, 255, 255, 0.96);
  /* 
  height: 100px;
  overflow: hidden; */ }
  @media (max-width: 1024px) {
    header {
      position: fixed; } }
  header h1.logo,
  header .logo {
    width: 230px;
    height: auto;
    transition: 0.3s;
    margin: 0;
    padding-top: 6px; }
    header h1.logo a,
    header .logo a {
      background: url("../images/common/logo.png") center center no-repeat;
      background-size: cover;
      display: block;
      width: 100%;
      padding-top: 20.3%; }
  header .header_inner {
    width: 100%;
    margin: 0 auto 0;
    display: flex;
    padding: 20px 0 0;
    flex-wrap: wrap; }
    @media (max-width: 1024px) {
      header .header_inner {
        padding: 10px 0; } }
    header .header_inner #h_top {
      display: flex;
      width: 96%;
      margin: 0 auto 0;
      justify-content: center;
      position: relative; }
      header .header_inner #h_top .sns {
        position: absolute;
        left: 0; }
        @media (max-width: 1024px) {
          header .header_inner #h_top .sns {
            display: none; } }
        header .header_inner #h_top .sns ul {
          list-style: none;
          padding: 0;
          margin: 0; }
          header .header_inner #h_top .sns ul li {
            float: left;
            margin-right: 10px;
            width: 30px; }
            header .header_inner #h_top .sns ul li img {
              width: 100%;
              height: auto; }
      header .header_inner #h_top .h_logo {
        width: 130px; }
        @media (max-width: 1024px) {
          header .header_inner #h_top .h_logo {
            width: 80px;
            position: relative;
            z-index: 99999; } }
        @media (max-width: 599px) {
          header .header_inner #h_top .h_logo {
            width: 80px; } }
        header .header_inner #h_top .h_logo img {
          width: 100%;
          height: auto; }
      header .header_inner #h_top .submenu {
        position: absolute;
        right: 0;
        display: flex; }
        @media (max-width: 1024px) {
          header .header_inner #h_top .submenu {
            width: 100%;
            left: 0;
            right: auto;
            z-index: 99999; } }
        header .header_inner #h_top .submenu ul.link_icon {
          list-style: none;
          padding: 0;
          margin: 0;
          display: flex; }
          header .header_inner #h_top .submenu ul.link_icon li {
            float: left;
            margin-right: 10px;
            width: 52px;
            text-align: center; }
            header .header_inner #h_top .submenu ul.link_icon li span {
              font-size: 10px;
              line-height: 110%;
              display: inline-block;
              letter-spacing: 0; }
            header .header_inner #h_top .submenu ul.link_icon li figure {
              margin: 0; }
              header .header_inner #h_top .submenu ul.link_icon li figure img {
                width: 46%;
                height: auto; }
          @media (max-width: 1024px) {
            header .header_inner #h_top .submenu ul.link_icon li#link_officile {
              display: none; }
            header .header_inner #h_top .submenu ul.link_icon li#link_mail {
              display: none; }
            header .header_inner #h_top .submenu ul.link_icon li#link_cart {
              position: absolute;
              left: 0%;
              top: 8px;
              float: none; }
            header .header_inner #h_top .submenu ul.link_icon li#link_login {
              position: absolute;
              left: 4em;
              top: 8px;
              float: none; } }
        @media (max-width: 1024px) {
          header .header_inner #h_top .submenu .header_searchbox #search_wrap {
            /* display: none; */
            position: absolute;
            top: 60px;
            left: 0;
            height: 60px;
            /* z-index: -1;
            opacity: 0;
            width: 0; */
            transition: all 0.4s;
            /* border-radius: 5px; */
            z-index: 0; } }
        header .header_inner #h_top .submenu .header_searchbox #search_wrap form {
          display: flex;
          box-sizing: border-box;
          width: 100%;
          border: none;
          box-sizing: border-box;
          padding: 0 10px;
          border-radius: 6px 0 0 6px; }
          @media (max-width: 599px) {
            header .header_inner #h_top .submenu .header_searchbox #search_wrap form {
              /* position: absolute;
              top: 0;
              left: 0;
              z-index: 110;
              width: 60px;
              height: 60px; */ } }
          header .header_inner #h_top .submenu .header_searchbox #search_wrap form .serach_box {
            border: none;
            box-sizing: border-box;
            background: transparent;
            font-size: 16px;
            display: inline-block; }
          header .header_inner #h_top .submenu .header_searchbox #search_wrap form input {
            background: transparent;
            background: #f3f3f3;
            border: none;
            width: 200px;
            padding: 14px 10px;
            font-size: 1.2rem; }
            @media (max-width: 1024px) {
              header .header_inner #h_top .submenu .header_searchbox #search_wrap form input {
                margin-top: 62px;
                display: none;
                /*height: 0;
                width: 100%; */ } }
            header .header_inner #h_top .submenu .header_searchbox #search_wrap form input.search_box {
              border-radius: 6px 0 0 6px; }
            header .header_inner #h_top .submenu .header_searchbox #search_wrap form input.search_submit {
              border-radius: 0 6px 6px 0; }
          header .header_inner #h_top .submenu .header_searchbox #search_wrap form .search_submit {
            border: 0;
            width: 38px;
            padding: auto;
            box-sizing: border-box; }
            @media (max-width: 1024px) {
              header .header_inner #h_top .submenu .header_searchbox #search_wrap form .search_submit {
                width: 32px;
                padding: 18px 10px;
                border-radius: 0 6px 6px 0; } }
        header .header_inner #h_top .submenu .header_searchbox #search_wrap.panelactive {
          opacity: 1;
          z-index: 3;
          top: 58px;
          width: 100%;
          display: block;
          padding: 10px 0;
          height: auto;
          background: rgba(255, 255, 255, 0.9); }
          header .header_inner #h_top .submenu .header_searchbox #search_wrap.panelactive form {
            flex-wrap: nowrap; }
            header .header_inner #h_top .submenu .header_searchbox #search_wrap.panelactive form input[type=text],
            header .header_inner #h_top .submenu .header_searchbox #search_wrap.panelactive form input[type=email],
            header .header_inner #h_top .submenu .header_searchbox #search_wrap.panelactive form textarea {
              margin-top: 0;
              height: 50px;
              display: block;
              width: calc(100% - 38px);
              border-radius: 6px 0 0 6px; }
            header .header_inner #h_top .submenu .header_searchbox #search_wrap.panelactive form .search_submit {
              display: block;
              margin: auto 0 auto 0; }
        header .header_inner #h_top .submenu .header_searchbox .search_open_btn {
          display: none; }
          @media (max-width: 1024px) {
            header .header_inner #h_top .submenu .header_searchbox .search_open_btn {
              display: block;
              top: 0;
              padding: 0;
              background: url(../images/common/icon-search-sp.svg) no-repeat center 24%;
              background-size: 20px;
              width: 60px;
              height: 50px;
              position: absolute;
              right: 50px; } }
          @media (max-width: 1024px) {
            header .header_inner #h_top .submenu .header_searchbox .search_open_btn span {
              position: absolute;
              bottom: -1px;
              color: #222222;
              font-size: 10px;
              width: 60px;
              text-align: center;
              display: block;
              font-family: serif;
              text-decoration: none;
              letter-spacing: 0;
              font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", "Noto Sans JP", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif !important; } }
  header.is-fixed .header_inner {
    width: 98%;
    margin: 0 auto 0 2%;
    padding: 20px 0 0; }
    @media (max-width: 599px) {
      header.is-fixed .header_inner {
        padding: 10px 0 0; } }
    header.is-fixed .header_inner #gNav {
      position: fixed;
      z-index: 999;
      left: 0;
      top: 0;
      width: 100%;
      background: rgba(255, 255, 255, 0.98); }
  header.is-fixed h1.logo,
  header.is-fixed .logo {
    width: 140px;
    padding-top: 10px; }

.h_nav {
  width: 100%; }

nav li a {
  /* font-size: 13px; */
  letter-spacing: 0; }

nav .sub-menu,
.mean-container .mean-nav ul ul {
  /* background: $gray3; */ }

@media (max-width: 599px) {
  .mean-container .mean-nav ul li {
    border-bottom: 1px solid #f6f6f6; } }

#gNav {
  /* .menu-level-third {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
    display: none;
  }

  .menu-level-second {
    &:hover {
      .menu-level-third {
        visibility: visible;
        opacity: 1;
        z-index: 1;
        display: block;
      }
    }
  } */ }
  #gNav ul {
    position: relative;
    display: flex;
    justify-content: space-between;
    width: 98%;
    margin: 0 auto;
    /*&:nth-child(1),
      &:nth-child(2),
      &:nth-child(4) {
        flex-basis: 20%;

        @include tab {
          flex-basis: auto;
        }
      }*/ }
    @media (max-width: 599px) {
      #gNav ul {
        width: 100%;
        display: none; } }
    #gNav ul li {
      position: relative;
      width: 100%; }
      #gNav ul li:last-child {
        margin-right: 0; }
      #gNav ul li a {
        position: relative;
        display: block;
        text-align: center;
        width: 100%;
        padding: 2rem 1rem; }
        #gNav ul li a:hover span.menu_jp {
          color: #7d5b66 !important; }
      #gNav ul li .menu_en {
        display: block;
        font-size: 1.8rem;
        font-weight: 400; }
        #gNav ul li .menu_en .menu_en2 {
          font-weight: 100;
          font-size: 1.5rem; }
      #gNav ul li .menu_jp {
        display: block;
        font-size: 1.2rem;
        color: #888888; }
      #gNav ul li ul li:after {
        content: none; }
      #gNav ul li ul.sub-menu {
        display: none; }
        #gNav ul li ul.sub-menu li {
          position: relative; }
        #gNav ul li ul.sub-menu input[type="checkbox"].acd-check {
          display: none !important; }
        #gNav ul li ul.sub-menu input.acd-check {
          display: none; }
      #gNav ul li:hover ul.sub-menu a {
        color: #272727; }
    #gNav ul > li:hover {
      -webkit-transition: all .5s;
      transition: all .5s; }
      #gNav ul > li:hover a {
        color: #000000; }
        #gNav ul > li:hover a:hover {
          opacity: 1.0;
          color: #7d5b66; }
      #gNav ul > li:hover ul.sub-menu {
        top: 82px;
        visibility: visible;
        opacity: 1;
        z-index: 9999;
        display: block;
        overflow: auto;
        height: calc(100vh - 178px); }
    #gNav ul ul.acd-content {
      /* margin-top: 20px;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        white-space: normal; */ }
      @media (max-width: 1024px) {
        #gNav ul ul.acd-content a {
          /* display: flex;
            flex-direction: row;
            flex-wrap: no-wrap;
            align-items: center;
            margin-left: 0; */ } }
    #gNav ul .acd-check + label {
      box-sizing: border-box;
      cursor: pointer;
      position: absolute;
      width: auto;
      top: 0;
      right: 0;
      width: 40px;
      height: 55px; }
      @media (max-width: 599px) {
        #gNav ul .acd-check + label {
          display: none; } }
    #gNav ul .acd-check + label::before {
      position: absolute;
      top: calc(50% + 7px);
      right: calc(50% - 7px);
      display: block;
      margin-top: -12px;
      width: 14px;
      height: 14px;
      content: "";
      background: url("../images/common/menu_plus.png") center center no-repeat;
      background-size: 12px; }
    #gNav ul .acd-check:checked + label:before {
      position: absolute;
      top: calc(50% + 7px);
      right: calc(50% - 7px);
      content: "";
      background: url("../images/common/menu_minus.png") center center no-repeat;
      background-size: 12px; }
    #gNav ul ul.acd-content {
      display: block;
      height: 0;
      opacity: 0;
      padding: 0;
      transition: 0.5s;
      visibility: hidden;
      margin: 0;
      overflow: hidden; }
    #gNav ul .acd-check:checked + label + ul.acd-content {
      height: auto;
      opacity: 1;
      visibility: visible;
      transition: 0.5s;
      width: 100%; }
  #gNav .current-menu-item a,
  #gNav .current-menu-parent a {
    color: #bfd0ff; }
  #gNav .sub-menu {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
    display: block;
    position: absolute;
    top: 50px;
    left: 0%;
    /* margin-left: -80px; */
    width: 100%;
    -webkit-transition: all .2s ease;
    transition: all .2s ease; }
    #gNav .sub-menu a {
      padding: 20px 10px;
      display: block;
      border-bottom: none;
      line-height: 1.2em;
      text-align: left;
      font-size: 1.4rem; }
      #gNav .sub-menu a:hover {
        text-decoration: none; }
        #gNav .sub-menu a:hover:after {
          content: none; }
    #gNav .sub-menu li {
      display: block;
      padding: 0;
      margin: 0; }
      #gNav .sub-menu li:last-child {
        border-bottom: none; }
      #gNav .sub-menu li a {
        background: #eeeeef; }
      #gNav .sub-menu lia:hover {
        background: #fff; }
      #gNav .sub-menu li ul {
        flex-direction: column; }
        #gNav .sub-menu li ul li a {
          background: #f5f5f5;
          font-size: 1.2rem;
          padding: 16px 10px; }
  #gNav .contact_btn a:hover {
    color: #fff; }
  @media (max-width: 599px) {
    #gNav .nav {
      overflow-y: auto;
      height: 100vh; } }

@media (max-width: 599px) {
  .mean-nav .container {
    padding: 0; } }

@media (max-width: 599px) {
  nav li .fa {
    display: none; } }

.menu_sp_official_hp {
  margin: 40px auto 60px; }

.menu_sp_sns {
  display: flex;
  flex-wrap: nowrap;
  width: fit-content;
  margin: 20px auto;
  align-items: center; }
  .menu_sp_sns .inner {
    margin: 0 6px; }

.menu_sp_official_hp {
  margin: 0 auto 26px;
  width: 90%; }
  .menu_sp_official_hp a {
    display: flex;
    justify-content: center;
    width: 100%;
    max-width: 400px;
    background: #595757;
    outline: solid 2px #595757;
    border: solid 2px #fff !important;
    margin: 0 auto;
    text-align: center;
    padding: 10px 0; }
    .menu_sp_official_hp a img {
      width: 20%;
      display: inline-block;
      vertical-align: middle;
      margin: 0 10px 0 0; }
    .menu_sp_official_hp a span {
      font-family: 'Cormorant Garamond', serif;
      display: inline-block;
      width: auto;
      color: #fff;
      vertical-align: middle;
      text-align: center;
      font-weight: bold;
      font-size: 19px;
      line-height: 23px; }
      .menu_sp_official_hp a span small {
        display: block;
        letter-spacing: 0;
        font-size: 13px;
        color: #fff; }
