/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Template: astra
Author: Brainstorm Force
Author URI: https://wpastra.com/about/?utm_source=theme_preview&utm_medium=author_link&utm_campaign=astra_theme
Description: Astra is fast, fully customizable &amp; beautiful WordPress theme suitable for blog, personal portfolio, business website and WooCommerce storefront. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with Schema.org code integrated and is Native AMP ready so search engines will love your site. It offers special features and templates so it works perfectly with all page builders like Elementor, Beaver Builder, Visual Composer, SiteOrigin, Divi, etc. Some of the other features: # WooCommerce Ready # Responsive # RTL &amp; Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained &amp; Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and WooCommerce ready theme that you can use for building any kind of website!
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 3.9.0.1659172057
Updated: 2022-07-30 09:07:37
*/

html,
body {
  font-family: "游ゴシック体", YuGothic, "游ゴシック","Hiragino Sans",Meiryo,"MS PGothic",sans-serif ;
  overflow-x: hidden;
  text-transform: uppercase;
}
/* Kaori added from here */
.en-font {
  font-family: "DIN Pro" !important;
  font-weight: normal !important;
  letter-spacing: 0.1em;
}

@font-face {
  font-family: "DIN Pro";
  src: url("fonts/D-DIN-PRO-400-Regular.otf") format("woff");
  /* src: url("fonts/FontsFree-Net-DINPro.ttf"); */
}

@font-face {
  font-family: "yugothic";
  src: url("fonts/yugothib.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}

#hero-text {
  font-size: 78px;
}
.menu-item .en-font {
  font-size: 20px;
}
.menu-item .jp-font {
  font-size: 14px;
}
.hfe-nav-menu .menu-item:last-child {
  margin-left: 15px;
}

/* till here */

ul {
  margin: 0;
}
.drinks-slider li,
.facility-slider li {
  padding: 0 8px;
}
.drinks-slider li img {
  width: 100%;
  height: 207px;
  object-fit: cover;
}
.facility-slider li img {
  width: 100%;
}
.drinks-slider .slick-list.draggable {
  padding: 0 100px !important;
}
.facility-slider .slick-list.draggable {
  padding: 0 200px 0 0 !important;
}
.flow-slider figure img {
  width: 100%;
}

.circle-overlay:before,
.circle-overlay-left:before,
.circle-overlay-right:after {
  content: "";
  position: absolute;
  top: 0;
  left: -70%;
  border-radius: 50%;
  width: 417px;
  height: 401px;
  background: #ffffff 0% 0% no-repeat padding-box;
  opacity: 1;
  filter: blur(50px);
}
.circle-overlay-right:after {
  top: -65%;
  left: auto;
  right: -15%;
}
.circle-overlay-left:before {
  left: -35%;
  width: 823px;
  height: 823px;
  top: -18%;
}
.circle-overlay-large:after,
.circle-overlay-large-right:after,
.circle-overlay-large-left:after {
  border-radius: 50%;
  content: "";
  position: absolute;
  top: -50%;
  right: -30%;
  width: 823px;
  height: 823px;
  background: #ffffff 0% 0% no-repeat padding-box;
  opacity: 1;
  filter: blur(50px);
}
.circle-overlay-large-right:after {
  top: -100%;
}
.circle-overlay-large-left:after {
  left: -10%;
  right: auto;
}
.circle-overlay-large.concept-circle-top:after {
  top: -90%;
  right: -10%;
}

.circle-overlay-large.medium-top:after {
  top: -90%;
  left: 0;
  right: 0;
  margin: auto;
}

.circle-overlay-medium:after {
  border-radius: 50%;
  content: "";
  position: absolute;
  top: -155%;
  left: 35%;

  margin: auto;
  width: 642px;
  height: 642px;
  background: #ffffff 0% 0% no-repeat padding-box;
  opacity: 1;
  filter: blur(50px);
}
.circle-overlay-medium.medium:after {
  top: -75%;
  left: auto;
  right: 15%;
}

/* Kaori deleted */

/* .yumincho-font h3,
p {
  font-family: "yumin";
} */

.yugothib-font p,
.yugothib-font span {
  font-family: "yugothic";
}
.readmore-icon a {
  display: flex;
  align-items: center;
  width: max-content !important;
  position: relative;
}
.readmore-icon.justify-end a {
  float: right;
}
.readmore-icon.justify-center a {
  margin: auto;
}

.readmore-icon a:after {
  margin-left: 26.5px;
  content: "";
  background: url("../../uploads/2022/07/arrow.png") no-repeat;
  width: 42px;
  height: 42px;
  display: block;
}

.readmore-icon a:hover:after {
  content: url("../../uploads/2022/08/white-arrow-1.png");
  transition: all 0.5s ease-in;
}
.readmore-icon a:before {
  content: "";
  background-color: transparent;
  border-radius: 50%;
  position: absolute;
  z-index: -1;
  top: 18px;
  left: 116px;
  width: 0;
  height: 0;
  opacity: 0;
  border-radius: 50%;
}

.readmore-icon a:hover:before {
  border-radius: 50%;
  background: #484848;
  opacity: 1;
  width: 42px;
  height: 42px;
  top: 0px;
  transition: width 1.45s, height 1s, top 1s, left 0.5s;
}

.readmore-icon.white a:after {
  margin-left: 26.5px;
  background: url("../../uploads/2022/08/white-arrow-1.png") no-repeat;
}

.readmore-icon.white a:hover:after {
  content: url("../../uploads/2022/07/arrow.png");
  transition: 0.5s linear;
}
.readmore-icon.white a:hover:before {
  background: #fff;
}

.openinghours-justify-center {
  display: flex;
  justify-content: center !important;
  width: 100% !important;
}

.imagebox-float .elementor-image-box-title {
  float: left;
}

.imagebox-float .elementor-image-box-description {
  float: right;
}

.ast-logo-title-inline .ast-site-identity {
  height: 110px;
  background: url(../../uploads/2022/08/294704565_786883899170381_6164301969485364992_n.png)
    no-repeat;
  width: 65px;
  position: relative;
}
.ast-logo-title-inline .ast-site-identity a {
  width: 65px;
  height: 110px;
  position: absolute;
  top: 0;
}
.flow-height figure img {
  width: 100%;
  height: 340;
  object-fit: cover;
  margin-bottom: 15px;
}

.facility-image-height img {
  height: 340px !important;
  object-fit: cover;
}

.full-width img {
  width: 100%;
}

.flow-stepbox h2.elementor-heading-title.elementor-size-default:before {
  content: "";
  width: 8px;
  height: 8px;
  /* display: -webkit-inline-box; */
  background: #484848;
  border-radius: 50%;
  position: absolute;
  border: 1px solid #484848;
  left: -48px;
  top: 13px;
  z-index: 99;
}

.flow-stepbox h2.elementor-heading-title.elementor-size-default:after {
  content: "";
  height: 297px;
  border: 0.4px solid #484848;
  width: 0.4px;
  position: absolute;
  left: -45px;
  background: #484848;
  top: 20px;
  z-index: 1;
}
.site-footer {
  position: relative;
  z-index: 1;
}
.others-image-height-left img {
  height: 400px;
  object-fit: cover;
}
.others-image-height-left figcaption {
  text-align: right;
}
figcaption {
  font-family: "yugothic";
  font-size: 14px;
  text-align: left;
  padding: 0 15px;
}

.others-image-height-right img {
  height: 570px;
  object-fit: cover;
}

.price-right-design li {
  display: flex;
  justify-content: space-between;
  padding: 25px;
  border-top: 1px solid #bfbfbf;
}
.price-right-design li:last-child {
  border-bottom: 1px solid #bfbfbf;
}
.price-right-design ul {
  padding: 0;
  margin-left: 0;
  margin-top: 25px;
}
.full-map img {
  width: 100%;
  height: 320px !important;
  object-fit: cover;
}

.map-image img {
  width: 622px;
  max-width: 100%;
}

.desktop-hide {
  display: none;
}
.header-section {
  position: fixed !important;
  left: 0;
  top: 0px;
  width: 100%;
}

/* Kaori added */
@media (max-width: 1024px) {
  .scroll-section {
    display: none !important;
  }
  #hero-text {
    font-size: 70px;
  }
}

@media (min-width: 921px) {
  #ast-mobile-header {
    display: block !important;
  }
  header .ast-header-social-1-wrap.ast-header-social-wrap,
  header .ast-builder-menu-1 {
    display: none;
  }
  header.addMenu .ast-header-social-1-wrap.ast-header-social-wrap,
  header.addMenu .ast-builder-menu-1 {
    display: block;
  }
  header .ast-header-button-1 {
    padding-right: 65px;
  }

  [data-section="section-header-mobile-trigger"] {
    position: absolute;
    right: 20px;
    top: -85px;
  }
  header.addMenu [data-section="section-header-mobile-trigger"] {
    top: 35px;
  }
  header.addMenu .site-primary-header-wrap {
    padding: 35px;
  }
  [data-section="section-header-mobile-trigger"]
    .ast-button-wrap
    .mobile-menu-toggle-icon
    .ast-mobile-svg {
    width: 30px;
    height: 30px;
  }
  .ast-theme-transparent-header header#masthead.addMenu {
    display: flex;
    left: auto;
    background: #000;
    min-height: 930px;
    transition: 0.2s ease-in;
  }
  #ast-desktop-header {
    transition: 0.2s ease-in;
  }
  header.addMenu .ast-builder-grid-row,
  .ast-theme-transparent-header .ast-builder-menu ul.main-header-menu {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  header.addMenu div.site-header-section {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .ast-desktop .ast-primary-header-bar .main-header-menu > .menu-item {
    line-height: 60px !important;
  }
  #ast-mobile-header .site-header-primary-section-left {
    display: none;
  }
  .left-section {
    float: left;
    list-style: none;
    width: 50%;
    margin: 0;
  }

  .right-section {
    list-style: none;
    margin: 0;
    float: right;
    width: 50%;
  }
  .footer-copyright-seperate {
    border-left: 2px solid;
    margin-left: 10px;
    padding-left: 10px;
  }

  .ast-theme-transparent-header header#masthead.addMenu:before {
    content: "";
    background: #00000038;
    width: 100vw;
    height: 930px;
    position: absolute;
    right: 0vw;
  }
  .ast-theme-transparent-header header#masthead.addMenu:after,
  ul#menu-1-3b55641:before {
    content: "";
    position: absolute;
    bottom: -33px;
    right: -40%;
    border-radius: 50%;
    width: 521px;
    height: 501px;
    background: #ffffff 0% 0% no-repeat padding-box;
    opacity: 0.2;
    filter: blur(50px);
  }
}
@media (max-width: 920px) {
  .right-section {
    border-bottom: 1px solid #e3e3e3;
    padding: 0px;
    padding-bottom: 49px;
    margin: 0px;
  }
  .right-section button {
    margin-top: 30px;
  }
  .left-section {
    border-top: 1px solid #e3e3e3;
    padding: 0px;
    padding-top: 49px;
    margin: 0px;
  }
  .mobile-hide {
    display: none;
  }
  .desktop-hide {
    display: block;
  }
  .footer-copyright-seperate {
    display: block;
    margin-top: 24px;
  }
}
.drinks-alignment .elementor-col-50,
.drinks-alignment .elementor-col-25 {
  width: 50%;
  float: left;
}

/* Kaori added from */
@media (min-width: 768px) {
  .elementor-column.elementor-col-50,
  .elementor-column[data-col="50"] {
    width: 40%;
  }
}
@media (min-width: 1024px) {
  .elementor-column.elementor-col-50,
  .elementor-column[data-col="50"] {
    width: 50%;
  }
}
/* till here */

@media (max-width: 767px) {
  .home .circle-overlay:before {
    top: 35px;
    left: -40px;
    width: 253px;
    height: 244px;
  }
  .home .circle-overlay-large:after,
  .home .circle-overlay-large-right:after {
    top: -60%;
    right: -30%;
    width: 369px;
    height: 368px;
  }
  .flow-stepbox .circle-overlay-large:after {
    width: 508px;
    height: 508px;
    top: 20%;
    right: -200%;
  }
  .goods-image .elementor-col-25 {
    width: 50%;
  }
  div.concept-circle-top img {
    height: 320px;
    object-fit: cover;
    width: 100%;
  }

  .flex-reverse img {
    width: 100%;
  }

  .home .circle-overlay-medium:after {
    top: -75%;
    left: -63px;
    right: auto;
    margin: auto;
    width: 326px;
    height: 326px;
  }
  .price-right-design li {
    padding: 15px;
  }
  .price-right-design ul {
    margin-top: 0;
  }
  .flex-reverse > div {
    display: flex;
    flex-direction: column-reverse;
  }
  .home .circle-overlay-medium.medium:after {
    top: -30%;
    left: 0;
    right: -50%;
    width: 511px;
    height: 511px;
  }
  .flow-stepbox h2.elementor-heading-title.elementor-size-default:after {
    height: 575px;
    left: -32px;
  }
  .flow-stepbox h2.elementor-heading-title.elementor-size-default:before {
    left: -35px;
  }

  div.elementor-1113 .elementor-element.elementor-element-ca202a5 img {
    height: 419px;
    object-fit: cover;
  }

  div.elementor-1113 .elementor-element.elementor-element-54988d0 {
    margin: 0 24px;
  }
  /* .flow-slider .slick-list.draggable {
    padding: 0 30px 0 0 !important;
  } */
  .facility-slider .slick-list.draggable {
    padding: 0 70px 0 0 !important;
  }
  .header-section .elementor-col-50 {
    width: auto;
  }
  .header-section > div {
    margin: 0;
    display: flex;
    justify-content: space-between;
  }
  .elementor-element-2d1c287 h2 {
    width: auto !important;
  }
  .banner-slider ul:before {
    width: 200px !important;
  }
  .banner-slider .slick-vertical .slick-slide img {
    padding-left: 30px !important;
  }
}
/* Kaori added */
@media (max-width: 544px) {
  #hero-text {
    font-size: 40px;
  }
  .banner-slider ul::before {
    top: 0.7em !important;
    padding: 18px !important;
  }
}
.slick-slider {
  position: relative;

  display: block;
  box-sizing: border-box;

  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;

  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before,
.slick-track:after {
  display: table;

  content: "";
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 0;
}
[dir="rtl"] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
  display: none;
}
.scroll-section {
  display: flex;
  align-items: center;
}
.line {
  width: 100px;
  height: 1px;
  background: #fff;
  position: relative;
  margin-bottom: -1px !important;
  margin-left: 4px !important;
}
.circle-process {
  width: 8px;
  height: 8px;
  display: block;
  overflow: hidden;
  border-radius: 50%;
  background: #fff;
  position: absolute;
  top: -3px;
  left: 0;
  background-size: auto;
  animation: scrolldown 2.2s linear infinite;
}

@keyframes scrolldown {
  0% {
    left: 0;
  }

  15% {
    left: 15px;
  }

  30% {
    left: 30px;
  }

  45% {
    left: 45px;
  }

  60% {
    left: 60px;
  }

  75% {
    left: 75px;
  }

  100% {
    left: 100px;
  }
}

.elementor-2065
  .elementor-element.elementor-element-3b55641
  li.menu-item:last-child
  a {
  max-width: 240px;
  justify-content: center;
}
#menu-item-2180 {
  background: url(../../uploads/2022/08/294704565_786883899170381_6164301969485364992_n.png)
    no-repeat;
  height: 106px;
  margin-left: 20px;
}
#menu-item-2180 a {
  font-size: 0;
}
.hfe-flyout-content.push ul {
  padding-bottom: 30px;
}
.banner-slider ul {
  position: relative;
  margin-left: 15px;
}
.banner-slider .slick-vertical .slick-slide img {
  max-height: 209px;
  min-height: 209px;
  width: 100%;
  margin: auto;
  object-fit: contain;
}
.banner-slider ul:before {
  content: "";
  position: absolute;
  width: 265px;
  top: 1.5em;
  height: 20px;
  border: 1px solid #fff;
  left: 15px;
  z-index: 1;
  padding: 35px;
}
.header-section.fix-nav {
  background: #212121 !important;
}
.header-section .elementor-button-link:hover {
  background-color: #fff !important;
  color: #000 !important;
}
.header-section.fix-nav.transparent-bg {
  background: transparent !important;
}
.hfe-site-logo.remove-logo {
  display: none;
}
div.elementor-2065
  .elementor-element.elementor-element-3b55641
  .hfe-nav-menu-icon,
div.elementor-2065
  .elementor-element.elementor-element-3b55641
  .hfe-nav-menu-icon:hover {
  padding: 0 10px;
  padding-top: 20px;
}

div.elementor-2065
  .elementor-element.elementor-element-3b55641
  .hfe-flyout-close {
  padding-top: 20px;
}

div.elementor-2065
  .elementor-element.elementor-element-3b55641
  .hfe-nav-menu-icon:hover
  svg
  text {
  fill: #000;
}

div.elementor-2065
  .elementor-element.elementor-element-3b55641
  .hfe-nav-menu-icon:hover
  svg
  path {
  stroke: #000;
}
div.elementor-2065
  .elementor-element.elementor-element-3b55641
  .menu-item
  a.hfe-menu-item {
  display: flex;
  align-items: center;
  justify-content: start;
}
div.elementor-2065
  .elementor-element.elementor-element-3b55641
  .menu-item
  a.hfe-menu-item.elementor-button {
  display: flex;
  align-items: center;
  justify-content: center;
}
#block-24 figure img {
  border-radius: 50%;
}
#block-24 figure:hover img {
  filter: invert(1);
  background: black;
  border-radius: 50%;
  transition: 0.5s ease-in;
}

.right-section button:hover {
  background-color: #fff !important;
  color: #000 !important;
}
/* memo:
- deleted {background-position:33vw 0px;background-size:contain;} around (max-width:1024px) in index.html
- replaced almost all font-family with indicated font-family, DIN Pro, Yu gothic
- added a class 'en-font', 'jp-font' in index.html
- chenged below in custom.js
// vertical: true,
cssEase: "linear",
speed: 900,
fade: true, */
