@charset "UTF-8";
* {
  margin:0;
  padding:0;
}
html, body {
  width:100%;
  height:auto;
  margin:0;
  padding:0;
}
html {
  font-size:62.5%;
  -webkit-text-size-adjust: 100%;
}
body {
  font-family:'YuMincho','游明朝','Times New Roman','Hiragino Mincho ProN','HGS明朝B','ＭＳ Ｐ明朝',serif;
  color:#003333;
  background:#f2f2f2;
  font-size:1.4rem;
  letter-spacing:0.025em;
  line-height:2;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
  position: relative;
}
_:lang(x)::-ms-backdrop, .selector {
	font-family: "Segoe UI", Meiryo, sans-serif;
}
a {
  text-decoration: none;
  color:#003333;
}
a:hover {
  color:#003333;
}
.fade {
  opacity:0;
  transition:1s;
}
.is-fade {
  opacity:1;
}
.fadeInUP {
  opacity:0;
  transform: translate(0, 50px);
  transition:1.5s;
}
.is-fadeInUP {
  opacity:1;
  transform:translate(0, 0);
}
.fadeInUP2 {
  opacity:0;
  transform: translate(0, 80px);
  transition:1.5s;
}
.is-fadeInUP2 {
  opacity:1;
  transform:translate(0, 0);
}
.fadeInScale {
  transform:scale(.9);
  opacity:0;transition:1.5s;
}
.is-fadeInScale {
  transform:scale(1);
  opacity:1;
}
.fadeInRight {
    opacity: 0;
    transform: translateX(50px);
}
.is-fadeInRight {
    opacity: 1;
    transform: translateX(0);
    transition:1s;
}
#heading {
  width:100%;
  height:auto;
  position:absolute;
  top:112vh;left:50%;transform:translate(-50%,0);
  z-index:1;
}
h1 {
  width:100%;
  height:auto;
  max-width:1280px;
  box-sizing:border-box;
  margin:0 auto;text-align:right;
  font-size:1rem;
  line-height:1;padding:5px 0;
  position:relative;
}
/*----------------------------------------------------
  loading
----------------------------------------------------*/
.loading{
  width:100vw;
  height:100vh;
  background:#fff;
  display:flex;
  justify-content:center;
  align-items:center;
  position:fixed;
  top:0;
  left:0;
  z-index:99999;
}
.loading img{
  width:30%;
  max-width:320px;
}
/*----------------------------------------------------
  header
----------------------------------------------------*/
header {
  width:100%;
  height:auto;
}
#header01 {
  width:100%;
  height:auto;
  position:fixed;
  top:0;left:0;
  z-index:999;
  letter-spacing:.05em;
  box-sizing:border-box;
  transition:1s cubic-bezier(.4, 0, .2, 1);
}
.srcoll #header01 {
  background:#fff;
  transition:1s cubic-bezier(.4, 0, .2, 1);
}
.head-animation {
  transform: translateY(-100%);
}
#global-nav {
  width:100%;
  height:60px;
  transition: 1s cubic-bezier(.4, 0, .2, 1);
}
.global-nav {
  width:100%;
  height:60px;
  max-width:1280px;
  padding:0 20px;
  box-sizing:border-box;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.scroll #global-nav {
  background:rgba(255,255,255,.8);
  transition: 1s cubic-bezier(.4, 0, .2, 1);
}
.global-nav-logo {
  display:flex;
  position:relative;
  z-index:1000;
}
.global-nav-logo a {
  display:block;
  width:100%;height:52px;
}
.global-nav-logo a img {
  display:block;
  width:auto;
  height:100%;
}
#navigation {
  display:flex;
  width:100%;
  max-width:calc(100% - 184px);
  height:60px;
}
.overlay {
  display:none;
}
nav {
  width:100%;
  height:auto;
  display:flex;
  align-items:center;
  justify-content:flex-end;
}
nav ul {
  width:100%;height:auto;
  display:flex;justify-content:flex-end;
  align-items:center;
  list-style:none;
}
nav li {
  display:flex;
  letter-spacing:0;
}
nav li a {
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  color:#005068;
  line-height:1.4;
  padding:0 10px;
  font-size:1rem;
}
.nav-text {
  font-family: 'Cinzel', serif;
  font-size:1.4rem;
}
.nav-online {
  width:auto;
  height:42px;
}
.nav-online a,.nav-online a img {
  display:block;
  width:auto;height:100%;
}
.nav-online-sp {
  display:none;
  position:absolute;
  top:0;left:0;
  width:60px;height:70px;
  z-index:1001;
}
.nav-online-sp a {
  display:flex;justify-content:center;align-items:center;
  width:100%;height:100%;
}
.nav-online-sp a img {
  display:block;
  width:auto;height:32px;
}
.nav-online-sp-banner {
  display:none;
  width:60%;height:auto;
}
.nav-online-sp-banner a,
.nav-online-sp-banner a img {
  display:block;
  width:100%;height:auto;
}
.global-nav-logo-sp {
  display:none;
  width:50%;height:auto;
  padding:0 10px;
  box-sizing:border-box;
  position:relative;
  z-index:1;
}
.global-nav-logo-sp a,
.global-nav-logo-sp a img {
  display:block;
  width:100%;height:auto;
}
.navigation-bg {
  display:none;
}
/*----------------------------------------------------
  #nav-toggle
----------------------------------------------------*/
#nav-toggle {
  display:none;
  position:fixed;
  top:0;
  right:0;
  width:60px;
  height:60px;
  z-index:1003;
  cursor:pointer;
}
.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
  position:relative;z-index:1;
  width:32px;
  height:60px;
}
.menu-trigger span {
  position:absolute;
  left:50%;
  width:32px;
  height:3px;
  transform: translate(-50%,0);
  background:#005068;
  border-radius:2px;
}
.scroll .menu-trigger span {
  background:#005068;
}
.menu-trigger span:nth-of-type(1) {
  top:22px;
}
.menu-trigger span:nth-of-type(2) {
  position: absolute;
  right: 0;
  top:32px;
}
.menu-trigger span:nth-of-type(3) {
  top:42px;
}
.menu-trigger.active span {
  position:absolute;left:50%;
  background:#fff;
}
.menu-trigger.active span:nth-of-type(1) {
  top:8px;
  -webkit-transform: translateY(20px) rotate(-45deg);
  transform: translate(-50%,20px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
  left: 50%;
  opacity: 0;
  -webkit-animation: active-menu-bar .8s forwards;
  animation: active-menu-bar02 .8s forwards;
}
@-webkit-keyframes active-menu-bar {
  100% {
    height: 0;
  }
}
@keyframes active-menu-bar {
  100% {
    height: 0;
  }
}
.menu-trigger.active span:nth-of-type(3) {
  top:48px;
  -webkit-transform: translateY(-20px) rotate(45deg);
  transform: translate(-50%,-20px) rotate(45deg);
}
/*----------------------------------------------------
  main-img
----------------------------------------------------*/
main {
  width:100%;
  height:auto;
  overflow:hidden;
  position:relative;
}
#main-img {
  width:100%;
  height:110vh;
  position:relative;
}
#main-img::after {
  display:block;
  content:'';
  width:100%;
  height:100%;
  position:absolute;
  top:0;left:0;
  background:url('https://bottegablu.com/img/top/main-img-bg.png');
  background-size:cover;
}
.main-img {
  position:absolute;
  top:80px;left:0;
  width:100%;height:calc(100% - 80px);
}
.swiper-container {
  width:70%;height:100%;
  margin:0!important;
  position:absolute;
  top:0;left:30%;
}
.iPad #main-img,.android #main-img,.iPad .swiper-container,.android .swiper-container {
  height:60vh;
}
.swiper-slide,.swiper-slide-active {
  position:relative;
}
.slider1 .swiper-wrapper {
  transition-timing-function: linear;
}
.slide-img {
  position:relative;
}
.slide-img img {
  width:100%;height:100%;
  object-fit:cover;
  border-radius:20px;
}
.slideno1 {
  width:100%;height:100%;
  background:url('https://bottegablu.com/img/top/main-img01.png');
  background-size:cover;
  background-position:center;
  position:relative;
  background-blend-mode:difference;
}
.slideno2 {
  width:100%;height:100%;
  background:url('https://bottegablu.com/img/top/main-img02.png?20220901');
  background-size:cover;
  background-position:center;
  position:relative;
}
.slideno3 {
  width:100%;height:100%;
  background:url('https://bottegablu.com/img/top/main-img03.png?20220901');
  background-size:cover;
  background-position:center;
  position:relative;
}
.slideno4 {
  width:100%;height:100%;
  background:url('https://bottegablu.com/img/top/main-img04.png');
  background-size:cover;
  background-position:center;
  position:relative;
}
.main-img-title {
  width:30%;
  height:auto;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  position:absolute;
  top:40%;left:50%;
  transform:translate(-50%,-50%);
  z-index:1;
}
.main-img-title-logo {
  width:40%;height:auto;
  margin:0 auto 40px auto;
}
.main-img-title-logo img {
  display:block;
  width:100%;
  height:auto;
}
.main-img-title h2 {
  width:100%;height:auto;
  mix-blend-mode:difference;
}
.main-img-title h2 img {
  display:block;
  width:100%;height:auto;
  mix-blend-mode:difference;
}
.main-img-text {
  height:80%;
  position:absolute;
  top:50%;left:12.5%;
  transform:translate(0,-50%);
  z-index:1;
}
.main-img-text img {
  display:block;
  width:auto;
  height:100%;
}
/*------------------------------------
concept
------------------------------------*/
#concept {
  width:100%;
  height:auto;
  padding:150px 0 0 0;
  position:relative;
}
.concept {
  width:100%;
  height:auto;
  max-width:1200px;
  margin:0 auto;
  position:absolute;
  top:45%;left:50%;
  transform:translate(-50%,-50%);
  z-index:1;
}
.concept-inner {
  width:45%;
  height:auto;
  background:#fff;
  padding:80px 50px;
  box-sizing:border-box;
  border-radius:4px;
}
.concept-inner-lead {
  font-size:2.2rem;
  line-height:1.6;
  color:#005068;
  margin-bottom:20px;
}
.concept-link {
  width:80%;height:auto;
  margin-top:20px;
}
.concept-link a {
  display:flex;
  justify-content:space-between;
  align-items:center;
  width:80%;
  height:52px;
  background:#005068;
  color:#fff;
  padding:0 20px;
  box-sizing:border-box;
  border-radius:4px;
}
.concept-link a img {
  display:block;
  width:8px;height:auto;
}
#image1,#image2 {
  width:100%;height:auto;
  position:relative;
}
#image2 {
  margin-top:80px;
}
#image1::after {
  display:block;
  content:'';
  width:100%;height:0;
  padding-top:40%;
}
#image2::after {
  display:block;
  content:'';
  width:100%;height:0;
  padding-top:35%;
}
.image1 {
  width:95%;height:100%;
  position:absolute;
  top:0;left:2.5%;
}
#concept h2 {
  width:100%;
  text-align:center;
  font-size:1.4rem;
  color:#fff;
  position:absolute;
  top:0;left:50%;
  transform:translate(-50%,0);
  z-index:1;
}
.image2 {
  width:100%;height:100%;
  position:absolute;
  top:0;left:0;
  overflow: hidden;
}
.image1 picture,
.image1 img,.image2 img {
  display:block;
  width:100%;height:100%;
  object-fit:cover;
}
.image2-sp-style {
  display:none;
}
/*------------------------------------
staff
------------------------------------*/
#staff {
  width:100%;
  height:auto;
  padding-top:150px;
  position:relative;
}
#staff::after {
  display:block;
  content:'';
  width:100%;height:100%;
  background:url('https://bottegablu.com/img/top/bg2.png');
  background-repeat:repeat;
  opacity:.2;
  position:absolute;
  top:0;left:0;
}
.staff {
  width:100%;
  height:auto;
  max-width:1100px;
  margin:0 auto;
  display:flex;
  justify-content:space-between;
  position:relative;z-index:1;
}
.staff-logo {
  position:absolute;
  top:50%;left:50%;
  transform:translate(-50%,-50%);
  width:60%;height:auto;
  opacity:1;
}
.staff-logo img {
  display:block;
  width:100%;height:auto;
}
.staff-img {
  width:45%;
  height:auto;
  position:relative;z-index:1;
}
.staff-img img {
  display:block;
  width:100%;
  height:auto;
}
.staff-inner {
  width:50%;
  height:auto;
  box-sizing:border-box;
  position:relative;z-index:1;
}
.staff-title {
  width:100%;
  height:auto;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  line-height:1.2;
  margin-bottom:30px;
}
.staff-title-inner {
  width:100%;height:auto;
  display:flex;justify-content:flex-end;
  align-items:center;
}
.staff-title-inner img {
  display:block;
  width:20%;height:auto;
  margin-right:10px;
}
.staff-title-inner h2 {
  font-size:12rem;
  font-family: 'Playfair Display', serif;
  font-weight:normal;
}
.staff-title span {
  display:flex;
  align-items:center;
  width:100%;
}
.staff-title span::before {
  display:block;
  content:'';
  flex-grow:1;
  height:1px;
  background:#ccc;
  margin-right:10px;
}
.staff-inner-text {
  margin-bottom:10px;
}
.staff-media {
  width:100%;height:auto;
  margin-top:40px;
  padding:20px;
  box-sizing:border-box;
  background:rgba(255,255,255,.6);
  border-radius:8px;
}
.staff-media ul {
  width:100%;height:auto;
  padding-left:20px;
  box-sizing:border-box;
}
.staff-name {
  width:100vw;
  height:auto;
  padding:20px 0;
  margin:0 calc(50% - 50vw);
  background:#005068;
  color:#fff;
  position:relative;
}
.staff-name::after {
  display:block;
  content:'';
  width:100%;height:100%;
  background:url('https://bottegablu.com/img/top/bg.png');
  background-repeat:repeat;
  opacity:.5;
  position:absolute;
  top:0;left:0;
}
.staff-name-cols {
  width:100%;
  max-width:1100px;
  margin:0 auto;
  position:relative;z-index:1;
}
.staff-name-inner {
  width:45%;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:0 20px;
  box-sizing:border-box;
}
.staff-name-inner img {
  display:block;
  width:80px;height:auto;
  margin-right:20px;
}
.representative {
  display:inline-flex;
  flex-direction:column;
  line-height:1.2;
  font-size:2rem;
  margin-right:10px;
}
.representative-s {
  font-size:1.2rem;
}
.staff-name-main {
  font-size:3rem;
}
.staff2-wrap {
  width:100%;
  height:auto;
  color:#fff;
  padding-bottom:150px;
  position:relative;
}
.staff2-wrap::after {
  display:block;
  content:'';
  width:100%;height:100%;
  background:url('https://bottegablu.com/img/top/staff2-bg.png');
  background-size:cover;
  position:absolute;top:0;left:0;
}
.staff2 {
  width:100%;
  max-width:1100px;
  height:auto;
  margin:0 auto;
  padding-top:150px;
  display:flex;
  position:relative;
  z-index:1;
}
.staff2-img {
  width:100vw;
  height:auto;
  margin-left:calc( 50% - 50vw );
  padding-right:5%;
  box-sizing:border-box;
  position:relative;
}
.staff2-img-inner {
  width:100%;
  height:auto;
  overflow:hidden;
}
.staff2-img-inner img {
  display:block;
  width:90%;height:auto;
}
.circle-ashiya {
  position:absolute;
  top:-25%;right:2.5%;
  width:30%;height:auto;
  animation:20s linear infinite rotation;
}
@keyframes rotation{
  0%{ transform:rotate(0);}
  100%{ transform:rotate(360deg); }
}
.circle-ashiya img {
  display:block;
  width:100%;height:auto;
}
.staff2-inner {
  width:100%;
  height:auto;
}
.staff2-inner-img {
  width:50vw;
  height:auto;
  margin-right:calc( 50% - 50vw );
  margin-top:-300px;
}
.staff2-inner-img img {
  display:block;
  width:80%;height:auto;
  margin-left:auto;
}
.staff2-inner-text {
  padding-top:80px;
}
.staff-link {
  width:80%;height:auto;
  margin-top:30px;
}
.staff-link a {
  display:flex;
  justify-content:space-between;
  align-items:center;
  width:80%;
  height:60px;
  background:#fff;
  color:#005068;
  padding:0 20px;
  box-sizing:border-box;
  border-radius:4px;
}
.staff-link a img {
  display:block;
  width:8px;height:auto;
}
.staff-sp {
  width:100%;height:auto;
  display:none;justify-content:space-between;
  flex-wrap:wrap;
}
.staff-sp-inner {
  width:50%;height:auto;
  padding:10px 0 10px 5%;box-sizing:border-box;
}
.staff-sp-inner p {
  text-align:justify;
}
.staff-sp-img {
  width:45%;height:auto;
}
.staff-sp-img img {
  display:block;
  width:100%;height:auto;
}
.staff-sp-text {
  width:100%;height:auto;
  padding:20px 5%;
  box-sizing:border-box;
}
/*------------------------------------
parallax
------------------------------------*/
#parallax {
  width:100%;height:auto;
  position:relative;
  background:#fff;
}
.parallax {
  overflow:hidden;
  width:100%;height:auto;
  position:relative;
}
.parallax::after {
  display:block;
  content:'';
  width:100%;height:0;
  padding-top:40%;
}
.parallax-img-pc {
  width:100%;height:100%;
  position:absolute;
  top:0;left:0;
}
.parallax-img-sp {
  display:none;
  width:100%;height:100%;
  position:absolute;
  top:0;left:0;
}
.parallax-img-pc img,.parallax-img-sp img {
  display:block;
  width:100%;height:100%;
  object-fit:cover;
}
.parallax-inner-wrap {
  width:100%;height:auto;
}
.parallax-inner {
  width:90%;
  max-width:1440px;
  height:auto;
  margin:-15% auto 0 auto;
  position:relative;
}
.loop-wrap {
  width:100vw;
  height:auto;
  position:absolute;
  top:62.5%;left:0;
  transform:translate(0,-50%);
  margin:0 calc(50% - 50vw);
}
.loop {
  position:relative;
  display:flex;justify-content:flex-start;
  width:100%;
  height:auto;
  overflow:hidden;
}
.loop-wrap-inner {
  display:flex;
  width:100vw;
  height:auto;
  overflow:hidden;
}
.loop-wrap-inner div {
  flex: 0 0 auto;
  white-space: nowrap;
  font-size:6rem;
  color:#ccc;
}
.loop-wrap-inner div:nth-child(odd) {
  animation: loop 50s -25s linear infinite;
}
.loop-wrap-inner div:nth-child(even) {
  animation: loop2 50s linear infinite;
}
@keyframes loop {
  0% {
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
  }
  to {
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}
@keyframes loop2 {
  0% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-200%);
    -ms-transform: translateX(-200%);
    transform: translateX(-200%);
  }
}
.parallax-inner-img {
  width:40%;height:auto;
  margin-left:auto;
  position:relative;z-index:1;
}
.parallax-inner-img img {
  display:block;
  width:100%;height:auto;
}
/*------------------------------------
menu
------------------------------------*/
#menu {
  width:100%;
  height:auto;
  padding:150px 0;
  background:#fff;
  position:relative;
}
.menu {
  width:100%;
  max-width:1280px;
  height:auto;
  margin:0 auto;
  display:flex;
  justify-content:space-between;
  position:relative;
}
.menu-img {
  width:45%;
  height:auto;
  position:relative;
}
.menu-img1 {
  width:75%;
  height:auto;
  margin:0 auto;
  position:relative;
  z-index:2;
}
.menu-img img {
  display:block;
  width:100%;
  height:auto;
  border-radius:8px;
}
.menu-img2 {
  width:75%;
  height:auto;
  margin:0 auto;
  transform:rotate(-15deg);
  position:absolute;
  bottom:0;
  left:0;
  z-index:1;
}
.menu-img3 {
  width:75%;
  height:auto;
  margin:0 auto;
  transform:rotate(15deg);
  position:absolute;
  bottom:0;
  left:20%;
}
.menu-inner {
  width:45%;
  height:auto;
  padding:50px 20px;
  box-sizing:border-box;
}
.menu-title {
  width:100%;
  height:auto;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  line-height:1.2;
  margin-bottom:30px;
}
.menu-title h2 {
  font-size:12rem;
  font-family: 'Playfair Display', serif;
  font-weight:normal;
}
.menu-title span {
  display:flex;
  align-items:center;
  width:100%;
}
.menu-title span::before {
  display:block;
  content:'';
  flex-grow:1;
  height:1px;
  background:#ccc;
  margin-right:10px;
}
.menu-sp-style {
  display:none;
}
.menu-inner ul {
  width:100%;
  height:auto;
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  margin-top:30px;
}
.menu-inner ul li {
  width:49%;
  height:auto;
}
.menu-inner ul li:nth-of-type(n+3) {
  margin-top:10px;
}
.menu-inner ul li a {
  display:flex;
  justify-content:space-between;
  width:100%;height:100%;
  box-sizing:border-box;
  background:#005068;
  color:#fff;
  border-radius:4px;
  position:relative;
}
.menu-tab-img {
  width:60px;height:auto;
}
.menu-tab-img img {
  display:block;
  width:100%;height:auto;
  border-radius:4px 0 0 4px;
}
.menu-tab-wrap {
  width:calc( 100% - 65px );
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 10px 0 0;
  box-sizing:border-box;
}
.menu-tab-wrap picture,
.menu-tab-wrap img {
  display:block;
  width:8px;height:auto;
}
.menu-tab {
  display:inline-flex;
  flex-direction:column;
  line-height:1.2;
  font-family: 'Playfair Display', serif;
}
.menu-tab-main {
  font-size:1.4rem;
}
.menu-inner ul li:nth-of-type(4) .menu-tab-main {
  font-size:1.3rem;
}
.menu-tab-sub {
  font-size:1rem;
}
/*------------------------------------
sweets
------------------------------------*/
#sweets {
  width:100%;
  height:auto;
  background:#fff;
  position:relative;
}
#sweets::before {
  display:block;
  content:'';
  width:100%;
  height:0;
  padding-top:56.25%;
}
#sweets::after {
  display:block;
  content:'';
  width:100%;
  height:100%;
  background:url('https://bottegablu.com/img/top/bg3.png');
  background-size:cover;
  background-position:bottom right;
  position:absolute;
  top:0;left:0;
  opacity:1;
}
.sweets {
  position:absolute;
  top:0;left:0;
  z-index: 1;
  width:100%;
  height:100%;
}
.sweets-img {
  width:80%;
  height:auto;
  position:absolute;
  right:0;
  top:50%;
  transform:translate(0,-50%);
}
.sweets-img picture,
.sweets-img img {
  display:block;
  width:100%;height:auto;
}
.sweets-cols {
  width:100%;
  max-width:1280px;
  height:auto;
  margin:0 auto;
  position:absolute;
  top:50%;left:50%;
  transform:translate(-50%,-50%);
}
.sweets-inner {
  width:45%;
  height:auto;
  background:#fff;
  padding:80px 50px;
  box-sizing:border-box;
  border-radius:4px;
  position:relative;
}
.sweets-title {
  width:100%;
  height:auto;
  display:flex;
  flex-direction:column;
  line-height:1.2;
  margin-bottom:30px;
}
.sweets-title h2 {
  font-size:8rem;
  font-family: 'Playfair Display', serif;
  font-weight:normal;
}
.sweets-title span {
  display:flex;
  align-items:center;
  width:100%;
}
.sweets-title span::after {
  display:block;
  content:'';
  flex-grow:1;
  height:1px;
  background:#ccc;
  margin-left:10px;
}
.stars-hyogo {
  width:15%;height:auto;
  position:absolute;
  right:10%;
  top:10%;
}
.stars-hyogo picture,
.stars-hyogo img{
  display:block;
  width:100%;height:auto;
}
.sweets .concept-link a .sp-style {
  display:none;
}
/*------------------------------------
news
------------------------------------*/
#news {
  width:100%;
  height:auto;
  background:#fff;
  position:relative;
  padding:150px 0;
}
.news {
  width:100%;
  max-width:896px;
  margin:0 auto;
  height:auto;
}
.news-title {
  width:60%;
  height:auto;
  display:flex;
  flex-direction:column;
  justify-content:center;
  line-height:1.2;
  margin-bottom:50px;
}
.news-title h2 {
font-size:8rem;
font-family: 'Playfair Display', serif;
font-weight:normal;
}
.news-title span {
display:flex;
align-items:center;
width:100%;
}
.news-title span::after {
display:block;
content:'';
flex-grow:1;
height:1px;
background:#ccc;
margin-left:10px;
}
#news-list {
  width:100%;height:auto;
}
.news-list-article {
  width:100%;height:auto;
  border-bottom:1px solid #ccc;
  padding:16px 0;box-sizing:border-box;
  display:flex;
  justify-content:space-between;
  align-items:center;
  position:relative;
}
.news-list-article-link {
  width:100%;height:100%;
  position:absolute;
  top:0;left:0;
}
.news-list-article-link a {
  display:block;
  width:100%;height:100%;
}
.news-taxonomy {
  width:80px;
  height:auto;
}
.news-date {
  display:inline-block;
  width:80px;
  height:auto;
}
.news-list-article-inner {
  width:calc(100% - 90px);
  height:auto;
  display:flex;align-items:center;
  justify-content:space-between;
}
.news-list-article-inner h3 {
  width:calc(100% - 20px);
  font-size:1.6rem;
  font-weight:normal;
}
.news-list-article-inner img {
  display:inline-block;
  width:8px;height:auto;
}
.news .concept-link {
  width:100%;max-width:360px;
  margin:50px 0 0 auto;
}
/*------------------------------------
footer
------------------------------------*/
#footer01 {
  width:100%;height:auto;
  position:relative;
  color:#fff;
  background:#000;
}
#foote01 a {
  color:#fff;
}
#footer01::after {
  display:block;
  content:'';
  width:100%;height:100%;
  position:absolute;
  top:0;left:0;
  background:url('https://bottegablu.com/img/top/footer-bg.png');
  opacity:.3;
  background-size:cover;
}
.footer01 {
  width:90%;
  max-width:1280px;
  height:auto;
  margin:0 auto;
  padding:100px 0;
  position:relative;
  z-index:1;
}
.footer01-cols {
  width:100%;
  height:auto;
  margin:0 auto;
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
}
.footer-info {
  width:65%;
  height:auto;
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
}
.footer-address {
  width:47.5%;
  height:auto;
}
.footer-logo {
  width:90%;
  height:auto;
  margin-bottom:20px;
}
.footer-logo a,.footer-logo a img {
  display:block;
  width:100%;height:auto;
}
.footer-logo a h2 {
  width:100%;
  height:auto;
}
.footer-address > ul {
  width:100%;
  height:auto;
  display:flex;
  flex-wrap:wrap;
  line-height: 1.4;
  list-style:none;
}
.footer-address > ul > li {
  width:85%;
  padding:4px 0;
}
.footer-address-number {
  display:flex;
  flex-direction:column;
}
.post-code {
  font-size:1rem;
}
.footer-address-tel a {
  display:block;
  width:100%;height:auto;
}
.footer-address-tel a img {
  display:block;
  width:70%;height:auto;
}
.footer-address-open {
  width:100%;
  height:auto;
  font-size:1.2rem;
  list-style:none;
}
.opening {
  width:100%;
  height:auto;
  display:flex;
  align-items:center;
}
.opening:nth-of-type(n+2) {
  margin-top:2px;
}
.opening-tab {
  display:inline-block;
  width:80px;
  padding:4px 0;
  background:rgba(0,0,0,.5);
  margin-right:3px;
  border-radius:2px;
  text-align:center;
  font-size:1.2rem;
}
.footer-sns {
  width:100%;height:auto;
  display:flex;justify-content:space-between;
  flex-wrap:wrap;
}
.footer-sns a {
  display:block;
  width:49.5%;height:auto;
  background:rgba(0,0,0,.5);
  border-radius:2px;
}
.footer-sns a img {
  display:block;
  width:100%;height:auto;
}
.footer-googleM a {
  display:flex;
  align-items:center;
  justify-content:center;
  width:140px;height:28px;
  margin-top:4px;
  border-radius:4px;
  background:#fff;
  color:#1a1a1a;
  letter-spacing:0;
}
.footer-googleM a i {
  margin-right:5px;
}
.footer-map {
  width:47.5%;height:auto;
  position:relative;
}
.footer-map img {
  display:block;
  width:100%;height:auto;
}
.footer-nav {
  width:24%;
  height:auto;
  color:#fff;
}
.footer-nav a {
  color:#fff;
}
.footer-nav ul {
  width:100%;
  height:auto;
  list-style:none;
}
.footer-nav ul li {
  width:100%;height:auto;
}
.footer-nav ul li a {
  display:block;
  width:100%;height:auto;
}
.footer-nav-main {
  display:inline-flex;
  align-items:center;
  width:120px;
}
.footer-nav-main::after {
  display:block;
  content:'';
  flex:1;
  border-top:1px solid #666;
  margin-left:16px;
}
.footer-nav-sub {
  font-size:1.2rem;
  margin-left:20px;
}
.footer-nav-online {
  width:100%;
  height:auto;
  margin-top:16px;
}
.footer-nav-online a,.footer-nav-online img {
  display:block;
  width:100%;height:auto;
}
.copyright {
  text-align:center;
  position:relative;z-index:1;
  font-size:1.2rem;
}
.sp-style {
  display:none;
}
@media screen and (max-width: 1360px) {
  html {
    font-size:calc(100vw/136.0);
  }
  h1,.menu,.footer01 {
    width:90%;max-width:initial;
  }
  .concept {
    width:85%;
    max-width:initial;
    top:50%;
  }
  .concept-inner {
    width:55%;
  }
  .sweets-cols {
    width:90%;max-width:initial;
  }
}
@media screen and (max-width: 1280px) {
}
@media screen and (max-width: 1220px) {
  .staff,.staff2 {
    width:90%;
    max-width:initial;
  }
  .menu-inner {
    padding:50px 0;
  }
}
@media screen and (max-width: 1024px) {
  .footer01 {
    width:80%;
    flex-wrap:wrap;
  }
  .footer-info {
    width:100%;
  }
  .footer-nav {
    display:none;
  }
}
@media screen and (max-width:970px) {
  .about-link {
    width:85%;margin:0 0 0 auto;
  }
  .about-link a {
    padding:0 30px;
  }
  .news {
    width:80%;
    max-width:initial;
  }
}
@media screen and (max-width:896px) {
  #header01 {
    position: fixed;
    z-index: 1001;
  }
  #global-nav {
    width:100%;
    height:70px;
    max-width: initial;
    padding-left: 0;
  }
  .global-nav {
    height:70px;
    justify-content: space-between;
    box-sizing: border-box;
  }
  .global-nav-logo {
    width:100%;
    margin-left:0;
    margin-right:10px;
  }
  .global-nav-logo a img {
    margin:0 auto;
  }
  #nav-toggle {
    display: block;
  }
  .nav-online-sp {
    display:block;
  }
  .nav-online {
    display:none;
  }
  .nav-online-sp-banner {
    display:block;
    margin-top:20px;
    position:relative;
    z-index:1;
  }
  /*-------------------------------------------------
    toggle オーバーレイ
  -------------------------------------------------*/
  #navigation {
    width:100%;
    max-width:initial;
    height:100vh;
    background:#fff;
  }
  .overlay {
    position:fixed;
    top:0;
    left:0;
    z-index:1003;
    width:100%;
    height:auto;
    display:flex;
    justify-content:space-between;
    padding:0;
    box-sizing:border-box;
    opacity:0;
    visibility:hidden;
    transition:.4s;
  }
  .overlay.is-open {
    width:100%;
    height:auto;
    opacity: 1;
    visibility:visible;
  }
  .navigation-bg {
    display:block;
    width:40%;
    height:100%;
    background-color:#000;
    background-image:url('https://bottegablu.com/img/top/navigation-bg.png');
    background-size:cover;
  }
  nav {
    width:60%;
    height:auto;
    overflow-y:scroll;
    margin:0 auto;
    padding:100px 50px;box-sizing:border-box;
    display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;
    background:#000;
    position:relative;
  }
  nav::after {
    display:block;
    content:'';
    width:100%;height:100%;
    position:absolute;
    top:0;left:0;
    background:url('https://bottegablu.com/img/top/footer-bg.png');
    opacity:.3;
    background-size:cover;
  }
  nav::-webkit-scrollbar {
    display:none;
  }
  nav ul {
    width:100%;max-width:520px;
    height:auto;margin: 0 auto;
    flex-direction:row;
    flex-wrap:wrap;justify-content:space-between;
    position:relative;
    z-index:1;
  }
  nav ul li {
    width:49%;height:auto;padding:20px 0;box-sizing:border-box;
    border-bottom:1px dashed #545454;
  }
  nav li:nth-of-type(7) {
    width:100%;
    border-bottom:none;
  }
  nav li a:not(.nav-online a) {
    width:100%;height:100%;align-items:stretch;
  }
  nav li a {
    color:#fff;
  }
  .global-nav-logo-sp {
    display:block;
    width:60%;height:auto;
    margin-bottom:20px;
  }
  .nav-text {
    font-size:2rem;
  }
  .nav-online {
    width:60%;
    height:60px;border-bottom:none;
    margin-top:20px;
  }
  .concept {
    top:35%;
    left:0;
    transform:translate(0,-50%);
  }
  #image1::after {
    padding-top:80%;
  }
  #image2::after {
    padding-top:70%;
  }
  .image2-pc-style {
    display:none;
  }
  .image2-sp-style {
    display:block;
  }
  .concept-inner {
    width:70%;
  }
  .staff-img {
    width:60%;
    position:absolute;
    left:-10%;
    bottom:0;
  }
  .staff-inner {
    width:55%;
    margin-left:auto;
    padding-bottom:100px;
  }
  .menu {
    width:70%;
    flex-direction:column;
    align-items:center;
    margin:0 auto;
  }
  .menu-pc-style {
    display:none;
  }
  .menu-sp-style {
    display:flex;
    margin-bottom:80px;
  }
  .menu-img {
    width:60%;
  }
  .menu-inner {
    width:100%;
    padding-bottom:0;
  }
  #sweets::before {
    padding-top:80%;
  }
  .sweets-cols {
    width:95%;
  }
  .sweets-inner {
    width:55%;
  }
}
@media screen and (max-width:768px) {
  .concept {
    top:38%;
  }
  .footer01-nav {
    display:block;
    width:100%;
    margin-top:30px;
  }
  .footer01-nav-lead {
    display:none;
  }
}
@media screen and (max-width:680px) {
  nav {
    max-width:initial;
    padding-left:5%;padding-right:5%;box-sizing:border-box;
    padding-top:60px;
  }
  nav ul li {
    width:100%;
    padding:10px 0;
  }
  .global-nav-logo-sp {
    width:80%;
  }
  #main-img {
    width:100%;
    height: calc(var(--vh, 1vh) * 80);
  }
  #heading {
    top: calc(var(--vh, 1vh) * 82);
  }
  #image1::after {
    padding-top:125%;
  }
  #image2 {
    margin-top:40px;
  }
  .concept {
    width:100%;
    top:48%;
  }
  .concept-inner{
    width:60%;
    padding:40px;
  }
  .concept-link,.concept-link a {
    width:100%;
  }
  .staff-logo {
    width:80%;
  }
  .staff-inner {
    width:60%;
    padding-bottom:60px;
  }
  .staff-img {
    width:70%;
    left:-20%;
  }
  .staff-name-inner {
    width:100%;
  }
  .staff2-inner-img {
    display:none;
  }
  .circle-ashiya {
    width:60%;
    right:-12.5%
  }
  .staff-link {
    width:100%;
  }
  .staff-link a {
    width:100%;
  }
  .parallax::after {
    display:block;
    content:'';
    width:100%;height:0;
    padding-top:70%;
  }
  .parallax-img-pc {
    display:none;
  }
  .parallax-img-sp {
    display:block;
  }
  .parallax-inner {
    width:95%;
    margin-top:-20%;
  }
  .parallax-inner-img {
    width:50%;
  }
  #menu {
    padding:100px 0;
  }
  .menu {
    width:80%;
  }
  #sweets {
    padding:100px 0;
  }
  #sweets::before {
    display:none;
  }
  #sweets::after {
    background: url('https://bottegablu.com/img/top/sweets-bg.png');
    background-size:cover;
  }
  .sweets {
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    width:80%;height:auto;
    margin:0 auto;
    position:relative;
    top:initial;left:initial;
  }
  .sweets-img {
    position:relative;
    top:initial;
    right:initial;
    transform:initial;
  }
  .sweets-cols {
    position:initial;
    top:initial;
    left:initial;
    transform:initial;
  }
  .sweets-inner {
    width:100%;
    background:none;
    color:#fff;
    padding-bottom:0;
  }
  .stars-hyogo {
    width:15%;height:auto;
    position:absolute;
    right:10%;
    top:5%;
  }
  .sweets .concept-link a {
    background:#fff;
    color:#005068;
  }
  .sweets .concept-link a .pc-style {
    display:none;
  }
  .sweets .concept-link a .sp-style {
    display:block;
  }
  #news {
    padding:100px 0;
  }
  .footer01 {
    width:70%;
  }
  .footer01-cols {
    flex-direction:column;
    align-items:center;
  }
  .footer-info {
    flex-direction:column;
    align-items:center;
  }
  .footer-address {
    width:100%;
  }
  .footer-map {
    width:100%;
    margin-top:30px;
  }
  .footer-nav {
    display:block;
    width:100%;
    margin-top:30px;
  }
  .footer-nav ul {
    display:none;
  }
  .footer-nav-online {
    margin-top:0;
  }
}
@media screen and (max-width:480px) {
  html {
    font-size:62.5%;
  }
  .loading img{
    width:70%;
    max-width:initial;
  }
  #navigation {
    flex-direction:column;
    background:#000;
  }
  #navigation::after {
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: url(https://bottegablu.com/img/top/footer-bg.png);
    opacity: .3;
    background-size: cover;
  }
  nav {
    width:100%;
  }
  nav::after {
    display:none;
  }
  .nav-text {
    font-family: 'Cinzel', serif;
    font-size:1.6rem;font-weight:700;
  }
  .navigation-bg {
    display:none;
  }
  .global-nav-logo a {
    height:46px;
  }
  .nav-online-sp-banner {
    width:100%;
  }
  main {
    font-size:1.4rem;
  }
  .pc-style {
    display:none;
  }
  .sp-style {
    display:block;
  }
  #main-img {
    width:100%;
    height: calc(var(--vh, 1vh) * 70);
  }
  #heading {
    top: calc(var(--vh, 1vh) * 72);
  }
  #heading h1 {
    font-weight:normal;
  }
  .main-img-text {
    left:2.5%;
  }
  .main-img-title {
    width:65%;
    top:50%;
    left:60%;
  }
  .swiper-container {
    width:80%;
    left:20%;
  }
  .main-img-title h2 {
    font-size:3rem;
  }
  #image1::after {
    padding-top:160%;
  }
  #concept {
    padding-top:100px;
  }
  .concept {
    top:57.5%;
  }
  .concept-inner {
    width:78%;
    padding: 40px 24px 50px 24px;
  }
  .concept-inner-lead {
    font-size:1.2rem;
    font-weight:bold;
    text-align:justify;
  }
  .concept-inner-text {
    font-size:1.1rem;
    text-align:justify;
    margin-bottom:8px;
  }
  .staff-img {
    width:80%;
    max-width:300px;
    left:-32%;
  }
  .staff-inner {
    padding-bottom:40px;
  }
  .staff-title-inner {
    align-items:flex-end;
  }
  .staff-title-inner h2 {
    font-size:5rem;
  }
  .staff-title-inner img {
    width:25%;
  }
  .staff-inner-text {
    font-size:1.4rem;
  }
  .staff-name-inner {
    width:100%;
  }
  .staff-name-inner img {
    width:40px;
  }
  .representative {
    font-size:1.2rem;
  }
  .representative-s {
    font-size:1rem;
  }
  .staff-name-main {
    font-size:2rem;
  }
  .staff2 {
    display:none;
  }
  .staff2-wrap::after {
    display:block;
    content:'';
    width:100%;height:100%;
    background:url('https://bottegablu.com/img/top/staff2-bg-sp.png');
    background-size:cover;
    position:absolute;top:0;left:0;
  }
  .staff-sp {
    display:flex;
    padding-top:80px;
    position:relative;z-index:1;
  }
  .staff-sp-img {
    position:relative;
  }
  .staff-sp-img img {
    position:relative;z-index:1;
  }
  .circle-ashiya {
    width:80%;
    right:initial;
    left:-40%;
  }
  .staff-sp-inner {
    display:flex;
    align-items:center;
  }
  .staff-link {
    width:90%;
    margin:0 auto;
  }
  .staff-link a {
    width:100%;
  }
  .loop-wrap {
    top:75%;
  }
  .loop-wrap-inner div {
    flex: 0 0 auto;
    white-space: nowrap;
    font-size:4rem;
    color:#ccc;
  }
  .loop-wrap-inner div:nth-child(odd) {
    animation: loop 20s -10s linear infinite;
  }
  .loop-wrap-inner div:nth-child(even) {
    animation: loop2 20s linear infinite;
  }
  .menu {
    width:90%;
  }
  .menu-title h2,.sweets-title h2,.news-title h2 {
    font-size:6rem;
  }
  .menu-img {
    width:80%;
  }
  .menu-inner ul li a {
    flex-direction:column;
    background:none;
    color:#005068;
  }
  .menu-tab-wrap {
    width:100%;
    justify-content:center;
    padding:10px 0;
  }
  .menu-tab-img {
    width:100%;
  }
  .menu-tab-img img {
    width:90%;
    margin:0 auto;
    border-radius:4px;
  }
  .menu-tab {
    display:flex;
    width:80%;
  }
  .menu-tab-wrap picture,
  .menu-tab-wrap img {
    float:right;
  }
  .sweets {
    width:90%;
    margin:0 auto;
  }
  .stars-hyogo {
    width:18%;
  }
  .sweets-inner {
    padding:30px 10px;
  }
  .sweets-inner p {
    text-align:justify;
  }
  .news {
    width:90%;
  }
  .news-title {
    width:100%;
  }
  .news-list-article {
    flex-direction:column;
    align-items:initial;
  }
  .news-date {
    width:auto;
    transform:scale(.8);
    transform-origin: left top;
  }
  .news-list-article-inner {
    width:100%;
  }
  .news-list-article-inner h3 {
    font-size:1.2rem;line-height:1.6;
  }
  .footer01 {
    width:85%;
    padding:100px 0;
  }
  .footer-address > ul > li {
    width:100%;
  }
}