@charset "UTF-8";
/* initial setting */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent; }

li {
  text-decoration: none; }

html {
  font-size: 80%;
  font-family: 'FOT-筑紫オールド明朝 Pro R','TsukuOldMinPro-R',"游明朝体","YuMincho", "ヒラギノ明朝 ProN","Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "Klee","クレー", "ＭＳ Pゴシック", sans-serif; }
  @media (min-width: 768px) {
    html {
      font-size: 100%; } }

html:lang(en-US) {
  font-family: 'Vollkorn';
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

body {
  line-height: 1; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

main {
  display: block; }

nav ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after {
  content: '';
  content: none; }

address {
  font-style: normal; }

q:before, q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  outline: none;
  text-decoration: none; }

img {
  outline: none; }

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

html,
button,
input,
select,
textarea {
  box-sizing: border-box; }

*, *:before, *:after {
  box-sizing: inherit; }

/* definitions */
@-webkit-keyframes arrowbefore {
  100% {
    right: -.4em;
    opacity: 0; } }
@keyframes arrowbefore {
  100% {
    right: -.4em;
    opacity: 0; } }

@-webkit-keyframes arrowafter {
  99% {
    right: .2em;
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes arrowafter {
  99% {
    right: .2em;
    opacity: 1; }
  100% {
    opacity: 0; } }

@-webkit-keyframes arrowbefore-prev {
  100% {
    right: 0.6em;
    opacity: 0; } }

@keyframes arrowbefore-prev {
  100% {
    right: 0.6em;
    opacity: 0; } }

@-webkit-keyframes arrowafter-prev {
  99% {
    right: .2em;
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes arrowafter-prev {
  99% {
    right: .2em;
    opacity: 1; }
  100% {
    opacity: 0; } }

@-webkit-keyframes arrowbefore-next {
  100% {
    left: .6em;
    opacity: 0; } }

@keyframes arrowbefore-next {
  100% {
    left: .6em;
    opacity: 0; } }

@-webkit-keyframes arrowafter-next {
  99% {
    left: .2em;
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes arrowafter-next {
  99% {
    left: .2em;
    opacity: 1; }
  100% {
    opacity: 0; } }

/* component */
body {
  position: relative;
  background-color: #17140e;
  color: #e5e5e5;
  transition: background-color 1s; }

html,
button,
input,
select,
textarea {
  box-sizing: border-box; }

*, *:before, *:after {
  box-sizing: inherit; }

.YuGothic {
  font-family: "游ゴシック体","YuGothic"; }

.Vollkorn {
  font-family: 'Vollkorn'; }

.accent {
  color: #977d3d; }

a {
  text-decoration: none;
  color: #e5e5e5;
  -webkit-tap-highlight-color: rbga(151, 125, 61, 0.8); }

a.link {
  color: #977d3d;
  text-decoration: underline; }

a:hover,
a:active {
  color: #8b8a87; }

::-moz-selection {
  background-color: #1e1b16;
  color: #bbb6af; }

::selection {
  background-color: #1e1b16;
  color: #bbb6af; }

::-moz-selection {
  background-color: #1e1b16;
  color: #bbb6af; }

br.spbr {
  display: none; }
  @media (max-width: 767px) {
    br.spbr {
      display: block; } }

body.bg--light {
  background-color: #2e281b; }

.container {
  padding-right: 30px;
  padding-left: 30px; }
  @media (max-width: 767px) {
    .container {
      padding-right: 15px;
      padding-left: 15px; } }

.content-wrap {
  max-width: 1008px;
  margin: 0 auto; }

.header {
  z-index: 100; }

.header__logo {
  position: fixed;
  top: 50px;
  left: 56px;
  display: inline-block;
  opacity: 1;
  z-index: 100; }
  @media (max-width: 767px) {
    .header__logo {
      top: 20px;
      left: 15px; }
      .header__logo img {
        width: 50px;
        height: 26px; } }

.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
  z-index: 30;
  opacity: 1; }

.menu-trigger {
  position: fixed;
  right: 59px;
  top: 50px;
  width: 49px;
  height: 40px;
  z-index: 110; }
  .menu-trigger span {
    position: absolute;
    width: 30px;
    height: 1px;
    background-color: #fff; }
  .menu-trigger span:nth-of-type(1) {
    top: 5px;
    left: 19px;
    -webkit-animation: menu-bar01 .75s forwards;
    animation: menu-bar01 .75s forwards; }
  .menu-trigger span:nth-of-type(2) {
    top: 10px;
    left: 9px;
    transition: all .25s .25s;
    opacity: 1; }
  .menu-trigger span:nth-of-type(3) {
    top: 15px;
    left: 0;
    -webkit-animation: menu-bar02 .75s forwards;
    animation: menu-bar02 .75s forwards; }
  .menu-trigger p {
    color: #fff;
    position: absolute;
    bottom: 0;
    font-size: 14px;
    width: 100%;
    text-align: center; }
  .menu-trigger:hover span:nth-of-type(1) {
    left: 9px; }
  .menu-trigger:hover span:nth-of-type(3) {
    left: 9px; }
  @media (max-width: 767px) {
    .menu-trigger {
      top: 20px;
      right: 15px; } }

@-webkit-keyframes menu-bar01 {
  0% {
    -webkit-transform: translateY(5px) rotate(30deg); }
  50% {
    -webkit-transform: translateY(5px) rotate(0); }
  100% {
    -webkit-transform: translateY(0) rotate(0); } }

@keyframes menu-bar01 {
  0% {
    -webkit-transform: translateY(5px) rotate(30deg);
            transform: translateY(5px) rotate(30deg); }
  50% {
    -webkit-transform: translateY(5px) rotate(0);
            transform: translateY(5px) rotate(0); }
  100% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0); } }

@-webkit-keyframes menu-bar02 {
  0% {
    -webkit-transform: translateY(-5px) rotate(-30deg); }
  50% {
    -webkit-transform: translateY(-5px) rotate(0); }
  100% {
    -webkit-transform: translateY(0) rotate(0); } }

@keyframes menu-bar02 {
  0% {
    -webkit-transform: translateY(-5px) rotate(-30deg);
            transform: translateY(-5px) rotate(-30deg); }
  50% {
    -webkit-transform: translateY(-5px) rotate(0);
            transform: translateY(-5px) rotate(0); }
  100% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0); } }

.menu--visible .menu-trigger span:nth-of-type(1) {
  -webkit-animation: active-menu-bar01 .75s forwards;
  animation: active-menu-bar01 .75s forwards;
  left: 9px; }

.menu--visible .menu-trigger span:nth-of-type(2) {
  opacity: 0; }

.menu--visible .menu-trigger span:nth-of-type(3) {
  -webkit-animation: active-menu-bar03 .75s forwards;
  animation: active-menu-bar03 .75s forwards;
  left: 9px; }

.menu--visible .menu-info, .menu--visible .lang_ul, .menu--visible .menu-banner-block {
  -webkit-animation-name: fadeIn;
          animation-name: fadeIn;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-timing-function: ease;
          animation-timing-function: ease;
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s; }

@media (min-width: 1025px) {
  .menu--visible .menu-nav__ttl2 {
    -webkit-animation-name: fadeInUp;
            animation-name: fadeInUp;
    -webkit-animation-duration: 1s;
            animation-duration: 1s;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    -webkit-animation-timing-function: ease;
            animation-timing-function: ease;
    -webkit-animation-delay: 0.6s;
            animation-delay: 0.6s; }
  .menu--visible .menu-nav__list li {
    -webkit-animation-name: fadeInUp;
            animation-name: fadeInUp;
    -webkit-animation-duration: 1s;
            animation-duration: 1s;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    -webkit-animation-timing-function: ease;
            animation-timing-function: ease; }
  .menu--visible .menu-nav__list li:first-child() {
    -webkit-animation-delay: 0.6s;
            animation-delay: 0.6s; }
  .menu--visible .menu-nav__list li:nth-child(2) {
    -webkit-animation-delay: 0.65s;
            animation-delay: 0.65s; }
  .menu--visible .menu-nav__list li:nth-child(3) {
    -webkit-animation-delay: 0.7s;
            animation-delay: 0.7s; }
  .menu--visible .menu-nav__list li:nth-child(4) {
    -webkit-animation-delay: 0.75s;
            animation-delay: 0.75s; }
  .menu--visible .menu-nav__list li:nth-child(5) {
    -webkit-animation-delay: 0.8s;
            animation-delay: 0.8s; } }

@media (max-width: 1024px) {
  .menu--visible .menu-block--2 {
    -webkit-animation-name: fadeInUp;
            animation-name: fadeInUp;
    -webkit-animation-duration: 1s;
            animation-duration: 1s;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
    -webkit-animation-timing-function: ease;
            animation-timing-function: ease;
    -webkit-animation-delay: 0.6s;
            animation-delay: 0.6s; } }

@-webkit-keyframes active-menu-bar01 {
  0% {
    -webkit-transform: translateY(0) rotate(0); }
  50% {
    -webkit-transform: translateY(5px) rotate(0); }
  100% {
    -webkit-transform: translateY(5px) rotate(30deg); } }

@keyframes active-menu-bar01 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0); }
  50% {
    -webkit-transform: translateY(5px) rotate(0);
            transform: translateY(5px) rotate(0); }
  100% {
    -webkit-transform: translateY(5px) rotate(30deg);
            transform: translateY(5px) rotate(30deg); } }

@-webkit-keyframes active-menu-bar03 {
  0% {
    -webkit-transform: translateY(0) rotate(0); }
  50% {
    -webkit-transform: translateY(-5px) rotate(0); }
  100% {
    -webkit-transform: translateY(-5px) rotate(-30deg); } }

@keyframes active-menu-bar03 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0); }
  50% {
    -webkit-transform: translateY(-5px) rotate(0);
            transform: translateY(-5px) rotate(0); }
  100% {
    -webkit-transform: translateY(-5px) rotate(-30deg);
            transform: translateY(-5px) rotate(-30deg); } }

/* #menu{
    position: fixed;
    width: 240%;
    height: 120%;
    top: -10%;
    left: 100%;
    bottom: 0;
    right: 0;
    background: #17140e;
    transform: skew(60deg);
    z-index: 20;
    opacity: 0;
    transition: all 0.4s cubic-bezier(0.2, 0, 0.8, 1);
    overflow: hidden;
    pointer-events: none;
    display: none;
}  */
/* .menu--visible #menu{
    left: -60%;
    opacity: 1;
} */
ul.custom_language_switcher.lang_ul {
  list-style: none;
  position: absolute;
  right: 65px;
  top: 175px;
  height: 20px; }
  ul.custom_language_switcher.lang_ul li {
    display: inline-block;
    color: #e5e5e5;
    font-size: 16px; }
    ul.custom_language_switcher.lang_ul li a {
      color: #a5a39e;
      transition: all 0.2s; }
    ul.custom_language_switcher.lang_ul li a:hover {
      color: #e5e5e5; }
  ul.custom_language_switcher.lang_ul li.first {
    margin-right: 40px;
    position: relative; }
    ul.custom_language_switcher.lang_ul li.first:after {
      display: block;
      position: absolute;
      opacity: 1;
      padding: 0;
      content: "";
      width: 5px;
      height: 5px;
      top: 6px;
      right: -22px;
      background-color: #6e6d6a;
      -webkit-transform: rotate(-45deg) skew(15deg, 15deg);
      transform: rotate(-45deg) skew(15deg, 15deg); }
  @media (max-width: 767px) {
    ul.custom_language_switcher.lang_ul {
      right: 85px;
      top: 20px; } }

#menu-content {
  background-color: #17140e;
  width: 100%;
  position: fixed;
  z-index: 100;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: none;
  overflow: auto;
  -webkit-overflow-scrolling: touch; }
  @media (max-width: 767px) {
    #menu-content {
      background-image: none; } }

.menu--visible #menu-content {
  left: 0; }

.menu-content__inner {
  padding-top: 280px; }
  @media (max-width: 767px) {
    .menu-content__inner {
      padding-top: 0; } }

.menu-block--1 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-image: url(../images/common/menu01.png);
  background-repeat: repeat-x;
  background-position: top center; }
  @media (max-width: 767px) {
    .menu-block--1 {
      position: initial;
      background-image: none; } }

.menu-block--1__inner {
  height: 280px;
  display: table;
  width: 100%;
  max-width: 1200px;
  position: relative;
  margin: 0 auto; }

.menu__logo {
  position: relative;
  top: 50px;
  left: 56px;
  display: inline-block;
  opacity: 1; }

.menu-nav {
  max-width: 1200px;
  margin: 100px auto 60px;
  display: table;
  width: 100%;
  table-layout: fixed; }
  @media (max-width: 1024px) {
    .menu-nav {
      text-align: center;
      margin: 25px auto 70px; }
      .menu-nav div + div {
        border-top: 1px solid #696660; } }

.menu-nav__block {
  vertical-align: top;
  display: table-cell; }
  @media (max-width: 1024px) {
    .menu-nav__block {
      display: block; } }

.menu-nav__ttl2 {
  font-size: 18px;
  line-height: 3;
  margin-bottom: 10px; }
  .menu-nav__ttl2 a {
    display: block;
    transition: all 0.3s; }
  .menu-nav__ttl2 a:hover {
    color: #977d3d;
    opacity: 1; }
  @media (max-width: 1024px) {
    .menu-nav__ttl2 {
      margin-bottom: 0;
      font-size: 16px;
      line-height: 75px; }
      .menu-nav__ttl2 a:hover {
        color: inherit;
        opacity: 1; } }

@media (max-width: 1024px) {
  .menu-nav__ttl2.toggle {
    position: relative; }
    .menu-nav__ttl2.toggle:before, .menu-nav__ttl2.toggle:after {
      content: "";
      position: absolute;
      width: 15px;
      height: 1px;
      background-color: #a5a39e;
      right: 15px;
      top: 50%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      transition: all 0.3s; }
    .menu-nav__ttl2.toggle:before {
      -webkit-transform: rotate(90deg);
              transform: rotate(90deg); } }

.menu-nav__ttl2.toggle.active:before {
  -webkit-transform: rotate(360deg);
          transform: rotate(360deg); }

.menu-nav__list {
  display: block;
  font-size: 14px; }
  .menu-nav__list li:first-child {
    display: none; }
  .menu-nav__list li {
    margin-bottom: 1.2em; }
    .menu-nav__list li a {
      color: #a5a39e;
      transition: all 0.3s;
      line-height: 1.4; }
    .menu-nav__list li a:hover {
      color: #977d3d;
      opacity: 1; }
  @media (max-width: 1024px) {
    .menu-nav__list {
      display: none;
      font-size: 16px;
      margin-bottom: 1.2em; }
      .menu-nav__list li:first-child {
        display: block; }
      .menu-nav__list li {
        margin-bottom: 0; }
        .menu-nav__list li a {
          padding: 1em 0;
          display: block;
          line-height: 1; } }

.menu-info {
  line-height: 2;
  font-size: 12px;
  position: relative;
  text-align: left;
  display: table-cell;
  vertical-align: middle; }
  @media (max-width: 767px) {
    .menu-info {
      text-align: center;
      padding: 70px 0 40px;
      background: linear-gradient(to top, #2e281b 70%, rgba(46, 40, 27, 0) 100%); } }

.menu-info__block {
  display: inline-block;
  vertical-align: middle;
  margin-right: 70px;
  height: 123px;
  position: relative;
  letter-spacing: 0.1em; }
  .menu-info__block span, .menu-info__block a {
    color: #92908a; }
  @media (max-width: 767px) {
    .menu-info__block {
      margin-right: 0;
      display: block;
      margin-bottom: 30px;
      height: auto; }
      .menu-info__block .menu-logo {
        width: 80px;
        height: 61px; }
      .menu-info__block .menu-logo--en {
        width: 130px;
        height: 64px; } }

.menu-sns-block--pc {
  position: absolute;
  bottom: 0;
  left: 0; }
  .menu-sns-block--pc a {
    margin-right: 25px;
    display: inline-block;
    height: 25px; }
  @media (max-width: 767px) {
    .menu-sns-block--pc {
      display: none; } }

.menu-content--sp {
  display: none;
  position: relative; }
  @media (max-width: 767px) {
    .menu-content--sp {
      display: block;
      height: 97px;
      background-image: url(../images/common/menu01.png);
      background-repeat: repeat-x;
      background-position: top center;
      background-size: auto 97px; } }

.menu-sns-block {
  display: none;
  margin-bottom: 30px; }
  .menu-sns-block a {
    padding: 4px;
    display: inline-block;
    text-align: center; }
    .menu-sns-block a img {
      vertical-align: middle; }
  @media (max-width: 767px) {
    .menu-sns-block {
      display: block; } }

.ft-banner-block,
.menu-banner-block {
  max-width: 1200px;
  margin: 0 auto;
  padding-top: 30px;
  padding-bottom: 30px;
  border-top: 1px solid rgba(128, 127, 125, 0.2); }

ul.ft-banner-list,
ul.menu-banner-list {
  list-style: none; }
  ul.ft-banner-list li,
  ul.menu-banner-list li {
    display: inline-block;
    width: 192px;
    margin-bottom: 10px;
    margin-right: 10px; }
  @media (max-width: 767px) {
    ul.ft-banner-list li,
    ul.menu-banner-list li {
      width: 50%;
      margin: 0;
      padding: 5px; } }

/* ------
button
------ */
.btn-wrap {
  text-align: center; }

.btn.btn-skew {
  border-radius: 0;
  text-shadow: none;
  font-size: 14px;
  color: #977d3d;
  transition: all 0.3s;
  height: 56px;
  width: 100%;
  max-width: 255px;
  text-align: center;
  border: 1px solid #977d3d;
  position: relative;
  overflow: hidden;
  display: inline-table;
  vertical-align: middle;
  transition: all 0.3s cubic-bezier(0.455, 0.03, 0.515, 0.955); }
  .btn.btn-skew > span {
    position: relative;
    z-index: 2;
    display: table-cell;
    vertical-align: middle;
    transition: all 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53); }
  @media (min-width: 768px) {
    .btn.btn-skew {
      /* &:after{
            content: "";
            background: $color-accent;
            transition: all 0.3s $ease-in-quad;
            position: absolute;
            top: 50%;
            left: 50%;
            display: block;
            content: '';
            width: 0;
            height: 0;
            border-radius: 50%;
            -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
            opacity: 0;
            filter: blur(10px);
        } */ }
      .btn.btn-skew:hover {
        box-shadow: 0 0 40px 40px #977d3d inset;
        /* &:after{
                opacity: 1;
                width: 300px;
                height: 300px;
            } */ }
        .btn.btn-skew:hover > span {
          color: #000; } }
  @media (max-width: 767px) {
    .btn.btn-skew {
      font-size: 12px; } }

.btn--toppage {
  background-color: #17140e; }

.btn--works {
  background-color: #302d27; }

.btn.btn--banner {
  height: 40px;
  max-width: 100%; }

/* ------
subpage common
------ */
.page-main-image {
  padding-top: 40%;
  position: relative;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }
  @media (max-width: 767px) {
    .page-main-image {
      padding-top: 50%; } }
  @media (max-width: 413px) {
    .page-main-image {
      padding-top: 80%; } }

.page-main-image--works:before,
.page-main-image--contact:before,
.page-main-image--about:before,
.page-main-image--news:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to top, #17140e 0%, rgba(23, 20, 14, 0.95) 8%, rgba(32, 16, 19, 0) 40%); }

.page-title {
  position: absolute;
  bottom: 27%;
  text-align: center;
  width: 100%;
  font-size: 36px; }
  @media (max-width: 767px) {
    .page-title {
      font-size: 29px; } }

.sld-nav__wrap {
  margin-top: -80px; }
  @media (max-width: 1024px) {
    .sld-nav__wrap {
      margin-top: -40px; } }
  @media (max-width: 767px) {
    .sld-nav__wrap {
      margin-top: 0 !important; } }

ul.sld-nav-list {
  overflow: hidden;
  list-style: none;
  text-align: center;
  font-size: 16px;
  background: linear-gradient(to top, #201c13, rgba(32, 28, 19, 0.5));
  position: relative; }
  ul.sld-nav-list li {
    float: left;
    width: 20%;
    height: 80px;
    background-color: rgba(255, 255, 255, 0.1);
    position: relative;
    transition: background-color 0.3s; }
    ul.sld-nav-list li a {
      display: table;
      height: 100%;
      width: 100%;
      padding: 10px;
      color: #e5e5e5; }
      ul.sld-nav-list li a span {
        display: table-cell;
        vertical-align: middle; }
  ul.sld-nav-list li.current {
    background-color: rgba(255, 255, 255, 0.25); }
    ul.sld-nav-list li.current:after {
      content: "";
      border-style: solid;
      border-width: 0 29px 14px 29px;
      border-color: transparent transparent #17140e transparent;
      position: absolute;
      bottom: 0;
      left: 50%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%); }
  ul.sld-nav-list li:hover {
    background-color: rgba(255, 255, 255, 0.25); }
  @media (max-width: 1024px) {
    ul.sld-nav-list li {
      height: 60px; } }
  @media (max-width: 767px) {
    ul.sld-nav-list {
      font-size: 11px; }
      ul.sld-nav-list li {
        width: 50%;
        height: 50px;
        border-top: 1px solid #17140e; }
      ul.sld-nav-list li.current:after {
        content: none; }
      ul.sld-nav-list li:nth-child(even) {
        border-left: 1px solid #17140e; }
      ul.sld-nav-list li.flickr {
        width: 100%; } }

/* ------
footer
------ */
.footer {
  margin: 220px 0 90px;
  position: relative; }
  @media (max-width: 767px) {
    .footer {
      margin-top: 130px; } }

.ft-block {
  border-top: 1px solid rgba(128, 127, 125, 0.2); }
  @media (max-width: 767px) {
    .ft-block {
      border-top: none; } }

.ft-block--1 {
  margin-bottom: 100px; }
  @media (max-width: 767px) {
    .ft-block--1 {
      display: none; } }

@media (max-width: 767px) {
  .ft-block--3 {
    display: none; } }

.ft-nav {
  max-width: 1200px;
  margin: 30px auto;
  line-height: 3;
  font-size: 12px; }

.ft-nav__block {
  display: inline-block;
  vertical-align: top;
  padding-right: 100px;
  line-height: 1.5; }
  .ft-nav__block li {
    margin-bottom: 0.5em; }
  .ft-nav__block a {
    display: inline-block;
    padding: 0.5em 0;
    width: 100%;
    color: #a5a39e;
    transition: all 0.3s; }
  .ft-nav__block a.comingsoon {
    opacity: 0.2;
    pointer-events: none; }
  .ft-nav__block a.ft-nav__first {
    color: #e5e5e5; }
  .ft-nav__block a:hover {
    color: #977d3d;
    opacity: 1; }
  @media (max-width: 1024px) {
    .ft-nav__block {
      padding-right: 40px; } }

.ft-info {
  max-width: 1200px;
  margin: 30px auto;
  line-height: 2;
  font-size: 12px;
  position: relative; }
  @media (max-width: 767px) {
    .ft-info {
      text-align: center; } }

.ft-info__block {
  display: inline-block;
  vertical-align: middle;
  margin-right: 70px; }
  @media (max-width: 767px) {
    .ft-info__block {
      margin-right: 0;
      display: block;
      margin-bottom: 50px; } }

.ft__map {
  text-decoration: underline; }
  @media (max-width: 767px) {
    .ft__map {
      display: block; } }

.copyright {
  position: absolute;
  bottom: 0;
  right: 0; }
  @media (max-width: 767px) {
    .copyright {
      position: initial; } }

.ft-btn-block {
  position: relative;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  text-align: center; }

.return-top {
  position: absolute;
  top: 40px;
  right: 0;
  display: inline-block; }
  @media (max-width: 767px) {
    .return-top {
      position: initial;
      margin-bottom: 130px; } }

.page-loader {
  background: #17140e;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 120; }
  .page-loader .loader {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    color: #fff;
    width: 84px;
    height: 84px; }
    .page-loader .loader img {
      position: absolute;
      max-width: 100%; }
  @media (max-width: 767px) {
    .page-loader .loader {
      width: 60px;
      height: 60px; } }

.-page-loading .page-loader {
  opacity: 0.8;
  -webkit-transform: none;
          transform: none;
  transition: opacity .4s; }

.wobble {
  -webkit-animation: wobble 10s infinite;
          animation: wobble 10s infinite; }

@-webkit-keyframes wobble {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(720deg);
            transform: rotate(720deg); } }

@keyframes wobble {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(720deg);
            transform: rotate(720deg); } }

#meinvisual {
  background-color: #000; }

canvas {
  position: absolute;
  width: 100%; }

html.firefox #canvas1,
html.firefox #canvas2,
html.IE #canvas1,
html.IE #canvas2,
html.edge #canvas1,
html.edge #canvas2,
html.android #canvas1,
html.android #canvas2 {
  display: none; }

html.IE #section-works,
html.IE #section-about,
html.edge #section-works,
html.edge #section-about {
  background-repeat: no-repeat; }

#mainvisual-wrap {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  display: table; }
  @media (max-width: 767px) {
    #mainvisual-wrap {
      margin-bottom: 100px; } }

#top-bg {
  height: 100vh;
  width: 100%;
  position: absolute;
  background-position: top center;
  z-index: -1; }

#main-visual {
  position: absolute;
  height: 100vh;
  width: 100%; }

#spacer {
  position: relative;
  height: 2000px;
  width: 100%;
  z-index: -1; }
  @media (max-width: 767px) {
    #spacer {
      height: 1000px; } }

#main-visual-content {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  width: 100%;
  position: relative; }

.main-visual__text--1 {
  font-size: 20px;
  color: #fff;
  margin: 1.5em 0 1em; }
  @media (max-width: 767px) {
    .main-visual__text--1 {
      font-size: 18px; } }

.main-visual__text--2 {
  color: #a5a39e; }

.main-visual-scroll {
  position: absolute;
  bottom: 40px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: inline-block; }
  @media (max-width: 767px) {
    .main-visual-scroll {
      bottom: 20px; } }

#page-loader__logo {
  opacity: 0; }

.loading-progressbar {
  position: absolute;
  top: 50%;
  width: 100%;
  -webkit-transform: rotate(-30deg);
          transform: rotate(-30deg); }
  .loading-progressbar .progressbar {
    content: "";
    position: absolute;
    display: block;
    width: 0;
    height: 1px;
    background: #2f2c27;
    top: 0;
    transition: width 0.5s linear 0s; }
  .loading-progressbar .progressbar--1 {
    left: -50%; }
  .loading-progressbar .progressbar--2 {
    right: -50%; }
  .loading-progressbar .progressbar--3 {
    opacity: 0;
    left: 50%;
    width: 200%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }
  .loading-progressbar .progressbar--3.load {
    -webkit-animation: progress 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
            animation: progress 0.8s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .loading-progressbar .progressbar.hide {
    opacity: 0; }

@-webkit-keyframes progress {
  50% {
    width: 200%;
    opacity: 1; }
  100% {
    width: 0;
    opacity: 1; } }

@keyframes progress {
  50% {
    width: 200%;
    opacity: 1; }
  100% {
    width: 0;
    opacity: 1; } }

.loading-txt,
nav.btns button,
nav.link-list {
  display: none; }

@media (max-width: 767px) {
  .main-visual__logo {
    width: 167px;
    height: 269px; } }

@media (max-width: 767px) {
  .main-visual__logo--en {
    width: 160px;
    height: 182px; } }

#section-catchcopy {
  position: relative; }

#section-catchcopy-container {
  width: 100%;
  max-width: 1008px;
  margin: 0 auto; }

#catchcopy-block {
  display: inline-block;
  width: 56%;
  vertical-align: top;
  margin-left: -30px;
  position: relative; }
  #catchcopy-block img {
    max-width: 100%; }
  #catchcopy-block .ilst_hikari {
    position: absolute;
    width: 15%;
    top: 25%;
    left: 47%; }
  #catchcopy-block .ilst_kage {
    position: absolute;
    width: 15%;
    top: 36%;
    left: 33%; }
  #catchcopy-block .ilst_sonoaida {
    position: absolute;
    width: 10%;
    top: 52.5%;
    left: 42%; }
  #catchcopy-block .ilst_light {
    position: absolute;
    width: 37%;
    top: 30%;
    left: 13%; }
  #catchcopy-block .ilst_border {
    position: absolute;
    width: 33%;
    top: 45%;
    left: 25%; }
  #catchcopy-block .ilst_between {
    position: absolute;
    width: 36%;
    top: 50%;
    left: 30%; }
  #catchcopy-block .ilst_shadow {
    position: absolute;
    width: 51%;
    top: 60%;
    left: 30%; }
  @media (max-width: 767px) {
    #catchcopy-block {
      display: block;
      width: 100%;
      text-align: center;
      margin-left: 0; } }

.catchcopy-text {
  width: 43%;
  line-height: 2.5;
  display: inline-block;
  padding-left: 4%;
  padding-top: 30%;
  color: #e5e5e5;
  letter-spacing: 0.02em; }
  @media (max-width: 767px) {
    .catchcopy-text {
      margin: 0 auto;
      display: block;
      width: 100%;
      max-width: 360px;
      padding: 15px;
      font-size: 13px;
      line-height: 1.7;
      letter-spacing: 0.05em; } }

.section-ttl--top {
  width: 100%;
  text-align: center;
  font-size: 30px; }
  @media (max-width: 767px) {
    .section-ttl--top {
      margin-bottom: 50px; } }

.bg_block {
  background-repeat: no-repeat;
  padding-top: 30%;
  background-size: cover;
  padding-top: 44%;
  margin-bottom: -10%;
  margin-top: -12%;
  background-position: center; }
  @media (max-width: 767px) {
    .bg_block {
      padding-top: 70%;
      margin-bottom: 0;
      margin-top: 0; } }

.bg_block--1 {
  background-image: url(../images/top/bg_top_01.png); }

.bg_block--2 {
  background-image: url(../images/top/bg_top_02.png); }

.bg_block--3 {
  background-image: url(../images/top/bg_top_03.png);
  padding-top: 52%; }

#section-works {
  position: relative;
  overflow: hidden;
  height: 3000px;
  background-image: url(../images/top/bg_01.png);
  background-position: top center;
  background-size: 1914px auto;
  background-repeat: repeat-x; }
  #section-works .section-ttl--top {
    position: absolute;
    top: 140px; }
  @media (max-width: 767px) {
    #section-works {
      background-image: none;
      height: auto; }
      #section-works .section-ttl--top {
        position: relative;
        top: inherit; } }

.section-works-container {
  margin-top: 236px; }
  @media (max-width: 767px) {
    .section-works-container {
      margin-top: 0; } }

.section-works-wrap {
  max-width: 1095px;
  margin: 0 auto 74px;
  position: relative; }

.section-works-inner {
  width: 1093px;
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%); }
  @media (max-width: 767px) {
    .section-works-inner {
      width: 750px; } }

.section-works-image-block--1,
.section-works-image-block--3 {
  position: relative;
  padding-top: 557px; }
  .section-works-image-block--1 .top-image--1, .section-works-image-block--1 .top-image--2, .section-works-image-block--1 .top-image--3,
  .section-works-image-block--3 .top-image--1,
  .section-works-image-block--3 .top-image--2,
  .section-works-image-block--3 .top-image--3 {
    position: absolute; }
    .section-works-image-block--1 .top-image--1 img, .section-works-image-block--1 .top-image--2 img, .section-works-image-block--1 .top-image--3 img,
    .section-works-image-block--3 .top-image--1 img,
    .section-works-image-block--3 .top-image--2 img,
    .section-works-image-block--3 .top-image--3 img {
      width: 100%;
      vertical-align: middle; }
  .section-works-image-block--1 .top-image--1,
  .section-works-image-block--3 .top-image--1 {
    right: 0;
    top: 0;
    width: 75%; }
  .section-works-image-block--1 .top-image--2,
  .section-works-image-block--3 .top-image--2 {
    left: 0;
    top: 0;
    -webkit-transform: translateY(75%);
            transform: translateY(75%);
    width: 50%; }
  .section-works-image-block--1 .top-image--3,
  .section-works-image-block--3 .top-image--3 {
    left: 37.5%;
    top: 0;
    -webkit-transform: translateY(250%);
            transform: translateY(250%);
    width: 25.07%; }
  @media (max-width: 767px) {
    .section-works-image-block--1,
    .section-works-image-block--3 {
      padding-top: 435px; }
      .section-works-image-block--1 .top-image--2,
      .section-works-image-block--3 .top-image--2 {
        left: 12.5%;
        -webkit-transform: translateY(100%);
                transform: translateY(100%); }
      .section-works-image-block--1 .top-image--3,
      .section-works-image-block--3 .top-image--3 {
        left: 50%;
        -webkit-transform: translateY(300%);
                transform: translateY(300%); } }

.section-works-image-block--2 {
  position: relative;
  padding-top: 557px; }
  .section-works-image-block--2 .top-image--1, .section-works-image-block--2 .top-image--2, .section-works-image-block--2 .top-image--3 {
    position: absolute; }
    .section-works-image-block--2 .top-image--1 img, .section-works-image-block--2 .top-image--2 img, .section-works-image-block--2 .top-image--3 img {
      width: 100%;
      vertical-align: middle; }
  .section-works-image-block--2 .top-image--1 {
    right: left;
    top: 0;
    width: 75%; }
  .section-works-image-block--2 .top-image--2 {
    left: 50%;
    top: 0;
    -webkit-transform: translateY(75%);
            transform: translateY(75%);
    width: 50%; }
  .section-works-image-block--2 .top-image--3 {
    left: 37.5%;
    top: 0;
    -webkit-transform: translateY(250%);
            transform: translateY(250%);
    width: 25.07%; }
  @media (max-width: 767px) {
    .section-works-image-block--2 {
      padding-top: 435px; }
      .section-works-image-block--2 .top-image--2 {
        left: 37.5%;
        -webkit-transform: translateY(100%);
                transform: translateY(100%); }
      .section-works-image-block--2 .top-image--3 {
        left: 25%;
        -webkit-transform: translateY(300%);
                transform: translateY(300%); } }

.section-works-text-block {
  width: 320px;
  padding: 50px 30px;
  position: absolute;
  top: 30px;
  z-index: 11;
  display: block; }
  .section-works-text-block .read-more {
    -webkit-animation-delay: 0.6s;
            animation-delay: 0.6s; }
  @media (min-width: 768px) {
    .section-works-text-block:hover {
      color: #977d3d; } }
  @media (max-width: 767px) {
    .section-works-text-block {
      width: auto;
      padding: 25px 15px;
      position: initial;
      margin: 0 30px;
      top: 0; } }

.animation-dropDown,
.section-about-text-block {
  overflow: hidden; }
  .animation-dropDown:before,
  .section-about-text-block:before {
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    background-color: #1e1b16;
    transition: -webkit-transform .6s ease;
    transition: transform .6s ease;
    transition: transform .6s ease, -webkit-transform .6s ease;
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%); }
  .animation-dropDown:hover:before,
  .section-about-text-block:hover:before {
    background-color: #25221c; }

.animation-dropDown.dropDown:before,
.section-about-wrap.fadeIn .dropDown:before {
  -webkit-transform: translateY(0);
          transform: translateY(0); }

.section-works-text-block--1,
.section-works-text-block--3 {
  left: 3%; }
  @media (max-width: 767px) {
    .section-works-text-block--1,
    .section-works-text-block--3 {
      left: 0;
      margin-bottom: -70px;
      z-index: 10;
      position: relative; } }

.section-works-text-block--2 {
  right: 3%; }
  @media (max-width: 767px) {
    .section-works-text-block--2 {
      right: 0;
      margin-bottom: -70px;
      z-index: 10;
      position: relative; } }

.section-works-ttl,
.section-about-ttl {
  font-size: 20px;
  margin-bottom: 1em;
  position: relative;
  z-index: 2;
  -webkit-animation-delay: 0.6s;
          animation-delay: 0.6s; }
  @media (max-width: 767px) {
    .section-works-ttl,
    .section-about-ttl {
      font-size: 16px; } }

.section-works-text {
  font-size: 14px;
  color: #e5e5e5;
  line-height: 2.1;
  margin-bottom: 1em;
  color: #a5a39e;
  position: relative;
  z-index: 2;
  -webkit-animation-delay: 0.6s;
          animation-delay: 0.6s; }
  @media (max-width: 767px) {
    .section-works-text {
      font-size: 12px; } }

.read-more {
  font-size: 12px;
  color: #977d3d; }

.read-more {
  position: relative;
  display: inline-block;
  padding-right: 4em;
  text-decoration: none; }

.read-more::before,
.read-more::after {
  position: absolute;
  top: 50%;
  right: .2em;
  content: '→';
  margin-top: -7px;
  font-size: 16px;
  line-height: 14px;
  -webkit-transform: scale(2, 1);
          transform: scale(2, 1); }

.read-more::after {
  opacity: 0;
  right: 1em; }

a:hover .read-more::before {
  -webkit-animation: arrowbefore .5s;
          animation: arrowbefore .5s; }

a:hover .read-more::after {
  -webkit-animation: arrowafter .5s;
          animation: arrowafter .5s; }

#section-about {
  position: relative;
  overflow: hidden;
  height: 1263px;
  background-image: url(../images/top/bg_02.png);
  background-position: top center;
  background-size: 1914px auto;
  background-repeat: repeat-x; }
  #section-about .section-ttl--top {
    position: absolute;
    top: 60px; }
  @media (max-width: 767px) {
    #section-about {
      background-image: none;
      height: auto; }
      #section-about .section-ttl--top {
        position: relative;
        top: inherit; } }

.section-about-wrap {
  max-width: 1095px;
  margin: 0 auto;
  position: relative;
  top: 158px; }
  .section-about-wrap .read-more {
    -webkit-animation-delay: 0.6s;
            animation-delay: 0.6s; }
  @media (max-width: 767px) {
    .section-about-wrap {
      top: 0; } }

.section-about-inner {
  width: 1093px;
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%); }
  @media (max-width: 767px) {
    .section-about-inner {
      width: 750px; } }

.section-about-image-block--odd {
  position: relative;
  padding-top: 29%;
  margin-bottom: -14.5%; }
  .section-about-image-block--odd .top-image--about {
    position: absolute;
    left: 12.5%;
    top: 0;
    width: 50%; }
    .section-about-image-block--odd .top-image--about img {
      width: 100%;
      vertical-align: middle; }
  @media (max-width: 767px) {
    .section-about-image-block--odd {
      margin-bottom: 40px; } }

.section-about-image-block--even {
  position: relative;
  padding-top: 29%;
  margin-bottom: -14.5%; }
  .section-about-image-block--even .top-image--about {
    position: absolute;
    left: 37.5%;
    top: 0;
    width: 50%; }
    .section-about-image-block--even .top-image--about img {
      width: 100%;
      vertical-align: middle; }
  @media (max-width: 767px) {
    .section-about-image-block--even {
      margin-bottom: 40px; } }

.section-about-wrap:last-child .section-about-image-block--odd,
.section-about-wrap:last-child .section-about-image-block--even {
  margin-bottom: 0; }

.section-about-text-block {
  width: 270px;
  padding: 25px;
  color: #fff;
  position: absolute;
  bottom: 0;
  z-index: 11;
  display: block;
  -webkit-animation-delay: 0.6s;
          animation-delay: 0.6s; }
  @media (min-width: 768px) {
    .section-about-text-block:hover {
      background-color: #25221c;
      color: #977d3d; } }
  @media (max-width: 767px) {
    .section-about-text-block {
      width: 216px;
      padding: 20px; } }

.section-about-text-block--odd {
  left: 3%; }
  @media (max-width: 767px) {
    .section-about-text-block--odd {
      left: 50%;
      margin-left: -54px; } }

.section-about-text-block--even {
  right: 3%; }
  @media (max-width: 767px) {
    .section-about-text-block--even {
      left: 50%;
      margin-left: -162px; } }

#section-news .section-ttl--top {
  margin-bottom: 70px; }

#section-video {
  padding-top: 200px;
  padding-bottom: 200px; }
  @media (max-width: 767px) {
    #section-video {
      padding-top: 100px; } }

.video-image {
  width: 100%;
  max-width: 1008px;
  margin: 0 auto;
  display: block; }

.video-wrap {
  width: 100%;
  max-width: 1008px;
  margin: 0 auto;
  position: relative; }
  .video-wrap video {
    max-width: 100%;
    display: block; }

.page-main-image--works {
  background-image: url(../images/img_works_all.jpg); }

.page-main-image--works.personal {
  background-image: url(../images/img_works_personal.jpg); }

.page-main-image--works.business {
  background-image: url(../images/img_works_business.jpg); }

.page-main-image--works.original {
  background-image: url(../images/img_works_original.jpg); }

.page--original .controlWrap {
  display: none; }

ul.works-list {
  overflow: hidden;
  list-style: none;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin: 50px 0; }
  ul.works-list li {
    float: left;
    width: 33.333%; }
    ul.works-list li img {
      width: 100%;
      height: auto;
      vertical-align: middle; }
  ul.works-list .works-list__image {
    position: relative;
    overflow: hidden;
    /* &:after{
            content: "";
            transition: all 0.3s;
            background-color: rgba(37, 34, 28, 0.5);
            width: 100%;
            height: 100%;
            position: absolute;
            top: 0;
            left: 0;
            opacity: 0;
            transition: .2s;
            z-index: 1;
        }  */ }
    ul.works-list .works-list__image:before {
      content: "";
      transition: all 0.3s;
      background-color: rgba(151, 125, 61, 0.45);
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      opacity: 0;
      transition: .2s;
      z-index: 1; }
    ul.works-list .works-list__image img {
      transition: all 0.3s; }
  ul.works-list a {
    display: block;
    height: 100%;
    transition: all 0.3s;
    background-color: #1e1b16; }
    ul.works-list a:hover {
      background-color: #25221c; }
      ul.works-list a:hover .works-list__image:before, ul.works-list a:hover .works-list__image:after {
        opacity: 1; }
      ul.works-list a:hover .works-list__image img {
        -webkit-transform: scale(1.05);
                transform: scale(1.05);
        -webkit-filter: grayscale(100%) contrast(150%);
                filter: grayscale(100%) contrast(150%); }
      ul.works-list a:hover .works-list__ttl {
        color: #977d3d; }
  @media (max-width: 767px) {
    ul.works-list li {
      width: 50%; } }

.works-list__text-box {
  padding: 20px 30px 50px; }
  @media (max-width: 767px) {
    .works-list__text-box {
      padding: 10px 15px 25px; } }

.works-list__ttl {
  margin-bottom: 0.6em;
  line-height: 1.3;
  transition: all 0.3s; }

.works-list__date {
  color: #6b6a68;
  font-size: 13px;
  margin-bottom: 1em; }
  @media (max-width: 413px) {
    .works-list__date {
      font-size: 10px; } }

.works-list__house {
  font-size: 13px;
  margin-bottom: 2em; }
  @media (max-width: 767px) {
    .works-list__house {
      display: none; } }

.works-list__block--2 {
  font-size: 13px;
  margin-top: 1em; }
  @media (max-width: 413px) {
    .works-list__block--2 {
      font-size: 10px; } }

.works-list__tag {
  margin-right: 1em;
  margin-bottom: 0.4em;
  display: inline-block; }

.controlWrap {
  max-width: 1200px;
  margin: 50px auto; }

#btn-control {
  text-align: center;
  background-color: #696660;
  padding: 1.7em;
  font-size: 16px;
  position: relative;
  cursor: pointer; }
  #btn-control:before, #btn-control:after {
    content: "";
    position: absolute;
    width: 15px;
    height: 1px;
    background-color: #fff;
    right: 15px;
    top: 50%;
    transition: translateY(-50%);
    transition: all 0.3s; }
  #btn-control:before {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg); }
  #btn-control.active {
    background-color: #d2d2d0;
    color: #000; }
    #btn-control.active:before, #btn-control.active:after {
      background-color: #000; }
    #btn-control.active:before {
      -webkit-transform: rotate(360deg);
              transform: rotate(360deg); }
  @media (max-width: 767px) {
    #btn-control {
      font-size: 14px;
      padding: 1em; }
      #btn-control:before, #btn-control:after {
        width: 12px; } }

#control {
  background-color: #302d27;
  display: none;
  padding: 80px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }
  @media (max-width: 767px) {
    #control {
      padding: 35px 4%; } }

#control-inner {
  overflow: hidden; }

#control-nav .control-menu-block {
  margin-bottom: 50px; }

#control-nav .control-menu-ttl {
  margin-bottom: 1em;
  position: relative; }
  #control-nav .control-menu-ttl span {
    display: inline-block;
    background-color: #312e28;
    padding-right: 1em;
    position: relative;
    z-index: 2; }
  #control-nav .control-menu-ttl:after {
    content: "";
    width: 100%;
    display: block;
    border-bottom: 1px solid rgba(105, 102, 96, 0.5);
    position: absolute;
    top: 50%; }

#control-nav .control-menu--product {
  font-size: 14px; }

#control-nav .control-menu--pattern {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  font-size: 14px; }

#control-nav a.pattern.seach-item {
  width: 100px; }

#control-nav .seach-item {
  padding: 10px 10px;
  display: inline-block;
  margin-right: 4px;
  margin-bottom: 10px; }
  #control-nav .seach-item span {
    position: relative;
    height: 1em;
    padding-left: 20px; }
    #control-nav .seach-item span:before {
      content: "";
      display: block;
      position: absolute;
      top: 50%;
      left: 0;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      width: 12px;
      height: 12px;
      border: 1px solid #434343; }

#control-nav .seach-item.check span:before {
  border-color: #977d3d; }

#control-nav .seach-item.check span:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 12px;
  height: 1;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  border-bottom: 1px solid #977d3d; }

@media (max-width: 1024px) {
  #control-nav #sampleimg {
    display: none; }
  #control-nav .control-menu--pattern {
    width: 100%;
    float: none; } }

@media (max-width: 767px) {
  #control-nav .control-menu-block {
    margin-bottom: 20px; }
  #control-nav .control-menu--product {
    font-size: 12px; }
  #control-nav .control-menu--pattern {
    display: block;
    height: auto;
    font-size: 12px; }
  #control-nav a.pattern.seach-item {
    width: auto; } }

#control-nav.control-nav--en a.pattern.seach-item {
  width: auto; }

.checked-item-wrap {
  overflow: hidden;
  padding: 20px 0; }

.checked-item {
  background-color: #d2d2d0;
  border-radius: 4px;
  color: #000;
  font-size: 14px;
  line-height: 2em;
  display: inline-block;
  margin-bottom: 4px;
  margin-right: 4px;
  padding: 0 30px 0 10px;
  position: relative; }
  .checked-item span.close {
    position: absolute;
    right: 10px;
    top: 0;
    width: 20px;
    height: 2em;
    background-image: url(../images/common/icon_close.png);
    background-size: 14px 14px;
    background-position: center;
    background-repeat: no-repeat;
    cursor: pointer; }

.post__date--works {
  margin-bottom: 1em; }

.post-works .post-body {
  margin-top: 160px; }
  .post-works .post-body p {
    margin-left: 6%;
    margin-right: 6%; }

.post-works .post-data-ttl {
  color: #a5a39e; }

.post-works .post-data {
  background-color: #17140e;
  padding: 30px 40px;
  font-size: 14px;
  margin-bottom: 70px; }

.post-works .post-data-list {
  list-style: none; }
  .post-works .post-data-list li {
    display: table;
    padding: 4px 0; }

.post-works .post-data-list__menu {
  width: 150px;
  display: table-cell;
  position: relative;
  vertical-align: top;
  color: #a5a39e; }
  .post-works .post-data-list__menu span {
    background-color: #17140e;
    position: relative;
    z-index: 2;
    padding-right: 1em; }
  .post-works .post-data-list__menu:after {
    content: "";
    width: 90%;
    height: 1px;
    background-color: #a5a39e;
    position: absolute;
    left: 0;
    top: 14px; }

.post-works p.post-data-notice {
  color: #a5a39e;
  font-size: 12px;
  display: none;
  margin: 0; }

.post-works .post-data-wrap {
  position: relative;
  height: 100%;
  max-width: 100%;
  margin-bottom: 70px; }

.post-works table.post-data-table {
  width: 100%;
  table-layout: fixed;
  background-color: #17140e;
  min-width: 480px;
  color: #fff; }
  .post-works table.post-data-table th, .post-works table.post-data-table td {
    text-align: left;
    border-bottom: 1px solid #313131; }
  .post-works table.post-data-table th {
    font-size: 14px;
    background-color: #292621;
    line-height: 1.6;
    padding: 9px 18px;
    color: #e5e5e5;
    font-weight: normal; }
  .post-works table.post-data-table td {
    font-size: 12px;
    line-height: 1.6;
    padding: 11px 18px;
    color: #a5a39e; }

.post-works .use-editor {
  margin-bottom: 150px; }

.post-works .post-header__wrap {
  min-height: 500px;
  height: 100vh;
  width: 100%;
  position: relative;
  text-align: center; }
  .post-works .post-header__wrap #scroll_down {
    position: absolute;
    left: 50%;
    bottom: 30px;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }
    .post-works .post-header__wrap #scroll_down img {
      vertical-align: middle; }

.post-works .post-header {
  position: absolute;
  bottom: 30%;
  padding-bottom: 100px;
  width: 100%; }

.post-works .post__ttl {
  font-size: 36px;
  line-height: 1.5; }

.post-works .post__mainvisual {
  padding-top: 56.25%;
  max-width: 100%;
  position: relative;
  overflow: hidden;
  width: 100%;
  margin-top: 80px; }

.post-works .post__mainvisual__inner {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%; }
  .post-works .post__mainvisual__inner img {
    width: 100%;
    height: auto; }

@media (max-width: 767px) {
  .post-works .post-body {
    margin-top: 80px; }
  .post-works .use-editor {
    margin-bottom: 80px; }
  .post-works .post-header__wrap {
    display: table; }
  .post-works .post-header {
    display: table-cell;
    position: initial;
    top: initial;
    margin-bottom: 1em;
    margin-left: 0;
    margin-right: 0;
    font-size: 12px;
    vertical-align: middle; }
  .post-works .post__ttl {
    font-size: 25px; }
  .post-works .post-data {
    padding: 10px 15px;
    font-size: 12px;
    margin-bottom: 30px; }
  .post-works .post-data-list li {
    padding: 4px 0; }
  .post-works .post-data-list__menu {
    width: 100px; }
  .post-works p.post-data-notice {
    display: block; }
  .post-works .post-data-wrap {
    margin-bottom: 30px; } }

@media (max-width: 479px) {
  .post-works .post-data-wrap {
    overflow: scroll; }
  .post-works table.post-data-table {
    width: 100%;
    table-layout: fixed; }
    .post-works table.post-data-table th {
      font-size: 12px;
      padding: 10px; }
    .post-works table.post-data-table td {
      font-size: 10px;
      padding: 10px; } }

#post-images--works {
  margin-bottom: 100px; }

.post-images__list--works li {
  list-style: none;
  position: relative; }
  .post-images__list--works li:before {
    content: "";
    transition: all 0.3s;
    pointer-events: none;
    display: block; }
  .post-images__list--works li:after {
    content: "";
    opacity: 0;
    transition: opacity 0.3s;
    pointer-events: none; }

.post-images__list--works li:hover,
.post-images__list--works li.hover {
  cursor: pointer; }
  .post-images__list--works li:hover:before,
  .post-images__list--works li.hover:before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5); }
  .post-images__list--works li:hover:after,
  .post-images__list--works li.hover:after {
    position: absolute;
    width: 40px;
    height: 40px;
    background-image: url(../images/icon_glass.png);
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    opacity: 1; }

.post-images__list--works img {
  max-width: 100%;
  height: auto;
  vertical-align: middle; }

.post-images__list--works--a li:nth-child(6n+1) {
  left: 14%;
  width: 63%;
  margin-bottom: 8%; }

.post-images__list--works--a li:nth-child(6n+2) {
  left: 54%;
  width: 46%;
  margin-bottom: -6%; }

.post-images__list--works--a li:nth-child(6n+3) {
  left: 0;
  width: 48%;
  margin-bottom: 8%; }

.post-images__list--works--a li:nth-child(6n+4) {
  left: 40%;
  width: 60%;
  margin-bottom: 8%; }

.post-images__list--works--a li:nth-child(6n+5) {
  left: 0;
  width: 48%;
  margin-bottom: -6%; }

.post-images__list--works--a li:nth-child(6n+6) {
  left: 54%;
  width: 46%;
  margin-bottom: 8%; }

@media (max-width: 767px) {
  .post-images__list--works--a li:nth-child(6n+1) {
    left: 0;
    width: 100%;
    margin-bottom: 19%; }
  .post-images__list--works--a li:nth-child(6n+2) {
    left: 0;
    width: 63%;
    margin-bottom: 6%; }
  .post-images__list--works--a li:nth-child(6n+3) {
    left: 32%;
    width: 68%;
    margin-bottom: 19%; }
  .post-images__list--works--a li:nth-child(6n+4) {
    left: 0;
    width: 84%;
    margin-bottom: 19%; }
  .post-images__list--works--a li:nth-child(6n+5) {
    left: 32%;
    width: 68%;
    margin-bottom: 6%; }
  .post-images__list--works--a li:nth-child(6n+6) {
    left: 0;
    width: 64%;
    margin-bottom: 19%; } }

.post-images__list--works--b li:nth-child(6n+1) {
  left: 23%;
  width: 63%;
  margin-bottom: 8%; }

.post-images__list--works--b li:nth-child(6n+2) {
  left: 0;
  width: 46%;
  margin-bottom: -6%; }

.post-images__list--works--b li:nth-child(6n+3) {
  left: 54%;
  width: 48%;
  margin-bottom: 8%; }

.post-images__list--works--b li:nth-child(6n+4) {
  left: 0;
  width: 60%;
  margin-bottom: 8%; }

.post-images__list--works--b li:nth-child(6n+5) {
  left: 54%;
  width: 48%;
  margin-bottom: -6%; }

.post-images__list--works--b li:nth-child(6n+6) {
  left: 0;
  width: 46%;
  margin-bottom: 8%; }

@media (max-width: 767px) {
  .post-images__list--works--b li:nth-child(6n+1) {
    left: 0;
    width: 100%;
    margin-bottom: 19%; }
  .post-images__list--works--b li:nth-child(6n+2) {
    left: 37%;
    width: 63%;
    margin-bottom: 6%; }
  .post-images__list--works--b li:nth-child(6n+3) {
    left: 0;
    width: 68%;
    margin-bottom: 19%; }
  .post-images__list--works--b li:nth-child(6n+4) {
    left: 16%;
    width: 84%;
    margin-bottom: 19%; }
  .post-images__list--works--b li:nth-child(6n+5) {
    left: 0;
    width: 69%;
    margin-bottom: 6%; }
  .post-images__list--works--b li:nth-child(6n+6) {
    left: 36%;
    width: 64%;
    margin-bottom: 19%; } }

.post__house {
  margin-bottom: 1em; }

.post__tag__item {
  text-decoration: underline;
  padding: 0 5px;
  transition: all 0.3s; }

.post-footer__wrap--works {
  min-height: 500px;
  height: 100vh;
  width: 100%;
  position: relative;
  text-align: center; }
  .post-footer__wrap--works .post-footer--works {
    vertical-align: middle;
    position: absolute;
    bottom: 30%;
    padding-bottom: 100px;
    width: 100%; }
  .post-footer__wrap--works .post-footer--works__ttl {
    height: 110px; }
  .post-footer__wrap--works .button {
    color: #fff;
    display: block; }
  .post-footer__wrap--works .btn_prev {
    position: absolute;
    bottom: 30px;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }
    .post-footer__wrap--works .btn_prev img {
      vertical-align: middle; }
  .post-footer__wrap--works .btn_retrn {
    position: absolute;
    bottom: 30px;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }
  .post-footer__wrap--works .btn-wrap {
    margin-top: 40px;
    position: absolute;
    border-bottom: 0;
    left: 0;
    line-height: 1;
    width: 100%; }
  @media (max-width: 767px) {
    .post-footer__wrap--works {
      font-size: 12px;
      display: table; }
      .post-footer__wrap--works .post-footer--works {
        position: initial;
        display: table-cell;
        vertical-align: middle; }
      .post-footer__wrap--works .post-footer--works__ttl {
        height: 80px; } }

.about-nav__wrap {
  margin-top: -80px; }
  @media (max-width: 767px) {
    .about-nav__wrap {
      margin-top: 0;
      margin-bottom: 50px; } }

ul.about-nav-list {
  overflow: hidden;
  list-style: none;
  text-align: center;
  font-size: 14px;
  position: relative; }
  ul.about-nav-list li {
    display: inline-block;
    width: 18%;
    width: calc(20% - 12px);
    max-width: 190px;
    height: 70px;
    margin: 6px;
    text-align: center; }
    ul.about-nav-list li a.btn.btn-skew {
      height: 100%;
      color: #e5e5e5;
      max-width: 100%; }
  ul.about-nav-list li.current a.btn.btn-skew {
    background-color: #977d3d;
    color: #000; }
  @media (max-width: 767px) {
    ul.about-nav-list {
      text-align: inherit;
      background-color: #241f13;
      font-size: 12px; }
      ul.about-nav-list li {
        width: 49%;
        width: calc(50% - 2px);
        max-width: 50%;
        margin: 1px;
        height: 50px;
        background-color: #17140e; } }

#section-about-message .content-wrap {
  position: relative;
  padding: 140px 4% 140px 8%;
  overflow: hidden;
  background-image: url(../images/about/ilst_about.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position-y: 450px; }

@media (max-width: 767px) {
  #section-about-message .content-wrap {
    display: table;
    margin: 0 auto;
    padding: 100px 15px 100px 15px;
    background-position-y: 230px; } }

.about-message-copy {
  position: absolute;
  left: 25%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%); }
  @media (max-width: 767px) {
    .about-message-copy {
      position: initial;
      -webkit-transform: none;
              transform: none;
      text-align: center;
      margin-bottom: 100px; }
      .about-message-copy .about-message-copy__img {
        width: 42px;
        height: 234px; } }

.about-message-text {
  line-height: 2.5;
  color: #e5e5e5; }
  @media (max-width: 767px) {
    .about-message-text {
      line-height: 1.7; } }

.about-message-text--1 {
  position: relative;
  margin-bottom: 2em;
  overflow: hidden; }
  .about-message-text--1 p {
    float: right; }
  @media (max-width: 767px) {
    .about-message-text--1 p {
      float: none; } }

.about-message-text--en p {
  width: 50%; }

@media (max-width: 767px) {
  .about-message-text--en p {
    width: auto; } }

.about-message-copy__img--en {
  margin-top: 50%; }
  @media (max-width: 767px) {
    .about-message-copy__img--en {
      margin-top: 0;
      width: 203px; } }

#section-about-info {
  margin: 200px 0; }
  @media (max-width: 767px) {
    #section-about-info {
      margin: 100px 0 150px; } }

table.table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  font-size: 14px; }
  table.table tr:first-child {
    border-top: 1px solid #2c2924; }
  table.table tr {
    border-bottom: 1px solid #2c2924; }
  table.table th {
    width: 20%; }
    table.table th span {
      width: 4em;
      display: inline-block;
      text-align: left; }
  table.table td {
    padding: 1em;
    text-align: left;
    line-height: 2.1;
    color: #a5a39e; }
  @media (max-width: 767px) {
    table.table {
      font-size: 12px; }
      table.table td.sp-block {
        line-height: 1; }
        table.table td.sp-block span {
          display: block; } }

.main--en table.table th span {
  width: 10em; }

#section-about-slider {
  margin-bottom: 200px; }
  @media (max-width: 480px) {
    #section-about-slider {
      padding: 0 15px; } }

.slick-slide img {
  width: 100%; }

.slick-slide:not(.slick-current) {
  opacity: 0.24;
  transition: all 0.3s;
  -webkit-transform: scale(0.8);
          transform: scale(0.8); }
  .slick-slide:not(.slick-current):hover {
    -webkit-transform: scale(0.85);
            transform: scale(0.85); }

.mouseover-prev .slick-p {
  -webkit-transform: scale(0.85);
          transform: scale(0.85); }

.mouseover-next .slick-n {
  -webkit-transform: scale(0.85);
          transform: scale(0.85); }

/* .slick-next {
    right: 12.5%;
}
.slick-prev{
    left: 12.5%;
    z-index: 2;
} */
.slider-arrow {
  position: absolute;
  top: 0;
  width: 14%;
  height: 100%;
  z-index: 3; }

.slider-arrow.slider-next {
  right: 0; }

.slider-arrow.slider-prev {
  left: 0; }

.slider-arrow.slider-next::before,
.slider-arrow.slider-next::after,
.slider-arrow.slider-prev::before,
.slider-arrow.slider-prev::after {
  position: absolute;
  top: 50%;
  content: '→';
  color: #977d3d;
  margin-top: -7px;
  font-size: 16px;
  line-height: 14px;
  -webkit-transform: scale(2, 1);
          transform: scale(2, 1); }

.slider-arrow.slider-next::before,
.slider-arrow.slider-next::after {
  content: '→';
  left: .2em; }

.slider-arrow.slider-prev::before,
.slider-arrow.slider-prev::after {
  right: .2em;
  content: '←'; }

.slider-arrow.slider-next::after {
  opacity: 0;
  left: -0.8em; }

.slider-arrow.slider-prev::after {
  opacity: 0;
  right: -0.8em; }

.slider-arrow.slider-next:hover::before {
  -webkit-animation: arrowbefore-next .5s;
          animation: arrowbefore-next .5s; }

.slider-arrow.slider-next:hover::after {
  -webkit-animation: arrowafter-next .5s;
          animation: arrowafter-next .5s; }

.slider-arrow.slider-prev:hover::before {
  -webkit-animation: arrowbefore-prev .5s;
          animation: arrowbefore-prev .5s; }

.slider-arrow.slider-prev:hover::after {
  -webkit-animation: arrowafter-prev .5s;
          animation: arrowafter-prev .5s; }

.slick-dots {
  bottom: -50px; }

.slick-dotted.slick-slider {
  margin-bottom: 50px; }

.slick-dots li {
  margin: 0 10px; }

.slick-dots li button::before {
  display: block;
  opacity: 1;
  padding: 0;
  content: "";
  width: 7px;
  height: 7px;
  top: 7px;
  left: 7px;
  background-color: #6e6d6a;
  -webkit-transform: rotate(-45deg) skew(15deg, 15deg);
          transform: rotate(-45deg) skew(15deg, 15deg); }

.slick-dots li.slick-active button:before {
  background-color: #977d3d;
  opacity: 1;
  width: 14px;
  height: 14px;
  top: 3px;
  left: 3px; }

.section-ttl--about {
  width: 100%;
  text-align: center;
  font-size: 30px;
  margin-bottom: 30px;
  font-weight: normal; }
  @media (max-width: 767px) {
    .section-ttl--about {
      font-size: 16px; } }

.award-lead-text {
  line-height: 1.8; }
  @media (max-width: 767px) {
    .award-lead-text {
      margin-left: 6%;
      margin-right: 6%; } }

ul.award-list {
  overflow: hidden;
  list-style: none;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 30px 0; }
  ul.award-list li {
    float: left;
    width: 31%;
    margin-bottom: 30px;
    padding: 30px;
    background-color: #1b1914; }
    ul.award-list li img {
      width: 100%;
      height: auto; }
  ul.award-list .award-list__image {
    overflow: hidden;
    padding: 0 20px;
    margin-bottom: 30px; }
  ul.award-list .award-list__text-box {
    font-size: 14px;
    color: #a5a39e;
    line-height: 1.7; }
  ul.award-list .item-year {
    position: relative;
    overflow: hidden; }
    ul.award-list .item-year span {
      margin-right: 14px;
      color: #fff; }
    ul.award-list .item-year:after {
      content: "";
      position: absolute;
      top: 50%;
      width: 100%;
      height: 1px;
      background-color: #fff;
      opacity: 0.1; }
  ul.award-list .item-name {
    color: #977d3d; }
  @media (max-width: 767px) {
    ul.award-list li {
      width: 49%;
      margin-bottom: 3%; } }
  @media (max-width: 479px) {
    ul.award-list {
      display: block; }
      ul.award-list li {
        float: none;
        width: 269px;
        margin: 0 auto 30px;
        padding: 34px 25px;
        min-height: 340px; }
      ul.award-list .award-list__text-box {
        font-size: 12px; } }

.tukuru {
  max-width: 1200px;
  margin: 100px auto;
  display: table;
  width: 100%; }
  @media (max-width: 767px) {
    .tukuru {
      margin: 0; } }

.tukuru__ttl-block {
  text-align: center;
  padding-top: 25%;
  position: relative;
  -webkit-filter: grayscale(100%);
          filter: grayscale(100%);
  background-size: cover;
  background-position: center;
  cursor: pointer;
  transition: all 0.5s; }
  .tukuru__ttl-block .tukuru__ttl {
    position: absolute;
    width: 100%;
    left: 0;
    top: 50%;
    text-align: center;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    font-size: 30px; }
  .tukuru__ttl-block:after {
    content: "";
    width: 30px;
    height: 18px;
    background-image: url("../images/common/btn_down.svg");
    background-size: 30px 18px;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, 30px);
            transform: translate(-50%, 30px);
    transition: margin-top 0.3s; }
  @media (max-width: 767px) {
    .tukuru__ttl-block {
      padding-top: 40%; }
      .tukuru__ttl-block .tukuru__ttl {
        font-size: 24px; }
      .tukuru__ttl-block:after {
        width: 27px;
        height: 16px;
        background-size: 27px 16px; } }

.tukuru__ttl-block.living-shoji {
  background-image: url(../images/about/img_tukuru_1.jpg);
  background: linear-gradient(rgba(30, 27, 22, 0) 0%, #1e1b16 100%), url(../images/about/img_tukuru_1.jpg) center center/cover no-repeat; }

.tukuru__ttl-block.border-kumiko {
  background-image: url(../images/about/img_tukuru_2.jpg);
  background: linear-gradient(rgba(30, 27, 22, 0) 0%, #1e1b16 100%), url(../images/about/img_tukuru_2.jpg) center center/cover no-repeat; }

.tukuru__ttl-block.kumiko-ranma {
  background-image: url(../images/about/img_tukuru_1.jpg);
  background: linear-gradient(rgba(30, 27, 22, 0) 0%, #1e1b16 100%), url(../images/about/img_tukuru_3.jpg) center center/cover no-repeat; }

.tukuru__ttl-block.original {
  background-image: url(../images/about/img_tukuru_2.jpg);
  background: linear-gradient(rgba(30, 27, 22, 0) 0%, #1e1b16 100%), url(../images/about/img_tukuru_4.jpg) center center/cover no-repeat; }

.tukuru__ttl-block:hover:after {
  margin-top: 4px; }

.tukuru__ttl-block:hover,
.tukuru__ttl-block.active {
  -webkit-filter: grayscale(0%);
          filter: grayscale(0%); }

.tukuru__ttl-block.active:after {
  background-image: url("../images/common/btn_top_active.svg"); }

.tukuru__content {
  display: none;
  background-color: #1e1b16;
  padding: 8% 5% 13%; }
  @media (max-width: 767px) {
    .tukuru__content {
      padding: 8% 15px 13%; } }

.tukuru__catch {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 10%;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row; }
  @media (max-width: 767px) {
    .tukuru__catch {
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; } }

.tukuru__catch__ttl {
  width: 40%;
  font-size: 30px;
  line-height: 1.6;
  padding-right: 10px; }
  @media (max-width: 1024px) {
    .tukuru__catch__ttl {
      font-size: 24px; } }
  @media (max-width: 767px) {
    .tukuru__catch__ttl {
      margin-bottom: 40px;
      width: 100%;
      padding-right: 0; } }

.tukuru__catch__text {
  width: 60%;
  font-size: 16px;
  line-height: 1.9;
  color: #a5a39e;
  letter-spacing: 0.05em; }
  @media (max-width: 1024px) {
    .tukuru__catch__text {
      font-size: 13px; } }
  @media (max-width: 767px) {
    .tukuru__catch__text {
      width: 100%; } }

.tab-btn {
  margin-bottom: 40px; }
  .tab-btn .btn {
    max-width: 50%; }
  .tab-btn .btn.active {
    color: #000;
    background-color: #977d3d; }

.tab-btn-list {
  margin-left: -10px;
  margin-right: -10px; }
  .tab-btn-list li {
    width: 50%;
    display: inline-block;
    padding: 0 10px; }
    .tab-btn-list li .btn {
      max-width: 100%; }

.lightboxOverlay {
  opacity: 1;
  background-color: #1e1b16; }

.lightbox {
  position: fixed;
  top: 50% !important;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  padding-top: 100px;
  padding-bottom: 60px; }
  .lightbox .lb-outerContainer {
    background-color: #1e1b16; }
  .lightbox .lb-image {
    border: 4px solid #1e1b16; }

.lightboxOverlay .lb-close {
  display: block;
  float: right;
  width: 30px;
  height: 30px;
  background: url(../images/close.png) top right no-repeat;
  text-align: right;
  outline: 0;
  filter: alpha(Opacity=70);
  opacity: .7;
  transition: opacity .2s;
  position: fixed;
  top: 20px;
  right: 20px; }

.lightboxOverlay .lb-number {
  display: block;
  clear: left;
  padding-bottom: 1em;
  font-size: 12px;
  color: #999;
  position: fixed;
  top: 20px;
  left: 20px; }

@media (max-width: 767px) {
  .lb-container {
    padding: 10px; } }

.lb-data .lb-details {
  width: 100%; }

.lb-data .lb-caption {
  display: block;
  text-align: center;
  margin-top: 20px;
  font-size: 18px; }
  .lb-data .lb-caption span {
    font-family: 'Vollkorn';
    font-size: 20px;
    color: #977d3d;
    margin-right: 0.5em; }

.lb-data .lb-close {
  position: absolute;
  right: 20px;
  top: 30px;
  z-index: 10; }

.lb-data .lb-number {
  position: absolute;
  top: 30px;
  left: 20px;
  font-size: 14px; }

.lb-nav {
  position: initial; }

.lb-nav a.lb-next {
  right: 0;
  width: 50%;
  max-width: 300px;
  opacity: 1;
  top: 50%;
  height: 300px;
  position: absolute;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: none;
  z-index: 10; }
  @media (max-width: 767px) {
    .lb-nav a.lb-next {
      right: -1.5em; } }

.lb-nav a.lb-prev {
  left: 0;
  width: 50%;
  max-width: 300px;
  opacity: 1;
  top: 50%;
  height: 300px;
  position: absolute;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: none;
  z-index: 10; }
  @media (max-width: 767px) {
    .lb-nav a.lb-prev {
      left: -1.5em; } }

.lb-nav a.lb-next::before,
.lb-nav a.lb-next::after,
.lb-nav a.lb-prev::before,
.lb-nav a.lb-prev::after {
  position: absolute;
  top: 50%;
  content: '';
  color: #fff;
  margin-top: -7px;
  font-size: 16px;
  line-height: 14px;
  -webkit-transform: scale(2, 1);
          transform: scale(2, 1); }

.lb-nav a.lb-next::before {
  content: '→';
  right: 2em;
  opacity: 1; }

.lb-nav a.lb-next::after {
  content: '→';
  opacity: 0;
  right: 3em; }

.lb-nav a.lb-prev::before {
  content: '←';
  left: 2em; }

.lb-nav a.lb-prev::after {
  content: '←';
  opacity: 0;
  left: 3em; }

.lb-nav a.lb-next:hover::before {
  -webkit-animation: navbefore-next .5s;
          animation: navbefore-next .5s; }

.lb-nav a.lb-next:hover::after {
  -webkit-animation: navafter-next .5s;
          animation: navafter-next .5s; }

.lb-nav a.lb-prev:hover::before {
  -webkit-animation: navbefore-prev .5s;
          animation: navbefore-prev .5s; }

.lb-nav a.lb-prev:hover::after {
  -webkit-animation: navafter-prev .5s;
          animation: navafter-prev .5s; }

@-webkit-keyframes navbefore-next {
  100% {
    right: 1em;
    opacity: 0; } }

@keyframes navbefore-next {
  100% {
    right: 1em;
    opacity: 0; } }

@-webkit-keyframes navafter-next {
  99% {
    right: 2em;
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes navafter-next {
  99% {
    right: 2em;
    opacity: 1; }
  100% {
    opacity: 0; } }

@-webkit-keyframes navbefore-prev {
  100% {
    left: 1em;
    opacity: 0; } }

@keyframes navbefore-prev {
  100% {
    left: 1em;
    opacity: 0; } }

@-webkit-keyframes navafter-prev {
  99% {
    left: 2em;
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes navafter-prev {
  99% {
    left: 2em;
    opacity: 1; }
  100% {
    opacity: 0; } }

.pattern-list__ttl-block {
  border-bottom: 1px solid #6e6d6a;
  margin-bottom: 50px;
  position: relative; }
  .pattern-list__ttl-block .pattern-list__ttl {
    font-size: 20px;
    line-height: 2em;
    color: #977d3d; }
  .pattern-list__ttl-block span {
    position: absolute;
    right: 0;
    bottom: 7px;
    line-height: 2;
    color: #a5a39e;
    font-size: 13px; }
  @media (max-width: 767px) {
    .pattern-list__ttl-block {
      margin-bottom: 36px; }
      .pattern-list__ttl-block .pattern-list__ttl {
        font-size: 16px; }
      .pattern-list__ttl-block span {
        position: relative;
        right: 0;
        bottom: 0;
        font-size: 10px; } }

.living-shoji-feature--ttl {
  color: #977d3d;
  font-size: 20px;
  line-height: 2em; }
  @media (max-width: 767px) {
    .living-shoji-feature--ttl {
      font-size: 16px; } }

ul.living-shoji-feature__list {
  overflow: hidden;
  list-style: none;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin-bottom: 110px;
  padding: 25px;
  background-color: #17140e; }
  ul.living-shoji-feature__list li {
    float: left;
    width: 50%;
    padding: 25px 0 0 25px; }
  @media (max-width: 767px) {
    ul.living-shoji-feature__list li {
      float: left;
      width: 100%;
      padding: 0;
      margin-bottom: 20px; } }

.living-shoji-feature__list__image__block--1 {
  display: table;
  width: 100%; }

.living-shoji-feature__list__image {
  width: 50%;
  max-width: 200px;
  display: table-cell;
  vertical-align: middle; }
  .living-shoji-feature__list__image img {
    width: 100%; }

.living-shoji-feature__list__ttl {
  width: 50%;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  font-size: 18px;
  line-height: 1.6; }
  @media (max-width: 767px) {
    .living-shoji-feature__list__ttl {
      font-size: 14px; } }

.living-shoji-feature__list__text {
  line-height: 1.8;
  font-size: 14px;
  padding: 1em 0;
  color: #a5a39e; }
  @media (max-width: 767px) {
    .living-shoji-feature__list__text {
      font-size: 12px; } }

@media (max-width: 767px) {
  .pattern-list {
    padding: 0 15px; } }

.pattern-list__name {
  font-size: 18px;
  margin: 20px 0 13px; }
  .pattern-list__name span {
    font-size: 20px;
    color: #977d3d;
    margin-right: 0.5em; }
  @media (max-width: 767px) {
    .pattern-list__name {
      font-size: 14px;
      margin: 15px 0 10px; }
      .pattern-list__name span {
        font-size: 16px; } }

.pattern-list__image img {
  max-width: 100%;
  vertical-align: middle; }

.pattern-list__price {
  font-size: 14px;
  color: #a5a39e;
  line-height: 1.6;
  border-top: 1px solid #6e6d6a;
  margin-top: 1em;
  padding-top: 1em; }
  @media (max-width: 767px) {
    .pattern-list__price {
      font-size: 12px; } }

ul.pattern-list--1 {
  overflow: hidden;
  list-style: none;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-right: -10px;
  margin-left: -10px; }
  ul.pattern-list--1 li {
    list-style: none;
    float: left;
    margin-bottom: 30px;
    width: 33.333%;
    padding: 0 10px; }
  ul.pattern-list--1 .pattern-list__text {
    font-size: 14px;
    color: #a5a39e;
    line-height: 1.6;
    min-height: 4.8em; }
  @media (max-width: 1024px) {
    ul.pattern-list--1 li {
      width: 48%;
      min-height: 0; } }
  @media (max-width: 767px) {
    ul.pattern-list--1 li {
      width: 100%;
      max-width: 380px;
      margin: 0 auto 40px; } }

ul.pattern-list--2 {
  overflow: hidden;
  list-style: none;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  ul.pattern-list--2 li {
    float: left;
    margin-bottom: 30px;
    width: 48%;
    margin-bottom: 45px; }
  @media (max-width: 767px) {
    ul.pattern-list--2 li {
      width: 100%;
      max-width: 380px;
      margin: 0 auto 30px; } }

ul.pattern-list--3 {
  overflow: hidden; }
  ul.pattern-list--3 li {
    list-style: none;
    margin-bottom: 30px; }
  ul.pattern-list--3 .pattern-list__image {
    width: 65%;
    display: inline-block; }
  ul.pattern-list--3 .pattern-list__text {
    width: 33%;
    display: inline-block;
    padding-left: 20px;
    vertical-align: bottom; }
  @media (max-width: 767px) {
    ul.pattern-list--3 li {
      width: 100%;
      max-width: 380px;
      margin: 0 auto 30px; }
    ul.pattern-list--3 .pattern-list__image,
    ul.pattern-list--3 .pattern-list__text {
      display: block;
      width: 100%; }
    ul.pattern-list--3 .pattern-list__text {
      padding-left: 0; } }

.pattern-list__notice {
  line-height: 1.6;
  font-size: 14px;
  margin-bottom: 50px;
  color: #a5a39e; }
  @media (max-width: 767px) {
    .pattern-list__notice {
      font-size: 12px; } }

.border-kumiko-cad {
  padding: 50px;
  background-color: #17140e;
  margin-top: 80px; }
  @media (max-width: 767px) {
    .border-kumiko-cad {
      padding: 15px; } }

.border-kumiko-cad__ttl {
  color: #977d3d;
  font-size: 18px;
  line-height: 2em;
  border-bottom: 1px solid #6e6d6a;
  margin-bottom: 2em;
  position: relative; }
  @media (max-width: 767px) {
    .border-kumiko-cad__ttl {
      font-size: 14px; } }

.border-kumiko-cad__text {
  color: #a5a39e; }

.border-kumiko-cad__content {
  overflow: hidden; }
  @media (max-width: 1024px) {
    .border-kumiko-cad__content {
      max-width: 450px;
      margin: 0 auto; } }

.border-kumiko-cad__block--1 {
  width: 50%;
  float: left; }
  .border-kumiko-cad__block--1 img {
    max-width: 100%; }
  @media (max-width: 1024px) {
    .border-kumiko-cad__block--1 {
      float: none;
      width: 100%;
      text-align: center;
      margin-bottom: 15px; } }

.border-kumiko-cad__block--2 {
  width: 50%;
  float: right;
  padding-left: 8%; }
  .border-kumiko-cad__block--2 table {
    float: right;
    border-collapse: separate;
    width: 100%; }
  .border-kumiko-cad__block--2 .thead_text {
    text-align: left;
    color: #a5a39e; }
  .border-kumiko-cad__block--2 th {
    font-size: 14px;
    width: 100px;
    text-align: left; }
  .border-kumiko-cad__block--2 td {
    padding: 10px 0; }
  .border-kumiko-cad__block--2 .icon_download {
    display: inline-block;
    width: 11px;
    height: 12px;
    background-image: url(../images/common/icon_download.png); }
  .border-kumiko-cad__block--2 .btn {
    height: 40px;
    width: 100%; }
    .border-kumiko-cad__block--2 .btn:hover .icon_download {
      background-image: url(../images/common/icon_download_on.png); }
  @media (max-width: 1024px) {
    .border-kumiko-cad__block--2 {
      float: none;
      width: 100%;
      padding-left: 0; }
      .border-kumiko-cad__block--2 th {
        width: 80px;
        font-size: 12px; }
      .border-kumiko-cad__block--2 .btn {
        font-size: 12px;
        height: 32px; } }

.tukuru__original--1 {
  margin-bottom: 120px; }

.tukuru__original--2 {
  margin-bottom: 7px; }

.tukuru__original--3 {
  margin-bottom: 100px; }

.tukuru__original {
  position: relative; }
  @media (max-width: 1024px) {
    .tukuru__original {
      margin-bottom: 60px; } }

.tukuru__original__image {
  width: 50%; }
  .tukuru__original__image img {
    max-width: 100%;
    width: 100%; }
  @media (max-width: 1024px) {
    .tukuru__original__image {
      width: 100%;
      margin-bottom: 40px; } }

.tukuru__original__text-block {
  width: 50%;
  position: absolute;
  top: 0;
  left: 50%;
  padding-left: 40px; }
  @media (max-width: 1024px) {
    .tukuru__original__text-block {
      position: initial;
      width: 100%;
      padding-left: 0;
      padding: 0 15px; } }

.tukuru__original__text-block--bottom {
  top: auto;
  bottom: 0; }

.tukuru__original__ttl {
  font-size: 20px;
  color: #977d3d;
  margin-bottom: 1em;
  line-height: 1; }

.tukuru__original__text {
  line-height: 1.9;
  margin-bottom: 40px;
  color: #a5a39e; }
  @media (max-width: 1024px) {
    .tukuru__original__text {
      margin-bottom: 20px;
      font-size: 13px; } }

.tukuru__original__item {
  border-top: 1px solid #6e6d6a;
  border-bottom: 1px solid #6e6d6a;
  max-width: 300px;
  margin-bottom: -1px;
  font-size: 14px;
  padding: 1em 0; }

.tukuru__original__item__name {
  font-size: 18px;
  margin-bottom: 10px; }
  @media (max-width: 1024px) {
    .tukuru__original__item__name {
      font-size: 14px; } }

.tukuru__original__item__data {
  line-height: 1.5;
  color: #a5a39e; }
  @media (max-width: 1024px) {
    .tukuru__original__item__data {
      font-size: 12px; } }

/*------
　歩み
------*/
.about-history-text {
  margin: 140px 0 120px;
  line-height: 1.9;
  color: #e5e5e5; }
  @media (max-width: 767px) {
    .about-history-text {
      margin: 0 0 120px;
      padding: 0 15px; } }

#history-timeline {
  position: relative; }
  #history-timeline:before {
    content: url(../images/about/line_history_pc.png);
    position: absolute;
    top: -40px;
    left: 50%; }
  @media (max-width: 767px) {
    #history-timeline:before {
      content: "";
      top: -40px;
      left: 13px;
      width: 1px;
      height: 100%;
      background-image: url(../images/about/line_history_sp.png);
      background-size: contain;
      background-repeat: no-repeat;
      background-position: top center; } }

.history-timeline-block {
  position: relative;
  overflow: hidden; }

.history-timeline-block:first-child {
  margin-top: 0; }

.history-timeline-block--1 {
  margin-bottom: -520px; }
  @media (max-width: 767px) {
    .history-timeline-block--1 {
      margin-bottom: 0; } }

.history-timeline-block--2 {
  margin-bottom: -330px; }
  @media (max-width: 767px) {
    .history-timeline-block--2 {
      margin-bottom: 0; } }

.history-timeline-block--3 {
  margin-bottom: -600px; }
  @media (max-width: 767px) {
    .history-timeline-block--3 {
      margin-bottom: 0; } }

.history-timeline-block--last {
  text-align: center;
  margin: 200px 0 100px; }
  @media (max-width: 767px) {
    .history-timeline-block--last {
      margin: 100px 0; } }

.history-timeline-time {
  position: absolute;
  width: 100px;
  font-size: 13px;
  line-height: 24px;
  top: 0;
  left: 50%;
  margin-left: -50px;
  background-color: #fff;
  color: #000;
  text-align: center; }
  @media (max-width: 767px) {
    .history-timeline-time {
      position: relative;
      left: 0;
      width: 80px;
      height: 19px;
      margin: 0 0 1em;
      font-size: 10px;
      line-height: 19px; } }

.history-timeline-content {
  position: relative;
  margin-left: 0;
  width: 42%; }
  @media (max-width: 767px) {
    .history-timeline-content {
      width: auto;
      margin-left: 15px;
      padding: 1em;
      margin-bottom: 20px; } }

.history-timeline-content:after {
  content: "";
  display: table;
  clear: both; }

.history-timeline-text {
  margin-bottom: 50px; }
  .history-timeline-text p {
    margin: 1em 0;
    line-height: 2;
    color: #a5a39e;
    letter-spacing: 0.1em; }
  @media (max-width: 767px) {
    .history-timeline-text {
      margin-bottom: 0; }
      .history-timeline-text p {
        margin: 1em 0;
        line-height: 1.7;
        color: #a5a39e;
        letter-spacing: normal;
        font-size: 13px; } }

.history-timeline-block:nth-child(even) .history-timeline-content {
  float: right; }
  @media (max-width: 767px) {
    .history-timeline-block:nth-child(even) .history-timeline-content {
      float: none; } }

.history-timeline-ttl {
  color: #977d3d;
  font-size: 18px;
  margin-bottom: 0.5em; }
  @media (max-width: 767px) {
    .history-timeline-ttl {
      font-size: 14px; } }

.history-timeline-note {
  font-size: 13px;
  line-height: 1.8;
  display: inline-block;
  margin: 1em 0; }

.history-timeline-img {
  width: 300px;
  display: block;
  margin: 30px auto; }
  @media (max-width: 767px) {
    .history-timeline-img {
      width: 240px;
      margin: 20px 0; } }

@media (max-width: 767px) {
  .history-timeline-logo {
    width: 64px;
    height: 67px; } }

/*------
　紋様
------*/
.about-kumiko-text {
  margin: 140px 0 120px;
  line-height: 1.9;
  color: #a5a39e; }
  @media (max-width: 767px) {
    .about-kumiko-text {
      margin: 0 0 120px;
      padding: 0 15px; } }

ul.kumiko-list {
  overflow: hidden;
  list-style: none;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin: 50px 0; }
  ul.kumiko-list li {
    float: left;
    width: 33.333%;
    margin-bottom: 1%; }
  ul.kumiko-list a {
    padding: 20px;
    width: 100%;
    display: block;
    height: 100%; }
  ul.kumiko-list .kumiko-list__inner {
    position: relative;
    height: 100%;
    padding-bottom: 45px; }
  ul.kumiko-list .kumiko-list__block--1 {
    margin: 20px 0; }
  ul.kumiko-list .kumiko-list__block--2 {
    text-align: justify; }
  ul.kumiko-list .kumiko-list__block--3 {
    position: absolute;
    width: 100%;
    width: calc(100% - 32px);
    bottom: 0;
    left: 16px; }
  ul.kumiko-list .kumiko-list__image {
    transition: all 0.3s;
    position: relative; }
    ul.kumiko-list .kumiko-list__image:after {
      content: "";
      position: absolute;
      display: block;
      top: -0.5%;
      left: -0.5%;
      width: 101%;
      height: 101%; }
    ul.kumiko-list .kumiko-list__image img {
      width: 100%;
      height: auto;
      transition: all 0.3s; }
  ul.kumiko-list .kumiko-list__text-box {
    margin: 0 15px; }
  ul.kumiko-list .kumiko-list__name {
    text-align: center;
    font-size: 18px;
    line-height: 2;
    transition: all 0.3s; }
  ul.kumiko-list .kumiko-list__yomi {
    text-align: center;
    color: #977d3d;
    font-size: 13px; }
  ul.kumiko-list .kumiko-list__text {
    color: #a5a39e;
    line-height: 1.85;
    font-size: 14px;
    margin-bottom: 12px; }
  ul.kumiko-list .kumiko-list__link {
    border-top: 1px solid rgba(165, 163, 158, 0.2);
    text-align: center;
    display: block;
    color: #a5a39e;
    font-size: 12px;
    line-height: 45px;
    transition: all 0.3s; }
  ul.kumiko-list a:hover .kumiko-list__image {
    opacity: 0.7; }
    ul.kumiko-list a:hover .kumiko-list__image img {
      -webkit-transform: scale(1.04);
              transform: scale(1.04); }
  ul.kumiko-list a:hover .kumiko-list__name {
    color: #977d3d; }
  ul.kumiko-list a:hover .kumiko-list__link {
    color: #977d3d; }
  ul.kumiko-list .pattern-list__image {
    position: relative;
    overflow: hidden; }
  @media (max-width: 767px) {
    ul.kumiko-list li {
      width: 50%; } }
  @media (max-width: 479px) {
    ul.kumiko-list li {
      width: 100%;
      margin: 0 auto 70px; }
    ul.kumiko-list a {
      padding: 0; }
    ul.kumiko-list .kumiko-list__image {
      width: 224px;
      margin: 0 auto; }
    ul.kumiko-list .kumiko-list__text {
      font-size: 12px; } }

/*------
　材木
------*/
#section-zaimoku-message {
  margin-bottom: 200px; }
  #section-zaimoku-message .zaimoku-message-content {
    position: relative;
    margin: 80px 0; }
  #section-zaimoku-message .zaimoku-message__image img {
    max-width: 100%; }
  #section-zaimoku-message .zaimoku-message__ttl {
    font-size: 20px;
    color: #e5e5e5;
    margin-bottom: 10px; }
  #section-zaimoku-message .zaimoku-message__text {
    position: absolute;
    text-align: left;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 410px;
    height: 300px;
    padding: 40px 28px;
    background-color: #17140e;
    line-height: 1.9;
    color: #a5a39e;
    letter-spacing: 0.15em; }
  #section-zaimoku-message .zaimoku-message-content:nth-child(odd) .zaimoku-message__text {
    right: -28px; }
  #section-zaimoku-message .zaimoku-message-content:nth-child(even) {
    text-align: right; }
    #section-zaimoku-message .zaimoku-message-content:nth-child(even) .zaimoku-message__text {
      left: -28px; }
  @media (max-width: 767px) {
    #section-zaimoku-message {
      margin-bottom: 120px; }
      #section-zaimoku-message .zaimoku-message-content {
        margin: 30px 0; }
      #section-zaimoku-message .zaimoku-message__image img {
        width: 100%; }
      #section-zaimoku-message .zaimoku-message__ttl {
        font-size: 16px; }
      #section-zaimoku-message .zaimoku-message__text {
        position: initial;
        -webkit-transform: none;
                transform: none;
        width: 100%;
        height: auto;
        padding: 5%; } }

#section-zaimoku-color .section-zaimoku-color__ttl {
  font-size: 30px;
  margin-bottom: 40px;
  text-align: center; }

#section-zaimoku-color ul.zaimoku-color-list {
  overflow: hidden;
  list-style: none; }
  #section-zaimoku-color ul.zaimoku-color-list li {
    width: 33.333%;
    float: left;
    padding: 0.5px; }
  #section-zaimoku-color ul.zaimoku-color-list img {
    max-width: 100%; }

#section-zaimoku-color .zaimoku-color-list__text {
  padding: 9%;
  font-size: 14px;
  line-height: 2;
  color: #a5a39a; }

#section-zaimoku-color .zaimoku-color-list__ttl {
  font-size: 16px;
  color: #e5e5e5; }

@media (max-width: 767px) {
  #section-zaimoku-color .section-zaimoku-color__ttl {
    font-size: 18px; }
  #section-zaimoku-color ul.zaimoku-color-list {
    overflow: hidden;
    list-style: none;
    padding: 0 45px; }
    #section-zaimoku-color ul.zaimoku-color-list li {
      width: 100%;
      float: none;
      max-width: 336px;
      margin: 0 auto 20px; }
  #section-zaimoku-color .zaimoku-color-list__text {
    font-size: 12px;
    padding: 20px 0; }
  #section-zaimoku-color .zaimoku-color-list__ttl {
    font-size: 13px; } }

.pattern-list__btn-wrap .btn {
  margin: 5px 10px; }

@media (min-width: 768px) {
  .pattern-list__btn-wrap span.spbr {
    width: 1em;
    display: inline-block; } }

@media (max-width: 767px) {
  .pattern-list__btn-wrap .btn {
    width: 40%;
    height: 45px;
    margin: 0 7px; }
  .pattern-list__btn-wrap span.spbr {
    width: 0;
    display: block; } }

/*------
　納品
------*/
table.table--nouhin {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  font-size: 14px;
  background-image: url(../images/about/bg_nouhin_pc.png);
  background-position: left top;
  background-repeat: no-repeat;
  margin-bottom: 100px; }
  table.table--nouhin th, table.table--nouhin td {
    height: 142px;
    vertical-align: middle; }
  table.table--nouhin th {
    width: 160px;
    font-size: 18px; }
    table.table--nouhin th .table--nouhin__subttl {
      display: block;
      line-height: 1.3; }
  table.table--nouhin td {
    border-bottom: 2px solid #17140e;
    border-left: 2px solid #17140e;
    background-color: #1e1b16;
    color: #a5a39e;
    padding: 0 2em;
    text-align: left;
    line-height: 1.85; }
    table.table--nouhin td .table--nouhin__subttl {
      display: none; }
  table.table--nouhin .table--nouhin__order th {
    font-size: 30px;
    color: #1e1b16; }
  @media (max-width: 767px) {
    table.table--nouhin {
      background-image: url(../images/about/bg_nouhin_sp.png);
      background-size: 72px 1970px; }
      table.table--nouhin th, table.table--nouhin td {
        height: 219px; }
      table.table--nouhin th {
        width: 72px; }
        table.table--nouhin th .table--nouhin__subttl {
          display: none; }
      table.table--nouhin td {
        font-size: 12px;
        padding: 0px 1em; }
        table.table--nouhin td .table--nouhin__subttl {
          display: block; }
      table.table--nouhin .table--nouhin__subttl {
        font-size: 14px; }
      table.table--nouhin .table--nouhin__order .table--nouhin__subttl {
        font-size: 24px; }
      table.table--nouhin tr:nth-child(n+3):nth-last-child(n) .table--nouhin__subttl {
        color: #977d3d; } }

table.table--nouhin--en tr:nth-child(3) th,
table.table--nouhin--en tr:nth-child(4) th {
  padding-top: 13px; }

table.table--nouhin--en tr:nth-child(3) .table--nouhin__icon {
  margin-bottom: -10px; }

table.table--nouhin--en th .table--nouhin__subttl {
  line-height: 1; }

.modal-inner {
  max-width: 736px;
  margin: 100px auto; }

.modal-nouhin-ttl {
  font-size: 30px;
  margin-bottom: 40px; }
  @media (max-width: 767px) {
    .modal-nouhin-ttl {
      font-size: 24px;
      margin-bottom: 30px; } }

.table--nouhin__icon {
  display: block;
  margin: 0 auto; }
  @media (max-width: 767px) {
    .table--nouhin__icon {
      width: 66px;
      height: auto; } }

.nouhin-list-wrap {
  text-align: left;
  margin-bottom: 80px; }
  @media (max-width: 767px) {
    .nouhin-list-wrap {
      margin-bottom: 60px; } }

ul.nouhin-list li {
  list-style: none;
  padding: 20px;
  background-color: #1e1b16;
  margin-bottom: 10px;
  line-height: 1.9; }

ul.nouhin-list .nouhin-list__inner {
  position: relative;
  padding-left: 12px; }
  ul.nouhin-list .nouhin-list__inner:before {
    content: "";
    width: 2px;
    height: 100%;
    position: absolute;
    left: 0;
    background-color: #6e6d6a; }

ul.news-list {
  list-style: none;
  max-width: 1200px;
  margin: 50px auto; }
  ul.news-list li {
    background-color: rgba(255, 255, 255, 0.03);
    margin-bottom: 1px;
    transition: all 0.3s;
    position: relative; }
    ul.news-list li a {
      display: block;
      padding: 3.5% 7.75% 3.5% 7.75%;
      overflow: hidden;
      width: 100%; }
    ul.news-list li .news-list__block-wrap {
      display: table;
      position: relative;
      width: 100%; }
      ul.news-list li .news-list__block-wrap:after, ul.news-list li .news-list__block-wrap:before {
        position: absolute;
        top: 50%;
        right: .2em;
        content: '→';
        margin-top: -7px;
        font-size: 16px;
        line-height: 14px;
        -webkit-transform: scale(2, 1);
                transform: scale(2, 1);
        color: #977d3d; }
      ul.news-list li .news-list__block-wrap:after {
        opacity: 0;
        right: 1em; }
    ul.news-list li:hover {
      background-color: rgba(255, 255, 255, 0.06); }
      ul.news-list li:hover a {
        color: #977d3d; }
      ul.news-list li:hover .news-list__block-wrap {
        display: table;
        position: relative;
        width: 100%; }
        ul.news-list li:hover .news-list__block-wrap:after {
          -webkit-animation: arrowafter .5s;
                  animation: arrowafter .5s; }
        ul.news-list li:hover .news-list__block-wrap:before {
          -webkit-animation: arrowbefore .5s;
                  animation: arrowbefore .5s; }
  @media (max-width: 767px) {
    ul.news-list li .news-list__block-wrap:after, ul.news-list li .news-list__block-wrap:before {
      content: none; }
    ul.news-list li a {
      padding: 7% 7.75% 7% 7.75%; } }

.news-list__image {
  width: 100px;
  height: 57px;
  overflow: hidden;
  display: table-cell;
  vertical-align: middle; }
  .news-list__image img {
    width: 100%;
    height: auto;
    -webkit-filter: grayscale(100%);
            filter: grayscale(100%); }

.news-list__date {
  display: table-cell;
  vertical-align: middle;
  min-width: 120px;
  text-align: center;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.3);
  max-width: 200px; }
  @media (max-width: 767px) {
    .news-list__date {
      text-align: left;
      padding-left: 30px; } }

.news-list__block--1,
.news-list__block--2 {
  display: table-cell;
  vertical-align: middle; }
  @media (max-width: 767px) {
    .news-list__block--1,
    .news-list__block--2 {
      display: block; } }

.news-list__block--1 {
  width: 30%;
  max-width: 200px; }
  @media (max-width: 767px) {
    .news-list__block--1 {
      width: 100%;
      max-width: initial;
      position: relative; } }

.news-list__block--1__inner {
  display: table;
  width: 100%; }

.news-list__block--2 {
  padding-right: 40px; }
  @media (max-width: 767px) {
    .news-list__block--2 {
      margin-top: 1em;
      padding-right: 0; } }

.news-list__ttl {
  line-height: 1.3; }

.pager {
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  text-align: center;
  font-family: 'Vollkorn'; }
  .pager .page-numbers {
    padding: 40px 24px 12px;
    display: inline-block;
    color: #7c7a75; }
  .pager a.page-numbers {
    color: #7c7a75; }
    .pager a.page-numbers:hover {
      color: #977d3d; }
  .pager .page-numbers.current {
    color: #977d3d;
    border-top: 1px solid; }
  .pager .no-link {
    opacity: 0.2; }
  @media (max-width: 767px) {
    .pager .page-numbers {
      padding: 20px 20px 12px; }
    .pager .prev, .pager .next {
      display: none; } }

/*----
single  news
----*/
.post--news .post-body {
  display: table; }

.post--news .post-text {
  display: table-cell;
  vertical-align: top; }

.post--news #post-images--news {
  display: table-cell;
  width: 40%;
  padding-right: 10%;
  padding-top: 20px; }
  .post--news #post-images--news li {
    list-style: none;
    margin-bottom: 30px;
    cursor: pointer; }
  .post--news #post-images--news img {
    max-width: 100%;
    vertical-align: middle; }

@media (max-width: 767px) {
  .post--news .post-body {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: column-reverse;
        -ms-flex-flow: column-reverse;
            flex-flow: column-reverse;
    padding-left: 15px;
    padding-right: 15px; }
    .post--news .post-body p {
      margin-left: 15px;
      margin-right: 15px; }
  .post--news .post-text {
    display: block;
    margin-bottom: 30px; }
  .post--news #post-images--news {
    display: block;
    width: 100%;
    padding: 0; }
    .post--news #post-images--news img {
      max-width: 100%; } }

.post-header--news {
  padding: 22% 0 16%;
  text-align: center; }
  @media (max-width: 767px) {
    .post-header--news {
      padding: 39% 0 28%; } }

.post__ttl--news {
  font-size: 36px;
  line-height: 1.5; }
  @media (max-width: 767px) {
    .post__ttl--news {
      font-size: 25px; } }

.post__date--news {
  font-size: 14px;
  margin-top: 1em; }

.post-footer--news {
  margin-top: 200px; }
  .post-footer--news .btn_retrn {
    display: table;
    margin: 0 auto 50px; }
  @media (max-width: 767px) {
    .post-footer--news {
      margin-top: 100px; } }

.post-footer__adjacent-element {
  display: table;
  width: 100%; }

.post-footer-prev,
.post-footer-next {
  display: table-cell;
  width: 50%;
  vertical-align: top;
  background-color: rgba(255, 255, 255, 0.03);
  padding: 4% 8%;
  position: relative;
  transition: all 0.3s; }
  .post-footer-prev:after,
  .post-footer-next:after {
    position: absolute;
    top: 50%;
    margin-top: -0.5em;
    height: 1em;
    line-height: 1em;
    -webkit-transform: scale(2.2, 1);
            transform: scale(2.2, 1);
    font-size: 14px; }
  @media (max-width: 767px) {
    .post-footer-prev,
    .post-footer-next {
      padding: 36px 50px; } }

a.post-footer-prev:after {
  content: "←";
  left: 7.75%; }

a.post-footer-prev:hover {
  background-color: rgba(255, 255, 255, 0.06);
  color: #977d3d; }
  a.post-footer-prev:hover:after {
    color: #977d3d; }

@media (max-width: 767px) {
  a.post-footer-prev:after {
    left: 12%; }
  a.post-footer-prev .post-footer--news__block--3 {
    text-align: center; } }

a.post-footer-next:after {
  content: "→";
  right: 7.75%; }

a.post-footer-next:hover {
  background-color: rgba(255, 255, 255, 0.06);
  color: #977d3d; }
  a.post-footer-next:hover:after {
    color: #977d3d; }

a.post-footer-next .post-footer--news__block--3 {
  text-align: right; }

@media (max-width: 767px) {
  a.post-footer-next:after {
    right: 12%; }
  a.post-footer-next .post-footer--news__block--3 {
    text-align: center; } }

.post-footer--news__block--1 {
  display: table;
  margin-bottom: 1em; }
  @media (max-width: 767px) {
    .post-footer--news__block--1 {
      display: none; } }

@media (max-width: 767px) {
  .post-footer--news__block--2 {
    display: none; } }

.post-footer--news__block--3 {
  display: none; }
  @media (max-width: 767px) {
    .post-footer--news__block--3 {
      display: block; } }

.post-footer--news__image {
  width: 100px;
  height: 57px;
  overflow: hidden;
  display: table-cell;
  vertical-align: middle; }
  .post-footer--news__image img {
    width: 100%;
    height: auto;
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%); }

.post-footer--news__date {
  display: table-cell;
  vertical-align: middle;
  padding-left: 2em;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.3); }

.single-post__bg, .single-post__bg--prev {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -3; }

.single-post__bg--prev {
  opacity: 0;
  z-index: -2;
  transition: all 1s; }

.single-post__bg--prev.fadeIn {
  opacity: 1; }

/* @keyframes fadein{from{opacity:0}
to{opacity:1}
}

@-webkit-keyframes fadein{from{opacity:0}
to{opacity:1}
} */
.post-area {
  max-width: 1008px;
  margin: 0 auto;
  line-height: 1.9; }

.post-body a {
  text-decoration: underline; }

.btn_retrn {
  display: inline-block;
  font-size: 14px;
  transition: all 0.3s; }
  .btn_retrn > img, .btn_retrn svg, .btn_retrn span {
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px; }
  .btn_retrn:hover .bfcaee82-4377-498e-8f57-bb9c919ec914 {
    fill: #977d3d; }
  .btn_retrn:hover span {
    color: #977d3d; }

.bg {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  transition: background-color 0.3s;
  background-color: rgba(23, 20, 14, 0.3); }

.bg.bg--dark {
  background-color: rgba(23, 20, 14, 0.9);
  transition: background-color 0.3s; }

.bg.bg--dark.bg--lighter {
  background-color: rgba(23, 20, 14, 0.7); }

.fixed-nav--prev,
.fixed-nav--next {
  width: 1em;
  font-size: 13px;
  line-height: 1.3;
  display: block;
  position: fixed;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%); }
  @media (max-width: 767px) {
    .fixed-nav--prev,
    .fixed-nav--next {
      display: none; } }

.fixed-nav--prev {
  left: 20px; }

.fixed-nav--next {
  right: 20px; }

.fixed-nav--en {
  -webkit-transform: translateY(-50%) rotate(90deg);
          transform: translateY(-50%) rotate(90deg);
  width: auto; }

.pswp--supports-fs .pswp__button--fs,
.pswp__button--share,
.pswp__button--zoom {
  display: none !important; }

.pswp__button--arrow--left,
.pswp__button--arrow--right {
  position: absolute; }
  .pswp__button--arrow--left:before, .pswp__button--arrow--left:after,
  .pswp__button--arrow--right:before,
  .pswp__button--arrow--right:after {
    background: none;
    font-size: 16px;
    line-height: 30px;
    -webkit-transform: scale(2, 1);
    transform: scale(2, 1);
    color: #e5e5e5;
    font-family: 'FOT-筑紫オールド明朝 Pro R','TsukuOldMinPro-R';
    position: absolute;
    top: 35px;
    height: 30px;
    width: 32px; }

.pswp__button--arrow--left:before, .pswp__button--arrow--left:after {
  content: '←';
  left: 1em;
  background-image: none !important; }

.pswp__button--arrow--left:after {
  opacity: 0;
  left: 2em; }

.pswp__button--arrow--left:hover:after {
  -webkit-animation: arrowafter-left .5s;
          animation: arrowafter-left .5s; }

.pswp__button--arrow--left:hover:before {
  -webkit-animation: arrowbefore-left .5s;
          animation: arrowbefore-left .5s; }

.pswp__button--arrow--right:before, .pswp__button--arrow--right:after {
  content: '→';
  right: 1em;
  background-image: none !important; }

.pswp__button--arrow--right:after {
  opacity: 0;
  right: 2em; }

.pswp__button--arrow--right:hover:after {
  -webkit-animation: arrowafter-right .5s;
          animation: arrowafter-right .5s; }

.pswp__button--arrow--right:hover:before {
  -webkit-animation: arrowbefore-right .5s;
          animation: arrowbefore-right .5s; }

.pswp__button--close {
  background: none !important; }
  .pswp__button--close:before, .pswp__button--close:after {
    content: "";
    width: 20px;
    height: 1px;
    background-color: #fff;
    display: block;
    position: absolute;
    left: 12px; }
  .pswp__button--close:before {
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg); }
  .pswp__button--close:after {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg); }

.mce-content-body {
  margin: 24px;
  background: #fff; }

.use-editor,
.use-editor--dark,
.mce-content-body {
  zoom: 1;
  word-wrap: break-word;
  line-height: 1.75; }
  .use-editor:before, .use-editor:after,
  .use-editor--dark:before,
  .use-editor--dark:after,
  .mce-content-body:before,
  .mce-content-body:after {
    content: "";
    display: table; }
  .use-editor:after,
  .use-editor--dark:after,
  .mce-content-body:after {
    clear: both; }
  .use-editor h1,
  .use-editor h2,
  .use-editor h3,
  .use-editor h4,
  .use-editor h5,
  .use-editor h6,
  .use-editor--dark h1,
  .use-editor--dark h2,
  .use-editor--dark h3,
  .use-editor--dark h4,
  .use-editor--dark h5,
  .use-editor--dark h6,
  .mce-content-body h1,
  .mce-content-body h2,
  .mce-content-body h3,
  .mce-content-body h4,
  .mce-content-body h5,
  .mce-content-body h6 {
    clear: both;
    line-height: 1.4;
    font-weight: bold; }
  .use-editor h1, .use-editor h2, .use-editor h3, .use-editor h4, .use-editor h5, .use-editor h6,
  .use-editor--dark h1,
  .use-editor--dark h2,
  .use-editor--dark h3,
  .use-editor--dark h4,
  .use-editor--dark h5,
  .use-editor--dark h6,
  .mce-content-body h1,
  .mce-content-body h2,
  .mce-content-body h3,
  .mce-content-body h4,
  .mce-content-body h5,
  .mce-content-body h6 {
    margin-top: .8em;
    margin-bottom: .2em; }
  .use-editor h1,
  .use-editor--dark h1,
  .mce-content-body h1 {
    font-size: 1.8em; }
  .use-editor h2,
  .use-editor--dark h2,
  .mce-content-body h2 {
    font-size: 1.6em; }
  .use-editor h3,
  .use-editor--dark h3,
  .mce-content-body h3 {
    font-size: 1.4em; }
  .use-editor h4,
  .use-editor--dark h4,
  .mce-content-body h4 {
    font-size: 1.2em; }
  .use-editor h5,
  .use-editor--dark h5,
  .mce-content-body h5 {
    font-size: 1em; }
  .use-editor h6,
  .use-editor--dark h6,
  .mce-content-body h6 {
    font-size: 1em; }
  .use-editor hr,
  .use-editor--dark hr,
  .mce-content-body hr {
    margin-top: 15px;
    margin-bottom: 15px;
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #999;
    margin-top: 22.5px;
    margin-bottom: 22.5px;
    padding: 0; }
    .use-editor hr:first-child,
    .use-editor--dark hr:first-child,
    .mce-content-body hr:first-child {
      margin-top: 0; }
    .use-editor hr:last-child,
    .use-editor--dark hr:last-child,
    .mce-content-body hr:last-child {
      margin-bottom: 0; }
  .use-editor p,
  .use-editor--dark p,
  .mce-content-body p {
    margin-top: 15px;
    margin-bottom: 15px; }
  .use-editor b, .use-editor strong,
  .use-editor--dark b,
  .use-editor--dark strong,
  .mce-content-body b,
  .mce-content-body strong {
    font-weight: bold; }
  .use-editor em,
  .use-editor--dark em,
  .mce-content-body em {
    font-weight: normal;
    font-style: italic; }
  .use-editor i,
  .use-editor--dark i,
  .mce-content-body i {
    font-style: italic;
    font-weight: normal; }
  .use-editor ul,
  .use-editor--dark ul,
  .mce-content-body ul {
    padding-left: 2em;
    list-style: circle outside; }
  .use-editor ol,
  .use-editor--dark ol,
  .mce-content-body ol {
    padding-left: 2em;
    list-style: decimal outside; }
  .use-editor dt,
  .use-editor--dark dt,
  .mce-content-body dt {
    font-weight: bold;
    margin-top: 2em;
    margin-bottom: .5em; }
  .use-editor dd,
  .use-editor--dark dd,
  .mce-content-body dd {
    margin-bottom: 1em; }
  .use-editor cite,
  .use-editor--dark cite,
  .mce-content-body cite {
    font-style: italic; }
  .use-editor blockquote,
  .use-editor--dark blockquote,
  .mce-content-body blockquote {
    position: relative;
    margin-top: 15px;
    margin-bottom: 15px;
    line-height: 1.6;
    font-style: normal;
    border-left: 1px solid #999;
    padding-left: 1em; }
  .use-editor u,
  .use-editor--dark u,
  .mce-content-body u {
    text-decoration: none; }
  .use-editor ins,
  .use-editor--dark ins,
  .mce-content-body ins {
    background: #ff9;
    border: none;
    color: #000;
    text-decoration: none; }
  .use-editor sub,
  .use-editor sup,
  .use-editor--dark sub,
  .use-editor--dark sup,
  .mce-content-body sub,
  .mce-content-body sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline; }
  .use-editor sup,
  .use-editor--dark sup,
  .mce-content-body sup {
    top: -0.5em; }
  .use-editor sub,
  .use-editor--dark sub,
  .mce-content-body sub {
    bottom: -0.25em; }
  .use-editor abbr[title],
  .use-editor--dark abbr[title],
  .mce-content-body abbr[title] {
    border-bottom: 1px dotted; }
  .use-editor address,
  .use-editor--dark address,
  .mce-content-body address {
    font-style: italic; }
    .use-editor address > p,
    .use-editor--dark address > p,
    .mce-content-body address > p {
      margin-top: 0;
      margin-bottom: 0; }
  .use-editor code,
  .use-editor kbd,
  .use-editor pre,
  .use-editor samp,
  .use-editor--dark code,
  .use-editor--dark kbd,
  .use-editor--dark pre,
  .use-editor--dark samp,
  .mce-content-body code,
  .mce-content-body kbd,
  .mce-content-body pre,
  .mce-content-body samp {
    font-size: 90%; }
  .use-editor pre,
  .use-editor--dark pre,
  .mce-content-body pre {
    color: #fff;
    background: #000;
    -webkit-font-smoothing: subpixel-antialiased;
    -moz-osx-font-smoothing: auto;
    overflow: auto;
    padding: 20px;
    white-space: pre;
    white-space: pre-wrap;
    word-wrap: break-word; }
  .use-editor a,
  .use-editor--dark a,
  .mce-content-body a {
    color: inherit;
    font-weight: normal;
    text-decoration: underline;
    transition: color 0.35s all ease-out; }
    .use-editor a:hover,
    .use-editor--dark a:hover,
    .mce-content-body a:hover {
      color: #999; }
  .use-editor .alignleft,
  .use-editor--dark .alignleft,
  .mce-content-body .alignleft {
    float: left;
    margin-left: 1em;
    margin-right: 1em;
    margin-bottom: 1em; }
  .use-editor .alignright,
  .use-editor--dark .alignright,
  .mce-content-body .alignright {
    float: right;
    margin-left: 1em;
    margin-right: 1em;
    margin-bottom: 1em; }
  .use-editor .aligncenter,
  .use-editor--dark .aligncenter,
  .mce-content-body .aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto; }
  .use-editor p img.alignleft,
  .use-editor--dark p img.alignleft,
  .mce-content-body p img.alignleft {
    margin-left: 0; }
  .use-editor p img.alignright,
  .use-editor--dark p img.alignright,
  .mce-content-body p img.alignright {
    margin-right: 0; }
  .use-editor table,
  .use-editor--dark table,
  .mce-content-body table {
    border-collapse: collapse;
    border-spacing: 0;
    margin-top: 15px;
    margin-bottom: 15px;
    max-width: 100%; }
  .use-editor caption,
  .use-editor th,
  .use-editor td,
  .use-editor--dark caption,
  .use-editor--dark th,
  .use-editor--dark td,
  .mce-content-body caption,
  .mce-content-body th,
  .mce-content-body td {
    font-weight: normal;
    text-align: left; }
  .use-editor caption,
  .use-editor--dark caption,
  .mce-content-body caption {
    margin: 0 0 .5em; }
  .use-editor img,
  .use-editor--dark img,
  .mce-content-body img {
    max-width: 100%;
    display: block;
    height: auto;
    vertical-align: middle; }
  .use-editor img + img,
  .use-editor--dark img + img,
  .mce-content-body img + img {
    margin-top: 15px; }
  .use-editor .wp-caption,
  .use-editor--dark .wp-caption,
  .mce-content-body .wp-caption {
    float: none;
    width: auto !important;
    max-width: 100%;
    border: none;
    margin-top: 15px;
    margin-left: auto;
    margin-bottom: 15px;
    margin-right: auto;
    padding: 0;
    background: transparent;
    text-align: center;
    zoom: 1; }
    .use-editor .wp-caption:before, .use-editor .wp-caption:after,
    .use-editor--dark .wp-caption:before,
    .use-editor--dark .wp-caption:after,
    .mce-content-body .wp-caption:before,
    .mce-content-body .wp-caption:after {
      content: "";
      display: table; }
    .use-editor .wp-caption:after,
    .use-editor--dark .wp-caption:after,
    .mce-content-body .wp-caption:after {
      clear: both; }
    .use-editor .wp-caption img,
    .use-editor--dark .wp-caption img,
    .mce-content-body .wp-caption img {
      display: inline-block; }
  .use-editor .wp-caption-text,
  .use-editor .wp-caption-dd,
  .use-editor--dark .wp-caption-text,
  .use-editor--dark .wp-caption-dd,
  .mce-content-body .wp-caption-text,
  .mce-content-body .wp-caption-dd {
    width: auto;
    text-align: center;
    color: #707070;
    font-size: 90%;
    font-weight: normal;
    line-height: 1.6;
    padding: 0;
    margin: .8em 0 0 0; }
  .use-editor .wp-caption.aligncenter,
  .use-editor--dark .wp-caption.aligncenter,
  .mce-content-body .wp-caption.aligncenter {
    text-align: center;
    margin-left: auto;
    margin-right: auto; }
  .use-editor .wp-caption.alignleft,
  .use-editor--dark .wp-caption.alignleft,
  .mce-content-body .wp-caption.alignleft {
    text-align: left; }
    .use-editor .wp-caption.alignleft .wp-caption-text,
    .use-editor--dark .wp-caption.alignleft .wp-caption-text,
    .mce-content-body .wp-caption.alignleft .wp-caption-text {
      text-align: left; }
  .use-editor .wp-caption.alignright,
  .use-editor--dark .wp-caption.alignright,
  .mce-content-body .wp-caption.alignright {
    text-align: right; }
    .use-editor .wp-caption.alignright .wp-caption-dt,
    .use-editor .wp-caption.alignright .wp-caption-dd,
    .use-editor .wp-caption.alignright .wp-caption-text,
    .use-editor--dark .wp-caption.alignright .wp-caption-dt,
    .use-editor--dark .wp-caption.alignright .wp-caption-dd,
    .use-editor--dark .wp-caption.alignright .wp-caption-text,
    .mce-content-body .wp-caption.alignright .wp-caption-dt,
    .mce-content-body .wp-caption.alignright .wp-caption-dd,
    .mce-content-body .wp-caption.alignright .wp-caption-text {
      text-align: right; }
  .use-editor .wp-caption-dt,
  .use-editor--dark .wp-caption-dt,
  .mce-content-body .wp-caption-dt {
    margin: 0; }
  .use-editor p + img,
  .use-editor p + .wp-caption,
  .use-editor--dark p + img,
  .use-editor--dark p + .wp-caption,
  .mce-content-body p + img,
  .mce-content-body p + .wp-caption {
    margin-top: 2em; }
  .use-editor .wp-caption + p,
  .use-editor img + p,
  .use-editor--dark .wp-caption + p,
  .use-editor--dark img + p,
  .mce-content-body .wp-caption + p,
  .mce-content-body img + p {
    margin-top: 2em; }
  .use-editor .mceTemp + ul,
  .use-editor .mceTemp + ol,
  .use-editor--dark .mceTemp + ul,
  .use-editor--dark .mceTemp + ol,
  .mce-content-body .mceTemp + ul,
  .mce-content-body .mceTemp + ol {
    list-style-position: inside; }
  .use-editor iframe,
  .use-editor video,
  .use-editor--dark iframe,
  .use-editor--dark video,
  .mce-content-body iframe,
  .mce-content-body video {
    max-width: 100%;
    border: 0; }
  .use-editor .u-video-responsive,
  .use-editor--dark .u-video-responsive,
  .mce-content-body .u-video-responsive {
    position: relative; }
    .use-editor .u-video-responsive:before,
    .use-editor--dark .u-video-responsive:before,
    .mce-content-body .u-video-responsive:before {
      content: "";
      display: block;
      padding-top: 56.25%; }
    .use-editor .u-video-responsive iframe,
    .use-editor .u-video-responsive video,
    .use-editor--dark .u-video-responsive iframe,
    .use-editor--dark .u-video-responsive video,
    .mce-content-body .u-video-responsive iframe,
    .mce-content-body .u-video-responsive video {
      position: absolute;
      left: 0;
      top: 0;
      width: 100% !important;
      height: 100% !important; }

.contact-txt {
  text-align: center;
  font-size: 16px;
  margin: 70px 0;
  line-height: 1.5; }
  .contact-txt a {
    color: #977d3d;
    text-decoration: underline;
    display: inline-block; }

.contact-wrap {
  max-width: 1008px;
  margin: 120px auto; }
  .contact-wrap .contact-ttl__block {
    overflow: hidden;
    border-bottom: 1px solid #434343;
    padding: 1em 0;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    margin-bottom: 40px; }
  .contact-wrap .contact-ttl {
    float: left;
    color: #929190;
    font-size: 20px; }
  .contact-wrap .contact-ttl-notice {
    float: right;
    font-size: 12px; }
  .contact-wrap #mfp_phase_confirm {
    display: none; }
  .contact-wrap .contact-flow {
    text-align: center;
    max-width: 620px;
    width: 100%;
    display: block;
    margin: 0 auto 100px; }
  .contact-wrap .contact-flow-diamond {
    margin-bottom: 1em; }
  .contact-wrap .diamond {
    position: relative;
    width: 30%;
    display: inline-block; }
    .contact-wrap .diamond:after {
      content: "";
      width: 22px;
      height: 13px;
      background-image: url(../images/icon_diamond.png);
      display: inline-block;
      position: relative;
      z-index: 2; }
  .contact-wrap .diamond.current:after {
    background-image: url(../images/icon_diamond_w.png); }
  .contact-wrap span.diamond + span.diamond:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 1px;
    background-color: #434343;
    left: -50%;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
  .contact-wrap ul.contact-flow-list {
    font-size: 14px;
    list-style: none; }
    .contact-wrap ul.contact-flow-list li {
      display: inline-block;
      width: 30%;
      color: #929190;
      height: 100%;
      vertical-align: middle; }
    .contact-wrap ul.contact-flow-list li.current {
      color: #fff; }
  @media (max-width: 767px) {
    .contact-wrap {
      margin: 70px auto; }
      .contact-wrap .contact-ttl__block {
        margin-bottom: 20px; }
      .contact-wrap .contact-ttl {
        font-size: 16px; }
      .contact-wrap .contact-flow {
        margin-bottom: 70px; }
      .contact-wrap ul.contact-flow-list {
        font-size: 12px; } }

ul.sld-nav-list.sld-nav-list--contact li {
  width: 25%; }

@media (max-width: 767px) {
  ul.sld-nav-list.sld-nav-list--contact {
    font-size: 14px; }
    ul.sld-nav-list.sld-nav-list--contact li {
      width: 50%; } }

.contact-thanks-message {
  text-align: center;
  font-size: 20px;
  line-height: 3; }
  @media (max-width: 767px) {
    .contact-thanks-message {
      font-size: 13px; } }

/*------
　faq
------*/
.section-faq {
  margin-bottom: 72px; }

.section-faq__ttl {
  text-align: center;
  font-size: 30px;
  line-height: 1.2;
  margin-bottom: 20px; }
  @media (max-width: 767px) {
    .section-faq__ttl {
      font-size: 24px; } }

ul.faq-list li {
  list-style: none;
  background-color: #1e1b16;
  padding: 25px 40px;
  margin-bottom: 10px; }

ul.faq-list .faq__head {
  display: table-cell;
  vertical-align: middle;
  width: 90px;
  text-align: center;
  font-size: 36px; }

ul.faq-list .faq__question {
  display: table;
  margin-bottom: 25px;
  color: #e5e5e5; }

ul.faq-list .faq__answer {
  display: table;
  background-color: #17140e;
  width: 100%;
  padding: 30px 0; }

ul.faq-list .faq__ttl {
  display: table-cell;
  vertical-align: middle;
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0.1em; }

ul.faq-list .faq__text {
  display: table-cell;
  vertical-align: middle;
  line-height: 1.9;
  color: #a5a39e;
  padding: 0 40px 0 4px; }

@media (max-width: 767px) {
  ul.faq-list li {
    padding: 15px; }
  ul.faq-list .faq__head {
    width: 50px;
    font-size: 29px; }
  ul.faq-list .faq__question {
    margin-bottom: 15px; }
  ul.faq-list .faq__answer {
    padding: 15px 0; }
  ul.faq-list .faq__ttl {
    font-size: 16px; }
  ul.faq-list .faq__text {
    padding-right: 1em; } }
