@charset "UTF-8";
/* ------------------------------------------------
 * Mixin for center - 要素中央配置する
 * @include center(xy); // 中央
 * @include center(x);  // 横中央
 * @include center(y);  // 縦中央
 ------------------------------------------------ */
/* ------------------------------------------------

 * transition - フェードイン効果を追加する
 * @include transition;

 ------------------------------------------------ */
/* ------------------------------------------------

 * opacity - 透過効果を追加する
 * @include opacity;

 ------------------------------------------------ */
/* ------------------------------------------------

 * visible / hidden - 表示・非表示の切り替えをする
 * @include display(DV-visible); // 要素を表示
 * @include display(DV-hidden);  // 要素を非表示
 * @include display(V-visible);  // ボックスを表示
 * @include display(V-hidden);   // ボックスを非表示

 ------------------------------------------------ */
/* ------------------------------------------------

 * font-family - フォントの指定をする
 * @include font(gothic); // ゴシック
 * @include font(mincho); // 明朝

 ------------------------------------------------ */
html, body, div, span, iframe, h1, h2, h3, h4, h5, h6, p, img, strong, i, dl, dt, dd, ol, ul, li, form, label, table, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, menu, nav, section, select, button {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0; }

body {
  line-height: 0; }

footer, header, menu, nav, section, aside, figure {
  display: block; }

.ul, .ol {
  list-style: none; }

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

img {
  width: 100%;
  height: auto;
  vertical-align: bottom; }

/*------------------------------------
 clearfix
------------------------------------*/
.clearfix::before,
.clearfix::after {
  content: "";
  display: table; }

.clearfix::after {
  clear: both; }

.clearfix {
  *zoom: 1; }

body {
  width: 100%;
  height: 100%;
  color: #1a1a1a;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  font-weight: 500;
  font-size: 108%;
  font-weight: normal;
  line-height: 1;
  -webkit-text-size-adjust: none; }
  @media only screen and (max-width: 1000px) {
    body {
      font-size: 93%; } }
  @media only screen and (max-width: 767px) {
    body {
      font-size: 85%; } }

#wrapper,
#header,
#container,
#footer {
  width: 100%; }

#wrapper {
  position: relative;
  overflow: hidden; }

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

/* -----------------------------------
 * common
 ----------------------------------- */
/* タイトル　*/
.ttl-area {
  margin: 0 auto 40px; }

/* テキスト　*/
.txt-area {
  font-family: "Hannari", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: 500;
  text-align: center;
  line-height: 3; }
  .txt-area .tel {
    color: #1a1a1a;
    text-decoration: none;
    pointer-events: none; }
    @media only screen and (max-width: 767px) {
      .txt-area .tel {
        text-decoration: underline;
        pointer-events: auto; } }
  @media only screen and (max-width: 767px) {
    .txt-area {
      display: none;
      visibility: hidden; } }

.txt-area-sp {
  font-family: "Hannari", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: 500;
  text-align: justify;
  line-height: 3;
  display: none;
  visibility: hidden; }
  .txt-area-sp .tel {
    color: #1a1a1a;
    text-decoration: none;
    pointer-events: none; }
    @media only screen and (max-width: 767px) {
      .txt-area-sp .tel {
        text-decoration: underline;
        pointer-events: auto; } }
  @media only screen and (max-width: 767px) {
    .txt-area-sp {
      display: block;
      visibility: visible; } }

/* 背景 */
.bg_concrete {
  background: url("../../img/common/bg_concrete.jpg") no-repeat top center;
  background-size: cover; }

.bg_wood {
  background: url("../../img/common/bg_wood.jpg") no-repeat top center;
  background-size: cover; }

/* -----------------------------------
 * container
 ----------------------------------- */
.sec .inner {
  width: 1000px;
  margin: 0 auto;
  padding: 130px 0; }
  @media only screen and (max-width: 1000px) {
    .sec .inner {
      width: 100%;
      padding: 80px 40px; } }

/* トップページへ戻るボタン */
#btn-top {
  display: block;
  position: fixed;
  right: 30px;
  bottom: 30px;
  z-index: 999; }
  @media only screen and (max-width: 1000px) {
    #btn-top {
      display: none;
      visibility: hidden; } }
  #btn-top i {
    color: #1a1a1a;
    font-size: 60px; }
  #btn-top:hover {
    opacity: 0.7;
    -webkit-transition: 0.2s ease;
    -moz-transition: 0.2s ease;
    -ms-transition: 0.2s ease;
    -o-transition: 0.2s ease;
    transition: 0.2s ease; }
    @media only screen and (max-width: 1000px) {
      #btn-top:hover {
        opacity: 0; } }

#footer {
  padding: 15px;
  background-color: #E8380D;
  color: #fff;
  text-align: center;
  font-size: 77%; }

#header {
  display: flex;
  flex-flow: wrap;
  position: relative;
  justify-content: space-between;
  -webkit-transition: 0.2s ease;
  -moz-transition: 0.2s ease;
  -ms-transition: 0.2s ease;
  -o-transition: 0.2s ease;
  transition: 0.2s ease; }
  @media only screen and (max-width: 1000px) {
    #header {
      display: block;
      align-content: normal; } }
  #header.action .btn-toggle .hambarg-wrap span {
    background-color: #1a1a1a;
    -webkit-transition: 0.2s ease;
    -moz-transition: 0.2s ease;
    -ms-transition: 0.2s ease;
    -o-transition: 0.2s ease;
    transition: 0.2s ease; }
  #header .btn-toggle {
    display: inline-block;
    position: fixed;
    top: 20px;
    right: 10px;
    text-align: center;
    background-color: transparent;
    -webkit-transition: 0.2s ease;
    -moz-transition: 0.2s ease;
    -ms-transition: 0.2s ease;
    -o-transition: 0.2s ease;
    transition: 0.2s ease;
    z-index: 999999; }
    #header .btn-toggle span {
      display: inline-block;
      text-align: center;
      -webkit-transition: 0.2s ease;
      -moz-transition: 0.2s ease;
      -ms-transition: 0.2s ease;
      -o-transition: 0.2s ease;
      transition: 0.2s ease; }
  #header .hambarg-wrap {
    position: relative;
    width: 25px;
    height: 25px;
    margin: 7.5px;
    background: none; }
    #header .hambarg-wrap span {
      position: absolute;
      left: 0;
      width: 100%;
      height: 2px;
      background-color: #fff;
      border-radius: 4px; }
      #header .hambarg-wrap span:nth-of-type(1) {
        top: 0; }
      #header .hambarg-wrap span:nth-of-type(2) {
        top: 48%; }
      #header .hambarg-wrap span:nth-of-type(3) {
        bottom: 0; }
  #header .menu-area .menu-wrap {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    margin: 0;
    background-color: #1a1a1a;
    overflow-y: scroll;
    z-index: 99999; }
    #header .menu-area .menu-wrap ul {
      position: absolute;
      margin: 0;
      width: 80%;
      left: 50%;
      top: 50%;
      bottom: auto;
      right: auto;
      transform: translateX(-50%) translateY(-50%); }
      #header .menu-area .menu-wrap ul li {
        width: 100%;
        margin-top: 50px;
        text-align: center; }
        @media only screen and (max-width: 767px) {
          #header .menu-area .menu-wrap ul li {
            margin-top: 30px; } }
        #header .menu-area .menu-wrap ul li:nth-child(1) {
          margin-top: 0; }
        #header .menu-area .menu-wrap ul li a {
          color: #fec664;
          font-size: 250%;
          font-family: "Hannari", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
          font-weight: 500;
          text-transform: capitalize;
          text-decoration: none;
          letter-spacing: 0.1em;
          -webkit-transition: 0.2s ease;
          -moz-transition: 0.2s ease;
          -ms-transition: 0.2s ease;
          -o-transition: 0.2s ease;
          transition: 0.2s ease; }
          @media only screen and (max-width: 767px) {
            #header .menu-area .menu-wrap ul li a {
              font-size: 123.1%; } }
          #header .menu-area .menu-wrap ul li a:hover {
            color: #fff; }
            @media only screen and (max-width: 767px) {
              #header .menu-area .menu-wrap ul li a:hover {
                color: #fec664; } }
  #header .menu-area.active .hambarg-wrap span:nth-of-type(1) {
    -webkit-transform: translateY(11px) rotate(45deg);
    transform: translateY(11px) rotate(45deg); }
  #header .menu-area.active .hambarg-wrap span:nth-of-type(2) {
    opacity: 0; }
  #header .menu-area.active .hambarg-wrap span:nth-of-type(3) {
    -webkit-transform: translateY(-12px) rotate(-45deg);
    transform: translateY(-12px) rotate(-45deg); }
  #header .sns-area {
    display: table;
    position: absolute;
    top: 30px;
    left: 30px;
    z-index: 9999; }
    #header .sns-area li {
      display: table-cell; }
      #header .sns-area li:nth-child(2) {
        padding-left: 15px; }
      #header .sns-area li a {
        display: block;
        color: #fff;
        font-size: 40px;
        text-decoration: none;
        -webkit-transition: 0.2s ease;
        -moz-transition: 0.2s ease;
        -ms-transition: 0.2s ease;
        -o-transition: 0.2s ease;
        transition: 0.2s ease; }
        #header .sns-area li a:hover {
          opacity: 0.7; }

/* -----------------------------------
 * concept
 ----------------------------------- */
.sec-concept .ttl-area {
  width: 194px; }
  @media only screen and (max-width: 767px) {
    .sec-concept .ttl-area {
      width: 140px; } }
  .sec-concept .ttl-area span {
    display: block;
    margin-top: 10px;
    font-family: "Hannari", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-weight: 500;
    font-size: 77%;
    text-align: center; }
.sec-concept .txt-area {
  font-size: 85%; }

/* -----------------------------------
 * shopinfo / info
 ----------------------------------- */
.sec-shopinfo {
  background: url("../../img/top/top_bg_shoplist.jpg") no-repeat center;
  background-attachment: fixed;
  background-size: cover; }
  @media only screen and (max-width: 767px) {
    .sec-shopinfo {
      background-attachment: scroll; } }
  .sec-shopinfo .inner {
    position: relative;
    width: 100%;
    padding: 260px 0; }
    @media only screen and (max-width: 1000px) {
      .sec-shopinfo .inner {
        padding: 210px 0; } }
    @media only screen and (max-width: 767px) {
      .sec-shopinfo .inner {
        padding: 160px 0; } }
    .sec-shopinfo .inner .ttl-area {
      position: absolute;
      width: 159px;
      left: 50%;
      top: 50%;
      bottom: auto;
      right: auto;
      transform: translateX(-50%) translateY(-50%); }

.sec-info {
  background: url("../../img/pages/top_bg_shoplist.jpg") no-repeat center;
  background-attachment: fixed;
  background-size: cover; }
  @media only screen and (max-width: 767px) {
    .sec-info {
      background-attachment: scroll; } }
  .sec-info .logo_muku {
    display: block;
    margin: 0 auto;
    text-align: center; }
  .sec-info .logo-main {
    width: 195px; }
    @media only screen and (max-width: 767px) {
      .sec-info .logo-main {
        width: 150px; } }
  .sec-info .logo-y-muku {
    width: 90%;
    max-width: 120px; }
  .sec-info .logo-muku {
    width: 150px; }
  .sec-info .txt-area {
    margin-top: 40px; }
    @media only screen and (max-width: 767px) {
      .sec-info .txt-area {
        display: block;
        visibility: visible; } }
    .sec-info .txt-area p {
      color: #fff; }
      .sec-info .txt-area p a {
        color: #fff; }
  .sec-info .shop-info-data {
    display: flex;
    flex-flow: wrap;
    position: relative;
    justify-content: space-between;
    margin: 50px auto 0;
    width: 850px; }
    @media only screen and (max-width: 1000px) {
      .sec-info .shop-info-data {
        width: auto; } }
    @media only screen and (max-width: 767px) {
      .sec-info .shop-info-data {
        display: block; } }
    .sec-info .shop-info-data .box {
      width: 400px;
      padding: 30px;
      background-color: rgba(255, 255, 255, 0.8);
      font-family: "Hannari", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
      font-weight: 500;
      text-align: center; }
      @media only screen and (max-width: 1000px) {
        .sec-info .shop-info-data .box {
          width: 48%; } }
      @media only screen and (max-width: 767px) {
        .sec-info .shop-info-data .box {
          width: 100%;
          padding: 20px; }
          .sec-info .shop-info-data .box:nth-child(2) {
            margin-top: 20px; } }
      .sec-info .shop-info-data .box strong {
        display: block;
        margin-bottom: 15px;
        font-size: 116%; }
        .sec-info .shop-info-data .box strong:before {
          content: '♦︎';
          margin-right: 2px; }
        .sec-info .shop-info-data .box strong:after {
          content: '♦︎';
          margin-left: 2px; }
      .sec-info .shop-info-data .box p {
        text-align: center;
        line-height: 1.7; }

#map {
  width: 850px;
  height: 400px;
  margin: 50px auto 0; }
  @media only screen and (max-width: 1000px) {
    #map {
      width: auto; } }
  @media only screen and (max-width: 767px) {
    #map {
      height: 300px; } }
  #map .gmnoprint {
    position: relative !important; }
  #map div {
    top: 0; }
    #map div img {
      width: auto; }

/* -----------------------------------
 * reservation
 ----------------------------------- */
.sec-reservation .ttl-area {
  width: 190px; }
  @media only screen and (max-width: 767px) {
    .sec-reservation .ttl-area {
      width: 130px; } }
.sec-reservation .yoyaku-area {
  width: 1000px;
  margin-top: 50px;
  /*background-color: $gray;*/ }
  @media only screen and (max-width: 1000px) {
    .sec-reservation .yoyaku-area {
      width: auto; } }
  .sec-reservation .yoyaku-area iframe {
    max-width: 1000px;
    width: 95%;
    text-align: center; }

dl.btn-yoyaku {
  display: table;
  margin: 30px auto 0;
  font-family: "Hannari", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: 500; }
  dl.btn-yoyaku dt {
    display: table-cell; }
    dl.btn-yoyaku dt:after {
      content: "▶︎";
      margin-right: 5px; }
  dl.btn-yoyaku dd {
    display: table-cell; }
    dl.btn-yoyaku dd a {
      color: #1a1a1a;
      -webkit-transition: 0.2s ease;
      -moz-transition: 0.2s ease;
      -ms-transition: 0.2s ease;
      -o-transition: 0.2s ease;
      transition: 0.2s ease; }
      dl.btn-yoyaku dd a:hover {
        opacity: 0.7; }
        @media only screen and (max-width: 1000px) {
          dl.btn-yoyaku dd a:hover {
            opacity: 1; } }

/* -----------------------------------
 * recruit / info
 ----------------------------------- */
.sec-recruit {
  background: url("../../img/top/top_bg_recruit.jpg") no-repeat center;
  background-attachment: fixed;
  background-size: cover; }
  @media only screen and (max-width: 767px) {
    .sec-recruit {
      background-attachment: scroll; } }
  .sec-recruit .inner {
    position: relative;
    width: 100%;
    padding: 260px 0; }
    @media only screen and (max-width: 1000px) {
      .sec-recruit .inner {
        padding: 210px 0; } }
    @media only screen and (max-width: 767px) {
      .sec-recruit .inner {
        padding: 160px 0; } }
    .sec-recruit .inner .ttl-area {
      position: absolute;
      width: 159px;
      left: 50%;
      top: 50%;
      bottom: auto;
      right: auto;
      transform: translateX(-50%) translateY(-50%); }

.sec-recruit-info p {
  text-align: center;
  margin-bottom: 30px;
  line-height: 2em; }
.sec-recruit-info .entry-area .form {
  width: 100%;
  border-bottom: 1px solid #ccc; }
.sec-recruit-info .entry-area th {
  padding: 20px;
  text-align: left;
  border-top: 1px solid #ccc; }
  @media only screen and (max-width: 767px) {
    .sec-recruit-info .entry-area th {
      display: block; } }
.sec-recruit-info .entry-area td {
  padding: 20px;
  text-align: left;
  border-top: 1px solid #ccc; }
  @media only screen and (max-width: 767px) {
    .sec-recruit-info .entry-area td {
      display: block; } }
.sec-recruit-info .entry-area .btn {
  display: block;
  width: 200px;
  margin: 50px auto 0;
  padding: 20px;
  background-color: #1a1a1a;
  color: #fff;
  font-size: 85%;
  text-align: center;
  -webkit-transition: 0.2s ease;
  -moz-transition: 0.2s ease;
  -ms-transition: 0.2s ease;
  -o-transition: 0.2s ease;
  transition: 0.2s ease; }
  .sec-recruit-info .entry-area .btn:hover {
    opacity: 0.7; }
    @media only screen and (max-width: 1000px) {
      .sec-recruit-info .entry-area .btn:hover {
        opacity: 1; } }

/* -----------------------------------
 * common
 ----------------------------------- */
/* スライダー　*/
.slider-wrap {
  position: relative;
  overflow: hidden; }
  .slider-wrap .muku_slider {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100vw;
    height: 100vh;
    background-position: center center;
    background-size: cover; }
    @media only screen and (max-width: 767px) {
      .slider-wrap .muku_slider {
        display: none;
        visibility: hidden; } }
  .slider-wrap .main-ttl_y-muku {
    position: absolute;
    width: 95%;
    max-width: 120px;
    left: 50%;
    top: 50%;
    bottom: auto;
    right: auto;
    transform: translateX(-50%) translateY(-50%); }
  .slider-wrap .main-ttl_muku {
    position: absolute;
    width: 150px;
    left: 50%;
    top: 50%;
    bottom: auto;
    right: auto;
    transform: translateX(-50%) translateY(-50%); }

/* images */
.sec-images {
  display: flex;
  flex-flow: wrap;
  position: relative;
  justify-content: space-between;
  width: 100%; }
  @media only screen and (max-width: 1000px) {
    .sec-images {
      display: block;
      align-content: normal; } }
  .sec-images .left {
    width: 50%; }
    @media only screen and (max-width: 1000px) {
      .sec-images .left {
        width: 100%; } }
  .sec-images .right {
    width: 50%; }
    @media only screen and (max-width: 1000px) {
      .sec-images .right {
        width: 100%; } }

/* menuinfo */
.sec-menuinfo .menu-list {
  padding: 30px;
  border-bottom: 1px solid #ccc; }
  @media only screen and (max-width: 767px) {
    .sec-menuinfo .menu-list {
      padding: 10px; } }
  .sec-menuinfo .menu-list dl {
    display: table;
    width: 100%;
    padding: 10px;
    font-family: "Hannari", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-weight: 500; }
    .sec-menuinfo .menu-list dl dt {
      display: table-cell;
      font-size: 138.5%;
      font-weight: normal;
      line-height: 1.7; }
      @media only screen and (max-width: 767px) {
        .sec-menuinfo .menu-list dl dt {
          font-size: 123.1%; } }
    .sec-menuinfo .menu-list dl dd {
      display: table-cell;
      padding-left: 30px;
      text-align: right;
      font-size: 116%; }
.sec-menuinfo .two-rows dl {
  float: left;
  width: 48%; }
  @media only screen and (max-width: 767px) {
    .sec-menuinfo .two-rows dl {
      float: none;
      width: 100%; } }
  .sec-menuinfo .two-rows dl:nth-child(even) {
    margin-left: 2%; }
    @media only screen and (max-width: 767px) {
      .sec-menuinfo .two-rows dl:nth-child(even) {
        margin-left: 0; } }
  .sec-menuinfo .two-rows dl dt {
    display: table-cell;
    font-size: 123.1%;
    font-weight: normal; }

/* -----------------------------------
 * 1F
 ----------------------------------- */
/* menu */
.sec-y-menu {
  background: url("../../img/pages/pages_bg_menu.jpg") no-repeat center;
  background-attachment: fixed;
  background-size: cover; }
  .sec-y-menu .inner {
    position: relative;
    width: 100%;
    padding: 260px 0; }
    @media only screen and (max-width: 1000px) {
      .sec-y-menu .inner {
        padding: 210px 0; } }
    @media only screen and (max-width: 767px) {
      .sec-y-menu .inner {
        padding: 160px 0; } }
    .sec-y-menu .inner .ttl-area {
      position: absolute;
      width: 200px;
      left: 50%;
      top: 50%;
      bottom: auto;
      right: auto;
      transform: translateX(-50%) translateY(-50%); }

/* shopinfo */
.sec-1f-shopinfo {
  background: url("../../img/pages/pages_bg_shoplist.jpg") no-repeat center;
  background-attachment: fixed;
  background-size: cover; }
  @media only screen and (max-width: 767px) {
    .sec-1f-shopinfo {
      background-attachment: scroll; } }
  .sec-1f-shopinfo .inner {
    position: relative;
    width: 100%;
    padding: 260px 0; }
    @media only screen and (max-width: 1000px) {
      .sec-1f-shopinfo .inner {
        padding: 210px 0; } }
    @media only screen and (max-width: 767px) {
      .sec-1f-shopinfo .inner {
        padding: 160px 0; } }
    .sec-1f-shopinfo .inner .ttl-area {
      position: absolute;
      width: 159px;
      left: 50%;
      top: 50%;
      bottom: auto;
      right: auto;
      transform: translateX(-50%) translateY(-50%); }

/* -----------------------------------
 * 2F
 ----------------------------------- */
/* menu */
.sec-menu {
  background: url("../../img/pages/pages_muku_bg_menu.jpg") no-repeat center;
  background-attachment: fixed;
  background-size: cover; }
  .sec-menu .inner {
    position: relative;
    width: 100%;
    padding: 260px 0; }
    @media only screen and (max-width: 1000px) {
      .sec-menu .inner {
        padding: 210px 0; } }
    @media only screen and (max-width: 767px) {
      .sec-menu .inner {
        padding: 160px 0; } }
    .sec-menu .inner .ttl-area {
      position: absolute;
      width: 106px;
      left: 50%;
      top: 50%;
      bottom: auto;
      right: auto;
      transform: translateX(-50%) translateY(-50%); }

/* shopinfo */
.sec-2f-shopinfo {
  background: url("../../img/pages/pages_muku_bg_shoplist.jpg") no-repeat center;
  background-attachment: fixed;
  background-size: cover; }
  @media only screen and (max-width: 767px) {
    .sec-2f-shopinfo {
      background-attachment: scroll; } }
  .sec-2f-shopinfo .inner {
    position: relative;
    width: 100%;
    padding: 260px 0; }
    @media only screen and (max-width: 1000px) {
      .sec-2f-shopinfo .inner {
        padding: 210px 0; } }
    @media only screen and (max-width: 767px) {
      .sec-2f-shopinfo .inner {
        padding: 160px 0; } }
    .sec-2f-shopinfo .inner .ttl-area {
      position: absolute;
      width: 159px;
      left: 50%;
      top: 50%;
      bottom: auto;
      right: auto;
      transform: translateX(-50%) translateY(-50%); }
