@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;600&family=Shippori+Mincho:wght@700&display=swap");
.clearfix:before,
.clearfix:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after {
  content: " ";
  display: table;
}

.clearfix:after,
.container:after,
.container-fluid:after,
.row:after {
  clear: both;
}

/*　////////////////////////////////
ブレイクポイント
//////////////////////////////////　*/
/*　////////////////////////////////
コンテンツマージン
//////////////////////////////////　*/
/*　////////////////////////////////
ベースフォント
//////////////////////////////////　*/
/*　////////////////////////////////
カラー
//////////////////////////////////　*/
/*　////////////////////////////////
clearfix[@extend .clearfix];
//////////////////////////////////　*/
.clearfix {
  zoom: 1;
}
.clearfix:after {
  display: block;
  content: "";
  clear: both;
}

/*　////////////////////////////////////////////////////////////////////////////////////////////////
flex include
//////////////////////////////////////////////////////////////////////////////////////////////////　*/
/*左右逆*/
/*　////////////////////////////////////////////////////////////////////////////////////////////////
初期値top:50%; left:50%;
[@include set-top();] [@include set-left();]
//////////////////////////////////////////////////////////////////////////////////////////////////　*/
/*縦中央*/
/*横中央*/
/*　////////////////////////////////
flex 設定
//////////////////////////////////　*/
/*　////////////////////////////////
三角形
//////////////////////////////////　*/
/*　////////////////////////////////
矢印
//////////////////////////////////　*/
/*　////////////////////////////////////////////////////////////////////////////////////////////////
font-size
//////////////////////////////////////////////////////////////////////////////////////////////////　*/
/*　////////////////////////////////
汎用style
//////////////////////////////////　*/
/*　////////////////////////////////
背景画像設定
//////////////////////////////////　*/
.webp .top_contents01 .img_box,
.webp .about-main .img_box {
  background-image: url("/img/webp/top_about.webp");
}
.webp .top_contents03 .img_box,
.webp .recruit-main .img_box {
  background-image: url("/img/webp/top_recruit.webp");
}
.webp .bar-main .img_box {
  background-image: url("/img/webp/top_bar.webp");
}
.webp .contact-main .img_box {
  background-image: url("/img/webp/contact.webp");
}
.webp .bg_contents {
  background-image: url("/img/webp/top_bg01.webp");
}

.no-webp .top_contents01 .img_box,
.no-webp .about-main .img_box {
  background-image: url("/img/top_about.jpg");
}
.no-webp .top_contents03 .img_box,
.no-webp .recruit-main .img_box {
  background-image: url("/img/top_recruit.jpg");
}
.no-webp .bar-main .img_box {
  background-image: url("/img/top_bar.jpg");
}
.no-webp .contact-main .img_box {
  background-image: url("/img/contac.jpg");
}
.no-webp .bg_contents {
  background-image: url("/img/top_bg01.jpg");
}

.all-wrapper {
  /*背景丸線*/
  /* メニューの丸 */
  /*------------------------
  会社概要
  -------------------------------------*/
  /*------------------------
  採用情報
  -------------------------------------*/
  /*------------------------
  BAR事業部
  -------------------------------------*/
  /*------------------------
  バーギャラリー
  -------------------------------------*/
  /*------------------------
  共通部分
  -------------------------------------*/
  /* /all-wrapper */
}
.all-wrapper .background-with-circle-a,
.all-wrapper .background-with-circle-b {
  position: relative;
}
.all-wrapper .background-with-circle-a::before,
.all-wrapper .background-with-circle-b::before {
  content: "";
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 220px; /* 線の直径 */
  height: 220px; /* 線の直径 */
  border-radius: 50%; /* 丸い形状 */
  border: 1px solid rgb(224, 224, 224); /* 線の色や太さ */
  z-index: -1; /* 背景よりも後ろに配置 */
}
.all-wrapper .background-with-circle-a::before {
  top: -20%;
  right: 50%;
}
.all-wrapper .background-with-circle-b::before {
  top: 3%;
  left: 100%;
}
.all-wrapper #head-menu .pc_left {
  position: relative;
}
.all-wrapper #head-menu span.top-text-border {
  border-radius: 50%; /* 丸い形にする */
  border: 0.5px solid rgb(0, 0, 0); /* 線のスタイルを設定 */
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); /* 上下左右の50%ずつ移動 */
  width: 70vw; /* 幅をブラウザ幅の40%に設定 */
  height: 70vw; /* 高さをブラウザ幅の40%に設定 */
  z-index: 10;
}
@media (min-width: 768px) {
  .all-wrapper #head-menu span.top-text-border {
    width: 40vw; /* 幅をブラウザ幅の40%に設定 */
    height: 40vw; /* 高さをブラウザ幅の40%に設定 */
  }
}
@media (min-width: 1220px) {
  .all-wrapper #head-menu span.top-text-border {
    width: 30vw; /* 幅をブラウザ幅の40%に設定 */
    height: 30vw; /* 高さをブラウザ幅の40%に設定 */
  }
}
.all-wrapper #head-menu .top-text {
  white-space: nowrap;
  color: #000000;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); /* 上下左右の50%ずつ移動 */
  padding: 20px;
  z-index: 15;
}
.all-wrapper #head-menu .top-text h2 {
  font-size: clamp(2rem, 1.6vw + 2.4vh, 4rem);
  line-height: 1.5;
}
.all-wrapper #head-menu .top-text span.jp {
  font-size: clamp(1.8rem, 1.2vw + 1.8vh, 3rem);
  display: block;
}
.all-wrapper #head-menu .top-text span.en {
  font-size: clamp(1.4rem, 0.72vw + 1.08vh, 1.8rem);
  display: block;
}
.all-wrapper .top_main_visual {
  margin-bottom: 60px;
  position: relative;
  text-align: center;
}
.all-wrapper .top_main_visual span.top-text-border {
  border-radius: 50%; /* 丸い形にする */
  border: 0.5px solid rgb(255, 255, 255); /* 線のスタイルを設定 */
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); /* 上下左右の50%ずつ移動 */
  width: 70vw; /* 幅をブラウザ幅の40%に設定 */
  height: 70vw; /* 高さをブラウザ幅の40%に設定 */
  z-index: 10;
  background-color: rgba(0, 0, 0, 0.5);
}
@media (min-width: 768px) {
  .all-wrapper .top_main_visual span.top-text-border {
    width: 40vw; /* 幅をブラウザ幅の40%に設定 */
    height: 40vw; /* 高さをブラウザ幅の40%に設定 */
    background-color: rgba(0, 0, 0, 0.3);
  }
}
@media (min-width: 1220px) {
  .all-wrapper .top_main_visual span.top-text-border {
    width: 30vw; /* 幅をブラウザ幅の40%に設定 */
    height: 30vw; /* 高さをブラウザ幅の40%に設定 */
  }
}
.all-wrapper .top_main_visual .top-text {
  white-space: nowrap;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); /* 上下左右の50%ずつ移動 */
  padding: 20px;
  z-index: 15;
}
.all-wrapper .top_main_visual .top-text h2 {
  font-size: clamp(2rem, 2vw + 3vh, 5rem);
  line-height: 1.5;
}
.all-wrapper .top_main_visual .top-text span.jp {
  font-size: clamp(2rem, 1.2vw + 1.8vh, 3rem);
  display: block;
}
.all-wrapper .top_main_visual .top-text span.en {
  font-size: clamp(1.4rem, 0.72vw + 1.08vh, 1.8rem);
  display: block;
}
.all-wrapper .company_news {
  max-width: 956px;
  margin: auto;
  margin-bottom: 120px;
  padding: 15px;
}
.all-wrapper .company_news .news-list ul li {
  margin-bottom: 10px;
}
.all-wrapper .company_news .news-list ul li span {
  font-size: 1.4rem;
  margin-right: 15px;
  display: block;
}
@media (min-width: 768px) {
  .all-wrapper .company_news .news-list ul li span {
    display: inline-block;
    font-size: 1.4rem;
    margin-right: 15px;
  }
}
.all-wrapper .top_contents01 {
  margin-top: 80px;
}
.all-wrapper .top_contents01 .top_half_contents .img_box {
  -webkit-clip-path: polygon(0% 10%, 100% 0, 100% 90%, 0 100%);
          clip-path: polygon(0% 10%, 100% 0, 100% 90%, 0 100%);
}
.all-wrapper .top_contents02 {
  margin: auto;
}
.all-wrapper .top_contents02 ul {
  margin-top: 60px;
}
.all-wrapper .top_contents02 ul li {
  padding-bottom: 16px;
  border-bottom: 1px solid #e1e1e1;
  text-align: center;
  background-color: #fff;
}
.all-wrapper .top_contents02 ul li h4 {
  font-size: 2rem;
  margin-top: 10px;
}
.all-wrapper .top_contents02 ul li:first-child {
  margin-bottom: 60px;
}
.all-wrapper .top_contents03 {
  margin-top: 80px;
}
.all-wrapper .top_contents03 .top_half_contents .img_box {
  -webkit-clip-path: polygon(0% 10%, 100% 0, 100% 90%, 0 100%);
          clip-path: polygon(0% 10%, 100% 0, 100% 90%, 0 100%);
}
.all-wrapper .top_half_contents,
.all-wrapper .lower_half_contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "Shippori Mincho", serif;
  font-weight: 700;
}
.all-wrapper .top_half_contents .half_box,
.all-wrapper .lower_half_contents .half_box {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.all-wrapper .top_half_contents .img_box,
.all-wrapper .lower_half_contents .img_box {
  margin-top: 20px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 300px;
}
.all-wrapper .top_half_contents .txt_box,
.all-wrapper .lower_half_contents .txt_box {
  padding: 0 15px;
}
@media (min-width: 768px) {
  .all-wrapper .top_main_visual {
    margin-bottom: 120px;
  }
  .all-wrapper .background-with-circle-a::before,
  .all-wrapper .background-with-circle-b::before {
    content: "";
    width: 460px; /* 線の直径 */
    height: 460px; /* 線の直径 */
  }
  .all-wrapper .background-with-circle-a::before {
    top: 0%;
    right: -20%;
  }
  .all-wrapper .background-with-circle-b::before {
    top: -20%;
    left: 10%;
  }
  .all-wrapper .top_contents01 {
    margin-top: 80px;
  }
  .all-wrapper .top_contents01 .top_half_contents .img_box {
    -webkit-clip-path: polygon(0 0, 90% 0, 100% 100%, 0 100%);
            clip-path: polygon(0 0, 90% 0, 100% 100%, 0 100%);
  }
  .all-wrapper .top_contents02 {
    max-width: 1200px;
    margin: auto;
  }
  .all-wrapper .top_contents02 ul {
    margin-top: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .all-wrapper .top_contents02 ul li {
    width: 49%;
    text-align: center;
  }
  .all-wrapper .top_contents02 ul li h4 {
    font-size: 2.1rem;
    margin-top: 10px;
  }
  .all-wrapper .top_contents02 ul li:first-child {
    margin-bottom: 0;
  }
  .all-wrapper .top_contents03 {
    margin-top: 80px;
  }
  .all-wrapper .top_contents03 .top_half_contents .img_box {
    -webkit-clip-path: polygon(10% 0, 100% 0, 100% 100%, 0 100%);
            clip-path: polygon(10% 0, 100% 0, 100% 100%, 0 100%);
  }
  .all-wrapper .top_half_contents .half_box,
  .all-wrapper .lower_half_contents .half_box {
    width: 50%;
  }
  .all-wrapper .top_half_contents .img_box,
  .all-wrapper .lower_half_contents .img_box {
    height: 450px;
  }
  .all-wrapper .top_half_contents .txt_box,
  .all-wrapper .lower_half_contents .txt_box {
    padding-right: 5%;
    padding-left: 4vw;
  }
  .all-wrapper .col-reverse .txt_box {
    padding-left: 5%;
    padding-right: 4vw;
  }
}
@media (min-width: 1220px) {
  .all-wrapper .top_half_contents .img_box,
  .all-wrapper .lower_half_contents .img_box {
    background-size: cover;
    background-position: center;
    height: 560px;
    -webkit-clip-path: polygon(0 0, 80% 0, 100% 100%, 0 100%);
            clip-path: polygon(0 0, 80% 0, 100% 100%, 0 100%);
  }
  .all-wrapper .top_half_contents .txt_box,
  .all-wrapper .lower_half_contents .txt_box {
    padding-right: 5%;
    padding-left: 8vw;
  }
  .all-wrapper .col-reverse .txt_box {
    padding-left: 5%;
    padding-right: 8vw;
  }
}
.all-wrapper .about-main {
  margin-bottom: 60px;
}
.all-wrapper .company_contents {
  margin-bottom: 60px;
}
.all-wrapper .company_contents .table-style {
  max-width: 956px;
  margin: auto;
}
.all-wrapper .history_contents .table-style {
  max-width: 956px;
  margin: auto;
}
.all-wrapper .history_contents .table-style .t-wrap {
  border: none;
}
.all-wrapper .history_contents .table-style .t-wrap dt,
.all-wrapper .history_contents .table-style .t-wrap dd {
  border: none;
}
@media (min-width: 768px) {
  .all-wrapper .about-main {
    margin-bottom: 120px;
  }
  .all-wrapper .company_contents {
    margin-bottom: 120px;
  }
}
.all-wrapper .recruit-wrapper {
  padding: 0 15px;
}
.all-wrapper .recruit-wrapper .text {
  text-align: center;
  margin-bottom: 60px;
}
.all-wrapper .recruit-wrapper .text h4 {
  display: inline-block;
  border-bottom: 1px solid #e1e1e1;
  margin-bottom: 20px;
  padding-bottom: 10px;
  font-size: clamp(2rem, 1.2vw + 1.8vh, 3rem);
}
.all-wrapper .recruit-wrapper .text p {
  font-size: clamp(1.8rem, 0.96vw + 1.44vh, 2.4rem);
}
.all-wrapper .recruit-wrapper .text ul {
  margin-top: 30px;
  display: inline-block;
}
.all-wrapper .recruit-wrapper .text ul li {
  text-align: left;
  font-size: 1.8rem;
}
.all-wrapper .recruit-main {
  margin-bottom: 60px;
}
.all-wrapper .recruit_contents {
  margin-bottom: 60px;
  max-width: 956px;
  margin: auto;
}
.all-wrapper .recruit_contents .part {
  margin-bottom: 60px;
}
.all-wrapper .recruit-contact {
  text-align: center;
}
.all-wrapper .recruit-contact p.tel a {
  font-size: 2.8rem;
  color: #000;
}
@media (min-width: 768px) {
  .all-wrapper .recruit-main {
    margin-bottom: 120px;
  }
  .all-wrapper .recruit_contents {
    margin-bottom: 120px;
  }
  .all-wrapper .recruit_contents .part {
    margin-bottom: 120px;
  }
}
.all-wrapper .bar-menu {
  position: relative;
  background-image: url("/img/dining_bar_n01.jpg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  overflow: hidden;
  width: 100%;
  padding: 60px 0px;
  margin-bottom: 60px;
}
.all-wrapper .bar-menu .inner {
  color: #ffffff;
  max-width: 456px;
  padding: auto 15px;
  margin: auto;
  position: relative;
}
.all-wrapper .bar-menu .inner .table-style-b {
  margin-bottom: 20px;
}
.all-wrapper .bar-menu .inner p {
  text-align: center;
}
.all-wrapper .bar-menu::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8); /* ここで色と透明度を指定します */
  mix-blend-mode: multiply;
}
.all-wrapper .info_contents {
  max-width: 956px;
  margin: auto;
}
@media (min-width: 768px) {
  .all-wrapper .bar-menu {
    margin-bottom: 120px;
  }
}
.all-wrapper #bar .bar-gallery {
  max-width: 956px;
  margin: auto;
}
.all-wrapper #bar .gallery-area {
  margin-bottom: 80px;
}
.all-wrapper #bar .gallery-area #mainImg,
.all-wrapper #bar .gallery-area #mainImg-model {
  margin-bottom: 10px;
}
.all-wrapper #bar .gallery-area #mainImg li img,
.all-wrapper #bar .gallery-area #mainImg-model li img {
  max-height: 400px;
  width: auto;
  margin: auto;
}
.all-wrapper #bar .gallery-area #mainImg li span,
.all-wrapper #bar .gallery-area #mainImg-model li span {
  display: block;
  height: 300px;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
}
.all-wrapper #bar .gallery-area #subImg li span,
.all-wrapper #bar .gallery-area #subImg-model li span {
  display: block;
  height: 80px;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  margin: 10px;
}
.all-wrapper #bar .gallery-area #subImg .slick-slide.slick-current.slick-active,
.all-wrapper #bar .gallery-area #subImg-model .slick-slide.slick-current.slick-active {
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}
.all-wrapper #bar .gallery-area .slide-arrow {
  background-color: #040000;
  bottom: 0;
  height: 0;
  margin: auto;
  position: absolute;
  top: 0;
  width: 0;
}
.all-wrapper #bar .gallery-area .prev-arrow {
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: #040000;
  top: 0;
  bottom: 0;
  z-index: 20;
  border: none;
  opacity: 0.9;
}
.all-wrapper #bar .gallery-area .prev-arrow:before {
  content: "";
  border-bottom: 6px solid #040000;
  border-left: 0;
  border-right: 10px solid #fff;
  border-top: 6px solid #040000;
  z-index: 20;
  position: absolute;
  top: 7px;
  left: 6px;
}
.all-wrapper #bar .gallery-area .next-arrow {
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: #040000;
  top: 0;
  bottom: 0;
  right: 0;
  z-index: 20;
  border: none;
  opacity: 0.9;
}
.all-wrapper #bar .gallery-area .next-arrow:before {
  content: "";
  border-bottom: 6px solid #040000;
  border-right: 0;
  border-left: 10px solid #fff;
  border-top: 6px solid #040000;
  z-index: 20;
  position: absolute;
  top: 7px;
  left: 10px;
}
.all-wrapper #bar .gallery-area button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  padding: 0;
}
@media (min-width: 768px) {
  .all-wrapper #bar .gallery-area {
    margin-bottom: 80px;
  }
  .all-wrapper #bar .gallery-area #mainImg li img,
  .all-wrapper #bar .gallery-area #mainImg-model li img {
    max-height: 800px;
    width: auto;
    margin: auto;
  }
  .all-wrapper #bar .gallery-area #mainImg li span,
  .all-wrapper #bar .gallery-area #mainImg-model li span {
    height: 600px;
  }
  .all-wrapper #bar .gallery-area #subImg li span,
  .all-wrapper #bar .gallery-area #subImg-model li span {
    display: block;
    height: 120px;
  }
  .all-wrapper #bar .gallery-area .prev-arrow {
    width: 45px;
    height: 45px;
    top: 0;
    bottom: 0;
  }
  .all-wrapper #bar .gallery-area .prev-arrow:before {
    content: "";
    border-bottom: 10px solid #040000;
    border-left: 0;
    border-right: 16px solid #fff;
    border-top: 10px solid #040000;
    left: -25px;
    top: 12px;
    left: 11px;
  }
  .all-wrapper #bar .gallery-area .next-arrow {
    width: 45px;
    height: 45px;
    top: 0;
    bottom: 0;
    right: 0;
  }
  .all-wrapper #bar .gallery-area .next-arrow:before {
    content: "";
    border-bottom: 10px solid #040000;
    border-right: 0;
    border-left: 16px solid #fff;
    border-top: 10px solid #040000;
    top: 12px;
    left: 17px;
  }
}